diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5c32f56 --- /dev/null +++ b/.gitignore @@ -0,0 +1,37 @@ +*.class +*.psp +*.doc +*.docx +*.pdf +*.tmp +*.bak +*.o + +**/go/**/*.exe + +**/cvs + +artwork/* +bin/* +installer/* +izpack/* +javadocs/* +junitreports/* +mysqldocs/* +uninstaller/* +MOVESTemporary/* +SharedWork/* +WorkerFolder/* + +go32/* + +install.xml +PriorMasterID.txt +PriorWorkerID.txt +MOVESComputerID.txt +moveslog.txt +moveslog_old.txt +MOVESWindows.txt +go*output.txt +calc/go/externalcalculatorgo + diff --git a/CalculatorInfo.txt b/CalculatorInfo.txt new file mode 100644 index 0000000..91b2f1f --- /dev/null +++ b/CalculatorInfo.txt @@ -0,0 +1,1249 @@ +// Registration OutputPollutantName OutputPollutantID ProcessName ProcessID ModuleName +// Subscribe ModuleName ProcessName ProcessID Granularity Priority +// Chain OutputModuleName InputModuleName +Registration Benzene 20 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzene 20 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzene 20 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Benzene 20 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Benzene 20 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Benzene 20 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Benzene 20 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Benzene 20 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Benzene 20 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Benzene 20 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Benzene 20 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Benzene 20 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Ethanol 21 Running Exhaust 1 NRAirToxicsCalculator +Registration Ethanol 21 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Ethanol 21 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Ethanol 21 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Ethanol 21 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Ethanol 21 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Ethanol 21 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Ethanol 21 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Ethanol 21 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Ethanol 21 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Ethanol 21 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Ethanol 21 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration MTBE 22 Running Exhaust 1 NRAirToxicsCalculator +Registration MTBE 22 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration MTBE 22 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration MTBE 22 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration MTBE 22 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration MTBE 22 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration MTBE 22 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration MTBE 22 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration MTBE 22 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration MTBE 22 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration MTBE 22 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration MTBE 22 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Naphthalene particle 23 Running Exhaust 1 NRAirToxicsCalculator +Registration Naphthalene particle 23 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration 1,3-Butadiene 24 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,3-Butadiene 24 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Formaldehyde 25 Running Exhaust 1 NRAirToxicsCalculator +Registration Formaldehyde 25 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acetaldehyde 26 Running Exhaust 1 NRAirToxicsCalculator +Registration Acetaldehyde 26 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acrolein 27 Running Exhaust 1 NRAirToxicsCalculator +Registration Acrolein 27 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Running Exhaust 1 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Running Exhaust 1 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Ethyl Benzene 41 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Ethyl Benzene 41 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Ethyl Benzene 41 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Hexane 42 Running Exhaust 1 NRAirToxicsCalculator +Registration Hexane 42 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Hexane 42 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Hexane 42 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Hexane 42 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Hexane 42 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Hexane 42 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Hexane 42 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Hexane 42 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Hexane 42 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Hexane 42 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Hexane 42 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Propionaldehyde 43 Running Exhaust 1 NRAirToxicsCalculator +Registration Propionaldehyde 43 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Styrene 44 Running Exhaust 1 NRAirToxicsCalculator +Registration Styrene 44 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Toluene 45 Running Exhaust 1 NRAirToxicsCalculator +Registration Toluene 45 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Toluene 45 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Toluene 45 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Toluene 45 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Toluene 45 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Toluene 45 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Toluene 45 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Toluene 45 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Toluene 45 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Toluene 45 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Toluene 45 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Xylene 46 Running Exhaust 1 NRAirToxicsCalculator +Registration Xylene 46 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Xylene 46 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration Xylene 46 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration Xylene 46 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration Xylene 46 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration Xylene 46 Evap RecMar Neck Hose Permeation 22 NRAirToxicsCalculator +Registration Xylene 46 Evap RecMar Supply/Ret Hose Permeation 23 NRAirToxicsCalculator +Registration Xylene 46 Evap RecMar Vent Hose Permeation 24 NRAirToxicsCalculator +Registration Xylene 46 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration Xylene 46 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration Xylene 46 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration Mercury Elemental Gaseous 60 Running Exhaust 1 NRAirToxicsCalculator +Registration Mercury Divalent Gaseous 61 Running Exhaust 1 NRAirToxicsCalculator +Registration Mercury Particulate 62 Running Exhaust 1 NRAirToxicsCalculator +Registration Arsenic Compounds 63 Running Exhaust 1 NRAirToxicsCalculator +Registration Chromium 6+ 65 Running Exhaust 1 NRAirToxicsCalculator +Registration Manganese Compounds 66 Running Exhaust 1 NRAirToxicsCalculator +Registration Nickel Compounds 67 Running Exhaust 1 NRAirToxicsCalculator +Registration Dibenzo(a,h)anthracene particle 68 Running Exhaust 1 NRAirToxicsCalculator +Registration Dibenzo(a,h)anthracene particle 68 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Fluoranthene particle 69 Running Exhaust 1 NRAirToxicsCalculator +Registration Fluoranthene particle 69 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acenaphthene particle 70 Running Exhaust 1 NRAirToxicsCalculator +Registration Acenaphthene particle 70 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acenaphthylene particle 71 Running Exhaust 1 NRAirToxicsCalculator +Registration Acenaphthylene particle 71 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Anthracene particle 72 Running Exhaust 1 NRAirToxicsCalculator +Registration Anthracene particle 72 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benz(a)anthracene particle 73 Running Exhaust 1 NRAirToxicsCalculator +Registration Benz(a)anthracene particle 73 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(a)pyrene particle 74 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(a)pyrene particle 74 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(b)fluoranthene particle 75 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(b)fluoranthene particle 75 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(g,h,i)perylene particle 76 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(g,h,i)perylene particle 76 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(k)fluoranthene particle 77 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(k)fluoranthene particle 77 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Chrysene particle 78 Running Exhaust 1 NRAirToxicsCalculator +Registration Chrysene particle 78 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Fluorene particle 81 Running Exhaust 1 NRAirToxicsCalculator +Registration Fluorene particle 81 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene particle 82 Running Exhaust 1 NRAirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene particle 82 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Phenanthrene particle 83 Running Exhaust 1 NRAirToxicsCalculator +Registration Phenanthrene particle 83 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Pyrene particle 84 Running Exhaust 1 NRAirToxicsCalculator +Registration Pyrene particle 84 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration NonHAPTOG 88 Running Exhaust 1 NRAirToxicsCalculator +Registration NonHAPTOG 88 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration NonHAPTOG 88 Refueling Displacement Vapor Loss 18 NRAirToxicsCalculator +Registration NonHAPTOG 88 Refueling Spillage Loss 19 NRAirToxicsCalculator +Registration NonHAPTOG 88 Evap Tank Permeation 20 NRAirToxicsCalculator +Registration NonHAPTOG 88 Evap Hose Permeation 21 NRAirToxicsCalculator +Registration NonHAPTOG 88 Diurnal Fuel Vapor Venting 30 NRAirToxicsCalculator +Registration NonHAPTOG 88 HotSoak Fuel Vapor Venting 31 NRAirToxicsCalculator +Registration NonHAPTOG 88 RunningLoss Fuel Vapor Venting 32 NRAirToxicsCalculator +Registration 1,2,3,7,8,9-Hexachlorodibenzo-p-Dioxin 130 Running Exhaust 1 NRAirToxicsCalculator +Registration Octachlorodibenzo-p-dioxin 131 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,4,6,7,8-Heptachlorodibenzo-p-Dioxin 132 Running Exhaust 1 NRAirToxicsCalculator +Registration Octachlorodibenzofuran 133 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,4,7,8-Hexachlorodibenzo-p-Dioxin 134 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,7,8-Pentachlorodibenzo-p-Dioxin 135 Running Exhaust 1 NRAirToxicsCalculator +Registration 2,3,7,8-Tetrachlorodibenzofuran 136 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,4,7,8,9-Heptachlorodibenzofuran 137 Running Exhaust 1 NRAirToxicsCalculator +Registration 2,3,4,7,8-Pentachlorodibenzofuran 138 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,7,8-Pentachlorodibenzofuran 139 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,6,7,8-Hexachlorodibenzofuran 140 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,6,7,8-Hexachlorodibenzo-p-Dioxin 141 Running Exhaust 1 NRAirToxicsCalculator +Registration 2,3,7,8-Tetrachlorodibenzo-p-Dioxin 142 Running Exhaust 1 NRAirToxicsCalculator +Registration 2,3,4,6,7,8-Hexachlorodibenzofuran 143 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,4,6,7,8-Heptachlorodibenzofuran 144 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,4,7,8-Hexachlorodibenzofuran 145 Running Exhaust 1 NRAirToxicsCalculator +Registration 1,2,3,7,8,9-Hexachlorodibenzofuran 146 Running Exhaust 1 NRAirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Running Exhaust 1 NRAirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Fluoranthene gas 169 Running Exhaust 1 NRAirToxicsCalculator +Registration Fluoranthene gas 169 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acenaphthene gas 170 Running Exhaust 1 NRAirToxicsCalculator +Registration Acenaphthene gas 170 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Acenaphthylene gas 171 Running Exhaust 1 NRAirToxicsCalculator +Registration Acenaphthylene gas 171 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Anthracene gas 172 Running Exhaust 1 NRAirToxicsCalculator +Registration Anthracene gas 172 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benz(a)anthracene gas 173 Running Exhaust 1 NRAirToxicsCalculator +Registration Benz(a)anthracene gas 173 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Running Exhaust 1 NRAirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Chrysene gas 178 Running Exhaust 1 NRAirToxicsCalculator +Registration Chrysene gas 178 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Fluorene gas 181 Running Exhaust 1 NRAirToxicsCalculator +Registration Fluorene gas 181 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Running Exhaust 1 NRAirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Phenanthrene gas 183 Running Exhaust 1 NRAirToxicsCalculator +Registration Phenanthrene gas 183 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Pyrene gas 184 Running Exhaust 1 NRAirToxicsCalculator +Registration Pyrene gas 184 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Naphthalene gas 185 Running Exhaust 1 NRAirToxicsCalculator +Registration Naphthalene gas 185 Crankcase Running Exhaust 15 NRAirToxicsCalculator +Registration Methane (CH4) 5 Running Exhaust 1 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Crankcase Running Exhaust 15 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Refueling Displacement Vapor Loss 18 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Refueling Spillage Loss 19 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Evap Tank Permeation 20 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Evap Hose Permeation 21 NRHCSpeciationCalculator +Registration Methane (CH4) 5 Diurnal Fuel Vapor Venting 30 NRHCSpeciationCalculator +Registration Methane (CH4) 5 HotSoak Fuel Vapor Venting 31 NRHCSpeciationCalculator +Registration Methane (CH4) 5 RunningLoss Fuel Vapor Venting 32 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Running Exhaust 1 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Crankcase Running Exhaust 15 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Refueling Displacement Vapor Loss 18 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Refueling Spillage Loss 19 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Evap Tank Permeation 20 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Evap Hose Permeation 21 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Diurnal Fuel Vapor Venting 30 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 HotSoak Fuel Vapor Venting 31 NRHCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 RunningLoss Fuel Vapor Venting 32 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Running Exhaust 1 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Crankcase Running Exhaust 15 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Refueling Displacement Vapor Loss 18 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Refueling Spillage Loss 19 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Evap Tank Permeation 20 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Evap Hose Permeation 21 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Diurnal Fuel Vapor Venting 30 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 HotSoak Fuel Vapor Venting 31 NRHCSpeciationCalculator +Registration Non-Methane Organic Gases 80 RunningLoss Fuel Vapor Venting 32 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Running Exhaust 1 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Crankcase Running Exhaust 15 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Refueling Displacement Vapor Loss 18 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Refueling Spillage Loss 19 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Evap Tank Permeation 20 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Evap Hose Permeation 21 NRHCSpeciationCalculator +Registration Total Organic Gases 86 Diurnal Fuel Vapor Venting 30 NRHCSpeciationCalculator +Registration Total Organic Gases 86 HotSoak Fuel Vapor Venting 31 NRHCSpeciationCalculator +Registration Total Organic Gases 86 RunningLoss Fuel Vapor Venting 32 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Running Exhaust 1 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Crankcase Running Exhaust 15 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Refueling Displacement Vapor Loss 18 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Refueling Spillage Loss 19 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Evap Tank Permeation 20 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Evap Hose Permeation 21 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 Diurnal Fuel Vapor Venting 30 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 HotSoak Fuel Vapor Venting 31 NRHCSpeciationCalculator +Registration Volatile Organic Compounds 87 RunningLoss Fuel Vapor Venting 32 NRHCSpeciationCalculator +Registration Total Gaseous Hydrocarbons 1 HotSoak Fuel Vapor Venting 31 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Diurnal Fuel Vapor Venting 30 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Refueling Displacement Vapor Loss 18 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Refueling Spillage Loss 19 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 RunningLoss Fuel Vapor Venting 32 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Evap Tank Permeation 20 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Evap Hose Permeation 21 NonroadEmissionCalculator +Registration Atmospheric CO2 90 Running Exhaust 1 NonroadEmissionCalculator +Registration Total Energy Consumption 91 Running Exhaust 1 NonroadEmissionCalculator +Registration Brake Specific Fuel Consumption (BSFC) 99 Running Exhaust 1 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Running Exhaust 1 NonroadEmissionCalculator +Registration Carbon Monoxide (CO) 2 Running Exhaust 1 NonroadEmissionCalculator +Registration Oxides of Nitrogen (NOx) 3 Running Exhaust 1 NonroadEmissionCalculator +Registration Ammonia (NH3) 30 Running Exhaust 1 NonroadEmissionCalculator +Registration Sulfur Dioxide (SO2) 31 Running Exhaust 1 NonroadEmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Running Exhaust 1 NonroadEmissionCalculator +Registration Primary Exhaust PM2.5 - Total 110 Running Exhaust 1 NonroadEmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Crankcase Running Exhaust 15 NonroadEmissionCalculator +Chain NRAirToxicsCalculator NRHCSpeciationCalculator +Chain NRAirToxicsCalculator NonroadEmissionCalculator +Chain NRHCSpeciationCalculator NonroadEmissionCalculator +Subscribe NonroadEmissionCalculator HotSoak Fuel Vapor Venting 31 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Diurnal Fuel Vapor Venting 30 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Refueling Displacement Vapor Loss 18 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Refueling Spillage Loss 19 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator RunningLoss Fuel Vapor Venting 32 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Evap Tank Permeation 20 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Evap Hose Permeation 21 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Running Exhaust 1 DAY EMISSION_CALCULATOR +Subscribe NonroadEmissionCalculator Crankcase Running Exhaust 15 DAY EMISSION_CALCULATOR +Registration Benzene 20 Running Exhaust 1 AirToxicsCalculator +Registration Benzene 20 Start Exhaust 2 AirToxicsCalculator +Registration Benzene 20 Evap Permeation 11 AirToxicsCalculator +Registration Benzene 20 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Benzene 20 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Benzene 20 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Benzene 20 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Benzene 20 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benzene 20 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Ethanol 21 Running Exhaust 1 AirToxicsCalculator +Registration Ethanol 21 Start Exhaust 2 AirToxicsCalculator +Registration Ethanol 21 Evap Permeation 11 AirToxicsCalculator +Registration Ethanol 21 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Ethanol 21 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Ethanol 21 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Ethanol 21 Refueling Spillage Loss 19 AirToxicsCalculator +Registration MTBE 22 Running Exhaust 1 AirToxicsCalculator +Registration MTBE 22 Start Exhaust 2 AirToxicsCalculator +Registration MTBE 22 Evap Permeation 11 AirToxicsCalculator +Registration MTBE 22 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration MTBE 22 Evap Fuel Leaks 13 AirToxicsCalculator +Registration MTBE 22 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration MTBE 22 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Naphthalene particle 23 Running Exhaust 1 AirToxicsCalculator +Registration Naphthalene particle 23 Start Exhaust 2 AirToxicsCalculator +Registration Naphthalene particle 23 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Naphthalene particle 23 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration 1,3-Butadiene 24 Running Exhaust 1 AirToxicsCalculator +Registration 1,3-Butadiene 24 Start Exhaust 2 AirToxicsCalculator +Registration 1,3-Butadiene 24 Extended Idle Exhaust 90 AirToxicsCalculator +Registration 1,3-Butadiene 24 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Formaldehyde 25 Running Exhaust 1 AirToxicsCalculator +Registration Formaldehyde 25 Start Exhaust 2 AirToxicsCalculator +Registration Formaldehyde 25 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Formaldehyde 25 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Acetaldehyde 26 Running Exhaust 1 AirToxicsCalculator +Registration Acetaldehyde 26 Start Exhaust 2 AirToxicsCalculator +Registration Acetaldehyde 26 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Acetaldehyde 26 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Acrolein 27 Running Exhaust 1 AirToxicsCalculator +Registration Acrolein 27 Start Exhaust 2 AirToxicsCalculator +Registration Acrolein 27 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Acrolein 27 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Running Exhaust 1 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Start Exhaust 2 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap Permeation 11 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Evap Fuel Leaks 13 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Refueling Spillage Loss 19 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Extended Idle Exhaust 90 AirToxicsCalculator +Registration 2,2,4-Trimethylpentane 40 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Ethyl Benzene 41 Running Exhaust 1 AirToxicsCalculator +Registration Ethyl Benzene 41 Start Exhaust 2 AirToxicsCalculator +Registration Ethyl Benzene 41 Evap Permeation 11 AirToxicsCalculator +Registration Ethyl Benzene 41 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Ethyl Benzene 41 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Ethyl Benzene 41 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Ethyl Benzene 41 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Ethyl Benzene 41 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Ethyl Benzene 41 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Hexane 42 Running Exhaust 1 AirToxicsCalculator +Registration Hexane 42 Start Exhaust 2 AirToxicsCalculator +Registration Hexane 42 Evap Permeation 11 AirToxicsCalculator +Registration Hexane 42 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Hexane 42 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Hexane 42 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Hexane 42 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Hexane 42 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Hexane 42 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Propionaldehyde 43 Running Exhaust 1 AirToxicsCalculator +Registration Propionaldehyde 43 Start Exhaust 2 AirToxicsCalculator +Registration Propionaldehyde 43 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Propionaldehyde 43 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Styrene 44 Running Exhaust 1 AirToxicsCalculator +Registration Styrene 44 Start Exhaust 2 AirToxicsCalculator +Registration Styrene 44 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Styrene 44 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Toluene 45 Running Exhaust 1 AirToxicsCalculator +Registration Toluene 45 Start Exhaust 2 AirToxicsCalculator +Registration Toluene 45 Evap Permeation 11 AirToxicsCalculator +Registration Toluene 45 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Toluene 45 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Toluene 45 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Toluene 45 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Toluene 45 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Toluene 45 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Xylene 46 Running Exhaust 1 AirToxicsCalculator +Registration Xylene 46 Start Exhaust 2 AirToxicsCalculator +Registration Xylene 46 Evap Permeation 11 AirToxicsCalculator +Registration Xylene 46 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Xylene 46 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Xylene 46 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Xylene 46 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Xylene 46 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Xylene 46 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene particle 68 Running Exhaust 1 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene particle 68 Start Exhaust 2 AirToxicsCalculator +Registration Fluoranthene particle 69 Running Exhaust 1 AirToxicsCalculator +Registration Fluoranthene particle 69 Start Exhaust 2 AirToxicsCalculator +Registration Acenaphthene particle 70 Running Exhaust 1 AirToxicsCalculator +Registration Acenaphthene particle 70 Start Exhaust 2 AirToxicsCalculator +Registration Acenaphthylene particle 71 Running Exhaust 1 AirToxicsCalculator +Registration Acenaphthylene particle 71 Start Exhaust 2 AirToxicsCalculator +Registration Anthracene particle 72 Running Exhaust 1 AirToxicsCalculator +Registration Anthracene particle 72 Start Exhaust 2 AirToxicsCalculator +Registration Benz(a)anthracene particle 73 Running Exhaust 1 AirToxicsCalculator +Registration Benz(a)anthracene particle 73 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(a)pyrene particle 74 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(a)pyrene particle 74 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(b)fluoranthene particle 75 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(b)fluoranthene particle 75 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(g,h,i)perylene particle 76 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(g,h,i)perylene particle 76 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(k)fluoranthene particle 77 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(k)fluoranthene particle 77 Start Exhaust 2 AirToxicsCalculator +Registration Chrysene particle 78 Running Exhaust 1 AirToxicsCalculator +Registration Chrysene particle 78 Start Exhaust 2 AirToxicsCalculator +Registration Fluorene particle 81 Running Exhaust 1 AirToxicsCalculator +Registration Fluorene particle 81 Start Exhaust 2 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene particle 82 Running Exhaust 1 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene particle 82 Start Exhaust 2 AirToxicsCalculator +Registration Phenanthrene particle 83 Running Exhaust 1 AirToxicsCalculator +Registration Phenanthrene particle 83 Start Exhaust 2 AirToxicsCalculator +Registration Pyrene particle 84 Running Exhaust 1 AirToxicsCalculator +Registration Pyrene particle 84 Start Exhaust 2 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Running Exhaust 1 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Start Exhaust 2 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Dibenzo(a,h)anthracene gas 168 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Fluoranthene gas 169 Running Exhaust 1 AirToxicsCalculator +Registration Fluoranthene gas 169 Start Exhaust 2 AirToxicsCalculator +Registration Fluoranthene gas 169 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Fluoranthene gas 169 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Acenaphthene gas 170 Running Exhaust 1 AirToxicsCalculator +Registration Acenaphthene gas 170 Start Exhaust 2 AirToxicsCalculator +Registration Acenaphthene gas 170 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Acenaphthene gas 170 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Acenaphthylene gas 171 Running Exhaust 1 AirToxicsCalculator +Registration Acenaphthylene gas 171 Start Exhaust 2 AirToxicsCalculator +Registration Acenaphthylene gas 171 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Acenaphthylene gas 171 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Anthracene gas 172 Running Exhaust 1 AirToxicsCalculator +Registration Anthracene gas 172 Start Exhaust 2 AirToxicsCalculator +Registration Anthracene gas 172 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Anthracene gas 172 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Benz(a)anthracene gas 173 Running Exhaust 1 AirToxicsCalculator +Registration Benz(a)anthracene gas 173 Start Exhaust 2 AirToxicsCalculator +Registration Benz(a)anthracene gas 173 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benz(a)anthracene gas 173 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benzo(a)pyrene gas 174 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benzo(b)fluoranthene gas 175 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benzo(g,h,i)perylene gas 176 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Running Exhaust 1 AirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Start Exhaust 2 AirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Benzo(k)fluoranthene gas 177 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Chrysene gas 178 Running Exhaust 1 AirToxicsCalculator +Registration Chrysene gas 178 Start Exhaust 2 AirToxicsCalculator +Registration Chrysene gas 178 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Chrysene gas 178 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Fluorene gas 181 Running Exhaust 1 AirToxicsCalculator +Registration Fluorene gas 181 Start Exhaust 2 AirToxicsCalculator +Registration Fluorene gas 181 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Fluorene gas 181 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Running Exhaust 1 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Start Exhaust 2 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Indeno(1,2,3,c,d)pyrene gas 182 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Phenanthrene gas 183 Running Exhaust 1 AirToxicsCalculator +Registration Phenanthrene gas 183 Start Exhaust 2 AirToxicsCalculator +Registration Phenanthrene gas 183 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Phenanthrene gas 183 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Pyrene gas 184 Running Exhaust 1 AirToxicsCalculator +Registration Pyrene gas 184 Start Exhaust 2 AirToxicsCalculator +Registration Pyrene gas 184 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Pyrene gas 184 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Naphthalene gas 185 Running Exhaust 1 AirToxicsCalculator +Registration Naphthalene gas 185 Start Exhaust 2 AirToxicsCalculator +Registration Naphthalene gas 185 Evap Permeation 11 AirToxicsCalculator +Registration Naphthalene gas 185 Evap Fuel Vapor Venting 12 AirToxicsCalculator +Registration Naphthalene gas 185 Evap Fuel Leaks 13 AirToxicsCalculator +Registration Naphthalene gas 185 Refueling Displacement Vapor Loss 18 AirToxicsCalculator +Registration Naphthalene gas 185 Refueling Spillage Loss 19 AirToxicsCalculator +Registration Naphthalene gas 185 Extended Idle Exhaust 90 AirToxicsCalculator +Registration Naphthalene gas 185 Auxiliary Power Exhaust 91 AirToxicsCalculator +Registration Total Gaseous Hydrocarbons 1 Running Exhaust 1 BaseRateCalculator +Registration Total Gaseous Hydrocarbons 1 Start Exhaust 2 BaseRateCalculator +Registration Total Gaseous Hydrocarbons 1 Brakewear 9 BaseRateCalculator +Registration Total Gaseous Hydrocarbons 1 Tirewear 10 BaseRateCalculator +Registration Total Gaseous Hydrocarbons 1 Extended Idle Exhaust 90 BaseRateCalculator +Registration Total Gaseous Hydrocarbons 1 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Running Exhaust 1 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Start Exhaust 2 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Brakewear 9 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Tirewear 10 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Extended Idle Exhaust 90 BaseRateCalculator +Registration Carbon Monoxide (CO) 2 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Running Exhaust 1 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Start Exhaust 2 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Brakewear 9 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Tirewear 10 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Extended Idle Exhaust 90 BaseRateCalculator +Registration Oxides of Nitrogen (NOx) 3 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Running Exhaust 1 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Start Exhaust 2 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Brakewear 9 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Tirewear 10 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Extended Idle Exhaust 90 BaseRateCalculator +Registration Nitrous Oxide (N2O) 6 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Ammonia (NH3) 30 Running Exhaust 1 BaseRateCalculator +Registration Ammonia (NH3) 30 Start Exhaust 2 BaseRateCalculator +Registration Ammonia (NH3) 30 Brakewear 9 BaseRateCalculator +Registration Ammonia (NH3) 30 Tirewear 10 BaseRateCalculator +Registration Ammonia (NH3) 30 Extended Idle Exhaust 90 BaseRateCalculator +Registration Ammonia (NH3) 30 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Total Energy Consumption 91 Running Exhaust 1 BaseRateCalculator +Registration Total Energy Consumption 91 Start Exhaust 2 BaseRateCalculator +Registration Total Energy Consumption 91 Brakewear 9 BaseRateCalculator +Registration Total Energy Consumption 91 Tirewear 10 BaseRateCalculator +Registration Total Energy Consumption 91 Extended Idle Exhaust 90 BaseRateCalculator +Registration Total Energy Consumption 91 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Composite - NonECPM 118 Running Exhaust 1 BaseRateCalculator +Registration Composite - NonECPM 118 Start Exhaust 2 BaseRateCalculator +Registration Composite - NonECPM 118 Brakewear 9 BaseRateCalculator +Registration Composite - NonECPM 118 Tirewear 10 BaseRateCalculator +Registration Composite - NonECPM 118 Extended Idle Exhaust 90 BaseRateCalculator +Registration Composite - NonECPM 118 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Elemental Carbon 112 Running Exhaust 1 BaseRateCalculator +Registration Elemental Carbon 112 Start Exhaust 2 BaseRateCalculator +Registration Elemental Carbon 112 Brakewear 9 BaseRateCalculator +Registration Elemental Carbon 112 Tirewear 10 BaseRateCalculator +Registration Elemental Carbon 112 Extended Idle Exhaust 90 BaseRateCalculator +Registration Elemental Carbon 112 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Running Exhaust 1 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Start Exhaust 2 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Brakewear 9 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Tirewear 10 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Extended Idle Exhaust 90 BaseRateCalculator +Registration Primary PM2.5 - Brakewear Particulate 116 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Running Exhaust 1 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Start Exhaust 2 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Brakewear 9 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Tirewear 10 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Extended Idle Exhaust 90 BaseRateCalculator +Registration Primary PM2.5 - Tirewear Particulate 117 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Mercury Elemental Gaseous 60 Running Exhaust 1 BaseRateCalculator +Registration Mercury Divalent Gaseous 61 Running Exhaust 1 BaseRateCalculator +Registration Mercury Particulate 62 Running Exhaust 1 BaseRateCalculator +Registration Arsenic Compounds 63 Running Exhaust 1 BaseRateCalculator +Registration Chromium 6+ 65 Running Exhaust 1 BaseRateCalculator +Registration Manganese Compounds 66 Running Exhaust 1 BaseRateCalculator +Registration Nickel Compounds 67 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,7,8,9-Hexachlorodibenzo-p-Dioxin 130 Running Exhaust 1 BaseRateCalculator +Registration Octachlorodibenzo-p-dioxin 131 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,4,6,7,8-Heptachlorodibenzo-p-Dioxin 132 Running Exhaust 1 BaseRateCalculator +Registration Octachlorodibenzofuran 133 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,4,7,8-Hexachlorodibenzo-p-Dioxin 134 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,7,8-Pentachlorodibenzo-p-Dioxin 135 Running Exhaust 1 BaseRateCalculator +Registration 2,3,7,8-Tetrachlorodibenzofuran 136 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,4,7,8,9-Heptachlorodibenzofuran 137 Running Exhaust 1 BaseRateCalculator +Registration 2,3,4,7,8-Pentachlorodibenzofuran 138 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,7,8-Pentachlorodibenzofuran 139 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,6,7,8-Hexachlorodibenzofuran 140 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,6,7,8-Hexachlorodibenzo-p-Dioxin 141 Running Exhaust 1 BaseRateCalculator +Registration 2,3,7,8-Tetrachlorodibenzo-p-Dioxin 142 Running Exhaust 1 BaseRateCalculator +Registration 2,3,4,6,7,8-Hexachlorodibenzofuran 143 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,4,6,7,8-Heptachlorodibenzofuran 144 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,4,7,8-Hexachlorodibenzofuran 145 Running Exhaust 1 BaseRateCalculator +Registration 1,2,3,7,8,9-Hexachlorodibenzofuran 146 Running Exhaust 1 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Running Exhaust 1 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Start Exhaust 2 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Brakewear 9 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Tirewear 10 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Extended Idle Exhaust 90 BaseRateCalculator +Registration Petroleum Energy Consumption 92 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Running Exhaust 1 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Start Exhaust 2 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Brakewear 9 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Tirewear 10 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Extended Idle Exhaust 90 BaseRateCalculator +Registration Fossil Fuel Energy Consumption 93 Auxiliary Power Exhaust 91 BaseRateCalculator +Registration Atmospheric CO2 90 Running Exhaust 1 CO2AERunningStartExtendedIdleCalculator +Registration CO2 Equivalent 98 Running Exhaust 1 CO2AERunningStartExtendedIdleCalculator +Registration Atmospheric CO2 90 Start Exhaust 2 CO2AERunningStartExtendedIdleCalculator +Registration CO2 Equivalent 98 Start Exhaust 2 CO2AERunningStartExtendedIdleCalculator +Registration Atmospheric CO2 90 Extended Idle Exhaust 90 CO2AERunningStartExtendedIdleCalculator +Registration CO2 Equivalent 98 Extended Idle Exhaust 90 CO2AERunningStartExtendedIdleCalculator +Registration Atmospheric CO2 90 Auxiliary Power Exhaust 91 CO2AERunningStartExtendedIdleCalculator +Registration CO2 Equivalent 98 Auxiliary Power Exhaust 91 CO2AERunningStartExtendedIdleCalculator +Registration Total Gaseous Hydrocarbons 1 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Carbon Monoxide (CO) 2 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Oxides of Nitrogen (NOx) 3 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Methane (CH4) 5 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Oxide (N2O) 6 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzene 20 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Ethanol 21 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration MTBE 22 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene particle 23 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration 1,3-Butadiene 24 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Formaldehyde 25 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acetaldehyde 26 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acrolein 27 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Ammonia (NH3) 30 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Sulfur Dioxide (SO2) 31 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Oxide (NO) 32 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Dioxide (NO2) 33 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Acid (HONO) 34 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Hydrocarbons 79 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Organic Gases 80 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Total Organic Gases 86 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Volatile Organic Compounds 87 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration 2,2,4-Trimethylpentane 40 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Ethyl Benzene 41 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Hexane 42 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Propionaldehyde 43 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Styrene 44 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Toluene 45 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Xylene 46 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene particle 68 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene particle 69 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene particle 70 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene particle 71 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Anthracene particle 72 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene particle 73 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene particle 74 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene particle 75 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene particle 76 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene particle 77 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Chrysene particle 78 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Fluorene particle 81 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene particle 82 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene particle 83 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Pyrene particle 84 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene gas 168 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene gas 169 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene gas 170 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene gas 171 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Anthracene gas 172 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene gas 173 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene gas 174 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene gas 175 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene gas 176 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene gas 177 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Chrysene gas 178 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Fluorene gas 181 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene gas 182 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene gas 183 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Pyrene gas 184 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene gas 185 Crankcase Running Exhaust 15 CrankcaseEmissionCalculatorNonPM +Registration Total Gaseous Hydrocarbons 1 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Carbon Monoxide (CO) 2 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Oxides of Nitrogen (NOx) 3 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Methane (CH4) 5 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Oxide (N2O) 6 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzene 20 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Ethanol 21 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration MTBE 22 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene particle 23 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration 1,3-Butadiene 24 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Formaldehyde 25 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acetaldehyde 26 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acrolein 27 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Ammonia (NH3) 30 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Sulfur Dioxide (SO2) 31 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Oxide (NO) 32 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Dioxide (NO2) 33 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Acid (HONO) 34 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Hydrocarbons 79 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Organic Gases 80 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Total Organic Gases 86 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Volatile Organic Compounds 87 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration 2,2,4-Trimethylpentane 40 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Ethyl Benzene 41 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Hexane 42 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Propionaldehyde 43 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Styrene 44 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Toluene 45 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Xylene 46 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene particle 68 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene particle 69 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene particle 70 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene particle 71 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Anthracene particle 72 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene particle 73 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene particle 74 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene particle 75 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene particle 76 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene particle 77 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Chrysene particle 78 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Fluorene particle 81 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene particle 82 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene particle 83 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Pyrene particle 84 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene gas 168 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene gas 169 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene gas 170 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene gas 171 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Anthracene gas 172 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene gas 173 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene gas 174 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene gas 175 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene gas 176 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene gas 177 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Chrysene gas 178 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Fluorene gas 181 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene gas 182 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene gas 183 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Pyrene gas 184 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene gas 185 Crankcase Start Exhaust 16 CrankcaseEmissionCalculatorNonPM +Registration Total Gaseous Hydrocarbons 1 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Carbon Monoxide (CO) 2 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Oxides of Nitrogen (NOx) 3 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Methane (CH4) 5 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Oxide (N2O) 6 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzene 20 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Ethanol 21 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration MTBE 22 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene particle 23 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration 1,3-Butadiene 24 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Formaldehyde 25 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acetaldehyde 26 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acrolein 27 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Ammonia (NH3) 30 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Sulfur Dioxide (SO2) 31 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Oxide (NO) 32 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Nitrogen Dioxide (NO2) 33 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Nitrous Acid (HONO) 34 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Hydrocarbons 79 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Non-Methane Organic Gases 80 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Total Organic Gases 86 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Volatile Organic Compounds 87 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration 2,2,4-Trimethylpentane 40 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Ethyl Benzene 41 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Hexane 42 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Propionaldehyde 43 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Styrene 44 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Toluene 45 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Xylene 46 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene particle 68 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene particle 69 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene particle 70 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene particle 71 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Anthracene particle 72 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene particle 73 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene particle 74 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene particle 75 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene particle 76 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene particle 77 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Chrysene particle 78 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Fluorene particle 81 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene particle 82 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene particle 83 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Pyrene particle 84 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Dibenzo(a,h)anthracene gas 168 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Fluoranthene gas 169 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthene gas 170 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Acenaphthylene gas 171 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Anthracene gas 172 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benz(a)anthracene gas 173 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(a)pyrene gas 174 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(b)fluoranthene gas 175 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(g,h,i)perylene gas 176 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Benzo(k)fluoranthene gas 177 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Chrysene gas 178 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Fluorene gas 181 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Indeno(1,2,3,c,d)pyrene gas 182 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Phenanthrene gas 183 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Pyrene gas 184 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Naphthalene gas 185 Crankcase Extended Idle Exhaust 17 CrankcaseEmissionCalculatorNonPM +Registration Total Gaseous Hydrocarbons 1 Evap Permeation 11 EvaporativePermeationCalculator +Registration Methane (CH4) 5 Running Exhaust 1 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Running Exhaust 1 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Running Exhaust 1 HCSpeciationCalculator +Registration Total Organic Gases 86 Running Exhaust 1 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Running Exhaust 1 HCSpeciationCalculator +Registration Methane (CH4) 5 Start Exhaust 2 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Start Exhaust 2 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Start Exhaust 2 HCSpeciationCalculator +Registration Total Organic Gases 86 Start Exhaust 2 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Start Exhaust 2 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Evap Permeation 11 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Evap Permeation 11 HCSpeciationCalculator +Registration Total Organic Gases 86 Evap Permeation 11 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Evap Permeation 11 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Evap Fuel Vapor Venting 12 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Evap Fuel Vapor Venting 12 HCSpeciationCalculator +Registration Total Organic Gases 86 Evap Fuel Vapor Venting 12 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Evap Fuel Vapor Venting 12 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Evap Fuel Leaks 13 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Evap Fuel Leaks 13 HCSpeciationCalculator +Registration Total Organic Gases 86 Evap Fuel Leaks 13 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Evap Fuel Leaks 13 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Refueling Displacement Vapor Loss 18 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Refueling Displacement Vapor Loss 18 HCSpeciationCalculator +Registration Total Organic Gases 86 Refueling Displacement Vapor Loss 18 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Refueling Displacement Vapor Loss 18 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Refueling Spillage Loss 19 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Refueling Spillage Loss 19 HCSpeciationCalculator +Registration Total Organic Gases 86 Refueling Spillage Loss 19 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Refueling Spillage Loss 19 HCSpeciationCalculator +Registration Methane (CH4) 5 Extended Idle Exhaust 90 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Extended Idle Exhaust 90 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Extended Idle Exhaust 90 HCSpeciationCalculator +Registration Total Organic Gases 86 Extended Idle Exhaust 90 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Extended Idle Exhaust 90 HCSpeciationCalculator +Registration Methane (CH4) 5 Auxiliary Power Exhaust 91 HCSpeciationCalculator +Registration Non-Methane Hydrocarbons 79 Auxiliary Power Exhaust 91 HCSpeciationCalculator +Registration Non-Methane Organic Gases 80 Auxiliary Power Exhaust 91 HCSpeciationCalculator +Registration Total Organic Gases 86 Auxiliary Power Exhaust 91 HCSpeciationCalculator +Registration Volatile Organic Compounds 87 Auxiliary Power Exhaust 91 HCSpeciationCalculator +Registration Total Gaseous Hydrocarbons 1 Evap Fuel Leaks 13 LiquidLeakingCalculator +Registration Nitrogen Dioxide (NO2) 33 Running Exhaust 1 NO2Calculator +Registration Nitrogen Dioxide (NO2) 33 Start Exhaust 2 NO2Calculator +Registration Nitrogen Dioxide (NO2) 33 Extended Idle Exhaust 90 NO2Calculator +Registration Nitrogen Dioxide (NO2) 33 Auxiliary Power Exhaust 91 NO2Calculator +Registration Nitrogen Oxide (NO) 32 Running Exhaust 1 NOCalculator +Registration Nitrogen Oxide (NO) 32 Start Exhaust 2 NOCalculator +Registration Nitrogen Oxide (NO) 32 Extended Idle Exhaust 90 NOCalculator +Registration Nitrogen Oxide (NO) 32 Auxiliary Power Exhaust 91 NOCalculator +Registration Nitrous Acid (HONO) 34 Running Exhaust 1 NOCalculator +Registration Nitrous Acid (HONO) 34 Start Exhaust 2 NOCalculator +Registration Nitrous Acid (HONO) 34 Extended Idle Exhaust 90 NOCalculator +Registration Nitrous Acid (HONO) 34 Auxiliary Power Exhaust 91 NOCalculator +Registration Primary PM10 - Brakewear Particulate 106 Brakewear 9 PM10BrakeTireCalculator +Registration Primary PM10 - Tirewear Particulate 107 Tirewear 10 PM10BrakeTireCalculator +Registration Primary Exhaust PM10 - Total 100 Running Exhaust 1 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Start Exhaust 2 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Extended Idle Exhaust 90 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Auxiliary Power Exhaust 91 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Crankcase Running Exhaust 15 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Crankcase Start Exhaust 16 PM10EmissionCalculator +Registration Primary Exhaust PM10 - Total 100 Crankcase Extended Idle Exhaust 17 PM10EmissionCalculator +Registration Total Gaseous Hydrocarbons 1 Refueling Displacement Vapor Loss 18 RefuelingLossCalculator +Registration Total Gaseous Hydrocarbons 1 Refueling Spillage Loss 19 RefuelingLossCalculator +Registration Sulfur Dioxide (SO2) 31 Running Exhaust 1 SO2Calculator +Registration Sulfur Dioxide (SO2) 31 Start Exhaust 2 SO2Calculator +Registration Sulfur Dioxide (SO2) 31 Extended Idle Exhaust 90 SO2Calculator +Registration Sulfur Dioxide (SO2) 31 Auxiliary Power Exhaust 91 SO2Calculator +Registration Nitrate (NO3) 35 Running Exhaust 1 SulfatePMCalculator +Registration Nitrate (NO3) 35 Start Exhaust 2 SulfatePMCalculator +Registration Nitrate (NO3) 35 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Nitrate (NO3) 35 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Nitrate (NO3) 35 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Nitrate (NO3) 35 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Nitrate (NO3) 35 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Ammonium (NH4) 36 Running Exhaust 1 SulfatePMCalculator +Registration Ammonium (NH4) 36 Start Exhaust 2 SulfatePMCalculator +Registration Ammonium (NH4) 36 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Ammonium (NH4) 36 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Ammonium (NH4) 36 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Ammonium (NH4) 36 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Ammonium (NH4) 36 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Chloride 51 Running Exhaust 1 SulfatePMCalculator +Registration Chloride 51 Start Exhaust 2 SulfatePMCalculator +Registration Chloride 51 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Chloride 51 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Chloride 51 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Chloride 51 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Chloride 51 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Sodium 52 Running Exhaust 1 SulfatePMCalculator +Registration Sodium 52 Start Exhaust 2 SulfatePMCalculator +Registration Sodium 52 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Sodium 52 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Sodium 52 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Sodium 52 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Sodium 52 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Potassium 53 Running Exhaust 1 SulfatePMCalculator +Registration Potassium 53 Start Exhaust 2 SulfatePMCalculator +Registration Potassium 53 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Potassium 53 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Potassium 53 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Potassium 53 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Potassium 53 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Magnesium 54 Running Exhaust 1 SulfatePMCalculator +Registration Magnesium 54 Start Exhaust 2 SulfatePMCalculator +Registration Magnesium 54 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Magnesium 54 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Magnesium 54 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Magnesium 54 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Magnesium 54 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Calcium 55 Running Exhaust 1 SulfatePMCalculator +Registration Calcium 55 Start Exhaust 2 SulfatePMCalculator +Registration Calcium 55 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Calcium 55 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Calcium 55 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Calcium 55 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Calcium 55 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Titanium 56 Running Exhaust 1 SulfatePMCalculator +Registration Titanium 56 Start Exhaust 2 SulfatePMCalculator +Registration Titanium 56 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Titanium 56 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Titanium 56 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Titanium 56 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Titanium 56 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Silicon 57 Running Exhaust 1 SulfatePMCalculator +Registration Silicon 57 Start Exhaust 2 SulfatePMCalculator +Registration Silicon 57 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Silicon 57 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Silicon 57 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Silicon 57 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Silicon 57 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Aluminum 58 Running Exhaust 1 SulfatePMCalculator +Registration Aluminum 58 Start Exhaust 2 SulfatePMCalculator +Registration Aluminum 58 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Aluminum 58 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Aluminum 58 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Aluminum 58 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Aluminum 58 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Iron 59 Running Exhaust 1 SulfatePMCalculator +Registration Iron 59 Start Exhaust 2 SulfatePMCalculator +Registration Iron 59 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Iron 59 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Iron 59 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Iron 59 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Iron 59 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Running Exhaust 1 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Start Exhaust 2 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Primary Exhaust PM2.5 - Total 110 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Organic Carbon 111 Running Exhaust 1 SulfatePMCalculator +Registration Organic Carbon 111 Start Exhaust 2 SulfatePMCalculator +Registration Organic Carbon 111 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Organic Carbon 111 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Organic Carbon 111 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Organic Carbon 111 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Organic Carbon 111 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Elemental Carbon 112 Running Exhaust 1 SulfatePMCalculator +Registration Elemental Carbon 112 Start Exhaust 2 SulfatePMCalculator +Registration Elemental Carbon 112 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Elemental Carbon 112 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Elemental Carbon 112 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Elemental Carbon 112 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Elemental Carbon 112 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Sulfate Particulate 115 Running Exhaust 1 SulfatePMCalculator +Registration Sulfate Particulate 115 Start Exhaust 2 SulfatePMCalculator +Registration Sulfate Particulate 115 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Sulfate Particulate 115 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Sulfate Particulate 115 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Sulfate Particulate 115 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Sulfate Particulate 115 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Composite - NonECPM 118 Running Exhaust 1 SulfatePMCalculator +Registration Composite - NonECPM 118 Start Exhaust 2 SulfatePMCalculator +Registration Composite - NonECPM 118 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Composite - NonECPM 118 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Composite - NonECPM 118 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Composite - NonECPM 118 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Composite - NonECPM 118 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration H2O (aerosol) 119 Running Exhaust 1 SulfatePMCalculator +Registration H2O (aerosol) 119 Start Exhaust 2 SulfatePMCalculator +Registration H2O (aerosol) 119 Extended Idle Exhaust 90 SulfatePMCalculator +Registration H2O (aerosol) 119 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration H2O (aerosol) 119 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration H2O (aerosol) 119 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration H2O (aerosol) 119 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Running Exhaust 1 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Start Exhaust 2 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Extended Idle Exhaust 90 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration CMAQ5.0 Unspeciated (PMOTHR) 121 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Running Exhaust 1 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Start Exhaust 2 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Extended Idle Exhaust 90 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Auxiliary Power Exhaust 91 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Crankcase Running Exhaust 15 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Crankcase Start Exhaust 16 SulfatePMCalculator +Registration Non-carbon Organic Matter (NCOM) 122 Crankcase Extended Idle Exhaust 17 SulfatePMCalculator +Registration CB05 Mechanism 1000 Running Exhaust 1 TOGSpeciationCalculator +Registration NonHAPTOG 88 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_ETH 1005 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_FORM 1008 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_OLE 1012 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_PAR 1013 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_TOL 1015 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_UNR 1017 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_XYL 1018 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_MEOH 1011 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_TERP 1014 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05_UNK 1016 Running Exhaust 1 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Start Exhaust 2 TOGSpeciationCalculator +Registration NonHAPTOG 88 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_ETH 1005 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_FORM 1008 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_OLE 1012 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_PAR 1013 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_TOL 1015 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_UNR 1017 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_XYL 1018 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_MEOH 1011 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_TERP 1014 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05_UNK 1016 Start Exhaust 2 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Evap Permeation 11 TOGSpeciationCalculator +Registration NonHAPTOG 88 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_ETH 1005 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_FORM 1008 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_MEOH 1011 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_OLE 1012 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_PAR 1013 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_TERP 1014 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_TOL 1015 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_UNR 1017 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_XYL 1018 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Evap Permeation 11 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration NonHAPTOG 88 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_FORM 1008 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_OLE 1012 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_PAR 1013 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_TOL 1015 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_UNR 1017 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_XYL 1018 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05_TERP 1014 Evap Fuel Vapor Venting 12 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration NonHAPTOG 88 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_FORM 1008 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_OLE 1012 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_PAR 1013 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_TOL 1015 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_UNR 1017 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_XYL 1018 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05_TERP 1014 Evap Fuel Leaks 13 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration NonHAPTOG 88 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_ETH 1005 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_FORM 1008 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_OLE 1012 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_PAR 1013 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_TOL 1015 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_UNR 1017 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_XYL 1018 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_MEOH 1011 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_TERP 1014 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05_UNK 1016 Crankcase Running Exhaust 15 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration NonHAPTOG 88 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_ETH 1005 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_FORM 1008 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_OLE 1012 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_PAR 1013 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_TOL 1015 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_UNR 1017 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_XYL 1018 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_MEOH 1011 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_TERP 1014 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05_UNK 1016 Crankcase Start Exhaust 16 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration NonHAPTOG 88 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_ETH 1005 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_FORM 1008 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_OLE 1012 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_PAR 1013 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_TERP 1014 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_TOL 1015 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_UNK 1016 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_UNR 1017 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05_XYL 1018 Crankcase Extended Idle Exhaust 17 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration NonHAPTOG 88 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_FORM 1008 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_OLE 1012 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_PAR 1013 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_TERP 1014 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_TOL 1015 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_UNR 1017 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05_XYL 1018 Refueling Displacement Vapor Loss 18 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration NonHAPTOG 88 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_FORM 1008 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_OLE 1012 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_PAR 1013 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_TOL 1015 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_UNR 1017 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_XYL 1018 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05_TERP 1014 Refueling Spillage Loss 19 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration NonHAPTOG 88 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_ETH 1005 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_FORM 1008 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_OLE 1012 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_PAR 1013 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_TERP 1014 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_TOL 1015 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_UNK 1016 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_UNR 1017 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05_XYL 1018 Extended Idle Exhaust 90 TOGSpeciationCalculator +Registration CB05 Mechanism 1000 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration NonHAPTOG 88 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_ALD2 1001 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_ALDX 1002 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_ETH 1005 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_ETHA 1006 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_FORM 1008 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_IOLE 1009 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_ISOP 1010 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_OLE 1012 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_PAR 1013 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_TERP 1014 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_TOL 1015 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_UNK 1016 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_UNR 1017 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration CB05_XYL 1018 Auxiliary Power Exhaust 91 TOGSpeciationCalculator +Registration Total Gaseous Hydrocarbons 1 Evap Fuel Vapor Venting 12 TankVaporVentingCalculator +Subscribe MeteorologyGenerator Running Exhaust 1 PROCESS GENERATOR +Subscribe MeteorologyGenerator Extended Idle Exhaust 90 PROCESS GENERATOR +Subscribe MeteorologyGenerator Start Exhaust 2 PROCESS GENERATOR +Subscribe MeteorologyGenerator Auxiliary Power Exhaust 91 PROCESS GENERATOR +Subscribe MeteorologyGenerator Tirewear 10 PROCESS GENERATOR +Subscribe MeteorologyGenerator Brakewear 9 PROCESS GENERATOR +Chain AirToxicsCalculator HCSpeciationCalculator +Chain AirToxicsCalculator SulfatePMCalculator +Subscribe AverageSpeedOperatingModeDistributionGenerator Tirewear 10 PROCESS GENERATOR +Subscribe BaseRateCalculator Running Exhaust 1 MONTH EMISSION_CALCULATOR +Subscribe BaseRateCalculator Start Exhaust 2 MONTH EMISSION_CALCULATOR +Subscribe BaseRateCalculator Brakewear 9 MONTH EMISSION_CALCULATOR +Subscribe BaseRateCalculator Tirewear 10 MONTH EMISSION_CALCULATOR +Subscribe BaseRateCalculator Extended Idle Exhaust 90 MONTH EMISSION_CALCULATOR +Subscribe BaseRateCalculator Auxiliary Power Exhaust 91 MONTH EMISSION_CALCULATOR +Subscribe BaseRateGenerator Running Exhaust 1 YEAR GENERATOR-2 +Subscribe BaseRateGenerator Start Exhaust 2 YEAR GENERATOR-2 +Subscribe BaseRateGenerator Extended Idle Exhaust 90 YEAR GENERATOR-2 +Subscribe BaseRateGenerator Auxiliary Power Exhaust 91 YEAR GENERATOR-2 +Subscribe BaseRateGenerator Brakewear 9 YEAR GENERATOR-2 +Subscribe BaseRateGenerator Tirewear 10 YEAR GENERATOR-2 +Chain CO2AERunningStartExtendedIdleCalculator BaseRateCalculator +Chain CO2AERunningStartExtendedIdleCalculator CrankcaseEmissionCalculatorNonPM +Chain CO2AERunningStartExtendedIdleCalculator HCSpeciationCalculator +Chain CrankcaseEmissionCalculatorNonPM BaseRateCalculator +Chain CrankcaseEmissionCalculatorNonPM HCSpeciationCalculator +Chain CrankcaseEmissionCalculatorNonPM AirToxicsCalculator +Chain CrankcaseEmissionCalculatorNonPM SO2Calculator +Chain CrankcaseEmissionCalculatorNonPM NOCalculator +Chain CrankcaseEmissionCalculatorNonPM NO2Calculator +Subscribe EvaporativeEmissionsOperatingModeDistributionGenerator Evap Permeation 11 MONTH GENERATOR +Subscribe EvaporativeEmissionsOperatingModeDistributionGenerator Evap Fuel Vapor Venting 12 MONTH GENERATOR +Subscribe EvaporativeEmissionsOperatingModeDistributionGenerator Evap Fuel Leaks 13 MONTH GENERATOR +Subscribe EvaporativePermeationCalculator Evap Permeation 11 MONTH EMISSION_CALCULATOR+1 +Subscribe FuelEffectsGenerator Running Exhaust 1 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Start Exhaust 2 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Brakewear 9 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Tirewear 10 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Evap Permeation 11 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Evap Fuel Vapor Venting 12 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Evap Fuel Leaks 13 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Crankcase Running Exhaust 15 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Crankcase Start Exhaust 16 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Crankcase Extended Idle Exhaust 17 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Refueling Displacement Vapor Loss 18 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Refueling Spillage Loss 19 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Extended Idle Exhaust 90 PROCESS GENERATOR-1 +Subscribe FuelEffectsGenerator Auxiliary Power Exhaust 91 PROCESS GENERATOR-1 +Chain HCSpeciationCalculator BaseRateCalculator +Chain HCSpeciationCalculator EvaporativePermeationCalculator +Chain HCSpeciationCalculator TankVaporVentingCalculator +Chain HCSpeciationCalculator LiquidLeakingCalculator +Chain HCSpeciationCalculator RefuelingLossCalculator +Subscribe LiquidLeakingCalculator Evap Fuel Leaks 13 MONTH EMISSION_CALCULATOR +Chain NO2Calculator BaseRateCalculator +Chain NOCalculator BaseRateCalculator +Chain PM10BrakeTireCalculator BaseRateCalculator +Chain PM10EmissionCalculator SulfatePMCalculator +Subscribe RatesOperatingModeDistributionGenerator Running Exhaust 1 YEAR GENERATOR +Subscribe RatesOperatingModeDistributionGenerator Extended Idle Exhaust 90 YEAR GENERATOR +Subscribe RatesOperatingModeDistributionGenerator Auxiliary Power Exhaust 91 YEAR GENERATOR +Chain RefuelingLossCalculator BaseRateCalculator +Chain SO2Calculator BaseRateCalculator +Subscribe SourceBinDistributionGenerator Running Exhaust 1 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Start Exhaust 2 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Extended Idle Exhaust 90 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Auxiliary Power Exhaust 91 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Evap Permeation 11 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Evap Fuel Vapor Venting 12 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Evap Fuel Leaks 13 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Brakewear 9 YEAR GENERATOR+1 +Subscribe SourceBinDistributionGenerator Tirewear 10 YEAR GENERATOR+1 +Subscribe StartOperatingModeDistributionGenerator Start Exhaust 2 PROCESS GENERATOR +Chain SulfatePMCalculator BaseRateCalculator +Chain TOGSpeciationCalculator CrankcaseEmissionCalculatorNonPM +Chain TOGSpeciationCalculator AirToxicsCalculator +Chain TOGSpeciationCalculator HCSpeciationCalculator +Subscribe TankFuelGenerator Evap Fuel Vapor Venting 12 YEAR GENERATOR +Subscribe TankFuelGenerator Evap Fuel Leaks 13 YEAR GENERATOR +Subscribe TankTemperatureGenerator Evap Permeation 11 ZONE GENERATOR +Subscribe TankTemperatureGenerator Evap Fuel Vapor Venting 12 ZONE GENERATOR +Subscribe TankTemperatureGenerator Evap Fuel Leaks 13 ZONE GENERATOR +Subscribe TankVaporVentingCalculator Evap Fuel Vapor Venting 12 MONTH EMISSION_CALCULATOR +Subscribe TotalActivityGenerator Running Exhaust 1 YEAR GENERATOR +Subscribe TotalActivityGenerator Start Exhaust 2 YEAR GENERATOR +Subscribe TotalActivityGenerator Extended Idle Exhaust 90 YEAR GENERATOR +Subscribe TotalActivityGenerator Auxiliary Power Exhaust 91 YEAR GENERATOR +Subscribe TotalActivityGenerator Evap Permeation 11 YEAR GENERATOR +Subscribe TotalActivityGenerator Evap Fuel Vapor Venting 12 YEAR GENERATOR +Subscribe TotalActivityGenerator Evap Fuel Leaks 13 YEAR GENERATOR +Subscribe TotalActivityGenerator Brakewear 9 YEAR GENERATOR +Subscribe TotalActivityGenerator Tirewear 10 YEAR GENERATOR diff --git a/License.txt b/License.txt new file mode 100644 index 0000000..fcfcfad --- /dev/null +++ b/License.txt @@ -0,0 +1,7 @@ +Copyright U.S. Environmental Protection Agency + +Licensed for use pursuant to the GNU General Public License (GPL) + +For information about the GPL see http://www.gnu.org/licenses/gpl.html + + diff --git a/MOVESAlgorithms.html b/MOVESAlgorithms.html new file mode 100644 index 0000000..9bb0df0 --- /dev/null +++ b/MOVESAlgorithms.html @@ -0,0 +1,11596 @@ + + + MOVES Algorithms + +MOVES Algorithms Reference
+

Contents

+
ModulesDatabase tables
+

Activity Calculator

+Activity Calculator is a CALCULATOR that executes at the YEAR level.
+
Activity Calculator uses the following tables: + +
Activity Calculator is expressed in these source code files: + +

Steps

+The Activity Calculator algorithm is as follows.
+
Step: sourceHours = sourceHours[sourceTypeID,hourDayID,monthID,yearID,ageID,linkID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Inputs: +hourday, link, regclasssourcetypefraction, sourcehours, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: extendedIdleHours = extendedIdleHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Inputs: +extendedidlehours, hourday, regclasssourcetypefraction, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: sho = sho[sourceTypeID,hourDayID,monthID,yearID,ageID,linkID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Inputs: +hourday, link, regclasssourcetypefraction, sho, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: shp = shp[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Inputs: +hourday, regclasssourcetypefraction, shp, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: sutFraction[sourceTypeID] = sum(roadTypeVMTFraction * shoAllocFactor)/sum(roadTypeVMTFraction)
+Conditions: +Non-Project domain
+Inputs: +roadtypedistribution, sourceusetype, zoneroadtype
+Outputs: +fractionbysourcetypetemp
+
Step: tempPopulation = sourceTypeAgePopulation[yearID,sourceTypeID,ageID] * sutFraction[sourceTypeID]
+Conditions: +Non-Project domain
+Inputs: +fractionbysourcetypetemp, link, runspecsourcetype, sourcetypeagepopulation
+Outputs: +sourcetypetemppopulation
+
Step: population = tempPopulation*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Conditions: +Non-Project domain
+Inputs: +regclasssourcetypefraction, sourcetypefuelfraction, sourcetypetemppopulation
+Outputs: +##activitytable##
+
Step: population on off-network link = vehiclePopulation*ageFraction[yearID,sourceTypeID,ageID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Conditions: +Project domain, Offnetwork link
+Inputs: +link, offnetworklink, regclasssourcetypefraction, sourcetypeagedistribution, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: population on roadways = linkVolume[linkID]*sourceTypeHourFraction[linkID,sourceTypeID]*ageFraction[yearID,sourceTypeID,ageID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Conditions: +Project domain, On roadways
+Inputs: +link, linksourcetypehour, regclasssourcetypefraction, sourcetypeagedistribution, sourcetypefuelfraction
+Outputs: +##activitytable##
+
Step: starts = starts[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]
+Inputs: +hourday, regclasssourcetypefraction, sourcetypefuelfraction, starts
+Outputs: +##activitytable##
+
Step: hotellingAux hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=201,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]. hotellingElectric hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=203,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]. hotellingOff hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=204,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID].
+Inputs: +hotellingactivitydistribution, hotellinghours, hourday, regclasssourcetypefraction, sourcetypefuelfraction
+Outputs: +##activitytable##
+

Air toxics Calculator

+Air toxics Calculator is a CHAINED CALCULATOR.
+
The Air toxics Calculator is responsible for:
+
The Air toxics Calculator input comes from:
+
The Air toxics Calculator output is used by:
+
Air toxics Calculator uses the following tables: + +
Air toxics Calculator is expressed in these source code files: + +

Steps

+The Air toxics Calculator algorithm is as follows.
+
Step: create AirToxicsMOVESWorkerOutputTemp table
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: minor HAP emissions[outputPollutantID] = VOC (87) * ATRatio
+Inputs: +minorhapratio, movesworkeroutput
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: PAH gas emissions[outputPollutantID] = VOC (87) * ATRatio
+Inputs: +movesworkeroutput, pahgasratio
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: PAH particle emissions[outputPollutantID] = VOC (87) * ATRatio
+Inputs: +movesworkeroutput, pahparticleratio
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: emissions[outputPollutantID] = emissions[inputPollutantID] * marketShare * ATRatio
+Inputs: +at1fuelsupply, atratio, atratiogas1chainedto, FuelSupply, movesworkeroutput, PollutantProcessAssoc
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: marketShareATRatio[outputPollutantID] = marketShare * ATRatio
+Inputs: +at2fuelsupply, atratiogas2, atratiogas2chainedto, FuelSupply, PollutantProcessAssoc
+Outputs: +at2fuelsupplyratiogas2
+
Step: emissions[outputPollutantID] = emissions[inputPollutantID] * marketShareATRatio[outputPollutantID]
+Inputs: +at2fuelsupplyratiogas2, movesworkeroutput
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: emissions[outputPollutantID] = emissions[inputPollutantID] * marketShare * ATRatio
+Inputs: +atnongasfuelsupply, atrationongas, atrationongaschainedto, FuelSupply, movesworkeroutput, PollutantProcessAssoc
+Outputs: +airtoxicsmovesworkeroutputtemp
+
Step: Add emisions in AirToxicsMOVESWorkerOutputTemp to MOVESWorkerOutput
+Inputs: +airtoxicsmovesworkeroutputtemp
+Outputs: +movesworkeroutput
+

Average Speed Operating Mode Distribution Generator

+Average Speed Operating Mode Distribution Generator is a GENERATOR that executes at the LINK level.
+
Average Speed Operating Mode Distribution Generator uses the following tables: + +
Average Speed Operating Mode Distribution Generator is expressed in these source code files: + +

Steps

+The Average Speed Operating Mode Distribution Generator algorithm is as follows.
+
Step: Remove all tirewear pollutant/processes on any link from the operating mode distribution.
+Conditions: +Project domain, Tirewear process
+Outputs: +RatesOpModeDistribution
+
Step: Assign operating mode based upon a single link's linkAvgSpeed, one operating mode entry per link with opModeFraction=1.0.
+Conditions: +Project domain, Tirewear process
+Inputs: +link, operatingMode
+Outputs: +RatesOpModeDistribution
+
Step: Create a single operating mode entry, with opModeFraction=1.0, for every combination of speed bin, source type, road type, hour day, and tirewear pollutant in the runspec. Each speed bin has an associated tirewear operating mode in its opModeIDTirewear column.
+Conditions: +Non-Project domain, Tirewear process
+Inputs: +avgSpeedBin
+Outputs: +RatesOpModeDistribution
+

Base Rate Generator

+Base Rate Generator is a GENERATOR that executes at the YEAR level.
+
Base Rate Generator uses the following tables: + +
Base Rate Generator is expressed in these source code files: + +

Steps

+The Base Rate Generator algorithm is as follows.
+
Step: normalizationFactor = sum(sourceBinActivityFraction).
+Conditions: +Rates creation
+
Step: normalizationFactor = 1.
+Conditions: +Inventory creation
+
Step: Weight age-based rates by sourcebin distribution. MeanBaseRate=sum(SourceBinActivityFraction * MeanBaseRate)/normalizationFactor. MeanBaseRateIM=sum(SourceBinActivityFraction * MeanBaseRateIM)/normalizationFactor. MeanBaseRateACAdj=sum(SourceBinActivityFraction * MeanBaseRate * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. MeanBaseRateIMACAdj=sum(SourceBinActivityFraction * MeanBaseRateIM * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. sumSBD=sum(SourceBinActivityFraction)/normalizationFactor. sumSBDRaw=sum(SourceBinActivityFraction).
+Inputs: +EmissionRateByAge, fullACAdjustment, PollutantProcessAssoc, PollutantProcessModelYear, RunspecModelYearAgeGroup, SourceBin, SourceBinDistribution, SourceTypeModelYear
+Outputs: +SBWeightedEmissionRateByAge
+
Step: Weight non-age-based rates by sourcebin distribution. MeanBaseRate=sum(SourceBinActivityFraction * MeanBaseRate)/normalizationFactor. MeanBaseRateIM=sum(SourceBinActivityFraction * MeanBaseRateIM)/normalizationFactor. MeanBaseRateACAdj=sum(SourceBinActivityFraction * MeanBaseRate * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. MeanBaseRateIMACAdj=sum(SourceBinActivityFraction * MeanBaseRateIM * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. sumSBD=sum(SourceBinActivityFraction)/normalizationFactor. sumSBDRaw=sum(SourceBinActivityFraction).
+Inputs: +EmissionRate, fullACAdjustment, PollutantProcessAssoc, PollutantProcessModelYear, RunspecModelYear, SourceBin, SourceBinDistribution, SourceTypeModelYear
+Outputs: +SBWeightedEmissionRate
+
Step: Make distance emission rates for metals. ratePerMile=meanBaseRate * (1.0 when units of g/mile, 1.609344 when g/km, 1.0 when TEQ/mile, 1.609344 when TEQ/km). ratePerSHO=meanBaseRate * avgBinSpeed * (1.0 when units of g/mile, 1.609344 when g/km, 1.0 when TEQ/mile, 1.609344 when TEQ/km).
+Inputs: +averageSpeedBin, metalEmissionRate
+Outputs: +distanceEmissionRate
+
Step: Make distance emission rates for dioxins. ratePerMile=meanBaseRate * (1.0 when units of g/mile, 1.609344 when g/km, 1.0 when TEQ/mile, 1.609344 when TEQ/km). ratePerSHO=meanBaseRate * avgBinSpeed * (1.0 when units of g/mile, 1.609344 when g/km, 1.0 when TEQ/mile, 1.609344 when TEQ/km).
+Inputs: +averageSpeedBin, dioxinEmissionRate
+Outputs: +distanceEmissionRate
+
Step: Weight distance-based rates by sourcebin distribution. Use fullACAdjustment for opModeID=300 (All Running). Use the SourceBinDistribution for Running Exhaust Total Gaseous Hydrocarbons (pol/proc 101). MeanBaseRate=sum(SourceBinActivityFraction * ratePerSHO)/normalizationFactor. MeanBaseRateIM=sum(SourceBinActivityFraction * ratePerSHO)/normalizationFactor. MeanBaseRateACAdj=sum(SourceBinActivityFraction * ratePerSHO * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. MeanBaseRateIMACAdj=sum(SourceBinActivityFraction * ratePerSHO * (coalesce(fullACAdjustment,1.0)-1.0))/normalizationFactor. sumSBD=sum(SourceBinActivityFraction)/normalizationFactor. sumSBDRaw=sum(SourceBinActivityFraction).
+Conditions: +Running Exhaust
+Inputs: +distanceEmissionRate, fullACAdjustment, modelYearGroup, PollutantProcessAssoc, PollutantProcessModelYear, SourceBin, SourceBinDistribution, SourceTypeModelYear
+Outputs: +SBWeightedDistanceRate
+
Step: Apply hotelling activity distribution to age-weighted rates. MeanBaseRate = MeanBaseRate * opModeFraction, for MeanBaseRate, MeanBaseRateIM, MeanBaseRateACAdj, and MeanBaseRateIMACAdj.
+Conditions: +Auxiliary Power Exhaust
+Inputs: +hotellingActivityDistribution
+Outputs: +SBWeightedEmissionRateByAge
+
Step: Apply hotelling activity distribution to non-age-weighted rates. MeanBaseRate = MeanBaseRate * opModeFraction, for MeanBaseRate, MeanBaseRateIM, MeanBaseRateACAdj, and MeanBaseRateIMACAdj.
+Conditions: +Auxiliary Power Exhaust
+Inputs: +hotellingActivityDistribution
+Outputs: +SBWeightedEmissionRate
+
Step: avgSpeedFractionClause=coalesce(avgSpeedFraction,0) when conditions are met, 1 otherwise.
+Conditions: +Non-Project domain; Inventory; Running exhaust, Brakewear, or Tirewear.
+
Step: sumSBDClause=sumSBD when conditions are met, 1 otherwise.
+Conditions: +Inventory or Starts or Extended Idling or Auxiliary Power.
+
Step: quantAdjustClause=sumSBDRaw when conditions are met, 1 otherwise.
+Conditions: +Rates for Starts, Extended Idle, or Auxiliary Power.
+
Step: Calculate BaseRateByAge without operating mode, retaining average speed bin. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Not Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRateByAge
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRateByAge without operating mode, aggregating average speed bins. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause).
+Conditions: +Not Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRateByAge
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate without operating mode, retaining average speed bin. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Not Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRate
+Outputs: +BaseRate
+
Step: Calculate BaseRate without operating mode, aggregating average speed bins. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause).
+Conditions: +Not Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRate
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate without operating mode, retaining average speed bin. opModeFraction=sum(avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Not Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedDistanceRate
+Outputs: +BaseRate
+
Step: Calculate BaseRate without operating mode, aggregating average speed bins. opModeFraction=sum(avgSpeedFractionClause * sumSBDClause). opModeFractionRate=sum(avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause).
+Conditions: +Not Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedDistanceRate
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRateByAge with operating mode, retaining average speed bin. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRateByAge
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRateByAge with operating mode, aggregating average speed bins. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause).
+Conditions: +Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRateByAge
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate with operating mode, retaining average speed bin. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRate
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate with operating mode, aggregating average speed bins. opModeFraction=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(opModeFraction * avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * opModeFraction * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * opModeFraction * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * opModeFraction * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * opModeFraction * avgSpeedFractionClause).
+Conditions: +Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedEmissionRate
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate with operating mode 300, retaining average speed bin. opModeFraction=sum(avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause * quantAdjustClause). emissionRate=case when avgBinSpeed>0 then sum(MeanBaseRate * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIM=case when avgBinSpeed>0 then sum(MeanBaseRateIM * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateACAdj * avgSpeedFractionClause) / avgBinSpeed else null end. emissionRateIMACAdj=case when avgBinSpeed>0 then sum(MeanBaseRateIMACAdj * avgSpeedFractionClause) / avgBinSpeed else null end.
+Conditions: +Start Exhaust, Retaining average speed bin (Non-Project domain; Rates; Running Exhaust, Brakewear, or Tirewear)
+Inputs: +RatesOpModeDistribution, SBWeightedDistanceRate
+Outputs: +BaseRateByAge
+
Step: Calculate BaseRate with operating mode 300, aggregating average speed bins. opModeFraction=sum(avgSpeedFractionClause * sumSBDClause * quantAdjustClause). opModeFractionRate=sum(avgSpeedFractionClause * sumSBDClause). MeanBaseRate=sum(MeanBaseRate * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause * quantAdjustClause). MeanBaseRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause * quantAdjustClause). emissionRate=sum(MeanBaseRate * avgSpeedFractionClause). emissionRateIM=sum(MeanBaseRateIM * avgSpeedFractionClause). emissionRateACAdj=sum(MeanBaseRateACAdj * avgSpeedFractionClause). emissionRateIMACAdj=sum(MeanBaseRateIMACAdj * avgSpeedFractionClause).
+Conditions: +Start Exhaust, Aggregate average speed bins (Project domain or Inventory or Rates for Non-(Running, Brakewear, or Tirewear))
+Inputs: +RatesOpModeDistribution, SBWeightedDistanceRate
+Outputs: +BaseRateByAge
+

BaseRateCalculator

+BaseRateCalculator is a CALCULATOR that executes at the MONTH level.
+
The BaseRateCalculator is responsible for:
+
The BaseRateCalculator output is used by:
+
BaseRateCalculator uses the following tables: + +
BaseRateCalculator is expressed in these source code files: + +

Steps

+The BaseRateCalculator algorithm is as follows.
+
Step: Create EmissionRateAdjustment by modelyear.
+Inputs: +emissionrateadjustment, modelyear, pollutantprocessassoc
+Outputs: +EmissionRateAdjustmentWorker
+
Step: ACFactor[hourID,sourceTypeID,modelYearID]=LEAST(GREATEST(ACActivityTermA+heatIndex*(ACActivityTermB+ACActivityTermC*heatIndex),0),1.0)*ACPenetrationFraction*functioningACFraction.
+Inputs: +monthgrouphour, monthofanyyear, SourceTypeAge, sourcetypemodelyear, ZoneMonthHour
+Outputs: +zoneACFactor
+
Step: activity=SHO
+Conditions: +Running Exhaust, Brakewear, Tirewear
+Inputs: +runspechourday, sho
+Outputs: +universalactivity
+
Step: activity=starts
+Conditions: +Starts
+Inputs: +runspechourday, starts
+Outputs: +universalactivity
+
Step: activity=extendedIdleHours
+Conditions: +Extended Idle Exhaust
+Inputs: +extendedidlehours, runspechourday
+Outputs: +universalactivity
+
Step: activity=hotellingHours
+Conditions: +Auxiliary Power Exhaust
+Inputs: +hotellinghours, runspechourday
+Outputs: +universalactivity
+
Step: hourFractionAdjust=1.0/opModeFraction[opModeID=201].
+Conditions: +Auxiliary Power Exhaust
+Inputs: +hotellingActivityDistribution, runspecmodelyearage
+Outputs: +apuEmissionRateFraction
+
Step: Disaggregate IMCoverage records, expanding model year ranges into individual model years. IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01.
+Inputs: +agecategory, imcoverage, imfactor, pollutantprocessassoc, pollutantprocessmappedmodelyear
+Outputs: +imcoveragemergedungrouped
+
Step: Add age-based rates
+Inputs: +agecategory, baseratebyage, runspecmodelyearage
+Outputs: +tempbaserateoutput
+
Step: Add rates that don't depend upon age
+Inputs: +baserate
+Outputs: +tempbaserateoutput
+
Step: APU hourly rates have already been scaled by the APU operating mode (201) fraction. This works well for inventory, but not so for rate by APU operating hour. To compensate, emission rates must be divided by the opModeFraction for opMode 201. hourFractionAdjust is 1/opModeFraction with a safeguard for a fraction of 0.
+Conditions: +APU process hourly rates
+Outputs: +apuemissionratefraction, tempbaserateoutput
+
Step: Obtain fuel market share.
+Inputs: +localfuelsupply, tempbaserateoutput
+Outputs: +baserateoutputwithfuel
+
Step: Calculate humidity adjustment factor K. K = 1.0 - ((greatest(21.0, least(specificHumidity, 124.0))) - 75.0) * humidityCorrectionCoeff
+Conditions: +Start Exhaust (2).
+Outputs: +baserateoutputwithfuel, fueltype, zonemonthhour
+
Step: Do Start Temperature adjustments by opModeID. PM uses multiplicative factors. Everything else uses additive factors. The additive part needs to be weighted by opModeFraction (stored in generalFraction). Being a rate, sourceBinActivityFraction is not required for the weighting since activity would have been weighted similarly. For polProcessIDs (11202,11802): rate = rate*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC. For all other polProcessIDs with startTempEquationType of 'LOG': rate = rate + generalFraction * (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC). For all other polProcessIDs with startTempEquationType of 'POLY': rate = rate + generalFraction * ((LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC))).
+Conditions: +Start Exhaust (2) process.
+Outputs: +baserateoutputwithfuel, pollutantprocessmappedmodelyear, starttempadjustment
+
Step: Apply the County's GPAFract to the general fuel adjustment. fuelEffectRatio=ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1))
+Outputs: +county, generalfuelratio
+
Step: Apply GeneralFuelRatio to BaseRateOutputWithFuel. rate = rate * fuelEffectRatio. fuelEffectRatio is the GPA-weighted GeneralFuelRatio.
+Outputs: +baserateoutputwithfuel, generalfuelratio
+
Step: Apply the County's GPAFract to the criteriaRatio fuel adjustment. criteria ratio = ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1))
+Conditions: +Running Exhaust (1) and Start Exhaust (2).
+Outputs: +county, criteriaratio
+
Step: Apply CriteriaRatio to BaseRateOutputWithFuel. rate = rate * criteria ratio[fuelTypeID,fuelFormulationID,polProcessID,sourceTypeID,modelYearID,ageID]
+Conditions: +Running Exhaust (1) and Start Exhaust (2).
+Outputs: +baserateoutputwithfuel, criteriaratio
+
Step: Calculate humidity adjustment factor K. K = 1.0 - ((greatest(21.0, least(specificHumidity, 124.0))) - 75.0) * humidityCorrectionCoeff
+Conditions: +Not Start Exhaust (2).
+Outputs: +baserateoutputwithfuel, fueltype, zonemonthhour
+
Step: Apply temperature adjustment. For processes (1,2) and pollutants (118,112): rate=rate*exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)). For all others: rate=rate*((1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB))*if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0)).
+Conditions: +Testing
+Inputs: +TemperatureAdjustment
+Outputs: +BaseRateOutputWithFuel, temperatureadjustment
+
Step: generalFraction = ACFactor[hourID,sourceTypeID,modelYearID].
+Conditions: +Not Start Exhaust (2).
+Inputs: +zoneACFactor
+Outputs: +BaseRateOutputWithFuel, zoneacfactor
+
Step: meanBaseRate = meanBaseRate + (meanBaseRateACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). meanBaseRateIM = meanBaseRateIM + (meanBaseRateIMACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). emissionRate = emissionRate + (emissionRateACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). emissionRateIM = emissionRateIM + (emissionRateIMACAdj * generalFraction[hourID,sourceTypeID,modelYearID]).
+Conditions: +Not Start Exhaust (2).
+Outputs: +baserateoutputwithfuel
+
Step: Apply I/M programs to BaseRateOutputWithFuel. meanBaseRate=meanBaseRateIM*IMAdjustFract + meanBaseRate*(1-IMAdjustFract). emissionRate=emissionRateIM*IMAdjustFract + emissionRate*(1-IMAdjustFract).
+Inputs: +IMCoverageMergedUngrouped
+Outputs: +BaseRateOutputWithFuel, imcoveragemergedungrouped
+
Step: Handle E85 THC that is created from E10's RVP instead of E85's RVP. Weight the fuel effect ratio by the county's GPA fraction alt criteria ratio=ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1))
+Conditions: +Running Exhaust (1) and Start Exhaust (2).
+Inputs: +County
+Outputs: +altCriteriaRatio, county
+
Step: Determine the scaling effect of E10-RVP-based fuel effects to E85-RVP-based fuel effects. alt criteria ratio = alt criteria ratio / criteria ratio.
+Conditions: +Running Exhaust (1) and Start Exhaust (2).
+Inputs: +criteriaRatio
+Outputs: +altCriteriaRatio, criteriaratio
+
Step: Make THC records from the E10 RVP by using the E85-based THC. The output pollutant is 10001. rate for pollutant 10001 = rate * alt criteria ratio.
+Conditions: +Running Exhaust (1) and Start Exhaust (2).
+Inputs: +altcriteriaratio
+Outputs: +baserateoutputwithfuel
+
Step: emissionRate=emissionRate*EmissionRateAdjustment, meanbaserate=meanbaserate*EmissionRateAdjustment
+Outputs: +baserateoutputwithfuel, emissionrateadjustmentworker
+
Step: Petroleum Energy (92) = Total Energy Consumption (91) * fuelSubtypePetroleumFraction.
+Inputs: +localfuelsupply
+Outputs: +baserateoutputwithfuel
+
Step: Fossil Energy (93) = Total Energy Consumption (91) * fuelSubtypeFossilFraction.
+Inputs: +localfuelsupply
+Outputs: +baserateoutputwithfuel
+
Step: Remove fuel formulation and opModeID from BaseRateOutputWithFuel, filling BaseRateOutput. Note: This top-level calculator executes at the Month level. That means there will be exactly one distinct value in each of these columns: processID, stateID, countyID, zoneID, linkID, roadtypeID, yearID, monthID. As such, these columns do not need to be indexed or included in a GROUP BY.
+Inputs: +baserateoutputwithfuel
+Outputs: +baserateoutput
+
Step: Ensure all activity slots have data. Use a default value of 0 when not provided by the input table.
+Inputs: +runspechourday, runspecmodelyearage, runspecsourcetype
+Outputs: +universalactivity
+
Step: When aggregating APU emission rates to remove source type, model year, fuel type, or regclass, the activity used to weight the rates must be adjusted. The input activity includes extended idling and instead must be restricted to just hours spent using a diesel APU. This is a model year-based effect.
+Outputs: +activitydetail, apuemissionratefraction
+
Step: When aggregating rates to remove source type, model year, fuel type, or regclass, calculate an activity distribution. smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] = activity[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] / activityTotal[aggregated]
+Inputs: +activitydetail, activitytotal
+Outputs: +activityweight
+
Step: When aggregating rates to remove source type, model year, fuel type, or regclass, weight emissions by the activity distribution. BaseRateOutput = BaseRateOutput * smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID]
+Outputs: +activityweight, baserateoutput
+
Step: When aggregating rates to remove source type, model year, fuel type, or regclass, weight emissions by the activity distribution. BaseRateOutput = BaseRateOutput * smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID]
+Outputs: +activityweight, baserateoutput
+
Step: When creating an inventory or certain rates, convert BaseRateOutput to an inventory. BaseRateOutput.meanBaseRate = BaseRateOutput.meanBaseRate * activity[processID,hourDayID,modelYearID,sourceTypeID(,month,year,location)]
+Outputs: +baserateoutput, universalactivity
+
Step: Populate MOVESWorkerOutput from BaseRateOutput.
+Inputs: +baserateoutput
+Outputs: +movesworkeroutput
+
Step: When chained calculators are used, data must be moved back from MOVESWorkerOutput. avgSpeedBinID must be recovered in this process.
+Conditions: +Chained calculators are present.
+
Step: Remove entries from BaseRateOutput. These will be reinserted later along with the results from chained calculators.
+Conditions: +Chained calculators are present.
+Outputs: +baserateoutput
+
Step: Populate BaseRateOutput from MOVESWorkerOutput.
+Conditions: +Non-Project domain rates chained calculators are present.
+Inputs: +movesworkeroutput
+Outputs: +baserateoutput
+
Step: Populate BaseRateOutput from MOVESWorkerOutput. avgSpeedBinID is always 0 in project mode.
+Conditions: +Project domain rates chained calculators are present.
+Inputs: +movesworkeroutput
+Outputs: +baserateoutput
+
Step: Populate BaseRateOutput from MOVESWorkerOutput. avgSpeedBinID is always 0 in inventory mode.
+Conditions: +Inventory chained calculators are present.
+Inputs: +movesworkeroutput
+Outputs: +baserateoutput
+

CO2AERunningStartExtendedIdleCalculator

+CO2AERunningStartExtendedIdleCalculator is a that executes at the level.
+
The CO2AERunningStartExtendedIdleCalculator is responsible for:
+
The CO2AERunningStartExtendedIdleCalculator input comes from:
+
CO2AERunningStartExtendedIdleCalculator uses the following tables: + +
CO2AERunningStartExtendedIdleCalculator is expressed in these source code files: + +

Steps

+The CO2AERunningStartExtendedIdleCalculator algorithm is as follows.
+
Step: sumCarbonContent[countyID,yearID,monthGroupID,pollutantID,fuelTypeID]=sum(marketShare * carbonContent). sumOxidationFraction[countyID,yearID,monthGroupID,pollutantID,fuelTypeID]=sum(marketShare * oxidationFraction).
+Inputs: +fuelformulation, fuelsubtype, fuelsupply, year
+Outputs: +carbonoxidationbyfueltype
+
Step: Atmosphereic CO2 = sum(Total Energy Consumption * sumCarbonContent * sumOxidationFraction * (44/12)).
+Inputs: +carbonoxidationbyfueltype, co2monthofanyyear, movesworkeroutput
+Outputs: +movesoutputco2temp1a
+
Step: Equivalent CO2 = sum(emissions[polutant=CO2 or Methane or N2O] * globalWarmingPotential).
+Inputs: +co2eqpollutant, movesworkeroutput
+Outputs: +movesoutputco2temp2
+

Crankcase Emission Calculator

+Crankcase Emission Calculator is a CHAINED CALCULATOR.
+
The Crankcase Emission Calculator is responsible for:
+
The Crankcase Emission Calculator input comes from:
+
The Crankcase Emission Calculator output is used by:
+
Crankcase Emission Calculator uses the following tables: + +
Crankcase Emission Calculator is expressed in these source code files: + +

Steps

+The Crankcase Emission Calculator algorithm is as follows.
+
Step: crankcase emissions[output pollutantID,processID,modelYearID,sourceTypeID,fuelTypeID] = emissions[input pollutantID,processID,modelYearID,sourceTypeID,fuelTypeID] * crankcaseRatio[output pollutantID,input polluantID,processID,modelYearID,sourceTypeID,fuelTypeID]
+Inputs: +##prefix##crankcaseemissionratio, ##prefix##crankcasepollutantprocessassoc, movesworkeroutput
+Outputs: +##prefix##crankcasemovesworkeroutputtemp
+

Distance Calculator

+Distance Calculator is a that executes at the YEAR level.
+
Distance Calculator uses the following tables: + +
Distance Calculator is expressed in these source code files: + +

Steps

+The Distance Calculator algorithm is as follows.
+
Step: fuelTypeActivityFraction[sourceTypeID,modelYearID,regClassID,fuelTypeID] = sum(sourceBinActivityFraction[processID=1,pollutantID=any,sourceBinID[fuelTypeID,engTechID,regClassID,modelYearGroupID,engSizeID]]).
+Inputs: +sourcebin, sourcebindistribution
+Outputs: +sbd2
+
Step: Add sourceTypeModelYearID to fuelTypeActivityFraction's dimensions.
+Inputs: +sbd2, sourcetypemodelyear
+Outputs: +distfracts
+
Step: Add modelYearID to SHO's dimensions.
+Inputs: +hourday, sho
+Outputs: +sho2
+
Step: distance = distance[sourceTypeID,yearID,monthID,hourDayID,ageID,linkID]*fuelTypeActivityFraction.
+Inputs: +distfracts, sho3
+Outputs: +movesworkeractivityoutput
+

Evaporative Emissions Operating Mode Distribution Generator

+Evaporative Emissions Operating Mode Distribution Generator is a GENERATOR that executes at the MONTH level.
+
Evaporative Emissions Operating Mode Distribution Generator uses the following tables: + +
Evaporative Emissions Operating Mode Distribution Generator populates the following tables: + +
Evaporative Emissions Operating Mode Distribution Generator is expressed in these source code files: + +

Steps

+The Evaporative Emissions Operating Mode Distribution Generator algorithm is as follows.
+
Step: Delete data for a link that was calculated for a previous year or month than the current context.
+Outputs: +OpModeDistribution
+
Step: fractionOfOperating=least(1,COALESCE(SUM(SHO),0)/SUM(sourceHours)).
+Inputs: +SHO, sourceHours
+Outputs: +FractionOfOperating
+
Step: opModeFraction=soakActivityFraction*(1-fractionOfOperating).
+Inputs: +FractionOfOperating, OpModePolProcAssoc, PollutantProcessAssoc, SoakActivityFraction
+Outputs: +OpModeDistributionTemp
+
Step: At this point, all non-operating modes (modes != 300) are in the database along with the relavant pollutant/processes. Add 100%-sum(non-operating) as operating (mode 300). opModeFraction[opModeID=300]=greatest(0,1-sum(opModeFraction)).
+Outputs: +OpModeDistributionTemp
+
Step: Copy OpModeDistributionTemp into OpModeDistribution.
+Inputs: +OpModeDistributionTemp
+Outputs: +OpModeDistribution
+

Evaporative Permeation Calculator

+Evaporative Permeation Calculator is a CALCULATOR that executes at the MONTH level.
+
The Evaporative Permeation Calculator is responsible for:
+
The Evaporative Permeation Calculator output is used by:
+
Evaporative Permeation Calculator uses the following tables: + +
Evaporative Permeation Calculator is expressed in these source code files: + +

Steps

+The Evaporative Permeation Calculator algorithm is as follows.
+
Step: Add ageGroupID to SourceBinDistribution.sourceBinActivityFraction using model year and the calendar year.
+Inputs: +agecategory, sourcebindistribution, sourcetypemodelyear
+Outputs: +sourcebindistributionbyage
+
Step: SBWeightedPermeationRate.meanBaseRate = sourceBinActivityFraction * EmissionRateByAge.meanBaseRate * regClassFraction
+Inputs: +emissionratebyage, regclasssourcetypefraction, sourcebin, sourcebindistributionbyage
+Outputs: +sbweightedpermeationrate
+
Step: temperatureAdjustByOpMode = tempAdjustTermA*EXP(tempAdjustTermB*averageTankTemperature)
+Inputs: +averagetanktemperature, modelyear, temperatureadjustment
+Outputs: +temperatureadjustbyopmode
+
Step: weightedTemperatureAdjust = sum(temperatureAdjustByOpMode * opModeFraction) across all operating modes.
+Inputs: +link, opmodedistribution, temperatureadjustbyopmode
+Outputs: +weightedtemperatureadjust
+
Step: weightedFuelAdjustment = sum(marketShare*(fuelAdjustment+GPAFract*(fuelAdjustmentGPA-fuelAdjustment))) across fuel formulations in the fuel supply.
+Inputs: +county, etohbin, fuelformulation, fuelsubtype, fuelsupply, hcpermeationcoeff, pollutantprocessmappedmodelyear, year
+Outputs: +weightedfueladjustment
+
Step: fuelAdjustedEmissionRate = SBWeightedPermeationRate.meanBaseRate * weightedFuelAdjustment
+Inputs: +sbweightedpermeationrate, weightedfueladjustment, year
+Outputs: +fueladjustedemissionrate
+
Step: fuelAdjustedEmissionQuant = fuelAdjustedEmissionRate * sourceHours
+Inputs: +fueladjustedemissionrate, link, sourcehours
+Outputs: +fueladjustedemissionquant
+
Step: emissionQuant = weightedTemperatureAdjust * fuelAdjustedEmissionQuant
+Inputs: +county, fueladjustedemissionquant, hourday, link, pollutantprocessassoc, pollutantprocessmodelyear, sourcetypemodelyeargroup, weightedtemperatureadjust
+Outputs: +movesworkeroutput
+

Fuel Effects Generator

+Fuel Effects Generator is a GENERATOR that executes at the PROCESS level.
+
Fuel Effects Generator uses the following tables: + +
Fuel Effects Generator populates the following tables: + +
Fuel Effects Generator is expressed in these source code files: + +

Steps

+The Fuel Effects Generator algorithm is as follows.
+
Step: Find fuel formulation and supply information that should be duplicated for use with high ethanol fuel effects.
+Conditions: +fuelSubtypeID 51 and 52, the high ethanol fuel subtypes.
+Inputs: +fuelFormulation, fuelSupply
+
Step: Every occurence of a high ethanol fuel within the fuel supply needs to reference a different fuel formulation. This allows region-based and month-based ethanol adjustments to be applied to a fuel formulation with assurance that it is only used in one region and month. For each fuel supply reference of a high ethanol fuel formulation, create a new fuel formulation with a new fuelFormulationID and containing all the properties of the original fuel formulation.
+Inputs: +fuelSupply
+Outputs: +fuelFormulation
+
Step: Provide a defualt altRVP value. altRVP=RVP.
+Outputs: +fuelFormulation
+
Step: Update fuel formulation properties of each high ethanol fuel: sulfurLevel, ETOHVolume, MTBEVolume, ETBEVolume, TAMEVolume, aromaticContent, olefinContent, benzeneContent, e200, e300, BioDieselEsterVolume, CetaneIndex, PAHContent, T50, and T90. altRVP = RVP. When there is a matching e10FuelProperties entry for the fuel region (e1) and it's property column is not null, use its value. Otherwise, where there is a matching e10FuelProperties entry for the nation (e0) and it's property column is not null, use its value. Otherwise, continue to use the value of the fuel formulation. In general, fuelFormulation.[property]=coalesce(e1.[property],e0.[property],fuelFormulation.[property]).
+Inputs: +e10FuelProperties as e0 where e0.fuelRegionID=0., e10FuelProperties as e1 where e1.fuelRegionID= fuelSupply.fuelRegionID., fuelSupply
+Outputs: +fuelFormulation
+
Step: volToWtPercentOxy = (ETOHVolume*0.3653 + MTBEVolume*0.1792 + ETBEVolume*0.1537 + TAMEVolume*0.1651) / (ETOHVolume+MTBEVolume+ETBEVolume+TAMEVolume) , when conditions are met, 0 otherwise.
+Conditions: +(ETOHVolume+MTBEVolume+ETBEVolume+TAMEVolume) > 0.
+Outputs: +fuelFormulation
+
Step: Read all expressions into memory.
+Inputs: +GeneralFuelRatioExpression
+Outputs: +list of expressions
+
Step: Copy and alter expressions that affect some E85 fuels (see conditions). The new expression affects pollutant 10001 known as "Pseudo-THC", only fuel subtypes 51 and 52, and only model years >= 2001. The new expression references fuelFormulation.altRVP anywhere the old expression referenced RVP. Fuel formulation's have altRVP derived from the e10FuelProperties table in a previous step.
+Conditions: +Ethanol fuel type (5), THC (1) pollutant, model years >= 2001, and Running or Starts.
+Outputs: +list of expressions
+
Step: Evaluate each expression against the list of fuel formulations that match its conditions for fuel type and fuel subtype. Each expression can use any column name in the fuelFormulation table. fuelEffectRatio = [expression]. fuelEffectRatioGPA = [expression].
+Inputs: +fuelFormulation, list of expressions
+Outputs: +GeneralFuelRatio
+
Step: Get the set of dioxin pollutant/processes known to MOVES.
+Inputs: +dioxinEmissionRate
+Outputs: +list of dioxin polProcessIDs
+
Step: Create a temporary table for dioxin emissions.
+Inputs: +dioxinEmissionRate
+Outputs: +tempDioxinEmissionRate
+
Step: Get dioxin emission rates that are given by expressions. dioxin meanBaseRate = fuelEffectRatio.
+Inputs: +generalFuelRatio, list of dioxin polProcessIDs
+Outputs: +tempDioxinEmissionRate
+
Step: Delete dioxin emission rates that are given by expressions, deleting all entries from dioxinEmissionRate that have a corresponding tempDioxinEmissionRate entry.
+Inputs: +tempDioxinEmissionRate
+Outputs: +dioxinEmissionRate
+
Step: Store dioxin emission rates given by expressions. dioxinEmissionRate.meanBaseRate = tempDioxinEmissionRate.meanBaseRate.
+Inputs: +tempDioxinEmissionRate
+Outputs: +dioxinEmissionRate
+
Step: Remove all dioxin polProcessIDs from generalFuelRatio.
+Inputs: +list of dioxin polProcessIDs
+Outputs: +generalFuelRatio
+
Step: Get the set of metal pollutant/processes known to MOVES.
+Inputs: +metalEmissionRate
+Outputs: +list of metal polProcessIDs
+
Step: Create a temporary table for metal emissions.
+Inputs: +metalEmissionRate
+Outputs: +tempMetalEmissionRate
+
Step: Get metal emission rates that are given by expressions. dioxin meanBaseRate = fuelEffectRatio.
+Inputs: +generalFuelRatio, list of metal polProcessIDs
+Outputs: +tempMetalEmissionRate
+
Step: Delete metal emission rates that are given by expressions, deleting all entries from metalEmissionRate that have a corresponding tempMetalEmissionRate entry.
+Inputs: +tempMetalEmissionRate
+Outputs: +metalEmissionRate
+
Step: Store metal emission rates given by expressions. metalEmissionRate.meanBaseRate = tempMetalEmissionRate.meanBaseRate.
+Inputs: +tempMetalEmissionRate
+Outputs: +metalEmissionRate
+
Step: Remove all metal polProcessIDs from generalFuelRatio.
+Inputs: +list of metal polProcessIDs
+Outputs: +generalFuelRatio
+
Step: Get the set of minor HAP pollutant/processes known to MOVES.
+Inputs: +minorHapRatio
+Outputs: +list of minor HAP polProcessIDs
+
Step: Create a temporary table for minor HAP rates.
+Inputs: +minorHapRatio
+Outputs: +tempMinorHapRatio
+
Step: Get minor HAP emission rates that are given by expressions. dioxin atRatio = fuelEffectRatio.
+Inputs: +generalFuelRatio, list of minor HAP polProcessIDs
+Outputs: +tempMinorHapRatio
+
Step: Delete minor HAP emission rates that are given by expressions, deleting all entries from minorHapRatio that have a corresponding tempMinorHapRatio entry.
+Inputs: +tempMinorHapRatio
+Outputs: +minorHapRatio
+
Step: Store minor HAP emission rates given by expressions. minorHapRatio.atRatio = tempMinorHapRatio.atRatio.
+Inputs: +tempMinorHapRatio
+Outputs: +minorHapRatio
+
Step: Remove all min HAP polProcessIDs from generalFuelRatio.
+Inputs: +list of minor HAP polProcessIDs
+Outputs: +generalFuelRatio
+
Step: Get the set of gaseous PAH pollutant/processes known to MOVES.
+Inputs: +pahGasRatio
+Outputs: +list of gaseous PAH polProcessIDs
+
Step: Create a temporary table for gaseous PAH rates.
+Inputs: +pahGasRatio
+Outputs: +tempPahGasRatio
+
Step: Get gaseous PAH emission rates that are given by expressions. dioxin atRatio = fuelEffectRatio.
+Inputs: +generalFuelRatio, list of gaseous PAH polProcessIDs
+Outputs: +tempPahGasRatio
+
Step: Delete gaseous PAH emission rates that are given by expressions, deleting all entries from pahGasRatio that have a corresponding tempPahGasRatio entry.
+Inputs: +tempPahGasRatio
+Outputs: +pahGasRatio
+
Step: Store gaseous PAH emission rates given by expressions. pahGasRatio.atRatio = tempPahGasRatio.atRatio.
+Inputs: +tempPahGasRatio
+Outputs: +pahGasRatio
+
Step: Remove all gaseous PAH polProcessIDs from generalFuelRatio.
+Inputs: +list of gaseous PAH polProcessIDs
+Outputs: +generalFuelRatio
+
Step: Get the set of particulate PAH pollutant/processes known to MOVES.
+Inputs: +pahParticleRatio
+Outputs: +list of particulate PAH polProcessIDs
+
Step: Create a temporary table for particulate PAH rates.
+Inputs: +pahParticleRatio
+Outputs: +tempPahParticleRatio
+
Step: Get particulate PAH emission rates that are given by expressions. dioxin atRatio = fuelEffectRatio.
+Inputs: +generalFuelRatio, list of particulate PAH polProcessIDs
+Outputs: +tempPahParticleRatio
+
Step: Delete particulate PAH emission rates that are given by expressions, deleting all entries from pahParticleRatio that have a corresponding tempPahParticleRatio entry.
+Inputs: +tempPahParticleRatio
+Outputs: +pahParticleRatio
+
Step: Store particulate PAH emission rates given by expressions. pahParticleRatio.atRatio = tempPahParticleRatio.atRatio.
+Inputs: +tempPahParticleRatio
+Outputs: +pahParticleRatio
+
Step: Remove all particulate PAH polProcessIDs from generalFuelRatio.
+Inputs: +list of particulate PAH polProcessIDs
+Outputs: +generalFuelRatio
+
Step: Copy atRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to atRatio. The atRatio table has fewer dimension than generalFuelRatio, so average the fuelEffectRatio. atRatio[fuelTypeID,fuelFormulationID,polProcessID,minModelYearID,maxModelYearID,ageID,monthGroupID]=average(fuelEffectRatio).
+Conditions: +Any of these polProcessIDs: 2001,2002,2011,2012,2013,2018,2019,2090,2101,2102,2111, 2112,2113,2118,2119,2201,2202,2211,2212,2213,2218,2219,2301,2302,2311,2312,2313,2318,2319,2390,2401,2402,2490, 2501,2502,2590,2601,2602,2690,2701,2702,2790
+Inputs: +generalFuelRatio
+Outputs: +atRatio, generalFuelRatio
+
Step: Lookup all Complex Model expression fragments from the database and combine them into large symbolic statements in memory. Variables within will be populated with actual values and the algebra simplified in later steps. The Complex Model uses a collection of fuel models, each referencing any fuel formulation properties and summing the subexpressions into a single number. Each fuel model is applied to a fuel formulation and to a base fuel formulation, creating intermediate varibles called target_sum and base_sum respectively. Each fuel model calculates a ratio as: ratio = (if(target_sum=0,0,exp(target_sum))/if(base_sum=0,0,exp(base_sum))) - 1. The Complex Model atDifferenceFraction = sum(fuel model ratio * fuel model weight) summed for each fuel model. Base emission rates, atBaseEmissions, are used to calculate the final atRatio which is the ratio of a pollutant's emissions to VOC emissions for a fuel formulation. atRatio = (atBaseEmissions of nonVOC *(1.0+atDifferenceFraction of nonVOC)) / (atBaseEmissions of VOC *(1.0+atDifferenceFraction of VOC)).
+Conditions: +Air Toxics pollutants
+Inputs: +complexModelParameterName, fuelModelName, fuelParameterName
+Outputs: +Complex Model expressions
+
Step: Restrict the Complex Model in the next steps to these polProcessIDs: 2001,2002,2090,2401,2402,2490,2501,2502,2590,2601,2602,2690,8701,8702,8790
+
Step: Lookup and apply Complex Model parameter values.
+Inputs: +complexModelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel properties of the base fuel and apply them to the Complex Model expressions.
+Inputs: +baseFuel, fuelFormulation
+Outputs: +Complex Model expressions
+
Step: Lookup mean fuel parameters and apply them to the Complex Model expressions.
+Inputs: +meanFuelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel model weight factors and apply them to the Complex Model expressions.
+Inputs: +fuelModelWtFactor
+Outputs: +Complex Model expressions
+
Step: Mathematically simplify the Complex Model expressions in memory. Perform all possible arithmatic in memory, reducing the size and complexity of the resulting expression text.
+Outputs: +Complex Model expressions
+
Step: atDifferenceFraction = Complex Model expressions
+Inputs: +Complex Model expressions, fuelFormulation
+Outputs: +tempAirToxicsA
+
Step: Provide default atDifference entries. atDifference = 0 when null.
+Outputs: +tempAirToxicsA
+
Step: relATEmissionsVOC = atBaseEmissions*(1.0+atDifferenceFraction)).
+Conditions: +VOC
+Inputs: +atBaseEmissions, tempAirToxicsA
+Outputs: +tempAirToxicsANonVOC
+
Step: relATEmissions = atBaseEmissions*(1.0+atDifferenceFraction)).
+Conditions: +Non-VOC pollutants
+Inputs: +atBaseEmissions, tempAirToxicsA
+Outputs: +tempAirToxicsANonVOC
+
Step: Ratio non-VOC to VOC relative air toxics complex model emissions. atRatio = relATEmissions / relATEmissionsVOC, where relATEmissionsVOC <> 0, 0 otherwise.
+Inputs: +tempAirToxicsANonVOC, tempAirToxicsAVOC
+Outputs: +ATRatio
+
Step: Lookup all Complex Model expression fragments from the database and combine them into large symbolic statements in memory. Variables within will be populated with actual values and the algebra simplified in later steps. The Complex Model uses a collection of fuel models, each referencing any fuel formulation properties and summing the subexpressions into a single number. Each fuel model is applied to a fuel formulation and to a base fuel formulation, creating intermediate varibles called target_sum and base_sum respectively. Each fuel model calculates a ratio as: ratio = (if(target_sum=0,0,exp(target_sum))/if(base_sum=0,0,exp(base_sum))) - 1. The Complex Model atDifferenceFraction = sum(fuel model ratio * fuel model weight) summed for each fuel model. CO ratioNoSulfur = 1 + atDifferenceFraction. CO criteriaRatio.ratio = Sulfur Model of CO ratioNoSulfer.
+Conditions: +CO pollutant
+Inputs: +complexModelParameterName, fuelModelName, fuelParameterName
+Outputs: +Complex Model expressions
+
Step: Restrict the Complex Model in the next steps to these polProcessIDs: 201,202
+
Step: Copy criteriaRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to criteriaRatio. ratio=fuelEffectRatio. ratioNoSulfer=1.
+Conditions: +Any of these polProcessIDs: 201,202
+Inputs: +generalFuelRatio
+Outputs: +criteriaRatio, generalFuelRatio
+
Step: Lookup and apply Complex Model parameter values.
+Inputs: +complexModelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel properties of the base fuel and apply them to the Complex Model expressions.
+Inputs: +baseFuel, fuelFormulation
+Outputs: +Complex Model expressions
+
Step: Lookup mean fuel parameters and apply them to the Complex Model expressions.
+Inputs: +meanFuelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel model weight factors and apply them to the Complex Model expressions.
+Inputs: +fuelModelWtFactor
+Outputs: +Complex Model expressions
+
Step: Mathematically simplify the Complex Model expressions in memory. Perform all possible arithmatic in memory, reducing the size and complexity of the resulting expression text.
+Outputs: +Complex Model expressions
+
Step: ratioNoSulfur = 1 + (Complex Model expressions).
+Inputs: +Complex Model expressions, fuelFormulation
+Outputs: +tempCOA
+
Step: Provide default ratioNoSulfur entries. ratioNoSulfur = 1 when null.
+Outputs: +tempCOA
+
Step: Run the sulfur model with tempCOA as the input and the criteriaRatio table as the output.
+Inputs: +tempCOA
+Outputs: +criteriaRatio
+
Step: Do Predictive Calculation steps for Total Gaseous Hydrocarbons. Use the "predictHC" calculation engine parameters, polProcessIDs 101 and 102, and ethanol alternate polProcessIDs 1000101 and 1000102.
+
Step: Do Predictive Calculation steps for NOx. Use the "predictNOx" calculation engine parameters, polProcessIDs 301 and 302, and no ethanol alternate polProcessIDs.
+
Step: Beginning of Predictive Calculations steps.
+Conditions: +Predictive Calculations
+
Step: Copy criteriaRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to criteriaRatio. ratio=fuelEffectRatio. ratioNoSulfer=1.
+Conditions: +Predictive Calculations, Any of the predictive calculation polProcessIDs
+Inputs: +generalFuelRatio
+Outputs: +criteriaRatio, generalFuelRatio
+
Step: Copy criteriaRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to criteriaRatio. ratio=fuelEffectRatio. ratioNoSulfer=1.
+Conditions: +Predictive Calculations, Any of the predictive calculation ethanol alternate polProcessIDs, model years >= 2001
+Inputs: +generalFuelRatio
+Outputs: +altCriteriaRatio, generalFuelRatio
+
Step: Lookup all Complex Model expression fragments from the database and combine them into large symbolic statements in memory. Variables within will be populated with actual values and the algebra simplified in later steps. The Complex Model uses a collection of fuel models, each referencing any fuel formulation properties and summing the subexpressions into a single number. Each fuel model is applied to a fuel formulation and to a base fuel formulation, creating intermediate varibles called target_sum and base_sum respectively. Each fuel model calculates a ratio as: ratio = (if(target_sum=0,0,exp(target_sum))/if(base_sum=0,0,exp(base_sum))) - 1. The Complex Model atDifferenceFraction = sum(fuel model ratio * fuel model weight) summed for each fuel model. atDifferenceFraction is not used by the Predictive Calculations. weightedTargetExp = sum(fuel model weight * exp(target_sum)) across all fuel models. weightedBaseExp = sum(fuel model weight * exp(base_sum)) across all fuel models. ratioNoSulfur = weightedTargetExp / weightedBaseExp. CriteriaRatio.ratio = Sulfur model of ratioNoSulfur.
+Conditions: +Predictive Calculations
+Inputs: +complexModelParameterName, fuelModelName, fuelParameterName
+Outputs: +Complex Model expressions
+
Step: Lookup and apply Complex Model parameter values.
+Conditions: +Predictive Calculations
+Inputs: +complexModelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel properties of the base fuel and apply them to the Complex Model expressions.
+Conditions: +Predictive Calculations
+Inputs: +baseFuel, fuelFormulation
+Outputs: +Complex Model expressions
+
Step: Lookup mean fuel parameters and apply them to the Complex Model expressions.
+Conditions: +Predictive Calculations
+Inputs: +meanFuelParameters
+Outputs: +Complex Model expressions
+
Step: Lookup fuel model weight factors and apply them to the Complex Model expressions.
+Conditions: +Predictive Calculations
+Inputs: +fuelModelWtFactor
+Outputs: +Complex Model expressions
+
Step: Mathematically simplify the Complex Model expressions in memory. Perform all possible arithmatic in memory, reducing the size and complexity of the resulting expression text.
+Conditions: +Predictive Calculations
+Outputs: +Complex Model expressions
+
Step: ratioNoSulfur = Complex Model expressions
+Conditions: +Predictive Calculations
+Inputs: +Complex Model expressions, fuelFormulation
+Outputs: +temporary table
+
Step: Provide default ratioNoSulfur entries. ratioNoSulfur = 1 when null.
+Conditions: +Predictive Calculations
+Outputs: +temporary table
+
Step: Run the sulfur model with the temporary table as the input and the criteriaRatio table as the output.
+Conditions: +Predictive Calculations
+Inputs: +temporary table
+Outputs: +criteriaRatio
+
Step: End of Predictive Calculations steps.
+Conditions: +Predictive Calculations
+
Step: Copy MTBE atRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to atRatio. The atRatio table has fewer dimension than generalFuelRatio, so average the fuelEffectRatio. atRatio[fuelTypeID,fuelFormulationID,polProcessID,minModelYearID,maxModelYearID,ageID,monthGroupID]=average(fuelEffectRatio).
+Conditions: +Any of these polProcessIDs: 2211,2212,2213,2218,2219
+Inputs: +generalFuelRatio
+Outputs: +atRatio, generalFuelRatio
+
Step: Copy Benzene atRatio entries given by expressions, deleting the entries from generalFuelRatio after the copy to atRatio. The atRatio table has fewer dimension than generalFuelRatio, so average the fuelEffectRatio. atRatio[fuelTypeID,fuelFormulationID,polProcessID,minModelYearID,maxModelYearID,ageID,monthGroupID]=average(fuelEffectRatio).
+Conditions: +Any of these polProcessIDs: 2011,2012,2013,2018,2019
+Inputs: +generalFuelRatio
+Outputs: +atRatio, generalFuelRatio
+
Step: To keep the table size small and knowing that LEFT JOINs will be used, remove any remaining generalFuelRatio entries that have the default ratio of 1.0.
+Outputs: +generalFuelRatio
+
Step: For international use, adjust model years for generalFuelRatio (but not generalFuelRatioExpression).
+Inputs: +modelYearMapping
+Outputs: +generalFuelRatio
+
Step: Remove overlaps in ATRatio and ATRatioNonGas, deleting any ATRatioNonGas entries that match ATRatio entries.
+Inputs: +ATRatio
+Outputs: +ATRatioNonGas
+

HC Speciation Calculator

+HC Speciation Calculator is a CHAINED CALCULATOR.
+
The HC Speciation Calculator is responsible for:
+
The HC Speciation Calculator input comes from:
+
The HC Speciation Calculator output is used by:
+
HC Speciation Calculator uses the following tables: + +
HC Speciation Calculator is expressed in these source code files: + +

Steps

+The HC Speciation Calculator algorithm is as follows.
+
Step: Assign etohThreshID to each fuel formulation.
+
Step: methane (5) = THC * CH4THCRatio
+Inputs: +methaneTHCRatio, PollutantProcessModelYear
+
Step: NMHC (79) = THC * (1-CH4THCRatio)
+Inputs: +methaneTHCRatio, PollutantProcessModelYear
+
Step: NMOG (80) = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)).
+Conditions: +When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, NMOG = 0., NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001).
+Inputs: +FuelFormulation, HCSpeciation, PollutantProcessModelYear
+
Step: VOC (87) = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)).
+Conditions: +When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, VOC = 0., NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001).
+Inputs: +FuelFormulation, HCSpeciation, PollutantProcessModelYear
+
Step: Calculate altNMHC (10079) from altTHC (10001) using E10's ratios.
+Conditions: +Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001.
+Inputs: +methaneTHCRatio, PollutantProcessModelYear
+
Step: Calculate NMOG from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol.
+Conditions: +Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001.
+Inputs: +FuelFormulation, HCSpeciation, PollutantProcessModelYear
+
Step: Calculate VOC from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol.
+Conditions: +Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001.
+Inputs: +FuelFormulation, HCSpeciation, PollutantProcessModelYear
+
Step: TOG (86) = NMOG (80) + Methane (5)
+

Link Operating Mode Distribution Generator

+Link Operating Mode Distribution Generator is a GENERATOR that executes at the LINK level.
+
Link Operating Mode Distribution Generator uses the following tables: + +
Link Operating Mode Distribution Generator populates the following tables: + +
Link Operating Mode Distribution Generator is expressed in these source code files: + +

Steps

+The Link Operating Mode Distribution Generator algorithm is as follows.
+
Step: Setup for Model Year Physics effects.
+
Step: Set rampFraction=0 for all road types as there is no automatic ramp contribution in Project mode.
+Conditions: +Project domain
+
Step: Lookup linkAvgSpeed for the current link.
+Inputs: +link
+
Step: For links with zero average speed, provide a default drive schedule of 30 seconds of idling. Use 0 grade because with 0 speed, brakes are likely applied rather than using the engine to counteract any grade. This removes the grade's effect on VSP.
+Conditions: +linkAvgSpeed <= 0
+Outputs: +driveScheduleSecondLink
+
Step: Lookup the road type and average grade for the current link.
+Conditions: +The current link has no drive schedule
+Inputs: +link
+
Step: Find the drive schedule with the greatest average speed that is still <= the link's average speed. Use this as the lower bracketing schedule. Such a drive schedule may not exist.
+Conditions: +The current link has no drive schedule
+Inputs: +driveSchedule, driveScheduleAssoc
+Outputs: +tempLinkBracket
+
Step: Find the drive schedule with the lowest average speed that is still > the link's average speed. Use this as the lower bracketing schedule if one was not previously found. Flag the bracket as out of bounds on the low side. Such a drive schedule may not exist.
+Conditions: +The current link has no drive schedule
+Inputs: +driveSchedule, driveScheduleAssoc
+Outputs: +tempLinkBracket
+
Step: Find the drive schedule with the lowest average speed that is still >= the link's average speed. Use this as the upper bracketing schedule. Such a drive schedule may not exist.
+Conditions: +The current link has no drive schedule
+Inputs: +driveSchedule, driveScheduleAssoc
+Outputs: +tempLinkBracketHigh
+
Step: Find the drive schedule with the highest average speed that is still < the link's average speed. Use this as the upper bracketing schedule if one was not previously found. Flag the bracket as out of bounds on the high side. Such a drive schedule may not exist.
+Conditions: +The current link has no drive schedule
+Inputs: +driveSchedule, driveScheduleAssoc
+Outputs: +tempLinkBracketHigh
+
Step: Note the upper bracket link and its out of bounds flag, if any.
+Conditions: +The current link has no drive schedule
+Inputs: +tempLinkBracketHigh
+Outputs: +tempLinkBracket
+
Step: Get the set of distinct driveScheduleID and sourceTypeID combinations that require operating mode calculations.
+Conditions: +The current link has no drive schedule
+Inputs: +tempLinkBracket
+Outputs: +list of bracketing drive schedules that need operating mode distributions
+
Step: Copy each second of each bracketing drive schedule into driveScheduleSecondLink. Use the link's average grade as each entry's grade. Use -driveScheduleID as the linkID field in driveScheduleSecondLink, denoting it as a bracketing link.
+Conditions: +The current link has no drive schedule
+Inputs: +driveScheduleSecond
+Outputs: +driveScheduleSecondLink
+
Step: Perform the steps to calculate a link's operating mode distribution from its drive schedule. Use -driveScheduleID as the linkID to calculate.
+Conditions: +The current link has a drive schedule not just an average speed.
+
Step: Create expanded operating mode tables for Model Year physics effects.
+Conditions: +The current link has a drive schedule not just an average speed.
+
Step: interpolationFactor = (link average speed - low bracket schedule average speed) / (high bracket schedule average speed - low bracket schedule average speed).
+Conditions: +The current link has a drive schedule not just an average speed.
+
Step: Interpolate the operating mode distribution from the low and high bracket's operating mode distribution. opModeFraction = opModeFraction[low]+(opModeFraction[high]-opModeFraction[low])*interpolationFactor.
+Conditions: +The current link has a drive schedule not just an average speed.
+Outputs: +opModeDistribution
+
Step: Remove bracketing schedules from driveScheduleSecondLink.
+Conditions: +The current link has a drive schedule not just an average speed.
+Inputs: +tempLinkBracket
+Outputs: +driveScheduleSecondLink
+
Step: Perform the steps to calculate a link's operating mode distribution from its drive schedule.
+Conditions: +The current link has a drive schedule not just an average speed.
+
Step: linkAvgSpeed=average(speed). linkAvgGrade=average(grade).
+Conditions: +Calculate a link's operating mode distribution from its drive schedule., A real linkID is provided (linkID > 0)
+Inputs: +driveScheduleSecondLink
+Outputs: +link
+
Step: Calculate accelerations in units of miles/(hour*second). Speeds are given in miles/hour. VSP is kW/tonne. There are 0.44704 (meter*hours)/(miles*second). at0 = coalesce( (speed[t]-speed[t-1])+(9.81/0.44704*sin(atan(grade[t]/100.0))), (speed[t+1]-speed[t])+(9.81/0.44704*sin(atan(grade[t]/100.0))), 0.0). at1 = coalesce((speed[t-1]-speed[t-2])+(9.81/0.44704*sin(atan(grade[t-1]/100.0))),0.0). at2 = coalesce((speed[t-2]-speed[t-3])+(9.81/0.44704*sin(atan(grade[t-2]/100.0))),0.0). VSP = (((speed[t]*0.44704)*(rollingTermA+(speed[t]*0.44704)*(rotatingTermB+dragTermC*(speed[t]*0.44704))) +sourceMass*(speed[t]*0.44704)*coalesce(speed[t]-speed[t-1],speed[t+1]-speed[t],0.0)*0.44704 +sourceMass*9.81*sin(atan(grade[t]/100.0))*(speed[t]*0.44704)))/fixedMassFactor.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Inputs: +driveScheduleSecondLink at time t, driveScheduleSecondLink at time t+1 seconds, driveScheduleSecondLink at time t-1 seconds, driveScheduleSecondLink at time t-2 seconds, driveScheduleSecondLink at time t-3 seconds
+Outputs: +tempDriveScheduleSecondLink
+
Step: Assign operating modes. Assign a stopped mode 501 when speed = 0, assign mode 501. This mode will be converted to 1 based on polProcessID later. Otherwise, assign the idle mode 1 when speed < 1. Otherwise, assign the braking mode 0 when At0 <= -2 or (At0 < -1 and At1 < -1 and At2 < -1). Otherwise, assign operating modes by their data-drive speed and VSP ranges.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Outputs: +tempDriveScheduleSecondLink
+
Step: secondTotal = Count of the number of entries in the drive schedule. This is the number of seconds of driving, even if there are gaps within the data.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Inputs: +tempDriveScheduleSecondLink
+Outputs: +tempDriveScheduleSecondLinkTotal
+
Step: secondCount = Count of the number of entries in the drive schedule for each operating mode.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Inputs: +tempDriveScheduleSecondLink
+Outputs: +tempDriveScheduleSecondLinkCount
+
Step: opModeFraction = secondCount/secondTotal.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Inputs: +tempDriveScheduleSecondLinkCount, tempDriveScheduleSecondLinkTotal
+Outputs: +tempDriveScheduleSecondLinkFraction
+
Step: Copy the operating mode distribution to all polProcessIDs that share it. For polProcessID 11609, retain opMode 501 and convert opMode 501 to opMode 1 for all other polProcessIDs.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Inputs: +opModePolProcAssoc, tempDriveScheduleSecondLinkFraction
+Outputs: +opModeDistributionTemp
+
Step: opModeFraction=sum(temporary opModeFraction). other polProcessIDs.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule.
+Outputs: +opModeDistribution, opModeDistributionTemp
+
Step: Remove data for bracketing links first, just in case they were left from a prior link's settings.
+Conditions: +Calculate a link's operating mode distribution from its drive schedule., A bracketing link is provided (linkID < 0)
+Outputs: +opModeDistribution
+
Step: Delete the previous road type's data from ratesOpModeDistribution.
+Conditions: +A previous road type has been used in the run.
+Outputs: +ratesOpModeDistribution
+
Step: Delete the current road type's data from ratesOpModeDistribution.
+Outputs: +ratesOpModeDistribution
+
Step: Lookup the current link's linkAvgSpeed.
+Inputs: +linkAvgSpeed
+
Step: Copy the current link's opModeDistribution entries to ratesOpModeDistribution, providing the current link's road type and average speed. Do not copy any generic polProcessID entries (polProcessID <= 0) as these are just to speedup internal opModeDistribution calculations.
+Inputs: +opModeDistribution
+Outputs: +ratesOpModeDistribution
+
Step: Update emission rate tables for Model Year Physics effects.
+

Liquid Leaking Calculator

+Liquid Leaking Calculator is a CALCULATOR that executes at the MONTH level.
+
The Liquid Leaking Calculator is responsible for:
+
The Liquid Leaking Calculator output is used by:
+
Liquid Leaking Calculator uses the following tables: + +
Liquid Leaking Calculator is expressed in these source code files: + +

Steps

+The Liquid Leaking Calculator algorithm is as follows.
+
Step: Filter emissionRateByAge to only operating modes 150, 151, and 300.
+Inputs: +runspecsourcefueltype, sourcebin, sourcebindistribution, sourcetypemodelyear
+Outputs: +emissionratebyage
+
Step: Filter OpModeDistribution to only operating modes 150, 151, and 300.
+Inputs: +runspecsourcetype
+Outputs: +opmodedistribution
+
Step: Disaggregate IMCoverage records, expanding model year ranges into individual model years. IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01.
+Inputs: +agecategory, imcoverage, imfactor, pollutantprocessassoc, pollutantprocessmappedmodelyear
+Outputs: +imcoveragemergedungrouped
+
Step: weightedMeanBaseRate = sourceBinActivityFraction * meanBaseRate. weightedMeanBaseRateIM = sourceBinActivityFraction * meanBaseRateIM.
+Inputs: +agecategory, emissionratebyage, fueltype, pollutantprocessmodelyear, runspechourday, runspecmonth, runspecsourcetype, sourcebin, sourcebindistribution, sourcetypemodelyear
+Outputs: +weightedmeanbaserate
+
Step: emissionQuant = weightedMeanBaseRate * sourceHours * opModeFraction. emissionQuantIM = weightedMeanBaseRateIM * sourceHours * opModeFraction.
+Inputs: +hourday, link, opmodedistribution, pollutantprocessassoc, sourcehours, weightedmeanbaserate
+Outputs: +movesworkeroutput
+
Step: Apply I/M programs. emissionQuant=emissionQuantIM*IMAdjustFract + emissionQuant*(1-IMAdjustFract).
+Outputs: +imcoveragemergedungrouped, movesworkeroutput
+

Meteorology Generator

+Meteorology Generator is a GENERATOR that executes at the PROCESS level.
+
Meteorology Generator uses the following tables: + +
Meteorology Generator populates the following tables: + +
Meteorology Generator is expressed in these source code files: + +

Steps

+The Meteorology Generator algorithm is as follows.
+
Step: Provide default barometric pressures for counties that don't list them. Counties with 'H' (High) altitude are assigned 24.69 inHg. Others are assigned 28.94.
+Conditions: +Counties with barometricPressure of null or <= 0.
+Outputs: +County
+
Step: Provide default altitude setting for counties that do not provide an altitude. Counties with barometricPressure >= 25.8403 inHg are 'L' (Low) altitude, all others are 'H' (High).
+Conditions: +Counties where altitude is null or altitude is neither H nor L.
+Outputs: +County
+
Step: heatIndex = temperature.
+Conditions: +temperature < 78F.
+Outputs: +ZoneMonthHour
+
Step: heatIndex = least( -42.379 + 2.04901523*temperature + 10.14333127*relHumidity + - 0.22475541*temperature*relHumidity + -0.00683783*temperature*temperature + -0.05481717 * relHumidity * relHumidity + 0.00122874*temperature*temperature*relHumidity + 0.00085282*temperature*relHumidity*relHumidity + -0.00000199*temperature*temperature*relHumidity*relHumidity, 120).
+Conditions: +temperature >= 78F.
+Outputs: +ZoneMonthHour
+
Step: TK = 0.56*(temperature-32)+273 AS TK. T0 = 374.27-0.56*(temperature-32).
+Inputs: +ZoneMonthHour
+Outputs: +TKT0
+
Step: PB = barometricPressure. PV = (relHumidity/100)*6527.557*POW(10,(-T0/TK)*((3.2437+0.00588*T0+0.000000011702*POW(T0,3))/(1+0.00219*T0))).
+Inputs: +County, TKT0, Zone
+Outputs: +PV
+
Step: specificHumidity=4347.8*PV/(PB-PV).
+Inputs: +PV
+Outputs: +ZoneMonthHour
+

NO Calculator

+NO Calculator is a CHAINED CALCULATOR.
+
The NO Calculator is responsible for:
+
The NO Calculator input comes from:
+
The NO Calculator output is used by:
+
NO Calculator uses the following tables: + +
NO Calculator is expressed in these source code files: + +

Steps

+The NO Calculator algorithm is as follows.
+
Step: To simplify future table joins, add dimensions to NOxRatio.
+Inputs: +nocopyofnono2ratio, nocopyofppa, nocopyofppmy, nocopyofsourceusetype
+Outputs: +nocalculation1
+
Step: emissionQuant = NOxRatio * Oxides of Nitrogen (3).
+Inputs: +movesworkeroutput, nocalculation1
+Outputs: +nomovesoutputtemp1
+

NO2 Calculator

+NO2 Calculator is a CHAINED CALCULATOR.
+
The NO2 Calculator is responsible for:
+
The NO2 Calculator input comes from:
+
The NO2 Calculator output is used by:
+
NO2 Calculator uses the following tables: + +
NO2 Calculator is expressed in these source code files: + +

Steps

+The NO2 Calculator algorithm is as follows.
+
Step: To simplify future table joins, add dimensions to NOxRatio.
+Inputs: +no2copyofnono2ratio, no2copyofppa, no2copyofppmy, no2copyofsourceusetype
+Outputs: +no2calculation1
+
Step: emissionQuant = NOxRatio * Oxides of Nitrogen (3).
+Inputs: +movesworkeroutput, no2calculation1
+Outputs: +no2movesoutputtemp1
+

Nonroad Air toxics Calculator

+Nonroad Air toxics Calculator is a CHAINED CALCULATOR.
+
The Nonroad Air toxics Calculator is responsible for:
+
The Nonroad Air toxics Calculator input comes from:
+
Nonroad Air toxics Calculator uses the following tables: + +
Nonroad Air toxics Calculator is expressed in these source code files: + +

Steps

+The Nonroad Air toxics Calculator algorithm is as follows.
+
Step: output[pollutantID] = VOC (87) * ATRatio
+Inputs: +nrATRatio, nrHPCategory
+
Step: output[pollutantID] = VOC (87) * ATRatio
+Inputs: +nrHPCategory, nrPAHGasRatio
+
Step: output[pollutantID] = PM2.5 (110) * ATRatio
+Inputs: +nrHPCategory, nrPAHParticleRatio
+
Step: gallons[gasoline] = grams gasoline fuel / (453.592*6.17)
+
Step: gallons[diesel(all)] = grams diesel fuel / (453.592*7.1)
+
Step: gallons[CNG] = grams gasoline / (453.592*0.0061)
+
Step: gallons[LPG] = grams gasoline / (453.592*4.507)
+
Step: dioxin output[pollutantID] = gallons[fuel type] * meanBaseRate
+Inputs: +nrDioxinEmissionRate, nrHPCategory
+
Step: metal output[pollutantID] = gallons[fuel type] * meanBaseRate
+Inputs: +nrHPCategory, nrMetalEmissionRate
+
Step: NonHAPTOG(88)(partial) = NMOG (80)
+
Step: NonHAPTOG(88)(partial) = -emissions[integratedSpeciesPollutantID]
+Inputs: +nrIntegratedSpecies
+

Nonroad Calculator

+Nonroad Calculator is a CALCULATOR that executes at the DAY level.
+
The Nonroad Calculator is responsible for:
+
The Nonroad Calculator output is used by:
+
Nonroad Calculator is expressed in these source code files: + +

Nonroad HC Speciation Calculator

+Nonroad HC Speciation Calculator is a CHAINED CALCULATOR.
+
The Nonroad HC Speciation Calculator is responsible for:
+
The Nonroad HC Speciation Calculator input comes from:
+
The Nonroad HC Speciation Calculator output is used by:
+
Nonroad HC Speciation Calculator uses the following tables: + +
Nonroad HC Speciation Calculator is expressed in these source code files: + +

Steps

+The Nonroad HC Speciation Calculator algorithm is as follows.
+
Step: methane (5) = THC * CH4THCRatio
+Inputs: +nrMethaneTHCRatio
+
Step: NMHC (79) = THC * (1-CH4THCRatio)
+Inputs: +nrMethaneTHCRatio
+
Step: NMOG (80) = NMHC*speciationConstant.
+Inputs: +nrHCSpeciation, nrHPCategory
+
Step: VOC (87) = NMHC*speciationConstant.
+Inputs: +nrHCSpeciation, nrHPCategory
+
Step: TOG (86) = NMOG (80) + Methane (5)
+

PM10 Brake Tire Calculator

+PM10 Brake Tire Calculator is a CHAINED CALCULATOR.
+
The PM10 Brake Tire Calculator is responsible for:
+
The PM10 Brake Tire Calculator input comes from:
+
PM10 Brake Tire Calculator uses the following tables: + +
PM10 Brake Tire Calculator is expressed in these source code files: + +

Steps

+The PM10 Brake Tire Calculator algorithm is as follows.
+
Step: PM10 Brakewear (106) = PM2.5 Brakewear (116) * PM10PM25Ratio. PM10 Tirewear (107) = PM2.5 Tirewear (117) * PM10PM25Ratio.
+Inputs: +movesworkeroutput, pm10emissionratio, pm10pollutantprocessassoc
+Outputs: +pm10braketiremovesworkeroutputtemp
+

PM10 Emission Calculator

+PM10 Emission Calculator is a CHAINED CALCULATOR.
+
The PM10 Emission Calculator is responsible for:
+
The PM10 Emission Calculator input comes from:
+
PM10 Emission Calculator uses the following tables: + +
PM10 Emission Calculator is expressed in these source code files: + +

Steps

+The PM10 Emission Calculator algorithm is as follows.
+
Step: PM10 Total = PM2.5 Total * PM10PM25Ratio.
+Inputs: +movesworkeroutput, pm10emissionratio, pm10pollutantprocessassoc
+Outputs: +pm10movesworkeroutputtemp
+

Rates Operating Mode Distribution Generator

+Rates Operating Mode Distribution Generator is a GENERATOR that executes at the YEAR level.
+
Rates Operating Mode Distribution Generator uses the following tables: + +
Rates Operating Mode Distribution Generator populates the following tables: + +
Rates Operating Mode Distribution Generator is expressed in these source code files: + +

Steps

+The Rates Operating Mode Distribution Generator algorithm is as follows.
+
Step: Setup for Model Year Physics effects.
+
Step: Remove DriveScheduleAssoc records with isRamp='Y' but associated with RoadTypes with rampFraction <= 0 since these are nonsensical conditions.
+Conditions: +Non-Project domain
+Inputs: +roadType
+Outputs: +driveScheduleAssoc
+
Step: Speed bins with values below and above the lowest and highest drive schedule values are bound to those values. scheduleBoundLo = min(averageSpeed). scheduleBoundHi = max(averageSpeed).
+Inputs: +DriveSchedule, DriveScheduleAssoc, RunSpecRoadType, RunSpecSourceType
+Outputs: +DriveScheduleBounds
+
Step: loScheduleSpeed = max(averageSpeed). isOutOfBounds = 0.
+Conditions: +Non-ramps, Drive schedules with averageSpeed <= avgBinSpeed
+Inputs: +AvgSpeedBin, DriveSchedule, DriveScheduleAssoc, RunSpecRoadType, RunSpecSourceType
+Outputs: +BracketScheduleLo2
+
Step: loScheduleSpeed = scheduleBoundLo. isOutOfBounds = 1.
+Conditions: +Non-ramps, avgBinSpeed < scheduleBoundLo.
+Inputs: +AvgSpeedBin, DriveSchedule, DriveScheduleAssoc, DriveScheduleBounds, RunSpecRoadType, RunSpecSourceType
+Outputs: +BracketScheduleLo2
+
Step: Find the drive cycle with an averageSpeed = loScheduleSpeed.
+Inputs: +BracketScheduleLo2, DriveSchedule, DriveScheduleAssoc
+Outputs: +BracketScheduleLo
+
Step: hiScheduleSpeed = min(averageSpeed). isOutOfBounds = 0.
+Conditions: +Non-ramps, Drive schedules with averageSpeed > avgBinSpeed
+Inputs: +AvgSpeedBin, DriveSchedule, DriveScheduleAssoc, RunSpecRoadType, RunSpecSourceType
+Outputs: +BracketScheduleHi2
+
Step: hiScheduleSpeed = scheduleBoundHi. isOutOfBounds = 1.
+Conditions: +Non-ramps, avgBinSpeed > scheduleBoundHi.
+Inputs: +AvgSpeedBin, DriveSchedule, DriveScheduleAssoc, DriveScheduleBounds, RunSpecRoadType, RunSpecSourceType
+Outputs: +BracketScheduleHi2
+
Step: Find the drive cycle with an averageSpeed = hiScheduleSpeed.
+Inputs: +BracketScheduleHi2, DriveSchedule, DriveScheduleAssoc
+Outputs: +BracketScheduleHi
+
Step: loScheduleFraction=(hiScheduleSpeed - avgBinSpeed) / (hiScheduleSpeed - loScheduleSpeed).
+Conditions: +hiScheduleSpeed <> loScheduleSpeed
+Inputs: +AvgSpeedBin, BracketScheduleHi, BracketScheduleLo
+Outputs: +LoScheduleFraction
+
Step: loScheduleFraction=1.
+Conditions: +hiScheduleSpeed = loScheduleSpeed
+Inputs: +BracketScheduleHi, BracketScheduleLo
+Outputs: +LoScheduleFraction
+
Step: hiScheduleFraction = 1-loScheduleFraction.
+Inputs: +BracketScheduleHi, loScheduleFraction
+Outputs: +HiScheduleFraction
+
Step: Verify each road and source type combination has at least one associated non-ramp drive schedule. Issue an error message for any combination that does not have one.
+Inputs: +DriveScheduleAssoc, RunSpecRoadType
+
Step: rampFractionTerm = 1 - rampFraction, when conditions are met, 1 otherwise.
+Conditions: +Combining ramps with real road types
+Inputs: +RoadType
+
Step: driveScheduleFraction=sum(loScheduleFraction).
+Inputs: +BracketScheduleLo, LoScheduleFraction
+Outputs: +DriveScheduleFractionLo
+
Step: driveScheduleFraction=sum(hiScheduleFraction).
+Inputs: +BracketScheduleHi, HiScheduleFraction
+Outputs: +DriveScheduleFractionHi
+
Step: driveScheduleFraction = rampFractionTerm * (DriveScheduleFractionLo.driveScheduleFraction + DriveScheduleFractionHi.driveScheduleFraction).
+Inputs: +BracketScheduleHi, DriveScheduleAssoc, DriveScheduleFractionHi, DriveScheduleFractionLo, RoadType
+Outputs: +DriveScheduleFraction
+
Step: Get unique combinations of sourceTypeID and driveScheduleID. Only these combinations require VSP and operating mode computations.
+Conditions: +driveScheduleFraction <> 0
+Inputs: +DriveScheduleFraction
+Outputs: +SourceTypeDriveSchedule
+
Step: Find the first recorded second in each drive schedule. second=min(second).
+Inputs: +DriveScheduleSecond
+Outputs: +DriveScheduleFirstSecond
+
Step: Calculate speed and acceleration during the first second. The acceleration of the 1st second = the acceleration of the 2nd second. speed[t] = speed[t] * 0.44704. acceleration[t] = (speed[t+1]-speed[t]) * 0.44704.
+Inputs: +DriveScheduleFirstSecond, DriveScheduleSecond at time t, DriveScheduleSecond at time t+1
+Outputs: +DriveScheduleSecond2
+
Step: Calculate speed and acceleration during the remaining seconds. speed[t] = speed[t] * 0.44704. acceleration[t] = (speed[t]-speed[t-1]) * 0.44704.
+Inputs: +DriveScheduleSecond at time t, DriveScheduleSecond at time t-1
+Outputs: +DriveScheduleSecond2
+
Step: Calculate VSP for each second of each drive schedule, using sourceTypeID-specific terms. VSP=(rollingTermA * speed + sut.rotatingTermB * POW(dss2.speed,2) + dragTermC * POW(speed,3) + sourceMass * speed * acceleration) / fixedMassFactor.
+Inputs: +DriveScheduleSecond2, SourceTypeDriveSchedule, sourceUseTypePhysicsMapping
+Outputs: +VSP
+
Step: Get the acceleration of every second beyond the first. acceleration[t] = speed[t] - speed[t-1].
+Inputs: +DriveScheduleSecond for time t, DriveScheduleSecond for time t-1
+Outputs: +DriveScheduleSecond3
+
Step: Get the acceleration of the first second. Use INSERT IGNORE so only the 1st second entries will be altered. All other seconds already exist and will be ignored. acceleration[t] = speed[t+1] - speed[t].
+Inputs: +DriveScheduleSecond for time t, DriveScheduleSecond for time t+1
+Outputs: +DriveScheduleSecond3
+
Step: Get the distinct polProcessIDs that require operating modes.
+Inputs: +OpModePolProcAssoc
+Outputs: +OMDGPollutantProcess
+
Step: Remove anything from OMDGPollutantProcess that has a representing pollutant/process. Only its representing item should be calculated.
+Inputs: +OMDGPolProcessRepresented
+Outputs: +OMDGPollutantProcess
+
Step: Get the set of polProcessID and opModeID combinations that must be calculated.
+Inputs: +OMDGPollutantProcess, OpModePolProcAssoc
+Outputs: +OpModePolProcAssocTrimmed
+
Step: Associate each second of each drive schedule with a polProcessID. Obtain the speed, acceleration, and VSP at each point. This facilitates easy opModeID assignment.
+Inputs: +DriveScheduleSecond3, OMDGPollutantProcess, VSP
+Outputs: +OpModeIDBySecond
+
Step: Find braking events, copying information from time t that meet braking conditions and setting opModeID=0.
+Conditions: +acceleration[t] <= -2 or (acceleration[t] < -1 and acceleration[t-1] < -1 and acceleration[t-2] < -1)
+Inputs: +OpModeIDBySecond for time t, OpModeIDBySecond for time t-1, OpModeIDBySecond for time t-2
+Outputs: +OpModeIDBySecond_Temp
+
Step: Copy braking events back into OpModeIDBySecond.
+Inputs: +OpModeIDBySecond_Temp
+Outputs: +OpModeIDBySecond
+
Step: opModeID=0, braking.
+Conditions: +Any second in which the acceleration <= -2.
+Outputs: +OpModeIDBySecond
+
Step: Assign an opModeID to each second based upon operating mode VSP and speed information.
+Conditions: +1 < opModeID < 100, opModeID not previously assigned
+Inputs: +OperatingMode, OpModePolProcAssocTrimmed
+Outputs: +OpModeIDBySecond
+
Step: Assign the Idle operating mode to speed=0. OpModeID=IF(speed=0 and polProcessID=11609,501,if(speed<1.0,1,opModeID)).
+Outputs: +OpModeIDBySecond
+
Step: secondSum=count(seconds in each drive schedule).
+Inputs: +OpModeIDBySecond
+Outputs: +OpModeFractionBySchedule2
+
Step: modeFraction = count(seconds in each opModeID)/secondSum.
+Inputs: +OpModeFractionBySchedule2, OpModeIDBySecond
+Outputs: +OpModeFractionBySchedule
+
Step: Add ramp data. opModeFraction = opModeFraction * rampFraction.
+Conditions: +Not separating ramps, Not polProcessID 11710, 0 < rampFraction < 1
+Inputs: +OpModePolProcAssocTrimmed, roadOpModeDistribution, roadType
+Outputs: +OpModeFraction2a
+
Step: Add data from roads that are 100% ramps. opModeFraction = opModeFraction * rampFraction.
+Conditions: +Separating ramps, Not polProcessID 11710, rampFraction = 1
+Inputs: +OpModePolProcAssocTrimmed, roadOpModeDistribution, roadType
+Outputs: +OpModeFraction2a
+
Step: Add non-ramp-based information. opModeFraction = sum(modeFraction * driveScheduleFraction).
+Conditions: +Separating ramps, Not polProcessID 11710
+Inputs: +DriveScheduleFraction, OpModeFractionBySchedule, OpModePolProcAssocTrimmed
+Outputs: +OpModeFraction2a
+
Step: Aggregate ramp and non-ramp data. opModeFraction = sum(opModeFraction).
+Inputs: +OpModeFraction2a
+Outputs: +OpModeFraction2
+
Step: Add all running operating mode 300. opModeFraction[opModeID=300]=1.
+Inputs: +OpModeFraction2a
+Outputs: +OpModeFraction2
+
Step: opModeFraction=1.
+Conditions: +Extended Idle, sourceTypeID=62 only
+Inputs: +opModePolProcessAssoc, pollutantProcessAssoc, runSpecHourDay, sourceTypePolProcess
+Outputs: +RatesOpModeDistribution
+
Step: Add data for all extended idling (opModeID 200). opModeFraction[opModeID=200]=1.
+Conditions: +Extended Idle, sourceTypeID=62 only, opModeFraction[opModeID=200] not already specified
+Inputs: +opModePolProcessAssoc, pollutantProcessAssoc, runSpecHourDay, sourceTypePolProcess
+Outputs: +RatesOpModeDistribution
+
Step: opModeFraction=1.
+Conditions: +Auxiliary Power Exhaust, sourceTypeID=62 only, Not opModeID 200 (Extended Idle)
+Inputs: +opModePolProcessAssoc, pollutantProcessAssoc, runSpecHourDay, sourceTypePolProcess
+Outputs: +RatesOpModeDistribution
+
Step: Add data for all hotelling except extended idling (opModeID 200). opModeFraction=1.
+Conditions: +Auxiliary Power Exhaust, sourceTypeID=62 only, Not opModeID 200 (Extended Idle)
+Inputs: +hotellingActivityDistribution, pollutantProcessAssoc, runSpecHourDay, runSpecSourceType
+Outputs: +RatesOpModeDistribution
+
Step: Find [sourceTypeID, roadTypeID, avgSpeedBinID, polProcessID] combinations that already exist within RatesOpModeDistribution.
+Conditions: +Non-Project domain Running Exhaust
+Inputs: +PollutantProcessAssoc, RatesOpModeDistribution
+Outputs: +OMDGOMDKeys
+
Step: Add to RatesOpModeDistribution those entries that don't already have records. Add records that do not appear within OMDGOMDKeys.
+Conditions: +Non-Project domain Running Exhaust
+Inputs: +OMDGOMDKeys, OpModeFraction2, runSpecHourDay
+Outputs: +RatesOpModeDistribution
+
Step: Clear all entries from OMDGOMDKeys.
+Conditions: +Non-Project domain Running Exhaust
+Outputs: +OMDGOMDKeys
+
Step: Find [sourceTypeID, roadTypeID, avgSpeedBinID, polProcessID] combinations that already exist within RatesOpModeDistribution.
+Conditions: +Non-Project domain Running Exhaust
+Inputs: +PollutantProcessAssoc, RatesOpModeDistribution
+Outputs: +OMDGOMDKeys
+
Step: Copy representing entries to those being represented, but only if those being represented are not already present. Add to RatesOpModeDistribution those entries that don't already have records. Add records that do not appear within OMDGOMDKeys.
+Conditions: +Non-Project domain Running Exhaust
+Inputs: +OMDGOMDKeys, OpModeFraction2, runSpecHourDay
+Outputs: +RatesOpModeDistribution
+
Step: Update emission rate tables for Model Year Physics effects. In Project domain, only Extended Idle and APU are used in this generator. Since neither is affected by aerodynamics, only do this for Non-Project domain.
+Conditions: +Non-Project domain
+

Refueling Loss Calculator

+Refueling Loss Calculator is a CHAINED CALCULATOR.
+
The Refueling Loss Calculator is responsible for:
+
The Refueling Loss Calculator input comes from:
+
The Refueling Loss Calculator output is used by:
+
Refueling Loss Calculator uses the following tables: + +
Refueling Loss Calculator is expressed in these source code files: + +

Steps

+The Refueling Loss Calculator algorithm is as follows.
+
Step: energyContent = sum(marketShare * energyContent) across all the fuel supply.
+Inputs: +fuelformulation, fuelsubtype, fuelsupply, fueltype, monthofanyyear, runspecmonth, year
+Outputs: +refuelingfueltype
+
Step: Determine the refueling temperatures
+Outputs: +refuelingtemp
+
Step: refuelingTemperature = temperature subject to lower bound of vaporLowLimit and upper bound of vaporHighLimit.
+Inputs: +refuelingfactors, refuelingzonemonthhour
+Outputs: +refuelingtemp
+
Step: tankTemperatureDif = ((vaporTermE*refuelingTemperature) + vaporTermF) subject to lower bound of 0 and upper bound of tankDiffLimit.
+Outputs: +refuelingfactors, refuelingtemp
+
Step: Determine the unadjusted refueling displacement vapor loss rate
+Outputs: +refuelingaveragervp
+
Step: averageRVP = sum(RVP * marketShare) across fuel formulations.
+Inputs: +refuelingfuelformulation, refuelingfuelsubtype, refuelingfuelsupply, refuelingmonthofanyyear
+Outputs: +refuelingaveragervp
+
Step: Provide default averageRVP of 0.
+Inputs: +refuelingfactors, refuelingmonthofanyyear
+Outputs: +refuelingaveragervp
+
Step: displacedVaporRate = exp(vaporTermA + vaporTermB * tankTemperatureDif + vaporTermC * refuelingTemperature + vaporTermD * averageRVP)
+Outputs: +refuelingaveragervp, refuelingfactors, refuelingtemp
+
Step: Limit displacedVaporRate to no less than minimumRefuelingVaporLoss.
+Outputs: +refuelingfactors, refuelingtemp
+
Step: Technology and Program adjustment of the refueling displacement vapor loss rate. adjustedVaporRate = (1.0-refuelingVaporProgramAdjust)*((1.0-refuelingTechAdjustment)*displacedVaporRate).
+Conditions: +Refueling Displacement Vapor Loss (18).
+Inputs: +refuelingcountyyear, refuelingtemp, sourcetypetechadjustment
+Outputs: +refuelingdisplacement
+
Step: Technology and Program adjustment of the refueling spillage rate. adjustedSpillRate = (1.0-refuelingSpillProgramAdjust)*((1.0-refuelingTechAdjustment)*refuelingSpillRate).
+Conditions: +Refueling Spillage Loss (19).
+Inputs: +refuelingcountyyear, refuelingfactors, sourcetypetechadjustment
+Outputs: +refuelingspillage
+
Step: emissions = (adjustedVaporRate * Total Energy Consumption (91)) / (energyContent * fuelDensity).
+Conditions: +Refueling Displacement Vapor Loss (18).
+Inputs: +movesworkeroutput, refuelingdisplacement, refuelingfueltype
+Outputs: +refuelingworkeroutputtemp
+
Step: emissions = (adjustedSpillRate * Total Energy Consumption (91)) / (energyContent * fuelDensity).
+Conditions: +Refueling Spillage Loss (19).
+Inputs: +movesworkeroutput, refuelingfueltype, refuelingspillage
+Outputs: +refuelingworkeroutputtemp
+

SO2 Calculator

+SO2 Calculator is a CHAINED CALCULATOR.
+
The SO2 Calculator is responsible for:
+
The SO2 Calculator input comes from:
+
The SO2 Calculator output is used by:
+
SO2 Calculator uses the following tables: + +
SO2 Calculator is expressed in these source code files: + +

Steps

+The SO2 Calculator algorithm is as follows.
+
Step: energyContent = sum(marketShare * energyContent) across the fuel supply. WsulfurLevel = sum(marketShare * sulfurLevel) across the fuel supply.
+Inputs: +so2copyoffuelformulation, so2copyoffuelsubtype, so2copyoffuelsupply, so2copyoffueltype, so2copyofyear
+Outputs: +so2fuelcalculation1
+
Step: SO2 (31) = (meanBaseRate * WsulfurLevel * Total Energy Consumption (91)) / energyContent.
+Inputs: +movesworkeroutput, so2copyofmonthofanyyear, so2fuelcalculation1, so2fuelcalculation2
+Outputs: +so2movesoutputtemp1
+
Step: Apply general fuel effects. emissionQuant = emissionQuant * fuelEffectRatio.
+Outputs: +so2movesoutputtemp1, so2pmonecountyyeargeneralfuelratio
+

SourceBin Distribution Generator

+SourceBin Distribution Generator is a GENERATOR that executes at the YEAR level.
+
SourceBin Distribution Generator uses the following tables: + +
SourceBin Distribution Generator populates the following tables: + +
SourceBin Distribution Generator is expressed in these source code files: + +

Steps

+The SourceBin Distribution Generator algorithm is as follows.
+
Step: Determine the set of SourceTypes which should be blocked because they already have output data for the current polProcessID.
+Inputs: +current polProcessID, SourceBinDistribution, SourceTypeModelYear
+Outputs: +BlockSourceType
+
Step: Determine the set of SourceTypes which should be used, namely those that exist in SourceTypePolProcess for the current polProcessID and which are not listed in BlockSourceType.
+Inputs: +BlockSourceType, current polProcessID, SourceTypePolProcess
+Outputs: +list of sourceTypeIDs
+
Step: Perform the following steps for each source type is the list of sourceTypeIDs and for the current polProcessID.
+Inputs: +current polProcessID, list of sourceTypeIDs
+
Step: Lookup isRegClassRequired and isMYGroupRequired.
+Inputs: +current polProcessID, current sourceTypeID, SourceTypePolProcess
+
Step: Aggregate sampleVehiclePopulation.stmyFraction based upon the need for regulatory class and model year group in the source bin. stmyFraction[sourceTypeModelYearID,fuelTypeID,engTechID,optionally regClassID,optionally shortModYrGroupID] = sum(SampleVehiclePopulation.stmyFraction).
+Inputs: +isMYGroupRequired, isRegClassRequired, modelYearGroup, pollutantProcessModelYear, sampleVehiclePopulation
+Outputs: +SBDGSVP
+
Step: Assign sourceBinID by combining other columns. sourceBinID= 1000000000000000000+ fuelTypeID*10000000000000000 + engTechID*100000000000000 + regClassID*1000000000000 + shortModYrGroupID*10000000000.
+Outputs: +SBDGSVP
+
Step: Find sourceBinIDs that do not already exist within SourceBin.
+Inputs: +SBDGSVP, SourceBin
+Outputs: +NewSourceBin2
+
Step: Add sourceBinIDs that did not previously exist within SourceBin.
+Inputs: +NewSourceBin2
+Outputs: +SourceBin
+
Step: sourceBinActivityFraction[sourceTypeModelYearID,sourceBinID] = sum(stmyFraction) of SampleVehiclePopulation records that have been aggregated according to sourcebin needs.
+Inputs: +SBDGSVP
+Outputs: +SourceBinDistribution
+
Step: Done iterating over the list of sourceTypeIDs for the current polProcessID.
+Inputs: +list of sourceTypeIDs
+
Step: equippedSourceBinID=sourceBin[fuelTypeID=sourceBinFuelTypeID]. usedSourceBinID=sourceBin[fuelTypeID=fuelSupplyFuelTypeID].
+Inputs: +fuelUsageFraction, sourceBin
+Outputs: +sourceBinFuelUsage
+
Step: Convert sourceBinDistribution from equipped fuels to used fuels basis. Use a new output table with a name that includes the process, county, and calendar year. sourceBinActivityFraction[sourceBinID=usedSourceBinID]=sum(usageFraction * sourceBinActivityFraction).
+Inputs: +pollutantProcessAssoc, sourceBinDistribution, sourceBinFuelUsage
+Outputs: +sourceBinDistributionFuelUsage_[processID]_[countyID]_[year]
+

Start Operating Mode Distribution Generator

+Start Operating Mode Distribution Generator is a GENERATOR that executes at the PROCESS level.
+
Start Operating Mode Distribution Generator uses the following tables: + +
Start Operating Mode Distribution Generator is expressed in these source code files: + +

Steps

+The Start Operating Mode Distribution Generator algorithm is as follows.
+
Step: Determine the soak time for each sample vehicle trip by subtracking the keyontime of the trip from the keyofftime of the previous trip. soakTime = keyOnTime[trip t] - keyOffTime[trip t-1].
+Inputs: +SampleVehicleTrip
+Outputs: +SoakTime
+
Step: Find the operating mode for each soaking vehicle.
+Conditions: +(minSoakTime <= soakTime OR (minSoakTime IS NULL AND maxSoakTime IS NOT NULL)) AND (maxSoakTime > soakTime OR (maxSoakTime IS NULL AND minSoakTime IS NOT NULL)).
+Inputs: +OperatingMode, SoakTime
+Outputs: +StartOpMode
+
Step: Find the number of vehicle starts per day. starts = count(keyOnTime).
+Inputs: +HourDay, RunSpecHourDay, SampleVehicleDay, SampleVehicleTrip, StartOpMode
+Outputs: +StartsPerVehicleDay
+
Step: Calculate the operating mode fraction. opModeFraction = count(opModeID)/starts.
+Inputs: +SampleVehicleDay, SampleVehicleTrip, StartOpMode, StartsPerVehicleDay
+Outputs: +StartOpModeDistribution
+
Step: Find the set of unique opModeID values within StartOpModeDistribution.
+Inputs: +StartOpModeDistribution
+Outputs: +SOMDGOpModes
+
Step: Find the set of operating mode distribution entries that already exist.
+Inputs: +opModeDistribution, SOMDGOpModes
+Outputs: +existingStartOMD
+
Step: Populate RatesOpModeDistribution.
+Conditions: +Project domain
+Inputs: +OpModeDistribution, opModePolProcAssoc, sourceTypePolProcess
+Outputs: +RatesOpModeDistribution
+
Step: Populate RatesOpModeDistribution.
+Conditions: +Non-Project domain
+Inputs: +opModePolProcAssoc, sourceTypePolProcess, StartOpModeDistribution
+Outputs: +RatesOpModeDistribution
+
Step: Add information for All Starts using operating mode 100 and polProcessID 602. opModeFraction[opModeID=100,polProcessID=602]=1.0.
+Inputs: +runSpecHourDay, runSpecSourceType
+Outputs: +RatesOpModeDistribution
+

Sulfate PM Calculator

+Sulfate PM Calculator is a CALCULATOR that executes at the YEAR level.
+
The Sulfate PM Calculator is responsible for:
+
The Sulfate PM Calculator input comes from:
+
The Sulfate PM Calculator output is used by:
+
Sulfate PM Calculator uses the following tables: + +
Sulfate PM Calculator is expressed in these source code files: + +

Steps

+The Sulfate PM Calculator algorithm is as follows.
+
Step: Get fuel effects for NonECNonSO4PM (120).
+Inputs: +county, fuelsupply, generalfuelratio, monthofanyyear, runspecmodelyearage, runspecmonthgroup, runspecsourcefueltype, year
+Outputs: +spmonecountyyeargeneralfuelratio
+
Step: Calculate adjusted SulfateNonECPMFraction and H2ONonECPMFraction using the sulfurLevel of available fuel formulations. Weight each adjusted fraction by formulation market share.
+Inputs: +county, fuelformulation, fuelsubtype, fuelsupply, monthofanyyear, runspecmodelyearage, runspecmonthgroup, runspecsourcefueltype, sulfatefractions, year
+Outputs: +onecountyyearsulfatefractions
+
Step: Collect speciation data.
+Outputs: +pmspeciation
+
Step: Create temperature effects for Sulfate (115), H2O (aersol) (119), and NonECNonSO4PM (120).
+Inputs: +temperaturefactorexpression, zonemonthhour
+Outputs: +onezoneyeartemperaturefactor
+
Step: Create crankcase split fractions for EC (112), Sulfate (115), H2O (aersol) (119), and NonECNonSO4PM (120). The query must account for the lack of NonECNonSO4PM in the Pollutant table.
+Inputs: +crankcaseemissionratio, emissionprocess
+Outputs: +crankcasesplit
+
Step: Copy unadjusted EC (112) so it can be adjusted.
+Inputs: +movesworkeroutput
+Outputs: +spmoutput
+
Step: Remove unadjusted EC. The adjusted EC will be added later.
+Outputs: +from
+
Step: Specify the split to make sulfate (115) from NonECPM (118). Sulfate = NonECPM * SulfateNonECPMFraction.
+Inputs: +onecountyyearsulfatefractions
+Outputs: +spmsplit1
+
Step: Specify the split to make H2O (aerosol) (119) from NonECPM (118). H2O = NonECPM * H2ONonECPMFraction.
+Inputs: +onecountyyearsulfatefractions
+Outputs: +spmsplit1
+
Step: Specify the split to make NonECNonSO4PM (120) from NonECPM (118). NonECNonSO4PM = NonECPM * (1 - UnadjustedH2ONonECPMFraction - UnadjustedSulfateNonECPMFraction).
+Inputs: +onecountyyearsulfatefractions
+Outputs: +spmsplit1
+
Step: Apply the splits, making Sulfate (115), H2O (aerosol) (119), and NonECNonSO4PM (120) from NonECPM (118).
+Inputs: +movesworkeroutput, spmsplit1
+Outputs: +spmoutput
+
Step: Apply fuel effects. Only NonECNonSO4PM (120) is affected.
+Outputs: +spmonecountyyeargeneralfuelratio, spmoutput
+
Step: Apply temperature effects to Sulfate, H2O (aersol), and NonECNonSO4PM.
+Outputs: +onezoneyeartemperaturefactor, spmoutput
+
Step: Split EC, Sulfate, H2O (aersol), and NonECNonSO4PM by crankcase effects.
+Inputs: +crankcasesplit, spmoutput
+Outputs: +spmoutput2
+
Step: Sum EC, NonECNonSO4PM, Sulfate, and H2O (aerosol) to make Total PM 2.5 (110)
+Inputs: +spmoutput2
+Outputs: +movesworkeroutput
+
Step: Copy EC, Sulfate, H2O to the output.
+Inputs: +spmoutput2
+Outputs: +movesworkeroutput
+
Step: Remove unadjusted NonECPM (118).
+Outputs: +from
+
Step: Sum the adjusted NonECNonSO4PM, Sulfate, and H2O (aerosol) to make the adjusted NonECPM (118).
+Inputs: +spmoutput2
+Outputs: +movesworkeroutput
+
Step: Speciate the remaining pollutants. species output = pmSpeciationFraction * species input
+Inputs: +pmspeciation, spmoutput2
+Outputs: +movesworkeroutput
+

TOG Speciation Calculator

+TOG Speciation Calculator is a that executes at the level.
+
The TOG Speciation Calculator is responsible for:
+
The TOG Speciation Calculator input comes from:
+
TOG Speciation Calculator uses the following tables: + +
TOG Speciation Calculator is expressed in these source code files: + +

Steps

+The TOG Speciation Calculator algorithm is as follows.
+
Step: Add NMOG (80) to the set of chained input pollutants.
+Outputs: +integratedspeciesset
+
Step: Index integratedSpeciesSet by pollutantID to increase speed.
+Outputs: +integratedspeciesset
+
Step: Find the subset of records that are actually needed. These include NMOG (80) and anything listed in integratedSpeciesSet.
+Inputs: +movesworkeroutput
+Outputs: +togworkeroutput
+
Step: Convert integrated species to negative NonHapTOG (88) entries and NMOG (80) values to positive NonHAPTOG (88) entries. When summed, this will complete the integration.
+Inputs: +integratedspeciesset
+Outputs: +togworkeroutput
+
Step: Sum the NonHAPTOG (88) records, reducing record count and completing the species integration.
+Inputs: +togworkeroutput
+Outputs: +togworkeroutputintegrated
+
Step: Copy NonHAPTOG (88) entries into MOVESWorkerOutput.
+Inputs: +togworkeroutputintegrated
+Outputs: +movesworkeroutput
+
Step: Index togSpeciationProfile by pollutantID to increase speed.
+Outputs: +togspeciationprofile
+
Step: Get the set of distinct pollutants that are needed for speciation input.
+Inputs: +togspeciationprofile
+Outputs: +togspeciationpollutants
+
Step: Find the subset of records that are needed for speciation input. These are the pollutants listed in the togSpeciationProfile table.
+Inputs: +movesworkeroutput, togspeciationpollutants
+Outputs: +togworkeroutputintegrated
+
Step: Speciate NonHAPTOG (88) and anything else listed as an input in togSpeciationProfile.
+

Tank Fuel Generator

+Tank Fuel Generator is a GENERATOR that executes at the YEAR level.
+
Tank Fuel Generator uses the following tables: + +
Tank Fuel Generator populates the following tables: + +
Tank Fuel Generator is expressed in these source code files: + +

Steps

+The Tank Fuel Generator algorithm is as follows.
+
Step: ethanolRVP = 2.3. weatheringConstant = 0.049.
+
Step: Find fuel formulations used by the fuel supply.
+Inputs: +FuelFormulation, FuelSubtype, FuelSupply, FuelType, RunSpecMonthGroup, RunSpecYear, Year
+Outputs: +TFGUsedFuelFormulation
+
Step: kGasoline=((-7e-7)*pow(ETOHVolume,3))+(0.0002*pow(ETOHVolume,2))+(0.0024*ETOHVolume)+1.0. kEthanol=(case when ETOHVolume>0 then (46.321*pow(ETOHVolume,-0.8422)) else 1000.0 end).
+Inputs: +FuelFormulation
+Outputs: +TFGUsedFuelFormulation
+
Step: gasPortionRVP=(RVP-kEthanol*ETOHVolume/100.0* ethanolRVP )/(kGasoline*(100.0-ETOHVolume)/100.0).
+Inputs: +FuelFormulation
+Outputs: +TFGUsedFuelFormulation
+
Step: linearAverageRVP=sum(RVP*marketShare)/sum(marketShare). tankAverageETOHVolume=sum(ETOHVolume*marketShare)/sum(marketShare). averageGasPortionRVP=sum(gasPortionRVP*marketShare)/sum(marketShare).
+Inputs: +FuelFormulation, FuelSupply, RunSpecYear, TFGUsedFuelFormulation, Year
+Outputs: +TFGFuelSupplyAverage
+
Step: gasoholMarketShare=sum(marketShare).
+Conditions: +4 <= ETOHVolume <= 20
+Inputs: +FuelFormulation, FuelSupply, RunSpecYear, TFGUsedFuelFormulation, Year
+Outputs: +TFGTemp
+
Step: Copy gasoholMarketShare to TFGFuelSupplyAverage.
+Inputs: +TFGTemp
+Outputs: +TFGFuelSupplyAverage
+
Step: averageKGasoline=((-7e-7)*pow(tankAverageETOHVolume,3))+(0.0002*pow(tankAverageETOHVolume,2))+(0.0024*tankAverageETOHVolume)+1. averageKEthanol=(case when tankAverageETOHVolume > 0 then (46.321*pow(tankAverageETOHVolume,-0.8422)).
+Outputs: +TFGFuelSupplyAverage
+
Step: noWeatheringReddyRVP= averageKGasoline* (100.0- tankAverageETOHVolume)/100.0 * averageGasPortionRVP + averageKEthanol * tankAverageETOHVolume/100.0 * ethanolRVP.
+Outputs: +TFGFuelSupplyAverage
+
Step: Find zone temperature extremes. zoneMin=min(temperature). zoneMax=max(temperature).
+Inputs: +MonthOfAnyYear, RunSpecMonth, Zone, ZoneMonthHour
+Outputs: +TFGZone
+
Step: zoneEvapTemp = (case when ((zoneMax < 40) or (zoneMax-zoneMin <= 0)) then (zoneMin+zoneMax)/2.0 else -1.7474+1.029*zoneMin+0.99202*(zoneMax-zoneMin)-0.0025173*zoneMin*(zoneMax-zoneMin) end).
+Outputs: +TFGZone
+
Step: ratioGasolineRVPLoss=greatest(0, (-2.4908+0.026196*zoneEvapTemp+0.00076898*zoneEvapTemp*averageGasPortionRVP) / (-0.0860+0.070592*averageGasPortionRVP) ).
+Inputs: +TFGFuelSupplyAverage, TFGZone
+Outputs: +TFGZoneFuel
+
Step: weatheredGasPortionRVP=averageGasPortionRVP*(1.0-ratioGasolineRVPLoss*weatheringConstant).
+Inputs: +TFGFuelSupplyAverage
+Outputs: +TFGZoneFuel
+
Step: weatheredReddyRVP= averageKGasoline*(100.0-tankAverageETOHVolume)/100.0*weatheredGasPortionRVP + averageKEthanol*tankAverageETOHVolume/100.0*ethanolRVP.
+Inputs: +TFGFuelSupplyAverage
+Outputs: +TFGZoneFuel
+
Step: commingledRVP=linearAverageRVP*(case when gasoholMarketShare >= 1.0 then 1.000 when gasoholMarketShare >= 0.9 then 1.018 when gasoholMarketShare >= 0.8 then 1.027 when gasoholMarketShare >= 0.7 then 1.034 when gasoholMarketShare >= 0.6 then 1.038 when gasoholMarketShare >= 0.5 then 1.040 when gasoholMarketShare >= 0.4 then 1.039 when gasoholMarketShare >= 0.3 then 1.035 when gasoholMarketShare >= 0.2 then 1.028 when gasoholMarketShare >= 0.1 then 1.016 else 1.000" end).
+Outputs: +TFGFuelSupplyAverage
+
Step: ETOHVolume=tankAverageETOHVolume. RVP=(weatheredReddyRVP*commingledRVP)/noWeatheringReddyRVP.
+Inputs: +TFGFuelSupplyAverage, TFGZoneFuel
+Outputs: +AverageTankGasoline
+

Tank Temperature Generator

+Tank Temperature Generator is a GENERATOR that executes at the ZONE level.
+
Tank Temperature Generator uses the following tables: + +
Tank Temperature Generator populates the following tables: + +
Tank Temperature Generator is expressed in these source code files: + +

Steps

+The Tank Temperature Generator algorithm is as follows.
+
Step: Obtain the required set of vehID and tankTemperatureGroupID combinations.
+Inputs: +SampleVehicleDay, SourceTypeModelYearGroup
+Outputs: +TempVehAndTTG
+
Step: Calculate temperatures in quarter hour increments using linear interpolation. quarterHourTemperature[hourID,timeStep] = temperature[hourID=h-1] + ((timeStep-1) * 0.25 * (temperature[hourID=h] - temperature[hourID=h-1])) for timeSteps 1-4.
+Inputs: +ZoneMonthHour for hour h, ZoneMonthHour for hour h-1 (or hour 24 if h is the hour 1)
+Outputs: +QuarterHourTemperature
+
Step: firstQuarterHourTankTemperature[monthID]=quarterHourTemperature[hourID=1,monthID,timeStep=1].
+Inputs: +QuarterHourTemperature
+
Step: sumTempDelta=0
+Conditions: +Resets to 0 for each monthID.
+
Step: Calculate quarter hour tank temperature from the quarter hour ambient temperature. quarterHourTankTemperature = 1.4*sumTempDelta + firstQuarterHourTankTemperature. tempDelta = quarterHourTemperature - quarterHourTankTemperature. sumTempDelta = sumTempDelta + tempDelta.
+Conditions: +for each hour and quarter hour time step of the current month, in temporal sequence
+Inputs: +QuarterHourTemperature
+Outputs: +QuarterHourTankTemperature
+
Step: coldSoakTankTemperature[zoneID,monthID,hourID]=quarterHourTankTemperature[zoneID,monthID,hourID,timeStep=1].
+Inputs: +QuarterHourTankTemperature
+Outputs: +ColdSoakTankTemperature
+
Step: coldSoakTankTemperature[zoneID,monthID,hourID]=quarterHourTankTemperature[zoneID,monthID,hourID,timeStep=1].
+Conditions: +QuarterHourTankTemperature has been populated
+Inputs: +QuarterHourTankTemperature
+Outputs: +TempColdSoakTankTemperature
+
Step: Copy ColdSoakTankTemperature to TempColdSoakTankTemperature.
+Conditions: +QuarterHourTankTemperature has not been populated
+Inputs: +ColdSoakTankTemperature
+Outputs: +TempColdSoakTankTemperature
+
Step: Flag all trips by default as Normal (tripType=N). Subsequent steps may alter this designation.
+Outputs: +SampleVehicleTrip
+
Step: Flag marker trips. tripType=M.
+Conditions: +keyOnTime is null and priorTripID is null
+Outputs: +SampleVehicleTrip
+
Step: Copy marker trips from SampleVehicleTrip to MarkerTrip.
+Inputs: +SampleVehicleTrip
+Outputs: +MarkerTrip
+
Step: Identify trips as the first trip of a day. tripType = F. priorTripID = NULL.
+Conditions: +Trips having a prior trip that is a marker trip.
+Inputs: +MarkerTrip
+Outputs: +SampleVehicleTrip
+
Step: Identify more trips as the first trip of a day. tripType = F.
+Conditions: +priorTripID is null and keyOnTime is not null (i.e. there is no prior trip and the vehicle was started during this trip) and the trip is still considered a Normal trip (tripType=N)
+Outputs: +SampleVehicleTrip
+
Step: vehicleCount = count(*) for each source type and day.
+Inputs: +sampleVehicleDay
+Outputs: +TTGeTemp
+
Step: eMinutes = 60*vehicleCount.
+Inputs: +HourDay, runSpecHourDay, runSpecMonth, TTGeTemp
+Outputs: +TTGeMinutes
+
Step: EndOfHour = (FLOOR(keyOnTime/60)+1)*60.
+Conditions: +tripType <> M (i.e. don't include marker trips)
+Inputs: +HourDay, SampleVehicleDay, SampleVehicleTrip
+Outputs: +list of trip data in memory
+
Step: Split trips into individual hours. startOfTrip = 1 for the first hour of the trip, 0 otherwise. endOfTrip = 1 when keyOffTime <= endOfHour, 0 otherwise.
+Inputs: +list of trip data in memory
+Outputs: +SampleVehicleTripByHour
+
Step: Find all hours in which a trip ends.
+Conditions: +endOfTrip=1
+Inputs: +SampleVehicleTripByHour
+Outputs: +list of trip end hours in memory
+
Step: hotSoakBegin = keyOffTime of each trip end.
+Inputs: +list of trip end hours in memory
+
Step: Get keyOnTime for the first hour of each trip's subsequent trip.
+Inputs: +SampleVehcileTripByHour
+Outputs: +keyOnTime for the current trip's first hour
+
Step: hotSoakEnd = min(endOfHour, nextKeyOnTime) when there is a next trip, endOfHour otherwise.
+
Step: Record each hot soaking event from hotSoakBegin to hotSoakEnd.
+Outputs: +HotSoakEventByHour
+
Step: Collect the list of tank temperature data sets to be iterated.
+Inputs: +SampleVehicleTripByHour, TankTemperatureRise, TempColdSoakTankTemperature, TempVehAndTTG
+Outputs: +list of tank temperature data sets to be iterated
+
Step: Calculate operating temperatures. keyOnTemp = coldSoakTankTemperature when starting a trip and a prior trip exists and it known that hot soaking has already ended. keyOnTemp = tank temperature when the the trip started when starting a trip and a prior trip exists and hot soaking is not already ended. keyOnTemp = coldSoakTankTemperature when starting a trip and no prior trip exists. keyOnTemp = keyOffTemp when a trip is continued into a new hour. keyOffTemp = keyOnTemp + ((tankTemperatureRiseTermA+tankTemperatureRiseTermB*(95.0-keyOnTemp))/1.2)*((keyOffTime-keyOnTime)/60.0). keyOffTemp = 140 when keyOffTemp > 140, limiting keyOffTemp to 140 degrees Farenheit.
+Inputs: +current item from the list of tank temperature data sets to be iterated
+Outputs: +OperatingTemperature
+
Step: Get the hot soak events beginning at the end of the current trip.
+Inputs: +HotSoakEventByHour, HourDay
+Outputs: +list of hot soak events
+
Step: Setup hot soak variables for the current vehicle, day, and trip. tempDeltaSum = 0. initialTankTemperature = keyOffTemp.
+
Step: Get the ambient temperature and coldSoakTankTemperature for the current month, zone, hour, and day.
+Inputs: +HourDay, TempColdSoakTankTemperature, ZoneMonthHour
+
Step: Generate the minute-by-minute hot soak temperatures. soakTankTemperature = 1.4*tempDeltaSum/60 + initialTankTemperature. tempDelta = temperature - soakTankTemperature. tempDeltaSum = tempDeltaSum + tempDelta. opModeID = 150 (hot soaking) when soakTankTemperature > coldSoakTankTemperature + 3, 151 (cold soaking) otherwise. When opModeID=151 (cold soaking), set soakTankTemperature=-1000 and do not record the hot soak minute or any others.
+Conditions: +each minute from hotSoakBegin, inclusive, to hotSoakEnd, exclusive.
+Outputs: +HotSoakTemperature
+
Step: Find AverageTankTemperature entries provided by the user as these should not be replaced with calculated values.
+Inputs: +AverageTankTemperature
+Outputs: +AverageTankTemperatureKeys
+
Step: Find all unique combinations of monthID, hourDayID, tankTemperatureGroupID in the operating temperature table.
+Inputs: +OperatingTemperature
+Outputs: +TempOperatingTemperatureSummary
+
Step: averageTankTemperature[opModeID=151 cold soaking]=coldSoakTankTemperature.
+Conditions: +No matching entries in AverageTankTemperatureKeys
+Inputs: +AverageTankTemperatureKeys, HourDay, TempColdSoakTankTemperature, TempOperatingTemperatureSummary
+Outputs: +AverageTankTemperature
+
Step: averageTankTemperature[opModeID=300 all running]=SUM((keyOffTime-keyOnTime)*(keyOnTemp+keyOffTemp)/2.0)/SUM(keyOffTime-keyOnTime).
+Conditions: +No matching entries in AverageTankTemperatureKeys
+Inputs: +AverageTankTemperatureKeys, OperatingTemperature
+Outputs: +AverageTankTemperature
+
Step: averageTankTemperature[opModeID=150 hot soaking]=average(soakTankTemp).
+Conditions: +No matching entries in AverageTankTemperatureKeys
+Inputs: +AverageTankTemperatureKeys, HotSoakTemperature
+Outputs: +AverageTankTemperature
+
Step: soakActivityFraction[opModeID=150 hot soaking]=hotSoakOpModeCount / (eMinutes - oMinutes).
+Inputs: +HotSoakOpModeCount, SoakActivityFractionKeys, TTGeMinutes, TTGoMinutes
+Outputs: +SoakActivityFraction
+
Step: soakActivityFraction[opModeID=151 cold soaking]=(eMinutes-oMinutes-hotSoakOpModeCount) / (eMinutes - oMinutes).
+Inputs: +HotSoakOpModeCount, SoakActivityFractionKeys, TTGeMinutes, TTGoMinutes
+Outputs: +SoakActivityFraction
+
Step: Read TempVehAndTTG into memory.
+Inputs: +TempVehAndTTG
+Outputs: +list of vehID, tankTemperatureGroupID in memory
+
Step: Read SampleVehicleTripByHour into memory.
+Inputs: +SampleVehicleTripByHour
+Outputs: +list of vehID, hourDayID, keyOnTime, keyOffTime in memory
+
Step: Read hot soak vehID, hourDayID, hotSoakTime, tankTemperatureGroupID, monthID combinations into memory.
+Inputs: +HotSoakTemperature
+Outputs: +list of objects in memory
+
Step: minutesColdSoakStartingFromInitialHour = modulus(keyOnTime,60). minutesColdSoakStartingInCurrentHour = 60 - minutesColdSoakStartingFromInitialHour - sum(KeyOffTime - KeyOnTime). minutesColdSoakStartingInCurrentHour -= hotSoakCount[monthID][tankTemperatureGroupID].
+Conditions: +Vehicle trip record
+
Step: minutesColdSoakStartingFromInitialHour = 0. minutesColdSoakStartingInCurrentHour = 60. minutesColdSoakStartingInCurrentHour -= hotSoakCount[monthID][tankTemperatureGroupID]. minutesColdSoakStartingInCurrentHour -= sum(KeyOffTime - KeyOnTime).
+Conditions: +Hot soak minute
+
Step: coldSoakMinutes[sourceTypeID][monthID][hourID][initialHourID] += minutesColdSoakStartingFromInitialHour. coldSoakMinutes[sourceTypeID][monthID][hourID][hourID] += minutesColdSoakStartingInCurrentHour. coldSoakMinutesSum[sourceTypeID][monthID][hourID] += minutesColdSoakStartingFromInitialHour + minutesColdSoakStartingInCurrentHour.
+
Step: coldSoakInitialHourFraction = coldSoakMinutes / coldSoakMinutesSum.
+Outputs: +ColdSoakInitialHourFraction
+

Tank Vapor Venting Calculator

+Tank Vapor Venting Calculator is a CALCULATOR that executes at the MONTH level.
+
The Tank Vapor Venting Calculator is responsible for:
+
The Tank Vapor Venting Calculator output is used by:
+
Tank Vapor Venting Calculator uses the following tables: + +
Tank Vapor Venting Calculator is expressed in these source code files: + +

Steps

+The Tank Vapor Venting Calculator algorithm is as follows.
+
Step: totalVehicles = count(dayID, sourceTypeID) from sampleVehicleDay.
+Conditions: +First bundle only.
+Inputs: +samplevehicleday
+Outputs: +samplevehiclecount
+
Step: vehiclesNeverStarted = count(dayID, sourceTypeID) from sampleVehicleDay without any corresponding entry in sampleVehicleTrip.
+Conditions: +First bundle only.
+Inputs: +samplevehicleday, samplevehicletrip
+Outputs: +samplevehicleneverstarted
+
Step: fractionNeverStarted[dayID,sourceTypeID] = vehiclesNeverStarted/totalVehicles.
+Conditions: +First bundle only.
+Outputs: +samplevehiclecount, samplevehicleneverstarted
+
Step: hour of first start[vehID,dayID,sourceTypeID] = min(SampleVehicleTrip.hourID).
+Conditions: +First bundle only.
+Inputs: +samplevehicleday, samplevehicletrip
+Outputs: +samplevehiclefirststart
+
Step: In each day and hour, count the number of vehicles that start for the first time. vehiclesFirstStarted[dayID,sourceTypeID,hourID] = count(dayID,sourceTypeID,hourID) by hour of first start.
+Conditions: +First bundle only.
+Inputs: +samplevehiclefirststart
+Outputs: +samplevehiclesoaktemp
+
Step: In each day and hour, sum the number of vehicles that have started up to then. totalVehiclesStarted[dayID,sourceTypeID,hourID]=sum(vehiclesFirstStarted) for all hours up to hourID.
+Conditions: +First bundle only.
+Inputs: +hourofanyday, samplevehiclesoaktemp
+Outputs: +samplevehiclesoaktemp2
+
Step: Obtain the fraction of vehicles soaking, awaiting their first start, for each day and hour. soakFraction[soakDayID=0,sourceTypeID,dayID,hourID]=(totalVehicles-totalVehiclesStarted)/totalVehicles.
+Conditions: +First bundle only.
+Inputs: +samplevehiclecount, samplevehiclesoaktemp2
+Outputs: +samplevehiclesoaking
+
Step: Assume a default soakFraction of 1 for any day and hour that has no vehicles started previously.
+Conditions: +First bundle only.
+Inputs: +hourofanyday, samplevehiclesoaktemp
+Outputs: +samplevehiclesoaking
+
Step: dayF[soakDayID=1,sourceTypeID,dayID]=soakFraction[soakDayID=0,sourceTypeID,dayID,hourID=24]
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoaking
+Outputs: +samplevehiclesoakingday
+
Step: soakF[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID]. GammaFn1[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID]. GammaFn[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingf
+
Step: dayF[soakDayID=2,sourceTypeID,dayID]=greatest(dayF[soakDayID=1,sourceTypeID,dayID], basisF[soakDayID=2,dayID]).
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingdaybasis
+Outputs: +samplevehiclesoakingday
+
Step: soakF[soakDayID=2,sourceTypeID,dayID]=dayF[soakDayID=2,sourceTypeID,dayID]. GammaFn1[soakDayID=2,sourceTypeID,dayID]=GammaFn[soakDayID=1,sourceTypeID,dayID]. GammaFn[soakDayID=2,sourceTypeID,dayID]=dayF[soakDayID=2,sourceTypeID,dayID] * GammaFn[soakDayID=1,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingf
+
Step: dayF[soakDayID=3,sourceTypeID,dayID]=greatest(dayF[soakDayID=2,sourceTypeID,dayID], basisF[soakDayID=3,dayID]).
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingdaybasis
+Outputs: +samplevehiclesoakingday
+
Step: soakF[soakDayID=3,sourceTypeID,dayID]=dayF[soakDayID=3,sourceTypeID,dayID]. GammaFn1[soakDayID=3,sourceTypeID,dayID]=GammaFn[soakDayID=2,sourceTypeID,dayID]. GammaFn[soakDayID=3,sourceTypeID,dayID]=dayF[soakDayID=3,sourceTypeID,dayID] * GammaFn[soakDayID=2,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingf
+
Step: dayF[soakDayID=4,sourceTypeID,dayID]=greatest(dayF[soakDayID=3,sourceTypeID,dayID], basisF[soakDayID=4,dayID]).
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingdaybasis
+Outputs: +samplevehiclesoakingday
+
Step: soakF[soakDayID=4,sourceTypeID,dayID]=dayF[soakDayID=4,sourceTypeID,dayID]. GammaFn1[soakDayID=4,sourceTypeID,dayID]=GammaFn[soakDayID=3,sourceTypeID,dayID]. GammaFn[soakDayID=4,sourceTypeID,dayID]=dayF[soakDayID=4,sourceTypeID,dayID] * GammaFn[soakDayID=3,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingf
+
Step: dayF[soakDayID=5,sourceTypeID,dayID]=greatest(dayF[soakDayID=4,sourceTypeID,dayID], basisF[soakDayID=5,dayID]).
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingdaybasis
+Outputs: +samplevehiclesoakingday
+
Step: soakF[soakDayID=5,sourceTypeID,dayID]=dayF[soakDayID=5,sourceTypeID,dayID]. GammaFn1[soakDayID=5,sourceTypeID,dayID]=GammaFn[soakDayID=4,sourceTypeID,dayID]. GammaFn[soakDayID=5,sourceTypeID,dayID]=dayF[soakDayID=5,sourceTypeID,dayID] * GammaFn[soakDayID=4,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingf
+
Step: nextF[soakDayID,sourceTypeID,dayID]=soakF[soakDayID+1,sourceTypeID,dayID].
+Conditions: +First bundle only.
+Outputs: +samplevehiclesoakingf, samplevehiclesoakingf2
+
Step: P[n,1] = 1 for each soaking day
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingday
+Outputs: +samplevehiclesoakingproportion
+
Step: D[5,1] = Gamma[F4]
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingf
+Outputs: +samplevehiclesoaking
+
Step: D[5,24] = Gamma[F5], for soakday 5
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingf
+Outputs: +samplevehiclesoaking
+
Step: D[n,24] = Gamma[Fn] * (1-F[n+1]), for soakdays 1-4
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingf
+Outputs: +samplevehiclesoaking
+
Step: D[1,1] = D1-D24 for soakday 1
+Conditions: +First bundle only.
+Outputs: +samplevehiclesoaking
+
Step: D[n,1] = D[n-1,24] for soakday 2,3,4
+Conditions: +First bundle only.
+Outputs: +samplevehiclesoaking
+
Step: P[n,24]=D[n,24]/D[n,1]
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoaking
+Outputs: +samplevehiclesoakingproportion
+
Step: Precalc[h] = (D[0,h]-D[0,24]) / (D[0,1]-D[0,24]) because it is used in P[n,1 < h < 24]
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoaking
+Outputs: +samplevehiclesoakingdh
+
Step: Store P[n,1] for each day alongside P[n,24] since they are used together
+Conditions: +First bundle only.
+Outputs: +samplevehiclesoakingf, samplevehiclesoakingproportion
+
Step: P[n,h]=Precalc[h]*(P[n,1]-P[n,24]) + P[n,24] for 1 <= n <= 5, 1 < h < 24
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingdh
+Outputs: +samplevehiclesoakingproportion
+
Step: D[n,h] = D[n,1]*P[n,h] for 1 <= n <= 5, 1 < h < 24
+Conditions: +First bundle only.
+Inputs: +samplevehiclesoakingproportion
+Outputs: +samplevehiclesoaking
+
Step: Index by hourID to speedup later joins.
+Inputs: +ColdSoakTankTemperature
+Outputs: +coldsoaktanktemperature
+
Step: Include soakDayID in ColdSoakInitialHourFraction.
+Inputs: +ColdSoakInitialHourFraction
+Outputs: +coldsoakinitialhourfraction
+
Step: Disaggregate IMCoverage records, expanding model year ranges into individual model years. IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01.
+Inputs: +agecategory, imcoverage, imfactor, pollutantprocessassoc, pollutantprocessmappedmodelyear
+Outputs: +imcoveragemergedungrouped
+
Step: Compute peakHourID by monthID. The maximum value of the expression is found. This finds the maximum temperature and the earliest time of day in which the temperature occurs, storing both as a single number.
+Inputs: +coldsoaktanktemperature
+Outputs: +peakhourofcoldsoak
+
Step: Calculate tankVaporGenerated for high and low altitudes. The time spans t1 (based upon ColdSoakInitialHourFraction.initialHourDayID) to t2 (based upon ColdSoakInitialHourFraction.hourDayID). tankVaporGenerated[high and low altitudes] = (tankSize*(1-tankFillFraction))*(tvgTermA*exp(tvgTermB*RVP)*(exp(tvgTermC*t2.coldSoakTankTemperature)-exp(tvgTermC*t1.coldSoakTankTemperature)))
+Conditions: +t1.coldSoakTankTemperature < t2.coldSoakTankTemperature, 0 otherwise.
+Inputs: +averagetankgasoline, coldsoakinitialhourfraction, coldsoaktanktemperature, hourday, monthofanyyear, peakhourofcoldsoak, stmytvvcoeffs, tankvaporgencoeffs
+Outputs: +tankvaporgeneratedhighandlow
+
Step: Interpolate tankVaporGenerated based upon the county's barometric pressure. Don't allow negative values. Low altitude is based upon Wayne County, Michigan (26163) with a barometric pressure of 29.069. High altitude is based upon Denver County, Colorado (8031) with a barometric pressure of 24.087. tankVaporGenerated = greatest(((barometricPressure - 29.069) / (24.087 - 29.069)) * (high.tankVaporGenerated - low.tankVaporGenerated) + low.tankVaporGenerated,0).
+Inputs: +county, tankvaporgeneratedhighandlow
+Outputs: +tankvaporgenerated
+
Step: Calculated the ethanol weighted TVG using tankVaporGenerated for E10 fuel (t10) and that of E0 fuel (t0). ethanolWeightedTVG=(t10.tankVaporGenerated*(least(10.0,ETOHVolume)/10.0)+t0.tankVaporGenerated*(1.0-least(10.0,ETOHVolume)/10.0)).
+Inputs: +averagetankgasoline, monthofanyyear, tankvaporgenerated
+Outputs: +ethanolweightedtvgtemp
+
Step: Until now, ethanolWeightedTVG has been a cummulative total. Convert it to an hourly increment by subtracting the total of the previous hour. ethanolWeightedTVG[hourID]=ethanolWeightedTVG[hourID]-ethanolWeightedTVG[hourID-1].
+Inputs: +ethanolweightedtvgtemp
+Outputs: +ethanolweightedtvg
+
Step: tvgSumIH = Sum of TVG hourly from initial hour I to hour H
+Inputs: +ethanolweightedtvg, hourday
+Outputs: +tvgsumih
+
Step: tvgSumI24 = Sum of TVG hourly from initial hour I to the last hour of the day
+Inputs: +ethanolweightedtvg, hourday
+Outputs: +tvgsumi24
+
Step: tvgSum1H = Sum of TVG hourly from the first hour of the day to hour H
+Inputs: +ethanolweightedtvg, hourday
+Outputs: +tvgsum1h
+
Step: tvgSumH24 = Sum of TVG hourly from after hour H to the last hour of the day
+Inputs: +ethanolweightedtvg, hourday
+Outputs: +tvgsumh24
+
Step: TVGdaily[soakDayID=1] = tvgSumIH. Xn[soakDayID=1] = tvgSumIH.
+Inputs: +ethanolweightedtvg, tvgsum1h, tvgsumh24, tvgsumih
+Outputs: +tvg
+
Step: TVGdaily[soakDayID=2] = TVGdaily[soakDayID=1]. Xn[soakDayID=2] = ((1-backPurgeFactor)*least(tvgSumI24,averageCanisterCapacity))+tvgSum1H.
+Inputs: +tvgsumi24
+Outputs: +tvg
+
Step: TVGdaily[soakDayID>2] = TVGdaily[soakDayID-1]. Xn[soakDayID>2] = ((1-backPurgeFactor)*least(Xn[soakDayID-1] + tvgSumH24,averageCanisterCapacity))+tvgSum1H.
+Outputs: +tvg
+
Step: Include leaking using database-driven TVV and Leak equations. tankVaporVented = (1-leakFraction)*(TVV equation) + leakFraction*(Leak equation). tankVaporVentedIM = (1-leakFractionIM)*(TVV equation) + leakFractionIM*(Leak equation).
+Inputs: +agecategory, hourday, stmytvvequations, tvg
+Outputs: +cummulativetankvaporvented
+
Step: unweightedHourlyTVV = tankVaporVented[hourID] - tankVaporVented[hourID-1]. unweightedHourlyTVVIM = tankVaporVentedIM[hourID] - tankVaporVentedIM[hourID-1].
+Conditions: +only when coldSoakTankTemperature[hourID] > coldSoakTankTemperature[hourID-1], 0 otherwise.
+Inputs: +coldsoaktanktemperature, cummulativetankvaporvented
+Outputs: +unweightedhourlytvv
+
Step: Add coldSoakInitialHourFraction entries for soaking days beyond the first day
+Inputs: +hourday, samplevehiclesoaking
+Outputs: +coldsoakinitialhourfraction
+
Step: hourlyTVV = unweightedHourlyTVV * coldSoakInitialHourFraction. hourlyTVVIM = unweightedHourlyTVVIM * coldSoakInitialHourFraction.
+Inputs: +coldsoakinitialhourfraction, unweightedhourlytvv
+Outputs: +hourlytvvtemp
+
Step: hourlyTVV = sum(hourlyTVV). hourlyTVVIM = sum(hourlyTVVIM).
+Inputs: +hourlytvvtemp
+Outputs: +hourlytvv
+
Step: Reduce TVV emissions for hours past the hour with the peak temperature. hourlyTVV(with and without I/M) = hourlyTVV(with and without I/M) * (0 when >= 5 hours past the peak, 0.0005 when >= 4 hours, 0.0040 when >= 3 hours, 0.0100 when >= 2 hours, 0.0200 when >= 1 hour, 1.0 otherwise).
+Inputs: +copyofhourlytvv, hourday, peakhourofcoldsoak
+Outputs: +hourlytvv
+
Step: THC rate[opModeID=151 cold soak]=sum(sourceBinActivityFraction * hourlyTVV). THC I/M rate[opModeID=151 cold soak]=sum(sourceBinActivityFraction * hourlyTVVIM).
+Inputs: +fueltype, hourlytvv, pollutantprocessmodelyear, sourcebin, sourcebindistribution, sourcetypemodelyear
+Outputs: +weightedmeanbaserate
+
Step: Find bounds on RVP-based operating and hot soak adjustments (opModeIDs 300 and 150).
+Inputs: +evaprvptemperatureadjustment
+Outputs: +evaprvptemperatureadjustmentsummary
+
Step: Linearly interpolate RVP adjustment terms for each entry in averageTankGasoline, where lowAdj is the evapRVPTemperatureAdjustment record such that lowAdj.RVP <= averageTankGasoline.RVP and highAdj is similar with highAdj.RVP > averageTankGasoline.RVP. adjustTerm3 = lowAdj.adjustTerm3 + (highAdj.adjustTerm3 - lowAdj.adjustTerm3)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)). adjustTerm2 = lowAdj.adjustTerm2 + (highAdj.adjustTerm2 - lowAdj.adjustTerm2)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP). adjustTerm1 = lowAdj.adjustTerm1 + (highAdj.adjustTerm1 - lowAdj.adjustTerm1)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP). adjustConstant = lowAdj.adjustConstant + (highAdj.adjustConstant - lowAdj.adjustConstant)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP).
+Inputs: +evaprvptemperatureadjustment, tempatg
+Outputs: +averagetankgasoline
+
Step: Adjust hot soak (opModeID 150) and running (opModeID 300) by temperature and RVP effects. tempAdjustment[opModeID=300]= (tempAdjustTerm3*power(greatest(temperature,40.0),3) + tempAdjustTerm2*power(greatest(temperature,40.0),2) + tempAdjustTerm1*greatest(temperature,40.0) + tempAdjustConstant). tempAdjustment[opModeID=150]=1. rvpAdjustment[opModeID=300]=1 for temperature < 40F, otherwise for temperature >= 40F: (adjustTerm3*power(temperature,3) + adjustTerm2*power(temperature,2) + adjustTerm1*temperature + adjustConstant). rvpAdjustment[opModeID=150]=1. weightedMeanBaseRate=sum(sourceBinActivityFraction*meanBaseRate)*rvpAdjustment*tempAdjustment. weightedMeanBaseRateIM=sum(sourceBinActivityFraction*meanBaseRateIM)*rvpAdjustment*tempAdjustment.
+Conditions: +Only Gasoline (1) and Ethanol (5) fuel types, all others have no adjustments in this step.
+Inputs: +agecategory, averagetankgasoline, emissionratebyage, evaptemperatureadjustment, fueltype, hourday, pollutantprocessmodelyear, runspechourday, runspecsourcetype, sourcebin, sourcebindistribution, sourcetypemodelyear, zonemonthhour
+Outputs: +weightedmeanbaserate
+
Step: Combine cold soaking (opModeID=151), hot soaking (150), and running (300) evaporative emissions. THC=weightedMeanBaseRate*sourceHours*opModeFraction. THC I/M=weightedMeanBaseRateIM*sourceHours*opModeFraction.
+Inputs: +hourday, opmodedistribution, pollutantprocessassoc, sourcehours, weightedmeanbaserate
+Outputs: +movesworkeroutput
+
Step: Apply I/M programs to the aggregat combination of cold soak, hot soaking, and running evap. THC=THC I/M*IMAdjustFract + THC*(1-IMAdjustFract).
+Outputs: +imcoveragemergedungrouped, movesworkeroutput
+

Total Activity Generator

+Total Activity Generator is a GENERATOR that executes at the YEAR level.
+
Total Activity Generator uses the following tables: + +
Total Activity Generator populates the following tables: + +
Total Activity Generator is expressed in these source code files: + +

Steps

+The Total Activity Generator algorithm is as follows.
+
Step: baseYear = max(year) where year <= analysisYear and year is a base year.
+Inputs: +year
+
Step: population = sourceTypePopulation * ageFraction.
+Inputs: +SourceTypeAgeDistribution, SourceTypeYear
+Outputs: +SourceTypeAgePopulation
+
Step: Grow the age 0 population. population[ageID=0,y] = (population[y-1]/migrationRate[y-1])*salesGrowthFactor[y]*migrationRate[y].
+Inputs: +SourceTypeAgePopulation for year y-1, SourceTypeYear for year y, SourceTypeYear for year y-1
+Outputs: +SourceTypeAgePopulation2
+
Step: Move the newly grown population to the main population table.
+Inputs: +SourceTypeAgePopulation2
+Outputs: +SourceTypeAgePopulation
+
Step: Grow the population for 1 <= ageID < 30. population[ageID,y] = population[y-1,ageID-1]*survivalRate[ageID]*migrationRate[y].
+Inputs: +SourceTypeAge, SourceTypeAgePopulation for year y-1, SourceTypeYear for year y
+Outputs: +SourceTypeAgePopulation2
+
Step: Grow the population ageID >= 30. population[ageID,y] = population[ageID=29,y-1]*survivalRate[ageID=29]*migrationRate[y] + population[ageID=30,y]*survivalRate[ageID=30]*migrationRate[y].
+Inputs: +sta SourceTypeAge for ageID=29, sta2 SourceTypeAge for ageID=30, stap SourceTypeAgePopulation for year y-1 and ageID=29, stap2 SourceTypeAgePopulation for year y and ageID=30, sty SourceTypeYear for year y
+Outputs: +SourceTypeAgePopulation2
+
Step: totalPopulation = sum(population).
+Inputs: +sourceTypeagePopulation
+Outputs: +sourceTypeAgePopulationTotal
+
Step: ageFraction = population/totalPopulation.
+Inputs: +sourceTypeAgePopulation, sourceTypeAgePopulationTotal
+Outputs: +sourceTypeAgeDistribution
+
Step: population[HPMSVTypeID] = sum(population[sourceTypeID]).
+Inputs: +SourceTypeAgePopulation, SourceUseType
+Outputs: +HPMSVTypePopulation
+
Step: FractionWithinHPMSVType = population[sourceTypeID]/population[HPMSVTypeID].
+Inputs: +HPMSVTypePopulation, SourceTypeAgePopulation, SourceUseType
+Outputs: +FractionWithinHPMSVType
+
Step: HPMSTravelFraction = sum(relativeMAR * FractionWithinHPMSVType).
+Inputs: +FractionWithinHPMSVType, SourceTypeAge, SourceUseType
+Outputs: +HPMSTravelFraction
+
Step: TravelFraction = (FractionWithinHPMSVType * relativeMAR) / HPMSTravelFraction.
+Inputs: +FractionWithinHPMSVType, HPMSTravelFraction, SourceTypeAge, SourceUseType
+Outputs: +TravelFraction
+
Step: totalTravelFraction(yearID,sourceTypeID) = Sum(TravelFraction).
+Conditions: +VMT provided by sourcetype not HPMSVType
+Inputs: +TravelFraction
+Outputs: +TravelFractionSourceTypeSum
+
Step: When VMT by source type has been provided, normalize TravelFraction by year and source type. normalized TravelFraction = TravelFraction / totalTravelFraction.
+Conditions: +VMT provided by sourcetype not HPMSVType
+Inputs: +TravelFractionSourceTypeSum
+Outputs: +TravelFraction
+
Step: VMT = HPMSBaseYearVMT.
+Inputs: +HPMSVTypeYear, RunSpecSourceType, SourceUseType
+Outputs: +AnalysisYearVMT
+
Step: Grow VMT one year. VMT[y] = VMT[y-1] * VMTGrowthFactor[y].
+Inputs: +AnalysisYearVMT for year y-1, HPMSVTypeYear for year y
+Outputs: +AnalysisYearVMT2
+
Step: Copy AnalysisYearVMT2 data into AnalysisYearVMT.
+Inputs: +AnalysisYearVMT2
+Outputs: +AnalysisYearVMT
+
Step: VMT = VMT * roadTypeVMTFraction * TravelFraction.
+Conditions: +VMT provided by HPMSVType
+Inputs: +AnalysisYearVMT, RoadType, RoadTypeDistribution, SourceUseType, TravelFraction
+Outputs: +AnnualVMTByAgeRoadway
+
Step: VMT = VMT * roadTypeVMTFraction * TravelFraction.
+Conditions: +VMT provided by source type
+Inputs: +RoadType, RoadTypeDistribution, SourceTypeYearVMT, TravelFraction
+Outputs: +AnnualVMTByAgeRoadway
+
Step: Append monthVMTFraction to AnnualVMTByAgeRoadway.
+Inputs: +AnnualVMTByAgeRoadway, MonthVMTFraction
+Outputs: +AvarMonth
+
Step: Append dayVMTFraction to AvarMonth.
+Inputs: +AvarMonth, DayVMTFraction
+Outputs: +AvarMonthDay
+
Step: Hourly VMT = Annual VMT * monthVMTFraction * dayVMTFraction * hourVMTFraction / weeksPerMonth.
+Conditions: +Annual VMT provided, either by HPMSVType or sourceTypeID
+Inputs: +AvarMonthDay, HourDay, HourVMTFraction
+Outputs: +VMTByAgeRoadwayHour
+
Step: Hourly VMT = Daily VMT * hourVMTFraction * roadTypeVMTFraction * TravelFraction * NumberOfRealDays.
+Conditions: +Daily VMT provided by sourceTypeID
+Inputs: +DayOfAnyWeek, HourDay, HourVMTFraction, RoadTypeDistribution, SourceTypeDayVMT, TravelFraction
+Outputs: +VMTByAgeRoadwayHour
+
Step: Hourly VMT = Daily VMT * hourVMTFraction * roadTypeVMTFraction * TravelFraction * NumberOfRealDays.
+Conditions: +Daily VMT provided by HPMSVType
+Inputs: +DayOfAnyWeek, HourDay, HourVMTFraction, HPMSVTypeDay, RoadTypeDistribution, SourceUseType, TravelFraction
+Outputs: +VMTByAgeRoadwayHour
+
Step: totalVMT = sum(VMT).
+Inputs: +vmtByAgeRoadwayHour
+Outputs: +vmtByMYRoadHourSummary
+
Step: Find VMT fraction by model year. vmtFraction = VMT/totalVMT.
+Inputs: +vmtByAgeRoadwayHour, vmtByMYRoadHourSummary
+Outputs: +vmtByMYRoadHourFraction
+
Step: Append dayID and hourID to SourceTypeHour.
+Inputs: +HourDay, SourceTypeHour
+Outputs: +SourceTypeHour2
+
Step: averageSpeed = sum(avgBinSpeed * avgSpeedFraction).
+Inputs: +AvgSpeedBin, AvgSpeedDistribution, HourDay, HourOfAnyDay, RoadType, RunSpecDay, RunSpecSourceType
+Outputs: +AverageSpeed
+
Step: SHO = VMT/averageSpeed where averageSpeed > 0, 0 otherwise.
+Inputs: +AverageSpeed, VMTByAgeRoadwayHour
+Outputs: +SHOByAgeRoadwayHour
+
Step: Find total VMT by day on Rural Restricted Access roads (roadTypeID=2) for Combination Long Haul Trucks (sourceTypeID=62). Daily VMT = sum(hourly VMT). hotellingHours = 0.
+Inputs: +VMTByAgeRoadwayHour
+Outputs: +VMTByAgeRoadwayDay
+
Step: hotellingHours = Daily VMT * hotellingRate.
+Inputs: +hotellingCalendarYear
+Outputs: +VMTByAgeRoadwayDay
+
Step: idleHours = hotellingHours * hotellingDist.
+Inputs: +SourceTypeHour2, VMTByAgeRoadwayDay
+Outputs: +IdleHoursByAgeHour
+
Step: Find the number of starts for each sample vehicle. starts = count(trips) * noOfRealDays.
+Conditions: +Ignore marker trips
+Inputs: +DayOfAnyWeek, HourDay, SampleVehicleDay, SampleVehicleTrip
+Outputs: +StartsPerSampleVehicle
+
Step: startsPerVehicle = starts / count(sample vehicles).
+Inputs: +SampleVehicleDay, StartsPerSampleVehicle
+Outputs: +StartsPerVehicle
+
Step: starts = population * startsPerVehicle.
+Inputs: +SourceTypeAgePopulation, StartsPerVehicle
+Outputs: +StartsByAgeHour
+
Step: SHP = (population*noOfRealDays) - SUM(sho).
+Inputs: +DayOfAnyWeek, ShoByAgeRoadwayHour, SourceTypeAgePopulation
+Outputs: +SHPByAgeHour
+
Step: Copy SHO for blended road types to corresponding ramp road types. No scaling is done here.
+Outputs: +SHOByAgeRoadwayHour
+
Step: Append SHOAllocFactor to link information.
+Inputs: +Link, ZoneRoadType
+Outputs: +ZoneRoadTypeLinkTemp
+
Step: SHO = SHO * averageSpeed * SHOAllocFactor.
+Conditions: +Rates
+Inputs: +AverageSpeed, LinkAverageSpeed, RunSpecHourDay, SHOByAgeRoadwayHour, ZoneRoadTypeLinkTemp
+Outputs: +SHO
+
Step: SHO = SHO * SHOAllocFactor.
+Conditions: +Inventory
+Inputs: +RunSpecHourDay, SHOByAgeRoadwayHour, ZoneRoadTypeLinkTemp
+Outputs: +SHO
+
Step: starts = starts * startAllocFactor.
+Conditions: +Inventory
+Inputs: +RunSpecMonth, StartsByAgeHour
+Outputs: +Starts
+
Step: extendedIdleHours = hotellingHours * opModeFraction[opModeID=200 extended idling].
+Conditions: +HotellingHours contains user-supplied hotelling information
+Inputs: +hotellingActivityDistribution, hotellingHours
+Outputs: +extendedIdleHours
+
Step: extendedIdleHours = idleHours * SHOAllocFactor * opModeFraction[opModeID=200 extended idling].
+Inputs: +hotellingActivityDistribution, HourDay, IdleHoursByAgeHour, runSpecHourDay, ZoneRoadType
+Outputs: +extendedIdleHours
+
Step: SHP = SHP * SHPAllocFactor.
+Inputs: +RunSpecHourDay, SHPByAgeHour, Zone
+Outputs: +SHP
+
Step: sourceHours = SHP.
+Inputs: +Link, SHP
+Outputs: +SourceHours
+
Step: sourceHours = SHO.
+Inputs: +SHO
+Outputs: +SourceHours
+
Step: distance = SHO * averageSpeed.
+Conditions: +Rates
+Inputs: +LinkAverageSpeed
+Outputs: +SHO
+
Step: Append link and SHO information.
+Conditions: +Inventory
+Inputs: +Link, SHO
+Outputs: +SHOTemp
+
Step: Append AverageSpeed and HourDay information.
+Conditions: +Inventory
+Inputs: +AverageSpeed, HourDay
+Outputs: +AverageSpeedTemp
+
Step: distance = SHO * averageSpeed.
+Conditions: +Inventory
+Inputs: +AverageSpeedTemp, SHOTemp
+Outputs: +SHO2
+
Step: Remove all items from the SHO table.
+Conditions: +Inventory
+Outputs: +SHO
+
Step: Copy the SHO2 information, which now includes distance, to the SHO table.
+Conditions: +Inventory
+Inputs: +SHO2
+Outputs: +SHO
+

AgeCategory table

+
+CREATE TABLE agecategory (
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  ageGroupID smallint(6) NOT NULL DEFAULT 0,
+  ageCategoryName char(50) DEFAULT NULL,
+  PRIMARY KEY (ageID),
+  KEY ageGroupID (ageGroupID,ageID),
+  KEY ageID (ageID,ageGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The AgeCategory is used by these modules: + +

AgeGroup table

+
+CREATE TABLE agegroup (
+  ageGroupID smallint(6) NOT NULL DEFAULT 0,
+  ageGroupName char(50) DEFAULT NULL,
+  PRIMARY KEY (ageGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

ATBaseEmissions table

+
+CREATE TABLE atbaseemissions (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  atBaseEmissions float NOT NULL DEFAULT 0,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ATBaseEmissions is used by these modules: + +

ATRatio table

+
+CREATE TABLE atratio (
+  fuelTypeID smallint(6) NOT NULL,
+  fuelFormulationID smallint(6) NOT NULL,
+  polProcessID int(11) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  ageID smallint(6) NOT NULL,
+  monthGroupID smallint(6) NOT NULL,
+  atRatio double DEFAULT NULL,
+  PRIMARY KEY (fuelTypeID,fuelFormulationID,polProcessID,minModelYearID,maxModelYearID,ageID,monthGroupID),
+  KEY atratio_key1 (fuelFormulationID,polProcessID,minModelYearID),
+  KEY atratio_key2 (polProcessID,fuelTypeID,monthGroupID,minModelYearID,ageID,maxModelYearID,fuelFormulationID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ATRatio is used by these modules: + +

ATRatioGas2 table

+
+CREATE TABLE atratiogas2 (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  ATRatio float DEFAULT NULL,
+  ATRatioCV float DEFAULT NULL,
+  PRIMARY KEY (polProcessID,sourceTypeID,fuelSubtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ATRatioGas2 is used by these modules: + +

ATRatioNonGas table

+
+CREATE TABLE atrationongas (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  ATRatio double DEFAULT NULL,
+  ATRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,sourceTypeID,fuelSubtypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ATRatioNonGas is used by these modules: + +

AverageTankGasoline table

+
+CREATE TABLE averagetankgasoline (
+  zoneID int(11) NOT NULL DEFAULT 0,
+  fuelYearID int(11) NOT NULL DEFAULT 0,
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  ETOHVolume float DEFAULT NULL,
+  RVP float DEFAULT NULL,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (zoneID,fuelTypeID,fuelYearID,monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The AverageTankGasoline is used by these modules: + +

AverageTankTemperature table

+
+CREATE TABLE averagetanktemperature (
+  tankTemperatureGroupID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  averageTankTemperature float DEFAULT NULL,
+  averageTankTemperatureCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (tankTemperatureGroupID,zoneID,monthID,hourDayID,opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The AverageTankTemperature is used by these modules: + +

avft table

+
+CREATE TABLE avft (
+  sourceTypeID smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  fuelEngFraction double NOT NULL,
+  PRIMARY KEY (sourceTypeID,modelYearID,fuelTypeID,engTechID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY modelYearID (modelYearID),
+  KEY fuelTypeID (fuelTypeID),
+  KEY engTechID (engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

AvgSpeedBin table

+
+CREATE TABLE avgspeedbin (
+  avgSpeedBinID smallint(6) NOT NULL DEFAULT 0,
+  avgBinSpeed float DEFAULT NULL,
+  avgSpeedBinDesc char(50) DEFAULT NULL,
+  opModeIDTirewear smallint(6) DEFAULT NULL,
+  opModeIDRunning smallint(6) DEFAULT NULL,
+  PRIMARY KEY (avgSpeedBinID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The AvgSpeedBin is used by these modules: + +

AvgSpeedDistribution table

+
+CREATE TABLE avgspeeddistribution (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  avgSpeedBinID smallint(6) NOT NULL DEFAULT 0,
+  avgSpeedFraction float DEFAULT NULL,
+  PRIMARY KEY (avgSpeedBinID,hourDayID,roadTypeID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY roadTypeID (roadTypeID),
+  KEY hourDayID (hourDayID),
+  KEY avgSpeedBinID (avgSpeedBinID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The AvgSpeedDistribution is used by these modules: + +

BaseFuel table

+
+CREATE TABLE basefuel (
+  calculationEngine varchar(100) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  fuelFormulationID smallint(6) NOT NULL,
+  description varchar(255) NOT NULL DEFAULT '',
+  dataSourceID smallint(6) NOT NULL,
+  PRIMARY KEY (calculationEngine,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The BaseFuel is used by these modules: + +

ColdSoakInitialHourFraction table

+
+CREATE TABLE coldsoakinitialhourfraction (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  initialHourDayID smallint(6) NOT NULL DEFAULT 0,
+  coldSoakInitialHourFraction float NOT NULL DEFAULT 0,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (sourceTypeID,zoneID,monthID,hourDayID,initialHourDayID),
+  KEY isUserInput (isUserInput)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ColdSoakInitialHourFraction is used by these modules: + +

ColdSoakTankTemperature table

+
+CREATE TABLE coldsoaktanktemperature (
+  zoneID int(11) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  coldSoakTankTemperature float NOT NULL DEFAULT 0,
+  PRIMARY KEY (zoneID,monthID,hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ColdSoakTankTemperature is used by these modules: + +

ComplexModelParameterName table

+
+CREATE TABLE complexmodelparametername (
+  cmpID smallint(6) NOT NULL DEFAULT 0,
+  cmpName char(25) NOT NULL,
+  cmpExpression varchar(500) NOT NULL,
+  PRIMARY KEY (cmpID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ComplexModelParameterName is used by these modules: + +

ComplexModelParameters table

+
+CREATE TABLE complexmodelparameters (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelModelID smallint(6) NOT NULL DEFAULT 0,
+  cmpID smallint(6) NOT NULL DEFAULT 0,
+  coeff1 float DEFAULT NULL,
+  coeff2 float DEFAULT NULL,
+  coeff3 float DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelModelID,cmpID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ComplexModelParameters is used by these modules: + +

County table

+
+CREATE TABLE county (
+  countyID int(11) NOT NULL DEFAULT 0,
+  stateID smallint(6) NOT NULL DEFAULT 0,
+  countyName char(50) DEFAULT NULL,
+  altitude char(1) DEFAULT NULL,
+  GPAFract float DEFAULT NULL,
+  barometricPressure float DEFAULT NULL,
+  barometricPressureCV float DEFAULT NULL,
+  PRIMARY KEY (countyID),
+  KEY countyID (countyID,stateID),
+  KEY stateID (stateID,countyID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The County is used by these modules: + +

CountyYear table

+
+CREATE TABLE countyyear (
+  countyID int(11) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  refuelingVaporProgramAdjust float NOT NULL DEFAULT 0,
+  refuelingSpillProgramAdjust float NOT NULL DEFAULT 0,
+  PRIMARY KEY (countyID,yearID),
+  KEY countyID (countyID),
+  KEY yearID (yearID),
+  KEY yearID_2 (yearID,countyID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The CountyYear is used by these modules: + +

CrankcaseEmissionRatio table

+
+CREATE TABLE crankcaseemissionratio (
+  polProcessID int(11) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  crankcaseRatio float NOT NULL,
+  crankcaseRatioCV float DEFAULT NULL,
+  PRIMARY KEY (polProcessID,minModelYearID,maxModelYearID,sourceTypeID,fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The CrankcaseEmissionRatio is used by these modules: + +

criteriaRatio table

+
+CREATE TABLE criteriaratio (
+  fuelTypeID smallint(6) NOT NULL,
+  fuelFormulationID smallint(6) NOT NULL,
+  polProcessID int(11) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  ageID smallint(6) NOT NULL,
+  ratio double DEFAULT NULL,
+  ratioGPA double DEFAULT NULL,
+  ratioNoSulfur double DEFAULT NULL,
+  PRIMARY KEY (fuelTypeID,fuelFormulationID,polProcessID,pollutantID,processID,sourceTypeID,modelYearID,ageID),
+  KEY crFuelFormulation (polProcessID,fuelFormulationID),
+  KEY crCommon (polProcessID,modelYearID,ageID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The criteriaRatio is used by these modules: + +

CumTVVCoeffs table

+
+CREATE TABLE cumtvvcoeffs (
+  regClassID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  ageGroupID smallint(6) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  tvvTermA float DEFAULT NULL,
+  tvvTermB float DEFAULT NULL,
+  tvvTermC float DEFAULT NULL,
+  tvvTermACV float DEFAULT NULL,
+  tvvTermBCV float DEFAULT NULL,
+  tvvTermCCV float DEFAULT NULL,
+  tvvTermAIM float DEFAULT NULL,
+  tvvTermBIM float DEFAULT NULL,
+  tvvTermCIM float DEFAULT NULL,
+  tvvTermAIMCV float DEFAULT NULL,
+  tvvTermBIMCV float DEFAULT NULL,
+  tvvTermCIMCV float DEFAULT NULL,
+  backPurgeFactor double DEFAULT NULL,
+  averageCanisterCapacity double DEFAULT NULL,
+  tvvEquation varchar(4096) NOT NULL DEFAULT '',
+  leakEquation varchar(4096) NOT NULL DEFAULT '',
+  leakFraction double DEFAULT NULL,
+  tankSize double DEFAULT NULL,
+  tankFillFraction double DEFAULT NULL,
+  leakFractionIM double DEFAULT NULL,
+  PRIMARY KEY (regClassID,modelYearGroupID,ageGroupID,polProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The CumTVVCoeffs is used by these modules: + +

DataSource table

+
+CREATE TABLE datasource (
+  DataSourceId smallint(6) NOT NULL DEFAULT 0,
+  Author char(25) DEFAULT NULL,
+  Date date DEFAULT NULL,
+  Sponsor char(30) DEFAULT NULL,
+  DocumentID char(150) DEFAULT NULL,
+  QualityLevel char(1) DEFAULT NULL,
+  PRIMARY KEY (DataSourceId)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

DayOfAnyWeek table

+
+CREATE TABLE dayofanyweek (
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  dayName char(10) DEFAULT NULL,
+  noOfRealDays float NOT NULL DEFAULT 1,
+  PRIMARY KEY (dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The DayOfAnyWeek is used by these modules: + +

DayVMTFraction table

+
+CREATE TABLE dayvmtfraction (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  dayVMTFraction float DEFAULT NULL,
+  PRIMARY KEY (dayID,monthID,roadTypeID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY monthID (monthID),
+  KEY roadTypeID (roadTypeID),
+  KEY dayID (dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The DayVMTFraction is used by these modules: + +

dioxinemissionrate table

+
+CREATE TABLE dioxinemissionrate (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  units char(30) DEFAULT NULL,
+  meanBaseRate double DEFAULT NULL,
+  meanBaseRateCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID),
+  UNIQUE KEY XPKDioxinEmissionRate (polProcessID,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The dioxinemissionrate is used by these modules: + +

DriveSchedule table

+
+CREATE TABLE driveschedule (
+  driveScheduleID smallint(6) NOT NULL DEFAULT 0,
+  averageSpeed float NOT NULL DEFAULT 0,
+  driveScheduleName char(50) DEFAULT NULL,
+  PRIMARY KEY (driveScheduleID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The DriveSchedule is used by these modules: + +

DriveScheduleAssoc table

+
+CREATE TABLE drivescheduleassoc (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  isRamp char(1) NOT NULL DEFAULT '',
+  driveScheduleID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (driveScheduleID,isRamp,roadTypeID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY roadTypeID (roadTypeID),
+  KEY isRamp (isRamp),
+  KEY driveScheduleID (driveScheduleID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The DriveScheduleAssoc is used by these modules: + +

DriveScheduleSecond table

+
+CREATE TABLE driveschedulesecond (
+  driveScheduleID smallint(6) NOT NULL DEFAULT 0,
+  second smallint(6) NOT NULL DEFAULT 0,
+  speed float DEFAULT NULL,
+  PRIMARY KEY (driveScheduleID,second),
+  KEY driveScheduleID (driveScheduleID),
+  KEY second (second)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The DriveScheduleSecond is used by these modules: + +

driveScheduleSecondLink table

+
+CREATE TABLE driveschedulesecondlink (
+  linkID int(11) NOT NULL,
+  secondID smallint(6) NOT NULL,
+  speed float DEFAULT NULL,
+  grade float NOT NULL DEFAULT 0,
+  PRIMARY KEY (linkID,secondID),
+  KEY secondID (secondID,linkID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The driveScheduleSecondLink is used by these modules: + +

e10FuelProperties table

+
+CREATE TABLE e10fuelproperties (
+  fuelRegionID int(11) NOT NULL,
+  fuelYearID int(11) NOT NULL,
+  monthGroupID smallint(6) NOT NULL,
+  RVP double DEFAULT NULL,
+  sulfurLevel double DEFAULT NULL,
+  ETOHVolume double DEFAULT NULL,
+  MTBEVolume double DEFAULT NULL,
+  ETBEVolume double DEFAULT NULL,
+  TAMEVolume double DEFAULT NULL,
+  aromaticContent double DEFAULT NULL,
+  olefinContent double DEFAULT NULL,
+  benzeneContent double DEFAULT NULL,
+  e200 double DEFAULT NULL,
+  e300 double DEFAULT NULL,
+  BioDieselEsterVolume double DEFAULT NULL,
+  CetaneIndex double DEFAULT NULL,
+  PAHContent double DEFAULT NULL,
+  T50 double DEFAULT NULL,
+  T90 double DEFAULT NULL,
+  PRIMARY KEY (fuelRegionID,fuelYearID,monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

EmissionProcess table

+
+CREATE TABLE emissionprocess (
+  processID smallint(6) NOT NULL DEFAULT 0,
+  processName char(50) DEFAULT NULL,
+  SCCProcID char(1) DEFAULT NULL,
+  occursOnRealRoads char(1) NOT NULL DEFAULT 'Y',
+  shortName varchar(50) DEFAULT NULL,
+  processDisplayGroupID smallint(6) unsigned DEFAULT NULL,
+  isAffectedByOnroad tinyint(1) DEFAULT 1,
+  isAffectedByNonroad tinyint(1) DEFAULT 0,
+  PRIMARY KEY (processID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The EmissionProcess is used by these modules: + +

EmissionRate table

+
+CREATE TABLE emissionrate (
+  sourceBinID bigint(20) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  meanBaseRate float DEFAULT NULL,
+  meanBaseRateCV float DEFAULT NULL,
+  meanBaseRateIM float DEFAULT NULL,
+  meanBaseRateIMCV float DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (opModeID,polProcessID,sourceBinID),
+  KEY sourceBinID (sourceBinID),
+  KEY polProcessID (polProcessID),
+  KEY opModeID (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The EmissionRate is used by these modules: + +

EmissionRateAdjustment table

+
+CREATE TABLE emissionrateadjustment (
+  polProcessID int(11) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  regClassID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  beginModelYearID smallint(6) NOT NULL,
+  endModelYearID smallint(6) NOT NULL,
+  emissionRateAdjustment double DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,sourceTypeID,fuelTypeID,regClassID,beginModelYearID,endModelYearID),
+  KEY polProcessID (polProcessID,beginModelYearID,endModelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The EmissionRateAdjustment is used by these modules: + +

EmissionRateByAge table

+
+CREATE TABLE emissionratebyage (
+  sourceBinID bigint(20) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  ageGroupID smallint(6) NOT NULL DEFAULT 0,
+  meanBaseRate float DEFAULT NULL,
+  meanBaseRateCV float DEFAULT NULL,
+  meanBaseRateIM float DEFAULT NULL,
+  meanBaseRateIMCV float DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (ageGroupID,opModeID,polProcessID,sourceBinID),
+  UNIQUE KEY XPKEmissionRateByAge (sourceBinID,polProcessID,opModeID,ageGroupID),
+  KEY polProcessID (polProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The EmissionRateByAge is used by these modules: + +

EngineSize table

+
+CREATE TABLE enginesize (
+  engSizeID int(11) NOT NULL,
+  engSizeName char(50) DEFAULT NULL,
+  PRIMARY KEY (engSizeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

enginetech table

+
+CREATE TABLE enginetech (
+  engTechID smallint(6) NOT NULL DEFAULT 0,
+  tierID smallint(6) DEFAULT 99,
+  strokes smallint(6) DEFAULT 99,
+  engTechName char(50) DEFAULT NULL,
+  engTechDesc char(80) DEFAULT NULL,
+  PRIMARY KEY (engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+

ETOHBin table

+
+CREATE TABLE etohbin (
+  etohThreshID smallint(6) NOT NULL DEFAULT 0,
+  etohThreshLow float DEFAULT NULL,
+  etohThreshHigh float DEFAULT NULL,
+  etohNominalValue float DEFAULT NULL,
+  PRIMARY KEY (etohThreshID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ETOHBin is used by these modules: + +

evapRVPTemperatureAdjustment table

+
+CREATE TABLE evaprvptemperatureadjustment (
+  processID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  RVP double NOT NULL,
+  adjustTerm3 double NOT NULL DEFAULT 0,
+  adjustTerm2 double NOT NULL DEFAULT 0,
+  adjustTerm1 double NOT NULL DEFAULT 0,
+  adjustConstant double NOT NULL DEFAULT 0,
+  PRIMARY KEY (processID,fuelTypeID,RVP),
+  KEY RVP (RVP,processID,fuelTypeID),
+  KEY RVP_2 (RVP,fuelTypeID,processID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The evapRVPTemperatureAdjustment is used by these modules: + +

evapTemperatureAdjustment table

+
+CREATE TABLE evaptemperatureadjustment (
+  processID smallint(6) NOT NULL,
+  tempAdjustTerm3 double NOT NULL DEFAULT 0,
+  tempAdjustTerm2 double NOT NULL DEFAULT 0,
+  tempAdjustTerm1 double NOT NULL DEFAULT 0,
+  tempAdjustConstant double NOT NULL DEFAULT 0,
+  PRIMARY KEY (processID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The evapTemperatureAdjustment is used by these modules: + +

ExtendedIdleHours table

+
+CREATE TABLE extendedidlehours (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  extendedIdleHours float DEFAULT NULL,
+  extendedIdleHoursCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (ageID,hourDayID,monthID,sourceTypeID,yearID,zoneID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY monthID (monthID),
+  KEY yearID (yearID),
+  KEY ageID (ageID),
+  KEY zoneID (zoneID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ExtendedIdleHours is used by these modules: + +

FuelEngTechAssoc table

+
+CREATE TABLE fuelengtechassoc (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  engTechID smallint(6) NOT NULL DEFAULT 0,
+  category char(50) NOT NULL DEFAULT '',
+  categoryDisplayOrder smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (engTechID,fuelTypeID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

FuelFormulation table

+
+CREATE TABLE fuelformulation (
+  fuelFormulationID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  RVP float DEFAULT NULL,
+  sulfurLevel float NOT NULL DEFAULT 30,
+  ETOHVolume float DEFAULT NULL,
+  MTBEVolume float DEFAULT NULL,
+  ETBEVolume float DEFAULT NULL,
+  TAMEVolume float DEFAULT NULL,
+  aromaticContent float DEFAULT NULL,
+  olefinContent float DEFAULT NULL,
+  benzeneContent float DEFAULT NULL,
+  e200 float DEFAULT NULL,
+  e300 float DEFAULT NULL,
+  volToWtPercentOxy float DEFAULT NULL,
+  BioDieselEsterVolume float DEFAULT NULL,
+  CetaneIndex float DEFAULT NULL,
+  PAHContent float DEFAULT NULL,
+  T50 float DEFAULT NULL,
+  T90 float DEFAULT NULL,
+  PRIMARY KEY (fuelFormulationID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelFormulation is used by these modules: + +

FuelModelName table

+
+CREATE TABLE fuelmodelname (
+  fuelModelID smallint(6) NOT NULL DEFAULT 0,
+  fuelModelName varchar(50) NOT NULL DEFAULT '',
+  fuelModelAbbreviation varchar(10) NOT NULL DEFAULT '',
+  calculationEngines varchar(200) NOT NULL DEFAULT '',
+  PRIMARY KEY (fuelModelID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelModelName is used by these modules: + +

FuelModelWtFactor table

+
+CREATE TABLE fuelmodelwtfactor (
+  fuelModelID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  fuelModelWtFactor float DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (fuelModelID,modelYearGroupID,ageID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelModelWtFactor is used by these modules: + +

FuelModelYearGroup table

+
+CREATE TABLE fuelmodelyeargroup (
+  fuelMYGroupID int(11) NOT NULL DEFAULT 0,
+  fuelMYGroupName char(100) DEFAULT NULL,
+  fuelMYGroupFunction char(200) DEFAULT NULL,
+  maxSulfurLevel float DEFAULT NULL,
+  maxSulfurLevelCV float DEFAULT NULL,
+  maxSulfurLevelGPA float DEFAULT NULL,
+  maxSulfurLevelGPACV float DEFAULT NULL,
+  PRIMARY KEY (fuelMYGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

FuelParameterName table

+
+CREATE TABLE fuelparametername (
+  fuelParameterID smallint(6) NOT NULL DEFAULT 0,
+  fuelParameterName varchar(25) NOT NULL DEFAULT '',
+  fuelParameterUnits varchar(20) NOT NULL DEFAULT '',
+  fuelParameterExpression varchar(500) NOT NULL DEFAULT '',
+  PRIMARY KEY (fuelParameterID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelParameterName is used by these modules: + +

FuelSubtype table

+
+CREATE TABLE fuelsubtype (
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeDesc char(50) DEFAULT NULL,
+  fuelSubtypePetroleumFraction float DEFAULT NULL,
+  fuelSubtypePetroleumFractionCV float DEFAULT NULL,
+  fuelSubtypeFossilFraction float DEFAULT NULL,
+  fuelSubtypeFossilFractionCV float DEFAULT NULL,
+  carbonContent float DEFAULT NULL,
+  oxidationFraction float DEFAULT NULL,
+  carbonContentCV float DEFAULT NULL,
+  oxidationFractionCV float DEFAULT NULL,
+  energyContent float DEFAULT NULL,
+  PRIMARY KEY (fuelSubtypeID),
+  KEY fuelTypeID (fuelTypeID,fuelSubtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelSubtype is used by these modules: + +

FuelSupply table

+
+CREATE TABLE fuelsupply (
+  fuelRegionID int(11) NOT NULL DEFAULT 0,
+  fuelYearID smallint(6) NOT NULL DEFAULT 0,
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  fuelFormulationID smallint(6) NOT NULL DEFAULT 0,
+  marketShare float DEFAULT NULL,
+  marketShareCV float DEFAULT NULL,
+  PRIMARY KEY (fuelRegionID,fuelFormulationID,monthGroupID,fuelYearID),
+  KEY fuelRegionID (fuelRegionID),
+  KEY yearID (fuelYearID),
+  KEY monthGroupID (monthGroupID),
+  KEY fuelSubtypeID (fuelFormulationID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelSupply is used by these modules: + +

FuelSupplyYear table

+
+CREATE TABLE fuelsupplyyear (
+  fuelYearID int(11) NOT NULL DEFAULT 0,
+  PRIMARY KEY (fuelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

FuelType table

+
+CREATE TABLE fueltype (
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  defaultFormulationID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeDesc char(50) DEFAULT NULL,
+  humidityCorrectionCoeff float DEFAULT NULL,
+  humidityCorrectionCoeffCV float DEFAULT NULL,
+  fuelDensity float DEFAULT NULL,
+  subjectToEvapCalculations char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (fuelTypeID),
+  KEY subjectToEvapCalculations (subjectToEvapCalculations,fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FuelType is used by these modules: + +

fuelUsageFraction table

+
+CREATE TABLE fuelusagefraction (
+  countyID int(11) NOT NULL,
+  fuelYearID int(11) NOT NULL,
+  modelYearGroupID int(11) NOT NULL,
+  sourceBinFuelTypeID smallint(6) NOT NULL,
+  fuelSupplyFuelTypeID smallint(6) NOT NULL,
+  usageFraction double DEFAULT NULL,
+  PRIMARY KEY (countyID,fuelYearID,modelYearGroupID,sourceBinFuelTypeID,fuelSupplyFuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The fuelUsageFraction is used by these modules: + +

fuelWizardFactors table

+
+CREATE TABLE fuelwizardfactors (
+  adjustedParameter varchar(4) NOT NULL,
+  minLevel double NOT NULL,
+  maxLevel double NOT NULL,
+  functionType varchar(4) NOT NULL,
+  monthGroupID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  RVP_factor double DEFAULT NULL,
+  sulf_factor double DEFAULT NULL,
+  ETOH_factor double DEFAULT NULL,
+  arom_factor double DEFAULT NULL,
+  olef_factor double DEFAULT NULL,
+  benz_factor double DEFAULT NULL,
+  e200_factor double DEFAULT NULL,
+  e300_factor double DEFAULT NULL,
+  T50_factor double DEFAULT NULL,
+  T90_factor double DEFAULT NULL,
+  units varchar(6) DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (fuelTypeID,monthGroupID,adjustedParameter,minLevel,maxLevel,functionType)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

FullACAdjustment table

+
+CREATE TABLE fullacadjustment (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  fullACAdjustment float DEFAULT NULL,
+  fullACAdjustmentCV float DEFAULT NULL,
+  PRIMARY KEY (opModeID,polProcessID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY polProcessID (polProcessID),
+  KEY opModeID (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The FullACAdjustment is used by these modules: + +

generalFuelRatio table

+
+CREATE TABLE generalfuelratio (
+  fuelTypeID smallint(6) NOT NULL,
+  fuelFormulationID smallint(6) NOT NULL,
+  polProcessID int(11) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  minModelYearID smallint(6) NOT NULL DEFAULT 1960,
+  maxModelYearID smallint(6) NOT NULL DEFAULT 2050,
+  minAgeID smallint(6) NOT NULL DEFAULT 0,
+  maxAgeID smallint(6) NOT NULL DEFAULT 30,
+  sourceTypeID smallint(6) unsigned NOT NULL,
+  fuelEffectRatio double NOT NULL DEFAULT 0,
+  fuelEffectRatioGPA double NOT NULL DEFAULT 0,
+  PRIMARY KEY (fuelTypeID,fuelFormulationID,polProcessID,pollutantID,processID,minModelYearID,maxModelYearID,minAgeID,maxAgeID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The generalFuelRatio is used by these modules: + +

generalFuelRatioExpression table

+
+CREATE TABLE generalfuelratioexpression (
+  fuelTypeID smallint(6) NOT NULL,
+  polProcessID int(11) NOT NULL,
+  minModelYearID int(11) NOT NULL DEFAULT 1960,
+  maxModelYearID int(11) NOT NULL DEFAULT 2050,
+  minAgeID int(11) NOT NULL DEFAULT 0,
+  maxAgeID int(11) NOT NULL DEFAULT 30,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelEffectRatioExpression varchar(32000) NOT NULL DEFAULT '',
+  fuelEffectRatioGPAExpression varchar(32000) NOT NULL DEFAULT '',
+  PRIMARY KEY (fuelTypeID,polProcessID,minModelYearID,maxModelYearID,minAgeID,maxAgeID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The generalFuelRatioExpression is used by these modules: + +

GREETManfAndDisposal table

+
+CREATE TABLE greetmanfanddisposal (
+  GREETVehicleType smallint(6) NOT NULL DEFAULT 0,
+  modelYearID smallint(6) NOT NULL DEFAULT 0,
+  pollutantID smallint(6) NOT NULL DEFAULT 0,
+  EmissionStage char(4) NOT NULL DEFAULT '',
+  emissionPerVehicle float DEFAULT NULL,
+  PRIMARY KEY (EmissionStage,GREETVehicleType,modelYearID,pollutantID),
+  UNIQUE KEY XPKGREETManfAndDisposal (GREETVehicleType,modelYearID,pollutantID,EmissionStage),
+  KEY GREETVehicleType (GREETVehicleType),
+  KEY modelYearID (modelYearID),
+  KEY pollutantID (pollutantID),
+  KEY EmissionStage (EmissionStage)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

GREETWellToPump table

+
+CREATE TABLE greetwelltopump (
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  pollutantID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  emissionRate float DEFAULT NULL,
+  emissionRateUncertainty float DEFAULT NULL,
+  PRIMARY KEY (fuelSubtypeID,pollutantID,yearID),
+  KEY yearID (yearID),
+  KEY pollutantID (pollutantID),
+  KEY fuelSubtypeID (fuelSubtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The GREETWellToPump is used by these modules: + +

Grid table

+
+CREATE TABLE grid (
+  gridID int(11) NOT NULL DEFAULT 0,
+  PRIMARY KEY (gridID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

GridZoneAssoc table

+
+CREATE TABLE gridzoneassoc (
+  zoneID int(11) NOT NULL DEFAULT 0,
+  gridID int(11) NOT NULL DEFAULT 0,
+  gridAllocFactor float DEFAULT NULL,
+  PRIMARY KEY (gridID,zoneID),
+  KEY zoneID (zoneID),
+  KEY gridID (gridID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

HCPermeationCoeff table

+
+CREATE TABLE hcpermeationcoeff (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  etohThreshID smallint(6) NOT NULL DEFAULT 0,
+  fuelMYGroupID int(11) NOT NULL DEFAULT 0,
+  fuelAdjustment float DEFAULT NULL,
+  fuelAdjustmentGPA float DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,etohThreshID,fuelMYGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HCPermeationCoeff is used by these modules: + +

HCSpeciation table

+
+CREATE TABLE hcspeciation (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelMYGroupID int(11) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  etohThreshID smallint(6) NOT NULL DEFAULT 0,
+  oxyThreshID smallint(6) NOT NULL DEFAULT 0,
+  speciationConstant float DEFAULT NULL,
+  oxySpeciation float DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelMYGroupID,fuelSubtypeID,etohThreshID,oxyThreshID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HCSpeciation is used by these modules: + +

hotellingActivityDistribution table

+
+CREATE TABLE hotellingactivitydistribution (
+  beginModelYearID smallint(6) NOT NULL,
+  endModelYearID smallint(6) NOT NULL,
+  opModeID smallint(6) NOT NULL,
+  opModeFraction float NOT NULL,
+  PRIMARY KEY (beginModelYearID,endModelYearID,opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The hotellingActivityDistribution is used by these modules: + +

hotellingCalendarYear table

+
+CREATE TABLE hotellingcalendaryear (
+  yearID smallint(6) NOT NULL,
+  hotellingRate double NOT NULL,
+  PRIMARY KEY (yearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The hotellingCalendarYear is used by these modules: + +

hotellingHours table

+
+CREATE TABLE hotellinghours (
+  sourceTypeID smallint(6) NOT NULL,
+  hourDayID smallint(6) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  yearID smallint(6) NOT NULL,
+  ageID smallint(6) NOT NULL,
+  zoneID int(11) NOT NULL,
+  hotellingHours double DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY monthID (monthID),
+  KEY yearID (yearID),
+  KEY ageID (ageID),
+  KEY zoneID (zoneID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The hotellingHours is used by these modules: + +

HourDay table

+
+CREATE TABLE hourday (
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (hourDayID),
+  KEY dayID (dayID),
+  KEY hourID (hourID),
+  KEY dayID_2 (dayID,hourID,hourDayID),
+  KEY hourID_2 (hourID,dayID,hourDayID),
+  KEY hourDayID (hourDayID,dayID,hourID),
+  KEY hourDayID_2 (hourDayID,hourID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HourDay is used by these modules: + +

HourOfAnyDay table

+
+CREATE TABLE hourofanyday (
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  hourname char(50) DEFAULT NULL,
+  PRIMARY KEY (hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HourOfAnyDay is used by these modules: + +

HourVMTFraction table

+
+CREATE TABLE hourvmtfraction (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  hourVMTFraction float DEFAULT NULL,
+  PRIMARY KEY (dayID,hourID,roadTypeID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY roadTypeID (roadTypeID),
+  KEY dayID (dayID),
+  KEY hourID (hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HourVMTFraction is used by these modules: + +

HPMSVtype table

+
+CREATE TABLE hpmsvtype (
+  HPMSVtypeID smallint(6) NOT NULL DEFAULT 0,
+  HPMSVtypeName char(50) DEFAULT NULL,
+  PRIMARY KEY (HPMSVtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

HPMSVtypeDay table

+
+CREATE TABLE hpmsvtypeday (
+  yearID smallint(6) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  HPMSVtypeID smallint(6) NOT NULL,
+  VMT double NOT NULL,
+  PRIMARY KEY (yearID,monthID,dayID,HPMSVtypeID),
+  KEY HPMSVtypeID (HPMSVtypeID,yearID,monthID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HPMSVtypeDay is used by these modules: + +

HPMSVtypeYear table

+
+CREATE TABLE hpmsvtypeyear (
+  HPMSVtypeID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  VMTGrowthFactor double DEFAULT NULL,
+  HPMSBaseYearVMT double DEFAULT NULL,
+  PRIMARY KEY (HPMSVtypeID,yearID),
+  KEY HPMSVtypeID (HPMSVtypeID),
+  KEY yearID (yearID),
+  KEY yearID_2 (yearID,HPMSVtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The HPMSVtypeYear is used by these modules: + +

IMCoverage table

+
+CREATE TABLE imcoverage (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  stateID smallint(6) NOT NULL DEFAULT 0,
+  countyID int(11) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  IMProgramID smallint(6) NOT NULL DEFAULT 0,
+  begModelYearID smallint(6) NOT NULL DEFAULT 0,
+  endModelYearID smallint(6) NOT NULL DEFAULT 0,
+  inspectFreq smallint(6) DEFAULT NULL,
+  testStandardsID smallint(6) NOT NULL DEFAULT 0,
+  useIMyn char(1) NOT NULL DEFAULT 'Y',
+  complianceFactor float DEFAULT NULL,
+  PRIMARY KEY (polProcessID,stateID,countyID,yearID,sourceTypeID,fuelTypeID,IMProgramID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The IMCoverage is used by these modules: + +

IMFactor table

+
+CREATE TABLE imfactor (
+  polProcessID int(11) NOT NULL,
+  inspectFreq smallint(6) NOT NULL,
+  testStandardsID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  IMModelYearGroupID int(8) NOT NULL,
+  ageGroupID smallint(6) NOT NULL,
+  IMFactor float DEFAULT NULL,
+  PRIMARY KEY (polProcessID,inspectFreq,testStandardsID,sourceTypeID,fuelTypeID,IMModelYearGroupID,ageGroupID),
+  UNIQUE KEY XPKIMFactor (polProcessID,inspectFreq,testStandardsID,sourceTypeID,fuelTypeID,IMModelYearGroupID,ageGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The IMFactor is used by these modules: + +

imInspectFreq table

+
+CREATE TABLE iminspectfreq (
+  inspectFreq smallint(6) NOT NULL,
+  inspectFreqDesc char(50) DEFAULT NULL,
+  PRIMARY KEY (inspectFreq),
+  UNIQUE KEY XPKIMInspectFreq (inspectFreq)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

IMModelYearGroup table

+
+CREATE TABLE immodelyeargroup (
+  IMModelYearGroupID int(8) NOT NULL,
+  IMModelYearGroupDesc char(40) NOT NULL,
+  PRIMARY KEY (IMModelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

importStartsOpModeDistribution table

+
+CREATE TABLE importstartsopmodedistribution (
+  sourceTypeID smallint(6) NOT NULL,
+  hourDayID smallint(6) NOT NULL,
+  linkID int(11) NOT NULL,
+  polProcessID int(11) NOT NULL,
+  opModeID smallint(6) NOT NULL,
+  opModeFraction float DEFAULT NULL,
+  opModeFractionCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (sourceTypeID,hourDayID,linkID,polProcessID,opModeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY linkID (linkID),
+  KEY polProcessID (polProcessID),
+  KEY opModeID (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

IMTestStandards table

+
+CREATE TABLE imteststandards (
+  testStandardsID smallint(6) NOT NULL,
+  testStandardsDesc char(50) NOT NULL,
+  shortName varchar(50) DEFAULT NULL,
+  PRIMARY KEY (testStandardsID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

integratedSpeciesSet table

+
+CREATE TABLE integratedspeciesset (
+  mechanismID smallint(6) NOT NULL,
+  integratedSpeciesSetID smallint(6) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  useISSyn varchar(2) DEFAULT NULL,
+  PRIMARY KEY (mechanismID,integratedSpeciesSetID,pollutantID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The integratedSpeciesSet is used by these modules: + +

integratedSpeciesSetName table

+
+CREATE TABLE integratedspeciessetname (
+  integratedSpeciesSetID smallint(6) NOT NULL,
+  integratedSpeciesSetName varchar(40) DEFAULT NULL,
+  PRIMARY KEY (integratedSpeciesSetID),
+  KEY integratedSpeciesSetName (integratedSpeciesSetName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

Link table

+
+CREATE TABLE link (
+  linkID int(11) NOT NULL DEFAULT 0,
+  countyID int(11) NOT NULL DEFAULT 0,
+  zoneID int(11) DEFAULT NULL,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  linkLength float DEFAULT NULL,
+  linkVolume float DEFAULT NULL,
+  linkAvgSpeed float DEFAULT NULL,
+  linkDescription varchar(50) DEFAULT NULL,
+  linkAvgGrade float DEFAULT NULL,
+  PRIMARY KEY (linkID),
+  KEY countyID (countyID),
+  KEY zoneID (zoneID),
+  KEY roadTypeID (roadTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The Link is used by these modules: + +

LinkAverageSpeed table

+
+CREATE TABLE linkaveragespeed (
+  linkID int(11) NOT NULL DEFAULT 0,
+  averageSpeed float DEFAULT NULL,
+  PRIMARY KEY (linkID),
+  KEY linkID (linkID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The LinkAverageSpeed is used by these modules: + +

LinkHourVMTFraction table

+
+CREATE TABLE linkhourvmtfraction (
+  linkID int(11) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  VMTFraction float DEFAULT NULL,
+  PRIMARY KEY (dayID,hourID,linkID,monthID,sourceTypeID),
+  KEY linkID (linkID),
+  KEY monthID (monthID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY dayID (dayID),
+  KEY hourID (hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

linkSourceTypeHour table

+
+CREATE TABLE linksourcetypehour (
+  linkID int(11) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  sourceTypeHourFraction float DEFAULT NULL,
+  PRIMARY KEY (linkID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID,linkID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The linkSourceTypeHour is used by these modules: + +

lumpedSpeciesName table

+
+CREATE TABLE lumpedspeciesname (
+  lumpedSpeciesID smallint(6) NOT NULL,
+  lumpedSpeciesName varchar(20) DEFAULT NULL,
+  PRIMARY KEY (lumpedSpeciesID),
+  KEY lumpedSpeciesName (lumpedSpeciesName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The lumpedSpeciesName is used by these modules: + +

M6SulfurCoeff table

+
+CREATE TABLE m6sulfurcoeff (
+  pollutantID smallint(6) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  minSulfur double NOT NULL,
+  sulfurLongCoeff double DEFAULT NULL,
+  sulfurIRFactor double DEFAULT NULL,
+  maxIRFactorSulfur double DEFAULT NULL,
+  PRIMARY KEY (pollutantID,minModelYearID,maxModelYearID),
+  KEY pollutantID (pollutantID,minModelYearID,maxModelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

MeanFuelParameters table

+
+CREATE TABLE meanfuelparameters (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  fuelParameterID smallint(6) NOT NULL DEFAULT 0,
+  baseValue float DEFAULT NULL,
+  centeringValue float DEFAULT NULL,
+  stdDevValue float DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID,fuelParameterID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The MeanFuelParameters is used by these modules: + +

mechanismName table

+
+CREATE TABLE mechanismname (
+  mechanismID smallint(6) NOT NULL,
+  mechanismName varchar(40) DEFAULT NULL,
+  PRIMARY KEY (mechanismID),
+  KEY mechanismName (mechanismName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

metalemissionrate table

+
+CREATE TABLE metalemissionrate (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  units char(20) DEFAULT NULL,
+  meanBaseRate double DEFAULT NULL,
+  meanBaseRateCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,sourceTypeID,modelYearGroupID),
+  UNIQUE KEY XPKMetalEmissionRate (polProcessID,fuelTypeID,sourceTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The metalemissionrate is used by these modules: + +

methaneTHCRatio table

+
+CREATE TABLE methanethcratio (
+  processID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  ageGroupID smallint(6) NOT NULL DEFAULT 0,
+  CH4THCRatio double DEFAULT NULL,
+  CH4THCRatioCV double DEFAULT NULL,
+  PRIMARY KEY (processID,fuelTypeID,sourceTypeID,modelYearGroupID,ageGroupID),
+  UNIQUE KEY XPKMethaneTHCRatio (processID,fuelTypeID,sourceTypeID,modelYearGroupID,ageGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The methaneTHCRatio is used by these modules: + +

minorhapratio table

+
+CREATE TABLE minorhapratio (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  atRatio double DEFAULT NULL,
+  atRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (fuelTypeID,fuelSubtypeID,polProcessID,modelYearGroupID),
+  UNIQUE KEY XPKMinorHAPRatio (fuelTypeID,fuelSubtypeID,polProcessID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The minorhapratio is used by these modules: + +

ModelYear table

+
+CREATE TABLE modelyear (
+  modelYearID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (modelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ModelYear is used by these modules: + +

modelYearCutPoints table

+
+CREATE TABLE modelyearcutpoints (
+  cutPointName varchar(100) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  PRIMARY KEY (cutPointName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The modelYearCutPoints is used by these modules: + +

ModelYearGroup table

+
+CREATE TABLE modelyeargroup (
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  shortModYrGroupID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupName char(50) DEFAULT NULL,
+  modelYearGroupStartYear smallint(6) DEFAULT NULL,
+  modelYearGroupEndYear smallint(6) DEFAULT NULL,
+  PRIMARY KEY (modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ModelYearGroup is used by these modules: + +

modelYearMapping table

+
+CREATE TABLE modelyearmapping (
+  startUserModelYear smallint(6) NOT NULL,
+  endUserModelYear smallint(6) NOT NULL,
+  startStandardModelYear smallint(6) NOT NULL,
+  endStandardModelYear smallint(6) NOT NULL,
+  PRIMARY KEY (startUserModelYear,endUserModelYear)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The modelYearMapping is used by these modules: + +

MonthGroupHour table

+
+CREATE TABLE monthgrouphour (
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  ACActivityTermA float DEFAULT NULL,
+  ACActivityTermACV float DEFAULT NULL,
+  ACActivityTermB float DEFAULT NULL,
+  ACActivityTermBCV float DEFAULT NULL,
+  ACActivityTermC float DEFAULT NULL,
+  ACActivityTermCCV float DEFAULT NULL,
+  PRIMARY KEY (hourID,monthGroupID),
+  KEY monthGroupID (monthGroupID),
+  KEY hourID (hourID),
+  KEY hourID_2 (hourID,monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The MonthGroupHour is used by these modules: + +

MonthGroupOfAnyYear table

+
+CREATE TABLE monthgroupofanyyear (
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  monthGroupName char(50) DEFAULT NULL,
+  PRIMARY KEY (monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

MonthofAnyYear table

+
+CREATE TABLE monthofanyyear (
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  monthName char(10) DEFAULT NULL,
+  noOfDays smallint(6) DEFAULT NULL,
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (monthID),
+  KEY monthGroupID (monthGroupID),
+  KEY monthGroupID_2 (monthGroupID,monthID),
+  KEY monthID (monthID,monthGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The MonthofAnyYear is used by these modules: + +

MonthVMTFraction table

+
+CREATE TABLE monthvmtfraction (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  monthVMTFraction float DEFAULT NULL,
+  PRIMARY KEY (monthID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY monthID (monthID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The MonthVMTFraction is used by these modules: + +

NONO2Ratio table

+
+CREATE TABLE nono2ratio (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  NOxRatio float DEFAULT NULL,
+  NOxRatioCV float DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,sourceTypeID,fuelTypeID,modelYearGroupID),
+  UNIQUE KEY XPKNONO2Ratio (polProcessID,sourceTypeID,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The NONO2Ratio is used by these modules: + +

nrAgeCategory table

+
+CREATE TABLE nragecategory (
+  ageID smallint(6) NOT NULL,
+  ageCategoryName char(50) DEFAULT NULL,
+  PRIMARY KEY (ageID),
+  UNIQUE KEY XPKNRAgeCategory (ageID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nratratio table

+
+CREATE TABLE nratratio (
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  fuelSubtypeID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  atRatio double DEFAULT NULL,
+  atRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processID,engTechID,fuelSubtypeID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nratratio is used by these modules: + +

nrBaseYearEquipPopulation table

+
+CREATE TABLE nrbaseyearequippopulation (
+  sourceTypeID smallint(6) NOT NULL,
+  stateID smallint(6) NOT NULL,
+  population double NOT NULL,
+  NRBaseYearID smallint(6) NOT NULL,
+  PRIMARY KEY (sourceTypeID,stateID),
+  UNIQUE KEY XPKNRBaseYearEquipPopulation (sourceTypeID,stateID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrCrankcaseEmissionRate table

+
+CREATE TABLE nrcrankcaseemissionrate (
+  polProcessID int(11) NOT NULL,
+  SCC char(10) NOT NULL,
+  hpMin smallint(6) NOT NULL,
+  hpMax smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  meanBaseRate float DEFAULT NULL,
+  units varchar(12) DEFAULT NULL,
+  dataSourceID smallint(6) NOT NULL,
+  PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID),
+  UNIQUE KEY XPKnrCrankCaseEmissionRatio (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID),
+  KEY INDEX1 (polProcessID),
+  KEY XPFnrCrankCaseEmissionRatio (polProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrDayAllocation table

+
+CREATE TABLE nrdayallocation (
+  scc char(10) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  dayFraction float NOT NULL,
+  PRIMARY KEY (scc,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrDeterioration table

+
+CREATE TABLE nrdeterioration (
+  polProcessID int(11) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  DFCoefficient float DEFAULT NULL,
+  DFAgeExponent float DEFAULT NULL,
+  emissionCap smallint(6) NOT NULL,
+  PRIMARY KEY (polProcessID,engTechID),
+  UNIQUE KEY XPKNRDeterioration (polProcessID,engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrdioxinemissionrate table

+
+CREATE TABLE nrdioxinemissionrate (
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  engtechID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  units char(30) DEFAULT NULL,
+  meanBaseRate double DEFAULT NULL,
+  meanBaseRateCV double DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processID,fuelTypeID,engtechID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrdioxinemissionrate is used by these modules: + +

nrEmissionRate table

+
+CREATE TABLE nremissionrate (
+  polProcessID int(11) NOT NULL,
+  SCC char(10) NOT NULL,
+  hpMin smallint(6) NOT NULL,
+  hpMax smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  meanBaseRate float DEFAULT NULL,
+  units varchar(12) DEFAULT NULL,
+  dataSourceID smallint(6) NOT NULL,
+  PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrEngtechFraction table

+
+CREATE TABLE nrengtechfraction (
+  SCC char(10) NOT NULL,
+  hpMin smallint(6) NOT NULL,
+  hpMax smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  processGroupID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  NREngTechFraction float DEFAULT NULL,
+  PRIMARY KEY (SCC,hpMin,hpMax,modelYearID,processGroupID,engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrEquipmentType table

+
+CREATE TABLE nrequipmenttype (
+  NREquipTypeID smallint(6) NOT NULL,
+  description char(40) DEFAULT NULL,
+  sectorID smallint(6) NOT NULL,
+  useDefaultScrappage char(1) DEFAULT NULL,
+  surrogateID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (NREquipTypeID),
+  UNIQUE KEY XPKNREquipmentType (NREquipTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrEvapEmissionRate table

+
+CREATE TABLE nrevapemissionrate (
+  polProcessID int(11) NOT NULL,
+  SCC char(10) NOT NULL,
+  hpMin smallint(6) NOT NULL,
+  hpMax smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  meanBaseRate float DEFAULT NULL,
+  units varchar(12) DEFAULT NULL,
+  dataSourceID smallint(6) NOT NULL,
+  PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrFuelSubtype table

+
+CREATE TABLE nrfuelsubtype (
+  fuelSubtypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  fuelSubtypeDesc char(50) DEFAULT NULL,
+  fuelSubtypePetroleumFraction float DEFAULT NULL,
+  fuelSubtypePetroleumFractionCV float DEFAULT NULL,
+  fuelSubtypeFossilFraction float DEFAULT NULL,
+  fuelSubtypeFossilFractionCV float DEFAULT NULL,
+  carbonContent float DEFAULT NULL,
+  oxidationFraction float DEFAULT NULL,
+  carbonContentCV float DEFAULT NULL,
+  oxidationFractionCV float DEFAULT NULL,
+  energyContent float DEFAULT NULL,
+  PRIMARY KEY (fuelSubtypeID),
+  KEY fuelTypeID (fuelTypeID,fuelSubtypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrFuelSupply table

+
+CREATE TABLE nrfuelsupply (
+  fuelRegionID int(11) NOT NULL DEFAULT 0,
+  fuelYearID int(11) NOT NULL DEFAULT 0,
+  monthGroupID smallint(6) NOT NULL DEFAULT 0,
+  fuelFormulationID smallint(6) NOT NULL DEFAULT 0,
+  marketShare float DEFAULT NULL,
+  marketShareCV float DEFAULT NULL,
+  PRIMARY KEY (fuelRegionID,fuelFormulationID,monthGroupID,fuelYearID),
+  KEY countyID (fuelRegionID),
+  KEY yearID (fuelYearID),
+  KEY monthGroupID (monthGroupID),
+  KEY fuelSubtypeID (fuelFormulationID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrFuelType table

+
+CREATE TABLE nrfueltype (
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  defaultFormulationID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeDesc char(50) DEFAULT NULL,
+  humidityCorrectionCoeff float DEFAULT NULL,
+  humidityCorrectionCoeffCV float DEFAULT NULL,
+  fuelDensity float DEFAULT NULL,
+  subjectToEvapCalculations char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrGrowthIndex table

+
+CREATE TABLE nrgrowthindex (
+  growthPatternID smallint(6) NOT NULL,
+  yearID smallint(6) NOT NULL,
+  growthIndex smallint(6) DEFAULT NULL,
+  PRIMARY KEY (growthPatternID,yearID),
+  UNIQUE KEY XPKNRGrowthIndex (growthPatternID,yearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrGrowthPattern table

+
+CREATE TABLE nrgrowthpattern (
+  growthPatternID smallint(6) NOT NULL,
+  description char(80) DEFAULT NULL,
+  PRIMARY KEY (growthPatternID),
+  UNIQUE KEY XPKNRGrowthPattern (growthPatternID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrGrowthPatternFinder table

+
+CREATE TABLE nrgrowthpatternfinder (
+  SCC char(10) NOT NULL,
+  stateID smallint(6) NOT NULL,
+  growthPatternID smallint(6) NOT NULL,
+  PRIMARY KEY (SCC,stateID),
+  UNIQUE KEY XPKNRGrowthPatternFinder (SCC,stateID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrhcspeciation table

+
+CREATE TABLE nrhcspeciation (
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  fuelSubtypeID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  speciationConstant double DEFAULT NULL,
+  speciationConstantCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processID,engTechID,fuelSubtypeID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrhcspeciation is used by these modules: + +

nrHourAllocation table

+
+CREATE TABLE nrhourallocation (
+  NRHourAllocPatternID smallint(6) NOT NULL,
+  hourID smallint(6) NOT NULL,
+  hourFraction float NOT NULL,
+  PRIMARY KEY (NRHourAllocPatternID,hourID),
+  UNIQUE KEY XPKNRHourAllocation (NRHourAllocPatternID,hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrHourAllocPattern table

+
+CREATE TABLE nrhourallocpattern (
+  NRHourAllocPatternID smallint(6) NOT NULL,
+  description char(255) NOT NULL,
+  PRIMARY KEY (NRHourAllocPatternID),
+  UNIQUE KEY XPKNRHourAllocPattern (NRHourAllocPatternID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrHourPatternFinder table

+
+CREATE TABLE nrhourpatternfinder (
+  NREquipTypeID smallint(6) NOT NULL,
+  NRHourAllocPatternID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (NREquipTypeID),
+  UNIQUE KEY XPKNRHourPatternFinder (NREquipTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrhpcategory table

+
+CREATE TABLE nrhpcategory (
+  nrhprangebinid smallint(6) NOT NULL,
+  engtechid smallint(6) NOT NULL,
+  nrhpcategory char(1) DEFAULT NULL,
+  PRIMARY KEY (nrhprangebinid,engtechid)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrhpcategory is used by these modules: + +

nrHPRangeBin table

+
+CREATE TABLE nrhprangebin (
+  NRHPRangeBinID smallint(6) NOT NULL,
+  binName char(20) DEFAULT NULL,
+  hpMin smallint(6) DEFAULT NULL,
+  hpMax smallint(6) DEFAULT NULL,
+  engSizeID smallint(6) NOT NULL,
+  PRIMARY KEY (NRHPRangeBinID),
+  UNIQUE KEY XPKNRHPRangeBin (NRHPRangeBinID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrintegratedspecies table

+
+CREATE TABLE nrintegratedspecies (
+  pollutantID smallint(6) NOT NULL,
+  PRIMARY KEY (pollutantID)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrintegratedspecies is used by these modules: + +

nrmetalemissionrate table

+
+CREATE TABLE nrmetalemissionrate (
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  units char(12) DEFAULT NULL,
+  meanBaseRate double DEFAULT NULL,
+  meanBaseRateCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processID,fuelTypeID,engTechID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrmetalemissionrate is used by these modules: + +

nrmethanethcratio table

+
+CREATE TABLE nrmethanethcratio (
+  processID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  fuelSubtypeID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  CH4THCRatio double DEFAULT NULL,
+  CH4THCRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (processID,fuelSubtypeID,engTechID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrmethanethcratio is used by these modules: + +

nrMonthAllocation table

+
+CREATE TABLE nrmonthallocation (
+  SCC char(10) NOT NULL,
+  stateID smallint(6) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  monthFraction float NOT NULL,
+  PRIMARY KEY (SCC,stateID,monthID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrpahgasratio table

+
+CREATE TABLE nrpahgasratio (
+  pollutantID smallint(6) NOT NULL,
+  processid smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  atratio double DEFAULT NULL,
+  atratioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processid,fuelTypeID,engTechID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrpahgasratio is used by these modules: + +

nrpahparticleratio table

+
+CREATE TABLE nrpahparticleratio (
+  pollutantID smallint(6) NOT NULL,
+  processid smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  nrHPCategory char(1) NOT NULL,
+  atratio double DEFAULT NULL,
+  atratioCV double DEFAULT NULL,
+  datasourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (pollutantID,processid,fuelTypeID,engTechID,nrHPCategory)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+

+The nrpahparticleratio is used by these modules: + +

nrRetrofitFactors table

+
+CREATE TABLE nrretrofitfactors (
+  retrofitStartYear smallint(6) NOT NULL,
+  retrofitEndYear smallint(6) NOT NULL,
+  StartModelYear smallint(6) NOT NULL,
+  EndModelYear smallint(6) NOT NULL,
+  SCC char(10) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  hpMin smallint(6) NOT NULL,
+  hpMax smallint(6) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  retrofitID smallint(6) NOT NULL,
+  annualFractionRetrofit float DEFAULT NULL,
+  retrofitEffectiveFraction float DEFAULT NULL,
+  PRIMARY KEY (SCC,engTechID,hpMin,hpMax,pollutantID,retrofitID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrSCC table

+
+CREATE TABLE nrscc (
+  SCC char(10) NOT NULL,
+  NREquipTypeID smallint(6) NOT NULL,
+  description char(40) DEFAULT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  PRIMARY KEY (SCC),
+  UNIQUE KEY XPKNRSCC (SCC)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrScrappageCurve table

+
+CREATE TABLE nrscrappagecurve (
+  NREquipTypeID smallint(6) NOT NULL,
+  fractionLifeused float NOT NULL,
+  percentageScrapped float DEFAULT NULL,
+  PRIMARY KEY (NREquipTypeID,fractionLifeused),
+  UNIQUE KEY XPKNRScrappageCurve (NREquipTypeID,fractionLifeused)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrSourceUseType table

+
+CREATE TABLE nrsourceusetype (
+  sourceTypeID smallint(6) NOT NULL,
+  SCC char(10) NOT NULL,
+  NRHPRangeBinID smallint(6) NOT NULL,
+  medianLifeFullLoad float DEFAULT NULL,
+  hoursUsedPerYear float DEFAULT NULL,
+  loadFactor float DEFAULT NULL,
+  hpAvg float DEFAULT NULL,
+  isPumpFilled char(1) DEFAULT NULL,
+  tankUnits char(7) DEFAULT NULL,
+  tankSize float DEFAULT NULL,
+  tankFillFrac float DEFAULT NULL,
+  tankMetalFrac float DEFAULT NULL,
+  hoseLength float DEFAULT NULL,
+  hoseDiameter float DEFAULT NULL,
+  hoseMetalFrac float DEFAULT NULL,
+  marineFillNeckHoseLength float DEFAULT NULL,
+  marineFillNeckHoseDiameter float DEFAULT NULL,
+  marineSupplyHoseLength float DEFAULT NULL,
+  marineSupplyHoseDiameter float DEFAULT NULL,
+  marineVentHoseLength float DEFAULT NULL,
+  marineVentHoseDiameter float DEFAULT NULL,
+  hotSoaksPerSHO float DEFAULT NULL,
+  nonInstMarineTankFrac float DEFAULT NULL,
+  marineInstPlasticTankTrailFrac float NOT NULL,
+  marineInstPlasticTankWaterFrac float DEFAULT NULL,
+  marineInstMetalTankTrailerFrac float DEFAULT NULL,
+  marineInstMetalTankWaterFrac float DEFAULT NULL,
+  e10TankPermeationAdjFac float DEFAULT NULL,
+  e10HosePermeationAdjFac float DEFAULT NULL,
+  e10MarineFillNeckPermAdjFac float DEFAULT NULL,
+  e10MarineSupplyHosePermAdjFac float DEFAULT NULL,
+  e10MarineVentHosePermAdjFac float DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID),
+  UNIQUE KEY XPKNRSourceUseType (sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrStateSurrogate table

+
+CREATE TABLE nrstatesurrogate (
+  surrogateID smallint(6) NOT NULL DEFAULT 0,
+  stateID smallint(6) NOT NULL DEFAULT 0,
+  countyID int(11) NOT NULL DEFAULT 0,
+  surrogatequant double NOT NULL,
+  surrogateYearID smallint(6) NOT NULL DEFAULT 2002,
+  PRIMARY KEY (surrogateID,stateID,countyID,surrogateYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrSulfurAdjustment table

+
+CREATE TABLE nrsulfuradjustment (
+  fuelTypeID smallint(6) NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  PMBaseSulfur float NOT NULL,
+  sulfatePMConversionFactor float NOT NULL,
+  PRIMARY KEY (fuelTypeID,engTechID),
+  UNIQUE KEY XPKNRSulfurAdjustment (fuelTypeID,engTechID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrSurrogate table

+
+CREATE TABLE nrsurrogate (
+  surrogateID smallint(6) NOT NULL,
+  description char(255) DEFAULT NULL,
+  surrogateAbbr char(3) DEFAULT NULL,
+  PRIMARY KEY (surrogateID),
+  UNIQUE KEY XPKNRSurrogate (surrogateID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

nrUSMonthAllocation table

+
+CREATE TABLE nrusmonthallocation (
+  SCC char(10) NOT NULL,
+  stateID smallint(6) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  monthFraction float NOT NULL,
+  PRIMARY KEY (SCC,stateID,monthID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

offNetworkLink table

+
+CREATE TABLE offnetworklink (
+  sourceTypeID smallint(6) NOT NULL,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  vehiclePopulation float DEFAULT NULL,
+  startFraction float DEFAULT NULL,
+  extendedIdleFraction float DEFAULT NULL,
+  parkedVehicleFraction float DEFAULT NULL,
+  PRIMARY KEY (zoneID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID,zoneID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The offNetworkLink is used by these modules: + +

OMDGPolProcessRepresented table

+
+CREATE TABLE omdgpolprocessrepresented (
+  polProcessID int(11) NOT NULL,
+  representingPolProcessID int(11) NOT NULL,
+  PRIMARY KEY (polProcessID),
+  KEY representingPolProcessID (representingPolProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The OMDGPolProcessRepresented is used by these modules: + +

onRoadRetrofit table

+
+CREATE TABLE onroadretrofit (
+  pollutantID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  retrofitYearID smallint(6) NOT NULL,
+  beginModelYearID smallint(6) NOT NULL,
+  endModelYearID smallint(6) NOT NULL,
+  cumFractionRetrofit double NOT NULL DEFAULT 0,
+  retrofitEffectiveFraction double NOT NULL DEFAULT 0,
+  PRIMARY KEY (pollutantID,processID,fuelTypeID,sourceTypeID,retrofitYearID,beginModelYearID,endModelYearID),
+  KEY retrofitYearID (retrofitYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

OperatingMode table

+
+CREATE TABLE operatingmode (
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  opModeName char(50) DEFAULT NULL,
+  VSPLower float DEFAULT NULL,
+  VSPUpper float DEFAULT NULL,
+  speedLower float DEFAULT NULL,
+  speedUpper float DEFAULT NULL,
+  brakeRate1Sec float DEFAULT NULL,
+  brakeRate3Sec float DEFAULT NULL,
+  minSoakTime smallint(6) DEFAULT NULL,
+  maxSoakTime smallint(6) DEFAULT NULL,
+  PRIMARY KEY (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The OperatingMode is used by these modules: + +

OpModeDistribution table

+
+CREATE TABLE opmodedistribution (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  linkID int(11) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  opModeFraction float DEFAULT NULL,
+  opModeFractionCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (hourDayID,linkID,opModeID,polProcessID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY linkID (linkID),
+  KEY polProcessID (polProcessID),
+  KEY opModeID (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The OpModeDistribution is used by these modules: + +

OpModePolProcAssoc table

+
+CREATE TABLE opmodepolprocassoc (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (opModeID,polProcessID),
+  KEY polProcessID (polProcessID),
+  KEY opModeID (opModeID),
+  KEY opModeID_2 (opModeID,polProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The OpModePolProcAssoc is used by these modules: + +

OxyThreshName table

+
+CREATE TABLE oxythreshname (
+  oxyThreshID smallint(6) NOT NULL DEFAULT 0,
+  oxyThreshName char(100) DEFAULT NULL,
+  PRIMARY KEY (oxyThreshID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

pahGasRatio table

+
+CREATE TABLE pahgasratio (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  atRatio double DEFAULT NULL,
+  atRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID),
+  UNIQUE KEY XPKPAHGasRatio (polProcessID,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The pahGasRatio is used by these modules: + +

pahParticleRatio table

+
+CREATE TABLE pahparticleratio (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  atRatio double DEFAULT NULL,
+  atRatioCV double DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID),
+  UNIQUE KEY XPKPAHParticleRatio (polProcessID,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The pahParticleRatio is used by these modules: + +

PM10EmissionRatio table

+
+CREATE TABLE pm10emissionratio (
+  polProcessID int(11) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  PM10PM25Ratio float NOT NULL,
+  PM10PM25RatioCV float DEFAULT NULL,
+  minModelYearID smallint(6) NOT NULL DEFAULT 1940,
+  maxModelYearID smallint(6) NOT NULL DEFAULT 2050,
+  PRIMARY KEY (polProcessID,sourceTypeID,fuelTypeID,minModelYearID,maxModelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The PM10EmissionRatio is used by these modules: + +

PMSpeciation table

+
+CREATE TABLE pmspeciation (
+  processID smallint(6) NOT NULL,
+  inputPollutantID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  outputPollutantID smallint(6) NOT NULL,
+  pmSpeciationFraction double NOT NULL,
+  PRIMARY KEY (processID,inputPollutantID,sourceTypeID,fuelTypeID,minModelYearID,maxModelYearID,outputPollutantID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The PMSpeciation is used by these modules: + +

Pollutant table

+
+CREATE TABLE pollutant (
+  pollutantID smallint(6) NOT NULL DEFAULT 0,
+  pollutantName char(50) DEFAULT NULL,
+  energyOrMass char(6) NOT NULL DEFAULT '',
+  globalWarmingPotential smallint(6) DEFAULT NULL,
+  NEIPollutantCode char(10) DEFAULT NULL,
+  pollutantDisplayGroupID smallint(6) DEFAULT NULL,
+  shortName varchar(50) DEFAULT NULL,
+  isAffectedByOnroad tinyint(1) DEFAULT 1,
+  isAffectedByNonroad tinyint(1) DEFAULT 0,
+  PRIMARY KEY (pollutantID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The Pollutant is used by these modules: + +

PollutantProcessAssoc table

+
+CREATE TABLE pollutantprocessassoc (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  processID smallint(6) NOT NULL DEFAULT 0,
+  pollutantID smallint(6) NOT NULL DEFAULT 0,
+  isAffectedByExhaustIM char(1) NOT NULL DEFAULT 'N',
+  isAffectedByEvapIM char(1) NOT NULL DEFAULT 'N',
+  chainedto1 int(11) DEFAULT NULL,
+  chainedto2 int(11) DEFAULT NULL,
+  isAffectedByOnroad tinyint(1) DEFAULT 1,
+  isAffectedByNonroad tinyint(1) DEFAULT 0,
+  nrChainedTo1 int(11) DEFAULT NULL,
+  nrChainedTo2 int(11) DEFAULT NULL,
+  PRIMARY KEY (polProcessID),
+  KEY processID (processID),
+  KEY pollutantID (pollutantID),
+  KEY processID_2 (processID,pollutantID,polProcessID),
+  KEY pollutantID_2 (pollutantID,processID,polProcessID),
+  KEY polProcessID (polProcessID,processID,pollutantID),
+  KEY polProcessID_2 (polProcessID,pollutantID,processID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The PollutantProcessAssoc is used by these modules: + +

PollutantProcessModelYear table

+
+CREATE TABLE pollutantprocessmodelyear (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  modelYearID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  fuelMYGroupID int(11) DEFAULT NULL,
+  IMModelYearGroupID int(11) DEFAULT NULL,
+  PRIMARY KEY (modelYearID,polProcessID),
+  KEY polProcessID (modelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The PollutantProcessModelYear is used by these modules: + +

processDisplayGroup table

+
+CREATE TABLE processdisplaygroup (
+  processDisplayGroupID smallint(6) NOT NULL,
+  processDisplayGroupName char(50) NOT NULL,
+  disPlayAsGroup char(1) NOT NULL,
+  PRIMARY KEY (processDisplayGroupID),
+  UNIQUE KEY XPKProcessDisplayGroup (processDisplayGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

processGroupID table

+
+CREATE TABLE processgroupid (
+  processGroupID smallint(6) NOT NULL,
+  processGroupName char(15) NOT NULL,
+  PRIMARY KEY (processGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

RefuelingFactors table

+
+CREATE TABLE refuelingfactors (
+  fuelTypeID smallint(6) NOT NULL,
+  defaultFormulationID smallint(6) DEFAULT NULL,
+  vaporTermA float NOT NULL DEFAULT 0,
+  vaporTermB float NOT NULL DEFAULT 0,
+  vaporTermC float NOT NULL DEFAULT 0,
+  vaporTermD float NOT NULL DEFAULT 0,
+  vaporTermE float NOT NULL DEFAULT 0,
+  vaporTermF float NOT NULL DEFAULT 0,
+  vaporLowTLimit float NOT NULL DEFAULT 0,
+  vaporHighTLimit float NOT NULL DEFAULT 0,
+  tankTDiffLimit float NOT NULL DEFAULT 0,
+  minimumRefuelingVaporLoss float NOT NULL DEFAULT 0,
+  refuelingSpillRate float NOT NULL DEFAULT 0,
+  refuelingSpillRateCV float NOT NULL DEFAULT 0,
+  displacedVaporRateCV float NOT NULL DEFAULT 0,
+  PRIMARY KEY (fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The RefuelingFactors is used by these modules: + +

region table

+
+CREATE TABLE region (
+  regionID int(11) NOT NULL,
+  VV smallint(6) DEFAULT NULL,
+  WW smallint(6) DEFAULT NULL,
+  XX smallint(6) DEFAULT NULL,
+  YY smallint(6) DEFAULT NULL,
+  ZZ smallint(6) DEFAULT NULL,
+  description varchar(150) DEFAULT NULL,
+  PRIMARY KEY (regionID),
+  KEY index1 (regionID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

regionCode table

+
+CREATE TABLE regioncode (
+  regionCodeID int(11) NOT NULL,
+  regionCodeDescription varchar(200) NOT NULL DEFAULT '',
+  PRIMARY KEY (regionCodeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

regionCounty table

+
+CREATE TABLE regioncounty (
+  regionID int(11) NOT NULL,
+  countyID int(11) NOT NULL,
+  regionCodeID int(11) NOT NULL,
+  fuelYearID int(11) NOT NULL,
+  PRIMARY KEY (regionID,countyID,regionCodeID,fuelYearID),
+  KEY countyID (countyID,fuelYearID,regionCodeID,regionID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

RegulatoryClass table

+
+CREATE TABLE regulatoryclass (
+  regClassID smallint(6) NOT NULL DEFAULT 0,
+  regClassName char(25) DEFAULT NULL,
+  regClassDesc char(100) DEFAULT NULL,
+  PRIMARY KEY (regClassID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The RegulatoryClass is used by these modules: + +

RetrofitInputAssociations table

+
+CREATE TABLE retrofitinputassociations (
+  listName varchar(20) NOT NULL,
+  commonName varchar(50) NOT NULL,
+  idealName varchar(50) NOT NULL,
+  PRIMARY KEY (listName,commonName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

RoadOpmodeDistribution table

+
+CREATE TABLE roadopmodedistribution (
+  sourceTypeID smallint(6) NOT NULL,
+  opModeID smallint(6) NOT NULL,
+  roadTypeID smallint(6) NOT NULL,
+  isRamp char(1) NOT NULL DEFAULT 'Y',
+  avgSpeedBinID smallint(6) NOT NULL,
+  opModeFraction float NOT NULL DEFAULT 0,
+  opModeFractionCV float DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID,opModeID,roadTypeID,isRamp,avgSpeedBinID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The RoadOpmodeDistribution is used by these modules: + +

RoadType table

+
+CREATE TABLE roadtype (
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadDesc char(50) DEFAULT NULL,
+  rampFraction float DEFAULT NULL,
+  isAffectedByOnroad tinyint(1) DEFAULT 1,
+  isAffectedByNonroad tinyint(1) DEFAULT 0,
+  shouldDisplay tinyint(1) DEFAULT 1,
+  PRIMARY KEY (roadTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The RoadType is used by these modules: + +

RoadTypeDistribution table

+
+CREATE TABLE roadtypedistribution (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeVMTFraction float DEFAULT NULL,
+  PRIMARY KEY (roadTypeID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY roadTypeID (roadTypeID),
+  KEY roadTypeID_2 (roadTypeID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The RoadTypeDistribution is used by these modules: + +

SampleVehicleDay table

+
+CREATE TABLE samplevehicleday (
+  vehID int(11) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (vehID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SampleVehicleDay is used by these modules: + +

sampleVehiclePopulation table

+
+CREATE TABLE samplevehiclepopulation (
+  sourceTypeModelYearID int(10) unsigned NOT NULL,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearID smallint(6) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(5) unsigned NOT NULL,
+  engTechID smallint(6) NOT NULL,
+  regClassID smallint(5) unsigned NOT NULL,
+  stmyFuelEngFraction double NOT NULL,
+  stmyFraction double NOT NULL,
+  PRIMARY KEY (sourceTypeModelYearID,fuelTypeID,engTechID,regClassID),
+  KEY stmyft (sourceTypeID,modelYearID,fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1
+

+The sampleVehiclePopulation is used by these modules: + +

sampleVehicleSoaking table

+
+CREATE TABLE samplevehiclesoaking (
+  soakDayID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  hourID smallint(6) NOT NULL,
+  soakFraction double DEFAULT NULL,
+  PRIMARY KEY (soakDayID,sourceTypeID,dayID,hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The sampleVehicleSoaking is used by these modules: + +

sampleVehicleSoakingDay table

+
+CREATE TABLE samplevehiclesoakingday (
+  soakDayID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  F double DEFAULT NULL,
+  PRIMARY KEY (soakDayID,sourceTypeID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The sampleVehicleSoakingDay is used by these modules: + +

sampleVehicleSoakingDayBasis table

+
+CREATE TABLE samplevehiclesoakingdaybasis (
+  soakDayID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  F double DEFAULT NULL,
+  PRIMARY KEY (soakDayID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The sampleVehicleSoakingDayBasis is used by these modules: + +

sampleVehicleSoakingDayBasisUsed table

+
+CREATE TABLE samplevehiclesoakingdaybasisused (
+  soakDayID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  F double DEFAULT NULL,
+  PRIMARY KEY (soakDayID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

sampleVehicleSoakingDayUsed table

+
+CREATE TABLE samplevehiclesoakingdayused (
+  soakDayID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  F double DEFAULT NULL,
+  PRIMARY KEY (soakDayID,sourceTypeID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SampleVehicleTrip table

+
+CREATE TABLE samplevehicletrip (
+  vehID int(11) NOT NULL DEFAULT 0,
+  dayID smallint(6) NOT NULL DEFAULT 0,
+  tripID smallint(6) NOT NULL DEFAULT 0,
+  hourID smallint(6) DEFAULT NULL,
+  priorTripID smallint(6) DEFAULT NULL,
+  keyontime int(11) DEFAULT NULL,
+  keyOffTime int(11) NOT NULL DEFAULT 0,
+  PRIMARY KEY (vehID,dayID,tripID),
+  KEY vehID (vehID),
+  KEY tripID (tripID),
+  KEY idxPriorTripID (priorTripID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SampleVehicleTrip is used by these modules: + +

scc table

+
+CREATE TABLE scc (
+  SCC char(10) NOT NULL DEFAULT '',
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  processID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (SCC),
+  KEY fuelTypeID (fuelTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY roadTypeID (roadTypeID),
+  KEY processID (processID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

Sector table

+
+CREATE TABLE sector (
+  sectorID smallint(6) NOT NULL,
+  description char(40) DEFAULT NULL,
+  PRIMARY KEY (sectorID),
+  UNIQUE KEY XPKSector (sectorID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SHO table

+
+CREATE TABLE sho (
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  linkID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  SHO float DEFAULT NULL,
+  SHOCV float DEFAULT NULL,
+  distance float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (ageID,hourDayID,linkID,monthID,sourceTypeID,yearID),
+  KEY hourDayID (hourDayID),
+  KEY monthID (monthID),
+  KEY yearID (yearID),
+  KEY ageID (ageID),
+  KEY linkID (linkID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY linkID_2 (linkID,yearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SHO is used by these modules: + +

SizeWeightFraction table

+
+CREATE TABLE sizeweightfraction (
+  sourceTypeModelYearID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  engTechID smallint(6) NOT NULL DEFAULT 0,
+  engSizeID smallint(6) NOT NULL DEFAULT 0,
+  weightClassID smallint(6) NOT NULL DEFAULT 0,
+  sizeWeightFraction float DEFAULT NULL,
+  PRIMARY KEY (engSizeID,engTechID,fuelTypeID,sourceTypeModelYearID,weightClassID),
+  KEY yearFuelTech (sourceTypeModelYearID,engTechID,fuelTypeID),
+  KEY engTechID (engTechID),
+  KEY engSizeID (engSizeID),
+  KEY weightClassID (weightClassID),
+  KEY sourceTypeModelYearID (sourceTypeModelYearID),
+  KEY fuelTypeID (fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SoakActivityFraction table

+
+CREATE TABLE soakactivityfraction (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  soakActivityFraction float DEFAULT NULL,
+  soakActivityFractionCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (sourceTypeID,zoneID,monthID,hourDayID,opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SoakActivityFraction is used by these modules: + +

SourceBin table

+
+CREATE TABLE sourcebin (
+  sourceBinID bigint(20) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  engTechID smallint(6) NOT NULL DEFAULT 0,
+  regClassID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  engSizeID smallint(6) NOT NULL DEFAULT 0,
+  weightClassID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (sourceBinID),
+  KEY fuelTypeID (fuelTypeID),
+  KEY modelYearGroupID (modelYearGroupID),
+  KEY sourceBinID (sourceBinID,fuelTypeID,modelYearGroupID),
+  KEY sourceBinID_2 (sourceBinID,modelYearGroupID,fuelTypeID),
+  KEY fuelTypeID_2 (fuelTypeID,modelYearGroupID,sourceBinID),
+  KEY fuelTypeID_3 (fuelTypeID,sourceBinID,modelYearGroupID),
+  KEY modelYearGroupID_2 (modelYearGroupID,fuelTypeID,sourceBinID),
+  KEY modelYearGroupID_3 (modelYearGroupID,sourceBinID,fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceBin is used by these modules: + +

SourceBinDistribution table

+
+CREATE TABLE sourcebindistribution (
+  sourceTypeModelYearID int(11) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  sourceBinID bigint(20) NOT NULL DEFAULT 0,
+  sourceBinActivityFraction float DEFAULT NULL,
+  sourceBinActivityFractionCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (polProcessID,sourceBinID,sourceTypeModelYearID),
+  KEY sourceTypeModelYearID (sourceTypeModelYearID),
+  KEY polProcessID (polProcessID),
+  KEY sourceBinID (sourceBinID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceBinDistribution is used by these modules: + +

SourceHours table

+
+CREATE TABLE sourcehours (
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  linkID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  sourceHours float DEFAULT NULL,
+  sourceHoursCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (hourDayID,monthID,yearID,ageID,linkID,sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY monthID (monthID),
+  KEY yearID (yearID),
+  KEY ageID (ageID),
+  KEY linkID (linkID),
+  KEY sourceTypeID (sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceHours is used by these modules: + +

SourceTypeAge table

+
+CREATE TABLE sourcetypeage (
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  survivalRate double DEFAULT NULL,
+  relativeMAR double DEFAULT NULL,
+  functioningACFraction double DEFAULT NULL,
+  functioningACFractionCV double DEFAULT NULL,
+  PRIMARY KEY (ageID,sourceTypeID),
+  KEY ageID (ageID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY sourceTypeID_2 (sourceTypeID,ageID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeAge is used by these modules: + +

SourceTypeAgeDistribution table

+
+CREATE TABLE sourcetypeagedistribution (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  ageFraction double DEFAULT NULL,
+  PRIMARY KEY (ageID,sourceTypeID,yearID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY yearID (yearID),
+  KEY ageID (ageID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeAgeDistribution is used by these modules: + +

SourceTypeDayVMT table

+
+CREATE TABLE sourcetypedayvmt (
+  yearID smallint(6) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  VMT double NOT NULL,
+  PRIMARY KEY (yearID,monthID,dayID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID,yearID,monthID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeDayVMT is used by these modules: + +

SourceTypeHour table

+
+CREATE TABLE sourcetypehour (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  idleSHOFactor float DEFAULT NULL,
+  hotellingdist double DEFAULT NULL,
+  PRIMARY KEY (hourDayID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY hourDayID_2 (hourDayID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeHour is used by these modules: + +

SourceTypeModelYear table

+
+CREATE TABLE sourcetypemodelyear (
+  sourceTypeModelYearID int(11) NOT NULL DEFAULT 0,
+  modelYearID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  ACPenetrationFraction float DEFAULT NULL,
+  ACPenetrationFractionCV float DEFAULT NULL,
+  PRIMARY KEY (sourceTypeModelYearID),
+  KEY modelYearID (modelYearID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY sourceTypeModelYearID (sourceTypeModelYearID,modelYearID,sourceTypeID),
+  KEY sourceTypeModelYearID_2 (sourceTypeModelYearID,sourceTypeID,modelYearID),
+  KEY sourceTypeID_2 (sourceTypeID,modelYearID,sourceTypeModelYearID),
+  KEY modelYearID_2 (modelYearID,sourceTypeID,sourceTypeModelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeModelYear is used by these modules: + +

SourceTypeModelYearGroup table

+
+CREATE TABLE sourcetypemodelyeargroup (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  tankTemperatureGroupID smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (sourceTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeModelYearGroup is used by these modules: + +

SourceTypePolProcess table

+
+CREATE TABLE sourcetypepolprocess (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  isSizeWeightReqd char(1) DEFAULT NULL,
+  isRegClassReqd char(1) DEFAULT NULL,
+  isMYGroupReqd char(1) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY polProcessID (polProcessID),
+  KEY polProcessID_2 (polProcessID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypePolProcess is used by these modules: + +

SourceTypeTechAdjustment table

+
+CREATE TABLE sourcetypetechadjustment (
+  processID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  modelYearID smallint(6) NOT NULL,
+  refuelingTechAdjustment float NOT NULL DEFAULT 0,
+  PRIMARY KEY (processID,sourceTypeID,modelYearID),
+  KEY processID (processID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY modelYearID (modelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeTechAdjustment is used by these modules: + +

SourceTypeYear table

+
+CREATE TABLE sourcetypeyear (
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  salesGrowthFactor double DEFAULT NULL,
+  sourceTypePopulation double DEFAULT NULL,
+  migrationrate double DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID,yearID),
+  KEY yearID (yearID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY sourceTypeID_2 (sourceTypeID,yearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeYear is used by these modules: + +

SourceTypeYearVMT table

+
+CREATE TABLE sourcetypeyearvmt (
+  yearID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  VMT double NOT NULL,
+  PRIMARY KEY (yearID,sourceTypeID),
+  KEY sourceTypeID (sourceTypeID,yearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceTypeYearVMT is used by these modules: + +

SourceUseType table

+
+CREATE TABLE sourceusetype (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  HPMSVtypeID smallint(6) NOT NULL DEFAULT 0,
+  sourceTypeName char(50) DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID),
+  KEY HPMSVtypeID (HPMSVtypeID),
+  KEY sourceTypeID (sourceTypeID,HPMSVtypeID),
+  KEY HPMSVtypeID_2 (HPMSVtypeID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SourceUseType is used by these modules: + +

sourceUseTypePhysics table

+
+CREATE TABLE sourceusetypephysics (
+  sourceTypeID smallint(6) NOT NULL,
+  beginModelYearID smallint(6) NOT NULL,
+  endModelYearID smallint(6) NOT NULL,
+  rollingTermA float DEFAULT NULL,
+  rotatingTermB float DEFAULT NULL,
+  dragTermC float DEFAULT NULL,
+  sourceMass float DEFAULT NULL,
+  fixedMassFactor float DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID,beginModelYearID,endModelYearID),
+  KEY beginModelYearID (beginModelYearID,endModelYearID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

Starts table

+
+CREATE TABLE starts (
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  ageID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  starts float DEFAULT NULL,
+  StartsCV float DEFAULT NULL,
+  isUserInput char(1) NOT NULL DEFAULT 'N',
+  PRIMARY KEY (ageID,hourDayID,monthID,sourceTypeID,yearID,zoneID),
+  KEY hourDayID (hourDayID),
+  KEY monthID (monthID),
+  KEY yearID (yearID),
+  KEY ageID (ageID),
+  KEY zoneID (zoneID),
+  KEY sourceTypeID (sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The Starts is used by these modules: + +

startsHourFraction table

+
+CREATE TABLE startshourfraction (
+  zoneID int(11) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  hourID smallint(6) NOT NULL,
+  allocationFraction double NOT NULL,
+  PRIMARY KEY (zoneID,dayID,hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

startsMonthAdjust table

+
+CREATE TABLE startsmonthadjust (
+  monthID smallint(6) NOT NULL,
+  monthAdjustment double NOT NULL,
+  PRIMARY KEY (monthID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

startsPerDay table

+
+CREATE TABLE startsperday (
+  zoneID int(11) NOT NULL,
+  dayID smallint(6) NOT NULL,
+  yearID smallint(6) NOT NULL,
+  startsPerDay double NOT NULL,
+  PRIMARY KEY (zoneID,dayID,yearID),
+  KEY yearID (yearID,zoneID,dayID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

StartsPerVehicle table

+
+CREATE TABLE startspervehicle (
+  sourceTypeID smallint(6) NOT NULL DEFAULT 0,
+  hourDayID smallint(6) NOT NULL DEFAULT 0,
+  startsPerVehicle float DEFAULT NULL,
+  startsPerVehicleCV float DEFAULT NULL,
+  PRIMARY KEY (sourceTypeID,hourDayID),
+  KEY sourceTypeID (sourceTypeID),
+  KEY hourDayID (hourDayID),
+  KEY hourDayID_2 (hourDayID,sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The StartsPerVehicle is used by these modules: + +

startsSourceTypeFraction table

+
+CREATE TABLE startssourcetypefraction (
+  sourceTypeID smallint(6) NOT NULL,
+  allocationFraction double NOT NULL,
+  PRIMARY KEY (sourceTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

StartTempAdjustment table

+
+CREATE TABLE starttempadjustment (
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  opModeID smallint(6) NOT NULL DEFAULT 0,
+  tempAdjustTermA float DEFAULT NULL,
+  tempAdjustTermACV float DEFAULT NULL,
+  tempAdjustTermB float DEFAULT NULL,
+  tempAdjustTermBCV float DEFAULT NULL,
+  tempAdjustTermC float DEFAULT NULL,
+  tempAdjustTermCCV float DEFAULT NULL,
+  startTempEquationType varchar(4) DEFAULT '',
+  PRIMARY KEY (fuelTypeID,polProcessID,modelYearGroupID,opModeID),
+  KEY fuelTypeID (fuelTypeID),
+  KEY polProcessID (polProcessID),
+  KEY modelYearGroupID (modelYearGroupID),
+  KEY opModeID (opModeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The StartTempAdjustment is used by these modules: + +

State table

+
+CREATE TABLE state (
+  stateID smallint(6) NOT NULL DEFAULT 0,
+  stateName char(25) DEFAULT NULL,
+  stateAbbr char(2) DEFAULT NULL,
+  PRIMARY KEY (stateID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SulfateEmissionRate table

+
+CREATE TABLE sulfateemissionrate (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  meanBaseRate float DEFAULT NULL,
+  meanBaseRateCV float DEFAULT NULL,
+  dataSourceID smallint(6) DEFAULT NULL,
+  PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SulfateEmissionRate is used by these modules: + +

SulfateFractions table

+
+CREATE TABLE sulfatefractions (
+  processID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  SulfatenonECPMFraction double NOT NULL,
+  H2OnonECPMFraction double NOT NULL,
+  BaseFuelSulfurLevel double NOT NULL,
+  BaseFuelSulfateFraction double NOT NULL,
+  DataSourceId smallint(6) NOT NULL DEFAULT 0,
+  PRIMARY KEY (processID,fuelTypeID,sourceTypeID,minModelYearID,maxModelYearID),
+  KEY processID (processID,sourceTypeID,fuelTypeID,minModelYearID,maxModelYearID),
+  KEY processID_2 (processID,minModelYearID,maxModelYearID,fuelTypeID,sourceTypeID),
+  KEY processID_3 (processID,minModelYearID,maxModelYearID,sourceTypeID,fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The SulfateFractions is used by these modules: + +

SulfurBase table

+
+CREATE TABLE sulfurbase (
+  modelYearGroupID int(11) NOT NULL DEFAULT 0,
+  sulfurBase float DEFAULT NULL,
+  sulfurBasis float DEFAULT 30,
+  sulfurGPAMax float DEFAULT 330,
+  PRIMARY KEY (modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

sulfurCapAmount table

+
+CREATE TABLE sulfurcapamount (
+  fuelTypeID smallint(6) NOT NULL,
+  sulfurCap double DEFAULT NULL,
+  PRIMARY KEY (fuelTypeID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SulfurModelCoeff table

+
+CREATE TABLE sulfurmodelcoeff (
+  processID smallint(6) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  M6emitterID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  fuelMYGroupID int(8) NOT NULL,
+  sulfurFunctionID smallint(6) NOT NULL,
+  sulfurCoeff float DEFAULT NULL,
+  lowSulfurCoeff double DEFAULT NULL,
+  PRIMARY KEY (processID,pollutantID,M6emitterID,sourceTypeID,fuelMYGroupID,sulfurFunctionID),
+  KEY processID (processID,pollutantID,M6emitterID,sourceTypeID,fuelMYGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

SulfurModelName table

+
+CREATE TABLE sulfurmodelname (
+  M6EmitterID smallint(6) NOT NULL DEFAULT 0,
+  sulfurFunctionID smallint(6) NOT NULL DEFAULT 0,
+  M6emitterName char(10) DEFAULT NULL,
+  sulfurFunctionName char(10) DEFAULT NULL,
+  PRIMARY KEY (M6EmitterID,sulfurFunctionID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

TankTemperatureGroup table

+
+CREATE TABLE tanktemperaturegroup (
+  tankTemperatureGroupID smallint(6) NOT NULL DEFAULT 0,
+  tankTemperatureGroupName char(50) NOT NULL DEFAULT '',
+  PRIMARY KEY (tankTemperatureGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

TankTemperatureRise table

+
+CREATE TABLE tanktemperaturerise (
+  tankTemperatureGroupID smallint(6) NOT NULL DEFAULT 0,
+  tankTemperatureRiseTermA float DEFAULT NULL,
+  tankTemperatureRiseTermACV float DEFAULT NULL,
+  tankTemperatureRiseTermB float DEFAULT NULL,
+  tankTemperatureRiseTermBCV float DEFAULT NULL,
+  PRIMARY KEY (tankTemperatureGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The TankTemperatureRise is used by these modules: + +

TankVaporGenCoeffs table

+
+CREATE TABLE tankvaporgencoeffs (
+  ethanolLevelID smallint(6) NOT NULL DEFAULT 0,
+  altitude char(1) NOT NULL DEFAULT '',
+  tvgTermA float DEFAULT NULL,
+  tvgTermB float DEFAULT NULL,
+  tvgTermC float DEFAULT NULL,
+  PRIMARY KEY (ethanolLevelID,altitude)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The TankVaporGenCoeffs is used by these modules: + +

TemperatureAdjustment table

+
+CREATE TABLE temperatureadjustment (
+  polProcessID int(11) NOT NULL DEFAULT 0,
+  fuelTypeID smallint(6) NOT NULL DEFAULT 0,
+  tempAdjustTermA float DEFAULT NULL,
+  tempAdjustTermACV float DEFAULT NULL,
+  tempAdjustTermB float DEFAULT NULL,
+  tempAdjustTermBCV float DEFAULT NULL,
+  tempAdjustTermC float DEFAULT NULL,
+  tempAdjustTermCCV float DEFAULT NULL,
+  minModelYearID smallint(6) NOT NULL DEFAULT 1960,
+  maxModelYearID smallint(6) NOT NULL DEFAULT 2050,
+  PRIMARY KEY (polProcessID,fuelTypeID,minModelYearID,maxModelYearID),
+  KEY polProcessID (polProcessID),
+  KEY fuelTypeID (fuelTypeID),
+  KEY polProcessID_2 (polProcessID),
+  KEY fuelTypeID_2 (fuelTypeID),
+  KEY fuelTypeID_3 (fuelTypeID,polProcessID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The TemperatureAdjustment is used by these modules: + +

temperatureFactorExpression table

+
+CREATE TABLE temperaturefactorexpression (
+  processID smallint(6) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  fuelTypeID smallint(6) NOT NULL,
+  sourceTypeID smallint(6) NOT NULL,
+  minModelYearID smallint(6) NOT NULL,
+  maxModelYearID smallint(6) NOT NULL,
+  tempCorrectionExpression varchar(5000) DEFAULT NULL,
+  PRIMARY KEY (processID,pollutantID,fuelTypeID,sourceTypeID,minModelYearID,maxModelYearID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The temperatureFactorExpression is used by these modules: + +

TemperatureProfileID table

+
+CREATE TABLE temperatureprofileid (
+  temperatureProfileID bigint(20) NOT NULL,
+  zoneID int(11) NOT NULL,
+  monthID smallint(6) NOT NULL,
+  PRIMARY KEY (temperatureProfileID),
+  KEY zoneID (zoneID,monthID,temperatureProfileID),
+  KEY monthID (monthID,zoneID,temperatureProfileID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

togSpeciation table

+
+CREATE TABLE togspeciation (
+  fuelSubtypeID smallint(6) NOT NULL,
+  regClassID smallint(6) NOT NULL,
+  processID smallint(6) NOT NULL,
+  modelYearGroupID int(11) NOT NULL,
+  togSpeciationProfileID varchar(10) NOT NULL DEFAULT '0',
+  PRIMARY KEY (fuelSubtypeID,regClassID,processID,modelYearGroupID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The togSpeciation is used by these modules: + +

TOGSpeciationProfile table

+
+CREATE TABLE togspeciationprofile (
+  mechanismID smallint(6) NOT NULL,
+  togSpeciationProfileID varchar(10) NOT NULL DEFAULT '0',
+  integratedSpeciesSetID smallint(6) NOT NULL,
+  pollutantID smallint(6) NOT NULL,
+  lumpedSpeciesName varchar(20) NOT NULL,
+  TOGSpeciationDivisor double DEFAULT NULL,
+  TOGSpeciationMassFraction double DEFAULT NULL,
+  PRIMARY KEY (mechanismID,togSpeciationProfileID,integratedSpeciesSetID,pollutantID,lumpedSpeciesName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The TOGSpeciationProfile is used by these modules: + +

TOGSpeciationProfileName table

+
+CREATE TABLE togspeciationprofilename (
+  togSpeciationProfileID varchar(10) NOT NULL DEFAULT '0',
+  TOGSpeciationProfileName varchar(100) DEFAULT NULL,
+  dataSourceId smallint(6) DEFAULT NULL,
+  PRIMARY KEY (togSpeciationProfileID),
+  KEY TOGSpeciationProfileName (TOGSpeciationProfileName)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

WeightClass table

+
+CREATE TABLE weightclass (
+  weightClassID smallint(6) NOT NULL DEFAULT 0,
+  weightClassName char(50) DEFAULT NULL,
+  midpointWeight float DEFAULT NULL,
+  PRIMARY KEY (weightClassID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+

Year table

+
+CREATE TABLE year (
+  yearID smallint(6) NOT NULL DEFAULT 0,
+  isBaseYear char(1) DEFAULT NULL,
+  fuelYearID int(11) NOT NULL DEFAULT 0,
+  PRIMARY KEY (yearID),
+  KEY isBaseYear (isBaseYear)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The Year is used by these modules: + +

Zone table

+
+CREATE TABLE zone (
+  zoneID int(11) NOT NULL DEFAULT 0,
+  countyID int(11) NOT NULL DEFAULT 0,
+  startAllocFactor double DEFAULT NULL,
+  idleAllocFactor double DEFAULT NULL,
+  SHPAllocFactor double DEFAULT NULL,
+  PRIMARY KEY (zoneID),
+  KEY countyID (countyID),
+  KEY zoneID (zoneID,countyID),
+  KEY countyID_2 (countyID,zoneID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The Zone is used by these modules: + +

ZoneMonthHour table

+
+CREATE TABLE zonemonthhour (
+  monthID smallint(6) NOT NULL DEFAULT 0,
+  zoneID int(11) NOT NULL DEFAULT 0,
+  hourID smallint(6) NOT NULL DEFAULT 0,
+  temperature float DEFAULT NULL,
+  temperatureCV float DEFAULT NULL,
+  relHumidity float DEFAULT NULL,
+  heatIndex float DEFAULT NULL,
+  specificHumidity float DEFAULT NULL,
+  relativeHumidityCV float DEFAULT NULL,
+  PRIMARY KEY (hourID,monthID,zoneID),
+  KEY monthID (monthID),
+  KEY zoneID (zoneID),
+  KEY hourID (hourID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ZoneMonthHour is used by these modules: + +

ZoneRoadType table

+
+CREATE TABLE zoneroadtype (
+  zoneID int(11) NOT NULL DEFAULT 0,
+  roadTypeID smallint(6) NOT NULL DEFAULT 0,
+  SHOAllocFactor double DEFAULT NULL,
+  PRIMARY KEY (roadTypeID,zoneID),
+  KEY roadTypeID (roadTypeID,zoneID)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+

+The ZoneRoadType is used by these modules: + +

Pollutants and Modules Cross Reference

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PollutantProcessModule
Benzene (20)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzene (20)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzene (20)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Benzene (20)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Benzene (20)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Benzene (20)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Benzene (20)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Benzene (20)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Benzene (20)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Benzene (20)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Benzene (20)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Benzene (20)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Ethanol (21)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Ethanol (21)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Ethanol (21)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Ethanol (21)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Ethanol (21)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Ethanol (21)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Ethanol (21)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Ethanol (21)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Ethanol (21)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Ethanol (21)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Ethanol (21)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Ethanol (21)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
MTBE (22)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
MTBE (22)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
MTBE (22)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
MTBE (22)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
MTBE (22)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
MTBE (22)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
MTBE (22)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
MTBE (22)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
MTBE (22)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
MTBE (22)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
MTBE (22)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
MTBE (22)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Naphthalene particle (23)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Naphthalene particle (23)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
1,3-Butadiene (24)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
1,3-Butadiene (24)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Formaldehyde (25)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Formaldehyde (25)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acetaldehyde (26)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acetaldehyde (26)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acrolein (27)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acrolein (27)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
2,2,4-Trimethylpentane (40)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
2,2,4-Trimethylpentane (40)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
2,2,4-Trimethylpentane (40)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
2,2,4-Trimethylpentane (40)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
2,2,4-Trimethylpentane (40)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Ethyl Benzene (41)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Ethyl Benzene (41)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Ethyl Benzene (41)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Ethyl Benzene (41)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Ethyl Benzene (41)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Ethyl Benzene (41)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Ethyl Benzene (41)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Hexane (42)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Hexane (42)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Hexane (42)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Hexane (42)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Hexane (42)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Hexane (42)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Hexane (42)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Hexane (42)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Hexane (42)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Hexane (42)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Hexane (42)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Hexane (42)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Propionaldehyde (43)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Propionaldehyde (43)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Styrene (44)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Styrene (44)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Toluene (45)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Toluene (45)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Toluene (45)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Toluene (45)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Toluene (45)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Toluene (45)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Toluene (45)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Toluene (45)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Toluene (45)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Toluene (45)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Toluene (45)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Toluene (45)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Xylene (46)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Xylene (46)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Xylene (46)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator Air toxics Calculator
Xylene (46)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator Air toxics Calculator
Xylene (46)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
Xylene (46)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
Xylene (46)Evap RecMar Neck Hose Permeation (22) +Nonroad Air toxics Calculator
Xylene (46)Evap RecMar Supply/Ret Hose Permeation (23) +Nonroad Air toxics Calculator
Xylene (46)Evap RecMar Vent Hose Permeation (24) +Nonroad Air toxics Calculator
Xylene (46)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
Xylene (46)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
Xylene (46)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
Mercury Elemental Gaseous (60)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Mercury Divalent Gaseous (61)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Mercury Particulate (62)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Arsenic Compounds (63)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Chromium 6+ (65)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Manganese Compounds (66)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Nickel Compounds (67)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Dibenzo(a,h)anthracene particle (68)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Dibenzo(a,h)anthracene particle (68)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Fluoranthene particle (69)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Fluoranthene particle (69)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acenaphthene particle (70)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acenaphthene particle (70)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acenaphthylene particle (71)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acenaphthylene particle (71)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Anthracene particle (72)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Anthracene particle (72)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benz(a)anthracene particle (73)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benz(a)anthracene particle (73)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(a)pyrene particle (74)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(a)pyrene particle (74)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(b)fluoranthene particle (75)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(b)fluoranthene particle (75)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(g,h,i)perylene particle (76)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(g,h,i)perylene particle (76)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(k)fluoranthene particle (77)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(k)fluoranthene particle (77)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Chrysene particle (78)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Chrysene particle (78)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Fluorene particle (81)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Fluorene particle (81)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene particle (82)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Indeno(1,2,3,c,d)pyrene particle (82)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Phenanthrene particle (83)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Phenanthrene particle (83)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Pyrene particle (84)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Pyrene particle (84)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
NonHAPTOG (88)Running Exhaust (1) +Nonroad Air toxics Calculator TOG Speciation Calculator
NonHAPTOG (88)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator TOG Speciation Calculator
NonHAPTOG (88)Refueling Displacement Vapor Loss (18) +Nonroad Air toxics Calculator TOG Speciation Calculator
NonHAPTOG (88)Refueling Spillage Loss (19) +Nonroad Air toxics Calculator TOG Speciation Calculator
NonHAPTOG (88)Evap Tank Permeation (20) +Nonroad Air toxics Calculator
NonHAPTOG (88)Evap Hose Permeation (21) +Nonroad Air toxics Calculator
NonHAPTOG (88)Diurnal Fuel Vapor Venting (30) +Nonroad Air toxics Calculator
NonHAPTOG (88)HotSoak Fuel Vapor Venting (31) +Nonroad Air toxics Calculator
NonHAPTOG (88)RunningLoss Fuel Vapor Venting (32) +Nonroad Air toxics Calculator
1,2,3,7,8,9-Hexachlorodibenzo-p-Dioxin (130)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Octachlorodibenzo-p-dioxin (131)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,4,6,7,8-Heptachlorodibenzo-p-Dioxin (132)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Octachlorodibenzofuran (133)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,4,7,8-Hexachlorodibenzo-p-Dioxin (134)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,7,8-Pentachlorodibenzo-p-Dioxin (135)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
2,3,7,8-Tetrachlorodibenzofuran (136)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,4,7,8,9-Heptachlorodibenzofuran (137)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
2,3,4,7,8-Pentachlorodibenzofuran (138)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,7,8-Pentachlorodibenzofuran (139)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,6,7,8-Hexachlorodibenzofuran (140)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,6,7,8-Hexachlorodibenzo-p-Dioxin (141)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
2,3,7,8-Tetrachlorodibenzo-p-Dioxin (142)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
2,3,4,6,7,8-Hexachlorodibenzofuran (143)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,4,6,7,8-Heptachlorodibenzofuran (144)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,4,7,8-Hexachlorodibenzofuran (145)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
1,2,3,7,8,9-Hexachlorodibenzofuran (146)Running Exhaust (1) +Nonroad Air toxics Calculator BaseRateCalculator
Dibenzo(a,h)anthracene gas (168)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Dibenzo(a,h)anthracene gas (168)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Fluoranthene gas (169)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Fluoranthene gas (169)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acenaphthene gas (170)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acenaphthene gas (170)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Acenaphthylene gas (171)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Acenaphthylene gas (171)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Anthracene gas (172)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Anthracene gas (172)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benz(a)anthracene gas (173)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benz(a)anthracene gas (173)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(a)pyrene gas (174)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(a)pyrene gas (174)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(b)fluoranthene gas (175)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(b)fluoranthene gas (175)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(g,h,i)perylene gas (176)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(g,h,i)perylene gas (176)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Benzo(k)fluoranthene gas (177)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Benzo(k)fluoranthene gas (177)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Chrysene gas (178)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Chrysene gas (178)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Fluorene gas (181)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Fluorene gas (181)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Phenanthrene gas (183)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Phenanthrene gas (183)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Pyrene gas (184)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Pyrene gas (184)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Naphthalene gas (185)Running Exhaust (1) +Nonroad Air toxics Calculator Air toxics Calculator
Naphthalene gas (185)Crankcase Running Exhaust (15) +Nonroad Air toxics Calculator Crankcase Emission Calculator
Methane (CH4) (5)Running Exhaust (1) +Nonroad HC Speciation Calculator HC Speciation Calculator
Methane (CH4) (5)Crankcase Running Exhaust (15) +Nonroad HC Speciation Calculator Crankcase Emission Calculator
Methane (CH4) (5)Refueling Displacement Vapor Loss (18) +Nonroad HC Speciation Calculator
Methane (CH4) (5)Refueling Spillage Loss (19) +Nonroad HC Speciation Calculator
Methane (CH4) (5)Evap Tank Permeation (20) +Nonroad HC Speciation Calculator
Methane (CH4) (5)Evap Hose Permeation (21) +Nonroad HC Speciation Calculator
Methane (CH4) (5)Diurnal Fuel Vapor Venting (30) +Nonroad HC Speciation Calculator
Methane (CH4) (5)HotSoak Fuel Vapor Venting (31) +Nonroad HC Speciation Calculator
Methane (CH4) (5)RunningLoss Fuel Vapor Venting (32) +Nonroad HC Speciation Calculator
Non-Methane Hydrocarbons (79)Running Exhaust (1) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Hydrocarbons (79)Crankcase Running Exhaust (15) +Nonroad HC Speciation Calculator Crankcase Emission Calculator
Non-Methane Hydrocarbons (79)Refueling Displacement Vapor Loss (18) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Hydrocarbons (79)Refueling Spillage Loss (19) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Hydrocarbons (79)Evap Tank Permeation (20) +Nonroad HC Speciation Calculator
Non-Methane Hydrocarbons (79)Evap Hose Permeation (21) +Nonroad HC Speciation Calculator
Non-Methane Hydrocarbons (79)Diurnal Fuel Vapor Venting (30) +Nonroad HC Speciation Calculator
Non-Methane Hydrocarbons (79)HotSoak Fuel Vapor Venting (31) +Nonroad HC Speciation Calculator
Non-Methane Hydrocarbons (79)RunningLoss Fuel Vapor Venting (32) +Nonroad HC Speciation Calculator
Non-Methane Organic Gases (80)Running Exhaust (1) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Organic Gases (80)Crankcase Running Exhaust (15) +Nonroad HC Speciation Calculator Crankcase Emission Calculator
Non-Methane Organic Gases (80)Refueling Displacement Vapor Loss (18) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Organic Gases (80)Refueling Spillage Loss (19) +Nonroad HC Speciation Calculator HC Speciation Calculator
Non-Methane Organic Gases (80)Evap Tank Permeation (20) +Nonroad HC Speciation Calculator
Non-Methane Organic Gases (80)Evap Hose Permeation (21) +Nonroad HC Speciation Calculator
Non-Methane Organic Gases (80)Diurnal Fuel Vapor Venting (30) +Nonroad HC Speciation Calculator
Non-Methane Organic Gases (80)HotSoak Fuel Vapor Venting (31) +Nonroad HC Speciation Calculator
Non-Methane Organic Gases (80)RunningLoss Fuel Vapor Venting (32) +Nonroad HC Speciation Calculator
Total Organic Gases (86)Running Exhaust (1) +Nonroad HC Speciation Calculator HC Speciation Calculator
Total Organic Gases (86)Crankcase Running Exhaust (15) +Nonroad HC Speciation Calculator Crankcase Emission Calculator
Total Organic Gases (86)Refueling Displacement Vapor Loss (18) +Nonroad HC Speciation Calculator HC Speciation Calculator
Total Organic Gases (86)Refueling Spillage Loss (19) +Nonroad HC Speciation Calculator HC Speciation Calculator
Total Organic Gases (86)Evap Tank Permeation (20) +Nonroad HC Speciation Calculator
Total Organic Gases (86)Evap Hose Permeation (21) +Nonroad HC Speciation Calculator
Total Organic Gases (86)Diurnal Fuel Vapor Venting (30) +Nonroad HC Speciation Calculator
Total Organic Gases (86)HotSoak Fuel Vapor Venting (31) +Nonroad HC Speciation Calculator
Total Organic Gases (86)RunningLoss Fuel Vapor Venting (32) +Nonroad HC Speciation Calculator
Volatile Organic Compounds (87)Running Exhaust (1) +Nonroad HC Speciation Calculator HC Speciation Calculator
Volatile Organic Compounds (87)Crankcase Running Exhaust (15) +Nonroad HC Speciation Calculator Crankcase Emission Calculator
Volatile Organic Compounds (87)Refueling Displacement Vapor Loss (18) +Nonroad HC Speciation Calculator HC Speciation Calculator
Volatile Organic Compounds (87)Refueling Spillage Loss (19) +Nonroad HC Speciation Calculator HC Speciation Calculator
Volatile Organic Compounds (87)Evap Tank Permeation (20) +Nonroad HC Speciation Calculator
Volatile Organic Compounds (87)Evap Hose Permeation (21) +Nonroad HC Speciation Calculator
Volatile Organic Compounds (87)Diurnal Fuel Vapor Venting (30) +Nonroad HC Speciation Calculator
Volatile Organic Compounds (87)HotSoak Fuel Vapor Venting (31) +Nonroad HC Speciation Calculator
Volatile Organic Compounds (87)RunningLoss Fuel Vapor Venting (32) +Nonroad HC Speciation Calculator
Total Gaseous Hydrocarbons (1)HotSoak Fuel Vapor Venting (31) +Nonroad Calculator
Total Gaseous Hydrocarbons (1)Diurnal Fuel Vapor Venting (30) +Nonroad Calculator
Total Gaseous Hydrocarbons (1)Refueling Displacement Vapor Loss (18) +Nonroad Calculator Refueling Loss Calculator
Total Gaseous Hydrocarbons (1)Refueling Spillage Loss (19) +Nonroad Calculator Refueling Loss Calculator
Total Gaseous Hydrocarbons (1)RunningLoss Fuel Vapor Venting (32) +Nonroad Calculator
Total Gaseous Hydrocarbons (1)Evap Tank Permeation (20) +Nonroad Calculator
Total Gaseous Hydrocarbons (1)Evap Hose Permeation (21) +Nonroad Calculator
Atmospheric CO2 (90)Running Exhaust (1) +Nonroad Calculator CO2AERunningStartExtendedIdleCalculator
Total Energy Consumption (91)Running Exhaust (1) +Nonroad Calculator BaseRateCalculator
Brake Specific Fuel Consumption (BSFC) (99)Running Exhaust (1) +Nonroad Calculator
Total Gaseous Hydrocarbons (1)Running Exhaust (1) +Nonroad Calculator BaseRateCalculator
Carbon Monoxide (CO) (2)Running Exhaust (1) +Nonroad Calculator BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Running Exhaust (1) +Nonroad Calculator BaseRateCalculator
Ammonia (NH3) (30)Running Exhaust (1) +Nonroad Calculator BaseRateCalculator
Sulfur Dioxide (SO2) (31)Running Exhaust (1) +Nonroad Calculator SO2 Calculator
Primary Exhaust PM10 - Total (100)Running Exhaust (1) +Nonroad Calculator PM10 Emission Calculator
Primary Exhaust PM2.5 - Total (110)Running Exhaust (1) +Nonroad Calculator Sulfate PM Calculator
Total Gaseous Hydrocarbons (1)Crankcase Running Exhaust (15) +Nonroad Calculator Crankcase Emission Calculator
Benzene (20)Start Exhaust (2) +Air toxics Calculator
Benzene (20)Evap Permeation (11) +Air toxics Calculator
Benzene (20)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Benzene (20)Evap Fuel Leaks (13) +Air toxics Calculator
Benzene (20)Extended Idle Exhaust (90) +Air toxics Calculator
Benzene (20)Auxiliary Power Exhaust (91) +Air toxics Calculator
Ethanol (21)Start Exhaust (2) +Air toxics Calculator
Ethanol (21)Evap Permeation (11) +Air toxics Calculator
Ethanol (21)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Ethanol (21)Evap Fuel Leaks (13) +Air toxics Calculator
MTBE (22)Start Exhaust (2) +Air toxics Calculator
MTBE (22)Evap Permeation (11) +Air toxics Calculator
MTBE (22)Evap Fuel Vapor Venting (12) +Air toxics Calculator
MTBE (22)Evap Fuel Leaks (13) +Air toxics Calculator
Naphthalene particle (23)Start Exhaust (2) +Air toxics Calculator
Naphthalene particle (23)Extended Idle Exhaust (90) +Air toxics Calculator
Naphthalene particle (23)Auxiliary Power Exhaust (91) +Air toxics Calculator
1,3-Butadiene (24)Start Exhaust (2) +Air toxics Calculator
1,3-Butadiene (24)Extended Idle Exhaust (90) +Air toxics Calculator
1,3-Butadiene (24)Auxiliary Power Exhaust (91) +Air toxics Calculator
Formaldehyde (25)Start Exhaust (2) +Air toxics Calculator
Formaldehyde (25)Extended Idle Exhaust (90) +Air toxics Calculator
Formaldehyde (25)Auxiliary Power Exhaust (91) +Air toxics Calculator
Acetaldehyde (26)Start Exhaust (2) +Air toxics Calculator
Acetaldehyde (26)Extended Idle Exhaust (90) +Air toxics Calculator
Acetaldehyde (26)Auxiliary Power Exhaust (91) +Air toxics Calculator
Acrolein (27)Start Exhaust (2) +Air toxics Calculator
Acrolein (27)Extended Idle Exhaust (90) +Air toxics Calculator
Acrolein (27)Auxiliary Power Exhaust (91) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Start Exhaust (2) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap Permeation (11) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap Fuel Vapor Venting (12) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Evap Fuel Leaks (13) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Extended Idle Exhaust (90) +Air toxics Calculator
2,2,4-Trimethylpentane (40)Auxiliary Power Exhaust (91) +Air toxics Calculator
Ethyl Benzene (41)Start Exhaust (2) +Air toxics Calculator
Ethyl Benzene (41)Evap Permeation (11) +Air toxics Calculator
Ethyl Benzene (41)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Ethyl Benzene (41)Evap Fuel Leaks (13) +Air toxics Calculator
Ethyl Benzene (41)Extended Idle Exhaust (90) +Air toxics Calculator
Ethyl Benzene (41)Auxiliary Power Exhaust (91) +Air toxics Calculator
Hexane (42)Start Exhaust (2) +Air toxics Calculator
Hexane (42)Evap Permeation (11) +Air toxics Calculator
Hexane (42)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Hexane (42)Evap Fuel Leaks (13) +Air toxics Calculator
Hexane (42)Extended Idle Exhaust (90) +Air toxics Calculator
Hexane (42)Auxiliary Power Exhaust (91) +Air toxics Calculator
Propionaldehyde (43)Start Exhaust (2) +Air toxics Calculator
Propionaldehyde (43)Extended Idle Exhaust (90) +Air toxics Calculator
Propionaldehyde (43)Auxiliary Power Exhaust (91) +Air toxics Calculator
Styrene (44)Start Exhaust (2) +Air toxics Calculator
Styrene (44)Extended Idle Exhaust (90) +Air toxics Calculator
Styrene (44)Auxiliary Power Exhaust (91) +Air toxics Calculator
Toluene (45)Start Exhaust (2) +Air toxics Calculator
Toluene (45)Evap Permeation (11) +Air toxics Calculator
Toluene (45)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Toluene (45)Evap Fuel Leaks (13) +Air toxics Calculator
Toluene (45)Extended Idle Exhaust (90) +Air toxics Calculator
Toluene (45)Auxiliary Power Exhaust (91) +Air toxics Calculator
Xylene (46)Start Exhaust (2) +Air toxics Calculator
Xylene (46)Evap Permeation (11) +Air toxics Calculator
Xylene (46)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Xylene (46)Evap Fuel Leaks (13) +Air toxics Calculator
Xylene (46)Extended Idle Exhaust (90) +Air toxics Calculator
Xylene (46)Auxiliary Power Exhaust (91) +Air toxics Calculator
Dibenzo(a,h)anthracene particle (68)Start Exhaust (2) +Air toxics Calculator
Fluoranthene particle (69)Start Exhaust (2) +Air toxics Calculator
Acenaphthene particle (70)Start Exhaust (2) +Air toxics Calculator
Acenaphthylene particle (71)Start Exhaust (2) +Air toxics Calculator
Anthracene particle (72)Start Exhaust (2) +Air toxics Calculator
Benz(a)anthracene particle (73)Start Exhaust (2) +Air toxics Calculator
Benzo(a)pyrene particle (74)Start Exhaust (2) +Air toxics Calculator
Benzo(b)fluoranthene particle (75)Start Exhaust (2) +Air toxics Calculator
Benzo(g,h,i)perylene particle (76)Start Exhaust (2) +Air toxics Calculator
Benzo(k)fluoranthene particle (77)Start Exhaust (2) +Air toxics Calculator
Chrysene particle (78)Start Exhaust (2) +Air toxics Calculator
Fluorene particle (81)Start Exhaust (2) +Air toxics Calculator
Indeno(1,2,3,c,d)pyrene particle (82)Start Exhaust (2) +Air toxics Calculator
Phenanthrene particle (83)Start Exhaust (2) +Air toxics Calculator
Pyrene particle (84)Start Exhaust (2) +Air toxics Calculator
Dibenzo(a,h)anthracene gas (168)Start Exhaust (2) +Air toxics Calculator
Dibenzo(a,h)anthracene gas (168)Extended Idle Exhaust (90) +Air toxics Calculator
Dibenzo(a,h)anthracene gas (168)Auxiliary Power Exhaust (91) +Air toxics Calculator
Fluoranthene gas (169)Start Exhaust (2) +Air toxics Calculator
Fluoranthene gas (169)Extended Idle Exhaust (90) +Air toxics Calculator
Fluoranthene gas (169)Auxiliary Power Exhaust (91) +Air toxics Calculator
Acenaphthene gas (170)Start Exhaust (2) +Air toxics Calculator
Acenaphthene gas (170)Extended Idle Exhaust (90) +Air toxics Calculator
Acenaphthene gas (170)Auxiliary Power Exhaust (91) +Air toxics Calculator
Acenaphthylene gas (171)Start Exhaust (2) +Air toxics Calculator
Acenaphthylene gas (171)Extended Idle Exhaust (90) +Air toxics Calculator
Acenaphthylene gas (171)Auxiliary Power Exhaust (91) +Air toxics Calculator
Anthracene gas (172)Start Exhaust (2) +Air toxics Calculator
Anthracene gas (172)Extended Idle Exhaust (90) +Air toxics Calculator
Anthracene gas (172)Auxiliary Power Exhaust (91) +Air toxics Calculator
Benz(a)anthracene gas (173)Start Exhaust (2) +Air toxics Calculator
Benz(a)anthracene gas (173)Extended Idle Exhaust (90) +Air toxics Calculator
Benz(a)anthracene gas (173)Auxiliary Power Exhaust (91) +Air toxics Calculator
Benzo(a)pyrene gas (174)Start Exhaust (2) +Air toxics Calculator
Benzo(a)pyrene gas (174)Extended Idle Exhaust (90) +Air toxics Calculator
Benzo(a)pyrene gas (174)Auxiliary Power Exhaust (91) +Air toxics Calculator
Benzo(b)fluoranthene gas (175)Start Exhaust (2) +Air toxics Calculator
Benzo(b)fluoranthene gas (175)Extended Idle Exhaust (90) +Air toxics Calculator
Benzo(b)fluoranthene gas (175)Auxiliary Power Exhaust (91) +Air toxics Calculator
Benzo(g,h,i)perylene gas (176)Start Exhaust (2) +Air toxics Calculator
Benzo(g,h,i)perylene gas (176)Extended Idle Exhaust (90) +Air toxics Calculator
Benzo(g,h,i)perylene gas (176)Auxiliary Power Exhaust (91) +Air toxics Calculator
Benzo(k)fluoranthene gas (177)Start Exhaust (2) +Air toxics Calculator
Benzo(k)fluoranthene gas (177)Extended Idle Exhaust (90) +Air toxics Calculator
Benzo(k)fluoranthene gas (177)Auxiliary Power Exhaust (91) +Air toxics Calculator
Chrysene gas (178)Start Exhaust (2) +Air toxics Calculator
Chrysene gas (178)Extended Idle Exhaust (90) +Air toxics Calculator
Chrysene gas (178)Auxiliary Power Exhaust (91) +Air toxics Calculator
Fluorene gas (181)Start Exhaust (2) +Air toxics Calculator
Fluorene gas (181)Extended Idle Exhaust (90) +Air toxics Calculator
Fluorene gas (181)Auxiliary Power Exhaust (91) +Air toxics Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Start Exhaust (2) +Air toxics Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Extended Idle Exhaust (90) +Air toxics Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Auxiliary Power Exhaust (91) +Air toxics Calculator
Phenanthrene gas (183)Start Exhaust (2) +Air toxics Calculator
Phenanthrene gas (183)Extended Idle Exhaust (90) +Air toxics Calculator
Phenanthrene gas (183)Auxiliary Power Exhaust (91) +Air toxics Calculator
Pyrene gas (184)Start Exhaust (2) +Air toxics Calculator
Pyrene gas (184)Extended Idle Exhaust (90) +Air toxics Calculator
Pyrene gas (184)Auxiliary Power Exhaust (91) +Air toxics Calculator
Naphthalene gas (185)Start Exhaust (2) +Air toxics Calculator
Naphthalene gas (185)Evap Permeation (11) +Air toxics Calculator
Naphthalene gas (185)Evap Fuel Vapor Venting (12) +Air toxics Calculator
Naphthalene gas (185)Evap Fuel Leaks (13) +Air toxics Calculator
Naphthalene gas (185)Refueling Displacement Vapor Loss (18) +Air toxics Calculator
Naphthalene gas (185)Refueling Spillage Loss (19) +Air toxics Calculator
Naphthalene gas (185)Extended Idle Exhaust (90) +Air toxics Calculator
Naphthalene gas (185)Auxiliary Power Exhaust (91) +Air toxics Calculator
Total Gaseous Hydrocarbons (1)Start Exhaust (2) +BaseRateCalculator
Total Gaseous Hydrocarbons (1)Brakewear (9) +BaseRateCalculator
Total Gaseous Hydrocarbons (1)Tirewear (10) +BaseRateCalculator
Total Gaseous Hydrocarbons (1)Extended Idle Exhaust (90) +BaseRateCalculator
Total Gaseous Hydrocarbons (1)Auxiliary Power Exhaust (91) +BaseRateCalculator
Carbon Monoxide (CO) (2)Start Exhaust (2) +BaseRateCalculator
Carbon Monoxide (CO) (2)Brakewear (9) +BaseRateCalculator
Carbon Monoxide (CO) (2)Tirewear (10) +BaseRateCalculator
Carbon Monoxide (CO) (2)Extended Idle Exhaust (90) +BaseRateCalculator
Carbon Monoxide (CO) (2)Auxiliary Power Exhaust (91) +BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Start Exhaust (2) +BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Brakewear (9) +BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Tirewear (10) +BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Extended Idle Exhaust (90) +BaseRateCalculator
Oxides of Nitrogen (NOx) (3)Auxiliary Power Exhaust (91) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Running Exhaust (1) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Start Exhaust (2) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Brakewear (9) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Tirewear (10) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Extended Idle Exhaust (90) +BaseRateCalculator
Nitrous Oxide (N2O) (6)Auxiliary Power Exhaust (91) +BaseRateCalculator
Ammonia (NH3) (30)Start Exhaust (2) +BaseRateCalculator
Ammonia (NH3) (30)Brakewear (9) +BaseRateCalculator
Ammonia (NH3) (30)Tirewear (10) +BaseRateCalculator
Ammonia (NH3) (30)Extended Idle Exhaust (90) +BaseRateCalculator
Ammonia (NH3) (30)Auxiliary Power Exhaust (91) +BaseRateCalculator
Total Energy Consumption (91)Start Exhaust (2) +BaseRateCalculator
Total Energy Consumption (91)Brakewear (9) +BaseRateCalculator
Total Energy Consumption (91)Tirewear (10) +BaseRateCalculator
Total Energy Consumption (91)Extended Idle Exhaust (90) +BaseRateCalculator
Total Energy Consumption (91)Auxiliary Power Exhaust (91) +BaseRateCalculator
Composite - NonECPM (118)Running Exhaust (1) +BaseRateCalculator Sulfate PM Calculator
Composite - NonECPM (118)Start Exhaust (2) +BaseRateCalculator Sulfate PM Calculator
Composite - NonECPM (118)Brakewear (9) +BaseRateCalculator
Composite - NonECPM (118)Tirewear (10) +BaseRateCalculator
Composite - NonECPM (118)Extended Idle Exhaust (90) +BaseRateCalculator Sulfate PM Calculator
Composite - NonECPM (118)Auxiliary Power Exhaust (91) +BaseRateCalculator Sulfate PM Calculator
Elemental Carbon (112)Running Exhaust (1) +BaseRateCalculator Sulfate PM Calculator
Elemental Carbon (112)Start Exhaust (2) +BaseRateCalculator Sulfate PM Calculator
Elemental Carbon (112)Brakewear (9) +BaseRateCalculator
Elemental Carbon (112)Tirewear (10) +BaseRateCalculator
Elemental Carbon (112)Extended Idle Exhaust (90) +BaseRateCalculator Sulfate PM Calculator
Elemental Carbon (112)Auxiliary Power Exhaust (91) +BaseRateCalculator Sulfate PM Calculator
Primary PM2.5 - Brakewear Particulate (116)Running Exhaust (1) +BaseRateCalculator
Primary PM2.5 - Brakewear Particulate (116)Start Exhaust (2) +BaseRateCalculator
Primary PM2.5 - Brakewear Particulate (116)Brakewear (9) +BaseRateCalculator
Primary PM2.5 - Brakewear Particulate (116)Tirewear (10) +BaseRateCalculator
Primary PM2.5 - Brakewear Particulate (116)Extended Idle Exhaust (90) +BaseRateCalculator
Primary PM2.5 - Brakewear Particulate (116)Auxiliary Power Exhaust (91) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Running Exhaust (1) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Start Exhaust (2) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Brakewear (9) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Tirewear (10) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Extended Idle Exhaust (90) +BaseRateCalculator
Primary PM2.5 - Tirewear Particulate (117)Auxiliary Power Exhaust (91) +BaseRateCalculator
Petroleum Energy Consumption (92)Running Exhaust (1) +BaseRateCalculator
Petroleum Energy Consumption (92)Start Exhaust (2) +BaseRateCalculator
Petroleum Energy Consumption (92)Brakewear (9) +BaseRateCalculator
Petroleum Energy Consumption (92)Tirewear (10) +BaseRateCalculator
Petroleum Energy Consumption (92)Extended Idle Exhaust (90) +BaseRateCalculator
Petroleum Energy Consumption (92)Auxiliary Power Exhaust (91) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Running Exhaust (1) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Start Exhaust (2) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Brakewear (9) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Tirewear (10) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Extended Idle Exhaust (90) +BaseRateCalculator
Fossil Fuel Energy Consumption (93)Auxiliary Power Exhaust (91) +BaseRateCalculator
CO2 Equivalent (98)Running Exhaust (1) +CO2AERunningStartExtendedIdleCalculator
Atmospheric CO2 (90)Start Exhaust (2) +CO2AERunningStartExtendedIdleCalculator
CO2 Equivalent (98)Start Exhaust (2) +CO2AERunningStartExtendedIdleCalculator
Atmospheric CO2 (90)Extended Idle Exhaust (90) +CO2AERunningStartExtendedIdleCalculator
CO2 Equivalent (98)Extended Idle Exhaust (90) +CO2AERunningStartExtendedIdleCalculator
Atmospheric CO2 (90)Auxiliary Power Exhaust (91) +CO2AERunningStartExtendedIdleCalculator
CO2 Equivalent (98)Auxiliary Power Exhaust (91) +CO2AERunningStartExtendedIdleCalculator
Carbon Monoxide (CO) (2)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Oxides of Nitrogen (NOx) (3)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Nitrous Oxide (N2O) (6)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Ammonia (NH3) (30)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Sulfur Dioxide (SO2) (31)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Nitrogen Oxide (NO) (32)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Nitrogen Dioxide (NO2) (33)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Nitrous Acid (HONO) (34)Crankcase Running Exhaust (15) +Crankcase Emission Calculator
Total Gaseous Hydrocarbons (1)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Carbon Monoxide (CO) (2)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Oxides of Nitrogen (NOx) (3)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Methane (CH4) (5)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Nitrous Oxide (N2O) (6)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzene (20)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Ethanol (21)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
MTBE (22)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Naphthalene particle (23)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
1,3-Butadiene (24)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Formaldehyde (25)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acetaldehyde (26)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acrolein (27)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Ammonia (NH3) (30)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Sulfur Dioxide (SO2) (31)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Nitrogen Oxide (NO) (32)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Nitrogen Dioxide (NO2) (33)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Nitrous Acid (HONO) (34)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Non-Methane Hydrocarbons (79)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Non-Methane Organic Gases (80)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Total Organic Gases (86)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Volatile Organic Compounds (87)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
2,2,4-Trimethylpentane (40)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Ethyl Benzene (41)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Hexane (42)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Propionaldehyde (43)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Styrene (44)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Toluene (45)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Xylene (46)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Dibenzo(a,h)anthracene particle (68)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Fluoranthene particle (69)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acenaphthene particle (70)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acenaphthylene particle (71)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Anthracene particle (72)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benz(a)anthracene particle (73)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(a)pyrene particle (74)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(b)fluoranthene particle (75)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(g,h,i)perylene particle (76)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(k)fluoranthene particle (77)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Chrysene particle (78)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Fluorene particle (81)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene particle (82)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Phenanthrene particle (83)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Pyrene particle (84)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Dibenzo(a,h)anthracene gas (168)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Fluoranthene gas (169)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acenaphthene gas (170)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Acenaphthylene gas (171)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Anthracene gas (172)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benz(a)anthracene gas (173)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(a)pyrene gas (174)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(b)fluoranthene gas (175)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(g,h,i)perylene gas (176)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Benzo(k)fluoranthene gas (177)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Chrysene gas (178)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Fluorene gas (181)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Phenanthrene gas (183)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Pyrene gas (184)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Naphthalene gas (185)Crankcase Start Exhaust (16) +Crankcase Emission Calculator
Total Gaseous Hydrocarbons (1)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Carbon Monoxide (CO) (2)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Oxides of Nitrogen (NOx) (3)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Methane (CH4) (5)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Nitrous Oxide (N2O) (6)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzene (20)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Ethanol (21)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
MTBE (22)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Naphthalene particle (23)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
1,3-Butadiene (24)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Formaldehyde (25)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acetaldehyde (26)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acrolein (27)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Ammonia (NH3) (30)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Sulfur Dioxide (SO2) (31)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Nitrogen Oxide (NO) (32)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Nitrogen Dioxide (NO2) (33)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Nitrous Acid (HONO) (34)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Non-Methane Hydrocarbons (79)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Non-Methane Organic Gases (80)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Total Organic Gases (86)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Volatile Organic Compounds (87)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
2,2,4-Trimethylpentane (40)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Ethyl Benzene (41)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Hexane (42)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Propionaldehyde (43)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Styrene (44)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Toluene (45)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Xylene (46)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Dibenzo(a,h)anthracene particle (68)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Fluoranthene particle (69)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acenaphthene particle (70)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acenaphthylene particle (71)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Anthracene particle (72)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benz(a)anthracene particle (73)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(a)pyrene particle (74)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(b)fluoranthene particle (75)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(g,h,i)perylene particle (76)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(k)fluoranthene particle (77)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Chrysene particle (78)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Fluorene particle (81)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene particle (82)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Phenanthrene particle (83)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Pyrene particle (84)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Dibenzo(a,h)anthracene gas (168)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Fluoranthene gas (169)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acenaphthene gas (170)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Acenaphthylene gas (171)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Anthracene gas (172)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benz(a)anthracene gas (173)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(a)pyrene gas (174)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(b)fluoranthene gas (175)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(g,h,i)perylene gas (176)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Benzo(k)fluoranthene gas (177)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Chrysene gas (178)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Fluorene gas (181)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Indeno(1,2,3,c,d)pyrene gas (182)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Phenanthrene gas (183)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Pyrene gas (184)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Naphthalene gas (185)Crankcase Extended Idle Exhaust (17) +Crankcase Emission Calculator
Total Gaseous Hydrocarbons (1)Evap Permeation (11) +Evaporative Permeation Calculator
Methane (CH4) (5)Start Exhaust (2) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Start Exhaust (2) +HC Speciation Calculator
Non-Methane Organic Gases (80)Start Exhaust (2) +HC Speciation Calculator
Total Organic Gases (86)Start Exhaust (2) +HC Speciation Calculator
Volatile Organic Compounds (87)Start Exhaust (2) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Evap Permeation (11) +HC Speciation Calculator
Non-Methane Organic Gases (80)Evap Permeation (11) +HC Speciation Calculator
Total Organic Gases (86)Evap Permeation (11) +HC Speciation Calculator
Volatile Organic Compounds (87)Evap Permeation (11) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Evap Fuel Vapor Venting (12) +HC Speciation Calculator
Non-Methane Organic Gases (80)Evap Fuel Vapor Venting (12) +HC Speciation Calculator
Total Organic Gases (86)Evap Fuel Vapor Venting (12) +HC Speciation Calculator
Volatile Organic Compounds (87)Evap Fuel Vapor Venting (12) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Evap Fuel Leaks (13) +HC Speciation Calculator
Non-Methane Organic Gases (80)Evap Fuel Leaks (13) +HC Speciation Calculator
Total Organic Gases (86)Evap Fuel Leaks (13) +HC Speciation Calculator
Volatile Organic Compounds (87)Evap Fuel Leaks (13) +HC Speciation Calculator
Methane (CH4) (5)Extended Idle Exhaust (90) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Extended Idle Exhaust (90) +HC Speciation Calculator
Non-Methane Organic Gases (80)Extended Idle Exhaust (90) +HC Speciation Calculator
Total Organic Gases (86)Extended Idle Exhaust (90) +HC Speciation Calculator
Volatile Organic Compounds (87)Extended Idle Exhaust (90) +HC Speciation Calculator
Methane (CH4) (5)Auxiliary Power Exhaust (91) +HC Speciation Calculator
Non-Methane Hydrocarbons (79)Auxiliary Power Exhaust (91) +HC Speciation Calculator
Non-Methane Organic Gases (80)Auxiliary Power Exhaust (91) +HC Speciation Calculator
Total Organic Gases (86)Auxiliary Power Exhaust (91) +HC Speciation Calculator
Volatile Organic Compounds (87)Auxiliary Power Exhaust (91) +HC Speciation Calculator
Total Gaseous Hydrocarbons (1)Evap Fuel Leaks (13) +Liquid Leaking Calculator
Nitrogen Dioxide (NO2) (33)Running Exhaust (1) +NO2 Calculator
Nitrogen Dioxide (NO2) (33)Start Exhaust (2) +NO2 Calculator
Nitrogen Dioxide (NO2) (33)Extended Idle Exhaust (90) +NO2 Calculator
Nitrogen Dioxide (NO2) (33)Auxiliary Power Exhaust (91) +NO2 Calculator
Nitrogen Oxide (NO) (32)Running Exhaust (1) +NO Calculator
Nitrogen Oxide (NO) (32)Start Exhaust (2) +NO Calculator
Nitrogen Oxide (NO) (32)Extended Idle Exhaust (90) +NO Calculator
Nitrogen Oxide (NO) (32)Auxiliary Power Exhaust (91) +NO Calculator
Nitrous Acid (HONO) (34)Running Exhaust (1) +NO Calculator
Nitrous Acid (HONO) (34)Start Exhaust (2) +NO Calculator
Nitrous Acid (HONO) (34)Extended Idle Exhaust (90) +NO Calculator
Nitrous Acid (HONO) (34)Auxiliary Power Exhaust (91) +NO Calculator
Primary PM10 - Brakewear Particulate (106)Brakewear (9) +PM10 Brake Tire Calculator
Primary PM10 - Tirewear Particulate (107)Tirewear (10) +PM10 Brake Tire Calculator
Primary Exhaust PM10 - Total (100)Start Exhaust (2) +PM10 Emission Calculator
Primary Exhaust PM10 - Total (100)Extended Idle Exhaust (90) +PM10 Emission Calculator
Primary Exhaust PM10 - Total (100)Auxiliary Power Exhaust (91) +PM10 Emission Calculator
Primary Exhaust PM10 - Total (100)Crankcase Running Exhaust (15) +PM10 Emission Calculator
Primary Exhaust PM10 - Total (100)Crankcase Start Exhaust (16) +PM10 Emission Calculator
Primary Exhaust PM10 - Total (100)Crankcase Extended Idle Exhaust (17) +PM10 Emission Calculator
Sulfur Dioxide (SO2) (31)Start Exhaust (2) +SO2 Calculator
Sulfur Dioxide (SO2) (31)Extended Idle Exhaust (90) +SO2 Calculator
Sulfur Dioxide (SO2) (31)Auxiliary Power Exhaust (91) +SO2 Calculator
Nitrate (NO3) (35)Running Exhaust (1) +Sulfate PM Calculator
Nitrate (NO3) (35)Start Exhaust (2) +Sulfate PM Calculator
Nitrate (NO3) (35)Extended Idle Exhaust (90) +Sulfate PM Calculator
Nitrate (NO3) (35)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Nitrate (NO3) (35)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Nitrate (NO3) (35)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Nitrate (NO3) (35)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Ammonium (NH4) (36)Running Exhaust (1) +Sulfate PM Calculator
Ammonium (NH4) (36)Start Exhaust (2) +Sulfate PM Calculator
Ammonium (NH4) (36)Extended Idle Exhaust (90) +Sulfate PM Calculator
Ammonium (NH4) (36)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Ammonium (NH4) (36)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Ammonium (NH4) (36)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Ammonium (NH4) (36)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Chloride (51)Running Exhaust (1) +Sulfate PM Calculator
Chloride (51)Start Exhaust (2) +Sulfate PM Calculator
Chloride (51)Extended Idle Exhaust (90) +Sulfate PM Calculator
Chloride (51)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Chloride (51)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Chloride (51)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Chloride (51)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Sodium (52)Running Exhaust (1) +Sulfate PM Calculator
Sodium (52)Start Exhaust (2) +Sulfate PM Calculator
Sodium (52)Extended Idle Exhaust (90) +Sulfate PM Calculator
Sodium (52)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Sodium (52)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Sodium (52)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Sodium (52)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Potassium (53)Running Exhaust (1) +Sulfate PM Calculator
Potassium (53)Start Exhaust (2) +Sulfate PM Calculator
Potassium (53)Extended Idle Exhaust (90) +Sulfate PM Calculator
Potassium (53)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Potassium (53)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Potassium (53)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Potassium (53)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Magnesium (54)Running Exhaust (1) +Sulfate PM Calculator
Magnesium (54)Start Exhaust (2) +Sulfate PM Calculator
Magnesium (54)Extended Idle Exhaust (90) +Sulfate PM Calculator
Magnesium (54)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Magnesium (54)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Magnesium (54)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Magnesium (54)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Calcium (55)Running Exhaust (1) +Sulfate PM Calculator
Calcium (55)Start Exhaust (2) +Sulfate PM Calculator
Calcium (55)Extended Idle Exhaust (90) +Sulfate PM Calculator
Calcium (55)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Calcium (55)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Calcium (55)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Calcium (55)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Titanium (56)Running Exhaust (1) +Sulfate PM Calculator
Titanium (56)Start Exhaust (2) +Sulfate PM Calculator
Titanium (56)Extended Idle Exhaust (90) +Sulfate PM Calculator
Titanium (56)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Titanium (56)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Titanium (56)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Titanium (56)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Silicon (57)Running Exhaust (1) +Sulfate PM Calculator
Silicon (57)Start Exhaust (2) +Sulfate PM Calculator
Silicon (57)Extended Idle Exhaust (90) +Sulfate PM Calculator
Silicon (57)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Silicon (57)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Silicon (57)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Silicon (57)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Aluminum (58)Running Exhaust (1) +Sulfate PM Calculator
Aluminum (58)Start Exhaust (2) +Sulfate PM Calculator
Aluminum (58)Extended Idle Exhaust (90) +Sulfate PM Calculator
Aluminum (58)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Aluminum (58)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Aluminum (58)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Aluminum (58)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Iron (59)Running Exhaust (1) +Sulfate PM Calculator
Iron (59)Start Exhaust (2) +Sulfate PM Calculator
Iron (59)Extended Idle Exhaust (90) +Sulfate PM Calculator
Iron (59)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Iron (59)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Iron (59)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Iron (59)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Start Exhaust (2) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Extended Idle Exhaust (90) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Primary Exhaust PM2.5 - Total (110)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Organic Carbon (111)Running Exhaust (1) +Sulfate PM Calculator
Organic Carbon (111)Start Exhaust (2) +Sulfate PM Calculator
Organic Carbon (111)Extended Idle Exhaust (90) +Sulfate PM Calculator
Organic Carbon (111)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Organic Carbon (111)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Organic Carbon (111)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Organic Carbon (111)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Elemental Carbon (112)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Elemental Carbon (112)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Elemental Carbon (112)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Sulfate Particulate (115)Running Exhaust (1) +Sulfate PM Calculator
Sulfate Particulate (115)Start Exhaust (2) +Sulfate PM Calculator
Sulfate Particulate (115)Extended Idle Exhaust (90) +Sulfate PM Calculator
Sulfate Particulate (115)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Sulfate Particulate (115)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Sulfate Particulate (115)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Sulfate Particulate (115)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Composite - NonECPM (118)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Composite - NonECPM (118)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Composite - NonECPM (118)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
H2O (aerosol) (119)Running Exhaust (1) +Sulfate PM Calculator
H2O (aerosol) (119)Start Exhaust (2) +Sulfate PM Calculator
H2O (aerosol) (119)Extended Idle Exhaust (90) +Sulfate PM Calculator
H2O (aerosol) (119)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
H2O (aerosol) (119)Crankcase Running Exhaust (15) +Sulfate PM Calculator
H2O (aerosol) (119)Crankcase Start Exhaust (16) +Sulfate PM Calculator
H2O (aerosol) (119)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Running Exhaust (1) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Start Exhaust (2) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Extended Idle Exhaust (90) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Crankcase Running Exhaust (15) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Crankcase Start Exhaust (16) +Sulfate PM Calculator
CMAQ5.0 Unspeciated (PMOTHR) (121)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Running Exhaust (1) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Start Exhaust (2) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Extended Idle Exhaust (90) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Auxiliary Power Exhaust (91) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Crankcase Running Exhaust (15) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Crankcase Start Exhaust (16) +Sulfate PM Calculator
Non-carbon Organic Matter (NCOM) (122)Crankcase Extended Idle Exhaust (17) +Sulfate PM Calculator
CB05 Mechanism (1000)Running Exhaust (1) +TOG Speciation Calculator
CB05_ALD2 (1001)Running Exhaust (1) +TOG Speciation Calculator
CB05_ALDX (1002)Running Exhaust (1) +TOG Speciation Calculator
CB05_ETH (1005)Running Exhaust (1) +TOG Speciation Calculator
CB05_ETHA (1006)Running Exhaust (1) +TOG Speciation Calculator
CB05_FORM (1008)Running Exhaust (1) +TOG Speciation Calculator
CB05_IOLE (1009)Running Exhaust (1) +TOG Speciation Calculator
CB05_OLE (1012)Running Exhaust (1) +TOG Speciation Calculator
CB05_PAR (1013)Running Exhaust (1) +TOG Speciation Calculator
CB05_TOL (1015)Running Exhaust (1) +TOG Speciation Calculator
CB05_UNR (1017)Running Exhaust (1) +TOG Speciation Calculator
CB05_XYL (1018)Running Exhaust (1) +TOG Speciation Calculator
CB05_ISOP (1010)Running Exhaust (1) +TOG Speciation Calculator
CB05_MEOH (1011)Running Exhaust (1) +TOG Speciation Calculator
CB05_TERP (1014)Running Exhaust (1) +TOG Speciation Calculator
CB05_UNK (1016)Running Exhaust (1) +TOG Speciation Calculator
CB05 Mechanism (1000)Start Exhaust (2) +TOG Speciation Calculator
NonHAPTOG (88)Start Exhaust (2) +TOG Speciation Calculator
CB05_ALD2 (1001)Start Exhaust (2) +TOG Speciation Calculator
CB05_ALDX (1002)Start Exhaust (2) +TOG Speciation Calculator
CB05_ETH (1005)Start Exhaust (2) +TOG Speciation Calculator
CB05_ETHA (1006)Start Exhaust (2) +TOG Speciation Calculator
CB05_FORM (1008)Start Exhaust (2) +TOG Speciation Calculator
CB05_IOLE (1009)Start Exhaust (2) +TOG Speciation Calculator
CB05_OLE (1012)Start Exhaust (2) +TOG Speciation Calculator
CB05_PAR (1013)Start Exhaust (2) +TOG Speciation Calculator
CB05_TOL (1015)Start Exhaust (2) +TOG Speciation Calculator
CB05_UNR (1017)Start Exhaust (2) +TOG Speciation Calculator
CB05_XYL (1018)Start Exhaust (2) +TOG Speciation Calculator
CB05_ISOP (1010)Start Exhaust (2) +TOG Speciation Calculator
CB05_MEOH (1011)Start Exhaust (2) +TOG Speciation Calculator
CB05_TERP (1014)Start Exhaust (2) +TOG Speciation Calculator
CB05_UNK (1016)Start Exhaust (2) +TOG Speciation Calculator
CB05 Mechanism (1000)Evap Permeation (11) +TOG Speciation Calculator
NonHAPTOG (88)Evap Permeation (11) +TOG Speciation Calculator
CB05_ALD2 (1001)Evap Permeation (11) +TOG Speciation Calculator
CB05_ALDX (1002)Evap Permeation (11) +TOG Speciation Calculator
CB05_ETH (1005)Evap Permeation (11) +TOG Speciation Calculator
CB05_FORM (1008)Evap Permeation (11) +TOG Speciation Calculator
CB05_IOLE (1009)Evap Permeation (11) +TOG Speciation Calculator
CB05_ISOP (1010)Evap Permeation (11) +TOG Speciation Calculator
CB05_MEOH (1011)Evap Permeation (11) +TOG Speciation Calculator
CB05_OLE (1012)Evap Permeation (11) +TOG Speciation Calculator
CB05_PAR (1013)Evap Permeation (11) +TOG Speciation Calculator
CB05_TERP (1014)Evap Permeation (11) +TOG Speciation Calculator
CB05_TOL (1015)Evap Permeation (11) +TOG Speciation Calculator
CB05_UNR (1017)Evap Permeation (11) +TOG Speciation Calculator
CB05_XYL (1018)Evap Permeation (11) +TOG Speciation Calculator
CB05_ETHA (1006)Evap Permeation (11) +TOG Speciation Calculator
CB05 Mechanism (1000)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
NonHAPTOG (88)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_ALD2 (1001)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_ALDX (1002)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_FORM (1008)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_IOLE (1009)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_ISOP (1010)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_OLE (1012)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_PAR (1013)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_TOL (1015)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_UNR (1017)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_XYL (1018)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05_TERP (1014)Evap Fuel Vapor Venting (12) +TOG Speciation Calculator
CB05 Mechanism (1000)Evap Fuel Leaks (13) +TOG Speciation Calculator
NonHAPTOG (88)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_ALD2 (1001)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_ALDX (1002)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_FORM (1008)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_IOLE (1009)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_ISOP (1010)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_OLE (1012)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_PAR (1013)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_TOL (1015)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_UNR (1017)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_XYL (1018)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05_TERP (1014)Evap Fuel Leaks (13) +TOG Speciation Calculator
CB05 Mechanism (1000)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_ALD2 (1001)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_ALDX (1002)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_ETH (1005)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_ETHA (1006)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_FORM (1008)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_IOLE (1009)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_OLE (1012)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_PAR (1013)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_TOL (1015)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_UNR (1017)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_XYL (1018)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_ISOP (1010)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_MEOH (1011)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_TERP (1014)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05_UNK (1016)Crankcase Running Exhaust (15) +TOG Speciation Calculator
CB05 Mechanism (1000)Crankcase Start Exhaust (16) +TOG Speciation Calculator
NonHAPTOG (88)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_ALD2 (1001)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_ALDX (1002)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_ETH (1005)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_ETHA (1006)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_FORM (1008)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_IOLE (1009)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_OLE (1012)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_PAR (1013)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_TOL (1015)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_UNR (1017)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_XYL (1018)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_ISOP (1010)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_MEOH (1011)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_TERP (1014)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05_UNK (1016)Crankcase Start Exhaust (16) +TOG Speciation Calculator
CB05 Mechanism (1000)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
NonHAPTOG (88)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_ALD2 (1001)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_ALDX (1002)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_ETH (1005)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_ETHA (1006)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_FORM (1008)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_IOLE (1009)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_ISOP (1010)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_OLE (1012)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_PAR (1013)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_TERP (1014)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_TOL (1015)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_UNK (1016)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_UNR (1017)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05_XYL (1018)Crankcase Extended Idle Exhaust (17) +TOG Speciation Calculator
CB05 Mechanism (1000)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_ALD2 (1001)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_ALDX (1002)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_FORM (1008)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_IOLE (1009)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_ISOP (1010)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_OLE (1012)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_PAR (1013)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_TERP (1014)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_TOL (1015)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_UNR (1017)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05_XYL (1018)Refueling Displacement Vapor Loss (18) +TOG Speciation Calculator
CB05 Mechanism (1000)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_ALD2 (1001)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_ALDX (1002)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_FORM (1008)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_IOLE (1009)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_ISOP (1010)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_OLE (1012)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_PAR (1013)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_TOL (1015)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_UNR (1017)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_XYL (1018)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05_TERP (1014)Refueling Spillage Loss (19) +TOG Speciation Calculator
CB05 Mechanism (1000)Extended Idle Exhaust (90) +TOG Speciation Calculator
NonHAPTOG (88)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_ALD2 (1001)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_ALDX (1002)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_ETH (1005)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_ETHA (1006)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_FORM (1008)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_IOLE (1009)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_ISOP (1010)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_OLE (1012)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_PAR (1013)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_TERP (1014)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_TOL (1015)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_UNK (1016)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_UNR (1017)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05_XYL (1018)Extended Idle Exhaust (90) +TOG Speciation Calculator
CB05 Mechanism (1000)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
NonHAPTOG (88)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_ALD2 (1001)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_ALDX (1002)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_ETH (1005)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_ETHA (1006)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_FORM (1008)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_IOLE (1009)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_ISOP (1010)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_OLE (1012)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_PAR (1013)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_TERP (1014)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_TOL (1015)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_UNK (1016)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_UNR (1017)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
CB05_XYL (1018)Auxiliary Power Exhaust (91) +TOG Speciation Calculator
Total Gaseous Hydrocarbons (1)Evap Fuel Vapor Venting (12) +Tank Vapor Venting Calculator

+ diff --git a/MOVESConfiguration.txt b/MOVESConfiguration.txt new file mode 100644 index 0000000..f3cb087 --- /dev/null +++ b/MOVESConfiguration.txt @@ -0,0 +1,13 @@ +defaultServerName = localhost +defaultDatabaseName = movesdb20181022 +executionServerName = localhost +executionDatabaseName = MOVESExecution +outputServerName = 127.0.0.1 +outputDatabaseName = MOVESOutput +nonroadExePath = NONROAD\NR08a\NONROAD.exe +sharedDistributedFolderPath = SharedWork +computerIDPath = MOVESComputerID.txt +masterFolderPath = . +saveTODOPath = +mysqlUserName = moves +mysqlPassword = 744EF51E4F93167816578A645279E592D2B4D8A76AD450DF6463 diff --git a/MOVESMaster.bat b/MOVESMaster.bat new file mode 100644 index 0000000..bfb3b8e --- /dev/null +++ b/MOVESMaster.bat @@ -0,0 +1,7 @@ +@echo off +if exist sharedwork\*.* erase /Q /S /F sharedwork\*.* +if exist WorkerFolder\*.* erase /Q /S /F WorkerFolder\*.* +if exist moveslog_old.txt erase moveslog_old.txt +if exist moveslog.txt rename moveslog.txt moveslog_old.txt +call setenv.bat +ant rungui \ No newline at end of file diff --git a/MOVESTemporary/.gitignore b/MOVESTemporary/.gitignore new file mode 100644 index 0000000..86d0cb2 --- /dev/null +++ b/MOVESTemporary/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore \ No newline at end of file diff --git a/MOVESWorker.bat b/MOVESWorker.bat new file mode 100644 index 0000000..b4c0b2a --- /dev/null +++ b/MOVESWorker.bat @@ -0,0 +1,4 @@ +@echo off +if exist WorkerFolder\*.* erase /Q /S /F WorkerFolder\*.* +call setenv.bat +ant runworker \ No newline at end of file diff --git a/NONROAD/NR08a/DATA/ACTIVITY/ACTIVITY.DAT b/NONROAD/NR08a/DATA/ACTIVITY/ACTIVITY.DAT new file mode 100644 index 0000000..3cfa5c6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ACTIVITY/ACTIVITY.DAT @@ -0,0 +1,492 @@ +This file contains the the activity data for the NONROAD model. The +activity is defined as how often a piece of equipment is used in +a year. This file also contains some other information about +the equipment, such as average load factor and gas tank volume. + +8/24/06 13d, like 13c but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/18/08 13e, like 13d but remove 2280* (temporary <50hp commercial marine inputs). + +----------------------------------------------------------------- +This data file contains only one packet. + +The format is as follows: + +Line: 1-10 character --- SCC code + 12-51 character --- Equipment description (not used) + 52-56 character --- Region code + 57-66 character --- (not used. was exhaust technology type) + 67-71 real --- Minimum HP + 72-76 real --- Maximum HP + 77-81 real --- Load factor + 82-86 real --- (not used) + 87-96 character --- Activity level units + 97-106 real --- Activity level + 107-116 real --- Identifier for age adjustment curve (DEFAULT=no adjustment) +------------------------------------------ NotUsed HPmn HPmx LFac NoUse Units Hours/Yr AgeAdj + +/ACTIVITY/ +2260001010 2-Stroke Motorcycles: Off-Road 0 9999 1.00 Hrs/Yr 1600 DEFAULT +2260001020 2-Stroke Snowmobiles 0 9999 0.34 Hrs/Yr 57 DEFAULT +2260001030 2-Stroke All Terrain Vehicles 0 9999 1.00 Hrs/Yr 1608 DEFAULT +2260001050 2-Stroke Golf Carts 0 9999 0.46 Hrs/Yr 1080 DEFAULT +2260001060 2-Stroke Specialty Vehicle Carts 0 9999 0.58 Hrs/Yr 65 DEFAULT +2260002003 2-Stroke Asphalt Pavers 0 9999 0.66 Hrs/Yr 392 DEFAULT +2260002006 2-Stroke Tampers/Rammers 0 9999 0.55 Hrs/Yr 160 DEFAULT +2260002009 2-Stroke Plate Compactors 0 9999 0.55 Hrs/Yr 166 DEFAULT +2260002012 2-Stroke Concrete Pavers 0 9999 0.55 Hrs/Yr 0 DEFAULT +2260002015 2-Stroke Rollers 0 9999 0.62 Hrs/Yr 621 DEFAULT +2260002018 2-Stroke Scrapers 0 9999 0.70 Hrs/Yr 540 DEFAULT +2260002021 2-Stroke Paving Equipment 0 9999 0.59 Hrs/Yr 175 DEFAULT +2260002024 2-Stroke Surfacing Equipment 0 9999 0.49 Hrs/Yr 488 DEFAULT +2260002027 2-Stroke Signal Boards 0 9999 0.72 Hrs/Yr 318 DEFAULT +2260002030 2-Stroke Trenchers 0 9999 0.66 Hrs/Yr 402 DEFAULT +2260002033 2-Stroke Bore/Drill Rigs 0 9999 0.79 Hrs/Yr 107 DEFAULT +2260002036 2-Stroke Excavators 0 9999 0.53 Hrs/Yr 378 DEFAULT +2260002039 2-Stroke Concrete/Industrial Saws 0 9999 0.78 Hrs/Yr 610 DEFAULT +2260002042 2-Stroke Cement & Mortar Mixers 0 9999 0.59 Hrs/Yr 84 DEFAULT +2260002045 2-Stroke Cranes 0 9999 0.47 Hrs/Yr 415 DEFAULT +2260002048 2-Stroke Graders 0 9999 0.64 Hrs/Yr 504 DEFAULT +2260002051 2-Stroke Off-highway Trucks 0 9999 0.80 Hrs/Yr 450 DEFAULT +2260002054 2-Stroke Crushing/Proc. Equipment 0 9999 0.85 Hrs/Yr 241 DEFAULT +2260002057 2-Stroke Rough Terrain Forklifts 0 9999 0.63 Hrs/Yr 413 DEFAULT +2260002060 2-Stroke Rubber Tire Loaders 0 9999 0.71 Hrs/Yr 512 DEFAULT +2260002063 2-Stroke Rubber Tire Dozers 0 9999 0.75 Hrs/Yr 900 DEFAULT +2260002066 2-Stroke Tractors/Loaders/Backhoes 0 9999 0.48 Hrs/Yr 870 DEFAULT +2260002069 2-Stroke Crawler Dozer 0 9999 0.80 Hrs/Yr 700 DEFAULT +2260002072 2-Stroke Skid Steer Loaders 0 9999 0.58 Hrs/Yr 310 DEFAULT +2260002075 2-Stroke Off-Highway Tractors 0 9999 0.70 Hrs/Yr 155 DEFAULT +2260002078 2-Stroke Dumpers/Tenders 0 9999 0.41 Hrs/Yr 127 DEFAULT +2260002081 2-Stroke Other Construction Equipment 0 9999 0.48 Hrs/Yr 371 DEFAULT +2260003010 2-Stroke Aerial Lifts 0 9999 0.46 Hrs/Yr 361 DEFAULT +2260003020 2-Stroke Forklifts 0 9999 0.30 Hrs/Yr 1800 DEFAULT +2260003030 2-Stroke Sweepers/Scrubbers 0 9999 0.71 Hrs/Yr 516 DEFAULT +2260003040 2-Stroke Other General Industrial Equipm 0 9999 0.54 Hrs/Yr 713 DEFAULT +2260003050 2-Stroke Other Material Handling Equipme 0 9999 0.53 Hrs/Yr 386 DEFAULT +2260003060 2-Stroke Refrigeration 0 9999 0.46 Hrs/Yr 605 DEFAULT +2260003070 2-Stroke Terminal Tractors 0 9999 0.78 Hrs/Yr 827 DEFAULT +2260004010 2-Stroke Lawn mowers (Residential) 0 9999 0.33 Hrs/Yr 25 DEFAULT +2260004011 2-Stroke Lawn mowers (Commercial) 0 9999 0.33 Hrs/Yr 406 DEFAULT +2260004015 2-Stroke Rotary Tillers < 6 HP (Resident 0 9999 0.40 Hrs/Yr 17 DEFAULT +2260004016 2-Stroke Rotary Tillers < 6 HP (Commerci 0 9999 0.40 Hrs/Yr 472 DEFAULT +2260004020 2-Stroke Chain Saws < 6 HP (Residential) 0 9999 0.70 Hrs/Yr 13 DEFAULT +2260004021 2-Stroke Chain Saws < 6 HP (Commercial) 0 9999 0.70 Hrs/Yr 303 DEFAULT +2260004025 2-Stroke Trimmers/Edgers/Brush Cutters 0 9999 0.91 Hrs/Yr 9 DEFAULT +2260004026 2-Stroke Trimmers/Edgers/Brush Cutters 0 9999 0.91 Hrs/Yr 137 DEFAULT +2260004030 2-Stroke Leafblowers/Vacuums (Residentia 0 9999 0.94 Hrs/Yr 10 DEFAULT +2260004031 2-Stroke Leafblowers/Vacuums (Commercial 0 9999 0.94 Hrs/Yr 282 DEFAULT +2260004035 2-Stroke Snowblowers (Residential) 0 9999 0.35 Hrs/Yr 8 DEFAULT +2260004036 2-Stroke Snowblowers (Commercial) 0 9999 0.35 Hrs/Yr 136 DEFAULT +2260004040 2-Stroke Rear Engine Riding Mowers (Res. 0 9999 0.38 Hrs/Yr 36 DEFAULT +2260004041 2-Stroke Rear Engine Riding Mowers (Comm 0 9999 0.38 Hrs/Yr 569 DEFAULT +2260004045 2-Stroke Front Mowers (Residential) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2260004046 2-Stroke Front Mowers (Commercial) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2260004050 2-Stroke Shredders < 6 HP (Residential) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2260004051 2-Stroke Shredders < 6 HP (Commercial) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2260004055 2-Stroke Lawn & Garden Tractors (Residen 0 9999 0.44 Hrs/Yr 45 DEFAULT +2260004056 2-Stroke Lawn & Garden Tractors (Commerc 0 9999 0.44 Hrs/Yr 721 DEFAULT +2260004060 2-Stroke Wood Splitters (Residential) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2260004061 2-Stroke Wood Splitters (Commercial) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2260004065 2-Stroke Chippers/Stump Grinders (Res.) 0 9999 0.78 Hrs/Yr 488 DEFAULT +2260004066 2-Stroke Chippers/Stump Grinders (Comm.) 0 9999 0.78 Hrs/Yr 488 DEFAULT +2260004070 2-Stroke Commercial Turf Equipment (Res. 0 9999 0.60 Hrs/Yr 682 DEFAULT +2260004071 2-Stroke Commercial Turf Equipment (Comm 0 9999 0.60 Hrs/Yr 682 DEFAULT +2260004075 2-Stroke Other Lawn & Garden Equipment 0 9999 0.58 Hrs/Yr 61 DEFAULT +2260004076 2-Stroke Other Lawn & Garden Equipment 0 9999 0.58 Hrs/Yr 61 DEFAULT +2260005010 2-Stroke 2-Wheel Tractors 0 9999 0.62 Hrs/Yr 286 DEFAULT +2260005015 2-Stroke Agricultural Tractors 0 9999 0.62 Hrs/Yr 550 DEFAULT +2260005020 2-Stroke Combines 0 9999 0.74 Hrs/Yr 125 DEFAULT +2260005025 2-Stroke Balers 0 9999 0.62 Hrs/Yr 68 DEFAULT +2260005030 2-Stroke Agricultural Mowers 0 9999 0.48 Hrs/Yr 175 DEFAULT +2260005035 2-Stroke Sprayers 0 9999 0.65 Hrs/Yr 80 DEFAULT +2260005040 2-Stroke Tillers > 6 HP 0 9999 0.71 Hrs/Yr 43 DEFAULT +2260005045 2-Stroke Swathers 0 9999 0.52 Hrs/Yr 95 DEFAULT +2260005055 2-Stroke Other Agricultural Equipment 0 9999 0.55 Hrs/Yr 124 DEFAULT +2260005060 2-Stroke Irrigation Sets 0 9999 0.60 Hrs/Yr 716 DEFAULT +2260006005 2-Stroke Light Commercial Generator Set 0 9999 0.68 Hrs/Yr 115 DEFAULT +2260006010 2-Stroke Light Commercial Pumps 0 9999 0.69 Hrs/Yr 221 DEFAULT +2260006015 2-Stroke Light Commercial Air Compresso 0 9999 0.56 Hrs/Yr 484 DEFAULT +2260006020 2-Stroke Light Commercial Gas Compresso 0 9999 0.85 Hrs/Yr 6000 DEFAULT +2260006025 2-Stroke Light Commercial Welders 0 9999 0.68 Hrs/Yr 408 DEFAULT +2260006030 2-Stroke Light Commercial Pressure Wash 0 9999 0.85 Hrs/Yr 115 DEFAULT +2260006035 2-Stroke Hydro Power Units 0 9999 0.56 Hrs/Yr 450 DEFAULT +2260007005 2-Stroke Logging Equipment Chain Saws > 0 9999 0.70 Hrs/Yr 303 DEFAULT +2260007010 2-Stroke Logging Equipment Shredders > 0 9999 0.80 Hrs/Yr 50 DEFAULT +2260007015 2-Stroke Logging Equipment Skidders 0 9999 0.70 Hrs/Yr 350 DEFAULT +2260007020 2-Stroke Logging Equipment Fellers/Bunc 0 9999 0.70 Hrs/Yr 0 DEFAULT +2260008005 2-Stroke Airport Support Equipment 0 9999 0.56 Hrs/Yr 681 DEFAULT +2260009010 2-Stroke Other Underground Mining Equipm 0 9999 0.80 Hrs/Yr 260 DEFAULT +2260010010 2-Stroke Other Oil Field Equipment 0 9999 0.90 Hrs/Yr 1104 DEFAULT +2265001010 4-Stroke Motorcycles: Off-Road 0 9999 1.00 Hrs/Yr 1600 DEFAULT +2265001020 4-Stroke Snowmobiles 0 9999 0.34 Hrs/Yr 57 DEFAULT +2265001030 4-Stroke All Terrain Vehicles 0 9999 1.00 Hrs/Yr 1608 DEFAULT +2265001050 4-Stroke Golf Carts 0 9999 0.46 Hrs/Yr 1080 DEFAULT +2265001060 4-Stroke Specialty Vehicle Carts 0 9999 0.58 Hrs/Yr 65 DEFAULT +2265002003 4-Stroke Asphalt Pavers 0 9999 0.66 Hrs/Yr 392 DEFAULT +2265002006 4-Stroke Tampers/Rammers 0 9999 0.55 Hrs/Yr 160 DEFAULT +2265002009 4-Stroke Plate Compactors 0 9999 0.55 Hrs/Yr 166 DEFAULT +2265002012 4-Stroke Concrete Pavers 0 9999 0.55 Hrs/Yr 0 DEFAULT +2265002015 4-Stroke Rollers 0 9999 0.62 Hrs/Yr 621 DEFAULT +2265002018 4-Stroke Scrapers 0 9999 0.70 Hrs/Yr 540 DEFAULT +2265002021 4-Stroke Paving Equipment 0 9999 0.59 Hrs/Yr 175 DEFAULT +2265002024 4-Stroke Surfacing Equipment 0 9999 0.49 Hrs/Yr 488 DEFAULT +2265002027 4-Stroke Signal Boards 0 9999 0.72 Hrs/Yr 318 DEFAULT +2265002030 4-Stroke Trenchers 0 9999 0.66 Hrs/Yr 402 DEFAULT +2265002033 4-Stroke Bore/Drill Rigs 0 9999 0.79 Hrs/Yr 107 DEFAULT +2265002036 4-Stroke Excavators 0 9999 0.53 Hrs/Yr 378 DEFAULT +2265002039 4-Stroke Concrete/Industrial Saws 0 9999 0.78 Hrs/Yr 610 DEFAULT +2265002042 4-Stroke Cement & Mortar Mixers 0 9999 0.59 Hrs/Yr 84 DEFAULT +2265002045 4-Stroke Cranes 0 9999 0.47 Hrs/Yr 415 DEFAULT +2265002048 4-Stroke Graders 0 9999 0.64 Hrs/Yr 504 DEFAULT +2265002051 4-Stroke Off-highway Trucks 0 9999 0.80 Hrs/Yr 450 DEFAULT +2265002054 4-Stroke Crushing/Proc. Equipment 0 9999 0.85 Hrs/Yr 241 DEFAULT +2265002057 4-Stroke Rough Terrain Forklifts 0 9999 0.63 Hrs/Yr 413 DEFAULT +2265002060 4-Stroke Rubber Tire Loaders 0 9999 0.71 Hrs/Yr 512 DEFAULT +2265002063 4-Stroke Rubber Tire Dozers 0 9999 0.75 Hrs/Yr 900 DEFAULT +2265002066 4-Stroke Tractors/Loaders/Backhoes 0 9999 0.48 Hrs/Yr 870 DEFAULT +2265002069 4-Stroke Crawler Tractors 0 9999 0.80 Hrs/Yr 700 DEFAULT +2265002072 4-Stroke Skid Steer Loaders 0 9999 0.58 Hrs/Yr 310 DEFAULT +2265002075 4-Stroke Off-Highway Tractors 0 9999 0.70 Hrs/Yr 155 DEFAULT +2265002078 4-Stroke Dumpers/Tenders 0 9999 0.41 Hrs/Yr 127 DEFAULT +2265002081 4-Stroke Other Construction Equipment 0 9999 0.48 Hrs/Yr 371 DEFAULT +2265003010 4-Stroke Aerial Lifts 0 9999 0.46 Hrs/Yr 361 DEFAULT +2265003020 4-Stroke Forklifts 0 9999 0.30 Hrs/Yr 1800 DEFAULT +2265003030 4-Stroke Sweepers/Scrubbers 0 9999 0.71 Hrs/Yr 516 DEFAULT +2265003040 4-Stroke Other General Industrial Equipm 0 9999 0.54 Hrs/Yr 713 DEFAULT +2265003050 4-Stroke Other Material Handling Equipme 0 9999 0.53 Hrs/Yr 386 DEFAULT +2265003060 4-Stroke Industial AC\Refrigeration 0 9999 0.46 Hrs/Yr 605 DEFAULT +2265003070 4-Stroke Terminal Tractors 0 9999 0.78 Hrs/Yr 827 DEFAULT +2265004010 4-Stroke Lawn mowers (Residential) 0 9999 0.33 Hrs/Yr 25 DEFAULT +2265004011 4-Stroke Lawn mowers (Commercial) 0 9999 0.33 Hrs/Yr 406 DEFAULT +2265004015 4-Stroke Rotary Tillers < 6 HP (Resident 0 9999 0.40 Hrs/Yr 17 DEFAULT +2265004016 4-Stroke Rotary Tillers < 6 HP (Commerci 0 9999 0.40 Hrs/Yr 472 DEFAULT +2265004020 4-Stroke Chain Saws < 6 HP (Residential) 0 9999 0.70 Hrs/Yr 13 DEFAULT +2265004021 4-Stroke Chain Saws < 6 HP (Commercial) 0 9999 0.70 Hrs/Yr 303 DEFAULT +2265004025 4-Stroke Trimmers/Edgers/Brush Cutters 0 9999 0.91 Hrs/Yr 9 DEFAULT +2265004026 4-Stroke Trimmers/Edgers/Brush Cutters 0 9999 0.91 Hrs/Yr 137 DEFAULT +2265004030 4-Stroke Leafblowers/Vacuums (Residentia 0 9999 0.94 Hrs/Yr 10 DEFAULT +2265004031 4-Stroke Leafblowers/Vacuums (Commercial 0 9999 0.94 Hrs/Yr 282 DEFAULT +2265004035 4-Stroke Snowblowers (Residential) 0 9999 0.35 Hrs/Yr 8 DEFAULT +2265004036 4-Stroke Snowblowers (Commercial) 0 9999 0.35 Hrs/Yr 136 DEFAULT +2265004040 4-Stroke Rear Engine Riding Mowers (Res. 0 9999 0.38 Hrs/Yr 36 DEFAULT +2265004041 4-Stroke Rear Engine Riding Mowers (Comm 0 9999 0.38 Hrs/Yr 569 DEFAULT +2265004045 4-Stroke Front Mowers (Residential) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2265004046 4-Stroke Front Mowers (Commercial) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2265004050 4-Stroke Shredders < 6 HP (Residential) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2265004051 4-Stroke Shredders < 6 HP (Commercial) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2265004055 4-Stroke Lawn & Garden Tractors (Residen 0 9999 0.44 Hrs/Yr 45 DEFAULT +2265004056 4-Stroke Lawn & Garden Tractors (Commerc 0 9999 0.44 Hrs/Yr 721 DEFAULT +2265004060 4-Stroke Wood Splitters (Residential) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2265004061 4-Stroke Wood Splitters (Commercial) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2265004065 4-Stroke Chippers/Stump Grinders (Res.) 0 9999 0.78 Hrs/Yr 488 DEFAULT +2265004066 4-Stroke Chippers/Stump Grinders (Comm.) 0 9999 0.78 Hrs/Yr 488 DEFAULT +2265004070 4-Stroke Commercial Turf Equipment (Res. 0 9999 0.60 Hrs/Yr 682 DEFAULT +2265004071 4-Stroke Commercial Turf Equipment (Comm 0 9999 0.60 Hrs/Yr 682 DEFAULT +2265004075 4-Stroke Other Lawn & Garden Equipment 0 9999 0.58 Hrs/Yr 61 DEFAULT +2265004076 4-Stroke Other Lawn & Garden Equipment 0 9999 0.58 Hrs/Yr 61 DEFAULT +2265005010 4-Stroke 2-Wheel Tractors 0 9999 0.62 Hrs/Yr 286 DEFAULT +2265005015 4-Stroke Agricultural Tractors 0 9999 0.62 Hrs/Yr 550 DEFAULT +2265005020 4-Stroke Combines 0 9999 0.74 Hrs/Yr 125 DEFAULT +2265005025 4-Stroke Balers 0 9999 0.62 Hrs/Yr 68 DEFAULT +2265005030 4-Stroke Agricultural Mowers 0 9999 0.48 Hrs/Yr 175 DEFAULT +2265005035 4-Stroke Sprayers 0 9999 0.65 Hrs/Yr 80 DEFAULT +2265005040 4-Stroke Tillers > 5 HP 0 9999 0.71 Hrs/Yr 43 DEFAULT +2265005045 4-Stroke Swathers 0 9999 0.52 Hrs/Yr 95 DEFAULT +2265005055 4-Stroke Other Agricultural Equipment 0 9999 0.55 Hrs/Yr 124 DEFAULT +2265005060 4-Stroke Irrigation Sets 0 9999 0.60 Hrs/Yr 716 DEFAULT +2265006005 4-Stroke Light Commercial Generator Set 0 9999 0.68 Hrs/Yr 115 DEFAULT +2265006010 4-Stroke Light Commercial Pumps 0 9999 0.69 Hrs/Yr 221 DEFAULT +2265006015 4-Stroke Light Commercial Air Compresso 0 9999 0.56 Hrs/Yr 484 DEFAULT +2265006020 4-Stroke Light Commercial Gas Compresso 0 9999 0.85 Hrs/Yr 6000 DEFAULT +2265006025 4-Stroke Light Commercial Welders 0 9999 0.68 Hrs/Yr 408 DEFAULT +2265006030 4-Stroke Light Commercial Pressure Wash 0 9999 0.85 Hrs/Yr 115 DEFAULT +2265006035 4-Stroke Hydro Power Units 0 9999 0.56 Hrs/Yr 450 DEFAULT +2265007005 4-Stroke Logging Equipment Chain Saws > 0 9999 0.70 Hrs/Yr 303 DEFAULT +2265007010 4-Stroke Logging Equipment Shredders > 0 9999 0.80 Hrs/Yr 50 DEFAULT +2265007015 4-Stroke Logging Equipment Skidders 0 9999 0.70 Hrs/Yr 350 DEFAULT +2265007020 4-Stroke Logging Equipment Fellers/Bunc 0 9999 0.70 Hrs/Yr 0 DEFAULT +2265008005 4-Stroke Airport Support Equipment 0 9999 0.56 Hrs/Yr 681 DEFAULT +2265009010 4-Stroke Other Underground Mining Equipm 0 9999 0.80 Hrs/Yr 260 DEFAULT +2265010010 4-Stroke Other Oil Field Equipment 0 9999 0.90 Hrs/Yr 1104 DEFAULT +2270001020 Diesel Snowmobiles (unused) 0 9999 0.34 Hrs/Yr 40 DEFAULT +2270001030 Diesel All Terrain Vehicles/MC (unused) 0 9999 0.42 Hrs/Yr 0 DEFAULT +2270001050 Diesel Golf Carts (unused) 0 9999 0.49 Hrs/Yr 1150 DEFAULT +2270001060 Diesel Specialty Vehicle Carts 0 9999 0.21 Hrs/Yr 435 DEFAULT +2270002003 Diesel Pavers 0 9999 0.59 Hrs/Yr 821 DEFAULT +2270002006 Diesel Tampers/Rammers (unused) 0 9999 0.43 Hrs/Yr 460 DEFAULT +2270002009 Diesel Plate Compactors 0 9999 0.43 Hrs/Yr 484 DEFAULT +2270002012 Diesel Concrete Pavers (unused) 0 9999 0.59 Hrs/Yr 0 DEFAULT +2270002015 Diesel Rollers 0 9999 0.59 Hrs/Yr 760 DEFAULT +2270002018 Diesel Scrapers 0 9999 0.59 Hrs/Yr 914 DEFAULT +2270002021 Diesel Paving Equipment 0 9999 0.59 Hrs/Yr 622 DEFAULT +2270002024 Diesel Surfacing Equipment 0 9999 0.59 Hrs/Yr 561 DEFAULT +2270002027 Diesel Signal Boards 0 9999 0.43 Hrs/Yr 535 DEFAULT +2270002030 Diesel Trenchers 0 9999 0.59 Hrs/Yr 593 DEFAULT +2270002033 Diesel Bore/Drill Rigs 0 9999 0.43 Hrs/Yr 466 DEFAULT +2270002036 Diesel Excavators 0 9999 0.59 Hrs/Yr 1092 DEFAULT +2270002039 Diesel Concrete/Industrial Saws 0 9999 0.59 Hrs/Yr 580 DEFAULT +2270002042 Diesel Cement & Mortar Mixers 0 9999 0.43 Hrs/Yr 275 DEFAULT +2270002045 Diesel Cranes 0 9999 0.43 Hrs/Yr 990 DEFAULT +2270002048 Diesel Graders 0 9999 0.59 Hrs/Yr 962 DEFAULT +2270002051 Diesel Off-highway Trucks 0 9999 0.59 Hrs/Yr 1641 DEFAULT +2270002054 Diesel Crushing/Proc. Equipment 0 9999 0.43 Hrs/Yr 955 DEFAULT +2270002057 Diesel Rough Terrain Forklifts 0 9999 0.59 Hrs/Yr 662 DEFAULT +2270002060 Diesel Rubber Tire Loaders 0 9999 0.59 Hrs/Yr 761 DEFAULT +2270002063 Diesel Rubber Tire Dozers 0 9999 0.59 Hrs/Yr 899 DEFAULT +2270002066 Diesel Tractors/Loaders/Backhoes 0 9999 0.21 Hrs/Yr 1135 DEFAULT +2270002069 Diesel Crawler Tractors 0 9999 0.59 Hrs/Yr 936 DEFAULT +2270002072 Diesel Skid Steer Loaders 0 9999 0.21 Hrs/Yr 818 DEFAULT +2270002075 Diesel Off-Highway Tractors 0 9999 0.59 Hrs/Yr 855 DEFAULT +2270002078 Diesel Dumpers/Tenders 0 9999 0.21 Hrs/Yr 566 DEFAULT +2270002081 Diesel Other Construction Equipment 0 9999 0.59 Hrs/Yr 606 DEFAULT +2270003010 Diesel Aerial Lifts 0 9999 0.21 Hrs/Yr 384 DEFAULT +2270003020 Diesel Forklifts 0 9999 0.59 Hrs/Yr 1700 DEFAULT +2270003030 Diesel Sweepers/Scrubbers 0 9999 0.43 Hrs/Yr 1220 DEFAULT +2270003040 Diesel Other General Industrial Equipmen 0 9999 0.43 Hrs/Yr 878 DEFAULT +2270003050 Diesel Other Material Handling Equipment 0 9999 0.21 Hrs/Yr 421 DEFAULT +2270003060 Diesel AC\Refrigeration 0 9999 0.43 Hrs/Yr 1341 DEFAULT +2270003070 Diesel Terminal Tractors 0 9999 0.59 Hrs/Yr 1257 DEFAULT +2270004010 Diesel Lawn mowers (Residential) 0 9999 0.43 Hrs/Yr 320 DEFAULT +2270004011 Diesel Lawn mowers (Commerical) 0 9999 0.43 Hrs/Yr 320 DEFAULT +2270004015 Diesel Rotary Tillers < 6 HP (Residentia 0 9999 0.43 Hrs/Yr 172 DEFAULT +2270004016 Diesel Rotary Tillers < 6 HP (Commercial 0 9999 0.43 Hrs/Yr 172 DEFAULT +2270004020 Diesel Chain Saws < 6 HP (Residential) 0 9999 0.43 Hrs/Yr 70 DEFAULT +2270004021 Diesel Chain Saws < 6 HP (Commercial) 0 9999 0.43 Hrs/Yr 70 DEFAULT +2270004025 Diesel Trimmers/Edgers/Brush Cutters (Re 0 9999 0.43 Hrs/Yr 60 DEFAULT +2270004026 Diesel Trimmers/Edgers/Brush Cutters (Co 0 9999 0.43 Hrs/Yr 60 DEFAULT +2270004030 Diesel Leafblowers/Vacuums (Residential) 0 9999 0.43 Hrs/Yr 120 DEFAULT +2270004031 Diesel Leafblowers/Vacuums (Commercial) 0 9999 0.43 Hrs/Yr 120 DEFAULT +2270004035 Diesel Snowblowers (Residential) 0 9999 0.43 Hrs/Yr 400 DEFAULT +2270004036 Diesel Snowblowers (Commercial) 0 9999 0.43 Hrs/Yr 400 DEFAULT +2270004040 Diesel Rear Engine Riding Mowers (Res.) 0 9999 0.43 Hrs/Yr 480 DEFAULT +2270004041 Diesel Rear Engine Riding Mowers (Comm.) 0 9999 0.43 Hrs/Yr 480 DEFAULT +2270004045 Diesel Front Mowers (Residential) 0 9999 0.43 Hrs/Yr 480 DEFAULT +2270004046 Diesel Front Mowers (Commercial) 0 9999 0.43 Hrs/Yr 480 DEFAULT +2270004050 Diesel Shredders < 6 HP (Residential) 0 9999 0.43 Hrs/Yr 120 DEFAULT +2270004051 Diesel Shredders < 6 HP (Commercial) 0 9999 0.43 Hrs/Yr 120 DEFAULT +2270004055 Diesel Lawn & Garden Tractors (Residenti 0 9999 0.43 Hrs/Yr 544 DEFAULT +2270004056 Diesel Lawn & Garden Tractors (Commercia 0 9999 0.43 Hrs/Yr 544 DEFAULT +2270004060 Diesel Wood Splitters (Residential) 0 9999 0.43 Hrs/Yr 265 DEFAULT +2270004061 Diesel Wood Splitters (Commercial) 0 9999 0.43 Hrs/Yr 265 DEFAULT +2270004065 Diesel Chippers/Stump Grinders (Resident 0 9999 0.43 Hrs/Yr 465 DEFAULT +2270004066 Diesel Chippers/Stump Grinders (Commerci 0 9999 0.43 Hrs/Yr 465 DEFAULT +2270004070 Diesel Commercial Turf Equipment (Res.) 0 9999 0.43 Hrs/Yr 1068 DEFAULT +2270004071 Diesel Commercial Turf Equipment (Comm.) 0 9999 0.43 Hrs/Yr 1068 DEFAULT +2270004075 Diesel Other Lawn & Garden Equipment (Re 0 9999 0.43 Hrs/Yr 433 DEFAULT +2270004076 Diesel Other Lawn & Garden Equipment (Co 0 9999 0.43 Hrs/Yr 433 DEFAULT +2270005010 Diesel 2-Wheel Tractors 0 9999 0.59 Hrs/Yr 544 DEFAULT +2270005015 Diesel Agricultural Tractors 0 9999 0.59 Hrs/Yr 475 DEFAULT +2270005020 Diesel Combines 0 9999 0.59 Hrs/Yr 150 DEFAULT +2270005025 Diesel Balers 0 9999 0.59 Hrs/Yr 95 DEFAULT +2270005030 Diesel Agricultural Mowers 0 9999 0.59 Hrs/Yr 363 DEFAULT +2270005035 Diesel Sprayers 0 9999 0.59 Hrs/Yr 90 DEFAULT +2270005040 Diesel Tillers > 6 HP 0 9999 0.59 Hrs/Yr 172 DEFAULT +2270005045 Diesel Swathers 0 9999 0.59 Hrs/Yr 110 DEFAULT +2270005055 Diesel Other Agricultural Equipment 0 9999 0.59 Hrs/Yr 381 DEFAULT +2270005060 Diesel Irrigation Sets 0 9999 0.43 Hrs/Yr 749 DEFAULT +2270006005 Diesel Light Commercial Generator Sets 0 9999 0.43 Hrs/Yr 338 DEFAULT +2270006010 Diesel Light Commercial Pumps 0 9999 0.43 Hrs/Yr 403 DEFAULT +2270006015 Diesel Light Commercial Air Compressors 0 9999 0.43 Hrs/Yr 815 DEFAULT +2270006020 Diesel Light Commercial Gas Compressors 0 9999 0.43 Hrs/Yr 8500 DEFAULT +2270006025 Diesel Light Commercial Welders 0 9999 0.21 Hrs/Yr 643 DEFAULT +2270006030 Diesel Light Commercial Pressure Washer 0 9999 0.43 Hrs/Yr 145 DEFAULT +2270006035 Diesel Hydro Power Units 0 9999 0.43 Hrs/Yr 790 DEFAULT +2270007005 Diesel Logging Equipment Chain Saws > 6 0 9999 0.59 Hrs/Yr 70 DEFAULT +2270007010 Diesel Logging Equipment Shredders > 6 0 9999 0.59 Hrs/Yr 120 DEFAULT +2270007015 Diesel Logging Equip Fell/Bunch/Skidders 0 9999 0.59 Hrs/Yr 1276 DEFAULT +2270007020 Diesel Logging Equip Fell/Bunch (unused) 0 9999 0.59 Hrs/Yr 0 DEFAULT +2270008005 Diesel Airport Support Equipment 0 9999 0.59 Hrs/Yr 732 DEFAULT +2270009010 Diesel Other Underground Mining Equipmen 0 9999 0.21 Hrs/Yr 1533 DEFAULT +2270010010 Diesel Other Oil Field Equipment 0 9999 0.43 Hrs/Yr 1231 DEFAULT +2267001020 LPG Snowmobiles 0 9999 0.34 Hrs/Yr 40 DEFAULT +2267001030 LPG All Terrain Vehicles/MC (unused) 0 9999 0.42 Hrs/Yr 0 DEFAULT +2267001050 LPG Golf Carts 0 9999 0.46 Hrs/Yr 1080 DEFAULT +2267001060 LPG Specialty Vehicle Carts 0 9999 0.58 Hrs/Yr 65 DEFAULT +2267002003 LPG Asphalt Pavers 0 9999 0.66 Hrs/Yr 392 DEFAULT +2267002006 LPG Tampers/Rammers 0 9999 0.55 Hrs/Yr 160 DEFAULT +2267002009 LPG Plate Compactors 0 9999 0.55 Hrs/Yr 166 DEFAULT +2267002012 LPG Concrete Pavers 0 9999 0.55 Hrs/Yr 0 DEFAULT +2267002015 LPG Rollers 0 9999 0.62 Hrs/Yr 621 DEFAULT +2267002018 LPG Scrapers 0 9999 0.70 Hrs/Yr 540 DEFAULT +2267002021 LPG Paving Equipment 0 9999 0.59 Hrs/Yr 175 DEFAULT +2267002024 LPG Surfacing Equipment 0 9999 0.49 Hrs/Yr 488 DEFAULT +2267002027 LPG Signal Boards 0 9999 0.72 Hrs/Yr 318 DEFAULT +2267002030 LPG Trenchers 0 9999 0.66 Hrs/Yr 402 DEFAULT +2267002033 LPG Bore/Drill Rigs 0 9999 0.79 Hrs/Yr 107 DEFAULT +2267002036 LPG Excavators 0 9999 0.59 Hrs/Yr 378 DEFAULT +2267002039 LPG Concrete/Industrial Saws 0 9999 0.78 Hrs/Yr 610 DEFAULT +2267002042 LPG Cement & Mortar Mixers 0 9999 0.59 Hrs/Yr 84 DEFAULT +2267002045 LPG Cranes 0 9999 0.47 Hrs/Yr 415 DEFAULT +2267002048 LPG Graders 0 9999 0.64 Hrs/Yr 504 DEFAULT +2267002051 LPG Off-highway Trucks 0 9999 0.80 Hrs/Yr 450 DEFAULT +2267002054 LPG Crushing/Proc. Equipment 0 9999 0.85 Hrs/Yr 241 DEFAULT +2267002057 LPG Rough Terrain Forklifts 0 9999 0.63 Hrs/Yr 413 DEFAULT +2267002060 LPG Rubber Tire Loaders 0 9999 0.71 Hrs/Yr 512 DEFAULT +2267002063 LPG Rubber Tire Dozers 0 9999 0.75 Hrs/Yr 900 DEFAULT +2267002066 LPG Tractors/Loaders/Backhoes 0 9999 0.48 Hrs/Yr 870 DEFAULT +2267002069 LPG Crawler Tractors 0 9999 0.80 Hrs/Yr 700 DEFAULT +2267002072 LPG Skid Steer Loaders 0 9999 0.58 Hrs/Yr 310 DEFAULT +2267002075 LPG Off-Highway Tractors 0 9999 0.70 Hrs/Yr 155 DEFAULT +2267002078 LPG Dumpers/Tenders 0 9999 0.41 Hrs/Yr 127 DEFAULT +2267002081 LPG Other Construction Equipment 0 9999 0.48 Hrs/Yr 371 DEFAULT +2267003010 LPG Aerial Lifts 0 9999 0.46 Hrs/Yr 361 DEFAULT +2267003020 LPG Forklifts 0 9999 0.30 Hrs/Yr 1800 DEFAULT +2267003030 LPG Sweepers/Scrubbers 0 9999 0.71 Hrs/Yr 516 DEFAULT +2267003040 LPG Other General Industrial Equipment 0 9999 0.54 Hrs/Yr 713 DEFAULT +2267003050 LPG Other Material Handling Equipment 0 9999 0.53 Hrs/Yr 386 DEFAULT +2267003060 LPG AC\Refrigeration 0 9999 0.46 Hrs/Yr 605 DEFAULT +2267003070 LPG Terminal Tractors 0 9999 0.78 Hrs/Yr 827 DEFAULT +2267004010 LPG Lawn mowers (Residential) 0 9999 0.33 Hrs/Yr 25 DEFAULT +2267004011 LPG Lawn mowers (Commercial) 0 9999 0.33 Hrs/Yr 406 DEFAULT +2267004015 LPG Rotary Tillers < 6 HP (Residential) 0 9999 0.40 Hrs/Yr 17 DEFAULT +2267004016 LPG Rotary Tillers < 6 HP (Commercial) 0 9999 0.40 Hrs/Yr 472 DEFAULT +2267004020 LPG Chain Saws < 6 HP (Residential) 0 9999 0.70 Hrs/Yr 13 DEFAULT +2267004021 LPG Chain Saws < 6 HP (Commercial) 0 9999 0.70 Hrs/Yr 303 DEFAULT +2267004025 LPG Trimmers/Edgers/Brush Cutters (Res. 0 9999 0.91 Hrs/Yr 9 DEFAULT +2267004026 LPG Trimmers/Edgers/Brush Cutters (Comm 0 9999 0.91 Hrs/Yr 137 DEFAULT +2267004030 LPG Leafblowers/Vacuums (Residential) 0 9999 0.94 Hrs/Yr 10 DEFAULT +2267004031 LPG Leafblowers/Vacuums (Commercial) 0 9999 0.94 Hrs/Yr 282 DEFAULT +2267004035 LPG Snowblowers (Residential) 0 9999 0.35 Hrs/Yr 8 DEFAULT +2267004036 LPG Snowblowers (Commercial) 0 9999 0.35 Hrs/Yr 136 DEFAULT +2267004040 LPG Rear Engine Riding Mowers (Resident 0 9999 0.38 Hrs/Yr 36 DEFAULT +2267004041 LPG Rear Engine Riding Mowers (Commerci 0 9999 0.38 Hrs/Yr 569 DEFAULT +2267004045 LPG Front Mowers (Residential) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2267004046 LPG Front Mowers (Commercial) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2267004050 LPG Shredders < 6 HP (Residential) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2267004051 LPG Shredders < 6 HP (Commercial) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2267004055 LPG Lawn & Garden Tractors (Residential 0 9999 0.44 Hrs/Yr 45 DEFAULT +2267004056 LPG Lawn & Garden Tractors (Commercial) 0 9999 0.44 Hrs/Yr 721 DEFAULT +2267004060 LPG Wood Splitters (Residential) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2267004061 LPG Wood Splitters (Commercial) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2267004065 LPG Chippers/Stump Grinders (Residentia 0 9999 0.78 Hrs/Yr 488 DEFAULT +2267004066 LPG Chippers/Stump Grinders (Commercial 0 9999 0.78 Hrs/Yr 488 DEFAULT +2267004070 LPG Commercial Turf Equipment (Resident 0 9999 0.60 Hrs/Yr 682 DEFAULT +2267004071 LPG Commercial Turf Equipment (Commerci 0 9999 0.60 Hrs/Yr 682 DEFAULT +2267004075 LPG Other Lawn & Garden Equipment (Res. 0 9999 0.58 Hrs/Yr 61 DEFAULT +2267004076 LPG Other Lawn & Garden Equipment (Comm 0 9999 0.58 Hrs/Yr 61 DEFAULT +2267005010 LPG 2-Wheel Tractors 0 9999 0.62 Hrs/Yr 286 DEFAULT +2267005015 LPG Agricultural Tractors 0 9999 0.62 Hrs/Yr 550 DEFAULT +2267005020 LPG Combines 0 9999 0.74 Hrs/Yr 125 DEFAULT +2267005025 LPG Balers 0 9999 0.62 Hrs/Yr 68 DEFAULT +2267005030 LPG Agricultural Mowers 0 9999 0.48 Hrs/Yr 175 DEFAULT +2267005035 LPG Sprayers 0 9999 0.65 Hrs/Yr 80 DEFAULT +2267005040 LPG Tillers > 6 HP 0 9999 0.71 Hrs/Yr 43 DEFAULT +2267005045 LPG Swathers 0 9999 0.52 Hrs/Yr 95 DEFAULT +2267005055 LPG Other Agricultural Equipment 0 9999 0.55 Hrs/Yr 124 DEFAULT +2267005060 LPG Irrigation Sets 0 9999 0.60 Hrs/Yr 716 DEFAULT +2267006005 LPG Light Commercial Generator Sets 0 9999 0.68 Hrs/Yr 115 DEFAULT +2267006010 LPG Light Commercial Pumps 0 9999 0.69 Hrs/Yr 221 DEFAULT +2267006015 LPG Light Commercial Air Compressors 0 9999 0.56 Hrs/Yr 484 DEFAULT +2267006020 LPG Light Commercial Gas Compressors 0 9999 0.85 Hrs/Yr 6000 DEFAULT +2267006025 LPG Light Commercial Welders 0 9999 0.68 Hrs/Yr 408 DEFAULT +2267006030 LPG Light Commercial Pressure Washers 0 9999 0.85 Hrs/Yr 115 DEFAULT +2267006035 LPG Hydro Power Units 0 9999 0.56 Hrs/Yr 450 DEFAULT +2267007005 LPG Logging Equipment Chain Saws > 6 H 0 9999 0.70 Hrs/Yr 303 DEFAULT +2267007010 LPG Logging Equipment Shredders > 6 HP 0 9999 0.80 Hrs/Yr 50 DEFAULT +2267007015 LPG Logging Equipment Skidders 0 9999 0.70 Hrs/Yr 350 DEFAULT +2267007020 LPG Logging Equipment Fellers/Bunchers 0 9999 0.70 Hrs/Yr 0 DEFAULT +2267008005 LPG Airport Support Equipment 0 9999 0.56 Hrs/Yr 681 DEFAULT +2267009010 LPG Other Underground Mining Equipment 0 9999 0.80 Hrs/Yr 260 DEFAULT +2267010010 LPG Other Oil Field Equipment 0 9999 0.90 Hrs/Yr 1104 DEFAULT +2268001020 CNG Snowmobiles 0 9999 0.34 Hrs/Yr 40 DEFAULT +2268001030 CNG All Terrain Vehicles/MC (unused) 0 9999 0.42 Hrs/Yr 0 DEFAULT +2268001050 CNG Golf Carts 0 9999 0.46 Hrs/Yr 1080 DEFAULT +2268001060 CNG Specialty Vehicle Carts 0 9999 0.58 Hrs/Yr 65 DEFAULT +2268002003 CNG Asphalt Pavers 0 9999 0.66 Hrs/Yr 392 DEFAULT +2268002006 CNG Tampers/Rammers 0 9999 0.55 Hrs/Yr 160 DEFAULT +2268002009 CNG Plate Compactors 0 9999 0.55 Hrs/Yr 166 DEFAULT +2268002012 CNG Concrete Pavers 0 9999 0.55 Hrs/Yr 0 DEFAULT +2268002015 CNG Rollers 0 9999 0.62 Hrs/Yr 621 DEFAULT +2268002018 CNG Scrapers 0 9999 0.70 Hrs/Yr 540 DEFAULT +2268002021 CNG Paving Equipment 0 9999 0.59 Hrs/Yr 175 DEFAULT +2268002024 CNG Surfacing Equipment 0 9999 0.49 Hrs/Yr 488 DEFAULT +2268002027 CNG Signal Boards 0 9999 0.72 Hrs/Yr 318 DEFAULT +2268002030 CNG Trenchers 0 9999 0.66 Hrs/Yr 402 DEFAULT +2268002033 CNG Bore/Drill Rigs 0 9999 0.79 Hrs/Yr 107 DEFAULT +2268002036 CNG Excavators 0 9999 0.53 Hrs/Yr 378 DEFAULT +2268002039 CNG Concrete/Industrial Saws 0 9999 0.78 Hrs/Yr 610 DEFAULT +2268002042 CNG Cement & Mortar Mixers 0 9999 0.59 Hrs/Yr 84 DEFAULT +2268002045 CNG Cranes 0 9999 0.47 Hrs/Yr 415 DEFAULT +2268002048 CNG Graders 0 9999 0.64 Hrs/Yr 504 DEFAULT +2268002051 CNG Off-highway Trucks 0 9999 0.80 Hrs/Yr 450 DEFAULT +2268002054 CNG Crushing/Proc. Equipment 0 9999 0.85 Hrs/Yr 241 DEFAULT +2268002057 CNG Rough Terrain Forklifts 0 9999 0.63 Hrs/Yr 413 DEFAULT +2268002060 CNG Rubber Tire Loaders 0 9999 0.71 Hrs/Yr 512 DEFAULT +2268002063 CNG Rubber Tire Dozers 0 9999 0.75 Hrs/Yr 900 DEFAULT +2268002066 CNG Tractors/Loaders/Backhoes 0 9999 0.48 Hrs/Yr 870 DEFAULT +2268002069 CNG Crawler Tractors 0 9999 0.80 Hrs/Yr 700 DEFAULT +2268002072 CNG Skid Steer Loaders 0 9999 0.58 Hrs/Yr 310 DEFAULT +2268002075 CNG Off-Highway Tractors 0 9999 0.70 Hrs/Yr 155 DEFAULT +2268002078 CNG Dumpers/Tenders 0 9999 0.41 Hrs/Yr 127 DEFAULT +2268002081 CNG Other Construction Equipment 0 9999 0.48 Hrs/Yr 371 DEFAULT +2268003010 CNG Aerial Lifts 0 9999 0.46 Hrs/Yr 361 DEFAULT +2268003020 CNG Forklifts 0 9999 0.30 Hrs/Yr 1800 DEFAULT +2268003030 CNG Sweepers/Scrubbers 0 9999 0.71 Hrs/Yr 516 DEFAULT +2268003040 CNG Other General Industrial Equipment 0 9999 0.54 Hrs/Yr 713 DEFAULT +2268003050 CNG Other Material Handling Equipment 0 9999 0.53 Hrs/Yr 386 DEFAULT +2268003060 CNG AC\Refrigeration 0 9999 0.46 Hrs/Yr 605 DEFAULT +2268003070 CNG Terminal Tractors 0 9999 0.78 Hrs/Yr 827 DEFAULT +2268004010 CNG Lawn mowers (Residential) 0 9999 0.33 Hrs/Yr 25 DEFAULT +2268004011 CNG Lawn mowers (Commercial) 0 9999 0.33 Hrs/Yr 406 DEFAULT +2268004015 CNG Rotary Tillers < 6 HP (Residential) 0 9999 0.40 Hrs/Yr 17 DEFAULT +2268004016 CNG Rotary Tillers < 6 HP (Commercial) 0 9999 0.40 Hrs/Yr 472 DEFAULT +2268004020 CNG Chain Saws < 6 HP (Residential) 0 9999 0.70 Hrs/Yr 13 DEFAULT +2268004021 CNG Chain Saws < 6 HP (Commercial) 0 9999 0.70 Hrs/Yr 303 DEFAULT +2268004025 CNG Trimmers/Edgers/Brush Cutters (Res.) 0 9999 0.91 Hrs/Yr 9 DEFAULT +2268004026 CNG Trimmers/Edgers/Brush Cutters (Comm. 0 9999 0.91 Hrs/Yr 137 DEFAULT +2268004030 CNG Leafblowers/Vacuums (Residential) 0 9999 0.94 Hrs/Yr 10 DEFAULT +2268004031 CNG Leafblowers/Vacuums (Commercial) 0 9999 0.94 Hrs/Yr 282 DEFAULT +2268004035 CNG Snowblowers (Residential) 0 9999 0.35 Hrs/Yr 8 DEFAULT +2268004036 CNG Snowblowers (Commercial) 0 9999 0.35 Hrs/Yr 136 DEFAULT +2268004040 CNG Rear Engine Riding Mowers (Residenti 0 9999 0.38 Hrs/Yr 36 DEFAULT +2268004041 CNG Rear Engine Riding Mowers (Commercia 0 9999 0.38 Hrs/Yr 569 DEFAULT +2268004045 CNG Front Mowers (Residential) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2268004046 CNG Front Mowers (Commercial) 0 9999 0.65 Hrs/Yr 86 DEFAULT +2268004050 CNG Shredders < 6 HP (Residential) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2268004051 CNG Shredders < 6 HP (Commercial) 0 9999 0.80 Hrs/Yr 50 DEFAULT +2268004055 CNG Lawn & Garden Tractors (Residential) 0 9999 0.44 Hrs/Yr 45 DEFAULT +2268004056 CNG Lawn & Garden Tractors (Commercial) 0 9999 0.44 Hrs/Yr 721 DEFAULT +2268004060 CNG Wood Splitters (Residential) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2268004061 CNG Wood Splitters (Commercial) 0 9999 0.69 Hrs/Yr 76 DEFAULT +2268004065 CNG Chippers/Stump Grinders (Residential 0 9999 0.78 Hrs/Yr 488 DEFAULT +2268004066 CNG Chippers/Stump Grinders (Commercial) 0 9999 0.78 Hrs/Yr 488 DEFAULT +2268004070 CNG Commercial Turf Equipment (Residenti 0 9999 0.60 Hrs/Yr 682 DEFAULT +2268004071 CNG Commercial Turf Equipment (Commercia 0 9999 0.60 Hrs/Yr 682 DEFAULT +2268004075 CNG Other Lawn & Garden Equipment (Res.) 0 9999 0.58 Hrs/Yr 61 DEFAULT +2268004076 CNG Other Lawn & Garden Equipment (Comm. 0 9999 0.58 Hrs/Yr 61 DEFAULT +2268005010 CNG 2-Wheel Tractors 0 9999 0.62 Hrs/Yr 286 DEFAULT +2268005015 CNG Agricultural Tractors 0 9999 0.62 Hrs/Yr 550 DEFAULT +2268005020 CNG Combines 0 9999 0.74 Hrs/Yr 125 DEFAULT +2268005025 CNG Balers 0 9999 0.62 Hrs/Yr 68 DEFAULT +2268005030 CNG Agricultural Mowers 0 9999 0.48 Hrs/Yr 175 DEFAULT +2268005035 CNG Sprayers 0 9999 0.65 Hrs/Yr 80 DEFAULT +2268005040 CNG Tillers > 6 HP 0 9999 0.71 Hrs/Yr 43 DEFAULT +2268005045 CNG Swathers 0 9999 0.52 Hrs/Yr 95 DEFAULT +2268005055 CNG Other Agricultural Equipment 0 9999 0.55 Hrs/Yr 124 DEFAULT +2268005060 CNG Irrigation Sets 0 9999 0.60 Hrs/Yr 716 DEFAULT +2268006005 CNG Light Commercial Generator Sets 0 9999 0.68 Hrs/Yr 115 DEFAULT +2268006010 CNG Light Commercial Pumps 0 9999 0.69 Hrs/Yr 221 DEFAULT +2268006015 CNG Light Commercial Air Compressors 0 9999 0.56 Hrs/Yr 484 DEFAULT +2268006020 CNG Light Commercial Gas Compressors 0 9999 0.85 Hrs/Yr 6000 DEFAULT +2268006025 CNG Light Commercial Welders 0 9999 0.68 Hrs/Yr 408 DEFAULT +2268006030 CNG Light Commercial Pressure Washers 0 9999 0.85 Hrs/Yr 115 DEFAULT +2268006035 CNG Hydro Power Units 0 9999 0.56 Hrs/Yr 450 DEFAULT +2268007005 CNG Logging Equipment Chain Saws > 6 HP 0 9999 0.70 Hrs/Yr 303 DEFAULT +2268007010 CNG Logging Equipment Shredders > 6 HP 0 9999 0.80 Hrs/Yr 50 DEFAULT +2268007015 CNG Logging Equipment Skidders 0 9999 0.70 Hrs/Yr 350 DEFAULT +2268007020 CNG Logging Equipment Fellers/Bunchers 0 9999 0.70 Hrs/Yr 0 DEFAULT +2268008005 CNG Airport Support Equipment 0 9999 0.56 Hrs/Yr 681 DEFAULT +2268009010 CNG Other Underground Mining Equipment 0 9999 0.80 Hrs/Yr 260 DEFAULT +2268010010 CNG Other Oil Field Equipment 0 9999 0.90 Hrs/Yr 1104 DEFAULT +2282005010 Outboards 0 9999 0.21 Hrs/Yr 34.8 DEFAULT +2282005015 Personal Watercraft 0 9999 0.21 Hrs/Yr 77.3 DEFAULT +2282010005 Gas Inboards 0 600 0.21 Hrs/Yr 47.6 DEFAULT +2282010005 Gas Inboards 600 9999 0.21 Hrs/Yr 30 DEFAULT +2282020005 Diesel Inboards 0 9999 0.35 Hrs/Yr 200 DEFAULT +2282020010 Diesel Outboards 0 9999 0.35 Hrs/Yr 150 DEFAULT +2282020025 Diesel Sailboat Aux. Outboard (unused) 0 9999 0.35 Hrs/Yr 68 DEFAULT +2285002015 Diesel Railway Maintenance 0 9999 0.21 Hrs/Yr 943 DEFAULT +2285003015 2-Stroke Gasoline Railway Maintenance 0 9999 0.62 Hrs/Yr 184 DEFAULT +2285004015 4-Stroke Gasoline Railway Maintenance 0 9999 0.62 Hrs/Yr 184 DEFAULT +2285006015 LPG Railway Maintenance 0 9999 0.62 Hrs/Yr 184 DEFAULT +2285008015 CNG Railway Maintenance 0 9999 0.62 Hrs/Yr 184 DEFAULT +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_AIRTR.ALO new file mode 100644 index 0000000..5eaf5fd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_AIRTR.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 02000 2002 1305.879 AK +AIR 02013 2002 3.226 Aleutians East +AIR 02016 2002 2.804 Aleutians West +AIR 02020 2002 872.670 Anchorage +AIR 02050 2002 24.140 Bethel +AIR 02060 2002 10.070 Bristol Bay +AIR 02068 2002 0.000 Denali +AIR 02070 2002 10.571 Dillingham +AIR 02090 2002 120.140 Fairbanks North Star +AIR 02100 2002 0.000 Haines +AIR 02110 2002 44.470 Juneau +AIR 02122 2002 19.550 Kenai Peninsula +AIR 02130 2002 25.451 Ketchikan Gateway +AIR 02150 2002 7.790 Kodiak Island +AIR 02164 2002 0.000 Lake and Peninsula +AIR 02170 2002 0.490 Matanuska-Susitna +AIR 02180 2002 11.610 Nome +AIR 02185 2002 34.590 North Slope +AIR 02188 2002 28.980 Northwest Arctic +AIR 02201 2002 0.000 Prince of Wales-Outer Ketchikan +AIR 02220 2002 9.020 Sitka +AIR 02232 2002 5.100 Skagway-Hoonah-Angoon +AIR 02240 2002 1.380 Southeast Fairbanks +AIR 02261 2002 27.770 Valdez-Cordova +AIR 02270 2002 0.093 Wade Hampton +AIR 02280 2002 34.984 Wrangell-Petersburg +AIR 02282 2002 0.000 Yakutat +AIR 02290 2002 10.980 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_COAL.ALO new file mode 100644 index 0000000..e8e62d5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_COAL.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 02000 2002 0 AK +MIN 02013 2002 0 Aleutians East +MIN 02016 2002 0 Aleutians West +MIN 02020 2002 0 Anchorage +MIN 02050 2002 0 Bethel +MIN 02060 2002 0 Bristol Bay +MIN 02068 2002 0 Denali +MIN 02070 2002 0 Dillingham +MIN 02090 2002 0 Fairbanks North Star +MIN 02100 2002 0 Haines +MIN 02110 2002 0 Juneau +MIN 02122 2002 0 Kenai Peninsula +MIN 02130 2002 0 Ketchikan Gateway +MIN 02150 2002 0 Kodiak Island +MIN 02164 2002 0 Lake and Peninsula +MIN 02170 2002 0 Matanuska-Susitna +MIN 02180 2002 0 Nome +MIN 02185 2002 0 North Slope +MIN 02188 2002 0 Northwest Arctic +MIN 02201 2002 0 Prince of Wales-Outer Ketchikan +MIN 02220 2002 0 Sitka +MIN 02232 2002 0 Skagway-Hoonah-Angoon +MIN 02240 2002 0 Southeast Fairbanks +MIN 02261 2002 0 Valdez-Cordova +MIN 02270 2002 0 Wade Hampton +MIN 02280 2002 0 Wrangell-Petersburg +MIN 02282 2002 0 Yakutat +MIN 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_CONST.ALO new file mode 100644 index 0000000..119c07d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_CONST.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 02000 2003 1329604 AK +CON 02013 2003 13815 Aleutians East +CON 02016 2003 28114 Aleutians West +CON 02020 2003 665008 Anchorage +CON 02050 2003 30254 Bethel +CON 02060 2003 0 Bristol Bay +CON 02068 2003 0 Denali +CON 02070 2003 7912 Dillingham +CON 02090 2003 179236 Fairbanks North Star +CON 02100 2003 2061 Haines +CON 02110 2003 39580 Juneau +CON 02122 2003 42079 Kenai Peninsula +CON 02130 2003 15123 Ketchikan Gateway +CON 02150 2003 15615 Kodiak Island +CON 02164 2003 9775 Lake and Peninsula +CON 02170 2003 51290 Matanuska-Susitna +CON 02180 2003 33971 Nome +CON 02185 2003 30510 North Slope +CON 02188 2003 16305 Northwest Arctic +CON 02201 2003 19982 Prince of Wales-Outer Ketchikan +CON 02220 2003 12230 Sitka +CON 02232 2003 9244 Skagway-Hoonah-Angoon +CON 02240 2003 11788 Southeast Fairbanks +CON 02261 2003 34705 Valdez-Cordova +CON 02270 2003 7891 Wade Hampton +CON 02280 2003 19601 Wrangell-Petersburg +CON 02282 2003 2158 Yakutat +CON 02290 2003 31357 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_FARMS.ALO new file mode 100644 index 0000000..10cbad4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_FARMS.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 02000 2002 31824 AK +FRM 02013 2002 84 Aleutians East +FRM 02016 2002 84 Aleutians West +FRM 02020 2002 12841 Anchorage +FRM 02050 2002 0 Bethel +FRM 02060 2002 0 Bristol Bay +FRM 02068 2002 0 Denali +FRM 02070 2002 0 Dillingham +FRM 02090 2002 16050 Fairbanks North Star +FRM 02100 2002 0 Haines +FRM 02110 2002 84 Juneau +FRM 02122 2002 2681 Kenai Peninsula +FRM 02130 2002 0 Ketchikan Gateway +FRM 02150 2002 0 Kodiak Island +FRM 02164 2002 0 Lake and Peninsula +FRM 02170 2002 0 Matanuska-Susitna +FRM 02180 2002 0 Nome +FRM 02185 2002 0 North Slope +FRM 02188 2002 0 Northwest Arctic +FRM 02201 2002 0 Prince of Wales-Outer Ketchikan +FRM 02220 2002 0 Sitka +FRM 02232 2002 0 Skagway-Hoonah-Angoon +FRM 02240 2002 0 Southeast Fairbanks +FRM 02261 2002 0 Valdez-Cordova +FRM 02270 2002 0 Wade Hampton +FRM 02280 2002 0 Wrangell-Petersburg +FRM 02282 2002 0 Yakutat +FRM 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_GOLF.ALO new file mode 100644 index 0000000..c31a8cd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_GOLF.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 02000 2002 18 AK +GC 02013 2002 0 Aleutians East +GC 02016 2002 0 Aleutians West +GC 02020 2002 5 Anchorage +GC 02050 2002 1 Bethel +GC 02060 2002 0 Bristol Bay +GC 02068 2002 1 Denali +GC 02070 2002 0 Dillingham +GC 02090 2002 3 Fairbanks North Star +GC 02100 2002 0 Haines +GC 02110 2002 1 Juneau +GC 02122 2002 3 Kenai Peninsula +GC 02130 2002 0 Ketchikan Gateway +GC 02150 2002 0 Kodiak Island +GC 02164 2002 0 Lake and Peninsula +GC 02170 2002 1 Matanuska-Susitna +GC 02180 2002 0 Nome +GC 02185 2002 0 North Slope +GC 02188 2002 0 Northwest Arctic +GC 02201 2002 0 Prince of Wales-Outer Ketchikan +GC 02220 2002 1 Sitka +GC 02232 2002 0 Skagway-Hoonah-Angoon +GC 02240 2002 0 Southeast Fairbanks +GC 02261 2002 1 Valdez-Cordova +GC 02270 2002 0 Wade Hampton +GC 02280 2002 1 Wrangell-Petersburg +GC 02282 2002 0 Yakutat +GC 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_HOLSL.ALO new file mode 100644 index 0000000..c77e51e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_HOLSL.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 02000 2002 748 AK +COM 02013 2002 1 Aleutians East +COM 02016 2002 9 Aleutians West +COM 02020 2002 381 Anchorage +COM 02050 2002 3 Bethel +COM 02060 2002 3 Bristol Bay +COM 02068 2002 1 Denali +COM 02070 2002 1 Dillingham +COM 02090 2002 73 Fairbanks North Star +COM 02100 2002 1 Haines +COM 02110 2002 35 Juneau +COM 02122 2002 64 Kenai Peninsula +COM 02130 2002 27 Ketchikan Gateway +COM 02150 2002 44 Kodiak Island +COM 02164 2002 1 Lake and Peninsula +COM 02170 2002 37 Matanuska-Susitna +COM 02180 2002 2 Nome +COM 02185 2002 6 North Slope +COM 02188 2002 1 Northwest Arctic +COM 02201 2002 7 Prince of Wales-Outer Ketchikan +COM 02220 2002 16 Sitka +COM 02232 2002 3 Skagway-Hoonah-Angoon +COM 02240 2002 2 Southeast Fairbanks +COM 02261 2002 19 Valdez-Cordova +COM 02270 2002 0 Wade Hampton +COM 02280 2002 7 Wrangell-Petersburg +COM 02282 2002 3 Yakutat +COM 02290 2002 1 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_HOUSE.ALO new file mode 100644 index 0000000..d60cd8a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_HOUSE.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 02000 2002 265374 AK +HOU 02013 2002 723 Aleutians East +HOU 02016 2002 2313 Aleutians West +HOU 02020 2002 103501 Anchorage +HOU 02050 2002 5263 Bethel +HOU 02060 2002 971 Bristol Bay +HOU 02068 2002 1352 Denali +HOU 02070 2002 2341 Dillingham +HOU 02090 2002 33496 Fairbanks North Star +HOU 02100 2002 1447 Haines +HOU 02110 2002 12422 Juneau +HOU 02122 2002 24958 Kenai Peninsula +HOU 02130 2002 6327 Ketchikan Gateway +HOU 02150 2002 5272 Kodiak Island +HOU 02164 2002 1550 Lake and Peninsula +HOU 02170 2002 27485 Matanuska-Susitna +HOU 02180 2002 3634 Nome +HOU 02185 2002 2587 North Slope +HOU 02188 2002 2540 Northwest Arctic +HOU 02201 2002 3096 Prince of Wales-Outer Ketchikan +HOU 02220 2002 3715 Sitka +HOU 02232 2002 2183 Skagway-Hoonah-Angoon +HOU 02240 2002 3232 Southeast Fairbanks +HOU 02261 2002 5181 Valdez-Cordova +HOU 02270 2002 2059 Wade Hampton +HOU 02280 2002 3323 Wrangell-Petersburg +HOU 02282 2002 500 Yakutat +HOU 02290 2002 3903 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_LOGGN.ALO new file mode 100644 index 0000000..5fe634d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_LOGGN.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 02000 2002 169927987 AK +LOG 02013 2002 0 Aleutians East +LOG 02016 2002 0 Aleutians West +LOG 02020 2002 0 Anchorage +LOG 02050 2002 0 Bethel +LOG 02060 2002 0 Bristol Bay +LOG 02068 2002 0 Denali +LOG 02070 2002 0 Dillingham +LOG 02090 2002 7613398 Fairbanks North Star +LOG 02100 2002 0 Haines +LOG 02110 2002 0 Juneau +LOG 02122 2002 0 Kenai Peninsula +LOG 02130 2002 0 Ketchikan Gateway +LOG 02150 2002 0 Kodiak Island +LOG 02164 2002 0 Lake and Peninsula +LOG 02170 2002 0 Matanuska-Susitna +LOG 02180 2002 0 Nome +LOG 02185 2002 0 North Slope +LOG 02188 2002 0 Northwest Arctic +LOG 02201 2002 162314589 Prince of Wales-Outer Ketchikan +LOG 02220 2002 0 Sitka +LOG 02232 2002 0 Skagway-Hoonah-Angoon +LOG 02240 2002 0 Southeast Fairbanks +LOG 02261 2002 0 Valdez-Cordova +LOG 02270 2002 0 Wade Hampton +LOG 02280 2002 0 Wrangell-Petersburg +LOG 02282 2002 0 Yakutat +LOG 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_LSCAP.ALO new file mode 100644 index 0000000..1803c1d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_LSCAP.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 02000 2002 287 AK +LSC 02013 2002 0 Aleutians East +LSC 02016 2002 0 Aleutians West +LSC 02020 2002 253 Anchorage +LSC 02050 2002 0 Bethel +LSC 02060 2002 0 Bristol Bay +LSC 02068 2002 0 Denali +LSC 02070 2002 0 Dillingham +LSC 02090 2002 4 Fairbanks North Star +LSC 02100 2002 0 Haines +LSC 02110 2002 4 Juneau +LSC 02122 2002 4 Kenai Peninsula +LSC 02130 2002 4 Ketchikan Gateway +LSC 02150 2002 3 Kodiak Island +LSC 02164 2002 0 Lake and Peninsula +LSC 02170 2002 3 Matanuska-Susitna +LSC 02180 2002 0 Nome +LSC 02185 2002 0 North Slope +LSC 02188 2002 0 Northwest Arctic +LSC 02201 2002 0 Prince of Wales-Outer Ketchikan +LSC 02220 2002 3 Sitka +LSC 02232 2002 3 Skagway-Hoonah-Angoon +LSC 02240 2002 3 Southeast Fairbanks +LSC 02261 2002 3 Valdez-Cordova +LSC 02270 2002 0 Wade Hampton +LSC 02280 2002 0 Wrangell-Petersburg +LSC 02282 2002 0 Yakutat +LSC 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_MNFG.ALO new file mode 100644 index 0000000..359b1ba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_MNFG.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 02000 2002 15139 AK +MFG 02013 2002 1760 Aleutians East +MFG 02016 2002 2687 Aleutians West +MFG 02020 2002 3831 Anchorage +MFG 02050 2002 61 Bethel +MFG 02060 2002 25 Bristol Bay +MFG 02068 2002 11 Denali +MFG 02070 2002 21 Dillingham +MFG 02090 2002 1153 Fairbanks North Star +MFG 02100 2002 16 Haines +MFG 02110 2002 410 Juneau +MFG 02122 2002 1642 Kenai Peninsula +MFG 02130 2002 342 Ketchikan Gateway +MFG 02150 2002 1466 Kodiak Island +MFG 02164 2002 10 Lake and Peninsula +MFG 02170 2002 499 Matanuska-Susitna +MFG 02180 2002 42 Nome +MFG 02185 2002 49 North Slope +MFG 02188 2002 0 Northwest Arctic +MFG 02201 2002 148 Prince of Wales-Outer Ketchikan +MFG 02220 2002 391 Sitka +MFG 02232 2002 25 Skagway-Hoonah-Angoon +MFG 02240 2002 30 Southeast Fairbanks +MFG 02261 2002 213 Valdez-Cordova +MFG 02270 2002 10 Wade Hampton +MFG 02280 2002 226 Wrangell-Petersburg +MFG 02282 2002 60 Yakutat +MFG 02290 2002 11 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_OIL.ALO new file mode 100644 index 0000000..9795d49 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_OIL.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 02000 2002 2287 AK +OIL 02013 2002 0 Aleutians East +OIL 02016 2002 0 Aleutians West +OIL 02020 2002 1834 Anchorage +OIL 02050 2002 23 Bethel +OIL 02060 2002 0 Bristol Bay +OIL 02068 2002 0 Denali +OIL 02070 2002 0 Dillingham +OIL 02090 2002 34 Fairbanks North Star +OIL 02100 2002 0 Haines +OIL 02110 2002 11 Juneau +OIL 02122 2002 328 Kenai Peninsula +OIL 02130 2002 0 Ketchikan Gateway +OIL 02150 2002 23 Kodiak Island +OIL 02164 2002 0 Lake and Peninsula +OIL 02170 2002 0 Matanuska-Susitna +OIL 02180 2002 0 Nome +OIL 02185 2002 34 North Slope +OIL 02188 2002 0 Northwest Arctic +OIL 02201 2002 0 Prince of Wales-Outer Ketchikan +OIL 02220 2002 0 Sitka +OIL 02232 2002 0 Skagway-Hoonah-Angoon +OIL 02240 2002 0 Southeast Fairbanks +OIL 02261 2002 0 Valdez-Cordova +OIL 02270 2002 0 Wade Hampton +OIL 02280 2002 0 Wrangell-Petersburg +OIL 02282 2002 0 Yakutat +OIL 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_POP.ALO new file mode 100644 index 0000000..8913c44 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_POP.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 02000 2002 640841 AK +POP 02013 2002 2664 Aleutians East +POP 02016 2002 5140 Aleutians West +POP 02020 2002 267769 Anchorage +POP 02050 2002 16618 Bethel +POP 02060 2002 1148 Bristol Bay +POP 02068 2002 1862 Denali +POP 02070 2002 4974 Dillingham +POP 02090 2002 84768 Fairbanks North Star +POP 02100 2002 2301 Haines +POP 02110 2002 30692 Juneau +POP 02122 2002 51033 Kenai Peninsula +POP 02130 2002 13576 Ketchikan Gateway +POP 02150 2002 13684 Kodiak Island +POP 02164 2002 1590 Lake and Peninsula +POP 02170 2002 65113 Matanuska-Susitna +POP 02180 2002 9141 Nome +POP 02185 2002 7173 North Slope +POP 02188 2002 7317 Northwest Arctic +POP 02201 2002 5756 Prince of Wales-Outer Ketchikan +POP 02220 2002 8858 Sitka +POP 02232 2002 3281 Skagway-Hoonah-Angoon +POP 02240 2002 5626 Southeast Fairbanks +POP 02261 2002 10069 Valdez-Cordova +POP 02270 2002 7163 Wade Hampton +POP 02280 2002 6455 Wrangell-Petersburg +POP 02282 2002 741 Yakutat +POP 02290 2002 6329 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_RAIL.ALO new file mode 100644 index 0000000..cc34e10 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_RAIL.ALO @@ -0,0 +1,55 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 02000 2002 2067.173 AK +RR 02013 2002 8.593 Aleutians East +RR 02016 2002 16.580 Aleutians West +RR 02020 2002 863.748 Anchorage +RR 02050 2002 53.605 Bethel +RR 02060 2002 3.703 Bristol Bay +RR 02068 2002 6.006 Denali +RR 02070 2002 16.045 Dillingham +RR 02090 2002 273.438 Fairbanks North Star +RR 02100 2002 7.422 Haines +RR 02110 2002 99.004 Juneau +RR 02122 2002 164.618 Kenai Peninsula +RR 02130 2002 43.792 Ketchikan Gateway +RR 02150 2002 44.141 Kodiak Island +RR 02164 2002 5.129 Lake and Peninsula +RR 02170 2002 210.036 Matanuska-Susitna +RR 02180 2002 29.486 Nome +RR 02185 2002 23.138 North Slope +RR 02188 2002 23.603 Northwest Arctic +RR 02201 2002 18.567 Prince of Wales-Outer Ketchikan +RR 02220 2002 28.573 Sitka +RR 02232 2002 10.584 Skagway-Hoonah-Angoon +RR 02240 2002 18.148 Southeast Fairbanks +RR 02261 2002 32.480 Valdez-Cordova +RR 02270 2002 23.106 Wade Hampton +RR 02280 2002 20.822 Wrangell-Petersburg +RR 02282 2002 2.390 Yakutat +RR 02290 2002 20.416 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_RVPRK.ALO new file mode 100644 index 0000000..bdc67f1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_RVPRK.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 02000 2002 136 AK +RVP 02013 2002 1 Aleutians East +RVP 02016 2002 0 Aleutians West +RVP 02020 2002 20 Anchorage +RVP 02050 2002 2 Bethel +RVP 02060 2002 7 Bristol Bay +RVP 02068 2002 4 Denali +RVP 02070 2002 6 Dillingham +RVP 02090 2002 4 Fairbanks North Star +RVP 02100 2002 3 Haines +RVP 02110 2002 5 Juneau +RVP 02122 2002 25 Kenai Peninsula +RVP 02130 2002 4 Ketchikan Gateway +RVP 02150 2002 4 Kodiak Island +RVP 02164 2002 9 Lake and Peninsula +RVP 02170 2002 17 Matanuska-Susitna +RVP 02180 2002 0 Nome +RVP 02185 2002 0 North Slope +RVP 02188 2002 0 Northwest Arctic +RVP 02201 2002 4 Prince of Wales-Outer Ketchikan +RVP 02220 2002 1 Sitka +RVP 02232 2002 6 Skagway-Hoonah-Angoon +RVP 02240 2002 3 Southeast Fairbanks +RVP 02261 2002 5 Valdez-Cordova +RVP 02270 2002 0 Wade Hampton +RVP 02280 2002 2 Wrangell-Petersburg +RVP 02282 2002 3 Yakutat +RVP 02290 2002 1 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_SBC.ALO new file mode 100644 index 0000000..823e777 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_SBC.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 02000 2002 287 AK +SBC 02013 2002 0 Aleutians East +SBC 02016 2002 0 Aleutians West +SBC 02020 2002 253 Anchorage +SBC 02050 2002 0 Bethel +SBC 02060 2002 0 Bristol Bay +SBC 02068 2002 0 Denali +SBC 02070 2002 0 Dillingham +SBC 02090 2002 9 Fairbanks North Star +SBC 02100 2002 0 Haines +SBC 02110 2002 4 Juneau +SBC 02122 2002 6 Kenai Peninsula +SBC 02130 2002 2 Ketchikan Gateway +SBC 02150 2002 2 Kodiak Island +SBC 02164 2002 0 Lake and Peninsula +SBC 02170 2002 8 Matanuska-Susitna +SBC 02180 2002 0 Nome +SBC 02185 2002 0 North Slope +SBC 02188 2002 0 Northwest Arctic +SBC 02201 2002 0 Prince of Wales-Outer Ketchikan +SBC 02220 2002 1 Sitka +SBC 02232 2002 0 Skagway-Hoonah-Angoon +SBC 02240 2002 1 Southeast Fairbanks +SBC 02261 2002 1 Valdez-Cordova +SBC 02270 2002 0 Wade Hampton +SBC 02280 2002 0 Wrangell-Petersburg +SBC 02282 2002 0 Yakutat +SBC 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_SBR.ALO new file mode 100644 index 0000000..04f2243 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_SBR.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 02000 2002 253216 AK +SBR 02013 2002 723 Aleutians East +SBR 02016 2002 0 Aleutians West +SBR 02020 2002 103501 Anchorage +SBR 02050 2002 5263 Bethel +SBR 02060 2002 971 Bristol Bay +SBR 02068 2002 0 Denali +SBR 02070 2002 2341 Dillingham +SBR 02090 2002 33496 Fairbanks North Star +SBR 02100 2002 1447 Haines +SBR 02110 2002 12422 Juneau +SBR 02122 2002 24958 Kenai Peninsula +SBR 02130 2002 6327 Ketchikan Gateway +SBR 02150 2002 5272 Kodiak Island +SBR 02164 2002 0 Lake and Peninsula +SBR 02170 2002 27485 Matanuska-Susitna +SBR 02180 2002 3634 Nome +SBR 02185 2002 2587 North Slope +SBR 02188 2002 0 Northwest Arctic +SBR 02201 2002 3096 Prince of Wales-Outer Ketchikan +SBR 02220 2002 3715 Sitka +SBR 02232 2002 2183 Skagway-Hoonah-Angoon +SBR 02240 2002 3232 Southeast Fairbanks +SBR 02261 2002 5181 Valdez-Cordova +SBR 02270 2002 2059 Wade Hampton +SBR 02280 2002 3323 Wrangell-Petersburg +SBR 02282 2002 0 Yakutat +SBR 02290 2002 0 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_SNOWM.ALO new file mode 100644 index 0000000..439acd5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_SNOWM.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 02000 2002 640841 AK +SNM 02013 2002 2664 Aleutians East +SNM 02016 2002 5140 Aleutians West +SNM 02020 2002 267769 Anchorage +SNM 02050 2002 16618 Bethel +SNM 02060 2002 1148 Bristol Bay +SNM 02068 2002 1862 Denali +SNM 02070 2002 4974 Dillingham +SNM 02090 2002 84768 Fairbanks North Star +SNM 02100 2002 2301 Haines +SNM 02110 2002 30692 Juneau +SNM 02122 2002 51033 Kenai Peninsula +SNM 02130 2002 13576 Ketchikan Gateway +SNM 02150 2002 13684 Kodiak Island +SNM 02164 2002 1590 Lake and Peninsula +SNM 02170 2002 65113 Matanuska-Susitna +SNM 02180 2002 9141 Nome +SNM 02185 2002 7173 North Slope +SNM 02188 2002 7317 Northwest Arctic +SNM 02201 2002 5756 Prince of Wales-Outer Ketchikan +SNM 02220 2002 8858 Sitka +SNM 02232 2002 3281 Skagway-Hoonah-Angoon +SNM 02240 2002 5626 Southeast Fairbanks +SNM 02261 2002 10069 Valdez-Cordova +SNM 02270 2002 7163 Wade Hampton +SNM 02280 2002 6455 Wrangell-Petersburg +SNM 02282 2002 741 Yakutat +SNM 02290 2002 6329 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_WIB.ALO new file mode 100644 index 0000000..f0a7290 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_WIB.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 02000 1990 45751 AK +WIB 02013 1990 837 Aleutians East +WIB 02016 1990 673 Aleutians West +WIB 02020 1990 107 Anchorage +WIB 02050 1990 5128 Bethel +WIB 02060 1990 75 Bristol Bay +WIB 02068 1990 424 Denali +WIB 02070 1990 1434 Dillingham +WIB 02090 1990 210 Fairbanks North Star +WIB 02100 1990 237 Haines +WIB 02110 1990 260 Juneau +WIB 02122 1990 1443 Kenai Peninsula +WIB 02130 1990 421 Ketchikan Gateway +WIB 02150 1990 1493 Kodiak Island +WIB 02164 1990 6594 Lake and Peninsula +WIB 02170 1990 675 Matanuska-Susitna +WIB 02180 1990 2522 Nome +WIB 02185 1990 3771 North Slope +WIB 02188 1990 2528 Northwest Arctic +WIB 02201 1990 2184 Prince of Wales-Outer Ketchikan +WIB 02220 1990 904 Sitka +WIB 02232 1990 980 Skagway-Hoonah-Angoon +WIB 02240 1990 625 Southeast Fairbanks +WIB 02261 1990 2684 Valdez-Cordova +WIB 02270 1990 2505 Wade Hampton +WIB 02280 1990 1202 Wrangell-Petersburg +WIB 02282 1990 980 Yakutat +WIB 02290 1990 4855 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AK_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AK_WOB.ALO new file mode 100644 index 0000000..21b508d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AK_WOB.ALO @@ -0,0 +1,52 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 02000 1990 45751 AK +WOB 02013 1990 837 Aleutians East +WOB 02016 1990 673 Aleutians West +WOB 02020 1990 107 Anchorage +WOB 02050 1990 5128 Bethel +WOB 02060 1990 75 Bristol Bay +WOB 02068 1990 424 Denali +WOB 02070 1990 1434 Dillingham +WOB 02090 1990 210 Fairbanks North Star +WOB 02100 1990 237 Haines +WOB 02110 1990 260 Juneau +WOB 02122 1990 1443 Kenai Peninsula +WOB 02130 1990 421 Ketchikan Gateway +WOB 02150 1990 1493 Kodiak Island +WOB 02164 1990 6594 Lake and Peninsula +WOB 02170 1990 675 Matanuska-Susitna +WOB 02180 1990 2522 Nome +WOB 02185 1990 3771 North Slope +WOB 02188 1990 2528 Northwest Arctic +WOB 02201 1990 2184 Prince of Wales-Outer Ketchikan +WOB 02220 1990 904 Sitka +WOB 02232 1990 980 Skagway-Hoonah-Angoon +WOB 02240 1990 625 Southeast Fairbanks +WOB 02261 1990 2684 Valdez-Cordova +WOB 02270 1990 2505 Wade Hampton +WOB 02280 1990 1202 Wrangell-Petersburg +WOB 02282 1990 980 Yakutat +WOB 02290 1990 4855 Yukon-Koyukuk +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ALLOCATE.XRF b/NONROAD/NR08a/DATA/ALLOCATE/ALLOCATE.XRF new file mode 100644 index 0000000..3e9f85a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ALLOCATE.XRF @@ -0,0 +1,358 @@ +This is the allocation indicator lookup table file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from county to subcounty. + +To calculate the allocation factors, the model first calculates +a linear combination of allocation indicator values. The linear +combinations are defined in the /ALLOC XREF/ packet. Once the +linear combinations are calculated, the model then takes the ratio +of smaller region to larger region (e.g. the ratio of county to state). +This ratio is used to allocate the portion of equipment population +contained in the smaller region. + +3/13/98 c.harvey changed Ag Equipment to just use AGG instead of + combination of AGG - LSC (model can't deal with negative combo). +5/20/98 g.wilson added some new indicators (HOU and FRM) and + remapped some categories (e.g. Lawn and Garden) +1/28/99 c.harvey changes AC/Refrig (x3060) indicator to POP. +2/22/99 c.harvey changes RVP & GC from employees to establishments. +2/25/99 c.harvey sets all 2285000000 to POP (hadn't included 2285006000). +1/01 c.harvey incorps new inbd/outbd, coal mining, snowmobile, snowblower, const, etc. +8/11/05 epa: Add 'RR' indicator for rail as NEI locomotive NOx; change AIR from CBP Employees to NEI NOx. + + +The indicator codes are arbitrary. The codes in this file are + +AIR -- Tons of Aircraft NOx (per NEI) +HOU -- Number of single and double (duplex) family housing +LSC -- Employees in Landscape Horiticulture Services +CON -- Dollars Spent in Construction +FRM -- Harvested Cropland in Farming Industry +COM -- Number of Wholesale Establishments +MFG -- Employees in Manufacturing Industry +LOG -- Employees in Lumber and Wood Products +OIL -- Employees engaged in Oil and Gas Extraction +RVP -- Number of Camps & Recreational Vehicle Park Establishments +GC -- Number of Public Golf Courses +POP -- Human Population +MIN -- Employees engaged in Coal Mining +SNM -- Snowmobiles: state registration, county snowfall & inverse human pop +SBR -- Snowblowers Residential +SBC -- Snowblowers Commercial +WIB -- Rec marine state fuel consumption, county water surface area Inboard +WOB -- Rec marine state fuel consumption, county water surface area Outboard +RR -- Railroads: Tons of Locomotive NOx (per NEI) + +------------------------------------------------------------------------ +This is the packet that defines the linear combination of indicator +values used for calculation of allocation factors. Each SCC is cross +referenced to a list of indicator codes and their asscociated +coefficients. The model will retrieve the indicator data identified +by the indicator codes and calculate the linear combination. + +The format is as follows: + +Line1: 1-10 Equipment code (can use global equipment codes, e.g. + 2260004000 = all 2-stroke gas Lawn + and Garden equipment) + 11-20 Coefficient for indicator 1 + 21-30 Coffficient for indicator 2 + 31-40 Coffficient for indicator 3 + +Line2: 1-10 Equipment code (must match the code in Line1 ) + 11-20 Indicator code of indicator 1 + 21-30 Indicator code of indicator 2 + 31-40 Indicator code of indicator 3 + +------------------------------------------------------------------------ + +/ALLOC XREF/ +2260001000 1.0 +2260001000 RVP +2260001020 1.0 +2260001020 SNM +2260001050 1.0 +2260001050 GC +2260002000 1.0 +2260002000 CON +2260003000 1.0 +2260003000 MFG +2260003060 1.0 +2260003060 POP +2260004000 1.0 +2260004000 HOU +2260004011 1.0 +2260004011 LSC +2260004016 1.0 +2260004016 LSC +2260004021 1.0 +2260004021 LSC +2260004026 1.0 +2260004026 LSC +2260004031 1.0 +2260004031 LSC +2260004035 1.0 +2260004035 SBR +2260004036 1.0 +2260004036 SBC +2260004041 1.0 +2260004041 LSC +2260004046 1.0 +2260004046 LSC +2260004051 1.0 +2260004051 LSC +2260004056 1.0 +2260004056 LSC +2260004061 1.0 +2260004061 LSC +2260004066 1.0 +2260004066 LSC +2260004071 1.0 +2260004071 LSC +2260004076 1.0 +2260004076 LSC +2260005000 1.0 +2260005000 FRM +2260006000 1.0 +2260006000 COM +2260007000 1.0 +2260007000 LOG +2260008000 1.0 +2260008000 AIR +2260009000 1.0 +2260009000 MIN +2260010000 1.0 +2260010000 OIL +2265001000 1.0 +2265001000 RVP +2265001020 1.0 +2265001020 SNM +2265001050 1.0 +2265001050 GC +2265002000 1.0 +2265002000 CON +2265003000 1.0 +2265003000 MFG +2265003060 1.0 +2265003060 POP +2265004000 1.0 +2265004000 HOU +2265004011 1.0 +2265004011 LSC +2265004016 1.0 +2265004016 LSC +2265004021 1.0 +2265004021 LSC +2265004026 1.0 +2265004026 LSC +2265004031 1.0 +2265004031 LSC +2265004035 1.0 +2265004035 SBR +2265004036 1.0 +2265004036 SBC +2265004041 1.0 +2265004041 LSC +2265004046 1.0 +2265004046 LSC +2265004051 1.0 +2265004051 LSC +2265004056 1.0 +2265004056 LSC +2265004061 1.0 +2265004061 LSC +2265004066 1.0 +2265004066 LSC +2265004071 1.0 +2265004071 LSC +2265004076 1.0 +2265004076 LSC +2265005000 1.0 +2265005000 FRM +2265006000 1.0 +2265006000 COM +2265007000 1.0 +2265007000 LOG +2265008000 1.0 +2265008000 AIR +2265009000 1.0 +2265009000 MIN +2265010000 1.0 +2265010000 OIL +2267001000 1.0 +2267001000 RVP +2267001050 1.0 +2267001050 GC +2267002000 1.0 +2267002000 CON +2267003000 1.0 +2267003000 MFG +2267003060 1.0 +2267003060 POP +2267004000 1.0 +2267004000 HOU +2267004011 1.0 +2267004011 LSC +2267004016 1.0 +2267004016 LSC +2267004021 1.0 +2267004021 LSC +2267004026 1.0 +2267004026 LSC +2267004031 1.0 +2267004031 LSC +2267004035 1.0 +2267004035 SBR +2267004036 1.0 +2267004036 SBC +2267004041 1.0 +2267004041 LSC +2267004046 1.0 +2267004046 LSC +2267004051 1.0 +2267004051 LSC +2267004056 1.0 +2267004056 LSC +2267004061 1.0 +2267004061 LSC +2267004066 1.0 +2267004066 LSC +2267004071 1.0 +2267004071 LSC +2267004076 1.0 +2267004076 LSC +2267005000 1.0 +2267005000 FRM +2267006000 1.0 +2267006000 COM +2267007000 1.0 +2267007000 LOG +2267008000 1.0 +2267008000 AIR +2267009000 1.0 +2267009000 MIN +2267010000 1.0 +2267010000 OIL +2268001000 1.0 +2268001000 RVP +2268001050 1.0 +2268001050 GC +2268002000 1.0 +2268002000 CON +2268003000 1.0 +2268003000 MFG +2268003060 1.0 +2268003060 POP +2268004000 1.0 +2268004000 HOU +2268004011 1.0 +2268004011 LSC +2268004016 1.0 +2268004016 LSC +2268004021 1.0 +2268004021 LSC +2268004026 1.0 +2268004026 LSC +2268004031 1.0 +2268004031 LSC +2268004035 1.0 +2268004035 SBR +2268004036 1.0 +2268004036 SBC +2268004041 1.0 +2268004041 LSC +2268004046 1.0 +2268004046 LSC +2268004051 1.0 +2268004051 LSC +2268004056 1.0 +2268004056 LSC +2268004061 1.0 +2268004061 LSC +2268004066 1.0 +2268004066 LSC +2268004071 1.0 +2268004071 LSC +2268004076 1.0 +2268004076 LSC +2268005000 1.0 +2268005000 FRM +2268006000 1.0 +2268006000 COM +2268007000 1.0 +2268007000 LOG +2268008000 1.0 +2268008000 AIR +2268009000 1.0 +2268009000 MIN +2268010000 1.0 +2268010000 OIL +2270001000 1.0 +2270001000 RVP +2270001050 1.0 +2270001050 GC +2270002000 1.0 +2270002000 CON +2270003000 1.0 +2270003000 MFG +2270003060 1.0 +2270003060 POP +2270004000 1.0 +2270004000 HOU +2270004011 1.0 +2270004011 LSC +2270004016 1.0 +2270004016 LSC +2270004021 1.0 +2270004021 LSC +2270004026 1.0 +2270004026 LSC +2270004031 1.0 +2270004031 LSC +2270004035 1.0 +2270004035 SBR +2270004036 1.0 +2270004036 SBC +2270004041 1.0 +2270004041 LSC +2270004046 1.0 +2270004046 LSC +2270004051 1.0 +2270004051 LSC +2270004056 1.0 +2270004056 LSC +2270004061 1.0 +2270004061 LSC +2270004066 1.0 +2270004066 LSC +2270004071 1.0 +2270004071 LSC +2270004076 1.0 +2270004076 LSC +2270005000 1.0 +2270005000 FRM +2270006000 1.0 +2270006000 COM +2270007000 1.0 +2270007000 LOG +2270008000 1.0 +2270008000 AIR +2270009000 1.0 +2270009000 MIN +2270010000 1.0 +2270010000 OIL +2282005010 1.0 +2282005010 WOB +2282005015 1.0 +2282005015 WOB +2282010005 1.0 +2282010005 WIB +2282020005 1.0 +2282020005 WIB +2282020010 1.0 +2282020010 WOB +2285000000 1.0 +2285000000 RR +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_AIRTR.ALO new file mode 100644 index 0000000..194eab3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_AIRTR.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 01000 2002 378.981 AL +AIR 01001 2002 0.060 Autauga +AIR 01003 2002 0.460 Baldwin +AIR 01005 2002 0.560 Barbour +AIR 01007 2002 0.000 Bibb +AIR 01009 2002 0.000 Blount +AIR 01011 2002 0.000 Bullock +AIR 01013 2002 0.030 Butler +AIR 01015 2002 1.110 Calhoun +AIR 01017 2002 0.020 Chambers +AIR 01019 2002 0.050 Cherokee +AIR 01021 2002 0.190 Chilton +AIR 01023 2002 0.010 Choctaw +AIR 01025 2002 0.000 Clarke +AIR 01027 2002 0.000 Clay +AIR 01029 2002 0.000 Cleburne +AIR 01031 2002 1.180 Coffee +AIR 01033 2002 5.409 Colbert +AIR 01035 2002 0.000 Conecuh +AIR 01037 2002 0.000 Coosa +AIR 01039 2002 2.300 Covington +AIR 01041 2002 0.000 Crenshaw +AIR 01043 2002 0.000 Cullman +AIR 01045 2002 0.460 Dale +AIR 01047 2002 0.449 Dallas +AIR 01049 2002 0.080 DeKalb +AIR 01051 2002 0.000 Elmore +AIR 01053 2002 6.630 Escambia +AIR 01055 2002 0.200 Etowah +AIR 01057 2002 0.110 Fayette +AIR 01059 2002 0.000 Franklin +AIR 01061 2002 0.000 Geneva +AIR 01063 2002 0.000 Greene +AIR 01065 2002 0.000 Hale +AIR 01067 2002 0.000 Henry +AIR 01069 2002 8.090 Houston +AIR 01071 2002 0.000 Jackson +AIR 01073 2002 153.520 Jefferson +AIR 01075 2002 0.000 Lamar +AIR 01077 2002 0.000 Lauderdale +AIR 01079 2002 0.120 Lawrence +AIR 01081 2002 0.380 Lee +AIR 01083 2002 1.580 Limestone +AIR 01085 2002 0.000 Lowndes +AIR 01087 2002 0.130 Macon +AIR 01089 2002 82.480 Madison +AIR 01091 2002 0.033 Marengo +AIR 01093 2002 0.150 Marion +AIR 01095 2002 0.170 Marshall +AIR 01097 2002 65.860 Mobile +AIR 01099 2002 0.150 Monroe +AIR 01101 2002 42.160 Montgomery +AIR 01103 2002 0.090 Morgan +AIR 01105 2002 0.000 Perry +AIR 01107 2002 0.000 Pickens +AIR 01109 2002 1.490 Pike +AIR 01111 2002 0.000 Randolph +AIR 01113 2002 0.000 Russell +AIR 01115 2002 0.280 St. Clair +AIR 01117 2002 0.000 Shelby +AIR 01119 2002 0.000 Sumter +AIR 01121 2002 0.825 Talladega +AIR 01123 2002 0.350 Tallapoosa +AIR 01125 2002 1.540 Tuscaloosa +AIR 01127 2002 0.204 Walker +AIR 01129 2002 0.000 Washington +AIR 01131 2002 0.000 Wilcox +AIR 01133 2002 0.070 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_COAL.ALO new file mode 100644 index 0000000..b869d46 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_COAL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 01000 2002 14916 AL +MIN 01001 2002 0 Autauga +MIN 01003 2002 0 Baldwin +MIN 01005 2002 0 Barbour +MIN 01007 2002 0 Bibb +MIN 01009 2002 0 Blount +MIN 01011 2002 0 Bullock +MIN 01013 2002 0 Butler +MIN 01015 2002 0 Calhoun +MIN 01017 2002 0 Chambers +MIN 01019 2002 0 Cherokee +MIN 01021 2002 0 Chilton +MIN 01023 2002 0 Choctaw +MIN 01025 2002 0 Clarke +MIN 01027 2002 0 Clay +MIN 01029 2002 0 Cleburne +MIN 01031 2002 0 Coffee +MIN 01033 2002 0 Colbert +MIN 01035 2002 0 Conecuh +MIN 01037 2002 0 Coosa +MIN 01039 2002 0 Covington +MIN 01041 2002 0 Crenshaw +MIN 01043 2002 0 Cullman +MIN 01045 2002 0 Dale +MIN 01047 2002 0 Dallas +MIN 01049 2002 0 DeKalb +MIN 01051 2002 0 Elmore +MIN 01053 2002 0 Escambia +MIN 01055 2002 0 Etowah +MIN 01057 2002 0 Fayette +MIN 01059 2002 0 Franklin +MIN 01061 2002 0 Geneva +MIN 01063 2002 0 Greene +MIN 01065 2002 0 Hale +MIN 01067 2002 0 Henry +MIN 01069 2002 0 Houston +MIN 01071 2002 0 Jackson +MIN 01073 2002 5950 Jefferson +MIN 01075 2002 0 Lamar +MIN 01077 2002 0 Lauderdale +MIN 01079 2002 0 Lawrence +MIN 01081 2002 0 Lee +MIN 01083 2002 0 Limestone +MIN 01085 2002 0 Lowndes +MIN 01087 2002 0 Macon +MIN 01089 2002 0 Madison +MIN 01091 2002 0 Marengo +MIN 01093 2002 0 Marion +MIN 01095 2002 0 Marshall +MIN 01097 2002 0 Mobile +MIN 01099 2002 0 Monroe +MIN 01101 2002 0 Montgomery +MIN 01103 2002 0 Morgan +MIN 01105 2002 0 Perry +MIN 01107 2002 0 Pickens +MIN 01109 2002 0 Pike +MIN 01111 2002 0 Randolph +MIN 01113 2002 0 Russell +MIN 01115 2002 0 St. Clair +MIN 01117 2002 30 Shelby +MIN 01119 2002 0 Sumter +MIN 01121 2002 0 Talladega +MIN 01123 2002 0 Tallapoosa +MIN 01125 2002 8893 Tuscaloosa +MIN 01127 2002 43 Walker +MIN 01129 2002 0 Washington +MIN 01131 2002 0 Wilcox +MIN 01133 2002 0 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_CONST.ALO new file mode 100644 index 0000000..4b4dd6b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_CONST.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 01000 2003 7825362 AL +CON 01001 2003 46758 Autauga +CON 01003 2003 592302 Baldwin +CON 01005 2003 12674 Barbour +CON 01007 2003 9832 Bibb +CON 01009 2003 34606 Blount +CON 01011 2003 5217 Bullock +CON 01013 2003 18181 Butler +CON 01015 2003 121699 Calhoun +CON 01017 2003 13161 Chambers +CON 01019 2003 16144 Cherokee +CON 01021 2003 40026 Chilton +CON 01023 2003 15634 Choctaw +CON 01025 2003 20717 Clarke +CON 01027 2003 7955 Clay +CON 01029 2003 5657 Cleburne +CON 01031 2003 43120 Coffee +CON 01033 2003 170377 Colbert +CON 01035 2003 12067 Conecuh +CON 01037 2003 8400 Coosa +CON 01039 2003 25161 Covington +CON 01041 2003 30126 Crenshaw +CON 01043 2003 96615 Cullman +CON 01045 2003 43541 Dale +CON 01047 2003 32258 Dallas +CON 01049 2003 48254 DeKalb +CON 01051 2003 95065 Elmore +CON 01053 2003 25094 Escambia +CON 01055 2003 69085 Etowah +CON 01057 2003 5966 Fayette +CON 01059 2003 17483 Franklin +CON 01061 2003 22776 Geneva +CON 01063 2003 13649 Greene +CON 01065 2003 13909 Hale +CON 01067 2003 14268 Henry +CON 01069 2003 123925 Houston +CON 01071 2003 38216 Jackson +CON 01073 2003 1712574 Jefferson +CON 01075 2003 11655 Lamar +CON 01077 2003 100613 Lauderdale +CON 01079 2003 23404 Lawrence +CON 01081 2003 303519 Lee +CON 01083 2003 505930 Limestone +CON 01085 2003 16738 Lowndes +CON 01087 2003 11523 Macon +CON 01089 2003 491385 Madison +CON 01091 2003 18911 Marengo +CON 01093 2003 21417 Marion +CON 01095 2003 65154 Marshall +CON 01097 2003 428694 Mobile +CON 01099 2003 20099 Monroe +CON 01101 2003 539279 Montgomery +CON 01103 2003 137101 Morgan +CON 01105 2003 5210 Perry +CON 01107 2003 13885 Pickens +CON 01109 2003 64105 Pike +CON 01111 2003 32548 Randolph +CON 01113 2003 54711 Russell +CON 01115 2003 119198 St. Clair +CON 01117 2003 596058 Shelby +CON 01119 2003 9986 Sumter +CON 01121 2003 80757 Talladega +CON 01123 2003 23105 Tallapoosa +CON 01125 2003 364661 Tuscaloosa +CON 01127 2003 117143 Walker +CON 01129 2003 5712 Washington +CON 01131 2003 12917 Wilcox +CON 01133 2003 7450 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_FARMS.ALO new file mode 100644 index 0000000..874c828 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_FARMS.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 01000 2002 1995139 AL +FRM 01001 2002 26132 Autauga +FRM 01003 2002 74462 Baldwin +FRM 01005 2002 31322 Barbour +FRM 01007 2002 4769 Bibb +FRM 01009 2002 28203 Blount +FRM 01011 2002 9835 Bullock +FRM 01013 2002 12592 Butler +FRM 01015 2002 18742 Calhoun +FRM 01017 2002 7951 Chambers +FRM 01019 2002 36635 Cherokee +FRM 01021 2002 18049 Chilton +FRM 01023 2002 4850 Choctaw +FRM 01025 2002 6907 Clarke +FRM 01027 2002 7553 Clay +FRM 01029 2002 4867 Cleburne +FRM 01031 2002 57437 Coffee +FRM 01033 2002 47156 Colbert +FRM 01035 2002 12723 Conecuh +FRM 01037 2002 3946 Coosa +FRM 01039 2002 44806 Covington +FRM 01041 2002 16505 Crenshaw +FRM 01043 2002 53612 Cullman +FRM 01045 2002 38377 Dale +FRM 01047 2002 35137 Dallas +FRM 01049 2002 68645 DeKalb +FRM 01051 2002 26548 Elmore +FRM 01053 2002 25083 Escambia +FRM 01055 2002 20212 Etowah +FRM 01057 2002 15214 Fayette +FRM 01059 2002 22085 Franklin +FRM 01061 2002 70433 Geneva +FRM 01063 2002 10044 Greene +FRM 01065 2002 18211 Hale +FRM 01067 2002 62543 Henry +FRM 01069 2002 85920 Houston +FRM 01071 2002 76920 Jackson +FRM 01073 2002 8136 Jefferson +FRM 01075 2002 11781 Lamar +FRM 01077 2002 74249 Lauderdale +FRM 01079 2002 83206 Lawrence +FRM 01081 2002 7333 Lee +FRM 01083 2002 108087 Limestone +FRM 01085 2002 27985 Lowndes +FRM 01087 2002 16927 Macon +FRM 01089 2002 110423 Madison +FRM 01091 2002 21291 Marengo +FRM 01093 2002 17252 Marion +FRM 01095 2002 35549 Marshall +FRM 01097 2002 29855 Mobile +FRM 01099 2002 26107 Monroe +FRM 01101 2002 26624 Montgomery +FRM 01103 2002 41538 Morgan +FRM 01105 2002 17139 Perry +FRM 01107 2002 20632 Pickens +FRM 01109 2002 31066 Pike +FRM 01111 2002 8946 Randolph +FRM 01113 2002 15005 Russell +FRM 01115 2002 15643 St. Clair +FRM 01117 2002 16798 Shelby +FRM 01119 2002 14006 Sumter +FRM 01121 2002 29704 Talladega +FRM 01123 2002 6576 Tallapoosa +FRM 01125 2002 20954 Tuscaloosa +FRM 01127 2002 13312 Walker +FRM 01129 2002 9273 Washington +FRM 01131 2002 12676 Wilcox +FRM 01133 2002 12640 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_GOLF.ALO new file mode 100644 index 0000000..8b11126 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_GOLF.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 01000 2002 177 AL +GC 01001 2002 2 Autauga +GC 01003 2002 8 Baldwin +GC 01005 2002 2 Barbour +GC 01007 2002 0 Bibb +GC 01009 2002 1 Blount +GC 01011 2002 1 Bullock +GC 01013 2002 3 Butler +GC 01015 2002 7 Calhoun +GC 01017 2002 1 Chambers +GC 01019 2002 1 Cherokee +GC 01021 2002 2 Chilton +GC 01023 2002 1 Choctaw +GC 01025 2002 1 Clarke +GC 01027 2002 0 Clay +GC 01029 2002 0 Cleburne +GC 01031 2002 2 Coffee +GC 01033 2002 3 Colbert +GC 01035 2002 1 Conecuh +GC 01037 2002 1 Coosa +GC 01039 2002 4 Covington +GC 01041 2002 1 Crenshaw +GC 01043 2002 2 Cullman +GC 01045 2002 1 Dale +GC 01047 2002 2 Dallas +GC 01049 2002 4 DeKalb +GC 01051 2002 4 Elmore +GC 01053 2002 2 Escambia +GC 01055 2002 4 Etowah +GC 01057 2002 1 Fayette +GC 01059 2002 2 Franklin +GC 01061 2002 1 Geneva +GC 01063 2002 0 Greene +GC 01065 2002 1 Hale +GC 01067 2002 1 Henry +GC 01069 2002 4 Houston +GC 01071 2002 4 Jackson +GC 01073 2002 19 Jefferson +GC 01075 2002 1 Lamar +GC 01077 2002 5 Lauderdale +GC 01079 2002 0 Lawrence +GC 01081 2002 4 Lee +GC 01083 2002 3 Limestone +GC 01085 2002 0 Lowndes +GC 01087 2002 0 Macon +GC 01089 2002 11 Madison +GC 01091 2002 3 Marengo +GC 01093 2002 1 Marion +GC 01095 2002 6 Marshall +GC 01097 2002 3 Mobile +GC 01099 2002 1 Monroe +GC 01101 2002 7 Montgomery +GC 01103 2002 5 Morgan +GC 01105 2002 0 Perry +GC 01107 2002 1 Pickens +GC 01109 2002 2 Pike +GC 01111 2002 1 Randolph +GC 01113 2002 1 Russell +GC 01115 2002 2 St. Clair +GC 01117 2002 7 Shelby +GC 01119 2002 2 Sumter +GC 01121 2002 3 Talladega +GC 01123 2002 2 Tallapoosa +GC 01125 2002 7 Tuscaloosa +GC 01127 2002 3 Walker +GC 01129 2002 1 Washington +GC 01131 2002 0 Wilcox +GC 01133 2002 1 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_HOLSL.ALO new file mode 100644 index 0000000..7ddd30f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_HOLSL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 01000 2002 5792 AL +COM 01001 2002 32 Autauga +COM 01003 2002 179 Baldwin +COM 01005 2002 21 Barbour +COM 01007 2002 14 Bibb +COM 01009 2002 33 Blount +COM 01011 2002 8 Bullock +COM 01013 2002 17 Butler +COM 01015 2002 125 Calhoun +COM 01017 2002 16 Chambers +COM 01019 2002 13 Cherokee +COM 01021 2002 24 Chilton +COM 01023 2002 16 Choctaw +COM 01025 2002 18 Clarke +COM 01027 2002 5 Clay +COM 01029 2002 8 Cleburne +COM 01031 2002 38 Coffee +COM 01033 2002 89 Colbert +COM 01035 2002 11 Conecuh +COM 01037 2002 3 Coosa +COM 01039 2002 55 Covington +COM 01041 2002 16 Crenshaw +COM 01043 2002 81 Cullman +COM 01045 2002 31 Dale +COM 01047 2002 44 Dallas +COM 01049 2002 67 DeKalb +COM 01051 2002 43 Elmore +COM 01053 2002 49 Escambia +COM 01055 2002 121 Etowah +COM 01057 2002 8 Fayette +COM 01059 2002 31 Franklin +COM 01061 2002 27 Geneva +COM 01063 2002 6 Greene +COM 01065 2002 6 Hale +COM 01067 2002 13 Henry +COM 01069 2002 186 Houston +COM 01071 2002 36 Jackson +COM 01073 2002 1317 Jefferson +COM 01075 2002 10 Lamar +COM 01077 2002 102 Lauderdale +COM 01079 2002 12 Lawrence +COM 01081 2002 79 Lee +COM 01083 2002 53 Limestone +COM 01085 2002 5 Lowndes +COM 01087 2002 8 Macon +COM 01089 2002 453 Madison +COM 01091 2002 28 Marengo +COM 01093 2002 27 Marion +COM 01095 2002 95 Marshall +COM 01097 2002 642 Mobile +COM 01099 2002 18 Monroe +COM 01101 2002 347 Montgomery +COM 01103 2002 176 Morgan +COM 01105 2002 5 Perry +COM 01107 2002 14 Pickens +COM 01109 2002 38 Pike +COM 01111 2002 12 Randolph +COM 01113 2002 27 Russell +COM 01115 2002 82 St. Clair +COM 01117 2002 381 Shelby +COM 01119 2002 13 Sumter +COM 01121 2002 57 Talladega +COM 01123 2002 24 Tallapoosa +COM 01125 2002 148 Tuscaloosa +COM 01127 2002 62 Walker +COM 01129 2002 9 Washington +COM 01131 2002 9 Wilcox +COM 01133 2002 49 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_HOUSE.ALO new file mode 100644 index 0000000..6e79e64 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_HOUSE.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 01000 2002 2014523 AL +HOU 01001 2002 18449 Autauga +HOU 01003 2002 79096 Baldwin +HOU 01005 2002 12713 Barbour +HOU 01007 2002 8522 Bibb +HOU 01009 2002 21672 Blount +HOU 01011 2002 4750 Bullock +HOU 01013 2002 10213 Butler +HOU 01015 2002 52380 Calhoun +HOU 01017 2002 16393 Chambers +HOU 01019 2002 14308 Cherokee +HOU 01021 2002 18111 Chilton +HOU 01023 2002 8001 Choctaw +HOU 01025 2002 12851 Clarke +HOU 01027 2002 6711 Clay +HOU 01029 2002 6341 Cleburne +HOU 01031 2002 20250 Coffee +HOU 01033 2002 25445 Colbert +HOU 01035 2002 7375 Conecuh +HOU 01037 2002 6245 Coosa +HOU 01039 2002 18788 Covington +HOU 01041 2002 6762 Crenshaw +HOU 01043 2002 35852 Cullman +HOU 01045 2002 22164 Dale +HOU 01047 2002 20721 Dallas +HOU 01049 2002 28625 DeKalb +HOU 01051 2002 26630 Elmore +HOU 01053 2002 16787 Escambia +HOU 01055 2002 46763 Etowah +HOU 01057 2002 8630 Fayette +HOU 01059 2002 13956 Franklin +HOU 01061 2002 12307 Geneva +HOU 01063 2002 5225 Greene +HOU 01065 2002 7971 Hale +HOU 01067 2002 8170 Henry +HOU 01069 2002 40960 Houston +HOU 01071 2002 24689 Jackson +HOU 01073 2002 292851 Jefferson +HOU 01075 2002 7630 Lamar +HOU 01077 2002 41034 Lauderdale +HOU 01079 2002 15350 Lawrence +HOU 01081 2002 52581 Lee +HOU 01083 2002 27557 Limestone +HOU 01085 2002 5877 Lowndes +HOU 01087 2002 10835 Macon +HOU 01089 2002 123399 Madison +HOU 01091 2002 10289 Marengo +HOU 01093 2002 14758 Marion +HOU 01095 2002 37003 Marshall +HOU 01097 2002 169932 Mobile +HOU 01099 2002 11592 Monroe +HOU 01101 2002 97062 Montgomery +HOU 01103 2002 48417 Morgan +HOU 01105 2002 5510 Perry +HOU 01107 2002 9693 Pickens +HOU 01109 2002 14276 Pike +HOU 01111 2002 10431 Randolph +HOU 01113 2002 23661 Russell +HOU 01115 2002 28499 St. Clair +HOU 01117 2002 64078 Shelby +HOU 01119 2002 7081 Sumter +HOU 01121 2002 35186 Talladega +HOU 01123 2002 20819 Tallapoosa +HOU 01125 2002 73947 Tuscaloosa +HOU 01127 2002 32967 Walker +HOU 01129 2002 8290 Washington +HOU 01131 2002 6337 Wilcox +HOU 01133 2002 12755 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_LOGGN.ALO new file mode 100644 index 0000000..3216d28 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_LOGGN.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 01000 2002 1445844371 AL +LOG 01001 2002 13481664 Autauga +LOG 01003 2002 38118908 Baldwin +LOG 01005 2002 32249206 Barbour +LOG 01007 2002 22540255 Bibb +LOG 01009 2002 10389582 Blount +LOG 01011 2002 14055565 Bullock +LOG 01013 2002 45564357 Butler +LOG 01015 2002 7076654 Calhoun +LOG 01017 2002 23742929 Chambers +LOG 01019 2002 4945649 Cherokee +LOG 01021 2002 16613837 Chilton +LOG 01023 2002 58364010 Choctaw +LOG 01025 2002 73618112 Clarke +LOG 01027 2002 20651595 Clay +LOG 01029 2002 13817960 Cleburne +LOG 01031 2002 31747604 Coffee +LOG 01033 2002 5774120 Colbert +LOG 01035 2002 47934434 Conecuh +LOG 01037 2002 21731733 Coosa +LOG 01039 2002 21892263 Covington +LOG 01041 2002 17165466 Crenshaw +LOG 01043 2002 17885106 Cullman +LOG 01045 2002 12393641 Dale +LOG 01047 2002 25587862 Dallas +LOG 01049 2002 8069243 DeKalb +LOG 01051 2002 8883899 Elmore +LOG 01053 2002 29179338 Escambia +LOG 01055 2002 7538027 Etowah +LOG 01057 2002 19194459 Fayette +LOG 01059 2002 13451687 Franklin +LOG 01061 2002 10484115 Geneva +LOG 01063 2002 22188879 Greene +LOG 01065 2002 18581168 Hale +LOG 01067 2002 13786618 Henry +LOG 01069 2002 9314127 Houston +LOG 01071 2002 17526033 Jackson +LOG 01073 2002 19025926 Jefferson +LOG 01075 2002 21098323 Lamar +LOG 01077 2002 9645622 Lauderdale +LOG 01079 2002 6391277 Lawrence +LOG 01081 2002 16119511 Lee +LOG 01083 2002 3159949 Limestone +LOG 01085 2002 16874741 Lowndes +LOG 01087 2002 15219261 Macon +LOG 01089 2002 3119057 Madison +LOG 01091 2002 53516904 Marengo +LOG 01093 2002 21738793 Marion +LOG 01095 2002 7717122 Marshall +LOG 01097 2002 23450794 Mobile +LOG 01099 2002 54088239 Monroe +LOG 01101 2002 11272449 Montgomery +LOG 01103 2002 5342386 Morgan +LOG 01105 2002 17314944 Perry +LOG 01107 2002 30671963 Pickens +LOG 01109 2002 9507481 Pike +LOG 01111 2002 15288317 Randolph +LOG 01113 2002 21312828 Russell +LOG 01115 2002 12972456 St. Clair +LOG 01117 2002 21232796 Shelby +LOG 01119 2002 33913165 Sumter +LOG 01121 2002 15729803 Talladega +LOG 01123 2002 25261757 Tallapoosa +LOG 01125 2002 28743362 Tuscaloosa +LOG 01127 2002 36904170 Walker +LOG 01129 2002 44129178 Washington +LOG 01131 2002 56376335 Wilcox +LOG 01133 2002 13165354 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_LSCAP.ALO new file mode 100644 index 0000000..815de8a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_LSCAP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 01000 2002 5751 AL +LSC 01001 2002 7 Autauga +LSC 01003 2002 230 Baldwin +LSC 01005 2002 7 Barbour +LSC 01007 2002 7 Bibb +LSC 01009 2002 21 Blount +LSC 01011 2002 7 Bullock +LSC 01013 2002 7 Butler +LSC 01015 2002 495 Calhoun +LSC 01017 2002 15 Chambers +LSC 01019 2002 7 Cherokee +LSC 01021 2002 18 Chilton +LSC 01023 2002 40 Choctaw +LSC 01025 2002 35 Clarke +LSC 01027 2002 7 Clay +LSC 01029 2002 7 Cleburne +LSC 01031 2002 40 Coffee +LSC 01033 2002 40 Colbert +LSC 01035 2002 0 Conecuh +LSC 01037 2002 7 Coosa +LSC 01039 2002 50 Covington +LSC 01041 2002 0 Crenshaw +LSC 01043 2002 7 Cullman +LSC 01045 2002 8 Dale +LSC 01047 2002 7 Dallas +LSC 01049 2002 33 DeKalb +LSC 01051 2002 40 Elmore +LSC 01053 2002 17 Escambia +LSC 01055 2002 30 Etowah +LSC 01057 2002 7 Fayette +LSC 01059 2002 0 Franklin +LSC 01061 2002 27 Geneva +LSC 01063 2002 7 Greene +LSC 01065 2002 7 Hale +LSC 01067 2002 4 Henry +LSC 01069 2002 58 Houston +LSC 01071 2002 14 Jackson +LSC 01073 2002 753 Jefferson +LSC 01075 2002 0 Lamar +LSC 01077 2002 40 Lauderdale +LSC 01079 2002 4 Lawrence +LSC 01081 2002 147 Lee +LSC 01083 2002 19 Limestone +LSC 01085 2002 0 Lowndes +LSC 01087 2002 7 Macon +LSC 01089 2002 462 Madison +LSC 01091 2002 126 Marengo +LSC 01093 2002 0 Marion +LSC 01095 2002 95 Marshall +LSC 01097 2002 346 Mobile +LSC 01099 2002 0 Monroe +LSC 01101 2002 292 Montgomery +LSC 01103 2002 104 Morgan +LSC 01105 2002 7 Perry +LSC 01107 2002 0 Pickens +LSC 01109 2002 13 Pike +LSC 01111 2002 7 Randolph +LSC 01113 2002 14 Russell +LSC 01115 2002 105 St. Clair +LSC 01117 2002 1533 Shelby +LSC 01119 2002 7 Sumter +LSC 01121 2002 32 Talladega +LSC 01123 2002 56 Tallapoosa +LSC 01125 2002 205 Tuscaloosa +LSC 01127 2002 50 Walker +LSC 01129 2002 7 Washington +LSC 01131 2002 0 Wilcox +LSC 01133 2002 7 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_MNFG.ALO new file mode 100644 index 0000000..60a5fea --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_MNFG.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 01000 2002 500462 AL +MFG 01001 2002 3461 Autauga +MFG 01003 2002 10629 Baldwin +MFG 01005 2002 6676 Barbour +MFG 01007 2002 640 Bibb +MFG 01009 2002 2242 Blount +MFG 01011 2002 793 Bullock +MFG 01013 2002 2163 Butler +MFG 01015 2002 16783 Calhoun +MFG 01017 2002 5494 Chambers +MFG 01019 2002 1125 Cherokee +MFG 01021 2002 2318 Chilton +MFG 01023 2002 3451 Choctaw +MFG 01025 2002 3417 Clarke +MFG 01027 2002 4756 Clay +MFG 01029 2002 1263 Cleburne +MFG 01031 2002 3404 Coffee +MFG 01033 2002 7944 Colbert +MFG 01035 2002 1558 Conecuh +MFG 01037 2002 1235 Coosa +MFG 01039 2002 4742 Covington +MFG 01041 2002 698 Crenshaw +MFG 01043 2002 9270 Cullman +MFG 01045 2002 1765 Dale +MFG 01047 2002 8199 Dallas +MFG 01049 2002 14979 DeKalb +MFG 01051 2002 5888 Elmore +MFG 01053 2002 3821 Escambia +MFG 01055 2002 10701 Etowah +MFG 01057 2002 2124 Fayette +MFG 01059 2002 4868 Franklin +MFG 01061 2002 1329 Geneva +MFG 01063 2002 789 Greene +MFG 01065 2002 1742 Hale +MFG 01067 2002 1834 Henry +MFG 01069 2002 11711 Houston +MFG 01071 2002 8612 Jackson +MFG 01073 2002 58085 Jefferson +MFG 01075 2002 3630 Lamar +MFG 01077 2002 6789 Lauderdale +MFG 01079 2002 3579 Lawrence +MFG 01081 2002 11846 Lee +MFG 01083 2002 11855 Limestone +MFG 01085 2002 2081 Lowndes +MFG 01087 2002 150 Macon +MFG 01089 2002 41193 Madison +MFG 01091 2002 3913 Marengo +MFG 01093 2002 5745 Marion +MFG 01095 2002 16518 Marshall +MFG 01097 2002 33612 Mobile +MFG 01099 2002 4354 Monroe +MFG 01101 2002 19665 Montgomery +MFG 01103 2002 23388 Morgan +MFG 01105 2002 780 Perry +MFG 01107 2002 1540 Pickens +MFG 01109 2002 3646 Pike +MFG 01111 2002 2760 Randolph +MFG 01113 2002 2430 Russell +MFG 01115 2002 4768 St. Clair +MFG 01117 2002 10653 Shelby +MFG 01119 2002 574 Sumter +MFG 01121 2002 12908 Talladega +MFG 01123 2002 3488 Tallapoosa +MFG 01125 2002 21350 Tuscaloosa +MFG 01127 2002 2373 Walker +MFG 01129 2002 2853 Washington +MFG 01131 2002 1865 Wilcox +MFG 01133 2002 9647 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_OIL.ALO new file mode 100644 index 0000000..ea52a5c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_OIL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 01000 2002 1061 AL +OIL 01001 2002 0 Autauga +OIL 01003 2002 28 Baldwin +OIL 01005 2002 0 Barbour +OIL 01007 2002 0 Bibb +OIL 01009 2002 0 Blount +OIL 01011 2002 0 Bullock +OIL 01013 2002 0 Butler +OIL 01015 2002 0 Calhoun +OIL 01017 2002 0 Chambers +OIL 01019 2002 0 Cherokee +OIL 01021 2002 0 Chilton +OIL 01023 2002 0 Choctaw +OIL 01025 2002 0 Clarke +OIL 01027 2002 0 Clay +OIL 01029 2002 0 Cleburne +OIL 01031 2002 0 Coffee +OIL 01033 2002 0 Colbert +OIL 01035 2002 0 Conecuh +OIL 01037 2002 0 Coosa +OIL 01039 2002 0 Covington +OIL 01041 2002 28 Crenshaw +OIL 01043 2002 0 Cullman +OIL 01045 2002 0 Dale +OIL 01047 2002 0 Dallas +OIL 01049 2002 0 DeKalb +OIL 01051 2002 0 Elmore +OIL 01053 2002 69 Escambia +OIL 01055 2002 0 Etowah +OIL 01057 2002 29 Fayette +OIL 01059 2002 0 Franklin +OIL 01061 2002 0 Geneva +OIL 01063 2002 0 Greene +OIL 01065 2002 0 Hale +OIL 01067 2002 0 Henry +OIL 01069 2002 0 Houston +OIL 01071 2002 0 Jackson +OIL 01073 2002 203 Jefferson +OIL 01075 2002 11 Lamar +OIL 01077 2002 29 Lauderdale +OIL 01079 2002 0 Lawrence +OIL 01081 2002 0 Lee +OIL 01083 2002 0 Limestone +OIL 01085 2002 0 Lowndes +OIL 01087 2002 0 Macon +OIL 01089 2002 0 Madison +OIL 01091 2002 0 Marengo +OIL 01093 2002 0 Marion +OIL 01095 2002 0 Marshall +OIL 01097 2002 422 Mobile +OIL 01099 2002 68 Monroe +OIL 01101 2002 11 Montgomery +OIL 01103 2002 0 Morgan +OIL 01105 2002 0 Perry +OIL 01107 2002 0 Pickens +OIL 01109 2002 0 Pike +OIL 01111 2002 0 Randolph +OIL 01113 2002 0 Russell +OIL 01115 2002 0 St. Clair +OIL 01117 2002 29 Shelby +OIL 01119 2002 0 Sumter +OIL 01121 2002 0 Talladega +OIL 01123 2002 0 Tallapoosa +OIL 01125 2002 112 Tuscaloosa +OIL 01127 2002 11 Walker +OIL 01129 2002 11 Washington +OIL 01131 2002 0 Wilcox +OIL 01133 2002 0 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_POP.ALO new file mode 100644 index 0000000..0f09768 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_POP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 01000 2002 4481078 AL +POP 01001 2002 45585 Autauga +POP 01003 2002 148074 Baldwin +POP 01005 2002 28975 Barbour +POP 01007 2002 21057 Bibb +POP 01009 2002 53074 Blount +POP 01011 2002 11331 Bullock +POP 01013 2002 20807 Butler +POP 01015 2002 111441 Calhoun +POP 01017 2002 36157 Chambers +POP 01019 2002 24327 Cherokee +POP 01021 2002 40506 Chilton +POP 01023 2002 15475 Choctaw +POP 01025 2002 27535 Clarke +POP 01027 2002 14231 Clay +POP 01029 2002 14552 Cleburne +POP 01031 2002 44001 Coffee +POP 01033 2002 54751 Colbert +POP 01035 2002 13747 Conecuh +POP 01037 2002 11614 Coosa +POP 01039 2002 36991 Covington +POP 01041 2002 13609 Crenshaw +POP 01043 2002 77964 Cullman +POP 01045 2002 49279 Dale +POP 01047 2002 45344 Dallas +POP 01049 2002 65720 DeKalb +POP 01051 2002 69066 Elmore +POP 01053 2002 38537 Escambia +POP 01055 2002 102963 Etowah +POP 01057 2002 18320 Fayette +POP 01059 2002 30826 Franklin +POP 01061 2002 25490 Geneva +POP 01063 2002 9937 Greene +POP 01065 2002 18259 Hale +POP 01067 2002 16356 Henry +POP 01069 2002 90134 Houston +POP 01071 2002 53931 Jackson +POP 01073 2002 659354 Jefferson +POP 01075 2002 15403 Lamar +POP 01077 2002 87089 Lauderdale +POP 01079 2002 34721 Lawrence +POP 01081 2002 117599 Lee +POP 01083 2002 67549 Limestone +POP 01085 2002 13516 Lowndes +POP 01087 2002 23707 Macon +POP 01089 2002 285375 Madison +POP 01091 2002 22401 Marengo +POP 01093 2002 30402 Marion +POP 01095 2002 83318 Marshall +POP 01097 2002 399655 Mobile +POP 01099 2002 23994 Monroe +POP 01101 2002 223044 Montgomery +POP 01103 2002 111756 Morgan +POP 01105 2002 11726 Perry +POP 01107 2002 20849 Pickens +POP 01109 2002 29167 Pike +POP 01111 2002 22526 Randolph +POP 01113 2002 49286 Russell +POP 01115 2002 67415 St. Clair +POP 01117 2002 153871 Shelby +POP 01119 2002 14265 Sumter +POP 01121 2002 80341 Talladega +POP 01123 2002 41014 Tallapoosa +POP 01125 2002 165546 Tuscaloosa +POP 01127 2002 70577 Walker +POP 01129 2002 17926 Washington +POP 01131 2002 13061 Wilcox +POP 01133 2002 24659 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_RAIL.ALO new file mode 100644 index 0000000..b22ebaa --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_RAIL.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 01000 2002 17264.340 AL +RR 01001 2002 395.460 Autauga +RR 01003 2002 403.730 Baldwin +RR 01005 2002 0.000 Barbour +RR 01007 2002 218.910 Bibb +RR 01009 2002 312.970 Blount +RR 01011 2002 0.000 Bullock +RR 01013 2002 236.420 Butler +RR 01015 2002 358.180 Calhoun +RR 01017 2002 335.400 Chambers +RR 01019 2002 0.000 Cherokee +RR 01021 2002 325.870 Chilton +RR 01023 2002 0.000 Choctaw +RR 01025 2002 72.510 Clarke +RR 01027 2002 292.990 Clay +RR 01029 2002 196.080 Cleburne +RR 01031 2002 0.000 Coffee +RR 01033 2002 401.070 Colbert +RR 01035 2002 184.710 Conecuh +RR 01037 2002 39.500 Coosa +RR 01039 2002 0.000 Covington +RR 01041 2002 0.000 Crenshaw +RR 01043 2002 320.070 Cullman +RR 01045 2002 97.740 Dale +RR 01047 2002 200.730 Dallas +RR 01049 2002 317.990 DeKalb +RR 01051 2002 356.760 Elmore +RR 01053 2002 408.200 Escambia +RR 01055 2002 354.470 Etowah +RR 01057 2002 153.020 Fayette +RR 01059 2002 168.870 Franklin +RR 01061 2002 0.000 Geneva +RR 01063 2002 306.220 Greene +RR 01065 2002 258.030 Hale +RR 01067 2002 0.000 Henry +RR 01069 2002 67.890 Houston +RR 01071 2002 658.520 Jackson +RR 01073 2002 2041.790 Jefferson +RR 01075 2002 101.770 Lamar +RR 01077 2002 2.080 Lauderdale +RR 01079 2002 144.220 Lawrence +RR 01081 2002 287.560 Lee +RR 01083 2002 360.040 Limestone +RR 01085 2002 180.180 Lowndes +RR 01087 2002 184.100 Macon +RR 01089 2002 350.570 Madison +RR 01091 2002 142.520 Marengo +RR 01093 2002 338.190 Marion +RR 01095 2002 9.500 Marshall +RR 01097 2002 580.910 Mobile +RR 01099 2002 0.000 Monroe +RR 01101 2002 474.470 Montgomery +RR 01103 2002 313.070 Morgan +RR 01105 2002 12.070 Perry +RR 01107 2002 74.470 Pickens +RR 01109 2002 172.060 Pike +RR 01111 2002 183.860 Randolph +RR 01113 2002 33.620 Russell +RR 01115 2002 559.500 St. Clair +RR 01117 2002 1068.380 Shelby +RR 01119 2002 377.410 Sumter +RR 01121 2002 462.400 Talladega +RR 01123 2002 68.470 Tallapoosa +RR 01125 2002 504.760 Tuscaloosa +RR 01127 2002 424.370 Walker +RR 01129 2002 77.930 Washington +RR 01131 2002 119.780 Wilcox +RR 01133 2002 171.980 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_RVPRK.ALO new file mode 100644 index 0000000..abfb210 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_RVPRK.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 01000 2002 71 AL +RVP 01001 2002 0 Autauga +RVP 01003 2002 14 Baldwin +RVP 01005 2002 1 Barbour +RVP 01007 2002 0 Bibb +RVP 01009 2002 0 Blount +RVP 01011 2002 0 Bullock +RVP 01013 2002 1 Butler +RVP 01015 2002 1 Calhoun +RVP 01017 2002 1 Chambers +RVP 01019 2002 3 Cherokee +RVP 01021 2002 0 Chilton +RVP 01023 2002 2 Choctaw +RVP 01025 2002 2 Clarke +RVP 01027 2002 0 Clay +RVP 01029 2002 0 Cleburne +RVP 01031 2002 2 Coffee +RVP 01033 2002 0 Colbert +RVP 01035 2002 0 Conecuh +RVP 01037 2002 0 Coosa +RVP 01039 2002 0 Covington +RVP 01041 2002 0 Crenshaw +RVP 01043 2002 3 Cullman +RVP 01045 2002 1 Dale +RVP 01047 2002 0 Dallas +RVP 01049 2002 6 DeKalb +RVP 01051 2002 2 Elmore +RVP 01053 2002 0 Escambia +RVP 01055 2002 0 Etowah +RVP 01057 2002 0 Fayette +RVP 01059 2002 0 Franklin +RVP 01061 2002 1 Geneva +RVP 01063 2002 0 Greene +RVP 01065 2002 0 Hale +RVP 01067 2002 0 Henry +RVP 01069 2002 2 Houston +RVP 01071 2002 1 Jackson +RVP 01073 2002 6 Jefferson +RVP 01075 2002 0 Lamar +RVP 01077 2002 1 Lauderdale +RVP 01079 2002 0 Lawrence +RVP 01081 2002 0 Lee +RVP 01083 2002 0 Limestone +RVP 01085 2002 0 Lowndes +RVP 01087 2002 1 Macon +RVP 01089 2002 0 Madison +RVP 01091 2002 0 Marengo +RVP 01093 2002 1 Marion +RVP 01095 2002 6 Marshall +RVP 01097 2002 2 Mobile +RVP 01099 2002 0 Monroe +RVP 01101 2002 2 Montgomery +RVP 01103 2002 0 Morgan +RVP 01105 2002 0 Perry +RVP 01107 2002 0 Pickens +RVP 01109 2002 0 Pike +RVP 01111 2002 0 Randolph +RVP 01113 2002 0 Russell +RVP 01115 2002 0 St. Clair +RVP 01117 2002 2 Shelby +RVP 01119 2002 0 Sumter +RVP 01121 2002 3 Talladega +RVP 01123 2002 0 Tallapoosa +RVP 01125 2002 3 Tuscaloosa +RVP 01127 2002 0 Walker +RVP 01129 2002 0 Washington +RVP 01131 2002 0 Wilcox +RVP 01133 2002 1 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_SBC.ALO new file mode 100644 index 0000000..924c78b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_SBC.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 01000 2002 0 AL +SBC 01001 2002 0 Autauga +SBC 01003 2002 0 Baldwin +SBC 01005 2002 0 Barbour +SBC 01007 2002 0 Bibb +SBC 01009 2002 0 Blount +SBC 01011 2002 0 Bullock +SBC 01013 2002 0 Butler +SBC 01015 2002 0 Calhoun +SBC 01017 2002 0 Chambers +SBC 01019 2002 0 Cherokee +SBC 01021 2002 0 Chilton +SBC 01023 2002 0 Choctaw +SBC 01025 2002 0 Clarke +SBC 01027 2002 0 Clay +SBC 01029 2002 0 Cleburne +SBC 01031 2002 0 Coffee +SBC 01033 2002 0 Colbert +SBC 01035 2002 0 Conecuh +SBC 01037 2002 0 Coosa +SBC 01039 2002 0 Covington +SBC 01041 2002 0 Crenshaw +SBC 01043 2002 0 Cullman +SBC 01045 2002 0 Dale +SBC 01047 2002 0 Dallas +SBC 01049 2002 0 DeKalb +SBC 01051 2002 0 Elmore +SBC 01053 2002 0 Escambia +SBC 01055 2002 0 Etowah +SBC 01057 2002 0 Fayette +SBC 01059 2002 0 Franklin +SBC 01061 2002 0 Geneva +SBC 01063 2002 0 Greene +SBC 01065 2002 0 Hale +SBC 01067 2002 0 Henry +SBC 01069 2002 0 Houston +SBC 01071 2002 0 Jackson +SBC 01073 2002 0 Jefferson +SBC 01075 2002 0 Lamar +SBC 01077 2002 0 Lauderdale +SBC 01079 2002 0 Lawrence +SBC 01081 2002 0 Lee +SBC 01083 2002 0 Limestone +SBC 01085 2002 0 Lowndes +SBC 01087 2002 0 Macon +SBC 01089 2002 0 Madison +SBC 01091 2002 0 Marengo +SBC 01093 2002 0 Marion +SBC 01095 2002 0 Marshall +SBC 01097 2002 0 Mobile +SBC 01099 2002 0 Monroe +SBC 01101 2002 0 Montgomery +SBC 01103 2002 0 Morgan +SBC 01105 2002 0 Perry +SBC 01107 2002 0 Pickens +SBC 01109 2002 0 Pike +SBC 01111 2002 0 Randolph +SBC 01113 2002 0 Russell +SBC 01115 2002 0 St. Clair +SBC 01117 2002 0 Shelby +SBC 01119 2002 0 Sumter +SBC 01121 2002 0 Talladega +SBC 01123 2002 0 Tallapoosa +SBC 01125 2002 0 Tuscaloosa +SBC 01127 2002 0 Walker +SBC 01129 2002 0 Washington +SBC 01131 2002 0 Wilcox +SBC 01133 2002 0 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_SBR.ALO new file mode 100644 index 0000000..db8d482 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_SBR.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 01000 2002 0 AL +SBR 01001 2002 0 Autauga +SBR 01003 2002 0 Baldwin +SBR 01005 2002 0 Barbour +SBR 01007 2002 0 Bibb +SBR 01009 2002 0 Blount +SBR 01011 2002 0 Bullock +SBR 01013 2002 0 Butler +SBR 01015 2002 0 Calhoun +SBR 01017 2002 0 Chambers +SBR 01019 2002 0 Cherokee +SBR 01021 2002 0 Chilton +SBR 01023 2002 0 Choctaw +SBR 01025 2002 0 Clarke +SBR 01027 2002 0 Clay +SBR 01029 2002 0 Cleburne +SBR 01031 2002 0 Coffee +SBR 01033 2002 0 Colbert +SBR 01035 2002 0 Conecuh +SBR 01037 2002 0 Coosa +SBR 01039 2002 0 Covington +SBR 01041 2002 0 Crenshaw +SBR 01043 2002 0 Cullman +SBR 01045 2002 0 Dale +SBR 01047 2002 0 Dallas +SBR 01049 2002 0 DeKalb +SBR 01051 2002 0 Elmore +SBR 01053 2002 0 Escambia +SBR 01055 2002 0 Etowah +SBR 01057 2002 0 Fayette +SBR 01059 2002 0 Franklin +SBR 01061 2002 0 Geneva +SBR 01063 2002 0 Greene +SBR 01065 2002 0 Hale +SBR 01067 2002 0 Henry +SBR 01069 2002 0 Houston +SBR 01071 2002 0 Jackson +SBR 01073 2002 0 Jefferson +SBR 01075 2002 0 Lamar +SBR 01077 2002 0 Lauderdale +SBR 01079 2002 0 Lawrence +SBR 01081 2002 0 Lee +SBR 01083 2002 0 Limestone +SBR 01085 2002 0 Lowndes +SBR 01087 2002 0 Macon +SBR 01089 2002 0 Madison +SBR 01091 2002 0 Marengo +SBR 01093 2002 0 Marion +SBR 01095 2002 0 Marshall +SBR 01097 2002 0 Mobile +SBR 01099 2002 0 Monroe +SBR 01101 2002 0 Montgomery +SBR 01103 2002 0 Morgan +SBR 01105 2002 0 Perry +SBR 01107 2002 0 Pickens +SBR 01109 2002 0 Pike +SBR 01111 2002 0 Randolph +SBR 01113 2002 0 Russell +SBR 01115 2002 0 St. Clair +SBR 01117 2002 0 Shelby +SBR 01119 2002 0 Sumter +SBR 01121 2002 0 Talladega +SBR 01123 2002 0 Tallapoosa +SBR 01125 2002 0 Tuscaloosa +SBR 01127 2002 0 Walker +SBR 01129 2002 0 Washington +SBR 01131 2002 0 Wilcox +SBR 01133 2002 0 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_SNOWM.ALO new file mode 100644 index 0000000..b3b7b57 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_SNOWM.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 01000 2002 0 AL +SNM 01001 2002 0 Autauga +SNM 01003 2002 0 Baldwin +SNM 01005 2002 0 Barbour +SNM 01007 2002 0 Bibb +SNM 01009 2002 0 Blount +SNM 01011 2002 0 Bullock +SNM 01013 2002 0 Butler +SNM 01015 2002 0 Calhoun +SNM 01017 2002 0 Chambers +SNM 01019 2002 0 Cherokee +SNM 01021 2002 0 Chilton +SNM 01023 2002 0 Choctaw +SNM 01025 2002 0 Clarke +SNM 01027 2002 0 Clay +SNM 01029 2002 0 Cleburne +SNM 01031 2002 0 Coffee +SNM 01033 2002 0 Colbert +SNM 01035 2002 0 Conecuh +SNM 01037 2002 0 Coosa +SNM 01039 2002 0 Covington +SNM 01041 2002 0 Crenshaw +SNM 01043 2002 0 Cullman +SNM 01045 2002 0 Dale +SNM 01047 2002 0 Dallas +SNM 01049 2002 0 DeKalb +SNM 01051 2002 0 Elmore +SNM 01053 2002 0 Escambia +SNM 01055 2002 0 Etowah +SNM 01057 2002 0 Fayette +SNM 01059 2002 0 Franklin +SNM 01061 2002 0 Geneva +SNM 01063 2002 0 Greene +SNM 01065 2002 0 Hale +SNM 01067 2002 0 Henry +SNM 01069 2002 0 Houston +SNM 01071 2002 0 Jackson +SNM 01073 2002 0 Jefferson +SNM 01075 2002 0 Lamar +SNM 01077 2002 0 Lauderdale +SNM 01079 2002 0 Lawrence +SNM 01081 2002 0 Lee +SNM 01083 2002 0 Limestone +SNM 01085 2002 0 Lowndes +SNM 01087 2002 0 Macon +SNM 01089 2002 0 Madison +SNM 01091 2002 0 Marengo +SNM 01093 2002 0 Marion +SNM 01095 2002 0 Marshall +SNM 01097 2002 0 Mobile +SNM 01099 2002 0 Monroe +SNM 01101 2002 0 Montgomery +SNM 01103 2002 0 Morgan +SNM 01105 2002 0 Perry +SNM 01107 2002 0 Pickens +SNM 01109 2002 0 Pike +SNM 01111 2002 0 Randolph +SNM 01113 2002 0 Russell +SNM 01115 2002 0 St. Clair +SNM 01117 2002 0 Shelby +SNM 01119 2002 0 Sumter +SNM 01121 2002 0 Talladega +SNM 01123 2002 0 Tallapoosa +SNM 01125 2002 0 Tuscaloosa +SNM 01127 2002 0 Walker +SNM 01129 2002 0 Washington +SNM 01131 2002 0 Wilcox +SNM 01133 2002 0 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_WIB.ALO new file mode 100644 index 0000000..dc23342 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_WIB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 01000 1990 3520 AL +WIB 01001 1990 22 Autauga +WIB 01003 1990 758 Baldwin +WIB 01005 1990 51 Barbour +WIB 01007 1990 8 Bibb +WIB 01009 1990 13 Blount +WIB 01011 1990 3 Bullock +WIB 01013 1990 3 Butler +WIB 01015 1990 10 Calhoun +WIB 01017 1990 15 Chambers +WIB 01019 1990 121 Cherokee +WIB 01021 1990 17 Chilton +WIB 01023 1990 19 Choctaw +WIB 01025 1990 37 Clarke +WIB 01027 1990 2 Clay +WIB 01029 1990 2 Cleburne +WIB 01031 1990 3 Coffee +WIB 01033 1990 75 Colbert +WIB 01035 1990 4 Conecuh +WIB 01037 1990 36 Coosa +WIB 01039 1990 24 Covington +WIB 01041 1990 3 Crenshaw +WIB 01043 1990 42 Cullman +WIB 01045 1990 4 Dale +WIB 01047 1990 33 Dallas +WIB 01049 1990 2 DeKalb +WIB 01051 1990 92 Elmore +WIB 01053 1990 14 Escambia +WIB 01055 1990 36 Etowah +WIB 01057 1990 4 Fayette +WIB 01059 1990 28 Franklin +WIB 01061 1990 7 Geneva +WIB 01063 1990 36 Greene +WIB 01065 1990 33 Hale +WIB 01067 1990 17 Henry +WIB 01069 1990 3 Houston +WIB 01071 1990 124 Jackson +WIB 01073 1990 29 Jefferson +WIB 01075 1990 2 Lamar +WIB 01077 1990 128 Lauderdale +WIB 01079 1990 64 Lawrence +WIB 01081 1990 18 Lee +WIB 01083 1990 101 Limestone +WIB 01085 1990 18 Lowndes +WIB 01087 1990 7 Macon +WIB 01089 1990 21 Madison +WIB 01091 1990 15 Marengo +WIB 01093 1990 6 Marion +WIB 01095 1990 145 Marshall +WIB 01097 1990 611 Mobile +WIB 01099 1990 22 Monroe +WIB 01101 1990 26 Montgomery +WIB 01103 1990 44 Morgan +WIB 01105 1990 12 Perry +WIB 01107 1990 22 Pickens +WIB 01109 1990 3 Pike +WIB 01111 1990 8 Randolph +WIB 01113 1990 16 Russell +WIB 01115 1990 51 St. Clair +WIB 01117 1990 38 Shelby +WIB 01119 1990 22 Sumter +WIB 01121 1990 54 Talladega +WIB 01123 1990 125 Tallapoosa +WIB 01125 1990 69 Tuscaloosa +WIB 01127 1990 28 Walker +WIB 01129 1990 20 Washington +WIB 01131 1990 49 Wilcox +WIB 01133 1990 45 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AL_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AL_WOB.ALO new file mode 100644 index 0000000..c1a4088 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AL_WOB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 01000 1990 2632 AL +WOB 01001 1990 22 Autauga +WOB 01003 1990 317 Baldwin +WOB 01005 1990 51 Barbour +WOB 01007 1990 8 Bibb +WOB 01009 1990 13 Blount +WOB 01011 1990 3 Bullock +WOB 01013 1990 3 Butler +WOB 01015 1990 10 Calhoun +WOB 01017 1990 15 Chambers +WOB 01019 1990 121 Cherokee +WOB 01021 1990 17 Chilton +WOB 01023 1990 19 Choctaw +WOB 01025 1990 37 Clarke +WOB 01027 1990 2 Clay +WOB 01029 1990 2 Cleburne +WOB 01031 1990 3 Coffee +WOB 01033 1990 75 Colbert +WOB 01035 1990 4 Conecuh +WOB 01037 1990 36 Coosa +WOB 01039 1990 24 Covington +WOB 01041 1990 3 Crenshaw +WOB 01043 1990 42 Cullman +WOB 01045 1990 4 Dale +WOB 01047 1990 33 Dallas +WOB 01049 1990 2 DeKalb +WOB 01051 1990 92 Elmore +WOB 01053 1990 14 Escambia +WOB 01055 1990 36 Etowah +WOB 01057 1990 4 Fayette +WOB 01059 1990 28 Franklin +WOB 01061 1990 7 Geneva +WOB 01063 1990 36 Greene +WOB 01065 1990 33 Hale +WOB 01067 1990 17 Henry +WOB 01069 1990 3 Houston +WOB 01071 1990 124 Jackson +WOB 01073 1990 29 Jefferson +WOB 01075 1990 2 Lamar +WOB 01077 1990 128 Lauderdale +WOB 01079 1990 64 Lawrence +WOB 01081 1990 18 Lee +WOB 01083 1990 101 Limestone +WOB 01085 1990 18 Lowndes +WOB 01087 1990 7 Macon +WOB 01089 1990 21 Madison +WOB 01091 1990 15 Marengo +WOB 01093 1990 6 Marion +WOB 01095 1990 145 Marshall +WOB 01097 1990 164 Mobile +WOB 01099 1990 22 Monroe +WOB 01101 1990 26 Montgomery +WOB 01103 1990 44 Morgan +WOB 01105 1990 12 Perry +WOB 01107 1990 22 Pickens +WOB 01109 1990 3 Pike +WOB 01111 1990 8 Randolph +WOB 01113 1990 16 Russell +WOB 01115 1990 51 St. Clair +WOB 01117 1990 38 Shelby +WOB 01119 1990 22 Sumter +WOB 01121 1990 54 Talladega +WOB 01123 1990 125 Tallapoosa +WOB 01125 1990 69 Tuscaloosa +WOB 01127 1990 28 Walker +WOB 01129 1990 20 Washington +WOB 01131 1990 49 Wilcox +WOB 01133 1990 45 Winston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_AIRTR.ALO new file mode 100644 index 0000000..d5b3d3e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_AIRTR.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 05000 2002 234.857 AR +AIR 05001 2002 0.570 Arkansas +AIR 05003 2002 0.100 Ashley +AIR 05005 2002 0.100 Baxter +AIR 05007 2002 0.272 Benton +AIR 05009 2002 25.629 Boone +AIR 05011 2002 0.030 Bradley +AIR 05013 2002 0.000 Calhoun +AIR 05015 2002 0.000 Carroll +AIR 05017 2002 0.094 Chicot +AIR 05019 2002 0.097 Clark +AIR 05021 2002 0.049 Clay +AIR 05023 2002 0.070 Cleburne +AIR 05025 2002 0.000 Cleveland +AIR 05027 2002 0.109 Columbia +AIR 05029 2002 0.090 Conway +AIR 05031 2002 0.290 Craighead +AIR 05033 2002 0.000 Crawford +AIR 05035 2002 0.700 Crittenden +AIR 05037 2002 0.000 Cross +AIR 05039 2002 0.000 Dallas +AIR 05041 2002 0.069 Desha +AIR 05043 2002 0.000 Drew +AIR 05045 2002 0.070 Faulkner +AIR 05047 2002 0.032 Franklin +AIR 05049 2002 0.000 Fulton +AIR 05051 2002 15.399 Garland +AIR 05053 2002 0.000 Grant +AIR 05055 2002 0.190 Greene +AIR 05057 2002 0.210 Hempstead +AIR 05059 2002 0.057 Hot Spring +AIR 05061 2002 0.000 Howard +AIR 05063 2002 0.490 Independence +AIR 05065 2002 0.000 Izard +AIR 05067 2002 0.130 Jackson +AIR 05069 2002 0.140 Jefferson +AIR 05071 2002 0.009 Johnson +AIR 05073 2002 0.000 Lafayette +AIR 05075 2002 0.090 Lawrence +AIR 05077 2002 0.000 Lee +AIR 05079 2002 0.000 Lincoln +AIR 05081 2002 0.000 Little River +AIR 05083 2002 0.000 Logan +AIR 05085 2002 0.104 Lonoke +AIR 05087 2002 0.000 Madison +AIR 05089 2002 0.139 Marion +AIR 05091 2002 0.590 Miller +AIR 05093 2002 4.030 Mississippi +AIR 05095 2002 0.030 Monroe +AIR 05097 2002 0.000 Montgomery +AIR 05099 2002 0.000 Nevada +AIR 05101 2002 0.000 Newton +AIR 05103 2002 0.070 Ouachita +AIR 05105 2002 0.000 Perry +AIR 05107 2002 0.090 Phillips +AIR 05109 2002 0.000 Pike +AIR 05111 2002 0.000 Poinsett +AIR 05113 2002 0.180 Polk +AIR 05115 2002 0.000 Pope +AIR 05117 2002 0.000 Prairie +AIR 05119 2002 169.220 Pulaski +AIR 05121 2002 0.034 Randolph +AIR 05123 2002 0.070 St. Francis +AIR 05125 2002 0.000 Saline +AIR 05127 2002 0.000 Scott +AIR 05129 2002 0.000 Searcy +AIR 05131 2002 2.540 Sebastian +AIR 05133 2002 0.000 Sevier +AIR 05135 2002 0.019 Sharp +AIR 05137 2002 0.000 Stone +AIR 05139 2002 11.867 Union +AIR 05141 2002 0.000 Van Buren +AIR 05143 2002 0.790 Washington +AIR 05145 2002 0.000 White +AIR 05147 2002 0.000 Woodruff +AIR 05149 2002 0.000 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_COAL.ALO new file mode 100644 index 0000000..042f149 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_COAL.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 05000 2002 1 AR +MIN 05001 2002 0 Arkansas +MIN 05003 2002 0 Ashley +MIN 05005 2002 0 Baxter +MIN 05007 2002 0 Benton +MIN 05009 2002 0 Boone +MIN 05011 2002 0 Bradley +MIN 05013 2002 0 Calhoun +MIN 05015 2002 0 Carroll +MIN 05017 2002 0 Chicot +MIN 05019 2002 0 Clark +MIN 05021 2002 0 Clay +MIN 05023 2002 0 Cleburne +MIN 05025 2002 0 Cleveland +MIN 05027 2002 0 Columbia +MIN 05029 2002 0 Conway +MIN 05031 2002 0 Craighead +MIN 05033 2002 0 Crawford +MIN 05035 2002 0 Crittenden +MIN 05037 2002 0 Cross +MIN 05039 2002 0 Dallas +MIN 05041 2002 0 Desha +MIN 05043 2002 0 Drew +MIN 05045 2002 0 Faulkner +MIN 05047 2002 0 Franklin +MIN 05049 2002 0 Fulton +MIN 05051 2002 0 Garland +MIN 05053 2002 0 Grant +MIN 05055 2002 0 Greene +MIN 05057 2002 0 Hempstead +MIN 05059 2002 0 Hot Spring +MIN 05061 2002 0 Howard +MIN 05063 2002 0 Independence +MIN 05065 2002 0 Izard +MIN 05067 2002 0 Jackson +MIN 05069 2002 0 Jefferson +MIN 05071 2002 0 Johnson +MIN 05073 2002 0 Lafayette +MIN 05075 2002 0 Lawrence +MIN 05077 2002 0 Lee +MIN 05079 2002 0 Lincoln +MIN 05081 2002 0 Little River +MIN 05083 2002 0 Logan +MIN 05085 2002 0 Lonoke +MIN 05087 2002 0 Madison +MIN 05089 2002 0 Marion +MIN 05091 2002 0 Miller +MIN 05093 2002 0 Mississippi +MIN 05095 2002 0 Monroe +MIN 05097 2002 0 Montgomery +MIN 05099 2002 0 Nevada +MIN 05101 2002 0 Newton +MIN 05103 2002 0 Ouachita +MIN 05105 2002 0 Perry +MIN 05107 2002 0 Phillips +MIN 05109 2002 0 Pike +MIN 05111 2002 0 Poinsett +MIN 05113 2002 0 Polk +MIN 05115 2002 0 Pope +MIN 05117 2002 0 Prairie +MIN 05119 2002 0 Pulaski +MIN 05121 2002 0 Randolph +MIN 05123 2002 0 St. Francis +MIN 05125 2002 0 Saline +MIN 05127 2002 0 Scott +MIN 05129 2002 0 Searcy +MIN 05131 2002 1 Sebastian +MIN 05133 2002 0 Sevier +MIN 05135 2002 0 Sharp +MIN 05137 2002 0 Stone +MIN 05139 2002 0 Union +MIN 05141 2002 0 Van Buren +MIN 05143 2002 0 Washington +MIN 05145 2002 0 White +MIN 05147 2002 0 Woodruff +MIN 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_CONST.ALO new file mode 100644 index 0000000..a331c28 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_CONST.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 05000 2003 4105039 AR +CON 05001 2003 23506 Arkansas +CON 05003 2003 23198 Ashley +CON 05005 2003 25433 Baxter +CON 05007 2003 523893 Benton +CON 05009 2003 25886 Boone +CON 05011 2003 8528 Bradley +CON 05013 2003 2636 Calhoun +CON 05015 2003 16041 Carroll +CON 05017 2003 8318 Chicot +CON 05019 2003 15942 Clark +CON 05021 2003 10506 Clay +CON 05023 2003 17902 Cleburne +CON 05025 2003 3671 Cleveland +CON 05027 2003 33369 Columbia +CON 05029 2003 19451 Conway +CON 05031 2003 106565 Craighead +CON 05033 2003 59600 Crawford +CON 05035 2003 59477 Crittenden +CON 05037 2003 9466 Cross +CON 05039 2003 9571 Dallas +CON 05041 2003 20508 Desha +CON 05043 2003 14969 Drew +CON 05045 2003 211981 Faulkner +CON 05047 2003 33393 Franklin +CON 05049 2003 13110 Fulton +CON 05051 2003 77888 Garland +CON 05053 2003 14753 Grant +CON 05055 2003 72876 Greene +CON 05057 2003 15194 Hempstead +CON 05059 2003 58150 Hot Spring +CON 05061 2003 14904 Howard +CON 05063 2003 25854 Independence +CON 05065 2003 7327 Izard +CON 05067 2003 5129 Jackson +CON 05069 2003 51424 Jefferson +CON 05071 2003 19112 Johnson +CON 05073 2003 3448 Lafayette +CON 05075 2003 27751 Lawrence +CON 05077 2003 8266 Lee +CON 05079 2003 10562 Lincoln +CON 05081 2003 14275 Little River +CON 05083 2003 12874 Logan +CON 05085 2003 85700 Lonoke +CON 05087 2003 10455 Madison +CON 05089 2003 2779 Marion +CON 05091 2003 68811 Miller +CON 05093 2003 33460 Mississippi +CON 05095 2003 18618 Monroe +CON 05097 2003 5983 Montgomery +CON 05099 2003 13114 Nevada +CON 05101 2003 7186 Newton +CON 05103 2003 13829 Ouachita +CON 05105 2003 4832 Perry +CON 05107 2003 20834 Phillips +CON 05109 2003 7425 Pike +CON 05111 2003 23631 Poinsett +CON 05113 2003 19768 Polk +CON 05115 2003 39254 Pope +CON 05117 2003 2824 Prairie +CON 05119 2003 822033 Pulaski +CON 05121 2003 5003 Randolph +CON 05123 2003 20810 St. Francis +CON 05125 2003 162158 Saline +CON 05127 2003 17657 Scott +CON 05129 2003 4515 Searcy +CON 05131 2003 163288 Sebastian +CON 05133 2003 21206 Sevier +CON 05135 2003 24894 Sharp +CON 05137 2003 5694 Stone +CON 05139 2003 44145 Union +CON 05141 2003 16043 Van Buren +CON 05143 2003 569936 Washington +CON 05145 2003 88944 White +CON 05147 2003 7945 Woodruff +CON 05149 2003 15555 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_FARMS.ALO new file mode 100644 index 0000000..0feb78d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_FARMS.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 05000 2002 7457599 AR +FRM 05001 2002 322267 Arkansas +FRM 05003 2002 127888 Ashley +FRM 05005 2002 12076 Baxter +FRM 05007 2002 79553 Benton +FRM 05009 2002 36288 Boone +FRM 05011 2002 7191 Bradley +FRM 05013 2002 3821 Calhoun +FRM 05015 2002 47752 Carroll +FRM 05017 2002 204091 Chicot +FRM 05019 2002 20813 Clark +FRM 05021 2002 282610 Clay +FRM 05023 2002 26317 Cleburne +FRM 05025 2002 7564 Cleveland +FRM 05027 2002 9675 Columbia +FRM 05029 2002 70541 Conway +FRM 05031 2002 304687 Craighead +FRM 05033 2002 46215 Crawford +FRM 05035 2002 285421 Crittenden +FRM 05037 2002 276802 Cross +FRM 05039 2002 3487 Dallas +FRM 05041 2002 233466 Desha +FRM 05043 2002 66400 Drew +FRM 05045 2002 60466 Faulkner +FRM 05047 2002 45751 Franklin +FRM 05049 2002 24228 Fulton +FRM 05051 2002 6240 Garland +FRM 05053 2002 9983 Grant +FRM 05055 2002 195394 Greene +FRM 05057 2002 43685 Hempstead +FRM 05059 2002 15029 Hot Spring +FRM 05061 2002 22892 Howard +FRM 05063 2002 86789 Independence +FRM 05065 2002 20167 Izard +FRM 05067 2002 270727 Jackson +FRM 05069 2002 237741 Jefferson +FRM 05071 2002 33117 Johnson +FRM 05073 2002 41624 Lafayette +FRM 05075 2002 194842 Lawrence +FRM 05077 2002 252325 Lee +FRM 05079 2002 144753 Lincoln +FRM 05081 2002 49918 Little River +FRM 05083 2002 55820 Logan +FRM 05085 2002 258048 Lonoke +FRM 05087 2002 52596 Madison +FRM 05089 2002 14668 Marion +FRM 05091 2002 62228 Miller +FRM 05093 2002 446167 Mississippi +FRM 05095 2002 199079 Monroe +FRM 05097 2002 16588 Montgomery +FRM 05099 2002 15784 Nevada +FRM 05101 2002 13597 Newton +FRM 05103 2002 5077 Ouachita +FRM 05105 2002 23630 Perry +FRM 05107 2002 303759 Phillips +FRM 05109 2002 13071 Pike +FRM 05111 2002 346899 Poinsett +FRM 05113 2002 26130 Polk +FRM 05115 2002 48110 Pope +FRM 05117 2002 227766 Prairie +FRM 05119 2002 61422 Pulaski +FRM 05121 2002 105014 Randolph +FRM 05123 2002 230046 St. Francis +FRM 05125 2002 13625 Saline +FRM 05127 2002 26434 Scott +FRM 05129 2002 20517 Searcy +FRM 05131 2002 30410 Sebastian +FRM 05133 2002 25201 Sevier +FRM 05135 2002 20841 Sharp +FRM 05137 2002 21535 Stone +FRM 05139 2002 6111 Union +FRM 05141 2002 24085 Van Buren +FRM 05143 2002 85908 Washington +FRM 05145 2002 139913 White +FRM 05147 2002 230959 Woodruff +FRM 05149 2002 55965 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_GOLF.ALO new file mode 100644 index 0000000..ffa5cc8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_GOLF.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 05000 2002 156 AR +GC 05001 2002 2 Arkansas +GC 05003 2002 1 Ashley +GC 05005 2002 2 Baxter +GC 05007 2002 8 Benton +GC 05009 2002 2 Boone +GC 05011 2002 1 Bradley +GC 05013 2002 0 Calhoun +GC 05015 2002 1 Carroll +GC 05017 2002 2 Chicot +GC 05019 2002 2 Clark +GC 05021 2002 1 Clay +GC 05023 2002 2 Cleburne +GC 05025 2002 0 Cleveland +GC 05027 2002 1 Columbia +GC 05029 2002 1 Conway +GC 05031 2002 8 Craighead +GC 05033 2002 5 Crawford +GC 05035 2002 1 Crittenden +GC 05037 2002 1 Cross +GC 05039 2002 1 Dallas +GC 05041 2002 2 Desha +GC 05043 2002 2 Drew +GC 05045 2002 4 Faulkner +GC 05047 2002 0 Franklin +GC 05049 2002 0 Fulton +GC 05051 2002 5 Garland +GC 05053 2002 1 Grant +GC 05055 2002 2 Greene +GC 05057 2002 1 Hempstead +GC 05059 2002 1 Hot Spring +GC 05061 2002 1 Howard +GC 05063 2002 1 Independence +GC 05065 2002 2 Izard +GC 05067 2002 2 Jackson +GC 05069 2002 3 Jefferson +GC 05071 2002 1 Johnson +GC 05073 2002 0 Lafayette +GC 05075 2002 1 Lawrence +GC 05077 2002 1 Lee +GC 05079 2002 0 Lincoln +GC 05081 2002 3 Little River +GC 05083 2002 2 Logan +GC 05085 2002 3 Lonoke +GC 05087 2002 1 Madison +GC 05089 2002 0 Marion +GC 05091 2002 4 Miller +GC 05093 2002 4 Mississippi +GC 05095 2002 4 Monroe +GC 05097 2002 0 Montgomery +GC 05099 2002 1 Nevada +GC 05101 2002 0 Newton +GC 05103 2002 1 Ouachita +GC 05105 2002 0 Perry +GC 05107 2002 1 Phillips +GC 05109 2002 1 Pike +GC 05111 2002 2 Poinsett +GC 05113 2002 1 Polk +GC 05115 2002 2 Pope +GC 05117 2002 1 Prairie +GC 05119 2002 15 Pulaski +GC 05121 2002 2 Randolph +GC 05123 2002 3 St. Francis +GC 05125 2002 4 Saline +GC 05127 2002 1 Scott +GC 05129 2002 0 Searcy +GC 05131 2002 5 Sebastian +GC 05133 2002 1 Sevier +GC 05135 2002 0 Sharp +GC 05137 2002 0 Stone +GC 05139 2002 3 Union +GC 05141 2002 2 Van Buren +GC 05143 2002 12 Washington +GC 05145 2002 2 White +GC 05147 2002 1 Woodruff +GC 05149 2002 2 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_HOLSL.ALO new file mode 100644 index 0000000..9df67a3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_HOLSL.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 05000 2002 3535 AR +COM 05001 2002 38 Arkansas +COM 05003 2002 18 Ashley +COM 05005 2002 25 Baxter +COM 05007 2002 214 Benton +COM 05009 2002 43 Boone +COM 05011 2002 10 Bradley +COM 05013 2002 2 Calhoun +COM 05015 2002 26 Carroll +COM 05017 2002 17 Chicot +COM 05019 2002 20 Clark +COM 05021 2002 19 Clay +COM 05023 2002 34 Cleburne +COM 05025 2002 5 Cleveland +COM 05027 2002 26 Columbia +COM 05029 2002 22 Conway +COM 05031 2002 134 Craighead +COM 05033 2002 68 Crawford +COM 05035 2002 59 Crittenden +COM 05037 2002 24 Cross +COM 05039 2002 10 Dallas +COM 05041 2002 17 Desha +COM 05043 2002 22 Drew +COM 05045 2002 83 Faulkner +COM 05047 2002 5 Franklin +COM 05049 2002 7 Fulton +COM 05051 2002 114 Garland +COM 05053 2002 14 Grant +COM 05055 2002 46 Greene +COM 05057 2002 17 Hempstead +COM 05059 2002 18 Hot Spring +COM 05061 2002 14 Howard +COM 05063 2002 38 Independence +COM 05065 2002 11 Izard +COM 05067 2002 24 Jackson +COM 05069 2002 83 Jefferson +COM 05071 2002 10 Johnson +COM 05073 2002 1 Lafayette +COM 05075 2002 19 Lawrence +COM 05077 2002 8 Lee +COM 05079 2002 7 Lincoln +COM 05081 2002 14 Little River +COM 05083 2002 14 Logan +COM 05085 2002 48 Lonoke +COM 05087 2002 5 Madison +COM 05089 2002 5 Marion +COM 05091 2002 51 Miller +COM 05093 2002 55 Mississippi +COM 05095 2002 13 Monroe +COM 05097 2002 6 Montgomery +COM 05099 2002 5 Nevada +COM 05101 2002 8 Newton +COM 05103 2002 34 Ouachita +COM 05105 2002 4 Perry +COM 05107 2002 31 Phillips +COM 05109 2002 18 Pike +COM 05111 2002 26 Poinsett +COM 05113 2002 18 Polk +COM 05115 2002 97 Pope +COM 05117 2002 7 Prairie +COM 05119 2002 845 Pulaski +COM 05121 2002 10 Randolph +COM 05123 2002 24 St. Francis +COM 05125 2002 89 Saline +COM 05127 2002 5 Scott +COM 05129 2002 5 Searcy +COM 05131 2002 229 Sebastian +COM 05133 2002 7 Sevier +COM 05135 2002 12 Sharp +COM 05137 2002 7 Stone +COM 05139 2002 70 Union +COM 05141 2002 15 Van Buren +COM 05143 2002 283 Washington +COM 05145 2002 82 White +COM 05147 2002 12 Woodruff +COM 05149 2002 9 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_HOUSE.ALO new file mode 100644 index 0000000..fb3b7fa --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_HOUSE.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 05000 2002 1201909 AR +HOU 05001 2002 9735 Arkansas +HOU 05003 2002 10816 Ashley +HOU 05005 2002 20406 Baxter +HOU 05007 2002 68328 Benton +HOU 05009 2002 15676 Boone +HOU 05011 2002 5931 Bradley +HOU 05013 2002 3063 Calhoun +HOU 05015 2002 11970 Carroll +HOU 05017 2002 6049 Chicot +HOU 05019 2002 10470 Clark +HOU 05021 2002 8561 Clay +HOU 05023 2002 13993 Cleburne +HOU 05025 2002 3900 Cleveland +HOU 05027 2002 11702 Columbia +HOU 05029 2002 9141 Conway +HOU 05031 2002 36057 Craighead +HOU 05033 2002 21812 Crawford +HOU 05035 2002 21165 Crittenden +HOU 05037 2002 8222 Cross +HOU 05039 2002 4440 Dallas +HOU 05041 2002 6759 Desha +HOU 05043 2002 8557 Drew +HOU 05045 2002 36301 Faulkner +HOU 05047 2002 7763 Franklin +HOU 05049 2002 6073 Fulton +HOU 05051 2002 45528 Garland +HOU 05053 2002 7135 Grant +HOU 05055 2002 16674 Greene +HOU 05057 2002 10285 Hempstead +HOU 05059 2002 13606 Hot Spring +HOU 05061 2002 6388 Howard +HOU 05063 2002 15107 Independence +HOU 05065 2002 6694 Izard +HOU 05067 2002 8044 Jackson +HOU 05069 2002 34785 Jefferson +HOU 05071 2002 10064 Johnson +HOU 05073 2002 4645 Lafayette +HOU 05075 2002 8169 Lawrence +HOU 05077 2002 4877 Lee +HOU 05079 2002 5065 Lincoln +HOU 05081 2002 6507 Little River +HOU 05083 2002 10029 Logan +HOU 05085 2002 21848 Lonoke +HOU 05087 2002 6621 Madison +HOU 05089 2002 8539 Marion +HOU 05091 2002 18125 Miller +HOU 05093 2002 22482 Mississippi +HOU 05095 2002 5150 Monroe +HOU 05097 2002 5147 Montgomery +HOU 05099 2002 4815 Nevada +HOU 05101 2002 4366 Newton +HOU 05103 2002 13533 Ouachita +HOU 05105 2002 4779 Perry +HOU 05107 2002 10923 Phillips +HOU 05109 2002 5631 Pike +HOU 05111 2002 11218 Poinsett +HOU 05113 2002 9380 Polk +HOU 05115 2002 23487 Pope +HOU 05117 2002 4840 Prairie +HOU 05119 2002 164211 Pulaski +HOU 05121 2002 8424 Randolph +HOU 05123 2002 11446 St. Francis +HOU 05125 2002 35276 Saline +HOU 05127 2002 5014 Scott +HOU 05129 2002 4341 Searcy +HOU 05131 2002 50153 Sebastian +HOU 05133 2002 6515 Sevier +HOU 05135 2002 9435 Sharp +HOU 05137 2002 5826 Stone +HOU 05139 2002 20854 Union +HOU 05141 2002 9298 Van Buren +HOU 05143 2002 67976 Washington +HOU 05145 2002 28285 White +HOU 05147 2002 4131 Woodruff +HOU 05149 2002 9348 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_LOGGN.ALO new file mode 100644 index 0000000..570c12c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_LOGGN.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 05000 2002 950904275 AR +LOG 05001 2002 7851191 Arkansas +LOG 05003 2002 26453686 Ashley +LOG 05005 2002 1734801 Baxter +LOG 05007 2002 3750019 Benton +LOG 05009 2002 1785176 Boone +LOG 05011 2002 31763831 Bradley +LOG 05013 2002 31026797 Calhoun +LOG 05015 2002 2434195 Carroll +LOG 05017 2002 8973046 Chicot +LOG 05019 2002 30772109 Clark +LOG 05021 2002 499015 Clay +LOG 05023 2002 7417211 Cleburne +LOG 05025 2002 30212041 Cleveland +LOG 05027 2002 35603518 Columbia +LOG 05029 2002 5253208 Conway +LOG 05031 2002 2090 Craighead +LOG 05033 2002 3112046 Crawford +LOG 05035 2002 946515 Crittenden +LOG 05037 2002 2075251 Cross +LOG 05039 2002 35092303 Dallas +LOG 05041 2002 5394303 Desha +LOG 05043 2002 28435944 Drew +LOG 05045 2002 844790 Faulkner +LOG 05047 2002 2762127 Franklin +LOG 05049 2002 4147658 Fulton +LOG 05051 2002 18197484 Garland +LOG 05053 2002 43546275 Grant +LOG 05055 2002 638614 Greene +LOG 05057 2002 29903848 Hempstead +LOG 05059 2002 22848814 Hot Spring +LOG 05061 2002 30339003 Howard +LOG 05063 2002 7799515 Independence +LOG 05065 2002 3265985 Izard +LOG 05067 2002 2474735 Jackson +LOG 05069 2002 14752686 Jefferson +LOG 05071 2002 2942694 Johnson +LOG 05073 2002 25163521 Lafayette +LOG 05075 2002 4050831 Lawrence +LOG 05077 2002 3954441 Lee +LOG 05079 2002 14377463 Lincoln +LOG 05081 2002 26604393 Little River +LOG 05083 2002 4248964 Logan +LOG 05085 2002 3571757 Lonoke +LOG 05087 2002 4107468 Madison +LOG 05089 2002 3123474 Marion +LOG 05091 2002 20290321 Miller +LOG 05093 2002 1513000 Mississippi +LOG 05095 2002 3151791 Monroe +LOG 05097 2002 15413404 Montgomery +LOG 05099 2002 44855928 Nevada +LOG 05101 2002 4373950 Newton +LOG 05103 2002 33947045 Ouachita +LOG 05105 2002 5685756 Perry +LOG 05107 2002 3234924 Phillips +LOG 05109 2002 26221539 Pike +LOG 05111 2002 6199 Poinsett +LOG 05113 2002 26990489 Polk +LOG 05115 2002 7019903 Pope +LOG 05117 2002 3108960 Prairie +LOG 05119 2002 7758174 Pulaski +LOG 05121 2002 2732350 Randolph +LOG 05123 2002 3057932 St. Francis +LOG 05125 2002 20408423 Saline +LOG 05127 2002 5548773 Scott +LOG 05129 2002 3498002 Searcy +LOG 05131 2002 367203 Sebastian +LOG 05133 2002 26243195 Sevier +LOG 05135 2002 3488878 Sharp +LOG 05137 2002 7593668 Stone +LOG 05139 2002 70463439 Union +LOG 05141 2002 4572296 Van Buren +LOG 05143 2002 3740019 Washington +LOG 05145 2002 8105302 White +LOG 05147 2002 3074505 Woodruff +LOG 05149 2002 10184072 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_LSCAP.ALO new file mode 100644 index 0000000..d2db47f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_LSCAP.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 05000 2002 2398 AR +LSC 05001 2002 6 Arkansas +LSC 05003 2002 5 Ashley +LSC 05005 2002 28 Baxter +LSC 05007 2002 89 Benton +LSC 05009 2002 6 Boone +LSC 05011 2002 89 Bradley +LSC 05013 2002 0 Calhoun +LSC 05015 2002 30 Carroll +LSC 05017 2002 0 Chicot +LSC 05019 2002 0 Clark +LSC 05021 2002 5 Clay +LSC 05023 2002 16 Cleburne +LSC 05025 2002 5 Cleveland +LSC 05027 2002 5 Columbia +LSC 05029 2002 0 Conway +LSC 05031 2002 91 Craighead +LSC 05033 2002 30 Crawford +LSC 05035 2002 13 Crittenden +LSC 05037 2002 0 Cross +LSC 05039 2002 5 Dallas +LSC 05041 2002 5 Desha +LSC 05043 2002 5 Drew +LSC 05045 2002 64 Faulkner +LSC 05047 2002 5 Franklin +LSC 05049 2002 0 Fulton +LSC 05051 2002 89 Garland +LSC 05053 2002 4 Grant +LSC 05055 2002 5 Greene +LSC 05057 2002 0 Hempstead +LSC 05059 2002 5 Hot Spring +LSC 05061 2002 5 Howard +LSC 05063 2002 5 Independence +LSC 05065 2002 5 Izard +LSC 05067 2002 0 Jackson +LSC 05069 2002 5 Jefferson +LSC 05071 2002 5 Johnson +LSC 05073 2002 5 Lafayette +LSC 05075 2002 5 Lawrence +LSC 05077 2002 5 Lee +LSC 05079 2002 5 Lincoln +LSC 05081 2002 5 Little River +LSC 05083 2002 0 Logan +LSC 05085 2002 10 Lonoke +LSC 05087 2002 5 Madison +LSC 05089 2002 5 Marion +LSC 05091 2002 5 Miller +LSC 05093 2002 30 Mississippi +LSC 05095 2002 5 Monroe +LSC 05097 2002 5 Montgomery +LSC 05099 2002 5 Nevada +LSC 05101 2002 0 Newton +LSC 05103 2002 5 Ouachita +LSC 05105 2002 5 Perry +LSC 05107 2002 5 Phillips +LSC 05109 2002 0 Pike +LSC 05111 2002 5 Poinsett +LSC 05113 2002 0 Polk +LSC 05115 2002 30 Pope +LSC 05117 2002 5 Prairie +LSC 05119 2002 1152 Pulaski +LSC 05121 2002 5 Randolph +LSC 05123 2002 5 St. Francis +LSC 05125 2002 47 Saline +LSC 05127 2002 0 Scott +LSC 05129 2002 30 Searcy +LSC 05131 2002 117 Sebastian +LSC 05133 2002 5 Sevier +LSC 05135 2002 5 Sharp +LSC 05137 2002 5 Stone +LSC 05139 2002 30 Union +LSC 05141 2002 5 Van Buren +LSC 05143 2002 147 Washington +LSC 05145 2002 55 White +LSC 05147 2002 5 Woodruff +LSC 05149 2002 5 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_MNFG.ALO new file mode 100644 index 0000000..77a1b42 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_MNFG.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 05000 2002 370917 AR +MFG 05001 2002 5069 Arkansas +MFG 05003 2002 6101 Ashley +MFG 05005 2002 5024 Baxter +MFG 05007 2002 20288 Benton +MFG 05009 2002 5103 Boone +MFG 05011 2002 1506 Bradley +MFG 05013 2002 309 Calhoun +MFG 05015 2002 3989 Carroll +MFG 05017 2002 796 Chicot +MFG 05019 2002 4718 Clark +MFG 05021 2002 3536 Clay +MFG 05023 2002 3220 Cleburne +MFG 05025 2002 192 Cleveland +MFG 05027 2002 5687 Columbia +MFG 05029 2002 2123 Conway +MFG 05031 2002 14033 Craighead +MFG 05033 2002 5023 Crawford +MFG 05035 2002 3197 Crittenden +MFG 05037 2002 2439 Cross +MFG 05039 2002 1610 Dallas +MFG 05041 2002 2116 Desha +MFG 05043 2002 2915 Drew +MFG 05045 2002 13339 Faulkner +MFG 05047 2002 1560 Franklin +MFG 05049 2002 286 Fulton +MFG 05051 2002 6899 Garland +MFG 05053 2002 2063 Grant +MFG 05055 2002 9461 Greene +MFG 05057 2002 6216 Hempstead +MFG 05059 2002 2870 Hot Spring +MFG 05061 2002 7207 Howard +MFG 05063 2002 7424 Independence +MFG 05065 2002 1072 Izard +MFG 05067 2002 1452 Jackson +MFG 05069 2002 11142 Jefferson +MFG 05071 2002 3956 Johnson +MFG 05073 2002 771 Lafayette +MFG 05075 2002 2319 Lawrence +MFG 05077 2002 329 Lee +MFG 05079 2002 750 Lincoln +MFG 05081 2002 3530 Little River +MFG 05083 2002 2926 Logan +MFG 05085 2002 3048 Lonoke +MFG 05087 2002 1522 Madison +MFG 05089 2002 3390 Marion +MFG 05091 2002 5232 Miller +MFG 05093 2002 10632 Mississippi +MFG 05095 2002 277 Monroe +MFG 05097 2002 271 Montgomery +MFG 05099 2002 1243 Nevada +MFG 05101 2002 188 Newton +MFG 05103 2002 4049 Ouachita +MFG 05105 2002 40 Perry +MFG 05107 2002 1320 Phillips +MFG 05109 2002 802 Pike +MFG 05111 2002 2775 Poinsett +MFG 05113 2002 2431 Polk +MFG 05115 2002 6799 Pope +MFG 05117 2002 383 Prairie +MFG 05119 2002 33369 Pulaski +MFG 05121 2002 2824 Randolph +MFG 05123 2002 6986 St. Francis +MFG 05125 2002 3888 Saline +MFG 05127 2002 1384 Scott +MFG 05129 2002 326 Searcy +MFG 05131 2002 39330 Sebastian +MFG 05133 2002 3187 Sevier +MFG 05135 2002 581 Sharp +MFG 05137 2002 1246 Stone +MFG 05139 2002 9780 Union +MFG 05141 2002 1036 Van Buren +MFG 05143 2002 24680 Washington +MFG 05145 2002 8162 White +MFG 05147 2002 1292 Woodruff +MFG 05149 2002 3878 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_OIL.ALO new file mode 100644 index 0000000..9b951b0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_OIL.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 05000 2002 1271 AR +OIL 05001 2002 0 Arkansas +OIL 05003 2002 48 Ashley +OIL 05005 2002 0 Baxter +OIL 05007 2002 0 Benton +OIL 05009 2002 48 Boone +OIL 05011 2002 11 Bradley +OIL 05013 2002 0 Calhoun +OIL 05015 2002 0 Carroll +OIL 05017 2002 11 Chicot +OIL 05019 2002 0 Clark +OIL 05021 2002 0 Clay +OIL 05023 2002 48 Cleburne +OIL 05025 2002 0 Cleveland +OIL 05027 2002 216 Columbia +OIL 05029 2002 0 Conway +OIL 05031 2002 0 Craighead +OIL 05033 2002 48 Crawford +OIL 05035 2002 0 Crittenden +OIL 05037 2002 0 Cross +OIL 05039 2002 0 Dallas +OIL 05041 2002 0 Desha +OIL 05043 2002 0 Drew +OIL 05045 2002 11 Faulkner +OIL 05047 2002 0 Franklin +OIL 05049 2002 0 Fulton +OIL 05051 2002 0 Garland +OIL 05053 2002 0 Grant +OIL 05055 2002 0 Greene +OIL 05057 2002 0 Hempstead +OIL 05059 2002 60 Hot Spring +OIL 05061 2002 0 Howard +OIL 05063 2002 0 Independence +OIL 05065 2002 0 Izard +OIL 05067 2002 0 Jackson +OIL 05069 2002 0 Jefferson +OIL 05071 2002 0 Johnson +OIL 05073 2002 49 Lafayette +OIL 05075 2002 0 Lawrence +OIL 05077 2002 0 Lee +OIL 05079 2002 0 Lincoln +OIL 05081 2002 0 Little River +OIL 05083 2002 11 Logan +OIL 05085 2002 0 Lonoke +OIL 05087 2002 0 Madison +OIL 05089 2002 0 Marion +OIL 05091 2002 11 Miller +OIL 05093 2002 0 Mississippi +OIL 05095 2002 0 Monroe +OIL 05097 2002 0 Montgomery +OIL 05099 2002 0 Nevada +OIL 05101 2002 0 Newton +OIL 05103 2002 15 Ouachita +OIL 05105 2002 0 Perry +OIL 05107 2002 0 Phillips +OIL 05109 2002 0 Pike +OIL 05111 2002 0 Poinsett +OIL 05113 2002 0 Polk +OIL 05115 2002 0 Pope +OIL 05117 2002 0 Prairie +OIL 05119 2002 5 Pulaski +OIL 05121 2002 0 Randolph +OIL 05123 2002 0 St. Francis +OIL 05125 2002 11 Saline +OIL 05127 2002 0 Scott +OIL 05129 2002 0 Searcy +OIL 05131 2002 405 Sebastian +OIL 05133 2002 0 Sevier +OIL 05135 2002 0 Sharp +OIL 05137 2002 0 Stone +OIL 05139 2002 149 Union +OIL 05141 2002 0 Van Buren +OIL 05143 2002 65 Washington +OIL 05145 2002 49 White +OIL 05147 2002 0 Woodruff +OIL 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_POP.ALO new file mode 100644 index 0000000..fa55760 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_POP.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 05000 2002 2707509 AR +POP 05001 2002 20389 Arkansas +POP 05003 2002 23878 Ashley +POP 05005 2002 38773 Baxter +POP 05007 2002 165313 Benton +POP 05009 2002 34662 Boone +POP 05011 2002 12469 Bradley +POP 05013 2002 5665 Calhoun +POP 05015 2002 26043 Carroll +POP 05017 2002 13580 Chicot +POP 05019 2002 23448 Clark +POP 05021 2002 17059 Clay +POP 05023 2002 24433 Cleburne +POP 05025 2002 8627 Cleveland +POP 05027 2002 25255 Columbia +POP 05029 2002 20468 Conway +POP 05031 2002 83745 Craighead +POP 05033 2002 55029 Crawford +POP 05035 2002 51168 Crittenden +POP 05037 2002 19342 Cross +POP 05039 2002 8836 Dallas +POP 05041 2002 14810 Desha +POP 05043 2002 18425 Drew +POP 05045 2002 90035 Faulkner +POP 05047 2002 17921 Franklin +POP 05049 2002 11606 Fulton +POP 05051 2002 90009 Garland +POP 05053 2002 16750 Grant +POP 05055 2002 38041 Greene +POP 05057 2002 23459 Hempstead +POP 05059 2002 30574 Hot Spring +POP 05061 2002 14305 Howard +POP 05063 2002 34323 Independence +POP 05065 2002 13193 Izard +POP 05067 2002 17743 Jackson +POP 05069 2002 83292 Jefferson +POP 05071 2002 23211 Johnson +POP 05073 2002 8336 Lafayette +POP 05075 2002 17620 Lawrence +POP 05077 2002 12271 Lee +POP 05079 2002 14511 Lincoln +POP 05081 2002 13427 Little River +POP 05083 2002 22542 Logan +POP 05085 2002 55322 Lonoke +POP 05087 2002 14330 Madison +POP 05089 2002 16237 Marion +POP 05091 2002 41329 Miller +POP 05093 2002 50225 Mississippi +POP 05095 2002 9746 Monroe +POP 05097 2002 9146 Montgomery +POP 05099 2002 9697 Nevada +POP 05101 2002 8506 Newton +POP 05103 2002 27838 Ouachita +POP 05105 2002 10430 Perry +POP 05107 2002 25072 Phillips +POP 05109 2002 11195 Pike +POP 05111 2002 25412 Poinsett +POP 05113 2002 20245 Polk +POP 05115 2002 55224 Pope +POP 05117 2002 9436 Prairie +POP 05119 2002 363719 Pulaski +POP 05121 2002 18241 Randolph +POP 05123 2002 28635 St. Francis +POP 05125 2002 86237 Saline +POP 05127 2002 11020 Scott +POP 05129 2002 8096 Searcy +POP 05131 2002 116933 Sebastian +POP 05133 2002 15751 Sevier +POP 05135 2002 17365 Sharp +POP 05137 2002 11552 Stone +POP 05139 2002 45215 Union +POP 05141 2002 16289 Van Buren +POP 05143 2002 165566 Washington +POP 05145 2002 69117 White +POP 05147 2002 8433 Woodruff +POP 05149 2002 21364 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_RAIL.ALO new file mode 100644 index 0000000..4d11d58 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_RAIL.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 05000 2002 22131.830 AR +RR 05001 2002 228.720 Arkansas +RR 05003 2002 156.330 Ashley +RR 05005 2002 0.000 Baxter +RR 05007 2002 524.110 Benton +RR 05009 2002 0.000 Boone +RR 05011 2002 0.000 Bradley +RR 05013 2002 128.730 Calhoun +RR 05015 2002 0.000 Carroll +RR 05017 2002 91.030 Chicot +RR 05019 2002 586.990 Clark +RR 05021 2002 560.980 Clay +RR 05023 2002 0.000 Cleburne +RR 05025 2002 257.740 Cleveland +RR 05027 2002 301.970 Columbia +RR 05029 2002 475.330 Conway +RR 05031 2002 524.990 Craighead +RR 05033 2002 368.710 Crawford +RR 05035 2002 1074.740 Crittenden +RR 05037 2002 633.700 Cross +RR 05039 2002 386.480 Dallas +RR 05041 2002 261.820 Desha +RR 05043 2002 297.260 Drew +RR 05045 2002 497.040 Faulkner +RR 05047 2002 358.950 Franklin +RR 05049 2002 437.390 Fulton +RR 05051 2002 0.000 Garland +RR 05053 2002 0.000 Grant +RR 05055 2002 752.130 Greene +RR 05057 2002 559.820 Hempstead +RR 05059 2002 409.970 Hot Spring +RR 05061 2002 22.850 Howard +RR 05063 2002 189.100 Independence +RR 05065 2002 0.000 Izard +RR 05067 2002 446.340 Jackson +RR 05069 2002 808.300 Jefferson +RR 05071 2002 252.600 Johnson +RR 05073 2002 426.760 Lafayette +RR 05075 2002 1022.210 Lawrence +RR 05077 2002 10.180 Lee +RR 05079 2002 231.480 Lincoln +RR 05081 2002 511.560 Little River +RR 05083 2002 0.000 Logan +RR 05085 2002 710.590 Lonoke +RR 05087 2002 0.000 Madison +RR 05089 2002 0.000 Marion +RR 05091 2002 712.980 Miller +RR 05093 2002 106.790 Mississippi +RR 05095 2002 266.250 Monroe +RR 05097 2002 0.000 Montgomery +RR 05099 2002 354.140 Nevada +RR 05101 2002 0.000 Newton +RR 05103 2002 402.610 Ouachita +RR 05105 2002 0.000 Perry +RR 05107 2002 22.260 Phillips +RR 05109 2002 0.000 Pike +RR 05111 2002 492.910 Poinsett +RR 05113 2002 352.740 Polk +RR 05115 2002 228.480 Pope +RR 05117 2002 136.440 Prairie +RR 05119 2002 1731.370 Pulaski +RR 05121 2002 543.690 Randolph +RR 05123 2002 76.880 St. Francis +RR 05125 2002 546.900 Saline +RR 05127 2002 10.370 Scott +RR 05129 2002 0.000 Searcy +RR 05131 2002 13.200 Sebastian +RR 05133 2002 290.860 Sevier +RR 05135 2002 262.550 Sharp +RR 05137 2002 0.000 Stone +RR 05139 2002 10.560 Union +RR 05141 2002 0.000 Van Buren +RR 05143 2002 0.000 Washington +RR 05145 2002 849.660 White +RR 05147 2002 213.290 Woodruff +RR 05149 2002 0.000 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_RVPRK.ALO new file mode 100644 index 0000000..42bc16d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_RVPRK.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 05000 2002 68 AR +RVP 05001 2002 2 Arkansas +RVP 05003 2002 0 Ashley +RVP 05005 2002 12 Baxter +RVP 05007 2002 1 Benton +RVP 05009 2002 1 Boone +RVP 05011 2002 0 Bradley +RVP 05013 2002 0 Calhoun +RVP 05015 2002 2 Carroll +RVP 05017 2002 0 Chicot +RVP 05019 2002 2 Clark +RVP 05021 2002 0 Clay +RVP 05023 2002 2 Cleburne +RVP 05025 2002 0 Cleveland +RVP 05027 2002 0 Columbia +RVP 05029 2002 2 Conway +RVP 05031 2002 0 Craighead +RVP 05033 2002 0 Crawford +RVP 05035 2002 3 Crittenden +RVP 05037 2002 1 Cross +RVP 05039 2002 0 Dallas +RVP 05041 2002 0 Desha +RVP 05043 2002 0 Drew +RVP 05045 2002 2 Faulkner +RVP 05047 2002 0 Franklin +RVP 05049 2002 1 Fulton +RVP 05051 2002 5 Garland +RVP 05053 2002 0 Grant +RVP 05055 2002 0 Greene +RVP 05057 2002 0 Hempstead +RVP 05059 2002 0 Hot Spring +RVP 05061 2002 0 Howard +RVP 05063 2002 0 Independence +RVP 05065 2002 0 Izard +RVP 05067 2002 0 Jackson +RVP 05069 2002 0 Jefferson +RVP 05071 2002 0 Johnson +RVP 05073 2002 0 Lafayette +RVP 05075 2002 0 Lawrence +RVP 05077 2002 0 Lee +RVP 05079 2002 0 Lincoln +RVP 05081 2002 0 Little River +RVP 05083 2002 1 Logan +RVP 05085 2002 0 Lonoke +RVP 05087 2002 0 Madison +RVP 05089 2002 1 Marion +RVP 05091 2002 1 Miller +RVP 05093 2002 0 Mississippi +RVP 05095 2002 1 Monroe +RVP 05097 2002 5 Montgomery +RVP 05099 2002 0 Nevada +RVP 05101 2002 3 Newton +RVP 05103 2002 0 Ouachita +RVP 05105 2002 1 Perry +RVP 05107 2002 0 Phillips +RVP 05109 2002 0 Pike +RVP 05111 2002 2 Poinsett +RVP 05113 2002 2 Polk +RVP 05115 2002 1 Pope +RVP 05117 2002 1 Prairie +RVP 05119 2002 3 Pulaski +RVP 05121 2002 0 Randolph +RVP 05123 2002 0 St. Francis +RVP 05125 2002 1 Saline +RVP 05127 2002 0 Scott +RVP 05129 2002 2 Searcy +RVP 05131 2002 0 Sebastian +RVP 05133 2002 0 Sevier +RVP 05135 2002 2 Sharp +RVP 05137 2002 2 Stone +RVP 05139 2002 0 Union +RVP 05141 2002 1 Van Buren +RVP 05143 2002 0 Washington +RVP 05145 2002 2 White +RVP 05147 2002 0 Woodruff +RVP 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_SBC.ALO new file mode 100644 index 0000000..a5aeef5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_SBC.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 05000 2002 0 AR +SBC 05001 2002 0 Arkansas +SBC 05003 2002 0 Ashley +SBC 05005 2002 0 Baxter +SBC 05007 2002 0 Benton +SBC 05009 2002 0 Boone +SBC 05011 2002 0 Bradley +SBC 05013 2002 0 Calhoun +SBC 05015 2002 0 Carroll +SBC 05017 2002 0 Chicot +SBC 05019 2002 0 Clark +SBC 05021 2002 0 Clay +SBC 05023 2002 0 Cleburne +SBC 05025 2002 0 Cleveland +SBC 05027 2002 0 Columbia +SBC 05029 2002 0 Conway +SBC 05031 2002 0 Craighead +SBC 05033 2002 0 Crawford +SBC 05035 2002 0 Crittenden +SBC 05037 2002 0 Cross +SBC 05039 2002 0 Dallas +SBC 05041 2002 0 Desha +SBC 05043 2002 0 Drew +SBC 05045 2002 0 Faulkner +SBC 05047 2002 0 Franklin +SBC 05049 2002 0 Fulton +SBC 05051 2002 0 Garland +SBC 05053 2002 0 Grant +SBC 05055 2002 0 Greene +SBC 05057 2002 0 Hempstead +SBC 05059 2002 0 Hot Spring +SBC 05061 2002 0 Howard +SBC 05063 2002 0 Independence +SBC 05065 2002 0 Izard +SBC 05067 2002 0 Jackson +SBC 05069 2002 0 Jefferson +SBC 05071 2002 0 Johnson +SBC 05073 2002 0 Lafayette +SBC 05075 2002 0 Lawrence +SBC 05077 2002 0 Lee +SBC 05079 2002 0 Lincoln +SBC 05081 2002 0 Little River +SBC 05083 2002 0 Logan +SBC 05085 2002 0 Lonoke +SBC 05087 2002 0 Madison +SBC 05089 2002 0 Marion +SBC 05091 2002 0 Miller +SBC 05093 2002 0 Mississippi +SBC 05095 2002 0 Monroe +SBC 05097 2002 0 Montgomery +SBC 05099 2002 0 Nevada +SBC 05101 2002 0 Newton +SBC 05103 2002 0 Ouachita +SBC 05105 2002 0 Perry +SBC 05107 2002 0 Phillips +SBC 05109 2002 0 Pike +SBC 05111 2002 0 Poinsett +SBC 05113 2002 0 Polk +SBC 05115 2002 0 Pope +SBC 05117 2002 0 Prairie +SBC 05119 2002 0 Pulaski +SBC 05121 2002 0 Randolph +SBC 05123 2002 0 St. Francis +SBC 05125 2002 0 Saline +SBC 05127 2002 0 Scott +SBC 05129 2002 0 Searcy +SBC 05131 2002 0 Sebastian +SBC 05133 2002 0 Sevier +SBC 05135 2002 0 Sharp +SBC 05137 2002 0 Stone +SBC 05139 2002 0 Union +SBC 05141 2002 0 Van Buren +SBC 05143 2002 0 Washington +SBC 05145 2002 0 White +SBC 05147 2002 0 Woodruff +SBC 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_SBR.ALO new file mode 100644 index 0000000..dab76ba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_SBR.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 05000 2002 0 AR +SBR 05001 2002 0 Arkansas +SBR 05003 2002 0 Ashley +SBR 05005 2002 0 Baxter +SBR 05007 2002 0 Benton +SBR 05009 2002 0 Boone +SBR 05011 2002 0 Bradley +SBR 05013 2002 0 Calhoun +SBR 05015 2002 0 Carroll +SBR 05017 2002 0 Chicot +SBR 05019 2002 0 Clark +SBR 05021 2002 0 Clay +SBR 05023 2002 0 Cleburne +SBR 05025 2002 0 Cleveland +SBR 05027 2002 0 Columbia +SBR 05029 2002 0 Conway +SBR 05031 2002 0 Craighead +SBR 05033 2002 0 Crawford +SBR 05035 2002 0 Crittenden +SBR 05037 2002 0 Cross +SBR 05039 2002 0 Dallas +SBR 05041 2002 0 Desha +SBR 05043 2002 0 Drew +SBR 05045 2002 0 Faulkner +SBR 05047 2002 0 Franklin +SBR 05049 2002 0 Fulton +SBR 05051 2002 0 Garland +SBR 05053 2002 0 Grant +SBR 05055 2002 0 Greene +SBR 05057 2002 0 Hempstead +SBR 05059 2002 0 Hot Spring +SBR 05061 2002 0 Howard +SBR 05063 2002 0 Independence +SBR 05065 2002 0 Izard +SBR 05067 2002 0 Jackson +SBR 05069 2002 0 Jefferson +SBR 05071 2002 0 Johnson +SBR 05073 2002 0 Lafayette +SBR 05075 2002 0 Lawrence +SBR 05077 2002 0 Lee +SBR 05079 2002 0 Lincoln +SBR 05081 2002 0 Little River +SBR 05083 2002 0 Logan +SBR 05085 2002 0 Lonoke +SBR 05087 2002 0 Madison +SBR 05089 2002 0 Marion +SBR 05091 2002 0 Miller +SBR 05093 2002 0 Mississippi +SBR 05095 2002 0 Monroe +SBR 05097 2002 0 Montgomery +SBR 05099 2002 0 Nevada +SBR 05101 2002 0 Newton +SBR 05103 2002 0 Ouachita +SBR 05105 2002 0 Perry +SBR 05107 2002 0 Phillips +SBR 05109 2002 0 Pike +SBR 05111 2002 0 Poinsett +SBR 05113 2002 0 Polk +SBR 05115 2002 0 Pope +SBR 05117 2002 0 Prairie +SBR 05119 2002 0 Pulaski +SBR 05121 2002 0 Randolph +SBR 05123 2002 0 St. Francis +SBR 05125 2002 0 Saline +SBR 05127 2002 0 Scott +SBR 05129 2002 0 Searcy +SBR 05131 2002 0 Sebastian +SBR 05133 2002 0 Sevier +SBR 05135 2002 0 Sharp +SBR 05137 2002 0 Stone +SBR 05139 2002 0 Union +SBR 05141 2002 0 Van Buren +SBR 05143 2002 0 Washington +SBR 05145 2002 0 White +SBR 05147 2002 0 Woodruff +SBR 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_SNOWM.ALO new file mode 100644 index 0000000..4a3fcd1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_SNOWM.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 05000 2002 0 AR +SNM 05001 2002 0 Arkansas +SNM 05003 2002 0 Ashley +SNM 05005 2002 0 Baxter +SNM 05007 2002 0 Benton +SNM 05009 2002 0 Boone +SNM 05011 2002 0 Bradley +SNM 05013 2002 0 Calhoun +SNM 05015 2002 0 Carroll +SNM 05017 2002 0 Chicot +SNM 05019 2002 0 Clark +SNM 05021 2002 0 Clay +SNM 05023 2002 0 Cleburne +SNM 05025 2002 0 Cleveland +SNM 05027 2002 0 Columbia +SNM 05029 2002 0 Conway +SNM 05031 2002 0 Craighead +SNM 05033 2002 0 Crawford +SNM 05035 2002 0 Crittenden +SNM 05037 2002 0 Cross +SNM 05039 2002 0 Dallas +SNM 05041 2002 0 Desha +SNM 05043 2002 0 Drew +SNM 05045 2002 0 Faulkner +SNM 05047 2002 0 Franklin +SNM 05049 2002 0 Fulton +SNM 05051 2002 0 Garland +SNM 05053 2002 0 Grant +SNM 05055 2002 0 Greene +SNM 05057 2002 0 Hempstead +SNM 05059 2002 0 Hot Spring +SNM 05061 2002 0 Howard +SNM 05063 2002 0 Independence +SNM 05065 2002 0 Izard +SNM 05067 2002 0 Jackson +SNM 05069 2002 0 Jefferson +SNM 05071 2002 0 Johnson +SNM 05073 2002 0 Lafayette +SNM 05075 2002 0 Lawrence +SNM 05077 2002 0 Lee +SNM 05079 2002 0 Lincoln +SNM 05081 2002 0 Little River +SNM 05083 2002 0 Logan +SNM 05085 2002 0 Lonoke +SNM 05087 2002 0 Madison +SNM 05089 2002 0 Marion +SNM 05091 2002 0 Miller +SNM 05093 2002 0 Mississippi +SNM 05095 2002 0 Monroe +SNM 05097 2002 0 Montgomery +SNM 05099 2002 0 Nevada +SNM 05101 2002 0 Newton +SNM 05103 2002 0 Ouachita +SNM 05105 2002 0 Perry +SNM 05107 2002 0 Phillips +SNM 05109 2002 0 Pike +SNM 05111 2002 0 Poinsett +SNM 05113 2002 0 Polk +SNM 05115 2002 0 Pope +SNM 05117 2002 0 Prairie +SNM 05119 2002 0 Pulaski +SNM 05121 2002 0 Randolph +SNM 05123 2002 0 St. Francis +SNM 05125 2002 0 Saline +SNM 05127 2002 0 Scott +SNM 05129 2002 0 Searcy +SNM 05131 2002 0 Sebastian +SNM 05133 2002 0 Sevier +SNM 05135 2002 0 Sharp +SNM 05137 2002 0 Stone +SNM 05139 2002 0 Union +SNM 05141 2002 0 Van Buren +SNM 05143 2002 0 Washington +SNM 05145 2002 0 White +SNM 05147 2002 0 Woodruff +SNM 05149 2002 0 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_WIB.ALO new file mode 100644 index 0000000..79d12ee --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_WIB.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 05000 1990 2867 AR +WIB 05001 1990 117 Arkansas +WIB 05003 1990 46 Ashley +WIB 05005 1990 84 Baxter +WIB 05007 1990 87 Benton +WIB 05009 1990 28 Boone +WIB 05011 1990 10 Bradley +WIB 05013 1990 11 Calhoun +WIB 05015 1990 22 Carroll +WIB 05017 1990 121 Chicot +WIB 05019 1990 44 Clark +WIB 05021 1990 5 Clay +WIB 05023 1990 101 Cleburne +WIB 05025 1990 3 Cleveland +WIB 05027 1990 2 Columbia +WIB 05029 1990 27 Conway +WIB 05031 1990 6 Craighead +WIB 05033 1990 23 Crawford +WIB 05035 1990 68 Crittenden +WIB 05037 1990 17 Cross +WIB 05039 1990 2 Dallas +WIB 05041 1990 141 Desha +WIB 05043 1990 19 Drew +WIB 05045 1990 43 Faulkner +WIB 05047 1990 26 Franklin +WIB 05049 1990 6 Fulton +WIB 05051 1990 146 Garland +WIB 05053 1990 3 Grant +WIB 05055 1990 6 Greene +WIB 05057 1990 33 Hempstead +WIB 05059 1990 19 Hot Spring +WIB 05061 1990 20 Howard +WIB 05063 1990 20 Independence +WIB 05065 1990 9 Izard +WIB 05067 1990 21 Jackson +WIB 05069 1990 75 Jefferson +WIB 05071 1990 53 Johnson +WIB 05073 1990 48 Lafayette +WIB 05075 1990 15 Lawrence +WIB 05077 1990 46 Lee +WIB 05079 1990 28 Lincoln +WIB 05081 1990 86 Little River +WIB 05083 1990 56 Logan +WIB 05085 1990 96 Lonoke +WIB 05087 1990 0 Madison +WIB 05089 1990 110 Marion +WIB 05091 1990 35 Miller +WIB 05093 1990 56 Mississippi +WIB 05095 1990 38 Monroe +WIB 05097 1990 50 Montgomery +WIB 05099 1990 2 Nevada +WIB 05101 1990 1 Newton +WIB 05103 1990 19 Ouachita +WIB 05105 1990 25 Perry +WIB 05107 1990 90 Phillips +WIB 05109 1990 28 Pike +WIB 05111 1990 15 Poinsett +WIB 05113 1990 8 Polk +WIB 05115 1990 49 Pope +WIB 05117 1990 77 Prairie +WIB 05119 1990 96 Pulaski +WIB 05121 1990 11 Randolph +WIB 05123 1990 22 St. Francis +WIB 05125 1990 15 Saline +WIB 05127 1990 11 Scott +WIB 05129 1990 4 Searcy +WIB 05131 1990 25 Sebastian +WIB 05133 1990 45 Sevier +WIB 05135 1990 5 Sharp +WIB 05137 1990 7 Stone +WIB 05139 1990 42 Union +WIB 05141 1990 33 Van Buren +WIB 05143 1990 15 Washington +WIB 05145 1990 21 White +WIB 05147 1990 19 Woodruff +WIB 05149 1990 54 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AR_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AR_WOB.ALO new file mode 100644 index 0000000..5d71716 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AR_WOB.ALO @@ -0,0 +1,100 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 05000 1990 2867 AR +WOB 05001 1990 117 Arkansas +WOB 05003 1990 46 Ashley +WOB 05005 1990 84 Baxter +WOB 05007 1990 87 Benton +WOB 05009 1990 28 Boone +WOB 05011 1990 10 Bradley +WOB 05013 1990 11 Calhoun +WOB 05015 1990 22 Carroll +WOB 05017 1990 121 Chicot +WOB 05019 1990 44 Clark +WOB 05021 1990 5 Clay +WOB 05023 1990 101 Cleburne +WOB 05025 1990 3 Cleveland +WOB 05027 1990 2 Columbia +WOB 05029 1990 27 Conway +WOB 05031 1990 6 Craighead +WOB 05033 1990 23 Crawford +WOB 05035 1990 68 Crittenden +WOB 05037 1990 17 Cross +WOB 05039 1990 2 Dallas +WOB 05041 1990 141 Desha +WOB 05043 1990 19 Drew +WOB 05045 1990 43 Faulkner +WOB 05047 1990 26 Franklin +WOB 05049 1990 6 Fulton +WOB 05051 1990 146 Garland +WOB 05053 1990 3 Grant +WOB 05055 1990 6 Greene +WOB 05057 1990 33 Hempstead +WOB 05059 1990 19 Hot Spring +WOB 05061 1990 20 Howard +WOB 05063 1990 20 Independence +WOB 05065 1990 9 Izard +WOB 05067 1990 21 Jackson +WOB 05069 1990 75 Jefferson +WOB 05071 1990 53 Johnson +WOB 05073 1990 48 Lafayette +WOB 05075 1990 15 Lawrence +WOB 05077 1990 46 Lee +WOB 05079 1990 28 Lincoln +WOB 05081 1990 86 Little River +WOB 05083 1990 56 Logan +WOB 05085 1990 96 Lonoke +WOB 05087 1990 0 Madison +WOB 05089 1990 110 Marion +WOB 05091 1990 35 Miller +WOB 05093 1990 56 Mississippi +WOB 05095 1990 38 Monroe +WOB 05097 1990 50 Montgomery +WOB 05099 1990 2 Nevada +WOB 05101 1990 1 Newton +WOB 05103 1990 19 Ouachita +WOB 05105 1990 25 Perry +WOB 05107 1990 90 Phillips +WOB 05109 1990 28 Pike +WOB 05111 1990 15 Poinsett +WOB 05113 1990 8 Polk +WOB 05115 1990 49 Pope +WOB 05117 1990 77 Prairie +WOB 05119 1990 96 Pulaski +WOB 05121 1990 11 Randolph +WOB 05123 1990 22 St. Francis +WOB 05125 1990 15 Saline +WOB 05127 1990 11 Scott +WOB 05129 1990 4 Searcy +WOB 05131 1990 25 Sebastian +WOB 05133 1990 45 Sevier +WOB 05135 1990 5 Sharp +WOB 05137 1990 7 Stone +WOB 05139 1990 42 Union +WOB 05141 1990 33 Van Buren +WOB 05143 1990 15 Washington +WOB 05145 1990 21 White +WOB 05147 1990 19 Woodruff +WOB 05149 1990 54 Yell +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_AIRTR.ALO new file mode 100644 index 0000000..76b8634 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_AIRTR.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 04000 2002 2399.051 AZ +AIR 04001 2002 0.240 Apache +AIR 04003 2002 1.850 Cochise +AIR 04005 2002 11.380 Coconino +AIR 04007 2002 0.000 Gila +AIR 04009 2002 0.000 Graham +AIR 04011 2002 0.000 Greenlee +AIR 04012 2002 0.170 La Paz +AIR 04013 2002 2027.750 Maricopa +AIR 04015 2002 43.320 Mohave +AIR 04017 2002 4.840 Navajo +AIR 04019 2002 237.670 Pima +AIR 04021 2002 0.109 Pinal +AIR 04023 2002 0.270 Santa Cruz +AIR 04025 2002 1.790 Yavapai +AIR 04027 2002 69.663 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_COAL.ALO new file mode 100644 index 0000000..3745de6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_COAL.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 04000 2002 0 AZ +MIN 04001 2002 0 Apache +MIN 04003 2002 0 Cochise +MIN 04005 2002 0 Coconino +MIN 04007 2002 0 Gila +MIN 04009 2002 0 Graham +MIN 04011 2002 0 Greenlee +MIN 04012 2002 0 La Paz +MIN 04013 2002 0 Maricopa +MIN 04015 2002 0 Mohave +MIN 04017 2002 0 Navajo +MIN 04019 2002 0 Pima +MIN 04021 2002 0 Pinal +MIN 04023 2002 0 Santa Cruz +MIN 04025 2002 0 Yavapai +MIN 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_CONST.ALO new file mode 100644 index 0000000..2901ea1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_CONST.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 04000 2003 17593001 AZ +CON 04001 2003 45212 Apache +CON 04003 2003 180395 Cochise +CON 04005 2003 306253 Coconino +CON 04007 2003 137177 Gila +CON 04009 2003 28535 Graham +CON 04011 2003 4806 Greenlee +CON 04012 2003 23711 La Paz +CON 04013 2003 12003187 Maricopa +CON 04015 2003 513119 Mohave +CON 04017 2003 186496 Navajo +CON 04019 2003 2035909 Pima +CON 04021 2003 1016113 Pinal +CON 04023 2003 110482 Santa Cruz +CON 04025 2003 590515 Yavapai +CON 04027 2003 411091 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_FARMS.ALO new file mode 100644 index 0000000..afbc703 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_FARMS.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 04000 2002 887966 AZ +FRM 04001 2002 5272 Apache +FRM 04003 2002 26863 Cochise +FRM 04005 2002 1033 Coconino +FRM 04007 2002 627 Gila +FRM 04009 2002 32298 Graham +FRM 04011 2002 2967 Greenlee +FRM 04012 2002 90757 La Paz +FRM 04013 2002 232451 Maricopa +FRM 04015 2002 26863 Mohave +FRM 04017 2002 26863 Navajo +FRM 04019 2002 32101 Pima +FRM 04021 2002 207635 Pinal +FRM 04023 2002 313 Santa Cruz +FRM 04025 2002 4886 Yavapai +FRM 04027 2002 197038 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_GOLF.ALO new file mode 100644 index 0000000..d48f15d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_GOLF.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 04000 2002 196 AZ +GC 04001 2002 1 Apache +GC 04003 2002 6 Cochise +GC 04005 2002 7 Coconino +GC 04007 2002 3 Gila +GC 04009 2002 0 Graham +GC 04011 2002 1 Greenlee +GC 04012 2002 0 La Paz +GC 04013 2002 123 Maricopa +GC 04015 2002 6 Mohave +GC 04017 2002 5 Navajo +GC 04019 2002 19 Pima +GC 04021 2002 14 Pinal +GC 04023 2002 2 Santa Cruz +GC 04025 2002 5 Yavapai +GC 04027 2002 4 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOLSL.ALO new file mode 100644 index 0000000..0b5073c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOLSL.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 04000 2002 6636 AZ +COM 04001 2002 10 Apache +COM 04003 2002 68 Cochise +COM 04005 2002 121 Coconino +COM 04007 2002 30 Gila +COM 04009 2002 18 Graham +COM 04011 2002 7 Greenlee +COM 04012 2002 10 La Paz +COM 04013 2002 4766 Maricopa +COM 04015 2002 115 Mohave +COM 04017 2002 54 Navajo +COM 04019 2002 844 Pima +COM 04021 2002 90 Pinal +COM 04023 2002 195 Santa Cruz +COM 04025 2002 185 Yavapai +COM 04027 2002 123 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOUSE.ALO new file mode 100644 index 0000000..a557625 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_HOUSE.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 04000 2002 2328720 AZ +HOU 04001 2002 31800 Apache +HOU 04003 2002 52714 Cochise +HOU 04005 2002 55162 Coconino +HOU 04007 2002 28867 Gila +HOU 04009 2002 11641 Graham +HOU 04011 2002 3767 Greenlee +HOU 04012 2002 15353 La Paz +HOU 04013 2002 1344487 Maricopa +HOU 04015 2002 85041 Mohave +HOU 04017 2002 48813 Navajo +HOU 04019 2002 384242 Pima +HOU 04021 2002 87995 Pinal +HOU 04023 2002 13994 Santa Cruz +HOU 04025 2002 87276 Yavapai +HOU 04027 2002 77568 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_LOGGN.ALO new file mode 100644 index 0000000..6bfc5ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_LOGGN.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 04000 2002 17362391 AZ +LOG 04001 2002 3668772 Apache +LOG 04003 2002 0 Cochise +LOG 04005 2002 4709524 Coconino +LOG 04007 2002 1205736 Gila +LOG 04009 2002 0 Graham +LOG 04011 2002 521660 Greenlee +LOG 04012 2002 0 La Paz +LOG 04013 2002 0 Maricopa +LOG 04015 2002 0 Mohave +LOG 04017 2002 7253504 Navajo +LOG 04019 2002 0 Pima +LOG 04021 2002 0 Pinal +LOG 04023 2002 0 Santa Cruz +LOG 04025 2002 3196 Yavapai +LOG 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_LSCAP.ALO new file mode 100644 index 0000000..dfbeb9a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_LSCAP.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 04000 2002 12713 AZ +LSC 04001 2002 9 Apache +LSC 04003 2002 55 Cochise +LSC 04005 2002 93 Coconino +LSC 04007 2002 9 Gila +LSC 04009 2002 9 Graham +LSC 04011 2002 0 Greenlee +LSC 04012 2002 10 La Paz +LSC 04013 2002 9784 Maricopa +LSC 04015 2002 164 Mohave +LSC 04017 2002 10 Navajo +LSC 04019 2002 1870 Pima +LSC 04021 2002 235 Pinal +LSC 04023 2002 10 Santa Cruz +LSC 04025 2002 285 Yavapai +LSC 04027 2002 170 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_MNFG.ALO new file mode 100644 index 0000000..9fc4f4e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_MNFG.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 04000 2002 330859 AZ +MFG 04001 2002 272 Apache +MFG 04003 2002 1131 Cochise +MFG 04005 2002 4946 Coconino +MFG 04007 2002 2982 Gila +MFG 04009 2002 514 Graham +MFG 04011 2002 23 Greenlee +MFG 04012 2002 562 La Paz +MFG 04013 2002 235362 Maricopa +MFG 04015 2002 6336 Mohave +MFG 04017 2002 1393 Navajo +MFG 04019 2002 59941 Pima +MFG 04021 2002 5369 Pinal +MFG 04023 2002 1159 Santa Cruz +MFG 04025 2002 6612 Yavapai +MFG 04027 2002 4257 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_OIL.ALO new file mode 100644 index 0000000..7f6e786 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_OIL.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 04000 2002 394 AZ +OIL 04001 2002 0 Apache +OIL 04003 2002 115 Cochise +OIL 04005 2002 8 Coconino +OIL 04007 2002 0 Gila +OIL 04009 2002 0 Graham +OIL 04011 2002 0 Greenlee +OIL 04012 2002 0 La Paz +OIL 04013 2002 263 Maricopa +OIL 04015 2002 0 Mohave +OIL 04017 2002 0 Navajo +OIL 04019 2002 8 Pima +OIL 04021 2002 0 Pinal +OIL 04023 2002 0 Santa Cruz +OIL 04025 2002 0 Yavapai +OIL 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_POP.ALO new file mode 100644 index 0000000..8b1513f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_POP.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 04000 2002 5439091 AZ +POP 04001 2002 67511 Apache +POP 04003 2002 120044 Cochise +POP 04005 2002 119956 Coconino +POP 04007 2002 51539 Gila +POP 04009 2002 33233 Graham +POP 04011 2002 7856 Greenlee +POP 04012 2002 19513 La Paz +POP 04013 2002 3293606 Maricopa +POP 04015 2002 165788 Mohave +POP 04017 2002 102106 Navajo +POP 04019 2002 877529 Pima +POP 04021 2002 194942 Pinal +POP 04023 2002 39615 Santa Cruz +POP 04025 2002 179138 Yavapai +POP 04027 2002 166715 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_RAIL.ALO new file mode 100644 index 0000000..b3d4cb5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_RAIL.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 04000 2002 21087.280 AZ +RR 04001 2002 1896.060 Apache +RR 04003 2002 1305.700 Cochise +RR 04005 2002 2085.590 Coconino +RR 04007 2002 0.000 Gila +RR 04009 2002 0.000 Graham +RR 04011 2002 12.580 Greenlee +RR 04012 2002 289.340 La Paz +RR 04013 2002 2738.260 Maricopa +RR 04015 2002 2334.840 Mohave +RR 04017 2002 2721.850 Navajo +RR 04019 2002 1097.040 Pima +RR 04021 2002 1844.730 Pinal +RR 04023 2002 17.460 Santa Cruz +RR 04025 2002 2475.560 Yavapai +RR 04027 2002 2268.270 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_RVPRK.ALO new file mode 100644 index 0000000..ab40460 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_RVPRK.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 04000 2002 246 AZ +RVP 04001 2002 2 Apache +RVP 04003 2002 14 Cochise +RVP 04005 2002 19 Coconino +RVP 04007 2002 8 Gila +RVP 04009 2002 3 Graham +RVP 04011 2002 0 Greenlee +RVP 04012 2002 16 La Paz +RVP 04013 2002 46 Maricopa +RVP 04015 2002 20 Mohave +RVP 04017 2002 13 Navajo +RVP 04019 2002 22 Pima +RVP 04021 2002 24 Pinal +RVP 04023 2002 3 Santa Cruz +RVP 04025 2002 26 Yavapai +RVP 04027 2002 30 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBC.ALO new file mode 100644 index 0000000..66b75cc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBC.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 04000 2002 409 AZ +SBC 04001 2002 12 Apache +SBC 04003 2002 0 Cochise +SBC 04005 2002 93 Coconino +SBC 04007 2002 0 Gila +SBC 04009 2002 0 Graham +SBC 04011 2002 0 Greenlee +SBC 04012 2002 0 La Paz +SBC 04013 2002 0 Maricopa +SBC 04015 2002 0 Mohave +SBC 04017 2002 19 Navajo +SBC 04019 2002 0 Pima +SBC 04021 2002 0 Pinal +SBC 04023 2002 0 Santa Cruz +SBC 04025 2002 285 Yavapai +SBC 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBR.ALO new file mode 100644 index 0000000..c08860d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SBR.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 04000 2002 223051 AZ +SBR 04001 2002 31800 Apache +SBR 04003 2002 0 Cochise +SBR 04005 2002 55162 Coconino +SBR 04007 2002 0 Gila +SBR 04009 2002 0 Graham +SBR 04011 2002 0 Greenlee +SBR 04012 2002 0 La Paz +SBR 04013 2002 0 Maricopa +SBR 04015 2002 0 Mohave +SBR 04017 2002 48813 Navajo +SBR 04019 2002 0 Pima +SBR 04021 2002 0 Pinal +SBR 04023 2002 0 Santa Cruz +SBR 04025 2002 87276 Yavapai +SBR 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SNOWM.ALO new file mode 100644 index 0000000..5f560f1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_SNOWM.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 04000 2002 27 AZ +SNM 04001 2002 0 Apache +SNM 04003 2002 0 Cochise +SNM 04005 2002 8 Coconino +SNM 04007 2002 19 Gila +SNM 04009 2002 0 Graham +SNM 04011 2002 0 Greenlee +SNM 04012 2002 0 La Paz +SNM 04013 2002 0 Maricopa +SNM 04015 2002 0 Mohave +SNM 04017 2002 0 Navajo +SNM 04019 2002 0 Pima +SNM 04021 2002 0 Pinal +SNM 04023 2002 0 Santa Cruz +SNM 04025 2002 0 Yavapai +SNM 04027 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_WIB.ALO new file mode 100644 index 0000000..d9d5838 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_WIB.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 04000 1990 943 AZ +WIB 04001 1990 35 Apache +WIB 04003 1990 128 Cochise +WIB 04005 1990 112 Coconino +WIB 04007 1990 73 Gila +WIB 04009 1990 31 Graham +WIB 04011 1990 4 Greenlee +WIB 04012 1990 36 La Paz +WIB 04013 1990 54 Maricopa +WIB 04015 1990 409 Mohave +WIB 04017 1990 17 Navajo +WIB 04019 1990 6 Pima +WIB 04021 1990 12 Pinal +WIB 04023 1990 1 Santa Cruz +WIB 04025 1990 12 Yavapai +WIB 04027 1990 13 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/AZ_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/AZ_WOB.ALO new file mode 100644 index 0000000..4ff661e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/AZ_WOB.ALO @@ -0,0 +1,40 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 04000 1990 943 AZ +WOB 04001 1990 35 Apache +WOB 04003 1990 128 Cochise +WOB 04005 1990 112 Coconino +WOB 04007 1990 73 Gila +WOB 04009 1990 31 Graham +WOB 04011 1990 4 Greenlee +WOB 04012 1990 36 La Paz +WOB 04013 1990 54 Maricopa +WOB 04015 1990 409 Mohave +WOB 04017 1990 17 Navajo +WOB 04019 1990 6 Pima +WOB 04021 1990 12 Pinal +WOB 04023 1990 1 Santa Cruz +WOB 04025 1990 12 Yavapai +WOB 04027 1990 13 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_AIRTR.ALO new file mode 100644 index 0000000..9211442 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_AIRTR.ALO @@ -0,0 +1,85 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 06000 2002 9865.522 CA +AIR 06001 2002 790.520 Alameda +AIR 06003 2002 0.000 Alpine +AIR 06005 2002 0.108 Amador +AIR 06007 2002 0.699 Butte +AIR 06009 2002 0.000 Calaveras +AIR 06011 2002 0.184 Colusa +AIR 06013 2002 1.007 Contra Costa +AIR 06015 2002 4.752 Del Norte +AIR 06017 2002 5.240 El Dorado +AIR 06019 2002 70.060 Fresno +AIR 06021 2002 0.220 Glenn +AIR 06023 2002 1.250 Humboldt +AIR 06025 2002 21.340 Imperial +AIR 06027 2002 0.260 Inyo +AIR 06029 2002 5.600 Kern +AIR 06031 2002 0.004 Kings +AIR 06033 2002 0.420 Lake +AIR 06035 2002 0.000 Lassen +AIR 06037 2002 4098.410 Los Angeles +AIR 06039 2002 0.114 Madera +AIR 06041 2002 0.000 Marin +AIR 06043 2002 0.000 Mariposa +AIR 06045 2002 0.350 Mendocino +AIR 06047 2002 6.010 Merced +AIR 06049 2002 0.004 Modoc +AIR 06051 2002 0.000 Mono +AIR 06053 2002 9.370 Monterey +AIR 06055 2002 0.696 Napa +AIR 06057 2002 0.474 Nevada +AIR 06059 2002 401.807 Orange +AIR 06061 2002 0.000 Placer +AIR 06063 2002 0.000 Plumas +AIR 06065 2002 51.110 Riverside +AIR 06067 2002 445.580 Sacramento +AIR 06069 2002 0.000 San Benito +AIR 06071 2002 468.470 San Bernardino +AIR 06073 2002 759.810 San Diego +AIR 06075 2002 0.000 San Francisco +AIR 06077 2002 1.190 San Joaquin +AIR 06079 2002 1.330 San Luis Obispo +AIR 06081 2002 1826.500 San Mateo +AIR 06083 2002 53.070 Santa Barbara +AIR 06085 2002 831.229 Santa Clara +AIR 06087 2002 0.670 Santa Cruz +AIR 06089 2002 1.040 Shasta +AIR 06091 2002 0.000 Sierra +AIR 06093 2002 0.054 Siskiyou +AIR 06095 2002 0.170 Solano +AIR 06097 2002 1.130 Sonoma +AIR 06099 2002 1.000 Stanislaus +AIR 06101 2002 0.000 Sutter +AIR 06103 2002 0.167 Tehama +AIR 06105 2002 0.000 Trinity +AIR 06107 2002 0.910 Tulare +AIR 06109 2002 0.420 Tuolumne +AIR 06111 2002 1.960 Ventura +AIR 06113 2002 0.412 Yolo +AIR 06115 2002 0.400 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_COAL.ALO new file mode 100644 index 0000000..096868c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_COAL.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 06000 2002 0 CA +MIN 06001 2002 0 Alameda +MIN 06003 2002 0 Alpine +MIN 06005 2002 0 Amador +MIN 06007 2002 0 Butte +MIN 06009 2002 0 Calaveras +MIN 06011 2002 0 Colusa +MIN 06013 2002 0 Contra Costa +MIN 06015 2002 0 Del Norte +MIN 06017 2002 0 El Dorado +MIN 06019 2002 0 Fresno +MIN 06021 2002 0 Glenn +MIN 06023 2002 0 Humboldt +MIN 06025 2002 0 Imperial +MIN 06027 2002 0 Inyo +MIN 06029 2002 0 Kern +MIN 06031 2002 0 Kings +MIN 06033 2002 0 Lake +MIN 06035 2002 0 Lassen +MIN 06037 2002 0 Los Angeles +MIN 06039 2002 0 Madera +MIN 06041 2002 0 Marin +MIN 06043 2002 0 Mariposa +MIN 06045 2002 0 Mendocino +MIN 06047 2002 0 Merced +MIN 06049 2002 0 Modoc +MIN 06051 2002 0 Mono +MIN 06053 2002 0 Monterey +MIN 06055 2002 0 Napa +MIN 06057 2002 0 Nevada +MIN 06059 2002 0 Orange +MIN 06061 2002 0 Placer +MIN 06063 2002 0 Plumas +MIN 06065 2002 0 Riverside +MIN 06067 2002 0 Sacramento +MIN 06069 2002 0 San Benito +MIN 06071 2002 0 San Bernardino +MIN 06073 2002 0 San Diego +MIN 06075 2002 0 San Francisco +MIN 06077 2002 0 San Joaquin +MIN 06079 2002 0 San Luis Obispo +MIN 06081 2002 0 San Mateo +MIN 06083 2002 0 Santa Barbara +MIN 06085 2002 0 Santa Clara +MIN 06087 2002 0 Santa Cruz +MIN 06089 2002 0 Shasta +MIN 06091 2002 0 Sierra +MIN 06093 2002 0 Siskiyou +MIN 06095 2002 0 Solano +MIN 06097 2002 0 Sonoma +MIN 06099 2002 0 Stanislaus +MIN 06101 2002 0 Sutter +MIN 06103 2002 0 Tehama +MIN 06105 2002 0 Trinity +MIN 06107 2002 0 Tulare +MIN 06109 2002 0 Tuolumne +MIN 06111 2002 0 Ventura +MIN 06113 2002 0 Yolo +MIN 06115 2002 0 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_CONST.ALO new file mode 100644 index 0000000..236c56e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_CONST.ALO @@ -0,0 +1,85 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 06000 2003 57853378 CA +CON 06001 2003 1589801 Alameda +CON 06003 2003 9417 Alpine +CON 06005 2003 77114 Amador +CON 06007 2003 294537 Butte +CON 06009 2003 200965 Calaveras +CON 06011 2003 18806 Colusa +CON 06013 2003 2006751 Contra Costa +CON 06015 2003 28790 Del Norte +CON 06017 2003 551031 El Dorado +CON 06019 2003 1219857 Fresno +CON 06021 2003 22461 Glenn +CON 06023 2003 113162 Humboldt +CON 06025 2003 299001 Imperial +CON 06027 2003 47346 Inyo +CON 06029 2003 1199337 Kern +CON 06031 2003 176163 Kings +CON 06033 2003 111493 Lake +CON 06035 2003 72565 Lassen +CON 06037 2003 8657895 Los Angeles +CON 06039 2003 232086 Madera +CON 06041 2003 289608 Marin +CON 06043 2003 17721 Mariposa +CON 06045 2003 54953 Mendocino +CON 06047 2003 664038 Merced +CON 06049 2003 5655 Modoc +CON 06051 2003 64219 Mono +CON 06053 2003 598289 Monterey +CON 06055 2003 333642 Napa +CON 06057 2003 300064 Nevada +CON 06059 2003 3001760 Orange +CON 06061 2003 1549726 Placer +CON 06063 2003 49383 Plumas +CON 06065 2003 6735290 Riverside +CON 06067 2003 3302952 Sacramento +CON 06069 2003 30914 San Benito +CON 06071 2003 3663693 San Bernardino +CON 06073 2003 6113723 San Diego +CON 06075 2003 1453784 San Francisco +CON 06077 2003 2095421 San Joaquin +CON 06079 2003 670516 San Luis Obispo +CON 06081 2003 717069 San Mateo +CON 06083 2003 726323 Santa Barbara +CON 06085 2003 2506332 Santa Clara +CON 06087 2003 297279 Santa Cruz +CON 06089 2003 280991 Shasta +CON 06091 2003 3628 Sierra +CON 06093 2003 54388 Siskiyou +CON 06095 2003 989980 Solano +CON 06097 2003 570963 Sonoma +CON 06099 2003 1060227 Stanislaus +CON 06101 2003 220343 Sutter +CON 06103 2003 79142 Tehama +CON 06105 2003 29140 Trinity +CON 06107 2003 477021 Tulare +CON 06109 2003 74465 Tuolumne +CON 06111 2003 1278388 Ventura +CON 06113 2003 415601 Yolo +CON 06115 2003 148171 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_FARMS.ALO new file mode 100644 index 0000000..e4ad54c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_FARMS.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 06000 2002 8466321 CA +FRM 06001 2002 7926 Alameda +FRM 06003 2002 429 Alpine +FRM 06005 2002 6401 Amador +FRM 06007 2002 217912 Butte +FRM 06009 2002 3205 Calaveras +FRM 06011 2002 296550 Colusa +FRM 06013 2002 26018 Contra Costa +FRM 06015 2002 3158 Del Norte +FRM 06017 2002 6258 El Dorado +FRM 06019 2002 1078900 Fresno +FRM 06021 2002 227372 Glenn +FRM 06023 2002 15281 Humboldt +FRM 06025 2002 475294 Imperial +FRM 06027 2002 3835 Inyo +FRM 06029 2002 798722 Kern +FRM 06031 2002 414608 Kings +FRM 06033 2002 22300 Lake +FRM 06035 2002 43089 Lassen +FRM 06037 2002 24033 Los Angeles +FRM 06039 2002 314715 Madera +FRM 06041 2002 5706 Marin +FRM 06043 2002 636 Mariposa +FRM 06045 2002 30892 Mendocino +FRM 06047 2002 479156 Merced +FRM 06049 2002 107969 Modoc +FRM 06051 2002 11611 Mono +FRM 06053 2002 260072 Monterey +FRM 06055 2002 52838 Napa +FRM 06057 2002 3326 Nevada +FRM 06059 2002 10593 Orange +FRM 06061 2002 27049 Placer +FRM 06063 2002 9255 Plumas +FRM 06065 2002 195372 Riverside +FRM 06067 2002 123999 Sacramento +FRM 06069 2002 34780 San Benito +FRM 06071 2002 37751 San Bernardino +FRM 06073 2002 72683 San Diego +FRM 06075 2002 429 San Francisco +FRM 06077 2002 517267 San Joaquin +FRM 06079 2002 108465 San Luis Obispo +FRM 06081 2002 6273 San Mateo +FRM 06083 2002 105137 Santa Barbara +FRM 06085 2002 22764 Santa Clara +FRM 06087 2002 24555 Santa Cruz +FRM 06089 2002 20492 Shasta +FRM 06091 2002 2910 Sierra +FRM 06093 2002 118489 Siskiyou +FRM 06095 2002 131408 Solano +FRM 06097 2002 91537 Sonoma +FRM 06099 2002 347750 Stanislaus +FRM 06101 2002 267891 Sutter +FRM 06103 2002 69409 Tehama +FRM 06105 2002 725 Trinity +FRM 06107 2002 682460 Tulare +FRM 06109 2002 898 Tuolumne +FRM 06111 2002 103262 Ventura +FRM 06113 2002 315336 Yolo +FRM 06115 2002 79171 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_GOLF.ALO new file mode 100644 index 0000000..2d618a5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_GOLF.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 06000 2002 689 CA +GC 06001 2002 15 Alameda +GC 06003 2002 0 Alpine +GC 06005 2002 0 Amador +GC 06007 2002 9 Butte +GC 06009 2002 5 Calaveras +GC 06011 2002 2 Colusa +GC 06013 2002 26 Contra Costa +GC 06015 2002 2 Del Norte +GC 06017 2002 11 El Dorado +GC 06019 2002 13 Fresno +GC 06021 2002 1 Glenn +GC 06023 2002 4 Humboldt +GC 06025 2002 1 Imperial +GC 06027 2002 3 Inyo +GC 06029 2002 14 Kern +GC 06031 2002 3 Kings +GC 06033 2002 3 Lake +GC 06035 2002 1 Lassen +GC 06037 2002 101 Los Angeles +GC 06039 2002 1 Madera +GC 06041 2002 8 Marin +GC 06043 2002 0 Mariposa +GC 06045 2002 2 Mendocino +GC 06047 2002 5 Merced +GC 06049 2002 0 Modoc +GC 06051 2002 1 Mono +GC 06053 2002 11 Monterey +GC 06055 2002 7 Napa +GC 06057 2002 8 Nevada +GC 06059 2002 50 Orange +GC 06061 2002 14 Placer +GC 06063 2002 4 Plumas +GC 06065 2002 88 Riverside +GC 06067 2002 22 Sacramento +GC 06069 2002 3 San Benito +GC 06071 2002 20 San Bernardino +GC 06073 2002 48 San Diego +GC 06075 2002 8 San Francisco +GC 06077 2002 15 San Joaquin +GC 06079 2002 9 San Luis Obispo +GC 06081 2002 10 San Mateo +GC 06083 2002 18 Santa Barbara +GC 06085 2002 26 Santa Clara +GC 06087 2002 7 Santa Cruz +GC 06089 2002 9 Shasta +GC 06091 2002 0 Sierra +GC 06093 2002 4 Siskiyou +GC 06095 2002 6 Solano +GC 06097 2002 17 Sonoma +GC 06099 2002 6 Stanislaus +GC 06101 2002 3 Sutter +GC 06103 2002 1 Tehama +GC 06105 2002 1 Trinity +GC 06107 2002 9 Tulare +GC 06109 2002 3 Tuolumne +GC 06111 2002 23 Ventura +GC 06113 2002 6 Yolo +GC 06115 2002 2 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_HOLSL.ALO new file mode 100644 index 0000000..fa9ab9a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_HOLSL.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 06000 2002 58700 CA +COM 06001 2002 3025 Alameda +COM 06003 2002 0 Alpine +COM 06005 2002 28 Amador +COM 06007 2002 192 Butte +COM 06009 2002 24 Calaveras +COM 06011 2002 30 Colusa +COM 06013 2002 1096 Contra Costa +COM 06015 2002 8 Del Norte +COM 06017 2002 136 El Dorado +COM 06019 2002 936 Fresno +COM 06021 2002 36 Glenn +COM 06023 2002 109 Humboldt +COM 06025 2002 204 Imperial +COM 06027 2002 21 Inyo +COM 06029 2002 630 Kern +COM 06031 2002 59 Kings +COM 06033 2002 34 Lake +COM 06035 2002 7 Lassen +COM 06037 2002 22422 Los Angeles +COM 06039 2002 89 Madera +COM 06041 2002 512 Marin +COM 06043 2002 12 Mariposa +COM 06045 2002 93 Mendocino +COM 06047 2002 110 Merced +COM 06049 2002 12 Modoc +COM 06051 2002 4 Mono +COM 06053 2002 470 Monterey +COM 06055 2002 187 Napa +COM 06057 2002 105 Nevada +COM 06059 2002 7246 Orange +COM 06061 2002 367 Placer +COM 06063 2002 11 Plumas +COM 06065 2002 1521 Riverside +COM 06067 2002 1340 Sacramento +COM 06069 2002 45 San Benito +COM 06071 2002 2052 San Bernardino +COM 06073 2002 4363 San Diego +COM 06075 2002 1474 San Francisco +COM 06077 2002 605 San Joaquin +COM 06079 2002 275 San Luis Obispo +COM 06081 2002 1336 San Mateo +COM 06083 2002 491 Santa Barbara +COM 06085 2002 3091 Santa Clara +COM 06087 2002 345 Santa Cruz +COM 06089 2002 219 Shasta +COM 06091 2002 0 Sierra +COM 06093 2002 38 Siskiyou +COM 06095 2002 261 Solano +COM 06097 2002 617 Sonoma +COM 06099 2002 432 Stanislaus +COM 06101 2002 82 Sutter +COM 06103 2002 40 Tehama +COM 06105 2002 7 Trinity +COM 06107 2002 362 Tulare +COM 06109 2002 48 Tuolumne +COM 06111 2002 1128 Ventura +COM 06113 2002 276 Yolo +COM 06115 2002 37 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_HOUSE.ALO new file mode 100644 index 0000000..4ff6291 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_HOUSE.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 06000 2002 12510241 CA +HOU 06001 2002 546795 Alameda +HOU 06003 2002 1573 Alpine +HOU 06005 2002 15490 Amador +HOU 06007 2002 87851 Butte +HOU 06009 2002 23835 Calaveras +HOU 06011 2002 6820 Colusa +HOU 06013 2002 365659 Contra Costa +HOU 06015 2002 10531 Del Norte +HOU 06017 2002 74797 El Dorado +HOU 06019 2002 277811 Fresno +HOU 06021 2002 10076 Glenn +HOU 06023 2002 56916 Humboldt +HOU 06025 2002 45804 Imperial +HOU 06027 2002 9060 Inyo +HOU 06029 2002 238365 Kern +HOU 06031 2002 37684 Kings +HOU 06033 2002 32705 Lake +HOU 06035 2002 12187 Lassen +HOU 06037 2002 3300175 Los Angeles +HOU 06039 2002 41859 Madera +HOU 06041 2002 105960 Marin +HOU 06043 2002 8991 Mariposa +HOU 06045 2002 37473 Mendocino +HOU 06047 2002 71006 Merced +HOU 06049 2002 4785 Modoc +HOU 06051 2002 12196 Mono +HOU 06053 2002 134531 Monterey +HOU 06055 2002 49969 Napa +HOU 06057 2002 45815 Nevada +HOU 06059 2002 992917 Orange +HOU 06061 2002 120589 Placer +HOU 06063 2002 13682 Plumas +HOU 06065 2002 620653 Riverside +HOU 06067 2002 492238 Sacramento +HOU 06069 2002 17422 San Benito +HOU 06071 2002 616493 San Bernardino +HOU 06073 2002 1072792 San Diego +HOU 06075 2002 349506 San Francisco +HOU 06077 2002 199554 San Joaquin +HOU 06079 2002 105976 San Luis Obispo +HOU 06081 2002 264138 San Mateo +HOU 06083 2002 145233 Santa Barbara +HOU 06085 2002 592494 Santa Clara +HOU 06087 2002 99744 Santa Cruz +HOU 06089 2002 70913 Shasta +HOU 06091 2002 2209 Sierra +HOU 06093 2002 22214 Siskiyou +HOU 06095 2002 139522 Solano +HOU 06097 2002 188180 Sonoma +HOU 06099 2002 157375 Stanislaus +HOU 06101 2002 28991 Sutter +HOU 06103 2002 23964 Tehama +HOU 06105 2002 8034 Trinity +HOU 06107 2002 123122 Tulare +HOU 06109 2002 28722 Tuolumne +HOU 06111 2002 259662 Ventura +HOU 06113 2002 64228 Yolo +HOU 06115 2002 22955 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_LOGGN.ALO new file mode 100644 index 0000000..1e2b5b7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_LOGGN.ALO @@ -0,0 +1,85 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 06000 2002 831902932 CA +LOG 06001 2002 171696659 Alameda +LOG 06003 2002 0 Alpine +LOG 06005 2002 1652648 Amador +LOG 06007 2002 8143616 Butte +LOG 06009 2002 16659427 Calaveras +LOG 06011 2002 0 Colusa +LOG 06013 2002 0 Contra Costa +LOG 06015 2002 17788790 Del Norte +LOG 06017 2002 28167347 El Dorado +LOG 06019 2002 6565739 Fresno +LOG 06021 2002 1198066 Glenn +LOG 06023 2002 184985393 Humboldt +LOG 06025 2002 0 Imperial +LOG 06027 2002 0 Inyo +LOG 06029 2002 1046710 Kern +LOG 06031 2002 0 Kings +LOG 06033 2002 965978 Lake +LOG 06035 2002 45278436 Lassen +LOG 06037 2002 0 Los Angeles +LOG 06039 2002 9391003 Madera +LOG 06041 2002 0 Marin +LOG 06043 2002 1897573 Mariposa +LOG 06045 2002 73033132 Mendocino +LOG 06047 2002 0 Merced +LOG 06049 2002 23536755 Modoc +LOG 06051 2002 0 Mono +LOG 06053 2002 0 Monterey +LOG 06055 2002 0 Napa +LOG 06057 2002 28305314 Nevada +LOG 06059 2002 0 Orange +LOG 06061 2002 6487902 Placer +LOG 06063 2002 35922584 Plumas +LOG 06065 2002 0 Riverside +LOG 06067 2002 0 Sacramento +LOG 06069 2002 0 San Benito +LOG 06071 2002 0 San Bernardino +LOG 06073 2002 0 San Diego +LOG 06075 2002 0 San Francisco +LOG 06077 2002 0 San Joaquin +LOG 06079 2002 0 San Luis Obispo +LOG 06081 2002 1943182 San Mateo +LOG 06083 2002 0 Santa Barbara +LOG 06085 2002 903080 Santa Clara +LOG 06087 2002 6474621 Santa Cruz +LOG 06089 2002 44424499 Shasta +LOG 06091 2002 8675691 Sierra +LOG 06093 2002 32467258 Siskiyou +LOG 06095 2002 0 Solano +LOG 06097 2002 5449732 Sonoma +LOG 06099 2002 2521111 Stanislaus +LOG 06101 2002 0 Sutter +LOG 06103 2002 11549330 Tehama +LOG 06105 2002 30192660 Trinity +LOG 06107 2002 7223849 Tulare +LOG 06109 2002 16870506 Tuolumne +LOG 06111 2002 0 Ventura +LOG 06113 2002 0 Yolo +LOG 06115 2002 484341 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_LSCAP.ALO new file mode 100644 index 0000000..ab0eb3d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_LSCAP.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 06000 2002 71082 CA +LSC 06001 2002 3876 Alameda +LSC 06003 2002 6 Alpine +LSC 06005 2002 8 Amador +LSC 06007 2002 340 Butte +LSC 06009 2002 39 Calaveras +LSC 06011 2002 6 Colusa +LSC 06013 2002 2127 Contra Costa +LSC 06015 2002 6 Del Norte +LSC 06017 2002 190 El Dorado +LSC 06019 2002 1361 Fresno +LSC 06021 2002 6 Glenn +LSC 06023 2002 49 Humboldt +LSC 06025 2002 69 Imperial +LSC 06027 2002 6 Inyo +LSC 06029 2002 530 Kern +LSC 06031 2002 62 Kings +LSC 06033 2002 39 Lake +LSC 06035 2002 6 Lassen +LSC 06037 2002 10663 Los Angeles +LSC 06039 2002 83 Madera +LSC 06041 2002 1227 Marin +LSC 06043 2002 6 Mariposa +LSC 06045 2002 108 Mendocino +LSC 06047 2002 128 Merced +LSC 06049 2002 0 Modoc +LSC 06051 2002 6 Mono +LSC 06053 2002 544 Monterey +LSC 06055 2002 297 Napa +LSC 06057 2002 158 Nevada +LSC 06059 2002 12937 Orange +LSC 06061 2002 1005 Placer +LSC 06063 2002 25 Plumas +LSC 06065 2002 6306 Riverside +LSC 06067 2002 2787 Sacramento +LSC 06069 2002 65 San Benito +LSC 06071 2002 2297 San Bernardino +LSC 06073 2002 8760 San Diego +LSC 06075 2002 545 San Francisco +LSC 06077 2002 907 San Joaquin +LSC 06079 2002 747 San Luis Obispo +LSC 06081 2002 1843 San Mateo +LSC 06083 2002 1216 Santa Barbara +LSC 06085 2002 4210 Santa Clara +LSC 06087 2002 537 Santa Cruz +LSC 06089 2002 184 Shasta +LSC 06091 2002 0 Sierra +LSC 06093 2002 6 Siskiyou +LSC 06095 2002 367 Solano +LSC 06097 2002 1112 Sonoma +LSC 06099 2002 500 Stanislaus +LSC 06101 2002 48 Sutter +LSC 06103 2002 73 Tehama +LSC 06105 2002 0 Trinity +LSC 06107 2002 342 Tulare +LSC 06109 2002 28 Tuolumne +LSC 06111 2002 2042 Ventura +LSC 06113 2002 234 Yolo +LSC 06115 2002 13 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_MNFG.ALO new file mode 100644 index 0000000..9a2e12f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_MNFG.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 06000 2002 2873983 CA +MFG 06001 2002 166330 Alameda +MFG 06003 2002 0 Alpine +MFG 06005 2002 1607 Amador +MFG 06007 2002 7300 Butte +MFG 06009 2002 842 Calaveras +MFG 06011 2002 833 Colusa +MFG 06013 2002 38748 Contra Costa +MFG 06015 2002 231 Del Norte +MFG 06017 2002 4328 El Dorado +MFG 06019 2002 39511 Fresno +MFG 06021 2002 1439 Glenn +MFG 06023 2002 7624 Humboldt +MFG 06025 2002 3647 Imperial +MFG 06027 2002 382 Inyo +MFG 06029 2002 20431 Kern +MFG 06031 2002 4250 Kings +MFG 06033 2002 787 Lake +MFG 06035 2002 430 Lassen +MFG 06037 2002 924939 Los Angeles +MFG 06039 2002 7043 Madera +MFG 06041 2002 5327 Marin +MFG 06043 2002 230 Mariposa +MFG 06045 2002 5772 Mendocino +MFG 06047 2002 10380 Merced +MFG 06049 2002 28 Modoc +MFG 06051 2002 114 Mono +MFG 06053 2002 12517 Monterey +MFG 06055 2002 14342 Napa +MFG 06057 2002 4668 Nevada +MFG 06059 2002 356853 Orange +MFG 06061 2002 19562 Placer +MFG 06063 2002 987 Plumas +MFG 06065 2002 103468 Riverside +MFG 06067 2002 49368 Sacramento +MFG 06069 2002 4656 San Benito +MFG 06071 2002 127543 San Bernardino +MFG 06073 2002 221581 San Diego +MFG 06075 2002 28498 San Francisco +MFG 06077 2002 36126 San Joaquin +MFG 06079 2002 12427 San Luis Obispo +MFG 06081 2002 52646 San Mateo +MFG 06083 2002 28278 Santa Barbara +MFG 06085 2002 320306 Santa Clara +MFG 06087 2002 11223 Santa Cruz +MFG 06089 2002 6551 Shasta +MFG 06091 2002 99 Sierra +MFG 06093 2002 1578 Siskiyou +MFG 06095 2002 19714 Solano +MFG 06097 2002 45831 Sonoma +MFG 06099 2002 31264 Stanislaus +MFG 06101 2002 2418 Sutter +MFG 06103 2002 4617 Tehama +MFG 06105 2002 446 Trinity +MFG 06107 2002 18928 Tulare +MFG 06109 2002 2063 Tuolumne +MFG 06111 2002 71271 Ventura +MFG 06113 2002 9472 Yolo +MFG 06115 2002 2129 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_OIL.ALO new file mode 100644 index 0000000..dc39b79 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_OIL.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 06000 2002 5874 CA +OIL 06001 2002 25 Alameda +OIL 06003 2002 0 Alpine +OIL 06005 2002 0 Amador +OIL 06007 2002 0 Butte +OIL 06009 2002 0 Calaveras +OIL 06011 2002 0 Colusa +OIL 06013 2002 25 Contra Costa +OIL 06015 2002 0 Del Norte +OIL 06017 2002 0 El Dorado +OIL 06019 2002 151 Fresno +OIL 06021 2002 17 Glenn +OIL 06023 2002 0 Humboldt +OIL 06025 2002 0 Imperial +OIL 06027 2002 25 Inyo +OIL 06029 2002 2260 Kern +OIL 06031 2002 0 Kings +OIL 06033 2002 0 Lake +OIL 06035 2002 17 Lassen +OIL 06037 2002 736 Los Angeles +OIL 06039 2002 0 Madera +OIL 06041 2002 0 Marin +OIL 06043 2002 0 Mariposa +OIL 06045 2002 0 Mendocino +OIL 06047 2002 0 Merced +OIL 06049 2002 0 Modoc +OIL 06051 2002 25 Mono +OIL 06053 2002 151 Monterey +OIL 06055 2002 42 Napa +OIL 06057 2002 25 Nevada +OIL 06059 2002 332 Orange +OIL 06061 2002 42 Placer +OIL 06063 2002 0 Plumas +OIL 06065 2002 42 Riverside +OIL 06067 2002 52 Sacramento +OIL 06069 2002 0 San Benito +OIL 06071 2002 33 San Bernardino +OIL 06073 2002 39 San Diego +OIL 06075 2002 25 San Francisco +OIL 06077 2002 42 San Joaquin +OIL 06079 2002 168 San Luis Obispo +OIL 06081 2002 42 San Mateo +OIL 06083 2002 666 Santa Barbara +OIL 06085 2002 21 Santa Clara +OIL 06087 2002 17 Santa Cruz +OIL 06089 2002 17 Shasta +OIL 06091 2002 0 Sierra +OIL 06093 2002 0 Siskiyou +OIL 06095 2002 126 Solano +OIL 06097 2002 150 Sonoma +OIL 06099 2002 0 Stanislaus +OIL 06101 2002 167 Sutter +OIL 06103 2002 0 Tehama +OIL 06105 2002 0 Trinity +OIL 06107 2002 42 Tulare +OIL 06109 2002 0 Tuolumne +OIL 06111 2002 229 Ventura +OIL 06113 2002 106 Yolo +OIL 06115 2002 17 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_POP.ALO new file mode 100644 index 0000000..4b5a145 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_POP.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 06000 2002 34988261 CA +POP 06001 2002 1463948 Alameda +POP 06003 2002 1216 Alpine +POP 06005 2002 36816 Amador +POP 06007 2002 208713 Butte +POP 06009 2002 43143 Calaveras +POP 06011 2002 19370 Colusa +POP 06013 2002 988602 Contra Costa +POP 06015 2002 27545 Del Norte +POP 06017 2002 165767 El Dorado +POP 06019 2002 832057 Fresno +POP 06021 2002 26807 Glenn +POP 06023 2002 127424 Humboldt +POP 06025 2002 145702 Imperial +POP 06027 2002 18299 Inyo +POP 06029 2002 693060 Kern +POP 06031 2002 134543 Kings +POP 06033 2002 62274 Lake +POP 06035 2002 33642 Lassen +POP 06037 2002 9763844 Los Angeles +POP 06039 2002 128815 Madera +POP 06041 2002 247191 Marin +POP 06043 2002 17318 Mariposa +POP 06045 2002 87599 Mendocino +POP 06047 2002 224934 Merced +POP 06049 2002 9358 Modoc +POP 06051 2002 12997 Mono +POP 06053 2002 411578 Monterey +POP 06055 2002 129991 Napa +POP 06057 2002 95102 Nevada +POP 06059 2002 2927943 Orange +POP 06061 2002 279011 Placer +POP 06063 2002 21012 Plumas +POP 06065 2002 1694623 Riverside +POP 06067 2002 1301716 Sacramento +POP 06069 2002 55686 San Benito +POP 06071 2002 1808893 San Bernardino +POP 06073 2002 2896098 San Diego +POP 06075 2002 761983 San Francisco +POP 06077 2002 612564 San Joaquin +POP 06079 2002 252055 San Luis Obispo +POP 06081 2002 701271 San Mateo +POP 06083 2002 401481 Santa Barbara +POP 06085 2002 1674598 Santa Clara +POP 06087 2002 253352 Santa Cruz +POP 06089 2002 171923 Shasta +POP 06091 2002 3499 Sierra +POP 06093 2002 44231 Siskiyou +POP 06095 2002 409503 Solano +POP 06097 2002 465902 Sonoma +POP 06099 2002 480233 Stanislaus +POP 06101 2002 82247 Sutter +POP 06103 2002 57652 Tehama +POP 06105 2002 13256 Trinity +POP 06107 2002 381280 Tulare +POP 06109 2002 56044 Tuolumne +POP 06111 2002 780863 Ventura +POP 06113 2002 179327 Yolo +POP 06115 2002 62360 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_RAIL.ALO new file mode 100644 index 0000000..47a82b6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_RAIL.ALO @@ -0,0 +1,85 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 06000 2002 54734.890 CA +RR 06001 2002 477.760 Alameda +RR 06003 2002 0.000 Alpine +RR 06005 2002 17.130 Amador +RR 06007 2002 938.390 Butte +RR 06009 2002 0.000 Calaveras +RR 06011 2002 0.000 Colusa +RR 06013 2002 1044.210 Contra Costa +RR 06015 2002 0.000 Del Norte +RR 06017 2002 0.000 El Dorado +RR 06019 2002 1299.900 Fresno +RR 06021 2002 0.000 Glenn +RR 06023 2002 0.000 Humboldt +RR 06025 2002 2993.420 Imperial +RR 06027 2002 0.000 Inyo +RR 06029 2002 4527.650 Kern +RR 06031 2002 612.720 Kings +RR 06033 2002 0.000 Lake +RR 06035 2002 598.270 Lassen +RR 06037 2002 4089.610 Los Angeles +RR 06039 2002 1071.520 Madera +RR 06041 2002 0.000 Marin +RR 06043 2002 0.000 Mariposa +RR 06045 2002 0.000 Mendocino +RR 06047 2002 1048.680 Merced +RR 06049 2002 335.650 Modoc +RR 06051 2002 0.000 Mono +RR 06053 2002 336.010 Monterey +RR 06055 2002 0.000 Napa +RR 06057 2002 471.710 Nevada +RR 06059 2002 1718.820 Orange +RR 06061 2002 1949.170 Placer +RR 06063 2002 758.350 Plumas +RR 06065 2002 5055.020 Riverside +RR 06067 2002 1558.540 Sacramento +RR 06069 2002 44.170 San Benito +RR 06071 2002 13862.660 San Bernardino +RR 06073 2002 314.450 San Diego +RR 06075 2002 14.520 San Francisco +RR 06077 2002 1905.900 San Joaquin +RR 06079 2002 187.150 San Luis Obispo +RR 06081 2002 81.680 San Mateo +RR 06083 2002 375.890 Santa Barbara +RR 06085 2002 273.740 Santa Clara +RR 06087 2002 64.320 Santa Cruz +RR 06089 2002 787.440 Shasta +RR 06091 2002 30.690 Sierra +RR 06093 2002 1201.640 Siskiyou +RR 06095 2002 451.070 Solano +RR 06097 2002 0.000 Sonoma +RR 06099 2002 1038.300 Stanislaus +RR 06101 2002 550.120 Sutter +RR 06103 2002 683.170 Tehama +RR 06105 2002 0.000 Trinity +RR 06107 2002 970.690 Tulare +RR 06109 2002 0.000 Tuolumne +RR 06111 2002 243.800 Ventura +RR 06113 2002 208.440 Yolo +RR 06115 2002 542.520 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_RVPRK.ALO new file mode 100644 index 0000000..32f7a45 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_RVPRK.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 06000 2002 677 CA +RVP 06001 2002 3 Alameda +RVP 06003 2002 4 Alpine +RVP 06005 2002 5 Amador +RVP 06007 2002 4 Butte +RVP 06009 2002 5 Calaveras +RVP 06011 2002 1 Colusa +RVP 06013 2002 6 Contra Costa +RVP 06015 2002 8 Del Norte +RVP 06017 2002 11 El Dorado +RVP 06019 2002 19 Fresno +RVP 06021 2002 0 Glenn +RVP 06023 2002 12 Humboldt +RVP 06025 2002 13 Imperial +RVP 06027 2002 7 Inyo +RVP 06029 2002 19 Kern +RVP 06031 2002 1 Kings +RVP 06033 2002 5 Lake +RVP 06035 2002 2 Lassen +RVP 06037 2002 54 Los Angeles +RVP 06039 2002 11 Madera +RVP 06041 2002 8 Marin +RVP 06043 2002 1 Mariposa +RVP 06045 2002 24 Mendocino +RVP 06047 2002 2 Merced +RVP 06049 2002 1 Modoc +RVP 06051 2002 21 Mono +RVP 06053 2002 8 Monterey +RVP 06055 2002 8 Napa +RVP 06057 2002 12 Nevada +RVP 06059 2002 26 Orange +RVP 06061 2002 13 Placer +RVP 06063 2002 15 Plumas +RVP 06065 2002 50 Riverside +RVP 06067 2002 12 Sacramento +RVP 06069 2002 4 San Benito +RVP 06071 2002 47 San Bernardino +RVP 06073 2002 49 San Diego +RVP 06075 2002 3 San Francisco +RVP 06077 2002 11 San Joaquin +RVP 06079 2002 13 San Luis Obispo +RVP 06081 2002 10 San Mateo +RVP 06083 2002 10 Santa Barbara +RVP 06085 2002 18 Santa Clara +RVP 06087 2002 15 Santa Cruz +RVP 06089 2002 14 Shasta +RVP 06091 2002 3 Sierra +RVP 06093 2002 8 Siskiyou +RVP 06095 2002 5 Solano +RVP 06097 2002 18 Sonoma +RVP 06099 2002 5 Stanislaus +RVP 06101 2002 3 Sutter +RVP 06103 2002 4 Tehama +RVP 06105 2002 9 Trinity +RVP 06107 2002 9 Tulare +RVP 06109 2002 13 Tuolumne +RVP 06111 2002 9 Ventura +RVP 06113 2002 2 Yolo +RVP 06115 2002 4 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_SBC.ALO new file mode 100644 index 0000000..44c8767 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_SBC.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 06000 2002 5297 CA +SBC 06001 2002 0 Alameda +SBC 06003 2002 1 Alpine +SBC 06005 2002 8 Amador +SBC 06007 2002 340 Butte +SBC 06009 2002 19 Calaveras +SBC 06011 2002 0 Colusa +SBC 06013 2002 0 Contra Costa +SBC 06015 2002 12 Del Norte +SBC 06017 2002 190 El Dorado +SBC 06019 2002 0 Fresno +SBC 06021 2002 0 Glenn +SBC 06023 2002 0 Humboldt +SBC 06025 2002 0 Imperial +SBC 06027 2002 0 Inyo +SBC 06029 2002 0 Kern +SBC 06031 2002 0 Kings +SBC 06033 2002 26 Lake +SBC 06035 2002 14 Lassen +SBC 06037 2002 0 Los Angeles +SBC 06039 2002 0 Madera +SBC 06041 2002 0 Marin +SBC 06043 2002 7 Mariposa +SBC 06045 2002 0 Mendocino +SBC 06047 2002 0 Merced +SBC 06049 2002 0 Modoc +SBC 06051 2002 6 Mono +SBC 06053 2002 0 Monterey +SBC 06055 2002 0 Napa +SBC 06057 2002 158 Nevada +SBC 06059 2002 0 Orange +SBC 06061 2002 1005 Placer +SBC 06063 2002 25 Plumas +SBC 06065 2002 0 Riverside +SBC 06067 2002 2787 Sacramento +SBC 06069 2002 65 San Benito +SBC 06071 2002 0 San Bernardino +SBC 06073 2002 0 San Diego +SBC 06075 2002 0 San Francisco +SBC 06077 2002 0 San Joaquin +SBC 06079 2002 0 San Luis Obispo +SBC 06081 2002 0 San Mateo +SBC 06083 2002 0 Santa Barbara +SBC 06085 2002 0 Santa Clara +SBC 06087 2002 0 Santa Cruz +SBC 06089 2002 184 Shasta +SBC 06091 2002 0 Sierra +SBC 06093 2002 19 Siskiyou +SBC 06095 2002 0 Solano +SBC 06097 2002 0 Sonoma +SBC 06099 2002 0 Stanislaus +SBC 06101 2002 48 Sutter +SBC 06103 2002 0 Tehama +SBC 06105 2002 0 Trinity +SBC 06107 2002 342 Tulare +SBC 06109 2002 28 Tuolumne +SBC 06111 2002 0 Ventura +SBC 06113 2002 0 Yolo +SBC 06115 2002 13 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_SBR.ALO new file mode 100644 index 0000000..a2ee624 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_SBR.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 06000 2002 1281847 CA +SBR 06001 2002 0 Alameda +SBR 06003 2002 1573 Alpine +SBR 06005 2002 15490 Amador +SBR 06007 2002 87851 Butte +SBR 06009 2002 23835 Calaveras +SBR 06011 2002 0 Colusa +SBR 06013 2002 0 Contra Costa +SBR 06015 2002 10531 Del Norte +SBR 06017 2002 74797 El Dorado +SBR 06019 2002 0 Fresno +SBR 06021 2002 0 Glenn +SBR 06023 2002 0 Humboldt +SBR 06025 2002 0 Imperial +SBR 06027 2002 0 Inyo +SBR 06029 2002 0 Kern +SBR 06031 2002 0 Kings +SBR 06033 2002 32705 Lake +SBR 06035 2002 12187 Lassen +SBR 06037 2002 0 Los Angeles +SBR 06039 2002 0 Madera +SBR 06041 2002 0 Marin +SBR 06043 2002 8991 Mariposa +SBR 06045 2002 0 Mendocino +SBR 06047 2002 0 Merced +SBR 06049 2002 4785 Modoc +SBR 06051 2002 12196 Mono +SBR 06053 2002 0 Monterey +SBR 06055 2002 0 Napa +SBR 06057 2002 45815 Nevada +SBR 06059 2002 0 Orange +SBR 06061 2002 120589 Placer +SBR 06063 2002 13682 Plumas +SBR 06065 2002 0 Riverside +SBR 06067 2002 492238 Sacramento +SBR 06069 2002 17422 San Benito +SBR 06071 2002 0 San Bernardino +SBR 06073 2002 0 San Diego +SBR 06075 2002 0 San Francisco +SBR 06077 2002 0 San Joaquin +SBR 06079 2002 0 San Luis Obispo +SBR 06081 2002 0 San Mateo +SBR 06083 2002 0 Santa Barbara +SBR 06085 2002 0 Santa Clara +SBR 06087 2002 0 Santa Cruz +SBR 06089 2002 70913 Shasta +SBR 06091 2002 2209 Sierra +SBR 06093 2002 22214 Siskiyou +SBR 06095 2002 0 Solano +SBR 06097 2002 0 Sonoma +SBR 06099 2002 0 Stanislaus +SBR 06101 2002 28991 Sutter +SBR 06103 2002 0 Tehama +SBR 06105 2002 8034 Trinity +SBR 06107 2002 123122 Tulare +SBR 06109 2002 28722 Tuolumne +SBR 06111 2002 0 Ventura +SBR 06113 2002 0 Yolo +SBR 06115 2002 22955 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_SNOWM.ALO new file mode 100644 index 0000000..3103075 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_SNOWM.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 06000 2002 1727 CA +SNM 06001 2002 0 Alameda +SNM 06003 2002 822 Alpine +SNM 06005 2002 27 Amador +SNM 06007 2002 5 Butte +SNM 06009 2002 23 Calaveras +SNM 06011 2002 0 Colusa +SNM 06013 2002 0 Contra Costa +SNM 06015 2002 0 Del Norte +SNM 06017 2002 6 El Dorado +SNM 06019 2002 1 Fresno +SNM 06021 2002 0 Glenn +SNM 06023 2002 0 Humboldt +SNM 06025 2002 0 Imperial +SNM 06027 2002 55 Inyo +SNM 06029 2002 1 Kern +SNM 06031 2002 0 Kings +SNM 06033 2002 0 Lake +SNM 06035 2002 30 Lassen +SNM 06037 2002 0 Los Angeles +SNM 06039 2002 8 Madera +SNM 06041 2002 0 Marin +SNM 06043 2002 58 Mariposa +SNM 06045 2002 0 Mendocino +SNM 06047 2002 0 Merced +SNM 06049 2002 107 Modoc +SNM 06051 2002 77 Mono +SNM 06053 2002 0 Monterey +SNM 06055 2002 0 Napa +SNM 06057 2002 11 Nevada +SNM 06059 2002 0 Orange +SNM 06061 2002 4 Placer +SNM 06063 2002 48 Plumas +SNM 06065 2002 0 Riverside +SNM 06067 2002 0 Sacramento +SNM 06069 2002 0 San Benito +SNM 06071 2002 0 San Bernardino +SNM 06073 2002 0 San Diego +SNM 06075 2002 0 San Francisco +SNM 06077 2002 0 San Joaquin +SNM 06079 2002 0 San Luis Obispo +SNM 06081 2002 0 San Mateo +SNM 06083 2002 0 Santa Barbara +SNM 06085 2002 0 Santa Clara +SNM 06087 2002 0 Santa Cruz +SNM 06089 2002 6 Shasta +SNM 06091 2002 286 Sierra +SNM 06093 2002 23 Siskiyou +SNM 06095 2002 0 Solano +SNM 06097 2002 0 Sonoma +SNM 06099 2002 0 Stanislaus +SNM 06101 2002 0 Sutter +SNM 06103 2002 17 Tehama +SNM 06105 2002 75 Trinity +SNM 06107 2002 3 Tulare +SNM 06109 2002 18 Tuolumne +SNM 06111 2002 0 Ventura +SNM 06113 2002 0 Yolo +SNM 06115 2002 16 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_WIB.ALO new file mode 100644 index 0000000..22f00ba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_WIB.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 06000 1990 12755 CA +WIB 06001 1990 328 Alameda +WIB 06003 1990 12 Alpine +WIB 06005 1990 30 Amador +WIB 06007 1990 97 Butte +WIB 06009 1990 43 Calaveras +WIB 06011 1990 14 Colusa +WIB 06013 1990 306 Contra Costa +WIB 06015 1990 317 Del Norte +WIB 06017 1990 207 El Dorado +WIB 06019 1990 142 Fresno +WIB 06021 1990 32 Glenn +WIB 06023 1990 769 Humboldt +WIB 06025 1990 795 Imperial +WIB 06027 1990 92 Inyo +WIB 06029 1990 53 Kern +WIB 06031 1990 5 Kings +WIB 06033 1990 184 Lake +WIB 06035 1990 422 Lassen +WIB 06037 1990 431 Los Angeles +WIB 06039 1990 39 Madera +WIB 06041 1990 625 Marin +WIB 06043 1990 30 Mariposa +WIB 06045 1990 544 Mendocino +WIB 06047 1990 112 Merced +WIB 06049 1990 671 Modoc +WIB 06051 1990 226 Mono +WIB 06053 1990 715 Monterey +WIB 06055 1990 94 Napa +WIB 06057 1990 44 Nevada +WIB 06059 1990 216 Orange +WIB 06061 1990 248 Placer +WIB 06063 1990 155 Plumas +WIB 06065 1990 248 Riverside +WIB 06067 1990 102 Sacramento +WIB 06069 1990 4 San Benito +WIB 06071 1990 116 San Bernardino +WIB 06073 1990 496 San Diego +WIB 06075 1990 258 San Francisco +WIB 06077 1990 85 San Joaquin +WIB 06079 1990 459 San Luis Obispo +WIB 06081 1990 651 San Mateo +WIB 06083 1990 524 Santa Barbara +WIB 06085 1990 41 Santa Clara +WIB 06087 1990 223 Santa Cruz +WIB 06089 1990 160 Shasta +WIB 06091 1990 22 Sierra +WIB 06093 1990 157 Siskiyou +WIB 06095 1990 294 Solano +WIB 06097 1990 305 Sonoma +WIB 06099 1990 52 Stanislaus +WIB 06101 1990 16 Sutter +WIB 06103 1990 29 Tehama +WIB 06105 1990 75 Trinity +WIB 06107 1990 39 Tulare +WIB 06109 1990 101 Tuolumne +WIB 06111 1990 239 Ventura +WIB 06113 1990 27 Yolo +WIB 06115 1990 34 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CA_WOB.ALO new file mode 100644 index 0000000..111f3ad --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CA_WOB.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 06000 1990 7651 CA +WOB 06001 1990 231 Alameda +WOB 06003 1990 12 Alpine +WOB 06005 1990 30 Amador +WOB 06007 1990 97 Butte +WOB 06009 1990 43 Calaveras +WOB 06011 1990 14 Colusa +WOB 06013 1990 224 Contra Costa +WOB 06015 1990 56 Del Norte +WOB 06017 1990 207 El Dorado +WOB 06019 1990 142 Fresno +WOB 06021 1990 32 Glenn +WOB 06023 1990 183 Humboldt +WOB 06025 1990 795 Imperial +WOB 06027 1990 92 Inyo +WOB 06029 1990 53 Kern +WOB 06031 1990 5 Kings +WOB 06033 1990 184 Lake +WOB 06035 1990 422 Lassen +WOB 06037 1990 154 Los Angeles +WOB 06039 1990 39 Madera +WOB 06041 1990 281 Marin +WOB 06043 1990 30 Mariposa +WOB 06045 1990 84 Mendocino +WOB 06047 1990 112 Merced +WOB 06049 1990 671 Modoc +WOB 06051 1990 226 Mono +WOB 06053 1990 118 Monterey +WOB 06055 1990 90 Napa +WOB 06057 1990 44 Nevada +WOB 06059 1990 50 Orange +WOB 06061 1990 248 Placer +WOB 06063 1990 155 Plumas +WOB 06065 1990 248 Riverside +WOB 06067 1990 81 Sacramento +WOB 06069 1990 4 San Benito +WOB 06071 1990 116 San Bernardino +WOB 06073 1990 185 San Diego +WOB 06075 1990 155 San Francisco +WOB 06077 1990 72 San Joaquin +WOB 06079 1990 100 San Luis Obispo +WOB 06081 1990 317 San Mateo +WOB 06083 1990 95 Santa Barbara +WOB 06085 1990 35 Santa Clara +WOB 06087 1990 31 Santa Cruz +WOB 06089 1990 160 Shasta +WOB 06091 1990 22 Sierra +WOB 06093 1990 157 Siskiyou +WOB 06095 1990 215 Solano +WOB 06097 1990 104 Sonoma +WOB 06099 1990 52 Stanislaus +WOB 06101 1990 16 Sutter +WOB 06103 1990 29 Tehama +WOB 06105 1990 75 Trinity +WOB 06107 1990 39 Tulare +WOB 06109 1990 101 Tuolumne +WOB 06111 1990 57 Ventura +WOB 06113 1990 27 Yolo +WOB 06115 1990 34 Yuba +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_AIRTR.ALO new file mode 100644 index 0000000..26af5d4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_AIRTR.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/23/05 epa: Assume Broomfield has negligible aircraft NOx & airport ground service activity. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 08000 2002 2093.170 CO +AIR 08001 2002 0.000 Adams +AIR 08003 2002 0.280 Alamosa +AIR 08005 2002 2.650 Arapahoe +AIR 08007 2002 0.000 Archuleta +AIR 08009 2002 0.000 Baca +AIR 08011 2002 0.000 Bent +AIR 08013 2002 0.260 Boulder +AIR 08014 2002 0.000 Broomfield +AIR 08015 2002 0.000 Chaffee +AIR 08017 2002 0.000 Cheyenne +AIR 08019 2002 0.000 Clear Creek +AIR 08021 2002 0.000 Conejos +AIR 08023 2002 0.000 Costilla +AIR 08025 2002 0.000 Crowley +AIR 08027 2002 0.000 Custer +AIR 08029 2002 0.000 Delta +AIR 08031 2002 1837.160 Denver +AIR 08033 2002 0.000 Dolores +AIR 08035 2002 0.000 Douglas +AIR 08037 2002 17.580 Eagle +AIR 08039 2002 0.000 Elbert +AIR 08041 2002 155.890 El Paso +AIR 08043 2002 0.000 Fremont +AIR 08045 2002 0.120 Garfield +AIR 08047 2002 0.000 Gilpin +AIR 08049 2002 0.025 Grand +AIR 08051 2002 4.547 Gunnison +AIR 08053 2002 0.000 Hinsdale +AIR 08055 2002 0.000 Huerfano +AIR 08057 2002 0.000 Jackson +AIR 08059 2002 0.820 Jefferson +AIR 08061 2002 0.000 Kiowa +AIR 08063 2002 0.000 Kit Carson +AIR 08065 2002 0.000 Lake +AIR 08067 2002 4.070 La Plata +AIR 08069 2002 0.779 Larimer +AIR 08071 2002 0.120 Las Animas +AIR 08073 2002 0.000 Lincoln +AIR 08075 2002 0.029 Logan +AIR 08077 2002 8.420 Mesa +AIR 08079 2002 0.000 Mineral +AIR 08081 2002 0.005 Moffat +AIR 08083 2002 0.162 Montezuma +AIR 08085 2002 0.858 Montrose +AIR 08087 2002 0.000 Morgan +AIR 08089 2002 0.050 Otero +AIR 08091 2002 0.000 Ouray +AIR 08093 2002 0.000 Park +AIR 08095 2002 0.000 Phillips +AIR 08097 2002 37.990 Pitkin +AIR 08099 2002 0.130 Prowers +AIR 08101 2002 1.810 Pueblo +AIR 08103 2002 0.000 Rio Blanco +AIR 08105 2002 0.021 Rio Grande +AIR 08107 2002 17.052 Routt +AIR 08109 2002 0.000 Saguache +AIR 08111 2002 0.000 San Juan +AIR 08113 2002 0.000 San Miguel +AIR 08115 2002 0.000 Sedgwick +AIR 08117 2002 0.000 Summit +AIR 08119 2002 0.000 Teller +AIR 08121 2002 1.372 Washington +AIR 08123 2002 0.970 Weld +AIR 08125 2002 0.000 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_COAL.ALO new file mode 100644 index 0000000..70c1133 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_COAL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 08000 2002 25331 CO +MIN 08001 2002 0 Adams +MIN 08003 2002 0 Alamosa +MIN 08005 2002 0 Arapahoe +MIN 08007 2002 0 Archuleta +MIN 08009 2002 0 Baca +MIN 08011 2002 0 Bent +MIN 08013 2002 0 Boulder +MIN 08014 2002 0 Broomfield +MIN 08015 2002 0 Chaffee +MIN 08017 2002 0 Cheyenne +MIN 08019 2002 0 Clear Creek +MIN 08021 2002 0 Conejos +MIN 08023 2002 0 Costilla +MIN 08025 2002 0 Crowley +MIN 08027 2002 0 Custer +MIN 08029 2002 5396 Delta +MIN 08031 2002 0 Denver +MIN 08033 2002 0 Dolores +MIN 08035 2002 0 Douglas +MIN 08037 2002 0 Eagle +MIN 08039 2002 0 Elbert +MIN 08041 2002 0 El Paso +MIN 08043 2002 0 Fremont +MIN 08045 2002 327 Garfield +MIN 08047 2002 0 Gilpin +MIN 08049 2002 0 Grand +MIN 08051 2002 9634 Gunnison +MIN 08053 2002 0 Hinsdale +MIN 08055 2002 0 Huerfano +MIN 08057 2002 0 Jackson +MIN 08059 2002 0 Jefferson +MIN 08061 2002 0 Kiowa +MIN 08063 2002 0 Kit Carson +MIN 08065 2002 0 Lake +MIN 08067 2002 312 La Plata +MIN 08069 2002 0 Larimer +MIN 08071 2002 0 Las Animas +MIN 08073 2002 0 Lincoln +MIN 08075 2002 0 Logan +MIN 08077 2002 0 Mesa +MIN 08079 2002 0 Mineral +MIN 08081 2002 0 Moffat +MIN 08083 2002 0 Montezuma +MIN 08085 2002 0 Montrose +MIN 08087 2002 0 Morgan +MIN 08089 2002 0 Otero +MIN 08091 2002 0 Ouray +MIN 08093 2002 0 Park +MIN 08095 2002 0 Phillips +MIN 08097 2002 0 Pitkin +MIN 08099 2002 0 Prowers +MIN 08101 2002 0 Pueblo +MIN 08103 2002 2089 Rio Blanco +MIN 08105 2002 0 Rio Grande +MIN 08107 2002 7573 Routt +MIN 08109 2002 0 Saguache +MIN 08111 2002 0 San Juan +MIN 08113 2002 0 San Miguel +MIN 08115 2002 0 Sedgwick +MIN 08117 2002 0 Summit +MIN 08119 2002 0 Teller +MIN 08121 2002 0 Washington +MIN 08123 2002 0 Weld +MIN 08125 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_CONST.ALO new file mode 100644 index 0000000..1467ff1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_CONST.ALO @@ -0,0 +1,137 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +9/23/05 epa: add Broomfield in 2001 with 2003 Const values & 2002 Pop ratios from Adams, Boulder, Jefferson, & Weld. +10/17/05 epa: Use corrected geo adjustments. +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ 11523479 +CON 08000 2003 11523481 CO 11523479 +CON 08001 2000 1289813 Adams 0.3823 1289813 +CON 08001 2001 881773 Adams 0.26136 +CON 08003 2003 8718 Alamosa +CON 08005 2003 902179 Arapahoe +CON 08007 2003 42573 Archuleta +CON 08009 2003 9384 Baca +CON 08011 2003 1397 Bent +CON 08013 2000 680546 Boulder 0.20172 680546 +CON 08013 2001 657989 Boulder 0.19503 +CON 08014 2000 0 Broomfield 0 0 +CON 08014 2001 96560 Broomfield 0.028621 +CON 08015 2003 32286 Chaffee +CON 08017 2003 5962 Cheyenne +CON 08019 2003 18664 Clear Creek +CON 08021 2003 8486 Conejos +CON 08023 2003 6254 Costilla +CON 08025 2003 22603 Crowley +CON 08027 2003 22462 Custer +CON 08029 2003 79319 Delta +CON 08031 2003 1303505 Denver +CON 08033 2003 5213 Dolores +CON 08035 2003 1058479 Douglas +CON 08037 2003 266848 Eagle +CON 08039 2003 23690 Elbert +CON 08041 2003 1355875 El Paso +CON 08043 2003 57068 Fremont +CON 08045 2003 156629 Garfield +CON 08047 2003 26003 Gilpin +CON 08049 2003 115734 Grand +CON 08051 2003 53503 Gunnison +CON 08053 2003 2940 Hinsdale +CON 08055 2003 22033 Huerfano +CON 08057 2003 5780 Jackson +CON 08059 2000 554001 Jefferson 0.16421 554001 +CON 08059 2001 1254267 Jefferson 0.371768 +CON 08061 2003 1003 Kiowa +CON 08063 2003 4224 Kit Carson +CON 08065 2003 11088 Lake +CON 08067 2003 203956 La Plata +CON 08069 2003 635375 Larimer +CON 08071 2003 16418 Las Animas +CON 08073 2003 1105 Lincoln +CON 08075 2003 11661 Logan +CON 08077 2003 256203 Mesa +CON 08079 2003 31559 Mineral +CON 08081 2003 14964 Moffat +CON 08083 2003 35916 Montezuma +CON 08085 2003 65822 Montrose +CON 08087 2003 24961 Morgan +CON 08089 2003 15430 Otero +CON 08091 2003 22254 Ouray +CON 08093 2003 43738 Park +CON 08095 2003 10440 Phillips +CON 08097 2003 120696 Pitkin +CON 08099 2003 257972 Prowers +CON 08101 2003 253325 Pueblo +CON 08103 2003 7112 Rio Blanco +CON 08105 2003 42006 Rio Grande +CON 08107 2003 115903 Routt +CON 08109 2003 7071 Saguache +CON 08111 2003 5409 San Juan +CON 08113 2003 103500 San Miguel +CON 08115 2003 5564 Sedgwick +CON 08117 2003 152368 Summit +CON 08119 2003 51063 Teller +CON 08121 2003 986 Washington +CON 08123 2000 849426 Weld 0.25177 849426 +CON 08123 2001 483197 Weld 0.143221 +CON 08125 2003 7014 Yuma +/END/ + 1.0000 3373786 1.0000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_FARMS.ALO new file mode 100644 index 0000000..1632f4c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_FARMS.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +9/23/05 epa: web search indicates essentially zero ag in Broomfield County. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 08000 2002 4346955 CO +FRM 08001 2002 260664 Adams +FRM 08003 2002 78963 Alamosa +FRM 08005 2002 70449 Arapahoe +FRM 08007 2002 4093 Archuleta +FRM 08009 2002 47112 Baca +FRM 08011 2002 47112 Bent +FRM 08013 2002 33701 Boulder +FRM 08014 2002 0 Broomfield +FRM 08015 2002 8297 Chaffee +FRM 08017 2002 47112 Cheyenne +FRM 08019 2002 260 Clear Creek +FRM 08021 2002 51976 Conejos +FRM 08023 2002 34330 Costilla +FRM 08025 2002 47112 Crowley +FRM 08027 2002 3720 Custer +FRM 08029 2002 34803 Delta +FRM 08031 2002 9 Denver +FRM 08033 2002 21187 Dolores +FRM 08035 2002 8119 Douglas +FRM 08037 2002 6399 Eagle +FRM 08039 2002 49617 Elbert +FRM 08041 2002 15232 El Paso +FRM 08043 2002 7325 Fremont +FRM 08045 2002 22073 Garfield +FRM 08047 2002 47112 Gilpin +FRM 08049 2002 19706 Grand +FRM 08051 2002 25079 Gunnison +FRM 08053 2002 530 Hinsdale +FRM 08055 2002 47112 Huerfano +FRM 08057 2002 44248 Jackson +FRM 08059 2002 3925 Jefferson +FRM 08061 2002 47112 Kiowa +FRM 08063 2002 314443 Kit Carson +FRM 08065 2002 221 Lake +FRM 08067 2002 34820 La Plata +FRM 08069 2002 64332 Larimer +FRM 08071 2002 8756 Las Animas +FRM 08073 2002 47112 Lincoln +FRM 08075 2002 255146 Logan +FRM 08077 2002 49417 Mesa +FRM 08079 2002 47112 Mineral +FRM 08081 2002 47112 Moffat +FRM 08083 2002 41320 Montezuma +FRM 08085 2002 60890 Montrose +FRM 08087 2002 190850 Morgan +FRM 08089 2002 33034 Otero +FRM 08091 2002 47112 Ouray +FRM 08093 2002 5705 Park +FRM 08095 2002 219155 Phillips +FRM 08097 2002 2790 Pitkin +FRM 08099 2002 170688 Prowers +FRM 08101 2002 47112 Pueblo +FRM 08103 2002 47112 Rio Blanco +FRM 08105 2002 79993 Rio Grande +FRM 08107 2002 44987 Routt +FRM 08109 2002 86582 Saguache +FRM 08111 2002 0 San Juan +FRM 08113 2002 4894 San Miguel +FRM 08115 2002 112430 Sedgwick +FRM 08117 2002 2299 Summit +FRM 08119 2002 1070 Teller +FRM 08121 2002 332494 Washington +FRM 08123 2002 422385 Weld +FRM 08125 2002 391090 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_GOLF.ALO new file mode 100644 index 0000000..a10c1d3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_GOLF.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +9/23/05 epa: Ignore negligible allocation effect of 2 Broomfield golf courses pre-2002. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 08000 2002 125 CO +GC 08001 2002 6 Adams +GC 08003 2002 1 Alamosa +GC 08005 2002 10 Arapahoe +GC 08007 2002 1 Archuleta +GC 08009 2002 0 Baca +GC 08011 2002 0 Bent +GC 08013 2002 6 Boulder +GC 08014 2002 2 Broomfield +GC 08015 2002 2 Chaffee +GC 08017 2002 0 Cheyenne +GC 08019 2002 0 Clear Creek +GC 08021 2002 0 Conejos +GC 08023 2002 0 Costilla +GC 08025 2002 0 Crowley +GC 08027 2002 1 Custer +GC 08029 2002 0 Delta +GC 08031 2002 4 Denver +GC 08033 2002 0 Dolores +GC 08035 2002 9 Douglas +GC 08037 2002 7 Eagle +GC 08039 2002 0 Elbert +GC 08041 2002 10 El Paso +GC 08043 2002 1 Fremont +GC 08045 2002 4 Garfield +GC 08047 2002 0 Gilpin +GC 08049 2002 1 Grand +GC 08051 2002 2 Gunnison +GC 08053 2002 0 Hinsdale +GC 08055 2002 2 Huerfano +GC 08057 2002 0 Jackson +GC 08059 2002 10 Jefferson +GC 08061 2002 0 Kiowa +GC 08063 2002 3 Kit Carson +GC 08065 2002 1 Lake +GC 08067 2002 1 La Plata +GC 08069 2002 6 Larimer +GC 08071 2002 0 Las Animas +GC 08073 2002 0 Lincoln +GC 08075 2002 3 Logan +GC 08077 2002 4 Mesa +GC 08079 2002 0 Mineral +GC 08081 2002 1 Moffat +GC 08083 2002 0 Montezuma +GC 08085 2002 2 Montrose +GC 08087 2002 1 Morgan +GC 08089 2002 2 Otero +GC 08091 2002 1 Ouray +GC 08093 2002 0 Park +GC 08095 2002 0 Phillips +GC 08097 2002 0 Pitkin +GC 08099 2002 1 Prowers +GC 08101 2002 2 Pueblo +GC 08103 2002 0 Rio Blanco +GC 08105 2002 2 Rio Grande +GC 08107 2002 1 Routt +GC 08109 2002 1 Saguache +GC 08111 2002 1 San Juan +GC 08113 2002 3 San Miguel +GC 08115 2002 0 Sedgwick +GC 08117 2002 1 Summit +GC 08119 2002 0 Teller +GC 08121 2002 1 Washington +GC 08123 2002 6 Weld +GC 08125 2002 2 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_HOLSL.ALO new file mode 100644 index 0000000..f06c0dd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_HOLSL.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 7458 +COM 08000 2002 7458 CO 7458 +COM 08001 2000 700 Adams 0.301402 700 +COM 08001 2001 733 Adams 7330.315404 +COM 08003 2002 30 Alamosa +COM 08005 2002 1012 Arapahoe +COM 08007 2002 12 Archuleta +COM 08009 2002 9 Baca +COM 08011 2002 1 Bent +COM 08013 2000 556 Boulder 0.239097 556 +COM 08013 2001 511 Boulder 511 0.21988 +COM 08014 2000 0 Broomfield 0 0 +COM 08014 2001 72 Broomfield 720.030981 +COM 08015 2002 24 Chaffee +COM 08017 2002 4 Cheyenne +COM 08019 2002 19 Clear Creek +COM 08021 2002 3 Conejos +COM 08023 2002 1 Costilla +COM 08025 2002 0 Crowley +COM 08027 2002 3 Custer +COM 08029 2002 26 Delta +COM 08031 2002 1585 Denver +COM 08033 2002 5 Dolores +COM 08035 2002 318 Douglas +COM 08037 2002 91 Eagle +COM 08039 2002 29 Elbert +COM 08041 2002 538 El Paso +COM 08043 2002 34 Fremont +COM 08045 2002 67 Garfield +COM 08047 2002 3 Gilpin +COM 08049 2002 12 Grand +COM 08051 2002 13 Gunnison +COM 08053 2002 1 Hinsdale +COM 08055 2002 6 Huerfano +COM 08057 2002 3 Jackson +COM 08059 2000 805 Jefferson 0.346573 805 +COM 08059 2001 766 Jefferson 7660.329604 +COM 08061 2002 6 Kiowa +COM 08063 2002 23 Kit Carson +COM 08065 2002 6 Lake +COM 08067 2002 74 La Plata +COM 08069 2002 350 Larimer +COM 08071 2002 20 Las Animas +COM 08073 2002 7 Lincoln +COM 08075 2002 31 Logan +COM 08077 2002 221 Mesa +COM 08079 2002 0 Mineral +COM 08081 2002 26 Moffat +COM 08083 2002 19 Montezuma +COM 08085 2002 45 Montrose +COM 08087 2002 37 Morgan +COM 08089 2002 35 Otero +COM 08091 2002 4 Ouray +COM 08093 2002 20 Park +COM 08095 2002 14 Phillips +COM 08097 2002 21 Pitkin +COM 08099 2002 26 Prowers +COM 08101 2002 109 Pueblo +COM 08103 2002 6 Rio Blanco +COM 08105 2002 28 Rio Grande +COM 08107 2002 43 Routt +COM 08109 2002 10 Saguache +COM 08111 2002 0 San Juan +COM 08113 2002 4 San Miguel +COM 08115 2002 12 Sedgwick +COM 08117 2002 37 Summit +COM 08119 2002 15 Teller +COM 08121 2002 8 Washington +COM 08123 2000 262 Weld 0.112928 262 +COM 08123 2001 242 Weld 2420.104131 +COM 08125 2002 28 Yuma +/END/ + 2324.0 1.0000 1.0000 2324.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_HOUSE.ALO new file mode 100644 index 0000000..9396931 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_HOUSE.ALO @@ -0,0 +1,96 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1997 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 1928962 +HOU 08000 2002 1928962 CO 1928962 +HOU 08001 2000 132679 Adams 0.233305 132679 +HOU 08001 2001 141385 Adams 1413850.248614 +HOU 08003 2002 6296 Alamosa +HOU 08005 2002 212801 Arapahoe +HOU 08007 2002 6944 Archuleta +HOU 08009 2002 2400 Baca +HOU 08011 2002 2400 Bent +HOU 08013 2000 120992 Boulder 0.212755 120992 +HOU 08013 2001 116753 Boulder 1167530.205301 +HOU 08014 2000 0 Broomfield 0 0 +HOU 08014 2001 16288 Broomfield 162880.028641 +HOU 08015 2002 8928 Chaffee +HOU 08017 2002 1126 Cheyenne +HOU 08019 2002 5230 Clear Creek +HOU 08021 2002 3945 Conejos +HOU 08023 2002 2241 Costilla +HOU 08025 2002 1585 Crowley +HOU 08027 2002 3250 Custer +HOU 08029 2002 12687 Delta +HOU 08031 2002 258407 Denver +HOU 08033 2002 1228 Dolores +HOU 08035 2002 77094 Douglas +HOU 08037 2002 23427 Eagle +HOU 08039 2002 7789 Elbert +HOU 08041 2002 216019 El Paso +HOU 08043 2002 18128 Fremont +HOU 08045 2002 18851 Garfield +HOU 08047 2002 3054 Gilpin +HOU 08049 2002 11944 Grand +HOU 08051 2002 9682 Gunnison +HOU 08053 2002 1316 Hinsdale +HOU 08055 2002 4790 Huerfano +HOU 08057 2002 1186 Jackson +HOU 08059 2000 249334 Jefferson 0.438434 249334 +HOU 08059 2001 218646 Jefferson 2186460.384472 +HOU 08061 2002 824 Kiowa +HOU 08063 2002 3505 Kit Carson +HOU 08065 2002 4036 Lake +HOU 08067 2002 21946 La Plata +HOU 08069 2002 113512 Larimer +HOU 08071 2002 7787 Las Animas +HOU 08073 2002 2439 Lincoln +HOU 08075 2002 8623 Logan +HOU 08077 2002 51844 Mesa +HOU 08079 2002 1132 Mineral +HOU 08081 2002 5800 Moffat +HOU 08083 2002 10851 Montezuma +HOU 08085 2002 15162 Montrose +HOU 08087 2002 10717 Morgan +HOU 08089 2002 8871 Otero +HOU 08091 2002 2308 Ouray +HOU 08093 2002 11511 Park +HOU 08095 2002 2037 Phillips +HOU 08097 2002 10527 Pitkin +HOU 08099 2002 6066 Prowers +HOU 08101 2002 61634 Pueblo +HOU 08103 2002 2915 Rio Blanco +HOU 08105 2002 6254 Rio Grande +HOU 08107 2002 12181 Routt +HOU 08109 2002 3386 Saguache +HOU 08111 2002 634 San Juan +HOU 08113 2002 5442 San Miguel +HOU 08115 2002 1386 Sedgwick +HOU 08117 2002 26511 Summit +HOU 08119 2002 11005 Teller +HOU 08121 2002 2341 Washington +HOU 08123 2000 65687 Weld 0.115505 65687 +HOU 08123 2001 75620 Weld 756200.132972 +HOU 08125 2002 4335 Yuma +/END/ + 568692.0 1.0000 1.0000568692.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_LOGGN.ALO new file mode 100644 index 0000000..5bc0cca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_LOGGN.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 08000 2002 59159870 CO +LOG 08001 2002 0 Adams +LOG 08003 2002 698134 Alamosa +LOG 08005 2002 0 Arapahoe +LOG 08007 2002 144546 Archuleta +LOG 08009 2002 0 Baca +LOG 08011 2002 0 Bent +LOG 08013 2002 255271 Boulder +LOG 08014 2002 0 Broomfield +LOG 08015 2002 1085 Chaffee +LOG 08017 2002 0 Cheyenne +LOG 08019 2002 1003606 Clear Creek +LOG 08021 2002 4968795 Conejos +LOG 08023 2002 0 Costilla +LOG 08025 2002 0 Crowley +LOG 08027 2002 289338 Custer +LOG 08029 2002 719454 Delta +LOG 08031 2002 0 Denver +LOG 08033 2002 1032095 Dolores +LOG 08035 2002 322393 Douglas +LOG 08037 2002 1080640 Eagle +LOG 08039 2002 6000 Elbert +LOG 08041 2002 3840376 El Paso +LOG 08043 2002 651826 Fremont +LOG 08045 2002 2017283 Garfield +LOG 08047 2002 0 Gilpin +LOG 08049 2002 4433498 Grand +LOG 08051 2002 1608572 Gunnison +LOG 08053 2002 221931 Hinsdale +LOG 08055 2002 810095 Huerfano +LOG 08057 2002 1158981 Jackson +LOG 08059 2002 1972350 Jefferson +LOG 08061 2002 0 Kiowa +LOG 08063 2002 0 Kit Carson +LOG 08065 2002 30523 Lake +LOG 08067 2002 1096482 La Plata +LOG 08069 2002 1556666 Larimer +LOG 08071 2002 1475853 Las Animas +LOG 08073 2002 0 Lincoln +LOG 08075 2002 0 Logan +LOG 08077 2002 3556236 Mesa +LOG 08079 2002 2187762 Mineral +LOG 08081 2002 20600 Moffat +LOG 08083 2002 2760183 Montezuma +LOG 08085 2002 5968527 Montrose +LOG 08087 2002 0 Morgan +LOG 08089 2002 0 Otero +LOG 08091 2002 1931400 Ouray +LOG 08093 2002 354520 Park +LOG 08095 2002 0 Phillips +LOG 08097 2002 387106 Pitkin +LOG 08099 2002 0 Prowers +LOG 08101 2002 763041 Pueblo +LOG 08103 2002 2891516 Rio Blanco +LOG 08105 2002 313886 Rio Grande +LOG 08107 2002 1975089 Routt +LOG 08109 2002 1753924 Saguache +LOG 08111 2002 0 San Juan +LOG 08113 2002 479486 San Miguel +LOG 08115 2002 0 Sedgwick +LOG 08117 2002 1609992 Summit +LOG 08119 2002 810806 Teller +LOG 08121 2002 0 Washington +LOG 08123 2002 0 Weld +LOG 08125 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_LSCAP.ALO new file mode 100644 index 0000000..28a9d9d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_LSCAP.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 9499 +LSC 08000 2002 9499 CO 9499 +LSC 08001 2000 521 Adams 0.144347 521 +LSC 08001 2001 896 Adams 8960.248062 +LSC 08003 2002 4 Alamosa +LSC 08005 2002 1767 Arapahoe +LSC 08007 2002 4 Archuleta +LSC 08009 2002 0 Baca +LSC 08011 2002 0 Bent +LSC 08013 2000 1017 Boulder 0.281559 1017 +LSC 08013 2001 764 Boulder 7640.211517 +LSC 08014 2000 0 Broomfield 0 0 +LSC 08014 2001 65 Broomfield 650.017996 +LSC 08015 2002 4 Chaffee +LSC 08017 2002 4 Cheyenne +LSC 08019 2002 2 Clear Creek +LSC 08021 2002 4 Conejos +LSC 08023 2002 0 Costilla +LSC 08025 2002 0 Crowley +LSC 08027 2002 0 Custer +LSC 08029 2002 4 Delta +LSC 08031 2002 669 Denver +LSC 08033 2002 0 Dolores +LSC 08035 2002 916 Douglas +LSC 08037 2002 119 Eagle +LSC 08039 2002 57 Elbert +LSC 08041 2002 906 El Paso +LSC 08043 2002 14 Fremont +LSC 08045 2002 72 Garfield +LSC 08047 2002 0 Gilpin +LSC 08049 2002 7 Grand +LSC 08051 2002 12 Gunnison +LSC 08053 2002 0 Hinsdale +LSC 08055 2002 4 Huerfano +LSC 08057 2002 0 Jackson +LSC 08059 2000 1836 Jefferson 0.508233 1836 +LSC 08059 2001 1298 Jefferson 12980.359358 +LSC 08061 2002 0 Kiowa +LSC 08063 2002 4 Kit Carson +LSC 08065 2002 0 Lake +LSC 08067 2002 52 La Plata +LSC 08069 2002 766 Larimer +LSC 08071 2002 4 Las Animas +LSC 08073 2002 0 Lincoln +LSC 08075 2002 4 Logan +LSC 08077 2002 151 Mesa +LSC 08079 2002 0 Mineral +LSC 08081 2002 4 Moffat +LSC 08083 2002 4 Montezuma +LSC 08085 2002 11 Montrose +LSC 08087 2002 4 Morgan +LSC 08089 2002 4 Otero +LSC 08091 2002 4 Ouray +LSC 08093 2002 5 Park +LSC 08095 2002 0 Phillips +LSC 08097 2002 36 Pitkin +LSC 08099 2002 4 Prowers +LSC 08101 2002 150 Pueblo +LSC 08103 2002 4 Rio Blanco +LSC 08105 2002 4 Rio Grande +LSC 08107 2002 32 Routt +LSC 08109 2002 0 Saguache +LSC 08111 2002 0 San Juan +LSC 08113 2002 29 San Miguel +LSC 08115 2002 4 Sedgwick +LSC 08117 2002 24 Summit +LSC 08119 2002 6 Teller +LSC 08121 2002 4 Washington +LSC 08123 2000 238 Weld 0.065862 238 +LSC 08123 2001 589 Weld 5890.163068 +LSC 08125 2002 4 Yuma +/END/ + 3612.0 1.0000 1.0000 3612.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_MNFG.ALO new file mode 100644 index 0000000..27c99a6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_MNFG.ALO @@ -0,0 +1,98 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 286476 +MFG 08000 2002 286476 CO 286476 +MFG 08001 2000 21831 Adams 0.178011 21831 +MFG 08001 2001 23363 Adams 233630.190502 +MFG 08003 2002 177 Alamosa +MFG 08005 2002 26429 Arapahoe +MFG 08007 2002 155 Archuleta +MFG 08009 2002 48 Baca +MFG 08011 2002 9 Bent +MFG 08013 2000 53545 Boulder 0.436605 53545 +MFG 08013 2001 36011 Boulder 360110.293634 +MFG 08014 2000 0 Broomfield 0 0 +MFG 08014 2001 8728 Broomfield 87280.071168 +MFG 08015 2002 408 Chaffee +MFG 08017 2002 101 Cheyenne +MFG 08019 2002 155 Clear Creek +MFG 08021 2002 131 Conejos +MFG 08023 2002 24 Costilla +MFG 08025 2002 22 Crowley +MFG 08027 2002 37 Custer +MFG 08029 2002 714 Delta +MFG 08031 2002 40203 Denver +MFG 08033 2002 32 Dolores +MFG 08035 2002 2328 Douglas +MFG 08037 2002 1025 Eagle +MFG 08039 2002 210 Elbert +MFG 08041 2002 38057 El Paso +MFG 08043 2002 1332 Fremont +MFG 08045 2002 511 Garfield +MFG 08047 2002 36 Gilpin +MFG 08049 2002 172 Grand +MFG 08051 2002 291 Gunnison +MFG 08053 2002 24 Hinsdale +MFG 08055 2002 247 Huerfano +MFG 08057 2002 28 Jackson +MFG 08059 2000 28070 Jefferson 0.228883 28070 +MFG 08059 2001 37983 Jefferson 379830.309714 +MFG 08061 2002 9 Kiowa +MFG 08063 2002 150 Kit Carson +MFG 08065 2002 43 Lake +MFG 08067 2002 1374 La Plata +MFG 08069 2002 23822 Larimer +MFG 08071 2002 206 Las Animas +MFG 08073 2002 75 Lincoln +MFG 08075 2002 743 Logan +MFG 08077 2002 6158 Mesa +MFG 08079 2002 16 Mineral +MFG 08081 2002 159 Moffat +MFG 08083 2002 711 Montezuma +MFG 08085 2002 2119 Montrose +MFG 08087 2002 3013 Morgan +MFG 08089 2002 681 Otero +MFG 08091 2002 92 Ouray +MFG 08093 2002 108 Park +MFG 08095 2002 80 Phillips +MFG 08097 2002 358 Pitkin +MFG 08099 2002 1600 Prowers +MFG 08101 2002 7926 Pueblo +MFG 08103 2002 95 Rio Blanco +MFG 08105 2002 182 Rio Grande +MFG 08107 2002 303 Routt +MFG 08109 2002 116 Saguache +MFG 08111 2002 9 San Juan +MFG 08113 2002 156 San Miguel +MFG 08115 2002 56 Sedgwick +MFG 08117 2002 250 Summit +MFG 08119 2002 197 Teller +MFG 08121 2002 75 Washington +MFG 08123 2000 19193 Weld 0.156501 19193 +MFG 08123 2001 16554 Weld 165540.134982 +MFG 08125 2002 49 Yuma +/END/ + 122639.0 1.0000 1.0000122639.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_OIL.ALO new file mode 100644 index 0000000..e36132f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_OIL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 08000 2002 5859 CO +OIL 08001 2002 252 Adams +OIL 08003 2002 0 Alamosa +OIL 08005 2002 311 Arapahoe +OIL 08007 2002 19 Archuleta +OIL 08009 2002 19 Baca +OIL 08011 2002 0 Bent +OIL 08013 2002 46 Boulder +OIL 08014 2002 0 Broomfield +OIL 08015 2002 0 Chaffee +OIL 08017 2002 277 Cheyenne +OIL 08019 2002 0 Clear Creek +OIL 08021 2002 0 Conejos +OIL 08023 2002 0 Costilla +OIL 08025 2002 0 Crowley +OIL 08027 2002 0 Custer +OIL 08029 2002 27 Delta +OIL 08031 2002 2457 Denver +OIL 08033 2002 0 Dolores +OIL 08035 2002 33 Douglas +OIL 08037 2002 0 Eagle +OIL 08039 2002 0 Elbert +OIL 08041 2002 501 El Paso +OIL 08043 2002 0 Fremont +OIL 08045 2002 118 Garfield +OIL 08047 2002 0 Gilpin +OIL 08049 2002 0 Grand +OIL 08051 2002 0 Gunnison +OIL 08053 2002 0 Hinsdale +OIL 08055 2002 19 Huerfano +OIL 08057 2002 27 Jackson +OIL 08059 2002 266 Jefferson +OIL 08061 2002 0 Kiowa +OIL 08063 2002 0 Kit Carson +OIL 08065 2002 0 Lake +OIL 08067 2002 165 La Plata +OIL 08069 2002 34 Larimer +OIL 08071 2002 46 Las Animas +OIL 08073 2002 0 Lincoln +OIL 08075 2002 182 Logan +OIL 08077 2002 93 Mesa +OIL 08079 2002 0 Mineral +OIL 08081 2002 0 Moffat +OIL 08083 2002 19 Montezuma +OIL 08085 2002 19 Montrose +OIL 08087 2002 27 Morgan +OIL 08089 2002 0 Otero +OIL 08091 2002 0 Ouray +OIL 08093 2002 0 Park +OIL 08095 2002 0 Phillips +OIL 08097 2002 15 Pitkin +OIL 08099 2002 0 Prowers +OIL 08101 2002 46 Pueblo +OIL 08103 2002 269 Rio Blanco +OIL 08105 2002 0 Rio Grande +OIL 08107 2002 19 Routt +OIL 08109 2002 0 Saguache +OIL 08111 2002 0 San Juan +OIL 08113 2002 0 San Miguel +OIL 08115 2002 0 Sedgwick +OIL 08117 2002 0 Summit +OIL 08119 2002 27 Teller +OIL 08121 2002 19 Washington +OIL 08123 2002 329 Weld +OIL 08125 2002 178 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_POP.ALO new file mode 100644 index 0000000..2dc43e2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_POP.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION +from US Census + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 2000 census ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 4498077 +POP 08000 2002 4498077 CO 4498077 2000 pop 2000fracchkDelta +POP 08001 2000 380862 Adams 0.266926 363857 0.2669 +POP 08001 2001 372920 Adams 0.26136 0.0000 7942 +POP 08003 2002 15123 Alamosa +POP 08005 2002 510187 Arapahoe +POP 08007 2002 11073 Archuleta +POP 08009 2002 4389 Baca +POP 08011 2002 5694 Bent +POP 08013 2000 304901 Boulder 0.213689 291288 0.2137 +POP 08013 2001 278277 Boulder 0.19503 0.0000 26624 +POP 08014 2000 0 Broomfield 0 1426843 0 0 0.0000 +POP 08014 2001 40837 Broomfield 14268430.02862110209.25 0.0000 +POP 08015 2002 16828 Chaffee +POP 08017 2002 2152 Cheyenne +POP 08019 2002 9548 Clear Creek +POP 08021 2002 8385 Conejos +POP 08023 2002 3617 Costilla +POP 08025 2002 5490 Crowley +POP 08027 2002 3657 Custer +POP 08029 2002 29019 Delta +POP 08031 2002 557666 Denver +POP 08033 2002 1854 Dolores +POP 08035 2002 211679 Douglas +POP 08037 2002 44335 Eagle +POP 08039 2002 22031 Elbert +POP 08041 2002 541833 El Paso +POP 08043 2002 47537 Fremont +POP 08045 2002 46988 Garfield +POP 08047 2002 4864 Gilpin +POP 08049 2002 12901 Grand +POP 08051 2002 14016 Gunnison +POP 08053 2002 780 Hinsdale +POP 08055 2002 7906 Huerfano +POP 08057 2002 1535 Jackson +POP 08059 2000 551688 Jefferson 0.386649 527056 0.3866 +POP 08059 2001 530455 Jefferson 0.371768 0.0000 21233 +POP 08061 2002 1492 Kiowa +POP 08063 2002 7952 Kit Carson +POP 08065 2002 7808 Lake +POP 08067 2002 45808 La Plata +POP 08069 2002 263808 Larimer +POP 08071 2002 15455 Las Animas +POP 08073 2002 5917 Lincoln +POP 08075 2002 21017 Logan +POP 08077 2002 122176 Mesa +POP 08079 2002 857 Mineral +POP 08081 2002 13419 Moffat +POP 08083 2002 24090 Montezuma +POP 08085 2002 35333 Montrose +POP 08087 2002 27642 Morgan +POP 08089 2002 19821 Otero +POP 08091 2002 3964 Ouray +POP 08093 2002 16123 Park +POP 08095 2002 4541 Phillips +POP 08097 2002 14882 Pitkin +POP 08099 2002 14216 Prowers +POP 08101 2002 147375 Pueblo +POP 08103 2002 6004 Rio Blanco +POP 08105 2002 12212 Rio Grande +POP 08107 2002 20381 Routt +POP 08109 2002 6470 Saguache +POP 08111 2002 567 San Juan +POP 08113 2002 7159 San Miguel +POP 08115 2002 2711 Sedgwick +POP 08117 2002 24745 Summit +POP 08119 2002 21586 Teller +POP 08121 2002 4848 Washington +POP 08123 2000 189392 Weld 0.132735 180936 0.1327 +POP 08123 2001 204354 Weld 0.143221 0.0000 -14962 +POP 08125 2002 9768 Yuma +/END/ + 1.0000 1.0000 1363137 1.0000 40837 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_RAIL.ALO new file mode 100644 index 0000000..3e34120 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_RAIL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Assume Broomfield has negligible Rail activity. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 08000 2002 13647.230 CO +RR 08001 2002 1045.070 Adams +RR 08003 2002 20.120 Alamosa +RR 08005 2002 408.710 Arapahoe +RR 08007 2002 0.000 Archuleta +RR 08009 2002 181.160 Baca +RR 08011 2002 283.770 Bent +RR 08013 2002 364.350 Boulder +RR 08014 2002 0.000 Broomfield +RR 08015 2002 0.000 Chaffee +RR 08017 2002 206.790 Cheyenne +RR 08019 2002 0.000 Clear Creek +RR 08021 2002 9.240 Conejos +RR 08023 2002 23.490 Costilla +RR 08025 2002 0.000 Crowley +RR 08027 2002 0.000 Custer +RR 08029 2002 207.070 Delta +RR 08031 2002 244.230 Denver +RR 08033 2002 0.000 Dolores +RR 08035 2002 497.070 Douglas +RR 08037 2002 466.990 Eagle +RR 08039 2002 89.870 Elbert +RR 08041 2002 775.190 El Paso +RR 08043 2002 12.500 Fremont +RR 08045 2002 435.710 Garfield +RR 08047 2002 204.310 Gilpin +RR 08049 2002 491.240 Grand +RR 08051 2002 78.440 Gunnison +RR 08053 2002 0.000 Hinsdale +RR 08055 2002 577.690 Huerfano +RR 08057 2002 0.000 Jackson +RR 08059 2002 311.780 Jefferson +RR 08061 2002 0.000 Kiowa +RR 08063 2002 0.000 Kit Carson +RR 08065 2002 22.130 Lake +RR 08067 2002 0.000 La Plata +RR 08069 2002 71.030 Larimer +RR 08071 2002 642.480 Las Animas +RR 08073 2002 226.270 Lincoln +RR 08075 2002 575.830 Logan +RR 08077 2002 389.160 Mesa +RR 08079 2002 16.460 Mineral +RR 08081 2002 87.440 Moffat +RR 08083 2002 0.000 Montezuma +RR 08085 2002 44.870 Montrose +RR 08087 2002 1009.560 Morgan +RR 08089 2002 281.020 Otero +RR 08091 2002 0.000 Ouray +RR 08093 2002 0.000 Park +RR 08095 2002 0.000 Phillips +RR 08097 2002 0.000 Pitkin +RR 08099 2002 97.580 Prowers +RR 08101 2002 816.760 Pueblo +RR 08103 2002 0.000 Rio Blanco +RR 08105 2002 22.400 Rio Grande +RR 08107 2002 193.580 Routt +RR 08109 2002 0.000 Saguache +RR 08111 2002 0.000 San Juan +RR 08113 2002 0.000 San Miguel +RR 08115 2002 128.140 Sedgwick +RR 08117 2002 0.000 Summit +RR 08119 2002 0.000 Teller +RR 08121 2002 501.420 Washington +RR 08123 2002 1374.250 Weld +RR 08125 2002 212.060 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_RVPRK.ALO new file mode 100644 index 0000000..ba6ffcb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_RVPRK.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 08000 2002 233 CO +RVP 08001 2002 2 Adams +RVP 08003 2002 0 Alamosa +RVP 08005 2002 2 Arapahoe +RVP 08007 2002 4 Archuleta +RVP 08009 2002 0 Baca +RVP 08011 2002 0 Bent +RVP 08013 2002 6 Boulder +RVP 08014 2002 0 Broomfield +RVP 08015 2002 14 Chaffee +RVP 08017 2002 0 Cheyenne +RVP 08019 2002 0 Clear Creek +RVP 08021 2002 1 Conejos +RVP 08023 2002 2 Costilla +RVP 08025 2002 0 Crowley +RVP 08027 2002 3 Custer +RVP 08029 2002 4 Delta +RVP 08031 2002 5 Denver +RVP 08033 2002 0 Dolores +RVP 08035 2002 4 Douglas +RVP 08037 2002 5 Eagle +RVP 08039 2002 1 Elbert +RVP 08041 2002 14 El Paso +RVP 08043 2002 4 Fremont +RVP 08045 2002 3 Garfield +RVP 08047 2002 1 Gilpin +RVP 08049 2002 12 Grand +RVP 08051 2002 12 Gunnison +RVP 08053 2002 3 Hinsdale +RVP 08055 2002 1 Huerfano +RVP 08057 2002 4 Jackson +RVP 08059 2002 9 Jefferson +RVP 08061 2002 0 Kiowa +RVP 08063 2002 0 Kit Carson +RVP 08065 2002 2 Lake +RVP 08067 2002 10 La Plata +RVP 08069 2002 16 Larimer +RVP 08071 2002 2 Las Animas +RVP 08073 2002 2 Lincoln +RVP 08075 2002 1 Logan +RVP 08077 2002 7 Mesa +RVP 08079 2002 7 Mineral +RVP 08081 2002 1 Moffat +RVP 08083 2002 7 Montezuma +RVP 08085 2002 5 Montrose +RVP 08087 2002 0 Morgan +RVP 08089 2002 0 Otero +RVP 08091 2002 3 Ouray +RVP 08093 2002 9 Park +RVP 08095 2002 0 Phillips +RVP 08097 2002 6 Pitkin +RVP 08099 2002 0 Prowers +RVP 08101 2002 2 Pueblo +RVP 08103 2002 6 Rio Blanco +RVP 08105 2002 7 Rio Grande +RVP 08107 2002 5 Routt +RVP 08109 2002 1 Saguache +RVP 08111 2002 0 San Juan +RVP 08113 2002 3 San Miguel +RVP 08115 2002 0 Sedgwick +RVP 08117 2002 2 Summit +RVP 08119 2002 9 Teller +RVP 08121 2002 0 Washington +RVP 08123 2002 4 Weld +RVP 08125 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_SBC.ALO new file mode 100644 index 0000000..bf722bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_SBC.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 9499 +SBC 08000 2002 9499 CO 9499 +SBC 08001 2000 521 Adams 0.144347 521 +SBC 08001 2001 896 Adams 8960.248062 +SBC 08003 2002 4 Alamosa +SBC 08005 2002 1767 Arapahoe +SBC 08007 2002 4 Archuleta +SBC 08009 2002 0 Baca +SBC 08011 2002 0 Bent +SBC 08013 2000 1017 Boulder 0.281559 1017 +SBC 08013 2001 764 Boulder 7640.211517 +SBC 08014 2000 0 Broomfield 0 0 +SBC 08014 2001 65 Broomfield 650.017996 +SBC 08015 2002 4 Chaffee +SBC 08017 2002 4 Cheyenne +SBC 08019 2002 2 Clear Creek +SBC 08021 2002 4 Conejos +SBC 08023 2002 0 Costilla +SBC 08025 2002 0 Crowley +SBC 08027 2002 0 Custer +SBC 08029 2002 4 Delta +SBC 08031 2002 669 Denver +SBC 08033 2002 0 Dolores +SBC 08035 2002 916 Douglas +SBC 08037 2002 119 Eagle +SBC 08039 2002 57 Elbert +SBC 08041 2002 906 El Paso +SBC 08043 2002 14 Fremont +SBC 08045 2002 72 Garfield +SBC 08047 2002 0 Gilpin +SBC 08049 2002 7 Grand +SBC 08051 2002 12 Gunnison +SBC 08053 2002 0 Hinsdale +SBC 08055 2002 4 Huerfano +SBC 08057 2002 0 Jackson +SBC 08059 2000 1836 Jefferson 0.508233 1836 +SBC 08059 2001 1298 Jefferson 12980.359358 +SBC 08061 2002 0 Kiowa +SBC 08063 2002 4 Kit Carson +SBC 08065 2002 0 Lake +SBC 08067 2002 52 La Plata +SBC 08069 2002 766 Larimer +SBC 08071 2002 4 Las Animas +SBC 08073 2002 0 Lincoln +SBC 08075 2002 4 Logan +SBC 08077 2002 151 Mesa +SBC 08079 2002 0 Mineral +SBC 08081 2002 4 Moffat +SBC 08083 2002 4 Montezuma +SBC 08085 2002 11 Montrose +SBC 08087 2002 4 Morgan +SBC 08089 2002 4 Otero +SBC 08091 2002 4 Ouray +SBC 08093 2002 5 Park +SBC 08095 2002 0 Phillips +SBC 08097 2002 36 Pitkin +SBC 08099 2002 4 Prowers +SBC 08101 2002 150 Pueblo +SBC 08103 2002 4 Rio Blanco +SBC 08105 2002 4 Rio Grande +SBC 08107 2002 32 Routt +SBC 08109 2002 0 Saguache +SBC 08111 2002 0 San Juan +SBC 08113 2002 29 San Miguel +SBC 08115 2002 4 Sedgwick +SBC 08117 2002 24 Summit +SBC 08119 2002 6 Teller +SBC 08121 2002 4 Washington +SBC 08123 2000 238 Weld 0.065862 238 +SBC 08123 2001 589 Weld 5890.163068 +SBC 08125 2002 4 Yuma +/END/ + 3612.0 1.0000 1.0000 3612.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_SBR.ALO new file mode 100644 index 0000000..8cfbe62 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_SBR.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +9/23/05 epa: allocate 2002 Broomfield to pre-2001 counties using 1997 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 1928962 +SBR 08000 2002 1928962 CO 1928962 +SBR 08001 2000 132679 Adams 0.233305 132679 +SBR 08001 2001 141385 Adams 1413850.248614 +SBR 08003 2002 6296 Alamosa +SBR 08005 2002 212801 Arapahoe +SBR 08007 2002 6944 Archuleta +SBR 08009 2002 2400 Baca +SBR 08011 2002 2400 Bent +SBR 08013 2000 120992 Boulder 0.212755 120992 +SBR 08013 2001 116753 Boulder 1167530.205301 +SBR 08014 2000 0 Broomfield 0 0 +SBR 08014 2001 16288 Broomfield 162880.028641 +SBR 08015 2002 8928 Chaffee +SBR 08017 2002 1126 Cheyenne +SBR 08019 2002 5230 Clear Creek +SBR 08021 2002 3945 Conejos +SBR 08023 2002 2241 Costilla +SBR 08025 2002 1585 Crowley +SBR 08027 2002 3250 Custer +SBR 08029 2002 12687 Delta +SBR 08031 2002 258407 Denver +SBR 08033 2002 1228 Dolores +SBR 08035 2002 77094 Douglas +SBR 08037 2002 23427 Eagle +SBR 08039 2002 7789 Elbert +SBR 08041 2002 216019 El Paso +SBR 08043 2002 18128 Fremont +SBR 08045 2002 18851 Garfield +SBR 08047 2002 3054 Gilpin +SBR 08049 2002 11944 Grand +SBR 08051 2002 9682 Gunnison +SBR 08053 2002 1316 Hinsdale +SBR 08055 2002 4790 Huerfano +SBR 08057 2002 1186 Jackson +SBR 08059 2000 249334 Jefferson 0.438434 249334 +SBR 08059 2001 218646 Jefferson 2186460.384472 +SBR 08061 2002 824 Kiowa +SBR 08063 2002 3505 Kit Carson +SBR 08065 2002 4036 Lake +SBR 08067 2002 21946 La Plata +SBR 08069 2002 113512 Larimer +SBR 08071 2002 7787 Las Animas +SBR 08073 2002 2439 Lincoln +SBR 08075 2002 8623 Logan +SBR 08077 2002 51844 Mesa +SBR 08079 2002 1132 Mineral +SBR 08081 2002 5800 Moffat +SBR 08083 2002 10851 Montezuma +SBR 08085 2002 15162 Montrose +SBR 08087 2002 10717 Morgan +SBR 08089 2002 8871 Otero +SBR 08091 2002 2308 Ouray +SBR 08093 2002 11511 Park +SBR 08095 2002 2037 Phillips +SBR 08097 2002 10527 Pitkin +SBR 08099 2002 6066 Prowers +SBR 08101 2002 61634 Pueblo +SBR 08103 2002 2915 Rio Blanco +SBR 08105 2002 6254 Rio Grande +SBR 08107 2002 12181 Routt +SBR 08109 2002 3386 Saguache +SBR 08111 2002 634 San Juan +SBR 08113 2002 5442 San Miguel +SBR 08115 2002 1386 Sedgwick +SBR 08117 2002 26511 Summit +SBR 08119 2002 11005 Teller +SBR 08121 2002 2341 Washington +SBR 08123 2000 65687 Weld 0.115505 65687 +SBR 08123 2001 75620 Weld 756200.132972 +SBR 08125 2002 4335 Yuma +/END/ + 568692.0 1.0000 1.0000568692.0 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_SNOWM.ALO new file mode 100644 index 0000000..3bc3282 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_SNOWM.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 08000 2002 8194 CO +SNM 08001 2002 0 Adams +SNM 08003 2002 66 Alamosa +SNM 08005 2002 0 Arapahoe +SNM 08007 2002 90 Archuleta +SNM 08009 2002 0 Baca +SNM 08011 2002 0 Bent +SNM 08013 2002 0 Boulder +SNM 08014 2002 0 Broomfield +SNM 08015 2002 59 Chaffee +SNM 08017 2002 0 Cheyenne +SNM 08019 2002 105 Clear Creek +SNM 08021 2002 119 Conejos +SNM 08023 2002 276 Costilla +SNM 08025 2002 0 Crowley +SNM 08027 2002 273 Custer +SNM 08029 2002 34 Delta +SNM 08031 2002 0 Denver +SNM 08033 2002 539 Dolores +SNM 08035 2002 5 Douglas +SNM 08037 2002 23 Eagle +SNM 08039 2002 0 Elbert +SNM 08041 2002 0 El Paso +SNM 08043 2002 21 Fremont +SNM 08045 2002 21 Garfield +SNM 08047 2002 0 Gilpin +SNM 08049 2002 78 Grand +SNM 08051 2002 71 Gunnison +SNM 08053 2002 1282 Hinsdale +SNM 08055 2002 126 Huerfano +SNM 08057 2002 651 Jackson +SNM 08059 2002 0 Jefferson +SNM 08061 2002 0 Kiowa +SNM 08063 2002 0 Kit Carson +SNM 08065 2002 128 Lake +SNM 08067 2002 22 La Plata +SNM 08069 2002 4 Larimer +SNM 08071 2002 65 Las Animas +SNM 08073 2002 0 Lincoln +SNM 08075 2002 0 Logan +SNM 08077 2002 0 Mesa +SNM 08079 2002 1167 Mineral +SNM 08081 2002 75 Moffat +SNM 08083 2002 42 Montezuma +SNM 08085 2002 28 Montrose +SNM 08087 2002 0 Morgan +SNM 08089 2002 0 Otero +SNM 08091 2002 252 Ouray +SNM 08093 2002 62 Park +SNM 08095 2002 0 Phillips +SNM 08097 2002 67 Pitkin +SNM 08099 2002 0 Prowers +SNM 08101 2002 0 Pueblo +SNM 08103 2002 167 Rio Blanco +SNM 08105 2002 82 Rio Grande +SNM 08107 2002 49 Routt +SNM 08109 2002 155 Saguache +SNM 08111 2002 1764 San Juan +SNM 08113 2002 140 San Miguel +SNM 08115 2002 0 Sedgwick +SNM 08117 2002 40 Summit +SNM 08119 2002 46 Teller +SNM 08121 2002 0 Washington +SNM 08123 2002 0 Weld +SNM 08125 2002 0 Yuma +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_WIB.ALO new file mode 100644 index 0000000..5dfe41e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_WIB.ALO @@ -0,0 +1,98 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +9/23/05 epa: Corrects Broomfield water area and allocates to pre-2001 counties. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 961.00 +WIB 08000 1990 961 CO 961.00 +WIB 08001 1990 15.00 Adams 15 +WIB 08001 2001 14.75 Adams 14.75 +WIB 08003 1990 2 Alamosa +WIB 08005 1990 6 Arapahoe +WIB 08007 1990 14 Archuleta +WIB 08009 1990 4 Baca +WIB 08011 1990 71 Bent +WIB 08013 1990 23.00 Boulder 23 +WIB 08013 2001 22.75 Boulder 22.75 +WIB 08014 1990 0 Broomfield 0 +WIB 08014 2001 1 Broomfield 1 +WIB 08015 1990 4 Chaffee +WIB 08017 1990 0 Cheyenne +WIB 08019 1990 3 Clear Creek +WIB 08021 1990 9 Conejos +WIB 08023 1990 9 Costilla +WIB 08025 1990 29 Crowley +WIB 08027 1990 3 Custer +WIB 08029 1990 17 Delta +WIB 08031 1990 4 Denver +WIB 08033 1990 3 Dolores +WIB 08035 1990 7 Douglas +WIB 08037 1990 10 Eagle +WIB 08039 1990 0 Elbert +WIB 08041 1990 8 El Paso +WIB 08043 1990 3 Fremont +WIB 08045 1990 22 Garfield +WIB 08047 1990 1 Gilpin +WIB 08049 1990 52 Grand +WIB 08051 1990 54 Gunnison +WIB 08053 1990 14 Hinsdale +WIB 08055 1990 6 Huerfano +WIB 08057 1990 20 Jackson +WIB 08059 1990 15.50 Jefferson 15.5 +WIB 08059 2001 15.25 Jefferson 15.25 +WIB 08061 1990 38 Kiowa +WIB 08063 1990 2 Kit Carson +WIB 08065 1990 18 Lake +WIB 08067 1990 20 La Plata +WIB 08069 1990 84 Larimer +WIB 08071 1990 7 Las Animas +WIB 08073 1990 1 Lincoln +WIB 08075 1990 16 Logan +WIB 08077 1990 35 Mesa +WIB 08079 1990 5 Mineral +WIB 08081 1990 22 Moffat +WIB 08083 1990 8 Montezuma +WIB 08085 1990 5 Montrose +WIB 08087 1990 22 Morgan +WIB 08089 1990 18 Otero +WIB 08091 1990 1 Ouray +WIB 08093 1990 26 Park +WIB 08095 1990 0 Phillips +WIB 08097 1990 7 Pitkin +WIB 08099 1990 10 Prowers +WIB 08101 1990 23 Pueblo +WIB 08103 1990 5 Rio Blanco +WIB 08105 1990 1 Rio Grande +WIB 08107 1990 17 Routt +WIB 08109 1990 5 Saguache +WIB 08111 1990 2 San Juan +WIB 08113 1990 5 San Miguel +WIB 08115 1990 4 Sedgwick +WIB 08117 1990 29 Summit +WIB 08119 1990 5 Teller +WIB 08121 1990 8 Washington +WIB 08123 1990 75.50 Weld 75.5 +WIB 08123 2001 75.25 Weld 75.25 +WIB 08125 1990 8 Yuma +/END/ + + 129.00 129.00 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CO_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CO_WOB.ALO new file mode 100644 index 0000000..e31a022 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CO_WOB.ALO @@ -0,0 +1,98 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +9/23/05 epa: Corrects Broomfield water area and allocates to pre-2001 counties. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ 961.00 +WOB 08000 1990 961 CO 961.00 +WOB 08001 1990 15.00 Adams 15 +WOB 08001 2001 14.75 Adams 14.75 +WOB 08003 1990 2 Alamosa +WOB 08005 1990 6 Arapahoe +WOB 08007 1990 14 Archuleta +WOB 08009 1990 4 Baca +WOB 08011 1990 71 Bent +WOB 08013 1990 23.00 Boulder 23 +WOB 08013 2001 22.75 Boulder 22.75 +WOB 08014 1990 0 Broomfield 0 +WOB 08014 2001 1 Broomfield 1 +WOB 08015 1990 4 Chaffee +WOB 08017 1990 0 Cheyenne +WOB 08019 1990 3 Clear Creek +WOB 08021 1990 9 Conejos +WOB 08023 1990 9 Costilla +WOB 08025 1990 29 Crowley +WOB 08027 1990 3 Custer +WOB 08029 1990 17 Delta +WOB 08031 1990 4 Denver +WOB 08033 1990 3 Dolores +WOB 08035 1990 7 Douglas +WOB 08037 1990 10 Eagle +WOB 08039 1990 0 Elbert +WOB 08041 1990 8 El Paso +WOB 08043 1990 3 Fremont +WOB 08045 1990 22 Garfield +WOB 08047 1990 1 Gilpin +WOB 08049 1990 52 Grand +WOB 08051 1990 54 Gunnison +WOB 08053 1990 14 Hinsdale +WOB 08055 1990 6 Huerfano +WOB 08057 1990 20 Jackson +WOB 08059 1990 15.50 Jefferson 15.5 +WOB 08059 2001 15.25 Jefferson 15.25 +WOB 08061 1990 38 Kiowa +WOB 08063 1990 2 Kit Carson +WOB 08065 1990 18 Lake +WOB 08067 1990 20 La Plata +WOB 08069 1990 84 Larimer +WOB 08071 1990 7 Las Animas +WOB 08073 1990 1 Lincoln +WOB 08075 1990 16 Logan +WOB 08077 1990 35 Mesa +WOB 08079 1990 5 Mineral +WOB 08081 1990 22 Moffat +WOB 08083 1990 8 Montezuma +WOB 08085 1990 5 Montrose +WOB 08087 1990 22 Morgan +WOB 08089 1990 18 Otero +WOB 08091 1990 1 Ouray +WOB 08093 1990 26 Park +WOB 08095 1990 0 Phillips +WOB 08097 1990 7 Pitkin +WOB 08099 1990 10 Prowers +WOB 08101 1990 23 Pueblo +WOB 08103 1990 5 Rio Blanco +WOB 08105 1990 1 Rio Grande +WOB 08107 1990 17 Routt +WOB 08109 1990 5 Saguache +WOB 08111 1990 2 San Juan +WOB 08113 1990 5 San Miguel +WOB 08115 1990 4 Sedgwick +WOB 08117 1990 29 Summit +WOB 08119 1990 5 Teller +WOB 08121 1990 8 Washington +WOB 08123 1990 75.50 Weld 75.5 +WOB 08123 2001 75.25 Weld 75.25 +WOB 08125 1990 8 Yuma +/END/ + + 129.00 129.00 diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_AIRTR.ALO new file mode 100644 index 0000000..96d68b3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_AIRTR.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 09000 2002 412.004 CT +AIR 09001 2002 1.370 Fairfield +AIR 09003 2002 409.310 Hartford +AIR 09005 2002 0.000 Litchfield +AIR 09007 2002 0.210 Middlesex +AIR 09009 2002 0.434 New Haven +AIR 09011 2002 0.539 New London +AIR 09013 2002 0.000 Tolland +AIR 09015 2002 0.140 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_COAL.ALO new file mode 100644 index 0000000..11e3925 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_COAL.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 09000 2002 0 CT +MIN 09001 2002 0 Fairfield +MIN 09003 2002 0 Hartford +MIN 09005 2002 0 Litchfield +MIN 09007 2002 0 Middlesex +MIN 09009 2002 0 New Haven +MIN 09011 2002 0 New London +MIN 09013 2002 0 Tolland +MIN 09015 2002 0 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_CONST.ALO new file mode 100644 index 0000000..905c8df --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_CONST.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 09000 2003 4722042 CT +CON 09001 2003 1329917 Fairfield +CON 09003 2003 956943 Hartford +CON 09005 2003 181848 Litchfield +CON 09007 2003 243821 Middlesex +CON 09009 2003 1058893 New Haven +CON 09011 2003 478627 New London +CON 09013 2003 212857 Tolland +CON 09015 2003 259136 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_FARMS.ALO new file mode 100644 index 0000000..26d0cea --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_FARMS.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 09000 2002 131248 CT +FRM 09001 2002 3795 Fairfield +FRM 09003 2002 22066 Hartford +FRM 09005 2002 33023 Litchfield +FRM 09007 2002 6419 Middlesex +FRM 09009 2002 10101 New Haven +FRM 09011 2002 19289 New London +FRM 09013 2002 14209 Tolland +FRM 09015 2002 22346 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_GOLF.ALO new file mode 100644 index 0000000..1ec1726 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_GOLF.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 09000 2002 157 CT +GC 09001 2002 38 Fairfield +GC 09003 2002 41 Hartford +GC 09005 2002 13 Litchfield +GC 09007 2002 7 Middlesex +GC 09009 2002 29 New Haven +GC 09011 2002 12 New London +GC 09013 2002 9 Tolland +GC 09015 2002 8 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_HOLSL.ALO new file mode 100644 index 0000000..e8be5da --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_HOLSL.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 09000 2002 4796 CT +COM 09001 2002 1505 Fairfield +COM 09003 2002 1277 Hartford +COM 09005 2002 232 Litchfield +COM 09007 2002 226 Middlesex +COM 09009 2002 1184 New Haven +COM 09011 2002 200 New London +COM 09013 2002 82 Tolland +COM 09015 2002 90 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_HOUSE.ALO new file mode 100644 index 0000000..7f601e6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_HOUSE.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 09000 2002 1402657 CT +HOU 09001 2002 343486 Fairfield +HOU 09003 2002 356233 Hartford +HOU 09005 2002 80616 Litchfield +HOU 09007 2002 68935 Middlesex +HOU 09009 2002 343587 New Haven +HOU 09011 2002 112094 New London +HOU 09013 2002 52993 Tolland +HOU 09015 2002 44713 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_LOGGN.ALO new file mode 100644 index 0000000..e18af98 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_LOGGN.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 09000 2002 33614777 CT +LOG 09001 2002 252433 Fairfield +LOG 09003 2002 1318832 Hartford +LOG 09005 2002 7497123 Litchfield +LOG 09007 2002 5447583 Middlesex +LOG 09009 2002 3798281 New Haven +LOG 09011 2002 4402024 New London +LOG 09013 2002 4917920 Tolland +LOG 09015 2002 5980582 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_LSCAP.ALO new file mode 100644 index 0000000..6b139d4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_LSCAP.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 09000 2002 5674 CT +LSC 09001 2002 2590 Fairfield +LSC 09003 2002 1260 Hartford +LSC 09005 2002 364 Litchfield +LSC 09007 2002 217 Middlesex +LSC 09009 2002 924 New Haven +LSC 09011 2002 124 New London +LSC 09013 2002 110 Tolland +LSC 09015 2002 85 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_MNFG.ALO new file mode 100644 index 0000000..39d2807 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_MNFG.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 09000 2002 419829 CT +MFG 09001 2002 107861 Fairfield +MFG 09003 2002 122915 Hartford +MFG 09005 2002 27338 Litchfield +MFG 09007 2002 23303 Middlesex +MFG 09009 2002 92967 New Haven +MFG 09011 2002 25608 New London +MFG 09013 2002 7506 Tolland +MFG 09015 2002 12331 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_OIL.ALO new file mode 100644 index 0000000..dae1d88 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_OIL.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 09000 2002 20 CT +OIL 09001 2002 8 Fairfield +OIL 09003 2002 4 Hartford +OIL 09005 2002 0 Litchfield +OIL 09007 2002 0 Middlesex +OIL 09009 2002 8 New Haven +OIL 09011 2002 0 New London +OIL 09013 2002 0 Tolland +OIL 09015 2002 0 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_POP.ALO new file mode 100644 index 0000000..dad9241 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_POP.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 09000 2002 3459006 CT +POP 09001 2002 894820 Fairfield +POP 09003 2002 867072 Hartford +POP 09005 2002 186414 Litchfield +POP 09007 2002 159586 Middlesex +POP 09009 2002 834856 New Haven +POP 09011 2002 262718 New London +POP 09013 2002 142390 Tolland +POP 09015 2002 111150 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_RAIL.ALO new file mode 100644 index 0000000..b520a57 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_RAIL.ALO @@ -0,0 +1,36 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 09000 2002 11157.783 CT +RR 09001 2002 2886.438 Fairfield +RR 09003 2002 2796.931 Hartford +RR 09005 2002 601.319 Litchfield +RR 09007 2002 514.780 Middlesex +RR 09009 2002 2693.011 New Haven +RR 09011 2002 847.455 New London +RR 09013 2002 459.310 Tolland +RR 09015 2002 358.539 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_RVPRK.ALO new file mode 100644 index 0000000..75a2d47 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_RVPRK.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 09000 2002 53 CT +RVP 09001 2002 3 Fairfield +RVP 09003 2002 2 Hartford +RVP 09005 2002 13 Litchfield +RVP 09007 2002 6 Middlesex +RVP 09009 2002 3 New Haven +RVP 09011 2002 13 New London +RVP 09013 2002 3 Tolland +RVP 09015 2002 10 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_SBC.ALO new file mode 100644 index 0000000..8a67357 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_SBC.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 09000 2002 5674 CT +SBC 09001 2002 2590 Fairfield +SBC 09003 2002 1260 Hartford +SBC 09005 2002 364 Litchfield +SBC 09007 2002 217 Middlesex +SBC 09009 2002 924 New Haven +SBC 09011 2002 124 New London +SBC 09013 2002 110 Tolland +SBC 09015 2002 85 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_SBR.ALO new file mode 100644 index 0000000..a603c3d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_SBR.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 09000 2002 1402657 CT +SBR 09001 2002 343486 Fairfield +SBR 09003 2002 356233 Hartford +SBR 09005 2002 80616 Litchfield +SBR 09007 2002 68935 Middlesex +SBR 09009 2002 343587 New Haven +SBR 09011 2002 112094 New London +SBR 09013 2002 52993 Tolland +SBR 09015 2002 44713 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_SNOWM.ALO new file mode 100644 index 0000000..6002ac4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_SNOWM.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 09000 2002 5 CT +SNM 09001 2002 0 Fairfield +SNM 09003 2002 0 Hartford +SNM 09005 2002 5 Litchfield +SNM 09007 2002 0 Middlesex +SNM 09009 2002 0 New Haven +SNM 09011 2002 0 New London +SNM 09013 2002 0 Tolland +SNM 09015 2002 0 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_WIB.ALO new file mode 100644 index 0000000..73f8255 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_WIB.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 09000 1990 1148 CT +WIB 09001 1990 316 Fairfield +WIB 09003 1990 39 Hartford +WIB 09005 1990 64 Litchfield +WIB 09007 1990 119 Middlesex +WIB 09009 1990 363 New Haven +WIB 09011 1990 206 New London +WIB 09013 1990 18 Tolland +WIB 09015 1990 23 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/CT_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/CT_WOB.ALO new file mode 100644 index 0000000..4ae6fa7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/CT_WOB.ALO @@ -0,0 +1,33 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 09000 1990 508 CT +WOB 09001 1990 110 Fairfield +WOB 09003 1990 39 Hartford +WOB 09005 1990 64 Litchfield +WOB 09007 1990 55 Middlesex +WOB 09009 1990 91 New Haven +WOB 09011 1990 108 New London +WOB 09013 1990 18 Tolland +WOB 09015 1990 23 Windham +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_AIRTR.ALO new file mode 100644 index 0000000..8f7e939 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_AIRTR.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 11000 2002 0.000 DC +AIR 11001 2002 0.000 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_COAL.ALO new file mode 100644 index 0000000..7cb5b22 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_COAL.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 11000 2002 0 DC +MIN 11001 2002 0 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_CONST.ALO new file mode 100644 index 0000000..67c9036 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_CONST.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 11000 2003 1814698 DC +CON 11001 2003 1814698 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_FARMS.ALO new file mode 100644 index 0000000..2a06d84 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_FARMS.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 11000 2002 0 DC +FRM 11001 2002 0 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_GOLF.ALO new file mode 100644 index 0000000..bcfb017 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_GOLF.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 11000 2002 6 DC +GC 11001 2002 6 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_HOLSL.ALO new file mode 100644 index 0000000..00b9b30 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_HOLSL.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 11000 2002 338 DC +COM 11001 2002 338 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_HOUSE.ALO new file mode 100644 index 0000000..650002b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_HOUSE.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 11000 2002 272636 DC +HOU 11001 2002 272636 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_LOGGN.ALO new file mode 100644 index 0000000..c25ab56 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_LOGGN.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 11000 2002 0 DC +LOG 11001 2002 0 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_LSCAP.ALO new file mode 100644 index 0000000..c95158f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_LSCAP.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 11000 2002 38 DC +LSC 11001 2002 38 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_MNFG.ALO new file mode 100644 index 0000000..8480a81 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_MNFG.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 11000 2002 14269 DC +MFG 11001 2002 14269 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_OIL.ALO new file mode 100644 index 0000000..9566ce2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_OIL.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 11000 2002 7 DC +OIL 11001 2002 7 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_POP.ALO new file mode 100644 index 0000000..ece3a11 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_POP.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 11000 2002 564643 DC +POP 11001 2002 564643 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_RAIL.ALO new file mode 100644 index 0000000..25d5189 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_RAIL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 11000 2002 368.590 DC +RR 11001 2002 368.590 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_RVPRK.ALO new file mode 100644 index 0000000..36c1867 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_RVPRK.ALO @@ -0,0 +1,29 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +1/26/06 Change zeros to ones to allow all the state MC/ATV to show up in + county level run. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 11000 2002 1 DC +RVP 11001 2002 1 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_SBC.ALO new file mode 100644 index 0000000..ef0be5b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_SBC.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 11000 2002 38 DC +SBC 11001 2002 38 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_SBR.ALO new file mode 100644 index 0000000..785d26f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_SBR.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 11000 2002 272636 DC +SBR 11001 2002 272636 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_SNOWM.ALO new file mode 100644 index 0000000..56c45e5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_SNOWM.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 11000 2002 0 DC +SNM 11001 2002 0 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_WIB.ALO new file mode 100644 index 0000000..ed23f0b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_WIB.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 11000 1990 18 DC +WIB 11001 1990 18 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DC_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DC_WOB.ALO new file mode 100644 index 0000000..df14afc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DC_WOB.ALO @@ -0,0 +1,26 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 11000 1990 18 DC +WOB 11001 1990 18 Washington DC +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_AIRTR.ALO new file mode 100644 index 0000000..accf391 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_AIRTR.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 10000 2002 6.990 DE +AIR 10001 2002 5.420 Kent +AIR 10003 2002 1.090 New Castle +AIR 10005 2002 0.480 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_COAL.ALO new file mode 100644 index 0000000..d5b1d92 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_COAL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 10000 2002 0 DE +MIN 10001 2002 0 Kent +MIN 10003 2002 0 New Castle +MIN 10005 2002 0 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_CONST.ALO new file mode 100644 index 0000000..226fa43 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_CONST.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 10000 2003 1592310 DE +CON 10001 2003 510089 Kent +CON 10003 2003 574000 New Castle +CON 10005 2003 508221 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_FARMS.ALO new file mode 100644 index 0000000..511869d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_FARMS.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 10000 2002 433105 DE +FRM 10001 2002 151787 Kent +FRM 10003 2002 57515 New Castle +FRM 10005 2002 223803 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_GOLF.ALO new file mode 100644 index 0000000..f3d743c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_GOLF.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 10000 2002 36 DE +GC 10001 2002 6 Kent +GC 10003 2002 19 New Castle +GC 10005 2002 11 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_HOLSL.ALO new file mode 100644 index 0000000..2c99e3c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_HOLSL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 10000 2002 953 DE +COM 10001 2002 94 Kent +COM 10003 2002 696 New Castle +COM 10005 2002 163 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_HOUSE.ALO new file mode 100644 index 0000000..8078a6d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_HOUSE.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 10000 2002 352030 DE +HOU 10001 2002 52563 Kent +HOU 10003 2002 203225 New Castle +HOU 10005 2002 96242 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_LOGGN.ALO new file mode 100644 index 0000000..e5ec323 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_LOGGN.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 10000 2002 13594991 DE +LOG 10001 2002 2095232 Kent +LOG 10003 2002 711445 New Castle +LOG 10005 2002 10788314 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_LSCAP.ALO new file mode 100644 index 0000000..b0a99cc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_LSCAP.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 10000 2002 1594 DE +LSC 10001 2002 180 Kent +LSC 10003 2002 1029 New Castle +LSC 10005 2002 385 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_MNFG.ALO new file mode 100644 index 0000000..642de16 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_MNFG.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 10000 2002 70147 DE +MFG 10001 2002 10651 Kent +MFG 10003 2002 45223 New Castle +MFG 10005 2002 14273 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_OIL.ALO new file mode 100644 index 0000000..e8d764f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_OIL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 10000 2002 146 DE +OIL 10001 2002 0 Kent +OIL 10003 2002 139 New Castle +OIL 10005 2002 7 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_POP.ALO new file mode 100644 index 0000000..fa52bff --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_POP.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 10000 2002 806105 DE +POP 10001 2002 131630 Kent +POP 10003 2002 510240 New Castle +POP 10005 2002 164235 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_RAIL.ALO new file mode 100644 index 0000000..8f5dc09 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_RAIL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 10000 2002 265.760 DE +RR 10001 2002 47.470 Kent +RR 10003 2002 194.450 New Castle +RR 10005 2002 23.840 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_RVPRK.ALO new file mode 100644 index 0000000..7a69d08 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_RVPRK.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 10000 2002 12 DE +RVP 10001 2002 1 Kent +RVP 10003 2002 1 New Castle +RVP 10005 2002 10 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_SBC.ALO new file mode 100644 index 0000000..68590e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_SBC.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 10000 2002 0 DE +SBC 10001 2002 0 Kent +SBC 10003 2002 0 New Castle +SBC 10005 2002 0 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_SBR.ALO new file mode 100644 index 0000000..20f0b56 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_SBR.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 10000 2002 0 DE +SBR 10001 2002 0 Kent +SBR 10003 2002 0 New Castle +SBR 10005 2002 0 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_SNOWM.ALO new file mode 100644 index 0000000..139ff00 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_SNOWM.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 10000 2002 0 DE +SNM 10001 2002 0 Kent +SNM 10003 2002 0 New Castle +SNM 10005 2002 0 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_WIB.ALO new file mode 100644 index 0000000..8629322 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_WIB.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 10000 1990 801 DE +WIB 10001 1990 275 Kent +WIB 10003 1990 115 New Castle +WIB 10005 1990 411 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/DE_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/DE_WOB.ALO new file mode 100644 index 0000000..8fb4fd0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/DE_WOB.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 10000 1990 261 DE +WOB 10001 1990 53 Kent +WOB 10003 1990 63 New Castle +WOB 10005 1990 145 Sussex +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FIPS.DAT b/NONROAD/NR08a/DATA/ALLOCATE/FIPS.DAT new file mode 100644 index 0000000..669456d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FIPS.DAT @@ -0,0 +1,3248 @@ +US Counties FIPS Input Data File + +----------------------------------------------------------------- +This data file contains only one packet. + +The format is as follows: + + + 1- 5 FIPS code (all individual 5-digit county codes) + 6 Blank + 7-10 Start year (4-digit. Blank default means all past years) + 11 Blank + 12-15 End year (4-digit. Blank default means all future years) + 16 Blank + 17-66 County name + + +FIPS StYr EnYr CountyName +----- ---- ---- ---------------------------------------- +/FIPS/ +01001 Autauga County +01003 Baldwin County +01005 Barbour County +01007 Bibb County +01009 Blount County +01011 Bullock County +01013 Butler County +01015 Calhoun County +01017 Chambers County +01019 Cherokee County +01021 Chilton County +01023 Choctaw County +01025 Clarke County +01027 Clay County +01029 Cleburne County +01031 Coffee County +01033 Colbert County +01035 Conecuh County +01037 Coosa County +01039 Covington County +01041 Crenshaw County +01043 Cullman County +01045 Dale County +01047 Dallas County +01049 De Kalb County +01051 Elmore County +01053 Escambia County +01055 Etowah County +01057 Fayette County +01059 Franklin County +01061 Geneva County +01063 Greene County +01065 Hale County +01067 Henry County +01069 Houston County +01071 Jackson County +01073 Jefferson County +01075 Lamar County +01077 Lauderdale County +01079 Lawrence County +01081 Lee County +01083 Limestone County +01085 Lowndes County +01087 Macon County +01089 Madison County +01091 Marengo County +01093 Marion County +01095 Marshall County +01097 Mobile County +01099 Monroe County +01101 Montgomery County +01103 Morgan County +01105 Perry County +01107 Pickens County +01109 Pike County +01111 Randolph County +01113 Russell County +01115 St Clair County +01117 Shelby County +01119 Sumter County +01121 Talladega County +01123 Tallapoosa County +01125 Tuscaloosa County +01127 Walker County +01129 Washington County +01131 Wilcox County +01133 Winston County +02013 1978 Aleutians East Borough +02016 1990 Aleutians West Census Area +02020 Anchorage Borough +02050 Bethel Census Area +02060 Bristol Bay Borough +02068 Denali Borough +02070 Dillingham Census Area +02090 Fairbanks North Star Borough +02100 Haines Borough +02110 Juneau Borough +02122 Kenai Peninsula Borough +02130 Ketchikan Gateway Borough +02150 Kodiak Island Borough +02164 1989 Lake and Peninsula Borough +02170 Matanuska-Susitna Borough +02180 Nome Census Area +02185 North Slope Borough +02188 1986 Northwest Arctic Borough +02201 Pr Of Wales-Out Ketchikan +02220 Sitka Borough +02231 1992 Skagway-Yakutat-Angoon Census Area +02232 1992 Skagway-Hoonah-Angoon Census Area +02240 Southeast Fairbanks Census Area +02261 Valdez-Cordova Census Area +02270 Wade Hampton Census Area +02280 Wrangell-Petersburg Census Area +02282 1992 Yakutat Borough +02290 Yukon-Koyukuk Census Area +04001 Apache County +04003 Cochise County +04005 Coconino County +04007 Gila County +04009 Graham County +04011 Greenlee County +04012 1983 La Paz +04013 Maricopa County +04015 Mohave County +04017 Navajo County +04019 Pima County +04021 Pinal County +04023 Santa Cruz County +04025 Yavapai County +04027 Yuma County +05001 Arkansas County +05003 Ashley County +05005 Baxter County +05007 Benton County +05009 Boone County +05011 Bradley County +05013 Calhoun County +05015 Carroll County +05017 Chicot County +05019 Clark County +05021 Clay County +05023 Cleburne County +05025 Cleveland County +05027 Columbia County +05029 Conway County +05031 Craighead County +05033 Crawford County +05035 Crittenden County +05037 Cross County +05039 Dallas County +05041 Desha County +05043 Drew County +05045 Faulkner County +05047 Franklin County +05049 Fulton County +05051 Garland County +05053 Grant County +05055 Greene County +05057 Hempstead County +05059 Hot Spring County +05061 Howard County +05063 Independence County +05065 Izard County +05067 Jackson County +05069 Jefferson County +05071 Johnson County +05073 Lafayette County +05075 Lawrence County +05077 Lee County +05079 Lincoln County +05081 Little River County +05083 Logan County +05085 Lonoke County +05087 Madison County +05089 Marion County +05091 Miller County +05093 Mississippi County +05095 Monroe County +05097 Montgomery County +05099 Nevada County +05101 Newton County +05103 Ouachita County +05105 Perry County +05107 Phillips County +05109 Pike County +05111 Poinsett County +05113 Polk County +05115 Pope County +05117 Prairie County +05119 Pulaski County +05121 Randolph County +05123 St Francis County +05125 Saline County +05127 Scott County +05129 Searcy County +05131 Sebastian County +05133 Sevier County +05135 Sharp County +05137 Stone County +05139 Union County +05141 Van Buren County +05143 Washington County +05145 White County +05147 Woodruff County +05149 Yell County +06001 Alameda County +06003 Alpine County +06005 Amador County +06007 Butte County +06009 Calaveras County +06011 Colusa County +06013 Contra Costa County +06015 Del Norte County +06017 El Dorado County +06019 Fresno County +06021 Glenn County +06023 Humboldt County +06025 Imperial County +06027 Inyo County +06029 Kern County +06031 Kings County +06033 Lake County +06035 Lassen County +06037 Los Angeles County +06039 Madera County +06041 Marin County +06043 Mariposa County +06045 Mendocino County +06047 Merced County +06049 Modoc County +06051 Mono County +06053 Monterey County +06055 Napa County +06057 Nevada County +06059 Orange County +06061 Placer County +06063 Plumas County +06065 Riverside County +06067 Sacramento County +06069 San Benito County +06071 San Bernardino County +06073 San Diego County +06075 San Francisco County +06077 San Joaquin County +06079 San Luis Obispo County +06081 San Mateo County +06083 Santa Barbara County +06085 Santa Clara County +06087 Santa Cruz County +06089 Shasta County +06091 Sierra County +06093 Siskiyou County +06095 Solano County +06097 Sonoma County +06099 Stanislaus County +06101 Sutter County +06103 Tehama County +06105 Trinity County +06107 Tulare County +06109 Tuolumne County +06111 Ventura County +06113 Yolo County +06115 Yuba County +08001 Adams County +08003 Alamosa County +08005 Arapahoe County +08007 Archuleta County +08009 Baca County +08011 Bent County +08013 Boulder County +08014 2001 Broomfield County +08015 Chaffee County +08017 Cheyenne County +08019 Clear Creek County +08021 Conejos County +08023 Costilla County +08025 Crowley County +08027 Custer County +08029 Delta County +08031 Denver County +08033 Dolores County +08035 Douglas County +08037 Eagle County +08039 Elbert County +08041 El Paso County +08043 Fremont County +08045 Garfield County +08047 Gilpin County +08049 Grand County +08051 Gunnison County +08053 Hinsdale County +08055 Huerfano County +08057 Jackson County +08059 Jefferson County +08061 Kiowa County +08063 Kit Carson County +08065 Lake County +08067 La Plata County +08069 Larimer County +08071 Las Animas County +08073 Lincoln County +08075 Logan County +08077 Mesa County +08079 Mineral County +08081 Moffat County +08083 Montezuma County +08085 Montrose County +08087 Morgan County +08089 Otero County +08091 Ouray County +08093 Park County +08095 Phillips County +08097 Pitkin County +08099 Prowers County +08101 Pueblo County +08103 Rio Blanco County +08105 Rio Grande County +08107 Routt County +08109 Saguache County +08111 San Juan County +08113 San Miguel County +08115 Sedgwick County +08117 Summit County +08119 Teller County +08121 Washington County +08123 Weld County +08125 Yuma County +09001 Fairfield County +09003 Hartford County +09005 Litchfield County +09007 Middlesex County +09009 New Haven County +09011 New London County +09013 Tolland County +09015 Windham County +10001 Kent County +10003 New Castle County +10005 Sussex County +11001 Washington +12001 Alachua County +12003 Baker County +12005 Bay County +12007 Bradford County +12009 Brevard County +12011 Broward County +12013 Calhoun County +12015 Charlotte County +12017 Citrus County +12019 Clay County +12021 Collier County +12023 Columbia County +12025 1997 Dade County +12027 De Soto County +12029 Dixie County +12031 Duval County +12033 Escambia County +12035 Flagler County +12037 Franklin County +12039 Gadsden County +12041 Gilchrist County +12043 Glades County +12045 Gulf County +12047 Hamilton County +12049 Hardee County +12051 Hendry County +12053 Hernando County +12055 Highlands County +12057 Hillsborough County +12059 Holmes County +12061 Indian River County +12063 Jackson County +12065 Jefferson County +12067 Lafayette County +12069 Lake County +12071 Lee County +12073 Leon County +12075 Levy County +12077 Liberty County +12079 Madison County +12081 Manatee County +12083 Marion County +12085 Martin County +12086 1997 Miami-Dade County +12087 Monroe County +12089 Nassau County +12091 Okaloosa County +12093 Okeechobee County +12095 Orange County +12097 Osceola County +12099 Palm Beach County +12101 Pasco County +12103 Pinellas County +12105 Polk County +12107 Putnam County +12109 St Johns County +12111 St Lucie County +12113 Santa Rosa County +12115 Sarasota County +12117 Seminole County +12119 Sumter County +12121 Suwannee County +12123 Taylor County +12125 Union County +12127 Volusia County +12129 Wakulla County +12131 Walton County +12133 Washington County +13001 Appling County +13003 Atkinson County +13005 Bacon County +13007 Baker County +13009 Baldwin County +13011 Banks County +13013 Barrow County +13015 Bartow County +13017 Ben Hill County +13019 Berrien County +13021 Bibb County +13023 Bleckley County +13025 Brantley County +13027 Brooks County +13029 Bryan County +13031 Bulloch County +13033 Burke County +13035 Butts County +13037 Calhoun County +13039 Camden County +13043 Candler County +13045 Carroll County +13047 Catoosa County +13049 Charlton County +13051 Chatham County +13053 Chattahoochee County +13055 Chattooga County +13057 Cherokee County +13059 Clarke County +13061 Clay County +13063 Clayton County +13065 Clinch County +13067 Cobb County +13069 Coffee County +13071 Colquitt County +13073 Columbia County +13075 Cook County +13077 Coweta County +13079 Crawford County +13081 Crisp County +13083 Dade County +13085 Dawson County +13087 Decatur County +13089 De Kalb County +13091 Dodge County +13093 Dooly County +13095 Dougherty County +13097 Douglas County +13099 Early County +13101 Echols County +13103 Effingham County +13105 Elbert County +13107 Emanuel County +13109 Evans County +13111 Fannin County +13113 Fayette County +13115 Floyd County +13117 Forsyth County +13119 Franklin County +13121 Fulton County +13123 Gilmer County +13125 Glascock County +13127 Glynn County +13129 Gordon County +13131 Grady County +13133 Greene County +13135 Gwinnett County +13137 Habersham County +13139 Hall County +13141 Hancock County +13143 Haralson County +13145 Harris County +13147 Hart County +13149 Heard County +13151 Henry County +13153 Houston County +13155 Irwin County +13157 Jackson County +13159 Jasper County +13161 Jeff Davis County +13163 Jefferson County +13165 Jenkins County +13167 Johnson County +13169 Jones County +13171 Lamar County +13173 Lanier County +13175 Laurens County +13177 Lee County +13179 Liberty County +13181 Lincoln County +13183 Long County +13185 Lowndes County +13187 Lumpkin County +13189 Mc Duffie County +13191 Mc Intosh County +13193 Macon County +13195 Madison County +13197 Marion County +13199 Meriwether County +13201 Miller County +13205 Mitchell County +13207 Monroe County +13209 Montgomery County +13211 Morgan County +13213 Murray County +13215 Muscogee County +13217 Newton County +13219 Oconee County +13221 Oglethorpe County +13223 Paulding County +13225 Peach County +13227 Pickens County +13229 Pierce County +13231 Pike County +13233 Polk County +13235 Pulaski County +13237 Putnam County +13239 Quitman County +13241 Rabun County +13243 Randolph County +13245 Richmond County +13247 Rockdale County +13249 Schley County +13251 Screven County +13253 Seminole County +13255 Spalding County +13257 Stephens County +13259 Stewart County +13261 Sumter County +13263 Talbot County +13265 Taliaferro County +13267 Tattnall County +13269 Taylor County +13271 Telfair County +13273 Terrell County +13275 Thomas County +13277 Tift County +13279 Toombs County +13281 Towns County +13283 Treutlen County +13285 Troup County +13287 Turner County +13289 Twiggs County +13291 Union County +13293 Upson County +13295 Walker County +13297 Walton County +13299 Ware County +13301 Warren County +13303 Washington County +13305 Wayne County +13307 Webster County +13309 Wheeler County +13311 White County +13313 Whitfield County +13315 Wilcox County +13317 Wilkes County +13319 Wilkinson County +13321 Worth County +15001 Hawaii County +15003 Honolulu County +15005 Kalawao County +15007 Kauai County +15009 Maui County +16001 Ada County +16003 Adams County +16005 Bannock County +16007 Bear Lake County +16009 Benewah County +16011 Bingham County +16013 Blaine County +16015 Boise County +16017 Bonner County +16019 Bonneville County +16021 Boundary County +16023 Butte County +16025 Camas County +16027 Canyon County +16029 Caribou County +16031 Cassia County +16033 Clark County +16035 Clearwater County +16037 Custer County +16039 Elmore County +16041 Franklin County +16043 Fremont County +16045 Gem County +16047 Gooding County +16049 Idaho County +16051 Jefferson County +16053 Jerome County +16055 Kootenai County +16057 Latah County +16059 Lemhi County +16061 Lewis County +16063 Lincoln County +16065 Madison County +16067 Minidoka County +16069 Nez Perce County +16071 Oneida County +16073 Owyhee County +16075 Payette County +16077 Power County +16079 Shoshone County +16081 Teton County +16083 Twin Falls County +16085 Valley County +16087 Washington County +17001 Adams County +17003 Alexander County +17005 Bond County +17007 Boone County +17009 Brown County +17011 Bureau County +17013 Calhoun County +17015 Carroll County +17017 Cass County +17019 Champaign County +17021 Christian County +17023 Clark County +17025 Clay County +17027 Clinton County +17029 Coles County +17031 Cook County +17033 Crawford County +17035 Cumberland County +17037 De Kalb County +17039 De Witt County +17041 Douglas County +17043 Du Page County +17045 Edgar County +17047 Edwards County +17049 Effingham County +17051 Fayette County +17053 Ford County +17055 Franklin County +17057 Fulton County +17059 Gallatin County +17061 Greene County +17063 Grundy County +17065 Hamilton County +17067 Hancock County +17069 Hardin County +17071 Henderson County +17073 Henry County +17075 Iroquois County +17077 Jackson County +17079 Jasper County +17081 Jefferson County +17083 Jersey County +17085 Jo Daviess County +17087 Johnson County +17089 Kane County +17091 Kankakee County +17093 Kendall County +17095 Knox County +17097 Lake County +17099 La Salle County +17101 Lawrence County +17103 Lee County +17105 Livingston County +17107 Logan County +17109 Mc Donough County +17111 Mc Henry County +17113 Mc Lean County +17115 Macon County +17117 Macoupin County +17119 Madison County +17121 Marion County +17123 Marshall County +17125 Mason County +17127 Massac County +17129 Menard County +17131 Mercer County +17133 Monroe County +17135 Montgomery County +17137 Morgan County +17139 Moultrie County +17141 Ogle County +17143 Peoria County +17145 Perry County +17147 Piatt County +17149 Pike County +17151 Pope County +17153 Pulaski County +17155 Putnam County +17157 Randolph County +17159 Richland County +17161 Rock Island County +17163 St Clair County +17165 Saline County +17167 Sangamon County +17169 Schuyler County +17171 Scott County +17173 Shelby County +17175 Stark County +17177 Stephenson County +17179 Tazewell County +17181 Union County +17183 Vermilion County +17185 Wabash County +17187 Warren County +17189 Washington County +17191 Wayne County +17193 White County +17195 Whiteside County +17197 Will County +17199 Williamson County +17201 Winnebago County +17203 Woodford County +18001 Adams County +18003 Allen County +18005 Bartholomew County +18007 Benton County +18009 Blackford County +18011 Boone County +18013 Brown County +18015 Carroll County +18017 Cass County +18019 Clark County +18021 Clay County +18023 Clinton County +18025 Crawford County +18027 Daviess County +18029 Dearborn County +18031 Decatur County +18033 De Kalb County +18035 Delaware County +18037 Dubois County +18039 Elkhart County +18041 Fayette County +18043 Floyd County +18045 Fountain County +18047 Franklin County +18049 Fulton County +18051 Gibson County +18053 Grant County +18055 Greene County +18057 Hamilton County +18059 Hancock County +18061 Harrison County +18063 Hendricks County +18065 Henry County +18067 Howard County +18069 Huntington County +18071 Jackson County +18073 Jasper County +18075 Jay County +18077 Jefferson County +18079 Jennings County +18081 Johnson County +18083 Knox County +18085 Kosciusko County +18087 Lagrange County +18089 Lake County +18091 La Porte County +18093 Lawrence County +18095 Madison County +18097 Marion County +18099 Marshall County +18101 Martin County +18103 Miami County +18105 Monroe County +18107 Montgomery County +18109 Morgan County +18111 Newton County +18113 Noble County +18115 Ohio County +18117 Orange County +18119 Owen County +18121 Parke County +18123 Perry County +18125 Pike County +18127 Porter County +18129 Posey County +18131 Pulaski County +18133 Putnam County +18135 Randolph County +18137 Ripley County +18139 Rush County +18141 St Joseph County +18143 Scott County +18145 Shelby County +18147 Spencer County +18149 Starke County +18151 Steuben County +18153 Sullivan County +18155 Switzerland County +18157 Tippecanoe County +18159 Tipton County +18161 Union County +18163 Vanderburgh County +18165 Vermillion County +18167 Vigo County +18169 Wabash County +18171 Warren County +18173 Warrick County +18175 Washington County +18177 Wayne County +18179 Wells County +18181 White County +18183 Whitley County +19001 Adair County +19003 Adams County +19005 Allamakee County +19007 Appanoose County +19009 Audubon County +19011 Benton County +19013 Black Hawk County +19015 Boone County +19017 Bremer County +19019 Buchanan County +19021 Buena Vista County +19023 Butler County +19025 Calhoun County +19027 Carroll County +19029 Cass County +19031 Cedar County +19033 Cerro Gordo County +19035 Cherokee County +19037 Chickasaw County +19039 Clarke County +19041 Clay County +19043 Clayton County +19045 Clinton County +19047 Crawford County +19049 Dallas County +19051 Davis County +19053 Decatur County +19055 Delaware County +19057 Des Moines County +19059 Dickinson County +19061 Dubuque County +19063 Emmet County +19065 Fayette County +19067 Floyd County +19069 Franklin County +19071 Fremont County +19073 Greene County +19075 Grundy County +19077 Guthrie County +19079 Hamilton County +19081 Hancock County +19083 Hardin County +19085 Harrison County +19087 Henry County +19089 Howard County +19091 Humboldt County +19093 Ida County +19095 Iowa County +19097 Jackson County +19099 Jasper County +19101 Jefferson County +19103 Johnson County +19105 Jones County +19107 Keokuk County +19109 Kossuth County +19111 Lee County +19113 Linn County +19115 Louisa County +19117 Lucas County +19119 Lyon County +19121 Madison County +19123 Mahaska County +19125 Marion County +19127 Marshall County +19129 Mills County +19131 Mitchell County +19133 Monona County +19135 Monroe County +19137 Montgomery County +19139 Muscatine County +19141 O brien County +19143 Osceola County +19145 Page County +19147 Palo Alto County +19149 Plymouth County +19151 Pocahontas County +19153 Polk County +19155 Pottawattamie County +19157 Poweshiek County +19159 Ringgold County +19161 Sac County +19163 Scott County +19165 Shelby County +19167 Sioux County +19169 Story County +19171 Tama County +19173 Taylor County +19175 Union County +19177 Van Buren County +19179 Wapello County +19181 Warren County +19183 Washington County +19185 Wayne County +19187 Webster County +19189 Winnebago County +19191 Winneshiek County +19193 Woodbury County +19195 Worth County +19197 Wright County +20001 Allen County +20003 Anderson County +20005 Atchison County +20007 Barber County +20009 Barton County +20011 Bourbon County +20013 Brown County +20015 Butler County +20017 Chase County +20019 Chautauqua County +20021 Cherokee County +20023 Cheyenne County +20025 Clark County +20027 Clay County +20029 Cloud County +20031 Coffey County +20033 Comanche County +20035 Cowley County +20037 Crawford County +20039 Decatur County +20041 Dickinson County +20043 Doniphan County +20045 Douglas County +20047 Edwards County +20049 Elk County +20051 Ellis County +20053 Ellsworth County +20055 Finney County +20057 Ford County +20059 Franklin County +20061 Geary County +20063 Gove County +20065 Graham County +20067 Grant County +20069 Gray County +20071 Greeley County +20073 Greenwood County +20075 Hamilton County +20077 Harper County +20079 Harvey County +20081 Haskell County +20083 Hodgeman County +20085 Jackson County +20087 Jefferson County +20089 Jewell County +20091 Johnson County +20093 Kearney County +20095 Kingman County +20097 Kiowa County +20099 Labette County +20101 Lane County +20103 Leavenworth County +20105 Lincoln County +20107 Linn County +20109 Logan County +20111 Lyon County +20113 Mc Pherson County +20115 Marion County +20117 Marshall County +20119 Meade County +20121 Miami County +20123 Mitchell County +20125 Montgomery County +20127 Morris County +20129 Morton County +20131 Nemaha County +20133 Neosho County +20135 Ness County +20137 Norton County +20139 Osage County +20141 Osborne County +20143 Ottawa County +20145 Pawnee County +20147 Phillips County +20149 Pottawatomie County +20151 Pratt County +20153 Rawlins County +20155 Reno County +20157 Republic County +20159 Rice County +20161 Riley County +20163 Rooks County +20165 Rush County +20167 Russell County +20169 Saline County +20171 Scott County +20173 Sedgwick County +20175 Seward County +20177 Shawnee County +20179 Sheridan County +20181 Sherman County +20183 Smith County +20185 Stafford County +20187 Stanton County +20189 Stevens County +20191 Sumner County +20193 Thomas County +20195 Trego County +20197 Wabaunsee County +20199 Wallace County +20201 Washington County +20203 Wichita County +20205 Wilson County +20207 Woodson County +20209 Wyandotte County +21001 Adair County +21003 Allen County +21005 Anderson County +21007 Ballard County +21009 Barren County +21011 Bath County +21013 Bell County +21015 Boone County +21017 Bourbon County +21019 Boyd County +21021 Boyle County +21023 Bracken County +21025 Breathitt County +21027 Breckinridge County +21029 Bullitt County +21031 Butler County +21033 Caldwell County +21035 Calloway County +21037 Campbell County +21039 Carlisle County +21041 Carroll County +21043 Carter County +21045 Casey County +21047 Christian County +21049 Clark County +21051 Clay County +21053 Clinton County +21055 Crittenden County +21057 Cumberland County +21059 Daviess County +21061 Edmonson County +21063 Elliott County +21065 Estill County +21067 Fayette County +21069 Fleming County +21071 Floyd County +21073 Franklin County +21075 Fulton County +21077 Gallatin County +21079 Garrard County +21081 Grant County +21083 Graves County +21085 Grayson County +21087 Green County +21089 Greenup County +21091 Hancock County +21093 Hardin County +21095 Harlan County +21097 Harrison County +21099 Hart County +21101 Henderson County +21103 Henry County +21105 Hickman County +21107 Hopkins County +21109 Jackson County +21111 Jefferson County +21113 Jessamine County +21115 Johnson County +21117 Kenton County +21119 Knott County +21121 Knox County +21123 Larue County +21125 Laurel County +21127 Lawrence County +21129 Lee County +21131 Leslie County +21133 Letcher County +21135 Lewis County +21137 Lincoln County +21139 Livingston County +21141 Logan County +21143 Lyon County +21145 Mc Cracken County +21147 Mc Creary County +21149 Mc Lean County +21151 Madison County +21153 Magoffin County +21155 Marion County +21157 Marshall County +21159 Martin County +21161 Mason County +21163 Meade County +21165 Menifee County +21167 Mercer County +21169 Metcalfe County +21171 Monroe County +21173 Montgomery County +21175 Morgan County +21177 Muhlenberg County +21179 Nelson County +21181 Nicholas County +21183 Ohio County +21185 Oldham County +21187 Owen County +21189 Owsley County +21191 Pendleton County +21193 Perry County +21195 Pike County +21197 Powell County +21199 Pulaski County +21201 Robertson County +21203 Rockcastle County +21205 Rowan County +21207 Russell County +21209 Scott County +21211 Shelby County +21213 Simpson County +21215 Spencer County +21217 Taylor County +21219 Todd County +21221 Trigg County +21223 Trimble County +21225 Union County +21227 Warren County +21229 Washington County +21231 Wayne County +21233 Webster County +21235 Whitley County +21237 Wolfe County +21239 Woodford County +22001 Acadia Parish +22003 Allen Parish +22005 Ascension Parish +22007 Assumption Parish +22009 Avoyelles Parish +22011 Beauregard Parish +22013 Bienville Parish +22015 Bossier Parish +22017 Caddo Parish +22019 Calcasieu Parish +22021 Caldwell Parish +22023 Cameron Parish +22025 Catahoula Parish +22027 Claiborne Parish +22029 Concordia Parish +22031 De Soto Parish +22033 East Baton Rouge Parish +22035 East Carroll Parish +22037 East Feliciana Parish +22039 Evangeline Parish +22041 Franklin Parish +22043 Grant Parish +22045 Iberia Parish +22047 Iberville Parish +22049 Jackson Parish +22051 Jefferson Parish +22053 Jefferson Davis Parish +22055 Lafayette Parish +22057 Lafourche Parish +22059 La Salle Parish +22061 Lincoln Parish +22063 Livingston Parish +22065 Madison Parish +22067 Morehouse Parish +22069 Natchitoches Parish +22071 Orleans Parish +22073 Ouachita Parish +22075 Plaquemines Parish +22077 Pointe Coupee Parish +22079 Rapides Parish +22081 Red River Parish +22083 Richland Parish +22085 Sabine Parish +22087 St Bernard Parish +22089 St Charles Parish +22091 St Helena Parish +22093 St James Parish +22095 St John The Baptist Parish +22097 St Landry Parish +22099 St Martin Parish +22101 St Mary Parish +22103 St Tammany Parish +22105 Tangipahoa Parish +22107 Tensas Parish +22109 Terrebonne Parish +22111 Union Parish +22113 Vermilion Parish +22115 Vernon Parish +22117 Washington Parish +22119 Webster Parish +22121 West Baton Rouge Parish +22123 West Carroll Parish +22125 West Feliciana Parish +22127 Winn Parish +23001 Androscoggin County +23003 Aroostook County +23005 Cumberland County +23007 Franklin County +23009 Hancock County +23011 Kennebec County +23013 Knox County +23015 Lincoln County +23017 Oxford County +23019 Penobscot County +23021 Piscataquis County +23023 Sagadahoc County +23025 Somerset County +23027 Waldo County +23029 Washington County +23031 York County +24001 Allegany County +24003 Anne Arundel County +24005 Baltimore County +24009 Calvert County +24011 Caroline County +24013 Carroll County +24015 Cecil County +24017 Charles County +24019 Dorchester County +24021 Frederick County +24023 Garrett County +24025 Harford County +24027 Howard County +24029 Kent County +24031 Montgomery County +24033 Prince Georges County +24035 Queen Annes County +24037 St Marys County +24039 Somerset County +24041 Talbot County +24043 Washington County +24045 Wicomico County +24047 Worcester County +24510 Baltimore +25001 Barnstable County +25003 Berkshire County +25005 Bristol County +25007 Dukes County +25009 Essex County +25011 Franklin County +25013 Hampden County +25015 Hampshire County +25017 Middlesex County +25019 Nantucket County +25021 Norfolk County +25023 Plymouth County +25025 Suffolk County +25027 Worcester County +26001 Alcona County +26003 Alger County +26005 Allegan County +26007 Alpena County +26009 Antrim County +26011 Arenac County +26013 Baraga County +26015 Barry County +26017 Bay County +26019 Benzie County +26021 Berrien County +26023 Branch County +26025 Calhoun County +26027 Cass County +26029 Charlevoix County +26031 Cheboygan County +26033 Chippewa County +26035 Clare County +26037 Clinton County +26039 Crawford County +26041 Delta County +26043 Dickinson County +26045 Eaton County +26047 Emmet County +26049 Genesee County +26051 Gladwin County +26053 Gogebic County +26055 Grand Traverse County +26057 Gratiot County +26059 Hillsdale County +26061 Houghton County +26063 Huron County +26065 Ingham County +26067 Ionia County +26069 Iosco County +26071 Iron County +26073 Isabella County +26075 Jackson County +26077 Kalamazoo County +26079 Kalkaska County +26081 Kent County +26083 Keweenaw County +26085 Lake County +26087 Lapeer County +26089 Leelanau County +26091 Lenawee County +26093 Livingston County +26095 Luce County +26097 Mackinac County +26099 Macomb County +26101 Manistee County +26103 Marquette County +26105 Mason County +26107 Mecosta County +26109 Menominee County +26111 Midland County +26113 Missaukee County +26115 Monroe County +26117 Montcalm County +26119 Montmorency County +26121 Muskegon County +26123 Newaygo County +26125 Oakland County +26127 Oceana County +26129 Ogemaw County +26131 Ontonagon County +26133 Osceola County +26135 Oscoda County +26137 Otsego County +26139 Ottawa County +26141 Presque Isle County +26143 Roscommon County +26145 Saginaw County +26147 St Clair County +26149 St Joseph County +26151 Sanilac County +26153 Schoolcraft County +26155 Shiawassee County +26157 Tuscola County +26159 Van Buren County +26161 Washtenaw County +26163 Wayne County +26165 Wexford County +27001 Aitkin County +27003 Anoka County +27005 Becker County +27007 Beltrami County +27009 Benton County +27011 Big Stone County +27013 Blue Earth County +27015 Brown County +27017 Carlton County +27019 Carver County +27021 Cass County +27023 Chippewa County +27025 Chisago County +27027 Clay County +27029 Clearwater County +27031 Cook County +27033 Cottonwood County +27035 Crow Wing County +27037 Dakota County +27039 Dodge County +27041 Douglas County +27043 Faribault County +27045 Fillmore County +27047 Freeborn County +27049 Goodhue County +27051 Grant County +27053 Hennepin County +27055 Houston County +27057 Hubbard County +27059 Isanti County +27061 Itasca County +27063 Jackson County +27065 Kanabec County +27067 Kandiyohi County +27069 Kittson County +27071 Koochiching County +27073 Lac Qui Parle County +27075 Lake County +27077 Lake Of The Woods County +27079 Le Sueur County +27081 Lincoln County +27083 Lyon County +27085 Mc Leod County +27087 Mahnomen County +27089 Marshall County +27091 Martin County +27093 Meeker County +27095 Mille Lacs County +27097 Morrison County +27099 Mower County +27101 Murray County +27103 Nicollet County +27105 Nobles County +27107 Norman County +27109 Olmsted County +27111 Otter Tail County +27113 Pennington County +27115 Pine County +27117 Pipestone County +27119 Polk County +27121 Pope County +27123 Ramsey County +27125 Red Lake County +27127 Redwood County +27129 Renville County +27131 Rice County +27133 Rock County +27135 Roseau County +27137 St Louis County +27139 Scott County +27141 Sherburne County +27143 Sibley County +27145 Stearns County +27147 Steele County +27149 Stevens County +27151 Swift County +27153 Todd County +27155 Traverse County +27157 Wabasha County +27159 Wadena County +27161 Waseca County +27163 Washington County +27165 Watonwan County +27167 Wilkin County +27169 Winona County +27171 Wright County +27173 Yellow Medicine County +28001 Adams County +28003 Alcorn County +28005 Amite County +28007 Attala County +28009 Benton County +28011 Bolivar County +28013 Calhoun County +28015 Carroll County +28017 Chickasaw County +28019 Choctaw County +28021 Claiborne County +28023 Clarke County +28025 Clay County +28027 Coahoma County +28029 Copiah County +28031 Covington County +28033 De Soto County +28035 Forrest County +28037 Franklin County +28039 George County +28041 Greene County +28043 Grenada County +28045 Hancock County +28047 Harrison County +28049 Hinds County +28051 Holmes County +28053 Humphreys County +28055 Issaquena County +28057 Itawamba County +28059 Jackson County +28061 Jasper County +28063 Jefferson County +28065 Jefferson Davis County +28067 Jones County +28069 Kemper County +28071 Lafayette County +28073 Lamar County +28075 Lauderdale County +28077 Lawrence County +28079 Leake County +28081 Lee County +28083 Leflore County +28085 Lincoln County +28087 Lowndes County +28089 Madison County +28091 Marion County +28093 Marshall County +28095 Monroe County +28097 Montgomery County +28099 Neshoba County +28101 Newton County +28103 Noxubee County +28105 Oktibbeha County +28107 Panola County +28109 Pearl River County +28111 Perry County +28113 Pike County +28115 Pontotoc County +28117 Prentiss County +28119 Quitman County +28121 Rankin County +28123 Scott County +28125 Sharkey County +28127 Simpson County +28129 Smith County +28131 Stone County +28133 Sunflower County +28135 Tallahatchie County +28137 Tate County +28139 Tippah County +28141 Tishomingo County +28143 Tunica County +28145 Union County +28147 Walthall County +28149 Warren County +28151 Washington County +28153 Wayne County +28155 Webster County +28157 Wilkinson County +28159 Winston County +28161 Yalobusha County +28163 Yazoo County +29001 Adair County +29003 Andrew County +29005 Atchison County +29007 Audrain County +29009 Barry County +29011 Barton County +29013 Bates County +29015 Benton County +29017 Bollinger County +29019 Boone County +29021 Buchanan County +29023 Butler County +29025 Caldwell County +29027 Callaway County +29029 Camden County +29031 Cape Girardeau County +29033 Carroll County +29035 Carter County +29037 Cass County +29039 Cedar County +29041 Chariton County +29043 Christian County +29045 Clark County +29047 Clay County +29049 Clinton County +29051 Cole County +29053 Cooper County +29055 Crawford County +29057 Dade County +29059 Dallas County +29061 Daviess County +29063 De Kalb County +29065 Dent County +29067 Douglas County +29069 Dunklin County +29071 Franklin County +29073 Gasconade County +29075 Gentry County +29077 Greene County +29079 Grundy County +29081 Harrison County +29083 Henry County +29085 Hickory County +29087 Holt County +29089 Howard County +29091 Howell County +29093 Iron County +29095 Jackson County +29097 Jasper County +29099 Jefferson County +29101 Johnson County +29103 Knox County +29105 Laclede County +29107 Lafayette County +29109 Lawrence County +29111 Lewis County +29113 Lincoln County +29115 Linn County +29117 Livingston County +29119 Mc Donald County +29121 Macon County +29123 Madison County +29125 Maries County +29127 Marion County +29129 Mercer County +29131 Miller County +29133 Mississippi County +29135 Moniteau County +29137 Monroe County +29139 Montgomery County +29141 Morgan County +29143 New Madrid County +29145 Newton County +29147 Nodaway County +29149 Oregon County +29151 Osage County +29153 Ozark County +29155 Pemiscot County +29157 Perry County +29159 Pettis County +29161 Phelps County +29163 Pike County +29165 Platte County +29167 Polk County +29169 Pulaski County +29171 Putnam County +29173 Ralls County +29175 Randolph County +29177 Ray County +29179 Reynolds County +29181 Ripley County +29183 St Charles County +29185 St Clair County +29186 1979 Ste Genevieve County +29187 St Francois County +29189 St Louis County +29195 Saline County +29197 Schuyler County +29199 Scotland County +29201 Scott County +29203 Shannon County +29205 Shelby County +29207 Stoddard County +29209 Stone County +29211 Sullivan County +29213 Taney County +29215 Texas County +29217 Vernon County +29219 Warren County +29221 Washington County +29223 Wayne County +29225 Webster County +29227 Worth County +29229 Wright County +29510 St Louis +30001 Beaverhead County +30003 Big Horn County +30005 Blaine County +30007 Broadwater County +30009 Carbon County +30011 Carter County +30013 Cascade County +30015 Chouteau County +30017 Custer County +30019 Daniels County +30021 Dawson County +30023 Deer Lodge County +30025 Fallon County +30027 Fergus County +30029 Flathead County +30031 Gallatin County +30033 Garfield County +30035 Glacier County +30037 Golden Valley County +30039 Granite County +30041 Hill County +30043 Jefferson County +30045 Judith Basin County +30047 Lake County +30049 Lewis And Clark County +30051 Liberty County +30053 Lincoln County +30055 Mc Cone County +30057 Madison County +30059 Meagher County +30061 Mineral County +30063 Missoula County +30065 Musselshell County +30067 Park County +30069 Petroleum County +30071 Phillips County +30073 Pondera County +30075 Powder River County +30077 Powell County +30079 Prairie County +30081 Ravalli County +30083 Richland County +30085 Roosevelt County +30087 Rosebud County +30089 Sanders County +30091 Sheridan County +30093 Silver Bow County +30095 Stillwater County +30097 Sweet Grass County +30099 Teton County +30101 Toole County +30103 Treasure County +30105 Valley County +30107 Wheatland County +30109 Wibaux County +30111 Yellowstone County +30113 1997 Yellowstone National Park +31001 Adams County +31003 Antelope County +31005 Arthur County +31007 Banner County +31009 Blaine County +31011 Boone County +31013 Box Butte County +31015 Boyd County +31017 Brown County +31019 Buffalo County +31021 Burt County +31023 Butler County +31025 Cass County +31027 Cedar County +31029 Chase County +31031 Cherry County +31033 Cheyenne County +31035 Clay County +31037 Colfax County +31039 Cuming County +31041 Custer County +31043 Dakota County +31045 Dawes County +31047 Dawson County +31049 Deuel County +31051 Dixon County +31053 Dodge County +31055 Douglas County +31057 Dundy County +31059 Fillmore County +31061 Franklin County +31063 Frontier County +31065 Furnas County +31067 Gage County +31069 Garden County +31071 Garfield County +31073 Gosper County +31075 Grant County +31077 Greeley County +31079 Hall County +31081 Hamilton County +31083 Harlan County +31085 Hayes County +31087 Hitchcock County +31089 Holt County +31091 Hooker County +31093 Howard County +31095 Jefferson County +31097 Johnson County +31099 Kearney County +31101 Keith County +31103 Keya Paha County +31105 Kimball County +31107 Knox County +31109 Lancaster County +31111 Lincoln County +31113 Logan County +31115 Loup County +31117 Mc Pherson County +31119 Madison County +31121 Merrick County +31123 Morrill County +31125 Nance County +31127 Nemaha County +31129 Nuckolls County +31131 Otoe County +31133 Pawnee County +31135 Perkins County +31137 Phelps County +31139 Pierce County +31141 Platte County +31143 Polk County +31145 Red Willow County +31147 Richardson County +31149 Rock County +31151 Saline County +31153 Sarpy County +31155 Saunders County +31157 Scotts Bluff County +31159 Seward County +31161 Sheridan County +31163 Sherman County +31165 Sioux County +31167 Stanton County +31169 Thayer County +31171 Thomas County +31173 Thurston County +31175 Valley County +31177 Washington County +31179 Wayne County +31181 Webster County +31183 Wheeler County +31185 York County +32001 Churchill County +32003 Clark County +32005 Douglas County +32007 Elko County +32009 Esmeralda County +32011 Eureka County +32013 Humboldt County +32015 Lander County +32017 Lincoln County +32019 Lyon County +32021 Mineral County +32023 Nye County +32027 Pershing County +32029 Storey County +32031 Washoe County +32033 White Pine County +32510 Carson City +33001 Belknap County +33003 Carroll County +33005 Cheshire County +33007 Coos County +33009 Grafton County +33011 Hillsborough County +33013 Merrimack County +33015 Rockingham County +33017 Strafford County +33019 Sullivan County +34001 Atlantic County +34003 Bergen County +34005 Burlington County +34007 Camden County +34009 Cape May County +34011 Cumberland County +34013 Essex County +34015 Gloucester County +34017 Hudson County +34019 Hunterdon County +34021 Mercer County +34023 Middlesex County +34025 Monmouth County +34027 Morris County +34029 Ocean County +34031 Passaic County +34033 Salem County +34035 Somerset County +34037 Sussex County +34039 Union County +34041 Warren County +35001 Bernalillo County +35003 Catron County +35005 Chaves County +35006 1981 Cibola County +35007 Colfax County +35009 Curry County +35011 De Baca County +35013 Dona Ana County +35015 Eddy County +35017 Grant County +35019 Guadalupe County +35021 Harding County +35023 Hidalgo County +35025 Lea County +35027 Lincoln County +35028 Los Alamos County +35029 Luna County +35031 Mc Kinley County +35033 Mora County +35035 Otero County +35037 Quay County +35039 Rio Arriba County +35041 Roosevelt County +35043 Sandoval County +35045 San Juan County +35047 San Miguel County +35049 Santa Fe County +35051 Sierra County +35053 Socorro County +35055 Taos County +35057 Torrance County +35059 Union County +35061 Valencia County +36001 Albany County +36003 Allegany County +36005 Bronx County +36007 Broome County +36009 Cattaraugus County +36011 Cayuga County +36013 Chautauqua County +36015 Chemung County +36017 Chenango County +36019 Clinton County +36021 Columbia County +36023 Cortland County +36025 Delaware County +36027 Dutchess County +36029 Erie County +36031 Essex County +36033 Franklin County +36035 Fulton County +36037 Genesee County +36039 Greene County +36041 Hamilton County +36043 Herkimer County +36045 Jefferson County +36047 Kings County +36049 Lewis County +36051 Livingston County +36053 Madison County +36055 Monroe County +36057 Montgomery County +36059 Nassau County +36061 New York County +36063 Niagara County +36065 Oneida County +36067 Onondaga County +36069 Ontario County +36071 Orange County +36073 Orleans County +36075 Oswego County +36077 Otsego County +36079 Putnam County +36081 Queens County +36083 Rensselaer County +36085 Richmond County +36087 Rockland County +36089 St. Lawrence County +36091 Saratoga County +36093 Schenectady County +36095 Schoharie County +36097 Schuyler County +36099 Seneca County +36101 Steuben County +36103 Suffolk County +36105 Sullivan County +36107 Tioga County +36109 Tompkins County +36111 Ulster County +36113 Warren County +36115 Washington County +36117 Wayne County +36119 Westchester County +36121 Wyoming County +36123 Yates County +37001 Alamance County +37003 Alexander County +37005 Alleghany County +37007 Anson County +37009 Ashe County +37011 Avery County +37013 Beaufort County +37015 Bertie County +37017 Bladen County +37019 Brunswick County +37021 Buncombe County +37023 Burke County +37025 Cabarrus County +37027 Caldwell County +37029 Camden County +37031 Carteret County +37033 Caswell County +37035 Catawba County +37037 Chatham County +37039 Cherokee County +37041 Chowan County +37043 Clay County +37045 Cleveland County +37047 Columbus County +37049 Craven County +37051 Cumberland County +37053 Currituck County +37055 Dare County +37057 Davidson County +37059 Davie County +37061 Duplin County +37063 Durham County +37065 Edgecombe County +37067 Forsyth County +37069 Franklin County +37071 Gaston County +37073 Gates County +37075 Graham County +37077 Granville County +37079 Greene County +37081 Guilford County +37083 Halifax County +37085 Harnett County +37087 Haywood County +37089 Henderson County +37091 Hertford County +37093 Hoke County +37095 Hyde County +37097 Iredell County +37099 Jackson County +37101 Johnston County +37103 Jones County +37105 Lee County +37107 Lenoir County +37109 Lincoln County +37111 Mc Dowell County +37113 Macon County +37115 Madison County +37117 Martin County +37119 Mecklenburg County +37121 Mitchell County +37123 Montgomery County +37125 Moore County +37127 Nash County +37129 New Hanover County +37131 Northampton County +37133 Onslow County +37135 Orange County +37137 Pamlico County +37139 Pasquotank County +37141 Pender County +37143 Perquimans County +37145 Person County +37147 Pitt County +37149 Polk County +37151 Randolph County +37153 Richmond County +37155 Robeson County +37157 Rockingham County +37159 Rowan County +37161 Rutherford County +37163 Sampson County +37165 Scotland County +37167 Stanly County +37169 Stokes County +37171 Surry County +37173 Swain County +37175 Transylvania County +37177 Tyrrell County +37179 Union County +37181 Vance County +37183 Wake County +37185 Warren County +37187 Washington County +37189 Watauga County +37191 Wayne County +37193 Wilkes County +37195 Wilson County +37197 Yadkin County +37199 Yancey County +38001 Adams County +38003 Barnes County +38005 Benson County +38007 Billings County +38009 Bottineau County +38011 Bowman County +38013 Burke County +38015 Burleigh County +38017 Cass County +38019 Cavalier County +38021 Dickey County +38023 Divide County +38025 Dunn County +38027 Eddy County +38029 Emmons County +38031 Foster County +38033 Golden Valley County +38035 Grand Forks County +38037 Grant County +38039 Griggs County +38041 Hettinger County +38043 Kidder County +38045 La Moure County +38047 Logan County +38049 Mc Henry County +38051 Mc Intosh County +38053 Mc Kenzie County +38055 Mc Lean County +38057 Mercer County +38059 Morton County +38061 Mountrail County +38063 Nelson County +38065 Oliver County +38067 Pembina County +38069 Pierce County +38071 Ramsey County +38073 Ransom County +38075 Renville County +38077 Richland County +38079 Rolette County +38081 Sargent County +38083 Sheridan County +38085 Sioux County +38087 Slope County +38089 Stark County +38091 Steele County +38093 Stutsman County +38095 Towner County +38097 Traill County +38099 Walsh County +38101 Ward County +38103 Wells County +38105 Williams County +39001 Adams County +39003 Allen County +39005 Ashland County +39007 Ashtabula County +39009 Athens County +39011 Auglaize County +39013 Belmont County +39015 Brown County +39017 Butler County +39019 Carroll County +39021 Champaign County +39023 Clark County +39025 Clermont County +39027 Clinton County +39029 Columbiana County +39031 Coshocton County +39033 Crawford County +39035 Cuyahoga County +39037 Darke County +39039 Defiance County +39041 Delaware County +39043 Erie County +39045 Fairfield County +39047 Fayette County +39049 Franklin County +39051 Fulton County +39053 Gallia County +39055 Geauga County +39057 Greene County +39059 Guernsey County +39061 Hamilton County +39063 Hancock County +39065 Hardin County +39067 Harrison County +39069 Henry County +39071 Highland County +39073 Hocking County +39075 Holmes County +39077 Huron County +39079 Jackson County +39081 Jefferson County +39083 Knox County +39085 Lake County +39087 Lawrence County +39089 Licking County +39091 Logan County +39093 Lorain County +39095 Lucas County +39097 Madison County +39099 Mahoning County +39101 Marion County +39103 Medina County +39105 Meigs County +39107 Mercer County +39109 Miami County +39111 Monroe County +39113 Montgomery County +39115 Morgan County +39117 Morrow County +39119 Muskingum County +39121 Noble County +39123 Ottawa County +39125 Paulding County +39127 Perry County +39129 Pickaway County +39131 Pike County +39133 Portage County +39135 Preble County +39137 Putnam County +39139 Richland County +39141 Ross County +39143 Sandusky County +39145 Scioto County +39147 Seneca County +39149 Shelby County +39151 Stark County +39153 Summit County +39155 Trumbull County +39157 Tuscarawas County +39159 Union County +39161 Van Wert County +39163 Vinton County +39165 Warren County +39167 Washington County +39169 Wayne County +39171 Williams County +39173 Wood County +39175 Wyandot County +40001 Adair County +40003 Alfalfa County +40005 Atoka County +40007 Beaver County +40009 Beckham County +40011 Blaine County +40013 Bryan County +40015 Caddo County +40017 Canadian County +40019 Carter County +40021 Cherokee County +40023 Choctaw County +40025 Cimarron County +40027 Cleveland County +40029 Coal County +40031 Comanche County +40033 Cotton County +40035 Craig County +40037 Creek County +40039 Custer County +40041 Delaware County +40043 Dewey County +40045 Ellis County +40047 Garfield County +40049 Garvin County +40051 Grady County +40053 Grant County +40055 Greer County +40057 Harmon County +40059 Harper County +40061 Haskell County +40063 Hughes County +40065 Jackson County +40067 Jefferson County +40069 Johnston County +40071 Kay County +40073 Kingfisher County +40075 Kiowa County +40077 Latimer County +40079 Le Flore County +40081 Lincoln County +40083 Logan County +40085 Love County +40087 Mc Clain County +40089 Mc Curtain County +40091 Mc Intosh County +40093 Major County +40095 Marshall County +40097 Mayes County +40099 Murray County +40101 Muskogee County +40103 Noble County +40105 Nowata County +40107 Okfuskee County +40109 Oklahoma County +40111 Okmulgee County +40113 Osage County +40115 Ottawa County +40117 Pawnee County +40119 Payne County +40121 Pittsburg County +40123 Pontotoc County +40125 Pottawatomie County +40127 Pushmataha County +40129 Roger Mills County +40131 Rogers County +40133 Seminole County +40135 Sequoyah County +40137 Stephens County +40139 Texas County +40141 Tillman County +40143 Tulsa County +40145 Wagoner County +40147 Washington County +40149 Washita County +40151 Woods County +40153 Woodward County +41001 Baker County +41003 Benton County +41005 Clackamas County +41007 Clatsop County +41009 Columbia County +41011 Coos County +41013 Crook County +41015 Curry County +41017 Deschutes County +41019 Douglas County +41021 Gilliam County +41023 Grant County +41025 Harney County +41027 Hood River County +41029 Jackson County +41031 Jefferson County +41033 Josephine County +41035 Klamath County +41037 Lake County +41039 Lane County +41041 Lincoln County +41043 Linn County +41045 Malheur County +41047 Marion County +41049 Morrow County +41051 Multnomah County +41053 Polk County +41055 Sherman County +41057 Tillamook County +41059 Umatilla County +41061 Union County +41063 Wallowa County +41065 Wasco County +41067 Washington County +41069 Wheeler County +41071 Yamhill County +42001 Adams County +42003 Allegheny County +42005 Armstrong County +42007 Beaver County +42009 Bedford County +42011 Berks County +42013 Blair County +42015 Bradford County +42017 Bucks County +42019 Butler County +42021 Cambria County +42023 Cameron County +42025 Carbon County +42027 Centre County +42029 Chester County +42031 Clarion County +42033 Clearfield County +42035 Clinton County +42037 Columbia County +42039 Crawford County +42041 Cumberland County +42043 Dauphin County +42045 Delaware County +42047 Elk County +42049 Erie County +42051 Fayette County +42053 Forest County +42055 Franklin County +42057 Fulton County +42059 Greene County +42061 Huntingdon County +42063 Indiana County +42065 Jefferson County +42067 Juniata County +42069 Lackawanna County +42071 Lancaster County +42073 Lawrence County +42075 Lebanon County +42077 Lehigh County +42079 Luzerne County +42081 Lycoming County +42083 Mc Kean County +42085 Mercer County +42087 Mifflin County +42089 Monroe County +42091 Montgomery County +42093 Montour County +42095 Northampton County +42097 Northumberland County +42099 Perry County +42101 Philadelphia County +42103 Pike County +42105 Potter County +42107 Schuylkill County +42109 Snyder County +42111 Somerset County +42113 Sullivan County +42115 Susquehanna County +42117 Tioga County +42119 Union County +42121 Venango County +42123 Warren County +42125 Washington County +42127 Wayne County +42129 Westmoreland County +42131 Wyoming County +42133 York County +44001 Bristol County +44003 Kent County +44005 Newport County +44007 Providence County +44009 Washington County +45001 Abbeville County +45003 Aiken County +45005 Allendale County +45007 Anderson County +45009 Bamberg County +45011 Barnwell County +45013 Beaufort County +45015 Berkeley County +45017 Calhoun County +45019 Charleston County +45021 Cherokee County +45023 Chester County +45025 Chesterfield County +45027 Clarendon County +45029 Colleton County +45031 Darlington County +45033 Dillon County +45035 Dorchester County +45037 Edgefield County +45039 Fairfield County +45041 Florence County +45043 Georgetown County +45045 Greenville County +45047 Greenwood County +45049 Hampton County +45051 Horry County +45053 Jasper County +45055 Kershaw County +45057 Lancaster County +45059 Laurens County +45061 Lee County +45063 Lexington County +45065 Mc Cormick County +45067 Marion County +45069 Marlboro County +45071 Newberry County +45073 Oconee County +45075 Orangeburg County +45077 Pickens County +45079 Richland County +45081 Saluda County +45083 Spartanburg County +45085 Sumter County +45087 Union County +45089 Williamsburg County +45091 York County +46003 Aurora County +46005 Beadle County +46007 Bennett County +46009 Bon Homme County +46011 Brookings County +46013 Brown County +46015 Brule County +46017 Buffalo County +46019 Butte County +46021 Campbell County +46023 Charles Mix County +46025 Clark County +46027 Clay County +46029 Codington County +46031 Corson County +46033 Custer County +46035 Davison County +46037 Day County +46039 Deuel County +46041 Dewey County +46043 Douglas County +46045 Edmunds County +46047 Fall River County +46049 Faulk County +46051 Grant County +46053 Gregory County +46055 Haakon County +46057 Hamlin County +46059 Hand County +46061 Hanson County +46063 Harding County +46065 Hughes County +46067 Hutchinson County +46069 Hyde County +46071 Jackson County +46073 Jerauld County +46075 Jones County +46077 Kingsbury County +46079 Lake County +46081 Lawrence County +46083 Lincoln County +46085 Lyman County +46087 Mc Cook County +46089 Mc Pherson County +46091 Marshall County +46093 Meade County +46095 Mellette County +46097 Miner County +46099 Minnehaha County +46101 Moody County +46103 Pennington County +46105 Perkins County +46107 Potter County +46109 Roberts County +46111 Sanborn County +46113 Shannon County +46115 Spink County +46117 Stanley County +46119 Sully County +46121 Todd County +46123 Tripp County +46125 Turner County +46127 Union County +46129 Walworth County +46135 Yankton County +46137 Ziebach County +47001 Anderson County +47003 Bedford County +47005 Benton County +47007 Bledsoe County +47009 Blount County +47011 Bradley County +47013 Campbell County +47015 Cannon County +47017 Carroll County +47019 Carter County +47021 Cheatham County +47023 Chester County +47025 Claiborne County +47027 Clay County +47029 Cocke County +47031 Coffee County +47033 Crockett County +47035 Cumberland County +47037 Davidson County +47039 Decatur County +47041 De Kalb County +47043 Dickson County +47045 Dyer County +47047 Fayette County +47049 Fentress County +47051 Franklin County +47053 Gibson County +47055 Giles County +47057 Grainger County +47059 Greene County +47061 Grundy County +47063 Hamblen County +47065 Hamilton County +47067 Hancock County +47069 Hardeman County +47071 Hardin County +47073 Hawkins County +47075 Haywood County +47077 Henderson County +47079 Henry County +47081 Hickman County +47083 Houston County +47085 Humphreys County +47087 Jackson County +47089 Jefferson County +47091 Johnson County +47093 Knox County +47095 Lake County +47097 Lauderdale County +47099 Lawrence County +47101 Lewis County +47103 Lincoln County +47105 Loudon County +47107 Mc Minn County +47109 Mc Nairy County +47111 Macon County +47113 Madison County +47115 Marion County +47117 Marshall County +47119 Maury County +47121 Meigs County +47123 Monroe County +47125 Montgomery County +47127 Moore County +47129 Morgan County +47131 Obion County +47133 Overton County +47135 Perry County +47137 Pickett County +47139 Polk County +47141 Putnam County +47143 Rhea County +47145 Roane County +47147 Robertson County +47149 Rutherford County +47151 Scott County +47153 Sequatchie County +47155 Sevier County +47157 Shelby County +47159 Smith County +47161 Stewart County +47163 Sullivan County +47165 Sumner County +47167 Tipton County +47169 Trousdale County +47171 Unicoi County +47173 Union County +47175 Van Buren County +47177 Warren County +47179 Washington County +47181 Wayne County +47183 Weakley County +47185 White County +47187 Williamson County +47189 Wilson County +48001 Anderson County +48003 Andrews County +48005 Angelina County +48007 Aransas County +48009 Archer County +48011 Armstrong County +48013 Atascosa County +48015 Austin County +48017 Bailey County +48019 Bandera County +48021 Bastrop County +48023 Baylor County +48025 Bee County +48027 Bell County +48029 Bexar County +48031 Blanco County +48033 Borden County +48035 Bosque County +48037 Bowie County +48039 Brazoria County +48041 Brazos County +48043 Brewster County +48045 Briscoe County +48047 Brooks County +48049 Brown County +48051 Burleson County +48053 Burnet County +48055 Caldwell County +48057 Calhoun County +48059 Callahan County +48061 Cameron County +48063 Camp County +48065 Carson County +48067 Cass County +48069 Castro County +48071 Chambers County +48073 Cherokee County +48075 Childress County +48077 Clay County +48079 Cochran County +48081 Coke County +48083 Coleman County +48085 Collin County +48087 Collingsworth County +48089 Colorado County +48091 Comal County +48093 Comanche County +48095 Concho County +48097 Cooke County +48099 Coryell County +48101 Cottle County +48103 Crane County +48105 Crockett County +48107 Crosby County +48109 Culberson County +48111 Dallam County +48113 Dallas County +48115 Dawson County +48117 Deaf Smith County +48119 Delta County +48121 Denton County +48123 De Witt County +48125 Dickens County +48127 Dimmit County +48129 Donley County +48131 Duval County +48133 Eastland County +48135 Ector County +48137 Edwards County +48139 Ellis County +48141 El Paso County +48143 Erath County +48145 Falls County +48147 Fannin County +48149 Fayette County +48151 Fisher County +48153 Floyd County +48155 Foard County +48157 Fort Bend County +48159 Franklin County +48161 Freestone County +48163 Frio County +48165 Gaines County +48167 Galveston County +48169 Garza County +48171 Gillespie County +48173 Glasscock County +48175 Goliad County +48177 Gonzales County +48179 Gray County +48181 Grayson County +48183 Gregg County +48185 Grimes County +48187 Guadalupe County +48189 Hale County +48191 Hall County +48193 Hamilton County +48195 Hansford County +48197 Hardeman County +48199 Hardin County +48201 Harris County +48203 Harrison County +48205 Hartley County +48207 Haskell County +48209 Hays County +48211 Hemphill County +48213 Henderson County +48215 Hidalgo County +48217 Hill County +48219 Hockley County +48221 Hood County +48223 Hopkins County +48225 Houston County +48227 Howard County +48229 Hudspeth County +48231 Hunt County +48233 Hutchinson County +48235 Irion County +48237 Jack County +48239 Jackson County +48241 Jasper County +48243 Jeff Davis County +48245 Jefferson County +48247 Jim Hogg County +48249 Jim Wells County +48251 Johnson County +48253 Jones County +48255 Karnes County +48257 Kaufman County +48259 Kendall County +48261 Kenedy County +48263 Kent County +48265 Kerr County +48267 Kimble County +48269 King County +48271 Kinney County +48273 Kleberg County +48275 Knox County +48277 Lamar County +48279 Lamb County +48281 Lampasas County +48283 La Salle County +48285 Lavaca County +48287 Lee County +48289 Leon County +48291 Liberty County +48293 Limestone County +48295 Lipscomb County +48297 Live Oak County +48299 Llano County +48301 Loving County +48303 Lubbock County +48305 Lynn County +48307 Mc Culloch County +48309 Mc Lennan County +48311 Mc Mullen County +48313 Madison County +48315 Marion County +48317 Martin County +48319 Mason County +48321 Matagorda County +48323 Maverick County +48325 Medina County +48327 Menard County +48329 Midland County +48331 Milam County +48333 Mills County +48335 Mitchell County +48337 Montague County +48339 Montgomery County +48341 Moore County +48343 Morris County +48345 Motley County +48347 Nacogdoches County +48349 Navarro County +48351 Newton County +48353 Nolan County +48355 Nueces County +48357 Ochiltree County +48359 Oldham County +48361 Orange County +48363 Palo Pinto County +48365 Panola County +48367 Parker County +48369 Parmer County +48371 Pecos County +48373 Polk County +48375 Potter County +48377 Presidio County +48379 Rains County +48381 Randall County +48383 Reagan County +48385 Real County +48387 Red River County +48389 Reeves County +48391 Refugio County +48393 Roberts County +48395 Robertson County +48397 Rockwall County +48399 Runnels County +48401 Rusk County +48403 Sabine County +48405 San Augustine County +48407 San Jacinto County +48409 San Patricio County +48411 San Saba County +48413 Schleicher County +48415 Scurry County +48417 Shackelford County +48419 Shelby County +48421 Sherman County +48423 Smith County +48425 Somervell County +48427 Starr County +48429 Stephens County +48431 Sterling County +48433 Stonewall County +48435 Sutton County +48437 Swisher County +48439 Tarrant County +48441 Taylor County +48443 Terrell County +48445 Terry County +48447 Throckmorton County +48449 Titus County +48451 Tom Green County +48453 Travis County +48455 Trinity County +48457 Tyler County +48459 Upshur County +48461 Upton County +48463 Uvalde County +48465 Val Verde County +48467 Van Zandt County +48469 Victoria County +48471 Walker County +48473 Waller County +48475 Ward County +48477 Washington County +48479 Webb County +48481 Wharton County +48483 Wheeler County +48485 Wichita County +48487 Wilbarger County +48489 Willacy County +48491 Williamson County +48493 Wilson County +48495 Winkler County +48497 Wise County +48499 Wood County +48501 Yoakum County +48503 Young County +48505 Zapata County +48507 Zavala County +49001 Beaver County +49003 Box Elder County +49005 Cache County +49007 Carbon County +49009 Daggett County +49011 Davis County +49013 Duchesne County +49015 Emery County +49017 Garfield County +49019 Grand County +49021 Iron County +49023 Juab County +49025 Kane County +49027 Millard County +49029 Morgan County +49031 Piute County +49033 Rich County +49035 Salt Lake County +49037 San Juan County +49039 Sanpete County +49041 Sevier County +49043 Summit County +49045 Tooele County +49047 Uintah County +49049 Utah County +49051 Wasatch County +49053 Washington County +49055 Wayne County +49057 Weber County +50001 Addison County +50003 Bennington County +50005 Caledonia County +50007 Chittenden County +50009 Essex County +50011 Franklin County +50013 Grand Isle County +50015 Lamoille County +50017 Orange County +50019 Orleans County +50021 Rutland County +50023 Washington County +50025 Windham County +50027 Windsor County +51001 Accomack County +51003 Albemarle County +51005 Alleghany County +51007 Amelia County +51009 Amherst County +51011 Appomattox County +51013 Arlington County +51015 Augusta County +51017 Bath County +51019 Bedford County +51021 Bland County +51023 Botetourt County +51025 Brunswick County +51027 Buchanan County +51029 Buckingham County +51031 Campbell County +51033 Caroline County +51035 Carroll County +51036 Charles City County +51037 Charlotte County +51041 Chesterfield County +51043 Clarke County +51045 Craig County +51047 Culpeper County +51049 Cumberland County +51051 Dickenson County +51053 Dinwiddie County +51057 Essex County +51059 Fairfax County +51061 Fauquier County +51063 Floyd County +51065 Fluvanna County +51067 Franklin County +51069 Frederick County +51071 Giles County +51073 Gloucester County +51075 Goochland County +51077 Grayson County +51079 Greene County +51081 Greensville County +51083 Halifax County +51085 Hanover County +51087 Henrico County +51089 Henry County +51091 Highland County +51093 Isle Of Wight County +51095 James City County +51097 King And Queen County +51099 King George County +51101 King William County +51103 Lancaster County +51105 Lee County +51107 Loudoun County +51109 Louisa County +51111 Lunenberg County +51113 Madison County +51115 Mathews County +51117 Mecklenburg County +51119 Middlesex County +51121 Montgomery County +51125 Nelson County +51127 New Kent County +51131 Northampton County +51133 Northumberland County +51135 Nottoway County +51137 Orange County +51139 Page County +51141 Patrick County +51143 Pittsylvania County +51145 Powhatan County +51147 Prince Edward County +51149 Prince George County +51153 Prince William County +51155 Pulaski County +51157 Rappahannock County +51159 Richmond County +51161 Roanoke County +51163 Rockbridge County +51165 Rockingham County +51167 Russell County +51169 Scott County +51171 Shenandoah County +51173 Smyth County +51175 Southampton County +51177 Spotsylvania County +51179 Stafford County +51181 Surry County +51183 Sussex County +51185 Tazewell County +51187 Warren County +51191 Washington County +51193 Westmoreland County +51195 Wise County +51197 Wythe County +51199 York County +51510 Alexandria +51515 Bedford +51520 Bristol +51530 Buena Vista +51540 Charlottesville +51550 Chesapeake +51560 2001 Clifton Forge +51570 Colonial Heights +51580 Covington +51590 Danville +51595 Emporia +51600 Fairfax +51610 Falls Church +51620 Franklin +51630 Fredericksburg +51640 Galax +51650 Hampton +51660 Harrisonburg +51670 Hopewell +51678 Lexington +51680 Lynchburg +51683 Manassas +51685 Manassas Park +51690 Martinsville +51700 Newport News +51710 Norfolk +51720 Norton +51730 Petersburg +51735 Poquoson +51740 Portsmouth +51750 Radford +51760 Richmond +51770 Roanoke +51775 Salem +51780 1995 South Boston +51790 Staunton +51800 Suffolk +51810 Virginia Beach +51820 Waynesboro +51830 Williamsburg +51840 Winchester +53001 Adams County +53003 Asotin County +53005 Benton County +53007 Chelan County +53009 Clallam County +53011 Clark County +53013 Columbia County +53015 Cowlitz County +53017 Douglas County +53019 Ferry County +53021 Franklin County +53023 Garfield County +53025 Grant County +53027 Grays Harbor County +53029 Island County +53031 Jefferson County +53033 King County +53035 Kitsap County +53037 Kittitas County +53039 Klickitat County +53041 Lewis County +53043 Lincoln County +53045 Mason County +53047 Okanogan County +53049 Pacific County +53051 Pend Oreille County +53053 Pierce County +53055 San Juan County +53057 Skagit County +53059 Skamania County +53061 Snohomish County +53063 Spokane County +53065 Stevens County +53067 Thurston County +53069 Wahkiakum County +53071 Walla Walla County +53073 Whatcom County +53075 Whitman County +53077 Yakima County +54001 Barbour County +54003 Berkeley County +54005 Boone County +54007 Braxton County +54009 Brooke County +54011 Cabell County +54013 Calhoun County +54015 Clay County +54017 Doddridge County +54019 Fayette County +54021 Gilmer County +54023 Grant County +54025 Greenbrier County +54027 Hampshire County +54029 Hancock County +54031 Hardy County +54033 Harrison County +54035 Jackson County +54037 Jefferson County +54039 Kanawha County +54041 Lewis County +54043 Lincoln County +54045 Logan County +54047 Mc Dowell County +54049 Marion County +54051 Marshall County +54053 Mason County +54055 Mercer County +54057 Mineral County +54059 Mingo County +54061 Monongalia County +54063 Monroe County +54065 Morgan County +54067 Nicholas County +54069 Ohio County +54071 Pendleton County +54073 Pleasants County +54075 Pocahontas County +54077 Preston County +54079 Putnam County +54081 Raleigh County +54083 Randolph County +54085 Ritchie County +54087 Roane County +54089 Summers County +54091 Taylor County +54093 Tucker County +54095 Tyler County +54097 Upshur County +54099 Wayne County +54101 Webster County +54103 Wetzel County +54105 Wirt County +54107 Wood County +54109 Wyoming County +55001 Adams County +55003 Ashland County +55005 Barron County +55007 Bayfield County +55009 Brown County +55011 Buffalo County +55013 Burnett County +55015 Calumet County +55017 Chippewa County +55019 Clark County +55021 Columbia County +55023 Crawford County +55025 Dane County +55027 Dodge County +55029 Door County +55031 Douglas County +55033 Dunn County +55035 Eau Claire County +55037 Florence County +55039 Fond Du Lac County +55041 Forest County +55043 Grant County +55045 Green County +55047 Green Lake County +55049 Iowa County +55051 Iron County +55053 Jackson County +55055 Jefferson County +55057 Juneau County +55059 Kenosha County +55061 Kewaunee County +55063 La Crosse County +55065 Lafayette County +55067 Langlade County +55069 Lincoln County +55071 Manitowoc County +55073 Marathon County +55075 Marinette County +55077 Marquette County +55078 Menomonie County +55079 Milwaukee County +55081 Monroe County +55083 Oconto County +55085 Oneida County +55087 Outagamie County +55089 Ozaukee County +55091 Pepin County +55093 Pierce County +55095 Polk County +55097 Portage County +55099 Price County +55101 Racine County +55103 Richland County +55105 Rock County +55107 Rusk County +55109 St Croix County +55111 Sauk County +55113 Sawyer County +55115 Shawano County +55117 Sheboygan County +55119 Taylor County +55121 Trempealeau County +55123 Vernon County +55125 Vilas County +55127 Walworth County +55129 Washburn County +55131 Washington County +55133 Waukesha County +55135 Waupaca County +55137 Waushara County +55139 Winnebago County +55141 Wood County +56001 Albany County +56003 Big Horn County +56005 Campbell County +56007 Carbon County +56009 Converse County +56011 Crook County +56013 Fremont County +56015 Goshen County +56017 Hot Springs County +56019 Johnson County +56021 Laramie County +56023 Lincoln County +56025 Natrona County +56027 Niobrara County +56029 Park County +56031 Platte County +56033 Sheridan County +56035 Sublette County +56037 Sweetwater County +56039 Teton County +56041 Uinta County +56043 Washakie County +56045 Weston County +72001 Adjuntas Municipio +72003 Aguada Municipio +72005 Aguadilla Municipio +72007 Aguas Buenas Municipio +72009 Aibonito Municipio +72011 Anasco Municipio +72013 Arecibo Municipio +72015 Arroyo Municipio +72017 Barceloneta Municipio +72019 Barranquitas Municipio +72021 Bayamon Municipio +72023 Cabo Rojo Municipio +72025 Caguas Municipio +72027 Camuy Municipio +72029 Canovanas Municipio +72031 Carolina Municipio +72033 Catano Municipio +72035 Cayey Municipio +72037 Ceiba Municipio +72039 Ciales Municipio +72041 Cidra Municipio +72043 Coamo Municipio +72045 Comerio Municipio +72047 Corozal Municipio +72049 Culebra Municipio +72051 Dorado Municipio +72053 Fajardo Municipio +72054 Florida Municipio +72055 Guanica Municipio +72057 Guayama Municipio +72059 Guayanilla Municipio +72061 Guaynabo Municipio +72063 Gurabo Municipio +72065 Hatillo Municipio +72067 Hormigueros Municipio +72069 Humacao Municipio +72071 Isabela Municipio +72073 Jayuya Municipio +72075 Juana Diaz Municipio +72077 Juncos Municipio +72079 Lajas Municipio +72081 Lares Municipio +72083 Las Marias Municipio +72085 Las Piedras Municipio +72087 Loiza Municipio +72089 Luquillo Municipio +72091 Manati Municipio +72093 Maricao Municipio +72095 Maunabo Municipio +72097 Mayaguez Municipio +72099 Moca Municipio +72101 Morovis Municipio +72103 Naguabo Municipio +72105 Naranjito Municipio +72107 Orocovis Municipio +72109 Patillas Municipio +72111 Penuelas Municipio +72113 Ponce Municipio +72115 Quebradillas Municipio +72117 Rincon Municipio +72119 Rio Grande Municipio +72121 Sabana Grande Municipio +72123 Salinas Municipio +72125 San German Municipio +72127 San Juan Municipio +72129 San Lorenzo Municipio +72131 San Sebastian Municipio +72133 Santa Isabel Municipio +72135 Toa Alta Municipio +72137 Toa Baja Municipio +72139 Trujillo Alto Municipio +72141 Utuado Municipio +72143 Vega Alta Municipio +72145 Vega Baja Municipio +72147 Vieques Municipio +72149 Villalba Municipio +72151 Yabucoa Municipio +72153 Yauco Municipio +78010 St. Croix +78020 St. John +78030 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_AIRTR.ALO new file mode 100644 index 0000000..9fff488 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_AIRTR.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 12000 2002 6810.120 FL +AIR 12001 2002 9.280 Alachua +AIR 12003 2002 0.000 Baker +AIR 12005 2002 21.880 Bay +AIR 12007 2002 0.160 Bradford +AIR 12009 2002 22.210 Brevard +AIR 12011 2002 863.430 Broward +AIR 12013 2002 0.000 Calhoun +AIR 12015 2002 0.660 Charlotte +AIR 12017 2002 0.000 Citrus +AIR 12019 2002 0.000 Clay +AIR 12021 2002 1.395 Collier +AIR 12023 2002 0.000 Columbia +AIR 12027 2002 0.000 DeSoto +AIR 12029 2002 0.060 Dixie +AIR 12031 2002 316.980 Duval +AIR 12033 2002 62.150 Escambia +AIR 12035 2002 0.944 Flagler +AIR 12037 2002 0.000 Franklin +AIR 12039 2002 0.047 Gadsden +AIR 12041 2002 0.000 Gilchrist +AIR 12043 2002 0.000 Glades +AIR 12045 2002 0.000 Gulf +AIR 12047 2002 0.000 Hamilton +AIR 12049 2002 0.000 Hardee +AIR 12051 2002 0.000 Hendry +AIR 12053 2002 0.197 Hernando +AIR 12055 2002 0.480 Highlands +AIR 12057 2002 766.610 Hillsborough +AIR 12059 2002 0.924 Holmes +AIR 12061 2002 1.297 Indian River +AIR 12063 2002 0.450 Jackson +AIR 12065 2002 0.000 Jefferson +AIR 12067 2002 0.000 Lafayette +AIR 12069 2002 0.000 Lake +AIR 12071 2002 201.640 Lee +AIR 12073 2002 22.840 Leon +AIR 12075 2002 0.090 Levy +AIR 12077 2002 0.000 Liberty +AIR 12079 2002 0.000 Madison +AIR 12081 2002 55.420 Manatee +AIR 12083 2002 0.313 Marion +AIR 12085 2002 0.000 Martin +AIR 12086 2002 2611.330 Miami-Dade +AIR 12087 2002 11.820 Monroe +AIR 12089 2002 0.000 Nassau +AIR 12091 2002 0.340 Okaloosa +AIR 12093 2002 0.000 Okeechobee +AIR 12095 2002 1410.210 Orange +AIR 12097 2002 0.534 Osceola +AIR 12099 2002 274.180 Palm Beach +AIR 12101 2002 0.083 Pasco +AIR 12103 2002 56.420 Pinellas +AIR 12105 2002 1.500 Polk +AIR 12107 2002 0.330 Putnam +AIR 12109 2002 0.718 St. Johns +AIR 12111 2002 0.947 St. Lucie +AIR 12113 2002 0.000 Santa Rosa +AIR 12115 2002 0.695 Sarasota +AIR 12117 2002 66.732 Seminole +AIR 12119 2002 0.000 Sumter +AIR 12121 2002 0.000 Suwannee +AIR 12123 2002 0.076 Taylor +AIR 12125 2002 0.000 Union +AIR 12127 2002 24.750 Volusia +AIR 12129 2002 0.000 Wakulla +AIR 12131 2002 0.000 Walton +AIR 12133 2002 0.000 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_COAL.ALO new file mode 100644 index 0000000..db5bb4e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_COAL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 12000 2002 0 FL +MIN 12001 2002 0 Alachua +MIN 12003 2002 0 Baker +MIN 12005 2002 0 Bay +MIN 12007 2002 0 Bradford +MIN 12009 2002 0 Brevard +MIN 12011 2002 0 Broward +MIN 12013 2002 0 Calhoun +MIN 12015 2002 0 Charlotte +MIN 12017 2002 0 Citrus +MIN 12019 2002 0 Clay +MIN 12021 2002 0 Collier +MIN 12023 2002 0 Columbia +MIN 12027 2002 0 DeSoto +MIN 12029 2002 0 Dixie +MIN 12031 2002 0 Duval +MIN 12033 2002 0 Escambia +MIN 12035 2002 0 Flagler +MIN 12037 2002 0 Franklin +MIN 12039 2002 0 Gadsden +MIN 12041 2002 0 Gilchrist +MIN 12043 2002 0 Glades +MIN 12045 2002 0 Gulf +MIN 12047 2002 0 Hamilton +MIN 12049 2002 0 Hardee +MIN 12051 2002 0 Hendry +MIN 12053 2002 0 Hernando +MIN 12055 2002 0 Highlands +MIN 12057 2002 0 Hillsborough +MIN 12059 2002 0 Holmes +MIN 12061 2002 0 Indian River +MIN 12063 2002 0 Jackson +MIN 12065 2002 0 Jefferson +MIN 12067 2002 0 Lafayette +MIN 12069 2002 0 Lake +MIN 12071 2002 0 Lee +MIN 12073 2002 0 Leon +MIN 12075 2002 0 Levy +MIN 12077 2002 0 Liberty +MIN 12079 2002 0 Madison +MIN 12081 2002 0 Manatee +MIN 12083 2002 0 Marion +MIN 12085 2002 0 Martin +MIN 12086 2002 0 Miami-Dade +MIN 12087 2002 0 Monroe +MIN 12089 2002 0 Nassau +MIN 12091 2002 0 Okaloosa +MIN 12093 2002 0 Okeechobee +MIN 12095 2002 0 Orange +MIN 12097 2002 0 Osceola +MIN 12099 2002 0 Palm Beach +MIN 12101 2002 0 Pasco +MIN 12103 2002 0 Pinellas +MIN 12105 2002 0 Polk +MIN 12107 2002 0 Putnam +MIN 12109 2002 0 St. Johns +MIN 12111 2002 0 St. Lucie +MIN 12113 2002 0 Santa Rosa +MIN 12115 2002 0 Sarasota +MIN 12117 2002 0 Seminole +MIN 12119 2002 0 Sumter +MIN 12121 2002 0 Suwannee +MIN 12123 2002 0 Taylor +MIN 12125 2002 0 Union +MIN 12127 2002 0 Volusia +MIN 12129 2002 0 Wakulla +MIN 12131 2002 0 Walton +MIN 12133 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_CONST.ALO new file mode 100644 index 0000000..0dd0ed4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_CONST.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 12000 2003 50926810 FL +CON 12001 2003 332379 Alachua +CON 12003 2003 20159 Baker +CON 12005 2003 586539 Bay +CON 12007 2003 11605 Bradford +CON 12009 2003 1551806 Brevard +CON 12011 2003 2785839 Broward +CON 12013 2003 4043 Calhoun +CON 12015 2003 760822 Charlotte +CON 12017 2003 378994 Citrus +CON 12019 2003 402627 Clay +CON 12021 2003 1564094 Collier +CON 12023 2003 53806 Columbia +CON 12027 2003 91810 DeSoto +CON 12029 2003 10121 Dixie +CON 12031 2003 2266078 Duval +CON 12033 2003 575061 Escambia +CON 12035 2003 694519 Flagler +CON 12037 2003 49042 Franklin +CON 12039 2003 26767 Gadsden +CON 12041 2003 12639 Gilchrist +CON 12043 2003 14851 Glades +CON 12045 2003 66229 Gulf +CON 12047 2003 10275 Hamilton +CON 12049 2003 19239 Hardee +CON 12051 2003 19381 Hendry +CON 12053 2003 383988 Hernando +CON 12055 2003 122577 Highlands +CON 12057 2003 3530915 Hillsborough +CON 12059 2003 17898 Holmes +CON 12061 2003 628325 Indian River +CON 12063 2003 32698 Jackson +CON 12065 2003 39075 Jefferson +CON 12067 2003 4996 Lafayette +CON 12069 2003 910625 Lake +CON 12071 2003 3379239 Lee +CON 12073 2003 794176 Leon +CON 12075 2003 22792 Levy +CON 12077 2003 9148 Liberty +CON 12079 2003 9831 Madison +CON 12081 2003 1889839 Manatee +CON 12083 2003 1333154 Marion +CON 12085 2003 1054186 Martin +CON 12086 2003 3678098 Miami-Dade +CON 12087 2003 196691 Monroe +CON 12089 2003 205741 Nassau +CON 12091 2003 546044 Okaloosa +CON 12093 2003 63622 Okeechobee +CON 12095 2003 3203776 Orange +CON 12097 2003 1265835 Osceola +CON 12099 2003 3972919 Palm Beach +CON 12101 2003 1261516 Pasco +CON 12103 2003 1499402 Pinellas +CON 12105 2003 1152946 Polk +CON 12107 2003 59391 Putnam +CON 12109 2003 1114911 St. Johns +CON 12111 2003 959016 St. Lucie +CON 12113 2003 354421 Santa Rosa +CON 12115 2003 1471369 Sarasota +CON 12117 2003 1128739 Seminole +CON 12119 2003 319458 Sumter +CON 12121 2003 9793 Suwannee +CON 12123 2003 17741 Taylor +CON 12125 2003 6914 Union +CON 12127 2003 1497114 Volusia +CON 12129 2003 36215 Wakulla +CON 12131 2003 413933 Walton +CON 12133 2003 19022 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_FARMS.ALO new file mode 100644 index 0000000..38d8f23 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_FARMS.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 12000 2002 2313537 FL +FRM 12001 2002 39281 Alachua +FRM 12003 2002 1844 Baker +FRM 12005 2002 1256 Bay +FRM 12007 2002 5410 Bradford +FRM 12009 2002 15651 Brevard +FRM 12011 2002 4385 Broward +FRM 12013 2002 19186 Calhoun +FRM 12015 2002 20003 Charlotte +FRM 12017 2002 4051 Citrus +FRM 12019 2002 2904 Clay +FRM 12021 2002 20003 Collier +FRM 12023 2002 9636 Columbia +FRM 12027 2002 87005 DeSoto +FRM 12029 2002 2874 Dixie +FRM 12031 2002 4368 Duval +FRM 12033 2002 28456 Escambia +FRM 12035 2002 5292 Flagler +FRM 12037 2002 20003 Franklin +FRM 12039 2002 7616 Gadsden +FRM 12041 2002 14651 Gilchrist +FRM 12043 2002 52786 Glades +FRM 12045 2002 114 Gulf +FRM 12047 2002 8465 Hamilton +FRM 12049 2002 70728 Hardee +FRM 12051 2002 203203 Hendry +FRM 12053 2002 12139 Hernando +FRM 12055 2002 99362 Highlands +FRM 12057 2002 59342 Hillsborough +FRM 12059 2002 17694 Holmes +FRM 12061 2002 65311 Indian River +FRM 12063 2002 73936 Jackson +FRM 12065 2002 16347 Jefferson +FRM 12067 2002 7044 Lafayette +FRM 12069 2002 35899 Lake +FRM 12071 2002 25762 Lee +FRM 12073 2002 3705 Leon +FRM 12075 2002 39122 Levy +FRM 12077 2002 223 Liberty +FRM 12079 2002 21744 Madison +FRM 12081 2002 60900 Manatee +FRM 12083 2002 30601 Marion +FRM 12085 2002 55470 Martin +FRM 12086 2002 55142 Miami-Dade +FRM 12087 2002 20003 Monroe +FRM 12089 2002 2699 Nassau +FRM 12091 2002 10739 Okaloosa +FRM 12093 2002 38984 Okeechobee +FRM 12095 2002 16904 Orange +FRM 12097 2002 27448 Osceola +FRM 12099 2002 428683 Palm Beach +FRM 12101 2002 21332 Pasco +FRM 12103 2002 319 Pinellas +FRM 12105 2002 134101 Polk +FRM 12107 2002 9177 Putnam +FRM 12109 2002 22236 St. Johns +FRM 12111 2002 97929 St. Lucie +FRM 12113 2002 45057 Santa Rosa +FRM 12115 2002 6418 Sarasota +FRM 12117 2002 2564 Seminole +FRM 12119 2002 18131 Sumter +FRM 12121 2002 40012 Suwannee +FRM 12123 2002 870 Taylor +FRM 12125 2002 6395 Union +FRM 12127 2002 12522 Volusia +FRM 12129 2002 1018 Wakulla +FRM 12131 2002 12570 Walton +FRM 12133 2002 8512 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_GOLF.ALO new file mode 100644 index 0000000..8240c3f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_GOLF.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 12000 2002 587 FL +GC 12001 2002 3 Alachua +GC 12003 2002 1 Baker +GC 12005 2002 6 Bay +GC 12007 2002 0 Bradford +GC 12009 2002 8 Brevard +GC 12011 2002 36 Broward +GC 12013 2002 0 Calhoun +GC 12015 2002 13 Charlotte +GC 12017 2002 8 Citrus +GC 12019 2002 4 Clay +GC 12021 2002 37 Collier +GC 12023 2002 0 Columbia +GC 12027 2002 1 DeSoto +GC 12029 2002 0 Dixie +GC 12031 2002 21 Duval +GC 12033 2002 4 Escambia +GC 12035 2002 7 Flagler +GC 12037 2002 0 Franklin +GC 12039 2002 1 Gadsden +GC 12041 2002 0 Gilchrist +GC 12043 2002 0 Glades +GC 12045 2002 1 Gulf +GC 12047 2002 0 Hamilton +GC 12049 2002 2 Hardee +GC 12051 2002 1 Hendry +GC 12053 2002 8 Hernando +GC 12055 2002 8 Highlands +GC 12057 2002 30 Hillsborough +GC 12059 2002 1 Holmes +GC 12061 2002 13 Indian River +GC 12063 2002 3 Jackson +GC 12065 2002 1 Jefferson +GC 12067 2002 0 Lafayette +GC 12069 2002 8 Lake +GC 12071 2002 28 Lee +GC 12073 2002 7 Leon +GC 12075 2002 2 Levy +GC 12077 2002 0 Liberty +GC 12079 2002 1 Madison +GC 12081 2002 14 Manatee +GC 12083 2002 5 Marion +GC 12085 2002 25 Martin +GC 12086 2002 17 Miami-Dade +GC 12087 2002 4 Monroe +GC 12089 2002 1 Nassau +GC 12091 2002 6 Okaloosa +GC 12093 2002 0 Okeechobee +GC 12095 2002 22 Orange +GC 12097 2002 7 Osceola +GC 12099 2002 76 Palm Beach +GC 12101 2002 20 Pasco +GC 12103 2002 26 Pinellas +GC 12105 2002 20 Polk +GC 12107 2002 1 Putnam +GC 12109 2002 8 St. Johns +GC 12111 2002 7 St. Lucie +GC 12113 2002 3 Santa Rosa +GC 12115 2002 26 Sarasota +GC 12117 2002 11 Seminole +GC 12119 2002 1 Sumter +GC 12121 2002 1 Suwannee +GC 12123 2002 1 Taylor +GC 12125 2002 0 Union +GC 12127 2002 16 Volusia +GC 12129 2002 1 Wakulla +GC 12131 2002 2 Walton +GC 12133 2002 2 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_HOLSL.ALO new file mode 100644 index 0000000..6d0e0cf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_HOLSL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 12000 2002 30759 FL +COM 12001 2002 229 Alachua +COM 12003 2002 11 Baker +COM 12005 2002 181 Bay +COM 12007 2002 9 Bradford +COM 12009 2002 565 Brevard +COM 12011 2002 4580 Broward +COM 12013 2002 11 Calhoun +COM 12015 2002 126 Charlotte +COM 12017 2002 93 Citrus +COM 12019 2002 110 Clay +COM 12021 2002 364 Collier +COM 12023 2002 77 Columbia +COM 12027 2002 15 DeSoto +COM 12029 2002 4 Dixie +COM 12031 2002 1314 Duval +COM 12033 2002 366 Escambia +COM 12035 2002 47 Flagler +COM 12037 2002 21 Franklin +COM 12039 2002 22 Gadsden +COM 12041 2002 10 Gilchrist +COM 12043 2002 3 Glades +COM 12045 2002 8 Gulf +COM 12047 2002 3 Hamilton +COM 12049 2002 19 Hardee +COM 12051 2002 27 Hendry +COM 12053 2002 104 Hernando +COM 12055 2002 77 Highlands +COM 12057 2002 1977 Hillsborough +COM 12059 2002 10 Holmes +COM 12061 2002 138 Indian River +COM 12063 2002 32 Jackson +COM 12065 2002 12 Jefferson +COM 12067 2002 7 Lafayette +COM 12069 2002 249 Lake +COM 12071 2002 625 Lee +COM 12073 2002 253 Leon +COM 12075 2002 25 Levy +COM 12077 2002 4 Liberty +COM 12079 2002 16 Madison +COM 12081 2002 318 Manatee +COM 12083 2002 311 Marion +COM 12085 2002 211 Martin +COM 12086 2002 8525 Miami-Dade +COM 12087 2002 129 Monroe +COM 12089 2002 47 Nassau +COM 12091 2002 143 Okaloosa +COM 12093 2002 33 Okeechobee +COM 12095 2002 1815 Orange +COM 12097 2002 138 Osceola +COM 12099 2002 2296 Palm Beach +COM 12101 2002 271 Pasco +COM 12103 2002 1580 Pinellas +COM 12105 2002 637 Polk +COM 12107 2002 33 Putnam +COM 12109 2002 200 St. Johns +COM 12111 2002 215 St. Lucie +COM 12113 2002 84 Santa Rosa +COM 12115 2002 562 Sarasota +COM 12117 2002 834 Seminole +COM 12119 2002 28 Sumter +COM 12121 2002 38 Suwannee +COM 12123 2002 16 Taylor +COM 12125 2002 4 Union +COM 12127 2002 474 Volusia +COM 12129 2002 17 Wakulla +COM 12131 2002 45 Walton +COM 12133 2002 11 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_HOUSE.ALO new file mode 100644 index 0000000..4f32d79 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_HOUSE.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 12000 2002 7624546 FL +HOU 12001 2002 99529 Alachua +HOU 12003 2002 7824 Baker +HOU 12005 2002 80888 Bay +HOU 12007 2002 9727 Bradford +HOU 12009 2002 231642 Brevard +HOU 12011 2002 763264 Broward +HOU 12013 2002 5297 Calhoun +HOU 12015 2002 83413 Charlotte +HOU 12017 2002 64592 Citrus +HOU 12019 2002 58045 Clay +HOU 12021 2002 160844 Collier +HOU 12023 2002 24137 Columbia +HOU 12027 2002 13819 DeSoto +HOU 12029 2002 7438 Dixie +HOU 12031 2002 342231 Duval +HOU 12033 2002 127394 Escambia +HOU 12035 2002 27722 Flagler +HOU 12037 2002 7415 Franklin +HOU 12039 2002 17840 Gadsden +HOU 12041 2002 6048 Gilchrist +HOU 12043 2002 5821 Glades +HOU 12045 2002 7891 Gulf +HOU 12047 2002 5014 Hamilton +HOU 12049 2002 9892 Hardee +HOU 12051 2002 12412 Hendry +HOU 12053 2002 65639 Hernando +HOU 12055 2002 49691 Highlands +HOU 12057 2002 449403 Hillsborough +HOU 12059 2002 8069 Holmes +HOU 12061 2002 61911 Indian River +HOU 12063 2002 19887 Jackson +HOU 12065 2002 5372 Jefferson +HOU 12067 2002 2698 Lafayette +HOU 12069 2002 112238 Lake +HOU 12071 2002 265983 Lee +HOU 12073 2002 108388 Leon +HOU 12075 2002 16902 Levy +HOU 12077 2002 3170 Liberty +HOU 12079 2002 7932 Madison +HOU 12081 2002 146211 Manatee +HOU 12083 2002 128099 Marion +HOU 12085 2002 68037 Martin +HOU 12086 2002 878578 Miami-Dade +HOU 12087 2002 51563 Monroe +HOU 12089 2002 27460 Nassau +HOU 12091 2002 81511 Okaloosa +HOU 12093 2002 15735 Okeechobee +HOU 12095 2002 383334 Orange +HOU 12097 2002 82666 Osceola +HOU 12099 2002 576419 Palm Beach +HOU 12101 2002 182134 Pasco +HOU 12103 2002 487013 Pinellas +HOU 12105 2002 235781 Polk +HOU 12107 2002 34243 Putnam +HOU 12109 2002 63077 St. Johns +HOU 12111 2002 96123 St. Lucie +HOU 12113 2002 51927 Santa Rosa +HOU 12115 2002 190723 Sarasota +HOU 12117 2002 156221 Seminole +HOU 12119 2002 28956 Sumter +HOU 12121 2002 15922 Suwannee +HOU 12123 2002 9734 Taylor +HOU 12125 2002 3791 Union +HOU 12127 2002 219846 Volusia +HOU 12129 2002 10627 Wakulla +HOU 12131 2002 31732 Walton +HOU 12133 2002 9661 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_LOGGN.ALO new file mode 100644 index 0000000..8d839fe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_LOGGN.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 12000 2002 654558274 FL +LOG 12001 2002 23204543 Alachua +LOG 12003 2002 16213335 Baker +LOG 12005 2002 21316021 Bay +LOG 12007 2002 15029142 Bradford +LOG 12009 2002 851618 Brevard +LOG 12011 2002 2082 Broward +LOG 12013 2002 17043272 Calhoun +LOG 12015 2002 159940 Charlotte +LOG 12017 2002 3522601 Citrus +LOG 12019 2002 16017973 Clay +LOG 12021 2002 83394 Collier +LOG 12023 2002 24556948 Columbia +LOG 12027 2002 153735 DeSoto +LOG 12029 2002 22538077 Dixie +LOG 12031 2002 23106809 Duval +LOG 12033 2002 12229138 Escambia +LOG 12035 2002 19302920 Flagler +LOG 12037 2002 9574353 Franklin +LOG 12039 2002 14725382 Gadsden +LOG 12041 2002 8071118 Gilchrist +LOG 12043 2002 381174 Glades +LOG 12045 2002 7512926 Gulf +LOG 12047 2002 17043166 Hamilton +LOG 12049 2002 466369 Hardee +LOG 12051 2002 1610972 Hendry +LOG 12053 2002 2643735 Hernando +LOG 12055 2002 602418 Highlands +LOG 12057 2002 538632 Hillsborough +LOG 12059 2002 11992547 Holmes +LOG 12061 2002 293937 Indian River +LOG 12063 2002 22087292 Jackson +LOG 12065 2002 20340377 Jefferson +LOG 12067 2002 13033499 Lafayette +LOG 12069 2002 3349980 Lake +LOG 12071 2002 159940 Lee +LOG 12073 2002 8790031 Leon +LOG 12075 2002 30642316 Levy +LOG 12077 2002 6573473 Liberty +LOG 12079 2002 26938916 Madison +LOG 12081 2002 19737 Manatee +LOG 12083 2002 14345021 Marion +LOG 12085 2002 359395 Martin +LOG 12086 2002 1041 Miami-Dade +LOG 12087 2002 0 Monroe +LOG 12089 2002 27314801 Nassau +LOG 12091 2002 9141195 Okaloosa +LOG 12093 2002 90318 Okeechobee +LOG 12095 2002 1205231 Orange +LOG 12097 2002 2842852 Osceola +LOG 12099 2002 0 Palm Beach +LOG 12101 2002 3524123 Pasco +LOG 12103 2002 0 Pinellas +LOG 12105 2002 2899084 Polk +LOG 12107 2002 16294754 Putnam +LOG 12109 2002 20658132 St. Johns +LOG 12111 2002 309511 St. Lucie +LOG 12113 2002 14761716 Santa Rosa +LOG 12115 2002 277690 Sarasota +LOG 12117 2002 1002318 Seminole +LOG 12119 2002 3579914 Sumter +LOG 12121 2002 10780849 Suwannee +LOG 12123 2002 37215855 Taylor +LOG 12125 2002 15572020 Union +LOG 12127 2002 12470179 Volusia +LOG 12129 2002 3220291 Wakulla +LOG 12131 2002 14502910 Walton +LOG 12133 2002 19465237 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_LSCAP.ALO new file mode 100644 index 0000000..3281566 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_LSCAP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 12000 2002 37081 FL +LSC 12001 2002 285 Alachua +LSC 12003 2002 39 Baker +LSC 12005 2002 126 Bay +LSC 12007 2002 237 Bradford +LSC 12009 2002 845 Brevard +LSC 12011 2002 3533 Broward +LSC 12013 2002 0 Calhoun +LSC 12015 2002 185 Charlotte +LSC 12017 2002 123 Citrus +LSC 12019 2002 208 Clay +LSC 12021 2002 1791 Collier +LSC 12023 2002 105 Columbia +LSC 12027 2002 50 DeSoto +LSC 12029 2002 39 Dixie +LSC 12031 2002 2226 Duval +LSC 12033 2002 312 Escambia +LSC 12035 2002 113 Flagler +LSC 12037 2002 39 Franklin +LSC 12039 2002 54 Gadsden +LSC 12041 2002 39 Gilchrist +LSC 12043 2002 39 Glades +LSC 12045 2002 39 Gulf +LSC 12047 2002 39 Hamilton +LSC 12049 2002 237 Hardee +LSC 12051 2002 39 Hendry +LSC 12053 2002 188 Hernando +LSC 12055 2002 237 Highlands +LSC 12057 2002 2134 Hillsborough +LSC 12059 2002 39 Holmes +LSC 12061 2002 486 Indian River +LSC 12063 2002 39 Jackson +LSC 12065 2002 39 Jefferson +LSC 12067 2002 0 Lafayette +LSC 12069 2002 443 Lake +LSC 12071 2002 1352 Lee +LSC 12073 2002 478 Leon +LSC 12075 2002 237 Levy +LSC 12077 2002 0 Liberty +LSC 12079 2002 39 Madison +LSC 12081 2002 451 Manatee +LSC 12083 2002 308 Marion +LSC 12085 2002 822 Martin +LSC 12086 2002 2448 Miami-Dade +LSC 12087 2002 109 Monroe +LSC 12089 2002 115 Nassau +LSC 12091 2002 216 Okaloosa +LSC 12093 2002 81 Okeechobee +LSC 12095 2002 3110 Orange +LSC 12097 2002 322 Osceola +LSC 12099 2002 4957 Palm Beach +LSC 12101 2002 563 Pasco +LSC 12103 2002 1206 Pinellas +LSC 12105 2002 1588 Polk +LSC 12107 2002 40 Putnam +LSC 12109 2002 298 St. Johns +LSC 12111 2002 379 St. Lucie +LSC 12113 2002 165 Santa Rosa +LSC 12115 2002 835 Sarasota +LSC 12117 2002 1048 Seminole +LSC 12119 2002 236 Sumter +LSC 12121 2002 51 Suwannee +LSC 12123 2002 39 Taylor +LSC 12125 2002 236 Union +LSC 12127 2002 726 Volusia +LSC 12129 2002 39 Wakulla +LSC 12131 2002 201 Walton +LSC 12133 2002 39 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_MNFG.ALO new file mode 100644 index 0000000..89fbf29 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_MNFG.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 12000 2002 717081 FL +MFG 12001 2002 9212 Alachua +MFG 12003 2002 550 Baker +MFG 12005 2002 6631 Bay +MFG 12007 2002 665 Bradford +MFG 12009 2002 34778 Brevard +MFG 12011 2002 63146 Broward +MFG 12013 2002 196 Calhoun +MFG 12015 2002 1310 Charlotte +MFG 12017 2002 1307 Citrus +MFG 12019 2002 3193 Clay +MFG 12021 2002 5147 Collier +MFG 12023 2002 1906 Columbia +MFG 12027 2002 241 DeSoto +MFG 12029 2002 827 Dixie +MFG 12031 2002 49210 Duval +MFG 12033 2002 13748 Escambia +MFG 12035 2002 2245 Flagler +MFG 12037 2002 102 Franklin +MFG 12039 2002 2671 Gadsden +MFG 12041 2002 344 Gilchrist +MFG 12043 2002 171 Glades +MFG 12045 2002 341 Gulf +MFG 12047 2002 1160 Hamilton +MFG 12049 2002 257 Hardee +MFG 12051 2002 1171 Hendry +MFG 12053 2002 2060 Hernando +MFG 12055 2002 1902 Highlands +MFG 12057 2002 53540 Hillsborough +MFG 12059 2002 428 Holmes +MFG 12061 2002 4643 Indian River +MFG 12063 2002 1173 Jackson +MFG 12065 2002 146 Jefferson +MFG 12067 2002 89 Lafayette +MFG 12069 2002 7720 Lake +MFG 12071 2002 14884 Lee +MFG 12073 2002 4648 Leon +MFG 12075 2002 1004 Levy +MFG 12077 2002 287 Liberty +MFG 12079 2002 1252 Madison +MFG 12081 2002 16750 Manatee +MFG 12083 2002 16625 Marion +MFG 12085 2002 5228 Martin +MFG 12086 2002 90387 Miami-Dade +MFG 12087 2002 734 Monroe +MFG 12089 2002 2891 Nassau +MFG 12091 2002 5779 Okaloosa +MFG 12093 2002 291 Okeechobee +MFG 12095 2002 53869 Orange +MFG 12097 2002 2928 Osceola +MFG 12099 2002 32825 Palm Beach +MFG 12101 2002 5861 Pasco +MFG 12103 2002 77029 Pinellas +MFG 12105 2002 29474 Polk +MFG 12107 2002 4707 Putnam +MFG 12109 2002 4107 St. Johns +MFG 12111 2002 4015 St. Lucie +MFG 12113 2002 1891 Santa Rosa +MFG 12115 2002 15388 Sarasota +MFG 12117 2002 23213 Seminole +MFG 12119 2002 1512 Sumter +MFG 12121 2002 1820 Suwannee +MFG 12123 2002 3193 Taylor +MFG 12125 2002 310 Union +MFG 12127 2002 19433 Volusia +MFG 12129 2002 830 Wakulla +MFG 12131 2002 950 Walton +MFG 12133 2002 736 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_OIL.ALO new file mode 100644 index 0000000..d55f619 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_OIL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 12000 2002 382 FL +OIL 12001 2002 0 Alachua +OIL 12003 2002 0 Baker +OIL 12005 2002 11 Bay +OIL 12007 2002 0 Bradford +OIL 12009 2002 20 Brevard +OIL 12011 2002 20 Broward +OIL 12013 2002 0 Calhoun +OIL 12015 2002 0 Charlotte +OIL 12017 2002 0 Citrus +OIL 12019 2002 0 Clay +OIL 12021 2002 20 Collier +OIL 12023 2002 0 Columbia +OIL 12027 2002 0 DeSoto +OIL 12029 2002 0 Dixie +OIL 12031 2002 11 Duval +OIL 12033 2002 9 Escambia +OIL 12035 2002 0 Flagler +OIL 12037 2002 0 Franklin +OIL 12039 2002 0 Gadsden +OIL 12041 2002 0 Gilchrist +OIL 12043 2002 0 Glades +OIL 12045 2002 0 Gulf +OIL 12047 2002 0 Hamilton +OIL 12049 2002 11 Hardee +OIL 12051 2002 11 Hendry +OIL 12053 2002 11 Hernando +OIL 12055 2002 0 Highlands +OIL 12057 2002 0 Hillsborough +OIL 12059 2002 20 Holmes +OIL 12061 2002 0 Indian River +OIL 12063 2002 0 Jackson +OIL 12065 2002 0 Jefferson +OIL 12067 2002 0 Lafayette +OIL 12069 2002 0 Lake +OIL 12071 2002 20 Lee +OIL 12073 2002 9 Leon +OIL 12075 2002 0 Levy +OIL 12077 2002 9 Liberty +OIL 12079 2002 0 Madison +OIL 12081 2002 10 Manatee +OIL 12083 2002 10 Marion +OIL 12085 2002 0 Martin +OIL 12086 2002 8 Miami-Dade +OIL 12087 2002 8 Monroe +OIL 12089 2002 0 Nassau +OIL 12091 2002 10 Okaloosa +OIL 12093 2002 0 Okeechobee +OIL 12095 2002 18 Orange +OIL 12097 2002 0 Osceola +OIL 12099 2002 18 Palm Beach +OIL 12101 2002 0 Pasco +OIL 12103 2002 18 Pinellas +OIL 12105 2002 8 Polk +OIL 12107 2002 10 Putnam +OIL 12109 2002 0 St. Johns +OIL 12111 2002 0 St. Lucie +OIL 12113 2002 8 Santa Rosa +OIL 12115 2002 18 Sarasota +OIL 12117 2002 18 Seminole +OIL 12119 2002 0 Sumter +OIL 12121 2002 0 Suwannee +OIL 12123 2002 10 Taylor +OIL 12125 2002 0 Union +OIL 12127 2002 18 Volusia +OIL 12129 2002 0 Wakulla +OIL 12131 2002 10 Walton +OIL 12133 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_POP.ALO new file mode 100644 index 0000000..44244e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_POP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 12000 2002 16681144 FL +POP 12001 2002 220839 Alachua +POP 12003 2002 23236 Baker +POP 12005 2002 152233 Bay +POP 12007 2002 26208 Bradford +POP 12009 2002 495799 Brevard +POP 12011 2002 1704132 Broward +POP 12013 2002 12777 Calhoun +POP 12015 2002 149903 Charlotte +POP 12017 2002 123735 Citrus +POP 12019 2002 151648 Clay +POP 12021 2002 275706 Collier +POP 12023 2002 58461 Columbia +POP 12027 2002 32944 DeSoto +POP 12029 2002 13976 Dixie +POP 12031 2002 802064 Duval +POP 12033 2002 296798 Escambia +POP 12035 2002 57720 Flagler +POP 12037 2002 10017 Franklin +POP 12039 2002 45502 Gadsden +POP 12041 2002 15061 Gilchrist +POP 12043 2002 10933 Glades +POP 12045 2002 13185 Gulf +POP 12047 2002 13758 Hamilton +POP 12049 2002 27537 Hardee +POP 12051 2002 36788 Hendry +POP 12053 2002 138338 Hernando +POP 12055 2002 90064 Highlands +POP 12057 2002 1051329 Hillsborough +POP 12059 2002 18725 Holmes +POP 12061 2002 117977 Indian River +POP 12063 2002 46518 Jackson +POP 12065 2002 13772 Jefferson +POP 12067 2002 7287 Lafayette +POP 12069 2002 235022 Lake +POP 12071 2002 475542 Lee +POP 12073 2002 239793 Leon +POP 12075 2002 35859 Levy +POP 12077 2002 7193 Liberty +POP 12079 2002 18703 Madison +POP 12081 2002 280216 Manatee +POP 12083 2002 272518 Marion +POP 12085 2002 131815 Martin +POP 12086 2002 2314229 Miami-Dade +POP 12087 2002 79047 Monroe +POP 12089 2002 60563 Nassau +POP 12091 2002 175236 Okaloosa +POP 12093 2002 36997 Okeechobee +POP 12095 2002 944756 Orange +POP 12097 2002 194077 Osceola +POP 12099 2002 1187457 Palm Beach +POP 12101 2002 373041 Pasco +POP 12103 2002 924781 Pinellas +POP 12105 2002 500194 Polk +POP 12107 2002 71188 Putnam +POP 12109 2002 136358 St. Johns +POP 12111 2002 205340 St. Lucie +POP 12113 2002 127346 Santa Rosa +POP 12115 2002 340077 Sarasota +POP 12117 2002 381039 Seminole +POP 12119 2002 57774 Sumter +POP 12121 2002 36195 Suwannee +POP 12123 2002 19355 Taylor +POP 12125 2002 13917 Union +POP 12127 2002 459480 Volusia +POP 12129 2002 25186 Wakulla +POP 12131 2002 44489 Walton +POP 12133 2002 21391 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_RAIL.ALO new file mode 100644 index 0000000..2c949d3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_RAIL.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 12000 2002 11168.520 FL +RR 12001 2002 423.350 Alachua +RR 12003 2002 216.940 Baker +RR 12005 2002 0.000 Bay +RR 12007 2002 177.540 Bradford +RR 12009 2002 0.000 Brevard +RR 12011 2002 361.220 Broward +RR 12013 2002 0.000 Calhoun +RR 12015 2002 0.000 Charlotte +RR 12017 2002 3.400 Citrus +RR 12019 2002 463.900 Clay +RR 12021 2002 0.000 Collier +RR 12023 2002 272.160 Columbia +RR 12027 2002 6.380 DeSoto +RR 12029 2002 0.000 Dixie +RR 12031 2002 772.370 Duval +RR 12033 2002 318.560 Escambia +RR 12035 2002 0.000 Flagler +RR 12037 2002 0.000 Franklin +RR 12039 2002 403.190 Gadsden +RR 12041 2002 0.000 Gilchrist +RR 12043 2002 0.000 Glades +RR 12045 2002 0.000 Gulf +RR 12047 2002 110.730 Hamilton +RR 12049 2002 91.110 Hardee +RR 12051 2002 0.000 Hendry +RR 12053 2002 131.260 Hernando +RR 12055 2002 154.550 Highlands +RR 12057 2002 415.320 Hillsborough +RR 12059 2002 157.910 Holmes +RR 12061 2002 0.000 Indian River +RR 12063 2002 192.800 Jackson +RR 12065 2002 175.010 Jefferson +RR 12067 2002 0.000 Lafayette +RR 12069 2002 0.000 Lake +RR 12071 2002 0.000 Lee +RR 12073 2002 402.090 Leon +RR 12075 2002 34.490 Levy +RR 12077 2002 0.000 Liberty +RR 12079 2002 257.240 Madison +RR 12081 2002 20.480 Manatee +RR 12083 2002 430.910 Marion +RR 12085 2002 135.310 Martin +RR 12086 2002 138.660 Miami-Dade +RR 12087 2002 0.000 Monroe +RR 12089 2002 1160.010 Nassau +RR 12091 2002 204.220 Okaloosa +RR 12093 2002 117.850 Okeechobee +RR 12095 2002 84.660 Orange +RR 12097 2002 45.400 Osceola +RR 12099 2002 406.700 Palm Beach +RR 12101 2002 424.340 Pasco +RR 12103 2002 16.610 Pinellas +RR 12105 2002 593.180 Polk +RR 12107 2002 223.620 Putnam +RR 12109 2002 0.000 St. Johns +RR 12111 2002 0.000 St. Lucie +RR 12113 2002 290.270 Santa Rosa +RR 12115 2002 0.000 Sarasota +RR 12117 2002 65.290 Seminole +RR 12119 2002 411.950 Sumter +RR 12121 2002 111.120 Suwannee +RR 12123 2002 64.200 Taylor +RR 12125 2002 0.000 Union +RR 12127 2002 206.620 Volusia +RR 12129 2002 0.000 Wakulla +RR 12131 2002 275.430 Walton +RR 12133 2002 200.170 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_RVPRK.ALO new file mode 100644 index 0000000..34b5598 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_RVPRK.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 12000 2002 394 FL +RVP 12001 2002 7 Alachua +RVP 12003 2002 0 Baker +RVP 12005 2002 10 Bay +RVP 12007 2002 0 Bradford +RVP 12009 2002 5 Brevard +RVP 12011 2002 12 Broward +RVP 12013 2002 0 Calhoun +RVP 12015 2002 7 Charlotte +RVP 12017 2002 8 Citrus +RVP 12019 2002 4 Clay +RVP 12021 2002 10 Collier +RVP 12023 2002 2 Columbia +RVP 12027 2002 2 DeSoto +RVP 12029 2002 3 Dixie +RVP 12031 2002 5 Duval +RVP 12033 2002 0 Escambia +RVP 12035 2002 4 Flagler +RVP 12037 2002 2 Franklin +RVP 12039 2002 3 Gadsden +RVP 12041 2002 0 Gilchrist +RVP 12043 2002 3 Glades +RVP 12045 2002 0 Gulf +RVP 12047 2002 0 Hamilton +RVP 12049 2002 2 Hardee +RVP 12051 2002 3 Hendry +RVP 12053 2002 7 Hernando +RVP 12055 2002 13 Highlands +RVP 12057 2002 17 Hillsborough +RVP 12059 2002 0 Holmes +RVP 12061 2002 5 Indian River +RVP 12063 2002 1 Jackson +RVP 12065 2002 0 Jefferson +RVP 12067 2002 1 Lafayette +RVP 12069 2002 17 Lake +RVP 12071 2002 16 Lee +RVP 12073 2002 5 Leon +RVP 12075 2002 0 Levy +RVP 12077 2002 1 Liberty +RVP 12079 2002 1 Madison +RVP 12081 2002 10 Manatee +RVP 12083 2002 17 Marion +RVP 12085 2002 2 Martin +RVP 12086 2002 11 Miami-Dade +RVP 12087 2002 18 Monroe +RVP 12089 2002 0 Nassau +RVP 12091 2002 5 Okaloosa +RVP 12093 2002 5 Okeechobee +RVP 12095 2002 12 Orange +RVP 12097 2002 13 Osceola +RVP 12099 2002 9 Palm Beach +RVP 12101 2002 20 Pasco +RVP 12103 2002 13 Pinellas +RVP 12105 2002 24 Polk +RVP 12107 2002 2 Putnam +RVP 12109 2002 12 St. Johns +RVP 12111 2002 3 St. Lucie +RVP 12113 2002 4 Santa Rosa +RVP 12115 2002 9 Sarasota +RVP 12117 2002 4 Seminole +RVP 12119 2002 7 Sumter +RVP 12121 2002 1 Suwannee +RVP 12123 2002 0 Taylor +RVP 12125 2002 0 Union +RVP 12127 2002 10 Volusia +RVP 12129 2002 3 Wakulla +RVP 12131 2002 3 Walton +RVP 12133 2002 1 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_SBC.ALO new file mode 100644 index 0000000..1349177 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_SBC.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 12000 2002 0 FL +SBC 12001 2002 0 Alachua +SBC 12003 2002 0 Baker +SBC 12005 2002 0 Bay +SBC 12007 2002 0 Bradford +SBC 12009 2002 0 Brevard +SBC 12011 2002 0 Broward +SBC 12013 2002 0 Calhoun +SBC 12015 2002 0 Charlotte +SBC 12017 2002 0 Citrus +SBC 12019 2002 0 Clay +SBC 12021 2002 0 Collier +SBC 12023 2002 0 Columbia +SBC 12027 2002 0 DeSoto +SBC 12029 2002 0 Dixie +SBC 12031 2002 0 Duval +SBC 12033 2002 0 Escambia +SBC 12035 2002 0 Flagler +SBC 12037 2002 0 Franklin +SBC 12039 2002 0 Gadsden +SBC 12041 2002 0 Gilchrist +SBC 12043 2002 0 Glades +SBC 12045 2002 0 Gulf +SBC 12047 2002 0 Hamilton +SBC 12049 2002 0 Hardee +SBC 12051 2002 0 Hendry +SBC 12053 2002 0 Hernando +SBC 12055 2002 0 Highlands +SBC 12057 2002 0 Hillsborough +SBC 12059 2002 0 Holmes +SBC 12061 2002 0 Indian River +SBC 12063 2002 0 Jackson +SBC 12065 2002 0 Jefferson +SBC 12067 2002 0 Lafayette +SBC 12069 2002 0 Lake +SBC 12071 2002 0 Lee +SBC 12073 2002 0 Leon +SBC 12075 2002 0 Levy +SBC 12077 2002 0 Liberty +SBC 12079 2002 0 Madison +SBC 12081 2002 0 Manatee +SBC 12083 2002 0 Marion +SBC 12085 2002 0 Martin +SBC 12086 2002 0 Miami-Dade +SBC 12087 2002 0 Monroe +SBC 12089 2002 0 Nassau +SBC 12091 2002 0 Okaloosa +SBC 12093 2002 0 Okeechobee +SBC 12095 2002 0 Orange +SBC 12097 2002 0 Osceola +SBC 12099 2002 0 Palm Beach +SBC 12101 2002 0 Pasco +SBC 12103 2002 0 Pinellas +SBC 12105 2002 0 Polk +SBC 12107 2002 0 Putnam +SBC 12109 2002 0 St. Johns +SBC 12111 2002 0 St. Lucie +SBC 12113 2002 0 Santa Rosa +SBC 12115 2002 0 Sarasota +SBC 12117 2002 0 Seminole +SBC 12119 2002 0 Sumter +SBC 12121 2002 0 Suwannee +SBC 12123 2002 0 Taylor +SBC 12125 2002 0 Union +SBC 12127 2002 0 Volusia +SBC 12129 2002 0 Wakulla +SBC 12131 2002 0 Walton +SBC 12133 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_SBR.ALO new file mode 100644 index 0000000..00bc44f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_SBR.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 12000 2002 0 FL +SBR 12001 2002 0 Alachua +SBR 12003 2002 0 Baker +SBR 12005 2002 0 Bay +SBR 12007 2002 0 Bradford +SBR 12009 2002 0 Brevard +SBR 12011 2002 0 Broward +SBR 12013 2002 0 Calhoun +SBR 12015 2002 0 Charlotte +SBR 12017 2002 0 Citrus +SBR 12019 2002 0 Clay +SBR 12021 2002 0 Collier +SBR 12023 2002 0 Columbia +SBR 12027 2002 0 DeSoto +SBR 12029 2002 0 Dixie +SBR 12031 2002 0 Duval +SBR 12033 2002 0 Escambia +SBR 12035 2002 0 Flagler +SBR 12037 2002 0 Franklin +SBR 12039 2002 0 Gadsden +SBR 12041 2002 0 Gilchrist +SBR 12043 2002 0 Glades +SBR 12045 2002 0 Gulf +SBR 12047 2002 0 Hamilton +SBR 12049 2002 0 Hardee +SBR 12051 2002 0 Hendry +SBR 12053 2002 0 Hernando +SBR 12055 2002 0 Highlands +SBR 12057 2002 0 Hillsborough +SBR 12059 2002 0 Holmes +SBR 12061 2002 0 Indian River +SBR 12063 2002 0 Jackson +SBR 12065 2002 0 Jefferson +SBR 12067 2002 0 Lafayette +SBR 12069 2002 0 Lake +SBR 12071 2002 0 Lee +SBR 12073 2002 0 Leon +SBR 12075 2002 0 Levy +SBR 12077 2002 0 Liberty +SBR 12079 2002 0 Madison +SBR 12081 2002 0 Manatee +SBR 12083 2002 0 Marion +SBR 12085 2002 0 Martin +SBR 12086 2002 0 Miami-Dade +SBR 12087 2002 0 Monroe +SBR 12089 2002 0 Nassau +SBR 12091 2002 0 Okaloosa +SBR 12093 2002 0 Okeechobee +SBR 12095 2002 0 Orange +SBR 12097 2002 0 Osceola +SBR 12099 2002 0 Palm Beach +SBR 12101 2002 0 Pasco +SBR 12103 2002 0 Pinellas +SBR 12105 2002 0 Polk +SBR 12107 2002 0 Putnam +SBR 12109 2002 0 St. Johns +SBR 12111 2002 0 St. Lucie +SBR 12113 2002 0 Santa Rosa +SBR 12115 2002 0 Sarasota +SBR 12117 2002 0 Seminole +SBR 12119 2002 0 Sumter +SBR 12121 2002 0 Suwannee +SBR 12123 2002 0 Taylor +SBR 12125 2002 0 Union +SBR 12127 2002 0 Volusia +SBR 12129 2002 0 Wakulla +SBR 12131 2002 0 Walton +SBR 12133 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_SNOWM.ALO new file mode 100644 index 0000000..1f1c071 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_SNOWM.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 12000 2002 0 FL +SNM 12001 2002 0 Alachua +SNM 12003 2002 0 Baker +SNM 12005 2002 0 Bay +SNM 12007 2002 0 Bradford +SNM 12009 2002 0 Brevard +SNM 12011 2002 0 Broward +SNM 12013 2002 0 Calhoun +SNM 12015 2002 0 Charlotte +SNM 12017 2002 0 Citrus +SNM 12019 2002 0 Clay +SNM 12021 2002 0 Collier +SNM 12023 2002 0 Columbia +SNM 12027 2002 0 DeSoto +SNM 12029 2002 0 Dixie +SNM 12031 2002 0 Duval +SNM 12033 2002 0 Escambia +SNM 12035 2002 0 Flagler +SNM 12037 2002 0 Franklin +SNM 12039 2002 0 Gadsden +SNM 12041 2002 0 Gilchrist +SNM 12043 2002 0 Glades +SNM 12045 2002 0 Gulf +SNM 12047 2002 0 Hamilton +SNM 12049 2002 0 Hardee +SNM 12051 2002 0 Hendry +SNM 12053 2002 0 Hernando +SNM 12055 2002 0 Highlands +SNM 12057 2002 0 Hillsborough +SNM 12059 2002 0 Holmes +SNM 12061 2002 0 Indian River +SNM 12063 2002 0 Jackson +SNM 12065 2002 0 Jefferson +SNM 12067 2002 0 Lafayette +SNM 12069 2002 0 Lake +SNM 12071 2002 0 Lee +SNM 12073 2002 0 Leon +SNM 12075 2002 0 Levy +SNM 12077 2002 0 Liberty +SNM 12079 2002 0 Madison +SNM 12081 2002 0 Manatee +SNM 12083 2002 0 Marion +SNM 12085 2002 0 Martin +SNM 12086 2002 0 Miami-Dade +SNM 12087 2002 0 Monroe +SNM 12089 2002 0 Nassau +SNM 12091 2002 0 Okaloosa +SNM 12093 2002 0 Okeechobee +SNM 12095 2002 0 Orange +SNM 12097 2002 0 Osceola +SNM 12099 2002 0 Palm Beach +SNM 12101 2002 0 Pasco +SNM 12103 2002 0 Pinellas +SNM 12105 2002 0 Polk +SNM 12107 2002 0 Putnam +SNM 12109 2002 0 St. Johns +SNM 12111 2002 0 St. Lucie +SNM 12113 2002 0 Santa Rosa +SNM 12115 2002 0 Sarasota +SNM 12117 2002 0 Seminole +SNM 12119 2002 0 Sumter +SNM 12121 2002 0 Suwannee +SNM 12123 2002 0 Taylor +SNM 12125 2002 0 Union +SNM 12127 2002 0 Volusia +SNM 12129 2002 0 Wakulla +SNM 12131 2002 0 Walton +SNM 12133 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_WIB.ALO new file mode 100644 index 0000000..57654a1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_WIB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 12000 1990 23753 FL +WIB 12001 1990 246 Alachua +WIB 12003 1990 10 Baker +WIB 12005 1990 673 Bay +WIB 12007 1990 18 Bradford +WIB 12009 1990 1348 Brevard +WIB 12011 1990 52 Broward +WIB 12013 1990 18 Calhoun +WIB 12015 1990 517 Charlotte +WIB 12017 1990 413 Citrus +WIB 12019 1990 110 Clay +WIB 12021 1990 618 Collier +WIB 12023 1990 10 Columbia +WIB 12027 1990 7 DeSoto +WIB 12029 1990 251 Dixie +WIB 12031 1990 317 Duval +WIB 12033 1990 513 Escambia +WIB 12035 1990 142 Flagler +WIB 12037 1990 698 Franklin +WIB 12039 1990 32 Gadsden +WIB 12041 1990 17 Gilchrist +WIB 12043 1990 551 Glades +WIB 12045 1990 268 Gulf +WIB 12047 1990 12 Hamilton +WIB 12049 1990 3 Hardee +WIB 12051 1990 96 Hendry +WIB 12053 1990 195 Hernando +WIB 12055 1990 202 Highlands +WIB 12057 1990 373 Hillsborough +WIB 12059 1990 16 Holmes +WIB 12061 1990 232 Indian River +WIB 12063 1990 101 Jackson +WIB 12065 1990 74 Jefferson +WIB 12067 1990 13 Lafayette +WIB 12069 1990 527 Lake +WIB 12071 1990 1115 Lee +WIB 12073 1990 91 Leon +WIB 12075 1990 493 Levy +WIB 12077 1990 19 Liberty +WIB 12079 1990 62 Madison +WIB 12081 1990 326 Manatee +WIB 12083 1990 218 Marion +WIB 12085 1990 437 Martin +WIB 12086 1990 701 Miami-Dade +WIB 12087 1990 4406 Monroe +WIB 12089 1990 157 Nassau +WIB 12091 1990 361 Okaloosa +WIB 12093 1990 305 Okeechobee +WIB 12095 1990 250 Orange +WIB 12097 1990 478 Osceola +WIB 12099 1990 862 Palm Beach +WIB 12101 1990 191 Pasco +WIB 12103 1990 564 Pinellas +WIB 12105 1990 350 Polk +WIB 12107 1990 272 Putnam +WIB 12109 1990 377 St. Johns +WIB 12111 1990 257 St. Lucie +WIB 12113 1990 521 Santa Rosa +WIB 12115 1990 269 Sarasota +WIB 12117 1990 95 Seminole +WIB 12119 1990 90 Sumter +WIB 12121 1990 11 Suwannee +WIB 12123 1990 284 Taylor +WIB 12125 1990 24 Union +WIB 12127 1990 679 Volusia +WIB 12129 1990 245 Wakulla +WIB 12131 1990 477 Walton +WIB 12133 1990 93 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/FL_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/FL_WOB.ALO new file mode 100644 index 0000000..3d73962 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/FL_WOB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 12000 1990 13584 FL +WOB 12001 1990 246 Alachua +WOB 12003 1990 10 Baker +WOB 12005 1990 354 Bay +WOB 12007 1990 18 Bradford +WOB 12009 1990 794 Brevard +WOB 12011 1990 35 Broward +WOB 12013 1990 18 Calhoun +WOB 12015 1990 342 Charlotte +WOB 12017 1990 232 Citrus +WOB 12019 1990 110 Clay +WOB 12021 1990 283 Collier +WOB 12023 1990 10 Columbia +WOB 12027 1990 6 DeSoto +WOB 12029 1990 78 Dixie +WOB 12031 1990 211 Duval +WOB 12033 1990 264 Escambia +WOB 12035 1990 69 Flagler +WOB 12037 1990 160 Franklin +WOB 12039 1990 32 Gadsden +WOB 12041 1990 17 Gilchrist +WOB 12043 1990 551 Glades +WOB 12045 1990 74 Gulf +WOB 12047 1990 12 Hamilton +WOB 12049 1990 3 Hardee +WOB 12051 1990 96 Hendry +WOB 12053 1990 78 Hernando +WOB 12055 1990 202 Highlands +WOB 12057 1990 137 Hillsborough +WOB 12059 1990 16 Holmes +WOB 12061 1990 112 Indian River +WOB 12063 1990 101 Jackson +WOB 12065 1990 44 Jefferson +WOB 12067 1990 13 Lafayette +WOB 12069 1990 527 Lake +WOB 12071 1990 675 Lee +WOB 12073 1990 91 Leon +WOB 12075 1990 168 Levy +WOB 12077 1990 19 Liberty +WOB 12079 1990 62 Madison +WOB 12081 1990 166 Manatee +WOB 12083 1990 218 Marion +WOB 12085 1990 330 Martin +WOB 12086 1990 262 Miami-Dade +WOB 12087 1990 1473 Monroe +WOB 12089 1990 62 Nassau +WOB 12091 1990 181 Okaloosa +WOB 12093 1990 305 Okeechobee +WOB 12095 1990 250 Orange +WOB 12097 1990 478 Osceola +WOB 12099 1990 689 Palm Beach +WOB 12101 1990 76 Pasco +WOB 12103 1990 219 Pinellas +WOB 12105 1990 350 Polk +WOB 12107 1990 272 Putnam +WOB 12109 1990 192 St. Johns +WOB 12111 1990 130 St. Lucie +WOB 12113 1990 357 Santa Rosa +WOB 12115 1990 111 Sarasota +WOB 12117 1990 95 Seminole +WOB 12119 1990 90 Sumter +WOB 12121 1990 11 Suwannee +WOB 12123 1990 66 Taylor +WOB 12125 1990 24 Union +WOB 12127 1990 445 Volusia +WOB 12129 1990 105 Wakulla +WOB 12131 1990 264 Walton +WOB 12133 1990 93 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_AIRTR.ALO new file mode 100644 index 0000000..6f72230 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_AIRTR.ALO @@ -0,0 +1,186 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 13000 2002 3613.656 GA +AIR 13001 2002 0.000 Appling +AIR 13003 2002 0.000 Atkinson +AIR 13005 2002 0.040 Bacon +AIR 13007 2002 0.000 Baker +AIR 13009 2002 0.020 Baldwin +AIR 13011 2002 0.000 Banks +AIR 13013 2002 0.750 Barrow +AIR 13015 2002 0.410 Bartow +AIR 13017 2002 0.000 Ben Hill +AIR 13019 2002 0.000 Berrien +AIR 13021 2002 4.970 Bibb +AIR 13023 2002 0.010 Bleckley +AIR 13025 2002 0.000 Brantley +AIR 13027 2002 0.000 Brooks +AIR 13029 2002 0.000 Bryan +AIR 13031 2002 0.140 Bulloch +AIR 13033 2002 0.000 Burke +AIR 13035 2002 0.000 Butts +AIR 13037 2002 0.000 Calhoun +AIR 13039 2002 0.000 Camden +AIR 13043 2002 0.019 Candler +AIR 13045 2002 0.200 Carroll +AIR 13047 2002 0.000 Catoosa +AIR 13049 2002 0.000 Charlton +AIR 13051 2002 68.040 Chatham +AIR 13053 2002 0.000 Chattahoochee +AIR 13055 2002 0.000 Chattooga +AIR 13057 2002 0.084 Cherokee +AIR 13059 2002 0.440 Clarke +AIR 13061 2002 0.000 Clay +AIR 13063 2002 0.000 Clayton +AIR 13065 2002 0.003 Clinch +AIR 13067 2002 0.570 Cobb +AIR 13069 2002 0.090 Coffee +AIR 13071 2002 0.074 Colquitt +AIR 13073 2002 0.000 Columbia +AIR 13075 2002 0.025 Cook +AIR 13077 2002 0.169 Coweta +AIR 13079 2002 0.000 Crawford +AIR 13081 2002 0.054 Crisp +AIR 13083 2002 0.000 Dade +AIR 13085 2002 0.000 Dawson +AIR 13087 2002 0.194 Decatur +AIR 13089 2002 1.590 DeKalb +AIR 13091 2002 0.050 Dodge +AIR 13093 2002 0.000 Dooly +AIR 13095 2002 1.590 Dougherty +AIR 13097 2002 0.000 Douglas +AIR 13099 2002 0.000 Early +AIR 13101 2002 0.000 Echols +AIR 13103 2002 0.000 Effingham +AIR 13105 2002 0.022 Elbert +AIR 13107 2002 0.030 Emanuel +AIR 13109 2002 0.000 Evans +AIR 13111 2002 0.000 Fannin +AIR 13113 2002 0.380 Fayette +AIR 13115 2002 0.290 Floyd +AIR 13117 2002 0.000 Forsyth +AIR 13119 2002 0.000 Franklin +AIR 13121 2002 3489.550 Fulton +AIR 13123 2002 0.000 Gilmer +AIR 13125 2002 0.000 Glascock +AIR 13127 2002 0.660 Glynn +AIR 13129 2002 0.094 Gordon +AIR 13131 2002 0.029 Grady +AIR 13133 2002 0.080 Greene +AIR 13135 2002 0.654 Gwinnett +AIR 13137 2002 0.060 Habersham +AIR 13139 2002 0.180 Hall +AIR 13141 2002 0.000 Hancock +AIR 13143 2002 0.000 Haralson +AIR 13145 2002 0.050 Harris +AIR 13147 2002 0.000 Hart +AIR 13149 2002 0.000 Heard +AIR 13151 2002 0.200 Henry +AIR 13153 2002 0.059 Houston +AIR 13155 2002 0.031 Irwin +AIR 13157 2002 0.000 Jackson +AIR 13159 2002 0.000 Jasper +AIR 13161 2002 0.036 Jeff Davis +AIR 13163 2002 0.000 Jefferson +AIR 13165 2002 0.000 Jenkins +AIR 13167 2002 0.000 Johnson +AIR 13169 2002 0.000 Jones +AIR 13171 2002 0.000 Lamar +AIR 13173 2002 0.000 Lanier +AIR 13175 2002 0.065 Laurens +AIR 13177 2002 0.000 Lee +AIR 13179 2002 0.030 Liberty +AIR 13181 2002 0.000 Lincoln +AIR 13183 2002 0.000 Long +AIR 13185 2002 0.499 Lowndes +AIR 13187 2002 0.000 Lumpkin +AIR 13189 2002 0.000 McDuffie +AIR 13191 2002 0.000 McIntosh +AIR 13193 2002 0.007 Macon +AIR 13195 2002 0.000 Madison +AIR 13197 2002 0.000 Marion +AIR 13199 2002 0.000 Meriwether +AIR 13201 2002 0.000 Miller +AIR 13205 2002 0.009 Mitchell +AIR 13207 2002 0.000 Monroe +AIR 13209 2002 0.000 Montgomery +AIR 13211 2002 0.020 Morgan +AIR 13213 2002 0.000 Murray +AIR 13215 2002 15.340 Muscogee +AIR 13217 2002 0.174 Newton +AIR 13219 2002 0.000 Oconee +AIR 13221 2002 0.000 Oglethorpe +AIR 13223 2002 0.000 Paulding +AIR 13225 2002 0.000 Peach +AIR 13227 2002 0.014 Pickens +AIR 13229 2002 0.000 Pierce +AIR 13231 2002 0.000 Pike +AIR 13233 2002 0.050 Polk +AIR 13235 2002 0.000 Pulaski +AIR 13237 2002 0.000 Putnam +AIR 13239 2002 0.000 Quitman +AIR 13241 2002 0.000 Rabun +AIR 13243 2002 0.000 Randolph +AIR 13245 2002 24.200 Richmond +AIR 13247 2002 0.000 Rockdale +AIR 13249 2002 0.000 Schley +AIR 13251 2002 0.040 Screven +AIR 13253 2002 0.140 Seminole +AIR 13255 2002 0.220 Spalding +AIR 13257 2002 0.150 Stephens +AIR 13259 2002 0.000 Stewart +AIR 13261 2002 0.049 Sumter +AIR 13263 2002 0.000 Talbot +AIR 13265 2002 0.000 Taliaferro +AIR 13267 2002 0.020 Tattnall +AIR 13269 2002 0.000 Taylor +AIR 13271 2002 0.000 Telfair +AIR 13273 2002 0.000 Terrell +AIR 13275 2002 0.130 Thomas +AIR 13277 2002 0.059 Tift +AIR 13279 2002 0.100 Toombs +AIR 13281 2002 0.000 Towns +AIR 13283 2002 0.000 Treutlen +AIR 13285 2002 0.031 Troup +AIR 13287 2002 0.000 Turner +AIR 13289 2002 0.000 Twiggs +AIR 13291 2002 0.000 Union +AIR 13293 2002 0.000 Upson +AIR 13295 2002 0.000 Walker +AIR 13297 2002 0.020 Walton +AIR 13299 2002 0.080 Ware +AIR 13301 2002 0.000 Warren +AIR 13303 2002 0.057 Washington +AIR 13305 2002 0.030 Wayne +AIR 13307 2002 0.000 Webster +AIR 13309 2002 0.020 Wheeler +AIR 13311 2002 0.000 White +AIR 13313 2002 0.139 Whitfield +AIR 13315 2002 0.000 Wilcox +AIR 13317 2002 0.027 Wilkes +AIR 13319 2002 0.000 Wilkinson +AIR 13321 2002 0.000 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_COAL.ALO new file mode 100644 index 0000000..a46189c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_COAL.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 13000 2002 0 GA +MIN 13001 2002 0 Appling +MIN 13003 2002 0 Atkinson +MIN 13005 2002 0 Bacon +MIN 13007 2002 0 Baker +MIN 13009 2002 0 Baldwin +MIN 13011 2002 0 Banks +MIN 13013 2002 0 Barrow +MIN 13015 2002 0 Bartow +MIN 13017 2002 0 Ben Hill +MIN 13019 2002 0 Berrien +MIN 13021 2002 0 Bibb +MIN 13023 2002 0 Bleckley +MIN 13025 2002 0 Brantley +MIN 13027 2002 0 Brooks +MIN 13029 2002 0 Bryan +MIN 13031 2002 0 Bulloch +MIN 13033 2002 0 Burke +MIN 13035 2002 0 Butts +MIN 13037 2002 0 Calhoun +MIN 13039 2002 0 Camden +MIN 13043 2002 0 Candler +MIN 13045 2002 0 Carroll +MIN 13047 2002 0 Catoosa +MIN 13049 2002 0 Charlton +MIN 13051 2002 0 Chatham +MIN 13053 2002 0 Chattahoochee +MIN 13055 2002 0 Chattooga +MIN 13057 2002 0 Cherokee +MIN 13059 2002 0 Clarke +MIN 13061 2002 0 Clay +MIN 13063 2002 0 Clayton +MIN 13065 2002 0 Clinch +MIN 13067 2002 0 Cobb +MIN 13069 2002 0 Coffee +MIN 13071 2002 0 Colquitt +MIN 13073 2002 0 Columbia +MIN 13075 2002 0 Cook +MIN 13077 2002 0 Coweta +MIN 13079 2002 0 Crawford +MIN 13081 2002 0 Crisp +MIN 13083 2002 0 Dade +MIN 13085 2002 0 Dawson +MIN 13087 2002 0 Decatur +MIN 13089 2002 0 DeKalb +MIN 13091 2002 0 Dodge +MIN 13093 2002 0 Dooly +MIN 13095 2002 0 Dougherty +MIN 13097 2002 0 Douglas +MIN 13099 2002 0 Early +MIN 13101 2002 0 Echols +MIN 13103 2002 0 Effingham +MIN 13105 2002 0 Elbert +MIN 13107 2002 0 Emanuel +MIN 13109 2002 0 Evans +MIN 13111 2002 0 Fannin +MIN 13113 2002 0 Fayette +MIN 13115 2002 0 Floyd +MIN 13117 2002 0 Forsyth +MIN 13119 2002 0 Franklin +MIN 13121 2002 0 Fulton +MIN 13123 2002 0 Gilmer +MIN 13125 2002 0 Glascock +MIN 13127 2002 0 Glynn +MIN 13129 2002 0 Gordon +MIN 13131 2002 0 Grady +MIN 13133 2002 0 Greene +MIN 13135 2002 0 Gwinnett +MIN 13137 2002 0 Habersham +MIN 13139 2002 0 Hall +MIN 13141 2002 0 Hancock +MIN 13143 2002 0 Haralson +MIN 13145 2002 0 Harris +MIN 13147 2002 0 Hart +MIN 13149 2002 0 Heard +MIN 13151 2002 0 Henry +MIN 13153 2002 0 Houston +MIN 13155 2002 0 Irwin +MIN 13157 2002 0 Jackson +MIN 13159 2002 0 Jasper +MIN 13161 2002 0 Jeff Davis +MIN 13163 2002 0 Jefferson +MIN 13165 2002 0 Jenkins +MIN 13167 2002 0 Johnson +MIN 13169 2002 0 Jones +MIN 13171 2002 0 Lamar +MIN 13173 2002 0 Lanier +MIN 13175 2002 0 Laurens +MIN 13177 2002 0 Lee +MIN 13179 2002 0 Liberty +MIN 13181 2002 0 Lincoln +MIN 13183 2002 0 Long +MIN 13185 2002 0 Lowndes +MIN 13187 2002 0 Lumpkin +MIN 13189 2002 0 McDuffie +MIN 13191 2002 0 McIntosh +MIN 13193 2002 0 Macon +MIN 13195 2002 0 Madison +MIN 13197 2002 0 Marion +MIN 13199 2002 0 Meriwether +MIN 13201 2002 0 Miller +MIN 13205 2002 0 Mitchell +MIN 13207 2002 0 Monroe +MIN 13209 2002 0 Montgomery +MIN 13211 2002 0 Morgan +MIN 13213 2002 0 Murray +MIN 13215 2002 0 Muscogee +MIN 13217 2002 0 Newton +MIN 13219 2002 0 Oconee +MIN 13221 2002 0 Oglethorpe +MIN 13223 2002 0 Paulding +MIN 13225 2002 0 Peach +MIN 13227 2002 0 Pickens +MIN 13229 2002 0 Pierce +MIN 13231 2002 0 Pike +MIN 13233 2002 0 Polk +MIN 13235 2002 0 Pulaski +MIN 13237 2002 0 Putnam +MIN 13239 2002 0 Quitman +MIN 13241 2002 0 Rabun +MIN 13243 2002 0 Randolph +MIN 13245 2002 0 Richmond +MIN 13247 2002 0 Rockdale +MIN 13249 2002 0 Schley +MIN 13251 2002 0 Screven +MIN 13253 2002 0 Seminole +MIN 13255 2002 0 Spalding +MIN 13257 2002 0 Stephens +MIN 13259 2002 0 Stewart +MIN 13261 2002 0 Sumter +MIN 13263 2002 0 Talbot +MIN 13265 2002 0 Taliaferro +MIN 13267 2002 0 Tattnall +MIN 13269 2002 0 Taylor +MIN 13271 2002 0 Telfair +MIN 13273 2002 0 Terrell +MIN 13275 2002 0 Thomas +MIN 13277 2002 0 Tift +MIN 13279 2002 0 Toombs +MIN 13281 2002 0 Towns +MIN 13283 2002 0 Treutlen +MIN 13285 2002 0 Troup +MIN 13287 2002 0 Turner +MIN 13289 2002 0 Twiggs +MIN 13291 2002 0 Union +MIN 13293 2002 0 Upson +MIN 13295 2002 0 Walker +MIN 13297 2002 0 Walton +MIN 13299 2002 0 Ware +MIN 13301 2002 0 Warren +MIN 13303 2002 0 Washington +MIN 13305 2002 0 Wayne +MIN 13307 2002 0 Webster +MIN 13309 2002 0 Wheeler +MIN 13311 2002 0 White +MIN 13313 2002 0 Whitfield +MIN 13315 2002 0 Wilcox +MIN 13317 2002 0 Wilkes +MIN 13319 2002 0 Wilkinson +MIN 13321 2002 0 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_CONST.ALO new file mode 100644 index 0000000..3a8d2f7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_CONST.ALO @@ -0,0 +1,186 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 13000 2003 20183128 GA +CON 13001 2003 26044 Appling +CON 13003 2003 7639 Atkinson +CON 13005 2003 6102 Bacon +CON 13007 2003 3990 Baker +CON 13009 2003 74253 Baldwin +CON 13011 2003 29715 Banks +CON 13013 2003 135543 Barrow +CON 13015 2003 256531 Bartow +CON 13017 2003 23312 Ben Hill +CON 13019 2003 9105 Berrien +CON 13021 2003 288723 Bibb +CON 13023 2003 22313 Bleckley +CON 13025 2003 9588 Brantley +CON 13027 2003 9815 Brooks +CON 13029 2003 95994 Bryan +CON 13031 2003 80213 Bulloch +CON 13033 2003 34258 Burke +CON 13035 2003 52243 Butts +CON 13037 2003 4749 Calhoun +CON 13039 2003 64994 Camden +CON 13043 2003 4356 Candler +CON 13045 2003 281365 Carroll +CON 13047 2003 113375 Catoosa +CON 13049 2003 5355 Charlton +CON 13051 2003 753912 Chatham +CON 13053 2003 42165 Chattahoochee +CON 13055 2003 21347 Chattooga +CON 13057 2003 648736 Cherokee +CON 13059 2003 318923 Clarke +CON 13061 2003 1385 Clay +CON 13063 2003 637337 Clayton +CON 13065 2003 14471 Clinch +CON 13067 2003 1276424 Cobb +CON 13069 2003 36428 Coffee +CON 13071 2003 39546 Colquitt +CON 13073 2003 351716 Columbia +CON 13075 2003 13826 Cook +CON 13077 2003 290942 Coweta +CON 13079 2003 19383 Crawford +CON 13081 2003 12607 Crisp +CON 13083 2003 18271 Dade +CON 13085 2003 77758 Dawson +CON 13087 2003 31784 Decatur +CON 13089 2003 1111453 DeKalb +CON 13091 2003 37286 Dodge +CON 13093 2003 4699 Dooly +CON 13095 2003 99892 Dougherty +CON 13097 2003 227480 Douglas +CON 13099 2003 10375 Early +CON 13101 2003 6899 Echols +CON 13103 2003 625133 Effingham +CON 13105 2003 14075 Elbert +CON 13107 2003 25345 Emanuel +CON 13109 2003 6162 Evans +CON 13111 2003 120752 Fannin +CON 13113 2003 286491 Fayette +CON 13115 2003 132927 Floyd +CON 13117 2003 460414 Forsyth +CON 13119 2003 15316 Franklin +CON 13121 2003 2411826 Fulton +CON 13123 2003 66658 Gilmer +CON 13125 2003 1970 Glascock +CON 13127 2003 183878 Glynn +CON 13129 2003 105931 Gordon +CON 13131 2003 9852 Grady +CON 13133 2003 56079 Greene +CON 13135 2003 2046469 Gwinnett +CON 13137 2003 85684 Habersham +CON 13139 2003 373649 Hall +CON 13141 2003 7495 Hancock +CON 13143 2003 12875 Haralson +CON 13145 2003 96786 Harris +CON 13147 2003 20992 Hart +CON 13149 2003 28432 Heard +CON 13151 2003 671429 Henry +CON 13153 2003 320422 Houston +CON 13155 2003 7786 Irwin +CON 13157 2003 237435 Jackson +CON 13159 2003 23893 Jasper +CON 13161 2003 5377 Jeff Davis +CON 13163 2003 20884 Jefferson +CON 13165 2003 14346 Jenkins +CON 13167 2003 6342 Johnson +CON 13169 2003 51974 Jones +CON 13171 2003 27924 Lamar +CON 13173 2003 2608 Lanier +CON 13175 2003 40114 Laurens +CON 13177 2003 54542 Lee +CON 13179 2003 103848 Liberty +CON 13181 2003 16909 Lincoln +CON 13183 2003 10505 Long +CON 13185 2003 200742 Lowndes +CON 13187 2003 68181 Lumpkin +CON 13189 2003 16790 McDuffie +CON 13191 2003 16197 McIntosh +CON 13193 2003 5105 Macon +CON 13195 2003 15956 Madison +CON 13197 2003 6222 Marion +CON 13199 2003 28210 Meriwether +CON 13201 2003 5700 Miller +CON 13205 2003 17871 Mitchell +CON 13207 2003 35265 Monroe +CON 13209 2003 14474 Montgomery +CON 13211 2003 40603 Morgan +CON 13213 2003 33854 Murray +CON 13215 2003 342703 Muscogee +CON 13217 2003 299639 Newton +CON 13219 2003 137147 Oconee +CON 13221 2003 18968 Oglethorpe +CON 13223 2003 288672 Paulding +CON 13225 2003 32174 Peach +CON 13227 2003 95889 Pickens +CON 13229 2003 24676 Pierce +CON 13231 2003 26450 Pike +CON 13233 2003 28260 Polk +CON 13235 2003 12180 Pulaski +CON 13237 2003 41845 Putnam +CON 13239 2003 1918 Quitman +CON 13241 2003 37701 Rabun +CON 13243 2003 3444 Randolph +CON 13245 2003 325739 Richmond +CON 13247 2003 175386 Rockdale +CON 13249 2003 2456 Schley +CON 13251 2003 12177 Screven +CON 13253 2003 5003 Seminole +CON 13255 2003 83114 Spalding +CON 13257 2003 17255 Stephens +CON 13259 2003 47080 Stewart +CON 13261 2003 30208 Sumter +CON 13263 2003 10786 Talbot +CON 13265 2003 1575 Taliaferro +CON 13267 2003 4936 Tattnall +CON 13269 2003 4656 Taylor +CON 13271 2003 9446 Telfair +CON 13273 2003 17128 Terrell +CON 13275 2003 64564 Thomas +CON 13277 2003 73183 Tift +CON 13279 2003 13371 Toombs +CON 13281 2003 40305 Towns +CON 13283 2003 14211 Treutlen +CON 13285 2003 71078 Troup +CON 13287 2003 10773 Turner +CON 13289 2003 4211 Twiggs +CON 13291 2003 72356 Union +CON 13293 2003 18887 Upson +CON 13295 2003 54653 Walker +CON 13297 2003 259878 Walton +CON 13299 2003 61800 Ware +CON 13301 2003 5979 Warren +CON 13303 2003 11874 Washington +CON 13305 2003 19048 Wayne +CON 13307 2003 2260 Webster +CON 13309 2003 6604 Wheeler +CON 13311 2003 51094 White +CON 13313 2003 89583 Whitfield +CON 13315 2003 8059 Wilcox +CON 13317 2003 8492 Wilkes +CON 13319 2003 8441 Wilkinson +CON 13321 2003 12495 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_FARMS.ALO new file mode 100644 index 0000000..20030ee --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_FARMS.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 13000 2002 3245784 GA +FRM 13001 2002 53566 Appling +FRM 13003 2002 20723 Atkinson +FRM 13005 2002 23775 Bacon +FRM 13007 2002 42516 Baker +FRM 13009 2002 3385 Baldwin +FRM 13011 2002 7343 Banks +FRM 13013 2002 5471 Barrow +FRM 13015 2002 17563 Bartow +FRM 13017 2002 26343 Ben Hill +FRM 13019 2002 46092 Berrien +FRM 13021 2002 5821 Bibb +FRM 13023 2002 23012 Bleckley +FRM 13025 2002 4786 Brantley +FRM 13027 2002 77060 Brooks +FRM 13029 2002 3856 Bryan +FRM 13031 2002 92843 Bulloch +FRM 13033 2002 64164 Burke +FRM 13035 2002 3160 Butts +FRM 13037 2002 55438 Calhoun +FRM 13039 2002 207 Camden +FRM 13043 2002 19430 Candler +FRM 13045 2002 14005 Carroll +FRM 13047 2002 6879 Catoosa +FRM 13049 2002 1663 Charlton +FRM 13051 2002 727 Chatham +FRM 13053 2002 60 Chattahoochee +FRM 13055 2002 10897 Chattooga +FRM 13057 2002 4037 Cherokee +FRM 13059 2002 2094 Clarke +FRM 13061 2002 19160 Clay +FRM 13063 2002 668 Clayton +FRM 13065 2002 1392 Clinch +FRM 13067 2002 1000 Cobb +FRM 13069 2002 71155 Coffee +FRM 13071 2002 117539 Colquitt +FRM 13073 2002 1860 Columbia +FRM 13075 2002 34519 Cook +FRM 13077 2002 7777 Coweta +FRM 13079 2002 10602 Crawford +FRM 13081 2002 62052 Crisp +FRM 13083 2002 4937 Dade +FRM 13085 2002 2005 Dawson +FRM 13087 2002 76170 Decatur +FRM 13089 2002 114 DeKalb +FRM 13091 2002 29830 Dodge +FRM 13093 2002 106258 Dooly +FRM 13095 2002 25242 Dougherty +FRM 13097 2002 1635 Douglas +FRM 13099 2002 71544 Early +FRM 13101 2002 8151 Echols +FRM 13103 2002 11976 Effingham +FRM 13105 2002 12794 Elbert +FRM 13107 2002 36881 Emanuel +FRM 13109 2002 12007 Evans +FRM 13111 2002 2338 Fannin +FRM 13113 2002 2564 Fayette +FRM 13115 2002 16357 Floyd +FRM 13117 2002 4539 Forsyth +FRM 13119 2002 14569 Franklin +FRM 13121 2002 2899 Fulton +FRM 13123 2002 3875 Gilmer +FRM 13125 2002 3856 Glascock +FRM 13127 2002 274 Glynn +FRM 13129 2002 21311 Gordon +FRM 13131 2002 44911 Grady +FRM 13133 2002 8281 Greene +FRM 13135 2002 1637 Gwinnett +FRM 13137 2002 6246 Habersham +FRM 13139 2002 8867 Hall +FRM 13141 2002 3490 Hancock +FRM 13143 2002 4723 Haralson +FRM 13145 2002 4771 Harris +FRM 13147 2002 16439 Hart +FRM 13149 2002 2973 Heard +FRM 13151 2002 6534 Henry +FRM 13153 2002 31172 Houston +FRM 13155 2002 69249 Irwin +FRM 13157 2002 15315 Jackson +FRM 13159 2002 5720 Jasper +FRM 13161 2002 22836 Jeff Davis +FRM 13163 2002 51660 Jefferson +FRM 13165 2002 27057 Jenkins +FRM 13167 2002 16014 Johnson +FRM 13169 2002 4507 Jones +FRM 13171 2002 11621 Lamar +FRM 13173 2002 17418 Lanier +FRM 13175 2002 37468 Laurens +FRM 13177 2002 46273 Lee +FRM 13179 2002 483 Liberty +FRM 13181 2002 3189 Lincoln +FRM 13183 2002 3527 Long +FRM 13185 2002 23127 Lowndes +FRM 13187 2002 2367 Lumpkin +FRM 13189 2002 6888 McDuffie +FRM 13191 2002 96 McIntosh +FRM 13193 2002 47497 Macon +FRM 13195 2002 12672 Madison +FRM 13197 2002 8209 Marion +FRM 13199 2002 9636 Meriwether +FRM 13201 2002 61047 Miller +FRM 13205 2002 94378 Mitchell +FRM 13207 2002 4821 Monroe +FRM 13209 2002 9710 Montgomery +FRM 13211 2002 17934 Morgan +FRM 13213 2002 9022 Murray +FRM 13215 2002 2084 Muscogee +FRM 13217 2002 6591 Newton +FRM 13219 2002 9640 Oconee +FRM 13221 2002 7990 Oglethorpe +FRM 13223 2002 2024 Paulding +FRM 13225 2002 18949 Peach +FRM 13227 2002 2968 Pickens +FRM 13229 2002 33011 Pierce +FRM 13231 2002 6816 Pike +FRM 13233 2002 9809 Polk +FRM 13235 2002 39237 Pulaski +FRM 13237 2002 7212 Putnam +FRM 13239 2002 3510 Quitman +FRM 13241 2002 2266 Rabun +FRM 13243 2002 38267 Randolph +FRM 13245 2002 2541 Richmond +FRM 13247 2002 1382 Rockdale +FRM 13249 2002 6500 Schley +FRM 13251 2002 54320 Screven +FRM 13253 2002 46094 Seminole +FRM 13255 2002 3953 Spalding +FRM 13257 2002 3820 Stephens +FRM 13259 2002 9215 Stewart +FRM 13261 2002 67587 Sumter +FRM 13263 2002 3691 Talbot +FRM 13265 2002 2251 Taliaferro +FRM 13267 2002 41133 Tattnall +FRM 13269 2002 19544 Taylor +FRM 13271 2002 15148 Telfair +FRM 13273 2002 57052 Terrell +FRM 13275 2002 50301 Thomas +FRM 13277 2002 48873 Tift +FRM 13279 2002 25362 Toombs +FRM 13281 2002 2264 Towns +FRM 13283 2002 6624 Treutlen +FRM 13285 2002 5077 Troup +FRM 13287 2002 52877 Turner +FRM 13289 2002 8947 Twiggs +FRM 13291 2002 5346 Union +FRM 13293 2002 5287 Upson +FRM 13295 2002 18155 Walker +FRM 13297 2002 13251 Walton +FRM 13299 2002 14904 Ware +FRM 13301 2002 5567 Warren +FRM 13303 2002 26441 Washington +FRM 13305 2002 19933 Wayne +FRM 13307 2002 22528 Webster +FRM 13309 2002 9389 Wheeler +FRM 13311 2002 6219 White +FRM 13313 2002 8535 Whitfield +FRM 13315 2002 43853 Wilcox +FRM 13317 2002 12195 Wilkes +FRM 13319 2002 3859 Wilkinson +FRM 13321 2002 88841 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_GOLF.ALO new file mode 100644 index 0000000..75222f9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_GOLF.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 13000 2002 279 GA +GC 13001 2002 2 Appling +GC 13003 2002 0 Atkinson +GC 13005 2002 1 Bacon +GC 13007 2002 0 Baker +GC 13009 2002 1 Baldwin +GC 13011 2002 1 Banks +GC 13013 2002 1 Barrow +GC 13015 2002 3 Bartow +GC 13017 2002 2 Ben Hill +GC 13019 2002 0 Berrien +GC 13021 2002 0 Bibb +GC 13023 2002 2 Bleckley +GC 13025 2002 0 Brantley +GC 13027 2002 0 Brooks +GC 13029 2002 1 Bryan +GC 13031 2002 3 Bulloch +GC 13033 2002 2 Burke +GC 13035 2002 1 Butts +GC 13037 2002 1 Calhoun +GC 13039 2002 1 Camden +GC 13043 2002 1 Candler +GC 13045 2002 2 Carroll +GC 13047 2002 2 Catoosa +GC 13049 2002 1 Charlton +GC 13051 2002 8 Chatham +GC 13053 2002 1 Chattahoochee +GC 13055 2002 1 Chattooga +GC 13057 2002 10 Cherokee +GC 13059 2002 2 Clarke +GC 13061 2002 0 Clay +GC 13063 2002 2 Clayton +GC 13065 2002 0 Clinch +GC 13067 2002 15 Cobb +GC 13069 2002 3 Coffee +GC 13071 2002 2 Colquitt +GC 13073 2002 2 Columbia +GC 13075 2002 1 Cook +GC 13077 2002 4 Coweta +GC 13079 2002 0 Crawford +GC 13081 2002 1 Crisp +GC 13083 2002 1 Dade +GC 13085 2002 2 Dawson +GC 13087 2002 1 Decatur +GC 13089 2002 9 DeKalb +GC 13091 2002 2 Dodge +GC 13093 2002 0 Dooly +GC 13095 2002 5 Dougherty +GC 13097 2002 3 Douglas +GC 13099 2002 1 Early +GC 13101 2002 0 Echols +GC 13103 2002 1 Effingham +GC 13105 2002 1 Elbert +GC 13107 2002 1 Emanuel +GC 13109 2002 1 Evans +GC 13111 2002 0 Fannin +GC 13113 2002 3 Fayette +GC 13115 2002 6 Floyd +GC 13117 2002 5 Forsyth +GC 13119 2002 0 Franklin +GC 13121 2002 30 Fulton +GC 13123 2002 0 Gilmer +GC 13125 2002 0 Glascock +GC 13127 2002 3 Glynn +GC 13129 2002 0 Gordon +GC 13131 2002 1 Grady +GC 13133 2002 2 Greene +GC 13135 2002 10 Gwinnett +GC 13137 2002 2 Habersham +GC 13139 2002 4 Hall +GC 13141 2002 0 Hancock +GC 13143 2002 0 Haralson +GC 13145 2002 1 Harris +GC 13147 2002 2 Hart +GC 13149 2002 0 Heard +GC 13151 2002 3 Henry +GC 13153 2002 4 Houston +GC 13155 2002 1 Irwin +GC 13157 2002 3 Jackson +GC 13159 2002 1 Jasper +GC 13161 2002 0 Jeff Davis +GC 13163 2002 1 Jefferson +GC 13165 2002 1 Jenkins +GC 13167 2002 1 Johnson +GC 13169 2002 0 Jones +GC 13171 2002 1 Lamar +GC 13173 2002 0 Lanier +GC 13175 2002 2 Laurens +GC 13177 2002 1 Lee +GC 13179 2002 1 Liberty +GC 13181 2002 1 Lincoln +GC 13183 2002 0 Long +GC 13185 2002 4 Lowndes +GC 13187 2002 0 Lumpkin +GC 13189 2002 2 McDuffie +GC 13191 2002 0 McIntosh +GC 13193 2002 1 Macon +GC 13195 2002 0 Madison +GC 13197 2002 1 Marion +GC 13199 2002 1 Meriwether +GC 13201 2002 0 Miller +GC 13205 2002 1 Mitchell +GC 13207 2002 2 Monroe +GC 13209 2002 0 Montgomery +GC 13211 2002 0 Morgan +GC 13213 2002 1 Murray +GC 13215 2002 4 Muscogee +GC 13217 2002 3 Newton +GC 13219 2002 2 Oconee +GC 13221 2002 0 Oglethorpe +GC 13223 2002 2 Paulding +GC 13225 2002 1 Peach +GC 13227 2002 1 Pickens +GC 13229 2002 2 Pierce +GC 13231 2002 1 Pike +GC 13233 2002 3 Polk +GC 13235 2002 2 Pulaski +GC 13237 2002 0 Putnam +GC 13239 2002 0 Quitman +GC 13241 2002 1 Rabun +GC 13243 2002 1 Randolph +GC 13245 2002 8 Richmond +GC 13247 2002 5 Rockdale +GC 13249 2002 0 Schley +GC 13251 2002 1 Screven +GC 13253 2002 1 Seminole +GC 13255 2002 3 Spalding +GC 13257 2002 1 Stephens +GC 13259 2002 0 Stewart +GC 13261 2002 3 Sumter +GC 13263 2002 0 Talbot +GC 13265 2002 0 Taliaferro +GC 13267 2002 0 Tattnall +GC 13269 2002 2 Taylor +GC 13271 2002 0 Telfair +GC 13273 2002 1 Terrell +GC 13275 2002 1 Thomas +GC 13277 2002 1 Tift +GC 13279 2002 2 Toombs +GC 13281 2002 0 Towns +GC 13283 2002 0 Treutlen +GC 13285 2002 2 Troup +GC 13287 2002 1 Turner +GC 13289 2002 1 Twiggs +GC 13291 2002 0 Union +GC 13293 2002 0 Upson +GC 13295 2002 2 Walker +GC 13297 2002 2 Walton +GC 13299 2002 0 Ware +GC 13301 2002 0 Warren +GC 13303 2002 1 Washington +GC 13305 2002 1 Wayne +GC 13307 2002 0 Webster +GC 13309 2002 0 Wheeler +GC 13311 2002 1 White +GC 13313 2002 3 Whitfield +GC 13315 2002 0 Wilcox +GC 13317 2002 1 Wilkes +GC 13319 2002 0 Wilkinson +GC 13321 2002 1 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_HOLSL.ALO new file mode 100644 index 0000000..a493f9b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_HOLSL.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 13000 2002 13617 GA +COM 13001 2002 23 Appling +COM 13003 2002 6 Atkinson +COM 13005 2002 14 Bacon +COM 13007 2002 2 Baker +COM 13009 2002 29 Baldwin +COM 13011 2002 7 Banks +COM 13013 2002 44 Barrow +COM 13015 2002 117 Bartow +COM 13017 2002 14 Ben Hill +COM 13019 2002 23 Berrien +COM 13021 2002 241 Bibb +COM 13023 2002 5 Bleckley +COM 13025 2002 6 Brantley +COM 13027 2002 6 Brooks +COM 13029 2002 17 Bryan +COM 13031 2002 53 Bulloch +COM 13033 2002 19 Burke +COM 13035 2002 10 Butts +COM 13037 2002 9 Calhoun +COM 13039 2002 8 Camden +COM 13043 2002 10 Candler +COM 13045 2002 110 Carroll +COM 13047 2002 40 Catoosa +COM 13049 2002 6 Charlton +COM 13051 2002 342 Chatham +COM 13053 2002 0 Chattahoochee +COM 13055 2002 15 Chattooga +COM 13057 2002 247 Cherokee +COM 13059 2002 116 Clarke +COM 13061 2002 4 Clay +COM 13063 2002 282 Clayton +COM 13065 2002 5 Clinch +COM 13067 2002 1553 Cobb +COM 13069 2002 51 Coffee +COM 13071 2002 49 Colquitt +COM 13073 2002 85 Columbia +COM 13075 2002 20 Cook +COM 13077 2002 88 Coweta +COM 13079 2002 2 Crawford +COM 13081 2002 38 Crisp +COM 13083 2002 10 Dade +COM 13085 2002 19 Dawson +COM 13087 2002 33 Decatur +COM 13089 2002 1169 DeKalb +COM 13091 2002 14 Dodge +COM 13093 2002 14 Dooly +COM 13095 2002 164 Dougherty +COM 13097 2002 111 Douglas +COM 13099 2002 13 Early +COM 13101 2002 0 Echols +COM 13103 2002 10 Effingham +COM 13105 2002 49 Elbert +COM 13107 2002 29 Emanuel +COM 13109 2002 11 Evans +COM 13111 2002 18 Fannin +COM 13113 2002 188 Fayette +COM 13115 2002 97 Floyd +COM 13117 2002 352 Forsyth +COM 13119 2002 26 Franklin +COM 13121 2002 2264 Fulton +COM 13123 2002 27 Gilmer +COM 13125 2002 0 Glascock +COM 13127 2002 100 Glynn +COM 13129 2002 50 Gordon +COM 13131 2002 20 Grady +COM 13133 2002 19 Greene +COM 13135 2002 2018 Gwinnett +COM 13137 2002 39 Habersham +COM 13139 2002 264 Hall +COM 13141 2002 1 Hancock +COM 13143 2002 14 Haralson +COM 13145 2002 15 Harris +COM 13147 2002 18 Hart +COM 13149 2002 2 Heard +COM 13151 2002 118 Henry +COM 13153 2002 55 Houston +COM 13155 2002 9 Irwin +COM 13157 2002 56 Jackson +COM 13159 2002 1 Jasper +COM 13161 2002 22 Jeff Davis +COM 13163 2002 20 Jefferson +COM 13165 2002 5 Jenkins +COM 13167 2002 10 Johnson +COM 13169 2002 11 Jones +COM 13171 2002 4 Lamar +COM 13173 2002 2 Lanier +COM 13175 2002 48 Laurens +COM 13177 2002 11 Lee +COM 13179 2002 8 Liberty +COM 13181 2002 7 Lincoln +COM 13183 2002 2 Long +COM 13185 2002 133 Lowndes +COM 13187 2002 16 Lumpkin +COM 13189 2002 13 McDuffie +COM 13191 2002 5 McIntosh +COM 13193 2002 17 Macon +COM 13195 2002 18 Madison +COM 13197 2002 4 Marion +COM 13199 2002 9 Meriwether +COM 13201 2002 9 Miller +COM 13205 2002 25 Mitchell +COM 13207 2002 18 Monroe +COM 13209 2002 3 Montgomery +COM 13211 2002 15 Morgan +COM 13213 2002 33 Murray +COM 13215 2002 214 Muscogee +COM 13217 2002 58 Newton +COM 13219 2002 37 Oconee +COM 13221 2002 9 Oglethorpe +COM 13223 2002 78 Paulding +COM 13225 2002 22 Peach +COM 13227 2002 27 Pickens +COM 13229 2002 19 Pierce +COM 13231 2002 10 Pike +COM 13233 2002 22 Polk +COM 13235 2002 11 Pulaski +COM 13237 2002 18 Putnam +COM 13239 2002 2 Quitman +COM 13241 2002 6 Rabun +COM 13243 2002 10 Randolph +COM 13245 2002 214 Richmond +COM 13247 2002 118 Rockdale +COM 13249 2002 6 Schley +COM 13251 2002 6 Screven +COM 13253 2002 12 Seminole +COM 13255 2002 58 Spalding +COM 13257 2002 30 Stephens +COM 13259 2002 8 Stewart +COM 13261 2002 38 Sumter +COM 13263 2002 4 Talbot +COM 13265 2002 2 Taliaferro +COM 13267 2002 18 Tattnall +COM 13269 2002 6 Taylor +COM 13271 2002 12 Telfair +COM 13273 2002 13 Terrell +COM 13275 2002 68 Thomas +COM 13277 2002 78 Tift +COM 13279 2002 42 Toombs +COM 13281 2002 8 Towns +COM 13283 2002 6 Treutlen +COM 13285 2002 61 Troup +COM 13287 2002 14 Turner +COM 13289 2002 1 Twiggs +COM 13291 2002 13 Union +COM 13293 2002 16 Upson +COM 13295 2002 49 Walker +COM 13297 2002 81 Walton +COM 13299 2002 61 Ware +COM 13301 2002 5 Warren +COM 13303 2002 19 Washington +COM 13305 2002 17 Wayne +COM 13307 2002 2 Webster +COM 13309 2002 3 Wheeler +COM 13311 2002 17 White +COM 13313 2002 302 Whitfield +COM 13315 2002 5 Wilcox +COM 13317 2002 14 Wilkes +COM 13319 2002 9 Wilkinson +COM 13321 2002 37 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_HOUSE.ALO new file mode 100644 index 0000000..2e01c79 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_HOUSE.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 13000 2002 3487058 GA +HOU 13001 2002 8000 Appling +HOU 13003 2002 3248 Atkinson +HOU 13005 2002 4549 Bacon +HOU 13007 2002 1783 Baker +HOU 13009 2002 17626 Baldwin +HOU 13011 2002 6110 Banks +HOU 13013 2002 19269 Barrow +HOU 13015 2002 31779 Bartow +HOU 13017 2002 7710 Ben Hill +HOU 13019 2002 7253 Berrien +HOU 13021 2002 68397 Bibb +HOU 13023 2002 4965 Bleckley +HOU 13025 2002 6687 Brantley +HOU 13027 2002 7228 Brooks +HOU 13029 2002 9477 Bryan +HOU 13031 2002 24109 Bulloch +HOU 13033 2002 9013 Burke +HOU 13035 2002 8056 Butts +HOU 13037 2002 2335 Calhoun +HOU 13039 2002 18169 Camden +HOU 13043 2002 3962 Candler +HOU 13045 2002 38260 Carroll +HOU 13047 2002 22925 Catoosa +HOU 13049 2002 3948 Charlton +HOU 13051 2002 103167 Chatham +HOU 13053 2002 3326 Chattahoochee +HOU 13055 2002 10818 Chattooga +HOU 13057 2002 60014 Cherokee +HOU 13059 2002 44157 Clarke +HOU 13061 2002 1956 Clay +HOU 13063 2002 93724 Clayton +HOU 13065 2002 2874 Clinch +HOU 13067 2002 251007 Cobb +HOU 13069 2002 16084 Coffee +HOU 13071 2002 17806 Colquitt +HOU 13073 2002 35579 Columbia +HOU 13075 2002 6717 Cook +HOU 13077 2002 36720 Coweta +HOU 13079 2002 5182 Crawford +HOU 13081 2002 9759 Crisp +HOU 13083 2002 6334 Dade +HOU 13085 2002 7832 Dawson +HOU 13087 2002 12197 Decatur +HOU 13089 2002 276446 DeKalb +HOU 13091 2002 8319 Dodge +HOU 13093 2002 4556 Dooly +HOU 13095 2002 40353 Dougherty +HOU 13097 2002 37585 Douglas +HOU 13099 2002 5426 Early +HOU 13101 2002 1527 Echols +HOU 13103 2002 15283 Effingham +HOU 13105 2002 9292 Elbert +HOU 13107 2002 9551 Emanuel +HOU 13109 2002 4475 Evans +HOU 13111 2002 12846 Fannin +HOU 13113 2002 34828 Fayette +HOU 13115 2002 37411 Floyd +HOU 13117 2002 42991 Forsyth +HOU 13119 2002 9476 Franklin +HOU 13121 2002 368422 Fulton +HOU 13123 2002 13124 Gilmer +HOU 13125 2002 1211 Glascock +HOU 13127 2002 33985 Glynn +HOU 13129 2002 18401 Gordon +HOU 13131 2002 10186 Grady +HOU 13133 2002 7030 Greene +HOU 13135 2002 235921 Gwinnett +HOU 13137 2002 15510 Habersham +HOU 13139 2002 55285 Hall +HOU 13141 2002 4409 Hancock +HOU 13143 2002 11121 Haralson +HOU 13145 2002 10915 Harris +HOU 13147 2002 11292 Hart +HOU 13149 2002 4680 Heard +HOU 13151 2002 51856 Henry +HOU 13153 2002 48445 Houston +HOU 13155 2002 4211 Irwin +HOU 13157 2002 18078 Jackson +HOU 13159 2002 5165 Jasper +HOU 13161 2002 5688 Jeff Davis +HOU 13163 2002 7301 Jefferson +HOU 13165 2002 3936 Jenkins +HOU 13167 2002 3681 Johnson +HOU 13169 2002 9872 Jones +HOU 13171 2002 6388 Lamar +HOU 13173 2002 3104 Lanier +HOU 13175 2002 20026 Laurens +HOU 13177 2002 9836 Lee +HOU 13179 2002 22674 Liberty +HOU 13181 2002 4621 Lincoln +HOU 13183 2002 4360 Long +HOU 13185 2002 38159 Lowndes +HOU 13187 2002 9002 Lumpkin +HOU 13189 2002 9082 McDuffie +HOU 13191 2002 5985 McIntosh +HOU 13193 2002 5567 Macon +HOU 13195 2002 10946 Madison +HOU 13197 2002 3212 Marion +HOU 13199 2002 9564 Meriwether +HOU 13201 2002 2809 Miller +HOU 13205 2002 9111 Mitchell +HOU 13207 2002 8786 Monroe +HOU 13209 2002 3593 Montgomery +HOU 13211 2002 6459 Morgan +HOU 13213 2002 14961 Murray +HOU 13215 2002 78205 Muscogee +HOU 13217 2002 27001 Newton +HOU 13219 2002 10108 Oconee +HOU 13221 2002 5461 Oglethorpe +HOU 13223 2002 35226 Paulding +HOU 13225 2002 9443 Peach +HOU 13227 2002 11617 Pickens +HOU 13229 2002 6892 Pierce +HOU 13231 2002 5521 Pike +HOU 13233 2002 15596 Polk +HOU 13235 2002 4070 Pulaski +HOU 13237 2002 10744 Putnam +HOU 13239 2002 1816 Quitman +HOU 13241 2002 10763 Rabun +HOU 13243 2002 3420 Randolph +HOU 13245 2002 83510 Richmond +HOU 13247 2002 26788 Rockdale +HOU 13249 2002 1650 Schley +HOU 13251 2002 6985 Screven +HOU 13253 2002 4829 Seminole +HOU 13255 2002 24030 Spalding +HOU 13257 2002 12003 Stephens +HOU 13259 2002 2364 Stewart +HOU 13261 2002 13944 Sumter +HOU 13263 2002 2971 Talbot +HOU 13265 2002 1104 Taliaferro +HOU 13267 2002 8662 Tattnall +HOU 13269 2002 4047 Taylor +HOU 13271 2002 5142 Telfair +HOU 13273 2002 4565 Terrell +HOU 13275 2002 18704 Thomas +HOU 13277 2002 15772 Tift +HOU 13279 2002 11546 Toombs +HOU 13281 2002 6706 Towns +HOU 13283 2002 2911 Treutlen +HOU 13285 2002 24833 Troup +HOU 13287 2002 3980 Turner +HOU 13289 2002 4374 Twiggs +HOU 13291 2002 10830 Union +HOU 13293 2002 11883 Upson +HOU 13295 2002 26401 Walker +HOU 13297 2002 25209 Walton +HOU 13299 2002 16051 Ware +HOU 13301 2002 2805 Warren +HOU 13303 2002 8461 Washington +HOU 13305 2002 11044 Wayne +HOU 13307 2002 1136 Webster +HOU 13309 2002 2484 Wheeler +HOU 13311 2002 10186 White +HOU 13313 2002 32558 Whitfield +HOU 13315 2002 3369 Wilcox +HOU 13317 2002 5074 Wilkes +HOU 13319 2002 4535 Wilkinson +HOU 13321 2002 9283 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_LOGGN.ALO new file mode 100644 index 0000000..26ad580 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_LOGGN.ALO @@ -0,0 +1,186 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 13000 2002 1596560108 GA +LOG 13001 2002 18970523 Appling +LOG 13003 2002 7005648 Atkinson +LOG 13005 2002 10037905 Bacon +LOG 13007 2002 3662741 Baker +LOG 13009 2002 10170144 Baldwin +LOG 13011 2002 4350798 Banks +LOG 13013 2002 2404822 Barrow +LOG 13015 2002 10747992 Bartow +LOG 13017 2002 9295504 Ben Hill +LOG 13019 2002 10565096 Berrien +LOG 13021 2002 5352978 Bibb +LOG 13023 2002 4209480 Bleckley +LOG 13025 2002 24419829 Brantley +LOG 13027 2002 12162805 Brooks +LOG 13029 2002 6575473 Bryan +LOG 13031 2002 13091028 Bulloch +LOG 13033 2002 31862488 Burke +LOG 13035 2002 5978497 Butts +LOG 13037 2002 6657112 Calhoun +LOG 13039 2002 23375101 Camden +LOG 13043 2002 11675119 Candler +LOG 13045 2002 17729477 Carroll +LOG 13047 2002 1353638 Catoosa +LOG 13049 2002 24082618 Charlton +LOG 13051 2002 3337076 Chatham +LOG 13053 2002 4111690 Chattahoochee +LOG 13055 2002 6452594 Chattooga +LOG 13057 2002 7913515 Cherokee +LOG 13059 2002 1609730 Clarke +LOG 13061 2002 5215846 Clay +LOG 13063 2002 1990019 Clayton +LOG 13065 2002 37749451 Clinch +LOG 13067 2002 3684663 Cobb +LOG 13069 2002 12364653 Coffee +LOG 13071 2002 17273313 Colquitt +LOG 13073 2002 8243288 Columbia +LOG 13075 2002 6377029 Cook +LOG 13077 2002 11201634 Coweta +LOG 13079 2002 12673856 Crawford +LOG 13081 2002 6509817 Crisp +LOG 13083 2002 948831 Dade +LOG 13085 2002 2834670 Dawson +LOG 13087 2002 17280010 Decatur +LOG 13089 2002 2856060 DeKalb +LOG 13091 2002 14024001 Dodge +LOG 13093 2002 4071486 Dooly +LOG 13095 2002 6954591 Dougherty +LOG 13097 2002 1852369 Douglas +LOG 13099 2002 10471284 Early +LOG 13101 2002 21959524 Echols +LOG 13103 2002 18072149 Effingham +LOG 13105 2002 13476435 Elbert +LOG 13107 2002 20612330 Emanuel +LOG 13109 2002 5985241 Evans +LOG 13111 2002 809920 Fannin +LOG 13113 2002 4124966 Fayette +LOG 13115 2002 18343626 Floyd +LOG 13117 2002 2209438 Forsyth +LOG 13119 2002 3388286 Franklin +LOG 13121 2002 11829514 Fulton +LOG 13123 2002 3410983 Gilmer +LOG 13125 2002 3943107 Glascock +LOG 13127 2002 18060197 Glynn +LOG 13129 2002 6204150 Gordon +LOG 13131 2002 13983788 Grady +LOG 13133 2002 9250334 Greene +LOG 13135 2002 5408533 Gwinnett +LOG 13137 2002 2290853 Habersham +LOG 13139 2002 2633912 Hall +LOG 13141 2002 14961325 Hancock +LOG 13143 2002 9299657 Haralson +LOG 13145 2002 16429654 Harris +LOG 13147 2002 269277 Hart +LOG 13149 2002 8888249 Heard +LOG 13151 2002 8610400 Henry +LOG 13153 2002 8324136 Houston +LOG 13155 2002 7977917 Irwin +LOG 13157 2002 8470080 Jackson +LOG 13159 2002 9292641 Jasper +LOG 13161 2002 15428603 Jeff Davis +LOG 13163 2002 17916835 Jefferson +LOG 13165 2002 8784394 Jenkins +LOG 13167 2002 9903280 Johnson +LOG 13169 2002 10060558 Jones +LOG 13171 2002 5954210 Lamar +LOG 13173 2002 6363610 Lanier +LOG 13175 2002 17380697 Laurens +LOG 13177 2002 5332393 Lee +LOG 13179 2002 18862778 Liberty +LOG 13181 2002 12354972 Lincoln +LOG 13183 2002 23605980 Long +LOG 13185 2002 11210953 Lowndes +LOG 13187 2002 1823217 Lumpkin +LOG 13189 2002 8200662 McDuffie +LOG 13191 2002 17440843 McIntosh +LOG 13193 2002 5345251 Macon +LOG 13195 2002 6466730 Madison +LOG 13197 2002 8167729 Marion +LOG 13199 2002 17205097 Meriwether +LOG 13201 2002 4068777 Miller +LOG 13205 2002 13758662 Mitchell +LOG 13207 2002 13679503 Monroe +LOG 13209 2002 7842516 Montgomery +LOG 13211 2002 12411539 Morgan +LOG 13213 2002 14534680 Murray +LOG 13215 2002 3520035 Muscogee +LOG 13217 2002 10081036 Newton +LOG 13219 2002 2723814 Oconee +LOG 13221 2002 17856903 Oglethorpe +LOG 13223 2002 13186720 Paulding +LOG 13225 2002 266650 Peach +LOG 13227 2002 3223288 Pickens +LOG 13229 2002 12772618 Pierce +LOG 13231 2002 3457945 Pike +LOG 13233 2002 7350719 Polk +LOG 13235 2002 1291393 Pulaski +LOG 13237 2002 10815661 Putnam +LOG 13239 2002 8678469 Quitman +LOG 13241 2002 732162 Rabun +LOG 13243 2002 16190374 Randolph +LOG 13245 2002 7049702 Richmond +LOG 13247 2002 1819219 Rockdale +LOG 13249 2002 3627290 Schley +LOG 13251 2002 19025467 Screven +LOG 13253 2002 2461799 Seminole +LOG 13255 2002 3204730 Spalding +LOG 13257 2002 1929519 Stephens +LOG 13259 2002 27833240 Stewart +LOG 13261 2002 12059677 Sumter +LOG 13263 2002 13903888 Talbot +LOG 13265 2002 11734247 Taliaferro +LOG 13267 2002 13413459 Tattnall +LOG 13269 2002 11180999 Taylor +LOG 13271 2002 13375675 Telfair +LOG 13273 2002 6543617 Terrell +LOG 13275 2002 16360754 Thomas +LOG 13277 2002 3180966 Tift +LOG 13279 2002 11255232 Toombs +LOG 13281 2002 193414 Towns +LOG 13283 2002 4108172 Treutlen +LOG 13285 2002 16293489 Troup +LOG 13287 2002 6271794 Turner +LOG 13289 2002 9211551 Twiggs +LOG 13291 2002 616859 Union +LOG 13293 2002 7203424 Upson +LOG 13295 2002 3851318 Walker +LOG 13297 2002 5603365 Walton +LOG 13299 2002 25696961 Ware +LOG 13301 2002 14722342 Warren +LOG 13303 2002 15434790 Washington +LOG 13305 2002 25917079 Wayne +LOG 13307 2002 9356297 Webster +LOG 13309 2002 7830179 Wheeler +LOG 13311 2002 3927104 White +LOG 13313 2002 4541968 Whitfield +LOG 13315 2002 18198809 Wilcox +LOG 13317 2002 23944952 Wilkes +LOG 13319 2002 26472776 Wilkinson +LOG 13321 2002 18692813 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_LSCAP.ALO new file mode 100644 index 0000000..5420be6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_LSCAP.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 13000 2002 15529 GA +LSC 13001 2002 6 Appling +LSC 13003 2002 6 Atkinson +LSC 13005 2002 6 Bacon +LSC 13007 2002 0 Baker +LSC 13009 2002 15 Baldwin +LSC 13011 2002 6 Banks +LSC 13013 2002 52 Barrow +LSC 13015 2002 101 Bartow +LSC 13017 2002 6 Ben Hill +LSC 13019 2002 6 Berrien +LSC 13021 2002 158 Bibb +LSC 13023 2002 116 Bleckley +LSC 13025 2002 6 Brantley +LSC 13027 2002 6 Brooks +LSC 13029 2002 46 Bryan +LSC 13031 2002 54 Bulloch +LSC 13033 2002 0 Burke +LSC 13035 2002 6 Butts +LSC 13037 2002 0 Calhoun +LSC 13039 2002 33 Camden +LSC 13043 2002 6 Candler +LSC 13045 2002 43 Carroll +LSC 13047 2002 6 Catoosa +LSC 13049 2002 6 Charlton +LSC 13051 2002 387 Chatham +LSC 13053 2002 6 Chattahoochee +LSC 13055 2002 6 Chattooga +LSC 13057 2002 470 Cherokee +LSC 13059 2002 148 Clarke +LSC 13061 2002 0 Clay +LSC 13063 2002 164 Clayton +LSC 13065 2002 39 Clinch +LSC 13067 2002 2250 Cobb +LSC 13069 2002 39 Coffee +LSC 13071 2002 11 Colquitt +LSC 13073 2002 261 Columbia +LSC 13075 2002 9 Cook +LSC 13077 2002 293 Coweta +LSC 13079 2002 6 Crawford +LSC 13081 2002 6 Crisp +LSC 13083 2002 6 Dade +LSC 13085 2002 111 Dawson +LSC 13087 2002 6 Decatur +LSC 13089 2002 2016 DeKalb +LSC 13091 2002 6 Dodge +LSC 13093 2002 39 Dooly +LSC 13095 2002 115 Dougherty +LSC 13097 2002 83 Douglas +LSC 13099 2002 6 Early +LSC 13101 2002 0 Echols +LSC 13103 2002 37 Effingham +LSC 13105 2002 6 Elbert +LSC 13107 2002 6 Emanuel +LSC 13109 2002 6 Evans +LSC 13111 2002 0 Fannin +LSC 13113 2002 175 Fayette +LSC 13115 2002 122 Floyd +LSC 13117 2002 550 Forsyth +LSC 13119 2002 6 Franklin +LSC 13121 2002 950 Fulton +LSC 13123 2002 7 Gilmer +LSC 13125 2002 0 Glascock +LSC 13127 2002 190 Glynn +LSC 13129 2002 22 Gordon +LSC 13131 2002 39 Grady +LSC 13133 2002 39 Greene +LSC 13135 2002 3386 Gwinnett +LSC 13137 2002 23 Habersham +LSC 13139 2002 299 Hall +LSC 13141 2002 6 Hancock +LSC 13143 2002 6 Haralson +LSC 13145 2002 73 Harris +LSC 13147 2002 39 Hart +LSC 13149 2002 6 Heard +LSC 13151 2002 179 Henry +LSC 13153 2002 155 Houston +LSC 13155 2002 6 Irwin +LSC 13157 2002 73 Jackson +LSC 13159 2002 6 Jasper +LSC 13161 2002 6 Jeff Davis +LSC 13163 2002 39 Jefferson +LSC 13165 2002 6 Jenkins +LSC 13167 2002 6 Johnson +LSC 13169 2002 6 Jones +LSC 13171 2002 6 Lamar +LSC 13173 2002 6 Lanier +LSC 13175 2002 39 Laurens +LSC 13177 2002 22 Lee +LSC 13179 2002 6 Liberty +LSC 13181 2002 39 Lincoln +LSC 13183 2002 6 Long +LSC 13185 2002 115 Lowndes +LSC 13187 2002 10 Lumpkin +LSC 13189 2002 6 McDuffie +LSC 13191 2002 0 McIntosh +LSC 13193 2002 0 Macon +LSC 13195 2002 8 Madison +LSC 13197 2002 39 Marion +LSC 13199 2002 6 Meriwether +LSC 13201 2002 0 Miller +LSC 13205 2002 6 Mitchell +LSC 13207 2002 6 Monroe +LSC 13209 2002 39 Montgomery +LSC 13211 2002 4 Morgan +LSC 13213 2002 39 Murray +LSC 13215 2002 127 Muscogee +LSC 13217 2002 80 Newton +LSC 13219 2002 66 Oconee +LSC 13221 2002 63 Oglethorpe +LSC 13223 2002 112 Paulding +LSC 13225 2002 27 Peach +LSC 13227 2002 30 Pickens +LSC 13229 2002 0 Pierce +LSC 13231 2002 6 Pike +LSC 13233 2002 37 Polk +LSC 13235 2002 1 Pulaski +LSC 13237 2002 6 Putnam +LSC 13239 2002 6 Quitman +LSC 13241 2002 6 Rabun +LSC 13243 2002 6 Randolph +LSC 13245 2002 39 Richmond +LSC 13247 2002 129 Rockdale +LSC 13249 2002 0 Schley +LSC 13251 2002 9 Screven +LSC 13253 2002 0 Seminole +LSC 13255 2002 38 Spalding +LSC 13257 2002 11 Stephens +LSC 13259 2002 39 Stewart +LSC 13261 2002 18 Sumter +LSC 13263 2002 0 Talbot +LSC 13265 2002 0 Taliaferro +LSC 13267 2002 8 Tattnall +LSC 13269 2002 6 Taylor +LSC 13271 2002 6 Telfair +LSC 13273 2002 0 Terrell +LSC 13275 2002 43 Thomas +LSC 13277 2002 88 Tift +LSC 13279 2002 6 Toombs +LSC 13281 2002 6 Towns +LSC 13283 2002 0 Treutlen +LSC 13285 2002 39 Troup +LSC 13287 2002 6 Turner +LSC 13289 2002 6 Twiggs +LSC 13291 2002 32 Union +LSC 13293 2002 41 Upson +LSC 13295 2002 29 Walker +LSC 13297 2002 176 Walton +LSC 13299 2002 39 Ware +LSC 13301 2002 0 Warren +LSC 13303 2002 6 Washington +LSC 13305 2002 6 Wayne +LSC 13307 2002 0 Webster +LSC 13309 2002 0 Wheeler +LSC 13311 2002 19 White +LSC 13313 2002 45 Whitfield +LSC 13315 2002 0 Wilcox +LSC 13317 2002 6 Wilkes +LSC 13319 2002 6 Wilkinson +LSC 13321 2002 4 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_MNFG.ALO new file mode 100644 index 0000000..7e157ec --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_MNFG.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 13000 2002 766341 GA +MFG 13001 2002 1543 Appling +MFG 13003 2002 1632 Atkinson +MFG 13005 2002 790 Bacon +MFG 13007 2002 92 Baker +MFG 13009 2002 4779 Baldwin +MFG 13011 2002 528 Banks +MFG 13013 2002 4613 Barrow +MFG 13015 2002 13754 Bartow +MFG 13017 2002 4779 Ben Hill +MFG 13019 2002 2623 Berrien +MFG 13021 2002 14544 Bibb +MFG 13023 2002 2739 Bleckley +MFG 13025 2002 542 Brantley +MFG 13027 2002 871 Brooks +MFG 13029 2002 432 Bryan +MFG 13031 2002 4318 Bulloch +MFG 13033 2002 2351 Burke +MFG 13035 2002 1514 Butts +MFG 13037 2002 138 Calhoun +MFG 13039 2002 2514 Camden +MFG 13043 2002 377 Candler +MFG 13045 2002 10922 Carroll +MFG 13047 2002 2564 Catoosa +MFG 13049 2002 816 Charlton +MFG 13051 2002 24704 Chatham +MFG 13053 2002 0 Chattahoochee +MFG 13055 2002 5444 Chattooga +MFG 13057 2002 6355 Cherokee +MFG 13059 2002 13103 Clarke +MFG 13061 2002 0 Clay +MFG 13063 2002 9806 Clayton +MFG 13065 2002 1424 Clinch +MFG 13067 2002 38990 Cobb +MFG 13069 2002 7460 Coffee +MFG 13071 2002 3357 Colquitt +MFG 13073 2002 7006 Columbia +MFG 13075 2002 2409 Cook +MFG 13077 2002 8790 Coweta +MFG 13079 2002 299 Crawford +MFG 13081 2002 3105 Crisp +MFG 13083 2002 1467 Dade +MFG 13085 2002 1296 Dawson +MFG 13087 2002 4242 Decatur +MFG 13089 2002 36892 DeKalb +MFG 13091 2002 450 Dodge +MFG 13093 2002 924 Dooly +MFG 13095 2002 12487 Dougherty +MFG 13097 2002 6411 Douglas +MFG 13099 2002 1874 Early +MFG 13101 2002 16 Echols +MFG 13103 2002 4181 Effingham +MFG 13105 2002 4738 Elbert +MFG 13107 2002 3397 Emanuel +MFG 13109 2002 2165 Evans +MFG 13111 2002 944 Fannin +MFG 13113 2002 8686 Fayette +MFG 13115 2002 11631 Floyd +MFG 13117 2002 10930 Forsyth +MFG 13119 2002 3699 Franklin +MFG 13121 2002 60314 Fulton +MFG 13123 2002 3501 Gilmer +MFG 13125 2002 92 Glascock +MFG 13127 2002 5195 Glynn +MFG 13129 2002 9245 Gordon +MFG 13131 2002 1718 Grady +MFG 13133 2002 1037 Greene +MFG 13135 2002 45530 Gwinnett +MFG 13137 2002 5895 Habersham +MFG 13139 2002 26659 Hall +MFG 13141 2002 108 Hancock +MFG 13143 2002 3971 Haralson +MFG 13145 2002 1736 Harris +MFG 13147 2002 3062 Hart +MFG 13149 2002 647 Heard +MFG 13151 2002 5225 Henry +MFG 13153 2002 6909 Houston +MFG 13155 2002 519 Irwin +MFG 13157 2002 6373 Jackson +MFG 13159 2002 1973 Jasper +MFG 13161 2002 2191 Jeff Davis +MFG 13163 2002 2524 Jefferson +MFG 13165 2002 1833 Jenkins +MFG 13167 2002 396 Johnson +MFG 13169 2002 251 Jones +MFG 13171 2002 743 Lamar +MFG 13173 2002 88 Lanier +MFG 13175 2002 7466 Laurens +MFG 13177 2002 414 Lee +MFG 13179 2002 1873 Liberty +MFG 13181 2002 70 Lincoln +MFG 13183 2002 16 Long +MFG 13185 2002 8908 Lowndes +MFG 13187 2002 1433 Lumpkin +MFG 13189 2002 2397 McDuffie +MFG 13191 2002 52 McIntosh +MFG 13193 2002 1300 Macon +MFG 13195 2002 678 Madison +MFG 13197 2002 1349 Marion +MFG 13199 2002 2630 Meriwether +MFG 13201 2002 37 Miller +MFG 13205 2002 3175 Mitchell +MFG 13207 2002 633 Monroe +MFG 13209 2002 346 Montgomery +MFG 13211 2002 2768 Morgan +MFG 13213 2002 6860 Murray +MFG 13215 2002 20264 Muscogee +MFG 13217 2002 10535 Newton +MFG 13219 2002 1350 Oconee +MFG 13221 2002 155 Oglethorpe +MFG 13223 2002 1843 Paulding +MFG 13225 2002 4750 Peach +MFG 13227 2002 1721 Pickens +MFG 13229 2002 577 Pierce +MFG 13231 2002 76 Pike +MFG 13233 2002 4543 Polk +MFG 13235 2002 178 Pulaski +MFG 13237 2002 3655 Putnam +MFG 13239 2002 101 Quitman +MFG 13241 2002 1813 Rabun +MFG 13243 2002 559 Randolph +MFG 13245 2002 19396 Richmond +MFG 13247 2002 11711 Rockdale +MFG 13249 2002 1191 Schley +MFG 13251 2002 1634 Screven +MFG 13253 2002 97 Seminole +MFG 13255 2002 9117 Spalding +MFG 13257 2002 5005 Stephens +MFG 13259 2002 408 Stewart +MFG 13261 2002 4763 Sumter +MFG 13263 2002 15 Talbot +MFG 13265 2002 16 Taliaferro +MFG 13267 2002 152 Tattnall +MFG 13269 2002 814 Taylor +MFG 13271 2002 3651 Telfair +MFG 13273 2002 816 Terrell +MFG 13275 2002 6559 Thomas +MFG 13277 2002 5420 Tift +MFG 13279 2002 3186 Toombs +MFG 13281 2002 186 Towns +MFG 13283 2002 159 Treutlen +MFG 13285 2002 13154 Troup +MFG 13287 2002 154 Turner +MFG 13289 2002 24 Twiggs +MFG 13291 2002 587 Union +MFG 13293 2002 3547 Upson +MFG 13295 2002 9081 Walker +MFG 13297 2002 3750 Walton +MFG 13299 2002 2293 Ware +MFG 13301 2002 1464 Warren +MFG 13303 2002 1012 Washington +MFG 13305 2002 2860 Wayne +MFG 13307 2002 321 Webster +MFG 13309 2002 16 Wheeler +MFG 13311 2002 1082 White +MFG 13313 2002 28013 Whitfield +MFG 13315 2002 195 Wilcox +MFG 13317 2002 1567 Wilkes +MFG 13319 2002 2006 Wilkinson +MFG 13321 2002 202 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_OIL.ALO new file mode 100644 index 0000000..58cc24f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_OIL.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 13000 2002 123 GA +OIL 13001 2002 0 Appling +OIL 13003 2002 0 Atkinson +OIL 13005 2002 0 Bacon +OIL 13007 2002 0 Baker +OIL 13009 2002 0 Baldwin +OIL 13011 2002 0 Banks +OIL 13013 2002 0 Barrow +OIL 13015 2002 0 Bartow +OIL 13017 2002 0 Ben Hill +OIL 13019 2002 0 Berrien +OIL 13021 2002 9 Bibb +OIL 13023 2002 0 Bleckley +OIL 13025 2002 10 Brantley +OIL 13027 2002 0 Brooks +OIL 13029 2002 0 Bryan +OIL 13031 2002 0 Bulloch +OIL 13033 2002 0 Burke +OIL 13035 2002 0 Butts +OIL 13037 2002 0 Calhoun +OIL 13039 2002 0 Camden +OIL 13043 2002 18 Candler +OIL 13045 2002 0 Carroll +OIL 13047 2002 0 Catoosa +OIL 13049 2002 0 Charlton +OIL 13051 2002 0 Chatham +OIL 13053 2002 0 Chattahoochee +OIL 13055 2002 0 Chattooga +OIL 13057 2002 0 Cherokee +OIL 13059 2002 0 Clarke +OIL 13061 2002 0 Clay +OIL 13063 2002 0 Clayton +OIL 13065 2002 0 Clinch +OIL 13067 2002 9 Cobb +OIL 13069 2002 0 Coffee +OIL 13071 2002 0 Colquitt +OIL 13073 2002 0 Columbia +OIL 13075 2002 0 Cook +OIL 13077 2002 0 Coweta +OIL 13079 2002 0 Crawford +OIL 13081 2002 0 Crisp +OIL 13083 2002 0 Dade +OIL 13085 2002 0 Dawson +OIL 13087 2002 0 Decatur +OIL 13089 2002 0 DeKalb +OIL 13091 2002 0 Dodge +OIL 13093 2002 0 Dooly +OIL 13095 2002 10 Dougherty +OIL 13097 2002 0 Douglas +OIL 13099 2002 0 Early +OIL 13101 2002 0 Echols +OIL 13103 2002 0 Effingham +OIL 13105 2002 0 Elbert +OIL 13107 2002 0 Emanuel +OIL 13109 2002 0 Evans +OIL 13111 2002 0 Fannin +OIL 13113 2002 0 Fayette +OIL 13115 2002 0 Floyd +OIL 13117 2002 0 Forsyth +OIL 13119 2002 0 Franklin +OIL 13121 2002 9 Fulton +OIL 13123 2002 0 Gilmer +OIL 13125 2002 0 Glascock +OIL 13127 2002 0 Glynn +OIL 13129 2002 0 Gordon +OIL 13131 2002 0 Grady +OIL 13133 2002 0 Greene +OIL 13135 2002 0 Gwinnett +OIL 13137 2002 0 Habersham +OIL 13139 2002 10 Hall +OIL 13141 2002 0 Hancock +OIL 13143 2002 0 Haralson +OIL 13145 2002 0 Harris +OIL 13147 2002 0 Hart +OIL 13149 2002 0 Heard +OIL 13151 2002 0 Henry +OIL 13153 2002 0 Houston +OIL 13155 2002 0 Irwin +OIL 13157 2002 0 Jackson +OIL 13159 2002 0 Jasper +OIL 13161 2002 0 Jeff Davis +OIL 13163 2002 0 Jefferson +OIL 13165 2002 0 Jenkins +OIL 13167 2002 0 Johnson +OIL 13169 2002 0 Jones +OIL 13171 2002 0 Lamar +OIL 13173 2002 0 Lanier +OIL 13175 2002 0 Laurens +OIL 13177 2002 0 Lee +OIL 13179 2002 0 Liberty +OIL 13181 2002 0 Lincoln +OIL 13183 2002 0 Long +OIL 13185 2002 0 Lowndes +OIL 13187 2002 0 Lumpkin +OIL 13189 2002 0 McDuffie +OIL 13191 2002 0 McIntosh +OIL 13193 2002 0 Macon +OIL 13195 2002 0 Madison +OIL 13197 2002 0 Marion +OIL 13199 2002 0 Meriwether +OIL 13201 2002 0 Miller +OIL 13205 2002 0 Mitchell +OIL 13207 2002 0 Monroe +OIL 13209 2002 0 Montgomery +OIL 13211 2002 0 Morgan +OIL 13213 2002 0 Murray +OIL 13215 2002 0 Muscogee +OIL 13217 2002 0 Newton +OIL 13219 2002 10 Oconee +OIL 13221 2002 0 Oglethorpe +OIL 13223 2002 9 Paulding +OIL 13225 2002 0 Peach +OIL 13227 2002 0 Pickens +OIL 13229 2002 0 Pierce +OIL 13231 2002 0 Pike +OIL 13233 2002 0 Polk +OIL 13235 2002 0 Pulaski +OIL 13237 2002 0 Putnam +OIL 13239 2002 0 Quitman +OIL 13241 2002 9 Rabun +OIL 13243 2002 0 Randolph +OIL 13245 2002 0 Richmond +OIL 13247 2002 0 Rockdale +OIL 13249 2002 0 Schley +OIL 13251 2002 10 Screven +OIL 13253 2002 0 Seminole +OIL 13255 2002 10 Spalding +OIL 13257 2002 0 Stephens +OIL 13259 2002 0 Stewart +OIL 13261 2002 0 Sumter +OIL 13263 2002 0 Talbot +OIL 13265 2002 0 Taliaferro +OIL 13267 2002 0 Tattnall +OIL 13269 2002 0 Taylor +OIL 13271 2002 0 Telfair +OIL 13273 2002 0 Terrell +OIL 13275 2002 0 Thomas +OIL 13277 2002 0 Tift +OIL 13279 2002 0 Toombs +OIL 13281 2002 0 Towns +OIL 13283 2002 0 Treutlen +OIL 13285 2002 0 Troup +OIL 13287 2002 0 Turner +OIL 13289 2002 0 Twiggs +OIL 13291 2002 0 Union +OIL 13293 2002 0 Upson +OIL 13295 2002 0 Walker +OIL 13297 2002 0 Walton +OIL 13299 2002 0 Ware +OIL 13301 2002 0 Warren +OIL 13303 2002 0 Washington +OIL 13305 2002 0 Wayne +OIL 13307 2002 0 Webster +OIL 13309 2002 0 Wheeler +OIL 13311 2002 0 White +OIL 13313 2002 0 Whitfield +OIL 13315 2002 0 Wilcox +OIL 13317 2002 0 Wilkes +OIL 13319 2002 0 Wilkinson +OIL 13321 2002 0 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_POP.ALO new file mode 100644 index 0000000..534f5d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_POP.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 13000 2002 8539735 GA +POP 13001 2002 17641 Appling +POP 13003 2002 7701 Atkinson +POP 13005 2002 10033 Bacon +POP 13007 2002 4013 Baker +POP 13009 2002 44945 Baldwin +POP 13011 2002 15163 Banks +POP 13013 2002 51231 Barrow +POP 13015 2002 82594 Bartow +POP 13017 2002 17267 Ben Hill +POP 13019 2002 16382 Berrien +POP 13021 2002 154490 Bibb +POP 13023 2002 11798 Bleckley +POP 13025 2002 15216 Brantley +POP 13027 2002 16324 Brooks +POP 13029 2002 25087 Bryan +POP 13031 2002 57133 Bulloch +POP 13033 2002 22768 Burke +POP 13035 2002 21401 Butts +POP 13037 2002 6319 Calhoun +POP 13039 2002 45485 Camden +POP 13043 2002 9823 Candler +POP 13045 2002 94858 Carroll +POP 13047 2002 56576 Catoosa +POP 13049 2002 10597 Charlton +POP 13051 2002 235208 Chatham +POP 13053 2002 19345 Chattahoochee +POP 13055 2002 26091 Chattooga +POP 13057 2002 159556 Cherokee +POP 13059 2002 102211 Clarke +POP 13061 2002 3353 Clay +POP 13063 2002 253415 Clayton +POP 13065 2002 6843 Clinch +POP 13067 2002 638410 Cobb +POP 13069 2002 38766 Coffee +POP 13071 2002 42995 Colquitt +POP 13073 2002 94681 Columbia +POP 13075 2002 15974 Cook +POP 13077 2002 97885 Coweta +POP 13079 2002 12589 Crawford +POP 13081 2002 22135 Crisp +POP 13083 2002 15727 Dade +POP 13085 2002 17626 Dawson +POP 13087 2002 28093 Decatur +POP 13089 2002 673013 DeKalb +POP 13091 2002 19287 Dodge +POP 13093 2002 11578 Dooly +POP 13095 2002 95712 Dougherty +POP 13097 2002 98431 Douglas +POP 13099 2002 12200 Early +POP 13101 2002 3858 Echols +POP 13103 2002 41074 Effingham +POP 13105 2002 20665 Elbert +POP 13107 2002 21784 Emanuel +POP 13109 2002 11102 Evans +POP 13111 2002 20912 Fannin +POP 13113 2002 96436 Fayette +POP 13115 2002 92627 Floyd +POP 13117 2002 116821 Forsyth +POP 13119 2002 20907 Franklin +POP 13121 2002 817510 Fulton +POP 13123 2002 25258 Gilmer +POP 13125 2002 2595 Glascock +POP 13127 2002 69415 Glynn +POP 13129 2002 46691 Gordon +POP 13131 2002 23956 Grady +POP 13133 2002 15164 Greene +POP 13135 2002 648833 Gwinnett +POP 13137 2002 37819 Habersham +POP 13139 2002 151829 Hall +POP 13141 2002 10030 Hancock +POP 13143 2002 26883 Haralson +POP 13145 2002 25138 Harris +POP 13147 2002 23237 Hart +POP 13149 2002 11254 Heard +POP 13151 2002 140137 Henry +POP 13153 2002 116462 Houston +POP 13155 2002 10052 Irwin +POP 13157 2002 45522 Jackson +POP 13159 2002 12233 Jasper +POP 13161 2002 12864 Jeff Davis +POP 13163 2002 17123 Jefferson +POP 13165 2002 8665 Jenkins +POP 13167 2002 9419 Johnson +POP 13169 2002 24792 Jones +POP 13171 2002 16223 Lamar +POP 13173 2002 7186 Lanier +POP 13175 2002 45725 Laurens +POP 13177 2002 27727 Lee +POP 13179 2002 60797 Liberty +POP 13181 2002 8464 Lincoln +POP 13183 2002 10763 Long +POP 13185 2002 93646 Lowndes +POP 13187 2002 22591 Lumpkin +POP 13189 2002 21320 McDuffie +POP 13191 2002 10959 McIntosh +POP 13193 2002 14044 Macon +POP 13195 2002 26689 Madison +POP 13197 2002 7166 Marion +POP 13199 2002 22873 Meriwether +POP 13201 2002 6395 Miller +POP 13205 2002 23872 Mitchell +POP 13207 2002 22651 Monroe +POP 13209 2002 8463 Montgomery +POP 13211 2002 16417 Morgan +POP 13213 2002 38679 Murray +POP 13215 2002 185226 Muscogee +POP 13217 2002 71814 Newton +POP 13219 2002 27297 Oconee +POP 13221 2002 13138 Oglethorpe +POP 13223 2002 94484 Paulding +POP 13225 2002 24120 Peach +POP 13227 2002 25682 Pickens +POP 13229 2002 15994 Pierce +POP 13231 2002 14612 Pike +POP 13233 2002 39540 Polk +POP 13235 2002 9728 Pulaski +POP 13237 2002 19382 Putnam +POP 13239 2002 2571 Quitman +POP 13241 2002 15532 Rabun +POP 13243 2002 7574 Randolph +POP 13245 2002 198173 Richmond +POP 13247 2002 73125 Rockdale +POP 13249 2002 3938 Schley +POP 13251 2002 15438 Screven +POP 13253 2002 9348 Seminole +POP 13255 2002 59704 Spalding +POP 13257 2002 25534 Stephens +POP 13259 2002 5102 Stewart +POP 13261 2002 33244 Sumter +POP 13263 2002 6600 Talbot +POP 13265 2002 2006 Taliaferro +POP 13267 2002 22270 Tattnall +POP 13269 2002 8903 Taylor +POP 13271 2002 11620 Telfair +POP 13273 2002 10819 Terrell +POP 13275 2002 43142 Thomas +POP 13277 2002 39078 Tift +POP 13279 2002 26267 Toombs +POP 13281 2002 9684 Towns +POP 13283 2002 6973 Treutlen +POP 13285 2002 59896 Troup +POP 13287 2002 9621 Turner +POP 13289 2002 10510 Twiggs +POP 13291 2002 18398 Union +POP 13293 2002 27778 Upson +POP 13295 2002 62100 Walker +POP 13297 2002 67101 Walton +POP 13299 2002 35537 Ware +POP 13301 2002 6258 Warren +POP 13303 2002 20890 Washington +POP 13305 2002 27114 Wayne +POP 13307 2002 2295 Webster +POP 13309 2002 6577 Wheeler +POP 13311 2002 22094 White +POP 13313 2002 86774 Whitfield +POP 13315 2002 8663 Wilcox +POP 13317 2002 10660 Wilkes +POP 13319 2002 10267 Wilkinson +POP 13321 2002 21854 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_RAIL.ALO new file mode 100644 index 0000000..3e4b179 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_RAIL.ALO @@ -0,0 +1,186 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 13000 2002 26751.590 GA +RR 13001 2002 45.730 Appling +RR 13003 2002 10.470 Atkinson +RR 13005 2002 282.660 Bacon +RR 13007 2002 0.000 Baker +RR 13009 2002 24.670 Baldwin +RR 13011 2002 48.640 Banks +RR 13013 2002 203.180 Barrow +RR 13015 2002 725.020 Bartow +RR 13017 2002 342.120 Ben Hill +RR 13019 2002 0.000 Berrien +RR 13021 2002 549.280 Bibb +RR 13023 2002 45.850 Bleckley +RR 13025 2002 275.430 Brantley +RR 13027 2002 131.230 Brooks +RR 13029 2002 275.420 Bryan +RR 13031 2002 0.000 Bulloch +RR 13033 2002 208.050 Burke +RR 13035 2002 385.130 Butts +RR 13037 2002 16.350 Calhoun +RR 13039 2002 1.240 Camden +RR 13043 2002 0.000 Candler +RR 13045 2002 199.130 Carroll +RR 13047 2002 431.440 Catoosa +RR 13049 2002 682.290 Charlton +RR 13051 2002 679.140 Chatham +RR 13053 2002 0.000 Chattahoochee +RR 13055 2002 0.000 Chattooga +RR 13057 2002 0.000 Cherokee +RR 13059 2002 234.080 Clarke +RR 13061 2002 0.000 Clay +RR 13063 2002 381.590 Clayton +RR 13065 2002 317.090 Clinch +RR 13067 2002 1006.700 Cobb +RR 13069 2002 293.010 Coffee +RR 13071 2002 0.000 Colquitt +RR 13073 2002 215.350 Columbia +RR 13075 2002 185.390 Cook +RR 13077 2002 503.780 Coweta +RR 13079 2002 70.200 Crawford +RR 13081 2002 425.870 Crisp +RR 13083 2002 409.890 Dade +RR 13085 2002 0.000 Dawson +RR 13087 2002 111.740 Decatur +RR 13089 2002 467.380 DeKalb +RR 13091 2002 35.380 Dodge +RR 13093 2002 305.680 Dooly +RR 13095 2002 35.700 Dougherty +RR 13097 2002 183.490 Douglas +RR 13099 2002 103.400 Early +RR 13101 2002 228.750 Echols +RR 13103 2002 408.700 Effingham +RR 13105 2002 197.410 Elbert +RR 13107 2002 0.000 Emanuel +RR 13109 2002 0.000 Evans +RR 13111 2002 12.700 Fannin +RR 13113 2002 130.410 Fayette +RR 13115 2002 619.410 Floyd +RR 13117 2002 0.000 Forsyth +RR 13119 2002 0.000 Franklin +RR 13121 2002 1371.770 Fulton +RR 13123 2002 0.000 Gilmer +RR 13125 2002 6.200 Glascock +RR 13127 2002 53.770 Glynn +RR 13129 2002 706.060 Gordon +RR 13131 2002 55.690 Grady +RR 13133 2002 81.770 Greene +RR 13135 2002 349.930 Gwinnett +RR 13137 2002 108.550 Habersham +RR 13139 2002 226.240 Hall +RR 13141 2002 14.240 Hancock +RR 13143 2002 206.490 Haralson +RR 13145 2002 23.090 Harris +RR 13147 2002 0.000 Hart +RR 13149 2002 0.000 Heard +RR 13151 2002 514.270 Henry +RR 13153 2002 348.810 Houston +RR 13155 2002 342.120 Irwin +RR 13157 2002 24.430 Jackson +RR 13159 2002 18.540 Jasper +RR 13161 2002 41.070 Jeff Davis +RR 13163 2002 120.250 Jefferson +RR 13165 2002 155.360 Jenkins +RR 13167 2002 11.270 Johnson +RR 13169 2002 301.440 Jones +RR 13171 2002 17.230 Lamar +RR 13173 2002 49.840 Lanier +RR 13175 2002 11.270 Laurens +RR 13177 2002 31.200 Lee +RR 13179 2002 310.690 Liberty +RR 13181 2002 0.000 Lincoln +RR 13183 2002 109.050 Long +RR 13185 2002 290.160 Lowndes +RR 13187 2002 0.000 Lumpkin +RR 13189 2002 66.910 McDuffie +RR 13191 2002 0.000 McIntosh +RR 13193 2002 330.640 Macon +RR 13195 2002 126.700 Madison +RR 13197 2002 0.000 Marion +RR 13199 2002 346.710 Meriwether +RR 13201 2002 0.000 Miller +RR 13205 2002 0.000 Mitchell +RR 13207 2002 357.830 Monroe +RR 13209 2002 0.000 Montgomery +RR 13211 2002 88.340 Morgan +RR 13213 2002 318.400 Murray +RR 13215 2002 115.660 Muscogee +RR 13217 2002 58.360 Newton +RR 13219 2002 82.400 Oconee +RR 13221 2002 0.000 Oglethorpe +RR 13223 2002 426.350 Paulding +RR 13225 2002 187.680 Peach +RR 13227 2002 0.000 Pickens +RR 13229 2002 341.600 Pierce +RR 13231 2002 0.000 Pike +RR 13233 2002 361.000 Polk +RR 13235 2002 0.000 Pulaski +RR 13237 2002 12.280 Putnam +RR 13239 2002 0.000 Quitman +RR 13241 2002 0.000 Rabun +RR 13243 2002 0.000 Randolph +RR 13245 2002 248.510 Richmond +RR 13247 2002 82.610 Rockdale +RR 13249 2002 0.000 Schley +RR 13251 2002 77.180 Screven +RR 13253 2002 59.440 Seminole +RR 13255 2002 22.230 Spalding +RR 13257 2002 130.640 Stephens +RR 13259 2002 0.000 Stewart +RR 13261 2002 31.170 Sumter +RR 13263 2002 359.520 Talbot +RR 13265 2002 57.680 Taliaferro +RR 13267 2002 0.000 Tattnall +RR 13269 2002 297.550 Taylor +RR 13271 2002 44.590 Telfair +RR 13273 2002 0.000 Terrell +RR 13275 2002 83.660 Thomas +RR 13277 2002 163.540 Tift +RR 13279 2002 0.000 Toombs +RR 13281 2002 0.000 Towns +RR 13283 2002 0.000 Treutlen +RR 13285 2002 266.970 Troup +RR 13287 2002 402.500 Turner +RR 13289 2002 50.880 Twiggs +RR 13291 2002 0.000 Union +RR 13293 2002 5.450 Upson +RR 13295 2002 0.000 Walker +RR 13297 2002 69.890 Walton +RR 13299 2002 652.910 Ware +RR 13301 2002 62.680 Warren +RR 13303 2002 260.280 Washington +RR 13305 2002 458.720 Wayne +RR 13307 2002 0.000 Webster +RR 13309 2002 0.000 Wheeler +RR 13311 2002 0.000 White +RR 13313 2002 890.480 Whitfield +RR 13315 2002 243.640 Wilcox +RR 13317 2002 0.000 Wilkes +RR 13319 2002 161.640 Wilkinson +RR 13321 2002 0.000 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_RVPRK.ALO new file mode 100644 index 0000000..13af7c4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_RVPRK.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 13000 2002 92 GA +RVP 13001 2002 0 Appling +RVP 13003 2002 0 Atkinson +RVP 13005 2002 0 Bacon +RVP 13007 2002 0 Baker +RVP 13009 2002 0 Baldwin +RVP 13011 2002 0 Banks +RVP 13013 2002 0 Barrow +RVP 13015 2002 1 Bartow +RVP 13017 2002 0 Ben Hill +RVP 13019 2002 0 Berrien +RVP 13021 2002 3 Bibb +RVP 13023 2002 0 Bleckley +RVP 13025 2002 0 Brantley +RVP 13027 2002 0 Brooks +RVP 13029 2002 1 Bryan +RVP 13031 2002 1 Bulloch +RVP 13033 2002 0 Burke +RVP 13035 2002 0 Butts +RVP 13037 2002 1 Calhoun +RVP 13039 2002 0 Camden +RVP 13043 2002 0 Candler +RVP 13045 2002 1 Carroll +RVP 13047 2002 2 Catoosa +RVP 13049 2002 0 Charlton +RVP 13051 2002 4 Chatham +RVP 13053 2002 0 Chattahoochee +RVP 13055 2002 2 Chattooga +RVP 13057 2002 2 Cherokee +RVP 13059 2002 0 Clarke +RVP 13061 2002 0 Clay +RVP 13063 2002 0 Clayton +RVP 13065 2002 0 Clinch +RVP 13067 2002 4 Cobb +RVP 13069 2002 0 Coffee +RVP 13071 2002 2 Colquitt +RVP 13073 2002 0 Columbia +RVP 13075 2002 0 Cook +RVP 13077 2002 0 Coweta +RVP 13079 2002 0 Crawford +RVP 13081 2002 1 Crisp +RVP 13083 2002 0 Dade +RVP 13085 2002 0 Dawson +RVP 13087 2002 0 Decatur +RVP 13089 2002 3 DeKalb +RVP 13091 2002 0 Dodge +RVP 13093 2002 1 Dooly +RVP 13095 2002 1 Dougherty +RVP 13097 2002 0 Douglas +RVP 13099 2002 0 Early +RVP 13101 2002 0 Echols +RVP 13103 2002 2 Effingham +RVP 13105 2002 1 Elbert +RVP 13107 2002 0 Emanuel +RVP 13109 2002 0 Evans +RVP 13111 2002 1 Fannin +RVP 13113 2002 0 Fayette +RVP 13115 2002 2 Floyd +RVP 13117 2002 0 Forsyth +RVP 13119 2002 0 Franklin +RVP 13121 2002 6 Fulton +RVP 13123 2002 0 Gilmer +RVP 13125 2002 0 Glascock +RVP 13127 2002 0 Glynn +RVP 13129 2002 1 Gordon +RVP 13131 2002 0 Grady +RVP 13133 2002 1 Greene +RVP 13135 2002 1 Gwinnett +RVP 13137 2002 2 Habersham +RVP 13139 2002 3 Hall +RVP 13141 2002 0 Hancock +RVP 13143 2002 0 Haralson +RVP 13145 2002 1 Harris +RVP 13147 2002 1 Hart +RVP 13149 2002 2 Heard +RVP 13151 2002 1 Henry +RVP 13153 2002 2 Houston +RVP 13155 2002 0 Irwin +RVP 13157 2002 0 Jackson +RVP 13159 2002 0 Jasper +RVP 13161 2002 0 Jeff Davis +RVP 13163 2002 0 Jefferson +RVP 13165 2002 0 Jenkins +RVP 13167 2002 0 Johnson +RVP 13169 2002 0 Jones +RVP 13171 2002 0 Lamar +RVP 13173 2002 1 Lanier +RVP 13175 2002 0 Laurens +RVP 13177 2002 0 Lee +RVP 13179 2002 0 Liberty +RVP 13181 2002 0 Lincoln +RVP 13183 2002 0 Long +RVP 13185 2002 3 Lowndes +RVP 13187 2002 1 Lumpkin +RVP 13189 2002 1 McDuffie +RVP 13191 2002 1 McIntosh +RVP 13193 2002 0 Macon +RVP 13195 2002 0 Madison +RVP 13197 2002 0 Marion +RVP 13199 2002 0 Meriwether +RVP 13201 2002 0 Miller +RVP 13205 2002 2 Mitchell +RVP 13207 2002 1 Monroe +RVP 13209 2002 0 Montgomery +RVP 13211 2002 1 Morgan +RVP 13213 2002 0 Murray +RVP 13215 2002 0 Muscogee +RVP 13217 2002 0 Newton +RVP 13219 2002 0 Oconee +RVP 13221 2002 0 Oglethorpe +RVP 13223 2002 0 Paulding +RVP 13225 2002 1 Peach +RVP 13227 2002 1 Pickens +RVP 13229 2002 0 Pierce +RVP 13231 2002 0 Pike +RVP 13233 2002 1 Polk +RVP 13235 2002 0 Pulaski +RVP 13237 2002 0 Putnam +RVP 13239 2002 0 Quitman +RVP 13241 2002 5 Rabun +RVP 13243 2002 1 Randolph +RVP 13245 2002 0 Richmond +RVP 13247 2002 0 Rockdale +RVP 13249 2002 0 Schley +RVP 13251 2002 0 Screven +RVP 13253 2002 1 Seminole +RVP 13255 2002 1 Spalding +RVP 13257 2002 1 Stephens +RVP 13259 2002 0 Stewart +RVP 13261 2002 0 Sumter +RVP 13263 2002 0 Talbot +RVP 13265 2002 0 Taliaferro +RVP 13267 2002 0 Tattnall +RVP 13269 2002 0 Taylor +RVP 13271 2002 0 Telfair +RVP 13273 2002 0 Terrell +RVP 13275 2002 1 Thomas +RVP 13277 2002 0 Tift +RVP 13279 2002 0 Toombs +RVP 13281 2002 1 Towns +RVP 13283 2002 0 Treutlen +RVP 13285 2002 3 Troup +RVP 13287 2002 0 Turner +RVP 13289 2002 0 Twiggs +RVP 13291 2002 0 Union +RVP 13293 2002 0 Upson +RVP 13295 2002 0 Walker +RVP 13297 2002 0 Walton +RVP 13299 2002 1 Ware +RVP 13301 2002 0 Warren +RVP 13303 2002 0 Washington +RVP 13305 2002 1 Wayne +RVP 13307 2002 0 Webster +RVP 13309 2002 0 Wheeler +RVP 13311 2002 3 White +RVP 13313 2002 1 Whitfield +RVP 13315 2002 0 Wilcox +RVP 13317 2002 0 Wilkes +RVP 13319 2002 0 Wilkinson +RVP 13321 2002 1 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_SBC.ALO new file mode 100644 index 0000000..3ebd08b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_SBC.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 13000 2002 18 GA +SBC 13001 2002 0 Appling +SBC 13003 2002 0 Atkinson +SBC 13005 2002 0 Bacon +SBC 13007 2002 0 Baker +SBC 13009 2002 0 Baldwin +SBC 13011 2002 0 Banks +SBC 13013 2002 0 Barrow +SBC 13015 2002 0 Bartow +SBC 13017 2002 0 Ben Hill +SBC 13019 2002 0 Berrien +SBC 13021 2002 0 Bibb +SBC 13023 2002 0 Bleckley +SBC 13025 2002 0 Brantley +SBC 13027 2002 0 Brooks +SBC 13029 2002 0 Bryan +SBC 13031 2002 0 Bulloch +SBC 13033 2002 0 Burke +SBC 13035 2002 0 Butts +SBC 13037 2002 0 Calhoun +SBC 13039 2002 0 Camden +SBC 13043 2002 0 Candler +SBC 13045 2002 0 Carroll +SBC 13047 2002 0 Catoosa +SBC 13049 2002 0 Charlton +SBC 13051 2002 0 Chatham +SBC 13053 2002 0 Chattahoochee +SBC 13055 2002 0 Chattooga +SBC 13057 2002 0 Cherokee +SBC 13059 2002 0 Clarke +SBC 13061 2002 0 Clay +SBC 13063 2002 0 Clayton +SBC 13065 2002 0 Clinch +SBC 13067 2002 0 Cobb +SBC 13069 2002 0 Coffee +SBC 13071 2002 0 Colquitt +SBC 13073 2002 0 Columbia +SBC 13075 2002 0 Cook +SBC 13077 2002 0 Coweta +SBC 13079 2002 0 Crawford +SBC 13081 2002 0 Crisp +SBC 13083 2002 0 Dade +SBC 13085 2002 0 Dawson +SBC 13087 2002 0 Decatur +SBC 13089 2002 0 DeKalb +SBC 13091 2002 0 Dodge +SBC 13093 2002 0 Dooly +SBC 13095 2002 0 Dougherty +SBC 13097 2002 0 Douglas +SBC 13099 2002 0 Early +SBC 13101 2002 0 Echols +SBC 13103 2002 0 Effingham +SBC 13105 2002 0 Elbert +SBC 13107 2002 0 Emanuel +SBC 13109 2002 0 Evans +SBC 13111 2002 0 Fannin +SBC 13113 2002 0 Fayette +SBC 13115 2002 0 Floyd +SBC 13117 2002 0 Forsyth +SBC 13119 2002 0 Franklin +SBC 13121 2002 0 Fulton +SBC 13123 2002 0 Gilmer +SBC 13125 2002 0 Glascock +SBC 13127 2002 0 Glynn +SBC 13129 2002 0 Gordon +SBC 13131 2002 0 Grady +SBC 13133 2002 0 Greene +SBC 13135 2002 0 Gwinnett +SBC 13137 2002 0 Habersham +SBC 13139 2002 0 Hall +SBC 13141 2002 0 Hancock +SBC 13143 2002 0 Haralson +SBC 13145 2002 0 Harris +SBC 13147 2002 0 Hart +SBC 13149 2002 0 Heard +SBC 13151 2002 0 Henry +SBC 13153 2002 0 Houston +SBC 13155 2002 0 Irwin +SBC 13157 2002 0 Jackson +SBC 13159 2002 0 Jasper +SBC 13161 2002 0 Jeff Davis +SBC 13163 2002 0 Jefferson +SBC 13165 2002 0 Jenkins +SBC 13167 2002 0 Johnson +SBC 13169 2002 0 Jones +SBC 13171 2002 0 Lamar +SBC 13173 2002 0 Lanier +SBC 13175 2002 0 Laurens +SBC 13177 2002 0 Lee +SBC 13179 2002 0 Liberty +SBC 13181 2002 0 Lincoln +SBC 13183 2002 0 Long +SBC 13185 2002 0 Lowndes +SBC 13187 2002 0 Lumpkin +SBC 13189 2002 0 McDuffie +SBC 13191 2002 0 McIntosh +SBC 13193 2002 0 Macon +SBC 13195 2002 0 Madison +SBC 13197 2002 0 Marion +SBC 13199 2002 0 Meriwether +SBC 13201 2002 0 Miller +SBC 13205 2002 0 Mitchell +SBC 13207 2002 0 Monroe +SBC 13209 2002 0 Montgomery +SBC 13211 2002 0 Morgan +SBC 13213 2002 0 Murray +SBC 13215 2002 0 Muscogee +SBC 13217 2002 0 Newton +SBC 13219 2002 0 Oconee +SBC 13221 2002 0 Oglethorpe +SBC 13223 2002 0 Paulding +SBC 13225 2002 0 Peach +SBC 13227 2002 0 Pickens +SBC 13229 2002 0 Pierce +SBC 13231 2002 0 Pike +SBC 13233 2002 0 Polk +SBC 13235 2002 0 Pulaski +SBC 13237 2002 0 Putnam +SBC 13239 2002 0 Quitman +SBC 13241 2002 12 Rabun +SBC 13243 2002 0 Randolph +SBC 13245 2002 0 Richmond +SBC 13247 2002 0 Rockdale +SBC 13249 2002 0 Schley +SBC 13251 2002 0 Screven +SBC 13253 2002 0 Seminole +SBC 13255 2002 0 Spalding +SBC 13257 2002 0 Stephens +SBC 13259 2002 0 Stewart +SBC 13261 2002 0 Sumter +SBC 13263 2002 0 Talbot +SBC 13265 2002 0 Taliaferro +SBC 13267 2002 0 Tattnall +SBC 13269 2002 0 Taylor +SBC 13271 2002 0 Telfair +SBC 13273 2002 0 Terrell +SBC 13275 2002 0 Thomas +SBC 13277 2002 0 Tift +SBC 13279 2002 0 Toombs +SBC 13281 2002 6 Towns +SBC 13283 2002 0 Treutlen +SBC 13285 2002 0 Troup +SBC 13287 2002 0 Turner +SBC 13289 2002 0 Twiggs +SBC 13291 2002 0 Union +SBC 13293 2002 0 Upson +SBC 13295 2002 0 Walker +SBC 13297 2002 0 Walton +SBC 13299 2002 0 Ware +SBC 13301 2002 0 Warren +SBC 13303 2002 0 Washington +SBC 13305 2002 0 Wayne +SBC 13307 2002 0 Webster +SBC 13309 2002 0 Wheeler +SBC 13311 2002 0 White +SBC 13313 2002 0 Whitfield +SBC 13315 2002 0 Wilcox +SBC 13317 2002 0 Wilkes +SBC 13319 2002 0 Wilkinson +SBC 13321 2002 0 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_SBR.ALO new file mode 100644 index 0000000..aceedc4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_SBR.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 13000 2002 17469 GA +SBR 13001 2002 0 Appling +SBR 13003 2002 0 Atkinson +SBR 13005 2002 0 Bacon +SBR 13007 2002 0 Baker +SBR 13009 2002 0 Baldwin +SBR 13011 2002 0 Banks +SBR 13013 2002 0 Barrow +SBR 13015 2002 0 Bartow +SBR 13017 2002 0 Ben Hill +SBR 13019 2002 0 Berrien +SBR 13021 2002 0 Bibb +SBR 13023 2002 0 Bleckley +SBR 13025 2002 0 Brantley +SBR 13027 2002 0 Brooks +SBR 13029 2002 0 Bryan +SBR 13031 2002 0 Bulloch +SBR 13033 2002 0 Burke +SBR 13035 2002 0 Butts +SBR 13037 2002 0 Calhoun +SBR 13039 2002 0 Camden +SBR 13043 2002 0 Candler +SBR 13045 2002 0 Carroll +SBR 13047 2002 0 Catoosa +SBR 13049 2002 0 Charlton +SBR 13051 2002 0 Chatham +SBR 13053 2002 0 Chattahoochee +SBR 13055 2002 0 Chattooga +SBR 13057 2002 0 Cherokee +SBR 13059 2002 0 Clarke +SBR 13061 2002 0 Clay +SBR 13063 2002 0 Clayton +SBR 13065 2002 0 Clinch +SBR 13067 2002 0 Cobb +SBR 13069 2002 0 Coffee +SBR 13071 2002 0 Colquitt +SBR 13073 2002 0 Columbia +SBR 13075 2002 0 Cook +SBR 13077 2002 0 Coweta +SBR 13079 2002 0 Crawford +SBR 13081 2002 0 Crisp +SBR 13083 2002 0 Dade +SBR 13085 2002 0 Dawson +SBR 13087 2002 0 Decatur +SBR 13089 2002 0 DeKalb +SBR 13091 2002 0 Dodge +SBR 13093 2002 0 Dooly +SBR 13095 2002 0 Dougherty +SBR 13097 2002 0 Douglas +SBR 13099 2002 0 Early +SBR 13101 2002 0 Echols +SBR 13103 2002 0 Effingham +SBR 13105 2002 0 Elbert +SBR 13107 2002 0 Emanuel +SBR 13109 2002 0 Evans +SBR 13111 2002 0 Fannin +SBR 13113 2002 0 Fayette +SBR 13115 2002 0 Floyd +SBR 13117 2002 0 Forsyth +SBR 13119 2002 0 Franklin +SBR 13121 2002 0 Fulton +SBR 13123 2002 0 Gilmer +SBR 13125 2002 0 Glascock +SBR 13127 2002 0 Glynn +SBR 13129 2002 0 Gordon +SBR 13131 2002 0 Grady +SBR 13133 2002 0 Greene +SBR 13135 2002 0 Gwinnett +SBR 13137 2002 0 Habersham +SBR 13139 2002 0 Hall +SBR 13141 2002 0 Hancock +SBR 13143 2002 0 Haralson +SBR 13145 2002 0 Harris +SBR 13147 2002 0 Hart +SBR 13149 2002 0 Heard +SBR 13151 2002 0 Henry +SBR 13153 2002 0 Houston +SBR 13155 2002 0 Irwin +SBR 13157 2002 0 Jackson +SBR 13159 2002 0 Jasper +SBR 13161 2002 0 Jeff Davis +SBR 13163 2002 0 Jefferson +SBR 13165 2002 0 Jenkins +SBR 13167 2002 0 Johnson +SBR 13169 2002 0 Jones +SBR 13171 2002 0 Lamar +SBR 13173 2002 0 Lanier +SBR 13175 2002 0 Laurens +SBR 13177 2002 0 Lee +SBR 13179 2002 0 Liberty +SBR 13181 2002 0 Lincoln +SBR 13183 2002 0 Long +SBR 13185 2002 0 Lowndes +SBR 13187 2002 0 Lumpkin +SBR 13189 2002 0 McDuffie +SBR 13191 2002 0 McIntosh +SBR 13193 2002 0 Macon +SBR 13195 2002 0 Madison +SBR 13197 2002 0 Marion +SBR 13199 2002 0 Meriwether +SBR 13201 2002 0 Miller +SBR 13205 2002 0 Mitchell +SBR 13207 2002 0 Monroe +SBR 13209 2002 0 Montgomery +SBR 13211 2002 0 Morgan +SBR 13213 2002 0 Murray +SBR 13215 2002 0 Muscogee +SBR 13217 2002 0 Newton +SBR 13219 2002 0 Oconee +SBR 13221 2002 0 Oglethorpe +SBR 13223 2002 0 Paulding +SBR 13225 2002 0 Peach +SBR 13227 2002 0 Pickens +SBR 13229 2002 0 Pierce +SBR 13231 2002 0 Pike +SBR 13233 2002 0 Polk +SBR 13235 2002 0 Pulaski +SBR 13237 2002 0 Putnam +SBR 13239 2002 0 Quitman +SBR 13241 2002 10763 Rabun +SBR 13243 2002 0 Randolph +SBR 13245 2002 0 Richmond +SBR 13247 2002 0 Rockdale +SBR 13249 2002 0 Schley +SBR 13251 2002 0 Screven +SBR 13253 2002 0 Seminole +SBR 13255 2002 0 Spalding +SBR 13257 2002 0 Stephens +SBR 13259 2002 0 Stewart +SBR 13261 2002 0 Sumter +SBR 13263 2002 0 Talbot +SBR 13265 2002 0 Taliaferro +SBR 13267 2002 0 Tattnall +SBR 13269 2002 0 Taylor +SBR 13271 2002 0 Telfair +SBR 13273 2002 0 Terrell +SBR 13275 2002 0 Thomas +SBR 13277 2002 0 Tift +SBR 13279 2002 0 Toombs +SBR 13281 2002 6706 Towns +SBR 13283 2002 0 Treutlen +SBR 13285 2002 0 Troup +SBR 13287 2002 0 Turner +SBR 13289 2002 0 Twiggs +SBR 13291 2002 0 Union +SBR 13293 2002 0 Upson +SBR 13295 2002 0 Walker +SBR 13297 2002 0 Walton +SBR 13299 2002 0 Ware +SBR 13301 2002 0 Warren +SBR 13303 2002 0 Washington +SBR 13305 2002 0 Wayne +SBR 13307 2002 0 Webster +SBR 13309 2002 0 Wheeler +SBR 13311 2002 0 White +SBR 13313 2002 0 Whitfield +SBR 13315 2002 0 Wilcox +SBR 13317 2002 0 Wilkes +SBR 13319 2002 0 Wilkinson +SBR 13321 2002 0 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_SNOWM.ALO new file mode 100644 index 0000000..e6b070b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_SNOWM.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 13000 2002 0 GA +SNM 13001 2002 0 Appling +SNM 13003 2002 0 Atkinson +SNM 13005 2002 0 Bacon +SNM 13007 2002 0 Baker +SNM 13009 2002 0 Baldwin +SNM 13011 2002 0 Banks +SNM 13013 2002 0 Barrow +SNM 13015 2002 0 Bartow +SNM 13017 2002 0 Ben Hill +SNM 13019 2002 0 Berrien +SNM 13021 2002 0 Bibb +SNM 13023 2002 0 Bleckley +SNM 13025 2002 0 Brantley +SNM 13027 2002 0 Brooks +SNM 13029 2002 0 Bryan +SNM 13031 2002 0 Bulloch +SNM 13033 2002 0 Burke +SNM 13035 2002 0 Butts +SNM 13037 2002 0 Calhoun +SNM 13039 2002 0 Camden +SNM 13043 2002 0 Candler +SNM 13045 2002 0 Carroll +SNM 13047 2002 0 Catoosa +SNM 13049 2002 0 Charlton +SNM 13051 2002 0 Chatham +SNM 13053 2002 0 Chattahoochee +SNM 13055 2002 0 Chattooga +SNM 13057 2002 0 Cherokee +SNM 13059 2002 0 Clarke +SNM 13061 2002 0 Clay +SNM 13063 2002 0 Clayton +SNM 13065 2002 0 Clinch +SNM 13067 2002 0 Cobb +SNM 13069 2002 0 Coffee +SNM 13071 2002 0 Colquitt +SNM 13073 2002 0 Columbia +SNM 13075 2002 0 Cook +SNM 13077 2002 0 Coweta +SNM 13079 2002 0 Crawford +SNM 13081 2002 0 Crisp +SNM 13083 2002 0 Dade +SNM 13085 2002 0 Dawson +SNM 13087 2002 0 Decatur +SNM 13089 2002 0 DeKalb +SNM 13091 2002 0 Dodge +SNM 13093 2002 0 Dooly +SNM 13095 2002 0 Dougherty +SNM 13097 2002 0 Douglas +SNM 13099 2002 0 Early +SNM 13101 2002 0 Echols +SNM 13103 2002 0 Effingham +SNM 13105 2002 0 Elbert +SNM 13107 2002 0 Emanuel +SNM 13109 2002 0 Evans +SNM 13111 2002 0 Fannin +SNM 13113 2002 0 Fayette +SNM 13115 2002 0 Floyd +SNM 13117 2002 0 Forsyth +SNM 13119 2002 0 Franklin +SNM 13121 2002 0 Fulton +SNM 13123 2002 0 Gilmer +SNM 13125 2002 0 Glascock +SNM 13127 2002 0 Glynn +SNM 13129 2002 0 Gordon +SNM 13131 2002 0 Grady +SNM 13133 2002 0 Greene +SNM 13135 2002 0 Gwinnett +SNM 13137 2002 0 Habersham +SNM 13139 2002 0 Hall +SNM 13141 2002 0 Hancock +SNM 13143 2002 0 Haralson +SNM 13145 2002 0 Harris +SNM 13147 2002 0 Hart +SNM 13149 2002 0 Heard +SNM 13151 2002 0 Henry +SNM 13153 2002 0 Houston +SNM 13155 2002 0 Irwin +SNM 13157 2002 0 Jackson +SNM 13159 2002 0 Jasper +SNM 13161 2002 0 Jeff Davis +SNM 13163 2002 0 Jefferson +SNM 13165 2002 0 Jenkins +SNM 13167 2002 0 Johnson +SNM 13169 2002 0 Jones +SNM 13171 2002 0 Lamar +SNM 13173 2002 0 Lanier +SNM 13175 2002 0 Laurens +SNM 13177 2002 0 Lee +SNM 13179 2002 0 Liberty +SNM 13181 2002 0 Lincoln +SNM 13183 2002 0 Long +SNM 13185 2002 0 Lowndes +SNM 13187 2002 0 Lumpkin +SNM 13189 2002 0 McDuffie +SNM 13191 2002 0 McIntosh +SNM 13193 2002 0 Macon +SNM 13195 2002 0 Madison +SNM 13197 2002 0 Marion +SNM 13199 2002 0 Meriwether +SNM 13201 2002 0 Miller +SNM 13205 2002 0 Mitchell +SNM 13207 2002 0 Monroe +SNM 13209 2002 0 Montgomery +SNM 13211 2002 0 Morgan +SNM 13213 2002 0 Murray +SNM 13215 2002 0 Muscogee +SNM 13217 2002 0 Newton +SNM 13219 2002 0 Oconee +SNM 13221 2002 0 Oglethorpe +SNM 13223 2002 0 Paulding +SNM 13225 2002 0 Peach +SNM 13227 2002 0 Pickens +SNM 13229 2002 0 Pierce +SNM 13231 2002 0 Pike +SNM 13233 2002 0 Polk +SNM 13235 2002 0 Pulaski +SNM 13237 2002 0 Putnam +SNM 13239 2002 0 Quitman +SNM 13241 2002 0 Rabun +SNM 13243 2002 0 Randolph +SNM 13245 2002 0 Richmond +SNM 13247 2002 0 Rockdale +SNM 13249 2002 0 Schley +SNM 13251 2002 0 Screven +SNM 13253 2002 0 Seminole +SNM 13255 2002 0 Spalding +SNM 13257 2002 0 Stephens +SNM 13259 2002 0 Stewart +SNM 13261 2002 0 Sumter +SNM 13263 2002 0 Talbot +SNM 13265 2002 0 Taliaferro +SNM 13267 2002 0 Tattnall +SNM 13269 2002 0 Taylor +SNM 13271 2002 0 Telfair +SNM 13273 2002 0 Terrell +SNM 13275 2002 0 Thomas +SNM 13277 2002 0 Tift +SNM 13279 2002 0 Toombs +SNM 13281 2002 0 Towns +SNM 13283 2002 0 Treutlen +SNM 13285 2002 0 Troup +SNM 13287 2002 0 Turner +SNM 13289 2002 0 Twiggs +SNM 13291 2002 0 Union +SNM 13293 2002 0 Upson +SNM 13295 2002 0 Walker +SNM 13297 2002 0 Walton +SNM 13299 2002 0 Ware +SNM 13301 2002 0 Warren +SNM 13303 2002 0 Washington +SNM 13305 2002 0 Wayne +SNM 13307 2002 0 Webster +SNM 13309 2002 0 Wheeler +SNM 13311 2002 0 White +SNM 13313 2002 0 Whitfield +SNM 13315 2002 0 Wilcox +SNM 13317 2002 0 Wilkes +SNM 13319 2002 0 Wilkinson +SNM 13321 2002 0 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_WIB.ALO new file mode 100644 index 0000000..7b1f858 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_WIB.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 13000 1990 3645 GA +WIB 13001 1990 9 Appling +WIB 13003 1990 16 Atkinson +WIB 13005 1990 3 Bacon +WIB 13007 1990 15 Baker +WIB 13009 1990 23 Baldwin +WIB 13011 1990 1 Banks +WIB 13013 1990 2 Barrow +WIB 13015 1990 28 Bartow +WIB 13017 1990 6 Ben Hill +WIB 13019 1990 14 Berrien +WIB 13021 1990 13 Bibb +WIB 13023 1990 4 Bleckley +WIB 13025 1990 8 Brantley +WIB 13027 1990 11 Brooks +WIB 13029 1990 45 Bryan +WIB 13031 1990 16 Bulloch +WIB 13033 1990 12 Burke +WIB 13035 1990 9 Butts +WIB 13037 1990 9 Calhoun +WIB 13039 1990 328 Camden +WIB 13043 1990 5 Candler +WIB 13045 1990 12 Carroll +WIB 13047 1990 1 Catoosa +WIB 13049 1990 6 Charlton +WIB 13051 1990 467 Chatham +WIB 13053 1990 6 Chattahoochee +WIB 13055 1990 1 Chattooga +WIB 13057 1990 27 Cherokee +WIB 13059 1990 1 Clarke +WIB 13061 1990 56 Clay +WIB 13063 1990 4 Clayton +WIB 13065 1990 39 Clinch +WIB 13067 1990 11 Cobb +WIB 13069 1990 9 Coffee +WIB 13071 1990 11 Colquitt +WIB 13073 1990 46 Columbia +WIB 13075 1990 11 Cook +WIB 13077 1990 8 Coweta +WIB 13079 1990 3 Crawford +WIB 13081 1990 19 Crisp +WIB 13083 1990 0 Dade +WIB 13085 1990 8 Dawson +WIB 13087 1990 68 Decatur +WIB 13089 1990 7 DeKalb +WIB 13091 1990 7 Dodge +WIB 13093 1990 11 Dooly +WIB 13095 1990 13 Dougherty +WIB 13097 1990 2 Douglas +WIB 13099 1990 13 Early +WIB 13101 1990 43 Echols +WIB 13103 1990 9 Effingham +WIB 13105 1990 15 Elbert +WIB 13107 1990 11 Emanuel +WIB 13109 1990 5 Evans +WIB 13111 1990 15 Fannin +WIB 13113 1990 5 Fayette +WIB 13115 1990 14 Floyd +WIB 13117 1990 56 Forsyth +WIB 13119 1990 8 Franklin +WIB 13121 1990 15 Fulton +WIB 13123 1990 13 Gilmer +WIB 13125 1990 1 Glascock +WIB 13127 1990 329 Glynn +WIB 13129 1990 6 Gordon +WIB 13131 1990 6 Grady +WIB 13133 1990 46 Greene +WIB 13135 1990 10 Gwinnett +WIB 13137 1990 3 Habersham +WIB 13139 1990 92 Hall +WIB 13141 1990 14 Hancock +WIB 13143 1990 3 Haralson +WIB 13145 1990 24 Harris +WIB 13147 1990 63 Hart +WIB 13149 1990 13 Heard +WIB 13151 1990 5 Henry +WIB 13153 1990 8 Houston +WIB 13155 1990 15 Irwin +WIB 13157 1990 2 Jackson +WIB 13159 1990 8 Jasper +WIB 13161 1990 5 Jeff Davis +WIB 13163 1990 5 Jefferson +WIB 13165 1990 7 Jenkins +WIB 13167 1990 5 Johnson +WIB 13169 1990 4 Jones +WIB 13171 1990 3 Lamar +WIB 13173 1990 34 Lanier +WIB 13175 1990 15 Laurens +WIB 13177 1990 16 Lee +WIB 13179 1990 161 Liberty +WIB 13181 1990 120 Lincoln +WIB 13183 1990 6 Long +WIB 13185 1990 17 Lowndes +WIB 13187 1990 1 Lumpkin +WIB 13189 1990 17 McDuffie +WIB 13191 1990 325 McIntosh +WIB 13193 1990 7 Macon +WIB 13195 1990 3 Madison +WIB 13197 1990 1 Marion +WIB 13199 1990 5 Meriwether +WIB 13201 1990 2 Miller +WIB 13205 1990 5 Mitchell +WIB 13207 1990 6 Monroe +WIB 13209 1990 5 Montgomery +WIB 13211 1990 13 Morgan +WIB 13213 1990 6 Murray +WIB 13215 1990 12 Muscogee +WIB 13217 1990 7 Newton +WIB 13219 1990 1 Oconee +WIB 13221 1990 3 Oglethorpe +WIB 13223 1990 4 Paulding +WIB 13225 1990 1 Peach +WIB 13227 1990 2 Pickens +WIB 13229 1990 2 Pierce +WIB 13231 1990 3 Pike +WIB 13233 1990 3 Polk +WIB 13235 1990 6 Pulaski +WIB 13237 1990 42 Putnam +WIB 13239 1990 24 Quitman +WIB 13241 1990 15 Rabun +WIB 13243 1990 4 Randolph +WIB 13245 1990 11 Richmond +WIB 13247 1990 4 Rockdale +WIB 13249 1990 1 Schley +WIB 13251 1990 18 Screven +WIB 13253 1990 48 Seminole +WIB 13255 1990 4 Spalding +WIB 13257 1990 13 Stephens +WIB 13259 1990 12 Stewart +WIB 13261 1990 19 Sumter +WIB 13263 1990 4 Talbot +WIB 13265 1990 0 Taliaferro +WIB 13267 1990 12 Tattnall +WIB 13269 1990 6 Taylor +WIB 13271 1990 8 Telfair +WIB 13273 1990 6 Terrell +WIB 13275 1990 10 Thomas +WIB 13277 1990 10 Tift +WIB 13279 1990 5 Toombs +WIB 13281 1990 14 Towns +WIB 13283 1990 4 Treutlen +WIB 13285 1990 83 Troup +WIB 13287 1990 10 Turner +WIB 13289 1990 7 Twiggs +WIB 13291 1990 17 Union +WIB 13293 1990 6 Upson +WIB 13295 1990 1 Walker +WIB 13297 1990 2 Walton +WIB 13299 1990 10 Ware +WIB 13301 1990 3 Warren +WIB 13303 1990 10 Washington +WIB 13305 1990 11 Wayne +WIB 13307 1990 2 Webster +WIB 13309 1990 6 Wheeler +WIB 13311 1990 1 White +WIB 13313 1990 2 Whitfield +WIB 13315 1990 8 Wilcox +WIB 13317 1990 7 Wilkes +WIB 13319 1990 14 Wilkinson +WIB 13321 1990 12 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/GA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/GA_WOB.ALO new file mode 100644 index 0000000..c17828b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/GA_WOB.ALO @@ -0,0 +1,184 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 13000 1990 2753 GA +WOB 13001 1990 9 Appling +WOB 13003 1990 16 Atkinson +WOB 13005 1990 3 Bacon +WOB 13007 1990 15 Baker +WOB 13009 1990 23 Baldwin +WOB 13011 1990 1 Banks +WOB 13013 1990 2 Barrow +WOB 13015 1990 28 Bartow +WOB 13017 1990 6 Ben Hill +WOB 13019 1990 14 Berrien +WOB 13021 1990 13 Bibb +WOB 13023 1990 4 Bleckley +WOB 13025 1990 8 Brantley +WOB 13027 1990 11 Brooks +WOB 13029 1990 30 Bryan +WOB 13031 1990 16 Bulloch +WOB 13033 1990 12 Burke +WOB 13035 1990 9 Butts +WOB 13037 1990 9 Calhoun +WOB 13039 1990 168 Camden +WOB 13043 1990 5 Candler +WOB 13045 1990 12 Carroll +WOB 13047 1990 1 Catoosa +WOB 13049 1990 6 Charlton +WOB 13051 1990 186 Chatham +WOB 13053 1990 6 Chattahoochee +WOB 13055 1990 1 Chattooga +WOB 13057 1990 27 Cherokee +WOB 13059 1990 1 Clarke +WOB 13061 1990 56 Clay +WOB 13063 1990 4 Clayton +WOB 13065 1990 39 Clinch +WOB 13067 1990 11 Cobb +WOB 13069 1990 9 Coffee +WOB 13071 1990 11 Colquitt +WOB 13073 1990 46 Columbia +WOB 13075 1990 11 Cook +WOB 13077 1990 8 Coweta +WOB 13079 1990 3 Crawford +WOB 13081 1990 19 Crisp +WOB 13083 1990 0 Dade +WOB 13085 1990 8 Dawson +WOB 13087 1990 68 Decatur +WOB 13089 1990 7 DeKalb +WOB 13091 1990 7 Dodge +WOB 13093 1990 11 Dooly +WOB 13095 1990 13 Dougherty +WOB 13097 1990 2 Douglas +WOB 13099 1990 13 Early +WOB 13101 1990 43 Echols +WOB 13103 1990 9 Effingham +WOB 13105 1990 15 Elbert +WOB 13107 1990 11 Emanuel +WOB 13109 1990 5 Evans +WOB 13111 1990 15 Fannin +WOB 13113 1990 5 Fayette +WOB 13115 1990 14 Floyd +WOB 13117 1990 56 Forsyth +WOB 13119 1990 8 Franklin +WOB 13121 1990 15 Fulton +WOB 13123 1990 13 Gilmer +WOB 13125 1990 1 Glascock +WOB 13127 1990 147 Glynn +WOB 13129 1990 6 Gordon +WOB 13131 1990 6 Grady +WOB 13133 1990 46 Greene +WOB 13135 1990 10 Gwinnett +WOB 13137 1990 3 Habersham +WOB 13139 1990 92 Hall +WOB 13141 1990 14 Hancock +WOB 13143 1990 3 Haralson +WOB 13145 1990 24 Harris +WOB 13147 1990 63 Hart +WOB 13149 1990 13 Heard +WOB 13151 1990 5 Henry +WOB 13153 1990 8 Houston +WOB 13155 1990 15 Irwin +WOB 13157 1990 2 Jackson +WOB 13159 1990 8 Jasper +WOB 13161 1990 5 Jeff Davis +WOB 13163 1990 5 Jefferson +WOB 13165 1990 7 Jenkins +WOB 13167 1990 5 Johnson +WOB 13169 1990 4 Jones +WOB 13171 1990 3 Lamar +WOB 13173 1990 34 Lanier +WOB 13175 1990 15 Laurens +WOB 13177 1990 16 Lee +WOB 13179 1990 72 Liberty +WOB 13181 1990 120 Lincoln +WOB 13183 1990 6 Long +WOB 13185 1990 17 Lowndes +WOB 13187 1990 1 Lumpkin +WOB 13189 1990 17 McDuffie +WOB 13191 1990 160 McIntosh +WOB 13193 1990 7 Macon +WOB 13195 1990 3 Madison +WOB 13197 1990 1 Marion +WOB 13199 1990 5 Meriwether +WOB 13201 1990 2 Miller +WOB 13205 1990 5 Mitchell +WOB 13207 1990 6 Monroe +WOB 13209 1990 5 Montgomery +WOB 13211 1990 13 Morgan +WOB 13213 1990 6 Murray +WOB 13215 1990 12 Muscogee +WOB 13217 1990 7 Newton +WOB 13219 1990 1 Oconee +WOB 13221 1990 3 Oglethorpe +WOB 13223 1990 4 Paulding +WOB 13225 1990 1 Peach +WOB 13227 1990 2 Pickens +WOB 13229 1990 2 Pierce +WOB 13231 1990 3 Pike +WOB 13233 1990 3 Polk +WOB 13235 1990 6 Pulaski +WOB 13237 1990 42 Putnam +WOB 13239 1990 24 Quitman +WOB 13241 1990 15 Rabun +WOB 13243 1990 4 Randolph +WOB 13245 1990 11 Richmond +WOB 13247 1990 4 Rockdale +WOB 13249 1990 1 Schley +WOB 13251 1990 18 Screven +WOB 13253 1990 48 Seminole +WOB 13255 1990 4 Spalding +WOB 13257 1990 13 Stephens +WOB 13259 1990 12 Stewart +WOB 13261 1990 19 Sumter +WOB 13263 1990 4 Talbot +WOB 13265 1990 0 Taliaferro +WOB 13267 1990 12 Tattnall +WOB 13269 1990 6 Taylor +WOB 13271 1990 8 Telfair +WOB 13273 1990 6 Terrell +WOB 13275 1990 10 Thomas +WOB 13277 1990 10 Tift +WOB 13279 1990 5 Toombs +WOB 13281 1990 14 Towns +WOB 13283 1990 4 Treutlen +WOB 13285 1990 83 Troup +WOB 13287 1990 10 Turner +WOB 13289 1990 7 Twiggs +WOB 13291 1990 17 Union +WOB 13293 1990 6 Upson +WOB 13295 1990 1 Walker +WOB 13297 1990 2 Walton +WOB 13299 1990 10 Ware +WOB 13301 1990 3 Warren +WOB 13303 1990 10 Washington +WOB 13305 1990 11 Wayne +WOB 13307 1990 2 Webster +WOB 13309 1990 6 Wheeler +WOB 13311 1990 1 White +WOB 13313 1990 2 Whitfield +WOB 13315 1990 8 Wilcox +WOB 13317 1990 7 Wilkes +WOB 13319 1990 14 Wilkinson +WOB 13321 1990 12 Worth +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_AIRTR.ALO new file mode 100644 index 0000000..cc6eb10 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_AIRTR.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 15000 2002 1932.330 HI +AIR 15001 2002 253.660 Hawaii +AIR 15003 2002 1178.780 Honolulu +AIR 15005 2002 0.110 Kalawao +AIR 15007 2002 162.710 Kauai +AIR 15009 2002 337.070 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_COAL.ALO new file mode 100644 index 0000000..e35a736 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_COAL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 15000 2002 0 HI +MIN 15001 2002 0 Hawaii +MIN 15003 2002 0 Honolulu +MIN 15005 2002 0 Kalawao +MIN 15007 2002 0 Kauai +MIN 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_CONST.ALO new file mode 100644 index 0000000..896c26d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_CONST.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 15000 2003 1805222 HI +CON 15001 2003 380250 Hawaii +CON 15003 2003 1060006 Honolulu +CON 15005 2003 0 Kalawao +CON 15007 2003 172287 Kauai +CON 15009 2003 192679 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_FARMS.ALO new file mode 100644 index 0000000..e601ffb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_FARMS.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 15000 2002 109461 HI +FRM 15001 2002 55529 Hawaii +FRM 15003 2002 13757 Honolulu +FRM 15005 2002 0 Kalawao +FRM 15007 2002 11771 Kauai +FRM 15009 2002 28404 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_GOLF.ALO new file mode 100644 index 0000000..e061993 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_GOLF.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 15000 2002 50 HI +GC 15001 2002 10 Hawaii +GC 15003 2002 24 Honolulu +GC 15005 2002 0 Kalawao +GC 15007 2002 5 Kauai +GC 15009 2002 11 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_HOLSL.ALO new file mode 100644 index 0000000..548be56 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_HOLSL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 15000 2002 1828 HI +COM 15001 2002 175 Hawaii +COM 15003 2002 1409 Honolulu +COM 15005 2002 0 Kalawao +COM 15007 2002 70 Kauai +COM 15009 2002 174 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_HOUSE.ALO new file mode 100644 index 0000000..249b65a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_HOUSE.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 15000 2002 470512 HI +HOU 15001 2002 65605 Hawaii +HOU 15003 2002 320256 Honolulu +HOU 15005 2002 170 Kalawao +HOU 15007 2002 25962 Kauai +HOU 15009 2002 58519 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_LOGGN.ALO new file mode 100644 index 0000000..a664b85 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_LOGGN.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 15000 2002 0 HI +LOG 15001 2002 0 Hawaii +LOG 15003 2002 0 Honolulu +LOG 15005 2002 0 Kalawao +LOG 15007 2002 0 Kauai +LOG 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_LSCAP.ALO new file mode 100644 index 0000000..23b9269 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_LSCAP.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 15000 2002 2067 HI +LSC 15001 2002 196 Hawaii +LSC 15003 2002 1285 Honolulu +LSC 15005 2002 0 Kalawao +LSC 15007 2002 232 Kauai +LSC 15009 2002 354 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_MNFG.ALO new file mode 100644 index 0000000..db039bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_MNFG.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 15000 2002 21681 HI +MFG 15001 2002 2317 Hawaii +MFG 15003 2002 17001 Honolulu +MFG 15005 2002 0 Kalawao +MFG 15007 2002 393 Kauai +MFG 15009 2002 1970 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_OIL.ALO new file mode 100644 index 0000000..063c0b3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_OIL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 15000 2002 0 HI +OIL 15001 2002 0 Hawaii +OIL 15003 2002 0 Honolulu +OIL 15005 2002 0 Kalawao +OIL 15007 2002 0 Kauai +OIL 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_POP.ALO new file mode 100644 index 0000000..0fe91d4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_POP.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 15000 2002 1234514 HI +POP 15001 2002 154854 Hawaii +POP 15003 2002 886234 Honolulu +POP 15005 2002 133 Kalawao +POP 15007 2002 59990 Kauai +POP 15009 2002 133303 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_RAIL.ALO new file mode 100644 index 0000000..09eb9de --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_RAIL.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 15000 2002 0.000 HI +RR 15001 2002 0.000 Hawaii +RR 15003 2002 0.000 Honolulu +RR 15005 2002 0.000 Kalawao +RR 15007 2002 0.000 Kauai +RR 15009 2002 0.000 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_RVPRK.ALO new file mode 100644 index 0000000..d716b15 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_RVPRK.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 15000 2002 5 HI +RVP 15001 2002 0 Hawaii +RVP 15003 2002 1 Honolulu +RVP 15005 2002 0 Kalawao +RVP 15007 2002 1 Kauai +RVP 15009 2002 3 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_SBC.ALO new file mode 100644 index 0000000..de7336b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_SBC.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 15000 2002 0 HI +SBC 15001 2002 0 Hawaii +SBC 15003 2002 0 Honolulu +SBC 15005 2002 0 Kalawao +SBC 15007 2002 0 Kauai +SBC 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_SBR.ALO new file mode 100644 index 0000000..4d7f033 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_SBR.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 15000 2002 0 HI +SBR 15001 2002 0 Hawaii +SBR 15003 2002 0 Honolulu +SBR 15005 2002 0 Kalawao +SBR 15007 2002 0 Kauai +SBR 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_SNOWM.ALO new file mode 100644 index 0000000..292d676 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_SNOWM.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 15000 2002 0 HI +SNM 15001 2002 0 Hawaii +SNM 15003 2002 0 Honolulu +SNM 15005 2002 0 Kalawao +SNM 15007 2002 0 Kauai +SNM 15009 2002 0 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_WIB.ALO new file mode 100644 index 0000000..17bb172 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_WIB.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 15000 1990 92 HI +WIB 15001 1990 11 Hawaii +WIB 15003 1990 49 Honolulu +WIB 15005 1990 0 Kalawao +WIB 15007 1990 23 Kauai +WIB 15009 1990 9 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/HI_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/HI_WOB.ALO new file mode 100644 index 0000000..7492414 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/HI_WOB.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 15000 1990 92 HI +WOB 15001 1990 11 Hawaii +WOB 15003 1990 49 Honolulu +WOB 15005 1990 0 Kalawao +WOB 15007 1990 23 Kauai +WOB 15009 1990 9 Maui +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_AIRTR.ALO new file mode 100644 index 0000000..c0e85ac --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_AIRTR.ALO @@ -0,0 +1,126 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 19000 2002 277.302 IA +AIR 19001 2002 0.020 Adair +AIR 19003 2002 0.000 Adams +AIR 19005 2002 0.000 Allamakee +AIR 19007 2002 0.010 Appanoose +AIR 19009 2002 0.008 Audubon +AIR 19011 2002 0.406 Benton +AIR 19013 2002 0.810 Black Hawk +AIR 19015 2002 0.050 Boone +AIR 19017 2002 0.020 Bremer +AIR 19019 2002 0.020 Buchanan +AIR 19021 2002 0.030 Buena Vista +AIR 19023 2002 0.000 Butler +AIR 19025 2002 0.000 Calhoun +AIR 19027 2002 0.029 Carroll +AIR 19029 2002 0.030 Cass +AIR 19031 2002 0.000 Cedar +AIR 19033 2002 0.640 Cerro Gordo +AIR 19035 2002 0.070 Cherokee +AIR 19037 2002 0.000 Chickasaw +AIR 19039 2002 0.007 Clarke +AIR 19041 2002 0.370 Clay +AIR 19043 2002 0.000 Clayton +AIR 19045 2002 0.040 Clinton +AIR 19047 2002 0.029 Crawford +AIR 19049 2002 0.020 Dallas +AIR 19051 2002 0.005 Davis +AIR 19053 2002 0.000 Decatur +AIR 19055 2002 0.000 Delaware +AIR 19057 2002 0.384 Des Moines +AIR 19059 2002 0.000 Dickinson +AIR 19061 2002 0.492 Dubuque +AIR 19063 2002 0.029 Emmet +AIR 19065 2002 0.030 Fayette +AIR 19067 2002 0.029 Floyd +AIR 19069 2002 0.009 Franklin +AIR 19071 2002 0.020 Fremont +AIR 19073 2002 0.020 Greene +AIR 19075 2002 0.000 Grundy +AIR 19077 2002 0.000 Guthrie +AIR 19079 2002 0.029 Hamilton +AIR 19081 2002 0.029 Hancock +AIR 19083 2002 0.030 Hardin +AIR 19085 2002 0.000 Harrison +AIR 19087 2002 0.010 Henry +AIR 19089 2002 0.000 Howard +AIR 19091 2002 0.000 Humboldt +AIR 19093 2002 0.000 Ida +AIR 19095 2002 0.000 Iowa +AIR 19097 2002 0.010 Jackson +AIR 19099 2002 0.029 Jasper +AIR 19101 2002 0.049 Jefferson +AIR 19103 2002 0.100 Johnson +AIR 19105 2002 0.020 Jones +AIR 19107 2002 0.000 Keokuk +AIR 19109 2002 0.020 Kossuth +AIR 19111 2002 0.030 Lee +AIR 19113 2002 72.330 Linn +AIR 19115 2002 0.000 Louisa +AIR 19117 2002 0.020 Lucas +AIR 19119 2002 0.000 Lyon +AIR 19121 2002 0.020 Madison +AIR 19123 2002 0.039 Mahaska +AIR 19125 2002 0.069 Marion +AIR 19127 2002 0.030 Marshall +AIR 19129 2002 0.000 Mills +AIR 19131 2002 0.000 Mitchell +AIR 19133 2002 0.006 Monona +AIR 19135 2002 0.010 Monroe +AIR 19137 2002 0.020 Montgomery +AIR 19139 2002 0.049 Muscatine +AIR 19141 2002 0.029 O'Brien +AIR 19143 2002 0.000 Osceola +AIR 19145 2002 0.020 Page +AIR 19147 2002 0.010 Palo Alto +AIR 19149 2002 0.020 Plymouth +AIR 19151 2002 0.020 Pocahontas +AIR 19153 2002 167.030 Polk +AIR 19155 2002 0.000 Pottawattamie +AIR 19157 2002 0.010 Poweshiek +AIR 19159 2002 0.000 Ringgold +AIR 19161 2002 0.020 Sac +AIR 19163 2002 0.240 Scott +AIR 19165 2002 0.039 Shelby +AIR 19167 2002 0.009 Sioux +AIR 19169 2002 0.130 Story +AIR 19171 2002 0.000 Tama +AIR 19173 2002 0.000 Taylor +AIR 19175 2002 0.019 Union +AIR 19177 2002 0.000 Van Buren +AIR 19179 2002 0.050 Wapello +AIR 19181 2002 0.000 Warren +AIR 19183 2002 0.010 Washington +AIR 19185 2002 0.000 Wayne +AIR 19187 2002 26.079 Webster +AIR 19189 2002 0.000 Winnebago +AIR 19191 2002 0.020 Winneshiek +AIR 19193 2002 6.970 Woodbury +AIR 19195 2002 0.000 Worth +AIR 19197 2002 0.002 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_COAL.ALO new file mode 100644 index 0000000..9b6c36b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_COAL.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 19000 2002 0 IA +MIN 19001 2002 0 Adair +MIN 19003 2002 0 Adams +MIN 19005 2002 0 Allamakee +MIN 19007 2002 0 Appanoose +MIN 19009 2002 0 Audubon +MIN 19011 2002 0 Benton +MIN 19013 2002 0 Black Hawk +MIN 19015 2002 0 Boone +MIN 19017 2002 0 Bremer +MIN 19019 2002 0 Buchanan +MIN 19021 2002 0 Buena Vista +MIN 19023 2002 0 Butler +MIN 19025 2002 0 Calhoun +MIN 19027 2002 0 Carroll +MIN 19029 2002 0 Cass +MIN 19031 2002 0 Cedar +MIN 19033 2002 0 Cerro Gordo +MIN 19035 2002 0 Cherokee +MIN 19037 2002 0 Chickasaw +MIN 19039 2002 0 Clarke +MIN 19041 2002 0 Clay +MIN 19043 2002 0 Clayton +MIN 19045 2002 0 Clinton +MIN 19047 2002 0 Crawford +MIN 19049 2002 0 Dallas +MIN 19051 2002 0 Davis +MIN 19053 2002 0 Decatur +MIN 19055 2002 0 Delaware +MIN 19057 2002 0 Des Moines +MIN 19059 2002 0 Dickinson +MIN 19061 2002 0 Dubuque +MIN 19063 2002 0 Emmet +MIN 19065 2002 0 Fayette +MIN 19067 2002 0 Floyd +MIN 19069 2002 0 Franklin +MIN 19071 2002 0 Fremont +MIN 19073 2002 0 Greene +MIN 19075 2002 0 Grundy +MIN 19077 2002 0 Guthrie +MIN 19079 2002 0 Hamilton +MIN 19081 2002 0 Hancock +MIN 19083 2002 0 Hardin +MIN 19085 2002 0 Harrison +MIN 19087 2002 0 Henry +MIN 19089 2002 0 Howard +MIN 19091 2002 0 Humboldt +MIN 19093 2002 0 Ida +MIN 19095 2002 0 Iowa +MIN 19097 2002 0 Jackson +MIN 19099 2002 0 Jasper +MIN 19101 2002 0 Jefferson +MIN 19103 2002 0 Johnson +MIN 19105 2002 0 Jones +MIN 19107 2002 0 Keokuk +MIN 19109 2002 0 Kossuth +MIN 19111 2002 0 Lee +MIN 19113 2002 0 Linn +MIN 19115 2002 0 Louisa +MIN 19117 2002 0 Lucas +MIN 19119 2002 0 Lyon +MIN 19121 2002 0 Madison +MIN 19123 2002 0 Mahaska +MIN 19125 2002 0 Marion +MIN 19127 2002 0 Marshall +MIN 19129 2002 0 Mills +MIN 19131 2002 0 Mitchell +MIN 19133 2002 0 Monona +MIN 19135 2002 0 Monroe +MIN 19137 2002 0 Montgomery +MIN 19139 2002 0 Muscatine +MIN 19141 2002 0 O'Brien +MIN 19143 2002 0 Osceola +MIN 19145 2002 0 Page +MIN 19147 2002 0 Palo Alto +MIN 19149 2002 0 Plymouth +MIN 19151 2002 0 Pocahontas +MIN 19153 2002 0 Polk +MIN 19155 2002 0 Pottawattamie +MIN 19157 2002 0 Poweshiek +MIN 19159 2002 0 Ringgold +MIN 19161 2002 0 Sac +MIN 19163 2002 0 Scott +MIN 19165 2002 0 Shelby +MIN 19167 2002 0 Sioux +MIN 19169 2002 0 Story +MIN 19171 2002 0 Tama +MIN 19173 2002 0 Taylor +MIN 19175 2002 0 Union +MIN 19177 2002 0 Van Buren +MIN 19179 2002 0 Wapello +MIN 19181 2002 0 Warren +MIN 19183 2002 0 Washington +MIN 19185 2002 0 Wayne +MIN 19187 2002 0 Webster +MIN 19189 2002 0 Winnebago +MIN 19191 2002 0 Winneshiek +MIN 19193 2002 0 Woodbury +MIN 19195 2002 0 Worth +MIN 19197 2002 0 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_CONST.ALO new file mode 100644 index 0000000..3d6be4f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_CONST.ALO @@ -0,0 +1,126 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 19000 2003 6467683 IA +CON 19001 2003 8317 Adair +CON 19003 2003 3270 Adams +CON 19005 2003 9718 Allamakee +CON 19007 2003 4979 Appanoose +CON 19009 2003 4078 Audubon +CON 19011 2003 25195 Benton +CON 19013 2003 175725 Black Hawk +CON 19015 2003 29196 Boone +CON 19017 2003 48570 Bremer +CON 19019 2003 29380 Buchanan +CON 19021 2003 20196 Buena Vista +CON 19023 2003 8987 Butler +CON 19025 2003 2539 Calhoun +CON 19027 2003 35330 Carroll +CON 19029 2003 18997 Cass +CON 19031 2003 20482 Cedar +CON 19033 2003 489998 Cerro Gordo +CON 19035 2003 13368 Cherokee +CON 19037 2003 16381 Chickasaw +CON 19039 2003 9187 Clarke +CON 19041 2003 58403 Clay +CON 19043 2003 12558 Clayton +CON 19045 2003 43837 Clinton +CON 19047 2003 13400 Crawford +CON 19049 2003 132265 Dallas +CON 19051 2003 5797 Davis +CON 19053 2003 5845 Decatur +CON 19055 2003 13808 Delaware +CON 19057 2003 112061 Des Moines +CON 19059 2003 97669 Dickinson +CON 19061 2003 130390 Dubuque +CON 19063 2003 9121 Emmet +CON 19065 2003 4730 Fayette +CON 19067 2003 18582 Floyd +CON 19069 2003 5431 Franklin +CON 19071 2003 7746 Fremont +CON 19073 2003 7247 Greene +CON 19075 2003 14893 Grundy +CON 19077 2003 9059 Guthrie +CON 19079 2003 12708 Hamilton +CON 19081 2003 5361 Hancock +CON 19083 2003 6407 Hardin +CON 19085 2003 14745 Harrison +CON 19087 2003 32168 Henry +CON 19089 2003 6357 Howard +CON 19091 2003 4986 Humboldt +CON 19093 2003 2279 Ida +CON 19095 2003 10077 Iowa +CON 19097 2003 13382 Jackson +CON 19099 2003 34282 Jasper +CON 19101 2003 23754 Jefferson +CON 19103 2003 374168 Johnson +CON 19105 2003 23722 Jones +CON 19107 2003 10378 Keokuk +CON 19109 2003 9025 Kossuth +CON 19111 2003 42890 Lee +CON 19113 2003 235321 Linn +CON 19115 2003 3119 Louisa +CON 19117 2003 6519 Lucas +CON 19119 2003 6010 Lyon +CON 19121 2003 12347 Madison +CON 19123 2003 41344 Mahaska +CON 19125 2003 31083 Marion +CON 19127 2003 29734 Marshall +CON 19129 2003 9859 Mills +CON 19131 2003 3298 Mitchell +CON 19133 2003 14666 Monona +CON 19135 2003 4898 Monroe +CON 19137 2003 9394 Montgomery +CON 19139 2003 46117 Muscatine +CON 19141 2003 21197 O'Brien +CON 19143 2003 1522 Osceola +CON 19145 2003 15769 Page +CON 19147 2003 3706 Palo Alto +CON 19149 2003 29288 Plymouth +CON 19151 2003 5107 Pocahontas +CON 19153 2003 1339528 Polk +CON 19155 2003 1320782 Pottawattamie +CON 19157 2003 9083 Poweshiek +CON 19159 2003 5523 Ringgold +CON 19161 2003 5340 Sac +CON 19163 2003 294647 Scott +CON 19165 2003 13431 Shelby +CON 19167 2003 44480 Sioux +CON 19169 2003 234749 Story +CON 19171 2003 13339 Tama +CON 19173 2003 6683 Taylor +CON 19175 2003 8605 Union +CON 19177 2003 12020 Van Buren +CON 19179 2003 26046 Wapello +CON 19181 2003 63191 Warren +CON 19183 2003 17619 Washington +CON 19185 2003 4295 Wayne +CON 19187 2003 43364 Webster +CON 19189 2003 7469 Winnebago +CON 19191 2003 30612 Winneshiek +CON 19193 2003 107811 Woodbury +CON 19195 2003 17566 Worth +CON 19197 2003 7777 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_FARMS.ALO new file mode 100644 index 0000000..6a1489e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_FARMS.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 19000 2002 23994343 IA +FRM 19001 2002 242912 Adair +FRM 19003 2002 134308 Adams +FRM 19005 2002 144612 Allamakee +FRM 19007 2002 88565 Appanoose +FRM 19009 2002 205216 Audubon +FRM 19011 2002 331805 Benton +FRM 19013 2002 241295 Black Hawk +FRM 19015 2002 267212 Boone +FRM 19017 2002 218189 Bremer +FRM 19019 2002 298590 Buchanan +FRM 19021 2002 305632 Buena Vista +FRM 19023 2002 277250 Butler +FRM 19025 2002 309225 Calhoun +FRM 19027 2002 310612 Carroll +FRM 19029 2002 254695 Cass +FRM 19031 2002 273846 Cedar +FRM 19033 2002 291508 Cerro Gordo +FRM 19035 2002 271900 Cherokee +FRM 19037 2002 224672 Chickasaw +FRM 19039 2002 82352 Clarke +FRM 19041 2002 270329 Clay +FRM 19043 2002 248030 Clayton +FRM 19045 2002 313542 Clinton +FRM 19047 2002 360907 Crawford +FRM 19049 2002 252414 Dallas +FRM 19051 2002 128895 Davis +FRM 19053 2002 96216 Decatur +FRM 19055 2002 271184 Delaware +FRM 19057 2002 136795 Des Moines +FRM 19059 2002 179208 Dickinson +FRM 19061 2002 201526 Dubuque +FRM 19063 2002 208352 Emmet +FRM 19065 2002 326110 Fayette +FRM 19067 2002 251429 Floyd +FRM 19069 2002 302363 Franklin +FRM 19071 2002 256220 Fremont +FRM 19073 2002 304668 Greene +FRM 19075 2002 295797 Grundy +FRM 19077 2002 220536 Guthrie +FRM 19079 2002 313870 Hamilton +FRM 19081 2002 298798 Hancock +FRM 19083 2002 286019 Hardin +FRM 19085 2002 337240 Harrison +FRM 19087 2002 165337 Henry +FRM 19089 2002 212139 Howard +FRM 19091 2002 246764 Humboldt +FRM 19093 2002 224135 Ida +FRM 19095 2002 217380 Iowa +FRM 19097 2002 170281 Jackson +FRM 19099 2002 320456 Jasper +FRM 19101 2002 135215 Jefferson +FRM 19103 2002 220101 Johnson +FRM 19105 2002 224933 Jones +FRM 19107 2002 211257 Keokuk +FRM 19109 2002 543736 Kossuth +FRM 19111 2002 170119 Lee +FRM 19113 2002 262452 Linn +FRM 19115 2002 148070 Louisa +FRM 19117 2002 72176 Lucas +FRM 19119 2002 294141 Lyon +FRM 19121 2002 154993 Madison +FRM 19123 2002 231055 Mahaska +FRM 19125 2002 168055 Marion +FRM 19127 2002 279661 Marshall +FRM 19129 2002 203926 Mills +FRM 19131 2002 249796 Mitchell +FRM 19133 2002 309621 Monona +FRM 19135 2002 95718 Monroe +FRM 19137 2002 179055 Montgomery +FRM 19139 2002 176389 Muscatine +FRM 19141 2002 321700 O'Brien +FRM 19143 2002 231467 Osceola +FRM 19145 2002 228710 Page +FRM 19147 2002 292988 Palo Alto +FRM 19149 2002 438153 Plymouth +FRM 19151 2002 325178 Pocahontas +FRM 19153 2002 190229 Polk +FRM 19155 2002 442923 Pottawattamie +FRM 19157 2002 248601 Poweshiek +FRM 19159 2002 119277 Ringgold +FRM 19161 2002 303104 Sac +FRM 19163 2002 201417 Scott +FRM 19165 2002 298959 Shelby +FRM 19167 2002 447482 Sioux +FRM 19169 2002 310483 Story +FRM 19171 2002 331855 Tama +FRM 19173 2002 159970 Taylor +FRM 19175 2002 116889 Union +FRM 19177 2002 121039 Van Buren +FRM 19179 2002 117295 Wapello +FRM 19181 2002 160435 Warren +FRM 19183 2002 236858 Washington +FRM 19185 2002 144768 Wayne +FRM 19187 2002 371464 Webster +FRM 19189 2002 212573 Winnebago +FRM 19191 2002 251757 Winneshiek +FRM 19193 2002 332515 Woodbury +FRM 19195 2002 197858 Worth +FRM 19197 2002 316591 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_GOLF.ALO new file mode 100644 index 0000000..c2785f0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_GOLF.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 19000 2002 318 IA +GC 19001 2002 2 Adair +GC 19003 2002 1 Adams +GC 19005 2002 1 Allamakee +GC 19007 2002 1 Appanoose +GC 19009 2002 2 Audubon +GC 19011 2002 3 Benton +GC 19013 2002 4 Black Hawk +GC 19015 2002 2 Boone +GC 19017 2002 5 Bremer +GC 19019 2002 4 Buchanan +GC 19021 2002 4 Buena Vista +GC 19023 2002 2 Butler +GC 19025 2002 3 Calhoun +GC 19027 2002 4 Carroll +GC 19029 2002 4 Cass +GC 19031 2002 4 Cedar +GC 19033 2002 6 Cerro Gordo +GC 19035 2002 4 Cherokee +GC 19037 2002 4 Chickasaw +GC 19039 2002 1 Clarke +GC 19041 2002 1 Clay +GC 19043 2002 4 Clayton +GC 19045 2002 4 Clinton +GC 19047 2002 2 Crawford +GC 19049 2002 4 Dallas +GC 19051 2002 1 Davis +GC 19053 2002 2 Decatur +GC 19055 2002 3 Delaware +GC 19057 2002 3 Des Moines +GC 19059 2002 7 Dickinson +GC 19061 2002 7 Dubuque +GC 19063 2002 2 Emmet +GC 19065 2002 5 Fayette +GC 19067 2002 2 Floyd +GC 19069 2002 3 Franklin +GC 19071 2002 0 Fremont +GC 19073 2002 2 Greene +GC 19075 2002 5 Grundy +GC 19077 2002 2 Guthrie +GC 19079 2002 2 Hamilton +GC 19081 2002 3 Hancock +GC 19083 2002 7 Hardin +GC 19085 2002 3 Harrison +GC 19087 2002 3 Henry +GC 19089 2002 2 Howard +GC 19091 2002 1 Humboldt +GC 19093 2002 2 Ida +GC 19095 2002 4 Iowa +GC 19097 2002 3 Jackson +GC 19099 2002 5 Jasper +GC 19101 2002 2 Jefferson +GC 19103 2002 5 Johnson +GC 19105 2002 4 Jones +GC 19107 2002 0 Keokuk +GC 19109 2002 7 Kossuth +GC 19111 2002 2 Lee +GC 19113 2002 7 Linn +GC 19115 2002 2 Louisa +GC 19117 2002 1 Lucas +GC 19119 2002 3 Lyon +GC 19121 2002 1 Madison +GC 19123 2002 2 Mahaska +GC 19125 2002 3 Marion +GC 19127 2002 4 Marshall +GC 19129 2002 2 Mills +GC 19131 2002 2 Mitchell +GC 19133 2002 2 Monona +GC 19135 2002 1 Monroe +GC 19137 2002 1 Montgomery +GC 19139 2002 3 Muscatine +GC 19141 2002 3 O'Brien +GC 19143 2002 1 Osceola +GC 19145 2002 3 Page +GC 19147 2002 2 Palo Alto +GC 19149 2002 4 Plymouth +GC 19151 2002 4 Pocahontas +GC 19153 2002 16 Polk +GC 19155 2002 6 Pottawattamie +GC 19157 2002 3 Poweshiek +GC 19159 2002 2 Ringgold +GC 19161 2002 2 Sac +GC 19163 2002 9 Scott +GC 19165 2002 2 Shelby +GC 19167 2002 6 Sioux +GC 19169 2002 7 Story +GC 19171 2002 3 Tama +GC 19173 2002 1 Taylor +GC 19175 2002 2 Union +GC 19177 2002 1 Van Buren +GC 19179 2002 1 Wapello +GC 19181 2002 4 Warren +GC 19183 2002 2 Washington +GC 19185 2002 0 Wayne +GC 19187 2002 5 Webster +GC 19189 2002 2 Winnebago +GC 19191 2002 5 Winneshiek +GC 19193 2002 9 Woodbury +GC 19195 2002 2 Worth +GC 19197 2002 2 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_HOLSL.ALO new file mode 100644 index 0000000..d6d8900 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_HOLSL.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 19000 2002 5003 IA +COM 19001 2002 11 Adair +COM 19003 2002 8 Adams +COM 19005 2002 31 Allamakee +COM 19007 2002 12 Appanoose +COM 19009 2002 17 Audubon +COM 19011 2002 34 Benton +COM 19013 2002 151 Black Hawk +COM 19015 2002 24 Boone +COM 19017 2002 40 Bremer +COM 19019 2002 27 Buchanan +COM 19021 2002 38 Buena Vista +COM 19023 2002 41 Butler +COM 19025 2002 16 Calhoun +COM 19027 2002 55 Carroll +COM 19029 2002 34 Cass +COM 19031 2002 40 Cedar +COM 19033 2002 99 Cerro Gordo +COM 19035 2002 16 Cherokee +COM 19037 2002 26 Chickasaw +COM 19039 2002 6 Clarke +COM 19041 2002 58 Clay +COM 19043 2002 36 Clayton +COM 19045 2002 60 Clinton +COM 19047 2002 21 Crawford +COM 19049 2002 57 Dallas +COM 19051 2002 14 Davis +COM 19053 2002 8 Decatur +COM 19055 2002 33 Delaware +COM 19057 2002 69 Des Moines +COM 19059 2002 26 Dickinson +COM 19061 2002 168 Dubuque +COM 19063 2002 21 Emmet +COM 19065 2002 32 Fayette +COM 19067 2002 28 Floyd +COM 19069 2002 20 Franklin +COM 19071 2002 11 Fremont +COM 19073 2002 17 Greene +COM 19075 2002 22 Grundy +COM 19077 2002 18 Guthrie +COM 19079 2002 31 Hamilton +COM 19081 2002 26 Hancock +COM 19083 2002 45 Hardin +COM 19085 2002 27 Harrison +COM 19087 2002 43 Henry +COM 19089 2002 20 Howard +COM 19091 2002 46 Humboldt +COM 19093 2002 22 Ida +COM 19095 2002 24 Iowa +COM 19097 2002 32 Jackson +COM 19099 2002 41 Jasper +COM 19101 2002 47 Jefferson +COM 19103 2002 97 Johnson +COM 19105 2002 36 Jones +COM 19107 2002 23 Keokuk +COM 19109 2002 42 Kossuth +COM 19111 2002 45 Lee +COM 19113 2002 360 Linn +COM 19115 2002 13 Louisa +COM 19117 2002 12 Lucas +COM 19119 2002 27 Lyon +COM 19121 2002 18 Madison +COM 19123 2002 35 Mahaska +COM 19125 2002 46 Marion +COM 19127 2002 49 Marshall +COM 19129 2002 17 Mills +COM 19131 2002 27 Mitchell +COM 19133 2002 18 Monona +COM 19135 2002 11 Monroe +COM 19137 2002 19 Montgomery +COM 19139 2002 66 Muscatine +COM 19141 2002 42 O'Brien +COM 19143 2002 12 Osceola +COM 19145 2002 26 Page +COM 19147 2002 18 Palo Alto +COM 19149 2002 37 Plymouth +COM 19151 2002 17 Pocahontas +COM 19153 2002 822 Polk +COM 19155 2002 90 Pottawattamie +COM 19157 2002 34 Poweshiek +COM 19159 2002 7 Ringgold +COM 19161 2002 31 Sac +COM 19163 2002 336 Scott +COM 19165 2002 29 Shelby +COM 19167 2002 80 Sioux +COM 19169 2002 84 Story +COM 19171 2002 26 Tama +COM 19173 2002 10 Taylor +COM 19175 2002 19 Union +COM 19177 2002 6 Van Buren +COM 19179 2002 42 Wapello +COM 19181 2002 47 Warren +COM 19183 2002 34 Washington +COM 19185 2002 13 Wayne +COM 19187 2002 65 Webster +COM 19189 2002 22 Winnebago +COM 19191 2002 39 Winneshiek +COM 19193 2002 176 Woodbury +COM 19195 2002 10 Worth +COM 19197 2002 19 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_HOUSE.ALO new file mode 100644 index 0000000..58327f5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_HOUSE.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 19000 2002 1257458 IA +HOU 19001 2002 3741 Adair +HOU 19003 2002 2098 Adams +HOU 19005 2002 7292 Allamakee +HOU 19007 2002 6716 Appanoose +HOU 19009 2002 2995 Audubon +HOU 19011 2002 10601 Benton +HOU 19013 2002 52542 Black Hawk +HOU 19015 2002 11184 Boone +HOU 19017 2002 9560 Bremer +HOU 19019 2002 8838 Buchanan +HOU 19021 2002 8134 Buena Vista +HOU 19023 2002 6561 Butler +HOU 19025 2002 5194 Calhoun +HOU 19027 2002 9068 Carroll +HOU 19029 2002 6584 Cass +HOU 19031 2002 7656 Cedar +HOU 19033 2002 21541 Cerro Gordo +HOU 19035 2002 5858 Cherokee +HOU 19037 2002 5617 Chickasaw +HOU 19039 2002 3993 Clarke +HOU 19041 2002 7920 Clay +HOU 19043 2002 8765 Clayton +HOU 19045 2002 21777 Clinton +HOU 19047 2002 6998 Crawford +HOU 19049 2002 17686 Dallas +HOU 19051 2002 3565 Davis +HOU 19053 2002 3861 Decatur +HOU 19055 2002 7746 Delaware +HOU 19057 2002 18648 Des Moines +HOU 19059 2002 11653 Dickinson +HOU 19061 2002 36277 Dubuque +HOU 19063 2002 4913 Emmet +HOU 19065 2002 9553 Fayette +HOU 19067 2002 7295 Floyd +HOU 19069 2002 4739 Franklin +HOU 19071 2002 3553 Fremont +HOU 19073 2002 4639 Greene +HOU 19075 2002 5383 Grundy +HOU 19077 2002 5553 Guthrie +HOU 19079 2002 7143 Hamilton +HOU 19081 2002 5221 Hancock +HOU 19083 2002 8343 Hardin +HOU 19085 2002 6687 Harrison +HOU 19087 2002 8321 Henry +HOU 19089 2002 4362 Howard +HOU 19091 2002 4709 Humboldt +HOU 19093 2002 3496 Ida +HOU 19095 2002 6627 Iowa +HOU 19097 2002 9088 Jackson +HOU 19099 2002 15821 Jasper +HOU 19101 2002 7357 Jefferson +HOU 19103 2002 48648 Johnson +HOU 19105 2002 8196 Jones +HOU 19107 2002 5032 Keokuk +HOU 19109 2002 7589 Kossuth +HOU 19111 2002 16666 Lee +HOU 19113 2002 83847 Linn +HOU 19115 2002 5144 Louisa +HOU 19117 2002 4252 Lucas +HOU 19119 2002 4767 Lyon +HOU 19121 2002 5843 Madison +HOU 19123 2002 9676 Mahaska +HOU 19125 2002 13217 Marion +HOU 19127 2002 16505 Marshall +HOU 19129 2002 5740 Mills +HOU 19131 2002 4612 Mitchell +HOU 19133 2002 4697 Monona +HOU 19135 2002 3579 Monroe +HOU 19137 2002 5370 Montgomery +HOU 19139 2002 17008 Muscatine +HOU 19141 2002 6553 O'Brien +HOU 19143 2002 2991 Osceola +HOU 19145 2002 7283 Page +HOU 19147 2002 4644 Palo Alto +HOU 19149 2002 10071 Plymouth +HOU 19151 2002 3951 Pocahontas +HOU 19153 2002 162683 Polk +HOU 19155 2002 36880 Pottawattamie +HOU 19157 2002 8688 Poweshiek +HOU 19159 2002 2813 Ringgold +HOU 19161 2002 5573 Sac +HOU 19163 2002 66988 Scott +HOU 19165 2002 5424 Shelby +HOU 19167 2002 11444 Sioux +HOU 19169 2002 31410 Story +HOU 19171 2002 7610 Tama +HOU 19173 2002 3209 Taylor +HOU 19175 2002 5675 Union +HOU 19177 2002 3611 Van Buren +HOU 19179 2002 15917 Wapello +HOU 19181 2002 15892 Warren +HOU 19183 2002 8671 Washington +HOU 19185 2002 3384 Wayne +HOU 19187 2002 17107 Webster +HOU 19189 2002 5125 Winnebago +HOU 19191 2002 8297 Winneshiek +HOU 19193 2002 41637 Woodbury +HOU 19195 2002 3522 Worth +HOU 19197 2002 6545 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_LOGGN.ALO new file mode 100644 index 0000000..966ae9f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_LOGGN.ALO @@ -0,0 +1,126 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 19000 2002 63279873 IA +LOG 19001 2002 75953 Adair +LOG 19003 2002 217377 Adams +LOG 19005 2002 4360515 Allamakee +LOG 19007 2002 337348 Appanoose +LOG 19009 2002 63059 Audubon +LOG 19011 2002 316201 Benton +LOG 19013 2002 688648 Black Hawk +LOG 19015 2002 440028 Boone +LOG 19017 2002 508030 Bremer +LOG 19019 2002 674064 Buchanan +LOG 19021 2002 159257 Buena Vista +LOG 19023 2002 509572 Butler +LOG 19025 2002 96219 Calhoun +LOG 19027 2002 169192 Carroll +LOG 19029 2002 163284 Cass +LOG 19031 2002 403484 Cedar +LOG 19033 2002 400398 Cerro Gordo +LOG 19035 2002 319149 Cherokee +LOG 19037 2002 627174 Chickasaw +LOG 19039 2002 168999 Clarke +LOG 19041 2002 156286 Clay +LOG 19043 2002 3887966 Clayton +LOG 19045 2002 366696 Clinton +LOG 19047 2002 252570 Crawford +LOG 19049 2002 282649 Dallas +LOG 19051 2002 427035 Davis +LOG 19053 2002 1579048 Decatur +LOG 19055 2002 1079544 Delaware +LOG 19057 2002 835810 Des Moines +LOG 19059 2002 128283 Dickinson +LOG 19061 2002 1918671 Dubuque +LOG 19063 2002 101335 Emmet +LOG 19065 2002 1884259 Fayette +LOG 19067 2002 154185 Floyd +LOG 19069 2002 151644 Franklin +LOG 19071 2002 726603 Fremont +LOG 19073 2002 155268 Greene +LOG 19075 2002 78909 Grundy +LOG 19077 2002 295602 Guthrie +LOG 19079 2002 187573 Hamilton +LOG 19081 2002 112251 Hancock +LOG 19083 2002 582013 Hardin +LOG 19085 2002 1137156 Harrison +LOG 19087 2002 1054968 Henry +LOG 19089 2002 225347 Howard +LOG 19091 2002 136971 Humboldt +LOG 19093 2002 70202 Ida +LOG 19095 2002 717076 Iowa +LOG 19097 2002 1953838 Jackson +LOG 19099 2002 345752 Jasper +LOG 19101 2002 934212 Jefferson +LOG 19103 2002 1098181 Johnson +LOG 19105 2002 505334 Jones +LOG 19107 2002 1143796 Keokuk +LOG 19109 2002 299125 Kossuth +LOG 19111 2002 2470367 Lee +LOG 19113 2002 1740799 Linn +LOG 19115 2002 462046 Louisa +LOG 19117 2002 670346 Lucas +LOG 19119 2002 97929 Lyon +LOG 19121 2002 798518 Madison +LOG 19123 2002 1241173 Mahaska +LOG 19125 2002 478506 Marion +LOG 19127 2002 359278 Marshall +LOG 19129 2002 250649 Mills +LOG 19131 2002 66955 Mitchell +LOG 19133 2002 266247 Monona +LOG 19135 2002 719221 Monroe +LOG 19137 2002 138180 Montgomery +LOG 19139 2002 1143562 Muscatine +LOG 19141 2002 126353 O'Brien +LOG 19143 2002 64043 Osceola +LOG 19145 2002 178217 Page +LOG 19147 2002 94379 Palo Alto +LOG 19149 2002 310823 Plymouth +LOG 19151 2002 82563 Pocahontas +LOG 19153 2002 2135435 Polk +LOG 19155 2002 768951 Pottawattamie +LOG 19157 2002 440713 Poweshiek +LOG 19159 2002 489097 Ringgold +LOG 19161 2002 108131 Sac +LOG 19163 2002 1414485 Scott +LOG 19165 2002 136677 Shelby +LOG 19167 2002 215268 Sioux +LOG 19169 2002 423182 Story +LOG 19171 2002 817272 Tama +LOG 19173 2002 521052 Taylor +LOG 19175 2002 266194 Union +LOG 19177 2002 631893 Van Buren +LOG 19179 2002 791879 Wapello +LOG 19181 2002 925771 Warren +LOG 19183 2002 1427001 Washington +LOG 19185 2002 193025 Wayne +LOG 19187 2002 447050 Webster +LOG 19189 2002 105829 Winnebago +LOG 19191 2002 1386746 Winneshiek +LOG 19193 2002 1977357 Woodbury +LOG 19195 2002 98536 Worth +LOG 19197 2002 134073 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_LSCAP.ALO new file mode 100644 index 0000000..9f8ff97 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_LSCAP.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 19000 2002 2577 IA +LSC 19001 2002 5 Adair +LSC 19003 2002 0 Adams +LSC 19005 2002 5 Allamakee +LSC 19007 2002 0 Appanoose +LSC 19009 2002 5 Audubon +LSC 19011 2002 5 Benton +LSC 19013 2002 60 Black Hawk +LSC 19015 2002 6 Boone +LSC 19017 2002 16 Bremer +LSC 19019 2002 5 Buchanan +LSC 19021 2002 8 Buena Vista +LSC 19023 2002 5 Butler +LSC 19025 2002 5 Calhoun +LSC 19027 2002 5 Carroll +LSC 19029 2002 4 Cass +LSC 19031 2002 5 Cedar +LSC 19033 2002 36 Cerro Gordo +LSC 19035 2002 5 Cherokee +LSC 19037 2002 5 Chickasaw +LSC 19039 2002 5 Clarke +LSC 19041 2002 5 Clay +LSC 19043 2002 5 Clayton +LSC 19045 2002 13 Clinton +LSC 19047 2002 5 Crawford +LSC 19049 2002 82 Dallas +LSC 19051 2002 5 Davis +LSC 19053 2002 0 Decatur +LSC 19055 2002 5 Delaware +LSC 19057 2002 34 Des Moines +LSC 19059 2002 36 Dickinson +LSC 19061 2002 48 Dubuque +LSC 19063 2002 5 Emmet +LSC 19065 2002 4 Fayette +LSC 19067 2002 5 Floyd +LSC 19069 2002 5 Franklin +LSC 19071 2002 5 Fremont +LSC 19073 2002 5 Greene +LSC 19075 2002 5 Grundy +LSC 19077 2002 5 Guthrie +LSC 19079 2002 5 Hamilton +LSC 19081 2002 0 Hancock +LSC 19083 2002 5 Hardin +LSC 19085 2002 5 Harrison +LSC 19087 2002 9 Henry +LSC 19089 2002 0 Howard +LSC 19091 2002 5 Humboldt +LSC 19093 2002 5 Ida +LSC 19095 2002 5 Iowa +LSC 19097 2002 5 Jackson +LSC 19099 2002 56 Jasper +LSC 19101 2002 3 Jefferson +LSC 19103 2002 124 Johnson +LSC 19105 2002 3 Jones +LSC 19107 2002 5 Keokuk +LSC 19109 2002 5 Kossuth +LSC 19111 2002 7 Lee +LSC 19113 2002 314 Linn +LSC 19115 2002 0 Louisa +LSC 19117 2002 0 Lucas +LSC 19119 2002 5 Lyon +LSC 19121 2002 11 Madison +LSC 19123 2002 3 Mahaska +LSC 19125 2002 36 Marion +LSC 19127 2002 5 Marshall +LSC 19129 2002 5 Mills +LSC 19131 2002 5 Mitchell +LSC 19133 2002 5 Monona +LSC 19135 2002 5 Monroe +LSC 19137 2002 5 Montgomery +LSC 19139 2002 31 Muscatine +LSC 19141 2002 5 O'Brien +LSC 19143 2002 0 Osceola +LSC 19145 2002 5 Page +LSC 19147 2002 5 Palo Alto +LSC 19149 2002 5 Plymouth +LSC 19151 2002 0 Pocahontas +LSC 19153 2002 615 Polk +LSC 19155 2002 26 Pottawattamie +LSC 19157 2002 5 Poweshiek +LSC 19159 2002 0 Ringgold +LSC 19161 2002 0 Sac +LSC 19163 2002 261 Scott +LSC 19165 2002 4 Shelby +LSC 19167 2002 43 Sioux +LSC 19169 2002 214 Story +LSC 19171 2002 5 Tama +LSC 19173 2002 0 Taylor +LSC 19175 2002 5 Union +LSC 19177 2002 5 Van Buren +LSC 19179 2002 5 Wapello +LSC 19181 2002 36 Warren +LSC 19183 2002 5 Washington +LSC 19185 2002 0 Wayne +LSC 19187 2002 6 Webster +LSC 19189 2002 5 Winnebago +LSC 19191 2002 35 Winneshiek +LSC 19193 2002 129 Woodbury +LSC 19195 2002 5 Worth +LSC 19197 2002 4 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_MNFG.ALO new file mode 100644 index 0000000..26b199e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_MNFG.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 19000 2002 403512 IA +MFG 19001 2002 1040 Adair +MFG 19003 2002 156 Adams +MFG 19005 2002 2515 Allamakee +MFG 19007 2002 2300 Appanoose +MFG 19009 2002 570 Audubon +MFG 19011 2002 1634 Benton +MFG 19013 2002 22065 Black Hawk +MFG 19015 2002 1648 Boone +MFG 19017 2002 2902 Bremer +MFG 19019 2002 2293 Buchanan +MFG 19021 2002 3282 Buena Vista +MFG 19023 2002 862 Butler +MFG 19025 2002 314 Calhoun +MFG 19027 2002 2150 Carroll +MFG 19029 2002 1264 Cass +MFG 19031 2002 1471 Cedar +MFG 19033 2002 7210 Cerro Gordo +MFG 19035 2002 1129 Cherokee +MFG 19037 2002 1431 Chickasaw +MFG 19039 2002 1674 Clarke +MFG 19041 2002 2373 Clay +MFG 19043 2002 2081 Clayton +MFG 19045 2002 8017 Clinton +MFG 19047 2002 2269 Crawford +MFG 19049 2002 3419 Dallas +MFG 19051 2002 622 Davis +MFG 19053 2002 386 Decatur +MFG 19055 2002 2440 Delaware +MFG 19057 2002 10946 Des Moines +MFG 19059 2002 3974 Dickinson +MFG 19061 2002 19167 Dubuque +MFG 19063 2002 1513 Emmet +MFG 19065 2002 1963 Fayette +MFG 19067 2002 1909 Floyd +MFG 19069 2002 1840 Franklin +MFG 19071 2002 170 Fremont +MFG 19073 2002 991 Greene +MFG 19075 2002 1108 Grundy +MFG 19077 2002 373 Guthrie +MFG 19079 2002 6250 Hamilton +MFG 19081 2002 2230 Hancock +MFG 19083 2002 1996 Hardin +MFG 19085 2002 510 Harrison +MFG 19087 2002 5634 Henry +MFG 19089 2002 3260 Howard +MFG 19091 2002 2011 Humboldt +MFG 19093 2002 2235 Ida +MFG 19095 2002 9748 Iowa +MFG 19097 2002 2401 Jackson +MFG 19099 2002 9081 Jasper +MFG 19101 2002 2663 Jefferson +MFG 19103 2002 9322 Johnson +MFG 19105 2002 1532 Jones +MFG 19107 2002 428 Keokuk +MFG 19109 2002 1820 Kossuth +MFG 19111 2002 8062 Lee +MFG 19113 2002 33416 Linn +MFG 19115 2002 1818 Louisa +MFG 19117 2002 604 Lucas +MFG 19119 2002 1230 Lyon +MFG 19121 2002 873 Madison +MFG 19123 2002 1725 Mahaska +MFG 19125 2002 13190 Marion +MFG 19127 2002 9388 Marshall +MFG 19129 2002 131 Mills +MFG 19131 2002 1557 Mitchell +MFG 19133 2002 246 Monona +MFG 19135 2002 663 Monroe +MFG 19137 2002 1744 Montgomery +MFG 19139 2002 12973 Muscatine +MFG 19141 2002 1487 O'Brien +MFG 19143 2002 1063 Osceola +MFG 19145 2002 4179 Page +MFG 19147 2002 892 Palo Alto +MFG 19149 2002 2127 Plymouth +MFG 19151 2002 1027 Pocahontas +MFG 19153 2002 32843 Polk +MFG 19155 2002 6331 Pottawattamie +MFG 19157 2002 3020 Poweshiek +MFG 19159 2002 232 Ringgold +MFG 19161 2002 444 Sac +MFG 19163 2002 20522 Scott +MFG 19165 2002 610 Shelby +MFG 19167 2002 7434 Sioux +MFG 19169 2002 6852 Story +MFG 19171 2002 1000 Tama +MFG 19173 2002 396 Taylor +MFG 19175 2002 2320 Union +MFG 19177 2002 1199 Van Buren +MFG 19179 2002 5523 Wapello +MFG 19181 2002 586 Warren +MFG 19183 2002 2338 Washington +MFG 19185 2002 669 Wayne +MFG 19187 2002 4029 Webster +MFG 19189 2002 8200 Winnebago +MFG 19191 2002 3453 Winneshiek +MFG 19193 2002 9482 Woodbury +MFG 19195 2002 691 Worth +MFG 19197 2002 2351 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_OIL.ALO new file mode 100644 index 0000000..c27361c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_OIL.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 19000 2002 20 IA +OIL 19001 2002 0 Adair +OIL 19003 2002 0 Adams +OIL 19005 2002 0 Allamakee +OIL 19007 2002 0 Appanoose +OIL 19009 2002 0 Audubon +OIL 19011 2002 0 Benton +OIL 19013 2002 0 Black Hawk +OIL 19015 2002 0 Boone +OIL 19017 2002 0 Bremer +OIL 19019 2002 0 Buchanan +OIL 19021 2002 0 Buena Vista +OIL 19023 2002 0 Butler +OIL 19025 2002 0 Calhoun +OIL 19027 2002 0 Carroll +OIL 19029 2002 0 Cass +OIL 19031 2002 0 Cedar +OIL 19033 2002 0 Cerro Gordo +OIL 19035 2002 0 Cherokee +OIL 19037 2002 0 Chickasaw +OIL 19039 2002 0 Clarke +OIL 19041 2002 0 Clay +OIL 19043 2002 4 Clayton +OIL 19045 2002 3 Clinton +OIL 19047 2002 3 Crawford +OIL 19049 2002 0 Dallas +OIL 19051 2002 0 Davis +OIL 19053 2002 0 Decatur +OIL 19055 2002 0 Delaware +OIL 19057 2002 0 Des Moines +OIL 19059 2002 0 Dickinson +OIL 19061 2002 0 Dubuque +OIL 19063 2002 0 Emmet +OIL 19065 2002 0 Fayette +OIL 19067 2002 0 Floyd +OIL 19069 2002 0 Franklin +OIL 19071 2002 0 Fremont +OIL 19073 2002 0 Greene +OIL 19075 2002 0 Grundy +OIL 19077 2002 0 Guthrie +OIL 19079 2002 0 Hamilton +OIL 19081 2002 0 Hancock +OIL 19083 2002 0 Hardin +OIL 19085 2002 0 Harrison +OIL 19087 2002 0 Henry +OIL 19089 2002 0 Howard +OIL 19091 2002 0 Humboldt +OIL 19093 2002 0 Ida +OIL 19095 2002 0 Iowa +OIL 19097 2002 0 Jackson +OIL 19099 2002 0 Jasper +OIL 19101 2002 0 Jefferson +OIL 19103 2002 0 Johnson +OIL 19105 2002 0 Jones +OIL 19107 2002 0 Keokuk +OIL 19109 2002 0 Kossuth +OIL 19111 2002 4 Lee +OIL 19113 2002 3 Linn +OIL 19115 2002 0 Louisa +OIL 19117 2002 0 Lucas +OIL 19119 2002 0 Lyon +OIL 19121 2002 0 Madison +OIL 19123 2002 0 Mahaska +OIL 19125 2002 0 Marion +OIL 19127 2002 0 Marshall +OIL 19129 2002 0 Mills +OIL 19131 2002 0 Mitchell +OIL 19133 2002 0 Monona +OIL 19135 2002 0 Monroe +OIL 19137 2002 0 Montgomery +OIL 19139 2002 0 Muscatine +OIL 19141 2002 0 O'Brien +OIL 19143 2002 0 Osceola +OIL 19145 2002 0 Page +OIL 19147 2002 0 Palo Alto +OIL 19149 2002 0 Plymouth +OIL 19151 2002 0 Pocahontas +OIL 19153 2002 0 Polk +OIL 19155 2002 0 Pottawattamie +OIL 19157 2002 0 Poweshiek +OIL 19159 2002 0 Ringgold +OIL 19161 2002 0 Sac +OIL 19163 2002 0 Scott +OIL 19165 2002 3 Shelby +OIL 19167 2002 0 Sioux +OIL 19169 2002 0 Story +OIL 19171 2002 0 Tama +OIL 19173 2002 0 Taylor +OIL 19175 2002 0 Union +OIL 19177 2002 0 Van Buren +OIL 19179 2002 0 Wapello +OIL 19181 2002 0 Warren +OIL 19183 2002 0 Washington +OIL 19185 2002 0 Wayne +OIL 19187 2002 0 Webster +OIL 19189 2002 0 Winnebago +OIL 19191 2002 0 Winneshiek +OIL 19193 2002 0 Woodbury +OIL 19195 2002 0 Worth +OIL 19197 2002 0 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_POP.ALO new file mode 100644 index 0000000..86f31c5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_POP.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 19000 2002 2934776 IA +POP 19001 2002 8009 Adair +POP 19003 2002 4388 Adams +POP 19005 2002 14450 Allamakee +POP 19007 2002 13460 Appanoose +POP 19009 2002 6593 Audubon +POP 19011 2002 26137 Benton +POP 19013 2002 126481 Black Hawk +POP 19015 2002 26110 Boone +POP 19017 2002 23285 Bremer +POP 19019 2002 20867 Buchanan +POP 19021 2002 20284 Buena Vista +POP 19023 2002 15023 Butler +POP 19025 2002 10819 Calhoun +POP 19027 2002 21173 Carroll +POP 19029 2002 14321 Cass +POP 19031 2002 18184 Cedar +POP 19033 2002 45352 Cerro Gordo +POP 19035 2002 12682 Cherokee +POP 19037 2002 12862 Chickasaw +POP 19039 2002 9162 Clarke +POP 19041 2002 17088 Clay +POP 19043 2002 18391 Clayton +POP 19045 2002 49864 Clinton +POP 19047 2002 16980 Crawford +POP 19049 2002 44491 Dallas +POP 19051 2002 8621 Davis +POP 19053 2002 8631 Decatur +POP 19055 2002 18304 Delaware +POP 19057 2002 41456 Des Moines +POP 19059 2002 16425 Dickinson +POP 19061 2002 89478 Dubuque +POP 19063 2002 10833 Emmet +POP 19065 2002 21558 Fayette +POP 19067 2002 16626 Floyd +POP 19069 2002 10685 Franklin +POP 19071 2002 7843 Fremont +POP 19073 2002 10183 Greene +POP 19075 2002 12354 Grundy +POP 19077 2002 11319 Guthrie +POP 19079 2002 16310 Hamilton +POP 19081 2002 11836 Hancock +POP 19083 2002 18439 Hardin +POP 19085 2002 15573 Harrison +POP 19087 2002 20103 Henry +POP 19089 2002 9861 Howard +POP 19091 2002 10135 Humboldt +POP 19093 2002 7620 Ida +POP 19095 2002 15829 Iowa +POP 19097 2002 20254 Jackson +POP 19099 2002 37606 Jasper +POP 19101 2002 15963 Jefferson +POP 19103 2002 113805 Johnson +POP 19105 2002 20282 Jones +POP 19107 2002 11417 Keokuk +POP 19109 2002 16604 Kossuth +POP 19111 2002 37004 Lee +POP 19113 2002 195221 Linn +POP 19115 2002 12222 Louisa +POP 19117 2002 9459 Lucas +POP 19119 2002 11700 Lyon +POP 19121 2002 14427 Madison +POP 19123 2002 22358 Mahaska +POP 19125 2002 32582 Marion +POP 19127 2002 39235 Marshall +POP 19129 2002 14733 Mills +POP 19131 2002 10867 Mitchell +POP 19133 2002 9763 Monona +POP 19135 2002 7805 Monroe +POP 19137 2002 11365 Montgomery +POP 19139 2002 42080 Muscatine +POP 19141 2002 14758 O'Brien +POP 19143 2002 6845 Osceola +POP 19145 2002 16509 Page +POP 19147 2002 9892 Palo Alto +POP 19149 2002 24669 Plymouth +POP 19151 2002 8392 Pocahontas +POP 19153 2002 384708 Polk +POP 19155 2002 88170 Pottawattamie +POP 19157 2002 18860 Poweshiek +POP 19159 2002 5338 Ringgold +POP 19161 2002 11063 Sac +POP 19163 2002 159068 Scott +POP 19165 2002 12847 Shelby +POP 19167 2002 32031 Sioux +POP 19169 2002 80729 Story +POP 19171 2002 17925 Tama +POP 19173 2002 6833 Taylor +POP 19175 2002 12154 Union +POP 19177 2002 7806 Van Buren +POP 19179 2002 35941 Wapello +POP 19181 2002 41444 Warren +POP 19183 2002 21148 Washington +POP 19185 2002 6657 Wayne +POP 19187 2002 39829 Webster +POP 19189 2002 11430 Winnebago +POP 19191 2002 21316 Winneshiek +POP 19193 2002 103424 Woodbury +POP 19195 2002 7798 Worth +POP 19197 2002 13962 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_RAIL.ALO new file mode 100644 index 0000000..777fb55 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_RAIL.ALO @@ -0,0 +1,126 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 19000 2002 21861.290 IA +RR 19001 2002 0.000 Adair +RR 19003 2002 504.850 Adams +RR 19005 2002 0.000 Allamakee +RR 19007 2002 0.000 Appanoose +RR 19009 2002 0.000 Audubon +RR 19011 2002 617.840 Benton +RR 19013 2002 66.290 Black Hawk +RR 19015 2002 434.060 Boone +RR 19017 2002 13.260 Bremer +RR 19019 2002 51.560 Buchanan +RR 19021 2002 17.410 Buena Vista +RR 19023 2002 42.240 Butler +RR 19025 2002 28.810 Calhoun +RR 19027 2002 628.680 Carroll +RR 19029 2002 0.000 Cass +RR 19031 2002 780.450 Cedar +RR 19033 2002 175.640 Cerro Gordo +RR 19035 2002 18.650 Cherokee +RR 19037 2002 8.930 Chickasaw +RR 19039 2002 672.080 Clarke +RR 19041 2002 72.020 Clay +RR 19043 2002 0.000 Clayton +RR 19045 2002 1051.950 Clinton +RR 19047 2002 572.520 Crawford +RR 19049 2002 24.750 Dallas +RR 19051 2002 0.000 Davis +RR 19053 2002 0.000 Decatur +RR 19055 2002 69.890 Delaware +RR 19057 2002 693.940 Des Moines +RR 19059 2002 15.690 Dickinson +RR 19061 2002 90.610 Dubuque +RR 19063 2002 18.800 Emmet +RR 19065 2002 8.320 Fayette +RR 19067 2002 14.490 Floyd +RR 19069 2002 214.650 Franklin +RR 19071 2002 36.090 Fremont +RR 19073 2002 546.020 Greene +RR 19075 2002 0.000 Grundy +RR 19077 2002 10.760 Guthrie +RR 19079 2002 88.550 Hamilton +RR 19081 2002 13.150 Hancock +RR 19083 2002 231.270 Hardin +RR 19085 2002 743.030 Harrison +RR 19087 2002 530.580 Henry +RR 19089 2002 0.000 Howard +RR 19091 2002 24.690 Humboldt +RR 19093 2002 7.310 Ida +RR 19095 2002 0.000 Iowa +RR 19097 2002 0.000 Jackson +RR 19099 2002 5.240 Jasper +RR 19101 2002 544.020 Jefferson +RR 19103 2002 0.000 Johnson +RR 19105 2002 0.000 Jones +RR 19107 2002 0.000 Keokuk +RR 19109 2002 30.200 Kossuth +RR 19111 2002 686.320 Lee +RR 19113 2002 1488.860 Linn +RR 19115 2002 0.000 Louisa +RR 19117 2002 896.160 Lucas +RR 19119 2002 105.900 Lyon +RR 19121 2002 0.000 Madison +RR 19123 2002 13.970 Mahaska +RR 19125 2002 186.500 Marion +RR 19127 2002 600.760 Marshall +RR 19129 2002 540.390 Mills +RR 19131 2002 13.830 Mitchell +RR 19133 2002 248.920 Monona +RR 19135 2002 639.760 Monroe +RR 19137 2002 913.380 Montgomery +RR 19139 2002 0.000 Muscatine +RR 19141 2002 67.980 O'Brien +RR 19143 2002 36.470 Osceola +RR 19145 2002 8.350 Page +RR 19147 2002 68.010 Palo Alto +RR 19149 2002 249.900 Plymouth +RR 19151 2002 30.870 Pocahontas +RR 19153 2002 219.350 Polk +RR 19155 2002 509.990 Pottawattamie +RR 19157 2002 15.800 Poweshiek +RR 19159 2002 0.000 Ringgold +RR 19161 2002 20.110 Sac +RR 19163 2002 0.000 Scott +RR 19165 2002 19.340 Shelby +RR 19167 2002 253.410 Sioux +RR 19169 2002 879.200 Story +RR 19171 2002 863.290 Tama +RR 19173 2002 0.000 Taylor +RR 19175 2002 985.310 Union +RR 19177 2002 0.000 Van Buren +RR 19179 2002 501.310 Wapello +RR 19181 2002 286.500 Warren +RR 19183 2002 0.000 Washington +RR 19185 2002 332.060 Wayne +RR 19187 2002 60.730 Webster +RR 19189 2002 11.540 Winnebago +RR 19191 2002 0.000 Winneshiek +RR 19193 2002 205.620 Woodbury +RR 19195 2002 131.320 Worth +RR 19197 2002 50.790 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_RVPRK.ALO new file mode 100644 index 0000000..eff1895 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_RVPRK.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 19000 2002 48 IA +RVP 19001 2002 0 Adair +RVP 19003 2002 0 Adams +RVP 19005 2002 2 Allamakee +RVP 19007 2002 1 Appanoose +RVP 19009 2002 0 Audubon +RVP 19011 2002 1 Benton +RVP 19013 2002 0 Black Hawk +RVP 19015 2002 4 Boone +RVP 19017 2002 0 Bremer +RVP 19019 2002 0 Buchanan +RVP 19021 2002 0 Buena Vista +RVP 19023 2002 1 Butler +RVP 19025 2002 1 Calhoun +RVP 19027 2002 0 Carroll +RVP 19029 2002 0 Cass +RVP 19031 2002 1 Cedar +RVP 19033 2002 2 Cerro Gordo +RVP 19035 2002 0 Cherokee +RVP 19037 2002 0 Chickasaw +RVP 19039 2002 1 Clarke +RVP 19041 2002 0 Clay +RVP 19043 2002 3 Clayton +RVP 19045 2002 0 Clinton +RVP 19047 2002 0 Crawford +RVP 19049 2002 2 Dallas +RVP 19051 2002 0 Davis +RVP 19053 2002 0 Decatur +RVP 19055 2002 0 Delaware +RVP 19057 2002 0 Des Moines +RVP 19059 2002 2 Dickinson +RVP 19061 2002 2 Dubuque +RVP 19063 2002 0 Emmet +RVP 19065 2002 0 Fayette +RVP 19067 2002 0 Floyd +RVP 19069 2002 0 Franklin +RVP 19071 2002 0 Fremont +RVP 19073 2002 0 Greene +RVP 19075 2002 0 Grundy +RVP 19077 2002 1 Guthrie +RVP 19079 2002 0 Hamilton +RVP 19081 2002 0 Hancock +RVP 19083 2002 0 Hardin +RVP 19085 2002 2 Harrison +RVP 19087 2002 0 Henry +RVP 19089 2002 0 Howard +RVP 19091 2002 0 Humboldt +RVP 19093 2002 0 Ida +RVP 19095 2002 0 Iowa +RVP 19097 2002 1 Jackson +RVP 19099 2002 0 Jasper +RVP 19101 2002 0 Jefferson +RVP 19103 2002 3 Johnson +RVP 19105 2002 1 Jones +RVP 19107 2002 0 Keokuk +RVP 19109 2002 0 Kossuth +RVP 19111 2002 0 Lee +RVP 19113 2002 2 Linn +RVP 19115 2002 0 Louisa +RVP 19117 2002 0 Lucas +RVP 19119 2002 0 Lyon +RVP 19121 2002 1 Madison +RVP 19123 2002 0 Mahaska +RVP 19125 2002 0 Marion +RVP 19127 2002 0 Marshall +RVP 19129 2002 0 Mills +RVP 19131 2002 0 Mitchell +RVP 19133 2002 0 Monona +RVP 19135 2002 0 Monroe +RVP 19137 2002 0 Montgomery +RVP 19139 2002 0 Muscatine +RVP 19141 2002 0 O'Brien +RVP 19143 2002 0 Osceola +RVP 19145 2002 1 Page +RVP 19147 2002 0 Palo Alto +RVP 19149 2002 0 Plymouth +RVP 19151 2002 0 Pocahontas +RVP 19153 2002 4 Polk +RVP 19155 2002 1 Pottawattamie +RVP 19157 2002 0 Poweshiek +RVP 19159 2002 0 Ringgold +RVP 19161 2002 0 Sac +RVP 19163 2002 4 Scott +RVP 19165 2002 0 Shelby +RVP 19167 2002 0 Sioux +RVP 19169 2002 1 Story +RVP 19171 2002 0 Tama +RVP 19173 2002 0 Taylor +RVP 19175 2002 0 Union +RVP 19177 2002 0 Van Buren +RVP 19179 2002 0 Wapello +RVP 19181 2002 0 Warren +RVP 19183 2002 1 Washington +RVP 19185 2002 0 Wayne +RVP 19187 2002 1 Webster +RVP 19189 2002 0 Winnebago +RVP 19191 2002 0 Winneshiek +RVP 19193 2002 1 Woodbury +RVP 19195 2002 0 Worth +RVP 19197 2002 0 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_SBC.ALO new file mode 100644 index 0000000..af8db24 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_SBC.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 19000 2002 2577 IA +SBC 19001 2002 4 Adair +SBC 19003 2002 0 Adams +SBC 19005 2002 7 Allamakee +SBC 19007 2002 0 Appanoose +SBC 19009 2002 3 Audubon +SBC 19011 2002 5 Benton +SBC 19013 2002 60 Black Hawk +SBC 19015 2002 6 Boone +SBC 19017 2002 16 Bremer +SBC 19019 2002 11 Buchanan +SBC 19021 2002 8 Buena Vista +SBC 19023 2002 8 Butler +SBC 19025 2002 6 Calhoun +SBC 19027 2002 11 Carroll +SBC 19029 2002 4 Cass +SBC 19031 2002 9 Cedar +SBC 19033 2002 24 Cerro Gordo +SBC 19035 2002 5 Cherokee +SBC 19037 2002 7 Chickasaw +SBC 19039 2002 5 Clarke +SBC 19041 2002 9 Clay +SBC 19043 2002 9 Clayton +SBC 19045 2002 13 Clinton +SBC 19047 2002 9 Crawford +SBC 19049 2002 82 Dallas +SBC 19051 2002 4 Davis +SBC 19053 2002 0 Decatur +SBC 19055 2002 9 Delaware +SBC 19057 2002 34 Des Moines +SBC 19059 2002 8 Dickinson +SBC 19061 2002 48 Dubuque +SBC 19063 2002 6 Emmet +SBC 19065 2002 4 Fayette +SBC 19067 2002 9 Floyd +SBC 19069 2002 5 Franklin +SBC 19071 2002 4 Fremont +SBC 19073 2002 5 Greene +SBC 19075 2002 6 Grundy +SBC 19077 2002 6 Guthrie +SBC 19079 2002 8 Hamilton +SBC 19081 2002 0 Hancock +SBC 19083 2002 9 Hardin +SBC 19085 2002 8 Harrison +SBC 19087 2002 9 Henry +SBC 19089 2002 0 Howard +SBC 19091 2002 5 Humboldt +SBC 19093 2002 4 Ida +SBC 19095 2002 8 Iowa +SBC 19097 2002 10 Jackson +SBC 19099 2002 56 Jasper +SBC 19101 2002 3 Jefferson +SBC 19103 2002 124 Johnson +SBC 19105 2002 3 Jones +SBC 19107 2002 6 Keokuk +SBC 19109 2002 9 Kossuth +SBC 19111 2002 7 Lee +SBC 19113 2002 314 Linn +SBC 19115 2002 0 Louisa +SBC 19117 2002 0 Lucas +SBC 19119 2002 6 Lyon +SBC 19121 2002 11 Madison +SBC 19123 2002 3 Mahaska +SBC 19125 2002 17 Marion +SBC 19127 2002 5 Marshall +SBC 19129 2002 8 Mills +SBC 19131 2002 6 Mitchell +SBC 19133 2002 5 Monona +SBC 19135 2002 4 Monroe +SBC 19137 2002 6 Montgomery +SBC 19139 2002 31 Muscatine +SBC 19141 2002 8 O'Brien +SBC 19143 2002 0 Osceola +SBC 19145 2002 8 Page +SBC 19147 2002 5 Palo Alto +SBC 19149 2002 13 Plymouth +SBC 19151 2002 0 Pocahontas +SBC 19153 2002 615 Polk +SBC 19155 2002 26 Pottawattamie +SBC 19157 2002 10 Poweshiek +SBC 19159 2002 0 Ringgold +SBC 19161 2002 0 Sac +SBC 19163 2002 261 Scott +SBC 19165 2002 4 Shelby +SBC 19167 2002 43 Sioux +SBC 19169 2002 214 Story +SBC 19171 2002 9 Tama +SBC 19173 2002 0 Taylor +SBC 19175 2002 6 Union +SBC 19177 2002 4 Van Buren +SBC 19179 2002 5 Wapello +SBC 19181 2002 21 Warren +SBC 19183 2002 11 Washington +SBC 19185 2002 0 Wayne +SBC 19187 2002 6 Webster +SBC 19189 2002 6 Winnebago +SBC 19191 2002 11 Winneshiek +SBC 19193 2002 129 Woodbury +SBC 19195 2002 4 Worth +SBC 19197 2002 4 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_SBR.ALO new file mode 100644 index 0000000..088fa88 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_SBR.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 19000 2002 1257458 IA +SBR 19001 2002 3741 Adair +SBR 19003 2002 2098 Adams +SBR 19005 2002 7292 Allamakee +SBR 19007 2002 6716 Appanoose +SBR 19009 2002 2995 Audubon +SBR 19011 2002 10601 Benton +SBR 19013 2002 52542 Black Hawk +SBR 19015 2002 11184 Boone +SBR 19017 2002 9560 Bremer +SBR 19019 2002 8838 Buchanan +SBR 19021 2002 8134 Buena Vista +SBR 19023 2002 6561 Butler +SBR 19025 2002 5194 Calhoun +SBR 19027 2002 9068 Carroll +SBR 19029 2002 6584 Cass +SBR 19031 2002 7656 Cedar +SBR 19033 2002 21541 Cerro Gordo +SBR 19035 2002 5858 Cherokee +SBR 19037 2002 5617 Chickasaw +SBR 19039 2002 3993 Clarke +SBR 19041 2002 7920 Clay +SBR 19043 2002 8765 Clayton +SBR 19045 2002 21777 Clinton +SBR 19047 2002 6998 Crawford +SBR 19049 2002 17686 Dallas +SBR 19051 2002 3565 Davis +SBR 19053 2002 3861 Decatur +SBR 19055 2002 7746 Delaware +SBR 19057 2002 18648 Des Moines +SBR 19059 2002 11653 Dickinson +SBR 19061 2002 36277 Dubuque +SBR 19063 2002 4913 Emmet +SBR 19065 2002 9553 Fayette +SBR 19067 2002 7295 Floyd +SBR 19069 2002 4739 Franklin +SBR 19071 2002 3553 Fremont +SBR 19073 2002 4639 Greene +SBR 19075 2002 5383 Grundy +SBR 19077 2002 5553 Guthrie +SBR 19079 2002 7143 Hamilton +SBR 19081 2002 5221 Hancock +SBR 19083 2002 8343 Hardin +SBR 19085 2002 6687 Harrison +SBR 19087 2002 8321 Henry +SBR 19089 2002 4362 Howard +SBR 19091 2002 4709 Humboldt +SBR 19093 2002 3496 Ida +SBR 19095 2002 6627 Iowa +SBR 19097 2002 9088 Jackson +SBR 19099 2002 15821 Jasper +SBR 19101 2002 7357 Jefferson +SBR 19103 2002 48648 Johnson +SBR 19105 2002 8196 Jones +SBR 19107 2002 5032 Keokuk +SBR 19109 2002 7589 Kossuth +SBR 19111 2002 16666 Lee +SBR 19113 2002 83847 Linn +SBR 19115 2002 5144 Louisa +SBR 19117 2002 4252 Lucas +SBR 19119 2002 4767 Lyon +SBR 19121 2002 5843 Madison +SBR 19123 2002 9676 Mahaska +SBR 19125 2002 13217 Marion +SBR 19127 2002 16505 Marshall +SBR 19129 2002 5740 Mills +SBR 19131 2002 4612 Mitchell +SBR 19133 2002 4697 Monona +SBR 19135 2002 3579 Monroe +SBR 19137 2002 5370 Montgomery +SBR 19139 2002 17008 Muscatine +SBR 19141 2002 6553 O'Brien +SBR 19143 2002 2991 Osceola +SBR 19145 2002 7283 Page +SBR 19147 2002 4644 Palo Alto +SBR 19149 2002 10071 Plymouth +SBR 19151 2002 3951 Pocahontas +SBR 19153 2002 162683 Polk +SBR 19155 2002 36880 Pottawattamie +SBR 19157 2002 8688 Poweshiek +SBR 19159 2002 2813 Ringgold +SBR 19161 2002 5573 Sac +SBR 19163 2002 66988 Scott +SBR 19165 2002 5424 Shelby +SBR 19167 2002 11444 Sioux +SBR 19169 2002 31410 Story +SBR 19171 2002 7610 Tama +SBR 19173 2002 3209 Taylor +SBR 19175 2002 5675 Union +SBR 19177 2002 3611 Van Buren +SBR 19179 2002 15917 Wapello +SBR 19181 2002 15892 Warren +SBR 19183 2002 8671 Washington +SBR 19185 2002 3384 Wayne +SBR 19187 2002 17107 Webster +SBR 19189 2002 5125 Winnebago +SBR 19191 2002 8297 Winneshiek +SBR 19193 2002 41637 Woodbury +SBR 19195 2002 3522 Worth +SBR 19197 2002 6545 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_SNOWM.ALO new file mode 100644 index 0000000..a3fd91a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_SNOWM.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 19000 2002 2150 IA +SNM 19001 2002 0 Adair +SNM 19003 2002 0 Adams +SNM 19005 2002 69 Allamakee +SNM 19007 2002 0 Appanoose +SNM 19009 2002 0 Audubon +SNM 19011 2002 0 Benton +SNM 19013 2002 0 Black Hawk +SNM 19015 2002 0 Boone +SNM 19017 2002 43 Bremer +SNM 19019 2002 48 Buchanan +SNM 19021 2002 0 Buena Vista +SNM 19023 2002 67 Butler +SNM 19025 2002 0 Calhoun +SNM 19027 2002 0 Carroll +SNM 19029 2002 0 Cass +SNM 19031 2002 0 Cedar +SNM 19033 2002 22 Cerro Gordo +SNM 19035 2002 0 Cherokee +SNM 19037 2002 78 Chickasaw +SNM 19039 2002 0 Clarke +SNM 19041 2002 59 Clay +SNM 19043 2002 54 Clayton +SNM 19045 2002 0 Clinton +SNM 19047 2002 0 Crawford +SNM 19049 2002 0 Dallas +SNM 19051 2002 0 Davis +SNM 19053 2002 0 Decatur +SNM 19055 2002 55 Delaware +SNM 19057 2002 0 Des Moines +SNM 19059 2002 61 Dickinson +SNM 19061 2002 11 Dubuque +SNM 19063 2002 92 Emmet +SNM 19065 2002 46 Fayette +SNM 19067 2002 60 Floyd +SNM 19069 2002 94 Franklin +SNM 19071 2002 0 Fremont +SNM 19073 2002 0 Greene +SNM 19075 2002 0 Grundy +SNM 19077 2002 0 Guthrie +SNM 19079 2002 0 Hamilton +SNM 19081 2002 84 Hancock +SNM 19083 2002 0 Hardin +SNM 19085 2002 0 Harrison +SNM 19087 2002 0 Henry +SNM 19089 2002 101 Howard +SNM 19091 2002 99 Humboldt +SNM 19093 2002 0 Ida +SNM 19095 2002 0 Iowa +SNM 19097 2002 49 Jackson +SNM 19099 2002 0 Jasper +SNM 19101 2002 0 Jefferson +SNM 19103 2002 0 Johnson +SNM 19105 2002 0 Jones +SNM 19107 2002 0 Keokuk +SNM 19109 2002 60 Kossuth +SNM 19111 2002 0 Lee +SNM 19113 2002 0 Linn +SNM 19115 2002 0 Louisa +SNM 19117 2002 0 Lucas +SNM 19119 2002 85 Lyon +SNM 19121 2002 0 Madison +SNM 19123 2002 0 Mahaska +SNM 19125 2002 0 Marion +SNM 19127 2002 0 Marshall +SNM 19129 2002 0 Mills +SNM 19131 2002 92 Mitchell +SNM 19133 2002 0 Monona +SNM 19135 2002 0 Monroe +SNM 19137 2002 0 Montgomery +SNM 19139 2002 0 Muscatine +SNM 19141 2002 68 O'Brien +SNM 19143 2002 146 Osceola +SNM 19145 2002 0 Page +SNM 19147 2002 101 Palo Alto +SNM 19149 2002 41 Plymouth +SNM 19151 2002 0 Pocahontas +SNM 19153 2002 0 Polk +SNM 19155 2002 0 Pottawattamie +SNM 19157 2002 0 Poweshiek +SNM 19159 2002 0 Ringgold +SNM 19161 2002 0 Sac +SNM 19163 2002 0 Scott +SNM 19165 2002 0 Shelby +SNM 19167 2002 31 Sioux +SNM 19169 2002 0 Story +SNM 19171 2002 0 Tama +SNM 19173 2002 0 Taylor +SNM 19175 2002 0 Union +SNM 19177 2002 0 Van Buren +SNM 19179 2002 0 Wapello +SNM 19181 2002 0 Warren +SNM 19183 2002 0 Washington +SNM 19185 2002 0 Wayne +SNM 19187 2002 0 Webster +SNM 19189 2002 87 Winnebago +SNM 19191 2002 47 Winneshiek +SNM 19193 2002 0 Woodbury +SNM 19195 2002 128 Worth +SNM 19197 2002 72 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_WIB.ALO new file mode 100644 index 0000000..24dd8a3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_WIB.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 19000 1990 1033 IA +WIB 19001 1990 3 Adair +WIB 19003 1990 5 Adams +WIB 19005 1990 50 Allamakee +WIB 19007 1990 52 Appanoose +WIB 19009 1990 1 Audubon +WIB 19011 1990 5 Benton +WIB 19013 1990 12 Black Hawk +WIB 19015 1990 5 Boone +WIB 19017 1990 4 Bremer +WIB 19019 1990 5 Buchanan +WIB 19021 1990 14 Buena Vista +WIB 19023 1990 3 Butler +WIB 19025 1990 6 Calhoun +WIB 19027 1990 2 Carroll +WIB 19029 1990 2 Cass +WIB 19031 1990 6 Cedar +WIB 19033 1990 17 Cerro Gordo +WIB 19035 1990 0 Cherokee +WIB 19037 1990 2 Chickasaw +WIB 19039 1990 2 Clarke +WIB 19041 1990 9 Clay +WIB 19043 1990 36 Clayton +WIB 19045 1990 39 Clinton +WIB 19047 1990 2 Crawford +WIB 19049 1990 14 Dallas +WIB 19051 1990 4 Davis +WIB 19053 1990 3 Decatur +WIB 19055 1990 3 Delaware +WIB 19057 1990 35 Des Moines +WIB 19059 1990 59 Dickinson +WIB 19061 1990 22 Dubuque +WIB 19063 1990 17 Emmet +WIB 19065 1990 1 Fayette +WIB 19067 1990 2 Floyd +WIB 19069 1990 1 Franklin +WIB 19071 1990 14 Fremont +WIB 19073 1990 7 Greene +WIB 19075 1990 0 Grundy +WIB 19077 1990 6 Guthrie +WIB 19079 1990 2 Hamilton +WIB 19081 1990 5 Hancock +WIB 19083 1990 2 Hardin +WIB 19085 1990 11 Harrison +WIB 19087 1990 6 Henry +WIB 19089 1990 1 Howard +WIB 19091 1990 3 Humboldt +WIB 19093 1990 1 Ida +WIB 19095 1990 2 Iowa +WIB 19097 1990 35 Jackson +WIB 19099 1990 8 Jasper +WIB 19101 1990 4 Jefferson +WIB 19103 1990 23 Johnson +WIB 19105 1990 4 Jones +WIB 19107 1990 2 Keokuk +WIB 19109 1990 4 Kossuth +WIB 19111 1990 55 Lee +WIB 19113 1990 18 Linn +WIB 19115 1990 41 Louisa +WIB 19117 1990 9 Lucas +WIB 19119 1990 0 Lyon +WIB 19121 1990 3 Madison +WIB 19123 1990 6 Mahaska +WIB 19125 1990 42 Marion +WIB 19127 1990 2 Marshall +WIB 19129 1990 8 Mills +WIB 19131 1990 1 Mitchell +WIB 19133 1990 15 Monona +WIB 19135 1990 2 Monroe +WIB 19137 1990 2 Montgomery +WIB 19139 1990 27 Muscatine +WIB 19141 1990 0 O'Brien +WIB 19143 1990 2 Osceola +WIB 19145 1990 1 Page +WIB 19147 1990 14 Palo Alto +WIB 19149 1990 1 Plymouth +WIB 19151 1990 4 Pocahontas +WIB 19153 1990 58 Polk +WIB 19155 1990 15 Pottawattamie +WIB 19157 1990 3 Poweshiek +WIB 19159 1990 3 Ringgold +WIB 19161 1990 7 Sac +WIB 19163 1990 27 Scott +WIB 19165 1990 1 Shelby +WIB 19167 1990 2 Sioux +WIB 19169 1990 2 Story +WIB 19171 1990 3 Tama +WIB 19173 1990 2 Taylor +WIB 19175 1990 4 Union +WIB 19177 1990 14 Van Buren +WIB 19179 1990 11 Wapello +WIB 19181 1990 4 Warren +WIB 19183 1990 5 Washington +WIB 19185 1990 4 Wayne +WIB 19187 1990 7 Webster +WIB 19189 1990 3 Winnebago +WIB 19191 1990 1 Winneshiek +WIB 19193 1990 12 Woodbury +WIB 19195 1990 4 Worth +WIB 19197 1990 5 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IA_WOB.ALO new file mode 100644 index 0000000..db66da5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IA_WOB.ALO @@ -0,0 +1,124 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 19000 1990 1033 IA +WOB 19001 1990 3 Adair +WOB 19003 1990 5 Adams +WOB 19005 1990 50 Allamakee +WOB 19007 1990 52 Appanoose +WOB 19009 1990 1 Audubon +WOB 19011 1990 5 Benton +WOB 19013 1990 12 Black Hawk +WOB 19015 1990 5 Boone +WOB 19017 1990 4 Bremer +WOB 19019 1990 5 Buchanan +WOB 19021 1990 14 Buena Vista +WOB 19023 1990 3 Butler +WOB 19025 1990 6 Calhoun +WOB 19027 1990 2 Carroll +WOB 19029 1990 2 Cass +WOB 19031 1990 6 Cedar +WOB 19033 1990 17 Cerro Gordo +WOB 19035 1990 0 Cherokee +WOB 19037 1990 2 Chickasaw +WOB 19039 1990 2 Clarke +WOB 19041 1990 9 Clay +WOB 19043 1990 36 Clayton +WOB 19045 1990 39 Clinton +WOB 19047 1990 2 Crawford +WOB 19049 1990 14 Dallas +WOB 19051 1990 4 Davis +WOB 19053 1990 3 Decatur +WOB 19055 1990 3 Delaware +WOB 19057 1990 35 Des Moines +WOB 19059 1990 59 Dickinson +WOB 19061 1990 22 Dubuque +WOB 19063 1990 17 Emmet +WOB 19065 1990 1 Fayette +WOB 19067 1990 2 Floyd +WOB 19069 1990 1 Franklin +WOB 19071 1990 14 Fremont +WOB 19073 1990 7 Greene +WOB 19075 1990 0 Grundy +WOB 19077 1990 6 Guthrie +WOB 19079 1990 2 Hamilton +WOB 19081 1990 5 Hancock +WOB 19083 1990 2 Hardin +WOB 19085 1990 11 Harrison +WOB 19087 1990 6 Henry +WOB 19089 1990 1 Howard +WOB 19091 1990 3 Humboldt +WOB 19093 1990 1 Ida +WOB 19095 1990 2 Iowa +WOB 19097 1990 35 Jackson +WOB 19099 1990 8 Jasper +WOB 19101 1990 4 Jefferson +WOB 19103 1990 23 Johnson +WOB 19105 1990 4 Jones +WOB 19107 1990 2 Keokuk +WOB 19109 1990 4 Kossuth +WOB 19111 1990 55 Lee +WOB 19113 1990 18 Linn +WOB 19115 1990 41 Louisa +WOB 19117 1990 9 Lucas +WOB 19119 1990 0 Lyon +WOB 19121 1990 3 Madison +WOB 19123 1990 6 Mahaska +WOB 19125 1990 42 Marion +WOB 19127 1990 2 Marshall +WOB 19129 1990 8 Mills +WOB 19131 1990 1 Mitchell +WOB 19133 1990 15 Monona +WOB 19135 1990 2 Monroe +WOB 19137 1990 2 Montgomery +WOB 19139 1990 27 Muscatine +WOB 19141 1990 0 O'Brien +WOB 19143 1990 2 Osceola +WOB 19145 1990 1 Page +WOB 19147 1990 14 Palo Alto +WOB 19149 1990 1 Plymouth +WOB 19151 1990 4 Pocahontas +WOB 19153 1990 58 Polk +WOB 19155 1990 15 Pottawattamie +WOB 19157 1990 3 Poweshiek +WOB 19159 1990 3 Ringgold +WOB 19161 1990 7 Sac +WOB 19163 1990 27 Scott +WOB 19165 1990 1 Shelby +WOB 19167 1990 2 Sioux +WOB 19169 1990 2 Story +WOB 19171 1990 3 Tama +WOB 19173 1990 2 Taylor +WOB 19175 1990 4 Union +WOB 19177 1990 14 Van Buren +WOB 19179 1990 11 Wapello +WOB 19181 1990 4 Warren +WOB 19183 1990 5 Washington +WOB 19185 1990 4 Wayne +WOB 19187 1990 7 Webster +WOB 19189 1990 3 Winnebago +WOB 19191 1990 1 Winneshiek +WOB 19193 1990 12 Woodbury +WOB 19195 1990 4 Worth +WOB 19197 1990 5 Wright +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_AIRTR.ALO new file mode 100644 index 0000000..3411d58 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_AIRTR.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 16000 2002 219.042 ID +AIR 16001 2002 209.600 Ada +AIR 16003 2002 0.000 Adams +AIR 16005 2002 0.000 Bannock +AIR 16007 2002 0.000 Bear Lake +AIR 16009 2002 0.000 Benewah +AIR 16011 2002 0.000 Bingham +AIR 16013 2002 0.921 Blaine +AIR 16015 2002 0.000 Boise +AIR 16017 2002 0.000 Bonner +AIR 16019 2002 0.938 Bonneville +AIR 16021 2002 0.000 Boundary +AIR 16023 2002 0.068 Butte +AIR 16025 2002 0.000 Camas +AIR 16027 2002 0.384 Canyon +AIR 16029 2002 0.000 Caribou +AIR 16031 2002 0.184 Cassia +AIR 16033 2002 0.000 Clark +AIR 16035 2002 0.000 Clearwater +AIR 16037 2002 0.000 Custer +AIR 16039 2002 0.090 Elmore +AIR 16041 2002 0.000 Franklin +AIR 16043 2002 0.000 Fremont +AIR 16045 2002 0.000 Gem +AIR 16047 2002 0.110 Gooding +AIR 16049 2002 0.000 Idaho +AIR 16051 2002 0.000 Jefferson +AIR 16053 2002 0.000 Jerome +AIR 16055 2002 0.553 Kootenai +AIR 16057 2002 0.000 Latah +AIR 16059 2002 0.000 Lemhi +AIR 16061 2002 0.000 Lewis +AIR 16063 2002 0.000 Lincoln +AIR 16065 2002 0.000 Madison +AIR 16067 2002 0.000 Minidoka +AIR 16069 2002 0.860 Nez Perce +AIR 16071 2002 0.000 Oneida +AIR 16073 2002 0.000 Owyhee +AIR 16075 2002 0.000 Payette +AIR 16077 2002 3.269 Power +AIR 16079 2002 0.000 Shoshone +AIR 16081 2002 0.000 Teton +AIR 16083 2002 1.600 Twin Falls +AIR 16085 2002 0.464 Valley +AIR 16087 2002 0.000 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_COAL.ALO new file mode 100644 index 0000000..7afe7c3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_COAL.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 16000 2002 0 ID +MIN 16001 2002 0 Ada +MIN 16003 2002 0 Adams +MIN 16005 2002 0 Bannock +MIN 16007 2002 0 Bear Lake +MIN 16009 2002 0 Benewah +MIN 16011 2002 0 Bingham +MIN 16013 2002 0 Blaine +MIN 16015 2002 0 Boise +MIN 16017 2002 0 Bonner +MIN 16019 2002 0 Bonneville +MIN 16021 2002 0 Boundary +MIN 16023 2002 0 Butte +MIN 16025 2002 0 Camas +MIN 16027 2002 0 Canyon +MIN 16029 2002 0 Caribou +MIN 16031 2002 0 Cassia +MIN 16033 2002 0 Clark +MIN 16035 2002 0 Clearwater +MIN 16037 2002 0 Custer +MIN 16039 2002 0 Elmore +MIN 16041 2002 0 Franklin +MIN 16043 2002 0 Fremont +MIN 16045 2002 0 Gem +MIN 16047 2002 0 Gooding +MIN 16049 2002 0 Idaho +MIN 16051 2002 0 Jefferson +MIN 16053 2002 0 Jerome +MIN 16055 2002 0 Kootenai +MIN 16057 2002 0 Latah +MIN 16059 2002 0 Lemhi +MIN 16061 2002 0 Lewis +MIN 16063 2002 0 Lincoln +MIN 16065 2002 0 Madison +MIN 16067 2002 0 Minidoka +MIN 16069 2002 0 Nez Perce +MIN 16071 2002 0 Oneida +MIN 16073 2002 0 Owyhee +MIN 16075 2002 0 Payette +MIN 16077 2002 0 Power +MIN 16079 2002 0 Shoshone +MIN 16081 2002 0 Teton +MIN 16083 2002 0 Twin Falls +MIN 16085 2002 0 Valley +MIN 16087 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_CONST.ALO new file mode 100644 index 0000000..81b5dcb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_CONST.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 16000 2003 3024820 ID +CON 16001 2003 1100707 Ada +CON 16003 2003 15407 Adams +CON 16005 2003 80069 Bannock +CON 16007 2003 10923 Bear Lake +CON 16009 2003 16998 Benewah +CON 16011 2003 40476 Bingham +CON 16013 2003 158426 Blaine +CON 16015 2003 13531 Boise +CON 16017 2003 20449 Bonner +CON 16019 2003 102623 Bonneville +CON 16021 2003 30785 Boundary +CON 16023 2003 2567 Butte +CON 16025 2003 2277 Camas +CON 16027 2003 412635 Canyon +CON 16029 2003 2391 Caribou +CON 16031 2003 15220 Cassia +CON 16033 2003 630 Clark +CON 16035 2003 6506 Clearwater +CON 16037 2003 10893 Custer +CON 16039 2003 65365 Elmore +CON 16041 2003 8535 Franklin +CON 16043 2003 24205 Fremont +CON 16045 2003 17621 Gem +CON 16047 2003 7353 Gooding +CON 16049 2003 14941 Idaho +CON 16051 2003 42927 Jefferson +CON 16053 2003 12069 Jerome +CON 16055 2003 337442 Kootenai +CON 16057 2003 60958 Latah +CON 16059 2003 10333 Lemhi +CON 16061 2003 598 Lewis +CON 16063 2003 5223 Lincoln +CON 16065 2003 58793 Madison +CON 16067 2003 5718 Minidoka +CON 16069 2003 69038 Nez Perce +CON 16071 2003 11866 Oneida +CON 16073 2003 10435 Owyhee +CON 16075 2003 19109 Payette +CON 16077 2003 4838 Power +CON 16079 2003 13509 Shoshone +CON 16081 2003 25126 Teton +CON 16083 2003 107059 Twin Falls +CON 16085 2003 38412 Valley +CON 16087 2003 9833 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_FARMS.ALO new file mode 100644 index 0000000..776b22d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_FARMS.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 16000 2002 4313288 ID +FRM 16001 2002 56228 Ada +FRM 16003 2002 11380 Adams +FRM 16005 2002 107780 Bannock +FRM 16007 2002 66239 Bear Lake +FRM 16009 2002 70768 Benewah +FRM 16011 2002 307120 Bingham +FRM 16013 2002 33114 Blaine +FRM 16015 2002 1853 Boise +FRM 16017 2002 18052 Bonner +FRM 16019 2002 214851 Bonneville +FRM 16021 2002 40440 Boundary +FRM 16023 2002 47715 Butte +FRM 16025 2002 63323 Camas +FRM 16027 2002 170465 Canyon +FRM 16029 2002 137693 Caribou +FRM 16031 2002 284954 Cassia +FRM 16033 2002 31335 Clark +FRM 16035 2002 29550 Clearwater +FRM 16037 2002 28311 Custer +FRM 16039 2002 84571 Elmore +FRM 16041 2002 65785 Franklin +FRM 16043 2002 131698 Fremont +FRM 16045 2002 24132 Gem +FRM 16047 2002 100711 Gooding +FRM 16049 2002 153105 Idaho +FRM 16051 2002 191500 Jefferson +FRM 16053 2002 131177 Jerome +FRM 16055 2002 45977 Kootenai +FRM 16057 2002 186646 Latah +FRM 16059 2002 39027 Lemhi +FRM 16061 2002 140002 Lewis +FRM 16063 2002 49096 Lincoln +FRM 16065 2002 132623 Madison +FRM 16067 2002 194423 Minidoka +FRM 16069 2002 164422 Nez Perce +FRM 16071 2002 105660 Oneida +FRM 16073 2002 107343 Owyhee +FRM 16075 2002 41482 Payette +FRM 16077 2002 154951 Power +FRM 16079 2002 414 Shoshone +FRM 16081 2002 68768 Teton +FRM 16083 2002 217786 Twin Falls +FRM 16085 2002 5027 Valley +FRM 16087 2002 55791 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_GOLF.ALO new file mode 100644 index 0000000..919dfdb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_GOLF.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 16000 2002 73 ID +GC 16001 2002 13 Ada +GC 16003 2002 1 Adams +GC 16005 2002 4 Bannock +GC 16007 2002 0 Bear Lake +GC 16009 2002 0 Benewah +GC 16011 2002 2 Bingham +GC 16013 2002 2 Blaine +GC 16015 2002 1 Boise +GC 16017 2002 4 Bonner +GC 16019 2002 2 Bonneville +GC 16021 2002 0 Boundary +GC 16023 2002 1 Butte +GC 16025 2002 0 Camas +GC 16027 2002 5 Canyon +GC 16029 2002 1 Caribou +GC 16031 2002 0 Cassia +GC 16033 2002 0 Clark +GC 16035 2002 1 Clearwater +GC 16037 2002 1 Custer +GC 16039 2002 0 Elmore +GC 16041 2002 1 Franklin +GC 16043 2002 1 Fremont +GC 16045 2002 0 Gem +GC 16047 2002 3 Gooding +GC 16049 2002 1 Idaho +GC 16051 2002 1 Jefferson +GC 16053 2002 3 Jerome +GC 16055 2002 9 Kootenai +GC 16057 2002 0 Latah +GC 16059 2002 1 Lemhi +GC 16061 2002 0 Lewis +GC 16063 2002 0 Lincoln +GC 16065 2002 0 Madison +GC 16067 2002 1 Minidoka +GC 16069 2002 3 Nez Perce +GC 16071 2002 0 Oneida +GC 16073 2002 0 Owyhee +GC 16075 2002 1 Payette +GC 16077 2002 0 Power +GC 16079 2002 2 Shoshone +GC 16081 2002 0 Teton +GC 16083 2002 6 Twin Falls +GC 16085 2002 1 Valley +GC 16087 2002 1 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_HOLSL.ALO new file mode 100644 index 0000000..925b7d5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_HOLSL.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 16000 2002 1977 ID +COM 16001 2002 638 Ada +COM 16003 2002 1 Adams +COM 16005 2002 95 Bannock +COM 16007 2002 4 Bear Lake +COM 16009 2002 11 Benewah +COM 16011 2002 48 Bingham +COM 16013 2002 40 Blaine +COM 16015 2002 1 Boise +COM 16017 2002 39 Bonner +COM 16019 2002 158 Bonneville +COM 16021 2002 13 Boundary +COM 16023 2002 3 Butte +COM 16025 2002 0 Camas +COM 16027 2002 169 Canyon +COM 16029 2002 11 Caribou +COM 16031 2002 37 Cassia +COM 16033 2002 1 Clark +COM 16035 2002 3 Clearwater +COM 16037 2002 4 Custer +COM 16039 2002 11 Elmore +COM 16041 2002 17 Franklin +COM 16043 2002 13 Fremont +COM 16045 2002 15 Gem +COM 16047 2002 13 Gooding +COM 16049 2002 11 Idaho +COM 16051 2002 25 Jefferson +COM 16053 2002 32 Jerome +COM 16055 2002 145 Kootenai +COM 16057 2002 34 Latah +COM 16059 2002 11 Lemhi +COM 16061 2002 6 Lewis +COM 16063 2002 1 Lincoln +COM 16065 2002 29 Madison +COM 16067 2002 42 Minidoka +COM 16069 2002 59 Nez Perce +COM 16071 2002 2 Oneida +COM 16073 2002 11 Owyhee +COM 16075 2002 23 Payette +COM 16077 2002 8 Power +COM 16079 2002 9 Shoshone +COM 16081 2002 6 Teton +COM 16083 2002 161 Twin Falls +COM 16085 2002 6 Valley +COM 16087 2002 11 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_HOUSE.ALO new file mode 100644 index 0000000..1c06d45 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_HOUSE.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 16000 2002 552115 ID +HOU 16001 2002 127486 Ada +HOU 16003 2002 2083 Adams +HOU 16005 2002 29621 Bannock +HOU 16007 2002 3379 Bear Lake +HOU 16009 2002 4279 Benewah +HOU 16011 2002 14568 Bingham +HOU 16013 2002 12904 Blaine +HOU 16015 2002 4495 Boise +HOU 16017 2002 19648 Bonner +HOU 16019 2002 31795 Bonneville +HOU 16021 2002 4182 Boundary +HOU 16023 2002 1290 Butte +HOU 16025 2002 633 Camas +HOU 16027 2002 52691 Canyon +HOU 16029 2002 3227 Caribou +HOU 16031 2002 7953 Cassia +HOU 16033 2002 519 Clark +HOU 16035 2002 4236 Clearwater +HOU 16037 2002 2998 Custer +HOU 16039 2002 10927 Elmore +HOU 16041 2002 4016 Franklin +HOU 16043 2002 7031 Fremont +HOU 16045 2002 6105 Gem +HOU 16047 2002 5663 Gooding +HOU 16049 2002 7596 Idaho +HOU 16051 2002 6512 Jefferson +HOU 16053 2002 6838 Jerome +HOU 16055 2002 49330 Kootenai +HOU 16057 2002 14092 Latah +HOU 16059 2002 4232 Lemhi +HOU 16061 2002 1800 Lewis +HOU 16063 2002 1693 Lincoln +HOU 16065 2002 8004 Madison +HOU 16067 2002 7545 Minidoka +HOU 16069 2002 16419 Nez Perce +HOU 16071 2002 1794 Oneida +HOU 16073 2002 4555 Owyhee +HOU 16075 2002 8186 Payette +HOU 16077 2002 2898 Power +HOU 16079 2002 7053 Shoshone +HOU 16081 2002 3085 Teton +HOU 16083 2002 26264 Twin Falls +HOU 16085 2002 8322 Valley +HOU 16087 2002 4168 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_LOGGN.ALO new file mode 100644 index 0000000..b0b4a6e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_LOGGN.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 16000 2002 342693740 ID +LOG 16001 2002 3349075 Ada +LOG 16003 2002 6653434 Adams +LOG 16005 2002 741882 Bannock +LOG 16007 2002 373166 Bear Lake +LOG 16009 2002 30830852 Benewah +LOG 16011 2002 538563 Bingham +LOG 16013 2002 152202 Blaine +LOG 16015 2002 17926454 Boise +LOG 16017 2002 42020326 Bonner +LOG 16019 2002 526572 Bonneville +LOG 16021 2002 16803884 Boundary +LOG 16023 2002 115190 Butte +LOG 16025 2002 123631 Camas +LOG 16027 2002 568535 Canyon +LOG 16029 2002 685018 Caribou +LOG 16031 2002 435806 Cassia +LOG 16033 2002 36702 Clark +LOG 16035 2002 51240410 Clearwater +LOG 16037 2002 1310682 Custer +LOG 16039 2002 5212566 Elmore +LOG 16041 2002 101527 Franklin +LOG 16043 2002 6381185 Fremont +LOG 16045 2002 280008 Gem +LOG 16047 2002 712985 Gooding +LOG 16049 2002 25099376 Idaho +LOG 16051 2002 1802 Jefferson +LOG 16053 2002 0 Jerome +LOG 16055 2002 33816931 Kootenai +LOG 16057 2002 26422775 Latah +LOG 16059 2002 1009714 Lemhi +LOG 16061 2002 5915862 Lewis +LOG 16063 2002 219262 Lincoln +LOG 16065 2002 0 Madison +LOG 16067 2002 0 Minidoka +LOG 16069 2002 2202497 Nez Perce +LOG 16071 2002 0 Oneida +LOG 16073 2002 1254232 Owyhee +LOG 16075 2002 0 Payette +LOG 16077 2002 197534 Power +LOG 16079 2002 46184544 Shoshone +LOG 16081 2002 139034 Teton +LOG 16083 2002 0 Twin Falls +LOG 16085 2002 12081165 Valley +LOG 16087 2002 1028355 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_LSCAP.ALO new file mode 100644 index 0000000..87db781 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_LSCAP.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 16000 2002 1813 ID +LSC 16001 2002 712 Ada +LSC 16003 2002 5 Adams +LSC 16005 2002 63 Bannock +LSC 16007 2002 0 Bear Lake +LSC 16009 2002 0 Benewah +LSC 16011 2002 5 Bingham +LSC 16013 2002 467 Blaine +LSC 16015 2002 5 Boise +LSC 16017 2002 5 Bonner +LSC 16019 2002 54 Bonneville +LSC 16021 2002 5 Boundary +LSC 16023 2002 0 Butte +LSC 16025 2002 0 Camas +LSC 16027 2002 147 Canyon +LSC 16029 2002 0 Caribou +LSC 16031 2002 5 Cassia +LSC 16033 2002 0 Clark +LSC 16035 2002 5 Clearwater +LSC 16037 2002 0 Custer +LSC 16039 2002 5 Elmore +LSC 16041 2002 5 Franklin +LSC 16043 2002 5 Fremont +LSC 16045 2002 5 Gem +LSC 16047 2002 5 Gooding +LSC 16049 2002 0 Idaho +LSC 16051 2002 5 Jefferson +LSC 16053 2002 5 Jerome +LSC 16055 2002 101 Kootenai +LSC 16057 2002 5 Latah +LSC 16059 2002 5 Lemhi +LSC 16061 2002 0 Lewis +LSC 16063 2002 5 Lincoln +LSC 16065 2002 5 Madison +LSC 16067 2002 0 Minidoka +LSC 16069 2002 32 Nez Perce +LSC 16071 2002 0 Oneida +LSC 16073 2002 5 Owyhee +LSC 16075 2002 67 Payette +LSC 16077 2002 5 Power +LSC 16079 2002 5 Shoshone +LSC 16081 2002 5 Teton +LSC 16083 2002 46 Twin Falls +LSC 16085 2002 9 Valley +LSC 16087 2002 5 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_MNFG.ALO new file mode 100644 index 0000000..810cbd0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_MNFG.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 16000 2002 106002 ID +MFG 16001 2002 38506 Ada +MFG 16003 2002 141 Adams +MFG 16005 2002 4884 Bannock +MFG 16007 2002 169 Bear Lake +MFG 16009 2002 1243 Benewah +MFG 16011 2002 2655 Bingham +MFG 16013 2002 783 Blaine +MFG 16015 2002 118 Boise +MFG 16017 2002 2994 Bonner +MFG 16019 2002 3523 Bonneville +MFG 16021 2002 874 Boundary +MFG 16023 2002 32 Butte +MFG 16025 2002 22 Camas +MFG 16027 2002 14316 Canyon +MFG 16029 2002 987 Caribou +MFG 16031 2002 1290 Cassia +MFG 16033 2002 8 Clark +MFG 16035 2002 426 Clearwater +MFG 16037 2002 29 Custer +MFG 16039 2002 478 Elmore +MFG 16041 2002 582 Franklin +MFG 16043 2002 140 Fremont +MFG 16045 2002 234 Gem +MFG 16047 2002 418 Gooding +MFG 16049 2002 960 Idaho +MFG 16051 2002 998 Jefferson +MFG 16053 2002 1525 Jerome +MFG 16055 2002 8402 Kootenai +MFG 16057 2002 644 Latah +MFG 16059 2002 200 Lemhi +MFG 16061 2002 194 Lewis +MFG 16063 2002 45 Lincoln +MFG 16065 2002 2237 Madison +MFG 16067 2002 2088 Minidoka +MFG 16069 2002 5518 Nez Perce +MFG 16071 2002 82 Oneida +MFG 16073 2002 240 Owyhee +MFG 16075 2002 1670 Payette +MFG 16077 2002 739 Power +MFG 16079 2002 404 Shoshone +MFG 16081 2002 130 Teton +MFG 16083 2002 4183 Twin Falls +MFG 16085 2002 117 Valley +MFG 16087 2002 774 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_OIL.ALO new file mode 100644 index 0000000..5886219 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_OIL.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 16000 2002 86 ID +OIL 16001 2002 7 Ada +OIL 16003 2002 0 Adams +OIL 16005 2002 27 Bannock +OIL 16007 2002 0 Bear Lake +OIL 16009 2002 0 Benewah +OIL 16011 2002 0 Bingham +OIL 16013 2002 0 Blaine +OIL 16015 2002 0 Boise +OIL 16017 2002 0 Bonner +OIL 16019 2002 0 Bonneville +OIL 16021 2002 0 Boundary +OIL 16023 2002 0 Butte +OIL 16025 2002 0 Camas +OIL 16027 2002 0 Canyon +OIL 16029 2002 0 Caribou +OIL 16031 2002 0 Cassia +OIL 16033 2002 0 Clark +OIL 16035 2002 26 Clearwater +OIL 16037 2002 0 Custer +OIL 16039 2002 0 Elmore +OIL 16041 2002 0 Franklin +OIL 16043 2002 0 Fremont +OIL 16045 2002 0 Gem +OIL 16047 2002 0 Gooding +OIL 16049 2002 0 Idaho +OIL 16051 2002 0 Jefferson +OIL 16053 2002 0 Jerome +OIL 16055 2002 0 Kootenai +OIL 16057 2002 0 Latah +OIL 16059 2002 0 Lemhi +OIL 16061 2002 0 Lewis +OIL 16063 2002 0 Lincoln +OIL 16065 2002 0 Madison +OIL 16067 2002 0 Minidoka +OIL 16069 2002 0 Nez Perce +OIL 16071 2002 0 Oneida +OIL 16073 2002 0 Owyhee +OIL 16075 2002 0 Payette +OIL 16077 2002 0 Power +OIL 16079 2002 26 Shoshone +OIL 16081 2002 0 Teton +OIL 16083 2002 0 Twin Falls +OIL 16085 2002 0 Valley +OIL 16087 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_POP.ALO new file mode 100644 index 0000000..4ec7f35 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_POP.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 16000 2002 1343194 ID +POP 16001 2002 319839 Ada +POP 16003 2002 3478 Adams +POP 16005 2002 75807 Bannock +POP 16007 2002 6303 Bear Lake +POP 16009 2002 9011 Benewah +POP 16011 2002 42363 Bingham +POP 16013 2002 20296 Blaine +POP 16015 2002 7055 Boise +POP 16017 2002 38226 Bonner +POP 16019 2002 85273 Bonneville +POP 16021 2002 9984 Boundary +POP 16023 2002 2928 Butte +POP 16025 2002 1038 Camas +POP 16027 2002 145546 Canyon +POP 16029 2002 7240 Caribou +POP 16031 2002 21557 Cassia +POP 16033 2002 957 Clark +POP 16035 2002 8467 Clearwater +POP 16037 2002 4166 Custer +POP 16039 2002 29227 Elmore +POP 16041 2002 11805 Franklin +POP 16043 2002 11897 Fremont +POP 16045 2002 15583 Gem +POP 16047 2002 14235 Gooding +POP 16049 2002 15519 Idaho +POP 16051 2002 19784 Jefferson +POP 16053 2002 18694 Jerome +POP 16055 2002 114323 Kootenai +POP 16057 2002 34828 Latah +POP 16059 2002 7753 Lemhi +POP 16061 2002 3725 Lewis +POP 16063 2002 4232 Lincoln +POP 16065 2002 28819 Madison +POP 16067 2002 19443 Minidoka +POP 16069 2002 37178 Nez Perce +POP 16071 2002 4131 Oneida +POP 16073 2002 10933 Owyhee +POP 16075 2002 21203 Payette +POP 16077 2002 7425 Power +POP 16079 2002 13077 Shoshone +POP 16081 2002 6815 Teton +POP 16083 2002 65459 Twin Falls +POP 16085 2002 7611 Valley +POP 16087 2002 9961 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_RAIL.ALO new file mode 100644 index 0000000..71d061b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_RAIL.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 16000 2002 10355.330 ID +RR 16001 2002 517.290 Ada +RR 16003 2002 0.000 Adams +RR 16005 2002 666.900 Bannock +RR 16007 2002 352.270 Bear Lake +RR 16009 2002 4.760 Benewah +RR 16011 2002 73.100 Bingham +RR 16013 2002 557.980 Blaine +RR 16015 2002 0.000 Boise +RR 16017 2002 1582.150 Bonner +RR 16019 2002 19.560 Bonneville +RR 16021 2002 574.740 Boundary +RR 16023 2002 11.300 Butte +RR 16025 2002 0.000 Camas +RR 16027 2002 606.740 Canyon +RR 16029 2002 646.230 Caribou +RR 16031 2002 0.000 Cassia +RR 16033 2002 28.570 Clark +RR 16035 2002 0.000 Clearwater +RR 16037 2002 0.000 Custer +RR 16039 2002 493.100 Elmore +RR 16041 2002 97.180 Franklin +RR 16043 2002 0.000 Fremont +RR 16045 2002 0.000 Gem +RR 16047 2002 473.010 Gooding +RR 16049 2002 0.000 Idaho +RR 16051 2002 16.760 Jefferson +RR 16053 2002 0.000 Jerome +RR 16055 2002 662.930 Kootenai +RR 16057 2002 0.000 Latah +RR 16059 2002 0.000 Lemhi +RR 16061 2002 0.000 Lewis +RR 16063 2002 830.980 Lincoln +RR 16065 2002 0.000 Madison +RR 16067 2002 821.790 Minidoka +RR 16069 2002 0.000 Nez Perce +RR 16071 2002 7.470 Oneida +RR 16073 2002 0.000 Owyhee +RR 16075 2002 117.510 Payette +RR 16077 2002 620.940 Power +RR 16079 2002 0.000 Shoshone +RR 16081 2002 0.000 Teton +RR 16083 2002 0.000 Twin Falls +RR 16085 2002 0.000 Valley +RR 16087 2002 572.070 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_RVPRK.ALO new file mode 100644 index 0000000..3863de9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_RVPRK.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 16000 2002 82 ID +RVP 16001 2002 8 Ada +RVP 16003 2002 0 Adams +RVP 16005 2002 1 Bannock +RVP 16007 2002 3 Bear Lake +RVP 16009 2002 2 Benewah +RVP 16011 2002 0 Bingham +RVP 16013 2002 2 Blaine +RVP 16015 2002 4 Boise +RVP 16017 2002 3 Bonner +RVP 16019 2002 4 Bonneville +RVP 16021 2002 0 Boundary +RVP 16023 2002 0 Butte +RVP 16025 2002 0 Camas +RVP 16027 2002 1 Canyon +RVP 16029 2002 0 Caribou +RVP 16031 2002 1 Cassia +RVP 16033 2002 0 Clark +RVP 16035 2002 1 Clearwater +RVP 16037 2002 4 Custer +RVP 16039 2002 2 Elmore +RVP 16041 2002 1 Franklin +RVP 16043 2002 6 Fremont +RVP 16045 2002 0 Gem +RVP 16047 2002 1 Gooding +RVP 16049 2002 1 Idaho +RVP 16051 2002 2 Jefferson +RVP 16053 2002 1 Jerome +RVP 16055 2002 10 Kootenai +RVP 16057 2002 0 Latah +RVP 16059 2002 6 Lemhi +RVP 16061 2002 1 Lewis +RVP 16063 2002 1 Lincoln +RVP 16065 2002 0 Madison +RVP 16067 2002 0 Minidoka +RVP 16069 2002 0 Nez Perce +RVP 16071 2002 0 Oneida +RVP 16073 2002 0 Owyhee +RVP 16075 2002 0 Payette +RVP 16077 2002 1 Power +RVP 16079 2002 2 Shoshone +RVP 16081 2002 3 Teton +RVP 16083 2002 1 Twin Falls +RVP 16085 2002 9 Valley +RVP 16087 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_SBC.ALO new file mode 100644 index 0000000..94e4b52 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_SBC.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 16000 2002 1813 ID +SBC 16001 2002 712 Ada +SBC 16003 2002 1 Adams +SBC 16005 2002 63 Bannock +SBC 16007 2002 0 Bear Lake +SBC 16009 2002 0 Benewah +SBC 16011 2002 14 Bingham +SBC 16013 2002 467 Blaine +SBC 16015 2002 3 Boise +SBC 16017 2002 13 Bonner +SBC 16019 2002 54 Bonneville +SBC 16021 2002 4 Boundary +SBC 16023 2002 0 Butte +SBC 16025 2002 0 Camas +SBC 16027 2002 147 Canyon +SBC 16029 2002 0 Caribou +SBC 16031 2002 8 Cassia +SBC 16033 2002 0 Clark +SBC 16035 2002 3 Clearwater +SBC 16037 2002 0 Custer +SBC 16039 2002 10 Elmore +SBC 16041 2002 4 Franklin +SBC 16043 2002 4 Fremont +SBC 16045 2002 6 Gem +SBC 16047 2002 5 Gooding +SBC 16049 2002 0 Idaho +SBC 16051 2002 7 Jefferson +SBC 16053 2002 7 Jerome +SBC 16055 2002 101 Kootenai +SBC 16057 2002 12 Latah +SBC 16059 2002 3 Lemhi +SBC 16061 2002 0 Lewis +SBC 16063 2002 2 Lincoln +SBC 16065 2002 10 Madison +SBC 16067 2002 0 Minidoka +SBC 16069 2002 13 Nez Perce +SBC 16071 2002 0 Oneida +SBC 16073 2002 4 Owyhee +SBC 16075 2002 67 Payette +SBC 16077 2002 3 Power +SBC 16079 2002 5 Shoshone +SBC 16081 2002 2 Teton +SBC 16083 2002 46 Twin Falls +SBC 16085 2002 9 Valley +SBC 16087 2002 4 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_SBR.ALO new file mode 100644 index 0000000..380fcbb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_SBR.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 16000 2002 552115 ID +SBR 16001 2002 127486 Ada +SBR 16003 2002 2083 Adams +SBR 16005 2002 29621 Bannock +SBR 16007 2002 3379 Bear Lake +SBR 16009 2002 4279 Benewah +SBR 16011 2002 14568 Bingham +SBR 16013 2002 12904 Blaine +SBR 16015 2002 4495 Boise +SBR 16017 2002 19648 Bonner +SBR 16019 2002 31795 Bonneville +SBR 16021 2002 4182 Boundary +SBR 16023 2002 1290 Butte +SBR 16025 2002 633 Camas +SBR 16027 2002 52691 Canyon +SBR 16029 2002 3227 Caribou +SBR 16031 2002 7953 Cassia +SBR 16033 2002 519 Clark +SBR 16035 2002 4236 Clearwater +SBR 16037 2002 2998 Custer +SBR 16039 2002 10927 Elmore +SBR 16041 2002 4016 Franklin +SBR 16043 2002 7031 Fremont +SBR 16045 2002 6105 Gem +SBR 16047 2002 5663 Gooding +SBR 16049 2002 7596 Idaho +SBR 16051 2002 6512 Jefferson +SBR 16053 2002 6838 Jerome +SBR 16055 2002 49330 Kootenai +SBR 16057 2002 14092 Latah +SBR 16059 2002 4232 Lemhi +SBR 16061 2002 1800 Lewis +SBR 16063 2002 1693 Lincoln +SBR 16065 2002 8004 Madison +SBR 16067 2002 7545 Minidoka +SBR 16069 2002 16419 Nez Perce +SBR 16071 2002 1794 Oneida +SBR 16073 2002 4555 Owyhee +SBR 16075 2002 8186 Payette +SBR 16077 2002 2898 Power +SBR 16079 2002 7053 Shoshone +SBR 16081 2002 3085 Teton +SBR 16083 2002 26264 Twin Falls +SBR 16085 2002 8322 Valley +SBR 16087 2002 4168 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_SNOWM.ALO new file mode 100644 index 0000000..bf6a32f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_SNOWM.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 16000 2002 2861 ID +SNM 16001 2002 0 Ada +SNM 16003 2002 0 Adams +SNM 16005 2002 13 Bannock +SNM 16007 2002 159 Bear Lake +SNM 16009 2002 111 Benewah +SNM 16011 2002 0 Bingham +SNM 16013 2002 0 Blaine +SNM 16015 2002 142 Boise +SNM 16017 2002 26 Bonner +SNM 16019 2002 12 Bonneville +SNM 16021 2002 100 Boundary +SNM 16023 2002 0 Butte +SNM 16025 2002 0 Camas +SNM 16027 2002 0 Canyon +SNM 16029 2002 0 Caribou +SNM 16031 2002 0 Cassia +SNM 16033 2002 1045 Clark +SNM 16035 2002 118 Clearwater +SNM 16037 2002 240 Custer +SNM 16039 2002 0 Elmore +SNM 16041 2002 85 Franklin +SNM 16043 2002 84 Fremont +SNM 16045 2002 0 Gem +SNM 16047 2002 0 Gooding +SNM 16049 2002 64 Idaho +SNM 16051 2002 0 Jefferson +SNM 16053 2002 0 Jerome +SNM 16055 2002 9 Kootenai +SNM 16057 2002 0 Latah +SNM 16059 2002 129 Lemhi +SNM 16061 2002 0 Lewis +SNM 16063 2002 0 Lincoln +SNM 16065 2002 35 Madison +SNM 16067 2002 0 Minidoka +SNM 16069 2002 0 Nez Perce +SNM 16071 2002 0 Oneida +SNM 16073 2002 0 Owyhee +SNM 16075 2002 0 Payette +SNM 16077 2002 135 Power +SNM 16079 2002 76 Shoshone +SNM 16081 2002 147 Teton +SNM 16083 2002 0 Twin Falls +SNM 16085 2002 131 Valley +SNM 16087 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_WIB.ALO new file mode 100644 index 0000000..160ec67 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_WIB.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 16000 1990 2133 ID +WIB 16001 1990 14 Ada +WIB 16003 1990 14 Adams +WIB 16005 1990 89 Bannock +WIB 16007 1990 202 Bear Lake +WIB 16009 1990 21 Benewah +WIB 16011 1990 66 Bingham +WIB 16013 1990 42 Blaine +WIB 16015 1990 11 Boise +WIB 16017 1990 471 Bonner +WIB 16019 1990 83 Bonneville +WIB 16021 1990 24 Boundary +WIB 16023 1990 2 Butte +WIB 16025 1990 11 Camas +WIB 16027 1990 36 Canyon +WIB 16029 1990 84 Caribou +WIB 16031 1990 36 Cassia +WIB 16033 1990 2 Clark +WIB 16035 1990 69 Clearwater +WIB 16037 1990 29 Custer +WIB 16039 1990 59 Elmore +WIB 16041 1990 8 Franklin +WIB 16043 1990 75 Fremont +WIB 16045 1990 8 Gem +WIB 16047 1990 8 Gooding +WIB 16049 1990 46 Idaho +WIB 16051 1990 27 Jefferson +WIB 16053 1990 5 Jerome +WIB 16055 1990 183 Kootenai +WIB 16057 1990 1 Latah +WIB 16059 1990 14 Lemhi +WIB 16061 1990 2 Lewis +WIB 16063 1990 1 Lincoln +WIB 16065 1990 5 Madison +WIB 16067 1990 9 Minidoka +WIB 16069 1990 19 Nez Perce +WIB 16071 1990 3 Oneida +WIB 16073 1990 48 Owyhee +WIB 16075 1990 7 Payette +WIB 16077 1990 96 Power +WIB 16079 1990 4 Shoshone +WIB 16081 1990 1 Teton +WIB 16083 1990 9 Twin Falls +WIB 16085 1990 144 Valley +WIB 16087 1990 45 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ID_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ID_WOB.ALO new file mode 100644 index 0000000..e3a40f8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ID_WOB.ALO @@ -0,0 +1,69 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 16000 1990 2133 ID +WOB 16001 1990 14 Ada +WOB 16003 1990 14 Adams +WOB 16005 1990 89 Bannock +WOB 16007 1990 202 Bear Lake +WOB 16009 1990 21 Benewah +WOB 16011 1990 66 Bingham +WOB 16013 1990 42 Blaine +WOB 16015 1990 11 Boise +WOB 16017 1990 471 Bonner +WOB 16019 1990 83 Bonneville +WOB 16021 1990 24 Boundary +WOB 16023 1990 2 Butte +WOB 16025 1990 11 Camas +WOB 16027 1990 36 Canyon +WOB 16029 1990 84 Caribou +WOB 16031 1990 36 Cassia +WOB 16033 1990 2 Clark +WOB 16035 1990 69 Clearwater +WOB 16037 1990 29 Custer +WOB 16039 1990 59 Elmore +WOB 16041 1990 8 Franklin +WOB 16043 1990 75 Fremont +WOB 16045 1990 8 Gem +WOB 16047 1990 8 Gooding +WOB 16049 1990 46 Idaho +WOB 16051 1990 27 Jefferson +WOB 16053 1990 5 Jerome +WOB 16055 1990 183 Kootenai +WOB 16057 1990 1 Latah +WOB 16059 1990 14 Lemhi +WOB 16061 1990 2 Lewis +WOB 16063 1990 1 Lincoln +WOB 16065 1990 5 Madison +WOB 16067 1990 9 Minidoka +WOB 16069 1990 19 Nez Perce +WOB 16071 1990 3 Oneida +WOB 16073 1990 48 Owyhee +WOB 16075 1990 7 Payette +WOB 16077 1990 96 Power +WOB 16079 1990 4 Shoshone +WOB 16081 1990 1 Teton +WOB 16083 1990 9 Twin Falls +WOB 16085 1990 144 Valley +WOB 16087 1990 45 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_AIRTR.ALO new file mode 100644 index 0000000..5b2426f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_AIRTR.ALO @@ -0,0 +1,129 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 17000 2002 4684.488 IL +AIR 17001 2002 0.130 Adams +AIR 17003 2002 0.080 Alexander +AIR 17005 2002 0.120 Bond +AIR 17007 2002 0.090 Boone +AIR 17009 2002 0.000 Brown +AIR 17011 2002 0.000 Bureau +AIR 17013 2002 0.000 Calhoun +AIR 17015 2002 0.009 Carroll +AIR 17017 2002 0.000 Cass +AIR 17019 2002 3.180 Champaign +AIR 17021 2002 0.037 Christian +AIR 17023 2002 0.020 Clark +AIR 17025 2002 0.020 Clay +AIR 17027 2002 0.000 Clinton +AIR 17029 2002 0.260 Coles +AIR 17031 2002 4477.000 Cook +AIR 17033 2002 0.080 Crawford +AIR 17035 2002 0.000 Cumberland +AIR 17037 2002 0.230 DeKalb +AIR 17039 2002 0.000 De Witt +AIR 17041 2002 0.000 Douglas +AIR 17043 2002 1.054 DuPage +AIR 17045 2002 0.012 Edgar +AIR 17047 2002 0.000 Edwards +AIR 17049 2002 0.090 Effingham +AIR 17051 2002 0.010 Fayette +AIR 17053 2002 0.012 Ford +AIR 17055 2002 0.000 Franklin +AIR 17057 2002 0.009 Fulton +AIR 17059 2002 0.000 Gallatin +AIR 17061 2002 0.000 Greene +AIR 17063 2002 0.170 Grundy +AIR 17065 2002 0.000 Hamilton +AIR 17067 2002 0.000 Hancock +AIR 17069 2002 0.000 Hardin +AIR 17071 2002 0.000 Henderson +AIR 17073 2002 0.162 Henry +AIR 17075 2002 0.000 Iroquois +AIR 17077 2002 0.538 Jackson +AIR 17079 2002 0.000 Jasper +AIR 17081 2002 0.370 Jefferson +AIR 17083 2002 0.000 Jersey +AIR 17085 2002 0.000 Jo Daviess +AIR 17087 2002 0.000 Johnson +AIR 17089 2002 0.480 Kane +AIR 17091 2002 0.310 Kankakee +AIR 17093 2002 0.000 Kendall +AIR 17095 2002 0.120 Knox +AIR 17097 2002 0.530 Lake +AIR 17099 2002 0.077 La Salle +AIR 17101 2002 0.470 Lawrence +AIR 17103 2002 0.270 Lee +AIR 17105 2002 0.000 Livingston +AIR 17107 2002 0.064 Logan +AIR 17109 2002 0.230 McDonough +AIR 17111 2002 0.460 McHenry +AIR 17113 2002 21.890 McLean +AIR 17115 2002 0.425 Macon +AIR 17117 2002 0.000 Macoupin +AIR 17119 2002 0.490 Madison +AIR 17121 2002 0.172 Marion +AIR 17123 2002 0.060 Marshall +AIR 17125 2002 0.000 Mason +AIR 17127 2002 0.000 Massac +AIR 17129 2002 0.000 Menard +AIR 17131 2002 0.000 Mercer +AIR 17133 2002 0.000 Monroe +AIR 17135 2002 0.060 Montgomery +AIR 17137 2002 0.070 Morgan +AIR 17139 2002 0.000 Moultrie +AIR 17141 2002 0.010 Ogle +AIR 17143 2002 28.010 Peoria +AIR 17145 2002 0.030 Perry +AIR 17147 2002 0.000 Piatt +AIR 17149 2002 0.024 Pike +AIR 17151 2002 0.000 Pope +AIR 17153 2002 0.000 Pulaski +AIR 17155 2002 0.000 Putnam +AIR 17157 2002 0.140 Randolph +AIR 17159 2002 0.060 Richland +AIR 17161 2002 59.810 Rock Island +AIR 17163 2002 4.720 St. Clair +AIR 17165 2002 0.021 Saline +AIR 17167 2002 1.000 Sangamon +AIR 17169 2002 0.000 Schuyler +AIR 17171 2002 0.000 Scott +AIR 17173 2002 0.059 Shelby +AIR 17175 2002 0.000 Stark +AIR 17177 2002 0.040 Stephenson +AIR 17179 2002 0.200 Tazewell +AIR 17181 2002 0.000 Union +AIR 17183 2002 5.847 Vermilion +AIR 17185 2002 0.000 Wabash +AIR 17187 2002 0.017 Warren +AIR 17189 2002 0.000 Washington +AIR 17191 2002 0.019 Wayne +AIR 17193 2002 0.020 White +AIR 17195 2002 10.408 Whiteside +AIR 17197 2002 1.080 Will +AIR 17199 2002 0.324 Williamson +AIR 17201 2002 62.790 Winnebago +AIR 17203 2002 0.000 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_COAL.ALO new file mode 100644 index 0000000..72ae644 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_COAL.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 17000 2002 26930 IL +MIN 17001 2002 0 Adams +MIN 17003 2002 0 Alexander +MIN 17005 2002 0 Bond +MIN 17007 2002 0 Boone +MIN 17009 2002 0 Brown +MIN 17011 2002 0 Bureau +MIN 17013 2002 0 Calhoun +MIN 17015 2002 0 Carroll +MIN 17017 2002 0 Cass +MIN 17019 2002 0 Champaign +MIN 17021 2002 0 Christian +MIN 17023 2002 0 Clark +MIN 17025 2002 0 Clay +MIN 17027 2002 0 Clinton +MIN 17029 2002 0 Coles +MIN 17031 2002 0 Cook +MIN 17033 2002 0 Crawford +MIN 17035 2002 0 Cumberland +MIN 17037 2002 0 DeKalb +MIN 17039 2002 0 De Witt +MIN 17041 2002 0 Douglas +MIN 17043 2002 0 DuPage +MIN 17045 2002 0 Edgar +MIN 17047 2002 0 Edwards +MIN 17049 2002 0 Effingham +MIN 17051 2002 0 Fayette +MIN 17053 2002 0 Ford +MIN 17055 2002 0 Franklin +MIN 17057 2002 0 Fulton +MIN 17059 2002 190 Gallatin +MIN 17061 2002 0 Greene +MIN 17063 2002 0 Grundy +MIN 17065 2002 0 Hamilton +MIN 17067 2002 0 Hancock +MIN 17069 2002 0 Hardin +MIN 17071 2002 0 Henderson +MIN 17073 2002 0 Henry +MIN 17075 2002 0 Iroquois +MIN 17077 2002 0 Jackson +MIN 17079 2002 0 Jasper +MIN 17081 2002 1670 Jefferson +MIN 17083 2002 0 Jersey +MIN 17085 2002 0 Jo Daviess +MIN 17087 2002 0 Johnson +MIN 17089 2002 0 Kane +MIN 17091 2002 0 Kankakee +MIN 17093 2002 0 Kendall +MIN 17095 2002 0 Knox +MIN 17097 2002 0 Lake +MIN 17099 2002 0 La Salle +MIN 17101 2002 0 Lawrence +MIN 17103 2002 0 Lee +MIN 17105 2002 0 Livingston +MIN 17107 2002 0 Logan +MIN 17109 2002 0 McDonough +MIN 17111 2002 0 McHenry +MIN 17113 2002 0 McLean +MIN 17115 2002 0 Macon +MIN 17117 2002 4872 Macoupin +MIN 17119 2002 0 Madison +MIN 17121 2002 0 Marion +MIN 17123 2002 0 Marshall +MIN 17125 2002 0 Mason +MIN 17127 2002 0 Massac +MIN 17129 2002 0 Menard +MIN 17131 2002 0 Mercer +MIN 17133 2002 0 Monroe +MIN 17135 2002 2019 Montgomery +MIN 17137 2002 0 Morgan +MIN 17139 2002 0 Moultrie +MIN 17141 2002 0 Ogle +MIN 17143 2002 0 Peoria +MIN 17145 2002 0 Perry +MIN 17147 2002 0 Piatt +MIN 17149 2002 0 Pike +MIN 17151 2002 0 Pope +MIN 17153 2002 0 Pulaski +MIN 17155 2002 0 Putnam +MIN 17157 2002 2549 Randolph +MIN 17159 2002 0 Richland +MIN 17161 2002 0 Rock Island +MIN 17163 2002 0 St. Clair +MIN 17165 2002 8633 Saline +MIN 17167 2002 1759 Sangamon +MIN 17169 2002 0 Schuyler +MIN 17171 2002 0 Scott +MIN 17173 2002 0 Shelby +MIN 17175 2002 0 Stark +MIN 17177 2002 0 Stephenson +MIN 17179 2002 0 Tazewell +MIN 17181 2002 0 Union +MIN 17183 2002 1900 Vermilion +MIN 17185 2002 1491 Wabash +MIN 17187 2002 0 Warren +MIN 17189 2002 0 Washington +MIN 17191 2002 0 Wayne +MIN 17193 2002 1847 White +MIN 17195 2002 0 Whiteside +MIN 17197 2002 0 Will +MIN 17199 2002 0 Williamson +MIN 17201 2002 0 Winnebago +MIN 17203 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_CONST.ALO new file mode 100644 index 0000000..ba18f9b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_CONST.ALO @@ -0,0 +1,129 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 17000 2003 19816529 IL +CON 17001 2003 85689 Adams +CON 17003 2003 9438 Alexander +CON 17005 2003 20817 Bond +CON 17007 2003 122662 Boone +CON 17009 2003 4103 Brown +CON 17011 2003 43160 Bureau +CON 17013 2003 4046 Calhoun +CON 17015 2003 16952 Carroll +CON 17017 2003 25563 Cass +CON 17019 2003 379354 Champaign +CON 17021 2003 22003 Christian +CON 17023 2003 19331 Clark +CON 17025 2003 14577 Clay +CON 17027 2003 58761 Clinton +CON 17029 2003 25145 Coles +CON 17031 2003 6540297 Cook +CON 17033 2003 19898 Crawford +CON 17035 2003 5219 Cumberland +CON 17037 2003 166138 DeKalb +CON 17039 2003 15188 De Witt +CON 17041 2003 13023 Douglas +CON 17043 2003 1640189 DuPage +CON 17045 2003 20037 Edgar +CON 17047 2003 5351 Edwards +CON 17049 2003 49802 Effingham +CON 17051 2003 25891 Fayette +CON 17053 2003 17446 Ford +CON 17055 2003 30113 Franklin +CON 17057 2003 15158 Fulton +CON 17059 2003 11954 Gallatin +CON 17061 2003 21863 Greene +CON 17063 2003 104978 Grundy +CON 17065 2003 6714 Hamilton +CON 17067 2003 11367 Hancock +CON 17069 2003 1976 Hardin +CON 17071 2003 1298 Henderson +CON 17073 2003 27722 Henry +CON 17075 2003 32511 Iroquois +CON 17077 2003 68667 Jackson +CON 17079 2003 4230 Jasper +CON 17081 2003 43119 Jefferson +CON 17083 2003 27748 Jersey +CON 17085 2003 48674 Jo Daviess +CON 17087 2003 13419 Johnson +CON 17089 2003 1502472 Kane +CON 17091 2003 193853 Kankakee +CON 17093 2003 350223 Kendall +CON 17095 2003 23421 Knox +CON 17097 2003 1211423 Lake +CON 17099 2003 122831 La Salle +CON 17101 2003 16076 Lawrence +CON 17103 2003 43571 Lee +CON 17105 2003 27574 Livingston +CON 17107 2003 22997 Logan +CON 17109 2003 20934 McDonough +CON 17111 2003 917872 McHenry +CON 17113 2003 319207 McLean +CON 17115 2003 126593 Macon +CON 17117 2003 34269 Macoupin +CON 17119 2003 544276 Madison +CON 17121 2003 26503 Marion +CON 17123 2003 8291 Marshall +CON 17125 2003 12320 Mason +CON 17127 2003 9602 Massac +CON 17129 2003 15918 Menard +CON 17131 2003 4442 Mercer +CON 17133 2003 63520 Monroe +CON 17135 2003 14924 Montgomery +CON 17137 2003 21342 Morgan +CON 17139 2003 10301 Moultrie +CON 17141 2003 177727 Ogle +CON 17143 2003 260601 Peoria +CON 17145 2003 25888 Perry +CON 17147 2003 24683 Piatt +CON 17149 2003 21593 Pike +CON 17151 2003 4557 Pope +CON 17153 2003 22948 Pulaski +CON 17155 2003 4707 Putnam +CON 17157 2003 19765 Randolph +CON 17159 2003 11270 Richland +CON 17161 2003 105981 Rock Island +CON 17163 2003 400793 St. Clair +CON 17165 2003 29707 Saline +CON 17167 2003 245472 Sangamon +CON 17169 2003 7234 Schuyler +CON 17171 2003 3189 Scott +CON 17173 2003 9369 Shelby +CON 17175 2003 1393 Stark +CON 17177 2003 26926 Stephenson +CON 17179 2003 210747 Tazewell +CON 17181 2003 6909 Union +CON 17183 2003 72384 Vermilion +CON 17185 2003 5266 Wabash +CON 17187 2003 7886 Warren +CON 17189 2003 13774 Washington +CON 17191 2003 6131 Wayne +CON 17193 2003 11863 White +CON 17195 2003 22642 Whiteside +CON 17197 2003 2151820 Will +CON 17199 2003 81304 Williamson +CON 17201 2003 271779 Winnebago +CON 17203 2003 43879 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_FARMS.ALO new file mode 100644 index 0000000..2e48f94 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_FARMS.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 17000 2002 22562904 IL +FRM 17001 2002 311232 Adams +FRM 17003 2002 57636 Alexander +FRM 17005 2002 152697 Bond +FRM 17007 2002 130193 Boone +FRM 17009 2002 73954 Brown +FRM 17011 2002 436919 Bureau +FRM 17013 2002 39739 Calhoun +FRM 17015 2002 200157 Carroll +FRM 17017 2002 150670 Cass +FRM 17019 2002 543827 Champaign +FRM 17021 2002 378381 Christian +FRM 17023 2002 224606 Clark +FRM 17025 2002 191684 Clay +FRM 17027 2002 214355 Clinton +FRM 17029 2002 229247 Coles +FRM 17031 2002 14969 Cook +FRM 17033 2002 170587 Crawford +FRM 17035 2002 145025 Cumberland +FRM 17037 2002 340614 DeKalb +FRM 17039 2002 188562 De Witt +FRM 17041 2002 217285 Douglas +FRM 17043 2002 5027 DuPage +FRM 17045 2002 319481 Edgar +FRM 17047 2002 92083 Edwards +FRM 17049 2002 220860 Effingham +FRM 17051 2002 286957 Fayette +FRM 17053 2002 269392 Ford +FRM 17055 2002 124582 Franklin +FRM 17057 2002 283131 Fulton +FRM 17059 2002 120768 Gallatin +FRM 17061 2002 231128 Greene +FRM 17063 2002 195426 Grundy +FRM 17065 2002 172300 Hamilton +FRM 17067 2002 329271 Hancock +FRM 17069 2002 12259 Hardin +FRM 17071 2002 155418 Henderson +FRM 17073 2002 416436 Henry +FRM 17075 2002 628269 Iroquois +FRM 17077 2002 135568 Jackson +FRM 17079 2002 231296 Jasper +FRM 17081 2002 171579 Jefferson +FRM 17083 2002 127103 Jersey +FRM 17085 2002 146918 Jo Daviess +FRM 17087 2002 38410 Johnson +FRM 17089 2002 179703 Kane +FRM 17091 2002 326000 Kankakee +FRM 17093 2002 157357 Kendall +FRM 17095 2002 307620 Knox +FRM 17097 2002 29816 Lake +FRM 17099 2002 531717 La Salle +FRM 17101 2002 166450 Lawrence +FRM 17103 2002 362655 Lee +FRM 17105 2002 598788 Livingston +FRM 17107 2002 331597 Logan +FRM 17109 2002 263507 McDonough +FRM 17111 2002 202639 McHenry +FRM 17113 2002 643626 McLean +FRM 17115 2002 297893 Macon +FRM 17117 2002 348580 Macoupin +FRM 17119 2002 248907 Madison +FRM 17121 2002 176855 Marion +FRM 17123 2002 165306 Marshall +FRM 17125 2002 243385 Mason +FRM 17127 2002 80010 Massac +FRM 17129 2002 128166 Menard +FRM 17131 2002 229607 Mercer +FRM 17133 2002 135415 Monroe +FRM 17135 2002 308195 Montgomery +FRM 17137 2002 242094 Morgan +FRM 17139 2002 172863 Moultrie +FRM 17141 2002 310544 Ogle +FRM 17143 2002 214273 Peoria +FRM 17145 2002 145751 Perry +FRM 17147 2002 246470 Piatt +FRM 17149 2002 270974 Pike +FRM 17151 2002 27676 Pope +FRM 17153 2002 61273 Pulaski +FRM 17155 2002 59501 Putnam +FRM 17157 2002 186023 Randolph +FRM 17159 2002 182811 Richland +FRM 17161 2002 126828 Rock Island +FRM 17163 2002 241953 St. Clair +FRM 17165 2002 99974 Saline +FRM 17167 2002 419017 Sangamon +FRM 17169 2002 124325 Schuyler +FRM 17171 2002 86555 Scott +FRM 17173 2002 355732 Shelby +FRM 17175 2002 158516 Stark +FRM 17177 2002 269939 Stephenson +FRM 17179 2002 290675 Tazewell +FRM 17181 2002 71377 Union +FRM 17183 2002 414582 Vermilion +FRM 17185 2002 96953 Wabash +FRM 17187 2002 276654 Warren +FRM 17189 2002 287602 Washington +FRM 17191 2002 249013 Wayne +FRM 17193 2002 225949 White +FRM 17195 2002 324742 Whiteside +FRM 17197 2002 245043 Will +FRM 17199 2002 49733 Williamson +FRM 17201 2002 164325 Winnebago +FRM 17203 2002 273369 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_GOLF.ALO new file mode 100644 index 0000000..d4e138e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_GOLF.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 17000 2002 497 IL +GC 17001 2002 4 Adams +GC 17003 2002 0 Alexander +GC 17005 2002 1 Bond +GC 17007 2002 3 Boone +GC 17009 2002 1 Brown +GC 17011 2002 6 Bureau +GC 17013 2002 0 Calhoun +GC 17015 2002 1 Carroll +GC 17017 2002 1 Cass +GC 17019 2002 5 Champaign +GC 17021 2002 3 Christian +GC 17023 2002 3 Clark +GC 17025 2002 3 Clay +GC 17027 2002 3 Clinton +GC 17029 2002 4 Coles +GC 17031 2002 78 Cook +GC 17033 2002 2 Crawford +GC 17035 2002 0 Cumberland +GC 17037 2002 5 DeKalb +GC 17039 2002 2 De Witt +GC 17041 2002 3 Douglas +GC 17043 2002 26 DuPage +GC 17045 2002 1 Edgar +GC 17047 2002 0 Edwards +GC 17049 2002 3 Effingham +GC 17051 2002 3 Fayette +GC 17053 2002 1 Ford +GC 17055 2002 1 Franklin +GC 17057 2002 4 Fulton +GC 17059 2002 0 Gallatin +GC 17061 2002 4 Greene +GC 17063 2002 3 Grundy +GC 17065 2002 1 Hamilton +GC 17067 2002 3 Hancock +GC 17069 2002 0 Hardin +GC 17071 2002 1 Henderson +GC 17073 2002 4 Henry +GC 17075 2002 3 Iroquois +GC 17077 2002 2 Jackson +GC 17079 2002 1 Jasper +GC 17081 2002 4 Jefferson +GC 17083 2002 2 Jersey +GC 17085 2002 6 Jo Daviess +GC 17087 2002 0 Johnson +GC 17089 2002 14 Kane +GC 17091 2002 5 Kankakee +GC 17093 2002 2 Kendall +GC 17095 2002 6 Knox +GC 17097 2002 35 Lake +GC 17099 2002 12 La Salle +GC 17101 2002 2 Lawrence +GC 17103 2002 4 Lee +GC 17105 2002 5 Livingston +GC 17107 2002 1 Logan +GC 17109 2002 3 McDonough +GC 17111 2002 20 McHenry +GC 17113 2002 7 McLean +GC 17115 2002 3 Macon +GC 17117 2002 4 Macoupin +GC 17119 2002 16 Madison +GC 17121 2002 4 Marion +GC 17123 2002 3 Marshall +GC 17125 2002 1 Mason +GC 17127 2002 1 Massac +GC 17129 2002 1 Menard +GC 17131 2002 1 Mercer +GC 17133 2002 6 Monroe +GC 17135 2002 3 Montgomery +GC 17137 2002 2 Morgan +GC 17139 2002 1 Moultrie +GC 17141 2002 6 Ogle +GC 17143 2002 7 Peoria +GC 17145 2002 0 Perry +GC 17147 2002 1 Piatt +GC 17149 2002 3 Pike +GC 17151 2002 0 Pope +GC 17153 2002 1 Pulaski +GC 17155 2002 1 Putnam +GC 17157 2002 4 Randolph +GC 17159 2002 1 Richland +GC 17161 2002 9 Rock Island +GC 17163 2002 16 St. Clair +GC 17165 2002 4 Saline +GC 17167 2002 11 Sangamon +GC 17169 2002 0 Schuyler +GC 17171 2002 1 Scott +GC 17173 2002 2 Shelby +GC 17175 2002 0 Stark +GC 17177 2002 3 Stephenson +GC 17179 2002 5 Tazewell +GC 17181 2002 1 Union +GC 17183 2002 5 Vermilion +GC 17185 2002 1 Wabash +GC 17187 2002 1 Warren +GC 17189 2002 1 Washington +GC 17191 2002 1 Wayne +GC 17193 2002 2 White +GC 17195 2002 7 Whiteside +GC 17197 2002 19 Will +GC 17199 2002 8 Williamson +GC 17201 2002 9 Winnebago +GC 17203 2002 4 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_HOLSL.ALO new file mode 100644 index 0000000..cd2b200 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_HOLSL.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 17000 2002 20597 IL +COM 17001 2002 125 Adams +COM 17003 2002 9 Alexander +COM 17005 2002 23 Bond +COM 17007 2002 40 Boone +COM 17009 2002 9 Brown +COM 17011 2002 51 Bureau +COM 17013 2002 2 Calhoun +COM 17015 2002 31 Carroll +COM 17017 2002 21 Cass +COM 17019 2002 202 Champaign +COM 17021 2002 51 Christian +COM 17023 2002 23 Clark +COM 17025 2002 25 Clay +COM 17027 2002 53 Clinton +COM 17029 2002 57 Coles +COM 17031 2002 8550 Cook +COM 17033 2002 24 Crawford +COM 17035 2002 15 Cumberland +COM 17037 2002 77 DeKalb +COM 17039 2002 20 De Witt +COM 17041 2002 40 Douglas +COM 17043 2002 3101 DuPage +COM 17045 2002 32 Edgar +COM 17047 2002 16 Edwards +COM 17049 2002 63 Effingham +COM 17051 2002 31 Fayette +COM 17053 2002 29 Ford +COM 17055 2002 48 Franklin +COM 17057 2002 27 Fulton +COM 17059 2002 5 Gallatin +COM 17061 2002 22 Greene +COM 17063 2002 48 Grundy +COM 17065 2002 10 Hamilton +COM 17067 2002 32 Hancock +COM 17069 2002 0 Hardin +COM 17071 2002 10 Henderson +COM 17073 2002 77 Henry +COM 17075 2002 56 Iroquois +COM 17077 2002 41 Jackson +COM 17079 2002 16 Jasper +COM 17081 2002 61 Jefferson +COM 17083 2002 25 Jersey +COM 17085 2002 28 Jo Daviess +COM 17087 2002 9 Johnson +COM 17089 2002 857 Kane +COM 17091 2002 118 Kankakee +COM 17093 2002 73 Kendall +COM 17095 2002 68 Knox +COM 17097 2002 1459 Lake +COM 17099 2002 150 La Salle +COM 17101 2002 15 Lawrence +COM 17103 2002 40 Lee +COM 17105 2002 43 Livingston +COM 17107 2002 48 Logan +COM 17109 2002 27 McDonough +COM 17111 2002 538 McHenry +COM 17113 2002 194 McLean +COM 17115 2002 137 Macon +COM 17117 2002 62 Macoupin +COM 17119 2002 278 Madison +COM 17121 2002 53 Marion +COM 17123 2002 15 Marshall +COM 17125 2002 23 Mason +COM 17127 2002 7 Massac +COM 17129 2002 14 Menard +COM 17131 2002 17 Mercer +COM 17133 2002 28 Monroe +COM 17135 2002 44 Montgomery +COM 17137 2002 43 Morgan +COM 17139 2002 23 Moultrie +COM 17141 2002 44 Ogle +COM 17143 2002 280 Peoria +COM 17145 2002 11 Perry +COM 17147 2002 19 Piatt +COM 17149 2002 25 Pike +COM 17151 2002 0 Pope +COM 17153 2002 6 Pulaski +COM 17155 2002 8 Putnam +COM 17157 2002 28 Randolph +COM 17159 2002 36 Richland +COM 17161 2002 220 Rock Island +COM 17163 2002 179 St. Clair +COM 17165 2002 22 Saline +COM 17167 2002 232 Sangamon +COM 17169 2002 5 Schuyler +COM 17171 2002 7 Scott +COM 17173 2002 39 Shelby +COM 17175 2002 9 Stark +COM 17177 2002 55 Stephenson +COM 17179 2002 149 Tazewell +COM 17181 2002 11 Union +COM 17183 2002 100 Vermilion +COM 17185 2002 20 Wabash +COM 17187 2002 21 Warren +COM 17189 2002 34 Washington +COM 17191 2002 22 Wayne +COM 17193 2002 26 White +COM 17195 2002 70 Whiteside +COM 17197 2002 704 Will +COM 17199 2002 75 Williamson +COM 17201 2002 485 Winnebago +COM 17203 2002 46 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_HOUSE.ALO new file mode 100644 index 0000000..d5b86d3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_HOUSE.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 17000 2002 4981422 IL +HOU 17001 2002 29637 Adams +HOU 17003 2002 4627 Alexander +HOU 17005 2002 6862 Bond +HOU 17007 2002 16281 Boone +HOU 17009 2002 2491 Brown +HOU 17011 2002 15358 Bureau +HOU 17013 2002 2704 Calhoun +HOU 17015 2002 8020 Carroll +HOU 17017 2002 5780 Cass +HOU 17019 2002 77237 Champaign +HOU 17021 2002 15093 Christian +HOU 17023 2002 7921 Clark +HOU 17025 2002 6485 Clay +HOU 17027 2002 14084 Clinton +HOU 17029 2002 22984 Coles +HOU 17031 2002 2108657 Cook +HOU 17033 2002 8857 Crawford +HOU 17035 2002 4954 Cumberland +HOU 17037 2002 34181 DeKalb +HOU 17039 2002 7348 De Witt +HOU 17041 2002 8078 Douglas +HOU 17043 2002 344728 DuPage +HOU 17045 2002 8708 Edgar +HOU 17047 2002 3254 Edwards +HOU 17049 2002 14161 Effingham +HOU 17051 2002 9175 Fayette +HOU 17053 2002 6103 Ford +HOU 17055 2002 18214 Franklin +HOU 17057 2002 16257 Fulton +HOU 17059 2002 3131 Gallatin +HOU 17061 2002 6386 Greene +HOU 17063 2002 15510 Grundy +HOU 17065 2002 4045 Hamilton +HOU 17067 2002 9033 Hancock +HOU 17069 2002 2516 Hardin +HOU 17071 2002 4154 Henderson +HOU 17073 2002 21376 Henry +HOU 17075 2002 13417 Iroquois +HOU 17077 2002 27285 Jackson +HOU 17079 2002 4365 Jasper +HOU 17081 2002 17309 Jefferson +HOU 17083 2002 9126 Jersey +HOU 17085 2002 12189 Jo Daviess +HOU 17087 2002 5154 Johnson +HOU 17089 2002 149605 Kane +HOU 17091 2002 41382 Kankakee +HOU 17093 2002 22604 Kendall +HOU 17095 2002 23878 Knox +HOU 17097 2002 234705 Lake +HOU 17099 2002 47224 La Salle +HOU 17101 2002 7084 Lawrence +HOU 17103 2002 14460 Lee +HOU 17105 2002 15375 Livingston +HOU 17107 2002 11870 Logan +HOU 17109 2002 13617 McDonough +HOU 17111 2002 99662 McHenry +HOU 17113 2002 62327 McLean +HOU 17115 2002 50651 Macon +HOU 17117 2002 21390 Macoupin +HOU 17119 2002 111119 Madison +HOU 17121 2002 18192 Marion +HOU 17123 2002 5960 Marshall +HOU 17125 2002 7026 Mason +HOU 17127 2002 7030 Massac +HOU 17129 2002 5425 Menard +HOU 17131 2002 7124 Mercer +HOU 17133 2002 11271 Monroe +HOU 17135 2002 12597 Montgomery +HOU 17137 2002 15347 Morgan +HOU 17139 2002 5823 Moultrie +HOU 17141 2002 20767 Ogle +HOU 17143 2002 79463 Peoria +HOU 17145 2002 9607 Perry +HOU 17147 2002 6914 Piatt +HOU 17149 2002 8038 Pike +HOU 17151 2002 2380 Pope +HOU 17153 2002 3400 Pulaski +HOU 17155 2002 2956 Putnam +HOU 17157 2002 13417 Randolph +HOU 17159 2002 7621 Richland +HOU 17161 2002 64604 Rock Island +HOU 17163 2002 106685 St. Clair +HOU 17165 2002 12551 Saline +HOU 17167 2002 87005 Sangamon +HOU 17169 2002 3350 Schuyler +HOU 17171 2002 2495 Scott +HOU 17173 2002 10145 Shelby +HOU 17175 2002 2759 Stark +HOU 17177 2002 21843 Stephenson +HOU 17179 2002 53743 Tazewell +HOU 17181 2002 8003 Union +HOU 17183 2002 36465 Vermilion +HOU 17185 2002 5805 Wabash +HOU 17187 2002 7787 Warren +HOU 17189 2002 6497 Washington +HOU 17191 2002 8128 Wayne +HOU 17193 2002 7504 White +HOU 17195 2002 25174 Whiteside +HOU 17197 2002 191539 Will +HOU 17199 2002 28129 Williamson +HOU 17201 2002 116828 Winnebago +HOU 17203 2002 13837 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_LOGGN.ALO new file mode 100644 index 0000000..d4a1376 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_LOGGN.ALO @@ -0,0 +1,129 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 17000 2002 120253302 IL +LOG 17001 2002 1645259 Adams +LOG 17003 2002 1266098 Alexander +LOG 17005 2002 597075 Bond +LOG 17007 2002 137628 Boone +LOG 17009 2002 1638173 Brown +LOG 17011 2002 341263 Bureau +LOG 17013 2002 1531024 Calhoun +LOG 17015 2002 174196 Carroll +LOG 17017 2002 1960262 Cass +LOG 17019 2002 158408 Champaign +LOG 17021 2002 397470 Christian +LOG 17023 2002 580155 Clark +LOG 17025 2002 2305884 Clay +LOG 17027 2002 3027088 Clinton +LOG 17029 2002 568197 Coles +LOG 17031 2002 2465303 Cook +LOG 17033 2002 568835 Crawford +LOG 17035 2002 828322 Cumberland +LOG 17037 2002 101314 DeKalb +LOG 17039 2002 17422 De Witt +LOG 17041 2002 87982 Douglas +LOG 17043 2002 399973 DuPage +LOG 17045 2002 64876 Edgar +LOG 17047 2002 142821 Edwards +LOG 17049 2002 2304557 Effingham +LOG 17051 2002 2787560 Fayette +LOG 17053 2002 16366 Ford +LOG 17055 2002 2589572 Franklin +LOG 17057 2002 3626413 Fulton +LOG 17059 2002 2530972 Gallatin +LOG 17061 2002 850580 Greene +LOG 17063 2002 273506 Grundy +LOG 17065 2002 1753696 Hamilton +LOG 17067 2002 1912624 Hancock +LOG 17069 2002 817317 Hardin +LOG 17071 2002 432720 Henderson +LOG 17073 2002 1087089 Henry +LOG 17075 2002 1492763 Iroquois +LOG 17077 2002 1233065 Jackson +LOG 17079 2002 1462415 Jasper +LOG 17081 2002 1556253 Jefferson +LOG 17083 2002 768000 Jersey +LOG 17085 2002 1880466 Jo Daviess +LOG 17087 2002 2325436 Johnson +LOG 17089 2002 606215 Kane +LOG 17091 2002 289337 Kankakee +LOG 17093 2002 1064455 Kendall +LOG 17095 2002 1055766 Knox +LOG 17097 2002 1470238 Lake +LOG 17099 2002 249048 La Salle +LOG 17101 2002 1305770 Lawrence +LOG 17103 2002 120065 Lee +LOG 17105 2002 113449 Livingston +LOG 17107 2002 292169 Logan +LOG 17109 2002 1441505 McDonough +LOG 17111 2002 3524965 McHenry +LOG 17113 2002 267464 McLean +LOG 17115 2002 153242 Macon +LOG 17117 2002 4765370 Macoupin +LOG 17119 2002 1292735 Madison +LOG 17121 2002 3326118 Marion +LOG 17123 2002 84841 Marshall +LOG 17125 2002 911229 Mason +LOG 17127 2002 2158803 Massac +LOG 17129 2002 48536 Menard +LOG 17131 2002 246165 Mercer +LOG 17133 2002 1568138 Monroe +LOG 17135 2002 2203106 Montgomery +LOG 17137 2002 987706 Morgan +LOG 17139 2002 144590 Moultrie +LOG 17141 2002 600346 Ogle +LOG 17143 2002 474987 Peoria +LOG 17145 2002 754073 Perry +LOG 17147 2002 50226 Piatt +LOG 17149 2002 2993963 Pike +LOG 17151 2002 2278033 Pope +LOG 17153 2002 1104381 Pulaski +LOG 17155 2002 81885 Putnam +LOG 17157 2002 2176645 Randolph +LOG 17159 2002 751149 Richland +LOG 17161 2002 639645 Rock Island +LOG 17163 2002 1005640 St. Clair +LOG 17165 2002 1906184 Saline +LOG 17167 2002 198352 Sangamon +LOG 17169 2002 3635556 Schuyler +LOG 17171 2002 367014 Scott +LOG 17173 2002 1402956 Shelby +LOG 17175 2002 9660 Stark +LOG 17177 2002 143092 Stephenson +LOG 17179 2002 436702 Tazewell +LOG 17181 2002 2794939 Union +LOG 17183 2002 730830 Vermilion +LOG 17185 2002 699009 Wabash +LOG 17187 2002 84921 Warren +LOG 17189 2002 1138385 Washington +LOG 17191 2002 2966782 Wayne +LOG 17193 2002 2448007 White +LOG 17195 2002 128845 Whiteside +LOG 17197 2002 3693486 Will +LOG 17199 2002 1079893 Williamson +LOG 17201 2002 692291 Winnebago +LOG 17203 2002 388003 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_LSCAP.ALO new file mode 100644 index 0000000..65ed577 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_LSCAP.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 17000 2002 13939 IL +LSC 17001 2002 22 Adams +LSC 17003 2002 0 Alexander +LSC 17005 2002 5 Bond +LSC 17007 2002 5 Boone +LSC 17009 2002 0 Brown +LSC 17011 2002 26 Bureau +LSC 17013 2002 0 Calhoun +LSC 17015 2002 5 Carroll +LSC 17017 2002 5 Cass +LSC 17019 2002 150 Champaign +LSC 17021 2002 3 Christian +LSC 17023 2002 5 Clark +LSC 17025 2002 0 Clay +LSC 17027 2002 24 Clinton +LSC 17029 2002 10 Coles +LSC 17031 2002 3718 Cook +LSC 17033 2002 5 Crawford +LSC 17035 2002 5 Cumberland +LSC 17037 2002 76 DeKalb +LSC 17039 2002 10 De Witt +LSC 17041 2002 5 Douglas +LSC 17043 2002 2373 DuPage +LSC 17045 2002 5 Edgar +LSC 17047 2002 5 Edwards +LSC 17049 2002 24 Effingham +LSC 17051 2002 3 Fayette +LSC 17053 2002 5 Ford +LSC 17055 2002 5 Franklin +LSC 17057 2002 5 Fulton +LSC 17059 2002 5 Gallatin +LSC 17061 2002 5 Greene +LSC 17063 2002 36 Grundy +LSC 17065 2002 5 Hamilton +LSC 17067 2002 5 Hancock +LSC 17069 2002 0 Hardin +LSC 17071 2002 5 Henderson +LSC 17073 2002 5 Henry +LSC 17075 2002 7 Iroquois +LSC 17077 2002 22 Jackson +LSC 17079 2002 0 Jasper +LSC 17081 2002 11 Jefferson +LSC 17083 2002 5 Jersey +LSC 17085 2002 5 Jo Daviess +LSC 17087 2002 0 Johnson +LSC 17089 2002 1254 Kane +LSC 17091 2002 33 Kankakee +LSC 17093 2002 104 Kendall +LSC 17095 2002 30 Knox +LSC 17097 2002 2151 Lake +LSC 17099 2002 63 La Salle +LSC 17101 2002 5 Lawrence +LSC 17103 2002 5 Lee +LSC 17105 2002 5 Livingston +LSC 17107 2002 5 Logan +LSC 17109 2002 5 McDonough +LSC 17111 2002 562 McHenry +LSC 17113 2002 182 McLean +LSC 17115 2002 107 Macon +LSC 17117 2002 1 Macoupin +LSC 17119 2002 182 Madison +LSC 17121 2002 5 Marion +LSC 17123 2002 5 Marshall +LSC 17125 2002 5 Mason +LSC 17127 2002 5 Massac +LSC 17129 2002 5 Menard +LSC 17131 2002 5 Mercer +LSC 17133 2002 27 Monroe +LSC 17135 2002 13 Montgomery +LSC 17137 2002 24 Morgan +LSC 17139 2002 5 Moultrie +LSC 17141 2002 5 Ogle +LSC 17143 2002 331 Peoria +LSC 17145 2002 10 Perry +LSC 17147 2002 5 Piatt +LSC 17149 2002 5 Pike +LSC 17151 2002 0 Pope +LSC 17153 2002 0 Pulaski +LSC 17155 2002 5 Putnam +LSC 17157 2002 5 Randolph +LSC 17159 2002 5 Richland +LSC 17161 2002 83 Rock Island +LSC 17163 2002 167 St. Clair +LSC 17165 2002 5 Saline +LSC 17167 2002 255 Sangamon +LSC 17169 2002 5 Schuyler +LSC 17171 2002 5 Scott +LSC 17173 2002 8 Shelby +LSC 17175 2002 5 Stark +LSC 17177 2002 25 Stephenson +LSC 17179 2002 162 Tazewell +LSC 17181 2002 4 Union +LSC 17183 2002 22 Vermilion +LSC 17185 2002 5 Wabash +LSC 17187 2002 5 Warren +LSC 17189 2002 45 Washington +LSC 17191 2002 5 Wayne +LSC 17193 2002 5 White +LSC 17195 2002 30 Whiteside +LSC 17197 2002 902 Will +LSC 17199 2002 5 Williamson +LSC 17201 2002 357 Winnebago +LSC 17203 2002 50 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_MNFG.ALO new file mode 100644 index 0000000..90adeb7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_MNFG.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 17000 2002 1395102 IL +MFG 17001 2002 10681 Adams +MFG 17003 2002 222 Alexander +MFG 17005 2002 1150 Bond +MFG 17007 2002 7357 Boone +MFG 17009 2002 121 Brown +MFG 17011 2002 4235 Bureau +MFG 17013 2002 129 Calhoun +MFG 17015 2002 1742 Carroll +MFG 17017 2002 2413 Cass +MFG 17019 2002 17767 Champaign +MFG 17021 2002 4235 Christian +MFG 17023 2002 3087 Clark +MFG 17025 2002 4607 Clay +MFG 17027 2002 2531 Clinton +MFG 17029 2002 8046 Coles +MFG 17031 2002 509299 Cook +MFG 17033 2002 3832 Crawford +MFG 17035 2002 701 Cumberland +MFG 17037 2002 10362 DeKalb +MFG 17039 2002 896 De Witt +MFG 17041 2002 3978 Douglas +MFG 17043 2002 130564 DuPage +MFG 17045 2002 3199 Edgar +MFG 17047 2002 3281 Edwards +MFG 17049 2002 10655 Effingham +MFG 17051 2002 1821 Fayette +MFG 17053 2002 1466 Ford +MFG 17055 2002 2685 Franklin +MFG 17057 2002 517 Fulton +MFG 17059 2002 117 Gallatin +MFG 17061 2002 502 Greene +MFG 17063 2002 3088 Grundy +MFG 17065 2002 218 Hamilton +MFG 17067 2002 3423 Hancock +MFG 17069 2002 120 Hardin +MFG 17071 2002 37 Henderson +MFG 17073 2002 4123 Henry +MFG 17075 2002 1478 Iroquois +MFG 17077 2002 1944 Jackson +MFG 17079 2002 650 Jasper +MFG 17081 2002 4916 Jefferson +MFG 17083 2002 150 Jersey +MFG 17085 2002 2643 Jo Daviess +MFG 17087 2002 111 Johnson +MFG 17089 2002 69502 Kane +MFG 17091 2002 12792 Kankakee +MFG 17093 2002 4031 Kendall +MFG 17095 2002 7999 Knox +MFG 17097 2002 99146 Lake +MFG 17099 2002 11673 La Salle +MFG 17101 2002 1492 Lawrence +MFG 17103 2002 6564 Lee +MFG 17105 2002 8492 Livingston +MFG 17107 2002 3098 Logan +MFG 17109 2002 3145 McDonough +MFG 17111 2002 51673 McHenry +MFG 17113 2002 12970 McLean +MFG 17115 2002 15705 Macon +MFG 17117 2002 1583 Macoupin +MFG 17119 2002 28873 Madison +MFG 17121 2002 7330 Marion +MFG 17123 2002 1372 Marshall +MFG 17125 2002 951 Mason +MFG 17127 2002 988 Massac +MFG 17129 2002 433 Menard +MFG 17131 2002 689 Mercer +MFG 17133 2002 669 Monroe +MFG 17135 2002 3074 Montgomery +MFG 17137 2002 6430 Morgan +MFG 17139 2002 3338 Moultrie +MFG 17141 2002 9106 Ogle +MFG 17143 2002 22854 Peoria +MFG 17145 2002 4089 Perry +MFG 17147 2002 840 Piatt +MFG 17149 2002 412 Pike +MFG 17151 2002 28 Pope +MFG 17153 2002 275 Pulaski +MFG 17155 2002 547 Putnam +MFG 17157 2002 3821 Randolph +MFG 17159 2002 1107 Richland +MFG 17161 2002 15720 Rock Island +MFG 17163 2002 12522 St. Clair +MFG 17165 2002 840 Saline +MFG 17167 2002 7480 Sangamon +MFG 17169 2002 166 Schuyler +MFG 17171 2002 139 Scott +MFG 17173 2002 2852 Shelby +MFG 17175 2002 398 Stark +MFG 17177 2002 10222 Stephenson +MFG 17179 2002 11395 Tazewell +MFG 17181 2002 1024 Union +MFG 17183 2002 9975 Vermilion +MFG 17185 2002 1270 Wabash +MFG 17187 2002 2056 Warren +MFG 17189 2002 3627 Washington +MFG 17191 2002 2083 Wayne +MFG 17193 2002 842 White +MFG 17195 2002 9854 Whiteside +MFG 17197 2002 47621 Will +MFG 17199 2002 5808 Williamson +MFG 17201 2002 63042 Winnebago +MFG 17203 2002 3976 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_OIL.ALO new file mode 100644 index 0000000..aac3607 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_OIL.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 17000 2002 1393 IL +OIL 17001 2002 0 Adams +OIL 17003 2002 0 Alexander +OIL 17005 2002 0 Bond +OIL 17007 2002 0 Boone +OIL 17009 2002 26 Brown +OIL 17011 2002 0 Bureau +OIL 17013 2002 0 Calhoun +OIL 17015 2002 0 Carroll +OIL 17017 2002 0 Cass +OIL 17019 2002 0 Champaign +OIL 17021 2002 0 Christian +OIL 17023 2002 14 Clark +OIL 17025 2002 60 Clay +OIL 17027 2002 6 Clinton +OIL 17029 2002 5 Coles +OIL 17031 2002 60 Cook +OIL 17033 2002 159 Crawford +OIL 17035 2002 0 Cumberland +OIL 17037 2002 0 DeKalb +OIL 17039 2002 0 De Witt +OIL 17041 2002 0 Douglas +OIL 17043 2002 49 DuPage +OIL 17045 2002 0 Edgar +OIL 17047 2002 21 Edwards +OIL 17049 2002 0 Effingham +OIL 17051 2002 60 Fayette +OIL 17053 2002 0 Ford +OIL 17055 2002 6 Franklin +OIL 17057 2002 0 Fulton +OIL 17059 2002 6 Gallatin +OIL 17061 2002 0 Greene +OIL 17063 2002 0 Grundy +OIL 17065 2002 6 Hamilton +OIL 17067 2002 0 Hancock +OIL 17069 2002 0 Hardin +OIL 17071 2002 0 Henderson +OIL 17073 2002 0 Henry +OIL 17075 2002 0 Iroquois +OIL 17077 2002 0 Jackson +OIL 17079 2002 23 Jasper +OIL 17081 2002 137 Jefferson +OIL 17083 2002 0 Jersey +OIL 17085 2002 21 Jo Daviess +OIL 17087 2002 0 Johnson +OIL 17089 2002 6 Kane +OIL 17091 2002 0 Kankakee +OIL 17093 2002 0 Kendall +OIL 17095 2002 0 Knox +OIL 17097 2002 39 Lake +OIL 17099 2002 0 La Salle +OIL 17101 2002 70 Lawrence +OIL 17103 2002 6 Lee +OIL 17105 2002 0 Livingston +OIL 17107 2002 0 Logan +OIL 17109 2002 0 McDonough +OIL 17111 2002 0 McHenry +OIL 17113 2002 0 McLean +OIL 17115 2002 6 Macon +OIL 17117 2002 0 Macoupin +OIL 17119 2002 36 Madison +OIL 17121 2002 94 Marion +OIL 17123 2002 0 Marshall +OIL 17125 2002 0 Mason +OIL 17127 2002 0 Massac +OIL 17129 2002 0 Menard +OIL 17131 2002 0 Mercer +OIL 17133 2002 27 Monroe +OIL 17135 2002 0 Montgomery +OIL 17137 2002 21 Morgan +OIL 17139 2002 0 Moultrie +OIL 17141 2002 0 Ogle +OIL 17143 2002 0 Peoria +OIL 17145 2002 6 Perry +OIL 17147 2002 0 Piatt +OIL 17149 2002 0 Pike +OIL 17151 2002 0 Pope +OIL 17153 2002 0 Pulaski +OIL 17155 2002 0 Putnam +OIL 17157 2002 21 Randolph +OIL 17159 2002 71 Richland +OIL 17161 2002 0 Rock Island +OIL 17163 2002 27 St. Clair +OIL 17165 2002 6 Saline +OIL 17167 2002 39 Sangamon +OIL 17169 2002 0 Schuyler +OIL 17171 2002 0 Scott +OIL 17173 2002 6 Shelby +OIL 17175 2002 0 Stark +OIL 17177 2002 0 Stephenson +OIL 17179 2002 0 Tazewell +OIL 17181 2002 0 Union +OIL 17183 2002 0 Vermilion +OIL 17185 2002 39 Wabash +OIL 17187 2002 0 Warren +OIL 17189 2002 60 Washington +OIL 17191 2002 55 Wayne +OIL 17193 2002 39 White +OIL 17195 2002 0 Whiteside +OIL 17197 2002 60 Will +OIL 17199 2002 0 Williamson +OIL 17201 2002 0 Winnebago +OIL 17203 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_POP.ALO new file mode 100644 index 0000000..d8449fb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_POP.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 17000 2002 12585204 IL +POP 17001 2002 67818 Adams +POP 17003 2002 9456 Alexander +POP 17005 2002 17851 Bond +POP 17007 2002 44800 Boone +POP 17009 2002 6839 Brown +POP 17011 2002 35271 Bureau +POP 17013 2002 5012 Calhoun +POP 17015 2002 16380 Carroll +POP 17017 2002 13653 Cass +POP 17019 2002 182323 Champaign +POP 17021 2002 35215 Christian +POP 17023 2002 16999 Clark +POP 17025 2002 14294 Clay +POP 17027 2002 35799 Clinton +POP 17029 2002 51858 Coles +POP 17031 2002 5364160 Cook +POP 17033 2002 20165 Crawford +POP 17035 2002 11101 Cumberland +POP 17037 2002 92000 DeKalb +POP 17039 2002 16654 De Witt +POP 17041 2002 19952 Douglas +POP 17043 2002 920918 DuPage +POP 17045 2002 19416 Edgar +POP 17047 2002 6836 Edwards +POP 17049 2002 34414 Effingham +POP 17051 2002 21573 Fayette +POP 17053 2002 14162 Ford +POP 17055 2002 39051 Franklin +POP 17057 2002 37601 Fulton +POP 17059 2002 6210 Gallatin +POP 17061 2002 14700 Greene +POP 17063 2002 38754 Grundy +POP 17065 2002 8420 Hamilton +POP 17067 2002 19692 Hancock +POP 17069 2002 4731 Hardin +POP 17071 2002 8162 Henderson +POP 17073 2002 50485 Henry +POP 17075 2002 30815 Iroquois +POP 17077 2002 58150 Jackson +POP 17079 2002 10076 Jasper +POP 17081 2002 40290 Jefferson +POP 17083 2002 21991 Jersey +POP 17085 2002 22449 Jo Daviess +POP 17087 2002 12838 Johnson +POP 17089 2002 442434 Kane +POP 17091 2002 105309 Kankakee +POP 17093 2002 61792 Kendall +POP 17095 2002 54924 Knox +POP 17097 2002 674904 Lake +POP 17099 2002 111757 La Salle +POP 17101 2002 16079 Lawrence +POP 17103 2002 35628 Lee +POP 17105 2002 39308 Livingston +POP 17107 2002 30795 Logan +POP 17109 2002 32859 McDonough +POP 17111 2002 279028 McHenry +POP 17113 2002 155278 McLean +POP 17115 2002 112598 Macon +POP 17117 2002 49026 Macoupin +POP 17119 2002 261505 Madison +POP 17121 2002 41083 Marion +POP 17123 2002 13022 Marshall +POP 17125 2002 15990 Mason +POP 17127 2002 15176 Massac +POP 17129 2002 12596 Menard +POP 17131 2002 17012 Mercer +POP 17133 2002 29062 Monroe +POP 17135 2002 30577 Montgomery +POP 17137 2002 36111 Morgan +POP 17139 2002 14370 Moultrie +POP 17141 2002 52212 Ogle +POP 17143 2002 182642 Peoria +POP 17145 2002 22801 Perry +POP 17147 2002 16258 Piatt +POP 17149 2002 17081 Pike +POP 17151 2002 4339 Pope +POP 17153 2002 7189 Pulaski +POP 17155 2002 6110 Putnam +POP 17157 2002 33299 Randolph +POP 17159 2002 16069 Richland +POP 17161 2002 148462 Rock Island +POP 17163 2002 257444 St. Clair +POP 17165 2002 26252 Saline +POP 17167 2002 191530 Sangamon +POP 17169 2002 7001 Schuyler +POP 17171 2002 5505 Scott +POP 17173 2002 22580 Shelby +POP 17175 2002 6255 Stark +POP 17177 2002 48202 Stephenson +POP 17179 2002 128404 Tazewell +POP 17181 2002 18179 Union +POP 17183 2002 83254 Vermilion +POP 17185 2002 12715 Wabash +POP 17187 2002 18394 Warren +POP 17189 2002 15155 Washington +POP 17191 2002 17039 Wayne +POP 17193 2002 15231 White +POP 17195 2002 60349 Whiteside +POP 17197 2002 557504 Will +POP 17199 2002 62151 Williamson +POP 17201 2002 282043 Winnebago +POP 17203 2002 35998 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_RAIL.ALO new file mode 100644 index 0000000..fee180d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_RAIL.ALO @@ -0,0 +1,129 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 17000 2002 50037.460 IL +RR 17001 2002 266.750 Adams +RR 17003 2002 272.210 Alexander +RR 17005 2002 376.610 Bond +RR 17007 2002 53.110 Boone +RR 17009 2002 0.000 Brown +RR 17011 2002 315.400 Bureau +RR 17013 2002 0.000 Calhoun +RR 17015 2002 482.910 Carroll +RR 17017 2002 236.290 Cass +RR 17019 2002 672.860 Champaign +RR 17021 2002 295.500 Christian +RR 17023 2002 287.940 Clark +RR 17025 2002 284.770 Clay +RR 17027 2002 539.440 Clinton +RR 17029 2002 163.800 Coles +RR 17031 2002 6939.470 Cook +RR 17033 2002 0.000 Crawford +RR 17035 2002 533.980 Cumberland +RR 17037 2002 1136.220 DeKalb +RR 17039 2002 24.720 De Witt +RR 17041 2002 343.140 Douglas +RR 17043 2002 2870.040 DuPage +RR 17045 2002 91.410 Edgar +RR 17047 2002 128.750 Edwards +RR 17049 2002 714.890 Effingham +RR 17051 2002 289.560 Fayette +RR 17053 2002 233.580 Ford +RR 17055 2002 695.010 Franklin +RR 17057 2002 617.820 Fulton +RR 17059 2002 0.000 Gallatin +RR 17061 2002 65.220 Greene +RR 17063 2002 658.150 Grundy +RR 17065 2002 9.400 Hamilton +RR 17067 2002 307.870 Hancock +RR 17069 2002 0.000 Hardin +RR 17071 2002 828.900 Henderson +RR 17073 2002 493.970 Henry +RR 17075 2002 643.690 Iroquois +RR 17077 2002 726.210 Jackson +RR 17079 2002 158.420 Jasper +RR 17081 2002 770.280 Jefferson +RR 17083 2002 54.900 Jersey +RR 17085 2002 421.560 Jo Daviess +RR 17087 2002 348.690 Johnson +RR 17089 2002 1248.810 Kane +RR 17091 2002 846.380 Kankakee +RR 17093 2002 199.900 Kendall +RR 17095 2002 1013.110 Knox +RR 17097 2002 927.110 Lake +RR 17099 2002 859.140 La Salle +RR 17101 2002 120.330 Lawrence +RR 17103 2002 556.160 Lee +RR 17105 2002 287.550 Livingston +RR 17107 2002 138.200 Logan +RR 17109 2002 651.650 McDonough +RR 17111 2002 181.000 McHenry +RR 17113 2002 175.070 McLean +RR 17115 2002 350.210 Macon +RR 17117 2002 504.850 Macoupin +RR 17119 2002 1066.510 Madison +RR 17121 2002 1059.960 Marion +RR 17123 2002 314.650 Marshall +RR 17125 2002 12.780 Mason +RR 17127 2002 176.700 Massac +RR 17129 2002 5.660 Menard +RR 17131 2002 0.000 Mercer +RR 17133 2002 605.370 Monroe +RR 17135 2002 494.650 Montgomery +RR 17137 2002 539.750 Morgan +RR 17139 2002 116.730 Moultrie +RR 17141 2002 1115.440 Ogle +RR 17143 2002 1072.230 Peoria +RR 17145 2002 311.370 Perry +RR 17147 2002 335.400 Piatt +RR 17149 2002 222.310 Pike +RR 17151 2002 133.810 Pope +RR 17153 2002 223.210 Pulaski +RR 17155 2002 12.070 Putnam +RR 17157 2002 939.170 Randolph +RR 17159 2002 175.370 Richland +RR 17161 2002 165.130 Rock Island +RR 17163 2002 1150.990 St. Clair +RR 17165 2002 221.900 Saline +RR 17167 2002 566.620 Sangamon +RR 17169 2002 285.280 Schuyler +RR 17171 2002 141.910 Scott +RR 17173 2002 294.340 Shelby +RR 17175 2002 50.700 Stark +RR 17177 2002 47.840 Stephenson +RR 17179 2002 60.010 Tazewell +RR 17181 2002 462.240 Union +RR 17183 2002 712.950 Vermilion +RR 17185 2002 58.840 Wabash +RR 17187 2002 1267.840 Warren +RR 17189 2002 249.920 Washington +RR 17191 2002 165.380 Wayne +RR 17193 2002 8.870 White +RR 17195 2002 659.170 Whiteside +RR 17197 2002 1533.740 Will +RR 17199 2002 286.570 Williamson +RR 17201 2002 83.560 Winnebago +RR 17203 2002 217.610 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_RVPRK.ALO new file mode 100644 index 0000000..0ca051b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_RVPRK.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 17000 2002 151 IL +RVP 17001 2002 3 Adams +RVP 17003 2002 1 Alexander +RVP 17005 2002 1 Bond +RVP 17007 2002 1 Boone +RVP 17009 2002 0 Brown +RVP 17011 2002 1 Bureau +RVP 17013 2002 0 Calhoun +RVP 17015 2002 1 Carroll +RVP 17017 2002 1 Cass +RVP 17019 2002 1 Champaign +RVP 17021 2002 1 Christian +RVP 17023 2002 0 Clark +RVP 17025 2002 2 Clay +RVP 17027 2002 1 Clinton +RVP 17029 2002 0 Coles +RVP 17031 2002 23 Cook +RVP 17033 2002 0 Crawford +RVP 17035 2002 0 Cumberland +RVP 17037 2002 0 DeKalb +RVP 17039 2002 1 De Witt +RVP 17041 2002 0 Douglas +RVP 17043 2002 4 DuPage +RVP 17045 2002 0 Edgar +RVP 17047 2002 0 Edwards +RVP 17049 2002 1 Effingham +RVP 17051 2002 1 Fayette +RVP 17053 2002 0 Ford +RVP 17055 2002 1 Franklin +RVP 17057 2002 1 Fulton +RVP 17059 2002 0 Gallatin +RVP 17061 2002 1 Greene +RVP 17063 2002 2 Grundy +RVP 17065 2002 0 Hamilton +RVP 17067 2002 0 Hancock +RVP 17069 2002 1 Hardin +RVP 17071 2002 0 Henderson +RVP 17073 2002 2 Henry +RVP 17075 2002 3 Iroquois +RVP 17077 2002 1 Jackson +RVP 17079 2002 0 Jasper +RVP 17081 2002 1 Jefferson +RVP 17083 2002 1 Jersey +RVP 17085 2002 1 Jo Daviess +RVP 17087 2002 2 Johnson +RVP 17089 2002 2 Kane +RVP 17091 2002 1 Kankakee +RVP 17093 2002 4 Kendall +RVP 17095 2002 1 Knox +RVP 17097 2002 12 Lake +RVP 17099 2002 6 La Salle +RVP 17101 2002 0 Lawrence +RVP 17103 2002 2 Lee +RVP 17105 2002 0 Livingston +RVP 17107 2002 0 Logan +RVP 17109 2002 0 McDonough +RVP 17111 2002 3 McHenry +RVP 17113 2002 1 McLean +RVP 17115 2002 0 Macon +RVP 17117 2002 1 Macoupin +RVP 17119 2002 4 Madison +RVP 17121 2002 1 Marion +RVP 17123 2002 0 Marshall +RVP 17125 2002 1 Mason +RVP 17127 2002 0 Massac +RVP 17129 2002 1 Menard +RVP 17131 2002 1 Mercer +RVP 17133 2002 0 Monroe +RVP 17135 2002 1 Montgomery +RVP 17137 2002 1 Morgan +RVP 17139 2002 0 Moultrie +RVP 17141 2002 8 Ogle +RVP 17143 2002 2 Peoria +RVP 17145 2002 0 Perry +RVP 17147 2002 0 Piatt +RVP 17149 2002 2 Pike +RVP 17151 2002 0 Pope +RVP 17153 2002 0 Pulaski +RVP 17155 2002 1 Putnam +RVP 17157 2002 1 Randolph +RVP 17159 2002 0 Richland +RVP 17161 2002 5 Rock Island +RVP 17163 2002 1 St. Clair +RVP 17165 2002 0 Saline +RVP 17167 2002 6 Sangamon +RVP 17169 2002 0 Schuyler +RVP 17171 2002 0 Scott +RVP 17173 2002 1 Shelby +RVP 17175 2002 0 Stark +RVP 17177 2002 0 Stephenson +RVP 17179 2002 3 Tazewell +RVP 17181 2002 1 Union +RVP 17183 2002 2 Vermilion +RVP 17185 2002 0 Wabash +RVP 17187 2002 0 Warren +RVP 17189 2002 0 Washington +RVP 17191 2002 1 Wayne +RVP 17193 2002 0 White +RVP 17195 2002 1 Whiteside +RVP 17197 2002 5 Will +RVP 17199 2002 3 Williamson +RVP 17201 2002 2 Winnebago +RVP 17203 2002 2 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_SBC.ALO new file mode 100644 index 0000000..a03a48e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_SBC.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 17000 2002 13929 IL +SBC 17001 2002 22 Adams +SBC 17003 2002 0 Alexander +SBC 17005 2002 5 Bond +SBC 17007 2002 12 Boone +SBC 17009 2002 0 Brown +SBC 17011 2002 26 Bureau +SBC 17013 2002 0 Calhoun +SBC 17015 2002 4 Carroll +SBC 17017 2002 4 Cass +SBC 17019 2002 150 Champaign +SBC 17021 2002 3 Christian +SBC 17023 2002 5 Clark +SBC 17025 2002 0 Clay +SBC 17027 2002 24 Clinton +SBC 17029 2002 10 Coles +SBC 17031 2002 3718 Cook +SBC 17033 2002 5 Crawford +SBC 17035 2002 5 Cumberland +SBC 17037 2002 76 DeKalb +SBC 17039 2002 10 De Witt +SBC 17041 2002 5 Douglas +SBC 17043 2002 2373 DuPage +SBC 17045 2002 5 Edgar +SBC 17047 2002 2 Edwards +SBC 17049 2002 9 Effingham +SBC 17051 2002 3 Fayette +SBC 17053 2002 4 Ford +SBC 17055 2002 11 Franklin +SBC 17057 2002 10 Fulton +SBC 17059 2002 0 Gallatin +SBC 17061 2002 4 Greene +SBC 17063 2002 36 Grundy +SBC 17065 2002 2 Hamilton +SBC 17067 2002 5 Hancock +SBC 17069 2002 0 Hardin +SBC 17071 2002 2 Henderson +SBC 17073 2002 14 Henry +SBC 17075 2002 7 Iroquois +SBC 17077 2002 22 Jackson +SBC 17079 2002 0 Jasper +SBC 17081 2002 11 Jefferson +SBC 17083 2002 6 Jersey +SBC 17085 2002 6 Jo Daviess +SBC 17087 2002 0 Johnson +SBC 17089 2002 1254 Kane +SBC 17091 2002 33 Kankakee +SBC 17093 2002 104 Kendall +SBC 17095 2002 30 Knox +SBC 17097 2002 2151 Lake +SBC 17099 2002 63 La Salle +SBC 17101 2002 4 Lawrence +SBC 17103 2002 10 Lee +SBC 17105 2002 11 Livingston +SBC 17107 2002 8 Logan +SBC 17109 2002 9 McDonough +SBC 17111 2002 562 McHenry +SBC 17113 2002 182 McLean +SBC 17115 2002 107 Macon +SBC 17117 2002 1 Macoupin +SBC 17119 2002 182 Madison +SBC 17121 2002 11 Marion +SBC 17123 2002 4 Marshall +SBC 17125 2002 4 Mason +SBC 17127 2002 0 Massac +SBC 17129 2002 3 Menard +SBC 17131 2002 5 Mercer +SBC 17133 2002 27 Monroe +SBC 17135 2002 13 Montgomery +SBC 17137 2002 10 Morgan +SBC 17139 2002 4 Moultrie +SBC 17141 2002 14 Ogle +SBC 17143 2002 331 Peoria +SBC 17145 2002 10 Perry +SBC 17147 2002 4 Piatt +SBC 17149 2002 5 Pike +SBC 17151 2002 0 Pope +SBC 17153 2002 0 Pulaski +SBC 17155 2002 2 Putnam +SBC 17157 2002 9 Randolph +SBC 17159 2002 4 Richland +SBC 17161 2002 83 Rock Island +SBC 17163 2002 167 St. Clair +SBC 17165 2002 7 Saline +SBC 17167 2002 255 Sangamon +SBC 17169 2002 2 Schuyler +SBC 17171 2002 1 Scott +SBC 17173 2002 8 Shelby +SBC 17175 2002 2 Stark +SBC 17177 2002 13 Stephenson +SBC 17179 2002 162 Tazewell +SBC 17181 2002 4 Union +SBC 17183 2002 22 Vermilion +SBC 17185 2002 3 Wabash +SBC 17187 2002 5 Warren +SBC 17189 2002 45 Washington +SBC 17191 2002 5 Wayne +SBC 17193 2002 0 White +SBC 17195 2002 30 Whiteside +SBC 17197 2002 902 Will +SBC 17199 2002 19 Williamson +SBC 17201 2002 357 Winnebago +SBC 17203 2002 50 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_SBR.ALO new file mode 100644 index 0000000..b77fae8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_SBR.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 17000 2002 4953214 IL +SBR 17001 2002 29637 Adams +SBR 17003 2002 0 Alexander +SBR 17005 2002 6862 Bond +SBR 17007 2002 16281 Boone +SBR 17009 2002 2491 Brown +SBR 17011 2002 15358 Bureau +SBR 17013 2002 2704 Calhoun +SBR 17015 2002 8020 Carroll +SBR 17017 2002 5780 Cass +SBR 17019 2002 77237 Champaign +SBR 17021 2002 15093 Christian +SBR 17023 2002 7921 Clark +SBR 17025 2002 6485 Clay +SBR 17027 2002 14084 Clinton +SBR 17029 2002 22984 Coles +SBR 17031 2002 2108657 Cook +SBR 17033 2002 8857 Crawford +SBR 17035 2002 4954 Cumberland +SBR 17037 2002 34181 DeKalb +SBR 17039 2002 7348 De Witt +SBR 17041 2002 8078 Douglas +SBR 17043 2002 344728 DuPage +SBR 17045 2002 8708 Edgar +SBR 17047 2002 3254 Edwards +SBR 17049 2002 14161 Effingham +SBR 17051 2002 9175 Fayette +SBR 17053 2002 6103 Ford +SBR 17055 2002 18214 Franklin +SBR 17057 2002 16257 Fulton +SBR 17059 2002 0 Gallatin +SBR 17061 2002 6386 Greene +SBR 17063 2002 15510 Grundy +SBR 17065 2002 4045 Hamilton +SBR 17067 2002 9033 Hancock +SBR 17069 2002 0 Hardin +SBR 17071 2002 4154 Henderson +SBR 17073 2002 21376 Henry +SBR 17075 2002 13417 Iroquois +SBR 17077 2002 27285 Jackson +SBR 17079 2002 4365 Jasper +SBR 17081 2002 17309 Jefferson +SBR 17083 2002 9126 Jersey +SBR 17085 2002 12189 Jo Daviess +SBR 17087 2002 5154 Johnson +SBR 17089 2002 149605 Kane +SBR 17091 2002 41382 Kankakee +SBR 17093 2002 22604 Kendall +SBR 17095 2002 23878 Knox +SBR 17097 2002 234705 Lake +SBR 17099 2002 47224 La Salle +SBR 17101 2002 7084 Lawrence +SBR 17103 2002 14460 Lee +SBR 17105 2002 15375 Livingston +SBR 17107 2002 11870 Logan +SBR 17109 2002 13617 McDonough +SBR 17111 2002 99662 McHenry +SBR 17113 2002 62327 McLean +SBR 17115 2002 50651 Macon +SBR 17117 2002 21390 Macoupin +SBR 17119 2002 111119 Madison +SBR 17121 2002 18192 Marion +SBR 17123 2002 5960 Marshall +SBR 17125 2002 7026 Mason +SBR 17127 2002 0 Massac +SBR 17129 2002 5425 Menard +SBR 17131 2002 7124 Mercer +SBR 17133 2002 11271 Monroe +SBR 17135 2002 12597 Montgomery +SBR 17137 2002 15347 Morgan +SBR 17139 2002 5823 Moultrie +SBR 17141 2002 20767 Ogle +SBR 17143 2002 79463 Peoria +SBR 17145 2002 9607 Perry +SBR 17147 2002 6914 Piatt +SBR 17149 2002 8038 Pike +SBR 17151 2002 2380 Pope +SBR 17153 2002 0 Pulaski +SBR 17155 2002 2956 Putnam +SBR 17157 2002 13417 Randolph +SBR 17159 2002 7621 Richland +SBR 17161 2002 64604 Rock Island +SBR 17163 2002 106685 St. Clair +SBR 17165 2002 12551 Saline +SBR 17167 2002 87005 Sangamon +SBR 17169 2002 3350 Schuyler +SBR 17171 2002 2495 Scott +SBR 17173 2002 10145 Shelby +SBR 17175 2002 2759 Stark +SBR 17177 2002 21843 Stephenson +SBR 17179 2002 53743 Tazewell +SBR 17181 2002 8003 Union +SBR 17183 2002 36465 Vermilion +SBR 17185 2002 5805 Wabash +SBR 17187 2002 7787 Warren +SBR 17189 2002 6497 Washington +SBR 17191 2002 8128 Wayne +SBR 17193 2002 0 White +SBR 17195 2002 25174 Whiteside +SBR 17197 2002 191539 Will +SBR 17199 2002 28129 Williamson +SBR 17201 2002 116828 Winnebago +SBR 17203 2002 13837 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_SNOWM.ALO new file mode 100644 index 0000000..1218ca2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_SNOWM.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 17000 2002 232 IL +SNM 17001 2002 0 Adams +SNM 17003 2002 0 Alexander +SNM 17005 2002 0 Bond +SNM 17007 2002 22 Boone +SNM 17009 2002 0 Brown +SNM 17011 2002 0 Bureau +SNM 17013 2002 0 Calhoun +SNM 17015 2002 61 Carroll +SNM 17017 2002 0 Cass +SNM 17019 2002 0 Champaign +SNM 17021 2002 0 Christian +SNM 17023 2002 0 Clark +SNM 17025 2002 0 Clay +SNM 17027 2002 0 Clinton +SNM 17029 2002 0 Coles +SNM 17031 2002 0 Cook +SNM 17033 2002 0 Crawford +SNM 17035 2002 0 Cumberland +SNM 17037 2002 11 DeKalb +SNM 17039 2002 0 De Witt +SNM 17041 2002 0 Douglas +SNM 17043 2002 0 DuPage +SNM 17045 2002 0 Edgar +SNM 17047 2002 0 Edwards +SNM 17049 2002 0 Effingham +SNM 17051 2002 0 Fayette +SNM 17053 2002 0 Ford +SNM 17055 2002 0 Franklin +SNM 17057 2002 0 Fulton +SNM 17059 2002 0 Gallatin +SNM 17061 2002 0 Greene +SNM 17063 2002 0 Grundy +SNM 17065 2002 0 Hamilton +SNM 17067 2002 0 Hancock +SNM 17069 2002 0 Hardin +SNM 17071 2002 0 Henderson +SNM 17073 2002 0 Henry +SNM 17075 2002 0 Iroquois +SNM 17077 2002 0 Jackson +SNM 17079 2002 0 Jasper +SNM 17081 2002 0 Jefferson +SNM 17083 2002 0 Jersey +SNM 17085 2002 45 Jo Daviess +SNM 17087 2002 0 Johnson +SNM 17089 2002 0 Kane +SNM 17091 2002 9 Kankakee +SNM 17093 2002 16 Kendall +SNM 17095 2002 0 Knox +SNM 17097 2002 0 Lake +SNM 17099 2002 0 La Salle +SNM 17101 2002 0 Lawrence +SNM 17103 2002 28 Lee +SNM 17105 2002 0 Livingston +SNM 17107 2002 0 Logan +SNM 17109 2002 0 McDonough +SNM 17111 2002 0 McHenry +SNM 17113 2002 0 McLean +SNM 17115 2002 0 Macon +SNM 17117 2002 0 Macoupin +SNM 17119 2002 0 Madison +SNM 17121 2002 0 Marion +SNM 17123 2002 0 Marshall +SNM 17125 2002 0 Mason +SNM 17127 2002 0 Massac +SNM 17129 2002 0 Menard +SNM 17131 2002 0 Mercer +SNM 17133 2002 0 Monroe +SNM 17135 2002 0 Montgomery +SNM 17137 2002 0 Morgan +SNM 17139 2002 0 Moultrie +SNM 17141 2002 19 Ogle +SNM 17143 2002 0 Peoria +SNM 17145 2002 0 Perry +SNM 17147 2002 0 Piatt +SNM 17149 2002 0 Pike +SNM 17151 2002 0 Pope +SNM 17153 2002 0 Pulaski +SNM 17155 2002 0 Putnam +SNM 17157 2002 0 Randolph +SNM 17159 2002 0 Richland +SNM 17161 2002 0 Rock Island +SNM 17163 2002 0 St. Clair +SNM 17165 2002 0 Saline +SNM 17167 2002 0 Sangamon +SNM 17169 2002 0 Schuyler +SNM 17171 2002 0 Scott +SNM 17173 2002 0 Shelby +SNM 17175 2002 0 Stark +SNM 17177 2002 21 Stephenson +SNM 17179 2002 0 Tazewell +SNM 17181 2002 0 Union +SNM 17183 2002 0 Vermilion +SNM 17185 2002 0 Wabash +SNM 17187 2002 0 Warren +SNM 17189 2002 0 Washington +SNM 17191 2002 0 Wayne +SNM 17193 2002 0 White +SNM 17195 2002 0 Whiteside +SNM 17197 2002 0 Will +SNM 17199 2002 0 Williamson +SNM 17201 2002 0 Winnebago +SNM 17203 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_WIB.ALO new file mode 100644 index 0000000..11bf5fe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_WIB.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 17000 1990 2244 IL +WIB 17001 1990 38 Adams +WIB 17003 1990 42 Alexander +WIB 17005 1990 6 Bond +WIB 17007 1990 1 Boone +WIB 17009 1990 4 Brown +WIB 17011 1990 12 Bureau +WIB 17013 1990 77 Calhoun +WIB 17015 1990 56 Carroll +WIB 17017 1990 20 Cass +WIB 17019 1990 1 Champaign +WIB 17021 1990 17 Christian +WIB 17023 1990 9 Clark +WIB 17025 1990 2 Clay +WIB 17027 1990 76 Clinton +WIB 17029 1990 5 Coles +WIB 17031 1990 209 Cook +WIB 17033 1990 6 Crawford +WIB 17035 1990 3 Cumberland +WIB 17037 1990 2 DeKalb +WIB 17039 1990 20 De Witt +WIB 17041 1990 1 Douglas +WIB 17043 1990 6 DuPage +WIB 17045 1990 2 Edgar +WIB 17047 1990 1 Edwards +WIB 17049 1990 3 Effingham +WIB 17051 1990 23 Fayette +WIB 17053 1990 1 Ford +WIB 17055 1990 50 Franklin +WIB 17057 1990 44 Fulton +WIB 17059 1990 12 Gallatin +WIB 17061 1990 8 Greene +WIB 17063 1990 27 Grundy +WIB 17065 1990 2 Hamilton +WIB 17067 1990 52 Hancock +WIB 17069 1990 8 Hardin +WIB 17071 1990 42 Henderson +WIB 17073 1990 6 Henry +WIB 17075 1990 4 Iroquois +WIB 17077 1990 37 Jackson +WIB 17079 1990 9 Jasper +WIB 17081 1990 33 Jefferson +WIB 17083 1990 20 Jersey +WIB 17085 1990 46 Jo Daviess +WIB 17087 1990 7 Johnson +WIB 17089 1990 9 Kane +WIB 17091 1990 10 Kankakee +WIB 17093 1990 5 Kendall +WIB 17095 1990 9 Knox +WIB 17097 1990 186 Lake +WIB 17099 1990 34 La Salle +WIB 17101 1990 5 Lawrence +WIB 17103 1990 10 Lee +WIB 17105 1990 4 Livingston +WIB 17107 1990 2 Logan +WIB 17109 1990 2 McDonough +WIB 17111 1990 18 McHenry +WIB 17113 1990 7 McLean +WIB 17115 1990 13 Macon +WIB 17117 1990 10 Macoupin +WIB 17119 1990 40 Madison +WIB 17121 1990 9 Marion +WIB 17123 1990 32 Marshall +WIB 17125 1990 63 Mason +WIB 17127 1990 8 Massac +WIB 17129 1990 3 Menard +WIB 17131 1990 20 Mercer +WIB 17133 1990 24 Monroe +WIB 17135 1990 15 Montgomery +WIB 17137 1990 9 Morgan +WIB 17139 1990 23 Moultrie +WIB 17141 1990 11 Ogle +WIB 17143 1990 29 Peoria +WIB 17145 1990 15 Perry +WIB 17147 1990 1 Piatt +WIB 17149 1990 48 Pike +WIB 17151 1990 10 Pope +WIB 17153 1990 7 Pulaski +WIB 17155 1990 32 Putnam +WIB 17157 1990 49 Randolph +WIB 17159 1990 5 Richland +WIB 17161 1990 63 Rock Island +WIB 17163 1990 26 St. Clair +WIB 17165 1990 9 Saline +WIB 17167 1990 23 Sangamon +WIB 17169 1990 11 Schuyler +WIB 17171 1990 5 Scott +WIB 17173 1990 25 Shelby +WIB 17175 1990 1 Stark +WIB 17177 1990 1 Stephenson +WIB 17179 1990 23 Tazewell +WIB 17181 1990 15 Union +WIB 17183 1990 8 Vermilion +WIB 17185 1990 11 Wabash +WIB 17187 1990 2 Warren +WIB 17189 1990 4 Washington +WIB 17191 1990 4 Wayne +WIB 17193 1990 18 White +WIB 17195 1990 32 Whiteside +WIB 17197 1990 32 Will +WIB 17199 1990 52 Williamson +WIB 17201 1990 14 Winnebago +WIB 17203 1990 38 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IL_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IL_WOB.ALO new file mode 100644 index 0000000..4c18ca3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IL_WOB.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 17000 1990 1976 IL +WOB 17001 1990 38 Adams +WOB 17003 1990 42 Alexander +WOB 17005 1990 6 Bond +WOB 17007 1990 1 Boone +WOB 17009 1990 4 Brown +WOB 17011 1990 12 Bureau +WOB 17013 1990 77 Calhoun +WOB 17015 1990 56 Carroll +WOB 17017 1990 20 Cass +WOB 17019 1990 1 Champaign +WOB 17021 1990 17 Christian +WOB 17023 1990 9 Clark +WOB 17025 1990 2 Clay +WOB 17027 1990 76 Clinton +WOB 17029 1990 5 Coles +WOB 17031 1990 54 Cook +WOB 17033 1990 6 Crawford +WOB 17035 1990 3 Cumberland +WOB 17037 1990 2 DeKalb +WOB 17039 1990 20 De Witt +WOB 17041 1990 1 Douglas +WOB 17043 1990 6 DuPage +WOB 17045 1990 2 Edgar +WOB 17047 1990 1 Edwards +WOB 17049 1990 3 Effingham +WOB 17051 1990 23 Fayette +WOB 17053 1990 1 Ford +WOB 17055 1990 50 Franklin +WOB 17057 1990 44 Fulton +WOB 17059 1990 12 Gallatin +WOB 17061 1990 8 Greene +WOB 17063 1990 27 Grundy +WOB 17065 1990 2 Hamilton +WOB 17067 1990 52 Hancock +WOB 17069 1990 8 Hardin +WOB 17071 1990 42 Henderson +WOB 17073 1990 6 Henry +WOB 17075 1990 4 Iroquois +WOB 17077 1990 37 Jackson +WOB 17079 1990 9 Jasper +WOB 17081 1990 33 Jefferson +WOB 17083 1990 20 Jersey +WOB 17085 1990 46 Jo Daviess +WOB 17087 1990 7 Johnson +WOB 17089 1990 9 Kane +WOB 17091 1990 10 Kankakee +WOB 17093 1990 5 Kendall +WOB 17095 1990 9 Knox +WOB 17097 1990 73 Lake +WOB 17099 1990 34 La Salle +WOB 17101 1990 5 Lawrence +WOB 17103 1990 10 Lee +WOB 17105 1990 4 Livingston +WOB 17107 1990 2 Logan +WOB 17109 1990 2 McDonough +WOB 17111 1990 18 McHenry +WOB 17113 1990 7 McLean +WOB 17115 1990 13 Macon +WOB 17117 1990 10 Macoupin +WOB 17119 1990 40 Madison +WOB 17121 1990 9 Marion +WOB 17123 1990 32 Marshall +WOB 17125 1990 63 Mason +WOB 17127 1990 8 Massac +WOB 17129 1990 3 Menard +WOB 17131 1990 20 Mercer +WOB 17133 1990 24 Monroe +WOB 17135 1990 15 Montgomery +WOB 17137 1990 9 Morgan +WOB 17139 1990 23 Moultrie +WOB 17141 1990 11 Ogle +WOB 17143 1990 29 Peoria +WOB 17145 1990 15 Perry +WOB 17147 1990 1 Piatt +WOB 17149 1990 48 Pike +WOB 17151 1990 10 Pope +WOB 17153 1990 7 Pulaski +WOB 17155 1990 32 Putnam +WOB 17157 1990 49 Randolph +WOB 17159 1990 5 Richland +WOB 17161 1990 63 Rock Island +WOB 17163 1990 26 St. Clair +WOB 17165 1990 9 Saline +WOB 17167 1990 23 Sangamon +WOB 17169 1990 11 Schuyler +WOB 17171 1990 5 Scott +WOB 17173 1990 25 Shelby +WOB 17175 1990 1 Stark +WOB 17177 1990 1 Stephenson +WOB 17179 1990 23 Tazewell +WOB 17181 1990 15 Union +WOB 17183 1990 8 Vermilion +WOB 17185 1990 11 Wabash +WOB 17187 1990 2 Warren +WOB 17189 1990 4 Washington +WOB 17191 1990 4 Wayne +WOB 17193 1990 18 White +WOB 17195 1990 32 Whiteside +WOB 17197 1990 32 Will +WOB 17199 1990 52 Williamson +WOB 17201 1990 14 Winnebago +WOB 17203 1990 38 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_AIRTR.ALO new file mode 100644 index 0000000..352edad --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_AIRTR.ALO @@ -0,0 +1,119 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 18000 2002 742.879 IN +AIR 18001 2002 0.000 Adams +AIR 18003 2002 67.220 Allen +AIR 18005 2002 0.260 Bartholomew +AIR 18007 2002 0.000 Benton +AIR 18009 2002 0.000 Blackford +AIR 18011 2002 0.000 Boone +AIR 18013 2002 0.000 Brown +AIR 18015 2002 0.000 Carroll +AIR 18017 2002 0.022 Cass +AIR 18019 2002 0.690 Clark +AIR 18021 2002 0.000 Clay +AIR 18023 2002 0.055 Clinton +AIR 18025 2002 0.000 Crawford +AIR 18027 2002 0.026 Daviess +AIR 18029 2002 0.000 Dearborn +AIR 18031 2002 0.000 Decatur +AIR 18033 2002 0.136 De Kalb +AIR 18035 2002 0.254 Delaware +AIR 18037 2002 0.022 Dubois +AIR 18039 2002 0.338 Elkhart +AIR 18041 2002 0.017 Fayette +AIR 18043 2002 0.000 Floyd +AIR 18045 2002 0.000 Fountain +AIR 18047 2002 0.000 Franklin +AIR 18049 2002 0.028 Fulton +AIR 18051 2002 0.000 Gibson +AIR 18053 2002 0.100 Grant +AIR 18055 2002 0.000 Greene +AIR 18057 2002 0.620 Hamilton +AIR 18059 2002 0.000 Hancock +AIR 18061 2002 0.000 Harrison +AIR 18063 2002 0.000 Hendricks +AIR 18065 2002 0.020 Henry +AIR 18067 2002 0.786 Howard +AIR 18069 2002 0.035 Huntington +AIR 18071 2002 0.140 Jackson +AIR 18073 2002 0.018 Jasper +AIR 18075 2002 0.133 Jay +AIR 18077 2002 0.210 Jefferson +AIR 18079 2002 0.087 Jennings +AIR 18081 2002 0.310 Johnson +AIR 18083 2002 0.000 Knox +AIR 18085 2002 0.080 Kosciusko +AIR 18087 2002 0.000 Lagrange +AIR 18089 2002 6.740 Lake +AIR 18091 2002 0.030 La Porte +AIR 18093 2002 0.060 Lawrence +AIR 18095 2002 0.220 Madison +AIR 18097 2002 625.950 Marion +AIR 18099 2002 0.100 Marshall +AIR 18101 2002 0.000 Martin +AIR 18103 2002 0.010 Miami +AIR 18105 2002 0.860 Monroe +AIR 18107 2002 0.074 Montgomery +AIR 18109 2002 0.000 Morgan +AIR 18111 2002 0.012 Newton +AIR 18113 2002 0.040 Noble +AIR 18115 2002 0.000 Ohio +AIR 18117 2002 0.021 Orange +AIR 18119 2002 0.000 Owen +AIR 18121 2002 0.000 Parke +AIR 18123 2002 0.015 Perry +AIR 18125 2002 0.000 Pike +AIR 18127 2002 0.164 Porter +AIR 18129 2002 0.000 Posey +AIR 18131 2002 0.010 Pulaski +AIR 18133 2002 0.120 Putnam +AIR 18135 2002 0.090 Randolph +AIR 18137 2002 0.000 Ripley +AIR 18139 2002 0.000 Rush +AIR 18141 2002 32.014 St. Joseph +AIR 18143 2002 0.000 Scott +AIR 18145 2002 0.000 Shelby +AIR 18147 2002 0.000 Spencer +AIR 18149 2002 0.060 Starke +AIR 18151 2002 0.080 Steuben +AIR 18153 2002 0.027 Sullivan +AIR 18155 2002 0.000 Switzerland +AIR 18157 2002 0.721 Tippecanoe +AIR 18159 2002 0.000 Tipton +AIR 18161 2002 0.000 Union +AIR 18163 2002 1.780 Vanderburgh +AIR 18165 2002 0.000 Vermillion +AIR 18167 2002 1.950 Vigo +AIR 18169 2002 0.025 Wabash +AIR 18171 2002 0.000 Warren +AIR 18173 2002 0.000 Warrick +AIR 18175 2002 0.000 Washington +AIR 18177 2002 0.039 Wayne +AIR 18179 2002 0.000 Wells +AIR 18181 2002 0.060 White +AIR 18183 2002 0.000 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_COAL.ALO new file mode 100644 index 0000000..30d1891 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_COAL.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 18000 2002 7910 IN +MIN 18001 2002 0 Adams +MIN 18003 2002 0 Allen +MIN 18005 2002 0 Bartholomew +MIN 18007 2002 0 Benton +MIN 18009 2002 0 Blackford +MIN 18011 2002 0 Boone +MIN 18013 2002 0 Brown +MIN 18015 2002 0 Carroll +MIN 18017 2002 0 Cass +MIN 18019 2002 0 Clark +MIN 18021 2002 0 Clay +MIN 18023 2002 0 Clinton +MIN 18025 2002 0 Crawford +MIN 18027 2002 0 Daviess +MIN 18029 2002 0 Dearborn +MIN 18031 2002 0 Decatur +MIN 18033 2002 0 De Kalb +MIN 18035 2002 0 Delaware +MIN 18037 2002 0 Dubois +MIN 18039 2002 0 Elkhart +MIN 18041 2002 0 Fayette +MIN 18043 2002 0 Floyd +MIN 18045 2002 0 Fountain +MIN 18047 2002 0 Franklin +MIN 18049 2002 0 Fulton +MIN 18051 2002 1933 Gibson +MIN 18053 2002 0 Grant +MIN 18055 2002 0 Greene +MIN 18057 2002 0 Hamilton +MIN 18059 2002 0 Hancock +MIN 18061 2002 0 Harrison +MIN 18063 2002 0 Hendricks +MIN 18065 2002 0 Henry +MIN 18067 2002 0 Howard +MIN 18069 2002 0 Huntington +MIN 18071 2002 0 Jackson +MIN 18073 2002 0 Jasper +MIN 18075 2002 0 Jay +MIN 18077 2002 0 Jefferson +MIN 18079 2002 0 Jennings +MIN 18081 2002 0 Johnson +MIN 18083 2002 3636 Knox +MIN 18085 2002 0 Kosciusko +MIN 18087 2002 0 Lagrange +MIN 18089 2002 0 Lake +MIN 18091 2002 0 La Porte +MIN 18093 2002 0 Lawrence +MIN 18095 2002 0 Madison +MIN 18097 2002 0 Marion +MIN 18099 2002 0 Marshall +MIN 18101 2002 0 Martin +MIN 18103 2002 0 Miami +MIN 18105 2002 0 Monroe +MIN 18107 2002 0 Montgomery +MIN 18109 2002 0 Morgan +MIN 18111 2002 0 Newton +MIN 18113 2002 0 Noble +MIN 18115 2002 0 Ohio +MIN 18117 2002 0 Orange +MIN 18119 2002 0 Owen +MIN 18121 2002 0 Parke +MIN 18123 2002 0 Perry +MIN 18125 2002 2341 Pike +MIN 18127 2002 0 Porter +MIN 18129 2002 0 Posey +MIN 18131 2002 0 Pulaski +MIN 18133 2002 0 Putnam +MIN 18135 2002 0 Randolph +MIN 18137 2002 0 Ripley +MIN 18139 2002 0 Rush +MIN 18141 2002 0 St. Joseph +MIN 18143 2002 0 Scott +MIN 18145 2002 0 Shelby +MIN 18147 2002 0 Spencer +MIN 18149 2002 0 Starke +MIN 18151 2002 0 Steuben +MIN 18153 2002 0 Sullivan +MIN 18155 2002 0 Switzerland +MIN 18157 2002 0 Tippecanoe +MIN 18159 2002 0 Tipton +MIN 18161 2002 0 Union +MIN 18163 2002 0 Vanderburgh +MIN 18165 2002 0 Vermillion +MIN 18167 2002 0 Vigo +MIN 18169 2002 0 Wabash +MIN 18171 2002 0 Warren +MIN 18173 2002 0 Warrick +MIN 18175 2002 0 Washington +MIN 18177 2002 0 Wayne +MIN 18179 2002 0 Wells +MIN 18181 2002 0 White +MIN 18183 2002 0 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_CONST.ALO new file mode 100644 index 0000000..394d04e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_CONST.ALO @@ -0,0 +1,119 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 18000 2003 12998779 IN +CON 18001 2003 83242 Adams +CON 18003 2003 807434 Allen +CON 18005 2003 143127 Bartholomew +CON 18007 2003 7627 Benton +CON 18009 2003 20540 Blackford +CON 18011 2003 211779 Boone +CON 18013 2003 24758 Brown +CON 18015 2003 13038 Carroll +CON 18017 2003 45440 Cass +CON 18019 2003 192368 Clark +CON 18021 2003 26002 Clay +CON 18023 2003 22313 Clinton +CON 18025 2003 16810 Crawford +CON 18027 2003 31403 Daviess +CON 18029 2003 88593 Dearborn +CON 18031 2003 38775 Decatur +CON 18033 2003 82838 De Kalb +CON 18035 2003 136780 Delaware +CON 18037 2003 83949 Dubois +CON 18039 2003 396615 Elkhart +CON 18041 2003 7488 Fayette +CON 18043 2003 241507 Floyd +CON 18045 2003 10604 Fountain +CON 18047 2003 23865 Franklin +CON 18049 2003 19257 Fulton +CON 18051 2003 65486 Gibson +CON 18053 2003 81767 Grant +CON 18055 2003 27802 Greene +CON 18057 2003 1441195 Hamilton +CON 18059 2003 215565 Hancock +CON 18061 2003 51288 Harrison +CON 18063 2003 816628 Hendricks +CON 18065 2003 42967 Henry +CON 18067 2003 83217 Howard +CON 18069 2003 46179 Huntington +CON 18071 2003 71530 Jackson +CON 18073 2003 31859 Jasper +CON 18075 2003 21755 Jay +CON 18077 2003 62121 Jefferson +CON 18079 2003 24770 Jennings +CON 18081 2003 355723 Johnson +CON 18083 2003 36520 Knox +CON 18085 2003 92620 Kosciusko +CON 18087 2003 29157 Lagrange +CON 18089 2003 839198 Lake +CON 18091 2003 113699 La Porte +CON 18093 2003 133606 Lawrence +CON 18095 2003 215598 Madison +CON 18097 2003 2103500 Marion +CON 18099 2003 53064 Marshall +CON 18101 2003 15726 Martin +CON 18103 2003 18807 Miami +CON 18105 2003 295651 Monroe +CON 18107 2003 56142 Montgomery +CON 18109 2003 118173 Morgan +CON 18111 2003 13145 Newton +CON 18113 2003 61115 Noble +CON 18115 2003 7508 Ohio +CON 18117 2003 12745 Orange +CON 18119 2003 35794 Owen +CON 18121 2003 13530 Parke +CON 18123 2003 14005 Perry +CON 18125 2003 8586 Pike +CON 18127 2003 309547 Porter +CON 18129 2003 35487 Posey +CON 18131 2003 19764 Pulaski +CON 18133 2003 62805 Putnam +CON 18135 2003 18768 Randolph +CON 18137 2003 25589 Ripley +CON 18139 2003 14644 Rush +CON 18141 2003 439894 St. Joseph +CON 18143 2003 25900 Scott +CON 18145 2003 69674 Shelby +CON 18147 2003 35089 Spencer +CON 18149 2003 9827 Starke +CON 18151 2003 83337 Steuben +CON 18153 2003 15567 Sullivan +CON 18155 2003 48597 Switzerland +CON 18157 2003 349566 Tippecanoe +CON 18159 2003 12638 Tipton +CON 18161 2003 13685 Union +CON 18163 2003 346574 Vanderburgh +CON 18165 2003 12344 Vermillion +CON 18167 2003 142751 Vigo +CON 18169 2003 18807 Wabash +CON 18171 2003 8807 Warren +CON 18173 2003 128400 Warrick +CON 18175 2003 44017 Washington +CON 18177 2003 90181 Wayne +CON 18179 2003 24733 Wells +CON 18181 2003 22349 White +CON 18183 2003 65546 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_FARMS.ALO new file mode 100644 index 0000000..51a5bfb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_FARMS.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 18000 2002 11937370 IN +FRM 18001 2002 196318 Adams +FRM 18003 2002 242035 Allen +FRM 18005 2002 135056 Bartholomew +FRM 18007 2002 232820 Benton +FRM 18009 2002 84923 Blackford +FRM 18011 2002 207304 Boone +FRM 18013 2002 7221 Brown +FRM 18015 2002 181069 Carroll +FRM 18017 2002 177944 Cass +FRM 18019 2002 58499 Clark +FRM 18021 2002 118413 Clay +FRM 18023 2002 228090 Clinton +FRM 18025 2002 12787 Crawford +FRM 18027 2002 154929 Daviess +FRM 18029 2002 27444 Dearborn +FRM 18031 2002 170249 Decatur +FRM 18033 2002 123955 De Kalb +FRM 18035 2002 170946 Delaware +FRM 18037 2002 125599 Dubois +FRM 18039 2002 163189 Elkhart +FRM 18041 2002 78795 Fayette +FRM 18043 2002 11355 Floyd +FRM 18045 2002 174131 Fountain +FRM 18047 2002 78837 Franklin +FRM 18049 2002 166899 Fulton +FRM 18051 2002 178777 Gibson +FRM 18053 2002 178631 Grant +FRM 18055 2002 89589 Greene +FRM 18057 2002 124448 Hamilton +FRM 18059 2002 148365 Hancock +FRM 18061 2002 81872 Harrison +FRM 18063 2002 159707 Hendricks +FRM 18065 2002 148562 Henry +FRM 18067 2002 144122 Howard +FRM 18069 2002 174807 Huntington +FRM 18071 2002 145671 Jackson +FRM 18073 2002 251006 Jasper +FRM 18075 2002 159676 Jay +FRM 18077 2002 57505 Jefferson +FRM 18079 2002 95744 Jennings +FRM 18081 2002 115422 Johnson +FRM 18083 2002 256905 Knox +FRM 18085 2002 205882 Kosciusko +FRM 18087 2002 125058 Lagrange +FRM 18089 2002 112505 Lake +FRM 18091 2002 208829 La Porte +FRM 18093 2002 56679 Lawrence +FRM 18095 2002 220034 Madison +FRM 18097 2002 17203 Marion +FRM 18099 2002 167884 Marshall +FRM 18101 2002 34452 Martin +FRM 18103 2002 162117 Miami +FRM 18105 2002 20176 Monroe +FRM 18107 2002 237652 Montgomery +FRM 18109 2002 80817 Morgan +FRM 18111 2002 164916 Newton +FRM 18113 2002 130179 Noble +FRM 18115 2002 9194 Ohio +FRM 18117 2002 48359 Orange +FRM 18119 2002 49672 Owen +FRM 18121 2002 114657 Parke +FRM 18123 2002 27151 Perry +FRM 18125 2002 56138 Pike +FRM 18127 2002 126847 Porter +FRM 18129 2002 170564 Posey +FRM 18131 2002 196831 Pulaski +FRM 18133 2002 134983 Putnam +FRM 18135 2002 227913 Randolph +FRM 18137 2002 112155 Ripley +FRM 18139 2002 198804 Rush +FRM 18141 2002 141091 St. Joseph +FRM 18143 2002 44947 Scott +FRM 18145 2002 178708 Shelby +FRM 18147 2002 112223 Spencer +FRM 18149 2002 102830 Starke +FRM 18151 2002 68330 Steuben +FRM 18153 2002 140754 Sullivan +FRM 18155 2002 20780 Switzerland +FRM 18157 2002 194532 Tippecanoe +FRM 18159 2002 141678 Tipton +FRM 18161 2002 67714 Union +FRM 18163 2002 73102 Vanderburgh +FRM 18165 2002 93387 Vermillion +FRM 18167 2002 96733 Vigo +FRM 18169 2002 176395 Wabash +FRM 18171 2002 144827 Warren +FRM 18173 2002 68699 Warrick +FRM 18175 2002 92762 Washington +FRM 18177 2002 126453 Wayne +FRM 18179 2002 206423 Wells +FRM 18181 2002 253541 White +FRM 18183 2002 134194 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_GOLF.ALO new file mode 100644 index 0000000..271ad75 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_GOLF.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 18000 2002 334 IN +GC 18001 2002 3 Adams +GC 18003 2002 15 Allen +GC 18005 2002 2 Bartholomew +GC 18007 2002 2 Benton +GC 18009 2002 2 Blackford +GC 18011 2002 11 Boone +GC 18013 2002 1 Brown +GC 18015 2002 1 Carroll +GC 18017 2002 3 Cass +GC 18019 2002 5 Clark +GC 18021 2002 0 Clay +GC 18023 2002 3 Clinton +GC 18025 2002 0 Crawford +GC 18027 2002 3 Daviess +GC 18029 2002 6 Dearborn +GC 18031 2002 3 Decatur +GC 18033 2002 2 De Kalb +GC 18035 2002 6 Delaware +GC 18037 2002 2 Dubois +GC 18039 2002 9 Elkhart +GC 18041 2002 1 Fayette +GC 18043 2002 2 Floyd +GC 18045 2002 2 Fountain +GC 18047 2002 2 Franklin +GC 18049 2002 0 Fulton +GC 18051 2002 2 Gibson +GC 18053 2002 5 Grant +GC 18055 2002 2 Greene +GC 18057 2002 20 Hamilton +GC 18059 2002 3 Hancock +GC 18061 2002 1 Harrison +GC 18063 2002 5 Hendricks +GC 18065 2002 5 Henry +GC 18067 2002 5 Howard +GC 18069 2002 3 Huntington +GC 18071 2002 6 Jackson +GC 18073 2002 2 Jasper +GC 18075 2002 1 Jay +GC 18077 2002 3 Jefferson +GC 18079 2002 1 Jennings +GC 18081 2002 10 Johnson +GC 18083 2002 2 Knox +GC 18085 2002 8 Kosciusko +GC 18087 2002 3 Lagrange +GC 18089 2002 19 Lake +GC 18091 2002 4 La Porte +GC 18093 2002 2 Lawrence +GC 18095 2002 6 Madison +GC 18097 2002 25 Marion +GC 18099 2002 6 Marshall +GC 18101 2002 2 Martin +GC 18103 2002 1 Miami +GC 18105 2002 3 Monroe +GC 18107 2002 4 Montgomery +GC 18109 2002 2 Morgan +GC 18111 2002 1 Newton +GC 18113 2002 4 Noble +GC 18115 2002 1 Ohio +GC 18117 2002 1 Orange +GC 18119 2002 1 Owen +GC 18121 2002 2 Parke +GC 18123 2002 1 Perry +GC 18125 2002 1 Pike +GC 18127 2002 4 Porter +GC 18129 2002 1 Posey +GC 18131 2002 2 Pulaski +GC 18133 2002 3 Putnam +GC 18135 2002 2 Randolph +GC 18137 2002 4 Ripley +GC 18139 2002 0 Rush +GC 18141 2002 7 St. Joseph +GC 18143 2002 0 Scott +GC 18145 2002 1 Shelby +GC 18147 2002 1 Spencer +GC 18149 2002 2 Starke +GC 18151 2002 4 Steuben +GC 18153 2002 0 Sullivan +GC 18155 2002 0 Switzerland +GC 18157 2002 8 Tippecanoe +GC 18159 2002 1 Tipton +GC 18161 2002 3 Union +GC 18163 2002 7 Vanderburgh +GC 18165 2002 1 Vermillion +GC 18167 2002 3 Vigo +GC 18169 2002 3 Wabash +GC 18171 2002 0 Warren +GC 18173 2002 4 Warrick +GC 18175 2002 1 Washington +GC 18177 2002 4 Wayne +GC 18179 2002 2 Wells +GC 18181 2002 3 White +GC 18183 2002 4 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_HOLSL.ALO new file mode 100644 index 0000000..1d193cb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_HOLSL.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 18000 2002 8439 IN +COM 18001 2002 38 Adams +COM 18003 2002 656 Allen +COM 18005 2002 101 Bartholomew +COM 18007 2002 18 Benton +COM 18009 2002 12 Blackford +COM 18011 2002 79 Boone +COM 18013 2002 6 Brown +COM 18015 2002 27 Carroll +COM 18017 2002 46 Cass +COM 18019 2002 111 Clark +COM 18021 2002 16 Clay +COM 18023 2002 46 Clinton +COM 18025 2002 3 Crawford +COM 18027 2002 30 Daviess +COM 18029 2002 43 Dearborn +COM 18031 2002 30 Decatur +COM 18033 2002 49 De Kalb +COM 18035 2002 105 Delaware +COM 18037 2002 77 Dubois +COM 18039 2002 403 Elkhart +COM 18041 2002 18 Fayette +COM 18043 2002 98 Floyd +COM 18045 2002 24 Fountain +COM 18047 2002 10 Franklin +COM 18049 2002 31 Fulton +COM 18051 2002 32 Gibson +COM 18053 2002 56 Grant +COM 18055 2002 22 Greene +COM 18057 2002 545 Hamilton +COM 18059 2002 65 Hancock +COM 18061 2002 34 Harrison +COM 18063 2002 102 Hendricks +COM 18065 2002 40 Henry +COM 18067 2002 99 Howard +COM 18069 2002 48 Huntington +COM 18071 2002 47 Jackson +COM 18073 2002 42 Jasper +COM 18075 2002 22 Jay +COM 18077 2002 28 Jefferson +COM 18079 2002 13 Jennings +COM 18081 2002 118 Johnson +COM 18083 2002 67 Knox +COM 18085 2002 98 Kosciusko +COM 18087 2002 37 Lagrange +COM 18089 2002 518 Lake +COM 18091 2002 123 La Porte +COM 18093 2002 25 Lawrence +COM 18095 2002 99 Madison +COM 18097 2002 1764 Marion +COM 18099 2002 68 Marshall +COM 18101 2002 9 Martin +COM 18103 2002 43 Miami +COM 18105 2002 103 Monroe +COM 18107 2002 46 Montgomery +COM 18109 2002 49 Morgan +COM 18111 2002 21 Newton +COM 18113 2002 39 Noble +COM 18115 2002 1 Ohio +COM 18117 2002 15 Orange +COM 18119 2002 12 Owen +COM 18121 2002 8 Parke +COM 18123 2002 8 Perry +COM 18125 2002 11 Pike +COM 18127 2002 198 Porter +COM 18129 2002 29 Posey +COM 18131 2002 34 Pulaski +COM 18133 2002 31 Putnam +COM 18135 2002 20 Randolph +COM 18137 2002 26 Ripley +COM 18139 2002 23 Rush +COM 18141 2002 431 St. Joseph +COM 18143 2002 18 Scott +COM 18145 2002 46 Shelby +COM 18147 2002 24 Spencer +COM 18149 2002 14 Starke +COM 18151 2002 45 Steuben +COM 18153 2002 18 Sullivan +COM 18155 2002 3 Switzerland +COM 18157 2002 123 Tippecanoe +COM 18159 2002 18 Tipton +COM 18161 2002 11 Union +COM 18163 2002 325 Vanderburgh +COM 18165 2002 16 Vermillion +COM 18167 2002 123 Vigo +COM 18169 2002 39 Wabash +COM 18171 2002 17 Warren +COM 18173 2002 55 Warrick +COM 18175 2002 13 Washington +COM 18177 2002 76 Wayne +COM 18179 2002 34 Wells +COM 18181 2002 46 White +COM 18183 2002 29 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_HOUSE.ALO new file mode 100644 index 0000000..923adfd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_HOUSE.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 18000 2002 2615834 IN +HOU 18001 2002 12599 Adams +HOU 18003 2002 143089 Allen +HOU 18005 2002 30410 Bartholomew +HOU 18007 2002 3842 Benton +HOU 18009 2002 6288 Blackford +HOU 18011 2002 19172 Boone +HOU 18013 2002 7464 Brown +HOU 18015 2002 8845 Carroll +HOU 18017 2002 16881 Cass +HOU 18019 2002 43318 Clark +HOU 18021 2002 11356 Clay +HOU 18023 2002 13391 Clinton +HOU 18025 2002 5294 Crawford +HOU 18027 2002 12079 Daviess +HOU 18029 2002 18545 Dearborn +HOU 18031 2002 10219 Decatur +HOU 18033 2002 16540 De Kalb +HOU 18035 2002 51739 Delaware +HOU 18037 2002 15987 Dubois +HOU 18039 2002 72488 Elkhart +HOU 18041 2002 11110 Fayette +HOU 18043 2002 29885 Floyd +HOU 18045 2002 7792 Fountain +HOU 18047 2002 8854 Franklin +HOU 18049 2002 9289 Fulton +HOU 18051 2002 14607 Gibson +HOU 18053 2002 31130 Grant +HOU 18055 2002 15466 Greene +HOU 18057 2002 78813 Hamilton +HOU 18059 2002 23570 Hancock +HOU 18061 2002 14221 Harrison +HOU 18063 2002 43880 Hendricks +HOU 18065 2002 21007 Henry +HOU 18067 2002 38349 Howard +HOU 18069 2002 15525 Huntington +HOU 18071 2002 17676 Jackson +HOU 18073 2002 11825 Jasper +HOU 18075 2002 9219 Jay +HOU 18077 2002 13798 Jefferson +HOU 18079 2002 12140 Jennings +HOU 18081 2002 48364 Johnson +HOU 18083 2002 17396 Knox +HOU 18085 2002 33204 Kosciusko +HOU 18087 2002 13413 Lagrange +HOU 18089 2002 198668 Lake +HOU 18091 2002 46420 La Porte +HOU 18093 2002 20922 Lawrence +HOU 18095 2002 57582 Madison +HOU 18097 2002 398676 Marion +HOU 18099 2002 18629 Marshall +HOU 18101 2002 4865 Martin +HOU 18103 2002 15543 Miami +HOU 18105 2002 52521 Monroe +HOU 18107 2002 15999 Montgomery +HOU 18109 2002 27169 Morgan +HOU 18111 2002 5898 Newton +HOU 18113 2002 18754 Noble +HOU 18115 2002 2485 Ohio +HOU 18117 2002 8575 Orange +HOU 18119 2002 10131 Owen +HOU 18121 2002 7672 Parke +HOU 18123 2002 8364 Perry +HOU 18125 2002 5835 Pike +HOU 18127 2002 60355 Porter +HOU 18129 2002 11303 Posey +HOU 18131 2002 6101 Pulaski +HOU 18133 2002 13724 Putnam +HOU 18135 2002 11860 Randolph +HOU 18137 2002 10961 Ripley +HOU 18139 2002 7426 Rush +HOU 18141 2002 109463 St. Joseph +HOU 18143 2002 10278 Scott +HOU 18145 2002 17901 Shelby +HOU 18147 2002 8673 Spencer +HOU 18149 2002 10431 Starke +HOU 18151 2002 17958 Steuben +HOU 18153 2002 8979 Sullivan +HOU 18155 2002 4542 Switzerland +HOU 18157 2002 61778 Tippecanoe +HOU 18159 2002 6941 Tipton +HOU 18161 2002 3188 Union +HOU 18163 2002 77770 Vanderburgh +HOU 18165 2002 7478 Vermillion +HOU 18167 2002 45766 Vigo +HOU 18169 2002 14195 Wabash +HOU 18171 2002 3624 Warren +HOU 18173 2002 21513 Warrick +HOU 18175 2002 11595 Washington +HOU 18177 2002 30631 Wayne +HOU 18179 2002 11227 Wells +HOU 18181 2002 12427 White +HOU 18183 2002 12959 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_LOGGN.ALO new file mode 100644 index 0000000..0b7448c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_LOGGN.ALO @@ -0,0 +1,119 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 18000 2002 165096196 IN +LOG 18001 2002 970146 Adams +LOG 18003 2002 2339924 Allen +LOG 18005 2002 2775339 Bartholomew +LOG 18007 2002 55564 Benton +LOG 18009 2002 4987 Blackford +LOG 18011 2002 190276 Boone +LOG 18013 2002 3188874 Brown +LOG 18015 2002 824363 Carroll +LOG 18017 2002 1017910 Cass +LOG 18019 2002 1412215 Clark +LOG 18021 2002 3496871 Clay +LOG 18023 2002 215131 Clinton +LOG 18025 2002 2348786 Crawford +LOG 18027 2002 5971031 Daviess +LOG 18029 2002 2236390 Dearborn +LOG 18031 2002 3560905 Decatur +LOG 18033 2002 1634390 De Kalb +LOG 18035 2002 865756 Delaware +LOG 18037 2002 5083390 Dubois +LOG 18039 2002 1336426 Elkhart +LOG 18041 2002 1187182 Fayette +LOG 18043 2002 1605670 Floyd +LOG 18045 2002 1167077 Fountain +LOG 18047 2002 2485994 Franklin +LOG 18049 2002 768643 Fulton +LOG 18051 2002 1182335 Gibson +LOG 18053 2002 209275 Grant +LOG 18055 2002 4430887 Greene +LOG 18057 2002 178270 Hamilton +LOG 18059 2002 313547 Hancock +LOG 18061 2002 2101638 Harrison +LOG 18063 2002 793446 Hendricks +LOG 18065 2002 974333 Henry +LOG 18067 2002 55733 Howard +LOG 18069 2002 522284 Huntington +LOG 18071 2002 3783392 Jackson +LOG 18073 2002 11789 Jasper +LOG 18075 2002 594251 Jay +LOG 18077 2002 2005562 Jefferson +LOG 18079 2002 2347497 Jennings +LOG 18081 2002 1490513 Johnson +LOG 18083 2002 1963811 Knox +LOG 18085 2002 3453797 Kosciusko +LOG 18087 2002 1559510 Lagrange +LOG 18089 2002 1370744 Lake +LOG 18091 2002 1464463 La Porte +LOG 18093 2002 4307911 Lawrence +LOG 18095 2002 161694 Madison +LOG 18097 2002 1260294 Marion +LOG 18099 2002 1534292 Marshall +LOG 18101 2002 3463906 Martin +LOG 18103 2002 1844278 Miami +LOG 18105 2002 3083300 Monroe +LOG 18107 2002 787431 Montgomery +LOG 18109 2002 3831964 Morgan +LOG 18111 2002 921218 Newton +LOG 18113 2002 2028539 Noble +LOG 18115 2002 238130 Ohio +LOG 18117 2002 3145664 Orange +LOG 18119 2002 6175635 Owen +LOG 18121 2002 4433830 Parke +LOG 18123 2002 3572074 Perry +LOG 18125 2002 2127289 Pike +LOG 18127 2002 816513 Porter +LOG 18129 2002 1608832 Posey +LOG 18131 2002 1492880 Pulaski +LOG 18133 2002 2534741 Putnam +LOG 18135 2002 883350 Randolph +LOG 18137 2002 2321877 Ripley +LOG 18139 2002 715285 Rush +LOG 18141 2002 1700193 St. Joseph +LOG 18143 2002 2504237 Scott +LOG 18145 2002 709107 Shelby +LOG 18147 2002 2573312 Spencer +LOG 18149 2002 1165077 Starke +LOG 18151 2002 1344395 Steuben +LOG 18153 2002 2335037 Sullivan +LOG 18155 2002 263067 Switzerland +LOG 18157 2002 698518 Tippecanoe +LOG 18159 2002 81843 Tipton +LOG 18161 2002 542456 Union +LOG 18163 2002 1896069 Vanderburgh +LOG 18165 2002 1003917 Vermillion +LOG 18167 2002 3937698 Vigo +LOG 18169 2002 1544442 Wabash +LOG 18171 2002 236620 Warren +LOG 18173 2002 2013000 Warrick +LOG 18175 2002 5862950 Washington +LOG 18177 2002 504574 Wayne +LOG 18179 2002 245225 Wells +LOG 18181 2002 552372 White +LOG 18183 2002 2540840 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_LSCAP.ALO new file mode 100644 index 0000000..d943b21 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_LSCAP.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 18000 2002 8216 IN +LSC 18001 2002 69 Adams +LSC 18003 2002 1090 Allen +LSC 18005 2002 51 Bartholomew +LSC 18007 2002 7 Benton +LSC 18009 2002 7 Blackford +LSC 18011 2002 220 Boone +LSC 18013 2002 40 Brown +LSC 18015 2002 7 Carroll +LSC 18017 2002 40 Cass +LSC 18019 2002 80 Clark +LSC 18021 2002 11 Clay +LSC 18023 2002 18 Clinton +LSC 18025 2002 0 Crawford +LSC 18027 2002 7 Daviess +LSC 18029 2002 40 Dearborn +LSC 18031 2002 7 Decatur +LSC 18033 2002 7 De Kalb +LSC 18035 2002 66 Delaware +LSC 18037 2002 7 Dubois +LSC 18039 2002 165 Elkhart +LSC 18041 2002 7 Fayette +LSC 18043 2002 114 Floyd +LSC 18045 2002 7 Fountain +LSC 18047 2002 40 Franklin +LSC 18049 2002 7 Fulton +LSC 18051 2002 40 Gibson +LSC 18053 2002 7 Grant +LSC 18055 2002 7 Greene +LSC 18057 2002 624 Hamilton +LSC 18059 2002 128 Hancock +LSC 18061 2002 9 Harrison +LSC 18063 2002 113 Hendricks +LSC 18065 2002 30 Henry +LSC 18067 2002 7 Howard +LSC 18069 2002 43 Huntington +LSC 18071 2002 13 Jackson +LSC 18073 2002 14 Jasper +LSC 18075 2002 0 Jay +LSC 18077 2002 40 Jefferson +LSC 18079 2002 40 Jennings +LSC 18081 2002 116 Johnson +LSC 18083 2002 84 Knox +LSC 18085 2002 40 Kosciusko +LSC 18087 2002 7 Lagrange +LSC 18089 2002 395 Lake +LSC 18091 2002 96 La Porte +LSC 18093 2002 31 Lawrence +LSC 18095 2002 121 Madison +LSC 18097 2002 1156 Marion +LSC 18099 2002 3 Marshall +LSC 18101 2002 7 Martin +LSC 18103 2002 7 Miami +LSC 18105 2002 163 Monroe +LSC 18107 2002 7 Montgomery +LSC 18109 2002 228 Morgan +LSC 18111 2002 7 Newton +LSC 18113 2002 37 Noble +LSC 18115 2002 7 Ohio +LSC 18117 2002 7 Orange +LSC 18119 2002 7 Owen +LSC 18121 2002 7 Parke +LSC 18123 2002 7 Perry +LSC 18125 2002 7 Pike +LSC 18127 2002 270 Porter +LSC 18129 2002 7 Posey +LSC 18131 2002 7 Pulaski +LSC 18133 2002 7 Putnam +LSC 18135 2002 1141 Randolph +LSC 18137 2002 40 Ripley +LSC 18139 2002 7 Rush +LSC 18141 2002 314 St. Joseph +LSC 18143 2002 7 Scott +LSC 18145 2002 40 Shelby +LSC 18147 2002 7 Spencer +LSC 18149 2002 7 Starke +LSC 18151 2002 7 Steuben +LSC 18153 2002 9 Sullivan +LSC 18155 2002 0 Switzerland +LSC 18157 2002 114 Tippecanoe +LSC 18159 2002 10 Tipton +LSC 18161 2002 7 Union +LSC 18163 2002 250 Vanderburgh +LSC 18165 2002 7 Vermillion +LSC 18167 2002 51 Vigo +LSC 18169 2002 7 Wabash +LSC 18171 2002 0 Warren +LSC 18173 2002 40 Warrick +LSC 18175 2002 4 Washington +LSC 18177 2002 16 Wayne +LSC 18179 2002 7 Wells +LSC 18181 2002 22 White +LSC 18183 2002 35 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_MNFG.ALO new file mode 100644 index 0000000..639c755 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_MNFG.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 18000 2002 1075981 IN +MFG 18001 2002 10395 Adams +MFG 18003 2002 56750 Allen +MFG 18005 2002 21815 Bartholomew +MFG 18007 2002 942 Benton +MFG 18009 2002 3903 Blackford +MFG 18011 2002 3982 Boone +MFG 18013 2002 280 Brown +MFG 18015 2002 2946 Carroll +MFG 18017 2002 10051 Cass +MFG 18019 2002 13710 Clark +MFG 18021 2002 2559 Clay +MFG 18023 2002 7018 Clinton +MFG 18025 2002 95 Crawford +MFG 18027 2002 2487 Daviess +MFG 18029 2002 2190 Dearborn +MFG 18031 2002 11165 Decatur +MFG 18033 2002 22294 De Kalb +MFG 18035 2002 15772 Delaware +MFG 18037 2002 23375 Dubois +MFG 18039 2002 106580 Elkhart +MFG 18041 2002 7606 Fayette +MFG 18043 2002 12149 Floyd +MFG 18045 2002 3719 Fountain +MFG 18047 2002 1422 Franklin +MFG 18049 2002 4655 Fulton +MFG 18051 2002 8944 Gibson +MFG 18053 2002 13676 Grant +MFG 18055 2002 1120 Greene +MFG 18057 2002 10932 Hamilton +MFG 18059 2002 5357 Hancock +MFG 18061 2002 4570 Harrison +MFG 18063 2002 3357 Hendricks +MFG 18065 2002 5633 Henry +MFG 18067 2002 29272 Howard +MFG 18069 2002 9944 Huntington +MFG 18071 2002 13639 Jackson +MFG 18073 2002 2630 Jasper +MFG 18075 2002 5301 Jay +MFG 18077 2002 6992 Jefferson +MFG 18079 2002 4266 Jennings +MFG 18081 2002 13697 Johnson +MFG 18083 2002 2507 Knox +MFG 18085 2002 26720 Kosciusko +MFG 18087 2002 11431 Lagrange +MFG 18089 2002 53098 Lake +MFG 18091 2002 16691 La Porte +MFG 18093 2002 7907 Lawrence +MFG 18095 2002 12109 Madison +MFG 18097 2002 112346 Marion +MFG 18099 2002 11630 Marshall +MFG 18101 2002 1121 Martin +MFG 18103 2002 6827 Miami +MFG 18105 2002 14961 Monroe +MFG 18107 2002 11824 Montgomery +MFG 18109 2002 4579 Morgan +MFG 18111 2002 2712 Newton +MFG 18113 2002 20239 Noble +MFG 18115 2002 24 Ohio +MFG 18117 2002 3077 Orange +MFG 18119 2002 3633 Owen +MFG 18121 2002 1470 Parke +MFG 18123 2002 3340 Perry +MFG 18125 2002 322 Pike +MFG 18127 2002 21972 Porter +MFG 18129 2002 4705 Posey +MFG 18131 2002 1853 Pulaski +MFG 18133 2002 5624 Putnam +MFG 18135 2002 6271 Randolph +MFG 18137 2002 6137 Ripley +MFG 18139 2002 2631 Rush +MFG 18141 2002 36768 St. Joseph +MFG 18143 2002 4505 Scott +MFG 18145 2002 12387 Shelby +MFG 18147 2002 4173 Spencer +MFG 18149 2002 1942 Starke +MFG 18151 2002 11328 Steuben +MFG 18153 2002 780 Sullivan +MFG 18155 2002 344 Switzerland +MFG 18157 2002 32708 Tippecanoe +MFG 18159 2002 1815 Tipton +MFG 18161 2002 136 Union +MFG 18163 2002 31002 Vanderburgh +MFG 18165 2002 3027 Vermillion +MFG 18167 2002 15539 Vigo +MFG 18169 2002 9276 Wabash +MFG 18171 2002 690 Warren +MFG 18173 2002 6270 Warrick +MFG 18175 2002 4574 Washington +MFG 18177 2002 14912 Wayne +MFG 18179 2002 5693 Wells +MFG 18181 2002 4592 White +MFG 18183 2002 8569 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_OIL.ALO new file mode 100644 index 0000000..0ad7cc8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_OIL.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 18000 2002 276 IN +OIL 18001 2002 0 Adams +OIL 18003 2002 0 Allen +OIL 18005 2002 0 Bartholomew +OIL 18007 2002 0 Benton +OIL 18009 2002 0 Blackford +OIL 18011 2002 0 Boone +OIL 18013 2002 0 Brown +OIL 18015 2002 0 Carroll +OIL 18017 2002 0 Cass +OIL 18019 2002 8 Clark +OIL 18021 2002 0 Clay +OIL 18023 2002 0 Clinton +OIL 18025 2002 0 Crawford +OIL 18027 2002 5 Daviess +OIL 18029 2002 0 Dearborn +OIL 18031 2002 0 Decatur +OIL 18033 2002 0 De Kalb +OIL 18035 2002 0 Delaware +OIL 18037 2002 5 Dubois +OIL 18039 2002 8 Elkhart +OIL 18041 2002 0 Fayette +OIL 18043 2002 0 Floyd +OIL 18045 2002 0 Fountain +OIL 18047 2002 0 Franklin +OIL 18049 2002 0 Fulton +OIL 18051 2002 12 Gibson +OIL 18053 2002 5 Grant +OIL 18055 2002 5 Greene +OIL 18057 2002 5 Hamilton +OIL 18059 2002 0 Hancock +OIL 18061 2002 0 Harrison +OIL 18063 2002 0 Hendricks +OIL 18065 2002 0 Henry +OIL 18067 2002 0 Howard +OIL 18069 2002 0 Huntington +OIL 18071 2002 0 Jackson +OIL 18073 2002 0 Jasper +OIL 18075 2002 0 Jay +OIL 18077 2002 0 Jefferson +OIL 18079 2002 0 Jennings +OIL 18081 2002 0 Johnson +OIL 18083 2002 12 Knox +OIL 18085 2002 5 Kosciusko +OIL 18087 2002 0 Lagrange +OIL 18089 2002 0 Lake +OIL 18091 2002 0 La Porte +OIL 18093 2002 0 Lawrence +OIL 18095 2002 0 Madison +OIL 18097 2002 5 Marion +OIL 18099 2002 0 Marshall +OIL 18101 2002 0 Martin +OIL 18103 2002 0 Miami +OIL 18105 2002 7 Monroe +OIL 18107 2002 0 Montgomery +OIL 18109 2002 0 Morgan +OIL 18111 2002 0 Newton +OIL 18113 2002 0 Noble +OIL 18115 2002 0 Ohio +OIL 18117 2002 7 Orange +OIL 18119 2002 0 Owen +OIL 18121 2002 7 Parke +OIL 18123 2002 0 Perry +OIL 18125 2002 7 Pike +OIL 18127 2002 0 Porter +OIL 18129 2002 5 Posey +OIL 18131 2002 0 Pulaski +OIL 18133 2002 0 Putnam +OIL 18135 2002 0 Randolph +OIL 18137 2002 5 Ripley +OIL 18139 2002 0 Rush +OIL 18141 2002 0 St. Joseph +OIL 18143 2002 0 Scott +OIL 18145 2002 0 Shelby +OIL 18147 2002 5 Spencer +OIL 18149 2002 0 Starke +OIL 18151 2002 0 Steuben +OIL 18153 2002 5 Sullivan +OIL 18155 2002 0 Switzerland +OIL 18157 2002 7 Tippecanoe +OIL 18159 2002 0 Tipton +OIL 18161 2002 0 Union +OIL 18163 2002 107 Vanderburgh +OIL 18165 2002 0 Vermillion +OIL 18167 2002 27 Vigo +OIL 18169 2002 7 Wabash +OIL 18171 2002 0 Warren +OIL 18173 2002 5 Warrick +OIL 18175 2002 0 Washington +OIL 18177 2002 0 Wayne +OIL 18179 2002 0 Wells +OIL 18181 2002 0 White +OIL 18183 2002 0 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_POP.ALO new file mode 100644 index 0000000..3aa53bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_POP.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 18000 2002 6158327 IN +POP 18001 2002 33540 Adams +POP 18003 2002 337580 Allen +POP 18005 2002 71854 Bartholomew +POP 18007 2002 9270 Benton +POP 18009 2002 13870 Blackford +POP 18011 2002 48468 Boone +POP 18013 2002 15267 Brown +POP 18015 2002 20340 Carroll +POP 18017 2002 40516 Cass +POP 18019 2002 97988 Clark +POP 18021 2002 26559 Clay +POP 18023 2002 34080 Clinton +POP 18025 2002 11076 Crawford +POP 18027 2002 29817 Daviess +POP 18029 2002 47309 Dearborn +POP 18031 2002 24656 Decatur +POP 18033 2002 40740 De Kalb +POP 18035 2002 118924 Delaware +POP 18037 2002 40030 Dubois +POP 18039 2002 185900 Elkhart +POP 18041 2002 25138 Fayette +POP 18043 2002 71454 Floyd +POP 18045 2002 17822 Fountain +POP 18047 2002 22547 Franklin +POP 18049 2002 20645 Fulton +POP 18051 2002 32673 Gibson +POP 18053 2002 72390 Grant +POP 18055 2002 33147 Greene +POP 18057 2002 208628 Hamilton +POP 18059 2002 58273 Hancock +POP 18061 2002 35268 Harrison +POP 18063 2002 114959 Hendricks +POP 18065 2002 48076 Henry +POP 18067 2002 84725 Howard +POP 18069 2002 38271 Huntington +POP 18071 2002 41547 Jackson +POP 18073 2002 30720 Jasper +POP 18075 2002 21698 Jay +POP 18077 2002 32083 Jefferson +POP 18079 2002 28218 Jennings +POP 18081 2002 121598 Johnson +POP 18083 2002 38992 Knox +POP 18085 2002 74954 Kosciusko +POP 18087 2002 35691 Lagrange +POP 18089 2002 486105 Lake +POP 18091 2002 110233 La Porte +POP 18093 2002 46121 Lawrence +POP 18095 2002 131976 Madison +POP 18097 2002 862451 Marion +POP 18099 2002 45804 Marshall +POP 18101 2002 10382 Martin +POP 18103 2002 36375 Miami +POP 18105 2002 119937 Monroe +POP 18107 2002 37913 Montgomery +POP 18109 2002 67981 Morgan +POP 18111 2002 14365 Newton +POP 18113 2002 46946 Noble +POP 18115 2002 5764 Ohio +POP 18117 2002 19463 Orange +POP 18119 2002 22488 Owen +POP 18121 2002 17254 Parke +POP 18123 2002 18868 Perry +POP 18125 2002 12955 Pike +POP 18127 2002 150693 Porter +POP 18129 2002 27041 Posey +POP 18131 2002 13744 Pulaski +POP 18133 2002 36407 Putnam +POP 18135 2002 27109 Randolph +POP 18137 2002 27279 Ripley +POP 18139 2002 17979 Rush +POP 18141 2002 265960 St. Joseph +POP 18143 2002 23394 Scott +POP 18145 2002 43777 Shelby +POP 18147 2002 20288 Spencer +POP 18149 2002 22594 Starke +POP 18151 2002 33484 Steuben +POP 18153 2002 21850 Sullivan +POP 18155 2002 9491 Switzerland +POP 18157 2002 149933 Tippecanoe +POP 18159 2002 16569 Tipton +POP 18161 2002 7349 Union +POP 18163 2002 172052 Vanderburgh +POP 18165 2002 16575 Vermillion +POP 18167 2002 104622 Vigo +POP 18169 2002 34525 Wabash +POP 18171 2002 8684 Warren +POP 18173 2002 53622 Warrick +POP 18175 2002 27678 Washington +POP 18177 2002 70444 Wayne +POP 18179 2002 27893 Wells +POP 18181 2002 25181 White +POP 18183 2002 31428 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_RAIL.ALO new file mode 100644 index 0000000..26a9407 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_RAIL.ALO @@ -0,0 +1,119 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 18000 2002 22599.980 IN +RR 18001 2002 7.420 Adams +RR 18003 2002 839.220 Allen +RR 18005 2002 0.000 Bartholomew +RR 18007 2002 0.000 Benton +RR 18009 2002 172.760 Blackford +RR 18011 2002 32.860 Boone +RR 18013 2002 0.000 Brown +RR 18015 2002 248.250 Carroll +RR 18017 2002 147.240 Cass +RR 18019 2002 155.360 Clark +RR 18021 2002 218.100 Clay +RR 18023 2002 54.130 Clinton +RR 18025 2002 194.130 Crawford +RR 18027 2002 88.520 Daviess +RR 18029 2002 54.070 Dearborn +RR 18031 2002 0.000 Decatur +RR 18033 2002 979.730 De Kalb +RR 18035 2002 451.340 Delaware +RR 18037 2002 234.510 Dubois +RR 18039 2002 979.880 Elkhart +RR 18041 2002 39.260 Fayette +RR 18043 2002 247.420 Floyd +RR 18045 2002 261.950 Fountain +RR 18047 2002 4.310 Franklin +RR 18049 2002 0.000 Fulton +RR 18051 2002 498.030 Gibson +RR 18053 2002 88.450 Grant +RR 18055 2002 147.470 Greene +RR 18057 2002 0.000 Hamilton +RR 18059 2002 515.390 Hancock +RR 18061 2002 175.280 Harrison +RR 18063 2002 304.520 Hendricks +RR 18065 2002 149.710 Henry +RR 18067 2002 0.000 Howard +RR 18069 2002 319.240 Huntington +RR 18071 2002 52.510 Jackson +RR 18073 2002 54.640 Jasper +RR 18075 2002 13.170 Jay +RR 18077 2002 0.000 Jefferson +RR 18079 2002 31.460 Jennings +RR 18081 2002 0.000 Johnson +RR 18083 2002 427.380 Knox +RR 18085 2002 786.630 Kosciusko +RR 18087 2002 0.000 Lagrange +RR 18089 2002 1316.070 Lake +RR 18091 2002 1296.530 La Porte +RR 18093 2002 98.370 Lawrence +RR 18095 2002 797.870 Madison +RR 18097 2002 1004.670 Marion +RR 18099 2002 584.910 Marshall +RR 18101 2002 100.290 Martin +RR 18103 2002 206.500 Miami +RR 18105 2002 58.640 Monroe +RR 18107 2002 47.160 Montgomery +RR 18109 2002 0.000 Morgan +RR 18111 2002 37.500 Newton +RR 18113 2002 841.200 Noble +RR 18115 2002 0.000 Ohio +RR 18117 2002 117.180 Orange +RR 18119 2002 0.000 Owen +RR 18121 2002 63.600 Parke +RR 18123 2002 0.000 Perry +RR 18125 2002 93.740 Pike +RR 18127 2002 1105.210 Porter +RR 18129 2002 16.270 Posey +RR 18131 2002 5.210 Pulaski +RR 18133 2002 390.080 Putnam +RR 18135 2002 261.540 Randolph +RR 18137 2002 34.030 Ripley +RR 18139 2002 33.780 Rush +RR 18141 2002 1654.220 St. Joseph +RR 18143 2002 0.000 Scott +RR 18145 2002 64.760 Shelby +RR 18147 2002 15.640 Spencer +RR 18149 2002 172.190 Starke +RR 18151 2002 0.000 Steuben +RR 18153 2002 318.250 Sullivan +RR 18155 2002 0.000 Switzerland +RR 18157 2002 321.140 Tippecanoe +RR 18159 2002 24.520 Tipton +RR 18161 2002 53.390 Union +RR 18163 2002 330.790 Vanderburgh +RR 18165 2002 313.310 Vermillion +RR 18167 2002 541.890 Vigo +RR 18169 2002 316.640 Wabash +RR 18171 2002 120.080 Warren +RR 18173 2002 19.840 Warrick +RR 18175 2002 106.060 Washington +RR 18177 2002 137.100 Wayne +RR 18179 2002 197.770 Wells +RR 18181 2002 58.970 White +RR 18183 2002 348.730 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_RVPRK.ALO new file mode 100644 index 0000000..9c38eec --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_RVPRK.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 18000 2002 125 IN +RVP 18001 2002 1 Adams +RVP 18003 2002 5 Allen +RVP 18005 2002 2 Bartholomew +RVP 18007 2002 0 Benton +RVP 18009 2002 0 Blackford +RVP 18011 2002 1 Boone +RVP 18013 2002 5 Brown +RVP 18015 2002 1 Carroll +RVP 18017 2002 0 Cass +RVP 18019 2002 2 Clark +RVP 18021 2002 2 Clay +RVP 18023 2002 0 Clinton +RVP 18025 2002 0 Crawford +RVP 18027 2002 1 Daviess +RVP 18029 2002 0 Dearborn +RVP 18031 2002 0 Decatur +RVP 18033 2002 3 De Kalb +RVP 18035 2002 1 Delaware +RVP 18037 2002 0 Dubois +RVP 18039 2002 3 Elkhart +RVP 18041 2002 1 Fayette +RVP 18043 2002 0 Floyd +RVP 18045 2002 1 Fountain +RVP 18047 2002 1 Franklin +RVP 18049 2002 0 Fulton +RVP 18051 2002 2 Gibson +RVP 18053 2002 1 Grant +RVP 18055 2002 0 Greene +RVP 18057 2002 1 Hamilton +RVP 18059 2002 1 Hancock +RVP 18061 2002 0 Harrison +RVP 18063 2002 1 Hendricks +RVP 18065 2002 1 Henry +RVP 18067 2002 0 Howard +RVP 18069 2002 0 Huntington +RVP 18071 2002 2 Jackson +RVP 18073 2002 1 Jasper +RVP 18075 2002 1 Jay +RVP 18077 2002 1 Jefferson +RVP 18079 2002 0 Jennings +RVP 18081 2002 2 Johnson +RVP 18083 2002 0 Knox +RVP 18085 2002 9 Kosciusko +RVP 18087 2002 6 Lagrange +RVP 18089 2002 0 Lake +RVP 18091 2002 3 La Porte +RVP 18093 2002 2 Lawrence +RVP 18095 2002 4 Madison +RVP 18097 2002 3 Marion +RVP 18099 2002 2 Marshall +RVP 18101 2002 0 Martin +RVP 18103 2002 0 Miami +RVP 18105 2002 5 Monroe +RVP 18107 2002 1 Montgomery +RVP 18109 2002 0 Morgan +RVP 18111 2002 4 Newton +RVP 18113 2002 1 Noble +RVP 18115 2002 0 Ohio +RVP 18117 2002 1 Orange +RVP 18119 2002 0 Owen +RVP 18121 2002 1 Parke +RVP 18123 2002 1 Perry +RVP 18125 2002 0 Pike +RVP 18127 2002 6 Porter +RVP 18129 2002 0 Posey +RVP 18131 2002 0 Pulaski +RVP 18133 2002 0 Putnam +RVP 18135 2002 1 Randolph +RVP 18137 2002 2 Ripley +RVP 18139 2002 0 Rush +RVP 18141 2002 3 St. Joseph +RVP 18143 2002 1 Scott +RVP 18145 2002 0 Shelby +RVP 18147 2002 1 Spencer +RVP 18149 2002 0 Starke +RVP 18151 2002 7 Steuben +RVP 18153 2002 0 Sullivan +RVP 18155 2002 1 Switzerland +RVP 18157 2002 3 Tippecanoe +RVP 18159 2002 0 Tipton +RVP 18161 2002 2 Union +RVP 18163 2002 1 Vanderburgh +RVP 18165 2002 1 Vermillion +RVP 18167 2002 2 Vigo +RVP 18169 2002 1 Wabash +RVP 18171 2002 1 Warren +RVP 18173 2002 1 Warrick +RVP 18175 2002 0 Washington +RVP 18177 2002 2 Wayne +RVP 18179 2002 0 Wells +RVP 18181 2002 2 White +RVP 18183 2002 0 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_SBC.ALO new file mode 100644 index 0000000..78821d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_SBC.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 18000 2002 7648 IN +SBC 18001 2002 69 Adams +SBC 18003 2002 1090 Allen +SBC 18005 2002 51 Bartholomew +SBC 18007 2002 13 Benton +SBC 18009 2002 19 Blackford +SBC 18011 2002 220 Boone +SBC 18013 2002 21 Brown +SBC 18015 2002 28 Carroll +SBC 18017 2002 55 Cass +SBC 18019 2002 80 Clark +SBC 18021 2002 11 Clay +SBC 18023 2002 18 Clinton +SBC 18025 2002 0 Crawford +SBC 18027 2002 40 Daviess +SBC 18029 2002 64 Dearborn +SBC 18031 2002 33 Decatur +SBC 18033 2002 55 De Kalb +SBC 18035 2002 66 Delaware +SBC 18037 2002 0 Dubois +SBC 18039 2002 165 Elkhart +SBC 18041 2002 34 Fayette +SBC 18043 2002 114 Floyd +SBC 18045 2002 24 Fountain +SBC 18047 2002 30 Franklin +SBC 18049 2002 28 Fulton +SBC 18051 2002 0 Gibson +SBC 18053 2002 98 Grant +SBC 18055 2002 45 Greene +SBC 18057 2002 624 Hamilton +SBC 18059 2002 128 Hancock +SBC 18061 2002 0 Harrison +SBC 18063 2002 113 Hendricks +SBC 18065 2002 30 Henry +SBC 18067 2002 114 Howard +SBC 18069 2002 43 Huntington +SBC 18071 2002 13 Jackson +SBC 18073 2002 14 Jasper +SBC 18075 2002 0 Jay +SBC 18077 2002 40 Jefferson +SBC 18079 2002 38 Jennings +SBC 18081 2002 116 Johnson +SBC 18083 2002 84 Knox +SBC 18085 2002 101 Kosciusko +SBC 18087 2002 48 Lagrange +SBC 18089 2002 395 Lake +SBC 18091 2002 96 La Porte +SBC 18093 2002 31 Lawrence +SBC 18095 2002 121 Madison +SBC 18097 2002 1156 Marion +SBC 18099 2002 3 Marshall +SBC 18101 2002 14 Martin +SBC 18103 2002 49 Miami +SBC 18105 2002 163 Monroe +SBC 18107 2002 7 Montgomery +SBC 18109 2002 228 Morgan +SBC 18111 2002 19 Newton +SBC 18113 2002 37 Noble +SBC 18115 2002 8 Ohio +SBC 18117 2002 0 Orange +SBC 18119 2002 30 Owen +SBC 18121 2002 23 Parke +SBC 18123 2002 0 Perry +SBC 18125 2002 0 Pike +SBC 18127 2002 270 Porter +SBC 18129 2002 0 Posey +SBC 18131 2002 19 Pulaski +SBC 18133 2002 49 Putnam +SBC 18135 2002 37 Randolph +SBC 18137 2002 37 Ripley +SBC 18139 2002 24 Rush +SBC 18141 2002 314 St. Joseph +SBC 18143 2002 32 Scott +SBC 18145 2002 59 Shelby +SBC 18147 2002 0 Spencer +SBC 18149 2002 31 Starke +SBC 18151 2002 45 Steuben +SBC 18153 2002 9 Sullivan +SBC 18155 2002 0 Switzerland +SBC 18157 2002 114 Tippecanoe +SBC 18159 2002 10 Tipton +SBC 18161 2002 10 Union +SBC 18163 2002 0 Vanderburgh +SBC 18165 2002 22 Vermillion +SBC 18167 2002 51 Vigo +SBC 18169 2002 47 Wabash +SBC 18171 2002 0 Warren +SBC 18173 2002 0 Warrick +SBC 18175 2002 0 Washington +SBC 18177 2002 16 Wayne +SBC 18179 2002 38 Wells +SBC 18181 2002 22 White +SBC 18183 2002 35 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_SBR.ALO new file mode 100644 index 0000000..6e86d24 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_SBR.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 18000 2002 2412097 IN +SBR 18001 2002 12599 Adams +SBR 18003 2002 143089 Allen +SBR 18005 2002 30410 Bartholomew +SBR 18007 2002 3842 Benton +SBR 18009 2002 6288 Blackford +SBR 18011 2002 19172 Boone +SBR 18013 2002 7464 Brown +SBR 18015 2002 8845 Carroll +SBR 18017 2002 16881 Cass +SBR 18019 2002 43318 Clark +SBR 18021 2002 11356 Clay +SBR 18023 2002 13391 Clinton +SBR 18025 2002 0 Crawford +SBR 18027 2002 12079 Daviess +SBR 18029 2002 18545 Dearborn +SBR 18031 2002 10219 Decatur +SBR 18033 2002 16540 De Kalb +SBR 18035 2002 51739 Delaware +SBR 18037 2002 0 Dubois +SBR 18039 2002 72488 Elkhart +SBR 18041 2002 11110 Fayette +SBR 18043 2002 29885 Floyd +SBR 18045 2002 7792 Fountain +SBR 18047 2002 8854 Franklin +SBR 18049 2002 9289 Fulton +SBR 18051 2002 0 Gibson +SBR 18053 2002 31130 Grant +SBR 18055 2002 15466 Greene +SBR 18057 2002 78813 Hamilton +SBR 18059 2002 23570 Hancock +SBR 18061 2002 0 Harrison +SBR 18063 2002 43880 Hendricks +SBR 18065 2002 21007 Henry +SBR 18067 2002 38349 Howard +SBR 18069 2002 15525 Huntington +SBR 18071 2002 17676 Jackson +SBR 18073 2002 11825 Jasper +SBR 18075 2002 9219 Jay +SBR 18077 2002 13798 Jefferson +SBR 18079 2002 12140 Jennings +SBR 18081 2002 48364 Johnson +SBR 18083 2002 17396 Knox +SBR 18085 2002 33204 Kosciusko +SBR 18087 2002 13413 Lagrange +SBR 18089 2002 198668 Lake +SBR 18091 2002 46420 La Porte +SBR 18093 2002 20922 Lawrence +SBR 18095 2002 57582 Madison +SBR 18097 2002 398676 Marion +SBR 18099 2002 18629 Marshall +SBR 18101 2002 4865 Martin +SBR 18103 2002 15543 Miami +SBR 18105 2002 52521 Monroe +SBR 18107 2002 15999 Montgomery +SBR 18109 2002 27169 Morgan +SBR 18111 2002 5898 Newton +SBR 18113 2002 18754 Noble +SBR 18115 2002 2485 Ohio +SBR 18117 2002 0 Orange +SBR 18119 2002 10131 Owen +SBR 18121 2002 7672 Parke +SBR 18123 2002 0 Perry +SBR 18125 2002 0 Pike +SBR 18127 2002 60355 Porter +SBR 18129 2002 0 Posey +SBR 18131 2002 6101 Pulaski +SBR 18133 2002 13724 Putnam +SBR 18135 2002 11860 Randolph +SBR 18137 2002 10961 Ripley +SBR 18139 2002 7426 Rush +SBR 18141 2002 109463 St. Joseph +SBR 18143 2002 10278 Scott +SBR 18145 2002 17901 Shelby +SBR 18147 2002 0 Spencer +SBR 18149 2002 10431 Starke +SBR 18151 2002 17958 Steuben +SBR 18153 2002 8979 Sullivan +SBR 18155 2002 4542 Switzerland +SBR 18157 2002 61778 Tippecanoe +SBR 18159 2002 6941 Tipton +SBR 18161 2002 3188 Union +SBR 18163 2002 0 Vanderburgh +SBR 18165 2002 7478 Vermillion +SBR 18167 2002 45766 Vigo +SBR 18169 2002 14195 Wabash +SBR 18171 2002 3624 Warren +SBR 18173 2002 0 Warrick +SBR 18175 2002 0 Washington +SBR 18177 2002 30631 Wayne +SBR 18179 2002 11227 Wells +SBR 18181 2002 12427 White +SBR 18183 2002 12959 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_SNOWM.ALO new file mode 100644 index 0000000..3c80a9e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_SNOWM.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 18000 2002 448 IN +SNM 18001 2002 0 Adams +SNM 18003 2002 0 Allen +SNM 18005 2002 0 Bartholomew +SNM 18007 2002 0 Benton +SNM 18009 2002 0 Blackford +SNM 18011 2002 0 Boone +SNM 18013 2002 0 Brown +SNM 18015 2002 0 Carroll +SNM 18017 2002 0 Cass +SNM 18019 2002 0 Clark +SNM 18021 2002 0 Clay +SNM 18023 2002 0 Clinton +SNM 18025 2002 0 Crawford +SNM 18027 2002 0 Daviess +SNM 18029 2002 0 Dearborn +SNM 18031 2002 0 Decatur +SNM 18033 2002 25 De Kalb +SNM 18035 2002 0 Delaware +SNM 18037 2002 0 Dubois +SNM 18039 2002 0 Elkhart +SNM 18041 2002 0 Fayette +SNM 18043 2002 0 Floyd +SNM 18045 2002 0 Fountain +SNM 18047 2002 0 Franklin +SNM 18049 2002 48 Fulton +SNM 18051 2002 0 Gibson +SNM 18053 2002 0 Grant +SNM 18055 2002 0 Greene +SNM 18057 2002 0 Hamilton +SNM 18059 2002 0 Hancock +SNM 18061 2002 0 Harrison +SNM 18063 2002 0 Hendricks +SNM 18065 2002 0 Henry +SNM 18067 2002 0 Howard +SNM 18069 2002 0 Huntington +SNM 18071 2002 0 Jackson +SNM 18073 2002 33 Jasper +SNM 18075 2002 0 Jay +SNM 18077 2002 0 Jefferson +SNM 18079 2002 0 Jennings +SNM 18081 2002 0 Johnson +SNM 18083 2002 0 Knox +SNM 18085 2002 13 Kosciusko +SNM 18087 2002 28 Lagrange +SNM 18089 2002 0 Lake +SNM 18091 2002 9 La Porte +SNM 18093 2002 0 Lawrence +SNM 18095 2002 0 Madison +SNM 18097 2002 0 Marion +SNM 18099 2002 22 Marshall +SNM 18101 2002 0 Martin +SNM 18103 2002 0 Miami +SNM 18105 2002 0 Monroe +SNM 18107 2002 0 Montgomery +SNM 18109 2002 0 Morgan +SNM 18111 2002 70 Newton +SNM 18113 2002 21 Noble +SNM 18115 2002 0 Ohio +SNM 18117 2002 0 Orange +SNM 18119 2002 0 Owen +SNM 18121 2002 0 Parke +SNM 18123 2002 0 Perry +SNM 18125 2002 0 Pike +SNM 18127 2002 0 Porter +SNM 18129 2002 0 Posey +SNM 18131 2002 73 Pulaski +SNM 18133 2002 0 Putnam +SNM 18135 2002 0 Randolph +SNM 18137 2002 0 Ripley +SNM 18139 2002 0 Rush +SNM 18141 2002 0 St. Joseph +SNM 18143 2002 0 Scott +SNM 18145 2002 0 Shelby +SNM 18147 2002 0 Spencer +SNM 18149 2002 44 Starke +SNM 18151 2002 30 Steuben +SNM 18153 2002 0 Sullivan +SNM 18155 2002 0 Switzerland +SNM 18157 2002 0 Tippecanoe +SNM 18159 2002 0 Tipton +SNM 18161 2002 0 Union +SNM 18163 2002 0 Vanderburgh +SNM 18165 2002 0 Vermillion +SNM 18167 2002 0 Vigo +SNM 18169 2002 0 Wabash +SNM 18171 2002 0 Warren +SNM 18173 2002 0 Warrick +SNM 18175 2002 0 Washington +SNM 18177 2002 0 Wayne +SNM 18179 2002 0 Wells +SNM 18181 2002 0 White +SNM 18183 2002 32 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_WIB.ALO new file mode 100644 index 0000000..a69acf9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_WIB.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 18000 1990 1035 IN +WIB 18001 1990 1 Adams +WIB 18003 1990 7 Allen +WIB 18005 1990 7 Bartholomew +WIB 18007 1990 0 Benton +WIB 18009 1990 1 Blackford +WIB 18011 1990 1 Boone +WIB 18013 1990 11 Brown +WIB 18015 1990 7 Carroll +WIB 18017 1990 5 Cass +WIB 18019 1990 3 Clark +WIB 18021 1990 7 Clay +WIB 18023 1990 0 Clinton +WIB 18025 1990 8 Crawford +WIB 18027 1990 16 Daviess +WIB 18029 1990 5 Dearborn +WIB 18031 1990 2 Decatur +WIB 18033 1990 2 De Kalb +WIB 18035 1990 7 Delaware +WIB 18037 1990 13 Dubois +WIB 18039 1990 10 Elkhart +WIB 18041 1990 0 Fayette +WIB 18043 1990 1 Floyd +WIB 18045 1990 6 Fountain +WIB 18047 1990 14 Franklin +WIB 18049 1990 7 Fulton +WIB 18051 1990 26 Gibson +WIB 18053 1990 2 Grant +WIB 18055 1990 10 Greene +WIB 18057 1990 12 Hamilton +WIB 18059 1990 1 Hancock +WIB 18061 1990 4 Harrison +WIB 18063 1990 1 Hendricks +WIB 18065 1990 5 Henry +WIB 18067 1990 2 Howard +WIB 18069 1990 14 Huntington +WIB 18071 1990 11 Jackson +WIB 18073 1990 4 Jasper +WIB 18075 1990 0 Jay +WIB 18077 1990 4 Jefferson +WIB 18079 1990 3 Jennings +WIB 18081 1990 4 Johnson +WIB 18083 1990 21 Knox +WIB 18085 1990 44 Kosciusko +WIB 18087 1990 19 Lagrange +WIB 18089 1990 126 Lake +WIB 18091 1990 42 La Porte +WIB 18093 1990 8 Lawrence +WIB 18095 1990 2 Madison +WIB 18097 1990 17 Marion +WIB 18099 1990 15 Marshall +WIB 18101 1990 11 Martin +WIB 18103 1990 4 Miami +WIB 18105 1990 44 Monroe +WIB 18107 1990 2 Montgomery +WIB 18109 1990 8 Morgan +WIB 18111 1990 4 Newton +WIB 18113 1990 17 Noble +WIB 18115 1990 2 Ohio +WIB 18117 1990 22 Orange +WIB 18119 1990 7 Owen +WIB 18121 1990 14 Parke +WIB 18123 1990 13 Perry +WIB 18125 1990 13 Pike +WIB 18127 1990 90 Porter +WIB 18129 1990 28 Posey +WIB 18131 1990 2 Pulaski +WIB 18133 1990 6 Putnam +WIB 18135 1990 1 Randolph +WIB 18137 1990 4 Ripley +WIB 18139 1990 1 Rush +WIB 18141 1990 9 St. Joseph +WIB 18143 1990 6 Scott +WIB 18145 1990 1 Shelby +WIB 18147 1990 7 Spencer +WIB 18149 1990 8 Starke +WIB 18151 1990 36 Steuben +WIB 18153 1990 18 Sullivan +WIB 18155 1990 6 Switzerland +WIB 18157 1990 8 Tippecanoe +WIB 18159 1990 0 Tipton +WIB 18161 1990 10 Union +WIB 18163 1990 3 Vanderburgh +WIB 18165 1990 8 Vermillion +WIB 18167 1990 19 Vigo +WIB 18169 1990 20 Wabash +WIB 18171 1990 4 Warren +WIB 18173 1990 18 Warrick +WIB 18175 1990 5 Washington +WIB 18177 1990 2 Wayne +WIB 18179 1990 1 Wells +WIB 18181 1990 9 White +WIB 18183 1990 6 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/IN_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/IN_WOB.ALO new file mode 100644 index 0000000..a89e5d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/IN_WOB.ALO @@ -0,0 +1,117 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 18000 1990 839 IN +WOB 18001 1990 1 Adams +WOB 18003 1990 7 Allen +WOB 18005 1990 7 Bartholomew +WOB 18007 1990 0 Benton +WOB 18009 1990 1 Blackford +WOB 18011 1990 1 Boone +WOB 18013 1990 11 Brown +WOB 18015 1990 7 Carroll +WOB 18017 1990 5 Cass +WOB 18019 1990 3 Clark +WOB 18021 1990 7 Clay +WOB 18023 1990 0 Clinton +WOB 18025 1990 8 Crawford +WOB 18027 1990 16 Daviess +WOB 18029 1990 5 Dearborn +WOB 18031 1990 2 Decatur +WOB 18033 1990 2 De Kalb +WOB 18035 1990 7 Delaware +WOB 18037 1990 13 Dubois +WOB 18039 1990 10 Elkhart +WOB 18041 1990 0 Fayette +WOB 18043 1990 1 Floyd +WOB 18045 1990 6 Fountain +WOB 18047 1990 14 Franklin +WOB 18049 1990 7 Fulton +WOB 18051 1990 26 Gibson +WOB 18053 1990 2 Grant +WOB 18055 1990 10 Greene +WOB 18057 1990 12 Hamilton +WOB 18059 1990 1 Hancock +WOB 18061 1990 4 Harrison +WOB 18063 1990 1 Hendricks +WOB 18065 1990 5 Henry +WOB 18067 1990 2 Howard +WOB 18069 1990 14 Huntington +WOB 18071 1990 11 Jackson +WOB 18073 1990 4 Jasper +WOB 18075 1990 0 Jay +WOB 18077 1990 4 Jefferson +WOB 18079 1990 3 Jennings +WOB 18081 1990 4 Johnson +WOB 18083 1990 21 Knox +WOB 18085 1990 44 Kosciusko +WOB 18087 1990 19 Lagrange +WOB 18089 1990 28 Lake +WOB 18091 1990 18 La Porte +WOB 18093 1990 8 Lawrence +WOB 18095 1990 2 Madison +WOB 18097 1990 17 Marion +WOB 18099 1990 15 Marshall +WOB 18101 1990 11 Martin +WOB 18103 1990 4 Miami +WOB 18105 1990 44 Monroe +WOB 18107 1990 2 Montgomery +WOB 18109 1990 8 Morgan +WOB 18111 1990 4 Newton +WOB 18113 1990 17 Noble +WOB 18115 1990 2 Ohio +WOB 18117 1990 22 Orange +WOB 18119 1990 7 Owen +WOB 18121 1990 14 Parke +WOB 18123 1990 13 Perry +WOB 18125 1990 13 Pike +WOB 18127 1990 16 Porter +WOB 18129 1990 28 Posey +WOB 18131 1990 2 Pulaski +WOB 18133 1990 6 Putnam +WOB 18135 1990 1 Randolph +WOB 18137 1990 4 Ripley +WOB 18139 1990 1 Rush +WOB 18141 1990 9 St. Joseph +WOB 18143 1990 6 Scott +WOB 18145 1990 1 Shelby +WOB 18147 1990 7 Spencer +WOB 18149 1990 8 Starke +WOB 18151 1990 36 Steuben +WOB 18153 1990 18 Sullivan +WOB 18155 1990 6 Switzerland +WOB 18157 1990 8 Tippecanoe +WOB 18159 1990 0 Tipton +WOB 18161 1990 10 Union +WOB 18163 1990 3 Vanderburgh +WOB 18165 1990 8 Vermillion +WOB 18167 1990 19 Vigo +WOB 18169 1990 20 Wabash +WOB 18171 1990 4 Warren +WOB 18173 1990 18 Warrick +WOB 18175 1990 5 Washington +WOB 18177 1990 2 Wayne +WOB 18179 1990 1 Wells +WOB 18181 1990 9 White +WOB 18183 1990 6 Whitley +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_AIRTR.ALO new file mode 100644 index 0000000..3616b4e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_AIRTR.ALO @@ -0,0 +1,132 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 20000 2002 139.027 KS +AIR 20001 2002 0.024 Allen +AIR 20003 2002 0.000 Anderson +AIR 20005 2002 0.040 Atchison +AIR 20007 2002 0.000 Barber +AIR 20009 2002 0.060 Barton +AIR 20011 2002 0.029 Bourbon +AIR 20013 2002 0.000 Brown +AIR 20015 2002 0.160 Butler +AIR 20017 2002 0.000 Chase +AIR 20019 2002 0.000 Chautauqua +AIR 20021 2002 0.000 Cherokee +AIR 20023 2002 0.012 Cheyenne +AIR 20025 2002 0.000 Clark +AIR 20027 2002 0.010 Clay +AIR 20029 2002 0.000 Cloud +AIR 20031 2002 0.030 Coffey +AIR 20033 2002 0.000 Comanche +AIR 20035 2002 0.029 Cowley +AIR 20037 2002 0.050 Crawford +AIR 20039 2002 0.029 Decatur +AIR 20041 2002 0.190 Dickinson +AIR 20043 2002 0.000 Doniphan +AIR 20045 2002 0.070 Douglas +AIR 20047 2002 0.000 Edwards +AIR 20049 2002 0.000 Elk +AIR 20051 2002 0.224 Ellis +AIR 20053 2002 0.000 Ellsworth +AIR 20055 2002 0.417 Finney +AIR 20057 2002 9.139 Ford +AIR 20059 2002 0.040 Franklin +AIR 20061 2002 0.024 Geary +AIR 20063 2002 0.000 Gove +AIR 20065 2002 0.000 Graham +AIR 20067 2002 0.059 Grant +AIR 20069 2002 0.000 Gray +AIR 20071 2002 0.000 Greeley +AIR 20073 2002 0.029 Greenwood +AIR 20075 2002 0.000 Hamilton +AIR 20077 2002 0.010 Harper +AIR 20079 2002 0.197 Harvey +AIR 20081 2002 0.000 Haskell +AIR 20083 2002 0.000 Hodgeman +AIR 20085 2002 0.000 Jackson +AIR 20087 2002 0.000 Jefferson +AIR 20089 2002 0.000 Jewell +AIR 20091 2002 0.910 Johnson +AIR 20093 2002 0.000 Kearny +AIR 20095 2002 0.020 Kingman +AIR 20097 2002 0.000 Kiowa +AIR 20099 2002 0.039 Labette +AIR 20101 2002 0.000 Lane +AIR 20103 2002 0.000 Leavenworth +AIR 20105 2002 0.000 Lincoln +AIR 20107 2002 0.000 Linn +AIR 20109 2002 0.019 Logan +AIR 20111 2002 0.080 Lyon +AIR 20113 2002 0.049 McPherson +AIR 20115 2002 0.000 Marion +AIR 20117 2002 0.000 Marshall +AIR 20119 2002 0.010 Meade +AIR 20121 2002 0.000 Miami +AIR 20123 2002 0.017 Mitchell +AIR 20125 2002 0.051 Montgomery +AIR 20127 2002 0.050 Morris +AIR 20129 2002 0.020 Morton +AIR 20131 2002 0.000 Nemaha +AIR 20133 2002 0.029 Neosho +AIR 20135 2002 0.000 Ness +AIR 20137 2002 0.013 Norton +AIR 20139 2002 0.000 Osage +AIR 20141 2002 0.000 Osborne +AIR 20143 2002 0.000 Ottawa +AIR 20145 2002 0.030 Pawnee +AIR 20147 2002 0.011 Phillips +AIR 20149 2002 0.000 Pottawatomie +AIR 20151 2002 0.034 Pratt +AIR 20153 2002 0.010 Rawlins +AIR 20155 2002 0.350 Reno +AIR 20157 2002 0.019 Republic +AIR 20159 2002 0.029 Rice +AIR 20161 2002 0.550 Riley +AIR 20163 2002 0.000 Rooks +AIR 20165 2002 0.000 Rush +AIR 20167 2002 0.029 Russell +AIR 20169 2002 1.310 Saline +AIR 20171 2002 0.000 Scott +AIR 20173 2002 113.200 Sedgwick +AIR 20175 2002 9.650 Seward +AIR 20177 2002 1.430 Shawnee +AIR 20179 2002 0.000 Sheridan +AIR 20181 2002 0.040 Sherman +AIR 20183 2002 0.010 Smith +AIR 20185 2002 0.000 Stafford +AIR 20187 2002 0.060 Stanton +AIR 20189 2002 0.020 Stevens +AIR 20191 2002 0.040 Sumner +AIR 20193 2002 0.020 Thomas +AIR 20195 2002 0.000 Trego +AIR 20197 2002 0.000 Wabaunsee +AIR 20199 2002 0.000 Wallace +AIR 20201 2002 0.007 Washington +AIR 20203 2002 0.000 Wichita +AIR 20205 2002 0.000 Wilson +AIR 20207 2002 0.000 Woodson +AIR 20209 2002 0.000 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_COAL.ALO new file mode 100644 index 0000000..4d9d739 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_COAL.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 20000 2002 0 KS +MIN 20001 2002 0 Allen +MIN 20003 2002 0 Anderson +MIN 20005 2002 0 Atchison +MIN 20007 2002 0 Barber +MIN 20009 2002 0 Barton +MIN 20011 2002 0 Bourbon +MIN 20013 2002 0 Brown +MIN 20015 2002 0 Butler +MIN 20017 2002 0 Chase +MIN 20019 2002 0 Chautauqua +MIN 20021 2002 0 Cherokee +MIN 20023 2002 0 Cheyenne +MIN 20025 2002 0 Clark +MIN 20027 2002 0 Clay +MIN 20029 2002 0 Cloud +MIN 20031 2002 0 Coffey +MIN 20033 2002 0 Comanche +MIN 20035 2002 0 Cowley +MIN 20037 2002 0 Crawford +MIN 20039 2002 0 Decatur +MIN 20041 2002 0 Dickinson +MIN 20043 2002 0 Doniphan +MIN 20045 2002 0 Douglas +MIN 20047 2002 0 Edwards +MIN 20049 2002 0 Elk +MIN 20051 2002 0 Ellis +MIN 20053 2002 0 Ellsworth +MIN 20055 2002 0 Finney +MIN 20057 2002 0 Ford +MIN 20059 2002 0 Franklin +MIN 20061 2002 0 Geary +MIN 20063 2002 0 Gove +MIN 20065 2002 0 Graham +MIN 20067 2002 0 Grant +MIN 20069 2002 0 Gray +MIN 20071 2002 0 Greeley +MIN 20073 2002 0 Greenwood +MIN 20075 2002 0 Hamilton +MIN 20077 2002 0 Harper +MIN 20079 2002 0 Harvey +MIN 20081 2002 0 Haskell +MIN 20083 2002 0 Hodgeman +MIN 20085 2002 0 Jackson +MIN 20087 2002 0 Jefferson +MIN 20089 2002 0 Jewell +MIN 20091 2002 0 Johnson +MIN 20093 2002 0 Kearny +MIN 20095 2002 0 Kingman +MIN 20097 2002 0 Kiowa +MIN 20099 2002 0 Labette +MIN 20101 2002 0 Lane +MIN 20103 2002 0 Leavenworth +MIN 20105 2002 0 Lincoln +MIN 20107 2002 0 Linn +MIN 20109 2002 0 Logan +MIN 20111 2002 0 Lyon +MIN 20113 2002 0 McPherson +MIN 20115 2002 0 Marion +MIN 20117 2002 0 Marshall +MIN 20119 2002 0 Meade +MIN 20121 2002 0 Miami +MIN 20123 2002 0 Mitchell +MIN 20125 2002 0 Montgomery +MIN 20127 2002 0 Morris +MIN 20129 2002 0 Morton +MIN 20131 2002 0 Nemaha +MIN 20133 2002 0 Neosho +MIN 20135 2002 0 Ness +MIN 20137 2002 0 Norton +MIN 20139 2002 0 Osage +MIN 20141 2002 0 Osborne +MIN 20143 2002 0 Ottawa +MIN 20145 2002 0 Pawnee +MIN 20147 2002 0 Phillips +MIN 20149 2002 0 Pottawatomie +MIN 20151 2002 0 Pratt +MIN 20153 2002 0 Rawlins +MIN 20155 2002 0 Reno +MIN 20157 2002 0 Republic +MIN 20159 2002 0 Rice +MIN 20161 2002 0 Riley +MIN 20163 2002 0 Rooks +MIN 20165 2002 0 Rush +MIN 20167 2002 0 Russell +MIN 20169 2002 0 Saline +MIN 20171 2002 0 Scott +MIN 20173 2002 0 Sedgwick +MIN 20175 2002 0 Seward +MIN 20177 2002 0 Shawnee +MIN 20179 2002 0 Sheridan +MIN 20181 2002 0 Sherman +MIN 20183 2002 0 Smith +MIN 20185 2002 0 Stafford +MIN 20187 2002 0 Stanton +MIN 20189 2002 0 Stevens +MIN 20191 2002 0 Sumner +MIN 20193 2002 0 Thomas +MIN 20195 2002 0 Trego +MIN 20197 2002 0 Wabaunsee +MIN 20199 2002 0 Wallace +MIN 20201 2002 0 Washington +MIN 20203 2002 0 Wichita +MIN 20205 2002 0 Wilson +MIN 20207 2002 0 Woodson +MIN 20209 2002 0 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_CONST.ALO new file mode 100644 index 0000000..d8e009c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_CONST.ALO @@ -0,0 +1,132 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 20000 2003 4522130 KS +CON 20001 2003 18822 Allen +CON 20003 2003 2035 Anderson +CON 20005 2003 15475 Atchison +CON 20007 2003 2095 Barber +CON 20009 2003 22445 Barton +CON 20011 2003 16623 Bourbon +CON 20013 2003 31849 Brown +CON 20015 2003 91830 Butler +CON 20017 2003 10328 Chase +CON 20019 2003 4387 Chautauqua +CON 20021 2003 13662 Cherokee +CON 20023 2003 3767 Cheyenne +CON 20025 2003 5395 Clark +CON 20027 2003 1597 Clay +CON 20029 2003 6737 Cloud +CON 20031 2003 19977 Coffey +CON 20033 2003 3535 Comanche +CON 20035 2003 41698 Cowley +CON 20037 2003 47217 Crawford +CON 20039 2003 3166 Decatur +CON 20041 2003 10711 Dickinson +CON 20043 2003 5268 Doniphan +CON 20045 2003 171488 Douglas +CON 20047 2003 8626 Edwards +CON 20049 2003 9790 Elk +CON 20051 2003 18939 Ellis +CON 20053 2003 7485 Ellsworth +CON 20055 2003 25799 Finney +CON 20057 2003 37474 Ford +CON 20059 2003 52717 Franklin +CON 20061 2003 93847 Geary +CON 20063 2003 44490 Gove +CON 20065 2003 14500 Graham +CON 20067 2003 3911 Grant +CON 20069 2003 7086 Gray +CON 20071 2003 8179 Greeley +CON 20073 2003 12884 Greenwood +CON 20075 2003 0 Hamilton +CON 20077 2003 2080 Harper +CON 20079 2003 36598 Harvey +CON 20081 2003 5289 Haskell +CON 20083 2003 1958 Hodgeman +CON 20085 2003 26900 Jackson +CON 20087 2003 17845 Jefferson +CON 20089 2003 3741 Jewell +CON 20091 2003 1401462 Johnson +CON 20093 2003 3972 Kearny +CON 20095 2003 7278 Kingman +CON 20097 2003 2053 Kiowa +CON 20099 2003 8555 Labette +CON 20101 2003 2172 Lane +CON 20103 2003 128912 Leavenworth +CON 20105 2003 6306 Lincoln +CON 20107 2003 10391 Linn +CON 20109 2003 585 Logan +CON 20111 2003 34602 Lyon +CON 20113 2003 42905 McPherson +CON 20115 2003 5897 Marion +CON 20117 2003 10371 Marshall +CON 20119 2003 1918 Meade +CON 20121 2003 52306 Miami +CON 20123 2003 4411 Mitchell +CON 20125 2003 36195 Montgomery +CON 20127 2003 3779 Morris +CON 20129 2003 5442 Morton +CON 20131 2003 8356 Nemaha +CON 20133 2003 7978 Neosho +CON 20135 2003 1721 Ness +CON 20137 2003 9744 Norton +CON 20139 2003 34199 Osage +CON 20141 2003 6107 Osborne +CON 20143 2003 6150 Ottawa +CON 20145 2003 46840 Pawnee +CON 20147 2003 5427 Phillips +CON 20149 2003 31528 Pottawatomie +CON 20151 2003 6417 Pratt +CON 20153 2003 1458 Rawlins +CON 20155 2003 45730 Reno +CON 20157 2003 10186 Republic +CON 20159 2003 6691 Rice +CON 20161 2003 60012 Riley +CON 20163 2003 2808 Rooks +CON 20165 2003 3648 Rush +CON 20167 2003 5850 Russell +CON 20169 2003 94967 Saline +CON 20171 2003 14339 Scott +CON 20173 2003 828154 Sedgwick +CON 20175 2003 8718 Seward +CON 20177 2003 309751 Shawnee +CON 20179 2003 6559 Sheridan +CON 20181 2003 2763 Sherman +CON 20183 2003 3107 Smith +CON 20185 2003 3527 Stafford +CON 20187 2003 2219 Stanton +CON 20189 2003 1838 Stevens +CON 20191 2003 11460 Sumner +CON 20193 2003 8565 Thomas +CON 20195 2003 4730 Trego +CON 20197 2003 10346 Wabaunsee +CON 20199 2003 2375 Wallace +CON 20201 2003 6499 Washington +CON 20203 2003 3382 Wichita +CON 20205 2003 4317 Wilson +CON 20207 2003 1167 Woodson +CON 20209 2003 132741 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_FARMS.ALO new file mode 100644 index 0000000..9af3d06 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_FARMS.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 20000 2002 18976719 KS +FRM 20001 2002 137750 Allen +FRM 20003 2002 187811 Anderson +FRM 20005 2002 133189 Atchison +FRM 20007 2002 166751 Barber +FRM 20009 2002 343096 Barton +FRM 20011 2002 113199 Bourbon +FRM 20013 2002 225897 Brown +FRM 20015 2002 257431 Butler +FRM 20017 2002 53930 Chase +FRM 20019 2002 28729 Chautauqua +FRM 20021 2002 194128 Cherokee +FRM 20023 2002 157667 Cheyenne +FRM 20025 2002 63523 Clark +FRM 20027 2002 214127 Clay +FRM 20029 2002 216011 Cloud +FRM 20031 2002 158039 Coffey +FRM 20033 2002 73479 Comanche +FRM 20035 2002 209065 Cowley +FRM 20037 2002 169619 Crawford +FRM 20039 2002 139730 Decatur +FRM 20041 2002 292960 Dickinson +FRM 20043 2002 132184 Doniphan +FRM 20045 2002 98385 Douglas +FRM 20047 2002 189833 Edwards +FRM 20049 2002 50952 Elk +FRM 20051 2002 169866 Ellis +FRM 20053 2002 149317 Ellsworth +FRM 20055 2002 343002 Finney +FRM 20057 2002 246640 Ford +FRM 20059 2002 160239 Franklin +FRM 20061 2002 57235 Geary +FRM 20063 2002 187967 Gove +FRM 20065 2002 145516 Graham +FRM 20067 2002 139785 Grant +FRM 20069 2002 254664 Gray +FRM 20071 2002 95777 Greeley +FRM 20073 2002 85523 Greenwood +FRM 20075 2002 125640 Hamilton +FRM 20077 2002 270411 Harper +FRM 20079 2002 255038 Harvey +FRM 20081 2002 232884 Haskell +FRM 20083 2002 134049 Hodgeman +FRM 20085 2002 114648 Jackson +FRM 20087 2002 128937 Jefferson +FRM 20089 2002 243636 Jewell +FRM 20091 2002 68804 Johnson +FRM 20093 2002 192523 Kearny +FRM 20095 2002 269460 Kingman +FRM 20097 2002 120837 Kiowa +FRM 20099 2002 164774 Labette +FRM 20101 2002 147040 Lane +FRM 20103 2002 90153 Leavenworth +FRM 20105 2002 167528 Lincoln +FRM 20107 2002 117905 Linn +FRM 20109 2002 148081 Logan +FRM 20111 2002 189811 Lyon +FRM 20113 2002 361571 McPherson +FRM 20115 2002 300121 Marion +FRM 20117 2002 308756 Marshall +FRM 20119 2002 191805 Meade +FRM 20121 2002 137317 Miami +FRM 20123 2002 257184 Mitchell +FRM 20125 2002 141529 Montgomery +FRM 20127 2002 123543 Morris +FRM 20129 2002 92163 Morton +FRM 20131 2002 216844 Nemaha +FRM 20133 2002 154536 Neosho +FRM 20135 2002 196398 Ness +FRM 20137 2002 151165 Norton +FRM 20139 2002 162675 Osage +FRM 20141 2002 194223 Osborne +FRM 20143 2002 182752 Ottawa +FRM 20145 2002 230709 Pawnee +FRM 20147 2002 156542 Phillips +FRM 20149 2002 132201 Pottawatomie +FRM 20151 2002 235994 Pratt +FRM 20153 2002 168553 Rawlins +FRM 20155 2002 397103 Reno +FRM 20157 2002 259483 Republic +FRM 20159 2002 247552 Rice +FRM 20161 2002 82267 Riley +FRM 20163 2002 165010 Rooks +FRM 20165 2002 186454 Rush +FRM 20167 2002 156126 Russell +FRM 20169 2002 208242 Saline +FRM 20171 2002 207136 Scott +FRM 20173 2002 354393 Sedgwick +FRM 20175 2002 136820 Seward +FRM 20177 2002 112573 Shawnee +FRM 20179 2002 200131 Sheridan +FRM 20181 2002 234042 Sherman +FRM 20183 2002 234485 Smith +FRM 20185 2002 262865 Stafford +FRM 20187 2002 161584 Stanton +FRM 20189 2002 231500 Stevens +FRM 20191 2002 537273 Sumner +FRM 20193 2002 281825 Thomas +FRM 20195 2002 138125 Trego +FRM 20197 2002 92269 Wabaunsee +FRM 20199 2002 92813 Wallace +FRM 20201 2002 246258 Washington +FRM 20203 2002 167989 Wichita +FRM 20205 2002 159370 Wilson +FRM 20207 2002 93258 Woodson +FRM 20209 2002 8017 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_GOLF.ALO new file mode 100644 index 0000000..0f9552e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_GOLF.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 20000 2002 170 KS +GC 20001 2002 2 Allen +GC 20003 2002 0 Anderson +GC 20005 2002 1 Atchison +GC 20007 2002 1 Barber +GC 20009 2002 4 Barton +GC 20011 2002 1 Bourbon +GC 20013 2002 3 Brown +GC 20015 2002 3 Butler +GC 20017 2002 0 Chase +GC 20019 2002 1 Chautauqua +GC 20021 2002 2 Cherokee +GC 20023 2002 1 Cheyenne +GC 20025 2002 1 Clark +GC 20027 2002 1 Clay +GC 20029 2002 1 Cloud +GC 20031 2002 2 Coffey +GC 20033 2002 1 Comanche +GC 20035 2002 3 Cowley +GC 20037 2002 1 Crawford +GC 20039 2002 1 Decatur +GC 20041 2002 3 Dickinson +GC 20043 2002 0 Doniphan +GC 20045 2002 5 Douglas +GC 20047 2002 1 Edwards +GC 20049 2002 0 Elk +GC 20051 2002 2 Ellis +GC 20053 2002 0 Ellsworth +GC 20055 2002 2 Finney +GC 20057 2002 1 Ford +GC 20059 2002 2 Franklin +GC 20061 2002 1 Geary +GC 20063 2002 0 Gove +GC 20065 2002 0 Graham +GC 20067 2002 0 Grant +GC 20069 2002 0 Gray +GC 20071 2002 1 Greeley +GC 20073 2002 2 Greenwood +GC 20075 2002 0 Hamilton +GC 20077 2002 1 Harper +GC 20079 2002 2 Harvey +GC 20081 2002 1 Haskell +GC 20083 2002 0 Hodgeman +GC 20085 2002 1 Jackson +GC 20087 2002 2 Jefferson +GC 20089 2002 0 Jewell +GC 20091 2002 24 Johnson +GC 20093 2002 0 Kearny +GC 20095 2002 1 Kingman +GC 20097 2002 1 Kiowa +GC 20099 2002 3 Labette +GC 20101 2002 0 Lane +GC 20103 2002 3 Leavenworth +GC 20105 2002 0 Lincoln +GC 20107 2002 1 Linn +GC 20109 2002 1 Logan +GC 20111 2002 1 Lyon +GC 20113 2002 4 McPherson +GC 20115 2002 1 Marion +GC 20117 2002 1 Marshall +GC 20119 2002 2 Meade +GC 20121 2002 4 Miami +GC 20123 2002 1 Mitchell +GC 20125 2002 4 Montgomery +GC 20127 2002 1 Morris +GC 20129 2002 0 Morton +GC 20131 2002 1 Nemaha +GC 20133 2002 3 Neosho +GC 20135 2002 0 Ness +GC 20137 2002 1 Norton +GC 20139 2002 2 Osage +GC 20141 2002 0 Osborne +GC 20143 2002 1 Ottawa +GC 20145 2002 1 Pawnee +GC 20147 2002 0 Phillips +GC 20149 2002 2 Pottawatomie +GC 20151 2002 1 Pratt +GC 20153 2002 1 Rawlins +GC 20155 2002 3 Reno +GC 20157 2002 1 Republic +GC 20159 2002 2 Rice +GC 20161 2002 4 Riley +GC 20163 2002 1 Rooks +GC 20165 2002 0 Rush +GC 20167 2002 0 Russell +GC 20169 2002 3 Saline +GC 20171 2002 1 Scott +GC 20173 2002 13 Sedgwick +GC 20175 2002 1 Seward +GC 20177 2002 6 Shawnee +GC 20179 2002 0 Sheridan +GC 20181 2002 1 Sherman +GC 20183 2002 0 Smith +GC 20185 2002 1 Stafford +GC 20187 2002 0 Stanton +GC 20189 2002 0 Stevens +GC 20191 2002 1 Sumner +GC 20193 2002 1 Thomas +GC 20195 2002 1 Trego +GC 20197 2002 0 Wabaunsee +GC 20199 2002 0 Wallace +GC 20201 2002 1 Washington +GC 20203 2002 1 Wichita +GC 20205 2002 1 Wilson +GC 20207 2002 0 Woodson +GC 20209 2002 4 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_HOLSL.ALO new file mode 100644 index 0000000..10586d0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_HOLSL.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 20000 2002 4719 KS +COM 20001 2002 25 Allen +COM 20003 2002 16 Anderson +COM 20005 2002 17 Atchison +COM 20007 2002 8 Barber +COM 20009 2002 75 Barton +COM 20011 2002 25 Bourbon +COM 20013 2002 20 Brown +COM 20015 2002 51 Butler +COM 20017 2002 2 Chase +COM 20019 2002 4 Chautauqua +COM 20021 2002 16 Cherokee +COM 20023 2002 10 Cheyenne +COM 20025 2002 4 Clark +COM 20027 2002 15 Clay +COM 20029 2002 20 Cloud +COM 20031 2002 10 Coffey +COM 20033 2002 2 Comanche +COM 20035 2002 40 Cowley +COM 20037 2002 50 Crawford +COM 20039 2002 15 Decatur +COM 20041 2002 25 Dickinson +COM 20043 2002 10 Doniphan +COM 20045 2002 86 Douglas +COM 20047 2002 7 Edwards +COM 20049 2002 4 Elk +COM 20051 2002 47 Ellis +COM 20053 2002 14 Ellsworth +COM 20055 2002 79 Finney +COM 20057 2002 55 Ford +COM 20059 2002 25 Franklin +COM 20061 2002 15 Geary +COM 20063 2002 7 Gove +COM 20065 2002 7 Graham +COM 20067 2002 18 Grant +COM 20069 2002 21 Gray +COM 20071 2002 2 Greeley +COM 20073 2002 9 Greenwood +COM 20075 2002 11 Hamilton +COM 20077 2002 17 Harper +COM 20079 2002 32 Harvey +COM 20081 2002 11 Haskell +COM 20083 2002 3 Hodgeman +COM 20085 2002 9 Jackson +COM 20087 2002 6 Jefferson +COM 20089 2002 8 Jewell +COM 20091 2002 1394 Johnson +COM 20093 2002 7 Kearny +COM 20095 2002 22 Kingman +COM 20097 2002 7 Kiowa +COM 20099 2002 25 Labette +COM 20101 2002 9 Lane +COM 20103 2002 25 Leavenworth +COM 20105 2002 9 Lincoln +COM 20107 2002 6 Linn +COM 20109 2002 11 Logan +COM 20111 2002 41 Lyon +COM 20113 2002 53 McPherson +COM 20115 2002 16 Marion +COM 20117 2002 16 Marshall +COM 20119 2002 11 Meade +COM 20121 2002 26 Miami +COM 20123 2002 22 Mitchell +COM 20125 2002 51 Montgomery +COM 20127 2002 4 Morris +COM 20129 2002 10 Morton +COM 20131 2002 23 Nemaha +COM 20133 2002 33 Neosho +COM 20135 2002 18 Ness +COM 20137 2002 12 Norton +COM 20139 2002 12 Osage +COM 20141 2002 11 Osborne +COM 20143 2002 11 Ottawa +COM 20145 2002 9 Pawnee +COM 20147 2002 18 Phillips +COM 20149 2002 18 Pottawatomie +COM 20151 2002 26 Pratt +COM 20153 2002 9 Rawlins +COM 20155 2002 101 Reno +COM 20157 2002 21 Republic +COM 20159 2002 21 Rice +COM 20161 2002 46 Riley +COM 20163 2002 14 Rooks +COM 20165 2002 10 Rush +COM 20167 2002 20 Russell +COM 20169 2002 102 Saline +COM 20171 2002 18 Scott +COM 20173 2002 738 Sedgwick +COM 20175 2002 40 Seward +COM 20177 2002 183 Shawnee +COM 20179 2002 11 Sheridan +COM 20181 2002 18 Sherman +COM 20183 2002 16 Smith +COM 20185 2002 14 Stafford +COM 20187 2002 13 Stanton +COM 20189 2002 17 Stevens +COM 20191 2002 32 Sumner +COM 20193 2002 34 Thomas +COM 20195 2002 5 Trego +COM 20197 2002 5 Wabaunsee +COM 20199 2002 6 Wallace +COM 20201 2002 16 Washington +COM 20203 2002 10 Wichita +COM 20205 2002 6 Wilson +COM 20207 2002 9 Woodson +COM 20209 2002 275 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_HOUSE.ALO new file mode 100644 index 0000000..d333986 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_HOUSE.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 20000 2002 1159501 KS +HOU 20001 2002 6463 Allen +HOU 20003 2002 3620 Anderson +HOU 20005 2002 6842 Atchison +HOU 20007 2002 2736 Barber +HOU 20009 2002 12931 Barton +HOU 20011 2002 7194 Bourbon +HOU 20013 2002 4861 Brown +HOU 20015 2002 24132 Butler +HOU 20017 2002 1531 Chase +HOU 20019 2002 2197 Chautauqua +HOU 20021 2002 10166 Cherokee +HOU 20023 2002 1632 Cheyenne +HOU 20025 2002 1122 Clark +HOU 20027 2002 4094 Clay +HOU 20029 2002 4823 Cloud +HOU 20031 2002 3959 Coffey +HOU 20033 2002 1079 Comanche +HOU 20035 2002 15954 Cowley +HOU 20037 2002 17515 Crawford +HOU 20039 2002 1819 Decatur +HOU 20041 2002 8748 Dickinson +HOU 20043 2002 3519 Doniphan +HOU 20045 2002 42167 Douglas +HOU 20047 2002 1754 Edwards +HOU 20049 2002 1882 Elk +HOU 20051 2002 12160 Ellis +HOU 20053 2002 3261 Ellsworth +HOU 20055 2002 13956 Finney +HOU 20057 2002 11837 Ford +HOU 20059 2002 10546 Franklin +HOU 20061 2002 12089 Geary +HOU 20063 2002 1434 Gove +HOU 20065 2002 1556 Graham +HOU 20067 2002 3084 Grant +HOU 20069 2002 2230 Gray +HOU 20071 2002 717 Greeley +HOU 20073 2002 4293 Greenwood +HOU 20075 2002 1223 Hamilton +HOU 20077 2002 3257 Harper +HOU 20079 2002 13678 Harvey +HOU 20081 2002 1670 Haskell +HOU 20083 2002 955 Hodgeman +HOU 20085 2002 5199 Jackson +HOU 20087 2002 7727 Jefferson +HOU 20089 2002 2101 Jewell +HOU 20091 2002 194669 Johnson +HOU 20093 2002 1704 Kearny +HOU 20095 2002 3882 Kingman +HOU 20097 2002 1646 Kiowa +HOU 20099 2002 10348 Labette +HOU 20101 2002 1062 Lane +HOU 20103 2002 25280 Leavenworth +HOU 20105 2002 1848 Lincoln +HOU 20107 2002 4808 Linn +HOU 20109 2002 1424 Logan +HOU 20111 2002 14818 Lyon +HOU 20113 2002 12093 McPherson +HOU 20115 2002 5967 Marion +HOU 20117 2002 4999 Marshall +HOU 20119 2002 1975 Meade +HOU 20121 2002 11327 Miami +HOU 20123 2002 3327 Mitchell +HOU 20125 2002 17208 Montgomery +HOU 20127 2002 3187 Morris +HOU 20129 2002 1533 Morton +HOU 20131 2002 4376 Nemaha +HOU 20133 2002 7488 Neosho +HOU 20135 2002 1837 Ness +HOU 20137 2002 2670 Norton +HOU 20139 2002 7167 Osage +HOU 20141 2002 2413 Osborne +HOU 20143 2002 2759 Ottawa +HOU 20145 2002 3124 Pawnee +HOU 20147 2002 3090 Phillips +HOU 20149 2002 7544 Pottawatomie +HOU 20151 2002 4687 Pratt +HOU 20153 2002 1565 Rawlins +HOU 20155 2002 27786 Reno +HOU 20157 2002 3115 Republic +HOU 20159 2002 4604 Rice +HOU 20161 2002 23764 Riley +HOU 20163 2002 2751 Rooks +HOU 20165 2002 1931 Rush +HOU 20167 2002 3850 Russell +HOU 20169 2002 22981 Saline +HOU 20171 2002 2318 Scott +HOU 20173 2002 195490 Sedgwick +HOU 20175 2002 8108 Seward +HOU 20177 2002 74988 Shawnee +HOU 20179 2002 1280 Sheridan +HOU 20181 2002 3220 Sherman +HOU 20183 2002 2332 Smith +HOU 20185 2002 2452 Stafford +HOU 20187 2002 1023 Stanton +HOU 20189 2002 2297 Stevens +HOU 20191 2002 11010 Sumner +HOU 20193 2002 3576 Thomas +HOU 20195 2002 1710 Trego +HOU 20197 2002 3081 Wabaunsee +HOU 20199 2002 797 Wallace +HOU 20201 2002 3150 Washington +HOU 20203 2002 1129 Wichita +HOU 20205 2002 4967 Wilson +HOU 20207 2002 2080 Woodson +HOU 20209 2002 66173 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_LOGGN.ALO new file mode 100644 index 0000000..33ddf01 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_LOGGN.ALO @@ -0,0 +1,132 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 20000 2002 30048782 KS +LOG 20001 2002 66298 Allen +LOG 20003 2002 643274 Anderson +LOG 20005 2002 798932 Atchison +LOG 20007 2002 213501 Barber +LOG 20009 2002 154510 Barton +LOG 20011 2002 345791 Bourbon +LOG 20013 2002 192515 Brown +LOG 20015 2002 410091 Butler +LOG 20017 2002 77993 Chase +LOG 20019 2002 354890 Chautauqua +LOG 20021 2002 602944 Cherokee +LOG 20023 2002 0 Cheyenne +LOG 20025 2002 0 Clark +LOG 20027 2002 56680 Clay +LOG 20029 2002 78060 Cloud +LOG 20031 2002 568975 Coffey +LOG 20033 2002 0 Comanche +LOG 20035 2002 594886 Cowley +LOG 20037 2002 141244 Crawford +LOG 20039 2002 0 Decatur +LOG 20041 2002 465052 Dickinson +LOG 20043 2002 372481 Doniphan +LOG 20045 2002 2683771 Douglas +LOG 20047 2002 0 Edwards +LOG 20049 2002 889327 Elk +LOG 20051 2002 4677 Ellis +LOG 20053 2002 425 Ellsworth +LOG 20055 2002 48549 Finney +LOG 20057 2002 260755 Ford +LOG 20059 2002 682288 Franklin +LOG 20061 2002 147734 Geary +LOG 20063 2002 0 Gove +LOG 20065 2002 0 Graham +LOG 20067 2002 0 Grant +LOG 20069 2002 568941 Gray +LOG 20071 2002 0 Greeley +LOG 20073 2002 644268 Greenwood +LOG 20075 2002 89810 Hamilton +LOG 20077 2002 89164 Harper +LOG 20079 2002 179737 Harvey +LOG 20081 2002 0 Haskell +LOG 20083 2002 0 Hodgeman +LOG 20085 2002 2199917 Jackson +LOG 20087 2002 1229231 Jefferson +LOG 20089 2002 305015 Jewell +LOG 20091 2002 673909 Johnson +LOG 20093 2002 0 Kearny +LOG 20095 2002 129196 Kingman +LOG 20097 2002 33891 Kiowa +LOG 20099 2002 161528 Labette +LOG 20101 2002 0 Lane +LOG 20103 2002 631158 Leavenworth +LOG 20105 2002 928367 Lincoln +LOG 20107 2002 634632 Linn +LOG 20109 2002 0 Logan +LOG 20111 2002 623679 Lyon +LOG 20113 2002 288787 McPherson +LOG 20115 2002 92511 Marion +LOG 20117 2002 495941 Marshall +LOG 20119 2002 67781 Meade +LOG 20121 2002 865502 Miami +LOG 20123 2002 16093 Mitchell +LOG 20125 2002 1060638 Montgomery +LOG 20127 2002 107821 Morris +LOG 20129 2002 0 Morton +LOG 20131 2002 72548 Nemaha +LOG 20133 2002 312970 Neosho +LOG 20135 2002 392859 Ness +LOG 20137 2002 0 Norton +LOG 20139 2002 125110 Osage +LOG 20141 2002 15590 Osborne +LOG 20143 2002 161666 Ottawa +LOG 20145 2002 28794 Pawnee +LOG 20147 2002 22136 Phillips +LOG 20149 2002 702024 Pottawatomie +LOG 20151 2002 118617 Pratt +LOG 20153 2002 0 Rawlins +LOG 20155 2002 131238 Reno +LOG 20157 2002 338872 Republic +LOG 20159 2002 65192 Rice +LOG 20161 2002 304618 Riley +LOG 20163 2002 0 Rooks +LOG 20165 2002 0 Rush +LOG 20167 2002 22287 Russell +LOG 20169 2002 219408 Saline +LOG 20171 2002 0 Scott +LOG 20173 2002 523491 Sedgwick +LOG 20175 2002 0 Seward +LOG 20177 2002 1067041 Shawnee +LOG 20179 2002 15590 Sheridan +LOG 20181 2002 29536 Sherman +LOG 20183 2002 506833 Smith +LOG 20185 2002 2881 Stafford +LOG 20187 2002 0 Stanton +LOG 20189 2002 0 Stevens +LOG 20191 2002 42899 Sumner +LOG 20193 2002 39144 Thomas +LOG 20195 2002 135562 Trego +LOG 20197 2002 292895 Wabaunsee +LOG 20199 2002 271124 Wallace +LOG 20201 2002 236726 Washington +LOG 20203 2002 0 Wichita +LOG 20205 2002 353366 Wilson +LOG 20207 2002 448131 Woodson +LOG 20209 2002 76476 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_LSCAP.ALO new file mode 100644 index 0000000..c3b1226 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_LSCAP.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 20000 2002 3173 KS +LSC 20001 2002 0 Allen +LSC 20003 2002 5 Anderson +LSC 20005 2002 5 Atchison +LSC 20007 2002 0 Barber +LSC 20009 2002 5 Barton +LSC 20011 2002 3 Bourbon +LSC 20013 2002 5 Brown +LSC 20015 2002 30 Butler +LSC 20017 2002 0 Chase +LSC 20019 2002 0 Chautauqua +LSC 20021 2002 0 Cherokee +LSC 20023 2002 5 Cheyenne +LSC 20025 2002 0 Clark +LSC 20027 2002 5 Clay +LSC 20029 2002 5 Cloud +LSC 20031 2002 5 Coffey +LSC 20033 2002 0 Comanche +LSC 20035 2002 8 Cowley +LSC 20037 2002 5 Crawford +LSC 20039 2002 5 Decatur +LSC 20041 2002 3 Dickinson +LSC 20043 2002 0 Doniphan +LSC 20045 2002 88 Douglas +LSC 20047 2002 0 Edwards +LSC 20049 2002 0 Elk +LSC 20051 2002 27 Ellis +LSC 20053 2002 0 Ellsworth +LSC 20055 2002 196 Finney +LSC 20057 2002 15 Ford +LSC 20059 2002 5 Franklin +LSC 20061 2002 5 Geary +LSC 20063 2002 5 Gove +LSC 20065 2002 0 Graham +LSC 20067 2002 5 Grant +LSC 20069 2002 5 Gray +LSC 20071 2002 0 Greeley +LSC 20073 2002 0 Greenwood +LSC 20075 2002 5 Hamilton +LSC 20077 2002 5 Harper +LSC 20079 2002 9 Harvey +LSC 20081 2002 5 Haskell +LSC 20083 2002 0 Hodgeman +LSC 20085 2002 5 Jackson +LSC 20087 2002 30 Jefferson +LSC 20089 2002 0 Jewell +LSC 20091 2002 1171 Johnson +LSC 20093 2002 0 Kearny +LSC 20095 2002 5 Kingman +LSC 20097 2002 0 Kiowa +LSC 20099 2002 5 Labette +LSC 20101 2002 5 Lane +LSC 20103 2002 43 Leavenworth +LSC 20105 2002 5 Lincoln +LSC 20107 2002 0 Linn +LSC 20109 2002 5 Logan +LSC 20111 2002 4 Lyon +LSC 20113 2002 5 McPherson +LSC 20115 2002 5 Marion +LSC 20117 2002 5 Marshall +LSC 20119 2002 0 Meade +LSC 20121 2002 43 Miami +LSC 20123 2002 5 Mitchell +LSC 20125 2002 18 Montgomery +LSC 20127 2002 0 Morris +LSC 20129 2002 0 Morton +LSC 20131 2002 5 Nemaha +LSC 20133 2002 0 Neosho +LSC 20135 2002 5 Ness +LSC 20137 2002 5 Norton +LSC 20139 2002 30 Osage +LSC 20141 2002 5 Osborne +LSC 20143 2002 5 Ottawa +LSC 20145 2002 5 Pawnee +LSC 20147 2002 30 Phillips +LSC 20149 2002 1 Pottawatomie +LSC 20151 2002 5 Pratt +LSC 20153 2002 5 Rawlins +LSC 20155 2002 5 Reno +LSC 20157 2002 5 Republic +LSC 20159 2002 30 Rice +LSC 20161 2002 172 Riley +LSC 20163 2002 0 Rooks +LSC 20165 2002 5 Rush +LSC 20167 2002 0 Russell +LSC 20169 2002 77 Saline +LSC 20171 2002 0 Scott +LSC 20173 2002 676 Sedgwick +LSC 20175 2002 5 Seward +LSC 20177 2002 104 Shawnee +LSC 20179 2002 5 Sheridan +LSC 20181 2002 4 Sherman +LSC 20183 2002 0 Smith +LSC 20185 2002 5 Stafford +LSC 20187 2002 0 Stanton +LSC 20189 2002 5 Stevens +LSC 20191 2002 1 Sumner +LSC 20193 2002 13 Thomas +LSC 20195 2002 0 Trego +LSC 20197 2002 5 Wabaunsee +LSC 20199 2002 0 Wallace +LSC 20201 2002 5 Washington +LSC 20203 2002 0 Wichita +LSC 20205 2002 0 Wilson +LSC 20207 2002 5 Woodson +LSC 20209 2002 117 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_MNFG.ALO new file mode 100644 index 0000000..4c21990 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_MNFG.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 20000 2002 333380 KS +MFG 20001 2002 2991 Allen +MFG 20003 2002 308 Anderson +MFG 20005 2002 2930 Atchison +MFG 20007 2002 314 Barber +MFG 20009 2002 3238 Barton +MFG 20011 2002 2516 Bourbon +MFG 20013 2002 261 Brown +MFG 20015 2002 3071 Butler +MFG 20017 2002 138 Chase +MFG 20019 2002 40 Chautauqua +MFG 20021 2002 3659 Cherokee +MFG 20023 2002 16 Cheyenne +MFG 20025 2002 17 Clark +MFG 20027 2002 703 Clay +MFG 20029 2002 616 Cloud +MFG 20031 2002 307 Coffey +MFG 20033 2002 146 Comanche +MFG 20035 2002 6782 Cowley +MFG 20037 2002 6438 Crawford +MFG 20039 2002 27 Decatur +MFG 20041 2002 1919 Dickinson +MFG 20043 2002 962 Doniphan +MFG 20045 2002 8328 Douglas +MFG 20047 2002 356 Edwards +MFG 20049 2002 116 Elk +MFG 20051 2002 2173 Ellis +MFG 20053 2002 597 Ellsworth +MFG 20055 2002 4068 Finney +MFG 20057 2002 6275 Ford +MFG 20059 2002 2247 Franklin +MFG 20061 2002 883 Geary +MFG 20063 2002 205 Gove +MFG 20065 2002 8 Graham +MFG 20067 2002 373 Grant +MFG 20069 2002 230 Gray +MFG 20071 2002 8 Greeley +MFG 20073 2002 217 Greenwood +MFG 20075 2002 8 Hamilton +MFG 20077 2002 546 Harper +MFG 20079 2002 6974 Harvey +MFG 20081 2002 26 Haskell +MFG 20083 2002 26 Hodgeman +MFG 20085 2002 436 Jackson +MFG 20087 2002 327 Jefferson +MFG 20089 2002 34 Jewell +MFG 20091 2002 38485 Johnson +MFG 20093 2002 17 Kearny +MFG 20095 2002 474 Kingman +MFG 20097 2002 16 Kiowa +MFG 20099 2002 4445 Labette +MFG 20101 2002 24 Lane +MFG 20103 2002 2173 Leavenworth +MFG 20105 2002 40 Lincoln +MFG 20107 2002 311 Linn +MFG 20109 2002 25 Logan +MFG 20111 2002 6240 Lyon +MFG 20113 2002 7546 McPherson +MFG 20115 2002 662 Marion +MFG 20117 2002 1875 Marshall +MFG 20119 2002 41 Meade +MFG 20121 2002 960 Miami +MFG 20123 2002 766 Mitchell +MFG 20125 2002 8230 Montgomery +MFG 20127 2002 342 Morris +MFG 20129 2002 68 Morton +MFG 20131 2002 1955 Nemaha +MFG 20133 2002 3668 Neosho +MFG 20135 2002 78 Ness +MFG 20137 2002 366 Norton +MFG 20139 2002 329 Osage +MFG 20141 2002 276 Osborne +MFG 20143 2002 231 Ottawa +MFG 20145 2002 81 Pawnee +MFG 20147 2002 704 Phillips +MFG 20149 2002 1862 Pottawatomie +MFG 20151 2002 214 Pratt +MFG 20153 2002 96 Rawlins +MFG 20155 2002 6953 Reno +MFG 20157 2002 949 Republic +MFG 20159 2002 718 Rice +MFG 20161 2002 956 Riley +MFG 20163 2002 789 Rooks +MFG 20165 2002 435 Rush +MFG 20167 2002 223 Russell +MFG 20169 2002 9448 Saline +MFG 20171 2002 55 Scott +MFG 20173 2002 112659 Sedgwick +MFG 20175 2002 3611 Seward +MFG 20177 2002 13167 Shawnee +MFG 20179 2002 32 Sheridan +MFG 20181 2002 125 Sherman +MFG 20183 2002 411 Smith +MFG 20185 2002 81 Stafford +MFG 20187 2002 23 Stanton +MFG 20189 2002 47 Stevens +MFG 20191 2002 2045 Sumner +MFG 20193 2002 103 Thomas +MFG 20195 2002 44 Trego +MFG 20197 2002 136 Wabaunsee +MFG 20199 2002 63 Wallace +MFG 20201 2002 215 Washington +MFG 20203 2002 63 Wichita +MFG 20205 2002 2875 Wilson +MFG 20207 2002 63 Woodson +MFG 20209 2002 22631 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_OIL.ALO new file mode 100644 index 0000000..5603ad8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_OIL.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 20000 2002 3632 KS +OIL 20001 2002 104 Allen +OIL 20003 2002 15 Anderson +OIL 20005 2002 0 Atchison +OIL 20007 2002 57 Barber +OIL 20009 2002 361 Barton +OIL 20011 2002 31 Bourbon +OIL 20013 2002 0 Brown +OIL 20015 2002 88 Butler +OIL 20017 2002 15 Chase +OIL 20019 2002 15 Chautauqua +OIL 20021 2002 0 Cherokee +OIL 20023 2002 0 Cheyenne +OIL 20025 2002 0 Clark +OIL 20027 2002 0 Clay +OIL 20029 2002 0 Cloud +OIL 20031 2002 88 Coffey +OIL 20033 2002 15 Comanche +OIL 20035 2002 37 Cowley +OIL 20037 2002 15 Crawford +OIL 20039 2002 0 Decatur +OIL 20041 2002 16 Dickinson +OIL 20043 2002 0 Doniphan +OIL 20045 2002 15 Douglas +OIL 20047 2002 0 Edwards +OIL 20049 2002 15 Elk +OIL 20051 2002 176 Ellis +OIL 20053 2002 0 Ellsworth +OIL 20055 2002 51 Finney +OIL 20057 2002 0 Ford +OIL 20059 2002 31 Franklin +OIL 20061 2002 0 Geary +OIL 20063 2002 0 Gove +OIL 20065 2002 31 Graham +OIL 20067 2002 182 Grant +OIL 20069 2002 0 Gray +OIL 20071 2002 0 Greeley +OIL 20073 2002 93 Greenwood +OIL 20075 2002 0 Hamilton +OIL 20077 2002 15 Harper +OIL 20079 2002 9 Harvey +OIL 20081 2002 31 Haskell +OIL 20083 2002 15 Hodgeman +OIL 20085 2002 0 Jackson +OIL 20087 2002 15 Jefferson +OIL 20089 2002 0 Jewell +OIL 20091 2002 8 Johnson +OIL 20093 2002 15 Kearny +OIL 20095 2002 5 Kingman +OIL 20097 2002 0 Kiowa +OIL 20099 2002 0 Labette +OIL 20101 2002 0 Lane +OIL 20103 2002 15 Leavenworth +OIL 20105 2002 0 Lincoln +OIL 20107 2002 31 Linn +OIL 20109 2002 0 Logan +OIL 20111 2002 31 Lyon +OIL 20113 2002 125 McPherson +OIL 20115 2002 104 Marion +OIL 20117 2002 0 Marshall +OIL 20119 2002 15 Meade +OIL 20121 2002 43 Miami +OIL 20123 2002 0 Mitchell +OIL 20125 2002 15 Montgomery +OIL 20127 2002 15 Morris +OIL 20129 2002 88 Morton +OIL 20131 2002 15 Nemaha +OIL 20133 2002 15 Neosho +OIL 20135 2002 100 Ness +OIL 20137 2002 15 Norton +OIL 20139 2002 16 Osage +OIL 20141 2002 0 Osborne +OIL 20143 2002 0 Ottawa +OIL 20145 2002 0 Pawnee +OIL 20147 2002 104 Phillips +OIL 20149 2002 0 Pottawatomie +OIL 20151 2002 32 Pratt +OIL 20153 2002 0 Rawlins +OIL 20155 2002 88 Reno +OIL 20157 2002 0 Republic +OIL 20159 2002 88 Rice +OIL 20161 2002 0 Riley +OIL 20163 2002 46 Rooks +OIL 20165 2002 0 Rush +OIL 20167 2002 81 Russell +OIL 20169 2002 0 Saline +OIL 20171 2002 15 Scott +OIL 20173 2002 682 Sedgwick +OIL 20175 2002 48 Seward +OIL 20177 2002 0 Shawnee +OIL 20179 2002 0 Sheridan +OIL 20181 2002 15 Sherman +OIL 20183 2002 0 Smith +OIL 20185 2002 31 Stafford +OIL 20187 2002 0 Stanton +OIL 20189 2002 0 Stevens +OIL 20191 2002 31 Sumner +OIL 20193 2002 0 Thomas +OIL 20195 2002 16 Trego +OIL 20197 2002 0 Wabaunsee +OIL 20199 2002 0 Wallace +OIL 20201 2002 0 Washington +OIL 20203 2002 0 Wichita +OIL 20205 2002 88 Wilson +OIL 20207 2002 45 Woodson +OIL 20209 2002 15 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_POP.ALO new file mode 100644 index 0000000..d081329 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_POP.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 20000 2002 2712896 KS +POP 20001 2002 14105 Allen +POP 20003 2002 8163 Anderson +POP 20005 2002 16756 Atchison +POP 20007 2002 5089 Barber +POP 20009 2002 27648 Barton +POP 20011 2002 15205 Bourbon +POP 20013 2002 10498 Brown +POP 20015 2002 60501 Butler +POP 20017 2002 3046 Chase +POP 20019 2002 4207 Chautauqua +POP 20021 2002 22021 Cherokee +POP 20023 2002 3051 Cheyenne +POP 20025 2002 2359 Clark +POP 20027 2002 8669 Clay +POP 20029 2002 9961 Cloud +POP 20031 2002 8827 Coffey +POP 20033 2002 1958 Comanche +POP 20035 2002 36380 Cowley +POP 20037 2002 37994 Crawford +POP 20039 2002 3384 Decatur +POP 20041 2002 19126 Dickinson +POP 20043 2002 8179 Doniphan +POP 20045 2002 101522 Douglas +POP 20047 2002 3350 Edwards +POP 20049 2002 3204 Elk +POP 20051 2002 27314 Ellis +POP 20053 2002 6389 Ellsworth +POP 20055 2002 39373 Finney +POP 20057 2002 32451 Ford +POP 20059 2002 25511 Franklin +POP 20061 2002 26475 Geary +POP 20063 2002 2964 Gove +POP 20065 2002 2874 Graham +POP 20067 2002 7908 Grant +POP 20069 2002 5993 Gray +POP 20071 2002 1453 Greeley +POP 20073 2002 7647 Greenwood +POP 20075 2002 2674 Hamilton +POP 20077 2002 6304 Harper +POP 20079 2002 33388 Harvey +POP 20081 2002 4234 Haskell +POP 20083 2002 2156 Hodgeman +POP 20085 2002 12881 Jackson +POP 20087 2002 18705 Jefferson +POP 20089 2002 3512 Jewell +POP 20091 2002 476099 Johnson +POP 20093 2002 4578 Kearny +POP 20095 2002 8417 Kingman +POP 20097 2002 3101 Kiowa +POP 20099 2002 22349 Labette +POP 20101 2002 1992 Lane +POP 20103 2002 71366 Leavenworth +POP 20105 2002 3510 Lincoln +POP 20107 2002 9720 Linn +POP 20109 2002 2949 Logan +POP 20111 2002 35726 Lyon +POP 20113 2002 29363 McPherson +POP 20115 2002 13299 Marion +POP 20117 2002 10655 Marshall +POP 20119 2002 4676 Meade +POP 20121 2002 28945 Miami +POP 20123 2002 6699 Mitchell +POP 20125 2002 35286 Montgomery +POP 20127 2002 6026 Morris +POP 20129 2002 3360 Morton +POP 20131 2002 10501 Nemaha +POP 20133 2002 16716 Neosho +POP 20135 2002 3280 Ness +POP 20137 2002 5835 Norton +POP 20139 2002 16826 Osage +POP 20141 2002 4286 Osborne +POP 20143 2002 6198 Ottawa +POP 20145 2002 6909 Pawnee +POP 20147 2002 5772 Phillips +POP 20149 2002 18443 Pottawatomie +POP 20151 2002 9594 Pratt +POP 20153 2002 2883 Rawlins +POP 20155 2002 64019 Reno +POP 20157 2002 5449 Republic +POP 20159 2002 10519 Rice +POP 20161 2002 62108 Riley +POP 20163 2002 5493 Rooks +POP 20165 2002 3469 Rush +POP 20167 2002 7035 Russell +POP 20169 2002 53951 Saline +POP 20171 2002 4930 Scott +POP 20173 2002 460393 Sedgwick +POP 20175 2002 23007 Seward +POP 20177 2002 170547 Shawnee +POP 20179 2002 2672 Sheridan +POP 20181 2002 6429 Sherman +POP 20183 2002 4302 Smith +POP 20185 2002 4667 Stafford +POP 20187 2002 2426 Stanton +POP 20189 2002 5326 Stevens +POP 20191 2002 25530 Sumner +POP 20193 2002 8076 Thomas +POP 20195 2002 3143 Trego +POP 20197 2002 6773 Wabaunsee +POP 20199 2002 1667 Wallace +POP 20201 2002 6220 Washington +POP 20203 2002 2483 Wichita +POP 20205 2002 10157 Wilson +POP 20207 2002 3655 Woodson +POP 20209 2002 157682 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_RAIL.ALO new file mode 100644 index 0000000..54a8a9e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_RAIL.ALO @@ -0,0 +1,132 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 20000 2002 31033.760 KS +RR 20001 2002 819.760 Allen +RR 20003 2002 1070.970 Anderson +RR 20005 2002 80.410 Atchison +RR 20007 2002 241.150 Barber +RR 20009 2002 0.000 Barton +RR 20011 2002 407.660 Bourbon +RR 20013 2002 128.470 Brown +RR 20015 2002 1687.840 Butler +RR 20017 2002 939.400 Chase +RR 20019 2002 0.000 Chautauqua +RR 20021 2002 117.650 Cherokee +RR 20023 2002 0.000 Cheyenne +RR 20025 2002 234.610 Clark +RR 20027 2002 13.250 Clay +RR 20029 2002 19.810 Cloud +RR 20031 2002 560.270 Coffey +RR 20033 2002 0.000 Comanche +RR 20035 2002 424.680 Cowley +RR 20037 2002 277.250 Crawford +RR 20039 2002 0.000 Decatur +RR 20041 2002 521.740 Dickinson +RR 20043 2002 12.620 Doniphan +RR 20045 2002 670.570 Douglas +RR 20047 2002 155.990 Edwards +RR 20049 2002 0.000 Elk +RR 20051 2002 83.990 Ellis +RR 20053 2002 166.110 Ellsworth +RR 20055 2002 171.730 Finney +RR 20057 2002 278.120 Ford +RR 20059 2002 685.200 Franklin +RR 20061 2002 261.810 Geary +RR 20063 2002 124.880 Gove +RR 20065 2002 0.000 Graham +RR 20067 2002 0.000 Grant +RR 20069 2002 58.810 Gray +RR 20071 2002 0.000 Greeley +RR 20073 2002 0.000 Greenwood +RR 20075 2002 170.140 Hamilton +RR 20077 2002 518.430 Harper +RR 20079 2002 250.260 Harvey +RR 20081 2002 0.000 Haskell +RR 20083 2002 0.000 Hodgeman +RR 20085 2002 421.020 Jackson +RR 20087 2002 367.460 Jefferson +RR 20089 2002 6.310 Jewell +RR 20091 2002 1953.870 Johnson +RR 20093 2002 139.580 Kearny +RR 20095 2002 0.000 Kingman +RR 20097 2002 199.260 Kiowa +RR 20099 2002 452.370 Labette +RR 20101 2002 0.000 Lane +RR 20103 2002 500.840 Leavenworth +RR 20105 2002 0.000 Lincoln +RR 20107 2002 1193.810 Linn +RR 20109 2002 179.910 Logan +RR 20111 2002 627.290 Lyon +RR 20113 2002 246.720 McPherson +RR 20115 2002 280.540 Marion +RR 20117 2002 792.420 Marshall +RR 20119 2002 245.310 Meade +RR 20121 2002 2859.140 Miami +RR 20123 2002 0.000 Mitchell +RR 20125 2002 144.420 Montgomery +RR 20127 2002 186.410 Morris +RR 20129 2002 0.000 Morton +RR 20131 2002 21.200 Nemaha +RR 20133 2002 1000.940 Neosho +RR 20135 2002 0.000 Ness +RR 20137 2002 0.000 Norton +RR 20139 2002 736.290 Osage +RR 20141 2002 0.000 Osborne +RR 20143 2002 13.250 Ottawa +RR 20145 2002 0.000 Pawnee +RR 20147 2002 0.000 Phillips +RR 20149 2002 848.100 Pottawatomie +RR 20151 2002 204.550 Pratt +RR 20153 2002 0.000 Rawlins +RR 20155 2002 378.600 Reno +RR 20157 2002 17.910 Republic +RR 20159 2002 0.000 Rice +RR 20161 2002 120.890 Riley +RR 20163 2002 0.000 Rooks +RR 20165 2002 0.000 Rush +RR 20167 2002 178.030 Russell +RR 20169 2002 123.030 Saline +RR 20171 2002 0.000 Scott +RR 20173 2002 588.280 Sedgwick +RR 20175 2002 116.360 Seward +RR 20177 2002 1152.030 Shawnee +RR 20179 2002 0.000 Sheridan +RR 20181 2002 0.000 Sherman +RR 20183 2002 0.000 Smith +RR 20185 2002 176.040 Stafford +RR 20187 2002 0.000 Stanton +RR 20189 2002 0.000 Stevens +RR 20191 2002 980.900 Sumner +RR 20193 2002 7.680 Thomas +RR 20195 2002 141.310 Trego +RR 20197 2002 317.710 Wabaunsee +RR 20199 2002 171.160 Wallace +RR 20201 2002 298.230 Washington +RR 20203 2002 0.000 Wichita +RR 20205 2002 197.210 Wilson +RR 20207 2002 233.350 Woodson +RR 20209 2002 1060.450 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_RVPRK.ALO new file mode 100644 index 0000000..8b6f5a4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_RVPRK.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 20000 2002 45 KS +RVP 20001 2002 0 Allen +RVP 20003 2002 0 Anderson +RVP 20005 2002 0 Atchison +RVP 20007 2002 0 Barber +RVP 20009 2002 0 Barton +RVP 20011 2002 0 Bourbon +RVP 20013 2002 1 Brown +RVP 20015 2002 1 Butler +RVP 20017 2002 1 Chase +RVP 20019 2002 0 Chautauqua +RVP 20021 2002 0 Cherokee +RVP 20023 2002 0 Cheyenne +RVP 20025 2002 0 Clark +RVP 20027 2002 0 Clay +RVP 20029 2002 0 Cloud +RVP 20031 2002 0 Coffey +RVP 20033 2002 0 Comanche +RVP 20035 2002 0 Cowley +RVP 20037 2002 1 Crawford +RVP 20039 2002 0 Decatur +RVP 20041 2002 1 Dickinson +RVP 20043 2002 0 Doniphan +RVP 20045 2002 3 Douglas +RVP 20047 2002 0 Edwards +RVP 20049 2002 0 Elk +RVP 20051 2002 0 Ellis +RVP 20053 2002 0 Ellsworth +RVP 20055 2002 1 Finney +RVP 20057 2002 1 Ford +RVP 20059 2002 0 Franklin +RVP 20061 2002 1 Geary +RVP 20063 2002 0 Gove +RVP 20065 2002 0 Graham +RVP 20067 2002 0 Grant +RVP 20069 2002 0 Gray +RVP 20071 2002 1 Greeley +RVP 20073 2002 0 Greenwood +RVP 20075 2002 0 Hamilton +RVP 20077 2002 0 Harper +RVP 20079 2002 0 Harvey +RVP 20081 2002 0 Haskell +RVP 20083 2002 0 Hodgeman +RVP 20085 2002 0 Jackson +RVP 20087 2002 3 Jefferson +RVP 20089 2002 0 Jewell +RVP 20091 2002 4 Johnson +RVP 20093 2002 0 Kearny +RVP 20095 2002 1 Kingman +RVP 20097 2002 0 Kiowa +RVP 20099 2002 0 Labette +RVP 20101 2002 0 Lane +RVP 20103 2002 1 Leavenworth +RVP 20105 2002 0 Lincoln +RVP 20107 2002 0 Linn +RVP 20109 2002 1 Logan +RVP 20111 2002 2 Lyon +RVP 20113 2002 0 McPherson +RVP 20115 2002 0 Marion +RVP 20117 2002 0 Marshall +RVP 20119 2002 0 Meade +RVP 20121 2002 0 Miami +RVP 20123 2002 0 Mitchell +RVP 20125 2002 1 Montgomery +RVP 20127 2002 0 Morris +RVP 20129 2002 0 Morton +RVP 20131 2002 0 Nemaha +RVP 20133 2002 1 Neosho +RVP 20135 2002 0 Ness +RVP 20137 2002 0 Norton +RVP 20139 2002 1 Osage +RVP 20141 2002 0 Osborne +RVP 20143 2002 0 Ottawa +RVP 20145 2002 0 Pawnee +RVP 20147 2002 0 Phillips +RVP 20149 2002 2 Pottawatomie +RVP 20151 2002 0 Pratt +RVP 20153 2002 1 Rawlins +RVP 20155 2002 2 Reno +RVP 20157 2002 0 Republic +RVP 20159 2002 0 Rice +RVP 20161 2002 0 Riley +RVP 20163 2002 0 Rooks +RVP 20165 2002 0 Rush +RVP 20167 2002 0 Russell +RVP 20169 2002 2 Saline +RVP 20171 2002 0 Scott +RVP 20173 2002 4 Sedgwick +RVP 20175 2002 0 Seward +RVP 20177 2002 1 Shawnee +RVP 20179 2002 0 Sheridan +RVP 20181 2002 1 Sherman +RVP 20183 2002 0 Smith +RVP 20185 2002 0 Stafford +RVP 20187 2002 0 Stanton +RVP 20189 2002 0 Stevens +RVP 20191 2002 0 Sumner +RVP 20193 2002 1 Thomas +RVP 20195 2002 1 Trego +RVP 20197 2002 0 Wabaunsee +RVP 20199 2002 0 Wallace +RVP 20201 2002 0 Washington +RVP 20203 2002 0 Wichita +RVP 20205 2002 0 Wilson +RVP 20207 2002 0 Woodson +RVP 20209 2002 3 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_SBC.ALO new file mode 100644 index 0000000..ef0f970 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_SBC.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 20000 2002 3084 KS +SBC 20001 2002 0 Allen +SBC 20003 2002 7 Anderson +SBC 20005 2002 15 Atchison +SBC 20007 2002 0 Barber +SBC 20009 2002 24 Barton +SBC 20011 2002 0 Bourbon +SBC 20013 2002 9 Brown +SBC 20015 2002 53 Butler +SBC 20017 2002 0 Chase +SBC 20019 2002 0 Chautauqua +SBC 20021 2002 0 Cherokee +SBC 20023 2002 3 Cheyenne +SBC 20025 2002 0 Clark +SBC 20027 2002 8 Clay +SBC 20029 2002 9 Cloud +SBC 20031 2002 8 Coffey +SBC 20033 2002 0 Comanche +SBC 20035 2002 0 Cowley +SBC 20037 2002 0 Crawford +SBC 20039 2002 3 Decatur +SBC 20041 2002 3 Dickinson +SBC 20043 2002 0 Doniphan +SBC 20045 2002 88 Douglas +SBC 20047 2002 0 Edwards +SBC 20049 2002 0 Elk +SBC 20051 2002 27 Ellis +SBC 20053 2002 0 Ellsworth +SBC 20055 2002 35 Finney +SBC 20057 2002 15 Ford +SBC 20059 2002 22 Franklin +SBC 20061 2002 23 Geary +SBC 20063 2002 3 Gove +SBC 20065 2002 0 Graham +SBC 20067 2002 7 Grant +SBC 20069 2002 5 Gray +SBC 20071 2002 0 Greeley +SBC 20073 2002 0 Greenwood +SBC 20075 2002 2 Hamilton +SBC 20077 2002 0 Harper +SBC 20079 2002 9 Harvey +SBC 20081 2002 4 Haskell +SBC 20083 2002 0 Hodgeman +SBC 20085 2002 11 Jackson +SBC 20087 2002 16 Jefferson +SBC 20089 2002 0 Jewell +SBC 20091 2002 1171 Johnson +SBC 20093 2002 0 Kearny +SBC 20095 2002 7 Kingman +SBC 20097 2002 0 Kiowa +SBC 20099 2002 0 Labette +SBC 20101 2002 2 Lane +SBC 20103 2002 43 Leavenworth +SBC 20105 2002 3 Lincoln +SBC 20107 2002 0 Linn +SBC 20109 2002 3 Logan +SBC 20111 2002 4 Lyon +SBC 20113 2002 26 McPherson +SBC 20115 2002 12 Marion +SBC 20117 2002 9 Marshall +SBC 20119 2002 0 Meade +SBC 20121 2002 43 Miami +SBC 20123 2002 6 Mitchell +SBC 20125 2002 0 Montgomery +SBC 20127 2002 0 Morris +SBC 20129 2002 0 Morton +SBC 20131 2002 9 Nemaha +SBC 20133 2002 0 Neosho +SBC 20135 2002 3 Ness +SBC 20137 2002 5 Norton +SBC 20139 2002 15 Osage +SBC 20141 2002 4 Osborne +SBC 20143 2002 5 Ottawa +SBC 20145 2002 6 Pawnee +SBC 20147 2002 5 Phillips +SBC 20149 2002 1 Pottawatomie +SBC 20151 2002 8 Pratt +SBC 20153 2002 3 Rawlins +SBC 20155 2002 57 Reno +SBC 20157 2002 5 Republic +SBC 20159 2002 9 Rice +SBC 20161 2002 172 Riley +SBC 20163 2002 0 Rooks +SBC 20165 2002 3 Rush +SBC 20167 2002 0 Russell +SBC 20169 2002 77 Saline +SBC 20171 2002 0 Scott +SBC 20173 2002 676 Sedgwick +SBC 20175 2002 20 Seward +SBC 20177 2002 104 Shawnee +SBC 20179 2002 2 Sheridan +SBC 20181 2002 4 Sherman +SBC 20183 2002 0 Smith +SBC 20185 2002 4 Stafford +SBC 20187 2002 0 Stanton +SBC 20189 2002 5 Stevens +SBC 20191 2002 0 Sumner +SBC 20193 2002 13 Thomas +SBC 20195 2002 0 Trego +SBC 20197 2002 6 Wabaunsee +SBC 20199 2002 0 Wallace +SBC 20201 2002 5 Washington +SBC 20203 2002 0 Wichita +SBC 20205 2002 0 Wilson +SBC 20207 2002 3 Woodson +SBC 20209 2002 117 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_SBR.ALO new file mode 100644 index 0000000..6e43466 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_SBR.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 20000 2002 1050315 KS +SBR 20001 2002 6463 Allen +SBR 20003 2002 3620 Anderson +SBR 20005 2002 6842 Atchison +SBR 20007 2002 2736 Barber +SBR 20009 2002 12931 Barton +SBR 20011 2002 0 Bourbon +SBR 20013 2002 4861 Brown +SBR 20015 2002 24132 Butler +SBR 20017 2002 1531 Chase +SBR 20019 2002 0 Chautauqua +SBR 20021 2002 0 Cherokee +SBR 20023 2002 1632 Cheyenne +SBR 20025 2002 1122 Clark +SBR 20027 2002 4094 Clay +SBR 20029 2002 4823 Cloud +SBR 20031 2002 3959 Coffey +SBR 20033 2002 1079 Comanche +SBR 20035 2002 0 Cowley +SBR 20037 2002 0 Crawford +SBR 20039 2002 1819 Decatur +SBR 20041 2002 8748 Dickinson +SBR 20043 2002 3519 Doniphan +SBR 20045 2002 42167 Douglas +SBR 20047 2002 1754 Edwards +SBR 20049 2002 0 Elk +SBR 20051 2002 12160 Ellis +SBR 20053 2002 3261 Ellsworth +SBR 20055 2002 13956 Finney +SBR 20057 2002 11837 Ford +SBR 20059 2002 10546 Franklin +SBR 20061 2002 12089 Geary +SBR 20063 2002 1434 Gove +SBR 20065 2002 1556 Graham +SBR 20067 2002 3084 Grant +SBR 20069 2002 2230 Gray +SBR 20071 2002 717 Greeley +SBR 20073 2002 4293 Greenwood +SBR 20075 2002 1223 Hamilton +SBR 20077 2002 0 Harper +SBR 20079 2002 13678 Harvey +SBR 20081 2002 1670 Haskell +SBR 20083 2002 955 Hodgeman +SBR 20085 2002 5199 Jackson +SBR 20087 2002 7727 Jefferson +SBR 20089 2002 2101 Jewell +SBR 20091 2002 194669 Johnson +SBR 20093 2002 1704 Kearny +SBR 20095 2002 3882 Kingman +SBR 20097 2002 1646 Kiowa +SBR 20099 2002 0 Labette +SBR 20101 2002 1062 Lane +SBR 20103 2002 25280 Leavenworth +SBR 20105 2002 1848 Lincoln +SBR 20107 2002 4808 Linn +SBR 20109 2002 1424 Logan +SBR 20111 2002 14818 Lyon +SBR 20113 2002 12093 McPherson +SBR 20115 2002 5967 Marion +SBR 20117 2002 4999 Marshall +SBR 20119 2002 1975 Meade +SBR 20121 2002 11327 Miami +SBR 20123 2002 3327 Mitchell +SBR 20125 2002 0 Montgomery +SBR 20127 2002 3187 Morris +SBR 20129 2002 1533 Morton +SBR 20131 2002 4376 Nemaha +SBR 20133 2002 0 Neosho +SBR 20135 2002 1837 Ness +SBR 20137 2002 2670 Norton +SBR 20139 2002 7167 Osage +SBR 20141 2002 2413 Osborne +SBR 20143 2002 2759 Ottawa +SBR 20145 2002 3124 Pawnee +SBR 20147 2002 3090 Phillips +SBR 20149 2002 7544 Pottawatomie +SBR 20151 2002 4687 Pratt +SBR 20153 2002 1565 Rawlins +SBR 20155 2002 27786 Reno +SBR 20157 2002 3115 Republic +SBR 20159 2002 4604 Rice +SBR 20161 2002 23764 Riley +SBR 20163 2002 2751 Rooks +SBR 20165 2002 1931 Rush +SBR 20167 2002 3850 Russell +SBR 20169 2002 22981 Saline +SBR 20171 2002 2318 Scott +SBR 20173 2002 195490 Sedgwick +SBR 20175 2002 8108 Seward +SBR 20177 2002 74988 Shawnee +SBR 20179 2002 1280 Sheridan +SBR 20181 2002 3220 Sherman +SBR 20183 2002 2332 Smith +SBR 20185 2002 2452 Stafford +SBR 20187 2002 1023 Stanton +SBR 20189 2002 2297 Stevens +SBR 20191 2002 0 Sumner +SBR 20193 2002 3576 Thomas +SBR 20195 2002 1710 Trego +SBR 20197 2002 3081 Wabaunsee +SBR 20199 2002 797 Wallace +SBR 20201 2002 3150 Washington +SBR 20203 2002 1129 Wichita +SBR 20205 2002 0 Wilson +SBR 20207 2002 2080 Woodson +SBR 20209 2002 66173 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_SNOWM.ALO new file mode 100644 index 0000000..d6eeb61 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_SNOWM.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 20000 2002 0 KS +SNM 20001 2002 0 Allen +SNM 20003 2002 0 Anderson +SNM 20005 2002 0 Atchison +SNM 20007 2002 0 Barber +SNM 20009 2002 0 Barton +SNM 20011 2002 0 Bourbon +SNM 20013 2002 0 Brown +SNM 20015 2002 0 Butler +SNM 20017 2002 0 Chase +SNM 20019 2002 0 Chautauqua +SNM 20021 2002 0 Cherokee +SNM 20023 2002 0 Cheyenne +SNM 20025 2002 0 Clark +SNM 20027 2002 0 Clay +SNM 20029 2002 0 Cloud +SNM 20031 2002 0 Coffey +SNM 20033 2002 0 Comanche +SNM 20035 2002 0 Cowley +SNM 20037 2002 0 Crawford +SNM 20039 2002 0 Decatur +SNM 20041 2002 0 Dickinson +SNM 20043 2002 0 Doniphan +SNM 20045 2002 0 Douglas +SNM 20047 2002 0 Edwards +SNM 20049 2002 0 Elk +SNM 20051 2002 0 Ellis +SNM 20053 2002 0 Ellsworth +SNM 20055 2002 0 Finney +SNM 20057 2002 0 Ford +SNM 20059 2002 0 Franklin +SNM 20061 2002 0 Geary +SNM 20063 2002 0 Gove +SNM 20065 2002 0 Graham +SNM 20067 2002 0 Grant +SNM 20069 2002 0 Gray +SNM 20071 2002 0 Greeley +SNM 20073 2002 0 Greenwood +SNM 20075 2002 0 Hamilton +SNM 20077 2002 0 Harper +SNM 20079 2002 0 Harvey +SNM 20081 2002 0 Haskell +SNM 20083 2002 0 Hodgeman +SNM 20085 2002 0 Jackson +SNM 20087 2002 0 Jefferson +SNM 20089 2002 0 Jewell +SNM 20091 2002 0 Johnson +SNM 20093 2002 0 Kearny +SNM 20095 2002 0 Kingman +SNM 20097 2002 0 Kiowa +SNM 20099 2002 0 Labette +SNM 20101 2002 0 Lane +SNM 20103 2002 0 Leavenworth +SNM 20105 2002 0 Lincoln +SNM 20107 2002 0 Linn +SNM 20109 2002 0 Logan +SNM 20111 2002 0 Lyon +SNM 20113 2002 0 McPherson +SNM 20115 2002 0 Marion +SNM 20117 2002 0 Marshall +SNM 20119 2002 0 Meade +SNM 20121 2002 0 Miami +SNM 20123 2002 0 Mitchell +SNM 20125 2002 0 Montgomery +SNM 20127 2002 0 Morris +SNM 20129 2002 0 Morton +SNM 20131 2002 0 Nemaha +SNM 20133 2002 0 Neosho +SNM 20135 2002 0 Ness +SNM 20137 2002 0 Norton +SNM 20139 2002 0 Osage +SNM 20141 2002 0 Osborne +SNM 20143 2002 0 Ottawa +SNM 20145 2002 0 Pawnee +SNM 20147 2002 0 Phillips +SNM 20149 2002 0 Pottawatomie +SNM 20151 2002 0 Pratt +SNM 20153 2002 0 Rawlins +SNM 20155 2002 0 Reno +SNM 20157 2002 0 Republic +SNM 20159 2002 0 Rice +SNM 20161 2002 0 Riley +SNM 20163 2002 0 Rooks +SNM 20165 2002 0 Rush +SNM 20167 2002 0 Russell +SNM 20169 2002 0 Saline +SNM 20171 2002 0 Scott +SNM 20173 2002 0 Sedgwick +SNM 20175 2002 0 Seward +SNM 20177 2002 0 Shawnee +SNM 20179 2002 0 Sheridan +SNM 20181 2002 0 Sherman +SNM 20183 2002 0 Smith +SNM 20185 2002 0 Stafford +SNM 20187 2002 0 Stanton +SNM 20189 2002 0 Stevens +SNM 20191 2002 0 Sumner +SNM 20193 2002 0 Thomas +SNM 20195 2002 0 Trego +SNM 20197 2002 0 Wabaunsee +SNM 20199 2002 0 Wallace +SNM 20201 2002 0 Washington +SNM 20203 2002 0 Wichita +SNM 20205 2002 0 Wilson +SNM 20207 2002 0 Woodson +SNM 20209 2002 0 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_WIB.ALO new file mode 100644 index 0000000..976e2cc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_WIB.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 20000 1990 1192 KS +WIB 20001 1990 6 Allen +WIB 20003 1990 4 Anderson +WIB 20005 1990 7 Atchison +WIB 20007 1990 5 Barber +WIB 20009 1990 17 Barton +WIB 20011 1990 4 Bourbon +WIB 20013 1990 4 Brown +WIB 20015 1990 47 Butler +WIB 20017 1990 5 Chase +WIB 20019 1990 8 Chautauqua +WIB 20021 1990 10 Cherokee +WIB 20023 1990 2 Cheyenne +WIB 20025 1990 7 Clark +WIB 20027 1990 30 Clay +WIB 20029 1990 7 Cloud +WIB 20031 1990 63 Coffey +WIB 20033 1990 4 Comanche +WIB 20035 1990 16 Cowley +WIB 20037 1990 6 Crawford +WIB 20039 1990 2 Decatur +WIB 20041 1990 11 Dickinson +WIB 20043 1990 13 Doniphan +WIB 20045 1990 45 Douglas +WIB 20047 1990 0 Edwards +WIB 20049 1990 7 Elk +WIB 20051 1990 1 Ellis +WIB 20053 1990 20 Ellsworth +WIB 20055 1990 7 Finney +WIB 20057 1990 2 Ford +WIB 20059 1990 7 Franklin +WIB 20061 1990 51 Geary +WIB 20063 1990 0 Gove +WIB 20065 1990 1 Graham +WIB 20067 1990 0 Grant +WIB 20069 1990 1 Gray +WIB 20071 1990 0 Greeley +WIB 20073 1990 33 Greenwood +WIB 20075 1990 3 Hamilton +WIB 20077 1990 4 Harper +WIB 20079 1990 3 Harvey +WIB 20081 1990 1 Haskell +WIB 20083 1990 1 Hodgeman +WIB 20085 1990 3 Jackson +WIB 20087 1990 54 Jefferson +WIB 20089 1990 14 Jewell +WIB 20091 1990 9 Johnson +WIB 20093 1990 4 Kearny +WIB 20095 1990 8 Kingman +WIB 20097 1990 1 Kiowa +WIB 20099 1990 12 Labette +WIB 20101 1990 1 Lane +WIB 20103 1990 13 Leavenworth +WIB 20105 1990 3 Lincoln +WIB 20107 1990 20 Linn +WIB 20109 1990 0 Logan +WIB 20111 1990 11 Lyon +WIB 20113 1990 4 McPherson +WIB 20115 1990 27 Marion +WIB 20117 1990 5 Marshall +WIB 20119 1990 3 Meade +WIB 20121 1990 35 Miami +WIB 20123 1990 49 Mitchell +WIB 20125 1990 16 Montgomery +WIB 20127 1990 14 Morris +WIB 20129 1990 0 Morton +WIB 20131 1990 1 Nemaha +WIB 20133 1990 16 Neosho +WIB 20135 1990 1 Ness +WIB 20137 1990 9 Norton +WIB 20139 1990 41 Osage +WIB 20141 1990 4 Osborne +WIB 20143 1990 2 Ottawa +WIB 20145 1990 1 Pawnee +WIB 20147 1990 22 Phillips +WIB 20149 1990 46 Pottawatomie +WIB 20151 1990 2 Pratt +WIB 20153 1990 0 Rawlins +WIB 20155 1990 44 Reno +WIB 20157 1990 10 Republic +WIB 20159 1990 4 Rice +WIB 20161 1990 32 Riley +WIB 20163 1990 18 Rooks +WIB 20165 1990 1 Rush +WIB 20167 1990 37 Russell +WIB 20169 1990 4 Saline +WIB 20171 1990 0 Scott +WIB 20173 1990 24 Sedgwick +WIB 20175 1990 3 Seward +WIB 20177 1990 17 Shawnee +WIB 20179 1990 1 Sheridan +WIB 20181 1990 1 Sherman +WIB 20183 1990 3 Smith +WIB 20185 1990 7 Stafford +WIB 20187 1990 0 Stanton +WIB 20189 1990 0 Stevens +WIB 20191 1990 8 Sumner +WIB 20193 1990 0 Thomas +WIB 20195 1990 28 Trego +WIB 20197 1990 6 Wabaunsee +WIB 20199 1990 0 Wallace +WIB 20201 1990 1 Washington +WIB 20203 1990 0 Wichita +WIB 20205 1990 3 Wilson +WIB 20207 1990 13 Woodson +WIB 20209 1990 11 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KS_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KS_WOB.ALO new file mode 100644 index 0000000..6c9f9d5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KS_WOB.ALO @@ -0,0 +1,130 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 20000 1990 1192 KS +WOB 20001 1990 6 Allen +WOB 20003 1990 4 Anderson +WOB 20005 1990 7 Atchison +WOB 20007 1990 5 Barber +WOB 20009 1990 17 Barton +WOB 20011 1990 4 Bourbon +WOB 20013 1990 4 Brown +WOB 20015 1990 47 Butler +WOB 20017 1990 5 Chase +WOB 20019 1990 8 Chautauqua +WOB 20021 1990 10 Cherokee +WOB 20023 1990 2 Cheyenne +WOB 20025 1990 7 Clark +WOB 20027 1990 30 Clay +WOB 20029 1990 7 Cloud +WOB 20031 1990 63 Coffey +WOB 20033 1990 4 Comanche +WOB 20035 1990 16 Cowley +WOB 20037 1990 6 Crawford +WOB 20039 1990 2 Decatur +WOB 20041 1990 11 Dickinson +WOB 20043 1990 13 Doniphan +WOB 20045 1990 45 Douglas +WOB 20047 1990 0 Edwards +WOB 20049 1990 7 Elk +WOB 20051 1990 1 Ellis +WOB 20053 1990 20 Ellsworth +WOB 20055 1990 7 Finney +WOB 20057 1990 2 Ford +WOB 20059 1990 7 Franklin +WOB 20061 1990 51 Geary +WOB 20063 1990 0 Gove +WOB 20065 1990 1 Graham +WOB 20067 1990 0 Grant +WOB 20069 1990 1 Gray +WOB 20071 1990 0 Greeley +WOB 20073 1990 33 Greenwood +WOB 20075 1990 3 Hamilton +WOB 20077 1990 4 Harper +WOB 20079 1990 3 Harvey +WOB 20081 1990 1 Haskell +WOB 20083 1990 1 Hodgeman +WOB 20085 1990 3 Jackson +WOB 20087 1990 54 Jefferson +WOB 20089 1990 14 Jewell +WOB 20091 1990 9 Johnson +WOB 20093 1990 4 Kearny +WOB 20095 1990 8 Kingman +WOB 20097 1990 1 Kiowa +WOB 20099 1990 12 Labette +WOB 20101 1990 1 Lane +WOB 20103 1990 13 Leavenworth +WOB 20105 1990 3 Lincoln +WOB 20107 1990 20 Linn +WOB 20109 1990 0 Logan +WOB 20111 1990 11 Lyon +WOB 20113 1990 4 McPherson +WOB 20115 1990 27 Marion +WOB 20117 1990 5 Marshall +WOB 20119 1990 3 Meade +WOB 20121 1990 35 Miami +WOB 20123 1990 49 Mitchell +WOB 20125 1990 16 Montgomery +WOB 20127 1990 14 Morris +WOB 20129 1990 0 Morton +WOB 20131 1990 1 Nemaha +WOB 20133 1990 16 Neosho +WOB 20135 1990 1 Ness +WOB 20137 1990 9 Norton +WOB 20139 1990 41 Osage +WOB 20141 1990 4 Osborne +WOB 20143 1990 2 Ottawa +WOB 20145 1990 1 Pawnee +WOB 20147 1990 22 Phillips +WOB 20149 1990 46 Pottawatomie +WOB 20151 1990 2 Pratt +WOB 20153 1990 0 Rawlins +WOB 20155 1990 44 Reno +WOB 20157 1990 10 Republic +WOB 20159 1990 4 Rice +WOB 20161 1990 32 Riley +WOB 20163 1990 18 Rooks +WOB 20165 1990 1 Rush +WOB 20167 1990 37 Russell +WOB 20169 1990 4 Saline +WOB 20171 1990 0 Scott +WOB 20173 1990 24 Sedgwick +WOB 20175 1990 3 Seward +WOB 20177 1990 17 Shawnee +WOB 20179 1990 1 Sheridan +WOB 20181 1990 1 Sherman +WOB 20183 1990 3 Smith +WOB 20185 1990 7 Stafford +WOB 20187 1990 0 Stanton +WOB 20189 1990 0 Stevens +WOB 20191 1990 8 Sumner +WOB 20193 1990 0 Thomas +WOB 20195 1990 28 Trego +WOB 20197 1990 6 Wabaunsee +WOB 20199 1990 0 Wallace +WOB 20201 1990 1 Washington +WOB 20203 1990 0 Wichita +WOB 20205 1990 3 Wilson +WOB 20207 1990 13 Woodson +WOB 20209 1990 11 Wyandotte +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_AIRTR.ALO new file mode 100644 index 0000000..570064d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_AIRTR.ALO @@ -0,0 +1,147 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 21000 2002 1385.494 KY +AIR 21001 2002 0.000 Adair +AIR 21003 2002 0.000 Allen +AIR 21005 2002 0.000 Anderson +AIR 21007 2002 0.000 Ballard +AIR 21009 2002 0.109 Barren +AIR 21011 2002 0.000 Bath +AIR 21013 2002 0.000 Bell +AIR 21015 2002 798.470 Boone +AIR 21017 2002 0.000 Bourbon +AIR 21019 2002 0.000 Boyd +AIR 21021 2002 0.000 Boyle +AIR 21023 2002 0.000 Bracken +AIR 21025 2002 0.000 Breathitt +AIR 21027 2002 0.000 Breckinridge +AIR 21029 2002 0.000 Bullitt +AIR 21031 2002 0.000 Butler +AIR 21033 2002 0.000 Caldwell +AIR 21035 2002 0.094 Calloway +AIR 21037 2002 0.000 Campbell +AIR 21039 2002 0.000 Carlisle +AIR 21041 2002 0.000 Carroll +AIR 21043 2002 0.000 Carter +AIR 21045 2002 0.000 Casey +AIR 21047 2002 0.170 Christian +AIR 21049 2002 0.000 Clark +AIR 21051 2002 0.000 Clay +AIR 21053 2002 0.000 Clinton +AIR 21055 2002 0.000 Crittenden +AIR 21057 2002 0.000 Cumberland +AIR 21059 2002 0.480 Daviess +AIR 21061 2002 0.000 Edmonson +AIR 21063 2002 0.000 Elliott +AIR 21065 2002 0.000 Estill +AIR 21067 2002 55.180 Fayette +AIR 21069 2002 0.000 Fleming +AIR 21071 2002 0.000 Floyd +AIR 21073 2002 1.670 Franklin +AIR 21075 2002 0.000 Fulton +AIR 21077 2002 0.000 Gallatin +AIR 21079 2002 0.000 Garrard +AIR 21081 2002 0.000 Grant +AIR 21083 2002 0.070 Graves +AIR 21085 2002 0.000 Grayson +AIR 21087 2002 0.000 Green +AIR 21089 2002 0.000 Greenup +AIR 21091 2002 0.000 Hancock +AIR 21093 2002 0.090 Hardin +AIR 21095 2002 0.000 Harlan +AIR 21097 2002 0.000 Harrison +AIR 21099 2002 0.000 Hart +AIR 21101 2002 0.000 Henderson +AIR 21103 2002 0.000 Henry +AIR 21105 2002 0.000 Hickman +AIR 21107 2002 0.150 Hopkins +AIR 21109 2002 0.000 Jackson +AIR 21111 2002 526.630 Jefferson +AIR 21113 2002 0.000 Jessamine +AIR 21115 2002 0.000 Johnson +AIR 21117 2002 0.000 Kenton +AIR 21119 2002 0.000 Knott +AIR 21121 2002 0.000 Knox +AIR 21123 2002 0.000 Larue +AIR 21125 2002 0.150 Laurel +AIR 21127 2002 0.000 Lawrence +AIR 21129 2002 0.000 Lee +AIR 21131 2002 0.000 Leslie +AIR 21133 2002 0.000 Letcher +AIR 21135 2002 0.000 Lewis +AIR 21137 2002 0.000 Lincoln +AIR 21139 2002 0.000 Livingston +AIR 21141 2002 0.044 Logan +AIR 21143 2002 0.000 Lyon +AIR 21145 2002 0.680 McCracken +AIR 21147 2002 0.000 McCreary +AIR 21149 2002 0.000 McLean +AIR 21151 2002 0.110 Madison +AIR 21153 2002 0.000 Magoffin +AIR 21155 2002 0.000 Marion +AIR 21157 2002 0.000 Marshall +AIR 21159 2002 0.000 Martin +AIR 21161 2002 0.120 Mason +AIR 21163 2002 0.000 Meade +AIR 21165 2002 0.000 Menifee +AIR 21167 2002 0.000 Mercer +AIR 21169 2002 0.000 Metcalfe +AIR 21171 2002 0.000 Monroe +AIR 21173 2002 0.240 Montgomery +AIR 21175 2002 0.000 Morgan +AIR 21177 2002 0.038 Muhlenberg +AIR 21179 2002 0.067 Nelson +AIR 21181 2002 0.000 Nicholas +AIR 21183 2002 0.000 Ohio +AIR 21185 2002 0.000 Oldham +AIR 21187 2002 0.000 Owen +AIR 21189 2002 0.000 Owsley +AIR 21191 2002 0.000 Pendleton +AIR 21193 2002 0.000 Perry +AIR 21195 2002 0.000 Pike +AIR 21197 2002 0.000 Powell +AIR 21199 2002 0.219 Pulaski +AIR 21201 2002 0.000 Robertson +AIR 21203 2002 0.000 Rockcastle +AIR 21205 2002 0.000 Rowan +AIR 21207 2002 0.000 Russell +AIR 21209 2002 0.140 Scott +AIR 21211 2002 0.000 Shelby +AIR 21213 2002 0.000 Simpson +AIR 21215 2002 0.000 Spencer +AIR 21217 2002 0.140 Taylor +AIR 21219 2002 0.000 Todd +AIR 21221 2002 0.000 Trigg +AIR 21223 2002 0.000 Trimble +AIR 21225 2002 0.059 Union +AIR 21227 2002 0.280 Warren +AIR 21229 2002 0.028 Washington +AIR 21231 2002 0.067 Wayne +AIR 21233 2002 0.000 Webster +AIR 21235 2002 0.000 Whitley +AIR 21237 2002 0.000 Wolfe +AIR 21239 2002 0.000 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_COAL.ALO new file mode 100644 index 0000000..cf839d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_COAL.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 21000 2002 75587 KY +MIN 21001 2002 0 Adair +MIN 21003 2002 0 Allen +MIN 21005 2002 0 Anderson +MIN 21007 2002 0 Ballard +MIN 21009 2002 0 Barren +MIN 21011 2002 0 Bath +MIN 21013 2002 1277 Bell +MIN 21015 2002 0 Boone +MIN 21017 2002 0 Bourbon +MIN 21019 2002 0 Boyd +MIN 21021 2002 0 Boyle +MIN 21023 2002 0 Bracken +MIN 21025 2002 0 Breathitt +MIN 21027 2002 0 Breckinridge +MIN 21029 2002 0 Bullitt +MIN 21031 2002 0 Butler +MIN 21033 2002 0 Caldwell +MIN 21035 2002 0 Calloway +MIN 21037 2002 0 Campbell +MIN 21039 2002 0 Carlisle +MIN 21041 2002 0 Carroll +MIN 21043 2002 0 Carter +MIN 21045 2002 0 Casey +MIN 21047 2002 0 Christian +MIN 21049 2002 0 Clark +MIN 21051 2002 39 Clay +MIN 21053 2002 0 Clinton +MIN 21055 2002 0 Crittenden +MIN 21057 2002 0 Cumberland +MIN 21059 2002 0 Daviess +MIN 21061 2002 0 Edmonson +MIN 21063 2002 0 Elliott +MIN 21065 2002 0 Estill +MIN 21067 2002 0 Fayette +MIN 21069 2002 0 Fleming +MIN 21071 2002 1797 Floyd +MIN 21073 2002 0 Franklin +MIN 21075 2002 0 Fulton +MIN 21077 2002 0 Gallatin +MIN 21079 2002 0 Garrard +MIN 21081 2002 0 Grant +MIN 21083 2002 0 Graves +MIN 21085 2002 0 Grayson +MIN 21087 2002 0 Green +MIN 21089 2002 0 Greenup +MIN 21091 2002 0 Hancock +MIN 21093 2002 0 Hardin +MIN 21095 2002 8576 Harlan +MIN 21097 2002 0 Harrison +MIN 21099 2002 0 Hart +MIN 21101 2002 1462 Henderson +MIN 21103 2002 0 Henry +MIN 21105 2002 0 Hickman +MIN 21107 2002 2294 Hopkins +MIN 21109 2002 0 Jackson +MIN 21111 2002 0 Jefferson +MIN 21113 2002 0 Jessamine +MIN 21115 2002 467 Johnson +MIN 21117 2002 0 Kenton +MIN 21119 2002 5544 Knott +MIN 21121 2002 273 Knox +MIN 21123 2002 0 Larue +MIN 21125 2002 0 Laurel +MIN 21127 2002 580 Lawrence +MIN 21129 2002 0 Lee +MIN 21131 2002 4192 Leslie +MIN 21133 2002 5716 Letcher +MIN 21135 2002 0 Lewis +MIN 21137 2002 0 Lincoln +MIN 21139 2002 0 Livingston +MIN 21141 2002 0 Logan +MIN 21143 2002 0 Lyon +MIN 21145 2002 0 McCracken +MIN 21147 2002 0 McCreary +MIN 21149 2002 0 McLean +MIN 21151 2002 0 Madison +MIN 21153 2002 0 Magoffin +MIN 21155 2002 0 Marion +MIN 21157 2002 0 Marshall +MIN 21159 2002 4550 Martin +MIN 21161 2002 0 Mason +MIN 21163 2002 0 Meade +MIN 21165 2002 0 Menifee +MIN 21167 2002 0 Mercer +MIN 21169 2002 0 Metcalfe +MIN 21171 2002 0 Monroe +MIN 21173 2002 0 Montgomery +MIN 21175 2002 0 Morgan +MIN 21177 2002 3257 Muhlenberg +MIN 21179 2002 0 Nelson +MIN 21181 2002 0 Nicholas +MIN 21183 2002 345 Ohio +MIN 21185 2002 0 Oldham +MIN 21187 2002 0 Owen +MIN 21189 2002 0 Owsley +MIN 21191 2002 0 Pendleton +MIN 21193 2002 4762 Perry +MIN 21195 2002 18501 Pike +MIN 21197 2002 0 Powell +MIN 21199 2002 0 Pulaski +MIN 21201 2002 0 Robertson +MIN 21203 2002 0 Rockcastle +MIN 21205 2002 0 Rowan +MIN 21207 2002 0 Russell +MIN 21209 2002 0 Scott +MIN 21211 2002 0 Shelby +MIN 21213 2002 0 Simpson +MIN 21215 2002 0 Spencer +MIN 21217 2002 0 Taylor +MIN 21219 2002 0 Todd +MIN 21221 2002 0 Trigg +MIN 21223 2002 0 Trimble +MIN 21225 2002 3819 Union +MIN 21227 2002 0 Warren +MIN 21229 2002 0 Washington +MIN 21231 2002 0 Wayne +MIN 21233 2002 7999 Webster +MIN 21235 2002 137 Whitley +MIN 21237 2002 0 Wolfe +MIN 21239 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_CONST.ALO new file mode 100644 index 0000000..227ff07 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_CONST.ALO @@ -0,0 +1,147 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 21000 2003 7225832 KY +CON 21001 2003 2285 Adair +CON 21003 2003 36938 Allen +CON 21005 2003 27085 Anderson +CON 21007 2003 5159 Ballard +CON 21009 2003 33824 Barren +CON 21011 2003 23553 Bath +CON 21013 2003 14512 Bell +CON 21015 2003 326257 Boone +CON 21017 2003 18567 Bourbon +CON 21019 2003 36894 Boyd +CON 21021 2003 52026 Boyle +CON 21023 2003 13803 Bracken +CON 21025 2003 21145 Breathitt +CON 21027 2003 7684 Breckinridge +CON 21029 2003 157394 Bullitt +CON 21031 2003 4600 Butler +CON 21033 2003 11690 Caldwell +CON 21035 2003 37573 Calloway +CON 21037 2003 107044 Campbell +CON 21039 2003 4205 Carlisle +CON 21041 2003 10183 Carroll +CON 21043 2003 37528 Carter +CON 21045 2003 8212 Casey +CON 21047 2003 118104 Christian +CON 21049 2003 90100 Clark +CON 21051 2003 32522 Clay +CON 21053 2003 2614 Clinton +CON 21055 2003 5492 Crittenden +CON 21057 2003 1004 Cumberland +CON 21059 2003 187096 Daviess +CON 21061 2003 6481 Edmonson +CON 21063 2003 10307 Elliott +CON 21065 2003 14428 Estill +CON 21067 2003 578897 Fayette +CON 21069 2003 10319 Fleming +CON 21071 2003 70181 Floyd +CON 21073 2003 64625 Franklin +CON 21075 2003 3504 Fulton +CON 21077 2003 5335 Gallatin +CON 21079 2003 7360 Garrard +CON 21081 2003 26996 Grant +CON 21083 2003 29177 Graves +CON 21085 2003 27201 Grayson +CON 21087 2003 2608 Green +CON 21089 2003 28546 Greenup +CON 21091 2003 9473 Hancock +CON 21093 2003 179603 Hardin +CON 21095 2003 26498 Harlan +CON 21097 2003 10530 Harrison +CON 21099 2003 9258 Hart +CON 21101 2003 90380 Henderson +CON 21103 2003 22800 Henry +CON 21105 2003 6705 Hickman +CON 21107 2003 39035 Hopkins +CON 21109 2003 8511 Jackson +CON 21111 2003 1724147 Jefferson +CON 21113 2003 89705 Jessamine +CON 21115 2003 30942 Johnson +CON 21117 2003 279875 Kenton +CON 21119 2003 31571 Knott +CON 21121 2003 70209 Knox +CON 21123 2003 9177 Larue +CON 21125 2003 37491 Laurel +CON 21127 2003 21279 Lawrence +CON 21129 2003 8088 Lee +CON 21131 2003 12146 Leslie +CON 21133 2003 23156 Letcher +CON 21135 2003 18005 Lewis +CON 21137 2003 24333 Lincoln +CON 21139 2003 7303 Livingston +CON 21141 2003 6485 Logan +CON 21143 2003 18776 Lyon +CON 21145 2003 70734 McCracken +CON 21147 2003 27635 McCreary +CON 21149 2003 11209 McLean +CON 21151 2003 141488 Madison +CON 21153 2003 16521 Magoffin +CON 21155 2003 14767 Marion +CON 21157 2003 22347 Marshall +CON 21159 2003 12576 Martin +CON 21161 2003 22825 Mason +CON 21163 2003 12433 Meade +CON 21165 2003 6361 Menifee +CON 21167 2003 27601 Mercer +CON 21169 2003 6521 Metcalfe +CON 21171 2003 10587 Monroe +CON 21173 2003 52670 Montgomery +CON 21175 2003 21608 Morgan +CON 21177 2003 33647 Muhlenberg +CON 21179 2003 88577 Nelson +CON 21181 2003 2970 Nicholas +CON 21183 2003 25597 Ohio +CON 21185 2003 195629 Oldham +CON 21187 2003 13568 Owen +CON 21189 2003 3632 Owsley +CON 21191 2003 11210 Pendleton +CON 21193 2003 29486 Perry +CON 21195 2003 137805 Pike +CON 21197 2003 5276 Powell +CON 21199 2003 64799 Pulaski +CON 21201 2003 1297 Robertson +CON 21203 2003 20980 Rockcastle +CON 21205 2003 20470 Rowan +CON 21207 2003 24988 Russell +CON 21209 2003 149474 Scott +CON 21211 2003 99758 Shelby +CON 21213 2003 17720 Simpson +CON 21215 2003 46464 Spencer +CON 21217 2003 15295 Taylor +CON 21219 2003 6968 Todd +CON 21221 2003 10215 Trigg +CON 21223 2003 174421 Trimble +CON 21225 2003 6112 Union +CON 21227 2003 262322 Warren +CON 21229 2003 26900 Washington +CON 21231 2003 2117 Wayne +CON 21233 2003 6410 Webster +CON 21235 2003 20760 Whitley +CON 21237 2003 10137 Wolfe +CON 21239 2003 76402 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_FARMS.ALO new file mode 100644 index 0000000..33d7057 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_FARMS.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 21000 2002 4978994 KY +FRM 21001 2002 48090 Adair +FRM 21003 2002 47011 Allen +FRM 21005 2002 21927 Anderson +FRM 21007 2002 71870 Ballard +FRM 21009 2002 96144 Barren +FRM 21011 2002 28034 Bath +FRM 21013 2002 1117 Bell +FRM 21015 2002 21641 Boone +FRM 21017 2002 55609 Bourbon +FRM 21019 2002 4100 Boyd +FRM 21021 2002 32384 Boyle +FRM 21023 2002 22716 Bracken +FRM 21025 2002 1858 Breathitt +FRM 21027 2002 72234 Breckinridge +FRM 21029 2002 19097 Bullitt +FRM 21031 2002 46512 Butler +FRM 21033 2002 63317 Caldwell +FRM 21035 2002 101251 Calloway +FRM 21037 2002 14957 Campbell +FRM 21039 2002 67701 Carlisle +FRM 21041 2002 13407 Carroll +FRM 21043 2002 13671 Carter +FRM 21045 2002 43701 Casey +FRM 21047 2002 168759 Christian +FRM 21049 2002 39049 Clark +FRM 21051 2002 5656 Clay +FRM 21053 2002 18312 Clinton +FRM 21055 2002 39372 Crittenden +FRM 21057 2002 15354 Cumberland +FRM 21059 2002 191446 Daviess +FRM 21061 2002 23014 Edmonson +FRM 21063 2002 7454 Elliott +FRM 21065 2002 11546 Estill +FRM 21067 2002 26264 Fayette +FRM 21069 2002 51776 Fleming +FRM 21071 2002 1003 Floyd +FRM 21073 2002 20671 Franklin +FRM 21075 2002 93768 Fulton +FRM 21077 2002 8338 Gallatin +FRM 21079 2002 33798 Garrard +FRM 21081 2002 25316 Grant +FRM 21083 2002 147914 Graves +FRM 21085 2002 58181 Grayson +FRM 21087 2002 41301 Green +FRM 21089 2002 14565 Greenup +FRM 21091 2002 24753 Hancock +FRM 21093 2002 95882 Hardin +FRM 21095 2002 276 Harlan +FRM 21097 2002 47077 Harrison +FRM 21099 2002 48736 Hart +FRM 21101 2002 149867 Henderson +FRM 21103 2002 47967 Henry +FRM 21105 2002 88064 Hickman +FRM 21107 2002 79126 Hopkins +FRM 21109 2002 16610 Jackson +FRM 21111 2002 12913 Jefferson +FRM 21113 2002 22953 Jessamine +FRM 21115 2002 2518 Johnson +FRM 21117 2002 13042 Kenton +FRM 21119 2002 151 Knott +FRM 21121 2002 8948 Knox +FRM 21123 2002 60242 Larue +FRM 21125 2002 30858 Laurel +FRM 21127 2002 4655 Lawrence +FRM 21129 2002 4475 Lee +FRM 21131 2002 87 Leslie +FRM 21133 2002 146 Letcher +FRM 21135 2002 24625 Lewis +FRM 21137 2002 53988 Lincoln +FRM 21139 2002 43842 Livingston +FRM 21141 2002 144985 Logan +FRM 21143 2002 16919 Lyon +FRM 21145 2002 54003 McCracken +FRM 21147 2002 3408 McCreary +FRM 21149 2002 93995 McLean +FRM 21151 2002 54057 Madison +FRM 21153 2002 3310 Magoffin +FRM 21155 2002 56468 Marion +FRM 21157 2002 51400 Marshall +FRM 21159 2002 376 Martin +FRM 21161 2002 45732 Mason +FRM 21163 2002 49025 Meade +FRM 21165 2002 6931 Menifee +FRM 21167 2002 42663 Mercer +FRM 21169 2002 34837 Metcalfe +FRM 21171 2002 41705 Monroe +FRM 21173 2002 23824 Montgomery +FRM 21175 2002 13921 Morgan +FRM 21177 2002 54875 Muhlenberg +FRM 21179 2002 76438 Nelson +FRM 21181 2002 28797 Nicholas +FRM 21183 2002 61134 Ohio +FRM 21185 2002 20830 Oldham +FRM 21187 2002 34653 Owen +FRM 21189 2002 3135 Owsley +FRM 21191 2002 30335 Pendleton +FRM 21193 2002 1174 Perry +FRM 21195 2002 728 Pike +FRM 21197 2002 8890 Powell +FRM 21199 2002 74061 Pulaski +FRM 21201 2002 8775 Robertson +FRM 21203 2002 20429 Rockcastle +FRM 21205 2002 12454 Rowan +FRM 21207 2002 31363 Russell +FRM 21209 2002 37115 Scott +FRM 21211 2002 89373 Shelby +FRM 21213 2002 82950 Simpson +FRM 21215 2002 27501 Spencer +FRM 21217 2002 40118 Taylor +FRM 21219 2002 104915 Todd +FRM 21221 2002 49643 Trigg +FRM 21223 2002 15364 Trimble +FRM 21225 2002 161551 Union +FRM 21227 2002 107899 Warren +FRM 21229 2002 49528 Washington +FRM 21231 2002 30653 Wayne +FRM 21233 2002 96313 Webster +FRM 21235 2002 14403 Whitley +FRM 21237 2002 7332 Wolfe +FRM 21239 2002 25699 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_GOLF.ALO new file mode 100644 index 0000000..24e26c4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_GOLF.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 21000 2002 198 KY +GC 21001 2002 1 Adair +GC 21003 2002 1 Allen +GC 21005 2002 1 Anderson +GC 21007 2002 1 Ballard +GC 21009 2002 2 Barren +GC 21011 2002 0 Bath +GC 21013 2002 1 Bell +GC 21015 2002 3 Boone +GC 21017 2002 3 Bourbon +GC 21019 2002 5 Boyd +GC 21021 2002 2 Boyle +GC 21023 2002 0 Bracken +GC 21025 2002 0 Breathitt +GC 21027 2002 0 Breckinridge +GC 21029 2002 2 Bullitt +GC 21031 2002 1 Butler +GC 21033 2002 1 Caldwell +GC 21035 2002 3 Calloway +GC 21037 2002 3 Campbell +GC 21039 2002 0 Carlisle +GC 21041 2002 0 Carroll +GC 21043 2002 0 Carter +GC 21045 2002 0 Casey +GC 21047 2002 3 Christian +GC 21049 2002 3 Clark +GC 21051 2002 1 Clay +GC 21053 2002 0 Clinton +GC 21055 2002 1 Crittenden +GC 21057 2002 0 Cumberland +GC 21059 2002 4 Daviess +GC 21061 2002 0 Edmonson +GC 21063 2002 0 Elliott +GC 21065 2002 0 Estill +GC 21067 2002 5 Fayette +GC 21069 2002 1 Fleming +GC 21071 2002 0 Floyd +GC 21073 2002 2 Franklin +GC 21075 2002 1 Fulton +GC 21077 2002 1 Gallatin +GC 21079 2002 1 Garrard +GC 21081 2002 1 Grant +GC 21083 2002 1 Graves +GC 21085 2002 0 Grayson +GC 21087 2002 1 Green +GC 21089 2002 4 Greenup +GC 21091 2002 1 Hancock +GC 21093 2002 4 Hardin +GC 21095 2002 1 Harlan +GC 21097 2002 1 Harrison +GC 21099 2002 1 Hart +GC 21101 2002 1 Henderson +GC 21103 2002 0 Henry +GC 21105 2002 0 Hickman +GC 21107 2002 1 Hopkins +GC 21109 2002 0 Jackson +GC 21111 2002 30 Jefferson +GC 21113 2002 6 Jessamine +GC 21115 2002 0 Johnson +GC 21117 2002 5 Kenton +GC 21119 2002 0 Knott +GC 21121 2002 1 Knox +GC 21123 2002 1 Larue +GC 21125 2002 2 Laurel +GC 21127 2002 0 Lawrence +GC 21129 2002 0 Lee +GC 21131 2002 0 Leslie +GC 21133 2002 1 Letcher +GC 21135 2002 0 Lewis +GC 21137 2002 0 Lincoln +GC 21139 2002 1 Livingston +GC 21141 2002 2 Logan +GC 21143 2002 0 Lyon +GC 21145 2002 3 McCracken +GC 21147 2002 1 McCreary +GC 21149 2002 1 McLean +GC 21151 2002 5 Madison +GC 21153 2002 0 Magoffin +GC 21155 2002 1 Marion +GC 21157 2002 3 Marshall +GC 21159 2002 0 Martin +GC 21161 2002 3 Mason +GC 21163 2002 2 Meade +GC 21165 2002 0 Menifee +GC 21167 2002 2 Mercer +GC 21169 2002 1 Metcalfe +GC 21171 2002 1 Monroe +GC 21173 2002 2 Montgomery +GC 21175 2002 1 Morgan +GC 21177 2002 4 Muhlenberg +GC 21179 2002 3 Nelson +GC 21181 2002 2 Nicholas +GC 21183 2002 1 Ohio +GC 21185 2002 5 Oldham +GC 21187 2002 1 Owen +GC 21189 2002 0 Owsley +GC 21191 2002 1 Pendleton +GC 21193 2002 1 Perry +GC 21195 2002 1 Pike +GC 21197 2002 2 Powell +GC 21199 2002 3 Pulaski +GC 21201 2002 0 Robertson +GC 21203 2002 0 Rockcastle +GC 21205 2002 2 Rowan +GC 21207 2002 3 Russell +GC 21209 2002 1 Scott +GC 21211 2002 3 Shelby +GC 21213 2002 2 Simpson +GC 21215 2002 1 Spencer +GC 21217 2002 1 Taylor +GC 21219 2002 2 Todd +GC 21221 2002 1 Trigg +GC 21223 2002 1 Trimble +GC 21225 2002 2 Union +GC 21227 2002 5 Warren +GC 21229 2002 0 Washington +GC 21231 2002 1 Wayne +GC 21233 2002 1 Webster +GC 21235 2002 1 Whitley +GC 21237 2002 0 Wolfe +GC 21239 2002 2 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_HOLSL.ALO new file mode 100644 index 0000000..6968923 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_HOLSL.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 21000 2002 4713 KY +COM 21001 2002 14 Adair +COM 21003 2002 11 Allen +COM 21005 2002 9 Anderson +COM 21007 2002 7 Ballard +COM 21009 2002 35 Barren +COM 21011 2002 2 Bath +COM 21013 2002 22 Bell +COM 21015 2002 152 Boone +COM 21017 2002 20 Bourbon +COM 21019 2002 84 Boyd +COM 21021 2002 32 Boyle +COM 21023 2002 4 Bracken +COM 21025 2002 4 Breathitt +COM 21027 2002 13 Breckinridge +COM 21029 2002 38 Bullitt +COM 21031 2002 6 Butler +COM 21033 2002 8 Caldwell +COM 21035 2002 57 Calloway +COM 21037 2002 75 Campbell +COM 21039 2002 5 Carlisle +COM 21041 2002 13 Carroll +COM 21043 2002 11 Carter +COM 21045 2002 16 Casey +COM 21047 2002 76 Christian +COM 21049 2002 40 Clark +COM 21051 2002 12 Clay +COM 21053 2002 10 Clinton +COM 21055 2002 5 Crittenden +COM 21057 2002 3 Cumberland +COM 21059 2002 125 Daviess +COM 21061 2002 3 Edmonson +COM 21063 2002 0 Elliott +COM 21065 2002 6 Estill +COM 21067 2002 441 Fayette +COM 21069 2002 13 Fleming +COM 21071 2002 48 Floyd +COM 21073 2002 35 Franklin +COM 21075 2002 14 Fulton +COM 21077 2002 5 Gallatin +COM 21079 2002 8 Garrard +COM 21081 2002 12 Grant +COM 21083 2002 36 Graves +COM 21085 2002 21 Grayson +COM 21087 2002 6 Green +COM 21089 2002 15 Greenup +COM 21091 2002 2 Hancock +COM 21093 2002 66 Hardin +COM 21095 2002 21 Harlan +COM 21097 2002 11 Harrison +COM 21099 2002 15 Hart +COM 21101 2002 53 Henderson +COM 21103 2002 11 Henry +COM 21105 2002 5 Hickman +COM 21107 2002 46 Hopkins +COM 21109 2002 3 Jackson +COM 21111 2002 1386 Jefferson +COM 21113 2002 50 Jessamine +COM 21115 2002 22 Johnson +COM 21117 2002 189 Kenton +COM 21119 2002 2 Knott +COM 21121 2002 11 Knox +COM 21123 2002 11 Larue +COM 21125 2002 57 Laurel +COM 21127 2002 7 Lawrence +COM 21129 2002 3 Lee +COM 21131 2002 1 Leslie +COM 21133 2002 10 Letcher +COM 21135 2002 7 Lewis +COM 21137 2002 15 Lincoln +COM 21139 2002 3 Livingston +COM 21141 2002 32 Logan +COM 21143 2002 5 Lyon +COM 21145 2002 126 McCracken +COM 21147 2002 1 McCreary +COM 21149 2002 8 McLean +COM 21151 2002 40 Madison +COM 21153 2002 4 Magoffin +COM 21155 2002 13 Marion +COM 21157 2002 43 Marshall +COM 21159 2002 4 Martin +COM 21161 2002 29 Mason +COM 21163 2002 8 Meade +COM 21165 2002 0 Menifee +COM 21167 2002 16 Mercer +COM 21169 2002 1 Metcalfe +COM 21171 2002 10 Monroe +COM 21173 2002 31 Montgomery +COM 21175 2002 3 Morgan +COM 21177 2002 10 Muhlenberg +COM 21179 2002 31 Nelson +COM 21181 2002 2 Nicholas +COM 21183 2002 10 Ohio +COM 21185 2002 70 Oldham +COM 21187 2002 6 Owen +COM 21189 2002 0 Owsley +COM 21191 2002 9 Pendleton +COM 21193 2002 35 Perry +COM 21195 2002 66 Pike +COM 21197 2002 7 Powell +COM 21199 2002 75 Pulaski +COM 21201 2002 0 Robertson +COM 21203 2002 10 Rockcastle +COM 21205 2002 28 Rowan +COM 21207 2002 14 Russell +COM 21209 2002 35 Scott +COM 21211 2002 39 Shelby +COM 21213 2002 13 Simpson +COM 21215 2002 4 Spencer +COM 21217 2002 32 Taylor +COM 21219 2002 15 Todd +COM 21221 2002 6 Trigg +COM 21223 2002 1 Trimble +COM 21225 2002 13 Union +COM 21227 2002 137 Warren +COM 21229 2002 13 Washington +COM 21231 2002 11 Wayne +COM 21233 2002 4 Webster +COM 21235 2002 35 Whitley +COM 21237 2002 4 Wolfe +COM 21239 2002 25 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_HOUSE.ALO new file mode 100644 index 0000000..9ae5472 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_HOUSE.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 21000 2002 1796795 KY +HOU 21001 2002 7829 Adair +HOU 21003 2002 8201 Allen +HOU 21005 2002 8075 Anderson +HOU 21007 2002 3897 Ballard +HOU 21009 2002 17300 Barren +HOU 21011 2002 5107 Bath +HOU 21013 2002 13571 Bell +HOU 21015 2002 36766 Boone +HOU 21017 2002 8580 Bourbon +HOU 21019 2002 22080 Boyd +HOU 21021 2002 11673 Boyle +HOU 21023 2002 3757 Bracken +HOU 21025 2002 6992 Breathitt +HOU 21027 2002 10062 Breckinridge +HOU 21029 2002 24711 Bullitt +HOU 21031 2002 5923 Butler +HOU 21033 2002 6221 Caldwell +HOU 21035 2002 16355 Calloway +HOU 21037 2002 37188 Campbell +HOU 21039 2002 2528 Carlisle +HOU 21041 2002 4480 Carroll +HOU 21043 2002 11874 Carter +HOU 21045 2002 7382 Casey +HOU 21047 2002 27914 Christian +HOU 21049 2002 14415 Clark +HOU 21051 2002 9658 Clay +HOU 21053 2002 4944 Clinton +HOU 21055 2002 4489 Crittenden +HOU 21057 2002 3578 Cumberland +HOU 21059 2002 40107 Daviess +HOU 21061 2002 6243 Edmonson +HOU 21063 2002 3180 Elliott +HOU 21065 2002 6929 Estill +HOU 21067 2002 120496 Fayette +HOU 21069 2002 6201 Fleming +HOU 21071 2002 18947 Floyd +HOU 21073 2002 21846 Franklin +HOU 21075 2002 3695 Fulton +HOU 21077 2002 3419 Gallatin +HOU 21079 2002 6499 Garrard +HOU 21081 2002 9779 Grant +HOU 21083 2002 16542 Graves +HOU 21085 2002 12849 Grayson +HOU 21087 2002 5421 Green +HOU 21089 2002 16160 Greenup +HOU 21091 2002 3639 Hancock +HOU 21093 2002 38948 Hardin +HOU 21095 2002 15228 Harlan +HOU 21097 2002 7773 Harrison +HOU 21099 2002 8142 Hart +HOU 21101 2002 19790 Henderson +HOU 21103 2002 6606 Henry +HOU 21105 2002 2475 Hickman +HOU 21107 2002 20952 Hopkins +HOU 21109 2002 6182 Jackson +HOU 21111 2002 312093 Jefferson +HOU 21113 2002 15719 Jessamine +HOU 21115 2002 10340 Johnson +HOU 21117 2002 64740 Kenton +HOU 21119 2002 7774 Knott +HOU 21121 2002 14310 Knox +HOU 21123 2002 6122 Larue +HOU 21125 2002 22880 Laurel +HOU 21127 2002 7185 Lawrence +HOU 21129 2002 3397 Lee +HOU 21131 2002 5660 Leslie +HOU 21133 2002 11631 Letcher +HOU 21135 2002 6301 Lewis +HOU 21137 2002 10607 Lincoln +HOU 21139 2002 4874 Livingston +HOU 21141 2002 11988 Logan +HOU 21143 2002 4276 Lyon +HOU 21145 2002 30708 McCracken +HOU 21147 2002 7474 McCreary +HOU 21149 2002 4479 McLean +HOU 21151 2002 30481 Madison +HOU 21153 2002 5610 Magoffin +HOU 21155 2002 7341 Marion +HOU 21157 2002 15093 Marshall +HOU 21159 2002 5718 Martin +HOU 21161 2002 7777 Mason +HOU 21163 2002 10547 Meade +HOU 21165 2002 3771 Menifee +HOU 21167 2002 9495 Mercer +HOU 21169 2002 4679 Metcalfe +HOU 21171 2002 5379 Monroe +HOU 21173 2002 10026 Montgomery +HOU 21175 2002 5618 Morgan +HOU 21177 2002 13887 Muhlenberg +HOU 21179 2002 15915 Nelson +HOU 21181 2002 3083 Nicholas +HOU 21183 2002 10104 Ohio +HOU 21185 2002 17115 Oldham +HOU 21187 2002 5430 Owen +HOU 21189 2002 2292 Owsley +HOU 21191 2002 5824 Pendleton +HOU 21193 2002 13025 Perry +HOU 21195 2002 31765 Pike +HOU 21197 2002 5666 Powell +HOU 21199 2002 27352 Pulaski +HOU 21201 2002 1043 Robertson +HOU 21203 2002 7516 Rockcastle +HOU 21205 2002 9181 Rowan +HOU 21207 2002 9143 Russell +HOU 21209 2002 13349 Scott +HOU 21211 2002 13611 Shelby +HOU 21213 2002 7281 Simpson +HOU 21215 2002 5256 Spencer +HOU 21217 2002 10207 Taylor +HOU 21219 2002 5178 Todd +HOU 21221 2002 6808 Trigg +HOU 21223 2002 3503 Trimble +HOU 21225 2002 6304 Union +HOU 21227 2002 39912 Warren +HOU 21229 2002 4580 Washington +HOU 21231 2002 9836 Wayne +HOU 21233 2002 6317 Webster +HOU 21235 2002 15597 Whitley +HOU 21237 2002 3352 Wolfe +HOU 21239 2002 9672 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_LOGGN.ALO new file mode 100644 index 0000000..13cb90f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_LOGGN.ALO @@ -0,0 +1,147 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 21000 2002 391249290 KY +LOG 21001 2002 6588526 Adair +LOG 21003 2002 6202732 Allen +LOG 21005 2002 400588 Anderson +LOG 21007 2002 1780194 Ballard +LOG 21009 2002 4418663 Barren +LOG 21011 2002 1264665 Bath +LOG 21013 2002 2544739 Bell +LOG 21015 2002 117615 Boone +LOG 21017 2002 184897 Bourbon +LOG 21019 2002 1507329 Boyd +LOG 21021 2002 1462994 Boyle +LOG 21023 2002 576329 Bracken +LOG 21025 2002 7737586 Breathitt +LOG 21027 2002 6869095 Breckinridge +LOG 21029 2002 1493146 Bullitt +LOG 21031 2002 6391150 Butler +LOG 21033 2002 3246547 Caldwell +LOG 21035 2002 2439386 Calloway +LOG 21037 2002 96399 Campbell +LOG 21039 2002 3600898 Carlisle +LOG 21041 2002 339010 Carroll +LOG 21043 2002 5825399 Carter +LOG 21045 2002 6241263 Casey +LOG 21047 2002 6259774 Christian +LOG 21049 2002 166973 Clark +LOG 21051 2002 5300223 Clay +LOG 21053 2002 7287112 Clinton +LOG 21055 2002 3747910 Crittenden +LOG 21057 2002 6358576 Cumberland +LOG 21059 2002 2700396 Daviess +LOG 21061 2002 1622838 Edmonson +LOG 21063 2002 3588716 Elliott +LOG 21065 2002 5263303 Estill +LOG 21067 2002 83714 Fayette +LOG 21069 2002 2309607 Fleming +LOG 21071 2002 3081319 Floyd +LOG 21073 2002 0 Franklin +LOG 21075 2002 1552785 Fulton +LOG 21077 2002 91095 Gallatin +LOG 21079 2002 280740 Garrard +LOG 21081 2002 206961 Grant +LOG 21083 2002 3689652 Graves +LOG 21085 2002 5130273 Grayson +LOG 21087 2002 2479861 Green +LOG 21089 2002 4739103 Greenup +LOG 21091 2002 2483002 Hancock +LOG 21093 2002 3396603 Hardin +LOG 21095 2002 13850667 Harlan +LOG 21097 2002 0 Harrison +LOG 21099 2002 5572226 Hart +LOG 21101 2002 3695134 Henderson +LOG 21103 2002 664743 Henry +LOG 21105 2002 1194611 Hickman +LOG 21107 2002 4933224 Hopkins +LOG 21109 2002 4095372 Jackson +LOG 21111 2002 1531849 Jefferson +LOG 21113 2002 167908 Jessamine +LOG 21115 2002 1710354 Johnson +LOG 21117 2002 22217 Kenton +LOG 21119 2002 2478165 Knott +LOG 21121 2002 4666115 Knox +LOG 21123 2002 1210775 Larue +LOG 21125 2002 12827450 Laurel +LOG 21127 2002 2217045 Lawrence +LOG 21129 2002 8528498 Lee +LOG 21131 2002 6604311 Leslie +LOG 21133 2002 3596301 Letcher +LOG 21135 2002 10091382 Lewis +LOG 21137 2002 2330637 Lincoln +LOG 21139 2002 3340957 Livingston +LOG 21141 2002 2648507 Logan +LOG 21143 2002 1972456 Lyon +LOG 21145 2002 1966258 McCracken +LOG 21147 2002 8936590 McCreary +LOG 21149 2002 2645279 McLean +LOG 21151 2002 507439 Madison +LOG 21153 2002 1499036 Magoffin +LOG 21155 2002 3827730 Marion +LOG 21157 2002 2730069 Marshall +LOG 21159 2002 1492276 Martin +LOG 21161 2002 806255 Mason +LOG 21163 2002 3040178 Meade +LOG 21165 2002 2009868 Menifee +LOG 21167 2002 137159 Mercer +LOG 21169 2002 6366914 Metcalfe +LOG 21171 2002 6533297 Monroe +LOG 21173 2002 431649 Montgomery +LOG 21175 2002 4482686 Morgan +LOG 21177 2002 7054953 Muhlenberg +LOG 21179 2002 2562948 Nelson +LOG 21181 2002 135920 Nicholas +LOG 21183 2002 13201807 Ohio +LOG 21185 2002 727834 Oldham +LOG 21187 2002 473595 Owen +LOG 21189 2002 3357082 Owsley +LOG 21191 2002 179973 Pendleton +LOG 21193 2002 4578279 Perry +LOG 21195 2002 8613639 Pike +LOG 21197 2002 2036832 Powell +LOG 21199 2002 8999698 Pulaski +LOG 21201 2002 153604 Robertson +LOG 21203 2002 5345410 Rockcastle +LOG 21205 2002 1438779 Rowan +LOG 21207 2002 5039995 Russell +LOG 21209 2002 743656 Scott +LOG 21211 2002 323501 Shelby +LOG 21213 2002 556176 Simpson +LOG 21215 2002 189212 Spencer +LOG 21217 2002 6504355 Taylor +LOG 21219 2002 2431016 Todd +LOG 21221 2002 3568024 Trigg +LOG 21223 2002 247915 Trimble +LOG 21225 2002 588925 Union +LOG 21227 2002 1724723 Warren +LOG 21229 2002 1845000 Washington +LOG 21231 2002 3569656 Wayne +LOG 21233 2002 2026604 Webster +LOG 21235 2002 10493260 Whitley +LOG 21237 2002 2023645 Wolfe +LOG 21239 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_LSCAP.ALO new file mode 100644 index 0000000..aa3b781 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_LSCAP.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 21000 2002 3370 KY +LSC 21001 2002 0 Adair +LSC 21003 2002 1 Allen +LSC 21005 2002 6 Anderson +LSC 21007 2002 2 Ballard +LSC 21009 2002 14 Barren +LSC 21011 2002 6 Bath +LSC 21013 2002 0 Bell +LSC 21015 2002 336 Boone +LSC 21017 2002 33 Bourbon +LSC 21019 2002 15 Boyd +LSC 21021 2002 6 Boyle +LSC 21023 2002 6 Bracken +LSC 21025 2002 0 Breathitt +LSC 21027 2002 6 Breckinridge +LSC 21029 2002 33 Bullitt +LSC 21031 2002 0 Butler +LSC 21033 2002 0 Caldwell +LSC 21035 2002 6 Calloway +LSC 21037 2002 55 Campbell +LSC 21039 2002 0 Carlisle +LSC 21041 2002 6 Carroll +LSC 21043 2002 0 Carter +LSC 21045 2002 0 Casey +LSC 21047 2002 15 Christian +LSC 21049 2002 33 Clark +LSC 21051 2002 6 Clay +LSC 21053 2002 0 Clinton +LSC 21055 2002 0 Crittenden +LSC 21057 2002 0 Cumberland +LSC 21059 2002 92 Daviess +LSC 21061 2002 6 Edmonson +LSC 21063 2002 0 Elliott +LSC 21065 2002 6 Estill +LSC 21067 2002 282 Fayette +LSC 21069 2002 4 Fleming +LSC 21071 2002 6 Floyd +LSC 21073 2002 17 Franklin +LSC 21075 2002 0 Fulton +LSC 21077 2002 6 Gallatin +LSC 21079 2002 6 Garrard +LSC 21081 2002 6 Grant +LSC 21083 2002 2 Graves +LSC 21085 2002 56 Grayson +LSC 21087 2002 0 Green +LSC 21089 2002 33 Greenup +LSC 21091 2002 0 Hancock +LSC 21093 2002 42 Hardin +LSC 21095 2002 6 Harlan +LSC 21097 2002 6 Harrison +LSC 21099 2002 6 Hart +LSC 21101 2002 17 Henderson +LSC 21103 2002 6 Henry +LSC 21105 2002 0 Hickman +LSC 21107 2002 2 Hopkins +LSC 21109 2002 0 Jackson +LSC 21111 2002 718 Jefferson +LSC 21113 2002 505 Jessamine +LSC 21115 2002 13 Johnson +LSC 21117 2002 206 Kenton +LSC 21119 2002 33 Knott +LSC 21121 2002 0 Knox +LSC 21123 2002 5 Larue +LSC 21125 2002 33 Laurel +LSC 21127 2002 0 Lawrence +LSC 21129 2002 6 Lee +LSC 21131 2002 6 Leslie +LSC 21133 2002 0 Letcher +LSC 21135 2002 0 Lewis +LSC 21137 2002 6 Lincoln +LSC 21139 2002 6 Livingston +LSC 21141 2002 5 Logan +LSC 21143 2002 0 Lyon +LSC 21145 2002 51 McCracken +LSC 21147 2002 0 McCreary +LSC 21149 2002 0 McLean +LSC 21151 2002 27 Madison +LSC 21153 2002 0 Magoffin +LSC 21155 2002 6 Marion +LSC 21157 2002 8 Marshall +LSC 21159 2002 6 Martin +LSC 21161 2002 6 Mason +LSC 21163 2002 6 Meade +LSC 21165 2002 6 Menifee +LSC 21167 2002 6 Mercer +LSC 21169 2002 0 Metcalfe +LSC 21171 2002 6 Monroe +LSC 21173 2002 6 Montgomery +LSC 21175 2002 0 Morgan +LSC 21177 2002 7 Muhlenberg +LSC 21179 2002 6 Nelson +LSC 21181 2002 0 Nicholas +LSC 21183 2002 6 Ohio +LSC 21185 2002 102 Oldham +LSC 21187 2002 6 Owen +LSC 21189 2002 0 Owsley +LSC 21191 2002 6 Pendleton +LSC 21193 2002 0 Perry +LSC 21195 2002 6 Pike +LSC 21197 2002 0 Powell +LSC 21199 2002 35 Pulaski +LSC 21201 2002 0 Robertson +LSC 21203 2002 0 Rockcastle +LSC 21205 2002 0 Rowan +LSC 21207 2002 6 Russell +LSC 21209 2002 33 Scott +LSC 21211 2002 33 Shelby +LSC 21213 2002 6 Simpson +LSC 21215 2002 6 Spencer +LSC 21217 2002 6 Taylor +LSC 21219 2002 6 Todd +LSC 21221 2002 6 Trigg +LSC 21223 2002 2 Trimble +LSC 21225 2002 3 Union +LSC 21227 2002 91 Warren +LSC 21229 2002 6 Washington +LSC 21231 2002 0 Wayne +LSC 21233 2002 6 Webster +LSC 21235 2002 95 Whitley +LSC 21237 2002 6 Wolfe +LSC 21239 2002 17 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_MNFG.ALO new file mode 100644 index 0000000..61eb2c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_MNFG.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 21000 2002 487546 KY +MFG 21001 2002 793 Adair +MFG 21003 2002 3114 Allen +MFG 21005 2002 1966 Anderson +MFG 21007 2002 1673 Ballard +MFG 21009 2002 10092 Barren +MFG 21011 2002 544 Bath +MFG 21013 2002 906 Bell +MFG 21015 2002 19109 Boone +MFG 21017 2002 1986 Bourbon +MFG 21019 2002 6584 Boyd +MFG 21021 2002 8643 Boyle +MFG 21023 2002 315 Bracken +MFG 21025 2002 51 Breathitt +MFG 21027 2002 268 Breckinridge +MFG 21029 2002 4296 Bullitt +MFG 21031 2002 2489 Butler +MFG 21033 2002 952 Caldwell +MFG 21035 2002 4921 Calloway +MFG 21037 2002 4816 Campbell +MFG 21039 2002 222 Carlisle +MFG 21041 2002 4598 Carroll +MFG 21043 2002 627 Carter +MFG 21045 2002 646 Casey +MFG 21047 2002 9706 Christian +MFG 21049 2002 7856 Clark +MFG 21051 2002 358 Clay +MFG 21053 2002 2261 Clinton +MFG 21055 2002 503 Crittenden +MFG 21057 2002 471 Cumberland +MFG 21059 2002 9786 Daviess +MFG 21061 2002 33 Edmonson +MFG 21063 2002 0 Elliott +MFG 21065 2002 403 Estill +MFG 21067 2002 29340 Fayette +MFG 21069 2002 1351 Fleming +MFG 21071 2002 517 Floyd +MFG 21073 2002 5885 Franklin +MFG 21075 2002 1056 Fulton +MFG 21077 2002 236 Gallatin +MFG 21079 2002 469 Garrard +MFG 21081 2002 1551 Grant +MFG 21083 2002 4872 Graves +MFG 21085 2002 4714 Grayson +MFG 21087 2002 528 Green +MFG 21089 2002 1070 Greenup +MFG 21091 2002 5719 Hancock +MFG 21093 2002 12315 Hardin +MFG 21095 2002 491 Harlan +MFG 21097 2002 2927 Harrison +MFG 21099 2002 2552 Hart +MFG 21101 2002 12525 Henderson +MFG 21103 2002 1029 Henry +MFG 21105 2002 491 Hickman +MFG 21107 2002 6097 Hopkins +MFG 21109 2002 2218 Jackson +MFG 21111 2002 94512 Jefferson +MFG 21113 2002 4613 Jessamine +MFG 21115 2002 774 Johnson +MFG 21117 2002 8811 Kenton +MFG 21119 2002 39 Knott +MFG 21121 2002 1290 Knox +MFG 21123 2002 1085 Larue +MFG 21125 2002 5209 Laurel +MFG 21127 2002 310 Lawrence +MFG 21129 2002 362 Lee +MFG 21131 2002 9 Leslie +MFG 21133 2002 191 Letcher +MFG 21135 2002 471 Lewis +MFG 21137 2002 1433 Lincoln +MFG 21139 2002 143 Livingston +MFG 21141 2002 6882 Logan +MFG 21143 2002 690 Lyon +MFG 21145 2002 6095 McCracken +MFG 21147 2002 576 McCreary +MFG 21149 2002 348 McLean +MFG 21151 2002 11046 Madison +MFG 21153 2002 650 Magoffin +MFG 21155 2002 4772 Marion +MFG 21157 2002 4698 Marshall +MFG 21159 2002 16 Martin +MFG 21161 2002 3989 Mason +MFG 21163 2002 547 Meade +MFG 21165 2002 363 Menifee +MFG 21167 2002 5156 Mercer +MFG 21169 2002 1137 Metcalfe +MFG 21171 2002 1501 Monroe +MFG 21173 2002 5099 Montgomery +MFG 21175 2002 685 Morgan +MFG 21177 2002 1919 Muhlenberg +MFG 21179 2002 6401 Nelson +MFG 21181 2002 209 Nicholas +MFG 21183 2002 2281 Ohio +MFG 21185 2002 1895 Oldham +MFG 21187 2002 513 Owen +MFG 21189 2002 17 Owsley +MFG 21191 2002 1364 Pendleton +MFG 21193 2002 1286 Perry +MFG 21195 2002 975 Pike +MFG 21197 2002 1356 Powell +MFG 21199 2002 7788 Pulaski +MFG 21201 2002 18 Robertson +MFG 21203 2002 1069 Rockcastle +MFG 21205 2002 2294 Rowan +MFG 21207 2002 1811 Russell +MFG 21209 2002 18534 Scott +MFG 21211 2002 8403 Shelby +MFG 21213 2002 6211 Simpson +MFG 21215 2002 66 Spencer +MFG 21217 2002 3857 Taylor +MFG 21219 2002 1814 Todd +MFG 21221 2002 2257 Trigg +MFG 21223 2002 34 Trimble +MFG 21225 2002 1940 Union +MFG 21227 2002 15809 Warren +MFG 21229 2002 1550 Washington +MFG 21231 2002 3531 Wayne +MFG 21233 2002 985 Webster +MFG 21235 2002 3346 Whitley +MFG 21237 2002 262 Wolfe +MFG 21239 2002 5308 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_OIL.ALO new file mode 100644 index 0000000..660350a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_OIL.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 21000 2002 1031 KY +OIL 21001 2002 66 Adair +OIL 21003 2002 0 Allen +OIL 21005 2002 0 Anderson +OIL 21007 2002 0 Ballard +OIL 21009 2002 17 Barren +OIL 21011 2002 0 Bath +OIL 21013 2002 0 Bell +OIL 21015 2002 0 Boone +OIL 21017 2002 10 Bourbon +OIL 21019 2002 8 Boyd +OIL 21021 2002 0 Boyle +OIL 21023 2002 0 Bracken +OIL 21025 2002 0 Breathitt +OIL 21027 2002 0 Breckinridge +OIL 21029 2002 0 Bullitt +OIL 21031 2002 0 Butler +OIL 21033 2002 0 Caldwell +OIL 21035 2002 0 Calloway +OIL 21037 2002 0 Campbell +OIL 21039 2002 0 Carlisle +OIL 21041 2002 0 Carroll +OIL 21043 2002 0 Carter +OIL 21045 2002 0 Casey +OIL 21047 2002 10 Christian +OIL 21049 2002 7 Clark +OIL 21051 2002 0 Clay +OIL 21053 2002 32 Clinton +OIL 21055 2002 7 Crittenden +OIL 21057 2002 10 Cumberland +OIL 21059 2002 15 Daviess +OIL 21061 2002 0 Edmonson +OIL 21063 2002 0 Elliott +OIL 21065 2002 10 Estill +OIL 21067 2002 93 Fayette +OIL 21069 2002 0 Fleming +OIL 21071 2002 191 Floyd +OIL 21073 2002 7 Franklin +OIL 21075 2002 0 Fulton +OIL 21077 2002 0 Gallatin +OIL 21079 2002 0 Garrard +OIL 21081 2002 0 Grant +OIL 21083 2002 0 Graves +OIL 21085 2002 0 Grayson +OIL 21087 2002 0 Green +OIL 21089 2002 45 Greenup +OIL 21091 2002 7 Hancock +OIL 21093 2002 0 Hardin +OIL 21095 2002 17 Harlan +OIL 21097 2002 0 Harrison +OIL 21099 2002 0 Hart +OIL 21101 2002 7 Henderson +OIL 21103 2002 0 Henry +OIL 21105 2002 10 Hickman +OIL 21107 2002 10 Hopkins +OIL 21109 2002 0 Jackson +OIL 21111 2002 7 Jefferson +OIL 21113 2002 0 Jessamine +OIL 21115 2002 17 Johnson +OIL 21117 2002 0 Kenton +OIL 21119 2002 0 Knott +OIL 21121 2002 7 Knox +OIL 21123 2002 0 Larue +OIL 21125 2002 105 Laurel +OIL 21127 2002 10 Lawrence +OIL 21129 2002 0 Lee +OIL 21131 2002 0 Leslie +OIL 21133 2002 0 Letcher +OIL 21135 2002 0 Lewis +OIL 21137 2002 0 Lincoln +OIL 21139 2002 0 Livingston +OIL 21141 2002 0 Logan +OIL 21143 2002 0 Lyon +OIL 21145 2002 0 McCracken +OIL 21147 2002 0 McCreary +OIL 21149 2002 7 McLean +OIL 21151 2002 0 Madison +OIL 21153 2002 7 Magoffin +OIL 21155 2002 0 Marion +OIL 21157 2002 0 Marshall +OIL 21159 2002 7 Martin +OIL 21161 2002 0 Mason +OIL 21163 2002 0 Meade +OIL 21165 2002 0 Menifee +OIL 21167 2002 0 Mercer +OIL 21169 2002 10 Metcalfe +OIL 21171 2002 0 Monroe +OIL 21173 2002 0 Montgomery +OIL 21175 2002 7 Morgan +OIL 21177 2002 7 Muhlenberg +OIL 21179 2002 0 Nelson +OIL 21181 2002 0 Nicholas +OIL 21183 2002 0 Ohio +OIL 21185 2002 0 Oldham +OIL 21187 2002 0 Owen +OIL 21189 2002 0 Owsley +OIL 21191 2002 10 Pendleton +OIL 21193 2002 0 Perry +OIL 21195 2002 63 Pike +OIL 21197 2002 0 Powell +OIL 21199 2002 7 Pulaski +OIL 21201 2002 0 Robertson +OIL 21203 2002 0 Rockcastle +OIL 21205 2002 0 Rowan +OIL 21207 2002 0 Russell +OIL 21209 2002 0 Scott +OIL 21211 2002 0 Shelby +OIL 21213 2002 0 Simpson +OIL 21215 2002 0 Spencer +OIL 21217 2002 0 Taylor +OIL 21219 2002 0 Todd +OIL 21221 2002 0 Trigg +OIL 21223 2002 0 Trimble +OIL 21225 2002 55 Union +OIL 21227 2002 105 Warren +OIL 21229 2002 0 Washington +OIL 21231 2002 0 Wayne +OIL 21233 2002 7 Webster +OIL 21235 2002 7 Whitley +OIL 21237 2002 0 Wolfe +OIL 21239 2002 7 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_POP.ALO new file mode 100644 index 0000000..da36ddf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_POP.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 21000 2002 4089985 KY +POP 21001 2002 17399 Adair +POP 21003 2002 18150 Allen +POP 21005 2002 19560 Anderson +POP 21007 2002 8134 Ballard +POP 21009 2002 38748 Barren +POP 21011 2002 11419 Bath +POP 21013 2002 29989 Bell +POP 21015 2002 93596 Boone +POP 21017 2002 19502 Bourbon +POP 21019 2002 49704 Boyd +POP 21021 2002 27697 Boyle +POP 21023 2002 8455 Bracken +POP 21025 2002 15915 Breathitt +POP 21027 2002 18948 Breckinridge +POP 21029 2002 63756 Bullitt +POP 21031 2002 13151 Butler +POP 21033 2002 12878 Caldwell +POP 21035 2002 34217 Calloway +POP 21037 2002 88332 Campbell +POP 21039 2002 5360 Carlisle +POP 21041 2002 10268 Carroll +POP 21043 2002 27107 Carter +POP 21045 2002 15834 Casey +POP 21047 2002 71815 Christian +POP 21049 2002 33590 Clark +POP 21051 2002 24422 Clay +POP 21053 2002 9633 Clinton +POP 21055 2002 9166 Crittenden +POP 21057 2002 7162 Cumberland +POP 21059 2002 91891 Daviess +POP 21061 2002 11833 Edmonson +POP 21063 2002 6792 Elliott +POP 21065 2002 15356 Estill +POP 21067 2002 262706 Fayette +POP 21069 2002 14175 Fleming +POP 21071 2002 42374 Floyd +POP 21073 2002 48127 Franklin +POP 21075 2002 7576 Fulton +POP 21077 2002 7818 Gallatin +POP 21079 2002 15625 Garrard +POP 21081 2002 23582 Grant +POP 21083 2002 37128 Graves +POP 21085 2002 24283 Grayson +POP 21087 2002 11680 Green +POP 21089 2002 36830 Greenup +POP 21091 2002 8451 Hancock +POP 21093 2002 95317 Hardin +POP 21095 2002 32542 Harlan +POP 21097 2002 18107 Harrison +POP 21099 2002 17697 Hart +POP 21101 2002 45059 Henderson +POP 21103 2002 15329 Henry +POP 21105 2002 5237 Hickman +POP 21107 2002 46459 Hopkins +POP 21109 2002 13642 Jackson +POP 21111 2002 696068 Jefferson +POP 21113 2002 40705 Jessamine +POP 21115 2002 23482 Johnson +POP 21117 2002 151766 Kenton +POP 21119 2002 17769 Knott +POP 21121 2002 31671 Knox +POP 21123 2002 13451 Larue +POP 21125 2002 54434 Laurel +POP 21127 2002 15878 Lawrence +POP 21129 2002 7896 Lee +POP 21131 2002 12271 Leslie +POP 21133 2002 24932 Letcher +POP 21135 2002 13833 Lewis +POP 21137 2002 24154 Lincoln +POP 21139 2002 9828 Livingston +POP 21141 2002 26744 Logan +POP 21143 2002 8142 Lyon +POP 21145 2002 64805 McCracken +POP 21147 2002 17131 McCreary +POP 21149 2002 9978 McLean +POP 21151 2002 73229 Madison +POP 21153 2002 13323 Magoffin +POP 21155 2002 18492 Marion +POP 21157 2002 30262 Marshall +POP 21159 2002 12543 Martin +POP 21161 2002 16889 Mason +POP 21163 2002 27418 Meade +POP 21165 2002 6718 Menifee +POP 21167 2002 21086 Mercer +POP 21169 2002 10016 Metcalfe +POP 21171 2002 11737 Monroe +POP 21173 2002 23244 Montgomery +POP 21175 2002 14250 Morgan +POP 21177 2002 31716 Muhlenberg +POP 21179 2002 38960 Nelson +POP 21181 2002 6928 Nicholas +POP 21183 2002 23223 Ohio +POP 21185 2002 49201 Oldham +POP 21187 2002 11015 Owen +POP 21189 2002 4765 Owsley +POP 21191 2002 14835 Pendleton +POP 21193 2002 29498 Perry +POP 21195 2002 67821 Pike +POP 21197 2002 13313 Powell +POP 21199 2002 57353 Pulaski +POP 21201 2002 2306 Robertson +POP 21203 2002 16720 Rockcastle +POP 21205 2002 22251 Rowan +POP 21207 2002 16504 Russell +POP 21209 2002 35458 Scott +POP 21211 2002 35027 Shelby +POP 21213 2002 16641 Simpson +POP 21215 2002 13591 Spencer +POP 21217 2002 23273 Taylor +POP 21219 2002 12006 Todd +POP 21221 2002 12746 Trigg +POP 21223 2002 8658 Trimble +POP 21225 2002 15641 Union +POP 21227 2002 94198 Warren +POP 21229 2002 11150 Washington +POP 21231 2002 20092 Wayne +POP 21233 2002 14093 Webster +POP 21235 2002 36810 Whitley +POP 21237 2002 6992 Wolfe +POP 21239 2002 23532 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_RAIL.ALO new file mode 100644 index 0000000..8cf5cad --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_RAIL.ALO @@ -0,0 +1,147 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 21000 2002 20768.210 KY +RR 21001 2002 0.000 Adair +RR 21003 2002 0.000 Allen +RR 21005 2002 143.980 Anderson +RR 21007 2002 181.690 Ballard +RR 21009 2002 285.870 Barren +RR 21011 2002 0.000 Bath +RR 21013 2002 64.960 Bell +RR 21015 2002 296.400 Boone +RR 21017 2002 470.100 Bourbon +RR 21019 2002 390.370 Boyd +RR 21021 2002 740.590 Boyle +RR 21023 2002 145.200 Bracken +RR 21025 2002 72.770 Breathitt +RR 21027 2002 14.100 Breckinridge +RR 21029 2002 212.620 Bullitt +RR 21031 2002 0.000 Butler +RR 21033 2002 0.000 Caldwell +RR 21035 2002 0.000 Calloway +RR 21037 2002 563.010 Campbell +RR 21039 2002 150.240 Carlisle +RR 21041 2002 271.840 Carroll +RR 21043 2002 0.000 Carter +RR 21045 2002 0.000 Casey +RR 21047 2002 307.850 Christian +RR 21049 2002 405.410 Clark +RR 21051 2002 9.000 Clay +RR 21053 2002 0.000 Clinton +RR 21055 2002 0.000 Crittenden +RR 21057 2002 0.000 Cumberland +RR 21059 2002 18.680 Daviess +RR 21061 2002 93.590 Edmonson +RR 21063 2002 0.000 Elliott +RR 21065 2002 98.200 Estill +RR 21067 2002 375.540 Fayette +RR 21069 2002 0.000 Fleming +RR 21071 2002 257.160 Floyd +RR 21073 2002 15.530 Franklin +RR 21075 2002 319.400 Fulton +RR 21077 2002 198.790 Gallatin +RR 21079 2002 206.300 Garrard +RR 21081 2002 868.880 Grant +RR 21083 2002 161.660 Graves +RR 21085 2002 0.000 Grayson +RR 21087 2002 0.000 Green +RR 21089 2002 696.610 Greenup +RR 21091 2002 23.040 Hancock +RR 21093 2002 266.330 Hardin +RR 21095 2002 56.140 Harlan +RR 21097 2002 614.540 Harrison +RR 21099 2002 189.030 Hart +RR 21101 2002 254.330 Henderson +RR 21103 2002 154.040 Henry +RR 21105 2002 311.900 Hickman +RR 21107 2002 389.590 Hopkins +RR 21109 2002 0.000 Jackson +RR 21111 2002 682.950 Jefferson +RR 21113 2002 465.040 Jessamine +RR 21115 2002 280.780 Johnson +RR 21117 2002 1084.510 Kenton +RR 21119 2002 72.840 Knott +RR 21121 2002 191.590 Knox +RR 21123 2002 0.000 Larue +RR 21125 2002 212.110 Laurel +RR 21127 2002 369.840 Lawrence +RR 21129 2002 141.050 Lee +RR 21131 2002 0.000 Leslie +RR 21133 2002 104.180 Letcher +RR 21135 2002 211.020 Lewis +RR 21137 2002 401.160 Lincoln +RR 21139 2002 0.000 Livingston +RR 21141 2002 0.000 Logan +RR 21143 2002 0.000 Lyon +RR 21145 2002 304.000 McCracken +RR 21147 2002 487.110 McCreary +RR 21149 2002 2.820 McLean +RR 21151 2002 467.180 Madison +RR 21153 2002 9.920 Magoffin +RR 21155 2002 0.000 Marion +RR 21157 2002 0.000 Marshall +RR 21159 2002 24.120 Martin +RR 21161 2002 356.240 Mason +RR 21163 2002 32.880 Meade +RR 21165 2002 0.000 Menifee +RR 21167 2002 310.040 Mercer +RR 21169 2002 0.000 Metcalfe +RR 21171 2002 0.000 Monroe +RR 21173 2002 0.000 Montgomery +RR 21175 2002 0.000 Morgan +RR 21177 2002 27.710 Muhlenberg +RR 21179 2002 52.600 Nelson +RR 21181 2002 0.000 Nicholas +RR 21183 2002 1.890 Ohio +RR 21185 2002 214.450 Oldham +RR 21187 2002 107.700 Owen +RR 21189 2002 0.000 Owsley +RR 21191 2002 698.540 Pendleton +RR 21193 2002 112.790 Perry +RR 21195 2002 250.140 Pike +RR 21197 2002 0.000 Powell +RR 21199 2002 730.820 Pulaski +RR 21201 2002 0.000 Robertson +RR 21203 2002 216.010 Rockcastle +RR 21205 2002 0.000 Rowan +RR 21207 2002 0.000 Russell +RR 21209 2002 651.220 Scott +RR 21211 2002 182.870 Shelby +RR 21213 2002 84.290 Simpson +RR 21215 2002 0.000 Spencer +RR 21217 2002 0.000 Taylor +RR 21219 2002 156.590 Todd +RR 21221 2002 0.000 Trigg +RR 21223 2002 0.000 Trimble +RR 21225 2002 0.000 Union +RR 21227 2002 174.970 Warren +RR 21229 2002 0.000 Washington +RR 21231 2002 0.000 Wayne +RR 21233 2002 241.340 Webster +RR 21235 2002 346.760 Whitley +RR 21237 2002 0.000 Wolfe +RR 21239 2002 10.860 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_RVPRK.ALO new file mode 100644 index 0000000..fa2e042 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_RVPRK.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 21000 2002 56 KY +RVP 21001 2002 0 Adair +RVP 21003 2002 0 Allen +RVP 21005 2002 0 Anderson +RVP 21007 2002 0 Ballard +RVP 21009 2002 3 Barren +RVP 21011 2002 0 Bath +RVP 21013 2002 0 Bell +RVP 21015 2002 2 Boone +RVP 21017 2002 0 Bourbon +RVP 21019 2002 0 Boyd +RVP 21021 2002 0 Boyle +RVP 21023 2002 0 Bracken +RVP 21025 2002 0 Breathitt +RVP 21027 2002 0 Breckinridge +RVP 21029 2002 2 Bullitt +RVP 21031 2002 0 Butler +RVP 21033 2002 0 Caldwell +RVP 21035 2002 2 Calloway +RVP 21037 2002 0 Campbell +RVP 21039 2002 0 Carlisle +RVP 21041 2002 1 Carroll +RVP 21043 2002 0 Carter +RVP 21045 2002 0 Casey +RVP 21047 2002 0 Christian +RVP 21049 2002 0 Clark +RVP 21051 2002 0 Clay +RVP 21053 2002 2 Clinton +RVP 21055 2002 0 Crittenden +RVP 21057 2002 1 Cumberland +RVP 21059 2002 1 Daviess +RVP 21061 2002 2 Edmonson +RVP 21063 2002 0 Elliott +RVP 21065 2002 0 Estill +RVP 21067 2002 4 Fayette +RVP 21069 2002 1 Fleming +RVP 21071 2002 0 Floyd +RVP 21073 2002 0 Franklin +RVP 21075 2002 0 Fulton +RVP 21077 2002 0 Gallatin +RVP 21079 2002 0 Garrard +RVP 21081 2002 1 Grant +RVP 21083 2002 0 Graves +RVP 21085 2002 1 Grayson +RVP 21087 2002 0 Green +RVP 21089 2002 0 Greenup +RVP 21091 2002 0 Hancock +RVP 21093 2002 2 Hardin +RVP 21095 2002 1 Harlan +RVP 21097 2002 0 Harrison +RVP 21099 2002 1 Hart +RVP 21101 2002 0 Henderson +RVP 21103 2002 0 Henry +RVP 21105 2002 0 Hickman +RVP 21107 2002 0 Hopkins +RVP 21109 2002 0 Jackson +RVP 21111 2002 1 Jefferson +RVP 21113 2002 0 Jessamine +RVP 21115 2002 0 Johnson +RVP 21117 2002 0 Kenton +RVP 21119 2002 0 Knott +RVP 21121 2002 0 Knox +RVP 21123 2002 0 Larue +RVP 21125 2002 0 Laurel +RVP 21127 2002 1 Lawrence +RVP 21129 2002 1 Lee +RVP 21131 2002 0 Leslie +RVP 21133 2002 0 Letcher +RVP 21135 2002 0 Lewis +RVP 21137 2002 0 Lincoln +RVP 21139 2002 0 Livingston +RVP 21141 2002 0 Logan +RVP 21143 2002 2 Lyon +RVP 21145 2002 1 McCracken +RVP 21147 2002 0 McCreary +RVP 21149 2002 0 McLean +RVP 21151 2002 2 Madison +RVP 21153 2002 0 Magoffin +RVP 21155 2002 0 Marion +RVP 21157 2002 5 Marshall +RVP 21159 2002 0 Martin +RVP 21161 2002 0 Mason +RVP 21163 2002 1 Meade +RVP 21165 2002 0 Menifee +RVP 21167 2002 2 Mercer +RVP 21169 2002 0 Metcalfe +RVP 21171 2002 0 Monroe +RVP 21173 2002 1 Montgomery +RVP 21175 2002 0 Morgan +RVP 21177 2002 0 Muhlenberg +RVP 21179 2002 0 Nelson +RVP 21181 2002 0 Nicholas +RVP 21183 2002 0 Ohio +RVP 21185 2002 0 Oldham +RVP 21187 2002 0 Owen +RVP 21189 2002 0 Owsley +RVP 21191 2002 0 Pendleton +RVP 21193 2002 0 Perry +RVP 21195 2002 0 Pike +RVP 21197 2002 0 Powell +RVP 21199 2002 0 Pulaski +RVP 21201 2002 0 Robertson +RVP 21203 2002 0 Rockcastle +RVP 21205 2002 3 Rowan +RVP 21207 2002 1 Russell +RVP 21209 2002 0 Scott +RVP 21211 2002 1 Shelby +RVP 21213 2002 0 Simpson +RVP 21215 2002 0 Spencer +RVP 21217 2002 0 Taylor +RVP 21219 2002 0 Todd +RVP 21221 2002 0 Trigg +RVP 21223 2002 0 Trimble +RVP 21225 2002 0 Union +RVP 21227 2002 2 Warren +RVP 21229 2002 1 Washington +RVP 21231 2002 2 Wayne +RVP 21233 2002 0 Webster +RVP 21235 2002 2 Whitley +RVP 21237 2002 0 Wolfe +RVP 21239 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_SBC.ALO new file mode 100644 index 0000000..95efee9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_SBC.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 21000 2002 2044 KY +SBC 21001 2002 0 Adair +SBC 21003 2002 0 Allen +SBC 21005 2002 10 Anderson +SBC 21007 2002 0 Ballard +SBC 21009 2002 0 Barren +SBC 21011 2002 6 Bath +SBC 21013 2002 0 Bell +SBC 21015 2002 336 Boone +SBC 21017 2002 10 Bourbon +SBC 21019 2002 15 Boyd +SBC 21021 2002 15 Boyle +SBC 21023 2002 5 Bracken +SBC 21025 2002 0 Breathitt +SBC 21027 2002 0 Breckinridge +SBC 21029 2002 0 Bullitt +SBC 21031 2002 0 Butler +SBC 21033 2002 0 Caldwell +SBC 21035 2002 0 Calloway +SBC 21037 2002 55 Campbell +SBC 21039 2002 0 Carlisle +SBC 21041 2002 5 Carroll +SBC 21043 2002 0 Carter +SBC 21045 2002 0 Casey +SBC 21047 2002 0 Christian +SBC 21049 2002 18 Clark +SBC 21051 2002 13 Clay +SBC 21053 2002 0 Clinton +SBC 21055 2002 0 Crittenden +SBC 21057 2002 0 Cumberland +SBC 21059 2002 0 Daviess +SBC 21061 2002 0 Edmonson +SBC 21063 2002 0 Elliott +SBC 21065 2002 8 Estill +SBC 21067 2002 282 Fayette +SBC 21069 2002 4 Fleming +SBC 21071 2002 23 Floyd +SBC 21073 2002 17 Franklin +SBC 21075 2002 0 Fulton +SBC 21077 2002 4 Gallatin +SBC 21079 2002 8 Garrard +SBC 21081 2002 13 Grant +SBC 21083 2002 0 Graves +SBC 21085 2002 0 Grayson +SBC 21087 2002 0 Green +SBC 21089 2002 20 Greenup +SBC 21091 2002 0 Hancock +SBC 21093 2002 0 Hardin +SBC 21095 2002 17 Harlan +SBC 21097 2002 10 Harrison +SBC 21099 2002 0 Hart +SBC 21101 2002 0 Henderson +SBC 21103 2002 8 Henry +SBC 21105 2002 0 Hickman +SBC 21107 2002 0 Hopkins +SBC 21109 2002 0 Jackson +SBC 21111 2002 0 Jefferson +SBC 21113 2002 505 Jessamine +SBC 21115 2002 13 Johnson +SBC 21117 2002 206 Kenton +SBC 21119 2002 10 Knott +SBC 21121 2002 0 Knox +SBC 21123 2002 0 Larue +SBC 21125 2002 29 Laurel +SBC 21127 2002 0 Lawrence +SBC 21129 2002 4 Lee +SBC 21131 2002 7 Leslie +SBC 21133 2002 0 Letcher +SBC 21135 2002 0 Lewis +SBC 21137 2002 13 Lincoln +SBC 21139 2002 0 Livingston +SBC 21141 2002 0 Logan +SBC 21143 2002 0 Lyon +SBC 21145 2002 0 McCracken +SBC 21147 2002 0 McCreary +SBC 21149 2002 0 McLean +SBC 21151 2002 27 Madison +SBC 21153 2002 0 Magoffin +SBC 21155 2002 0 Marion +SBC 21157 2002 0 Marshall +SBC 21159 2002 7 Martin +SBC 21161 2002 9 Mason +SBC 21163 2002 0 Meade +SBC 21165 2002 4 Menifee +SBC 21167 2002 11 Mercer +SBC 21169 2002 0 Metcalfe +SBC 21171 2002 0 Monroe +SBC 21173 2002 12 Montgomery +SBC 21175 2002 0 Morgan +SBC 21177 2002 0 Muhlenberg +SBC 21179 2002 0 Nelson +SBC 21181 2002 0 Nicholas +SBC 21183 2002 0 Ohio +SBC 21185 2002 102 Oldham +SBC 21187 2002 6 Owen +SBC 21189 2002 0 Owsley +SBC 21191 2002 8 Pendleton +SBC 21193 2002 0 Perry +SBC 21195 2002 37 Pike +SBC 21197 2002 0 Powell +SBC 21199 2002 35 Pulaski +SBC 21201 2002 0 Robertson +SBC 21203 2002 0 Rockcastle +SBC 21205 2002 0 Rowan +SBC 21207 2002 9 Russell +SBC 21209 2002 19 Scott +SBC 21211 2002 19 Shelby +SBC 21213 2002 0 Simpson +SBC 21215 2002 7 Spencer +SBC 21217 2002 0 Taylor +SBC 21219 2002 0 Todd +SBC 21221 2002 0 Trigg +SBC 21223 2002 2 Trimble +SBC 21225 2002 0 Union +SBC 21227 2002 0 Warren +SBC 21229 2002 0 Washington +SBC 21231 2002 0 Wayne +SBC 21233 2002 0 Webster +SBC 21235 2002 20 Whitley +SBC 21237 2002 4 Wolfe +SBC 21239 2002 17 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_SBR.ALO new file mode 100644 index 0000000..16ea7fb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_SBR.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 21000 2002 934912 KY +SBR 21001 2002 0 Adair +SBR 21003 2002 0 Allen +SBR 21005 2002 8075 Anderson +SBR 21007 2002 0 Ballard +SBR 21009 2002 0 Barren +SBR 21011 2002 5107 Bath +SBR 21013 2002 13571 Bell +SBR 21015 2002 36766 Boone +SBR 21017 2002 8580 Bourbon +SBR 21019 2002 22080 Boyd +SBR 21021 2002 11673 Boyle +SBR 21023 2002 3757 Bracken +SBR 21025 2002 6992 Breathitt +SBR 21027 2002 0 Breckinridge +SBR 21029 2002 0 Bullitt +SBR 21031 2002 0 Butler +SBR 21033 2002 0 Caldwell +SBR 21035 2002 0 Calloway +SBR 21037 2002 37188 Campbell +SBR 21039 2002 0 Carlisle +SBR 21041 2002 4480 Carroll +SBR 21043 2002 11874 Carter +SBR 21045 2002 7382 Casey +SBR 21047 2002 0 Christian +SBR 21049 2002 14415 Clark +SBR 21051 2002 9658 Clay +SBR 21053 2002 4944 Clinton +SBR 21055 2002 0 Crittenden +SBR 21057 2002 0 Cumberland +SBR 21059 2002 0 Daviess +SBR 21061 2002 0 Edmonson +SBR 21063 2002 3180 Elliott +SBR 21065 2002 6929 Estill +SBR 21067 2002 120496 Fayette +SBR 21069 2002 6201 Fleming +SBR 21071 2002 18947 Floyd +SBR 21073 2002 21846 Franklin +SBR 21075 2002 0 Fulton +SBR 21077 2002 3419 Gallatin +SBR 21079 2002 6499 Garrard +SBR 21081 2002 9779 Grant +SBR 21083 2002 0 Graves +SBR 21085 2002 0 Grayson +SBR 21087 2002 0 Green +SBR 21089 2002 16160 Greenup +SBR 21091 2002 0 Hancock +SBR 21093 2002 0 Hardin +SBR 21095 2002 15228 Harlan +SBR 21097 2002 7773 Harrison +SBR 21099 2002 0 Hart +SBR 21101 2002 0 Henderson +SBR 21103 2002 6606 Henry +SBR 21105 2002 0 Hickman +SBR 21107 2002 0 Hopkins +SBR 21109 2002 6182 Jackson +SBR 21111 2002 0 Jefferson +SBR 21113 2002 15719 Jessamine +SBR 21115 2002 10340 Johnson +SBR 21117 2002 64740 Kenton +SBR 21119 2002 7774 Knott +SBR 21121 2002 14310 Knox +SBR 21123 2002 0 Larue +SBR 21125 2002 22880 Laurel +SBR 21127 2002 7185 Lawrence +SBR 21129 2002 3397 Lee +SBR 21131 2002 5660 Leslie +SBR 21133 2002 11631 Letcher +SBR 21135 2002 6301 Lewis +SBR 21137 2002 10607 Lincoln +SBR 21139 2002 0 Livingston +SBR 21141 2002 0 Logan +SBR 21143 2002 0 Lyon +SBR 21145 2002 0 McCracken +SBR 21147 2002 7474 McCreary +SBR 21149 2002 0 McLean +SBR 21151 2002 30481 Madison +SBR 21153 2002 5610 Magoffin +SBR 21155 2002 0 Marion +SBR 21157 2002 0 Marshall +SBR 21159 2002 5718 Martin +SBR 21161 2002 7777 Mason +SBR 21163 2002 0 Meade +SBR 21165 2002 3771 Menifee +SBR 21167 2002 9495 Mercer +SBR 21169 2002 0 Metcalfe +SBR 21171 2002 0 Monroe +SBR 21173 2002 10026 Montgomery +SBR 21175 2002 5618 Morgan +SBR 21177 2002 0 Muhlenberg +SBR 21179 2002 0 Nelson +SBR 21181 2002 3083 Nicholas +SBR 21183 2002 0 Ohio +SBR 21185 2002 17115 Oldham +SBR 21187 2002 5430 Owen +SBR 21189 2002 2292 Owsley +SBR 21191 2002 5824 Pendleton +SBR 21193 2002 13025 Perry +SBR 21195 2002 31765 Pike +SBR 21197 2002 5666 Powell +SBR 21199 2002 27352 Pulaski +SBR 21201 2002 1043 Robertson +SBR 21203 2002 7516 Rockcastle +SBR 21205 2002 9181 Rowan +SBR 21207 2002 9143 Russell +SBR 21209 2002 13349 Scott +SBR 21211 2002 13611 Shelby +SBR 21213 2002 0 Simpson +SBR 21215 2002 5256 Spencer +SBR 21217 2002 0 Taylor +SBR 21219 2002 0 Todd +SBR 21221 2002 0 Trigg +SBR 21223 2002 3503 Trimble +SBR 21225 2002 0 Union +SBR 21227 2002 0 Warren +SBR 21229 2002 0 Washington +SBR 21231 2002 9836 Wayne +SBR 21233 2002 0 Webster +SBR 21235 2002 15597 Whitley +SBR 21237 2002 3352 Wolfe +SBR 21239 2002 9672 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_SNOWM.ALO new file mode 100644 index 0000000..7ea0a34 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_SNOWM.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 21000 2002 0 KY +SNM 21001 2002 0 Adair +SNM 21003 2002 0 Allen +SNM 21005 2002 0 Anderson +SNM 21007 2002 0 Ballard +SNM 21009 2002 0 Barren +SNM 21011 2002 0 Bath +SNM 21013 2002 0 Bell +SNM 21015 2002 0 Boone +SNM 21017 2002 0 Bourbon +SNM 21019 2002 0 Boyd +SNM 21021 2002 0 Boyle +SNM 21023 2002 0 Bracken +SNM 21025 2002 0 Breathitt +SNM 21027 2002 0 Breckinridge +SNM 21029 2002 0 Bullitt +SNM 21031 2002 0 Butler +SNM 21033 2002 0 Caldwell +SNM 21035 2002 0 Calloway +SNM 21037 2002 0 Campbell +SNM 21039 2002 0 Carlisle +SNM 21041 2002 0 Carroll +SNM 21043 2002 0 Carter +SNM 21045 2002 0 Casey +SNM 21047 2002 0 Christian +SNM 21049 2002 0 Clark +SNM 21051 2002 0 Clay +SNM 21053 2002 0 Clinton +SNM 21055 2002 0 Crittenden +SNM 21057 2002 0 Cumberland +SNM 21059 2002 0 Daviess +SNM 21061 2002 0 Edmonson +SNM 21063 2002 0 Elliott +SNM 21065 2002 0 Estill +SNM 21067 2002 0 Fayette +SNM 21069 2002 0 Fleming +SNM 21071 2002 0 Floyd +SNM 21073 2002 0 Franklin +SNM 21075 2002 0 Fulton +SNM 21077 2002 0 Gallatin +SNM 21079 2002 0 Garrard +SNM 21081 2002 0 Grant +SNM 21083 2002 0 Graves +SNM 21085 2002 0 Grayson +SNM 21087 2002 0 Green +SNM 21089 2002 0 Greenup +SNM 21091 2002 0 Hancock +SNM 21093 2002 0 Hardin +SNM 21095 2002 0 Harlan +SNM 21097 2002 0 Harrison +SNM 21099 2002 0 Hart +SNM 21101 2002 0 Henderson +SNM 21103 2002 0 Henry +SNM 21105 2002 0 Hickman +SNM 21107 2002 0 Hopkins +SNM 21109 2002 0 Jackson +SNM 21111 2002 0 Jefferson +SNM 21113 2002 0 Jessamine +SNM 21115 2002 0 Johnson +SNM 21117 2002 0 Kenton +SNM 21119 2002 0 Knott +SNM 21121 2002 0 Knox +SNM 21123 2002 0 Larue +SNM 21125 2002 0 Laurel +SNM 21127 2002 0 Lawrence +SNM 21129 2002 0 Lee +SNM 21131 2002 0 Leslie +SNM 21133 2002 0 Letcher +SNM 21135 2002 0 Lewis +SNM 21137 2002 0 Lincoln +SNM 21139 2002 0 Livingston +SNM 21141 2002 0 Logan +SNM 21143 2002 0 Lyon +SNM 21145 2002 0 McCracken +SNM 21147 2002 0 McCreary +SNM 21149 2002 0 McLean +SNM 21151 2002 0 Madison +SNM 21153 2002 0 Magoffin +SNM 21155 2002 0 Marion +SNM 21157 2002 0 Marshall +SNM 21159 2002 0 Martin +SNM 21161 2002 0 Mason +SNM 21163 2002 0 Meade +SNM 21165 2002 0 Menifee +SNM 21167 2002 0 Mercer +SNM 21169 2002 0 Metcalfe +SNM 21171 2002 0 Monroe +SNM 21173 2002 0 Montgomery +SNM 21175 2002 0 Morgan +SNM 21177 2002 0 Muhlenberg +SNM 21179 2002 0 Nelson +SNM 21181 2002 0 Nicholas +SNM 21183 2002 0 Ohio +SNM 21185 2002 0 Oldham +SNM 21187 2002 0 Owen +SNM 21189 2002 0 Owsley +SNM 21191 2002 0 Pendleton +SNM 21193 2002 0 Perry +SNM 21195 2002 0 Pike +SNM 21197 2002 0 Powell +SNM 21199 2002 0 Pulaski +SNM 21201 2002 0 Robertson +SNM 21203 2002 0 Rockcastle +SNM 21205 2002 0 Rowan +SNM 21207 2002 0 Russell +SNM 21209 2002 0 Scott +SNM 21211 2002 0 Shelby +SNM 21213 2002 0 Simpson +SNM 21215 2002 0 Spencer +SNM 21217 2002 0 Taylor +SNM 21219 2002 0 Todd +SNM 21221 2002 0 Trigg +SNM 21223 2002 0 Trimble +SNM 21225 2002 0 Union +SNM 21227 2002 0 Warren +SNM 21229 2002 0 Washington +SNM 21231 2002 0 Wayne +SNM 21233 2002 0 Webster +SNM 21235 2002 0 Whitley +SNM 21237 2002 0 Wolfe +SNM 21239 2002 0 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_WIB.ALO new file mode 100644 index 0000000..68c938f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_WIB.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 21000 1990 1759 KY +WIB 21001 1990 14 Adair +WIB 21003 1990 15 Allen +WIB 21005 1990 4 Anderson +WIB 21007 1990 58 Ballard +WIB 21009 1990 23 Barren +WIB 21011 1990 12 Bath +WIB 21013 1990 2 Bell +WIB 21015 1990 28 Boone +WIB 21017 1990 1 Bourbon +WIB 21019 1990 4 Boyd +WIB 21021 1990 3 Boyle +WIB 21023 1990 15 Bracken +WIB 21025 1990 0 Breathitt +WIB 21027 1990 34 Breckinridge +WIB 21029 1990 3 Bullitt +WIB 21031 1990 9 Butler +WIB 21033 1990 3 Caldwell +WIB 21035 1990 64 Calloway +WIB 21037 1990 20 Campbell +WIB 21039 1990 17 Carlisle +WIB 21041 1990 19 Carroll +WIB 21043 1990 4 Carter +WIB 21045 1990 0 Casey +WIB 21047 1990 7 Christian +WIB 21049 1990 2 Clark +WIB 21051 1990 0 Clay +WIB 21053 1990 21 Clinton +WIB 21055 1990 23 Crittenden +WIB 21057 1990 13 Cumberland +WIB 21059 1990 36 Daviess +WIB 21061 1990 14 Edmonson +WIB 21063 1990 3 Elliott +WIB 21065 1990 4 Estill +WIB 21067 1990 3 Fayette +WIB 21069 1990 1 Fleming +WIB 21071 1990 3 Floyd +WIB 21073 1990 4 Franklin +WIB 21075 1990 56 Fulton +WIB 21077 1990 15 Gallatin +WIB 21079 1990 7 Garrard +WIB 21081 1990 2 Grant +WIB 21083 1990 2 Graves +WIB 21085 1990 19 Grayson +WIB 21087 1990 0 Green +WIB 21089 1990 22 Greenup +WIB 21091 1990 26 Hancock +WIB 21093 1990 5 Hardin +WIB 21095 1990 2 Harlan +WIB 21097 1990 0 Harrison +WIB 21099 1990 5 Hart +WIB 21101 1990 70 Henderson +WIB 21103 1990 5 Henry +WIB 21105 1990 22 Hickman +WIB 21107 1990 10 Hopkins +WIB 21109 1990 1 Jackson +WIB 21111 1990 35 Jefferson +WIB 21113 1990 3 Jessamine +WIB 21115 1990 6 Johnson +WIB 21117 1990 6 Kenton +WIB 21119 1990 2 Knott +WIB 21121 1990 0 Knox +WIB 21123 1990 1 Larue +WIB 21125 1990 21 Laurel +WIB 21127 1990 3 Lawrence +WIB 21129 1990 4 Lee +WIB 21131 1990 1 Leslie +WIB 21133 1990 0 Letcher +WIB 21135 1990 29 Lewis +WIB 21137 1990 1 Lincoln +WIB 21139 1990 68 Livingston +WIB 21141 1990 4 Logan +WIB 21143 1990 105 Lyon +WIB 21145 1990 44 McCracken +WIB 21147 1990 8 McCreary +WIB 21149 1990 5 McLean +WIB 21151 1990 6 Madison +WIB 21153 1990 0 Magoffin +WIB 21155 1990 1 Marion +WIB 21157 1990 92 Marshall +WIB 21159 1990 0 Martin +WIB 21161 1990 14 Mason +WIB 21163 1990 41 Meade +WIB 21165 1990 6 Menifee +WIB 21167 1990 6 Mercer +WIB 21169 1990 0 Metcalfe +WIB 21171 1990 3 Monroe +WIB 21173 1990 1 Montgomery +WIB 21175 1990 6 Morgan +WIB 21177 1990 12 Muhlenberg +WIB 21179 1990 4 Nelson +WIB 21181 1990 1 Nicholas +WIB 21183 1990 8 Ohio +WIB 21185 1990 19 Oldham +WIB 21187 1990 5 Owen +WIB 21189 1990 0 Owsley +WIB 21191 1990 3 Pendleton +WIB 21193 1990 1 Perry +WIB 21195 1990 3 Pike +WIB 21197 1990 0 Powell +WIB 21199 1990 40 Pulaski +WIB 21201 1990 0 Robertson +WIB 21203 1990 1 Rockcastle +WIB 21205 1990 14 Rowan +WIB 21207 1990 76 Russell +WIB 21209 1990 0 Scott +WIB 21211 1990 4 Shelby +WIB 21213 1990 0 Simpson +WIB 21215 1990 15 Spencer +WIB 21217 1990 19 Taylor +WIB 21219 1990 2 Todd +WIB 21221 1990 98 Trigg +WIB 21223 1990 19 Trimble +WIB 21225 1990 47 Union +WIB 21227 1990 6 Warren +WIB 21229 1990 2 Washington +WIB 21231 1990 64 Wayne +WIB 21233 1990 3 Webster +WIB 21235 1990 13 Whitley +WIB 21237 1990 0 Wolfe +WIB 21239 1990 3 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/KY_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/KY_WOB.ALO new file mode 100644 index 0000000..62d3439 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/KY_WOB.ALO @@ -0,0 +1,145 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 21000 1990 1759 KY +WOB 21001 1990 14 Adair +WOB 21003 1990 15 Allen +WOB 21005 1990 4 Anderson +WOB 21007 1990 58 Ballard +WOB 21009 1990 23 Barren +WOB 21011 1990 12 Bath +WOB 21013 1990 2 Bell +WOB 21015 1990 28 Boone +WOB 21017 1990 1 Bourbon +WOB 21019 1990 4 Boyd +WOB 21021 1990 3 Boyle +WOB 21023 1990 15 Bracken +WOB 21025 1990 0 Breathitt +WOB 21027 1990 34 Breckinridge +WOB 21029 1990 3 Bullitt +WOB 21031 1990 9 Butler +WOB 21033 1990 3 Caldwell +WOB 21035 1990 64 Calloway +WOB 21037 1990 20 Campbell +WOB 21039 1990 17 Carlisle +WOB 21041 1990 19 Carroll +WOB 21043 1990 4 Carter +WOB 21045 1990 0 Casey +WOB 21047 1990 7 Christian +WOB 21049 1990 2 Clark +WOB 21051 1990 0 Clay +WOB 21053 1990 21 Clinton +WOB 21055 1990 23 Crittenden +WOB 21057 1990 13 Cumberland +WOB 21059 1990 36 Daviess +WOB 21061 1990 14 Edmonson +WOB 21063 1990 3 Elliott +WOB 21065 1990 4 Estill +WOB 21067 1990 3 Fayette +WOB 21069 1990 1 Fleming +WOB 21071 1990 3 Floyd +WOB 21073 1990 4 Franklin +WOB 21075 1990 56 Fulton +WOB 21077 1990 15 Gallatin +WOB 21079 1990 7 Garrard +WOB 21081 1990 2 Grant +WOB 21083 1990 2 Graves +WOB 21085 1990 19 Grayson +WOB 21087 1990 0 Green +WOB 21089 1990 22 Greenup +WOB 21091 1990 26 Hancock +WOB 21093 1990 5 Hardin +WOB 21095 1990 2 Harlan +WOB 21097 1990 0 Harrison +WOB 21099 1990 5 Hart +WOB 21101 1990 70 Henderson +WOB 21103 1990 5 Henry +WOB 21105 1990 22 Hickman +WOB 21107 1990 10 Hopkins +WOB 21109 1990 1 Jackson +WOB 21111 1990 35 Jefferson +WOB 21113 1990 3 Jessamine +WOB 21115 1990 6 Johnson +WOB 21117 1990 6 Kenton +WOB 21119 1990 2 Knott +WOB 21121 1990 0 Knox +WOB 21123 1990 1 Larue +WOB 21125 1990 21 Laurel +WOB 21127 1990 3 Lawrence +WOB 21129 1990 4 Lee +WOB 21131 1990 1 Leslie +WOB 21133 1990 0 Letcher +WOB 21135 1990 29 Lewis +WOB 21137 1990 1 Lincoln +WOB 21139 1990 68 Livingston +WOB 21141 1990 4 Logan +WOB 21143 1990 105 Lyon +WOB 21145 1990 44 McCracken +WOB 21147 1990 8 McCreary +WOB 21149 1990 5 McLean +WOB 21151 1990 6 Madison +WOB 21153 1990 0 Magoffin +WOB 21155 1990 1 Marion +WOB 21157 1990 92 Marshall +WOB 21159 1990 0 Martin +WOB 21161 1990 14 Mason +WOB 21163 1990 41 Meade +WOB 21165 1990 6 Menifee +WOB 21167 1990 6 Mercer +WOB 21169 1990 0 Metcalfe +WOB 21171 1990 3 Monroe +WOB 21173 1990 1 Montgomery +WOB 21175 1990 6 Morgan +WOB 21177 1990 12 Muhlenberg +WOB 21179 1990 4 Nelson +WOB 21181 1990 1 Nicholas +WOB 21183 1990 8 Ohio +WOB 21185 1990 19 Oldham +WOB 21187 1990 5 Owen +WOB 21189 1990 0 Owsley +WOB 21191 1990 3 Pendleton +WOB 21193 1990 1 Perry +WOB 21195 1990 3 Pike +WOB 21197 1990 0 Powell +WOB 21199 1990 40 Pulaski +WOB 21201 1990 0 Robertson +WOB 21203 1990 1 Rockcastle +WOB 21205 1990 14 Rowan +WOB 21207 1990 76 Russell +WOB 21209 1990 0 Scott +WOB 21211 1990 4 Shelby +WOB 21213 1990 0 Simpson +WOB 21215 1990 15 Spencer +WOB 21217 1990 19 Taylor +WOB 21219 1990 2 Todd +WOB 21221 1990 98 Trigg +WOB 21223 1990 19 Trimble +WOB 21225 1990 47 Union +WOB 21227 1990 6 Warren +WOB 21229 1990 2 Washington +WOB 21231 1990 64 Wayne +WOB 21233 1990 3 Webster +WOB 21235 1990 13 Whitley +WOB 21237 1990 0 Wolfe +WOB 21239 1990 3 Woodford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_AIRTR.ALO new file mode 100644 index 0000000..a7434f8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_AIRTR.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 22000 2002 721.629 LA +AIR 22001 2002 0.000 Acadia +AIR 22003 2002 0.000 Allen +AIR 22005 2002 0.000 Ascension +AIR 22007 2002 0.000 Assumption +AIR 22009 2002 0.000 Avoyelles +AIR 22011 2002 0.070 Beauregard +AIR 22013 2002 0.000 Bienville +AIR 22015 2002 0.000 Bossier +AIR 22017 2002 50.830 Caddo +AIR 22019 2002 1.030 Calcasieu +AIR 22021 2002 0.000 Caldwell +AIR 22023 2002 0.000 Cameron +AIR 22025 2002 0.000 Catahoula +AIR 22027 2002 0.004 Claiborn +AIR 22029 2002 0.000 Concordia +AIR 22031 2002 0.020 De Soto +AIR 22033 2002 47.890 E. Baton Rouge +AIR 22035 2002 0.020 E. Carroll +AIR 22037 2002 0.000 E. Feliciana +AIR 22039 2002 0.000 Evangeline +AIR 22041 2002 0.000 Franklin +AIR 22043 2002 0.000 Grant +AIR 22045 2002 1.950 Iberia +AIR 22047 2002 0.000 Iberville +AIR 22049 2002 0.002 Jackson +AIR 22051 2002 582.690 Jefferson +AIR 22053 2002 0.080 Jefferson Davis +AIR 22055 2002 4.840 Lafayette +AIR 22057 2002 0.000 Lafourche +AIR 22059 2002 0.000 La Salle +AIR 22061 2002 0.040 Lincoln +AIR 22063 2002 0.000 Livingston +AIR 22065 2002 0.008 Madison +AIR 22067 2002 0.000 Morehouse +AIR 22069 2002 0.000 Natchitoches +AIR 22071 2002 1.130 Orleans +AIR 22073 2002 20.010 Ouachita +AIR 22075 2002 0.000 Plaquemines +AIR 22077 2002 0.000 Pointe Coupee +AIR 22079 2002 8.790 Rapides +AIR 22081 2002 0.000 Red River +AIR 22083 2002 0.050 Richland +AIR 22085 2002 0.014 Sabine +AIR 22087 2002 0.000 St. Bernard +AIR 22089 2002 0.000 St. Charles +AIR 22091 2002 0.000 St. Helena +AIR 22093 2002 0.000 St. James +AIR 22095 2002 0.000 St. John the Baptist +AIR 22097 2002 0.060 St. Landry +AIR 22099 2002 0.000 St. Martin +AIR 22101 2002 0.110 St. Mary +AIR 22103 2002 0.000 St. Tammany +AIR 22105 2002 0.030 Tangipahoa +AIR 22107 2002 0.000 Tensas +AIR 22109 2002 1.660 Terrebonne +AIR 22111 2002 0.000 Union +AIR 22113 2002 0.090 Vermilion +AIR 22115 2002 0.000 Vernon +AIR 22117 2002 0.060 Washington +AIR 22119 2002 0.030 Webster +AIR 22121 2002 0.000 W. Baton Rouge +AIR 22123 2002 0.000 W. Carroll +AIR 22125 2002 0.000 W. Feliciana +AIR 22127 2002 0.120 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_COAL.ALO new file mode 100644 index 0000000..1621257 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_COAL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 22000 2002 0 LA +MIN 22001 2002 0 Acadia +MIN 22003 2002 0 Allen +MIN 22005 2002 0 Ascension +MIN 22007 2002 0 Assumption +MIN 22009 2002 0 Avoyelles +MIN 22011 2002 0 Beauregard +MIN 22013 2002 0 Bienville +MIN 22015 2002 0 Bossier +MIN 22017 2002 0 Caddo +MIN 22019 2002 0 Calcasieu +MIN 22021 2002 0 Caldwell +MIN 22023 2002 0 Cameron +MIN 22025 2002 0 Catahoula +MIN 22027 2002 0 Claiborn +MIN 22029 2002 0 Concordia +MIN 22031 2002 0 De Soto +MIN 22033 2002 0 E. Baton Rouge +MIN 22035 2002 0 E. Carroll +MIN 22037 2002 0 E. Feliciana +MIN 22039 2002 0 Evangeline +MIN 22041 2002 0 Franklin +MIN 22043 2002 0 Grant +MIN 22045 2002 0 Iberia +MIN 22047 2002 0 Iberville +MIN 22049 2002 0 Jackson +MIN 22051 2002 0 Jefferson +MIN 22053 2002 0 Jefferson Davis +MIN 22055 2002 0 Lafayette +MIN 22057 2002 0 Lafourche +MIN 22059 2002 0 La Salle +MIN 22061 2002 0 Lincoln +MIN 22063 2002 0 Livingston +MIN 22065 2002 0 Madison +MIN 22067 2002 0 Morehouse +MIN 22069 2002 0 Natchitoches +MIN 22071 2002 0 Orleans +MIN 22073 2002 0 Ouachita +MIN 22075 2002 0 Plaquemines +MIN 22077 2002 0 Pointe Coupee +MIN 22079 2002 0 Rapides +MIN 22081 2002 0 Red River +MIN 22083 2002 0 Richland +MIN 22085 2002 0 Sabine +MIN 22087 2002 0 St. Bernard +MIN 22089 2002 0 St. Charles +MIN 22091 2002 0 St. Helena +MIN 22093 2002 0 St. James +MIN 22095 2002 0 St. John the Baptist +MIN 22097 2002 0 St. Landry +MIN 22099 2002 0 St. Martin +MIN 22101 2002 0 St. Mary +MIN 22103 2002 0 St. Tammany +MIN 22105 2002 0 Tangipahoa +MIN 22107 2002 0 Tensas +MIN 22109 2002 0 Terrebonne +MIN 22111 2002 0 Union +MIN 22113 2002 0 Vermilion +MIN 22115 2002 0 Vernon +MIN 22117 2002 0 Washington +MIN 22119 2002 0 Webster +MIN 22121 2002 0 W. Baton Rouge +MIN 22123 2002 0 W. Carroll +MIN 22125 2002 0 W. Feliciana +MIN 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_CONST.ALO new file mode 100644 index 0000000..eb4f7ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_CONST.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 22000 2003 6608336 LA +CON 22001 2003 37048 Acadia +CON 22003 2003 9627 Allen +CON 22005 2003 185445 Ascension +CON 22007 2003 21371 Assumption +CON 22009 2003 28370 Avoyelles +CON 22011 2003 73126 Beauregard +CON 22013 2003 6347 Bienville +CON 22015 2003 326028 Bossier +CON 22017 2003 378365 Caddo +CON 22019 2003 439974 Calcasieu +CON 22021 2003 23923 Caldwell +CON 22023 2003 15362 Cameron +CON 22025 2003 9656 Catahoula +CON 22027 2003 10058 Claiborn +CON 22029 2003 20970 Concordia +CON 22031 2003 6278 De Soto +CON 22033 2003 788560 E. Baton Rouge +CON 22035 2003 11021 E. Carroll +CON 22037 2003 20356 E. Feliciana +CON 22039 2003 17349 Evangeline +CON 22041 2003 15231 Franklin +CON 22043 2003 32540 Grant +CON 22045 2003 117867 Iberia +CON 22047 2003 39936 Iberville +CON 22049 2003 14868 Jackson +CON 22051 2003 505624 Jefferson +CON 22053 2003 71210 Jefferson Davis +CON 22055 2003 435760 Lafayette +CON 22057 2003 73692 Lafourche +CON 22059 2003 11983 La Salle +CON 22061 2003 71555 Lincoln +CON 22063 2003 174017 Livingston +CON 22065 2003 16702 Madison +CON 22067 2003 12833 Morehouse +CON 22069 2003 52013 Natchitoches +CON 22071 2003 446505 Orleans +CON 22073 2003 190630 Ouachita +CON 22075 2003 49698 Plaquemines +CON 22077 2003 16828 Pointe Coupee +CON 22079 2003 175299 Rapides +CON 22081 2003 10863 Red River +CON 22083 2003 15179 Richland +CON 22085 2003 33235 Sabine +CON 22087 2003 48355 St. Bernard +CON 22089 2003 72710 St. Charles +CON 22091 2003 3398 St. Helena +CON 22093 2003 10933 St. James +CON 22095 2003 64764 St. John the Baptist +CON 22097 2003 94617 St. Landry +CON 22099 2003 51394 St. Martin +CON 22101 2003 33425 St. Mary +CON 22103 2003 645767 St. Tammany +CON 22105 2003 120199 Tangipahoa +CON 22107 2003 8174 Tensas +CON 22109 2003 150161 Terrebonne +CON 22111 2003 28963 Union +CON 22113 2003 38119 Vermilion +CON 22115 2003 87577 Vernon +CON 22117 2003 29470 Washington +CON 22119 2003 31354 Webster +CON 22121 2003 28256 W. Baton Rouge +CON 22123 2003 3561 W. Carroll +CON 22125 2003 36839 W. Feliciana +CON 22127 2003 7001 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_FARMS.ALO new file mode 100644 index 0000000..8739007 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_FARMS.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 22000 2002 3332146 LA +FRM 22001 2002 135833 Acadia +FRM 22003 2002 26091 Allen +FRM 22005 2002 20102 Ascension +FRM 22007 2002 40819 Assumption +FRM 22009 2002 163366 Avoyelles +FRM 22011 2002 23704 Beauregard +FRM 22013 2002 6508 Bienville +FRM 22015 2002 27680 Bossier +FRM 22017 2002 59770 Caddo +FRM 22019 2002 32100 Calcasieu +FRM 22021 2002 18263 Caldwell +FRM 22023 2002 13605 Cameron +FRM 22025 2002 125929 Catahoula +FRM 22027 2002 7076 Claiborn +FRM 22029 2002 139698 Concordia +FRM 22031 2002 19172 De Soto +FRM 22033 2002 12424 E. Baton Rouge +FRM 22035 2002 179245 E. Carroll +FRM 22037 2002 14973 E. Feliciana +FRM 22039 2002 84624 Evangeline +FRM 22041 2002 154959 Franklin +FRM 22043 2002 11791 Grant +FRM 22045 2002 69233 Iberia +FRM 22047 2002 58234 Iberville +FRM 22049 2002 2436 Jackson +FRM 22051 2002 1712 Jefferson +FRM 22053 2002 122996 Jefferson Davis +FRM 22055 2002 37564 Lafayette +FRM 22057 2002 35728 Lafourche +FRM 22059 2002 2930 La Salle +FRM 22061 2002 7639 Lincoln +FRM 22063 2002 3988 Livingston +FRM 22065 2002 180436 Madison +FRM 22067 2002 178451 Morehouse +FRM 22069 2002 55627 Natchitoches +FRM 22071 2002 10 Orleans +FRM 22073 2002 38225 Ouachita +FRM 22075 2002 2088 Plaquemines +FRM 22077 2002 130989 Pointe Coupee +FRM 22079 2002 79696 Rapides +FRM 22081 2002 33008 Red River +FRM 22083 2002 112029 Richland +FRM 22085 2002 9727 Sabine +FRM 22087 2002 100 St. Bernard +FRM 22089 2002 2166 St. Charles +FRM 22091 2002 8011 St. Helena +FRM 22093 2002 32942 St. James +FRM 22095 2002 8606 St. John the Baptist +FRM 22097 2002 167709 St. Landry +FRM 22099 2002 51306 St. Martin +FRM 22101 2002 48335 St. Mary +FRM 22103 2002 5587 St. Tammany +FRM 22105 2002 31168 Tangipahoa +FRM 22107 2002 162757 Tensas +FRM 22109 2002 16609 Terrebonne +FRM 22111 2002 12666 Union +FRM 22113 2002 145877 Vermilion +FRM 22115 2002 6955 Vernon +FRM 22117 2002 26166 Washington +FRM 22119 2002 9035 Webster +FRM 22121 2002 14282 W. Baton Rouge +FRM 22123 2002 87172 W. Carroll +FRM 22125 2002 9863 W. Feliciana +FRM 22127 2002 4356 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_GOLF.ALO new file mode 100644 index 0000000..0ad6a1f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_GOLF.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 22000 2002 126 LA +GC 22001 2002 1 Acadia +GC 22003 2002 1 Allen +GC 22005 2002 4 Ascension +GC 22007 2002 1 Assumption +GC 22009 2002 0 Avoyelles +GC 22011 2002 1 Beauregard +GC 22013 2002 1 Bienville +GC 22015 2002 5 Bossier +GC 22017 2002 6 Caddo +GC 22019 2002 4 Calcasieu +GC 22021 2002 1 Caldwell +GC 22023 2002 0 Cameron +GC 22025 2002 0 Catahoula +GC 22027 2002 1 Claiborn +GC 22029 2002 0 Concordia +GC 22031 2002 1 De Soto +GC 22033 2002 11 E. Baton Rouge +GC 22035 2002 1 E. Carroll +GC 22037 2002 1 E. Feliciana +GC 22039 2002 1 Evangeline +GC 22041 2002 1 Franklin +GC 22043 2002 0 Grant +GC 22045 2002 2 Iberia +GC 22047 2002 1 Iberville +GC 22049 2002 1 Jackson +GC 22051 2002 5 Jefferson +GC 22053 2002 1 Jefferson Davis +GC 22055 2002 4 Lafayette +GC 22057 2002 3 Lafourche +GC 22059 2002 1 La Salle +GC 22061 2002 3 Lincoln +GC 22063 2002 1 Livingston +GC 22065 2002 1 Madison +GC 22067 2002 1 Morehouse +GC 22069 2002 1 Natchitoches +GC 22071 2002 5 Orleans +GC 22073 2002 5 Ouachita +GC 22075 2002 3 Plaquemines +GC 22077 2002 1 Pointe Coupee +GC 22079 2002 5 Rapides +GC 22081 2002 0 Red River +GC 22083 2002 1 Richland +GC 22085 2002 0 Sabine +GC 22087 2002 0 St. Bernard +GC 22089 2002 4 St. Charles +GC 22091 2002 0 St. Helena +GC 22093 2002 0 St. James +GC 22095 2002 2 St. John the Baptist +GC 22097 2002 3 St. Landry +GC 22099 2002 1 St. Martin +GC 22101 2002 2 St. Mary +GC 22103 2002 9 St. Tammany +GC 22105 2002 4 Tangipahoa +GC 22107 2002 1 Tensas +GC 22109 2002 3 Terrebonne +GC 22111 2002 2 Union +GC 22113 2002 1 Vermilion +GC 22115 2002 0 Vernon +GC 22117 2002 2 Washington +GC 22119 2002 3 Webster +GC 22121 2002 1 W. Baton Rouge +GC 22123 2002 0 W. Carroll +GC 22125 2002 0 W. Feliciana +GC 22127 2002 1 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_HOLSL.ALO new file mode 100644 index 0000000..b3abc7d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_HOLSL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 22000 2002 5965 LA +COM 22001 2002 53 Acadia +COM 22003 2002 13 Allen +COM 22005 2002 105 Ascension +COM 22007 2002 14 Assumption +COM 22009 2002 24 Avoyelles +COM 22011 2002 18 Beauregard +COM 22013 2002 8 Bienville +COM 22015 2002 119 Bossier +COM 22017 2002 397 Caddo +COM 22019 2002 218 Calcasieu +COM 22021 2002 9 Caldwell +COM 22023 2002 16 Cameron +COM 22025 2002 15 Catahoula +COM 22027 2002 17 Claiborn +COM 22029 2002 15 Concordia +COM 22031 2002 12 De Soto +COM 22033 2002 731 E. Baton Rouge +COM 22035 2002 9 E. Carroll +COM 22037 2002 8 E. Feliciana +COM 22039 2002 18 Evangeline +COM 22041 2002 24 Franklin +COM 22043 2002 7 Grant +COM 22045 2002 107 Iberia +COM 22047 2002 31 Iberville +COM 22049 2002 4 Jackson +COM 22051 2002 1034 Jefferson +COM 22053 2002 33 Jefferson Davis +COM 22055 2002 479 Lafayette +COM 22057 2002 80 Lafourche +COM 22059 2002 8 La Salle +COM 22061 2002 35 Lincoln +COM 22063 2002 48 Livingston +COM 22065 2002 9 Madison +COM 22067 2002 16 Morehouse +COM 22069 2002 31 Natchitoches +COM 22071 2002 430 Orleans +COM 22073 2002 223 Ouachita +COM 22075 2002 82 Plaquemines +COM 22077 2002 10 Pointe Coupee +COM 22079 2002 166 Rapides +COM 22081 2002 6 Red River +COM 22083 2002 24 Richland +COM 22085 2002 14 Sabine +COM 22087 2002 51 St. Bernard +COM 22089 2002 100 St. Charles +COM 22091 2002 2 St. Helena +COM 22093 2002 16 St. James +COM 22095 2002 30 St. John the Baptist +COM 22097 2002 76 St. Landry +COM 22099 2002 35 St. Martin +COM 22101 2002 99 St. Mary +COM 22103 2002 289 St. Tammany +COM 22105 2002 100 Tangipahoa +COM 22107 2002 5 Tensas +COM 22109 2002 225 Terrebonne +COM 22111 2002 11 Union +COM 22113 2002 57 Vermilion +COM 22115 2002 22 Vernon +COM 22117 2002 23 Washington +COM 22119 2002 35 Webster +COM 22121 2002 41 W. Baton Rouge +COM 22123 2002 7 W. Carroll +COM 22125 2002 8 W. Feliciana +COM 22127 2002 13 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_HOUSE.ALO new file mode 100644 index 0000000..f4ca860 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_HOUSE.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 22000 2002 1880772 LA +HOU 22001 2002 23580 Acadia +HOU 22003 2002 9255 Allen +HOU 22005 2002 31240 Ascension +HOU 22007 2002 9887 Assumption +HOU 22009 2002 17043 Avoyelles +HOU 22011 2002 14686 Beauregard +HOU 22013 2002 7941 Bienville +HOU 22015 2002 41836 Bossier +HOU 22017 2002 109306 Caddo +HOU 22019 2002 78477 Calcasieu +HOU 22021 2002 5077 Caldwell +HOU 22023 2002 5416 Cameron +HOU 22025 2002 5425 Catahoula +HOU 22027 2002 7895 Claiborn +HOU 22029 2002 9320 Concordia +HOU 22031 2002 11406 De Soto +HOU 22033 2002 172191 E. Baton Rouge +HOU 22035 2002 3243 E. Carroll +HOU 22037 2002 8037 E. Feliciana +HOU 22039 2002 14505 Evangeline +HOU 22041 2002 8712 Franklin +HOU 22043 2002 8677 Grant +HOU 22045 2002 28237 Iberia +HOU 22047 2002 12133 Iberville +HOU 22049 2002 7416 Jackson +HOU 22051 2002 189539 Jefferson +HOU 22053 2002 12989 Jefferson Davis +HOU 22055 2002 80667 Lafayette +HOU 22057 2002 35722 Lafourche +HOU 22059 2002 6354 La Salle +HOU 22061 2002 17285 Lincoln +HOU 22063 2002 38320 Livingston +HOU 22065 2002 5013 Madison +HOU 22067 2002 12897 Morehouse +HOU 22069 2002 17216 Natchitoches +HOU 22071 2002 213134 Orleans +HOU 22073 2002 61162 Ouachita +HOU 22075 2002 10805 Plaquemines +HOU 22077 2002 10509 Pointe Coupee +HOU 22079 2002 52912 Rapides +HOU 22081 2002 4052 Red River +HOU 22083 2002 8434 Richland +HOU 22085 2002 13887 Sabine +HOU 22087 2002 27078 St. Bernard +HOU 22089 2002 17835 St. Charles +HOU 22091 2002 5103 St. Helena +HOU 22093 2002 7704 St. James +HOU 22095 2002 16086 St. John the Baptist +HOU 22097 2002 36710 St. Landry +HOU 22099 2002 20695 St. Martin +HOU 22101 2002 21913 St. Mary +HOU 22103 2002 79405 St. Tammany +HOU 22105 2002 42211 Tangipahoa +HOU 22107 2002 3366 Tensas +HOU 22109 2002 41067 Terrebonne +HOU 22111 2002 11056 Union +HOU 22113 2002 22817 Vermilion +HOU 22115 2002 21266 Vernon +HOU 22117 2002 19347 Washington +HOU 22119 2002 19428 Webster +HOU 22121 2002 8572 W. Baton Rouge +HOU 22123 2002 5066 W. Carroll +HOU 22125 2002 4619 W. Feliciana +HOU 22127 2002 7590 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_LOGGN.ALO new file mode 100644 index 0000000..11dc933 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_LOGGN.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 22000 2002 1093426902 LA +LOG 22001 2002 2109926 Acadia +LOG 22003 2002 25378906 Allen +LOG 22005 2002 2132630 Ascension +LOG 22007 2002 0 Assumption +LOG 22009 2002 7665868 Avoyelles +LOG 22011 2002 32082678 Beauregard +LOG 22013 2002 55642813 Bienville +LOG 22015 2002 50592479 Bossier +LOG 22017 2002 24599950 Caddo +LOG 22019 2002 6040848 Calcasieu +LOG 22021 2002 23382456 Caldwell +LOG 22023 2002 0 Cameron +LOG 22025 2002 10075000 Catahoula +LOG 22027 2002 40042057 Claiborn +LOG 22029 2002 8333273 Concordia +LOG 22031 2002 47882273 De Soto +LOG 22033 2002 10865018 E. Baton Rouge +LOG 22035 2002 3347372 E. Carroll +LOG 22037 2002 20169261 E. Feliciana +LOG 22039 2002 16060077 Evangeline +LOG 22041 2002 9366168 Franklin +LOG 22043 2002 12622066 Grant +LOG 22045 2002 0 Iberia +LOG 22047 2002 7362795 Iberville +LOG 22049 2002 59886276 Jackson +LOG 22051 2002 0 Jefferson +LOG 22053 2002 703089 Jefferson Davis +LOG 22055 2002 3445668 Lafayette +LOG 22057 2002 20669 Lafourche +LOG 22059 2002 35355172 La Salle +LOG 22061 2002 32713393 Lincoln +LOG 22063 2002 28158274 Livingston +LOG 22065 2002 9036732 Madison +LOG 22067 2002 16534704 Morehouse +LOG 22069 2002 40661076 Natchitoches +LOG 22071 2002 0 Orleans +LOG 22073 2002 30078383 Ouachita +LOG 22075 2002 0 Plaquemines +LOG 22077 2002 8644693 Pointe Coupee +LOG 22079 2002 29185755 Rapides +LOG 22081 2002 14778679 Red River +LOG 22083 2002 7225904 Richland +LOG 22085 2002 59467522 Sabine +LOG 22087 2002 0 St. Bernard +LOG 22089 2002 321702 St. Charles +LOG 22091 2002 21691962 St. Helena +LOG 22093 2002 6209 St. James +LOG 22095 2002 0 St. John the Baptist +LOG 22097 2002 7967081 St. Landry +LOG 22099 2002 3317404 St. Martin +LOG 22101 2002 0 St. Mary +LOG 22103 2002 12301741 St. Tammany +LOG 22105 2002 21885666 Tangipahoa +LOG 22107 2002 10525623 Tensas +LOG 22109 2002 0 Terrebonne +LOG 22111 2002 52128965 Union +LOG 22113 2002 124807 Vermilion +LOG 22115 2002 46034143 Vernon +LOG 22117 2002 24442711 Washington +LOG 22119 2002 41070867 Webster +LOG 22121 2002 1528548 W. Baton Rouge +LOG 22123 2002 5247173 W. Carroll +LOG 22125 2002 10512862 W. Feliciana +LOG 22127 2002 42669536 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_LSCAP.ALO new file mode 100644 index 0000000..62c5267 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_LSCAP.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 22000 2002 3318 LA +LSC 22001 2002 5 Acadia +LSC 22003 2002 0 Allen +LSC 22005 2002 58 Ascension +LSC 22007 2002 6 Assumption +LSC 22009 2002 32 Avoyelles +LSC 22011 2002 23 Beauregard +LSC 22013 2002 0 Bienville +LSC 22015 2002 61 Bossier +LSC 22017 2002 728 Caddo +LSC 22019 2002 150 Calcasieu +LSC 22021 2002 0 Caldwell +LSC 22023 2002 0 Cameron +LSC 22025 2002 6 Catahoula +LSC 22027 2002 6 Claiborn +LSC 22029 2002 6 Concordia +LSC 22031 2002 33 De Soto +LSC 22033 2002 429 E. Baton Rouge +LSC 22035 2002 0 E. Carroll +LSC 22037 2002 0 E. Feliciana +LSC 22039 2002 6 Evangeline +LSC 22041 2002 6 Franklin +LSC 22043 2002 6 Grant +LSC 22045 2002 6 Iberia +LSC 22047 2002 6 Iberville +LSC 22049 2002 6 Jackson +LSC 22051 2002 427 Jefferson +LSC 22053 2002 6 Jefferson Davis +LSC 22055 2002 195 Lafayette +LSC 22057 2002 14 Lafourche +LSC 22059 2002 0 La Salle +LSC 22061 2002 50 Lincoln +LSC 22063 2002 25 Livingston +LSC 22065 2002 6 Madison +LSC 22067 2002 6 Morehouse +LSC 22069 2002 6 Natchitoches +LSC 22071 2002 177 Orleans +LSC 22073 2002 97 Ouachita +LSC 22075 2002 15 Plaquemines +LSC 22077 2002 33 Pointe Coupee +LSC 22079 2002 76 Rapides +LSC 22081 2002 6 Red River +LSC 22083 2002 0 Richland +LSC 22085 2002 6 Sabine +LSC 22087 2002 6 St. Bernard +LSC 22089 2002 26 St. Charles +LSC 22091 2002 0 St. Helena +LSC 22093 2002 24 St. James +LSC 22095 2002 33 St. John the Baptist +LSC 22097 2002 29 St. Landry +LSC 22099 2002 6 St. Martin +LSC 22101 2002 6 St. Mary +LSC 22103 2002 181 St. Tammany +LSC 22105 2002 56 Tangipahoa +LSC 22107 2002 0 Tensas +LSC 22109 2002 34 Terrebonne +LSC 22111 2002 34 Union +LSC 22113 2002 32 Vermilion +LSC 22115 2002 6 Vernon +LSC 22117 2002 0 Washington +LSC 22119 2002 12 Webster +LSC 22121 2002 97 W. Baton Rouge +LSC 22123 2002 6 W. Carroll +LSC 22125 2002 6 W. Feliciana +LSC 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_MNFG.ALO new file mode 100644 index 0000000..2b95ca1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_MNFG.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 22000 2002 281554 LA +MFG 22001 2002 3056 Acadia +MFG 22003 2002 936 Allen +MFG 22005 2002 10934 Ascension +MFG 22007 2002 364 Assumption +MFG 22009 2002 975 Avoyelles +MFG 22011 2002 2166 Beauregard +MFG 22013 2002 1392 Bienville +MFG 22015 2002 4687 Bossier +MFG 22017 2002 20452 Caddo +MFG 22019 2002 18534 Calcasieu +MFG 22021 2002 54 Caldwell +MFG 22023 2002 75 Cameron +MFG 22025 2002 216 Catahoula +MFG 22027 2002 668 Claiborn +MFG 22029 2002 150 Concordia +MFG 22031 2002 2362 De Soto +MFG 22033 2002 21699 E. Baton Rouge +MFG 22035 2002 268 E. Carroll +MFG 22037 2002 641 E. Feliciana +MFG 22039 2002 1265 Evangeline +MFG 22041 2002 356 Franklin +MFG 22043 2002 906 Grant +MFG 22045 2002 6174 Iberia +MFG 22047 2002 7308 Iberville +MFG 22049 2002 1634 Jackson +MFG 22051 2002 29841 Jefferson +MFG 22053 2002 770 Jefferson Davis +MFG 22055 2002 11474 Lafayette +MFG 22057 2002 4515 Lafourche +MFG 22059 2002 721 La Salle +MFG 22061 2002 3039 Lincoln +MFG 22063 2002 2754 Livingston +MFG 22065 2002 139 Madison +MFG 22067 2002 1987 Morehouse +MFG 22069 2002 4378 Natchitoches +MFG 22071 2002 15033 Orleans +MFG 22073 2002 14467 Ouachita +MFG 22075 2002 3392 Plaquemines +MFG 22077 2002 845 Pointe Coupee +MFG 22079 2002 5976 Rapides +MFG 22081 2002 642 Red River +MFG 22083 2002 1196 Richland +MFG 22085 2002 1613 Sabine +MFG 22087 2002 2800 St. Bernard +MFG 22089 2002 10067 St. Charles +MFG 22091 2002 289 St. Helena +MFG 22093 2002 4273 St. James +MFG 22095 2002 4397 St. John the Baptist +MFG 22097 2002 3084 St. Landry +MFG 22099 2002 1384 St. Martin +MFG 22101 2002 8366 St. Mary +MFG 22103 2002 4378 St. Tammany +MFG 22105 2002 5021 Tangipahoa +MFG 22107 2002 37 Tensas +MFG 22109 2002 7692 Terrebonne +MFG 22111 2002 1935 Union +MFG 22113 2002 2393 Vermilion +MFG 22115 2002 310 Vernon +MFG 22117 2002 2691 Washington +MFG 22119 2002 4247 Webster +MFG 22121 2002 4383 W. Baton Rouge +MFG 22123 2002 380 W. Carroll +MFG 22125 2002 1669 W. Feliciana +MFG 22127 2002 1704 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_OIL.ALO new file mode 100644 index 0000000..dd79970 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_OIL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 22000 2002 18115 LA +OIL 22001 2002 315 Acadia +OIL 22003 2002 0 Allen +OIL 22005 2002 111 Ascension +OIL 22007 2002 154 Assumption +OIL 22009 2002 0 Avoyelles +OIL 22011 2002 111 Beauregard +OIL 22013 2002 111 Bienville +OIL 22015 2002 110 Bossier +OIL 22017 2002 988 Caddo +OIL 22019 2002 346 Calcasieu +OIL 22021 2002 0 Caldwell +OIL 22023 2002 161 Cameron +OIL 22025 2002 43 Catahoula +OIL 22027 2002 53 Claiborn +OIL 22029 2002 278 Concordia +OIL 22031 2002 19 De Soto +OIL 22033 2002 117 E. Baton Rouge +OIL 22035 2002 0 E. Carroll +OIL 22037 2002 0 E. Feliciana +OIL 22039 2002 90 Evangeline +OIL 22041 2002 0 Franklin +OIL 22043 2002 0 Grant +OIL 22045 2002 959 Iberia +OIL 22047 2002 370 Iberville +OIL 22049 2002 0 Jackson +OIL 22051 2002 862 Jefferson +OIL 22053 2002 62 Jefferson Davis +OIL 22055 2002 2319 Lafayette +OIL 22057 2002 1081 Lafourche +OIL 22059 2002 338 La Salle +OIL 22061 2002 19 Lincoln +OIL 22063 2002 43 Livingston +OIL 22065 2002 0 Madison +OIL 22067 2002 19 Morehouse +OIL 22069 2002 19 Natchitoches +OIL 22071 2002 3482 Orleans +OIL 22073 2002 142 Ouachita +OIL 22075 2002 740 Plaquemines +OIL 22077 2002 43 Pointe Coupee +OIL 22079 2002 19 Rapides +OIL 22081 2002 0 Red River +OIL 22083 2002 43 Richland +OIL 22085 2002 62 Sabine +OIL 22087 2002 80 St. Bernard +OIL 22089 2002 325 St. Charles +OIL 22091 2002 0 St. Helena +OIL 22093 2002 19 St. James +OIL 22095 2002 0 St. John the Baptist +OIL 22097 2002 85 St. Landry +OIL 22099 2002 154 St. Martin +OIL 22101 2002 740 St. Mary +OIL 22103 2002 52 St. Tammany +OIL 22105 2002 19 Tangipahoa +OIL 22107 2002 0 Tensas +OIL 22109 2002 2397 Terrebonne +OIL 22111 2002 62 Union +OIL 22113 2002 177 Vermilion +OIL 22115 2002 0 Vernon +OIL 22117 2002 0 Washington +OIL 22119 2002 111 Webster +OIL 22121 2002 111 W. Baton Rouge +OIL 22123 2002 0 W. Carroll +OIL 22125 2002 0 W. Feliciana +OIL 22127 2002 154 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_POP.ALO new file mode 100644 index 0000000..c9ec59d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_POP.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 22000 2002 4477042 LA +POP 22001 2002 59144 Acadia +POP 22003 2002 25163 Allen +POP 22005 2002 81775 Ascension +POP 22007 2002 23228 Assumption +POP 22009 2002 41547 Avoyelles +POP 22011 2002 33218 Beauregard +POP 22013 2002 15419 Bienville +POP 22015 2002 100829 Bossier +POP 22017 2002 250506 Caddo +POP 22019 2002 183250 Calcasieu +POP 22021 2002 10617 Caldwell +POP 22023 2002 9770 Cameron +POP 22025 2002 10758 Catahoula +POP 22027 2002 16626 Claiborn +POP 22029 2002 19948 Concordia +POP 22031 2002 25784 De Soto +POP 22033 2002 410295 E. Baton Rouge +POP 22035 2002 9101 E. Carroll +POP 22037 2002 21117 E. Feliciana +POP 22039 2002 35375 Evangeline +POP 22041 2002 20908 Franklin +POP 22043 2002 18746 Grant +POP 22045 2002 73723 Iberia +POP 22047 2002 33075 Iberville +POP 22049 2002 15273 Jackson +POP 22051 2002 451938 Jefferson +POP 22053 2002 31135 Jefferson Davis +POP 22055 2002 192850 Lafayette +POP 22057 2002 90807 Lafourche +POP 22059 2002 14249 La Salle +POP 22061 2002 41871 Lincoln +POP 22063 2002 98982 Livingston +POP 22065 2002 13199 Madison +POP 22067 2002 30526 Morehouse +POP 22069 2002 38944 Natchitoches +POP 22071 2002 472540 Orleans +POP 22073 2002 147131 Ouachita +POP 22075 2002 27346 Plaquemines +POP 22077 2002 22569 Pointe Coupee +POP 22079 2002 126742 Rapides +POP 22081 2002 9580 Red River +POP 22083 2002 20723 Richland +POP 22085 2002 23407 Sabine +POP 22087 2002 66388 St. Bernard +POP 22089 2002 49124 St. Charles +POP 22091 2002 10429 St. Helena +POP 22093 2002 21271 St. James +POP 22095 2002 44207 St. John the Baptist +POP 22097 2002 88390 St. Landry +POP 22099 2002 49526 St. Martin +POP 22101 2002 52532 St. Mary +POP 22103 2002 201920 St. Tammany +POP 22105 2002 102413 Tangipahoa +POP 22107 2002 6421 Tensas +POP 22109 2002 105503 Terrebonne +POP 22111 2002 22821 Union +POP 22113 2002 54113 Vermilion +POP 22115 2002 51226 Vernon +POP 22117 2002 43892 Washington +POP 22119 2002 41523 Webster +POP 22121 2002 21703 W. Baton Rouge +POP 22123 2002 12170 W. Carroll +POP 22125 2002 15168 W. Feliciana +POP 22127 2002 16568 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_RAIL.ALO new file mode 100644 index 0000000..ead2080 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_RAIL.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 22000 2002 15806.520 LA +RR 22001 2002 179.550 Acadia +RR 22003 2002 257.200 Allen +RR 22005 2002 539.300 Ascension +RR 22007 2002 91.290 Assumption +RR 22009 2002 192.500 Avoyelles +RR 22011 2002 469.190 Beauregard +RR 22013 2002 164.840 Bienville +RR 22015 2002 644.150 Bossier +RR 22017 2002 978.830 Caddo +RR 22019 2002 591.420 Calcasieu +RR 22021 2002 204.350 Caldwell +RR 22023 2002 0.000 Cameron +RR 22025 2002 0.000 Catahoula +RR 22027 2002 0.000 Claiborn +RR 22029 2002 0.000 Concordia +RR 22031 2002 442.370 De Soto +RR 22033 2002 208.360 E. Baton Rouge +RR 22035 2002 0.000 E. Carroll +RR 22037 2002 7.680 E. Feliciana +RR 22039 2002 102.370 Evangeline +RR 22041 2002 0.000 Franklin +RR 22043 2002 329.220 Grant +RR 22045 2002 56.080 Iberia +RR 22047 2002 358.830 Iberville +RR 22049 2002 21.890 Jackson +RR 22051 2002 976.540 Jefferson +RR 22053 2002 190.570 Jefferson Davis +RR 22055 2002 107.030 Lafayette +RR 22057 2002 104.730 Lafourche +RR 22059 2002 237.140 La Salle +RR 22061 2002 214.650 Lincoln +RR 22063 2002 60.540 Livingston +RR 22065 2002 143.860 Madison +RR 22067 2002 281.780 Morehouse +RR 22069 2002 189.490 Natchitoches +RR 22071 2002 911.310 Orleans +RR 22073 2002 497.450 Ouachita +RR 22075 2002 6.290 Plaquemines +RR 22077 2002 609.770 Pointe Coupee +RR 22079 2002 412.800 Rapides +RR 22081 2002 181.230 Red River +RR 22083 2002 217.980 Richland +RR 22085 2002 353.060 Sabine +RR 22087 2002 7.600 St. Bernard +RR 22089 2002 704.060 St. Charles +RR 22091 2002 0.000 St. Helena +RR 22093 2002 497.140 St. James +RR 22095 2002 502.070 St. John the Baptist +RR 22097 2002 689.870 St. Landry +RR 22099 2002 58.260 St. Martin +RR 22101 2002 90.230 St. Mary +RR 22103 2002 242.230 St. Tammany +RR 22105 2002 314.380 Tangipahoa +RR 22107 2002 0.000 Tensas +RR 22109 2002 41.690 Terrebonne +RR 22111 2002 0.000 Union +RR 22113 2002 0.000 Vermilion +RR 22115 2002 197.090 Vernon +RR 22117 2002 11.910 Washington +RR 22119 2002 240.250 Webster +RR 22121 2002 581.470 W. Baton Rouge +RR 22123 2002 0.000 W. Carroll +RR 22125 2002 0.000 W. Feliciana +RR 22127 2002 92.630 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_RVPRK.ALO new file mode 100644 index 0000000..6787a1f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_RVPRK.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 22000 2002 56 LA +RVP 22001 2002 1 Acadia +RVP 22003 2002 0 Allen +RVP 22005 2002 0 Ascension +RVP 22007 2002 0 Assumption +RVP 22009 2002 0 Avoyelles +RVP 22011 2002 2 Beauregard +RVP 22013 2002 0 Bienville +RVP 22015 2002 1 Bossier +RVP 22017 2002 1 Caddo +RVP 22019 2002 7 Calcasieu +RVP 22021 2002 0 Caldwell +RVP 22023 2002 1 Cameron +RVP 22025 2002 0 Catahoula +RVP 22027 2002 1 Claiborn +RVP 22029 2002 1 Concordia +RVP 22031 2002 1 De Soto +RVP 22033 2002 0 E. Baton Rouge +RVP 22035 2002 0 E. Carroll +RVP 22037 2002 1 E. Feliciana +RVP 22039 2002 1 Evangeline +RVP 22041 2002 0 Franklin +RVP 22043 2002 1 Grant +RVP 22045 2002 0 Iberia +RVP 22047 2002 0 Iberville +RVP 22049 2002 0 Jackson +RVP 22051 2002 1 Jefferson +RVP 22053 2002 1 Jefferson Davis +RVP 22055 2002 4 Lafayette +RVP 22057 2002 0 Lafourche +RVP 22059 2002 0 La Salle +RVP 22061 2002 0 Lincoln +RVP 22063 2002 1 Livingston +RVP 22065 2002 0 Madison +RVP 22067 2002 0 Morehouse +RVP 22069 2002 0 Natchitoches +RVP 22071 2002 5 Orleans +RVP 22073 2002 3 Ouachita +RVP 22075 2002 0 Plaquemines +RVP 22077 2002 0 Pointe Coupee +RVP 22079 2002 1 Rapides +RVP 22081 2002 1 Red River +RVP 22083 2002 0 Richland +RVP 22085 2002 0 Sabine +RVP 22087 2002 0 St. Bernard +RVP 22089 2002 0 St. Charles +RVP 22091 2002 0 St. Helena +RVP 22093 2002 0 St. James +RVP 22095 2002 0 St. John the Baptist +RVP 22097 2002 1 St. Landry +RVP 22099 2002 2 St. Martin +RVP 22101 2002 0 St. Mary +RVP 22103 2002 7 St. Tammany +RVP 22105 2002 3 Tangipahoa +RVP 22107 2002 0 Tensas +RVP 22109 2002 3 Terrebonne +RVP 22111 2002 0 Union +RVP 22113 2002 2 Vermilion +RVP 22115 2002 1 Vernon +RVP 22117 2002 0 Washington +RVP 22119 2002 0 Webster +RVP 22121 2002 1 W. Baton Rouge +RVP 22123 2002 0 W. Carroll +RVP 22125 2002 0 W. Feliciana +RVP 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_SBC.ALO new file mode 100644 index 0000000..5a51e42 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_SBC.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 22000 2002 0 LA +SBC 22001 2002 0 Acadia +SBC 22003 2002 0 Allen +SBC 22005 2002 0 Ascension +SBC 22007 2002 0 Assumption +SBC 22009 2002 0 Avoyelles +SBC 22011 2002 0 Beauregard +SBC 22013 2002 0 Bienville +SBC 22015 2002 0 Bossier +SBC 22017 2002 0 Caddo +SBC 22019 2002 0 Calcasieu +SBC 22021 2002 0 Caldwell +SBC 22023 2002 0 Cameron +SBC 22025 2002 0 Catahoula +SBC 22027 2002 0 Claiborn +SBC 22029 2002 0 Concordia +SBC 22031 2002 0 De Soto +SBC 22033 2002 0 E. Baton Rouge +SBC 22035 2002 0 E. Carroll +SBC 22037 2002 0 E. Feliciana +SBC 22039 2002 0 Evangeline +SBC 22041 2002 0 Franklin +SBC 22043 2002 0 Grant +SBC 22045 2002 0 Iberia +SBC 22047 2002 0 Iberville +SBC 22049 2002 0 Jackson +SBC 22051 2002 0 Jefferson +SBC 22053 2002 0 Jefferson Davis +SBC 22055 2002 0 Lafayette +SBC 22057 2002 0 Lafourche +SBC 22059 2002 0 La Salle +SBC 22061 2002 0 Lincoln +SBC 22063 2002 0 Livingston +SBC 22065 2002 0 Madison +SBC 22067 2002 0 Morehouse +SBC 22069 2002 0 Natchitoches +SBC 22071 2002 0 Orleans +SBC 22073 2002 0 Ouachita +SBC 22075 2002 0 Plaquemines +SBC 22077 2002 0 Pointe Coupee +SBC 22079 2002 0 Rapides +SBC 22081 2002 0 Red River +SBC 22083 2002 0 Richland +SBC 22085 2002 0 Sabine +SBC 22087 2002 0 St. Bernard +SBC 22089 2002 0 St. Charles +SBC 22091 2002 0 St. Helena +SBC 22093 2002 0 St. James +SBC 22095 2002 0 St. John the Baptist +SBC 22097 2002 0 St. Landry +SBC 22099 2002 0 St. Martin +SBC 22101 2002 0 St. Mary +SBC 22103 2002 0 St. Tammany +SBC 22105 2002 0 Tangipahoa +SBC 22107 2002 0 Tensas +SBC 22109 2002 0 Terrebonne +SBC 22111 2002 0 Union +SBC 22113 2002 0 Vermilion +SBC 22115 2002 0 Vernon +SBC 22117 2002 0 Washington +SBC 22119 2002 0 Webster +SBC 22121 2002 0 W. Baton Rouge +SBC 22123 2002 0 W. Carroll +SBC 22125 2002 0 W. Feliciana +SBC 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_SBR.ALO new file mode 100644 index 0000000..42f8f99 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_SBR.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 22000 2002 0 LA +SBR 22001 2002 0 Acadia +SBR 22003 2002 0 Allen +SBR 22005 2002 0 Ascension +SBR 22007 2002 0 Assumption +SBR 22009 2002 0 Avoyelles +SBR 22011 2002 0 Beauregard +SBR 22013 2002 0 Bienville +SBR 22015 2002 0 Bossier +SBR 22017 2002 0 Caddo +SBR 22019 2002 0 Calcasieu +SBR 22021 2002 0 Caldwell +SBR 22023 2002 0 Cameron +SBR 22025 2002 0 Catahoula +SBR 22027 2002 0 Claiborn +SBR 22029 2002 0 Concordia +SBR 22031 2002 0 De Soto +SBR 22033 2002 0 E. Baton Rouge +SBR 22035 2002 0 E. Carroll +SBR 22037 2002 0 E. Feliciana +SBR 22039 2002 0 Evangeline +SBR 22041 2002 0 Franklin +SBR 22043 2002 0 Grant +SBR 22045 2002 0 Iberia +SBR 22047 2002 0 Iberville +SBR 22049 2002 0 Jackson +SBR 22051 2002 0 Jefferson +SBR 22053 2002 0 Jefferson Davis +SBR 22055 2002 0 Lafayette +SBR 22057 2002 0 Lafourche +SBR 22059 2002 0 La Salle +SBR 22061 2002 0 Lincoln +SBR 22063 2002 0 Livingston +SBR 22065 2002 0 Madison +SBR 22067 2002 0 Morehouse +SBR 22069 2002 0 Natchitoches +SBR 22071 2002 0 Orleans +SBR 22073 2002 0 Ouachita +SBR 22075 2002 0 Plaquemines +SBR 22077 2002 0 Pointe Coupee +SBR 22079 2002 0 Rapides +SBR 22081 2002 0 Red River +SBR 22083 2002 0 Richland +SBR 22085 2002 0 Sabine +SBR 22087 2002 0 St. Bernard +SBR 22089 2002 0 St. Charles +SBR 22091 2002 0 St. Helena +SBR 22093 2002 0 St. James +SBR 22095 2002 0 St. John the Baptist +SBR 22097 2002 0 St. Landry +SBR 22099 2002 0 St. Martin +SBR 22101 2002 0 St. Mary +SBR 22103 2002 0 St. Tammany +SBR 22105 2002 0 Tangipahoa +SBR 22107 2002 0 Tensas +SBR 22109 2002 0 Terrebonne +SBR 22111 2002 0 Union +SBR 22113 2002 0 Vermilion +SBR 22115 2002 0 Vernon +SBR 22117 2002 0 Washington +SBR 22119 2002 0 Webster +SBR 22121 2002 0 W. Baton Rouge +SBR 22123 2002 0 W. Carroll +SBR 22125 2002 0 W. Feliciana +SBR 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_SNOWM.ALO new file mode 100644 index 0000000..49b5f10 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_SNOWM.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 22000 2002 0 LA +SNM 22001 2002 0 Acadia +SNM 22003 2002 0 Allen +SNM 22005 2002 0 Ascension +SNM 22007 2002 0 Assumption +SNM 22009 2002 0 Avoyelles +SNM 22011 2002 0 Beauregard +SNM 22013 2002 0 Bienville +SNM 22015 2002 0 Bossier +SNM 22017 2002 0 Caddo +SNM 22019 2002 0 Calcasieu +SNM 22021 2002 0 Caldwell +SNM 22023 2002 0 Cameron +SNM 22025 2002 0 Catahoula +SNM 22027 2002 0 Claiborn +SNM 22029 2002 0 Concordia +SNM 22031 2002 0 De Soto +SNM 22033 2002 0 E. Baton Rouge +SNM 22035 2002 0 E. Carroll +SNM 22037 2002 0 E. Feliciana +SNM 22039 2002 0 Evangeline +SNM 22041 2002 0 Franklin +SNM 22043 2002 0 Grant +SNM 22045 2002 0 Iberia +SNM 22047 2002 0 Iberville +SNM 22049 2002 0 Jackson +SNM 22051 2002 0 Jefferson +SNM 22053 2002 0 Jefferson Davis +SNM 22055 2002 0 Lafayette +SNM 22057 2002 0 Lafourche +SNM 22059 2002 0 La Salle +SNM 22061 2002 0 Lincoln +SNM 22063 2002 0 Livingston +SNM 22065 2002 0 Madison +SNM 22067 2002 0 Morehouse +SNM 22069 2002 0 Natchitoches +SNM 22071 2002 0 Orleans +SNM 22073 2002 0 Ouachita +SNM 22075 2002 0 Plaquemines +SNM 22077 2002 0 Pointe Coupee +SNM 22079 2002 0 Rapides +SNM 22081 2002 0 Red River +SNM 22083 2002 0 Richland +SNM 22085 2002 0 Sabine +SNM 22087 2002 0 St. Bernard +SNM 22089 2002 0 St. Charles +SNM 22091 2002 0 St. Helena +SNM 22093 2002 0 St. James +SNM 22095 2002 0 St. John the Baptist +SNM 22097 2002 0 St. Landry +SNM 22099 2002 0 St. Martin +SNM 22101 2002 0 St. Mary +SNM 22103 2002 0 St. Tammany +SNM 22105 2002 0 Tangipahoa +SNM 22107 2002 0 Tensas +SNM 22109 2002 0 Terrebonne +SNM 22111 2002 0 Union +SNM 22113 2002 0 Vermilion +SNM 22115 2002 0 Vernon +SNM 22117 2002 0 Washington +SNM 22119 2002 0 Webster +SNM 22121 2002 0 W. Baton Rouge +SNM 22123 2002 0 W. Carroll +SNM 22125 2002 0 W. Feliciana +SNM 22127 2002 0 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_WIB.ALO new file mode 100644 index 0000000..03685ea --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_WIB.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 22000 1990 16953 LA +WIB 22001 1990 6 Acadia +WIB 22003 1990 3 Allen +WIB 22005 1990 29 Ascension +WIB 22007 1990 67 Assumption +WIB 22009 1990 86 Avoyelles +WIB 22011 1990 15 Beauregard +WIB 22013 1990 29 Bienville +WIB 22015 1990 74 Bossier +WIB 22017 1990 142 Caddo +WIB 22019 1990 60 Calcasieu +WIB 22021 1990 29 Caldwell +WIB 22023 1990 1386 Cameron +WIB 22025 1990 93 Catahoula +WIB 22027 1990 33 Claiborn +WIB 22029 1990 136 Concordia +WIB 22031 1990 45 De Soto +WIB 22033 1990 39 E. Baton Rouge +WIB 22035 1990 54 E. Carroll +WIB 22037 1990 6 E. Feliciana +WIB 22039 1990 40 Evangeline +WIB 22041 1990 31 Franklin +WIB 22043 1990 50 Grant +WIB 22045 1990 671 Iberia +WIB 22047 1990 89 Iberville +WIB 22049 1990 27 Jackson +WIB 22051 1990 949 Jefferson +WIB 22053 1990 16 Jefferson Davis +WIB 22055 1990 1 Lafayette +WIB 22057 1990 888 Lafourche +WIB 22059 1990 100 La Salle +WIB 22061 1990 2 Lincoln +WIB 22063 1990 142 Livingston +WIB 22065 1990 69 Madison +WIB 22067 1990 28 Morehouse +WIB 22069 1990 111 Natchitoches +WIB 22071 1990 446 Orleans +WIB 22073 1990 56 Ouachita +WIB 22075 1990 3091 Plaquemines +WIB 22077 1990 86 Pointe Coupee +WIB 22079 1990 102 Rapides +WIB 22081 1990 35 Red River +WIB 22083 1990 16 Richland +WIB 22085 1990 379 Sabine +WIB 22087 1990 1840 St. Bernard +WIB 22089 1990 328 St. Charles +WIB 22091 1990 3 St. Helena +WIB 22093 1990 30 St. James +WIB 22095 1990 334 St. John the Baptist +WIB 22097 1990 26 St. Landry +WIB 22099 1990 198 St. Martin +WIB 22101 1990 834 St. Mary +WIB 22103 1990 693 St. Tammany +WIB 22105 1990 85 Tangipahoa +WIB 22107 1990 100 Tensas +WIB 22109 1990 1762 Terrebonne +WIB 22111 1990 72 Union +WIB 22113 1990 687 Vermilion +WIB 22115 1990 34 Vernon +WIB 22117 1990 17 Washington +WIB 22119 1990 50 Webster +WIB 22121 1990 32 W. Baton Rouge +WIB 22123 1990 2 W. Carroll +WIB 22125 1990 52 W. Feliciana +WIB 22127 1990 17 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/LA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/LA_WOB.ALO new file mode 100644 index 0000000..01f60ad --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/LA_WOB.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 22000 1990 11531 LA +WOB 22001 1990 6 Acadia +WOB 22003 1990 3 Allen +WOB 22005 1990 29 Ascension +WOB 22007 1990 67 Assumption +WOB 22009 1990 86 Avoyelles +WOB 22011 1990 15 Beauregard +WOB 22013 1990 29 Bienville +WOB 22015 1990 74 Bossier +WOB 22017 1990 142 Caddo +WOB 22019 1990 60 Calcasieu +WOB 22021 1990 29 Caldwell +WOB 22023 1990 941 Cameron +WOB 22025 1990 93 Catahoula +WOB 22027 1990 33 Claiborn +WOB 22029 1990 136 Concordia +WOB 22031 1990 45 De Soto +WOB 22033 1990 39 E. Baton Rouge +WOB 22035 1990 54 E. Carroll +WOB 22037 1990 6 E. Feliciana +WOB 22039 1990 40 Evangeline +WOB 22041 1990 31 Franklin +WOB 22043 1990 50 Grant +WOB 22045 1990 211 Iberia +WOB 22047 1990 89 Iberville +WOB 22049 1990 27 Jackson +WOB 22051 1990 777 Jefferson +WOB 22053 1990 16 Jefferson Davis +WOB 22055 1990 1 Lafayette +WOB 22057 1990 587 Lafourche +WOB 22059 1990 100 La Salle +WOB 22061 1990 2 Lincoln +WOB 22063 1990 142 Livingston +WOB 22065 1990 69 Madison +WOB 22067 1990 28 Morehouse +WOB 22069 1990 111 Natchitoches +WOB 22071 1990 440 Orleans +WOB 22073 1990 56 Ouachita +WOB 22075 1990 1687 Plaquemines +WOB 22077 1990 86 Pointe Coupee +WOB 22079 1990 102 Rapides +WOB 22081 1990 35 Red River +WOB 22083 1990 16 Richland +WOB 22085 1990 379 Sabine +WOB 22087 1990 846 St. Bernard +WOB 22089 1990 328 St. Charles +WOB 22091 1990 3 St. Helena +WOB 22093 1990 30 St. James +WOB 22095 1990 334 St. John the Baptist +WOB 22097 1990 26 St. Landry +WOB 22099 1990 198 St. Martin +WOB 22101 1990 303 St. Mary +WOB 22103 1990 675 St. Tammany +WOB 22105 1990 85 Tangipahoa +WOB 22107 1990 100 Tensas +WOB 22109 1990 968 Terrebonne +WOB 22111 1990 72 Union +WOB 22113 1990 390 Vermilion +WOB 22115 1990 34 Vernon +WOB 22117 1990 17 Washington +WOB 22119 1990 50 Webster +WOB 22121 1990 32 W. Baton Rouge +WOB 22123 1990 2 W. Carroll +WOB 22125 1990 52 W. Feliciana +WOB 22127 1990 17 Winn +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_AIRTR.ALO new file mode 100644 index 0000000..9516b7f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_AIRTR.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 25000 2002 1536.288 MA +AIR 25001 2002 29.010 Barnstable +AIR 25003 2002 0.280 Berkshire +AIR 25005 2002 0.173 Bristol +AIR 25007 2002 1.365 Dukes +AIR 25009 2002 0.386 Essex +AIR 25011 2002 0.290 Franklin +AIR 25013 2002 0.500 Hampden +AIR 25015 2002 0.220 Hampshire +AIR 25017 2002 0.140 Middlesex +AIR 25019 2002 4.790 Nantucket +AIR 25021 2002 0.475 Norfolk +AIR 25023 2002 2.460 Plymouth +AIR 25025 2002 1494.370 Suffolk +AIR 25027 2002 1.830 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_COAL.ALO new file mode 100644 index 0000000..a181557 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_COAL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 25000 2002 0 MA +MIN 25001 2002 0 Barnstable +MIN 25003 2002 0 Berkshire +MIN 25005 2002 0 Bristol +MIN 25007 2002 0 Dukes +MIN 25009 2002 0 Essex +MIN 25011 2002 0 Franklin +MIN 25013 2002 0 Hampden +MIN 25015 2002 0 Hampshire +MIN 25017 2002 0 Middlesex +MIN 25019 2002 0 Nantucket +MIN 25021 2002 0 Norfolk +MIN 25023 2002 0 Plymouth +MIN 25025 2002 0 Suffolk +MIN 25027 2002 0 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_CONST.ALO new file mode 100644 index 0000000..dbba848 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_CONST.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 25000 2003 8362815 MA +CON 25001 2003 416874 Barnstable +CON 25003 2003 183136 Berkshire +CON 25005 2003 617856 Bristol +CON 25007 2003 50008 Dukes +CON 25009 2003 728701 Essex +CON 25011 2003 105630 Franklin +CON 25013 2003 354375 Hampden +CON 25015 2003 185736 Hampshire +CON 25017 2003 1738332 Middlesex +CON 25019 2003 86723 Nantucket +CON 25021 2003 769640 Norfolk +CON 25023 2003 729400 Plymouth +CON 25025 2003 1058210 Suffolk +CON 25027 2003 1338193 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_FARMS.ALO new file mode 100644 index 0000000..4584198 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_FARMS.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 25000 2002 159253 MA +FRM 25001 2002 2224 Barnstable +FRM 25003 2002 18935 Berkshire +FRM 25005 2002 11981 Bristol +FRM 25007 2002 530 Dukes +FRM 25009 2002 8903 Essex +FRM 25011 2002 19255 Franklin +FRM 25013 2002 10961 Hampden +FRM 25015 2002 19819 Hampshire +FRM 25017 2002 11707 Middlesex +FRM 25019 2002 100 Nantucket +FRM 25021 2002 2403 Norfolk +FRM 25023 2002 18304 Plymouth +FRM 25025 2002 100 Suffolk +FRM 25027 2002 34031 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_GOLF.ALO new file mode 100644 index 0000000..cf4b53f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_GOLF.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 25000 2002 326 MA +GC 25001 2002 22 Barnstable +GC 25003 2002 15 Berkshire +GC 25005 2002 37 Bristol +GC 25007 2002 4 Dukes +GC 25009 2002 37 Essex +GC 25011 2002 6 Franklin +GC 25013 2002 21 Hampden +GC 25015 2002 14 Hampshire +GC 25017 2002 56 Middlesex +GC 25019 2002 5 Nantucket +GC 25021 2002 28 Norfolk +GC 25023 2002 33 Plymouth +GC 25025 2002 9 Suffolk +GC 25027 2002 39 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_HOLSL.ALO new file mode 100644 index 0000000..3543cf4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_HOLSL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 25000 2002 9439 MA +COM 25001 2002 253 Barnstable +COM 25003 2002 135 Berkshire +COM 25005 2002 658 Bristol +COM 25007 2002 24 Dukes +COM 25009 2002 1007 Essex +COM 25011 2002 81 Franklin +COM 25013 2002 525 Hampden +COM 25015 2002 126 Hampshire +COM 25017 2002 2706 Middlesex +COM 25019 2002 12 Nantucket +COM 25021 2002 1356 Norfolk +COM 25023 2002 722 Plymouth +COM 25025 2002 824 Suffolk +COM 25027 2002 1010 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_HOUSE.ALO new file mode 100644 index 0000000..ecddea1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_HOUSE.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 25000 2002 2648992 MA +HOU 25001 2002 150163 Barnstable +HOU 25003 2002 66631 Berkshire +HOU 25005 2002 219484 Bristol +HOU 25007 2002 15198 Dukes +HOU 25009 2002 290086 Essex +HOU 25011 2002 32236 Franklin +HOU 25013 2002 186860 Hampden +HOU 25015 2002 59274 Hampshire +HOU 25017 2002 581090 Middlesex +HOU 25019 2002 9636 Nantucket +HOU 25021 2002 257917 Norfolk +HOU 25023 2002 184764 Plymouth +HOU 25025 2002 292465 Suffolk +HOU 25027 2002 303188 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_LOGGN.ALO new file mode 100644 index 0000000..60c1106 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_LOGGN.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 25000 2002 117454672 MA +LOG 25001 2002 3060 Barnstable +LOG 25003 2002 23481801 Berkshire +LOG 25005 2002 2622762 Bristol +LOG 25007 2002 50915 Dukes +LOG 25009 2002 3810458 Essex +LOG 25011 2002 18117460 Franklin +LOG 25013 2002 10380457 Hampden +LOG 25015 2002 16168360 Hampshire +LOG 25017 2002 7613458 Middlesex +LOG 25019 2002 0 Nantucket +LOG 25021 2002 1956678 Norfolk +LOG 25023 2002 8738197 Plymouth +LOG 25025 2002 0 Suffolk +LOG 25027 2002 24511066 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_LSCAP.ALO new file mode 100644 index 0000000..2d1e31f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_LSCAP.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 25000 2002 7824 MA +LSC 25001 2002 988 Barnstable +LSC 25003 2002 139 Berkshire +LSC 25005 2002 313 Bristol +LSC 25007 2002 139 Dukes +LSC 25009 2002 916 Essex +LSC 25011 2002 88 Franklin +LSC 25013 2002 360 Hampden +LSC 25015 2002 139 Hampshire +LSC 25017 2002 2037 Middlesex +LSC 25019 2002 139 Nantucket +LSC 25021 2002 819 Norfolk +LSC 25023 2002 776 Plymouth +LSC 25025 2002 210 Suffolk +LSC 25027 2002 761 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_MNFG.ALO new file mode 100644 index 0000000..3e5d4d6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_MNFG.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 25000 2002 640012 MA +MFG 25001 2002 4611 Barnstable +MFG 25003 2002 14698 Berkshire +MFG 25005 2002 66841 Bristol +MFG 25007 2002 201 Dukes +MFG 25009 2002 104158 Essex +MFG 25011 2002 17579 Franklin +MFG 25013 2002 55183 Hampden +MFG 25015 2002 9117 Hampshire +MFG 25017 2002 165086 Middlesex +MFG 25019 2002 171 Nantucket +MFG 25021 2002 54275 Norfolk +MFG 25023 2002 24281 Plymouth +MFG 25025 2002 35381 Suffolk +MFG 25027 2002 88430 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_OIL.ALO new file mode 100644 index 0000000..bf2cbe2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_OIL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 25000 2002 20 MA +OIL 25001 2002 2 Barnstable +OIL 25003 2002 2 Berkshire +OIL 25005 2002 0 Bristol +OIL 25007 2002 0 Dukes +OIL 25009 2002 0 Essex +OIL 25011 2002 0 Franklin +OIL 25013 2002 0 Hampden +OIL 25015 2002 0 Hampshire +OIL 25017 2002 1 Middlesex +OIL 25019 2002 0 Nantucket +OIL 25021 2002 1 Norfolk +OIL 25023 2002 0 Plymouth +OIL 25025 2002 0 Suffolk +OIL 25027 2002 14 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_POP.ALO new file mode 100644 index 0000000..be57f34 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_POP.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 25000 2002 6412554 MA +POP 25001 2002 227613 Barnstable +POP 25003 2002 133314 Berkshire +POP 25005 2002 543863 Bristol +POP 25007 2002 15417 Dukes +POP 25009 2002 736535 Essex +POP 25011 2002 71947 Franklin +POP 25013 2002 459627 Hampden +POP 25015 2002 152618 Hampshire +POP 25017 2002 1468682 Middlesex +POP 25019 2002 9879 Nantucket +POP 25021 2002 653710 Norfolk +POP 25023 2002 484614 Plymouth +POP 25025 2002 685183 Suffolk +POP 25027 2002 769552 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_RAIL.ALO new file mode 100644 index 0000000..3a178e3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_RAIL.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 25000 2002 2130.150 MA +RR 25001 2002 0.000 Barnstable +RR 25003 2002 217.530 Berkshire +RR 25005 2002 45.580 Bristol +RR 25007 2002 0.000 Dukes +RR 25009 2002 0.000 Essex +RR 25011 2002 0.000 Franklin +RR 25013 2002 529.240 Hampden +RR 25015 2002 216.660 Hampshire +RR 25017 2002 290.120 Middlesex +RR 25019 2002 0.000 Nantucket +RR 25021 2002 203.530 Norfolk +RR 25023 2002 21.240 Plymouth +RR 25025 2002 98.100 Suffolk +RR 25027 2002 508.150 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_RVPRK.ALO new file mode 100644 index 0000000..85e8aed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_RVPRK.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 25000 2002 134 MA +RVP 25001 2002 23 Barnstable +RVP 25003 2002 21 Berkshire +RVP 25005 2002 3 Bristol +RVP 25007 2002 3 Dukes +RVP 25009 2002 9 Essex +RVP 25011 2002 3 Franklin +RVP 25013 2002 10 Hampden +RVP 25015 2002 2 Hampshire +RVP 25017 2002 14 Middlesex +RVP 25019 2002 1 Nantucket +RVP 25021 2002 12 Norfolk +RVP 25023 2002 19 Plymouth +RVP 25025 2002 2 Suffolk +RVP 25027 2002 12 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_SBC.ALO new file mode 100644 index 0000000..b7881d3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_SBC.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 25000 2002 7824 MA +SBC 25001 2002 988 Barnstable +SBC 25003 2002 238 Berkshire +SBC 25005 2002 313 Bristol +SBC 25007 2002 28 Dukes +SBC 25009 2002 916 Essex +SBC 25011 2002 88 Franklin +SBC 25013 2002 360 Hampden +SBC 25015 2002 272 Hampshire +SBC 25017 2002 2037 Middlesex +SBC 25019 2002 18 Nantucket +SBC 25021 2002 819 Norfolk +SBC 25023 2002 776 Plymouth +SBC 25025 2002 210 Suffolk +SBC 25027 2002 761 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_SBR.ALO new file mode 100644 index 0000000..4616dba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_SBR.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 25000 2002 2648992 MA +SBR 25001 2002 150163 Barnstable +SBR 25003 2002 66631 Berkshire +SBR 25005 2002 219484 Bristol +SBR 25007 2002 15198 Dukes +SBR 25009 2002 290086 Essex +SBR 25011 2002 32236 Franklin +SBR 25013 2002 186860 Hampden +SBR 25015 2002 59274 Hampshire +SBR 25017 2002 581090 Middlesex +SBR 25019 2002 9636 Nantucket +SBR 25021 2002 257917 Norfolk +SBR 25023 2002 184764 Plymouth +SBR 25025 2002 292465 Suffolk +SBR 25027 2002 303188 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_SNOWM.ALO new file mode 100644 index 0000000..e306981 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_SNOWM.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 25000 2002 22 MA +SNM 25001 2002 0 Barnstable +SNM 25003 2002 8 Berkshire +SNM 25005 2002 0 Bristol +SNM 25007 2002 0 Dukes +SNM 25009 2002 0 Essex +SNM 25011 2002 14 Franklin +SNM 25013 2002 0 Hampden +SNM 25015 2002 0 Hampshire +SNM 25017 2002 0 Middlesex +SNM 25019 2002 0 Nantucket +SNM 25021 2002 0 Norfolk +SNM 25023 2002 0 Plymouth +SNM 25025 2002 0 Suffolk +SNM 25027 2002 0 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_WIB.ALO new file mode 100644 index 0000000..bbc900b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_WIB.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 25000 1990 4169 MA +WIB 25001 1990 1276 Barnstable +WIB 25003 1990 39 Berkshire +WIB 25005 1990 251 Bristol +WIB 25007 1990 523 Dukes +WIB 25009 1990 498 Essex +WIB 25011 1990 59 Franklin +WIB 25013 1990 41 Hampden +WIB 25015 1990 43 Hampshire +WIB 25017 1990 62 Middlesex +WIB 25019 1990 336 Nantucket +WIB 25021 1990 92 Norfolk +WIB 25023 1990 651 Plymouth +WIB 25025 1990 127 Suffolk +WIB 25027 1990 171 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MA_WOB.ALO new file mode 100644 index 0000000..8f5fc73 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MA_WOB.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 25000 1990 1482 MA +WOB 25001 1990 296 Barnstable +WOB 25003 1990 39 Berkshire +WOB 25005 1990 118 Bristol +WOB 25007 1990 106 Dukes +WOB 25009 1990 149 Essex +WOB 25011 1990 59 Franklin +WOB 25013 1990 41 Hampden +WOB 25015 1990 43 Hampshire +WOB 25017 1990 62 Middlesex +WOB 25019 1990 66 Nantucket +WOB 25021 1990 65 Norfolk +WOB 25023 1990 204 Plymouth +WOB 25025 1990 63 Suffolk +WOB 25027 1990 171 Worcester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_AIRTR.ALO new file mode 100644 index 0000000..ebfa21f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_AIRTR.ALO @@ -0,0 +1,51 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 24000 2002 1203.205 MD +AIR 24001 2002 0.000 Allegany +AIR 24003 2002 1169.880 Anne Arundel +AIR 24005 2002 0.840 Baltimore +AIR 24009 2002 0.000 Calvert +AIR 24011 2002 0.000 Caroline +AIR 24013 2002 0.317 Carroll +AIR 24015 2002 0.000 Cecil +AIR 24017 2002 0.000 Charles +AIR 24019 2002 0.027 Dorchester +AIR 24021 2002 0.340 Frederick +AIR 24023 2002 0.020 Garrett +AIR 24025 2002 0.000 Harford +AIR 24027 2002 0.000 Howard +AIR 24029 2002 0.000 Kent +AIR 24031 2002 0.700 Montgomery +AIR 24033 2002 0.046 Prince George's +AIR 24035 2002 0.074 Queen Anne's +AIR 24037 2002 0.161 St. Mary's +AIR 24039 2002 0.000 Somerset +AIR 24041 2002 1.000 Talbot +AIR 24043 2002 5.840 Washington +AIR 24045 2002 23.960 Wicomico +AIR 24047 2002 0.000 Worcester +AIR 24510 2002 0.000 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_COAL.ALO new file mode 100644 index 0000000..631a7cb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_COAL.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 24000 2002 3328 MD +MIN 24001 2002 7 Allegany +MIN 24003 2002 0 Anne Arundel +MIN 24005 2002 0 Baltimore +MIN 24009 2002 0 Calvert +MIN 24011 2002 0 Caroline +MIN 24013 2002 0 Carroll +MIN 24015 2002 0 Cecil +MIN 24017 2002 0 Charles +MIN 24019 2002 0 Dorchester +MIN 24021 2002 0 Frederick +MIN 24023 2002 3321 Garrett +MIN 24025 2002 0 Harford +MIN 24027 2002 0 Howard +MIN 24029 2002 0 Kent +MIN 24031 2002 0 Montgomery +MIN 24033 2002 0 Prince George's +MIN 24035 2002 0 Queen Anne's +MIN 24037 2002 0 St. Mary's +MIN 24039 2002 0 Somerset +MIN 24041 2002 0 Talbot +MIN 24043 2002 0 Washington +MIN 24045 2002 0 Wicomico +MIN 24047 2002 0 Worcester +MIN 24510 2002 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_CONST.ALO new file mode 100644 index 0000000..1b0da4f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_CONST.ALO @@ -0,0 +1,51 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 24000 2003 9412890 MD +CON 24001 2003 53159 Allegany +CON 24003 2003 882165 Anne Arundel +CON 24005 2003 2043372 Baltimore +CON 24009 2003 165824 Calvert +CON 24011 2003 30735 Caroline +CON 24013 2003 259240 Carroll +CON 24015 2003 227573 Cecil +CON 24017 2003 377945 Charles +CON 24019 2003 49333 Dorchester +CON 24021 2003 453569 Frederick +CON 24023 2003 106638 Garrett +CON 24025 2003 546239 Harford +CON 24027 2003 392082 Howard +CON 24029 2003 48997 Kent +CON 24031 2003 1276280 Montgomery +CON 24033 2003 1457552 Prince George's +CON 24035 2003 85234 Queen Anne's +CON 24037 2003 212761 St. Mary's +CON 24039 2003 23853 Somerset +CON 24041 2003 113142 Talbot +CON 24043 2003 282690 Washington +CON 24045 2003 154668 Wicomico +CON 24047 2003 169839 Worcester +CON 24510 2003 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_FARMS.ALO new file mode 100644 index 0000000..b5e616d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_FARMS.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 24000 2002 1282004 MD +FRM 24001 2002 10123 Allegany +FRM 24003 2002 18817 Anne Arundel +FRM 24005 2002 38495 Baltimore +FRM 24009 2002 13546 Calvert +FRM 24011 2002 88174 Caroline +FRM 24013 2002 99790 Carroll +FRM 24015 2002 48525 Cecil +FRM 24017 2002 22810 Charles +FRM 24019 2002 79571 Dorchester +FRM 24021 2002 121411 Frederick +FRM 24023 2002 37136 Garrett +FRM 24025 2002 45457 Harford +FRM 24027 2002 20621 Howard +FRM 24029 2002 87261 Kent +FRM 24031 2002 44161 Montgomery +FRM 24033 2002 17266 Prince George's +FRM 24035 2002 124465 Queen Anne's +FRM 24037 2002 34134 St. Mary's +FRM 24039 2002 34792 Somerset +FRM 24041 2002 80219 Talbot +FRM 24043 2002 73310 Washington +FRM 24045 2002 56311 Wicomico +FRM 24047 2002 85609 Worcester +FRM 24510 2002 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_GOLF.ALO new file mode 100644 index 0000000..454a23e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_GOLF.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 24000 2002 142 MD +GC 24001 2002 3 Allegany +GC 24003 2002 9 Anne Arundel +GC 24005 2002 19 Baltimore +GC 24009 2002 2 Calvert +GC 24011 2002 2 Caroline +GC 24013 2002 7 Carroll +GC 24015 2002 4 Cecil +GC 24017 2002 3 Charles +GC 24019 2002 2 Dorchester +GC 24021 2002 13 Frederick +GC 24023 2002 1 Garrett +GC 24025 2002 9 Harford +GC 24027 2002 7 Howard +GC 24029 2002 1 Kent +GC 24031 2002 23 Montgomery +GC 24033 2002 10 Prince George's +GC 24035 2002 2 Queen Anne's +GC 24037 2002 1 St. Mary's +GC 24039 2002 1 Somerset +GC 24041 2002 1 Talbot +GC 24043 2002 3 Washington +GC 24045 2002 4 Wicomico +GC 24047 2002 10 Worcester +GC 24510 2002 5 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_HOLSL.ALO new file mode 100644 index 0000000..3c112d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_HOLSL.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 24000 2002 6022 MD +COM 24001 2002 65 Allegany +COM 24003 2002 659 Anne Arundel +COM 24005 2002 1008 Baltimore +COM 24009 2002 37 Calvert +COM 24011 2002 26 Caroline +COM 24013 2002 166 Carroll +COM 24015 2002 64 Cecil +COM 24017 2002 76 Charles +COM 24019 2002 47 Dorchester +COM 24021 2002 234 Frederick +COM 24023 2002 35 Garrett +COM 24025 2002 225 Harford +COM 24027 2002 598 Howard +COM 24029 2002 31 Kent +COM 24031 2002 881 Montgomery +COM 24033 2002 673 Prince George's +COM 24035 2002 79 Queen Anne's +COM 24037 2002 36 St. Mary's +COM 24039 2002 15 Somerset +COM 24041 2002 67 Talbot +COM 24043 2002 151 Washington +COM 24045 2002 131 Wicomico +COM 24047 2002 82 Worcester +COM 24510 2002 636 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_HOUSE.ALO new file mode 100644 index 0000000..035ff7e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_HOUSE.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 24000 2002 2197126 MD +HOU 24001 2002 32660 Allegany +HOU 24003 2002 192435 Anne Arundel +HOU 24005 2002 318844 Baltimore +HOU 24009 2002 29429 Calvert +HOU 24011 2002 12266 Caroline +HOU 24013 2002 56853 Carroll +HOU 24015 2002 36073 Cecil +HOU 24017 2002 46612 Charles +HOU 24019 2002 14740 Dorchester +HOU 24021 2002 77912 Frederick +HOU 24023 2002 17121 Garrett +HOU 24025 2002 86697 Harford +HOU 24027 2002 96635 Howard +HOU 24029 2002 10014 Kent +HOU 24031 2002 345102 Montgomery +HOU 24033 2002 308929 Prince George's +HOU 24035 2002 17543 Queen Anne's +HOU 24037 2002 35840 St. Mary's +HOU 24039 2002 10055 Somerset +HOU 24041 2002 17077 Talbot +HOU 24043 2002 54264 Washington +HOU 24045 2002 35612 Wicomico +HOU 24047 2002 48147 Worcester +HOU 24510 2002 296266 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_LOGGN.ALO new file mode 100644 index 0000000..2df2e7c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_LOGGN.ALO @@ -0,0 +1,51 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 24000 2002 121798484 MD +LOG 24001 2002 7130771 Allegany +LOG 24003 2002 6524387 Anne Arundel +LOG 24005 2002 3632499 Baltimore +LOG 24009 2002 4250289 Calvert +LOG 24011 2002 2932237 Caroline +LOG 24013 2002 2735763 Carroll +LOG 24015 2002 278017 Cecil +LOG 24017 2002 10941120 Charles +LOG 24019 2002 9017703 Dorchester +LOG 24021 2002 1536410 Frederick +LOG 24023 2002 15620729 Garrett +LOG 24025 2002 4132548 Harford +LOG 24027 2002 1863978 Howard +LOG 24029 2002 1871698 Kent +LOG 24031 2002 1170178 Montgomery +LOG 24033 2002 4449230 Prince George's +LOG 24035 2002 3046152 Queen Anne's +LOG 24037 2002 6265107 St. Mary's +LOG 24039 2002 5532935 Somerset +LOG 24041 2002 3367193 Talbot +LOG 24043 2002 1416522 Washington +LOG 24045 2002 13073525 Wicomico +LOG 24047 2002 11009495 Worcester +LOG 24510 2002 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_LSCAP.ALO new file mode 100644 index 0000000..1e9abef --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_LSCAP.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 24000 2002 11462 MD +LSC 24001 2002 25 Allegany +LSC 24003 2002 1198 Anne Arundel +LSC 24005 2002 1440 Baltimore +LSC 24009 2002 86 Calvert +LSC 24011 2002 27 Caroline +LSC 24013 2002 454 Carroll +LSC 24015 2002 59 Cecil +LSC 24017 2002 124 Charles +LSC 24019 2002 160 Dorchester +LSC 24021 2002 754 Frederick +LSC 24023 2002 161 Garrett +LSC 24025 2002 331 Harford +LSC 24027 2002 974 Howard +LSC 24029 2002 79 Kent +LSC 24031 2002 2978 Montgomery +LSC 24033 2002 1455 Prince George's +LSC 24035 2002 95 Queen Anne's +LSC 24037 2002 73 St. Mary's +LSC 24039 2002 161 Somerset +LSC 24041 2002 158 Talbot +LSC 24043 2002 226 Washington +LSC 24045 2002 102 Wicomico +LSC 24047 2002 161 Worcester +LSC 24510 2002 181 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_MNFG.ALO new file mode 100644 index 0000000..f8a0056 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_MNFG.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 24000 2002 280543 MD +MFG 24001 2002 6564 Allegany +MFG 24003 2002 27813 Anne Arundel +MFG 24005 2002 50900 Baltimore +MFG 24009 2002 1362 Calvert +MFG 24011 2002 3300 Caroline +MFG 24013 2002 7094 Carroll +MFG 24015 2002 6470 Cecil +MFG 24017 2002 2249 Charles +MFG 24019 2002 4611 Dorchester +MFG 24021 2002 17166 Frederick +MFG 24023 2002 1687 Garrett +MFG 24025 2002 11456 Harford +MFG 24027 2002 15559 Howard +MFG 24029 2002 1753 Kent +MFG 24031 2002 28799 Montgomery +MFG 24033 2002 21145 Prince George's +MFG 24035 2002 1732 Queen Anne's +MFG 24037 2002 933 St. Mary's +MFG 24039 2002 635 Somerset +MFG 24041 2002 4462 Talbot +MFG 24043 2002 16020 Washington +MFG 24045 2002 8096 Wicomico +MFG 24047 2002 2118 Worcester +MFG 24510 2002 38619 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_OIL.ALO new file mode 100644 index 0000000..82581cc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_OIL.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 24000 2002 57 MD +OIL 24001 2002 0 Allegany +OIL 24003 2002 0 Anne Arundel +OIL 24005 2002 11 Baltimore +OIL 24009 2002 0 Calvert +OIL 24011 2002 0 Caroline +OIL 24013 2002 11 Carroll +OIL 24015 2002 0 Cecil +OIL 24017 2002 0 Charles +OIL 24019 2002 0 Dorchester +OIL 24021 2002 0 Frederick +OIL 24023 2002 0 Garrett +OIL 24025 2002 5 Harford +OIL 24027 2002 4 Howard +OIL 24029 2002 11 Kent +OIL 24031 2002 0 Montgomery +OIL 24033 2002 0 Prince George's +OIL 24035 2002 0 Queen Anne's +OIL 24037 2002 0 St. Mary's +OIL 24039 2002 0 Somerset +OIL 24041 2002 0 Talbot +OIL 24043 2002 4 Washington +OIL 24045 2002 0 Wicomico +OIL 24047 2002 0 Worcester +OIL 24510 2002 11 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_POP.ALO new file mode 100644 index 0000000..4558722 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_POP.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 24000 2002 5441531 MD +POP 24001 2002 73999 Allegany +POP 24003 2002 502081 Anne Arundel +POP 24005 2002 768623 Baltimore +POP 24009 2002 80905 Calvert +POP 24011 2002 30347 Caroline +POP 24013 2002 159323 Carroll +POP 24015 2002 90366 Cecil +POP 24017 2002 128215 Charles +POP 24019 2002 30494 Dorchester +POP 24021 2002 209103 Frederick +POP 24023 2002 29915 Garrett +POP 24025 2002 227361 Harford +POP 24027 2002 259901 Howard +POP 24029 2002 19426 Kent +POP 24031 2002 905995 Montgomery +POP 24033 2002 827704 Prince George's +POP 24035 2002 42876 Queen Anne's +POP 24037 2002 89951 St. Mary's +POP 24039 2002 25465 Somerset +POP 24041 2002 34367 Talbot +POP 24043 2002 134787 Washington +POP 24045 2002 86162 Wicomico +POP 24047 2002 48024 Worcester +POP 24510 2002 636141 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_RAIL.ALO new file mode 100644 index 0000000..bffc271 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_RAIL.ALO @@ -0,0 +1,51 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 24000 2002 6849.870 MD +RR 24001 2002 374.130 Allegany +RR 24003 2002 463.960 Anne Arundel +RR 24005 2002 895.880 Baltimore +RR 24009 2002 0.000 Calvert +RR 24011 2002 0.000 Caroline +RR 24013 2002 256.870 Carroll +RR 24015 2002 465.090 Cecil +RR 24017 2002 10.630 Charles +RR 24019 2002 0.000 Dorchester +RR 24021 2002 1080.580 Frederick +RR 24023 2002 58.260 Garrett +RR 24025 2002 468.910 Harford +RR 24027 2002 588.830 Howard +RR 24029 2002 0.000 Kent +RR 24031 2002 703.570 Montgomery +RR 24033 2002 460.390 Prince George's +RR 24035 2002 0.000 Queen Anne's +RR 24037 2002 0.000 St. Mary's +RR 24039 2002 5.410 Somerset +RR 24041 2002 0.000 Talbot +RR 24043 2002 543.840 Washington +RR 24045 2002 11.720 Wicomico +RR 24047 2002 5.410 Worcester +RR 24510 2002 456.390 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_RVPRK.ALO new file mode 100644 index 0000000..8fa1ba7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_RVPRK.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 24000 2002 68 MD +RVP 24001 2002 3 Allegany +RVP 24003 2002 6 Anne Arundel +RVP 24005 2002 3 Baltimore +RVP 24009 2002 0 Calvert +RVP 24011 2002 3 Caroline +RVP 24013 2002 3 Carroll +RVP 24015 2002 8 Cecil +RVP 24017 2002 3 Charles +RVP 24019 2002 1 Dorchester +RVP 24021 2002 3 Frederick +RVP 24023 2002 3 Garrett +RVP 24025 2002 5 Harford +RVP 24027 2002 1 Howard +RVP 24029 2002 3 Kent +RVP 24031 2002 6 Montgomery +RVP 24033 2002 3 Prince George's +RVP 24035 2002 2 Queen Anne's +RVP 24037 2002 2 St. Mary's +RVP 24039 2002 0 Somerset +RVP 24041 2002 0 Talbot +RVP 24043 2002 3 Washington +RVP 24045 2002 3 Wicomico +RVP 24047 2002 4 Worcester +RVP 24510 2002 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_SBC.ALO new file mode 100644 index 0000000..979454d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_SBC.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 24000 2002 10559 MD +SBC 24001 2002 25 Allegany +SBC 24003 2002 1198 Anne Arundel +SBC 24005 2002 1440 Baltimore +SBC 24009 2002 86 Calvert +SBC 24011 2002 0 Caroline +SBC 24013 2002 454 Carroll +SBC 24015 2002 59 Cecil +SBC 24017 2002 124 Charles +SBC 24019 2002 0 Dorchester +SBC 24021 2002 754 Frederick +SBC 24023 2002 122 Garrett +SBC 24025 2002 331 Harford +SBC 24027 2002 974 Howard +SBC 24029 2002 79 Kent +SBC 24031 2002 2978 Montgomery +SBC 24033 2002 1455 Prince George's +SBC 24035 2002 0 Queen Anne's +SBC 24037 2002 73 St. Mary's +SBC 24039 2002 0 Somerset +SBC 24041 2002 0 Talbot +SBC 24043 2002 226 Washington +SBC 24045 2002 0 Wicomico +SBC 24047 2002 0 Worcester +SBC 24510 2002 181 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_SBR.ALO new file mode 100644 index 0000000..be405e6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_SBR.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 24000 2002 2041686 MD +SBR 24001 2002 32660 Allegany +SBR 24003 2002 192435 Anne Arundel +SBR 24005 2002 318844 Baltimore +SBR 24009 2002 29429 Calvert +SBR 24011 2002 0 Caroline +SBR 24013 2002 56853 Carroll +SBR 24015 2002 36073 Cecil +SBR 24017 2002 46612 Charles +SBR 24019 2002 0 Dorchester +SBR 24021 2002 77912 Frederick +SBR 24023 2002 17121 Garrett +SBR 24025 2002 86697 Harford +SBR 24027 2002 96635 Howard +SBR 24029 2002 10014 Kent +SBR 24031 2002 345102 Montgomery +SBR 24033 2002 308929 Prince George's +SBR 24035 2002 0 Queen Anne's +SBR 24037 2002 35840 St. Mary's +SBR 24039 2002 0 Somerset +SBR 24041 2002 0 Talbot +SBR 24043 2002 54264 Washington +SBR 24045 2002 0 Wicomico +SBR 24047 2002 0 Worcester +SBR 24510 2002 296266 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_SNOWM.ALO new file mode 100644 index 0000000..14dd3dc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_SNOWM.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 24000 2002 33 MD +SNM 24001 2002 0 Allegany +SNM 24003 2002 0 Anne Arundel +SNM 24005 2002 0 Baltimore +SNM 24009 2002 0 Calvert +SNM 24011 2002 0 Caroline +SNM 24013 2002 0 Carroll +SNM 24015 2002 0 Cecil +SNM 24017 2002 0 Charles +SNM 24019 2002 0 Dorchester +SNM 24021 2002 0 Frederick +SNM 24023 2002 33 Garrett +SNM 24025 2002 0 Harford +SNM 24027 2002 0 Howard +SNM 24029 2002 0 Kent +SNM 24031 2002 0 Montgomery +SNM 24033 2002 0 Prince George's +SNM 24035 2002 0 Queen Anne's +SNM 24037 2002 0 St. Mary's +SNM 24039 2002 0 Somerset +SNM 24041 2002 0 Talbot +SNM 24043 2002 0 Washington +SNM 24045 2002 0 Wicomico +SNM 24047 2002 0 Worcester +SNM 24510 2002 0 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_WIB.ALO new file mode 100644 index 0000000..03c3bd4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_WIB.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 24000 1990 5029 MD +WIB 24001 1990 11 Allegany +WIB 24003 1990 323 Anne Arundel +WIB 24005 1990 185 Baltimore +WIB 24009 1990 226 Calvert +WIB 24011 1990 15 Caroline +WIB 24013 1990 8 Carroll +WIB 24015 1990 174 Cecil +WIB 24017 1990 299 Charles +WIB 24019 1990 770 Dorchester +WIB 24021 1990 12 Frederick +WIB 24023 1990 21 Garrett +WIB 24025 1990 167 Harford +WIB 24027 1990 4 Howard +WIB 24029 1990 231 Kent +WIB 24031 1990 30 Montgomery +WIB 24033 1990 34 Prince George's +WIB 24035 1990 251 Queen Anne's +WIB 24037 1990 653 St. Mary's +WIB 24039 1990 489 Somerset +WIB 24041 1990 421 Talbot +WIB 24043 1990 24 Washington +WIB 24045 1990 62 Wicomico +WIB 24047 1990 573 Worcester +WIB 24510 1990 46 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MD_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MD_WOB.ALO new file mode 100644 index 0000000..f571fba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MD_WOB.ALO @@ -0,0 +1,49 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 24000 1990 2168 MD +WOB 24001 1990 11 Allegany +WOB 24003 1990 126 Anne Arundel +WOB 24005 1990 97 Baltimore +WOB 24009 1990 85 Calvert +WOB 24011 1990 15 Caroline +WOB 24013 1990 8 Carroll +WOB 24015 1990 96 Cecil +WOB 24017 1990 100 Charles +WOB 24019 1990 314 Dorchester +WOB 24021 1990 12 Frederick +WOB 24023 1990 21 Garrett +WOB 24025 1990 74 Harford +WOB 24027 1990 4 Howard +WOB 24029 1990 82 Kent +WOB 24031 1990 30 Montgomery +WOB 24033 1990 34 Prince George's +WOB 24035 1990 94 Queen Anne's +WOB 24037 1990 199 St. Mary's +WOB 24039 1990 161 Somerset +WOB 24041 1990 182 Talbot +WOB 24043 1990 24 Washington +WOB 24045 1990 44 Wicomico +WOB 24047 1990 324 Worcester +WOB 24510 1990 31 Baltimore +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_AIRTR.ALO new file mode 100644 index 0000000..ef15309 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_AIRTR.ALO @@ -0,0 +1,43 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 23000 2002 228.730 ME +AIR 23001 2002 0.354 Androscoggin +AIR 23003 2002 22.870 Aroostook +AIR 23005 2002 81.790 Cumberland +AIR 23007 2002 0.025 Franklin +AIR 23009 2002 0.410 Hancock +AIR 23011 2002 64.980 Kennebec +AIR 23013 2002 35.815 Knox +AIR 23015 2002 0.000 Lincoln +AIR 23017 2002 0.000 Oxford +AIR 23019 2002 21.680 Penobscot +AIR 23021 2002 0.014 Piscataquis +AIR 23023 2002 0.000 Sagadahoc +AIR 23025 2002 0.120 Somerset +AIR 23027 2002 0.050 Waldo +AIR 23029 2002 0.230 Washington +AIR 23031 2002 0.391 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_COAL.ALO new file mode 100644 index 0000000..d21bfb5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_COAL.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 23000 2002 0 ME +MIN 23001 2002 0 Androscoggin +MIN 23003 2002 0 Aroostook +MIN 23005 2002 0 Cumberland +MIN 23007 2002 0 Franklin +MIN 23009 2002 0 Hancock +MIN 23011 2002 0 Kennebec +MIN 23013 2002 0 Knox +MIN 23015 2002 0 Lincoln +MIN 23017 2002 0 Oxford +MIN 23019 2002 0 Penobscot +MIN 23021 2002 0 Piscataquis +MIN 23023 2002 0 Sagadahoc +MIN 23025 2002 0 Somerset +MIN 23027 2002 0 Waldo +MIN 23029 2002 0 Washington +MIN 23031 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_CONST.ALO new file mode 100644 index 0000000..4b563c3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_CONST.ALO @@ -0,0 +1,43 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 23000 2003 2013458 ME +CON 23001 2003 129953 Androscoggin +CON 23003 2003 52644 Aroostook +CON 23005 2003 605112 Cumberland +CON 23007 2003 36586 Franklin +CON 23009 2003 126228 Hancock +CON 23011 2003 137575 Kennebec +CON 23013 2003 112174 Knox +CON 23015 2003 53930 Lincoln +CON 23017 2003 53049 Oxford +CON 23019 2003 138668 Penobscot +CON 23021 2003 12771 Piscataquis +CON 23023 2003 56122 Sagadahoc +CON 23025 2003 36738 Somerset +CON 23027 2003 118672 Waldo +CON 23029 2003 30897 Washington +CON 23031 2003 312340 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_FARMS.ALO new file mode 100644 index 0000000..8b4864d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_FARMS.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 23000 2002 394121 ME +FRM 23001 2002 17569 Androscoggin +FRM 23003 2002 146944 Aroostook +FRM 23005 2002 15313 Cumberland +FRM 23007 2002 10998 Franklin +FRM 23009 2002 6672 Hancock +FRM 23011 2002 33170 Kennebec +FRM 23013 2002 8521 Knox +FRM 23015 2002 8143 Lincoln +FRM 23017 2002 15070 Oxford +FRM 23019 2002 37940 Penobscot +FRM 23021 2002 6243 Piscataquis +FRM 23023 2002 4103 Sagadahoc +FRM 23025 2002 28318 Somerset +FRM 23027 2002 18318 Waldo +FRM 23029 2002 19936 Washington +FRM 23031 2002 16863 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_GOLF.ALO new file mode 100644 index 0000000..e05ff1d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_GOLF.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 23000 2002 105 ME +GC 23001 2002 8 Androscoggin +GC 23003 2002 10 Aroostook +GC 23005 2002 23 Cumberland +GC 23007 2002 3 Franklin +GC 23009 2002 9 Hancock +GC 23011 2002 10 Kennebec +GC 23013 2002 4 Knox +GC 23015 2002 2 Lincoln +GC 23017 2002 5 Oxford +GC 23019 2002 10 Penobscot +GC 23021 2002 2 Piscataquis +GC 23023 2002 1 Sagadahoc +GC 23025 2002 3 Somerset +GC 23027 2002 3 Waldo +GC 23029 2002 1 Washington +GC 23031 2002 11 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_HOLSL.ALO new file mode 100644 index 0000000..840531f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_HOLSL.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 23000 2002 1706 ME +COM 23001 2002 132 Androscoggin +COM 23003 2002 86 Aroostook +COM 23005 2002 571 Cumberland +COM 23007 2002 20 Franklin +COM 23009 2002 84 Hancock +COM 23011 2002 125 Kennebec +COM 23013 2002 74 Knox +COM 23015 2002 55 Lincoln +COM 23017 2002 37 Oxford +COM 23019 2002 173 Penobscot +COM 23021 2002 13 Piscataquis +COM 23023 2002 22 Sagadahoc +COM 23025 2002 32 Somerset +COM 23027 2002 29 Waldo +COM 23029 2002 47 Washington +COM 23031 2002 206 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_HOUSE.ALO new file mode 100644 index 0000000..2347a32 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_HOUSE.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 23000 2002 664633 ME +HOU 23001 2002 46636 Androscoggin +HOU 23003 2002 38982 Aroostook +HOU 23005 2002 125881 Cumberland +HOU 23007 2002 19348 Franklin +HOU 23009 2002 34713 Hancock +HOU 23011 2002 57274 Kennebec +HOU 23013 2002 22098 Knox +HOU 23015 2002 21228 Lincoln +HOU 23017 2002 32832 Oxford +HOU 23019 2002 67968 Penobscot +HOU 23021 2002 13830 Piscataquis +HOU 23023 2002 16827 Sagadahoc +HOU 23025 2002 28441 Somerset +HOU 23027 2002 19462 Waldo +HOU 23029 2002 22101 Washington +HOU 23031 2002 97012 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_LOGGN.ALO new file mode 100644 index 0000000..c902caa --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_LOGGN.ALO @@ -0,0 +1,43 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 23000 2002 764033653 ME +LOG 23001 2002 33635249 Androscoggin +LOG 23003 2002 79534348 Aroostook +LOG 23005 2002 20959905 Cumberland +LOG 23007 2002 49464947 Franklin +LOG 23009 2002 28079022 Hancock +LOG 23011 2002 22910105 Kennebec +LOG 23013 2002 5798800 Knox +LOG 23015 2002 9767787 Lincoln +LOG 23017 2002 61064486 Oxford +LOG 23019 2002 126967389 Penobscot +LOG 23021 2002 82225259 Piscataquis +LOG 23023 2002 2789081 Sagadahoc +LOG 23025 2002 118645525 Somerset +LOG 23027 2002 13640631 Waldo +LOG 23029 2002 79659288 Washington +LOG 23031 2002 28891830 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_LSCAP.ALO new file mode 100644 index 0000000..3119ee2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_LSCAP.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 23000 2002 1386 ME +LSC 23001 2002 35 Androscoggin +LSC 23003 2002 35 Aroostook +LSC 23005 2002 613 Cumberland +LSC 23007 2002 6 Franklin +LSC 23009 2002 49 Hancock +LSC 23011 2002 71 Kennebec +LSC 23013 2002 78 Knox +LSC 23015 2002 151 Lincoln +LSC 23017 2002 6 Oxford +LSC 23019 2002 93 Penobscot +LSC 23021 2002 6 Piscataquis +LSC 23023 2002 40 Sagadahoc +LSC 23025 2002 6 Somerset +LSC 23027 2002 6 Waldo +LSC 23029 2002 6 Washington +LSC 23031 2002 185 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_MNFG.ALO new file mode 100644 index 0000000..6171a14 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_MNFG.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 23000 2002 120135 ME +MFG 23001 2002 12779 Androscoggin +MFG 23003 2002 6730 Aroostook +MFG 23005 2002 20183 Cumberland +MFG 23007 2002 4464 Franklin +MFG 23009 2002 3937 Hancock +MFG 23011 2002 5909 Kennebec +MFG 23013 2002 2529 Knox +MFG 23015 2002 1459 Lincoln +MFG 23017 2002 6879 Oxford +MFG 23019 2002 12267 Penobscot +MFG 23021 2002 2313 Piscataquis +MFG 23023 2002 13450 Sagadahoc +MFG 23025 2002 6433 Somerset +MFG 23027 2002 1972 Waldo +MFG 23029 2002 2251 Washington +MFG 23031 2002 16580 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_OIL.ALO new file mode 100644 index 0000000..0a66e35 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_OIL.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 23000 2002 20 ME +OIL 23001 2002 0 Androscoggin +OIL 23003 2002 0 Aroostook +OIL 23005 2002 7 Cumberland +OIL 23007 2002 0 Franklin +OIL 23009 2002 0 Hancock +OIL 23011 2002 0 Kennebec +OIL 23013 2002 0 Knox +OIL 23015 2002 0 Lincoln +OIL 23017 2002 0 Oxford +OIL 23019 2002 0 Penobscot +OIL 23021 2002 0 Piscataquis +OIL 23023 2002 0 Sagadahoc +OIL 23025 2002 0 Somerset +OIL 23027 2002 0 Waldo +OIL 23029 2002 0 Washington +OIL 23031 2002 13 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_POP.ALO new file mode 100644 index 0000000..b35f5c0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_POP.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 23000 2002 1297750 ME +POP 23001 2002 105228 Androscoggin +POP 23003 2002 73151 Aroostook +POP 23005 2002 269875 Cumberland +POP 23007 2002 29730 Franklin +POP 23009 2002 52242 Hancock +POP 23011 2002 118651 Kennebec +POP 23013 2002 40519 Knox +POP 23015 2002 34479 Lincoln +POP 23017 2002 55843 Oxford +POP 23019 2002 146899 Penobscot +POP 23021 2002 17260 Piscataquis +POP 23023 2002 35993 Sagadahoc +POP 23025 2002 51042 Somerset +POP 23027 2002 37723 Waldo +POP 23029 2002 33412 Washington +POP 23031 2002 195703 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_RAIL.ALO new file mode 100644 index 0000000..be9f7fb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_RAIL.ALO @@ -0,0 +1,44 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 23000 2002 4186.179 ME +RR 23001 2002 339.436 Androscoggin +RR 23003 2002 235.965 Aroostook +RR 23005 2002 870.541 Cumberland +RR 23007 2002 95.901 Franklin +RR 23009 2002 168.518 Hancock +RR 23011 2002 382.735 Kennebec +RR 23013 2002 130.703 Knox +RR 23015 2002 111.220 Lincoln +RR 23017 2002 180.134 Oxford +RR 23019 2002 473.855 Penobscot +RR 23021 2002 55.676 Piscataquis +RR 23023 2002 116.103 Sagadahoc +RR 23025 2002 164.647 Somerset +RR 23027 2002 121.684 Waldo +RR 23029 2002 107.778 Washington +RR 23031 2002 631.283 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_RVPRK.ALO new file mode 100644 index 0000000..cf98f5f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_RVPRK.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 23000 2002 218 ME +RVP 23001 2002 8 Androscoggin +RVP 23003 2002 6 Aroostook +RVP 23005 2002 41 Cumberland +RVP 23007 2002 6 Franklin +RVP 23009 2002 13 Hancock +RVP 23011 2002 22 Kennebec +RVP 23013 2002 6 Knox +RVP 23015 2002 9 Lincoln +RVP 23017 2002 23 Oxford +RVP 23019 2002 12 Penobscot +RVP 23021 2002 6 Piscataquis +RVP 23023 2002 2 Sagadahoc +RVP 23025 2002 10 Somerset +RVP 23027 2002 4 Waldo +RVP 23029 2002 12 Washington +RVP 23031 2002 38 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_SBC.ALO new file mode 100644 index 0000000..3290eca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_SBC.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 23000 2002 1386 ME +SBC 23001 2002 27 Androscoggin +SBC 23003 2002 19 Aroostook +SBC 23005 2002 613 Cumberland +SBC 23007 2002 8 Franklin +SBC 23009 2002 49 Hancock +SBC 23011 2002 71 Kennebec +SBC 23013 2002 78 Knox +SBC 23015 2002 151 Lincoln +SBC 23017 2002 15 Oxford +SBC 23019 2002 93 Penobscot +SBC 23021 2002 5 Piscataquis +SBC 23023 2002 40 Sagadahoc +SBC 23025 2002 13 Somerset +SBC 23027 2002 10 Waldo +SBC 23029 2002 9 Washington +SBC 23031 2002 185 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_SBR.ALO new file mode 100644 index 0000000..5aaa28a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_SBR.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 23000 2002 664633 ME +SBR 23001 2002 46636 Androscoggin +SBR 23003 2002 38982 Aroostook +SBR 23005 2002 125881 Cumberland +SBR 23007 2002 19348 Franklin +SBR 23009 2002 34713 Hancock +SBR 23011 2002 57274 Kennebec +SBR 23013 2002 22098 Knox +SBR 23015 2002 21228 Lincoln +SBR 23017 2002 32832 Oxford +SBR 23019 2002 67968 Penobscot +SBR 23021 2002 13830 Piscataquis +SBR 23023 2002 16827 Sagadahoc +SBR 23025 2002 28441 Somerset +SBR 23027 2002 19462 Waldo +SBR 23029 2002 22101 Washington +SBR 23031 2002 97012 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_SNOWM.ALO new file mode 100644 index 0000000..4ad8fda --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_SNOWM.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 23000 2002 326 ME +SNM 23001 2002 0 Androscoggin +SNM 23003 2002 14 Aroostook +SNM 23005 2002 4 Cumberland +SNM 23007 2002 34 Franklin +SNM 23009 2002 19 Hancock +SNM 23011 2002 8 Kennebec +SNM 23013 2002 25 Knox +SNM 23015 2002 29 Lincoln +SNM 23017 2002 18 Oxford +SNM 23019 2002 7 Penobscot +SNM 23021 2002 58 Piscataquis +SNM 23023 2002 28 Sagadahoc +SNM 23025 2002 20 Somerset +SNM 23027 2002 27 Waldo +SNM 23029 2002 30 Washington +SNM 23031 2002 5 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_WIB.ALO new file mode 100644 index 0000000..ce4935e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_WIB.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 23000 1990 9685 ME +WIB 23001 1990 70 Androscoggin +WIB 23003 1990 407 Aroostook +WIB 23005 1990 880 Cumberland +WIB 23007 1990 120 Franklin +WIB 23009 1990 1646 Hancock +WIB 23011 1990 217 Kennebec +WIB 23013 1990 1187 Knox +WIB 23015 1990 513 Lincoln +WIB 23017 1990 252 Oxford +WIB 23019 1990 415 Penobscot +WIB 23021 1990 1065 Piscataquis +WIB 23023 1990 274 Sagadahoc +WIB 23025 1990 437 Somerset +WIB 23027 1990 228 Waldo +WIB 23029 1990 1577 Washington +WIB 23031 1990 397 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ME_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ME_WOB.ALO new file mode 100644 index 0000000..50b6cb2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ME_WOB.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 23000 1990 6337 ME +WOB 23001 1990 70 Androscoggin +WOB 23003 1990 407 Aroostook +WOB 23005 1990 545 Cumberland +WOB 23007 1990 120 Franklin +WOB 23009 1990 883 Hancock +WOB 23011 1990 217 Kennebec +WOB 23013 1990 317 Knox +WOB 23015 1990 243 Lincoln +WOB 23017 1990 252 Oxford +WOB 23019 1990 415 Penobscot +WOB 23021 1990 1065 Piscataquis +WOB 23023 1990 137 Sagadahoc +WOB 23025 1990 437 Somerset +WOB 23027 1990 121 Waldo +WOB 23029 1990 987 Washington +WOB 23031 1990 121 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_AIRTR.ALO new file mode 100644 index 0000000..efdebe7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_AIRTR.ALO @@ -0,0 +1,110 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 26000 2002 1975.557 MI +AIR 26001 2002 0.000 Alcona +AIR 26003 2002 0.000 Alger +AIR 26005 2002 0.030 Allegan +AIR 26007 2002 10.770 Alpena +AIR 26009 2002 0.063 Antrim +AIR 26011 2002 0.000 Arenac +AIR 26013 2002 0.000 Baraga +AIR 26015 2002 0.020 Barry +AIR 26017 2002 0.060 Bay +AIR 26019 2002 0.010 Benzie +AIR 26021 2002 0.322 Berrien +AIR 26023 2002 0.000 Branch +AIR 26025 2002 0.850 Calhoun +AIR 26027 2002 0.160 Cass +AIR 26029 2002 47.320 Charlevoix +AIR 26031 2002 0.080 Cheboygan +AIR 26033 2002 0.892 Chippewa +AIR 26035 2002 0.030 Clare +AIR 26037 2002 41.970 Clinton +AIR 26039 2002 0.130 Crawford +AIR 26041 2002 0.694 Delta +AIR 26043 2002 0.256 Dickinson +AIR 26045 2002 0.030 Eaton +AIR 26047 2002 0.964 Emmet +AIR 26049 2002 42.187 Genesee +AIR 26051 2002 0.040 Gladwin +AIR 26053 2002 0.104 Gogebic +AIR 26055 2002 12.940 Grand Traverse +AIR 26057 2002 0.040 Gratiot +AIR 26059 2002 0.000 Hillsdale +AIR 26061 2002 0.540 Houghton +AIR 26063 2002 0.000 Huron +AIR 26065 2002 0.000 Ingham +AIR 26067 2002 0.180 Ionia +AIR 26069 2002 0.060 Iosco +AIR 26071 2002 0.000 Iron +AIR 26073 2002 0.134 Isabella +AIR 26075 2002 0.357 Jackson +AIR 26077 2002 24.280 Kalamazoo +AIR 26079 2002 0.000 Kalkaska +AIR 26081 2002 109.360 Kent +AIR 26083 2002 0.000 Keweenaw +AIR 26085 2002 0.000 Lake +AIR 26087 2002 0.060 Lapeer +AIR 26089 2002 0.000 Leelanau +AIR 26091 2002 0.101 Lenawee +AIR 26093 2002 0.000 Livingston +AIR 26095 2002 0.020 Luce +AIR 26097 2002 0.000 Mackinac +AIR 26099 2002 0.260 Macomb +AIR 26101 2002 0.081 Manistee +AIR 26103 2002 0.000 Marquette +AIR 26105 2002 0.100 Mason +AIR 26107 2002 0.000 Mecosta +AIR 26109 2002 0.281 Menominee +AIR 26111 2002 0.140 Midland +AIR 26113 2002 0.000 Missaukee +AIR 26115 2002 0.080 Monroe +AIR 26117 2002 0.130 Montcalm +AIR 26119 2002 0.000 Montmorency +AIR 26121 2002 1.370 Muskegon +AIR 26123 2002 0.080 Newaygo +AIR 26125 2002 5.812 Oakland +AIR 26127 2002 0.000 Oceana +AIR 26129 2002 0.120 Ogemaw +AIR 26131 2002 0.010 Ontonagon +AIR 26133 2002 0.000 Osceola +AIR 26135 2002 0.000 Oscoda +AIR 26137 2002 0.220 Otsego +AIR 26139 2002 0.090 Ottawa +AIR 26141 2002 0.007 Presque Isle +AIR 26143 2002 0.030 Roscommon +AIR 26145 2002 57.007 Saginaw +AIR 26147 2002 0.320 St. Clair +AIR 26149 2002 0.140 St. Joseph +AIR 26151 2002 0.020 Sanilac +AIR 26153 2002 0.040 Schoolcraft +AIR 26155 2002 0.110 Shiawassee +AIR 26157 2002 0.050 Tuscola +AIR 26159 2002 0.080 Van Buren +AIR 26161 2002 0.390 Washtenaw +AIR 26163 2002 1613.410 Wayne +AIR 26165 2002 0.124 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_COAL.ALO new file mode 100644 index 0000000..55c369c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_COAL.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 26000 2002 0 MI +MIN 26001 2002 0 Alcona +MIN 26003 2002 0 Alger +MIN 26005 2002 0 Allegan +MIN 26007 2002 0 Alpena +MIN 26009 2002 0 Antrim +MIN 26011 2002 0 Arenac +MIN 26013 2002 0 Baraga +MIN 26015 2002 0 Barry +MIN 26017 2002 0 Bay +MIN 26019 2002 0 Benzie +MIN 26021 2002 0 Berrien +MIN 26023 2002 0 Branch +MIN 26025 2002 0 Calhoun +MIN 26027 2002 0 Cass +MIN 26029 2002 0 Charlevoix +MIN 26031 2002 0 Cheboygan +MIN 26033 2002 0 Chippewa +MIN 26035 2002 0 Clare +MIN 26037 2002 0 Clinton +MIN 26039 2002 0 Crawford +MIN 26041 2002 0 Delta +MIN 26043 2002 0 Dickinson +MIN 26045 2002 0 Eaton +MIN 26047 2002 0 Emmet +MIN 26049 2002 0 Genesee +MIN 26051 2002 0 Gladwin +MIN 26053 2002 0 Gogebic +MIN 26055 2002 0 Grand Traverse +MIN 26057 2002 0 Gratiot +MIN 26059 2002 0 Hillsdale +MIN 26061 2002 0 Houghton +MIN 26063 2002 0 Huron +MIN 26065 2002 0 Ingham +MIN 26067 2002 0 Ionia +MIN 26069 2002 0 Iosco +MIN 26071 2002 0 Iron +MIN 26073 2002 0 Isabella +MIN 26075 2002 0 Jackson +MIN 26077 2002 0 Kalamazoo +MIN 26079 2002 0 Kalkaska +MIN 26081 2002 0 Kent +MIN 26083 2002 0 Keweenaw +MIN 26085 2002 0 Lake +MIN 26087 2002 0 Lapeer +MIN 26089 2002 0 Leelanau +MIN 26091 2002 0 Lenawee +MIN 26093 2002 0 Livingston +MIN 26095 2002 0 Luce +MIN 26097 2002 0 Mackinac +MIN 26099 2002 0 Macomb +MIN 26101 2002 0 Manistee +MIN 26103 2002 0 Marquette +MIN 26105 2002 0 Mason +MIN 26107 2002 0 Mecosta +MIN 26109 2002 0 Menominee +MIN 26111 2002 0 Midland +MIN 26113 2002 0 Missaukee +MIN 26115 2002 0 Monroe +MIN 26117 2002 0 Montcalm +MIN 26119 2002 0 Montmorency +MIN 26121 2002 0 Muskegon +MIN 26123 2002 0 Newaygo +MIN 26125 2002 0 Oakland +MIN 26127 2002 0 Oceana +MIN 26129 2002 0 Ogemaw +MIN 26131 2002 0 Ontonagon +MIN 26133 2002 0 Osceola +MIN 26135 2002 0 Oscoda +MIN 26137 2002 0 Otsego +MIN 26139 2002 0 Ottawa +MIN 26141 2002 0 Presque Isle +MIN 26143 2002 0 Roscommon +MIN 26145 2002 0 Saginaw +MIN 26147 2002 0 St. Clair +MIN 26149 2002 0 St. Joseph +MIN 26151 2002 0 Sanilac +MIN 26153 2002 0 Schoolcraft +MIN 26155 2002 0 Shiawassee +MIN 26157 2002 0 Tuscola +MIN 26159 2002 0 Van Buren +MIN 26161 2002 0 Washtenaw +MIN 26163 2002 0 Wayne +MIN 26165 2002 0 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_CONST.ALO new file mode 100644 index 0000000..941eca3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_CONST.ALO @@ -0,0 +1,110 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 26000 2003 14505437 MI +CON 26001 2003 10703 Alcona +CON 26003 2003 8450 Alger +CON 26005 2003 154588 Allegan +CON 26007 2003 18135 Alpena +CON 26009 2003 63216 Antrim +CON 26011 2003 17640 Arenac +CON 26013 2003 13795 Baraga +CON 26015 2003 86862 Barry +CON 26017 2003 115415 Bay +CON 26019 2003 62659 Benzie +CON 26021 2003 177384 Berrien +CON 26023 2003 51439 Branch +CON 26025 2003 145419 Calhoun +CON 26027 2003 60960 Cass +CON 26029 2003 71605 Charlevoix +CON 26031 2003 34268 Cheboygan +CON 26033 2003 42789 Chippewa +CON 26035 2003 24009 Clare +CON 26037 2003 164652 Clinton +CON 26039 2003 24205 Crawford +CON 26041 2003 38422 Delta +CON 26043 2003 39743 Dickinson +CON 26045 2003 227173 Eaton +CON 26047 2003 77405 Emmet +CON 26049 2003 561553 Genesee +CON 26051 2003 31834 Gladwin +CON 26053 2003 22250 Gogebic +CON 26055 2003 174474 Grand Traverse +CON 26057 2003 21471 Gratiot +CON 26059 2003 54365 Hillsdale +CON 26061 2003 70822 Houghton +CON 26063 2003 42399 Huron +CON 26065 2003 320123 Ingham +CON 26067 2003 57111 Ionia +CON 26069 2003 52180 Iosco +CON 26071 2003 21597 Iron +CON 26073 2003 54470 Isabella +CON 26075 2003 160622 Jackson +CON 26077 2003 428787 Kalamazoo +CON 26079 2003 18331 Kalkaska +CON 26081 2003 1212060 Kent +CON 26083 2003 2982 Keweenaw +CON 26085 2003 7249 Lake +CON 26087 2003 123994 Lapeer +CON 26089 2003 58791 Leelanau +CON 26091 2003 131286 Lenawee +CON 26093 2003 392974 Livingston +CON 26095 2003 4756 Luce +CON 26097 2003 25100 Mackinac +CON 26099 2003 1048848 Macomb +CON 26101 2003 13699 Manistee +CON 26103 2003 96035 Marquette +CON 26105 2003 37847 Mason +CON 26107 2003 55649 Mecosta +CON 26109 2003 21908 Menominee +CON 26111 2003 69842 Midland +CON 26113 2003 10052 Missaukee +CON 26115 2003 312102 Monroe +CON 26117 2003 39192 Montcalm +CON 26119 2003 19599 Montmorency +CON 26121 2003 234401 Muskegon +CON 26123 2003 52747 Newaygo +CON 26125 2003 1765737 Oakland +CON 26127 2003 22648 Oceana +CON 26129 2003 22362 Ogemaw +CON 26131 2003 8532 Ontonagon +CON 26133 2003 16278 Osceola +CON 26135 2003 6123 Oscoda +CON 26137 2003 56986 Otsego +CON 26139 2003 619779 Ottawa +CON 26141 2003 34891 Presque Isle +CON 26143 2003 49597 Roscommon +CON 26145 2003 176380 Saginaw +CON 26147 2003 268057 St. Clair +CON 26149 2003 65972 St. Joseph +CON 26151 2003 18997 Sanilac +CON 26153 2003 8900 Schoolcraft +CON 26155 2003 53016 Shiawassee +CON 26157 2003 46484 Tuscola +CON 26159 2003 92086 Van Buren +CON 26161 2003 1036392 Washtenaw +CON 26163 2003 2304706 Wayne +CON 26165 2003 37075 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_FARMS.ALO new file mode 100644 index 0000000..2d2a5c8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_FARMS.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 26000 2002 6827903 MI +FRM 26001 2002 18505 Alcona +FRM 26003 2002 5577 Alger +FRM 26005 2002 173538 Allegan +FRM 26007 2002 36063 Alpena +FRM 26009 2002 22106 Antrim +FRM 26011 2002 55024 Arenac +FRM 26013 2002 5700 Baraga +FRM 26015 2002 102161 Barry +FRM 26017 2002 157550 Bay +FRM 26019 2002 7821 Benzie +FRM 26021 2002 128235 Berrien +FRM 26023 2002 173905 Branch +FRM 26025 2002 168976 Calhoun +FRM 26027 2002 130854 Cass +FRM 26029 2002 14087 Charlevoix +FRM 26031 2002 17413 Cheboygan +FRM 26033 2002 34734 Chippewa +FRM 26035 2002 25565 Clare +FRM 26037 2002 200538 Clinton +FRM 26039 2002 401 Crawford +FRM 26041 2002 26570 Delta +FRM 26043 2002 9371 Dickinson +FRM 26045 2002 171242 Eaton +FRM 26047 2002 17568 Emmet +FRM 26049 2002 99799 Genesee +FRM 26051 2002 30837 Gladwin +FRM 26053 2002 1127 Gogebic +FRM 26055 2002 30152 Grand Traverse +FRM 26057 2002 235525 Gratiot +FRM 26059 2002 173208 Hillsdale +FRM 26061 2002 8614 Houghton +FRM 26063 2002 366484 Huron +FRM 26065 2002 143491 Ingham +FRM 26067 2002 169995 Ionia +FRM 26069 2002 22375 Iosco +FRM 26071 2002 7449 Iron +FRM 26073 2002 134046 Isabella +FRM 26075 2002 122240 Jackson +FRM 26077 2002 106849 Kalamazoo +FRM 26079 2002 8317 Kalkaska +FRM 26081 2002 111584 Kent +FRM 26083 2002 86 Keweenaw +FRM 26085 2002 7384 Lake +FRM 26087 2002 130962 Lapeer +FRM 26089 2002 27272 Leelanau +FRM 26091 2002 279999 Lenawee +FRM 26093 2002 59729 Livingston +FRM 26095 2002 4029 Luce +FRM 26097 2002 8164 Mackinac +FRM 26099 2002 51755 Macomb +FRM 26101 2002 19091 Manistee +FRM 26103 2002 8202 Marquette +FRM 26105 2002 45782 Mason +FRM 26107 2002 58119 Mecosta +FRM 26109 2002 45169 Menominee +FRM 26111 2002 58226 Midland +FRM 26113 2002 58204 Missaukee +FRM 26115 2002 189011 Monroe +FRM 26117 2002 167690 Montcalm +FRM 26119 2002 9919 Montmorency +FRM 26121 2002 42148 Muskegon +FRM 26123 2002 72732 Newaygo +FRM 26125 2002 17094 Oakland +FRM 26127 2002 71506 Oceana +FRM 26129 2002 36359 Ogemaw +FRM 26131 2002 12773 Ontonagon +FRM 26133 2002 52057 Osceola +FRM 26135 2002 5925 Oscoda +FRM 26137 2002 12768 Otsego +FRM 26139 2002 120164 Ottawa +FRM 26141 2002 29611 Presque Isle +FRM 26143 2002 1661 Roscommon +FRM 26145 2002 269242 Saginaw +FRM 26147 2002 133720 St. Clair +FRM 26149 2002 182020 St. Joseph +FRM 26151 2002 340659 Sanilac +FRM 26153 2002 5192 Schoolcraft +FRM 26155 2002 185271 Shiawassee +FRM 26157 2002 270006 Tuscola +FRM 26159 2002 107184 Van Buren +FRM 26161 2002 122754 Washtenaw +FRM 26163 2002 14269 Wayne +FRM 26165 2002 18399 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_GOLF.ALO new file mode 100644 index 0000000..e79595f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_GOLF.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 26000 2002 652 MI +GC 26001 2002 3 Alcona +GC 26003 2002 1 Alger +GC 26005 2002 13 Allegan +GC 26007 2002 2 Alpena +GC 26009 2002 5 Antrim +GC 26011 2002 2 Arenac +GC 26013 2002 1 Baraga +GC 26015 2002 5 Barry +GC 26017 2002 7 Bay +GC 26019 2002 5 Benzie +GC 26021 2002 12 Berrien +GC 26023 2002 6 Branch +GC 26025 2002 12 Calhoun +GC 26027 2002 8 Cass +GC 26029 2002 9 Charlevoix +GC 26031 2002 5 Cheboygan +GC 26033 2002 4 Chippewa +GC 26035 2002 4 Clare +GC 26037 2002 7 Clinton +GC 26039 2002 1 Crawford +GC 26041 2002 4 Delta +GC 26043 2002 2 Dickinson +GC 26045 2002 6 Eaton +GC 26047 2002 10 Emmet +GC 26049 2002 21 Genesee +GC 26051 2002 0 Gladwin +GC 26053 2002 2 Gogebic +GC 26055 2002 11 Grand Traverse +GC 26057 2002 5 Gratiot +GC 26059 2002 5 Hillsdale +GC 26061 2002 2 Houghton +GC 26063 2002 8 Huron +GC 26065 2002 11 Ingham +GC 26067 2002 6 Ionia +GC 26069 2002 5 Iosco +GC 26071 2002 2 Iron +GC 26073 2002 7 Isabella +GC 26075 2002 17 Jackson +GC 26077 2002 16 Kalamazoo +GC 26079 2002 2 Kalkaska +GC 26081 2002 32 Kent +GC 26083 2002 0 Keweenaw +GC 26085 2002 1 Lake +GC 26087 2002 10 Lapeer +GC 26089 2002 6 Leelanau +GC 26091 2002 11 Lenawee +GC 26093 2002 15 Livingston +GC 26095 2002 1 Luce +GC 26097 2002 1 Mackinac +GC 26099 2002 25 Macomb +GC 26101 2002 6 Manistee +GC 26103 2002 5 Marquette +GC 26105 2002 3 Mason +GC 26107 2002 4 Mecosta +GC 26109 2002 3 Menominee +GC 26111 2002 5 Midland +GC 26113 2002 2 Missaukee +GC 26115 2002 20 Monroe +GC 26117 2002 9 Montcalm +GC 26119 2002 2 Montmorency +GC 26121 2002 14 Muskegon +GC 26123 2002 6 Newaygo +GC 26125 2002 63 Oakland +GC 26127 2002 4 Oceana +GC 26129 2002 6 Ogemaw +GC 26131 2002 1 Ontonagon +GC 26133 2002 4 Osceola +GC 26135 2002 2 Oscoda +GC 26137 2002 4 Otsego +GC 26139 2002 15 Ottawa +GC 26141 2002 2 Presque Isle +GC 26143 2002 7 Roscommon +GC 26145 2002 18 Saginaw +GC 26147 2002 10 St. Clair +GC 26149 2002 7 St. Joseph +GC 26151 2002 6 Sanilac +GC 26153 2002 0 Schoolcraft +GC 26155 2002 8 Shiawassee +GC 26157 2002 6 Tuscola +GC 26159 2002 3 Van Buren +GC 26161 2002 19 Washtenaw +GC 26163 2002 28 Wayne +GC 26165 2002 4 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_HOLSL.ALO new file mode 100644 index 0000000..880daf9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_HOLSL.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 26000 2002 13055 MI +COM 26001 2002 3 Alcona +COM 26003 2002 5 Alger +COM 26005 2002 112 Allegan +COM 26007 2002 51 Alpena +COM 26009 2002 16 Antrim +COM 26011 2002 17 Arenac +COM 26013 2002 5 Baraga +COM 26015 2002 38 Barry +COM 26017 2002 115 Bay +COM 26019 2002 9 Benzie +COM 26021 2002 178 Berrien +COM 26023 2002 40 Branch +COM 26025 2002 140 Calhoun +COM 26027 2002 59 Cass +COM 26029 2002 25 Charlevoix +COM 26031 2002 16 Cheboygan +COM 26033 2002 27 Chippewa +COM 26035 2002 13 Clare +COM 26037 2002 61 Clinton +COM 26039 2002 10 Crawford +COM 26041 2002 53 Delta +COM 26043 2002 54 Dickinson +COM 26045 2002 77 Eaton +COM 26047 2002 43 Emmet +COM 26049 2002 392 Genesee +COM 26051 2002 12 Gladwin +COM 26053 2002 14 Gogebic +COM 26055 2002 161 Grand Traverse +COM 26057 2002 39 Gratiot +COM 26059 2002 48 Hillsdale +COM 26061 2002 27 Houghton +COM 26063 2002 45 Huron +COM 26065 2002 335 Ingham +COM 26067 2002 41 Ionia +COM 26069 2002 14 Iosco +COM 26071 2002 11 Iron +COM 26073 2002 63 Isabella +COM 26075 2002 196 Jackson +COM 26077 2002 320 Kalamazoo +COM 26079 2002 24 Kalkaska +COM 26081 2002 1266 Kent +COM 26083 2002 2 Keweenaw +COM 26085 2002 5 Lake +COM 26087 2002 70 Lapeer +COM 26089 2002 21 Leelanau +COM 26091 2002 89 Lenawee +COM 26093 2002 276 Livingston +COM 26095 2002 9 Luce +COM 26097 2002 9 Mackinac +COM 26099 2002 1008 Macomb +COM 26101 2002 23 Manistee +COM 26103 2002 64 Marquette +COM 26105 2002 16 Mason +COM 26107 2002 25 Mecosta +COM 26109 2002 19 Menominee +COM 26111 2002 64 Midland +COM 26113 2002 11 Missaukee +COM 26115 2002 99 Monroe +COM 26117 2002 50 Montcalm +COM 26119 2002 4 Montmorency +COM 26121 2002 158 Muskegon +COM 26123 2002 30 Newaygo +COM 26125 2002 3173 Oakland +COM 26127 2002 7 Oceana +COM 26129 2002 15 Ogemaw +COM 26131 2002 4 Ontonagon +COM 26133 2002 17 Osceola +COM 26135 2002 4 Oscoda +COM 26137 2002 45 Otsego +COM 26139 2002 376 Ottawa +COM 26141 2002 16 Presque Isle +COM 26143 2002 13 Roscommon +COM 26145 2002 243 Saginaw +COM 26147 2002 121 St. Clair +COM 26149 2002 49 St. Joseph +COM 26151 2002 39 Sanilac +COM 26153 2002 5 Schoolcraft +COM 26155 2002 61 Shiawassee +COM 26157 2002 40 Tuscola +COM 26159 2002 61 Van Buren +COM 26161 2002 386 Washtenaw +COM 26163 2002 2125 Wayne +COM 26165 2002 28 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_HOUSE.ALO new file mode 100644 index 0000000..2972490 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_HOUSE.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 26000 2002 4340564 MI +HOU 26001 2002 10806 Alcona +HOU 26003 2002 6083 Alger +HOU 26005 2002 44986 Allegan +HOU 26007 2002 15434 Alpena +HOU 26009 2002 15693 Antrim +HOU 26011 2002 9730 Arenac +HOU 26013 2002 4712 Baraga +HOU 26015 2002 24535 Barry +HOU 26017 2002 46972 Bay +HOU 26019 2002 10803 Benzie +HOU 26021 2002 74358 Berrien +HOU 26023 2002 20224 Branch +HOU 26025 2002 59504 Calhoun +HOU 26027 2002 24527 Cass +HOU 26029 2002 16158 Charlevoix +HOU 26031 2002 17018 Cheboygan +HOU 26033 2002 19827 Chippewa +HOU 26035 2002 22556 Clare +HOU 26037 2002 26469 Clinton +HOU 26039 2002 10223 Crawford +HOU 26041 2002 19670 Delta +HOU 26043 2002 13803 Dickinson +HOU 26045 2002 43414 Eaton +HOU 26047 2002 19409 Emmet +HOU 26049 2002 189988 Genesee +HOU 26051 2002 17431 Gladwin +HOU 26053 2002 10830 Gogebic +HOU 26055 2002 36634 Grand Traverse +HOU 26057 2002 15690 Gratiot +HOU 26059 2002 20826 Hillsdale +HOU 26061 2002 17802 Houghton +HOU 26063 2002 20732 Huron +HOU 26065 2002 117271 Ingham +HOU 26067 2002 22804 Ionia +HOU 26069 2002 20677 Iosco +HOU 26071 2002 8806 Iron +HOU 26073 2002 26578 Isabella +HOU 26075 2002 64778 Jackson +HOU 26077 2002 102057 Kalamazoo +HOU 26079 2002 11148 Kalkaska +HOU 26081 2002 230323 Kent +HOU 26083 2002 2331 Keweenaw +HOU 26085 2002 13779 Lake +HOU 26087 2002 33863 Lapeer +HOU 26089 2002 13806 Leelanau +HOU 26091 2002 40766 Lenawee +HOU 26093 2002 64548 Livingston +HOU 26095 2002 4070 Luce +HOU 26097 2002 9598 Mackinac +HOU 26099 2002 332600 Macomb +HOU 26101 2002 14653 Manistee +HOU 26103 2002 33203 Marquette +HOU 26105 2002 16367 Mason +HOU 26107 2002 20228 Mecosta +HOU 26109 2002 13875 Menominee +HOU 26111 2002 34608 Midland +HOU 26113 2002 8832 Missaukee +HOU 26115 2002 59195 Monroe +HOU 26117 2002 26486 Montcalm +HOU 26119 2002 9406 Montmorency +HOU 26121 2002 70428 Muskegon +HOU 26123 2002 23830 Newaygo +HOU 26125 2002 504536 Oakland +HOU 26127 2002 15327 Oceana +HOU 26129 2002 15623 Ogemaw +HOU 26131 2002 5430 Ontonagon +HOU 26133 2002 13144 Osceola +HOU 26135 2002 8990 Oscoda +HOU 26137 2002 14041 Otsego +HOU 26139 2002 91497 Ottawa +HOU 26141 2002 10122 Presque Isle +HOU 26143 2002 23761 Roscommon +HOU 26145 2002 86985 Saginaw +HOU 26147 2002 70269 St. Clair +HOU 26149 2002 26924 St. Joseph +HOU 26151 2002 21721 Sanilac +HOU 26153 2002 5786 Schoolcraft +HOU 26155 2002 29740 Shiawassee +HOU 26157 2002 23763 Tuscola +HOU 26159 2002 34904 Van Buren +HOU 26161 2002 137045 Washtenaw +HOU 26163 2002 827818 Wayne +HOU 26165 2002 15377 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_LOGGN.ALO new file mode 100644 index 0000000..9b776a9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_LOGGN.ALO @@ -0,0 +1,110 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 26000 2002 466969286 MI +LOG 26001 2002 7425648 Alcona +LOG 26003 2002 11215503 Alger +LOG 26005 2002 3197817 Allegan +LOG 26007 2002 6050721 Alpena +LOG 26009 2002 3833927 Antrim +LOG 26011 2002 2185776 Arenac +LOG 26013 2002 14355232 Baraga +LOG 26015 2002 2796711 Barry +LOG 26017 2002 727885 Bay +LOG 26019 2002 4224499 Benzie +LOG 26021 2002 646575 Berrien +LOG 26023 2002 394422 Branch +LOG 26025 2002 1553930 Calhoun +LOG 26027 2002 1137135 Cass +LOG 26029 2002 3487214 Charlevoix +LOG 26031 2002 9974669 Cheboygan +LOG 26033 2002 12367157 Chippewa +LOG 26035 2002 8116230 Clare +LOG 26037 2002 322746 Clinton +LOG 26039 2002 7333860 Crawford +LOG 26041 2002 15568992 Delta +LOG 26043 2002 12203879 Dickinson +LOG 26045 2002 977560 Eaton +LOG 26047 2002 5278228 Emmet +LOG 26049 2002 1222478 Genesee +LOG 26051 2002 4659432 Gladwin +LOG 26053 2002 12413646 Gogebic +LOG 26055 2002 4901804 Grand Traverse +LOG 26057 2002 999624 Gratiot +LOG 26059 2002 704286 Hillsdale +LOG 26061 2002 20190651 Houghton +LOG 26063 2002 345765 Huron +LOG 26065 2002 709150 Ingham +LOG 26067 2002 1526991 Ionia +LOG 26069 2002 3701410 Iosco +LOG 26071 2002 23053861 Iron +LOG 26073 2002 2988673 Isabella +LOG 26075 2002 1971056 Jackson +LOG 26077 2002 2223253 Kalamazoo +LOG 26079 2002 7805833 Kalkaska +LOG 26081 2002 5015163 Kent +LOG 26083 2002 6907946 Keweenaw +LOG 26085 2002 6048858 Lake +LOG 26087 2002 721824 Lapeer +LOG 26089 2002 1989310 Leelanau +LOG 26091 2002 1326088 Lenawee +LOG 26093 2002 2845945 Livingston +LOG 26095 2002 10134972 Luce +LOG 26097 2002 12351582 Mackinac +LOG 26099 2002 1183471 Macomb +LOG 26101 2002 6341628 Manistee +LOG 26103 2002 32550167 Marquette +LOG 26105 2002 5278354 Mason +LOG 26107 2002 3300707 Mecosta +LOG 26109 2002 12296394 Menominee +LOG 26111 2002 3900404 Midland +LOG 26113 2002 6815204 Missaukee +LOG 26115 2002 601627 Monroe +LOG 26117 2002 4091946 Montcalm +LOG 26119 2002 7658056 Montmorency +LOG 26121 2002 3418273 Muskegon +LOG 26123 2002 8268624 Newaygo +LOG 26125 2002 3708480 Oakland +LOG 26127 2002 3178760 Oceana +LOG 26129 2002 5668959 Ogemaw +LOG 26131 2002 17281715 Ontonagon +LOG 26133 2002 4943772 Osceola +LOG 26135 2002 8145805 Oscoda +LOG 26137 2002 9763279 Otsego +LOG 26139 2002 5059743 Ottawa +LOG 26141 2002 6363310 Presque Isle +LOG 26143 2002 6182733 Roscommon +LOG 26145 2002 862573 Saginaw +LOG 26147 2002 2163323 St. Clair +LOG 26149 2002 1029379 St. Joseph +LOG 26151 2002 354648 Sanilac +LOG 26153 2002 12092679 Schoolcraft +LOG 26155 2002 546994 Shiawassee +LOG 26157 2002 467330 Tuscola +LOG 26159 2002 1581771 Van Buren +LOG 26161 2002 1512186 Washtenaw +LOG 26163 2002 1271251 Wayne +LOG 26165 2002 6949824 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_LSCAP.ALO new file mode 100644 index 0000000..2de2243 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_LSCAP.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 26000 2002 10310 MI +LSC 26001 2002 6 Alcona +LSC 26003 2002 6 Alger +LSC 26005 2002 116 Allegan +LSC 26007 2002 20 Alpena +LSC 26009 2002 6 Antrim +LSC 26011 2002 6 Arenac +LSC 26013 2002 6 Baraga +LSC 26015 2002 44 Barry +LSC 26017 2002 73 Bay +LSC 26019 2002 6 Benzie +LSC 26021 2002 127 Berrien +LSC 26023 2002 16 Branch +LSC 26025 2002 46 Calhoun +LSC 26027 2002 20 Cass +LSC 26029 2002 17 Charlevoix +LSC 26031 2002 6 Cheboygan +LSC 26033 2002 22 Chippewa +LSC 26035 2002 6 Clare +LSC 26037 2002 121 Clinton +LSC 26039 2002 6 Crawford +LSC 26041 2002 36 Delta +LSC 26043 2002 6 Dickinson +LSC 26045 2002 83 Eaton +LSC 26047 2002 141 Emmet +LSC 26049 2002 442 Genesee +LSC 26051 2002 6 Gladwin +LSC 26053 2002 6 Gogebic +LSC 26055 2002 93 Grand Traverse +LSC 26057 2002 47 Gratiot +LSC 26059 2002 6 Hillsdale +LSC 26061 2002 4 Houghton +LSC 26063 2002 7 Huron +LSC 26065 2002 280 Ingham +LSC 26067 2002 45 Ionia +LSC 26069 2002 2 Iosco +LSC 26071 2002 6 Iron +LSC 26073 2002 492 Isabella +LSC 26075 2002 200 Jackson +LSC 26077 2002 326 Kalamazoo +LSC 26079 2002 6 Kalkaska +LSC 26081 2002 1021 Kent +LSC 26083 2002 0 Keweenaw +LSC 26085 2002 0 Lake +LSC 26087 2002 96 Lapeer +LSC 26089 2002 38 Leelanau +LSC 26091 2002 70 Lenawee +LSC 26093 2002 202 Livingston +LSC 26095 2002 0 Luce +LSC 26097 2002 6 Mackinac +LSC 26099 2002 994 Macomb +LSC 26101 2002 6 Manistee +LSC 26103 2002 11 Marquette +LSC 26105 2002 15 Mason +LSC 26107 2002 6 Mecosta +LSC 26109 2002 6 Menominee +LSC 26111 2002 33 Midland +LSC 26113 2002 6 Missaukee +LSC 26115 2002 90 Monroe +LSC 26117 2002 20 Montcalm +LSC 26119 2002 6 Montmorency +LSC 26121 2002 86 Muskegon +LSC 26123 2002 38 Newaygo +LSC 26125 2002 2084 Oakland +LSC 26127 2002 6 Oceana +LSC 26129 2002 6 Ogemaw +LSC 26131 2002 6 Ontonagon +LSC 26133 2002 6 Osceola +LSC 26135 2002 6 Oscoda +LSC 26137 2002 22 Otsego +LSC 26139 2002 383 Ottawa +LSC 26141 2002 6 Presque Isle +LSC 26143 2002 0 Roscommon +LSC 26145 2002 212 Saginaw +LSC 26147 2002 126 St. Clair +LSC 26149 2002 20 St. Joseph +LSC 26151 2002 6 Sanilac +LSC 26153 2002 0 Schoolcraft +LSC 26155 2002 38 Shiawassee +LSC 26157 2002 38 Tuscola +LSC 26159 2002 38 Van Buren +LSC 26161 2002 420 Washtenaw +LSC 26163 2002 1227 Wayne +LSC 26165 2002 0 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_MNFG.ALO new file mode 100644 index 0000000..4b09fb4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_MNFG.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 26000 2002 1359367 MI +MFG 26001 2002 492 Alcona +MFG 26003 2002 1412 Alger +MFG 26005 2002 29682 Allegan +MFG 26007 2002 3991 Alpena +MFG 26009 2002 2348 Antrim +MFG 26011 2002 1276 Arenac +MFG 26013 2002 889 Baraga +MFG 26015 2002 6946 Barry +MFG 26017 2002 9232 Bay +MFG 26019 2002 609 Benzie +MFG 26021 2002 28755 Berrien +MFG 26023 2002 7041 Branch +MFG 26025 2002 24203 Calhoun +MFG 26027 2002 6686 Cass +MFG 26029 2002 4788 Charlevoix +MFG 26031 2002 1281 Cheboygan +MFG 26033 2002 1246 Chippewa +MFG 26035 2002 1521 Clare +MFG 26037 2002 4259 Clinton +MFG 26039 2002 1409 Crawford +MFG 26041 2002 5467 Delta +MFG 26043 2002 4394 Dickinson +MFG 26045 2002 7065 Eaton +MFG 26047 2002 3746 Emmet +MFG 26049 2002 42495 Genesee +MFG 26051 2002 1909 Gladwin +MFG 26053 2002 1140 Gogebic +MFG 26055 2002 10341 Grand Traverse +MFG 26057 2002 5170 Gratiot +MFG 26059 2002 11169 Hillsdale +MFG 26061 2002 1477 Houghton +MFG 26063 2002 7353 Huron +MFG 26065 2002 34338 Ingham +MFG 26067 2002 6687 Ionia +MFG 26069 2002 2640 Iosco +MFG 26071 2002 789 Iron +MFG 26073 2002 3215 Isabella +MFG 26075 2002 20993 Jackson +MFG 26077 2002 33377 Kalamazoo +MFG 26079 2002 1117 Kalkaska +MFG 26081 2002 138435 Kent +MFG 26083 2002 27 Keweenaw +MFG 26085 2002 199 Lake +MFG 26087 2002 10208 Lapeer +MFG 26089 2002 342 Leelanau +MFG 26091 2002 15640 Lenawee +MFG 26093 2002 18808 Livingston +MFG 26095 2002 321 Luce +MFG 26097 2002 165 Mackinac +MFG 26099 2002 149124 Macomb +MFG 26101 2002 2013 Manistee +MFG 26103 2002 1784 Marquette +MFG 26105 2002 4756 Mason +MFG 26107 2002 2977 Mecosta +MFG 26109 2002 5278 Menominee +MFG 26111 2002 10964 Midland +MFG 26113 2002 1006 Missaukee +MFG 26115 2002 16653 Monroe +MFG 26117 2002 9882 Montcalm +MFG 26119 2002 804 Montmorency +MFG 26121 2002 28489 Muskegon +MFG 26123 2002 2636 Newaygo +MFG 26125 2002 146770 Oakland +MFG 26127 2002 2183 Oceana +MFG 26129 2002 1869 Ogemaw +MFG 26131 2002 766 Ontonagon +MFG 26133 2002 6684 Osceola +MFG 26135 2002 578 Oscoda +MFG 26137 2002 2836 Otsego +MFG 26139 2002 72356 Ottawa +MFG 26141 2002 226 Presque Isle +MFG 26143 2002 1061 Roscommon +MFG 26145 2002 30684 Saginaw +MFG 26147 2002 20042 St. Clair +MFG 26149 2002 16650 St. Joseph +MFG 26151 2002 7290 Sanilac +MFG 26153 2002 553 Schoolcraft +MFG 26155 2002 6312 Shiawassee +MFG 26157 2002 3986 Tuscola +MFG 26159 2002 8446 Van Buren +MFG 26161 2002 42947 Washtenaw +MFG 26163 2002 215577 Wayne +MFG 26165 2002 8092 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_OIL.ALO new file mode 100644 index 0000000..b18fabc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_OIL.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 26000 2002 1138 MI +OIL 26001 2002 0 Alcona +OIL 26003 2002 0 Alger +OIL 26005 2002 12 Allegan +OIL 26007 2002 0 Alpena +OIL 26009 2002 4 Antrim +OIL 26011 2002 12 Arenac +OIL 26013 2002 0 Baraga +OIL 26015 2002 0 Barry +OIL 26017 2002 18 Bay +OIL 26019 2002 0 Benzie +OIL 26021 2002 4 Berrien +OIL 26023 2002 0 Branch +OIL 26025 2002 0 Calhoun +OIL 26027 2002 0 Cass +OIL 26029 2002 4 Charlevoix +OIL 26031 2002 0 Cheboygan +OIL 26033 2002 0 Chippewa +OIL 26035 2002 8 Clare +OIL 26037 2002 12 Clinton +OIL 26039 2002 0 Crawford +OIL 26041 2002 0 Delta +OIL 26043 2002 0 Dickinson +OIL 26045 2002 4 Eaton +OIL 26047 2002 0 Emmet +OIL 26049 2002 8 Genesee +OIL 26051 2002 0 Gladwin +OIL 26053 2002 0 Gogebic +OIL 26055 2002 101 Grand Traverse +OIL 26057 2002 8 Gratiot +OIL 26059 2002 8 Hillsdale +OIL 26061 2002 0 Houghton +OIL 26063 2002 49 Huron +OIL 26065 2002 48 Ingham +OIL 26067 2002 4 Ionia +OIL 26069 2002 0 Iosco +OIL 26071 2002 0 Iron +OIL 26073 2002 170 Isabella +OIL 26075 2002 8 Jackson +OIL 26077 2002 8 Kalamazoo +OIL 26079 2002 76 Kalkaska +OIL 26081 2002 40 Kent +OIL 26083 2002 0 Keweenaw +OIL 26085 2002 0 Lake +OIL 26087 2002 0 Lapeer +OIL 26089 2002 0 Leelanau +OIL 26091 2002 8 Lenawee +OIL 26093 2002 0 Livingston +OIL 26095 2002 0 Luce +OIL 26097 2002 0 Mackinac +OIL 26099 2002 49 Macomb +OIL 26101 2002 49 Manistee +OIL 26103 2002 0 Marquette +OIL 26105 2002 8 Mason +OIL 26107 2002 0 Mecosta +OIL 26109 2002 0 Menominee +OIL 26111 2002 4 Midland +OIL 26113 2002 8 Missaukee +OIL 26115 2002 12 Monroe +OIL 26117 2002 8 Montcalm +OIL 26119 2002 0 Montmorency +OIL 26121 2002 0 Muskegon +OIL 26123 2002 0 Newaygo +OIL 26125 2002 9 Oakland +OIL 26127 2002 8 Oceana +OIL 26129 2002 8 Ogemaw +OIL 26131 2002 0 Ontonagon +OIL 26133 2002 12 Osceola +OIL 26135 2002 4 Oscoda +OIL 26137 2002 249 Otsego +OIL 26139 2002 12 Ottawa +OIL 26141 2002 8 Presque Isle +OIL 26143 2002 4 Roscommon +OIL 26145 2002 4 Saginaw +OIL 26147 2002 12 St. Clair +OIL 26149 2002 8 St. Joseph +OIL 26151 2002 4 Sanilac +OIL 26153 2002 0 Schoolcraft +OIL 26155 2002 4 Shiawassee +OIL 26157 2002 0 Tuscola +OIL 26159 2002 8 Van Buren +OIL 26161 2002 8 Washtenaw +OIL 26163 2002 12 Wayne +OIL 26165 2002 12 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_POP.ALO new file mode 100644 index 0000000..9732646 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_POP.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 26000 2002 10042495 MI +POP 26001 2002 11573 Alcona +POP 26003 2002 9818 Alger +POP 26005 2002 109330 Allegan +POP 26007 2002 30974 Alpena +POP 26009 2002 23863 Antrim +POP 26011 2002 17339 Arenac +POP 26013 2002 8757 Baraga +POP 26015 2002 58192 Barry +POP 26017 2002 109733 Bay +POP 26019 2002 16773 Benzie +POP 26021 2002 162500 Berrien +POP 26023 2002 46517 Branch +POP 26025 2002 138739 Calhoun +POP 26027 2002 51488 Cass +POP 26029 2002 26513 Charlevoix +POP 26031 2002 27267 Cheboygan +POP 26033 2002 38794 Chippewa +POP 26035 2002 31704 Clare +POP 26037 2002 66802 Clinton +POP 26039 2002 14671 Crawford +POP 26041 2002 38439 Delta +POP 26043 2002 27275 Dickinson +POP 26045 2002 105503 Eaton +POP 26047 2002 32504 Emmet +POP 26049 2002 440894 Genesee +POP 26051 2002 26728 Gladwin +POP 26053 2002 17489 Gogebic +POP 26055 2002 81090 Grand Traverse +POP 26057 2002 42316 Gratiot +POP 26059 2002 46998 Hillsdale +POP 26061 2002 35677 Houghton +POP 26063 2002 35400 Huron +POP 26065 2002 280063 Ingham +POP 26067 2002 63193 Ionia +POP 26069 2002 26989 Iosco +POP 26071 2002 12794 Iron +POP 26073 2002 63955 Isabella +POP 26075 2002 161214 Jackson +POP 26077 2002 240420 Kalamazoo +POP 26079 2002 16988 Kalkaska +POP 26081 2002 586576 Kent +POP 26083 2002 2255 Keweenaw +POP 26085 2002 11560 Lake +POP 26087 2002 90765 Lapeer +POP 26089 2002 21569 Leelanau +POP 26091 2002 100458 Lenawee +POP 26093 2002 169038 Livingston +POP 26095 2002 7019 Luce +POP 26097 2002 11590 Mackinac +POP 26099 2002 808001 Macomb +POP 26101 2002 25074 Manistee +POP 26103 2002 64714 Marquette +POP 26105 2002 28731 Mason +POP 26107 2002 41468 Mecosta +POP 26109 2002 25132 Menominee +POP 26111 2002 83815 Midland +POP 26113 2002 14994 Missaukee +POP 26115 2002 149285 Monroe +POP 26117 2002 62552 Montcalm +POP 26119 2002 10485 Montmorency +POP 26121 2002 172232 Muskegon +POP 26123 2002 48926 Newaygo +POP 26125 2002 1203287 Oakland +POP 26127 2002 27756 Oceana +POP 26129 2002 21785 Ogemaw +POP 26131 2002 7698 Ontonagon +POP 26133 2002 23565 Osceola +POP 26135 2002 9453 Oscoda +POP 26137 2002 24135 Otsego +POP 26139 2002 246449 Ottawa +POP 26141 2002 14338 Presque Isle +POP 26143 2002 25857 Roscommon +POP 26145 2002 209851 Saginaw +POP 26147 2002 167434 St. Clair +POP 26149 2002 62434 St. Joseph +POP 26151 2002 44755 Sanilac +POP 26153 2002 8785 Schoolcraft +POP 26155 2002 72233 Shiawassee +POP 26157 2002 58272 Tuscola +POP 26159 2002 77469 Van Buren +POP 26161 2002 332449 Washtenaw +POP 26163 2002 2040153 Wayne +POP 26165 2002 30822 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_RVPRK.ALO new file mode 100644 index 0000000..52d88f4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_RVPRK.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 26000 2002 279 MI +RVP 26001 2002 0 Alcona +RVP 26003 2002 1 Alger +RVP 26005 2002 5 Allegan +RVP 26007 2002 2 Alpena +RVP 26009 2002 1 Antrim +RVP 26011 2002 2 Arenac +RVP 26013 2002 0 Baraga +RVP 26015 2002 5 Barry +RVP 26017 2002 1 Bay +RVP 26019 2002 4 Benzie +RVP 26021 2002 7 Berrien +RVP 26023 2002 1 Branch +RVP 26025 2002 2 Calhoun +RVP 26027 2002 5 Cass +RVP 26029 2002 5 Charlevoix +RVP 26031 2002 5 Cheboygan +RVP 26033 2002 3 Chippewa +RVP 26035 2002 5 Clare +RVP 26037 2002 1 Clinton +RVP 26039 2002 5 Crawford +RVP 26041 2002 2 Delta +RVP 26043 2002 1 Dickinson +RVP 26045 2002 1 Eaton +RVP 26047 2002 4 Emmet +RVP 26049 2002 2 Genesee +RVP 26051 2002 2 Gladwin +RVP 26053 2002 1 Gogebic +RVP 26055 2002 3 Grand Traverse +RVP 26057 2002 0 Gratiot +RVP 26059 2002 4 Hillsdale +RVP 26061 2002 1 Houghton +RVP 26063 2002 3 Huron +RVP 26065 2002 4 Ingham +RVP 26067 2002 1 Ionia +RVP 26069 2002 2 Iosco +RVP 26071 2002 2 Iron +RVP 26073 2002 1 Isabella +RVP 26075 2002 10 Jackson +RVP 26077 2002 2 Kalamazoo +RVP 26079 2002 0 Kalkaska +RVP 26081 2002 8 Kent +RVP 26083 2002 1 Keweenaw +RVP 26085 2002 2 Lake +RVP 26087 2002 7 Lapeer +RVP 26089 2002 6 Leelanau +RVP 26091 2002 2 Lenawee +RVP 26093 2002 4 Livingston +RVP 26095 2002 1 Luce +RVP 26097 2002 3 Mackinac +RVP 26099 2002 4 Macomb +RVP 26101 2002 9 Manistee +RVP 26103 2002 1 Marquette +RVP 26105 2002 9 Mason +RVP 26107 2002 1 Mecosta +RVP 26109 2002 0 Menominee +RVP 26111 2002 1 Midland +RVP 26113 2002 1 Missaukee +RVP 26115 2002 7 Monroe +RVP 26117 2002 5 Montcalm +RVP 26119 2002 0 Montmorency +RVP 26121 2002 9 Muskegon +RVP 26123 2002 3 Newaygo +RVP 26125 2002 15 Oakland +RVP 26127 2002 12 Oceana +RVP 26129 2002 6 Ogemaw +RVP 26131 2002 1 Ontonagon +RVP 26133 2002 3 Osceola +RVP 26135 2002 3 Oscoda +RVP 26137 2002 2 Otsego +RVP 26139 2002 5 Ottawa +RVP 26141 2002 0 Presque Isle +RVP 26143 2002 2 Roscommon +RVP 26145 2002 2 Saginaw +RVP 26147 2002 5 St. Clair +RVP 26149 2002 6 St. Joseph +RVP 26151 2002 4 Sanilac +RVP 26153 2002 2 Schoolcraft +RVP 26155 2002 3 Shiawassee +RVP 26157 2002 2 Tuscola +RVP 26159 2002 4 Van Buren +RVP 26161 2002 6 Washtenaw +RVP 26163 2002 3 Wayne +RVP 26165 2002 3 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_SBC.ALO new file mode 100644 index 0000000..b3f434c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_SBC.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 26000 2002 10310 MI +SBC 26001 2002 11 Alcona +SBC 26003 2002 9 Alger +SBC 26005 2002 116 Allegan +SBC 26007 2002 20 Alpena +SBC 26009 2002 22 Antrim +SBC 26011 2002 16 Arenac +SBC 26013 2002 8 Baraga +SBC 26015 2002 44 Barry +SBC 26017 2002 73 Bay +SBC 26019 2002 16 Benzie +SBC 26021 2002 127 Berrien +SBC 26023 2002 16 Branch +SBC 26025 2002 46 Calhoun +SBC 26027 2002 20 Cass +SBC 26029 2002 17 Charlevoix +SBC 26031 2002 25 Cheboygan +SBC 26033 2002 22 Chippewa +SBC 26035 2002 30 Clare +SBC 26037 2002 121 Clinton +SBC 26039 2002 14 Crawford +SBC 26041 2002 36 Delta +SBC 26043 2002 6 Dickinson +SBC 26045 2002 83 Eaton +SBC 26047 2002 141 Emmet +SBC 26049 2002 442 Genesee +SBC 26051 2002 25 Gladwin +SBC 26053 2002 16 Gogebic +SBC 26055 2002 93 Grand Traverse +SBC 26057 2002 47 Gratiot +SBC 26059 2002 44 Hillsdale +SBC 26061 2002 4 Houghton +SBC 26063 2002 7 Huron +SBC 26065 2002 280 Ingham +SBC 26067 2002 45 Ionia +SBC 26069 2002 2 Iosco +SBC 26071 2002 12 Iron +SBC 26073 2002 60 Isabella +SBC 26075 2002 200 Jackson +SBC 26077 2002 326 Kalamazoo +SBC 26079 2002 16 Kalkaska +SBC 26081 2002 1021 Kent +SBC 26083 2002 0 Keweenaw +SBC 26085 2002 0 Lake +SBC 26087 2002 96 Lapeer +SBC 26089 2002 20 Leelanau +SBC 26091 2002 70 Lenawee +SBC 26093 2002 202 Livingston +SBC 26095 2002 0 Luce +SBC 26097 2002 11 Mackinac +SBC 26099 2002 994 Macomb +SBC 26101 2002 23 Manistee +SBC 26103 2002 11 Marquette +SBC 26105 2002 15 Mason +SBC 26107 2002 39 Mecosta +SBC 26109 2002 23 Menominee +SBC 26111 2002 33 Midland +SBC 26113 2002 14 Missaukee +SBC 26115 2002 90 Monroe +SBC 26117 2002 20 Montcalm +SBC 26119 2002 10 Montmorency +SBC 26121 2002 86 Muskegon +SBC 26123 2002 46 Newaygo +SBC 26125 2002 2084 Oakland +SBC 26127 2002 26 Oceana +SBC 26129 2002 20 Ogemaw +SBC 26131 2002 7 Ontonagon +SBC 26133 2002 22 Osceola +SBC 26135 2002 9 Oscoda +SBC 26137 2002 22 Otsego +SBC 26139 2002 383 Ottawa +SBC 26141 2002 13 Presque Isle +SBC 26143 2002 0 Roscommon +SBC 26145 2002 212 Saginaw +SBC 26147 2002 126 St. Clair +SBC 26149 2002 20 St. Joseph +SBC 26151 2002 42 Sanilac +SBC 26153 2002 0 Schoolcraft +SBC 26155 2002 68 Shiawassee +SBC 26157 2002 54 Tuscola +SBC 26159 2002 73 Van Buren +SBC 26161 2002 420 Washtenaw +SBC 26163 2002 1227 Wayne +SBC 26165 2002 0 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_SBR.ALO new file mode 100644 index 0000000..66c2eb1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_SBR.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 26000 2002 4340564 MI +SBR 26001 2002 10806 Alcona +SBR 26003 2002 6083 Alger +SBR 26005 2002 44986 Allegan +SBR 26007 2002 15434 Alpena +SBR 26009 2002 15693 Antrim +SBR 26011 2002 9730 Arenac +SBR 26013 2002 4712 Baraga +SBR 26015 2002 24535 Barry +SBR 26017 2002 46972 Bay +SBR 26019 2002 10803 Benzie +SBR 26021 2002 74358 Berrien +SBR 26023 2002 20224 Branch +SBR 26025 2002 59504 Calhoun +SBR 26027 2002 24527 Cass +SBR 26029 2002 16158 Charlevoix +SBR 26031 2002 17018 Cheboygan +SBR 26033 2002 19827 Chippewa +SBR 26035 2002 22556 Clare +SBR 26037 2002 26469 Clinton +SBR 26039 2002 10223 Crawford +SBR 26041 2002 19670 Delta +SBR 26043 2002 13803 Dickinson +SBR 26045 2002 43414 Eaton +SBR 26047 2002 19409 Emmet +SBR 26049 2002 189988 Genesee +SBR 26051 2002 17431 Gladwin +SBR 26053 2002 10830 Gogebic +SBR 26055 2002 36634 Grand Traverse +SBR 26057 2002 15690 Gratiot +SBR 26059 2002 20826 Hillsdale +SBR 26061 2002 17802 Houghton +SBR 26063 2002 20732 Huron +SBR 26065 2002 117271 Ingham +SBR 26067 2002 22804 Ionia +SBR 26069 2002 20677 Iosco +SBR 26071 2002 8806 Iron +SBR 26073 2002 26578 Isabella +SBR 26075 2002 64778 Jackson +SBR 26077 2002 102057 Kalamazoo +SBR 26079 2002 11148 Kalkaska +SBR 26081 2002 230323 Kent +SBR 26083 2002 2331 Keweenaw +SBR 26085 2002 13779 Lake +SBR 26087 2002 33863 Lapeer +SBR 26089 2002 13806 Leelanau +SBR 26091 2002 40766 Lenawee +SBR 26093 2002 64548 Livingston +SBR 26095 2002 4070 Luce +SBR 26097 2002 9598 Mackinac +SBR 26099 2002 332600 Macomb +SBR 26101 2002 14653 Manistee +SBR 26103 2002 33203 Marquette +SBR 26105 2002 16367 Mason +SBR 26107 2002 20228 Mecosta +SBR 26109 2002 13875 Menominee +SBR 26111 2002 34608 Midland +SBR 26113 2002 8832 Missaukee +SBR 26115 2002 59195 Monroe +SBR 26117 2002 26486 Montcalm +SBR 26119 2002 9406 Montmorency +SBR 26121 2002 70428 Muskegon +SBR 26123 2002 23830 Newaygo +SBR 26125 2002 504536 Oakland +SBR 26127 2002 15327 Oceana +SBR 26129 2002 15623 Ogemaw +SBR 26131 2002 5430 Ontonagon +SBR 26133 2002 13144 Osceola +SBR 26135 2002 8990 Oscoda +SBR 26137 2002 14041 Otsego +SBR 26139 2002 91497 Ottawa +SBR 26141 2002 10122 Presque Isle +SBR 26143 2002 23761 Roscommon +SBR 26145 2002 86985 Saginaw +SBR 26147 2002 70269 St. Clair +SBR 26149 2002 26924 St. Joseph +SBR 26151 2002 21721 Sanilac +SBR 26153 2002 5786 Schoolcraft +SBR 26155 2002 29740 Shiawassee +SBR 26157 2002 23763 Tuscola +SBR 26159 2002 34904 Van Buren +SBR 26161 2002 137045 Washtenaw +SBR 26163 2002 827818 Wayne +SBR 26165 2002 15377 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_SNOWM.ALO new file mode 100644 index 0000000..09a79a6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_SNOWM.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 26000 2002 3261 MI +SNM 26001 2002 86 Alcona +SNM 26003 2002 102 Alger +SNM 26005 2002 9 Allegan +SNM 26007 2002 32 Alpena +SNM 26009 2002 42 Antrim +SNM 26011 2002 58 Arenac +SNM 26013 2002 114 Baraga +SNM 26015 2002 17 Barry +SNM 26017 2002 0 Bay +SNM 26019 2002 60 Benzie +SNM 26021 2002 6 Berrien +SNM 26023 2002 21 Branch +SNM 26025 2002 7 Calhoun +SNM 26027 2002 19 Cass +SNM 26029 2002 38 Charlevoix +SNM 26031 2002 37 Cheboygan +SNM 26033 2002 26 Chippewa +SNM 26035 2002 32 Clare +SNM 26037 2002 15 Clinton +SNM 26039 2002 68 Crawford +SNM 26041 2002 26 Delta +SNM 26043 2002 37 Dickinson +SNM 26045 2002 9 Eaton +SNM 26047 2002 31 Emmet +SNM 26049 2002 0 Genesee +SNM 26051 2002 37 Gladwin +SNM 26053 2002 57 Gogebic +SNM 26055 2002 12 Grand Traverse +SNM 26057 2002 24 Gratiot +SNM 26059 2002 21 Hillsdale +SNM 26061 2002 28 Houghton +SNM 26063 2002 28 Huron +SNM 26065 2002 0 Ingham +SNM 26067 2002 16 Ionia +SNM 26069 2002 37 Iosco +SNM 26071 2002 78 Iron +SNM 26073 2002 16 Isabella +SNM 26075 2002 6 Jackson +SNM 26077 2002 0 Kalamazoo +SNM 26079 2002 59 Kalkaska +SNM 26081 2002 0 Kent +SNM 26083 2002 443 Keweenaw +SNM 26085 2002 87 Lake +SNM 26087 2002 11 Lapeer +SNM 26089 2002 46 Leelanau +SNM 26091 2002 10 Lenawee +SNM 26093 2002 6 Livingston +SNM 26095 2002 142 Luce +SNM 26097 2002 86 Mackinac +SNM 26099 2002 0 Macomb +SNM 26101 2002 40 Manistee +SNM 26103 2002 15 Marquette +SNM 26105 2002 35 Mason +SNM 26107 2002 24 Mecosta +SNM 26109 2002 40 Menominee +SNM 26111 2002 12 Midland +SNM 26113 2002 67 Missaukee +SNM 26115 2002 7 Monroe +SNM 26117 2002 16 Montcalm +SNM 26119 2002 95 Montmorency +SNM 26121 2002 0 Muskegon +SNM 26123 2002 20 Newaygo +SNM 26125 2002 0 Oakland +SNM 26127 2002 36 Oceana +SNM 26129 2002 46 Ogemaw +SNM 26131 2002 130 Ontonagon +SNM 26133 2002 42 Osceola +SNM 26135 2002 106 Oscoda +SNM 26137 2002 41 Otsego +SNM 26139 2002 4 Ottawa +SNM 26141 2002 70 Presque Isle +SNM 26143 2002 39 Roscommon +SNM 26145 2002 0 Saginaw +SNM 26147 2002 6 St. Clair +SNM 26149 2002 16 St. Joseph +SNM 26151 2002 22 Sanilac +SNM 26153 2002 114 Schoolcraft +SNM 26155 2002 14 Shiawassee +SNM 26157 2002 17 Tuscola +SNM 26159 2002 13 Van Buren +SNM 26161 2002 0 Washtenaw +SNM 26163 2002 0 Wayne +SNM 26165 2002 32 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_WIB.ALO new file mode 100644 index 0000000..93103ff --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_WIB.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 26000 1990 15352 MI +WIB 26001 1990 180 Alcona +WIB 26003 1990 477 Alger +WIB 26005 1990 168 Allegan +WIB 26007 1990 559 Alpena +WIB 26009 1990 256 Antrim +WIB 26011 1990 191 Arenac +WIB 26013 1990 411 Baraga +WIB 26015 1990 54 Barry +WIB 26017 1990 190 Bay +WIB 26019 1990 195 Benzie +WIB 26021 1990 240 Berrien +WIB 26023 1990 31 Branch +WIB 26025 1990 25 Calhoun +WIB 26027 1990 42 Cass +WIB 26029 1990 215 Charlevoix +WIB 26031 1990 373 Cheboygan +WIB 26033 1990 1107 Chippewa +WIB 26035 1990 22 Clare +WIB 26037 1990 8 Clinton +WIB 26039 1990 14 Crawford +WIB 26041 1990 829 Delta +WIB 26043 1990 28 Dickinson +WIB 26045 1990 7 Eaton +WIB 26047 1990 364 Emmet +WIB 26049 1990 25 Genesee +WIB 26051 1990 25 Gladwin +WIB 26053 1990 261 Gogebic +WIB 26055 1990 341 Grand Traverse +WIB 26057 1990 4 Gratiot +WIB 26059 1990 22 Hillsdale +WIB 26061 1990 426 Houghton +WIB 26063 1990 445 Huron +WIB 26065 1990 5 Ingham +WIB 26067 1990 18 Ionia +WIB 26069 1990 224 Iosco +WIB 26071 1990 116 Iron +WIB 26073 1990 9 Isabella +WIB 26075 1990 44 Jackson +WIB 26077 1990 47 Kalamazoo +WIB 26079 1990 25 Kalkaska +WIB 26081 1990 41 Kent +WIB 26083 1990 548 Keweenaw +WIB 26085 1990 18 Lake +WIB 26087 1990 23 Lapeer +WIB 26089 1990 572 Leelanau +WIB 26091 1990 28 Lenawee +WIB 26093 1990 44 Livingston +WIB 26095 1990 226 Luce +WIB 26097 1990 881 Mackinac +WIB 26099 1990 138 Macomb +WIB 26101 1990 206 Manistee +WIB 26103 1990 480 Marquette +WIB 26105 1990 202 Mason +WIB 26107 1990 40 Mecosta +WIB 26109 1990 234 Menominee +WIB 26111 1990 17 Midland +WIB 26113 1990 18 Missaukee +WIB 26115 1990 265 Monroe +WIB 26117 1990 33 Montcalm +WIB 26119 1990 38 Montmorency +WIB 26121 1990 306 Muskegon +WIB 26123 1990 49 Newaygo +WIB 26125 1990 92 Oakland +WIB 26127 1990 172 Oceana +WIB 26129 1990 27 Ogemaw +WIB 26131 1990 321 Ontonagon +WIB 26133 1990 18 Osceola +WIB 26135 1990 17 Oscoda +WIB 26137 1990 30 Otsego +WIB 26139 1990 226 Ottawa +WIB 26141 1990 397 Presque Isle +WIB 26143 1990 151 Roscommon +WIB 26145 1990 18 Saginaw +WIB 26147 1990 345 St. Clair +WIB 26149 1990 45 St. Joseph +WIB 26151 1990 192 Sanilac +WIB 26153 1990 341 Schoolcraft +WIB 26155 1990 5 Shiawassee +WIB 26157 1990 109 Tuscola +WIB 26159 1990 100 Van Buren +WIB 26161 1990 32 Washtenaw +WIB 26163 1990 257 Wayne +WIB 26165 1990 27 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_WOB.ALO new file mode 100644 index 0000000..76899b9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_WOB.ALO @@ -0,0 +1,108 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 26000 1990 5779 MI +WOB 26001 1990 68 Alcona +WOB 26003 1990 126 Alger +WOB 26005 1990 56 Allegan +WOB 26007 1990 341 Alpena +WOB 26009 1990 141 Antrim +WOB 26011 1990 34 Arenac +WOB 26013 1990 107 Baraga +WOB 26015 1990 54 Barry +WOB 26017 1990 36 Bay +WOB 26019 1990 84 Benzie +WOB 26021 1990 51 Berrien +WOB 26023 1990 31 Branch +WOB 26025 1990 25 Calhoun +WOB 26027 1990 42 Cass +WOB 26029 1990 117 Charlevoix +WOB 26031 1990 232 Cheboygan +WOB 26033 1990 392 Chippewa +WOB 26035 1990 22 Clare +WOB 26037 1990 8 Clinton +WOB 26039 1990 14 Crawford +WOB 26041 1990 162 Delta +WOB 26043 1990 28 Dickinson +WOB 26045 1990 7 Eaton +WOB 26047 1990 82 Emmet +WOB 26049 1990 25 Genesee +WOB 26051 1990 25 Gladwin +WOB 26053 1990 128 Gogebic +WOB 26055 1990 102 Grand Traverse +WOB 26057 1990 4 Gratiot +WOB 26059 1990 22 Hillsdale +WOB 26061 1990 122 Houghton +WOB 26063 1990 76 Huron +WOB 26065 1990 5 Ingham +WOB 26067 1990 18 Ionia +WOB 26069 1990 67 Iosco +WOB 26071 1990 116 Iron +WOB 26073 1990 9 Isabella +WOB 26075 1990 44 Jackson +WOB 26077 1990 47 Kalamazoo +WOB 26079 1990 25 Kalkaska +WOB 26081 1990 41 Kent +WOB 26083 1990 177 Keweenaw +WOB 26085 1990 18 Lake +WOB 26087 1990 23 Lapeer +WOB 26089 1990 143 Leelanau +WOB 26091 1990 28 Lenawee +WOB 26093 1990 44 Livingston +WOB 26095 1990 83 Luce +WOB 26097 1990 271 Mackinac +WOB 26099 1990 24 Macomb +WOB 26101 1990 56 Manistee +WOB 26103 1990 177 Marquette +WOB 26105 1990 60 Mason +WOB 26107 1990 40 Mecosta +WOB 26109 1990 48 Menominee +WOB 26111 1990 17 Midland +WOB 26113 1990 18 Missaukee +WOB 26115 1990 64 Monroe +WOB 26117 1990 33 Montcalm +WOB 26119 1990 38 Montmorency +WOB 26121 1990 79 Muskegon +WOB 26123 1990 49 Newaygo +WOB 26125 1990 92 Oakland +WOB 26127 1990 35 Oceana +WOB 26129 1990 27 Ogemaw +WOB 26131 1990 79 Ontonagon +WOB 26133 1990 18 Osceola +WOB 26135 1990 17 Oscoda +WOB 26137 1990 30 Otsego +WOB 26139 1990 55 Ottawa +WOB 26141 1990 113 Presque Isle +WOB 26143 1990 151 Roscommon +WOB 26145 1990 18 Saginaw +WOB 26147 1990 101 St. Clair +WOB 26149 1990 45 St. Joseph +WOB 26151 1990 25 Sanilac +WOB 26153 1990 142 Schoolcraft +WOB 26155 1990 5 Shiawassee +WOB 26157 1990 23 Tuscola +WOB 26159 1990 40 Van Buren +WOB 26161 1990 32 Washtenaw +WOB 26163 1990 78 Wayne +WOB 26165 1990 27 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MI_rail.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MI_rail.ALO new file mode 100644 index 0000000..c81c92c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MI_rail.ALO @@ -0,0 +1,110 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 26000 2002 8138.730 MI +RR 26001 2002 0.000 Alcona +RR 26003 2002 0.000 Alger +RR 26005 2002 78.100 Allegan +RR 26007 2002 0.000 Alpena +RR 26009 2002 0.000 Antrim +RR 26011 2002 0.000 Arenac +RR 26013 2002 0.000 Baraga +RR 26015 2002 62.370 Barry +RR 26017 2002 8.200 Bay +RR 26019 2002 0.000 Benzie +RR 26021 2002 68.820 Berrien +RR 26023 2002 0.000 Branch +RR 26025 2002 453.380 Calhoun +RR 26027 2002 256.020 Cass +RR 26029 2002 0.000 Charlevoix +RR 26031 2002 0.000 Cheboygan +RR 26033 2002 0.000 Chippewa +RR 26035 2002 0.000 Clare +RR 26037 2002 29.600 Clinton +RR 26039 2002 0.000 Crawford +RR 26041 2002 0.000 Delta +RR 26043 2002 0.000 Dickinson +RR 26045 2002 544.880 Eaton +RR 26047 2002 0.000 Emmet +RR 26049 2002 459.860 Genesee +RR 26051 2002 0.000 Gladwin +RR 26053 2002 0.000 Gogebic +RR 26055 2002 0.000 Grand Traverse +RR 26057 2002 0.000 Gratiot +RR 26059 2002 0.000 Hillsdale +RR 26061 2002 0.000 Houghton +RR 26063 2002 0.000 Huron +RR 26065 2002 642.070 Ingham +RR 26067 2002 62.370 Ionia +RR 26069 2002 0.000 Iosco +RR 26071 2002 0.000 Iron +RR 26073 2002 0.000 Isabella +RR 26075 2002 27.940 Jackson +RR 26077 2002 679.120 Kalamazoo +RR 26079 2002 0.000 Kalkaska +RR 26081 2002 254.870 Kent +RR 26083 2002 0.000 Keweenaw +RR 26085 2002 16.740 Lake +RR 26087 2002 344.950 Lapeer +RR 26089 2002 0.000 Leelanau +RR 26091 2002 240.960 Lenawee +RR 26093 2002 86.490 Livingston +RR 26095 2002 0.000 Luce +RR 26097 2002 0.000 Mackinac +RR 26099 2002 134.210 Macomb +RR 26101 2002 9.790 Manistee +RR 26103 2002 0.000 Marquette +RR 26105 2002 17.230 Mason +RR 26107 2002 0.000 Mecosta +RR 26109 2002 0.000 Menominee +RR 26111 2002 8.860 Midland +RR 26113 2002 0.000 Missaukee +RR 26115 2002 634.050 Monroe +RR 26117 2002 0.000 Montcalm +RR 26119 2002 0.000 Montmorency +RR 26121 2002 35.410 Muskegon +RR 26123 2002 28.300 Newaygo +RR 26125 2002 529.290 Oakland +RR 26127 2002 0.000 Oceana +RR 26129 2002 0.000 Ogemaw +RR 26131 2002 0.000 Ontonagon +RR 26133 2002 0.000 Osceola +RR 26135 2002 0.000 Oscoda +RR 26137 2002 0.000 Otsego +RR 26139 2002 133.570 Ottawa +RR 26141 2002 0.000 Presque Isle +RR 26143 2002 0.000 Roscommon +RR 26145 2002 108.320 Saginaw +RR 26147 2002 259.320 St. Clair +RR 26149 2002 264.690 St. Joseph +RR 26151 2002 0.000 Sanilac +RR 26153 2002 0.000 Schoolcraft +RR 26155 2002 333.450 Shiawassee +RR 26157 2002 0.000 Tuscola +RR 26159 2002 104.460 Van Buren +RR 26161 2002 143.410 Washtenaw +RR 26163 2002 1077.630 Wayne +RR 26165 2002 0.000 Wexford +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_AIRTR.ALO new file mode 100644 index 0000000..b7e4c89 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_AIRTR.ALO @@ -0,0 +1,114 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 27000 2002 1307.324 MN +AIR 27001 2002 0.040 Aitkin +AIR 27003 2002 0.668 Anoka +AIR 27005 2002 0.114 Becker +AIR 27007 2002 0.000 Beltrami +AIR 27009 2002 0.000 Benton +AIR 27011 2002 0.040 Big Stone +AIR 27013 2002 0.230 Blue Earth +AIR 27015 2002 0.220 Brown +AIR 27017 2002 0.012 Carlton +AIR 27019 2002 0.000 Carver +AIR 27021 2002 0.000 Cass +AIR 27023 2002 0.051 Chippewa +AIR 27025 2002 0.000 Chisago +AIR 27027 2002 0.030 Clay +AIR 27029 2002 0.000 Clearwater +AIR 27031 2002 0.010 Cook +AIR 27033 2002 0.040 Cottonwood +AIR 27035 2002 0.250 Crow Wing +AIR 27037 2002 0.000 Dakota +AIR 27039 2002 0.000 Dodge +AIR 27041 2002 0.187 Douglas +AIR 27043 2002 0.050 Faribault +AIR 27045 2002 0.000 Fillmore +AIR 27047 2002 0.130 Freeborn +AIR 27049 2002 0.000 Goodhue +AIR 27051 2002 0.000 Grant +AIR 27053 2002 1214.150 Hennepin +AIR 27055 2002 0.010 Houston +AIR 27057 2002 0.111 Hubbard +AIR 27059 2002 0.064 Isanti +AIR 27061 2002 0.183 Itasca +AIR 27063 2002 0.030 Jackson +AIR 27065 2002 0.000 Kanabec +AIR 27067 2002 0.062 Kandiyohi +AIR 27069 2002 0.000 Kittson +AIR 27071 2002 0.504 Koochiching +AIR 27073 2002 0.000 Lac qui Parle +AIR 27075 2002 0.030 Lake +AIR 27077 2002 0.093 Lake of the Woods +AIR 27079 2002 0.000 Le Sueur +AIR 27081 2002 0.000 Lincoln +AIR 27083 2002 0.344 Lyon +AIR 27085 2002 0.049 McLeod +AIR 27087 2002 0.000 Mahnomen +AIR 27089 2002 0.000 Marshall +AIR 27091 2002 0.141 Martin +AIR 27093 2002 0.000 Meeker +AIR 27095 2002 0.070 Mille Lacs +AIR 27097 2002 0.042 Morrison +AIR 27099 2002 0.075 Mower +AIR 27101 2002 0.000 Murray +AIR 27103 2002 0.000 Nicollet +AIR 27105 2002 0.040 Nobles +AIR 27107 2002 0.000 Norman +AIR 27109 2002 39.950 Olmsted +AIR 27111 2002 0.134 Otter Tail +AIR 27113 2002 6.654 Pennington +AIR 27115 2002 0.000 Pine +AIR 27117 2002 0.121 Pipestone +AIR 27119 2002 0.192 Polk +AIR 27121 2002 0.000 Pope +AIR 27123 2002 1.250 Ramsey +AIR 27125 2002 0.000 Red Lake +AIR 27127 2002 0.060 Redwood +AIR 27129 2002 0.000 Renville +AIR 27131 2002 0.016 Rice +AIR 27133 2002 0.000 Rock +AIR 27135 2002 0.100 Roseau +AIR 27137 2002 39.690 St. Louis +AIR 27139 2002 0.000 Scott +AIR 27141 2002 0.570 Sherburne +AIR 27143 2002 0.000 Sibley +AIR 27145 2002 0.000 Stearns +AIR 27147 2002 0.137 Steele +AIR 27149 2002 0.030 Stevens +AIR 27151 2002 0.014 Swift +AIR 27153 2002 0.000 Todd +AIR 27155 2002 0.008 Traverse +AIR 27157 2002 0.000 Wabasha +AIR 27159 2002 0.020 Wadena +AIR 27161 2002 0.010 Waseca +AIR 27163 2002 0.234 Washington +AIR 27165 2002 0.000 Watonwan +AIR 27167 2002 0.000 Wilkin +AIR 27169 2002 0.061 Winona +AIR 27171 2002 0.000 Wright +AIR 27173 2002 0.000 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_COAL.ALO new file mode 100644 index 0000000..ffb783e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_COAL.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 27000 2002 0 MN +MIN 27001 2002 0 Aitkin +MIN 27003 2002 0 Anoka +MIN 27005 2002 0 Becker +MIN 27007 2002 0 Beltrami +MIN 27009 2002 0 Benton +MIN 27011 2002 0 Big Stone +MIN 27013 2002 0 Blue Earth +MIN 27015 2002 0 Brown +MIN 27017 2002 0 Carlton +MIN 27019 2002 0 Carver +MIN 27021 2002 0 Cass +MIN 27023 2002 0 Chippewa +MIN 27025 2002 0 Chisago +MIN 27027 2002 0 Clay +MIN 27029 2002 0 Clearwater +MIN 27031 2002 0 Cook +MIN 27033 2002 0 Cottonwood +MIN 27035 2002 0 Crow Wing +MIN 27037 2002 0 Dakota +MIN 27039 2002 0 Dodge +MIN 27041 2002 0 Douglas +MIN 27043 2002 0 Faribault +MIN 27045 2002 0 Fillmore +MIN 27047 2002 0 Freeborn +MIN 27049 2002 0 Goodhue +MIN 27051 2002 0 Grant +MIN 27053 2002 0 Hennepin +MIN 27055 2002 0 Houston +MIN 27057 2002 0 Hubbard +MIN 27059 2002 0 Isanti +MIN 27061 2002 0 Itasca +MIN 27063 2002 0 Jackson +MIN 27065 2002 0 Kanabec +MIN 27067 2002 0 Kandiyohi +MIN 27069 2002 0 Kittson +MIN 27071 2002 0 Koochiching +MIN 27073 2002 0 Lac qui Parle +MIN 27075 2002 0 Lake +MIN 27077 2002 0 Lake of the Woods +MIN 27079 2002 0 Le Sueur +MIN 27081 2002 0 Lincoln +MIN 27083 2002 0 Lyon +MIN 27085 2002 0 McLeod +MIN 27087 2002 0 Mahnomen +MIN 27089 2002 0 Marshall +MIN 27091 2002 0 Martin +MIN 27093 2002 0 Meeker +MIN 27095 2002 0 Mille Lacs +MIN 27097 2002 0 Morrison +MIN 27099 2002 0 Mower +MIN 27101 2002 0 Murray +MIN 27103 2002 0 Nicollet +MIN 27105 2002 0 Nobles +MIN 27107 2002 0 Norman +MIN 27109 2002 0 Olmsted +MIN 27111 2002 0 Otter Tail +MIN 27113 2002 0 Pennington +MIN 27115 2002 0 Pine +MIN 27117 2002 0 Pipestone +MIN 27119 2002 0 Polk +MIN 27121 2002 0 Pope +MIN 27123 2002 0 Ramsey +MIN 27125 2002 0 Red Lake +MIN 27127 2002 0 Redwood +MIN 27129 2002 0 Renville +MIN 27131 2002 0 Rice +MIN 27133 2002 0 Rock +MIN 27135 2002 0 Roseau +MIN 27137 2002 0 St. Louis +MIN 27139 2002 0 Scott +MIN 27141 2002 0 Sherburne +MIN 27143 2002 0 Sibley +MIN 27145 2002 0 Stearns +MIN 27147 2002 0 Steele +MIN 27149 2002 0 Stevens +MIN 27151 2002 0 Swift +MIN 27153 2002 0 Todd +MIN 27155 2002 0 Traverse +MIN 27157 2002 0 Wabasha +MIN 27159 2002 0 Wadena +MIN 27161 2002 0 Waseca +MIN 27163 2002 0 Washington +MIN 27165 2002 0 Watonwan +MIN 27167 2002 0 Wilkin +MIN 27169 2002 0 Winona +MIN 27171 2002 0 Wright +MIN 27173 2002 0 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_CONST.ALO new file mode 100644 index 0000000..c624bba --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_CONST.ALO @@ -0,0 +1,114 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 27000 2003 10636156 MN +CON 27001 2003 39667 Aitkin +CON 27003 2003 619891 Anoka +CON 27005 2003 59662 Becker +CON 27007 2003 46377 Beltrami +CON 27009 2003 65267 Benton +CON 27011 2003 3278 Big Stone +CON 27013 2003 116448 Blue Earth +CON 27015 2003 30139 Brown +CON 27017 2003 58742 Carlton +CON 27019 2003 311597 Carver +CON 27021 2003 84618 Cass +CON 27023 2003 4697 Chippewa +CON 27025 2003 137105 Chisago +CON 27027 2003 98872 Clay +CON 27029 2003 6643 Clearwater +CON 27031 2003 23434 Cook +CON 27033 2003 11038 Cottonwood +CON 27035 2003 186078 Crow Wing +CON 27037 2003 901420 Dakota +CON 27039 2003 28105 Dodge +CON 27041 2003 85647 Douglas +CON 27043 2003 10364 Faribault +CON 27045 2003 35107 Fillmore +CON 27047 2003 26918 Freeborn +CON 27049 2003 85830 Goodhue +CON 27051 2003 7600 Grant +CON 27053 2003 2151941 Hennepin +CON 27055 2003 11663 Houston +CON 27057 2003 16375 Hubbard +CON 27059 2003 76329 Isanti +CON 27061 2003 97290 Itasca +CON 27063 2003 18651 Jackson +CON 27065 2003 18100 Kanabec +CON 27067 2003 101671 Kandiyohi +CON 27069 2003 4988 Kittson +CON 27071 2003 17460 Koochiching +CON 27073 2003 11600 Lac qui Parle +CON 27075 2003 42378 Lake +CON 27077 2003 3329 Lake of the Woods +CON 27079 2003 31493 Le Sueur +CON 27081 2003 3795 Lincoln +CON 27083 2003 39188 Lyon +CON 27085 2003 102801 McLeod +CON 27087 2003 8561 Mahnomen +CON 27089 2003 6993 Marshall +CON 27091 2003 11830 Martin +CON 27093 2003 35326 Meeker +CON 27095 2003 49229 Mille Lacs +CON 27097 2003 74352 Morrison +CON 27099 2003 31034 Mower +CON 27101 2003 10339 Murray +CON 27103 2003 47377 Nicollet +CON 27105 2003 17709 Nobles +CON 27107 2003 6853 Norman +CON 27109 2003 620495 Olmsted +CON 27111 2003 53929 Otter Tail +CON 27113 2003 11839 Pennington +CON 27115 2003 39993 Pine +CON 27117 2003 5553 Pipestone +CON 27119 2003 44092 Polk +CON 27121 2003 40500 Pope +CON 27123 2003 717081 Ramsey +CON 27125 2003 5978 Red Lake +CON 27127 2003 9068 Redwood +CON 27129 2003 5632 Renville +CON 27131 2003 124571 Rice +CON 27133 2003 25074 Rock +CON 27135 2003 15100 Roseau +CON 27137 2003 265424 St. Louis +CON 27139 2003 525070 Scott +CON 27141 2003 275758 Sherburne +CON 27143 2003 13700 Sibley +CON 27145 2003 351019 Stearns +CON 27147 2003 54001 Steele +CON 27149 2003 9424 Stevens +CON 27151 2003 9300 Swift +CON 27153 2003 14887 Todd +CON 27155 2003 8204 Traverse +CON 27157 2003 40332 Wabasha +CON 27159 2003 11901 Wadena +CON 27161 2003 22149 Waseca +CON 27163 2003 659401 Washington +CON 27165 2003 6576 Watonwan +CON 27167 2003 14179 Wilkin +CON 27169 2003 51597 Winona +CON 27171 2003 441427 Wright +CON 27173 2003 9704 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_FARMS.ALO new file mode 100644 index 0000000..fdf8955 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_FARMS.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 27000 2002 19398309 MN +FRM 27001 2002 61914 Aitkin +FRM 27003 2002 34894 Anoka +FRM 27005 2002 233827 Becker +FRM 27007 2002 78231 Beltrami +FRM 27009 2002 125950 Benton +FRM 27011 2002 225309 Big Stone +FRM 27013 2002 355277 Blue Earth +FRM 27015 2002 292867 Brown +FRM 27017 2002 41141 Carlton +FRM 27019 2002 135300 Carver +FRM 27021 2002 65923 Cass +FRM 27023 2002 275276 Chippewa +FRM 27025 2002 64296 Chisago +FRM 27027 2002 486830 Clay +FRM 27029 2002 82691 Clearwater +FRM 27031 2002 619 Cook +FRM 27033 2002 326562 Cottonwood +FRM 27035 2002 45905 Crow Wing +FRM 27037 2002 191924 Dakota +FRM 27039 2002 201727 Dodge +FRM 27041 2002 158312 Douglas +FRM 27043 2002 397311 Faribault +FRM 27045 2002 293418 Fillmore +FRM 27047 2002 336949 Freeborn +FRM 27049 2002 281211 Goodhue +FRM 27051 2002 251848 Grant +FRM 27053 2002 44202 Hennepin +FRM 27055 2002 119661 Houston +FRM 27057 2002 56755 Hubbard +FRM 27059 2002 83139 Isanti +FRM 27061 2002 37707 Itasca +FRM 27063 2002 349930 Jackson +FRM 27065 2002 68892 Kanabec +FRM 27067 2002 308266 Kandiyohi +FRM 27069 2002 331662 Kittson +FRM 27071 2002 24470 Koochiching +FRM 27073 2002 348288 Lac qui Parle +FRM 27075 2002 1818 Lake +FRM 27077 2002 47205 Lake of the Woods +FRM 27079 2002 181878 Le Sueur +FRM 27081 2002 196797 Lincoln +FRM 27083 2002 340258 Lyon +FRM 27085 2002 223521 McLeod +FRM 27087 2002 119820 Mahnomen +FRM 27089 2002 547457 Marshall +FRM 27091 2002 387332 Martin +FRM 27093 2002 258724 Meeker +FRM 27095 2002 65093 Mille Lacs +FRM 27097 2002 216309 Morrison +FRM 27099 2002 371272 Mower +FRM 27101 2002 353805 Murray +FRM 27103 2002 224036 Nicollet +FRM 27105 2002 353112 Nobles +FRM 27107 2002 391763 Norman +FRM 27109 2002 219914 Olmsted +FRM 27111 2002 480798 Otter Tail +FRM 27113 2002 176235 Pennington +FRM 27115 2002 98191 Pine +FRM 27117 2002 185056 Pipestone +FRM 27119 2002 792010 Polk +FRM 27121 2002 237416 Pope +FRM 27123 2002 212 Ramsey +FRM 27125 2002 141044 Red Lake +FRM 27127 2002 486914 Redwood +FRM 27129 2002 597922 Renville +FRM 27131 2002 178957 Rice +FRM 27133 2002 254817 Rock +FRM 27135 2002 257026 Roseau +FRM 27137 2002 66379 St. Louis +FRM 27139 2002 97847 Scott +FRM 27141 2002 83385 Sherburne +FRM 27143 2002 293803 Sibley +FRM 27145 2002 453031 Stearns +FRM 27147 2002 238805 Steele +FRM 27149 2002 267238 Stevens +FRM 27151 2002 336294 Swift +FRM 27153 2002 183200 Todd +FRM 27155 2002 305913 Traverse +FRM 27157 2002 166005 Wabasha +FRM 27159 2002 67876 Wadena +FRM 27161 2002 200270 Waseca +FRM 27163 2002 59921 Washington +FRM 27165 2002 243337 Watonwan +FRM 27167 2002 382261 Wilkin +FRM 27169 2002 181548 Winona +FRM 27171 2002 188139 Wright +FRM 27173 2002 377861 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_GOLF.ALO new file mode 100644 index 0000000..83ca627 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_GOLF.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 27000 2002 357 MN +GC 27001 2002 1 Aitkin +GC 27003 2002 10 Anoka +GC 27005 2002 6 Becker +GC 27007 2002 4 Beltrami +GC 27009 2002 4 Benton +GC 27011 2002 1 Big Stone +GC 27013 2002 4 Blue Earth +GC 27015 2002 2 Brown +GC 27017 2002 7 Carlton +GC 27019 2002 7 Carver +GC 27021 2002 8 Cass +GC 27023 2002 1 Chippewa +GC 27025 2002 5 Chisago +GC 27027 2002 4 Clay +GC 27029 2002 1 Clearwater +GC 27031 2002 1 Cook +GC 27033 2002 3 Cottonwood +GC 27035 2002 7 Crow Wing +GC 27037 2002 18 Dakota +GC 27039 2002 2 Dodge +GC 27041 2002 5 Douglas +GC 27043 2002 3 Faribault +GC 27045 2002 6 Fillmore +GC 27047 2002 5 Freeborn +GC 27049 2002 7 Goodhue +GC 27051 2002 2 Grant +GC 27053 2002 31 Hennepin +GC 27055 2002 1 Houston +GC 27057 2002 3 Hubbard +GC 27059 2002 3 Isanti +GC 27061 2002 3 Itasca +GC 27063 2002 2 Jackson +GC 27065 2002 1 Kanabec +GC 27067 2002 6 Kandiyohi +GC 27069 2002 1 Kittson +GC 27071 2002 1 Koochiching +GC 27073 2002 2 Lac qui Parle +GC 27075 2002 1 Lake +GC 27077 2002 1 Lake of the Woods +GC 27079 2002 2 Le Sueur +GC 27081 2002 2 Lincoln +GC 27083 2002 4 Lyon +GC 27085 2002 4 McLeod +GC 27087 2002 1 Mahnomen +GC 27089 2002 2 Marshall +GC 27091 2002 4 Martin +GC 27093 2002 0 Meeker +GC 27095 2002 7 Mille Lacs +GC 27097 2002 1 Morrison +GC 27099 2002 4 Mower +GC 27101 2002 2 Murray +GC 27103 2002 2 Nicollet +GC 27105 2002 2 Nobles +GC 27107 2002 1 Norman +GC 27109 2002 5 Olmsted +GC 27111 2002 9 Otter Tail +GC 27113 2002 1 Pennington +GC 27115 2002 2 Pine +GC 27117 2002 0 Pipestone +GC 27119 2002 5 Polk +GC 27121 2002 3 Pope +GC 27123 2002 14 Ramsey +GC 27125 2002 1 Red Lake +GC 27127 2002 2 Redwood +GC 27129 2002 3 Renville +GC 27131 2002 5 Rice +GC 27133 2002 1 Rock +GC 27135 2002 2 Roseau +GC 27137 2002 12 St. Louis +GC 27139 2002 7 Scott +GC 27141 2002 3 Sherburne +GC 27143 2002 1 Sibley +GC 27145 2002 14 Stearns +GC 27147 2002 5 Steele +GC 27149 2002 1 Stevens +GC 27151 2002 2 Swift +GC 27153 2002 2 Todd +GC 27155 2002 1 Traverse +GC 27157 2002 4 Wabasha +GC 27159 2002 2 Wadena +GC 27161 2002 2 Waseca +GC 27163 2002 12 Washington +GC 27165 2002 1 Watonwan +GC 27167 2002 0 Wilkin +GC 27169 2002 5 Winona +GC 27171 2002 10 Wright +GC 27173 2002 2 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_HOLSL.ALO new file mode 100644 index 0000000..2ed57bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_HOLSL.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 27000 2002 9166 MN +COM 27001 2002 12 Aitkin +COM 27003 2002 406 Anoka +COM 27005 2002 36 Becker +COM 27007 2002 53 Beltrami +COM 27009 2002 56 Benton +COM 27011 2002 12 Big Stone +COM 27013 2002 114 Blue Earth +COM 27015 2002 50 Brown +COM 27017 2002 32 Carlton +COM 27019 2002 165 Carver +COM 27021 2002 28 Cass +COM 27023 2002 21 Chippewa +COM 27025 2002 40 Chisago +COM 27027 2002 65 Clay +COM 27029 2002 9 Clearwater +COM 27031 2002 1 Cook +COM 27033 2002 23 Cottonwood +COM 27035 2002 74 Crow Wing +COM 27037 2002 747 Dakota +COM 27039 2002 23 Dodge +COM 27041 2002 50 Douglas +COM 27043 2002 33 Faribault +COM 27045 2002 39 Fillmore +COM 27047 2002 59 Freeborn +COM 27049 2002 62 Goodhue +COM 27051 2002 16 Grant +COM 27053 2002 3314 Hennepin +COM 27055 2002 28 Houston +COM 27057 2002 15 Hubbard +COM 27059 2002 29 Isanti +COM 27061 2002 50 Itasca +COM 27063 2002 18 Jackson +COM 27065 2002 6 Kanabec +COM 27067 2002 72 Kandiyohi +COM 27069 2002 18 Kittson +COM 27071 2002 14 Koochiching +COM 27073 2002 15 Lac qui Parle +COM 27075 2002 6 Lake +COM 27077 2002 9 Lake of the Woods +COM 27079 2002 29 Le Sueur +COM 27081 2002 14 Lincoln +COM 27083 2002 55 Lyon +COM 27085 2002 41 McLeod +COM 27087 2002 5 Mahnomen +COM 27089 2002 28 Marshall +COM 27091 2002 50 Martin +COM 27093 2002 24 Meeker +COM 27095 2002 26 Mille Lacs +COM 27097 2002 31 Morrison +COM 27099 2002 39 Mower +COM 27101 2002 18 Murray +COM 27103 2002 35 Nicollet +COM 27105 2002 42 Nobles +COM 27107 2002 17 Norman +COM 27109 2002 125 Olmsted +COM 27111 2002 71 Otter Tail +COM 27113 2002 26 Pennington +COM 27115 2002 20 Pine +COM 27117 2002 21 Pipestone +COM 27119 2002 60 Polk +COM 27121 2002 25 Pope +COM 27123 2002 885 Ramsey +COM 27125 2002 3 Red Lake +COM 27127 2002 42 Redwood +COM 27129 2002 29 Renville +COM 27131 2002 66 Rice +COM 27133 2002 18 Rock +COM 27135 2002 15 Roseau +COM 27137 2002 272 St. Louis +COM 27139 2002 198 Scott +COM 27141 2002 71 Sherburne +COM 27143 2002 9 Sibley +COM 27145 2002 216 Stearns +COM 27147 2002 50 Steele +COM 27149 2002 18 Stevens +COM 27151 2002 26 Swift +COM 27153 2002 20 Todd +COM 27155 2002 8 Traverse +COM 27157 2002 23 Wabasha +COM 27159 2002 26 Wadena +COM 27161 2002 26 Waseca +COM 27163 2002 268 Washington +COM 27165 2002 23 Watonwan +COM 27167 2002 23 Wilkin +COM 27169 2002 70 Winona +COM 27171 2002 120 Wright +COM 27173 2002 19 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_HOUSE.ALO new file mode 100644 index 0000000..e144380 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_HOUSE.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 27000 2002 2132669 MN +HOU 27001 2002 14603 Aitkin +HOU 27003 2002 113055 Anoka +HOU 27005 2002 17009 Becker +HOU 27007 2002 17431 Beltrami +HOU 27009 2002 14510 Benton +HOU 27011 2002 3168 Big Stone +HOU 27013 2002 22733 Blue Earth +HOU 27015 2002 11215 Brown +HOU 27017 2002 14274 Carlton +HOU 27019 2002 27658 Carver +HOU 27021 2002 22090 Cass +HOU 27023 2002 5906 Chippewa +HOU 27025 2002 16962 Chisago +HOU 27027 2002 20226 Clay +HOU 27029 2002 4179 Clearwater +HOU 27031 2002 4910 Cook +HOU 27033 2002 5392 Cottonwood +HOU 27035 2002 35052 Crow Wing +HOU 27037 2002 140709 Dakota +HOU 27039 2002 7045 Dodge +HOU 27041 2002 17561 Douglas +HOU 27043 2002 7221 Faribault +HOU 27045 2002 9160 Fillmore +HOU 27047 2002 14083 Freeborn +HOU 27049 2002 18502 Goodhue +HOU 27051 2002 3114 Grant +HOU 27053 2002 477060 Hennepin +HOU 27055 2002 8286 Houston +HOU 27057 2002 12470 Hubbard +HOU 27059 2002 13207 Isanti +HOU 27061 2002 25214 Itasca +HOU 27063 2002 5098 Jackson +HOU 27065 2002 7087 Kanabec +HOU 27067 2002 18777 Kandiyohi +HOU 27069 2002 2728 Kittson +HOU 27071 2002 7830 Koochiching +HOU 27073 2002 3764 Lac qui Parle +HOU 27075 2002 7033 Lake +HOU 27077 2002 3321 Lake of the Woods +HOU 27079 2002 11332 Le Sueur +HOU 27081 2002 3058 Lincoln +HOU 27083 2002 10490 Lyon +HOU 27085 2002 14500 McLeod +HOU 27087 2002 2743 Mahnomen +HOU 27089 2002 4850 Marshall +HOU 27091 2002 9894 Martin +HOU 27093 2002 10118 Meeker +HOU 27095 2002 10890 Mille Lacs +HOU 27097 2002 14510 Morrison +HOU 27099 2002 16536 Mower +HOU 27101 2002 4406 Murray +HOU 27103 2002 11554 Nicollet +HOU 27105 2002 8481 Nobles +HOU 27107 2002 3454 Norman +HOU 27109 2002 52844 Olmsted +HOU 27111 2002 34257 Otter Tail +HOU 27113 2002 6153 Pennington +HOU 27115 2002 15652 Pine +HOU 27117 2002 4457 Pipestone +HOU 27119 2002 14143 Polk +HOU 27121 2002 6278 Pope +HOU 27123 2002 208016 Ramsey +HOU 27125 2002 1906 Red Lake +HOU 27127 2002 7276 Redwood +HOU 27129 2002 7428 Renville +HOU 27131 2002 20922 Rice +HOU 27133 2002 4163 Rock +HOU 27135 2002 7275 Roseau +HOU 27137 2002 96265 St. Louis +HOU 27139 2002 36131 Scott +HOU 27141 2002 25516 Sherburne +HOU 27143 2002 6122 Sibley +HOU 27145 2002 52199 Stearns +HOU 27147 2002 13671 Steele +HOU 27149 2002 4108 Stevens +HOU 27151 2002 4838 Swift +HOU 27153 2002 12075 Todd +HOU 27155 2002 2207 Traverse +HOU 27157 2002 9336 Wabasha +HOU 27159 2002 6470 Wadena +HOU 27161 2002 7552 Waseca +HOU 27163 2002 78213 Washington +HOU 27165 2002 5040 Watonwan +HOU 27167 2002 3128 Wilkin +HOU 27169 2002 19838 Winona +HOU 27171 2002 37842 Wright +HOU 27173 2002 4889 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_LOGGN.ALO new file mode 100644 index 0000000..47909e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_LOGGN.ALO @@ -0,0 +1,114 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 27000 2002 494351073 MN +LOG 27001 2002 18093898 Aitkin +LOG 27003 2002 1155963 Anoka +LOG 27005 2002 12567534 Becker +LOG 27007 2002 27743166 Beltrami +LOG 27009 2002 880605 Benton +LOG 27011 2002 4787 Big Stone +LOG 27013 2002 358706 Blue Earth +LOG 27015 2002 87512 Brown +LOG 27017 2002 9274180 Carlton +LOG 27019 2002 747339 Carver +LOG 27021 2002 32238985 Cass +LOG 27023 2002 147077 Chippewa +LOG 27025 2002 2019778 Chisago +LOG 27027 2002 783650 Clay +LOG 27029 2002 11447106 Clearwater +LOG 27031 2002 10136178 Cook +LOG 27033 2002 71778 Cottonwood +LOG 27035 2002 16871614 Crow Wing +LOG 27037 2002 672006 Dakota +LOG 27039 2002 432077 Dodge +LOG 27041 2002 1988949 Douglas +LOG 27043 2002 76393 Faribault +LOG 27045 2002 2413167 Fillmore +LOG 27047 2002 263252 Freeborn +LOG 27049 2002 2105221 Goodhue +LOG 27051 2002 267312 Grant +LOG 27053 2002 1042507 Hennepin +LOG 27055 2002 3138963 Houston +LOG 27057 2002 21108339 Hubbard +LOG 27059 2002 496518 Isanti +LOG 27061 2002 63060697 Itasca +LOG 27063 2002 70045 Jackson +LOG 27065 2002 4126164 Kanabec +LOG 27067 2002 289730 Kandiyohi +LOG 27069 2002 2762778 Kittson +LOG 27071 2002 56014267 Koochiching +LOG 27073 2002 0 Lac qui Parle +LOG 27075 2002 14122812 Lake +LOG 27077 2002 11019958 Lake of the Woods +LOG 27079 2002 958919 Le Sueur +LOG 27081 2002 8354 Lincoln +LOG 27083 2002 78255 Lyon +LOG 27085 2002 214767 McLeod +LOG 27087 2002 2486048 Mahnomen +LOG 27089 2002 3229195 Marshall +LOG 27091 2002 404503 Martin +LOG 27093 2002 186433 Meeker +LOG 27095 2002 6225495 Mille Lacs +LOG 27097 2002 4448700 Morrison +LOG 27099 2002 140787 Mower +LOG 27101 2002 1223 Murray +LOG 27103 2002 1157630 Nicollet +LOG 27105 2002 18722 Nobles +LOG 27107 2002 1632761 Norman +LOG 27109 2002 977751 Olmsted +LOG 27111 2002 6808906 Otter Tail +LOG 27113 2002 1542755 Pennington +LOG 27115 2002 18645267 Pine +LOG 27117 2002 0 Pipestone +LOG 27119 2002 4900363 Polk +LOG 27121 2002 559393 Pope +LOG 27123 2002 837605 Ramsey +LOG 27125 2002 1701496 Red Lake +LOG 27127 2002 212821 Redwood +LOG 27129 2002 582397 Renville +LOG 27131 2002 702926 Rice +LOG 27133 2002 7336 Rock +LOG 27135 2002 6339213 Roseau +LOG 27137 2002 82530621 St. Louis +LOG 27139 2002 603994 Scott +LOG 27141 2002 811709 Sherburne +LOG 27143 2002 515720 Sibley +LOG 27145 2002 891082 Stearns +LOG 27147 2002 431317 Steele +LOG 27149 2002 18177 Stevens +LOG 27151 2002 6045 Swift +LOG 27153 2002 2633842 Todd +LOG 27155 2002 54446 Traverse +LOG 27157 2002 1447998 Wabasha +LOG 27159 2002 3862019 Wadena +LOG 27161 2002 433736 Waseca +LOG 27163 2002 1470571 Washington +LOG 27165 2002 0 Watonwan +LOG 27167 2002 52395 Wilkin +LOG 27169 2002 2573046 Winona +LOG 27171 2002 723156 Wright +LOG 27173 2002 180171 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_LSCAP.ALO new file mode 100644 index 0000000..54c1f6b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_LSCAP.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 27000 2002 4837 MN +LSC 27001 2002 1 Aitkin +LSC 27003 2002 483 Anoka +LSC 27005 2002 6 Becker +LSC 27007 2002 15 Beltrami +LSC 27009 2002 31 Benton +LSC 27011 2002 6 Big Stone +LSC 27013 2002 290 Blue Earth +LSC 27015 2002 10 Brown +LSC 27017 2002 10 Carlton +LSC 27019 2002 90 Carver +LSC 27021 2002 6 Cass +LSC 27023 2002 6 Chippewa +LSC 27025 2002 20 Chisago +LSC 27027 2002 6 Clay +LSC 27029 2002 6 Clearwater +LSC 27031 2002 0 Cook +LSC 27033 2002 6 Cottonwood +LSC 27035 2002 8 Crow Wing +LSC 27037 2002 630 Dakota +LSC 27039 2002 4 Dodge +LSC 27041 2002 6 Douglas +LSC 27043 2002 6 Faribault +LSC 27045 2002 6 Fillmore +LSC 27047 2002 6 Freeborn +LSC 27049 2002 30 Goodhue +LSC 27051 2002 0 Grant +LSC 27053 2002 1413 Hennepin +LSC 27055 2002 7 Houston +LSC 27057 2002 6 Hubbard +LSC 27059 2002 11 Isanti +LSC 27061 2002 89 Itasca +LSC 27063 2002 6 Jackson +LSC 27065 2002 6 Kanabec +LSC 27067 2002 30 Kandiyohi +LSC 27069 2002 6 Kittson +LSC 27071 2002 6 Koochiching +LSC 27073 2002 0 Lac qui Parle +LSC 27075 2002 0 Lake +LSC 27077 2002 0 Lake of the Woods +LSC 27079 2002 2 Le Sueur +LSC 27081 2002 6 Lincoln +LSC 27083 2002 2 Lyon +LSC 27085 2002 14 McLeod +LSC 27087 2002 0 Mahnomen +LSC 27089 2002 6 Marshall +LSC 27091 2002 0 Martin +LSC 27093 2002 6 Meeker +LSC 27095 2002 6 Mille Lacs +LSC 27097 2002 6 Morrison +LSC 27099 2002 23 Mower +LSC 27101 2002 6 Murray +LSC 27103 2002 3 Nicollet +LSC 27105 2002 0 Nobles +LSC 27107 2002 6 Norman +LSC 27109 2002 149 Olmsted +LSC 27111 2002 121 Otter Tail +LSC 27113 2002 6 Pennington +LSC 27115 2002 6 Pine +LSC 27117 2002 6 Pipestone +LSC 27119 2002 6 Polk +LSC 27121 2002 6 Pope +LSC 27123 2002 340 Ramsey +LSC 27125 2002 0 Red Lake +LSC 27127 2002 6 Redwood +LSC 27129 2002 2 Renville +LSC 27131 2002 30 Rice +LSC 27133 2002 6 Rock +LSC 27135 2002 6 Roseau +LSC 27137 2002 41 St. Louis +LSC 27139 2002 277 Scott +LSC 27141 2002 58 Sherburne +LSC 27143 2002 6 Sibley +LSC 27145 2002 75 Stearns +LSC 27147 2002 21 Steele +LSC 27149 2002 6 Stevens +LSC 27151 2002 0 Swift +LSC 27153 2002 6 Todd +LSC 27155 2002 0 Traverse +LSC 27157 2002 6 Wabasha +LSC 27159 2002 6 Wadena +LSC 27161 2002 6 Waseca +LSC 27163 2002 145 Washington +LSC 27165 2002 0 Watonwan +LSC 27167 2002 0 Wilkin +LSC 27169 2002 20 Winona +LSC 27171 2002 114 Wright +LSC 27173 2002 6 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_MNFG.ALO new file mode 100644 index 0000000..17575e8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_MNFG.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 27000 2002 642378 MN +MFG 27001 2002 997 Aitkin +MFG 27003 2002 44586 Anoka +MFG 27005 2002 3257 Becker +MFG 27007 2002 2864 Beltrami +MFG 27009 2002 6737 Benton +MFG 27011 2002 115 Big Stone +MFG 27013 2002 7787 Blue Earth +MFG 27015 2002 5678 Brown +MFG 27017 2002 1931 Carlton +MFG 27019 2002 17941 Carver +MFG 27021 2002 491 Cass +MFG 27023 2002 1608 Chippewa +MFG 27025 2002 3630 Chisago +MFG 27027 2002 1287 Clay +MFG 27029 2002 1024 Clearwater +MFG 27031 2002 115 Cook +MFG 27033 2002 2090 Cottonwood +MFG 27035 2002 5085 Crow Wing +MFG 27037 2002 37040 Dakota +MFG 27039 2002 2235 Dodge +MFG 27041 2002 5117 Douglas +MFG 27043 2002 2352 Faribault +MFG 27045 2002 1382 Fillmore +MFG 27047 2002 4367 Freeborn +MFG 27049 2002 6919 Goodhue +MFG 27051 2002 243 Grant +MFG 27053 2002 172188 Hennepin +MFG 27055 2002 1182 Houston +MFG 27057 2002 1517 Hubbard +MFG 27059 2002 2902 Isanti +MFG 27061 2002 3536 Itasca +MFG 27063 2002 3490 Jackson +MFG 27065 2002 1353 Kanabec +MFG 27067 2002 3933 Kandiyohi +MFG 27069 2002 134 Kittson +MFG 27071 2002 2202 Koochiching +MFG 27073 2002 437 Lac qui Parle +MFG 27075 2002 968 Lake +MFG 27077 2002 443 Lake of the Woods +MFG 27079 2002 3869 Le Sueur +MFG 27081 2002 72 Lincoln +MFG 27083 2002 2631 Lyon +MFG 27085 2002 12810 McLeod +MFG 27087 2002 40 Mahnomen +MFG 27089 2002 488 Marshall +MFG 27091 2002 3336 Martin +MFG 27093 2002 2815 Meeker +MFG 27095 2002 3809 Mille Lacs +MFG 27097 2002 3250 Morrison +MFG 27099 2002 5014 Mower +MFG 27101 2002 255 Murray +MFG 27103 2002 8879 Nicollet +MFG 27105 2002 2871 Nobles +MFG 27107 2002 76 Norman +MFG 27109 2002 22270 Olmsted +MFG 27111 2002 5387 Otter Tail +MFG 27113 2002 3314 Pennington +MFG 27115 2002 765 Pine +MFG 27117 2002 802 Pipestone +MFG 27119 2002 2324 Polk +MFG 27121 2002 1595 Pope +MFG 27123 2002 57305 Ramsey +MFG 27125 2002 218 Red Lake +MFG 27127 2002 1999 Redwood +MFG 27129 2002 1546 Renville +MFG 27131 2002 7571 Rice +MFG 27133 2002 459 Rock +MFG 27135 2002 9292 Roseau +MFG 27137 2002 9479 St. Louis +MFG 27139 2002 9455 Scott +MFG 27141 2002 4134 Sherburne +MFG 27143 2002 1148 Sibley +MFG 27145 2002 22911 Stearns +MFG 27147 2002 11561 Steele +MFG 27149 2002 893 Stevens +MFG 27151 2002 735 Swift +MFG 27153 2002 2942 Todd +MFG 27155 2002 205 Traverse +MFG 27157 2002 5593 Wabasha +MFG 27159 2002 1548 Wadena +MFG 27161 2002 4731 Waseca +MFG 27163 2002 19408 Washington +MFG 27165 2002 1650 Watonwan +MFG 27167 2002 31 Wilkin +MFG 27169 2002 10091 Winona +MFG 27171 2002 8922 Wright +MFG 27173 2002 716 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_OIL.ALO new file mode 100644 index 0000000..e775920 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_OIL.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 27000 2002 126 MN +OIL 27001 2002 0 Aitkin +OIL 27003 2002 0 Anoka +OIL 27005 2002 0 Becker +OIL 27007 2002 0 Beltrami +OIL 27009 2002 0 Benton +OIL 27011 2002 0 Big Stone +OIL 27013 2002 0 Blue Earth +OIL 27015 2002 0 Brown +OIL 27017 2002 0 Carlton +OIL 27019 2002 0 Carver +OIL 27021 2002 0 Cass +OIL 27023 2002 0 Chippewa +OIL 27025 2002 3 Chisago +OIL 27027 2002 0 Clay +OIL 27029 2002 0 Clearwater +OIL 27031 2002 0 Cook +OIL 27033 2002 0 Cottonwood +OIL 27035 2002 52 Crow Wing +OIL 27037 2002 11 Dakota +OIL 27039 2002 0 Dodge +OIL 27041 2002 2 Douglas +OIL 27043 2002 0 Faribault +OIL 27045 2002 0 Fillmore +OIL 27047 2002 0 Freeborn +OIL 27049 2002 0 Goodhue +OIL 27051 2002 0 Grant +OIL 27053 2002 52 Hennepin +OIL 27055 2002 0 Houston +OIL 27057 2002 0 Hubbard +OIL 27059 2002 0 Isanti +OIL 27061 2002 0 Itasca +OIL 27063 2002 0 Jackson +OIL 27065 2002 0 Kanabec +OIL 27067 2002 0 Kandiyohi +OIL 27069 2002 0 Kittson +OIL 27071 2002 0 Koochiching +OIL 27073 2002 0 Lac qui Parle +OIL 27075 2002 0 Lake +OIL 27077 2002 0 Lake of the Woods +OIL 27079 2002 0 Le Sueur +OIL 27081 2002 0 Lincoln +OIL 27083 2002 0 Lyon +OIL 27085 2002 0 McLeod +OIL 27087 2002 0 Mahnomen +OIL 27089 2002 0 Marshall +OIL 27091 2002 0 Martin +OIL 27093 2002 0 Meeker +OIL 27095 2002 0 Mille Lacs +OIL 27097 2002 2 Morrison +OIL 27099 2002 0 Mower +OIL 27101 2002 0 Murray +OIL 27103 2002 0 Nicollet +OIL 27105 2002 0 Nobles +OIL 27107 2002 0 Norman +OIL 27109 2002 0 Olmsted +OIL 27111 2002 0 Otter Tail +OIL 27113 2002 0 Pennington +OIL 27115 2002 0 Pine +OIL 27117 2002 0 Pipestone +OIL 27119 2002 0 Polk +OIL 27121 2002 0 Pope +OIL 27123 2002 0 Ramsey +OIL 27125 2002 0 Red Lake +OIL 27127 2002 0 Redwood +OIL 27129 2002 0 Renville +OIL 27131 2002 0 Rice +OIL 27133 2002 0 Rock +OIL 27135 2002 0 Roseau +OIL 27137 2002 0 St. Louis +OIL 27139 2002 0 Scott +OIL 27141 2002 2 Sherburne +OIL 27143 2002 0 Sibley +OIL 27145 2002 0 Stearns +OIL 27147 2002 0 Steele +OIL 27149 2002 0 Stevens +OIL 27151 2002 0 Swift +OIL 27153 2002 0 Todd +OIL 27155 2002 0 Traverse +OIL 27157 2002 0 Wabasha +OIL 27159 2002 2 Wadena +OIL 27161 2002 0 Waseca +OIL 27163 2002 0 Washington +OIL 27165 2002 0 Watonwan +OIL 27167 2002 0 Wilkin +OIL 27169 2002 0 Winona +OIL 27171 2002 0 Wright +OIL 27173 2002 0 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_POP.ALO new file mode 100644 index 0000000..803c9e3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_POP.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 27000 2002 5025081 MN +POP 27001 2002 15622 Aitkin +POP 27003 2002 310319 Anoka +POP 27005 2002 30803 Becker +POP 27007 2002 41169 Beltrami +POP 27009 2002 36664 Benton +POP 27011 2002 5720 Big Stone +POP 27013 2002 56682 Blue Earth +POP 27015 2002 26906 Brown +POP 27017 2002 32553 Carlton +POP 27019 2002 76102 Carver +POP 27021 2002 27930 Cass +POP 27023 2002 12919 Chippewa +POP 27025 2002 44965 Chisago +POP 27027 2002 51805 Clay +POP 27029 2002 8440 Clearwater +POP 27031 2002 5207 Cook +POP 27033 2002 12013 Cottonwood +POP 27035 2002 57347 Crow Wing +POP 27037 2002 368955 Dakota +POP 27039 2002 18609 Dodge +POP 27041 2002 33664 Douglas +POP 27043 2002 15893 Faribault +POP 27045 2002 21323 Fillmore +POP 27047 2002 32122 Freeborn +POP 27049 2002 44992 Goodhue +POP 27051 2002 6275 Grant +POP 27053 2002 1120443 Hennepin +POP 27055 2002 19925 Houston +POP 27057 2002 18548 Hubbard +POP 27059 2002 33909 Isanti +POP 27061 2002 44078 Itasca +POP 27063 2002 11273 Jackson +POP 27065 2002 15529 Kanabec +POP 27067 2002 40861 Kandiyohi +POP 27069 2002 5044 Kittson +POP 27071 2002 13986 Koochiching +POP 27073 2002 7936 Lac qui Parle +POP 27075 2002 11137 Lake +POP 27077 2002 4336 Lake of the Woods +POP 27079 2002 26132 Le Sueur +POP 27081 2002 6245 Lincoln +POP 27083 2002 24952 Lyon +POP 27085 2002 35643 McLeod +POP 27087 2002 5168 Mahnomen +POP 27089 2002 9956 Marshall +POP 27091 2002 21329 Martin +POP 27093 2002 23032 Meeker +POP 27095 2002 23762 Mille Lacs +POP 27097 2002 32466 Morrison +POP 27099 2002 38770 Mower +POP 27101 2002 9064 Murray +POP 27103 2002 30455 Nicollet +POP 27105 2002 20602 Nobles +POP 27107 2002 7311 Norman +POP 27109 2002 129090 Olmsted +POP 27111 2002 57457 Otter Tail +POP 27113 2002 13612 Pennington +POP 27115 2002 27566 Pine +POP 27117 2002 9737 Pipestone +POP 27119 2002 30925 Polk +POP 27121 2002 11232 Pope +POP 27123 2002 509518 Ramsey +POP 27125 2002 4274 Red Lake +POP 27127 2002 16413 Redwood +POP 27129 2002 16972 Renville +POP 27131 2002 58669 Rice +POP 27133 2002 9683 Rock +POP 27135 2002 16166 Roseau +POP 27137 2002 199941 St. Louis +POP 27139 2002 103852 Scott +POP 27141 2002 72263 Sherburne +POP 27143 2002 15333 Sibley +POP 27145 2002 138228 Stearns +POP 27147 2002 34371 Steele +POP 27149 2002 9902 Stevens +POP 27151 2002 11476 Swift +POP 27153 2002 24425 Todd +POP 27155 2002 3933 Traverse +POP 27157 2002 21980 Wabasha +POP 27159 2002 13734 Wadena +POP 27161 2002 19555 Waseca +POP 27163 2002 210455 Washington +POP 27165 2002 11740 Watonwan +POP 27167 2002 6959 Wilkin +POP 27169 2002 49445 Winona +POP 27171 2002 98472 Wright +POP 27173 2002 10812 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_RAIL.ALO new file mode 100644 index 0000000..15196ca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_RAIL.ALO @@ -0,0 +1,114 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 27000 2002 19305.130 MN +RR 27001 2002 194.040 Aitkin +RR 27003 2002 746.490 Anoka +RR 27005 2002 553.610 Becker +RR 27007 2002 144.040 Beltrami +RR 27009 2002 396.780 Benton +RR 27011 2002 57.600 Big Stone +RR 27013 2002 49.320 Blue Earth +RR 27015 2002 0.000 Brown +RR 27017 2002 412.500 Carlton +RR 27019 2002 1.790 Carver +RR 27021 2002 126.340 Cass +RR 27023 2002 171.320 Chippewa +RR 27025 2002 0.000 Chisago +RR 27027 2002 651.320 Clay +RR 27029 2002 119.590 Clearwater +RR 27031 2002 0.000 Cook +RR 27033 2002 30.230 Cottonwood +RR 27035 2002 154.960 Crow Wing +RR 27037 2002 445.360 Dakota +RR 27039 2002 0.000 Dodge +RR 27041 2002 140.050 Douglas +RR 27043 2002 19.170 Faribault +RR 27045 2002 0.000 Fillmore +RR 27047 2002 136.130 Freeborn +RR 27049 2002 244.500 Goodhue +RR 27051 2002 377.110 Grant +RR 27053 2002 1110.660 Hennepin +RR 27055 2002 177.380 Houston +RR 27057 2002 24.450 Hubbard +RR 27059 2002 283.160 Isanti +RR 27061 2002 114.210 Itasca +RR 27063 2002 34.660 Jackson +RR 27065 2002 203.390 Kanabec +RR 27067 2002 323.800 Kandiyohi +RR 27069 2002 119.680 Kittson +RR 27071 2002 0.000 Koochiching +RR 27073 2002 58.310 Lac qui Parle +RR 27075 2002 0.000 Lake +RR 27077 2002 0.000 Lake of the Woods +RR 27079 2002 55.010 Le Sueur +RR 27081 2002 95.160 Lincoln +RR 27083 2002 244.430 Lyon +RR 27085 2002 0.000 McLeod +RR 27087 2002 178.770 Mahnomen +RR 27089 2002 146.940 Marshall +RR 27091 2002 32.280 Martin +RR 27093 2002 602.790 Meeker +RR 27095 2002 0.000 Mille Lacs +RR 27097 2002 802.450 Morrison +RR 27099 2002 4.100 Mower +RR 27101 2002 0.000 Murray +RR 27103 2002 0.000 Nicollet +RR 27105 2002 25.790 Nobles +RR 27107 2002 7.120 Norman +RR 27109 2002 0.000 Olmsted +RR 27111 2002 602.260 Otter Tail +RR 27113 2002 113.380 Pennington +RR 27115 2002 424.210 Pine +RR 27117 2002 167.870 Pipestone +RR 27119 2002 308.890 Polk +RR 27121 2002 276.420 Pope +RR 27123 2002 422.010 Ramsey +RR 27125 2002 55.740 Red Lake +RR 27127 2002 0.000 Redwood +RR 27129 2002 0.000 Renville +RR 27131 2002 357.050 Rice +RR 27133 2002 161.460 Rock +RR 27135 2002 0.000 Roseau +RR 27137 2002 271.010 St. Louis +RR 27139 2002 94.580 Scott +RR 27141 2002 746.340 Sherburne +RR 27143 2002 0.000 Sibley +RR 27145 2002 728.320 Stearns +RR 27147 2002 179.410 Steele +RR 27149 2002 176.840 Stevens +RR 27151 2002 267.880 Swift +RR 27153 2002 637.780 Todd +RR 27155 2002 75.470 Traverse +RR 27157 2002 403.620 Wabasha +RR 27159 2002 473.840 Wadena +RR 27161 2002 0.000 Waseca +RR 27163 2002 811.910 Washington +RR 27165 2002 51.110 Watonwan +RR 27167 2002 441.850 Wilkin +RR 27169 2002 391.700 Winona +RR 27171 2002 714.350 Wright +RR 27173 2002 133.040 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_RVPRK.ALO new file mode 100644 index 0000000..325c0c9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_RVPRK.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 27000 2002 255 MN +RVP 27001 2002 6 Aitkin +RVP 27003 2002 4 Anoka +RVP 27005 2002 8 Becker +RVP 27007 2002 6 Beltrami +RVP 27009 2002 1 Benton +RVP 27011 2002 0 Big Stone +RVP 27013 2002 1 Blue Earth +RVP 27015 2002 0 Brown +RVP 27017 2002 2 Carlton +RVP 27019 2002 2 Carver +RVP 27021 2002 28 Cass +RVP 27023 2002 0 Chippewa +RVP 27025 2002 3 Chisago +RVP 27027 2002 3 Clay +RVP 27029 2002 0 Clearwater +RVP 27031 2002 9 Cook +RVP 27033 2002 0 Cottonwood +RVP 27035 2002 13 Crow Wing +RVP 27037 2002 2 Dakota +RVP 27039 2002 0 Dodge +RVP 27041 2002 6 Douglas +RVP 27043 2002 0 Faribault +RVP 27045 2002 2 Fillmore +RVP 27047 2002 1 Freeborn +RVP 27049 2002 6 Goodhue +RVP 27051 2002 1 Grant +RVP 27053 2002 6 Hennepin +RVP 27055 2002 3 Houston +RVP 27057 2002 8 Hubbard +RVP 27059 2002 2 Isanti +RVP 27061 2002 8 Itasca +RVP 27063 2002 0 Jackson +RVP 27065 2002 1 Kanabec +RVP 27067 2002 4 Kandiyohi +RVP 27069 2002 0 Kittson +RVP 27071 2002 2 Koochiching +RVP 27073 2002 0 Lac qui Parle +RVP 27075 2002 4 Lake +RVP 27077 2002 14 Lake of the Woods +RVP 27079 2002 4 Le Sueur +RVP 27081 2002 0 Lincoln +RVP 27083 2002 0 Lyon +RVP 27085 2002 0 McLeod +RVP 27087 2002 2 Mahnomen +RVP 27089 2002 0 Marshall +RVP 27091 2002 1 Martin +RVP 27093 2002 0 Meeker +RVP 27095 2002 2 Mille Lacs +RVP 27097 2002 3 Morrison +RVP 27099 2002 1 Mower +RVP 27101 2002 1 Murray +RVP 27103 2002 1 Nicollet +RVP 27105 2002 1 Nobles +RVP 27107 2002 0 Norman +RVP 27109 2002 1 Olmsted +RVP 27111 2002 12 Otter Tail +RVP 27113 2002 0 Pennington +RVP 27115 2002 3 Pine +RVP 27117 2002 1 Pipestone +RVP 27119 2002 0 Polk +RVP 27121 2002 0 Pope +RVP 27123 2002 3 Ramsey +RVP 27125 2002 0 Red Lake +RVP 27127 2002 0 Redwood +RVP 27129 2002 1 Renville +RVP 27131 2002 3 Rice +RVP 27133 2002 0 Rock +RVP 27135 2002 0 Roseau +RVP 27137 2002 27 St. Louis +RVP 27139 2002 4 Scott +RVP 27141 2002 3 Sherburne +RVP 27143 2002 0 Sibley +RVP 27145 2002 5 Stearns +RVP 27147 2002 2 Steele +RVP 27149 2002 0 Stevens +RVP 27151 2002 0 Swift +RVP 27153 2002 2 Todd +RVP 27155 2002 0 Traverse +RVP 27157 2002 4 Wabasha +RVP 27159 2002 0 Wadena +RVP 27161 2002 1 Waseca +RVP 27163 2002 4 Washington +RVP 27165 2002 0 Watonwan +RVP 27167 2002 0 Wilkin +RVP 27169 2002 1 Winona +RVP 27171 2002 6 Wright +RVP 27173 2002 0 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_SBC.ALO new file mode 100644 index 0000000..5ebd447 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_SBC.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 27000 2002 4837 MN +SBC 27001 2002 1 Aitkin +SBC 27003 2002 483 Anoka +SBC 27005 2002 14 Becker +SBC 27007 2002 15 Beltrami +SBC 27009 2002 31 Benton +SBC 27011 2002 3 Big Stone +SBC 27013 2002 290 Blue Earth +SBC 27015 2002 10 Brown +SBC 27017 2002 10 Carlton +SBC 27019 2002 90 Carver +SBC 27021 2002 13 Cass +SBC 27023 2002 6 Chippewa +SBC 27025 2002 20 Chisago +SBC 27027 2002 24 Clay +SBC 27029 2002 4 Clearwater +SBC 27031 2002 0 Cook +SBC 27033 2002 6 Cottonwood +SBC 27035 2002 8 Crow Wing +SBC 27037 2002 630 Dakota +SBC 27039 2002 4 Dodge +SBC 27041 2002 16 Douglas +SBC 27043 2002 7 Faribault +SBC 27045 2002 10 Fillmore +SBC 27047 2002 6 Freeborn +SBC 27049 2002 21 Goodhue +SBC 27051 2002 0 Grant +SBC 27053 2002 1413 Hennepin +SBC 27055 2002 7 Houston +SBC 27057 2002 9 Hubbard +SBC 27059 2002 11 Isanti +SBC 27061 2002 21 Itasca +SBC 27063 2002 5 Jackson +SBC 27065 2002 7 Kanabec +SBC 27067 2002 30 Kandiyohi +SBC 27069 2002 2 Kittson +SBC 27071 2002 7 Koochiching +SBC 27073 2002 0 Lac qui Parle +SBC 27075 2002 0 Lake +SBC 27077 2002 0 Lake of the Woods +SBC 27079 2002 2 Le Sueur +SBC 27081 2002 3 Lincoln +SBC 27083 2002 2 Lyon +SBC 27085 2002 14 McLeod +SBC 27087 2002 0 Mahnomen +SBC 27089 2002 5 Marshall +SBC 27091 2002 0 Martin +SBC 27093 2002 11 Meeker +SBC 27095 2002 11 Mille Lacs +SBC 27097 2002 15 Morrison +SBC 27099 2002 23 Mower +SBC 27101 2002 4 Murray +SBC 27103 2002 3 Nicollet +SBC 27105 2002 0 Nobles +SBC 27107 2002 3 Norman +SBC 27109 2002 149 Olmsted +SBC 27111 2002 121 Otter Tail +SBC 27113 2002 6 Pennington +SBC 27115 2002 13 Pine +SBC 27117 2002 5 Pipestone +SBC 27119 2002 14 Polk +SBC 27121 2002 5 Pope +SBC 27123 2002 340 Ramsey +SBC 27125 2002 0 Red Lake +SBC 27127 2002 8 Redwood +SBC 27129 2002 2 Renville +SBC 27131 2002 27 Rice +SBC 27133 2002 5 Rock +SBC 27135 2002 8 Roseau +SBC 27137 2002 41 St. Louis +SBC 27139 2002 277 Scott +SBC 27141 2002 58 Sherburne +SBC 27143 2002 7 Sibley +SBC 27145 2002 75 Stearns +SBC 27147 2002 21 Steele +SBC 27149 2002 5 Stevens +SBC 27151 2002 0 Swift +SBC 27153 2002 11 Todd +SBC 27155 2002 0 Traverse +SBC 27157 2002 10 Wabasha +SBC 27159 2002 6 Wadena +SBC 27161 2002 9 Waseca +SBC 27163 2002 145 Washington +SBC 27165 2002 0 Watonwan +SBC 27167 2002 0 Wilkin +SBC 27169 2002 20 Winona +SBC 27171 2002 114 Wright +SBC 27173 2002 5 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_SBR.ALO new file mode 100644 index 0000000..3b5728e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_SBR.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 27000 2002 2132669 MN +SBR 27001 2002 14603 Aitkin +SBR 27003 2002 113055 Anoka +SBR 27005 2002 17009 Becker +SBR 27007 2002 17431 Beltrami +SBR 27009 2002 14510 Benton +SBR 27011 2002 3168 Big Stone +SBR 27013 2002 22733 Blue Earth +SBR 27015 2002 11215 Brown +SBR 27017 2002 14274 Carlton +SBR 27019 2002 27658 Carver +SBR 27021 2002 22090 Cass +SBR 27023 2002 5906 Chippewa +SBR 27025 2002 16962 Chisago +SBR 27027 2002 20226 Clay +SBR 27029 2002 4179 Clearwater +SBR 27031 2002 4910 Cook +SBR 27033 2002 5392 Cottonwood +SBR 27035 2002 35052 Crow Wing +SBR 27037 2002 140709 Dakota +SBR 27039 2002 7045 Dodge +SBR 27041 2002 17561 Douglas +SBR 27043 2002 7221 Faribault +SBR 27045 2002 9160 Fillmore +SBR 27047 2002 14083 Freeborn +SBR 27049 2002 18502 Goodhue +SBR 27051 2002 3114 Grant +SBR 27053 2002 477060 Hennepin +SBR 27055 2002 8286 Houston +SBR 27057 2002 12470 Hubbard +SBR 27059 2002 13207 Isanti +SBR 27061 2002 25214 Itasca +SBR 27063 2002 5098 Jackson +SBR 27065 2002 7087 Kanabec +SBR 27067 2002 18777 Kandiyohi +SBR 27069 2002 2728 Kittson +SBR 27071 2002 7830 Koochiching +SBR 27073 2002 3764 Lac qui Parle +SBR 27075 2002 7033 Lake +SBR 27077 2002 3321 Lake of the Woods +SBR 27079 2002 11332 Le Sueur +SBR 27081 2002 3058 Lincoln +SBR 27083 2002 10490 Lyon +SBR 27085 2002 14500 McLeod +SBR 27087 2002 2743 Mahnomen +SBR 27089 2002 4850 Marshall +SBR 27091 2002 9894 Martin +SBR 27093 2002 10118 Meeker +SBR 27095 2002 10890 Mille Lacs +SBR 27097 2002 14510 Morrison +SBR 27099 2002 16536 Mower +SBR 27101 2002 4406 Murray +SBR 27103 2002 11554 Nicollet +SBR 27105 2002 8481 Nobles +SBR 27107 2002 3454 Norman +SBR 27109 2002 52844 Olmsted +SBR 27111 2002 34257 Otter Tail +SBR 27113 2002 6153 Pennington +SBR 27115 2002 15652 Pine +SBR 27117 2002 4457 Pipestone +SBR 27119 2002 14143 Polk +SBR 27121 2002 6278 Pope +SBR 27123 2002 208016 Ramsey +SBR 27125 2002 1906 Red Lake +SBR 27127 2002 7276 Redwood +SBR 27129 2002 7428 Renville +SBR 27131 2002 20922 Rice +SBR 27133 2002 4163 Rock +SBR 27135 2002 7275 Roseau +SBR 27137 2002 96265 St. Louis +SBR 27139 2002 36131 Scott +SBR 27141 2002 25516 Sherburne +SBR 27143 2002 6122 Sibley +SBR 27145 2002 52199 Stearns +SBR 27147 2002 13671 Steele +SBR 27149 2002 4108 Stevens +SBR 27151 2002 4838 Swift +SBR 27153 2002 12075 Todd +SBR 27155 2002 2207 Traverse +SBR 27157 2002 9336 Wabasha +SBR 27159 2002 6470 Wadena +SBR 27161 2002 7552 Waseca +SBR 27163 2002 78213 Washington +SBR 27165 2002 5040 Watonwan +SBR 27167 2002 3128 Wilkin +SBR 27169 2002 19838 Winona +SBR 27171 2002 37842 Wright +SBR 27173 2002 4889 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_SNOWM.ALO new file mode 100644 index 0000000..c8238bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_SNOWM.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 27000 2002 5522 MN +SNM 27001 2002 64 Aitkin +SNM 27003 2002 0 Anoka +SNM 27005 2002 32 Becker +SNM 27007 2002 24 Beltrami +SNM 27009 2002 27 Benton +SNM 27011 2002 175 Big Stone +SNM 27013 2002 18 Blue Earth +SNM 27015 2002 37 Brown +SNM 27017 2002 31 Carlton +SNM 27019 2002 0 Carver +SNM 27021 2002 36 Cass +SNM 27023 2002 77 Chippewa +SNM 27025 2002 22 Chisago +SNM 27027 2002 19 Clay +SNM 27029 2002 118 Clearwater +SNM 27031 2002 192 Cook +SNM 27033 2002 83 Cottonwood +SNM 27035 2002 17 Crow Wing +SNM 27037 2002 0 Dakota +SNM 27039 2002 54 Dodge +SNM 27041 2002 30 Douglas +SNM 27043 2002 63 Faribault +SNM 27045 2002 47 Fillmore +SNM 27047 2002 31 Freeborn +SNM 27049 2002 22 Goodhue +SNM 27051 2002 159 Grant +SNM 27053 2002 0 Hennepin +SNM 27055 2002 50 Houston +SNM 27057 2002 54 Hubbard +SNM 27059 2002 29 Isanti +SNM 27061 2002 23 Itasca +SNM 27063 2002 89 Jackson +SNM 27065 2002 64 Kanabec +SNM 27067 2002 24 Kandiyohi +SNM 27069 2002 198 Kittson +SNM 27071 2002 72 Koochiching +SNM 27073 2002 126 Lac qui Parle +SNM 27075 2002 90 Lake +SNM 27077 2002 231 Lake of the Woods +SNM 27079 2002 38 Le Sueur +SNM 27081 2002 160 Lincoln +SNM 27083 2002 40 Lyon +SNM 27085 2002 28 McLeod +SNM 27087 2002 193 Mahnomen +SNM 27089 2002 100 Marshall +SNM 27091 2002 47 Martin +SNM 27093 2002 43 Meeker +SNM 27095 2002 42 Mille Lacs +SNM 27097 2002 31 Morrison +SNM 27099 2002 26 Mower +SNM 27101 2002 110 Murray +SNM 27103 2002 33 Nicollet +SNM 27105 2002 49 Nobles +SNM 27107 2002 137 Norman +SNM 27109 2002 8 Olmsted +SNM 27111 2002 17 Otter Tail +SNM 27113 2002 73 Pennington +SNM 27115 2002 36 Pine +SNM 27117 2002 103 Pipestone +SNM 27119 2002 32 Polk +SNM 27121 2002 89 Pope +SNM 27123 2002 0 Ramsey +SNM 27125 2002 234 Red Lake +SNM 27127 2002 61 Redwood +SNM 27129 2002 59 Renville +SNM 27131 2002 17 Rice +SNM 27133 2002 103 Rock +SNM 27135 2002 62 Roseau +SNM 27137 2002 5 St. Louis +SNM 27139 2002 0 Scott +SNM 27141 2002 14 Sherburne +SNM 27143 2002 65 Sibley +SNM 27145 2002 7 Stearns +SNM 27147 2002 29 Steele +SNM 27149 2002 101 Stevens +SNM 27151 2002 87 Swift +SNM 27153 2002 41 Todd +SNM 27155 2002 254 Traverse +SNM 27157 2002 45 Wabasha +SNM 27159 2002 73 Wadena +SNM 27161 2002 51 Waseca +SNM 27163 2002 0 Washington +SNM 27165 2002 85 Watonwan +SNM 27167 2002 144 Wilkin +SNM 27169 2002 20 Winona +SNM 27171 2002 10 Wright +SNM 27173 2002 92 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_WIB.ALO new file mode 100644 index 0000000..d2d0ffe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_WIB.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 27000 1990 13224 MN +WIB 27001 1990 456 Aitkin +WIB 27003 1990 58 Anoka +WIB 27005 1990 349 Becker +WIB 27007 1990 1425 Beltrami +WIB 27009 1990 12 Benton +WIB 27011 1990 80 Big Stone +WIB 27013 1990 35 Blue Earth +WIB 27015 1990 20 Brown +WIB 27017 1990 39 Carlton +WIB 27019 1990 50 Carver +WIB 27021 1990 1027 Cass +WIB 27023 1990 13 Chippewa +WIB 27025 1990 64 Chisago +WIB 27027 1990 19 Clay +WIB 27029 1990 91 Clearwater +WIB 27031 1990 877 Cook +WIB 27033 1990 23 Cottonwood +WIB 27035 1990 414 Crow Wing +WIB 27037 1990 43 Dakota +WIB 27039 1990 0 Dodge +WIB 27041 1990 222 Douglas +WIB 27043 1990 21 Faribault +WIB 27045 1990 2 Fillmore +WIB 27047 1990 39 Freeborn +WIB 27049 1990 57 Goodhue +WIB 27051 1990 74 Grant +WIB 27053 1990 129 Hennepin +WIB 27055 1990 27 Houston +WIB 27057 1990 199 Hubbard +WIB 27059 1990 33 Isanti +WIB 27061 1990 680 Itasca +WIB 27063 1990 45 Jackson +WIB 27065 1990 22 Kanabec +WIB 27067 1990 170 Kandiyohi +WIB 27069 1990 17 Kittson +WIB 27071 1990 135 Koochiching +WIB 27073 1990 34 Lac qui Parle +WIB 27075 1990 768 Lake +WIB 27077 1990 1239 Lake of the Woods +WIB 27079 1990 66 Le Sueur +WIB 27081 1990 30 Lincoln +WIB 27083 1990 19 Lyon +WIB 27085 1990 36 McLeod +WIB 27087 1990 70 Mahnomen +WIB 27089 1990 105 Marshall +WIB 27091 1990 52 Martin +WIB 27093 1990 95 Meeker +WIB 27095 1990 278 Mille Lacs +WIB 27097 1990 75 Morrison +WIB 27099 1990 1 Mower +WIB 27101 1990 39 Murray +WIB 27103 1990 38 Nicollet +WIB 27105 1990 18 Nobles +WIB 27107 1990 1 Norman +WIB 27109 1990 4 Olmsted +WIB 27111 1990 635 Otter Tail +WIB 27113 1990 5 Pennington +WIB 27115 1990 61 Pine +WIB 27117 1990 1 Pipestone +WIB 27119 1990 71 Polk +WIB 27121 1990 122 Pope +WIB 27123 1990 37 Ramsey +WIB 27125 1990 0 Red Lake +WIB 27127 1990 4 Redwood +WIB 27129 1990 11 Renville +WIB 27131 1990 48 Rice +WIB 27133 1990 1 Rock +WIB 27135 1990 41 Roseau +WIB 27137 1990 1447 St. Louis +WIB 27139 1990 30 Scott +WIB 27141 1990 37 Sherburne +WIB 27143 1990 30 Sibley +WIB 27145 1990 118 Stearns +WIB 27147 1990 7 Steele +WIB 27149 1990 34 Stevens +WIB 27151 1990 23 Swift +WIB 27153 1990 97 Todd +WIB 27155 1990 31 Traverse +WIB 27157 1990 64 Wabasha +WIB 27159 1990 20 Wadena +WIB 27161 1990 25 Waseca +WIB 27163 1990 81 Washington +WIB 27165 1990 14 Watonwan +WIB 27167 1990 1 Wilkin +WIB 27169 1990 40 Winona +WIB 27171 1990 139 Wright +WIB 27173 1990 14 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MN_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MN_WOB.ALO new file mode 100644 index 0000000..e3c0997 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MN_WOB.ALO @@ -0,0 +1,112 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 27000 1990 12489 MN +WOB 27001 1990 456 Aitkin +WOB 27003 1990 58 Anoka +WOB 27005 1990 349 Becker +WOB 27007 1990 1425 Beltrami +WOB 27009 1990 12 Benton +WOB 27011 1990 80 Big Stone +WOB 27013 1990 35 Blue Earth +WOB 27015 1990 20 Brown +WOB 27017 1990 39 Carlton +WOB 27019 1990 50 Carver +WOB 27021 1990 1027 Cass +WOB 27023 1990 13 Chippewa +WOB 27025 1990 64 Chisago +WOB 27027 1990 19 Clay +WOB 27029 1990 91 Clearwater +WOB 27031 1990 478 Cook +WOB 27033 1990 23 Cottonwood +WOB 27035 1990 414 Crow Wing +WOB 27037 1990 43 Dakota +WOB 27039 1990 0 Dodge +WOB 27041 1990 222 Douglas +WOB 27043 1990 21 Faribault +WOB 27045 1990 2 Fillmore +WOB 27047 1990 39 Freeborn +WOB 27049 1990 57 Goodhue +WOB 27051 1990 74 Grant +WOB 27053 1990 129 Hennepin +WOB 27055 1990 27 Houston +WOB 27057 1990 199 Hubbard +WOB 27059 1990 33 Isanti +WOB 27061 1990 680 Itasca +WOB 27063 1990 45 Jackson +WOB 27065 1990 22 Kanabec +WOB 27067 1990 170 Kandiyohi +WOB 27069 1990 17 Kittson +WOB 27071 1990 135 Koochiching +WOB 27073 1990 34 Lac qui Parle +WOB 27075 1990 525 Lake +WOB 27077 1990 1239 Lake of the Woods +WOB 27079 1990 66 Le Sueur +WOB 27081 1990 30 Lincoln +WOB 27083 1990 19 Lyon +WOB 27085 1990 36 McLeod +WOB 27087 1990 70 Mahnomen +WOB 27089 1990 105 Marshall +WOB 27091 1990 52 Martin +WOB 27093 1990 95 Meeker +WOB 27095 1990 278 Mille Lacs +WOB 27097 1990 75 Morrison +WOB 27099 1990 1 Mower +WOB 27101 1990 39 Murray +WOB 27103 1990 38 Nicollet +WOB 27105 1990 18 Nobles +WOB 27107 1990 1 Norman +WOB 27109 1990 4 Olmsted +WOB 27111 1990 635 Otter Tail +WOB 27113 1990 5 Pennington +WOB 27115 1990 61 Pine +WOB 27117 1990 1 Pipestone +WOB 27119 1990 71 Polk +WOB 27121 1990 122 Pope +WOB 27123 1990 37 Ramsey +WOB 27125 1990 0 Red Lake +WOB 27127 1990 4 Redwood +WOB 27129 1990 11 Renville +WOB 27131 1990 48 Rice +WOB 27133 1990 1 Rock +WOB 27135 1990 41 Roseau +WOB 27137 1990 1354 St. Louis +WOB 27139 1990 30 Scott +WOB 27141 1990 37 Sherburne +WOB 27143 1990 30 Sibley +WOB 27145 1990 118 Stearns +WOB 27147 1990 7 Steele +WOB 27149 1990 34 Stevens +WOB 27151 1990 23 Swift +WOB 27153 1990 97 Todd +WOB 27155 1990 31 Traverse +WOB 27157 1990 64 Wabasha +WOB 27159 1990 20 Wadena +WOB 27161 1990 25 Waseca +WOB 27163 1990 81 Washington +WOB 27165 1990 14 Watonwan +WOB 27167 1990 1 Wilkin +WOB 27169 1990 40 Winona +WOB 27171 1990 139 Wright +WOB 27173 1990 14 Yellow Medicine +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_AIRTR.ALO new file mode 100644 index 0000000..b1fde9a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_AIRTR.ALO @@ -0,0 +1,142 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 29000 2002 2487.690 MO +AIR 29001 2002 0.080 Adair +AIR 29003 2002 0.000 Andrew +AIR 29005 2002 0.000 Atchison +AIR 29007 2002 0.030 Audrain +AIR 29009 2002 0.034 Barry +AIR 29011 2002 0.020 Barton +AIR 29013 2002 0.060 Bates +AIR 29015 2002 0.000 Benton +AIR 29017 2002 0.000 Bollinger +AIR 29019 2002 1.430 Boone +AIR 29021 2002 0.756 Buchanan +AIR 29023 2002 0.050 Butler +AIR 29025 2002 0.000 Caldwell +AIR 29027 2002 0.600 Callaway +AIR 29029 2002 0.120 Camden +AIR 29031 2002 0.000 Cape Girardeau +AIR 29033 2002 0.000 Carroll +AIR 29035 2002 0.000 Carter +AIR 29037 2002 0.000 Cass +AIR 29039 2002 0.000 Cedar +AIR 29041 2002 0.000 Chariton +AIR 29043 2002 0.000 Christian +AIR 29045 2002 0.000 Clark +AIR 29047 2002 1.700 Clay +AIR 29049 2002 0.060 Clinton +AIR 29051 2002 0.000 Cole +AIR 29053 2002 0.060 Cooper +AIR 29055 2002 0.061 Crawford +AIR 29057 2002 0.000 Dade +AIR 29059 2002 0.000 Dallas +AIR 29061 2002 0.000 Daviess +AIR 29063 2002 0.000 DeKalb +AIR 29065 2002 0.000 Dent +AIR 29067 2002 0.000 Douglas +AIR 29069 2002 0.059 Dunklin +AIR 29071 2002 0.000 Franklin +AIR 29073 2002 0.000 Gasconade +AIR 29075 2002 0.000 Gentry +AIR 29077 2002 60.160 Greene +AIR 29079 2002 0.041 Grundy +AIR 29081 2002 0.000 Harrison +AIR 29083 2002 0.065 Henry +AIR 29085 2002 0.000 Hickory +AIR 29087 2002 0.000 Holt +AIR 29089 2002 0.000 Howard +AIR 29091 2002 0.059 Howell +AIR 29093 2002 0.000 Iron +AIR 29095 2002 0.311 Jackson +AIR 29097 2002 0.416 Jasper +AIR 29099 2002 0.000 Jefferson +AIR 29101 2002 0.079 Johnson +AIR 29103 2002 0.000 Knox +AIR 29105 2002 0.030 Laclede +AIR 29107 2002 0.000 Lafayette +AIR 29109 2002 0.030 Lawrence +AIR 29111 2002 0.000 Lewis +AIR 29113 2002 0.000 Lincoln +AIR 29115 2002 0.000 Linn +AIR 29117 2002 0.020 Livingston +AIR 29119 2002 0.000 McDonald +AIR 29121 2002 0.010 Macon +AIR 29123 2002 0.031 Madison +AIR 29125 2002 0.089 Maries +AIR 29127 2002 0.060 Marion +AIR 29129 2002 0.000 Mercer +AIR 29131 2002 0.109 Miller +AIR 29133 2002 0.000 Mississippi +AIR 29135 2002 0.000 Moniteau +AIR 29137 2002 0.000 Monroe +AIR 29139 2002 0.000 Montgomery +AIR 29141 2002 0.000 Morgan +AIR 29143 2002 0.010 New Madrid +AIR 29145 2002 0.040 Newton +AIR 29147 2002 0.020 Nodaway +AIR 29149 2002 0.000 Oregon +AIR 29151 2002 0.000 Osage +AIR 29153 2002 0.000 Ozark +AIR 29155 2002 0.000 Pemiscot +AIR 29157 2002 0.039 Perry +AIR 29159 2002 0.020 Pettis +AIR 29161 2002 0.000 Phelps +AIR 29163 2002 0.018 Pike +AIR 29165 2002 790.260 Platte +AIR 29167 2002 0.000 Polk +AIR 29169 2002 0.000 Pulaski +AIR 29171 2002 0.000 Putnam +AIR 29173 2002 0.000 Ralls +AIR 29175 2002 0.019 Randolph +AIR 29177 2002 0.000 Ray +AIR 29179 2002 0.000 Reynolds +AIR 29181 2002 0.000 Ripley +AIR 29183 2002 0.180 St. Charles +AIR 29185 2002 0.000 St. Clair +AIR 29186 2002 0.000 Ste. Genevieve +AIR 29187 2002 0.030 St. Francois +AIR 29189 2002 1630.030 St. Louis +AIR 29195 2002 0.097 Saline +AIR 29197 2002 0.000 Schuyler +AIR 29199 2002 0.000 Scotland +AIR 29201 2002 0.238 Scott +AIR 29203 2002 0.000 Shannon +AIR 29205 2002 0.000 Shelby +AIR 29207 2002 0.030 Stoddard +AIR 29209 2002 0.000 Stone +AIR 29211 2002 0.000 Sullivan +AIR 29213 2002 0.000 Taney +AIR 29215 2002 0.010 Texas +AIR 29217 2002 0.020 Vernon +AIR 29219 2002 0.000 Warren +AIR 29221 2002 0.000 Washington +AIR 29223 2002 0.000 Wayne +AIR 29225 2002 0.000 Webster +AIR 29227 2002 0.000 Worth +AIR 29229 2002 0.000 Wright +AIR 29510 2002 0.000 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_COAL.ALO new file mode 100644 index 0000000..de1dbf2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_COAL.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 29000 2002 0 MO +MIN 29001 2002 0 Adair +MIN 29003 2002 0 Andrew +MIN 29005 2002 0 Atchison +MIN 29007 2002 0 Audrain +MIN 29009 2002 0 Barry +MIN 29011 2002 0 Barton +MIN 29013 2002 0 Bates +MIN 29015 2002 0 Benton +MIN 29017 2002 0 Bollinger +MIN 29019 2002 0 Boone +MIN 29021 2002 0 Buchanan +MIN 29023 2002 0 Butler +MIN 29025 2002 0 Caldwell +MIN 29027 2002 0 Callaway +MIN 29029 2002 0 Camden +MIN 29031 2002 0 Cape Girardeau +MIN 29033 2002 0 Carroll +MIN 29035 2002 0 Carter +MIN 29037 2002 0 Cass +MIN 29039 2002 0 Cedar +MIN 29041 2002 0 Chariton +MIN 29043 2002 0 Christian +MIN 29045 2002 0 Clark +MIN 29047 2002 0 Clay +MIN 29049 2002 0 Clinton +MIN 29051 2002 0 Cole +MIN 29053 2002 0 Cooper +MIN 29055 2002 0 Crawford +MIN 29057 2002 0 Dade +MIN 29059 2002 0 Dallas +MIN 29061 2002 0 Daviess +MIN 29063 2002 0 DeKalb +MIN 29065 2002 0 Dent +MIN 29067 2002 0 Douglas +MIN 29069 2002 0 Dunklin +MIN 29071 2002 0 Franklin +MIN 29073 2002 0 Gasconade +MIN 29075 2002 0 Gentry +MIN 29077 2002 0 Greene +MIN 29079 2002 0 Grundy +MIN 29081 2002 0 Harrison +MIN 29083 2002 0 Henry +MIN 29085 2002 0 Hickory +MIN 29087 2002 0 Holt +MIN 29089 2002 0 Howard +MIN 29091 2002 0 Howell +MIN 29093 2002 0 Iron +MIN 29095 2002 0 Jackson +MIN 29097 2002 0 Jasper +MIN 29099 2002 0 Jefferson +MIN 29101 2002 0 Johnson +MIN 29103 2002 0 Knox +MIN 29105 2002 0 Laclede +MIN 29107 2002 0 Lafayette +MIN 29109 2002 0 Lawrence +MIN 29111 2002 0 Lewis +MIN 29113 2002 0 Lincoln +MIN 29115 2002 0 Linn +MIN 29117 2002 0 Livingston +MIN 29119 2002 0 McDonald +MIN 29121 2002 0 Macon +MIN 29123 2002 0 Madison +MIN 29125 2002 0 Maries +MIN 29127 2002 0 Marion +MIN 29129 2002 0 Mercer +MIN 29131 2002 0 Miller +MIN 29133 2002 0 Mississippi +MIN 29135 2002 0 Moniteau +MIN 29137 2002 0 Monroe +MIN 29139 2002 0 Montgomery +MIN 29141 2002 0 Morgan +MIN 29143 2002 0 New Madrid +MIN 29145 2002 0 Newton +MIN 29147 2002 0 Nodaway +MIN 29149 2002 0 Oregon +MIN 29151 2002 0 Osage +MIN 29153 2002 0 Ozark +MIN 29155 2002 0 Pemiscot +MIN 29157 2002 0 Perry +MIN 29159 2002 0 Pettis +MIN 29161 2002 0 Phelps +MIN 29163 2002 0 Pike +MIN 29165 2002 0 Platte +MIN 29167 2002 0 Polk +MIN 29169 2002 0 Pulaski +MIN 29171 2002 0 Putnam +MIN 29173 2002 0 Ralls +MIN 29175 2002 0 Randolph +MIN 29177 2002 0 Ray +MIN 29179 2002 0 Reynolds +MIN 29181 2002 0 Ripley +MIN 29183 2002 0 St. Charles +MIN 29185 2002 0 St. Clair +MIN 29186 2002 0 Ste. Genevieve +MIN 29187 2002 0 St. Francois +MIN 29189 2002 0 St. Louis +MIN 29195 2002 0 Saline +MIN 29197 2002 0 Schuyler +MIN 29199 2002 0 Scotland +MIN 29201 2002 0 Scott +MIN 29203 2002 0 Shannon +MIN 29205 2002 0 Shelby +MIN 29207 2002 0 Stoddard +MIN 29209 2002 0 Stone +MIN 29211 2002 0 Sullivan +MIN 29213 2002 0 Taney +MIN 29215 2002 0 Texas +MIN 29217 2002 0 Vernon +MIN 29219 2002 0 Warren +MIN 29221 2002 0 Washington +MIN 29223 2002 0 Wayne +MIN 29225 2002 0 Webster +MIN 29227 2002 0 Worth +MIN 29229 2002 0 Wright +MIN 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_CONST.ALO new file mode 100644 index 0000000..5d808bd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_CONST.ALO @@ -0,0 +1,142 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 29000 2003 9549378 MO +CON 29001 2003 47278 Adair +CON 29003 2003 21430 Andrew +CON 29005 2003 3245 Atchison +CON 29007 2003 19946 Audrain +CON 29009 2003 43018 Barry +CON 29011 2003 14068 Barton +CON 29013 2003 13467 Bates +CON 29015 2003 18182 Benton +CON 29017 2003 8566 Bollinger +CON 29019 2003 472813 Boone +CON 29021 2003 92399 Buchanan +CON 29023 2003 25048 Butler +CON 29025 2003 5941 Caldwell +CON 29027 2003 33581 Callaway +CON 29029 2003 43735 Camden +CON 29031 2003 146006 Cape Girardeau +CON 29033 2003 27153 Carroll +CON 29035 2003 20895 Carter +CON 29037 2003 174585 Cass +CON 29039 2003 7204 Cedar +CON 29041 2003 6394 Chariton +CON 29043 2003 134616 Christian +CON 29045 2003 17230 Clark +CON 29047 2003 284500 Clay +CON 29049 2003 37420 Clinton +CON 29051 2003 138795 Cole +CON 29053 2003 17477 Cooper +CON 29055 2003 12336 Crawford +CON 29057 2003 6369 Dade +CON 29059 2003 13325 Dallas +CON 29061 2003 11371 Daviess +CON 29063 2003 7153 DeKalb +CON 29065 2003 8208 Dent +CON 29067 2003 13228 Douglas +CON 29069 2003 23560 Dunklin +CON 29071 2003 166523 Franklin +CON 29073 2003 6497 Gasconade +CON 29075 2003 4703 Gentry +CON 29077 2003 550441 Greene +CON 29079 2003 10169 Grundy +CON 29081 2003 4969 Harrison +CON 29083 2003 12998 Henry +CON 29085 2003 7917 Hickory +CON 29087 2003 10200 Holt +CON 29089 2003 23658 Howard +CON 29091 2003 48324 Howell +CON 29093 2003 8103 Iron +CON 29095 2003 1785548 Jackson +CON 29097 2003 146390 Jasper +CON 29099 2003 347881 Jefferson +CON 29101 2003 57930 Johnson +CON 29103 2003 3478 Knox +CON 29105 2003 19865 Laclede +CON 29107 2003 45386 Lafayette +CON 29109 2003 17954 Lawrence +CON 29111 2003 22451 Lewis +CON 29113 2003 65118 Lincoln +CON 29115 2003 14701 Linn +CON 29117 2003 14514 Livingston +CON 29119 2003 39994 McDonald +CON 29121 2003 12286 Macon +CON 29123 2003 7153 Madison +CON 29125 2003 7516 Maries +CON 29127 2003 23966 Marion +CON 29129 2003 7428 Mercer +CON 29131 2003 22571 Miller +CON 29133 2003 4919 Mississippi +CON 29135 2003 10110 Moniteau +CON 29137 2003 8497 Monroe +CON 29139 2003 10291 Montgomery +CON 29141 2003 23056 Morgan +CON 29143 2003 13263 New Madrid +CON 29145 2003 34196 Newton +CON 29147 2003 38971 Nodaway +CON 29149 2003 8665 Oregon +CON 29151 2003 11148 Osage +CON 29153 2003 6666 Ozark +CON 29155 2003 13891 Pemiscot +CON 29157 2003 12050 Perry +CON 29159 2003 14847 Pettis +CON 29161 2003 67706 Phelps +CON 29163 2003 10752 Pike +CON 29165 2003 163620 Platte +CON 29167 2003 35019 Polk +CON 29169 2003 78809 Pulaski +CON 29171 2003 13289 Putnam +CON 29173 2003 5805 Ralls +CON 29175 2003 25090 Randolph +CON 29177 2003 40171 Ray +CON 29179 2003 7827 Reynolds +CON 29181 2003 11245 Ripley +CON 29183 2003 858135 St. Charles +CON 29185 2003 8706 St. Clair +CON 29186 2003 16553 Ste. Genevieve +CON 29187 2003 53595 St. Francois +CON 29189 2003 2083375 St. Louis +CON 29195 2003 13227 Saline +CON 29197 2003 10605 Schuyler +CON 29199 2003 4377 Scotland +CON 29201 2003 23816 Scott +CON 29203 2003 5579 Shannon +CON 29205 2003 5493 Shelby +CON 29207 2003 19374 Stoddard +CON 29209 2003 17578 Stone +CON 29211 2003 8518 Sullivan +CON 29213 2003 71524 Taney +CON 29215 2003 17975 Texas +CON 29217 2003 12248 Vernon +CON 29219 2003 79283 Warren +CON 29221 2003 16355 Washington +CON 29223 2003 16831 Wayne +CON 29225 2003 38602 Webster +CON 29227 2003 1439 Worth +CON 29229 2003 9110 Wright +CON 29510 2003 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_FARMS.ALO new file mode 100644 index 0000000..1a15177 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_FARMS.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 29000 2002 13137184 MO +FRM 29001 2002 96189 Adair +FRM 29003 2002 133326 Andrew +FRM 29005 2002 255933 Atchison +FRM 29007 2002 303608 Audrain +FRM 29009 2002 84292 Barry +FRM 29011 2002 196215 Barton +FRM 29013 2002 226570 Bates +FRM 29015 2002 77039 Benton +FRM 29017 2002 72267 Bollinger +FRM 29019 2002 117206 Boone +FRM 29021 2002 122581 Buchanan +FRM 29023 2002 194127 Butler +FRM 29025 2002 89121 Caldwell +FRM 29027 2002 153158 Callaway +FRM 29029 2002 25782 Camden +FRM 29031 2002 135278 Cape Girardeau +FRM 29033 2002 246396 Carroll +FRM 29035 2002 10714 Carter +FRM 29037 2002 165466 Cass +FRM 29039 2002 64005 Cedar +FRM 29041 2002 213793 Chariton +FRM 29043 2002 60373 Christian +FRM 29045 2002 128882 Clark +FRM 29047 2002 57576 Clay +FRM 29049 2002 112676 Clinton +FRM 29051 2002 59239 Cole +FRM 29053 2002 150559 Cooper +FRM 29055 2002 34419 Crawford +FRM 29057 2002 109049 Dade +FRM 29059 2002 62155 Dallas +FRM 29061 2002 151028 Daviess +FRM 29063 2002 93731 DeKalb +FRM 29065 2002 27804 Dent +FRM 29067 2002 43578 Douglas +FRM 29069 2002 281332 Dunklin +FRM 29071 2002 116088 Franklin +FRM 29073 2002 64684 Gasconade +FRM 29075 2002 118428 Gentry +FRM 29077 2002 86499 Greene +FRM 29079 2002 100140 Grundy +FRM 29081 2002 149248 Harrison +FRM 29083 2002 157802 Henry +FRM 29085 2002 44311 Hickory +FRM 29087 2002 193161 Holt +FRM 29089 2002 108474 Howard +FRM 29091 2002 66916 Howell +FRM 29093 2002 13696 Iron +FRM 29095 2002 89283 Jackson +FRM 29097 2002 117772 Jasper +FRM 29099 2002 38097 Jefferson +FRM 29101 2002 187760 Johnson +FRM 29103 2002 110342 Knox +FRM 29105 2002 73525 Laclede +FRM 29107 2002 245865 Lafayette +FRM 29109 2002 121751 Lawrence +FRM 29111 2002 146989 Lewis +FRM 29113 2002 136485 Lincoln +FRM 29115 2002 132171 Linn +FRM 29117 2002 162048 Livingston +FRM 29119 2002 39138 McDonald +FRM 29121 2002 150837 Macon +FRM 29123 2002 25436 Madison +FRM 29125 2002 55686 Maries +FRM 29127 2002 130692 Marion +FRM 29129 2002 64814 Mercer +FRM 29131 2002 57911 Miller +FRM 29133 2002 259513 Mississippi +FRM 29135 2002 100754 Moniteau +FRM 29137 2002 169057 Monroe +FRM 29139 2002 146311 Montgomery +FRM 29141 2002 75935 Morgan +FRM 29143 2002 383002 New Madrid +FRM 29145 2002 87850 Newton +FRM 29147 2002 279623 Nodaway +FRM 29149 2002 41348 Oregon +FRM 29151 2002 78846 Osage +FRM 29153 2002 32959 Ozark +FRM 29155 2002 285858 Pemiscot +FRM 29157 2002 98900 Perry +FRM 29159 2002 207902 Pettis +FRM 29161 2002 30473 Phelps +FRM 29163 2002 181558 Pike +FRM 29165 2002 116625 Platte +FRM 29167 2002 105365 Polk +FRM 29169 2002 25261 Pulaski +FRM 29171 2002 77959 Putnam +FRM 29173 2002 145593 Ralls +FRM 29175 2002 92419 Randolph +FRM 29177 2002 153819 Ray +FRM 29179 2002 12808 Reynolds +FRM 29181 2002 34447 Ripley +FRM 29183 2002 125355 St. Charles +FRM 29185 2002 103563 St. Clair +FRM 29186 2002 68498 Ste. Genevieve +FRM 29187 2002 35075 St. Francois +FRM 29189 2002 16800 St. Louis +FRM 29195 2002 281556 Saline +FRM 29197 2002 46067 Schuyler +FRM 29199 2002 110427 Scotland +FRM 29201 2002 188261 Scott +FRM 29203 2002 19925 Shannon +FRM 29205 2002 186056 Shelby +FRM 29207 2002 344240 Stoddard +FRM 29209 2002 17635 Stone +FRM 29211 2002 102476 Sullivan +FRM 29213 2002 15871 Taney +FRM 29215 2002 81588 Texas +FRM 29217 2002 196422 Vernon +FRM 29219 2002 67331 Warren +FRM 29221 2002 24865 Washington +FRM 29223 2002 18011 Wayne +FRM 29225 2002 83730 Webster +FRM 29227 2002 47374 Worth +FRM 29229 2002 70357 Wright +FRM 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_GOLF.ALO new file mode 100644 index 0000000..42a611b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_GOLF.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 29000 2002 262 MO +GC 29001 2002 1 Adair +GC 29003 2002 1 Andrew +GC 29005 2002 2 Atchison +GC 29007 2002 3 Audrain +GC 29009 2002 4 Barry +GC 29011 2002 1 Barton +GC 29013 2002 1 Bates +GC 29015 2002 0 Benton +GC 29017 2002 0 Bollinger +GC 29019 2002 5 Boone +GC 29021 2002 1 Buchanan +GC 29023 2002 1 Butler +GC 29025 2002 1 Caldwell +GC 29027 2002 3 Callaway +GC 29029 2002 7 Camden +GC 29031 2002 2 Cape Girardeau +GC 29033 2002 1 Carroll +GC 29035 2002 0 Carter +GC 29037 2002 6 Cass +GC 29039 2002 3 Cedar +GC 29041 2002 1 Chariton +GC 29043 2002 3 Christian +GC 29045 2002 0 Clark +GC 29047 2002 4 Clay +GC 29049 2002 2 Clinton +GC 29051 2002 2 Cole +GC 29053 2002 2 Cooper +GC 29055 2002 2 Crawford +GC 29057 2002 0 Dade +GC 29059 2002 1 Dallas +GC 29061 2002 1 Daviess +GC 29063 2002 1 DeKalb +GC 29065 2002 1 Dent +GC 29067 2002 1 Douglas +GC 29069 2002 3 Dunklin +GC 29071 2002 5 Franklin +GC 29073 2002 1 Gasconade +GC 29075 2002 3 Gentry +GC 29077 2002 8 Greene +GC 29079 2002 1 Grundy +GC 29081 2002 1 Harrison +GC 29083 2002 2 Henry +GC 29085 2002 1 Hickory +GC 29087 2002 1 Holt +GC 29089 2002 0 Howard +GC 29091 2002 1 Howell +GC 29093 2002 3 Iron +GC 29095 2002 23 Jackson +GC 29097 2002 6 Jasper +GC 29099 2002 8 Jefferson +GC 29101 2002 1 Johnson +GC 29103 2002 1 Knox +GC 29105 2002 2 Laclede +GC 29107 2002 1 Lafayette +GC 29109 2002 1 Lawrence +GC 29111 2002 2 Lewis +GC 29113 2002 3 Lincoln +GC 29115 2002 2 Linn +GC 29117 2002 1 Livingston +GC 29119 2002 1 McDonald +GC 29121 2002 1 Macon +GC 29123 2002 1 Madison +GC 29125 2002 0 Maries +GC 29127 2002 4 Marion +GC 29129 2002 1 Mercer +GC 29131 2002 0 Miller +GC 29133 2002 1 Mississippi +GC 29135 2002 2 Moniteau +GC 29137 2002 2 Monroe +GC 29139 2002 1 Montgomery +GC 29141 2002 2 Morgan +GC 29143 2002 1 New Madrid +GC 29145 2002 0 Newton +GC 29147 2002 1 Nodaway +GC 29149 2002 2 Oregon +GC 29151 2002 1 Osage +GC 29153 2002 1 Ozark +GC 29155 2002 1 Pemiscot +GC 29157 2002 1 Perry +GC 29159 2002 1 Pettis +GC 29161 2002 2 Phelps +GC 29163 2002 2 Pike +GC 29165 2002 1 Platte +GC 29167 2002 2 Polk +GC 29169 2002 2 Pulaski +GC 29171 2002 1 Putnam +GC 29173 2002 0 Ralls +GC 29175 2002 2 Randolph +GC 29177 2002 1 Ray +GC 29179 2002 0 Reynolds +GC 29181 2002 1 Ripley +GC 29183 2002 16 St. Charles +GC 29185 2002 0 St. Clair +GC 29186 2002 1 Ste. Genevieve +GC 29187 2002 3 St. Francois +GC 29189 2002 32 St. Louis +GC 29195 2002 2 Saline +GC 29197 2002 1 Schuyler +GC 29199 2002 1 Scotland +GC 29201 2002 3 Scott +GC 29203 2002 0 Shannon +GC 29205 2002 0 Shelby +GC 29207 2002 2 Stoddard +GC 29209 2002 1 Stone +GC 29211 2002 1 Sullivan +GC 29213 2002 4 Taney +GC 29215 2002 0 Texas +GC 29217 2002 1 Vernon +GC 29219 2002 2 Warren +GC 29221 2002 1 Washington +GC 29223 2002 1 Wayne +GC 29225 2002 1 Webster +GC 29227 2002 0 Worth +GC 29229 2002 1 Wright +GC 29510 2002 4 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_HOLSL.ALO new file mode 100644 index 0000000..961ca83 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_HOLSL.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 29000 2002 8700 MO +COM 29001 2002 23 Adair +COM 29003 2002 10 Andrew +COM 29005 2002 14 Atchison +COM 29007 2002 40 Audrain +COM 29009 2002 39 Barry +COM 29011 2002 14 Barton +COM 29013 2002 21 Bates +COM 29015 2002 11 Benton +COM 29017 2002 11 Bollinger +COM 29019 2002 155 Boone +COM 29021 2002 141 Buchanan +COM 29023 2002 56 Butler +COM 29025 2002 10 Caldwell +COM 29027 2002 24 Callaway +COM 29029 2002 59 Camden +COM 29031 2002 145 Cape Girardeau +COM 29033 2002 22 Carroll +COM 29035 2002 8 Carter +COM 29037 2002 68 Cass +COM 29039 2002 7 Cedar +COM 29041 2002 15 Chariton +COM 29043 2002 69 Christian +COM 29045 2002 13 Clark +COM 29047 2002 304 Clay +COM 29049 2002 15 Clinton +COM 29051 2002 97 Cole +COM 29053 2002 23 Cooper +COM 29055 2002 25 Crawford +COM 29057 2002 11 Dade +COM 29059 2002 9 Dallas +COM 29061 2002 13 Daviess +COM 29063 2002 12 DeKalb +COM 29065 2002 11 Dent +COM 29067 2002 7 Douglas +COM 29069 2002 41 Dunklin +COM 29071 2002 121 Franklin +COM 29073 2002 20 Gasconade +COM 29075 2002 11 Gentry +COM 29077 2002 508 Greene +COM 29079 2002 11 Grundy +COM 29081 2002 16 Harrison +COM 29083 2002 48 Henry +COM 29085 2002 5 Hickory +COM 29087 2002 8 Holt +COM 29089 2002 9 Howard +COM 29091 2002 55 Howell +COM 29093 2002 7 Iron +COM 29095 2002 1079 Jackson +COM 29097 2002 194 Jasper +COM 29099 2002 147 Jefferson +COM 29101 2002 32 Johnson +COM 29103 2002 9 Knox +COM 29105 2002 40 Laclede +COM 29107 2002 40 Lafayette +COM 29109 2002 27 Lawrence +COM 29111 2002 9 Lewis +COM 29113 2002 41 Lincoln +COM 29115 2002 15 Linn +COM 29117 2002 33 Livingston +COM 29119 2002 17 McDonald +COM 29121 2002 14 Macon +COM 29123 2002 9 Madison +COM 29125 2002 11 Maries +COM 29127 2002 39 Marion +COM 29129 2002 4 Mercer +COM 29131 2002 24 Miller +COM 29133 2002 23 Mississippi +COM 29135 2002 15 Moniteau +COM 29137 2002 13 Monroe +COM 29139 2002 20 Montgomery +COM 29141 2002 20 Morgan +COM 29143 2002 23 New Madrid +COM 29145 2002 38 Newton +COM 29147 2002 23 Nodaway +COM 29149 2002 7 Oregon +COM 29151 2002 12 Osage +COM 29153 2002 8 Ozark +COM 29155 2002 27 Pemiscot +COM 29157 2002 14 Perry +COM 29159 2002 53 Pettis +COM 29161 2002 41 Phelps +COM 29163 2002 28 Pike +COM 29165 2002 137 Platte +COM 29167 2002 24 Polk +COM 29169 2002 11 Pulaski +COM 29171 2002 7 Putnam +COM 29173 2002 9 Ralls +COM 29175 2002 22 Randolph +COM 29177 2002 17 Ray +COM 29179 2002 5 Reynolds +COM 29181 2002 5 Ripley +COM 29183 2002 396 St. Charles +COM 29185 2002 5 St. Clair +COM 29186 2002 19 Ste. Genevieve +COM 29187 2002 46 St. Francois +COM 29189 2002 2281 St. Louis +COM 29195 2002 39 Saline +COM 29197 2002 5 Schuyler +COM 29199 2002 9 Scotland +COM 29201 2002 75 Scott +COM 29203 2002 8 Shannon +COM 29205 2002 18 Shelby +COM 29207 2002 42 Stoddard +COM 29209 2002 16 Stone +COM 29211 2002 2 Sullivan +COM 29213 2002 35 Taney +COM 29215 2002 19 Texas +COM 29217 2002 25 Vernon +COM 29219 2002 26 Warren +COM 29221 2002 14 Washington +COM 29223 2002 11 Wayne +COM 29225 2002 40 Webster +COM 29227 2002 3 Worth +COM 29229 2002 24 Wright +COM 29510 2002 794 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_HOUSE.ALO new file mode 100644 index 0000000..a0bbd08 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_HOUSE.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 29000 2002 2503323 MO +HOU 29001 2002 11060 Adair +HOU 29003 2002 6802 Andrew +HOU 29005 2002 3114 Atchison +HOU 29007 2002 10990 Audrain +HOU 29009 2002 16425 Barry +HOU 29011 2002 5496 Barton +HOU 29013 2002 7374 Bates +HOU 29015 2002 12927 Benton +HOU 29017 2002 5650 Bollinger +HOU 29019 2002 59471 Boone +HOU 29021 2002 36836 Buchanan +HOU 29023 2002 19032 Butler +HOU 29025 2002 4555 Caldwell +HOU 29027 2002 16706 Callaway +HOU 29029 2002 34076 Camden +HOU 29031 2002 30198 Cape Girardeau +HOU 29033 2002 4933 Carroll +HOU 29035 2002 3106 Carter +HOU 29037 2002 33720 Cass +HOU 29039 2002 6943 Cedar +HOU 29041 2002 4302 Chariton +HOU 29043 2002 23386 Christian +HOU 29045 2002 3539 Clark +HOU 29047 2002 78728 Clay +HOU 29049 2002 8203 Clinton +HOU 29051 2002 30175 Cole +HOU 29053 2002 6846 Cooper +HOU 29055 2002 11094 Crawford +HOU 29057 2002 3810 Dade +HOU 29059 2002 7100 Dallas +HOU 29061 2002 3911 Daviess +HOU 29063 2002 3930 DeKalb +HOU 29065 2002 7131 Dent +HOU 29067 2002 6055 Douglas +HOU 29069 2002 14980 Dunklin +HOU 29071 2002 39689 Franklin +HOU 29073 2002 7955 Gasconade +HOU 29075 2002 3240 Gentry +HOU 29077 2002 108416 Greene +HOU 29079 2002 5153 Grundy +HOU 29081 2002 4366 Harrison +HOU 29083 2002 10460 Henry +HOU 29085 2002 6380 Hickory +HOU 29087 2002 2952 Holt +HOU 29089 2002 4412 Howard +HOU 29091 2002 16746 Howell +HOU 29093 2002 5004 Iron +HOU 29095 2002 295560 Jackson +HOU 29097 2002 46538 Jasper +HOU 29099 2002 78978 Jefferson +HOU 29101 2002 19387 Johnson +HOU 29103 2002 2341 Knox +HOU 29105 2002 14822 Laclede +HOU 29107 2002 13833 Lafayette +HOU 29109 2002 15062 Lawrence +HOU 29111 2002 4692 Lewis +HOU 29113 2002 16105 Lincoln +HOU 29115 2002 6590 Linn +HOU 29117 2002 6548 Livingston +HOU 29119 2002 9535 McDonald +HOU 29121 2002 7587 Macon +HOU 29123 2002 5752 Madison +HOU 29125 2002 4247 Maries +HOU 29127 2002 12571 Marion +HOU 29129 2002 2159 Mercer +HOU 29131 2002 11606 Miller +HOU 29133 2002 5924 Mississippi +HOU 29135 2002 5842 Moniteau +HOU 29137 2002 4659 Monroe +HOU 29139 2002 5862 Montgomery +HOU 29141 2002 14169 Morgan +HOU 29143 2002 8766 New Madrid +HOU 29145 2002 22499 Newton +HOU 29147 2002 9100 Nodaway +HOU 29149 2002 5097 Oregon +HOU 29151 2002 5999 Osage +HOU 29153 2002 5248 Ozark +HOU 29155 2002 8927 Pemiscot +HOU 29157 2002 7941 Perry +HOU 29159 2002 17107 Pettis +HOU 29161 2002 18211 Phelps +HOU 29163 2002 7591 Pike +HOU 29165 2002 32661 Platte +HOU 29167 2002 11544 Polk +HOU 29169 2002 15749 Pulaski +HOU 29171 2002 2955 Putnam +HOU 29173 2002 4655 Ralls +HOU 29175 2002 10871 Randolph +HOU 29177 2002 9584 Ray +HOU 29179 2002 3844 Reynolds +HOU 29181 2002 6553 Ripley +HOU 29183 2002 114238 St. Charles +HOU 29185 2002 5334 St. Clair +HOU 29186 2002 8163 Ste. Genevieve +HOU 29187 2002 24983 St. Francois +HOU 29189 2002 428355 St. Louis +HOU 29195 2002 10162 Saline +HOU 29197 2002 2077 Schuyler +HOU 29199 2002 2313 Scotland +HOU 29201 2002 17293 Scott +HOU 29203 2002 3950 Shannon +HOU 29205 2002 3279 Shelby +HOU 29207 2002 13494 Stoddard +HOU 29209 2002 16637 Stone +HOU 29211 2002 3417 Sullivan +HOU 29213 2002 20832 Taney +HOU 29215 2002 11025 Texas +HOU 29217 2002 8998 Vernon +HOU 29219 2002 11808 Warren +HOU 29221 2002 10197 Washington +HOU 29223 2002 7715 Wayne +HOU 29225 2002 12458 Webster +HOU 29227 2002 1249 Worth +HOU 29229 2002 8057 Wright +HOU 29510 2002 174641 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_LOGGN.ALO new file mode 100644 index 0000000..9898cc3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_LOGGN.ALO @@ -0,0 +1,142 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 29000 2002 325957681 MO +LOG 29001 2002 1023235 Adair +LOG 29003 2002 689844 Andrew +LOG 29005 2002 579179 Atchison +LOG 29007 2002 1253827 Audrain +LOG 29009 2002 2874469 Barry +LOG 29011 2002 1809954 Barton +LOG 29013 2002 987708 Bates +LOG 29015 2002 2997341 Benton +LOG 29017 2002 6096026 Bollinger +LOG 29019 2002 1998825 Boone +LOG 29021 2002 897304 Buchanan +LOG 29023 2002 6751976 Butler +LOG 29025 2002 721438 Caldwell +LOG 29027 2002 2864611 Callaway +LOG 29029 2002 2127357 Camden +LOG 29031 2002 4571233 Cape Girardeau +LOG 29033 2002 1616772 Carroll +LOG 29035 2002 5791135 Carter +LOG 29037 2002 1466947 Cass +LOG 29039 2002 1363615 Cedar +LOG 29041 2002 3468715 Chariton +LOG 29043 2002 2695425 Christian +LOG 29045 2002 1313314 Clark +LOG 29047 2002 3112470 Clay +LOG 29049 2002 654245 Clinton +LOG 29051 2002 886892 Cole +LOG 29053 2002 756870 Cooper +LOG 29055 2002 8801254 Crawford +LOG 29057 2002 2438363 Dade +LOG 29059 2002 1409262 Dallas +LOG 29061 2002 1190266 Daviess +LOG 29063 2002 713276 DeKalb +LOG 29065 2002 9078639 Dent +LOG 29067 2002 8128704 Douglas +LOG 29069 2002 289811 Dunklin +LOG 29071 2002 2443213 Franklin +LOG 29073 2002 2363210 Gasconade +LOG 29075 2002 448051 Gentry +LOG 29077 2002 1133022 Greene +LOG 29079 2002 1823339 Grundy +LOG 29081 2002 1170673 Harrison +LOG 29083 2002 976865 Henry +LOG 29085 2002 655917 Hickory +LOG 29087 2002 320186 Holt +LOG 29089 2002 2622863 Howard +LOG 29091 2002 9867650 Howell +LOG 29093 2002 8281799 Iron +LOG 29095 2002 1410607 Jackson +LOG 29097 2002 1434606 Jasper +LOG 29099 2002 4659523 Jefferson +LOG 29101 2002 441447 Johnson +LOG 29103 2002 1029673 Knox +LOG 29105 2002 3499219 Laclede +LOG 29107 2002 475371 Lafayette +LOG 29109 2002 1332112 Lawrence +LOG 29111 2002 1432620 Lewis +LOG 29113 2002 2043753 Lincoln +LOG 29115 2002 1288354 Linn +LOG 29117 2002 1289053 Livingston +LOG 29119 2002 5044232 McDonald +LOG 29121 2002 2305496 Macon +LOG 29123 2002 4399060 Madison +LOG 29125 2002 3463630 Maries +LOG 29127 2002 2096172 Marion +LOG 29129 2002 577339 Mercer +LOG 29131 2002 3065988 Miller +LOG 29133 2002 409828 Mississippi +LOG 29135 2002 567193 Moniteau +LOG 29137 2002 1897912 Monroe +LOG 29139 2002 1100985 Montgomery +LOG 29141 2002 2368269 Morgan +LOG 29143 2002 1580251 New Madrid +LOG 29145 2002 5736523 Newton +LOG 29147 2002 465052 Nodaway +LOG 29149 2002 10846680 Oregon +LOG 29151 2002 4500420 Osage +LOG 29153 2002 4565818 Ozark +LOG 29155 2002 295011 Pemiscot +LOG 29157 2002 3765990 Perry +LOG 29159 2002 728724 Pettis +LOG 29161 2002 4069110 Phelps +LOG 29163 2002 2404738 Pike +LOG 29165 2002 529551 Platte +LOG 29167 2002 1287201 Polk +LOG 29169 2002 4074231 Pulaski +LOG 29171 2002 648307 Putnam +LOG 29173 2002 1421997 Ralls +LOG 29175 2002 3629040 Randolph +LOG 29177 2002 447814 Ray +LOG 29179 2002 12889194 Reynolds +LOG 29181 2002 8929732 Ripley +LOG 29183 2002 4035086 St. Charles +LOG 29185 2002 1115085 St. Clair +LOG 29186 2002 0 Ste. Genevieve +LOG 29187 2002 1508415 St. Francois +LOG 29189 2002 6053976 St. Louis +LOG 29195 2002 1047068 Saline +LOG 29197 2002 234657 Schuyler +LOG 29199 2002 981217 Scotland +LOG 29201 2002 572539 Scott +LOG 29203 2002 12176263 Shannon +LOG 29205 2002 795903 Shelby +LOG 29207 2002 787925 Stoddard +LOG 29209 2002 3979130 Stone +LOG 29211 2002 702612 Sullivan +LOG 29213 2002 5910787 Taney +LOG 29215 2002 12255557 Texas +LOG 29217 2002 1273087 Vernon +LOG 29219 2002 1212314 Warren +LOG 29221 2002 6473507 Washington +LOG 29223 2002 11730716 Wayne +LOG 29225 2002 1820092 Webster +LOG 29227 2002 269380 Worth +LOG 29229 2002 5047446 Wright +LOG 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_LSCAP.ALO new file mode 100644 index 0000000..e46f099 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_LSCAP.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 29000 2002 7348 MO +LSC 29001 2002 5 Adair +LSC 29003 2002 5 Andrew +LSC 29005 2002 0 Atchison +LSC 29007 2002 0 Audrain +LSC 29009 2002 5 Barry +LSC 29011 2002 0 Barton +LSC 29013 2002 5 Bates +LSC 29015 2002 5 Benton +LSC 29017 2002 5 Bollinger +LSC 29019 2002 158 Boone +LSC 29021 2002 35 Buchanan +LSC 29023 2002 5 Butler +LSC 29025 2002 5 Caldwell +LSC 29027 2002 5 Callaway +LSC 29029 2002 23 Camden +LSC 29031 2002 39 Cape Girardeau +LSC 29033 2002 0 Carroll +LSC 29035 2002 0 Carter +LSC 29037 2002 178 Cass +LSC 29039 2002 5 Cedar +LSC 29041 2002 0 Chariton +LSC 29043 2002 45 Christian +LSC 29045 2002 5 Clark +LSC 29047 2002 142 Clay +LSC 29049 2002 5 Clinton +LSC 29051 2002 116 Cole +LSC 29053 2002 5 Cooper +LSC 29055 2002 7 Crawford +LSC 29057 2002 0 Dade +LSC 29059 2002 0 Dallas +LSC 29061 2002 5 Daviess +LSC 29063 2002 5 DeKalb +LSC 29065 2002 5 Dent +LSC 29067 2002 0 Douglas +LSC 29069 2002 11 Dunklin +LSC 29071 2002 33 Franklin +LSC 29073 2002 5 Gasconade +LSC 29075 2002 5 Gentry +LSC 29077 2002 221 Greene +LSC 29079 2002 0 Grundy +LSC 29081 2002 0 Harrison +LSC 29083 2002 32 Henry +LSC 29085 2002 0 Hickory +LSC 29087 2002 5 Holt +LSC 29089 2002 0 Howard +LSC 29091 2002 5 Howell +LSC 29093 2002 5 Iron +LSC 29095 2002 1026 Jackson +LSC 29097 2002 32 Jasper +LSC 29099 2002 211 Jefferson +LSC 29101 2002 12 Johnson +LSC 29103 2002 0 Knox +LSC 29105 2002 5 Laclede +LSC 29107 2002 5 Lafayette +LSC 29109 2002 5 Lawrence +LSC 29111 2002 0 Lewis +LSC 29113 2002 94 Lincoln +LSC 29115 2002 2 Linn +LSC 29117 2002 5 Livingston +LSC 29119 2002 5 McDonald +LSC 29121 2002 5 Macon +LSC 29123 2002 5 Madison +LSC 29125 2002 5 Maries +LSC 29127 2002 5 Marion +LSC 29129 2002 5 Mercer +LSC 29131 2002 25 Miller +LSC 29133 2002 5 Mississippi +LSC 29135 2002 5 Moniteau +LSC 29137 2002 5 Monroe +LSC 29139 2002 5 Montgomery +LSC 29141 2002 5 Morgan +LSC 29143 2002 5 New Madrid +LSC 29145 2002 11 Newton +LSC 29147 2002 5 Nodaway +LSC 29149 2002 0 Oregon +LSC 29151 2002 0 Osage +LSC 29153 2002 0 Ozark +LSC 29155 2002 5 Pemiscot +LSC 29157 2002 5 Perry +LSC 29159 2002 9 Pettis +LSC 29161 2002 9 Phelps +LSC 29163 2002 5 Pike +LSC 29165 2002 135 Platte +LSC 29167 2002 5 Polk +LSC 29169 2002 7 Pulaski +LSC 29171 2002 5 Putnam +LSC 29173 2002 5 Ralls +LSC 29175 2002 5 Randolph +LSC 29177 2002 5 Ray +LSC 29179 2002 5 Reynolds +LSC 29181 2002 0 Ripley +LSC 29183 2002 513 St. Charles +LSC 29185 2002 94 St. Clair +LSC 29186 2002 5 Ste. Genevieve +LSC 29187 2002 17 St. Francois +LSC 29189 2002 3450 St. Louis +LSC 29195 2002 32 Saline +LSC 29197 2002 5 Schuyler +LSC 29199 2002 5 Scotland +LSC 29201 2002 38 Scott +LSC 29203 2002 0 Shannon +LSC 29205 2002 0 Shelby +LSC 29207 2002 8 Stoddard +LSC 29209 2002 19 Stone +LSC 29211 2002 0 Sullivan +LSC 29213 2002 49 Taney +LSC 29215 2002 5 Texas +LSC 29217 2002 5 Vernon +LSC 29219 2002 55 Warren +LSC 29221 2002 0 Washington +LSC 29223 2002 5 Wayne +LSC 29225 2002 5 Webster +LSC 29227 2002 0 Worth +LSC 29229 2002 5 Wright +LSC 29510 2002 185 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_MNFG.ALO new file mode 100644 index 0000000..9bcdd4e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_MNFG.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 29000 2002 584198 MO +MFG 29001 2002 2015 Adair +MFG 29003 2002 122 Andrew +MFG 29005 2002 77 Atchison +MFG 29007 2002 3419 Audrain +MFG 29009 2002 9944 Barry +MFG 29011 2002 3504 Barton +MFG 29013 2002 664 Bates +MFG 29015 2002 559 Benton +MFG 29017 2002 257 Bollinger +MFG 29019 2002 9502 Boone +MFG 29021 2002 13068 Buchanan +MFG 29023 2002 6364 Butler +MFG 29025 2002 76 Caldwell +MFG 29027 2002 1700 Callaway +MFG 29029 2002 2008 Camden +MFG 29031 2002 9557 Cape Girardeau +MFG 29033 2002 887 Carroll +MFG 29035 2002 443 Carter +MFG 29037 2002 2710 Cass +MFG 29039 2002 392 Cedar +MFG 29041 2002 128 Chariton +MFG 29043 2002 4121 Christian +MFG 29045 2002 264 Clark +MFG 29047 2002 26397 Clay +MFG 29049 2002 565 Clinton +MFG 29051 2002 8091 Cole +MFG 29053 2002 1110 Cooper +MFG 29055 2002 3083 Crawford +MFG 29057 2002 419 Dade +MFG 29059 2002 484 Dallas +MFG 29061 2002 312 Daviess +MFG 29063 2002 195 DeKalb +MFG 29065 2002 1534 Dent +MFG 29067 2002 1193 Douglas +MFG 29069 2002 2216 Dunklin +MFG 29071 2002 19340 Franklin +MFG 29073 2002 2949 Gasconade +MFG 29075 2002 515 Gentry +MFG 29077 2002 29545 Greene +MFG 29079 2002 1530 Grundy +MFG 29081 2002 110 Harrison +MFG 29083 2002 2750 Henry +MFG 29085 2002 94 Hickory +MFG 29087 2002 303 Holt +MFG 29089 2002 488 Howard +MFG 29091 2002 7077 Howell +MFG 29093 2002 542 Iron +MFG 29095 2002 68037 Jackson +MFG 29097 2002 17828 Jasper +MFG 29099 2002 8646 Jefferson +MFG 29101 2002 3088 Johnson +MFG 29103 2002 109 Knox +MFG 29105 2002 9031 Laclede +MFG 29107 2002 1834 Lafayette +MFG 29109 2002 2337 Lawrence +MFG 29111 2002 652 Lewis +MFG 29113 2002 1911 Lincoln +MFG 29115 2002 3663 Linn +MFG 29117 2002 1484 Livingston +MFG 29119 2002 3109 McDonald +MFG 29121 2002 680 Macon +MFG 29123 2002 739 Madison +MFG 29125 2002 397 Maries +MFG 29127 2002 4536 Marion +MFG 29129 2002 17 Mercer +MFG 29131 2002 1913 Miller +MFG 29133 2002 517 Mississippi +MFG 29135 2002 1031 Moniteau +MFG 29137 2002 1758 Monroe +MFG 29139 2002 1241 Montgomery +MFG 29141 2002 1299 Morgan +MFG 29143 2002 5529 New Madrid +MFG 29145 2002 8025 Newton +MFG 29147 2002 3732 Nodaway +MFG 29149 2002 453 Oregon +MFG 29151 2002 1498 Osage +MFG 29153 2002 328 Ozark +MFG 29155 2002 1797 Pemiscot +MFG 29157 2002 5048 Perry +MFG 29159 2002 8033 Pettis +MFG 29161 2002 3302 Phelps +MFG 29163 2002 1319 Pike +MFG 29165 2002 3504 Platte +MFG 29167 2002 1687 Polk +MFG 29169 2002 558 Pulaski +MFG 29171 2002 160 Putnam +MFG 29173 2002 737 Ralls +MFG 29175 2002 2863 Randolph +MFG 29177 2002 1174 Ray +MFG 29179 2002 616 Reynolds +MFG 29181 2002 1026 Ripley +MFG 29183 2002 28075 St. Charles +MFG 29185 2002 94 St. Clair +MFG 29186 2002 3003 Ste. Genevieve +MFG 29187 2002 4888 St. Francois +MFG 29189 2002 105227 St. Louis +MFG 29195 2002 1820 Saline +MFG 29197 2002 43 Schuyler +MFG 29199 2002 228 Scotland +MFG 29201 2002 3961 Scott +MFG 29203 2002 829 Shannon +MFG 29205 2002 730 Shelby +MFG 29207 2002 3744 Stoddard +MFG 29209 2002 446 Stone +MFG 29211 2002 1592 Sullivan +MFG 29213 2002 1026 Taney +MFG 29215 2002 1502 Texas +MFG 29217 2002 2061 Vernon +MFG 29219 2002 3306 Warren +MFG 29221 2002 1093 Washington +MFG 29223 2002 723 Wayne +MFG 29225 2002 1846 Webster +MFG 29227 2002 69 Worth +MFG 29229 2002 1238 Wright +MFG 29510 2002 46785 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_OIL.ALO new file mode 100644 index 0000000..563a4b7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_OIL.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 29000 2002 170 MO +OIL 29001 2002 0 Adair +OIL 29003 2002 0 Andrew +OIL 29005 2002 0 Atchison +OIL 29007 2002 0 Audrain +OIL 29009 2002 0 Barry +OIL 29011 2002 0 Barton +OIL 29013 2002 0 Bates +OIL 29015 2002 0 Benton +OIL 29017 2002 0 Bollinger +OIL 29019 2002 0 Boone +OIL 29021 2002 0 Buchanan +OIL 29023 2002 7 Butler +OIL 29025 2002 0 Caldwell +OIL 29027 2002 0 Callaway +OIL 29029 2002 0 Camden +OIL 29031 2002 0 Cape Girardeau +OIL 29033 2002 0 Carroll +OIL 29035 2002 0 Carter +OIL 29037 2002 8 Cass +OIL 29039 2002 0 Cedar +OIL 29041 2002 0 Chariton +OIL 29043 2002 0 Christian +OIL 29045 2002 0 Clark +OIL 29047 2002 0 Clay +OIL 29049 2002 0 Clinton +OIL 29051 2002 0 Cole +OIL 29053 2002 0 Cooper +OIL 29055 2002 7 Crawford +OIL 29057 2002 0 Dade +OIL 29059 2002 0 Dallas +OIL 29061 2002 0 Daviess +OIL 29063 2002 0 DeKalb +OIL 29065 2002 0 Dent +OIL 29067 2002 0 Douglas +OIL 29069 2002 0 Dunklin +OIL 29071 2002 7 Franklin +OIL 29073 2002 0 Gasconade +OIL 29075 2002 0 Gentry +OIL 29077 2002 0 Greene +OIL 29079 2002 0 Grundy +OIL 29081 2002 0 Harrison +OIL 29083 2002 0 Henry +OIL 29085 2002 7 Hickory +OIL 29087 2002 0 Holt +OIL 29089 2002 0 Howard +OIL 29091 2002 4 Howell +OIL 29093 2002 0 Iron +OIL 29095 2002 15 Jackson +OIL 29097 2002 8 Jasper +OIL 29099 2002 8 Jefferson +OIL 29101 2002 0 Johnson +OIL 29103 2002 0 Knox +OIL 29105 2002 0 Laclede +OIL 29107 2002 0 Lafayette +OIL 29109 2002 0 Lawrence +OIL 29111 2002 8 Lewis +OIL 29113 2002 0 Lincoln +OIL 29115 2002 0 Linn +OIL 29117 2002 0 Livingston +OIL 29119 2002 0 McDonald +OIL 29121 2002 0 Macon +OIL 29123 2002 0 Madison +OIL 29125 2002 0 Maries +OIL 29127 2002 0 Marion +OIL 29129 2002 0 Mercer +OIL 29131 2002 0 Miller +OIL 29133 2002 0 Mississippi +OIL 29135 2002 0 Moniteau +OIL 29137 2002 0 Monroe +OIL 29139 2002 0 Montgomery +OIL 29141 2002 0 Morgan +OIL 29143 2002 0 New Madrid +OIL 29145 2002 0 Newton +OIL 29147 2002 0 Nodaway +OIL 29149 2002 0 Oregon +OIL 29151 2002 0 Osage +OIL 29153 2002 0 Ozark +OIL 29155 2002 0 Pemiscot +OIL 29157 2002 0 Perry +OIL 29159 2002 0 Pettis +OIL 29161 2002 0 Phelps +OIL 29163 2002 0 Pike +OIL 29165 2002 8 Platte +OIL 29167 2002 0 Polk +OIL 29169 2002 0 Pulaski +OIL 29171 2002 0 Putnam +OIL 29173 2002 0 Ralls +OIL 29175 2002 0 Randolph +OIL 29177 2002 0 Ray +OIL 29179 2002 8 Reynolds +OIL 29181 2002 0 Ripley +OIL 29183 2002 8 St. Charles +OIL 29185 2002 0 St. Clair +OIL 29186 2002 0 Ste. Genevieve +OIL 29187 2002 0 St. Francois +OIL 29189 2002 51 St. Louis +OIL 29195 2002 0 Saline +OIL 29197 2002 0 Schuyler +OIL 29199 2002 0 Scotland +OIL 29201 2002 8 Scott +OIL 29203 2002 0 Shannon +OIL 29205 2002 0 Shelby +OIL 29207 2002 0 Stoddard +OIL 29209 2002 0 Stone +OIL 29211 2002 0 Sullivan +OIL 29213 2002 0 Taney +OIL 29215 2002 0 Texas +OIL 29217 2002 0 Vernon +OIL 29219 2002 0 Warren +OIL 29221 2002 8 Washington +OIL 29223 2002 0 Wayne +OIL 29225 2002 0 Webster +OIL 29227 2002 0 Worth +OIL 29229 2002 0 Wright +OIL 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_POP.ALO new file mode 100644 index 0000000..635303e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_POP.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 29000 2002 5679770 MO +POP 29001 2002 24865 Adair +POP 29003 2002 16695 Andrew +POP 29005 2002 6301 Atchison +POP 29007 2002 25838 Audrain +POP 29009 2002 34353 Barry +POP 29011 2002 12889 Barton +POP 29013 2002 16969 Bates +POP 29015 2002 17719 Benton +POP 29017 2002 12300 Bollinger +POP 29019 2002 138641 Boone +POP 29021 2002 85304 Buchanan +POP 29023 2002 40866 Butler +POP 29025 2002 9077 Caldwell +POP 29027 2002 42246 Callaway +POP 29029 2002 37951 Camden +POP 29031 2002 69489 Cape Girardeau +POP 29033 2002 10247 Carroll +POP 29035 2002 5912 Carter +POP 29037 2002 87160 Cass +POP 29039 2002 13906 Cedar +POP 29041 2002 8271 Chariton +POP 29043 2002 59266 Christian +POP 29045 2002 7484 Clark +POP 29047 2002 191339 Clay +POP 29049 2002 19625 Clinton +POP 29051 2002 71902 Cole +POP 29053 2002 17062 Cooper +POP 29055 2002 23270 Crawford +POP 29057 2002 7917 Dade +POP 29059 2002 15929 Dallas +POP 29061 2002 7975 Daviess +POP 29063 2002 13048 DeKalb +POP 29065 2002 14859 Dent +POP 29067 2002 13352 Douglas +POP 29069 2002 32830 Dunklin +POP 29071 2002 96121 Franklin +POP 29073 2002 15438 Gasconade +POP 29075 2002 6664 Gentry +POP 29077 2002 243226 Greene +POP 29079 2002 10203 Grundy +POP 29081 2002 8785 Harrison +POP 29083 2002 22254 Henry +POP 29085 2002 8894 Hickory +POP 29087 2002 5144 Holt +POP 29089 2002 10045 Howard +POP 29091 2002 37293 Howell +POP 29093 2002 10482 Iron +POP 29095 2002 659228 Jackson +POP 29097 2002 106893 Jasper +POP 29099 2002 203985 Jefferson +POP 29101 2002 49689 Johnson +POP 29103 2002 4295 Knox +POP 29105 2002 32927 Laclede +POP 29107 2002 33015 Lafayette +POP 29109 2002 36166 Lawrence +POP 29111 2002 10396 Lewis +POP 29113 2002 42429 Lincoln +POP 29115 2002 13526 Linn +POP 29117 2002 14388 Livingston +POP 29119 2002 21728 McDonald +POP 29121 2002 15470 Macon +POP 29123 2002 11885 Madison +POP 29125 2002 8758 Maries +POP 29127 2002 28053 Marion +POP 29129 2002 3669 Mercer +POP 29131 2002 24226 Miller +POP 29133 2002 13149 Mississippi +POP 29135 2002 14970 Moniteau +POP 29137 2002 9342 Monroe +POP 29139 2002 12082 Montgomery +POP 29141 2002 19761 Morgan +POP 29143 2002 19271 New Madrid +POP 29145 2002 53214 Newton +POP 29147 2002 21834 Nodaway +POP 29149 2002 10262 Oregon +POP 29151 2002 13090 Osage +POP 29153 2002 9451 Ozark +POP 29155 2002 19873 Pemiscot +POP 29157 2002 18210 Perry +POP 29159 2002 39445 Pettis +POP 29161 2002 40574 Phelps +POP 29163 2002 18380 Pike +POP 29165 2002 77793 Platte +POP 29167 2002 27636 Polk +POP 29169 2002 43951 Pulaski +POP 29171 2002 5189 Putnam +POP 29173 2002 9695 Ralls +POP 29175 2002 24752 Randolph +POP 29177 2002 23736 Ray +POP 29179 2002 6607 Reynolds +POP 29181 2002 13599 Ripley +POP 29183 2002 303525 St. Charles +POP 29185 2002 9628 St. Clair +POP 29186 2002 18058 Ste. Genevieve +POP 29187 2002 56809 St. Francois +POP 29189 2002 1014896 St. Louis +POP 29195 2002 22993 Saline +POP 29197 2002 4217 Schuyler +POP 29199 2002 4896 Scotland +POP 29201 2002 40507 Scott +POP 29203 2002 8350 Shannon +POP 29205 2002 6733 Shelby +POP 29207 2002 29881 Stoddard +POP 29209 2002 29445 Stone +POP 29211 2002 7260 Sullivan +POP 29213 2002 40687 Taney +POP 29215 2002 24236 Texas +POP 29217 2002 20285 Vernon +POP 29219 2002 26157 Warren +POP 29221 2002 23661 Washington +POP 29223 2002 13151 Wayne +POP 29225 2002 32671 Webster +POP 29227 2002 2306 Worth +POP 29229 2002 18168 Wright +POP 29510 2002 347252 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_RAIL.ALO new file mode 100644 index 0000000..8e141e9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_RAIL.ALO @@ -0,0 +1,142 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 29000 2002 39545.770 MO +RR 29001 2002 142.890 Adair +RR 29003 2002 468.590 Andrew +RR 29005 2002 60.180 Atchison +RR 29007 2002 184.720 Audrain +RR 29009 2002 67.220 Barry +RR 29011 2002 508.340 Barton +RR 29013 2002 502.990 Bates +RR 29015 2002 0.000 Benton +RR 29017 2002 0.000 Bollinger +RR 29019 2002 68.640 Boone +RR 29021 2002 930.790 Buchanan +RR 29023 2002 325.010 Butler +RR 29025 2002 436.730 Caldwell +RR 29027 2002 7.780 Callaway +RR 29029 2002 0.000 Camden +RR 29031 2002 461.300 Cape Girardeau +RR 29033 2002 967.550 Carroll +RR 29035 2002 0.000 Carter +RR 29037 2002 586.420 Cass +RR 29039 2002 0.000 Cedar +RR 29041 2002 894.160 Chariton +RR 29043 2002 154.130 Christian +RR 29045 2002 674.840 Clark +RR 29047 2002 1008.770 Clay +RR 29049 2002 0.000 Clinton +RR 29051 2002 1021.290 Cole +RR 29053 2002 1026.600 Cooper +RR 29055 2002 178.140 Crawford +RR 29057 2002 378.060 Dade +RR 29059 2002 0.000 Dallas +RR 29061 2002 71.510 Daviess +RR 29063 2002 0.000 DeKalb +RR 29065 2002 0.000 Dent +RR 29067 2002 0.000 Douglas +RR 29069 2002 202.610 Dunklin +RR 29071 2002 1095.120 Franklin +RR 29073 2002 623.170 Gasconade +RR 29075 2002 0.000 Gentry +RR 29077 2002 1429.030 Greene +RR 29079 2002 229.480 Grundy +RR 29081 2002 0.000 Harrison +RR 29083 2002 0.000 Henry +RR 29085 2002 0.000 Hickory +RR 29087 2002 752.800 Holt +RR 29089 2002 40.960 Howard +RR 29091 2002 462.370 Howell +RR 29093 2002 26.290 Iron +RR 29095 2002 3210.750 Jackson +RR 29097 2002 310.330 Jasper +RR 29099 2002 293.660 Jefferson +RR 29101 2002 260.260 Johnson +RR 29103 2002 561.020 Knox +RR 29105 2002 216.590 Laclede +RR 29107 2002 814.910 Lafayette +RR 29109 2002 277.090 Lawrence +RR 29111 2002 123.060 Lewis +RR 29113 2002 483.830 Lincoln +RR 29115 2002 775.090 Linn +RR 29117 2002 107.180 Livingston +RR 29119 2002 312.590 McDonald +RR 29121 2002 655.410 Macon +RR 29123 2002 0.000 Madison +RR 29125 2002 0.000 Maries +RR 29127 2002 402.430 Marion +RR 29129 2002 190.840 Mercer +RR 29131 2002 0.000 Miller +RR 29133 2002 2.900 Mississippi +RR 29135 2002 675.990 Moniteau +RR 29137 2002 341.460 Monroe +RR 29139 2002 114.260 Montgomery +RR 29141 2002 237.730 Morgan +RR 29143 2002 128.050 New Madrid +RR 29145 2002 431.660 Newton +RR 29147 2002 0.000 Nodaway +RR 29149 2002 174.830 Oregon +RR 29151 2002 507.150 Osage +RR 29153 2002 0.000 Ozark +RR 29155 2002 85.560 Pemiscot +RR 29157 2002 34.650 Perry +RR 29159 2002 365.280 Pettis +RR 29161 2002 278.840 Phelps +RR 29163 2002 465.050 Pike +RR 29165 2002 795.090 Platte +RR 29167 2002 0.000 Polk +RR 29169 2002 216.590 Pulaski +RR 29171 2002 0.000 Putnam +RR 29173 2002 335.090 Ralls +RR 29175 2002 538.880 Randolph +RR 29177 2002 1596.010 Ray +RR 29179 2002 0.000 Reynolds +RR 29181 2002 0.000 Ripley +RR 29183 2002 582.750 St. Charles +RR 29185 2002 0.000 St. Clair +RR 29186 2002 140.510 Ste. Genevieve +RR 29187 2002 37.130 St. Francois +RR 29189 2002 939.140 St. Louis +RR 29195 2002 833.820 Saline +RR 29197 2002 0.000 Schuyler +RR 29199 2002 418.120 Scotland +RR 29201 2002 627.600 Scott +RR 29203 2002 0.000 Shannon +RR 29205 2002 80.470 Shelby +RR 29207 2002 636.080 Stoddard +RR 29209 2002 0.000 Stone +RR 29211 2002 0.000 Sullivan +RR 29213 2002 0.000 Taney +RR 29215 2002 165.880 Texas +RR 29217 2002 347.460 Vernon +RR 29219 2002 98.740 Warren +RR 29221 2002 23.450 Washington +RR 29223 2002 18.940 Wayne +RR 29225 2002 863.240 Webster +RR 29227 2002 0.000 Worth +RR 29229 2002 569.330 Wright +RR 29510 2002 854.520 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_RVPRK.ALO new file mode 100644 index 0000000..a051138 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_RVPRK.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 29000 2002 145 MO +RVP 29001 2002 0 Adair +RVP 29003 2002 1 Andrew +RVP 29005 2002 1 Atchison +RVP 29007 2002 0 Audrain +RVP 29009 2002 2 Barry +RVP 29011 2002 0 Barton +RVP 29013 2002 1 Bates +RVP 29015 2002 4 Benton +RVP 29017 2002 1 Bollinger +RVP 29019 2002 2 Boone +RVP 29021 2002 0 Buchanan +RVP 29023 2002 0 Butler +RVP 29025 2002 1 Caldwell +RVP 29027 2002 0 Callaway +RVP 29029 2002 5 Camden +RVP 29031 2002 0 Cape Girardeau +RVP 29033 2002 0 Carroll +RVP 29035 2002 0 Carter +RVP 29037 2002 0 Cass +RVP 29039 2002 1 Cedar +RVP 29041 2002 0 Chariton +RVP 29043 2002 0 Christian +RVP 29045 2002 0 Clark +RVP 29047 2002 1 Clay +RVP 29049 2002 0 Clinton +RVP 29051 2002 0 Cole +RVP 29053 2002 0 Cooper +RVP 29055 2002 7 Crawford +RVP 29057 2002 0 Dade +RVP 29059 2002 0 Dallas +RVP 29061 2002 0 Daviess +RVP 29063 2002 1 DeKalb +RVP 29065 2002 0 Dent +RVP 29067 2002 0 Douglas +RVP 29069 2002 0 Dunklin +RVP 29071 2002 6 Franklin +RVP 29073 2002 0 Gasconade +RVP 29075 2002 0 Gentry +RVP 29077 2002 5 Greene +RVP 29079 2002 0 Grundy +RVP 29081 2002 0 Harrison +RVP 29083 2002 3 Henry +RVP 29085 2002 3 Hickory +RVP 29087 2002 1 Holt +RVP 29089 2002 0 Howard +RVP 29091 2002 1 Howell +RVP 29093 2002 1 Iron +RVP 29095 2002 7 Jackson +RVP 29097 2002 1 Jasper +RVP 29099 2002 3 Jefferson +RVP 29101 2002 1 Johnson +RVP 29103 2002 1 Knox +RVP 29105 2002 7 Laclede +RVP 29107 2002 1 Lafayette +RVP 29109 2002 2 Lawrence +RVP 29111 2002 0 Lewis +RVP 29113 2002 1 Lincoln +RVP 29115 2002 0 Linn +RVP 29117 2002 0 Livingston +RVP 29119 2002 7 McDonald +RVP 29121 2002 0 Macon +RVP 29123 2002 3 Madison +RVP 29125 2002 0 Maries +RVP 29127 2002 1 Marion +RVP 29129 2002 0 Mercer +RVP 29131 2002 1 Miller +RVP 29133 2002 0 Mississippi +RVP 29135 2002 0 Moniteau +RVP 29137 2002 1 Monroe +RVP 29139 2002 0 Montgomery +RVP 29141 2002 2 Morgan +RVP 29143 2002 1 New Madrid +RVP 29145 2002 0 Newton +RVP 29147 2002 0 Nodaway +RVP 29149 2002 0 Oregon +RVP 29151 2002 0 Osage +RVP 29153 2002 3 Ozark +RVP 29155 2002 0 Pemiscot +RVP 29157 2002 0 Perry +RVP 29159 2002 1 Pettis +RVP 29161 2002 1 Phelps +RVP 29163 2002 2 Pike +RVP 29165 2002 3 Platte +RVP 29167 2002 0 Polk +RVP 29169 2002 2 Pulaski +RVP 29171 2002 0 Putnam +RVP 29173 2002 1 Ralls +RVP 29175 2002 1 Randolph +RVP 29177 2002 0 Ray +RVP 29179 2002 6 Reynolds +RVP 29181 2002 1 Ripley +RVP 29183 2002 1 St. Charles +RVP 29185 2002 1 St. Clair +RVP 29186 2002 0 Ste. Genevieve +RVP 29187 2002 1 St. Francois +RVP 29189 2002 7 St. Louis +RVP 29195 2002 0 Saline +RVP 29197 2002 0 Schuyler +RVP 29199 2002 0 Scotland +RVP 29201 2002 0 Scott +RVP 29203 2002 1 Shannon +RVP 29205 2002 1 Shelby +RVP 29207 2002 0 Stoddard +RVP 29209 2002 6 Stone +RVP 29211 2002 0 Sullivan +RVP 29213 2002 14 Taney +RVP 29215 2002 0 Texas +RVP 29217 2002 2 Vernon +RVP 29219 2002 0 Warren +RVP 29221 2002 0 Washington +RVP 29223 2002 1 Wayne +RVP 29225 2002 1 Webster +RVP 29227 2002 0 Worth +RVP 29229 2002 0 Wright +RVP 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_SBC.ALO new file mode 100644 index 0000000..23322b9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_SBC.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 29000 2002 6922 MO +SBC 29001 2002 12 Adair +SBC 29003 2002 8 Andrew +SBC 29005 2002 0 Atchison +SBC 29007 2002 0 Audrain +SBC 29009 2002 0 Barry +SBC 29011 2002 0 Barton +SBC 29013 2002 8 Bates +SBC 29015 2002 8 Benton +SBC 29017 2002 0 Bollinger +SBC 29019 2002 158 Boone +SBC 29021 2002 35 Buchanan +SBC 29023 2002 0 Butler +SBC 29025 2002 4 Caldwell +SBC 29027 2002 20 Callaway +SBC 29029 2002 23 Camden +SBC 29031 2002 0 Cape Girardeau +SBC 29033 2002 0 Carroll +SBC 29035 2002 0 Carter +SBC 29037 2002 178 Cass +SBC 29039 2002 7 Cedar +SBC 29041 2002 0 Chariton +SBC 29043 2002 0 Christian +SBC 29045 2002 4 Clark +SBC 29047 2002 142 Clay +SBC 29049 2002 9 Clinton +SBC 29051 2002 116 Cole +SBC 29053 2002 8 Cooper +SBC 29055 2002 7 Crawford +SBC 29057 2002 0 Dade +SBC 29059 2002 0 Dallas +SBC 29061 2002 4 Daviess +SBC 29063 2002 6 DeKalb +SBC 29065 2002 7 Dent +SBC 29067 2002 0 Douglas +SBC 29069 2002 0 Dunklin +SBC 29071 2002 33 Franklin +SBC 29073 2002 7 Gasconade +SBC 29075 2002 3 Gentry +SBC 29077 2002 221 Greene +SBC 29079 2002 0 Grundy +SBC 29081 2002 0 Harrison +SBC 29083 2002 10 Henry +SBC 29085 2002 0 Hickory +SBC 29087 2002 2 Holt +SBC 29089 2002 0 Howard +SBC 29091 2002 0 Howell +SBC 29093 2002 0 Iron +SBC 29095 2002 1026 Jackson +SBC 29097 2002 0 Jasper +SBC 29099 2002 211 Jefferson +SBC 29101 2002 12 Johnson +SBC 29103 2002 0 Knox +SBC 29105 2002 15 Laclede +SBC 29107 2002 15 Lafayette +SBC 29109 2002 17 Lawrence +SBC 29111 2002 0 Lewis +SBC 29113 2002 20 Lincoln +SBC 29115 2002 2 Linn +SBC 29117 2002 7 Livingston +SBC 29119 2002 0 McDonald +SBC 29121 2002 7 Macon +SBC 29123 2002 0 Madison +SBC 29125 2002 4 Maries +SBC 29127 2002 13 Marion +SBC 29129 2002 2 Mercer +SBC 29131 2002 25 Miller +SBC 29133 2002 0 Mississippi +SBC 29135 2002 7 Moniteau +SBC 29137 2002 4 Monroe +SBC 29139 2002 6 Montgomery +SBC 29141 2002 9 Morgan +SBC 29143 2002 0 New Madrid +SBC 29145 2002 0 Newton +SBC 29147 2002 10 Nodaway +SBC 29149 2002 0 Oregon +SBC 29151 2002 0 Osage +SBC 29153 2002 0 Ozark +SBC 29155 2002 0 Pemiscot +SBC 29157 2002 0 Perry +SBC 29159 2002 9 Pettis +SBC 29161 2002 9 Phelps +SBC 29163 2002 9 Pike +SBC 29165 2002 135 Platte +SBC 29167 2002 13 Polk +SBC 29169 2002 7 Pulaski +SBC 29171 2002 2 Putnam +SBC 29173 2002 5 Ralls +SBC 29175 2002 12 Randolph +SBC 29177 2002 11 Ray +SBC 29179 2002 0 Reynolds +SBC 29181 2002 0 Ripley +SBC 29183 2002 513 St. Charles +SBC 29185 2002 5 St. Clair +SBC 29186 2002 0 Ste. Genevieve +SBC 29187 2002 0 St. Francois +SBC 29189 2002 3450 St. Louis +SBC 29195 2002 11 Saline +SBC 29197 2002 2 Schuyler +SBC 29199 2002 2 Scotland +SBC 29201 2002 0 Scott +SBC 29203 2002 0 Shannon +SBC 29205 2002 0 Shelby +SBC 29207 2002 0 Stoddard +SBC 29209 2002 0 Stone +SBC 29211 2002 0 Sullivan +SBC 29213 2002 0 Taney +SBC 29215 2002 11 Texas +SBC 29217 2002 0 Vernon +SBC 29219 2002 55 Warren +SBC 29221 2002 0 Washington +SBC 29223 2002 0 Wayne +SBC 29225 2002 15 Webster +SBC 29227 2002 0 Worth +SBC 29229 2002 9 Wright +SBC 29510 2002 185 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_SBR.ALO new file mode 100644 index 0000000..3c93aef --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_SBR.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 29000 2002 2102506 MO +SBR 29001 2002 11060 Adair +SBR 29003 2002 6802 Andrew +SBR 29005 2002 3114 Atchison +SBR 29007 2002 10990 Audrain +SBR 29009 2002 0 Barry +SBR 29011 2002 0 Barton +SBR 29013 2002 7374 Bates +SBR 29015 2002 12927 Benton +SBR 29017 2002 0 Bollinger +SBR 29019 2002 59471 Boone +SBR 29021 2002 36836 Buchanan +SBR 29023 2002 0 Butler +SBR 29025 2002 4555 Caldwell +SBR 29027 2002 16706 Callaway +SBR 29029 2002 34076 Camden +SBR 29031 2002 0 Cape Girardeau +SBR 29033 2002 4933 Carroll +SBR 29035 2002 0 Carter +SBR 29037 2002 33720 Cass +SBR 29039 2002 6943 Cedar +SBR 29041 2002 4302 Chariton +SBR 29043 2002 0 Christian +SBR 29045 2002 3539 Clark +SBR 29047 2002 78728 Clay +SBR 29049 2002 8203 Clinton +SBR 29051 2002 30175 Cole +SBR 29053 2002 6846 Cooper +SBR 29055 2002 11094 Crawford +SBR 29057 2002 3810 Dade +SBR 29059 2002 7100 Dallas +SBR 29061 2002 3911 Daviess +SBR 29063 2002 3930 DeKalb +SBR 29065 2002 7131 Dent +SBR 29067 2002 0 Douglas +SBR 29069 2002 0 Dunklin +SBR 29071 2002 39689 Franklin +SBR 29073 2002 7955 Gasconade +SBR 29075 2002 3240 Gentry +SBR 29077 2002 108416 Greene +SBR 29079 2002 5153 Grundy +SBR 29081 2002 4366 Harrison +SBR 29083 2002 10460 Henry +SBR 29085 2002 6380 Hickory +SBR 29087 2002 2952 Holt +SBR 29089 2002 4412 Howard +SBR 29091 2002 0 Howell +SBR 29093 2002 0 Iron +SBR 29095 2002 295560 Jackson +SBR 29097 2002 0 Jasper +SBR 29099 2002 78978 Jefferson +SBR 29101 2002 19387 Johnson +SBR 29103 2002 2341 Knox +SBR 29105 2002 14822 Laclede +SBR 29107 2002 13833 Lafayette +SBR 29109 2002 15062 Lawrence +SBR 29111 2002 4692 Lewis +SBR 29113 2002 16105 Lincoln +SBR 29115 2002 6590 Linn +SBR 29117 2002 6548 Livingston +SBR 29119 2002 0 McDonald +SBR 29121 2002 7587 Macon +SBR 29123 2002 0 Madison +SBR 29125 2002 4247 Maries +SBR 29127 2002 12571 Marion +SBR 29129 2002 2159 Mercer +SBR 29131 2002 11606 Miller +SBR 29133 2002 0 Mississippi +SBR 29135 2002 5842 Moniteau +SBR 29137 2002 4659 Monroe +SBR 29139 2002 5862 Montgomery +SBR 29141 2002 14169 Morgan +SBR 29143 2002 0 New Madrid +SBR 29145 2002 0 Newton +SBR 29147 2002 9100 Nodaway +SBR 29149 2002 0 Oregon +SBR 29151 2002 5999 Osage +SBR 29153 2002 0 Ozark +SBR 29155 2002 0 Pemiscot +SBR 29157 2002 0 Perry +SBR 29159 2002 17107 Pettis +SBR 29161 2002 18211 Phelps +SBR 29163 2002 7591 Pike +SBR 29165 2002 32661 Platte +SBR 29167 2002 11544 Polk +SBR 29169 2002 15749 Pulaski +SBR 29171 2002 2955 Putnam +SBR 29173 2002 4655 Ralls +SBR 29175 2002 10871 Randolph +SBR 29177 2002 9584 Ray +SBR 29179 2002 0 Reynolds +SBR 29181 2002 0 Ripley +SBR 29183 2002 114238 St. Charles +SBR 29185 2002 5334 St. Clair +SBR 29186 2002 0 Ste. Genevieve +SBR 29187 2002 0 St. Francois +SBR 29189 2002 428355 St. Louis +SBR 29195 2002 10162 Saline +SBR 29197 2002 2077 Schuyler +SBR 29199 2002 2313 Scotland +SBR 29201 2002 0 Scott +SBR 29203 2002 3950 Shannon +SBR 29205 2002 3279 Shelby +SBR 29207 2002 0 Stoddard +SBR 29209 2002 0 Stone +SBR 29211 2002 3417 Sullivan +SBR 29213 2002 0 Taney +SBR 29215 2002 11025 Texas +SBR 29217 2002 0 Vernon +SBR 29219 2002 11808 Warren +SBR 29221 2002 10197 Washington +SBR 29223 2002 0 Wayne +SBR 29225 2002 12458 Webster +SBR 29227 2002 1249 Worth +SBR 29229 2002 8057 Wright +SBR 29510 2002 174641 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_SNOWM.ALO new file mode 100644 index 0000000..ee51287 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_SNOWM.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 29000 2002 0 MO +SNM 29001 2002 0 Adair +SNM 29003 2002 0 Andrew +SNM 29005 2002 0 Atchison +SNM 29007 2002 0 Audrain +SNM 29009 2002 0 Barry +SNM 29011 2002 0 Barton +SNM 29013 2002 0 Bates +SNM 29015 2002 0 Benton +SNM 29017 2002 0 Bollinger +SNM 29019 2002 0 Boone +SNM 29021 2002 0 Buchanan +SNM 29023 2002 0 Butler +SNM 29025 2002 0 Caldwell +SNM 29027 2002 0 Callaway +SNM 29029 2002 0 Camden +SNM 29031 2002 0 Cape Girardeau +SNM 29033 2002 0 Carroll +SNM 29035 2002 0 Carter +SNM 29037 2002 0 Cass +SNM 29039 2002 0 Cedar +SNM 29041 2002 0 Chariton +SNM 29043 2002 0 Christian +SNM 29045 2002 0 Clark +SNM 29047 2002 0 Clay +SNM 29049 2002 0 Clinton +SNM 29051 2002 0 Cole +SNM 29053 2002 0 Cooper +SNM 29055 2002 0 Crawford +SNM 29057 2002 0 Dade +SNM 29059 2002 0 Dallas +SNM 29061 2002 0 Daviess +SNM 29063 2002 0 DeKalb +SNM 29065 2002 0 Dent +SNM 29067 2002 0 Douglas +SNM 29069 2002 0 Dunklin +SNM 29071 2002 0 Franklin +SNM 29073 2002 0 Gasconade +SNM 29075 2002 0 Gentry +SNM 29077 2002 0 Greene +SNM 29079 2002 0 Grundy +SNM 29081 2002 0 Harrison +SNM 29083 2002 0 Henry +SNM 29085 2002 0 Hickory +SNM 29087 2002 0 Holt +SNM 29089 2002 0 Howard +SNM 29091 2002 0 Howell +SNM 29093 2002 0 Iron +SNM 29095 2002 0 Jackson +SNM 29097 2002 0 Jasper +SNM 29099 2002 0 Jefferson +SNM 29101 2002 0 Johnson +SNM 29103 2002 0 Knox +SNM 29105 2002 0 Laclede +SNM 29107 2002 0 Lafayette +SNM 29109 2002 0 Lawrence +SNM 29111 2002 0 Lewis +SNM 29113 2002 0 Lincoln +SNM 29115 2002 0 Linn +SNM 29117 2002 0 Livingston +SNM 29119 2002 0 McDonald +SNM 29121 2002 0 Macon +SNM 29123 2002 0 Madison +SNM 29125 2002 0 Maries +SNM 29127 2002 0 Marion +SNM 29129 2002 0 Mercer +SNM 29131 2002 0 Miller +SNM 29133 2002 0 Mississippi +SNM 29135 2002 0 Moniteau +SNM 29137 2002 0 Monroe +SNM 29139 2002 0 Montgomery +SNM 29141 2002 0 Morgan +SNM 29143 2002 0 New Madrid +SNM 29145 2002 0 Newton +SNM 29147 2002 0 Nodaway +SNM 29149 2002 0 Oregon +SNM 29151 2002 0 Osage +SNM 29153 2002 0 Ozark +SNM 29155 2002 0 Pemiscot +SNM 29157 2002 0 Perry +SNM 29159 2002 0 Pettis +SNM 29161 2002 0 Phelps +SNM 29163 2002 0 Pike +SNM 29165 2002 0 Platte +SNM 29167 2002 0 Polk +SNM 29169 2002 0 Pulaski +SNM 29171 2002 0 Putnam +SNM 29173 2002 0 Ralls +SNM 29175 2002 0 Randolph +SNM 29177 2002 0 Ray +SNM 29179 2002 0 Reynolds +SNM 29181 2002 0 Ripley +SNM 29183 2002 0 St. Charles +SNM 29185 2002 0 St. Clair +SNM 29186 2002 0 Ste. Genevieve +SNM 29187 2002 0 St. Francois +SNM 29189 2002 0 St. Louis +SNM 29195 2002 0 Saline +SNM 29197 2002 0 Schuyler +SNM 29199 2002 0 Scotland +SNM 29201 2002 0 Scott +SNM 29203 2002 0 Shannon +SNM 29205 2002 0 Shelby +SNM 29207 2002 0 Stoddard +SNM 29209 2002 0 Stone +SNM 29211 2002 0 Sullivan +SNM 29213 2002 0 Taney +SNM 29215 2002 0 Texas +SNM 29217 2002 0 Vernon +SNM 29219 2002 0 Warren +SNM 29221 2002 0 Washington +SNM 29223 2002 0 Wayne +SNM 29225 2002 0 Webster +SNM 29227 2002 0 Worth +SNM 29229 2002 0 Wright +SNM 29510 2002 0 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_WIB.ALO new file mode 100644 index 0000000..da9ff6d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_WIB.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 29000 1990 2102 MO +WIB 29001 1990 4 Adair +WIB 29003 1990 3 Andrew +WIB 29005 1990 7 Atchison +WIB 29007 1990 9 Audrain +WIB 29009 1990 31 Barry +WIB 29011 1990 6 Barton +WIB 29013 1990 8 Bates +WIB 29015 1990 122 Benton +WIB 29017 1990 1 Bollinger +WIB 29019 1990 15 Boone +WIB 29021 1990 13 Buchanan +WIB 29023 1990 4 Butler +WIB 29025 1990 1 Caldwell +WIB 29027 1990 21 Callaway +WIB 29029 1990 139 Camden +WIB 29031 1990 20 Cape Girardeau +WIB 29033 1990 20 Carroll +WIB 29035 1990 4 Carter +WIB 29037 1990 9 Cass +WIB 29039 1990 58 Cedar +WIB 29041 1990 32 Chariton +WIB 29043 1990 2 Christian +WIB 29045 1990 12 Clark +WIB 29047 1990 33 Clay +WIB 29049 1990 12 Clinton +WIB 29051 1990 20 Cole +WIB 29053 1990 13 Cooper +WIB 29055 1990 3 Crawford +WIB 29057 1990 41 Dade +WIB 29059 1990 3 Dallas +WIB 29061 1990 5 Daviess +WIB 29063 1990 4 DeKalb +WIB 29065 1990 3 Dent +WIB 29067 1990 0 Douglas +WIB 29069 1990 4 Dunklin +WIB 29071 1990 20 Franklin +WIB 29073 1990 13 Gasconade +WIB 29075 1990 1 Gentry +WIB 29077 1990 7 Greene +WIB 29079 1990 6 Grundy +WIB 29081 1990 3 Harrison +WIB 29083 1990 78 Henry +WIB 29085 1990 34 Hickory +WIB 29087 1990 19 Holt +WIB 29089 1990 12 Howard +WIB 29091 1990 1 Howell +WIB 29093 1990 2 Iron +WIB 29095 1990 29 Jackson +WIB 29097 1990 4 Jasper +WIB 29099 1990 19 Jefferson +WIB 29101 1990 6 Johnson +WIB 29103 1990 3 Knox +WIB 29105 1990 6 Laclede +WIB 29107 1990 25 Lafayette +WIB 29109 1990 1 Lawrence +WIB 29111 1990 15 Lewis +WIB 29113 1990 26 Lincoln +WIB 29115 1990 3 Linn +WIB 29117 1990 10 Livingston +WIB 29119 1990 0 McDonald +WIB 29121 1990 23 Macon +WIB 29123 1990 2 Madison +WIB 29125 1990 6 Maries +WIB 29127 1990 15 Marion +WIB 29129 1990 2 Mercer +WIB 29131 1990 20 Miller +WIB 29133 1990 41 Mississippi +WIB 29135 1990 6 Moniteau +WIB 29137 1990 63 Monroe +WIB 29139 1990 8 Montgomery +WIB 29141 1990 43 Morgan +WIB 29143 1990 52 New Madrid +WIB 29145 1990 1 Newton +WIB 29147 1990 3 Nodaway +WIB 29149 1990 0 Oregon +WIB 29151 1990 19 Osage +WIB 29153 1990 21 Ozark +WIB 29155 1990 50 Pemiscot +WIB 29157 1990 25 Perry +WIB 29159 1990 4 Pettis +WIB 29161 1990 4 Phelps +WIB 29163 1990 31 Pike +WIB 29165 1990 18 Platte +WIB 29167 1990 14 Polk +WIB 29169 1990 11 Pulaski +WIB 29171 1990 5 Putnam +WIB 29173 1990 33 Ralls +WIB 29175 1990 14 Randolph +WIB 29177 1990 11 Ray +WIB 29179 1990 8 Reynolds +WIB 29181 1990 6 Ripley +WIB 29183 1990 83 St. Charles +WIB 29185 1990 65 St. Clair +WIB 29186 1990 17 Ste. Genevieve +WIB 29187 1990 8 St. Francois +WIB 29189 1990 41 St. Louis +WIB 29195 1990 23 Saline +WIB 29197 1990 1 Schuyler +WIB 29199 1990 2 Scotland +WIB 29201 1990 13 Scott +WIB 29203 1990 0 Shannon +WIB 29205 1990 4 Shelby +WIB 29207 1990 5 Stoddard +WIB 29209 1990 123 Stone +WIB 29211 1990 1 Sullivan +WIB 29213 1990 50 Taney +WIB 29215 1990 2 Texas +WIB 29217 1990 8 Vernon +WIB 29219 1990 16 Warren +WIB 29221 1990 7 Washington +WIB 29223 1990 34 Wayne +WIB 29225 1990 1 Webster +WIB 29227 1990 1 Worth +WIB 29229 1990 2 Wright +WIB 29510 1990 11 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MO_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MO_WOB.ALO new file mode 100644 index 0000000..a3355a2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MO_WOB.ALO @@ -0,0 +1,140 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 29000 1990 2102 MO +WOB 29001 1990 4 Adair +WOB 29003 1990 3 Andrew +WOB 29005 1990 7 Atchison +WOB 29007 1990 9 Audrain +WOB 29009 1990 31 Barry +WOB 29011 1990 6 Barton +WOB 29013 1990 8 Bates +WOB 29015 1990 122 Benton +WOB 29017 1990 1 Bollinger +WOB 29019 1990 15 Boone +WOB 29021 1990 13 Buchanan +WOB 29023 1990 4 Butler +WOB 29025 1990 1 Caldwell +WOB 29027 1990 21 Callaway +WOB 29029 1990 139 Camden +WOB 29031 1990 20 Cape Girardeau +WOB 29033 1990 20 Carroll +WOB 29035 1990 4 Carter +WOB 29037 1990 9 Cass +WOB 29039 1990 58 Cedar +WOB 29041 1990 32 Chariton +WOB 29043 1990 2 Christian +WOB 29045 1990 12 Clark +WOB 29047 1990 33 Clay +WOB 29049 1990 12 Clinton +WOB 29051 1990 20 Cole +WOB 29053 1990 13 Cooper +WOB 29055 1990 3 Crawford +WOB 29057 1990 41 Dade +WOB 29059 1990 3 Dallas +WOB 29061 1990 5 Daviess +WOB 29063 1990 4 DeKalb +WOB 29065 1990 3 Dent +WOB 29067 1990 0 Douglas +WOB 29069 1990 4 Dunklin +WOB 29071 1990 20 Franklin +WOB 29073 1990 13 Gasconade +WOB 29075 1990 1 Gentry +WOB 29077 1990 7 Greene +WOB 29079 1990 6 Grundy +WOB 29081 1990 3 Harrison +WOB 29083 1990 78 Henry +WOB 29085 1990 34 Hickory +WOB 29087 1990 19 Holt +WOB 29089 1990 12 Howard +WOB 29091 1990 1 Howell +WOB 29093 1990 2 Iron +WOB 29095 1990 29 Jackson +WOB 29097 1990 4 Jasper +WOB 29099 1990 19 Jefferson +WOB 29101 1990 6 Johnson +WOB 29103 1990 3 Knox +WOB 29105 1990 6 Laclede +WOB 29107 1990 25 Lafayette +WOB 29109 1990 1 Lawrence +WOB 29111 1990 15 Lewis +WOB 29113 1990 26 Lincoln +WOB 29115 1990 3 Linn +WOB 29117 1990 10 Livingston +WOB 29119 1990 0 McDonald +WOB 29121 1990 23 Macon +WOB 29123 1990 2 Madison +WOB 29125 1990 6 Maries +WOB 29127 1990 15 Marion +WOB 29129 1990 2 Mercer +WOB 29131 1990 20 Miller +WOB 29133 1990 41 Mississippi +WOB 29135 1990 6 Moniteau +WOB 29137 1990 63 Monroe +WOB 29139 1990 8 Montgomery +WOB 29141 1990 43 Morgan +WOB 29143 1990 52 New Madrid +WOB 29145 1990 1 Newton +WOB 29147 1990 3 Nodaway +WOB 29149 1990 0 Oregon +WOB 29151 1990 19 Osage +WOB 29153 1990 21 Ozark +WOB 29155 1990 50 Pemiscot +WOB 29157 1990 25 Perry +WOB 29159 1990 4 Pettis +WOB 29161 1990 4 Phelps +WOB 29163 1990 31 Pike +WOB 29165 1990 18 Platte +WOB 29167 1990 14 Polk +WOB 29169 1990 11 Pulaski +WOB 29171 1990 5 Putnam +WOB 29173 1990 33 Ralls +WOB 29175 1990 14 Randolph +WOB 29177 1990 11 Ray +WOB 29179 1990 8 Reynolds +WOB 29181 1990 6 Ripley +WOB 29183 1990 83 St. Charles +WOB 29185 1990 65 St. Clair +WOB 29186 1990 17 Ste. Genevieve +WOB 29187 1990 8 St. Francois +WOB 29189 1990 41 St. Louis +WOB 29195 1990 23 Saline +WOB 29197 1990 1 Schuyler +WOB 29199 1990 2 Scotland +WOB 29201 1990 13 Scott +WOB 29203 1990 0 Shannon +WOB 29205 1990 4 Shelby +WOB 29207 1990 5 Stoddard +WOB 29209 1990 123 Stone +WOB 29211 1990 1 Sullivan +WOB 29213 1990 50 Taney +WOB 29215 1990 2 Texas +WOB 29217 1990 8 Vernon +WOB 29219 1990 16 Warren +WOB 29221 1990 7 Washington +WOB 29223 1990 34 Wayne +WOB 29225 1990 1 Webster +WOB 29227 1990 1 Worth +WOB 29229 1990 2 Wright +WOB 29510 1990 11 St. Louis +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_AIRTR.ALO new file mode 100644 index 0000000..ccff9b4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_AIRTR.ALO @@ -0,0 +1,109 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 28000 2002 162.906 MS +AIR 28001 2002 0.110 Adams +AIR 28003 2002 0.110 Alcorn +AIR 28005 2002 0.000 Amite +AIR 28007 2002 0.011 Attala +AIR 28009 2002 0.000 Benton +AIR 28011 2002 0.080 Bolivar +AIR 28013 2002 0.000 Calhoun +AIR 28015 2002 0.150 Carroll +AIR 28017 2002 0.050 Chickasaw +AIR 28019 2002 0.000 Choctaw +AIR 28021 2002 0.000 Claiborne +AIR 28023 2002 0.000 Clarke +AIR 28025 2002 0.030 Clay +AIR 28027 2002 0.092 Coahoma +AIR 28029 2002 0.000 Copiah +AIR 28031 2002 0.000 Covington +AIR 28033 2002 0.477 DeSoto +AIR 28035 2002 0.275 Forrest +AIR 28037 2002 0.000 Franklin +AIR 28039 2002 0.000 George +AIR 28041 2002 0.000 Greene +AIR 28043 2002 0.000 Grenada +AIR 28045 2002 0.500 Hancock +AIR 28047 2002 48.000 Harrison +AIR 28049 2002 0.460 Hinds +AIR 28051 2002 0.009 Holmes +AIR 28053 2002 0.000 Humphreys +AIR 28055 2002 0.000 Issaquena +AIR 28057 2002 0.003 Itawamba +AIR 28059 2002 0.000 Jackson +AIR 28061 2002 0.000 Jasper +AIR 28063 2002 0.000 Jefferson +AIR 28065 2002 0.000 Jefferson Davis +AIR 28067 2002 6.710 Jones +AIR 28069 2002 0.000 Kemper +AIR 28071 2002 0.950 Lafayette +AIR 28073 2002 0.000 Lamar +AIR 28075 2002 1.470 Lauderdale +AIR 28077 2002 0.000 Lawrence +AIR 28079 2002 0.000 Leake +AIR 28081 2002 0.670 Lee +AIR 28083 2002 0.000 Leflore +AIR 28085 2002 0.060 Lincoln +AIR 28087 2002 0.570 Lowndes +AIR 28089 2002 0.214 Madison +AIR 28091 2002 0.080 Marion +AIR 28093 2002 0.063 Marshall +AIR 28095 2002 0.060 Monroe +AIR 28097 2002 0.000 Montgomery +AIR 28099 2002 0.069 Neshoba +AIR 28101 2002 0.000 Newton +AIR 28103 2002 0.000 Noxubee +AIR 28105 2002 0.070 Oktibbeha +AIR 28107 2002 0.000 Panola +AIR 28109 2002 0.000 Pearl River +AIR 28111 2002 0.000 Perry +AIR 28113 2002 0.060 Pike +AIR 28115 2002 0.000 Pontotoc +AIR 28117 2002 0.110 Prentiss +AIR 28119 2002 0.000 Quitman +AIR 28121 2002 100.860 Rankin +AIR 28123 2002 0.000 Scott +AIR 28125 2002 0.000 Sharkey +AIR 28127 2002 0.000 Simpson +AIR 28129 2002 0.000 Smith +AIR 28131 2002 0.000 Stone +AIR 28133 2002 0.090 Sunflower +AIR 28135 2002 0.000 Tallahatchie +AIR 28137 2002 0.000 Tate +AIR 28139 2002 0.050 Tippah +AIR 28141 2002 0.000 Tishomingo +AIR 28143 2002 0.000 Tunica +AIR 28145 2002 0.000 Union +AIR 28147 2002 0.000 Walthall +AIR 28149 2002 0.100 Warren +AIR 28151 2002 0.235 Washington +AIR 28153 2002 0.000 Wayne +AIR 28155 2002 0.000 Webster +AIR 28157 2002 0.000 Wilkinson +AIR 28159 2002 0.040 Winston +AIR 28161 2002 0.000 Yalobusha +AIR 28163 2002 0.019 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_COAL.ALO new file mode 100644 index 0000000..eaa36a4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_COAL.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 28000 2002 0 MS +MIN 28001 2002 0 Adams +MIN 28003 2002 0 Alcorn +MIN 28005 2002 0 Amite +MIN 28007 2002 0 Attala +MIN 28009 2002 0 Benton +MIN 28011 2002 0 Bolivar +MIN 28013 2002 0 Calhoun +MIN 28015 2002 0 Carroll +MIN 28017 2002 0 Chickasaw +MIN 28019 2002 0 Choctaw +MIN 28021 2002 0 Claiborne +MIN 28023 2002 0 Clarke +MIN 28025 2002 0 Clay +MIN 28027 2002 0 Coahoma +MIN 28029 2002 0 Copiah +MIN 28031 2002 0 Covington +MIN 28033 2002 0 DeSoto +MIN 28035 2002 0 Forrest +MIN 28037 2002 0 Franklin +MIN 28039 2002 0 George +MIN 28041 2002 0 Greene +MIN 28043 2002 0 Grenada +MIN 28045 2002 0 Hancock +MIN 28047 2002 0 Harrison +MIN 28049 2002 0 Hinds +MIN 28051 2002 0 Holmes +MIN 28053 2002 0 Humphreys +MIN 28055 2002 0 Issaquena +MIN 28057 2002 0 Itawamba +MIN 28059 2002 0 Jackson +MIN 28061 2002 0 Jasper +MIN 28063 2002 0 Jefferson +MIN 28065 2002 0 Jefferson Davis +MIN 28067 2002 0 Jones +MIN 28069 2002 0 Kemper +MIN 28071 2002 0 Lafayette +MIN 28073 2002 0 Lamar +MIN 28075 2002 0 Lauderdale +MIN 28077 2002 0 Lawrence +MIN 28079 2002 0 Leake +MIN 28081 2002 0 Lee +MIN 28083 2002 0 Leflore +MIN 28085 2002 0 Lincoln +MIN 28087 2002 0 Lowndes +MIN 28089 2002 0 Madison +MIN 28091 2002 0 Marion +MIN 28093 2002 0 Marshall +MIN 28095 2002 0 Monroe +MIN 28097 2002 0 Montgomery +MIN 28099 2002 0 Neshoba +MIN 28101 2002 0 Newton +MIN 28103 2002 0 Noxubee +MIN 28105 2002 0 Oktibbeha +MIN 28107 2002 0 Panola +MIN 28109 2002 0 Pearl River +MIN 28111 2002 0 Perry +MIN 28113 2002 0 Pike +MIN 28115 2002 0 Pontotoc +MIN 28117 2002 0 Prentiss +MIN 28119 2002 0 Quitman +MIN 28121 2002 0 Rankin +MIN 28123 2002 0 Scott +MIN 28125 2002 0 Sharkey +MIN 28127 2002 0 Simpson +MIN 28129 2002 0 Smith +MIN 28131 2002 0 Stone +MIN 28133 2002 0 Sunflower +MIN 28135 2002 0 Tallahatchie +MIN 28137 2002 0 Tate +MIN 28139 2002 0 Tippah +MIN 28141 2002 0 Tishomingo +MIN 28143 2002 0 Tunica +MIN 28145 2002 0 Union +MIN 28147 2002 0 Walthall +MIN 28149 2002 0 Warren +MIN 28151 2002 0 Washington +MIN 28153 2002 0 Wayne +MIN 28155 2002 0 Webster +MIN 28157 2002 0 Wilkinson +MIN 28159 2002 0 Winston +MIN 28161 2002 0 Yalobusha +MIN 28163 2002 0 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_CONST.ALO new file mode 100644 index 0000000..d707990 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_CONST.ALO @@ -0,0 +1,109 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 28000 2003 3767705 MS +CON 28001 2003 16134 Adams +CON 28003 2003 19248 Alcorn +CON 28005 2003 8451 Amite +CON 28007 2003 13581 Attala +CON 28009 2003 3824 Benton +CON 28011 2003 22117 Bolivar +CON 28013 2003 7878 Calhoun +CON 28015 2003 8902 Carroll +CON 28017 2003 8929 Chickasaw +CON 28019 2003 3350 Choctaw +CON 28021 2003 19913 Claiborne +CON 28023 2003 5673 Clarke +CON 28025 2003 14722 Clay +CON 28027 2003 11319 Coahoma +CON 28029 2003 11595 Copiah +CON 28031 2003 8813 Covington +CON 28033 2003 408810 DeSoto +CON 28035 2003 71597 Forrest +CON 28037 2003 12722 Franklin +CON 28039 2003 21465 George +CON 28041 2003 46782 Greene +CON 28043 2003 14586 Grenada +CON 28045 2003 82744 Hancock +CON 28047 2003 478837 Harrison +CON 28049 2003 256388 Hinds +CON 28051 2003 7029 Holmes +CON 28053 2003 2679 Humphreys +CON 28055 2003 28925 Issaquena +CON 28057 2003 28963 Itawamba +CON 28059 2003 212588 Jackson +CON 28061 2003 10672 Jasper +CON 28063 2003 17187 Jefferson +CON 28065 2003 4379 Jefferson Davis +CON 28067 2003 64576 Jones +CON 28069 2003 7312 Kemper +CON 28071 2003 83544 Lafayette +CON 28073 2003 19046 Lamar +CON 28075 2003 68671 Lauderdale +CON 28077 2003 3993 Lawrence +CON 28079 2003 17074 Leake +CON 28081 2003 85912 Lee +CON 28083 2003 10942 Leflore +CON 28085 2003 18435 Lincoln +CON 28087 2003 78479 Lowndes +CON 28089 2003 458089 Madison +CON 28091 2003 12898 Marion +CON 28093 2003 16924 Marshall +CON 28095 2003 13695 Monroe +CON 28097 2003 10137 Montgomery +CON 28099 2003 16967 Neshoba +CON 28101 2003 19056 Newton +CON 28103 2003 4749 Noxubee +CON 28105 2003 39485 Oktibbeha +CON 28107 2003 81256 Panola +CON 28109 2003 66556 Pearl River +CON 28111 2003 9330 Perry +CON 28113 2003 20137 Pike +CON 28115 2003 15913 Pontotoc +CON 28117 2003 18442 Prentiss +CON 28119 2003 4649 Quitman +CON 28121 2003 267757 Rankin +CON 28123 2003 14157 Scott +CON 28125 2003 119 Sharkey +CON 28127 2003 7014 Simpson +CON 28129 2003 6223 Smith +CON 28131 2003 21241 Stone +CON 28133 2003 8533 Sunflower +CON 28135 2003 10425 Tallahatchie +CON 28137 2003 53438 Tate +CON 28139 2003 9075 Tippah +CON 28141 2003 10376 Tishomingo +CON 28143 2003 36311 Tunica +CON 28145 2003 12840 Union +CON 28147 2003 4383 Walthall +CON 28149 2003 71757 Warren +CON 28151 2003 18568 Washington +CON 28153 2003 17194 Wayne +CON 28155 2003 6432 Webster +CON 28157 2003 5078 Wilkinson +CON 28159 2003 12283 Winston +CON 28161 2003 9192 Yalobusha +CON 28163 2003 8241 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_FARMS.ALO new file mode 100644 index 0000000..58a4a16 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_FARMS.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 28000 2002 4139341 MS +FRM 28001 2002 18100 Adams +FRM 28003 2002 36757 Alcorn +FRM 28005 2002 14288 Amite +FRM 28007 2002 19755 Attala +FRM 28009 2002 33561 Benton +FRM 28011 2002 372950 Bolivar +FRM 28013 2002 59794 Calhoun +FRM 28015 2002 37499 Carroll +FRM 28017 2002 42563 Chickasaw +FRM 28019 2002 9261 Choctaw +FRM 28021 2002 19327 Claiborne +FRM 28023 2002 5963 Clarke +FRM 28025 2002 18976 Clay +FRM 28027 2002 225251 Coahoma +FRM 28029 2002 14274 Copiah +FRM 28031 2002 13419 Covington +FRM 28033 2002 78466 DeSoto +FRM 28035 2002 6222 Forrest +FRM 28037 2002 4750 Franklin +FRM 28039 2002 15581 George +FRM 28041 2002 9382 Greene +FRM 28043 2002 24233 Grenada +FRM 28045 2002 3818 Hancock +FRM 28047 2002 3294 Harrison +FRM 28049 2002 44810 Hinds +FRM 28051 2002 102003 Holmes +FRM 28053 2002 124995 Humphreys +FRM 28055 2002 77093 Issaquena +FRM 28057 2002 24237 Itawamba +FRM 28059 2002 7714 Jackson +FRM 28061 2002 8406 Jasper +FRM 28063 2002 13158 Jefferson +FRM 28065 2002 8244 Jefferson Davis +FRM 28067 2002 18429 Jones +FRM 28069 2002 12741 Kemper +FRM 28071 2002 20203 Lafayette +FRM 28073 2002 8798 Lamar +FRM 28075 2002 8837 Lauderdale +FRM 28077 2002 14153 Lawrence +FRM 28079 2002 14740 Leake +FRM 28081 2002 75132 Lee +FRM 28083 2002 208597 Leflore +FRM 28085 2002 12207 Lincoln +FRM 28087 2002 44164 Lowndes +FRM 28089 2002 42528 Madison +FRM 28091 2002 12019 Marion +FRM 28093 2002 47976 Marshall +FRM 28095 2002 73842 Monroe +FRM 28097 2002 15577 Montgomery +FRM 28099 2002 16660 Neshoba +FRM 28101 2002 20143 Newton +FRM 28103 2002 63735 Noxubee +FRM 28105 2002 16700 Oktibbeha +FRM 28107 2002 106379 Panola +FRM 28109 2002 12167 Pearl River +FRM 28111 2002 3469 Perry +FRM 28113 2002 14962 Pike +FRM 28115 2002 38995 Pontotoc +FRM 28117 2002 34279 Prentiss +FRM 28119 2002 132292 Quitman +FRM 28121 2002 21348 Rankin +FRM 28123 2002 18230 Scott +FRM 28125 2002 140391 Sharkey +FRM 28127 2002 13627 Simpson +FRM 28129 2002 12742 Smith +FRM 28131 2002 4704 Stone +FRM 28133 2002 270213 Sunflower +FRM 28135 2002 178888 Tallahatchie +FRM 28137 2002 55884 Tate +FRM 28139 2002 23373 Tippah +FRM 28141 2002 11759 Tishomingo +FRM 28143 2002 177173 Tunica +FRM 28145 2002 38105 Union +FRM 28147 2002 18833 Walthall +FRM 28149 2002 38277 Warren +FRM 28151 2002 274446 Washington +FRM 28153 2002 10520 Wayne +FRM 28155 2002 21067 Webster +FRM 28157 2002 8066 Wilkinson +FRM 28159 2002 14069 Winston +FRM 28161 2002 24676 Yalobusha +FRM 28163 2002 175082 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_GOLF.ALO new file mode 100644 index 0000000..20cfdf9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_GOLF.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 28000 2002 129 MS +GC 28001 2002 2 Adams +GC 28003 2002 1 Alcorn +GC 28005 2002 0 Amite +GC 28007 2002 1 Attala +GC 28009 2002 0 Benton +GC 28011 2002 4 Bolivar +GC 28013 2002 2 Calhoun +GC 28015 2002 0 Carroll +GC 28017 2002 3 Chickasaw +GC 28019 2002 0 Choctaw +GC 28021 2002 1 Claiborne +GC 28023 2002 1 Clarke +GC 28025 2002 1 Clay +GC 28027 2002 2 Coahoma +GC 28029 2002 0 Copiah +GC 28031 2002 1 Covington +GC 28033 2002 8 DeSoto +GC 28035 2002 6 Forrest +GC 28037 2002 1 Franklin +GC 28039 2002 0 George +GC 28041 2002 0 Greene +GC 28043 2002 1 Grenada +GC 28045 2002 1 Hancock +GC 28047 2002 10 Harrison +GC 28049 2002 7 Hinds +GC 28051 2002 1 Holmes +GC 28053 2002 1 Humphreys +GC 28055 2002 0 Issaquena +GC 28057 2002 1 Itawamba +GC 28059 2002 5 Jackson +GC 28061 2002 1 Jasper +GC 28063 2002 0 Jefferson +GC 28065 2002 1 Jefferson Davis +GC 28067 2002 3 Jones +GC 28069 2002 0 Kemper +GC 28071 2002 0 Lafayette +GC 28073 2002 1 Lamar +GC 28075 2002 2 Lauderdale +GC 28077 2002 0 Lawrence +GC 28079 2002 1 Leake +GC 28081 2002 3 Lee +GC 28083 2002 2 Leflore +GC 28085 2002 0 Lincoln +GC 28087 2002 2 Lowndes +GC 28089 2002 6 Madison +GC 28091 2002 1 Marion +GC 28093 2002 0 Marshall +GC 28095 2002 2 Monroe +GC 28097 2002 0 Montgomery +GC 28099 2002 1 Neshoba +GC 28101 2002 3 Newton +GC 28103 2002 1 Noxubee +GC 28105 2002 1 Oktibbeha +GC 28107 2002 1 Panola +GC 28109 2002 1 Pearl River +GC 28111 2002 1 Perry +GC 28113 2002 3 Pike +GC 28115 2002 2 Pontotoc +GC 28117 2002 1 Prentiss +GC 28119 2002 1 Quitman +GC 28121 2002 4 Rankin +GC 28123 2002 1 Scott +GC 28125 2002 0 Sharkey +GC 28127 2002 1 Simpson +GC 28129 2002 0 Smith +GC 28131 2002 1 Stone +GC 28133 2002 2 Sunflower +GC 28135 2002 2 Tallahatchie +GC 28137 2002 1 Tate +GC 28139 2002 1 Tippah +GC 28141 2002 1 Tishomingo +GC 28143 2002 0 Tunica +GC 28145 2002 2 Union +GC 28147 2002 1 Walthall +GC 28149 2002 1 Warren +GC 28151 2002 2 Washington +GC 28153 2002 1 Wayne +GC 28155 2002 1 Webster +GC 28157 2002 1 Wilkinson +GC 28159 2002 1 Winston +GC 28161 2002 1 Yalobusha +GC 28163 2002 2 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_HOLSL.ALO new file mode 100644 index 0000000..10d162d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_HOLSL.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 28000 2002 2967 MS +COM 28001 2002 46 Adams +COM 28003 2002 45 Alcorn +COM 28005 2002 4 Amite +COM 28007 2002 19 Attala +COM 28009 2002 1 Benton +COM 28011 2002 38 Bolivar +COM 28013 2002 9 Calhoun +COM 28015 2002 8 Carroll +COM 28017 2002 18 Chickasaw +COM 28019 2002 6 Choctaw +COM 28021 2002 1 Claiborne +COM 28023 2002 7 Clarke +COM 28025 2002 21 Clay +COM 28027 2002 30 Coahoma +COM 28029 2002 14 Copiah +COM 28031 2002 17 Covington +COM 28033 2002 97 DeSoto +COM 28035 2002 109 Forrest +COM 28037 2002 3 Franklin +COM 28039 2002 13 George +COM 28041 2002 4 Greene +COM 28043 2002 38 Grenada +COM 28045 2002 28 Hancock +COM 28047 2002 203 Harrison +COM 28049 2002 390 Hinds +COM 28051 2002 10 Holmes +COM 28053 2002 9 Humphreys +COM 28055 2002 1 Issaquena +COM 28057 2002 12 Itawamba +COM 28059 2002 72 Jackson +COM 28061 2002 11 Jasper +COM 28063 2002 4 Jefferson +COM 28065 2002 5 Jefferson Davis +COM 28067 2002 101 Jones +COM 28069 2002 4 Kemper +COM 28071 2002 20 Lafayette +COM 28073 2002 33 Lamar +COM 28075 2002 99 Lauderdale +COM 28077 2002 3 Lawrence +COM 28079 2002 16 Leake +COM 28081 2002 190 Lee +COM 28083 2002 48 Leflore +COM 28085 2002 33 Lincoln +COM 28087 2002 72 Lowndes +COM 28089 2002 125 Madison +COM 28091 2002 26 Marion +COM 28093 2002 19 Marshall +COM 28095 2002 28 Monroe +COM 28097 2002 9 Montgomery +COM 28099 2002 26 Neshoba +COM 28101 2002 9 Newton +COM 28103 2002 9 Noxubee +COM 28105 2002 14 Oktibbeha +COM 28107 2002 33 Panola +COM 28109 2002 35 Pearl River +COM 28111 2002 2 Perry +COM 28113 2002 60 Pike +COM 28115 2002 20 Pontotoc +COM 28117 2002 29 Prentiss +COM 28119 2002 2 Quitman +COM 28121 2002 215 Rankin +COM 28123 2002 23 Scott +COM 28125 2002 11 Sharkey +COM 28127 2002 13 Simpson +COM 28129 2002 5 Smith +COM 28131 2002 12 Stone +COM 28133 2002 23 Sunflower +COM 28135 2002 6 Tallahatchie +COM 28137 2002 15 Tate +COM 28139 2002 19 Tippah +COM 28141 2002 18 Tishomingo +COM 28143 2002 8 Tunica +COM 28145 2002 17 Union +COM 28147 2002 12 Walthall +COM 28149 2002 42 Warren +COM 28151 2002 81 Washington +COM 28153 2002 23 Wayne +COM 28155 2002 7 Webster +COM 28157 2002 9 Wilkinson +COM 28159 2002 14 Winston +COM 28161 2002 9 Yalobusha +COM 28163 2002 27 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_HOUSE.ALO new file mode 100644 index 0000000..5858240 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_HOUSE.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 28000 2002 1195042 MS +HOU 28001 2002 15259 Adams +HOU 28003 2002 16044 Alcorn +HOU 28005 2002 6561 Amite +HOU 28007 2002 8821 Attala +HOU 28009 2002 3512 Benton +HOU 28011 2002 15145 Bolivar +HOU 28013 2002 7001 Calhoun +HOU 28015 2002 4987 Carroll +HOU 28017 2002 8119 Chickasaw +HOU 28019 2002 4309 Choctaw +HOU 28021 2002 4333 Claiborne +HOU 28023 2002 8259 Clarke +HOU 28025 2002 8937 Clay +HOU 28027 2002 11546 Coahoma +HOU 28029 2002 11250 Copiah +HOU 28031 2002 8259 Covington +HOU 28033 2002 45860 DeSoto +HOU 28035 2002 30583 Forrest +HOU 28037 2002 4204 Franklin +HOU 28039 2002 7647 George +HOU 28041 2002 5051 Greene +HOU 28043 2002 10162 Grenada +HOU 28045 2002 22363 Hancock +HOU 28047 2002 83631 Harrison +HOU 28049 2002 101955 Hinds +HOU 28051 2002 8597 Holmes +HOU 28053 2002 4148 Humphreys +HOU 28055 2002 884 Issaquena +HOU 28057 2002 10021 Itawamba +HOU 28059 2002 54042 Jackson +HOU 28061 2002 7865 Jasper +HOU 28063 2002 3913 Jefferson +HOU 28065 2002 5998 Jefferson Davis +HOU 28067 2002 27307 Jones +HOU 28069 2002 4618 Kemper +HOU 28071 2002 17304 Lafayette +HOU 28073 2002 15683 Lamar +HOU 28075 2002 33793 Lauderdale +HOU 28077 2002 5806 Lawrence +HOU 28079 2002 8747 Leake +HOU 28081 2002 32240 Lee +HOU 28083 2002 14129 Leflore +HOU 28085 2002 14281 Lincoln +HOU 28087 2002 25504 Lowndes +HOU 28089 2002 30181 Madison +HOU 28091 2002 10531 Marion +HOU 28093 2002 13510 Marshall +HOU 28095 2002 16479 Monroe +HOU 28097 2002 5619 Montgomery +HOU 28099 2002 12177 Neshoba +HOU 28101 2002 9419 Newton +HOU 28103 2002 5320 Noxubee +HOU 28105 2002 18239 Oktibbeha +HOU 28107 2002 14034 Panola +HOU 28109 2002 21457 Pearl River +HOU 28111 2002 5214 Perry +HOU 28113 2002 16898 Pike +HOU 28115 2002 11137 Pontotoc +HOU 28117 2002 10861 Prentiss +HOU 28119 2002 3936 Quitman +HOU 28121 2002 47444 Rankin +HOU 28123 2002 11348 Scott +HOU 28125 2002 2454 Sharkey +HOU 28127 2002 11447 Simpson +HOU 28129 2002 7148 Smith +HOU 28131 2002 5444 Stone +HOU 28133 2002 10447 Sunflower +HOU 28135 2002 5804 Tallahatchie +HOU 28137 2002 9777 Tate +HOU 28139 2002 9023 Tippah +HOU 28141 2002 9669 Tishomingo +HOU 28143 2002 4171 Tunica +HOU 28145 2002 10861 Union +HOU 28147 2002 6531 Walthall +HOU 28149 2002 20993 Warren +HOU 28151 2002 24849 Washington +HOU 28153 2002 9252 Wayne +HOU 28155 2002 4406 Webster +HOU 28157 2002 5209 Wilkinson +HOU 28159 2002 8602 Winston +HOU 28161 2002 6357 Yalobusha +HOU 28163 2002 10116 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_LOGGN.ALO new file mode 100644 index 0000000..2a862a4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_LOGGN.ALO @@ -0,0 +1,109 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 28000 2002 1319490827 MS +LOG 28001 2002 10628775 Adams +LOG 28003 2002 24492486 Alcorn +LOG 28005 2002 27260158 Amite +LOG 28007 2002 27367110 Attala +LOG 28009 2002 4257108 Benton +LOG 28011 2002 1116641 Bolivar +LOG 28013 2002 13417837 Calhoun +LOG 28015 2002 9728581 Carroll +LOG 28017 2002 15867934 Chickasaw +LOG 28019 2002 23701549 Choctaw +LOG 28021 2002 14340660 Claiborne +LOG 28023 2002 35146065 Clarke +LOG 28025 2002 10885524 Clay +LOG 28027 2002 1109160 Coahoma +LOG 28029 2002 37946918 Copiah +LOG 28031 2002 20087375 Covington +LOG 28033 2002 596875 DeSoto +LOG 28035 2002 10977208 Forrest +LOG 28037 2002 17707059 Franklin +LOG 28039 2002 17079383 George +LOG 28041 2002 22562597 Greene +LOG 28043 2002 9604829 Grenada +LOG 28045 2002 14591232 Hancock +LOG 28047 2002 9028946 Harrison +LOG 28049 2002 21302740 Hinds +LOG 28051 2002 19103287 Holmes +LOG 28053 2002 1933631 Humphreys +LOG 28055 2002 11464070 Issaquena +LOG 28057 2002 6950979 Itawamba +LOG 28059 2002 13199066 Jackson +LOG 28061 2002 19252607 Jasper +LOG 28063 2002 13263839 Jefferson +LOG 28065 2002 16648546 Jefferson Davis +LOG 28067 2002 24041636 Jones +LOG 28069 2002 25226435 Kemper +LOG 28071 2002 14112539 Lafayette +LOG 28073 2002 21773927 Lamar +LOG 28075 2002 23506999 Lauderdale +LOG 28077 2002 26013703 Lawrence +LOG 28079 2002 25406483 Leake +LOG 28081 2002 4731837 Lee +LOG 28083 2002 5263442 Leflore +LOG 28085 2002 32044866 Lincoln +LOG 28087 2002 12884384 Lowndes +LOG 28089 2002 23928077 Madison +LOG 28091 2002 26326837 Marion +LOG 28093 2002 10413062 Marshall +LOG 28095 2002 16159875 Monroe +LOG 28097 2002 14059544 Montgomery +LOG 28099 2002 26470056 Neshoba +LOG 28101 2002 18032384 Newton +LOG 28103 2002 26613655 Noxubee +LOG 28105 2002 20447109 Oktibbeha +LOG 28107 2002 19422509 Panola +LOG 28109 2002 30484688 Pearl River +LOG 28111 2002 15467014 Perry +LOG 28113 2002 19445070 Pike +LOG 28115 2002 12223986 Pontotoc +LOG 28117 2002 6503942 Prentiss +LOG 28119 2002 2560494 Quitman +LOG 28121 2002 35763259 Rankin +LOG 28123 2002 20453329 Scott +LOG 28125 2002 1833948 Sharkey +LOG 28127 2002 27792618 Simpson +LOG 28129 2002 16323146 Smith +LOG 28131 2002 12892047 Stone +LOG 28133 2002 247220 Sunflower +LOG 28135 2002 8224451 Tallahatchie +LOG 28137 2002 898284 Tate +LOG 28139 2002 6350937 Tippah +LOG 28141 2002 6506763 Tishomingo +LOG 28143 2002 2032884 Tunica +LOG 28145 2002 7406410 Union +LOG 28147 2002 20000740 Walthall +LOG 28149 2002 16779432 Warren +LOG 28151 2002 588169 Washington +LOG 28153 2002 30957962 Wayne +LOG 28155 2002 12571260 Webster +LOG 28157 2002 32166376 Wilkinson +LOG 28159 2002 27027009 Winston +LOG 28161 2002 10228077 Yalobusha +LOG 28163 2002 16261175 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_LSCAP.ALO new file mode 100644 index 0000000..8759f44 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_LSCAP.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 28000 2002 1817 MS +LSC 28001 2002 29 Adams +LSC 28003 2002 6 Alcorn +LSC 28005 2002 6 Amite +LSC 28007 2002 6 Attala +LSC 28009 2002 6 Benton +LSC 28011 2002 6 Bolivar +LSC 28013 2002 6 Calhoun +LSC 28015 2002 0 Carroll +LSC 28017 2002 0 Chickasaw +LSC 28019 2002 6 Choctaw +LSC 28021 2002 6 Claiborne +LSC 28023 2002 9 Clarke +LSC 28025 2002 6 Clay +LSC 28027 2002 6 Coahoma +LSC 28029 2002 6 Copiah +LSC 28031 2002 6 Covington +LSC 28033 2002 229 DeSoto +LSC 28035 2002 29 Forrest +LSC 28037 2002 6 Franklin +LSC 28039 2002 6 George +LSC 28041 2002 0 Greene +LSC 28043 2002 6 Grenada +LSC 28045 2002 6 Hancock +LSC 28047 2002 125 Harrison +LSC 28049 2002 183 Hinds +LSC 28051 2002 6 Holmes +LSC 28053 2002 0 Humphreys +LSC 28055 2002 0 Issaquena +LSC 28057 2002 0 Itawamba +LSC 28059 2002 90 Jackson +LSC 28061 2002 6 Jasper +LSC 28063 2002 0 Jefferson +LSC 28065 2002 6 Jefferson Davis +LSC 28067 2002 103 Jones +LSC 28069 2002 6 Kemper +LSC 28071 2002 30 Lafayette +LSC 28073 2002 39 Lamar +LSC 28075 2002 206 Lauderdale +LSC 28077 2002 6 Lawrence +LSC 28079 2002 0 Leake +LSC 28081 2002 111 Lee +LSC 28083 2002 6 Leflore +LSC 28085 2002 30 Lincoln +LSC 28087 2002 17 Lowndes +LSC 28089 2002 37 Madison +LSC 28091 2002 6 Marion +LSC 28093 2002 12 Marshall +LSC 28095 2002 6 Monroe +LSC 28097 2002 6 Montgomery +LSC 28099 2002 30 Neshoba +LSC 28101 2002 0 Newton +LSC 28103 2002 6 Noxubee +LSC 28105 2002 67 Oktibbeha +LSC 28107 2002 6 Panola +LSC 28109 2002 24 Pearl River +LSC 28111 2002 0 Perry +LSC 28113 2002 6 Pike +LSC 28115 2002 6 Pontotoc +LSC 28117 2002 6 Prentiss +LSC 28119 2002 0 Quitman +LSC 28121 2002 74 Rankin +LSC 28123 2002 2 Scott +LSC 28125 2002 6 Sharkey +LSC 28127 2002 6 Simpson +LSC 28129 2002 6 Smith +LSC 28131 2002 6 Stone +LSC 28133 2002 6 Sunflower +LSC 28135 2002 0 Tallahatchie +LSC 28137 2002 30 Tate +LSC 28139 2002 6 Tippah +LSC 28141 2002 6 Tishomingo +LSC 28143 2002 6 Tunica +LSC 28145 2002 6 Union +LSC 28147 2002 3 Walthall +LSC 28149 2002 28 Warren +LSC 28151 2002 16 Washington +LSC 28153 2002 6 Wayne +LSC 28155 2002 6 Webster +LSC 28157 2002 0 Wilkinson +LSC 28159 2002 6 Winston +LSC 28161 2002 6 Yalobusha +LSC 28163 2002 6 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_MNFG.ALO new file mode 100644 index 0000000..de7925e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_MNFG.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 28000 2002 328327 MS +MFG 28001 2002 2087 Adams +MFG 28003 2002 6867 Alcorn +MFG 28005 2002 1475 Amite +MFG 28007 2002 1910 Attala +MFG 28009 2002 580 Benton +MFG 28011 2002 3927 Bolivar +MFG 28013 2002 2642 Calhoun +MFG 28015 2002 26 Carroll +MFG 28017 2002 7654 Chickasaw +MFG 28019 2002 444 Choctaw +MFG 28021 2002 1031 Claiborne +MFG 28023 2002 1937 Clarke +MFG 28025 2002 5086 Clay +MFG 28027 2002 1831 Coahoma +MFG 28029 2002 3922 Copiah +MFG 28031 2002 1824 Covington +MFG 28033 2002 10434 DeSoto +MFG 28035 2002 7524 Forrest +MFG 28037 2002 297 Franklin +MFG 28039 2002 656 George +MFG 28041 2002 146 Greene +MFG 28043 2002 5504 Grenada +MFG 28045 2002 1377 Hancock +MFG 28047 2002 6845 Harrison +MFG 28049 2002 13167 Hinds +MFG 28051 2002 614 Holmes +MFG 28053 2002 1077 Humphreys +MFG 28055 2002 0 Issaquena +MFG 28057 2002 2086 Itawamba +MFG 28059 2002 28664 Jackson +MFG 28061 2002 2255 Jasper +MFG 28063 2002 16 Jefferson +MFG 28065 2002 25 Jefferson Davis +MFG 28067 2002 10852 Jones +MFG 28069 2002 650 Kemper +MFG 28071 2002 3629 Lafayette +MFG 28073 2002 1216 Lamar +MFG 28075 2002 7570 Lauderdale +MFG 28077 2002 1582 Lawrence +MFG 28079 2002 4338 Leake +MFG 28081 2002 28608 Lee +MFG 28083 2002 3834 Leflore +MFG 28085 2002 1606 Lincoln +MFG 28087 2002 10595 Lowndes +MFG 28089 2002 5253 Madison +MFG 28091 2002 1871 Marion +MFG 28093 2002 2736 Marshall +MFG 28095 2002 7146 Monroe +MFG 28097 2002 1300 Montgomery +MFG 28099 2002 1769 Neshoba +MFG 28101 2002 4118 Newton +MFG 28103 2002 1947 Noxubee +MFG 28105 2002 2909 Oktibbeha +MFG 28107 2002 3818 Panola +MFG 28109 2002 1464 Pearl River +MFG 28111 2002 1557 Perry +MFG 28113 2002 4434 Pike +MFG 28115 2002 13621 Pontotoc +MFG 28117 2002 6547 Prentiss +MFG 28119 2002 209 Quitman +MFG 28121 2002 9304 Rankin +MFG 28123 2002 7181 Scott +MFG 28125 2002 93 Sharkey +MFG 28127 2002 882 Simpson +MFG 28129 2002 2247 Smith +MFG 28131 2002 1156 Stone +MFG 28133 2002 1090 Sunflower +MFG 28135 2002 344 Tallahatchie +MFG 28137 2002 2659 Tate +MFG 28139 2002 5924 Tippah +MFG 28141 2002 4523 Tishomingo +MFG 28143 2002 787 Tunica +MFG 28145 2002 6939 Union +MFG 28147 2002 1474 Walthall +MFG 28149 2002 8644 Warren +MFG 28151 2002 5151 Washington +MFG 28153 2002 1865 Wayne +MFG 28155 2002 1528 Webster +MFG 28157 2002 310 Wilkinson +MFG 28159 2002 2146 Winston +MFG 28161 2002 2120 Yalobusha +MFG 28163 2002 2851 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_OIL.ALO new file mode 100644 index 0000000..52ab95f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_OIL.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 28000 2002 2300 MS +OIL 28001 2002 258 Adams +OIL 28003 2002 0 Alcorn +OIL 28005 2002 0 Amite +OIL 28007 2002 0 Attala +OIL 28009 2002 0 Benton +OIL 28011 2002 0 Bolivar +OIL 28013 2002 0 Calhoun +OIL 28015 2002 0 Carroll +OIL 28017 2002 0 Chickasaw +OIL 28019 2002 0 Choctaw +OIL 28021 2002 0 Claiborne +OIL 28023 2002 12 Clarke +OIL 28025 2002 0 Clay +OIL 28027 2002 0 Coahoma +OIL 28029 2002 0 Copiah +OIL 28031 2002 12 Covington +OIL 28033 2002 0 DeSoto +OIL 28035 2002 70 Forrest +OIL 28037 2002 0 Franklin +OIL 28039 2002 0 George +OIL 28041 2002 0 Greene +OIL 28043 2002 0 Grenada +OIL 28045 2002 0 Hancock +OIL 28047 2002 12 Harrison +OIL 28049 2002 266 Hinds +OIL 28051 2002 0 Holmes +OIL 28053 2002 0 Humphreys +OIL 28055 2002 0 Issaquena +OIL 28057 2002 58 Itawamba +OIL 28059 2002 12 Jackson +OIL 28061 2002 12 Jasper +OIL 28063 2002 0 Jefferson +OIL 28065 2002 0 Jefferson Davis +OIL 28067 2002 422 Jones +OIL 28069 2002 0 Kemper +OIL 28071 2002 0 Lafayette +OIL 28073 2002 0 Lamar +OIL 28075 2002 12 Lauderdale +OIL 28077 2002 58 Lawrence +OIL 28079 2002 0 Leake +OIL 28081 2002 0 Lee +OIL 28083 2002 58 Leflore +OIL 28085 2002 128 Lincoln +OIL 28087 2002 0 Lowndes +OIL 28089 2002 25 Madison +OIL 28091 2002 79 Marion +OIL 28093 2002 0 Marshall +OIL 28095 2002 70 Monroe +OIL 28097 2002 0 Montgomery +OIL 28099 2002 0 Neshoba +OIL 28101 2002 58 Newton +OIL 28103 2002 0 Noxubee +OIL 28105 2002 0 Oktibbeha +OIL 28107 2002 0 Panola +OIL 28109 2002 58 Pearl River +OIL 28111 2002 0 Perry +OIL 28113 2002 364 Pike +OIL 28115 2002 0 Pontotoc +OIL 28117 2002 0 Prentiss +OIL 28119 2002 0 Quitman +OIL 28121 2002 128 Rankin +OIL 28123 2002 0 Scott +OIL 28125 2002 0 Sharkey +OIL 28127 2002 58 Simpson +OIL 28129 2002 0 Smith +OIL 28131 2002 0 Stone +OIL 28133 2002 0 Sunflower +OIL 28135 2002 0 Tallahatchie +OIL 28137 2002 0 Tate +OIL 28139 2002 0 Tippah +OIL 28141 2002 0 Tishomingo +OIL 28143 2002 0 Tunica +OIL 28145 2002 0 Union +OIL 28147 2002 58 Walthall +OIL 28149 2002 0 Warren +OIL 28151 2002 0 Washington +OIL 28153 2002 12 Wayne +OIL 28155 2002 0 Webster +OIL 28157 2002 0 Wilkinson +OIL 28159 2002 0 Winston +OIL 28161 2002 0 Yalobusha +OIL 28163 2002 0 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_POP.ALO new file mode 100644 index 0000000..48c92cf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_POP.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 28000 2002 2867635 MS +POP 28001 2002 33493 Adams +POP 28003 2002 34805 Alcorn +POP 28005 2002 13523 Amite +POP 28007 2002 19696 Attala +POP 28009 2002 7869 Benton +POP 28011 2002 39500 Bolivar +POP 28013 2002 14891 Calhoun +POP 28015 2002 10601 Carroll +POP 28017 2002 19344 Chickasaw +POP 28019 2002 9718 Choctaw +POP 28021 2002 11649 Claiborne +POP 28023 2002 17831 Clarke +POP 28025 2002 21881 Clay +POP 28027 2002 29938 Coahoma +POP 28029 2002 28805 Copiah +POP 28031 2002 19761 Covington +POP 28033 2002 118707 DeSoto +POP 28035 2002 73403 Forrest +POP 28037 2002 8292 Franklin +POP 28039 2002 20049 George +POP 28041 2002 13237 Greene +POP 28043 2002 22966 Grenada +POP 28045 2002 44647 Hancock +POP 28047 2002 190333 Harrison +POP 28049 2002 249025 Hinds +POP 28051 2002 21495 Holmes +POP 28053 2002 10789 Humphreys +POP 28055 2002 2128 Issaquena +POP 28057 2002 22978 Itawamba +POP 28059 2002 132999 Jackson +POP 28061 2002 18259 Jasper +POP 28063 2002 9696 Jefferson +POP 28065 2002 13572 Jefferson Davis +POP 28067 2002 65113 Jones +POP 28069 2002 10525 Kemper +POP 28071 2002 39191 Lafayette +POP 28073 2002 41165 Lamar +POP 28075 2002 77667 Lauderdale +POP 28077 2002 13423 Lawrence +POP 28079 2002 21724 Leake +POP 28081 2002 77021 Lee +POP 28083 2002 36770 Leflore +POP 28085 2002 33571 Lincoln +POP 28087 2002 60918 Lowndes +POP 28089 2002 77878 Madison +POP 28091 2002 25240 Marion +POP 28093 2002 35243 Marshall +POP 28095 2002 37900 Monroe +POP 28097 2002 11953 Montgomery +POP 28099 2002 28779 Neshoba +POP 28101 2002 21914 Newton +POP 28103 2002 12385 Noxubee +POP 28105 2002 41932 Oktibbeha +POP 28107 2002 34924 Panola +POP 28109 2002 50424 Pearl River +POP 28111 2002 12264 Perry +POP 28113 2002 38952 Pike +POP 28115 2002 27133 Pontotoc +POP 28117 2002 25583 Prentiss +POP 28119 2002 9969 Quitman +POP 28121 2002 121666 Rankin +POP 28123 2002 28292 Scott +POP 28125 2002 6305 Sharkey +POP 28127 2002 27728 Simpson +POP 28129 2002 15964 Smith +POP 28131 2002 14120 Stone +POP 28133 2002 33864 Sunflower +POP 28135 2002 14507 Tallahatchie +POP 28137 2002 25608 Tate +POP 28139 2002 20968 Tippah +POP 28141 2002 19092 Tishomingo +POP 28143 2002 9699 Tunica +POP 28145 2002 25894 Union +POP 28147 2002 15126 Walthall +POP 28149 2002 49175 Warren +POP 28151 2002 61081 Washington +POP 28153 2002 21208 Wayne +POP 28155 2002 10283 Webster +POP 28157 2002 10298 Wilkinson +POP 28159 2002 19989 Winston +POP 28161 2002 13309 Yalobusha +POP 28163 2002 28018 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_RAIL.ALO new file mode 100644 index 0000000..a1432b5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_RAIL.ALO @@ -0,0 +1,109 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 28000 2002 12828.810 MS +RR 28001 2002 8.680 Adams +RR 28003 2002 291.580 Alcorn +RR 28005 2002 0.000 Amite +RR 28007 2002 0.000 Attala +RR 28009 2002 134.840 Benton +RR 28011 2002 0.000 Bolivar +RR 28013 2002 0.000 Calhoun +RR 28015 2002 10.220 Carroll +RR 28017 2002 15.470 Chickasaw +RR 28019 2002 14.440 Choctaw +RR 28021 2002 0.000 Claiborne +RR 28023 2002 336.800 Clarke +RR 28025 2002 38.890 Clay +RR 28027 2002 0.000 Coahoma +RR 28029 2002 187.370 Copiah +RR 28031 2002 82.250 Covington +RR 28033 2002 780.610 DeSoto +RR 28035 2002 335.440 Forrest +RR 28037 2002 20.930 Franklin +RR 28039 2002 69.860 George +RR 28041 2002 61.320 Greene +RR 28043 2002 23.870 Grenada +RR 28045 2002 368.590 Hancock +RR 28047 2002 178.790 Harrison +RR 28049 2002 1050.790 Hinds +RR 28051 2002 387.100 Holmes +RR 28053 2002 0.000 Humphreys +RR 28055 2002 0.000 Issaquena +RR 28057 2002 0.000 Itawamba +RR 28059 2002 187.080 Jackson +RR 28061 2002 197.120 Jasper +RR 28063 2002 0.000 Jefferson +RR 28065 2002 0.000 Jefferson Davis +RR 28067 2002 358.090 Jones +RR 28069 2002 34.070 Kemper +RR 28071 2002 0.000 Lafayette +RR 28073 2002 272.710 Lamar +RR 28075 2002 294.630 Lauderdale +RR 28077 2002 21.210 Lawrence +RR 28079 2002 7.290 Leake +RR 28081 2002 225.360 Lee +RR 28083 2002 536.650 Leflore +RR 28085 2002 210.360 Lincoln +RR 28087 2002 83.210 Lowndes +RR 28089 2002 359.900 Madison +RR 28091 2002 17.010 Marion +RR 28093 2002 250.650 Marshall +RR 28095 2002 310.440 Monroe +RR 28097 2002 8.570 Montgomery +RR 28099 2002 20.640 Neshoba +RR 28101 2002 199.510 Newton +RR 28103 2002 56.850 Noxubee +RR 28105 2002 12.960 Oktibbeha +RR 28107 2002 357.930 Panola +RR 28109 2002 229.770 Pearl River +RR 28111 2002 114.560 Perry +RR 28113 2002 181.810 Pike +RR 28115 2002 102.650 Pontotoc +RR 28117 2002 16.750 Prentiss +RR 28119 2002 522.720 Quitman +RR 28121 2002 291.120 Rankin +RR 28123 2002 266.280 Scott +RR 28125 2002 0.000 Sharkey +RR 28127 2002 110.040 Simpson +RR 28129 2002 6.330 Smith +RR 28131 2002 18.480 Stone +RR 28133 2002 0.000 Sunflower +RR 28135 2002 404.000 Tallahatchie +RR 28137 2002 352.230 Tate +RR 28139 2002 0.000 Tippah +RR 28141 2002 286.280 Tishomingo +RR 28143 2002 338.860 Tunica +RR 28145 2002 237.500 Union +RR 28147 2002 0.000 Walthall +RR 28149 2002 157.320 Warren +RR 28151 2002 0.000 Washington +RR 28153 2002 53.580 Wayne +RR 28155 2002 0.000 Webster +RR 28157 2002 0.000 Wilkinson +RR 28159 2002 14.170 Winston +RR 28161 2002 14.610 Yalobusha +RR 28163 2002 689.670 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_RVPRK.ALO new file mode 100644 index 0000000..cc05266 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_RVPRK.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 28000 2002 49 MS +RVP 28001 2002 1 Adams +RVP 28003 2002 0 Alcorn +RVP 28005 2002 0 Amite +RVP 28007 2002 0 Attala +RVP 28009 2002 0 Benton +RVP 28011 2002 1 Bolivar +RVP 28013 2002 0 Calhoun +RVP 28015 2002 0 Carroll +RVP 28017 2002 0 Chickasaw +RVP 28019 2002 0 Choctaw +RVP 28021 2002 1 Claiborne +RVP 28023 2002 0 Clarke +RVP 28025 2002 0 Clay +RVP 28027 2002 0 Coahoma +RVP 28029 2002 2 Copiah +RVP 28031 2002 0 Covington +RVP 28033 2002 0 DeSoto +RVP 28035 2002 2 Forrest +RVP 28037 2002 0 Franklin +RVP 28039 2002 0 George +RVP 28041 2002 0 Greene +RVP 28043 2002 2 Grenada +RVP 28045 2002 4 Hancock +RVP 28047 2002 11 Harrison +RVP 28049 2002 1 Hinds +RVP 28051 2002 1 Holmes +RVP 28053 2002 0 Humphreys +RVP 28055 2002 0 Issaquena +RVP 28057 2002 0 Itawamba +RVP 28059 2002 6 Jackson +RVP 28061 2002 0 Jasper +RVP 28063 2002 0 Jefferson +RVP 28065 2002 0 Jefferson Davis +RVP 28067 2002 0 Jones +RVP 28069 2002 0 Kemper +RVP 28071 2002 0 Lafayette +RVP 28073 2002 1 Lamar +RVP 28075 2002 1 Lauderdale +RVP 28077 2002 0 Lawrence +RVP 28079 2002 0 Leake +RVP 28081 2002 2 Lee +RVP 28083 2002 0 Leflore +RVP 28085 2002 0 Lincoln +RVP 28087 2002 0 Lowndes +RVP 28089 2002 0 Madison +RVP 28091 2002 0 Marion +RVP 28093 2002 0 Marshall +RVP 28095 2002 0 Monroe +RVP 28097 2002 0 Montgomery +RVP 28099 2002 0 Neshoba +RVP 28101 2002 0 Newton +RVP 28103 2002 2 Noxubee +RVP 28105 2002 0 Oktibbeha +RVP 28107 2002 0 Panola +RVP 28109 2002 0 Pearl River +RVP 28111 2002 0 Perry +RVP 28113 2002 0 Pike +RVP 28115 2002 0 Pontotoc +RVP 28117 2002 0 Prentiss +RVP 28119 2002 0 Quitman +RVP 28121 2002 2 Rankin +RVP 28123 2002 0 Scott +RVP 28125 2002 0 Sharkey +RVP 28127 2002 1 Simpson +RVP 28129 2002 0 Smith +RVP 28131 2002 0 Stone +RVP 28133 2002 0 Sunflower +RVP 28135 2002 0 Tallahatchie +RVP 28137 2002 1 Tate +RVP 28139 2002 0 Tippah +RVP 28141 2002 0 Tishomingo +RVP 28143 2002 0 Tunica +RVP 28145 2002 0 Union +RVP 28147 2002 1 Walthall +RVP 28149 2002 2 Warren +RVP 28151 2002 1 Washington +RVP 28153 2002 0 Wayne +RVP 28155 2002 0 Webster +RVP 28157 2002 0 Wilkinson +RVP 28159 2002 0 Winston +RVP 28161 2002 1 Yalobusha +RVP 28163 2002 2 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_SBC.ALO new file mode 100644 index 0000000..51e027e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_SBC.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 28000 2002 0 MS +SBC 28001 2002 0 Adams +SBC 28003 2002 0 Alcorn +SBC 28005 2002 0 Amite +SBC 28007 2002 0 Attala +SBC 28009 2002 0 Benton +SBC 28011 2002 0 Bolivar +SBC 28013 2002 0 Calhoun +SBC 28015 2002 0 Carroll +SBC 28017 2002 0 Chickasaw +SBC 28019 2002 0 Choctaw +SBC 28021 2002 0 Claiborne +SBC 28023 2002 0 Clarke +SBC 28025 2002 0 Clay +SBC 28027 2002 0 Coahoma +SBC 28029 2002 0 Copiah +SBC 28031 2002 0 Covington +SBC 28033 2002 0 DeSoto +SBC 28035 2002 0 Forrest +SBC 28037 2002 0 Franklin +SBC 28039 2002 0 George +SBC 28041 2002 0 Greene +SBC 28043 2002 0 Grenada +SBC 28045 2002 0 Hancock +SBC 28047 2002 0 Harrison +SBC 28049 2002 0 Hinds +SBC 28051 2002 0 Holmes +SBC 28053 2002 0 Humphreys +SBC 28055 2002 0 Issaquena +SBC 28057 2002 0 Itawamba +SBC 28059 2002 0 Jackson +SBC 28061 2002 0 Jasper +SBC 28063 2002 0 Jefferson +SBC 28065 2002 0 Jefferson Davis +SBC 28067 2002 0 Jones +SBC 28069 2002 0 Kemper +SBC 28071 2002 0 Lafayette +SBC 28073 2002 0 Lamar +SBC 28075 2002 0 Lauderdale +SBC 28077 2002 0 Lawrence +SBC 28079 2002 0 Leake +SBC 28081 2002 0 Lee +SBC 28083 2002 0 Leflore +SBC 28085 2002 0 Lincoln +SBC 28087 2002 0 Lowndes +SBC 28089 2002 0 Madison +SBC 28091 2002 0 Marion +SBC 28093 2002 0 Marshall +SBC 28095 2002 0 Monroe +SBC 28097 2002 0 Montgomery +SBC 28099 2002 0 Neshoba +SBC 28101 2002 0 Newton +SBC 28103 2002 0 Noxubee +SBC 28105 2002 0 Oktibbeha +SBC 28107 2002 0 Panola +SBC 28109 2002 0 Pearl River +SBC 28111 2002 0 Perry +SBC 28113 2002 0 Pike +SBC 28115 2002 0 Pontotoc +SBC 28117 2002 0 Prentiss +SBC 28119 2002 0 Quitman +SBC 28121 2002 0 Rankin +SBC 28123 2002 0 Scott +SBC 28125 2002 0 Sharkey +SBC 28127 2002 0 Simpson +SBC 28129 2002 0 Smith +SBC 28131 2002 0 Stone +SBC 28133 2002 0 Sunflower +SBC 28135 2002 0 Tallahatchie +SBC 28137 2002 0 Tate +SBC 28139 2002 0 Tippah +SBC 28141 2002 0 Tishomingo +SBC 28143 2002 0 Tunica +SBC 28145 2002 0 Union +SBC 28147 2002 0 Walthall +SBC 28149 2002 0 Warren +SBC 28151 2002 0 Washington +SBC 28153 2002 0 Wayne +SBC 28155 2002 0 Webster +SBC 28157 2002 0 Wilkinson +SBC 28159 2002 0 Winston +SBC 28161 2002 0 Yalobusha +SBC 28163 2002 0 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_SBR.ALO new file mode 100644 index 0000000..156cecf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_SBR.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 28000 2002 0 MS +SBR 28001 2002 0 Adams +SBR 28003 2002 0 Alcorn +SBR 28005 2002 0 Amite +SBR 28007 2002 0 Attala +SBR 28009 2002 0 Benton +SBR 28011 2002 0 Bolivar +SBR 28013 2002 0 Calhoun +SBR 28015 2002 0 Carroll +SBR 28017 2002 0 Chickasaw +SBR 28019 2002 0 Choctaw +SBR 28021 2002 0 Claiborne +SBR 28023 2002 0 Clarke +SBR 28025 2002 0 Clay +SBR 28027 2002 0 Coahoma +SBR 28029 2002 0 Copiah +SBR 28031 2002 0 Covington +SBR 28033 2002 0 DeSoto +SBR 28035 2002 0 Forrest +SBR 28037 2002 0 Franklin +SBR 28039 2002 0 George +SBR 28041 2002 0 Greene +SBR 28043 2002 0 Grenada +SBR 28045 2002 0 Hancock +SBR 28047 2002 0 Harrison +SBR 28049 2002 0 Hinds +SBR 28051 2002 0 Holmes +SBR 28053 2002 0 Humphreys +SBR 28055 2002 0 Issaquena +SBR 28057 2002 0 Itawamba +SBR 28059 2002 0 Jackson +SBR 28061 2002 0 Jasper +SBR 28063 2002 0 Jefferson +SBR 28065 2002 0 Jefferson Davis +SBR 28067 2002 0 Jones +SBR 28069 2002 0 Kemper +SBR 28071 2002 0 Lafayette +SBR 28073 2002 0 Lamar +SBR 28075 2002 0 Lauderdale +SBR 28077 2002 0 Lawrence +SBR 28079 2002 0 Leake +SBR 28081 2002 0 Lee +SBR 28083 2002 0 Leflore +SBR 28085 2002 0 Lincoln +SBR 28087 2002 0 Lowndes +SBR 28089 2002 0 Madison +SBR 28091 2002 0 Marion +SBR 28093 2002 0 Marshall +SBR 28095 2002 0 Monroe +SBR 28097 2002 0 Montgomery +SBR 28099 2002 0 Neshoba +SBR 28101 2002 0 Newton +SBR 28103 2002 0 Noxubee +SBR 28105 2002 0 Oktibbeha +SBR 28107 2002 0 Panola +SBR 28109 2002 0 Pearl River +SBR 28111 2002 0 Perry +SBR 28113 2002 0 Pike +SBR 28115 2002 0 Pontotoc +SBR 28117 2002 0 Prentiss +SBR 28119 2002 0 Quitman +SBR 28121 2002 0 Rankin +SBR 28123 2002 0 Scott +SBR 28125 2002 0 Sharkey +SBR 28127 2002 0 Simpson +SBR 28129 2002 0 Smith +SBR 28131 2002 0 Stone +SBR 28133 2002 0 Sunflower +SBR 28135 2002 0 Tallahatchie +SBR 28137 2002 0 Tate +SBR 28139 2002 0 Tippah +SBR 28141 2002 0 Tishomingo +SBR 28143 2002 0 Tunica +SBR 28145 2002 0 Union +SBR 28147 2002 0 Walthall +SBR 28149 2002 0 Warren +SBR 28151 2002 0 Washington +SBR 28153 2002 0 Wayne +SBR 28155 2002 0 Webster +SBR 28157 2002 0 Wilkinson +SBR 28159 2002 0 Winston +SBR 28161 2002 0 Yalobusha +SBR 28163 2002 0 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_SNOWM.ALO new file mode 100644 index 0000000..a553a83 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_SNOWM.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 28000 2002 0 MS +SNM 28001 2002 0 Adams +SNM 28003 2002 0 Alcorn +SNM 28005 2002 0 Amite +SNM 28007 2002 0 Attala +SNM 28009 2002 0 Benton +SNM 28011 2002 0 Bolivar +SNM 28013 2002 0 Calhoun +SNM 28015 2002 0 Carroll +SNM 28017 2002 0 Chickasaw +SNM 28019 2002 0 Choctaw +SNM 28021 2002 0 Claiborne +SNM 28023 2002 0 Clarke +SNM 28025 2002 0 Clay +SNM 28027 2002 0 Coahoma +SNM 28029 2002 0 Copiah +SNM 28031 2002 0 Covington +SNM 28033 2002 0 DeSoto +SNM 28035 2002 0 Forrest +SNM 28037 2002 0 Franklin +SNM 28039 2002 0 George +SNM 28041 2002 0 Greene +SNM 28043 2002 0 Grenada +SNM 28045 2002 0 Hancock +SNM 28047 2002 0 Harrison +SNM 28049 2002 0 Hinds +SNM 28051 2002 0 Holmes +SNM 28053 2002 0 Humphreys +SNM 28055 2002 0 Issaquena +SNM 28057 2002 0 Itawamba +SNM 28059 2002 0 Jackson +SNM 28061 2002 0 Jasper +SNM 28063 2002 0 Jefferson +SNM 28065 2002 0 Jefferson Davis +SNM 28067 2002 0 Jones +SNM 28069 2002 0 Kemper +SNM 28071 2002 0 Lafayette +SNM 28073 2002 0 Lamar +SNM 28075 2002 0 Lauderdale +SNM 28077 2002 0 Lawrence +SNM 28079 2002 0 Leake +SNM 28081 2002 0 Lee +SNM 28083 2002 0 Leflore +SNM 28085 2002 0 Lincoln +SNM 28087 2002 0 Lowndes +SNM 28089 2002 0 Madison +SNM 28091 2002 0 Marion +SNM 28093 2002 0 Marshall +SNM 28095 2002 0 Monroe +SNM 28097 2002 0 Montgomery +SNM 28099 2002 0 Neshoba +SNM 28101 2002 0 Newton +SNM 28103 2002 0 Noxubee +SNM 28105 2002 0 Oktibbeha +SNM 28107 2002 0 Panola +SNM 28109 2002 0 Pearl River +SNM 28111 2002 0 Perry +SNM 28113 2002 0 Pike +SNM 28115 2002 0 Pontotoc +SNM 28117 2002 0 Prentiss +SNM 28119 2002 0 Quitman +SNM 28121 2002 0 Rankin +SNM 28123 2002 0 Scott +SNM 28125 2002 0 Sharkey +SNM 28127 2002 0 Simpson +SNM 28129 2002 0 Smith +SNM 28131 2002 0 Stone +SNM 28133 2002 0 Sunflower +SNM 28135 2002 0 Tallahatchie +SNM 28137 2002 0 Tate +SNM 28139 2002 0 Tippah +SNM 28141 2002 0 Tishomingo +SNM 28143 2002 0 Tunica +SNM 28145 2002 0 Union +SNM 28147 2002 0 Walthall +SNM 28149 2002 0 Warren +SNM 28151 2002 0 Washington +SNM 28153 2002 0 Wayne +SNM 28155 2002 0 Webster +SNM 28157 2002 0 Wilkinson +SNM 28159 2002 0 Winston +SNM 28161 2002 0 Yalobusha +SNM 28163 2002 0 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_WIB.ALO new file mode 100644 index 0000000..ad25e2a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_WIB.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 28000 1990 3012 MS +WIB 28001 1990 67 Adams +WIB 28003 1990 4 Alcorn +WIB 28005 1990 5 Amite +WIB 28007 1990 5 Attala +WIB 28009 1990 5 Benton +WIB 28011 1990 76 Bolivar +WIB 28013 1990 4 Calhoun +WIB 28015 1990 18 Carroll +WIB 28017 1990 7 Chickasaw +WIB 28019 1990 2 Choctaw +WIB 28021 1990 38 Claiborne +WIB 28023 1990 6 Clarke +WIB 28025 1990 19 Clay +WIB 28027 1990 75 Coahoma +WIB 28029 1990 7 Copiah +WIB 28031 1990 3 Covington +WIB 28033 1990 48 DeSoto +WIB 28035 1990 9 Forrest +WIB 28037 1990 6 Franklin +WIB 28039 1990 14 George +WIB 28041 1990 15 Greene +WIB 28043 1990 71 Grenada +WIB 28045 1990 108 Hancock +WIB 28047 1990 542 Harrison +WIB 28049 1990 21 Hinds +WIB 28051 1990 21 Holmes +WIB 28053 1990 34 Humphreys +WIB 28055 1990 74 Issaquena +WIB 28057 1990 21 Itawamba +WIB 28059 1990 465 Jackson +WIB 28061 1990 4 Jasper +WIB 28063 1990 20 Jefferson +WIB 28065 1990 2 Jefferson Davis +WIB 28067 1990 15 Jones +WIB 28069 1990 2 Kemper +WIB 28071 1990 125 Lafayette +WIB 28073 1990 8 Lamar +WIB 28075 1990 30 Lauderdale +WIB 28077 1990 13 Lawrence +WIB 28079 1990 7 Leake +WIB 28081 1990 9 Lee +WIB 28083 1990 37 Leflore +WIB 28085 1990 6 Lincoln +WIB 28087 1990 37 Lowndes +WIB 28089 1990 59 Madison +WIB 28091 1990 16 Marion +WIB 28093 1990 9 Marshall +WIB 28095 1990 20 Monroe +WIB 28097 1990 3 Montgomery +WIB 28099 1990 4 Neshoba +WIB 28101 1990 4 Newton +WIB 28103 1990 14 Noxubee +WIB 28105 1990 11 Oktibbeha +WIB 28107 1990 54 Panola +WIB 28109 1990 19 Pearl River +WIB 28111 1990 8 Perry +WIB 28113 1990 5 Pike +WIB 28115 1990 9 Pontotoc +WIB 28117 1990 9 Prentiss +WIB 28119 1990 4 Quitman +WIB 28121 1990 82 Rankin +WIB 28123 1990 3 Scott +WIB 28125 1990 19 Sharkey +WIB 28127 1990 5 Simpson +WIB 28129 1990 4 Smith +WIB 28131 1990 7 Stone +WIB 28133 1990 35 Sunflower +WIB 28135 1990 21 Tallahatchie +WIB 28137 1990 17 Tate +WIB 28139 1990 5 Tippah +WIB 28141 1990 53 Tishomingo +WIB 28143 1990 67 Tunica +WIB 28145 1990 4 Union +WIB 28147 1990 2 Walthall +WIB 28149 1990 83 Warren +WIB 28151 1990 97 Washington +WIB 28153 1990 8 Wayne +WIB 28155 1990 1 Webster +WIB 28157 1990 28 Wilkinson +WIB 28159 1990 8 Winston +WIB 28161 1990 72 Yalobusha +WIB 28163 1990 38 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MS_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MS_WOB.ALO new file mode 100644 index 0000000..a2470a0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MS_WOB.ALO @@ -0,0 +1,107 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 28000 1990 2148 MS +WOB 28001 1990 67 Adams +WOB 28003 1990 4 Alcorn +WOB 28005 1990 5 Amite +WOB 28007 1990 5 Attala +WOB 28009 1990 5 Benton +WOB 28011 1990 76 Bolivar +WOB 28013 1990 4 Calhoun +WOB 28015 1990 18 Carroll +WOB 28017 1990 7 Chickasaw +WOB 28019 1990 2 Choctaw +WOB 28021 1990 38 Claiborne +WOB 28023 1990 6 Clarke +WOB 28025 1990 19 Clay +WOB 28027 1990 75 Coahoma +WOB 28029 1990 7 Copiah +WOB 28031 1990 3 Covington +WOB 28033 1990 48 DeSoto +WOB 28035 1990 9 Forrest +WOB 28037 1990 6 Franklin +WOB 28039 1990 14 George +WOB 28041 1990 15 Greene +WOB 28043 1990 71 Grenada +WOB 28045 1990 35 Hancock +WOB 28047 1990 99 Harrison +WOB 28049 1990 21 Hinds +WOB 28051 1990 21 Holmes +WOB 28053 1990 34 Humphreys +WOB 28055 1990 74 Issaquena +WOB 28057 1990 21 Itawamba +WOB 28059 1990 117 Jackson +WOB 28061 1990 4 Jasper +WOB 28063 1990 20 Jefferson +WOB 28065 1990 2 Jefferson Davis +WOB 28067 1990 15 Jones +WOB 28069 1990 2 Kemper +WOB 28071 1990 125 Lafayette +WOB 28073 1990 8 Lamar +WOB 28075 1990 30 Lauderdale +WOB 28077 1990 13 Lawrence +WOB 28079 1990 7 Leake +WOB 28081 1990 9 Lee +WOB 28083 1990 37 Leflore +WOB 28085 1990 6 Lincoln +WOB 28087 1990 37 Lowndes +WOB 28089 1990 59 Madison +WOB 28091 1990 16 Marion +WOB 28093 1990 9 Marshall +WOB 28095 1990 20 Monroe +WOB 28097 1990 3 Montgomery +WOB 28099 1990 4 Neshoba +WOB 28101 1990 4 Newton +WOB 28103 1990 14 Noxubee +WOB 28105 1990 11 Oktibbeha +WOB 28107 1990 54 Panola +WOB 28109 1990 19 Pearl River +WOB 28111 1990 8 Perry +WOB 28113 1990 5 Pike +WOB 28115 1990 9 Pontotoc +WOB 28117 1990 9 Prentiss +WOB 28119 1990 4 Quitman +WOB 28121 1990 82 Rankin +WOB 28123 1990 3 Scott +WOB 28125 1990 19 Sharkey +WOB 28127 1990 5 Simpson +WOB 28129 1990 4 Smith +WOB 28131 1990 7 Stone +WOB 28133 1990 35 Sunflower +WOB 28135 1990 21 Tallahatchie +WOB 28137 1990 17 Tate +WOB 28139 1990 5 Tippah +WOB 28141 1990 53 Tishomingo +WOB 28143 1990 67 Tunica +WOB 28145 1990 4 Union +WOB 28147 1990 2 Walthall +WOB 28149 1990 83 Warren +WOB 28151 1990 97 Washington +WOB 28153 1990 8 Wayne +WOB 28155 1990 1 Webster +WOB 28157 1990 28 Wilkinson +WOB 28159 1990 8 Winston +WOB 28161 1990 72 Yalobusha +WOB 28163 1990 38 Yazoo +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_AIRTR.ALO new file mode 100644 index 0000000..9ccd0f0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_AIRTR.ALO @@ -0,0 +1,84 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 30000 2002 279.679 MT +AIR 30001 2002 0.090 Beaverhead +AIR 30003 2002 0.000 Big Horn +AIR 30005 2002 0.000 Blaine +AIR 30007 2002 0.000 Broadwater +AIR 30009 2002 0.000 Carbon +AIR 30011 2002 0.000 Carter +AIR 30013 2002 48.530 Cascade +AIR 30015 2002 0.000 Chouteau +AIR 30017 2002 6.240 Custer +AIR 30019 2002 0.000 Daniels +AIR 30021 2002 5.731 Dawson +AIR 30023 2002 0.000 Deer Lodge +AIR 30025 2002 0.000 Fallon +AIR 30027 2002 11.480 Fergus +AIR 30029 2002 29.430 Flathead +AIR 30031 2002 27.530 Gallatin +AIR 30033 2002 0.000 Garfield Park +AIR 30035 2002 0.034 Glacier +AIR 30037 2002 0.000 Golden Valley +AIR 30039 2002 0.000 Granite +AIR 30041 2002 5.902 Hill +AIR 30043 2002 0.000 Jefferson +AIR 30045 2002 0.000 Judith Basin +AIR 30047 2002 0.000 Lake +AIR 30049 2002 15.140 Lewis & Clark +AIR 30051 2002 0.000 Liberty +AIR 30053 2002 0.000 Lincoln +AIR 30055 2002 0.000 McCone +AIR 30057 2002 0.000 Madison +AIR 30059 2002 0.000 Meagher +AIR 30061 2002 0.000 Mineral +AIR 30063 2002 31.120 Missoula +AIR 30065 2002 0.000 Musselshell +AIR 30067 2002 0.017 Park +AIR 30069 2002 0.000 Petroleum +AIR 30071 2002 0.000 Phillips +AIR 30073 2002 0.020 Pondera +AIR 30075 2002 0.000 Powder River +AIR 30077 2002 0.000 Powell +AIR 30079 2002 0.000 Prairie +AIR 30081 2002 0.000 Ravalli +AIR 30083 2002 6.580 Richland +AIR 30085 2002 4.739 Roosevelt +AIR 30087 2002 0.041 Rosebud +AIR 30089 2002 0.000 Sanders +AIR 30091 2002 0.000 Sheridan +AIR 30093 2002 22.310 Silver Bow +AIR 30095 2002 0.000 Stillwater +AIR 30097 2002 0.000 Sweet Grass +AIR 30099 2002 0.010 Teton +AIR 30101 2002 0.000 Toole +AIR 30103 2002 0.000 Treasure +AIR 30105 2002 6.045 Valley +AIR 30107 2002 0.000 Wheatland +AIR 30109 2002 0.000 Wibaux +AIR 30111 2002 58.690 Yellowstone +AIR 30113 2002 0.000 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_COAL.ALO new file mode 100644 index 0000000..cd83a3c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_COAL.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 30000 2002 0 MT +MIN 30001 2002 0 Beaverhead +MIN 30003 2002 0 Big Horn +MIN 30005 2002 0 Blaine +MIN 30007 2002 0 Broadwater +MIN 30009 2002 0 Carbon +MIN 30011 2002 0 Carter +MIN 30013 2002 0 Cascade +MIN 30015 2002 0 Chouteau +MIN 30017 2002 0 Custer +MIN 30019 2002 0 Daniels +MIN 30021 2002 0 Dawson +MIN 30023 2002 0 Deer Lodge +MIN 30025 2002 0 Fallon +MIN 30027 2002 0 Fergus +MIN 30029 2002 0 Flathead +MIN 30031 2002 0 Gallatin +MIN 30033 2002 0 Garfield Park +MIN 30035 2002 0 Glacier +MIN 30037 2002 0 Golden Valley +MIN 30039 2002 0 Granite +MIN 30041 2002 0 Hill +MIN 30043 2002 0 Jefferson +MIN 30045 2002 0 Judith Basin +MIN 30047 2002 0 Lake +MIN 30049 2002 0 Lewis & Clark +MIN 30051 2002 0 Liberty +MIN 30053 2002 0 Lincoln +MIN 30055 2002 0 McCone +MIN 30057 2002 0 Madison +MIN 30059 2002 0 Meagher +MIN 30061 2002 0 Mineral +MIN 30063 2002 0 Missoula +MIN 30065 2002 0 Musselshell +MIN 30067 2002 0 Park +MIN 30069 2002 0 Petroleum +MIN 30071 2002 0 Phillips +MIN 30073 2002 0 Pondera +MIN 30075 2002 0 Powder River +MIN 30077 2002 0 Powell +MIN 30079 2002 0 Prairie +MIN 30081 2002 0 Ravalli +MIN 30083 2002 0 Richland +MIN 30085 2002 0 Roosevelt +MIN 30087 2002 0 Rosebud +MIN 30089 2002 0 Sanders +MIN 30091 2002 0 Sheridan +MIN 30093 2002 0 Silver Bow +MIN 30095 2002 0 Stillwater +MIN 30097 2002 0 Sweet Grass +MIN 30099 2002 0 Teton +MIN 30101 2002 0 Toole +MIN 30103 2002 0 Treasure +MIN 30105 2002 0 Valley +MIN 30107 2002 0 Wheatland +MIN 30109 2002 0 Wibaux +MIN 30111 2002 0 Yellowstone +MIN 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_CONST.ALO new file mode 100644 index 0000000..385c63c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_CONST.ALO @@ -0,0 +1,84 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 30000 2003 972483 MT +CON 30001 2003 7470 Beaverhead +CON 30003 2003 20112 Big Horn +CON 30005 2003 5069 Blaine +CON 30007 2003 6302 Broadwater +CON 30009 2003 4968 Carbon +CON 30011 2003 4055 Carter +CON 30013 2003 69043 Cascade +CON 30015 2003 2427 Chouteau +CON 30017 2003 18470 Custer +CON 30019 2003 4725 Daniels +CON 30021 2003 4457 Dawson +CON 30023 2003 2270 Deer Lodge +CON 30025 2003 0 Fallon +CON 30027 2003 1949 Fergus +CON 30029 2003 124978 Flathead +CON 30031 2003 139131 Gallatin +CON 30033 2003 1446 Garfield Park +CON 30035 2003 2548 Glacier +CON 30037 2003 519 Golden Valley +CON 30039 2003 15394 Granite +CON 30041 2003 1839 Hill +CON 30043 2003 1872 Jefferson +CON 30045 2003 545 Judith Basin +CON 30047 2003 16232 Lake +CON 30049 2003 52061 Lewis & Clark +CON 30051 2003 10565 Liberty +CON 30053 2003 8493 Lincoln +CON 30055 2003 212 McCone +CON 30057 2003 4940 Madison +CON 30059 2003 2483 Meagher +CON 30061 2003 569 Mineral +CON 30063 2003 145237 Missoula +CON 30065 2003 10658 Musselshell +CON 30067 2003 8999 Park +CON 30069 2003 85 Petroleum +CON 30071 2003 7452 Phillips +CON 30073 2003 5600 Pondera +CON 30075 2003 122 Powder River +CON 30077 2003 3513 Powell +CON 30079 2003 493 Prairie +CON 30081 2003 8480 Ravalli +CON 30083 2003 11261 Richland +CON 30085 2003 2477 Roosevelt +CON 30087 2003 9147 Rosebud +CON 30089 2003 5084 Sanders +CON 30091 2003 2207 Sheridan +CON 30093 2003 7876 Silver Bow +CON 30095 2003 4825 Stillwater +CON 30097 2003 8573 Sweet Grass +CON 30099 2003 1980 Teton +CON 30101 2003 9707 Toole +CON 30103 2003 934 Treasure +CON 30105 2003 6202 Valley +CON 30107 2003 0 Wheatland +CON 30109 2003 350 Wibaux +CON 30111 2003 176078 Yellowstone +CON 30113 2003 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_FARMS.ALO new file mode 100644 index 0000000..42825a7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_FARMS.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 30000 2002 8742111 MT +FRM 30001 2002 121179 Beaverhead +FRM 30003 2002 170330 Big Horn +FRM 30005 2002 294492 Blaine +FRM 30007 2002 81222 Broadwater +FRM 30009 2002 81688 Carbon +FRM 30011 2002 43331 Carter +FRM 30013 2002 267026 Cascade +FRM 30015 2002 623170 Chouteau +FRM 30017 2002 57170 Custer +FRM 30019 2002 312865 Daniels +FRM 30021 2002 251553 Dawson +FRM 30023 2002 13765 Deer Lodge +FRM 30025 2002 66835 Fallon +FRM 30027 2002 362238 Fergus +FRM 30029 2002 81462 Flathead +FRM 30031 2002 177013 Gallatin +FRM 30033 2002 135909 Garfield Park +FRM 30035 2002 274890 Glacier +FRM 30037 2002 27064 Golden Valley +FRM 30039 2002 27091 Granite +FRM 30041 2002 497794 Hill +FRM 30043 2002 27260 Jefferson +FRM 30045 2002 179511 Judith Basin +FRM 30047 2002 78680 Lake +FRM 30049 2002 60471 Lewis & Clark +FRM 30051 2002 292598 Liberty +FRM 30053 2002 9188 Lincoln +FRM 30055 2002 258909 McCone +FRM 30057 2002 86278 Madison +FRM 30059 2002 69649 Meagher +FRM 30061 2002 2746 Mineral +FRM 30063 2002 22290 Missoula +FRM 30065 2002 43332 Musselshell +FRM 30067 2002 79079 Park +FRM 30069 2002 27272 Petroleum +FRM 30071 2002 194034 Phillips +FRM 30073 2002 307976 Pondera +FRM 30075 2002 54746 Powder River +FRM 30077 2002 57656 Powell +FRM 30079 2002 47394 Prairie +FRM 30081 2002 48933 Ravalli +FRM 30083 2002 254123 Richland +FRM 30085 2002 432826 Roosevelt +FRM 30087 2002 99278 Rosebud +FRM 30089 2002 31942 Sanders +FRM 30091 2002 432773 Sheridan +FRM 30093 2002 6308 Silver Bow +FRM 30095 2002 88731 Stillwater +FRM 30097 2002 53010 Sweet Grass +FRM 30099 2002 321043 Teton +FRM 30101 2002 324233 Toole +FRM 30103 2002 27024 Treasure +FRM 30105 2002 419859 Valley +FRM 30107 2002 81224 Wheatland +FRM 30109 2002 87633 Wibaux +FRM 30111 2002 166015 Yellowstone +FRM 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_GOLF.ALO new file mode 100644 index 0000000..1e19ba9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_GOLF.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 30000 2002 76 MT +GC 30001 2002 1 Beaverhead +GC 30003 2002 2 Big Horn +GC 30005 2002 0 Blaine +GC 30007 2002 1 Broadwater +GC 30009 2002 0 Carbon +GC 30011 2002 0 Carter +GC 30013 2002 4 Cascade +GC 30015 2002 1 Chouteau +GC 30017 2002 1 Custer +GC 30019 2002 1 Daniels +GC 30021 2002 1 Dawson +GC 30023 2002 1 Deer Lodge +GC 30025 2002 1 Fallon +GC 30027 2002 1 Fergus +GC 30029 2002 7 Flathead +GC 30031 2002 5 Gallatin +GC 30033 2002 0 Garfield Park +GC 30035 2002 1 Glacier +GC 30037 2002 0 Golden Valley +GC 30039 2002 0 Granite +GC 30041 2002 2 Hill +GC 30043 2002 0 Jefferson +GC 30045 2002 0 Judith Basin +GC 30047 2002 1 Lake +GC 30049 2002 3 Lewis & Clark +GC 30051 2002 0 Liberty +GC 30053 2002 1 Lincoln +GC 30055 2002 0 McCone +GC 30057 2002 1 Madison +GC 30059 2002 0 Meagher +GC 30061 2002 2 Mineral +GC 30063 2002 5 Missoula +GC 30065 2002 2 Musselshell +GC 30067 2002 1 Park +GC 30069 2002 0 Petroleum +GC 30071 2002 0 Phillips +GC 30073 2002 1 Pondera +GC 30075 2002 1 Powder River +GC 30077 2002 1 Powell +GC 30079 2002 0 Prairie +GC 30081 2002 3 Ravalli +GC 30083 2002 1 Richland +GC 30085 2002 1 Roosevelt +GC 30087 2002 1 Rosebud +GC 30089 2002 3 Sanders +GC 30091 2002 0 Sheridan +GC 30093 2002 2 Silver Bow +GC 30095 2002 1 Stillwater +GC 30097 2002 1 Sweet Grass +GC 30099 2002 2 Teton +GC 30101 2002 1 Toole +GC 30103 2002 0 Treasure +GC 30105 2002 2 Valley +GC 30107 2002 1 Wheatland +GC 30109 2002 0 Wibaux +GC 30111 2002 8 Yellowstone +GC 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_HOLSL.ALO new file mode 100644 index 0000000..69606c8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_HOLSL.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 30000 2002 1566 MT +COM 30001 2002 11 Beaverhead +COM 30003 2002 6 Big Horn +COM 30005 2002 8 Blaine +COM 30007 2002 8 Broadwater +COM 30009 2002 9 Carbon +COM 30011 2002 1 Carter +COM 30013 2002 132 Cascade +COM 30015 2002 14 Chouteau +COM 30017 2002 15 Custer +COM 30019 2002 7 Daniels +COM 30021 2002 21 Dawson +COM 30023 2002 1 Deer Lodge +COM 30025 2002 7 Fallon +COM 30027 2002 25 Fergus +COM 30029 2002 124 Flathead +COM 30031 2002 142 Gallatin +COM 30033 2002 1 Garfield Park +COM 30035 2002 11 Glacier +COM 30037 2002 2 Golden Valley +COM 30039 2002 5 Granite +COM 30041 2002 22 Hill +COM 30043 2002 8 Jefferson +COM 30045 2002 9 Judith Basin +COM 30047 2002 24 Lake +COM 30049 2002 69 Lewis & Clark +COM 30051 2002 4 Liberty +COM 30053 2002 10 Lincoln +COM 30055 2002 4 McCone +COM 30057 2002 6 Madison +COM 30059 2002 0 Meagher +COM 30061 2002 0 Mineral +COM 30063 2002 191 Missoula +COM 30065 2002 11 Musselshell +COM 30067 2002 22 Park +COM 30069 2002 0 Petroleum +COM 30071 2002 5 Phillips +COM 30073 2002 16 Pondera +COM 30075 2002 0 Powder River +COM 30077 2002 2 Powell +COM 30079 2002 2 Prairie +COM 30081 2002 57 Ravalli +COM 30083 2002 22 Richland +COM 30085 2002 11 Roosevelt +COM 30087 2002 1 Rosebud +COM 30089 2002 12 Sanders +COM 30091 2002 7 Sheridan +COM 30093 2002 48 Silver Bow +COM 30095 2002 10 Stillwater +COM 30097 2002 4 Sweet Grass +COM 30099 2002 9 Teton +COM 30101 2002 15 Toole +COM 30103 2002 2 Treasure +COM 30105 2002 18 Valley +COM 30107 2002 4 Wheatland +COM 30109 2002 1 Wibaux +COM 30111 2002 390 Yellowstone +COM 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_HOUSE.ALO new file mode 100644 index 0000000..13629bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_HOUSE.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 30000 2002 417106 MT +HOU 30001 2002 4568 Beaverhead +HOU 30003 2002 4661 Big Horn +HOU 30005 2002 2939 Blaine +HOU 30007 2002 2013 Broadwater +HOU 30009 2002 5493 Carbon +HOU 30011 2002 808 Carter +HOU 30013 2002 35415 Cascade +HOU 30015 2002 2761 Chouteau +HOU 30017 2002 5353 Custer +HOU 30019 2002 1145 Daniels +HOU 30021 2002 4153 Dawson +HOU 30023 2002 4931 Deer Lodge +HOU 30025 2002 1406 Fallon +HOU 30027 2002 5532 Fergus +HOU 30029 2002 35317 Flathead +HOU 30031 2002 30899 Gallatin +HOU 30033 2002 954 Garfield Park +HOU 30035 2002 5230 Glacier +HOU 30037 2002 446 Golden Valley +HOU 30039 2002 2056 Granite +HOU 30041 2002 7445 Hill +HOU 30043 2002 4187 Jefferson +HOU 30045 2002 1313 Judith Basin +HOU 30047 2002 13705 Lake +HOU 30049 2002 25785 Lewis & Clark +HOU 30051 2002 1063 Liberty +HOU 30053 2002 9359 Lincoln +HOU 30055 2002 1081 McCone +HOU 30057 2002 4636 Madison +HOU 30059 2002 1349 Meagher +HOU 30061 2002 1970 Mineral +HOU 30063 2002 42472 Missoula +HOU 30065 2002 2307 Musselshell +HOU 30067 2002 8252 Park +HOU 30069 2002 290 Petroleum +HOU 30071 2002 2484 Phillips +HOU 30073 2002 2822 Pondera +HOU 30075 2002 1005 Powder River +HOU 30077 2002 2918 Powell +HOU 30079 2002 712 Prairie +HOU 30081 2002 16062 Ravalli +HOU 30083 2002 4552 Richland +HOU 30085 2002 4030 Roosevelt +HOU 30087 2002 3929 Rosebud +HOU 30089 2002 5286 Sanders +HOU 30091 2002 2152 Sheridan +HOU 30093 2002 16150 Silver Bow +HOU 30095 2002 3984 Stillwater +HOU 30097 2002 1895 Sweet Grass +HOU 30099 2002 2903 Teton +HOU 30101 2002 2294 Toole +HOU 30103 2002 420 Treasure +HOU 30105 2002 4818 Valley +HOU 30107 2002 1142 Wheatland +HOU 30109 2002 584 Wibaux +HOU 30111 2002 55670 Yellowstone +HOU 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_LOGGN.ALO new file mode 100644 index 0000000..d27e65c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_LOGGN.ALO @@ -0,0 +1,84 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 30000 2002 224467391 MT +LOG 30001 2002 534993 Beaverhead +LOG 30003 2002 4025196 Big Horn +LOG 30005 2002 407760 Blaine +LOG 30007 2002 962711 Broadwater +LOG 30009 2002 164828 Carbon +LOG 30011 2002 1253166 Carter +LOG 30013 2002 3020855 Cascade +LOG 30015 2002 434433 Chouteau +LOG 30017 2002 1172454 Custer +LOG 30019 2002 0 Daniels +LOG 30021 2002 0 Dawson +LOG 30023 2002 2079829 Deer Lodge +LOG 30025 2002 0 Fallon +LOG 30027 2002 3002905 Fergus +LOG 30029 2002 37064763 Flathead +LOG 30031 2002 1461325 Gallatin +LOG 30033 2002 105192 Garfield Park +LOG 30035 2002 281899 Glacier +LOG 30037 2002 140552 Golden Valley +LOG 30039 2002 9640245 Granite +LOG 30041 2002 218950 Hill +LOG 30043 2002 2371335 Jefferson +LOG 30045 2002 1005660 Judith Basin +LOG 30047 2002 10739941 Lake +LOG 30049 2002 9108576 Lewis & Clark +LOG 30051 2002 4809 Liberty +LOG 30053 2002 34225643 Lincoln +LOG 30055 2002 0 McCone +LOG 30057 2002 2621222 Madison +LOG 30059 2002 6502734 Meagher +LOG 30061 2002 4713463 Mineral +LOG 30063 2002 34469250 Missoula +LOG 30065 2002 2136102 Musselshell +LOG 30067 2002 1501375 Park +LOG 30069 2002 184010 Petroleum +LOG 30071 2002 0 Phillips +LOG 30073 2002 0 Pondera +LOG 30075 2002 2723570 Powder River +LOG 30077 2002 13809791 Powell +LOG 30079 2002 0 Prairie +LOG 30081 2002 5754278 Ravalli +LOG 30083 2002 0 Richland +LOG 30085 2002 0 Roosevelt +LOG 30087 2002 3746875 Rosebud +LOG 30089 2002 17775320 Sanders +LOG 30091 2002 0 Sheridan +LOG 30093 2002 330589 Silver Bow +LOG 30095 2002 386937 Stillwater +LOG 30097 2002 1510712 Sweet Grass +LOG 30099 2002 0 Teton +LOG 30101 2002 0 Toole +LOG 30103 2002 1367480 Treasure +LOG 30105 2002 0 Valley +LOG 30107 2002 1069077 Wheatland +LOG 30109 2002 0 Wibaux +LOG 30111 2002 436587 Yellowstone +LOG 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_LSCAP.ALO new file mode 100644 index 0000000..f429c98 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_LSCAP.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 30000 2002 527 MT +LSC 30001 2002 2 Beaverhead +LSC 30003 2002 0 Big Horn +LSC 30005 2002 0 Blaine +LSC 30007 2002 2 Broadwater +LSC 30009 2002 2 Carbon +LSC 30011 2002 0 Carter +LSC 30013 2002 103 Cascade +LSC 30015 2002 0 Chouteau +LSC 30017 2002 2 Custer +LSC 30019 2002 0 Daniels +LSC 30021 2002 0 Dawson +LSC 30023 2002 2 Deer Lodge +LSC 30025 2002 0 Fallon +LSC 30027 2002 2 Fergus +LSC 30029 2002 67 Flathead +LSC 30031 2002 72 Gallatin +LSC 30033 2002 0 Garfield Park +LSC 30035 2002 0 Glacier +LSC 30037 2002 0 Golden Valley +LSC 30039 2002 0 Granite +LSC 30041 2002 2 Hill +LSC 30043 2002 2 Jefferson +LSC 30045 2002 0 Judith Basin +LSC 30047 2002 2 Lake +LSC 30049 2002 22 Lewis & Clark +LSC 30051 2002 0 Liberty +LSC 30053 2002 2 Lincoln +LSC 30055 2002 0 McCone +LSC 30057 2002 0 Madison +LSC 30059 2002 2 Meagher +LSC 30061 2002 0 Mineral +LSC 30063 2002 43 Missoula +LSC 30065 2002 2 Musselshell +LSC 30067 2002 2 Park +LSC 30069 2002 0 Petroleum +LSC 30071 2002 0 Phillips +LSC 30073 2002 2 Pondera +LSC 30075 2002 0 Powder River +LSC 30077 2002 0 Powell +LSC 30079 2002 0 Prairie +LSC 30081 2002 60 Ravalli +LSC 30083 2002 2 Richland +LSC 30085 2002 2 Roosevelt +LSC 30087 2002 2 Rosebud +LSC 30089 2002 2 Sanders +LSC 30091 2002 0 Sheridan +LSC 30093 2002 2 Silver Bow +LSC 30095 2002 2 Stillwater +LSC 30097 2002 2 Sweet Grass +LSC 30099 2002 2 Teton +LSC 30101 2002 2 Toole +LSC 30103 2002 0 Treasure +LSC 30105 2002 0 Valley +LSC 30107 2002 0 Wheatland +LSC 30109 2002 0 Wibaux +LSC 30111 2002 114 Yellowstone +LSC 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_MNFG.ALO new file mode 100644 index 0000000..2510fb9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_MNFG.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 30000 2002 36818 MT +MFG 30001 2002 97 Beaverhead +MFG 30003 2002 54 Big Horn +MFG 30005 2002 28 Blaine +MFG 30007 2002 354 Broadwater +MFG 30009 2002 152 Carbon +MFG 30011 2002 11 Carter +MFG 30013 2002 1646 Cascade +MFG 30015 2002 68 Chouteau +MFG 30017 2002 114 Custer +MFG 30019 2002 31 Daniels +MFG 30021 2002 111 Dawson +MFG 30023 2002 155 Deer Lodge +MFG 30025 2002 20 Fallon +MFG 30027 2002 634 Fergus +MFG 30029 2002 6363 Flathead +MFG 30031 2002 4833 Gallatin +MFG 30033 2002 21 Garfield Park +MFG 30035 2002 23 Glacier +MFG 30037 2002 11 Golden Valley +MFG 30039 2002 89 Granite +MFG 30041 2002 144 Hill +MFG 30043 2002 221 Jefferson +MFG 30045 2002 29 Judith Basin +MFG 30047 2002 1497 Lake +MFG 30049 2002 983 Lewis & Clark +MFG 30051 2002 34 Liberty +MFG 30053 2002 1321 Lincoln +MFG 30055 2002 20 McCone +MFG 30057 2002 165 Madison +MFG 30059 2002 15 Meagher +MFG 30061 2002 302 Mineral +MFG 30063 2002 5211 Missoula +MFG 30065 2002 41 Musselshell +MFG 30067 2002 807 Park +MFG 30069 2002 0 Petroleum +MFG 30071 2002 43 Phillips +MFG 30073 2002 100 Pondera +MFG 30075 2002 7 Powder River +MFG 30077 2002 266 Powell +MFG 30079 2002 19 Prairie +MFG 30081 2002 2043 Ravalli +MFG 30083 2002 454 Richland +MFG 30085 2002 129 Roosevelt +MFG 30087 2002 35 Rosebud +MFG 30089 2002 424 Sanders +MFG 30091 2002 29 Sheridan +MFG 30093 2002 809 Silver Bow +MFG 30095 2002 507 Stillwater +MFG 30097 2002 142 Sweet Grass +MFG 30099 2002 60 Teton +MFG 30101 2002 37 Toole +MFG 30103 2002 14 Treasure +MFG 30105 2002 133 Valley +MFG 30107 2002 22 Wheatland +MFG 30109 2002 8 Wibaux +MFG 30111 2002 5932 Yellowstone +MFG 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_OIL.ALO new file mode 100644 index 0000000..0c2a97f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_OIL.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 30000 2002 926 MT +OIL 30001 2002 0 Beaverhead +OIL 30003 2002 6 Big Horn +OIL 30005 2002 69 Blaine +OIL 30007 2002 0 Broadwater +OIL 30009 2002 6 Carbon +OIL 30011 2002 0 Carter +OIL 30013 2002 6 Cascade +OIL 30015 2002 0 Chouteau +OIL 30017 2002 0 Custer +OIL 30019 2002 0 Daniels +OIL 30021 2002 6 Dawson +OIL 30023 2002 0 Deer Lodge +OIL 30025 2002 81 Fallon +OIL 30027 2002 0 Fergus +OIL 30029 2002 6 Flathead +OIL 30031 2002 0 Gallatin +OIL 30033 2002 0 Garfield Park +OIL 30035 2002 88 Glacier +OIL 30037 2002 0 Golden Valley +OIL 30039 2002 0 Granite +OIL 30041 2002 43 Hill +OIL 30043 2002 0 Jefferson +OIL 30045 2002 0 Judith Basin +OIL 30047 2002 0 Lake +OIL 30049 2002 6 Lewis & Clark +OIL 30051 2002 6 Liberty +OIL 30053 2002 0 Lincoln +OIL 30055 2002 0 McCone +OIL 30057 2002 0 Madison +OIL 30059 2002 0 Meagher +OIL 30061 2002 0 Mineral +OIL 30063 2002 0 Missoula +OIL 30065 2002 6 Musselshell +OIL 30067 2002 0 Park +OIL 30069 2002 0 Petroleum +OIL 30071 2002 0 Phillips +OIL 30073 2002 0 Pondera +OIL 30075 2002 69 Powder River +OIL 30077 2002 0 Powell +OIL 30079 2002 0 Prairie +OIL 30081 2002 64 Ravalli +OIL 30083 2002 70 Richland +OIL 30085 2002 64 Roosevelt +OIL 30087 2002 0 Rosebud +OIL 30089 2002 0 Sanders +OIL 30091 2002 64 Sheridan +OIL 30093 2002 0 Silver Bow +OIL 30095 2002 6 Stillwater +OIL 30097 2002 0 Sweet Grass +OIL 30099 2002 0 Teton +OIL 30101 2002 113 Toole +OIL 30103 2002 0 Treasure +OIL 30105 2002 0 Valley +OIL 30107 2002 0 Wheatland +OIL 30109 2002 0 Wibaux +OIL 30111 2002 147 Yellowstone +OIL 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_POP.ALO new file mode 100644 index 0000000..33ab7df --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_POP.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 30000 2002 910670 MT +POP 30001 2002 9003 Beaverhead +POP 30003 2002 12832 Big Horn +POP 30005 2002 6820 Blaine +POP 30007 2002 4411 Broadwater +POP 30009 2002 9730 Carbon +POP 30011 2002 1359 Carter +POP 30013 2002 79766 Cascade +POP 30015 2002 5646 Chouteau +POP 30017 2002 11439 Custer +POP 30019 2002 1936 Daniels +POP 30021 2002 8738 Dawson +POP 30023 2002 9076 Deer Lodge +POP 30025 2002 2728 Fallon +POP 30027 2002 11683 Fergus +POP 30029 2002 77475 Flathead +POP 30031 2002 71106 Gallatin +POP 30033 2002 1245 Garfield Park +POP 30035 2002 13209 Glacier +POP 30037 2002 1066 Golden Valley +POP 30039 2002 2869 Granite +POP 30041 2002 16368 Hill +POP 30043 2002 10419 Jefferson +POP 30045 2002 2257 Judith Basin +POP 30047 2002 27006 Lake +POP 30049 2002 56474 Lewis & Clark +POP 30051 2002 2020 Liberty +POP 30053 2002 18746 Lincoln +POP 30055 2002 1842 McCone +POP 30057 2002 6969 Madison +POP 30059 2002 1937 Meagher +POP 30061 2002 3816 Mineral +POP 30063 2002 97826 Missoula +POP 30065 2002 4462 Musselshell +POP 30067 2002 15839 Park +POP 30069 2002 487 Petroleum +POP 30071 2002 4356 Phillips +POP 30073 2002 6260 Pondera +POP 30075 2002 1828 Powder River +POP 30077 2002 7042 Powell +POP 30079 2002 1187 Prairie +POP 30081 2002 37753 Ravalli +POP 30083 2002 9276 Richland +POP 30085 2002 10436 Roosevelt +POP 30087 2002 9277 Rosebud +POP 30089 2002 10436 Sanders +POP 30091 2002 3807 Sheridan +POP 30093 2002 33451 Silver Bow +POP 30095 2002 8458 Stillwater +POP 30097 2002 3623 Sweet Grass +POP 30099 2002 6321 Teton +POP 30101 2002 5258 Toole +POP 30103 2002 777 Treasure +POP 30105 2002 7399 Valley +POP 30107 2002 2169 Wheatland +POP 30109 2002 1000 Wibaux +POP 30111 2002 131951 Yellowstone +POP 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_RAIL.ALO new file mode 100644 index 0000000..a09d2fc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_RAIL.ALO @@ -0,0 +1,84 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 30000 2002 43196.200 MT +RR 30001 2002 40.420 Beaverhead +RR 30003 2002 986.200 Big Horn +RR 30005 2002 626.620 Blaine +RR 30007 2002 1639.420 Broadwater +RR 30009 2002 115.500 Carbon +RR 30011 2002 0.000 Carter +RR 30013 2002 250.040 Cascade +RR 30015 2002 23.460 Chouteau +RR 30017 2002 777.590 Custer +RR 30019 2002 15.470 Daniels +RR 30021 2002 848.550 Dawson +RR 30023 2002 0.000 Deer Lodge +RR 30025 2002 138.590 Fallon +RR 30027 2002 25.200 Fergus +RR 30029 2002 1178.990 Flathead +RR 30031 2002 1722.930 Gallatin +RR 30033 2002 0.000 Garfield Park +RR 30035 2002 1099.090 Glacier +RR 30037 2002 66.180 Golden Valley +RR 30039 2002 1269.710 Granite +RR 30041 2002 688.010 Hill +RR 30043 2002 216.180 Jefferson +RR 30045 2002 202.790 Judith Basin +RR 30047 2002 73.050 Lake +RR 30049 2002 1537.900 Lewis & Clark +RR 30051 2002 493.080 Liberty +RR 30053 2002 1734.060 Lincoln +RR 30055 2002 16.320 McCone +RR 30057 2002 21.640 Madison +RR 30059 2002 0.000 Meagher +RR 30061 2002 1835.680 Mineral +RR 30063 2002 2573.330 Missoula +RR 30065 2002 0.000 Musselshell +RR 30067 2002 3045.180 Park +RR 30069 2002 0.000 Petroleum +RR 30071 2002 777.320 Phillips +RR 30073 2002 143.790 Pondera +RR 30075 2002 0.000 Powder River +RR 30077 2002 1712.500 Powell +RR 30079 2002 734.820 Prairie +RR 30081 2002 0.000 Ravalli +RR 30083 2002 28.920 Richland +RR 30085 2002 970.450 Roosevelt +RR 30087 2002 763.180 Rosebud +RR 30089 2002 3555.700 Sanders +RR 30091 2002 31.540 Sheridan +RR 30093 2002 21.640 Silver Bow +RR 30095 2002 2324.580 Stillwater +RR 30097 2002 2324.580 Sweet Grass +RR 30099 2002 100.930 Teton +RR 30101 2002 564.030 Toole +RR 30103 2002 667.620 Treasure +RR 30105 2002 645.430 Valley +RR 30107 2002 62.810 Wheatland +RR 30109 2002 403.790 Wibaux +RR 30111 2002 4101.390 Yellowstone +RR 30113 2002 0.000 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_RVPRK.ALO new file mode 100644 index 0000000..72a21bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_RVPRK.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 30000 2002 115 MT +RVP 30001 2002 5 Beaverhead +RVP 30003 2002 3 Big Horn +RVP 30005 2002 0 Blaine +RVP 30007 2002 1 Broadwater +RVP 30009 2002 0 Carbon +RVP 30011 2002 0 Carter +RVP 30013 2002 3 Cascade +RVP 30015 2002 0 Chouteau +RVP 30017 2002 2 Custer +RVP 30019 2002 0 Daniels +RVP 30021 2002 2 Dawson +RVP 30023 2002 0 Deer Lodge +RVP 30025 2002 0 Fallon +RVP 30027 2002 0 Fergus +RVP 30029 2002 11 Flathead +RVP 30031 2002 18 Gallatin +RVP 30033 2002 0 Garfield Park +RVP 30035 2002 3 Glacier +RVP 30037 2002 0 Golden Valley +RVP 30039 2002 0 Granite +RVP 30041 2002 0 Hill +RVP 30043 2002 3 Jefferson +RVP 30045 2002 1 Judith Basin +RVP 30047 2002 5 Lake +RVP 30049 2002 7 Lewis & Clark +RVP 30051 2002 0 Liberty +RVP 30053 2002 2 Lincoln +RVP 30055 2002 0 McCone +RVP 30057 2002 9 Madison +RVP 30059 2002 0 Meagher +RVP 30061 2002 3 Mineral +RVP 30063 2002 5 Missoula +RVP 30065 2002 1 Musselshell +RVP 30067 2002 6 Park +RVP 30069 2002 1 Petroleum +RVP 30071 2002 0 Phillips +RVP 30073 2002 0 Pondera +RVP 30075 2002 0 Powder River +RVP 30077 2002 3 Powell +RVP 30079 2002 0 Prairie +RVP 30081 2002 4 Ravalli +RVP 30083 2002 0 Richland +RVP 30085 2002 0 Roosevelt +RVP 30087 2002 0 Rosebud +RVP 30089 2002 1 Sanders +RVP 30091 2002 0 Sheridan +RVP 30093 2002 2 Silver Bow +RVP 30095 2002 0 Stillwater +RVP 30097 2002 3 Sweet Grass +RVP 30099 2002 1 Teton +RVP 30101 2002 0 Toole +RVP 30103 2002 1 Treasure +RVP 30105 2002 0 Valley +RVP 30107 2002 0 Wheatland +RVP 30109 2002 0 Wibaux +RVP 30111 2002 9 Yellowstone +RVP 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_SBC.ALO new file mode 100644 index 0000000..0bcd543 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_SBC.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 30000 2002 527 MT +SBC 30001 2002 2 Beaverhead +SBC 30003 2002 0 Big Horn +SBC 30005 2002 0 Blaine +SBC 30007 2002 1 Broadwater +SBC 30009 2002 2 Carbon +SBC 30011 2002 0 Carter +SBC 30013 2002 103 Cascade +SBC 30015 2002 0 Chouteau +SBC 30017 2002 3 Custer +SBC 30019 2002 0 Daniels +SBC 30021 2002 0 Dawson +SBC 30023 2002 2 Deer Lodge +SBC 30025 2002 0 Fallon +SBC 30027 2002 3 Fergus +SBC 30029 2002 67 Flathead +SBC 30031 2002 72 Gallatin +SBC 30033 2002 0 Garfield Park +SBC 30035 2002 0 Glacier +SBC 30037 2002 0 Golden Valley +SBC 30039 2002 0 Granite +SBC 30041 2002 4 Hill +SBC 30043 2002 2 Jefferson +SBC 30045 2002 0 Judith Basin +SBC 30047 2002 6 Lake +SBC 30049 2002 14 Lewis & Clark +SBC 30051 2002 0 Liberty +SBC 30053 2002 4 Lincoln +SBC 30055 2002 0 McCone +SBC 30057 2002 0 Madison +SBC 30059 2002 0 Meagher +SBC 30061 2002 0 Mineral +SBC 30063 2002 43 Missoula +SBC 30065 2002 1 Musselshell +SBC 30067 2002 2 Park +SBC 30069 2002 0 Petroleum +SBC 30071 2002 0 Phillips +SBC 30073 2002 1 Pondera +SBC 30075 2002 0 Powder River +SBC 30077 2002 0 Powell +SBC 30079 2002 0 Prairie +SBC 30081 2002 60 Ravalli +SBC 30083 2002 2 Richland +SBC 30085 2002 2 Roosevelt +SBC 30087 2002 2 Rosebud +SBC 30089 2002 2 Sanders +SBC 30091 2002 0 Sheridan +SBC 30093 2002 8 Silver Bow +SBC 30095 2002 2 Stillwater +SBC 30097 2002 1 Sweet Grass +SBC 30099 2002 1 Teton +SBC 30101 2002 1 Toole +SBC 30103 2002 0 Treasure +SBC 30105 2002 0 Valley +SBC 30107 2002 0 Wheatland +SBC 30109 2002 0 Wibaux +SBC 30111 2002 114 Yellowstone +SBC 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_SBR.ALO new file mode 100644 index 0000000..6ddd5ca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_SBR.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 30000 2002 417106 MT +SBR 30001 2002 4568 Beaverhead +SBR 30003 2002 4661 Big Horn +SBR 30005 2002 2939 Blaine +SBR 30007 2002 2013 Broadwater +SBR 30009 2002 5493 Carbon +SBR 30011 2002 808 Carter +SBR 30013 2002 35415 Cascade +SBR 30015 2002 2761 Chouteau +SBR 30017 2002 5353 Custer +SBR 30019 2002 1145 Daniels +SBR 30021 2002 4153 Dawson +SBR 30023 2002 4931 Deer Lodge +SBR 30025 2002 1406 Fallon +SBR 30027 2002 5532 Fergus +SBR 30029 2002 35317 Flathead +SBR 30031 2002 30899 Gallatin +SBR 30033 2002 954 Garfield Park +SBR 30035 2002 5230 Glacier +SBR 30037 2002 446 Golden Valley +SBR 30039 2002 2056 Granite +SBR 30041 2002 7445 Hill +SBR 30043 2002 4187 Jefferson +SBR 30045 2002 1313 Judith Basin +SBR 30047 2002 13705 Lake +SBR 30049 2002 25785 Lewis & Clark +SBR 30051 2002 1063 Liberty +SBR 30053 2002 9359 Lincoln +SBR 30055 2002 1081 McCone +SBR 30057 2002 4636 Madison +SBR 30059 2002 1349 Meagher +SBR 30061 2002 1970 Mineral +SBR 30063 2002 42472 Missoula +SBR 30065 2002 2307 Musselshell +SBR 30067 2002 8252 Park +SBR 30069 2002 290 Petroleum +SBR 30071 2002 2484 Phillips +SBR 30073 2002 2822 Pondera +SBR 30075 2002 1005 Powder River +SBR 30077 2002 2918 Powell +SBR 30079 2002 712 Prairie +SBR 30081 2002 16062 Ravalli +SBR 30083 2002 4552 Richland +SBR 30085 2002 4030 Roosevelt +SBR 30087 2002 3929 Rosebud +SBR 30089 2002 5286 Sanders +SBR 30091 2002 2152 Sheridan +SBR 30093 2002 16150 Silver Bow +SBR 30095 2002 3984 Stillwater +SBR 30097 2002 1895 Sweet Grass +SBR 30099 2002 2903 Teton +SBR 30101 2002 2294 Toole +SBR 30103 2002 420 Treasure +SBR 30105 2002 4818 Valley +SBR 30107 2002 1142 Wheatland +SBR 30109 2002 584 Wibaux +SBR 30111 2002 55670 Yellowstone +SBR 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_SNOWM.ALO new file mode 100644 index 0000000..d2de4c4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_SNOWM.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 30000 2002 16364 MT +SNM 30001 2002 111 Beaverhead +SNM 30003 2002 78 Big Horn +SNM 30005 2002 147 Blaine +SNM 30007 2002 227 Broadwater +SNM 30009 2002 103 Carbon +SNM 30011 2002 736 Carter +SNM 30013 2002 13 Cascade +SNM 30015 2002 177 Chouteau +SNM 30017 2002 87 Custer +SNM 30019 2002 517 Daniels +SNM 30021 2002 114 Dawson +SNM 30023 2002 110 Deer Lodge +SNM 30025 2002 367 Fallon +SNM 30027 2002 86 Fergus +SNM 30029 2002 13 Flathead +SNM 30031 2002 14 Gallatin +SNM 30033 2002 803 Garfield Park +SNM 30035 2002 76 Glacier +SNM 30037 2002 938 Golden Valley +SNM 30039 2002 349 Granite +SNM 30041 2002 61 Hill +SNM 30043 2002 96 Jefferson +SNM 30045 2002 443 Judith Basin +SNM 30047 2002 37 Lake +SNM 30049 2002 18 Lewis & Clark +SNM 30051 2002 495 Liberty +SNM 30053 2002 53 Lincoln +SNM 30055 2002 543 McCone +SNM 30057 2002 143 Madison +SNM 30059 2002 516 Meagher +SNM 30061 2002 262 Mineral +SNM 30063 2002 10 Missoula +SNM 30065 2002 224 Musselshell +SNM 30067 2002 63 Park +SNM 30069 2002 2053 Petroleum +SNM 30071 2002 230 Phillips +SNM 30073 2002 160 Pondera +SNM 30075 2002 547 Powder River +SNM 30077 2002 142 Powell +SNM 30079 2002 842 Prairie +SNM 30081 2002 26 Ravalli +SNM 30083 2002 108 Richland +SNM 30085 2002 96 Roosevelt +SNM 30087 2002 108 Rosebud +SNM 30089 2002 96 Sanders +SNM 30091 2002 263 Sheridan +SNM 30093 2002 30 Silver Bow +SNM 30095 2002 118 Stillwater +SNM 30097 2002 276 Sweet Grass +SNM 30099 2002 158 Teton +SNM 30101 2002 190 Toole +SNM 30103 2002 1287 Treasure +SNM 30105 2002 135 Valley +SNM 30107 2002 461 Wheatland +SNM 30109 2002 1000 Wibaux +SNM 30111 2002 8 Yellowstone +SNM 30113 2002 0 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_WIB.ALO new file mode 100644 index 0000000..8697255 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_WIB.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 30000 1990 3859 MT +WIB 30001 1990 77 Beaverhead +WIB 30003 1990 51 Big Horn +WIB 30005 1990 33 Blaine +WIB 30007 1990 123 Broadwater +WIB 30009 1990 37 Carbon +WIB 30011 1990 23 Carter +WIB 30013 1990 36 Cascade +WIB 30015 1990 61 Chouteau +WIB 30017 1990 26 Custer +WIB 30019 1990 1 Daniels +WIB 30021 1990 26 Dawson +WIB 30023 1990 11 Deer Lodge +WIB 30025 1990 7 Fallon +WIB 30027 1990 29 Fergus +WIB 30029 1990 409 Flathead +WIB 30031 1990 67 Gallatin +WIB 30033 1990 465 Garfield Park +WIB 30035 1990 110 Glacier +WIB 30037 1990 3 Golden Valley +WIB 30039 1990 15 Granite +WIB 30041 1990 51 Hill +WIB 30043 1990 6 Jefferson +WIB 30045 1990 2 Judith Basin +WIB 30047 1990 414 Lake +WIB 30049 1990 95 Lewis & Clark +WIB 30051 1990 45 Liberty +WIB 30053 1990 162 Lincoln +WIB 30055 1990 104 McCone +WIB 30057 1990 42 Madison +WIB 30059 1990 8 Meagher +WIB 30061 1990 9 Mineral +WIB 30063 1990 52 Missoula +WIB 30065 1990 10 Musselshell +WIB 30067 1990 27 Park +WIB 30069 1990 52 Petroleum +WIB 30071 1990 187 Phillips +WIB 30073 1990 39 Pondera +WIB 30075 1990 2 Powder River +WIB 30077 1990 17 Powell +WIB 30079 1990 16 Prairie +WIB 30081 1990 16 Ravalli +WIB 30083 1990 49 Richland +WIB 30085 1990 36 Roosevelt +WIB 30087 1990 38 Rosebud +WIB 30089 1990 72 Sanders +WIB 30091 1990 77 Sheridan +WIB 30093 1990 2 Silver Bow +WIB 30095 1990 26 Stillwater +WIB 30097 1990 18 Sweet Grass +WIB 30099 1990 52 Teton +WIB 30101 1990 90 Toole +WIB 30103 1990 14 Treasure +WIB 30105 1990 366 Valley +WIB 30107 1990 13 Wheatland +WIB 30109 1990 2 Wibaux +WIB 30111 1990 36 Yellowstone +WIB 30113 1990 2 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/MT_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/MT_WOB.ALO new file mode 100644 index 0000000..339f5e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/MT_WOB.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 30000 1990 3859 MT +WOB 30001 1990 77 Beaverhead +WOB 30003 1990 51 Big Horn +WOB 30005 1990 33 Blaine +WOB 30007 1990 123 Broadwater +WOB 30009 1990 37 Carbon +WOB 30011 1990 23 Carter +WOB 30013 1990 36 Cascade +WOB 30015 1990 61 Chouteau +WOB 30017 1990 26 Custer +WOB 30019 1990 1 Daniels +WOB 30021 1990 26 Dawson +WOB 30023 1990 11 Deer Lodge +WOB 30025 1990 7 Fallon +WOB 30027 1990 29 Fergus +WOB 30029 1990 409 Flathead +WOB 30031 1990 67 Gallatin +WOB 30033 1990 465 Garfield Park +WOB 30035 1990 110 Glacier +WOB 30037 1990 3 Golden Valley +WOB 30039 1990 15 Granite +WOB 30041 1990 51 Hill +WOB 30043 1990 6 Jefferson +WOB 30045 1990 2 Judith Basin +WOB 30047 1990 414 Lake +WOB 30049 1990 95 Lewis & Clark +WOB 30051 1990 45 Liberty +WOB 30053 1990 162 Lincoln +WOB 30055 1990 104 McCone +WOB 30057 1990 42 Madison +WOB 30059 1990 8 Meagher +WOB 30061 1990 9 Mineral +WOB 30063 1990 52 Missoula +WOB 30065 1990 10 Musselshell +WOB 30067 1990 27 Park +WOB 30069 1990 52 Petroleum +WOB 30071 1990 187 Phillips +WOB 30073 1990 39 Pondera +WOB 30075 1990 2 Powder River +WOB 30077 1990 17 Powell +WOB 30079 1990 16 Prairie +WOB 30081 1990 16 Ravalli +WOB 30083 1990 49 Richland +WOB 30085 1990 36 Roosevelt +WOB 30087 1990 38 Rosebud +WOB 30089 1990 72 Sanders +WOB 30091 1990 77 Sheridan +WOB 30093 1990 2 Silver Bow +WOB 30095 1990 26 Stillwater +WOB 30097 1990 18 Sweet Grass +WOB 30099 1990 52 Teton +WOB 30101 1990 90 Toole +WOB 30103 1990 14 Treasure +WOB 30105 1990 366 Valley +WOB 30107 1990 13 Wheatland +WOB 30109 1990 2 Wibaux +WOB 30111 1990 36 Yellowstone +WOB 30113 1990 2 Yellowstone National Park +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_AIRTR.ALO new file mode 100644 index 0000000..0ac866d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_AIRTR.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 37000 2002 2413.449 NC +AIR 37001 2002 0.180 Alamance +AIR 37003 2002 0.000 Alexander +AIR 37005 2002 0.000 Alleghany +AIR 37007 2002 0.000 Anson +AIR 37009 2002 0.000 Ashe +AIR 37011 2002 0.000 Avery +AIR 37013 2002 0.170 Beaufort +AIR 37015 2002 0.000 Bertie +AIR 37017 2002 0.090 Bladen +AIR 37019 2002 0.170 Brunswick +AIR 37021 2002 25.330 Buncombe +AIR 37023 2002 0.430 Burke +AIR 37025 2002 0.000 Cabarrus +AIR 37027 2002 0.100 Caldwell +AIR 37029 2002 0.000 Camden +AIR 37031 2002 0.140 Carteret +AIR 37033 2002 0.000 Caswell +AIR 37035 2002 0.000 Catawba +AIR 37037 2002 0.180 Chatham +AIR 37039 2002 0.000 Cherokee +AIR 37041 2002 0.079 Chowan +AIR 37043 2002 0.000 Clay +AIR 37045 2002 0.099 Cleveland +AIR 37047 2002 0.110 Columbus +AIR 37049 2002 0.750 Craven +AIR 37051 2002 22.860 Cumberland +AIR 37053 2002 0.000 Currituck +AIR 37055 2002 0.340 Dare +AIR 37057 2002 0.050 Davidson +AIR 37059 2002 0.000 Davie +AIR 37061 2002 0.140 Duplin +AIR 37063 2002 0.000 Durham +AIR 37065 2002 0.050 Edgecombe +AIR 37067 2002 0.775 Forsyth +AIR 37069 2002 0.000 Franklin +AIR 37071 2002 0.000 Gaston +AIR 37073 2002 0.000 Gates +AIR 37075 2002 0.000 Graham +AIR 37077 2002 0.114 Granville +AIR 37079 2002 0.000 Greene +AIR 37081 2002 188.140 Guilford +AIR 37083 2002 0.260 Halifax +AIR 37085 2002 0.000 Harnett +AIR 37087 2002 0.000 Haywood +AIR 37089 2002 0.000 Henderson +AIR 37091 2002 0.109 Hertford +AIR 37093 2002 0.109 Hoke +AIR 37095 2002 0.024 Hyde +AIR 37097 2002 0.159 Iredell +AIR 37099 2002 0.000 Jackson +AIR 37101 2002 0.240 Johnston +AIR 37103 2002 0.000 Jones +AIR 37105 2002 0.000 Lee +AIR 37107 2002 1.090 Lenoir +AIR 37109 2002 0.000 Lincoln +AIR 37111 2002 0.000 McDowell +AIR 37113 2002 0.000 Macon +AIR 37115 2002 0.000 Madison +AIR 37117 2002 0.070 Martin +AIR 37119 2002 1334.550 Mecklenburg +AIR 37121 2002 0.000 Mitchell +AIR 37123 2002 0.000 Montgomery +AIR 37125 2002 0.400 Moore +AIR 37127 2002 19.940 Nash +AIR 37129 2002 22.890 New Hanover +AIR 37131 2002 0.000 Northampton +AIR 37133 2002 1.450 Onslow +AIR 37135 2002 0.000 Orange +AIR 37137 2002 0.000 Pamlico +AIR 37139 2002 1.900 Pasquotank +AIR 37141 2002 0.067 Pender +AIR 37143 2002 0.000 Perquimans +AIR 37145 2002 0.000 Person +AIR 37147 2002 57.010 Pitt +AIR 37149 2002 0.000 Polk +AIR 37151 2002 0.000 Randolph +AIR 37153 2002 0.053 Richmond +AIR 37155 2002 0.300 Robeson +AIR 37157 2002 0.000 Rockingham +AIR 37159 2002 0.000 Rowan +AIR 37161 2002 0.000 Rutherford +AIR 37163 2002 0.120 Sampson +AIR 37165 2002 0.430 Scotland +AIR 37167 2002 0.000 Stanly +AIR 37169 2002 0.000 Stokes +AIR 37171 2002 0.150 Surry +AIR 37173 2002 0.000 Swain +AIR 37175 2002 0.000 Transylvania +AIR 37177 2002 0.000 Tyrrell +AIR 37179 2002 0.350 Union +AIR 37181 2002 0.000 Vance +AIR 37183 2002 731.130 Wake +AIR 37185 2002 0.000 Warren +AIR 37187 2002 0.033 Washington +AIR 37189 2002 0.000 Watauga +AIR 37191 2002 0.170 Wayne +AIR 37193 2002 0.150 Wilkes +AIR 37195 2002 0.000 Wilson +AIR 37197 2002 0.000 Yadkin +AIR 37199 2002 0.000 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_COAL.ALO new file mode 100644 index 0000000..6581dab --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_COAL.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 37000 2002 0 NC +MIN 37001 2002 0 Alamance +MIN 37003 2002 0 Alexander +MIN 37005 2002 0 Alleghany +MIN 37007 2002 0 Anson +MIN 37009 2002 0 Ashe +MIN 37011 2002 0 Avery +MIN 37013 2002 0 Beaufort +MIN 37015 2002 0 Bertie +MIN 37017 2002 0 Bladen +MIN 37019 2002 0 Brunswick +MIN 37021 2002 0 Buncombe +MIN 37023 2002 0 Burke +MIN 37025 2002 0 Cabarrus +MIN 37027 2002 0 Caldwell +MIN 37029 2002 0 Camden +MIN 37031 2002 0 Carteret +MIN 37033 2002 0 Caswell +MIN 37035 2002 0 Catawba +MIN 37037 2002 0 Chatham +MIN 37039 2002 0 Cherokee +MIN 37041 2002 0 Chowan +MIN 37043 2002 0 Clay +MIN 37045 2002 0 Cleveland +MIN 37047 2002 0 Columbus +MIN 37049 2002 0 Craven +MIN 37051 2002 0 Cumberland +MIN 37053 2002 0 Currituck +MIN 37055 2002 0 Dare +MIN 37057 2002 0 Davidson +MIN 37059 2002 0 Davie +MIN 37061 2002 0 Duplin +MIN 37063 2002 0 Durham +MIN 37065 2002 0 Edgecombe +MIN 37067 2002 0 Forsyth +MIN 37069 2002 0 Franklin +MIN 37071 2002 0 Gaston +MIN 37073 2002 0 Gates +MIN 37075 2002 0 Graham +MIN 37077 2002 0 Granville +MIN 37079 2002 0 Greene +MIN 37081 2002 0 Guilford +MIN 37083 2002 0 Halifax +MIN 37085 2002 0 Harnett +MIN 37087 2002 0 Haywood +MIN 37089 2002 0 Henderson +MIN 37091 2002 0 Hertford +MIN 37093 2002 0 Hoke +MIN 37095 2002 0 Hyde +MIN 37097 2002 0 Iredell +MIN 37099 2002 0 Jackson +MIN 37101 2002 0 Johnston +MIN 37103 2002 0 Jones +MIN 37105 2002 0 Lee +MIN 37107 2002 0 Lenoir +MIN 37109 2002 0 Lincoln +MIN 37111 2002 0 McDowell +MIN 37113 2002 0 Macon +MIN 37115 2002 0 Madison +MIN 37117 2002 0 Martin +MIN 37119 2002 0 Mecklenburg +MIN 37121 2002 0 Mitchell +MIN 37123 2002 0 Montgomery +MIN 37125 2002 0 Moore +MIN 37127 2002 0 Nash +MIN 37129 2002 0 New Hanover +MIN 37131 2002 0 Northampton +MIN 37133 2002 0 Onslow +MIN 37135 2002 0 Orange +MIN 37137 2002 0 Pamlico +MIN 37139 2002 0 Pasquotank +MIN 37141 2002 0 Pender +MIN 37143 2002 0 Perquimans +MIN 37145 2002 0 Person +MIN 37147 2002 0 Pitt +MIN 37149 2002 0 Polk +MIN 37151 2002 0 Randolph +MIN 37153 2002 0 Richmond +MIN 37155 2002 0 Robeson +MIN 37157 2002 0 Rockingham +MIN 37159 2002 0 Rowan +MIN 37161 2002 0 Rutherford +MIN 37163 2002 0 Sampson +MIN 37165 2002 0 Scotland +MIN 37167 2002 0 Stanly +MIN 37169 2002 0 Stokes +MIN 37171 2002 0 Surry +MIN 37173 2002 0 Swain +MIN 37175 2002 0 Transylvania +MIN 37177 2002 0 Tyrrell +MIN 37179 2002 0 Union +MIN 37181 2002 0 Vance +MIN 37183 2002 0 Wake +MIN 37185 2002 0 Warren +MIN 37187 2002 0 Washington +MIN 37189 2002 0 Watauga +MIN 37191 2002 0 Wayne +MIN 37193 2002 0 Wilkes +MIN 37195 2002 0 Wilson +MIN 37197 2002 0 Yadkin +MIN 37199 2002 0 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_CONST.ALO new file mode 100644 index 0000000..274ac26 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_CONST.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 37000 2003 19174805 NC +CON 37001 2003 197017 Alamance +CON 37003 2003 39778 Alexander +CON 37005 2003 18778 Alleghany +CON 37007 2003 10909 Anson +CON 37009 2003 49831 Ashe +CON 37011 2003 60710 Avery +CON 37013 2003 64428 Beaufort +CON 37015 2003 11904 Bertie +CON 37017 2003 15942 Bladen +CON 37019 2003 351355 Brunswick +CON 37021 2003 430522 Buncombe +CON 37023 2003 57164 Burke +CON 37025 2003 375049 Cabarrus +CON 37027 2003 80122 Caldwell +CON 37029 2003 30964 Camden +CON 37031 2003 158323 Carteret +CON 37033 2003 15745 Caswell +CON 37035 2003 211006 Catawba +CON 37037 2003 198498 Chatham +CON 37039 2003 58670 Cherokee +CON 37041 2003 10019 Chowan +CON 37043 2003 29906 Clay +CON 37045 2003 115119 Cleveland +CON 37047 2003 27318 Columbus +CON 37049 2003 125567 Craven +CON 37051 2003 382192 Cumberland +CON 37053 2003 212043 Currituck +CON 37055 2003 248172 Dare +CON 37057 2003 143721 Davidson +CON 37059 2003 63706 Davie +CON 37061 2003 31045 Duplin +CON 37063 2003 961454 Durham +CON 37065 2003 31639 Edgecombe +CON 37067 2003 558519 Forsyth +CON 37069 2003 62895 Franklin +CON 37071 2003 273382 Gaston +CON 37073 2003 5274 Gates +CON 37075 2003 9088 Graham +CON 37077 2003 194359 Granville +CON 37079 2003 14476 Greene +CON 37081 2003 1270828 Guilford +CON 37083 2003 27023 Halifax +CON 37085 2003 94022 Harnett +CON 37087 2003 123111 Haywood +CON 37089 2003 198182 Henderson +CON 37091 2003 14472 Hertford +CON 37093 2003 53273 Hoke +CON 37095 2003 4124 Hyde +CON 37097 2003 356967 Iredell +CON 37099 2003 147648 Jackson +CON 37101 2003 300441 Johnston +CON 37103 2003 3954 Jones +CON 37105 2003 147379 Lee +CON 37107 2003 31813 Lenoir +CON 37109 2003 100626 Lincoln +CON 37111 2003 39852 McDowell +CON 37113 2003 90665 Macon +CON 37115 2003 22000 Madison +CON 37117 2003 7808 Martin +CON 37119 2003 3184534 Mecklenburg +CON 37121 2003 11619 Mitchell +CON 37123 2003 39362 Montgomery +CON 37125 2003 163322 Moore +CON 37127 2003 97594 Nash +CON 37129 2003 638164 New Hanover +CON 37131 2003 10731 Northampton +CON 37133 2003 202473 Onslow +CON 37135 2003 417039 Orange +CON 37137 2003 22004 Pamlico +CON 37139 2003 72398 Pasquotank +CON 37141 2003 76483 Pender +CON 37143 2003 13993 Perquimans +CON 37145 2003 56408 Person +CON 37147 2003 261398 Pitt +CON 37149 2003 29564 Polk +CON 37151 2003 126040 Randolph +CON 37153 2003 77555 Richmond +CON 37155 2003 77510 Robeson +CON 37157 2003 74950 Rockingham +CON 37159 2003 117121 Rowan +CON 37161 2003 62696 Rutherford +CON 37163 2003 39711 Sampson +CON 37165 2003 14182 Scotland +CON 37167 2003 61894 Stanly +CON 37169 2003 50344 Stokes +CON 37171 2003 77393 Surry +CON 37173 2003 50613 Swain +CON 37175 2003 84751 Transylvania +CON 37177 2003 3704 Tyrrell +CON 37179 2003 667125 Union +CON 37181 2003 63556 Vance +CON 37183 2003 2656798 Wake +CON 37185 2003 21027 Warren +CON 37187 2003 13590 Washington +CON 37189 2003 218563 Watauga +CON 37191 2003 129744 Wayne +CON 37193 2003 51640 Wilkes +CON 37195 2003 121432 Wilson +CON 37197 2003 36745 Yadkin +CON 37199 2003 8240 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_FARMS.ALO new file mode 100644 index 0000000..0ea699f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_FARMS.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 37000 2002 4308209 NC +FRM 37001 2002 23423 Alamance +FRM 37003 2002 17436 Alexander +FRM 37005 2002 17329 Alleghany +FRM 37007 2002 22284 Anson +FRM 37009 2002 21239 Ashe +FRM 37011 2002 9963 Avery +FRM 37013 2002 149903 Beaufort +FRM 37015 2002 85948 Bertie +FRM 37017 2002 64953 Bladen +FRM 37019 2002 20344 Brunswick +FRM 37021 2002 17522 Buncombe +FRM 37023 2002 11181 Burke +FRM 37025 2002 26943 Cabarrus +FRM 37027 2002 8721 Caldwell +FRM 37029 2002 54966 Camden +FRM 37031 2002 44785 Carteret +FRM 37033 2002 16429 Caswell +FRM 37035 2002 26949 Catawba +FRM 37037 2002 24590 Chatham +FRM 37039 2002 5082 Cherokee +FRM 37041 2002 44295 Chowan +FRM 37043 2002 3005 Clay +FRM 37045 2002 32424 Cleveland +FRM 37047 2002 95577 Columbus +FRM 37049 2002 54788 Craven +FRM 37051 2002 43353 Cumberland +FRM 37053 2002 28776 Currituck +FRM 37055 2002 2094 Dare +FRM 37057 2002 38311 Davidson +FRM 37059 2002 27732 Davie +FRM 37061 2002 141353 Duplin +FRM 37063 2002 4510 Durham +FRM 37065 2002 96283 Edgecombe +FRM 37067 2002 18493 Forsyth +FRM 37069 2002 33700 Franklin +FRM 37071 2002 13303 Gaston +FRM 37073 2002 49234 Gates +FRM 37075 2002 1164 Graham +FRM 37077 2002 21026 Granville +FRM 37079 2002 69838 Greene +FRM 37081 2002 34056 Guilford +FRM 37083 2002 103929 Halifax +FRM 37085 2002 53128 Harnett +FRM 37087 2002 11083 Haywood +FRM 37089 2002 22440 Henderson +FRM 37091 2002 51868 Hertford +FRM 37093 2002 36947 Hoke +FRM 37095 2002 88199 Hyde +FRM 37097 2002 55846 Iredell +FRM 37099 2002 3808 Jackson +FRM 37101 2002 110141 Johnston +FRM 37103 2002 49599 Jones +FRM 37105 2002 14269 Lee +FRM 37107 2002 86471 Lenoir +FRM 37109 2002 23202 Lincoln +FRM 37111 2002 5589 McDowell +FRM 37113 2002 5392 Macon +FRM 37115 2002 9879 Madison +FRM 37117 2002 66661 Martin +FRM 37119 2002 6733 Mecklenburg +FRM 37121 2002 4941 Mitchell +FRM 37123 2002 7189 Montgomery +FRM 37125 2002 17924 Moore +FRM 37127 2002 86031 Nash +FRM 37129 2002 1676 New Hanover +FRM 37131 2002 86507 Northampton +FRM 37133 2002 39270 Onslow +FRM 37135 2002 19405 Orange +FRM 37137 2002 44535 Pamlico +FRM 37139 2002 93332 Pasquotank +FRM 37141 2002 33369 Pender +FRM 37143 2002 85634 Perquimans +FRM 37145 2002 24380 Person +FRM 37147 2002 124246 Pitt +FRM 37149 2002 4433 Polk +FRM 37151 2002 44149 Randolph +FRM 37153 2002 12734 Richmond +FRM 37155 2002 208305 Robeson +FRM 37157 2002 27518 Rockingham +FRM 37159 2002 49001 Rowan +FRM 37161 2002 15238 Rutherford +FRM 37163 2002 168912 Sampson +FRM 37165 2002 32627 Scotland +FRM 37167 2002 53903 Stanly +FRM 37169 2002 20870 Stokes +FRM 37171 2002 39888 Surry +FRM 37173 2002 1508 Swain +FRM 37175 2002 6310 Transylvania +FRM 37177 2002 68406 Tyrrell +FRM 37179 2002 110332 Union +FRM 37181 2002 13844 Vance +FRM 37183 2002 27305 Wake +FRM 37185 2002 14390 Warren +FRM 37187 2002 98306 Washington +FRM 37189 2002 8822 Watauga +FRM 37191 2002 118284 Wayne +FRM 37193 2002 30598 Wilkes +FRM 37195 2002 80632 Wilson +FRM 37197 2002 49570 Yadkin +FRM 37199 2002 5396 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_GOLF.ALO new file mode 100644 index 0000000..4eef4a4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_GOLF.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 37000 2002 456 NC +GC 37001 2002 9 Alamance +GC 37003 2002 1 Alexander +GC 37005 2002 4 Alleghany +GC 37007 2002 1 Anson +GC 37009 2002 1 Ashe +GC 37011 2002 4 Avery +GC 37013 2002 3 Beaufort +GC 37015 2002 0 Bertie +GC 37017 2002 1 Bladen +GC 37019 2002 22 Brunswick +GC 37021 2002 6 Buncombe +GC 37023 2002 3 Burke +GC 37025 2002 2 Cabarrus +GC 37027 2002 5 Caldwell +GC 37029 2002 0 Camden +GC 37031 2002 3 Carteret +GC 37033 2002 1 Caswell +GC 37035 2002 8 Catawba +GC 37037 2002 1 Chatham +GC 37039 2002 0 Cherokee +GC 37041 2002 2 Chowan +GC 37043 2002 0 Clay +GC 37045 2002 8 Cleveland +GC 37047 2002 4 Columbus +GC 37049 2002 7 Craven +GC 37051 2002 6 Cumberland +GC 37053 2002 6 Currituck +GC 37055 2002 6 Dare +GC 37057 2002 4 Davidson +GC 37059 2002 4 Davie +GC 37061 2002 3 Duplin +GC 37063 2002 9 Durham +GC 37065 2002 4 Edgecombe +GC 37067 2002 15 Forsyth +GC 37069 2002 2 Franklin +GC 37071 2002 10 Gaston +GC 37073 2002 0 Gates +GC 37075 2002 0 Graham +GC 37077 2002 2 Granville +GC 37079 2002 0 Greene +GC 37081 2002 21 Guilford +GC 37083 2002 3 Halifax +GC 37085 2002 3 Harnett +GC 37087 2002 2 Haywood +GC 37089 2002 10 Henderson +GC 37091 2002 2 Hertford +GC 37093 2002 1 Hoke +GC 37095 2002 0 Hyde +GC 37097 2002 7 Iredell +GC 37099 2002 4 Jackson +GC 37101 2002 5 Johnston +GC 37103 2002 1 Jones +GC 37105 2002 4 Lee +GC 37107 2002 2 Lenoir +GC 37109 2002 3 Lincoln +GC 37111 2002 4 McDowell +GC 37113 2002 7 Macon +GC 37115 2002 1 Madison +GC 37117 2002 2 Martin +GC 37119 2002 28 Mecklenburg +GC 37121 2002 1 Mitchell +GC 37123 2002 2 Montgomery +GC 37125 2002 21 Moore +GC 37127 2002 5 Nash +GC 37129 2002 9 New Hanover +GC 37131 2002 1 Northampton +GC 37133 2002 5 Onslow +GC 37135 2002 5 Orange +GC 37137 2002 1 Pamlico +GC 37139 2002 1 Pasquotank +GC 37141 2002 4 Pender +GC 37143 2002 0 Perquimans +GC 37145 2002 1 Person +GC 37147 2002 5 Pitt +GC 37149 2002 1 Polk +GC 37151 2002 7 Randolph +GC 37153 2002 1 Richmond +GC 37155 2002 7 Robeson +GC 37157 2002 9 Rockingham +GC 37159 2002 9 Rowan +GC 37161 2002 4 Rutherford +GC 37163 2002 3 Sampson +GC 37165 2002 3 Scotland +GC 37167 2002 2 Stanly +GC 37169 2002 2 Stokes +GC 37171 2002 9 Surry +GC 37173 2002 1 Swain +GC 37175 2002 3 Transylvania +GC 37177 2002 0 Tyrrell +GC 37179 2002 5 Union +GC 37181 2002 1 Vance +GC 37183 2002 27 Wake +GC 37185 2002 1 Warren +GC 37187 2002 2 Washington +GC 37189 2002 3 Watauga +GC 37191 2002 6 Wayne +GC 37193 2002 4 Wilkes +GC 37195 2002 3 Wilson +GC 37197 2002 3 Yadkin +GC 37199 2002 2 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_HOLSL.ALO new file mode 100644 index 0000000..c8444c0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_HOLSL.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 37000 2002 12070 NC +COM 37001 2002 172 Alamance +COM 37003 2002 20 Alexander +COM 37005 2002 6 Alleghany +COM 37007 2002 16 Anson +COM 37009 2002 24 Ashe +COM 37011 2002 17 Avery +COM 37013 2002 74 Beaufort +COM 37015 2002 17 Bertie +COM 37017 2002 24 Bladen +COM 37019 2002 54 Brunswick +COM 37021 2002 335 Buncombe +COM 37023 2002 70 Burke +COM 37025 2002 185 Cabarrus +COM 37027 2002 86 Caldwell +COM 37029 2002 7 Camden +COM 37031 2002 66 Carteret +COM 37033 2002 3 Caswell +COM 37035 2002 299 Catawba +COM 37037 2002 54 Chatham +COM 37039 2002 21 Cherokee +COM 37041 2002 16 Chowan +COM 37043 2002 5 Clay +COM 37045 2002 123 Cleveland +COM 37047 2002 52 Columbus +COM 37049 2002 68 Craven +COM 37051 2002 201 Cumberland +COM 37053 2002 18 Currituck +COM 37055 2002 50 Dare +COM 37057 2002 177 Davidson +COM 37059 2002 38 Davie +COM 37061 2002 44 Duplin +COM 37063 2002 208 Durham +COM 37065 2002 51 Edgecombe +COM 37067 2002 512 Forsyth +COM 37069 2002 38 Franklin +COM 37071 2002 214 Gaston +COM 37073 2002 9 Gates +COM 37075 2002 1 Graham +COM 37077 2002 30 Granville +COM 37079 2002 11 Greene +COM 37081 2002 1323 Guilford +COM 37083 2002 32 Halifax +COM 37085 2002 57 Harnett +COM 37087 2002 49 Haywood +COM 37089 2002 103 Henderson +COM 37091 2002 28 Hertford +COM 37093 2002 8 Hoke +COM 37095 2002 7 Hyde +COM 37097 2002 240 Iredell +COM 37099 2002 12 Jackson +COM 37101 2002 116 Johnston +COM 37103 2002 4 Jones +COM 37105 2002 71 Lee +COM 37107 2002 69 Lenoir +COM 37109 2002 73 Lincoln +COM 37111 2002 37 McDowell +COM 37113 2002 31 Macon +COM 37115 2002 15 Madison +COM 37117 2002 30 Martin +COM 37119 2002 2464 Mecklenburg +COM 37121 2002 16 Mitchell +COM 37123 2002 29 Montgomery +COM 37125 2002 80 Moore +COM 37127 2002 126 Nash +COM 37129 2002 330 New Hanover +COM 37131 2002 20 Northampton +COM 37133 2002 66 Onslow +COM 37135 2002 86 Orange +COM 37137 2002 9 Pamlico +COM 37139 2002 49 Pasquotank +COM 37141 2002 37 Pender +COM 37143 2002 10 Perquimans +COM 37145 2002 32 Person +COM 37147 2002 159 Pitt +COM 37149 2002 15 Polk +COM 37151 2002 173 Randolph +COM 37153 2002 41 Richmond +COM 37155 2002 72 Robeson +COM 37157 2002 68 Rockingham +COM 37159 2002 124 Rowan +COM 37161 2002 53 Rutherford +COM 37163 2002 49 Sampson +COM 37165 2002 26 Scotland +COM 37167 2002 68 Stanly +COM 37169 2002 20 Stokes +COM 37171 2002 86 Surry +COM 37173 2002 12 Swain +COM 37175 2002 16 Transylvania +COM 37177 2002 5 Tyrrell +COM 37179 2002 268 Union +COM 37181 2002 29 Vance +COM 37183 2002 1282 Wake +COM 37185 2002 8 Warren +COM 37187 2002 13 Washington +COM 37189 2002 46 Watauga +COM 37191 2002 140 Wayne +COM 37193 2002 64 Wilkes +COM 37195 2002 117 Wilson +COM 37197 2002 35 Yadkin +COM 37199 2002 6 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_HOUSE.ALO new file mode 100644 index 0000000..60c10d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_HOUSE.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 37000 2002 3707633 NC +HOU 37001 2002 57579 Alamance +HOU 37003 2002 14614 Alexander +HOU 37005 2002 6657 Alleghany +HOU 37007 2002 10352 Anson +HOU 37009 2002 13822 Ashe +HOU 37011 2002 12204 Avery +HOU 37013 2002 22658 Beaufort +HOU 37015 2002 9189 Bertie +HOU 37017 2002 15602 Bladen +HOU 37019 2002 55566 Brunswick +HOU 37021 2002 97813 Buncombe +HOU 37023 2002 38394 Burke +HOU 37025 2002 56918 Cabarrus +HOU 37027 2002 34516 Caldwell +HOU 37029 2002 3124 Camden +HOU 37031 2002 42091 Carteret +HOU 37033 2002 9899 Caswell +HOU 37035 2002 63145 Catawba +HOU 37037 2002 22431 Chatham +HOU 37039 2002 14099 Cherokee +HOU 37041 2002 6539 Chowan +HOU 37043 2002 5732 Clay +HOU 37045 2002 41353 Cleveland +HOU 37047 2002 24525 Columbus +HOU 37049 2002 39491 Craven +HOU 37051 2002 121996 Cumberland +HOU 37053 2002 11479 Currituck +HOU 37055 2002 28506 Dare +HOU 37057 2002 64726 Davidson +HOU 37059 2002 15754 Davie +HOU 37061 2002 21028 Duplin +HOU 37063 2002 102369 Durham +HOU 37065 2002 24664 Edgecombe +HOU 37067 2002 138573 Forsyth +HOU 37069 2002 21531 Franklin +HOU 37071 2002 81405 Gaston +HOU 37073 2002 4458 Gates +HOU 37075 2002 5245 Graham +HOU 37077 2002 19068 Granville +HOU 37079 2002 7538 Greene +HOU 37081 2002 189272 Guilford +HOU 37083 2002 25654 Halifax +HOU 37085 2002 40483 Harnett +HOU 37087 2002 29563 Haywood +HOU 37089 2002 44943 Henderson +HOU 37091 2002 9851 Hertford +HOU 37093 2002 13260 Hoke +HOU 37095 2002 3328 Hyde +HOU 37097 2002 56002 Iredell +HOU 37099 2002 20602 Jackson +HOU 37101 2002 54129 Johnston +HOU 37103 2002 4766 Jones +HOU 37105 2002 20598 Lee +HOU 37107 2002 27795 Lenoir +HOU 37109 2002 27686 Lincoln +HOU 37111 2002 18829 McDowell +HOU 37113 2002 21391 Macon +HOU 37115 2002 10060 Madison +HOU 37117 2002 11067 Martin +HOU 37119 2002 323760 Mecklenburg +HOU 37121 2002 8069 Mitchell +HOU 37123 2002 14444 Montgomery +HOU 37125 2002 36641 Moore +HOU 37127 2002 38420 Nash +HOU 37129 2002 83985 New Hanover +HOU 37131 2002 10652 Northampton +HOU 37133 2002 58407 Onslow +HOU 37135 2002 50399 Orange +HOU 37137 2002 6937 Pamlico +HOU 37139 2002 14588 Pasquotank +HOU 37141 2002 21713 Pender +HOU 37143 2002 6197 Perquimans +HOU 37145 2002 15986 Person +HOU 37147 2002 62579 Pitt +HOU 37149 2002 9539 Polk +HOU 37151 2002 56707 Randolph +HOU 37153 2002 20604 Richmond +HOU 37155 2002 49199 Robeson +HOU 37157 2002 41129 Rockingham +HOU 37159 2002 55872 Rowan +HOU 37161 2002 30287 Rutherford +HOU 37163 2002 25712 Sampson +HOU 37165 2002 15085 Scotland +HOU 37167 2002 25285 Stanly +HOU 37169 2002 19787 Stokes +HOU 37171 2002 31728 Surry +HOU 37173 2002 7412 Swain +HOU 37175 2002 16075 Transylvania +HOU 37177 2002 2059 Tyrrell +HOU 37179 2002 51180 Union +HOU 37181 2002 18618 Vance +HOU 37183 2002 284737 Wake +HOU 37185 2002 10816 Warren +HOU 37187 2002 6235 Washington +HOU 37189 2002 24095 Watauga +HOU 37191 2002 48606 Wayne +HOU 37193 2002 29965 Wilkes +HOU 37195 2002 32020 Wilson +HOU 37197 2002 16257 Yadkin +HOU 37199 2002 9915 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_LOGGN.ALO new file mode 100644 index 0000000..c4593df --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_LOGGN.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 37000 2002 1092905817 NC +LOG 37001 2002 7343036 Alamance +LOG 37003 2002 3475765 Alexander +LOG 37005 2002 5746459 Alleghany +LOG 37007 2002 19096792 Anson +LOG 37009 2002 8323618 Ashe +LOG 37011 2002 3046509 Avery +LOG 37013 2002 41213865 Beaufort +LOG 37015 2002 25689294 Bertie +LOG 37017 2002 23078633 Bladen +LOG 37019 2002 18763583 Brunswick +LOG 37021 2002 3558410 Buncombe +LOG 37023 2002 7752063 Burke +LOG 37025 2002 3313354 Cabarrus +LOG 37027 2002 7680487 Caldwell +LOG 37029 2002 4251260 Camden +LOG 37031 2002 8737036 Carteret +LOG 37033 2002 11280146 Caswell +LOG 37035 2002 3563375 Catawba +LOG 37037 2002 23299228 Chatham +LOG 37039 2002 2310494 Cherokee +LOG 37041 2002 3739358 Chowan +LOG 37043 2002 1042517 Clay +LOG 37045 2002 5908420 Cleveland +LOG 37047 2002 45690663 Columbus +LOG 37049 2002 20323069 Craven +LOG 37051 2002 18138108 Cumberland +LOG 37053 2002 1601850 Currituck +LOG 37055 2002 232200 Dare +LOG 37057 2002 9270468 Davidson +LOG 37059 2002 2799682 Davie +LOG 37061 2002 17747170 Duplin +LOG 37063 2002 3427200 Durham +LOG 37065 2002 9081046 Edgecombe +LOG 37067 2002 4516565 Forsyth +LOG 37069 2002 13380999 Franklin +LOG 37071 2002 1845810 Gaston +LOG 37073 2002 11555233 Gates +LOG 37075 2002 1346453 Graham +LOG 37077 2002 13877014 Granville +LOG 37079 2002 18379877 Greene +LOG 37081 2002 7784371 Guilford +LOG 37083 2002 24789286 Halifax +LOG 37085 2002 11041993 Harnett +LOG 37087 2002 5616367 Haywood +LOG 37089 2002 5062721 Henderson +LOG 37091 2002 20631786 Hertford +LOG 37093 2002 6955733 Hoke +LOG 37095 2002 6269173 Hyde +LOG 37097 2002 6908426 Iredell +LOG 37099 2002 3781422 Jackson +LOG 37101 2002 19155077 Johnston +LOG 37103 2002 11524140 Jones +LOG 37105 2002 12229568 Lee +LOG 37107 2002 6334501 Lenoir +LOG 37109 2002 2702303 Lincoln +LOG 37111 2002 6414685 McDowell +LOG 37113 2002 2762775 Macon +LOG 37115 2002 5476698 Madison +LOG 37117 2002 16017859 Martin +LOG 37119 2002 3428147 Mecklenburg +LOG 37121 2002 5022277 Mitchell +LOG 37123 2002 21711173 Montgomery +LOG 37125 2002 21845921 Moore +LOG 37127 2002 14037684 Nash +LOG 37129 2002 1772120 New Hanover +LOG 37131 2002 23112374 Northampton +LOG 37133 2002 14139441 Onslow +LOG 37135 2002 6841563 Orange +LOG 37137 2002 14375922 Pamlico +LOG 37139 2002 6854120 Pasquotank +LOG 37141 2002 25883188 Pender +LOG 37143 2002 5435402 Perquimans +LOG 37145 2002 10037572 Person +LOG 37147 2002 12668634 Pitt +LOG 37149 2002 4679627 Polk +LOG 37151 2002 15912315 Randolph +LOG 37153 2002 14064152 Richmond +LOG 37155 2002 9997160 Robeson +LOG 37157 2002 14006371 Rockingham +LOG 37159 2002 10529536 Rowan +LOG 37161 2002 16628018 Rutherford +LOG 37163 2002 20553955 Sampson +LOG 37165 2002 7078310 Scotland +LOG 37167 2002 3684824 Stanly +LOG 37169 2002 9385704 Stokes +LOG 37171 2002 9371261 Surry +LOG 37173 2002 987425 Swain +LOG 37175 2002 648980 Transylvania +LOG 37177 2002 3996276 Tyrrell +LOG 37179 2002 2529205 Union +LOG 37181 2002 10845138 Vance +LOG 37183 2002 21501406 Wake +LOG 37185 2002 41403350 Warren +LOG 37187 2002 9996540 Washington +LOG 37189 2002 3235118 Watauga +LOG 37191 2002 23895990 Wayne +LOG 37193 2002 14421290 Wilkes +LOG 37195 2002 7322669 Wilson +LOG 37197 2002 6917637 Yadkin +LOG 37199 2002 5262025 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_LSCAP.ALO new file mode 100644 index 0000000..d9e3f6e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_LSCAP.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 37000 2002 14751 NC +LSC 37001 2002 416 Alamance +LSC 37003 2002 81 Alexander +LSC 37005 2002 13 Alleghany +LSC 37007 2002 13 Anson +LSC 37009 2002 13 Ashe +LSC 37011 2002 81 Avery +LSC 37013 2002 81 Beaufort +LSC 37015 2002 0 Bertie +LSC 37017 2002 13 Bladen +LSC 37019 2002 135 Brunswick +LSC 37021 2002 203 Buncombe +LSC 37023 2002 81 Burke +LSC 37025 2002 298 Cabarrus +LSC 37027 2002 81 Caldwell +LSC 37029 2002 13 Camden +LSC 37031 2002 82 Carteret +LSC 37033 2002 13 Caswell +LSC 37035 2002 179 Catawba +LSC 37037 2002 79 Chatham +LSC 37039 2002 13 Cherokee +LSC 37041 2002 13 Chowan +LSC 37043 2002 13 Clay +LSC 37045 2002 57 Cleveland +LSC 37047 2002 56 Columbus +LSC 37049 2002 74 Craven +LSC 37051 2002 389 Cumberland +LSC 37053 2002 81 Currituck +LSC 37055 2002 112 Dare +LSC 37057 2002 115 Davidson +LSC 37059 2002 81 Davie +LSC 37061 2002 13 Duplin +LSC 37063 2002 366 Durham +LSC 37065 2002 44 Edgecombe +LSC 37067 2002 423 Forsyth +LSC 37069 2002 81 Franklin +LSC 37071 2002 194 Gaston +LSC 37073 2002 13 Gates +LSC 37075 2002 13 Graham +LSC 37077 2002 93 Granville +LSC 37079 2002 13 Greene +LSC 37081 2002 996 Guilford +LSC 37083 2002 81 Halifax +LSC 37085 2002 177 Harnett +LSC 37087 2002 81 Haywood +LSC 37089 2002 153 Henderson +LSC 37091 2002 13 Hertford +LSC 37093 2002 13 Hoke +LSC 37095 2002 13 Hyde +LSC 37097 2002 63 Iredell +LSC 37099 2002 73 Jackson +LSC 37101 2002 210 Johnston +LSC 37103 2002 13 Jones +LSC 37105 2002 60 Lee +LSC 37107 2002 57 Lenoir +LSC 37109 2002 70 Lincoln +LSC 37111 2002 81 McDowell +LSC 37113 2002 87 Macon +LSC 37115 2002 13 Madison +LSC 37117 2002 80 Martin +LSC 37119 2002 2651 Mecklenburg +LSC 37121 2002 13 Mitchell +LSC 37123 2002 13 Montgomery +LSC 37125 2002 164 Moore +LSC 37127 2002 85 Nash +LSC 37129 2002 381 New Hanover +LSC 37131 2002 13 Northampton +LSC 37133 2002 75 Onslow +LSC 37135 2002 163 Orange +LSC 37137 2002 0 Pamlico +LSC 37139 2002 80 Pasquotank +LSC 37141 2002 94 Pender +LSC 37143 2002 13 Perquimans +LSC 37145 2002 64 Person +LSC 37147 2002 137 Pitt +LSC 37149 2002 80 Polk +LSC 37151 2002 166 Randolph +LSC 37153 2002 80 Richmond +LSC 37155 2002 80 Robeson +LSC 37157 2002 53 Rockingham +LSC 37159 2002 70 Rowan +LSC 37161 2002 80 Rutherford +LSC 37163 2002 16 Sampson +LSC 37165 2002 13 Scotland +LSC 37167 2002 80 Stanly +LSC 37169 2002 13 Stokes +LSC 37171 2002 196 Surry +LSC 37173 2002 13 Swain +LSC 37175 2002 55 Transylvania +LSC 37177 2002 0 Tyrrell +LSC 37179 2002 593 Union +LSC 37181 2002 80 Vance +LSC 37183 2002 2130 Wake +LSC 37185 2002 0 Warren +LSC 37187 2002 13 Washington +LSC 37189 2002 128 Watauga +LSC 37191 2002 54 Wayne +LSC 37193 2002 96 Wilkes +LSC 37195 2002 127 Wilson +LSC 37197 2002 43 Yadkin +LSC 37199 2002 80 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_MNFG.ALO new file mode 100644 index 0000000..537d5e0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_MNFG.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 37000 2002 1053474 NC +MFG 37001 2002 25319 Alamance +MFG 37003 2002 8346 Alexander +MFG 37005 2002 1209 Alleghany +MFG 37007 2002 2772 Anson +MFG 37009 2002 2347 Ashe +MFG 37011 2002 492 Avery +MFG 37013 2002 5342 Beaufort +MFG 37015 2002 2290 Bertie +MFG 37017 2002 7250 Bladen +MFG 37019 2002 3227 Brunswick +MFG 37021 2002 27617 Buncombe +MFG 37023 2002 20041 Burke +MFG 37025 2002 15243 Cabarrus +MFG 37027 2002 26264 Caldwell +MFG 37029 2002 130 Camden +MFG 37031 2002 2682 Carteret +MFG 37033 2002 467 Caswell +MFG 37035 2002 65845 Catawba +MFG 37037 2002 9174 Chatham +MFG 37039 2002 2071 Cherokee +MFG 37041 2002 1557 Chowan +MFG 37043 2002 521 Clay +MFG 37045 2002 18614 Cleveland +MFG 37047 2002 6232 Columbus +MFG 37049 2002 7275 Craven +MFG 37051 2002 19876 Cumberland +MFG 37053 2002 377 Currituck +MFG 37055 2002 1075 Dare +MFG 37057 2002 32556 Davidson +MFG 37059 2002 5421 Davie +MFG 37061 2002 3878 Duplin +MFG 37063 2002 47719 Durham +MFG 37065 2002 15572 Edgecombe +MFG 37067 2002 38310 Forsyth +MFG 37069 2002 4657 Franklin +MFG 37071 2002 28943 Gaston +MFG 37073 2002 339 Gates +MFG 37075 2002 1355 Graham +MFG 37077 2002 10949 Granville +MFG 37079 2002 425 Greene +MFG 37081 2002 77438 Guilford +MFG 37083 2002 4378 Halifax +MFG 37085 2002 4474 Harnett +MFG 37087 2002 4033 Haywood +MFG 37089 2002 12525 Henderson +MFG 37091 2002 2203 Hertford +MFG 37093 2002 3196 Hoke +MFG 37095 2002 137 Hyde +MFG 37097 2002 23559 Iredell +MFG 37099 2002 1103 Jackson +MFG 37101 2002 11738 Johnston +MFG 37103 2002 77 Jones +MFG 37105 2002 16012 Lee +MFG 37107 2002 8168 Lenoir +MFG 37109 2002 9414 Lincoln +MFG 37111 2002 13480 McDowell +MFG 37113 2002 1926 Macon +MFG 37115 2002 1435 Madison +MFG 37117 2002 1710 Martin +MFG 37119 2002 64371 Mecklenburg +MFG 37121 2002 3062 Mitchell +MFG 37123 2002 7118 Montgomery +MFG 37125 2002 4568 Moore +MFG 37127 2002 6082 Nash +MFG 37129 2002 13810 New Hanover +MFG 37131 2002 813 Northampton +MFG 37133 2002 3138 Onslow +MFG 37135 2002 1928 Orange +MFG 37137 2002 139 Pamlico +MFG 37139 2002 1148 Pasquotank +MFG 37141 2002 1375 Pender +MFG 37143 2002 246 Perquimans +MFG 37145 2002 5559 Person +MFG 37147 2002 14832 Pitt +MFG 37149 2002 1014 Polk +MFG 37151 2002 32951 Randolph +MFG 37153 2002 5525 Richmond +MFG 37155 2002 11645 Robeson +MFG 37157 2002 14562 Rockingham +MFG 37159 2002 22373 Rowan +MFG 37161 2002 11535 Rutherford +MFG 37163 2002 4997 Sampson +MFG 37165 2002 9292 Scotland +MFG 37167 2002 9645 Stanly +MFG 37169 2002 2088 Stokes +MFG 37171 2002 14312 Surry +MFG 37173 2002 546 Swain +MFG 37175 2002 2939 Transylvania +MFG 37177 2002 61 Tyrrell +MFG 37179 2002 21210 Union +MFG 37181 2002 4555 Vance +MFG 37183 2002 38278 Wake +MFG 37185 2002 1036 Warren +MFG 37187 2002 3187 Washington +MFG 37189 2002 1853 Watauga +MFG 37191 2002 12126 Wayne +MFG 37193 2002 9842 Wilkes +MFG 37195 2002 13914 Wilson +MFG 37197 2002 3699 Yadkin +MFG 37199 2002 1315 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_OIL.ALO new file mode 100644 index 0000000..b22116f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_OIL.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 37000 2002 86 NC +OIL 37001 2002 0 Alamance +OIL 37003 2002 0 Alexander +OIL 37005 2002 0 Alleghany +OIL 37007 2002 0 Anson +OIL 37009 2002 0 Ashe +OIL 37011 2002 0 Avery +OIL 37013 2002 0 Beaufort +OIL 37015 2002 0 Bertie +OIL 37017 2002 0 Bladen +OIL 37019 2002 0 Brunswick +OIL 37021 2002 0 Buncombe +OIL 37023 2002 0 Burke +OIL 37025 2002 0 Cabarrus +OIL 37027 2002 0 Caldwell +OIL 37029 2002 0 Camden +OIL 37031 2002 0 Carteret +OIL 37033 2002 0 Caswell +OIL 37035 2002 5 Catawba +OIL 37037 2002 0 Chatham +OIL 37039 2002 0 Cherokee +OIL 37041 2002 0 Chowan +OIL 37043 2002 0 Clay +OIL 37045 2002 0 Cleveland +OIL 37047 2002 0 Columbus +OIL 37049 2002 0 Craven +OIL 37051 2002 2 Cumberland +OIL 37053 2002 0 Currituck +OIL 37055 2002 0 Dare +OIL 37057 2002 0 Davidson +OIL 37059 2002 0 Davie +OIL 37061 2002 0 Duplin +OIL 37063 2002 0 Durham +OIL 37065 2002 0 Edgecombe +OIL 37067 2002 2 Forsyth +OIL 37069 2002 0 Franklin +OIL 37071 2002 5 Gaston +OIL 37073 2002 0 Gates +OIL 37075 2002 0 Graham +OIL 37077 2002 0 Granville +OIL 37079 2002 0 Greene +OIL 37081 2002 0 Guilford +OIL 37083 2002 0 Halifax +OIL 37085 2002 0 Harnett +OIL 37087 2002 0 Haywood +OIL 37089 2002 0 Henderson +OIL 37091 2002 0 Hertford +OIL 37093 2002 0 Hoke +OIL 37095 2002 0 Hyde +OIL 37097 2002 0 Iredell +OIL 37099 2002 0 Jackson +OIL 37101 2002 5 Johnston +OIL 37103 2002 0 Jones +OIL 37105 2002 5 Lee +OIL 37107 2002 0 Lenoir +OIL 37109 2002 0 Lincoln +OIL 37111 2002 0 McDowell +OIL 37113 2002 0 Macon +OIL 37115 2002 0 Madison +OIL 37117 2002 0 Martin +OIL 37119 2002 6 Mecklenburg +OIL 37121 2002 0 Mitchell +OIL 37123 2002 0 Montgomery +OIL 37125 2002 5 Moore +OIL 37127 2002 0 Nash +OIL 37129 2002 0 New Hanover +OIL 37131 2002 0 Northampton +OIL 37133 2002 0 Onslow +OIL 37135 2002 1 Orange +OIL 37137 2002 0 Pamlico +OIL 37139 2002 0 Pasquotank +OIL 37141 2002 0 Pender +OIL 37143 2002 0 Perquimans +OIL 37145 2002 0 Person +OIL 37147 2002 0 Pitt +OIL 37149 2002 0 Polk +OIL 37151 2002 0 Randolph +OIL 37153 2002 0 Richmond +OIL 37155 2002 0 Robeson +OIL 37157 2002 0 Rockingham +OIL 37159 2002 5 Rowan +OIL 37161 2002 0 Rutherford +OIL 37163 2002 5 Sampson +OIL 37165 2002 0 Scotland +OIL 37167 2002 0 Stanly +OIL 37169 2002 0 Stokes +OIL 37171 2002 5 Surry +OIL 37173 2002 5 Swain +OIL 37175 2002 0 Transylvania +OIL 37177 2002 0 Tyrrell +OIL 37179 2002 0 Union +OIL 37181 2002 0 Vance +OIL 37183 2002 25 Wake +OIL 37185 2002 0 Warren +OIL 37187 2002 0 Washington +OIL 37189 2002 5 Watauga +OIL 37191 2002 0 Wayne +OIL 37193 2002 0 Wilkes +OIL 37195 2002 0 Wilson +OIL 37197 2002 0 Yadkin +OIL 37199 2002 0 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_POP.ALO new file mode 100644 index 0000000..e38ede4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_POP.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 37000 2002 8311899 NC +POP 37001 2002 135645 Alamance +POP 37003 2002 34448 Alexander +POP 37005 2002 10826 Alleghany +POP 37007 2002 25283 Anson +POP 37009 2002 24853 Ashe +POP 37011 2002 17703 Avery +POP 37013 2002 45278 Beaufort +POP 37015 2002 19632 Bertie +POP 37017 2002 32467 Bladen +POP 37019 2002 78921 Brunswick +POP 37021 2002 210513 Buncombe +POP 37023 2002 89265 Burke +POP 37025 2002 139845 Cabarrus +POP 37027 2002 78737 Caldwell +POP 37029 2002 7433 Camden +POP 37031 2002 60257 Carteret +POP 37033 2002 23701 Caswell +POP 37035 2002 146461 Catawba +POP 37037 2002 53784 Chatham +POP 37039 2002 24721 Cherokee +POP 37041 2002 14212 Chowan +POP 37043 2002 9154 Clay +POP 37045 2002 97747 Cleveland +POP 37047 2002 54776 Columbus +POP 37049 2002 91124 Craven +POP 37051 2002 304519 Cumberland +POP 37053 2002 19644 Currituck +POP 37055 2002 32129 Dare +POP 37057 2002 150787 Davidson +POP 37059 2002 36690 Davie +POP 37061 2002 50637 Duplin +POP 37063 2002 233384 Durham +POP 37065 2002 55038 Edgecombe +POP 37067 2002 314369 Forsyth +POP 37069 2002 50604 Franklin +POP 37071 2002 193069 Gaston +POP 37073 2002 10629 Gates +POP 37075 2002 8085 Graham +POP 37077 2002 51792 Granville +POP 37079 2002 19538 Greene +POP 37081 2002 430326 Guilford +POP 37083 2002 56548 Halifax +POP 37085 2002 96880 Harnett +POP 37087 2002 55071 Haywood +POP 37089 2002 92439 Henderson +POP 37091 2002 23810 Hertford +POP 37093 2002 36142 Hoke +POP 37095 2002 5739 Hyde +POP 37097 2002 130547 Iredell +POP 37099 2002 33890 Jackson +POP 37101 2002 132947 Johnston +POP 37103 2002 10266 Jones +POP 37105 2002 49309 Lee +POP 37107 2002 58839 Lenoir +POP 37109 2002 66247 Lincoln +POP 37111 2002 42772 McDowell +POP 37113 2002 30861 Macon +POP 37115 2002 19939 Madison +POP 37117 2002 25160 Martin +POP 37119 2002 735085 Mecklenburg +POP 37121 2002 15852 Mitchell +POP 37123 2002 27042 Montgomery +POP 37125 2002 77936 Moore +POP 37127 2002 88920 Nash +POP 37129 2002 165754 New Hanover +POP 37131 2002 21868 Northampton +POP 37133 2002 149813 Onslow +POP 37135 2002 117087 Orange +POP 37137 2002 12875 Pamlico +POP 37139 2002 35608 Pasquotank +POP 37141 2002 42870 Pender +POP 37143 2002 11622 Perquimans +POP 37145 2002 36607 Person +POP 37147 2002 136985 Pitt +POP 37149 2002 18815 Polk +POP 37151 2002 133649 Randolph +POP 37153 2002 46866 Richmond +POP 37155 2002 124746 Robeson +POP 37157 2002 92632 Rockingham +POP 37159 2002 133608 Rowan +POP 37161 2002 63328 Rutherford +POP 37163 2002 61177 Sampson +POP 37165 2002 35803 Scotland +POP 37167 2002 58670 Stanly +POP 37169 2002 45005 Stokes +POP 37171 2002 72055 Surry +POP 37173 2002 13025 Swain +POP 37175 2002 29518 Transylvania +POP 37177 2002 4157 Tyrrell +POP 37179 2002 139449 Union +POP 37181 2002 43910 Vance +POP 37183 2002 677572 Wake +POP 37185 2002 19935 Warren +POP 37187 2002 13480 Washington +POP 37189 2002 42937 Watauga +POP 37191 2002 113171 Wayne +POP 37193 2002 66816 Wilkes +POP 37195 2002 74972 Wilson +POP 37197 2002 37301 Yadkin +POP 37199 2002 17946 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_RAIL.ALO new file mode 100644 index 0000000..79cf798 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_RAIL.ALO @@ -0,0 +1,127 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 37000 2002 10974.820 NC +RR 37001 2002 134.130 Alamance +RR 37003 2002 0.000 Alexander +RR 37005 2002 0.000 Alleghany +RR 37007 2002 264.820 Anson +RR 37009 2002 0.000 Ashe +RR 37011 2002 0.000 Avery +RR 37013 2002 222.810 Beaufort +RR 37015 2002 0.000 Bertie +RR 37017 2002 126.840 Bladen +RR 37019 2002 105.540 Brunswick +RR 37021 2002 262.880 Buncombe +RR 37023 2002 103.680 Burke +RR 37025 2002 412.320 Cabarrus +RR 37027 2002 0.000 Caldwell +RR 37029 2002 0.000 Camden +RR 37031 2002 14.400 Carteret +RR 37033 2002 90.710 Caswell +RR 37035 2002 149.390 Catawba +RR 37037 2002 35.830 Chatham +RR 37039 2002 0.000 Cherokee +RR 37041 2002 0.000 Chowan +RR 37043 2002 0.000 Clay +RR 37045 2002 130.190 Cleveland +RR 37047 2002 98.720 Columbus +RR 37049 2002 41.750 Craven +RR 37051 2002 388.890 Cumberland +RR 37053 2002 0.000 Currituck +RR 37055 2002 0.000 Dare +RR 37057 2002 472.330 Davidson +RR 37059 2002 16.770 Davie +RR 37061 2002 14.850 Duplin +RR 37063 2002 89.490 Durham +RR 37065 2002 269.170 Edgecombe +RR 37067 2002 126.120 Forsyth +RR 37069 2002 11.380 Franklin +RR 37071 2002 330.770 Gaston +RR 37073 2002 0.000 Gates +RR 37075 2002 0.000 Graham +RR 37077 2002 9.690 Granville +RR 37079 2002 22.590 Greene +RR 37081 2002 448.920 Guilford +RR 37083 2002 264.290 Halifax +RR 37085 2002 372.800 Harnett +RR 37087 2002 15.100 Haywood +RR 37089 2002 38.430 Henderson +RR 37091 2002 0.000 Hertford +RR 37093 2002 0.000 Hoke +RR 37095 2002 0.000 Hyde +RR 37097 2002 66.690 Iredell +RR 37099 2002 6.100 Jackson +RR 37101 2002 530.760 Johnston +RR 37103 2002 10.610 Jones +RR 37105 2002 38.840 Lee +RR 37107 2002 28.390 Lenoir +RR 37109 2002 123.830 Lincoln +RR 37111 2002 390.970 McDowell +RR 37113 2002 0.000 Macon +RR 37115 2002 158.810 Madison +RR 37117 2002 22.590 Martin +RR 37119 2002 370.940 Mecklenburg +RR 37121 2002 385.480 Mitchell +RR 37123 2002 19.690 Montgomery +RR 37125 2002 47.000 Moore +RR 37127 2002 166.160 Nash +RR 37129 2002 19.120 New Hanover +RR 37131 2002 237.960 Northampton +RR 37133 2002 10.720 Onslow +RR 37135 2002 103.250 Orange +RR 37137 2002 0.000 Pamlico +RR 37139 2002 0.000 Pasquotank +RR 37141 2002 0.000 Pender +RR 37143 2002 0.000 Perquimans +RR 37145 2002 15.740 Person +RR 37147 2002 157.320 Pitt +RR 37149 2002 19.460 Polk +RR 37151 2002 93.110 Randolph +RR 37153 2002 245.580 Richmond +RR 37155 2002 353.350 Robeson +RR 37157 2002 253.050 Rockingham +RR 37159 2002 415.420 Rowan +RR 37161 2002 200.370 Rutherford +RR 37163 2002 3.010 Sampson +RR 37165 2002 170.240 Scotland +RR 37167 2002 85.290 Stanly +RR 37169 2002 82.260 Stokes +RR 37171 2002 0.000 Surry +RR 37173 2002 0.000 Swain +RR 37175 2002 5.540 Transylvania +RR 37177 2002 0.000 Tyrrell +RR 37179 2002 230.300 Union +RR 37181 2002 9.510 Vance +RR 37183 2002 200.230 Wake +RR 37185 2002 4.560 Warren +RR 37187 2002 21.540 Washington +RR 37189 2002 0.000 Watauga +RR 37191 2002 31.740 Wayne +RR 37193 2002 0.000 Wilkes +RR 37195 2002 334.560 Wilson +RR 37197 2002 0.000 Yadkin +RR 37199 2002 219.130 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_RVPRK.ALO new file mode 100644 index 0000000..a36d87d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_RVPRK.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 37000 2002 193 NC +RVP 37001 2002 0 Alamance +RVP 37003 2002 1 Alexander +RVP 37005 2002 0 Alleghany +RVP 37007 2002 0 Anson +RVP 37009 2002 1 Ashe +RVP 37011 2002 2 Avery +RVP 37013 2002 4 Beaufort +RVP 37015 2002 0 Bertie +RVP 37017 2002 2 Bladen +RVP 37019 2002 4 Brunswick +RVP 37021 2002 12 Buncombe +RVP 37023 2002 0 Burke +RVP 37025 2002 0 Cabarrus +RVP 37027 2002 2 Caldwell +RVP 37029 2002 0 Camden +RVP 37031 2002 10 Carteret +RVP 37033 2002 0 Caswell +RVP 37035 2002 2 Catawba +RVP 37037 2002 0 Chatham +RVP 37039 2002 2 Cherokee +RVP 37041 2002 0 Chowan +RVP 37043 2002 2 Clay +RVP 37045 2002 1 Cleveland +RVP 37047 2002 3 Columbus +RVP 37049 2002 1 Craven +RVP 37051 2002 2 Cumberland +RVP 37053 2002 3 Currituck +RVP 37055 2002 10 Dare +RVP 37057 2002 1 Davidson +RVP 37059 2002 3 Davie +RVP 37061 2002 0 Duplin +RVP 37063 2002 2 Durham +RVP 37065 2002 0 Edgecombe +RVP 37067 2002 0 Forsyth +RVP 37069 2002 0 Franklin +RVP 37071 2002 1 Gaston +RVP 37073 2002 0 Gates +RVP 37075 2002 0 Graham +RVP 37077 2002 0 Granville +RVP 37079 2002 0 Greene +RVP 37081 2002 1 Guilford +RVP 37083 2002 1 Halifax +RVP 37085 2002 0 Harnett +RVP 37087 2002 6 Haywood +RVP 37089 2002 15 Henderson +RVP 37091 2002 1 Hertford +RVP 37093 2002 1 Hoke +RVP 37095 2002 0 Hyde +RVP 37097 2002 2 Iredell +RVP 37099 2002 2 Jackson +RVP 37101 2002 2 Johnston +RVP 37103 2002 0 Jones +RVP 37105 2002 0 Lee +RVP 37107 2002 1 Lenoir +RVP 37109 2002 1 Lincoln +RVP 37111 2002 2 McDowell +RVP 37113 2002 4 Macon +RVP 37115 2002 1 Madison +RVP 37117 2002 1 Martin +RVP 37119 2002 5 Mecklenburg +RVP 37121 2002 3 Mitchell +RVP 37123 2002 1 Montgomery +RVP 37125 2002 0 Moore +RVP 37127 2002 0 Nash +RVP 37129 2002 2 New Hanover +RVP 37131 2002 0 Northampton +RVP 37133 2002 6 Onslow +RVP 37135 2002 6 Orange +RVP 37137 2002 4 Pamlico +RVP 37139 2002 0 Pasquotank +RVP 37141 2002 0 Pender +RVP 37143 2002 0 Perquimans +RVP 37145 2002 0 Person +RVP 37147 2002 0 Pitt +RVP 37149 2002 0 Polk +RVP 37151 2002 1 Randolph +RVP 37153 2002 0 Richmond +RVP 37155 2002 0 Robeson +RVP 37157 2002 2 Rockingham +RVP 37159 2002 3 Rowan +RVP 37161 2002 2 Rutherford +RVP 37163 2002 0 Sampson +RVP 37165 2002 0 Scotland +RVP 37167 2002 3 Stanly +RVP 37169 2002 2 Stokes +RVP 37171 2002 1 Surry +RVP 37173 2002 11 Swain +RVP 37175 2002 14 Transylvania +RVP 37177 2002 0 Tyrrell +RVP 37179 2002 1 Union +RVP 37181 2002 2 Vance +RVP 37183 2002 1 Wake +RVP 37185 2002 0 Warren +RVP 37187 2002 0 Washington +RVP 37189 2002 6 Watauga +RVP 37191 2002 1 Wayne +RVP 37193 2002 1 Wilkes +RVP 37195 2002 1 Wilson +RVP 37197 2002 0 Yadkin +RVP 37199 2002 2 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_SBC.ALO new file mode 100644 index 0000000..703df71 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_SBC.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 37000 2002 980 NC +SBC 37001 2002 0 Alamance +SBC 37003 2002 0 Alexander +SBC 37005 2002 14 Alleghany +SBC 37007 2002 0 Anson +SBC 37009 2002 32 Ashe +SBC 37011 2002 23 Avery +SBC 37013 2002 0 Beaufort +SBC 37015 2002 0 Bertie +SBC 37017 2002 0 Bladen +SBC 37019 2002 0 Brunswick +SBC 37021 2002 203 Buncombe +SBC 37023 2002 0 Burke +SBC 37025 2002 0 Cabarrus +SBC 37027 2002 0 Caldwell +SBC 37029 2002 0 Camden +SBC 37031 2002 0 Carteret +SBC 37033 2002 0 Caswell +SBC 37035 2002 0 Catawba +SBC 37037 2002 0 Chatham +SBC 37039 2002 32 Cherokee +SBC 37041 2002 0 Chowan +SBC 37043 2002 12 Clay +SBC 37045 2002 0 Cleveland +SBC 37047 2002 0 Columbus +SBC 37049 2002 0 Craven +SBC 37051 2002 0 Cumberland +SBC 37053 2002 0 Currituck +SBC 37055 2002 0 Dare +SBC 37057 2002 0 Davidson +SBC 37059 2002 0 Davie +SBC 37061 2002 0 Duplin +SBC 37063 2002 0 Durham +SBC 37065 2002 0 Edgecombe +SBC 37067 2002 0 Forsyth +SBC 37069 2002 0 Franklin +SBC 37071 2002 0 Gaston +SBC 37073 2002 0 Gates +SBC 37075 2002 10 Graham +SBC 37077 2002 0 Granville +SBC 37079 2002 0 Greene +SBC 37081 2002 0 Guilford +SBC 37083 2002 0 Halifax +SBC 37085 2002 0 Harnett +SBC 37087 2002 71 Haywood +SBC 37089 2002 153 Henderson +SBC 37091 2002 0 Hertford +SBC 37093 2002 0 Hoke +SBC 37095 2002 0 Hyde +SBC 37097 2002 0 Iredell +SBC 37099 2002 73 Jackson +SBC 37101 2002 0 Johnston +SBC 37103 2002 0 Jones +SBC 37105 2002 0 Lee +SBC 37107 2002 0 Lenoir +SBC 37109 2002 0 Lincoln +SBC 37111 2002 0 McDowell +SBC 37113 2002 87 Macon +SBC 37115 2002 26 Madison +SBC 37117 2002 0 Martin +SBC 37119 2002 0 Mecklenburg +SBC 37121 2002 21 Mitchell +SBC 37123 2002 0 Montgomery +SBC 37125 2002 0 Moore +SBC 37127 2002 0 Nash +SBC 37129 2002 0 New Hanover +SBC 37131 2002 0 Northampton +SBC 37133 2002 0 Onslow +SBC 37135 2002 0 Orange +SBC 37137 2002 0 Pamlico +SBC 37139 2002 0 Pasquotank +SBC 37141 2002 0 Pender +SBC 37143 2002 0 Perquimans +SBC 37145 2002 0 Person +SBC 37147 2002 0 Pitt +SBC 37149 2002 0 Polk +SBC 37151 2002 0 Randolph +SBC 37153 2002 0 Richmond +SBC 37155 2002 0 Robeson +SBC 37157 2002 0 Rockingham +SBC 37159 2002 0 Rowan +SBC 37161 2002 0 Rutherford +SBC 37163 2002 0 Sampson +SBC 37165 2002 0 Scotland +SBC 37167 2002 0 Stanly +SBC 37169 2002 0 Stokes +SBC 37171 2002 0 Surry +SBC 37173 2002 17 Swain +SBC 37175 2002 55 Transylvania +SBC 37177 2002 0 Tyrrell +SBC 37179 2002 0 Union +SBC 37181 2002 0 Vance +SBC 37183 2002 0 Wake +SBC 37185 2002 0 Warren +SBC 37187 2002 0 Washington +SBC 37189 2002 128 Watauga +SBC 37191 2002 0 Wayne +SBC 37193 2002 0 Wilkes +SBC 37195 2002 0 Wilson +SBC 37197 2002 0 Yadkin +SBC 37199 2002 23 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_SBR.ALO new file mode 100644 index 0000000..796a79a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_SBR.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 37000 2002 347697 NC +SBR 37001 2002 0 Alamance +SBR 37003 2002 0 Alexander +SBR 37005 2002 6657 Alleghany +SBR 37007 2002 0 Anson +SBR 37009 2002 13822 Ashe +SBR 37011 2002 12204 Avery +SBR 37013 2002 0 Beaufort +SBR 37015 2002 0 Bertie +SBR 37017 2002 0 Bladen +SBR 37019 2002 0 Brunswick +SBR 37021 2002 97813 Buncombe +SBR 37023 2002 0 Burke +SBR 37025 2002 0 Cabarrus +SBR 37027 2002 0 Caldwell +SBR 37029 2002 0 Camden +SBR 37031 2002 0 Carteret +SBR 37033 2002 0 Caswell +SBR 37035 2002 0 Catawba +SBR 37037 2002 0 Chatham +SBR 37039 2002 14099 Cherokee +SBR 37041 2002 0 Chowan +SBR 37043 2002 5732 Clay +SBR 37045 2002 0 Cleveland +SBR 37047 2002 0 Columbus +SBR 37049 2002 0 Craven +SBR 37051 2002 0 Cumberland +SBR 37053 2002 0 Currituck +SBR 37055 2002 0 Dare +SBR 37057 2002 0 Davidson +SBR 37059 2002 0 Davie +SBR 37061 2002 0 Duplin +SBR 37063 2002 0 Durham +SBR 37065 2002 0 Edgecombe +SBR 37067 2002 0 Forsyth +SBR 37069 2002 0 Franklin +SBR 37071 2002 0 Gaston +SBR 37073 2002 0 Gates +SBR 37075 2002 5245 Graham +SBR 37077 2002 0 Granville +SBR 37079 2002 0 Greene +SBR 37081 2002 0 Guilford +SBR 37083 2002 0 Halifax +SBR 37085 2002 0 Harnett +SBR 37087 2002 29563 Haywood +SBR 37089 2002 44943 Henderson +SBR 37091 2002 0 Hertford +SBR 37093 2002 0 Hoke +SBR 37095 2002 0 Hyde +SBR 37097 2002 0 Iredell +SBR 37099 2002 20602 Jackson +SBR 37101 2002 0 Johnston +SBR 37103 2002 0 Jones +SBR 37105 2002 0 Lee +SBR 37107 2002 0 Lenoir +SBR 37109 2002 0 Lincoln +SBR 37111 2002 0 McDowell +SBR 37113 2002 21391 Macon +SBR 37115 2002 10060 Madison +SBR 37117 2002 0 Martin +SBR 37119 2002 0 Mecklenburg +SBR 37121 2002 8069 Mitchell +SBR 37123 2002 0 Montgomery +SBR 37125 2002 0 Moore +SBR 37127 2002 0 Nash +SBR 37129 2002 0 New Hanover +SBR 37131 2002 0 Northampton +SBR 37133 2002 0 Onslow +SBR 37135 2002 0 Orange +SBR 37137 2002 0 Pamlico +SBR 37139 2002 0 Pasquotank +SBR 37141 2002 0 Pender +SBR 37143 2002 0 Perquimans +SBR 37145 2002 0 Person +SBR 37147 2002 0 Pitt +SBR 37149 2002 0 Polk +SBR 37151 2002 0 Randolph +SBR 37153 2002 0 Richmond +SBR 37155 2002 0 Robeson +SBR 37157 2002 0 Rockingham +SBR 37159 2002 0 Rowan +SBR 37161 2002 0 Rutherford +SBR 37163 2002 0 Sampson +SBR 37165 2002 0 Scotland +SBR 37167 2002 0 Stanly +SBR 37169 2002 0 Stokes +SBR 37171 2002 0 Surry +SBR 37173 2002 7412 Swain +SBR 37175 2002 16075 Transylvania +SBR 37177 2002 0 Tyrrell +SBR 37179 2002 0 Union +SBR 37181 2002 0 Vance +SBR 37183 2002 0 Wake +SBR 37185 2002 0 Warren +SBR 37187 2002 0 Washington +SBR 37189 2002 24095 Watauga +SBR 37191 2002 0 Wayne +SBR 37193 2002 0 Wilkes +SBR 37195 2002 0 Wilson +SBR 37197 2002 0 Yadkin +SBR 37199 2002 9915 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_SNOWM.ALO new file mode 100644 index 0000000..7b68a4a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_SNOWM.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 37000 2002 0 NC +SNM 37001 2002 0 Alamance +SNM 37003 2002 0 Alexander +SNM 37005 2002 0 Alleghany +SNM 37007 2002 0 Anson +SNM 37009 2002 0 Ashe +SNM 37011 2002 0 Avery +SNM 37013 2002 0 Beaufort +SNM 37015 2002 0 Bertie +SNM 37017 2002 0 Bladen +SNM 37019 2002 0 Brunswick +SNM 37021 2002 0 Buncombe +SNM 37023 2002 0 Burke +SNM 37025 2002 0 Cabarrus +SNM 37027 2002 0 Caldwell +SNM 37029 2002 0 Camden +SNM 37031 2002 0 Carteret +SNM 37033 2002 0 Caswell +SNM 37035 2002 0 Catawba +SNM 37037 2002 0 Chatham +SNM 37039 2002 0 Cherokee +SNM 37041 2002 0 Chowan +SNM 37043 2002 0 Clay +SNM 37045 2002 0 Cleveland +SNM 37047 2002 0 Columbus +SNM 37049 2002 0 Craven +SNM 37051 2002 0 Cumberland +SNM 37053 2002 0 Currituck +SNM 37055 2002 0 Dare +SNM 37057 2002 0 Davidson +SNM 37059 2002 0 Davie +SNM 37061 2002 0 Duplin +SNM 37063 2002 0 Durham +SNM 37065 2002 0 Edgecombe +SNM 37067 2002 0 Forsyth +SNM 37069 2002 0 Franklin +SNM 37071 2002 0 Gaston +SNM 37073 2002 0 Gates +SNM 37075 2002 0 Graham +SNM 37077 2002 0 Granville +SNM 37079 2002 0 Greene +SNM 37081 2002 0 Guilford +SNM 37083 2002 0 Halifax +SNM 37085 2002 0 Harnett +SNM 37087 2002 0 Haywood +SNM 37089 2002 0 Henderson +SNM 37091 2002 0 Hertford +SNM 37093 2002 0 Hoke +SNM 37095 2002 0 Hyde +SNM 37097 2002 0 Iredell +SNM 37099 2002 0 Jackson +SNM 37101 2002 0 Johnston +SNM 37103 2002 0 Jones +SNM 37105 2002 0 Lee +SNM 37107 2002 0 Lenoir +SNM 37109 2002 0 Lincoln +SNM 37111 2002 0 McDowell +SNM 37113 2002 0 Macon +SNM 37115 2002 0 Madison +SNM 37117 2002 0 Martin +SNM 37119 2002 0 Mecklenburg +SNM 37121 2002 0 Mitchell +SNM 37123 2002 0 Montgomery +SNM 37125 2002 0 Moore +SNM 37127 2002 0 Nash +SNM 37129 2002 0 New Hanover +SNM 37131 2002 0 Northampton +SNM 37133 2002 0 Onslow +SNM 37135 2002 0 Orange +SNM 37137 2002 0 Pamlico +SNM 37139 2002 0 Pasquotank +SNM 37141 2002 0 Pender +SNM 37143 2002 0 Perquimans +SNM 37145 2002 0 Person +SNM 37147 2002 0 Pitt +SNM 37149 2002 0 Polk +SNM 37151 2002 0 Randolph +SNM 37153 2002 0 Richmond +SNM 37155 2002 0 Robeson +SNM 37157 2002 0 Rockingham +SNM 37159 2002 0 Rowan +SNM 37161 2002 0 Rutherford +SNM 37163 2002 0 Sampson +SNM 37165 2002 0 Scotland +SNM 37167 2002 0 Stanly +SNM 37169 2002 0 Stokes +SNM 37171 2002 0 Surry +SNM 37173 2002 0 Swain +SNM 37175 2002 0 Transylvania +SNM 37177 2002 0 Tyrrell +SNM 37179 2002 0 Union +SNM 37181 2002 0 Vance +SNM 37183 2002 0 Wake +SNM 37185 2002 0 Warren +SNM 37187 2002 0 Washington +SNM 37189 2002 0 Watauga +SNM 37191 2002 0 Wayne +SNM 37193 2002 0 Wilkes +SNM 37195 2002 0 Wilson +SNM 37197 2002 0 Yadkin +SNM 37199 2002 0 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_WIB.ALO new file mode 100644 index 0000000..2d8b9f5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_WIB.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 37000 1990 16153 NC +WIB 37001 1990 11 Alamance +WIB 37003 1990 8 Alexander +WIB 37005 1990 2 Alleghany +WIB 37007 1990 14 Anson +WIB 37009 1990 2 Ashe +WIB 37011 1990 1 Avery +WIB 37013 1990 524 Beaufort +WIB 37015 1990 164 Bertie +WIB 37017 1990 31 Bladen +WIB 37019 1990 359 Brunswick +WIB 37021 1990 10 Buncombe +WIB 37023 1990 21 Burke +WIB 37025 1990 2 Cabarrus +WIB 37027 1990 7 Caldwell +WIB 37029 1990 249 Camden +WIB 37031 1990 2439 Carteret +WIB 37033 1990 7 Caswell +WIB 37035 1990 35 Catawba +WIB 37037 1990 68 Chatham +WIB 37039 1990 30 Cherokee +WIB 37041 1990 224 Chowan +WIB 37043 1990 15 Clay +WIB 37045 1990 10 Cleveland +WIB 37047 1990 44 Columbus +WIB 37049 1990 256 Craven +WIB 37051 1990 14 Cumberland +WIB 37053 1990 816 Currituck +WIB 37055 1990 3728 Dare +WIB 37057 1990 38 Davidson +WIB 37059 1990 4 Davie +WIB 37061 1990 3 Duplin +WIB 37063 1990 19 Durham +WIB 37065 1990 4 Edgecombe +WIB 37067 1990 8 Forsyth +WIB 37069 1990 7 Franklin +WIB 37071 1990 19 Gaston +WIB 37073 1990 13 Gates +WIB 37075 1990 25 Graham +WIB 37077 1990 14 Granville +WIB 37079 1990 1 Greene +WIB 37081 1990 20 Guilford +WIB 37083 1990 14 Halifax +WIB 37085 1990 16 Harnett +WIB 37087 1990 2 Haywood +WIB 37089 1990 3 Henderson +WIB 37091 1990 38 Hertford +WIB 37093 1990 3 Hoke +WIB 37095 1990 2895 Hyde +WIB 37097 1990 49 Iredell +WIB 37099 1990 10 Jackson +WIB 37101 1990 10 Johnston +WIB 37103 1990 4 Jones +WIB 37105 1990 5 Lee +WIB 37107 1990 6 Lenoir +WIB 37109 1990 21 Lincoln +WIB 37111 1990 12 McDowell +WIB 37113 1990 8 Macon +WIB 37115 1990 6 Madison +WIB 37117 1990 1 Martin +WIB 37119 1990 58 Mecklenburg +WIB 37121 1990 2 Mitchell +WIB 37123 1990 26 Montgomery +WIB 37125 1990 20 Moore +WIB 37127 1990 6 Nash +WIB 37129 1990 232 New Hanover +WIB 37131 1990 37 Northampton +WIB 37133 1990 344 Onslow +WIB 37135 1990 4 Orange +WIB 37137 1990 893 Pamlico +WIB 37139 1990 238 Pasquotank +WIB 37141 1990 123 Pender +WIB 37143 1990 316 Perquimans +WIB 37145 1990 30 Person +WIB 37147 1990 10 Pitt +WIB 37149 1990 2 Polk +WIB 37151 1990 6 Randolph +WIB 37153 1990 15 Richmond +WIB 37155 1990 6 Robeson +WIB 37157 1990 15 Rockingham +WIB 37159 1990 32 Rowan +WIB 37161 1990 5 Rutherford +WIB 37163 1990 5 Sampson +WIB 37165 1990 4 Scotland +WIB 37167 1990 24 Stanly +WIB 37169 1990 10 Stokes +WIB 37171 1990 3 Surry +WIB 37173 1990 32 Swain +WIB 37175 1990 6 Transylvania +WIB 37177 1990 835 Tyrrell +WIB 37179 1990 6 Union +WIB 37181 1990 42 Vance +WIB 37183 1990 61 Wake +WIB 37185 1990 39 Warren +WIB 37187 1990 263 Washington +WIB 37189 1990 1 Watauga +WIB 37191 1990 11 Wayne +WIB 37193 1990 7 Wilkes +WIB 37195 1990 8 Wilson +WIB 37197 1990 5 Yadkin +WIB 37199 1990 2 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NC_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NC_WOB.ALO new file mode 100644 index 0000000..e6a601b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NC_WOB.ALO @@ -0,0 +1,125 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 37000 1990 10981 NC +WOB 37001 1990 11 Alamance +WOB 37003 1990 8 Alexander +WOB 37005 1990 2 Alleghany +WOB 37007 1990 14 Anson +WOB 37009 1990 2 Ashe +WOB 37011 1990 1 Avery +WOB 37013 1990 361 Beaufort +WOB 37015 1990 116 Bertie +WOB 37017 1990 31 Bladen +WOB 37019 1990 135 Brunswick +WOB 37021 1990 10 Buncombe +WOB 37023 1990 21 Burke +WOB 37025 1990 2 Cabarrus +WOB 37027 1990 7 Caldwell +WOB 37029 1990 178 Camden +WOB 37031 1990 1510 Carteret +WOB 37033 1990 7 Caswell +WOB 37035 1990 35 Catawba +WOB 37037 1990 68 Chatham +WOB 37039 1990 30 Cherokee +WOB 37041 1990 165 Chowan +WOB 37043 1990 15 Clay +WOB 37045 1990 10 Cleveland +WOB 37047 1990 44 Columbus +WOB 37049 1990 182 Craven +WOB 37051 1990 14 Cumberland +WOB 37053 1990 515 Currituck +WOB 37055 1990 2432 Dare +WOB 37057 1990 38 Davidson +WOB 37059 1990 4 Davie +WOB 37061 1990 3 Duplin +WOB 37063 1990 19 Durham +WOB 37065 1990 4 Edgecombe +WOB 37067 1990 8 Forsyth +WOB 37069 1990 7 Franklin +WOB 37071 1990 19 Gaston +WOB 37073 1990 13 Gates +WOB 37075 1990 25 Graham +WOB 37077 1990 14 Granville +WOB 37079 1990 1 Greene +WOB 37081 1990 20 Guilford +WOB 37083 1990 14 Halifax +WOB 37085 1990 16 Harnett +WOB 37087 1990 2 Haywood +WOB 37089 1990 3 Henderson +WOB 37091 1990 21 Hertford +WOB 37093 1990 3 Hoke +WOB 37095 1990 2062 Hyde +WOB 37097 1990 49 Iredell +WOB 37099 1990 10 Jackson +WOB 37101 1990 10 Johnston +WOB 37103 1990 4 Jones +WOB 37105 1990 5 Lee +WOB 37107 1990 6 Lenoir +WOB 37109 1990 21 Lincoln +WOB 37111 1990 12 McDowell +WOB 37113 1990 8 Macon +WOB 37115 1990 6 Madison +WOB 37117 1990 1 Martin +WOB 37119 1990 58 Mecklenburg +WOB 37121 1990 2 Mitchell +WOB 37123 1990 26 Montgomery +WOB 37125 1990 20 Moore +WOB 37127 1990 6 Nash +WOB 37129 1990 73 New Hanover +WOB 37131 1990 37 Northampton +WOB 37133 1990 162 Onslow +WOB 37135 1990 4 Orange +WOB 37137 1990 631 Pamlico +WOB 37139 1990 172 Pasquotank +WOB 37141 1990 39 Pender +WOB 37143 1990 225 Perquimans +WOB 37145 1990 30 Person +WOB 37147 1990 8 Pitt +WOB 37149 1990 2 Polk +WOB 37151 1990 6 Randolph +WOB 37153 1990 15 Richmond +WOB 37155 1990 6 Robeson +WOB 37157 1990 15 Rockingham +WOB 37159 1990 32 Rowan +WOB 37161 1990 5 Rutherford +WOB 37163 1990 5 Sampson +WOB 37165 1990 4 Scotland +WOB 37167 1990 24 Stanly +WOB 37169 1990 10 Stokes +WOB 37171 1990 3 Surry +WOB 37173 1990 32 Swain +WOB 37175 1990 6 Transylvania +WOB 37177 1990 581 Tyrrell +WOB 37179 1990 6 Union +WOB 37181 1990 42 Vance +WOB 37183 1990 61 Wake +WOB 37185 1990 39 Warren +WOB 37187 1990 206 Washington +WOB 37189 1990 1 Watauga +WOB 37191 1990 11 Wayne +WOB 37193 1990 7 Wilkes +WOB 37195 1990 8 Wilson +WOB 37197 1990 5 Yadkin +WOB 37199 1990 2 Yancey +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_AIRTR.ALO new file mode 100644 index 0000000..213d963 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_AIRTR.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 38000 2002 133.085 ND +AIR 38001 2002 0.000 Adams +AIR 38003 2002 0.029 Barnes +AIR 38005 2002 0.000 Benson +AIR 38007 2002 0.000 Billings +AIR 38009 2002 0.000 Bottineau +AIR 38011 2002 0.000 Bowman +AIR 38013 2002 0.000 Burke +AIR 38015 2002 14.660 Burleigh +AIR 38017 2002 42.240 Cass +AIR 38019 2002 0.000 Cavalier +AIR 38021 2002 0.000 Dickey +AIR 38023 2002 0.000 Divide +AIR 38025 2002 0.000 Dunn +AIR 38027 2002 0.000 Eddy +AIR 38029 2002 0.000 Emmons +AIR 38031 2002 0.000 Foster +AIR 38033 2002 0.000 Golden Valley +AIR 38035 2002 17.280 Grand Forks +AIR 38037 2002 0.000 Grant +AIR 38039 2002 0.000 Griggs +AIR 38041 2002 0.000 Hettinger +AIR 38043 2002 0.000 Kidder +AIR 38045 2002 0.000 LaMoure +AIR 38047 2002 0.000 Logan +AIR 38049 2002 0.000 McHenry +AIR 38051 2002 0.000 McIntosh +AIR 38053 2002 0.000 McKenzie +AIR 38055 2002 0.000 McLean +AIR 38057 2002 0.000 Mercer +AIR 38059 2002 0.000 Morton +AIR 38061 2002 0.000 Mountrail +AIR 38063 2002 0.000 Nelson +AIR 38065 2002 0.000 Oliver +AIR 38067 2002 0.015 Pembina +AIR 38069 2002 0.016 Pierce +AIR 38071 2002 14.710 Ramsey +AIR 38073 2002 0.000 Ransom +AIR 38075 2002 0.004 Renville +AIR 38077 2002 0.062 Richland +AIR 38079 2002 0.000 Rolette +AIR 38081 2002 0.073 Sargent +AIR 38083 2002 0.000 Sheridan +AIR 38085 2002 0.000 Sioux +AIR 38087 2002 0.000 Slope +AIR 38089 2002 0.000 Stark +AIR 38091 2002 0.000 Steele +AIR 38093 2002 16.733 Stutsman +AIR 38095 2002 0.000 Towner +AIR 38097 2002 0.000 Traill +AIR 38099 2002 0.000 Walsh +AIR 38101 2002 8.300 Ward +AIR 38103 2002 0.000 Wells +AIR 38105 2002 18.962 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_COAL.ALO new file mode 100644 index 0000000..80c255d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_COAL.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 38000 2002 0 ND +MIN 38001 2002 0 Adams +MIN 38003 2002 0 Barnes +MIN 38005 2002 0 Benson +MIN 38007 2002 0 Billings +MIN 38009 2002 0 Bottineau +MIN 38011 2002 0 Bowman +MIN 38013 2002 0 Burke +MIN 38015 2002 0 Burleigh +MIN 38017 2002 0 Cass +MIN 38019 2002 0 Cavalier +MIN 38021 2002 0 Dickey +MIN 38023 2002 0 Divide +MIN 38025 2002 0 Dunn +MIN 38027 2002 0 Eddy +MIN 38029 2002 0 Emmons +MIN 38031 2002 0 Foster +MIN 38033 2002 0 Golden Valley +MIN 38035 2002 0 Grand Forks +MIN 38037 2002 0 Grant +MIN 38039 2002 0 Griggs +MIN 38041 2002 0 Hettinger +MIN 38043 2002 0 Kidder +MIN 38045 2002 0 LaMoure +MIN 38047 2002 0 Logan +MIN 38049 2002 0 McHenry +MIN 38051 2002 0 McIntosh +MIN 38053 2002 0 McKenzie +MIN 38055 2002 0 McLean +MIN 38057 2002 0 Mercer +MIN 38059 2002 0 Morton +MIN 38061 2002 0 Mountrail +MIN 38063 2002 0 Nelson +MIN 38065 2002 0 Oliver +MIN 38067 2002 0 Pembina +MIN 38069 2002 0 Pierce +MIN 38071 2002 0 Ramsey +MIN 38073 2002 0 Ransom +MIN 38075 2002 0 Renville +MIN 38077 2002 0 Richland +MIN 38079 2002 0 Rolette +MIN 38081 2002 0 Sargent +MIN 38083 2002 0 Sheridan +MIN 38085 2002 0 Sioux +MIN 38087 2002 0 Slope +MIN 38089 2002 0 Stark +MIN 38091 2002 0 Steele +MIN 38093 2002 0 Stutsman +MIN 38095 2002 0 Towner +MIN 38097 2002 0 Traill +MIN 38099 2002 0 Walsh +MIN 38101 2002 0 Ward +MIN 38103 2002 0 Wells +MIN 38105 2002 0 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_CONST.ALO new file mode 100644 index 0000000..807a708 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_CONST.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 38000 2003 1111321 ND +CON 38001 2003 779 Adams +CON 38003 2003 10239 Barnes +CON 38005 2003 9017 Benson +CON 38007 2003 5355 Billings +CON 38009 2003 8973 Bottineau +CON 38011 2003 179 Bowman +CON 38013 2003 862 Burke +CON 38015 2003 151218 Burleigh +CON 38017 2003 358294 Cass +CON 38019 2003 3747 Cavalier +CON 38021 2003 2497 Dickey +CON 38023 2003 1590 Divide +CON 38025 2003 1350 Dunn +CON 38027 2003 234 Eddy +CON 38029 2003 3257 Emmons +CON 38031 2003 141 Foster +CON 38033 2003 3611 Golden Valley +CON 38035 2003 123419 Grand Forks +CON 38037 2003 1840 Grant +CON 38039 2003 3197 Griggs +CON 38041 2003 2574 Hettinger +CON 38043 2003 4294 Kidder +CON 38045 2003 42475 LaMoure +CON 38047 2003 558 Logan +CON 38049 2003 4483 McHenry +CON 38051 2003 2176 McIntosh +CON 38053 2003 41262 McKenzie +CON 38055 2003 11240 McLean +CON 38057 2003 4085 Mercer +CON 38059 2003 38809 Morton +CON 38061 2003 25543 Mountrail +CON 38063 2003 1693 Nelson +CON 38065 2003 0 Oliver +CON 38067 2003 397 Pembina +CON 38069 2003 6674 Pierce +CON 38071 2003 25045 Ramsey +CON 38073 2003 1186 Ransom +CON 38075 2003 3774 Renville +CON 38077 2003 15761 Richland +CON 38079 2003 7151 Rolette +CON 38081 2003 1957 Sargent +CON 38083 2003 0 Sheridan +CON 38085 2003 10801 Sioux +CON 38087 2003 197 Slope +CON 38089 2003 29395 Stark +CON 38091 2003 2276 Steele +CON 38093 2003 29627 Stutsman +CON 38095 2003 1499 Towner +CON 38097 2003 7044 Traill +CON 38099 2003 4592 Walsh +CON 38101 2003 71027 Ward +CON 38103 2003 3712 Wells +CON 38105 2003 20216 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_FARMS.ALO new file mode 100644 index 0000000..668b920 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_FARMS.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 38000 2002 19908697 ND +FRM 38001 2002 138699 Adams +FRM 38003 2002 618978 Barnes +FRM 38005 2002 409690 Benson +FRM 38007 2002 85251 Billings +FRM 38009 2002 653746 Bottineau +FRM 38011 2002 178608 Bowman +FRM 38013 2002 324288 Burke +FRM 38015 2002 273507 Burleigh +FRM 38017 2002 1025090 Cass +FRM 38019 2002 676432 Cavalier +FRM 38021 2002 357656 Dickey +FRM 38023 2002 413291 Divide +FRM 38025 2002 306431 Dunn +FRM 38027 2002 161828 Eddy +FRM 38029 2002 244178 Emmons +FRM 38031 2002 230378 Foster +FRM 38033 2002 133200 Golden Valley +FRM 38035 2002 570215 Grand Forks +FRM 38037 2002 231054 Grant +FRM 38039 2002 204304 Griggs +FRM 38041 2002 379053 Hettinger +FRM 38043 2002 239415 Kidder +FRM 38045 2002 465418 LaMoure +FRM 38047 2002 191164 Logan +FRM 38049 2002 500125 McHenry +FRM 38051 2002 236499 McIntosh +FRM 38053 2002 326759 McKenzie +FRM 38055 2002 680696 McLean +FRM 38057 2002 170852 Mercer +FRM 38059 2002 380553 Morton +FRM 38061 2002 495547 Mountrail +FRM 38063 2002 281728 Nelson +FRM 38065 2002 139317 Oliver +FRM 38067 2002 496369 Pembina +FRM 38069 2002 296988 Pierce +FRM 38071 2002 441322 Ramsey +FRM 38073 2002 267178 Ransom +FRM 38075 2002 408358 Renville +FRM 38077 2002 771351 Richland +FRM 38079 2002 244538 Rolette +FRM 38081 2002 349310 Sargent +FRM 38083 2002 221687 Sheridan +FRM 38085 2002 42257 Sioux +FRM 38087 2002 161545 Slope +FRM 38089 2002 353315 Stark +FRM 38091 2002 321073 Steele +FRM 38093 2002 666183 Stutsman +FRM 38095 2002 369262 Towner +FRM 38097 2002 476959 Traill +FRM 38099 2002 519837 Walsh +FRM 38101 2002 760572 Ward +FRM 38103 2002 455656 Wells +FRM 38105 2002 560987 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_GOLF.ALO new file mode 100644 index 0000000..aba5343 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_GOLF.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 38000 2002 70 ND +GC 38001 2002 0 Adams +GC 38003 2002 1 Barnes +GC 38005 2002 0 Benson +GC 38007 2002 0 Billings +GC 38009 2002 2 Bottineau +GC 38011 2002 1 Bowman +GC 38013 2002 2 Burke +GC 38015 2002 2 Burleigh +GC 38017 2002 5 Cass +GC 38019 2002 1 Cavalier +GC 38021 2002 2 Dickey +GC 38023 2002 1 Divide +GC 38025 2002 0 Dunn +GC 38027 2002 1 Eddy +GC 38029 2002 1 Emmons +GC 38031 2002 1 Foster +GC 38033 2002 0 Golden Valley +GC 38035 2002 5 Grand Forks +GC 38037 2002 0 Grant +GC 38039 2002 1 Griggs +GC 38041 2002 1 Hettinger +GC 38043 2002 0 Kidder +GC 38045 2002 2 LaMoure +GC 38047 2002 0 Logan +GC 38049 2002 0 McHenry +GC 38051 2002 1 McIntosh +GC 38053 2002 0 McKenzie +GC 38055 2002 3 McLean +GC 38057 2002 2 Mercer +GC 38059 2002 0 Morton +GC 38061 2002 3 Mountrail +GC 38063 2002 0 Nelson +GC 38065 2002 1 Oliver +GC 38067 2002 3 Pembina +GC 38069 2002 2 Pierce +GC 38071 2002 1 Ramsey +GC 38073 2002 2 Ransom +GC 38075 2002 1 Renville +GC 38077 2002 2 Richland +GC 38079 2002 2 Rolette +GC 38081 2002 1 Sargent +GC 38083 2002 0 Sheridan +GC 38085 2002 0 Sioux +GC 38087 2002 0 Slope +GC 38089 2002 1 Stark +GC 38091 2002 0 Steele +GC 38093 2002 1 Stutsman +GC 38095 2002 1 Towner +GC 38097 2002 1 Traill +GC 38099 2002 2 Walsh +GC 38101 2002 5 Ward +GC 38103 2002 2 Wells +GC 38105 2002 4 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_HOLSL.ALO new file mode 100644 index 0000000..c86bf3e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_HOLSL.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 38000 2002 1517 ND +COM 38001 2002 9 Adams +COM 38003 2002 31 Barnes +COM 38005 2002 10 Benson +COM 38007 2002 0 Billings +COM 38009 2002 18 Bottineau +COM 38011 2002 6 Bowman +COM 38013 2002 7 Burke +COM 38015 2002 141 Burleigh +COM 38017 2002 369 Cass +COM 38019 2002 17 Cavalier +COM 38021 2002 17 Dickey +COM 38023 2002 8 Divide +COM 38025 2002 7 Dunn +COM 38027 2002 6 Eddy +COM 38029 2002 8 Emmons +COM 38031 2002 19 Foster +COM 38033 2002 6 Golden Valley +COM 38035 2002 108 Grand Forks +COM 38037 2002 8 Grant +COM 38039 2002 14 Griggs +COM 38041 2002 10 Hettinger +COM 38043 2002 4 Kidder +COM 38045 2002 14 LaMoure +COM 38047 2002 9 Logan +COM 38049 2002 14 McHenry +COM 38051 2002 9 McIntosh +COM 38053 2002 13 McKenzie +COM 38055 2002 20 McLean +COM 38057 2002 9 Mercer +COM 38059 2002 41 Morton +COM 38061 2002 15 Mountrail +COM 38063 2002 14 Nelson +COM 38065 2002 1 Oliver +COM 38067 2002 27 Pembina +COM 38069 2002 11 Pierce +COM 38071 2002 28 Ramsey +COM 38073 2002 12 Ransom +COM 38075 2002 12 Renville +COM 38077 2002 43 Richland +COM 38079 2002 10 Rolette +COM 38081 2002 10 Sargent +COM 38083 2002 6 Sheridan +COM 38085 2002 3 Sioux +COM 38087 2002 0 Slope +COM 38089 2002 56 Stark +COM 38091 2002 7 Steele +COM 38093 2002 39 Stutsman +COM 38095 2002 8 Towner +COM 38097 2002 31 Traill +COM 38099 2002 38 Walsh +COM 38101 2002 92 Ward +COM 38103 2002 22 Wells +COM 38105 2002 80 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_HOUSE.ALO new file mode 100644 index 0000000..abb1141 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_HOUSE.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 38000 2002 294175 ND +HOU 38001 2002 1416 Adams +HOU 38003 2002 5590 Barnes +HOU 38005 2002 2949 Benson +HOU 38007 2002 528 Billings +HOU 38009 2002 4434 Bottineau +HOU 38011 2002 1595 Bowman +HOU 38013 2002 1409 Burke +HOU 38015 2002 30134 Burleigh +HOU 38017 2002 56212 Cass +HOU 38019 2002 2728 Cavalier +HOU 38021 2002 2656 Dickey +HOU 38023 2002 1466 Divide +HOU 38025 2002 1964 Dunn +HOU 38027 2002 1423 Eddy +HOU 38029 2002 2177 Emmons +HOU 38031 2002 1789 Foster +HOU 38033 2002 966 Golden Valley +HOU 38035 2002 27473 Grand Forks +HOU 38037 2002 1729 Grant +HOU 38039 2002 1517 Griggs +HOU 38041 2002 1417 Hettinger +HOU 38043 2002 1630 Kidder +HOU 38045 2002 2279 LaMoure +HOU 38047 2002 1193 Logan +HOU 38049 2002 3000 McHenry +HOU 38051 2002 1860 McIntosh +HOU 38053 2002 2742 McKenzie +HOU 38055 2002 5267 McLean +HOU 38057 2002 4434 Mercer +HOU 38059 2002 10777 Morton +HOU 38061 2002 3435 Mountrail +HOU 38063 2002 2015 Nelson +HOU 38065 2002 898 Oliver +HOU 38067 2002 4097 Pembina +HOU 38069 2002 2275 Pierce +HOU 38071 2002 5749 Ramsey +HOU 38073 2002 2677 Ransom +HOU 38075 2002 1420 Renville +HOU 38077 2002 7599 Richland +HOU 38079 2002 5035 Rolette +HOU 38081 2002 2018 Sargent +HOU 38083 2002 922 Sheridan +HOU 38085 2002 1235 Sioux +HOU 38087 2002 452 Slope +HOU 38089 2002 9824 Stark +HOU 38091 2002 1229 Steele +HOU 38093 2002 9850 Stutsman +HOU 38095 2002 1557 Towner +HOU 38097 2002 3702 Traill +HOU 38099 2002 5737 Walsh +HOU 38101 2002 25358 Ward +HOU 38103 2002 2642 Wells +HOU 38105 2002 9695 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_LOGGN.ALO new file mode 100644 index 0000000..ae80933 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_LOGGN.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 38000 2002 4084082 ND +LOG 38001 2002 0 Adams +LOG 38003 2002 5771 Barnes +LOG 38005 2002 14933 Benson +LOG 38007 2002 0 Billings +LOG 38009 2002 20479 Bottineau +LOG 38011 2002 0 Bowman +LOG 38013 2002 21457 Burke +LOG 38015 2002 56629 Burleigh +LOG 38017 2002 305788 Cass +LOG 38019 2002 20945 Cavalier +LOG 38021 2002 19911 Dickey +LOG 38023 2002 4292 Divide +LOG 38025 2002 60821 Dunn +LOG 38027 2002 0 Eddy +LOG 38029 2002 0 Emmons +LOG 38031 2002 9755 Foster +LOG 38033 2002 0 Golden Valley +LOG 38035 2002 212909 Grand Forks +LOG 38037 2002 0 Grant +LOG 38039 2002 0 Griggs +LOG 38041 2002 20686 Hettinger +LOG 38043 2002 56693 Kidder +LOG 38045 2002 24824 LaMoure +LOG 38047 2002 0 Logan +LOG 38049 2002 137777 McHenry +LOG 38051 2002 5172 McIntosh +LOG 38053 2002 85387 McKenzie +LOG 38055 2002 12412 McLean +LOG 38057 2002 299 Mercer +LOG 38059 2002 32588 Morton +LOG 38061 2002 9995 Mountrail +LOG 38063 2002 597262 Nelson +LOG 38065 2002 0 Oliver +LOG 38067 2002 726774 Pembina +LOG 38069 2002 0 Pierce +LOG 38071 2002 109896 Ramsey +LOG 38073 2002 243327 Ransom +LOG 38075 2002 160168 Renville +LOG 38077 2002 147054 Richland +LOG 38079 2002 113302 Rolette +LOG 38081 2002 8565 Sargent +LOG 38083 2002 7124 Sheridan +LOG 38085 2002 3278 Sioux +LOG 38087 2002 6004 Slope +LOG 38089 2002 181040 Stark +LOG 38091 2002 8720 Steele +LOG 38093 2002 101945 Stutsman +LOG 38095 2002 0 Towner +LOG 38097 2002 152614 Traill +LOG 38099 2002 65521 Walsh +LOG 38101 2002 305500 Ward +LOG 38103 2002 0 Wells +LOG 38105 2002 6464 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_LSCAP.ALO new file mode 100644 index 0000000..10c6a88 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_LSCAP.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 38000 2002 284 ND +LSC 38001 2002 0 Adams +LSC 38003 2002 4 Barnes +LSC 38005 2002 0 Benson +LSC 38007 2002 0 Billings +LSC 38009 2002 4 Bottineau +LSC 38011 2002 4 Bowman +LSC 38013 2002 0 Burke +LSC 38015 2002 27 Burleigh +LSC 38017 2002 83 Cass +LSC 38019 2002 0 Cavalier +LSC 38021 2002 4 Dickey +LSC 38023 2002 0 Divide +LSC 38025 2002 0 Dunn +LSC 38027 2002 0 Eddy +LSC 38029 2002 0 Emmons +LSC 38031 2002 0 Foster +LSC 38033 2002 0 Golden Valley +LSC 38035 2002 26 Grand Forks +LSC 38037 2002 0 Grant +LSC 38039 2002 0 Griggs +LSC 38041 2002 0 Hettinger +LSC 38043 2002 0 Kidder +LSC 38045 2002 0 LaMoure +LSC 38047 2002 0 Logan +LSC 38049 2002 4 McHenry +LSC 38051 2002 4 McIntosh +LSC 38053 2002 4 McKenzie +LSC 38055 2002 4 McLean +LSC 38057 2002 4 Mercer +LSC 38059 2002 17 Morton +LSC 38061 2002 0 Mountrail +LSC 38063 2002 0 Nelson +LSC 38065 2002 4 Oliver +LSC 38067 2002 4 Pembina +LSC 38069 2002 0 Pierce +LSC 38071 2002 4 Ramsey +LSC 38073 2002 0 Ransom +LSC 38075 2002 4 Renville +LSC 38077 2002 21 Richland +LSC 38079 2002 4 Rolette +LSC 38081 2002 0 Sargent +LSC 38083 2002 0 Sheridan +LSC 38085 2002 4 Sioux +LSC 38087 2002 0 Slope +LSC 38089 2002 7 Stark +LSC 38091 2002 4 Steele +LSC 38093 2002 4 Stutsman +LSC 38095 2002 0 Towner +LSC 38097 2002 4 Traill +LSC 38099 2002 1 Walsh +LSC 38101 2002 26 Ward +LSC 38103 2002 0 Wells +LSC 38105 2002 4 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_MNFG.ALO new file mode 100644 index 0000000..1bd6fe2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_MNFG.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 38000 2002 39922 ND +MFG 38001 2002 22 Adams +MFG 38003 2002 784 Barnes +MFG 38005 2002 231 Benson +MFG 38007 2002 0 Billings +MFG 38009 2002 176 Bottineau +MFG 38011 2002 56 Bowman +MFG 38013 2002 6 Burke +MFG 38015 2002 2831 Burleigh +MFG 38017 2002 12953 Cass +MFG 38019 2002 76 Cavalier +MFG 38021 2002 188 Dickey +MFG 38023 2002 56 Divide +MFG 38025 2002 315 Dunn +MFG 38027 2002 56 Eddy +MFG 38029 2002 43 Emmons +MFG 38031 2002 336 Foster +MFG 38033 2002 14 Golden Valley +MFG 38035 2002 2149 Grand Forks +MFG 38037 2002 104 Grant +MFG 38039 2002 193 Griggs +MFG 38041 2002 14 Hettinger +MFG 38043 2002 29 Kidder +MFG 38045 2002 216 LaMoure +MFG 38047 2002 20 Logan +MFG 38049 2002 116 McHenry +MFG 38051 2002 188 McIntosh +MFG 38053 2002 79 McKenzie +MFG 38055 2002 80 McLean +MFG 38057 2002 79 Mercer +MFG 38059 2002 1380 Morton +MFG 38061 2002 116 Mountrail +MFG 38063 2002 121 Nelson +MFG 38065 2002 49 Oliver +MFG 38067 2002 1919 Pembina +MFG 38069 2002 121 Pierce +MFG 38071 2002 347 Ramsey +MFG 38073 2002 257 Ransom +MFG 38075 2002 31 Renville +MFG 38077 2002 3692 Richland +MFG 38079 2002 1003 Rolette +MFG 38081 2002 3059 Sargent +MFG 38083 2002 65 Sheridan +MFG 38085 2002 0 Sioux +MFG 38087 2002 0 Slope +MFG 38089 2002 1593 Stark +MFG 38091 2002 140 Steele +MFG 38093 2002 1428 Stutsman +MFG 38095 2002 265 Towner +MFG 38097 2002 407 Traill +MFG 38099 2002 1035 Walsh +MFG 38101 2002 1000 Ward +MFG 38103 2002 74 Wells +MFG 38105 2002 410 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_OIL.ALO new file mode 100644 index 0000000..3878d8a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_OIL.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 38000 2002 1658 ND +OIL 38001 2002 0 Adams +OIL 38003 2002 0 Barnes +OIL 38005 2002 0 Benson +OIL 38007 2002 0 Billings +OIL 38009 2002 59 Bottineau +OIL 38011 2002 0 Bowman +OIL 38013 2002 10 Burke +OIL 38015 2002 10 Burleigh +OIL 38017 2002 300 Cass +OIL 38019 2002 0 Cavalier +OIL 38021 2002 0 Dickey +OIL 38023 2002 0 Divide +OIL 38025 2002 0 Dunn +OIL 38027 2002 0 Eddy +OIL 38029 2002 0 Emmons +OIL 38031 2002 0 Foster +OIL 38033 2002 0 Golden Valley +OIL 38035 2002 10 Grand Forks +OIL 38037 2002 0 Grant +OIL 38039 2002 0 Griggs +OIL 38041 2002 0 Hettinger +OIL 38043 2002 0 Kidder +OIL 38045 2002 0 LaMoure +OIL 38047 2002 0 Logan +OIL 38049 2002 0 McHenry +OIL 38051 2002 10 McIntosh +OIL 38053 2002 59 McKenzie +OIL 38055 2002 0 McLean +OIL 38057 2002 724 Mercer +OIL 38059 2002 49 Morton +OIL 38061 2002 0 Mountrail +OIL 38063 2002 0 Nelson +OIL 38065 2002 0 Oliver +OIL 38067 2002 0 Pembina +OIL 38069 2002 0 Pierce +OIL 38071 2002 0 Ramsey +OIL 38073 2002 0 Ransom +OIL 38075 2002 10 Renville +OIL 38077 2002 0 Richland +OIL 38079 2002 0 Rolette +OIL 38081 2002 0 Sargent +OIL 38083 2002 0 Sheridan +OIL 38085 2002 0 Sioux +OIL 38087 2002 0 Slope +OIL 38089 2002 10 Stark +OIL 38091 2002 0 Steele +OIL 38093 2002 0 Stutsman +OIL 38095 2002 0 Towner +OIL 38097 2002 0 Traill +OIL 38099 2002 0 Walsh +OIL 38101 2002 300 Ward +OIL 38103 2002 0 Wells +OIL 38105 2002 107 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_POP.ALO new file mode 100644 index 0000000..18a4367 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_POP.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 38000 2002 633799 ND +POP 38001 2002 2512 Adams +POP 38003 2002 11253 Barnes +POP 38005 2002 6861 Benson +POP 38007 2002 874 Billings +POP 38009 2002 6890 Bottineau +POP 38011 2002 3090 Bowman +POP 38013 2002 2118 Burke +POP 38015 2002 70957 Burleigh +POP 38017 2002 125225 Cass +POP 38019 2002 4582 Cavalier +POP 38021 2002 5561 Dickey +POP 38023 2002 2199 Divide +POP 38025 2002 3540 Dunn +POP 38027 2002 2631 Eddy +POP 38029 2002 4090 Emmons +POP 38031 2002 3577 Foster +POP 38033 2002 1831 Golden Valley +POP 38035 2002 64874 Grand Forks +POP 38037 2002 2688 Grant +POP 38039 2002 2601 Griggs +POP 38041 2002 2593 Hettinger +POP 38043 2002 2593 Kidder +POP 38045 2002 4571 LaMoure +POP 38047 2002 2193 Logan +POP 38049 2002 5727 McHenry +POP 38051 2002 3231 McIntosh +POP 38053 2002 5674 McKenzie +POP 38055 2002 9016 McLean +POP 38057 2002 8526 Mercer +POP 38059 2002 25231 Morton +POP 38061 2002 6501 Mountrail +POP 38063 2002 3462 Nelson +POP 38065 2002 1952 Oliver +POP 38067 2002 8276 Pembina +POP 38069 2002 4535 Pierce +POP 38071 2002 11756 Ramsey +POP 38073 2002 5844 Ransom +POP 38075 2002 2532 Renville +POP 38077 2002 17451 Richland +POP 38079 2002 13766 Rolette +POP 38081 2002 4286 Sargent +POP 38083 2002 1574 Sheridan +POP 38085 2002 4108 Sioux +POP 38087 2002 744 Slope +POP 38089 2002 22186 Stark +POP 38091 2002 2116 Steele +POP 38093 2002 21384 Stutsman +POP 38095 2002 2714 Towner +POP 38097 2002 8317 Traill +POP 38099 2002 11882 Walsh +POP 38101 2002 56785 Ward +POP 38103 2002 4812 Wells +POP 38105 2002 19507 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_RAIL.ALO new file mode 100644 index 0000000..d1778b9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_RAIL.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 38000 2002 17144.320 ND +RR 38001 2002 117.120 Adams +RR 38003 2002 1326.220 Barnes +RR 38005 2002 23.220 Benson +RR 38007 2002 658.560 Billings +RR 38009 2002 22.120 Bottineau +RR 38011 2002 194.050 Bowman +RR 38013 2002 167.340 Burke +RR 38015 2002 1117.450 Burleigh +RR 38017 2002 1186.770 Cass +RR 38019 2002 45.060 Cavalier +RR 38021 2002 13.360 Dickey +RR 38023 2002 48.190 Divide +RR 38025 2002 0.000 Dunn +RR 38027 2002 521.650 Eddy +RR 38029 2002 0.000 Emmons +RR 38031 2002 608.280 Foster +RR 38033 2002 1083.140 Golden Valley +RR 38035 2002 130.340 Grand Forks +RR 38037 2002 0.000 Grant +RR 38039 2002 559.190 Griggs +RR 38041 2002 0.000 Hettinger +RR 38043 2002 869.350 Kidder +RR 38045 2002 0.000 LaMoure +RR 38047 2002 0.000 Logan +RR 38049 2002 826.190 McHenry +RR 38051 2002 0.000 McIntosh +RR 38053 2002 11.440 McKenzie +RR 38055 2002 26.410 McLean +RR 38057 2002 37.280 Mercer +RR 38059 2002 577.350 Morton +RR 38061 2002 474.710 Mountrail +RR 38063 2002 53.660 Nelson +RR 38065 2002 21.420 Oliver +RR 38067 2002 33.780 Pembina +RR 38069 2002 334.930 Pierce +RR 38071 2002 42.520 Ramsey +RR 38073 2002 166.070 Ransom +RR 38075 2002 99.650 Renville +RR 38077 2002 300.570 Richland +RR 38079 2002 6.630 Rolette +RR 38081 2002 19.500 Sargent +RR 38083 2002 109.340 Sheridan +RR 38085 2002 15.770 Sioux +RR 38087 2002 231.280 Slope +RR 38089 2002 969.420 Stark +RR 38091 2002 242.480 Steele +RR 38093 2002 1246.390 Stutsman +RR 38095 2002 15.990 Towner +RR 38097 2002 85.080 Traill +RR 38099 2002 77.950 Walsh +RR 38101 2002 1079.880 Ward +RR 38103 2002 653.270 Wells +RR 38105 2002 693.950 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_RVPRK.ALO new file mode 100644 index 0000000..6cfd2ac --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_RVPRK.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 38000 2002 25 ND +RVP 38001 2002 0 Adams +RVP 38003 2002 0 Barnes +RVP 38005 2002 1 Benson +RVP 38007 2002 0 Billings +RVP 38009 2002 0 Bottineau +RVP 38011 2002 0 Bowman +RVP 38013 2002 0 Burke +RVP 38015 2002 1 Burleigh +RVP 38017 2002 0 Cass +RVP 38019 2002 0 Cavalier +RVP 38021 2002 2 Dickey +RVP 38023 2002 0 Divide +RVP 38025 2002 0 Dunn +RVP 38027 2002 0 Eddy +RVP 38029 2002 0 Emmons +RVP 38031 2002 0 Foster +RVP 38033 2002 0 Golden Valley +RVP 38035 2002 1 Grand Forks +RVP 38037 2002 1 Grant +RVP 38039 2002 0 Griggs +RVP 38041 2002 0 Hettinger +RVP 38043 2002 1 Kidder +RVP 38045 2002 0 LaMoure +RVP 38047 2002 0 Logan +RVP 38049 2002 0 McHenry +RVP 38051 2002 0 McIntosh +RVP 38053 2002 1 McKenzie +RVP 38055 2002 2 McLean +RVP 38057 2002 1 Mercer +RVP 38059 2002 0 Morton +RVP 38061 2002 1 Mountrail +RVP 38063 2002 0 Nelson +RVP 38065 2002 0 Oliver +RVP 38067 2002 0 Pembina +RVP 38069 2002 1 Pierce +RVP 38071 2002 0 Ramsey +RVP 38073 2002 0 Ransom +RVP 38075 2002 0 Renville +RVP 38077 2002 0 Richland +RVP 38079 2002 0 Rolette +RVP 38081 2002 0 Sargent +RVP 38083 2002 1 Sheridan +RVP 38085 2002 0 Sioux +RVP 38087 2002 0 Slope +RVP 38089 2002 3 Stark +RVP 38091 2002 0 Steele +RVP 38093 2002 3 Stutsman +RVP 38095 2002 0 Towner +RVP 38097 2002 1 Traill +RVP 38099 2002 0 Walsh +RVP 38101 2002 1 Ward +RVP 38103 2002 0 Wells +RVP 38105 2002 3 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_SBC.ALO new file mode 100644 index 0000000..165a763 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_SBC.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 38000 2002 284 ND +SBC 38001 2002 0 Adams +SBC 38003 2002 6 Barnes +SBC 38005 2002 0 Benson +SBC 38007 2002 0 Billings +SBC 38009 2002 3 Bottineau +SBC 38011 2002 2 Bowman +SBC 38013 2002 0 Burke +SBC 38015 2002 35 Burleigh +SBC 38017 2002 83 Cass +SBC 38019 2002 0 Cavalier +SBC 38021 2002 3 Dickey +SBC 38023 2002 0 Divide +SBC 38025 2002 0 Dunn +SBC 38027 2002 0 Eddy +SBC 38029 2002 0 Emmons +SBC 38031 2002 0 Foster +SBC 38033 2002 0 Golden Valley +SBC 38035 2002 26 Grand Forks +SBC 38037 2002 0 Grant +SBC 38039 2002 0 Griggs +SBC 38041 2002 0 Hettinger +SBC 38043 2002 0 Kidder +SBC 38045 2002 0 LaMoure +SBC 38047 2002 0 Logan +SBC 38049 2002 3 McHenry +SBC 38051 2002 2 McIntosh +SBC 38053 2002 3 McKenzie +SBC 38055 2002 5 McLean +SBC 38057 2002 4 Mercer +SBC 38059 2002 17 Morton +SBC 38061 2002 0 Mountrail +SBC 38063 2002 0 Nelson +SBC 38065 2002 1 Oliver +SBC 38067 2002 4 Pembina +SBC 38069 2002 0 Pierce +SBC 38071 2002 6 Ramsey +SBC 38073 2002 0 Ransom +SBC 38075 2002 1 Renville +SBC 38077 2002 21 Richland +SBC 38079 2002 7 Rolette +SBC 38081 2002 0 Sargent +SBC 38083 2002 0 Sheridan +SBC 38085 2002 2 Sioux +SBC 38087 2002 0 Slope +SBC 38089 2002 7 Stark +SBC 38091 2002 1 Steele +SBC 38093 2002 4 Stutsman +SBC 38095 2002 0 Towner +SBC 38097 2002 4 Traill +SBC 38099 2002 1 Walsh +SBC 38101 2002 29 Ward +SBC 38103 2002 0 Wells +SBC 38105 2002 4 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_SBR.ALO new file mode 100644 index 0000000..5f3e018 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_SBR.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 38000 2002 294175 ND +SBR 38001 2002 1416 Adams +SBR 38003 2002 5590 Barnes +SBR 38005 2002 2949 Benson +SBR 38007 2002 528 Billings +SBR 38009 2002 4434 Bottineau +SBR 38011 2002 1595 Bowman +SBR 38013 2002 1409 Burke +SBR 38015 2002 30134 Burleigh +SBR 38017 2002 56212 Cass +SBR 38019 2002 2728 Cavalier +SBR 38021 2002 2656 Dickey +SBR 38023 2002 1466 Divide +SBR 38025 2002 1964 Dunn +SBR 38027 2002 1423 Eddy +SBR 38029 2002 2177 Emmons +SBR 38031 2002 1789 Foster +SBR 38033 2002 966 Golden Valley +SBR 38035 2002 27473 Grand Forks +SBR 38037 2002 1729 Grant +SBR 38039 2002 1517 Griggs +SBR 38041 2002 1417 Hettinger +SBR 38043 2002 1630 Kidder +SBR 38045 2002 2279 LaMoure +SBR 38047 2002 1193 Logan +SBR 38049 2002 3000 McHenry +SBR 38051 2002 1860 McIntosh +SBR 38053 2002 2742 McKenzie +SBR 38055 2002 5267 McLean +SBR 38057 2002 4434 Mercer +SBR 38059 2002 10777 Morton +SBR 38061 2002 3435 Mountrail +SBR 38063 2002 2015 Nelson +SBR 38065 2002 898 Oliver +SBR 38067 2002 4097 Pembina +SBR 38069 2002 2275 Pierce +SBR 38071 2002 5749 Ramsey +SBR 38073 2002 2677 Ransom +SBR 38075 2002 1420 Renville +SBR 38077 2002 7599 Richland +SBR 38079 2002 5035 Rolette +SBR 38081 2002 2018 Sargent +SBR 38083 2002 922 Sheridan +SBR 38085 2002 1235 Sioux +SBR 38087 2002 452 Slope +SBR 38089 2002 9824 Stark +SBR 38091 2002 1229 Steele +SBR 38093 2002 9850 Stutsman +SBR 38095 2002 1557 Towner +SBR 38097 2002 3702 Traill +SBR 38099 2002 5737 Walsh +SBR 38101 2002 25358 Ward +SBR 38103 2002 2642 Wells +SBR 38105 2002 9695 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_SNOWM.ALO new file mode 100644 index 0000000..a454303 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_SNOWM.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 38000 2002 14419 ND +SNM 38001 2002 398 Adams +SNM 38003 2002 89 Barnes +SNM 38005 2002 146 Benson +SNM 38007 2002 1144 Billings +SNM 38009 2002 145 Bottineau +SNM 38011 2002 324 Bowman +SNM 38013 2002 472 Burke +SNM 38015 2002 14 Burleigh +SNM 38017 2002 8 Cass +SNM 38019 2002 218 Cavalier +SNM 38021 2002 180 Dickey +SNM 38023 2002 455 Divide +SNM 38025 2002 282 Dunn +SNM 38027 2002 380 Eddy +SNM 38029 2002 244 Emmons +SNM 38031 2002 280 Foster +SNM 38033 2002 546 Golden Valley +SNM 38035 2002 15 Grand Forks +SNM 38037 2002 372 Grant +SNM 38039 2002 384 Griggs +SNM 38041 2002 386 Hettinger +SNM 38043 2002 386 Kidder +SNM 38045 2002 219 LaMoure +SNM 38047 2002 456 Logan +SNM 38049 2002 175 McHenry +SNM 38051 2002 310 McIntosh +SNM 38053 2002 176 McKenzie +SNM 38055 2002 111 McLean +SNM 38057 2002 117 Mercer +SNM 38059 2002 40 Morton +SNM 38061 2002 154 Mountrail +SNM 38063 2002 289 Nelson +SNM 38065 2002 512 Oliver +SNM 38067 2002 121 Pembina +SNM 38069 2002 221 Pierce +SNM 38071 2002 85 Ramsey +SNM 38073 2002 171 Ransom +SNM 38075 2002 395 Renville +SNM 38077 2002 57 Richland +SNM 38079 2002 73 Rolette +SNM 38081 2002 233 Sargent +SNM 38083 2002 635 Sheridan +SNM 38085 2002 243 Sioux +SNM 38087 2002 1344 Slope +SNM 38089 2002 45 Stark +SNM 38091 2002 473 Steele +SNM 38093 2002 47 Stutsman +SNM 38095 2002 368 Towner +SNM 38097 2002 120 Traill +SNM 38099 2002 84 Walsh +SNM 38101 2002 18 Ward +SNM 38103 2002 208 Wells +SNM 38105 2002 51 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_WIB.ALO new file mode 100644 index 0000000..df6a854 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_WIB.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 38000 1990 4430 ND +WIB 38001 1990 2 Adams +WIB 38003 1990 56 Barnes +WIB 38005 1990 132 Benson +WIB 38007 1990 5 Billings +WIB 38009 1990 76 Bottineau +WIB 38011 1990 13 Bowman +WIB 38013 1990 67 Burke +WIB 38015 1990 91 Burleigh +WIB 38017 1990 6 Cass +WIB 38019 1990 55 Cavalier +WIB 38021 1990 28 Dickey +WIB 38023 1990 90 Divide +WIB 38025 1990 187 Dunn +WIB 38027 1990 32 Eddy +WIB 38029 1990 116 Emmons +WIB 38031 1990 30 Foster +WIB 38033 1990 1 Golden Valley +WIB 38035 1990 5 Grand Forks +WIB 38037 1990 17 Grant +WIB 38039 1990 20 Griggs +WIB 38041 1990 4 Hettinger +WIB 38043 1990 211 Kidder +WIB 38045 1990 9 LaMoure +WIB 38047 1990 48 Logan +WIB 38049 1990 97 McHenry +WIB 38051 1990 51 McIntosh +WIB 38053 1990 308 McKenzie +WIB 38055 1990 564 McLean +WIB 38057 1990 174 Mercer +WIB 38059 1990 49 Morton +WIB 38061 1990 303 Mountrail +WIB 38063 1990 70 Nelson +WIB 38065 1990 20 Oliver +WIB 38067 1990 8 Pembina +WIB 38069 1990 167 Pierce +WIB 38071 1990 297 Ramsey +WIB 38073 1990 4 Ransom +WIB 38075 1990 45 Renville +WIB 38077 1990 23 Richland +WIB 38079 1990 95 Rolette +WIB 38081 1990 22 Sargent +WIB 38083 1990 88 Sheridan +WIB 38085 1990 89 Sioux +WIB 38087 1990 3 Slope +WIB 38089 1990 6 Stark +WIB 38091 1990 8 Steele +WIB 38093 1990 199 Stutsman +WIB 38095 1990 42 Towner +WIB 38097 1990 2 Traill +WIB 38099 1990 32 Walsh +WIB 38101 1990 112 Ward +WIB 38103 1990 50 Wells +WIB 38105 1990 201 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/ND_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/ND_WOB.ALO new file mode 100644 index 0000000..3b431c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/ND_WOB.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 38000 1990 4430 ND +WOB 38001 1990 2 Adams +WOB 38003 1990 56 Barnes +WOB 38005 1990 132 Benson +WOB 38007 1990 5 Billings +WOB 38009 1990 76 Bottineau +WOB 38011 1990 13 Bowman +WOB 38013 1990 67 Burke +WOB 38015 1990 91 Burleigh +WOB 38017 1990 6 Cass +WOB 38019 1990 55 Cavalier +WOB 38021 1990 28 Dickey +WOB 38023 1990 90 Divide +WOB 38025 1990 187 Dunn +WOB 38027 1990 32 Eddy +WOB 38029 1990 116 Emmons +WOB 38031 1990 30 Foster +WOB 38033 1990 1 Golden Valley +WOB 38035 1990 5 Grand Forks +WOB 38037 1990 17 Grant +WOB 38039 1990 20 Griggs +WOB 38041 1990 4 Hettinger +WOB 38043 1990 211 Kidder +WOB 38045 1990 9 LaMoure +WOB 38047 1990 48 Logan +WOB 38049 1990 97 McHenry +WOB 38051 1990 51 McIntosh +WOB 38053 1990 308 McKenzie +WOB 38055 1990 564 McLean +WOB 38057 1990 174 Mercer +WOB 38059 1990 49 Morton +WOB 38061 1990 303 Mountrail +WOB 38063 1990 70 Nelson +WOB 38065 1990 20 Oliver +WOB 38067 1990 8 Pembina +WOB 38069 1990 167 Pierce +WOB 38071 1990 297 Ramsey +WOB 38073 1990 4 Ransom +WOB 38075 1990 45 Renville +WOB 38077 1990 23 Richland +WOB 38079 1990 95 Rolette +WOB 38081 1990 22 Sargent +WOB 38083 1990 88 Sheridan +WOB 38085 1990 89 Sioux +WOB 38087 1990 3 Slope +WOB 38089 1990 6 Stark +WOB 38091 1990 8 Steele +WOB 38093 1990 199 Stutsman +WOB 38095 1990 42 Towner +WOB 38097 1990 2 Traill +WOB 38099 1990 32 Walsh +WOB 38101 1990 112 Ward +WOB 38103 1990 50 Wells +WOB 38105 1990 201 Williams +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_AIRTR.ALO new file mode 100644 index 0000000..aa0d3dd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_AIRTR.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 31000 2002 366.671 NE +AIR 31001 2002 0.049 Adams +AIR 31003 2002 0.000 Antelope +AIR 31005 2002 0.000 Arthur +AIR 31007 2002 0.000 Banner +AIR 31009 2002 0.000 Blaine +AIR 31011 2002 0.010 Boone +AIR 31013 2002 0.060 Box Butte +AIR 31015 2002 0.000 Boyd +AIR 31017 2002 0.009 Brown +AIR 31019 2002 0.230 Buffalo +AIR 31021 2002 0.020 Burt +AIR 31023 2002 0.000 Butler +AIR 31025 2002 0.092 Cass +AIR 31027 2002 0.000 Cedar +AIR 31029 2002 0.020 Chase +AIR 31031 2002 0.010 Cherry +AIR 31033 2002 0.020 Cheyenne +AIR 31035 2002 0.003 Clay +AIR 31037 2002 0.000 Colfax +AIR 31039 2002 0.000 Cuming +AIR 31041 2002 0.020 Custer +AIR 31043 2002 0.000 Dakota +AIR 31045 2002 0.022 Dawes +AIR 31047 2002 0.051 Dawson +AIR 31049 2002 0.005 Deuel +AIR 31051 2002 0.000 Dixon +AIR 31053 2002 0.040 Dodge +AIR 31055 2002 254.960 Douglas +AIR 31057 2002 0.000 Dundy +AIR 31059 2002 0.020 Fillmore +AIR 31061 2002 0.000 Franklin +AIR 31063 2002 0.000 Frontier +AIR 31065 2002 0.027 Furnas +AIR 31067 2002 0.040 Gage +AIR 31069 2002 0.009 Garden +AIR 31071 2002 0.006 Garfield +AIR 31073 2002 0.000 Gosper +AIR 31075 2002 0.000 Grant +AIR 31077 2002 0.000 Greeley +AIR 31079 2002 0.810 Hall +AIR 31081 2002 0.040 Hamilton +AIR 31083 2002 0.000 Harlan +AIR 31085 2002 0.000 Hayes +AIR 31087 2002 0.000 Hitchcock +AIR 31089 2002 0.040 Holt +AIR 31091 2002 0.000 Hooker +AIR 31093 2002 0.000 Howard +AIR 31095 2002 0.020 Jefferson +AIR 31097 2002 0.000 Johnson +AIR 31099 2002 0.030 Kearney +AIR 31101 2002 0.010 Keith +AIR 31103 2002 0.000 Keya Paha +AIR 31105 2002 0.020 Kimball +AIR 31107 2002 0.000 Knox +AIR 31109 2002 30.830 Lancaster +AIR 31111 2002 26.040 Lincoln +AIR 31113 2002 0.000 Logan +AIR 31115 2002 0.000 Loup +AIR 31117 2002 0.000 McPherson +AIR 31119 2002 19.479 Madison +AIR 31121 2002 0.000 Merrick +AIR 31123 2002 0.000 Morrill +AIR 31125 2002 0.000 Nance +AIR 31127 2002 0.000 Nemaha +AIR 31129 2002 0.008 Nuckolls +AIR 31131 2002 0.000 Otoe +AIR 31133 2002 0.000 Pawnee +AIR 31135 2002 0.020 Perkins +AIR 31137 2002 0.030 Phelps +AIR 31139 2002 0.000 Pierce +AIR 31141 2002 0.074 Platte +AIR 31143 2002 0.000 Polk +AIR 31145 2002 0.050 Red Willow +AIR 31147 2002 0.037 Richardson +AIR 31149 2002 0.009 Rock +AIR 31151 2002 0.070 Saline +AIR 31153 2002 0.000 Sarpy +AIR 31155 2002 0.050 Saunders +AIR 31157 2002 33.200 Scotts Bluff +AIR 31159 2002 0.000 Seward +AIR 31161 2002 0.010 Sheridan +AIR 31163 2002 0.000 Sherman +AIR 31165 2002 0.000 Sioux +AIR 31167 2002 0.000 Stanton +AIR 31169 2002 0.014 Thayer +AIR 31171 2002 0.000 Thomas +AIR 31173 2002 0.000 Thurston +AIR 31175 2002 0.010 Valley +AIR 31177 2002 0.000 Washington +AIR 31179 2002 0.020 Wayne +AIR 31181 2002 0.000 Webster +AIR 31183 2002 0.000 Wheeler +AIR 31185 2002 0.030 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_COAL.ALO new file mode 100644 index 0000000..c5277d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_COAL.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 31000 2002 0 NE +MIN 31001 2002 0 Adams +MIN 31003 2002 0 Antelope +MIN 31005 2002 0 Arthur +MIN 31007 2002 0 Banner +MIN 31009 2002 0 Blaine +MIN 31011 2002 0 Boone +MIN 31013 2002 0 Box Butte +MIN 31015 2002 0 Boyd +MIN 31017 2002 0 Brown +MIN 31019 2002 0 Buffalo +MIN 31021 2002 0 Burt +MIN 31023 2002 0 Butler +MIN 31025 2002 0 Cass +MIN 31027 2002 0 Cedar +MIN 31029 2002 0 Chase +MIN 31031 2002 0 Cherry +MIN 31033 2002 0 Cheyenne +MIN 31035 2002 0 Clay +MIN 31037 2002 0 Colfax +MIN 31039 2002 0 Cuming +MIN 31041 2002 0 Custer +MIN 31043 2002 0 Dakota +MIN 31045 2002 0 Dawes +MIN 31047 2002 0 Dawson +MIN 31049 2002 0 Deuel +MIN 31051 2002 0 Dixon +MIN 31053 2002 0 Dodge +MIN 31055 2002 0 Douglas +MIN 31057 2002 0 Dundy +MIN 31059 2002 0 Fillmore +MIN 31061 2002 0 Franklin +MIN 31063 2002 0 Frontier +MIN 31065 2002 0 Furnas +MIN 31067 2002 0 Gage +MIN 31069 2002 0 Garden +MIN 31071 2002 0 Garfield +MIN 31073 2002 0 Gosper +MIN 31075 2002 0 Grant +MIN 31077 2002 0 Greeley +MIN 31079 2002 0 Hall +MIN 31081 2002 0 Hamilton +MIN 31083 2002 0 Harlan +MIN 31085 2002 0 Hayes +MIN 31087 2002 0 Hitchcock +MIN 31089 2002 0 Holt +MIN 31091 2002 0 Hooker +MIN 31093 2002 0 Howard +MIN 31095 2002 0 Jefferson +MIN 31097 2002 0 Johnson +MIN 31099 2002 0 Kearney +MIN 31101 2002 0 Keith +MIN 31103 2002 0 Keya Paha +MIN 31105 2002 0 Kimball +MIN 31107 2002 0 Knox +MIN 31109 2002 0 Lancaster +MIN 31111 2002 0 Lincoln +MIN 31113 2002 0 Logan +MIN 31115 2002 0 Loup +MIN 31117 2002 0 McPherson +MIN 31119 2002 0 Madison +MIN 31121 2002 0 Merrick +MIN 31123 2002 0 Morrill +MIN 31125 2002 0 Nance +MIN 31127 2002 0 Nemaha +MIN 31129 2002 0 Nuckolls +MIN 31131 2002 0 Otoe +MIN 31133 2002 0 Pawnee +MIN 31135 2002 0 Perkins +MIN 31137 2002 0 Phelps +MIN 31139 2002 0 Pierce +MIN 31141 2002 0 Platte +MIN 31143 2002 0 Polk +MIN 31145 2002 0 Red Willow +MIN 31147 2002 0 Richardson +MIN 31149 2002 0 Rock +MIN 31151 2002 0 Saline +MIN 31153 2002 0 Sarpy +MIN 31155 2002 0 Saunders +MIN 31157 2002 0 Scotts Bluff +MIN 31159 2002 0 Seward +MIN 31161 2002 0 Sheridan +MIN 31163 2002 0 Sherman +MIN 31165 2002 0 Sioux +MIN 31167 2002 0 Stanton +MIN 31169 2002 0 Thayer +MIN 31171 2002 0 Thomas +MIN 31173 2002 0 Thurston +MIN 31175 2002 0 Valley +MIN 31177 2002 0 Washington +MIN 31179 2002 0 Wayne +MIN 31181 2002 0 Webster +MIN 31183 2002 0 Wheeler +MIN 31185 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_CONST.ALO new file mode 100644 index 0000000..18d62ca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_CONST.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 31000 2003 3497260 NE +CON 31001 2003 31600 Adams +CON 31003 2003 12348 Antelope +CON 31005 2003 0 Arthur +CON 31007 2003 0 Banner +CON 31009 2003 2672 Blaine +CON 31011 2003 4404 Boone +CON 31013 2003 13381 Box Butte +CON 31015 2003 10842 Boyd +CON 31017 2003 2507 Brown +CON 31019 2003 75669 Buffalo +CON 31021 2003 6825 Burt +CON 31023 2003 10427 Butler +CON 31025 2003 30507 Cass +CON 31027 2003 5881 Cedar +CON 31029 2003 1039 Chase +CON 31031 2003 5545 Cherry +CON 31033 2003 17926 Cheyenne +CON 31035 2003 3325 Clay +CON 31037 2003 11158 Colfax +CON 31039 2003 17635 Cuming +CON 31041 2003 15122 Custer +CON 31043 2003 15673 Dakota +CON 31045 2003 6377 Dawes +CON 31047 2003 23317 Dawson +CON 31049 2003 8967 Deuel +CON 31051 2003 6665 Dixon +CON 31053 2003 37990 Dodge +CON 31055 2003 1128776 Douglas +CON 31057 2003 3808 Dundy +CON 31059 2003 4300 Fillmore +CON 31061 2003 2914 Franklin +CON 31063 2003 5918 Frontier +CON 31065 2003 2231 Furnas +CON 31067 2003 260607 Gage +CON 31069 2003 684 Garden +CON 31071 2003 1313 Garfield +CON 31073 2003 703 Gosper +CON 31075 2003 0 Grant +CON 31077 2003 2449 Greeley +CON 31079 2003 79126 Hall +CON 31081 2003 9660 Hamilton +CON 31083 2003 3576 Harlan +CON 31085 2003 2437 Hayes +CON 31087 2003 3048 Hitchcock +CON 31089 2003 13790 Holt +CON 31091 2003 151 Hooker +CON 31093 2003 4017 Howard +CON 31095 2003 7723 Jefferson +CON 31097 2003 4741 Johnson +CON 31099 2003 42380 Kearney +CON 31101 2003 6840 Keith +CON 31103 2003 2965 Keya Paha +CON 31105 2003 3023 Kimball +CON 31107 2003 5059 Knox +CON 31109 2003 663251 Lancaster +CON 31111 2003 35004 Lincoln +CON 31113 2003 0 Logan +CON 31115 2003 0 Loup +CON 31117 2003 0 McPherson +CON 31119 2003 60729 Madison +CON 31121 2003 64840 Merrick +CON 31123 2003 3384 Morrill +CON 31125 2003 4216 Nance +CON 31127 2003 5391 Nemaha +CON 31129 2003 2523 Nuckolls +CON 31131 2003 14275 Otoe +CON 31133 2003 1290 Pawnee +CON 31135 2003 1226 Perkins +CON 31137 2003 5421 Phelps +CON 31139 2003 2958 Pierce +CON 31141 2003 33692 Platte +CON 31143 2003 3133 Polk +CON 31145 2003 7289 Red Willow +CON 31147 2003 4919 Richardson +CON 31149 2003 1700 Rock +CON 31151 2003 19840 Saline +CON 31153 2003 406140 Sarpy +CON 31155 2003 24377 Saunders +CON 31157 2003 32565 Scotts Bluff +CON 31159 2003 22311 Seward +CON 31161 2003 5286 Sheridan +CON 31163 2003 2064 Sherman +CON 31165 2003 8560 Sioux +CON 31167 2003 2243 Stanton +CON 31169 2003 3563 Thayer +CON 31171 2003 0 Thomas +CON 31173 2003 6674 Thurston +CON 31175 2003 2057 Valley +CON 31177 2003 31089 Washington +CON 31179 2003 14193 Wayne +CON 31181 2003 2683 Webster +CON 31183 2003 641 Wheeler +CON 31185 2003 17687 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_FARMS.ALO new file mode 100644 index 0000000..68abbef --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_FARMS.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 31000 2002 17336624 NE +FRM 31001 2002 259957 Adams +FRM 31003 2002 334299 Antelope +FRM 31005 2002 24000 Arthur +FRM 31007 2002 74733 Banner +FRM 31009 2002 29017 Blaine +FRM 31011 2002 270214 Boone +FRM 31013 2002 221164 Box Butte +FRM 31015 2002 83335 Boyd +FRM 31017 2002 103352 Brown +FRM 31019 2002 290716 Buffalo +FRM 31021 2002 256778 Burt +FRM 31023 2002 280867 Butler +FRM 31025 2002 256427 Cass +FRM 31027 2002 323332 Cedar +FRM 31029 2002 212440 Chase +FRM 31031 2002 334745 Cherry +FRM 31033 2002 314456 Cheyenne +FRM 31035 2002 282152 Clay +FRM 31037 2002 198445 Colfax +FRM 31039 2002 302800 Cuming +FRM 31041 2002 307486 Custer +FRM 31043 2002 110948 Dakota +FRM 31045 2002 76007 Dawes +FRM 31047 2002 275097 Dawson +FRM 31049 2002 132864 Deuel +FRM 31051 2002 164542 Dixon +FRM 31053 2002 294464 Dodge +FRM 31055 2002 76336 Douglas +FRM 31057 2002 128643 Dundy +FRM 31059 2002 310516 Fillmore +FRM 31061 2002 143852 Franklin +FRM 31063 2002 128734 Frontier +FRM 31065 2002 176228 Furnas +FRM 31067 2002 363830 Gage +FRM 31069 2002 110934 Garden +FRM 31071 2002 49914 Garfield +FRM 31073 2002 114123 Gosper +FRM 31075 2002 36351 Grant +FRM 31077 2002 96731 Greeley +FRM 31079 2002 214439 Hall +FRM 31081 2002 302707 Hamilton +FRM 31083 2002 134007 Harlan +FRM 31085 2002 96786 Hayes +FRM 31087 2002 125205 Hitchcock +FRM 31089 2002 483938 Holt +FRM 31091 2002 14210 Hooker +FRM 31093 2002 138884 Howard +FRM 31095 2002 231392 Jefferson +FRM 31097 2002 90457 Johnson +FRM 31099 2002 263304 Kearney +FRM 31101 2002 165774 Keith +FRM 31103 2002 77871 Keya Paha +FRM 31105 2002 144463 Kimball +FRM 31107 2002 262274 Knox +FRM 31109 2002 314148 Lancaster +FRM 31111 2002 289405 Lincoln +FRM 31113 2002 40695 Logan +FRM 31115 2002 28773 Loup +FRM 31117 2002 24550 McPherson +FRM 31119 2002 249923 Madison +FRM 31121 2002 200573 Merrick +FRM 31123 2002 150223 Morrill +FRM 31125 2002 111329 Nance +FRM 31127 2002 180164 Nemaha +FRM 31129 2002 204866 Nuckolls +FRM 31131 2002 233223 Otoe +FRM 31133 2002 110159 Pawnee +FRM 31135 2002 265997 Perkins +FRM 31137 2002 274191 Phelps +FRM 31139 2002 246318 Pierce +FRM 31141 2002 334622 Platte +FRM 31143 2002 209238 Polk +FRM 31145 2002 138404 Red Willow +FRM 31147 2002 196279 Richardson +FRM 31149 2002 118717 Rock +FRM 31151 2002 253769 Saline +FRM 31153 2002 85788 Sarpy +FRM 31155 2002 372650 Saunders +FRM 31157 2002 174454 Scotts Bluff +FRM 31159 2002 277726 Seward +FRM 31161 2002 162103 Sheridan +FRM 31163 2002 98478 Sherman +FRM 31165 2002 59368 Sioux +FRM 31167 2002 150236 Stanton +FRM 31169 2002 265719 Thayer +FRM 31171 2002 9388 Thomas +FRM 31173 2002 167507 Thurston +FRM 31175 2002 107960 Valley +FRM 31177 2002 194705 Washington +FRM 31179 2002 216373 Wayne +FRM 31181 2002 131970 Webster +FRM 31183 2002 82508 Wheeler +FRM 31185 2002 307585 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_GOLF.ALO new file mode 100644 index 0000000..572fa8a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_GOLF.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 31000 2002 155 NE +GC 31001 2002 1 Adams +GC 31003 2002 1 Antelope +GC 31005 2002 1 Arthur +GC 31007 2002 0 Banner +GC 31009 2002 0 Blaine +GC 31011 2002 1 Boone +GC 31013 2002 1 Box Butte +GC 31015 2002 0 Boyd +GC 31017 2002 1 Brown +GC 31019 2002 5 Buffalo +GC 31021 2002 1 Burt +GC 31023 2002 1 Butler +GC 31025 2002 3 Cass +GC 31027 2002 2 Cedar +GC 31029 2002 1 Chase +GC 31031 2002 1 Cherry +GC 31033 2002 1 Cheyenne +GC 31035 2002 2 Clay +GC 31037 2002 1 Colfax +GC 31039 2002 1 Cuming +GC 31041 2002 2 Custer +GC 31043 2002 3 Dakota +GC 31045 2002 1 Dawes +GC 31047 2002 3 Dawson +GC 31049 2002 0 Deuel +GC 31051 2002 1 Dixon +GC 31053 2002 4 Dodge +GC 31055 2002 20 Douglas +GC 31057 2002 1 Dundy +GC 31059 2002 1 Fillmore +GC 31061 2002 0 Franklin +GC 31063 2002 1 Frontier +GC 31065 2002 2 Furnas +GC 31067 2002 3 Gage +GC 31069 2002 1 Garden +GC 31071 2002 1 Garfield +GC 31073 2002 1 Gosper +GC 31075 2002 0 Grant +GC 31077 2002 0 Greeley +GC 31079 2002 4 Hall +GC 31081 2002 2 Hamilton +GC 31083 2002 0 Harlan +GC 31085 2002 0 Hayes +GC 31087 2002 0 Hitchcock +GC 31089 2002 3 Holt +GC 31091 2002 2 Hooker +GC 31093 2002 1 Howard +GC 31095 2002 2 Jefferson +GC 31097 2002 1 Johnson +GC 31099 2002 1 Kearney +GC 31101 2002 2 Keith +GC 31103 2002 0 Keya Paha +GC 31105 2002 0 Kimball +GC 31107 2002 2 Knox +GC 31109 2002 11 Lancaster +GC 31111 2002 4 Lincoln +GC 31113 2002 0 Logan +GC 31115 2002 0 Loup +GC 31117 2002 0 McPherson +GC 31119 2002 6 Madison +GC 31121 2002 2 Merrick +GC 31123 2002 1 Morrill +GC 31125 2002 1 Nance +GC 31127 2002 0 Nemaha +GC 31129 2002 1 Nuckolls +GC 31131 2002 4 Otoe +GC 31133 2002 0 Pawnee +GC 31135 2002 0 Perkins +GC 31137 2002 2 Phelps +GC 31139 2002 2 Pierce +GC 31141 2002 3 Platte +GC 31143 2002 1 Polk +GC 31145 2002 1 Red Willow +GC 31147 2002 2 Richardson +GC 31149 2002 0 Rock +GC 31151 2002 2 Saline +GC 31153 2002 4 Sarpy +GC 31155 2002 4 Saunders +GC 31157 2002 2 Scotts Bluff +GC 31159 2002 2 Seward +GC 31161 2002 0 Sheridan +GC 31163 2002 0 Sherman +GC 31165 2002 0 Sioux +GC 31167 2002 1 Stanton +GC 31169 2002 1 Thayer +GC 31171 2002 0 Thomas +GC 31173 2002 1 Thurston +GC 31175 2002 0 Valley +GC 31177 2002 1 Washington +GC 31179 2002 2 Wayne +GC 31181 2002 1 Webster +GC 31183 2002 0 Wheeler +GC 31185 2002 3 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_HOLSL.ALO new file mode 100644 index 0000000..00de3b0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_HOLSL.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 31000 2002 2972 NE +COM 31001 2002 64 Adams +COM 31003 2002 19 Antelope +COM 31005 2002 0 Arthur +COM 31007 2002 0 Banner +COM 31009 2002 2 Blaine +COM 31011 2002 18 Boone +COM 31013 2002 23 Box Butte +COM 31015 2002 4 Boyd +COM 31017 2002 6 Brown +COM 31019 2002 65 Buffalo +COM 31021 2002 12 Burt +COM 31023 2002 11 Butler +COM 31025 2002 22 Cass +COM 31027 2002 28 Cedar +COM 31029 2002 18 Chase +COM 31031 2002 12 Cherry +COM 31033 2002 17 Cheyenne +COM 31035 2002 15 Clay +COM 31037 2002 20 Colfax +COM 31039 2002 23 Cuming +COM 31041 2002 18 Custer +COM 31043 2002 24 Dakota +COM 31045 2002 15 Dawes +COM 31047 2002 42 Dawson +COM 31049 2002 7 Deuel +COM 31051 2002 8 Dixon +COM 31053 2002 69 Dodge +COM 31055 2002 945 Douglas +COM 31057 2002 3 Dundy +COM 31059 2002 21 Fillmore +COM 31061 2002 5 Franklin +COM 31063 2002 3 Frontier +COM 31065 2002 11 Furnas +COM 31067 2002 45 Gage +COM 31069 2002 3 Garden +COM 31071 2002 3 Garfield +COM 31073 2002 4 Gosper +COM 31075 2002 1 Grant +COM 31077 2002 6 Greeley +COM 31079 2002 105 Hall +COM 31081 2002 22 Hamilton +COM 31083 2002 10 Harlan +COM 31085 2002 1 Hayes +COM 31087 2002 6 Hitchcock +COM 31089 2002 36 Holt +COM 31091 2002 0 Hooker +COM 31093 2002 4 Howard +COM 31095 2002 16 Jefferson +COM 31097 2002 6 Johnson +COM 31099 2002 12 Kearney +COM 31101 2002 21 Keith +COM 31103 2002 2 Keya Paha +COM 31105 2002 7 Kimball +COM 31107 2002 11 Knox +COM 31109 2002 325 Lancaster +COM 31111 2002 54 Lincoln +COM 31113 2002 1 Logan +COM 31115 2002 0 Loup +COM 31117 2002 2 McPherson +COM 31119 2002 79 Madison +COM 31121 2002 18 Merrick +COM 31123 2002 13 Morrill +COM 31125 2002 8 Nance +COM 31127 2002 12 Nemaha +COM 31129 2002 13 Nuckolls +COM 31131 2002 22 Otoe +COM 31133 2002 4 Pawnee +COM 31135 2002 17 Perkins +COM 31137 2002 22 Phelps +COM 31139 2002 14 Pierce +COM 31141 2002 51 Platte +COM 31143 2002 9 Polk +COM 31145 2002 19 Red Willow +COM 31147 2002 24 Richardson +COM 31149 2002 6 Rock +COM 31151 2002 13 Saline +COM 31153 2002 114 Sarpy +COM 31155 2002 22 Saunders +COM 31157 2002 77 Scotts Bluff +COM 31159 2002 24 Seward +COM 31161 2002 17 Sheridan +COM 31163 2002 2 Sherman +COM 31165 2002 3 Sioux +COM 31167 2002 4 Stanton +COM 31169 2002 18 Thayer +COM 31171 2002 3 Thomas +COM 31173 2002 10 Thurston +COM 31175 2002 8 Valley +COM 31177 2002 16 Washington +COM 31179 2002 10 Wayne +COM 31181 2002 13 Webster +COM 31183 2002 1 Wheeler +COM 31185 2002 33 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_HOUSE.ALO new file mode 100644 index 0000000..54e2d5b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_HOUSE.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 31000 2002 738896 NE +HOU 31001 2002 13122 Adams +HOU 31003 2002 3343 Antelope +HOU 31005 2002 277 Arthur +HOU 31007 2002 379 Banner +HOU 31009 2002 337 Blaine +HOU 31011 2002 2730 Boone +HOU 31013 2002 5492 Box Butte +HOU 31015 2002 1416 Boyd +HOU 31017 2002 1921 Brown +HOU 31019 2002 17252 Buffalo +HOU 31021 2002 3733 Burt +HOU 31023 2002 4050 Butler +HOU 31025 2002 10489 Cass +HOU 31027 2002 4240 Cedar +HOU 31029 2002 1937 Chase +HOU 31031 2002 3244 Cherry +HOU 31033 2002 4632 Cheyenne +HOU 31035 2002 3066 Clay +HOU 31037 2002 4095 Colfax +HOU 31039 2002 4306 Cuming +HOU 31041 2002 5595 Custer +HOU 31043 2002 7650 Dakota +HOU 31045 2002 4016 Dawes +HOU 31047 2002 9819 Dawson +HOU 31049 2002 1024 Deuel +HOU 31051 2002 2681 Dixon +HOU 31053 2002 15687 Dodge +HOU 31055 2002 197960 Douglas +HOU 31057 2002 1197 Dundy +HOU 31059 2002 2992 Fillmore +HOU 31061 2002 1731 Franklin +HOU 31063 2002 1554 Frontier +HOU 31065 2002 2723 Furnas +HOU 31067 2002 10311 Gage +HOU 31069 2002 1298 Garden +HOU 31071 2002 1023 Garfield +HOU 31073 2002 1285 Gosper +HOU 31075 2002 453 Grant +HOU 31077 2002 1202 Greeley +HOU 31079 2002 21793 Hall +HOU 31081 2002 3888 Hamilton +HOU 31083 2002 2355 Harlan +HOU 31085 2002 529 Hayes +HOU 31087 2002 1683 Hitchcock +HOU 31089 2002 5348 Holt +HOU 31091 2002 439 Hooker +HOU 31093 2002 2854 Howard +HOU 31095 2002 3940 Jefferson +HOU 31097 2002 2128 Johnson +HOU 31099 2002 2842 Kearney +HOU 31101 2002 5418 Keith +HOU 31103 2002 553 Keya Paha +HOU 31105 2002 1976 Kimball +HOU 31107 2002 4780 Knox +HOU 31109 2002 107560 Lancaster +HOU 31111 2002 15694 Lincoln +HOU 31113 2002 388 Logan +HOU 31115 2002 378 Loup +HOU 31117 2002 286 McPherson +HOU 31119 2002 14584 Madison +HOU 31121 2002 3664 Merrick +HOU 31123 2002 2467 Morrill +HOU 31125 2002 1768 Nance +HOU 31127 2002 3451 Nemaha +HOU 31129 2002 2522 Nuckolls +HOU 31131 2002 6716 Otoe +HOU 31133 2002 1590 Pawnee +HOU 31135 2002 1445 Perkins +HOU 31137 2002 4219 Phelps +HOU 31139 2002 3260 Pierce +HOU 31141 2002 13028 Platte +HOU 31143 2002 2725 Polk +HOU 31145 2002 5319 Red Willow +HOU 31147 2002 4539 Richardson +HOU 31149 2002 944 Rock +HOU 31151 2002 5641 Saline +HOU 31153 2002 48547 Sarpy +HOU 31155 2002 8465 Saunders +HOU 31157 2002 16255 Scotts Bluff +HOU 31159 2002 6520 Seward +HOU 31161 2002 3014 Sheridan +HOU 31163 2002 1824 Sherman +HOU 31165 2002 786 Sioux +HOU 31167 2002 2472 Stanton +HOU 31169 2002 2831 Thayer +HOU 31171 2002 451 Thomas +HOU 31173 2002 2474 Thurston +HOU 31175 2002 2266 Valley +HOU 31177 2002 7618 Washington +HOU 31179 2002 3678 Wayne +HOU 31181 2002 1966 Webster +HOU 31183 2002 566 Wheeler +HOU 31185 2002 6187 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_LOGGN.ALO new file mode 100644 index 0000000..e110502 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_LOGGN.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 31000 2002 22686434 NE +LOG 31001 2002 178227 Adams +LOG 31003 2002 162003 Antelope +LOG 31005 2002 0 Arthur +LOG 31007 2002 70615 Banner +LOG 31009 2002 162463 Blaine +LOG 31011 2002 530009 Boone +LOG 31013 2002 11686 Box Butte +LOG 31015 2002 44251 Boyd +LOG 31017 2002 102669 Brown +LOG 31019 2002 38469 Buffalo +LOG 31021 2002 149790 Burt +LOG 31023 2002 478725 Butler +LOG 31025 2002 393542 Cass +LOG 31027 2002 249608 Cedar +LOG 31029 2002 65169 Chase +LOG 31031 2002 28387 Cherry +LOG 31033 2002 158 Cheyenne +LOG 31035 2002 74458 Clay +LOG 31037 2002 447433 Colfax +LOG 31039 2002 779987 Cuming +LOG 31041 2002 234338 Custer +LOG 31043 2002 161041 Dakota +LOG 31045 2002 1480738 Dawes +LOG 31047 2002 109190 Dawson +LOG 31049 2002 0 Deuel +LOG 31051 2002 135917 Dixon +LOG 31053 2002 492593 Dodge +LOG 31055 2002 1143359 Douglas +LOG 31057 2002 0 Dundy +LOG 31059 2002 0 Fillmore +LOG 31061 2002 685762 Franklin +LOG 31063 2002 75919 Frontier +LOG 31065 2002 32029 Furnas +LOG 31067 2002 129871 Gage +LOG 31069 2002 0 Garden +LOG 31071 2002 31581 Garfield +LOG 31073 2002 0 Gosper +LOG 31075 2002 0 Grant +LOG 31077 2002 0 Greeley +LOG 31079 2002 508982 Hall +LOG 31081 2002 119194 Hamilton +LOG 31083 2002 50025 Harlan +LOG 31085 2002 0 Hayes +LOG 31087 2002 0 Hitchcock +LOG 31089 2002 968711 Holt +LOG 31091 2002 21502 Hooker +LOG 31093 2002 332760 Howard +LOG 31095 2002 45548 Jefferson +LOG 31097 2002 55496 Johnson +LOG 31099 2002 0 Kearney +LOG 31101 2002 0 Keith +LOG 31103 2002 59414 Keya Paha +LOG 31105 2002 12176 Kimball +LOG 31107 2002 255762 Knox +LOG 31109 2002 1124513 Lancaster +LOG 31111 2002 805836 Lincoln +LOG 31113 2002 0 Logan +LOG 31115 2002 13760 Loup +LOG 31117 2002 0 McPherson +LOG 31119 2002 232274 Madison +LOG 31121 2002 469774 Merrick +LOG 31123 2002 96616 Morrill +LOG 31125 2002 370191 Nance +LOG 31127 2002 568529 Nemaha +LOG 31129 2002 19286 Nuckolls +LOG 31131 2002 500045 Otoe +LOG 31133 2002 667104 Pawnee +LOG 31135 2002 0 Perkins +LOG 31137 2002 197956 Phelps +LOG 31139 2002 0 Pierce +LOG 31141 2002 377709 Platte +LOG 31143 2002 268555 Polk +LOG 31145 2002 177622 Red Willow +LOG 31147 2002 379597 Richardson +LOG 31149 2002 134558 Rock +LOG 31151 2002 183009 Saline +LOG 31153 2002 408987 Sarpy +LOG 31155 2002 1098029 Saunders +LOG 31157 2002 249873 Scotts Bluff +LOG 31159 2002 50365 Seward +LOG 31161 2002 1606612 Sheridan +LOG 31163 2002 397323 Sherman +LOG 31165 2002 531136 Sioux +LOG 31167 2002 53988 Stanton +LOG 31169 2002 1157 Thayer +LOG 31171 2002 0 Thomas +LOG 31173 2002 175992 Thurston +LOG 31175 2002 18347 Valley +LOG 31177 2002 135403 Washington +LOG 31179 2002 14534 Wayne +LOG 31181 2002 146620 Webster +LOG 31183 2002 4587 Wheeler +LOG 31185 2002 96991 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_LSCAP.ALO new file mode 100644 index 0000000..2a0f4d1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_LSCAP.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 31000 2002 1697 NE +LSC 31001 2002 4 Adams +LSC 31003 2002 0 Antelope +LSC 31005 2002 0 Arthur +LSC 31007 2002 0 Banner +LSC 31009 2002 0 Blaine +LSC 31011 2002 0 Boone +LSC 31013 2002 3 Box Butte +LSC 31015 2002 4 Boyd +LSC 31017 2002 4 Brown +LSC 31019 2002 23 Buffalo +LSC 31021 2002 4 Burt +LSC 31023 2002 4 Butler +LSC 31025 2002 15 Cass +LSC 31027 2002 4 Cedar +LSC 31029 2002 0 Chase +LSC 31031 2002 4 Cherry +LSC 31033 2002 4 Cheyenne +LSC 31035 2002 0 Clay +LSC 31037 2002 4 Colfax +LSC 31039 2002 4 Cuming +LSC 31041 2002 4 Custer +LSC 31043 2002 22 Dakota +LSC 31045 2002 4 Dawes +LSC 31047 2002 4 Dawson +LSC 31049 2002 0 Deuel +LSC 31051 2002 0 Dixon +LSC 31053 2002 50 Dodge +LSC 31055 2002 702 Douglas +LSC 31057 2002 0 Dundy +LSC 31059 2002 4 Fillmore +LSC 31061 2002 4 Franklin +LSC 31063 2002 0 Frontier +LSC 31065 2002 0 Furnas +LSC 31067 2002 4 Gage +LSC 31069 2002 0 Garden +LSC 31071 2002 0 Garfield +LSC 31073 2002 4 Gosper +LSC 31075 2002 0 Grant +LSC 31077 2002 0 Greeley +LSC 31079 2002 48 Hall +LSC 31081 2002 4 Hamilton +LSC 31083 2002 4 Harlan +LSC 31085 2002 0 Hayes +LSC 31087 2002 0 Hitchcock +LSC 31089 2002 0 Holt +LSC 31091 2002 0 Hooker +LSC 31093 2002 0 Howard +LSC 31095 2002 4 Jefferson +LSC 31097 2002 4 Johnson +LSC 31099 2002 4 Kearney +LSC 31101 2002 4 Keith +LSC 31103 2002 0 Keya Paha +LSC 31105 2002 0 Kimball +LSC 31107 2002 4 Knox +LSC 31109 2002 296 Lancaster +LSC 31111 2002 17 Lincoln +LSC 31113 2002 0 Logan +LSC 31115 2002 0 Loup +LSC 31117 2002 0 McPherson +LSC 31119 2002 4 Madison +LSC 31121 2002 4 Merrick +LSC 31123 2002 0 Morrill +LSC 31125 2002 0 Nance +LSC 31127 2002 4 Nemaha +LSC 31129 2002 4 Nuckolls +LSC 31131 2002 1 Otoe +LSC 31133 2002 0 Pawnee +LSC 31135 2002 0 Perkins +LSC 31137 2002 4 Phelps +LSC 31139 2002 0 Pierce +LSC 31141 2002 23 Platte +LSC 31143 2002 1 Polk +LSC 31145 2002 4 Red Willow +LSC 31147 2002 4 Richardson +LSC 31149 2002 0 Rock +LSC 31151 2002 4 Saline +LSC 31153 2002 310 Sarpy +LSC 31155 2002 5 Saunders +LSC 31157 2002 23 Scotts Bluff +LSC 31159 2002 5 Seward +LSC 31161 2002 0 Sheridan +LSC 31163 2002 0 Sherman +LSC 31165 2002 0 Sioux +LSC 31167 2002 4 Stanton +LSC 31169 2002 4 Thayer +LSC 31171 2002 0 Thomas +LSC 31173 2002 4 Thurston +LSC 31175 2002 0 Valley +LSC 31177 2002 4 Washington +LSC 31179 2002 4 Wayne +LSC 31181 2002 1 Webster +LSC 31183 2002 0 Wheeler +LSC 31185 2002 4 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_MNFG.ALO new file mode 100644 index 0000000..428fe67 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_MNFG.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 31000 2002 174874 NE +MFG 31001 2002 5685 Adams +MFG 31003 2002 284 Antelope +MFG 31005 2002 17 Arthur +MFG 31007 2002 0 Banner +MFG 31009 2002 0 Blaine +MFG 31011 2002 95 Boone +MFG 31013 2002 789 Box Butte +MFG 31015 2002 24 Boyd +MFG 31017 2002 26 Brown +MFG 31019 2002 6758 Buffalo +MFG 31021 2002 234 Burt +MFG 31023 2002 755 Butler +MFG 31025 2002 529 Cass +MFG 31027 2002 488 Cedar +MFG 31029 2002 160 Chase +MFG 31031 2002 70 Cherry +MFG 31033 2002 624 Cheyenne +MFG 31035 2002 116 Clay +MFG 31037 2002 1892 Colfax +MFG 31039 2002 719 Cuming +MFG 31041 2002 827 Custer +MFG 31043 2002 5855 Dakota +MFG 31045 2002 49 Dawes +MFG 31047 2002 4884 Dawson +MFG 31049 2002 7 Deuel +MFG 31051 2002 804 Dixon +MFG 31053 2002 4774 Dodge +MFG 31055 2002 41301 Douglas +MFG 31057 2002 17 Dundy +MFG 31059 2002 261 Fillmore +MFG 31061 2002 0 Franklin +MFG 31063 2002 7 Frontier +MFG 31065 2002 131 Furnas +MFG 31067 2002 4076 Gage +MFG 31069 2002 7 Garden +MFG 31071 2002 170 Garfield +MFG 31073 2002 39 Gosper +MFG 31075 2002 7 Grant +MFG 31077 2002 87 Greeley +MFG 31079 2002 9094 Hall +MFG 31081 2002 1195 Hamilton +MFG 31083 2002 17 Harlan +MFG 31085 2002 25 Hayes +MFG 31087 2002 0 Hitchcock +MFG 31089 2002 395 Holt +MFG 31091 2002 17 Hooker +MFG 31093 2002 33 Howard +MFG 31095 2002 659 Jefferson +MFG 31097 2002 417 Johnson +MFG 31099 2002 199 Kearney +MFG 31101 2002 617 Keith +MFG 31103 2002 7 Keya Paha +MFG 31105 2002 705 Kimball +MFG 31107 2002 25 Knox +MFG 31109 2002 31438 Lancaster +MFG 31111 2002 779 Lincoln +MFG 31113 2002 25 Logan +MFG 31115 2002 0 Loup +MFG 31117 2002 0 McPherson +MFG 31119 2002 7910 Madison +MFG 31121 2002 703 Merrick +MFG 31123 2002 77 Morrill +MFG 31125 2002 7 Nance +MFG 31127 2002 667 Nemaha +MFG 31129 2002 25 Nuckolls +MFG 31131 2002 2307 Otoe +MFG 31133 2002 191 Pawnee +MFG 31135 2002 87 Perkins +MFG 31137 2002 1556 Phelps +MFG 31139 2002 125 Pierce +MFG 31141 2002 11046 Platte +MFG 31143 2002 10 Polk +MFG 31145 2002 917 Red Willow +MFG 31147 2002 437 Richardson +MFG 31149 2002 33 Rock +MFG 31151 2002 4474 Saline +MFG 31153 2002 4750 Sarpy +MFG 31155 2002 832 Saunders +MFG 31157 2002 1840 Scotts Bluff +MFG 31159 2002 1996 Seward +MFG 31161 2002 24 Sheridan +MFG 31163 2002 43 Sherman +MFG 31165 2002 0 Sioux +MFG 31167 2002 26 Stanton +MFG 31169 2002 790 Thayer +MFG 31171 2002 18 Thomas +MFG 31173 2002 448 Thurston +MFG 31175 2002 95 Valley +MFG 31177 2002 1730 Washington +MFG 31179 2002 1319 Wayne +MFG 31181 2002 41 Webster +MFG 31183 2002 18 Wheeler +MFG 31185 2002 2117 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_OIL.ALO new file mode 100644 index 0000000..1c8dcde --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_OIL.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 31000 2002 185 NE +OIL 31001 2002 0 Adams +OIL 31003 2002 0 Antelope +OIL 31005 2002 0 Arthur +OIL 31007 2002 0 Banner +OIL 31009 2002 0 Blaine +OIL 31011 2002 0 Boone +OIL 31013 2002 0 Box Butte +OIL 31015 2002 0 Boyd +OIL 31017 2002 0 Brown +OIL 31019 2002 9 Buffalo +OIL 31021 2002 0 Burt +OIL 31023 2002 0 Butler +OIL 31025 2002 0 Cass +OIL 31027 2002 0 Cedar +OIL 31029 2002 0 Chase +OIL 31031 2002 0 Cherry +OIL 31033 2002 9 Cheyenne +OIL 31035 2002 0 Clay +OIL 31037 2002 0 Colfax +OIL 31039 2002 0 Cuming +OIL 31041 2002 0 Custer +OIL 31043 2002 0 Dakota +OIL 31045 2002 0 Dawes +OIL 31047 2002 0 Dawson +OIL 31049 2002 0 Deuel +OIL 31051 2002 0 Dixon +OIL 31053 2002 0 Dodge +OIL 31055 2002 10 Douglas +OIL 31057 2002 0 Dundy +OIL 31059 2002 0 Fillmore +OIL 31061 2002 0 Franklin +OIL 31063 2002 0 Frontier +OIL 31065 2002 0 Furnas +OIL 31067 2002 0 Gage +OIL 31069 2002 0 Garden +OIL 31071 2002 0 Garfield +OIL 31073 2002 0 Gosper +OIL 31075 2002 0 Grant +OIL 31077 2002 0 Greeley +OIL 31079 2002 0 Hall +OIL 31081 2002 0 Hamilton +OIL 31083 2002 10 Harlan +OIL 31085 2002 0 Hayes +OIL 31087 2002 0 Hitchcock +OIL 31089 2002 0 Holt +OIL 31091 2002 9 Hooker +OIL 31093 2002 0 Howard +OIL 31095 2002 0 Jefferson +OIL 31097 2002 0 Johnson +OIL 31099 2002 0 Kearney +OIL 31101 2002 0 Keith +OIL 31103 2002 0 Keya Paha +OIL 31105 2002 68 Kimball +OIL 31107 2002 0 Knox +OIL 31109 2002 10 Lancaster +OIL 31111 2002 20 Lincoln +OIL 31113 2002 0 Logan +OIL 31115 2002 0 Loup +OIL 31117 2002 0 McPherson +OIL 31119 2002 10 Madison +OIL 31121 2002 0 Merrick +OIL 31123 2002 0 Morrill +OIL 31125 2002 0 Nance +OIL 31127 2002 0 Nemaha +OIL 31129 2002 0 Nuckolls +OIL 31131 2002 0 Otoe +OIL 31133 2002 0 Pawnee +OIL 31135 2002 0 Perkins +OIL 31137 2002 0 Phelps +OIL 31139 2002 0 Pierce +OIL 31141 2002 0 Platte +OIL 31143 2002 0 Polk +OIL 31145 2002 0 Red Willow +OIL 31147 2002 10 Richardson +OIL 31149 2002 0 Rock +OIL 31151 2002 0 Saline +OIL 31153 2002 0 Sarpy +OIL 31155 2002 0 Saunders +OIL 31157 2002 20 Scotts Bluff +OIL 31159 2002 0 Seward +OIL 31161 2002 0 Sheridan +OIL 31163 2002 0 Sherman +OIL 31165 2002 0 Sioux +OIL 31167 2002 0 Stanton +OIL 31169 2002 0 Thayer +OIL 31171 2002 0 Thomas +OIL 31173 2002 0 Thurston +OIL 31175 2002 0 Valley +OIL 31177 2002 0 Washington +OIL 31179 2002 0 Wayne +OIL 31181 2002 0 Webster +OIL 31183 2002 0 Wheeler +OIL 31185 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_POP.ALO new file mode 100644 index 0000000..e210f80 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_POP.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 31000 2002 1726437 NE +POP 31001 2002 30943 Adams +POP 31003 2002 7262 Antelope +POP 31005 2002 399 Arthur +POP 31007 2002 763 Banner +POP 31009 2002 551 Blaine +POP 31011 2002 6080 Boone +POP 31013 2002 11852 Box Butte +POP 31015 2002 2355 Boyd +POP 31017 2002 3485 Brown +POP 31019 2002 42802 Buffalo +POP 31021 2002 7571 Burt +POP 31023 2002 8902 Butler +POP 31025 2002 24833 Cass +POP 31027 2002 9326 Cedar +POP 31029 2002 4000 Chase +POP 31031 2002 6080 Cherry +POP 31033 2002 9938 Cheyenne +POP 31035 2002 6894 Clay +POP 31037 2002 10504 Colfax +POP 31039 2002 10003 Cuming +POP 31041 2002 11566 Custer +POP 31043 2002 20409 Dakota +POP 31045 2002 9037 Dawes +POP 31047 2002 24416 Dawson +POP 31049 2002 2051 Deuel +POP 31051 2002 6186 Dixon +POP 31053 2002 35973 Dodge +POP 31055 2002 471355 Douglas +POP 31057 2002 2203 Dundy +POP 31059 2002 6469 Fillmore +POP 31061 2002 3487 Franklin +POP 31063 2002 2985 Frontier +POP 31065 2002 5247 Furnas +POP 31067 2002 23270 Gage +POP 31069 2002 2204 Garden +POP 31071 2002 1895 Garfield +POP 31073 2002 2074 Gosper +POP 31075 2002 723 Grant +POP 31077 2002 2651 Greeley +POP 31079 2002 53831 Hall +POP 31081 2002 9408 Hamilton +POP 31083 2002 3657 Harlan +POP 31085 2002 1107 Hayes +POP 31087 2002 3047 Hitchcock +POP 31089 2002 11228 Holt +POP 31091 2002 738 Hooker +POP 31093 2002 6531 Howard +POP 31095 2002 8230 Jefferson +POP 31097 2002 4371 Johnson +POP 31099 2002 6821 Kearney +POP 31101 2002 8732 Keith +POP 31103 2002 946 Keya Paha +POP 31105 2002 3971 Kimball +POP 31107 2002 9103 Knox +POP 31109 2002 256443 Lancaster +POP 31111 2002 34510 Lincoln +POP 31113 2002 751 Logan +POP 31115 2002 751 Loup +POP 31117 2002 548 McPherson +POP 31119 2002 35944 Madison +POP 31121 2002 8099 Merrick +POP 31123 2002 5291 Morrill +POP 31125 2002 3884 Nance +POP 31127 2002 7287 Nemaha +POP 31129 2002 4860 Nuckolls +POP 31131 2002 15461 Otoe +POP 31133 2002 3008 Pawnee +POP 31135 2002 3083 Perkins +POP 31137 2002 9703 Phelps +POP 31139 2002 7737 Pierce +POP 31141 2002 31273 Platte +POP 31143 2002 5518 Polk +POP 31145 2002 11302 Red Willow +POP 31147 2002 9115 Richardson +POP 31149 2002 1684 Rock +POP 31151 2002 14078 Saline +POP 31153 2002 129182 Sarpy +POP 31155 2002 19886 Saunders +POP 31157 2002 36745 Scotts Bluff +POP 31159 2002 16637 Seward +POP 31161 2002 5997 Sheridan +POP 31163 2002 3174 Sherman +POP 31165 2002 1456 Sioux +POP 31167 2002 6527 Stanton +POP 31169 2002 5737 Thayer +POP 31171 2002 681 Thomas +POP 31173 2002 7093 Thurston +POP 31175 2002 4559 Valley +POP 31177 2002 19304 Washington +POP 31179 2002 9553 Wayne +POP 31181 2002 3892 Webster +POP 31183 2002 841 Wheeler +POP 31185 2002 14378 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_RAIL.ALO new file mode 100644 index 0000000..401c9f6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_RAIL.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 31000 2002 51194.770 NE +RR 31001 2002 997.500 Adams +RR 31003 2002 0.000 Antelope +RR 31005 2002 0.000 Arthur +RR 31007 2002 0.000 Banner +RR 31009 2002 1301.680 Blaine +RR 31011 2002 0.000 Boone +RR 31013 2002 1887.640 Box Butte +RR 31015 2002 0.000 Boyd +RR 31017 2002 0.000 Brown +RR 31019 2002 1859.530 Buffalo +RR 31021 2002 264.150 Burt +RR 31023 2002 15.080 Butler +RR 31025 2002 1130.270 Cass +RR 31027 2002 0.000 Cedar +RR 31029 2002 15.740 Chase +RR 31031 2002 0.000 Cherry +RR 31033 2002 1837.990 Cheyenne +RR 31035 2002 660.790 Clay +RR 31037 2002 599.660 Colfax +RR 31039 2002 0.000 Cuming +RR 31041 2002 1301.680 Custer +RR 31043 2002 282.000 Dakota +RR 31045 2002 833.220 Dawes +RR 31047 2002 892.550 Dawson +RR 31049 2002 967.510 Deuel +RR 31051 2002 0.000 Dixon +RR 31053 2002 1148.530 Dodge +RR 31055 2002 835.500 Douglas +RR 31057 2002 421.720 Dundy +RR 31059 2002 204.610 Fillmore +RR 31061 2002 29.270 Franklin +RR 31063 2002 0.000 Frontier +RR 31065 2002 245.360 Furnas +RR 31067 2002 502.350 Gage +RR 31069 2002 1534.840 Garden +RR 31071 2002 0.000 Garfield +RR 31073 2002 0.000 Gosper +RR 31075 2002 1625.970 Grant +RR 31077 2002 0.000 Greeley +RR 31079 2002 1431.280 Hall +RR 31081 2002 544.880 Hamilton +RR 31083 2002 110.210 Harlan +RR 31085 2002 15.740 Hayes +RR 31087 2002 198.820 Hitchcock +RR 31089 2002 0.000 Holt +RR 31091 2002 844.720 Hooker +RR 31093 2002 0.000 Howard +RR 31095 2002 634.510 Jefferson +RR 31097 2002 646.700 Johnson +RR 31099 2002 173.850 Kearney +RR 31101 2002 2369.810 Keith +RR 31103 2002 0.000 Keya Paha +RR 31105 2002 821.600 Kimball +RR 31107 2002 0.000 Knox +RR 31109 2002 1457.350 Lancaster +RR 31111 2002 2208.800 Lincoln +RR 31113 2002 0.000 Logan +RR 31115 2002 0.000 Loup +RR 31117 2002 0.000 McPherson +RR 31119 2002 0.000 Madison +RR 31121 2002 1060.610 Merrick +RR 31123 2002 3217.330 Morrill +RR 31125 2002 0.000 Nance +RR 31127 2002 66.260 Nemaha +RR 31129 2002 126.940 Nuckolls +RR 31131 2002 57.300 Otoe +RR 31133 2002 591.310 Pawnee +RR 31135 2002 0.000 Perkins +RR 31137 2002 182.720 Phelps +RR 31139 2002 0.000 Pierce +RR 31141 2002 733.480 Platte +RR 31143 2002 0.000 Polk +RR 31145 2002 283.000 Red Willow +RR 31147 2002 624.340 Richardson +RR 31149 2002 0.000 Rock +RR 31151 2002 207.250 Saline +RR 31153 2002 143.600 Sarpy +RR 31155 2002 573.610 Saunders +RR 31157 2002 1545.580 Scotts Bluff +RR 31159 2002 698.160 Seward +RR 31161 2002 781.250 Sheridan +RR 31163 2002 1468.170 Sherman +RR 31165 2002 1774.820 Sioux +RR 31167 2002 0.000 Stanton +RR 31169 2002 650.670 Thayer +RR 31171 2002 2146.400 Thomas +RR 31173 2002 264.150 Thurston +RR 31175 2002 0.000 Valley +RR 31177 2002 449.860 Washington +RR 31179 2002 0.000 Wayne +RR 31181 2002 35.690 Webster +RR 31183 2002 0.000 Wheeler +RR 31185 2002 658.860 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_RVPRK.ALO new file mode 100644 index 0000000..ed8e5b5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_RVPRK.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 31000 2002 35 NE +RVP 31001 2002 1 Adams +RVP 31003 2002 0 Antelope +RVP 31005 2002 0 Arthur +RVP 31007 2002 0 Banner +RVP 31009 2002 0 Blaine +RVP 31011 2002 1 Boone +RVP 31013 2002 0 Box Butte +RVP 31015 2002 0 Boyd +RVP 31017 2002 0 Brown +RVP 31019 2002 1 Buffalo +RVP 31021 2002 0 Burt +RVP 31023 2002 0 Butler +RVP 31025 2002 1 Cass +RVP 31027 2002 0 Cedar +RVP 31029 2002 0 Chase +RVP 31031 2002 1 Cherry +RVP 31033 2002 1 Cheyenne +RVP 31035 2002 0 Clay +RVP 31037 2002 0 Colfax +RVP 31039 2002 0 Cuming +RVP 31041 2002 1 Custer +RVP 31043 2002 1 Dakota +RVP 31045 2002 0 Dawes +RVP 31047 2002 2 Dawson +RVP 31049 2002 0 Deuel +RVP 31051 2002 0 Dixon +RVP 31053 2002 1 Dodge +RVP 31055 2002 3 Douglas +RVP 31057 2002 0 Dundy +RVP 31059 2002 0 Fillmore +RVP 31061 2002 0 Franklin +RVP 31063 2002 0 Frontier +RVP 31065 2002 0 Furnas +RVP 31067 2002 1 Gage +RVP 31069 2002 0 Garden +RVP 31071 2002 0 Garfield +RVP 31073 2002 0 Gosper +RVP 31075 2002 0 Grant +RVP 31077 2002 0 Greeley +RVP 31079 2002 0 Hall +RVP 31081 2002 2 Hamilton +RVP 31083 2002 0 Harlan +RVP 31085 2002 0 Hayes +RVP 31087 2002 0 Hitchcock +RVP 31089 2002 0 Holt +RVP 31091 2002 0 Hooker +RVP 31093 2002 0 Howard +RVP 31095 2002 1 Jefferson +RVP 31097 2002 0 Johnson +RVP 31099 2002 1 Kearney +RVP 31101 2002 2 Keith +RVP 31103 2002 0 Keya Paha +RVP 31105 2002 0 Kimball +RVP 31107 2002 0 Knox +RVP 31109 2002 2 Lancaster +RVP 31111 2002 1 Lincoln +RVP 31113 2002 0 Logan +RVP 31115 2002 0 Loup +RVP 31117 2002 0 McPherson +RVP 31119 2002 0 Madison +RVP 31121 2002 0 Merrick +RVP 31123 2002 0 Morrill +RVP 31125 2002 0 Nance +RVP 31127 2002 0 Nemaha +RVP 31129 2002 0 Nuckolls +RVP 31131 2002 1 Otoe +RVP 31133 2002 1 Pawnee +RVP 31135 2002 0 Perkins +RVP 31137 2002 0 Phelps +RVP 31139 2002 0 Pierce +RVP 31141 2002 0 Platte +RVP 31143 2002 0 Polk +RVP 31145 2002 0 Red Willow +RVP 31147 2002 0 Richardson +RVP 31149 2002 0 Rock +RVP 31151 2002 0 Saline +RVP 31153 2002 2 Sarpy +RVP 31155 2002 1 Saunders +RVP 31157 2002 1 Scotts Bluff +RVP 31159 2002 0 Seward +RVP 31161 2002 0 Sheridan +RVP 31163 2002 1 Sherman +RVP 31165 2002 0 Sioux +RVP 31167 2002 0 Stanton +RVP 31169 2002 0 Thayer +RVP 31171 2002 0 Thomas +RVP 31173 2002 0 Thurston +RVP 31175 2002 0 Valley +RVP 31177 2002 2 Washington +RVP 31179 2002 0 Wayne +RVP 31181 2002 0 Webster +RVP 31183 2002 1 Wheeler +RVP 31185 2002 1 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_SBC.ALO new file mode 100644 index 0000000..2a86733 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_SBC.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 31000 2002 1697 NE +SBC 31001 2002 13 Adams +SBC 31003 2002 0 Antelope +SBC 31005 2002 0 Arthur +SBC 31007 2002 0 Banner +SBC 31009 2002 0 Blaine +SBC 31011 2002 0 Boone +SBC 31013 2002 3 Box Butte +SBC 31015 2002 1 Boyd +SBC 31017 2002 1 Brown +SBC 31019 2002 23 Buffalo +SBC 31021 2002 3 Burt +SBC 31023 2002 4 Butler +SBC 31025 2002 15 Cass +SBC 31027 2002 4 Cedar +SBC 31029 2002 0 Chase +SBC 31031 2002 3 Cherry +SBC 31033 2002 4 Cheyenne +SBC 31035 2002 0 Clay +SBC 31037 2002 5 Colfax +SBC 31039 2002 4 Cuming +SBC 31041 2002 5 Custer +SBC 31043 2002 22 Dakota +SBC 31045 2002 4 Dawes +SBC 31047 2002 10 Dawson +SBC 31049 2002 0 Deuel +SBC 31051 2002 0 Dixon +SBC 31053 2002 50 Dodge +SBC 31055 2002 702 Douglas +SBC 31057 2002 0 Dundy +SBC 31059 2002 3 Fillmore +SBC 31061 2002 1 Franklin +SBC 31063 2002 0 Frontier +SBC 31065 2002 0 Furnas +SBC 31067 2002 10 Gage +SBC 31069 2002 0 Garden +SBC 31071 2002 0 Garfield +SBC 31073 2002 1 Gosper +SBC 31075 2002 0 Grant +SBC 31077 2002 0 Greeley +SBC 31079 2002 48 Hall +SBC 31081 2002 4 Hamilton +SBC 31083 2002 2 Harlan +SBC 31085 2002 0 Hayes +SBC 31087 2002 0 Hitchcock +SBC 31089 2002 0 Holt +SBC 31091 2002 0 Hooker +SBC 31093 2002 0 Howard +SBC 31095 2002 4 Jefferson +SBC 31097 2002 2 Johnson +SBC 31099 2002 3 Kearney +SBC 31101 2002 4 Keith +SBC 31103 2002 0 Keya Paha +SBC 31105 2002 0 Kimball +SBC 31107 2002 4 Knox +SBC 31109 2002 296 Lancaster +SBC 31111 2002 17 Lincoln +SBC 31113 2002 0 Logan +SBC 31115 2002 0 Loup +SBC 31117 2002 0 McPherson +SBC 31119 2002 16 Madison +SBC 31121 2002 3 Merrick +SBC 31123 2002 0 Morrill +SBC 31125 2002 0 Nance +SBC 31127 2002 3 Nemaha +SBC 31129 2002 2 Nuckolls +SBC 31131 2002 1 Otoe +SBC 31133 2002 0 Pawnee +SBC 31135 2002 0 Perkins +SBC 31137 2002 4 Phelps +SBC 31139 2002 0 Pierce +SBC 31141 2002 13 Platte +SBC 31143 2002 1 Polk +SBC 31145 2002 5 Red Willow +SBC 31147 2002 4 Richardson +SBC 31149 2002 0 Rock +SBC 31151 2002 6 Saline +SBC 31153 2002 310 Sarpy +SBC 31155 2002 5 Saunders +SBC 31157 2002 17 Scotts Bluff +SBC 31159 2002 5 Seward +SBC 31161 2002 0 Sheridan +SBC 31163 2002 0 Sherman +SBC 31165 2002 0 Sioux +SBC 31167 2002 3 Stanton +SBC 31169 2002 2 Thayer +SBC 31171 2002 0 Thomas +SBC 31173 2002 3 Thurston +SBC 31175 2002 0 Valley +SBC 31177 2002 8 Washington +SBC 31179 2002 4 Wayne +SBC 31181 2002 1 Webster +SBC 31183 2002 0 Wheeler +SBC 31185 2002 6 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_SBR.ALO new file mode 100644 index 0000000..7ca8036 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_SBR.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 31000 2002 738896 NE +SBR 31001 2002 13122 Adams +SBR 31003 2002 3343 Antelope +SBR 31005 2002 277 Arthur +SBR 31007 2002 379 Banner +SBR 31009 2002 337 Blaine +SBR 31011 2002 2730 Boone +SBR 31013 2002 5492 Box Butte +SBR 31015 2002 1416 Boyd +SBR 31017 2002 1921 Brown +SBR 31019 2002 17252 Buffalo +SBR 31021 2002 3733 Burt +SBR 31023 2002 4050 Butler +SBR 31025 2002 10489 Cass +SBR 31027 2002 4240 Cedar +SBR 31029 2002 1937 Chase +SBR 31031 2002 3244 Cherry +SBR 31033 2002 4632 Cheyenne +SBR 31035 2002 3066 Clay +SBR 31037 2002 4095 Colfax +SBR 31039 2002 4306 Cuming +SBR 31041 2002 5595 Custer +SBR 31043 2002 7650 Dakota +SBR 31045 2002 4016 Dawes +SBR 31047 2002 9819 Dawson +SBR 31049 2002 1024 Deuel +SBR 31051 2002 2681 Dixon +SBR 31053 2002 15687 Dodge +SBR 31055 2002 197960 Douglas +SBR 31057 2002 1197 Dundy +SBR 31059 2002 2992 Fillmore +SBR 31061 2002 1731 Franklin +SBR 31063 2002 1554 Frontier +SBR 31065 2002 2723 Furnas +SBR 31067 2002 10311 Gage +SBR 31069 2002 1298 Garden +SBR 31071 2002 1023 Garfield +SBR 31073 2002 1285 Gosper +SBR 31075 2002 453 Grant +SBR 31077 2002 1202 Greeley +SBR 31079 2002 21793 Hall +SBR 31081 2002 3888 Hamilton +SBR 31083 2002 2355 Harlan +SBR 31085 2002 529 Hayes +SBR 31087 2002 1683 Hitchcock +SBR 31089 2002 5348 Holt +SBR 31091 2002 439 Hooker +SBR 31093 2002 2854 Howard +SBR 31095 2002 3940 Jefferson +SBR 31097 2002 2128 Johnson +SBR 31099 2002 2842 Kearney +SBR 31101 2002 5418 Keith +SBR 31103 2002 553 Keya Paha +SBR 31105 2002 1976 Kimball +SBR 31107 2002 4780 Knox +SBR 31109 2002 107560 Lancaster +SBR 31111 2002 15694 Lincoln +SBR 31113 2002 388 Logan +SBR 31115 2002 378 Loup +SBR 31117 2002 286 McPherson +SBR 31119 2002 14584 Madison +SBR 31121 2002 3664 Merrick +SBR 31123 2002 2467 Morrill +SBR 31125 2002 1768 Nance +SBR 31127 2002 3451 Nemaha +SBR 31129 2002 2522 Nuckolls +SBR 31131 2002 6716 Otoe +SBR 31133 2002 1590 Pawnee +SBR 31135 2002 1445 Perkins +SBR 31137 2002 4219 Phelps +SBR 31139 2002 3260 Pierce +SBR 31141 2002 13028 Platte +SBR 31143 2002 2725 Polk +SBR 31145 2002 5319 Red Willow +SBR 31147 2002 4539 Richardson +SBR 31149 2002 944 Rock +SBR 31151 2002 5641 Saline +SBR 31153 2002 48547 Sarpy +SBR 31155 2002 8465 Saunders +SBR 31157 2002 16255 Scotts Bluff +SBR 31159 2002 6520 Seward +SBR 31161 2002 3014 Sheridan +SBR 31163 2002 1824 Sherman +SBR 31165 2002 786 Sioux +SBR 31167 2002 2472 Stanton +SBR 31169 2002 2831 Thayer +SBR 31171 2002 451 Thomas +SBR 31173 2002 2474 Thurston +SBR 31175 2002 2266 Valley +SBR 31177 2002 7618 Washington +SBR 31179 2002 3678 Wayne +SBR 31181 2002 1966 Webster +SBR 31183 2002 566 Wheeler +SBR 31185 2002 6187 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_SNOWM.ALO new file mode 100644 index 0000000..06ed7f7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_SNOWM.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 31000 2002 1076 NE +SNM 31001 2002 0 Adams +SNM 31003 2002 0 Antelope +SNM 31005 2002 0 Arthur +SNM 31007 2002 0 Banner +SNM 31009 2002 0 Blaine +SNM 31011 2002 0 Boone +SNM 31013 2002 84 Box Butte +SNM 31015 2002 0 Boyd +SNM 31017 2002 0 Brown +SNM 31019 2002 0 Buffalo +SNM 31021 2002 0 Burt +SNM 31023 2002 0 Butler +SNM 31025 2002 0 Cass +SNM 31027 2002 0 Cedar +SNM 31029 2002 0 Chase +SNM 31031 2002 0 Cherry +SNM 31033 2002 0 Cheyenne +SNM 31035 2002 0 Clay +SNM 31037 2002 0 Colfax +SNM 31039 2002 0 Cuming +SNM 31041 2002 0 Custer +SNM 31043 2002 0 Dakota +SNM 31045 2002 111 Dawes +SNM 31047 2002 0 Dawson +SNM 31049 2002 0 Deuel +SNM 31051 2002 0 Dixon +SNM 31053 2002 0 Dodge +SNM 31055 2002 0 Douglas +SNM 31057 2002 0 Dundy +SNM 31059 2002 0 Fillmore +SNM 31061 2002 0 Franklin +SNM 31063 2002 0 Frontier +SNM 31065 2002 0 Furnas +SNM 31067 2002 0 Gage +SNM 31069 2002 0 Garden +SNM 31071 2002 0 Garfield +SNM 31073 2002 0 Gosper +SNM 31075 2002 0 Grant +SNM 31077 2002 0 Greeley +SNM 31079 2002 0 Hall +SNM 31081 2002 0 Hamilton +SNM 31083 2002 0 Harlan +SNM 31085 2002 0 Hayes +SNM 31087 2002 0 Hitchcock +SNM 31089 2002 0 Holt +SNM 31091 2002 0 Hooker +SNM 31093 2002 0 Howard +SNM 31095 2002 0 Jefferson +SNM 31097 2002 0 Johnson +SNM 31099 2002 0 Kearney +SNM 31101 2002 0 Keith +SNM 31103 2002 0 Keya Paha +SNM 31105 2002 0 Kimball +SNM 31107 2002 0 Knox +SNM 31109 2002 0 Lancaster +SNM 31111 2002 0 Lincoln +SNM 31113 2002 0 Logan +SNM 31115 2002 0 Loup +SNM 31117 2002 0 McPherson +SNM 31119 2002 0 Madison +SNM 31121 2002 0 Merrick +SNM 31123 2002 0 Morrill +SNM 31125 2002 0 Nance +SNM 31127 2002 0 Nemaha +SNM 31129 2002 0 Nuckolls +SNM 31131 2002 0 Otoe +SNM 31133 2002 0 Pawnee +SNM 31135 2002 0 Perkins +SNM 31137 2002 0 Phelps +SNM 31139 2002 0 Pierce +SNM 31141 2002 0 Platte +SNM 31143 2002 0 Polk +SNM 31145 2002 0 Red Willow +SNM 31147 2002 0 Richardson +SNM 31149 2002 0 Rock +SNM 31151 2002 0 Saline +SNM 31153 2002 0 Sarpy +SNM 31155 2002 0 Saunders +SNM 31157 2002 27 Scotts Bluff +SNM 31159 2002 0 Seward +SNM 31161 2002 167 Sheridan +SNM 31163 2002 0 Sherman +SNM 31165 2002 687 Sioux +SNM 31167 2002 0 Stanton +SNM 31169 2002 0 Thayer +SNM 31171 2002 0 Thomas +SNM 31173 2002 0 Thurston +SNM 31175 2002 0 Valley +SNM 31177 2002 0 Washington +SNM 31179 2002 0 Wayne +SNM 31181 2002 0 Webster +SNM 31183 2002 0 Wheeler +SNM 31185 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_WIB.ALO new file mode 100644 index 0000000..d834032 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_WIB.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 31000 1990 1241 NE +WIB 31001 1990 2 Adams +WIB 31003 1990 4 Antelope +WIB 31005 1990 8 Arthur +WIB 31007 1990 0 Banner +WIB 31009 1990 9 Blaine +WIB 31011 1990 1 Boone +WIB 31013 1990 7 Box Butte +WIB 31015 1990 12 Boyd +WIB 31017 1990 10 Brown +WIB 31019 1990 19 Buffalo +WIB 31021 1990 11 Burt +WIB 31023 1990 2 Butler +WIB 31025 1990 18 Cass +WIB 31027 1990 14 Cedar +WIB 31029 1990 8 Chase +WIB 31031 1990 127 Cherry +WIB 31033 1990 0 Cheyenne +WIB 31035 1990 1 Clay +WIB 31037 1990 14 Colfax +WIB 31039 1990 7 Cuming +WIB 31041 1990 1 Custer +WIB 31043 1990 9 Dakota +WIB 31045 1990 12 Dawes +WIB 31047 1990 17 Dawson +WIB 31049 1990 2 Deuel +WIB 31051 1990 16 Dixon +WIB 31053 1990 25 Dodge +WIB 31055 1990 22 Douglas +WIB 31057 1990 2 Dundy +WIB 31059 1990 0 Fillmore +WIB 31061 1990 0 Franklin +WIB 31063 1990 14 Frontier +WIB 31065 1990 6 Furnas +WIB 31067 1990 12 Gage +WIB 31069 1990 69 Garden +WIB 31071 1990 3 Garfield +WIB 31073 1990 12 Gosper +WIB 31075 1990 18 Grant +WIB 31077 1990 2 Greeley +WIB 31079 1990 15 Hall +WIB 31081 1990 8 Hamilton +WIB 31083 1990 56 Harlan +WIB 31085 1990 1 Hayes +WIB 31087 1990 22 Hitchcock +WIB 31089 1990 13 Holt +WIB 31091 1990 1 Hooker +WIB 31093 1990 16 Howard +WIB 31095 1990 6 Jefferson +WIB 31097 1990 2 Johnson +WIB 31099 1990 0 Kearney +WIB 31101 1990 126 Keith +WIB 31103 1990 2 Keya Paha +WIB 31105 1990 2 Kimball +WIB 31107 1990 82 Knox +WIB 31109 1990 20 Lancaster +WIB 31111 1990 29 Lincoln +WIB 31113 1990 1 Logan +WIB 31115 1990 3 Loup +WIB 31117 1990 3 McPherson +WIB 31119 1990 6 Madison +WIB 31121 1990 25 Merrick +WIB 31123 1990 16 Morrill +WIB 31125 1990 17 Nance +WIB 31127 1990 7 Nemaha +WIB 31129 1990 2 Nuckolls +WIB 31131 1990 8 Otoe +WIB 31133 1990 3 Pawnee +WIB 31135 1990 3 Perkins +WIB 31137 1990 2 Phelps +WIB 31139 1990 3 Pierce +WIB 31141 1990 29 Platte +WIB 31143 1990 5 Polk +WIB 31145 1990 4 Red Willow +WIB 31147 1990 6 Richardson +WIB 31149 1990 9 Rock +WIB 31151 1990 2 Saline +WIB 31153 1990 17 Sarpy +WIB 31155 1990 13 Saunders +WIB 31157 1990 16 Scotts Bluff +WIB 31159 1990 2 Seward +WIB 31161 1990 75 Sheridan +WIB 31163 1990 15 Sherman +WIB 31165 1990 2 Sioux +WIB 31167 1990 3 Stanton +WIB 31169 1990 2 Thayer +WIB 31171 1990 2 Thomas +WIB 31173 1990 6 Thurston +WIB 31175 1990 6 Valley +WIB 31177 1990 9 Washington +WIB 31179 1990 0 Wayne +WIB 31181 1990 0 Webster +WIB 31183 1990 1 Wheeler +WIB 31185 1990 1 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NE_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NE_WOB.ALO new file mode 100644 index 0000000..ee6f8db --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NE_WOB.ALO @@ -0,0 +1,118 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 31000 1990 1241 NE +WOB 31001 1990 2 Adams +WOB 31003 1990 4 Antelope +WOB 31005 1990 8 Arthur +WOB 31007 1990 0 Banner +WOB 31009 1990 9 Blaine +WOB 31011 1990 1 Boone +WOB 31013 1990 7 Box Butte +WOB 31015 1990 12 Boyd +WOB 31017 1990 10 Brown +WOB 31019 1990 19 Buffalo +WOB 31021 1990 11 Burt +WOB 31023 1990 2 Butler +WOB 31025 1990 18 Cass +WOB 31027 1990 14 Cedar +WOB 31029 1990 8 Chase +WOB 31031 1990 127 Cherry +WOB 31033 1990 0 Cheyenne +WOB 31035 1990 1 Clay +WOB 31037 1990 14 Colfax +WOB 31039 1990 7 Cuming +WOB 31041 1990 1 Custer +WOB 31043 1990 9 Dakota +WOB 31045 1990 12 Dawes +WOB 31047 1990 17 Dawson +WOB 31049 1990 2 Deuel +WOB 31051 1990 16 Dixon +WOB 31053 1990 25 Dodge +WOB 31055 1990 22 Douglas +WOB 31057 1990 2 Dundy +WOB 31059 1990 0 Fillmore +WOB 31061 1990 0 Franklin +WOB 31063 1990 14 Frontier +WOB 31065 1990 6 Furnas +WOB 31067 1990 12 Gage +WOB 31069 1990 69 Garden +WOB 31071 1990 3 Garfield +WOB 31073 1990 12 Gosper +WOB 31075 1990 18 Grant +WOB 31077 1990 2 Greeley +WOB 31079 1990 15 Hall +WOB 31081 1990 8 Hamilton +WOB 31083 1990 56 Harlan +WOB 31085 1990 1 Hayes +WOB 31087 1990 22 Hitchcock +WOB 31089 1990 13 Holt +WOB 31091 1990 1 Hooker +WOB 31093 1990 16 Howard +WOB 31095 1990 6 Jefferson +WOB 31097 1990 2 Johnson +WOB 31099 1990 0 Kearney +WOB 31101 1990 126 Keith +WOB 31103 1990 2 Keya Paha +WOB 31105 1990 2 Kimball +WOB 31107 1990 82 Knox +WOB 31109 1990 20 Lancaster +WOB 31111 1990 29 Lincoln +WOB 31113 1990 1 Logan +WOB 31115 1990 3 Loup +WOB 31117 1990 3 McPherson +WOB 31119 1990 6 Madison +WOB 31121 1990 25 Merrick +WOB 31123 1990 16 Morrill +WOB 31125 1990 17 Nance +WOB 31127 1990 7 Nemaha +WOB 31129 1990 2 Nuckolls +WOB 31131 1990 8 Otoe +WOB 31133 1990 3 Pawnee +WOB 31135 1990 3 Perkins +WOB 31137 1990 2 Phelps +WOB 31139 1990 3 Pierce +WOB 31141 1990 29 Platte +WOB 31143 1990 5 Polk +WOB 31145 1990 4 Red Willow +WOB 31147 1990 6 Richardson +WOB 31149 1990 9 Rock +WOB 31151 1990 2 Saline +WOB 31153 1990 17 Sarpy +WOB 31155 1990 13 Saunders +WOB 31157 1990 16 Scotts Bluff +WOB 31159 1990 2 Seward +WOB 31161 1990 75 Sheridan +WOB 31163 1990 15 Sherman +WOB 31165 1990 2 Sioux +WOB 31167 1990 3 Stanton +WOB 31169 1990 2 Thayer +WOB 31171 1990 2 Thomas +WOB 31173 1990 6 Thurston +WOB 31175 1990 6 Valley +WOB 31177 1990 9 Washington +WOB 31179 1990 0 Wayne +WOB 31181 1990 0 Webster +WOB 31183 1990 1 Wheeler +WOB 31185 1990 1 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_AIRTR.ALO new file mode 100644 index 0000000..e0a748e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_AIRTR.ALO @@ -0,0 +1,37 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 33000 2002 233.382 NH +AIR 33001 2002 0.034 Belknap +AIR 33003 2002 0.000 Carroll +AIR 33005 2002 31.900 Cheshire +AIR 33007 2002 0.060 Coos +AIR 33009 2002 0.294 Grafton +AIR 33011 2002 193.520 Hillsborough +AIR 33013 2002 0.830 Merrimack +AIR 33015 2002 6.710 Rockingham +AIR 33017 2002 0.000 Strafford +AIR 33019 2002 0.034 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_COAL.ALO new file mode 100644 index 0000000..b718da9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_COAL.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 33000 2002 0 NH +MIN 33001 2002 0 Belknap +MIN 33003 2002 0 Carroll +MIN 33005 2002 0 Cheshire +MIN 33007 2002 0 Coos +MIN 33009 2002 0 Grafton +MIN 33011 2002 0 Hillsborough +MIN 33013 2002 0 Merrimack +MIN 33015 2002 0 Rockingham +MIN 33017 2002 0 Strafford +MIN 33019 2002 0 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_CONST.ALO new file mode 100644 index 0000000..c83ea4d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_CONST.ALO @@ -0,0 +1,37 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 33000 2003 2172522 NH +CON 33001 2003 147645 Belknap +CON 33003 2003 138243 Carroll +CON 33005 2003 87031 Cheshire +CON 33007 2003 27326 Coos +CON 33009 2003 164253 Grafton +CON 33011 2003 650454 Hillsborough +CON 33013 2003 283149 Merrimack +CON 33015 2003 465815 Rockingham +CON 33017 2003 173088 Strafford +CON 33019 2003 35517 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_FARMS.ALO new file mode 100644 index 0000000..418549a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_FARMS.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 33000 2002 95983 NH +FRM 33001 2002 4087 Belknap +FRM 33003 2002 3950 Carroll +FRM 33005 2002 9036 Cheshire +FRM 33007 2002 10657 Coos +FRM 33009 2002 18732 Grafton +FRM 33011 2002 10373 Hillsborough +FRM 33013 2002 13983 Merrimack +FRM 33015 2002 8519 Rockingham +FRM 33017 2002 7897 Strafford +FRM 33019 2002 8749 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_GOLF.ALO new file mode 100644 index 0000000..fc02c63 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_GOLF.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 33000 2002 84 NH +GC 33001 2002 8 Belknap +GC 33003 2002 8 Carroll +GC 33005 2002 6 Cheshire +GC 33007 2002 3 Coos +GC 33009 2002 8 Grafton +GC 33011 2002 19 Hillsborough +GC 33013 2002 10 Merrimack +GC 33015 2002 15 Rockingham +GC 33017 2002 5 Strafford +GC 33019 2002 2 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_HOLSL.ALO new file mode 100644 index 0000000..65e78ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_HOLSL.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 33000 2002 2045 NH +COM 33001 2002 68 Belknap +COM 33003 2002 49 Carroll +COM 33005 2002 76 Cheshire +COM 33007 2002 29 Coos +COM 33009 2002 114 Grafton +COM 33011 2002 706 Hillsborough +COM 33013 2002 198 Merrimack +COM 33015 2002 642 Rockingham +COM 33017 2002 117 Strafford +COM 33019 2002 46 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_HOUSE.ALO new file mode 100644 index 0000000..bffe14d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_HOUSE.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 33000 2002 561179 NH +HOU 33001 2002 33024 Belknap +HOU 33003 2002 35620 Carroll +HOU 33005 2002 32419 Cheshire +HOU 33007 2002 19750 Coos +HOU 33009 2002 44552 Grafton +HOU 33011 2002 153798 Hillsborough +HOU 33013 2002 57883 Merrimack +HOU 33015 2002 116640 Rockingham +HOU 33017 2002 46930 Strafford +HOU 33019 2002 20563 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_LOGGN.ALO new file mode 100644 index 0000000..f515b33 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_LOGGN.ALO @@ -0,0 +1,37 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 33000 2002 246582044 NH +LOG 33001 2002 10938118 Belknap +LOG 33003 2002 18120663 Carroll +LOG 33005 2002 91640501 Cheshire +LOG 33007 2002 39940704 Coos +LOG 33009 2002 28777869 Grafton +LOG 33011 2002 18539582 Hillsborough +LOG 33013 2002 10069784 Merrimack +LOG 33015 2002 7251958 Rockingham +LOG 33017 2002 8794856 Strafford +LOG 33019 2002 12508009 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_LSCAP.ALO new file mode 100644 index 0000000..f0cca2f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_LSCAP.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 33000 2002 1735 NH +LSC 33001 2002 76 Belknap +LSC 33003 2002 57 Carroll +LSC 33005 2002 56 Cheshire +LSC 33007 2002 9 Coos +LSC 33009 2002 57 Grafton +LSC 33011 2002 688 Hillsborough +LSC 33013 2002 186 Merrimack +LSC 33015 2002 468 Rockingham +LSC 33017 2002 129 Strafford +LSC 33019 2002 9 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_MNFG.ALO new file mode 100644 index 0000000..d821e42 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_MNFG.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 33000 2002 170789 NH +MFG 33001 2002 7297 Belknap +MFG 33003 2002 2491 Carroll +MFG 33005 2002 11882 Cheshire +MFG 33007 2002 2957 Coos +MFG 33009 2002 10564 Grafton +MFG 33011 2002 62655 Hillsborough +MFG 33013 2002 15349 Merrimack +MFG 33015 2002 37318 Rockingham +MFG 33017 2002 12663 Strafford +MFG 33019 2002 7613 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_OIL.ALO new file mode 100644 index 0000000..e7aea47 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_OIL.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 33000 2002 20 NH +OIL 33001 2002 0 Belknap +OIL 33003 2002 4 Carroll +OIL 33005 2002 3 Cheshire +OIL 33007 2002 0 Coos +OIL 33009 2002 3 Grafton +OIL 33011 2002 0 Hillsborough +OIL 33013 2002 0 Merrimack +OIL 33015 2002 10 Rockingham +OIL 33017 2002 0 Strafford +OIL 33019 2002 0 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_POP.ALO new file mode 100644 index 0000000..0f76aa2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_POP.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 33000 2002 1275607 NH +POP 33001 2002 59181 Belknap +POP 33003 2002 45314 Carroll +POP 33005 2002 75222 Cheshire +POP 33007 2002 33404 Coos +POP 33009 2002 82934 Grafton +POP 33011 2002 392296 Hillsborough +POP 33013 2002 141815 Merrimack +POP 33015 2002 287906 Rockingham +POP 33017 2002 116068 Strafford +POP 33019 2002 41467 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_RAIL.ALO new file mode 100644 index 0000000..e8e77a6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_RAIL.ALO @@ -0,0 +1,38 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 33000 2002 4114.750 NH +RR 33001 2002 190.901 Belknap +RR 33003 2002 146.170 Carroll +RR 33005 2002 242.645 Cheshire +RR 33007 2002 107.752 Coos +RR 33009 2002 267.522 Grafton +RR 33011 2002 1265.437 Hillsborough +RR 33013 2002 457.455 Merrimack +RR 33015 2002 928.704 Rockingham +RR 33017 2002 374.403 Strafford +RR 33019 2002 133.761 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_RVPRK.ALO new file mode 100644 index 0000000..49c861e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_RVPRK.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 33000 2002 147 NH +RVP 33001 2002 20 Belknap +RVP 33003 2002 27 Carroll +RVP 33005 2002 5 Cheshire +RVP 33007 2002 12 Coos +RVP 33009 2002 32 Grafton +RVP 33011 2002 11 Hillsborough +RVP 33013 2002 8 Merrimack +RVP 33015 2002 21 Rockingham +RVP 33017 2002 10 Strafford +RVP 33019 2002 1 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_SBC.ALO new file mode 100644 index 0000000..2e01227 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_SBC.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 33000 2002 1735 NH +SBC 33001 2002 76 Belknap +SBC 33003 2002 30 Carroll +SBC 33005 2002 51 Cheshire +SBC 33007 2002 22 Coos +SBC 33009 2002 57 Grafton +SBC 33011 2002 688 Hillsborough +SBC 33013 2002 186 Merrimack +SBC 33015 2002 468 Rockingham +SBC 33017 2002 129 Strafford +SBC 33019 2002 28 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_SBR.ALO new file mode 100644 index 0000000..bfca858 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_SBR.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 33000 2002 561179 NH +SBR 33001 2002 33024 Belknap +SBR 33003 2002 35620 Carroll +SBR 33005 2002 32419 Cheshire +SBR 33007 2002 19750 Coos +SBR 33009 2002 44552 Grafton +SBR 33011 2002 153798 Hillsborough +SBR 33013 2002 57883 Merrimack +SBR 33015 2002 116640 Rockingham +SBR 33017 2002 46930 Strafford +SBR 33019 2002 20563 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_SNOWM.ALO new file mode 100644 index 0000000..7dfd5bd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_SNOWM.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 33000 2002 128 NH +SNM 33001 2002 17 Belknap +SNM 33003 2002 22 Carroll +SNM 33005 2002 13 Cheshire +SNM 33007 2002 30 Coos +SNM 33009 2002 12 Grafton +SNM 33011 2002 0 Hillsborough +SNM 33013 2002 7 Merrimack +SNM 33015 2002 3 Rockingham +SNM 33017 2002 0 Strafford +SNM 33019 2002 24 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_WIB.ALO new file mode 100644 index 0000000..f344271 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_WIB.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 33000 1990 920 NH +WIB 33001 1990 174 Belknap +WIB 33003 1990 151 Carroll +WIB 33005 1990 56 Cheshire +WIB 33007 1990 80 Coos +WIB 33009 1990 95 Grafton +WIB 33011 1990 41 Hillsborough +WIB 33013 1990 57 Merrimack +WIB 33015 1990 185 Rockingham +WIB 33017 1990 43 Strafford +WIB 33019 1990 38 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NH_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NH_WOB.ALO new file mode 100644 index 0000000..3b8f868 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NH_WOB.ALO @@ -0,0 +1,35 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 33000 1990 826 NH +WOB 33001 1990 174 Belknap +WOB 33003 1990 151 Carroll +WOB 33005 1990 56 Cheshire +WOB 33007 1990 80 Coos +WOB 33009 1990 95 Grafton +WOB 33011 1990 41 Hillsborough +WOB 33013 1990 57 Merrimack +WOB 33015 1990 94 Rockingham +WOB 33017 1990 40 Strafford +WOB 33019 1990 38 Sullivan +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_AIRTR.ALO new file mode 100644 index 0000000..8631fb0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_AIRTR.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 34000 2002 2112.657 NJ +AIR 34001 2002 72.490 Atlantic +AIR 34003 2002 4.510 Bergen +AIR 34005 2002 0.510 Burlington +AIR 34007 2002 0.000 Camden +AIR 34009 2002 0.620 Cape May +AIR 34011 2002 0.230 Cumberland +AIR 34013 2002 2015.845 Essex +AIR 34015 2002 0.170 Gloucester +AIR 34017 2002 0.000 Hudson +AIR 34019 2002 0.422 Hunterdon +AIR 34021 2002 4.370 Mercer +AIR 34023 2002 0.120 Middlesex +AIR 34025 2002 0.500 Monmouth +AIR 34027 2002 11.700 Morris +AIR 34029 2002 0.128 Ocean +AIR 34031 2002 0.140 Passaic +AIR 34033 2002 0.000 Salem +AIR 34035 2002 0.374 Somerset +AIR 34037 2002 0.010 Sussex +AIR 34039 2002 0.390 Union +AIR 34041 2002 0.127 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_COAL.ALO new file mode 100644 index 0000000..2ea9612 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_COAL.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 34000 2002 0 NJ +MIN 34001 2002 0 Atlantic +MIN 34003 2002 0 Bergen +MIN 34005 2002 0 Burlington +MIN 34007 2002 0 Camden +MIN 34009 2002 0 Cape May +MIN 34011 2002 0 Cumberland +MIN 34013 2002 0 Essex +MIN 34015 2002 0 Gloucester +MIN 34017 2002 0 Hudson +MIN 34019 2002 0 Hunterdon +MIN 34021 2002 0 Mercer +MIN 34023 2002 0 Middlesex +MIN 34025 2002 0 Monmouth +MIN 34027 2002 0 Morris +MIN 34029 2002 0 Ocean +MIN 34031 2002 0 Passaic +MIN 34033 2002 0 Salem +MIN 34035 2002 0 Somerset +MIN 34037 2002 0 Sussex +MIN 34039 2002 0 Union +MIN 34041 2002 0 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_CONST.ALO new file mode 100644 index 0000000..87b324b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_CONST.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 34000 2003 11650051 NJ +CON 34001 2003 502078 Atlantic +CON 34003 2003 943970 Bergen +CON 34005 2003 593176 Burlington +CON 34007 2003 424000 Camden +CON 34009 2003 421596 Cape May +CON 34011 2003 191099 Cumberland +CON 34013 2003 764908 Essex +CON 34015 2003 333319 Gloucester +CON 34017 2003 913638 Hudson +CON 34019 2003 315038 Hunterdon +CON 34021 2003 845525 Mercer +CON 34023 2003 1254122 Middlesex +CON 34025 2003 1070068 Monmouth +CON 34027 2003 574831 Morris +CON 34029 2003 849236 Ocean +CON 34031 2003 412038 Passaic +CON 34033 2003 46033 Salem +CON 34035 2003 497561 Somerset +CON 34037 2003 259429 Sussex +CON 34039 2003 340265 Union +CON 34041 2003 98120 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_FARMS.ALO new file mode 100644 index 0000000..c4f90ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_FARMS.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 34000 2002 444670 NJ +FRM 34001 2002 16060 Atlantic +FRM 34003 2002 415 Bergen +FRM 34005 2002 58380 Burlington +FRM 34007 2002 5484 Camden +FRM 34009 2002 3887 Cape May +FRM 34011 2002 47678 Cumberland +FRM 34013 2002 167 Essex +FRM 34015 2002 32892 Gloucester +FRM 34017 2002 0 Hudson +FRM 34019 2002 55189 Hunterdon +FRM 34021 2002 16121 Mercer +FRM 34023 2002 15118 Middlesex +FRM 34025 2002 26107 Monmouth +FRM 34027 2002 7516 Morris +FRM 34029 2002 2869 Ocean +FRM 34031 2002 167 Passaic +FRM 34033 2002 66815 Salem +FRM 34035 2002 15931 Somerset +FRM 34037 2002 27776 Sussex +FRM 34039 2002 104 Union +FRM 34041 2002 45995 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_GOLF.ALO new file mode 100644 index 0000000..ce7fcf0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_GOLF.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 34000 2002 235 NJ +GC 34001 2002 20 Atlantic +GC 34003 2002 16 Bergen +GC 34005 2002 19 Burlington +GC 34007 2002 12 Camden +GC 34009 2002 12 Cape May +GC 34011 2002 1 Cumberland +GC 34013 2002 15 Essex +GC 34015 2002 9 Gloucester +GC 34017 2002 0 Hudson +GC 34019 2002 5 Hunterdon +GC 34021 2002 5 Mercer +GC 34023 2002 9 Middlesex +GC 34025 2002 23 Monmouth +GC 34027 2002 19 Morris +GC 34029 2002 10 Ocean +GC 34031 2002 7 Passaic +GC 34033 2002 7 Salem +GC 34035 2002 15 Somerset +GC 34037 2002 16 Sussex +GC 34039 2002 8 Union +GC 34041 2002 7 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOLSL.ALO new file mode 100644 index 0000000..02adc1b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOLSL.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 34000 2002 16547 NJ +COM 34001 2002 227 Atlantic +COM 34003 2002 3587 Bergen +COM 34005 2002 741 Burlington +COM 34007 2002 828 Camden +COM 34009 2002 88 Cape May +COM 34011 2002 166 Cumberland +COM 34013 2002 1326 Essex +COM 34015 2002 358 Gloucester +COM 34017 2002 923 Hudson +COM 34019 2002 213 Hunterdon +COM 34021 2002 414 Mercer +COM 34023 2002 1777 Middlesex +COM 34025 2002 1192 Monmouth +COM 34027 2002 1292 Morris +COM 34029 2002 465 Ocean +COM 34031 2002 931 Passaic +COM 34033 2002 55 Salem +COM 34035 2002 619 Somerset +COM 34037 2002 180 Sussex +COM 34039 2002 1038 Union +COM 34041 2002 127 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOUSE.ALO new file mode 100644 index 0000000..82192c2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_HOUSE.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 34000 2002 3373095 NJ +HOU 34001 2002 117445 Atlantic +HOU 34003 2002 344102 Bergen +HOU 34005 2002 166647 Burlington +HOU 34007 2002 200934 Camden +HOU 34009 2002 93451 Cape May +HOU 34011 2002 53398 Cumberland +HOU 34013 2002 303119 Essex +HOU 34015 2002 98198 Gloucester +HOU 34017 2002 242058 Hudson +HOU 34019 2002 46333 Hunterdon +HOU 34021 2002 135770 Mercer +HOU 34023 2002 278121 Middlesex +HOU 34025 2002 247458 Monmouth +HOU 34027 2002 178869 Morris +HOU 34029 2002 258946 Ocean +HOU 34031 2002 170648 Passaic +HOU 34033 2002 26493 Salem +HOU 34035 2002 116372 Somerset +HOU 34037 2002 58071 Sussex +HOU 34039 2002 193797 Union +HOU 34041 2002 42865 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_LOGGN.ALO new file mode 100644 index 0000000..2ab23dd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_LOGGN.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 34000 2002 86214778 NJ +LOG 34001 2002 1471106 Atlantic +LOG 34003 2002 166455 Bergen +LOG 34005 2002 2598382 Burlington +LOG 34007 2002 152130 Camden +LOG 34009 2002 197744 Cape May +LOG 34011 2002 3957378 Cumberland +LOG 34013 2002 0 Essex +LOG 34015 2002 5559625 Gloucester +LOG 34017 2002 0 Hudson +LOG 34019 2002 13544750 Hunterdon +LOG 34021 2002 4477430 Mercer +LOG 34023 2002 4226733 Middlesex +LOG 34025 2002 5835678 Monmouth +LOG 34027 2002 7712743 Morris +LOG 34029 2002 232115 Ocean +LOG 34031 2002 36612 Passaic +LOG 34033 2002 4034694 Salem +LOG 34035 2002 887423 Somerset +LOG 34037 2002 15245148 Sussex +LOG 34039 2002 0 Union +LOG 34041 2002 15878631 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_LSCAP.ALO new file mode 100644 index 0000000..7ee96f4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_LSCAP.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 34000 2002 13290 NJ +LSC 34001 2002 301 Atlantic +LSC 34003 2002 1809 Bergen +LSC 34005 2002 707 Burlington +LSC 34007 2002 471 Camden +LSC 34009 2002 159 Cape May +LSC 34011 2002 94 Cumberland +LSC 34013 2002 420 Essex +LSC 34015 2002 590 Gloucester +LSC 34017 2002 66 Hudson +LSC 34019 2002 490 Hunterdon +LSC 34021 2002 666 Mercer +LSC 34023 2002 1365 Middlesex +LSC 34025 2002 1231 Monmouth +LSC 34027 2002 1409 Morris +LSC 34029 2002 550 Ocean +LSC 34031 2002 484 Passaic +LSC 34033 2002 65 Salem +LSC 34035 2002 1286 Somerset +LSC 34037 2002 186 Sussex +LSC 34039 2002 801 Union +LSC 34041 2002 140 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_MNFG.ALO new file mode 100644 index 0000000..3297957 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_MNFG.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 34000 2002 675176 NJ +MFG 34001 2002 7785 Atlantic +MFG 34003 2002 95563 Bergen +MFG 34005 2002 38899 Burlington +MFG 34007 2002 31385 Camden +MFG 34009 2002 1182 Cape May +MFG 34011 2002 18487 Cumberland +MFG 34013 2002 55333 Essex +MFG 34015 2002 19060 Gloucester +MFG 34017 2002 25888 Hudson +MFG 34019 2002 8272 Hunterdon +MFG 34021 2002 22537 Mercer +MFG 34023 2002 85417 Middlesex +MFG 34025 2002 22884 Monmouth +MFG 34027 2002 63596 Morris +MFG 34029 2002 12278 Ocean +MFG 34031 2002 48807 Passaic +MFG 34033 2002 6948 Salem +MFG 34035 2002 35250 Somerset +MFG 34037 2002 3800 Sussex +MFG 34039 2002 61287 Union +MFG 34041 2002 10518 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_OIL.ALO new file mode 100644 index 0000000..8f196be --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_OIL.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 34000 2002 57 NJ +OIL 34001 2002 3 Atlantic +OIL 34003 2002 6 Bergen +OIL 34005 2002 4 Burlington +OIL 34007 2002 0 Camden +OIL 34009 2002 2 Cape May +OIL 34011 2002 0 Cumberland +OIL 34013 2002 0 Essex +OIL 34015 2002 0 Gloucester +OIL 34017 2002 0 Hudson +OIL 34019 2002 0 Hunterdon +OIL 34021 2002 0 Mercer +OIL 34023 2002 28 Middlesex +OIL 34025 2002 2 Monmouth +OIL 34027 2002 4 Morris +OIL 34029 2002 6 Ocean +OIL 34031 2002 0 Passaic +OIL 34033 2002 0 Salem +OIL 34035 2002 0 Somerset +OIL 34037 2002 0 Sussex +OIL 34039 2002 0 Union +OIL 34041 2002 2 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_POP.ALO new file mode 100644 index 0000000..aa4e6c1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_POP.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 34000 2002 8577250 NJ +POP 34001 2002 259296 Atlantic +POP 34003 2002 894847 Bergen +POP 34005 2002 437784 Burlington +POP 34007 2002 512055 Camden +POP 34009 2002 101793 Cape May +POP 34011 2002 148040 Cumberland +POP 34013 2002 796435 Essex +POP 34015 2002 262583 Gloucester +POP 34017 2002 609626 Hudson +POP 34019 2002 126771 Hunterdon +POP 34021 2002 357622 Mercer +POP 34023 2002 770069 Middlesex +POP 34025 2002 628437 Monmouth +POP 34027 2002 478800 Morris +POP 34029 2002 537433 Ocean +POP 34031 2002 497068 Passaic +POP 34033 2002 64761 Salem +POP 34035 2002 307918 Somerset +POP 34037 2002 148874 Sussex +POP 34039 2002 529536 Union +POP 34041 2002 107502 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_RAIL.ALO new file mode 100644 index 0000000..2eaf54a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_RAIL.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 34000 2002 1506.560 NJ +RR 34001 2002 0.000 Atlantic +RR 34003 2002 256.620 Bergen +RR 34005 2002 0.000 Burlington +RR 34007 2002 0.000 Camden +RR 34009 2002 0.000 Cape May +RR 34011 2002 0.000 Cumberland +RR 34013 2002 92.800 Essex +RR 34015 2002 0.000 Gloucester +RR 34017 2002 15.390 Hudson +RR 34019 2002 153.130 Hunterdon +RR 34021 2002 28.470 Mercer +RR 34023 2002 290.690 Middlesex +RR 34025 2002 0.000 Monmouth +RR 34027 2002 84.840 Morris +RR 34029 2002 0.000 Ocean +RR 34031 2002 52.910 Passaic +RR 34033 2002 0.000 Salem +RR 34035 2002 165.590 Somerset +RR 34037 2002 0.000 Sussex +RR 34039 2002 316.820 Union +RR 34041 2002 49.300 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_RVPRK.ALO new file mode 100644 index 0000000..f9b89ab --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_RVPRK.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 34000 2002 129 NJ +RVP 34001 2002 12 Atlantic +RVP 34003 2002 5 Bergen +RVP 34005 2002 11 Burlington +RVP 34007 2002 5 Camden +RVP 34009 2002 31 Cape May +RVP 34011 2002 0 Cumberland +RVP 34013 2002 2 Essex +RVP 34015 2002 4 Gloucester +RVP 34017 2002 1 Hudson +RVP 34019 2002 2 Hunterdon +RVP 34021 2002 2 Mercer +RVP 34023 2002 1 Middlesex +RVP 34025 2002 4 Monmouth +RVP 34027 2002 7 Morris +RVP 34029 2002 12 Ocean +RVP 34031 2002 4 Passaic +RVP 34033 2002 3 Salem +RVP 34035 2002 3 Somerset +RVP 34037 2002 11 Sussex +RVP 34039 2002 3 Union +RVP 34041 2002 6 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBC.ALO new file mode 100644 index 0000000..0cd485d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBC.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 34000 2002 12736 NJ +SBC 34001 2002 0 Atlantic +SBC 34003 2002 1809 Bergen +SBC 34005 2002 707 Burlington +SBC 34007 2002 471 Camden +SBC 34009 2002 0 Cape May +SBC 34011 2002 0 Cumberland +SBC 34013 2002 420 Essex +SBC 34015 2002 590 Gloucester +SBC 34017 2002 66 Hudson +SBC 34019 2002 490 Hunterdon +SBC 34021 2002 666 Mercer +SBC 34023 2002 1365 Middlesex +SBC 34025 2002 1231 Monmouth +SBC 34027 2002 1409 Morris +SBC 34029 2002 550 Ocean +SBC 34031 2002 484 Passaic +SBC 34033 2002 65 Salem +SBC 34035 2002 1286 Somerset +SBC 34037 2002 186 Sussex +SBC 34039 2002 801 Union +SBC 34041 2002 140 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBR.ALO new file mode 100644 index 0000000..c516ef0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SBR.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 34000 2002 3108801 NJ +SBR 34001 2002 0 Atlantic +SBR 34003 2002 344102 Bergen +SBR 34005 2002 166647 Burlington +SBR 34007 2002 200934 Camden +SBR 34009 2002 0 Cape May +SBR 34011 2002 0 Cumberland +SBR 34013 2002 303119 Essex +SBR 34015 2002 98198 Gloucester +SBR 34017 2002 242058 Hudson +SBR 34019 2002 46333 Hunterdon +SBR 34021 2002 135770 Mercer +SBR 34023 2002 278121 Middlesex +SBR 34025 2002 247458 Monmouth +SBR 34027 2002 178869 Morris +SBR 34029 2002 258946 Ocean +SBR 34031 2002 170648 Passaic +SBR 34033 2002 26493 Salem +SBR 34035 2002 116372 Somerset +SBR 34037 2002 58071 Sussex +SBR 34039 2002 193797 Union +SBR 34041 2002 42865 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SNOWM.ALO new file mode 100644 index 0000000..2eda57c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_SNOWM.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 34000 2002 0 NJ +SNM 34001 2002 0 Atlantic +SNM 34003 2002 0 Bergen +SNM 34005 2002 0 Burlington +SNM 34007 2002 0 Camden +SNM 34009 2002 0 Cape May +SNM 34011 2002 0 Cumberland +SNM 34013 2002 0 Essex +SNM 34015 2002 0 Gloucester +SNM 34017 2002 0 Hudson +SNM 34019 2002 0 Hunterdon +SNM 34021 2002 0 Mercer +SNM 34023 2002 0 Middlesex +SNM 34025 2002 0 Monmouth +SNM 34027 2002 0 Morris +SNM 34029 2002 0 Ocean +SNM 34031 2002 0 Passaic +SNM 34033 2002 0 Salem +SNM 34035 2002 0 Somerset +SNM 34037 2002 0 Sussex +SNM 34039 2002 0 Union +SNM 34041 2002 0 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_WIB.ALO new file mode 100644 index 0000000..f8fb462 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_WIB.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 34000 1990 2368 NJ +WIB 34001 1990 245 Atlantic +WIB 34003 1990 33 Bergen +WIB 34005 1990 38 Burlington +WIB 34007 1990 14 Camden +WIB 34009 1990 536 Cape May +WIB 34011 1990 246 Cumberland +WIB 34013 1990 10 Essex +WIB 34015 1990 31 Gloucester +WIB 34017 1990 53 Hudson +WIB 34019 1990 20 Hunterdon +WIB 34021 1990 8 Mercer +WIB 34023 1990 31 Middlesex +WIB 34025 1990 284 Monmouth +WIB 34027 1990 32 Morris +WIB 34029 1990 646 Ocean +WIB 34031 1990 31 Passaic +WIB 34033 1990 52 Salem +WIB 34035 1990 1 Somerset +WIB 34037 1990 38 Sussex +WIB 34039 1990 6 Union +WIB 34041 1990 13 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NJ_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NJ_WOB.ALO new file mode 100644 index 0000000..769e5b8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NJ_WOB.ALO @@ -0,0 +1,46 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 34000 1990 1138 NJ +WOB 34001 1990 144 Atlantic +WOB 34003 1990 33 Bergen +WOB 34005 1990 38 Burlington +WOB 34007 1990 14 Camden +WOB 34009 1990 135 Cape May +WOB 34011 1990 65 Cumberland +WOB 34013 1990 9 Essex +WOB 34015 1990 31 Gloucester +WOB 34017 1990 42 Hudson +WOB 34019 1990 20 Hunterdon +WOB 34021 1990 8 Mercer +WOB 34023 1990 21 Middlesex +WOB 34025 1990 71 Monmouth +WOB 34027 1990 32 Morris +WOB 34029 1990 355 Ocean +WOB 34031 1990 31 Passaic +WOB 34033 1990 31 Salem +WOB 34035 1990 1 Somerset +WOB 34037 1990 38 Sussex +WOB 34039 1990 6 Union +WOB 34041 1990 13 Warren +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_AIRTR.ALO new file mode 100644 index 0000000..f97818d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_AIRTR.ALO @@ -0,0 +1,60 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 35000 2002 490.036 NM +AIR 35001 2002 406.810 Bernalillo +AIR 35003 2002 0.000 Catron +AIR 35005 2002 2.890 Chaves +AIR 35006 2002 0.052 Cibola +AIR 35007 2002 0.080 Colfax +AIR 35009 2002 16.779 Curry +AIR 35011 2002 0.004 De Baca +AIR 35013 2002 13.150 Dona Ana +AIR 35015 2002 11.500 Eddy +AIR 35017 2002 16.610 Grant +AIR 35019 2002 0.015 Guadalupe +AIR 35021 2002 0.000 Harding +AIR 35023 2002 0.024 Hidalgo +AIR 35025 2002 0.540 Lea +AIR 35027 2002 0.117 Lincoln +AIR 35028 2002 0.334 Los Alamos +AIR 35029 2002 0.500 Luna +AIR 35031 2002 7.260 McKinley +AIR 35033 2002 0.000 Mora +AIR 35035 2002 11.460 Otero +AIR 35037 2002 0.090 Quay +AIR 35039 2002 0.002 Rio Arriba +AIR 35041 2002 0.080 Roosevelt +AIR 35043 2002 0.000 Sandoval +AIR 35045 2002 0.708 San Juan +AIR 35047 2002 0.070 San Miguel +AIR 35049 2002 0.645 Santa Fe +AIR 35051 2002 0.110 Sierra +AIR 35053 2002 0.059 Socorro +AIR 35055 2002 0.127 Taos +AIR 35057 2002 0.000 Torrance +AIR 35059 2002 0.020 Union +AIR 35061 2002 0.000 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_COAL.ALO new file mode 100644 index 0000000..f0458cc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_COAL.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 35000 2002 1753 NM +MIN 35001 2002 0 Bernalillo +MIN 35003 2002 0 Catron +MIN 35005 2002 0 Chaves +MIN 35006 2002 0 Cibola +MIN 35007 2002 0 Colfax +MIN 35009 2002 0 Curry +MIN 35011 2002 0 De Baca +MIN 35013 2002 0 Dona Ana +MIN 35015 2002 0 Eddy +MIN 35017 2002 0 Grant +MIN 35019 2002 0 Guadalupe +MIN 35021 2002 0 Harding +MIN 35023 2002 0 Hidalgo +MIN 35025 2002 0 Lea +MIN 35027 2002 0 Lincoln +MIN 35028 2002 0 Los Alamos +MIN 35029 2002 0 Luna +MIN 35031 2002 0 McKinley +MIN 35033 2002 0 Mora +MIN 35035 2002 0 Otero +MIN 35037 2002 0 Quay +MIN 35039 2002 0 Rio Arriba +MIN 35041 2002 0 Roosevelt +MIN 35043 2002 0 Sandoval +MIN 35045 2002 1753 San Juan +MIN 35047 2002 0 San Miguel +MIN 35049 2002 0 Santa Fe +MIN 35051 2002 0 Sierra +MIN 35053 2002 0 Socorro +MIN 35055 2002 0 Taos +MIN 35057 2002 0 Torrance +MIN 35059 2002 0 Union +MIN 35061 2002 0 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_CONST.ALO new file mode 100644 index 0000000..6bd47d0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_CONST.ALO @@ -0,0 +1,60 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 35000 2003 3194307 NM +CON 35001 2003 1275734 Bernalillo +CON 35003 2003 6055 Catron +CON 35005 2003 36476 Chaves +CON 35006 2003 28471 Cibola +CON 35007 2003 23648 Colfax +CON 35009 2003 50687 Curry +CON 35011 2003 2490 De Baca +CON 35013 2003 359458 Dona Ana +CON 35015 2003 26341 Eddy +CON 35017 2003 6947 Grant +CON 35019 2003 22131 Guadalupe +CON 35021 2003 2123 Harding +CON 35023 2003 8634 Hidalgo +CON 35025 2003 46005 Lea +CON 35027 2003 51094 Lincoln +CON 35028 2003 89180 Los Alamos +CON 35029 2003 19153 Luna +CON 35031 2003 120369 McKinley +CON 35033 2003 3559 Mora +CON 35035 2003 195240 Otero +CON 35037 2003 12213 Quay +CON 35039 2003 34888 Rio Arriba +CON 35041 2003 6895 Roosevelt +CON 35043 2003 165367 Sandoval +CON 35045 2003 110221 San Juan +CON 35047 2003 26635 San Miguel +CON 35049 2003 237058 Santa Fe +CON 35051 2003 7082 Sierra +CON 35053 2003 22602 Socorro +CON 35055 2003 82139 Taos +CON 35057 2003 18236 Torrance +CON 35059 2003 1379 Union +CON 35061 2003 95795 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_FARMS.ALO new file mode 100644 index 0000000..743e2f7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_FARMS.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 35000 2002 856166 NM +FRM 35001 2002 5173 Bernalillo +FRM 35003 2002 1879 Catron +FRM 35005 2002 61308 Chaves +FRM 35006 2002 21767 Cibola +FRM 35007 2002 21767 Colfax +FRM 35009 2002 21767 Curry +FRM 35011 2002 6387 De Baca +FRM 35013 2002 81938 Dona Ana +FRM 35015 2002 45041 Eddy +FRM 35017 2002 21767 Grant +FRM 35019 2002 1394 Guadalupe +FRM 35021 2002 21767 Harding +FRM 35023 2002 7165 Hidalgo +FRM 35025 2002 50456 Lea +FRM 35027 2002 533 Lincoln +FRM 35028 2002 21767 Los Alamos +FRM 35029 2002 22941 Luna +FRM 35031 2002 21767 McKinley +FRM 35033 2002 9201 Mora +FRM 35035 2002 5975 Otero +FRM 35037 2002 38007 Quay +FRM 35039 2002 21767 Rio Arriba +FRM 35041 2002 151887 Roosevelt +FRM 35043 2002 4653 Sandoval +FRM 35045 2002 54484 San Juan +FRM 35047 2002 4668 San Miguel +FRM 35049 2002 16799 Santa Fe +FRM 35051 2002 5827 Sierra +FRM 35053 2002 10381 Socorro +FRM 35055 2002 21767 Taos +FRM 35057 2002 17393 Torrance +FRM 35059 2002 47351 Union +FRM 35061 2002 9424 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_GOLF.ALO new file mode 100644 index 0000000..02778f7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_GOLF.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 35000 2002 43 NM +GC 35001 2002 8 Bernalillo +GC 35003 2002 0 Catron +GC 35005 2002 1 Chaves +GC 35006 2002 1 Cibola +GC 35007 2002 1 Colfax +GC 35009 2002 0 Curry +GC 35011 2002 0 De Baca +GC 35013 2002 4 Dona Ana +GC 35015 2002 2 Eddy +GC 35017 2002 2 Grant +GC 35019 2002 0 Guadalupe +GC 35021 2002 0 Harding +GC 35023 2002 0 Hidalgo +GC 35025 2002 4 Lea +GC 35027 2002 4 Lincoln +GC 35028 2002 0 Los Alamos +GC 35029 2002 1 Luna +GC 35031 2002 0 McKinley +GC 35033 2002 0 Mora +GC 35035 2002 2 Otero +GC 35037 2002 0 Quay +GC 35039 2002 0 Rio Arriba +GC 35041 2002 1 Roosevelt +GC 35043 2002 4 Sandoval +GC 35045 2002 3 San Juan +GC 35047 2002 0 San Miguel +GC 35049 2002 2 Santa Fe +GC 35051 2002 0 Sierra +GC 35053 2002 0 Socorro +GC 35055 2002 2 Taos +GC 35057 2002 0 Torrance +GC 35059 2002 1 Union +GC 35061 2002 0 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_HOLSL.ALO new file mode 100644 index 0000000..1a073fa --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_HOLSL.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 35000 2002 2089 NM +COM 35001 2002 981 Bernalillo +COM 35003 2002 1 Catron +COM 35005 2002 66 Chaves +COM 35006 2002 16 Cibola +COM 35007 2002 9 Colfax +COM 35009 2002 55 Curry +COM 35011 2002 3 De Baca +COM 35013 2002 131 Dona Ana +COM 35015 2002 59 Eddy +COM 35017 2002 24 Grant +COM 35019 2002 1 Guadalupe +COM 35021 2002 1 Harding +COM 35023 2002 2 Hidalgo +COM 35025 2002 107 Lea +COM 35027 2002 15 Lincoln +COM 35028 2002 10 Los Alamos +COM 35029 2002 18 Luna +COM 35031 2002 66 McKinley +COM 35033 2002 0 Mora +COM 35035 2002 23 Otero +COM 35037 2002 7 Quay +COM 35039 2002 15 Rio Arriba +COM 35041 2002 15 Roosevelt +COM 35043 2002 49 Sandoval +COM 35045 2002 161 San Juan +COM 35047 2002 16 San Miguel +COM 35049 2002 170 Santa Fe +COM 35051 2002 2 Sierra +COM 35053 2002 5 Socorro +COM 35055 2002 19 Taos +COM 35057 2002 12 Torrance +COM 35059 2002 2 Union +COM 35061 2002 28 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_HOUSE.ALO new file mode 100644 index 0000000..648b704 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_HOUSE.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 35000 2002 805294 NM +HOU 35001 2002 248663 Bernalillo +HOU 35003 2002 2693 Catron +HOU 35005 2002 25948 Chaves +HOU 35006 2002 10569 Cibola +HOU 35007 2002 9047 Colfax +HOU 35009 2002 19454 Curry +HOU 35011 2002 1355 De Baca +HOU 35013 2002 68056 Dona Ana +HOU 35015 2002 22566 Eddy +HOU 35017 2002 14353 Grant +HOU 35019 2002 2225 Guadalupe +HOU 35021 2002 578 Harding +HOU 35023 2002 2954 Hidalgo +HOU 35025 2002 23702 Lea +HOU 35027 2002 15787 Lincoln +HOU 35028 2002 8318 Los Alamos +HOU 35029 2002 11586 Luna +HOU 35031 2002 27302 McKinley +HOU 35033 2002 3033 Mora +HOU 35035 2002 30026 Otero +HOU 35037 2002 5782 Quay +HOU 35039 2002 18451 Rio Arriba +HOU 35041 2002 7870 Roosevelt +HOU 35043 2002 36680 Sandoval +HOU 35045 2002 44176 San Juan +HOU 35047 2002 14540 San Miguel +HOU 35049 2002 59123 Santa Fe +HOU 35051 2002 8982 Sierra +HOU 35053 2002 8056 Socorro +HOU 35055 2002 17870 Taos +HOU 35057 2002 7509 Torrance +HOU 35059 2002 2294 Union +HOU 35061 2002 25746 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_LOGGN.ALO new file mode 100644 index 0000000..0c3828d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_LOGGN.ALO @@ -0,0 +1,60 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 35000 2002 24216145 NM +LOG 35001 2002 126456 Bernalillo +LOG 35003 2002 596131 Catron +LOG 35005 2002 0 Chaves +LOG 35006 2002 1726062 Cibola +LOG 35007 2002 3847649 Colfax +LOG 35009 2002 0 Curry +LOG 35011 2002 0 De Baca +LOG 35013 2002 0 Dona Ana +LOG 35015 2002 0 Eddy +LOG 35017 2002 0 Grant +LOG 35019 2002 0 Guadalupe +LOG 35021 2002 0 Harding +LOG 35023 2002 0 Hidalgo +LOG 35025 2002 0 Lea +LOG 35027 2002 39808 Lincoln +LOG 35028 2002 0 Los Alamos +LOG 35029 2002 0 Luna +LOG 35031 2002 404847 McKinley +LOG 35033 2002 567085 Mora +LOG 35035 2002 7678236 Otero +LOG 35037 2002 0 Quay +LOG 35039 2002 6125906 Rio Arriba +LOG 35041 2002 0 Roosevelt +LOG 35043 2002 1258947 Sandoval +LOG 35045 2002 193938 San Juan +LOG 35047 2002 877775 San Miguel +LOG 35049 2002 0 Santa Fe +LOG 35051 2002 0 Sierra +LOG 35053 2002 379885 Socorro +LOG 35055 2002 335943 Taos +LOG 35057 2002 53422 Torrance +LOG 35059 2002 0 Union +LOG 35061 2002 4055 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_LSCAP.ALO new file mode 100644 index 0000000..093f5e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_LSCAP.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 35000 2002 1980 NM +LSC 35001 2002 1321 Bernalillo +LSC 35003 2002 0 Catron +LSC 35005 2002 21 Chaves +LSC 35006 2002 0 Cibola +LSC 35007 2002 4 Colfax +LSC 35009 2002 18 Curry +LSC 35011 2002 0 De Baca +LSC 35013 2002 151 Dona Ana +LSC 35015 2002 4 Eddy +LSC 35017 2002 4 Grant +LSC 35019 2002 0 Guadalupe +LSC 35021 2002 0 Harding +LSC 35023 2002 0 Hidalgo +LSC 35025 2002 8 Lea +LSC 35027 2002 4 Lincoln +LSC 35028 2002 0 Los Alamos +LSC 35029 2002 4 Luna +LSC 35031 2002 4 McKinley +LSC 35033 2002 0 Mora +LSC 35035 2002 19 Otero +LSC 35037 2002 0 Quay +LSC 35039 2002 4 Rio Arriba +LSC 35041 2002 4 Roosevelt +LSC 35043 2002 18 Sandoval +LSC 35045 2002 4 San Juan +LSC 35047 2002 10 San Miguel +LSC 35049 2002 304 Santa Fe +LSC 35051 2002 4 Sierra +LSC 35053 2002 0 Socorro +LSC 35055 2002 4 Taos +LSC 35057 2002 4 Torrance +LSC 35059 2002 0 Union +LSC 35061 2002 62 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_MNFG.ALO new file mode 100644 index 0000000..128da9a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_MNFG.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 35000 2002 65764 NM +MFG 35001 2002 32011 Bernalillo +MFG 35003 2002 23 Catron +MFG 35005 2002 2735 Chaves +MFG 35006 2002 1048 Cibola +MFG 35007 2002 535 Colfax +MFG 35009 2002 575 Curry +MFG 35011 2002 27 De Baca +MFG 35013 2002 4483 Dona Ana +MFG 35015 2002 2225 Eddy +MFG 35017 2002 574 Grant +MFG 35019 2002 23 Guadalupe +MFG 35021 2002 0 Harding +MFG 35023 2002 68 Hidalgo +MFG 35025 2002 960 Lea +MFG 35027 2002 133 Lincoln +MFG 35028 2002 170 Los Alamos +MFG 35029 2002 531 Luna +MFG 35031 2002 1482 McKinley +MFG 35033 2002 21 Mora +MFG 35035 2002 828 Otero +MFG 35037 2002 86 Quay +MFG 35039 2002 531 Rio Arriba +MFG 35041 2002 263 Roosevelt +MFG 35043 2002 8777 Sandoval +MFG 35045 2002 2770 San Juan +MFG 35047 2002 152 San Miguel +MFG 35049 2002 2424 Santa Fe +MFG 35051 2002 110 Sierra +MFG 35053 2002 259 Socorro +MFG 35055 2002 265 Taos +MFG 35057 2002 119 Torrance +MFG 35059 2002 33 Union +MFG 35061 2002 1523 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_OIL.ALO new file mode 100644 index 0000000..10e3f51 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_OIL.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 35000 2002 5847 NM +OIL 35001 2002 241 Bernalillo +OIL 35003 2002 0 Catron +OIL 35005 2002 200 Chaves +OIL 35006 2002 0 Cibola +OIL 35007 2002 17 Colfax +OIL 35009 2002 31 Curry +OIL 35011 2002 0 De Baca +OIL 35013 2002 0 Dona Ana +OIL 35015 2002 1335 Eddy +OIL 35017 2002 31 Grant +OIL 35019 2002 0 Guadalupe +OIL 35021 2002 0 Harding +OIL 35023 2002 0 Hidalgo +OIL 35025 2002 1185 Lea +OIL 35027 2002 0 Lincoln +OIL 35028 2002 0 Los Alamos +OIL 35029 2002 0 Luna +OIL 35031 2002 104 McKinley +OIL 35033 2002 0 Mora +OIL 35035 2002 31 Otero +OIL 35037 2002 17 Quay +OIL 35039 2002 104 Rio Arriba +OIL 35041 2002 0 Roosevelt +OIL 35043 2002 0 Sandoval +OIL 35045 2002 2483 San Juan +OIL 35047 2002 0 San Miguel +OIL 35049 2002 17 Santa Fe +OIL 35051 2002 0 Sierra +OIL 35053 2002 17 Socorro +OIL 35055 2002 0 Taos +OIL 35057 2002 0 Torrance +OIL 35059 2002 17 Union +OIL 35061 2002 17 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_POP.ALO new file mode 100644 index 0000000..08c6739 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_POP.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 35000 2002 1855143 NM +POP 35001 2002 573044 Bernalillo +POP 35003 2002 3498 Catron +POP 35005 2002 60805 Chaves +POP 35006 2002 26934 Cibola +POP 35007 2002 14212 Colfax +POP 35009 2002 44758 Curry +POP 35011 2002 2139 De Baca +POP 35013 2002 178590 Dona Ana +POP 35015 2002 51324 Eddy +POP 35017 2002 30411 Grant +POP 35019 2002 4639 Guadalupe +POP 35021 2002 749 Harding +POP 35023 2002 5351 Hidalgo +POP 35025 2002 55769 Lea +POP 35027 2002 19745 Lincoln +POP 35028 2002 18239 Los Alamos +POP 35029 2002 25253 Luna +POP 35031 2002 73698 McKinley +POP 35033 2002 5237 Mora +POP 35035 2002 61678 Otero +POP 35037 2002 9706 Quay +POP 35039 2002 41020 Rio Arriba +POP 35041 2002 18192 Roosevelt +POP 35043 2002 95713 Sandoval +POP 35045 2002 119984 San Juan +POP 35047 2002 29652 San Miguel +POP 35049 2002 134196 Santa Fe +POP 35051 2002 12991 Sierra +POP 35053 2002 17967 Socorro +POP 35055 2002 30827 Taos +POP 35057 2002 16713 Torrance +POP 35059 2002 3965 Union +POP 35061 2002 68144 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_RAIL.ALO new file mode 100644 index 0000000..c499eeb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_RAIL.ALO @@ -0,0 +1,60 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 35000 2002 27454.550 NM +RR 35001 2002 232.920 Bernalillo +RR 35003 2002 0.000 Catron +RR 35005 2002 114.480 Chaves +RR 35006 2002 1321.870 Cibola +RR 35007 2002 275.730 Colfax +RR 35009 2002 2274.600 Curry +RR 35011 2002 1760.520 De Baca +RR 35013 2002 1131.670 Dona Ana +RR 35015 2002 58.680 Eddy +RR 35017 2002 698.060 Grant +RR 35019 2002 2861.170 Guadalupe +RR 35021 2002 0.000 Harding +RR 35023 2002 547.350 Hidalgo +RR 35025 2002 0.000 Lea +RR 35027 2002 719.080 Lincoln +RR 35028 2002 0.000 Los Alamos +RR 35029 2002 1416.130 Luna +RR 35031 2002 2765.070 McKinley +RR 35033 2002 159.120 Mora +RR 35035 2002 498.530 Otero +RR 35037 2002 610.850 Quay +RR 35039 2002 0.000 Rio Arriba +RR 35041 2002 1868.560 Roosevelt +RR 35043 2002 151.920 Sandoval +RR 35045 2002 0.000 San Juan +RR 35047 2002 298.770 San Miguel +RR 35049 2002 250.960 Santa Fe +RR 35051 2002 101.710 Sierra +RR 35053 2002 1218.300 Socorro +RR 35055 2002 0.000 Taos +RR 35057 2002 1760.320 Torrance +RR 35059 2002 753.460 Union +RR 35061 2002 3604.720 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_RVPRK.ALO new file mode 100644 index 0000000..2f318c8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_RVPRK.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 35000 2002 81 NM +RVP 35001 2002 7 Bernalillo +RVP 35003 2002 0 Catron +RVP 35005 2002 0 Chaves +RVP 35006 2002 1 Cibola +RVP 35007 2002 2 Colfax +RVP 35009 2002 0 Curry +RVP 35011 2002 0 De Baca +RVP 35013 2002 3 Dona Ana +RVP 35015 2002 7 Eddy +RVP 35017 2002 3 Grant +RVP 35019 2002 1 Guadalupe +RVP 35021 2002 0 Harding +RVP 35023 2002 1 Hidalgo +RVP 35025 2002 0 Lea +RVP 35027 2002 6 Lincoln +RVP 35028 2002 1 Los Alamos +RVP 35029 2002 2 Luna +RVP 35031 2002 2 McKinley +RVP 35033 2002 0 Mora +RVP 35035 2002 9 Otero +RVP 35037 2002 1 Quay +RVP 35039 2002 3 Rio Arriba +RVP 35041 2002 0 Roosevelt +RVP 35043 2002 3 Sandoval +RVP 35045 2002 1 San Juan +RVP 35047 2002 8 San Miguel +RVP 35049 2002 8 Santa Fe +RVP 35051 2002 4 Sierra +RVP 35053 2002 0 Socorro +RVP 35055 2002 5 Taos +RVP 35057 2002 1 Torrance +RVP 35059 2002 2 Union +RVP 35061 2002 0 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_SBC.ALO new file mode 100644 index 0000000..b8c4c3a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_SBC.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 35000 2002 1764 NM +SBC 35001 2002 1321 Bernalillo +SBC 35003 2002 0 Catron +SBC 35005 2002 0 Chaves +SBC 35006 2002 0 Cibola +SBC 35007 2002 2 Colfax +SBC 35009 2002 0 Curry +SBC 35011 2002 0 De Baca +SBC 35013 2002 0 Dona Ana +SBC 35015 2002 0 Eddy +SBC 35017 2002 0 Grant +SBC 35019 2002 0 Guadalupe +SBC 35021 2002 0 Harding +SBC 35023 2002 0 Hidalgo +SBC 35025 2002 0 Lea +SBC 35027 2002 3 Lincoln +SBC 35028 2002 0 Los Alamos +SBC 35029 2002 0 Luna +SBC 35031 2002 10 McKinley +SBC 35033 2002 0 Mora +SBC 35035 2002 8 Otero +SBC 35037 2002 0 Quay +SBC 35039 2002 5 Rio Arriba +SBC 35041 2002 0 Roosevelt +SBC 35043 2002 18 Sandoval +SBC 35045 2002 15 San Juan +SBC 35047 2002 10 San Miguel +SBC 35049 2002 304 Santa Fe +SBC 35051 2002 0 Sierra +SBC 35053 2002 0 Socorro +SBC 35055 2002 4 Taos +SBC 35057 2002 2 Torrance +SBC 35059 2002 0 Union +SBC 35061 2002 62 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_SBR.ALO new file mode 100644 index 0000000..341b913 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_SBR.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 35000 2002 591767 NM +SBR 35001 2002 248663 Bernalillo +SBR 35003 2002 2693 Catron +SBR 35005 2002 0 Chaves +SBR 35006 2002 10569 Cibola +SBR 35007 2002 9047 Colfax +SBR 35009 2002 0 Curry +SBR 35011 2002 1355 De Baca +SBR 35013 2002 0 Dona Ana +SBR 35015 2002 0 Eddy +SBR 35017 2002 0 Grant +SBR 35019 2002 2225 Guadalupe +SBR 35021 2002 578 Harding +SBR 35023 2002 0 Hidalgo +SBR 35025 2002 0 Lea +SBR 35027 2002 15787 Lincoln +SBR 35028 2002 8318 Los Alamos +SBR 35029 2002 0 Luna +SBR 35031 2002 27302 McKinley +SBR 35033 2002 3033 Mora +SBR 35035 2002 30026 Otero +SBR 35037 2002 5782 Quay +SBR 35039 2002 18451 Rio Arriba +SBR 35041 2002 0 Roosevelt +SBR 35043 2002 36680 Sandoval +SBR 35045 2002 44176 San Juan +SBR 35047 2002 14540 San Miguel +SBR 35049 2002 59123 Santa Fe +SBR 35051 2002 0 Sierra +SBR 35053 2002 0 Socorro +SBR 35055 2002 17870 Taos +SBR 35057 2002 7509 Torrance +SBR 35059 2002 2294 Union +SBR 35061 2002 25746 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_SNOWM.ALO new file mode 100644 index 0000000..fa82cad --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_SNOWM.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 35000 2002 375 NM +SNM 35001 2002 0 Bernalillo +SNM 35003 2002 0 Catron +SNM 35005 2002 0 Chaves +SNM 35006 2002 0 Cibola +SNM 35007 2002 70 Colfax +SNM 35009 2002 0 Curry +SNM 35011 2002 0 De Baca +SNM 35013 2002 0 Dona Ana +SNM 35015 2002 0 Eddy +SNM 35017 2002 0 Grant +SNM 35019 2002 0 Guadalupe +SNM 35021 2002 0 Harding +SNM 35023 2002 0 Hidalgo +SNM 35025 2002 0 Lea +SNM 35027 2002 51 Lincoln +SNM 35028 2002 0 Los Alamos +SNM 35029 2002 0 Luna +SNM 35031 2002 0 McKinley +SNM 35033 2002 191 Mora +SNM 35035 2002 0 Otero +SNM 35037 2002 0 Quay +SNM 35039 2002 24 Rio Arriba +SNM 35041 2002 0 Roosevelt +SNM 35043 2002 0 Sandoval +SNM 35045 2002 0 San Juan +SNM 35047 2002 0 San Miguel +SNM 35049 2002 7 Santa Fe +SNM 35051 2002 0 Sierra +SNM 35053 2002 0 Socorro +SNM 35055 2002 32 Taos +SNM 35057 2002 0 Torrance +SNM 35059 2002 0 Union +SNM 35061 2002 0 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_WIB.ALO new file mode 100644 index 0000000..cc01955 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_WIB.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 35000 1990 605 NM +WIB 35001 1990 7 Bernalillo +WIB 35003 1990 3 Catron +WIB 35005 1990 11 Chaves +WIB 35006 1990 6 Cibola +WIB 35007 1990 29 Colfax +WIB 35009 1990 4 Curry +WIB 35011 1990 23 De Baca +WIB 35013 1990 19 Dona Ana +WIB 35015 1990 40 Eddy +WIB 35017 1990 4 Grant +WIB 35019 1990 3 Guadalupe +WIB 35021 1990 2 Harding +WIB 35023 1990 1 Hidalgo +WIB 35025 1990 3 Lea +WIB 35027 1990 1 Lincoln +WIB 35028 1990 0 Los Alamos +WIB 35029 1990 0 Luna +WIB 35031 1990 17 McKinley +WIB 35033 1990 6 Mora +WIB 35035 1990 2 Otero +WIB 35037 1990 18 Quay +WIB 35039 1990 100 Rio Arriba +WIB 35041 1990 17 Roosevelt +WIB 35043 1990 13 Sandoval +WIB 35045 1990 63 San Juan +WIB 35047 1990 48 San Miguel +WIB 35049 1990 4 Santa Fe +WIB 35051 1990 145 Sierra +WIB 35053 1990 5 Socorro +WIB 35055 1990 4 Taos +WIB 35057 1990 3 Torrance +WIB 35059 1990 2 Union +WIB 35061 1990 2 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NM_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NM_WOB.ALO new file mode 100644 index 0000000..b2db4c9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NM_WOB.ALO @@ -0,0 +1,58 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 35000 1990 605 NM +WOB 35001 1990 7 Bernalillo +WOB 35003 1990 3 Catron +WOB 35005 1990 11 Chaves +WOB 35006 1990 6 Cibola +WOB 35007 1990 29 Colfax +WOB 35009 1990 4 Curry +WOB 35011 1990 23 De Baca +WOB 35013 1990 19 Dona Ana +WOB 35015 1990 40 Eddy +WOB 35017 1990 4 Grant +WOB 35019 1990 3 Guadalupe +WOB 35021 1990 2 Harding +WOB 35023 1990 1 Hidalgo +WOB 35025 1990 3 Lea +WOB 35027 1990 1 Lincoln +WOB 35028 1990 0 Los Alamos +WOB 35029 1990 0 Luna +WOB 35031 1990 17 McKinley +WOB 35033 1990 6 Mora +WOB 35035 1990 2 Otero +WOB 35037 1990 18 Quay +WOB 35039 1990 100 Rio Arriba +WOB 35041 1990 17 Roosevelt +WOB 35043 1990 13 Sandoval +WOB 35045 1990 63 San Juan +WOB 35047 1990 48 San Miguel +WOB 35049 1990 4 Santa Fe +WOB 35051 1990 145 Sierra +WOB 35053 1990 5 Socorro +WOB 35055 1990 4 Taos +WOB 35057 1990 3 Torrance +WOB 35059 1990 2 Union +WOB 35061 1990 2 Valencia +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_AIRTR.ALO new file mode 100644 index 0000000..d41198c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_AIRTR.ALO @@ -0,0 +1,44 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 32000 2002 1967.699 NV +AIR 32001 2002 0.083 Churchill +AIR 32003 2002 1604.230 Clark +AIR 32005 2002 0.000 Douglas +AIR 32007 2002 9.706 Elko +AIR 32009 2002 0.000 Esmeralda +AIR 32011 2002 0.000 Eureka +AIR 32013 2002 0.077 Humboldt +AIR 32015 2002 0.095 Lander +AIR 32017 2002 0.000 Lincoln +AIR 32019 2002 0.000 Lyon +AIR 32021 2002 0.000 Mineral +AIR 32023 2002 0.130 Nye +AIR 32027 2002 0.013 Pershing +AIR 32029 2002 0.000 Storey +AIR 32031 2002 348.970 Washoe +AIR 32033 2002 4.394 White Pine +AIR 32510 2002 0.000 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_COAL.ALO new file mode 100644 index 0000000..1e777f8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_COAL.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 32000 2002 0 NV +MIN 32001 2002 0 Churchill +MIN 32003 2002 0 Clark +MIN 32005 2002 0 Douglas +MIN 32007 2002 0 Elko +MIN 32009 2002 0 Esmeralda +MIN 32011 2002 0 Eureka +MIN 32013 2002 0 Humboldt +MIN 32015 2002 0 Lander +MIN 32017 2002 0 Lincoln +MIN 32019 2002 0 Lyon +MIN 32021 2002 0 Mineral +MIN 32023 2002 0 Nye +MIN 32027 2002 0 Pershing +MIN 32029 2002 0 Storey +MIN 32031 2002 0 Washoe +MIN 32033 2002 0 White Pine +MIN 32510 2002 0 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_CONST.ALO new file mode 100644 index 0000000..7279ad8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_CONST.ALO @@ -0,0 +1,44 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 32000 2003 9654015 NV +CON 32001 2003 29166 Churchill +CON 32003 2003 7536787 Clark +CON 32005 2003 167765 Douglas +CON 32007 2003 38948 Elko +CON 32009 2003 4874 Esmeralda +CON 32011 2003 73685 Eureka +CON 32013 2003 7738 Humboldt +CON 32015 2003 1854 Lander +CON 32017 2003 7254 Lincoln +CON 32019 2003 81959 Lyon +CON 32021 2003 1059 Mineral +CON 32023 2003 103040 Nye +CON 32027 2003 277 Pershing +CON 32029 2003 5452 Storey +CON 32031 2003 1358348 Washoe +CON 32033 2003 54802 White Pine +CON 32510 2003 181006 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_FARMS.ALO new file mode 100644 index 0000000..fb1a3c4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_FARMS.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 32000 2002 549076 NV +FRM 32001 2002 38939 Churchill +FRM 32003 2002 10106 Clark +FRM 32005 2002 16068 Douglas +FRM 32007 2002 130361 Elko +FRM 32009 2002 11441 Esmeralda +FRM 32011 2002 29115 Eureka +FRM 32013 2002 111905 Humboldt +FRM 32015 2002 41941 Lander +FRM 32017 2002 10106 Lincoln +FRM 32019 2002 45846 Lyon +FRM 32021 2002 10106 Mineral +FRM 32023 2002 22561 Nye +FRM 32027 2002 29436 Pershing +FRM 32029 2002 0 Storey +FRM 32031 2002 20235 Washoe +FRM 32033 2002 19985 White Pine +FRM 32510 2002 924 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_GOLF.ALO new file mode 100644 index 0000000..5e216e2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_GOLF.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 32000 2002 62 NV +GC 32001 2002 0 Churchill +GC 32003 2002 44 Clark +GC 32005 2002 5 Douglas +GC 32007 2002 0 Elko +GC 32009 2002 0 Esmeralda +GC 32011 2002 0 Eureka +GC 32013 2002 0 Humboldt +GC 32015 2002 1 Lander +GC 32017 2002 0 Lincoln +GC 32019 2002 2 Lyon +GC 32021 2002 0 Mineral +GC 32023 2002 1 Nye +GC 32027 2002 0 Pershing +GC 32029 2002 0 Storey +GC 32031 2002 7 Washoe +GC 32033 2002 0 White Pine +GC 32510 2002 2 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_HOLSL.ALO new file mode 100644 index 0000000..d17efe7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_HOLSL.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 32000 2002 2586 NV +COM 32001 2002 17 Churchill +COM 32003 2002 1585 Clark +COM 32005 2002 51 Douglas +COM 32007 2002 62 Elko +COM 32009 2002 1 Esmeralda +COM 32011 2002 3 Eureka +COM 32013 2002 20 Humboldt +COM 32015 2002 4 Lander +COM 32017 2002 3 Lincoln +COM 32019 2002 35 Lyon +COM 32021 2002 1 Mineral +COM 32023 2002 17 Nye +COM 32027 2002 3 Pershing +COM 32029 2002 1 Storey +COM 32031 2002 658 Washoe +COM 32033 2002 9 White Pine +COM 32510 2002 116 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_HOUSE.ALO new file mode 100644 index 0000000..3ce84a5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_HOUSE.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 32000 2002 901558 NV +HOU 32001 2002 9929 Churchill +HOU 32003 2002 620502 Clark +HOU 32005 2002 20320 Douglas +HOU 32007 2002 18732 Elko +HOU 32009 2002 838 Esmeralda +HOU 32011 2002 1035 Eureka +HOU 32013 2002 7029 Humboldt +HOU 32015 2002 2792 Lander +HOU 32017 2002 2191 Lincoln +HOU 32019 2002 14793 Lyon +HOU 32021 2002 2872 Mineral +HOU 32023 2002 16029 Nye +HOU 32027 2002 2397 Pershing +HOU 32029 2002 1653 Storey +HOU 32031 2002 154031 Washoe +HOU 32033 2002 4422 White Pine +HOU 32510 2002 21993 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_LOGGN.ALO new file mode 100644 index 0000000..b46a15c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_LOGGN.ALO @@ -0,0 +1,44 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 32000 2002 4128840 NV +LOG 32001 2002 0 Churchill +LOG 32003 2002 0 Clark +LOG 32005 2002 4128840 Douglas +LOG 32007 2002 0 Elko +LOG 32009 2002 0 Esmeralda +LOG 32011 2002 0 Eureka +LOG 32013 2002 0 Humboldt +LOG 32015 2002 0 Lander +LOG 32017 2002 0 Lincoln +LOG 32019 2002 0 Lyon +LOG 32021 2002 0 Mineral +LOG 32023 2002 0 Nye +LOG 32027 2002 0 Pershing +LOG 32029 2002 0 Storey +LOG 32031 2002 0 Washoe +LOG 32033 2002 0 White Pine +LOG 32510 2002 0 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_LSCAP.ALO new file mode 100644 index 0000000..16c3412 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_LSCAP.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 32000 2002 6347 NV +LSC 32001 2002 8 Churchill +LSC 32003 2002 5285 Clark +LSC 32005 2002 92 Douglas +LSC 32007 2002 8 Elko +LSC 32009 2002 0 Esmeralda +LSC 32011 2002 0 Eureka +LSC 32013 2002 8 Humboldt +LSC 32015 2002 0 Lander +LSC 32017 2002 0 Lincoln +LSC 32019 2002 46 Lyon +LSC 32021 2002 0 Mineral +LSC 32023 2002 8 Nye +LSC 32027 2002 0 Pershing +LSC 32029 2002 0 Storey +LSC 32031 2002 845 Washoe +LSC 32033 2002 0 White Pine +LSC 32510 2002 47 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_MNFG.ALO new file mode 100644 index 0000000..b37898a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_MNFG.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 32000 2002 75934 NV +MFG 32001 2002 970 Churchill +MFG 32003 2002 35006 Clark +MFG 32005 2002 4489 Douglas +MFG 32007 2002 298 Elko +MFG 32009 2002 95 Esmeralda +MFG 32011 2002 16 Eureka +MFG 32013 2002 505 Humboldt +MFG 32015 2002 118 Lander +MFG 32017 2002 25 Lincoln +MFG 32019 2002 2982 Lyon +MFG 32021 2002 27 Mineral +MFG 32023 2002 582 Nye +MFG 32027 2002 129 Pershing +MFG 32029 2002 13 Storey +MFG 32031 2002 23699 Washoe +MFG 32033 2002 134 White Pine +MFG 32510 2002 6846 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_OIL.ALO new file mode 100644 index 0000000..1e08bb6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_OIL.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 32000 2002 134 NV +OIL 32001 2002 0 Churchill +OIL 32003 2002 22 Clark +OIL 32005 2002 3 Douglas +OIL 32007 2002 73 Elko +OIL 32009 2002 0 Esmeralda +OIL 32011 2002 0 Eureka +OIL 32013 2002 0 Humboldt +OIL 32015 2002 0 Lander +OIL 32017 2002 9 Lincoln +OIL 32019 2002 0 Lyon +OIL 32021 2002 0 Mineral +OIL 32023 2002 0 Nye +OIL 32027 2002 0 Pershing +OIL 32029 2002 0 Storey +OIL 32031 2002 12 Washoe +OIL 32033 2002 3 White Pine +OIL 32510 2002 12 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_POP.ALO new file mode 100644 index 0000000..8a27e24 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_POP.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 32000 2002 2168304 NV +POP 32001 2002 24252 Churchill +POP 32003 2002 1515806 Clark +POP 32005 2002 43246 Douglas +POP 32007 2002 44602 Elko +POP 32009 2002 896 Esmeralda +POP 32011 2002 1612 Eureka +POP 32013 2002 16122 Humboldt +POP 32015 2002 5193 Lander +POP 32017 2002 4236 Lincoln +POP 32019 2002 38033 Lyon +POP 32021 2002 4766 Mineral +POP 32023 2002 34613 Nye +POP 32027 2002 6570 Pershing +POP 32029 2002 3422 Storey +POP 32031 2002 361735 Washoe +POP 32033 2002 8647 White Pine +POP 32510 2002 54553 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_RAIL.ALO new file mode 100644 index 0000000..36cac9a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_RAIL.ALO @@ -0,0 +1,44 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 32000 2002 7521.840 NV +RR 32001 2002 385.760 Churchill +RR 32003 2002 1414.620 Clark +RR 32005 2002 0.000 Douglas +RR 32007 2002 1297.820 Elko +RR 32009 2002 0.000 Esmeralda +RR 32011 2002 542.090 Eureka +RR 32013 2002 821.800 Humboldt +RR 32015 2002 315.530 Lander +RR 32017 2002 744.700 Lincoln +RR 32019 2002 143.310 Lyon +RR 32021 2002 0.000 Mineral +RR 32023 2002 0.000 Nye +RR 32027 2002 695.820 Pershing +RR 32029 2002 185.910 Storey +RR 32031 2002 974.480 Washoe +RR 32033 2002 0.000 White Pine +RR 32510 2002 0.000 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_RVPRK.ALO new file mode 100644 index 0000000..7d49853 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_RVPRK.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 32000 2002 53 NV +RVP 32001 2002 2 Churchill +RVP 32003 2002 25 Clark +RVP 32005 2002 5 Douglas +RVP 32007 2002 4 Elko +RVP 32009 2002 0 Esmeralda +RVP 32011 2002 0 Eureka +RVP 32013 2002 0 Humboldt +RVP 32015 2002 0 Lander +RVP 32017 2002 0 Lincoln +RVP 32019 2002 2 Lyon +RVP 32021 2002 0 Mineral +RVP 32023 2002 4 Nye +RVP 32027 2002 1 Pershing +RVP 32029 2002 1 Storey +RVP 32031 2002 8 Washoe +RVP 32033 2002 0 White Pine +RVP 32510 2002 1 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_SBC.ALO new file mode 100644 index 0000000..5343062 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_SBC.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 32000 2002 914 NV +SBC 32001 2002 14 Churchill +SBC 32003 2002 0 Clark +SBC 32005 2002 0 Douglas +SBC 32007 2002 26 Elko +SBC 32009 2002 0 Esmeralda +SBC 32011 2002 0 Eureka +SBC 32013 2002 9 Humboldt +SBC 32015 2002 0 Lander +SBC 32017 2002 0 Lincoln +SBC 32019 2002 0 Lyon +SBC 32021 2002 0 Mineral +SBC 32023 2002 20 Nye +SBC 32027 2002 0 Pershing +SBC 32029 2002 0 Storey +SBC 32031 2002 845 Washoe +SBC 32033 2002 0 White Pine +SBC 32510 2002 0 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_SBR.ALO new file mode 100644 index 0000000..724a343 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_SBR.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 32000 2002 218587 NV +SBR 32001 2002 9929 Churchill +SBR 32003 2002 0 Clark +SBR 32005 2002 0 Douglas +SBR 32007 2002 18732 Elko +SBR 32009 2002 0 Esmeralda +SBR 32011 2002 1035 Eureka +SBR 32013 2002 7029 Humboldt +SBR 32015 2002 2792 Lander +SBR 32017 2002 2191 Lincoln +SBR 32019 2002 0 Lyon +SBR 32021 2002 0 Mineral +SBR 32023 2002 16029 Nye +SBR 32027 2002 2397 Pershing +SBR 32029 2002 0 Storey +SBR 32031 2002 154031 Washoe +SBR 32033 2002 4422 White Pine +SBR 32510 2002 0 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_SNOWM.ALO new file mode 100644 index 0000000..cf3fdc2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_SNOWM.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 32000 2002 161 NV +SNM 32001 2002 0 Churchill +SNM 32003 2002 0 Clark +SNM 32005 2002 23 Douglas +SNM 32007 2002 22 Elko +SNM 32009 2002 0 Esmeralda +SNM 32011 2002 0 Eureka +SNM 32013 2002 0 Humboldt +SNM 32015 2002 0 Lander +SNM 32017 2002 0 Lincoln +SNM 32019 2002 0 Lyon +SNM 32021 2002 0 Mineral +SNM 32023 2002 0 Nye +SNM 32027 2002 0 Pershing +SNM 32029 2002 0 Storey +SNM 32031 2002 0 Washoe +SNM 32033 2002 116 White Pine +SNM 32510 2002 0 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_WIB.ALO new file mode 100644 index 0000000..67015bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_WIB.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 32000 1990 1969 NV +WIB 32001 1990 244 Churchill +WIB 32003 1990 467 Clark +WIB 32005 1990 72 Douglas +WIB 32007 1990 58 Elko +WIB 32009 1990 1 Esmeralda +WIB 32011 1990 11 Eureka +WIB 32013 1990 26 Humboldt +WIB 32015 1990 67 Lander +WIB 32017 1990 7 Lincoln +WIB 32019 1990 59 Lyon +WIB 32021 1990 146 Mineral +WIB 32023 1990 32 Nye +WIB 32027 1990 152 Pershing +WIB 32029 1990 1 Storey +WIB 32031 1990 541 Washoe +WIB 32033 1990 53 White Pine +WIB 32510 1990 32 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NV_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NV_WOB.ALO new file mode 100644 index 0000000..2f0a044 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NV_WOB.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 32000 1990 1969 NV +WOB 32001 1990 244 Churchill +WOB 32003 1990 467 Clark +WOB 32005 1990 72 Douglas +WOB 32007 1990 58 Elko +WOB 32009 1990 1 Esmeralda +WOB 32011 1990 11 Eureka +WOB 32013 1990 26 Humboldt +WOB 32015 1990 67 Lander +WOB 32017 1990 7 Lincoln +WOB 32019 1990 59 Lyon +WOB 32021 1990 146 Mineral +WOB 32023 1990 32 Nye +WOB 32027 1990 152 Pershing +WOB 32029 1990 1 Storey +WOB 32031 1990 541 Washoe +WOB 32033 1990 53 White Pine +WOB 32510 1990 32 Carson City +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_AIRTR.ALO new file mode 100644 index 0000000..043afca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_AIRTR.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 36000 2002 4849.026 NY +AIR 36001 2002 143.250 Albany +AIR 36003 2002 0.184 Allegany +AIR 36005 2002 0.000 Bronx +AIR 36007 2002 9.030 Broome +AIR 36009 2002 0.092 Cattaraugus +AIR 36011 2002 0.000 Cayuga +AIR 36013 2002 21.880 Chautauqua +AIR 36015 2002 13.810 Chemung +AIR 36017 2002 0.134 Chenango +AIR 36019 2002 47.305 Clinton +AIR 36021 2002 0.209 Columbia +AIR 36023 2002 0.050 Cortland +AIR 36025 2002 0.040 Delaware +AIR 36027 2002 1.090 Dutchess +AIR 36029 2002 281.240 Erie +AIR 36031 2002 0.000 Essex +AIR 36033 2002 18.340 Franklin +AIR 36035 2002 0.000 Fulton +AIR 36037 2002 0.016 Genesee +AIR 36039 2002 0.000 Greene +AIR 36041 2002 0.000 Hamilton +AIR 36043 2002 0.000 Herkimer +AIR 36045 2002 5.810 Jefferson +AIR 36047 2002 0.000 Kings +AIR 36049 2002 0.000 Lewis +AIR 36051 2002 0.230 Livingston +AIR 36053 2002 0.010 Madison +AIR 36055 2002 189.040 Monroe +AIR 36057 2002 0.000 Montgomery +AIR 36059 2002 0.000 Nassau +AIR 36061 2002 0.000 New York +AIR 36063 2002 0.580 Niagara +AIR 36065 2002 0.820 Oneida +AIR 36067 2002 155.640 Onondaga +AIR 36069 2002 0.000 Ontario +AIR 36071 2002 41.830 Orange +AIR 36073 2002 0.000 Orleans +AIR 36075 2002 0.000 Oswego +AIR 36077 2002 0.094 Otsego +AIR 36079 2002 0.000 Putnam +AIR 36081 2002 3614.650 Queens +AIR 36083 2002 0.000 Rensselaer +AIR 36085 2002 0.000 Richmond +AIR 36087 2002 0.000 Rockland +AIR 36089 2002 23.270 St. Lawrence +AIR 36091 2002 0.182 Saratoga +AIR 36093 2002 0.650 Schenectady +AIR 36095 2002 0.000 Schoharie +AIR 36097 2002 0.000 Schuyler +AIR 36099 2002 0.000 Seneca +AIR 36101 2002 0.110 Steuben +AIR 36103 2002 197.750 Suffolk +AIR 36105 2002 0.360 Sullivan +AIR 36107 2002 0.000 Tioga +AIR 36109 2002 13.124 Tompkins +AIR 36111 2002 0.004 Ulster +AIR 36113 2002 0.160 Warren +AIR 36115 2002 0.000 Washington +AIR 36117 2002 0.000 Wayne +AIR 36119 2002 68.040 Westchester +AIR 36121 2002 0.000 Wyoming +AIR 36123 2002 0.000 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_COAL.ALO new file mode 100644 index 0000000..5d70236 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_COAL.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 36000 2002 0 NY +MIN 36001 2002 0 Albany +MIN 36003 2002 0 Allegany +MIN 36005 2002 0 Bronx +MIN 36007 2002 0 Broome +MIN 36009 2002 0 Cattaraugus +MIN 36011 2002 0 Cayuga +MIN 36013 2002 0 Chautauqua +MIN 36015 2002 0 Chemung +MIN 36017 2002 0 Chenango +MIN 36019 2002 0 Clinton +MIN 36021 2002 0 Columbia +MIN 36023 2002 0 Cortland +MIN 36025 2002 0 Delaware +MIN 36027 2002 0 Dutchess +MIN 36029 2002 0 Erie +MIN 36031 2002 0 Essex +MIN 36033 2002 0 Franklin +MIN 36035 2002 0 Fulton +MIN 36037 2002 0 Genesee +MIN 36039 2002 0 Greene +MIN 36041 2002 0 Hamilton +MIN 36043 2002 0 Herkimer +MIN 36045 2002 0 Jefferson +MIN 36047 2002 0 Kings +MIN 36049 2002 0 Lewis +MIN 36051 2002 0 Livingston +MIN 36053 2002 0 Madison +MIN 36055 2002 0 Monroe +MIN 36057 2002 0 Montgomery +MIN 36059 2002 0 Nassau +MIN 36061 2002 0 New York +MIN 36063 2002 0 Niagara +MIN 36065 2002 0 Oneida +MIN 36067 2002 0 Onondaga +MIN 36069 2002 0 Ontario +MIN 36071 2002 0 Orange +MIN 36073 2002 0 Orleans +MIN 36075 2002 0 Oswego +MIN 36077 2002 0 Otsego +MIN 36079 2002 0 Putnam +MIN 36081 2002 0 Queens +MIN 36083 2002 0 Rensselaer +MIN 36085 2002 0 Richmond +MIN 36087 2002 0 Rockland +MIN 36089 2002 0 St. Lawrence +MIN 36091 2002 0 Saratoga +MIN 36093 2002 0 Schenectady +MIN 36095 2002 0 Schoharie +MIN 36097 2002 0 Schuyler +MIN 36099 2002 0 Seneca +MIN 36101 2002 0 Steuben +MIN 36103 2002 0 Suffolk +MIN 36105 2002 0 Sullivan +MIN 36107 2002 0 Tioga +MIN 36109 2002 0 Tompkins +MIN 36111 2002 0 Ulster +MIN 36113 2002 0 Warren +MIN 36115 2002 0 Washington +MIN 36117 2002 0 Wayne +MIN 36119 2002 0 Westchester +MIN 36121 2002 0 Wyoming +MIN 36123 2002 0 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_CONST.ALO new file mode 100644 index 0000000..1665745 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_CONST.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 36000 2003 20715717 NY +CON 36001 2003 529545 Albany +CON 36003 2003 11520 Allegany +CON 36005 2003 1051122 Bronx +CON 36007 2003 128368 Broome +CON 36009 2003 74870 Cattaraugus +CON 36011 2003 55893 Cayuga +CON 36013 2003 138009 Chautauqua +CON 36015 2003 68595 Chemung +CON 36017 2003 10507 Chenango +CON 36019 2003 82911 Clinton +CON 36021 2003 64423 Columbia +CON 36023 2003 24507 Cortland +CON 36025 2003 72182 Delaware +CON 36027 2003 287890 Dutchess +CON 36029 2003 1091045 Erie +CON 36031 2003 76880 Essex +CON 36033 2003 29960 Franklin +CON 36035 2003 13730 Fulton +CON 36037 2003 64023 Genesee +CON 36039 2003 134945 Greene +CON 36041 2003 5997 Hamilton +CON 36043 2003 84994 Herkimer +CON 36045 2003 98427 Jefferson +CON 36047 2003 2471008 Kings +CON 36049 2003 18436 Lewis +CON 36051 2003 60641 Livingston +CON 36053 2003 50920 Madison +CON 36055 2003 915251 Monroe +CON 36057 2003 137509 Montgomery +CON 36059 2003 708615 Nassau +CON 36061 2003 3051255 New York +CON 36063 2003 206683 Niagara +CON 36065 2003 298100 Oneida +CON 36067 2003 535068 Onondaga +CON 36069 2003 188458 Ontario +CON 36071 2003 397204 Orange +CON 36073 2003 20401 Orleans +CON 36075 2003 63946 Oswego +CON 36077 2003 41444 Otsego +CON 36079 2003 120082 Putnam +CON 36081 2003 1586380 Queens +CON 36083 2003 221723 Rensselaer +CON 36085 2003 778642 Richmond +CON 36087 2003 267189 Rockland +CON 36089 2003 72335 St. Lawrence +CON 36091 2003 495706 Saratoga +CON 36093 2003 146179 Schenectady +CON 36095 2003 31953 Schoharie +CON 36097 2003 7943 Schuyler +CON 36099 2003 55304 Seneca +CON 36101 2003 71014 Steuben +CON 36103 2003 1519365 Suffolk +CON 36105 2003 113963 Sullivan +CON 36107 2003 29297 Tioga +CON 36109 2003 153948 Tompkins +CON 36111 2003 178535 Ulster +CON 36113 2003 221345 Warren +CON 36115 2003 48546 Washington +CON 36117 2003 62637 Wayne +CON 36119 2003 1130835 Westchester +CON 36121 2003 25160 Wyoming +CON 36123 2003 12357 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_FARMS.ALO new file mode 100644 index 0000000..fcc38c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_FARMS.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 36000 2002 3846368 NY +FRM 36001 2002 31500 Albany +FRM 36003 2002 68542 Allegany +FRM 36005 2002 0 Bronx +FRM 36007 2002 40318 Broome +FRM 36009 2002 77030 Cattaraugus +FRM 36011 2002 154704 Cayuga +FRM 36013 2002 116154 Chautauqua +FRM 36015 2002 25982 Chemung +FRM 36017 2002 78715 Chenango +FRM 36019 2002 69124 Clinton +FRM 36021 2002 61490 Columbia +FRM 36023 2002 53033 Cortland +FRM 36025 2002 66875 Delaware +FRM 36027 2002 43528 Dutchess +FRM 36029 2002 85767 Erie +FRM 36031 2002 18644 Essex +FRM 36033 2002 60827 Franklin +FRM 36035 2002 16856 Fulton +FRM 36037 2002 125553 Genesee +FRM 36039 2002 24254 Greene +FRM 36041 2002 339 Hamilton +FRM 36043 2002 70890 Herkimer +FRM 36045 2002 181484 Jefferson +FRM 36047 2002 339 Kings +FRM 36049 2002 97402 Lewis +FRM 36051 2002 125344 Livingston +FRM 36053 2002 86164 Madison +FRM 36055 2002 66532 Monroe +FRM 36057 2002 91811 Montgomery +FRM 36059 2002 483 Nassau +FRM 36061 2002 4 New York +FRM 36063 2002 95331 Niagara +FRM 36065 2002 111320 Oneida +FRM 36067 2002 98044 Onondaga +FRM 36069 2002 121288 Ontario +FRM 36071 2002 54654 Orange +FRM 36073 2002 92204 Orleans +FRM 36075 2002 41738 Oswego +FRM 36077 2002 85894 Otsego +FRM 36079 2002 1182 Putnam +FRM 36081 2002 339 Queens +FRM 36083 2002 43804 Rensselaer +FRM 36085 2002 339 Richmond +FRM 36087 2002 335 Rockland +FRM 36089 2002 173033 St. Lawrence +FRM 36091 2002 36161 Saratoga +FRM 36093 2002 9051 Schenectady +FRM 36095 2002 57030 Schoharie +FRM 36097 2002 28302 Schuyler +FRM 36099 2002 86509 Seneca +FRM 36101 2002 177644 Steuben +FRM 36103 2002 21787 Suffolk +FRM 36105 2002 26541 Sullivan +FRM 36107 2002 55922 Tioga +FRM 36109 2002 53108 Tompkins +FRM 36111 2002 31516 Ulster +FRM 36113 2002 339 Warren +FRM 36115 2002 103753 Washington +FRM 36117 2002 98793 Wayne +FRM 36119 2002 1203 Westchester +FRM 36121 2002 133091 Wyoming +FRM 36123 2002 66423 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_GOLF.ALO new file mode 100644 index 0000000..d4674a0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_GOLF.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 36000 2002 674 NY +GC 36001 2002 18 Albany +GC 36003 2002 5 Allegany +GC 36005 2002 6 Bronx +GC 36007 2002 5 Broome +GC 36009 2002 4 Cattaraugus +GC 36011 2002 11 Cayuga +GC 36013 2002 16 Chautauqua +GC 36015 2002 2 Chemung +GC 36017 2002 6 Chenango +GC 36019 2002 5 Clinton +GC 36021 2002 5 Columbia +GC 36023 2002 6 Cortland +GC 36025 2002 10 Delaware +GC 36027 2002 16 Dutchess +GC 36029 2002 33 Erie +GC 36031 2002 5 Essex +GC 36033 2002 5 Franklin +GC 36035 2002 6 Fulton +GC 36037 2002 8 Genesee +GC 36039 2002 4 Greene +GC 36041 2002 4 Hamilton +GC 36043 2002 6 Herkimer +GC 36045 2002 13 Jefferson +GC 36047 2002 5 Kings +GC 36049 2002 4 Lewis +GC 36051 2002 10 Livingston +GC 36053 2002 9 Madison +GC 36055 2002 34 Monroe +GC 36057 2002 2 Montgomery +GC 36059 2002 48 Nassau +GC 36061 2002 9 New York +GC 36063 2002 13 Niagara +GC 36065 2002 26 Oneida +GC 36067 2002 30 Onondaga +GC 36069 2002 11 Ontario +GC 36071 2002 20 Orange +GC 36073 2002 4 Orleans +GC 36075 2002 7 Oswego +GC 36077 2002 5 Otsego +GC 36079 2002 7 Putnam +GC 36081 2002 6 Queens +GC 36083 2002 6 Rensselaer +GC 36085 2002 5 Richmond +GC 36087 2002 9 Rockland +GC 36089 2002 9 St. Lawrence +GC 36091 2002 16 Saratoga +GC 36093 2002 5 Schenectady +GC 36095 2002 1 Schoharie +GC 36097 2002 1 Schuyler +GC 36099 2002 3 Seneca +GC 36101 2002 5 Steuben +GC 36103 2002 66 Suffolk +GC 36105 2002 2 Sullivan +GC 36107 2002 9 Tioga +GC 36109 2002 6 Tompkins +GC 36111 2002 11 Ulster +GC 36113 2002 8 Warren +GC 36115 2002 3 Washington +GC 36117 2002 6 Wayne +GC 36119 2002 47 Westchester +GC 36121 2002 6 Wyoming +GC 36123 2002 1 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_HOLSL.ALO new file mode 100644 index 0000000..db125a4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_HOLSL.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 36000 2002 35628 NY +COM 36001 2002 508 Albany +COM 36003 2002 23 Allegany +COM 36005 2002 708 Bronx +COM 36007 2002 217 Broome +COM 36009 2002 83 Cattaraugus +COM 36011 2002 73 Cayuga +COM 36013 2002 148 Chautauqua +COM 36015 2002 105 Chemung +COM 36017 2002 40 Chenango +COM 36019 2002 104 Clinton +COM 36021 2002 71 Columbia +COM 36023 2002 38 Cortland +COM 36025 2002 40 Delaware +COM 36027 2002 270 Dutchess +COM 36029 2002 1459 Erie +COM 36031 2002 12 Essex +COM 36033 2002 30 Franklin +COM 36035 2002 68 Fulton +COM 36037 2002 87 Genesee +COM 36039 2002 37 Greene +COM 36041 2002 5 Hamilton +COM 36043 2002 31 Herkimer +COM 36045 2002 89 Jefferson +COM 36047 2002 3240 Kings +COM 36049 2002 24 Lewis +COM 36051 2002 63 Livingston +COM 36053 2002 57 Madison +COM 36055 2002 1028 Monroe +COM 36057 2002 54 Montgomery +COM 36059 2002 3763 Nassau +COM 36061 2002 10524 New York +COM 36063 2002 222 Niagara +COM 36065 2002 214 Oneida +COM 36067 2002 894 Onondaga +COM 36069 2002 155 Ontario +COM 36071 2002 478 Orange +COM 36073 2002 19 Orleans +COM 36075 2002 73 Oswego +COM 36077 2002 47 Otsego +COM 36079 2002 126 Putnam +COM 36081 2002 2882 Queens +COM 36083 2002 126 Rensselaer +COM 36085 2002 328 Richmond +COM 36087 2002 647 Rockland +COM 36089 2002 73 St. Lawrence +COM 36091 2002 229 Saratoga +COM 36093 2002 119 Schenectady +COM 36095 2002 19 Schoharie +COM 36097 2002 12 Schuyler +COM 36099 2002 26 Seneca +COM 36101 2002 67 Steuben +COM 36103 2002 3418 Suffolk +COM 36105 2002 78 Sullivan +COM 36107 2002 28 Tioga +COM 36109 2002 56 Tompkins +COM 36111 2002 168 Ulster +COM 36113 2002 90 Warren +COM 36115 2002 45 Washington +COM 36117 2002 82 Wayne +COM 36119 2002 1846 Westchester +COM 36121 2002 39 Wyoming +COM 36123 2002 23 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_HOUSE.ALO new file mode 100644 index 0000000..3c669ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_HOUSE.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 36000 2002 7762795 NY +HOU 36001 2002 131344 Albany +HOU 36003 2002 24783 Allegany +HOU 36005 2002 494540 Bronx +HOU 36007 2002 89033 Broome +HOU 36009 2002 40158 Cattaraugus +HOU 36011 2002 35754 Cayuga +HOU 36013 2002 65222 Chautauqua +HOU 36015 2002 38050 Chemung +HOU 36017 2002 24135 Chenango +HOU 36019 2002 33714 Clinton +HOU 36021 2002 30605 Columbia +HOU 36023 2002 20198 Cortland +HOU 36025 2002 29209 Delaware +HOU 36027 2002 108326 Dutchess +HOU 36029 2002 419213 Erie +HOU 36031 2002 23431 Essex +HOU 36033 2002 24103 Franklin +HOU 36035 2002 27941 Fulton +HOU 36037 2002 24347 Genesee +HOU 36039 2002 26865 Greene +HOU 36041 2002 8031 Hamilton +HOU 36043 2002 32216 Herkimer +HOU 36045 2002 54399 Jefferson +HOU 36047 2002 935881 Kings +HOU 36049 2002 15451 Lewis +HOU 36051 2002 24529 Livingston +HOU 36053 2002 28918 Madison +HOU 36055 2002 308063 Monroe +HOU 36057 2002 22562 Montgomery +HOU 36059 2002 459862 Nassau +HOU 36061 2002 809519 New York +HOU 36063 2002 96601 Niagara +HOU 36065 2002 103156 Oneida +HOU 36067 2002 198687 Onondaga +HOU 36069 2002 43611 Ontario +HOU 36071 2002 126863 Orange +HOU 36073 2002 17445 Orleans +HOU 36075 2002 53462 Oswego +HOU 36077 2002 29756 Otsego +HOU 36079 2002 35734 Putnam +HOU 36081 2002 822544 Queens +HOU 36083 2002 66725 Rensselaer +HOU 36085 2002 168796 Richmond +HOU 36087 2002 96040 Rockland +HOU 36089 2002 50203 St. Lawrence +HOU 36091 2002 89335 Saratoga +HOU 36093 2002 65264 Schenectady +HOU 36095 2002 16100 Schoharie +HOU 36097 2002 9284 Schuyler +HOU 36099 2002 14891 Seneca +HOU 36101 2002 46744 Steuben +HOU 36103 2002 531979 Suffolk +HOU 36105 2002 45376 Sullivan +HOU 36107 2002 21666 Tioga +HOU 36109 2002 39564 Tompkins +HOU 36111 2002 78732 Ulster +HOU 36113 2002 35468 Warren +HOU 36115 2002 27083 Washington +HOU 36117 2002 39372 Wayne +HOU 36119 2002 352658 Westchester +HOU 36121 2002 17075 Wyoming +HOU 36123 2002 12179 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_LOGGN.ALO new file mode 100644 index 0000000..56d6761 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_LOGGN.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 36000 2002 303998463 NY +LOG 36001 2002 813747 Albany +LOG 36003 2002 8182878 Allegany +LOG 36005 2002 0 Bronx +LOG 36007 2002 6114625 Broome +LOG 36009 2002 14723731 Cattaraugus +LOG 36011 2002 4214663 Cayuga +LOG 36013 2002 12476932 Chautauqua +LOG 36015 2002 2623042 Chemung +LOG 36017 2002 10566359 Chenango +LOG 36019 2002 5380050 Clinton +LOG 36021 2002 3310923 Columbia +LOG 36023 2002 8489597 Cortland +LOG 36025 2002 14828766 Delaware +LOG 36027 2002 2105017 Dutchess +LOG 36029 2002 2783228 Erie +LOG 36031 2002 15219742 Essex +LOG 36033 2002 13238746 Franklin +LOG 36035 2002 4219826 Fulton +LOG 36037 2002 731981 Genesee +LOG 36039 2002 3176591 Greene +LOG 36041 2002 12430776 Hamilton +LOG 36043 2002 4102043 Herkimer +LOG 36045 2002 3583226 Jefferson +LOG 36047 2002 0 Kings +LOG 36049 2002 10858917 Lewis +LOG 36051 2002 1261319 Livingston +LOG 36053 2002 5825728 Madison +LOG 36055 2002 1544673 Monroe +LOG 36057 2002 1214457 Montgomery +LOG 36059 2002 11163 Nassau +LOG 36061 2002 0 New York +LOG 36063 2002 36442 Niagara +LOG 36065 2002 10804074 Oneida +LOG 36067 2002 1254067 Onondaga +LOG 36069 2002 2306884 Ontario +LOG 36071 2002 1425860 Orange +LOG 36073 2002 483971 Orleans +LOG 36075 2002 9255824 Oswego +LOG 36077 2002 10732977 Otsego +LOG 36079 2002 414275 Putnam +LOG 36081 2002 0 Queens +LOG 36083 2002 3954461 Rensselaer +LOG 36085 2002 97799 Richmond +LOG 36087 2002 227204 Rockland +LOG 36089 2002 15829322 St. Lawrence +LOG 36091 2002 9034365 Saratoga +LOG 36093 2002 209293 Schenectady +LOG 36095 2002 2622951 Schoharie +LOG 36097 2002 1955466 Schuyler +LOG 36099 2002 483075 Seneca +LOG 36101 2002 5859686 Steuben +LOG 36103 2002 502116 Suffolk +LOG 36105 2002 5928111 Sullivan +LOG 36107 2002 7361921 Tioga +LOG 36109 2002 4625656 Tompkins +LOG 36111 2002 4352800 Ulster +LOG 36113 2002 16028332 Warren +LOG 36115 2002 6086057 Washington +LOG 36117 2002 1843327 Wayne +LOG 36119 2002 478397 Westchester +LOG 36121 2002 5319532 Wyoming +LOG 36123 2002 451472 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_LSCAP.ALO new file mode 100644 index 0000000..69b4772 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_LSCAP.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 36000 2002 13080 NY +LSC 36001 2002 176 Albany +LSC 36003 2002 11 Allegany +LSC 36005 2002 206 Bronx +LSC 36007 2002 83 Broome +LSC 36009 2002 63 Cattaraugus +LSC 36011 2002 14 Cayuga +LSC 36013 2002 58 Chautauqua +LSC 36015 2002 63 Chemung +LSC 36017 2002 11 Chenango +LSC 36019 2002 9 Clinton +LSC 36021 2002 67 Columbia +LSC 36023 2002 11 Cortland +LSC 36025 2002 11 Delaware +LSC 36027 2002 312 Dutchess +LSC 36029 2002 617 Erie +LSC 36031 2002 63 Essex +LSC 36033 2002 11 Franklin +LSC 36035 2002 11 Fulton +LSC 36037 2002 63 Genesee +LSC 36039 2002 89 Greene +LSC 36041 2002 0 Hamilton +LSC 36043 2002 11 Herkimer +LSC 36045 2002 9 Jefferson +LSC 36047 2002 154 Kings +LSC 36049 2002 11 Lewis +LSC 36051 2002 11 Livingston +LSC 36053 2002 63 Madison +LSC 36055 2002 1262 Monroe +LSC 36057 2002 64 Montgomery +LSC 36059 2002 1499 Nassau +LSC 36061 2002 172 New York +LSC 36063 2002 125 Niagara +LSC 36065 2002 62 Oneida +LSC 36067 2002 327 Onondaga +LSC 36069 2002 127 Ontario +LSC 36071 2002 254 Orange +LSC 36073 2002 11 Orleans +LSC 36075 2002 64 Oswego +LSC 36077 2002 17 Otsego +LSC 36079 2002 166 Putnam +LSC 36081 2002 255 Queens +LSC 36083 2002 62 Rensselaer +LSC 36085 2002 325 Richmond +LSC 36087 2002 356 Rockland +LSC 36089 2002 11 St. Lawrence +LSC 36091 2002 74 Saratoga +LSC 36093 2002 53 Schenectady +LSC 36095 2002 11 Schoharie +LSC 36097 2002 11 Schuyler +LSC 36099 2002 11 Seneca +LSC 36101 2002 23 Steuben +LSC 36103 2002 3154 Suffolk +LSC 36105 2002 64 Sullivan +LSC 36107 2002 64 Tioga +LSC 36109 2002 67 Tompkins +LSC 36111 2002 129 Ulster +LSC 36113 2002 50 Warren +LSC 36115 2002 11 Washington +LSC 36117 2002 64 Wayne +LSC 36119 2002 1852 Westchester +LSC 36121 2002 64 Wyoming +LSC 36123 2002 11 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_MNFG.ALO new file mode 100644 index 0000000..1f432de --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_MNFG.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 36000 2002 1213654 NY +MFG 36001 2002 16770 Albany +MFG 36003 2002 4826 Allegany +MFG 36005 2002 17853 Bronx +MFG 36007 2002 34523 Broome +MFG 36009 2002 10295 Cattaraugus +MFG 36011 2002 7917 Cayuga +MFG 36013 2002 23773 Chautauqua +MFG 36015 2002 13510 Chemung +MFG 36017 2002 5515 Chenango +MFG 36019 2002 9309 Clinton +MFG 36021 2002 3733 Columbia +MFG 36023 2002 6828 Cortland +MFG 36025 2002 8501 Delaware +MFG 36027 2002 36678 Dutchess +MFG 36029 2002 105967 Erie +MFG 36031 2002 2110 Essex +MFG 36033 2002 1202 Franklin +MFG 36035 2002 3812 Fulton +MFG 36037 2002 6401 Genesee +MFG 36039 2002 1615 Greene +MFG 36041 2002 80 Hamilton +MFG 36043 2002 7071 Herkimer +MFG 36045 2002 5954 Jefferson +MFG 36047 2002 55459 Kings +MFG 36049 2002 2153 Lewis +MFG 36051 2002 4124 Livingston +MFG 36053 2002 5232 Madison +MFG 36055 2002 116339 Monroe +MFG 36057 2002 6811 Montgomery +MFG 36059 2002 64925 Nassau +MFG 36061 2002 116950 New York +MFG 36063 2002 29042 Niagara +MFG 36065 2002 24501 Oneida +MFG 36067 2002 52473 Onondaga +MFG 36069 2002 14533 Ontario +MFG 36071 2002 15765 Orange +MFG 36073 2002 3004 Orleans +MFG 36075 2002 7737 Oswego +MFG 36077 2002 2509 Otsego +MFG 36079 2002 4196 Putnam +MFG 36081 2002 66848 Queens +MFG 36083 2002 6793 Rensselaer +MFG 36085 2002 3222 Richmond +MFG 36087 2002 19833 Rockland +MFG 36089 2002 7978 St. Lawrence +MFG 36091 2002 12476 Saratoga +MFG 36093 2002 11506 Schenectady +MFG 36095 2002 639 Schoharie +MFG 36097 2002 1110 Schuyler +MFG 36099 2002 2263 Seneca +MFG 36101 2002 14959 Steuben +MFG 36103 2002 116958 Suffolk +MFG 36105 2002 1066 Sullivan +MFG 36107 2002 4229 Tioga +MFG 36109 2002 7183 Tompkins +MFG 36111 2002 10220 Ulster +MFG 36113 2002 8807 Warren +MFG 36115 2002 7064 Washington +MFG 36117 2002 11662 Wayne +MFG 36119 2002 33754 Westchester +MFG 36121 2002 3823 Wyoming +MFG 36123 2002 1265 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_OIL.ALO new file mode 100644 index 0000000..0bd1681 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_OIL.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 36000 2002 334 NY +OIL 36001 2002 0 Albany +OIL 36003 2002 7 Allegany +OIL 36005 2002 0 Bronx +OIL 36007 2002 0 Broome +OIL 36009 2002 25 Cattaraugus +OIL 36011 2002 0 Cayuga +OIL 36013 2002 34 Chautauqua +OIL 36015 2002 0 Chemung +OIL 36017 2002 0 Chenango +OIL 36019 2002 0 Clinton +OIL 36021 2002 0 Columbia +OIL 36023 2002 0 Cortland +OIL 36025 2002 0 Delaware +OIL 36027 2002 7 Dutchess +OIL 36029 2002 40 Erie +OIL 36031 2002 0 Essex +OIL 36033 2002 0 Franklin +OIL 36035 2002 0 Fulton +OIL 36037 2002 7 Genesee +OIL 36039 2002 0 Greene +OIL 36041 2002 0 Hamilton +OIL 36043 2002 7 Herkimer +OIL 36045 2002 0 Jefferson +OIL 36047 2002 0 Kings +OIL 36049 2002 0 Lewis +OIL 36051 2002 0 Livingston +OIL 36053 2002 0 Madison +OIL 36055 2002 40 Monroe +OIL 36057 2002 0 Montgomery +OIL 36059 2002 7 Nassau +OIL 36061 2002 84 New York +OIL 36063 2002 0 Niagara +OIL 36065 2002 0 Oneida +OIL 36067 2002 0 Onondaga +OIL 36069 2002 0 Ontario +OIL 36071 2002 0 Orange +OIL 36073 2002 0 Orleans +OIL 36075 2002 7 Oswego +OIL 36077 2002 0 Otsego +OIL 36079 2002 0 Putnam +OIL 36081 2002 0 Queens +OIL 36083 2002 0 Rensselaer +OIL 36085 2002 0 Richmond +OIL 36087 2002 0 Rockland +OIL 36089 2002 0 St. Lawrence +OIL 36091 2002 7 Saratoga +OIL 36093 2002 0 Schenectady +OIL 36095 2002 0 Schoharie +OIL 36097 2002 0 Schuyler +OIL 36099 2002 0 Seneca +OIL 36101 2002 0 Steuben +OIL 36103 2002 7 Suffolk +OIL 36105 2002 0 Sullivan +OIL 36107 2002 0 Tioga +OIL 36109 2002 0 Tompkins +OIL 36111 2002 0 Ulster +OIL 36113 2002 0 Warren +OIL 36115 2002 0 Washington +OIL 36117 2002 7 Wayne +OIL 36119 2002 41 Westchester +OIL 36121 2002 7 Wyoming +OIL 36123 2002 0 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_POP.ALO new file mode 100644 index 0000000..a9cec0b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_POP.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 36000 2002 19151066 NY +POP 36001 2002 296002 Albany +POP 36003 2002 50395 Allegany +POP 36005 2002 1358880 Bronx +POP 36007 2002 199843 Broome +POP 36009 2002 83389 Cattaraugus +POP 36011 2002 81909 Cayuga +POP 36013 2002 138418 Chautauqua +POP 36015 2002 90824 Chemung +POP 36017 2002 51421 Chenango +POP 36019 2002 80813 Clinton +POP 36021 2002 63204 Columbia +POP 36023 2002 48491 Cortland +POP 36025 2002 47349 Delaware +POP 36027 2002 287920 Dutchess +POP 36029 2002 941602 Erie +POP 36031 2002 39093 Essex +POP 36033 2002 50851 Franklin +POP 36035 2002 55140 Fulton +POP 36037 2002 59929 Genesee +POP 36039 2002 48531 Greene +POP 36041 2002 5277 Hamilton +POP 36043 2002 63722 Herkimer +POP 36045 2002 113936 Jefferson +POP 36047 2002 2484844 Kings +POP 36049 2002 26638 Lewis +POP 36051 2002 64708 Livingston +POP 36053 2002 69811 Madison +POP 36055 2002 735128 Monroe +POP 36057 2002 49259 Montgomery +POP 36059 2002 1339506 Nassau +POP 36061 2002 1549511 New York +POP 36063 2002 218340 Niagara +POP 36065 2002 234127 Oneida +POP 36067 2002 458697 Onondaga +POP 36069 2002 101904 Ontario +POP 36071 2002 356404 Orange +POP 36073 2002 43885 Orleans +POP 36075 2002 122785 Oswego +POP 36077 2002 61988 Otsego +POP 36079 2002 98696 Putnam +POP 36081 2002 2241983 Queens +POP 36083 2002 152531 Rensselaer +POP 36085 2002 455868 Richmond +POP 36087 2002 291374 Rockland +POP 36089 2002 111169 St. Lawrence +POP 36091 2002 207065 Saratoga +POP 36093 2002 146874 Schenectady +POP 36095 2002 31661 Schoharie +POP 36097 2002 19424 Schuyler +POP 36099 2002 35011 Seneca +POP 36101 2002 99516 Steuben +POP 36103 2002 1455510 Suffolk +POP 36105 2002 74301 Sullivan +POP 36107 2002 51812 Tioga +POP 36109 2002 98324 Tompkins +POP 36111 2002 180415 Ulster +POP 36113 2002 64118 Warren +POP 36115 2002 61522 Washington +POP 36117 2002 93799 Wayne +POP 36119 2002 937892 Westchester +POP 36121 2002 43197 Wyoming +POP 36123 2002 24530 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_RAIL.ALO new file mode 100644 index 0000000..87d8ecd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_RAIL.ALO @@ -0,0 +1,89 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 36000 2002 14114.510 NY +RR 36001 2002 524.740 Albany +RR 36003 2002 77.140 Allegany +RR 36005 2002 4.620 Bronx +RR 36007 2002 124.250 Broome +RR 36009 2002 62.610 Cattaraugus +RR 36011 2002 653.980 Cayuga +RR 36013 2002 1046.180 Chautauqua +RR 36015 2002 59.140 Chemung +RR 36017 2002 79.460 Chenango +RR 36019 2002 40.830 Clinton +RR 36021 2002 208.120 Columbia +RR 36023 2002 0.000 Cortland +RR 36025 2002 76.250 Delaware +RR 36027 2002 58.990 Dutchess +RR 36029 2002 1453.720 Erie +RR 36031 2002 86.890 Essex +RR 36033 2002 4.770 Franklin +RR 36035 2002 0.000 Fulton +RR 36037 2002 798.940 Genesee +RR 36039 2002 177.970 Greene +RR 36041 2002 0.000 Hamilton +RR 36043 2002 798.380 Herkimer +RR 36045 2002 52.620 Jefferson +RR 36047 2002 0.000 Kings +RR 36049 2002 0.000 Lewis +RR 36051 2002 99.860 Livingston +RR 36053 2002 539.840 Madison +RR 36055 2002 790.980 Monroe +RR 36057 2002 863.780 Montgomery +RR 36059 2002 0.000 Nassau +RR 36061 2002 0.000 New York +RR 36063 2002 16.220 Niagara +RR 36065 2002 725.170 Oneida +RR 36067 2002 1117.600 Onondaga +RR 36069 2002 13.030 Ontario +RR 36071 2002 305.550 Orange +RR 36073 2002 0.000 Orleans +RR 36075 2002 108.660 Oswego +RR 36077 2002 167.230 Otsego +RR 36079 2002 0.000 Putnam +RR 36081 2002 2.100 Queens +RR 36083 2002 112.380 Rensselaer +RR 36085 2002 0.000 Richmond +RR 36087 2002 237.840 Rockland +RR 36089 2002 35.140 St. Lawrence +RR 36091 2002 91.690 Saratoga +RR 36093 2002 600.860 Schenectady +RR 36095 2002 137.300 Schoharie +RR 36097 2002 12.460 Schuyler +RR 36099 2002 4.810 Seneca +RR 36101 2002 179.250 Steuben +RR 36103 2002 0.000 Suffolk +RR 36105 2002 21.810 Sullivan +RR 36107 2002 68.670 Tioga +RR 36109 2002 14.670 Tompkins +RR 36111 2002 193.040 Ulster +RR 36113 2002 2.060 Warren +RR 36115 2002 65.390 Washington +RR 36117 2002 1052.130 Wayne +RR 36119 2002 0.000 Westchester +RR 36121 2002 126.170 Wyoming +RR 36123 2002 19.220 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_RVPRK.ALO new file mode 100644 index 0000000..aeeb0ed --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_RVPRK.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 36000 2002 398 NY +RVP 36001 2002 3 Albany +RVP 36003 2002 1 Allegany +RVP 36005 2002 1 Bronx +RVP 36007 2002 5 Broome +RVP 36009 2002 8 Cattaraugus +RVP 36011 2002 6 Cayuga +RVP 36013 2002 13 Chautauqua +RVP 36015 2002 1 Chemung +RVP 36017 2002 2 Chenango +RVP 36019 2002 6 Clinton +RVP 36021 2002 9 Columbia +RVP 36023 2002 1 Cortland +RVP 36025 2002 7 Delaware +RVP 36027 2002 14 Dutchess +RVP 36029 2002 8 Erie +RVP 36031 2002 12 Essex +RVP 36033 2002 9 Franklin +RVP 36035 2002 1 Fulton +RVP 36037 2002 4 Genesee +RVP 36039 2002 6 Greene +RVP 36041 2002 6 Hamilton +RVP 36043 2002 6 Herkimer +RVP 36045 2002 6 Jefferson +RVP 36047 2002 4 Kings +RVP 36049 2002 5 Lewis +RVP 36051 2002 8 Livingston +RVP 36053 2002 2 Madison +RVP 36055 2002 6 Monroe +RVP 36057 2002 2 Montgomery +RVP 36059 2002 8 Nassau +RVP 36061 2002 11 New York +RVP 36063 2002 4 Niagara +RVP 36065 2002 7 Oneida +RVP 36067 2002 8 Onondaga +RVP 36069 2002 5 Ontario +RVP 36071 2002 9 Orange +RVP 36073 2002 2 Orleans +RVP 36075 2002 13 Oswego +RVP 36077 2002 3 Otsego +RVP 36079 2002 5 Putnam +RVP 36081 2002 1 Queens +RVP 36083 2002 2 Rensselaer +RVP 36085 2002 1 Richmond +RVP 36087 2002 7 Rockland +RVP 36089 2002 4 St. Lawrence +RVP 36091 2002 11 Saratoga +RVP 36093 2002 2 Schenectady +RVP 36095 2002 2 Schoharie +RVP 36097 2002 1 Schuyler +RVP 36099 2002 1 Seneca +RVP 36101 2002 7 Steuben +RVP 36103 2002 9 Suffolk +RVP 36105 2002 36 Sullivan +RVP 36107 2002 2 Tioga +RVP 36109 2002 4 Tompkins +RVP 36111 2002 13 Ulster +RVP 36113 2002 30 Warren +RVP 36115 2002 1 Washington +RVP 36117 2002 3 Wayne +RVP 36119 2002 15 Westchester +RVP 36121 2002 7 Wyoming +RVP 36123 2002 2 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_SBC.ALO new file mode 100644 index 0000000..5df9eb7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_SBC.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 36000 2002 13080 NY +SBC 36001 2002 176 Albany +SBC 36003 2002 28 Allegany +SBC 36005 2002 206 Bronx +SBC 36007 2002 83 Broome +SBC 36009 2002 47 Cattaraugus +SBC 36011 2002 14 Cayuga +SBC 36013 2002 58 Chautauqua +SBC 36015 2002 51 Chemung +SBC 36017 2002 29 Chenango +SBC 36019 2002 9 Clinton +SBC 36021 2002 67 Columbia +SBC 36023 2002 27 Cortland +SBC 36025 2002 26 Delaware +SBC 36027 2002 312 Dutchess +SBC 36029 2002 617 Erie +SBC 36031 2002 22 Essex +SBC 36033 2002 28 Franklin +SBC 36035 2002 31 Fulton +SBC 36037 2002 34 Genesee +SBC 36039 2002 89 Greene +SBC 36041 2002 0 Hamilton +SBC 36043 2002 36 Herkimer +SBC 36045 2002 9 Jefferson +SBC 36047 2002 154 Kings +SBC 36049 2002 15 Lewis +SBC 36051 2002 36 Livingston +SBC 36053 2002 39 Madison +SBC 36055 2002 1262 Monroe +SBC 36057 2002 28 Montgomery +SBC 36059 2002 1499 Nassau +SBC 36061 2002 172 New York +SBC 36063 2002 125 Niagara +SBC 36065 2002 62 Oneida +SBC 36067 2002 327 Onondaga +SBC 36069 2002 127 Ontario +SBC 36071 2002 254 Orange +SBC 36073 2002 25 Orleans +SBC 36075 2002 68 Oswego +SBC 36077 2002 17 Otsego +SBC 36079 2002 166 Putnam +SBC 36081 2002 255 Queens +SBC 36083 2002 62 Rensselaer +SBC 36085 2002 325 Richmond +SBC 36087 2002 356 Rockland +SBC 36089 2002 61 St. Lawrence +SBC 36091 2002 74 Saratoga +SBC 36093 2002 53 Schenectady +SBC 36095 2002 18 Schoharie +SBC 36097 2002 11 Schuyler +SBC 36099 2002 20 Seneca +SBC 36101 2002 23 Steuben +SBC 36103 2002 3154 Suffolk +SBC 36105 2002 42 Sullivan +SBC 36107 2002 29 Tioga +SBC 36109 2002 67 Tompkins +SBC 36111 2002 129 Ulster +SBC 36113 2002 50 Warren +SBC 36115 2002 34 Washington +SBC 36117 2002 52 Wayne +SBC 36119 2002 1852 Westchester +SBC 36121 2002 24 Wyoming +SBC 36123 2002 14 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_SBR.ALO new file mode 100644 index 0000000..73305fe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_SBR.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 36000 2002 7762795 NY +SBR 36001 2002 131344 Albany +SBR 36003 2002 24783 Allegany +SBR 36005 2002 494540 Bronx +SBR 36007 2002 89033 Broome +SBR 36009 2002 40158 Cattaraugus +SBR 36011 2002 35754 Cayuga +SBR 36013 2002 65222 Chautauqua +SBR 36015 2002 38050 Chemung +SBR 36017 2002 24135 Chenango +SBR 36019 2002 33714 Clinton +SBR 36021 2002 30605 Columbia +SBR 36023 2002 20198 Cortland +SBR 36025 2002 29209 Delaware +SBR 36027 2002 108326 Dutchess +SBR 36029 2002 419213 Erie +SBR 36031 2002 23431 Essex +SBR 36033 2002 24103 Franklin +SBR 36035 2002 27941 Fulton +SBR 36037 2002 24347 Genesee +SBR 36039 2002 26865 Greene +SBR 36041 2002 8031 Hamilton +SBR 36043 2002 32216 Herkimer +SBR 36045 2002 54399 Jefferson +SBR 36047 2002 935881 Kings +SBR 36049 2002 15451 Lewis +SBR 36051 2002 24529 Livingston +SBR 36053 2002 28918 Madison +SBR 36055 2002 308063 Monroe +SBR 36057 2002 22562 Montgomery +SBR 36059 2002 459862 Nassau +SBR 36061 2002 809519 New York +SBR 36063 2002 96601 Niagara +SBR 36065 2002 103156 Oneida +SBR 36067 2002 198687 Onondaga +SBR 36069 2002 43611 Ontario +SBR 36071 2002 126863 Orange +SBR 36073 2002 17445 Orleans +SBR 36075 2002 53462 Oswego +SBR 36077 2002 29756 Otsego +SBR 36079 2002 35734 Putnam +SBR 36081 2002 822544 Queens +SBR 36083 2002 66725 Rensselaer +SBR 36085 2002 168796 Richmond +SBR 36087 2002 96040 Rockland +SBR 36089 2002 50203 St. Lawrence +SBR 36091 2002 89335 Saratoga +SBR 36093 2002 65264 Schenectady +SBR 36095 2002 16100 Schoharie +SBR 36097 2002 9284 Schuyler +SBR 36099 2002 14891 Seneca +SBR 36101 2002 46744 Steuben +SBR 36103 2002 531979 Suffolk +SBR 36105 2002 45376 Sullivan +SBR 36107 2002 21666 Tioga +SBR 36109 2002 39564 Tompkins +SBR 36111 2002 78732 Ulster +SBR 36113 2002 35468 Warren +SBR 36115 2002 27083 Washington +SBR 36117 2002 39372 Wayne +SBR 36119 2002 352658 Westchester +SBR 36121 2002 17075 Wyoming +SBR 36123 2002 12179 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_SNOWM.ALO new file mode 100644 index 0000000..ee38a47 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_SNOWM.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 36000 2002 921 NY +SNM 36001 2002 0 Albany +SNM 36003 2002 20 Allegany +SNM 36005 2002 0 Bronx +SNM 36007 2002 0 Broome +SNM 36009 2002 12 Cattaraugus +SNM 36011 2002 12 Cayuga +SNM 36013 2002 7 Chautauqua +SNM 36015 2002 11 Chemung +SNM 36017 2002 19 Chenango +SNM 36019 2002 12 Clinton +SNM 36021 2002 16 Columbia +SNM 36023 2002 21 Cortland +SNM 36025 2002 21 Delaware +SNM 36027 2002 0 Dutchess +SNM 36029 2002 0 Erie +SNM 36031 2002 26 Essex +SNM 36033 2002 20 Franklin +SNM 36035 2002 18 Fulton +SNM 36037 2002 17 Genesee +SNM 36039 2002 21 Greene +SNM 36041 2002 190 Hamilton +SNM 36043 2002 16 Herkimer +SNM 36045 2002 9 Jefferson +SNM 36047 2002 0 Kings +SNM 36049 2002 38 Lewis +SNM 36051 2002 15 Livingston +SNM 36053 2002 14 Madison +SNM 36055 2002 0 Monroe +SNM 36057 2002 20 Montgomery +SNM 36059 2002 0 Nassau +SNM 36061 2002 0 New York +SNM 36063 2002 5 Niagara +SNM 36065 2002 4 Oneida +SNM 36067 2002 0 Onondaga +SNM 36069 2002 10 Ontario +SNM 36071 2002 0 Orange +SNM 36073 2002 23 Orleans +SNM 36075 2002 8 Oswego +SNM 36077 2002 16 Otsego +SNM 36079 2002 0 Putnam +SNM 36081 2002 0 Queens +SNM 36083 2002 7 Rensselaer +SNM 36085 2002 2 Richmond +SNM 36087 2002 0 Rockland +SNM 36089 2002 9 St. Lawrence +SNM 36091 2002 5 Saratoga +SNM 36093 2002 0 Schenectady +SNM 36095 2002 32 Schoharie +SNM 36097 2002 51 Schuyler +SNM 36099 2002 29 Seneca +SNM 36101 2002 10 Steuben +SNM 36103 2002 0 Suffolk +SNM 36105 2002 13 Sullivan +SNM 36107 2002 19 Tioga +SNM 36109 2002 10 Tompkins +SNM 36111 2002 6 Ulster +SNM 36113 2002 16 Warren +SNM 36115 2002 16 Washington +SNM 36117 2002 11 Wayne +SNM 36119 2002 0 Westchester +SNM 36121 2002 23 Wyoming +SNM 36123 2002 41 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_WIB.ALO new file mode 100644 index 0000000..63ec315 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_WIB.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 36000 1990 9483 NY +WIB 36001 1990 25 Albany +WIB 36003 1990 11 Allegany +WIB 36005 1990 54 Bronx +WIB 36007 1990 22 Broome +WIB 36009 1990 32 Cattaraugus +WIB 36011 1990 160 Cayuga +WIB 36013 1990 263 Chautauqua +WIB 36015 1990 7 Chemung +WIB 36017 1990 11 Chenango +WIB 36019 1990 203 Clinton +WIB 36021 1990 32 Columbia +WIB 36023 1990 5 Cortland +WIB 36025 1990 56 Delaware +WIB 36027 1990 62 Dutchess +WIB 36029 1990 238 Erie +WIB 36031 1990 310 Essex +WIB 36033 1990 171 Franklin +WIB 36035 1990 95 Fulton +WIB 36037 1990 3 Genesee +WIB 36039 1990 27 Greene +WIB 36041 1990 226 Hamilton +WIB 36043 1990 121 Herkimer +WIB 36045 1990 982 Jefferson +WIB 36047 1990 89 Kings +WIB 36049 1990 37 Lewis +WIB 36051 1990 22 Livingston +WIB 36053 1990 15 Madison +WIB 36055 1990 208 Monroe +WIB 36057 1990 14 Montgomery +WIB 36059 1990 324 Nassau +WIB 36061 1990 24 New York +WIB 36063 1990 293 Niagara +WIB 36065 1990 115 Oneida +WIB 36067 1990 66 Onondaga +WIB 36069 1990 47 Ontario +WIB 36071 1990 58 Orange +WIB 36073 1990 129 Orleans +WIB 36075 1990 408 Oswego +WIB 36077 1990 32 Otsego +WIB 36079 1990 38 Putnam +WIB 36081 1990 133 Queens +WIB 36083 1990 30 Rensselaer +WIB 36085 1990 80 Richmond +WIB 36087 1990 65 Rockland +WIB 36089 1990 352 St. Lawrence +WIB 36091 1990 83 Saratoga +WIB 36093 1990 9 Schenectady +WIB 36095 1990 11 Schoharie +WIB 36097 1990 45 Schuyler +WIB 36099 1990 170 Seneca +WIB 36101 1990 30 Steuben +WIB 36103 1990 2517 Suffolk +WIB 36105 1990 70 Sullivan +WIB 36107 1990 11 Tioga +WIB 36109 1990 40 Tompkins +WIB 36111 1990 89 Ulster +WIB 36113 1990 161 Warren +WIB 36115 1990 27 Washington +WIB 36117 1990 284 Wayne +WIB 36119 1990 145 Westchester +WIB 36121 1990 9 Wyoming +WIB 36123 1990 87 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/NY_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/NY_WOB.ALO new file mode 100644 index 0000000..9b69fb6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/NY_WOB.ALO @@ -0,0 +1,87 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 36000 1990 5466 NY +WOB 36001 1990 25 Albany +WOB 36003 1990 11 Allegany +WOB 36005 1990 35 Bronx +WOB 36007 1990 22 Broome +WOB 36009 1990 32 Cattaraugus +WOB 36011 1990 115 Cayuga +WOB 36013 1990 85 Chautauqua +WOB 36015 1990 7 Chemung +WOB 36017 1990 11 Chenango +WOB 36019 1990 203 Clinton +WOB 36021 1990 32 Columbia +WOB 36023 1990 5 Cortland +WOB 36025 1990 56 Delaware +WOB 36027 1990 62 Dutchess +WOB 36029 1990 52 Erie +WOB 36031 1990 310 Essex +WOB 36033 1990 171 Franklin +WOB 36035 1990 95 Fulton +WOB 36037 1990 3 Genesee +WOB 36039 1990 27 Greene +WOB 36041 1990 226 Hamilton +WOB 36043 1990 121 Herkimer +WOB 36045 1990 367 Jefferson +WOB 36047 1990 53 Kings +WOB 36049 1990 37 Lewis +WOB 36051 1990 22 Livingston +WOB 36053 1990 15 Madison +WOB 36055 1990 44 Monroe +WOB 36057 1990 14 Montgomery +WOB 36059 1990 136 Nassau +WOB 36061 1990 15 New York +WOB 36063 1990 58 Niagara +WOB 36065 1990 115 Oneida +WOB 36067 1990 66 Onondaga +WOB 36069 1990 47 Ontario +WOB 36071 1990 58 Orange +WOB 36073 1990 20 Orleans +WOB 36075 1990 200 Oswego +WOB 36077 1990 32 Otsego +WOB 36079 1990 38 Putnam +WOB 36081 1990 56 Queens +WOB 36083 1990 30 Rensselaer +WOB 36085 1990 25 Richmond +WOB 36087 1990 65 Rockland +WOB 36089 1990 352 St. Lawrence +WOB 36091 1990 83 Saratoga +WOB 36093 1990 9 Schenectady +WOB 36095 1990 11 Schoharie +WOB 36097 1990 45 Schuyler +WOB 36099 1990 170 Seneca +WOB 36101 1990 30 Steuben +WOB 36103 1990 878 Suffolk +WOB 36105 1990 70 Sullivan +WOB 36107 1990 11 Tioga +WOB 36109 1990 40 Tompkins +WOB 36111 1990 89 Ulster +WOB 36113 1990 161 Warren +WOB 36115 1990 27 Washington +WOB 36117 1990 54 Wayne +WOB 36119 1990 121 Westchester +WOB 36121 1990 9 Wyoming +WOB 36123 1990 87 Yates +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_AIRTR.ALO new file mode 100644 index 0000000..2bafcd3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_AIRTR.ALO @@ -0,0 +1,115 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 39000 2002 1345.613 OH +AIR 39001 2002 0.018 Adams +AIR 39003 2002 0.280 Allen +AIR 39005 2002 0.100 Ashland +AIR 39007 2002 0.002 Ashtabula +AIR 39009 2002 0.096 Athens +AIR 39011 2002 0.122 Auglaize +AIR 39013 2002 0.022 Belmont +AIR 39015 2002 0.016 Brown +AIR 39017 2002 1.033 Butler +AIR 39019 2002 0.109 Carroll +AIR 39021 2002 0.120 Champaign +AIR 39023 2002 0.720 Clark +AIR 39025 2002 0.094 Clermont +AIR 39027 2002 2.330 Clinton +AIR 39029 2002 0.035 Columbiana +AIR 39031 2002 0.041 Coshocton +AIR 39033 2002 0.095 Crawford +AIR 39035 2002 646.150 Cuyahoga +AIR 39037 2002 0.015 Darke +AIR 39039 2002 0.081 Defiance +AIR 39041 2002 0.140 Delaware +AIR 39043 2002 0.000 Erie +AIR 39045 2002 0.000 Fairfield +AIR 39047 2002 0.160 Fayette +AIR 39049 2002 386.360 Franklin +AIR 39051 2002 0.018 Fulton +AIR 39053 2002 0.099 Gallia +AIR 39055 2002 0.020 Geauga +AIR 39057 2002 0.020 Greene +AIR 39059 2002 0.081 Guernsey +AIR 39061 2002 1.220 Hamilton +AIR 39063 2002 0.340 Hancock +AIR 39065 2002 0.032 Hardin +AIR 39067 2002 0.022 Harrison +AIR 39069 2002 0.000 Henry +AIR 39071 2002 0.073 Highland +AIR 39073 2002 0.000 Hocking +AIR 39075 2002 0.067 Holmes +AIR 39077 2002 0.000 Huron +AIR 39079 2002 0.035 Jackson +AIR 39081 2002 0.000 Jefferson +AIR 39083 2002 0.075 Knox +AIR 39085 2002 0.120 Lake +AIR 39087 2002 0.000 Lawrence +AIR 39089 2002 0.000 Licking +AIR 39091 2002 0.035 Logan +AIR 39093 2002 0.000 Lorain +AIR 39095 2002 0.000 Lucas +AIR 39097 2002 0.242 Madison +AIR 39099 2002 0.000 Mahoning +AIR 39101 2002 0.327 Marion +AIR 39103 2002 0.353 Medina +AIR 39105 2002 0.000 Meigs +AIR 39107 2002 0.038 Mercer +AIR 39109 2002 0.000 Miami +AIR 39111 2002 0.045 Monroe +AIR 39113 2002 261.110 Montgomery +AIR 39115 2002 0.000 Morgan +AIR 39117 2002 0.022 Morrow +AIR 39119 2002 0.090 Muskingum +AIR 39121 2002 0.000 Noble +AIR 39123 2002 0.490 Ottawa +AIR 39125 2002 0.000 Paulding +AIR 39127 2002 0.006 Perry +AIR 39129 2002 0.079 Pickaway +AIR 39131 2002 0.000 Pike +AIR 39133 2002 0.089 Portage +AIR 39135 2002 0.000 Preble +AIR 39137 2002 0.014 Putnam +AIR 39139 2002 1.470 Richland +AIR 39141 2002 0.260 Ross +AIR 39143 2002 0.164 Sandusky +AIR 39145 2002 0.070 Scioto +AIR 39147 2002 0.328 Seneca +AIR 39149 2002 0.051 Shelby +AIR 39151 2002 0.000 Stark +AIR 39153 2002 31.650 Summit +AIR 39155 2002 6.150 Trumbull +AIR 39157 2002 0.150 Tuscarawas +AIR 39159 2002 0.220 Union +AIR 39161 2002 0.050 Van Wert +AIR 39163 2002 0.000 Vinton +AIR 39165 2002 0.029 Warren +AIR 39167 2002 0.000 Washington +AIR 39169 2002 0.790 Wayne +AIR 39171 2002 0.010 Williams +AIR 39173 2002 0.900 Wood +AIR 39175 2002 0.018 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_COAL.ALO new file mode 100644 index 0000000..5f6cde0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_COAL.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 39000 2002 10851 OH +MIN 39001 2002 0 Adams +MIN 39003 2002 0 Allen +MIN 39005 2002 0 Ashland +MIN 39007 2002 0 Ashtabula +MIN 39009 2002 1158 Athens +MIN 39011 2002 0 Auglaize +MIN 39013 2002 3871 Belmont +MIN 39015 2002 0 Brown +MIN 39017 2002 0 Butler +MIN 39019 2002 36 Carroll +MIN 39021 2002 0 Champaign +MIN 39023 2002 0 Clark +MIN 39025 2002 0 Clermont +MIN 39027 2002 0 Clinton +MIN 39029 2002 356 Columbiana +MIN 39031 2002 0 Coshocton +MIN 39033 2002 0 Crawford +MIN 39035 2002 0 Cuyahoga +MIN 39037 2002 0 Darke +MIN 39039 2002 0 Defiance +MIN 39041 2002 0 Delaware +MIN 39043 2002 0 Erie +MIN 39045 2002 0 Fairfield +MIN 39047 2002 0 Fayette +MIN 39049 2002 0 Franklin +MIN 39051 2002 0 Fulton +MIN 39053 2002 0 Gallia +MIN 39055 2002 0 Geauga +MIN 39057 2002 0 Greene +MIN 39059 2002 0 Guernsey +MIN 39061 2002 0 Hamilton +MIN 39063 2002 0 Hancock +MIN 39065 2002 0 Hardin +MIN 39067 2002 1351 Harrison +MIN 39069 2002 0 Henry +MIN 39071 2002 0 Highland +MIN 39073 2002 0 Hocking +MIN 39075 2002 0 Holmes +MIN 39077 2002 0 Huron +MIN 39079 2002 0 Jackson +MIN 39081 2002 310 Jefferson +MIN 39083 2002 0 Knox +MIN 39085 2002 0 Lake +MIN 39087 2002 0 Lawrence +MIN 39089 2002 0 Licking +MIN 39091 2002 0 Logan +MIN 39093 2002 0 Lorain +MIN 39095 2002 0 Lucas +MIN 39097 2002 0 Madison +MIN 39099 2002 0 Mahoning +MIN 39101 2002 0 Marion +MIN 39103 2002 0 Medina +MIN 39105 2002 417 Meigs +MIN 39107 2002 0 Mercer +MIN 39109 2002 0 Miami +MIN 39111 2002 3352 Monroe +MIN 39113 2002 0 Montgomery +MIN 39115 2002 0 Morgan +MIN 39117 2002 0 Morrow +MIN 39119 2002 0 Muskingum +MIN 39121 2002 0 Noble +MIN 39123 2002 0 Ottawa +MIN 39125 2002 0 Paulding +MIN 39127 2002 0 Perry +MIN 39129 2002 0 Pickaway +MIN 39131 2002 0 Pike +MIN 39133 2002 0 Portage +MIN 39135 2002 0 Preble +MIN 39137 2002 0 Putnam +MIN 39139 2002 0 Richland +MIN 39141 2002 0 Ross +MIN 39143 2002 0 Sandusky +MIN 39145 2002 0 Scioto +MIN 39147 2002 0 Seneca +MIN 39149 2002 0 Shelby +MIN 39151 2002 0 Stark +MIN 39153 2002 0 Summit +MIN 39155 2002 0 Trumbull +MIN 39157 2002 0 Tuscarawas +MIN 39159 2002 0 Union +MIN 39161 2002 0 Van Wert +MIN 39163 2002 0 Vinton +MIN 39165 2002 0 Warren +MIN 39167 2002 0 Washington +MIN 39169 2002 0 Wayne +MIN 39171 2002 0 Williams +MIN 39173 2002 0 Wood +MIN 39175 2002 0 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_CONST.ALO new file mode 100644 index 0000000..60f767f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_CONST.ALO @@ -0,0 +1,115 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 39000 2003 16520456 OH +CON 39001 2003 1866 Adams +CON 39003 2003 112685 Allen +CON 39005 2003 29736 Ashland +CON 39007 2003 194782 Ashtabula +CON 39009 2003 54041 Athens +CON 39011 2003 40924 Auglaize +CON 39013 2003 17595 Belmont +CON 39015 2003 34104 Brown +CON 39017 2003 693644 Butler +CON 39019 2003 3796 Carroll +CON 39021 2003 35446 Champaign +CON 39023 2003 129716 Clark +CON 39025 2003 363775 Clermont +CON 39027 2003 41544 Clinton +CON 39029 2003 54839 Columbiana +CON 39031 2003 16348 Coshocton +CON 39033 2003 44363 Crawford +CON 39035 2003 1484529 Cuyahoga +CON 39037 2003 27656 Darke +CON 39039 2003 25305 Defiance +CON 39041 2003 662068 Delaware +CON 39043 2003 109663 Erie +CON 39045 2003 373922 Fairfield +CON 39047 2003 52916 Fayette +CON 39049 2003 2409996 Franklin +CON 39051 2003 52341 Fulton +CON 39053 2003 6515 Gallia +CON 39055 2003 136264 Geauga +CON 39057 2003 290596 Greene +CON 39059 2003 59321 Guernsey +CON 39061 2003 1189366 Hamilton +CON 39063 2003 124491 Hancock +CON 39065 2003 5574 Hardin +CON 39067 2003 11278 Harrison +CON 39069 2003 24635 Henry +CON 39071 2003 24302 Highland +CON 39073 2003 9982 Hocking +CON 39075 2003 11108 Holmes +CON 39077 2003 45595 Huron +CON 39079 2003 18642 Jackson +CON 39081 2003 31473 Jefferson +CON 39083 2003 104897 Knox +CON 39085 2003 288010 Lake +CON 39087 2003 46866 Lawrence +CON 39089 2003 276198 Licking +CON 39091 2003 47323 Logan +CON 39093 2003 541420 Lorain +CON 39095 2003 506953 Lucas +CON 39097 2003 82694 Madison +CON 39099 2003 295448 Mahoning +CON 39101 2003 94620 Marion +CON 39103 2003 363370 Medina +CON 39105 2003 28958 Meigs +CON 39107 2003 39673 Mercer +CON 39109 2003 110622 Miami +CON 39111 2003 3408 Monroe +CON 39113 2003 724156 Montgomery +CON 39115 2003 9385 Morgan +CON 39117 2003 12694 Morrow +CON 39119 2003 50541 Muskingum +CON 39121 2003 5109 Noble +CON 39123 2003 161609 Ottawa +CON 39125 2003 15937 Paulding +CON 39127 2003 23540 Perry +CON 39129 2003 74150 Pickaway +CON 39131 2003 25838 Pike +CON 39133 2003 299252 Portage +CON 39135 2003 35817 Preble +CON 39137 2003 34712 Putnam +CON 39139 2003 101004 Richland +CON 39141 2003 30750 Ross +CON 39143 2003 71486 Sandusky +CON 39145 2003 73441 Scioto +CON 39147 2003 45159 Seneca +CON 39149 2003 59548 Shelby +CON 39151 2003 583351 Stark +CON 39153 2003 707234 Summit +CON 39155 2003 225190 Trumbull +CON 39157 2003 48996 Tuscarawas +CON 39159 2003 173625 Union +CON 39161 2003 9605 Van Wert +CON 39163 2003 2059 Vinton +CON 39165 2003 590537 Warren +CON 39167 2003 69844 Washington +CON 39169 2003 124728 Wayne +CON 39171 2003 39094 Williams +CON 39173 2003 184286 Wood +CON 39175 2003 20574 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_FARMS.ALO new file mode 100644 index 0000000..24c2492 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_FARMS.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 39000 2002 10041416 OH +FRM 39001 2002 63225 Adams +FRM 39003 2002 157647 Allen +FRM 39005 2002 102186 Ashland +FRM 39007 2002 86514 Ashtabula +FRM 39009 2002 24332 Athens +FRM 39011 2002 187985 Auglaize +FRM 39013 2002 37980 Belmont +FRM 39015 2002 128028 Brown +FRM 39017 2002 86933 Butler +FRM 39019 2002 52705 Carroll +FRM 39021 2002 169660 Champaign +FRM 39023 2002 134955 Clark +FRM 39025 2002 71139 Clermont +FRM 39027 2002 200653 Clinton +FRM 39029 2002 76244 Columbiana +FRM 39031 2002 72864 Coshocton +FRM 39033 2002 207911 Crawford +FRM 39035 2002 743 Cuyahoga +FRM 39037 2002 295597 Darke +FRM 39039 2002 163332 Defiance +FRM 39041 2002 129269 Delaware +FRM 39043 2002 77277 Erie +FRM 39045 2002 131899 Fairfield +FRM 39047 2002 177998 Fayette +FRM 39049 2002 56892 Franklin +FRM 39051 2002 174093 Fulton +FRM 39053 2002 28855 Gallia +FRM 39055 2002 27814 Geauga +FRM 39057 2002 136482 Greene +FRM 39059 2002 37071 Guernsey +FRM 39061 2002 14062 Hamilton +FRM 39063 2002 234260 Hancock +FRM 39065 2002 207482 Hardin +FRM 39067 2002 36927 Harrison +FRM 39069 2002 217777 Henry +FRM 39071 2002 154755 Highland +FRM 39073 2002 14357 Hocking +FRM 39075 2002 104345 Holmes +FRM 39077 2002 181438 Huron +FRM 39079 2002 22195 Jackson +FRM 39081 2002 22727 Jefferson +FRM 39083 2002 124498 Knox +FRM 39085 2002 9007 Lake +FRM 39087 2002 10180 Lawrence +FRM 39089 2002 145182 Licking +FRM 39091 2002 163633 Logan +FRM 39093 2002 115084 Lorain +FRM 39095 2002 70853 Lucas +FRM 39097 2002 214411 Madison +FRM 39099 2002 48642 Mahoning +FRM 39101 2002 183317 Marion +FRM 39103 2002 77021 Medina +FRM 39105 2002 24227 Meigs +FRM 39107 2002 235534 Mercer +FRM 39109 2002 156262 Miami +FRM 39111 2002 24219 Monroe +FRM 39113 2002 79812 Montgomery +FRM 39115 2002 24510 Morgan +FRM 39117 2002 132917 Morrow +FRM 39119 2002 69860 Muskingum +FRM 39121 2002 24968 Noble +FRM 39123 2002 95452 Ottawa +FRM 39125 2002 208722 Paulding +FRM 39127 2002 43945 Perry +FRM 39129 2002 232225 Pickaway +FRM 39131 2002 26794 Pike +FRM 39133 2002 56866 Portage +FRM 39135 2002 163037 Preble +FRM 39137 2002 291447 Putnam +FRM 39139 2002 101580 Richland +FRM 39141 2002 144976 Ross +FRM 39143 2002 171915 Sandusky +FRM 39145 2002 40055 Scioto +FRM 39147 2002 234949 Seneca +FRM 39149 2002 173021 Shelby +FRM 39151 2002 95740 Stark +FRM 39153 2002 9371 Summit +FRM 39155 2002 71817 Trumbull +FRM 39157 2002 71230 Tuscarawas +FRM 39159 2002 216456 Union +FRM 39161 2002 233211 Van Wert +FRM 39163 2002 15306 Vinton +FRM 39165 2002 76583 Warren +FRM 39167 2002 43801 Washington +FRM 39169 2002 191866 Wayne +FRM 39171 2002 146153 Williams +FRM 39173 2002 270360 Wood +FRM 39175 2002 171793 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_GOLF.ALO new file mode 100644 index 0000000..3b9fa03 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_GOLF.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 39000 2002 646 OH +GC 39001 2002 2 Adams +GC 39003 2002 9 Allen +GC 39005 2002 7 Ashland +GC 39007 2002 10 Ashtabula +GC 39009 2002 2 Athens +GC 39011 2002 4 Auglaize +GC 39013 2002 4 Belmont +GC 39015 2002 1 Brown +GC 39017 2002 14 Butler +GC 39019 2002 2 Carroll +GC 39021 2002 1 Champaign +GC 39023 2002 10 Clark +GC 39025 2002 7 Clermont +GC 39027 2002 3 Clinton +GC 39029 2002 13 Columbiana +GC 39031 2002 3 Coshocton +GC 39033 2002 4 Crawford +GC 39035 2002 19 Cuyahoga +GC 39037 2002 5 Darke +GC 39039 2002 5 Defiance +GC 39041 2002 20 Delaware +GC 39043 2002 8 Erie +GC 39045 2002 6 Fairfield +GC 39047 2002 1 Fayette +GC 39049 2002 32 Franklin +GC 39051 2002 3 Fulton +GC 39053 2002 2 Gallia +GC 39055 2002 12 Geauga +GC 39057 2002 7 Greene +GC 39059 2002 2 Guernsey +GC 39061 2002 36 Hamilton +GC 39063 2002 8 Hancock +GC 39065 2002 0 Hardin +GC 39067 2002 2 Harrison +GC 39069 2002 0 Henry +GC 39071 2002 3 Highland +GC 39073 2002 3 Hocking +GC 39075 2002 3 Holmes +GC 39077 2002 4 Huron +GC 39079 2002 2 Jackson +GC 39081 2002 7 Jefferson +GC 39083 2002 10 Knox +GC 39085 2002 13 Lake +GC 39087 2002 3 Lawrence +GC 39089 2002 17 Licking +GC 39091 2002 4 Logan +GC 39093 2002 28 Lorain +GC 39095 2002 19 Lucas +GC 39097 2002 2 Madison +GC 39099 2002 12 Mahoning +GC 39101 2002 5 Marion +GC 39103 2002 17 Medina +GC 39105 2002 1 Meigs +GC 39107 2002 3 Mercer +GC 39109 2002 8 Miami +GC 39111 2002 1 Monroe +GC 39113 2002 11 Montgomery +GC 39115 2002 0 Morgan +GC 39117 2002 0 Morrow +GC 39119 2002 9 Muskingum +GC 39121 2002 1 Noble +GC 39123 2002 5 Ottawa +GC 39125 2002 0 Paulding +GC 39127 2002 3 Perry +GC 39129 2002 6 Pickaway +GC 39131 2002 1 Pike +GC 39133 2002 19 Portage +GC 39135 2002 2 Preble +GC 39137 2002 2 Putnam +GC 39139 2002 10 Richland +GC 39141 2002 7 Ross +GC 39143 2002 7 Sandusky +GC 39145 2002 2 Scioto +GC 39147 2002 7 Seneca +GC 39149 2002 1 Shelby +GC 39151 2002 23 Stark +GC 39153 2002 25 Summit +GC 39155 2002 23 Trumbull +GC 39157 2002 6 Tuscarawas +GC 39159 2002 6 Union +GC 39161 2002 2 Van Wert +GC 39163 2002 0 Vinton +GC 39165 2002 16 Warren +GC 39167 2002 3 Washington +GC 39169 2002 6 Wayne +GC 39171 2002 5 Williams +GC 39173 2002 6 Wood +GC 39175 2002 3 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_HOLSL.ALO new file mode 100644 index 0000000..3c96bb8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_HOLSL.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 39000 2002 16202 OH +COM 39001 2002 11 Adams +COM 39003 2002 171 Allen +COM 39005 2002 48 Ashland +COM 39007 2002 90 Ashtabula +COM 39009 2002 34 Athens +COM 39011 2002 54 Auglaize +COM 39013 2002 47 Belmont +COM 39015 2002 15 Brown +COM 39017 2002 511 Butler +COM 39019 2002 23 Carroll +COM 39021 2002 29 Champaign +COM 39023 2002 127 Clark +COM 39025 2002 202 Clermont +COM 39027 2002 39 Clinton +COM 39029 2002 113 Columbiana +COM 39031 2002 30 Coshocton +COM 39033 2002 49 Crawford +COM 39035 2002 2925 Cuyahoga +COM 39037 2002 59 Darke +COM 39039 2002 43 Defiance +COM 39041 2002 195 Delaware +COM 39043 2002 91 Erie +COM 39045 2002 115 Fairfield +COM 39047 2002 37 Fayette +COM 39049 2002 1723 Franklin +COM 39051 2002 64 Fulton +COM 39053 2002 27 Gallia +COM 39055 2002 185 Geauga +COM 39057 2002 91 Greene +COM 39059 2002 45 Guernsey +COM 39061 2002 1744 Hamilton +COM 39063 2002 93 Hancock +COM 39065 2002 15 Hardin +COM 39067 2002 15 Harrison +COM 39069 2002 37 Henry +COM 39071 2002 30 Highland +COM 39073 2002 7 Hocking +COM 39075 2002 51 Holmes +COM 39077 2002 50 Huron +COM 39079 2002 24 Jackson +COM 39081 2002 62 Jefferson +COM 39083 2002 44 Knox +COM 39085 2002 401 Lake +COM 39087 2002 31 Lawrence +COM 39089 2002 123 Licking +COM 39091 2002 44 Logan +COM 39093 2002 308 Lorain +COM 39095 2002 664 Lucas +COM 39097 2002 41 Madison +COM 39099 2002 357 Mahoning +COM 39101 2002 54 Marion +COM 39103 2002 278 Medina +COM 39105 2002 12 Meigs +COM 39107 2002 56 Mercer +COM 39109 2002 106 Miami +COM 39111 2002 9 Monroe +COM 39113 2002 815 Montgomery +COM 39115 2002 7 Morgan +COM 39117 2002 11 Morrow +COM 39119 2002 78 Muskingum +COM 39121 2002 9 Noble +COM 39123 2002 40 Ottawa +COM 39125 2002 15 Paulding +COM 39127 2002 18 Perry +COM 39129 2002 40 Pickaway +COM 39131 2002 12 Pike +COM 39133 2002 187 Portage +COM 39135 2002 29 Preble +COM 39137 2002 48 Putnam +COM 39139 2002 150 Richland +COM 39141 2002 58 Ross +COM 39143 2002 68 Sandusky +COM 39145 2002 59 Scioto +COM 39147 2002 58 Seneca +COM 39149 2002 57 Shelby +COM 39151 2002 488 Stark +COM 39153 2002 1007 Summit +COM 39155 2002 207 Trumbull +COM 39157 2002 112 Tuscarawas +COM 39159 2002 49 Union +COM 39161 2002 32 Van Wert +COM 39163 2002 6 Vinton +COM 39165 2002 211 Warren +COM 39167 2002 69 Washington +COM 39169 2002 151 Wayne +COM 39171 2002 52 Williams +COM 39173 2002 177 Wood +COM 39175 2002 33 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_HOUSE.ALO new file mode 100644 index 0000000..722ad51 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_HOUSE.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 39000 2002 4876698 OH +HOU 39001 2002 12029 Adams +HOU 39003 2002 44533 Allen +HOU 39005 2002 21139 Ashland +HOU 39007 2002 44516 Ashtabula +HOU 39009 2002 25102 Athens +HOU 39011 2002 18702 Auglaize +HOU 39013 2002 31238 Belmont +HOU 39015 2002 17628 Brown +HOU 39017 2002 133062 Butler +HOU 39019 2002 13079 Carroll +HOU 39021 2002 16176 Champaign +HOU 39023 2002 61745 Clark +HOU 39025 2002 72437 Clermont +HOU 39027 2002 16996 Clinton +HOU 39029 2002 46475 Columbiana +HOU 39031 2002 16279 Coshocton +HOU 39033 2002 20343 Crawford +HOU 39035 2002 617134 Cuyahoga +HOU 39037 2002 21835 Darke +HOU 39039 2002 16291 Defiance +HOU 39041 2002 49414 Delaware +HOU 39043 2002 36321 Erie +HOU 39045 2002 50610 Fairfield +HOU 39047 2002 12067 Fayette +HOU 39049 2002 489821 Franklin +HOU 39051 2002 16553 Fulton +HOU 39053 2002 13614 Gallia +HOU 39055 2002 33847 Geauga +HOU 39057 2002 60542 Greene +HOU 39059 2002 19079 Guernsey +HOU 39061 2002 376344 Hamilton +HOU 39063 2002 30380 Hancock +HOU 39065 2002 12992 Hardin +HOU 39067 2002 7724 Harrison +HOU 39069 2002 11771 Henry +HOU 39071 2002 17735 Highland +HOU 39073 2002 12176 Hocking +HOU 39075 2002 12305 Holmes +HOU 39077 2002 23933 Huron +HOU 39079 2002 14301 Jackson +HOU 39081 2002 33487 Jefferson +HOU 39083 2002 22430 Knox +HOU 39085 2002 95138 Lake +HOU 39087 2002 27529 Lawrence +HOU 39089 2002 60954 Licking +HOU 39091 2002 22158 Logan +HOU 39093 2002 115085 Lorain +HOU 39095 2002 198620 Lucas +HOU 39097 2002 14744 Madison +HOU 39099 2002 112593 Mahoning +HOU 39101 2002 26609 Marion +HOU 39103 2002 59849 Medina +HOU 39105 2002 10881 Meigs +HOU 39107 2002 16151 Mercer +HOU 39109 2002 40902 Miami +HOU 39111 2002 7227 Monroe +HOU 39113 2002 250230 Montgomery +HOU 39115 2002 7794 Morgan +HOU 39117 2002 12334 Morrow +HOU 39119 2002 35473 Muskingum +HOU 39121 2002 5547 Noble +HOU 39123 2002 25955 Ottawa +HOU 39125 2002 8719 Paulding +HOU 39127 2002 13772 Perry +HOU 39129 2002 19021 Pickaway +HOU 39131 2002 11848 Pike +HOU 39133 2002 62019 Portage +HOU 39135 2002 17527 Preble +HOU 39137 2002 13016 Putnam +HOU 39139 2002 54011 Richland +HOU 39141 2002 29981 Ross +HOU 39143 2002 25482 Sandusky +HOU 39145 2002 34096 Scioto +HOU 39147 2002 24012 Seneca +HOU 39149 2002 19062 Shelby +HOU 39151 2002 158895 Stark +HOU 39153 2002 235248 Summit +HOU 39155 2002 95827 Trumbull +HOU 39157 2002 38421 Tuscarawas +HOU 39159 2002 16235 Union +HOU 39161 2002 12477 Van Wert +HOU 39163 2002 5733 Vinton +HOU 39165 2002 64639 Warren +HOU 39167 2002 28086 Washington +HOU 39169 2002 43590 Wayne +HOU 39171 2002 16440 Williams +HOU 39173 2002 49161 Wood +HOU 39175 2002 9422 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_LOGGN.ALO new file mode 100644 index 0000000..3abed20 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_LOGGN.ALO @@ -0,0 +1,115 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 39000 2002 176198232 OH +LOG 39001 2002 2241684 Adams +LOG 39003 2002 436770 Allen +LOG 39005 2002 385520 Ashland +LOG 39007 2002 2498803 Ashtabula +LOG 39009 2002 3161824 Athens +LOG 39011 2002 1065959 Auglaize +LOG 39013 2002 1860540 Belmont +LOG 39015 2002 446446 Brown +LOG 39017 2002 909588 Butler +LOG 39019 2002 1663082 Carroll +LOG 39021 2002 2756 Champaign +LOG 39023 2002 685596 Clark +LOG 39025 2002 9645 Clermont +LOG 39027 2002 330087 Clinton +LOG 39029 2002 315246 Columbiana +LOG 39031 2002 10336934 Coshocton +LOG 39033 2002 292395 Crawford +LOG 39035 2002 504912 Cuyahoga +LOG 39037 2002 167280 Darke +LOG 39039 2002 171414 Defiance +LOG 39041 2002 276113 Delaware +LOG 39043 2002 518326 Erie +LOG 39045 2002 376207 Fairfield +LOG 39047 2002 0 Fayette +LOG 39049 2002 10196 Franklin +LOG 39051 2002 0 Fulton +LOG 39053 2002 4923902 Gallia +LOG 39055 2002 2538592 Geauga +LOG 39057 2002 1758196 Greene +LOG 39059 2002 5345076 Guernsey +LOG 39061 2002 75383 Hamilton +LOG 39063 2002 129119 Hancock +LOG 39065 2002 38306 Hardin +LOG 39067 2002 1096296 Harrison +LOG 39069 2002 90667 Henry +LOG 39071 2002 1123065 Highland +LOG 39073 2002 7930081 Hocking +LOG 39075 2002 8047218 Holmes +LOG 39077 2002 278339 Huron +LOG 39079 2002 5768910 Jackson +LOG 39081 2002 1334306 Jefferson +LOG 39083 2002 602404 Knox +LOG 39085 2002 1055212 Lake +LOG 39087 2002 1092643 Lawrence +LOG 39089 2002 1867299 Licking +LOG 39091 2002 1325500 Logan +LOG 39093 2002 82675 Lorain +LOG 39095 2002 115746 Lucas +LOG 39097 2002 14882 Madison +LOG 39099 2002 1419466 Mahoning +LOG 39101 2002 28936 Marion +LOG 39103 2002 2740625 Medina +LOG 39105 2002 3437615 Meigs +LOG 39107 2002 509770 Mercer +LOG 39109 2002 32243 Miami +LOG 39111 2002 394126 Monroe +LOG 39113 2002 0 Montgomery +LOG 39115 2002 1999442 Morgan +LOG 39117 2002 85706 Morrow +LOG 39119 2002 2855802 Muskingum +LOG 39121 2002 4168474 Noble +LOG 39123 2002 30184 Ottawa +LOG 39125 2002 3032 Paulding +LOG 39127 2002 3527229 Perry +LOG 39129 2002 4502710 Pickaway +LOG 39131 2002 4690333 Pike +LOG 39133 2002 1196572 Portage +LOG 39135 2002 159012 Preble +LOG 39137 2002 0 Putnam +LOG 39139 2002 1001451 Richland +LOG 39141 2002 20191395 Ross +LOG 39143 2002 753552 Sandusky +LOG 39145 2002 12066016 Scioto +LOG 39147 2002 123883 Seneca +LOG 39149 2002 0 Shelby +LOG 39151 2002 2064198 Stark +LOG 39153 2002 1503840 Summit +LOG 39155 2002 4028200 Trumbull +LOG 39157 2002 9852400 Tuscarawas +LOG 39159 2002 650456 Union +LOG 39161 2002 0 Van Wert +LOG 39163 2002 7392012 Vinton +LOG 39165 2002 76323 Warren +LOG 39167 2002 5292729 Washington +LOG 39169 2002 3479808 Wayne +LOG 39171 2002 463583 Williams +LOG 39173 2002 146481 Wood +LOG 39175 2002 29487 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_LSCAP.ALO new file mode 100644 index 0000000..d75359f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_LSCAP.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 39000 2002 18792 OH +LSC 39001 2002 0 Adams +LSC 39003 2002 112 Allen +LSC 39005 2002 2463 Ashland +LSC 39007 2002 26 Ashtabula +LSC 39009 2002 50 Athens +LSC 39011 2002 7 Auglaize +LSC 39013 2002 29 Belmont +LSC 39015 2002 7 Brown +LSC 39017 2002 580 Butler +LSC 39019 2002 54 Carroll +LSC 39021 2002 7 Champaign +LSC 39023 2002 86 Clark +LSC 39025 2002 326 Clermont +LSC 39027 2002 7 Clinton +LSC 39029 2002 44 Columbiana +LSC 39031 2002 7 Coshocton +LSC 39033 2002 39 Crawford +LSC 39035 2002 3180 Cuyahoga +LSC 39037 2002 39 Darke +LSC 39039 2002 19 Defiance +LSC 39041 2002 373 Delaware +LSC 39043 2002 121 Erie +LSC 39045 2002 160 Fairfield +LSC 39047 2002 39 Fayette +LSC 39049 2002 1907 Franklin +LSC 39051 2002 14 Fulton +LSC 39053 2002 7 Gallia +LSC 39055 2002 501 Geauga +LSC 39057 2002 164 Greene +LSC 39059 2002 7 Guernsey +LSC 39061 2002 1129 Hamilton +LSC 39063 2002 64 Hancock +LSC 39065 2002 22 Hardin +LSC 39067 2002 7 Harrison +LSC 39069 2002 7 Henry +LSC 39071 2002 39 Highland +LSC 39073 2002 7 Hocking +LSC 39075 2002 39 Holmes +LSC 39077 2002 29 Huron +LSC 39079 2002 7 Jackson +LSC 39081 2002 43 Jefferson +LSC 39083 2002 28 Knox +LSC 39085 2002 311 Lake +LSC 39087 2002 15 Lawrence +LSC 39089 2002 136 Licking +LSC 39091 2002 17 Logan +LSC 39093 2002 543 Lorain +LSC 39095 2002 403 Lucas +LSC 39097 2002 114 Madison +LSC 39099 2002 234 Mahoning +LSC 39101 2002 7 Marion +LSC 39103 2002 292 Medina +LSC 39105 2002 7 Meigs +LSC 39107 2002 40 Mercer +LSC 39109 2002 150 Miami +LSC 39111 2002 7 Monroe +LSC 39113 2002 748 Montgomery +LSC 39115 2002 7 Morgan +LSC 39117 2002 46 Morrow +LSC 39119 2002 80 Muskingum +LSC 39121 2002 7 Noble +LSC 39123 2002 29 Ottawa +LSC 39125 2002 7 Paulding +LSC 39127 2002 7 Perry +LSC 39129 2002 65 Pickaway +LSC 39131 2002 7 Pike +LSC 39133 2002 303 Portage +LSC 39135 2002 39 Preble +LSC 39137 2002 39 Putnam +LSC 39139 2002 100 Richland +LSC 39141 2002 59 Ross +LSC 39143 2002 29 Sandusky +LSC 39145 2002 39 Scioto +LSC 39147 2002 24 Seneca +LSC 39149 2002 39 Shelby +LSC 39151 2002 1297 Stark +LSC 39153 2002 698 Summit +LSC 39155 2002 122 Trumbull +LSC 39157 2002 85 Tuscarawas +LSC 39159 2002 247 Union +LSC 39161 2002 7 Van Wert +LSC 39163 2002 7 Vinton +LSC 39165 2002 281 Warren +LSC 39167 2002 77 Washington +LSC 39169 2002 97 Wayne +LSC 39171 2002 7 Williams +LSC 39173 2002 114 Wood +LSC 39175 2002 7 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_MNFG.ALO new file mode 100644 index 0000000..150b507 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_MNFG.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 39000 2002 1623160 OH +MFG 39001 2002 1494 Adams +MFG 39003 2002 17029 Allen +MFG 39005 2002 11225 Ashland +MFG 39007 2002 17755 Ashtabula +MFG 39009 2002 1938 Athens +MFG 39011 2002 12106 Auglaize +MFG 39013 2002 3080 Belmont +MFG 39015 2002 1063 Brown +MFG 39017 2002 36462 Butler +MFG 39019 2002 3300 Carroll +MFG 39021 2002 6211 Champaign +MFG 39023 2002 18374 Clark +MFG 39025 2002 15145 Clermont +MFG 39027 2002 9199 Clinton +MFG 39029 2002 13498 Columbiana +MFG 39031 2002 6306 Coshocton +MFG 39033 2002 11651 Crawford +MFG 39035 2002 181696 Cuyahoga +MFG 39037 2002 9149 Darke +MFG 39039 2002 12399 Defiance +MFG 39041 2002 11134 Delaware +MFG 39043 2002 11973 Erie +MFG 39045 2002 9924 Fairfield +MFG 39047 2002 5082 Fayette +MFG 39049 2002 87241 Franklin +MFG 39051 2002 17377 Fulton +MFG 39053 2002 1957 Gallia +MFG 39055 2002 19108 Geauga +MFG 39057 2002 8232 Greene +MFG 39059 2002 6446 Guernsey +MFG 39061 2002 116996 Hamilton +MFG 39063 2002 23066 Hancock +MFG 39065 2002 4365 Hardin +MFG 39067 2002 1539 Harrison +MFG 39069 2002 5924 Henry +MFG 39071 2002 6340 Highland +MFG 39073 2002 2644 Hocking +MFG 39075 2002 9141 Holmes +MFG 39077 2002 15583 Huron +MFG 39079 2002 4447 Jackson +MFG 39081 2002 7449 Jefferson +MFG 39083 2002 8953 Knox +MFG 39085 2002 45619 Lake +MFG 39087 2002 1807 Lawrence +MFG 39089 2002 15314 Licking +MFG 39091 2002 11558 Logan +MFG 39093 2002 47213 Lorain +MFG 39095 2002 50458 Lucas +MFG 39097 2002 5811 Madison +MFG 39099 2002 19658 Mahoning +MFG 39101 2002 13707 Marion +MFG 39103 2002 18472 Medina +MFG 39105 2002 171 Meigs +MFG 39107 2002 5100 Mercer +MFG 39109 2002 25567 Miami +MFG 39111 2002 3599 Monroe +MFG 39113 2002 79593 Montgomery +MFG 39115 2002 971 Morgan +MFG 39117 2002 2354 Morrow +MFG 39119 2002 14190 Muskingum +MFG 39121 2002 1259 Noble +MFG 39123 2002 4755 Ottawa +MFG 39125 2002 3022 Paulding +MFG 39127 2002 3011 Perry +MFG 39129 2002 8216 Pickaway +MFG 39131 2002 6697 Pike +MFG 39133 2002 22560 Portage +MFG 39135 2002 6338 Preble +MFG 39137 2002 7792 Putnam +MFG 39139 2002 25383 Richland +MFG 39141 2002 7201 Ross +MFG 39143 2002 18979 Sandusky +MFG 39145 2002 3726 Scioto +MFG 39147 2002 10658 Seneca +MFG 39149 2002 24471 Shelby +MFG 39151 2002 72213 Stark +MFG 39153 2002 69368 Summit +MFG 39155 2002 39739 Trumbull +MFG 39157 2002 16695 Tuscarawas +MFG 39159 2002 16691 Union +MFG 39161 2002 6959 Van Wert +MFG 39163 2002 957 Vinton +MFG 39165 2002 24973 Warren +MFG 39167 2002 10181 Washington +MFG 39169 2002 26401 Wayne +MFG 39171 2002 15407 Williams +MFG 39173 2002 26868 Wood +MFG 39175 2002 7477 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_OIL.ALO new file mode 100644 index 0000000..80de479 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_OIL.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 39000 2002 2085 OH +OIL 39001 2002 9 Adams +OIL 39003 2002 9 Allen +OIL 39005 2002 9 Ashland +OIL 39007 2002 9 Ashtabula +OIL 39009 2002 18 Athens +OIL 39011 2002 0 Auglaize +OIL 39013 2002 0 Belmont +OIL 39015 2002 0 Brown +OIL 39017 2002 9 Butler +OIL 39019 2002 0 Carroll +OIL 39021 2002 0 Champaign +OIL 39023 2002 0 Clark +OIL 39025 2002 9 Clermont +OIL 39027 2002 0 Clinton +OIL 39029 2002 9 Columbiana +OIL 39031 2002 9 Coshocton +OIL 39033 2002 0 Crawford +OIL 39035 2002 18 Cuyahoga +OIL 39037 2002 0 Darke +OIL 39039 2002 0 Defiance +OIL 39041 2002 9 Delaware +OIL 39043 2002 0 Erie +OIL 39045 2002 9 Fairfield +OIL 39047 2002 0 Fayette +OIL 39049 2002 176 Franklin +OIL 39051 2002 0 Fulton +OIL 39053 2002 0 Gallia +OIL 39055 2002 0 Geauga +OIL 39057 2002 0 Greene +OIL 39059 2002 18 Guernsey +OIL 39061 2002 57 Hamilton +OIL 39063 2002 9 Hancock +OIL 39065 2002 0 Hardin +OIL 39067 2002 0 Harrison +OIL 39069 2002 9 Henry +OIL 39071 2002 0 Highland +OIL 39073 2002 18 Hocking +OIL 39075 2002 110 Holmes +OIL 39077 2002 9 Huron +OIL 39079 2002 0 Jackson +OIL 39081 2002 0 Jefferson +OIL 39083 2002 18 Knox +OIL 39085 2002 18 Lake +OIL 39087 2002 0 Lawrence +OIL 39089 2002 64 Licking +OIL 39091 2002 9 Logan +OIL 39093 2002 0 Lorain +OIL 39095 2002 9 Lucas +OIL 39097 2002 0 Madison +OIL 39099 2002 66 Mahoning +OIL 39101 2002 9 Marion +OIL 39103 2002 18 Medina +OIL 39105 2002 66 Meigs +OIL 39107 2002 0 Mercer +OIL 39109 2002 0 Miami +OIL 39111 2002 18 Monroe +OIL 39113 2002 9 Montgomery +OIL 39115 2002 9 Morgan +OIL 39117 2002 9 Morrow +OIL 39119 2002 157 Muskingum +OIL 39121 2002 9 Noble +OIL 39123 2002 0 Ottawa +OIL 39125 2002 0 Paulding +OIL 39127 2002 66 Perry +OIL 39129 2002 0 Pickaway +OIL 39131 2002 0 Pike +OIL 39133 2002 57 Portage +OIL 39135 2002 0 Preble +OIL 39137 2002 0 Putnam +OIL 39139 2002 0 Richland +OIL 39141 2002 0 Ross +OIL 39143 2002 0 Sandusky +OIL 39145 2002 0 Scioto +OIL 39147 2002 0 Seneca +OIL 39149 2002 0 Shelby +OIL 39151 2002 335 Stark +OIL 39153 2002 221 Summit +OIL 39155 2002 15 Trumbull +OIL 39157 2002 25 Tuscarawas +OIL 39159 2002 0 Union +OIL 39161 2002 0 Van Wert +OIL 39163 2002 0 Vinton +OIL 39165 2002 0 Warren +OIL 39167 2002 200 Washington +OIL 39169 2002 137 Wayne +OIL 39171 2002 0 Williams +OIL 39173 2002 0 Wood +OIL 39175 2002 9 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_POP.ALO new file mode 100644 index 0000000..d496a0a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_POP.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 39000 2002 11410396 OH +POP 39001 2002 27761 Adams +POP 39003 2002 108122 Allen +POP 39005 2002 53183 Ashland +POP 39007 2002 103022 Ashtabula +POP 39009 2002 62933 Athens +POP 39011 2002 46701 Auglaize +POP 39013 2002 69716 Belmont +POP 39015 2002 43437 Brown +POP 39017 2002 339683 Butler +POP 39019 2002 29300 Carroll +POP 39021 2002 39306 Champaign +POP 39023 2002 143824 Clark +POP 39025 2002 183314 Clermont +POP 39027 2002 41383 Clinton +POP 39029 2002 111611 Columbiana +POP 39031 2002 36989 Coshocton +POP 39033 2002 46379 Crawford +POP 39035 2002 1372770 Cuyahoga +POP 39037 2002 52965 Darke +POP 39039 2002 39266 Defiance +POP 39041 2002 127484 Delaware +POP 39043 2002 78933 Erie +POP 39045 2002 129300 Fairfield +POP 39047 2002 28188 Fayette +POP 39049 2002 1082160 Franklin +POP 39051 2002 42305 Fulton +POP 39053 2002 31290 Gallia +POP 39055 2002 92672 Geauga +POP 39057 2002 149811 Greene +POP 39059 2002 41146 Guernsey +POP 39061 2002 830349 Hamilton +POP 39063 2002 72678 Hancock +POP 39065 2002 31769 Hardin +POP 39067 2002 15890 Harrison +POP 39069 2002 29419 Henry +POP 39071 2002 41802 Highland +POP 39073 2002 28571 Hocking +POP 39075 2002 40381 Holmes +POP 39077 2002 59961 Huron +POP 39079 2002 32993 Jackson +POP 39081 2002 72212 Jefferson +POP 39083 2002 56297 Knox +POP 39085 2002 230265 Lake +POP 39087 2002 62098 Lawrence +POP 39089 2002 148742 Licking +POP 39091 2002 46319 Logan +POP 39093 2002 288144 Lorain +POP 39095 2002 453963 Lucas +POP 39097 2002 40402 Madison +POP 39099 2002 252790 Mahoning +POP 39101 2002 66255 Marion +POP 39103 2002 158439 Medina +POP 39105 2002 23182 Meigs +POP 39107 2002 40936 Mercer +POP 39109 2002 99637 Miami +POP 39111 2002 14988 Monroe +POP 39113 2002 553152 Montgomery +POP 39115 2002 14837 Morgan +POP 39117 2002 32969 Morrow +POP 39119 2002 85246 Muskingum +POP 39121 2002 14000 Noble +POP 39123 2002 41034 Ottawa +POP 39125 2002 19913 Paulding +POP 39127 2002 34586 Perry +POP 39129 2002 53339 Pickaway +POP 39131 2002 28023 Pike +POP 39133 2002 153387 Portage +POP 39135 2002 42549 Preble +POP 39137 2002 34690 Putnam +POP 39139 2002 128376 Richland +POP 39141 2002 74381 Ross +POP 39143 2002 61870 Sandusky +POP 39145 2002 78091 Scioto +POP 39147 2002 57995 Seneca +POP 39149 2002 48391 Shelby +POP 39151 2002 379540 Stark +POP 39153 2002 546138 Summit +POP 39155 2002 223126 Trumbull +POP 39157 2002 91633 Tuscarawas +POP 39159 2002 43008 Union +POP 39161 2002 29346 Van Wert +POP 39163 2002 13114 Vinton +POP 39165 2002 175041 Warren +POP 39167 2002 62537 Washington +POP 39169 2002 112860 Wayne +POP 39171 2002 39001 Williams +POP 39173 2002 122009 Wood +POP 39175 2002 22778 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_RAIL.ALO new file mode 100644 index 0000000..2bc3067 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_RAIL.ALO @@ -0,0 +1,115 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 39000 2002 31537.150 OH +RR 39001 2002 54.480 Adams +RR 39003 2002 197.400 Allen +RR 39005 2002 390.220 Ashland +RR 39007 2002 858.630 Ashtabula +RR 39009 2002 20.860 Athens +RR 39011 2002 218.720 Auglaize +RR 39013 2002 14.870 Belmont +RR 39015 2002 127.660 Brown +RR 39017 2002 591.520 Butler +RR 39019 2002 5.880 Carroll +RR 39021 2002 0.000 Champaign +RR 39023 2002 92.550 Clark +RR 39025 2002 95.390 Clermont +RR 39027 2002 52.110 Clinton +RR 39029 2002 740.200 Columbiana +RR 39031 2002 0.000 Coshocton +RR 39033 2002 565.830 Crawford +RR 39035 2002 1447.080 Cuyahoga +RR 39037 2002 234.590 Darke +RR 39039 2002 542.760 Defiance +RR 39041 2002 1219.020 Delaware +RR 39043 2002 571.730 Erie +RR 39045 2002 22.090 Fairfield +RR 39047 2002 43.790 Fayette +RR 39049 2002 1323.640 Franklin +RR 39051 2002 854.220 Fulton +RR 39053 2002 4.430 Gallia +RR 39055 2002 3.060 Geauga +RR 39057 2002 53.150 Greene +RR 39059 2002 14.870 Guernsey +RR 39061 2002 674.340 Hamilton +RR 39063 2002 369.200 Hancock +RR 39065 2002 302.980 Hardin +RR 39067 2002 0.000 Harrison +RR 39069 2002 531.980 Henry +RR 39071 2002 0.000 Highland +RR 39073 2002 0.000 Hocking +RR 39075 2002 41.080 Holmes +RR 39077 2002 1086.880 Huron +RR 39079 2002 0.000 Jackson +RR 39081 2002 57.810 Jefferson +RR 39083 2002 10.700 Knox +RR 39085 2002 993.140 Lake +RR 39087 2002 192.050 Lawrence +RR 39089 2002 39.340 Licking +RR 39091 2002 277.390 Logan +RR 39093 2002 949.560 Lorain +RR 39095 2002 1038.570 Lucas +RR 39097 2002 151.630 Madison +RR 39099 2002 668.290 Mahoning +RR 39101 2002 986.010 Marion +RR 39103 2002 635.660 Medina +RR 39105 2002 14.740 Meigs +RR 39107 2002 0.000 Mercer +RR 39109 2002 269.350 Miami +RR 39111 2002 4.270 Monroe +RR 39113 2002 408.000 Montgomery +RR 39115 2002 8.430 Morgan +RR 39117 2002 207.910 Morrow +RR 39119 2002 16.880 Muskingum +RR 39121 2002 0.000 Noble +RR 39123 2002 425.260 Ottawa +RR 39125 2002 280.790 Paulding +RR 39127 2002 13.980 Perry +RR 39129 2002 569.370 Pickaway +RR 39131 2002 555.900 Pike +RR 39133 2002 696.510 Portage +RR 39135 2002 164.820 Preble +RR 39137 2002 531.790 Putnam +RR 39139 2002 151.020 Richland +RR 39141 2002 541.980 Ross +RR 39143 2002 400.880 Sandusky +RR 39145 2002 537.300 Scioto +RR 39147 2002 1484.380 Seneca +RR 39149 2002 449.080 Shelby +RR 39151 2002 248.430 Stark +RR 39153 2002 747.780 Summit +RR 39155 2002 782.790 Trumbull +RR 39157 2002 0.000 Tuscarawas +RR 39159 2002 43.370 Union +RR 39161 2002 8.640 Van Wert +RR 39163 2002 0.000 Vinton +RR 39165 2002 202.760 Warren +RR 39167 2002 13.590 Washington +RR 39169 2002 348.240 Wayne +RR 39171 2002 446.150 Williams +RR 39173 2002 1302.340 Wood +RR 39175 2002 293.060 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_RVPRK.ALO new file mode 100644 index 0000000..9f0cc59 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_RVPRK.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 39000 2002 230 OH +RVP 39001 2002 1 Adams +RVP 39003 2002 2 Allen +RVP 39005 2002 11 Ashland +RVP 39007 2002 11 Ashtabula +RVP 39009 2002 0 Athens +RVP 39011 2002 4 Auglaize +RVP 39013 2002 3 Belmont +RVP 39015 2002 0 Brown +RVP 39017 2002 0 Butler +RVP 39019 2002 2 Carroll +RVP 39021 2002 1 Champaign +RVP 39023 2002 2 Clark +RVP 39025 2002 2 Clermont +RVP 39027 2002 3 Clinton +RVP 39029 2002 6 Columbiana +RVP 39031 2002 1 Coshocton +RVP 39033 2002 1 Crawford +RVP 39035 2002 3 Cuyahoga +RVP 39037 2002 1 Darke +RVP 39039 2002 0 Defiance +RVP 39041 2002 5 Delaware +RVP 39043 2002 5 Erie +RVP 39045 2002 0 Fairfield +RVP 39047 2002 0 Fayette +RVP 39049 2002 2 Franklin +RVP 39051 2002 2 Fulton +RVP 39053 2002 1 Gallia +RVP 39055 2002 5 Geauga +RVP 39057 2002 3 Greene +RVP 39059 2002 6 Guernsey +RVP 39061 2002 3 Hamilton +RVP 39063 2002 2 Hancock +RVP 39065 2002 1 Hardin +RVP 39067 2002 3 Harrison +RVP 39069 2002 1 Henry +RVP 39071 2002 2 Highland +RVP 39073 2002 4 Hocking +RVP 39075 2002 3 Holmes +RVP 39077 2002 2 Huron +RVP 39079 2002 3 Jackson +RVP 39081 2002 3 Jefferson +RVP 39083 2002 2 Knox +RVP 39085 2002 2 Lake +RVP 39087 2002 0 Lawrence +RVP 39089 2002 4 Licking +RVP 39091 2002 6 Logan +RVP 39093 2002 7 Lorain +RVP 39095 2002 1 Lucas +RVP 39097 2002 1 Madison +RVP 39099 2002 3 Mahoning +RVP 39101 2002 1 Marion +RVP 39103 2002 7 Medina +RVP 39105 2002 1 Meigs +RVP 39107 2002 1 Mercer +RVP 39109 2002 2 Miami +RVP 39111 2002 1 Monroe +RVP 39113 2002 2 Montgomery +RVP 39115 2002 0 Morgan +RVP 39117 2002 2 Morrow +RVP 39119 2002 2 Muskingum +RVP 39121 2002 0 Noble +RVP 39123 2002 8 Ottawa +RVP 39125 2002 0 Paulding +RVP 39127 2002 0 Perry +RVP 39129 2002 1 Pickaway +RVP 39131 2002 3 Pike +RVP 39133 2002 13 Portage +RVP 39135 2002 2 Preble +RVP 39137 2002 1 Putnam +RVP 39139 2002 4 Richland +RVP 39141 2002 0 Ross +RVP 39143 2002 6 Sandusky +RVP 39145 2002 5 Scioto +RVP 39147 2002 0 Seneca +RVP 39149 2002 1 Shelby +RVP 39151 2002 7 Stark +RVP 39153 2002 10 Summit +RVP 39155 2002 2 Trumbull +RVP 39157 2002 1 Tuscarawas +RVP 39159 2002 0 Union +RVP 39161 2002 0 Van Wert +RVP 39163 2002 0 Vinton +RVP 39165 2002 3 Warren +RVP 39167 2002 2 Washington +RVP 39169 2002 2 Wayne +RVP 39171 2002 3 Williams +RVP 39173 2002 1 Wood +RVP 39175 2002 0 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_SBC.ALO new file mode 100644 index 0000000..3ceafa2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_SBC.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 39000 2002 18792 OH +SBC 39001 2002 0 Adams +SBC 39003 2002 112 Allen +SBC 39005 2002 145 Ashland +SBC 39007 2002 26 Ashtabula +SBC 39009 2002 50 Athens +SBC 39011 2002 127 Auglaize +SBC 39013 2002 29 Belmont +SBC 39015 2002 118 Brown +SBC 39017 2002 580 Butler +SBC 39019 2002 54 Carroll +SBC 39021 2002 107 Champaign +SBC 39023 2002 86 Clark +SBC 39025 2002 326 Clermont +SBC 39027 2002 113 Clinton +SBC 39029 2002 44 Columbiana +SBC 39031 2002 101 Coshocton +SBC 39033 2002 39 Crawford +SBC 39035 2002 3180 Cuyahoga +SBC 39037 2002 144 Darke +SBC 39039 2002 19 Defiance +SBC 39041 2002 373 Delaware +SBC 39043 2002 121 Erie +SBC 39045 2002 160 Fairfield +SBC 39047 2002 77 Fayette +SBC 39049 2002 1907 Franklin +SBC 39051 2002 14 Fulton +SBC 39053 2002 85 Gallia +SBC 39055 2002 501 Geauga +SBC 39057 2002 164 Greene +SBC 39059 2002 112 Guernsey +SBC 39061 2002 1129 Hamilton +SBC 39063 2002 64 Hancock +SBC 39065 2002 22 Hardin +SBC 39067 2002 43 Harrison +SBC 39069 2002 80 Henry +SBC 39071 2002 114 Highland +SBC 39073 2002 78 Hocking +SBC 39075 2002 110 Holmes +SBC 39077 2002 29 Huron +SBC 39079 2002 90 Jackson +SBC 39081 2002 43 Jefferson +SBC 39083 2002 28 Knox +SBC 39085 2002 311 Lake +SBC 39087 2002 15 Lawrence +SBC 39089 2002 136 Licking +SBC 39091 2002 17 Logan +SBC 39093 2002 543 Lorain +SBC 39095 2002 403 Lucas +SBC 39097 2002 114 Madison +SBC 39099 2002 234 Mahoning +SBC 39101 2002 180 Marion +SBC 39103 2002 292 Medina +SBC 39105 2002 63 Meigs +SBC 39107 2002 40 Mercer +SBC 39109 2002 150 Miami +SBC 39111 2002 41 Monroe +SBC 39113 2002 748 Montgomery +SBC 39115 2002 40 Morgan +SBC 39117 2002 46 Morrow +SBC 39119 2002 80 Muskingum +SBC 39121 2002 38 Noble +SBC 39123 2002 29 Ottawa +SBC 39125 2002 54 Paulding +SBC 39127 2002 94 Perry +SBC 39129 2002 65 Pickaway +SBC 39131 2002 76 Pike +SBC 39133 2002 303 Portage +SBC 39135 2002 116 Preble +SBC 39137 2002 94 Putnam +SBC 39139 2002 100 Richland +SBC 39141 2002 59 Ross +SBC 39143 2002 29 Sandusky +SBC 39145 2002 210 Scioto +SBC 39147 2002 24 Seneca +SBC 39149 2002 132 Shelby +SBC 39151 2002 1297 Stark +SBC 39153 2002 698 Summit +SBC 39155 2002 122 Trumbull +SBC 39157 2002 85 Tuscarawas +SBC 39159 2002 117 Union +SBC 39161 2002 80 Van Wert +SBC 39163 2002 36 Vinton +SBC 39165 2002 281 Warren +SBC 39167 2002 77 Washington +SBC 39169 2002 97 Wayne +SBC 39171 2002 106 Williams +SBC 39173 2002 114 Wood +SBC 39175 2002 62 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_SBR.ALO new file mode 100644 index 0000000..f66db79 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_SBR.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 39000 2002 4876698 OH +SBR 39001 2002 12029 Adams +SBR 39003 2002 44533 Allen +SBR 39005 2002 21139 Ashland +SBR 39007 2002 44516 Ashtabula +SBR 39009 2002 25102 Athens +SBR 39011 2002 18702 Auglaize +SBR 39013 2002 31238 Belmont +SBR 39015 2002 17628 Brown +SBR 39017 2002 133062 Butler +SBR 39019 2002 13079 Carroll +SBR 39021 2002 16176 Champaign +SBR 39023 2002 61745 Clark +SBR 39025 2002 72437 Clermont +SBR 39027 2002 16996 Clinton +SBR 39029 2002 46475 Columbiana +SBR 39031 2002 16279 Coshocton +SBR 39033 2002 20343 Crawford +SBR 39035 2002 617134 Cuyahoga +SBR 39037 2002 21835 Darke +SBR 39039 2002 16291 Defiance +SBR 39041 2002 49414 Delaware +SBR 39043 2002 36321 Erie +SBR 39045 2002 50610 Fairfield +SBR 39047 2002 12067 Fayette +SBR 39049 2002 489821 Franklin +SBR 39051 2002 16553 Fulton +SBR 39053 2002 13614 Gallia +SBR 39055 2002 33847 Geauga +SBR 39057 2002 60542 Greene +SBR 39059 2002 19079 Guernsey +SBR 39061 2002 376344 Hamilton +SBR 39063 2002 30380 Hancock +SBR 39065 2002 12992 Hardin +SBR 39067 2002 7724 Harrison +SBR 39069 2002 11771 Henry +SBR 39071 2002 17735 Highland +SBR 39073 2002 12176 Hocking +SBR 39075 2002 12305 Holmes +SBR 39077 2002 23933 Huron +SBR 39079 2002 14301 Jackson +SBR 39081 2002 33487 Jefferson +SBR 39083 2002 22430 Knox +SBR 39085 2002 95138 Lake +SBR 39087 2002 27529 Lawrence +SBR 39089 2002 60954 Licking +SBR 39091 2002 22158 Logan +SBR 39093 2002 115085 Lorain +SBR 39095 2002 198620 Lucas +SBR 39097 2002 14744 Madison +SBR 39099 2002 112593 Mahoning +SBR 39101 2002 26609 Marion +SBR 39103 2002 59849 Medina +SBR 39105 2002 10881 Meigs +SBR 39107 2002 16151 Mercer +SBR 39109 2002 40902 Miami +SBR 39111 2002 7227 Monroe +SBR 39113 2002 250230 Montgomery +SBR 39115 2002 7794 Morgan +SBR 39117 2002 12334 Morrow +SBR 39119 2002 35473 Muskingum +SBR 39121 2002 5547 Noble +SBR 39123 2002 25955 Ottawa +SBR 39125 2002 8719 Paulding +SBR 39127 2002 13772 Perry +SBR 39129 2002 19021 Pickaway +SBR 39131 2002 11848 Pike +SBR 39133 2002 62019 Portage +SBR 39135 2002 17527 Preble +SBR 39137 2002 13016 Putnam +SBR 39139 2002 54011 Richland +SBR 39141 2002 29981 Ross +SBR 39143 2002 25482 Sandusky +SBR 39145 2002 34096 Scioto +SBR 39147 2002 24012 Seneca +SBR 39149 2002 19062 Shelby +SBR 39151 2002 158895 Stark +SBR 39153 2002 235248 Summit +SBR 39155 2002 95827 Trumbull +SBR 39157 2002 38421 Tuscarawas +SBR 39159 2002 16235 Union +SBR 39161 2002 12477 Van Wert +SBR 39163 2002 5733 Vinton +SBR 39165 2002 64639 Warren +SBR 39167 2002 28086 Washington +SBR 39169 2002 43590 Wayne +SBR 39171 2002 16440 Williams +SBR 39173 2002 49161 Wood +SBR 39175 2002 9422 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_SNOWM.ALO new file mode 100644 index 0000000..2d7c88d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_SNOWM.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 39000 2002 318 OH +SNM 39001 2002 0 Adams +SNM 39003 2002 0 Allen +SNM 39005 2002 19 Ashland +SNM 39007 2002 10 Ashtabula +SNM 39009 2002 0 Athens +SNM 39011 2002 0 Auglaize +SNM 39013 2002 0 Belmont +SNM 39015 2002 0 Brown +SNM 39017 2002 0 Butler +SNM 39019 2002 0 Carroll +SNM 39021 2002 0 Champaign +SNM 39023 2002 0 Clark +SNM 39025 2002 0 Clermont +SNM 39027 2002 0 Clinton +SNM 39029 2002 9 Columbiana +SNM 39031 2002 0 Coshocton +SNM 39033 2002 0 Crawford +SNM 39035 2002 0 Cuyahoga +SNM 39037 2002 0 Darke +SNM 39039 2002 25 Defiance +SNM 39041 2002 0 Delaware +SNM 39043 2002 13 Erie +SNM 39045 2002 0 Fairfield +SNM 39047 2002 0 Fayette +SNM 39049 2002 0 Franklin +SNM 39051 2002 24 Fulton +SNM 39053 2002 0 Gallia +SNM 39055 2002 11 Geauga +SNM 39057 2002 0 Greene +SNM 39059 2002 0 Guernsey +SNM 39061 2002 0 Hamilton +SNM 39063 2002 0 Hancock +SNM 39065 2002 0 Hardin +SNM 39067 2002 0 Harrison +SNM 39069 2002 34 Henry +SNM 39071 2002 0 Highland +SNM 39073 2002 0 Hocking +SNM 39075 2002 0 Holmes +SNM 39077 2002 17 Huron +SNM 39079 2002 0 Jackson +SNM 39081 2002 0 Jefferson +SNM 39083 2002 0 Knox +SNM 39085 2002 0 Lake +SNM 39087 2002 0 Lawrence +SNM 39089 2002 0 Licking +SNM 39091 2002 0 Logan +SNM 39093 2002 0 Lorain +SNM 39095 2002 0 Lucas +SNM 39097 2002 0 Madison +SNM 39099 2002 0 Mahoning +SNM 39101 2002 0 Marion +SNM 39103 2002 6 Medina +SNM 39105 2002 0 Meigs +SNM 39107 2002 0 Mercer +SNM 39109 2002 0 Miami +SNM 39111 2002 0 Monroe +SNM 39113 2002 0 Montgomery +SNM 39115 2002 0 Morgan +SNM 39117 2002 0 Morrow +SNM 39119 2002 0 Muskingum +SNM 39121 2002 0 Noble +SNM 39123 2002 24 Ottawa +SNM 39125 2002 50 Paulding +SNM 39127 2002 0 Perry +SNM 39129 2002 0 Pickaway +SNM 39131 2002 0 Pike +SNM 39133 2002 0 Portage +SNM 39135 2002 0 Preble +SNM 39137 2002 0 Putnam +SNM 39139 2002 0 Richland +SNM 39141 2002 0 Ross +SNM 39143 2002 16 Sandusky +SNM 39145 2002 0 Scioto +SNM 39147 2002 17 Seneca +SNM 39149 2002 0 Shelby +SNM 39151 2002 0 Stark +SNM 39153 2002 0 Summit +SNM 39155 2002 0 Trumbull +SNM 39157 2002 0 Tuscarawas +SNM 39159 2002 0 Union +SNM 39161 2002 0 Van Wert +SNM 39163 2002 0 Vinton +SNM 39165 2002 0 Warren +SNM 39167 2002 0 Washington +SNM 39169 2002 9 Wayne +SNM 39171 2002 26 Williams +SNM 39173 2002 8 Wood +SNM 39175 2002 0 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_WIB.ALO new file mode 100644 index 0000000..b3c769d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_WIB.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 39000 1990 2415 OH +WIB 39001 1990 5 Adams +WIB 39003 1990 6 Allen +WIB 39005 1990 6 Ashland +WIB 39007 1990 167 Ashtabula +WIB 39009 1990 5 Athens +WIB 39011 1990 1 Auglaize +WIB 39013 1990 11 Belmont +WIB 39015 1990 9 Brown +WIB 39017 1990 8 Butler +WIB 39019 1990 11 Carroll +WIB 39021 1990 3 Champaign +WIB 39023 1990 10 Clark +WIB 39025 1990 15 Clermont +WIB 39027 1990 4 Clinton +WIB 39029 1990 7 Columbiana +WIB 39031 1990 9 Coshocton +WIB 39033 1990 1 Crawford +WIB 39035 1990 152 Cuyahoga +WIB 39037 1990 1 Darke +WIB 39039 1990 8 Defiance +WIB 39041 1990 35 Delaware +WIB 39043 1990 347 Erie +WIB 39045 1990 7 Fairfield +WIB 39047 1990 1 Fayette +WIB 39049 1990 9 Franklin +WIB 39051 1990 1 Fulton +WIB 39053 1990 6 Gallia +WIB 39055 1990 12 Geauga +WIB 39057 1990 3 Greene +WIB 39059 1990 16 Guernsey +WIB 39061 1990 14 Hamilton +WIB 39063 1990 6 Hancock +WIB 39065 1990 1 Hardin +WIB 39067 1990 19 Harrison +WIB 39069 1990 9 Henry +WIB 39071 1990 12 Highland +WIB 39073 1990 2 Hocking +WIB 39075 1990 3 Holmes +WIB 39077 1990 5 Huron +WIB 39079 1990 3 Jackson +WIB 39081 1990 3 Jefferson +WIB 39083 1990 6 Knox +WIB 39085 1990 166 Lake +WIB 39087 1990 5 Lawrence +WIB 39089 1990 5 Licking +WIB 39091 1990 22 Logan +WIB 39093 1990 119 Lorain +WIB 39095 1990 155 Lucas +WIB 39097 1990 2 Madison +WIB 39099 1990 21 Mahoning +WIB 39101 1990 1 Marion +WIB 39103 1990 4 Medina +WIB 39105 1990 8 Meigs +WIB 39107 1990 26 Mercer +WIB 39109 1990 6 Miami +WIB 39111 1990 5 Monroe +WIB 39113 1990 7 Montgomery +WIB 39115 1990 11 Morgan +WIB 39117 1990 5 Morrow +WIB 39119 1990 21 Muskingum +WIB 39121 1990 14 Noble +WIB 39123 1990 479 Ottawa +WIB 39125 1990 7 Paulding +WIB 39127 1990 7 Perry +WIB 39129 1990 12 Pickaway +WIB 39131 1990 6 Pike +WIB 39133 1990 38 Portage +WIB 39135 1990 4 Preble +WIB 39137 1990 1 Putnam +WIB 39139 1990 9 Richland +WIB 39141 1990 12 Ross +WIB 39143 1990 116 Sandusky +WIB 39145 1990 10 Scioto +WIB 39147 1990 5 Seneca +WIB 39149 1990 5 Shelby +WIB 39151 1990 12 Stark +WIB 39153 1990 19 Summit +WIB 39155 1990 47 Trumbull +WIB 39157 1990 10 Tuscarawas +WIB 39159 1990 1 Union +WIB 39161 1990 1 Van Wert +WIB 39163 1990 2 Vinton +WIB 39165 1990 19 Warren +WIB 39167 1990 13 Washington +WIB 39169 1990 2 Wayne +WIB 39171 1990 3 Williams +WIB 39173 1990 8 Wood +WIB 39175 1990 5 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OH_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OH_WOB.ALO new file mode 100644 index 0000000..a37d84f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OH_WOB.ALO @@ -0,0 +1,113 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 39000 1990 1156 OH +WOB 39001 1990 5 Adams +WOB 39003 1990 6 Allen +WOB 39005 1990 6 Ashland +WOB 39007 1990 38 Ashtabula +WOB 39009 1990 5 Athens +WOB 39011 1990 1 Auglaize +WOB 39013 1990 11 Belmont +WOB 39015 1990 9 Brown +WOB 39017 1990 8 Butler +WOB 39019 1990 11 Carroll +WOB 39021 1990 3 Champaign +WOB 39023 1990 10 Clark +WOB 39025 1990 15 Clermont +WOB 39027 1990 4 Clinton +WOB 39029 1990 7 Columbiana +WOB 39031 1990 9 Coshocton +WOB 39033 1990 1 Crawford +WOB 39035 1990 22 Cuyahoga +WOB 39037 1990 1 Darke +WOB 39039 1990 8 Defiance +WOB 39041 1990 35 Delaware +WOB 39043 1990 112 Erie +WOB 39045 1990 7 Fairfield +WOB 39047 1990 1 Fayette +WOB 39049 1990 9 Franklin +WOB 39051 1990 1 Fulton +WOB 39053 1990 6 Gallia +WOB 39055 1990 12 Geauga +WOB 39057 1990 3 Greene +WOB 39059 1990 16 Guernsey +WOB 39061 1990 14 Hamilton +WOB 39063 1990 6 Hancock +WOB 39065 1990 1 Hardin +WOB 39067 1990 19 Harrison +WOB 39069 1990 9 Henry +WOB 39071 1990 12 Highland +WOB 39073 1990 2 Hocking +WOB 39075 1990 3 Holmes +WOB 39077 1990 5 Huron +WOB 39079 1990 3 Jackson +WOB 39081 1990 3 Jefferson +WOB 39083 1990 6 Knox +WOB 39085 1990 29 Lake +WOB 39087 1990 5 Lawrence +WOB 39089 1990 5 Licking +WOB 39091 1990 22 Logan +WOB 39093 1990 20 Lorain +WOB 39095 1990 43 Lucas +WOB 39097 1990 2 Madison +WOB 39099 1990 21 Mahoning +WOB 39101 1990 1 Marion +WOB 39103 1990 4 Medina +WOB 39105 1990 8 Meigs +WOB 39107 1990 26 Mercer +WOB 39109 1990 6 Miami +WOB 39111 1990 5 Monroe +WOB 39113 1990 7 Montgomery +WOB 39115 1990 11 Morgan +WOB 39117 1990 5 Morrow +WOB 39119 1990 21 Muskingum +WOB 39121 1990 14 Noble +WOB 39123 1990 144 Ottawa +WOB 39125 1990 7 Paulding +WOB 39127 1990 7 Perry +WOB 39129 1990 12 Pickaway +WOB 39131 1990 6 Pike +WOB 39133 1990 38 Portage +WOB 39135 1990 4 Preble +WOB 39137 1990 1 Putnam +WOB 39139 1990 9 Richland +WOB 39141 1990 12 Ross +WOB 39143 1990 34 Sandusky +WOB 39145 1990 10 Scioto +WOB 39147 1990 5 Seneca +WOB 39149 1990 5 Shelby +WOB 39151 1990 12 Stark +WOB 39153 1990 19 Summit +WOB 39155 1990 47 Trumbull +WOB 39157 1990 10 Tuscarawas +WOB 39159 1990 1 Union +WOB 39161 1990 1 Van Wert +WOB 39163 1990 2 Vinton +WOB 39165 1990 19 Warren +WOB 39167 1990 13 Washington +WOB 39169 1990 2 Wayne +WOB 39171 1990 3 Williams +WOB 39173 1990 8 Wood +WOB 39175 1990 5 Wyandot +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_AIRTR.ALO new file mode 100644 index 0000000..661c953 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_AIRTR.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 40000 2002 504.578 OK +AIR 40001 2002 0.000 Adair +AIR 40003 2002 0.000 Alfalfa +AIR 40005 2002 0.000 Atoka +AIR 40007 2002 0.000 Beaver +AIR 40009 2002 0.014 Beckham +AIR 40011 2002 0.000 Blaine +AIR 40013 2002 0.022 Bryan +AIR 40015 2002 0.000 Caddo +AIR 40017 2002 0.247 Canadian +AIR 40019 2002 0.404 Carter +AIR 40021 2002 0.044 Cherokee +AIR 40023 2002 0.019 Choctaw +AIR 40025 2002 0.011 Cimarron +AIR 40027 2002 0.490 Cleveland +AIR 40029 2002 0.000 Coal +AIR 40031 2002 0.250 Comanche +AIR 40033 2002 0.000 Cotton +AIR 40035 2002 0.000 Craig +AIR 40037 2002 0.020 Creek +AIR 40039 2002 0.074 Custer +AIR 40041 2002 0.082 Delaware +AIR 40043 2002 0.000 Dewey +AIR 40045 2002 0.000 Ellis +AIR 40047 2002 3.490 Garfield +AIR 40049 2002 0.080 Garvin +AIR 40051 2002 0.319 Grady +AIR 40053 2002 0.000 Grant +AIR 40055 2002 0.000 Greer +AIR 40057 2002 0.000 Harmon +AIR 40059 2002 0.000 Harper +AIR 40061 2002 0.000 Haskell +AIR 40063 2002 0.015 Hughes +AIR 40065 2002 0.050 Jackson +AIR 40067 2002 0.000 Jefferson +AIR 40069 2002 0.000 Johnston +AIR 40071 2002 9.300 Kay +AIR 40073 2002 0.000 Kingfisher +AIR 40075 2002 0.020 Kiowa +AIR 40077 2002 0.000 Latimer +AIR 40079 2002 0.010 Le Flore +AIR 40081 2002 0.017 Lincoln +AIR 40083 2002 0.054 Logan +AIR 40085 2002 0.000 Love +AIR 40087 2002 0.000 McClain +AIR 40089 2002 0.074 McCurtain +AIR 40091 2002 0.000 McIntosh +AIR 40093 2002 0.010 Major +AIR 40095 2002 0.011 Marshall +AIR 40097 2002 0.067 Mayes +AIR 40099 2002 0.000 Murray +AIR 40101 2002 0.065 Muskogee +AIR 40103 2002 0.013 Noble +AIR 40105 2002 0.000 Nowata +AIR 40107 2002 0.000 Okfuskee +AIR 40109 2002 271.210 Oklahoma +AIR 40111 2002 0.154 Okmulgee +AIR 40113 2002 0.183 Osage +AIR 40115 2002 0.035 Ottawa +AIR 40117 2002 0.000 Pawnee +AIR 40119 2002 1.830 Payne +AIR 40121 2002 0.165 Pittsburg +AIR 40123 2002 0.042 Pontotoc +AIR 40125 2002 0.082 Pottawatomie +AIR 40127 2002 0.022 Pushmataha +AIR 40129 2002 0.000 Roger Mills +AIR 40131 2002 0.000 Rogers +AIR 40133 2002 0.020 Seminole +AIR 40135 2002 0.014 Sequoyah +AIR 40137 2002 0.054 Stephens +AIR 40139 2002 0.082 Texas +AIR 40141 2002 2.610 Tillman +AIR 40143 2002 211.590 Tulsa +AIR 40145 2002 0.000 Wagoner +AIR 40147 2002 0.000 Washington +AIR 40149 2002 1.100 Washita +AIR 40151 2002 0.030 Woods +AIR 40153 2002 0.081 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_COAL.ALO new file mode 100644 index 0000000..e69707b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_COAL.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 40000 2002 463 OK +MIN 40001 2002 0 Adair +MIN 40003 2002 0 Alfalfa +MIN 40005 2002 0 Atoka +MIN 40007 2002 0 Beaver +MIN 40009 2002 0 Beckham +MIN 40011 2002 0 Blaine +MIN 40013 2002 0 Bryan +MIN 40015 2002 0 Caddo +MIN 40017 2002 0 Canadian +MIN 40019 2002 0 Carter +MIN 40021 2002 0 Cherokee +MIN 40023 2002 0 Choctaw +MIN 40025 2002 0 Cimarron +MIN 40027 2002 0 Cleveland +MIN 40029 2002 0 Coal +MIN 40031 2002 0 Comanche +MIN 40033 2002 0 Cotton +MIN 40035 2002 0 Craig +MIN 40037 2002 0 Creek +MIN 40039 2002 0 Custer +MIN 40041 2002 0 Delaware +MIN 40043 2002 0 Dewey +MIN 40045 2002 0 Ellis +MIN 40047 2002 0 Garfield +MIN 40049 2002 0 Garvin +MIN 40051 2002 0 Grady +MIN 40053 2002 0 Grant +MIN 40055 2002 0 Greer +MIN 40057 2002 0 Harmon +MIN 40059 2002 0 Harper +MIN 40061 2002 0 Haskell +MIN 40063 2002 0 Hughes +MIN 40065 2002 0 Jackson +MIN 40067 2002 0 Jefferson +MIN 40069 2002 0 Johnston +MIN 40071 2002 0 Kay +MIN 40073 2002 0 Kingfisher +MIN 40075 2002 0 Kiowa +MIN 40077 2002 0 Latimer +MIN 40079 2002 463 Le Flore +MIN 40081 2002 0 Lincoln +MIN 40083 2002 0 Logan +MIN 40085 2002 0 Love +MIN 40087 2002 0 McClain +MIN 40089 2002 0 McCurtain +MIN 40091 2002 0 McIntosh +MIN 40093 2002 0 Major +MIN 40095 2002 0 Marshall +MIN 40097 2002 0 Mayes +MIN 40099 2002 0 Murray +MIN 40101 2002 0 Muskogee +MIN 40103 2002 0 Noble +MIN 40105 2002 0 Nowata +MIN 40107 2002 0 Okfuskee +MIN 40109 2002 0 Oklahoma +MIN 40111 2002 0 Okmulgee +MIN 40113 2002 0 Osage +MIN 40115 2002 0 Ottawa +MIN 40117 2002 0 Pawnee +MIN 40119 2002 0 Payne +MIN 40121 2002 0 Pittsburg +MIN 40123 2002 0 Pontotoc +MIN 40125 2002 0 Pottawatomie +MIN 40127 2002 0 Pushmataha +MIN 40129 2002 0 Roger Mills +MIN 40131 2002 0 Rogers +MIN 40133 2002 0 Seminole +MIN 40135 2002 0 Sequoyah +MIN 40137 2002 0 Stephens +MIN 40139 2002 0 Texas +MIN 40141 2002 0 Tillman +MIN 40143 2002 0 Tulsa +MIN 40145 2002 0 Wagoner +MIN 40147 2002 0 Washington +MIN 40149 2002 0 Washita +MIN 40151 2002 0 Woods +MIN 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_CONST.ALO new file mode 100644 index 0000000..c6d55bf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_CONST.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 40000 2003 5230108 OK +CON 40001 2003 8224 Adair +CON 40003 2003 11464 Alfalfa +CON 40005 2003 3444 Atoka +CON 40007 2003 2583 Beaver +CON 40009 2003 22525 Beckham +CON 40011 2003 10759 Blaine +CON 40013 2003 125522 Bryan +CON 40015 2003 9795 Caddo +CON 40017 2003 117434 Canadian +CON 40019 2003 101965 Carter +CON 40021 2003 43782 Cherokee +CON 40023 2003 11081 Choctaw +CON 40025 2003 404 Cimarron +CON 40027 2003 428435 Cleveland +CON 40029 2003 1752 Coal +CON 40031 2003 74027 Comanche +CON 40033 2003 7188 Cotton +CON 40035 2003 8518 Craig +CON 40037 2003 63135 Creek +CON 40039 2003 30195 Custer +CON 40041 2003 55838 Delaware +CON 40043 2003 1990 Dewey +CON 40045 2003 1316 Ellis +CON 40047 2003 53322 Garfield +CON 40049 2003 12856 Garvin +CON 40051 2003 41486 Grady +CON 40053 2003 1806 Grant +CON 40055 2003 2138 Greer +CON 40057 2003 2142 Harmon +CON 40059 2003 2460 Harper +CON 40061 2003 4577 Haskell +CON 40063 2003 9781 Hughes +CON 40065 2003 39318 Jackson +CON 40067 2003 6396 Jefferson +CON 40069 2003 3863 Johnston +CON 40071 2003 43844 Kay +CON 40073 2003 13858 Kingfisher +CON 40075 2003 2329 Kiowa +CON 40077 2003 9107 Latimer +CON 40079 2003 27240 Le Flore +CON 40081 2003 25093 Lincoln +CON 40083 2003 35623 Logan +CON 40085 2003 16111 Love +CON 40087 2003 37362 McClain +CON 40089 2003 126915 McCurtain +CON 40091 2003 15369 McIntosh +CON 40093 2003 3711 Major +CON 40095 2003 7813 Marshall +CON 40097 2003 32511 Mayes +CON 40099 2003 5704 Murray +CON 40101 2003 68318 Muskogee +CON 40103 2003 14321 Noble +CON 40105 2003 4024 Nowata +CON 40107 2003 6458 Okfuskee +CON 40109 2003 1589709 Oklahoma +CON 40111 2003 30753 Okmulgee +CON 40113 2003 32545 Osage +CON 40115 2003 21393 Ottawa +CON 40117 2003 4958 Pawnee +CON 40119 2003 134161 Payne +CON 40121 2003 30188 Pittsburg +CON 40123 2003 35192 Pontotoc +CON 40125 2003 53789 Pottawatomie +CON 40127 2003 5961 Pushmataha +CON 40129 2003 2060 Roger Mills +CON 40131 2003 186086 Rogers +CON 40133 2003 27384 Seminole +CON 40135 2003 19989 Sequoyah +CON 40137 2003 53657 Stephens +CON 40139 2003 10886 Texas +CON 40141 2003 2000 Tillman +CON 40143 2003 975224 Tulsa +CON 40145 2003 79924 Wagoner +CON 40147 2003 46032 Washington +CON 40149 2003 7844 Washita +CON 40151 2003 3531 Woods +CON 40153 2003 59610 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_FARMS.ALO new file mode 100644 index 0000000..e7a309b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_FARMS.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 40000 2002 7705860 OK +FRM 40001 2002 40628 Adair +FRM 40003 2002 205133 Alfalfa +FRM 40005 2002 53754 Atoka +FRM 40007 2002 106399 Beaver +FRM 40009 2002 98264 Beckham +FRM 40011 2002 198074 Blaine +FRM 40013 2002 87666 Bryan +FRM 40015 2002 235514 Caddo +FRM 40017 2002 201010 Canadian +FRM 40019 2002 39976 Carter +FRM 40021 2002 40417 Cherokee +FRM 40023 2002 55265 Choctaw +FRM 40025 2002 149098 Cimarron +FRM 40027 2002 36064 Cleveland +FRM 40029 2002 33757 Coal +FRM 40031 2002 92836 Comanche +FRM 40033 2002 96039 Cotton +FRM 40035 2002 96909 Craig +FRM 40037 2002 55046 Creek +FRM 40039 2002 174681 Custer +FRM 40041 2002 64648 Delaware +FRM 40043 2002 106180 Dewey +FRM 40045 2002 57570 Ellis +FRM 40047 2002 348141 Garfield +FRM 40049 2002 80067 Garvin +FRM 40051 2002 153207 Grady +FRM 40053 2002 354414 Grant +FRM 40055 2002 87589 Greer +FRM 40057 2002 65430 Harmon +FRM 40059 2002 43543 Harper +FRM 40061 2002 48969 Haskell +FRM 40063 2002 47857 Hughes +FRM 40065 2002 221013 Jackson +FRM 40067 2002 34632 Jefferson +FRM 40069 2002 33603 Johnston +FRM 40071 2002 262564 Kay +FRM 40073 2002 243241 Kingfisher +FRM 40075 2002 241809 Kiowa +FRM 40077 2002 25426 Latimer +FRM 40079 2002 95151 Le Flore +FRM 40081 2002 76462 Lincoln +FRM 40083 2002 89510 Logan +FRM 40085 2002 33291 Love +FRM 40087 2002 63538 McClain +FRM 40089 2002 62937 McCurtain +FRM 40091 2002 50355 McIntosh +FRM 40093 2002 133840 Major +FRM 40095 2002 18489 Marshall +FRM 40097 2002 92069 Mayes +FRM 40099 2002 23188 Murray +FRM 40101 2002 104455 Muskogee +FRM 40103 2002 152878 Noble +FRM 40105 2002 51219 Nowata +FRM 40107 2002 34357 Okfuskee +FRM 40109 2002 45272 Oklahoma +FRM 40111 2002 59609 Okmulgee +FRM 40113 2002 73013 Osage +FRM 40115 2002 91643 Ottawa +FRM 40117 2002 38758 Pawnee +FRM 40119 2002 58812 Payne +FRM 40121 2002 63969 Pittsburg +FRM 40123 2002 50685 Pontotoc +FRM 40125 2002 66631 Pottawatomie +FRM 40127 2002 31441 Pushmataha +FRM 40129 2002 49240 Roger Mills +FRM 40131 2002 70606 Rogers +FRM 40133 2002 41358 Seminole +FRM 40135 2002 55780 Sequoyah +FRM 40137 2002 50793 Stephens +FRM 40139 2002 276672 Texas +FRM 40141 2002 222887 Tillman +FRM 40143 2002 44215 Tulsa +FRM 40145 2002 93644 Wagoner +FRM 40147 2002 49081 Washington +FRM 40149 2002 244342 Washita +FRM 40151 2002 156926 Woods +FRM 40153 2002 72311 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_GOLF.ALO new file mode 100644 index 0000000..9ad1a5a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_GOLF.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 40000 2002 119 OK +GC 40001 2002 0 Adair +GC 40003 2002 0 Alfalfa +GC 40005 2002 1 Atoka +GC 40007 2002 0 Beaver +GC 40009 2002 2 Beckham +GC 40011 2002 1 Blaine +GC 40013 2002 2 Bryan +GC 40015 2002 0 Caddo +GC 40017 2002 2 Canadian +GC 40019 2002 4 Carter +GC 40021 2002 1 Cherokee +GC 40023 2002 1 Choctaw +GC 40025 2002 0 Cimarron +GC 40027 2002 5 Cleveland +GC 40029 2002 0 Coal +GC 40031 2002 3 Comanche +GC 40033 2002 0 Cotton +GC 40035 2002 0 Craig +GC 40037 2002 3 Creek +GC 40039 2002 0 Custer +GC 40041 2002 2 Delaware +GC 40043 2002 0 Dewey +GC 40045 2002 1 Ellis +GC 40047 2002 4 Garfield +GC 40049 2002 0 Garvin +GC 40051 2002 1 Grady +GC 40053 2002 1 Grant +GC 40055 2002 0 Greer +GC 40057 2002 0 Harmon +GC 40059 2002 2 Harper +GC 40061 2002 1 Haskell +GC 40063 2002 0 Hughes +GC 40065 2002 0 Jackson +GC 40067 2002 0 Jefferson +GC 40069 2002 1 Johnston +GC 40071 2002 3 Kay +GC 40073 2002 1 Kingfisher +GC 40075 2002 1 Kiowa +GC 40077 2002 1 Latimer +GC 40079 2002 1 Le Flore +GC 40081 2002 0 Lincoln +GC 40083 2002 3 Logan +GC 40085 2002 0 Love +GC 40087 2002 0 McClain +GC 40089 2002 1 McCurtain +GC 40091 2002 0 McIntosh +GC 40093 2002 1 Major +GC 40095 2002 0 Marshall +GC 40097 2002 1 Mayes +GC 40099 2002 0 Murray +GC 40101 2002 5 Muskogee +GC 40103 2002 1 Noble +GC 40105 2002 1 Nowata +GC 40107 2002 1 Okfuskee +GC 40109 2002 15 Oklahoma +GC 40111 2002 2 Okmulgee +GC 40113 2002 1 Osage +GC 40115 2002 1 Ottawa +GC 40117 2002 2 Pawnee +GC 40119 2002 4 Payne +GC 40121 2002 1 Pittsburg +GC 40123 2002 1 Pontotoc +GC 40125 2002 1 Pottawatomie +GC 40127 2002 0 Pushmataha +GC 40129 2002 0 Roger Mills +GC 40131 2002 1 Rogers +GC 40133 2002 1 Seminole +GC 40135 2002 3 Sequoyah +GC 40137 2002 1 Stephens +GC 40139 2002 0 Texas +GC 40141 2002 1 Tillman +GC 40143 2002 17 Tulsa +GC 40145 2002 4 Wagoner +GC 40147 2002 2 Washington +GC 40149 2002 0 Washita +GC 40151 2002 1 Woods +GC 40153 2002 1 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_HOLSL.ALO new file mode 100644 index 0000000..99766bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_HOLSL.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 40000 2002 4835 OK +COM 40001 2002 10 Adair +COM 40003 2002 16 Alfalfa +COM 40005 2002 13 Atoka +COM 40007 2002 8 Beaver +COM 40009 2002 32 Beckham +COM 40011 2002 16 Blaine +COM 40013 2002 34 Bryan +COM 40015 2002 23 Caddo +COM 40017 2002 87 Canadian +COM 40019 2002 73 Carter +COM 40021 2002 17 Cherokee +COM 40023 2002 10 Choctaw +COM 40025 2002 6 Cimarron +COM 40027 2002 166 Cleveland +COM 40029 2002 4 Coal +COM 40031 2002 76 Comanche +COM 40033 2002 2 Cotton +COM 40035 2002 25 Craig +COM 40037 2002 61 Creek +COM 40039 2002 44 Custer +COM 40041 2002 20 Delaware +COM 40043 2002 6 Dewey +COM 40045 2002 6 Ellis +COM 40047 2002 104 Garfield +COM 40049 2002 30 Garvin +COM 40051 2002 55 Grady +COM 40053 2002 18 Grant +COM 40055 2002 2 Greer +COM 40057 2002 3 Harmon +COM 40059 2002 6 Harper +COM 40061 2002 6 Haskell +COM 40063 2002 9 Hughes +COM 40065 2002 26 Jackson +COM 40067 2002 5 Jefferson +COM 40069 2002 10 Johnston +COM 40071 2002 63 Kay +COM 40073 2002 26 Kingfisher +COM 40075 2002 14 Kiowa +COM 40077 2002 9 Latimer +COM 40079 2002 21 Le Flore +COM 40081 2002 24 Lincoln +COM 40083 2002 25 Logan +COM 40085 2002 6 Love +COM 40087 2002 29 McClain +COM 40089 2002 35 McCurtain +COM 40091 2002 7 McIntosh +COM 40093 2002 12 Major +COM 40095 2002 11 Marshall +COM 40097 2002 44 Mayes +COM 40099 2002 12 Murray +COM 40101 2002 80 Muskogee +COM 40103 2002 8 Noble +COM 40105 2002 6 Nowata +COM 40107 2002 3 Okfuskee +COM 40109 2002 1412 Oklahoma +COM 40111 2002 25 Okmulgee +COM 40113 2002 17 Osage +COM 40115 2002 28 Ottawa +COM 40117 2002 12 Pawnee +COM 40119 2002 59 Payne +COM 40121 2002 42 Pittsburg +COM 40123 2002 49 Pontotoc +COM 40125 2002 46 Pottawatomie +COM 40127 2002 7 Pushmataha +COM 40129 2002 2 Roger Mills +COM 40131 2002 65 Rogers +COM 40133 2002 21 Seminole +COM 40135 2002 13 Sequoyah +COM 40137 2002 44 Stephens +COM 40139 2002 32 Texas +COM 40141 2002 10 Tillman +COM 40143 2002 1332 Tulsa +COM 40145 2002 38 Wagoner +COM 40147 2002 34 Washington +COM 40149 2002 11 Washita +COM 40151 2002 19 Woods +COM 40153 2002 53 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_HOUSE.ALO new file mode 100644 index 0000000..6114f71 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_HOUSE.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 40000 2002 1541431 OK +HOU 40001 2002 8486 Adair +HOU 40003 2002 2804 Alfalfa +HOU 40005 2002 5742 Atoka +HOU 40007 2002 2726 Beaver +HOU 40009 2002 8917 Beckham +HOU 40011 2002 5203 Blaine +HOU 40013 2002 16941 Bryan +HOU 40015 2002 13149 Caddo +HOU 40017 2002 35486 Canadian +HOU 40019 2002 20866 Carter +HOU 40021 2002 19978 Cherokee +HOU 40023 2002 7613 Choctaw +HOU 40025 2002 1580 Cimarron +HOU 40027 2002 88135 Cleveland +HOU 40029 2002 2749 Coal +HOU 40031 2002 45702 Comanche +HOU 40033 2002 3089 Cotton +HOU 40035 2002 6493 Craig +HOU 40037 2002 28491 Creek +HOU 40039 2002 11741 Custer +HOU 40041 2002 22826 Delaware +HOU 40043 2002 2428 Dewey +HOU 40045 2002 2137 Ellis +HOU 40047 2002 26094 Garfield +HOU 40049 2002 12704 Garvin +HOU 40051 2002 19695 Grady +HOU 40053 2002 2605 Grant +HOU 40055 2002 2779 Greer +HOU 40057 2002 1648 Harmon +HOU 40059 2002 1855 Harper +HOU 40061 2002 5652 Haskell +HOU 40063 2002 6259 Hughes +HOU 40065 2002 12382 Jackson +HOU 40067 2002 3380 Jefferson +HOU 40069 2002 4857 Johnston +HOU 40071 2002 21784 Kay +HOU 40073 2002 5959 Kingfisher +HOU 40075 2002 5275 Kiowa +HOU 40077 2002 4762 Latimer +HOU 40079 2002 20458 Le Flore +HOU 40081 2002 13885 Lincoln +HOU 40083 2002 14041 Logan +HOU 40085 2002 4114 Love +HOU 40087 2002 11561 McClain +HOU 40089 2002 15635 McCurtain +HOU 40091 2002 12901 McIntosh +HOU 40093 2002 3549 Major +HOU 40095 2002 8656 Marshall +HOU 40097 2002 17835 Mayes +HOU 40099 2002 6530 Murray +HOU 40101 2002 29964 Muskogee +HOU 40103 2002 5111 Noble +HOU 40105 2002 4745 Nowata +HOU 40107 2002 5153 Okfuskee +HOU 40109 2002 301077 Oklahoma +HOU 40111 2002 17394 Okmulgee +HOU 40113 2002 19070 Osage +HOU 40115 2002 14933 Ottawa +HOU 40117 2002 7522 Pawnee +HOU 40119 2002 29834 Payne +HOU 40121 2002 21773 Pittsburg +HOU 40123 2002 15691 Pontotoc +HOU 40125 2002 27624 Pottawatomie +HOU 40127 2002 5853 Pushmataha +HOU 40129 2002 1751 Roger Mills +HOU 40131 2002 28517 Rogers +HOU 40133 2002 11230 Seminole +HOU 40135 2002 17396 Sequoyah +HOU 40137 2002 19957 Stephens +HOU 40139 2002 8239 Texas +HOU 40141 2002 4312 Tillman +HOU 40143 2002 248882 Tulsa +HOU 40145 2002 24666 Wagoner +HOU 40147 2002 22328 Washington +HOU 40149 2002 5454 Washita +HOU 40151 2002 4465 Woods +HOU 40153 2002 8353 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_LOGGN.ALO new file mode 100644 index 0000000..9e28f50 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_LOGGN.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 40000 2002 182262278 OK +LOG 40001 2002 1855656 Adair +LOG 40003 2002 0 Alfalfa +LOG 40005 2002 2591398 Atoka +LOG 40007 2002 0 Beaver +LOG 40009 2002 0 Beckham +LOG 40011 2002 0 Blaine +LOG 40013 2002 0 Bryan +LOG 40015 2002 0 Caddo +LOG 40017 2002 0 Canadian +LOG 40019 2002 0 Carter +LOG 40021 2002 897728 Cherokee +LOG 40023 2002 14081872 Choctaw +LOG 40025 2002 0 Cimarron +LOG 40027 2002 0 Cleveland +LOG 40029 2002 0 Coal +LOG 40031 2002 0 Comanche +LOG 40033 2002 0 Cotton +LOG 40035 2002 0 Craig +LOG 40037 2002 0 Creek +LOG 40039 2002 0 Custer +LOG 40041 2002 837980 Delaware +LOG 40043 2002 0 Dewey +LOG 40045 2002 0 Ellis +LOG 40047 2002 0 Garfield +LOG 40049 2002 0 Garvin +LOG 40051 2002 0 Grady +LOG 40053 2002 0 Grant +LOG 40055 2002 0 Greer +LOG 40057 2002 0 Harmon +LOG 40059 2002 0 Harper +LOG 40061 2002 5000943 Haskell +LOG 40063 2002 0 Hughes +LOG 40065 2002 0 Jackson +LOG 40067 2002 0 Jefferson +LOG 40069 2002 0 Johnston +LOG 40071 2002 0 Kay +LOG 40073 2002 0 Kingfisher +LOG 40075 2002 0 Kiowa +LOG 40077 2002 4639726 Latimer +LOG 40079 2002 12428948 Le Flore +LOG 40081 2002 0 Lincoln +LOG 40083 2002 0 Logan +LOG 40085 2002 0 Love +LOG 40087 2002 0 McClain +LOG 40089 2002 74071566 McCurtain +LOG 40091 2002 255933 McIntosh +LOG 40093 2002 0 Major +LOG 40095 2002 0 Marshall +LOG 40097 2002 730405 Mayes +LOG 40099 2002 0 Murray +LOG 40101 2002 613384 Muskogee +LOG 40103 2002 0 Noble +LOG 40105 2002 0 Nowata +LOG 40107 2002 0 Okfuskee +LOG 40109 2002 0 Oklahoma +LOG 40111 2002 0 Okmulgee +LOG 40113 2002 0 Osage +LOG 40115 2002 1026290 Ottawa +LOG 40117 2002 0 Pawnee +LOG 40119 2002 0 Payne +LOG 40121 2002 515423 Pittsburg +LOG 40123 2002 0 Pontotoc +LOG 40125 2002 0 Pottawatomie +LOG 40127 2002 58825849 Pushmataha +LOG 40129 2002 0 Roger Mills +LOG 40131 2002 0 Rogers +LOG 40133 2002 0 Seminole +LOG 40135 2002 3889177 Sequoyah +LOG 40137 2002 0 Stephens +LOG 40139 2002 0 Texas +LOG 40141 2002 0 Tillman +LOG 40143 2002 0 Tulsa +LOG 40145 2002 0 Wagoner +LOG 40147 2002 0 Washington +LOG 40149 2002 0 Washita +LOG 40151 2002 0 Woods +LOG 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_LSCAP.ALO new file mode 100644 index 0000000..eaedd1d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_LSCAP.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 40000 2002 5319 OK +LSC 40001 2002 0 Adair +LSC 40003 2002 6 Alfalfa +LSC 40005 2002 0 Atoka +LSC 40007 2002 6 Beaver +LSC 40009 2002 61 Beckham +LSC 40011 2002 6 Blaine +LSC 40013 2002 5 Bryan +LSC 40015 2002 5 Caddo +LSC 40017 2002 71 Canadian +LSC 40019 2002 21 Carter +LSC 40021 2002 14 Cherokee +LSC 40023 2002 0 Choctaw +LSC 40025 2002 0 Cimarron +LSC 40027 2002 622 Cleveland +LSC 40029 2002 0 Coal +LSC 40031 2002 36 Comanche +LSC 40033 2002 0 Cotton +LSC 40035 2002 5 Craig +LSC 40037 2002 22 Creek +LSC 40039 2002 6 Custer +LSC 40041 2002 5 Delaware +LSC 40043 2002 5 Dewey +LSC 40045 2002 5 Ellis +LSC 40047 2002 25 Garfield +LSC 40049 2002 0 Garvin +LSC 40051 2002 5 Grady +LSC 40053 2002 0 Grant +LSC 40055 2002 0 Greer +LSC 40057 2002 5 Harmon +LSC 40059 2002 0 Harper +LSC 40061 2002 0 Haskell +LSC 40063 2002 5 Hughes +LSC 40065 2002 5 Jackson +LSC 40067 2002 0 Jefferson +LSC 40069 2002 0 Johnston +LSC 40071 2002 33 Kay +LSC 40073 2002 5 Kingfisher +LSC 40075 2002 5 Kiowa +LSC 40077 2002 0 Latimer +LSC 40079 2002 5 Le Flore +LSC 40081 2002 0 Lincoln +LSC 40083 2002 2 Logan +LSC 40085 2002 0 Love +LSC 40087 2002 5 McClain +LSC 40089 2002 5 McCurtain +LSC 40091 2002 5 McIntosh +LSC 40093 2002 1 Major +LSC 40095 2002 0 Marshall +LSC 40097 2002 5 Mayes +LSC 40099 2002 5 Murray +LSC 40101 2002 9 Muskogee +LSC 40103 2002 5 Noble +LSC 40105 2002 0 Nowata +LSC 40107 2002 5 Okfuskee +LSC 40109 2002 1418 Oklahoma +LSC 40111 2002 5 Okmulgee +LSC 40113 2002 6 Osage +LSC 40115 2002 5 Ottawa +LSC 40117 2002 0 Pawnee +LSC 40119 2002 30 Payne +LSC 40121 2002 11 Pittsburg +LSC 40123 2002 5 Pontotoc +LSC 40125 2002 11 Pottawatomie +LSC 40127 2002 0 Pushmataha +LSC 40129 2002 0 Roger Mills +LSC 40131 2002 34 Rogers +LSC 40133 2002 0 Seminole +LSC 40135 2002 0 Sequoyah +LSC 40137 2002 5 Stephens +LSC 40139 2002 3 Texas +LSC 40141 2002 0 Tillman +LSC 40143 2002 2666 Tulsa +LSC 40145 2002 28 Wagoner +LSC 40147 2002 42 Washington +LSC 40149 2002 5 Washita +LSC 40151 2002 0 Woods +LSC 40153 2002 4 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_MNFG.ALO new file mode 100644 index 0000000..70f5663 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_MNFG.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 40000 2002 279099 OK +MFG 40001 2002 2534 Adair +MFG 40003 2002 146 Alfalfa +MFG 40005 2002 691 Atoka +MFG 40007 2002 138 Beaver +MFG 40009 2002 381 Beckham +MFG 40011 2002 725 Blaine +MFG 40013 2002 2755 Bryan +MFG 40015 2002 154 Caddo +MFG 40017 2002 5878 Canadian +MFG 40019 2002 5473 Carter +MFG 40021 2002 346 Cherokee +MFG 40023 2002 250 Choctaw +MFG 40025 2002 7 Cimarron +MFG 40027 2002 6502 Cleveland +MFG 40029 2002 389 Coal +MFG 40031 2002 6039 Comanche +MFG 40033 2002 25 Cotton +MFG 40035 2002 1538 Craig +MFG 40037 2002 8187 Creek +MFG 40039 2002 1702 Custer +MFG 40041 2002 853 Delaware +MFG 40043 2002 34 Dewey +MFG 40045 2002 87 Ellis +MFG 40047 2002 2453 Garfield +MFG 40049 2002 1518 Garvin +MFG 40051 2002 5340 Grady +MFG 40053 2002 48 Grant +MFG 40055 2002 116 Greer +MFG 40057 2002 23 Harmon +MFG 40059 2002 17 Harper +MFG 40061 2002 125 Haskell +MFG 40063 2002 120 Hughes +MFG 40065 2002 1299 Jackson +MFG 40067 2002 133 Jefferson +MFG 40069 2002 1043 Johnston +MFG 40071 2002 6611 Kay +MFG 40073 2002 849 Kingfisher +MFG 40075 2002 663 Kiowa +MFG 40077 2002 361 Latimer +MFG 40079 2002 1046 Le Flore +MFG 40081 2002 544 Lincoln +MFG 40083 2002 582 Logan +MFG 40085 2002 506 Love +MFG 40087 2002 609 McClain +MFG 40089 2002 4393 McCurtain +MFG 40091 2002 553 McIntosh +MFG 40093 2002 318 Major +MFG 40095 2002 2185 Marshall +MFG 40097 2002 5092 Mayes +MFG 40099 2002 291 Murray +MFG 40101 2002 9349 Muskogee +MFG 40103 2002 3392 Noble +MFG 40105 2002 457 Nowata +MFG 40107 2002 466 Okfuskee +MFG 40109 2002 62334 Oklahoma +MFG 40111 2002 2518 Okmulgee +MFG 40113 2002 371 Osage +MFG 40115 2002 2529 Ottawa +MFG 40117 2002 343 Pawnee +MFG 40119 2002 4554 Payne +MFG 40121 2002 1255 Pittsburg +MFG 40123 2002 3207 Pontotoc +MFG 40125 2002 5858 Pottawatomie +MFG 40127 2002 320 Pushmataha +MFG 40129 2002 24 Roger Mills +MFG 40131 2002 10107 Rogers +MFG 40133 2002 1901 Seminole +MFG 40135 2002 868 Sequoyah +MFG 40137 2002 3688 Stephens +MFG 40139 2002 1884 Texas +MFG 40141 2002 871 Tillman +MFG 40143 2002 73357 Tulsa +MFG 40145 2002 2671 Wagoner +MFG 40147 2002 3555 Washington +MFG 40149 2002 98 Washita +MFG 40151 2002 335 Woods +MFG 40153 2002 1115 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_OIL.ALO new file mode 100644 index 0000000..a010dbd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_OIL.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 40000 2002 13921 OK +OIL 40001 2002 0 Adair +OIL 40003 2002 16 Alfalfa +OIL 40005 2002 0 Atoka +OIL 40007 2002 20 Beaver +OIL 40009 2002 32 Beckham +OIL 40011 2002 133 Blaine +OIL 40013 2002 0 Bryan +OIL 40015 2002 92 Caddo +OIL 40017 2002 61 Canadian +OIL 40019 2002 419 Carter +OIL 40021 2002 57 Cherokee +OIL 40023 2002 0 Choctaw +OIL 40025 2002 16 Cimarron +OIL 40027 2002 335 Cleveland +OIL 40029 2002 0 Coal +OIL 40031 2002 57 Comanche +OIL 40033 2002 16 Cotton +OIL 40035 2002 0 Craig +OIL 40037 2002 120 Creek +OIL 40039 2002 92 Custer +OIL 40041 2002 0 Delaware +OIL 40043 2002 57 Dewey +OIL 40045 2002 0 Ellis +OIL 40047 2002 262 Garfield +OIL 40049 2002 204 Garvin +OIL 40051 2002 140 Grady +OIL 40053 2002 337 Grant +OIL 40055 2002 0 Greer +OIL 40057 2002 0 Harmon +OIL 40059 2002 41 Harper +OIL 40061 2002 133 Haskell +OIL 40063 2002 57 Hughes +OIL 40065 2002 16 Jackson +OIL 40067 2002 16 Jefferson +OIL 40069 2002 0 Johnston +OIL 40071 2002 57 Kay +OIL 40073 2002 257 Kingfisher +OIL 40075 2002 16 Kiowa +OIL 40077 2002 57 Latimer +OIL 40079 2002 16 Le Flore +OIL 40081 2002 133 Lincoln +OIL 40083 2002 92 Logan +OIL 40085 2002 16 Love +OIL 40087 2002 16 McClain +OIL 40089 2002 0 McCurtain +OIL 40091 2002 16 McIntosh +OIL 40093 2002 328 Major +OIL 40095 2002 21 Marshall +OIL 40097 2002 41 Mayes +OIL 40099 2002 57 Murray +OIL 40101 2002 16 Muskogee +OIL 40103 2002 47 Noble +OIL 40105 2002 16 Nowata +OIL 40107 2002 16 Okfuskee +OIL 40109 2002 4172 Oklahoma +OIL 40111 2002 134 Okmulgee +OIL 40113 2002 134 Osage +OIL 40115 2002 16 Ottawa +OIL 40117 2002 338 Pawnee +OIL 40119 2002 252 Payne +OIL 40121 2002 338 Pittsburg +OIL 40123 2002 108 Pontotoc +OIL 40125 2002 338 Pottawatomie +OIL 40127 2002 0 Pushmataha +OIL 40129 2002 16 Roger Mills +OIL 40131 2002 57 Rogers +OIL 40133 2002 472 Seminole +OIL 40135 2002 0 Sequoyah +OIL 40137 2002 549 Stephens +OIL 40139 2002 93 Texas +OIL 40141 2002 16 Tillman +OIL 40143 2002 2547 Tulsa +OIL 40145 2002 41 Wagoner +OIL 40147 2002 134 Washington +OIL 40149 2002 16 Washita +OIL 40151 2002 93 Woods +OIL 40153 2002 110 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_POP.ALO new file mode 100644 index 0000000..d55ef8e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_POP.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 40000 2002 3488201 OK +POP 40001 2002 21354 Adair +POP 40003 2002 5955 Alfalfa +POP 40005 2002 14004 Atoka +POP 40007 2002 5562 Beaver +POP 40009 2002 19965 Beckham +POP 40011 2002 11681 Blaine +POP 40013 2002 36961 Bryan +POP 40015 2002 30006 Caddo +POP 40017 2002 91093 Canadian +POP 40019 2002 46106 Carter +POP 40021 2002 43413 Cherokee +POP 40023 2002 15379 Choctaw +POP 40025 2002 3019 Cimarron +POP 40027 2002 215129 Cleveland +POP 40029 2002 5984 Coal +POP 40031 2002 111761 Comanche +POP 40033 2002 6466 Cotton +POP 40035 2002 14764 Craig +POP 40037 2002 68693 Creek +POP 40039 2002 25097 Custer +POP 40041 2002 37993 Delaware +POP 40043 2002 4598 Dewey +POP 40045 2002 4008 Ellis +POP 40047 2002 57218 Garfield +POP 40049 2002 27251 Garvin +POP 40051 2002 46833 Grady +POP 40053 2002 5033 Grant +POP 40055 2002 5944 Greer +POP 40057 2002 3118 Harmon +POP 40059 2002 3455 Harper +POP 40061 2002 11786 Haskell +POP 40063 2002 14032 Hughes +POP 40065 2002 27388 Jackson +POP 40067 2002 6535 Jefferson +POP 40069 2002 10439 Johnston +POP 40071 2002 47657 Kay +POP 40073 2002 13932 Kingfisher +POP 40075 2002 9982 Kiowa +POP 40077 2002 10562 Latimer +POP 40079 2002 48608 Le Flore +POP 40081 2002 32270 Lincoln +POP 40083 2002 34882 Logan +POP 40085 2002 8879 Love +POP 40087 2002 28063 McClain +POP 40089 2002 34150 McCurtain +POP 40091 2002 19723 McIntosh +POP 40093 2002 7540 Major +POP 40095 2002 13598 Marshall +POP 40097 2002 38764 Mayes +POP 40099 2002 12645 Murray +POP 40101 2002 69941 Muskogee +POP 40103 2002 11304 Noble +POP 40105 2002 10657 Nowata +POP 40107 2002 11644 Okfuskee +POP 40109 2002 671558 Oklahoma +POP 40111 2002 39728 Okmulgee +POP 40113 2002 45198 Osage +POP 40115 2002 32888 Ottawa +POP 40117 2002 16841 Pawnee +POP 40119 2002 69045 Payne +POP 40121 2002 44146 Pittsburg +POP 40123 2002 34864 Pontotoc +POP 40125 2002 66788 Pottawatomie +POP 40127 2002 11721 Pushmataha +POP 40129 2002 3216 Roger Mills +POP 40131 2002 75255 Rogers +POP 40133 2002 24580 Seminole +POP 40135 2002 39665 Sequoyah +POP 40137 2002 42619 Stephens +POP 40139 2002 20045 Texas +POP 40141 2002 8924 Tillman +POP 40143 2002 569934 Tulsa +POP 40145 2002 60533 Wagoner +POP 40147 2002 49189 Washington +POP 40149 2002 11366 Washita +POP 40151 2002 8776 Woods +POP 40153 2002 18498 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_RAIL.ALO new file mode 100644 index 0000000..f8911c5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_RAIL.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 40000 2002 19168.110 OK +RR 40001 2002 222.470 Adair +RR 40003 2002 405.160 Alfalfa +RR 40005 2002 258.410 Atoka +RR 40007 2002 0.000 Beaver +RR 40009 2002 0.000 Beckham +RR 40011 2002 0.000 Blaine +RR 40013 2002 447.780 Bryan +RR 40015 2002 27.250 Caddo +RR 40017 2002 217.070 Canadian +RR 40019 2002 252.120 Carter +RR 40021 2002 0.000 Cherokee +RR 40023 2002 0.000 Choctaw +RR 40025 2002 144.460 Cimarron +RR 40027 2002 316.910 Cleveland +RR 40029 2002 0.000 Coal +RR 40031 2002 31.410 Comanche +RR 40033 2002 0.000 Cotton +RR 40035 2002 903.670 Craig +RR 40037 2002 301.980 Creek +RR 40039 2002 0.000 Custer +RR 40041 2002 0.000 Delaware +RR 40043 2002 0.000 Dewey +RR 40045 2002 1489.810 Ellis +RR 40047 2002 404.670 Garfield +RR 40049 2002 310.880 Garvin +RR 40051 2002 215.430 Grady +RR 40053 2002 82.470 Grant +RR 40055 2002 0.000 Greer +RR 40057 2002 0.000 Harmon +RR 40059 2002 0.000 Harper +RR 40061 2002 0.000 Haskell +RR 40063 2002 126.120 Hughes +RR 40065 2002 20.090 Jackson +RR 40067 2002 170.360 Jefferson +RR 40069 2002 78.980 Johnston +RR 40071 2002 324.880 Kay +RR 40073 2002 121.190 Kingfisher +RR 40075 2002 19.260 Kiowa +RR 40077 2002 0.000 Latimer +RR 40079 2002 286.040 Le Flore +RR 40081 2002 12.780 Lincoln +RR 40083 2002 444.770 Logan +RR 40085 2002 141.670 Love +RR 40087 2002 316.910 McClain +RR 40089 2002 0.000 McCurtain +RR 40091 2002 407.660 McIntosh +RR 40093 2002 515.750 Major +RR 40095 2002 70.120 Marshall +RR 40097 2002 532.000 Mayes +RR 40099 2002 234.010 Murray +RR 40101 2002 821.600 Muskogee +RR 40103 2002 627.900 Noble +RR 40105 2002 167.990 Nowata +RR 40107 2002 70.800 Okfuskee +RR 40109 2002 673.270 Oklahoma +RR 40111 2002 162.740 Okmulgee +RR 40113 2002 0.000 Osage +RR 40115 2002 215.020 Ottawa +RR 40117 2002 299.510 Pawnee +RR 40119 2002 0.000 Payne +RR 40121 2002 746.490 Pittsburg +RR 40123 2002 131.270 Pontotoc +RR 40125 2002 33.720 Pottawatomie +RR 40127 2002 0.000 Pushmataha +RR 40129 2002 0.000 Roger Mills +RR 40131 2002 1019.170 Rogers +RR 40133 2002 64.650 Seminole +RR 40135 2002 743.690 Sequoyah +RR 40137 2002 126.160 Stephens +RR 40139 2002 320.070 Texas +RR 40141 2002 8.110 Tillman +RR 40143 2002 373.140 Tulsa +RR 40145 2002 808.310 Wagoner +RR 40147 2002 0.000 Washington +RR 40149 2002 0.000 Washita +RR 40151 2002 980.950 Woods +RR 40153 2002 919.010 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_RVPRK.ALO new file mode 100644 index 0000000..b34e9db --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_RVPRK.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 40000 2002 54 OK +RVP 40001 2002 0 Adair +RVP 40003 2002 0 Alfalfa +RVP 40005 2002 0 Atoka +RVP 40007 2002 0 Beaver +RVP 40009 2002 2 Beckham +RVP 40011 2002 0 Blaine +RVP 40013 2002 1 Bryan +RVP 40015 2002 0 Caddo +RVP 40017 2002 0 Canadian +RVP 40019 2002 0 Carter +RVP 40021 2002 3 Cherokee +RVP 40023 2002 0 Choctaw +RVP 40025 2002 1 Cimarron +RVP 40027 2002 1 Cleveland +RVP 40029 2002 0 Coal +RVP 40031 2002 2 Comanche +RVP 40033 2002 0 Cotton +RVP 40035 2002 1 Craig +RVP 40037 2002 2 Creek +RVP 40039 2002 0 Custer +RVP 40041 2002 6 Delaware +RVP 40043 2002 0 Dewey +RVP 40045 2002 0 Ellis +RVP 40047 2002 0 Garfield +RVP 40049 2002 1 Garvin +RVP 40051 2002 1 Grady +RVP 40053 2002 0 Grant +RVP 40055 2002 0 Greer +RVP 40057 2002 0 Harmon +RVP 40059 2002 0 Harper +RVP 40061 2002 0 Haskell +RVP 40063 2002 0 Hughes +RVP 40065 2002 0 Jackson +RVP 40067 2002 0 Jefferson +RVP 40069 2002 0 Johnston +RVP 40071 2002 0 Kay +RVP 40073 2002 0 Kingfisher +RVP 40075 2002 0 Kiowa +RVP 40077 2002 0 Latimer +RVP 40079 2002 0 Le Flore +RVP 40081 2002 0 Lincoln +RVP 40083 2002 1 Logan +RVP 40085 2002 1 Love +RVP 40087 2002 0 McClain +RVP 40089 2002 1 McCurtain +RVP 40091 2002 4 McIntosh +RVP 40093 2002 0 Major +RVP 40095 2002 2 Marshall +RVP 40097 2002 0 Mayes +RVP 40099 2002 2 Murray +RVP 40101 2002 2 Muskogee +RVP 40103 2002 1 Noble +RVP 40105 2002 0 Nowata +RVP 40107 2002 0 Okfuskee +RVP 40109 2002 6 Oklahoma +RVP 40111 2002 1 Okmulgee +RVP 40113 2002 1 Osage +RVP 40115 2002 2 Ottawa +RVP 40117 2002 0 Pawnee +RVP 40119 2002 0 Payne +RVP 40121 2002 0 Pittsburg +RVP 40123 2002 0 Pontotoc +RVP 40125 2002 0 Pottawatomie +RVP 40127 2002 0 Pushmataha +RVP 40129 2002 0 Roger Mills +RVP 40131 2002 1 Rogers +RVP 40133 2002 0 Seminole +RVP 40135 2002 1 Sequoyah +RVP 40137 2002 1 Stephens +RVP 40139 2002 0 Texas +RVP 40141 2002 0 Tillman +RVP 40143 2002 2 Tulsa +RVP 40145 2002 2 Wagoner +RVP 40147 2002 0 Washington +RVP 40149 2002 1 Washita +RVP 40151 2002 1 Woods +RVP 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_SBC.ALO new file mode 100644 index 0000000..a99c9df --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_SBC.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 40000 2002 4 OK +SBC 40001 2002 0 Adair +SBC 40003 2002 0 Alfalfa +SBC 40005 2002 0 Atoka +SBC 40007 2002 1 Beaver +SBC 40009 2002 0 Beckham +SBC 40011 2002 0 Blaine +SBC 40013 2002 0 Bryan +SBC 40015 2002 0 Caddo +SBC 40017 2002 0 Canadian +SBC 40019 2002 0 Carter +SBC 40021 2002 0 Cherokee +SBC 40023 2002 0 Choctaw +SBC 40025 2002 0 Cimarron +SBC 40027 2002 0 Cleveland +SBC 40029 2002 0 Coal +SBC 40031 2002 0 Comanche +SBC 40033 2002 0 Cotton +SBC 40035 2002 0 Craig +SBC 40037 2002 0 Creek +SBC 40039 2002 0 Custer +SBC 40041 2002 0 Delaware +SBC 40043 2002 0 Dewey +SBC 40045 2002 0 Ellis +SBC 40047 2002 0 Garfield +SBC 40049 2002 0 Garvin +SBC 40051 2002 0 Grady +SBC 40053 2002 0 Grant +SBC 40055 2002 0 Greer +SBC 40057 2002 0 Harmon +SBC 40059 2002 0 Harper +SBC 40061 2002 0 Haskell +SBC 40063 2002 0 Hughes +SBC 40065 2002 0 Jackson +SBC 40067 2002 0 Jefferson +SBC 40069 2002 0 Johnston +SBC 40071 2002 0 Kay +SBC 40073 2002 0 Kingfisher +SBC 40075 2002 0 Kiowa +SBC 40077 2002 0 Latimer +SBC 40079 2002 0 Le Flore +SBC 40081 2002 0 Lincoln +SBC 40083 2002 0 Logan +SBC 40085 2002 0 Love +SBC 40087 2002 0 McClain +SBC 40089 2002 0 McCurtain +SBC 40091 2002 0 McIntosh +SBC 40093 2002 0 Major +SBC 40095 2002 0 Marshall +SBC 40097 2002 0 Mayes +SBC 40099 2002 0 Murray +SBC 40101 2002 0 Muskogee +SBC 40103 2002 0 Noble +SBC 40105 2002 0 Nowata +SBC 40107 2002 0 Okfuskee +SBC 40109 2002 0 Oklahoma +SBC 40111 2002 0 Okmulgee +SBC 40113 2002 0 Osage +SBC 40115 2002 0 Ottawa +SBC 40117 2002 0 Pawnee +SBC 40119 2002 0 Payne +SBC 40121 2002 0 Pittsburg +SBC 40123 2002 0 Pontotoc +SBC 40125 2002 0 Pottawatomie +SBC 40127 2002 0 Pushmataha +SBC 40129 2002 0 Roger Mills +SBC 40131 2002 0 Rogers +SBC 40133 2002 0 Seminole +SBC 40135 2002 0 Sequoyah +SBC 40137 2002 0 Stephens +SBC 40139 2002 3 Texas +SBC 40141 2002 0 Tillman +SBC 40143 2002 0 Tulsa +SBC 40145 2002 0 Wagoner +SBC 40147 2002 0 Washington +SBC 40149 2002 0 Washita +SBC 40151 2002 0 Woods +SBC 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_SBR.ALO new file mode 100644 index 0000000..2928203 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_SBR.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 40000 2002 14400 OK +SBR 40001 2002 0 Adair +SBR 40003 2002 0 Alfalfa +SBR 40005 2002 0 Atoka +SBR 40007 2002 2726 Beaver +SBR 40009 2002 0 Beckham +SBR 40011 2002 0 Blaine +SBR 40013 2002 0 Bryan +SBR 40015 2002 0 Caddo +SBR 40017 2002 0 Canadian +SBR 40019 2002 0 Carter +SBR 40021 2002 0 Cherokee +SBR 40023 2002 0 Choctaw +SBR 40025 2002 1580 Cimarron +SBR 40027 2002 0 Cleveland +SBR 40029 2002 0 Coal +SBR 40031 2002 0 Comanche +SBR 40033 2002 0 Cotton +SBR 40035 2002 0 Craig +SBR 40037 2002 0 Creek +SBR 40039 2002 0 Custer +SBR 40041 2002 0 Delaware +SBR 40043 2002 0 Dewey +SBR 40045 2002 0 Ellis +SBR 40047 2002 0 Garfield +SBR 40049 2002 0 Garvin +SBR 40051 2002 0 Grady +SBR 40053 2002 0 Grant +SBR 40055 2002 0 Greer +SBR 40057 2002 0 Harmon +SBR 40059 2002 1855 Harper +SBR 40061 2002 0 Haskell +SBR 40063 2002 0 Hughes +SBR 40065 2002 0 Jackson +SBR 40067 2002 0 Jefferson +SBR 40069 2002 0 Johnston +SBR 40071 2002 0 Kay +SBR 40073 2002 0 Kingfisher +SBR 40075 2002 0 Kiowa +SBR 40077 2002 0 Latimer +SBR 40079 2002 0 Le Flore +SBR 40081 2002 0 Lincoln +SBR 40083 2002 0 Logan +SBR 40085 2002 0 Love +SBR 40087 2002 0 McClain +SBR 40089 2002 0 McCurtain +SBR 40091 2002 0 McIntosh +SBR 40093 2002 0 Major +SBR 40095 2002 0 Marshall +SBR 40097 2002 0 Mayes +SBR 40099 2002 0 Murray +SBR 40101 2002 0 Muskogee +SBR 40103 2002 0 Noble +SBR 40105 2002 0 Nowata +SBR 40107 2002 0 Okfuskee +SBR 40109 2002 0 Oklahoma +SBR 40111 2002 0 Okmulgee +SBR 40113 2002 0 Osage +SBR 40115 2002 0 Ottawa +SBR 40117 2002 0 Pawnee +SBR 40119 2002 0 Payne +SBR 40121 2002 0 Pittsburg +SBR 40123 2002 0 Pontotoc +SBR 40125 2002 0 Pottawatomie +SBR 40127 2002 0 Pushmataha +SBR 40129 2002 0 Roger Mills +SBR 40131 2002 0 Rogers +SBR 40133 2002 0 Seminole +SBR 40135 2002 0 Sequoyah +SBR 40137 2002 0 Stephens +SBR 40139 2002 8239 Texas +SBR 40141 2002 0 Tillman +SBR 40143 2002 0 Tulsa +SBR 40145 2002 0 Wagoner +SBR 40147 2002 0 Washington +SBR 40149 2002 0 Washita +SBR 40151 2002 0 Woods +SBR 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_SNOWM.ALO new file mode 100644 index 0000000..347e3bd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_SNOWM.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 40000 2002 0 OK +SNM 40001 2002 0 Adair +SNM 40003 2002 0 Alfalfa +SNM 40005 2002 0 Atoka +SNM 40007 2002 0 Beaver +SNM 40009 2002 0 Beckham +SNM 40011 2002 0 Blaine +SNM 40013 2002 0 Bryan +SNM 40015 2002 0 Caddo +SNM 40017 2002 0 Canadian +SNM 40019 2002 0 Carter +SNM 40021 2002 0 Cherokee +SNM 40023 2002 0 Choctaw +SNM 40025 2002 0 Cimarron +SNM 40027 2002 0 Cleveland +SNM 40029 2002 0 Coal +SNM 40031 2002 0 Comanche +SNM 40033 2002 0 Cotton +SNM 40035 2002 0 Craig +SNM 40037 2002 0 Creek +SNM 40039 2002 0 Custer +SNM 40041 2002 0 Delaware +SNM 40043 2002 0 Dewey +SNM 40045 2002 0 Ellis +SNM 40047 2002 0 Garfield +SNM 40049 2002 0 Garvin +SNM 40051 2002 0 Grady +SNM 40053 2002 0 Grant +SNM 40055 2002 0 Greer +SNM 40057 2002 0 Harmon +SNM 40059 2002 0 Harper +SNM 40061 2002 0 Haskell +SNM 40063 2002 0 Hughes +SNM 40065 2002 0 Jackson +SNM 40067 2002 0 Jefferson +SNM 40069 2002 0 Johnston +SNM 40071 2002 0 Kay +SNM 40073 2002 0 Kingfisher +SNM 40075 2002 0 Kiowa +SNM 40077 2002 0 Latimer +SNM 40079 2002 0 Le Flore +SNM 40081 2002 0 Lincoln +SNM 40083 2002 0 Logan +SNM 40085 2002 0 Love +SNM 40087 2002 0 McClain +SNM 40089 2002 0 McCurtain +SNM 40091 2002 0 McIntosh +SNM 40093 2002 0 Major +SNM 40095 2002 0 Marshall +SNM 40097 2002 0 Mayes +SNM 40099 2002 0 Murray +SNM 40101 2002 0 Muskogee +SNM 40103 2002 0 Noble +SNM 40105 2002 0 Nowata +SNM 40107 2002 0 Okfuskee +SNM 40109 2002 0 Oklahoma +SNM 40111 2002 0 Okmulgee +SNM 40113 2002 0 Osage +SNM 40115 2002 0 Ottawa +SNM 40117 2002 0 Pawnee +SNM 40119 2002 0 Payne +SNM 40121 2002 0 Pittsburg +SNM 40123 2002 0 Pontotoc +SNM 40125 2002 0 Pottawatomie +SNM 40127 2002 0 Pushmataha +SNM 40129 2002 0 Roger Mills +SNM 40131 2002 0 Rogers +SNM 40133 2002 0 Seminole +SNM 40135 2002 0 Sequoyah +SNM 40137 2002 0 Stephens +SNM 40139 2002 0 Texas +SNM 40141 2002 0 Tillman +SNM 40143 2002 0 Tulsa +SNM 40145 2002 0 Wagoner +SNM 40147 2002 0 Washington +SNM 40149 2002 0 Washita +SNM 40151 2002 0 Woods +SNM 40153 2002 0 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_WIB.ALO new file mode 100644 index 0000000..fb6cace --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_WIB.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 40000 1990 3173 OK +WIB 40001 1990 4 Adair +WIB 40003 1990 38 Alfalfa +WIB 40005 1990 30 Atoka +WIB 40007 1990 8 Beaver +WIB 40009 1990 6 Beckham +WIB 40011 1990 27 Blaine +WIB 40013 1990 90 Bryan +WIB 40015 1990 31 Caddo +WIB 40017 1990 14 Canadian +WIB 40019 1990 26 Carter +WIB 40021 1990 66 Cherokee +WIB 40023 1990 69 Choctaw +WIB 40025 1990 16 Cimarron +WIB 40027 1990 58 Cleveland +WIB 40029 1990 8 Coal +WIB 40031 1990 38 Comanche +WIB 40033 1990 14 Cotton +WIB 40035 1990 4 Craig +WIB 40037 1990 37 Creek +WIB 40039 1990 40 Custer +WIB 40041 1990 134 Delaware +WIB 40043 1990 21 Dewey +WIB 40045 1990 7 Ellis +WIB 40047 1990 4 Garfield +WIB 40049 1990 12 Garvin +WIB 40051 1990 11 Grady +WIB 40053 1990 8 Grant +WIB 40055 1990 11 Greer +WIB 40057 1990 2 Harmon +WIB 40059 1990 5 Harper +WIB 40061 1990 125 Haskell +WIB 40063 1990 20 Hughes +WIB 40065 1990 4 Jackson +WIB 40067 1990 39 Jefferson +WIB 40069 1990 36 Johnston +WIB 40071 1990 68 Kay +WIB 40073 1990 8 Kingfisher +WIB 40075 1990 42 Kiowa +WIB 40077 1990 18 Latimer +WIB 40079 1990 57 Le Flore +WIB 40081 1990 18 Lincoln +WIB 40083 1990 11 Logan +WIB 40085 1990 43 Love +WIB 40087 1990 27 McClain +WIB 40089 1990 127 McCurtain +WIB 40091 1990 240 McIntosh +WIB 40093 1990 3 Major +WIB 40095 1990 145 Marshall +WIB 40097 1990 71 Mayes +WIB 40099 1990 17 Murray +WIB 40101 1990 65 Muskogee +WIB 40103 1990 27 Noble +WIB 40105 1990 41 Nowata +WIB 40107 1990 11 Okfuskee +WIB 40109 1990 24 Oklahoma +WIB 40111 1990 14 Okmulgee +WIB 40113 1990 137 Osage +WIB 40115 1990 35 Ottawa +WIB 40117 1990 66 Pawnee +WIB 40119 1990 28 Payne +WIB 40121 1990 186 Pittsburg +WIB 40123 1990 15 Pontotoc +WIB 40125 1990 14 Pottawatomie +WIB 40127 1990 66 Pushmataha +WIB 40129 1990 12 Roger Mills +WIB 40131 1990 95 Rogers +WIB 40133 1990 21 Seminole +WIB 40135 1990 106 Sequoyah +WIB 40137 1990 36 Stephens +WIB 40139 1990 30 Texas +WIB 40141 1990 18 Tillman +WIB 40143 1990 43 Tulsa +WIB 40145 1990 72 Wagoner +WIB 40147 1990 19 Washington +WIB 40149 1990 15 Washita +WIB 40151 1990 9 Woods +WIB 40153 1990 10 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OK_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OK_WOB.ALO new file mode 100644 index 0000000..d1979b8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OK_WOB.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 40000 1990 3173 OK +WOB 40001 1990 4 Adair +WOB 40003 1990 38 Alfalfa +WOB 40005 1990 30 Atoka +WOB 40007 1990 8 Beaver +WOB 40009 1990 6 Beckham +WOB 40011 1990 27 Blaine +WOB 40013 1990 90 Bryan +WOB 40015 1990 31 Caddo +WOB 40017 1990 14 Canadian +WOB 40019 1990 26 Carter +WOB 40021 1990 66 Cherokee +WOB 40023 1990 69 Choctaw +WOB 40025 1990 16 Cimarron +WOB 40027 1990 58 Cleveland +WOB 40029 1990 8 Coal +WOB 40031 1990 38 Comanche +WOB 40033 1990 14 Cotton +WOB 40035 1990 4 Craig +WOB 40037 1990 37 Creek +WOB 40039 1990 40 Custer +WOB 40041 1990 134 Delaware +WOB 40043 1990 21 Dewey +WOB 40045 1990 7 Ellis +WOB 40047 1990 4 Garfield +WOB 40049 1990 12 Garvin +WOB 40051 1990 11 Grady +WOB 40053 1990 8 Grant +WOB 40055 1990 11 Greer +WOB 40057 1990 2 Harmon +WOB 40059 1990 5 Harper +WOB 40061 1990 125 Haskell +WOB 40063 1990 20 Hughes +WOB 40065 1990 4 Jackson +WOB 40067 1990 39 Jefferson +WOB 40069 1990 36 Johnston +WOB 40071 1990 68 Kay +WOB 40073 1990 8 Kingfisher +WOB 40075 1990 42 Kiowa +WOB 40077 1990 18 Latimer +WOB 40079 1990 57 Le Flore +WOB 40081 1990 18 Lincoln +WOB 40083 1990 11 Logan +WOB 40085 1990 43 Love +WOB 40087 1990 27 McClain +WOB 40089 1990 127 McCurtain +WOB 40091 1990 240 McIntosh +WOB 40093 1990 3 Major +WOB 40095 1990 145 Marshall +WOB 40097 1990 71 Mayes +WOB 40099 1990 17 Murray +WOB 40101 1990 65 Muskogee +WOB 40103 1990 27 Noble +WOB 40105 1990 41 Nowata +WOB 40107 1990 11 Okfuskee +WOB 40109 1990 24 Oklahoma +WOB 40111 1990 14 Okmulgee +WOB 40113 1990 137 Osage +WOB 40115 1990 35 Ottawa +WOB 40117 1990 66 Pawnee +WOB 40119 1990 28 Payne +WOB 40121 1990 186 Pittsburg +WOB 40123 1990 15 Pontotoc +WOB 40125 1990 14 Pottawatomie +WOB 40127 1990 66 Pushmataha +WOB 40129 1990 12 Roger Mills +WOB 40131 1990 95 Rogers +WOB 40133 1990 21 Seminole +WOB 40135 1990 106 Sequoyah +WOB 40137 1990 36 Stephens +WOB 40139 1990 30 Texas +WOB 40141 1990 18 Tillman +WOB 40143 1990 43 Tulsa +WOB 40145 1990 72 Wagoner +WOB 40147 1990 19 Washington +WOB 40149 1990 15 Washita +WOB 40151 1990 9 Woods +WOB 40153 1990 10 Woodward +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_AIRTR.ALO new file mode 100644 index 0000000..9e7e5d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_AIRTR.ALO @@ -0,0 +1,63 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 41000 2002 766.367 OR +AIR 41001 2002 0.050 Baker +AIR 41003 2002 0.560 Benton +AIR 41005 2002 0.000 Clackamas +AIR 41007 2002 0.300 Clatsop +AIR 41009 2002 0.420 Columbia +AIR 41011 2002 0.520 Coos +AIR 41013 2002 0.000 Crook +AIR 41015 2002 0.000 Curry +AIR 41017 2002 1.290 Deschutes +AIR 41019 2002 0.177 Douglas +AIR 41021 2002 0.000 Gilliam +AIR 41023 2002 0.000 Grant +AIR 41025 2002 0.030 Harney +AIR 41027 2002 0.000 Hood River +AIR 41029 2002 10.980 Jackson +AIR 41031 2002 0.000 Jefferson +AIR 41033 2002 0.000 Josephine +AIR 41035 2002 0.580 Klamath +AIR 41037 2002 0.020 Lake +AIR 41039 2002 28.440 Lane +AIR 41041 2002 6.650 Lincoln +AIR 41043 2002 0.100 Linn +AIR 41045 2002 0.100 Malheur +AIR 41047 2002 0.520 Marion +AIR 41049 2002 0.000 Morrow +AIR 41051 2002 713.570 Multnomah +AIR 41053 2002 0.000 Polk +AIR 41055 2002 0.000 Sherman +AIR 41057 2002 0.000 Tillamook +AIR 41059 2002 0.520 Umatilla +AIR 41061 2002 0.080 Union +AIR 41063 2002 0.000 Wallowa +AIR 41065 2002 0.000 Wasco +AIR 41067 2002 1.060 Washington +AIR 41069 2002 0.000 Wheeler +AIR 41071 2002 0.400 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_COAL.ALO new file mode 100644 index 0000000..967633b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_COAL.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 41000 2002 0 OR +MIN 41001 2002 0 Baker +MIN 41003 2002 0 Benton +MIN 41005 2002 0 Clackamas +MIN 41007 2002 0 Clatsop +MIN 41009 2002 0 Columbia +MIN 41011 2002 0 Coos +MIN 41013 2002 0 Crook +MIN 41015 2002 0 Curry +MIN 41017 2002 0 Deschutes +MIN 41019 2002 0 Douglas +MIN 41021 2002 0 Gilliam +MIN 41023 2002 0 Grant +MIN 41025 2002 0 Harney +MIN 41027 2002 0 Hood River +MIN 41029 2002 0 Jackson +MIN 41031 2002 0 Jefferson +MIN 41033 2002 0 Josephine +MIN 41035 2002 0 Klamath +MIN 41037 2002 0 Lake +MIN 41039 2002 0 Lane +MIN 41041 2002 0 Lincoln +MIN 41043 2002 0 Linn +MIN 41045 2002 0 Malheur +MIN 41047 2002 0 Marion +MIN 41049 2002 0 Morrow +MIN 41051 2002 0 Multnomah +MIN 41053 2002 0 Polk +MIN 41055 2002 0 Sherman +MIN 41057 2002 0 Tillamook +MIN 41059 2002 0 Umatilla +MIN 41061 2002 0 Union +MIN 41063 2002 0 Wallowa +MIN 41065 2002 0 Wasco +MIN 41067 2002 0 Washington +MIN 41069 2002 0 Wheeler +MIN 41071 2002 0 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_CONST.ALO new file mode 100644 index 0000000..b72654a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_CONST.ALO @@ -0,0 +1,63 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 41000 2003 7098860 OR +CON 41001 2003 9729 Baker +CON 41003 2003 182795 Benton +CON 41005 2003 771411 Clackamas +CON 41007 2003 61336 Clatsop +CON 41009 2003 66316 Columbia +CON 41011 2003 47348 Coos +CON 41013 2003 43173 Crook +CON 41015 2003 40887 Curry +CON 41017 2003 688196 Deschutes +CON 41019 2003 122750 Douglas +CON 41021 2003 2188 Gilliam +CON 41023 2003 3333 Grant +CON 41025 2003 2827 Harney +CON 41027 2003 38507 Hood River +CON 41029 2003 467432 Jackson +CON 41031 2003 28713 Jefferson +CON 41033 2003 80694 Josephine +CON 41035 2003 76852 Klamath +CON 41037 2003 3424 Lake +CON 41039 2003 481571 Lane +CON 41041 2003 50569 Lincoln +CON 41043 2003 147443 Linn +CON 41045 2003 19442 Malheur +CON 41047 2003 452088 Marion +CON 41049 2003 3573 Morrow +CON 41051 2003 1525463 Multnomah +CON 41053 2003 69074 Polk +CON 41055 2003 10957 Sherman +CON 41057 2003 50570 Tillamook +CON 41059 2003 104550 Umatilla +CON 41061 2003 21261 Union +CON 41063 2003 3461 Wallowa +CON 41065 2003 15609 Wasco +CON 41067 2003 1233840 Washington +CON 41069 2003 1170 Wheeler +CON 41071 2003 170306 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_FARMS.ALO new file mode 100644 index 0000000..a8ddb44 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_FARMS.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 41000 2002 3119384 OR +FRM 41001 2002 77370 Baker +FRM 41003 2002 78906 Benton +FRM 41005 2002 86291 Clackamas +FRM 41007 2002 4207 Clatsop +FRM 41009 2002 17189 Columbia +FRM 41011 2002 13638 Coos +FRM 41013 2002 43822 Crook +FRM 41015 2002 2973 Curry +FRM 41017 2002 24395 Deschutes +FRM 41019 2002 38433 Douglas +FRM 41021 2002 116490 Gilliam +FRM 41023 2002 36295 Grant +FRM 41025 2002 110263 Harney +FRM 41027 2002 17974 Hood River +FRM 41029 2002 34470 Jackson +FRM 41031 2002 53496 Jefferson +FRM 41033 2002 8405 Josephine +FRM 41035 2002 152165 Klamath +FRM 41037 2002 154418 Lake +FRM 41039 2002 91965 Lane +FRM 41041 2002 3617 Lincoln +FRM 41043 2002 228987 Linn +FRM 41045 2002 189374 Malheur +FRM 41047 2002 213215 Marion +FRM 41049 2002 212531 Morrow +FRM 41051 2002 15083 Multnomah +FRM 41053 2002 101629 Polk +FRM 41055 2002 130328 Sherman +FRM 41057 2002 6452 Tillamook +FRM 41059 2002 396024 Umatilla +FRM 41061 2002 104913 Union +FRM 41063 2002 51574 Wallowa +FRM 41065 2002 103069 Wasco +FRM 41067 2002 81449 Washington +FRM 41069 2002 12877 Wheeler +FRM 41071 2002 105097 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_GOLF.ALO new file mode 100644 index 0000000..16cfa06 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_GOLF.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 41000 2002 148 OR +GC 41001 2002 0 Baker +GC 41003 2002 4 Benton +GC 41005 2002 18 Clackamas +GC 41007 2002 2 Clatsop +GC 41009 2002 1 Columbia +GC 41011 2002 4 Coos +GC 41013 2002 1 Crook +GC 41015 2002 2 Curry +GC 41017 2002 11 Deschutes +GC 41019 2002 3 Douglas +GC 41021 2002 0 Gilliam +GC 41023 2002 1 Grant +GC 41025 2002 1 Harney +GC 41027 2002 1 Hood River +GC 41029 2002 6 Jackson +GC 41031 2002 1 Jefferson +GC 41033 2002 4 Josephine +GC 41035 2002 4 Klamath +GC 41037 2002 2 Lake +GC 41039 2002 15 Lane +GC 41041 2002 4 Lincoln +GC 41043 2002 4 Linn +GC 41045 2002 1 Malheur +GC 41047 2002 13 Marion +GC 41049 2002 1 Morrow +GC 41051 2002 13 Multnomah +GC 41053 2002 4 Polk +GC 41055 2002 0 Sherman +GC 41057 2002 4 Tillamook +GC 41059 2002 2 Umatilla +GC 41061 2002 1 Union +GC 41063 2002 1 Wallowa +GC 41065 2002 1 Wasco +GC 41067 2002 15 Washington +GC 41069 2002 0 Wheeler +GC 41071 2002 3 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_HOLSL.ALO new file mode 100644 index 0000000..422fa37 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_HOLSL.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 41000 2002 5815 OR +COM 41001 2002 15 Baker +COM 41003 2002 55 Benton +COM 41005 2002 743 Clackamas +COM 41007 2002 43 Clatsop +COM 41009 2002 23 Columbia +COM 41011 2002 54 Coos +COM 41013 2002 12 Crook +COM 41015 2002 14 Curry +COM 41017 2002 204 Deschutes +COM 41019 2002 79 Douglas +COM 41021 2002 3 Gilliam +COM 41023 2002 5 Grant +COM 41025 2002 4 Harney +COM 41027 2002 29 Hood River +COM 41029 2002 273 Jackson +COM 41031 2002 24 Jefferson +COM 41033 2002 64 Josephine +COM 41035 2002 65 Klamath +COM 41037 2002 6 Lake +COM 41039 2002 511 Lane +COM 41041 2002 39 Lincoln +COM 41043 2002 141 Linn +COM 41045 2002 43 Malheur +COM 41047 2002 329 Marion +COM 41049 2002 11 Morrow +COM 41051 2002 1641 Multnomah +COM 41053 2002 43 Polk +COM 41055 2002 2 Sherman +COM 41057 2002 22 Tillamook +COM 41059 2002 66 Umatilla +COM 41061 2002 33 Union +COM 41063 2002 4 Wallowa +COM 41065 2002 35 Wasco +COM 41067 2002 1083 Washington +COM 41069 2002 2 Wheeler +COM 41071 2002 95 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_HOUSE.ALO new file mode 100644 index 0000000..6a0a18a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_HOUSE.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 41000 2002 1495593 OR +HOU 41001 2002 8506 Baker +HOU 41003 2002 33179 Benton +HOU 41005 2002 141726 Clackamas +HOU 41007 2002 19850 Clatsop +HOU 41009 2002 18194 Columbia +HOU 41011 2002 29432 Coos +HOU 41013 2002 8741 Crook +HOU 41015 2002 11721 Curry +HOU 41017 2002 59339 Deschutes +HOU 41019 2002 44229 Douglas +HOU 41021 2002 1039 Gilliam +HOU 41023 2002 4104 Grant +HOU 41025 2002 3554 Harney +HOU 41027 2002 8045 Hood River +HOU 41029 2002 79010 Jackson +HOU 41031 2002 8771 Jefferson +HOU 41033 2002 34236 Josephine +HOU 41035 2002 29264 Klamath +HOU 41037 2002 4048 Lake +HOU 41039 2002 141971 Lane +HOU 41041 2002 27364 Lincoln +HOU 41043 2002 43601 Linn +HOU 41045 2002 11351 Malheur +HOU 41047 2002 111220 Marion +HOU 41049 2002 4356 Morrow +HOU 41051 2002 292696 Multnomah +HOU 41053 2002 25193 Polk +HOU 41055 2002 939 Sherman +HOU 41057 2002 16294 Tillamook +HOU 41059 2002 28188 Umatilla +HOU 41061 2002 10648 Union +HOU 41063 2002 3950 Wallowa +HOU 41065 2002 10705 Wasco +HOU 41067 2002 187513 Washington +HOU 41069 2002 843 Wheeler +HOU 41071 2002 31773 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_LOGGN.ALO new file mode 100644 index 0000000..0da774c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_LOGGN.ALO @@ -0,0 +1,63 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 41000 2002 965581468 OR +LOG 41001 2002 27501706 Baker +LOG 41003 2002 75149276 Benton +LOG 41005 2002 15215898 Clackamas +LOG 41007 2002 60236130 Clatsop +LOG 41009 2002 17910769 Columbia +LOG 41011 2002 51192143 Coos +LOG 41013 2002 8833672 Crook +LOG 41015 2002 19511347 Curry +LOG 41017 2002 19540283 Deschutes +LOG 41019 2002 175442543 Douglas +LOG 41021 2002 0 Gilliam +LOG 41023 2002 15065613 Grant +LOG 41025 2002 1333286 Harney +LOG 41027 2002 6550056 Hood River +LOG 41029 2002 43124810 Jackson +LOG 41031 2002 3120852 Jefferson +LOG 41033 2002 9583069 Josephine +LOG 41035 2002 69732513 Klamath +LOG 41037 2002 11318113 Lake +LOG 41039 2002 115284306 Lane +LOG 41041 2002 34778197 Lincoln +LOG 41043 2002 32270120 Linn +LOG 41045 2002 1781323 Malheur +LOG 41047 2002 6891167 Marion +LOG 41049 2002 7568789 Morrow +LOG 41051 2002 1716248 Multnomah +LOG 41053 2002 15967574 Polk +LOG 41055 2002 0 Sherman +LOG 41057 2002 33416318 Tillamook +LOG 41059 2002 16520581 Umatilla +LOG 41061 2002 3040537 Union +LOG 41063 2002 19047534 Wallowa +LOG 41065 2002 12372355 Wasco +LOG 41067 2002 18403043 Washington +LOG 41069 2002 2156879 Wheeler +LOG 41071 2002 14004420 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_LSCAP.ALO new file mode 100644 index 0000000..67afc9b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_LSCAP.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 41000 2002 5200 OR +LSC 41001 2002 5 Baker +LSC 41003 2002 140 Benton +LSC 41005 2002 1198 Clackamas +LSC 41007 2002 48 Clatsop +LSC 41009 2002 24 Columbia +LSC 41011 2002 16 Coos +LSC 41013 2002 5 Crook +LSC 41015 2002 13 Curry +LSC 41017 2002 141 Deschutes +LSC 41019 2002 74 Douglas +LSC 41021 2002 0 Gilliam +LSC 41023 2002 0 Grant +LSC 41025 2002 0 Harney +LSC 41027 2002 22 Hood River +LSC 41029 2002 241 Jackson +LSC 41031 2002 5 Jefferson +LSC 41033 2002 59 Josephine +LSC 41035 2002 17 Klamath +LSC 41037 2002 6 Lake +LSC 41039 2002 275 Lane +LSC 41041 2002 35 Lincoln +LSC 41043 2002 168 Linn +LSC 41045 2002 7 Malheur +LSC 41047 2002 388 Marion +LSC 41049 2002 0 Morrow +LSC 41051 2002 626 Multnomah +LSC 41053 2002 31 Polk +LSC 41055 2002 0 Sherman +LSC 41057 2002 6 Tillamook +LSC 41059 2002 70 Umatilla +LSC 41061 2002 6 Union +LSC 41063 2002 2 Wallowa +LSC 41065 2002 8 Wasco +LSC 41067 2002 1483 Washington +LSC 41069 2002 0 Wheeler +LSC 41071 2002 81 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_MNFG.ALO new file mode 100644 index 0000000..91060a3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_MNFG.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 41000 2002 340714 OR +MFG 41001 2002 1217 Baker +MFG 41003 2002 15045 Benton +MFG 41005 2002 33146 Clackamas +MFG 41007 2002 1337 Clatsop +MFG 41009 2002 5614 Columbia +MFG 41011 2002 2784 Coos +MFG 41013 2002 2726 Crook +MFG 41015 2002 1190 Curry +MFG 41017 2002 10099 Deschutes +MFG 41019 2002 11677 Douglas +MFG 41021 2002 24 Gilliam +MFG 41023 2002 411 Grant +MFG 41025 2002 392 Harney +MFG 41027 2002 1606 Hood River +MFG 41029 2002 13079 Jackson +MFG 41031 2002 3722 Jefferson +MFG 41033 2002 5650 Josephine +MFG 41035 2002 4598 Klamath +MFG 41037 2002 400 Lake +MFG 41039 2002 36461 Lane +MFG 41041 2002 1737 Lincoln +MFG 41043 2002 14917 Linn +MFG 41045 2002 1479 Malheur +MFG 41047 2002 18120 Marion +MFG 41049 2002 737 Morrow +MFG 41051 2002 68655 Multnomah +MFG 41053 2002 2854 Polk +MFG 41055 2002 15 Sherman +MFG 41057 2002 1690 Tillamook +MFG 41059 2002 5583 Umatilla +MFG 41061 2002 2793 Union +MFG 41063 2002 330 Wallowa +MFG 41065 2002 1202 Wasco +MFG 41067 2002 59191 Washington +MFG 41069 2002 15 Wheeler +MFG 41071 2002 10218 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_OIL.ALO new file mode 100644 index 0000000..5cfc543 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_OIL.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 41000 2002 86 OR +OIL 41001 2002 0 Baker +OIL 41003 2002 14 Benton +OIL 41005 2002 13 Clackamas +OIL 41007 2002 0 Clatsop +OIL 41009 2002 0 Columbia +OIL 41011 2002 0 Coos +OIL 41013 2002 0 Crook +OIL 41015 2002 0 Curry +OIL 41017 2002 3 Deschutes +OIL 41019 2002 0 Douglas +OIL 41021 2002 0 Gilliam +OIL 41023 2002 0 Grant +OIL 41025 2002 0 Harney +OIL 41027 2002 0 Hood River +OIL 41029 2002 4 Jackson +OIL 41031 2002 0 Jefferson +OIL 41033 2002 13 Josephine +OIL 41035 2002 13 Klamath +OIL 41037 2002 0 Lake +OIL 41039 2002 0 Lane +OIL 41041 2002 0 Lincoln +OIL 41043 2002 0 Linn +OIL 41045 2002 0 Malheur +OIL 41047 2002 0 Marion +OIL 41049 2002 0 Morrow +OIL 41051 2002 0 Multnomah +OIL 41053 2002 0 Polk +OIL 41055 2002 0 Sherman +OIL 41057 2002 0 Tillamook +OIL 41059 2002 0 Umatilla +OIL 41061 2002 0 Union +OIL 41063 2002 0 Wallowa +OIL 41065 2002 13 Wasco +OIL 41067 2002 13 Washington +OIL 41069 2002 0 Wheeler +OIL 41071 2002 0 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_POP.ALO new file mode 100644 index 0000000..cef86d5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_POP.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 41000 2002 3523281 OR +POP 41001 2002 16536 Baker +POP 41003 2002 79029 Benton +POP 41005 2002 352408 Clackamas +POP 41007 2002 35709 Clatsop +POP 41009 2002 45459 Columbia +POP 41011 2002 62635 Coos +POP 41013 2002 20218 Crook +POP 41015 2002 21469 Curry +POP 41017 2002 125602 Deschutes +POP 41019 2002 101214 Douglas +POP 41021 2002 1861 Gilliam +POP 41023 2002 7446 Grant +POP 41025 2002 7322 Harney +POP 41027 2002 20712 Hood River +POP 41029 2002 186945 Jackson +POP 41031 2002 19626 Jefferson +POP 41033 2002 77820 Josephine +POP 41035 2002 64328 Klamath +POP 41037 2002 7448 Lake +POP 41039 2002 327017 Lane +POP 41041 2002 44529 Lincoln +POP 41043 2002 105115 Linn +POP 41045 2002 31424 Malheur +POP 41047 2002 294882 Marion +POP 41049 2002 11601 Morrow +POP 41051 2002 675066 Multnomah +POP 41053 2002 64823 Polk +POP 41055 2002 1789 Sherman +POP 41057 2002 24501 Tillamook +POP 41059 2002 72034 Umatilla +POP 41061 2002 24500 Union +POP 41063 2002 7096 Wallowa +POP 41065 2002 23570 Wasco +POP 41067 2002 472139 Washington +POP 41069 2002 1530 Wheeler +POP 41071 2002 87878 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_RAIL.ALO new file mode 100644 index 0000000..936d299 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_RAIL.ALO @@ -0,0 +1,63 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 41000 2002 8334.070 OR +RR 41001 2002 461.840 Baker +RR 41003 2002 0.000 Benton +RR 41005 2002 181.030 Clackamas +RR 41007 2002 0.000 Clatsop +RR 41009 2002 0.000 Columbia +RR 41011 2002 0.000 Coos +RR 41013 2002 0.000 Crook +RR 41015 2002 0.000 Curry +RR 41017 2002 222.000 Deschutes +RR 41019 2002 0.000 Douglas +RR 41021 2002 452.830 Gilliam +RR 41023 2002 0.000 Grant +RR 41025 2002 0.000 Harney +RR 41027 2002 454.620 Hood River +RR 41029 2002 0.000 Jackson +RR 41031 2002 152.000 Jefferson +RR 41033 2002 0.000 Josephine +RR 41035 2002 1203.360 Klamath +RR 41037 2002 0.000 Lake +RR 41039 2002 748.620 Lane +RR 41041 2002 0.000 Lincoln +RR 41043 2002 267.940 Linn +RR 41045 2002 89.060 Malheur +RR 41047 2002 349.190 Marion +RR 41049 2002 242.310 Morrow +RR 41051 2002 796.380 Multnomah +RR 41053 2002 0.000 Polk +RR 41055 2002 336.550 Sherman +RR 41057 2002 0.000 Tillamook +RR 41059 2002 869.910 Umatilla +RR 41061 2002 820.200 Union +RR 41063 2002 0.000 Wallowa +RR 41065 2002 683.200 Wasco +RR 41067 2002 3.030 Washington +RR 41069 2002 0.000 Wheeler +RR 41071 2002 0.000 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_RVPRK.ALO new file mode 100644 index 0000000..b213b32 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_RVPRK.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 41000 2002 194 OR +RVP 41001 2002 4 Baker +RVP 41003 2002 1 Benton +RVP 41005 2002 10 Clackamas +RVP 41007 2002 8 Clatsop +RVP 41009 2002 2 Columbia +RVP 41011 2002 6 Coos +RVP 41013 2002 4 Crook +RVP 41015 2002 16 Curry +RVP 41017 2002 19 Deschutes +RVP 41019 2002 9 Douglas +RVP 41021 2002 0 Gilliam +RVP 41023 2002 2 Grant +RVP 41025 2002 0 Harney +RVP 41027 2002 3 Hood River +RVP 41029 2002 10 Jackson +RVP 41031 2002 4 Jefferson +RVP 41033 2002 6 Josephine +RVP 41035 2002 7 Klamath +RVP 41037 2002 1 Lake +RVP 41039 2002 9 Lane +RVP 41041 2002 8 Lincoln +RVP 41043 2002 3 Linn +RVP 41045 2002 1 Malheur +RVP 41047 2002 11 Marion +RVP 41049 2002 3 Morrow +RVP 41051 2002 9 Multnomah +RVP 41053 2002 4 Polk +RVP 41055 2002 0 Sherman +RVP 41057 2002 7 Tillamook +RVP 41059 2002 5 Umatilla +RVP 41061 2002 4 Union +RVP 41063 2002 3 Wallowa +RVP 41065 2002 8 Wasco +RVP 41067 2002 5 Washington +RVP 41069 2002 0 Wheeler +RVP 41071 2002 2 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_SBC.ALO new file mode 100644 index 0000000..33aea07 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_SBC.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 41000 2002 5200 OR +SBC 41001 2002 5 Baker +SBC 41003 2002 140 Benton +SBC 41005 2002 1198 Clackamas +SBC 41007 2002 48 Clatsop +SBC 41009 2002 24 Columbia +SBC 41011 2002 16 Coos +SBC 41013 2002 6 Crook +SBC 41015 2002 13 Curry +SBC 41017 2002 141 Deschutes +SBC 41019 2002 74 Douglas +SBC 41021 2002 0 Gilliam +SBC 41023 2002 0 Grant +SBC 41025 2002 0 Harney +SBC 41027 2002 22 Hood River +SBC 41029 2002 241 Jackson +SBC 41031 2002 6 Jefferson +SBC 41033 2002 59 Josephine +SBC 41035 2002 17 Klamath +SBC 41037 2002 2 Lake +SBC 41039 2002 275 Lane +SBC 41041 2002 35 Lincoln +SBC 41043 2002 168 Linn +SBC 41045 2002 7 Malheur +SBC 41047 2002 388 Marion +SBC 41049 2002 0 Morrow +SBC 41051 2002 626 Multnomah +SBC 41053 2002 31 Polk +SBC 41055 2002 0 Sherman +SBC 41057 2002 7 Tillamook +SBC 41059 2002 70 Umatilla +SBC 41061 2002 7 Union +SBC 41063 2002 2 Wallowa +SBC 41065 2002 8 Wasco +SBC 41067 2002 1483 Washington +SBC 41069 2002 0 Wheeler +SBC 41071 2002 81 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_SBR.ALO new file mode 100644 index 0000000..d2c68b6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_SBR.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 41000 2002 1495593 OR +SBR 41001 2002 8506 Baker +SBR 41003 2002 33179 Benton +SBR 41005 2002 141726 Clackamas +SBR 41007 2002 19850 Clatsop +SBR 41009 2002 18194 Columbia +SBR 41011 2002 29432 Coos +SBR 41013 2002 8741 Crook +SBR 41015 2002 11721 Curry +SBR 41017 2002 59339 Deschutes +SBR 41019 2002 44229 Douglas +SBR 41021 2002 1039 Gilliam +SBR 41023 2002 4104 Grant +SBR 41025 2002 3554 Harney +SBR 41027 2002 8045 Hood River +SBR 41029 2002 79010 Jackson +SBR 41031 2002 8771 Jefferson +SBR 41033 2002 34236 Josephine +SBR 41035 2002 29264 Klamath +SBR 41037 2002 4048 Lake +SBR 41039 2002 141971 Lane +SBR 41041 2002 27364 Lincoln +SBR 41043 2002 43601 Linn +SBR 41045 2002 11351 Malheur +SBR 41047 2002 111220 Marion +SBR 41049 2002 4356 Morrow +SBR 41051 2002 292696 Multnomah +SBR 41053 2002 25193 Polk +SBR 41055 2002 939 Sherman +SBR 41057 2002 16294 Tillamook +SBR 41059 2002 28188 Umatilla +SBR 41061 2002 10648 Union +SBR 41063 2002 3950 Wallowa +SBR 41065 2002 10705 Wasco +SBR 41067 2002 187513 Washington +SBR 41069 2002 843 Wheeler +SBR 41071 2002 31773 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_SNOWM.ALO new file mode 100644 index 0000000..c07d6ec --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_SNOWM.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 41000 2002 605 OR +SNM 41001 2002 60 Baker +SNM 41003 2002 0 Benton +SNM 41005 2002 3 Clackamas +SNM 41007 2002 0 Clatsop +SNM 41009 2002 0 Columbia +SNM 41011 2002 16 Coos +SNM 41013 2002 0 Crook +SNM 41015 2002 47 Curry +SNM 41017 2002 0 Deschutes +SNM 41019 2002 10 Douglas +SNM 41021 2002 0 Gilliam +SNM 41023 2002 134 Grant +SNM 41025 2002 0 Harney +SNM 41027 2002 48 Hood River +SNM 41029 2002 5 Jackson +SNM 41031 2002 0 Jefferson +SNM 41033 2002 13 Josephine +SNM 41035 2002 16 Klamath +SNM 41037 2002 0 Lake +SNM 41039 2002 3 Lane +SNM 41041 2002 0 Lincoln +SNM 41043 2002 10 Linn +SNM 41045 2002 0 Malheur +SNM 41047 2002 3 Marion +SNM 41049 2002 0 Morrow +SNM 41051 2002 0 Multnomah +SNM 41053 2002 0 Polk +SNM 41055 2002 0 Sherman +SNM 41057 2002 41 Tillamook +SNM 41059 2002 14 Umatilla +SNM 41061 2002 41 Union +SNM 41063 2002 141 Wallowa +SNM 41065 2002 0 Wasco +SNM 41067 2002 0 Washington +SNM 41069 2002 0 Wheeler +SNM 41071 2002 0 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_WIB.ALO new file mode 100644 index 0000000..a4d3a26 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_WIB.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 41000 1990 4585 OR +WIB 41001 1990 53 Baker +WIB 41003 1990 7 Benton +WIB 41005 1990 28 Clackamas +WIB 41007 1990 435 Clatsop +WIB 41009 1990 83 Columbia +WIB 41011 1990 325 Coos +WIB 41013 1990 21 Crook +WIB 41015 1990 455 Curry +WIB 41017 1990 95 Deschutes +WIB 41019 1990 186 Douglas +WIB 41021 1990 49 Gilliam +WIB 41023 1990 2 Grant +WIB 41025 1990 239 Harney +WIB 41027 1990 29 Hood River +WIB 41029 1990 43 Jackson +WIB 41031 1990 27 Jefferson +WIB 41033 1990 5 Josephine +WIB 41035 1990 496 Klamath +WIB 41037 1990 577 Lake +WIB 41039 1990 317 Lane +WIB 41041 1990 311 Lincoln +WIB 41043 1990 46 Linn +WIB 41045 1990 111 Malheur +WIB 41047 1990 26 Marion +WIB 41049 1990 41 Morrow +WIB 41051 1990 79 Multnomah +WIB 41053 1990 8 Polk +WIB 41055 1990 21 Sherman +WIB 41057 1990 357 Tillamook +WIB 41059 1990 41 Umatilla +WIB 41061 1990 4 Union +WIB 41063 1990 16 Wallowa +WIB 41065 1990 37 Wasco +WIB 41067 1990 7 Washington +WIB 41069 1990 1 Wheeler +WIB 41071 1990 7 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/OR_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/OR_WOB.ALO new file mode 100644 index 0000000..a38a9af --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/OR_WOB.ALO @@ -0,0 +1,61 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 41000 1990 2951 OR +WOB 41001 1990 53 Baker +WOB 41003 1990 7 Benton +WOB 41005 1990 28 Clackamas +WOB 41007 1990 134 Clatsop +WOB 41009 1990 82 Columbia +WOB 41011 1990 100 Coos +WOB 41013 1990 21 Crook +WOB 41015 1990 73 Curry +WOB 41017 1990 95 Deschutes +WOB 41019 1990 99 Douglas +WOB 41021 1990 49 Gilliam +WOB 41023 1990 2 Grant +WOB 41025 1990 239 Harney +WOB 41027 1990 29 Hood River +WOB 41029 1990 43 Jackson +WOB 41031 1990 27 Jefferson +WOB 41033 1990 5 Josephine +WOB 41035 1990 496 Klamath +WOB 41037 1990 577 Lake +WOB 41039 1990 185 Lane +WOB 41041 1990 68 Lincoln +WOB 41043 1990 46 Linn +WOB 41045 1990 111 Malheur +WOB 41047 1990 26 Marion +WOB 41049 1990 41 Morrow +WOB 41051 1990 79 Multnomah +WOB 41053 1990 8 Polk +WOB 41055 1990 21 Sherman +WOB 41057 1990 94 Tillamook +WOB 41059 1990 41 Umatilla +WOB 41061 1990 4 Union +WOB 41063 1990 16 Wallowa +WOB 41065 1990 37 Wasco +WOB 41067 1990 7 Washington +WOB 41069 1990 1 Wheeler +WOB 41071 1990 7 Yamhill +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_AIRTR.ALO new file mode 100644 index 0000000..89b13fe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_AIRTR.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 42000 2002 2937.256 PA +AIR 42001 2002 0.000 Adams +AIR 42003 2002 1133.180 Allegheny +AIR 42005 2002 0.000 Armstrong +AIR 42007 2002 1.190 Beaver +AIR 42009 2002 0.000 Bedford +AIR 42011 2002 1.430 Berks +AIR 42013 2002 0.000 Blair +AIR 42015 2002 0.000 Bradford +AIR 42017 2002 0.255 Bucks +AIR 42019 2002 0.103 Butler +AIR 42021 2002 12.780 Cambria +AIR 42023 2002 0.000 Cameron +AIR 42025 2002 0.074 Carbon +AIR 42027 2002 1.010 Centre +AIR 42029 2002 1.126 Chester +AIR 42031 2002 0.000 Clarion +AIR 42033 2002 0.011 Clearfield +AIR 42035 2002 0.000 Clinton +AIR 42037 2002 0.105 Columbia +AIR 42039 2002 0.000 Crawford +AIR 42041 2002 0.000 Cumberland +AIR 42043 2002 99.000 Dauphin +AIR 42045 2002 0.000 Delaware +AIR 42047 2002 0.000 Elk +AIR 42049 2002 14.580 Erie +AIR 42051 2002 0.230 Fayette +AIR 42053 2002 0.000 Forest +AIR 42055 2002 0.039 Franklin +AIR 42057 2002 0.000 Fulton +AIR 42059 2002 0.000 Greene +AIR 42061 2002 0.000 Huntingdon +AIR 42063 2002 0.070 Indiana +AIR 42065 2002 0.265 Jefferson +AIR 42067 2002 0.000 Juniata +AIR 42069 2002 0.000 Lackawanna +AIR 42071 2002 0.700 Lancaster +AIR 42073 2002 0.000 Lawrence +AIR 42075 2002 0.000 Lebanon +AIR 42077 2002 98.160 Lehigh +AIR 42079 2002 37.840 Luzerne +AIR 42081 2002 0.366 Lycoming +AIR 42083 2002 0.190 McKean +AIR 42085 2002 0.192 Mercer +AIR 42087 2002 0.000 Mifflin +AIR 42089 2002 0.060 Monroe +AIR 42091 2002 0.889 Montgomery +AIR 42093 2002 0.000 Montour +AIR 42095 2002 0.000 Northampton +AIR 42097 2002 0.000 Northumberland +AIR 42099 2002 0.000 Perry +AIR 42101 2002 1512.070 Philadelphia +AIR 42103 2002 0.000 Pike +AIR 42105 2002 0.000 Potter +AIR 42107 2002 0.100 Schuylkill +AIR 42109 2002 0.000 Snyder +AIR 42111 2002 0.033 Somerset +AIR 42113 2002 0.000 Sullivan +AIR 42115 2002 0.000 Susquehanna +AIR 42117 2002 0.013 Tioga +AIR 42119 2002 0.000 Union +AIR 42121 2002 16.524 Venango +AIR 42123 2002 0.000 Warren +AIR 42125 2002 0.262 Washington +AIR 42127 2002 0.000 Wayne +AIR 42129 2002 3.750 Westmoreland +AIR 42131 2002 0.000 Wyoming +AIR 42133 2002 0.660 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_COAL.ALO new file mode 100644 index 0000000..6f4c1ce --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_COAL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 42000 2002 55781 PA +MIN 42001 2002 0 Adams +MIN 42003 2002 0 Allegheny +MIN 42005 2002 3563 Armstrong +MIN 42007 2002 270 Beaver +MIN 42009 2002 0 Bedford +MIN 42011 2002 0 Berks +MIN 42013 2002 0 Blair +MIN 42015 2002 0 Bradford +MIN 42017 2002 0 Bucks +MIN 42019 2002 0 Butler +MIN 42021 2002 248 Cambria +MIN 42023 2002 0 Cameron +MIN 42025 2002 0 Carbon +MIN 42027 2002 0 Centre +MIN 42029 2002 0 Chester +MIN 42031 2002 0 Clarion +MIN 42033 2002 42 Clearfield +MIN 42035 2002 0 Clinton +MIN 42037 2002 0 Columbia +MIN 42039 2002 0 Crawford +MIN 42041 2002 0 Cumberland +MIN 42043 2002 0 Dauphin +MIN 42045 2002 0 Delaware +MIN 42047 2002 0 Elk +MIN 42049 2002 0 Erie +MIN 42051 2002 0 Fayette +MIN 42053 2002 0 Forest +MIN 42055 2002 0 Franklin +MIN 42057 2002 0 Fulton +MIN 42059 2002 41046 Greene +MIN 42061 2002 0 Huntingdon +MIN 42063 2002 2255 Indiana +MIN 42065 2002 119 Jefferson +MIN 42067 2002 0 Juniata +MIN 42069 2002 0 Lackawanna +MIN 42071 2002 0 Lancaster +MIN 42073 2002 0 Lawrence +MIN 42075 2002 0 Lebanon +MIN 42077 2002 0 Lehigh +MIN 42079 2002 0 Luzerne +MIN 42081 2002 0 Lycoming +MIN 42083 2002 0 McKean +MIN 42085 2002 0 Mercer +MIN 42087 2002 0 Mifflin +MIN 42089 2002 0 Monroe +MIN 42091 2002 0 Montgomery +MIN 42093 2002 0 Montour +MIN 42095 2002 0 Northampton +MIN 42097 2002 193 Northumberland +MIN 42099 2002 0 Perry +MIN 42101 2002 0 Philadelphia +MIN 42103 2002 0 Pike +MIN 42105 2002 0 Potter +MIN 42107 2002 112 Schuylkill +MIN 42109 2002 0 Snyder +MIN 42111 2002 1458 Somerset +MIN 42113 2002 0 Sullivan +MIN 42115 2002 0 Susquehanna +MIN 42117 2002 0 Tioga +MIN 42119 2002 0 Union +MIN 42121 2002 0 Venango +MIN 42123 2002 0 Warren +MIN 42125 2002 6475 Washington +MIN 42127 2002 0 Wayne +MIN 42129 2002 0 Westmoreland +MIN 42131 2002 0 Wyoming +MIN 42133 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_CONST.ALO new file mode 100644 index 0000000..a4b915b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_CONST.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 42000 2003 15095829 PA +CON 42001 2003 144450 Adams +CON 42003 2003 1838321 Allegheny +CON 42005 2003 53332 Armstrong +CON 42007 2003 125273 Beaver +CON 42009 2003 29788 Bedford +CON 42011 2003 531586 Berks +CON 42013 2003 189723 Blair +CON 42015 2003 65376 Bradford +CON 42017 2003 704981 Bucks +CON 42019 2003 267976 Butler +CON 42021 2003 120604 Cambria +CON 42023 2003 2390 Cameron +CON 42025 2003 61108 Carbon +CON 42027 2003 416627 Centre +CON 42029 2003 1015957 Chester +CON 42031 2003 47559 Clarion +CON 42033 2003 50148 Clearfield +CON 42035 2003 46490 Clinton +CON 42037 2003 66005 Columbia +CON 42039 2003 81637 Crawford +CON 42041 2003 314195 Cumberland +CON 42043 2003 351012 Dauphin +CON 42045 2003 348608 Delaware +CON 42047 2003 24827 Elk +CON 42049 2003 265547 Erie +CON 42051 2003 174345 Fayette +CON 42053 2003 10079 Forest +CON 42055 2003 135754 Franklin +CON 42057 2003 20854 Fulton +CON 42059 2003 18389 Greene +CON 42061 2003 49799 Huntingdon +CON 42063 2003 81425 Indiana +CON 42065 2003 44478 Jefferson +CON 42067 2003 10244 Juniata +CON 42069 2003 99846 Lackawanna +CON 42071 2003 653665 Lancaster +CON 42073 2003 72553 Lawrence +CON 42075 2003 257833 Lebanon +CON 42077 2003 508019 Lehigh +CON 42079 2003 234212 Luzerne +CON 42081 2003 91557 Lycoming +CON 42083 2003 15344 McKean +CON 42085 2003 162694 Mercer +CON 42087 2003 48333 Mifflin +CON 42089 2003 387404 Monroe +CON 42091 2003 1055428 Montgomery +CON 42093 2003 18086 Montour +CON 42095 2003 427680 Northampton +CON 42097 2003 74957 Northumberland +CON 42099 2003 19667 Perry +CON 42101 2003 1109319 Philadelphia +CON 42103 2003 190424 Pike +CON 42105 2003 32160 Potter +CON 42107 2003 71529 Schuylkill +CON 42109 2003 21820 Snyder +CON 42111 2003 81952 Somerset +CON 42113 2003 6260 Sullivan +CON 42115 2003 33898 Susquehanna +CON 42117 2003 72324 Tioga +CON 42119 2003 29713 Union +CON 42121 2003 34655 Venango +CON 42123 2003 53529 Warren +CON 42125 2003 304473 Washington +CON 42127 2003 117032 Wayne +CON 42129 2003 301984 Westmoreland +CON 42131 2003 12449 Wyoming +CON 42133 2003 786142 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_FARMS.ALO new file mode 100644 index 0000000..3f35456 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_FARMS.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 42000 2002 4079276 PA +FRM 42001 2002 116083 Adams +FRM 42003 2002 12168 Allegheny +FRM 42005 2002 65018 Armstrong +FRM 42007 2002 27036 Beaver +FRM 42009 2002 86340 Bedford +FRM 42011 2002 154108 Berks +FRM 42013 2002 53053 Blair +FRM 42015 2002 138339 Bradford +FRM 42017 2002 50013 Bucks +FRM 42019 2002 74828 Butler +FRM 42021 2002 46975 Cambria +FRM 42023 2002 458 Cameron +FRM 42025 2002 10497 Carbon +FRM 42027 2002 81008 Centre +FRM 42029 2002 101750 Chester +FRM 42031 2002 47941 Clarion +FRM 42033 2002 27186 Clearfield +FRM 42035 2002 27936 Clinton +FRM 42037 2002 67451 Columbia +FRM 42039 2002 106285 Crawford +FRM 42041 2002 98907 Cumberland +FRM 42043 2002 63110 Dauphin +FRM 42045 2002 559 Delaware +FRM 42047 2002 8368 Elk +FRM 42049 2002 85910 Erie +FRM 42051 2002 51982 Fayette +FRM 42053 2002 1991 Forest +FRM 42055 2002 164875 Franklin +FRM 42057 2002 40823 Fulton +FRM 42059 2002 40812 Greene +FRM 42061 2002 61930 Huntingdon +FRM 42063 2002 73978 Indiana +FRM 42065 2002 39630 Jefferson +FRM 42067 2002 44634 Juniata +FRM 42069 2002 16161 Lackawanna +FRM 42071 2002 298256 Lancaster +FRM 42073 2002 47080 Lawrence +FRM 42075 2002 95442 Lebanon +FRM 42077 2002 66322 Lehigh +FRM 42079 2002 29194 Luzerne +FRM 42081 2002 74971 Lycoming +FRM 42083 2002 12542 McKean +FRM 42085 2002 86844 Mercer +FRM 42087 2002 49865 Mifflin +FRM 42089 2002 14111 Monroe +FRM 42091 2002 25483 Montgomery +FRM 42093 2002 21371 Montour +FRM 42095 2002 60798 Northampton +FRM 42097 2002 80248 Northumberland +FRM 42099 2002 69533 Perry +FRM 42101 2002 458 Philadelphia +FRM 42103 2002 2495 Pike +FRM 42105 2002 33796 Potter +FRM 42107 2002 63729 Schuylkill +FRM 42109 2002 58881 Snyder +FRM 42111 2002 97343 Somerset +FRM 42113 2002 12939 Sullivan +FRM 42115 2002 68159 Susquehanna +FRM 42117 2002 89851 Tioga +FRM 42119 2002 49726 Union +FRM 42121 2002 23472 Venango +FRM 42123 2002 26475 Warren +FRM 42125 2002 93584 Washington +FRM 42127 2002 43085 Wayne +FRM 42129 2002 73476 Westmoreland +FRM 42131 2002 24866 Wyoming +FRM 42133 2002 196739 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_GOLF.ALO new file mode 100644 index 0000000..c7f88d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_GOLF.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 42000 2002 612 PA +GC 42001 2002 11 Adams +GC 42003 2002 48 Allegheny +GC 42005 2002 8 Armstrong +GC 42007 2002 18 Beaver +GC 42009 2002 4 Bedford +GC 42011 2002 21 Berks +GC 42013 2002 5 Blair +GC 42015 2002 2 Bradford +GC 42017 2002 12 Bucks +GC 42019 2002 20 Butler +GC 42021 2002 9 Cambria +GC 42023 2002 1 Cameron +GC 42025 2002 2 Carbon +GC 42027 2002 4 Centre +GC 42029 2002 27 Chester +GC 42031 2002 3 Clarion +GC 42033 2002 3 Clearfield +GC 42035 2002 2 Clinton +GC 42037 2002 4 Columbia +GC 42039 2002 12 Crawford +GC 42041 2002 8 Cumberland +GC 42043 2002 13 Dauphin +GC 42045 2002 12 Delaware +GC 42047 2002 4 Elk +GC 42049 2002 22 Erie +GC 42051 2002 5 Fayette +GC 42053 2002 1 Forest +GC 42055 2002 12 Franklin +GC 42057 2002 2 Fulton +GC 42059 2002 2 Greene +GC 42061 2002 3 Huntingdon +GC 42063 2002 5 Indiana +GC 42065 2002 4 Jefferson +GC 42067 2002 2 Juniata +GC 42069 2002 13 Lackawanna +GC 42071 2002 11 Lancaster +GC 42073 2002 6 Lawrence +GC 42075 2002 7 Lebanon +GC 42077 2002 10 Lehigh +GC 42079 2002 16 Luzerne +GC 42081 2002 1 Lycoming +GC 42083 2002 4 McKean +GC 42085 2002 12 Mercer +GC 42087 2002 1 Mifflin +GC 42089 2002 9 Monroe +GC 42091 2002 52 Montgomery +GC 42093 2002 3 Montour +GC 42095 2002 9 Northampton +GC 42097 2002 3 Northumberland +GC 42099 2002 1 Perry +GC 42101 2002 13 Philadelphia +GC 42103 2002 2 Pike +GC 42105 2002 1 Potter +GC 42107 2002 8 Schuylkill +GC 42109 2002 5 Snyder +GC 42111 2002 9 Somerset +GC 42113 2002 1 Sullivan +GC 42115 2002 3 Susquehanna +GC 42117 2002 3 Tioga +GC 42119 2002 0 Union +GC 42121 2002 5 Venango +GC 42123 2002 4 Warren +GC 42125 2002 19 Washington +GC 42127 2002 6 Wayne +GC 42129 2002 36 Westmoreland +GC 42131 2002 2 Wyoming +GC 42133 2002 26 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_HOLSL.ALO new file mode 100644 index 0000000..5df9688 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_HOLSL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 42000 2002 16272 PA +COM 42001 2002 87 Adams +COM 42003 2002 2196 Allegheny +COM 42005 2002 39 Armstrong +COM 42007 2002 128 Beaver +COM 42009 2002 43 Bedford +COM 42011 2002 436 Berks +COM 42013 2002 156 Blair +COM 42015 2002 58 Bradford +COM 42017 2002 1428 Bucks +COM 42019 2002 282 Butler +COM 42021 2002 140 Cambria +COM 42023 2002 3 Cameron +COM 42025 2002 29 Carbon +COM 42027 2002 115 Centre +COM 42029 2002 996 Chester +COM 42031 2002 39 Clarion +COM 42033 2002 75 Clearfield +COM 42035 2002 29 Clinton +COM 42037 2002 58 Columbia +COM 42039 2002 85 Crawford +COM 42041 2002 258 Cumberland +COM 42043 2002 324 Dauphin +COM 42045 2002 712 Delaware +COM 42047 2002 40 Elk +COM 42049 2002 330 Erie +COM 42051 2002 120 Fayette +COM 42053 2002 2 Forest +COM 42055 2002 127 Franklin +COM 42057 2002 8 Fulton +COM 42059 2002 32 Greene +COM 42061 2002 21 Huntingdon +COM 42063 2002 63 Indiana +COM 42065 2002 52 Jefferson +COM 42067 2002 16 Juniata +COM 42069 2002 262 Lackawanna +COM 42071 2002 673 Lancaster +COM 42073 2002 94 Lawrence +COM 42075 2002 119 Lebanon +COM 42077 2002 532 Lehigh +COM 42079 2002 372 Luzerne +COM 42081 2002 136 Lycoming +COM 42083 2002 39 McKean +COM 42085 2002 122 Mercer +COM 42087 2002 51 Mifflin +COM 42089 2002 120 Monroe +COM 42091 2002 1803 Montgomery +COM 42093 2002 13 Montour +COM 42095 2002 306 Northampton +COM 42097 2002 65 Northumberland +COM 42099 2002 25 Perry +COM 42101 2002 1298 Philadelphia +COM 42103 2002 25 Pike +COM 42105 2002 11 Potter +COM 42107 2002 116 Schuylkill +COM 42109 2002 38 Snyder +COM 42111 2002 80 Somerset +COM 42113 2002 6 Sullivan +COM 42115 2002 36 Susquehanna +COM 42117 2002 31 Tioga +COM 42119 2002 40 Union +COM 42121 2002 53 Venango +COM 42123 2002 34 Warren +COM 42125 2002 294 Washington +COM 42127 2002 49 Wayne +COM 42129 2002 426 Westmoreland +COM 42131 2002 20 Wyoming +COM 42133 2002 456 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_HOUSE.ALO new file mode 100644 index 0000000..9e58d48 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_HOUSE.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 42000 2002 5328266 PA +HOU 42001 2002 37158 Adams +HOU 42003 2002 587705 Allegheny +HOU 42005 2002 32730 Armstrong +HOU 42007 2002 78643 Beaver +HOU 42009 2002 23932 Bedford +HOU 42011 2002 153983 Berks +HOU 42013 2002 55460 Blair +HOU 42015 2002 29056 Bradford +HOU 42017 2002 230876 Bucks +HOU 42019 2002 72445 Butler +HOU 42021 2002 66077 Cambria +HOU 42023 2002 4612 Cameron +HOU 42025 2002 30878 Carbon +HOU 42027 2002 54718 Centre +HOU 42029 2002 170150 Chester +HOU 42031 2002 19712 Clarion +HOU 42033 2002 38306 Clearfield +HOU 42035 2002 18491 Clinton +HOU 42037 2002 28220 Columbia +HOU 42039 2002 42969 Crawford +HOU 42041 2002 89241 Cumberland +HOU 42043 2002 112706 Dauphin +HOU 42045 2002 219262 Delaware +HOU 42047 2002 18274 Elk +HOU 42049 2002 115747 Erie +HOU 42051 2002 67170 Fayette +HOU 42053 2002 8828 Forest +HOU 42055 2002 55370 Franklin +HOU 42057 2002 6944 Fulton +HOU 42059 2002 16950 Greene +HOU 42061 2002 21451 Huntingdon +HOU 42063 2002 37927 Indiana +HOU 42065 2002 22392 Jefferson +HOU 42067 2002 10174 Juniata +HOU 42069 2002 95942 Lackawanna +HOU 42071 2002 184383 Lancaster +HOU 42073 2002 40142 Lawrence +HOU 42075 2002 50437 Lebanon +HOU 42077 2002 131759 Lehigh +HOU 42079 2002 145454 Luzerne +HOU 42081 2002 53109 Lycoming +HOU 42083 2002 21775 McKean +HOU 42085 2002 50654 Mercer +HOU 42087 2002 20995 Mifflin +HOU 42089 2002 70844 Monroe +HOU 42091 2002 303322 Montgomery +HOU 42093 2002 7755 Montour +HOU 42095 2002 109527 Northampton +HOU 42097 2002 43374 Northumberland +HOU 42099 2002 19306 Perry +HOU 42101 2002 660450 Philadelphia +HOU 42103 2002 35737 Pike +HOU 42105 2002 12362 Potter +HOU 42107 2002 68231 Schuylkill +HOU 42109 2002 15169 Snyder +HOU 42111 2002 37689 Somerset +HOU 42113 2002 6043 Sullivan +HOU 42115 2002 22114 Susquehanna +HOU 42117 2002 20327 Tioga +HOU 42119 2002 14914 Union +HOU 42121 2002 27155 Venango +HOU 42123 2002 23243 Warren +HOU 42125 2002 89074 Washington +HOU 42127 2002 31081 Wayne +HOU 42129 2002 163191 Westmoreland +HOU 42131 2002 12951 Wyoming +HOU 42133 2002 161200 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_LOGGN.ALO new file mode 100644 index 0000000..d38ad7f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_LOGGN.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 42000 2002 373187390 PA +LOG 42001 2002 10919356 Adams +LOG 42003 2002 1148011 Allegheny +LOG 42005 2002 5360383 Armstrong +LOG 42007 2002 229176 Beaver +LOG 42009 2002 10242802 Bedford +LOG 42011 2002 2162352 Berks +LOG 42013 2002 2952022 Blair +LOG 42015 2002 7291129 Bradford +LOG 42017 2002 350554 Bucks +LOG 42019 2002 3270420 Butler +LOG 42021 2002 8123961 Cambria +LOG 42023 2002 3261132 Cameron +LOG 42025 2002 689263 Carbon +LOG 42027 2002 8818515 Centre +LOG 42029 2002 2649674 Chester +LOG 42031 2002 5840635 Clarion +LOG 42033 2002 17549089 Clearfield +LOG 42035 2002 5898094 Clinton +LOG 42037 2002 5712800 Columbia +LOG 42039 2002 5404972 Crawford +LOG 42041 2002 2334311 Cumberland +LOG 42043 2002 3036939 Dauphin +LOG 42045 2002 105193 Delaware +LOG 42047 2002 13188681 Elk +LOG 42049 2002 1803643 Erie +LOG 42051 2002 6120412 Fayette +LOG 42053 2002 7063627 Forest +LOG 42055 2002 10688752 Franklin +LOG 42057 2002 7444928 Fulton +LOG 42059 2002 2633773 Greene +LOG 42061 2002 12122602 Huntingdon +LOG 42063 2002 7159993 Indiana +LOG 42065 2002 9794188 Jefferson +LOG 42067 2002 8164811 Juniata +LOG 42069 2002 1600628 Lackawanna +LOG 42071 2002 3124521 Lancaster +LOG 42073 2002 2508556 Lawrence +LOG 42075 2002 1965139 Lebanon +LOG 42077 2002 435403 Lehigh +LOG 42079 2002 3825560 Luzerne +LOG 42081 2002 11573029 Lycoming +LOG 42083 2002 7822101 McKean +LOG 42085 2002 5619147 Mercer +LOG 42087 2002 5307419 Mifflin +LOG 42089 2002 1381690 Monroe +LOG 42091 2002 631160 Montgomery +LOG 42093 2002 118648 Montour +LOG 42095 2002 151121 Northampton +LOG 42097 2002 2184653 Northumberland +LOG 42099 2002 7410249 Perry +LOG 42101 2002 53144 Philadelphia +LOG 42103 2002 1966029 Pike +LOG 42105 2002 25382512 Potter +LOG 42107 2002 7946671 Schuylkill +LOG 42109 2002 4314543 Snyder +LOG 42111 2002 10707566 Somerset +LOG 42113 2002 9302058 Sullivan +LOG 42115 2002 5751060 Susquehanna +LOG 42117 2002 9365537 Tioga +LOG 42119 2002 1828779 Union +LOG 42121 2002 8909474 Venango +LOG 42123 2002 13196240 Warren +LOG 42125 2002 1733088 Washington +LOG 42127 2002 4084164 Wayne +LOG 42129 2002 4957558 Westmoreland +LOG 42131 2002 3965513 Wyoming +LOG 42133 2002 4528239 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_LSCAP.ALO new file mode 100644 index 0000000..5282203 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_LSCAP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 42000 2002 15590 PA +LSC 42001 2002 18 Adams +LSC 42003 2002 1290 Allegheny +LSC 42005 2002 23 Armstrong +LSC 42007 2002 75 Beaver +LSC 42009 2002 33 Bedford +LSC 42011 2002 416 Berks +LSC 42013 2002 90 Blair +LSC 42015 2002 33 Bradford +LSC 42017 2002 1513 Bucks +LSC 42019 2002 149 Butler +LSC 42021 2002 109 Cambria +LSC 42023 2002 0 Cameron +LSC 42025 2002 33 Carbon +LSC 42027 2002 118 Centre +LSC 42029 2002 1424 Chester +LSC 42031 2002 33 Clarion +LSC 42033 2002 33 Clearfield +LSC 42035 2002 194 Clinton +LSC 42037 2002 18 Columbia +LSC 42039 2002 194 Crawford +LSC 42041 2002 330 Cumberland +LSC 42043 2002 537 Dauphin +LSC 42045 2002 779 Delaware +LSC 42047 2002 33 Elk +LSC 42049 2002 216 Erie +LSC 42051 2002 55 Fayette +LSC 42053 2002 33 Forest +LSC 42055 2002 106 Franklin +LSC 42057 2002 33 Fulton +LSC 42059 2002 33 Greene +LSC 42061 2002 195 Huntingdon +LSC 42063 2002 28 Indiana +LSC 42065 2002 33 Jefferson +LSC 42067 2002 33 Juniata +LSC 42069 2002 142 Lackawanna +LSC 42071 2002 699 Lancaster +LSC 42073 2002 25 Lawrence +LSC 42075 2002 82 Lebanon +LSC 42077 2002 577 Lehigh +LSC 42079 2002 419 Luzerne +LSC 42081 2002 32 Lycoming +LSC 42083 2002 22 McKean +LSC 42085 2002 41 Mercer +LSC 42087 2002 33 Mifflin +LSC 42089 2002 84 Monroe +LSC 42091 2002 2439 Montgomery +LSC 42093 2002 33 Montour +LSC 42095 2002 235 Northampton +LSC 42097 2002 195 Northumberland +LSC 42099 2002 33 Perry +LSC 42101 2002 348 Philadelphia +LSC 42103 2002 33 Pike +LSC 42105 2002 33 Potter +LSC 42107 2002 20 Schuylkill +LSC 42109 2002 195 Snyder +LSC 42111 2002 31 Somerset +LSC 42113 2002 33 Sullivan +LSC 42115 2002 33 Susquehanna +LSC 42117 2002 33 Tioga +LSC 42119 2002 195 Union +LSC 42121 2002 15 Venango +LSC 42123 2002 33 Warren +LSC 42125 2002 147 Washington +LSC 42127 2002 38 Wayne +LSC 42129 2002 644 Westmoreland +LSC 42131 2002 33 Wyoming +LSC 42133 2002 395 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_MNFG.ALO new file mode 100644 index 0000000..c6b99e5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_MNFG.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 42000 2002 1333729 PA +MFG 42001 2002 12056 Adams +MFG 42003 2002 92789 Allegheny +MFG 42005 2002 5574 Armstrong +MFG 42007 2002 18674 Beaver +MFG 42009 2002 6496 Bedford +MFG 42011 2002 61402 Berks +MFG 42013 2002 15160 Blair +MFG 42015 2002 10162 Bradford +MFG 42017 2002 63067 Bucks +MFG 42019 2002 26196 Butler +MFG 42021 2002 9850 Cambria +MFG 42023 2002 2203 Cameron +MFG 42025 2002 4768 Carbon +MFG 42027 2002 12881 Centre +MFG 42029 2002 37754 Chester +MFG 42031 2002 4976 Clarion +MFG 42033 2002 7057 Clearfield +MFG 42035 2002 4920 Clinton +MFG 42037 2002 10801 Columbia +MFG 42039 2002 14912 Crawford +MFG 42041 2002 19030 Cumberland +MFG 42043 2002 18166 Dauphin +MFG 42045 2002 32772 Delaware +MFG 42047 2002 12208 Elk +MFG 42049 2002 56902 Erie +MFG 42051 2002 6824 Fayette +MFG 42053 2002 469 Forest +MFG 42055 2002 16430 Franklin +MFG 42057 2002 4008 Fulton +MFG 42059 2002 1259 Greene +MFG 42061 2002 3960 Huntingdon +MFG 42063 2002 7339 Indiana +MFG 42065 2002 7688 Jefferson +MFG 42067 2002 3380 Juniata +MFG 42069 2002 23704 Lackawanna +MFG 42071 2002 90303 Lancaster +MFG 42073 2002 9738 Lawrence +MFG 42075 2002 16656 Lebanon +MFG 42077 2002 39368 Lehigh +MFG 42079 2002 37468 Luzerne +MFG 42081 2002 22877 Lycoming +MFG 42083 2002 9498 McKean +MFG 42085 2002 16746 Mercer +MFG 42087 2002 10784 Mifflin +MFG 42089 2002 10176 Monroe +MFG 42091 2002 102437 Montgomery +MFG 42093 2002 2393 Montour +MFG 42095 2002 26231 Northampton +MFG 42097 2002 10565 Northumberland +MFG 42099 2002 1783 Perry +MFG 42101 2002 68000 Philadelphia +MFG 42103 2002 771 Pike +MFG 42105 2002 2084 Potter +MFG 42107 2002 20570 Schuylkill +MFG 42109 2002 9729 Snyder +MFG 42111 2002 9088 Somerset +MFG 42113 2002 496 Sullivan +MFG 42115 2002 1424 Susquehanna +MFG 42117 2002 5324 Tioga +MFG 42119 2002 6583 Union +MFG 42121 2002 8226 Venango +MFG 42123 2002 6888 Warren +MFG 42125 2002 22124 Washington +MFG 42127 2002 1676 Wayne +MFG 42129 2002 43193 Westmoreland +MFG 42131 2002 6368 Wyoming +MFG 42133 2002 78325 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_OIL.ALO new file mode 100644 index 0000000..b081c3f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_OIL.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 42000 2002 2398 PA +OIL 42001 2002 0 Adams +OIL 42003 2002 339 Allegheny +OIL 42005 2002 99 Armstrong +OIL 42007 2002 15 Beaver +OIL 42009 2002 0 Bedford +OIL 42011 2002 56 Berks +OIL 42013 2002 0 Blair +OIL 42015 2002 0 Bradford +OIL 42017 2002 25 Bucks +OIL 42019 2002 16 Butler +OIL 42021 2002 165 Cambria +OIL 42023 2002 0 Cameron +OIL 42025 2002 15 Carbon +OIL 42027 2002 25 Centre +OIL 42029 2002 10 Chester +OIL 42031 2002 121 Clarion +OIL 42033 2002 92 Clearfield +OIL 42035 2002 0 Clinton +OIL 42037 2002 0 Columbia +OIL 42039 2002 71 Crawford +OIL 42041 2002 0 Cumberland +OIL 42043 2002 10 Dauphin +OIL 42045 2002 10 Delaware +OIL 42047 2002 0 Elk +OIL 42049 2002 44 Erie +OIL 42051 2002 10 Fayette +OIL 42053 2002 10 Forest +OIL 42055 2002 0 Franklin +OIL 42057 2002 0 Fulton +OIL 42059 2002 10 Greene +OIL 42061 2002 15 Huntingdon +OIL 42063 2002 506 Indiana +OIL 42065 2002 71 Jefferson +OIL 42067 2002 15 Juniata +OIL 42069 2002 0 Lackawanna +OIL 42071 2002 15 Lancaster +OIL 42073 2002 0 Lawrence +OIL 42075 2002 0 Lebanon +OIL 42077 2002 10 Lehigh +OIL 42079 2002 0 Luzerne +OIL 42081 2002 15 Lycoming +OIL 42083 2002 141 McKean +OIL 42085 2002 56 Mercer +OIL 42087 2002 0 Mifflin +OIL 42089 2002 0 Monroe +OIL 42091 2002 72 Montgomery +OIL 42093 2002 0 Montour +OIL 42095 2002 15 Northampton +OIL 42097 2002 0 Northumberland +OIL 42099 2002 0 Perry +OIL 42101 2002 10 Philadelphia +OIL 42103 2002 0 Pike +OIL 42105 2002 10 Potter +OIL 42107 2002 10 Schuylkill +OIL 42109 2002 0 Snyder +OIL 42111 2002 25 Somerset +OIL 42113 2002 10 Sullivan +OIL 42115 2002 10 Susquehanna +OIL 42117 2002 0 Tioga +OIL 42119 2002 0 Union +OIL 42121 2002 43 Venango +OIL 42123 2002 147 Warren +OIL 42125 2002 10 Washington +OIL 42127 2002 0 Wayne +OIL 42129 2002 34 Westmoreland +OIL 42131 2002 15 Wyoming +OIL 42133 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_POP.ALO new file mode 100644 index 0000000..a86a021 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_POP.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 42000 2002 12328459 PA +POP 42001 2002 94536 Adams +POP 42003 2002 1266196 Allegheny +POP 42005 2002 71831 Armstrong +POP 42007 2002 179214 Beaver +POP 42009 2002 49895 Bedford +POP 42011 2002 381858 Berks +POP 42013 2002 127669 Blair +POP 42015 2002 62743 Bradford +POP 42017 2002 609285 Bucks +POP 42019 2002 178203 Butler +POP 42021 2002 150405 Cambria +POP 42023 2002 5849 Cameron +POP 42025 2002 59754 Carbon +POP 42027 2002 138599 Centre +POP 42029 2002 450038 Chester +POP 42031 2002 41232 Clarion +POP 42033 2002 83372 Clearfield +POP 42035 2002 37554 Clinton +POP 42037 2002 64519 Columbia +POP 42039 2002 90128 Crawford +POP 42041 2002 217556 Cumberland +POP 42043 2002 252702 Dauphin +POP 42045 2002 553546 Delaware +POP 42047 2002 34536 Elk +POP 42049 2002 282379 Erie +POP 42051 2002 146769 Fayette +POP 42053 2002 4982 Forest +POP 42055 2002 131485 Franklin +POP 42057 2002 14342 Fulton +POP 42059 2002 40487 Greene +POP 42061 2002 45830 Huntingdon +POP 42063 2002 89086 Indiana +POP 42065 2002 45812 Jefferson +POP 42067 2002 22907 Juniata +POP 42069 2002 211069 Lackawanna +POP 42071 2002 478580 Lancaster +POP 42073 2002 93829 Lawrence +POP 42075 2002 121633 Lebanon +POP 42077 2002 317305 Lehigh +POP 42079 2002 314752 Luzerne +POP 42081 2002 118820 Lycoming +POP 42083 2002 45486 McKean +POP 42085 2002 119826 Mercer +POP 42087 2002 46514 Mifflin +POP 42089 2002 149205 Monroe +POP 42091 2002 764456 Montgomery +POP 42093 2002 18188 Montour +POP 42095 2002 273682 Northampton +POP 42097 2002 93488 Northumberland +POP 42099 2002 43938 Perry +POP 42101 2002 1486712 Philadelphia +POP 42103 2002 50086 Pike +POP 42105 2002 18167 Potter +POP 42107 2002 148828 Schuylkill +POP 42109 2002 37930 Snyder +POP 42111 2002 79641 Somerset +POP 42113 2002 6530 Sullivan +POP 42115 2002 41974 Susquehanna +POP 42117 2002 41616 Tioga +POP 42119 2002 42205 Union +POP 42121 2002 56901 Venango +POP 42123 2002 43198 Warren +POP 42125 2002 203840 Washington +POP 42127 2002 48476 Wayne +POP 42129 2002 368476 Westmoreland +POP 42131 2002 28003 Wyoming +POP 42133 2002 389806 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_RAIL.ALO new file mode 100644 index 0000000..6e8158a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_RAIL.ALO @@ -0,0 +1,94 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 42000 2002 18518.820 PA +RR 42001 2002 12.250 Adams +RR 42003 2002 1499.010 Allegheny +RR 42005 2002 8.670 Armstrong +RR 42007 2002 1125.510 Beaver +RR 42009 2002 175.670 Bedford +RR 42011 2002 702.800 Berks +RR 42013 2002 507.260 Blair +RR 42015 2002 30.260 Bradford +RR 42017 2002 75.010 Bucks +RR 42019 2002 16.350 Butler +RR 42021 2002 482.270 Cambria +RR 42023 2002 52.070 Cameron +RR 42025 2002 12.880 Carbon +RR 42027 2002 0.000 Centre +RR 42029 2002 365.820 Chester +RR 42031 2002 0.000 Clarion +RR 42033 2002 0.000 Clearfield +RR 42035 2002 70.620 Clinton +RR 42037 2002 16.340 Columbia +RR 42039 2002 14.460 Crawford +RR 42041 2002 346.350 Cumberland +RR 42043 2002 1358.770 Dauphin +RR 42045 2002 146.640 Delaware +RR 42047 2002 0.000 Elk +RR 42049 2002 958.260 Erie +RR 42051 2002 639.930 Fayette +RR 42053 2002 0.000 Forest +RR 42055 2002 69.790 Franklin +RR 42057 2002 0.000 Fulton +RR 42059 2002 662.890 Greene +RR 42061 2002 638.680 Huntingdon +RR 42063 2002 382.270 Indiana +RR 42065 2002 8.230 Jefferson +RR 42067 2002 596.180 Juniata +RR 42069 2002 70.960 Lackawanna +RR 42071 2002 656.650 Lancaster +RR 42073 2002 404.400 Lawrence +RR 42075 2002 563.240 Lebanon +RR 42077 2002 193.570 Lehigh +RR 42079 2002 39.700 Luzerne +RR 42081 2002 43.080 Lycoming +RR 42083 2002 51.130 McKean +RR 42085 2002 17.940 Mercer +RR 42087 2002 868.420 Mifflin +RR 42089 2002 2.030 Monroe +RR 42091 2002 289.390 Montgomery +RR 42093 2002 11.190 Montour +RR 42095 2002 87.460 Northampton +RR 42097 2002 61.620 Northumberland +RR 42099 2002 864.340 Perry +RR 42101 2002 223.610 Philadelphia +RR 42103 2002 38.790 Pike +RR 42105 2002 22.650 Potter +RR 42107 2002 0.000 Schuylkill +RR 42109 2002 5.180 Snyder +RR 42111 2002 412.780 Somerset +RR 42113 2002 0.000 Sullivan +RR 42115 2002 81.530 Susquehanna +RR 42117 2002 0.000 Tioga +RR 42119 2002 0.860 Union +RR 42121 2002 9.840 Venango +RR 42123 2002 5.510 Warren +RR 42125 2002 815.520 Washington +RR 42127 2002 0.000 Wayne +RR 42129 2002 1397.280 Westmoreland +RR 42131 2002 74.200 Wyoming +RR 42133 2002 230.710 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_RVPRK.ALO new file mode 100644 index 0000000..d2cd310 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_RVPRK.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 42000 2002 352 PA +RVP 42001 2002 9 Adams +RVP 42003 2002 5 Allegheny +RVP 42005 2002 1 Armstrong +RVP 42007 2002 2 Beaver +RVP 42009 2002 4 Bedford +RVP 42011 2002 10 Berks +RVP 42013 2002 0 Blair +RVP 42015 2002 3 Bradford +RVP 42017 2002 12 Bucks +RVP 42019 2002 7 Butler +RVP 42021 2002 2 Cambria +RVP 42023 2002 0 Cameron +RVP 42025 2002 5 Carbon +RVP 42027 2002 5 Centre +RVP 42029 2002 12 Chester +RVP 42031 2002 3 Clarion +RVP 42033 2002 2 Clearfield +RVP 42035 2002 1 Clinton +RVP 42037 2002 4 Columbia +RVP 42039 2002 5 Crawford +RVP 42041 2002 5 Cumberland +RVP 42043 2002 6 Dauphin +RVP 42045 2002 6 Delaware +RVP 42047 2002 1 Elk +RVP 42049 2002 8 Erie +RVP 42051 2002 8 Fayette +RVP 42053 2002 3 Forest +RVP 42055 2002 4 Franklin +RVP 42057 2002 1 Fulton +RVP 42059 2002 0 Greene +RVP 42061 2002 5 Huntingdon +RVP 42063 2002 0 Indiana +RVP 42065 2002 1 Jefferson +RVP 42067 2002 1 Juniata +RVP 42069 2002 0 Lackawanna +RVP 42071 2002 29 Lancaster +RVP 42073 2002 4 Lawrence +RVP 42075 2002 7 Lebanon +RVP 42077 2002 3 Lehigh +RVP 42079 2002 5 Luzerne +RVP 42081 2002 3 Lycoming +RVP 42083 2002 4 McKean +RVP 42085 2002 7 Mercer +RVP 42087 2002 0 Mifflin +RVP 42089 2002 20 Monroe +RVP 42091 2002 16 Montgomery +RVP 42093 2002 0 Montour +RVP 42095 2002 4 Northampton +RVP 42097 2002 3 Northumberland +RVP 42099 2002 5 Perry +RVP 42101 2002 4 Philadelphia +RVP 42103 2002 14 Pike +RVP 42105 2002 1 Potter +RVP 42107 2002 5 Schuylkill +RVP 42109 2002 0 Snyder +RVP 42111 2002 8 Somerset +RVP 42113 2002 3 Sullivan +RVP 42115 2002 4 Susquehanna +RVP 42117 2002 4 Tioga +RVP 42119 2002 7 Union +RVP 42121 2002 0 Venango +RVP 42123 2002 1 Warren +RVP 42125 2002 2 Washington +RVP 42127 2002 31 Wayne +RVP 42129 2002 7 Westmoreland +RVP 42131 2002 6 Wyoming +RVP 42133 2002 4 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_SBC.ALO new file mode 100644 index 0000000..208e573 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_SBC.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 42000 2002 15590 PA +SBC 42001 2002 18 Adams +SBC 42003 2002 1290 Allegheny +SBC 42005 2002 23 Armstrong +SBC 42007 2002 75 Beaver +SBC 42009 2002 81 Bedford +SBC 42011 2002 416 Berks +SBC 42013 2002 90 Blair +SBC 42015 2002 102 Bradford +SBC 42017 2002 1513 Bucks +SBC 42019 2002 149 Butler +SBC 42021 2002 109 Cambria +SBC 42023 2002 0 Cameron +SBC 42025 2002 97 Carbon +SBC 42027 2002 118 Centre +SBC 42029 2002 1424 Chester +SBC 42031 2002 67 Clarion +SBC 42033 2002 135 Clearfield +SBC 42035 2002 61 Clinton +SBC 42037 2002 18 Columbia +SBC 42039 2002 146 Crawford +SBC 42041 2002 330 Cumberland +SBC 42043 2002 537 Dauphin +SBC 42045 2002 779 Delaware +SBC 42047 2002 56 Elk +SBC 42049 2002 216 Erie +SBC 42051 2002 55 Fayette +SBC 42053 2002 8 Forest +SBC 42055 2002 106 Franklin +SBC 42057 2002 23 Fulton +SBC 42059 2002 66 Greene +SBC 42061 2002 74 Huntingdon +SBC 42063 2002 28 Indiana +SBC 42065 2002 74 Jefferson +SBC 42067 2002 37 Juniata +SBC 42069 2002 142 Lackawanna +SBC 42071 2002 699 Lancaster +SBC 42073 2002 25 Lawrence +SBC 42075 2002 82 Lebanon +SBC 42077 2002 577 Lehigh +SBC 42079 2002 419 Luzerne +SBC 42081 2002 32 Lycoming +SBC 42083 2002 22 McKean +SBC 42085 2002 41 Mercer +SBC 42087 2002 76 Mifflin +SBC 42089 2002 84 Monroe +SBC 42091 2002 2439 Montgomery +SBC 42093 2002 30 Montour +SBC 42095 2002 235 Northampton +SBC 42097 2002 153 Northumberland +SBC 42099 2002 71 Perry +SBC 42101 2002 348 Philadelphia +SBC 42103 2002 81 Pike +SBC 42105 2002 30 Potter +SBC 42107 2002 20 Schuylkill +SBC 42109 2002 62 Snyder +SBC 42111 2002 31 Somerset +SBC 42113 2002 11 Sullivan +SBC 42115 2002 68 Susquehanna +SBC 42117 2002 68 Tioga +SBC 42119 2002 69 Union +SBC 42121 2002 15 Venango +SBC 42123 2002 70 Warren +SBC 42125 2002 147 Washington +SBC 42127 2002 38 Wayne +SBC 42129 2002 644 Westmoreland +SBC 42131 2002 45 Wyoming +SBC 42133 2002 395 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_SBR.ALO new file mode 100644 index 0000000..5b2540f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_SBR.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 42000 2002 5328266 PA +SBR 42001 2002 37158 Adams +SBR 42003 2002 587705 Allegheny +SBR 42005 2002 32730 Armstrong +SBR 42007 2002 78643 Beaver +SBR 42009 2002 23932 Bedford +SBR 42011 2002 153983 Berks +SBR 42013 2002 55460 Blair +SBR 42015 2002 29056 Bradford +SBR 42017 2002 230876 Bucks +SBR 42019 2002 72445 Butler +SBR 42021 2002 66077 Cambria +SBR 42023 2002 4612 Cameron +SBR 42025 2002 30878 Carbon +SBR 42027 2002 54718 Centre +SBR 42029 2002 170150 Chester +SBR 42031 2002 19712 Clarion +SBR 42033 2002 38306 Clearfield +SBR 42035 2002 18491 Clinton +SBR 42037 2002 28220 Columbia +SBR 42039 2002 42969 Crawford +SBR 42041 2002 89241 Cumberland +SBR 42043 2002 112706 Dauphin +SBR 42045 2002 219262 Delaware +SBR 42047 2002 18274 Elk +SBR 42049 2002 115747 Erie +SBR 42051 2002 67170 Fayette +SBR 42053 2002 8828 Forest +SBR 42055 2002 55370 Franklin +SBR 42057 2002 6944 Fulton +SBR 42059 2002 16950 Greene +SBR 42061 2002 21451 Huntingdon +SBR 42063 2002 37927 Indiana +SBR 42065 2002 22392 Jefferson +SBR 42067 2002 10174 Juniata +SBR 42069 2002 95942 Lackawanna +SBR 42071 2002 184383 Lancaster +SBR 42073 2002 40142 Lawrence +SBR 42075 2002 50437 Lebanon +SBR 42077 2002 131759 Lehigh +SBR 42079 2002 145454 Luzerne +SBR 42081 2002 53109 Lycoming +SBR 42083 2002 21775 McKean +SBR 42085 2002 50654 Mercer +SBR 42087 2002 20995 Mifflin +SBR 42089 2002 70844 Monroe +SBR 42091 2002 303322 Montgomery +SBR 42093 2002 7755 Montour +SBR 42095 2002 109527 Northampton +SBR 42097 2002 43374 Northumberland +SBR 42099 2002 19306 Perry +SBR 42101 2002 660450 Philadelphia +SBR 42103 2002 35737 Pike +SBR 42105 2002 12362 Potter +SBR 42107 2002 68231 Schuylkill +SBR 42109 2002 15169 Snyder +SBR 42111 2002 37689 Somerset +SBR 42113 2002 6043 Sullivan +SBR 42115 2002 22114 Susquehanna +SBR 42117 2002 20327 Tioga +SBR 42119 2002 14914 Union +SBR 42121 2002 27155 Venango +SBR 42123 2002 23243 Warren +SBR 42125 2002 89074 Washington +SBR 42127 2002 31081 Wayne +SBR 42129 2002 163191 Westmoreland +SBR 42131 2002 12951 Wyoming +SBR 42133 2002 161200 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_SNOWM.ALO new file mode 100644 index 0000000..b6ec606 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_SNOWM.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 42000 2002 978 PA +SNM 42001 2002 0 Adams +SNM 42003 2002 0 Allegheny +SNM 42005 2002 14 Armstrong +SNM 42007 2002 0 Beaver +SNM 42009 2002 0 Bedford +SNM 42011 2002 0 Berks +SNM 42013 2002 0 Blair +SNM 42015 2002 16 Bradford +SNM 42017 2002 0 Bucks +SNM 42019 2002 6 Butler +SNM 42021 2002 7 Cambria +SNM 42023 2002 171 Cameron +SNM 42025 2002 0 Carbon +SNM 42027 2002 7 Centre +SNM 42029 2002 0 Chester +SNM 42031 2002 24 Clarion +SNM 42033 2002 12 Clearfield +SNM 42035 2002 27 Clinton +SNM 42037 2002 0 Columbia +SNM 42039 2002 11 Crawford +SNM 42041 2002 0 Cumberland +SNM 42043 2002 0 Dauphin +SNM 42045 2002 0 Delaware +SNM 42047 2002 29 Elk +SNM 42049 2002 4 Erie +SNM 42051 2002 0 Fayette +SNM 42053 2002 201 Forest +SNM 42055 2002 0 Franklin +SNM 42057 2002 0 Fulton +SNM 42059 2002 0 Greene +SNM 42061 2002 0 Huntingdon +SNM 42063 2002 11 Indiana +SNM 42065 2002 22 Jefferson +SNM 42067 2002 0 Juniata +SNM 42069 2002 0 Lackawanna +SNM 42071 2002 0 Lancaster +SNM 42073 2002 11 Lawrence +SNM 42075 2002 0 Lebanon +SNM 42077 2002 0 Lehigh +SNM 42079 2002 0 Luzerne +SNM 42081 2002 8 Lycoming +SNM 42083 2002 22 McKean +SNM 42085 2002 8 Mercer +SNM 42087 2002 0 Mifflin +SNM 42089 2002 0 Monroe +SNM 42091 2002 0 Montgomery +SNM 42093 2002 0 Montour +SNM 42095 2002 0 Northampton +SNM 42097 2002 0 Northumberland +SNM 42099 2002 0 Perry +SNM 42101 2002 0 Philadelphia +SNM 42103 2002 0 Pike +SNM 42105 2002 55 Potter +SNM 42107 2002 0 Schuylkill +SNM 42109 2002 0 Snyder +SNM 42111 2002 13 Somerset +SNM 42113 2002 153 Sullivan +SNM 42115 2002 24 Susquehanna +SNM 42117 2002 24 Tioga +SNM 42119 2002 0 Union +SNM 42121 2002 18 Venango +SNM 42123 2002 23 Warren +SNM 42125 2002 0 Washington +SNM 42127 2002 21 Wayne +SNM 42129 2002 0 Westmoreland +SNM 42131 2002 36 Wyoming +SNM 42133 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_WIB.ALO new file mode 100644 index 0000000..7aa1973 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_WIB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 42000 1990 1566 PA +WIB 42001 1990 4 Adams +WIB 42003 1990 38 Allegheny +WIB 42005 1990 27 Armstrong +WIB 42007 1990 22 Beaver +WIB 42009 1990 7 Bedford +WIB 42011 1990 17 Berks +WIB 42013 1990 3 Blair +WIB 42015 1990 27 Bradford +WIB 42017 1990 38 Bucks +WIB 42019 1990 16 Butler +WIB 42021 1990 14 Cambria +WIB 42023 1990 4 Cameron +WIB 42025 1990 16 Carbon +WIB 42027 1990 11 Centre +WIB 42029 1990 10 Chester +WIB 42031 1990 17 Clarion +WIB 42033 1990 17 Clearfield +WIB 42035 1990 19 Clinton +WIB 42037 1990 11 Columbia +WIB 42039 1990 65 Crawford +WIB 42041 1990 3 Cumberland +WIB 42043 1990 84 Dauphin +WIB 42045 1990 17 Delaware +WIB 42047 1990 9 Elk +WIB 42049 1990 317 Erie +WIB 42051 1990 20 Fayette +WIB 42053 1990 8 Forest +WIB 42055 1990 2 Franklin +WIB 42057 1990 1 Fulton +WIB 42059 1990 5 Greene +WIB 42061 1990 39 Huntingdon +WIB 42063 1990 12 Indiana +WIB 42065 1990 4 Jefferson +WIB 42067 1990 5 Juniata +WIB 42069 1990 15 Lackawanna +WIB 42071 1990 90 Lancaster +WIB 42073 1990 6 Lawrence +WIB 42075 1990 2 Lebanon +WIB 42077 1990 4 Lehigh +WIB 42079 1990 42 Luzerne +WIB 42081 1990 23 Lycoming +WIB 42083 1990 7 McKean +WIB 42085 1990 28 Mercer +WIB 42087 1990 7 Mifflin +WIB 42089 1990 23 Monroe +WIB 42091 1990 11 Montgomery +WIB 42093 1990 4 Montour +WIB 42095 1990 9 Northampton +WIB 42097 1990 45 Northumberland +WIB 42099 1990 6 Perry +WIB 42101 1990 20 Philadelphia +WIB 42103 1990 51 Pike +WIB 42105 1990 1 Potter +WIB 42107 1990 10 Schuylkill +WIB 42109 1990 2 Snyder +WIB 42111 1990 17 Somerset +WIB 42113 1990 6 Sullivan +WIB 42115 1990 24 Susquehanna +WIB 42117 1990 9 Tioga +WIB 42119 1990 1 Union +WIB 42121 1990 21 Venango +WIB 42123 1990 37 Warren +WIB 42125 1990 10 Washington +WIB 42127 1990 55 Wayne +WIB 42129 1990 36 Westmoreland +WIB 42131 1990 20 Wyoming +WIB 42133 1990 15 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PA_WOB.ALO new file mode 100644 index 0000000..f2dd6c0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PA_WOB.ALO @@ -0,0 +1,92 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 42000 1990 1306 PA +WOB 42001 1990 4 Adams +WOB 42003 1990 38 Allegheny +WOB 42005 1990 27 Armstrong +WOB 42007 1990 22 Beaver +WOB 42009 1990 7 Bedford +WOB 42011 1990 17 Berks +WOB 42013 1990 3 Blair +WOB 42015 1990 27 Bradford +WOB 42017 1990 38 Bucks +WOB 42019 1990 16 Butler +WOB 42021 1990 14 Cambria +WOB 42023 1990 4 Cameron +WOB 42025 1990 16 Carbon +WOB 42027 1990 11 Centre +WOB 42029 1990 10 Chester +WOB 42031 1990 17 Clarion +WOB 42033 1990 17 Clearfield +WOB 42035 1990 19 Clinton +WOB 42037 1990 11 Columbia +WOB 42039 1990 65 Crawford +WOB 42041 1990 3 Cumberland +WOB 42043 1990 84 Dauphin +WOB 42045 1990 17 Delaware +WOB 42047 1990 9 Elk +WOB 42049 1990 57 Erie +WOB 42051 1990 20 Fayette +WOB 42053 1990 8 Forest +WOB 42055 1990 2 Franklin +WOB 42057 1990 1 Fulton +WOB 42059 1990 5 Greene +WOB 42061 1990 39 Huntingdon +WOB 42063 1990 12 Indiana +WOB 42065 1990 4 Jefferson +WOB 42067 1990 5 Juniata +WOB 42069 1990 15 Lackawanna +WOB 42071 1990 90 Lancaster +WOB 42073 1990 6 Lawrence +WOB 42075 1990 2 Lebanon +WOB 42077 1990 4 Lehigh +WOB 42079 1990 42 Luzerne +WOB 42081 1990 23 Lycoming +WOB 42083 1990 7 McKean +WOB 42085 1990 28 Mercer +WOB 42087 1990 7 Mifflin +WOB 42089 1990 23 Monroe +WOB 42091 1990 11 Montgomery +WOB 42093 1990 4 Montour +WOB 42095 1990 9 Northampton +WOB 42097 1990 45 Northumberland +WOB 42099 1990 6 Perry +WOB 42101 1990 20 Philadelphia +WOB 42103 1990 51 Pike +WOB 42105 1990 1 Potter +WOB 42107 1990 10 Schuylkill +WOB 42109 1990 2 Snyder +WOB 42111 1990 17 Somerset +WOB 42113 1990 6 Sullivan +WOB 42115 1990 24 Susquehanna +WOB 42117 1990 9 Tioga +WOB 42119 1990 1 Union +WOB 42121 1990 21 Venango +WOB 42123 1990 37 Warren +WOB 42125 1990 10 Washington +WOB 42127 1990 55 Wayne +WOB 42129 1990 36 Westmoreland +WOB 42131 1990 20 Wyoming +WOB 42133 1990 15 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_AIRTR.ALO new file mode 100644 index 0000000..0213c95 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_AIRTR.ALO @@ -0,0 +1,105 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 72000 2002 552.500 PR +AIR 72001 2002 0.000 Adjuntas +AIR 72003 2002 0.000 Aguada +AIR 72005 2002 0.000 Aguadilla +AIR 72007 2002 0.000 Aguas Buenas +AIR 72009 2002 0.000 Aibonito +AIR 72011 2002 0.000 Añasco +AIR 72013 2002 0.000 Arecibo +AIR 72015 2002 0.000 Arroyo +AIR 72017 2002 0.000 Barceloneta +AIR 72019 2002 0.000 Barranquitas +AIR 72021 2002 0.000 Bayamón +AIR 72023 2002 0.000 Cabo Rojo +AIR 72025 2002 0.000 Caguas +AIR 72027 2002 0.000 Camuy +AIR 72029 2002 0.000 Canóvanas +AIR 72031 2002 0.000 Carolina +AIR 72033 2002 0.000 Cataño +AIR 72035 2002 0.000 Cayey +AIR 72037 2002 0.000 Ceiba +AIR 72039 2002 0.000 Ciales +AIR 72041 2002 0.000 Cidra +AIR 72043 2002 0.000 Coamo +AIR 72045 2002 0.000 Comerío +AIR 72047 2002 0.000 Corozal +AIR 72049 2002 0.000 Culebra +AIR 72051 2002 0.000 Dorado +AIR 72053 2002 0.000 Fajardo +AIR 72054 2002 0.000 Florida +AIR 72055 2002 0.000 Guánica +AIR 72057 2002 0.000 Guayama +AIR 72059 2002 0.000 Guayanilla +AIR 72061 2002 0.000 Guaynabo +AIR 72063 2002 0.000 Gurabo +AIR 72065 2002 0.000 Hatillo +AIR 72067 2002 0.000 Hormigueros +AIR 72069 2002 0.000 Humacao +AIR 72071 2002 0.000 Isabela +AIR 72073 2002 0.000 Jayuya +AIR 72075 2002 0.000 Juana Díaz +AIR 72077 2002 0.000 Juncos +AIR 72079 2002 0.000 Lajas +AIR 72081 2002 0.000 Lares +AIR 72083 2002 0.000 Las Marías +AIR 72085 2002 0.000 Las Piedras +AIR 72087 2002 0.000 Loíza +AIR 72089 2002 0.000 Luquillo +AIR 72091 2002 0.000 Manatí +AIR 72093 2002 0.000 Maricao +AIR 72095 2002 0.000 Maunabo +AIR 72097 2002 0.000 Mayagüez +AIR 72099 2002 0.000 Moca +AIR 72101 2002 0.000 Morovis +AIR 72103 2002 0.000 Naguabo +AIR 72105 2002 0.000 Naranjito +AIR 72107 2002 0.000 Orocovis +AIR 72109 2002 0.000 Patillas +AIR 72111 2002 0.000 Peñuelas +AIR 72113 2002 0.000 Ponce +AIR 72115 2002 0.000 Quebradillas +AIR 72117 2002 0.000 Rincón +AIR 72119 2002 0.000 Río Grande +AIR 72121 2002 0.000 Sabana Grande +AIR 72123 2002 0.000 Salinas +AIR 72125 2002 0.000 San Germán +AIR 72127 2002 552.500 San Juan +AIR 72129 2002 0.000 San Lorenzo +AIR 72131 2002 0.000 San Sebastián +AIR 72133 2002 0.000 Santa Isabel +AIR 72135 2002 0.000 Toa Alta +AIR 72137 2002 0.000 Toa Baja +AIR 72139 2002 0.000 Trujillo Alto +AIR 72141 2002 0.000 Utuado +AIR 72143 2002 0.000 Vega Alta +AIR 72145 2002 0.000 Vega Baja +AIR 72147 2002 0.000 Vieques +AIR 72149 2002 0.000 Villalba +AIR 72151 2002 0.000 Yabucoa +AIR 72153 2002 0.000 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_COAL.ALO new file mode 100644 index 0000000..ccfc32e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_COAL.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 72000 2002 0 PR +MIN 72001 2002 0 Adjuntas +MIN 72003 2002 0 Aguada +MIN 72005 2002 0 Aguadilla +MIN 72007 2002 0 Aguas Buenas +MIN 72009 2002 0 Aibonito +MIN 72011 2002 0 Añasco +MIN 72013 2002 0 Arecibo +MIN 72015 2002 0 Arroyo +MIN 72017 2002 0 Barceloneta +MIN 72019 2002 0 Barranquitas +MIN 72021 2002 0 Bayamón +MIN 72023 2002 0 Cabo Rojo +MIN 72025 2002 0 Caguas +MIN 72027 2002 0 Camuy +MIN 72029 2002 0 Canóvanas +MIN 72031 2002 0 Carolina +MIN 72033 2002 0 Cataño +MIN 72035 2002 0 Cayey +MIN 72037 2002 0 Ceiba +MIN 72039 2002 0 Ciales +MIN 72041 2002 0 Cidra +MIN 72043 2002 0 Coamo +MIN 72045 2002 0 Comerío +MIN 72047 2002 0 Corozal +MIN 72049 2002 0 Culebra +MIN 72051 2002 0 Dorado +MIN 72053 2002 0 Fajardo +MIN 72054 2002 0 Florida +MIN 72055 2002 0 Guánica +MIN 72057 2002 0 Guayama +MIN 72059 2002 0 Guayanilla +MIN 72061 2002 0 Guaynabo +MIN 72063 2002 0 Gurabo +MIN 72065 2002 0 Hatillo +MIN 72067 2002 0 Hormigueros +MIN 72069 2002 0 Humacao +MIN 72071 2002 0 Isabela +MIN 72073 2002 0 Jayuya +MIN 72075 2002 0 Juana Díaz +MIN 72077 2002 0 Juncos +MIN 72079 2002 0 Lajas +MIN 72081 2002 0 Lares +MIN 72083 2002 0 Las Marías +MIN 72085 2002 0 Las Piedras +MIN 72087 2002 0 Loíza +MIN 72089 2002 0 Luquillo +MIN 72091 2002 0 Manatí +MIN 72093 2002 0 Maricao +MIN 72095 2002 0 Maunabo +MIN 72097 2002 0 Mayagüez +MIN 72099 2002 0 Moca +MIN 72101 2002 0 Morovis +MIN 72103 2002 0 Naguabo +MIN 72105 2002 0 Naranjito +MIN 72107 2002 0 Orocovis +MIN 72109 2002 0 Patillas +MIN 72111 2002 0 Peñuelas +MIN 72113 2002 0 Ponce +MIN 72115 2002 0 Quebradillas +MIN 72117 2002 0 Rincón +MIN 72119 2002 0 Río Grande +MIN 72121 2002 0 Sabana Grande +MIN 72123 2002 0 Salinas +MIN 72125 2002 0 San Germán +MIN 72127 2002 0 San Juan +MIN 72129 2002 0 San Lorenzo +MIN 72131 2002 0 San Sebastián +MIN 72133 2002 0 Santa Isabel +MIN 72135 2002 0 Toa Alta +MIN 72137 2002 0 Toa Baja +MIN 72139 2002 0 Trujillo Alto +MIN 72141 2002 0 Utuado +MIN 72143 2002 0 Vega Alta +MIN 72145 2002 0 Vega Baja +MIN 72147 2002 0 Vieques +MIN 72149 2002 0 Villalba +MIN 72151 2002 0 Yabucoa +MIN 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_CONST.ALO new file mode 100644 index 0000000..77eb4df --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_CONST.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file are the 1997 dollars spent on construction +not adjusted for relative costs of construction. + +8/25/05 epa: Update per 1997 Economic Census of Outlying Areas - Puerto Rico. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +CON 72000 1997 3965 PR 3965 +CON 72001 1997 3 Adjuntas +CON 72003 1997 21 Aguada +CON 72005 1997 19 Aguadilla +CON 72007 1997 4 Aguas Buenas +CON 72009 1997 5 Aibonito +CON 72011 1997 11 Añasco +CON 72013 1997 35 Arecibo +CON 72015 1997 1 Arroyo +CON 72017 1997 20 Barceloneta +CON 72019 1997 7 Barranquitas +CON 72021 1997 143 Bayamón +CON 72023 1997 14 Cabo Rojo +CON 72025 1997 77 Caguas +CON 72027 1997 9 Camuy +CON 72029 1997 6 Canóvanas +CON 72031 1997 129 Carolina +CON 72033 1997 31 Cataño +CON 72035 1997 4 Cayey +CON 72037 1997 1 Ceiba +CON 72039 1997 5 Ciales +CON 72041 1997 4 Cidra +CON 72043 1997 10 Coamo +CON 72045 1997 2 Comerío +CON 72047 1997 5 Corozal +CON 72049 1997 0.4 Culebra +CON 72051 1997 23 Dorado +CON 72053 1997 25 Fajardo +CON 72054 1997 3 Florida +CON 72055 1997 7 Guánica +CON 72057 1997 14 Guayama +CON 72059 1997 5 Guayanilla +CON 72061 1997 705 Guaynabo +CON 72063 1997 15 Gurabo +CON 72065 1997 10 Hatillo +CON 72067 1997 18 Hormigueros +CON 72069 1997 20 Humacao +CON 72071 1997 5 Isabela +CON 72073 1997 4 Jayuya +CON 72075 1997 10 Juana Díaz +CON 72077 1997 14 Juncos +CON 72079 1997 32 Lajas +CON 72081 1997 2 Lares +CON 72083 1997 4 Las Marías +CON 72085 1997 95 Las Piedras +CON 72087 1997 8 Loíza +CON 72089 1997 2 Luquillo +CON 72091 1997 10 Manatí +CON 72093 1997 1 Maricao +CON 72095 1997 3 Maunabo +CON 72097 1997 140 Mayagüez +CON 72099 1997 17 Moca +CON 72101 1997 10 Morovis +CON 72103 1997 22 Naguabo +CON 72105 1997 32 Naranjito +CON 72107 1997 4 Orocovis +CON 72109 1997 5 Patillas +CON 72111 1997 26 Peñuelas +CON 72113 1997 232 Ponce +CON 72115 1997 8 Quebradillas +CON 72117 1997 2 Rincón +CON 72119 1997 3 Río Grande +CON 72121 1997 5 Sabana Grande +CON 72123 1997 7 Salinas +CON 72125 1997 15 San Germán +CON 72127 1997 1497 San Juan +CON 72129 1997 15 San Lorenzo +CON 72131 1997 10 San Sebastián +CON 72133 1997 15 Santa Isabel +CON 72135 1997 2 Toa Alta +CON 72137 1997 95 Toa Baja +CON 72139 1997 129 Trujillo Alto +CON 72141 1997 1 Utuado +CON 72143 1997 12 Vega Alta +CON 72145 1997 32 Vega Baja +CON 72147 1997 2 Vieques +CON 72149 1997 7 Villalba +CON 72151 1997 9 Yabucoa +CON 72153 1997 11 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_FARMS.ALO new file mode 100644 index 0000000..f421dcd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_FARMS.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 72000 2002 193495 PR +FRM 72001 2002 10327 Adjuntas +FRM 72003 2002 1021 Aguada +FRM 72005 2002 1717 Aguadilla +FRM 72007 2002 1636 Aguas Buenas +FRM 72009 2002 1153 Aibonito +FRM 72011 2002 1642 Añasco +FRM 72013 2002 8850 Arecibo +FRM 72015 2002 1082 Arroyo +FRM 72017 2002 1315 Barceloneta +FRM 72019 2002 3588 Barranquitas +FRM 72021 2002 113 Bayamón +FRM 72023 2002 3459 Cabo Rojo +FRM 72025 2002 1899 Caguas +FRM 72027 2002 3608 Camuy +FRM 72029 2002 468 Canóvanas +FRM 72031 2002 629 Carolina +FRM 72033 2002 0 Cataño +FRM 72035 2002 772 Cayey +FRM 72037 2002 173 Ceiba +FRM 72039 2002 4438 Ciales +FRM 72041 2002 1396 Cidra +FRM 72043 2002 4034 Coamo +FRM 72045 2002 1048 Comerío +FRM 72047 2002 3251 Corozal +FRM 72049 2002 0 Culebra +FRM 72051 2002 900 Dorado +FRM 72053 2002 359 Fajardo +FRM 72054 2002 669 Florida +FRM 72055 2002 583 Guánica +FRM 72057 2002 1287 Guayama +FRM 72059 2002 2953 Guayanilla +FRM 72061 2002 239 Guaynabo +FRM 72063 2002 784 Gurabo +FRM 72065 2002 7289 Hatillo +FRM 72067 2002 520 Hormigueros +FRM 72069 2002 1420 Humacao +FRM 72071 2002 2561 Isabela +FRM 72073 2002 5284 Jayuya +FRM 72075 2002 3532 Juana Díaz +FRM 72077 2002 1682 Juncos +FRM 72079 2002 3875 Lajas +FRM 72081 2002 9590 Lares +FRM 72083 2002 4487 Las Marías +FRM 72085 2002 1247 Las Piedras +FRM 72087 2002 174 Loíza +FRM 72089 2002 417 Luquillo +FRM 72091 2002 3662 Manatí +FRM 72093 2002 4090 Maricao +FRM 72095 2002 583 Maunabo +FRM 72097 2002 2842 Mayagüez +FRM 72099 2002 1806 Moca +FRM 72101 2002 2942 Morovis +FRM 72103 2002 1518 Naguabo +FRM 72105 2002 1856 Naranjito +FRM 72107 2002 7013 Orocovis +FRM 72109 2002 1289 Patillas +FRM 72111 2002 822 Peñuelas +FRM 72113 2002 2772 Ponce +FRM 72115 2002 1014 Quebradillas +FRM 72117 2002 243 Rincón +FRM 72119 2002 822 Río Grande +FRM 72121 2002 1644 Sabana Grande +FRM 72123 2002 4134 Salinas +FRM 72125 2002 3135 San Germán +FRM 72127 2002 23 San Juan +FRM 72129 2002 6283 San Lorenzo +FRM 72131 2002 7740 San Sebastián +FRM 72133 2002 6959 Santa Isabel +FRM 72135 2002 170 Toa Alta +FRM 72137 2002 583 Toa Baja +FRM 72139 2002 30 Trujillo Alto +FRM 72141 2002 7685 Utuado +FRM 72143 2002 989 Vega Alta +FRM 72145 2002 2265 Vega Baja +FRM 72147 2002 583 Vieques +FRM 72149 2002 2414 Villalba +FRM 72151 2002 3079 Yabucoa +FRM 72153 2002 5034 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_GOLF.ALO new file mode 100644 index 0000000..5e12825 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_GOLF.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is GOLF COURSES +based on http://www.worldgolf.com/courses/usa/puertorico/puertorico.html +It is used for PR as the State-to-County allocation instead of +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +8/26/05 epa: Update to use web-searched Golf Course county data. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +GC 72000 2002 18 PR 18 +GC 72001 2002 0 Adjuntas +GC 72003 2002 0 Aguada +GC 72005 2002 1 Aguadilla +GC 72007 2002 0 Aguas Buenas +GC 72009 2002 0 Aibonito +GC 72011 2002 0 Añasco +GC 72013 2002 0 Arecibo +GC 72015 2002 0 Arroyo +GC 72017 2002 0 Barceloneta +GC 72019 2002 0 Barranquitas +GC 72021 2002 1 Bayamón +GC 72023 2002 0 Cabo Rojo +GC 72025 2002 0 Caguas +GC 72027 2002 0 Camuy +GC 72029 2002 0 Canóvanas +GC 72031 2002 0 Carolina +GC 72033 2002 0 Cataño +GC 72035 2002 0 Cayey +GC 72037 2002 1 Ceiba +GC 72039 2002 0 Ciales +GC 72041 2002 0 Cidra +GC 72043 2002 1 Coamo +GC 72045 2002 0 Comerío +GC 72047 2002 0 Corozal +GC 72049 2002 0 Culebra +GC 72051 2002 5 Dorado +GC 72053 2002 1 Fajardo +GC 72054 2002 0 Florida +GC 72055 2002 0 Guánica +GC 72057 2002 1 Guayama +GC 72059 2002 0 Guayanilla +GC 72061 2002 0 Guaynabo +GC 72063 2002 0 Gurabo +GC 72065 2002 0 Hatillo +GC 72067 2002 0 Hormigueros +GC 72069 2002 2 Humacao +GC 72071 2002 0 Isabela +GC 72073 2002 0 Jayuya +GC 72075 2002 0 Juana Díaz +GC 72077 2002 0 Juncos +GC 72079 2002 0 Lajas +GC 72081 2002 0 Lares +GC 72083 2002 0 Las Marías +GC 72085 2002 0 Las Piedras +GC 72087 2002 0 Loíza +GC 72089 2002 0 Luquillo +GC 72091 2002 0 Manatí +GC 72093 2002 0 Maricao +GC 72095 2002 0 Maunabo +GC 72097 2002 1 Mayagüez +GC 72099 2002 0 Moca +GC 72101 2002 0 Morovis +GC 72103 2002 0 Naguabo +GC 72105 2002 0 Naranjito +GC 72107 2002 0 Orocovis +GC 72109 2002 0 Patillas +GC 72111 2002 0 Peñuelas +GC 72113 2002 0 Ponce +GC 72115 2002 0 Quebradillas +GC 72117 2002 0 Rincón +GC 72119 2002 4 Río Grande +GC 72121 2002 0 Sabana Grande +GC 72123 2002 0 Salinas +GC 72125 2002 0 San Germán +GC 72127 2002 0 San Juan +GC 72129 2002 0 San Lorenzo +GC 72131 2002 0 San Sebastián +GC 72133 2002 0 Santa Isabel +GC 72135 2002 0 Toa Alta +GC 72137 2002 0 Toa Baja +GC 72139 2002 0 Trujillo Alto +GC 72141 2002 0 Utuado +GC 72143 2002 0 Vega Alta +GC 72145 2002 0 Vega Baja +GC 72147 2002 0 Vieques +GC 72149 2002 0 Villalba +GC 72151 2002 0 Yabucoa +GC 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_HOLSL.ALO new file mode 100644 index 0000000..2012205 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_HOLSL.ALO @@ -0,0 +1,102 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- (50xx & 51xx) + +8/25/05 epa: Update per 1997 Economic Census of Outlying Areas - Puerto Rico. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +COM 72000 1997 2809 PR 2809 +COM 72001 1997 3 Adjuntas +COM 72003 1997 11 Aguada +COM 72005 1997 29 Aguadilla +COM 72007 1997 7 Aguas Buenas +COM 72009 1997 10 Aibonito +COM 72011 1997 8 Añasco +COM 72013 1997 40 Arecibo +COM 72015 1997 3 Arroyo +COM 72017 1997 13 Barceloneta +COM 72019 1997 10 Barranquitas +COM 72021 1997 220 Bayamón +COM 72023 1997 15 Cabo Rojo +COM 72025 1997 135 Caguas +COM 72027 1997 11 Camuy +COM 72029 1997 7 Canóvanas +COM 72031 1997 174 Carolina +COM 72033 1997 77 Cataño +COM 72035 1997 21 Cayey +COM 72037 1997 2 Ceiba +COM 72039 1997 2 Ciales +COM 72041 1997 12 Cidra +COM 72043 1997 12 Coamo +COM 72045 1997 4 Comerío +COM 72047 1997 13 Corozal +COM 72049 1997 0 Culebra +COM 72051 1997 16 Dorado +COM 72053 1997 8 Fajardo +COM 72054 1997 3 Florida +COM 72055 1997 3 Guánica +COM 72057 1997 14 Guayama +COM 72059 1997 1 Guayanilla +COM 72061 1997 175 Guaynabo +COM 72063 1997 16 Gurabo +COM 72065 1997 23 Hatillo +COM 72067 1997 10 Hormigueros +COM 72069 1997 19 Humacao +COM 72071 1997 20 Isabela +COM 72073 1997 4 Jayuya +COM 72075 1997 12 Juana Díaz +COM 72077 1997 7 Juncos +COM 72079 1997 7 Lajas +COM 72081 1997 6 Lares +COM 72083 1997 1 Las Marías +COM 72085 1997 7 Las Piedras +COM 72087 1997 1 Loíza +COM 72089 1997 5 Luquillo +COM 72091 1997 17 Manatí +COM 72093 1997 0 Maricao +COM 72095 1997 1 Maunabo +COM 72097 1997 92 Mayagüez +COM 72099 1997 7 Moca +COM 72101 1997 1 Morovis +COM 72103 1997 5 Naguabo +COM 72105 1997 7 Naranjito +COM 72107 1997 9 Orocovis +COM 72109 1997 3 Patillas +COM 72111 1997 7 Peñuelas +COM 72113 1997 148 Ponce +COM 72115 1997 2 Quebradillas +COM 72117 1997 4 Rincón +COM 72119 1997 11 Río Grande +COM 72121 1997 2 Sabana Grande +COM 72123 1997 7 Salinas +COM 72125 1997 10 San Germán +COM 72127 1997 1075 San Juan +COM 72129 1997 6 San Lorenzo +COM 72131 1997 19 San Sebastián +COM 72133 1997 6 Santa Isabel +COM 72135 1997 7 Toa Alta +COM 72137 1997 77 Toa Baja +COM 72139 1997 30 Trujillo Alto +COM 72141 1997 10 Utuado +COM 72143 1997 5 Vega Alta +COM 72145 1997 17 Vega Baja +COM 72147 1997 3 Vieques +COM 72149 1997 1 Villalba +COM 72151 1997 7 Yabucoa +COM 72153 1997 16 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_HOUSE.ALO new file mode 100644 index 0000000..6bc462e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_HOUSE.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 72000 2000 1418476 PR +HOU 72001 2000 6715 Adjuntas +HOU 72003 2000 15590 Aguada +HOU 72005 2000 24882 Aguadilla +HOU 72007 2000 10412 Aguas Buenas +HOU 72009 2000 9163 Aibonito +HOU 72011 2000 10723 Añasco +HOU 72013 2000 38974 Arecibo +HOU 72015 2000 7287 Arroyo +HOU 72017 2000 8375 Barceloneta +HOU 72019 2000 9740 Barranquitas +HOU 72021 2000 79476 Bayamón +HOU 72023 2000 23182 Cabo Rojo +HOU 72025 2000 50568 Caguas +HOU 72027 2000 12520 Camuy +HOU 72029 2000 15071 Canóvanas +HOU 72031 2000 71347 Carolina +HOU 72033 2000 10366 Cataño +HOU 72035 2000 17782 Cayey +HOU 72037 2000 6742 Ceiba +HOU 72039 2000 6886 Ciales +HOU 72041 2000 14267 Cidra +HOU 72043 2000 13249 Coamo +HOU 72045 2000 7311 Comerío +HOU 72047 2000 12386 Corozal +HOU 72049 2000 1024 Culebra +HOU 72051 2000 13067 Dorado +HOU 72053 2000 17136 Fajardo +HOU 72054 2000 4387 Florida +HOU 72055 2000 8849 Guánica +HOU 72057 2000 16368 Guayama +HOU 72059 2000 8147 Guayanilla +HOU 72061 2000 36826 Guaynabo +HOU 72063 2000 12854 Gurabo +HOU 72065 2000 13929 Hatillo +HOU 72067 2000 6423 Hormigueros +HOU 72069 2000 22559 Humacao +HOU 72071 2000 17166 Isabela +HOU 72073 2000 5591 Jayuya +HOU 72075 2000 16490 Juana Díaz +HOU 72077 2000 13064 Juncos +HOU 72079 2000 10947 Lajas +HOU 72081 2000 12060 Lares +HOU 72083 2000 4124 Las Marías +HOU 72085 2000 12421 Las Piedras +HOU 72087 2000 10927 Loíza +HOU 72089 2000 9327 Luquillo +HOU 72091 2000 17113 Manatí +HOU 72093 2000 2272 Maricao +HOU 72095 2000 4482 Maunabo +HOU 72097 2000 39364 Mayagüez +HOU 72099 2000 14253 Moca +HOU 72101 2000 9462 Morovis +HOU 72103 2000 8875 Naguabo +HOU 72105 2000 9758 Naranjito +HOU 72107 2000 7946 Orocovis +HOU 72109 2000 7677 Patillas +HOU 72111 2000 8735 Peñuelas +HOU 72113 2000 66471 Ponce +HOU 72115 2000 9095 Quebradillas +HOU 72117 2000 6827 Rincón +HOU 72119 2000 19928 Río Grande +HOU 72121 2000 9982 Sabana Grande +HOU 72123 2000 11876 Salinas +HOU 72125 2000 14335 San Germán +HOU 72127 2000 182101 San Juan +HOU 72129 2000 14594 San Lorenzo +HOU 72131 2000 16682 San Sebastián +HOU 72133 2000 7569 Santa Isabel +HOU 72135 2000 21075 Toa Alta +HOU 72137 2000 33473 Toa Baja +HOU 72139 2000 26241 Trujillo Alto +HOU 72141 2000 12471 Utuado +HOU 72143 2000 13526 Vega Alta +HOU 72145 2000 21990 Vega Baja +HOU 72147 2000 4388 Vieques +HOU 72149 2000 8465 Villalba +HOU 72151 2000 13688 Yabucoa +HOU 72153 2000 17062 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_LOGGN.ALO new file mode 100644 index 0000000..ead3ed3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_LOGGN.ALO @@ -0,0 +1,105 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 72000 2002 0 PR +LOG 72001 2002 0 Adjuntas +LOG 72003 2002 0 Aguada +LOG 72005 2002 0 Aguadilla +LOG 72007 2002 0 Aguas Buenas +LOG 72009 2002 0 Aibonito +LOG 72011 2002 0 Añasco +LOG 72013 2002 0 Arecibo +LOG 72015 2002 0 Arroyo +LOG 72017 2002 0 Barceloneta +LOG 72019 2002 0 Barranquitas +LOG 72021 2002 0 Bayamón +LOG 72023 2002 0 Cabo Rojo +LOG 72025 2002 0 Caguas +LOG 72027 2002 0 Camuy +LOG 72029 2002 0 Canóvanas +LOG 72031 2002 0 Carolina +LOG 72033 2002 0 Cataño +LOG 72035 2002 0 Cayey +LOG 72037 2002 0 Ceiba +LOG 72039 2002 0 Ciales +LOG 72041 2002 0 Cidra +LOG 72043 2002 0 Coamo +LOG 72045 2002 0 Comerío +LOG 72047 2002 0 Corozal +LOG 72049 2002 0 Culebra +LOG 72051 2002 0 Dorado +LOG 72053 2002 0 Fajardo +LOG 72054 2002 0 Florida +LOG 72055 2002 0 Guánica +LOG 72057 2002 0 Guayama +LOG 72059 2002 0 Guayanilla +LOG 72061 2002 0 Guaynabo +LOG 72063 2002 0 Gurabo +LOG 72065 2002 0 Hatillo +LOG 72067 2002 0 Hormigueros +LOG 72069 2002 0 Humacao +LOG 72071 2002 0 Isabela +LOG 72073 2002 0 Jayuya +LOG 72075 2002 0 Juana Díaz +LOG 72077 2002 0 Juncos +LOG 72079 2002 0 Lajas +LOG 72081 2002 0 Lares +LOG 72083 2002 0 Las Marías +LOG 72085 2002 0 Las Piedras +LOG 72087 2002 0 Loíza +LOG 72089 2002 0 Luquillo +LOG 72091 2002 0 Manatí +LOG 72093 2002 0 Maricao +LOG 72095 2002 0 Maunabo +LOG 72097 2002 0 Mayagüez +LOG 72099 2002 0 Moca +LOG 72101 2002 0 Morovis +LOG 72103 2002 0 Naguabo +LOG 72105 2002 0 Naranjito +LOG 72107 2002 0 Orocovis +LOG 72109 2002 0 Patillas +LOG 72111 2002 0 Peñuelas +LOG 72113 2002 0 Ponce +LOG 72115 2002 0 Quebradillas +LOG 72117 2002 0 Rincón +LOG 72119 2002 0 Río Grande +LOG 72121 2002 0 Sabana Grande +LOG 72123 2002 0 Salinas +LOG 72125 2002 0 San Germán +LOG 72127 2002 0 San Juan +LOG 72129 2002 0 San Lorenzo +LOG 72131 2002 0 San Sebastián +LOG 72133 2002 0 Santa Isabel +LOG 72135 2002 0 Toa Alta +LOG 72137 2002 0 Toa Baja +LOG 72139 2002 0 Trujillo Alto +LOG 72141 2002 0 Utuado +LOG 72143 2002 0 Vega Alta +LOG 72145 2002 0 Vega Baja +LOG 72147 2002 0 Vieques +LOG 72149 2002 0 Villalba +LOG 72151 2002 0 Yabucoa +LOG 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_LSCAP.ALO new file mode 100644 index 0000000..4fb61bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_LSCAP.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is HUMAN POPULATION +It is used as PR & VI State-to-County allocation surrogate for +EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +8/25/05 epa: Update to use human population, due to inadequate county data. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +LSC 72000 2002 3859606 PR 3859606 +LSC 72001 2002 19056 Adjuntas +LSC 72003 2002 43158 Aguada +LSC 72005 2002 65620 Aguadilla +LSC 72007 2002 29679 Aguas Buenas +LSC 72009 2002 26755 Aibonito +LSC 72011 2002 28902 Añasco +LSC 72013 2002 101298 Arecibo +LSC 72015 2002 19152 Arroyo +LSC 72017 2002 22559 Barceloneta +LSC 72019 2002 29498 Barranquitas +LSC 72021 2002 224678 Bayamón +LSC 72023 2002 48474 Cabo Rojo +LSC 72025 2002 141710 Caguas +LSC 72027 2002 36423 Camuy +LSC 72029 2002 44526 Canóvanas +LSC 72031 2002 186846 Carolina +LSC 72033 2002 28897 Cataño +LSC 72035 2002 47471 Cayey +LSC 72037 2002 18151 Ceiba +LSC 72039 2002 20114 Ciales +LSC 72041 2002 44112 Cidra +LSC 72043 2002 38261 Coamo +LSC 72045 2002 19928 Comerío +LSC 72047 2002 37534 Corozal +LSC 72049 2002 1929 Culebra +LSC 72051 2002 34591 Dorado +LSC 72053 2002 41386 Fajardo +LSC 72054 2002 13115 Florida +LSC 72055 2002 22221 Guánica +LSC 72057 2002 44769 Guayama +LSC 72059 2002 23329 Guayanilla +LSC 72061 2002 101296 Guaynabo +LSC 72063 2002 38276 Gurabo +LSC 72065 2002 40069 Hatillo +LSC 72067 2002 16859 Hormigueros +LSC 72069 2002 59697 Humacao +LSC 72071 2002 45391 Isabela +LSC 72073 2002 17635 Jayuya +LSC 72075 2002 51476 Juana Díaz +LSC 72077 2002 37526 Juncos +LSC 72079 2002 26794 Lajas +LSC 72081 2002 35406 Lares +LSC 72083 2002 11383 Las Marías +LSC 72085 2002 35723 Las Piedras +LSC 72087 2002 33107 Loíza +LSC 72089 2002 20118 Luquillo +LSC 72091 2002 46634 Manatí +LSC 72093 2002 6490 Maricao +LSC 72095 2002 12808 Maunabo +LSC 72097 2002 97891 Mayagüez +LSC 72099 2002 40951 Moca +LSC 72101 2002 30822 Morovis +LSC 72103 2002 23947 Naguabo +LSC 72105 2002 30018 Naranjito +LSC 72107 2002 24322 Orocovis +LSC 72109 2002 20240 Patillas +LSC 72111 2002 27490 Peñuelas +LSC 72113 2002 186106 Ponce +LSC 72115 2002 26189 Quebradillas +LSC 72117 2002 15241 Rincón +LSC 72119 2002 53570 Río Grande +LSC 72121 2002 26488 Sabana Grande +LSC 72123 2002 31600 Salinas +LSC 72125 2002 37474 San Germán +LSC 72127 2002 434116 San Juan +LSC 72129 2002 42057 San Lorenzo +LSC 72131 2002 45173 San Sebastián +LSC 72133 2002 22082 Santa Isabel +LSC 72135 2002 68006 Toa Alta +LSC 72137 2002 94877 Toa Baja +LSC 72139 2002 78476 Trujillo Alto +LSC 72141 2002 35395 Utuado +LSC 72143 2002 38497 Vega Alta +LSC 72145 2002 62974 Vega Baja +LSC 72147 2002 9193 Vieques +LSC 72149 2002 28711 Villalba +LSC 72151 2002 39725 Yabucoa +LSC 72153 2002 47145 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_MNFG.ALO new file mode 100644 index 0000000..c43f387 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_MNFG.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- + +8/25/05 epa: Update per 1997 Economic Census of Outlying Areas - Puerto Rico. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +MFG 72000 1997 163605 PR 163605 +MFG 72001 1997 368 Adjuntas +MFG 72003 1997 1561 Aguada +MFG 72005 1997 5688 Aguadilla +MFG 72007 1997 884 Aguas Buenas +MFG 72009 1997 2148 Aibonito +MFG 72011 1997 4839 Añasco +MFG 72013 1997 4176 Arecibo +MFG 72015 1997 335 Arroyo +MFG 72017 1997 7641 Barceloneta +MFG 72019 1997 531 Barranquitas +MFG 72021 1997 6020 Bayamón +MFG 72023 1997 1114 Cabo Rojo +MFG 72025 1997 7115 Caguas +MFG 72027 1997 1561 Camuy +MFG 72029 1997 1364 Canóvanas +MFG 72031 1997 4614 Carolina +MFG 72033 1997 1637 Cataño +MFG 72035 1997 3167 Cayey +MFG 72037 1997 263 Ceiba +MFG 72039 1997 669 Ciales +MFG 72041 1997 2945 Cidra +MFG 72043 1997 1743 Coamo +MFG 72045 1997 669 Comerío +MFG 72047 1997 1017 Corozal +MFG 72049 1997 156 Culebra +MFG 72051 1997 2106 Dorado +MFG 72053 1997 1593 Fajardo +MFG 72054 1997 54 Florida +MFG 72055 1997 374 Guánica +MFG 72057 1997 5000 Guayama +MFG 72059 1997 156 Guayanilla +MFG 72061 1997 4524 Guaynabo +MFG 72063 1997 2054 Gurabo +MFG 72065 1997 669 Hatillo +MFG 72067 1997 269 Hormigueros +MFG 72069 1997 4381 Humacao +MFG 72071 1997 2298 Isabela +MFG 72073 1997 928 Jayuya +MFG 72075 1997 526 Juana Díaz +MFG 72077 1997 1548 Juncos +MFG 72079 1997 894 Lajas +MFG 72081 1997 669 Lares +MFG 72083 1997 669 Las Marías +MFG 72085 1997 5745 Las Piedras +MFG 72087 1997 115 Loíza +MFG 72089 1997 894 Luquillo +MFG 72091 1997 4964 Manatí +MFG 72093 1997 1561 Maricao +MFG 72095 1997 54 Maunabo +MFG 72097 1997 11669 Mayagüez +MFG 72099 1997 1561 Moca +MFG 72101 1997 713 Morovis +MFG 72103 1997 663 Naguabo +MFG 72105 1997 121 Naranjito +MFG 72107 1997 44 Orocovis +MFG 72109 1997 1186 Patillas +MFG 72111 1997 556 Peñuelas +MFG 72113 1997 6927 Ponce +MFG 72115 1997 1248 Quebradillas +MFG 72117 1997 520 Rincón +MFG 72119 1997 1391 Río Grande +MFG 72121 1997 1413 Sabana Grande +MFG 72123 1997 289 Salinas +MFG 72125 1997 1656 San Germán +MFG 72127 1997 9332 San Juan +MFG 72129 1997 1753 San Lorenzo +MFG 72131 1997 652 San Sebastián +MFG 72133 1997 1825 Santa Isabel +MFG 72135 1997 556 Toa Alta +MFG 72137 1997 3591 Toa Baja +MFG 72139 1997 1030 Trujillo Alto +MFG 72141 1997 375 Utuado +MFG 72143 1997 1605 Vega Alta +MFG 72145 1997 5812 Vega Baja +MFG 72147 1997 156 Vieques +MFG 72149 1997 335 Villalba +MFG 72151 1997 1561 Yabucoa +MFG 72153 1997 794 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_OIL.ALO new file mode 100644 index 0000000..7dd4058 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_OIL.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 72000 2002 0 PR +OIL 72001 2002 0 Adjuntas +OIL 72003 2002 0 Aguada +OIL 72005 2002 0 Aguadilla +OIL 72007 2002 0 Aguas Buenas +OIL 72009 2002 0 Aibonito +OIL 72011 2002 0 Añasco +OIL 72013 2002 0 Arecibo +OIL 72015 2002 0 Arroyo +OIL 72017 2002 0 Barceloneta +OIL 72019 2002 0 Barranquitas +OIL 72021 2002 0 Bayamón +OIL 72023 2002 0 Cabo Rojo +OIL 72025 2002 0 Caguas +OIL 72027 2002 0 Camuy +OIL 72029 2002 0 Canóvanas +OIL 72031 2002 0 Carolina +OIL 72033 2002 0 Cataño +OIL 72035 2002 0 Cayey +OIL 72037 2002 0 Ceiba +OIL 72039 2002 0 Ciales +OIL 72041 2002 0 Cidra +OIL 72043 2002 0 Coamo +OIL 72045 2002 0 Comerío +OIL 72047 2002 0 Corozal +OIL 72049 2002 0 Culebra +OIL 72051 2002 0 Dorado +OIL 72053 2002 0 Fajardo +OIL 72054 2002 0 Florida +OIL 72055 2002 0 Guánica +OIL 72057 2002 0 Guayama +OIL 72059 2002 0 Guayanilla +OIL 72061 2002 0 Guaynabo +OIL 72063 2002 0 Gurabo +OIL 72065 2002 0 Hatillo +OIL 72067 2002 0 Hormigueros +OIL 72069 2002 0 Humacao +OIL 72071 2002 0 Isabela +OIL 72073 2002 0 Jayuya +OIL 72075 2002 0 Juana Díaz +OIL 72077 2002 0 Juncos +OIL 72079 2002 0 Lajas +OIL 72081 2002 0 Lares +OIL 72083 2002 0 Las Marías +OIL 72085 2002 0 Las Piedras +OIL 72087 2002 0 Loíza +OIL 72089 2002 0 Luquillo +OIL 72091 2002 0 Manatí +OIL 72093 2002 0 Maricao +OIL 72095 2002 0 Maunabo +OIL 72097 2002 0 Mayagüez +OIL 72099 2002 0 Moca +OIL 72101 2002 0 Morovis +OIL 72103 2002 0 Naguabo +OIL 72105 2002 0 Naranjito +OIL 72107 2002 0 Orocovis +OIL 72109 2002 0 Patillas +OIL 72111 2002 0 Peñuelas +OIL 72113 2002 0 Ponce +OIL 72115 2002 0 Quebradillas +OIL 72117 2002 0 Rincón +OIL 72119 2002 0 Río Grande +OIL 72121 2002 0 Sabana Grande +OIL 72123 2002 0 Salinas +OIL 72125 2002 0 San Germán +OIL 72127 2002 0 San Juan +OIL 72129 2002 0 San Lorenzo +OIL 72131 2002 0 San Sebastián +OIL 72133 2002 0 Santa Isabel +OIL 72135 2002 0 Toa Alta +OIL 72137 2002 0 Toa Baja +OIL 72139 2002 0 Trujillo Alto +OIL 72141 2002 0 Utuado +OIL 72143 2002 0 Vega Alta +OIL 72145 2002 0 Vega Baja +OIL 72147 2002 0 Vieques +OIL 72149 2002 0 Villalba +OIL 72151 2002 0 Yabucoa +OIL 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_POP.ALO new file mode 100644 index 0000000..1c7723b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_POP.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 72000 2002 3859606 PR +POP 72001 2002 19056 Adjuntas +POP 72003 2002 43158 Aguada +POP 72005 2002 65620 Aguadilla +POP 72007 2002 29679 Aguas Buenas +POP 72009 2002 26755 Aibonito +POP 72011 2002 28902 Añasco +POP 72013 2002 101298 Arecibo +POP 72015 2002 19152 Arroyo +POP 72017 2002 22559 Barceloneta +POP 72019 2002 29498 Barranquitas +POP 72021 2002 224678 Bayamón +POP 72023 2002 48474 Cabo Rojo +POP 72025 2002 141710 Caguas +POP 72027 2002 36423 Camuy +POP 72029 2002 44526 Canóvanas +POP 72031 2002 186846 Carolina +POP 72033 2002 28897 Cataño +POP 72035 2002 47471 Cayey +POP 72037 2002 18151 Ceiba +POP 72039 2002 20114 Ciales +POP 72041 2002 44112 Cidra +POP 72043 2002 38261 Coamo +POP 72045 2002 19928 Comerío +POP 72047 2002 37534 Corozal +POP 72049 2002 1929 Culebra +POP 72051 2002 34591 Dorado +POP 72053 2002 41386 Fajardo +POP 72054 2002 13115 Florida +POP 72055 2002 22221 Guánica +POP 72057 2002 44769 Guayama +POP 72059 2002 23329 Guayanilla +POP 72061 2002 101296 Guaynabo +POP 72063 2002 38276 Gurabo +POP 72065 2002 40069 Hatillo +POP 72067 2002 16859 Hormigueros +POP 72069 2002 59697 Humacao +POP 72071 2002 45391 Isabela +POP 72073 2002 17635 Jayuya +POP 72075 2002 51476 Juana Díaz +POP 72077 2002 37526 Juncos +POP 72079 2002 26794 Lajas +POP 72081 2002 35406 Lares +POP 72083 2002 11383 Las Marías +POP 72085 2002 35723 Las Piedras +POP 72087 2002 33107 Loíza +POP 72089 2002 20118 Luquillo +POP 72091 2002 46634 Manatí +POP 72093 2002 6490 Maricao +POP 72095 2002 12808 Maunabo +POP 72097 2002 97891 Mayagüez +POP 72099 2002 40951 Moca +POP 72101 2002 30822 Morovis +POP 72103 2002 23947 Naguabo +POP 72105 2002 30018 Naranjito +POP 72107 2002 24322 Orocovis +POP 72109 2002 20240 Patillas +POP 72111 2002 27490 Peñuelas +POP 72113 2002 186106 Ponce +POP 72115 2002 26189 Quebradillas +POP 72117 2002 15241 Rincón +POP 72119 2002 53570 Río Grande +POP 72121 2002 26488 Sabana Grande +POP 72123 2002 31600 Salinas +POP 72125 2002 37474 San Germán +POP 72127 2002 434116 San Juan +POP 72129 2002 42057 San Lorenzo +POP 72131 2002 45173 San Sebastián +POP 72133 2002 22082 Santa Isabel +POP 72135 2002 68006 Toa Alta +POP 72137 2002 94877 Toa Baja +POP 72139 2002 78476 Trujillo Alto +POP 72141 2002 35395 Utuado +POP 72143 2002 38497 Vega Alta +POP 72145 2002 62974 Vega Baja +POP 72147 2002 9193 Vieques +POP 72149 2002 28711 Villalba +POP 72151 2002 39725 Yabucoa +POP 72153 2002 47145 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_RAIL.ALO new file mode 100644 index 0000000..9124742 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_RAIL.ALO @@ -0,0 +1,105 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 72000 2002 0.000 PR +RR 72001 2002 0.000 Adjuntas +RR 72003 2002 0.000 Aguada +RR 72005 2002 0.000 Aguadilla +RR 72007 2002 0.000 Aguas Buenas +RR 72009 2002 0.000 Aibonito +RR 72011 2002 0.000 Añasco +RR 72013 2002 0.000 Arecibo +RR 72015 2002 0.000 Arroyo +RR 72017 2002 0.000 Barceloneta +RR 72019 2002 0.000 Barranquitas +RR 72021 2002 0.000 Bayamón +RR 72023 2002 0.000 Cabo Rojo +RR 72025 2002 0.000 Caguas +RR 72027 2002 0.000 Camuy +RR 72029 2002 0.000 Canóvanas +RR 72031 2002 0.000 Carolina +RR 72033 2002 0.000 Cataño +RR 72035 2002 0.000 Cayey +RR 72037 2002 0.000 Ceiba +RR 72039 2002 0.000 Ciales +RR 72041 2002 0.000 Cidra +RR 72043 2002 0.000 Coamo +RR 72045 2002 0.000 Comerío +RR 72047 2002 0.000 Corozal +RR 72049 2002 0.000 Culebra +RR 72051 2002 0.000 Dorado +RR 72053 2002 0.000 Fajardo +RR 72054 2002 0.000 Florida +RR 72055 2002 0.000 Guánica +RR 72057 2002 0.000 Guayama +RR 72059 2002 0.000 Guayanilla +RR 72061 2002 0.000 Guaynabo +RR 72063 2002 0.000 Gurabo +RR 72065 2002 0.000 Hatillo +RR 72067 2002 0.000 Hormigueros +RR 72069 2002 0.000 Humacao +RR 72071 2002 0.000 Isabela +RR 72073 2002 0.000 Jayuya +RR 72075 2002 0.000 Juana Díaz +RR 72077 2002 0.000 Juncos +RR 72079 2002 0.000 Lajas +RR 72081 2002 0.000 Lares +RR 72083 2002 0.000 Las Marías +RR 72085 2002 0.000 Las Piedras +RR 72087 2002 0.000 Loíza +RR 72089 2002 0.000 Luquillo +RR 72091 2002 0.000 Manatí +RR 72093 2002 0.000 Maricao +RR 72095 2002 0.000 Maunabo +RR 72097 2002 0.000 Mayagüez +RR 72099 2002 0.000 Moca +RR 72101 2002 0.000 Morovis +RR 72103 2002 0.000 Naguabo +RR 72105 2002 0.000 Naranjito +RR 72107 2002 0.000 Orocovis +RR 72109 2002 0.000 Patillas +RR 72111 2002 0.000 Peñuelas +RR 72113 2002 0.000 Ponce +RR 72115 2002 0.000 Quebradillas +RR 72117 2002 0.000 Rincón +RR 72119 2002 0.000 Río Grande +RR 72121 2002 0.000 Sabana Grande +RR 72123 2002 0.000 Salinas +RR 72125 2002 0.000 San Germán +RR 72127 2002 0.000 San Juan +RR 72129 2002 0.000 San Lorenzo +RR 72131 2002 0.000 San Sebastián +RR 72133 2002 0.000 Santa Isabel +RR 72135 2002 0.000 Toa Alta +RR 72137 2002 0.000 Toa Baja +RR 72139 2002 0.000 Trujillo Alto +RR 72141 2002 0.000 Utuado +RR 72143 2002 0.000 Vega Alta +RR 72145 2002 0.000 Vega Baja +RR 72147 2002 0.000 Vieques +RR 72149 2002 0.000 Villalba +RR 72151 2002 0.000 Yabucoa +RR 72153 2002 0.000 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_RVPRK.ALO new file mode 100644 index 0000000..22b8c30 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_RVPRK.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is HUMAN POPULATION +It is used for PR & VI as the State-to-County allocation surrogate for +RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +8/25/05 epa: Update to use human population, due to inadequate RV Park data. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +RVP 72000 2002 3859606 PR 3859606 +RVP 72001 2002 19056 Adjuntas +RVP 72003 2002 43158 Aguada +RVP 72005 2002 65620 Aguadilla +RVP 72007 2002 29679 Aguas Buenas +RVP 72009 2002 26755 Aibonito +RVP 72011 2002 28902 Añasco +RVP 72013 2002 101298 Arecibo +RVP 72015 2002 19152 Arroyo +RVP 72017 2002 22559 Barceloneta +RVP 72019 2002 29498 Barranquitas +RVP 72021 2002 224678 Bayamón +RVP 72023 2002 48474 Cabo Rojo +RVP 72025 2002 141710 Caguas +RVP 72027 2002 36423 Camuy +RVP 72029 2002 44526 Canóvanas +RVP 72031 2002 186846 Carolina +RVP 72033 2002 28897 Cataño +RVP 72035 2002 47471 Cayey +RVP 72037 2002 18151 Ceiba +RVP 72039 2002 20114 Ciales +RVP 72041 2002 44112 Cidra +RVP 72043 2002 38261 Coamo +RVP 72045 2002 19928 Comerío +RVP 72047 2002 37534 Corozal +RVP 72049 2002 1929 Culebra +RVP 72051 2002 34591 Dorado +RVP 72053 2002 41386 Fajardo +RVP 72054 2002 13115 Florida +RVP 72055 2002 22221 Guánica +RVP 72057 2002 44769 Guayama +RVP 72059 2002 23329 Guayanilla +RVP 72061 2002 101296 Guaynabo +RVP 72063 2002 38276 Gurabo +RVP 72065 2002 40069 Hatillo +RVP 72067 2002 16859 Hormigueros +RVP 72069 2002 59697 Humacao +RVP 72071 2002 45391 Isabela +RVP 72073 2002 17635 Jayuya +RVP 72075 2002 51476 Juana Díaz +RVP 72077 2002 37526 Juncos +RVP 72079 2002 26794 Lajas +RVP 72081 2002 35406 Lares +RVP 72083 2002 11383 Las Marías +RVP 72085 2002 35723 Las Piedras +RVP 72087 2002 33107 Loíza +RVP 72089 2002 20118 Luquillo +RVP 72091 2002 46634 Manatí +RVP 72093 2002 6490 Maricao +RVP 72095 2002 12808 Maunabo +RVP 72097 2002 97891 Mayagüez +RVP 72099 2002 40951 Moca +RVP 72101 2002 30822 Morovis +RVP 72103 2002 23947 Naguabo +RVP 72105 2002 30018 Naranjito +RVP 72107 2002 24322 Orocovis +RVP 72109 2002 20240 Patillas +RVP 72111 2002 27490 Peñuelas +RVP 72113 2002 186106 Ponce +RVP 72115 2002 26189 Quebradillas +RVP 72117 2002 15241 Rincón +RVP 72119 2002 53570 Río Grande +RVP 72121 2002 26488 Sabana Grande +RVP 72123 2002 31600 Salinas +RVP 72125 2002 37474 San Germán +RVP 72127 2002 434116 San Juan +RVP 72129 2002 42057 San Lorenzo +RVP 72131 2002 45173 San Sebastián +RVP 72133 2002 22082 Santa Isabel +RVP 72135 2002 68006 Toa Alta +RVP 72137 2002 94877 Toa Baja +RVP 72139 2002 78476 Trujillo Alto +RVP 72141 2002 35395 Utuado +RVP 72143 2002 38497 Vega Alta +RVP 72145 2002 62974 Vega Baja +RVP 72147 2002 9193 Vieques +RVP 72149 2002 28711 Villalba +RVP 72151 2002 39725 Yabucoa +RVP 72153 2002 47145 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_SBC.ALO new file mode 100644 index 0000000..9bafb4f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_SBC.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 72000 2002 0 PR +SBC 72001 2002 0 Adjuntas +SBC 72003 2002 0 Aguada +SBC 72005 2002 0 Aguadilla +SBC 72007 2002 0 Aguas Buenas +SBC 72009 2002 0 Aibonito +SBC 72011 2002 0 Añasco +SBC 72013 2002 0 Arecibo +SBC 72015 2002 0 Arroyo +SBC 72017 2002 0 Barceloneta +SBC 72019 2002 0 Barranquitas +SBC 72021 2002 0 Bayamón +SBC 72023 2002 0 Cabo Rojo +SBC 72025 2002 0 Caguas +SBC 72027 2002 0 Camuy +SBC 72029 2002 0 Canóvanas +SBC 72031 2002 0 Carolina +SBC 72033 2002 0 Cataño +SBC 72035 2002 0 Cayey +SBC 72037 2002 0 Ceiba +SBC 72039 2002 0 Ciales +SBC 72041 2002 0 Cidra +SBC 72043 2002 0 Coamo +SBC 72045 2002 0 Comerío +SBC 72047 2002 0 Corozal +SBC 72049 2002 0 Culebra +SBC 72051 2002 0 Dorado +SBC 72053 2002 0 Fajardo +SBC 72054 2002 0 Florida +SBC 72055 2002 0 Guánica +SBC 72057 2002 0 Guayama +SBC 72059 2002 0 Guayanilla +SBC 72061 2002 0 Guaynabo +SBC 72063 2002 0 Gurabo +SBC 72065 2002 0 Hatillo +SBC 72067 2002 0 Hormigueros +SBC 72069 2002 0 Humacao +SBC 72071 2002 0 Isabela +SBC 72073 2002 0 Jayuya +SBC 72075 2002 0 Juana Díaz +SBC 72077 2002 0 Juncos +SBC 72079 2002 0 Lajas +SBC 72081 2002 0 Lares +SBC 72083 2002 0 Las Marías +SBC 72085 2002 0 Las Piedras +SBC 72087 2002 0 Loíza +SBC 72089 2002 0 Luquillo +SBC 72091 2002 0 Manatí +SBC 72093 2002 0 Maricao +SBC 72095 2002 0 Maunabo +SBC 72097 2002 0 Mayagüez +SBC 72099 2002 0 Moca +SBC 72101 2002 0 Morovis +SBC 72103 2002 0 Naguabo +SBC 72105 2002 0 Naranjito +SBC 72107 2002 0 Orocovis +SBC 72109 2002 0 Patillas +SBC 72111 2002 0 Peñuelas +SBC 72113 2002 0 Ponce +SBC 72115 2002 0 Quebradillas +SBC 72117 2002 0 Rincón +SBC 72119 2002 0 Río Grande +SBC 72121 2002 0 Sabana Grande +SBC 72123 2002 0 Salinas +SBC 72125 2002 0 San Germán +SBC 72127 2002 0 San Juan +SBC 72129 2002 0 San Lorenzo +SBC 72131 2002 0 San Sebastián +SBC 72133 2002 0 Santa Isabel +SBC 72135 2002 0 Toa Alta +SBC 72137 2002 0 Toa Baja +SBC 72139 2002 0 Trujillo Alto +SBC 72141 2002 0 Utuado +SBC 72143 2002 0 Vega Alta +SBC 72145 2002 0 Vega Baja +SBC 72147 2002 0 Vieques +SBC 72149 2002 0 Villalba +SBC 72151 2002 0 Yabucoa +SBC 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_SBR.ALO new file mode 100644 index 0000000..cc9eb0f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_SBR.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 72000 2002 0 PR +SBR 72001 2002 0 Adjuntas +SBR 72003 2002 0 Aguada +SBR 72005 2002 0 Aguadilla +SBR 72007 2002 0 Aguas Buenas +SBR 72009 2002 0 Aibonito +SBR 72011 2002 0 Añasco +SBR 72013 2002 0 Arecibo +SBR 72015 2002 0 Arroyo +SBR 72017 2002 0 Barceloneta +SBR 72019 2002 0 Barranquitas +SBR 72021 2002 0 Bayamón +SBR 72023 2002 0 Cabo Rojo +SBR 72025 2002 0 Caguas +SBR 72027 2002 0 Camuy +SBR 72029 2002 0 Canóvanas +SBR 72031 2002 0 Carolina +SBR 72033 2002 0 Cataño +SBR 72035 2002 0 Cayey +SBR 72037 2002 0 Ceiba +SBR 72039 2002 0 Ciales +SBR 72041 2002 0 Cidra +SBR 72043 2002 0 Coamo +SBR 72045 2002 0 Comerío +SBR 72047 2002 0 Corozal +SBR 72049 2002 0 Culebra +SBR 72051 2002 0 Dorado +SBR 72053 2002 0 Fajardo +SBR 72054 2002 0 Florida +SBR 72055 2002 0 Guánica +SBR 72057 2002 0 Guayama +SBR 72059 2002 0 Guayanilla +SBR 72061 2002 0 Guaynabo +SBR 72063 2002 0 Gurabo +SBR 72065 2002 0 Hatillo +SBR 72067 2002 0 Hormigueros +SBR 72069 2002 0 Humacao +SBR 72071 2002 0 Isabela +SBR 72073 2002 0 Jayuya +SBR 72075 2002 0 Juana Díaz +SBR 72077 2002 0 Juncos +SBR 72079 2002 0 Lajas +SBR 72081 2002 0 Lares +SBR 72083 2002 0 Las Marías +SBR 72085 2002 0 Las Piedras +SBR 72087 2002 0 Loíza +SBR 72089 2002 0 Luquillo +SBR 72091 2002 0 Manatí +SBR 72093 2002 0 Maricao +SBR 72095 2002 0 Maunabo +SBR 72097 2002 0 Mayagüez +SBR 72099 2002 0 Moca +SBR 72101 2002 0 Morovis +SBR 72103 2002 0 Naguabo +SBR 72105 2002 0 Naranjito +SBR 72107 2002 0 Orocovis +SBR 72109 2002 0 Patillas +SBR 72111 2002 0 Peñuelas +SBR 72113 2002 0 Ponce +SBR 72115 2002 0 Quebradillas +SBR 72117 2002 0 Rincón +SBR 72119 2002 0 Río Grande +SBR 72121 2002 0 Sabana Grande +SBR 72123 2002 0 Salinas +SBR 72125 2002 0 San Germán +SBR 72127 2002 0 San Juan +SBR 72129 2002 0 San Lorenzo +SBR 72131 2002 0 San Sebastián +SBR 72133 2002 0 Santa Isabel +SBR 72135 2002 0 Toa Alta +SBR 72137 2002 0 Toa Baja +SBR 72139 2002 0 Trujillo Alto +SBR 72141 2002 0 Utuado +SBR 72143 2002 0 Vega Alta +SBR 72145 2002 0 Vega Baja +SBR 72147 2002 0 Vieques +SBR 72149 2002 0 Villalba +SBR 72151 2002 0 Yabucoa +SBR 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_SNOWM.ALO new file mode 100644 index 0000000..1ee34c9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_SNOWM.ALO @@ -0,0 +1,103 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 72000 2002 0 PR +SNM 72001 2002 0 Adjuntas +SNM 72003 2002 0 Aguada +SNM 72005 2002 0 Aguadilla +SNM 72007 2002 0 Aguas Buenas +SNM 72009 2002 0 Aibonito +SNM 72011 2002 0 Añasco +SNM 72013 2002 0 Arecibo +SNM 72015 2002 0 Arroyo +SNM 72017 2002 0 Barceloneta +SNM 72019 2002 0 Barranquitas +SNM 72021 2002 0 Bayamón +SNM 72023 2002 0 Cabo Rojo +SNM 72025 2002 0 Caguas +SNM 72027 2002 0 Camuy +SNM 72029 2002 0 Canóvanas +SNM 72031 2002 0 Carolina +SNM 72033 2002 0 Cataño +SNM 72035 2002 0 Cayey +SNM 72037 2002 0 Ceiba +SNM 72039 2002 0 Ciales +SNM 72041 2002 0 Cidra +SNM 72043 2002 0 Coamo +SNM 72045 2002 0 Comerío +SNM 72047 2002 0 Corozal +SNM 72049 2002 0 Culebra +SNM 72051 2002 0 Dorado +SNM 72053 2002 0 Fajardo +SNM 72054 2002 0 Florida +SNM 72055 2002 0 Guánica +SNM 72057 2002 0 Guayama +SNM 72059 2002 0 Guayanilla +SNM 72061 2002 0 Guaynabo +SNM 72063 2002 0 Gurabo +SNM 72065 2002 0 Hatillo +SNM 72067 2002 0 Hormigueros +SNM 72069 2002 0 Humacao +SNM 72071 2002 0 Isabela +SNM 72073 2002 0 Jayuya +SNM 72075 2002 0 Juana Díaz +SNM 72077 2002 0 Juncos +SNM 72079 2002 0 Lajas +SNM 72081 2002 0 Lares +SNM 72083 2002 0 Las Marías +SNM 72085 2002 0 Las Piedras +SNM 72087 2002 0 Loíza +SNM 72089 2002 0 Luquillo +SNM 72091 2002 0 Manatí +SNM 72093 2002 0 Maricao +SNM 72095 2002 0 Maunabo +SNM 72097 2002 0 Mayagüez +SNM 72099 2002 0 Moca +SNM 72101 2002 0 Morovis +SNM 72103 2002 0 Naguabo +SNM 72105 2002 0 Naranjito +SNM 72107 2002 0 Orocovis +SNM 72109 2002 0 Patillas +SNM 72111 2002 0 Peñuelas +SNM 72113 2002 0 Ponce +SNM 72115 2002 0 Quebradillas +SNM 72117 2002 0 Rincón +SNM 72119 2002 0 Río Grande +SNM 72121 2002 0 Sabana Grande +SNM 72123 2002 0 Salinas +SNM 72125 2002 0 San Germán +SNM 72127 2002 0 San Juan +SNM 72129 2002 0 San Lorenzo +SNM 72131 2002 0 San Sebastián +SNM 72133 2002 0 Santa Isabel +SNM 72135 2002 0 Toa Alta +SNM 72137 2002 0 Toa Baja +SNM 72139 2002 0 Trujillo Alto +SNM 72141 2002 0 Utuado +SNM 72143 2002 0 Vega Alta +SNM 72145 2002 0 Vega Baja +SNM 72147 2002 0 Vieques +SNM 72149 2002 0 Villalba +SNM 72151 2002 0 Yabucoa +SNM 72153 2002 0 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_WIB.ALO new file mode 100644 index 0000000..abfec1c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_WIB.ALO @@ -0,0 +1,105 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +It is used for State-to-County allocation only. Not for US-to-State. + +9/13/05 epa: Update to add non-inland water from GICS data. +1/13/06 epa: Fix "WOB" to "WIB" indicator code. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +WIB 72000 1990 2542.7 PR 2542.7 +WIB 72001 1990 1.08 Adjuntas +WIB 72003 1990 18.96 Aguada +WIB 72005 1990 50.51 Aguadilla +WIB 72007 1990 0.00 Aguas Buenas +WIB 72009 1990 0.05 Aibonito +WIB 72011 1990 7.63 Añasco +WIB 72013 1990 59.85 Arecibo +WIB 72015 1990 26.64 Arroyo +WIB 72017 1990 16.00 Barceloneta +WIB 72019 1990 0.03 Barranquitas +WIB 72021 1990 0.38 Bayamón +WIB 72023 1990 142.39 Cabo Rojo +WIB 72025 1990 1.03 Caguas +WIB 72027 1990 20.07 Camuy +WIB 72029 1990 0.32 Canóvanas +WIB 72031 1990 22.56 Carolina +WIB 72033 1990 5.74 Cataño +WIB 72035 1990 0.03 Cayey +WIB 72037 1990 175.19 Ceiba +WIB 72039 1990 0.43 Ciales +WIB 72041 1990 1.09 Cidra +WIB 72043 1990 0.02 Coamo +WIB 72045 1990 0.34 Comerío +WIB 72047 1990 0.01 Corozal +WIB 72049 1990 210.96 Culebra +WIB 72051 1990 39.66 Dorado +WIB 72053 1990 99.95 Fajardo +WIB 72054 1990 0.00 Florida +WIB 72055 1990 57.65 Guánica +WIB 72057 1990 59.71 Guayama +WIB 72059 1990 30.10 Guayanilla +WIB 72061 1990 0.29 Guaynabo +WIB 72063 1990 1.14 Gurabo +WIB 72065 1990 21.99 Hatillo +WIB 72067 1990 0.00 Hormigueros +WIB 72069 1990 34.89 Humacao +WIB 72071 1990 47.46 Isabela +WIB 72073 1990 0.00 Jayuya +WIB 72075 1990 61.00 Juana Díaz +WIB 72077 1990 0.03 Juncos +WIB 72079 1990 55.38 Lajas +WIB 72081 1990 0.48 Lares +WIB 72083 1990 0.39 Las Marías +WIB 72085 1990 0.01 Las Piedras +WIB 72087 1990 61.37 Loíza +WIB 72089 1990 26.91 Luquillo +WIB 72091 1990 34.31 Manatí +WIB 72093 1990 0.00 Maricao +WIB 72095 1990 22.32 Maunabo +WIB 72097 1990 254.58 Mayagüez +WIB 72099 1990 0.00 Moca +WIB 72101 1990 0.13 Morovis +WIB 72103 1990 28.13 Naguabo +WIB 72105 1990 1.22 Naranjito +WIB 72107 1990 0.44 Orocovis +WIB 72109 1990 37.73 Patillas +WIB 72111 1990 30.87 Peñuelas +WIB 72113 1990 101.73 Ponce +WIB 72115 1990 15.69 Quebradillas +WIB 72117 1990 51.96 Rincón +WIB 72119 1990 38.68 Río Grande +WIB 72121 1990 0.01 Sabana Grande +WIB 72123 1990 65.58 Salinas +WIB 72125 1990 0.00 San Germán +WIB 72127 1990 43.57 San Juan +WIB 72129 1990 0.18 San Lorenzo +WIB 72131 1990 1.99 San Sebastián +WIB 72133 1990 56.48 Santa Isabel +WIB 72135 1990 0.50 Toa Alta +WIB 72137 1990 24.61 Toa Baja +WIB 72139 1990 1.55 Trujillo Alto +WIB 72141 1990 4.00 Utuado +WIB 72143 1990 12.64 Vega Alta +WIB 72145 1990 30.98 Vega Baja +WIB 72147 1990 280.92 Vieques +WIB 72149 1990 4.17 Villalba +WIB 72151 1990 36.54 Yabucoa +WIB 72153 1990 1.47 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/PR_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/PR_WOB.ALO new file mode 100644 index 0000000..470ad28 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/PR_WOB.ALO @@ -0,0 +1,104 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +It is used for State-to-County allocation only. Not for US-to-State. + +9/13/05 epa: Update to add non-inland water from GICS data. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +WOB 72000 1990 465.6 PR 465.6 +WOB 72001 1990 1.08 Adjuntas +WOB 72003 1990 2.39 Aguada +WOB 72005 1990 6.39 Aguadilla +WOB 72007 1990 0.00 Aguas Buenas +WOB 72009 1990 0.05 Aibonito +WOB 72011 1990 1.55 Añasco +WOB 72013 1990 9.69 Arecibo +WOB 72015 1990 3.35 Arroyo +WOB 72017 1990 2.25 Barceloneta +WOB 72019 1990 0.03 Barranquitas +WOB 72021 1990 0.37 Bayamón +WOB 72023 1990 24.36 Cabo Rojo +WOB 72025 1990 1.03 Caguas +WOB 72027 1990 2.54 Camuy +WOB 72029 1990 0.32 Canóvanas +WOB 72031 1990 8.27 Carolina +WOB 72033 1990 5.74 Cataño +WOB 72035 1990 0.03 Cayey +WOB 72037 1990 34.35 Ceiba +WOB 72039 1990 0.43 Ciales +WOB 72041 1990 1.09 Cidra +WOB 72043 1990 0.02 Coamo +WOB 72045 1990 0.34 Comerío +WOB 72047 1990 0.01 Corozal +WOB 72049 1990 39.25 Culebra +WOB 72051 1990 5.29 Dorado +WOB 72053 1990 16.40 Fajardo +WOB 72054 1990 0.00 Florida +WOB 72055 1990 12.11 Guánica +WOB 72057 1990 17.35 Guayama +WOB 72059 1990 6.68 Guayanilla +WOB 72061 1990 0.14 Guaynabo +WOB 72063 1990 1.14 Gurabo +WOB 72065 1990 2.84 Hatillo +WOB 72067 1990 0.00 Hormigueros +WOB 72069 1990 5.07 Humacao +WOB 72071 1990 6.07 Isabela +WOB 72073 1990 0.00 Jayuya +WOB 72075 1990 8.45 Juana Díaz +WOB 72077 1990 0.03 Juncos +WOB 72079 1990 10.83 Lajas +WOB 72081 1990 0.48 Lares +WOB 72083 1990 0.39 Las Marías +WOB 72085 1990 0.01 Las Piedras +WOB 72087 1990 10.22 Loíza +WOB 72089 1990 3.49 Luquillo +WOB 72091 1990 6.48 Manatí +WOB 72093 1990 0.00 Maricao +WOB 72095 1990 2.84 Maunabo +WOB 72097 1990 32.10 Mayagüez +WOB 72099 1990 0.00 Moca +WOB 72101 1990 0.13 Morovis +WOB 72103 1990 6.12 Naguabo +WOB 72105 1990 1.22 Naranjito +WOB 72107 1990 0.44 Orocovis +WOB 72109 1990 5.89 Patillas +WOB 72111 1990 5.29 Peñuelas +WOB 72113 1990 15.02 Ponce +WOB 72115 1990 2.99 Quebradillas +WOB 72117 1990 6.50 Rincón +WOB 72119 1990 7.05 Río Grande +WOB 72121 1990 0.01 Sabana Grande +WOB 72123 1990 21.14 Salinas +WOB 72125 1990 0.00 San Germán +WOB 72127 1990 15.72 San Juan +WOB 72129 1990 0.18 San Lorenzo +WOB 72131 1990 1.99 San Sebastián +WOB 72133 1990 8.86 Santa Isabel +WOB 72135 1990 0.50 Toa Alta +WOB 72137 1990 4.16 Toa Baja +WOB 72139 1990 1.55 Trujillo Alto +WOB 72141 1990 4.00 Utuado +WOB 72143 1990 1.59 Vega Alta +WOB 72145 1990 7.57 Vega Baja +WOB 72147 1990 43.84 Vieques +WOB 72149 1990 4.17 Villalba +WOB 72151 1990 5.04 Yabucoa +WOB 72153 1990 1.36 Yauco +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_AIRTR.ALO new file mode 100644 index 0000000..5311d6c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_AIRTR.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 44000 2002 311.990 RI +AIR 44001 2002 0.000 Bristol +AIR 44003 2002 236.500 Kent +AIR 44005 2002 0.000 Newport +AIR 44007 2002 0.230 Providence +AIR 44009 2002 75.260 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_COAL.ALO new file mode 100644 index 0000000..fa4a7ac --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_COAL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 44000 2002 0 RI +MIN 44001 2002 0 Bristol +MIN 44003 2002 0 Kent +MIN 44005 2002 0 Newport +MIN 44007 2002 0 Providence +MIN 44009 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_CONST.ALO new file mode 100644 index 0000000..2cd031d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_CONST.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 44000 2003 1152141 RI +CON 44001 2003 79825 Bristol +CON 44003 2003 127962 Kent +CON 44005 2003 135989 Newport +CON 44007 2003 623617 Providence +CON 44009 2003 184748 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_FARMS.ALO new file mode 100644 index 0000000..862006b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_FARMS.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 44000 2002 17820 RI +FRM 44001 2002 836 Bristol +FRM 44003 2002 1596 Kent +FRM 44005 2002 4899 Newport +FRM 44007 2002 3945 Providence +FRM 44009 2002 6544 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_GOLF.ALO new file mode 100644 index 0000000..30360a5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_GOLF.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 44000 2002 61 RI +GC 44001 2002 3 Bristol +GC 44003 2002 10 Kent +GC 44005 2002 10 Newport +GC 44007 2002 17 Providence +GC 44009 2002 21 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_HOLSL.ALO new file mode 100644 index 0000000..0874ab2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_HOLSL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 44000 2002 1481 RI +COM 44001 2002 55 Bristol +COM 44003 2002 278 Kent +COM 44005 2002 99 Newport +COM 44007 2002 916 Providence +COM 44009 2002 133 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_HOUSE.ALO new file mode 100644 index 0000000..f3dc119 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_HOUSE.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 44000 2002 443761 RI +HOU 44001 2002 19995 Bristol +HOU 44003 2002 71254 Kent +HOU 44005 2002 40058 Newport +HOU 44007 2002 254238 Providence +HOU 44009 2002 58216 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_LOGGN.ALO new file mode 100644 index 0000000..fba2b2c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_LOGGN.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 44000 2002 9365007 RI +LOG 44001 2002 0 Bristol +LOG 44003 2002 2273166 Kent +LOG 44005 2002 39328 Newport +LOG 44007 2002 3441968 Providence +LOG 44009 2002 3610545 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_LSCAP.ALO new file mode 100644 index 0000000..b77d8ab --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_LSCAP.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 44000 2002 974 RI +LSC 44001 2002 55 Bristol +LSC 44003 2002 268 Kent +LSC 44005 2002 159 Newport +LSC 44007 2002 299 Providence +LSC 44009 2002 193 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_MNFG.ALO new file mode 100644 index 0000000..b7484b6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_MNFG.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 44000 2002 114663 RI +MFG 44001 2002 4922 Bristol +MFG 44003 2002 17780 Kent +MFG 44005 2002 6142 Newport +MFG 44007 2002 72620 Providence +MFG 44009 2002 13199 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_OIL.ALO new file mode 100644 index 0000000..34f9c53 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_OIL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 44000 2002 7 RI +OIL 44001 2002 0 Bristol +OIL 44003 2002 0 Kent +OIL 44005 2002 3 Newport +OIL 44007 2002 4 Providence +OIL 44009 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_POP.ALO new file mode 100644 index 0000000..4d35bcb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_POP.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 44000 2002 1068897 RI +POP 44001 2002 52147 Bristol +POP 44003 2002 170060 Kent +POP 44005 2002 85682 Newport +POP 44007 2002 634201 Providence +POP 44009 2002 126807 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_RAIL.ALO new file mode 100644 index 0000000..bd97fd6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_RAIL.ALO @@ -0,0 +1,32 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 44000 2002 1.140 RI +RR 44001 2002 0.000 Bristol +RR 44003 2002 0.000 Kent +RR 44005 2002 1.140 Newport +RR 44007 2002 0.000 Providence +RR 44009 2002 0.000 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_RVPRK.ALO new file mode 100644 index 0000000..4936884 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_RVPRK.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 44000 2002 22 RI +RVP 44001 2002 1 Bristol +RVP 44003 2002 3 Kent +RVP 44005 2002 0 Newport +RVP 44007 2002 6 Providence +RVP 44009 2002 12 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_SBC.ALO new file mode 100644 index 0000000..e6da4de --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_SBC.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 44000 2002 974 RI +SBC 44001 2002 81 Bristol +SBC 44003 2002 268 Kent +SBC 44005 2002 133 Newport +SBC 44007 2002 299 Providence +SBC 44009 2002 193 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_SBR.ALO new file mode 100644 index 0000000..b9d4a0a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_SBR.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 44000 2002 443761 RI +SBR 44001 2002 19995 Bristol +SBR 44003 2002 71254 Kent +SBR 44005 2002 40058 Newport +SBR 44007 2002 254238 Providence +SBR 44009 2002 58216 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_SNOWM.ALO new file mode 100644 index 0000000..9f63b3e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_SNOWM.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 44000 2002 0 RI +SNM 44001 2002 0 Bristol +SNM 44003 2002 0 Kent +SNM 44005 2002 0 Newport +SNM 44007 2002 0 Providence +SNM 44009 2002 0 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_WIB.ALO new file mode 100644 index 0000000..c66640d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_WIB.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 44000 1990 1056 RI +WIB 44001 1990 77 Bristol +WIB 44003 1990 65 Kent +WIB 44005 1990 433 Newport +WIB 44007 1990 66 Providence +WIB 44009 1990 415 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/RI_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/RI_WOB.ALO new file mode 100644 index 0000000..53b22a3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/RI_WOB.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 44000 1990 513 RI +WOB 44001 1990 55 Bristol +WOB 44003 1990 49 Kent +WOB 44005 1990 219 Newport +WOB 44007 1990 59 Providence +WOB 44009 1990 131 Washington +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_AIRTR.ALO new file mode 100644 index 0000000..0f06b0d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_AIRTR.ALO @@ -0,0 +1,73 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 45000 2002 254.625 SC +AIR 45001 2002 0.000 Abbeville +AIR 45003 2002 0.200 Aiken +AIR 45005 2002 0.044 Allendale +AIR 45007 2002 0.410 Anderson +AIR 45009 2002 0.000 Bamberg +AIR 45011 2002 0.080 Barnwell +AIR 45013 2002 0.000 Beaufort +AIR 45015 2002 0.023 Berkeley +AIR 45017 2002 0.000 Calhoun +AIR 45019 2002 72.330 Charleston +AIR 45021 2002 0.000 Cherokee +AIR 45023 2002 0.430 Chester +AIR 45025 2002 0.054 Chesterfield +AIR 45027 2002 0.094 Clarendon +AIR 45029 2002 0.140 Colleton +AIR 45031 2002 0.040 Darlington +AIR 45033 2002 0.000 Dillon +AIR 45035 2002 0.134 Dorchester +AIR 45037 2002 0.000 Edgefield +AIR 45039 2002 0.084 Fairfield +AIR 45041 2002 0.540 Florence +AIR 45043 2002 0.093 Georgetown +AIR 45045 2002 0.000 Greenville +AIR 45047 2002 0.184 Greenwood +AIR 45049 2002 0.000 Hampton +AIR 45051 2002 0.450 Horry +AIR 45053 2002 0.000 Jasper +AIR 45055 2002 0.168 Kershaw +AIR 45057 2002 0.100 Lancaster +AIR 45059 2002 0.000 Laurens +AIR 45061 2002 0.000 Lee +AIR 45063 2002 90.600 Lexington +AIR 45065 2002 0.000 McCormick +AIR 45067 2002 0.044 Marion +AIR 45069 2002 0.022 Marlboro +AIR 45071 2002 0.064 Newberry +AIR 45073 2002 0.054 Oconee +AIR 45075 2002 0.118 Orangeburg +AIR 45077 2002 0.233 Pickens +AIR 45079 2002 0.410 Richland +AIR 45081 2002 0.000 Saluda +AIR 45083 2002 87.310 Spartanburg +AIR 45085 2002 0.170 Sumter +AIR 45087 2002 0.000 Union +AIR 45089 2002 0.000 Williamsburg +AIR 45091 2002 0.000 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_COAL.ALO new file mode 100644 index 0000000..da5e35e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_COAL.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 45000 2002 0 SC +MIN 45001 2002 0 Abbeville +MIN 45003 2002 0 Aiken +MIN 45005 2002 0 Allendale +MIN 45007 2002 0 Anderson +MIN 45009 2002 0 Bamberg +MIN 45011 2002 0 Barnwell +MIN 45013 2002 0 Beaufort +MIN 45015 2002 0 Berkeley +MIN 45017 2002 0 Calhoun +MIN 45019 2002 0 Charleston +MIN 45021 2002 0 Cherokee +MIN 45023 2002 0 Chester +MIN 45025 2002 0 Chesterfield +MIN 45027 2002 0 Clarendon +MIN 45029 2002 0 Colleton +MIN 45031 2002 0 Darlington +MIN 45033 2002 0 Dillon +MIN 45035 2002 0 Dorchester +MIN 45037 2002 0 Edgefield +MIN 45039 2002 0 Fairfield +MIN 45041 2002 0 Florence +MIN 45043 2002 0 Georgetown +MIN 45045 2002 0 Greenville +MIN 45047 2002 0 Greenwood +MIN 45049 2002 0 Hampton +MIN 45051 2002 0 Horry +MIN 45053 2002 0 Jasper +MIN 45055 2002 0 Kershaw +MIN 45057 2002 0 Lancaster +MIN 45059 2002 0 Laurens +MIN 45061 2002 0 Lee +MIN 45063 2002 0 Lexington +MIN 45065 2002 0 McCormick +MIN 45067 2002 0 Marion +MIN 45069 2002 0 Marlboro +MIN 45071 2002 0 Newberry +MIN 45073 2002 0 Oconee +MIN 45075 2002 0 Orangeburg +MIN 45077 2002 0 Pickens +MIN 45079 2002 0 Richland +MIN 45081 2002 0 Saluda +MIN 45083 2002 0 Spartanburg +MIN 45085 2002 0 Sumter +MIN 45087 2002 0 Union +MIN 45089 2002 0 Williamsburg +MIN 45091 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_CONST.ALO new file mode 100644 index 0000000..86fa0c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_CONST.ALO @@ -0,0 +1,73 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 45000 2003 9889541 SC +CON 45001 2003 51181 Abbeville +CON 45003 2003 221925 Aiken +CON 45005 2003 10123 Allendale +CON 45007 2003 295398 Anderson +CON 45009 2003 13786 Bamberg +CON 45011 2003 22391 Barnwell +CON 45013 2003 830344 Beaufort +CON 45015 2003 225707 Berkeley +CON 45017 2003 17375 Calhoun +CON 45019 2003 1072063 Charleston +CON 45021 2003 64259 Cherokee +CON 45023 2003 49472 Chester +CON 45025 2003 28710 Chesterfield +CON 45027 2003 55498 Clarendon +CON 45029 2003 40946 Colleton +CON 45031 2003 30497 Darlington +CON 45033 2003 19166 Dillon +CON 45035 2003 224663 Dorchester +CON 45037 2003 28388 Edgefield +CON 45039 2003 21602 Fairfield +CON 45041 2003 154908 Florence +CON 45043 2003 157412 Georgetown +CON 45045 2003 1076001 Greenville +CON 45047 2003 79571 Greenwood +CON 45049 2003 12720 Hampton +CON 45051 2003 1113838 Horry +CON 45053 2003 44357 Jasper +CON 45055 2003 69138 Kershaw +CON 45057 2003 76098 Lancaster +CON 45059 2003 63712 Laurens +CON 45061 2003 11002 Lee +CON 45063 2003 474955 Lexington +CON 45065 2003 42219 McCormick +CON 45067 2003 13932 Marion +CON 45069 2003 12685 Marlboro +CON 45071 2003 69272 Newberry +CON 45073 2003 170840 Oconee +CON 45075 2003 77312 Orangeburg +CON 45077 2003 227690 Pickens +CON 45079 2003 1141866 Richland +CON 45081 2003 15495 Saluda +CON 45083 2003 568778 Spartanburg +CON 45085 2003 139653 Sumter +CON 45087 2003 15847 Union +CON 45089 2003 40175 Williamsburg +CON 45091 2003 696568 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_FARMS.ALO new file mode 100644 index 0000000..ffe1329 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_FARMS.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 45000 2002 1374617 SC +FRM 45001 2002 13474 Abbeville +FRM 45003 2002 29267 Aiken +FRM 45005 2002 36979 Allendale +FRM 45007 2002 38806 Anderson +FRM 45009 2002 29829 Bamberg +FRM 45011 2002 18995 Barnwell +FRM 45013 2002 3368 Beaufort +FRM 45015 2002 7855 Berkeley +FRM 45017 2002 29524 Calhoun +FRM 45019 2002 5105 Charleston +FRM 45021 2002 10724 Cherokee +FRM 45023 2002 14370 Chester +FRM 45025 2002 26226 Chesterfield +FRM 45027 2002 71439 Clarendon +FRM 45029 2002 15634 Colleton +FRM 45031 2002 68171 Darlington +FRM 45033 2002 78239 Dillon +FRM 45035 2002 18084 Dorchester +FRM 45037 2002 15075 Edgefield +FRM 45039 2002 8172 Fairfield +FRM 45041 2002 79544 Florence +FRM 45043 2002 8695 Georgetown +FRM 45045 2002 17337 Greenville +FRM 45047 2002 10348 Greenwood +FRM 45049 2002 26549 Hampton +FRM 45051 2002 69974 Horry +FRM 45053 2002 7732 Jasper +FRM 45055 2002 9906 Kershaw +FRM 45057 2002 14516 Lancaster +FRM 45059 2002 24326 Laurens +FRM 45061 2002 63721 Lee +FRM 45063 2002 29362 Lexington +FRM 45065 2002 1900 McCormick +FRM 45067 2002 36630 Marion +FRM 45069 2002 57074 Marlboro +FRM 45071 2002 23114 Newberry +FRM 45073 2002 17172 Oconee +FRM 45075 2002 107237 Orangeburg +FRM 45077 2002 9340 Pickens +FRM 45079 2002 14749 Richland +FRM 45081 2002 23283 Saluda +FRM 45083 2002 29125 Spartanburg +FRM 45085 2002 62003 Sumter +FRM 45087 2002 6011 Union +FRM 45089 2002 61855 Williamsburg +FRM 45091 2002 23778 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_GOLF.ALO new file mode 100644 index 0000000..0f48493 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_GOLF.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 45000 2002 284 SC +GC 45001 2002 1 Abbeville +GC 45003 2002 17 Aiken +GC 45005 2002 1 Allendale +GC 45007 2002 11 Anderson +GC 45009 2002 1 Bamberg +GC 45011 2002 2 Barnwell +GC 45013 2002 30 Beaufort +GC 45015 2002 4 Berkeley +GC 45017 2002 2 Calhoun +GC 45019 2002 10 Charleston +GC 45021 2002 3 Cherokee +GC 45023 2002 0 Chester +GC 45025 2002 4 Chesterfield +GC 45027 2002 3 Clarendon +GC 45029 2002 1 Colleton +GC 45031 2002 5 Darlington +GC 45033 2002 1 Dillon +GC 45035 2002 6 Dorchester +GC 45037 2002 1 Edgefield +GC 45039 2002 1 Fairfield +GC 45041 2002 7 Florence +GC 45043 2002 12 Georgetown +GC 45045 2002 24 Greenville +GC 45047 2002 8 Greenwood +GC 45049 2002 2 Hampton +GC 45051 2002 52 Horry +GC 45053 2002 1 Jasper +GC 45055 2002 3 Kershaw +GC 45057 2002 0 Lancaster +GC 45059 2002 1 Laurens +GC 45061 2002 0 Lee +GC 45063 2002 7 Lexington +GC 45065 2002 1 McCormick +GC 45067 2002 2 Marion +GC 45069 2002 2 Marlboro +GC 45071 2002 2 Newberry +GC 45073 2002 5 Oconee +GC 45075 2002 6 Orangeburg +GC 45077 2002 4 Pickens +GC 45079 2002 13 Richland +GC 45081 2002 1 Saluda +GC 45083 2002 13 Spartanburg +GC 45085 2002 4 Sumter +GC 45087 2002 2 Union +GC 45089 2002 1 Williamsburg +GC 45091 2002 7 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_HOLSL.ALO new file mode 100644 index 0000000..c412d14 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_HOLSL.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 45000 2002 4939 SC +COM 45001 2002 11 Abbeville +COM 45003 2002 86 Aiken +COM 45005 2002 7 Allendale +COM 45007 2002 198 Anderson +COM 45009 2002 7 Bamberg +COM 45011 2002 6 Barnwell +COM 45013 2002 137 Beaufort +COM 45015 2002 106 Berkeley +COM 45017 2002 10 Calhoun +COM 45019 2002 494 Charleston +COM 45021 2002 35 Cherokee +COM 45023 2002 21 Chester +COM 45025 2002 27 Chesterfield +COM 45027 2002 17 Clarendon +COM 45029 2002 32 Colleton +COM 45031 2002 79 Darlington +COM 45033 2002 26 Dillon +COM 45035 2002 66 Dorchester +COM 45037 2002 17 Edgefield +COM 45039 2002 11 Fairfield +COM 45041 2002 194 Florence +COM 45043 2002 59 Georgetown +COM 45045 2002 842 Greenville +COM 45047 2002 53 Greenwood +COM 45049 2002 10 Hampton +COM 45051 2002 239 Horry +COM 45053 2002 14 Jasper +COM 45055 2002 30 Kershaw +COM 45057 2002 40 Lancaster +COM 45059 2002 36 Laurens +COM 45061 2002 14 Lee +COM 45063 2002 320 Lexington +COM 45065 2002 4 McCormick +COM 45067 2002 30 Marion +COM 45069 2002 16 Marlboro +COM 45071 2002 23 Newberry +COM 45073 2002 55 Oconee +COM 45075 2002 85 Orangeburg +COM 45077 2002 88 Pickens +COM 45079 2002 506 Richland +COM 45081 2002 9 Saluda +COM 45083 2002 501 Spartanburg +COM 45085 2002 79 Sumter +COM 45087 2002 18 Union +COM 45089 2002 26 Williamsburg +COM 45091 2002 255 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_HOUSE.ALO new file mode 100644 index 0000000..ff827f1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_HOUSE.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 45000 2002 1825465 SC +HOU 45001 2002 11785 Abbeville +HOU 45003 2002 63865 Aiken +HOU 45005 2002 4637 Allendale +HOU 45007 2002 75741 Anderson +HOU 45009 2002 7221 Bamberg +HOU 45011 2002 10302 Barnwell +HOU 45013 2002 65634 Beaufort +HOU 45015 2002 56918 Berkeley +HOU 45017 2002 7088 Calhoun +HOU 45019 2002 148058 Charleston +HOU 45021 2002 22856 Cherokee +HOU 45023 2002 14635 Chester +HOU 45025 2002 19369 Chesterfield +HOU 45027 2002 15645 Clarendon +HOU 45029 2002 18459 Colleton +HOU 45031 2002 29501 Darlington +HOU 45033 2002 12866 Dillon +HOU 45035 2002 39008 Dorchester +HOU 45037 2002 9417 Edgefield +HOU 45039 2002 10562 Fairfield +HOU 45041 2002 52856 Florence +HOU 45043 2002 29619 Georgetown +HOU 45045 2002 169695 Greenville +HOU 45047 2002 28923 Greenwood +HOU 45049 2002 8694 Hampton +HOU 45051 2002 131384 Horry +HOU 45053 2002 8156 Jasper +HOU 45055 2002 23547 Kershaw +HOU 45057 2002 25846 Lancaster +HOU 45059 2002 31011 Laurens +HOU 45061 2002 7805 Lee +HOU 45063 2002 94599 Lexington +HOU 45065 2002 4636 McCormick +HOU 45067 2002 15402 Marion +HOU 45069 2002 11988 Marlboro +HOU 45071 2002 17085 Newberry +HOU 45073 2002 33528 Oconee +HOU 45075 2002 40235 Orangeburg +HOU 45077 2002 47627 Pickens +HOU 45079 2002 135709 Richland +HOU 45081 2002 8672 Saluda +HOU 45083 2002 110786 Spartanburg +HOU 45085 2002 42645 Sumter +HOU 45087 2002 13441 Union +HOU 45089 2002 15815 Williamsburg +HOU 45091 2002 72194 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_LOGGN.ALO new file mode 100644 index 0000000..6831e02 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_LOGGN.ALO @@ -0,0 +1,73 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 45000 2002 799937880 SC +LOG 45001 2002 15430806 Abbeville +LOG 45003 2002 20220173 Aiken +LOG 45005 2002 8901648 Allendale +LOG 45007 2002 12878696 Anderson +LOG 45009 2002 11801270 Bamberg +LOG 45011 2002 10541339 Barnwell +LOG 45013 2002 4577408 Beaufort +LOG 45015 2002 15310212 Berkeley +LOG 45017 2002 6178402 Calhoun +LOG 45019 2002 8033576 Charleston +LOG 45021 2002 11676564 Cherokee +LOG 45023 2002 18240464 Chester +LOG 45025 2002 18424878 Chesterfield +LOG 45027 2002 10062654 Clarendon +LOG 45029 2002 37152345 Colleton +LOG 45031 2002 14738448 Darlington +LOG 45033 2002 10505748 Dillon +LOG 45035 2002 17757281 Dorchester +LOG 45037 2002 17138262 Edgefield +LOG 45039 2002 27515843 Fairfield +LOG 45041 2002 25563660 Florence +LOG 45043 2002 26708661 Georgetown +LOG 45045 2002 8811698 Greenville +LOG 45047 2002 36049488 Greenwood +LOG 45049 2002 24626357 Hampton +LOG 45051 2002 36226070 Horry +LOG 45053 2002 18132986 Jasper +LOG 45055 2002 21476043 Kershaw +LOG 45057 2002 14831429 Lancaster +LOG 45059 2002 19558183 Laurens +LOG 45061 2002 5590868 Lee +LOG 45063 2002 11356859 Lexington +LOG 45065 2002 9914328 McCormick +LOG 45067 2002 20678072 Marion +LOG 45069 2002 24753017 Marlboro +LOG 45071 2002 26443594 Newberry +LOG 45073 2002 12352520 Oconee +LOG 45075 2002 24982267 Orangeburg +LOG 45077 2002 13485429 Pickens +LOG 45079 2002 20721092 Richland +LOG 45081 2002 19764435 Saluda +LOG 45083 2002 12480568 Spartanburg +LOG 45085 2002 7824490 Sumter +LOG 45087 2002 15305478 Union +LOG 45089 2002 26141067 Williamsburg +LOG 45091 2002 19073207 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_LSCAP.ALO new file mode 100644 index 0000000..e2ff9d9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_LSCAP.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 45000 2002 7318 SC +LSC 45001 2002 7 Abbeville +LSC 45003 2002 295 Aiken +LSC 45005 2002 0 Allendale +LSC 45007 2002 169 Anderson +LSC 45009 2002 40 Bamberg +LSC 45011 2002 7 Barnwell +LSC 45013 2002 1047 Beaufort +LSC 45015 2002 124 Berkeley +LSC 45017 2002 7 Calhoun +LSC 45019 2002 963 Charleston +LSC 45021 2002 37 Cherokee +LSC 45023 2002 21 Chester +LSC 45025 2002 15 Chesterfield +LSC 45027 2002 23 Clarendon +LSC 45029 2002 82 Colleton +LSC 45031 2002 40 Darlington +LSC 45033 2002 7 Dillon +LSC 45035 2002 172 Dorchester +LSC 45037 2002 7 Edgefield +LSC 45039 2002 7 Fairfield +LSC 45041 2002 117 Florence +LSC 45043 2002 137 Georgetown +LSC 45045 2002 833 Greenville +LSC 45047 2002 89 Greenwood +LSC 45049 2002 17 Hampton +LSC 45051 2002 479 Horry +LSC 45053 2002 74 Jasper +LSC 45055 2002 101 Kershaw +LSC 45057 2002 146 Lancaster +LSC 45059 2002 40 Laurens +LSC 45061 2002 40 Lee +LSC 45063 2002 390 Lexington +LSC 45065 2002 7 McCormick +LSC 45067 2002 20 Marion +LSC 45069 2002 7 Marlboro +LSC 45071 2002 31 Newberry +LSC 45073 2002 57 Oconee +LSC 45075 2002 32 Orangeburg +LSC 45077 2002 153 Pickens +LSC 45079 2002 759 Richland +LSC 45081 2002 49 Saluda +LSC 45083 2002 332 Spartanburg +LSC 45085 2002 43 Sumter +LSC 45087 2002 12 Union +LSC 45089 2002 7 Williamsburg +LSC 45091 2002 276 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_MNFG.ALO new file mode 100644 index 0000000..eddb111 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_MNFG.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 45000 2002 511633 SC +MFG 45001 2002 4038 Abbeville +MFG 45003 2002 38272 Aiken +MFG 45005 2002 1917 Allendale +MFG 45007 2002 28558 Anderson +MFG 45009 2002 1897 Bamberg +MFG 45011 2002 6010 Barnwell +MFG 45013 2002 1722 Beaufort +MFG 45015 2002 11959 Berkeley +MFG 45017 2002 1057 Calhoun +MFG 45019 2002 19613 Charleston +MFG 45021 2002 9632 Cherokee +MFG 45023 2002 7129 Chester +MFG 45025 2002 11607 Chesterfield +MFG 45027 2002 2458 Clarendon +MFG 45029 2002 2151 Colleton +MFG 45031 2002 9269 Darlington +MFG 45033 2002 3109 Dillon +MFG 45035 2002 6000 Dorchester +MFG 45037 2002 2535 Edgefield +MFG 45039 2002 3551 Fairfield +MFG 45041 2002 20838 Florence +MFG 45043 2002 4331 Georgetown +MFG 45045 2002 66405 Greenville +MFG 45047 2002 17549 Greenwood +MFG 45049 2002 2069 Hampton +MFG 45051 2002 8741 Horry +MFG 45053 2002 531 Jasper +MFG 45055 2002 6843 Kershaw +MFG 45057 2002 6098 Lancaster +MFG 45059 2002 8553 Laurens +MFG 45061 2002 812 Lee +MFG 45063 2002 17031 Lexington +MFG 45065 2002 416 McCormick +MFG 45067 2002 4634 Marion +MFG 45069 2002 5547 Marlboro +MFG 45071 2002 6231 Newberry +MFG 45073 2002 10961 Oconee +MFG 45075 2002 16047 Orangeburg +MFG 45077 2002 12413 Pickens +MFG 45079 2002 26211 Richland +MFG 45081 2002 826 Saluda +MFG 45083 2002 51543 Spartanburg +MFG 45085 2002 16884 Sumter +MFG 45087 2002 4325 Union +MFG 45089 2002 2612 Williamsburg +MFG 45091 2002 20698 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_OIL.ALO new file mode 100644 index 0000000..3a1f516 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_OIL.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 45000 2002 86 SC +OIL 45001 2002 0 Abbeville +OIL 45003 2002 9 Aiken +OIL 45005 2002 0 Allendale +OIL 45007 2002 0 Anderson +OIL 45009 2002 0 Bamberg +OIL 45011 2002 0 Barnwell +OIL 45013 2002 0 Beaufort +OIL 45015 2002 10 Berkeley +OIL 45017 2002 0 Calhoun +OIL 45019 2002 17 Charleston +OIL 45021 2002 0 Cherokee +OIL 45023 2002 0 Chester +OIL 45025 2002 0 Chesterfield +OIL 45027 2002 0 Clarendon +OIL 45029 2002 0 Colleton +OIL 45031 2002 0 Darlington +OIL 45033 2002 0 Dillon +OIL 45035 2002 0 Dorchester +OIL 45037 2002 0 Edgefield +OIL 45039 2002 0 Fairfield +OIL 45041 2002 0 Florence +OIL 45043 2002 0 Georgetown +OIL 45045 2002 0 Greenville +OIL 45047 2002 0 Greenwood +OIL 45049 2002 0 Hampton +OIL 45051 2002 0 Horry +OIL 45053 2002 0 Jasper +OIL 45055 2002 0 Kershaw +OIL 45057 2002 0 Lancaster +OIL 45059 2002 0 Laurens +OIL 45061 2002 0 Lee +OIL 45063 2002 10 Lexington +OIL 45065 2002 0 McCormick +OIL 45067 2002 0 Marion +OIL 45069 2002 0 Marlboro +OIL 45071 2002 0 Newberry +OIL 45073 2002 0 Oconee +OIL 45075 2002 0 Orangeburg +OIL 45077 2002 0 Pickens +OIL 45079 2002 10 Richland +OIL 45081 2002 0 Saluda +OIL 45083 2002 0 Spartanburg +OIL 45085 2002 10 Sumter +OIL 45087 2002 0 Union +OIL 45089 2002 10 Williamsburg +OIL 45091 2002 10 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_POP.ALO new file mode 100644 index 0000000..34b567a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_POP.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 45000 2002 4105848 SC +POP 45001 2002 26384 Abbeville +POP 45003 2002 145326 Aiken +POP 45005 2002 11079 Allendale +POP 45007 2002 170274 Anderson +POP 45009 2002 16319 Bamberg +POP 45011 2002 23372 Barnwell +POP 45013 2002 129873 Beaufort +POP 45015 2002 145635 Berkeley +POP 45017 2002 15225 Calhoun +POP 45019 2002 316858 Charleston +POP 45021 2002 53552 Cherokee +POP 45023 2002 34103 Chester +POP 45025 2002 43208 Chesterfield +POP 45027 2002 32928 Clarendon +POP 45029 2002 38938 Colleton +POP 45031 2002 67882 Darlington +POP 45033 2002 31086 Dillon +POP 45035 2002 101194 Dorchester +POP 45037 2002 24734 Edgefield +POP 45039 2002 23889 Fairfield +POP 45041 2002 127248 Florence +POP 45043 2002 58081 Georgetown +POP 45045 2002 391316 Greenville +POP 45047 2002 67208 Greenwood +POP 45049 2002 21299 Hampton +POP 45051 2002 206062 Horry +POP 45053 2002 20949 Jasper +POP 45055 2002 53756 Kershaw +POP 45057 2002 62230 Lancaster +POP 45059 2002 70086 Laurens +POP 45061 2002 20302 Lee +POP 45063 2002 222771 Lexington +POP 45065 2002 10211 McCormick +POP 45067 2002 35097 Marion +POP 45069 2002 28619 Marlboro +POP 45071 2002 36773 Newberry +POP 45073 2002 67957 Oconee +POP 45075 2002 91304 Orangeburg +POP 45077 2002 111447 Pickens +POP 45079 2002 327815 Richland +POP 45081 2002 19112 Saluda +POP 45083 2002 259348 Spartanburg +POP 45085 2002 105221 Sumter +POP 45087 2002 29347 Union +POP 45089 2002 36448 Williamsburg +POP 45091 2002 173982 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_RAIL.ALO new file mode 100644 index 0000000..f906939 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_RAIL.ALO @@ -0,0 +1,73 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 45000 2002 9188.070 SC +RR 45001 2002 112.150 Abbeville +RR 45003 2002 245.190 Aiken +RR 45005 2002 206.950 Allendale +RR 45007 2002 21.790 Anderson +RR 45009 2002 59.050 Bamberg +RR 45011 2002 232.400 Barnwell +RR 45013 2002 192.470 Beaufort +RR 45015 2002 394.620 Berkeley +RR 45017 2002 73.770 Calhoun +RR 45019 2002 472.670 Charleston +RR 45021 2002 400.350 Cherokee +RR 45023 2002 239.640 Chester +RR 45025 2002 24.470 Chesterfield +RR 45027 2002 44.850 Clarendon +RR 45029 2002 317.540 Colleton +RR 45031 2002 0.000 Darlington +RR 45033 2002 257.620 Dillon +RR 45035 2002 148.070 Dorchester +RR 45037 2002 111.900 Edgefield +RR 45039 2002 224.070 Fairfield +RR 45041 2002 316.150 Florence +RR 45043 2002 78.000 Georgetown +RR 45045 2002 200.300 Greenville +RR 45047 2002 320.390 Greenwood +RR 45049 2002 231.760 Hampton +RR 45051 2002 0.000 Horry +RR 45053 2002 237.640 Jasper +RR 45055 2002 27.390 Kershaw +RR 45057 2002 106.170 Lancaster +RR 45059 2002 353.400 Laurens +RR 45061 2002 0.000 Lee +RR 45063 2002 321.420 Lexington +RR 45065 2002 87.880 McCormick +RR 45067 2002 250.550 Marion +RR 45069 2002 154.620 Marlboro +RR 45071 2002 224.100 Newberry +RR 45073 2002 188.290 Oconee +RR 45075 2002 181.000 Orangeburg +RR 45077 2002 172.980 Pickens +RR 45079 2002 469.140 Richland +RR 45081 2002 47.360 Saluda +RR 45083 2002 605.070 Spartanburg +RR 45085 2002 48.890 Sumter +RR 45087 2002 312.760 Union +RR 45089 2002 251.800 Williamsburg +RR 45091 2002 221.440 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_RVPRK.ALO new file mode 100644 index 0000000..7dedf95 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_RVPRK.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 45000 2002 66 SC +RVP 45001 2002 1 Abbeville +RVP 45003 2002 0 Aiken +RVP 45005 2002 0 Allendale +RVP 45007 2002 1 Anderson +RVP 45009 2002 0 Bamberg +RVP 45011 2002 0 Barnwell +RVP 45013 2002 3 Beaufort +RVP 45015 2002 5 Berkeley +RVP 45017 2002 0 Calhoun +RVP 45019 2002 3 Charleston +RVP 45021 2002 0 Cherokee +RVP 45023 2002 0 Chester +RVP 45025 2002 1 Chesterfield +RVP 45027 2002 2 Clarendon +RVP 45029 2002 0 Colleton +RVP 45031 2002 0 Darlington +RVP 45033 2002 0 Dillon +RVP 45035 2002 0 Dorchester +RVP 45037 2002 0 Edgefield +RVP 45039 2002 0 Fairfield +RVP 45041 2002 3 Florence +RVP 45043 2002 0 Georgetown +RVP 45045 2002 5 Greenville +RVP 45047 2002 0 Greenwood +RVP 45049 2002 1 Hampton +RVP 45051 2002 12 Horry +RVP 45053 2002 1 Jasper +RVP 45055 2002 2 Kershaw +RVP 45057 2002 0 Lancaster +RVP 45059 2002 1 Laurens +RVP 45061 2002 0 Lee +RVP 45063 2002 7 Lexington +RVP 45065 2002 0 McCormick +RVP 45067 2002 0 Marion +RVP 45069 2002 0 Marlboro +RVP 45071 2002 1 Newberry +RVP 45073 2002 4 Oconee +RVP 45075 2002 2 Orangeburg +RVP 45077 2002 8 Pickens +RVP 45079 2002 2 Richland +RVP 45081 2002 0 Saluda +RVP 45083 2002 0 Spartanburg +RVP 45085 2002 0 Sumter +RVP 45087 2002 0 Union +RVP 45089 2002 0 Williamsburg +RVP 45091 2002 1 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_SBC.ALO new file mode 100644 index 0000000..b6b4697 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_SBC.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 45000 2002 0 SC +SBC 45001 2002 0 Abbeville +SBC 45003 2002 0 Aiken +SBC 45005 2002 0 Allendale +SBC 45007 2002 0 Anderson +SBC 45009 2002 0 Bamberg +SBC 45011 2002 0 Barnwell +SBC 45013 2002 0 Beaufort +SBC 45015 2002 0 Berkeley +SBC 45017 2002 0 Calhoun +SBC 45019 2002 0 Charleston +SBC 45021 2002 0 Cherokee +SBC 45023 2002 0 Chester +SBC 45025 2002 0 Chesterfield +SBC 45027 2002 0 Clarendon +SBC 45029 2002 0 Colleton +SBC 45031 2002 0 Darlington +SBC 45033 2002 0 Dillon +SBC 45035 2002 0 Dorchester +SBC 45037 2002 0 Edgefield +SBC 45039 2002 0 Fairfield +SBC 45041 2002 0 Florence +SBC 45043 2002 0 Georgetown +SBC 45045 2002 0 Greenville +SBC 45047 2002 0 Greenwood +SBC 45049 2002 0 Hampton +SBC 45051 2002 0 Horry +SBC 45053 2002 0 Jasper +SBC 45055 2002 0 Kershaw +SBC 45057 2002 0 Lancaster +SBC 45059 2002 0 Laurens +SBC 45061 2002 0 Lee +SBC 45063 2002 0 Lexington +SBC 45065 2002 0 McCormick +SBC 45067 2002 0 Marion +SBC 45069 2002 0 Marlboro +SBC 45071 2002 0 Newberry +SBC 45073 2002 0 Oconee +SBC 45075 2002 0 Orangeburg +SBC 45077 2002 0 Pickens +SBC 45079 2002 0 Richland +SBC 45081 2002 0 Saluda +SBC 45083 2002 0 Spartanburg +SBC 45085 2002 0 Sumter +SBC 45087 2002 0 Union +SBC 45089 2002 0 Williamsburg +SBC 45091 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_SBR.ALO new file mode 100644 index 0000000..51ba9d1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_SBR.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 45000 2002 0 SC +SBR 45001 2002 0 Abbeville +SBR 45003 2002 0 Aiken +SBR 45005 2002 0 Allendale +SBR 45007 2002 0 Anderson +SBR 45009 2002 0 Bamberg +SBR 45011 2002 0 Barnwell +SBR 45013 2002 0 Beaufort +SBR 45015 2002 0 Berkeley +SBR 45017 2002 0 Calhoun +SBR 45019 2002 0 Charleston +SBR 45021 2002 0 Cherokee +SBR 45023 2002 0 Chester +SBR 45025 2002 0 Chesterfield +SBR 45027 2002 0 Clarendon +SBR 45029 2002 0 Colleton +SBR 45031 2002 0 Darlington +SBR 45033 2002 0 Dillon +SBR 45035 2002 0 Dorchester +SBR 45037 2002 0 Edgefield +SBR 45039 2002 0 Fairfield +SBR 45041 2002 0 Florence +SBR 45043 2002 0 Georgetown +SBR 45045 2002 0 Greenville +SBR 45047 2002 0 Greenwood +SBR 45049 2002 0 Hampton +SBR 45051 2002 0 Horry +SBR 45053 2002 0 Jasper +SBR 45055 2002 0 Kershaw +SBR 45057 2002 0 Lancaster +SBR 45059 2002 0 Laurens +SBR 45061 2002 0 Lee +SBR 45063 2002 0 Lexington +SBR 45065 2002 0 McCormick +SBR 45067 2002 0 Marion +SBR 45069 2002 0 Marlboro +SBR 45071 2002 0 Newberry +SBR 45073 2002 0 Oconee +SBR 45075 2002 0 Orangeburg +SBR 45077 2002 0 Pickens +SBR 45079 2002 0 Richland +SBR 45081 2002 0 Saluda +SBR 45083 2002 0 Spartanburg +SBR 45085 2002 0 Sumter +SBR 45087 2002 0 Union +SBR 45089 2002 0 Williamsburg +SBR 45091 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_SNOWM.ALO new file mode 100644 index 0000000..4e6fbd8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_SNOWM.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 45000 2002 0 SC +SNM 45001 2002 0 Abbeville +SNM 45003 2002 0 Aiken +SNM 45005 2002 0 Allendale +SNM 45007 2002 0 Anderson +SNM 45009 2002 0 Bamberg +SNM 45011 2002 0 Barnwell +SNM 45013 2002 0 Beaufort +SNM 45015 2002 0 Berkeley +SNM 45017 2002 0 Calhoun +SNM 45019 2002 0 Charleston +SNM 45021 2002 0 Cherokee +SNM 45023 2002 0 Chester +SNM 45025 2002 0 Chesterfield +SNM 45027 2002 0 Clarendon +SNM 45029 2002 0 Colleton +SNM 45031 2002 0 Darlington +SNM 45033 2002 0 Dillon +SNM 45035 2002 0 Dorchester +SNM 45037 2002 0 Edgefield +SNM 45039 2002 0 Fairfield +SNM 45041 2002 0 Florence +SNM 45043 2002 0 Georgetown +SNM 45045 2002 0 Greenville +SNM 45047 2002 0 Greenwood +SNM 45049 2002 0 Hampton +SNM 45051 2002 0 Horry +SNM 45053 2002 0 Jasper +SNM 45055 2002 0 Kershaw +SNM 45057 2002 0 Lancaster +SNM 45059 2002 0 Laurens +SNM 45061 2002 0 Lee +SNM 45063 2002 0 Lexington +SNM 45065 2002 0 McCormick +SNM 45067 2002 0 Marion +SNM 45069 2002 0 Marlboro +SNM 45071 2002 0 Newberry +SNM 45073 2002 0 Oconee +SNM 45075 2002 0 Orangeburg +SNM 45077 2002 0 Pickens +SNM 45079 2002 0 Richland +SNM 45081 2002 0 Saluda +SNM 45083 2002 0 Spartanburg +SNM 45085 2002 0 Sumter +SNM 45087 2002 0 Union +SNM 45089 2002 0 Williamsburg +SNM 45091 2002 0 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_WIB.ALO new file mode 100644 index 0000000..5f7f8c2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_WIB.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 45000 1990 4017 SC +WIB 45001 1990 8 Abbeville +WIB 45003 1990 19 Aiken +WIB 45005 1990 11 Allendale +WIB 45007 1990 102 Anderson +WIB 45009 1990 6 Bamberg +WIB 45011 1990 23 Barnwell +WIB 45013 1990 678 Beaufort +WIB 45015 1990 342 Berkeley +WIB 45017 1990 31 Calhoun +WIB 45019 1990 787 Charleston +WIB 45021 1990 12 Cherokee +WIB 45023 1990 15 Chester +WIB 45025 1990 18 Chesterfield +WIB 45027 1990 229 Clarendon +WIB 45029 1990 147 Colleton +WIB 45031 1990 14 Darlington +WIB 45033 1990 4 Dillon +WIB 45035 1990 5 Dorchester +WIB 45037 1990 12 Edgefield +WIB 45039 1990 61 Fairfield +WIB 45041 1990 10 Florence +WIB 45043 1990 412 Georgetown +WIB 45045 1990 13 Greenville +WIB 45047 1990 19 Greenwood +WIB 45049 1990 7 Hampton +WIB 45051 1990 182 Horry +WIB 45053 1990 65 Jasper +WIB 45055 1990 36 Kershaw +WIB 45057 1990 16 Lancaster +WIB 45059 1990 23 Laurens +WIB 45061 1990 3 Lee +WIB 45063 1990 152 Lexington +WIB 45065 1990 89 McCormick +WIB 45067 1990 13 Marion +WIB 45069 1990 14 Marlboro +WIB 45071 1990 43 Newberry +WIB 45073 1990 126 Oconee +WIB 45075 1990 57 Orangeburg +WIB 45077 1990 39 Pickens +WIB 45079 1990 39 Richland +WIB 45081 1990 24 Saluda +WIB 45083 1990 21 Spartanburg +WIB 45085 1990 43 Sumter +WIB 45087 1990 5 Union +WIB 45089 1990 8 Williamsburg +WIB 45091 1990 34 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SC_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SC_WOB.ALO new file mode 100644 index 0000000..ee20b5b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SC_WOB.ALO @@ -0,0 +1,71 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 45000 1990 2781 SC +WOB 45001 1990 8 Abbeville +WOB 45003 1990 19 Aiken +WOB 45005 1990 11 Allendale +WOB 45007 1990 102 Anderson +WOB 45009 1990 6 Bamberg +WOB 45011 1990 23 Barnwell +WOB 45013 1990 333 Beaufort +WOB 45015 1990 337 Berkeley +WOB 45017 1990 31 Calhoun +WOB 45019 1990 368 Charleston +WOB 45021 1990 12 Cherokee +WOB 45023 1990 15 Chester +WOB 45025 1990 18 Chesterfield +WOB 45027 1990 229 Clarendon +WOB 45029 1990 64 Colleton +WOB 45031 1990 14 Darlington +WOB 45033 1990 4 Dillon +WOB 45035 1990 5 Dorchester +WOB 45037 1990 12 Edgefield +WOB 45039 1990 61 Fairfield +WOB 45041 1990 10 Florence +WOB 45043 1990 183 Georgetown +WOB 45045 1990 13 Greenville +WOB 45047 1990 19 Greenwood +WOB 45049 1990 7 Hampton +WOB 45051 1990 49 Horry +WOB 45053 1990 43 Jasper +WOB 45055 1990 36 Kershaw +WOB 45057 1990 16 Lancaster +WOB 45059 1990 23 Laurens +WOB 45061 1990 3 Lee +WOB 45063 1990 152 Lexington +WOB 45065 1990 89 McCormick +WOB 45067 1990 13 Marion +WOB 45069 1990 14 Marlboro +WOB 45071 1990 43 Newberry +WOB 45073 1990 126 Oconee +WOB 45075 1990 57 Orangeburg +WOB 45077 1990 39 Pickens +WOB 45079 1990 39 Richland +WOB 45081 1990 24 Saluda +WOB 45083 1990 21 Spartanburg +WOB 45085 1990 43 Sumter +WOB 45087 1990 5 Union +WOB 45089 1990 8 Williamsburg +WOB 45091 1990 34 York +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_AIRTR.ALO new file mode 100644 index 0000000..412a811 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_AIRTR.ALO @@ -0,0 +1,93 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 46000 2002 144.910 SD +AIR 46003 2002 0.000 Aurora +AIR 46005 2002 17.780 Beadle +AIR 46007 2002 0.000 Bennett +AIR 46009 2002 0.000 Bon Homme +AIR 46011 2002 8.939 Brookings +AIR 46013 2002 0.765 Brown +AIR 46015 2002 0.000 Brule +AIR 46017 2002 0.000 Buffalo +AIR 46019 2002 0.010 Butte +AIR 46021 2002 0.000 Campbell +AIR 46023 2002 0.000 Charles Mix +AIR 46025 2002 0.000 Clark +AIR 46027 2002 0.070 Clay +AIR 46029 2002 15.234 Codington +AIR 46031 2002 0.000 Corson +AIR 46033 2002 0.000 Custer +AIR 46035 2002 0.090 Davison +AIR 46037 2002 0.000 Day +AIR 46039 2002 0.000 Deuel +AIR 46041 2002 0.000 Dewey +AIR 46043 2002 0.000 Douglas +AIR 46045 2002 0.000 Edmunds +AIR 46047 2002 0.000 Fall River +AIR 46049 2002 0.000 Faulk +AIR 46051 2002 0.000 Grant +AIR 46053 2002 0.000 Gregory +AIR 46055 2002 0.082 Haakon +AIR 46057 2002 0.000 Hamlin +AIR 46059 2002 0.030 Hand +AIR 46061 2002 0.000 Hanson +AIR 46063 2002 0.000 Harding +AIR 46065 2002 18.585 Hughes +AIR 46067 2002 0.000 Hutchinson +AIR 46069 2002 0.000 Hyde +AIR 46071 2002 0.000 Jackson +AIR 46073 2002 0.000 Jerauld +AIR 46075 2002 0.000 Jones +AIR 46077 2002 0.000 Kingsbury +AIR 46079 2002 0.060 Lake +AIR 46081 2002 0.134 Lawrence +AIR 46083 2002 0.000 Lincoln +AIR 46085 2002 0.000 Lyman +AIR 46087 2002 0.000 McCook +AIR 46089 2002 0.000 McPherson +AIR 46091 2002 0.009 Marshall +AIR 46093 2002 0.000 Meade +AIR 46095 2002 0.000 Mellette +AIR 46097 2002 0.000 Miner +AIR 46099 2002 63.900 Minnehaha +AIR 46101 2002 0.000 Moody +AIR 46103 2002 18.820 Pennington +AIR 46105 2002 0.000 Perkins +AIR 46107 2002 0.000 Potter +AIR 46109 2002 0.000 Roberts +AIR 46111 2002 0.000 Sanborn +AIR 46113 2002 0.000 Shannon +AIR 46115 2002 0.000 Spink +AIR 46117 2002 0.000 Stanley +AIR 46119 2002 0.000 Sully +AIR 46121 2002 0.000 Todd +AIR 46123 2002 0.000 Tripp +AIR 46125 2002 0.000 Turner +AIR 46127 2002 0.000 Union +AIR 46129 2002 0.071 Walworth +AIR 46135 2002 0.332 Yankton +AIR 46137 2002 0.000 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_COAL.ALO new file mode 100644 index 0000000..a3f6c21 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_COAL.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 46000 2002 0 SD +MIN 46003 2002 0 Aurora +MIN 46005 2002 0 Beadle +MIN 46007 2002 0 Bennett +MIN 46009 2002 0 Bon Homme +MIN 46011 2002 0 Brookings +MIN 46013 2002 0 Brown +MIN 46015 2002 0 Brule +MIN 46017 2002 0 Buffalo +MIN 46019 2002 0 Butte +MIN 46021 2002 0 Campbell +MIN 46023 2002 0 Charles Mix +MIN 46025 2002 0 Clark +MIN 46027 2002 0 Clay +MIN 46029 2002 0 Codington +MIN 46031 2002 0 Corson +MIN 46033 2002 0 Custer +MIN 46035 2002 0 Davison +MIN 46037 2002 0 Day +MIN 46039 2002 0 Deuel +MIN 46041 2002 0 Dewey +MIN 46043 2002 0 Douglas +MIN 46045 2002 0 Edmunds +MIN 46047 2002 0 Fall River +MIN 46049 2002 0 Faulk +MIN 46051 2002 0 Grant +MIN 46053 2002 0 Gregory +MIN 46055 2002 0 Haakon +MIN 46057 2002 0 Hamlin +MIN 46059 2002 0 Hand +MIN 46061 2002 0 Hanson +MIN 46063 2002 0 Harding +MIN 46065 2002 0 Hughes +MIN 46067 2002 0 Hutchinson +MIN 46069 2002 0 Hyde +MIN 46071 2002 0 Jackson +MIN 46073 2002 0 Jerauld +MIN 46075 2002 0 Jones +MIN 46077 2002 0 Kingsbury +MIN 46079 2002 0 Lake +MIN 46081 2002 0 Lawrence +MIN 46083 2002 0 Lincoln +MIN 46085 2002 0 Lyman +MIN 46087 2002 0 McCook +MIN 46089 2002 0 McPherson +MIN 46091 2002 0 Marshall +MIN 46093 2002 0 Meade +MIN 46095 2002 0 Mellette +MIN 46097 2002 0 Miner +MIN 46099 2002 0 Minnehaha +MIN 46101 2002 0 Moody +MIN 46103 2002 0 Pennington +MIN 46105 2002 0 Perkins +MIN 46107 2002 0 Potter +MIN 46109 2002 0 Roberts +MIN 46111 2002 0 Sanborn +MIN 46113 2002 0 Shannon +MIN 46115 2002 0 Spink +MIN 46117 2002 0 Stanley +MIN 46119 2002 0 Sully +MIN 46121 2002 0 Todd +MIN 46123 2002 0 Tripp +MIN 46125 2002 0 Turner +MIN 46127 2002 0 Union +MIN 46129 2002 0 Walworth +MIN 46135 2002 0 Yankton +MIN 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_CONST.ALO new file mode 100644 index 0000000..e1292a8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_CONST.ALO @@ -0,0 +1,93 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 46000 2003 1215618 SD +CON 46003 2003 2797 Aurora +CON 46005 2003 9322 Beadle +CON 46007 2003 3842 Bennett +CON 46009 2003 4074 Bon Homme +CON 46011 2003 19532 Brookings +CON 46013 2003 45242 Brown +CON 46015 2003 3649 Brule +CON 46017 2003 1963 Buffalo +CON 46019 2003 5018 Butte +CON 46021 2003 1136 Campbell +CON 46023 2003 5295 Charles Mix +CON 46025 2003 3171 Clark +CON 46027 2003 30610 Clay +CON 46029 2003 38593 Codington +CON 46031 2003 1702 Corson +CON 46033 2003 21740 Custer +CON 46035 2003 12501 Davison +CON 46037 2003 13744 Day +CON 46039 2003 4632 Deuel +CON 46041 2003 4973 Dewey +CON 46043 2003 1830 Douglas +CON 46045 2003 4938 Edmunds +CON 46047 2003 9897 Fall River +CON 46049 2003 2268 Faulk +CON 46051 2003 5479 Grant +CON 46053 2003 8216 Gregory +CON 46055 2003 1272 Haakon +CON 46057 2003 7685 Hamlin +CON 46059 2003 6052 Hand +CON 46061 2003 15242 Hanson +CON 46063 2003 1313 Harding +CON 46065 2003 19787 Hughes +CON 46067 2003 2258 Hutchinson +CON 46069 2003 45914 Hyde +CON 46071 2003 7083 Jackson +CON 46073 2003 2590 Jerauld +CON 46075 2003 10109 Jones +CON 46077 2003 6891 Kingsbury +CON 46079 2003 6199 Lake +CON 46081 2003 41754 Lawrence +CON 46083 2003 57054 Lincoln +CON 46085 2003 6863 Lyman +CON 46087 2003 5616 McCook +CON 46089 2003 1214 McPherson +CON 46091 2003 3260 Marshall +CON 46093 2003 46354 Meade +CON 46095 2003 3321 Mellette +CON 46097 2003 1482 Miner +CON 46099 2003 330451 Minnehaha +CON 46101 2003 2983 Moody +CON 46103 2003 151047 Pennington +CON 46105 2003 11563 Perkins +CON 46107 2003 1669 Potter +CON 46109 2003 11808 Roberts +CON 46111 2003 12442 Sanborn +CON 46113 2003 14315 Shannon +CON 46115 2003 8241 Spink +CON 46117 2003 17760 Stanley +CON 46119 2003 0 Sully +CON 46121 2003 6196 Todd +CON 46123 2003 6129 Tripp +CON 46125 2003 3751 Turner +CON 46127 2003 25960 Union +CON 46129 2003 2052 Walworth +CON 46135 2003 38745 Yankton +CON 46137 2003 5027 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_FARMS.ALO new file mode 100644 index 0000000..b85c98d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_FARMS.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 46000 2002 13492286 SD +FRM 46003 2002 163575 Aurora +FRM 46005 2002 431619 Beadle +FRM 46007 2002 134293 Bennett +FRM 46009 2002 245633 Bon Homme +FRM 46011 2002 268574 Brookings +FRM 46013 2002 708183 Brown +FRM 46015 2002 184954 Brule +FRM 46017 2002 31111 Buffalo +FRM 46019 2002 114687 Butte +FRM 46021 2002 133638 Campbell +FRM 46023 2002 409350 Charles Mix +FRM 46025 2002 271595 Clark +FRM 46027 2002 325684 Clay +FRM 46029 2002 237686 Codington +FRM 46031 2002 104588 Corson +FRM 46033 2002 20566 Custer +FRM 46035 2002 178991 Davison +FRM 46037 2002 267862 Day +FRM 46039 2002 159806 Deuel +FRM 46041 2002 53126 Dewey +FRM 46043 2002 159401 Douglas +FRM 46045 2002 302424 Edmunds +FRM 46047 2002 50214 Fall River +FRM 46049 2002 278158 Faulk +FRM 46051 2002 225564 Grant +FRM 46053 2002 225600 Gregory +FRM 46055 2002 104797 Haakon +FRM 46057 2002 210281 Hamlin +FRM 46059 2002 339596 Hand +FRM 46061 2002 184346 Hanson +FRM 46063 2002 37048 Harding +FRM 46065 2002 101441 Hughes +FRM 46067 2002 365953 Hutchinson +FRM 46069 2002 92820 Hyde +FRM 46071 2002 76114 Jackson +FRM 46073 2002 133642 Jerauld +FRM 46075 2002 77183 Jones +FRM 46077 2002 322736 Kingsbury +FRM 46079 2002 227586 Lake +FRM 46081 2002 17861 Lawrence +FRM 46083 2002 266005 Lincoln +FRM 46085 2002 211234 Lyman +FRM 46087 2002 251961 McCook +FRM 46089 2002 175150 McPherson +FRM 46091 2002 250770 Marshall +FRM 46093 2002 204793 Meade +FRM 46095 2002 58623 Mellette +FRM 46097 2002 167112 Miner +FRM 46099 2002 327595 Minnehaha +FRM 46101 2002 209051 Moody +FRM 46103 2002 158373 Pennington +FRM 46105 2002 98540 Perkins +FRM 46107 2002 165419 Potter +FRM 46109 2002 364578 Roberts +FRM 46111 2002 183772 Sanborn +FRM 46113 2002 32745 Shannon +FRM 46115 2002 618985 Spink +FRM 46117 2002 66985 Stanley +FRM 46119 2002 240483 Sully +FRM 46121 2002 132227 Todd +FRM 46123 2002 343637 Tripp +FRM 46125 2002 284849 Turner +FRM 46127 2002 236679 Union +FRM 46129 2002 153671 Walworth +FRM 46135 2002 269915 Yankton +FRM 46137 2002 40848 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_GOLF.ALO new file mode 100644 index 0000000..51eeec2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_GOLF.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 46000 2002 71 SD +GC 46003 2002 1 Aurora +GC 46005 2002 1 Beadle +GC 46007 2002 0 Bennett +GC 46009 2002 3 Bon Homme +GC 46011 2002 3 Brookings +GC 46013 2002 2 Brown +GC 46015 2002 1 Brule +GC 46017 2002 0 Buffalo +GC 46019 2002 1 Butte +GC 46021 2002 0 Campbell +GC 46023 2002 2 Charles Mix +GC 46025 2002 1 Clark +GC 46027 2002 0 Clay +GC 46029 2002 1 Codington +GC 46031 2002 0 Corson +GC 46033 2002 1 Custer +GC 46035 2002 2 Davison +GC 46037 2002 0 Day +GC 46039 2002 1 Deuel +GC 46041 2002 0 Dewey +GC 46043 2002 0 Douglas +GC 46045 2002 1 Edmunds +GC 46047 2002 0 Fall River +GC 46049 2002 1 Faulk +GC 46051 2002 0 Grant +GC 46053 2002 1 Gregory +GC 46055 2002 1 Haakon +GC 46057 2002 1 Hamlin +GC 46059 2002 1 Hand +GC 46061 2002 0 Hanson +GC 46063 2002 0 Harding +GC 46065 2002 1 Hughes +GC 46067 2002 2 Hutchinson +GC 46069 2002 0 Hyde +GC 46071 2002 0 Jackson +GC 46073 2002 0 Jerauld +GC 46075 2002 0 Jones +GC 46077 2002 1 Kingsbury +GC 46079 2002 2 Lake +GC 46081 2002 3 Lawrence +GC 46083 2002 4 Lincoln +GC 46085 2002 0 Lyman +GC 46087 2002 1 McCook +GC 46089 2002 1 McPherson +GC 46091 2002 1 Marshall +GC 46093 2002 1 Meade +GC 46095 2002 0 Mellette +GC 46097 2002 0 Miner +GC 46099 2002 11 Minnehaha +GC 46101 2002 1 Moody +GC 46103 2002 4 Pennington +GC 46105 2002 0 Perkins +GC 46107 2002 1 Potter +GC 46109 2002 1 Roberts +GC 46111 2002 0 Sanborn +GC 46113 2002 0 Shannon +GC 46115 2002 1 Spink +GC 46117 2002 1 Stanley +GC 46119 2002 0 Sully +GC 46121 2002 0 Todd +GC 46123 2002 0 Tripp +GC 46125 2002 2 Turner +GC 46127 2002 4 Union +GC 46129 2002 1 Walworth +GC 46135 2002 1 Yankton +GC 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_HOLSL.ALO new file mode 100644 index 0000000..152b175 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_HOLSL.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 46000 2002 1342 SD +COM 46003 2002 4 Aurora +COM 46005 2002 28 Beadle +COM 46007 2002 3 Bennett +COM 46009 2002 14 Bon Homme +COM 46011 2002 32 Brookings +COM 46013 2002 69 Brown +COM 46015 2002 9 Brule +COM 46017 2002 0 Buffalo +COM 46019 2002 14 Butte +COM 46021 2002 5 Campbell +COM 46023 2002 18 Charles Mix +COM 46025 2002 10 Clark +COM 46027 2002 11 Clay +COM 46029 2002 63 Codington +COM 46031 2002 3 Corson +COM 46033 2002 3 Custer +COM 46035 2002 36 Davison +COM 46037 2002 6 Day +COM 46039 2002 2 Deuel +COM 46041 2002 8 Dewey +COM 46043 2002 8 Douglas +COM 46045 2002 10 Edmunds +COM 46047 2002 2 Fall River +COM 46049 2002 7 Faulk +COM 46051 2002 13 Grant +COM 46053 2002 17 Gregory +COM 46055 2002 8 Haakon +COM 46057 2002 10 Hamlin +COM 46059 2002 11 Hand +COM 46061 2002 9 Hanson +COM 46063 2002 0 Harding +COM 46065 2002 23 Hughes +COM 46067 2002 25 Hutchinson +COM 46069 2002 4 Hyde +COM 46071 2002 2 Jackson +COM 46073 2002 4 Jerauld +COM 46075 2002 2 Jones +COM 46077 2002 9 Kingsbury +COM 46079 2002 11 Lake +COM 46081 2002 20 Lawrence +COM 46083 2002 43 Lincoln +COM 46085 2002 4 Lyman +COM 46087 2002 10 McCook +COM 46089 2002 4 McPherson +COM 46091 2002 11 Marshall +COM 46093 2002 31 Meade +COM 46095 2002 0 Mellette +COM 46097 2002 6 Miner +COM 46099 2002 361 Minnehaha +COM 46101 2002 5 Moody +COM 46103 2002 163 Pennington +COM 46105 2002 6 Perkins +COM 46107 2002 6 Potter +COM 46109 2002 17 Roberts +COM 46111 2002 8 Sanborn +COM 46113 2002 0 Shannon +COM 46115 2002 12 Spink +COM 46117 2002 5 Stanley +COM 46119 2002 5 Sully +COM 46121 2002 2 Todd +COM 46123 2002 15 Tripp +COM 46125 2002 17 Turner +COM 46127 2002 25 Union +COM 46129 2002 9 Walworth +COM 46135 2002 41 Yankton +COM 46137 2002 3 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_HOUSE.ALO new file mode 100644 index 0000000..105eb34 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_HOUSE.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 46000 2002 332361 SD +HOU 46003 2002 1299 Aurora +HOU 46005 2002 8208 Beadle +HOU 46007 2002 1294 Bennett +HOU 46009 2002 3015 Bon Homme +HOU 46011 2002 11806 Brookings +HOU 46013 2002 16016 Brown +HOU 46015 2002 2295 Brule +HOU 46017 2002 617 Buffalo +HOU 46019 2002 4136 Butte +HOU 46021 2002 967 Campbell +HOU 46023 2002 3874 Charles Mix +HOU 46025 2002 1872 Clark +HOU 46027 2002 5558 Clay +HOU 46029 2002 11545 Codington +HOU 46031 2002 1555 Corson +HOU 46033 2002 3790 Custer +HOU 46035 2002 8280 Davison +HOU 46037 2002 3630 Day +HOU 46039 2002 2200 Deuel +HOU 46041 2002 2182 Dewey +HOU 46043 2002 1457 Douglas +HOU 46045 2002 2037 Edmunds +HOU 46047 2002 3868 Fall River +HOU 46049 2002 1250 Faulk +HOU 46051 2002 3482 Grant +HOU 46053 2002 2422 Gregory +HOU 46055 2002 1015 Haakon +HOU 46057 2002 2649 Hamlin +HOU 46059 2002 1845 Hand +HOU 46061 2002 1228 Hanson +HOU 46063 2002 800 Harding +HOU 46065 2002 7205 Hughes +HOU 46067 2002 3537 Hutchinson +HOU 46069 2002 769 Hyde +HOU 46071 2002 1193 Jackson +HOU 46073 2002 1170 Jerauld +HOU 46075 2002 620 Jones +HOU 46077 2002 2749 Kingsbury +HOU 46079 2002 5394 Lake +HOU 46081 2002 10720 Lawrence +HOU 46083 2002 10968 Lincoln +HOU 46085 2002 1657 Lyman +HOU 46087 2002 2442 McCook +HOU 46089 2002 1460 McPherson +HOU 46091 2002 2591 Marshall +HOU 46093 2002 10491 Meade +HOU 46095 2002 839 Mellette +HOU 46097 2002 1402 Miner +HOU 46099 2002 62996 Minnehaha +HOU 46101 2002 2751 Moody +HOU 46103 2002 38417 Pennington +HOU 46105 2002 1870 Perkins +HOU 46107 2002 1798 Potter +HOU 46109 2002 4777 Roberts +HOU 46111 2002 1219 Sanborn +HOU 46113 2002 3216 Shannon +HOU 46115 2002 3339 Spink +HOU 46117 2002 1327 Stanley +HOU 46119 2002 861 Sully +HOU 46121 2002 2821 Todd +HOU 46123 2002 3076 Tripp +HOU 46125 2002 3881 Turner +HOU 46127 2002 5512 Union +HOU 46129 2002 3162 Walworth +HOU 46135 2002 9032 Yankton +HOU 46137 2002 907 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_LOGGN.ALO new file mode 100644 index 0000000..9b2825d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_LOGGN.ALO @@ -0,0 +1,93 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 46000 2002 32202418 SD +LOG 46003 2002 0 Aurora +LOG 46005 2002 142365 Beadle +LOG 46007 2002 24018 Bennett +LOG 46009 2002 81686 Bon Homme +LOG 46011 2002 66451 Brookings +LOG 46013 2002 64922 Brown +LOG 46015 2002 9760 Brule +LOG 46017 2002 203750 Buffalo +LOG 46019 2002 43072 Butte +LOG 46021 2002 12009 Campbell +LOG 46023 2002 307458 Charles Mix +LOG 46025 2002 43352 Clark +LOG 46027 2002 130458 Clay +LOG 46029 2002 47795 Codington +LOG 46031 2002 0 Corson +LOG 46033 2002 5176575 Custer +LOG 46035 2002 28821 Davison +LOG 46037 2002 42134 Day +LOG 46039 2002 43392 Deuel +LOG 46041 2002 95350 Dewey +LOG 46043 2002 76317 Douglas +LOG 46045 2002 360 Edmunds +LOG 46047 2002 563290 Fall River +LOG 46049 2002 0 Faulk +LOG 46051 2002 155390 Grant +LOG 46053 2002 248560 Gregory +LOG 46055 2002 120832 Haakon +LOG 46057 2002 56321 Hamlin +LOG 46059 2002 146441 Hand +LOG 46061 2002 13408 Hanson +LOG 46063 2002 0 Harding +LOG 46065 2002 34878 Hughes +LOG 46067 2002 21891 Hutchinson +LOG 46069 2002 28821 Hyde +LOG 46071 2002 181477 Jackson +LOG 46073 2002 39745 Jerauld +LOG 46075 2002 399266 Jones +LOG 46077 2002 23117 Kingsbury +LOG 46079 2002 16335 Lake +LOG 46081 2002 10828879 Lawrence +LOG 46083 2002 117103 Lincoln +LOG 46085 2002 49990 Lyman +LOG 46087 2002 33625 McCook +LOG 46089 2002 6004 McPherson +LOG 46091 2002 0 Marshall +LOG 46093 2002 1089659 Meade +LOG 46095 2002 0 Mellette +LOG 46097 2002 0 Miner +LOG 46099 2002 212291 Minnehaha +LOG 46101 2002 99109 Moody +LOG 46103 2002 10144021 Pennington +LOG 46105 2002 6004 Perkins +LOG 46107 2002 6004 Potter +LOG 46109 2002 246150 Roberts +LOG 46111 2002 4650 Sanborn +LOG 46113 2002 45273 Shannon +LOG 46115 2002 82080 Spink +LOG 46117 2002 22096 Stanley +LOG 46119 2002 3603 Sully +LOG 46121 2002 116413 Todd +LOG 46123 2002 194139 Tripp +LOG 46125 2002 2420 Turner +LOG 46127 2002 0 Union +LOG 46129 2002 0 Walworth +LOG 46135 2002 156976 Yankton +LOG 46137 2002 46114 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_LSCAP.ALO new file mode 100644 index 0000000..ab8d547 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_LSCAP.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 46000 2002 445 SD +LSC 46003 2002 0 Aurora +LSC 46005 2002 5 Beadle +LSC 46007 2002 0 Bennett +LSC 46009 2002 5 Bon Homme +LSC 46011 2002 5 Brookings +LSC 46013 2002 14 Brown +LSC 46015 2002 5 Brule +LSC 46017 2002 0 Buffalo +LSC 46019 2002 5 Butte +LSC 46021 2002 0 Campbell +LSC 46023 2002 5 Charles Mix +LSC 46025 2002 0 Clark +LSC 46027 2002 0 Clay +LSC 46029 2002 40 Codington +LSC 46031 2002 0 Corson +LSC 46033 2002 5 Custer +LSC 46035 2002 5 Davison +LSC 46037 2002 5 Day +LSC 46039 2002 4 Deuel +LSC 46041 2002 0 Dewey +LSC 46043 2002 4 Douglas +LSC 46045 2002 4 Edmunds +LSC 46047 2002 4 Fall River +LSC 46049 2002 0 Faulk +LSC 46051 2002 4 Grant +LSC 46053 2002 0 Gregory +LSC 46055 2002 0 Haakon +LSC 46057 2002 0 Hamlin +LSC 46059 2002 0 Hand +LSC 46061 2002 0 Hanson +LSC 46063 2002 0 Harding +LSC 46065 2002 3 Hughes +LSC 46067 2002 4 Hutchinson +LSC 46069 2002 0 Hyde +LSC 46071 2002 4 Jackson +LSC 46073 2002 0 Jerauld +LSC 46075 2002 0 Jones +LSC 46077 2002 4 Kingsbury +LSC 46079 2002 8 Lake +LSC 46081 2002 4 Lawrence +LSC 46083 2002 4 Lincoln +LSC 46085 2002 0 Lyman +LSC 46087 2002 4 McCook +LSC 46089 2002 0 McPherson +LSC 46091 2002 0 Marshall +LSC 46093 2002 4 Meade +LSC 46095 2002 0 Mellette +LSC 46097 2002 0 Miner +LSC 46099 2002 174 Minnehaha +LSC 46101 2002 4 Moody +LSC 46103 2002 90 Pennington +LSC 46105 2002 0 Perkins +LSC 46107 2002 0 Potter +LSC 46109 2002 0 Roberts +LSC 46111 2002 0 Sanborn +LSC 46113 2002 0 Shannon +LSC 46115 2002 4 Spink +LSC 46117 2002 0 Stanley +LSC 46119 2002 4 Sully +LSC 46121 2002 0 Todd +LSC 46123 2002 0 Tripp +LSC 46125 2002 0 Turner +LSC 46127 2002 3 Union +LSC 46129 2002 4 Walworth +LSC 46135 2002 4 Yankton +LSC 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_MNFG.ALO new file mode 100644 index 0000000..8bbdab6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_MNFG.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 46000 2002 66115 SD +MFG 46003 2002 4 Aurora +MFG 46005 2002 1274 Beadle +MFG 46007 2002 10 Bennett +MFG 46009 2002 577 Bon Homme +MFG 46011 2002 7323 Brookings +MFG 46013 2002 3192 Brown +MFG 46015 2002 96 Brule +MFG 46017 2002 0 Buffalo +MFG 46019 2002 262 Butte +MFG 46021 2002 69 Campbell +MFG 46023 2002 180 Charles Mix +MFG 46025 2002 116 Clark +MFG 46027 2002 321 Clay +MFG 46029 2002 5902 Codington +MFG 46031 2002 18 Corson +MFG 46033 2002 91 Custer +MFG 46035 2002 3036 Davison +MFG 46037 2002 301 Day +MFG 46039 2002 612 Deuel +MFG 46041 2002 29 Dewey +MFG 46043 2002 140 Douglas +MFG 46045 2002 24 Edmunds +MFG 46047 2002 46 Fall River +MFG 46049 2002 25 Faulk +MFG 46051 2002 463 Grant +MFG 46053 2002 67 Gregory +MFG 46055 2002 155 Haakon +MFG 46057 2002 197 Hamlin +MFG 46059 2002 115 Hand +MFG 46061 2002 17 Hanson +MFG 46063 2002 4 Harding +MFG 46065 2002 175 Hughes +MFG 46067 2002 357 Hutchinson +MFG 46069 2002 14 Hyde +MFG 46071 2002 10 Jackson +MFG 46073 2002 359 Jerauld +MFG 46075 2002 0 Jones +MFG 46077 2002 688 Kingsbury +MFG 46079 2002 1778 Lake +MFG 46081 2002 1175 Lawrence +MFG 46083 2002 1359 Lincoln +MFG 46085 2002 4 Lyman +MFG 46087 2002 447 McCook +MFG 46089 2002 75 McPherson +MFG 46091 2002 376 Marshall +MFG 46093 2002 549 Meade +MFG 46095 2002 0 Mellette +MFG 46097 2002 310 Miner +MFG 46099 2002 17086 Minnehaha +MFG 46101 2002 342 Moody +MFG 46103 2002 7169 Pennington +MFG 46105 2002 366 Perkins +MFG 46107 2002 81 Potter +MFG 46109 2002 277 Roberts +MFG 46111 2002 312 Sanborn +MFG 46113 2002 17 Shannon +MFG 46115 2002 50 Spink +MFG 46117 2002 10 Stanley +MFG 46119 2002 20 Sully +MFG 46121 2002 4 Todd +MFG 46123 2002 111 Tripp +MFG 46125 2002 193 Turner +MFG 46127 2002 3367 Union +MFG 46129 2002 40 Walworth +MFG 46135 2002 4311 Yankton +MFG 46137 2002 17 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_OIL.ALO new file mode 100644 index 0000000..974862a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_OIL.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 46000 2002 59 SD +OIL 46003 2002 5 Aurora +OIL 46005 2002 0 Beadle +OIL 46007 2002 0 Bennett +OIL 46009 2002 0 Bon Homme +OIL 46011 2002 0 Brookings +OIL 46013 2002 0 Brown +OIL 46015 2002 0 Brule +OIL 46017 2002 0 Buffalo +OIL 46019 2002 0 Butte +OIL 46021 2002 0 Campbell +OIL 46023 2002 4 Charles Mix +OIL 46025 2002 0 Clark +OIL 46027 2002 0 Clay +OIL 46029 2002 0 Codington +OIL 46031 2002 0 Corson +OIL 46033 2002 0 Custer +OIL 46035 2002 0 Davison +OIL 46037 2002 0 Day +OIL 46039 2002 0 Deuel +OIL 46041 2002 0 Dewey +OIL 46043 2002 0 Douglas +OIL 46045 2002 0 Edmunds +OIL 46047 2002 0 Fall River +OIL 46049 2002 0 Faulk +OIL 46051 2002 0 Grant +OIL 46053 2002 0 Gregory +OIL 46055 2002 0 Haakon +OIL 46057 2002 0 Hamlin +OIL 46059 2002 0 Hand +OIL 46061 2002 0 Hanson +OIL 46063 2002 34 Harding +OIL 46065 2002 0 Hughes +OIL 46067 2002 0 Hutchinson +OIL 46069 2002 0 Hyde +OIL 46071 2002 0 Jackson +OIL 46073 2002 0 Jerauld +OIL 46075 2002 0 Jones +OIL 46077 2002 0 Kingsbury +OIL 46079 2002 0 Lake +OIL 46081 2002 0 Lawrence +OIL 46083 2002 0 Lincoln +OIL 46085 2002 0 Lyman +OIL 46087 2002 0 McCook +OIL 46089 2002 0 McPherson +OIL 46091 2002 0 Marshall +OIL 46093 2002 4 Meade +OIL 46095 2002 0 Mellette +OIL 46097 2002 0 Miner +OIL 46099 2002 0 Minnehaha +OIL 46101 2002 0 Moody +OIL 46103 2002 6 Pennington +OIL 46105 2002 0 Perkins +OIL 46107 2002 0 Potter +OIL 46109 2002 0 Roberts +OIL 46111 2002 0 Sanborn +OIL 46113 2002 0 Shannon +OIL 46115 2002 0 Spink +OIL 46117 2002 0 Stanley +OIL 46119 2002 0 Sully +OIL 46121 2002 0 Todd +OIL 46123 2002 0 Tripp +OIL 46125 2002 0 Turner +OIL 46127 2002 0 Union +OIL 46129 2002 0 Walworth +OIL 46135 2002 6 Yankton +OIL 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_POP.ALO new file mode 100644 index 0000000..fd05d0b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_POP.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 46000 2002 760452 SD +POP 46003 2002 2916 Aurora +POP 46005 2002 16563 Beadle +POP 46007 2002 3537 Bennett +POP 46009 2002 7148 Bon Homme +POP 46011 2002 28252 Brookings +POP 46013 2002 34895 Brown +POP 46015 2002 5184 Brule +POP 46017 2002 2005 Buffalo +POP 46019 2002 9037 Butte +POP 46021 2002 1715 Campbell +POP 46023 2002 9213 Charles Mix +POP 46025 2002 3997 Clark +POP 46027 2002 13195 Clay +POP 46029 2002 25846 Codington +POP 46031 2002 4263 Corson +POP 46033 2002 7546 Custer +POP 46035 2002 18743 Davison +POP 46037 2002 6060 Day +POP 46039 2002 4443 Deuel +POP 46041 2002 6049 Dewey +POP 46043 2002 3346 Douglas +POP 46045 2002 4262 Edmunds +POP 46047 2002 7327 Fall River +POP 46049 2002 2509 Faulk +POP 46051 2002 7649 Grant +POP 46053 2002 4518 Gregory +POP 46055 2002 2073 Haakon +POP 46057 2002 5595 Hamlin +POP 46059 2002 3580 Hand +POP 46061 2002 3373 Hanson +POP 46063 2002 1295 Harding +POP 46065 2002 16618 Hughes +POP 46067 2002 7833 Hutchinson +POP 46069 2002 1580 Hyde +POP 46071 2002 2858 Jackson +POP 46073 2002 2230 Jerauld +POP 46075 2002 1117 Jones +POP 46077 2002 5618 Kingsbury +POP 46079 2002 11087 Lake +POP 46081 2002 21656 Lawrence +POP 46083 2002 27753 Lincoln +POP 46085 2002 3928 Lyman +POP 46087 2002 5832 McCook +POP 46089 2002 2784 McPherson +POP 46091 2002 4355 Marshall +POP 46093 2002 24517 Meade +POP 46095 2002 2054 Mellette +POP 46097 2002 2806 Miner +POP 46099 2002 152678 Minnehaha +POP 46101 2002 6551 Moody +POP 46103 2002 90873 Pennington +POP 46105 2002 3274 Perkins +POP 46107 2002 2524 Potter +POP 46109 2002 9904 Roberts +POP 46111 2002 2577 Sanborn +POP 46113 2002 13037 Shannon +POP 46115 2002 7101 Spink +POP 46117 2002 2740 Stanley +POP 46119 2002 1498 Sully +POP 46121 2002 9404 Todd +POP 46123 2002 6292 Tripp +POP 46125 2002 8624 Turner +POP 46127 2002 12845 Union +POP 46129 2002 5695 Walworth +POP 46135 2002 21492 Yankton +POP 46137 2002 2583 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_RAIL.ALO new file mode 100644 index 0000000..c7a048b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_RAIL.ALO @@ -0,0 +1,93 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 46000 2002 3147.360 SD +RR 46003 2002 0.000 Aurora +RR 46005 2002 87.520 Beadle +RR 46007 2002 0.000 Bennett +RR 46009 2002 11.580 Bon Homme +RR 46011 2002 0.000 Brookings +RR 46013 2002 160.770 Brown +RR 46015 2002 0.000 Brule +RR 46017 2002 0.000 Buffalo +RR 46019 2002 0.000 Butte +RR 46021 2002 0.000 Campbell +RR 46023 2002 0.000 Charles Mix +RR 46025 2002 18.990 Clark +RR 46027 2002 13.170 Clay +RR 46029 2002 22.750 Codington +RR 46031 2002 191.780 Corson +RR 46033 2002 578.150 Custer +RR 46035 2002 27.820 Davison +RR 46037 2002 154.080 Day +RR 46039 2002 0.000 Deuel +RR 46041 2002 0.000 Dewey +RR 46043 2002 0.000 Douglas +RR 46045 2002 154.740 Edmunds +RR 46047 2002 658.190 Fall River +RR 46049 2002 0.000 Faulk +RR 46051 2002 169.760 Grant +RR 46053 2002 0.000 Gregory +RR 46055 2002 0.000 Haakon +RR 46057 2002 7.990 Hamlin +RR 46059 2002 0.000 Hand +RR 46061 2002 14.540 Hanson +RR 46063 2002 0.000 Harding +RR 46065 2002 0.000 Hughes +RR 46067 2002 30.080 Hutchinson +RR 46069 2002 0.000 Hyde +RR 46071 2002 0.000 Jackson +RR 46073 2002 8.860 Jerauld +RR 46075 2002 0.000 Jones +RR 46077 2002 10.990 Kingsbury +RR 46079 2002 14.800 Lake +RR 46081 2002 0.000 Lawrence +RR 46083 2002 50.400 Lincoln +RR 46085 2002 0.000 Lyman +RR 46087 2002 7.290 McCook +RR 46089 2002 0.000 McPherson +RR 46091 2002 10.460 Marshall +RR 46093 2002 0.000 Meade +RR 46095 2002 0.000 Mellette +RR 46097 2002 0.000 Miner +RR 46099 2002 93.620 Minnehaha +RR 46101 2002 0.000 Moody +RR 46103 2002 0.000 Pennington +RR 46105 2002 121.230 Perkins +RR 46107 2002 0.000 Potter +RR 46109 2002 144.240 Roberts +RR 46111 2002 18.220 Sanborn +RR 46113 2002 0.000 Shannon +RR 46115 2002 147.660 Spink +RR 46117 2002 0.000 Stanley +RR 46119 2002 0.000 Sully +RR 46121 2002 0.000 Todd +RR 46123 2002 0.000 Tripp +RR 46125 2002 14.000 Turner +RR 46127 2002 9.820 Union +RR 46129 2002 171.840 Walworth +RR 46135 2002 22.020 Yankton +RR 46137 2002 0.000 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_RVPRK.ALO new file mode 100644 index 0000000..0639b09 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_RVPRK.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 46000 2002 61 SD +RVP 46003 2002 0 Aurora +RVP 46005 2002 0 Beadle +RVP 46007 2002 0 Bennett +RVP 46009 2002 0 Bon Homme +RVP 46011 2002 0 Brookings +RVP 46013 2002 0 Brown +RVP 46015 2002 3 Brule +RVP 46017 2002 0 Buffalo +RVP 46019 2002 1 Butte +RVP 46021 2002 2 Campbell +RVP 46023 2002 0 Charles Mix +RVP 46025 2002 0 Clark +RVP 46027 2002 0 Clay +RVP 46029 2002 1 Codington +RVP 46031 2002 0 Corson +RVP 46033 2002 6 Custer +RVP 46035 2002 2 Davison +RVP 46037 2002 1 Day +RVP 46039 2002 0 Deuel +RVP 46041 2002 0 Dewey +RVP 46043 2002 0 Douglas +RVP 46045 2002 0 Edmunds +RVP 46047 2002 1 Fall River +RVP 46049 2002 0 Faulk +RVP 46051 2002 0 Grant +RVP 46053 2002 0 Gregory +RVP 46055 2002 1 Haakon +RVP 46057 2002 0 Hamlin +RVP 46059 2002 0 Hand +RVP 46061 2002 0 Hanson +RVP 46063 2002 0 Harding +RVP 46065 2002 1 Hughes +RVP 46067 2002 0 Hutchinson +RVP 46069 2002 0 Hyde +RVP 46071 2002 2 Jackson +RVP 46073 2002 0 Jerauld +RVP 46075 2002 0 Jones +RVP 46077 2002 0 Kingsbury +RVP 46079 2002 0 Lake +RVP 46081 2002 6 Lawrence +RVP 46083 2002 1 Lincoln +RVP 46085 2002 2 Lyman +RVP 46087 2002 0 McCook +RVP 46089 2002 0 McPherson +RVP 46091 2002 1 Marshall +RVP 46093 2002 8 Meade +RVP 46095 2002 0 Mellette +RVP 46097 2002 0 Miner +RVP 46099 2002 2 Minnehaha +RVP 46101 2002 0 Moody +RVP 46103 2002 16 Pennington +RVP 46105 2002 0 Perkins +RVP 46107 2002 0 Potter +RVP 46109 2002 0 Roberts +RVP 46111 2002 0 Sanborn +RVP 46113 2002 0 Shannon +RVP 46115 2002 1 Spink +RVP 46117 2002 1 Stanley +RVP 46119 2002 1 Sully +RVP 46121 2002 0 Todd +RVP 46123 2002 0 Tripp +RVP 46125 2002 0 Turner +RVP 46127 2002 1 Union +RVP 46129 2002 0 Walworth +RVP 46135 2002 0 Yankton +RVP 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_SBC.ALO new file mode 100644 index 0000000..2e877be --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_SBC.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 46000 2002 445 SD +SBC 46003 2002 0 Aurora +SBC 46005 2002 7 Beadle +SBC 46007 2002 0 Bennett +SBC 46009 2002 3 Bon Homme +SBC 46011 2002 10 Brookings +SBC 46013 2002 14 Brown +SBC 46015 2002 2 Brule +SBC 46017 2002 0 Buffalo +SBC 46019 2002 4 Butte +SBC 46021 2002 0 Campbell +SBC 46023 2002 4 Charles Mix +SBC 46025 2002 0 Clark +SBC 46027 2002 0 Clay +SBC 46029 2002 40 Codington +SBC 46031 2002 0 Corson +SBC 46033 2002 3 Custer +SBC 46035 2002 8 Davison +SBC 46037 2002 5 Day +SBC 46039 2002 2 Deuel +SBC 46041 2002 0 Dewey +SBC 46043 2002 1 Douglas +SBC 46045 2002 2 Edmunds +SBC 46047 2002 3 Fall River +SBC 46049 2002 0 Faulk +SBC 46051 2002 3 Grant +SBC 46053 2002 0 Gregory +SBC 46055 2002 0 Haakon +SBC 46057 2002 0 Hamlin +SBC 46059 2002 0 Hand +SBC 46061 2002 0 Hanson +SBC 46063 2002 0 Harding +SBC 46065 2002 3 Hughes +SBC 46067 2002 3 Hutchinson +SBC 46069 2002 0 Hyde +SBC 46071 2002 1 Jackson +SBC 46073 2002 0 Jerauld +SBC 46075 2002 0 Jones +SBC 46077 2002 2 Kingsbury +SBC 46079 2002 8 Lake +SBC 46081 2002 9 Lawrence +SBC 46083 2002 11 Lincoln +SBC 46085 2002 0 Lyman +SBC 46087 2002 2 McCook +SBC 46089 2002 0 McPherson +SBC 46091 2002 0 Marshall +SBC 46093 2002 10 Meade +SBC 46095 2002 0 Mellette +SBC 46097 2002 0 Miner +SBC 46099 2002 174 Minnehaha +SBC 46101 2002 3 Moody +SBC 46103 2002 90 Pennington +SBC 46105 2002 0 Perkins +SBC 46107 2002 0 Potter +SBC 46109 2002 0 Roberts +SBC 46111 2002 0 Sanborn +SBC 46113 2002 0 Shannon +SBC 46115 2002 3 Spink +SBC 46117 2002 0 Stanley +SBC 46119 2002 1 Sully +SBC 46121 2002 0 Todd +SBC 46123 2002 0 Tripp +SBC 46125 2002 0 Turner +SBC 46127 2002 3 Union +SBC 46129 2002 2 Walworth +SBC 46135 2002 9 Yankton +SBC 46137 2002 0 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_SBR.ALO new file mode 100644 index 0000000..3940e38 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_SBR.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 46000 2002 332361 SD +SBR 46003 2002 1299 Aurora +SBR 46005 2002 8208 Beadle +SBR 46007 2002 1294 Bennett +SBR 46009 2002 3015 Bon Homme +SBR 46011 2002 11806 Brookings +SBR 46013 2002 16016 Brown +SBR 46015 2002 2295 Brule +SBR 46017 2002 617 Buffalo +SBR 46019 2002 4136 Butte +SBR 46021 2002 967 Campbell +SBR 46023 2002 3874 Charles Mix +SBR 46025 2002 1872 Clark +SBR 46027 2002 5558 Clay +SBR 46029 2002 11545 Codington +SBR 46031 2002 1555 Corson +SBR 46033 2002 3790 Custer +SBR 46035 2002 8280 Davison +SBR 46037 2002 3630 Day +SBR 46039 2002 2200 Deuel +SBR 46041 2002 2182 Dewey +SBR 46043 2002 1457 Douglas +SBR 46045 2002 2037 Edmunds +SBR 46047 2002 3868 Fall River +SBR 46049 2002 1250 Faulk +SBR 46051 2002 3482 Grant +SBR 46053 2002 2422 Gregory +SBR 46055 2002 1015 Haakon +SBR 46057 2002 2649 Hamlin +SBR 46059 2002 1845 Hand +SBR 46061 2002 1228 Hanson +SBR 46063 2002 800 Harding +SBR 46065 2002 7205 Hughes +SBR 46067 2002 3537 Hutchinson +SBR 46069 2002 769 Hyde +SBR 46071 2002 1193 Jackson +SBR 46073 2002 1170 Jerauld +SBR 46075 2002 620 Jones +SBR 46077 2002 2749 Kingsbury +SBR 46079 2002 5394 Lake +SBR 46081 2002 10720 Lawrence +SBR 46083 2002 10968 Lincoln +SBR 46085 2002 1657 Lyman +SBR 46087 2002 2442 McCook +SBR 46089 2002 1460 McPherson +SBR 46091 2002 2591 Marshall +SBR 46093 2002 10491 Meade +SBR 46095 2002 839 Mellette +SBR 46097 2002 1402 Miner +SBR 46099 2002 62996 Minnehaha +SBR 46101 2002 2751 Moody +SBR 46103 2002 38417 Pennington +SBR 46105 2002 1870 Perkins +SBR 46107 2002 1798 Potter +SBR 46109 2002 4777 Roberts +SBR 46111 2002 1219 Sanborn +SBR 46113 2002 3216 Shannon +SBR 46115 2002 3339 Spink +SBR 46117 2002 1327 Stanley +SBR 46119 2002 861 Sully +SBR 46121 2002 2821 Todd +SBR 46123 2002 3076 Tripp +SBR 46125 2002 3881 Turner +SBR 46127 2002 5512 Union +SBR 46129 2002 3162 Walworth +SBR 46135 2002 9032 Yankton +SBR 46137 2002 907 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_SNOWM.ALO new file mode 100644 index 0000000..b51f3fa --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_SNOWM.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 46000 2002 15599 SD +SNM 46003 2002 343 Aurora +SNM 46005 2002 60 Beadle +SNM 46007 2002 283 Bennett +SNM 46009 2002 140 Bon Homme +SNM 46011 2002 35 Brookings +SNM 46013 2002 29 Brown +SNM 46015 2002 193 Brule +SNM 46017 2002 499 Buffalo +SNM 46019 2002 111 Butte +SNM 46021 2002 583 Campbell +SNM 46023 2002 109 Charles Mix +SNM 46025 2002 250 Clark +SNM 46027 2002 76 Clay +SNM 46029 2002 39 Codington +SNM 46031 2002 235 Corson +SNM 46033 2002 133 Custer +SNM 46035 2002 53 Davison +SNM 46037 2002 165 Day +SNM 46039 2002 225 Deuel +SNM 46041 2002 165 Dewey +SNM 46043 2002 299 Douglas +SNM 46045 2002 235 Edmunds +SNM 46047 2002 136 Fall River +SNM 46049 2002 399 Faulk +SNM 46051 2002 131 Grant +SNM 46053 2002 221 Gregory +SNM 46055 2002 482 Haakon +SNM 46057 2002 179 Hamlin +SNM 46059 2002 279 Hand +SNM 46061 2002 296 Hanson +SNM 46063 2002 772 Harding +SNM 46065 2002 60 Hughes +SNM 46067 2002 128 Hutchinson +SNM 46069 2002 633 Hyde +SNM 46071 2002 350 Jackson +SNM 46073 2002 448 Jerauld +SNM 46075 2002 895 Jones +SNM 46077 2002 178 Kingsbury +SNM 46079 2002 90 Lake +SNM 46081 2002 46 Lawrence +SNM 46083 2002 36 Lincoln +SNM 46085 2002 255 Lyman +SNM 46087 2002 171 McCook +SNM 46089 2002 359 McPherson +SNM 46091 2002 230 Marshall +SNM 46093 2002 41 Meade +SNM 46095 2002 487 Mellette +SNM 46097 2002 356 Miner +SNM 46099 2002 7 Minnehaha +SNM 46101 2002 153 Moody +SNM 46103 2002 11 Pennington +SNM 46105 2002 305 Perkins +SNM 46107 2002 396 Potter +SNM 46109 2002 101 Roberts +SNM 46111 2002 388 Sanborn +SNM 46113 2002 77 Shannon +SNM 46115 2002 141 Spink +SNM 46117 2002 365 Stanley +SNM 46119 2002 668 Sully +SNM 46121 2002 106 Todd +SNM 46123 2002 159 Tripp +SNM 46125 2002 116 Turner +SNM 46127 2002 78 Union +SNM 46129 2002 176 Walworth +SNM 46135 2002 47 Yankton +SNM 46137 2002 387 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_WIB.ALO new file mode 100644 index 0000000..a269ac0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_WIB.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 46000 1990 3172 SD +WIB 46003 1990 11 Aurora +WIB 46005 1990 14 Beadle +WIB 46007 1990 14 Bennett +WIB 46009 1990 46 Bon Homme +WIB 46011 1990 27 Brookings +WIB 46013 1990 48 Brown +WIB 46015 1990 71 Brule +WIB 46017 1990 44 Buffalo +WIB 46019 1990 46 Butte +WIB 46021 1990 92 Campbell +WIB 46023 1990 135 Charles Mix +WIB 46025 1990 26 Clark +WIB 46027 1990 13 Clay +WIB 46029 1990 76 Codington +WIB 46031 1990 146 Corson +WIB 46033 1990 4 Custer +WIB 46035 1990 4 Davison +WIB 46037 1990 162 Day +WIB 46039 1990 34 Deuel +WIB 46041 1990 370 Dewey +WIB 46043 1990 1 Douglas +WIB 46045 1990 14 Edmunds +WIB 46047 1990 24 Fall River +WIB 46049 1990 14 Faulk +WIB 46051 1990 14 Grant +WIB 46053 1990 97 Gregory +WIB 46055 1990 37 Haakon +WIB 46057 1990 69 Hamlin +WIB 46059 1990 9 Hand +WIB 46061 1990 3 Hanson +WIB 46063 1990 18 Harding +WIB 46065 1990 154 Hughes +WIB 46067 1990 4 Hutchinson +WIB 46069 1990 14 Hyde +WIB 46071 1990 5 Jackson +WIB 46073 1990 6 Jerauld +WIB 46075 1990 3 Jones +WIB 46077 1990 66 Kingsbury +WIB 46079 1990 31 Lake +WIB 46081 1990 1 Lawrence +WIB 46083 1990 1 Lincoln +WIB 46085 1990 174 Lyman +WIB 46087 1990 7 McCook +WIB 46089 1990 39 McPherson +WIB 46091 1990 121 Marshall +WIB 46093 1990 31 Meade +WIB 46095 1990 8 Mellette +WIB 46097 1990 4 Miner +WIB 46099 1990 12 Minnehaha +WIB 46101 1990 4 Moody +WIB 46103 1990 21 Pennington +WIB 46105 1990 49 Perkins +WIB 46107 1990 83 Potter +WIB 46109 1990 88 Roberts +WIB 46111 1990 3 Sanborn +WIB 46113 1990 7 Shannon +WIB 46115 1990 16 Spink +WIB 46117 1990 191 Stanley +WIB 46119 1990 164 Sully +WIB 46121 1990 7 Todd +WIB 46123 1990 10 Tripp +WIB 46125 1990 2 Turner +WIB 46127 1990 17 Union +WIB 46129 1990 94 Walworth +WIB 46135 1990 29 Yankton +WIB 46137 1990 23 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/SD_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/SD_WOB.ALO new file mode 100644 index 0000000..5f7b444 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/SD_WOB.ALO @@ -0,0 +1,91 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 46000 1990 3172 SD +WOB 46003 1990 11 Aurora +WOB 46005 1990 14 Beadle +WOB 46007 1990 14 Bennett +WOB 46009 1990 46 Bon Homme +WOB 46011 1990 27 Brookings +WOB 46013 1990 48 Brown +WOB 46015 1990 71 Brule +WOB 46017 1990 44 Buffalo +WOB 46019 1990 46 Butte +WOB 46021 1990 92 Campbell +WOB 46023 1990 135 Charles Mix +WOB 46025 1990 26 Clark +WOB 46027 1990 13 Clay +WOB 46029 1990 76 Codington +WOB 46031 1990 146 Corson +WOB 46033 1990 4 Custer +WOB 46035 1990 4 Davison +WOB 46037 1990 162 Day +WOB 46039 1990 34 Deuel +WOB 46041 1990 370 Dewey +WOB 46043 1990 1 Douglas +WOB 46045 1990 14 Edmunds +WOB 46047 1990 24 Fall River +WOB 46049 1990 14 Faulk +WOB 46051 1990 14 Grant +WOB 46053 1990 97 Gregory +WOB 46055 1990 37 Haakon +WOB 46057 1990 69 Hamlin +WOB 46059 1990 9 Hand +WOB 46061 1990 3 Hanson +WOB 46063 1990 18 Harding +WOB 46065 1990 154 Hughes +WOB 46067 1990 4 Hutchinson +WOB 46069 1990 14 Hyde +WOB 46071 1990 5 Jackson +WOB 46073 1990 6 Jerauld +WOB 46075 1990 3 Jones +WOB 46077 1990 66 Kingsbury +WOB 46079 1990 31 Lake +WOB 46081 1990 1 Lawrence +WOB 46083 1990 1 Lincoln +WOB 46085 1990 174 Lyman +WOB 46087 1990 7 McCook +WOB 46089 1990 39 McPherson +WOB 46091 1990 121 Marshall +WOB 46093 1990 31 Meade +WOB 46095 1990 8 Mellette +WOB 46097 1990 4 Miner +WOB 46099 1990 12 Minnehaha +WOB 46101 1990 4 Moody +WOB 46103 1990 21 Pennington +WOB 46105 1990 49 Perkins +WOB 46107 1990 83 Potter +WOB 46109 1990 88 Roberts +WOB 46111 1990 3 Sanborn +WOB 46113 1990 7 Shannon +WOB 46115 1990 16 Spink +WOB 46117 1990 191 Stanley +WOB 46119 1990 164 Sully +WOB 46121 1990 7 Todd +WOB 46123 1990 10 Tripp +WOB 46125 1990 2 Turner +WOB 46127 1990 17 Union +WOB 46129 1990 94 Walworth +WOB 46135 1990 29 Yankton +WOB 46137 1990 23 Ziebach +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_AIRTR.ALO new file mode 100644 index 0000000..0053699 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_AIRTR.ALO @@ -0,0 +1,122 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 47000 2002 1937.315 TN +AIR 47001 2002 0.000 Anderson +AIR 47003 2002 0.022 Bedford +AIR 47005 2002 0.033 Benton +AIR 47007 2002 0.000 Bledsoe +AIR 47009 2002 128.230 Blount +AIR 47011 2002 0.032 Bradley +AIR 47013 2002 0.008 Campbell +AIR 47015 2002 0.000 Cannon +AIR 47017 2002 0.000 Carroll +AIR 47019 2002 0.000 Carter +AIR 47021 2002 0.000 Cheatham +AIR 47023 2002 0.000 Chester +AIR 47025 2002 0.000 Claiborne +AIR 47027 2002 0.000 Clay +AIR 47029 2002 0.000 Cocke +AIR 47031 2002 0.049 Coffee +AIR 47033 2002 0.000 Crockett +AIR 47035 2002 0.139 Cumberland +AIR 47037 2002 629.660 Davidson +AIR 47039 2002 0.011 Decatur +AIR 47041 2002 0.012 DeKalb +AIR 47043 2002 0.048 Dickson +AIR 47045 2002 0.130 Dyer +AIR 47047 2002 0.030 Fayette +AIR 47049 2002 0.030 Fentress +AIR 47051 2002 0.022 Franklin +AIR 47053 2002 0.187 Gibson +AIR 47055 2002 0.016 Giles +AIR 47057 2002 0.000 Grainger +AIR 47059 2002 0.610 Greene +AIR 47061 2002 0.000 Grundy +AIR 47063 2002 0.250 Hamblen +AIR 47065 2002 54.310 Hamilton +AIR 47067 2002 0.000 Hancock +AIR 47069 2002 0.015 Hardeman +AIR 47071 2002 0.080 Hardin +AIR 47073 2002 0.100 Hawkins +AIR 47075 2002 0.000 Haywood +AIR 47077 2002 0.102 Henderson +AIR 47079 2002 0.078 Henry +AIR 47081 2002 0.022 Hickman +AIR 47083 2002 0.000 Houston +AIR 47085 2002 0.080 Humphreys +AIR 47087 2002 0.000 Jackson +AIR 47089 2002 0.000 Jefferson +AIR 47091 2002 0.000 Johnson +AIR 47093 2002 0.312 Knox +AIR 47095 2002 0.000 Lake +AIR 47097 2002 0.000 Lauderdale +AIR 47099 2002 0.071 Lawrence +AIR 47101 2002 0.000 Lewis +AIR 47103 2002 0.074 Lincoln +AIR 47105 2002 0.000 Loudon +AIR 47107 2002 0.123 McMinn +AIR 47109 2002 0.039 McNairy +AIR 47111 2002 0.134 Macon +AIR 47113 2002 0.340 Madison +AIR 47115 2002 0.074 Marion +AIR 47117 2002 0.092 Marshall +AIR 47119 2002 0.290 Maury +AIR 47121 2002 0.000 Meigs +AIR 47123 2002 0.083 Monroe +AIR 47125 2002 0.270 Montgomery +AIR 47127 2002 0.000 Moore +AIR 47129 2002 0.060 Morgan +AIR 47131 2002 0.300 Obion +AIR 47133 2002 0.052 Overton +AIR 47135 2002 0.000 Perry +AIR 47137 2002 0.000 Pickett +AIR 47139 2002 0.000 Polk +AIR 47141 2002 0.000 Putnam +AIR 47143 2002 0.044 Rhea +AIR 47145 2002 0.000 Roane +AIR 47147 2002 0.100 Robertson +AIR 47149 2002 1.520 Rutherford +AIR 47151 2002 0.039 Scott +AIR 47153 2002 0.000 Sequatchie +AIR 47155 2002 0.000 Sevier +AIR 47157 2002 1081.810 Shelby +AIR 47159 2002 0.000 Smith +AIR 47161 2002 0.000 Stewart +AIR 47163 2002 36.650 Sullivan +AIR 47165 2002 0.112 Sumner +AIR 47167 2002 0.114 Tipton +AIR 47169 2002 0.000 Trousdale +AIR 47171 2002 0.000 Unicoi +AIR 47173 2002 0.000 Union +AIR 47175 2002 0.000 Van Buren +AIR 47177 2002 0.140 Warren +AIR 47179 2002 0.000 Washington +AIR 47181 2002 0.000 Wayne +AIR 47183 2002 0.000 Weakley +AIR 47185 2002 0.035 White +AIR 47187 2002 0.000 Williamson +AIR 47189 2002 0.130 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_COAL.ALO new file mode 100644 index 0000000..ea3ded9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_COAL.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 47000 2002 1086 TN +MIN 47001 2002 17 Anderson +MIN 47003 2002 0 Bedford +MIN 47005 2002 0 Benton +MIN 47007 2002 0 Bledsoe +MIN 47009 2002 0 Blount +MIN 47011 2002 0 Bradley +MIN 47013 2002 452 Campbell +MIN 47015 2002 0 Cannon +MIN 47017 2002 0 Carroll +MIN 47019 2002 0 Carter +MIN 47021 2002 0 Cheatham +MIN 47023 2002 0 Chester +MIN 47025 2002 464 Claiborne +MIN 47027 2002 0 Clay +MIN 47029 2002 0 Cocke +MIN 47031 2002 0 Coffee +MIN 47033 2002 0 Crockett +MIN 47035 2002 0 Cumberland +MIN 47037 2002 0 Davidson +MIN 47039 2002 0 Decatur +MIN 47041 2002 0 DeKalb +MIN 47043 2002 0 Dickson +MIN 47045 2002 0 Dyer +MIN 47047 2002 0 Fayette +MIN 47049 2002 0 Fentress +MIN 47051 2002 0 Franklin +MIN 47053 2002 0 Gibson +MIN 47055 2002 0 Giles +MIN 47057 2002 0 Grainger +MIN 47059 2002 0 Greene +MIN 47061 2002 0 Grundy +MIN 47063 2002 0 Hamblen +MIN 47065 2002 0 Hamilton +MIN 47067 2002 0 Hancock +MIN 47069 2002 0 Hardeman +MIN 47071 2002 0 Hardin +MIN 47073 2002 0 Hawkins +MIN 47075 2002 0 Haywood +MIN 47077 2002 0 Henderson +MIN 47079 2002 0 Henry +MIN 47081 2002 0 Hickman +MIN 47083 2002 0 Houston +MIN 47085 2002 0 Humphreys +MIN 47087 2002 0 Jackson +MIN 47089 2002 0 Jefferson +MIN 47091 2002 0 Johnson +MIN 47093 2002 0 Knox +MIN 47095 2002 0 Lake +MIN 47097 2002 0 Lauderdale +MIN 47099 2002 0 Lawrence +MIN 47101 2002 0 Lewis +MIN 47103 2002 0 Lincoln +MIN 47105 2002 0 Loudon +MIN 47107 2002 0 McMinn +MIN 47109 2002 0 McNairy +MIN 47111 2002 0 Macon +MIN 47113 2002 0 Madison +MIN 47115 2002 0 Marion +MIN 47117 2002 0 Marshall +MIN 47119 2002 0 Maury +MIN 47121 2002 0 Meigs +MIN 47123 2002 0 Monroe +MIN 47125 2002 0 Montgomery +MIN 47127 2002 0 Moore +MIN 47129 2002 0 Morgan +MIN 47131 2002 0 Obion +MIN 47133 2002 0 Overton +MIN 47135 2002 0 Perry +MIN 47137 2002 0 Pickett +MIN 47139 2002 0 Polk +MIN 47141 2002 0 Putnam +MIN 47143 2002 0 Rhea +MIN 47145 2002 0 Roane +MIN 47147 2002 0 Robertson +MIN 47149 2002 0 Rutherford +MIN 47151 2002 153 Scott +MIN 47153 2002 0 Sequatchie +MIN 47155 2002 0 Sevier +MIN 47157 2002 0 Shelby +MIN 47159 2002 0 Smith +MIN 47161 2002 0 Stewart +MIN 47163 2002 0 Sullivan +MIN 47165 2002 0 Sumner +MIN 47167 2002 0 Tipton +MIN 47169 2002 0 Trousdale +MIN 47171 2002 0 Unicoi +MIN 47173 2002 0 Union +MIN 47175 2002 0 Van Buren +MIN 47177 2002 0 Warren +MIN 47179 2002 0 Washington +MIN 47181 2002 0 Wayne +MIN 47183 2002 0 Weakley +MIN 47185 2002 0 White +MIN 47187 2002 0 Williamson +MIN 47189 2002 0 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_CONST.ALO new file mode 100644 index 0000000..28b7442 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_CONST.ALO @@ -0,0 +1,122 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 47000 2003 10662234 TN +CON 47001 2003 109751 Anderson +CON 47003 2003 69339 Bedford +CON 47005 2003 8896 Benton +CON 47007 2003 9053 Bledsoe +CON 47009 2003 162786 Blount +CON 47011 2003 130840 Bradley +CON 47013 2003 18896 Campbell +CON 47015 2003 9072 Cannon +CON 47017 2003 14290 Carroll +CON 47019 2003 31872 Carter +CON 47021 2003 56013 Cheatham +CON 47023 2003 10470 Chester +CON 47025 2003 28928 Claiborne +CON 47027 2003 7398 Clay +CON 47029 2003 17421 Cocke +CON 47031 2003 70287 Coffee +CON 47033 2003 9973 Crockett +CON 47035 2003 56717 Cumberland +CON 47037 2003 1401203 Davidson +CON 47039 2003 6599 Decatur +CON 47041 2003 15007 DeKalb +CON 47043 2003 50049 Dickson +CON 47045 2003 30013 Dyer +CON 47047 2003 52500 Fayette +CON 47049 2003 26249 Fentress +CON 47051 2003 35178 Franklin +CON 47053 2003 25946 Gibson +CON 47055 2003 16739 Giles +CON 47057 2003 13442 Grainger +CON 47059 2003 64302 Greene +CON 47061 2003 10185 Grundy +CON 47063 2003 65322 Hamblen +CON 47065 2003 660184 Hamilton +CON 47067 2003 3452 Hancock +CON 47069 2003 23388 Hardeman +CON 47071 2003 20229 Hardin +CON 47073 2003 31901 Hawkins +CON 47075 2003 17052 Haywood +CON 47077 2003 24592 Henderson +CON 47079 2003 39507 Henry +CON 47081 2003 9230 Hickman +CON 47083 2003 3515 Houston +CON 47085 2003 15132 Humphreys +CON 47087 2003 11704 Jackson +CON 47089 2003 74512 Jefferson +CON 47091 2003 7765 Johnson +CON 47093 2003 1052185 Knox +CON 47095 2003 3030 Lake +CON 47097 2003 16762 Lauderdale +CON 47099 2003 21509 Lawrence +CON 47101 2003 5610 Lewis +CON 47103 2003 20772 Lincoln +CON 47105 2003 80681 Loudon +CON 47107 2003 67878 McMinn +CON 47109 2003 14260 McNairy +CON 47111 2003 51785 Macon +CON 47113 2003 185495 Madison +CON 47115 2003 27002 Marion +CON 47117 2003 24722 Marshall +CON 47119 2003 195384 Maury +CON 47121 2003 5020 Meigs +CON 47123 2003 15941 Monroe +CON 47125 2003 287688 Montgomery +CON 47127 2003 8673 Moore +CON 47129 2003 32554 Morgan +CON 47131 2003 17977 Obion +CON 47133 2003 9661 Overton +CON 47135 2003 16469 Perry +CON 47137 2003 3305 Pickett +CON 47139 2003 2399 Polk +CON 47141 2003 88388 Putnam +CON 47143 2003 24426 Rhea +CON 47145 2003 57920 Roane +CON 47147 2003 85584 Robertson +CON 47149 2003 996477 Rutherford +CON 47151 2003 13035 Scott +CON 47153 2003 30546 Sequatchie +CON 47155 2003 153223 Sevier +CON 47157 2003 1632933 Shelby +CON 47159 2003 11737 Smith +CON 47161 2003 5919 Stewart +CON 47163 2003 173950 Sullivan +CON 47165 2003 341200 Sumner +CON 47167 2003 72958 Tipton +CON 47169 2003 5186 Trousdale +CON 47171 2003 3325 Unicoi +CON 47173 2003 30099 Union +CON 47175 2003 3427 Van Buren +CON 47177 2003 23355 Warren +CON 47179 2003 135558 Washington +CON 47181 2003 8804 Wayne +CON 47183 2003 37054 Weakley +CON 47185 2003 16490 White +CON 47187 2003 681781 Williamson +CON 47189 2003 285199 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_FARMS.ALO new file mode 100644 index 0000000..a48dd17 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_FARMS.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 47000 2002 4365360 TN +FRM 47001 2002 11351 Anderson +FRM 47003 2002 61360 Bedford +FRM 47005 2002 17778 Benton +FRM 47007 2002 23884 Bledsoe +FRM 47009 2002 35985 Blount +FRM 47011 2002 24977 Bradley +FRM 47013 2002 9326 Campbell +FRM 47015 2002 30714 Cannon +FRM 47017 2002 90801 Carroll +FRM 47019 2002 10138 Carter +FRM 47021 2002 19766 Cheatham +FRM 47023 2002 24686 Chester +FRM 47025 2002 27840 Claiborne +FRM 47027 2002 15853 Clay +FRM 47029 2002 19634 Cocke +FRM 47031 2002 66618 Coffee +FRM 47033 2002 106999 Crockett +FRM 47035 2002 32859 Cumberland +FRM 47037 2002 9836 Davidson +FRM 47039 2002 18665 Decatur +FRM 47041 2002 23020 DeKalb +FRM 47043 2002 32908 Dickson +FRM 47045 2002 173489 Dyer +FRM 47047 2002 124163 Fayette +FRM 47049 2002 19059 Fentress +FRM 47051 2002 82074 Franklin +FRM 47053 2002 238337 Gibson +FRM 47055 2002 63457 Giles +FRM 47057 2002 21482 Grainger +FRM 47059 2002 80936 Greene +FRM 47061 2002 10682 Grundy +FRM 47063 2002 20221 Hamblen +FRM 47065 2002 14780 Hamilton +FRM 47067 2002 10544 Hancock +FRM 47069 2002 46826 Hardeman +FRM 47071 2002 40099 Hardin +FRM 47073 2002 40728 Hawkins +FRM 47075 2002 158806 Haywood +FRM 47077 2002 46627 Henderson +FRM 47079 2002 91846 Henry +FRM 47081 2002 29828 Hickman +FRM 47083 2002 11147 Houston +FRM 47085 2002 34578 Humphreys +FRM 47087 2002 11964 Jackson +FRM 47089 2002 34733 Jefferson +FRM 47091 2002 12371 Johnson +FRM 47093 2002 27337 Knox +FRM 47095 2002 84153 Lake +FRM 47097 2002 159821 Lauderdale +FRM 47099 2002 70524 Lawrence +FRM 47101 2002 7312 Lewis +FRM 47103 2002 87240 Lincoln +FRM 47105 2002 28339 Loudon +FRM 47107 2002 39942 McMinn +FRM 47109 2002 40160 McNairy +FRM 47111 2002 37434 Macon +FRM 47113 2002 93071 Madison +FRM 47115 2002 15945 Marion +FRM 47117 2002 40385 Marshall +FRM 47119 2002 62144 Maury +FRM 47121 2002 12074 Meigs +FRM 47123 2002 32228 Monroe +FRM 47125 2002 55288 Montgomery +FRM 47127 2002 12986 Moore +FRM 47129 2002 12854 Morgan +FRM 47131 2002 191962 Obion +FRM 47133 2002 28622 Overton +FRM 47135 2002 9767 Perry +FRM 47137 2002 11272 Pickett +FRM 47139 2002 10110 Polk +FRM 47141 2002 27625 Putnam +FRM 47143 2002 17578 Rhea +FRM 47145 2002 15027 Roane +FRM 47147 2002 121444 Robertson +FRM 47149 2002 54981 Rutherford +FRM 47151 2002 7103 Scott +FRM 47153 2002 6055 Sequatchie +FRM 47155 2002 16611 Sevier +FRM 47157 2002 62992 Shelby +FRM 47159 2002 28069 Smith +FRM 47161 2002 11781 Stewart +FRM 47163 2002 29081 Sullivan +FRM 47165 2002 63088 Sumner +FRM 47167 2002 128028 Tipton +FRM 47169 2002 12544 Trousdale +FRM 47171 2002 2315 Unicoi +FRM 47173 2002 10542 Union +FRM 47175 2002 5807 Van Buren +FRM 47177 2002 61775 Warren +FRM 47179 2002 52626 Washington +FRM 47181 2002 22119 Wayne +FRM 47183 2002 153793 Weakley +FRM 47185 2002 38798 White +FRM 47187 2002 56753 Williamson +FRM 47189 2002 54080 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_GOLF.ALO new file mode 100644 index 0000000..d4410d6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_GOLF.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 47000 2002 216 TN +GC 47001 2002 1 Anderson +GC 47003 2002 1 Bedford +GC 47005 2002 1 Benton +GC 47007 2002 0 Bledsoe +GC 47009 2002 7 Blount +GC 47011 2002 3 Bradley +GC 47013 2002 2 Campbell +GC 47015 2002 0 Cannon +GC 47017 2002 2 Carroll +GC 47019 2002 1 Carter +GC 47021 2002 4 Cheatham +GC 47023 2002 0 Chester +GC 47025 2002 1 Claiborne +GC 47027 2002 0 Clay +GC 47029 2002 2 Cocke +GC 47031 2002 2 Coffee +GC 47033 2002 1 Crockett +GC 47035 2002 4 Cumberland +GC 47037 2002 12 Davidson +GC 47039 2002 1 Decatur +GC 47041 2002 2 DeKalb +GC 47043 2002 2 Dickson +GC 47045 2002 2 Dyer +GC 47047 2002 2 Fayette +GC 47049 2002 0 Fentress +GC 47051 2002 2 Franklin +GC 47053 2002 3 Gibson +GC 47055 2002 1 Giles +GC 47057 2002 1 Grainger +GC 47059 2002 6 Greene +GC 47061 2002 0 Grundy +GC 47063 2002 3 Hamblen +GC 47065 2002 14 Hamilton +GC 47067 2002 0 Hancock +GC 47069 2002 2 Hardeman +GC 47071 2002 3 Hardin +GC 47073 2002 2 Hawkins +GC 47075 2002 1 Haywood +GC 47077 2002 1 Henderson +GC 47079 2002 2 Henry +GC 47081 2002 1 Hickman +GC 47083 2002 0 Houston +GC 47085 2002 2 Humphreys +GC 47087 2002 1 Jackson +GC 47089 2002 5 Jefferson +GC 47091 2002 1 Johnson +GC 47093 2002 12 Knox +GC 47095 2002 0 Lake +GC 47097 2002 1 Lauderdale +GC 47099 2002 2 Lawrence +GC 47101 2002 1 Lewis +GC 47103 2002 1 Lincoln +GC 47105 2002 3 Loudon +GC 47107 2002 4 McMinn +GC 47109 2002 1 McNairy +GC 47111 2002 1 Macon +GC 47113 2002 5 Madison +GC 47115 2002 0 Marion +GC 47117 2002 1 Marshall +GC 47119 2002 4 Maury +GC 47121 2002 0 Meigs +GC 47123 2002 0 Monroe +GC 47125 2002 2 Montgomery +GC 47127 2002 0 Moore +GC 47129 2002 0 Morgan +GC 47131 2002 3 Obion +GC 47133 2002 1 Overton +GC 47135 2002 0 Perry +GC 47137 2002 0 Pickett +GC 47139 2002 1 Polk +GC 47141 2002 7 Putnam +GC 47143 2002 1 Rhea +GC 47145 2002 4 Roane +GC 47147 2002 2 Robertson +GC 47149 2002 4 Rutherford +GC 47151 2002 2 Scott +GC 47153 2002 1 Sequatchie +GC 47155 2002 1 Sevier +GC 47157 2002 15 Shelby +GC 47159 2002 1 Smith +GC 47161 2002 0 Stewart +GC 47163 2002 4 Sullivan +GC 47165 2002 4 Sumner +GC 47167 2002 2 Tipton +GC 47169 2002 0 Trousdale +GC 47171 2002 0 Unicoi +GC 47173 2002 0 Union +GC 47175 2002 0 Van Buren +GC 47177 2002 1 Warren +GC 47179 2002 3 Washington +GC 47181 2002 1 Wayne +GC 47183 2002 1 Weakley +GC 47185 2002 1 White +GC 47187 2002 8 Williamson +GC 47189 2002 6 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_HOLSL.ALO new file mode 100644 index 0000000..8de35f6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_HOLSL.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 47000 2002 7613 TN +COM 47001 2002 52 Anderson +COM 47003 2002 31 Bedford +COM 47005 2002 11 Benton +COM 47007 2002 4 Bledsoe +COM 47009 2002 102 Blount +COM 47011 2002 79 Bradley +COM 47013 2002 21 Campbell +COM 47015 2002 10 Cannon +COM 47017 2002 29 Carroll +COM 47019 2002 18 Carter +COM 47021 2002 18 Cheatham +COM 47023 2002 7 Chester +COM 47025 2002 12 Claiborne +COM 47027 2002 4 Clay +COM 47029 2002 13 Cocke +COM 47031 2002 51 Coffee +COM 47033 2002 14 Crockett +COM 47035 2002 32 Cumberland +COM 47037 2002 1207 Davidson +COM 47039 2002 5 Decatur +COM 47041 2002 7 DeKalb +COM 47043 2002 39 Dickson +COM 47045 2002 48 Dyer +COM 47047 2002 28 Fayette +COM 47049 2002 6 Fentress +COM 47051 2002 17 Franklin +COM 47053 2002 42 Gibson +COM 47055 2002 24 Giles +COM 47057 2002 2 Grainger +COM 47059 2002 37 Greene +COM 47061 2002 4 Grundy +COM 47063 2002 81 Hamblen +COM 47065 2002 625 Hamilton +COM 47067 2002 2 Hancock +COM 47069 2002 21 Hardeman +COM 47071 2002 18 Hardin +COM 47073 2002 18 Hawkins +COM 47075 2002 15 Haywood +COM 47077 2002 19 Henderson +COM 47079 2002 39 Henry +COM 47081 2002 10 Hickman +COM 47083 2002 0 Houston +COM 47085 2002 19 Humphreys +COM 47087 2002 1 Jackson +COM 47089 2002 30 Jefferson +COM 47091 2002 5 Johnson +COM 47093 2002 875 Knox +COM 47095 2002 7 Lake +COM 47097 2002 23 Lauderdale +COM 47099 2002 41 Lawrence +COM 47101 2002 8 Lewis +COM 47103 2002 25 Lincoln +COM 47105 2002 52 Loudon +COM 47107 2002 34 McMinn +COM 47109 2002 22 McNairy +COM 47111 2002 11 Macon +COM 47113 2002 166 Madison +COM 47115 2002 11 Marion +COM 47117 2002 17 Marshall +COM 47119 2002 62 Maury +COM 47121 2002 2 Meigs +COM 47123 2002 22 Monroe +COM 47125 2002 79 Montgomery +COM 47127 2002 1 Moore +COM 47129 2002 5 Morgan +COM 47131 2002 39 Obion +COM 47133 2002 10 Overton +COM 47135 2002 2 Perry +COM 47137 2002 1 Pickett +COM 47139 2002 5 Polk +COM 47141 2002 87 Putnam +COM 47143 2002 15 Rhea +COM 47145 2002 17 Roane +COM 47147 2002 59 Robertson +COM 47149 2002 226 Rutherford +COM 47151 2002 14 Scott +COM 47153 2002 12 Sequatchie +COM 47155 2002 51 Sevier +COM 47157 2002 1660 Shelby +COM 47159 2002 13 Smith +COM 47161 2002 4 Stewart +COM 47163 2002 215 Sullivan +COM 47165 2002 137 Sumner +COM 47167 2002 28 Tipton +COM 47169 2002 8 Trousdale +COM 47171 2002 9 Unicoi +COM 47173 2002 6 Union +COM 47175 2002 1 Van Buren +COM 47177 2002 47 Warren +COM 47179 2002 146 Washington +COM 47181 2002 5 Wayne +COM 47183 2002 39 Weakley +COM 47185 2002 15 White +COM 47187 2002 285 Williamson +COM 47189 2002 117 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_HOUSE.ALO new file mode 100644 index 0000000..d3e33f3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_HOUSE.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 47000 2002 2519715 TN +HOU 47001 2002 33007 Anderson +HOU 47003 2002 15392 Bedford +HOU 47005 2002 8793 Benton +HOU 47007 2002 5263 Bledsoe +HOU 47009 2002 48074 Blount +HOU 47011 2002 38054 Bradley +HOU 47013 2002 18766 Campbell +HOU 47015 2002 5532 Cannon +HOU 47017 2002 13275 Carroll +HOU 47019 2002 26392 Carter +HOU 47021 2002 14131 Cheatham +HOU 47023 2002 6393 Chester +HOU 47025 2002 13991 Claiborne +HOU 47027 2002 4061 Clay +HOU 47029 2002 16192 Cocke +HOU 47031 2002 21321 Coffee +HOU 47033 2002 6231 Crockett +HOU 47035 2002 23065 Cumberland +HOU 47037 2002 259346 Davidson +HOU 47039 2002 6579 Decatur +HOU 47041 2002 8531 DeKalb +HOU 47043 2002 18480 Dickson +HOU 47045 2002 16579 Dyer +HOU 47047 2002 11619 Fayette +HOU 47049 2002 7765 Fentress +HOU 47051 2002 17488 Franklin +HOU 47053 2002 21431 Gibson +HOU 47055 2002 13397 Giles +HOU 47057 2002 9999 Grainger +HOU 47059 2002 28925 Greene +HOU 47061 2002 6413 Grundy +HOU 47063 2002 25435 Hamblen +HOU 47065 2002 137674 Hamilton +HOU 47067 2002 3322 Hancock +HOU 47069 2002 10972 Hardeman +HOU 47071 2002 13053 Hardin +HOU 47073 2002 25078 Hawkins +HOU 47075 2002 8269 Haywood +HOU 47077 2002 11746 Henderson +HOU 47079 2002 16107 Henry +HOU 47081 2002 9084 Hickman +HOU 47083 2002 3992 Houston +HOU 47085 2002 8672 Humphreys +HOU 47087 2002 5267 Jackson +HOU 47089 2002 20187 Jefferson +HOU 47091 2002 8132 Johnson +HOU 47093 2002 177358 Knox +HOU 47095 2002 2723 Lake +HOU 47097 2002 10830 Lauderdale +HOU 47099 2002 17053 Lawrence +HOU 47101 2002 4935 Lewis +HOU 47103 2002 14193 Lincoln +HOU 47105 2002 17788 Loudon +HOU 47107 2002 22016 McMinn +HOU 47109 2002 11448 McNairy +HOU 47111 2002 9121 Macon +HOU 47113 2002 39667 Madison +HOU 47115 2002 12744 Marion +HOU 47117 2002 11719 Marshall +HOU 47119 2002 30030 Maury +HOU 47121 2002 5334 Meigs +HOU 47123 2002 17757 Monroe +HOU 47125 2002 55316 Montgomery +HOU 47127 2002 2656 Moore +HOU 47129 2002 7894 Morgan +HOU 47131 2002 14691 Obion +HOU 47133 2002 9368 Overton +HOU 47135 2002 4207 Perry +HOU 47137 2002 3011 Pickett +HOU 47139 2002 7530 Polk +HOU 47141 2002 27556 Putnam +HOU 47143 2002 12969 Rhea +HOU 47145 2002 23804 Roane +HOU 47147 2002 22316 Robertson +HOU 47149 2002 78216 Rutherford +HOU 47151 2002 9110 Scott +HOU 47153 2002 5057 Sequatchie +HOU 47155 2002 38706 Sevier +HOU 47157 2002 374598 Shelby +HOU 47159 2002 7825 Smith +HOU 47161 2002 6105 Stewart +HOU 47163 2002 70405 Sullivan +HOU 47165 2002 54325 Sumner +HOU 47167 2002 20215 Tipton +HOU 47169 2002 3178 Trousdale +HOU 47171 2002 8334 Unicoi +HOU 47173 2002 8277 Union +HOU 47175 2002 2515 Van Buren +HOU 47177 2002 17004 Warren +HOU 47179 2002 48727 Washington +HOU 47181 2002 6876 Wayne +HOU 47183 2002 15283 Weakley +HOU 47185 2002 10429 White +HOU 47187 2002 50209 Williamson +HOU 47189 2002 36812 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_LOGGN.ALO new file mode 100644 index 0000000..0e6a9b8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_LOGGN.ALO @@ -0,0 +1,122 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 47000 2002 453988379 TN +LOG 47001 2002 5032154 Anderson +LOG 47003 2002 329742 Bedford +LOG 47005 2002 5928202 Benton +LOG 47007 2002 7720860 Bledsoe +LOG 47009 2002 1159892 Blount +LOG 47011 2002 7635142 Bradley +LOG 47013 2002 5338404 Campbell +LOG 47015 2002 915110 Cannon +LOG 47017 2002 6096619 Carroll +LOG 47019 2002 3090762 Carter +LOG 47021 2002 2820041 Cheatham +LOG 47023 2002 5084169 Chester +LOG 47025 2002 4757030 Claiborne +LOG 47027 2002 4576177 Clay +LOG 47029 2002 2096505 Cocke +LOG 47031 2002 2270886 Coffee +LOG 47033 2002 262906 Crockett +LOG 47035 2002 11233171 Cumberland +LOG 47037 2002 487817 Davidson +LOG 47039 2002 4528212 Decatur +LOG 47041 2002 1458389 DeKalb +LOG 47043 2002 5768473 Dickson +LOG 47045 2002 333560 Dyer +LOG 47047 2002 4362763 Fayette +LOG 47049 2002 5639499 Fentress +LOG 47051 2002 10330915 Franklin +LOG 47053 2002 627519 Gibson +LOG 47055 2002 7979079 Giles +LOG 47057 2002 2334317 Grainger +LOG 47059 2002 2060255 Greene +LOG 47061 2002 8860388 Grundy +LOG 47063 2002 1940989 Hamblen +LOG 47065 2002 6177934 Hamilton +LOG 47067 2002 2119717 Hancock +LOG 47069 2002 11562875 Hardeman +LOG 47071 2002 18205888 Hardin +LOG 47073 2002 4011399 Hawkins +LOG 47075 2002 4348204 Haywood +LOG 47077 2002 5860490 Henderson +LOG 47079 2002 9463126 Henry +LOG 47081 2002 12773068 Hickman +LOG 47083 2002 3042890 Houston +LOG 47085 2002 6367216 Humphreys +LOG 47087 2002 4774475 Jackson +LOG 47089 2002 1507634 Jefferson +LOG 47091 2002 2064924 Johnson +LOG 47093 2002 1162736 Knox +LOG 47095 2002 459039 Lake +LOG 47097 2002 1756564 Lauderdale +LOG 47099 2002 7760614 Lawrence +LOG 47101 2002 5069582 Lewis +LOG 47103 2002 6254250 Lincoln +LOG 47105 2002 222411 Loudon +LOG 47107 2002 5317024 McMinn +LOG 47109 2002 14488409 McNairy +LOG 47111 2002 5274500 Macon +LOG 47113 2002 2249077 Madison +LOG 47115 2002 13396734 Marion +LOG 47117 2002 910923 Marshall +LOG 47119 2002 3321101 Maury +LOG 47121 2002 5387015 Meigs +LOG 47123 2002 7320486 Monroe +LOG 47125 2002 3385180 Montgomery +LOG 47127 2002 1521976 Moore +LOG 47129 2002 14376238 Morgan +LOG 47131 2002 2975147 Obion +LOG 47133 2002 9070006 Overton +LOG 47135 2002 6492065 Perry +LOG 47137 2002 4538000 Pickett +LOG 47139 2002 3174751 Polk +LOG 47141 2002 4389355 Putnam +LOG 47143 2002 6873742 Rhea +LOG 47145 2002 4414116 Roane +LOG 47147 2002 1444923 Robertson +LOG 47149 2002 635861 Rutherford +LOG 47151 2002 6884211 Scott +LOG 47153 2002 6445338 Sequatchie +LOG 47155 2002 1755167 Sevier +LOG 47157 2002 1041376 Shelby +LOG 47159 2002 2644623 Smith +LOG 47161 2002 8585995 Stewart +LOG 47163 2002 1660647 Sullivan +LOG 47165 2002 1463451 Sumner +LOG 47167 2002 1091652 Tipton +LOG 47169 2002 480631 Trousdale +LOG 47171 2002 4071013 Unicoi +LOG 47173 2002 226973 Union +LOG 47175 2002 10998519 Van Buren +LOG 47177 2002 4552834 Warren +LOG 47179 2002 1965922 Washington +LOG 47181 2002 14085402 Wayne +LOG 47183 2002 7640931 Weakley +LOG 47185 2002 6820358 White +LOG 47187 2002 1505540 Williamson +LOG 47189 2002 1086185 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_LSCAP.ALO new file mode 100644 index 0000000..cc8dc24 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_LSCAP.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 47000 2002 7329 TN +LSC 47001 2002 42 Anderson +LSC 47003 2002 17 Bedford +LSC 47005 2002 8 Benton +LSC 47007 2002 8 Bledsoe +LSC 47009 2002 178 Blount +LSC 47011 2002 32 Bradley +LSC 47013 2002 45 Campbell +LSC 47015 2002 8 Cannon +LSC 47017 2002 8 Carroll +LSC 47019 2002 30 Carter +LSC 47021 2002 45 Cheatham +LSC 47023 2002 8 Chester +LSC 47025 2002 8 Claiborne +LSC 47027 2002 8 Clay +LSC 47029 2002 8 Cocke +LSC 47031 2002 99 Coffee +LSC 47033 2002 14 Crockett +LSC 47035 2002 19 Cumberland +LSC 47037 2002 1480 Davidson +LSC 47039 2002 8 Decatur +LSC 47041 2002 8 DeKalb +LSC 47043 2002 31 Dickson +LSC 47045 2002 12 Dyer +LSC 47047 2002 27 Fayette +LSC 47049 2002 8 Fentress +LSC 47051 2002 12 Franklin +LSC 47053 2002 15 Gibson +LSC 47055 2002 23 Giles +LSC 47057 2002 2 Grainger +LSC 47059 2002 2 Greene +LSC 47061 2002 45 Grundy +LSC 47063 2002 65 Hamblen +LSC 47065 2002 273 Hamilton +LSC 47067 2002 0 Hancock +LSC 47069 2002 8 Hardeman +LSC 47071 2002 8 Hardin +LSC 47073 2002 8 Hawkins +LSC 47075 2002 9 Haywood +LSC 47077 2002 22 Henderson +LSC 47079 2002 45 Henry +LSC 47081 2002 8 Hickman +LSC 47083 2002 0 Houston +LSC 47085 2002 8 Humphreys +LSC 47087 2002 8 Jackson +LSC 47089 2002 5 Jefferson +LSC 47091 2002 0 Johnson +LSC 47093 2002 1111 Knox +LSC 47095 2002 8 Lake +LSC 47097 2002 8 Lauderdale +LSC 47099 2002 11 Lawrence +LSC 47101 2002 8 Lewis +LSC 47103 2002 32 Lincoln +LSC 47105 2002 45 Loudon +LSC 47107 2002 19 McMinn +LSC 47109 2002 8 McNairy +LSC 47111 2002 8 Macon +LSC 47113 2002 73 Madison +LSC 47115 2002 0 Marion +LSC 47117 2002 0 Marshall +LSC 47119 2002 86 Maury +LSC 47121 2002 8 Meigs +LSC 47123 2002 46 Monroe +LSC 47125 2002 54 Montgomery +LSC 47127 2002 0 Moore +LSC 47129 2002 8 Morgan +LSC 47131 2002 8 Obion +LSC 47133 2002 0 Overton +LSC 47135 2002 8 Perry +LSC 47137 2002 8 Pickett +LSC 47139 2002 46 Polk +LSC 47141 2002 34 Putnam +LSC 47143 2002 8 Rhea +LSC 47145 2002 31 Roane +LSC 47147 2002 15 Robertson +LSC 47149 2002 236 Rutherford +LSC 47151 2002 0 Scott +LSC 47153 2002 8 Sequatchie +LSC 47155 2002 76 Sevier +LSC 47157 2002 1787 Shelby +LSC 47159 2002 8 Smith +LSC 47161 2002 0 Stewart +LSC 47163 2002 152 Sullivan +LSC 47165 2002 109 Sumner +LSC 47167 2002 46 Tipton +LSC 47169 2002 0 Trousdale +LSC 47171 2002 8 Unicoi +LSC 47173 2002 8 Union +LSC 47175 2002 0 Van Buren +LSC 47177 2002 51 Warren +LSC 47179 2002 55 Washington +LSC 47181 2002 8 Wayne +LSC 47183 2002 4 Weakley +LSC 47185 2002 8 White +LSC 47187 2002 269 Williamson +LSC 47189 2002 80 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_MNFG.ALO new file mode 100644 index 0000000..c3b0d7b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_MNFG.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 47000 2002 762343 TN +MFG 47001 2002 22096 Anderson +MFG 47003 2002 9423 Bedford +MFG 47005 2002 1540 Benton +MFG 47007 2002 292 Bledsoe +MFG 47009 2002 14769 Blount +MFG 47011 2002 20286 Bradley +MFG 47013 2002 2628 Campbell +MFG 47015 2002 571 Cannon +MFG 47017 2002 4499 Carroll +MFG 47019 2002 3678 Carter +MFG 47021 2002 1597 Cheatham +MFG 47023 2002 1190 Chester +MFG 47025 2002 6445 Claiborne +MFG 47027 2002 872 Clay +MFG 47029 2002 3870 Cocke +MFG 47031 2002 9759 Coffee +MFG 47033 2002 1597 Crockett +MFG 47035 2002 3830 Cumberland +MFG 47037 2002 52346 Davidson +MFG 47039 2002 1552 Decatur +MFG 47041 2002 5038 DeKalb +MFG 47043 2002 8344 Dickson +MFG 47045 2002 7911 Dyer +MFG 47047 2002 2734 Fayette +MFG 47049 2002 770 Fentress +MFG 47051 2002 3889 Franklin +MFG 47053 2002 9846 Gibson +MFG 47055 2002 6352 Giles +MFG 47057 2002 2259 Grainger +MFG 47059 2002 14857 Greene +MFG 47061 2002 458 Grundy +MFG 47063 2002 25519 Hamblen +MFG 47065 2002 49915 Hamilton +MFG 47067 2002 367 Hancock +MFG 47069 2002 3498 Hardeman +MFG 47071 2002 3632 Hardin +MFG 47073 2002 9849 Hawkins +MFG 47075 2002 4716 Haywood +MFG 47077 2002 5794 Henderson +MFG 47079 2002 4673 Henry +MFG 47081 2002 1330 Hickman +MFG 47083 2002 401 Houston +MFG 47085 2002 3361 Humphreys +MFG 47087 2002 1518 Jackson +MFG 47089 2002 3355 Jefferson +MFG 47091 2002 1071 Johnson +MFG 47093 2002 29624 Knox +MFG 47095 2002 116 Lake +MFG 47097 2002 5970 Lauderdale +MFG 47099 2002 6243 Lawrence +MFG 47101 2002 941 Lewis +MFG 47103 2002 5115 Lincoln +MFG 47105 2002 5826 Loudon +MFG 47107 2002 11822 McMinn +MFG 47109 2002 4940 McNairy +MFG 47111 2002 1988 Macon +MFG 47113 2002 19674 Madison +MFG 47115 2002 2420 Marion +MFG 47117 2002 12106 Marshall +MFG 47119 2002 18264 Maury +MFG 47121 2002 782 Meigs +MFG 47123 2002 8908 Monroe +MFG 47125 2002 12410 Montgomery +MFG 47127 2002 363 Moore +MFG 47129 2002 733 Morgan +MFG 47131 2002 12202 Obion +MFG 47133 2002 2226 Overton +MFG 47135 2002 1756 Perry +MFG 47137 2002 587 Pickett +MFG 47139 2002 774 Polk +MFG 47141 2002 12229 Putnam +MFG 47143 2002 8919 Rhea +MFG 47145 2002 2797 Roane +MFG 47147 2002 9616 Robertson +MFG 47149 2002 32507 Rutherford +MFG 47151 2002 4061 Scott +MFG 47153 2002 1422 Sequatchie +MFG 47155 2002 2453 Sevier +MFG 47157 2002 59728 Shelby +MFG 47159 2002 3648 Smith +MFG 47161 2002 1335 Stewart +MFG 47163 2002 26754 Sullivan +MFG 47165 2002 17577 Sumner +MFG 47167 2002 4337 Tipton +MFG 47169 2002 255 Trousdale +MFG 47171 2002 2804 Unicoi +MFG 47173 2002 1794 Union +MFG 47175 2002 542 Van Buren +MFG 47177 2002 10505 Warren +MFG 47179 2002 15169 Washington +MFG 47181 2002 1669 Wayne +MFG 47183 2002 4070 Weakley +MFG 47185 2002 5630 White +MFG 47187 2002 8039 Williamson +MFG 47189 2002 14396 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_OIL.ALO new file mode 100644 index 0000000..11736af --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_OIL.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 47000 2002 157 TN +OIL 47001 2002 6 Anderson +OIL 47003 2002 0 Bedford +OIL 47005 2002 0 Benton +OIL 47007 2002 0 Bledsoe +OIL 47009 2002 0 Blount +OIL 47011 2002 0 Bradley +OIL 47013 2002 0 Campbell +OIL 47015 2002 0 Cannon +OIL 47017 2002 0 Carroll +OIL 47019 2002 0 Carter +OIL 47021 2002 0 Cheatham +OIL 47023 2002 0 Chester +OIL 47025 2002 6 Claiborne +OIL 47027 2002 0 Clay +OIL 47029 2002 0 Cocke +OIL 47031 2002 0 Coffee +OIL 47033 2002 0 Crockett +OIL 47035 2002 0 Cumberland +OIL 47037 2002 36 Davidson +OIL 47039 2002 0 Decatur +OIL 47041 2002 0 DeKalb +OIL 47043 2002 14 Dickson +OIL 47045 2002 0 Dyer +OIL 47047 2002 0 Fayette +OIL 47049 2002 13 Fentress +OIL 47051 2002 0 Franklin +OIL 47053 2002 0 Gibson +OIL 47055 2002 0 Giles +OIL 47057 2002 0 Grainger +OIL 47059 2002 0 Greene +OIL 47061 2002 0 Grundy +OIL 47063 2002 0 Hamblen +OIL 47065 2002 0 Hamilton +OIL 47067 2002 0 Hancock +OIL 47069 2002 0 Hardeman +OIL 47071 2002 0 Hardin +OIL 47073 2002 0 Hawkins +OIL 47075 2002 0 Haywood +OIL 47077 2002 0 Henderson +OIL 47079 2002 0 Henry +OIL 47081 2002 0 Hickman +OIL 47083 2002 0 Houston +OIL 47085 2002 0 Humphreys +OIL 47087 2002 0 Jackson +OIL 47089 2002 0 Jefferson +OIL 47091 2002 0 Johnson +OIL 47093 2002 6 Knox +OIL 47095 2002 6 Lake +OIL 47097 2002 0 Lauderdale +OIL 47099 2002 0 Lawrence +OIL 47101 2002 0 Lewis +OIL 47103 2002 0 Lincoln +OIL 47105 2002 0 Loudon +OIL 47107 2002 0 McMinn +OIL 47109 2002 0 McNairy +OIL 47111 2002 0 Macon +OIL 47113 2002 0 Madison +OIL 47115 2002 0 Marion +OIL 47117 2002 0 Marshall +OIL 47119 2002 0 Maury +OIL 47121 2002 0 Meigs +OIL 47123 2002 6 Monroe +OIL 47125 2002 0 Montgomery +OIL 47127 2002 0 Moore +OIL 47129 2002 0 Morgan +OIL 47131 2002 0 Obion +OIL 47133 2002 13 Overton +OIL 47135 2002 13 Perry +OIL 47137 2002 0 Pickett +OIL 47139 2002 0 Polk +OIL 47141 2002 0 Putnam +OIL 47143 2002 0 Rhea +OIL 47145 2002 13 Roane +OIL 47147 2002 0 Robertson +OIL 47149 2002 0 Rutherford +OIL 47151 2002 0 Scott +OIL 47153 2002 0 Sequatchie +OIL 47155 2002 0 Sevier +OIL 47157 2002 6 Shelby +OIL 47159 2002 0 Smith +OIL 47161 2002 0 Stewart +OIL 47163 2002 0 Sullivan +OIL 47165 2002 13 Sumner +OIL 47167 2002 6 Tipton +OIL 47169 2002 0 Trousdale +OIL 47171 2002 0 Unicoi +OIL 47173 2002 0 Union +OIL 47175 2002 0 Van Buren +OIL 47177 2002 0 Warren +OIL 47179 2002 0 Washington +OIL 47181 2002 0 Wayne +OIL 47183 2002 0 Weakley +OIL 47185 2002 0 White +OIL 47187 2002 0 Williamson +OIL 47189 2002 0 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_POP.ALO new file mode 100644 index 0000000..d421181 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_POP.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 47000 2002 5792297 TN +POP 47001 2002 71691 Anderson +POP 47003 2002 39262 Bedford +POP 47005 2002 16576 Benton +POP 47007 2002 12510 Bledsoe +POP 47009 2002 109720 Blount +POP 47011 2002 89518 Bradley +POP 47013 2002 39948 Campbell +POP 47015 2002 13109 Cannon +POP 47017 2002 29357 Carroll +POP 47019 2002 56914 Carter +POP 47021 2002 37107 Cheatham +POP 47023 2002 15928 Chester +POP 47025 2002 30095 Claiborne +POP 47027 2002 7973 Clay +POP 47029 2002 34127 Cocke +POP 47031 2002 49192 Coffee +POP 47033 2002 14541 Crockett +POP 47035 2002 48709 Cumberland +POP 47037 2002 569174 Davidson +POP 47039 2002 11716 Decatur +POP 47041 2002 17784 DeKalb +POP 47043 2002 44323 Dickson +POP 47045 2002 37161 Dyer +POP 47047 2002 31193 Fayette +POP 47049 2002 16875 Fentress +POP 47051 2002 40131 Franklin +POP 47053 2002 48151 Gibson +POP 47055 2002 29484 Giles +POP 47057 2002 21202 Grainger +POP 47059 2002 63707 Greene +POP 47061 2002 14322 Grundy +POP 47063 2002 58444 Hamblen +POP 47065 2002 309311 Hamilton +POP 47067 2002 6755 Hancock +POP 47069 2002 28280 Hardeman +POP 47071 2002 25930 Hardin +POP 47073 2002 54718 Hawkins +POP 47075 2002 19602 Haywood +POP 47077 2002 25849 Henderson +POP 47079 2002 31355 Henry +POP 47081 2002 23228 Hickman +POP 47083 2002 7995 Houston +POP 47085 2002 18087 Humphreys +POP 47087 2002 11182 Jackson +POP 47089 2002 45831 Jefferson +POP 47091 2002 17822 Johnson +POP 47093 2002 391494 Knox +POP 47095 2002 7890 Lake +POP 47097 2002 27150 Lauderdale +POP 47099 2002 40631 Lawrence +POP 47101 2002 11440 Lewis +POP 47103 2002 31714 Lincoln +POP 47105 2002 40778 Loudon +POP 47107 2002 50141 McMinn +POP 47109 2002 24720 McNairy +POP 47111 2002 20862 Macon +POP 47113 2002 93432 Madison +POP 47115 2002 27793 Marion +POP 47117 2002 27435 Marshall +POP 47119 2002 71505 Maury +POP 47121 2002 11312 Meigs +POP 47123 2002 40399 Monroe +POP 47125 2002 136855 Montgomery +POP 47127 2002 5967 Moore +POP 47129 2002 20057 Morgan +POP 47131 2002 32435 Obion +POP 47133 2002 20254 Overton +POP 47135 2002 7546 Perry +POP 47137 2002 5058 Pickett +POP 47139 2002 16124 Polk +POP 47141 2002 64060 Putnam +POP 47143 2002 28955 Rhea +POP 47145 2002 52245 Roane +POP 47147 2002 57234 Robertson +POP 47149 2002 195668 Rutherford +POP 47151 2002 21689 Scott +POP 47153 2002 11798 Sequatchie +POP 47155 2002 74340 Sevier +POP 47157 2002 901725 Shelby +POP 47159 2002 18181 Smith +POP 47161 2002 12796 Stewart +POP 47163 2002 152791 Sullivan +POP 47165 2002 136458 Sumner +POP 47167 2002 53383 Tipton +POP 47169 2002 7397 Trousdale +POP 47171 2002 17660 Unicoi +POP 47173 2002 18568 Union +POP 47175 2002 5536 Van Buren +POP 47177 2002 38781 Warren +POP 47179 2002 109163 Washington +POP 47181 2002 17039 Wayne +POP 47183 2002 34274 Weakley +POP 47185 2002 23496 White +POP 47187 2002 136714 Williamson +POP 47189 2002 93465 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_RAIL.ALO new file mode 100644 index 0000000..055a4c5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_RAIL.ALO @@ -0,0 +1,122 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 47000 2002 21442.350 TN +RR 47001 2002 589.750 Anderson +RR 47003 2002 323.610 Bedford +RR 47005 2002 76.720 Benton +RR 47007 2002 0.000 Bledsoe +RR 47009 2002 324.520 Blount +RR 47011 2002 192.950 Bradley +RR 47013 2002 243.280 Campbell +RR 47015 2002 0.000 Cannon +RR 47017 2002 250.420 Carroll +RR 47019 2002 202.810 Carter +RR 47021 2002 201.670 Cheatham +RR 47023 2002 10.800 Chester +RR 47025 2002 35.260 Claiborne +RR 47027 2002 0.000 Clay +RR 47029 2002 271.850 Cocke +RR 47031 2002 184.320 Coffee +RR 47033 2002 99.690 Crockett +RR 47035 2002 4.380 Cumberland +RR 47037 2002 1101.080 Davidson +RR 47039 2002 0.000 Decatur +RR 47041 2002 0.000 DeKalb +RR 47043 2002 396.780 Dickson +RR 47045 2002 298.800 Dyer +RR 47047 2002 447.220 Fayette +RR 47049 2002 0.000 Fentress +RR 47051 2002 224.400 Franklin +RR 47053 2002 190.920 Gibson +RR 47055 2002 326.550 Giles +RR 47057 2002 41.710 Grainger +RR 47059 2002 97.980 Greene +RR 47061 2002 0.000 Grundy +RR 47063 2002 227.320 Hamblen +RR 47065 2002 1420.980 Hamilton +RR 47067 2002 0.000 Hancock +RR 47069 2002 249.760 Hardeman +RR 47071 2002 1.410 Hardin +RR 47073 2002 675.580 Hawkins +RR 47075 2002 259.780 Haywood +RR 47077 2002 0.000 Henderson +RR 47079 2002 0.000 Henry +RR 47081 2002 0.000 Hickman +RR 47083 2002 0.000 Houston +RR 47085 2002 217.350 Humphreys +RR 47087 2002 0.000 Jackson +RR 47089 2002 286.350 Jefferson +RR 47091 2002 0.000 Johnson +RR 47093 2002 937.300 Knox +RR 47095 2002 0.000 Lake +RR 47097 2002 272.100 Lauderdale +RR 47099 2002 0.000 Lawrence +RR 47101 2002 0.000 Lewis +RR 47103 2002 231.020 Lincoln +RR 47105 2002 669.200 Loudon +RR 47107 2002 605.180 McMinn +RR 47109 2002 82.730 McNairy +RR 47111 2002 0.000 Macon +RR 47113 2002 23.720 Madison +RR 47115 2002 199.250 Marion +RR 47117 2002 520.300 Marshall +RR 47119 2002 10.650 Maury +RR 47121 2002 0.000 Meigs +RR 47123 2002 412.600 Monroe +RR 47125 2002 262.480 Montgomery +RR 47127 2002 0.000 Moore +RR 47129 2002 410.250 Morgan +RR 47131 2002 265.730 Obion +RR 47133 2002 0.000 Overton +RR 47135 2002 0.000 Perry +RR 47137 2002 0.000 Pickett +RR 47139 2002 185.550 Polk +RR 47141 2002 0.000 Putnam +RR 47143 2002 674.060 Rhea +RR 47145 2002 633.830 Roane +RR 47147 2002 502.770 Robertson +RR 47149 2002 486.900 Rutherford +RR 47151 2002 432.980 Scott +RR 47153 2002 0.000 Sequatchie +RR 47155 2002 0.000 Sevier +RR 47157 2002 1421.270 Shelby +RR 47159 2002 0.000 Smith +RR 47161 2002 0.000 Stewart +RR 47163 2002 353.490 Sullivan +RR 47165 2002 207.980 Sumner +RR 47167 2002 822.100 Tipton +RR 47169 2002 0.000 Trousdale +RR 47171 2002 197.640 Unicoi +RR 47173 2002 27.630 Union +RR 47175 2002 0.000 Van Buren +RR 47177 2002 0.000 Warren +RR 47179 2002 535.050 Washington +RR 47181 2002 0.000 Wayne +RR 47183 2002 98.450 Weakley +RR 47185 2002 0.000 White +RR 47187 2002 484.140 Williamson +RR 47189 2002 0.000 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_RVPRK.ALO new file mode 100644 index 0000000..b521291 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_RVPRK.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 47000 2002 109 TN +RVP 47001 2002 3 Anderson +RVP 47003 2002 0 Bedford +RVP 47005 2002 1 Benton +RVP 47007 2002 0 Bledsoe +RVP 47009 2002 4 Blount +RVP 47011 2002 0 Bradley +RVP 47013 2002 0 Campbell +RVP 47015 2002 0 Cannon +RVP 47017 2002 0 Carroll +RVP 47019 2002 1 Carter +RVP 47021 2002 1 Cheatham +RVP 47023 2002 0 Chester +RVP 47025 2002 1 Claiborne +RVP 47027 2002 0 Clay +RVP 47029 2002 5 Cocke +RVP 47031 2002 1 Coffee +RVP 47033 2002 0 Crockett +RVP 47035 2002 6 Cumberland +RVP 47037 2002 7 Davidson +RVP 47039 2002 0 Decatur +RVP 47041 2002 1 DeKalb +RVP 47043 2002 1 Dickson +RVP 47045 2002 0 Dyer +RVP 47047 2002 1 Fayette +RVP 47049 2002 0 Fentress +RVP 47051 2002 0 Franklin +RVP 47053 2002 1 Gibson +RVP 47055 2002 0 Giles +RVP 47057 2002 1 Grainger +RVP 47059 2002 1 Greene +RVP 47061 2002 0 Grundy +RVP 47063 2002 1 Hamblen +RVP 47065 2002 4 Hamilton +RVP 47067 2002 0 Hancock +RVP 47069 2002 2 Hardeman +RVP 47071 2002 0 Hardin +RVP 47073 2002 0 Hawkins +RVP 47075 2002 0 Haywood +RVP 47077 2002 0 Henderson +RVP 47079 2002 3 Henry +RVP 47081 2002 0 Hickman +RVP 47083 2002 0 Houston +RVP 47085 2002 0 Humphreys +RVP 47087 2002 1 Jackson +RVP 47089 2002 2 Jefferson +RVP 47091 2002 0 Johnson +RVP 47093 2002 2 Knox +RVP 47095 2002 1 Lake +RVP 47097 2002 0 Lauderdale +RVP 47099 2002 0 Lawrence +RVP 47101 2002 1 Lewis +RVP 47103 2002 2 Lincoln +RVP 47105 2002 2 Loudon +RVP 47107 2002 1 McMinn +RVP 47109 2002 0 McNairy +RVP 47111 2002 0 Macon +RVP 47113 2002 0 Madison +RVP 47115 2002 0 Marion +RVP 47117 2002 1 Marshall +RVP 47119 2002 1 Maury +RVP 47121 2002 0 Meigs +RVP 47123 2002 2 Monroe +RVP 47125 2002 2 Montgomery +RVP 47127 2002 0 Moore +RVP 47129 2002 0 Morgan +RVP 47131 2002 1 Obion +RVP 47133 2002 1 Overton +RVP 47135 2002 0 Perry +RVP 47137 2002 0 Pickett +RVP 47139 2002 0 Polk +RVP 47141 2002 3 Putnam +RVP 47143 2002 1 Rhea +RVP 47145 2002 1 Roane +RVP 47147 2002 1 Robertson +RVP 47149 2002 3 Rutherford +RVP 47151 2002 0 Scott +RVP 47153 2002 0 Sequatchie +RVP 47155 2002 16 Sevier +RVP 47157 2002 5 Shelby +RVP 47159 2002 0 Smith +RVP 47161 2002 0 Stewart +RVP 47163 2002 2 Sullivan +RVP 47165 2002 0 Sumner +RVP 47167 2002 1 Tipton +RVP 47169 2002 0 Trousdale +RVP 47171 2002 2 Unicoi +RVP 47173 2002 0 Union +RVP 47175 2002 2 Van Buren +RVP 47177 2002 0 Warren +RVP 47179 2002 0 Washington +RVP 47181 2002 0 Wayne +RVP 47183 2002 0 Weakley +RVP 47185 2002 0 White +RVP 47187 2002 1 Williamson +RVP 47189 2002 5 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_SBC.ALO new file mode 100644 index 0000000..918d824 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_SBC.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 47000 2002 804 TN +SBC 47001 2002 0 Anderson +SBC 47003 2002 0 Bedford +SBC 47005 2002 0 Benton +SBC 47007 2002 0 Bledsoe +SBC 47009 2002 178 Blount +SBC 47011 2002 0 Bradley +SBC 47013 2002 0 Campbell +SBC 47015 2002 9 Cannon +SBC 47017 2002 0 Carroll +SBC 47019 2002 30 Carter +SBC 47021 2002 0 Cheatham +SBC 47023 2002 0 Chester +SBC 47025 2002 0 Claiborne +SBC 47027 2002 0 Clay +SBC 47029 2002 24 Cocke +SBC 47031 2002 0 Coffee +SBC 47033 2002 0 Crockett +SBC 47035 2002 0 Cumberland +SBC 47037 2002 0 Davidson +SBC 47039 2002 0 Decatur +SBC 47041 2002 13 DeKalb +SBC 47043 2002 0 Dickson +SBC 47045 2002 0 Dyer +SBC 47047 2002 0 Fayette +SBC 47049 2002 12 Fentress +SBC 47051 2002 0 Franklin +SBC 47053 2002 0 Gibson +SBC 47055 2002 0 Giles +SBC 47057 2002 0 Grainger +SBC 47059 2002 2 Greene +SBC 47061 2002 0 Grundy +SBC 47063 2002 65 Hamblen +SBC 47065 2002 0 Hamilton +SBC 47067 2002 0 Hancock +SBC 47069 2002 0 Hardeman +SBC 47071 2002 0 Hardin +SBC 47073 2002 8 Hawkins +SBC 47075 2002 0 Haywood +SBC 47077 2002 0 Henderson +SBC 47079 2002 0 Henry +SBC 47081 2002 0 Hickman +SBC 47083 2002 0 Houston +SBC 47085 2002 0 Humphreys +SBC 47087 2002 0 Jackson +SBC 47089 2002 5 Jefferson +SBC 47091 2002 0 Johnson +SBC 47093 2002 0 Knox +SBC 47095 2002 0 Lake +SBC 47097 2002 0 Lauderdale +SBC 47099 2002 0 Lawrence +SBC 47101 2002 0 Lewis +SBC 47103 2002 0 Lincoln +SBC 47105 2002 29 Loudon +SBC 47107 2002 0 McMinn +SBC 47109 2002 0 McNairy +SBC 47111 2002 0 Macon +SBC 47113 2002 0 Madison +SBC 47115 2002 0 Marion +SBC 47117 2002 0 Marshall +SBC 47119 2002 0 Maury +SBC 47121 2002 0 Meigs +SBC 47123 2002 28 Monroe +SBC 47125 2002 0 Montgomery +SBC 47127 2002 0 Moore +SBC 47129 2002 0 Morgan +SBC 47131 2002 0 Obion +SBC 47133 2002 0 Overton +SBC 47135 2002 0 Perry +SBC 47137 2002 4 Pickett +SBC 47139 2002 0 Polk +SBC 47141 2002 34 Putnam +SBC 47143 2002 0 Rhea +SBC 47145 2002 0 Roane +SBC 47147 2002 0 Robertson +SBC 47149 2002 0 Rutherford +SBC 47151 2002 0 Scott +SBC 47153 2002 0 Sequatchie +SBC 47155 2002 76 Sevier +SBC 47157 2002 0 Shelby +SBC 47159 2002 0 Smith +SBC 47161 2002 0 Stewart +SBC 47163 2002 152 Sullivan +SBC 47165 2002 0 Sumner +SBC 47167 2002 0 Tipton +SBC 47169 2002 0 Trousdale +SBC 47171 2002 12 Unicoi +SBC 47173 2002 0 Union +SBC 47175 2002 0 Van Buren +SBC 47177 2002 51 Warren +SBC 47179 2002 55 Washington +SBC 47181 2002 0 Wayne +SBC 47183 2002 0 Weakley +SBC 47185 2002 17 White +SBC 47187 2002 0 Williamson +SBC 47189 2002 0 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_SBR.ALO new file mode 100644 index 0000000..3bf157a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_SBR.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 47000 2002 492650 TN +SBR 47001 2002 0 Anderson +SBR 47003 2002 0 Bedford +SBR 47005 2002 0 Benton +SBR 47007 2002 0 Bledsoe +SBR 47009 2002 48074 Blount +SBR 47011 2002 0 Bradley +SBR 47013 2002 0 Campbell +SBR 47015 2002 5532 Cannon +SBR 47017 2002 0 Carroll +SBR 47019 2002 26392 Carter +SBR 47021 2002 0 Cheatham +SBR 47023 2002 0 Chester +SBR 47025 2002 0 Claiborne +SBR 47027 2002 0 Clay +SBR 47029 2002 16192 Cocke +SBR 47031 2002 0 Coffee +SBR 47033 2002 0 Crockett +SBR 47035 2002 0 Cumberland +SBR 47037 2002 0 Davidson +SBR 47039 2002 0 Decatur +SBR 47041 2002 8531 DeKalb +SBR 47043 2002 0 Dickson +SBR 47045 2002 0 Dyer +SBR 47047 2002 0 Fayette +SBR 47049 2002 7765 Fentress +SBR 47051 2002 0 Franklin +SBR 47053 2002 0 Gibson +SBR 47055 2002 0 Giles +SBR 47057 2002 0 Grainger +SBR 47059 2002 28925 Greene +SBR 47061 2002 0 Grundy +SBR 47063 2002 25435 Hamblen +SBR 47065 2002 0 Hamilton +SBR 47067 2002 3322 Hancock +SBR 47069 2002 0 Hardeman +SBR 47071 2002 0 Hardin +SBR 47073 2002 25078 Hawkins +SBR 47075 2002 0 Haywood +SBR 47077 2002 0 Henderson +SBR 47079 2002 0 Henry +SBR 47081 2002 0 Hickman +SBR 47083 2002 0 Houston +SBR 47085 2002 0 Humphreys +SBR 47087 2002 0 Jackson +SBR 47089 2002 20187 Jefferson +SBR 47091 2002 8132 Johnson +SBR 47093 2002 0 Knox +SBR 47095 2002 0 Lake +SBR 47097 2002 0 Lauderdale +SBR 47099 2002 0 Lawrence +SBR 47101 2002 0 Lewis +SBR 47103 2002 0 Lincoln +SBR 47105 2002 17788 Loudon +SBR 47107 2002 0 McMinn +SBR 47109 2002 0 McNairy +SBR 47111 2002 0 Macon +SBR 47113 2002 0 Madison +SBR 47115 2002 0 Marion +SBR 47117 2002 0 Marshall +SBR 47119 2002 0 Maury +SBR 47121 2002 0 Meigs +SBR 47123 2002 17757 Monroe +SBR 47125 2002 0 Montgomery +SBR 47127 2002 0 Moore +SBR 47129 2002 0 Morgan +SBR 47131 2002 0 Obion +SBR 47133 2002 9368 Overton +SBR 47135 2002 0 Perry +SBR 47137 2002 3011 Pickett +SBR 47139 2002 0 Polk +SBR 47141 2002 27556 Putnam +SBR 47143 2002 0 Rhea +SBR 47145 2002 0 Roane +SBR 47147 2002 0 Robertson +SBR 47149 2002 0 Rutherford +SBR 47151 2002 0 Scott +SBR 47153 2002 0 Sequatchie +SBR 47155 2002 38706 Sevier +SBR 47157 2002 0 Shelby +SBR 47159 2002 0 Smith +SBR 47161 2002 0 Stewart +SBR 47163 2002 70405 Sullivan +SBR 47165 2002 0 Sumner +SBR 47167 2002 0 Tipton +SBR 47169 2002 0 Trousdale +SBR 47171 2002 8334 Unicoi +SBR 47173 2002 0 Union +SBR 47175 2002 0 Van Buren +SBR 47177 2002 17004 Warren +SBR 47179 2002 48727 Washington +SBR 47181 2002 0 Wayne +SBR 47183 2002 0 Weakley +SBR 47185 2002 10429 White +SBR 47187 2002 0 Williamson +SBR 47189 2002 0 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_SNOWM.ALO new file mode 100644 index 0000000..8eb933d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_SNOWM.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 47000 2002 0 TN +SNM 47001 2002 0 Anderson +SNM 47003 2002 0 Bedford +SNM 47005 2002 0 Benton +SNM 47007 2002 0 Bledsoe +SNM 47009 2002 0 Blount +SNM 47011 2002 0 Bradley +SNM 47013 2002 0 Campbell +SNM 47015 2002 0 Cannon +SNM 47017 2002 0 Carroll +SNM 47019 2002 0 Carter +SNM 47021 2002 0 Cheatham +SNM 47023 2002 0 Chester +SNM 47025 2002 0 Claiborne +SNM 47027 2002 0 Clay +SNM 47029 2002 0 Cocke +SNM 47031 2002 0 Coffee +SNM 47033 2002 0 Crockett +SNM 47035 2002 0 Cumberland +SNM 47037 2002 0 Davidson +SNM 47039 2002 0 Decatur +SNM 47041 2002 0 DeKalb +SNM 47043 2002 0 Dickson +SNM 47045 2002 0 Dyer +SNM 47047 2002 0 Fayette +SNM 47049 2002 0 Fentress +SNM 47051 2002 0 Franklin +SNM 47053 2002 0 Gibson +SNM 47055 2002 0 Giles +SNM 47057 2002 0 Grainger +SNM 47059 2002 0 Greene +SNM 47061 2002 0 Grundy +SNM 47063 2002 0 Hamblen +SNM 47065 2002 0 Hamilton +SNM 47067 2002 0 Hancock +SNM 47069 2002 0 Hardeman +SNM 47071 2002 0 Hardin +SNM 47073 2002 0 Hawkins +SNM 47075 2002 0 Haywood +SNM 47077 2002 0 Henderson +SNM 47079 2002 0 Henry +SNM 47081 2002 0 Hickman +SNM 47083 2002 0 Houston +SNM 47085 2002 0 Humphreys +SNM 47087 2002 0 Jackson +SNM 47089 2002 0 Jefferson +SNM 47091 2002 0 Johnson +SNM 47093 2002 0 Knox +SNM 47095 2002 0 Lake +SNM 47097 2002 0 Lauderdale +SNM 47099 2002 0 Lawrence +SNM 47101 2002 0 Lewis +SNM 47103 2002 0 Lincoln +SNM 47105 2002 0 Loudon +SNM 47107 2002 0 McMinn +SNM 47109 2002 0 McNairy +SNM 47111 2002 0 Macon +SNM 47113 2002 0 Madison +SNM 47115 2002 0 Marion +SNM 47117 2002 0 Marshall +SNM 47119 2002 0 Maury +SNM 47121 2002 0 Meigs +SNM 47123 2002 0 Monroe +SNM 47125 2002 0 Montgomery +SNM 47127 2002 0 Moore +SNM 47129 2002 0 Morgan +SNM 47131 2002 0 Obion +SNM 47133 2002 0 Overton +SNM 47135 2002 0 Perry +SNM 47137 2002 0 Pickett +SNM 47139 2002 0 Polk +SNM 47141 2002 0 Putnam +SNM 47143 2002 0 Rhea +SNM 47145 2002 0 Roane +SNM 47147 2002 0 Robertson +SNM 47149 2002 0 Rutherford +SNM 47151 2002 0 Scott +SNM 47153 2002 0 Sequatchie +SNM 47155 2002 0 Sevier +SNM 47157 2002 0 Shelby +SNM 47159 2002 0 Smith +SNM 47161 2002 0 Stewart +SNM 47163 2002 0 Sullivan +SNM 47165 2002 0 Sumner +SNM 47167 2002 0 Tipton +SNM 47169 2002 0 Trousdale +SNM 47171 2002 0 Unicoi +SNM 47173 2002 0 Union +SNM 47175 2002 0 Van Buren +SNM 47177 2002 0 Warren +SNM 47179 2002 0 Washington +SNM 47181 2002 0 Wayne +SNM 47183 2002 0 Weakley +SNM 47185 2002 0 White +SNM 47187 2002 0 Williamson +SNM 47189 2002 0 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_WIB.ALO new file mode 100644 index 0000000..ec1d92d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_WIB.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 47000 1990 2399 TN +WIB 47001 1990 19 Anderson +WIB 47003 1990 3 Bedford +WIB 47005 1990 107 Benton +WIB 47007 1990 1 Bledsoe +WIB 47009 1990 21 Blount +WIB 47011 1990 7 Bradley +WIB 47013 1990 47 Campbell +WIB 47015 1990 0 Cannon +WIB 47017 1990 2 Carroll +WIB 47019 1990 17 Carter +WIB 47021 1990 12 Cheatham +WIB 47023 1990 1 Chester +WIB 47025 1990 19 Claiborne +WIB 47027 1990 60 Clay +WIB 47029 1990 23 Cocke +WIB 47031 1990 14 Coffee +WIB 47033 1990 1 Crockett +WIB 47035 1990 9 Cumberland +WIB 47037 1990 62 Davidson +WIB 47039 1990 29 Decatur +WIB 47041 1990 63 DeKalb +WIB 47043 1990 4 Dickson +WIB 47045 1990 41 Dyer +WIB 47047 1990 4 Fayette +WIB 47049 1990 1 Fentress +WIB 47051 1990 55 Franklin +WIB 47053 1990 2 Gibson +WIB 47055 1990 1 Giles +WIB 47057 1990 57 Grainger +WIB 47059 1990 6 Greene +WIB 47061 1990 1 Grundy +WIB 47063 1990 38 Hamblen +WIB 47065 1990 86 Hamilton +WIB 47067 1990 3 Hancock +WIB 47069 1990 7 Hardeman +WIB 47071 1990 48 Hardin +WIB 47073 1990 34 Hawkins +WIB 47075 1990 2 Haywood +WIB 47077 1990 15 Henderson +WIB 47079 1990 82 Henry +WIB 47081 1990 0 Hickman +WIB 47083 1990 17 Houston +WIB 47085 1990 63 Humphreys +WIB 47087 1990 28 Jackson +WIB 47089 1990 105 Jefferson +WIB 47091 1990 11 Johnson +WIB 47093 1990 45 Knox +WIB 47095 1990 79 Lake +WIB 47097 1990 95 Lauderdale +WIB 47099 1990 2 Lawrence +WIB 47101 1990 1 Lewis +WIB 47103 1990 1 Lincoln +WIB 47105 1990 48 Loudon +WIB 47107 1990 5 McMinn +WIB 47109 1990 2 McNairy +WIB 47111 1990 0 Macon +WIB 47113 1990 4 Madison +WIB 47115 1990 36 Marion +WIB 47117 1990 2 Marshall +WIB 47119 1990 7 Maury +WIB 47121 1990 57 Meigs +WIB 47123 1990 46 Monroe +WIB 47125 1990 12 Montgomery +WIB 47127 1990 3 Moore +WIB 47129 1990 1 Morgan +WIB 47131 1990 27 Obion +WIB 47133 1990 4 Overton +WIB 47135 1990 21 Perry +WIB 47137 1990 30 Pickett +WIB 47139 1990 19 Polk +WIB 47141 1990 4 Putnam +WIB 47143 1990 53 Rhea +WIB 47145 1990 88 Roane +WIB 47147 1990 1 Robertson +WIB 47149 1990 13 Rutherford +WIB 47151 1990 3 Scott +WIB 47153 1990 0 Sequatchie +WIB 47155 1990 14 Sevier +WIB 47157 1990 75 Shelby +WIB 47159 1990 28 Smith +WIB 47161 1990 92 Stewart +WIB 47163 1990 43 Sullivan +WIB 47165 1990 36 Sumner +WIB 47167 1990 40 Tipton +WIB 47169 1990 6 Trousdale +WIB 47171 1990 1 Unicoi +WIB 47173 1990 61 Union +WIB 47175 1990 3 Van Buren +WIB 47177 1990 4 Warren +WIB 47179 1990 9 Washington +WIB 47181 1990 4 Wayne +WIB 47183 1990 4 Weakley +WIB 47185 1990 7 White +WIB 47187 1990 2 Williamson +WIB 47189 1990 33 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TN_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TN_WOB.ALO new file mode 100644 index 0000000..2d42cbb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TN_WOB.ALO @@ -0,0 +1,120 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 47000 1990 2399 TN +WOB 47001 1990 19 Anderson +WOB 47003 1990 3 Bedford +WOB 47005 1990 107 Benton +WOB 47007 1990 1 Bledsoe +WOB 47009 1990 21 Blount +WOB 47011 1990 7 Bradley +WOB 47013 1990 47 Campbell +WOB 47015 1990 0 Cannon +WOB 47017 1990 2 Carroll +WOB 47019 1990 17 Carter +WOB 47021 1990 12 Cheatham +WOB 47023 1990 1 Chester +WOB 47025 1990 19 Claiborne +WOB 47027 1990 60 Clay +WOB 47029 1990 23 Cocke +WOB 47031 1990 14 Coffee +WOB 47033 1990 1 Crockett +WOB 47035 1990 9 Cumberland +WOB 47037 1990 62 Davidson +WOB 47039 1990 29 Decatur +WOB 47041 1990 63 DeKalb +WOB 47043 1990 4 Dickson +WOB 47045 1990 41 Dyer +WOB 47047 1990 4 Fayette +WOB 47049 1990 1 Fentress +WOB 47051 1990 55 Franklin +WOB 47053 1990 2 Gibson +WOB 47055 1990 1 Giles +WOB 47057 1990 57 Grainger +WOB 47059 1990 6 Greene +WOB 47061 1990 1 Grundy +WOB 47063 1990 38 Hamblen +WOB 47065 1990 86 Hamilton +WOB 47067 1990 3 Hancock +WOB 47069 1990 7 Hardeman +WOB 47071 1990 48 Hardin +WOB 47073 1990 34 Hawkins +WOB 47075 1990 2 Haywood +WOB 47077 1990 15 Henderson +WOB 47079 1990 82 Henry +WOB 47081 1990 0 Hickman +WOB 47083 1990 17 Houston +WOB 47085 1990 63 Humphreys +WOB 47087 1990 28 Jackson +WOB 47089 1990 105 Jefferson +WOB 47091 1990 11 Johnson +WOB 47093 1990 45 Knox +WOB 47095 1990 79 Lake +WOB 47097 1990 95 Lauderdale +WOB 47099 1990 2 Lawrence +WOB 47101 1990 1 Lewis +WOB 47103 1990 1 Lincoln +WOB 47105 1990 48 Loudon +WOB 47107 1990 5 McMinn +WOB 47109 1990 2 McNairy +WOB 47111 1990 0 Macon +WOB 47113 1990 4 Madison +WOB 47115 1990 36 Marion +WOB 47117 1990 2 Marshall +WOB 47119 1990 7 Maury +WOB 47121 1990 57 Meigs +WOB 47123 1990 46 Monroe +WOB 47125 1990 12 Montgomery +WOB 47127 1990 3 Moore +WOB 47129 1990 1 Morgan +WOB 47131 1990 27 Obion +WOB 47133 1990 4 Overton +WOB 47135 1990 21 Perry +WOB 47137 1990 30 Pickett +WOB 47139 1990 19 Polk +WOB 47141 1990 4 Putnam +WOB 47143 1990 53 Rhea +WOB 47145 1990 88 Roane +WOB 47147 1990 1 Robertson +WOB 47149 1990 13 Rutherford +WOB 47151 1990 3 Scott +WOB 47153 1990 0 Sequatchie +WOB 47155 1990 14 Sevier +WOB 47157 1990 75 Shelby +WOB 47159 1990 28 Smith +WOB 47161 1990 92 Stewart +WOB 47163 1990 43 Sullivan +WOB 47165 1990 36 Sumner +WOB 47167 1990 40 Tipton +WOB 47169 1990 6 Trousdale +WOB 47171 1990 1 Unicoi +WOB 47173 1990 61 Union +WOB 47175 1990 3 Van Buren +WOB 47177 1990 4 Warren +WOB 47179 1990 9 Washington +WOB 47181 1990 4 Wayne +WOB 47183 1990 4 Weakley +WOB 47185 1990 7 White +WOB 47187 1990 2 Williamson +WOB 47189 1990 33 Wilson +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_AIRTR.ALO new file mode 100644 index 0000000..2de4760 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_AIRTR.ALO @@ -0,0 +1,281 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 48000 2002 7646.956 TX +AIR 48001 2002 0.026 Anderson +AIR 48003 2002 0.010 Andrews +AIR 48005 2002 0.120 Angelina +AIR 48007 2002 1.698 Aransas +AIR 48009 2002 0.000 Archer +AIR 48011 2002 0.000 Armstrong +AIR 48013 2002 0.057 Atascosa +AIR 48015 2002 0.000 Austin +AIR 48017 2002 0.000 Bailey +AIR 48019 2002 0.000 Bandera +AIR 48021 2002 0.000 Bastrop +AIR 48023 2002 0.000 Baylor +AIR 48025 2002 0.010 Bee +AIR 48027 2002 1.220 Bell +AIR 48029 2002 419.050 Bexar +AIR 48031 2002 0.000 Blanco +AIR 48033 2002 0.000 Borden +AIR 48035 2002 0.000 Bosque +AIR 48037 2002 0.000 Bowie +AIR 48039 2002 0.190 Brazoria +AIR 48041 2002 2.060 Brazos +AIR 48043 2002 0.032 Brewster +AIR 48045 2002 0.000 Briscoe +AIR 48047 2002 0.030 Brooks +AIR 48049 2002 5.870 Brown +AIR 48051 2002 0.000 Burleson +AIR 48053 2002 0.000 Burnet +AIR 48055 2002 0.039 Caldwell +AIR 48057 2002 0.070 Calhoun +AIR 48059 2002 0.000 Callahan +AIR 48061 2002 69.050 Cameron +AIR 48063 2002 0.000 Camp +AIR 48065 2002 0.000 Carson +AIR 48067 2002 0.024 Cass +AIR 48069 2002 0.000 Castro +AIR 48071 2002 0.010 Chambers +AIR 48073 2002 0.032 Cherokee +AIR 48075 2002 0.000 Childress +AIR 48077 2002 0.000 Clay +AIR 48079 2002 0.000 Cochran +AIR 48081 2002 0.000 Coke +AIR 48083 2002 0.020 Coleman +AIR 48085 2002 0.321 Collin +AIR 48087 2002 0.000 Collingsworth +AIR 48089 2002 0.010 Colorado +AIR 48091 2002 0.000 Comal +AIR 48093 2002 0.000 Comanche +AIR 48095 2002 0.000 Concho +AIR 48097 2002 0.044 Cooke +AIR 48099 2002 0.000 Coryell +AIR 48101 2002 0.000 Cottle +AIR 48103 2002 0.000 Crane +AIR 48105 2002 0.000 Crockett +AIR 48107 2002 0.000 Crosby +AIR 48109 2002 0.022 Culberson +AIR 48111 2002 0.000 Dallam +AIR 48113 2002 498.110 Dallas +AIR 48115 2002 0.040 Dawson +AIR 48117 2002 0.021 Deaf Smith +AIR 48119 2002 0.000 Delta +AIR 48121 2002 0.544 Denton +AIR 48123 2002 0.000 DeWitt +AIR 48125 2002 0.000 Dickens +AIR 48127 2002 0.020 Dimmit +AIR 48129 2002 0.007 Donley +AIR 48131 2002 0.000 Duval +AIR 48133 2002 0.020 Eastland +AIR 48135 2002 0.000 Ector +AIR 48137 2002 0.000 Edwards +AIR 48139 2002 0.036 Ellis +AIR 48141 2002 273.540 El Paso +AIR 48143 2002 0.020 Erath +AIR 48145 2002 0.000 Falls +AIR 48147 2002 0.010 Fannin +AIR 48149 2002 0.010 Fayette +AIR 48151 2002 0.000 Fisher +AIR 48153 2002 0.000 Floyd +AIR 48155 2002 0.000 Foard +AIR 48157 2002 0.660 Fort Bend +AIR 48159 2002 0.000 Franklin +AIR 48161 2002 0.000 Freestone +AIR 48163 2002 0.000 Frio +AIR 48165 2002 0.045 Gaines +AIR 48167 2002 1.580 Galveston +AIR 48169 2002 0.000 Garza +AIR 48171 2002 0.035 Gillespie +AIR 48173 2002 0.000 Glasscock +AIR 48175 2002 0.000 Goliad +AIR 48177 2002 0.000 Gonzales +AIR 48179 2002 0.030 Gray +AIR 48181 2002 0.130 Grayson +AIR 48183 2002 0.780 Gregg +AIR 48185 2002 0.000 Grimes +AIR 48187 2002 0.000 Guadalupe +AIR 48189 2002 0.192 Hale +AIR 48191 2002 0.000 Hall +AIR 48193 2002 0.012 Hamilton +AIR 48195 2002 0.020 Hansford +AIR 48197 2002 0.000 Hardeman +AIR 48199 2002 0.010 Hardin +AIR 48201 2002 2285.180 Harris +AIR 48203 2002 0.030 Harrison +AIR 48205 2002 0.062 Hartley +AIR 48207 2002 0.020 Haskell +AIR 48209 2002 0.000 Hays +AIR 48211 2002 0.014 Hemphill +AIR 48213 2002 0.010 Henderson +AIR 48215 2002 34.610 Hidalgo +AIR 48217 2002 0.000 Hill +AIR 48219 2002 0.051 Hockley +AIR 48221 2002 0.030 Hood +AIR 48223 2002 0.031 Hopkins +AIR 48225 2002 0.000 Houston +AIR 48227 2002 0.000 Howard +AIR 48229 2002 0.000 Hudspeth +AIR 48231 2002 0.190 Hunt +AIR 48233 2002 0.026 Hutchinson +AIR 48235 2002 0.000 Irion +AIR 48237 2002 0.000 Jack +AIR 48239 2002 0.035 Jackson +AIR 48241 2002 0.020 Jasper +AIR 48243 2002 0.000 Jeff Davis +AIR 48245 2002 1.050 Jefferson +AIR 48247 2002 0.000 Jim Hogg +AIR 48249 2002 0.170 Jim Wells +AIR 48251 2002 0.085 Johnson +AIR 48253 2002 0.040 Jones +AIR 48255 2002 0.050 Karnes +AIR 48257 2002 0.072 Kaufman +AIR 48259 2002 0.000 Kendall +AIR 48261 2002 0.000 Kenedy +AIR 48263 2002 0.000 Kent +AIR 48265 2002 0.168 Kerr +AIR 48267 2002 0.024 Kimble +AIR 48269 2002 0.000 King +AIR 48271 2002 0.000 Kinney +AIR 48273 2002 0.040 Kleberg +AIR 48275 2002 0.000 Knox +AIR 48277 2002 0.079 Lamar +AIR 48279 2002 0.014 Lamb +AIR 48281 2002 0.012 Lampasas +AIR 48283 2002 0.110 La Salle +AIR 48285 2002 0.000 Lavaca +AIR 48287 2002 0.000 Lee +AIR 48289 2002 0.000 Leon +AIR 48291 2002 0.050 Liberty +AIR 48293 2002 0.000 Limestone +AIR 48295 2002 0.000 Lipscomb +AIR 48297 2002 0.000 Live Oak +AIR 48299 2002 0.020 Llano +AIR 48301 2002 0.000 Loving +AIR 48303 2002 78.760 Lubbock +AIR 48305 2002 0.000 Lynn +AIR 48307 2002 0.060 McCulloch +AIR 48309 2002 2.620 McLennan +AIR 48311 2002 0.000 McMullen +AIR 48313 2002 0.000 Madison +AIR 48315 2002 0.000 Marion +AIR 48317 2002 0.000 Martin +AIR 48319 2002 0.000 Mason +AIR 48321 2002 0.110 Matagorda +AIR 48323 2002 0.000 Maverick +AIR 48325 2002 6.400 Medina +AIR 48327 2002 0.000 Menard +AIR 48329 2002 55.320 Midland +AIR 48331 2002 0.000 Milam +AIR 48333 2002 0.000 Mills +AIR 48335 2002 0.000 Mitchell +AIR 48337 2002 0.013 Montague +AIR 48339 2002 0.270 Montgomery +AIR 48341 2002 0.015 Moore +AIR 48343 2002 0.000 Morris +AIR 48345 2002 0.000 Motley +AIR 48347 2002 0.070 Nacogdoches +AIR 48349 2002 0.020 Navarro +AIR 48351 2002 0.000 Newton +AIR 48353 2002 0.030 Nolan +AIR 48355 2002 59.450 Nueces +AIR 48357 2002 0.040 Ochiltree +AIR 48359 2002 0.000 Oldham +AIR 48361 2002 0.040 Orange +AIR 48363 2002 0.070 Palo Pinto +AIR 48365 2002 0.159 Panola +AIR 48367 2002 0.000 Parker +AIR 48369 2002 0.000 Parmer +AIR 48371 2002 0.030 Pecos +AIR 48373 2002 0.000 Polk +AIR 48375 2002 53.570 Potter +AIR 48377 2002 0.010 Presidio +AIR 48379 2002 0.000 Rains +AIR 48381 2002 0.000 Randall +AIR 48383 2002 0.000 Reagan +AIR 48385 2002 0.000 Real +AIR 48387 2002 0.000 Red River +AIR 48389 2002 0.030 Reeves +AIR 48391 2002 0.000 Refugio +AIR 48393 2002 0.000 Roberts +AIR 48395 2002 0.000 Robertson +AIR 48397 2002 0.061 Rockwall +AIR 48399 2002 0.000 Runnels +AIR 48401 2002 0.030 Rusk +AIR 48403 2002 0.000 Sabine +AIR 48405 2002 0.000 San Augustine +AIR 48407 2002 0.000 San Jacinto +AIR 48409 2002 0.050 San Patricio +AIR 48411 2002 0.000 San Saba +AIR 48413 2002 0.000 Schleicher +AIR 48415 2002 0.020 Scurry +AIR 48417 2002 0.000 Shackelford +AIR 48419 2002 0.021 Shelby +AIR 48421 2002 0.000 Sherman +AIR 48423 2002 0.868 Smith +AIR 48425 2002 0.000 Somervell +AIR 48427 2002 0.000 Starr +AIR 48429 2002 0.050 Stephens +AIR 48431 2002 0.000 Sterling +AIR 48433 2002 0.000 Stonewall +AIR 48435 2002 0.000 Sutton +AIR 48437 2002 0.000 Swisher +AIR 48439 2002 3035.020 Tarrant +AIR 48441 2002 2.370 Taylor +AIR 48443 2002 0.000 Terrell +AIR 48445 2002 0.030 Terry +AIR 48447 2002 0.000 Throckmorton +AIR 48449 2002 0.022 Titus +AIR 48451 2002 0.870 Tom Green +AIR 48453 2002 495.040 Travis +AIR 48455 2002 0.000 Trinity +AIR 48457 2002 0.000 Tyler +AIR 48459 2002 0.010 Upshur +AIR 48461 2002 0.000 Upton +AIR 48463 2002 0.090 Uvalde +AIR 48465 2002 13.764 Val Verde +AIR 48467 2002 0.000 Van Zandt +AIR 48469 2002 161.250 Victoria +AIR 48471 2002 0.000 Walker +AIR 48473 2002 0.000 Waller +AIR 48475 2002 0.000 Ward +AIR 48477 2002 0.022 Washington +AIR 48479 2002 28.620 Webb +AIR 48481 2002 0.024 Wharton +AIR 48483 2002 0.000 Wheeler +AIR 48485 2002 53.100 Wichita +AIR 48487 2002 0.034 Wilbarger +AIR 48489 2002 0.000 Willacy +AIR 48491 2002 0.020 Williamson +AIR 48493 2002 0.000 Wilson +AIR 48495 2002 0.150 Winkler +AIR 48497 2002 0.070 Wise +AIR 48499 2002 0.009 Wood +AIR 48501 2002 0.000 Yoakum +AIR 48503 2002 0.070 Young +AIR 48505 2002 0.000 Zapata +AIR 48507 2002 0.000 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_COAL.ALO new file mode 100644 index 0000000..fd250a5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_COAL.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 48000 2002 0 TX +MIN 48001 2002 0 Anderson +MIN 48003 2002 0 Andrews +MIN 48005 2002 0 Angelina +MIN 48007 2002 0 Aransas +MIN 48009 2002 0 Archer +MIN 48011 2002 0 Armstrong +MIN 48013 2002 0 Atascosa +MIN 48015 2002 0 Austin +MIN 48017 2002 0 Bailey +MIN 48019 2002 0 Bandera +MIN 48021 2002 0 Bastrop +MIN 48023 2002 0 Baylor +MIN 48025 2002 0 Bee +MIN 48027 2002 0 Bell +MIN 48029 2002 0 Bexar +MIN 48031 2002 0 Blanco +MIN 48033 2002 0 Borden +MIN 48035 2002 0 Bosque +MIN 48037 2002 0 Bowie +MIN 48039 2002 0 Brazoria +MIN 48041 2002 0 Brazos +MIN 48043 2002 0 Brewster +MIN 48045 2002 0 Briscoe +MIN 48047 2002 0 Brooks +MIN 48049 2002 0 Brown +MIN 48051 2002 0 Burleson +MIN 48053 2002 0 Burnet +MIN 48055 2002 0 Caldwell +MIN 48057 2002 0 Calhoun +MIN 48059 2002 0 Callahan +MIN 48061 2002 0 Cameron +MIN 48063 2002 0 Camp +MIN 48065 2002 0 Carson +MIN 48067 2002 0 Cass +MIN 48069 2002 0 Castro +MIN 48071 2002 0 Chambers +MIN 48073 2002 0 Cherokee +MIN 48075 2002 0 Childress +MIN 48077 2002 0 Clay +MIN 48079 2002 0 Cochran +MIN 48081 2002 0 Coke +MIN 48083 2002 0 Coleman +MIN 48085 2002 0 Collin +MIN 48087 2002 0 Collingsworth +MIN 48089 2002 0 Colorado +MIN 48091 2002 0 Comal +MIN 48093 2002 0 Comanche +MIN 48095 2002 0 Concho +MIN 48097 2002 0 Cooke +MIN 48099 2002 0 Coryell +MIN 48101 2002 0 Cottle +MIN 48103 2002 0 Crane +MIN 48105 2002 0 Crockett +MIN 48107 2002 0 Crosby +MIN 48109 2002 0 Culberson +MIN 48111 2002 0 Dallam +MIN 48113 2002 0 Dallas +MIN 48115 2002 0 Dawson +MIN 48117 2002 0 Deaf Smith +MIN 48119 2002 0 Delta +MIN 48121 2002 0 Denton +MIN 48123 2002 0 DeWitt +MIN 48125 2002 0 Dickens +MIN 48127 2002 0 Dimmit +MIN 48129 2002 0 Donley +MIN 48131 2002 0 Duval +MIN 48133 2002 0 Eastland +MIN 48135 2002 0 Ector +MIN 48137 2002 0 Edwards +MIN 48139 2002 0 Ellis +MIN 48141 2002 0 El Paso +MIN 48143 2002 0 Erath +MIN 48145 2002 0 Falls +MIN 48147 2002 0 Fannin +MIN 48149 2002 0 Fayette +MIN 48151 2002 0 Fisher +MIN 48153 2002 0 Floyd +MIN 48155 2002 0 Foard +MIN 48157 2002 0 Fort Bend +MIN 48159 2002 0 Franklin +MIN 48161 2002 0 Freestone +MIN 48163 2002 0 Frio +MIN 48165 2002 0 Gaines +MIN 48167 2002 0 Galveston +MIN 48169 2002 0 Garza +MIN 48171 2002 0 Gillespie +MIN 48173 2002 0 Glasscock +MIN 48175 2002 0 Goliad +MIN 48177 2002 0 Gonzales +MIN 48179 2002 0 Gray +MIN 48181 2002 0 Grayson +MIN 48183 2002 0 Gregg +MIN 48185 2002 0 Grimes +MIN 48187 2002 0 Guadalupe +MIN 48189 2002 0 Hale +MIN 48191 2002 0 Hall +MIN 48193 2002 0 Hamilton +MIN 48195 2002 0 Hansford +MIN 48197 2002 0 Hardeman +MIN 48199 2002 0 Hardin +MIN 48201 2002 0 Harris +MIN 48203 2002 0 Harrison +MIN 48205 2002 0 Hartley +MIN 48207 2002 0 Haskell +MIN 48209 2002 0 Hays +MIN 48211 2002 0 Hemphill +MIN 48213 2002 0 Henderson +MIN 48215 2002 0 Hidalgo +MIN 48217 2002 0 Hill +MIN 48219 2002 0 Hockley +MIN 48221 2002 0 Hood +MIN 48223 2002 0 Hopkins +MIN 48225 2002 0 Houston +MIN 48227 2002 0 Howard +MIN 48229 2002 0 Hudspeth +MIN 48231 2002 0 Hunt +MIN 48233 2002 0 Hutchinson +MIN 48235 2002 0 Irion +MIN 48237 2002 0 Jack +MIN 48239 2002 0 Jackson +MIN 48241 2002 0 Jasper +MIN 48243 2002 0 Jeff Davis +MIN 48245 2002 0 Jefferson +MIN 48247 2002 0 Jim Hogg +MIN 48249 2002 0 Jim Wells +MIN 48251 2002 0 Johnson +MIN 48253 2002 0 Jones +MIN 48255 2002 0 Karnes +MIN 48257 2002 0 Kaufman +MIN 48259 2002 0 Kendall +MIN 48261 2002 0 Kenedy +MIN 48263 2002 0 Kent +MIN 48265 2002 0 Kerr +MIN 48267 2002 0 Kimble +MIN 48269 2002 0 King +MIN 48271 2002 0 Kinney +MIN 48273 2002 0 Kleberg +MIN 48275 2002 0 Knox +MIN 48277 2002 0 Lamar +MIN 48279 2002 0 Lamb +MIN 48281 2002 0 Lampasas +MIN 48283 2002 0 La Salle +MIN 48285 2002 0 Lavaca +MIN 48287 2002 0 Lee +MIN 48289 2002 0 Leon +MIN 48291 2002 0 Liberty +MIN 48293 2002 0 Limestone +MIN 48295 2002 0 Lipscomb +MIN 48297 2002 0 Live Oak +MIN 48299 2002 0 Llano +MIN 48301 2002 0 Loving +MIN 48303 2002 0 Lubbock +MIN 48305 2002 0 Lynn +MIN 48307 2002 0 McCulloch +MIN 48309 2002 0 McLennan +MIN 48311 2002 0 McMullen +MIN 48313 2002 0 Madison +MIN 48315 2002 0 Marion +MIN 48317 2002 0 Martin +MIN 48319 2002 0 Mason +MIN 48321 2002 0 Matagorda +MIN 48323 2002 0 Maverick +MIN 48325 2002 0 Medina +MIN 48327 2002 0 Menard +MIN 48329 2002 0 Midland +MIN 48331 2002 0 Milam +MIN 48333 2002 0 Mills +MIN 48335 2002 0 Mitchell +MIN 48337 2002 0 Montague +MIN 48339 2002 0 Montgomery +MIN 48341 2002 0 Moore +MIN 48343 2002 0 Morris +MIN 48345 2002 0 Motley +MIN 48347 2002 0 Nacogdoches +MIN 48349 2002 0 Navarro +MIN 48351 2002 0 Newton +MIN 48353 2002 0 Nolan +MIN 48355 2002 0 Nueces +MIN 48357 2002 0 Ochiltree +MIN 48359 2002 0 Oldham +MIN 48361 2002 0 Orange +MIN 48363 2002 0 Palo Pinto +MIN 48365 2002 0 Panola +MIN 48367 2002 0 Parker +MIN 48369 2002 0 Parmer +MIN 48371 2002 0 Pecos +MIN 48373 2002 0 Polk +MIN 48375 2002 0 Potter +MIN 48377 2002 0 Presidio +MIN 48379 2002 0 Rains +MIN 48381 2002 0 Randall +MIN 48383 2002 0 Reagan +MIN 48385 2002 0 Real +MIN 48387 2002 0 Red River +MIN 48389 2002 0 Reeves +MIN 48391 2002 0 Refugio +MIN 48393 2002 0 Roberts +MIN 48395 2002 0 Robertson +MIN 48397 2002 0 Rockwall +MIN 48399 2002 0 Runnels +MIN 48401 2002 0 Rusk +MIN 48403 2002 0 Sabine +MIN 48405 2002 0 San Augustine +MIN 48407 2002 0 San Jacinto +MIN 48409 2002 0 San Patricio +MIN 48411 2002 0 San Saba +MIN 48413 2002 0 Schleicher +MIN 48415 2002 0 Scurry +MIN 48417 2002 0 Shackelford +MIN 48419 2002 0 Shelby +MIN 48421 2002 0 Sherman +MIN 48423 2002 0 Smith +MIN 48425 2002 0 Somervell +MIN 48427 2002 0 Starr +MIN 48429 2002 0 Stephens +MIN 48431 2002 0 Sterling +MIN 48433 2002 0 Stonewall +MIN 48435 2002 0 Sutton +MIN 48437 2002 0 Swisher +MIN 48439 2002 0 Tarrant +MIN 48441 2002 0 Taylor +MIN 48443 2002 0 Terrell +MIN 48445 2002 0 Terry +MIN 48447 2002 0 Throckmorton +MIN 48449 2002 0 Titus +MIN 48451 2002 0 Tom Green +MIN 48453 2002 0 Travis +MIN 48455 2002 0 Trinity +MIN 48457 2002 0 Tyler +MIN 48459 2002 0 Upshur +MIN 48461 2002 0 Upton +MIN 48463 2002 0 Uvalde +MIN 48465 2002 0 Val Verde +MIN 48467 2002 0 Van Zandt +MIN 48469 2002 0 Victoria +MIN 48471 2002 0 Walker +MIN 48473 2002 0 Waller +MIN 48475 2002 0 Ward +MIN 48477 2002 0 Washington +MIN 48479 2002 0 Webb +MIN 48481 2002 0 Wharton +MIN 48483 2002 0 Wheeler +MIN 48485 2002 0 Wichita +MIN 48487 2002 0 Wilbarger +MIN 48489 2002 0 Willacy +MIN 48491 2002 0 Williamson +MIN 48493 2002 0 Wilson +MIN 48495 2002 0 Winkler +MIN 48497 2002 0 Wise +MIN 48499 2002 0 Wood +MIN 48501 2002 0 Yoakum +MIN 48503 2002 0 Young +MIN 48505 2002 0 Zapata +MIN 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_CONST.ALO new file mode 100644 index 0000000..4e50675 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_CONST.ALO @@ -0,0 +1,281 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 48000 2003 45936058 TX +CON 48001 2003 37311 Anderson +CON 48003 2003 16290 Andrews +CON 48005 2003 67219 Angelina +CON 48007 2003 48809 Aransas +CON 48009 2003 7793 Archer +CON 48011 2003 0 Armstrong +CON 48013 2003 28682 Atascosa +CON 48015 2003 43337 Austin +CON 48017 2003 1247 Bailey +CON 48019 2003 31846 Bandera +CON 48021 2003 104419 Bastrop +CON 48023 2003 1203 Baylor +CON 48025 2003 25260 Bee +CON 48027 2003 659995 Bell +CON 48029 2003 2924324 Bexar +CON 48031 2003 6832 Blanco +CON 48033 2003 1561 Borden +CON 48035 2003 4118 Bosque +CON 48037 2003 146221 Bowie +CON 48039 2003 932466 Brazoria +CON 48041 2003 377881 Brazos +CON 48043 2003 31337 Brewster +CON 48045 2003 1246 Briscoe +CON 48047 2003 1273 Brooks +CON 48049 2003 15550 Brown +CON 48051 2003 7453 Burleson +CON 48053 2003 109694 Burnet +CON 48055 2003 27140 Caldwell +CON 48057 2003 35305 Calhoun +CON 48059 2003 6689 Callahan +CON 48061 2003 732335 Cameron +CON 48063 2003 9327 Camp +CON 48065 2003 7462 Carson +CON 48067 2003 12984 Cass +CON 48069 2003 2770 Castro +CON 48071 2003 154362 Chambers +CON 48073 2003 27212 Cherokee +CON 48075 2003 6789 Childress +CON 48077 2003 11871 Clay +CON 48079 2003 433 Cochran +CON 48081 2003 76 Coke +CON 48083 2003 9364 Coleman +CON 48085 2003 3291943 Collin +CON 48087 2003 0 Collingsworth +CON 48089 2003 12610 Colorado +CON 48091 2003 333236 Comal +CON 48093 2003 9875 Comanche +CON 48095 2003 3163 Concho +CON 48097 2003 47214 Cooke +CON 48099 2003 42335 Coryell +CON 48101 2003 0 Cottle +CON 48103 2003 830 Crane +CON 48105 2003 3462 Crockett +CON 48107 2003 4515 Crosby +CON 48109 2003 6390 Culberson +CON 48111 2003 975 Dallam +CON 48113 2003 4308884 Dallas +CON 48115 2003 2916 Dawson +CON 48117 2003 7006 Deaf Smith +CON 48119 2003 2182 Delta +CON 48121 2003 1642447 Denton +CON 48123 2003 15185 DeWitt +CON 48125 2003 6926 Dickens +CON 48127 2003 14414 Dimmit +CON 48129 2003 4556 Donley +CON 48131 2003 9638 Duval +CON 48133 2003 17269 Eastland +CON 48135 2003 118640 Ector +CON 48137 2003 1752 Edwards +CON 48139 2003 345811 Ellis +CON 48141 2003 840480 El Paso +CON 48143 2003 30455 Erath +CON 48145 2003 5360 Falls +CON 48147 2003 14769 Fannin +CON 48149 2003 32068 Fayette +CON 48151 2003 4513 Fisher +CON 48153 2003 2394 Floyd +CON 48155 2003 0 Foard +CON 48157 2003 737345 Fort Bend +CON 48159 2003 24521 Franklin +CON 48161 2003 17863 Freestone +CON 48163 2003 6457 Frio +CON 48165 2003 7937 Gaines +CON 48167 2003 908998 Galveston +CON 48169 2003 6706 Garza +CON 48171 2003 25379 Gillespie +CON 48173 2003 0 Glasscock +CON 48175 2003 4872 Goliad +CON 48177 2003 13487 Gonzales +CON 48179 2003 18830 Gray +CON 48181 2003 132488 Grayson +CON 48183 2003 120892 Gregg +CON 48185 2003 10277 Grimes +CON 48187 2003 306270 Guadalupe +CON 48189 2003 17309 Hale +CON 48191 2003 0 Hall +CON 48193 2003 2996 Hamilton +CON 48195 2003 185 Hansford +CON 48197 2003 5925 Hardeman +CON 48199 2003 60566 Hardin +CON 48201 2003 8554971 Harris +CON 48203 2003 38283 Harrison +CON 48205 2003 3157 Hartley +CON 48207 2003 2189 Haskell +CON 48209 2003 228972 Hays +CON 48211 2003 449 Hemphill +CON 48213 2003 65930 Henderson +CON 48215 2003 985678 Hidalgo +CON 48217 2003 74089 Hill +CON 48219 2003 17176 Hockley +CON 48221 2003 39322 Hood +CON 48223 2003 26685 Hopkins +CON 48225 2003 10402 Houston +CON 48227 2003 5805 Howard +CON 48229 2003 11802 Hudspeth +CON 48231 2003 69870 Hunt +CON 48233 2003 7114 Hutchinson +CON 48235 2003 1150 Irion +CON 48237 2003 11862 Jack +CON 48239 2003 10224 Jackson +CON 48241 2003 45572 Jasper +CON 48243 2003 1730 Jeff Davis +CON 48245 2003 414286 Jefferson +CON 48247 2003 4755 Jim Hogg +CON 48249 2003 31267 Jim Wells +CON 48251 2003 155531 Johnson +CON 48253 2003 6217 Jones +CON 48255 2003 9096 Karnes +CON 48257 2003 215738 Kaufman +CON 48259 2003 117239 Kendall +CON 48261 2003 0 Kenedy +CON 48263 2003 4087 Kent +CON 48265 2003 48913 Kerr +CON 48267 2003 2727 Kimble +CON 48269 2003 0 King +CON 48271 2003 4198 Kinney +CON 48273 2003 51914 Kleberg +CON 48275 2003 3334 Knox +CON 48277 2003 42380 Lamar +CON 48279 2003 4400 Lamb +CON 48281 2003 15178 Lampasas +CON 48283 2003 1625 La Salle +CON 48285 2003 13345 Lavaca +CON 48287 2003 16330 Lee +CON 48289 2003 10554 Leon +CON 48291 2003 52070 Liberty +CON 48293 2003 17224 Limestone +CON 48295 2003 0 Lipscomb +CON 48297 2003 16749 Live Oak +CON 48299 2003 60324 Llano +CON 48301 2003 0 Loving +CON 48303 2003 544129 Lubbock +CON 48305 2003 1787 Lynn +CON 48307 2003 7185 McCulloch +CON 48309 2003 325045 McLennan +CON 48311 2003 287 McMullen +CON 48313 2003 18733 Madison +CON 48315 2003 6780 Marion +CON 48317 2003 4352 Martin +CON 48319 2003 981 Mason +CON 48321 2003 34508 Matagorda +CON 48323 2003 25408 Maverick +CON 48325 2003 17861 Medina +CON 48327 2003 1725 Menard +CON 48329 2003 131490 Midland +CON 48331 2003 31053 Milam +CON 48333 2003 3597 Mills +CON 48335 2003 15347 Mitchell +CON 48337 2003 15697 Montague +CON 48339 2003 1513859 Montgomery +CON 48341 2003 14866 Moore +CON 48343 2003 5227 Morris +CON 48345 2003 0 Motley +CON 48347 2003 68355 Nacogdoches +CON 48349 2003 60159 Navarro +CON 48351 2003 30413 Newton +CON 48353 2003 9234 Nolan +CON 48355 2003 616044 Nueces +CON 48357 2003 2378 Ochiltree +CON 48359 2003 10774 Oldham +CON 48361 2003 201047 Orange +CON 48363 2003 43996 Palo Pinto +CON 48365 2003 13023 Panola +CON 48367 2003 110645 Parker +CON 48369 2003 7039 Parmer +CON 48371 2003 7612 Pecos +CON 48373 2003 99397 Polk +CON 48375 2003 285649 Potter +CON 48377 2003 11215 Presidio +CON 48379 2003 3989 Rains +CON 48381 2003 100681 Randall +CON 48383 2003 3838 Reagan +CON 48385 2003 5164 Real +CON 48387 2003 13886 Red River +CON 48389 2003 14756 Reeves +CON 48391 2003 5765 Refugio +CON 48393 2003 0 Roberts +CON 48395 2003 8970 Robertson +CON 48397 2003 325505 Rockwall +CON 48399 2003 15658 Runnels +CON 48401 2003 20539 Rusk +CON 48403 2003 7040 Sabine +CON 48405 2003 3803 San Augustine +CON 48407 2003 10791 San Jacinto +CON 48409 2003 81345 San Patricio +CON 48411 2003 3341 San Saba +CON 48413 2003 106 Schleicher +CON 48415 2003 16676 Scurry +CON 48417 2003 3595 Shackelford +CON 48419 2003 23115 Shelby +CON 48421 2003 2112 Sherman +CON 48423 2003 277798 Smith +CON 48425 2003 3679 Somervell +CON 48427 2003 60499 Starr +CON 48429 2003 2104 Stephens +CON 48431 2003 3340 Sterling +CON 48433 2003 1892 Stonewall +CON 48435 2003 8213 Sutton +CON 48437 2003 2630 Swisher +CON 48439 2003 3628757 Tarrant +CON 48441 2003 119503 Taylor +CON 48443 2003 0 Terrell +CON 48445 2003 4797 Terry +CON 48447 2003 1296 Throckmorton +CON 48449 2003 50743 Titus +CON 48451 2003 103544 Tom Green +CON 48453 2003 2316618 Travis +CON 48455 2003 17018 Trinity +CON 48457 2003 14799 Tyler +CON 48459 2003 22035 Upshur +CON 48461 2003 5030 Upton +CON 48463 2003 18735 Uvalde +CON 48465 2003 45169 Val Verde +CON 48467 2003 51627 Van Zandt +CON 48469 2003 91683 Victoria +CON 48471 2003 85987 Walker +CON 48473 2003 91818 Waller +CON 48475 2003 11936 Ward +CON 48477 2003 27257 Washington +CON 48479 2003 298435 Webb +CON 48481 2003 42001 Wharton +CON 48483 2003 8304 Wheeler +CON 48485 2003 161306 Wichita +CON 48487 2003 12558 Wilbarger +CON 48489 2003 21756 Willacy +CON 48491 2003 1374627 Williamson +CON 48493 2003 17042 Wilson +CON 48495 2003 0 Winkler +CON 48497 2003 56533 Wise +CON 48499 2003 18318 Wood +CON 48501 2003 15054 Yoakum +CON 48503 2003 14389 Young +CON 48505 2003 16896 Zapata +CON 48507 2003 19846 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_FARMS.ALO new file mode 100644 index 0000000..bc17e94 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_FARMS.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 48000 2002 17750938 TX +FRM 48001 2002 51309 Anderson +FRM 48003 2002 34149 Andrews +FRM 48005 2002 14047 Angelina +FRM 48007 2002 321 Aransas +FRM 48009 2002 43383 Archer +FRM 48011 2002 34149 Armstrong +FRM 48013 2002 55452 Atascosa +FRM 48015 2002 58471 Austin +FRM 48017 2002 131703 Bailey +FRM 48019 2002 7115 Bandera +FRM 48021 2002 44287 Bastrop +FRM 48023 2002 49833 Baylor +FRM 48025 2002 68033 Bee +FRM 48027 2002 144185 Bell +FRM 48029 2002 74204 Bexar +FRM 48031 2002 10143 Blanco +FRM 48033 2002 30895 Borden +FRM 48035 2002 46538 Bosque +FRM 48037 2002 61559 Bowie +FRM 48039 2002 84348 Brazoria +FRM 48041 2002 48579 Brazos +FRM 48043 2002 34149 Brewster +FRM 48045 2002 54199 Briscoe +FRM 48047 2002 6714 Brooks +FRM 48049 2002 45519 Brown +FRM 48051 2002 66466 Burleson +FRM 48053 2002 15133 Burnet +FRM 48055 2002 43961 Caldwell +FRM 48057 2002 48600 Calhoun +FRM 48059 2002 37230 Callahan +FRM 48061 2002 151923 Cameron +FRM 48063 2002 13712 Camp +FRM 48065 2002 105259 Carson +FRM 48067 2002 31877 Cass +FRM 48069 2002 227906 Castro +FRM 48071 2002 34143 Chambers +FRM 48073 2002 52378 Cherokee +FRM 48075 2002 63879 Childress +FRM 48077 2002 55871 Clay +FRM 48079 2002 155239 Cochran +FRM 48081 2002 11784 Coke +FRM 48083 2002 71634 Coleman +FRM 48085 2002 130915 Collin +FRM 48087 2002 89709 Collingsworth +FRM 48089 2002 77404 Colorado +FRM 48091 2002 12495 Comal +FRM 48093 2002 102541 Comanche +FRM 48095 2002 79597 Concho +FRM 48097 2002 101470 Cooke +FRM 48099 2002 68258 Coryell +FRM 48101 2002 34149 Cottle +FRM 48103 2002 34149 Crane +FRM 48105 2002 360 Crockett +FRM 48107 2002 214709 Crosby +FRM 48109 2002 4446 Culberson +FRM 48111 2002 250350 Dallam +FRM 48113 2002 28952 Dallas +FRM 48115 2002 262706 Dawson +FRM 48117 2002 34149 Deaf Smith +FRM 48119 2002 48545 Delta +FRM 48121 2002 92283 Denton +FRM 48123 2002 47628 DeWitt +FRM 48125 2002 46988 Dickens +FRM 48127 2002 4053 Dimmit +FRM 48129 2002 37271 Donley +FRM 48131 2002 31581 Duval +FRM 48133 2002 62926 Eastland +FRM 48135 2002 34149 Ector +FRM 48137 2002 1843 Edwards +FRM 48139 2002 172088 Ellis +FRM 48141 2002 40721 El Paso +FRM 48143 2002 86406 Erath +FRM 48145 2002 134925 Falls +FRM 48147 2002 160625 Fannin +FRM 48149 2002 84210 Fayette +FRM 48151 2002 98490 Fisher +FRM 48153 2002 220235 Floyd +FRM 48155 2002 51233 Foard +FRM 48157 2002 130526 Fort Bend +FRM 48159 2002 24190 Franklin +FRM 48161 2002 35193 Freestone +FRM 48163 2002 45749 Frio +FRM 48165 2002 316324 Gaines +FRM 48167 2002 7441 Galveston +FRM 48169 2002 41810 Garza +FRM 48171 2002 33664 Gillespie +FRM 48173 2002 88011 Glasscock +FRM 48175 2002 26832 Goliad +FRM 48177 2002 53768 Gonzales +FRM 48179 2002 58177 Gray +FRM 48181 2002 145332 Grayson +FRM 48183 2002 6962 Gregg +FRM 48185 2002 40017 Grimes +FRM 48187 2002 101367 Guadalupe +FRM 48189 2002 345270 Hale +FRM 48191 2002 99041 Hall +FRM 48193 2002 47635 Hamilton +FRM 48195 2002 127477 Hansford +FRM 48197 2002 68135 Hardeman +FRM 48199 2002 7358 Hardin +FRM 48201 2002 44493 Harris +FRM 48203 2002 29910 Harrison +FRM 48205 2002 159433 Hartley +FRM 48207 2002 229991 Haskell +FRM 48209 2002 16344 Hays +FRM 48211 2002 16331 Hemphill +FRM 48213 2002 57415 Henderson +FRM 48215 2002 277406 Hidalgo +FRM 48217 2002 211217 Hill +FRM 48219 2002 289009 Hockley +FRM 48221 2002 27690 Hood +FRM 48223 2002 94439 Hopkins +FRM 48225 2002 59280 Houston +FRM 48227 2002 92487 Howard +FRM 48229 2002 34699 Hudspeth +FRM 48231 2002 124895 Hunt +FRM 48233 2002 34149 Hutchinson +FRM 48235 2002 2258 Irion +FRM 48237 2002 18178 Jack +FRM 48239 2002 159270 Jackson +FRM 48241 2002 9545 Jasper +FRM 48243 2002 881 Jeff Davis +FRM 48245 2002 36967 Jefferson +FRM 48247 2002 34149 Jim Hogg +FRM 48249 2002 106079 Jim Wells +FRM 48251 2002 80868 Johnson +FRM 48253 2002 198863 Jones +FRM 48255 2002 52272 Karnes +FRM 48257 2002 79920 Kaufman +FRM 48259 2002 10381 Kendall +FRM 48261 2002 34149 Kenedy +FRM 48263 2002 34149 Kent +FRM 48265 2002 10705 Kerr +FRM 48267 2002 3564 Kimble +FRM 48269 2002 7283 King +FRM 48271 2002 1573 Kinney +FRM 48273 2002 75775 Kleberg +FRM 48275 2002 125275 Knox +FRM 48277 2002 136905 Lamar +FRM 48279 2002 299230 Lamb +FRM 48281 2002 20748 Lampasas +FRM 48283 2002 6798 La Salle +FRM 48285 2002 65630 Lavaca +FRM 48287 2002 34295 Lee +FRM 48289 2002 55085 Leon +FRM 48291 2002 70158 Liberty +FRM 48293 2002 60169 Limestone +FRM 48295 2002 34149 Lipscomb +FRM 48297 2002 33566 Live Oak +FRM 48299 2002 8242 Llano +FRM 48301 2002 0 Loving +FRM 48303 2002 311542 Lubbock +FRM 48305 2002 289420 Lynn +FRM 48307 2002 54548 McCulloch +FRM 48309 2002 187338 McLennan +FRM 48311 2002 7127 McMullen +FRM 48313 2002 25779 Madison +FRM 48315 2002 7188 Marion +FRM 48317 2002 112709 Martin +FRM 48319 2002 13081 Mason +FRM 48321 2002 135809 Matagorda +FRM 48323 2002 9959 Maverick +FRM 48325 2002 123848 Medina +FRM 48327 2002 7489 Menard +FRM 48329 2002 15195 Midland +FRM 48331 2002 127795 Milam +FRM 48333 2002 26792 Mills +FRM 48335 2002 81827 Mitchell +FRM 48337 2002 49748 Montague +FRM 48339 2002 19189 Montgomery +FRM 48341 2002 147854 Moore +FRM 48343 2002 14654 Morris +FRM 48345 2002 33572 Motley +FRM 48347 2002 29663 Nacogdoches +FRM 48349 2002 97398 Navarro +FRM 48351 2002 4415 Newton +FRM 48353 2002 68909 Nolan +FRM 48355 2002 320801 Nueces +FRM 48357 2002 34149 Ochiltree +FRM 48359 2002 14541 Oldham +FRM 48361 2002 4326 Orange +FRM 48363 2002 29024 Palo Pinto +FRM 48365 2002 25446 Panola +FRM 48367 2002 60099 Parker +FRM 48369 2002 226271 Parmer +FRM 48371 2002 20397 Pecos +FRM 48373 2002 15162 Polk +FRM 48375 2002 34149 Potter +FRM 48377 2002 1390 Presidio +FRM 48379 2002 19811 Rains +FRM 48381 2002 71410 Randall +FRM 48383 2002 34149 Reagan +FRM 48385 2002 1565 Real +FRM 48387 2002 60040 Red River +FRM 48389 2002 11007 Reeves +FRM 48391 2002 73921 Refugio +FRM 48393 2002 15535 Roberts +FRM 48395 2002 73565 Robertson +FRM 48397 2002 14158 Rockwall +FRM 48399 2002 186354 Runnels +FRM 48401 2002 32782 Rusk +FRM 48403 2002 3436 Sabine +FRM 48405 2002 7509 San Augustine +FRM 48407 2002 9775 San Jacinto +FRM 48409 2002 223648 San Patricio +FRM 48411 2002 34381 San Saba +FRM 48413 2002 13729 Schleicher +FRM 48415 2002 102377 Scurry +FRM 48417 2002 24178 Shackelford +FRM 48419 2002 21110 Shelby +FRM 48421 2002 186873 Sherman +FRM 48423 2002 55400 Smith +FRM 48425 2002 6736 Somervell +FRM 48427 2002 41759 Starr +FRM 48429 2002 15509 Stephens +FRM 48431 2002 726 Sterling +FRM 48433 2002 40323 Stonewall +FRM 48435 2002 1670 Sutton +FRM 48437 2002 145315 Swisher +FRM 48439 2002 24129 Tarrant +FRM 48441 2002 94860 Taylor +FRM 48443 2002 34149 Terrell +FRM 48445 2002 245693 Terry +FRM 48447 2002 38581 Throckmorton +FRM 48449 2002 22734 Titus +FRM 48451 2002 157403 Tom Green +FRM 48453 2002 53960 Travis +FRM 48455 2002 17352 Trinity +FRM 48457 2002 12505 Tyler +FRM 48459 2002 27788 Upshur +FRM 48461 2002 11944 Upton +FRM 48463 2002 77882 Uvalde +FRM 48465 2002 3147 Val Verde +FRM 48467 2002 78654 Van Zandt +FRM 48469 2002 85578 Victoria +FRM 48471 2002 18883 Walker +FRM 48473 2002 53308 Waller +FRM 48475 2002 419 Ward +FRM 48477 2002 54740 Washington +FRM 48479 2002 7075 Webb +FRM 48481 2002 297315 Wharton +FRM 48483 2002 47346 Wheeler +FRM 48485 2002 83181 Wichita +FRM 48487 2002 154971 Wilbarger +FRM 48489 2002 103761 Willacy +FRM 48491 2002 217331 Williamson +FRM 48493 2002 75049 Wilson +FRM 48495 2002 34149 Winkler +FRM 48497 2002 84846 Wise +FRM 48499 2002 46468 Wood +FRM 48501 2002 134425 Yoakum +FRM 48503 2002 36372 Young +FRM 48505 2002 6068 Zapata +FRM 48507 2002 32135 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_GOLF.ALO new file mode 100644 index 0000000..22eb9a9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_GOLF.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 48000 2002 581 TX +GC 48001 2002 3 Anderson +GC 48003 2002 1 Andrews +GC 48005 2002 2 Angelina +GC 48007 2002 2 Aransas +GC 48009 2002 1 Archer +GC 48011 2002 0 Armstrong +GC 48013 2002 1 Atascosa +GC 48015 2002 3 Austin +GC 48017 2002 1 Bailey +GC 48019 2002 1 Bandera +GC 48021 2002 4 Bastrop +GC 48023 2002 0 Baylor +GC 48025 2002 1 Bee +GC 48027 2002 4 Bell +GC 48029 2002 15 Bexar +GC 48031 2002 0 Blanco +GC 48033 2002 0 Borden +GC 48035 2002 1 Bosque +GC 48037 2002 4 Bowie +GC 48039 2002 7 Brazoria +GC 48041 2002 3 Brazos +GC 48043 2002 1 Brewster +GC 48045 2002 0 Briscoe +GC 48047 2002 1 Brooks +GC 48049 2002 2 Brown +GC 48051 2002 1 Burleson +GC 48053 2002 2 Burnet +GC 48055 2002 0 Caldwell +GC 48057 2002 2 Calhoun +GC 48059 2002 1 Callahan +GC 48061 2002 5 Cameron +GC 48063 2002 1 Camp +GC 48065 2002 1 Carson +GC 48067 2002 2 Cass +GC 48069 2002 0 Castro +GC 48071 2002 1 Chambers +GC 48073 2002 1 Cherokee +GC 48075 2002 1 Childress +GC 48077 2002 0 Clay +GC 48079 2002 1 Cochran +GC 48081 2002 2 Coke +GC 48083 2002 1 Coleman +GC 48085 2002 12 Collin +GC 48087 2002 1 Collingsworth +GC 48089 2002 3 Colorado +GC 48091 2002 4 Comal +GC 48093 2002 1 Comanche +GC 48095 2002 0 Concho +GC 48097 2002 1 Cooke +GC 48099 2002 1 Coryell +GC 48101 2002 1 Cottle +GC 48103 2002 0 Crane +GC 48105 2002 1 Crockett +GC 48107 2002 1 Crosby +GC 48109 2002 0 Culberson +GC 48111 2002 1 Dallam +GC 48113 2002 48 Dallas +GC 48115 2002 2 Dawson +GC 48117 2002 0 Deaf Smith +GC 48119 2002 1 Delta +GC 48121 2002 13 Denton +GC 48123 2002 1 DeWitt +GC 48125 2002 0 Dickens +GC 48127 2002 1 Dimmit +GC 48129 2002 1 Donley +GC 48131 2002 0 Duval +GC 48133 2002 5 Eastland +GC 48135 2002 3 Ector +GC 48137 2002 0 Edwards +GC 48139 2002 4 Ellis +GC 48141 2002 8 El Paso +GC 48143 2002 2 Erath +GC 48145 2002 1 Falls +GC 48147 2002 2 Fannin +GC 48149 2002 2 Fayette +GC 48151 2002 0 Fisher +GC 48153 2002 1 Floyd +GC 48155 2002 0 Foard +GC 48157 2002 16 Fort Bend +GC 48159 2002 1 Franklin +GC 48161 2002 0 Freestone +GC 48163 2002 0 Frio +GC 48165 2002 0 Gaines +GC 48167 2002 7 Galveston +GC 48169 2002 0 Garza +GC 48171 2002 0 Gillespie +GC 48173 2002 0 Glasscock +GC 48175 2002 1 Goliad +GC 48177 2002 1 Gonzales +GC 48179 2002 2 Gray +GC 48181 2002 2 Grayson +GC 48183 2002 5 Gregg +GC 48185 2002 1 Grimes +GC 48187 2002 5 Guadalupe +GC 48189 2002 0 Hale +GC 48191 2002 1 Hall +GC 48193 2002 1 Hamilton +GC 48195 2002 1 Hansford +GC 48197 2002 0 Hardeman +GC 48199 2002 2 Hardin +GC 48201 2002 59 Harris +GC 48203 2002 2 Harrison +GC 48205 2002 0 Hartley +GC 48207 2002 1 Haskell +GC 48209 2002 4 Hays +GC 48211 2002 0 Hemphill +GC 48213 2002 5 Henderson +GC 48215 2002 5 Hidalgo +GC 48217 2002 1 Hill +GC 48219 2002 1 Hockley +GC 48221 2002 4 Hood +GC 48223 2002 1 Hopkins +GC 48225 2002 1 Houston +GC 48227 2002 1 Howard +GC 48229 2002 0 Hudspeth +GC 48231 2002 4 Hunt +GC 48233 2002 1 Hutchinson +GC 48235 2002 0 Irion +GC 48237 2002 1 Jack +GC 48239 2002 1 Jackson +GC 48241 2002 2 Jasper +GC 48243 2002 0 Jeff Davis +GC 48245 2002 7 Jefferson +GC 48247 2002 0 Jim Hogg +GC 48249 2002 1 Jim Wells +GC 48251 2002 2 Johnson +GC 48253 2002 3 Jones +GC 48255 2002 1 Karnes +GC 48257 2002 6 Kaufman +GC 48259 2002 1 Kendall +GC 48261 2002 0 Kenedy +GC 48263 2002 1 Kent +GC 48265 2002 1 Kerr +GC 48267 2002 1 Kimble +GC 48269 2002 0 King +GC 48271 2002 0 Kinney +GC 48273 2002 0 Kleberg +GC 48275 2002 2 Knox +GC 48277 2002 2 Lamar +GC 48279 2002 0 Lamb +GC 48281 2002 1 Lampasas +GC 48283 2002 0 La Salle +GC 48285 2002 1 Lavaca +GC 48287 2002 0 Lee +GC 48289 2002 0 Leon +GC 48291 2002 0 Liberty +GC 48293 2002 0 Limestone +GC 48295 2002 0 Lipscomb +GC 48297 2002 0 Live Oak +GC 48299 2002 3 Llano +GC 48301 2002 0 Loving +GC 48303 2002 7 Lubbock +GC 48305 2002 1 Lynn +GC 48307 2002 0 McCulloch +GC 48309 2002 7 McLennan +GC 48311 2002 0 McMullen +GC 48313 2002 1 Madison +GC 48315 2002 1 Marion +GC 48317 2002 1 Martin +GC 48319 2002 0 Mason +GC 48321 2002 2 Matagorda +GC 48323 2002 1 Maverick +GC 48325 2002 1 Medina +GC 48327 2002 1 Menard +GC 48329 2002 5 Midland +GC 48331 2002 2 Milam +GC 48333 2002 1 Mills +GC 48335 2002 0 Mitchell +GC 48337 2002 1 Montague +GC 48339 2002 8 Montgomery +GC 48341 2002 0 Moore +GC 48343 2002 1 Morris +GC 48345 2002 0 Motley +GC 48347 2002 3 Nacogdoches +GC 48349 2002 2 Navarro +GC 48351 2002 0 Newton +GC 48353 2002 2 Nolan +GC 48355 2002 3 Nueces +GC 48357 2002 0 Ochiltree +GC 48359 2002 1 Oldham +GC 48361 2002 2 Orange +GC 48363 2002 1 Palo Pinto +GC 48365 2002 1 Panola +GC 48367 2002 5 Parker +GC 48369 2002 2 Parmer +GC 48371 2002 0 Pecos +GC 48373 2002 0 Polk +GC 48375 2002 2 Potter +GC 48377 2002 0 Presidio +GC 48379 2002 1 Rains +GC 48381 2002 3 Randall +GC 48383 2002 1 Reagan +GC 48385 2002 0 Real +GC 48387 2002 1 Red River +GC 48389 2002 0 Reeves +GC 48391 2002 1 Refugio +GC 48393 2002 0 Roberts +GC 48395 2002 3 Robertson +GC 48397 2002 3 Rockwall +GC 48399 2002 1 Runnels +GC 48401 2002 2 Rusk +GC 48403 2002 0 Sabine +GC 48405 2002 0 San Augustine +GC 48407 2002 1 San Jacinto +GC 48409 2002 0 San Patricio +GC 48411 2002 0 San Saba +GC 48413 2002 1 Schleicher +GC 48415 2002 2 Scurry +GC 48417 2002 0 Shackelford +GC 48419 2002 1 Shelby +GC 48421 2002 1 Sherman +GC 48423 2002 11 Smith +GC 48425 2002 1 Somervell +GC 48427 2002 0 Starr +GC 48429 2002 1 Stephens +GC 48431 2002 0 Sterling +GC 48433 2002 0 Stonewall +GC 48435 2002 1 Sutton +GC 48437 2002 1 Swisher +GC 48439 2002 28 Tarrant +GC 48441 2002 6 Taylor +GC 48443 2002 0 Terrell +GC 48445 2002 1 Terry +GC 48447 2002 0 Throckmorton +GC 48449 2002 2 Titus +GC 48451 2002 3 Tom Green +GC 48453 2002 20 Travis +GC 48455 2002 0 Trinity +GC 48457 2002 1 Tyler +GC 48459 2002 2 Upshur +GC 48461 2002 1 Upton +GC 48463 2002 0 Uvalde +GC 48465 2002 2 Val Verde +GC 48467 2002 2 Van Zandt +GC 48469 2002 3 Victoria +GC 48471 2002 1 Walker +GC 48473 2002 4 Waller +GC 48475 2002 0 Ward +GC 48477 2002 1 Washington +GC 48479 2002 2 Webb +GC 48481 2002 2 Wharton +GC 48483 2002 1 Wheeler +GC 48485 2002 3 Wichita +GC 48487 2002 1 Wilbarger +GC 48489 2002 0 Willacy +GC 48491 2002 6 Williamson +GC 48493 2002 1 Wilson +GC 48495 2002 1 Winkler +GC 48497 2002 3 Wise +GC 48499 2002 3 Wood +GC 48501 2002 1 Yoakum +GC 48503 2002 2 Young +GC 48505 2002 1 Zapata +GC 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_HOLSL.ALO new file mode 100644 index 0000000..7145137 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_HOLSL.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 48000 2002 31874 TX +COM 48001 2002 33 Anderson +COM 48003 2002 18 Andrews +COM 48005 2002 88 Angelina +COM 48007 2002 20 Aransas +COM 48009 2002 9 Archer +COM 48011 2002 1 Armstrong +COM 48013 2002 32 Atascosa +COM 48015 2002 26 Austin +COM 48017 2002 16 Bailey +COM 48019 2002 4 Bandera +COM 48021 2002 31 Bastrop +COM 48023 2002 13 Baylor +COM 48025 2002 11 Bee +COM 48027 2002 143 Bell +COM 48029 2002 1702 Bexar +COM 48031 2002 8 Blanco +COM 48033 2002 0 Borden +COM 48035 2002 14 Bosque +COM 48037 2002 126 Bowie +COM 48039 2002 207 Brazoria +COM 48041 2002 128 Brazos +COM 48043 2002 9 Brewster +COM 48045 2002 5 Briscoe +COM 48047 2002 2 Brooks +COM 48049 2002 51 Brown +COM 48051 2002 23 Burleson +COM 48053 2002 36 Burnet +COM 48055 2002 22 Caldwell +COM 48057 2002 22 Calhoun +COM 48059 2002 14 Callahan +COM 48061 2002 351 Cameron +COM 48063 2002 4 Camp +COM 48065 2002 4 Carson +COM 48067 2002 21 Cass +COM 48069 2002 17 Castro +COM 48071 2002 18 Chambers +COM 48073 2002 37 Cherokee +COM 48075 2002 10 Childress +COM 48077 2002 4 Clay +COM 48079 2002 4 Cochran +COM 48081 2002 3 Coke +COM 48083 2002 9 Coleman +COM 48085 2002 852 Collin +COM 48087 2002 4 Collingsworth +COM 48089 2002 36 Colorado +COM 48091 2002 114 Comal +COM 48093 2002 28 Comanche +COM 48095 2002 2 Concho +COM 48097 2002 56 Cooke +COM 48099 2002 11 Coryell +COM 48101 2002 0 Cottle +COM 48103 2002 3 Crane +COM 48105 2002 7 Crockett +COM 48107 2002 13 Crosby +COM 48109 2002 1 Culberson +COM 48111 2002 21 Dallam +COM 48113 2002 5278 Dallas +COM 48115 2002 18 Dawson +COM 48117 2002 41 Deaf Smith +COM 48119 2002 2 Delta +COM 48121 2002 529 Denton +COM 48123 2002 20 DeWitt +COM 48125 2002 2 Dickens +COM 48127 2002 5 Dimmit +COM 48129 2002 3 Donley +COM 48131 2002 10 Duval +COM 48133 2002 24 Eastland +COM 48135 2002 344 Ector +COM 48137 2002 2 Edwards +COM 48139 2002 104 Ellis +COM 48141 2002 1017 El Paso +COM 48143 2002 47 Erath +COM 48145 2002 12 Falls +COM 48147 2002 23 Fannin +COM 48149 2002 34 Fayette +COM 48151 2002 0 Fisher +COM 48153 2002 18 Floyd +COM 48155 2002 6 Foard +COM 48157 2002 503 Fort Bend +COM 48159 2002 2 Franklin +COM 48161 2002 15 Freestone +COM 48163 2002 19 Frio +COM 48165 2002 21 Gaines +COM 48167 2002 207 Galveston +COM 48169 2002 5 Garza +COM 48171 2002 40 Gillespie +COM 48173 2002 2 Glasscock +COM 48175 2002 4 Goliad +COM 48177 2002 31 Gonzales +COM 48179 2002 38 Gray +COM 48181 2002 123 Grayson +COM 48183 2002 293 Gregg +COM 48185 2002 22 Grimes +COM 48187 2002 104 Guadalupe +COM 48189 2002 59 Hale +COM 48191 2002 5 Hall +COM 48193 2002 13 Hamilton +COM 48195 2002 19 Hansford +COM 48197 2002 6 Hardeman +COM 48199 2002 26 Hardin +COM 48201 2002 7170 Harris +COM 48203 2002 60 Harrison +COM 48205 2002 6 Hartley +COM 48207 2002 4 Haskell +COM 48209 2002 82 Hays +COM 48211 2002 10 Hemphill +COM 48213 2002 54 Henderson +COM 48215 2002 637 Hidalgo +COM 48217 2002 23 Hill +COM 48219 2002 34 Hockley +COM 48221 2002 37 Hood +COM 48223 2002 51 Hopkins +COM 48225 2002 16 Houston +COM 48227 2002 30 Howard +COM 48229 2002 1 Hudspeth +COM 48231 2002 55 Hunt +COM 48233 2002 23 Hutchinson +COM 48235 2002 3 Irion +COM 48237 2002 9 Jack +COM 48239 2002 15 Jackson +COM 48241 2002 36 Jasper +COM 48243 2002 0 Jeff Davis +COM 48245 2002 330 Jefferson +COM 48247 2002 3 Jim Hogg +COM 48249 2002 46 Jim Wells +COM 48251 2002 104 Johnson +COM 48253 2002 24 Jones +COM 48255 2002 15 Karnes +COM 48257 2002 91 Kaufman +COM 48259 2002 48 Kendall +COM 48261 2002 0 Kenedy +COM 48263 2002 1 Kent +COM 48265 2002 47 Kerr +COM 48267 2002 2 Kimble +COM 48269 2002 0 King +COM 48271 2002 1 Kinney +COM 48273 2002 9 Kleberg +COM 48275 2002 13 Knox +COM 48277 2002 65 Lamar +COM 48279 2002 20 Lamb +COM 48281 2002 9 Lampasas +COM 48283 2002 2 La Salle +COM 48285 2002 26 Lavaca +COM 48287 2002 27 Lee +COM 48289 2002 23 Leon +COM 48291 2002 41 Liberty +COM 48293 2002 17 Limestone +COM 48295 2002 4 Lipscomb +COM 48297 2002 10 Live Oak +COM 48299 2002 15 Llano +COM 48301 2002 0 Loving +COM 48303 2002 469 Lubbock +COM 48305 2002 7 Lynn +COM 48307 2002 10 McCulloch +COM 48309 2002 286 McLennan +COM 48311 2002 0 McMullen +COM 48313 2002 6 Madison +COM 48315 2002 8 Marion +COM 48317 2002 6 Martin +COM 48319 2002 7 Mason +COM 48321 2002 34 Matagorda +COM 48323 2002 44 Maverick +COM 48325 2002 33 Medina +COM 48327 2002 3 Menard +COM 48329 2002 262 Midland +COM 48331 2002 21 Milam +COM 48333 2002 7 Mills +COM 48335 2002 3 Mitchell +COM 48337 2002 20 Montague +COM 48339 2002 435 Montgomery +COM 48341 2002 26 Moore +COM 48343 2002 13 Morris +COM 48345 2002 4 Motley +COM 48347 2002 61 Nacogdoches +COM 48349 2002 35 Navarro +COM 48351 2002 5 Newton +COM 48353 2002 20 Nolan +COM 48355 2002 466 Nueces +COM 48357 2002 34 Ochiltree +COM 48359 2002 3 Oldham +COM 48361 2002 48 Orange +COM 48363 2002 24 Palo Pinto +COM 48365 2002 21 Panola +COM 48367 2002 72 Parker +COM 48369 2002 22 Parmer +COM 48371 2002 14 Pecos +COM 48373 2002 29 Polk +COM 48375 2002 216 Potter +COM 48377 2002 5 Presidio +COM 48379 2002 5 Rains +COM 48381 2002 105 Randall +COM 48383 2002 5 Reagan +COM 48385 2002 2 Real +COM 48387 2002 1 Red River +COM 48389 2002 7 Reeves +COM 48391 2002 7 Refugio +COM 48393 2002 0 Roberts +COM 48395 2002 6 Robertson +COM 48397 2002 67 Rockwall +COM 48399 2002 14 Runnels +COM 48401 2002 36 Rusk +COM 48403 2002 3 Sabine +COM 48405 2002 6 San Augustine +COM 48407 2002 10 San Jacinto +COM 48409 2002 45 San Patricio +COM 48411 2002 17 San Saba +COM 48413 2002 1 Schleicher +COM 48415 2002 26 Scurry +COM 48417 2002 4 Shackelford +COM 48419 2002 16 Shelby +COM 48421 2002 9 Sherman +COM 48423 2002 305 Smith +COM 48425 2002 7 Somervell +COM 48427 2002 16 Starr +COM 48429 2002 16 Stephens +COM 48431 2002 4 Sterling +COM 48433 2002 2 Stonewall +COM 48435 2002 9 Sutton +COM 48437 2002 18 Swisher +COM 48439 2002 2336 Tarrant +COM 48441 2002 191 Taylor +COM 48443 2002 0 Terrell +COM 48445 2002 20 Terry +COM 48447 2002 4 Throckmorton +COM 48449 2002 43 Titus +COM 48451 2002 132 Tom Green +COM 48453 2002 1245 Travis +COM 48455 2002 6 Trinity +COM 48457 2002 10 Tyler +COM 48459 2002 19 Upshur +COM 48461 2002 8 Upton +COM 48463 2002 33 Uvalde +COM 48465 2002 36 Val Verde +COM 48467 2002 36 Van Zandt +COM 48469 2002 126 Victoria +COM 48471 2002 33 Walker +COM 48473 2002 49 Waller +COM 48475 2002 12 Ward +COM 48477 2002 43 Washington +COM 48479 2002 367 Webb +COM 48481 2002 52 Wharton +COM 48483 2002 8 Wheeler +COM 48485 2002 180 Wichita +COM 48487 2002 12 Wilbarger +COM 48489 2002 5 Willacy +COM 48491 2002 254 Williamson +COM 48493 2002 20 Wilson +COM 48495 2002 4 Winkler +COM 48497 2002 47 Wise +COM 48499 2002 49 Wood +COM 48501 2002 15 Yoakum +COM 48503 2002 34 Young +COM 48505 2002 6 Zapata +COM 48507 2002 2 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_HOUSE.ALO new file mode 100644 index 0000000..af9f284 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_HOUSE.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 48000 2002 8501936 TX +HOU 48001 2002 18845 Anderson +HOU 48003 2002 5491 Andrews +HOU 48005 2002 33160 Angelina +HOU 48007 2002 13256 Aransas +HOU 48009 2002 3898 Archer +HOU 48011 2002 920 Armstrong +HOU 48013 2002 15270 Atascosa +HOU 48015 2002 10481 Austin +HOU 48017 2002 2737 Bailey +HOU 48019 2002 9689 Bandera +HOU 48021 2002 22964 Bastrop +HOU 48023 2002 2796 Baylor +HOU 48025 2002 11041 Bee +HOU 48027 2002 97602 Bell +HOU 48029 2002 542104 Bexar +HOU 48031 2002 4094 Blanco +HOU 48033 2002 439 Borden +HOU 48035 2002 8721 Bosque +HOU 48037 2002 37230 Bowie +HOU 48039 2002 95732 Brazoria +HOU 48041 2002 62339 Brazos +HOU 48043 2002 4711 Brewster +HOU 48045 2002 1012 Briscoe +HOU 48047 2002 3227 Brooks +HOU 48049 2002 18068 Brown +HOU 48051 2002 8380 Burleson +HOU 48053 2002 16970 Burnet +HOU 48055 2002 12471 Caldwell +HOU 48057 2002 10395 Calhoun +HOU 48059 2002 6008 Callahan +HOU 48061 2002 126673 Cameron +HOU 48063 2002 5295 Camp +HOU 48065 2002 2845 Carson +HOU 48067 2002 14131 Cass +HOU 48069 2002 3204 Castro +HOU 48071 2002 11144 Chambers +HOU 48073 2002 19534 Cherokee +HOU 48075 2002 3034 Childress +HOU 48077 2002 5059 Clay +HOU 48079 2002 1594 Cochran +HOU 48081 2002 2880 Coke +HOU 48083 2002 5250 Coleman +HOU 48085 2002 218462 Collin +HOU 48087 2002 1701 Collingsworth +HOU 48089 2002 9514 Colorado +HOU 48091 2002 35368 Comal +HOU 48093 2002 7167 Comanche +HOU 48095 2002 1496 Concho +HOU 48097 2002 15304 Cooke +HOU 48099 2002 22092 Coryell +HOU 48101 2002 1075 Cottle +HOU 48103 2002 1596 Crane +HOU 48105 2002 2073 Crockett +HOU 48107 2002 3195 Crosby +HOU 48109 2002 1344 Culberson +HOU 48111 2002 2732 Dallam +HOU 48113 2002 879108 Dallas +HOU 48115 2002 5507 Dawson +HOU 48117 2002 6925 Deaf Smith +HOU 48119 2002 2431 Delta +HOU 48121 2002 185261 Denton +HOU 48123 2002 8840 DeWitt +HOU 48125 2002 1369 Dickens +HOU 48127 2002 4149 Dimmit +HOU 48129 2002 2399 Donley +HOU 48131 2002 5632 Duval +HOU 48133 2002 9547 Eastland +HOU 48135 2002 50577 Ector +HOU 48137 2002 1221 Edwards +HOU 48139 2002 41977 Ellis +HOU 48141 2002 232138 El Paso +HOU 48143 2002 14590 Erath +HOU 48145 2002 7701 Falls +HOU 48147 2002 13070 Fannin +HOU 48149 2002 11150 Fayette +HOU 48151 2002 2280 Fisher +HOU 48153 2002 3209 Floyd +HOU 48155 2002 848 Foard +HOU 48157 2002 124164 Fort Bend +HOU 48159 2002 5182 Franklin +HOU 48161 2002 8327 Freestone +HOU 48163 2002 5745 Frio +HOU 48165 2002 5492 Gaines +HOU 48167 2002 117038 Galveston +HOU 48169 2002 1934 Garza +HOU 48171 2002 10085 Gillespie +HOU 48173 2002 666 Glasscock +HOU 48175 2002 3479 Goliad +HOU 48177 2002 8274 Gonzales +HOU 48179 2002 10547 Gray +HOU 48181 2002 49015 Grayson +HOU 48183 2002 46911 Gregg +HOU 48185 2002 9657 Grimes +HOU 48187 2002 34976 Guadalupe +HOU 48189 2002 13712 Hale +HOU 48191 2002 1968 Hall +HOU 48193 2002 4468 Hamilton +HOU 48195 2002 2329 Hansford +HOU 48197 2002 2341 Hardeman +HOU 48199 2002 20330 Hardin +HOU 48201 2002 1352145 Harris +HOU 48203 2002 26669 Harrison +HOU 48205 2002 1782 Hartley +HOU 48207 2002 3549 Haskell +HOU 48209 2002 39246 Hays +HOU 48211 2002 1542 Hemphill +HOU 48213 2002 36845 Henderson +HOU 48215 2002 207599 Hidalgo +HOU 48217 2002 14778 Hill +HOU 48219 2002 9263 Hockley +HOU 48221 2002 19554 Hood +HOU 48223 2002 14249 Hopkins +HOU 48225 2002 10843 Houston +HOU 48227 2002 13640 Howard +HOU 48229 2002 1506 Hudspeth +HOU 48231 2002 33001 Hunt +HOU 48233 2002 10927 Hutchinson +HOU 48235 2002 919 Irion +HOU 48237 2002 3691 Jack +HOU 48239 2002 6600 Jackson +HOU 48241 2002 16888 Jasper +HOU 48243 2002 1424 Jeff Davis +HOU 48245 2002 103285 Jefferson +HOU 48247 2002 2338 Jim Hogg +HOU 48249 2002 14994 Jim Wells +HOU 48251 2002 48174 Johnson +HOU 48253 2002 7327 Jones +HOU 48255 2002 5523 Karnes +HOU 48257 2002 27348 Kaufman +HOU 48259 2002 10310 Kendall +HOU 48261 2002 282 Kenedy +HOU 48263 2002 557 Kent +HOU 48265 2002 20753 Kerr +HOU 48267 2002 2996 Kimble +HOU 48269 2002 175 King +HOU 48271 2002 1920 Kinney +HOU 48273 2002 12770 Kleberg +HOU 48275 2002 2135 Knox +HOU 48277 2002 21413 Lamar +HOU 48279 2002 6300 Lamb +HOU 48281 2002 7721 Lampasas +HOU 48283 2002 2448 La Salle +HOU 48285 2002 9702 Lavaca +HOU 48287 2002 6979 Lee +HOU 48289 2002 8468 Leon +HOU 48291 2002 27174 Liberty +HOU 48293 2002 9818 Limestone +HOU 48295 2002 1534 Lipscomb +HOU 48297 2002 6268 Live Oak +HOU 48299 2002 12162 Llano +HOU 48301 2002 71 Loving +HOU 48303 2002 103702 Lubbock +HOU 48305 2002 2677 Lynn +HOU 48307 2002 4184 McCulloch +HOU 48309 2002 86675 McLennan +HOU 48311 2002 600 McMullen +HOU 48313 2002 4887 Madison +HOU 48315 2002 6503 Marion +HOU 48317 2002 1950 Martin +HOU 48319 2002 2364 Mason +HOU 48321 2002 18804 Matagorda +HOU 48323 2002 15454 Maverick +HOU 48325 2002 15160 Medina +HOU 48327 2002 1612 Menard +HOU 48329 2002 48628 Midland +HOU 48331 2002 10949 Milam +HOU 48333 2002 2708 Mills +HOU 48335 2002 4180 Mitchell +HOU 48337 2002 9984 Montague +HOU 48339 2002 122843 Montgomery +HOU 48341 2002 7573 Moore +HOU 48343 2002 6087 Morris +HOU 48345 2002 836 Motley +HOU 48347 2002 25700 Nacogdoches +HOU 48349 2002 18632 Navarro +HOU 48351 2002 7488 Newton +HOU 48353 2002 7085 Nolan +HOU 48355 2002 125064 Nueces +HOU 48357 2002 3814 Ochiltree +HOU 48359 2002 820 Oldham +HOU 48361 2002 35414 Orange +HOU 48363 2002 14199 Palo Pinto +HOU 48365 2002 10734 Panola +HOU 48367 2002 35347 Parker +HOU 48369 2002 3761 Parmer +HOU 48371 2002 6392 Pecos +HOU 48373 2002 21472 Polk +HOU 48375 2002 45586 Potter +HOU 48377 2002 3449 Presidio +HOU 48379 2002 4612 Rains +HOU 48381 2002 44130 Randall +HOU 48383 2002 1473 Reagan +HOU 48385 2002 2056 Real +HOU 48387 2002 6999 Red River +HOU 48389 2002 5045 Reeves +HOU 48391 2002 3660 Refugio +HOU 48393 2002 447 Roberts +HOU 48395 2002 7987 Robertson +HOU 48397 2002 18008 Rockwall +HOU 48399 2002 5378 Runnels +HOU 48401 2002 20124 Rusk +HOU 48403 2002 7826 Sabine +HOU 48405 2002 5452 San Augustine +HOU 48407 2002 11769 San Jacinto +HOU 48409 2002 25650 San Patricio +HOU 48411 2002 2989 San Saba +HOU 48413 2002 1380 Schleicher +HOU 48415 2002 7140 Scurry +HOU 48417 2002 1618 Shackelford +HOU 48419 2002 12195 Shelby +HOU 48421 2002 1319 Sherman +HOU 48423 2002 73517 Smith +HOU 48425 2002 2860 Somervell +HOU 48427 2002 17804 Starr +HOU 48429 2002 4903 Stephens +HOU 48431 2002 639 Sterling +HOU 48433 2002 942 Stonewall +HOU 48435 2002 2005 Sutton +HOU 48437 2002 3321 Swisher +HOU 48439 2002 592938 Tarrant +HOU 48441 2002 53019 Taylor +HOU 48443 2002 1001 Terrell +HOU 48445 2002 5101 Terry +HOU 48447 2002 1069 Throckmorton +HOU 48449 2002 10858 Titus +HOU 48451 2002 44463 Tom Green +HOU 48453 2002 363506 Travis +HOU 48455 2002 8306 Trinity +HOU 48457 2002 10591 Tyler +HOU 48459 2002 15235 Upshur +HOU 48461 2002 1614 Upton +HOU 48463 2002 10295 Uvalde +HOU 48465 2002 16689 Val Verde +HOU 48467 2002 21332 Van Zandt +HOU 48469 2002 33471 Victoria +HOU 48471 2002 21665 Walker +HOU 48473 2002 12737 Waller +HOU 48475 2002 4865 Ward +HOU 48477 2002 13383 Washington +HOU 48479 2002 59425 Webb +HOU 48481 2002 16880 Wharton +HOU 48483 2002 2673 Wheeler +HOU 48485 2002 53781 Wichita +HOU 48487 2002 6348 Wilbarger +HOU 48489 2002 6824 Willacy +HOU 48491 2002 103606 Williamson +HOU 48493 2002 12475 Wilson +HOU 48495 2002 3208 Winkler +HOU 48497 2002 19820 Wise +HOU 48499 2002 18197 Wood +HOU 48501 2002 3014 Yoakum +HOU 48503 2002 8547 Young +HOU 48505 2002 6326 Zapata +HOU 48507 2002 4122 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_LOGGN.ALO new file mode 100644 index 0000000..d481f03 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_LOGGN.ALO @@ -0,0 +1,281 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 48000 2002 870303833 TX +LOG 48001 2002 15656941 Anderson +LOG 48003 2002 0 Andrews +LOG 48005 2002 56032203 Angelina +LOG 48007 2002 0 Aransas +LOG 48009 2002 0 Archer +LOG 48011 2002 0 Armstrong +LOG 48013 2002 0 Atascosa +LOG 48015 2002 0 Austin +LOG 48017 2002 0 Bailey +LOG 48019 2002 0 Bandera +LOG 48021 2002 0 Bastrop +LOG 48023 2002 0 Baylor +LOG 48025 2002 0 Bee +LOG 48027 2002 0 Bell +LOG 48029 2002 0 Bexar +LOG 48031 2002 0 Blanco +LOG 48033 2002 0 Borden +LOG 48035 2002 0 Bosque +LOG 48037 2002 18465227 Bowie +LOG 48039 2002 0 Brazoria +LOG 48041 2002 0 Brazos +LOG 48043 2002 0 Brewster +LOG 48045 2002 0 Briscoe +LOG 48047 2002 0 Brooks +LOG 48049 2002 0 Brown +LOG 48051 2002 0 Burleson +LOG 48053 2002 0 Burnet +LOG 48055 2002 0 Caldwell +LOG 48057 2002 0 Calhoun +LOG 48059 2002 0 Callahan +LOG 48061 2002 0 Cameron +LOG 48063 2002 3014771 Camp +LOG 48065 2002 0 Carson +LOG 48067 2002 50736827 Cass +LOG 48069 2002 0 Castro +LOG 48071 2002 778078 Chambers +LOG 48073 2002 28780414 Cherokee +LOG 48075 2002 0 Childress +LOG 48077 2002 0 Clay +LOG 48079 2002 0 Cochran +LOG 48081 2002 0 Coke +LOG 48083 2002 0 Coleman +LOG 48085 2002 0 Collin +LOG 48087 2002 0 Collingsworth +LOG 48089 2002 0 Colorado +LOG 48091 2002 0 Comal +LOG 48093 2002 0 Comanche +LOG 48095 2002 0 Concho +LOG 48097 2002 0 Cooke +LOG 48099 2002 0 Coryell +LOG 48101 2002 0 Cottle +LOG 48103 2002 0 Crane +LOG 48105 2002 0 Crockett +LOG 48107 2002 0 Crosby +LOG 48109 2002 0 Culberson +LOG 48111 2002 0 Dallam +LOG 48113 2002 0 Dallas +LOG 48115 2002 0 Dawson +LOG 48117 2002 0 Deaf Smith +LOG 48119 2002 0 Delta +LOG 48121 2002 0 Denton +LOG 48123 2002 0 DeWitt +LOG 48125 2002 0 Dickens +LOG 48127 2002 0 Dimmit +LOG 48129 2002 0 Donley +LOG 48131 2002 0 Duval +LOG 48133 2002 0 Eastland +LOG 48135 2002 0 Ector +LOG 48137 2002 0 Edwards +LOG 48139 2002 0 Ellis +LOG 48141 2002 0 El Paso +LOG 48143 2002 0 Erath +LOG 48145 2002 0 Falls +LOG 48147 2002 0 Fannin +LOG 48149 2002 0 Fayette +LOG 48151 2002 0 Fisher +LOG 48153 2002 0 Floyd +LOG 48155 2002 0 Foard +LOG 48157 2002 0 Fort Bend +LOG 48159 2002 979368 Franklin +LOG 48161 2002 0 Freestone +LOG 48163 2002 0 Frio +LOG 48165 2002 0 Gaines +LOG 48167 2002 0 Galveston +LOG 48169 2002 0 Garza +LOG 48171 2002 0 Gillespie +LOG 48173 2002 0 Glasscock +LOG 48175 2002 0 Goliad +LOG 48177 2002 0 Gonzales +LOG 48179 2002 0 Gray +LOG 48181 2002 0 Grayson +LOG 48183 2002 7366239 Gregg +LOG 48185 2002 1846313 Grimes +LOG 48187 2002 0 Guadalupe +LOG 48189 2002 0 Hale +LOG 48191 2002 0 Hall +LOG 48193 2002 0 Hamilton +LOG 48195 2002 0 Hansford +LOG 48197 2002 0 Hardeman +LOG 48199 2002 31550900 Hardin +LOG 48201 2002 9388217 Harris +LOG 48203 2002 31120675 Harrison +LOG 48205 2002 0 Hartley +LOG 48207 2002 0 Haskell +LOG 48209 2002 0 Hays +LOG 48211 2002 0 Hemphill +LOG 48213 2002 3418304 Henderson +LOG 48215 2002 0 Hidalgo +LOG 48217 2002 0 Hill +LOG 48219 2002 0 Hockley +LOG 48221 2002 0 Hood +LOG 48223 2002 0 Hopkins +LOG 48225 2002 9517109 Houston +LOG 48227 2002 0 Howard +LOG 48229 2002 0 Hudspeth +LOG 48231 2002 0 Hunt +LOG 48233 2002 0 Hutchinson +LOG 48235 2002 0 Irion +LOG 48237 2002 0 Jack +LOG 48239 2002 0 Jackson +LOG 48241 2002 47574023 Jasper +LOG 48243 2002 0 Jeff Davis +LOG 48245 2002 2942000 Jefferson +LOG 48247 2002 0 Jim Hogg +LOG 48249 2002 0 Jim Wells +LOG 48251 2002 0 Johnson +LOG 48253 2002 0 Jones +LOG 48255 2002 0 Karnes +LOG 48257 2002 0 Kaufman +LOG 48259 2002 0 Kendall +LOG 48261 2002 0 Kenedy +LOG 48263 2002 0 Kent +LOG 48265 2002 0 Kerr +LOG 48267 2002 0 Kimble +LOG 48269 2002 0 King +LOG 48271 2002 0 Kinney +LOG 48273 2002 0 Kleberg +LOG 48275 2002 0 Knox +LOG 48277 2002 0 Lamar +LOG 48279 2002 0 Lamb +LOG 48281 2002 0 Lampasas +LOG 48283 2002 0 La Salle +LOG 48285 2002 0 Lavaca +LOG 48287 2002 0 Lee +LOG 48289 2002 1281791 Leon +LOG 48291 2002 42324138 Liberty +LOG 48293 2002 0 Limestone +LOG 48295 2002 0 Lipscomb +LOG 48297 2002 0 Live Oak +LOG 48299 2002 0 Llano +LOG 48301 2002 0 Loving +LOG 48303 2002 0 Lubbock +LOG 48305 2002 0 Lynn +LOG 48307 2002 0 McCulloch +LOG 48309 2002 0 McLennan +LOG 48311 2002 0 McMullen +LOG 48313 2002 3491261 Madison +LOG 48315 2002 26719851 Marion +LOG 48317 2002 0 Martin +LOG 48319 2002 0 Mason +LOG 48321 2002 0 Matagorda +LOG 48323 2002 0 Maverick +LOG 48325 2002 0 Medina +LOG 48327 2002 0 Menard +LOG 48329 2002 0 Midland +LOG 48331 2002 0 Milam +LOG 48333 2002 0 Mills +LOG 48335 2002 0 Mitchell +LOG 48337 2002 0 Montague +LOG 48339 2002 41477935 Montgomery +LOG 48341 2002 0 Moore +LOG 48343 2002 3633888 Morris +LOG 48345 2002 0 Motley +LOG 48347 2002 39005258 Nacogdoches +LOG 48349 2002 0 Navarro +LOG 48351 2002 45813801 Newton +LOG 48353 2002 0 Nolan +LOG 48355 2002 0 Nueces +LOG 48357 2002 0 Ochiltree +LOG 48359 2002 0 Oldham +LOG 48361 2002 8379592 Orange +LOG 48363 2002 0 Palo Pinto +LOG 48365 2002 32930223 Panola +LOG 48367 2002 0 Parker +LOG 48369 2002 0 Parmer +LOG 48371 2002 0 Pecos +LOG 48373 2002 48969129 Polk +LOG 48375 2002 0 Potter +LOG 48377 2002 0 Presidio +LOG 48379 2002 0 Rains +LOG 48381 2002 0 Randall +LOG 48383 2002 0 Reagan +LOG 48385 2002 0 Real +LOG 48387 2002 14503170 Red River +LOG 48389 2002 0 Reeves +LOG 48391 2002 0 Refugio +LOG 48393 2002 0 Roberts +LOG 48395 2002 0 Robertson +LOG 48397 2002 0 Rockwall +LOG 48399 2002 0 Runnels +LOG 48401 2002 24773672 Rusk +LOG 48403 2002 21687315 Sabine +LOG 48405 2002 19099677 San Augustine +LOG 48407 2002 13418404 San Jacinto +LOG 48409 2002 0 San Patricio +LOG 48411 2002 0 San Saba +LOG 48413 2002 0 Schleicher +LOG 48415 2002 0 Scurry +LOG 48417 2002 0 Shackelford +LOG 48419 2002 28574911 Shelby +LOG 48421 2002 0 Sherman +LOG 48423 2002 22614031 Smith +LOG 48425 2002 0 Somervell +LOG 48427 2002 0 Starr +LOG 48429 2002 0 Stephens +LOG 48431 2002 0 Sterling +LOG 48433 2002 0 Stonewall +LOG 48435 2002 0 Sutton +LOG 48437 2002 0 Swisher +LOG 48439 2002 0 Tarrant +LOG 48441 2002 0 Taylor +LOG 48443 2002 0 Terrell +LOG 48445 2002 0 Terry +LOG 48447 2002 0 Throckmorton +LOG 48449 2002 2659374 Titus +LOG 48451 2002 0 Tom Green +LOG 48453 2002 0 Travis +LOG 48455 2002 13415187 Trinity +LOG 48457 2002 48595237 Tyler +LOG 48459 2002 14150904 Upshur +LOG 48461 2002 0 Upton +LOG 48463 2002 0 Uvalde +LOG 48465 2002 0 Val Verde +LOG 48467 2002 0 Van Zandt +LOG 48469 2002 0 Victoria +LOG 48471 2002 27718603 Walker +LOG 48473 2002 311911 Waller +LOG 48475 2002 0 Ward +LOG 48477 2002 0 Washington +LOG 48479 2002 0 Webb +LOG 48481 2002 0 Wharton +LOG 48483 2002 0 Wheeler +LOG 48485 2002 0 Wichita +LOG 48487 2002 0 Wilbarger +LOG 48489 2002 0 Willacy +LOG 48491 2002 0 Williamson +LOG 48493 2002 0 Wilson +LOG 48495 2002 0 Winkler +LOG 48497 2002 0 Wise +LOG 48499 2002 5586961 Wood +LOG 48501 2002 0 Yoakum +LOG 48503 2002 0 Young +LOG 48505 2002 0 Zapata +LOG 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_LSCAP.ALO new file mode 100644 index 0000000..b986b16 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_LSCAP.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 48000 2002 30236 TX +LSC 48001 2002 12 Anderson +LSC 48003 2002 0 Andrews +LSC 48005 2002 126 Angelina +LSC 48007 2002 4 Aransas +LSC 48009 2002 4 Archer +LSC 48011 2002 0 Armstrong +LSC 48013 2002 7 Atascosa +LSC 48015 2002 23 Austin +LSC 48017 2002 4 Bailey +LSC 48019 2002 4 Bandera +LSC 48021 2002 29 Bastrop +LSC 48023 2002 0 Baylor +LSC 48025 2002 4 Bee +LSC 48027 2002 83 Bell +LSC 48029 2002 3402 Bexar +LSC 48031 2002 4 Blanco +LSC 48033 2002 0 Borden +LSC 48035 2002 29 Bosque +LSC 48037 2002 64 Bowie +LSC 48039 2002 219 Brazoria +LSC 48041 2002 186 Brazos +LSC 48043 2002 0 Brewster +LSC 48045 2002 0 Briscoe +LSC 48047 2002 0 Brooks +LSC 48049 2002 5 Brown +LSC 48051 2002 4 Burleson +LSC 48053 2002 96 Burnet +LSC 48055 2002 4 Caldwell +LSC 48057 2002 29 Calhoun +LSC 48059 2002 0 Callahan +LSC 48061 2002 178 Cameron +LSC 48063 2002 0 Camp +LSC 48065 2002 0 Carson +LSC 48067 2002 29 Cass +LSC 48069 2002 0 Castro +LSC 48071 2002 4 Chambers +LSC 48073 2002 4 Cherokee +LSC 48075 2002 0 Childress +LSC 48077 2002 0 Clay +LSC 48079 2002 0 Cochran +LSC 48081 2002 0 Coke +LSC 48083 2002 4 Coleman +LSC 48085 2002 1889 Collin +LSC 48087 2002 0 Collingsworth +LSC 48089 2002 1 Colorado +LSC 48091 2002 74 Comal +LSC 48093 2002 4 Comanche +LSC 48095 2002 0 Concho +LSC 48097 2002 23 Cooke +LSC 48099 2002 4 Coryell +LSC 48101 2002 0 Cottle +LSC 48103 2002 0 Crane +LSC 48105 2002 0 Crockett +LSC 48107 2002 4 Crosby +LSC 48109 2002 0 Culberson +LSC 48111 2002 0 Dallam +LSC 48113 2002 4439 Dallas +LSC 48115 2002 4 Dawson +LSC 48117 2002 0 Deaf Smith +LSC 48119 2002 4 Delta +LSC 48121 2002 872 Denton +LSC 48123 2002 29 DeWitt +LSC 48125 2002 0 Dickens +LSC 48127 2002 4 Dimmit +LSC 48129 2002 0 Donley +LSC 48131 2002 0 Duval +LSC 48133 2002 4 Eastland +LSC 48135 2002 37 Ector +LSC 48137 2002 0 Edwards +LSC 48139 2002 89 Ellis +LSC 48141 2002 476 El Paso +LSC 48143 2002 29 Erath +LSC 48145 2002 4 Falls +LSC 48147 2002 14 Fannin +LSC 48149 2002 4 Fayette +LSC 48151 2002 0 Fisher +LSC 48153 2002 4 Floyd +LSC 48155 2002 0 Foard +LSC 48157 2002 661 Fort Bend +LSC 48159 2002 4 Franklin +LSC 48161 2002 4 Freestone +LSC 48163 2002 0 Frio +LSC 48165 2002 4 Gaines +LSC 48167 2002 227 Galveston +LSC 48169 2002 4 Garza +LSC 48171 2002 17 Gillespie +LSC 48173 2002 0 Glasscock +LSC 48175 2002 0 Goliad +LSC 48177 2002 0 Gonzales +LSC 48179 2002 40 Gray +LSC 48181 2002 134 Grayson +LSC 48183 2002 268 Gregg +LSC 48185 2002 29 Grimes +LSC 48187 2002 74 Guadalupe +LSC 48189 2002 8 Hale +LSC 48191 2002 0 Hall +LSC 48193 2002 4 Hamilton +LSC 48195 2002 4 Hansford +LSC 48197 2002 0 Hardeman +LSC 48199 2002 16 Hardin +LSC 48201 2002 6416 Harris +LSC 48203 2002 18 Harrison +LSC 48205 2002 4 Hartley +LSC 48207 2002 0 Haskell +LSC 48209 2002 60 Hays +LSC 48211 2002 4 Hemphill +LSC 48213 2002 79 Henderson +LSC 48215 2002 128 Hidalgo +LSC 48217 2002 0 Hill +LSC 48219 2002 4 Hockley +LSC 48221 2002 61 Hood +LSC 48223 2002 4 Hopkins +LSC 48225 2002 0 Houston +LSC 48227 2002 4 Howard +LSC 48229 2002 0 Hudspeth +LSC 48231 2002 66 Hunt +LSC 48233 2002 4 Hutchinson +LSC 48235 2002 4 Irion +LSC 48237 2002 4 Jack +LSC 48239 2002 4 Jackson +LSC 48241 2002 7 Jasper +LSC 48243 2002 4 Jeff Davis +LSC 48245 2002 444 Jefferson +LSC 48247 2002 0 Jim Hogg +LSC 48249 2002 21 Jim Wells +LSC 48251 2002 113 Johnson +LSC 48253 2002 0 Jones +LSC 48255 2002 0 Karnes +LSC 48257 2002 41 Kaufman +LSC 48259 2002 83 Kendall +LSC 48261 2002 0 Kenedy +LSC 48263 2002 0 Kent +LSC 48265 2002 62 Kerr +LSC 48267 2002 0 Kimble +LSC 48269 2002 0 King +LSC 48271 2002 0 Kinney +LSC 48273 2002 4 Kleberg +LSC 48275 2002 0 Knox +LSC 48277 2002 22 Lamar +LSC 48279 2002 4 Lamb +LSC 48281 2002 4 Lampasas +LSC 48283 2002 0 La Salle +LSC 48285 2002 0 Lavaca +LSC 48287 2002 4 Lee +LSC 48289 2002 0 Leon +LSC 48291 2002 28 Liberty +LSC 48293 2002 4 Limestone +LSC 48295 2002 0 Lipscomb +LSC 48297 2002 0 Live Oak +LSC 48299 2002 9 Llano +LSC 48301 2002 0 Loving +LSC 48303 2002 165 Lubbock +LSC 48305 2002 4 Lynn +LSC 48307 2002 0 McCulloch +LSC 48309 2002 208 McLennan +LSC 48311 2002 0 McMullen +LSC 48313 2002 0 Madison +LSC 48315 2002 0 Marion +LSC 48317 2002 4 Martin +LSC 48319 2002 0 Mason +LSC 48321 2002 60 Matagorda +LSC 48323 2002 0 Maverick +LSC 48325 2002 10 Medina +LSC 48327 2002 0 Menard +LSC 48329 2002 164 Midland +LSC 48331 2002 28 Milam +LSC 48333 2002 0 Mills +LSC 48335 2002 0 Mitchell +LSC 48337 2002 4 Montague +LSC 48339 2002 556 Montgomery +LSC 48341 2002 4 Moore +LSC 48343 2002 4 Morris +LSC 48345 2002 1 Motley +LSC 48347 2002 25 Nacogdoches +LSC 48349 2002 77 Navarro +LSC 48351 2002 4 Newton +LSC 48353 2002 4 Nolan +LSC 48355 2002 260 Nueces +LSC 48357 2002 0 Ochiltree +LSC 48359 2002 0 Oldham +LSC 48361 2002 100 Orange +LSC 48363 2002 15 Palo Pinto +LSC 48365 2002 4 Panola +LSC 48367 2002 87 Parker +LSC 48369 2002 4 Parmer +LSC 48371 2002 0 Pecos +LSC 48373 2002 4 Polk +LSC 48375 2002 51 Potter +LSC 48377 2002 0 Presidio +LSC 48379 2002 0 Rains +LSC 48381 2002 64 Randall +LSC 48383 2002 0 Reagan +LSC 48385 2002 4 Real +LSC 48387 2002 4 Red River +LSC 48389 2002 0 Reeves +LSC 48391 2002 4 Refugio +LSC 48393 2002 0 Roberts +LSC 48395 2002 4 Robertson +LSC 48397 2002 192 Rockwall +LSC 48399 2002 4 Runnels +LSC 48401 2002 4 Rusk +LSC 48403 2002 12 Sabine +LSC 48405 2002 0 San Augustine +LSC 48407 2002 4 San Jacinto +LSC 48409 2002 65 San Patricio +LSC 48411 2002 0 San Saba +LSC 48413 2002 0 Schleicher +LSC 48415 2002 4 Scurry +LSC 48417 2002 0 Shackelford +LSC 48419 2002 28 Shelby +LSC 48421 2002 4 Sherman +LSC 48423 2002 424 Smith +LSC 48425 2002 4 Somervell +LSC 48427 2002 0 Starr +LSC 48429 2002 0 Stephens +LSC 48431 2002 0 Sterling +LSC 48433 2002 0 Stonewall +LSC 48435 2002 0 Sutton +LSC 48437 2002 0 Swisher +LSC 48439 2002 2018 Tarrant +LSC 48441 2002 137 Taylor +LSC 48443 2002 0 Terrell +LSC 48445 2002 0 Terry +LSC 48447 2002 0 Throckmorton +LSC 48449 2002 14 Titus +LSC 48451 2002 94 Tom Green +LSC 48453 2002 2403 Travis +LSC 48455 2002 0 Trinity +LSC 48457 2002 4 Tyler +LSC 48459 2002 27 Upshur +LSC 48461 2002 0 Upton +LSC 48463 2002 4 Uvalde +LSC 48465 2002 13 Val Verde +LSC 48467 2002 12 Van Zandt +LSC 48469 2002 58 Victoria +LSC 48471 2002 20 Walker +LSC 48473 2002 95 Waller +LSC 48475 2002 0 Ward +LSC 48477 2002 80 Washington +LSC 48479 2002 112 Webb +LSC 48481 2002 77 Wharton +LSC 48483 2002 0 Wheeler +LSC 48485 2002 75 Wichita +LSC 48487 2002 0 Wilbarger +LSC 48489 2002 0 Willacy +LSC 48491 2002 498 Williamson +LSC 48493 2002 4 Wilson +LSC 48495 2002 0 Winkler +LSC 48497 2002 4 Wise +LSC 48499 2002 18 Wood +LSC 48501 2002 4 Yoakum +LSC 48503 2002 4 Young +LSC 48505 2002 0 Zapata +LSC 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_MNFG.ALO new file mode 100644 index 0000000..a8760c1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_MNFG.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 48000 2002 1602760 TX +MFG 48001 2002 683 Anderson +MFG 48003 2002 780 Andrews +MFG 48005 2002 9946 Angelina +MFG 48007 2002 208 Aransas +MFG 48009 2002 33 Archer +MFG 48011 2002 18 Armstrong +MFG 48013 2002 989 Atascosa +MFG 48015 2002 3639 Austin +MFG 48017 2002 194 Bailey +MFG 48019 2002 198 Bandera +MFG 48021 2002 2058 Bastrop +MFG 48023 2002 118 Baylor +MFG 48025 2002 504 Bee +MFG 48027 2002 14275 Bell +MFG 48029 2002 62354 Bexar +MFG 48031 2002 185 Blanco +MFG 48033 2002 0 Borden +MFG 48035 2002 808 Bosque +MFG 48037 2002 7035 Bowie +MFG 48039 2002 25178 Brazoria +MFG 48041 2002 8099 Brazos +MFG 48043 2002 88 Brewster +MFG 48045 2002 26 Briscoe +MFG 48047 2002 41 Brooks +MFG 48049 2002 6220 Brown +MFG 48051 2002 674 Burleson +MFG 48053 2002 1720 Burnet +MFG 48055 2002 725 Caldwell +MFG 48057 2002 6322 Calhoun +MFG 48059 2002 216 Callahan +MFG 48061 2002 14456 Cameron +MFG 48063 2002 364 Camp +MFG 48065 2002 134 Carson +MFG 48067 2002 1193 Cass +MFG 48069 2002 206 Castro +MFG 48071 2002 1448 Chambers +MFG 48073 2002 6249 Cherokee +MFG 48075 2002 34 Childress +MFG 48077 2002 402 Clay +MFG 48079 2002 17 Cochran +MFG 48081 2002 17 Coke +MFG 48083 2002 142 Coleman +MFG 48085 2002 48077 Collin +MFG 48087 2002 26 Collingsworth +MFG 48089 2002 1197 Colorado +MFG 48091 2002 7974 Comal +MFG 48093 2002 314 Comanche +MFG 48095 2002 25 Concho +MFG 48097 2002 7042 Cooke +MFG 48099 2002 916 Coryell +MFG 48101 2002 17 Cottle +MFG 48103 2002 114 Crane +MFG 48105 2002 8 Crockett +MFG 48107 2002 67 Crosby +MFG 48109 2002 104 Culberson +MFG 48111 2002 113 Dallam +MFG 48113 2002 255726 Dallas +MFG 48115 2002 232 Dawson +MFG 48117 2002 1005 Deaf Smith +MFG 48119 2002 339 Delta +MFG 48121 2002 22078 Denton +MFG 48123 2002 1153 DeWitt +MFG 48125 2002 8 Dickens +MFG 48127 2002 25 Dimmit +MFG 48129 2002 81 Donley +MFG 48131 2002 42 Duval +MFG 48133 2002 1677 Eastland +MFG 48135 2002 8641 Ector +MFG 48137 2002 8 Edwards +MFG 48139 2002 18924 Ellis +MFG 48141 2002 43740 El Paso +MFG 48143 2002 2790 Erath +MFG 48145 2002 567 Falls +MFG 48147 2002 1748 Fannin +MFG 48149 2002 1960 Fayette +MFG 48151 2002 121 Fisher +MFG 48153 2002 125 Floyd +MFG 48155 2002 56 Foard +MFG 48157 2002 20501 Fort Bend +MFG 48159 2002 251 Franklin +MFG 48161 2002 239 Freestone +MFG 48163 2002 123 Frio +MFG 48165 2002 251 Gaines +MFG 48167 2002 13637 Galveston +MFG 48169 2002 65 Garza +MFG 48171 2002 953 Gillespie +MFG 48173 2002 0 Glasscock +MFG 48175 2002 122 Goliad +MFG 48177 2002 1071 Gonzales +MFG 48179 2002 2324 Gray +MFG 48181 2002 13555 Grayson +MFG 48183 2002 20335 Gregg +MFG 48185 2002 4288 Grimes +MFG 48187 2002 10934 Guadalupe +MFG 48189 2002 3190 Hale +MFG 48191 2002 81 Hall +MFG 48193 2002 355 Hamilton +MFG 48195 2002 17 Hansford +MFG 48197 2002 328 Hardeman +MFG 48199 2002 1922 Hardin +MFG 48201 2002 285493 Harris +MFG 48203 2002 5169 Harrison +MFG 48205 2002 60 Hartley +MFG 48207 2002 89 Haskell +MFG 48209 2002 5859 Hays +MFG 48211 2002 33 Hemphill +MFG 48213 2002 3761 Henderson +MFG 48215 2002 13677 Hidalgo +MFG 48217 2002 2263 Hill +MFG 48219 2002 463 Hockley +MFG 48221 2002 917 Hood +MFG 48223 2002 2163 Hopkins +MFG 48225 2002 1629 Houston +MFG 48227 2002 1996 Howard +MFG 48229 2002 0 Hudspeth +MFG 48231 2002 4941 Hunt +MFG 48233 2002 3876 Hutchinson +MFG 48235 2002 9 Irion +MFG 48237 2002 27 Jack +MFG 48239 2002 3185 Jackson +MFG 48241 2002 4168 Jasper +MFG 48243 2002 8 Jeff Davis +MFG 48245 2002 23366 Jefferson +MFG 48247 2002 89 Jim Hogg +MFG 48249 2002 541 Jim Wells +MFG 48251 2002 9467 Johnson +MFG 48253 2002 314 Jones +MFG 48255 2002 252 Karnes +MFG 48257 2002 8176 Kaufman +MFG 48259 2002 1539 Kendall +MFG 48261 2002 0 Kenedy +MFG 48263 2002 0 Kent +MFG 48265 2002 1787 Kerr +MFG 48267 2002 579 Kimble +MFG 48269 2002 0 King +MFG 48271 2002 17 Kinney +MFG 48273 2002 374 Kleberg +MFG 48275 2002 18 Knox +MFG 48277 2002 7413 Lamar +MFG 48279 2002 796 Lamb +MFG 48281 2002 597 Lampasas +MFG 48283 2002 0 La Salle +MFG 48285 2002 3282 Lavaca +MFG 48287 2002 825 Lee +MFG 48289 2002 896 Leon +MFG 48291 2002 2182 Liberty +MFG 48293 2002 1614 Limestone +MFG 48295 2002 179 Lipscomb +MFG 48297 2002 706 Live Oak +MFG 48299 2002 227 Llano +MFG 48301 2002 0 Loving +MFG 48303 2002 10519 Lubbock +MFG 48305 2002 60 Lynn +MFG 48307 2002 490 McCulloch +MFG 48309 2002 23453 McLennan +MFG 48311 2002 0 McMullen +MFG 48313 2002 93 Madison +MFG 48315 2002 380 Marion +MFG 48317 2002 0 Martin +MFG 48319 2002 52 Mason +MFG 48321 2002 944 Matagorda +MFG 48323 2002 451 Maverick +MFG 48325 2002 1011 Medina +MFG 48327 2002 26 Menard +MFG 48329 2002 3057 Midland +MFG 48331 2002 3698 Milam +MFG 48333 2002 165 Mills +MFG 48335 2002 26 Mitchell +MFG 48337 2002 580 Montague +MFG 48339 2002 13118 Montgomery +MFG 48341 2002 3922 Moore +MFG 48343 2002 4464 Morris +MFG 48345 2002 27 Motley +MFG 48347 2002 6325 Nacogdoches +MFG 48349 2002 4782 Navarro +MFG 48351 2002 697 Newton +MFG 48353 2002 1608 Nolan +MFG 48355 2002 15727 Nueces +MFG 48357 2002 55 Ochiltree +MFG 48359 2002 27 Oldham +MFG 48361 2002 10645 Orange +MFG 48363 2002 2332 Palo Pinto +MFG 48365 2002 1979 Panola +MFG 48367 2002 4299 Parker +MFG 48369 2002 1652 Parmer +MFG 48371 2002 109 Pecos +MFG 48373 2002 2886 Polk +MFG 48375 2002 8460 Potter +MFG 48377 2002 34 Presidio +MFG 48379 2002 194 Rains +MFG 48381 2002 3412 Randall +MFG 48383 2002 34 Reagan +MFG 48385 2002 40 Real +MFG 48387 2002 1361 Red River +MFG 48389 2002 763 Reeves +MFG 48391 2002 34 Refugio +MFG 48393 2002 0 Roberts +MFG 48395 2002 555 Robertson +MFG 48397 2002 2151 Rockwall +MFG 48399 2002 1944 Runnels +MFG 48401 2002 2329 Rusk +MFG 48403 2002 729 Sabine +MFG 48405 2002 212 San Augustine +MFG 48407 2002 116 San Jacinto +MFG 48409 2002 3574 San Patricio +MFG 48411 2002 72 San Saba +MFG 48413 2002 34 Schleicher +MFG 48415 2002 388 Scurry +MFG 48417 2002 35 Shackelford +MFG 48419 2002 2794 Shelby +MFG 48421 2002 56 Sherman +MFG 48423 2002 20598 Smith +MFG 48425 2002 388 Somervell +MFG 48427 2002 186 Starr +MFG 48429 2002 790 Stephens +MFG 48431 2002 0 Sterling +MFG 48433 2002 8 Stonewall +MFG 48435 2002 26 Sutton +MFG 48437 2002 261 Swisher +MFG 48439 2002 161316 Tarrant +MFG 48441 2002 5236 Taylor +MFG 48443 2002 0 Terrell +MFG 48445 2002 80 Terry +MFG 48447 2002 19 Throckmorton +MFG 48449 2002 5742 Titus +MFG 48451 2002 7097 Tom Green +MFG 48453 2002 84422 Travis +MFG 48455 2002 307 Trinity +MFG 48457 2002 531 Tyler +MFG 48459 2002 1239 Upshur +MFG 48461 2002 8 Upton +MFG 48463 2002 442 Uvalde +MFG 48465 2002 965 Val Verde +MFG 48467 2002 1165 Van Zandt +MFG 48469 2002 5845 Victoria +MFG 48471 2002 1821 Walker +MFG 48473 2002 3743 Waller +MFG 48475 2002 48 Ward +MFG 48477 2002 4363 Washington +MFG 48479 2002 2681 Webb +MFG 48481 2002 3571 Wharton +MFG 48483 2002 81 Wheeler +MFG 48485 2002 13582 Wichita +MFG 48487 2002 1209 Wilbarger +MFG 48489 2002 17 Willacy +MFG 48491 2002 14907 Williamson +MFG 48493 2002 503 Wilson +MFG 48495 2002 8 Winkler +MFG 48497 2002 2432 Wise +MFG 48499 2002 1542 Wood +MFG 48501 2002 111 Yoakum +MFG 48503 2002 1451 Young +MFG 48505 2002 25 Zapata +MFG 48507 2002 414 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_OIL.ALO new file mode 100644 index 0000000..7ade753 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_OIL.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 48000 2002 60013 TX +OIL 48001 2002 104 Anderson +OIL 48003 2002 159 Andrews +OIL 48005 2002 29 Angelina +OIL 48007 2002 17 Aransas +OIL 48009 2002 174 Archer +OIL 48011 2002 17 Armstrong +OIL 48013 2002 221 Atascosa +OIL 48015 2002 17 Austin +OIL 48017 2002 0 Bailey +OIL 48019 2002 17 Bandera +OIL 48021 2002 0 Bastrop +OIL 48023 2002 17 Baylor +OIL 48025 2002 92 Bee +OIL 48027 2002 17 Bell +OIL 48029 2002 1509 Bexar +OIL 48031 2002 12 Blanco +OIL 48033 2002 0 Borden +OIL 48035 2002 0 Bosque +OIL 48037 2002 0 Bowie +OIL 48039 2002 372 Brazoria +OIL 48041 2002 116 Brazos +OIL 48043 2002 17 Brewster +OIL 48045 2002 0 Briscoe +OIL 48047 2002 17 Brooks +OIL 48049 2002 29 Brown +OIL 48051 2002 104 Burleson +OIL 48053 2002 17 Burnet +OIL 48055 2002 104 Caldwell +OIL 48057 2002 104 Calhoun +OIL 48059 2002 87 Callahan +OIL 48061 2002 0 Cameron +OIL 48063 2002 0 Camp +OIL 48065 2002 17 Carson +OIL 48067 2002 17 Cass +OIL 48069 2002 0 Castro +OIL 48071 2002 524 Chambers +OIL 48073 2002 12 Cherokee +OIL 48075 2002 0 Childress +OIL 48077 2002 17 Clay +OIL 48079 2002 17 Cochran +OIL 48081 2002 302 Coke +OIL 48083 2002 17 Coleman +OIL 48085 2002 206 Collin +OIL 48087 2002 12 Collingsworth +OIL 48089 2002 116 Colorado +OIL 48091 2002 17 Comal +OIL 48093 2002 29 Comanche +OIL 48095 2002 0 Concho +OIL 48097 2002 179 Cooke +OIL 48099 2002 0 Coryell +OIL 48101 2002 0 Cottle +OIL 48103 2002 302 Crane +OIL 48105 2002 104 Crockett +OIL 48107 2002 17 Crosby +OIL 48109 2002 17 Culberson +OIL 48111 2002 0 Dallam +OIL 48113 2002 7288 Dallas +OIL 48115 2002 116 Dawson +OIL 48117 2002 0 Deaf Smith +OIL 48119 2002 0 Delta +OIL 48121 2002 109 Denton +OIL 48123 2002 17 DeWitt +OIL 48125 2002 17 Dickens +OIL 48127 2002 19 Dimmit +OIL 48129 2002 0 Donley +OIL 48131 2002 174 Duval +OIL 48133 2002 116 Eastland +OIL 48135 2002 804 Ector +OIL 48137 2002 0 Edwards +OIL 48139 2002 12 Ellis +OIL 48141 2002 29 El Paso +OIL 48143 2002 29 Erath +OIL 48145 2002 0 Falls +OIL 48147 2002 0 Fannin +OIL 48149 2002 104 Fayette +OIL 48151 2002 0 Fisher +OIL 48153 2002 17 Floyd +OIL 48155 2002 17 Foard +OIL 48157 2002 86 Fort Bend +OIL 48159 2002 29 Franklin +OIL 48161 2002 116 Freestone +OIL 48163 2002 116 Frio +OIL 48165 2002 128 Gaines +OIL 48167 2002 17 Galveston +OIL 48169 2002 55 Garza +OIL 48171 2002 17 Gillespie +OIL 48173 2002 17 Glasscock +OIL 48175 2002 17 Goliad +OIL 48177 2002 29 Gonzales +OIL 48179 2002 364 Gray +OIL 48181 2002 104 Grayson +OIL 48183 2002 1737 Gregg +OIL 48185 2002 116 Grimes +OIL 48187 2002 29 Guadalupe +OIL 48189 2002 29 Hale +OIL 48191 2002 0 Hall +OIL 48193 2002 0 Hamilton +OIL 48195 2002 65 Hansford +OIL 48197 2002 0 Hardeman +OIL 48199 2002 17 Hardin +OIL 48201 2002 22347 Harris +OIL 48203 2002 506 Harrison +OIL 48205 2002 0 Hartley +OIL 48207 2002 29 Haskell +OIL 48209 2002 20 Hays +OIL 48211 2002 174 Hemphill +OIL 48213 2002 116 Henderson +OIL 48215 2002 171 Hidalgo +OIL 48217 2002 0 Hill +OIL 48219 2002 446 Hockley +OIL 48221 2002 29 Hood +OIL 48223 2002 0 Hopkins +OIL 48225 2002 17 Houston +OIL 48227 2002 174 Howard +OIL 48229 2002 0 Hudspeth +OIL 48231 2002 12 Hunt +OIL 48233 2002 248 Hutchinson +OIL 48235 2002 104 Irion +OIL 48237 2002 209 Jack +OIL 48239 2002 104 Jackson +OIL 48241 2002 17 Jasper +OIL 48243 2002 0 Jeff Davis +OIL 48245 2002 95 Jefferson +OIL 48247 2002 104 Jim Hogg +OIL 48249 2002 87 Jim Wells +OIL 48251 2002 29 Johnson +OIL 48253 2002 87 Jones +OIL 48255 2002 29 Karnes +OIL 48257 2002 17 Kaufman +OIL 48259 2002 29 Kendall +OIL 48261 2002 0 Kenedy +OIL 48263 2002 104 Kent +OIL 48265 2002 48 Kerr +OIL 48267 2002 12 Kimble +OIL 48269 2002 0 King +OIL 48271 2002 0 Kinney +OIL 48273 2002 302 Kleberg +OIL 48275 2002 0 Knox +OIL 48277 2002 17 Lamar +OIL 48279 2002 0 Lamb +OIL 48281 2002 0 Lampasas +OIL 48283 2002 104 La Salle +OIL 48285 2002 81 Lavaca +OIL 48287 2002 6 Lee +OIL 48289 2002 29 Leon +OIL 48291 2002 29 Liberty +OIL 48293 2002 17 Limestone +OIL 48295 2002 104 Lipscomb +OIL 48297 2002 29 Live Oak +OIL 48299 2002 17 Llano +OIL 48301 2002 0 Loving +OIL 48303 2002 23 Lubbock +OIL 48305 2002 0 Lynn +OIL 48307 2002 0 McCulloch +OIL 48309 2002 17 McLennan +OIL 48311 2002 17 McMullen +OIL 48313 2002 17 Madison +OIL 48315 2002 0 Marion +OIL 48317 2002 17 Martin +OIL 48319 2002 0 Mason +OIL 48321 2002 63 Matagorda +OIL 48323 2002 0 Maverick +OIL 48325 2002 80 Medina +OIL 48327 2002 0 Menard +OIL 48329 2002 4843 Midland +OIL 48331 2002 24 Milam +OIL 48333 2002 0 Mills +OIL 48335 2002 17 Mitchell +OIL 48337 2002 93 Montague +OIL 48339 2002 351 Montgomery +OIL 48341 2002 104 Moore +OIL 48343 2002 12 Morris +OIL 48345 2002 0 Motley +OIL 48347 2002 0 Nacogdoches +OIL 48349 2002 98 Navarro +OIL 48351 2002 0 Newton +OIL 48353 2002 104 Nolan +OIL 48355 2002 1159 Nueces +OIL 48357 2002 76 Ochiltree +OIL 48359 2002 0 Oldham +OIL 48361 2002 17 Orange +OIL 48363 2002 150 Palo Pinto +OIL 48365 2002 116 Panola +OIL 48367 2002 116 Parker +OIL 48369 2002 12 Parmer +OIL 48371 2002 154 Pecos +OIL 48373 2002 0 Polk +OIL 48375 2002 173 Potter +OIL 48377 2002 0 Presidio +OIL 48379 2002 0 Rains +OIL 48381 2002 29 Randall +OIL 48383 2002 17 Reagan +OIL 48385 2002 17 Real +OIL 48387 2002 17 Red River +OIL 48389 2002 17 Reeves +OIL 48391 2002 14 Refugio +OIL 48393 2002 0 Roberts +OIL 48395 2002 17 Robertson +OIL 48397 2002 29 Rockwall +OIL 48399 2002 29 Runnels +OIL 48401 2002 174 Rusk +OIL 48403 2002 0 Sabine +OIL 48405 2002 0 San Augustine +OIL 48407 2002 17 San Jacinto +OIL 48409 2002 174 San Patricio +OIL 48411 2002 0 San Saba +OIL 48413 2002 0 Schleicher +OIL 48415 2002 446 Scurry +OIL 48417 2002 289 Shackelford +OIL 48419 2002 29 Shelby +OIL 48421 2002 0 Sherman +OIL 48423 2002 277 Smith +OIL 48425 2002 12 Somervell +OIL 48427 2002 29 Starr +OIL 48429 2002 175 Stephens +OIL 48431 2002 116 Sterling +OIL 48433 2002 0 Stonewall +OIL 48435 2002 145 Sutton +OIL 48437 2002 17 Swisher +OIL 48439 2002 1104 Tarrant +OIL 48441 2002 1004 Taylor +OIL 48443 2002 0 Terrell +OIL 48445 2002 17 Terry +OIL 48447 2002 28 Throckmorton +OIL 48449 2002 17 Titus +OIL 48451 2002 948 Tom Green +OIL 48453 2002 222 Travis +OIL 48455 2002 0 Trinity +OIL 48457 2002 0 Tyler +OIL 48459 2002 29 Upshur +OIL 48461 2002 302 Upton +OIL 48463 2002 12 Uvalde +OIL 48465 2002 0 Val Verde +OIL 48467 2002 174 Van Zandt +OIL 48469 2002 177 Victoria +OIL 48471 2002 17 Walker +OIL 48473 2002 87 Waller +OIL 48475 2002 116 Ward +OIL 48477 2002 87 Washington +OIL 48479 2002 187 Webb +OIL 48481 2002 87 Wharton +OIL 48483 2002 28 Wheeler +OIL 48485 2002 574 Wichita +OIL 48487 2002 12 Wilbarger +OIL 48489 2002 0 Willacy +OIL 48491 2002 20 Williamson +OIL 48493 2002 17 Wilson +OIL 48495 2002 73 Winkler +OIL 48497 2002 508 Wise +OIL 48499 2002 29 Wood +OIL 48501 2002 314 Yoakum +OIL 48503 2002 417 Young +OIL 48505 2002 104 Zapata +OIL 48507 2002 17 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_POP.ALO new file mode 100644 index 0000000..2608653 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_POP.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 48000 2002 21723220 TX +POP 48001 2002 54608 Anderson +POP 48003 2002 12924 Andrews +POP 48005 2002 80468 Angelina +POP 48007 2002 23085 Aransas +POP 48009 2002 9019 Archer +POP 48011 2002 2116 Armstrong +POP 48013 2002 41135 Atascosa +POP 48015 2002 24635 Austin +POP 48017 2002 6522 Bailey +POP 48019 2002 18964 Bandera +POP 48021 2002 64242 Bastrop +POP 48023 2002 3914 Baylor +POP 48025 2002 32284 Bee +POP 48027 2002 244717 Bell +POP 48029 2002 1441793 Bexar +POP 48031 2002 8812 Blanco +POP 48033 2002 687 Borden +POP 48035 2002 17593 Bosque +POP 48037 2002 89580 Bowie +POP 48039 2002 256935 Brazoria +POP 48041 2002 153569 Brazos +POP 48043 2002 9076 Brewster +POP 48045 2002 1698 Briscoe +POP 48047 2002 7771 Brooks +POP 48049 2002 38022 Brown +POP 48051 2002 16757 Burleson +POP 48053 2002 37601 Burnet +POP 48055 2002 34877 Caldwell +POP 48057 2002 20430 Calhoun +POP 48059 2002 12929 Callahan +POP 48061 2002 353086 Cameron +POP 48063 2002 11651 Camp +POP 48065 2002 6605 Carson +POP 48067 2002 30174 Cass +POP 48069 2002 8019 Castro +POP 48071 2002 27138 Chambers +POP 48073 2002 47053 Cherokee +POP 48075 2002 7583 Childress +POP 48077 2002 11270 Clay +POP 48079 2002 3518 Cochran +POP 48081 2002 3798 Coke +POP 48083 2002 8876 Coleman +POP 48085 2002 568894 Collin +POP 48087 2002 3113 Collingsworth +POP 48089 2002 20450 Colorado +POP 48091 2002 84730 Comal +POP 48093 2002 13548 Comanche +POP 48095 2002 3822 Concho +POP 48097 2002 37761 Cooke +POP 48099 2002 74629 Coryell +POP 48101 2002 1772 Cottle +POP 48103 2002 3914 Crane +POP 48105 2002 3894 Crockett +POP 48107 2002 6863 Crosby +POP 48109 2002 2828 Culberson +POP 48111 2002 6160 Dallam +POP 48113 2002 2272665 Dallas +POP 48115 2002 14533 Dawson +POP 48117 2002 18398 Deaf Smith +POP 48119 2002 5418 Delta +POP 48121 2002 488199 Denton +POP 48123 2002 20043 DeWitt +POP 48125 2002 2699 Dickens +POP 48127 2002 10247 Dimmit +POP 48129 2002 3878 Donley +POP 48131 2002 12819 Duval +POP 48133 2002 18231 Eastland +POP 48135 2002 122419 Ector +POP 48137 2002 2065 Edwards +POP 48139 2002 120238 Ellis +POP 48141 2002 693570 El Paso +POP 48143 2002 33116 Erath +POP 48145 2002 17930 Falls +POP 48147 2002 31831 Fannin +POP 48149 2002 22245 Fayette +POP 48151 2002 4229 Fisher +POP 48153 2002 7372 Floyd +POP 48155 2002 1562 Foard +POP 48157 2002 398815 Fort Bend +POP 48159 2002 9744 Franklin +POP 48161 2002 18426 Freestone +POP 48163 2002 16366 Frio +POP 48165 2002 14229 Gaines +POP 48167 2002 260806 Galveston +POP 48169 2002 5038 Garza +POP 48171 2002 21644 Gillespie +POP 48173 2002 1350 Glasscock +POP 48175 2002 7067 Goliad +POP 48177 2002 18841 Gonzales +POP 48179 2002 21895 Gray +POP 48181 2002 113696 Grayson +POP 48183 2002 113152 Gregg +POP 48185 2002 24696 Grimes +POP 48187 2002 94326 Guadalupe +POP 48189 2002 35719 Hale +POP 48191 2002 3752 Hall +POP 48193 2002 7969 Hamilton +POP 48195 2002 5250 Hansford +POP 48197 2002 4512 Hardeman +POP 48199 2002 49200 Hardin +POP 48201 2002 3539644 Harris +POP 48203 2002 62268 Harrison +POP 48205 2002 5174 Hartley +POP 48207 2002 5841 Haskell +POP 48209 2002 111364 Hays +POP 48211 2002 3345 Hemphill +POP 48213 2002 75556 Henderson +POP 48215 2002 612791 Hidalgo +POP 48217 2002 33637 Hill +POP 48219 2002 22708 Hockley +POP 48221 2002 43953 Hood +POP 48223 2002 32343 Hopkins +POP 48225 2002 23164 Houston +POP 48227 2002 33167 Howard +POP 48229 2002 3336 Hudspeth +POP 48231 2002 79876 Hunt +POP 48233 2002 23144 Hutchinson +POP 48235 2002 1752 Irion +POP 48237 2002 8924 Jack +POP 48239 2002 14291 Jackson +POP 48241 2002 35680 Jasper +POP 48243 2002 2212 Jeff Davis +POP 48245 2002 249030 Jefferson +POP 48247 2002 5144 Jim Hogg +POP 48249 2002 40077 Jim Wells +POP 48251 2002 135762 Johnson +POP 48253 2002 20233 Jones +POP 48255 2002 15327 Karnes +POP 48257 2002 78061 Kaufman +POP 48259 2002 25321 Kendall +POP 48261 2002 408 Kenedy +POP 48263 2002 809 Kent +POP 48265 2002 44822 Kerr +POP 48267 2002 4507 Kimble +POP 48269 2002 312 King +POP 48271 2002 3413 Kinney +POP 48273 2002 31138 Kleberg +POP 48275 2002 3974 Knox +POP 48277 2002 49091 Lamar +POP 48279 2002 14646 Lamb +POP 48281 2002 18826 Lampasas +POP 48283 2002 5826 La Salle +POP 48285 2002 18988 Lavaca +POP 48287 2002 16319 Lee +POP 48289 2002 15866 Leon +POP 48291 2002 73623 Liberty +POP 48293 2002 22403 Limestone +POP 48295 2002 3041 Lipscomb +POP 48297 2002 12039 Live Oak +POP 48299 2002 17884 Llano +POP 48301 2002 66 Loving +POP 48303 2002 247303 Lubbock +POP 48305 2002 6383 Lynn +POP 48307 2002 7883 McCulloch +POP 48309 2002 217241 McLennan +POP 48311 2002 858 McMullen +POP 48313 2002 12803 Madison +POP 48315 2002 11029 Marion +POP 48317 2002 4646 Martin +POP 48319 2002 3756 Mason +POP 48321 2002 38037 Matagorda +POP 48323 2002 48810 Maverick +POP 48325 2002 40725 Medina +POP 48327 2002 2362 Menard +POP 48329 2002 117448 Midland +POP 48331 2002 25052 Milam +POP 48333 2002 5114 Mills +POP 48335 2002 9454 Mitchell +POP 48337 2002 19228 Montague +POP 48339 2002 328508 Montgomery +POP 48341 2002 20141 Moore +POP 48343 2002 13214 Morris +POP 48345 2002 1290 Motley +POP 48347 2002 59237 Nacogdoches +POP 48349 2002 46805 Navarro +POP 48351 2002 14904 Newton +POP 48353 2002 15167 Nolan +POP 48355 2002 314037 Nueces +POP 48357 2002 9072 Ochiltree +POP 48359 2002 2149 Oldham +POP 48361 2002 84403 Orange +POP 48363 2002 27163 Palo Pinto +POP 48365 2002 22781 Panola +POP 48367 2002 94679 Parker +POP 48369 2002 9848 Parmer +POP 48371 2002 16314 Pecos +POP 48373 2002 44374 Polk +POP 48375 2002 115706 Potter +POP 48377 2002 7506 Presidio +POP 48379 2002 10383 Rains +POP 48381 2002 106375 Randall +POP 48383 2002 3159 Reagan +POP 48385 2002 2995 Real +POP 48387 2002 13949 Red River +POP 48389 2002 12535 Reeves +POP 48391 2002 7683 Refugio +POP 48393 2002 862 Roberts +POP 48395 2002 15916 Robertson +POP 48397 2002 50989 Rockwall +POP 48399 2002 11093 Runnels +POP 48401 2002 47476 Rusk +POP 48403 2002 10398 Sabine +POP 48405 2002 8903 San Augustine +POP 48407 2002 23261 San Jacinto +POP 48409 2002 67290 San Patricio +POP 48411 2002 6057 San Saba +POP 48413 2002 2906 Schleicher +POP 48415 2002 16007 Scurry +POP 48417 2002 3341 Shackelford +POP 48419 2002 25505 Shelby +POP 48421 2002 3177 Sherman +POP 48423 2002 180771 Smith +POP 48425 2002 7136 Somervell +POP 48427 2002 56216 Starr +POP 48429 2002 9470 Stephens +POP 48431 2002 1352 Sterling +POP 48433 2002 1500 Stonewall +POP 48435 2002 4107 Sutton +POP 48437 2002 8012 Swisher +POP 48439 2002 1525196 Tarrant +POP 48441 2002 124909 Taylor +POP 48443 2002 1021 Terrell +POP 48445 2002 12596 Terry +POP 48447 2002 1727 Throckmorton +POP 48449 2002 28250 Titus +POP 48451 2002 103494 Tom Green +POP 48453 2002 845642 Travis +POP 48455 2002 14077 Trinity +POP 48457 2002 20723 Tyler +POP 48459 2002 36539 Upshur +POP 48461 2002 3273 Upton +POP 48463 2002 26557 Uvalde +POP 48465 2002 45850 Val Verde +POP 48467 2002 50194 Van Zandt +POP 48469 2002 85107 Victoria +POP 48471 2002 61325 Walker +POP 48473 2002 34110 Waller +POP 48475 2002 10456 Ward +POP 48477 2002 30706 Washington +POP 48479 2002 206729 Webb +POP 48481 2002 41150 Wharton +POP 48483 2002 5002 Wheeler +POP 48485 2002 128685 Wichita +POP 48487 2002 14293 Wilbarger +POP 48489 2002 20024 Willacy +POP 48491 2002 290521 Williamson +POP 48493 2002 34374 Wilson +POP 48495 2002 6965 Winkler +POP 48497 2002 52897 Wise +POP 48499 2002 38041 Wood +POP 48501 2002 7223 Yoakum +POP 48503 2002 17706 Young +POP 48505 2002 12728 Zapata +POP 48507 2002 11638 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_RAIL.ALO new file mode 100644 index 0000000..4d02053 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_RAIL.ALO @@ -0,0 +1,281 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 48000 2002 77519.150 TX +RR 48001 2002 309.760 Anderson +RR 48003 2002 0.000 Andrews +RR 48005 2002 217.250 Angelina +RR 48007 2002 7.260 Aransas +RR 48009 2002 0.000 Archer +RR 48011 2002 659.390 Armstrong +RR 48013 2002 397.860 Atascosa +RR 48015 2002 516.610 Austin +RR 48017 2002 179.010 Bailey +RR 48019 2002 0.000 Bandera +RR 48021 2002 325.870 Bastrop +RR 48023 2002 0.000 Baylor +RR 48025 2002 0.000 Bee +RR 48027 2002 1466.530 Bell +RR 48029 2002 2325.740 Bexar +RR 48031 2002 0.000 Blanco +RR 48033 2002 0.000 Borden +RR 48035 2002 531.340 Bosque +RR 48037 2002 521.660 Bowie +RR 48039 2002 657.820 Brazoria +RR 48041 2002 315.450 Brazos +RR 48043 2002 443.040 Brewster +RR 48045 2002 0.000 Briscoe +RR 48047 2002 0.000 Brooks +RR 48049 2002 316.300 Brown +RR 48051 2002 636.580 Burleson +RR 48053 2002 0.000 Burnet +RR 48055 2002 615.070 Caldwell +RR 48057 2002 9.080 Calhoun +RR 48059 2002 179.050 Callahan +RR 48061 2002 122.000 Cameron +RR 48063 2002 261.730 Camp +RR 48065 2002 943.390 Carson +RR 48067 2002 542.980 Cass +RR 48069 2002 385.240 Castro +RR 48071 2002 37.570 Chambers +RR 48073 2002 179.130 Cherokee +RR 48075 2002 261.750 Childress +RR 48077 2002 290.880 Clay +RR 48079 2002 0.000 Cochran +RR 48081 2002 0.000 Coke +RR 48083 2002 267.520 Coleman +RR 48085 2002 323.500 Collin +RR 48087 2002 476.540 Collingsworth +RR 48089 2002 593.120 Colorado +RR 48091 2002 318.700 Comal +RR 48093 2002 0.000 Comanche +RR 48095 2002 0.000 Concho +RR 48097 2002 513.570 Cooke +RR 48099 2002 268.310 Coryell +RR 48101 2002 0.000 Cottle +RR 48103 2002 73.330 Crane +RR 48105 2002 0.000 Crockett +RR 48107 2002 0.000 Crosby +RR 48109 2002 675.130 Culberson +RR 48111 2002 1043.340 Dallam +RR 48113 2002 577.740 Dallas +RR 48115 2002 0.000 Dawson +RR 48117 2002 759.200 Deaf Smith +RR 48119 2002 0.000 Delta +RR 48121 2002 1029.710 Denton +RR 48123 2002 74.730 DeWitt +RR 48125 2002 0.000 Dickens +RR 48127 2002 0.000 Dimmit +RR 48129 2002 476.540 Donley +RR 48131 2002 0.000 Duval +RR 48133 2002 502.140 Eastland +RR 48135 2002 113.030 Ector +RR 48137 2002 0.000 Edwards +RR 48139 2002 257.320 Ellis +RR 48141 2002 2154.090 El Paso +RR 48143 2002 0.000 Erath +RR 48145 2002 622.990 Falls +RR 48147 2002 0.000 Fannin +RR 48149 2002 943.640 Fayette +RR 48151 2002 151.960 Fisher +RR 48153 2002 0.000 Floyd +RR 48155 2002 0.000 Foard +RR 48157 2002 921.570 Fort Bend +RR 48159 2002 72.900 Franklin +RR 48161 2002 354.460 Freestone +RR 48163 2002 311.330 Frio +RR 48165 2002 0.000 Gaines +RR 48167 2002 475.010 Galveston +RR 48169 2002 266.760 Garza +RR 48171 2002 0.000 Gillespie +RR 48173 2002 0.000 Glasscock +RR 48175 2002 5.440 Goliad +RR 48177 2002 696.420 Gonzales +RR 48179 2002 1145.220 Gray +RR 48181 2002 624.020 Grayson +RR 48183 2002 372.780 Gregg +RR 48185 2002 447.800 Grimes +RR 48187 2002 956.850 Guadalupe +RR 48189 2002 84.430 Hale +RR 48191 2002 577.350 Hall +RR 48193 2002 0.000 Hamilton +RR 48195 2002 0.000 Hansford +RR 48197 2002 450.790 Hardeman +RR 48199 2002 435.520 Hardin +RR 48201 2002 2481.970 Harris +RR 48203 2002 449.960 Harrison +RR 48205 2002 701.200 Hartley +RR 48207 2002 0.000 Haskell +RR 48209 2002 430.810 Hays +RR 48211 2002 913.530 Hemphill +RR 48213 2002 108.900 Henderson +RR 48215 2002 18.280 Hidalgo +RR 48217 2002 822.730 Hill +RR 48219 2002 69.300 Hockley +RR 48221 2002 0.000 Hood +RR 48223 2002 111.640 Hopkins +RR 48225 2002 63.470 Houston +RR 48227 2002 155.580 Howard +RR 48229 2002 947.390 Hudspeth +RR 48231 2002 123.180 Hunt +RR 48233 2002 0.000 Hutchinson +RR 48235 2002 0.000 Irion +RR 48237 2002 0.000 Jack +RR 48239 2002 161.980 Jackson +RR 48241 2002 76.260 Jasper +RR 48243 2002 588.150 Jeff Davis +RR 48245 2002 630.970 Jefferson +RR 48247 2002 0.000 Jim Hogg +RR 48249 2002 0.000 Jim Wells +RR 48251 2002 1024.690 Johnson +RR 48253 2002 0.000 Jones +RR 48255 2002 0.000 Karnes +RR 48257 2002 310.500 Kaufman +RR 48259 2002 0.000 Kendall +RR 48261 2002 79.610 Kenedy +RR 48263 2002 0.000 Kent +RR 48265 2002 0.000 Kerr +RR 48267 2002 0.000 Kimble +RR 48269 2002 0.000 King +RR 48271 2002 384.750 Kinney +RR 48273 2002 79.610 Kleberg +RR 48275 2002 0.000 Knox +RR 48277 2002 0.000 Lamar +RR 48279 2002 69.300 Lamb +RR 48281 2002 398.880 Lampasas +RR 48283 2002 600.670 La Salle +RR 48285 2002 74.730 Lavaca +RR 48287 2002 184.710 Lee +RR 48289 2002 428.220 Leon +RR 48291 2002 1008.140 Liberty +RR 48293 2002 136.760 Limestone +RR 48295 2002 913.530 Lipscomb +RR 48297 2002 58.340 Live Oak +RR 48299 2002 0.000 Llano +RR 48301 2002 0.000 Loving +RR 48303 2002 459.090 Lubbock +RR 48305 2002 266.760 Lynn +RR 48307 2002 0.000 McCulloch +RR 48309 2002 1203.070 McLennan +RR 48311 2002 0.000 McMullen +RR 48313 2002 83.330 Madison +RR 48315 2002 273.330 Marion +RR 48317 2002 79.880 Martin +RR 48319 2002 0.000 Mason +RR 48321 2002 311.340 Matagorda +RR 48323 2002 70.640 Maverick +RR 48325 2002 949.440 Medina +RR 48327 2002 0.000 Menard +RR 48329 2002 119.590 Midland +RR 48331 2002 834.290 Milam +RR 48333 2002 206.150 Mills +RR 48335 2002 116.660 Mitchell +RR 48337 2002 706.440 Montague +RR 48339 2002 783.230 Montgomery +RR 48341 2002 171.240 Moore +RR 48343 2002 326.290 Morris +RR 48345 2002 0.000 Motley +RR 48347 2002 220.060 Nacogdoches +RR 48349 2002 255.860 Navarro +RR 48351 2002 64.330 Newton +RR 48353 2002 415.000 Nolan +RR 48355 2002 197.010 Nueces +RR 48357 2002 0.000 Ochiltree +RR 48359 2002 540.140 Oldham +RR 48361 2002 515.230 Orange +RR 48363 2002 229.960 Palo Pinto +RR 48365 2002 54.700 Panola +RR 48367 2002 501.800 Parker +RR 48369 2002 729.690 Parmer +RR 48371 2002 390.740 Pecos +RR 48373 2002 251.210 Polk +RR 48375 2002 1447.450 Potter +RR 48377 2002 557.100 Presidio +RR 48379 2002 0.000 Rains +RR 48381 2002 664.790 Randall +RR 48383 2002 0.000 Reagan +RR 48385 2002 0.000 Real +RR 48387 2002 0.000 Red River +RR 48389 2002 239.680 Reeves +RR 48391 2002 114.240 Refugio +RR 48393 2002 913.530 Roberts +RR 48395 2002 834.390 Robertson +RR 48397 2002 0.000 Rockwall +RR 48399 2002 0.000 Runnels +RR 48401 2002 164.610 Rusk +RR 48403 2002 65.960 Sabine +RR 48405 2002 42.180 San Augustine +RR 48407 2002 109.790 San Jacinto +RR 48409 2002 343.750 San Patricio +RR 48411 2002 0.000 San Saba +RR 48413 2002 0.000 Schleicher +RR 48415 2002 402.010 Scurry +RR 48417 2002 0.000 Shackelford +RR 48419 2002 356.350 Shelby +RR 48421 2002 274.010 Sherman +RR 48423 2002 304.740 Smith +RR 48425 2002 0.000 Somervell +RR 48427 2002 0.000 Starr +RR 48429 2002 229.960 Stephens +RR 48431 2002 0.000 Sterling +RR 48433 2002 0.000 Stonewall +RR 48435 2002 0.000 Sutton +RR 48437 2002 67.280 Swisher +RR 48439 2002 2631.170 Tarrant +RR 48441 2002 642.110 Taylor +RR 48443 2002 668.160 Terrell +RR 48445 2002 0.000 Terry +RR 48447 2002 0.000 Throckmorton +RR 48449 2002 312.640 Titus +RR 48451 2002 0.000 Tom Green +RR 48453 2002 196.140 Travis +RR 48455 2002 48.120 Trinity +RR 48457 2002 0.000 Tyler +RR 48459 2002 392.650 Upshur +RR 48461 2002 0.000 Upton +RR 48463 2002 900.780 Uvalde +RR 48465 2002 700.070 Val Verde +RR 48467 2002 263.360 Van Zandt +RR 48469 2002 315.700 Victoria +RR 48471 2002 49.450 Walker +RR 48473 2002 228.030 Waller +RR 48475 2002 146.650 Ward +RR 48477 2002 310.250 Washington +RR 48479 2002 289.330 Webb +RR 48481 2002 144.900 Wharton +RR 48483 2002 0.000 Wheeler +RR 48485 2002 412.480 Wichita +RR 48487 2002 410.800 Wilbarger +RR 48489 2002 99.590 Willacy +RR 48491 2002 490.670 Williamson +RR 48493 2002 0.000 Wilson +RR 48495 2002 0.000 Winkler +RR 48497 2002 558.460 Wise +RR 48499 2002 171.440 Wood +RR 48501 2002 0.000 Yoakum +RR 48503 2002 0.000 Young +RR 48505 2002 0.000 Zapata +RR 48507 2002 0.000 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_RVPRK.ALO new file mode 100644 index 0000000..e738e8e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_RVPRK.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 48000 2002 351 TX +RVP 48001 2002 1 Anderson +RVP 48003 2002 0 Andrews +RVP 48005 2002 1 Angelina +RVP 48007 2002 6 Aransas +RVP 48009 2002 0 Archer +RVP 48011 2002 0 Armstrong +RVP 48013 2002 1 Atascosa +RVP 48015 2002 1 Austin +RVP 48017 2002 0 Bailey +RVP 48019 2002 9 Bandera +RVP 48021 2002 0 Bastrop +RVP 48023 2002 0 Baylor +RVP 48025 2002 0 Bee +RVP 48027 2002 4 Bell +RVP 48029 2002 9 Bexar +RVP 48031 2002 1 Blanco +RVP 48033 2002 0 Borden +RVP 48035 2002 2 Bosque +RVP 48037 2002 1 Bowie +RVP 48039 2002 2 Brazoria +RVP 48041 2002 2 Brazos +RVP 48043 2002 1 Brewster +RVP 48045 2002 0 Briscoe +RVP 48047 2002 3 Brooks +RVP 48049 2002 2 Brown +RVP 48051 2002 1 Burleson +RVP 48053 2002 12 Burnet +RVP 48055 2002 2 Caldwell +RVP 48057 2002 1 Calhoun +RVP 48059 2002 1 Callahan +RVP 48061 2002 16 Cameron +RVP 48063 2002 2 Camp +RVP 48065 2002 0 Carson +RVP 48067 2002 0 Cass +RVP 48069 2002 0 Castro +RVP 48071 2002 1 Chambers +RVP 48073 2002 0 Cherokee +RVP 48075 2002 0 Childress +RVP 48077 2002 0 Clay +RVP 48079 2002 0 Cochran +RVP 48081 2002 0 Coke +RVP 48083 2002 1 Coleman +RVP 48085 2002 3 Collin +RVP 48087 2002 0 Collingsworth +RVP 48089 2002 2 Colorado +RVP 48091 2002 11 Comal +RVP 48093 2002 0 Comanche +RVP 48095 2002 1 Concho +RVP 48097 2002 2 Cooke +RVP 48099 2002 0 Coryell +RVP 48101 2002 0 Cottle +RVP 48103 2002 0 Crane +RVP 48105 2002 1 Crockett +RVP 48107 2002 0 Crosby +RVP 48109 2002 0 Culberson +RVP 48111 2002 0 Dallam +RVP 48113 2002 8 Dallas +RVP 48115 2002 0 Dawson +RVP 48117 2002 0 Deaf Smith +RVP 48119 2002 0 Delta +RVP 48121 2002 3 Denton +RVP 48123 2002 0 DeWitt +RVP 48125 2002 0 Dickens +RVP 48127 2002 2 Dimmit +RVP 48129 2002 1 Donley +RVP 48131 2002 0 Duval +RVP 48133 2002 1 Eastland +RVP 48135 2002 0 Ector +RVP 48137 2002 0 Edwards +RVP 48139 2002 2 Ellis +RVP 48141 2002 2 El Paso +RVP 48143 2002 0 Erath +RVP 48145 2002 0 Falls +RVP 48147 2002 0 Fannin +RVP 48149 2002 2 Fayette +RVP 48151 2002 0 Fisher +RVP 48153 2002 0 Floyd +RVP 48155 2002 0 Foard +RVP 48157 2002 1 Fort Bend +RVP 48159 2002 0 Franklin +RVP 48161 2002 0 Freestone +RVP 48163 2002 1 Frio +RVP 48165 2002 0 Gaines +RVP 48167 2002 3 Galveston +RVP 48169 2002 0 Garza +RVP 48171 2002 1 Gillespie +RVP 48173 2002 0 Glasscock +RVP 48175 2002 0 Goliad +RVP 48177 2002 1 Gonzales +RVP 48179 2002 0 Gray +RVP 48181 2002 4 Grayson +RVP 48183 2002 0 Gregg +RVP 48185 2002 1 Grimes +RVP 48187 2002 3 Guadalupe +RVP 48189 2002 0 Hale +RVP 48191 2002 0 Hall +RVP 48193 2002 0 Hamilton +RVP 48195 2002 0 Hansford +RVP 48197 2002 1 Hardeman +RVP 48199 2002 0 Hardin +RVP 48201 2002 15 Harris +RVP 48203 2002 2 Harrison +RVP 48205 2002 0 Hartley +RVP 48207 2002 0 Haskell +RVP 48209 2002 3 Hays +RVP 48211 2002 0 Hemphill +RVP 48213 2002 5 Henderson +RVP 48215 2002 23 Hidalgo +RVP 48217 2002 3 Hill +RVP 48219 2002 0 Hockley +RVP 48221 2002 0 Hood +RVP 48223 2002 0 Hopkins +RVP 48225 2002 1 Houston +RVP 48227 2002 1 Howard +RVP 48229 2002 1 Hudspeth +RVP 48231 2002 1 Hunt +RVP 48233 2002 0 Hutchinson +RVP 48235 2002 0 Irion +RVP 48237 2002 0 Jack +RVP 48239 2002 0 Jackson +RVP 48241 2002 0 Jasper +RVP 48243 2002 1 Jeff Davis +RVP 48245 2002 0 Jefferson +RVP 48247 2002 0 Jim Hogg +RVP 48249 2002 0 Jim Wells +RVP 48251 2002 0 Johnson +RVP 48253 2002 1 Jones +RVP 48255 2002 0 Karnes +RVP 48257 2002 1 Kaufman +RVP 48259 2002 5 Kendall +RVP 48261 2002 0 Kenedy +RVP 48263 2002 0 Kent +RVP 48265 2002 14 Kerr +RVP 48267 2002 1 Kimble +RVP 48269 2002 0 King +RVP 48271 2002 0 Kinney +RVP 48273 2002 2 Kleberg +RVP 48275 2002 0 Knox +RVP 48277 2002 0 Lamar +RVP 48279 2002 0 Lamb +RVP 48281 2002 1 Lampasas +RVP 48283 2002 1 La Salle +RVP 48285 2002 0 Lavaca +RVP 48287 2002 1 Lee +RVP 48289 2002 0 Leon +RVP 48291 2002 1 Liberty +RVP 48293 2002 0 Limestone +RVP 48295 2002 0 Lipscomb +RVP 48297 2002 1 Live Oak +RVP 48299 2002 2 Llano +RVP 48301 2002 0 Loving +RVP 48303 2002 5 Lubbock +RVP 48305 2002 0 Lynn +RVP 48307 2002 0 McCulloch +RVP 48309 2002 2 McLennan +RVP 48311 2002 0 McMullen +RVP 48313 2002 0 Madison +RVP 48315 2002 0 Marion +RVP 48317 2002 0 Martin +RVP 48319 2002 1 Mason +RVP 48321 2002 2 Matagorda +RVP 48323 2002 0 Maverick +RVP 48325 2002 1 Medina +RVP 48327 2002 0 Menard +RVP 48329 2002 1 Midland +RVP 48331 2002 0 Milam +RVP 48333 2002 0 Mills +RVP 48335 2002 0 Mitchell +RVP 48337 2002 0 Montague +RVP 48339 2002 6 Montgomery +RVP 48341 2002 0 Moore +RVP 48343 2002 0 Morris +RVP 48345 2002 0 Motley +RVP 48347 2002 1 Nacogdoches +RVP 48349 2002 2 Navarro +RVP 48351 2002 2 Newton +RVP 48353 2002 0 Nolan +RVP 48355 2002 7 Nueces +RVP 48357 2002 0 Ochiltree +RVP 48359 2002 0 Oldham +RVP 48361 2002 2 Orange +RVP 48363 2002 0 Palo Pinto +RVP 48365 2002 2 Panola +RVP 48367 2002 2 Parker +RVP 48369 2002 0 Parmer +RVP 48371 2002 3 Pecos +RVP 48373 2002 2 Polk +RVP 48375 2002 6 Potter +RVP 48377 2002 1 Presidio +RVP 48379 2002 1 Rains +RVP 48381 2002 0 Randall +RVP 48383 2002 0 Reagan +RVP 48385 2002 2 Real +RVP 48387 2002 0 Red River +RVP 48389 2002 0 Reeves +RVP 48391 2002 1 Refugio +RVP 48393 2002 0 Roberts +RVP 48395 2002 0 Robertson +RVP 48397 2002 0 Rockwall +RVP 48399 2002 0 Runnels +RVP 48401 2002 1 Rusk +RVP 48403 2002 1 Sabine +RVP 48405 2002 0 San Augustine +RVP 48407 2002 0 San Jacinto +RVP 48409 2002 4 San Patricio +RVP 48411 2002 0 San Saba +RVP 48413 2002 0 Schleicher +RVP 48415 2002 1 Scurry +RVP 48417 2002 0 Shackelford +RVP 48419 2002 0 Shelby +RVP 48421 2002 0 Sherman +RVP 48423 2002 3 Smith +RVP 48425 2002 4 Somervell +RVP 48427 2002 0 Starr +RVP 48429 2002 0 Stephens +RVP 48431 2002 0 Sterling +RVP 48433 2002 0 Stonewall +RVP 48435 2002 0 Sutton +RVP 48437 2002 0 Swisher +RVP 48439 2002 5 Tarrant +RVP 48441 2002 2 Taylor +RVP 48443 2002 0 Terrell +RVP 48445 2002 0 Terry +RVP 48447 2002 0 Throckmorton +RVP 48449 2002 2 Titus +RVP 48451 2002 2 Tom Green +RVP 48453 2002 8 Travis +RVP 48455 2002 5 Trinity +RVP 48457 2002 1 Tyler +RVP 48459 2002 0 Upshur +RVP 48461 2002 0 Upton +RVP 48463 2002 7 Uvalde +RVP 48465 2002 3 Val Verde +RVP 48467 2002 2 Van Zandt +RVP 48469 2002 1 Victoria +RVP 48471 2002 3 Walker +RVP 48473 2002 1 Waller +RVP 48475 2002 0 Ward +RVP 48477 2002 1 Washington +RVP 48479 2002 1 Webb +RVP 48481 2002 1 Wharton +RVP 48483 2002 0 Wheeler +RVP 48485 2002 0 Wichita +RVP 48487 2002 0 Wilbarger +RVP 48489 2002 0 Willacy +RVP 48491 2002 2 Williamson +RVP 48493 2002 0 Wilson +RVP 48495 2002 0 Winkler +RVP 48497 2002 1 Wise +RVP 48499 2002 4 Wood +RVP 48501 2002 0 Yoakum +RVP 48503 2002 2 Young +RVP 48505 2002 4 Zapata +RVP 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_SBC.ALO new file mode 100644 index 0000000..385bc18 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_SBC.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 48000 2002 113 TX +SBC 48001 2002 0 Anderson +SBC 48003 2002 0 Andrews +SBC 48005 2002 0 Angelina +SBC 48007 2002 0 Aransas +SBC 48009 2002 0 Archer +SBC 48011 2002 0 Armstrong +SBC 48013 2002 0 Atascosa +SBC 48015 2002 0 Austin +SBC 48017 2002 0 Bailey +SBC 48019 2002 0 Bandera +SBC 48021 2002 0 Bastrop +SBC 48023 2002 0 Baylor +SBC 48025 2002 0 Bee +SBC 48027 2002 0 Bell +SBC 48029 2002 0 Bexar +SBC 48031 2002 0 Blanco +SBC 48033 2002 0 Borden +SBC 48035 2002 0 Bosque +SBC 48037 2002 0 Bowie +SBC 48039 2002 0 Brazoria +SBC 48041 2002 0 Brazos +SBC 48043 2002 0 Brewster +SBC 48045 2002 0 Briscoe +SBC 48047 2002 0 Brooks +SBC 48049 2002 0 Brown +SBC 48051 2002 0 Burleson +SBC 48053 2002 0 Burnet +SBC 48055 2002 0 Caldwell +SBC 48057 2002 0 Calhoun +SBC 48059 2002 0 Callahan +SBC 48061 2002 0 Cameron +SBC 48063 2002 0 Camp +SBC 48065 2002 0 Carson +SBC 48067 2002 0 Cass +SBC 48069 2002 0 Castro +SBC 48071 2002 0 Chambers +SBC 48073 2002 0 Cherokee +SBC 48075 2002 0 Childress +SBC 48077 2002 0 Clay +SBC 48079 2002 0 Cochran +SBC 48081 2002 0 Coke +SBC 48083 2002 0 Coleman +SBC 48085 2002 0 Collin +SBC 48087 2002 0 Collingsworth +SBC 48089 2002 0 Colorado +SBC 48091 2002 0 Comal +SBC 48093 2002 0 Comanche +SBC 48095 2002 0 Concho +SBC 48097 2002 0 Cooke +SBC 48099 2002 0 Coryell +SBC 48101 2002 0 Cottle +SBC 48103 2002 0 Crane +SBC 48105 2002 0 Crockett +SBC 48107 2002 0 Crosby +SBC 48109 2002 0 Culberson +SBC 48111 2002 0 Dallam +SBC 48113 2002 0 Dallas +SBC 48115 2002 0 Dawson +SBC 48117 2002 0 Deaf Smith +SBC 48119 2002 0 Delta +SBC 48121 2002 0 Denton +SBC 48123 2002 0 DeWitt +SBC 48125 2002 0 Dickens +SBC 48127 2002 0 Dimmit +SBC 48129 2002 0 Donley +SBC 48131 2002 0 Duval +SBC 48133 2002 0 Eastland +SBC 48135 2002 0 Ector +SBC 48137 2002 0 Edwards +SBC 48139 2002 0 Ellis +SBC 48141 2002 0 El Paso +SBC 48143 2002 0 Erath +SBC 48145 2002 0 Falls +SBC 48147 2002 0 Fannin +SBC 48149 2002 0 Fayette +SBC 48151 2002 0 Fisher +SBC 48153 2002 0 Floyd +SBC 48155 2002 0 Foard +SBC 48157 2002 0 Fort Bend +SBC 48159 2002 0 Franklin +SBC 48161 2002 0 Freestone +SBC 48163 2002 0 Frio +SBC 48165 2002 0 Gaines +SBC 48167 2002 0 Galveston +SBC 48169 2002 0 Garza +SBC 48171 2002 0 Gillespie +SBC 48173 2002 0 Glasscock +SBC 48175 2002 0 Goliad +SBC 48177 2002 0 Gonzales +SBC 48179 2002 40 Gray +SBC 48181 2002 0 Grayson +SBC 48183 2002 0 Gregg +SBC 48185 2002 0 Grimes +SBC 48187 2002 0 Guadalupe +SBC 48189 2002 0 Hale +SBC 48191 2002 0 Hall +SBC 48193 2002 0 Hamilton +SBC 48195 2002 2 Hansford +SBC 48197 2002 0 Hardeman +SBC 48199 2002 0 Hardin +SBC 48201 2002 0 Harris +SBC 48203 2002 0 Harrison +SBC 48205 2002 2 Hartley +SBC 48207 2002 0 Haskell +SBC 48209 2002 0 Hays +SBC 48211 2002 1 Hemphill +SBC 48213 2002 0 Henderson +SBC 48215 2002 0 Hidalgo +SBC 48217 2002 0 Hill +SBC 48219 2002 0 Hockley +SBC 48221 2002 0 Hood +SBC 48223 2002 0 Hopkins +SBC 48225 2002 0 Houston +SBC 48227 2002 0 Howard +SBC 48229 2002 0 Hudspeth +SBC 48231 2002 0 Hunt +SBC 48233 2002 8 Hutchinson +SBC 48235 2002 0 Irion +SBC 48237 2002 0 Jack +SBC 48239 2002 0 Jackson +SBC 48241 2002 0 Jasper +SBC 48243 2002 1 Jeff Davis +SBC 48245 2002 0 Jefferson +SBC 48247 2002 0 Jim Hogg +SBC 48249 2002 0 Jim Wells +SBC 48251 2002 0 Johnson +SBC 48253 2002 0 Jones +SBC 48255 2002 0 Karnes +SBC 48257 2002 0 Kaufman +SBC 48259 2002 0 Kendall +SBC 48261 2002 0 Kenedy +SBC 48263 2002 0 Kent +SBC 48265 2002 0 Kerr +SBC 48267 2002 0 Kimble +SBC 48269 2002 0 King +SBC 48271 2002 0 Kinney +SBC 48273 2002 0 Kleberg +SBC 48275 2002 0 Knox +SBC 48277 2002 0 Lamar +SBC 48279 2002 0 Lamb +SBC 48281 2002 0 Lampasas +SBC 48283 2002 0 La Salle +SBC 48285 2002 0 Lavaca +SBC 48287 2002 0 Lee +SBC 48289 2002 0 Leon +SBC 48291 2002 0 Liberty +SBC 48293 2002 0 Limestone +SBC 48295 2002 0 Lipscomb +SBC 48297 2002 0 Live Oak +SBC 48299 2002 0 Llano +SBC 48301 2002 0 Loving +SBC 48303 2002 0 Lubbock +SBC 48305 2002 0 Lynn +SBC 48307 2002 0 McCulloch +SBC 48309 2002 0 McLennan +SBC 48311 2002 0 McMullen +SBC 48313 2002 0 Madison +SBC 48315 2002 0 Marion +SBC 48317 2002 0 Martin +SBC 48319 2002 0 Mason +SBC 48321 2002 0 Matagorda +SBC 48323 2002 0 Maverick +SBC 48325 2002 0 Medina +SBC 48327 2002 0 Menard +SBC 48329 2002 0 Midland +SBC 48331 2002 0 Milam +SBC 48333 2002 0 Mills +SBC 48335 2002 0 Mitchell +SBC 48337 2002 0 Montague +SBC 48339 2002 0 Montgomery +SBC 48341 2002 7 Moore +SBC 48343 2002 0 Morris +SBC 48345 2002 0 Motley +SBC 48347 2002 0 Nacogdoches +SBC 48349 2002 0 Navarro +SBC 48351 2002 0 Newton +SBC 48353 2002 0 Nolan +SBC 48355 2002 0 Nueces +SBC 48357 2002 0 Ochiltree +SBC 48359 2002 0 Oldham +SBC 48361 2002 0 Orange +SBC 48363 2002 0 Palo Pinto +SBC 48365 2002 0 Panola +SBC 48367 2002 0 Parker +SBC 48369 2002 0 Parmer +SBC 48371 2002 0 Pecos +SBC 48373 2002 0 Polk +SBC 48375 2002 51 Potter +SBC 48377 2002 0 Presidio +SBC 48379 2002 0 Rains +SBC 48381 2002 0 Randall +SBC 48383 2002 0 Reagan +SBC 48385 2002 0 Real +SBC 48387 2002 0 Red River +SBC 48389 2002 0 Reeves +SBC 48391 2002 0 Refugio +SBC 48393 2002 0 Roberts +SBC 48395 2002 0 Robertson +SBC 48397 2002 0 Rockwall +SBC 48399 2002 0 Runnels +SBC 48401 2002 0 Rusk +SBC 48403 2002 0 Sabine +SBC 48405 2002 0 San Augustine +SBC 48407 2002 0 San Jacinto +SBC 48409 2002 0 San Patricio +SBC 48411 2002 0 San Saba +SBC 48413 2002 0 Schleicher +SBC 48415 2002 0 Scurry +SBC 48417 2002 0 Shackelford +SBC 48419 2002 0 Shelby +SBC 48421 2002 1 Sherman +SBC 48423 2002 0 Smith +SBC 48425 2002 0 Somervell +SBC 48427 2002 0 Starr +SBC 48429 2002 0 Stephens +SBC 48431 2002 0 Sterling +SBC 48433 2002 0 Stonewall +SBC 48435 2002 0 Sutton +SBC 48437 2002 0 Swisher +SBC 48439 2002 0 Tarrant +SBC 48441 2002 0 Taylor +SBC 48443 2002 0 Terrell +SBC 48445 2002 0 Terry +SBC 48447 2002 0 Throckmorton +SBC 48449 2002 0 Titus +SBC 48451 2002 0 Tom Green +SBC 48453 2002 0 Travis +SBC 48455 2002 0 Trinity +SBC 48457 2002 0 Tyler +SBC 48459 2002 0 Upshur +SBC 48461 2002 0 Upton +SBC 48463 2002 0 Uvalde +SBC 48465 2002 0 Val Verde +SBC 48467 2002 0 Van Zandt +SBC 48469 2002 0 Victoria +SBC 48471 2002 0 Walker +SBC 48473 2002 0 Waller +SBC 48475 2002 0 Ward +SBC 48477 2002 0 Washington +SBC 48479 2002 0 Webb +SBC 48481 2002 0 Wharton +SBC 48483 2002 0 Wheeler +SBC 48485 2002 0 Wichita +SBC 48487 2002 0 Wilbarger +SBC 48489 2002 0 Willacy +SBC 48491 2002 0 Williamson +SBC 48493 2002 0 Wilson +SBC 48495 2002 0 Winkler +SBC 48497 2002 0 Wise +SBC 48499 2002 0 Wood +SBC 48501 2002 0 Yoakum +SBC 48503 2002 0 Young +SBC 48505 2002 0 Zapata +SBC 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_SBR.ALO new file mode 100644 index 0000000..823246a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_SBR.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 48000 2002 95221 TX +SBR 48001 2002 0 Anderson +SBR 48003 2002 0 Andrews +SBR 48005 2002 0 Angelina +SBR 48007 2002 0 Aransas +SBR 48009 2002 0 Archer +SBR 48011 2002 0 Armstrong +SBR 48013 2002 0 Atascosa +SBR 48015 2002 0 Austin +SBR 48017 2002 0 Bailey +SBR 48019 2002 0 Bandera +SBR 48021 2002 0 Bastrop +SBR 48023 2002 0 Baylor +SBR 48025 2002 0 Bee +SBR 48027 2002 0 Bell +SBR 48029 2002 0 Bexar +SBR 48031 2002 0 Blanco +SBR 48033 2002 0 Borden +SBR 48035 2002 0 Bosque +SBR 48037 2002 0 Bowie +SBR 48039 2002 0 Brazoria +SBR 48041 2002 0 Brazos +SBR 48043 2002 0 Brewster +SBR 48045 2002 0 Briscoe +SBR 48047 2002 0 Brooks +SBR 48049 2002 0 Brown +SBR 48051 2002 0 Burleson +SBR 48053 2002 0 Burnet +SBR 48055 2002 0 Caldwell +SBR 48057 2002 0 Calhoun +SBR 48059 2002 0 Callahan +SBR 48061 2002 0 Cameron +SBR 48063 2002 0 Camp +SBR 48065 2002 2845 Carson +SBR 48067 2002 0 Cass +SBR 48069 2002 0 Castro +SBR 48071 2002 0 Chambers +SBR 48073 2002 0 Cherokee +SBR 48075 2002 0 Childress +SBR 48077 2002 0 Clay +SBR 48079 2002 0 Cochran +SBR 48081 2002 0 Coke +SBR 48083 2002 0 Coleman +SBR 48085 2002 0 Collin +SBR 48087 2002 0 Collingsworth +SBR 48089 2002 0 Colorado +SBR 48091 2002 0 Comal +SBR 48093 2002 0 Comanche +SBR 48095 2002 0 Concho +SBR 48097 2002 0 Cooke +SBR 48099 2002 0 Coryell +SBR 48101 2002 0 Cottle +SBR 48103 2002 0 Crane +SBR 48105 2002 0 Crockett +SBR 48107 2002 0 Crosby +SBR 48109 2002 0 Culberson +SBR 48111 2002 2732 Dallam +SBR 48113 2002 0 Dallas +SBR 48115 2002 0 Dawson +SBR 48117 2002 0 Deaf Smith +SBR 48119 2002 0 Delta +SBR 48121 2002 0 Denton +SBR 48123 2002 0 DeWitt +SBR 48125 2002 0 Dickens +SBR 48127 2002 0 Dimmit +SBR 48129 2002 0 Donley +SBR 48131 2002 0 Duval +SBR 48133 2002 0 Eastland +SBR 48135 2002 0 Ector +SBR 48137 2002 0 Edwards +SBR 48139 2002 0 Ellis +SBR 48141 2002 0 El Paso +SBR 48143 2002 0 Erath +SBR 48145 2002 0 Falls +SBR 48147 2002 0 Fannin +SBR 48149 2002 0 Fayette +SBR 48151 2002 0 Fisher +SBR 48153 2002 0 Floyd +SBR 48155 2002 0 Foard +SBR 48157 2002 0 Fort Bend +SBR 48159 2002 0 Franklin +SBR 48161 2002 0 Freestone +SBR 48163 2002 0 Frio +SBR 48165 2002 0 Gaines +SBR 48167 2002 0 Galveston +SBR 48169 2002 0 Garza +SBR 48171 2002 0 Gillespie +SBR 48173 2002 0 Glasscock +SBR 48175 2002 0 Goliad +SBR 48177 2002 0 Gonzales +SBR 48179 2002 10547 Gray +SBR 48181 2002 0 Grayson +SBR 48183 2002 0 Gregg +SBR 48185 2002 0 Grimes +SBR 48187 2002 0 Guadalupe +SBR 48189 2002 0 Hale +SBR 48191 2002 0 Hall +SBR 48193 2002 0 Hamilton +SBR 48195 2002 2329 Hansford +SBR 48197 2002 0 Hardeman +SBR 48199 2002 0 Hardin +SBR 48201 2002 0 Harris +SBR 48203 2002 0 Harrison +SBR 48205 2002 1782 Hartley +SBR 48207 2002 0 Haskell +SBR 48209 2002 0 Hays +SBR 48211 2002 1542 Hemphill +SBR 48213 2002 0 Henderson +SBR 48215 2002 0 Hidalgo +SBR 48217 2002 0 Hill +SBR 48219 2002 0 Hockley +SBR 48221 2002 0 Hood +SBR 48223 2002 0 Hopkins +SBR 48225 2002 0 Houston +SBR 48227 2002 0 Howard +SBR 48229 2002 0 Hudspeth +SBR 48231 2002 0 Hunt +SBR 48233 2002 10927 Hutchinson +SBR 48235 2002 0 Irion +SBR 48237 2002 0 Jack +SBR 48239 2002 0 Jackson +SBR 48241 2002 0 Jasper +SBR 48243 2002 1424 Jeff Davis +SBR 48245 2002 0 Jefferson +SBR 48247 2002 0 Jim Hogg +SBR 48249 2002 0 Jim Wells +SBR 48251 2002 0 Johnson +SBR 48253 2002 0 Jones +SBR 48255 2002 0 Karnes +SBR 48257 2002 0 Kaufman +SBR 48259 2002 0 Kendall +SBR 48261 2002 0 Kenedy +SBR 48263 2002 0 Kent +SBR 48265 2002 0 Kerr +SBR 48267 2002 0 Kimble +SBR 48269 2002 0 King +SBR 48271 2002 0 Kinney +SBR 48273 2002 0 Kleberg +SBR 48275 2002 0 Knox +SBR 48277 2002 0 Lamar +SBR 48279 2002 0 Lamb +SBR 48281 2002 0 Lampasas +SBR 48283 2002 0 La Salle +SBR 48285 2002 0 Lavaca +SBR 48287 2002 0 Lee +SBR 48289 2002 0 Leon +SBR 48291 2002 0 Liberty +SBR 48293 2002 0 Limestone +SBR 48295 2002 1534 Lipscomb +SBR 48297 2002 0 Live Oak +SBR 48299 2002 0 Llano +SBR 48301 2002 0 Loving +SBR 48303 2002 0 Lubbock +SBR 48305 2002 0 Lynn +SBR 48307 2002 0 McCulloch +SBR 48309 2002 0 McLennan +SBR 48311 2002 0 McMullen +SBR 48313 2002 0 Madison +SBR 48315 2002 0 Marion +SBR 48317 2002 0 Martin +SBR 48319 2002 0 Mason +SBR 48321 2002 0 Matagorda +SBR 48323 2002 0 Maverick +SBR 48325 2002 0 Medina +SBR 48327 2002 0 Menard +SBR 48329 2002 0 Midland +SBR 48331 2002 0 Milam +SBR 48333 2002 0 Mills +SBR 48335 2002 0 Mitchell +SBR 48337 2002 0 Montague +SBR 48339 2002 0 Montgomery +SBR 48341 2002 7573 Moore +SBR 48343 2002 0 Morris +SBR 48345 2002 0 Motley +SBR 48347 2002 0 Nacogdoches +SBR 48349 2002 0 Navarro +SBR 48351 2002 0 Newton +SBR 48353 2002 0 Nolan +SBR 48355 2002 0 Nueces +SBR 48357 2002 3814 Ochiltree +SBR 48359 2002 820 Oldham +SBR 48361 2002 0 Orange +SBR 48363 2002 0 Palo Pinto +SBR 48365 2002 0 Panola +SBR 48367 2002 0 Parker +SBR 48369 2002 0 Parmer +SBR 48371 2002 0 Pecos +SBR 48373 2002 0 Polk +SBR 48375 2002 45586 Potter +SBR 48377 2002 0 Presidio +SBR 48379 2002 0 Rains +SBR 48381 2002 0 Randall +SBR 48383 2002 0 Reagan +SBR 48385 2002 0 Real +SBR 48387 2002 0 Red River +SBR 48389 2002 0 Reeves +SBR 48391 2002 0 Refugio +SBR 48393 2002 447 Roberts +SBR 48395 2002 0 Robertson +SBR 48397 2002 0 Rockwall +SBR 48399 2002 0 Runnels +SBR 48401 2002 0 Rusk +SBR 48403 2002 0 Sabine +SBR 48405 2002 0 San Augustine +SBR 48407 2002 0 San Jacinto +SBR 48409 2002 0 San Patricio +SBR 48411 2002 0 San Saba +SBR 48413 2002 0 Schleicher +SBR 48415 2002 0 Scurry +SBR 48417 2002 0 Shackelford +SBR 48419 2002 0 Shelby +SBR 48421 2002 1319 Sherman +SBR 48423 2002 0 Smith +SBR 48425 2002 0 Somervell +SBR 48427 2002 0 Starr +SBR 48429 2002 0 Stephens +SBR 48431 2002 0 Sterling +SBR 48433 2002 0 Stonewall +SBR 48435 2002 0 Sutton +SBR 48437 2002 0 Swisher +SBR 48439 2002 0 Tarrant +SBR 48441 2002 0 Taylor +SBR 48443 2002 0 Terrell +SBR 48445 2002 0 Terry +SBR 48447 2002 0 Throckmorton +SBR 48449 2002 0 Titus +SBR 48451 2002 0 Tom Green +SBR 48453 2002 0 Travis +SBR 48455 2002 0 Trinity +SBR 48457 2002 0 Tyler +SBR 48459 2002 0 Upshur +SBR 48461 2002 0 Upton +SBR 48463 2002 0 Uvalde +SBR 48465 2002 0 Val Verde +SBR 48467 2002 0 Van Zandt +SBR 48469 2002 0 Victoria +SBR 48471 2002 0 Walker +SBR 48473 2002 0 Waller +SBR 48475 2002 0 Ward +SBR 48477 2002 0 Washington +SBR 48479 2002 0 Webb +SBR 48481 2002 0 Wharton +SBR 48483 2002 0 Wheeler +SBR 48485 2002 0 Wichita +SBR 48487 2002 0 Wilbarger +SBR 48489 2002 0 Willacy +SBR 48491 2002 0 Williamson +SBR 48493 2002 0 Wilson +SBR 48495 2002 0 Winkler +SBR 48497 2002 0 Wise +SBR 48499 2002 0 Wood +SBR 48501 2002 0 Yoakum +SBR 48503 2002 0 Young +SBR 48505 2002 0 Zapata +SBR 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_SNOWM.ALO new file mode 100644 index 0000000..737c2d1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_SNOWM.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 48000 2002 0 TX +SNM 48001 2002 0 Anderson +SNM 48003 2002 0 Andrews +SNM 48005 2002 0 Angelina +SNM 48007 2002 0 Aransas +SNM 48009 2002 0 Archer +SNM 48011 2002 0 Armstrong +SNM 48013 2002 0 Atascosa +SNM 48015 2002 0 Austin +SNM 48017 2002 0 Bailey +SNM 48019 2002 0 Bandera +SNM 48021 2002 0 Bastrop +SNM 48023 2002 0 Baylor +SNM 48025 2002 0 Bee +SNM 48027 2002 0 Bell +SNM 48029 2002 0 Bexar +SNM 48031 2002 0 Blanco +SNM 48033 2002 0 Borden +SNM 48035 2002 0 Bosque +SNM 48037 2002 0 Bowie +SNM 48039 2002 0 Brazoria +SNM 48041 2002 0 Brazos +SNM 48043 2002 0 Brewster +SNM 48045 2002 0 Briscoe +SNM 48047 2002 0 Brooks +SNM 48049 2002 0 Brown +SNM 48051 2002 0 Burleson +SNM 48053 2002 0 Burnet +SNM 48055 2002 0 Caldwell +SNM 48057 2002 0 Calhoun +SNM 48059 2002 0 Callahan +SNM 48061 2002 0 Cameron +SNM 48063 2002 0 Camp +SNM 48065 2002 0 Carson +SNM 48067 2002 0 Cass +SNM 48069 2002 0 Castro +SNM 48071 2002 0 Chambers +SNM 48073 2002 0 Cherokee +SNM 48075 2002 0 Childress +SNM 48077 2002 0 Clay +SNM 48079 2002 0 Cochran +SNM 48081 2002 0 Coke +SNM 48083 2002 0 Coleman +SNM 48085 2002 0 Collin +SNM 48087 2002 0 Collingsworth +SNM 48089 2002 0 Colorado +SNM 48091 2002 0 Comal +SNM 48093 2002 0 Comanche +SNM 48095 2002 0 Concho +SNM 48097 2002 0 Cooke +SNM 48099 2002 0 Coryell +SNM 48101 2002 0 Cottle +SNM 48103 2002 0 Crane +SNM 48105 2002 0 Crockett +SNM 48107 2002 0 Crosby +SNM 48109 2002 0 Culberson +SNM 48111 2002 0 Dallam +SNM 48113 2002 0 Dallas +SNM 48115 2002 0 Dawson +SNM 48117 2002 0 Deaf Smith +SNM 48119 2002 0 Delta +SNM 48121 2002 0 Denton +SNM 48123 2002 0 DeWitt +SNM 48125 2002 0 Dickens +SNM 48127 2002 0 Dimmit +SNM 48129 2002 0 Donley +SNM 48131 2002 0 Duval +SNM 48133 2002 0 Eastland +SNM 48135 2002 0 Ector +SNM 48137 2002 0 Edwards +SNM 48139 2002 0 Ellis +SNM 48141 2002 0 El Paso +SNM 48143 2002 0 Erath +SNM 48145 2002 0 Falls +SNM 48147 2002 0 Fannin +SNM 48149 2002 0 Fayette +SNM 48151 2002 0 Fisher +SNM 48153 2002 0 Floyd +SNM 48155 2002 0 Foard +SNM 48157 2002 0 Fort Bend +SNM 48159 2002 0 Franklin +SNM 48161 2002 0 Freestone +SNM 48163 2002 0 Frio +SNM 48165 2002 0 Gaines +SNM 48167 2002 0 Galveston +SNM 48169 2002 0 Garza +SNM 48171 2002 0 Gillespie +SNM 48173 2002 0 Glasscock +SNM 48175 2002 0 Goliad +SNM 48177 2002 0 Gonzales +SNM 48179 2002 0 Gray +SNM 48181 2002 0 Grayson +SNM 48183 2002 0 Gregg +SNM 48185 2002 0 Grimes +SNM 48187 2002 0 Guadalupe +SNM 48189 2002 0 Hale +SNM 48191 2002 0 Hall +SNM 48193 2002 0 Hamilton +SNM 48195 2002 0 Hansford +SNM 48197 2002 0 Hardeman +SNM 48199 2002 0 Hardin +SNM 48201 2002 0 Harris +SNM 48203 2002 0 Harrison +SNM 48205 2002 0 Hartley +SNM 48207 2002 0 Haskell +SNM 48209 2002 0 Hays +SNM 48211 2002 0 Hemphill +SNM 48213 2002 0 Henderson +SNM 48215 2002 0 Hidalgo +SNM 48217 2002 0 Hill +SNM 48219 2002 0 Hockley +SNM 48221 2002 0 Hood +SNM 48223 2002 0 Hopkins +SNM 48225 2002 0 Houston +SNM 48227 2002 0 Howard +SNM 48229 2002 0 Hudspeth +SNM 48231 2002 0 Hunt +SNM 48233 2002 0 Hutchinson +SNM 48235 2002 0 Irion +SNM 48237 2002 0 Jack +SNM 48239 2002 0 Jackson +SNM 48241 2002 0 Jasper +SNM 48243 2002 0 Jeff Davis +SNM 48245 2002 0 Jefferson +SNM 48247 2002 0 Jim Hogg +SNM 48249 2002 0 Jim Wells +SNM 48251 2002 0 Johnson +SNM 48253 2002 0 Jones +SNM 48255 2002 0 Karnes +SNM 48257 2002 0 Kaufman +SNM 48259 2002 0 Kendall +SNM 48261 2002 0 Kenedy +SNM 48263 2002 0 Kent +SNM 48265 2002 0 Kerr +SNM 48267 2002 0 Kimble +SNM 48269 2002 0 King +SNM 48271 2002 0 Kinney +SNM 48273 2002 0 Kleberg +SNM 48275 2002 0 Knox +SNM 48277 2002 0 Lamar +SNM 48279 2002 0 Lamb +SNM 48281 2002 0 Lampasas +SNM 48283 2002 0 La Salle +SNM 48285 2002 0 Lavaca +SNM 48287 2002 0 Lee +SNM 48289 2002 0 Leon +SNM 48291 2002 0 Liberty +SNM 48293 2002 0 Limestone +SNM 48295 2002 0 Lipscomb +SNM 48297 2002 0 Live Oak +SNM 48299 2002 0 Llano +SNM 48301 2002 0 Loving +SNM 48303 2002 0 Lubbock +SNM 48305 2002 0 Lynn +SNM 48307 2002 0 McCulloch +SNM 48309 2002 0 McLennan +SNM 48311 2002 0 McMullen +SNM 48313 2002 0 Madison +SNM 48315 2002 0 Marion +SNM 48317 2002 0 Martin +SNM 48319 2002 0 Mason +SNM 48321 2002 0 Matagorda +SNM 48323 2002 0 Maverick +SNM 48325 2002 0 Medina +SNM 48327 2002 0 Menard +SNM 48329 2002 0 Midland +SNM 48331 2002 0 Milam +SNM 48333 2002 0 Mills +SNM 48335 2002 0 Mitchell +SNM 48337 2002 0 Montague +SNM 48339 2002 0 Montgomery +SNM 48341 2002 0 Moore +SNM 48343 2002 0 Morris +SNM 48345 2002 0 Motley +SNM 48347 2002 0 Nacogdoches +SNM 48349 2002 0 Navarro +SNM 48351 2002 0 Newton +SNM 48353 2002 0 Nolan +SNM 48355 2002 0 Nueces +SNM 48357 2002 0 Ochiltree +SNM 48359 2002 0 Oldham +SNM 48361 2002 0 Orange +SNM 48363 2002 0 Palo Pinto +SNM 48365 2002 0 Panola +SNM 48367 2002 0 Parker +SNM 48369 2002 0 Parmer +SNM 48371 2002 0 Pecos +SNM 48373 2002 0 Polk +SNM 48375 2002 0 Potter +SNM 48377 2002 0 Presidio +SNM 48379 2002 0 Rains +SNM 48381 2002 0 Randall +SNM 48383 2002 0 Reagan +SNM 48385 2002 0 Real +SNM 48387 2002 0 Red River +SNM 48389 2002 0 Reeves +SNM 48391 2002 0 Refugio +SNM 48393 2002 0 Roberts +SNM 48395 2002 0 Robertson +SNM 48397 2002 0 Rockwall +SNM 48399 2002 0 Runnels +SNM 48401 2002 0 Rusk +SNM 48403 2002 0 Sabine +SNM 48405 2002 0 San Augustine +SNM 48407 2002 0 San Jacinto +SNM 48409 2002 0 San Patricio +SNM 48411 2002 0 San Saba +SNM 48413 2002 0 Schleicher +SNM 48415 2002 0 Scurry +SNM 48417 2002 0 Shackelford +SNM 48419 2002 0 Shelby +SNM 48421 2002 0 Sherman +SNM 48423 2002 0 Smith +SNM 48425 2002 0 Somervell +SNM 48427 2002 0 Starr +SNM 48429 2002 0 Stephens +SNM 48431 2002 0 Sterling +SNM 48433 2002 0 Stonewall +SNM 48435 2002 0 Sutton +SNM 48437 2002 0 Swisher +SNM 48439 2002 0 Tarrant +SNM 48441 2002 0 Taylor +SNM 48443 2002 0 Terrell +SNM 48445 2002 0 Terry +SNM 48447 2002 0 Throckmorton +SNM 48449 2002 0 Titus +SNM 48451 2002 0 Tom Green +SNM 48453 2002 0 Travis +SNM 48455 2002 0 Trinity +SNM 48457 2002 0 Tyler +SNM 48459 2002 0 Upshur +SNM 48461 2002 0 Upton +SNM 48463 2002 0 Uvalde +SNM 48465 2002 0 Val Verde +SNM 48467 2002 0 Van Zandt +SNM 48469 2002 0 Victoria +SNM 48471 2002 0 Walker +SNM 48473 2002 0 Waller +SNM 48475 2002 0 Ward +SNM 48477 2002 0 Washington +SNM 48479 2002 0 Webb +SNM 48481 2002 0 Wharton +SNM 48483 2002 0 Wheeler +SNM 48485 2002 0 Wichita +SNM 48487 2002 0 Wilbarger +SNM 48489 2002 0 Willacy +SNM 48491 2002 0 Williamson +SNM 48493 2002 0 Wilson +SNM 48495 2002 0 Winkler +SNM 48497 2002 0 Wise +SNM 48499 2002 0 Wood +SNM 48501 2002 0 Yoakum +SNM 48503 2002 0 Young +SNM 48505 2002 0 Zapata +SNM 48507 2002 0 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_WIB.ALO new file mode 100644 index 0000000..2c7649a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_WIB.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 48000 1990 17871 TX +WIB 48001 1990 18 Anderson +WIB 48003 1990 1 Andrews +WIB 48005 1990 163 Angelina +WIB 48007 1990 853 Aransas +WIB 48009 1990 42 Archer +WIB 48011 1990 0 Armstrong +WIB 48013 1990 9 Atascosa +WIB 48015 1990 10 Austin +WIB 48017 1990 2 Bailey +WIB 48019 1990 15 Bandera +WIB 48021 1990 20 Bastrop +WIB 48023 1990 78 Baylor +WIB 48025 1990 0 Bee +WIB 48027 1990 73 Bell +WIB 48029 1990 25 Bexar +WIB 48031 1990 6 Blanco +WIB 48033 1990 19 Borden +WIB 48035 1990 35 Bosque +WIB 48037 1990 90 Bowie +WIB 48039 1990 458 Brazoria +WIB 48041 1990 12 Brazos +WIB 48043 1990 0 Brewster +WIB 48045 1990 3 Briscoe +WIB 48047 1990 1 Brooks +WIB 48049 1990 34 Brown +WIB 48051 1990 32 Burleson +WIB 48053 1990 64 Burnet +WIB 48055 1990 4 Caldwell +WIB 48057 1990 1643 Calhoun +WIB 48059 1990 7 Callahan +WIB 48061 1990 1172 Cameron +WIB 48063 1990 15 Camp +WIB 48065 1990 2 Carson +WIB 48067 1990 59 Cass +WIB 48069 1990 2 Castro +WIB 48071 1990 404 Chambers +WIB 48073 1990 25 Cherokee +WIB 48075 1990 8 Childress +WIB 48077 1990 48 Clay +WIB 48079 1990 0 Cochran +WIB 48081 1990 76 Coke +WIB 48083 1990 22 Coleman +WIB 48085 1990 99 Collin +WIB 48087 1990 2 Collingsworth +WIB 48089 1990 28 Colorado +WIB 48091 1990 34 Comal +WIB 48093 1990 26 Comanche +WIB 48095 1990 6 Concho +WIB 48097 1990 65 Cooke +WIB 48099 1990 13 Coryell +WIB 48101 1990 1 Cottle +WIB 48103 1990 0 Crane +WIB 48105 1990 0 Crockett +WIB 48107 1990 6 Crosby +WIB 48109 1990 1 Culberson +WIB 48111 1990 1 Dallam +WIB 48113 1990 75 Dallas +WIB 48115 1990 0 Dawson +WIB 48117 1990 2 Deaf Smith +WIB 48119 1990 2 Delta +WIB 48121 1990 179 Denton +WIB 48123 1990 3 DeWitt +WIB 48125 1990 3 Dickens +WIB 48127 1990 9 Dimmit +WIB 48129 1990 8 Donley +WIB 48131 1990 8 Duval +WIB 48133 1990 15 Eastland +WIB 48135 1990 2 Ector +WIB 48137 1990 0 Edwards +WIB 48139 1990 30 Ellis +WIB 48141 1990 4 El Paso +WIB 48143 1990 9 Erath +WIB 48145 1990 12 Falls +WIB 48147 1990 20 Fannin +WIB 48149 1990 25 Fayette +WIB 48151 1990 2 Fisher +WIB 48153 1990 1 Floyd +WIB 48155 1990 3 Foard +WIB 48157 1990 29 Fort Bend +WIB 48159 1990 24 Franklin +WIB 48161 1990 18 Freestone +WIB 48163 1990 3 Frio +WIB 48165 1990 1 Gaines +WIB 48167 1990 758 Galveston +WIB 48169 1990 2 Garza +WIB 48171 1990 1 Gillespie +WIB 48173 1990 0 Glasscock +WIB 48175 1990 15 Goliad +WIB 48177 1990 5 Gonzales +WIB 48179 1990 3 Gray +WIB 48181 1990 118 Grayson +WIB 48183 1990 6 Gregg +WIB 48185 1990 19 Grimes +WIB 48187 1990 8 Guadalupe +WIB 48189 1990 0 Hale +WIB 48191 1990 3 Hall +WIB 48193 1990 2 Hamilton +WIB 48195 1990 2 Hansford +WIB 48197 1990 4 Hardeman +WIB 48199 1990 8 Hardin +WIB 48201 1990 147 Harris +WIB 48203 1990 42 Harrison +WIB 48205 1990 2 Hartley +WIB 48207 1990 19 Haskell +WIB 48209 1990 5 Hays +WIB 48211 1990 6 Hemphill +WIB 48213 1990 194 Henderson +WIB 48215 1990 36 Hidalgo +WIB 48217 1990 60 Hill +WIB 48219 1990 1 Hockley +WIB 48221 1990 39 Hood +WIB 48223 1990 21 Hopkins +WIB 48225 1990 15 Houston +WIB 48227 1990 4 Howard +WIB 48229 1990 2 Hudspeth +WIB 48231 1990 106 Hunt +WIB 48233 1990 20 Hutchinson +WIB 48235 1990 0 Irion +WIB 48237 1990 7 Jack +WIB 48239 1990 83 Jackson +WIB 48241 1990 83 Jasper +WIB 48243 1990 0 Jeff Davis +WIB 48245 1990 465 Jefferson +WIB 48247 1990 0 Jim Hogg +WIB 48249 1990 9 Jim Wells +WIB 48251 1990 13 Johnson +WIB 48253 1990 16 Jones +WIB 48255 1990 8 Karnes +WIB 48257 1990 54 Kaufman +WIB 48259 1990 2 Kendall +WIB 48261 1990 1551 Kenedy +WIB 48263 1990 1 Kent +WIB 48265 1990 4 Kerr +WIB 48267 1990 1 Kimble +WIB 48269 1990 3 King +WIB 48271 1990 5 Kinney +WIB 48273 1990 686 Kleberg +WIB 48275 1990 3 Knox +WIB 48277 1990 40 Lamar +WIB 48279 1990 4 Lamb +WIB 48281 1990 5 Lampasas +WIB 48283 1990 14 La Salle +WIB 48285 1990 1 Lavaca +WIB 48287 1990 14 Lee +WIB 48289 1990 22 Leon +WIB 48291 1990 43 Liberty +WIB 48293 1990 63 Limestone +WIB 48295 1990 0 Lipscomb +WIB 48297 1990 110 Live Oak +WIB 48299 1990 81 Llano +WIB 48301 1990 10 Loving +WIB 48303 1990 3 Lubbock +WIB 48305 1990 4 Lynn +WIB 48307 1990 10 McCulloch +WIB 48309 1990 48 McLennan +WIB 48311 1990 77 McMullen +WIB 48313 1990 7 Madison +WIB 48315 1990 101 Marion +WIB 48317 1990 2 Martin +WIB 48319 1990 0 Mason +WIB 48321 1990 1262 Matagorda +WIB 48323 1990 30 Maverick +WIB 48325 1990 18 Medina +WIB 48327 1990 1 Menard +WIB 48329 1990 4 Midland +WIB 48331 1990 13 Milam +WIB 48333 1990 5 Mills +WIB 48335 1990 15 Mitchell +WIB 48337 1990 20 Montague +WIB 48339 1990 84 Montgomery +WIB 48341 1990 26 Moore +WIB 48343 1990 11 Morris +WIB 48345 1990 1 Motley +WIB 48347 1990 90 Nacogdoches +WIB 48349 1990 39 Navarro +WIB 48351 1990 18 Newton +WIB 48353 1990 5 Nolan +WIB 48355 1990 1109 Nueces +WIB 48357 1990 1 Ochiltree +WIB 48359 1990 2 Oldham +WIB 48361 1990 78 Orange +WIB 48363 1990 84 Palo Pinto +WIB 48365 1990 53 Panola +WIB 48367 1990 17 Parker +WIB 48369 1990 9 Parmer +WIB 48371 1990 3 Pecos +WIB 48373 1990 136 Polk +WIB 48375 1990 33 Potter +WIB 48377 1990 2 Presidio +WIB 48379 1990 69 Rains +WIB 48381 1990 21 Randall +WIB 48383 1990 2 Reagan +WIB 48385 1990 0 Real +WIB 48387 1990 19 Red River +WIB 48389 1990 16 Reeves +WIB 48391 1990 160 Refugio +WIB 48393 1990 0 Roberts +WIB 48395 1990 29 Robertson +WIB 48397 1990 52 Rockwall +WIB 48399 1990 7 Runnels +WIB 48401 1990 39 Rusk +WIB 48403 1990 224 Sabine +WIB 48405 1990 167 San Augustine +WIB 48407 1990 148 San Jacinto +WIB 48409 1990 43 San Patricio +WIB 48411 1990 10 San Saba +WIB 48413 1990 0 Schleicher +WIB 48415 1990 13 Scurry +WIB 48417 1990 4 Shackelford +WIB 48419 1990 105 Shelby +WIB 48421 1990 0 Sherman +WIB 48423 1990 55 Smith +WIB 48425 1990 12 Somervell +WIB 48427 1990 16 Starr +WIB 48429 1990 70 Stephens +WIB 48431 1990 0 Sterling +WIB 48433 1990 4 Stonewall +WIB 48435 1990 2 Sutton +WIB 48437 1990 1 Swisher +WIB 48439 1990 88 Tarrant +WIB 48441 1990 9 Taylor +WIB 48443 1990 0 Terrell +WIB 48445 1990 3 Terry +WIB 48447 1990 8 Throckmorton +WIB 48449 1990 39 Titus +WIB 48451 1990 48 Tom Green +WIB 48453 1990 85 Travis +WIB 48455 1990 55 Trinity +WIB 48457 1990 33 Tyler +WIB 48459 1990 13 Upshur +WIB 48461 1990 0 Upton +WIB 48463 1990 5 Uvalde +WIB 48465 1990 161 Val Verde +WIB 48467 1990 28 Van Zandt +WIB 48469 1990 16 Victoria +WIB 48471 1990 36 Walker +WIB 48473 1990 13 Waller +WIB 48475 1990 1 Ward +WIB 48477 1990 31 Washington +WIB 48479 1990 48 Webb +WIB 48481 1990 11 Wharton +WIB 48483 1990 3 Wheeler +WIB 48485 1990 14 Wichita +WIB 48487 1990 18 Wilbarger +WIB 48489 1990 613 Willacy +WIB 48491 1990 31 Williamson +WIB 48493 1990 4 Wilson +WIB 48495 1990 1 Winkler +WIB 48497 1990 47 Wise +WIB 48499 1990 118 Wood +WIB 48501 1990 0 Yoakum +WIB 48503 1990 22 Young +WIB 48505 1990 159 Zapata +WIB 48507 1990 8 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/TX_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/TX_WOB.ALO new file mode 100644 index 0000000..565fb06 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/TX_WOB.ALO @@ -0,0 +1,279 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 48000 1990 13470 TX +WOB 48001 1990 18 Anderson +WOB 48003 1990 1 Andrews +WOB 48005 1990 163 Angelina +WOB 48007 1990 577 Aransas +WOB 48009 1990 42 Archer +WOB 48011 1990 0 Armstrong +WOB 48013 1990 9 Atascosa +WOB 48015 1990 10 Austin +WOB 48017 1990 2 Bailey +WOB 48019 1990 15 Bandera +WOB 48021 1990 20 Bastrop +WOB 48023 1990 78 Baylor +WOB 48025 1990 0 Bee +WOB 48027 1990 73 Bell +WOB 48029 1990 25 Bexar +WOB 48031 1990 6 Blanco +WOB 48033 1990 19 Borden +WOB 48035 1990 35 Bosque +WOB 48037 1990 90 Bowie +WOB 48039 1990 281 Brazoria +WOB 48041 1990 12 Brazos +WOB 48043 1990 0 Brewster +WOB 48045 1990 3 Briscoe +WOB 48047 1990 1 Brooks +WOB 48049 1990 34 Brown +WOB 48051 1990 32 Burleson +WOB 48053 1990 64 Burnet +WOB 48055 1990 4 Caldwell +WOB 48057 1990 1117 Calhoun +WOB 48059 1990 7 Callahan +WOB 48061 1990 742 Cameron +WOB 48063 1990 15 Camp +WOB 48065 1990 2 Carson +WOB 48067 1990 59 Cass +WOB 48069 1990 2 Castro +WOB 48071 1990 136 Chambers +WOB 48073 1990 25 Cherokee +WOB 48075 1990 8 Childress +WOB 48077 1990 48 Clay +WOB 48079 1990 0 Cochran +WOB 48081 1990 76 Coke +WOB 48083 1990 22 Coleman +WOB 48085 1990 99 Collin +WOB 48087 1990 2 Collingsworth +WOB 48089 1990 28 Colorado +WOB 48091 1990 34 Comal +WOB 48093 1990 26 Comanche +WOB 48095 1990 6 Concho +WOB 48097 1990 65 Cooke +WOB 48099 1990 13 Coryell +WOB 48101 1990 1 Cottle +WOB 48103 1990 0 Crane +WOB 48105 1990 0 Crockett +WOB 48107 1990 6 Crosby +WOB 48109 1990 1 Culberson +WOB 48111 1990 1 Dallam +WOB 48113 1990 75 Dallas +WOB 48115 1990 0 Dawson +WOB 48117 1990 2 Deaf Smith +WOB 48119 1990 2 Delta +WOB 48121 1990 179 Denton +WOB 48123 1990 3 DeWitt +WOB 48125 1990 3 Dickens +WOB 48127 1990 9 Dimmit +WOB 48129 1990 8 Donley +WOB 48131 1990 8 Duval +WOB 48133 1990 15 Eastland +WOB 48135 1990 2 Ector +WOB 48137 1990 0 Edwards +WOB 48139 1990 30 Ellis +WOB 48141 1990 4 El Paso +WOB 48143 1990 9 Erath +WOB 48145 1990 12 Falls +WOB 48147 1990 20 Fannin +WOB 48149 1990 25 Fayette +WOB 48151 1990 2 Fisher +WOB 48153 1990 1 Floyd +WOB 48155 1990 3 Foard +WOB 48157 1990 29 Fort Bend +WOB 48159 1990 24 Franklin +WOB 48161 1990 18 Freestone +WOB 48163 1990 3 Frio +WOB 48165 1990 1 Gaines +WOB 48167 1990 319 Galveston +WOB 48169 1990 2 Garza +WOB 48171 1990 1 Gillespie +WOB 48173 1990 0 Glasscock +WOB 48175 1990 15 Goliad +WOB 48177 1990 5 Gonzales +WOB 48179 1990 3 Gray +WOB 48181 1990 118 Grayson +WOB 48183 1990 6 Gregg +WOB 48185 1990 19 Grimes +WOB 48187 1990 8 Guadalupe +WOB 48189 1990 0 Hale +WOB 48191 1990 3 Hall +WOB 48193 1990 2 Hamilton +WOB 48195 1990 2 Hansford +WOB 48197 1990 4 Hardeman +WOB 48199 1990 8 Hardin +WOB 48201 1990 123 Harris +WOB 48203 1990 42 Harrison +WOB 48205 1990 2 Hartley +WOB 48207 1990 19 Haskell +WOB 48209 1990 5 Hays +WOB 48211 1990 6 Hemphill +WOB 48213 1990 194 Henderson +WOB 48215 1990 36 Hidalgo +WOB 48217 1990 60 Hill +WOB 48219 1990 1 Hockley +WOB 48221 1990 39 Hood +WOB 48223 1990 21 Hopkins +WOB 48225 1990 15 Houston +WOB 48227 1990 4 Howard +WOB 48229 1990 2 Hudspeth +WOB 48231 1990 106 Hunt +WOB 48233 1990 20 Hutchinson +WOB 48235 1990 0 Irion +WOB 48237 1990 7 Jack +WOB 48239 1990 73 Jackson +WOB 48241 1990 83 Jasper +WOB 48243 1990 0 Jeff Davis +WOB 48245 1990 255 Jefferson +WOB 48247 1990 0 Jim Hogg +WOB 48249 1990 9 Jim Wells +WOB 48251 1990 13 Johnson +WOB 48253 1990 16 Jones +WOB 48255 1990 8 Karnes +WOB 48257 1990 54 Kaufman +WOB 48259 1990 2 Kendall +WOB 48261 1990 925 Kenedy +WOB 48263 1990 1 Kent +WOB 48265 1990 4 Kerr +WOB 48267 1990 1 Kimble +WOB 48269 1990 3 King +WOB 48271 1990 5 Kinney +WOB 48273 1990 409 Kleberg +WOB 48275 1990 3 Knox +WOB 48277 1990 40 Lamar +WOB 48279 1990 4 Lamb +WOB 48281 1990 5 Lampasas +WOB 48283 1990 14 La Salle +WOB 48285 1990 1 Lavaca +WOB 48287 1990 14 Lee +WOB 48289 1990 22 Leon +WOB 48291 1990 43 Liberty +WOB 48293 1990 63 Limestone +WOB 48295 1990 0 Lipscomb +WOB 48297 1990 110 Live Oak +WOB 48299 1990 81 Llano +WOB 48301 1990 10 Loving +WOB 48303 1990 3 Lubbock +WOB 48305 1990 4 Lynn +WOB 48307 1990 10 McCulloch +WOB 48309 1990 48 McLennan +WOB 48311 1990 77 McMullen +WOB 48313 1990 7 Madison +WOB 48315 1990 101 Marion +WOB 48317 1990 2 Martin +WOB 48319 1990 0 Mason +WOB 48321 1990 776 Matagorda +WOB 48323 1990 30 Maverick +WOB 48325 1990 18 Medina +WOB 48327 1990 1 Menard +WOB 48329 1990 4 Midland +WOB 48331 1990 13 Milam +WOB 48333 1990 5 Mills +WOB 48335 1990 15 Mitchell +WOB 48337 1990 20 Montague +WOB 48339 1990 84 Montgomery +WOB 48341 1990 26 Moore +WOB 48343 1990 11 Morris +WOB 48345 1990 1 Motley +WOB 48347 1990 90 Nacogdoches +WOB 48349 1990 39 Navarro +WOB 48351 1990 18 Newton +WOB 48353 1990 5 Nolan +WOB 48355 1990 725 Nueces +WOB 48357 1990 1 Ochiltree +WOB 48359 1990 2 Oldham +WOB 48361 1990 62 Orange +WOB 48363 1990 84 Palo Pinto +WOB 48365 1990 53 Panola +WOB 48367 1990 17 Parker +WOB 48369 1990 9 Parmer +WOB 48371 1990 3 Pecos +WOB 48373 1990 136 Polk +WOB 48375 1990 33 Potter +WOB 48377 1990 2 Presidio +WOB 48379 1990 69 Rains +WOB 48381 1990 21 Randall +WOB 48383 1990 2 Reagan +WOB 48385 1990 0 Real +WOB 48387 1990 19 Red River +WOB 48389 1990 16 Reeves +WOB 48391 1990 130 Refugio +WOB 48393 1990 0 Roberts +WOB 48395 1990 29 Robertson +WOB 48397 1990 52 Rockwall +WOB 48399 1990 7 Runnels +WOB 48401 1990 39 Rusk +WOB 48403 1990 224 Sabine +WOB 48405 1990 167 San Augustine +WOB 48407 1990 148 San Jacinto +WOB 48409 1990 40 San Patricio +WOB 48411 1990 10 San Saba +WOB 48413 1990 0 Schleicher +WOB 48415 1990 13 Scurry +WOB 48417 1990 4 Shackelford +WOB 48419 1990 105 Shelby +WOB 48421 1990 0 Sherman +WOB 48423 1990 55 Smith +WOB 48425 1990 12 Somervell +WOB 48427 1990 16 Starr +WOB 48429 1990 70 Stephens +WOB 48431 1990 0 Sterling +WOB 48433 1990 4 Stonewall +WOB 48435 1990 2 Sutton +WOB 48437 1990 1 Swisher +WOB 48439 1990 88 Tarrant +WOB 48441 1990 9 Taylor +WOB 48443 1990 0 Terrell +WOB 48445 1990 3 Terry +WOB 48447 1990 8 Throckmorton +WOB 48449 1990 39 Titus +WOB 48451 1990 48 Tom Green +WOB 48453 1990 85 Travis +WOB 48455 1990 55 Trinity +WOB 48457 1990 33 Tyler +WOB 48459 1990 13 Upshur +WOB 48461 1990 0 Upton +WOB 48463 1990 5 Uvalde +WOB 48465 1990 161 Val Verde +WOB 48467 1990 28 Van Zandt +WOB 48469 1990 16 Victoria +WOB 48471 1990 36 Walker +WOB 48473 1990 13 Waller +WOB 48475 1990 1 Ward +WOB 48477 1990 31 Washington +WOB 48479 1990 48 Webb +WOB 48481 1990 11 Wharton +WOB 48483 1990 3 Wheeler +WOB 48485 1990 14 Wichita +WOB 48487 1990 18 Wilbarger +WOB 48489 1990 394 Willacy +WOB 48491 1990 31 Williamson +WOB 48493 1990 4 Wilson +WOB 48495 1990 1 Winkler +WOB 48497 1990 47 Wise +WOB 48499 1990 118 Wood +WOB 48501 1990 0 Yoakum +WOB 48503 1990 22 Young +WOB 48505 1990 159 Zapata +WOB 48507 1990 8 Zavala +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_AIRTR.ALO new file mode 100644 index 0000000..41e2716 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_AIRTR.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 00000 2002 80274.883 US +AIR 01000 2002 378.981 AL +AIR 02000 2002 1305.879 AK +AIR 04000 2002 2399.051 AZ +AIR 05000 2002 234.857 AR +AIR 06000 2002 9865.522 CA +AIR 08000 2002 2093.170 CO +AIR 09000 2002 412.004 CT +AIR 10000 2002 6.990 DE +AIR 11000 2002 0.000 DC +AIR 12000 2002 6810.120 FL +AIR 13000 2002 3613.656 GA +AIR 15000 2002 1932.330 HI +AIR 16000 2002 219.042 ID +AIR 17000 2002 4684.488 IL +AIR 18000 2002 742.879 IN +AIR 19000 2002 277.302 IA +AIR 20000 2002 139.027 KS +AIR 21000 2002 1385.494 KY +AIR 22000 2002 721.629 LA +AIR 23000 2002 228.730 ME +AIR 24000 2002 1203.205 MD +AIR 25000 2002 1536.288 MA +AIR 26000 2002 1975.557 MI +AIR 27000 2002 1307.324 MN +AIR 28000 2002 162.906 MS +AIR 29000 2002 2487.690 MO +AIR 30000 2002 279.679 MT +AIR 31000 2002 366.671 NE +AIR 32000 2002 1967.699 NV +AIR 33000 2002 233.382 NH +AIR 34000 2002 2112.657 NJ +AIR 35000 2002 490.036 NM +AIR 36000 2002 4849.026 NY +AIR 37000 2002 2413.449 NC +AIR 38000 2002 133.085 ND +AIR 39000 2002 1345.613 OH +AIR 40000 2002 504.578 OK +AIR 41000 2002 766.367 OR +AIR 42000 2002 2937.256 PA +AIR 44000 2002 311.990 RI +AIR 45000 2002 254.625 SC +AIR 46000 2002 144.910 SD +AIR 47000 2002 1937.315 TN +AIR 48000 2002 7646.956 TX +AIR 49000 2002 843.961 UT +AIR 50000 2002 47.254 VT +AIR 51000 2002 2059.020 VA +AIR 53000 2002 1690.312 WA +AIR 54000 2002 134.574 WV +AIR 55000 2002 638.164 WI +AIR 56000 2002 42.184 WY +AIR 72000 2002 552.500 PR +AIR 78000 2002 66.690 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_COAL.ALO new file mode 100644 index 0000000..ec1a96a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_COAL.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 00000 2002 312309 US +MIN 01000 2002 14916 AL +MIN 02000 2002 0 AK +MIN 04000 2002 0 AZ +MIN 05000 2002 1 AR +MIN 06000 2002 0 CA +MIN 08000 2002 25331 CO +MIN 09000 2002 0 CT +MIN 10000 2002 0 DE +MIN 11000 2002 0 DC +MIN 12000 2002 0 FL +MIN 13000 2002 0 GA +MIN 15000 2002 0 HI +MIN 16000 2002 0 ID +MIN 17000 2002 26930 IL +MIN 18000 2002 7910 IN +MIN 19000 2002 0 IA +MIN 20000 2002 0 KS +MIN 21000 2002 75587 KY +MIN 22000 2002 0 LA +MIN 23000 2002 0 ME +MIN 24000 2002 3328 MD +MIN 25000 2002 0 MA +MIN 26000 2002 0 MI +MIN 27000 2002 0 MN +MIN 28000 2002 0 MS +MIN 29000 2002 0 MO +MIN 30000 2002 0 MT +MIN 31000 2002 0 NE +MIN 32000 2002 0 NV +MIN 33000 2002 0 NH +MIN 34000 2002 0 NJ +MIN 35000 2002 1753 NM +MIN 36000 2002 0 NY +MIN 37000 2002 0 NC +MIN 38000 2002 0 ND +MIN 39000 2002 10851 OH +MIN 40000 2002 463 OK +MIN 41000 2002 0 OR +MIN 42000 2002 55781 PA +MIN 44000 2002 0 RI +MIN 45000 2002 0 SC +MIN 46000 2002 0 SD +MIN 47000 2002 1086 TN +MIN 48000 2002 0 TX +MIN 49000 2002 25035 UT +MIN 50000 2002 0 VT +MIN 51000 2002 20491 VA +MIN 53000 2002 0 WA +MIN 54000 2002 42846 WV +MIN 55000 2002 0 WI +MIN 56000 2002 0 WY +MIN 72000 2002 0 PR +MIN 78000 2002 0 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_CONST.ALO new file mode 100644 index 0000000..14c2675 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_CONST.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +8/5/05: Add Puerto Rico & Virgin Islands per Economic Census data + (without adjustment for relative costs) +8/19/05 epa: "US" total does not include PR or VI. +10/17/05 epa: Correct Const geo adjustment formula. +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +CON 00000 2003 531654255 US 535904837 +CON 01000 2003 7825362 AL +CON 02000 2003 1329604 AK +CON 04000 2003 17593001 AZ +CON 05000 2003 4105039 AR +CON 06000 2003 57853378 CA +CON 08000 2003 11523481 CO +CON 09000 2003 4722042 CT +CON 10000 2003 1592310 DE +CON 11000 2003 1814698 DC +CON 12000 2003 50926810 FL +CON 13000 2003 20183128 GA +CON 15000 2003 1805222 HI +CON 16000 2003 3024820 ID +CON 17000 2003 19816529 IL +CON 18000 2003 12998779 IN +CON 19000 2003 6467683 IA +CON 20000 2003 4522130 KS +CON 21000 2003 7225832 KY +CON 22000 2003 6608336 LA +CON 23000 2003 2013458 ME +CON 24000 2003 9412890 MD +CON 25000 2003 8362815 MA +CON 26000 2003 14505437 MI +CON 27000 2003 10636156 MN +CON 28000 2003 3767705 MS +CON 29000 2003 9549378 MO +CON 30000 2003 972483 MT +CON 31000 2003 3497260 NE +CON 32000 2003 9654015 NV +CON 33000 2003 2172522 NH +CON 34000 2003 11650051 NJ +CON 35000 2003 3194307 NM +CON 36000 2003 20715717 NY +CON 37000 2003 19174805 NC +CON 38000 2003 1111321 ND +CON 39000 2003 16520456 OH +CON 40000 2003 5230108 OK +CON 41000 2003 7098860 OR +CON 42000 2003 15095829 PA +CON 44000 2003 1152141 RI +CON 45000 2003 9889541 SC +CON 46000 2003 1215618 SD +CON 47000 2003 10662234 TN +CON 48000 2003 45936058 TX +CON 49000 2003 5094545 UT +CON 50000 2003 883892 VT +CON 51000 2003 15269033 VA +CON 53000 2003 12131890 WA +CON 54000 2003 1751944 WV +CON 55000 2003 10360606 WI +CON 56000 2003 1032996 WY +CON 72000 2003 3965000 PR +CON 78000 2003 285582 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_FARMS.ALO new file mode 100644 index 0000000..047463e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_FARMS.ALO @@ -0,0 +1,76 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +FRM 00000 2002 302697252 US 302891349302891349 +FRM 01000 2002 1995139 AL +FRM 02000 2002 31824 AK +FRM 04000 2002 887966 AZ +FRM 05000 2002 7457599 AR +FRM 06000 2002 8466321 CA +FRM 08000 2002 4346955 CO +FRM 09000 2002 131248 CT +FRM 10000 2002 433105 DE +FRM 11000 2002 0 DC +FRM 12000 2002 2313537 FL +FRM 13000 2002 3245784 GA +FRM 15000 2002 109461 HI +FRM 16000 2002 4313288 ID +FRM 17000 2002 22562904 IL +FRM 18000 2002 11937370 IN +FRM 19000 2002 23994343 IA +FRM 20000 2002 18976719 KS +FRM 21000 2002 4978994 KY +FRM 22000 2002 3332146 LA +FRM 23000 2002 394121 ME +FRM 24000 2002 1282004 MD +FRM 25000 2002 159253 MA +FRM 26000 2002 6827903 MI +FRM 27000 2002 19398309 MN +FRM 28000 2002 4139341 MS +FRM 29000 2002 13137184 MO +FRM 30000 2002 8742111 MT +FRM 31000 2002 17336624 NE +FRM 32000 2002 549076 NV +FRM 33000 2002 95983 NH +FRM 34000 2002 444670 NJ +FRM 35000 2002 856166 NM +FRM 36000 2002 3846368 NY +FRM 37000 2002 4308209 NC +FRM 38000 2002 19908697 ND +FRM 39000 2002 10041416 OH +FRM 40000 2002 7705860 OK +FRM 41000 2002 3119384 OR +FRM 42000 2002 4079276 PA +FRM 44000 2002 17820 RI +FRM 45000 2002 1374617 SC +FRM 46000 2002 13492286 SD +FRM 47000 2002 4365360 TN +FRM 48000 2002 17750938 TX +FRM 49000 2002 961037 UT +FRM 50000 2002 454699 VT +FRM 51000 2002 2623776 VA +FRM 53000 2002 4894634 WA +FRM 54000 2002 648635 WV +FRM 55000 2002 8928083 WI +FRM 56000 2002 1298709 WY +FRM 72000 2002 193495 PR +FRM 78000 2002 602 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_GOLF.ALO new file mode 100644 index 0000000..f553ae8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_GOLF.ALO @@ -0,0 +1,77 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +8/5/05: add PR & VI by web search for golf courses. +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +GC 00000 2002 11842 US 11869 11869 +GC 01000 2002 177 AL +GC 02000 2002 18 AK +GC 04000 2002 196 AZ +GC 05000 2002 156 AR +GC 06000 2002 689 CA +GC 08000 2002 125 CO +GC 09000 2002 157 CT +GC 10000 2002 36 DE +GC 11000 2002 6 DC +GC 12000 2002 587 FL +GC 13000 2002 279 GA +GC 15000 2002 50 HI +GC 16000 2002 73 ID +GC 17000 2002 497 IL +GC 18000 2002 334 IN +GC 19000 2002 318 IA +GC 20000 2002 170 KS +GC 21000 2002 198 KY +GC 22000 2002 126 LA +GC 23000 2002 105 ME +GC 24000 2002 142 MD +GC 25000 2002 326 MA +GC 26000 2002 652 MI +GC 27000 2002 357 MN +GC 28000 2002 129 MS +GC 29000 2002 262 MO +GC 30000 2002 76 MT +GC 31000 2002 155 NE +GC 32000 2002 62 NV +GC 33000 2002 84 NH +GC 34000 2002 235 NJ +GC 35000 2002 43 NM +GC 36000 2002 674 NY +GC 37000 2002 456 NC +GC 38000 2002 70 ND +GC 39000 2002 646 OH +GC 40000 2002 119 OK +GC 41000 2002 148 OR +GC 42000 2002 612 PA +GC 44000 2002 61 RI +GC 45000 2002 284 SC +GC 46000 2002 71 SD +GC 47000 2002 216 TN +GC 48000 2002 581 TX +GC 49000 2002 55 UT +GC 50000 2002 48 VT +GC 51000 2002 245 VA +GC 53000 2002 211 WA +GC 54000 2002 91 WV +GC 55000 2002 393 WI +GC 56000 2002 41 WY +GC 72000 2002 23 PR +GC 78000 2002 4 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_HOLSL.ALO new file mode 100644 index 0000000..2fe2a78 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_HOLSL.ALO @@ -0,0 +1,77 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- (50xx & 51xx) + +8/8/2005 EPA adds data for Puerto Rico & Virgin Islands. +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +COM 00000 2002 436882 US 439765 439765 +COM 01000 2002 5792 AL +COM 02000 2002 748 AK +COM 04000 2002 6636 AZ +COM 05000 2002 3535 AR +COM 06000 2002 58700 CA +COM 08000 2002 7458 CO +COM 09000 2002 4796 CT +COM 10000 2002 953 DE +COM 11000 2002 338 DC +COM 12000 2002 30759 FL +COM 13000 2002 13617 GA +COM 15000 2002 1828 HI +COM 16000 2002 1977 ID +COM 17000 2002 20597 IL +COM 18000 2002 8439 IN +COM 19000 2002 5003 IA +COM 20000 2002 4719 KS +COM 21000 2002 4713 KY +COM 22000 2002 5965 LA +COM 23000 2002 1706 ME +COM 24000 2002 6022 MD +COM 25000 2002 9439 MA +COM 26000 2002 13055 MI +COM 27000 2002 9166 MN +COM 28000 2002 2967 MS +COM 29000 2002 8700 MO +COM 30000 2002 1566 MT +COM 31000 2002 2972 NE +COM 32000 2002 2586 NV +COM 33000 2002 2045 NH +COM 34000 2002 16547 NJ +COM 35000 2002 2089 NM +COM 36000 2002 35628 NY +COM 37000 2002 12070 NC +COM 38000 2002 1517 ND +COM 39000 2002 16202 OH +COM 40000 2002 4835 OK +COM 41000 2002 5815 OR +COM 42000 2002 16272 PA +COM 44000 2002 1481 RI +COM 45000 2002 4939 SC +COM 46000 2002 1342 SD +COM 47000 2002 7613 TN +COM 48000 2002 31874 TX +COM 49000 2002 3346 UT +COM 50000 2002 869 VT +COM 51000 2002 7635 VA +COM 53000 2002 9671 WA +COM 54000 2002 1707 WV +COM 55000 2002 7800 WI +COM 56000 2002 833 WY +COM 72000 2002 2809 PR +COM 78000 2002 74 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_HOUSE.ALO new file mode 100644 index 0000000..9e0446d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_HOUSE.ALO @@ -0,0 +1,75 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +HOU 00000 2002 119324211 US 120792889120792889 +HOU 01000 2002 2014523 AL +HOU 02000 2002 265374 AK +HOU 04000 2002 2328720 AZ +HOU 05000 2002 1201909 AR +HOU 06000 2002 12510241 CA +HOU 08000 2002 1928962 CO +HOU 09000 2002 1402657 CT +HOU 10000 2002 352030 DE +HOU 11000 2002 272636 DC +HOU 12000 2002 7624546 FL +HOU 13000 2002 3487058 GA +HOU 15000 2002 470512 HI +HOU 16000 2002 552115 ID +HOU 17000 2002 4981422 IL +HOU 18000 2002 2615834 IN +HOU 19000 2002 1257458 IA +HOU 20000 2002 1159501 KS +HOU 21000 2002 1796795 KY +HOU 22000 2002 1880772 LA +HOU 23000 2002 664633 ME +HOU 24000 2002 2197126 MD +HOU 25000 2002 2648992 MA +HOU 26000 2002 4340564 MI +HOU 27000 2002 2132669 MN +HOU 28000 2002 1195042 MS +HOU 29000 2002 2503323 MO +HOU 30000 2002 417106 MT +HOU 31000 2002 738896 NE +HOU 32000 2002 901558 NV +HOU 33000 2002 561179 NH +HOU 34000 2002 3373095 NJ +HOU 35000 2002 805294 NM +HOU 36000 2002 7762795 NY +HOU 37000 2002 3707633 NC +HOU 38000 2002 294175 ND +HOU 39000 2002 4876698 OH +HOU 40000 2002 1541431 OK +HOU 41000 2002 1495593 OR +HOU 42000 2002 5328266 PA +HOU 44000 2002 443761 RI +HOU 45000 2002 1825465 SC +HOU 46000 2002 332361 SD +HOU 47000 2002 2519715 TN +HOU 48000 2002 8501936 TX +HOU 49000 2002 808633 UT +HOU 50000 2002 299580 VT +HOU 51000 2002 3006526 VA +HOU 53000 2002 2530215 WA +HOU 54000 2002 852101 WV +HOU 55000 2002 2386857 WI +HOU 56000 2002 227928 WY +HOU 72000 2002 1418476 PR +HOU 78000 2002 50202 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_LOGGN.ALO new file mode 100644 index 0000000..9e156dd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_LOGGN.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 00000 2002 20205692831 US +LOG 01000 2002 1445844371 AL +LOG 02000 2002 169927987 AK +LOG 04000 2002 17362391 AZ +LOG 05000 2002 950904275 AR +LOG 06000 2002 831902932 CA +LOG 08000 2002 59159870 CO +LOG 09000 2002 33614777 CT +LOG 10000 2002 13594991 DE +LOG 11000 2002 0 DC +LOG 12000 2002 654558274 FL +LOG 13000 2002 1596560108 GA +LOG 15000 2002 0 HI +LOG 16000 2002 342693740 ID +LOG 17000 2002 120253302 IL +LOG 18000 2002 165096196 IN +LOG 19000 2002 63279873 IA +LOG 20000 2002 30048782 KS +LOG 21000 2002 391249290 KY +LOG 22000 2002 1093426902 LA +LOG 23000 2002 764033653 ME +LOG 24000 2002 121798484 MD +LOG 25000 2002 117454672 MA +LOG 26000 2002 466969286 MI +LOG 27000 2002 494351073 MN +LOG 28000 2002 1319490827 MS +LOG 29000 2002 325957681 MO +LOG 30000 2002 224467391 MT +LOG 31000 2002 22686434 NE +LOG 32000 2002 4128840 NV +LOG 33000 2002 246582044 NH +LOG 34000 2002 86214778 NJ +LOG 35000 2002 24216145 NM +LOG 36000 2002 303998463 NY +LOG 37000 2002 1092905817 NC +LOG 38000 2002 4084082 ND +LOG 39000 2002 176198232 OH +LOG 40000 2002 182262278 OK +LOG 41000 2002 965581468 OR +LOG 42000 2002 373187390 PA +LOG 44000 2002 9365007 RI +LOG 45000 2002 799937880 SC +LOG 46000 2002 32202418 SD +LOG 47000 2002 453988379 TN +LOG 48000 2002 870303833 TX +LOG 49000 2002 18805737 UT +LOG 50000 2002 143277562 VT +LOG 51000 2002 737995829 VA +LOG 53000 2002 968163394 WA +LOG 54000 2002 276799438 WV +LOG 55000 2002 569478138 WI +LOG 56000 2002 29328118 WY +LOG 72000 2002 0 PR +LOG 78000 2002 0 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_LSCAP.ALO new file mode 100644 index 0000000..cd61ecf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_LSCAP.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +8/5/05 Add values for PR & VI based on Hawaii per capita LSC employees. +8/19/05 epa: TEST "US" total does not include PR or VI. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +LSC 00000 2002 423474 US 430118 430118 +LSC 01000 2002 5751 AL +LSC 02000 2002 287 AK +LSC 04000 2002 12713 AZ +LSC 05000 2002 2398 AR +LSC 06000 2002 71082 CA +LSC 08000 2002 9499 CO +LSC 09000 2002 5674 CT +LSC 10000 2002 1594 DE +LSC 11000 2002 38 DC +LSC 12000 2002 37081 FL +LSC 13000 2002 15529 GA +LSC 15000 2002 2067 HI +LSC 16000 2002 1813 ID +LSC 17000 2002 13939 IL +LSC 18000 2002 8216 IN +LSC 19000 2002 2577 IA +LSC 20000 2002 3173 KS +LSC 21000 2002 3370 KY +LSC 22000 2002 3318 LA +LSC 23000 2002 1386 ME +LSC 24000 2002 11462 MD +LSC 25000 2002 7824 MA +LSC 26000 2002 10310 MI +LSC 27000 2002 4837 MN +LSC 28000 2002 1817 MS +LSC 29000 2002 7348 MO +LSC 30000 2002 527 MT +LSC 31000 2002 1697 NE +LSC 32000 2002 6347 NV +LSC 33000 2002 1735 NH +LSC 34000 2002 13290 NJ +LSC 35000 2002 1980 NM +LSC 36000 2002 13080 NY +LSC 37000 2002 14751 NC +LSC 38000 2002 284 ND +LSC 39000 2002 18792 OH +LSC 40000 2002 5319 OK +LSC 41000 2002 5200 OR +LSC 42000 2002 15590 PA +LSC 44000 2002 974 RI +LSC 45000 2002 7318 SC +LSC 46000 2002 445 SD +LSC 47000 2002 7329 TN +LSC 48000 2002 30236 TX +LSC 49000 2002 2253 UT +LSC 50000 2002 597 VT +LSC 51000 2002 14660 VA +LSC 53000 2002 8495 WA +LSC 54000 2002 1498 WV +LSC 55000 2002 5615 WI +LSC 56000 2002 359 WY +LSC 72000 2002 6462 PR +LSC 78000 2002 182 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_MNFG.ALO new file mode 100644 index 0000000..276681f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_MNFG.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- + +8/8/2005 EPA added data for Puerto Rico (1997) and Virgin Islands (2002). +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +MFG 00000 2002 27037833 US 27202631 27202631 +MFG 01000 2002 500462 AL +MFG 02000 2002 15139 AK +MFG 04000 2002 330859 AZ +MFG 05000 2002 370917 AR +MFG 06000 2002 2873983 CA +MFG 08000 2002 286476 CO +MFG 09000 2002 419829 CT +MFG 10000 2002 70147 DE +MFG 11000 2002 14269 DC +MFG 12000 2002 717081 FL +MFG 13000 2002 766341 GA +MFG 15000 2002 21681 HI +MFG 16000 2002 106002 ID +MFG 17000 2002 1395102 IL +MFG 18000 2002 1075981 IN +MFG 19000 2002 403512 IA +MFG 20000 2002 333380 KS +MFG 21000 2002 487546 KY +MFG 22000 2002 281554 LA +MFG 23000 2002 120135 ME +MFG 24000 2002 280543 MD +MFG 25000 2002 640012 MA +MFG 26000 2002 1359367 MI +MFG 27000 2002 642378 MN +MFG 28000 2002 328327 MS +MFG 29000 2002 584198 MO +MFG 30000 2002 36818 MT +MFG 31000 2002 174874 NE +MFG 32000 2002 75934 NV +MFG 33000 2002 170789 NH +MFG 34000 2002 675176 NJ +MFG 35000 2002 65764 NM +MFG 36000 2002 1213654 NY +MFG 37000 2002 1053474 NC +MFG 38000 2002 39922 ND +MFG 39000 2002 1623160 OH +MFG 40000 2002 279099 OK +MFG 41000 2002 340714 OR +MFG 42000 2002 1333729 PA +MFG 44000 2002 114663 RI +MFG 45000 2002 511633 SC +MFG 46000 2002 66115 SD +MFG 47000 2002 762343 TN +MFG 48000 2002 1602760 TX +MFG 49000 2002 206478 UT +MFG 50000 2002 84387 VT +MFG 51000 2002 575186 VA +MFG 53000 2002 511508 WA +MFG 54000 2002 134272 WV +MFG 55000 2002 939826 WI +MFG 56000 2002 20334 WY +MFG 72000 2002 163605 PR +MFG 78000 2002 1193 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_OIL.ALO new file mode 100644 index 0000000..d68eec2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_OIL.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 00000 2002 144302 US +OIL 01000 2002 1061 AL +OIL 02000 2002 2287 AK +OIL 04000 2002 394 AZ +OIL 05000 2002 1271 AR +OIL 06000 2002 5874 CA +OIL 08000 2002 5859 CO +OIL 09000 2002 20 CT +OIL 10000 2002 146 DE +OIL 11000 2002 7 DC +OIL 12000 2002 382 FL +OIL 13000 2002 123 GA +OIL 15000 2002 0 HI +OIL 16000 2002 86 ID +OIL 17000 2002 1393 IL +OIL 18000 2002 276 IN +OIL 19000 2002 20 IA +OIL 20000 2002 3632 KS +OIL 21000 2002 1031 KY +OIL 22000 2002 18115 LA +OIL 23000 2002 20 ME +OIL 24000 2002 57 MD +OIL 25000 2002 20 MA +OIL 26000 2002 1138 MI +OIL 27000 2002 126 MN +OIL 28000 2002 2300 MS +OIL 29000 2002 170 MO +OIL 30000 2002 926 MT +OIL 31000 2002 185 NE +OIL 32000 2002 134 NV +OIL 33000 2002 20 NH +OIL 34000 2002 57 NJ +OIL 35000 2002 5847 NM +OIL 36000 2002 334 NY +OIL 37000 2002 86 NC +OIL 38000 2002 1658 ND +OIL 39000 2002 2085 OH +OIL 40000 2002 13921 OK +OIL 41000 2002 86 OR +OIL 42000 2002 2398 PA +OIL 44000 2002 7 RI +OIL 45000 2002 86 SC +OIL 46000 2002 59 SD +OIL 47000 2002 157 TN +OIL 48000 2002 60013 TX +OIL 49000 2002 1930 UT +OIL 50000 2002 0 VT +OIL 51000 2002 362 VA +OIL 53000 2002 232 WA +OIL 54000 2002 2607 WV +OIL 55000 2002 20 WI +OIL 56000 2002 5284 WY +OIL 72000 2002 0 PR +OIL 78000 2002 0 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_POP.ALO new file mode 100644 index 0000000..4f3ef17 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_POP.ALO @@ -0,0 +1,77 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent HUMAN POPULATION + per US Census data + + +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +POP 00000 2002 287941220 US 291909438291909438 +POP 01000 2002 4481078 AL +POP 02000 2002 640841 AK +POP 04000 2002 5439091 AZ +POP 05000 2002 2707509 AR +POP 06000 2002 34988261 CA +POP 08000 2002 4498077 CO +POP 09000 2002 3459006 CT +POP 10000 2002 806105 DE +POP 11000 2002 564643 DC +POP 12000 2002 16681144 FL +POP 13000 2002 8539735 GA +POP 15000 2002 1234514 HI +POP 16000 2002 1343194 ID +POP 17000 2002 12585204 IL +POP 18000 2002 6158327 IN +POP 19000 2002 2934776 IA +POP 20000 2002 2712896 KS +POP 21000 2002 4089985 KY +POP 22000 2002 4477042 LA +POP 23000 2002 1297750 ME +POP 24000 2002 5441531 MD +POP 25000 2002 6412554 MA +POP 26000 2002 10042495 MI +POP 27000 2002 5025081 MN +POP 28000 2002 2867635 MS +POP 29000 2002 5679770 MO +POP 30000 2002 910670 MT +POP 31000 2002 1726437 NE +POP 32000 2002 2168304 NV +POP 33000 2002 1275607 NH +POP 34000 2002 8577250 NJ +POP 35000 2002 1855143 NM +POP 36000 2002 19151066 NY +POP 37000 2002 8311899 NC +POP 38000 2002 633799 ND +POP 39000 2002 11410396 OH +POP 40000 2002 3488201 OK +POP 41000 2002 3523281 OR +POP 42000 2002 12328459 PA +POP 44000 2002 1068897 RI +POP 45000 2002 4105848 SC +POP 46000 2002 760452 SD +POP 47000 2002 5792297 TN +POP 48000 2002 21723220 TX +POP 49000 2002 2319743 UT +POP 50000 2002 616500 VT +POP 51000 2002 7273572 VA +POP 53000 2002 6067146 WA +POP 54000 2002 1805230 WV +POP 55000 2002 5440367 WI +POP 56000 2002 499192 WY +POP 72000 2002 3859606 PR +POP 78000 2002 108612 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_RAIL.ALO new file mode 100644 index 0000000..844e605 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_RAIL.ALO @@ -0,0 +1,81 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 00000 2002 912035.000 US +RR 01000 2002 17264.340 AL +RR 02000 2002 2067.173 AK +RR 04000 2002 21087.280 AZ +RR 05000 2002 22131.830 AR +RR 06000 2002 54734.890 CA +RR 08000 2002 13647.230 CO +RR 09000 2002 11157.783 CT +RR 10000 2002 265.760 DE +RR 11000 2002 368.590 DC +RR 12000 2002 11168.520 FL +RR 13000 2002 26751.590 GA +RR 15000 2002 0.000 HI +RR 16000 2002 10355.330 ID +RR 17000 2002 50037.460 IL +RR 18000 2002 22599.980 IN +RR 19000 2002 21861.290 IA +RR 20000 2002 31033.760 KS +RR 21000 2002 20768.210 KY +RR 22000 2002 15806.520 LA +RR 23000 2002 4186.179 ME +RR 24000 2002 6849.870 MD +RR 25000 2002 2130.150 MA +RR 26000 2002 8138.730 MI +RR 27000 2002 19305.130 MN +RR 28000 2002 12828.810 MS +RR 29000 2002 39545.770 MO +RR 30000 2002 43196.200 MT +RR 31000 2002 51194.770 NE +RR 32000 2002 7521.840 NV +RR 33000 2002 4114.750 NH +RR 34000 2002 1506.560 NJ +RR 35000 2002 27454.550 NM +RR 36000 2002 14114.510 NY +RR 37000 2002 10974.820 NC +RR 38000 2002 17144.320 ND +RR 39000 2002 31537.150 OH +RR 40000 2002 19168.110 OK +RR 41000 2002 8334.070 OR +RR 42000 2002 18518.820 PA +RR 44000 2002 1.140 RI +RR 45000 2002 9188.070 SC +RR 46000 2002 3147.360 SD +RR 47000 2002 21442.350 TN +RR 48000 2002 77519.150 TX +RR 49000 2002 8562.840 UT +RR 50000 2002 1988.655 VT +RR 51000 2002 29002.710 VA +RR 53000 2002 15468.690 WA +RR 54000 2002 11191.450 WV +RR 55000 2002 11125.580 WI +RR 56000 2002 22524.360 WY +RR 72000 2002 0.000 PR +RR 78000 2002 0.000 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_RVPRK.ALO new file mode 100644 index 0000000..4aa46ec --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_RVPRK.ALO @@ -0,0 +1,81 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is NUMBER OF OFFROAD MOTORCYCLES & ATVS. +It is used as the US-to-State allocation equivalent of the +State-to-County allocation surrogate: +RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +8/11/05 epa: Updates to use 1998 MC/ATV pops instead of 1996 RV parks. + PR & VI are added using Florida per capita MC&ATV value. +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +RVP 00000 1998 5106000 US 5144758 5144758 +RVP 01000 1998 145692 AL +RVP 02000 1998 54507 AK +RVP 04000 1998 84532 AZ +RVP 05000 1998 147937 AR +RVP 06000 1998 421499 CA +RVP 08000 1998 76092 CO +RVP 09000 1998 33062 CT +RVP 10000 1998 10136 DE +RVP 11000 1998 561 DC +RVP 12000 1998 162455 FL +RVP 13000 1998 179694 GA +RVP 15000 1998 0 HI +RVP 16000 1998 66775 ID +RVP 17000 1998 131136 IL +RVP 18000 1998 111191 IN +RVP 19000 1998 56859 IA +RVP 20000 1998 42910 KS +RVP 21000 1998 128154 KY +RVP 22000 1998 149453 LA +RVP 23000 1998 40899 ME +RVP 24000 1998 53819 MD +RVP 25000 1998 50474 MA +RVP 26000 1998 235656 MI +RVP 27000 1998 125199 MN +RVP 28000 1998 120597 MS +RVP 29000 1998 137354 MO +RVP 30000 1998 43789 MT +RVP 31000 1998 41261 NE +RVP 32000 1998 38046 NV +RVP 33000 1998 29965 NH +RVP 34000 1998 76179 NJ +RVP 35000 1998 36085 NM +RVP 36000 1998 179961 NY +RVP 37000 1998 173868 NC +RVP 38000 1998 19481 ND +RVP 39000 1998 198082 OH +RVP 40000 1998 73766 OK +RVP 41000 1998 96826 OR +RVP 42000 1998 227997 PA +RVP 44000 1998 6074 RI +RVP 45000 1998 72995 SC +RVP 46000 1998 23123 SD +RVP 47000 1998 162261 TN +RVP 48000 1998 277412 TX +RVP 49000 1998 90755 UT +RVP 50000 1998 17736 VT +RVP 51000 1998 95942 VA +RVP 53000 1998 105888 WA +RVP 54000 1998 102879 WV +RVP 55000 1998 121539 WI +RVP 56000 1998 27447 WY +RVP 72000 1998 37588 PR +RVP 78000 1998 1170 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_SBC.ALO new file mode 100644 index 0000000..3e0367c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_SBC.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 00000 2002 198293 US +SBC 01000 2002 0 AL +SBC 02000 2002 287 AK +SBC 04000 2002 409 AZ +SBC 05000 2002 0 AR +SBC 06000 2002 5297 CA +SBC 08000 2002 9499 CO +SBC 09000 2002 5674 CT +SBC 10000 2002 0 DE +SBC 11000 2002 38 DC +SBC 12000 2002 0 FL +SBC 13000 2002 18 GA +SBC 15000 2002 0 HI +SBC 16000 2002 1813 ID +SBC 17000 2002 13929 IL +SBC 18000 2002 7648 IN +SBC 19000 2002 2577 IA +SBC 20000 2002 3084 KS +SBC 21000 2002 2044 KY +SBC 22000 2002 0 LA +SBC 23000 2002 1386 ME +SBC 24000 2002 10559 MD +SBC 25000 2002 7824 MA +SBC 26000 2002 10310 MI +SBC 27000 2002 4837 MN +SBC 28000 2002 0 MS +SBC 29000 2002 6922 MO +SBC 30000 2002 527 MT +SBC 31000 2002 1697 NE +SBC 32000 2002 914 NV +SBC 33000 2002 1735 NH +SBC 34000 2002 12736 NJ +SBC 35000 2002 1764 NM +SBC 36000 2002 13080 NY +SBC 37000 2002 980 NC +SBC 38000 2002 284 ND +SBC 39000 2002 18792 OH +SBC 40000 2002 4 OK +SBC 41000 2002 5200 OR +SBC 42000 2002 15590 PA +SBC 44000 2002 974 RI +SBC 45000 2002 0 SC +SBC 46000 2002 445 SD +SBC 47000 2002 804 TN +SBC 48000 2002 113 TX +SBC 49000 2002 2253 UT +SBC 50000 2002 597 VT +SBC 51000 2002 9931 VA +SBC 53000 2002 8246 WA +SBC 54000 2002 1498 WV +SBC 55000 2002 5615 WI +SBC 56000 2002 359 WY +SBC 72000 2002 0 PR +SBC 78000 2002 0 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_SBR.ALO new file mode 100644 index 0000000..54287c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_SBR.ALO @@ -0,0 +1,78 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 00000 2002 66261867 US +SBR 01000 2002 0 AL +SBR 02000 2002 253216 AK +SBR 04000 2002 223051 AZ +SBR 05000 2002 0 AR +SBR 06000 2002 1281847 CA +SBR 08000 2002 1928962 CO +SBR 09000 2002 1402657 CT +SBR 10000 2002 0 DE +SBR 11000 2002 272636 DC +SBR 12000 2002 0 FL +SBR 13000 2002 17469 GA +SBR 15000 2002 0 HI +SBR 16000 2002 552115 ID +SBR 17000 2002 4953214 IL +SBR 18000 2002 2412097 IN +SBR 19000 2002 1257458 IA +SBR 20000 2002 1050315 KS +SBR 21000 2002 934912 KY +SBR 22000 2002 0 LA +SBR 23000 2002 664633 ME +SBR 24000 2002 2041686 MD +SBR 25000 2002 2648992 MA +SBR 26000 2002 4340564 MI +SBR 27000 2002 2132669 MN +SBR 28000 2002 0 MS +SBR 29000 2002 2102506 MO +SBR 30000 2002 417106 MT +SBR 31000 2002 738896 NE +SBR 32000 2002 218587 NV +SBR 33000 2002 561179 NH +SBR 34000 2002 3108801 NJ +SBR 35000 2002 591767 NM +SBR 36000 2002 7762795 NY +SBR 37000 2002 347697 NC +SBR 38000 2002 294175 ND +SBR 39000 2002 4876698 OH +SBR 40000 2002 14400 OK +SBR 41000 2002 1495593 OR +SBR 42000 2002 5328266 PA +SBR 44000 2002 443761 RI +SBR 45000 2002 0 SC +SBR 46000 2002 332361 SD +SBR 47000 2002 492650 TN +SBR 48000 2002 95221 TX +SBR 49000 2002 808633 UT +SBR 50000 2002 299580 VT +SBR 51000 2002 1655233 VA +SBR 53000 2002 2440583 WA +SBR 54000 2002 852101 WV +SBR 55000 2002 2386857 WI +SBR 56000 2002 227928 WY +SBR 72000 2002 0 PR +SBR 78000 2002 0 VI +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_SNOWM.ALO new file mode 100644 index 0000000..d029b03 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_SNOWM.ALO @@ -0,0 +1,83 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +The data in this file is for NUMBER OF SNOWMOBILES +1/22/01 c.harvey changes NV: zero to 100 for Zephyr Cove Snowmobile Center + +4/7/05: Cimulus added Puerto Rico and US Virgin Islands. Puerto Rico was copied from Oklahoma for testing because + it had the closest number of counties (OK had 77 and PR had 78). US Virgin Islands was copied from Deleware + for testing because they have the same number of counties. Unlike the state-level allocation files, the number + of counties does not actually matter for this file, since it is only broken down to the state level. This is + only meant as a sample file including Puerto Rico and US Virgin Islands; the indicator value associated with + each of these is not valid. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +SNM 00000 1998 1566532 +SNM 01000 1998 0 +SNM 02000 1998 60000 +SNM 04000 1998 10000 +SNM 05000 1998 0 +SNM 06000 1998 14175 +SNM 08000 1998 29400 +SNM 09000 1998 1381 +SNM 10000 1998 0 +SNM 11000 1998 0 +SNM 12000 1998 0 +SNM 13000 1998 0 +SNM 15000 1998 0 +SNM 16000 1998 36778 +SNM 17000 1998 61022 +SNM 18000 1998 20153 +SNM 19000 1998 34650 +SNM 20000 1998 0 +SNM 21000 1998 0 +SNM 22000 1998 0 +SNM 23000 1998 87150 +SNM 24000 1998 247 +SNM 25000 1998 13935 +SNM 26000 1998 307027 +SNM 27000 1998 288659 +SNM 28000 1998 0 +SNM 29000 1998 0 +SNM 30000 1998 15079 +SNM 31000 1998 1451 +SNM 32000 1998 100 +SNM 33000 1998 37047 +SNM 34000 1998 2639 +SNM 35000 1998 1308 +SNM 36000 1998 115500 +SNM 37000 1998 0 +SNM 38000 1998 17011 +SNM 39000 1998 24150 +SNM 40000 1998 0 +SNM 41000 1998 14097 +SNM 42000 1998 45150 +SNM 44000 1998 0 +SNM 45000 1998 0 +SNM 46000 1998 13163 +SNM 47000 1998 0 +SNM 48000 1998 0 +SNM 49000 1998 25723 +SNM 50000 1998 28073 +SNM 51000 1998 0 +SNM 53000 1998 29225 +SNM 54000 1998 0 +SNM 55000 1998 212327 +SNM 56000 1998 19912 +SNM 72000 1998 0 +SNM 78000 1998 0 +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_WIB.ALO new file mode 100644 index 0000000..2ba1882 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_WIB.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +The data in this file is relative RECREATIONAL MARINE CRAFT (based on +ORNL fuel consumption data). + +8/10/05 EPA: added Puerto Rico & Virgin Islands, based on number + of boats in these islands relative to Florida, according to + US Coast Guard 2002 data: + [Numbered_Boats_2002_FINAL(US Coast Guard).xls] +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ 1.007974 +WIB 00000 1992 893864 US 900991 900991 +WIB 01000 1992 21513 AL 0.024067 +WIB 02000 1992 2939 AK 0.003288 +WIB 04000 1992 10871 AZ 0.012162 +WIB 05000 1992 11717 AR 0.013108 +WIB 06000 1992 64317 CA 0.071954 +WIB 08000 1992 4855 CO 0.005431 +WIB 09000 1992 12544 CT 0.014033 +WIB 10000 1992 6498 DE 0.00727 +WIB 11000 1992 390 DC 0.000436 +WIB 12000 1992 104051 FL 0.116406 +WIB 13000 1992 20367 GA 0.022785 +WIB 15000 1992 2656 HI 0.002971 +WIB 16000 1992 5417 ID 0.00606 +WIB 17000 1992 22732 IL 0.025431 +WIB 18000 1992 9617 IN 0.010759 +WIB 19000 1992 8655 IA 0.009683 +WIB 20000 1992 4155 KS 0.004648 +WIB 21000 1992 13287 KY 0.014865 +WIB 22000 1992 29218 LA 0.032687 +WIB 23000 1992 7495 ME 0.008385 +WIB 24000 1992 17746 MD 0.019853 +WIB 25000 1992 19675 MA 0.022011 +WIB 26000 1992 48478 MI 0.054234 +WIB 27000 1992 32004 MN 0.035804 +WIB 28000 1992 14762 MS 0.016515 +WIB 29000 1992 22634 MO 0.025322 +WIB 30000 1992 2393 MT 0.002677 +WIB 31000 1992 3457 NE 0.003867 +WIB 32000 1992 4310 NV 0.004822 +WIB 33000 1992 7455 NH 0.00834 +WIB 34000 1992 30663 NJ 0.034304 +WIB 35000 1992 2998 NM 0.003354 +WIB 36000 1992 51285 NY 0.057374 +WIB 37000 1992 27547 NC 0.030818 +WIB 38000 1992 2189 ND 0.002449 +WIB 39000 1992 30015 OH 0.033579 +WIB 40000 1992 12970 OK 0.01451 +WIB 41000 1992 11906 OR 0.01332 +WIB 42000 1992 19725 PA 0.022067 +WIB 44000 1992 2856 RI 0.003195 +WIB 45000 1992 19190 SC 0.021469 +WIB 46000 1992 2516 SD 0.002815 +WIB 47000 1992 19857 TN 0.022215 +WIB 48000 1992 45659 TX 0.05108 +WIB 49000 1992 5798 UT 0.006486 +WIB 50000 1992 2023 VT 0.002263 +WIB 51000 1992 20489 VA 0.022922 +WIB 53000 1992 21371 WA 0.023909 +WIB 54000 1992 3709 WV 0.004149 +WIB 55000 1992 23134 WI 0.025881 +WIB 56000 1992 1756 WY 0.001965 +WIB 72000 1992 6659 PR 0.00745 +WIB 78000 1992 468 VI 0.000524 +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/US_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/US_WOB.ALO new file mode 100644 index 0000000..668280a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/US_WOB.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +The data in this file is for RECREATIONAL MARINE CRAFT (based on +ORNL fuel consumption data). + +8/10/05 EPA: added Puerto Rico & Virgin Islands, based on number + of boats in these islands relative to Florida, according to + US Coast Guard 2002 data: + [Numbered_Boats_2002_FINAL(US Coast Guard).xls] +8/19/05 epa: TEST "US" total does not include PR or VI. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ 1.007974 +WOB 00000 1992 893864 US 900991 900991 +WOB 01000 1992 21513 AL 0.024067 +WOB 02000 1992 2939 AK 0.003288 +WOB 04000 1992 10871 AZ 0.012162 +WOB 05000 1992 11717 AR 0.013108 +WOB 06000 1992 64317 CA 0.071954 +WOB 08000 1992 4855 CO 0.005431 +WOB 09000 1992 12544 CT 0.014033 +WOB 10000 1992 6498 DE 0.00727 +WOB 11000 1992 390 DC 0.000436 +WOB 12000 1992 104051 FL 0.116406 +WOB 13000 1992 20367 GA 0.022785 +WOB 15000 1992 2656 HI 0.002971 +WOB 16000 1992 5417 ID 0.00606 +WOB 17000 1992 22732 IL 0.025431 +WOB 18000 1992 9617 IN 0.010759 +WOB 19000 1992 8655 IA 0.009683 +WOB 20000 1992 4155 KS 0.004648 +WOB 21000 1992 13287 KY 0.014865 +WOB 22000 1992 29218 LA 0.032687 +WOB 23000 1992 7495 ME 0.008385 +WOB 24000 1992 17746 MD 0.019853 +WOB 25000 1992 19675 MA 0.022011 +WOB 26000 1992 48478 MI 0.054234 +WOB 27000 1992 32004 MN 0.035804 +WOB 28000 1992 14762 MS 0.016515 +WOB 29000 1992 22634 MO 0.025322 +WOB 30000 1992 2393 MT 0.002677 +WOB 31000 1992 3457 NE 0.003867 +WOB 32000 1992 4310 NV 0.004822 +WOB 33000 1992 7455 NH 0.00834 +WOB 34000 1992 30663 NJ 0.034304 +WOB 35000 1992 2998 NM 0.003354 +WOB 36000 1992 51285 NY 0.057374 +WOB 37000 1992 27547 NC 0.030818 +WOB 38000 1992 2189 ND 0.002449 +WOB 39000 1992 30015 OH 0.033579 +WOB 40000 1992 12970 OK 0.01451 +WOB 41000 1992 11906 OR 0.01332 +WOB 42000 1992 19725 PA 0.022067 +WOB 44000 1992 2856 RI 0.003195 +WOB 45000 1992 19190 SC 0.021469 +WOB 46000 1992 2516 SD 0.002815 +WOB 47000 1992 19857 TN 0.022215 +WOB 48000 1992 45659 TX 0.05108 +WOB 49000 1992 5798 UT 0.006486 +WOB 50000 1992 2023 VT 0.002263 +WOB 51000 1992 20489 VA 0.022922 +WOB 53000 1992 21371 WA 0.023909 +WOB 54000 1992 3709 WV 0.004149 +WOB 55000 1992 23134 WI 0.025881 +WOB 56000 1992 1756 WY 0.001965 +WOB 72000 1992 6659 PR 0.00745 +WOB 78000 1992 468 VI 0.000524 +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_AIRTR.ALO new file mode 100644 index 0000000..16bef9f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_AIRTR.ALO @@ -0,0 +1,56 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 49000 2002 843.961 UT +AIR 49001 2002 0.061 Beaver +AIR 49003 2002 0.125 Box Elder +AIR 49005 2002 0.144 Cache +AIR 49007 2002 0.237 Carbon +AIR 49009 2002 0.000 Daggett +AIR 49011 2002 0.000 Davis +AIR 49013 2002 0.090 Duchesne +AIR 49015 2002 0.000 Emery +AIR 49017 2002 0.000 Garfield +AIR 49019 2002 0.000 Grand +AIR 49021 2002 0.432 Iron +AIR 49023 2002 0.000 Juab +AIR 49025 2002 0.000 Kane +AIR 49027 2002 0.040 Millard +AIR 49029 2002 0.000 Morgan +AIR 49031 2002 0.000 Piute +AIR 49033 2002 0.000 Rich +AIR 49035 2002 806.010 Salt Lake +AIR 49037 2002 0.084 San Juan +AIR 49039 2002 0.000 Sanpete +AIR 49041 2002 0.000 Sevier +AIR 49043 2002 0.000 Summit +AIR 49045 2002 0.120 Tooele +AIR 49047 2002 4.345 Uintah +AIR 49049 2002 0.600 Utah +AIR 49051 2002 0.000 Wasatch +AIR 49053 2002 31.169 Washington +AIR 49055 2002 0.000 Wayne +AIR 49057 2002 0.503 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_COAL.ALO new file mode 100644 index 0000000..54d35ca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_COAL.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 49000 2002 25035 UT +MIN 49001 2002 0 Beaver +MIN 49003 2002 0 Box Elder +MIN 49005 2002 0 Cache +MIN 49007 2002 9195 Carbon +MIN 49009 2002 0 Daggett +MIN 49011 2002 0 Davis +MIN 49013 2002 0 Duchesne +MIN 49015 2002 7288 Emery +MIN 49017 2002 0 Garfield +MIN 49019 2002 0 Grand +MIN 49021 2002 0 Iron +MIN 49023 2002 0 Juab +MIN 49025 2002 0 Kane +MIN 49027 2002 0 Millard +MIN 49029 2002 0 Morgan +MIN 49031 2002 0 Piute +MIN 49033 2002 0 Rich +MIN 49035 2002 0 Salt Lake +MIN 49037 2002 0 San Juan +MIN 49039 2002 0 Sanpete +MIN 49041 2002 8552 Sevier +MIN 49043 2002 0 Summit +MIN 49045 2002 0 Tooele +MIN 49047 2002 0 Uintah +MIN 49049 2002 0 Utah +MIN 49051 2002 0 Wasatch +MIN 49053 2002 0 Washington +MIN 49055 2002 0 Wayne +MIN 49057 2002 0 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_CONST.ALO new file mode 100644 index 0000000..cc9c79d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_CONST.ALO @@ -0,0 +1,56 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 49000 2003 5094545 UT +CON 49001 2003 5996 Beaver +CON 49003 2003 58279 Box Elder +CON 49005 2003 234067 Cache +CON 49007 2003 16866 Carbon +CON 49009 2003 2422 Daggett +CON 49011 2003 648834 Davis +CON 49013 2003 18430 Duchesne +CON 49015 2003 16963 Emery +CON 49017 2003 39652 Garfield +CON 49019 2003 21378 Grand +CON 49021 2003 82987 Iron +CON 49023 2003 16993 Juab +CON 49025 2003 19033 Kane +CON 49027 2003 11928 Millard +CON 49029 2003 12488 Morgan +CON 49031 2003 907 Piute +CON 49033 2003 12296 Rich +CON 49035 2003 1618659 Salt Lake +CON 49037 2003 7269 San Juan +CON 49039 2003 23402 Sanpete +CON 49041 2003 41476 Sevier +CON 49043 2003 164715 Summit +CON 49045 2003 86803 Tooele +CON 49047 2003 48429 Uintah +CON 49049 2003 950984 Utah +CON 49051 2003 94585 Wasatch +CON 49053 2003 495245 Washington +CON 49055 2003 6253 Wayne +CON 49057 2003 337207 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_FARMS.ALO new file mode 100644 index 0000000..53dce07 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_FARMS.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 49000 2002 961037 UT +FRM 49001 2002 32067 Beaver +FRM 49003 2002 141462 Box Elder +FRM 49005 2002 105203 Cache +FRM 49007 2002 5997 Carbon +FRM 49009 2002 3979 Daggett +FRM 49011 2002 17879 Davis +FRM 49013 2002 50093 Duchesne +FRM 49015 2002 17208 Emery +FRM 49017 2002 8539 Garfield +FRM 49019 2002 2450 Grand +FRM 49021 2002 63197 Iron +FRM 49023 2002 25226 Juab +FRM 49025 2002 2144 Kane +FRM 49027 2002 87588 Millard +FRM 49029 2002 11106 Morgan +FRM 49031 2002 10311 Piute +FRM 49033 2002 32869 Rich +FRM 49035 2002 11591 Salt Lake +FRM 49037 2002 29693 San Juan +FRM 49039 2002 48892 Sanpete +FRM 49041 2002 45140 Sevier +FRM 49043 2002 18413 Summit +FRM 49045 2002 19061 Tooele +FRM 49047 2002 33168 Uintah +FRM 49049 2002 81114 Utah +FRM 49051 2002 8332 Wasatch +FRM 49053 2002 8008 Washington +FRM 49055 2002 14394 Wayne +FRM 49057 2002 25913 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_GOLF.ALO new file mode 100644 index 0000000..489ac55 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_GOLF.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 49000 2002 55 UT +GC 49001 2002 1 Beaver +GC 49003 2002 1 Box Elder +GC 49005 2002 3 Cache +GC 49007 2002 0 Carbon +GC 49009 2002 0 Daggett +GC 49011 2002 6 Davis +GC 49013 2002 1 Duchesne +GC 49015 2002 0 Emery +GC 49017 2002 1 Garfield +GC 49019 2002 1 Grand +GC 49021 2002 0 Iron +GC 49023 2002 0 Juab +GC 49025 2002 1 Kane +GC 49027 2002 0 Millard +GC 49029 2002 1 Morgan +GC 49031 2002 0 Piute +GC 49033 2002 1 Rich +GC 49035 2002 10 Salt Lake +GC 49037 2002 0 San Juan +GC 49039 2002 0 Sanpete +GC 49041 2002 0 Sevier +GC 49043 2002 3 Summit +GC 49045 2002 2 Tooele +GC 49047 2002 0 Uintah +GC 49049 2002 5 Utah +GC 49051 2002 0 Wasatch +GC 49053 2002 7 Washington +GC 49055 2002 1 Wayne +GC 49057 2002 10 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_HOLSL.ALO new file mode 100644 index 0000000..f7c7221 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_HOLSL.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 49000 2002 3346 UT +COM 49001 2002 5 Beaver +COM 49003 2002 26 Box Elder +COM 49005 2002 96 Cache +COM 49007 2002 49 Carbon +COM 49009 2002 0 Daggett +COM 49011 2002 256 Davis +COM 49013 2002 24 Duchesne +COM 49015 2002 6 Emery +COM 49017 2002 3 Garfield +COM 49019 2002 12 Grand +COM 49021 2002 32 Iron +COM 49023 2002 9 Juab +COM 49025 2002 5 Kane +COM 49027 2002 17 Millard +COM 49029 2002 15 Morgan +COM 49031 2002 0 Piute +COM 49033 2002 1 Rich +COM 49035 2002 1956 Salt Lake +COM 49037 2002 6 San Juan +COM 49039 2002 11 Sanpete +COM 49041 2002 24 Sevier +COM 49043 2002 43 Summit +COM 49045 2002 12 Tooele +COM 49047 2002 53 Uintah +COM 49049 2002 357 Utah +COM 49051 2002 9 Wasatch +COM 49053 2002 105 Washington +COM 49055 2002 1 Wayne +COM 49057 2002 213 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_HOUSE.ALO new file mode 100644 index 0000000..78d2e73 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_HOUSE.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 49000 2002 808633 UT +HOU 49001 2002 2711 Beaver +HOU 49003 2002 14770 Box Elder +HOU 49005 2002 30568 Cache +HOU 49007 2002 8920 Carbon +HOU 49009 2002 1120 Daggett +HOU 49011 2002 78688 Davis +HOU 49013 2002 7270 Duchesne +HOU 49015 2002 4183 Emery +HOU 49017 2002 2896 Garfield +HOU 49019 2002 4295 Grand +HOU 49021 2002 14461 Iron +HOU 49023 2002 2978 Juab +HOU 49025 2002 3966 Kane +HOU 49027 2002 4618 Millard +HOU 49029 2002 2277 Morgan +HOU 49031 2002 751 Piute +HOU 49033 2002 2590 Rich +HOU 49035 2002 321248 Salt Lake +HOU 49037 2002 5547 San Juan +HOU 49039 2002 8123 Sanpete +HOU 49041 2002 7178 Sevier +HOU 49043 2002 18642 Summit +HOU 49045 2002 15432 Tooele +HOU 49047 2002 9332 Uintah +HOU 49049 2002 113263 Utah +HOU 49051 2002 7167 Wasatch +HOU 49053 2002 40148 Washington +HOU 49055 2002 1360 Wayne +HOU 49057 2002 74131 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_LOGGN.ALO new file mode 100644 index 0000000..691c4d4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_LOGGN.ALO @@ -0,0 +1,56 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 49000 2002 18805737 UT +LOG 49001 2002 1295085 Beaver +LOG 49003 2002 0 Box Elder +LOG 49005 2002 3431330 Cache +LOG 49007 2002 1848546 Carbon +LOG 49009 2002 287242 Daggett +LOG 49011 2002 0 Davis +LOG 49013 2002 812190 Duchesne +LOG 49015 2002 0 Emery +LOG 49017 2002 879538 Garfield +LOG 49019 2002 0 Grand +LOG 49021 2002 454408 Iron +LOG 49023 2002 0 Juab +LOG 49025 2002 685669 Kane +LOG 49027 2002 0 Millard +LOG 49029 2002 50459 Morgan +LOG 49031 2002 366901 Piute +LOG 49033 2002 0 Rich +LOG 49035 2002 0 Salt Lake +LOG 49037 2002 1527388 San Juan +LOG 49039 2002 381966 Sanpete +LOG 49041 2002 1629868 Sevier +LOG 49043 2002 1955614 Summit +LOG 49045 2002 0 Tooele +LOG 49047 2002 2041756 Uintah +LOG 49049 2002 0 Utah +LOG 49051 2002 914021 Wasatch +LOG 49053 2002 0 Washington +LOG 49055 2002 241336 Wayne +LOG 49057 2002 2418 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_LSCAP.ALO new file mode 100644 index 0000000..116ccd0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_LSCAP.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 49000 2002 2253 UT +LSC 49001 2002 5 Beaver +LSC 49003 2002 32 Box Elder +LSC 49005 2002 32 Cache +LSC 49007 2002 5 Carbon +LSC 49009 2002 0 Daggett +LSC 49011 2002 193 Davis +LSC 49013 2002 5 Duchesne +LSC 49015 2002 0 Emery +LSC 49017 2002 0 Garfield +LSC 49019 2002 5 Grand +LSC 49021 2002 8 Iron +LSC 49023 2002 5 Juab +LSC 49025 2002 0 Kane +LSC 49027 2002 0 Millard +LSC 49029 2002 0 Morgan +LSC 49031 2002 0 Piute +LSC 49033 2002 32 Rich +LSC 49035 2002 1135 Salt Lake +LSC 49037 2002 5 San Juan +LSC 49039 2002 5 Sanpete +LSC 49041 2002 32 Sevier +LSC 49043 2002 43 Summit +LSC 49045 2002 9 Tooele +LSC 49047 2002 5 Uintah +LSC 49049 2002 341 Utah +LSC 49051 2002 5 Wasatch +LSC 49053 2002 190 Washington +LSC 49055 2002 5 Wayne +LSC 49057 2002 156 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_MNFG.ALO new file mode 100644 index 0000000..3b8886c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_MNFG.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 49000 2002 206478 UT +MFG 49001 2002 73 Beaver +MFG 49003 2002 15611 Box Elder +MFG 49005 2002 16346 Cache +MFG 49007 2002 942 Carbon +MFG 49009 2002 0 Daggett +MFG 49011 2002 16864 Davis +MFG 49013 2002 245 Duchesne +MFG 49015 2002 49 Emery +MFG 49017 2002 133 Garfield +MFG 49019 2002 188 Grand +MFG 49021 2002 2842 Iron +MFG 49023 2002 368 Juab +MFG 49025 2002 205 Kane +MFG 49027 2002 672 Millard +MFG 49029 2002 272 Morgan +MFG 49031 2002 0 Piute +MFG 49033 2002 0 Rich +MFG 49035 2002 92272 Salt Lake +MFG 49037 2002 194 San Juan +MFG 49039 2002 1352 Sanpete +MFG 49041 2002 710 Sevier +MFG 49043 2002 1212 Summit +MFG 49045 2002 2246 Tooele +MFG 49047 2002 367 Uintah +MFG 49049 2002 27739 Utah +MFG 49051 2002 443 Wasatch +MFG 49053 2002 4767 Washington +MFG 49055 2002 35 Wayne +MFG 49057 2002 20331 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_OIL.ALO new file mode 100644 index 0000000..d2df6d3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_OIL.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 49000 2002 1930 UT +OIL 49001 2002 0 Beaver +OIL 49003 2002 0 Box Elder +OIL 49005 2002 97 Cache +OIL 49007 2002 0 Carbon +OIL 49009 2002 0 Daggett +OIL 49011 2002 25 Davis +OIL 49013 2002 116 Duchesne +OIL 49015 2002 25 Emery +OIL 49017 2002 0 Garfield +OIL 49019 2002 151 Grand +OIL 49021 2002 97 Iron +OIL 49023 2002 97 Juab +OIL 49025 2002 0 Kane +OIL 49027 2002 0 Millard +OIL 49029 2002 25 Morgan +OIL 49031 2002 0 Piute +OIL 49033 2002 0 Rich +OIL 49035 2002 247 Salt Lake +OIL 49037 2002 25 San Juan +OIL 49039 2002 0 Sanpete +OIL 49041 2002 0 Sevier +OIL 49043 2002 25 Summit +OIL 49045 2002 0 Tooele +OIL 49047 2002 825 Uintah +OIL 49049 2002 25 Utah +OIL 49051 2002 0 Wasatch +OIL 49053 2002 0 Washington +OIL 49055 2002 0 Wayne +OIL 49057 2002 150 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_POP.ALO new file mode 100644 index 0000000..e205539 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_POP.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 49000 2002 2319743 UT +POP 49001 2002 6100 Beaver +POP 49003 2002 44036 Box Elder +POP 49005 2002 95845 Cache +POP 49007 2002 19837 Carbon +POP 49009 2002 900 Daggett +POP 49011 2002 249235 Davis +POP 49013 2002 14859 Duchesne +POP 49015 2002 10711 Emery +POP 49017 2002 4610 Garfield +POP 49019 2002 8640 Grand +POP 49021 2002 35350 Iron +POP 49023 2002 8640 Juab +POP 49025 2002 6038 Kane +POP 49027 2002 12384 Millard +POP 49029 2002 7423 Morgan +POP 49031 2002 1382 Piute +POP 49033 2002 1953 Rich +POP 49035 2002 917382 Salt Lake +POP 49037 2002 13831 San Juan +POP 49039 2002 23364 Sanpete +POP 49041 2002 19118 Sevier +POP 49043 2002 31862 Summit +POP 49045 2002 46007 Tooele +POP 49047 2002 26238 Uintah +POP 49049 2002 391569 Utah +POP 49051 2002 16915 Wasatch +POP 49053 2002 99605 Washington +POP 49055 2002 2542 Wayne +POP 49057 2002 203367 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_RAIL.ALO new file mode 100644 index 0000000..88f9bc8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_RAIL.ALO @@ -0,0 +1,56 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 49000 2002 8562.840 UT +RR 49001 2002 513.210 Beaver +RR 49003 2002 207.940 Box Elder +RR 49005 2002 190.840 Cache +RR 49007 2002 117.500 Carbon +RR 49009 2002 0.000 Daggett +RR 49011 2002 454.480 Davis +RR 49013 2002 0.000 Duchesne +RR 49015 2002 177.940 Emery +RR 49017 2002 0.000 Garfield +RR 49019 2002 205.640 Grand +RR 49021 2002 779.870 Iron +RR 49023 2002 532.400 Juab +RR 49025 2002 0.000 Kane +RR 49027 2002 1033.780 Millard +RR 49029 2002 414.420 Morgan +RR 49031 2002 0.000 Piute +RR 49033 2002 0.000 Rich +RR 49035 2002 770.410 Salt Lake +RR 49037 2002 0.000 San Juan +RR 49039 2002 0.000 Sanpete +RR 49041 2002 0.000 Sevier +RR 49043 2002 396.460 Summit +RR 49045 2002 1264.240 Tooele +RR 49047 2002 0.000 Uintah +RR 49049 2002 693.100 Utah +RR 49051 2002 74.150 Wasatch +RR 49053 2002 0.000 Washington +RR 49055 2002 0.000 Wayne +RR 49057 2002 736.460 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_RVPRK.ALO new file mode 100644 index 0000000..d1bc5e3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_RVPRK.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 49000 2002 75 UT +RVP 49001 2002 0 Beaver +RVP 49003 2002 3 Box Elder +RVP 49005 2002 3 Cache +RVP 49007 2002 0 Carbon +RVP 49009 2002 1 Daggett +RVP 49011 2002 2 Davis +RVP 49013 2002 2 Duchesne +RVP 49015 2002 0 Emery +RVP 49017 2002 6 Garfield +RVP 49019 2002 9 Grand +RVP 49021 2002 1 Iron +RVP 49023 2002 1 Juab +RVP 49025 2002 5 Kane +RVP 49027 2002 1 Millard +RVP 49029 2002 0 Morgan +RVP 49031 2002 0 Piute +RVP 49033 2002 2 Rich +RVP 49035 2002 8 Salt Lake +RVP 49037 2002 3 San Juan +RVP 49039 2002 1 Sanpete +RVP 49041 2002 3 Sevier +RVP 49043 2002 2 Summit +RVP 49045 2002 1 Tooele +RVP 49047 2002 1 Uintah +RVP 49049 2002 6 Utah +RVP 49051 2002 0 Wasatch +RVP 49053 2002 8 Washington +RVP 49055 2002 2 Wayne +RVP 49057 2002 4 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_SBC.ALO new file mode 100644 index 0000000..19f02e2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_SBC.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 49000 2002 2253 UT +SBC 49001 2002 4 Beaver +SBC 49003 2002 26 Box Elder +SBC 49005 2002 57 Cache +SBC 49007 2002 12 Carbon +SBC 49009 2002 0 Daggett +SBC 49011 2002 193 Davis +SBC 49013 2002 9 Duchesne +SBC 49015 2002 0 Emery +SBC 49017 2002 0 Garfield +SBC 49019 2002 5 Grand +SBC 49021 2002 8 Iron +SBC 49023 2002 5 Juab +SBC 49025 2002 0 Kane +SBC 49027 2002 0 Millard +SBC 49029 2002 0 Morgan +SBC 49031 2002 0 Piute +SBC 49033 2002 1 Rich +SBC 49035 2002 1135 Salt Lake +SBC 49037 2002 8 San Juan +SBC 49039 2002 14 Sanpete +SBC 49041 2002 11 Sevier +SBC 49043 2002 43 Summit +SBC 49045 2002 9 Tooele +SBC 49047 2002 15 Uintah +SBC 49049 2002 341 Utah +SBC 49051 2002 10 Wasatch +SBC 49053 2002 190 Washington +SBC 49055 2002 1 Wayne +SBC 49057 2002 156 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_SBR.ALO new file mode 100644 index 0000000..3d288d8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_SBR.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 49000 2002 808633 UT +SBR 49001 2002 2711 Beaver +SBR 49003 2002 14770 Box Elder +SBR 49005 2002 30568 Cache +SBR 49007 2002 8920 Carbon +SBR 49009 2002 1120 Daggett +SBR 49011 2002 78688 Davis +SBR 49013 2002 7270 Duchesne +SBR 49015 2002 4183 Emery +SBR 49017 2002 2896 Garfield +SBR 49019 2002 4295 Grand +SBR 49021 2002 14461 Iron +SBR 49023 2002 2978 Juab +SBR 49025 2002 3966 Kane +SBR 49027 2002 4618 Millard +SBR 49029 2002 2277 Morgan +SBR 49031 2002 751 Piute +SBR 49033 2002 2590 Rich +SBR 49035 2002 321248 Salt Lake +SBR 49037 2002 5547 San Juan +SBR 49039 2002 8123 Sanpete +SBR 49041 2002 7178 Sevier +SBR 49043 2002 18642 Summit +SBR 49045 2002 15432 Tooele +SBR 49047 2002 9332 Uintah +SBR 49049 2002 113263 Utah +SBR 49051 2002 7167 Wasatch +SBR 49053 2002 40148 Washington +SBR 49055 2002 1360 Wayne +SBR 49057 2002 74131 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_SNOWM.ALO new file mode 100644 index 0000000..4f59b83 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_SNOWM.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 49000 2002 1891 UT +SNM 49001 2002 0 Beaver +SNM 49003 2002 0 Box Elder +SNM 49005 2002 10 Cache +SNM 49007 2002 0 Carbon +SNM 49009 2002 0 Daggett +SNM 49011 2002 0 Davis +SNM 49013 2002 67 Duchesne +SNM 49015 2002 0 Emery +SNM 49017 2002 217 Garfield +SNM 49019 2002 0 Grand +SNM 49021 2002 0 Iron +SNM 49023 2002 0 Juab +SNM 49025 2002 0 Kane +SNM 49027 2002 0 Millard +SNM 49029 2002 135 Morgan +SNM 49031 2002 724 Piute +SNM 49033 2002 512 Rich +SNM 49035 2002 0 Salt Lake +SNM 49037 2002 0 San Juan +SNM 49039 2002 43 Sanpete +SNM 49041 2002 52 Sevier +SNM 49043 2002 31 Summit +SNM 49045 2002 0 Tooele +SNM 49047 2002 38 Uintah +SNM 49049 2002 3 Utah +SNM 49051 2002 59 Wasatch +SNM 49053 2002 0 Washington +SNM 49055 2002 0 Wayne +SNM 49057 2002 0 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_WIB.ALO new file mode 100644 index 0000000..4c2b46b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_WIB.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 49000 1990 7084 UT +WIB 49001 1990 6 Beaver +WIB 49003 1990 2605 Box Elder +WIB 49005 1990 22 Cache +WIB 49007 1990 16 Carbon +WIB 49009 1990 64 Daggett +WIB 49011 1990 852 Davis +WIB 49013 1990 46 Duchesne +WIB 49015 1990 25 Emery +WIB 49017 1990 88 Garfield +WIB 49019 1990 32 Grand +WIB 49021 1990 9 Iron +WIB 49023 1990 38 Juab +WIB 49025 1990 302 Kane +WIB 49027 1990 619 Millard +WIB 49029 1990 4 Morgan +WIB 49031 1990 21 Piute +WIB 49033 1990 150 Rich +WIB 49035 1990 182 Salt Lake +WIB 49037 1990 292 San Juan +WIB 49039 1990 38 Sanpete +WIB 49041 1990 21 Sevier +WIB 49043 1990 28 Summit +WIB 49045 1990 885 Tooele +WIB 49047 1990 57 Uintah +WIB 49049 1990 369 Utah +WIB 49051 1990 73 Wasatch +WIB 49053 1990 7 Washington +WIB 49055 1990 16 Wayne +WIB 49057 1990 217 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/UT_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/UT_WOB.ALO new file mode 100644 index 0000000..bbe9843 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/UT_WOB.ALO @@ -0,0 +1,54 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 49000 1990 7084 UT +WOB 49001 1990 6 Beaver +WOB 49003 1990 2605 Box Elder +WOB 49005 1990 22 Cache +WOB 49007 1990 16 Carbon +WOB 49009 1990 64 Daggett +WOB 49011 1990 852 Davis +WOB 49013 1990 46 Duchesne +WOB 49015 1990 25 Emery +WOB 49017 1990 88 Garfield +WOB 49019 1990 32 Grand +WOB 49021 1990 9 Iron +WOB 49023 1990 38 Juab +WOB 49025 1990 302 Kane +WOB 49027 1990 619 Millard +WOB 49029 1990 4 Morgan +WOB 49031 1990 21 Piute +WOB 49033 1990 150 Rich +WOB 49035 1990 182 Salt Lake +WOB 49037 1990 292 San Juan +WOB 49039 1990 38 Sanpete +WOB 49041 1990 21 Sevier +WOB 49043 1990 28 Summit +WOB 49045 1990 885 Tooele +WOB 49047 1990 57 Uintah +WOB 49049 1990 369 Utah +WOB 49051 1990 73 Wasatch +WOB 49053 1990 7 Washington +WOB 49055 1990 16 Wayne +WOB 49057 1990 217 Weber +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_AIRTR.ALO new file mode 100644 index 0000000..239ad64 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_AIRTR.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 51000 2002 2059.020 VA +AIR 51001 2002 0.490 Accomack +AIR 51003 2002 1.330 Albemarle +AIR 51005 2002 0.000 Alleghany +AIR 51007 2002 0.000 Amelia +AIR 51009 2002 0.000 Amherst +AIR 51011 2002 0.000 Appomattox +AIR 51013 2002 815.530 Arlington +AIR 51015 2002 0.207 Augusta +AIR 51017 2002 0.040 Bath +AIR 51019 2002 0.000 Bedford +AIR 51021 2002 0.000 Bland +AIR 51023 2002 0.000 Botetourt +AIR 51025 2002 0.000 Brunswick +AIR 51027 2002 0.000 Buchanan +AIR 51029 2002 0.000 Buckingham +AIR 51031 2002 0.700 Campbell +AIR 51033 2002 0.000 Caroline +AIR 51035 2002 0.080 Carroll +AIR 51036 2002 0.000 Charles City +AIR 51037 2002 0.000 Charlotte +AIR 51041 2002 0.094 Chesterfield +AIR 51043 2002 0.000 Clarke +AIR 51045 2002 0.000 Craig +AIR 51047 2002 0.073 Culpeper +AIR 51049 2002 0.030 Cumberland +AIR 51051 2002 0.000 Dickenson +AIR 51053 2002 0.740 Dinwiddie +AIR 51057 2002 0.000 Essex +AIR 51059 2002 0.000 Fairfax +AIR 51061 2002 0.101 Fauquier +AIR 51063 2002 0.000 Floyd +AIR 51065 2002 0.000 Fluvanna +AIR 51067 2002 0.000 Franklin +AIR 51069 2002 0.340 Frederick +AIR 51071 2002 0.000 Giles +AIR 51073 2002 0.000 Gloucester +AIR 51075 2002 0.000 Goochland +AIR 51077 2002 0.000 Grayson +AIR 51079 2002 0.000 Greene +AIR 51081 2002 0.070 Greensville +AIR 51083 2002 0.044 Halifax +AIR 51085 2002 0.120 Hanover +AIR 51087 2002 214.050 Henrico +AIR 51089 2002 0.087 Henry +AIR 51091 2002 0.000 Highland +AIR 51093 2002 0.117 Isle of Wight +AIR 51095 2002 0.105 James City +AIR 51097 2002 0.054 King and Queen +AIR 51099 2002 0.000 King George +AIR 51101 2002 0.000 King William +AIR 51103 2002 0.000 Lancaster +AIR 51105 2002 0.010 Lee +AIR 51107 2002 764.770 Loudoun +AIR 51109 2002 0.000 Louisa +AIR 51111 2002 0.000 Lunenburg +AIR 51113 2002 0.000 Madison +AIR 51115 2002 0.000 Mathews +AIR 51117 2002 0.010 Mecklenburg +AIR 51119 2002 0.000 Middlesex +AIR 51121 2002 0.110 Montgomery +AIR 51125 2002 0.000 Nelson +AIR 51127 2002 0.022 New Kent +AIR 51131 2002 0.000 Northampton +AIR 51133 2002 0.000 Northumberland +AIR 51135 2002 0.871 Nottoway +AIR 51137 2002 0.000 Orange +AIR 51139 2002 0.034 Page +AIR 51141 2002 0.000 Patrick +AIR 51143 2002 0.000 Pittsylvania +AIR 51145 2002 0.000 Powhatan +AIR 51147 2002 0.000 Prince Edward +AIR 51149 2002 0.000 Prince George +AIR 51153 2002 0.000 Prince William +AIR 51155 2002 0.140 Pulaski +AIR 51157 2002 0.000 Rappahannock +AIR 51159 2002 0.000 Richmond +AIR 51161 2002 0.000 Roanoke +AIR 51163 2002 0.000 Rockbridge +AIR 51165 2002 0.000 Rockingham +AIR 51167 2002 0.000 Russell +AIR 51169 2002 0.000 Scott +AIR 51171 2002 0.000 Shenandoah +AIR 51173 2002 0.091 Smyth +AIR 51175 2002 0.000 Southampton +AIR 51177 2002 0.060 Spotsylvania +AIR 51179 2002 0.000 Stafford +AIR 51181 2002 0.000 Surry +AIR 51183 2002 0.000 Sussex +AIR 51185 2002 0.000 Tazewell +AIR 51187 2002 0.000 Warren +AIR 51191 2002 0.094 Washington +AIR 51193 2002 0.000 Westmoreland +AIR 51195 2002 0.036 Wise +AIR 51197 2002 0.000 Wythe +AIR 51199 2002 15.430 York +AIR 51510 2002 0.000 Alexandria +AIR 51515 2002 0.000 Bedford +AIR 51520 2002 0.000 Bristol +AIR 51530 2002 0.000 Buena Vista +AIR 51540 2002 0.000 Charlottesville +AIR 51550 2002 0.880 Chesapeake +AIR 51560 2002 0.000 Clifton Forge +AIR 51570 2002 0.000 Colonial Heights +AIR 51580 2002 0.000 Covington +AIR 51590 2002 0.117 Danville +AIR 51595 2002 0.000 Emporia +AIR 51600 2002 0.000 Fairfax +AIR 51610 2002 0.000 Falls Church +AIR 51620 2002 0.000 Franklin +AIR 51630 2002 0.000 Fredericksburg +AIR 51640 2002 0.000 Galax +AIR 51650 2002 0.000 Hampton +AIR 51660 2002 0.000 Harrisonburg +AIR 51670 2002 0.000 Hopewell +AIR 51678 2002 0.000 Lexington +AIR 51680 2002 0.000 Lynchburg +AIR 51683 2002 0.960 Manassas +AIR 51685 2002 0.000 Manassas Park +AIR 51690 2002 0.000 Martinsville +AIR 51700 2002 0.000 Newport News +AIR 51710 2002 205.990 Norfolk +AIR 51720 2002 0.000 Norton +AIR 51730 2002 0.000 Petersburg +AIR 51735 2002 0.000 Poquoson +AIR 51740 2002 0.000 Portsmouth +AIR 51750 2002 0.000 Radford +AIR 51760 2002 0.000 Richmond +AIR 51770 2002 34.920 Roanoke +AIR 51775 2002 0.000 Salem +AIR 51780 2002 0.000 South Boston +AIR 51790 2002 0.000 Staunton +AIR 51800 2002 0.070 Suffolk +AIR 51810 2002 0.000 Virginia Beach +AIR 51820 2002 0.000 Waynesboro +AIR 51830 2002 0.000 Williamsburg +AIR 51840 2002 0.000 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_COAL.ALO new file mode 100644 index 0000000..2243e5d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_COAL.ALO @@ -0,0 +1,161 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 51000 2002 20491 VA +MIN 51001 2002 0 Accomack +MIN 51003 2002 0 Albemarle +MIN 51005 2002 0 Alleghany +MIN 51007 2002 0 Amelia +MIN 51009 2002 0 Amherst +MIN 51011 2002 0 Appomattox +MIN 51013 2002 0 Arlington +MIN 51015 2002 0 Augusta +MIN 51017 2002 0 Bath +MIN 51019 2002 0 Bedford +MIN 51021 2002 0 Bland +MIN 51023 2002 0 Botetourt +MIN 51025 2002 0 Brunswick +MIN 51027 2002 8186 Buchanan +MIN 51029 2002 0 Buckingham +MIN 51031 2002 0 Campbell +MIN 51033 2002 0 Caroline +MIN 51035 2002 0 Carroll +MIN 51036 2002 0 Charles City +MIN 51037 2002 0 Charlotte +MIN 51041 2002 0 Chesterfield +MIN 51043 2002 0 Clarke +MIN 51045 2002 0 Craig +MIN 51047 2002 0 Culpeper +MIN 51049 2002 0 Cumberland +MIN 51051 2002 2452 Dickenson +MIN 51053 2002 0 Dinwiddie +MIN 51057 2002 0 Essex +MIN 51059 2002 0 Fairfax +MIN 51061 2002 0 Fauquier +MIN 51063 2002 0 Floyd +MIN 51065 2002 0 Fluvanna +MIN 51067 2002 0 Franklin +MIN 51069 2002 0 Frederick +MIN 51071 2002 0 Giles +MIN 51073 2002 0 Gloucester +MIN 51075 2002 0 Goochland +MIN 51077 2002 0 Grayson +MIN 51079 2002 0 Greene +MIN 51081 2002 0 Greensville +MIN 51083 2002 0 Halifax +MIN 51085 2002 0 Hanover +MIN 51087 2002 0 Henrico +MIN 51089 2002 0 Henry +MIN 51091 2002 0 Highland +MIN 51093 2002 0 Isle of Wight +MIN 51095 2002 0 James City +MIN 51097 2002 0 King and Queen +MIN 51099 2002 0 King George +MIN 51101 2002 0 King William +MIN 51103 2002 0 Lancaster +MIN 51105 2002 77 Lee +MIN 51107 2002 0 Loudoun +MIN 51109 2002 0 Louisa +MIN 51111 2002 0 Lunenburg +MIN 51113 2002 0 Madison +MIN 51115 2002 0 Mathews +MIN 51117 2002 0 Mecklenburg +MIN 51119 2002 0 Middlesex +MIN 51121 2002 0 Montgomery +MIN 51125 2002 0 Nelson +MIN 51127 2002 0 New Kent +MIN 51131 2002 0 Northampton +MIN 51133 2002 0 Northumberland +MIN 51135 2002 0 Nottoway +MIN 51137 2002 0 Orange +MIN 51139 2002 0 Page +MIN 51141 2002 0 Patrick +MIN 51143 2002 0 Pittsylvania +MIN 51145 2002 0 Powhatan +MIN 51147 2002 0 Prince Edward +MIN 51149 2002 0 Prince George +MIN 51153 2002 0 Prince William +MIN 51155 2002 0 Pulaski +MIN 51157 2002 0 Rappahannock +MIN 51159 2002 0 Richmond +MIN 51161 2002 0 Roanoke +MIN 51163 2002 0 Rockbridge +MIN 51165 2002 0 Rockingham +MIN 51167 2002 166 Russell +MIN 51169 2002 0 Scott +MIN 51171 2002 0 Shenandoah +MIN 51173 2002 0 Smyth +MIN 51175 2002 0 Southampton +MIN 51177 2002 0 Spotsylvania +MIN 51179 2002 0 Stafford +MIN 51181 2002 0 Surry +MIN 51183 2002 0 Sussex +MIN 51185 2002 1184 Tazewell +MIN 51187 2002 0 Warren +MIN 51191 2002 0 Washington +MIN 51193 2002 0 Westmoreland +MIN 51195 2002 8426 Wise +MIN 51197 2002 0 Wythe +MIN 51199 2002 0 York +MIN 51510 2002 0 Alexandria +MIN 51515 2002 0 Bedford +MIN 51520 2002 0 Bristol +MIN 51530 2002 0 Buena Vista +MIN 51540 2002 0 Charlottesville +MIN 51550 2002 0 Chesapeake +MIN 51560 2002 0 Clifton Forge +MIN 51570 2002 0 Colonial Heights +MIN 51580 2002 0 Covington +MIN 51590 2002 0 Danville +MIN 51595 2002 0 Emporia +MIN 51600 2002 0 Fairfax +MIN 51610 2002 0 Falls Church +MIN 51620 2002 0 Franklin +MIN 51630 2002 0 Fredericksburg +MIN 51640 2002 0 Galax +MIN 51650 2002 0 Hampton +MIN 51660 2002 0 Harrisonburg +MIN 51670 2002 0 Hopewell +MIN 51678 2002 0 Lexington +MIN 51680 2002 0 Lynchburg +MIN 51683 2002 0 Manassas +MIN 51685 2002 0 Manassas Park +MIN 51690 2002 0 Martinsville +MIN 51700 2002 0 Newport News +MIN 51710 2002 0 Norfolk +MIN 51720 2002 0 Norton +MIN 51730 2002 0 Petersburg +MIN 51735 2002 0 Poquoson +MIN 51740 2002 0 Portsmouth +MIN 51750 2002 0 Radford +MIN 51760 2002 0 Richmond +MIN 51770 2002 0 Roanoke +MIN 51775 2002 0 Salem +MIN 51780 2002 0 South Boston +MIN 51790 2002 0 Staunton +MIN 51800 2002 0 Suffolk +MIN 51810 2002 0 Virginia Beach +MIN 51820 2002 0 Waynesboro +MIN 51830 2002 0 Williamsburg +MIN 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_CONST.ALO new file mode 100644 index 0000000..ba415d9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_CONST.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +9/16/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2003. +10/17/05 epa: Use corrected geo adjustments. +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +CON 51000 2003 15269033 VA +CON 51001 2003 76595 Accomack +CON 51003 2003 403494 Albemarle +CON 51005 2001 12692 Alleghany 0.083% +CON 51005 2002 212718 Alleghany 1.393% +CON 51007 2003 23824 Amelia +CON 51009 2003 79567 Amherst +CON 51011 2003 11936 Appomattox +CON 51013 2003 902079 Arlington +CON 51015 2003 181180 Augusta +CON 51017 2003 8762 Bath +CON 51019 2003 143203 Bedford +CON 51021 2003 4848 Bland +CON 51023 2003 80387 Botetourt +CON 51025 2003 10573 Brunswick +CON 51027 2003 8147 Buchanan +CON 51029 2003 17320 Buckingham +CON 51031 2003 200740 Campbell +CON 51033 2003 73519 Caroline +CON 51035 2003 88006 Carroll +CON 51036 2003 15346 Charles City +CON 51037 2003 7878 Charlotte +CON 51041 2003 542604 Chesterfield +CON 51043 2003 33503 Clarke +CON 51045 2003 3335 Craig +CON 51047 2003 202588 Culpeper +CON 51049 2003 6727 Cumberland +CON 51051 2003 20147 Dickenson +CON 51053 2003 58652 Dinwiddie +CON 51057 2003 16152 Essex +CON 51059 2003 1452013 Fairfax +CON 51061 2003 459654 Fauquier +CON 51063 2003 25179 Floyd +CON 51065 2003 64164 Fluvanna +CON 51067 2003 113518 Franklin +CON 51069 2003 299153 Frederick +CON 51071 2003 12065 Giles +CON 51073 2003 52843 Gloucester +CON 51075 2003 148446 Goochland +CON 51077 2003 15573 Grayson +CON 51079 2003 29079 Greene +CON 51081 2003 16021 Greensville +CON 51083 2003 57113 Halifax +CON 51085 2003 177234 Hanover +CON 51087 2003 967892 Henrico +CON 51089 2003 66156 Henry +CON 51091 2003 3438 Highland +CON 51093 2003 63734 Isle of Wight +CON 51095 2003 285878 James City +CON 51097 2003 5447 King and Queen +CON 51099 2003 88555 King George +CON 51101 2003 18572 King William +CON 51103 2003 25586 Lancaster +CON 51105 2003 30084 Lee +CON 51107 2003 1393234 Loudoun +CON 51109 2003 92566 Louisa +CON 51111 2003 14102 Lunenburg +CON 51113 2003 26206 Madison +CON 51115 2003 18513 Mathews +CON 51117 2003 60453 Mecklenburg +CON 51119 2003 32356 Middlesex +CON 51121 2003 216062 Montgomery +CON 51125 2003 33735 Nelson +CON 51127 2003 49720 New Kent +CON 51131 2003 22300 Northampton +CON 51133 2003 38350 Northumberland +CON 51135 2003 27780 Nottoway +CON 51137 2003 101794 Orange +CON 51139 2003 23065 Page +CON 51141 2003 53849 Patrick +CON 51143 2003 89124 Pittsylvania +CON 51145 2003 85394 Powhatan +CON 51147 2003 49710 Prince Edward +CON 51149 2003 56879 Prince George +CON 51153 2003 950639 Prince William +CON 51155 2003 31363 Pulaski +CON 51157 2003 17899 Rappahannock +CON 51159 2003 25606 Richmond +CON 51161 2003 249047 Roanoke +CON 51163 2003 34215 Rockbridge +CON 51165 2003 151285 Rockingham +CON 51167 2003 12082 Russell +CON 51169 2003 41000 Scott +CON 51171 2003 73788 Shenandoah +CON 51173 2003 41600 Smyth +CON 51175 2003 20462 Southampton +CON 51177 2003 391943 Spotsylvania +CON 51179 2003 434477 Stafford +CON 51181 2003 8242 Surry +CON 51183 2003 19726 Sussex +CON 51185 2003 25552 Tazewell +CON 51187 2003 79420 Warren +CON 51191 2003 89054 Washington +CON 51193 2003 14340 Westmoreland +CON 51195 2003 26359 Wise +CON 51197 2003 119740 Wythe +CON 51199 2003 129386 York +CON 51510 2003 0 Alexandria +CON 51515 2003 0 Bedford +CON 51520 2003 0 Bristol +CON 51530 2003 0 Buena Vista +CON 51540 2003 0 Charlottesville +CON 51550 2003 0 Chesapeake +CON 51560 2001 200026 Clifton Forge 1.310% +CON 51560 2002 0 Clifton Forge 0.000% +CON 51570 2003 0 Colonial Heights +CON 51580 2003 0 Covington +CON 51590 2003 0 Danville +CON 51595 2003 0 Emporia +CON 51600 2003 0 Fairfax +CON 51610 2003 0 Falls Church +CON 51620 2003 0 Franklin +CON 51630 2003 0 Fredericksburg +CON 51640 2003 0 Galax +CON 51650 2003 0 Hampton +CON 51660 2003 0 Harrisonburg +CON 51670 2003 0 Hopewell +CON 51678 2003 0 Lexington +CON 51680 2003 0 Lynchburg +CON 51683 2003 0 Manassas +CON 51685 2003 0 Manassas Park +CON 51690 2003 0 Martinsville +CON 51700 2003 219045 Newport News +CON 51710 2003 741001 Norfolk +CON 51720 2003 0 Norton +CON 51730 2003 0 Petersburg +CON 51735 2003 0 Poquoson +CON 51740 2003 0 Portsmouth +CON 51750 2003 0 Radford +CON 51760 2003 0 Richmond +CON 51770 2003 0 Roanoke +CON 51775 2003 0 Salem +CON 51780 2003 0 South Boston +CON 51790 2003 0 Staunton +CON 51800 2003 215212 Suffolk +CON 51810 2003 710127 Virginia Beach +CON 51820 2003 0 Waynesboro +CON 51830 2003 0 Williamsburg +CON 51840 2003 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_FARMS.ALO new file mode 100644 index 0000000..37ecd1d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_FARMS.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +9/23/05 epa: checked Clifton Forge pre-2002 (1992), but was no farming then. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 51000 2002 2623776 VA +FRM 51001 2002 70096 Accomack +FRM 51003 2002 36012 Albemarle +FRM 51005 2002 5802 Alleghany +FRM 51007 2002 22949 Amelia +FRM 51009 2002 15518 Amherst +FRM 51011 2002 21639 Appomattox +FRM 51013 2002 0 Arlington +FRM 51015 2002 87417 Augusta +FRM 51017 2002 7103 Bath +FRM 51019 2002 52107 Bedford +FRM 51021 2002 13176 Bland +FRM 51023 2002 23458 Botetourt +FRM 51025 2002 18057 Brunswick +FRM 51027 2002 787 Buchanan +FRM 51029 2002 21638 Buckingham +FRM 51031 2002 31586 Campbell +FRM 51033 2002 34705 Caroline +FRM 51035 2002 29213 Carroll +FRM 51036 2002 16831 Charles City +FRM 51037 2002 25953 Charlotte +FRM 51041 2002 6480 Chesterfield +FRM 51043 2002 25231 Clarke +FRM 51045 2002 9418 Craig +FRM 51047 2002 49173 Culpeper +FRM 51049 2002 13567 Cumberland +FRM 51051 2002 1584 Dickenson +FRM 51053 2002 34553 Dinwiddie +FRM 51057 2002 33764 Essex +FRM 51059 2002 2012 Fairfax +FRM 51061 2002 71395 Fauquier +FRM 51063 2002 30688 Floyd +FRM 51065 2002 13426 Fluvanna +FRM 51067 2002 47997 Franklin +FRM 51069 2002 37344 Frederick +FRM 51071 2002 9866 Giles +FRM 51073 2002 17212 Gloucester +FRM 51075 2002 15532 Goochland +FRM 51077 2002 25765 Grayson +FRM 51079 2002 8116 Greene +FRM 51081 2002 20816 Greensville +FRM 51083 2002 34281 Halifax +FRM 51085 2002 48194 Hanover +FRM 51087 2002 11479 Henrico +FRM 51089 2002 9671 Henry +FRM 51091 2002 9520 Highland +FRM 51093 2002 49373 Isle of Wight +FRM 51095 2002 5258 James City +FRM 51097 2002 30454 King and Queen +FRM 51099 2002 11746 King George +FRM 51101 2002 33563 King William +FRM 51103 2002 9102 Lancaster +FRM 51105 2002 24906 Lee +FRM 51107 2002 64491 Loudoun +FRM 51109 2002 24253 Louisa +FRM 51111 2002 20101 Lunenburg +FRM 51113 2002 29095 Madison +FRM 51115 2002 4273 Mathews +FRM 51117 2002 36643 Mecklenburg +FRM 51119 2002 14055 Middlesex +FRM 51121 2002 23132 Montgomery +FRM 51125 2002 17251 Nelson +FRM 51127 2002 12157 New Kent +FRM 51131 2002 39035 Northampton +FRM 51133 2002 30890 Northumberland +FRM 51135 2002 18926 Nottoway +FRM 51137 2002 33938 Orange +FRM 51139 2002 20254 Page +FRM 51141 2002 20085 Patrick +FRM 51143 2002 64284 Pittsylvania +FRM 51145 2002 13164 Powhatan +FRM 51147 2002 16146 Prince Edward +FRM 51149 2002 20560 Prince George +FRM 51153 2002 16403 Prince William +FRM 51155 2002 19619 Pulaski +FRM 51157 2002 20126 Rappahannock +FRM 51159 2002 27445 Richmond +FRM 51161 2002 5754 Roanoke +FRM 51163 2002 33852 Rockbridge +FRM 51165 2002 99399 Rockingham +FRM 51167 2002 26630 Russell +FRM 51169 2002 26480 Scott +FRM 51171 2002 46177 Shenandoah +FRM 51173 2002 22435 Smyth +FRM 51175 2002 83449 Southampton +FRM 51177 2002 17936 Spotsylvania +FRM 51179 2002 9527 Stafford +FRM 51181 2002 35265 Surry +FRM 51183 2002 35073 Sussex +FRM 51185 2002 22563 Tazewell +FRM 51187 2002 10470 Warren +FRM 51191 2002 44350 Washington +FRM 51193 2002 41234 Westmoreland +FRM 51195 2002 3714 Wise +FRM 51197 2002 38647 Wythe +FRM 51199 2002 211 York +FRM 51510 2002 0 Alexandria +FRM 51515 2002 0 Bedford +FRM 51520 2002 0 Bristol +FRM 51530 2002 0 Buena Vista +FRM 51540 2002 0 Charlottesville +FRM 51550 2002 53188 Chesapeake +FRM 51560 2002 0 Clifton Forge +FRM 51570 2002 0 Colonial Heights +FRM 51580 2002 0 Covington +FRM 51590 2002 0 Danville +FRM 51595 2002 0 Emporia +FRM 51600 2002 0 Fairfax +FRM 51610 2002 0 Falls Church +FRM 51620 2002 0 Franklin +FRM 51630 2002 0 Fredericksburg +FRM 51640 2002 0 Galax +FRM 51650 2002 0 Hampton +FRM 51660 2002 0 Harrisonburg +FRM 51670 2002 0 Hopewell +FRM 51678 2002 0 Lexington +FRM 51680 2002 0 Lynchburg +FRM 51683 2002 0 Manassas +FRM 51685 2002 0 Manassas Park +FRM 51690 2002 0 Martinsville +FRM 51700 2002 0 Newport News +FRM 51710 2002 0 Norfolk +FRM 51720 2002 0 Norton +FRM 51730 2002 0 Petersburg +FRM 51735 2002 0 Poquoson +FRM 51740 2002 0 Portsmouth +FRM 51750 2002 0 Radford +FRM 51760 2002 0 Richmond +FRM 51770 2002 0 Roanoke +FRM 51775 2002 0 Salem +FRM 51780 2002 0 South Boston +FRM 51790 2002 0 Staunton +FRM 51800 2002 53954 Suffolk +FRM 51810 2002 21609 Virginia Beach +FRM 51820 2002 0 Waynesboro +FRM 51830 2002 0 Williamsburg +FRM 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_GOLF.ALO new file mode 100644 index 0000000..9ff3fdb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_GOLF.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +9/23/05 epa: checked Clifton Forge pre-2002 (1996), but was no GOLF then. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 51000 2002 245 VA +GC 51001 2002 1 Accomack +GC 51003 2002 1 Albemarle +GC 51005 2002 2 Alleghany +GC 51007 2002 1 Amelia +GC 51009 2002 2 Amherst +GC 51011 2002 1 Appomattox +GC 51013 2002 3 Arlington +GC 51015 2002 0 Augusta +GC 51017 2002 0 Bath +GC 51019 2002 9 Bedford +GC 51021 2002 1 Bland +GC 51023 2002 2 Botetourt +GC 51025 2002 1 Brunswick +GC 51027 2002 0 Buchanan +GC 51029 2002 0 Buckingham +GC 51031 2002 1 Campbell +GC 51033 2002 1 Caroline +GC 51035 2002 1 Carroll +GC 51036 2002 1 Charles City +GC 51037 2002 1 Charlotte +GC 51041 2002 12 Chesterfield +GC 51043 2002 2 Clarke +GC 51045 2002 0 Craig +GC 51047 2002 2 Culpeper +GC 51049 2002 0 Cumberland +GC 51051 2002 0 Dickenson +GC 51053 2002 0 Dinwiddie +GC 51057 2002 2 Essex +GC 51059 2002 22 Fairfax +GC 51061 2002 4 Fauquier +GC 51063 2002 1 Floyd +GC 51065 2002 1 Fluvanna +GC 51067 2002 1 Franklin +GC 51069 2002 4 Frederick +GC 51071 2002 1 Giles +GC 51073 2002 1 Gloucester +GC 51075 2002 3 Goochland +GC 51077 2002 0 Grayson +GC 51079 2002 1 Greene +GC 51081 2002 1 Greensville +GC 51083 2002 3 Halifax +GC 51085 2002 2 Hanover +GC 51087 2002 6 Henrico +GC 51089 2002 6 Henry +GC 51091 2002 0 Highland +GC 51093 2002 1 Isle of Wight +GC 51095 2002 5 James City +GC 51097 2002 0 King and Queen +GC 51099 2002 1 King George +GC 51101 2002 1 King William +GC 51103 2002 2 Lancaster +GC 51105 2002 2 Lee +GC 51107 2002 7 Loudoun +GC 51109 2002 0 Louisa +GC 51111 2002 2 Lunenburg +GC 51113 2002 0 Madison +GC 51115 2002 0 Mathews +GC 51117 2002 4 Mecklenburg +GC 51119 2002 1 Middlesex +GC 51121 2002 4 Montgomery +GC 51125 2002 0 Nelson +GC 51127 2002 1 New Kent +GC 51131 2002 1 Northampton +GC 51133 2002 1 Northumberland +GC 51135 2002 2 Nottoway +GC 51137 2002 3 Orange +GC 51139 2002 0 Page +GC 51141 2002 0 Patrick +GC 51143 2002 4 Pittsylvania +GC 51145 2002 2 Powhatan +GC 51147 2002 1 Prince Edward +GC 51149 2002 2 Prince George +GC 51153 2002 11 Prince William +GC 51155 2002 2 Pulaski +GC 51157 2002 0 Rappahannock +GC 51159 2002 0 Richmond +GC 51161 2002 4 Roanoke +GC 51163 2002 0 Rockbridge +GC 51165 2002 0 Rockingham +GC 51167 2002 1 Russell +GC 51169 2002 2 Scott +GC 51171 2002 0 Shenandoah +GC 51173 2002 1 Smyth +GC 51175 2002 1 Southampton +GC 51177 2002 3 Spotsylvania +GC 51179 2002 2 Stafford +GC 51181 2002 0 Surry +GC 51183 2002 0 Sussex +GC 51185 2002 3 Tazewell +GC 51187 2002 4 Warren +GC 51191 2002 6 Washington +GC 51193 2002 0 Westmoreland +GC 51195 2002 1 Wise +GC 51197 2002 1 Wythe +GC 51199 2002 0 York +GC 51510 2002 0 Alexandria +GC 51515 2002 0 Bedford +GC 51520 2002 0 Bristol +GC 51530 2002 0 Buena Vista +GC 51540 2002 0 Charlottesville +GC 51550 2002 1 Chesapeake +GC 51560 2002 0 Clifton Forge +GC 51570 2002 0 Colonial Heights +GC 51580 2002 1 Covington +GC 51590 2002 1 Danville +GC 51595 2002 0 Emporia +GC 51600 2002 2 Fairfax +GC 51610 2002 0 Falls Church +GC 51620 2002 0 Franklin +GC 51630 2002 0 Fredericksburg +GC 51640 2002 2 Galax +GC 51650 2002 1 Hampton +GC 51660 2002 3 Harrisonburg +GC 51670 2002 0 Hopewell +GC 51678 2002 1 Lexington +GC 51680 2002 4 Lynchburg +GC 51683 2002 0 Manassas +GC 51685 2002 0 Manassas Park +GC 51690 2002 2 Martinsville +GC 51700 2002 2 Newport News +GC 51710 2002 2 Norfolk +GC 51720 2002 0 Norton +GC 51730 2002 0 Petersburg +GC 51735 2002 0 Poquoson +GC 51740 2002 1 Portsmouth +GC 51750 2002 0 Radford +GC 51760 2002 5 Richmond +GC 51770 2002 5 Roanoke +GC 51775 2002 1 Salem +GC 51780 2002 0 South Boston +GC 51790 2002 1 Staunton +GC 51800 2002 6 Suffolk +GC 51810 2002 9 Virginia Beach +GC 51820 2002 1 Waynesboro +GC 51830 2002 1 Williamsburg +GC 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_HOLSL.ALO new file mode 100644 index 0000000..3777c3c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_HOLSL.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +9/23/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2002 with 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 51000 2002 7635 VA 7635 +COM 51001 2002 27 Accomack 7635 +COM 51003 2002 71 Albemarle +COM 51005 2001 6 Alleghany 0.081% 0.6875 +COM 51005 2002 9 Alleghany 0.118% +COM 51007 2002 8 Amelia +COM 51009 2002 14 Amherst +COM 51011 2002 7 Appomattox +COM 51013 2002 95 Arlington +COM 51015 2002 53 Augusta +COM 51017 2002 3 Bath +COM 51019 2002 55 Bedford +COM 51021 2002 4 Bland +COM 51023 2002 41 Botetourt +COM 51025 2002 11 Brunswick +COM 51027 2002 30 Buchanan +COM 51029 2002 7 Buckingham +COM 51031 2002 50 Campbell +COM 51033 2002 9 Caroline +COM 51035 2002 20 Carroll +COM 51036 2002 10 Charles City +COM 51037 2002 8 Charlotte +COM 51041 2002 368 Chesterfield +COM 51043 2002 15 Clarke +COM 51045 2002 2 Craig +COM 51047 2002 24 Culpeper +COM 51049 2002 5 Cumberland +COM 51051 2002 7 Dickenson +COM 51053 2002 13 Dinwiddie +COM 51057 2002 5 Essex +COM 51059 2002 1016 Fairfax +COM 51061 2002 40 Fauquier +COM 51063 2002 8 Floyd +COM 51065 2002 11 Fluvanna +COM 51067 2002 40 Franklin +COM 51069 2002 97 Frederick +COM 51071 2002 8 Giles +COM 51073 2002 33 Gloucester +COM 51075 2002 29 Goochland +COM 51077 2002 8 Grayson +COM 51079 2002 12 Greene +COM 51081 2002 5 Greensville +COM 51083 2002 25 Halifax +COM 51085 2002 238 Hanover +COM 51087 2002 432 Henrico +COM 51089 2002 49 Henry +COM 51091 2002 4 Highland +COM 51093 2002 18 Isle of Wight +COM 51095 2002 38 James City +COM 51097 2002 5 King and Queen +COM 51099 2002 10 King George +COM 51101 2002 13 King William +COM 51103 2002 28 Lancaster +COM 51105 2002 13 Lee +COM 51107 2002 199 Loudoun +COM 51109 2002 15 Louisa +COM 51111 2002 6 Lunenburg +COM 51113 2002 11 Madison +COM 51115 2002 9 Mathews +COM 51117 2002 34 Mecklenburg +COM 51119 2002 19 Middlesex +COM 51121 2002 60 Montgomery +COM 51125 2002 3 Nelson +COM 51127 2002 6 New Kent +COM 51131 2002 22 Northampton +COM 51133 2002 24 Northumberland +COM 51135 2002 18 Nottoway +COM 51137 2002 17 Orange +COM 51139 2002 11 Page +COM 51141 2002 14 Patrick +COM 51143 2002 34 Pittsylvania +COM 51145 2002 25 Powhatan +COM 51147 2002 17 Prince Edward +COM 51149 2002 24 Prince George +COM 51153 2002 154 Prince William +COM 51155 2002 23 Pulaski +COM 51157 2002 5 Rappahannock +COM 51159 2002 14 Richmond +COM 51161 2002 129 Roanoke +COM 51163 2002 4 Rockbridge +COM 51165 2002 49 Rockingham +COM 51167 2002 12 Russell +COM 51169 2002 16 Scott +COM 51171 2002 22 Shenandoah +COM 51173 2002 19 Smyth +COM 51175 2002 17 Southampton +COM 51177 2002 80 Spotsylvania +COM 51179 2002 53 Stafford +COM 51181 2002 2 Surry +COM 51183 2002 8 Sussex +COM 51185 2002 73 Tazewell +COM 51187 2002 21 Warren +COM 51191 2002 44 Washington +COM 51193 2002 16 Westmoreland +COM 51195 2002 35 Wise +COM 51197 2002 25 Wythe +COM 51199 2002 46 York +COM 51510 2002 123 Alexandria +COM 51515 2002 10 Bedford +COM 51520 2002 43 Bristol +COM 51530 2002 0 Buena Vista +COM 51540 2002 74 Charlottesville +COM 51550 2002 280 Chesapeake +COM 51560 2001 3 Clifton Forge 0.037% +COM 51560 2002 0 Clifton Forge 0.000% +COM 51570 2002 11 Colonial Heights +COM 51580 2002 11 Covington +COM 51590 2002 69 Danville +COM 51595 2002 6 Emporia +COM 51600 2002 58 Fairfax +COM 51610 2002 19 Falls Church +COM 51620 2002 8 Franklin +COM 51630 2002 34 Fredericksburg +COM 51640 2002 8 Galax +COM 51650 2002 85 Hampton +COM 51660 2002 82 Harrisonburg +COM 51670 2002 17 Hopewell +COM 51678 2002 10 Lexington +COM 51680 2002 100 Lynchburg +COM 51683 2002 54 Manassas +COM 51685 2002 20 Manassas Park +COM 51690 2002 26 Martinsville +COM 51700 2002 122 Newport News +COM 51710 2002 320 Norfolk +COM 51720 2002 15 Norton +COM 51730 2002 30 Petersburg +COM 51735 2002 6 Poquoson +COM 51740 2002 70 Portsmouth +COM 51750 2002 6 Radford +COM 51760 2002 424 Richmond +COM 51770 2002 229 Roanoke +COM 51775 2002 78 Salem +COM 51780 2002 0 South Boston +COM 51790 2002 35 Staunton +COM 51800 2002 56 Suffolk +COM 51810 2002 434 Virginia Beach +COM 51820 2002 22 Waynesboro +COM 51830 2002 12 Williamsburg +COM 51840 2002 42 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_HOUSE.ALO new file mode 100644 index 0000000..eaf3d19 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_HOUSE.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES +from US Census data + +9/23/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2002 with 1997 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 51000 2002 3006526 VA 3006526 +HOU 51001 2002 19798 Accomack 3006526 +HOU 51003 2002 35143 Albemarle +HOU 51005 2001 5740 Alleghany 0.191%0.725757 +HOU 51005 2002 7909 Alleghany 0.263% +HOU 51007 2002 4746 Amelia +HOU 51009 2002 13188 Amherst +HOU 51011 2002 5975 Appomattox +HOU 51013 2002 91848 Arlington +HOU 51015 2002 27679 Augusta +HOU 51017 2002 2944 Bath +HOU 51019 2002 27837 Bedford +HOU 51021 2002 3271 Bland +HOU 51023 2002 12937 Botetourt +HOU 51025 2002 7648 Brunswick +HOU 51027 2002 12017 Buchanan +HOU 51029 2002 6420 Buckingham +HOU 51031 2002 22685 Campbell +HOU 51033 2002 9137 Caroline +HOU 51035 2002 15035 Carroll +HOU 51036 2002 2994 Charles City +HOU 51037 2002 5929 Charlotte +HOU 51041 2002 102925 Chesterfield +HOU 51043 2002 5580 Clarke +HOU 51045 2002 2627 Craig +HOU 51047 2002 13601 Culpeper +HOU 51049 2002 4170 Cumberland +HOU 51051 2002 7767 Dickenson +HOU 51053 2002 10072 Dinwiddie +HOU 51057 2002 5060 Essex +HOU 51059 2002 372209 Fairfax +HOU 51061 2002 22377 Fauquier +HOU 51063 2002 6950 Floyd +HOU 51065 2002 8795 Fluvanna +HOU 51067 2002 23643 Franklin +HOU 51069 2002 24484 Frederick +HOU 51071 2002 7876 Giles +HOU 51073 2002 14888 Gloucester +HOU 51075 2002 7026 Goochland +HOU 51077 2002 9381 Grayson +HOU 51079 2002 6407 Greene +HOU 51081 2002 3892 Greensville +HOU 51083 2002 17117 Halifax +HOU 51085 2002 34157 Hanover +HOU 51087 2002 116905 Henrico +HOU 51089 2002 26250 Henry +HOU 51091 2002 1826 Highland +HOU 51093 2002 12704 Isle of Wight +HOU 51095 2002 22965 James City +HOU 51097 2002 3061 King and Queen +HOU 51099 2002 7156 King George +HOU 51101 2002 5398 King William +HOU 51103 2002 6609 Lancaster +HOU 51105 2002 11222 Lee +HOU 51107 2002 74235 Loudoun +HOU 51109 2002 12405 Louisa +HOU 51111 2002 5766 Lunenburg +HOU 51113 2002 5427 Madison +HOU 51115 2002 5372 Mathews +HOU 51117 2002 17750 Mecklenburg +HOU 51119 2002 6479 Middlesex +HOU 51121 2002 33417 Montgomery +HOU 51125 2002 8690 Nelson +HOU 51127 2002 5568 New Kent +HOU 51131 2002 6670 Northampton +HOU 51133 2002 8251 Northumberland +HOU 51135 2002 6465 Nottoway +HOU 51137 2002 11868 Orange +HOU 51139 2002 10674 Page +HOU 51141 2002 10037 Patrick +HOU 51143 2002 28662 Pittsylvania +HOU 51145 2002 8052 Powhatan +HOU 51147 2002 7904 Prince Edward +HOU 51149 2002 11141 Prince George +HOU 51153 2002 108004 Prince William +HOU 51155 2002 16559 Pulaski +HOU 51157 2002 3370 Rappahannock +HOU 51159 2002 3560 Richmond +HOU 51161 2002 37314 Roanoke +HOU 51163 2002 9964 Rockbridge +HOU 51165 2002 28147 Rockingham +HOU 51167 2002 13370 Russell +HOU 51169 2002 11514 Scott +HOU 51171 2002 17145 Shenandoah +HOU 51173 2002 15276 Smyth +HOU 51175 2002 7190 Southampton +HOU 51177 2002 37164 Spotsylvania +HOU 51179 2002 34931 Stafford +HOU 51181 2002 3383 Surry +HOU 51183 2002 4683 Sussex +HOU 51185 2002 20602 Tazewell +HOU 51187 2002 13721 Warren +HOU 51191 2002 23464 Washington +HOU 51193 2002 9389 Westmoreland +HOU 51195 2002 17986 Wise +HOU 51197 2002 12962 Wythe +HOU 51199 2002 22143 York +HOU 51510 2002 66615 Alexandria +HOU 51515 2002 2714 Bedford +HOU 51520 2002 8512 Bristol +HOU 51530 2002 2753 Buena Vista +HOU 51540 2002 17573 Charlottesville +HOU 51550 2002 75196 Chesapeake +HOU 51560 2001 2169 Clifton Forge 0.072% +HOU 51560 2002 0 Clifton Forge 0.000% +HOU 51570 2002 7508 Colonial Heights +HOU 51580 2002 3174 Covington +HOU 51590 2002 23072 Danville +HOU 51595 2002 2557 Emporia +HOU 51600 2002 8588 Fairfax +HOU 51610 2002 4705 Falls Church +HOU 51620 2002 3809 Franklin +HOU 51630 2002 8928 Fredericksburg +HOU 51640 2002 3231 Galax +HOU 51650 2002 57857 Hampton +HOU 51660 2002 14027 Harrisonburg +HOU 51670 2002 9842 Hopewell +HOU 51678 2002 2370 Lexington +HOU 51680 2002 28142 Lynchburg +HOU 51683 2002 12317 Manassas +HOU 51685 2002 3645 Manassas Park +HOU 51690 2002 7288 Martinsville +HOU 51700 2002 75028 Newport News +HOU 51710 2002 95094 Norfolk +HOU 51720 2002 1950 Norton +HOU 51730 2002 15868 Petersburg +HOU 51735 2002 4362 Poquoson +HOU 51740 2002 41860 Portsmouth +HOU 51750 2002 6137 Radford +HOU 51760 2002 91808 Richmond +HOU 51770 2002 45565 Roanoke +HOU 51775 2002 10504 Salem +HOU 51780 2002 0 South Boston +HOU 51790 2002 10465 Staunton +HOU 51800 2002 26826 Suffolk +HOU 51810 2002 165710 Virginia Beach +HOU 51820 2002 9027 Waynesboro +HOU 51830 2002 4242 Williamsburg +HOU 51840 2002 10743 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_LOGGN.ALO new file mode 100644 index 0000000..89c2e47 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_LOGGN.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 51000 2002 737995829 VA +LOG 51001 2002 4056447 Accomack +LOG 51003 2002 10108911 Albemarle +LOG 51005 2002 2884496 Alleghany +LOG 51007 2002 15056397 Amelia +LOG 51009 2002 10713760 Amherst +LOG 51011 2002 13457552 Appomattox +LOG 51013 2002 0 Arlington +LOG 51015 2002 4556353 Augusta +LOG 51017 2002 2261316 Bath +LOG 51019 2002 13885681 Bedford +LOG 51021 2002 3725282 Bland +LOG 51023 2002 4323405 Botetourt +LOG 51025 2002 36461980 Brunswick +LOG 51027 2002 4403850 Buchanan +LOG 51029 2002 18723292 Buckingham +LOG 51031 2002 18286557 Campbell +LOG 51033 2002 14704010 Caroline +LOG 51035 2002 14611944 Carroll +LOG 51036 2002 6830104 Charles City +LOG 51037 2002 21457222 Charlotte +LOG 51041 2002 8858757 Chesterfield +LOG 51043 2002 1301222 Clarke +LOG 51045 2002 2120829 Craig +LOG 51047 2002 5065004 Culpeper +LOG 51049 2002 6558078 Cumberland +LOG 51051 2002 10213507 Dickenson +LOG 51053 2002 17313625 Dinwiddie +LOG 51057 2002 6265863 Essex +LOG 51059 2002 746527 Fairfax +LOG 51061 2002 2206446 Fauquier +LOG 51063 2002 5367960 Floyd +LOG 51065 2002 2703766 Fluvanna +LOG 51067 2002 14534107 Franklin +LOG 51069 2002 2204243 Frederick +LOG 51071 2002 3569303 Giles +LOG 51073 2002 4328467 Gloucester +LOG 51075 2002 3984714 Goochland +LOG 51077 2002 6308352 Grayson +LOG 51079 2002 1115772 Greene +LOG 51081 2002 16787462 Greensville +LOG 51083 2002 19210527 Halifax +LOG 51085 2002 5309898 Hanover +LOG 51087 2002 2039807 Henrico +LOG 51089 2002 13710084 Henry +LOG 51091 2002 3204493 Highland +LOG 51093 2002 10836475 Isle of Wight +LOG 51095 2002 2676300 James City +LOG 51097 2002 9542824 King and Queen +LOG 51099 2002 2650566 King George +LOG 51101 2002 9476713 King William +LOG 51103 2002 5359655 Lancaster +LOG 51105 2002 7355454 Lee +LOG 51107 2002 4441668 Loudoun +LOG 51109 2002 10617562 Louisa +LOG 51111 2002 15382766 Lunenburg +LOG 51113 2002 2130960 Madison +LOG 51115 2002 1918525 Mathews +LOG 51117 2002 14157469 Mecklenburg +LOG 51119 2002 2407428 Middlesex +LOG 51121 2002 2810315 Montgomery +LOG 51125 2002 7720433 Nelson +LOG 51127 2002 5256145 New Kent +LOG 51131 2002 1406326 Northampton +LOG 51133 2002 2856226 Northumberland +LOG 51135 2002 11045310 Nottoway +LOG 51137 2002 4702264 Orange +LOG 51139 2002 492021 Page +LOG 51141 2002 12490428 Patrick +LOG 51143 2002 23488043 Pittsylvania +LOG 51145 2002 5890965 Powhatan +LOG 51147 2002 10070822 Prince Edward +LOG 51149 2002 14428523 Prince George +LOG 51153 2002 730264 Prince William +LOG 51155 2002 1212030 Pulaski +LOG 51157 2002 1064300 Rappahannock +LOG 51159 2002 4634742 Richmond +LOG 51161 2002 559264 Roanoke +LOG 51163 2002 6257296 Rockbridge +LOG 51165 2002 3206256 Rockingham +LOG 51167 2002 3012265 Russell +LOG 51169 2002 11554855 Scott +LOG 51171 2002 2194072 Shenandoah +LOG 51173 2002 908130 Smyth +LOG 51175 2002 29653252 Southampton +LOG 51177 2002 7066843 Spotsylvania +LOG 51179 2002 2880160 Stafford +LOG 51181 2002 9706977 Surry +LOG 51183 2002 21561251 Sussex +LOG 51185 2002 1976954 Tazewell +LOG 51187 2002 1946040 Warren +LOG 51191 2002 5032190 Washington +LOG 51193 2002 8181026 Westmoreland +LOG 51195 2002 4764240 Wise +LOG 51197 2002 4266167 Wythe +LOG 51199 2002 295048 York +LOG 51510 2002 0 Alexandria +LOG 51515 2002 0 Bedford +LOG 51520 2002 0 Bristol +LOG 51530 2002 0 Buena Vista +LOG 51540 2002 0 Charlottesville +LOG 51550 2002 1910540 Chesapeake +LOG 51560 2002 0 Clifton Forge +LOG 51570 2002 0 Colonial Heights +LOG 51580 2002 0 Covington +LOG 51590 2002 0 Danville +LOG 51595 2002 0 Emporia +LOG 51600 2002 0 Fairfax +LOG 51610 2002 0 Falls Church +LOG 51620 2002 0 Franklin +LOG 51630 2002 0 Fredericksburg +LOG 51640 2002 0 Galax +LOG 51650 2002 91650 Hampton +LOG 51660 2002 0 Harrisonburg +LOG 51670 2002 0 Hopewell +LOG 51678 2002 0 Lexington +LOG 51680 2002 0 Lynchburg +LOG 51683 2002 0 Manassas +LOG 51685 2002 0 Manassas Park +LOG 51690 2002 0 Martinsville +LOG 51700 2002 338292 Newport News +LOG 51710 2002 0 Norfolk +LOG 51720 2002 0 Norton +LOG 51730 2002 0 Petersburg +LOG 51735 2002 0 Poquoson +LOG 51740 2002 0 Portsmouth +LOG 51750 2002 0 Radford +LOG 51760 2002 0 Richmond +LOG 51770 2002 0 Roanoke +LOG 51775 2002 0 Salem +LOG 51780 2002 0 South Boston +LOG 51790 2002 0 Staunton +LOG 51800 2002 14762015 Suffolk +LOG 51810 2002 1080154 Virginia Beach +LOG 51820 2002 0 Waynesboro +LOG 51830 2002 0 Williamsburg +LOG 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_LSCAP.ALO new file mode 100644 index 0000000..d01a92e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_LSCAP.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +9/23/05 epa: checked Clifton Forge pre-2002 (1996), but was no LSCAP then. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 51000 2002 14660 VA +LSC 51001 2002 10 Accomack +LSC 51003 2002 207 Albemarle +LSC 51005 2002 7 Alleghany +LSC 51007 2002 37 Amelia +LSC 51009 2002 7 Amherst +LSC 51011 2002 10 Appomattox +LSC 51013 2002 138 Arlington +LSC 51015 2002 114 Augusta +LSC 51017 2002 7 Bath +LSC 51019 2002 73 Bedford +LSC 51021 2002 0 Bland +LSC 51023 2002 56 Botetourt +LSC 51025 2002 0 Brunswick +LSC 51027 2002 7 Buchanan +LSC 51029 2002 44 Buckingham +LSC 51031 2002 131 Campbell +LSC 51033 2002 7 Caroline +LSC 51035 2002 7 Carroll +LSC 51036 2002 7 Charles City +LSC 51037 2002 7 Charlotte +LSC 51041 2002 321 Chesterfield +LSC 51043 2002 38 Clarke +LSC 51045 2002 0 Craig +LSC 51047 2002 95 Culpeper +LSC 51049 2002 7 Cumberland +LSC 51051 2002 7 Dickenson +LSC 51053 2002 44 Dinwiddie +LSC 51057 2002 7 Essex +LSC 51059 2002 3074 Fairfax +LSC 51061 2002 136 Fauquier +LSC 51063 2002 7 Floyd +LSC 51065 2002 31 Fluvanna +LSC 51067 2002 64 Franklin +LSC 51069 2002 1293 Frederick +LSC 51071 2002 0 Giles +LSC 51073 2002 43 Gloucester +LSC 51075 2002 44 Goochland +LSC 51077 2002 7 Grayson +LSC 51079 2002 33 Greene +LSC 51081 2002 7 Greensville +LSC 51083 2002 30 Halifax +LSC 51085 2002 673 Hanover +LSC 51087 2002 248 Henrico +LSC 51089 2002 47 Henry +LSC 51091 2002 0 Highland +LSC 51093 2002 58 Isle of Wight +LSC 51095 2002 70 James City +LSC 51097 2002 44 King and Queen +LSC 51099 2002 10 King George +LSC 51101 2002 12 King William +LSC 51103 2002 44 Lancaster +LSC 51105 2002 44 Lee +LSC 51107 2002 1624 Loudoun +LSC 51109 2002 44 Louisa +LSC 51111 2002 7 Lunenburg +LSC 51113 2002 9 Madison +LSC 51115 2002 7 Mathews +LSC 51117 2002 277 Mecklenburg +LSC 51119 2002 7 Middlesex +LSC 51121 2002 109 Montgomery +LSC 51125 2002 64 Nelson +LSC 51127 2002 44 New Kent +LSC 51131 2002 7 Northampton +LSC 51133 2002 7 Northumberland +LSC 51135 2002 7 Nottoway +LSC 51137 2002 14 Orange +LSC 51139 2002 128 Page +LSC 51141 2002 15 Patrick +LSC 51143 2002 44 Pittsylvania +LSC 51145 2002 62 Powhatan +LSC 51147 2002 7 Prince Edward +LSC 51149 2002 11 Prince George +LSC 51153 2002 831 Prince William +LSC 51155 2002 44 Pulaski +LSC 51157 2002 7 Rappahannock +LSC 51159 2002 7 Richmond +LSC 51161 2002 61 Roanoke +LSC 51163 2002 7 Rockbridge +LSC 51165 2002 31 Rockingham +LSC 51167 2002 7 Russell +LSC 51169 2002 7 Scott +LSC 51171 2002 7 Shenandoah +LSC 51173 2002 7 Smyth +LSC 51175 2002 12 Southampton +LSC 51177 2002 64 Spotsylvania +LSC 51179 2002 108 Stafford +LSC 51181 2002 7 Surry +LSC 51183 2002 0 Sussex +LSC 51185 2002 7 Tazewell +LSC 51187 2002 15 Warren +LSC 51191 2002 65 Washington +LSC 51193 2002 7 Westmoreland +LSC 51195 2002 7 Wise +LSC 51197 2002 7 Wythe +LSC 51199 2002 386 York +LSC 51510 2002 183 Alexandria +LSC 51515 2002 7 Bedford +LSC 51520 2002 7 Bristol +LSC 51530 2002 0 Buena Vista +LSC 51540 2002 44 Charlottesville +LSC 51550 2002 416 Chesapeake +LSC 51560 2002 0 Clifton Forge +LSC 51570 2002 15 Colonial Heights +LSC 51580 2002 0 Covington +LSC 51590 2002 44 Danville +LSC 51595 2002 0 Emporia +LSC 51600 2002 115 Fairfax +LSC 51610 2002 74 Falls Church +LSC 51620 2002 7 Franklin +LSC 51630 2002 29 Fredericksburg +LSC 51640 2002 7 Galax +LSC 51650 2002 83 Hampton +LSC 51660 2002 44 Harrisonburg +LSC 51670 2002 44 Hopewell +LSC 51678 2002 0 Lexington +LSC 51680 2002 44 Lynchburg +LSC 51683 2002 28 Manassas +LSC 51685 2002 70 Manassas Park +LSC 51690 2002 7 Martinsville +LSC 51700 2002 157 Newport News +LSC 51710 2002 274 Norfolk +LSC 51720 2002 0 Norton +LSC 51730 2002 7 Petersburg +LSC 51735 2002 44 Poquoson +LSC 51740 2002 59 Portsmouth +LSC 51750 2002 7 Radford +LSC 51760 2002 290 Richmond +LSC 51770 2002 44 Roanoke +LSC 51775 2002 83 Salem +LSC 51780 2002 0 South Boston +LSC 51790 2002 39 Staunton +LSC 51800 2002 52 Suffolk +LSC 51810 2002 637 Virginia Beach +LSC 51820 2002 44 Waynesboro +LSC 51830 2002 39 Williamsburg +LSC 51840 2002 7 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_MNFG.ALO new file mode 100644 index 0000000..c05fd9b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_MNFG.ALO @@ -0,0 +1,164 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- + +9/23/05 epa: checked Clifton Forge pre-2002 (1996), but was no MFG then. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 51000 2002 575186 VA +MFG 51001 2002 3394 Accomack +MFG 51003 2002 2148 Albemarle +MFG 51005 2002 1217 Alleghany +MFG 51007 2002 685 Amelia +MFG 51009 2002 3298 Amherst +MFG 51011 2002 1376 Appomattox +MFG 51013 2002 1099 Arlington +MFG 51015 2002 7545 Augusta +MFG 51017 2002 60 Bath +MFG 51019 2002 3167 Bedford +MFG 51021 2002 674 Bland +MFG 51023 2002 2907 Botetourt +MFG 51025 2002 997 Brunswick +MFG 51027 2002 1019 Buchanan +MFG 51029 2002 369 Buckingham +MFG 51031 2002 5666 Campbell +MFG 51033 2002 730 Caroline +MFG 51035 2002 1894 Carroll +MFG 51036 2002 512 Charles City +MFG 51037 2002 1388 Charlotte +MFG 51041 2002 17890 Chesterfield +MFG 51043 2002 2364 Clarke +MFG 51045 2002 35 Craig +MFG 51047 2002 2688 Culpeper +MFG 51049 2002 102 Cumberland +MFG 51051 2002 130 Dickenson +MFG 51053 2002 1170 Dinwiddie +MFG 51057 2002 954 Essex +MFG 51059 2002 23926 Fairfax +MFG 51061 2002 1761 Fauquier +MFG 51063 2002 408 Floyd +MFG 51065 2002 880 Fluvanna +MFG 51067 2002 6011 Franklin +MFG 51069 2002 8609 Frederick +MFG 51071 2002 3358 Giles +MFG 51073 2002 694 Gloucester +MFG 51075 2002 117 Goochland +MFG 51077 2002 1245 Grayson +MFG 51079 2002 1364 Greene +MFG 51081 2002 1644 Greensville +MFG 51083 2002 5744 Halifax +MFG 51085 2002 5829 Hanover +MFG 51087 2002 17682 Henrico +MFG 51089 2002 11618 Henry +MFG 51091 2002 110 Highland +MFG 51093 2002 7931 Isle of Wight +MFG 51095 2002 3405 James City +MFG 51097 2002 307 King and Queen +MFG 51099 2002 114 King George +MFG 51101 2002 1749 King William +MFG 51103 2002 184 Lancaster +MFG 51105 2002 642 Lee +MFG 51107 2002 10444 Loudoun +MFG 51109 2002 1260 Louisa +MFG 51111 2002 1017 Lunenburg +MFG 51113 2002 542 Madison +MFG 51115 2002 187 Mathews +MFG 51117 2002 3867 Mecklenburg +MFG 51119 2002 556 Middlesex +MFG 51121 2002 8122 Montgomery +MFG 51125 2002 429 Nelson +MFG 51127 2002 126 New Kent +MFG 51131 2002 592 Northampton +MFG 51133 2002 652 Northumberland +MFG 51135 2002 1062 Nottoway +MFG 51137 2002 3759 Orange +MFG 51139 2002 3849 Page +MFG 51141 2002 2777 Patrick +MFG 51143 2002 5243 Pittsylvania +MFG 51145 2002 194 Powhatan +MFG 51147 2002 1313 Prince Edward +MFG 51149 2002 1981 Prince George +MFG 51153 2002 4874 Prince William +MFG 51155 2002 11098 Pulaski +MFG 51157 2002 32 Rappahannock +MFG 51159 2002 304 Richmond +MFG 51161 2002 5882 Roanoke +MFG 51163 2002 2532 Rockbridge +MFG 51165 2002 10692 Rockingham +MFG 51167 2002 3081 Russell +MFG 51169 2002 643 Scott +MFG 51171 2002 7651 Shenandoah +MFG 51173 2002 8585 Smyth +MFG 51175 2002 4924 Southampton +MFG 51177 2002 3428 Spotsylvania +MFG 51179 2002 1379 Stafford +MFG 51181 2002 102 Surry +MFG 51183 2002 877 Sussex +MFG 51185 2002 2608 Tazewell +MFG 51187 2002 1954 Warren +MFG 51191 2002 4046 Washington +MFG 51193 2002 652 Westmoreland +MFG 51195 2002 836 Wise +MFG 51197 2002 3166 Wythe +MFG 51199 2002 1165 York +MFG 51510 2002 2943 Alexandria +MFG 51515 2002 2597 Bedford +MFG 51520 2002 10839 Bristol +MFG 51530 2002 2179 Buena Vista +MFG 51540 2002 7742 Charlottesville +MFG 51550 2002 9815 Chesapeake +MFG 51560 2002 0 Clifton Forge +MFG 51570 2002 1867 Colonial Heights +MFG 51580 2002 5021 Covington +MFG 51590 2002 12181 Danville +MFG 51595 2002 2337 Emporia +MFG 51600 2002 702 Fairfax +MFG 51610 2002 500 Falls Church +MFG 51620 2002 177 Franklin +MFG 51630 2002 2114 Fredericksburg +MFG 51640 2002 6402 Galax +MFG 51650 2002 8813 Hampton +MFG 51660 2002 8965 Harrisonburg +MFG 51670 2002 3441 Hopewell +MFG 51678 2002 226 Lexington +MFG 51680 2002 24277 Lynchburg +MFG 51683 2002 5069 Manassas +MFG 51685 2002 457 Manassas Park +MFG 51690 2002 6672 Martinsville +MFG 51700 2002 43595 Newport News +MFG 51710 2002 19337 Norfolk +MFG 51720 2002 533 Norton +MFG 51730 2002 4645 Petersburg +MFG 51735 2002 33 Poquoson +MFG 51740 2002 3858 Portsmouth +MFG 51750 2002 2821 Radford +MFG 51760 2002 25996 Richmond +MFG 51770 2002 8825 Roanoke +MFG 51775 2002 9972 Salem +MFG 51780 2002 0 South Boston +MFG 51790 2002 889 Staunton +MFG 51800 2002 3214 Suffolk +MFG 51810 2002 11154 Virginia Beach +MFG 51820 2002 5438 Waynesboro +MFG 51830 2002 329 Williamsburg +MFG 51840 2002 9918 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_OIL.ALO new file mode 100644 index 0000000..f894b18 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_OIL.ALO @@ -0,0 +1,161 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 51000 2002 362 VA +OIL 51001 2002 0 Accomack +OIL 51003 2002 28 Albemarle +OIL 51005 2002 0 Alleghany +OIL 51007 2002 0 Amelia +OIL 51009 2002 0 Amherst +OIL 51011 2002 0 Appomattox +OIL 51013 2002 0 Arlington +OIL 51015 2002 0 Augusta +OIL 51017 2002 0 Bath +OIL 51019 2002 0 Bedford +OIL 51021 2002 0 Bland +OIL 51023 2002 25 Botetourt +OIL 51025 2002 0 Brunswick +OIL 51027 2002 0 Buchanan +OIL 51029 2002 0 Buckingham +OIL 51031 2002 0 Campbell +OIL 51033 2002 0 Caroline +OIL 51035 2002 0 Carroll +OIL 51036 2002 0 Charles City +OIL 51037 2002 0 Charlotte +OIL 51041 2002 0 Chesterfield +OIL 51043 2002 0 Clarke +OIL 51045 2002 0 Craig +OIL 51047 2002 0 Culpeper +OIL 51049 2002 0 Cumberland +OIL 51051 2002 4 Dickenson +OIL 51053 2002 0 Dinwiddie +OIL 51057 2002 25 Essex +OIL 51059 2002 29 Fairfax +OIL 51061 2002 29 Fauquier +OIL 51063 2002 0 Floyd +OIL 51065 2002 0 Fluvanna +OIL 51067 2002 0 Franklin +OIL 51069 2002 0 Frederick +OIL 51071 2002 0 Giles +OIL 51073 2002 0 Gloucester +OIL 51075 2002 26 Goochland +OIL 51077 2002 0 Grayson +OIL 51079 2002 0 Greene +OIL 51081 2002 0 Greensville +OIL 51083 2002 0 Halifax +OIL 51085 2002 0 Hanover +OIL 51087 2002 0 Henrico +OIL 51089 2002 0 Henry +OIL 51091 2002 0 Highland +OIL 51093 2002 0 Isle of Wight +OIL 51095 2002 0 James City +OIL 51097 2002 0 King and Queen +OIL 51099 2002 0 King George +OIL 51101 2002 0 King William +OIL 51103 2002 4 Lancaster +OIL 51105 2002 0 Lee +OIL 51107 2002 0 Loudoun +OIL 51109 2002 0 Louisa +OIL 51111 2002 0 Lunenburg +OIL 51113 2002 0 Madison +OIL 51115 2002 0 Mathews +OIL 51117 2002 0 Mecklenburg +OIL 51119 2002 4 Middlesex +OIL 51121 2002 0 Montgomery +OIL 51125 2002 26 Nelson +OIL 51127 2002 0 New Kent +OIL 51131 2002 0 Northampton +OIL 51133 2002 0 Northumberland +OIL 51135 2002 0 Nottoway +OIL 51137 2002 0 Orange +OIL 51139 2002 0 Page +OIL 51141 2002 0 Patrick +OIL 51143 2002 0 Pittsylvania +OIL 51145 2002 0 Powhatan +OIL 51147 2002 0 Prince Edward +OIL 51149 2002 0 Prince George +OIL 51153 2002 0 Prince William +OIL 51155 2002 0 Pulaski +OIL 51157 2002 0 Rappahannock +OIL 51159 2002 0 Richmond +OIL 51161 2002 0 Roanoke +OIL 51163 2002 26 Rockbridge +OIL 51165 2002 0 Rockingham +OIL 51167 2002 30 Russell +OIL 51169 2002 4 Scott +OIL 51171 2002 0 Shenandoah +OIL 51173 2002 0 Smyth +OIL 51175 2002 0 Southampton +OIL 51177 2002 0 Spotsylvania +OIL 51179 2002 0 Stafford +OIL 51181 2002 0 Surry +OIL 51183 2002 0 Sussex +OIL 51185 2002 28 Tazewell +OIL 51187 2002 0 Warren +OIL 51191 2002 4 Washington +OIL 51193 2002 0 Westmoreland +OIL 51195 2002 0 Wise +OIL 51197 2002 0 Wythe +OIL 51199 2002 0 York +OIL 51510 2002 4 Alexandria +OIL 51515 2002 0 Bedford +OIL 51520 2002 0 Bristol +OIL 51530 2002 0 Buena Vista +OIL 51540 2002 4 Charlottesville +OIL 51550 2002 4 Chesapeake +OIL 51560 2002 0 Clifton Forge +OIL 51570 2002 0 Colonial Heights +OIL 51580 2002 0 Covington +OIL 51590 2002 26 Danville +OIL 51595 2002 0 Emporia +OIL 51600 2002 0 Fairfax +OIL 51610 2002 0 Falls Church +OIL 51620 2002 0 Franklin +OIL 51630 2002 0 Fredericksburg +OIL 51640 2002 0 Galax +OIL 51650 2002 0 Hampton +OIL 51660 2002 0 Harrisonburg +OIL 51670 2002 0 Hopewell +OIL 51678 2002 0 Lexington +OIL 51680 2002 0 Lynchburg +OIL 51683 2002 0 Manassas +OIL 51685 2002 0 Manassas Park +OIL 51690 2002 0 Martinsville +OIL 51700 2002 0 Newport News +OIL 51710 2002 0 Norfolk +OIL 51720 2002 0 Norton +OIL 51730 2002 0 Petersburg +OIL 51735 2002 0 Poquoson +OIL 51740 2002 0 Portsmouth +OIL 51750 2002 0 Radford +OIL 51760 2002 28 Richmond +OIL 51770 2002 0 Roanoke +OIL 51775 2002 0 Salem +OIL 51780 2002 0 South Boston +OIL 51790 2002 0 Staunton +OIL 51800 2002 0 Suffolk +OIL 51810 2002 4 Virginia Beach +OIL 51820 2002 0 Waynesboro +OIL 51830 2002 0 Williamsburg +OIL 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_POP.ALO new file mode 100644 index 0000000..c7787c8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_POP.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION +from US Census + +9/23/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2002 with 2000 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 51000 2002 7273572 VA 7273572 +POP 51001 2002 38883 Accomack +POP 51003 2002 86464 Albemarle +POP 51005 2001 12748 Alleghany 0.175%0.750857 +POP 51005 2002 16978 Alleghany 0.233% +POP 51007 2002 11721 Amelia +POP 51009 2002 31815 Amherst +POP 51011 2002 13753 Appomattox +POP 51013 2002 188690 Arlington +POP 51015 2002 66863 Augusta +POP 51017 2002 5040 Bath +POP 51019 2002 61874 Bedford +POP 51021 2002 6906 Bland +POP 51023 2002 31167 Botetourt +POP 51025 2002 18358 Brunswick +POP 51027 2002 26044 Buchanan +POP 51029 2002 15830 Buckingham +POP 51031 2002 51422 Campbell +POP 51033 2002 22616 Caroline +POP 51035 2002 29289 Carroll +POP 51036 2002 7065 Charles City +POP 51037 2002 12496 Charlotte +POP 51041 2002 270772 Chesterfield +POP 51043 2002 13221 Clarke +POP 51045 2002 5077 Craig +POP 51047 2002 36904 Culpeper +POP 51049 2002 9037 Cumberland +POP 51051 2002 16230 Dickenson +POP 51053 2002 24651 Dinwiddie +POP 51057 2002 10120 Essex +POP 51059 2002 992361 Fairfax +POP 51061 2002 59484 Fauquier +POP 51063 2002 14259 Floyd +POP 51065 2002 22008 Fluvanna +POP 51067 2002 48533 Franklin +POP 51069 2002 62959 Frederick +POP 51071 2002 16921 Giles +POP 51073 2002 35913 Gloucester +POP 51075 2002 17695 Goochland +POP 51077 2002 16694 Grayson +POP 51079 2002 16304 Greene +POP 51081 2002 11580 Greensville +POP 51083 2002 36878 Halifax +POP 51085 2002 91878 Hanover +POP 51087 2002 268050 Henrico +POP 51089 2002 57363 Henry +POP 51091 2002 2467 Highland +POP 51093 2002 30934 Isle of Wight +POP 51095 2002 51380 James City +POP 51097 2002 6579 King and Queen +POP 51099 2002 17816 King George +POP 51101 2002 13793 King William +POP 51103 2002 11981 Lancaster +POP 51105 2002 23597 Lee +POP 51107 2002 203818 Loudoun +POP 51109 2002 27114 Louisa +POP 51111 2002 13184 Lunenburg +POP 51113 2002 12984 Madison +POP 51115 2002 9244 Mathews +POP 51117 2002 32477 Mecklenburg +POP 51119 2002 10095 Middlesex +POP 51121 2002 83798 Montgomery +POP 51125 2002 14709 Nelson +POP 51127 2002 14281 New Kent +POP 51131 2002 13062 Northampton +POP 51133 2002 12597 Northumberland +POP 51135 2002 15682 Nottoway +POP 51137 2002 27292 Orange +POP 51139 2002 23364 Page +POP 51141 2002 19313 Patrick +POP 51143 2002 61765 Pittsylvania +POP 51145 2002 24263 Powhatan +POP 51147 2002 20034 Prince Edward +POP 51149 2002 33985 Prince George +POP 51153 2002 310828 Prince William +POP 51155 2002 34977 Pulaski +POP 51157 2002 7151 Rappahannock +POP 51159 2002 8982 Richmond +POP 51161 2002 86508 Roanoke +POP 51163 2002 20853 Rockbridge +POP 51165 2002 68990 Rockingham +POP 51167 2002 28963 Russell +POP 51169 2002 23096 Scott +POP 51171 2002 36418 Shenandoah +POP 51173 2002 32822 Smyth +POP 51175 2002 17363 Southampton +POP 51177 2002 102565 Spotsylvania +POP 51179 2002 104269 Stafford +POP 51181 2002 6963 Surry +POP 51183 2002 12127 Sussex +POP 51185 2002 44298 Tazewell +POP 51187 2002 33064 Warren +POP 51191 2002 51330 Washington +POP 51193 2002 16735 Westmoreland +POP 51195 2002 41829 Wise +POP 51197 2002 27834 Wythe +POP 51199 2002 59292 York +POP 51510 2002 129772 Alexandria +POP 51515 2002 6280 Bedford +POP 51520 2002 17097 Bristol +POP 51530 2002 6297 Buena Vista +POP 51540 2002 38720 Charlottesville +POP 51550 2002 205533 Chesapeake +POP 51560 2001 4230 Clifton Forge 0.058% +POP 51560 2002 0 Clifton Forge 0.000% +POP 51570 2002 17145 Colonial Heights +POP 51580 2002 6337 Covington +POP 51590 2002 47311 Danville +POP 51595 2002 5708 Emporia +POP 51600 2002 21778 Fairfax +POP 51610 2002 10626 Falls Church +POP 51620 2002 8185 Franklin +POP 51630 2002 20017 Fredericksburg +POP 51640 2002 6652 Galax +POP 51650 2002 144852 Hampton +POP 51660 2002 40976 Harrisonburg +POP 51670 2002 22443 Hopewell +POP 51678 2002 6901 Lexington +POP 51680 2002 64952 Lynchburg +POP 51683 2002 36622 Manassas +POP 51685 2002 10930 Manassas Park +POP 51690 2002 15160 Martinsville +POP 51700 2002 179704 Newport News +POP 51710 2002 238343 Norfolk +POP 51720 2002 3927 Norton +POP 51730 2002 33132 Petersburg +POP 51735 2002 11613 Poquoson +POP 51740 2002 99369 Portsmouth +POP 51750 2002 15332 Radford +POP 51760 2002 196303 Richmond +POP 51770 2002 93173 Roanoke +POP 51775 2002 24785 Salem +POP 51780 2002 0 South Boston +POP 51790 2002 23797 Staunton +POP 51800 2002 69821 Suffolk +POP 51810 2002 430909 Virginia Beach +POP 51820 2002 20145 Waynesboro +POP 51830 2002 11544 Williamsburg +POP 51840 2002 24350 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_RAIL.ALO new file mode 100644 index 0000000..1e56180 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_RAIL.ALO @@ -0,0 +1,166 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2002. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 51000 2002 29002.710 VA +RR 51001 2002 0.000 Accomack +RR 51003 2002 478.520 Albemarle +RR 51005 2001 399.790 Alleghany +RR 51005 2002 670.49 Alleghany 2.312% +RR 51007 2002 16.350 Amelia +RR 51009 2002 712.740 Amherst +RR 51011 2002 128.030 Appomattox +RR 51013 2002 135.810 Arlington +RR 51015 2002 161.900 Augusta +RR 51017 2002 8.120 Bath +RR 51019 2002 628.700 Bedford +RR 51021 2002 0.000 Bland +RR 51023 2002 481.820 Botetourt +RR 51025 2002 6.610 Brunswick +RR 51027 2002 83.250 Buchanan +RR 51029 2002 326.620 Buckingham +RR 51031 2002 1032.750 Campbell +RR 51033 2002 252.420 Caroline +RR 51035 2002 0.000 Carroll +RR 51036 2002 117.810 Charles City +RR 51037 2002 206.120 Charlotte +RR 51041 2002 198.490 Chesterfield +RR 51043 2002 96.660 Clarke +RR 51045 2002 0.000 Craig +RR 51047 2002 112.850 Culpeper +RR 51049 2002 11.120 Cumberland +RR 51051 2002 197.120 Dickenson +RR 51053 2002 603.690 Dinwiddie +RR 51057 2002 0.000 Essex +RR 51059 2002 879.460 Fairfax +RR 51061 2002 166.810 Fauquier +RR 51063 2002 0.000 Floyd +RR 51065 2002 744.970 Fluvanna +RR 51067 2002 102.090 Franklin +RR 51069 2002 8.760 Frederick +RR 51071 2002 504.970 Giles +RR 51073 2002 0.000 Gloucester +RR 51075 2002 555.730 Goochland +RR 51077 2002 0.000 Grayson +RR 51079 2002 0.000 Greene +RR 51081 2002 169.180 Greensville +RR 51083 2002 158.880 Halifax +RR 51085 2002 689.320 Hanover +RR 51087 2002 909.450 Henrico +RR 51089 2002 87.840 Henry +RR 51091 2002 0.000 Highland +RR 51093 2002 371.690 Isle of Wight +RR 51095 2002 217.420 James City +RR 51097 2002 0.000 King and Queen +RR 51099 2002 4.130 King George +RR 51101 2002 12.980 King William +RR 51103 2002 0.000 Lancaster +RR 51105 2002 177.980 Lee +RR 51107 2002 0.000 Loudoun +RR 51109 2002 23.130 Louisa +RR 51111 2002 0.000 Lunenburg +RR 51113 2002 0.000 Madison +RR 51115 2002 0.000 Mathews +RR 51117 2002 0.000 Mecklenburg +RR 51119 2002 0.000 Middlesex +RR 51121 2002 520.820 Montgomery +RR 51125 2002 458.300 Nelson +RR 51127 2002 297.370 New Kent +RR 51131 2002 0.000 Northampton +RR 51133 2002 0.000 Northumberland +RR 51135 2002 392.330 Nottoway +RR 51137 2002 120.670 Orange +RR 51139 2002 97.240 Page +RR 51141 2002 0.000 Patrick +RR 51143 2002 458.870 Pittsylvania +RR 51145 2002 16.800 Powhatan +RR 51147 2002 253.260 Prince Edward +RR 51149 2002 308.980 Prince George +RR 51153 2002 1183.780 Prince William +RR 51155 2002 274.760 Pulaski +RR 51157 2002 0.000 Rappahannock +RR 51159 2002 0.000 Richmond +RR 51161 2002 868.630 Roanoke +RR 51163 2002 395.220 Rockbridge +RR 51165 2002 177.340 Rockingham +RR 51167 2002 253.870 Russell +RR 51169 2002 612.640 Scott +RR 51171 2002 23.330 Shenandoah +RR 51173 2002 125.940 Smyth +RR 51175 2002 257.870 Southampton +RR 51177 2002 344.540 Spotsylvania +RR 51179 2002 631.850 Stafford +RR 51181 2002 0.000 Surry +RR 51183 2002 578.370 Sussex +RR 51185 2002 301.680 Tazewell +RR 51187 2002 269.520 Warren +RR 51191 2002 146.600 Washington +RR 51193 2002 0.000 Westmoreland +RR 51195 2002 350.950 Wise +RR 51197 2002 75.090 Wythe +RR 51199 2002 217.420 York +RR 51510 2002 453.120 Alexandria +RR 51515 2002 167.390 Bedford +RR 51520 2002 105.440 Bristol +RR 51530 2002 23.240 Buena Vista +RR 51540 2002 151.900 Charlottesville +RR 51550 2002 219.370 Chesapeake +RR 51560 2001 270.700 Clifton Forge +RR 51560 2002 0.00 Clifton Forge 0.000% +RR 51570 2002 31.840 Colonial Heights +RR 51580 2002 212.140 Covington +RR 51590 2002 195.350 Danville +RR 51595 2002 169.180 Emporia +RR 51600 2002 0.000 Fairfax +RR 51610 2002 0.000 Falls Church +RR 51620 2002 11.540 Franklin +RR 51630 2002 415.120 Fredericksburg +RR 51640 2002 0.000 Galax +RR 51650 2002 1.960 Hampton +RR 51660 2002 18.810 Harrisonburg +RR 51670 2002 8.810 Hopewell +RR 51678 2002 0.000 Lexington +RR 51680 2002 409.090 Lynchburg +RR 51683 2002 206.890 Manassas +RR 51685 2002 106.470 Manassas Park +RR 51690 2002 33.800 Martinsville +RR 51700 2002 154.300 Newport News +RR 51710 2002 78.990 Norfolk +RR 51720 2002 22.240 Norton +RR 51730 2002 349.940 Petersburg +RR 51735 2002 0.000 Poquoson +RR 51740 2002 26.180 Portsmouth +RR 51750 2002 33.510 Radford +RR 51760 2002 1101.790 Richmond +RR 51770 2002 601.070 Roanoke +RR 51775 2002 314.590 Salem +RR 51780 2002 0.000 South Boston +RR 51790 2002 15.630 Staunton +RR 51800 2002 570.120 Suffolk +RR 51810 2002 6.140 Virginia Beach +RR 51820 2002 93.270 Waynesboro +RR 51830 2002 217.420 Williamsburg +RR 51840 2002 9.240 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_RVPRK.ALO new file mode 100644 index 0000000..a0e7f1b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_RVPRK.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +9/23/05 epa: 2001 & 2002 Clifton Forge & Alleghany values determined from 1996 & 2002 data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 51000 2002 151 VA +RVP 51001 2002 4 Accomack +RVP 51003 2002 4 Albemarle +RVP 51005 2001 0 Alleghany +RVP 51005 2002 1 Alleghany +RVP 51007 2002 1 Amelia +RVP 51009 2002 0 Amherst +RVP 51011 2002 2 Appomattox +RVP 51013 2002 0 Arlington +RVP 51015 2002 1 Augusta +RVP 51017 2002 2 Bath +RVP 51019 2002 3 Bedford +RVP 51021 2002 0 Bland +RVP 51023 2002 1 Botetourt +RVP 51025 2002 0 Brunswick +RVP 51027 2002 0 Buchanan +RVP 51029 2002 0 Buckingham +RVP 51031 2002 1 Campbell +RVP 51033 2002 2 Caroline +RVP 51035 2002 1 Carroll +RVP 51036 2002 0 Charles City +RVP 51037 2002 0 Charlotte +RVP 51041 2002 3 Chesterfield +RVP 51043 2002 1 Clarke +RVP 51045 2002 1 Craig +RVP 51047 2002 1 Culpeper +RVP 51049 2002 0 Cumberland +RVP 51051 2002 1 Dickenson +RVP 51053 2002 2 Dinwiddie +RVP 51057 2002 0 Essex +RVP 51059 2002 3 Fairfax +RVP 51061 2002 2 Fauquier +RVP 51063 2002 0 Floyd +RVP 51065 2002 1 Fluvanna +RVP 51067 2002 1 Franklin +RVP 51069 2002 3 Frederick +RVP 51071 2002 0 Giles +RVP 51073 2002 3 Gloucester +RVP 51075 2002 2 Goochland +RVP 51077 2002 1 Grayson +RVP 51079 2002 0 Greene +RVP 51081 2002 1 Greensville +RVP 51083 2002 1 Halifax +RVP 51085 2002 2 Hanover +RVP 51087 2002 0 Henrico +RVP 51089 2002 0 Henry +RVP 51091 2002 0 Highland +RVP 51093 2002 2 Isle of Wight +RVP 51095 2002 6 James City +RVP 51097 2002 1 King and Queen +RVP 51099 2002 0 King George +RVP 51101 2002 0 King William +RVP 51103 2002 1 Lancaster +RVP 51105 2002 0 Lee +RVP 51107 2002 1 Loudoun +RVP 51109 2002 2 Louisa +RVP 51111 2002 0 Lunenburg +RVP 51113 2002 2 Madison +RVP 51115 2002 1 Mathews +RVP 51117 2002 1 Mecklenburg +RVP 51119 2002 0 Middlesex +RVP 51121 2002 3 Montgomery +RVP 51125 2002 1 Nelson +RVP 51127 2002 2 New Kent +RVP 51131 2002 2 Northampton +RVP 51133 2002 4 Northumberland +RVP 51135 2002 1 Nottoway +RVP 51137 2002 0 Orange +RVP 51139 2002 2 Page +RVP 51141 2002 1 Patrick +RVP 51143 2002 1 Pittsylvania +RVP 51145 2002 1 Powhatan +RVP 51147 2002 0 Prince Edward +RVP 51149 2002 2 Prince George +RVP 51153 2002 3 Prince William +RVP 51155 2002 3 Pulaski +RVP 51157 2002 0 Rappahannock +RVP 51159 2002 2 Richmond +RVP 51161 2002 1 Roanoke +RVP 51163 2002 6 Rockbridge +RVP 51165 2002 3 Rockingham +RVP 51167 2002 0 Russell +RVP 51169 2002 0 Scott +RVP 51171 2002 4 Shenandoah +RVP 51173 2002 1 Smyth +RVP 51175 2002 1 Southampton +RVP 51177 2002 2 Spotsylvania +RVP 51179 2002 1 Stafford +RVP 51181 2002 1 Surry +RVP 51183 2002 0 Sussex +RVP 51185 2002 0 Tazewell +RVP 51187 2002 4 Warren +RVP 51191 2002 1 Washington +RVP 51193 2002 2 Westmoreland +RVP 51195 2002 0 Wise +RVP 51197 2002 2 Wythe +RVP 51199 2002 2 York +RVP 51510 2002 0 Alexandria +RVP 51515 2002 0 Bedford +RVP 51520 2002 0 Bristol +RVP 51530 2002 0 Buena Vista +RVP 51540 2002 3 Charlottesville +RVP 51550 2002 2 Chesapeake +RVP 51560 2001 1 Clifton Forge +RVP 51560 2002 0 Clifton Forge +RVP 51570 2002 0 Colonial Heights +RVP 51580 2002 0 Covington +RVP 51590 2002 0 Danville +RVP 51595 2002 0 Emporia +RVP 51600 2002 0 Fairfax +RVP 51610 2002 0 Falls Church +RVP 51620 2002 0 Franklin +RVP 51630 2002 0 Fredericksburg +RVP 51640 2002 0 Galax +RVP 51650 2002 2 Hampton +RVP 51660 2002 3 Harrisonburg +RVP 51670 2002 0 Hopewell +RVP 51678 2002 0 Lexington +RVP 51680 2002 0 Lynchburg +RVP 51683 2002 0 Manassas +RVP 51685 2002 0 Manassas Park +RVP 51690 2002 0 Martinsville +RVP 51700 2002 0 Newport News +RVP 51710 2002 0 Norfolk +RVP 51720 2002 0 Norton +RVP 51730 2002 0 Petersburg +RVP 51735 2002 0 Poquoson +RVP 51740 2002 1 Portsmouth +RVP 51750 2002 0 Radford +RVP 51760 2002 0 Richmond +RVP 51770 2002 0 Roanoke +RVP 51775 2002 0 Salem +RVP 51780 2002 0 South Boston +RVP 51790 2002 1 Staunton +RVP 51800 2002 1 Suffolk +RVP 51810 2002 8 Virginia Beach +RVP 51820 2002 1 Waynesboro +RVP 51830 2002 1 Williamsburg +RVP 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_SBC.ALO new file mode 100644 index 0000000..6d17ee8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_SBC.ALO @@ -0,0 +1,163 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +9/23/05 epa: checked Clifton Forge pre-2002 (1996), but was no LSCAP then. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 51000 2002 9931 VA +SBC 51001 2002 0 Accomack +SBC 51003 2002 207 Albemarle +SBC 51005 2002 18 Alleghany +SBC 51007 2002 0 Amelia +SBC 51009 2002 34 Amherst +SBC 51011 2002 10 Appomattox +SBC 51013 2002 138 Arlington +SBC 51015 2002 114 Augusta +SBC 51017 2002 5 Bath +SBC 51019 2002 73 Bedford +SBC 51021 2002 0 Bland +SBC 51023 2002 56 Botetourt +SBC 51025 2002 0 Brunswick +SBC 51027 2002 28 Buchanan +SBC 51029 2002 17 Buckingham +SBC 51031 2002 55 Campbell +SBC 51033 2002 0 Caroline +SBC 51035 2002 32 Carroll +SBC 51036 2002 0 Charles City +SBC 51037 2002 0 Charlotte +SBC 51041 2002 0 Chesterfield +SBC 51043 2002 38 Clarke +SBC 51045 2002 0 Craig +SBC 51047 2002 95 Culpeper +SBC 51049 2002 0 Cumberland +SBC 51051 2002 17 Dickenson +SBC 51053 2002 0 Dinwiddie +SBC 51057 2002 0 Essex +SBC 51059 2002 3074 Fairfax +SBC 51061 2002 136 Fauquier +SBC 51063 2002 15 Floyd +SBC 51065 2002 31 Fluvanna +SBC 51067 2002 64 Franklin +SBC 51069 2002 1293 Frederick +SBC 51071 2002 0 Giles +SBC 51073 2002 0 Gloucester +SBC 51075 2002 0 Goochland +SBC 51077 2002 18 Grayson +SBC 51079 2002 33 Greene +SBC 51081 2002 0 Greensville +SBC 51083 2002 0 Halifax +SBC 51085 2002 0 Hanover +SBC 51087 2002 0 Henrico +SBC 51089 2002 0 Henry +SBC 51091 2002 0 Highland +SBC 51093 2002 0 Isle of Wight +SBC 51095 2002 0 James City +SBC 51097 2002 0 King and Queen +SBC 51099 2002 10 King George +SBC 51101 2002 0 King William +SBC 51103 2002 0 Lancaster +SBC 51105 2002 0 Lee +SBC 51107 2002 1624 Loudoun +SBC 51109 2002 29 Louisa +SBC 51111 2002 0 Lunenburg +SBC 51113 2002 9 Madison +SBC 51115 2002 0 Mathews +SBC 51117 2002 0 Mecklenburg +SBC 51119 2002 0 Middlesex +SBC 51121 2002 109 Montgomery +SBC 51125 2002 64 Nelson +SBC 51127 2002 0 New Kent +SBC 51131 2002 0 Northampton +SBC 51133 2002 0 Northumberland +SBC 51135 2002 0 Nottoway +SBC 51137 2002 14 Orange +SBC 51139 2002 128 Page +SBC 51141 2002 0 Patrick +SBC 51143 2002 0 Pittsylvania +SBC 51145 2002 0 Powhatan +SBC 51147 2002 0 Prince Edward +SBC 51149 2002 0 Prince George +SBC 51153 2002 831 Prince William +SBC 51155 2002 38 Pulaski +SBC 51157 2002 8 Rappahannock +SBC 51159 2002 0 Richmond +SBC 51161 2002 61 Roanoke +SBC 51163 2002 22 Rockbridge +SBC 51165 2002 31 Rockingham +SBC 51167 2002 31 Russell +SBC 51169 2002 25 Scott +SBC 51171 2002 39 Shenandoah +SBC 51173 2002 35 Smyth +SBC 51175 2002 0 Southampton +SBC 51177 2002 64 Spotsylvania +SBC 51179 2002 108 Stafford +SBC 51181 2002 0 Surry +SBC 51183 2002 0 Sussex +SBC 51185 2002 48 Tazewell +SBC 51187 2002 15 Warren +SBC 51191 2002 65 Washington +SBC 51193 2002 0 Westmoreland +SBC 51195 2002 45 Wise +SBC 51197 2002 30 Wythe +SBC 51199 2002 0 York +SBC 51510 2002 183 Alexandria +SBC 51515 2002 7 Bedford +SBC 51520 2002 18 Bristol +SBC 51530 2002 0 Buena Vista +SBC 51540 2002 42 Charlottesville +SBC 51550 2002 0 Chesapeake +SBC 51560 2002 0 Clifton Forge +SBC 51570 2002 0 Colonial Heights +SBC 51580 2002 0 Covington +SBC 51590 2002 0 Danville +SBC 51595 2002 0 Emporia +SBC 51600 2002 0 Fairfax +SBC 51610 2002 74 Falls Church +SBC 51620 2002 0 Franklin +SBC 51630 2002 0 Fredericksburg +SBC 51640 2002 7 Galax +SBC 51650 2002 0 Hampton +SBC 51660 2002 44 Harrisonburg +SBC 51670 2002 0 Hopewell +SBC 51678 2002 0 Lexington +SBC 51680 2002 70 Lynchburg +SBC 51683 2002 28 Manassas +SBC 51685 2002 70 Manassas Park +SBC 51690 2002 16 Martinsville +SBC 51700 2002 0 Newport News +SBC 51710 2002 0 Norfolk +SBC 51720 2002 0 Norton +SBC 51730 2002 0 Petersburg +SBC 51735 2002 0 Poquoson +SBC 51740 2002 0 Portsmouth +SBC 51750 2002 16 Radford +SBC 51760 2002 0 Richmond +SBC 51770 2002 102 Roanoke +SBC 51775 2002 83 Salem +SBC 51780 2002 0 South Boston +SBC 51790 2002 39 Staunton +SBC 51800 2002 0 Suffolk +SBC 51810 2002 0 Virginia Beach +SBC 51820 2002 22 Waynesboro +SBC 51830 2002 0 Williamsburg +SBC 51840 2002 26 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_SBR.ALO new file mode 100644 index 0000000..7881c99 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_SBR.ALO @@ -0,0 +1,165 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +9/23/05 epa: 2001 & 2002 Clifton Forge & Alleghany values allocated from 2002 with 1996 ratios. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 51000 2002 1655233 VA 1655233 +SBR 51001 2002 0 Accomack 1655233 +SBR 51003 2002 35143 Albemarle +SBR 51005 2001 5740 Alleghany 0.347%0.725757 +SBR 51005 2002 7909 Alleghany 0.478% +SBR 51007 2002 0 Amelia +SBR 51009 2002 13188 Amherst +SBR 51011 2002 5975 Appomattox +SBR 51013 2002 91848 Arlington +SBR 51015 2002 27679 Augusta +SBR 51017 2002 2944 Bath +SBR 51019 2002 27837 Bedford +SBR 51021 2002 3271 Bland +SBR 51023 2002 12937 Botetourt +SBR 51025 2002 0 Brunswick +SBR 51027 2002 12017 Buchanan +SBR 51029 2002 6420 Buckingham +SBR 51031 2002 22685 Campbell +SBR 51033 2002 0 Caroline +SBR 51035 2002 15035 Carroll +SBR 51036 2002 0 Charles City +SBR 51037 2002 0 Charlotte +SBR 51041 2002 0 Chesterfield +SBR 51043 2002 5580 Clarke +SBR 51045 2002 2627 Craig +SBR 51047 2002 13601 Culpeper +SBR 51049 2002 0 Cumberland +SBR 51051 2002 7767 Dickenson +SBR 51053 2002 0 Dinwiddie +SBR 51057 2002 0 Essex +SBR 51059 2002 372209 Fairfax +SBR 51061 2002 22377 Fauquier +SBR 51063 2002 6950 Floyd +SBR 51065 2002 8795 Fluvanna +SBR 51067 2002 23643 Franklin +SBR 51069 2002 24484 Frederick +SBR 51071 2002 7876 Giles +SBR 51073 2002 0 Gloucester +SBR 51075 2002 0 Goochland +SBR 51077 2002 9381 Grayson +SBR 51079 2002 6407 Greene +SBR 51081 2002 0 Greensville +SBR 51083 2002 0 Halifax +SBR 51085 2002 0 Hanover +SBR 51087 2002 0 Henrico +SBR 51089 2002 0 Henry +SBR 51091 2002 1826 Highland +SBR 51093 2002 0 Isle of Wight +SBR 51095 2002 0 James City +SBR 51097 2002 0 King and Queen +SBR 51099 2002 7156 King George +SBR 51101 2002 0 King William +SBR 51103 2002 0 Lancaster +SBR 51105 2002 0 Lee +SBR 51107 2002 74235 Loudoun +SBR 51109 2002 12405 Louisa +SBR 51111 2002 0 Lunenburg +SBR 51113 2002 5427 Madison +SBR 51115 2002 0 Mathews +SBR 51117 2002 0 Mecklenburg +SBR 51119 2002 0 Middlesex +SBR 51121 2002 33417 Montgomery +SBR 51125 2002 8690 Nelson +SBR 51127 2002 0 New Kent +SBR 51131 2002 0 Northampton +SBR 51133 2002 0 Northumberland +SBR 51135 2002 0 Nottoway +SBR 51137 2002 11868 Orange +SBR 51139 2002 10674 Page +SBR 51141 2002 0 Patrick +SBR 51143 2002 0 Pittsylvania +SBR 51145 2002 0 Powhatan +SBR 51147 2002 0 Prince Edward +SBR 51149 2002 0 Prince George +SBR 51153 2002 108004 Prince William +SBR 51155 2002 16559 Pulaski +SBR 51157 2002 3370 Rappahannock +SBR 51159 2002 0 Richmond +SBR 51161 2002 37314 Roanoke +SBR 51163 2002 9964 Rockbridge +SBR 51165 2002 28147 Rockingham +SBR 51167 2002 13370 Russell +SBR 51169 2002 11514 Scott +SBR 51171 2002 17145 Shenandoah +SBR 51173 2002 15276 Smyth +SBR 51175 2002 0 Southampton +SBR 51177 2002 37164 Spotsylvania +SBR 51179 2002 34931 Stafford +SBR 51181 2002 0 Surry +SBR 51183 2002 0 Sussex +SBR 51185 2002 20602 Tazewell +SBR 51187 2002 13721 Warren +SBR 51191 2002 23464 Washington +SBR 51193 2002 0 Westmoreland +SBR 51195 2002 17986 Wise +SBR 51197 2002 12962 Wythe +SBR 51199 2002 0 York +SBR 51510 2002 66615 Alexandria +SBR 51515 2002 2714 Bedford +SBR 51520 2002 8512 Bristol +SBR 51530 2002 2753 Buena Vista +SBR 51540 2002 17573 Charlottesville +SBR 51550 2002 0 Chesapeake +SBR 51560 2001 2169 Clifton Forge 0.131% +SBR 51560 2002 0 Clifton Forge 0.000% +SBR 51570 2002 0 Colonial Heights +SBR 51580 2002 3174 Covington +SBR 51590 2002 0 Danville +SBR 51595 2002 0 Emporia +SBR 51600 2002 0 Fairfax +SBR 51610 2002 4705 Falls Church +SBR 51620 2002 0 Franklin +SBR 51630 2002 0 Fredericksburg +SBR 51640 2002 3231 Galax +SBR 51650 2002 0 Hampton +SBR 51660 2002 14027 Harrisonburg +SBR 51670 2002 0 Hopewell +SBR 51678 2002 2370 Lexington +SBR 51680 2002 28142 Lynchburg +SBR 51683 2002 12317 Manassas +SBR 51685 2002 3645 Manassas Park +SBR 51690 2002 7288 Martinsville +SBR 51700 2002 0 Newport News +SBR 51710 2002 0 Norfolk +SBR 51720 2002 1950 Norton +SBR 51730 2002 0 Petersburg +SBR 51735 2002 0 Poquoson +SBR 51740 2002 0 Portsmouth +SBR 51750 2002 6137 Radford +SBR 51760 2002 0 Richmond +SBR 51770 2002 45565 Roanoke +SBR 51775 2002 10504 Salem +SBR 51780 2002 0 South Boston +SBR 51790 2002 10465 Staunton +SBR 51800 2002 0 Suffolk +SBR 51810 2002 0 Virginia Beach +SBR 51820 2002 9027 Waynesboro +SBR 51830 2002 0 Williamsburg +SBR 51840 2002 10743 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_SNOWM.ALO new file mode 100644 index 0000000..3d943dc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_SNOWM.ALO @@ -0,0 +1,161 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 51000 2002 0 VA +SNM 51001 2002 0 Accomack +SNM 51003 2002 0 Albemarle +SNM 51005 2002 0 Alleghany +SNM 51007 2002 0 Amelia +SNM 51009 2002 0 Amherst +SNM 51011 2002 0 Appomattox +SNM 51013 2002 0 Arlington +SNM 51015 2002 0 Augusta +SNM 51017 2002 0 Bath +SNM 51019 2002 0 Bedford +SNM 51021 2002 0 Bland +SNM 51023 2002 0 Botetourt +SNM 51025 2002 0 Brunswick +SNM 51027 2002 0 Buchanan +SNM 51029 2002 0 Buckingham +SNM 51031 2002 0 Campbell +SNM 51033 2002 0 Caroline +SNM 51035 2002 0 Carroll +SNM 51036 2002 0 Charles City +SNM 51037 2002 0 Charlotte +SNM 51041 2002 0 Chesterfield +SNM 51043 2002 0 Clarke +SNM 51045 2002 0 Craig +SNM 51047 2002 0 Culpeper +SNM 51049 2002 0 Cumberland +SNM 51051 2002 0 Dickenson +SNM 51053 2002 0 Dinwiddie +SNM 51057 2002 0 Essex +SNM 51059 2002 0 Fairfax +SNM 51061 2002 0 Fauquier +SNM 51063 2002 0 Floyd +SNM 51065 2002 0 Fluvanna +SNM 51067 2002 0 Franklin +SNM 51069 2002 0 Frederick +SNM 51071 2002 0 Giles +SNM 51073 2002 0 Gloucester +SNM 51075 2002 0 Goochland +SNM 51077 2002 0 Grayson +SNM 51079 2002 0 Greene +SNM 51081 2002 0 Greensville +SNM 51083 2002 0 Halifax +SNM 51085 2002 0 Hanover +SNM 51087 2002 0 Henrico +SNM 51089 2002 0 Henry +SNM 51091 2002 0 Highland +SNM 51093 2002 0 Isle of Wight +SNM 51095 2002 0 James City +SNM 51097 2002 0 King and Queen +SNM 51099 2002 0 King George +SNM 51101 2002 0 King William +SNM 51103 2002 0 Lancaster +SNM 51105 2002 0 Lee +SNM 51107 2002 0 Loudoun +SNM 51109 2002 0 Louisa +SNM 51111 2002 0 Lunenburg +SNM 51113 2002 0 Madison +SNM 51115 2002 0 Mathews +SNM 51117 2002 0 Mecklenburg +SNM 51119 2002 0 Middlesex +SNM 51121 2002 0 Montgomery +SNM 51125 2002 0 Nelson +SNM 51127 2002 0 New Kent +SNM 51131 2002 0 Northampton +SNM 51133 2002 0 Northumberland +SNM 51135 2002 0 Nottoway +SNM 51137 2002 0 Orange +SNM 51139 2002 0 Page +SNM 51141 2002 0 Patrick +SNM 51143 2002 0 Pittsylvania +SNM 51145 2002 0 Powhatan +SNM 51147 2002 0 Prince Edward +SNM 51149 2002 0 Prince George +SNM 51153 2002 0 Prince William +SNM 51155 2002 0 Pulaski +SNM 51157 2002 0 Rappahannock +SNM 51159 2002 0 Richmond +SNM 51161 2002 0 Roanoke +SNM 51163 2002 0 Rockbridge +SNM 51165 2002 0 Rockingham +SNM 51167 2002 0 Russell +SNM 51169 2002 0 Scott +SNM 51171 2002 0 Shenandoah +SNM 51173 2002 0 Smyth +SNM 51175 2002 0 Southampton +SNM 51177 2002 0 Spotsylvania +SNM 51179 2002 0 Stafford +SNM 51181 2002 0 Surry +SNM 51183 2002 0 Sussex +SNM 51185 2002 0 Tazewell +SNM 51187 2002 0 Warren +SNM 51191 2002 0 Washington +SNM 51193 2002 0 Westmoreland +SNM 51195 2002 0 Wise +SNM 51197 2002 0 Wythe +SNM 51199 2002 0 York +SNM 51510 2002 0 Alexandria +SNM 51515 2002 0 Bedford +SNM 51520 2002 0 Bristol +SNM 51530 2002 0 Buena Vista +SNM 51540 2002 0 Charlottesville +SNM 51550 2002 0 Chesapeake +SNM 51560 2002 0 Clifton Forge +SNM 51570 2002 0 Colonial Heights +SNM 51580 2002 0 Covington +SNM 51590 2002 0 Danville +SNM 51595 2002 0 Emporia +SNM 51600 2002 0 Fairfax +SNM 51610 2002 0 Falls Church +SNM 51620 2002 0 Franklin +SNM 51630 2002 0 Fredericksburg +SNM 51640 2002 0 Galax +SNM 51650 2002 0 Hampton +SNM 51660 2002 0 Harrisonburg +SNM 51670 2002 0 Hopewell +SNM 51678 2002 0 Lexington +SNM 51680 2002 0 Lynchburg +SNM 51683 2002 0 Manassas +SNM 51685 2002 0 Manassas Park +SNM 51690 2002 0 Martinsville +SNM 51700 2002 0 Newport News +SNM 51710 2002 0 Norfolk +SNM 51720 2002 0 Norton +SNM 51730 2002 0 Petersburg +SNM 51735 2002 0 Poquoson +SNM 51740 2002 0 Portsmouth +SNM 51750 2002 0 Radford +SNM 51760 2002 0 Richmond +SNM 51770 2002 0 Roanoke +SNM 51775 2002 0 Salem +SNM 51780 2002 0 South Boston +SNM 51790 2002 0 Staunton +SNM 51800 2002 0 Suffolk +SNM 51810 2002 0 Virginia Beach +SNM 51820 2002 0 Waynesboro +SNM 51830 2002 0 Williamsburg +SNM 51840 2002 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_WIB.ALO new file mode 100644 index 0000000..56d8ef2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_WIB.ALO @@ -0,0 +1,161 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 51000 1990 6080 VA +WIB 51001 1990 1475 Accomack +WIB 51003 1990 9 Albemarle +WIB 51005 1990 3 Alleghany +WIB 51007 1990 5 Amelia +WIB 51009 1990 9 Amherst +WIB 51011 1990 3 Appomattox +WIB 51013 1990 0 Arlington +WIB 51015 1990 1 Augusta +WIB 51017 1990 7 Bath +WIB 51019 1990 38 Bedford +WIB 51021 1990 0 Bland +WIB 51023 1990 8 Botetourt +WIB 51025 1990 8 Brunswick +WIB 51027 1990 0 Buchanan +WIB 51029 1990 7 Buckingham +WIB 51031 1990 7 Campbell +WIB 51033 1990 16 Caroline +WIB 51035 1990 3 Carroll +WIB 51036 1990 60 Charles City +WIB 51037 1990 6 Charlotte +WIB 51041 1990 33 Chesterfield +WIB 51043 1990 4 Clarke +WIB 51045 1990 0 Craig +WIB 51047 1990 3 Culpeper +WIB 51049 1990 3 Cumberland +WIB 51051 1990 5 Dickenson +WIB 51053 1990 8 Dinwiddie +WIB 51057 1990 61 Essex +WIB 51059 1990 33 Fairfax +WIB 51061 1990 4 Fauquier +WIB 51063 1990 0 Floyd +WIB 51065 1990 7 Fluvanna +WIB 51067 1990 50 Franklin +WIB 51069 1990 3 Frederick +WIB 51071 1990 8 Giles +WIB 51073 1990 190 Gloucester +WIB 51075 1990 14 Goochland +WIB 51077 1990 8 Grayson +WIB 51079 1990 1 Greene +WIB 51081 1990 4 Greensville +WIB 51083 1990 27 Halifax +WIB 51085 1990 3 Hanover +WIB 51087 1990 13 Henrico +WIB 51089 1990 5 Henry +WIB 51091 1990 0 Highland +WIB 51093 1990 75 Isle of Wight +WIB 51095 1990 101 James City +WIB 51097 1990 26 King and Queen +WIB 51099 1990 19 King George +WIB 51101 1990 26 King William +WIB 51103 1990 176 Lancaster +WIB 51105 1990 0 Lee +WIB 51107 1990 3 Loudoun +WIB 51109 1990 35 Louisa +WIB 51111 1990 2 Lunenburg +WIB 51113 1990 1 Madison +WIB 51115 1990 260 Mathews +WIB 51117 1990 143 Mecklenburg +WIB 51119 1990 125 Middlesex +WIB 51121 1990 3 Montgomery +WIB 51125 1990 5 Nelson +WIB 51127 1990 36 New Kent +WIB 51131 1990 1088 Northampton +WIB 51133 1990 189 Northumberland +WIB 51135 1990 4 Nottoway +WIB 51137 1990 4 Orange +WIB 51139 1990 8 Page +WIB 51141 1990 7 Patrick +WIB 51143 1990 19 Pittsylvania +WIB 51145 1990 3 Powhatan +WIB 51147 1990 3 Prince Edward +WIB 51149 1990 42 Prince George +WIB 51153 1990 28 Prince William +WIB 51155 1990 23 Pulaski +WIB 51157 1990 1 Rappahannock +WIB 51159 1990 65 Richmond +WIB 51161 1990 0 Roanoke +WIB 51163 1990 4 Rockbridge +WIB 51165 1990 6 Rockingham +WIB 51167 1990 5 Russell +WIB 51169 1990 5 Scott +WIB 51171 1990 1 Shenandoah +WIB 51173 1990 1 Smyth +WIB 51175 1990 7 Southampton +WIB 51177 1990 30 Spotsylvania +WIB 51179 1990 29 Stafford +WIB 51181 1990 67 Surry +WIB 51183 1990 5 Sussex +WIB 51185 1990 0 Tazewell +WIB 51187 1990 7 Warren +WIB 51191 1990 9 Washington +WIB 51193 1990 57 Westmoreland +WIB 51195 1990 3 Wise +WIB 51197 1990 4 Wythe +WIB 51199 1990 184 York +WIB 51510 1990 0 Alexandria +WIB 51515 1990 0 Bedford +WIB 51520 1990 0 Bristol +WIB 51530 1990 0 Buena Vista +WIB 51540 1990 0 Charlottesville +WIB 51550 1990 27 Chesapeake +WIB 51560 1990 0 Clifton Forge +WIB 51570 1990 1 Colonial Heights +WIB 51580 1990 0 Covington +WIB 51590 1990 2 Danville +WIB 51595 1990 0 Emporia +WIB 51600 1990 0 Fairfax +WIB 51610 1990 0 Falls Church +WIB 51620 1990 0 Franklin +WIB 51630 1990 0 Fredericksburg +WIB 51640 1990 0 Galax +WIB 51650 1990 136 Hampton +WIB 51660 1990 0 Harrisonburg +WIB 51670 1990 1 Hopewell +WIB 51678 1990 0 Lexington +WIB 51680 1990 1 Lynchburg +WIB 51683 1990 0 Manassas +WIB 51685 1990 0 Manassas Park +WIB 51690 1990 0 Martinsville +WIB 51700 1990 73 Newport News +WIB 51710 1990 86 Norfolk +WIB 51720 1990 0 Norton +WIB 51730 1990 1 Petersburg +WIB 51735 1990 89 Poquoson +WIB 51740 1990 37 Portsmouth +WIB 51750 1990 1 Radford +WIB 51760 1990 6 Richmond +WIB 51770 1990 0 Roanoke +WIB 51775 1990 0 Salem +WIB 51780 1990 0 South Boston +WIB 51790 1990 0 Staunton +WIB 51800 1990 69 Suffolk +WIB 51810 1990 454 Virginia Beach +WIB 51820 1990 0 Waynesboro +WIB 51830 1990 0 Williamsburg +WIB 51840 1990 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VA_WOB.ALO new file mode 100644 index 0000000..716b2b2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VA_WOB.ALO @@ -0,0 +1,161 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 51000 1990 3022 VA +WOB 51001 1990 516 Accomack +WOB 51003 1990 9 Albemarle +WOB 51005 1990 3 Alleghany +WOB 51007 1990 5 Amelia +WOB 51009 1990 9 Amherst +WOB 51011 1990 3 Appomattox +WOB 51013 1990 0 Arlington +WOB 51015 1990 1 Augusta +WOB 51017 1990 7 Bath +WOB 51019 1990 38 Bedford +WOB 51021 1990 0 Bland +WOB 51023 1990 8 Botetourt +WOB 51025 1990 8 Brunswick +WOB 51027 1990 0 Buchanan +WOB 51029 1990 7 Buckingham +WOB 51031 1990 7 Campbell +WOB 51033 1990 16 Caroline +WOB 51035 1990 3 Carroll +WOB 51036 1990 56 Charles City +WOB 51037 1990 6 Charlotte +WOB 51041 1990 33 Chesterfield +WOB 51043 1990 4 Clarke +WOB 51045 1990 0 Craig +WOB 51047 1990 3 Culpeper +WOB 51049 1990 3 Cumberland +WOB 51051 1990 5 Dickenson +WOB 51053 1990 8 Dinwiddie +WOB 51057 1990 50 Essex +WOB 51059 1990 24 Fairfax +WOB 51061 1990 4 Fauquier +WOB 51063 1990 0 Floyd +WOB 51065 1990 7 Fluvanna +WOB 51067 1990 50 Franklin +WOB 51069 1990 3 Frederick +WOB 51071 1990 8 Giles +WOB 51073 1990 108 Gloucester +WOB 51075 1990 14 Goochland +WOB 51077 1990 8 Grayson +WOB 51079 1990 1 Greene +WOB 51081 1990 4 Greensville +WOB 51083 1990 27 Halifax +WOB 51085 1990 3 Hanover +WOB 51087 1990 13 Henrico +WOB 51089 1990 5 Henry +WOB 51091 1990 0 Highland +WOB 51093 1990 28 Isle of Wight +WOB 51095 1990 62 James City +WOB 51097 1990 26 King and Queen +WOB 51099 1990 19 King George +WOB 51101 1990 26 King William +WOB 51103 1990 58 Lancaster +WOB 51105 1990 0 Lee +WOB 51107 1990 3 Loudoun +WOB 51109 1990 35 Louisa +WOB 51111 1990 2 Lunenburg +WOB 51113 1990 1 Madison +WOB 51115 1990 73 Mathews +WOB 51117 1990 143 Mecklenburg +WOB 51119 1990 41 Middlesex +WOB 51121 1990 3 Montgomery +WOB 51125 1990 5 Nelson +WOB 51127 1990 36 New Kent +WOB 51131 1990 432 Northampton +WOB 51133 1990 80 Northumberland +WOB 51135 1990 4 Nottoway +WOB 51137 1990 4 Orange +WOB 51139 1990 8 Page +WOB 51141 1990 7 Patrick +WOB 51143 1990 19 Pittsylvania +WOB 51145 1990 3 Powhatan +WOB 51147 1990 3 Prince Edward +WOB 51149 1990 42 Prince George +WOB 51153 1990 18 Prince William +WOB 51155 1990 23 Pulaski +WOB 51157 1990 1 Rappahannock +WOB 51159 1990 41 Richmond +WOB 51161 1990 0 Roanoke +WOB 51163 1990 4 Rockbridge +WOB 51165 1990 6 Rockingham +WOB 51167 1990 5 Russell +WOB 51169 1990 5 Scott +WOB 51171 1990 1 Shenandoah +WOB 51173 1990 1 Smyth +WOB 51175 1990 7 Southampton +WOB 51177 1990 30 Spotsylvania +WOB 51179 1990 23 Stafford +WOB 51181 1990 40 Surry +WOB 51183 1990 5 Sussex +WOB 51185 1990 0 Tazewell +WOB 51187 1990 7 Warren +WOB 51191 1990 9 Washington +WOB 51193 1990 48 Westmoreland +WOB 51195 1990 3 Wise +WOB 51197 1990 4 Wythe +WOB 51199 1990 70 York +WOB 51510 1990 0 Alexandria +WOB 51515 1990 0 Bedford +WOB 51520 1990 0 Bristol +WOB 51530 1990 0 Buena Vista +WOB 51540 1990 0 Charlottesville +WOB 51550 1990 27 Chesapeake +WOB 51560 1990 0 Clifton Forge +WOB 51570 1990 1 Colonial Heights +WOB 51580 1990 0 Covington +WOB 51590 1990 2 Danville +WOB 51595 1990 0 Emporia +WOB 51600 1990 0 Fairfax +WOB 51610 1990 0 Falls Church +WOB 51620 1990 0 Franklin +WOB 51630 1990 0 Fredericksburg +WOB 51640 1990 0 Galax +WOB 51650 1990 50 Hampton +WOB 51660 1990 0 Harrisonburg +WOB 51670 1990 1 Hopewell +WOB 51678 1990 0 Lexington +WOB 51680 1990 1 Lynchburg +WOB 51683 1990 0 Manassas +WOB 51685 1990 0 Manassas Park +WOB 51690 1990 0 Martinsville +WOB 51700 1990 16 Newport News +WOB 51710 1990 34 Norfolk +WOB 51720 1990 0 Norton +WOB 51730 1990 1 Petersburg +WOB 51735 1990 23 Poquoson +WOB 51740 1990 21 Portsmouth +WOB 51750 1990 1 Radford +WOB 51760 1990 6 Richmond +WOB 51770 1990 0 Roanoke +WOB 51775 1990 0 Salem +WOB 51780 1990 0 South Boston +WOB 51790 1990 0 Staunton +WOB 51800 1990 48 Suffolk +WOB 51810 1990 189 Virginia Beach +WOB 51820 1990 0 Waynesboro +WOB 51830 1990 0 Williamsburg +WOB 51840 1990 0 Winchester +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_AIRTR.ALO new file mode 100644 index 0000000..4c0e822 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_AIRTR.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 78000 2002 66.690 VI +AIR 78010 2002 27.950 St. Croix +AIR 78020 2002 0.000 St. John +AIR 78030 2002 38.740 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_COAL.ALO new file mode 100644 index 0000000..9ec9104 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_COAL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 78000 2002 0 VI +MIN 78010 2002 0 St. Croix +MIN 78020 2002 0 St. John +MIN 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_CONST.ALO new file mode 100644 index 0000000..4c160b6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_CONST.ALO @@ -0,0 +1,29 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file are the 2002 dollars (1000's) spent on construction +St Thomas & St John divided per human pop. +Not adjusted for relative costs of construction. +2002 NAICS 23 + +8/29/05 epa: Update per 2002 Economic Census of Island Areas - Virgin Islands. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +CON 78000 2002 285582 VI 285582 +CON 78010 2002 153497 St. Croix +CON 78020 2002 10010 St. John +CON 78030 2002 122075 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_FARMS.ALO new file mode 100644 index 0000000..cadd4cf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_FARMS.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 78000 2002 602 VI +FRM 78010 2002 558 St. Croix +FRM 78020 2002 22 St. John +FRM 78030 2002 22 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_GOLF.ALO new file mode 100644 index 0000000..6835609 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_GOLF.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +8/5/05: add PR & VI by web search for golf courses. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 78000 2002 4 VI +GC 78010 2002 3 St. Croix +GC 78020 2002 0 St. John +GC 78030 2002 1 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_HOLSL.ALO new file mode 100644 index 0000000..5d5ca72 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_HOLSL.ALO @@ -0,0 +1,27 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- (50xx & 51xx) + +8/29/05 epa: Update per 2002 Economic Census of Island Areas - Virgin Islands. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +COM 78000 2002 74 VI 74 +COM 78010 2002 26 St. Croix +COM 78020 2002 4 St. John +COM 78030 2002 44 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_HOUSE.ALO new file mode 100644 index 0000000..5ea8c18 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_HOUSE.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 78000 2000 50202 VI +HOU 78010 2000 23782 St. Croix +HOU 78020 2000 2390 St. John +HOU 78030 2000 24030 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_LOGGN.ALO new file mode 100644 index 0000000..04f76ea --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_LOGGN.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 78000 2002 0 VI +LOG 78010 2002 0 St. Croix +LOG 78020 2002 0 St. John +LOG 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_LSCAP.ALO new file mode 100644 index 0000000..48cf09f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_LSCAP.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is HUMAN POPULATION +It is used as PR & VI State-to-County allocation surrogate for +EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +8/29/05 epa: Update to use human population, due to inadequate county data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +LSC 78000 2002 108612 VI 108612 +LSC 78010 2002 53234 St. Croix +LSC 78020 2002 4197 St. John +LSC 78030 2002 51181 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_MNFG.ALO new file mode 100644 index 0000000..f82d613 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_MNFG.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- + +8/29/05 epa: Update per 2002 Economic Census of Island Areas - Virgin Islands. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +MFG 78000 2002 1193 VI 1194 +MFG 78010 2002 815 St. Croix +MFG 78020 2002 29 St. John +MFG 78030 2002 350 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_OIL.ALO new file mode 100644 index 0000000..ded092a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_OIL.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 78000 2002 0 VI +OIL 78010 2002 0 St. Croix +OIL 78020 2002 0 St. John +OIL 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_POP.ALO new file mode 100644 index 0000000..daa9c9e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_POP.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 78000 2002 108612 VI +POP 78010 2002 53234 St. Croix +POP 78020 2002 4197 St. John +POP 78030 2002 51181 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_RAIL.ALO new file mode 100644 index 0000000..94fb2f4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_RAIL.ALO @@ -0,0 +1,30 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 78000 2002 0.000 VI +RR 78010 2002 0.000 St. Croix +RR 78020 2002 0.000 St. John +RR 78030 2002 0.000 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_RVPRK.ALO new file mode 100644 index 0000000..02ba55f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_RVPRK.ALO @@ -0,0 +1,29 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +The data in this file is HUMAN POPULATION +It is used as PR & VI State-to-County allocation surrogate for +RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +9/1/05 epa: Update to use human population, due to inadequate RV Park data. +1/13/06: epa: Fix "LSC" to "RVP" indicator code. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +RVP 78000 2002 108612 VI 108612 +RVP 78010 2002 53234 St. Croix +RVP 78020 2002 4197 St. John +RVP 78030 2002 51181 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_SBC.ALO new file mode 100644 index 0000000..804d6ef --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_SBC.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 78000 2002 0 VI +SBC 78010 2002 0 St. Croix +SBC 78020 2002 0 St. John +SBC 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_SBR.ALO new file mode 100644 index 0000000..effa8f6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_SBR.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 78000 2002 0 VI +SBR 78010 2002 0 St. Croix +SBR 78020 2002 0 St. John +SBR 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_SNOWM.ALO new file mode 100644 index 0000000..d41cc9b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_SNOWM.ALO @@ -0,0 +1,28 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 78000 2002 0 VI +SNM 78010 2002 0 St. Croix +SNM 78020 2002 0 St. John +SNM 78030 2002 0 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_WIB.ALO new file mode 100644 index 0000000..86246d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_WIB.ALO @@ -0,0 +1,29 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +It is used for State-to-County allocation only. Not for US-to-State. + +9/13/05 epa: Update to add non-inland water from GICS data. +1/13/06 epa: Fix indicator from "WOB" to "WIB" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +WIB 78000 2002 803.8 VI 803.8 +WIB 78010 2002 326.0 St. Croix +WIB 78020 2002 101.5 St. John +WIB 78030 2002 376.3 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VI_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VI_WOB.ALO new file mode 100644 index 0000000..c0653eb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VI_WOB.ALO @@ -0,0 +1,29 @@ +This is the allocation indicator file used by the NONROAD model. +This file is used to allocate from US to state level equipment +populations. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +It is used for State-to-County allocation only. Not for US-to-State. + +9/13/05 epa: Update to add non-inland water from GICS data. + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +------------------------------------------------------------------------ +/INDICATORS/ +WOB 78000 2002 139.0 VI 139 +WOB 78010 2002 45.3 St. Croix +WOB 78020 2002 26.9 St. John +WOB 78030 2002 66.8 St. Thomas +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_AIRTR.ALO new file mode 100644 index 0000000..cca870e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_AIRTR.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 50000 2002 47.254 VT +AIR 50001 2002 0.000 Addison +AIR 50003 2002 0.004 Bennington +AIR 50005 2002 0.011 Caledonia +AIR 50007 2002 33.870 Chittenden +AIR 50009 2002 0.000 Essex +AIR 50011 2002 0.084 Franklin +AIR 50013 2002 0.000 Grand Isle +AIR 50015 2002 0.047 Lamoille +AIR 50017 2002 0.000 Orange +AIR 50019 2002 0.018 Orleans +AIR 50021 2002 13.010 Rutland +AIR 50023 2002 0.180 Washington +AIR 50025 2002 0.000 Windham +AIR 50027 2002 0.032 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_COAL.ALO new file mode 100644 index 0000000..ac9ec7c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_COAL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 50000 2002 0 VT +MIN 50001 2002 0 Addison +MIN 50003 2002 0 Bennington +MIN 50005 2002 0 Caledonia +MIN 50007 2002 0 Chittenden +MIN 50009 2002 0 Essex +MIN 50011 2002 0 Franklin +MIN 50013 2002 0 Grand Isle +MIN 50015 2002 0 Lamoille +MIN 50017 2002 0 Orange +MIN 50019 2002 0 Orleans +MIN 50021 2002 0 Rutland +MIN 50023 2002 0 Washington +MIN 50025 2002 0 Windham +MIN 50027 2002 0 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_CONST.ALO new file mode 100644 index 0000000..e2b5480 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_CONST.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 50000 2003 883892 VT +CON 50001 2003 22774 Addison +CON 50003 2003 33606 Bennington +CON 50005 2003 23364 Caledonia +CON 50007 2003 217590 Chittenden +CON 50009 2003 3317 Essex +CON 50011 2003 59187 Franklin +CON 50013 2003 7516 Grand Isle +CON 50015 2003 49961 Lamoille +CON 50017 2003 37641 Orange +CON 50019 2003 21220 Orleans +CON 50021 2003 55026 Rutland +CON 50023 2003 86045 Washington +CON 50025 2003 172292 Windham +CON 50027 2003 94353 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_FARMS.ALO new file mode 100644 index 0000000..817484f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_FARMS.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 50000 2002 454699 VT +FRM 50001 2002 107173 Addison +FRM 50003 2002 9745 Bennington +FRM 50005 2002 28751 Caledonia +FRM 50007 2002 27648 Chittenden +FRM 50009 2002 6806 Essex +FRM 50011 2002 80958 Franklin +FRM 50013 2002 9155 Grand Isle +FRM 50015 2002 13572 Lamoille +FRM 50017 2002 32060 Orange +FRM 50019 2002 53761 Orleans +FRM 50021 2002 34380 Rutland +FRM 50023 2002 15240 Washington +FRM 50025 2002 13847 Windham +FRM 50027 2002 21603 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_GOLF.ALO new file mode 100644 index 0000000..8b9202f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_GOLF.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 50000 2002 48 VT +GC 50001 2002 0 Addison +GC 50003 2002 5 Bennington +GC 50005 2002 2 Caledonia +GC 50007 2002 12 Chittenden +GC 50009 2002 0 Essex +GC 50011 2002 3 Franklin +GC 50013 2002 1 Grand Isle +GC 50015 2002 1 Lamoille +GC 50017 2002 3 Orange +GC 50019 2002 4 Orleans +GC 50021 2002 6 Rutland +GC 50023 2002 4 Washington +GC 50025 2002 3 Windham +GC 50027 2002 4 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_HOLSL.ALO new file mode 100644 index 0000000..bd87fff --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_HOLSL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 50000 2002 869 VT +COM 50001 2002 42 Addison +COM 50003 2002 38 Bennington +COM 50005 2002 28 Caledonia +COM 50007 2002 286 Chittenden +COM 50009 2002 1 Essex +COM 50011 2002 47 Franklin +COM 50013 2002 6 Grand Isle +COM 50015 2002 32 Lamoille +COM 50017 2002 29 Orange +COM 50019 2002 34 Orleans +COM 50021 2002 98 Rutland +COM 50023 2002 91 Washington +COM 50025 2002 65 Windham +COM 50027 2002 72 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_HOUSE.ALO new file mode 100644 index 0000000..98ea77a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_HOUSE.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 50000 2002 299580 VT +HOU 50001 2002 15687 Addison +HOU 50003 2002 19783 Bennington +HOU 50005 2002 14751 Caledonia +HOU 50007 2002 60369 Chittenden +HOU 50009 2002 4787 Essex +HOU 50011 2002 19660 Franklin +HOU 50013 2002 4745 Grand Isle +HOU 50015 2002 11341 Lamoille +HOU 50017 2002 13512 Orange +HOU 50019 2002 14827 Orleans +HOU 50021 2002 32485 Rutland +HOU 50023 2002 28071 Washington +HOU 50025 2002 27434 Windham +HOU 50027 2002 32128 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_LOGGN.ALO new file mode 100644 index 0000000..7725738 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_LOGGN.ALO @@ -0,0 +1,41 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 50000 2002 143277562 VT +LOG 50001 2002 3901063 Addison +LOG 50003 2002 1649301 Bennington +LOG 50005 2002 20577853 Caledonia +LOG 50007 2002 4250481 Chittenden +LOG 50009 2002 30184737 Essex +LOG 50011 2002 6259188 Franklin +LOG 50013 2002 0 Grand Isle +LOG 50015 2002 9341321 Lamoille +LOG 50017 2002 11378364 Orange +LOG 50019 2002 17643045 Orleans +LOG 50021 2002 10601171 Rutland +LOG 50023 2002 10868211 Washington +LOG 50025 2002 8865719 Windham +LOG 50027 2002 7757108 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_LSCAP.ALO new file mode 100644 index 0000000..1cef552 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_LSCAP.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 50000 2002 597 VT +LSC 50001 2002 20 Addison +LSC 50003 2002 81 Bennington +LSC 50005 2002 9 Caledonia +LSC 50007 2002 191 Chittenden +LSC 50009 2002 4 Essex +LSC 50011 2002 16 Franklin +LSC 50013 2002 1 Grand Isle +LSC 50015 2002 6 Lamoille +LSC 50017 2002 11 Orange +LSC 50019 2002 4 Orleans +LSC 50021 2002 119 Rutland +LSC 50023 2002 25 Washington +LSC 50025 2002 51 Windham +LSC 50027 2002 59 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_MNFG.ALO new file mode 100644 index 0000000..ff7f1b9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_MNFG.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 50000 2002 84387 VT +MFG 50001 2002 3697 Addison +MFG 50003 2002 6152 Bennington +MFG 50005 2002 3450 Caledonia +MFG 50007 2002 34003 Chittenden +MFG 50009 2002 1661 Essex +MFG 50011 2002 4185 Franklin +MFG 50013 2002 75 Grand Isle +MFG 50015 2002 1260 Lamoille +MFG 50017 2002 3414 Orange +MFG 50019 2002 3022 Orleans +MFG 50021 2002 8168 Rutland +MFG 50023 2002 5246 Washington +MFG 50025 2002 5341 Windham +MFG 50027 2002 4713 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_OIL.ALO new file mode 100644 index 0000000..c03a7bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_OIL.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 50000 2002 0 VT +OIL 50001 2002 0 Addison +OIL 50003 2002 0 Bennington +OIL 50005 2002 0 Caledonia +OIL 50007 2002 0 Chittenden +OIL 50009 2002 0 Essex +OIL 50011 2002 0 Franklin +OIL 50013 2002 0 Grand Isle +OIL 50015 2002 0 Lamoille +OIL 50017 2002 0 Orange +OIL 50019 2002 0 Orleans +OIL 50021 2002 0 Rutland +OIL 50023 2002 0 Washington +OIL 50025 2002 0 Windham +OIL 50027 2002 0 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_POP.ALO new file mode 100644 index 0000000..9ea1498 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_POP.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 50000 2002 616500 VT +POP 50001 2002 36480 Addison +POP 50003 2002 37121 Bennington +POP 50005 2002 29976 Caledonia +POP 50007 2002 148503 Chittenden +POP 50009 2002 6554 Essex +POP 50011 2002 46643 Franklin +POP 50013 2002 7316 Grand Isle +POP 50015 2002 24001 Lamoille +POP 50017 2002 28852 Orange +POP 50019 2002 26691 Orleans +POP 50021 2002 63329 Rutland +POP 50023 2002 58937 Washington +POP 50025 2002 44195 Windham +POP 50027 2002 57902 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_RAIL.ALO new file mode 100644 index 0000000..a316b3c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_RAIL.ALO @@ -0,0 +1,42 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. +9/26/05 epa: Adds AK, CT, ME, NH, VT using NEI Loco NOx per person. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 50000 2002 1988.655 VT +RR 50001 2002 117.674 Addison +RR 50003 2002 119.742 Bennington +RR 50005 2002 96.694 Caledonia +RR 50007 2002 479.029 Chittenden +RR 50009 2002 21.141 Essex +RR 50011 2002 150.457 Franklin +RR 50013 2002 23.599 Grand Isle +RR 50015 2002 77.420 Lamoille +RR 50017 2002 93.068 Orange +RR 50019 2002 86.098 Orleans +RR 50021 2002 204.282 Rutland +RR 50023 2002 190.114 Washington +RR 50025 2002 142.561 Windham +RR 50027 2002 186.776 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_RVPRK.ALO new file mode 100644 index 0000000..50539e6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_RVPRK.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 50000 2002 69 VT +RVP 50001 2002 7 Addison +RVP 50003 2002 0 Bennington +RVP 50005 2002 2 Caledonia +RVP 50007 2002 5 Chittenden +RVP 50009 2002 2 Essex +RVP 50011 2002 3 Franklin +RVP 50013 2002 11 Grand Isle +RVP 50015 2002 2 Lamoille +RVP 50017 2002 9 Orange +RVP 50019 2002 2 Orleans +RVP 50021 2002 7 Rutland +RVP 50023 2002 3 Washington +RVP 50025 2002 7 Windham +RVP 50027 2002 9 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_SBC.ALO new file mode 100644 index 0000000..05e19da --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_SBC.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 50000 2002 597 VT +SBC 50001 2002 14 Addison +SBC 50003 2002 81 Bennington +SBC 50005 2002 9 Caledonia +SBC 50007 2002 191 Chittenden +SBC 50009 2002 3 Essex +SBC 50011 2002 16 Franklin +SBC 50013 2002 1 Grand Isle +SBC 50015 2002 6 Lamoille +SBC 50017 2002 11 Orange +SBC 50019 2002 11 Orleans +SBC 50021 2002 119 Rutland +SBC 50023 2002 25 Washington +SBC 50025 2002 51 Windham +SBC 50027 2002 59 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_SBR.ALO new file mode 100644 index 0000000..89eabe7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_SBR.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 50000 2002 299580 VT +SBR 50001 2002 15687 Addison +SBR 50003 2002 19783 Bennington +SBR 50005 2002 14751 Caledonia +SBR 50007 2002 60369 Chittenden +SBR 50009 2002 4787 Essex +SBR 50011 2002 19660 Franklin +SBR 50013 2002 4745 Grand Isle +SBR 50015 2002 11341 Lamoille +SBR 50017 2002 13512 Orange +SBR 50019 2002 14827 Orleans +SBR 50021 2002 32485 Rutland +SBR 50023 2002 28071 Washington +SBR 50025 2002 27434 Windham +SBR 50027 2002 32128 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_SNOWM.ALO new file mode 100644 index 0000000..e53264b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_SNOWM.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 50000 2002 592 VT +SNM 50001 2002 27 Addison +SNM 50003 2002 27 Bennington +SNM 50005 2002 33 Caledonia +SNM 50007 2002 7 Chittenden +SNM 50009 2002 153 Essex +SNM 50011 2002 21 Franklin +SNM 50013 2002 137 Grand Isle +SNM 50015 2002 42 Lamoille +SNM 50017 2002 35 Orange +SNM 50019 2002 37 Orleans +SNM 50021 2002 16 Rutland +SNM 50023 2002 17 Washington +SNM 50025 2002 23 Windham +SNM 50027 2002 17 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_WIB.ALO new file mode 100644 index 0000000..fbc475b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_WIB.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 50000 1990 947 VT +WIB 50001 1990 100 Addison +WIB 50003 1990 4 Bennington +WIB 50005 1990 18 Caledonia +WIB 50007 1990 209 Chittenden +WIB 50009 1990 22 Essex +WIB 50011 1990 144 Franklin +WIB 50013 1990 290 Grand Isle +WIB 50015 1990 7 Lamoille +WIB 50017 1990 8 Orange +WIB 50019 1990 61 Orleans +WIB 50021 1990 32 Rutland +WIB 50023 1990 16 Washington +WIB 50025 1990 24 Windham +WIB 50027 1990 12 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/VT_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/VT_WOB.ALO new file mode 100644 index 0000000..dd35b13 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/VT_WOB.ALO @@ -0,0 +1,39 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 50000 1990 947 VT +WOB 50001 1990 100 Addison +WOB 50003 1990 4 Bennington +WOB 50005 1990 18 Caledonia +WOB 50007 1990 209 Chittenden +WOB 50009 1990 22 Essex +WOB 50011 1990 144 Franklin +WOB 50013 1990 290 Grand Isle +WOB 50015 1990 7 Lamoille +WOB 50017 1990 8 Orange +WOB 50019 1990 61 Orleans +WOB 50021 1990 32 Rutland +WOB 50023 1990 16 Washington +WOB 50025 1990 24 Windham +WOB 50027 1990 12 Windsor +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_AIRTR.ALO new file mode 100644 index 0000000..94d4387 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_AIRTR.ALO @@ -0,0 +1,66 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 53000 2002 1690.312 WA +AIR 53001 2002 0.000 Adams +AIR 53003 2002 0.000 Asotin +AIR 53005 2002 0.080 Benton +AIR 53007 2002 0.000 Chelan +AIR 53009 2002 22.680 Clallam +AIR 53011 2002 0.000 Clark +AIR 53013 2002 0.000 Columbia +AIR 53015 2002 0.230 Cowlitz +AIR 53017 2002 0.750 Douglas +AIR 53019 2002 0.000 Ferry +AIR 53021 2002 16.350 Franklin +AIR 53023 2002 0.000 Garfield +AIR 53025 2002 5.590 Grant +AIR 53027 2002 0.111 Grays Harbor +AIR 53029 2002 0.000 Island +AIR 53031 2002 0.000 Jefferson +AIR 53033 2002 1369.560 King +AIR 53035 2002 8.900 Kitsap +AIR 53037 2002 0.164 Kittitas +AIR 53039 2002 0.120 Klickitat +AIR 53041 2002 0.000 Lewis +AIR 53043 2002 0.000 Lincoln +AIR 53045 2002 1.085 Mason +AIR 53047 2002 0.000 Okanogan +AIR 53049 2002 0.000 Pacific +AIR 53051 2002 0.000 Pend Oreille +AIR 53053 2002 0.510 Pierce +AIR 53055 2002 0.920 San Juan +AIR 53057 2002 0.364 Skagit +AIR 53059 2002 0.000 Skamania +AIR 53061 2002 18.400 Snohomish +AIR 53063 2002 235.800 Spokane +AIR 53065 2002 0.000 Stevens +AIR 53067 2002 0.530 Thurston +AIR 53069 2002 0.000 Wahkiakum +AIR 53071 2002 0.227 Walla Walla +AIR 53073 2002 3.560 Whatcom +AIR 53075 2002 0.941 Whitman +AIR 53077 2002 3.440 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_COAL.ALO new file mode 100644 index 0000000..878cd0a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_COAL.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 53000 2002 0 WA +MIN 53001 2002 0 Adams +MIN 53003 2002 0 Asotin +MIN 53005 2002 0 Benton +MIN 53007 2002 0 Chelan +MIN 53009 2002 0 Clallam +MIN 53011 2002 0 Clark +MIN 53013 2002 0 Columbia +MIN 53015 2002 0 Cowlitz +MIN 53017 2002 0 Douglas +MIN 53019 2002 0 Ferry +MIN 53021 2002 0 Franklin +MIN 53023 2002 0 Garfield +MIN 53025 2002 0 Grant +MIN 53027 2002 0 Grays Harbor +MIN 53029 2002 0 Island +MIN 53031 2002 0 Jefferson +MIN 53033 2002 0 King +MIN 53035 2002 0 Kitsap +MIN 53037 2002 0 Kittitas +MIN 53039 2002 0 Klickitat +MIN 53041 2002 0 Lewis +MIN 53043 2002 0 Lincoln +MIN 53045 2002 0 Mason +MIN 53047 2002 0 Okanogan +MIN 53049 2002 0 Pacific +MIN 53051 2002 0 Pend Oreille +MIN 53053 2002 0 Pierce +MIN 53055 2002 0 San Juan +MIN 53057 2002 0 Skagit +MIN 53059 2002 0 Skamania +MIN 53061 2002 0 Snohomish +MIN 53063 2002 0 Spokane +MIN 53065 2002 0 Stevens +MIN 53067 2002 0 Thurston +MIN 53069 2002 0 Wahkiakum +MIN 53071 2002 0 Walla Walla +MIN 53073 2002 0 Whatcom +MIN 53075 2002 0 Whitman +MIN 53077 2002 0 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_CONST.ALO new file mode 100644 index 0000000..ea489e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_CONST.ALO @@ -0,0 +1,66 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 53000 2003 12131890 WA +CON 53001 2003 10608 Adams +CON 53003 2003 13171 Asotin +CON 53005 2003 321284 Benton +CON 53007 2003 128091 Chelan +CON 53009 2003 90529 Clallam +CON 53011 2003 945409 Clark +CON 53013 2003 2417 Columbia +CON 53015 2003 118429 Cowlitz +CON 53017 2003 55321 Douglas +CON 53019 2003 9929 Ferry +CON 53021 2003 195691 Franklin +CON 53023 2003 4438 Garfield +CON 53025 2003 79175 Grant +CON 53027 2003 73454 Grays Harbor +CON 53029 2003 136957 Island +CON 53031 2003 148836 Jefferson +CON 53033 2003 3515205 King +CON 53035 2003 500923 Kitsap +CON 53037 2003 99655 Kittitas +CON 53039 2003 28855 Klickitat +CON 53041 2003 86236 Lewis +CON 53043 2003 5485 Lincoln +CON 53045 2003 75859 Mason +CON 53047 2003 38424 Okanogan +CON 53049 2003 17165 Pacific +CON 53051 2003 14438 Pend Oreille +CON 53053 2003 2187842 Pierce +CON 53055 2003 51897 San Juan +CON 53057 2003 216747 Skagit +CON 53059 2003 15861 Skamania +CON 53061 2003 1044445 Snohomish +CON 53063 2003 529751 Spokane +CON 53065 2003 38764 Stevens +CON 53067 2003 537225 Thurston +CON 53069 2003 2847 Wahkiakum +CON 53071 2003 98818 Walla Walla +CON 53073 2003 361277 Whatcom +CON 53075 2003 114638 Whitman +CON 53077 2003 215799 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_FARMS.ALO new file mode 100644 index 0000000..f6affe5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_FARMS.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 53000 2002 4894634 WA +FRM 53001 2002 397171 Adams +FRM 53003 2002 40679 Asotin +FRM 53005 2002 268690 Benton +FRM 53007 2002 36618 Chelan +FRM 53009 2002 7763 Clallam +FRM 53011 2002 22896 Clark +FRM 53013 2002 123855 Columbia +FRM 53015 2002 8536 Cowlitz +FRM 53017 2002 213942 Douglas +FRM 53019 2002 11705 Ferry +FRM 53021 2002 288963 Franklin +FRM 53023 2002 102997 Garfield +FRM 53025 2002 599943 Grant +FRM 53027 2002 13480 Grays Harbor +FRM 53029 2002 6589 Island +FRM 53031 2002 3426 Jefferson +FRM 53033 2002 10165 King +FRM 53035 2002 4102 Kitsap +FRM 53037 2002 66711 Kittitas +FRM 53039 2002 96440 Klickitat +FRM 53041 2002 38965 Lewis +FRM 53043 2002 510356 Lincoln +FRM 53045 2002 5020 Mason +FRM 53047 2002 71149 Okanogan +FRM 53049 2002 7819 Pacific +FRM 53051 2002 15363 Pend Oreille +FRM 53053 2002 14038 Pierce +FRM 53055 2002 4611 San Juan +FRM 53057 2002 62074 Skagit +FRM 53059 2002 1171 Skamania +FRM 53061 2002 25108 Snohomish +FRM 53063 2002 315228 Spokane +FRM 53065 2002 72272 Stevens +FRM 53067 2002 17720 Thurston +FRM 53069 2002 3205 Wahkiakum +FRM 53071 2002 316313 Walla Walla +FRM 53073 2002 70065 Whatcom +FRM 53075 2002 761565 Whitman +FRM 53077 2002 257921 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_GOLF.ALO new file mode 100644 index 0000000..192d646 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_GOLF.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 53000 2002 211 WA +GC 53001 2002 1 Adams +GC 53003 2002 2 Asotin +GC 53005 2002 7 Benton +GC 53007 2002 3 Chelan +GC 53009 2002 4 Clallam +GC 53011 2002 8 Clark +GC 53013 2002 0 Columbia +GC 53015 2002 2 Cowlitz +GC 53017 2002 3 Douglas +GC 53019 2002 0 Ferry +GC 53021 2002 1 Franklin +GC 53023 2002 0 Garfield +GC 53025 2002 7 Grant +GC 53027 2002 5 Grays Harbor +GC 53029 2002 8 Island +GC 53031 2002 3 Jefferson +GC 53033 2002 38 King +GC 53035 2002 5 Kitsap +GC 53037 2002 3 Kittitas +GC 53039 2002 2 Klickitat +GC 53041 2002 4 Lewis +GC 53043 2002 3 Lincoln +GC 53045 2002 4 Mason +GC 53047 2002 3 Okanogan +GC 53049 2002 2 Pacific +GC 53051 2002 0 Pend Oreille +GC 53053 2002 23 Pierce +GC 53055 2002 4 San Juan +GC 53057 2002 7 Skagit +GC 53059 2002 1 Skamania +GC 53061 2002 18 Snohomish +GC 53063 2002 11 Spokane +GC 53065 2002 1 Stevens +GC 53067 2002 6 Thurston +GC 53069 2002 0 Wahkiakum +GC 53071 2002 2 Walla Walla +GC 53073 2002 10 Whatcom +GC 53075 2002 3 Whitman +GC 53077 2002 7 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_HOLSL.ALO new file mode 100644 index 0000000..e6d7518 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_HOLSL.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 53000 2002 9671 WA +COM 53001 2002 34 Adams +COM 53003 2002 14 Asotin +COM 53005 2002 100 Benton +COM 53007 2002 114 Chelan +COM 53009 2002 63 Clallam +COM 53011 2002 462 Clark +COM 53013 2002 15 Columbia +COM 53015 2002 89 Cowlitz +COM 53017 2002 37 Douglas +COM 53019 2002 3 Ferry +COM 53021 2002 96 Franklin +COM 53023 2002 7 Garfield +COM 53025 2002 100 Grant +COM 53027 2002 61 Grays Harbor +COM 53029 2002 49 Island +COM 53031 2002 24 Jefferson +COM 53033 2002 4464 King +COM 53035 2002 190 Kitsap +COM 53037 2002 32 Kittitas +COM 53039 2002 23 Klickitat +COM 53041 2002 84 Lewis +COM 53043 2002 43 Lincoln +COM 53045 2002 34 Mason +COM 53047 2002 40 Okanogan +COM 53049 2002 14 Pacific +COM 53051 2002 5 Pend Oreille +COM 53053 2002 781 Pierce +COM 53055 2002 18 San Juan +COM 53057 2002 144 Skagit +COM 53059 2002 3 Skamania +COM 53061 2002 778 Snohomish +COM 53063 2002 772 Spokane +COM 53065 2002 27 Stevens +COM 53067 2002 201 Thurston +COM 53069 2002 0 Wahkiakum +COM 53071 2002 72 Walla Walla +COM 53073 2002 335 Whatcom +COM 53075 2002 66 Whitman +COM 53077 2002 277 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_HOUSE.ALO new file mode 100644 index 0000000..a62ff02 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_HOUSE.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 53000 2002 2530215 WA +HOU 53001 2002 5830 Adams +HOU 53003 2002 9205 Asotin +HOU 53005 2002 58018 Benton +HOU 53007 2002 30823 Chelan +HOU 53009 2002 31442 Clallam +HOU 53011 2002 141567 Clark +HOU 53013 2002 2051 Columbia +HOU 53015 2002 39580 Cowlitz +HOU 53017 2002 13297 Douglas +HOU 53019 2002 3852 Ferry +HOU 53021 2002 16893 Franklin +HOU 53023 2002 1276 Garfield +HOU 53025 2002 29638 Grant +HOU 53027 2002 32786 Grays Harbor +HOU 53029 2002 33562 Island +HOU 53031 2002 14645 Jefferson +HOU 53033 2002 763701 King +HOU 53035 2002 94940 Kitsap +HOU 53037 2002 17066 Kittitas +HOU 53039 2002 8817 Klickitat +HOU 53041 2002 29896 Lewis +HOU 53043 2002 5325 Lincoln +HOU 53045 2002 26303 Mason +HOU 53047 2002 19468 Okanogan +HOU 53049 2002 14037 Pacific +HOU 53051 2002 6727 Pend Oreille +HOU 53053 2002 287687 Pierce +HOU 53055 2002 10339 San Juan +HOU 53057 2002 44076 Skagit +HOU 53059 2002 4642 Skamania +HOU 53061 2002 248718 Snohomish +HOU 53063 2002 179105 Spokane +HOU 53065 2002 17854 Stevens +HOU 53067 2002 89632 Thurston +HOU 53069 2002 1810 Wahkiakum +HOU 53071 2002 21464 Walla Walla +HOU 53073 2002 77000 Whatcom +HOU 53075 2002 16999 Whitman +HOU 53077 2002 80144 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_LOGGN.ALO new file mode 100644 index 0000000..d412f1b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_LOGGN.ALO @@ -0,0 +1,66 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 53000 2002 968163394 WA +LOG 53001 2002 13535486 Adams +LOG 53003 2002 9646935 Asotin +LOG 53005 2002 0 Benton +LOG 53007 2002 8959697 Chelan +LOG 53009 2002 77442287 Clallam +LOG 53011 2002 6046302 Clark +LOG 53013 2002 0 Columbia +LOG 53015 2002 159683152 Cowlitz +LOG 53017 2002 0 Douglas +LOG 53019 2002 13201040 Ferry +LOG 53021 2002 0 Franklin +LOG 53023 2002 0 Garfield +LOG 53025 2002 0 Grant +LOG 53027 2002 82634981 Grays Harbor +LOG 53029 2002 9264 Island +LOG 53031 2002 26220731 Jefferson +LOG 53033 2002 23325256 King +LOG 53035 2002 33024 Kitsap +LOG 53037 2002 19718 Kittitas +LOG 53039 2002 3255031 Klickitat +LOG 53041 2002 119307890 Lewis +LOG 53043 2002 0 Lincoln +LOG 53045 2002 17878422 Mason +LOG 53047 2002 45191200 Okanogan +LOG 53049 2002 8665597 Pacific +LOG 53051 2002 5823 Pend Oreille +LOG 53053 2002 83087938 Pierce +LOG 53055 2002 8304 San Juan +LOG 53057 2002 7409519 Skagit +LOG 53059 2002 19792837 Skamania +LOG 53061 2002 41634739 Snohomish +LOG 53063 2002 2568 Spokane +LOG 53065 2002 107597370 Stevens +LOG 53067 2002 20506668 Thurston +LOG 53069 2002 8401 Wahkiakum +LOG 53071 2002 0 Walla Walla +LOG 53073 2002 2046665 Whatcom +LOG 53075 2002 0 Whitman +LOG 53077 2002 71006551 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_LSCAP.ALO new file mode 100644 index 0000000..533d362 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_LSCAP.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 53000 2002 8495 WA +LSC 53001 2002 6 Adams +LSC 53003 2002 6 Asotin +LSC 53005 2002 155 Benton +LSC 53007 2002 33 Chelan +LSC 53009 2002 58 Clallam +LSC 53011 2002 377 Clark +LSC 53013 2002 6 Columbia +LSC 53015 2002 30 Cowlitz +LSC 53017 2002 6 Douglas +LSC 53019 2002 0 Ferry +LSC 53021 2002 30 Franklin +LSC 53023 2002 0 Garfield +LSC 53025 2002 23 Grant +LSC 53027 2002 33 Grays Harbor +LSC 53029 2002 90 Island +LSC 53031 2002 33 Jefferson +LSC 53033 2002 3577 King +LSC 53035 2002 341 Kitsap +LSC 53037 2002 33 Kittitas +LSC 53039 2002 6 Klickitat +LSC 53041 2002 33 Lewis +LSC 53043 2002 6 Lincoln +LSC 53045 2002 33 Mason +LSC 53047 2002 6 Okanogan +LSC 53049 2002 6 Pacific +LSC 53051 2002 6 Pend Oreille +LSC 53053 2002 1219 Pierce +LSC 53055 2002 56 San Juan +LSC 53057 2002 83 Skagit +LSC 53059 2002 6 Skamania +LSC 53061 2002 1187 Snohomish +LSC 53063 2002 358 Spokane +LSC 53065 2002 6 Stevens +LSC 53067 2002 249 Thurston +LSC 53069 2002 6 Wahkiakum +LSC 53071 2002 34 Walla Walla +LSC 53073 2002 211 Whatcom +LSC 53075 2002 6 Whitman +LSC 53077 2002 141 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_MNFG.ALO new file mode 100644 index 0000000..dc7e3cf --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_MNFG.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 53000 2002 511508 WA +MFG 53001 2002 1073 Adams +MFG 53003 2002 566 Asotin +MFG 53005 2002 5397 Benton +MFG 53007 2002 3942 Chelan +MFG 53009 2002 2595 Clallam +MFG 53011 2002 25595 Clark +MFG 53013 2002 218 Columbia +MFG 53015 2002 14067 Cowlitz +MFG 53017 2002 303 Douglas +MFG 53019 2002 294 Ferry +MFG 53021 2002 2523 Franklin +MFG 53023 2002 8 Garfield +MFG 53025 2002 5008 Grant +MFG 53027 2002 5860 Grays Harbor +MFG 53029 2002 976 Island +MFG 53031 2002 1582 Jefferson +MFG 53033 2002 203479 King +MFG 53035 2002 4247 Kitsap +MFG 53037 2002 866 Kittitas +MFG 53039 2002 1392 Klickitat +MFG 53041 2002 5225 Lewis +MFG 53043 2002 86 Lincoln +MFG 53045 2002 2841 Mason +MFG 53047 2002 750 Okanogan +MFG 53049 2002 1058 Pacific +MFG 53051 2002 658 Pend Oreille +MFG 53053 2002 35357 Pierce +MFG 53055 2002 301 San Juan +MFG 53057 2002 9531 Skagit +MFG 53059 2002 461 Skamania +MFG 53061 2002 100158 Snohomish +MFG 53063 2002 32113 Spokane +MFG 53065 2002 3254 Stevens +MFG 53067 2002 5779 Thurston +MFG 53069 2002 125 Wahkiakum +MFG 53071 2002 3717 Walla Walla +MFG 53073 2002 13894 Whatcom +MFG 53075 2002 1242 Whitman +MFG 53077 2002 14967 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_OIL.ALO new file mode 100644 index 0000000..7378403 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_OIL.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 53000 2002 232 WA +OIL 53001 2002 0 Adams +OIL 53003 2002 0 Asotin +OIL 53005 2002 159 Benton +OIL 53007 2002 0 Chelan +OIL 53009 2002 0 Clallam +OIL 53011 2002 0 Clark +OIL 53013 2002 0 Columbia +OIL 53015 2002 0 Cowlitz +OIL 53017 2002 0 Douglas +OIL 53019 2002 0 Ferry +OIL 53021 2002 0 Franklin +OIL 53023 2002 0 Garfield +OIL 53025 2002 0 Grant +OIL 53027 2002 0 Grays Harbor +OIL 53029 2002 0 Island +OIL 53031 2002 9 Jefferson +OIL 53033 2002 11 King +OIL 53035 2002 9 Kitsap +OIL 53037 2002 0 Kittitas +OIL 53039 2002 0 Klickitat +OIL 53041 2002 0 Lewis +OIL 53043 2002 0 Lincoln +OIL 53045 2002 0 Mason +OIL 53047 2002 0 Okanogan +OIL 53049 2002 0 Pacific +OIL 53051 2002 2 Pend Oreille +OIL 53053 2002 0 Pierce +OIL 53055 2002 0 San Juan +OIL 53057 2002 11 Skagit +OIL 53059 2002 0 Skamania +OIL 53061 2002 11 Snohomish +OIL 53063 2002 9 Spokane +OIL 53065 2002 0 Stevens +OIL 53067 2002 0 Thurston +OIL 53069 2002 0 Wahkiakum +OIL 53071 2002 0 Walla Walla +OIL 53073 2002 9 Whatcom +OIL 53075 2002 2 Whitman +OIL 53077 2002 0 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_POP.ALO new file mode 100644 index 0000000..70415bb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_POP.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 53000 2002 6067146 WA +POP 53001 2002 16460 Adams +POP 53003 2002 20565 Asotin +POP 53005 2002 150424 Benton +POP 53007 2002 67191 Chelan +POP 53009 2002 66091 Clallam +POP 53011 2002 370069 Clark +POP 53013 2002 4114 Columbia +POP 53015 2002 94656 Cowlitz +POP 53017 2002 33256 Douglas +POP 53019 2002 7293 Ferry +POP 53021 2002 52972 Franklin +POP 53023 2002 2308 Garfield +POP 53025 2002 77571 Grant +POP 53027 2002 68682 Grays Harbor +POP 53029 2002 75600 Island +POP 53031 2002 27269 Jefferson +POP 53033 2002 1758465 King +POP 53035 2002 238440 Kitsap +POP 53037 2002 34564 Kittitas +POP 53039 2002 19406 Klickitat +POP 53041 2002 69660 Lewis +POP 53043 2002 10124 Lincoln +POP 53045 2002 51199 Mason +POP 53047 2002 39266 Okanogan +POP 53049 2002 20739 Pacific +POP 53051 2002 12118 Pend Oreille +POP 53053 2002 731344 Pierce +POP 53055 2002 14619 San Juan +POP 53057 2002 106711 Skagit +POP 53059 2002 10069 Skamania +POP 53061 2002 632076 Snohomish +POP 53063 2002 427219 Spokane +POP 53065 2002 40616 Stevens +POP 53067 2002 217107 Thurston +POP 53069 2002 3812 Wahkiakum +POP 53071 2002 56015 Walla Walla +POP 53073 2002 174090 Whatcom +POP 53075 2002 40420 Whitman +POP 53077 2002 224546 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_RAIL.ALO new file mode 100644 index 0000000..9bcbacb --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_RAIL.ALO @@ -0,0 +1,66 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 53000 2002 15468.690 WA +RR 53001 2002 936.690 Adams +RR 53003 2002 0.000 Asotin +RR 53005 2002 1174.240 Benton +RR 53007 2002 531.770 Chelan +RR 53009 2002 0.000 Clallam +RR 53011 2002 1311.000 Clark +RR 53013 2002 5.930 Columbia +RR 53015 2002 554.230 Cowlitz +RR 53017 2002 153.730 Douglas +RR 53019 2002 19.600 Ferry +RR 53021 2002 796.830 Franklin +RR 53023 2002 0.000 Garfield +RR 53025 2002 447.990 Grant +RR 53027 2002 0.930 Grays Harbor +RR 53029 2002 0.000 Island +RR 53031 2002 0.000 Jefferson +RR 53033 2002 1016.260 King +RR 53035 2002 0.000 Kitsap +RR 53037 2002 104.950 Kittitas +RR 53039 2002 1931.250 Klickitat +RR 53041 2002 386.960 Lewis +RR 53043 2002 944.530 Lincoln +RR 53045 2002 0.000 Mason +RR 53047 2002 0.000 Okanogan +RR 53049 2002 0.000 Pacific +RR 53051 2002 2.080 Pend Oreille +RR 53053 2002 638.330 Pierce +RR 53055 2002 0.000 San Juan +RR 53057 2002 191.900 Skagit +RR 53059 2002 563.780 Skamania +RR 53061 2002 1037.540 Snohomish +RR 53063 2002 1630.130 Spokane +RR 53065 2002 100.950 Stevens +RR 53067 2002 436.980 Thurston +RR 53069 2002 0.000 Wahkiakum +RR 53071 2002 147.570 Walla Walla +RR 53073 2002 123.770 Whatcom +RR 53075 2002 118.910 Whitman +RR 53077 2002 159.860 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_RVPRK.ALO new file mode 100644 index 0000000..ca9c5cd --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_RVPRK.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 53000 2002 252 WA +RVP 53001 2002 1 Adams +RVP 53003 2002 2 Asotin +RVP 53005 2002 4 Benton +RVP 53007 2002 14 Chelan +RVP 53009 2002 13 Clallam +RVP 53011 2002 12 Clark +RVP 53013 2002 0 Columbia +RVP 53015 2002 9 Cowlitz +RVP 53017 2002 3 Douglas +RVP 53019 2002 0 Ferry +RVP 53021 2002 1 Franklin +RVP 53023 2002 2 Garfield +RVP 53025 2002 11 Grant +RVP 53027 2002 13 Grays Harbor +RVP 53029 2002 2 Island +RVP 53031 2002 2 Jefferson +RVP 53033 2002 18 King +RVP 53035 2002 4 Kitsap +RVP 53037 2002 9 Kittitas +RVP 53039 2002 5 Klickitat +RVP 53041 2002 7 Lewis +RVP 53043 2002 5 Lincoln +RVP 53045 2002 8 Mason +RVP 53047 2002 7 Okanogan +RVP 53049 2002 10 Pacific +RVP 53051 2002 2 Pend Oreille +RVP 53053 2002 10 Pierce +RVP 53055 2002 4 San Juan +RVP 53057 2002 17 Skagit +RVP 53059 2002 1 Skamania +RVP 53061 2002 12 Snohomish +RVP 53063 2002 9 Spokane +RVP 53065 2002 7 Stevens +RVP 53067 2002 6 Thurston +RVP 53069 2002 0 Wahkiakum +RVP 53071 2002 3 Walla Walla +RVP 53073 2002 10 Whatcom +RVP 53075 2002 0 Whitman +RVP 53077 2002 9 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_SBC.ALO new file mode 100644 index 0000000..e001887 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_SBC.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 53000 2002 8246 WA +SBC 53001 2002 8 Adams +SBC 53003 2002 10 Asotin +SBC 53005 2002 155 Benton +SBC 53007 2002 32 Chelan +SBC 53009 2002 58 Clallam +SBC 53011 2002 377 Clark +SBC 53013 2002 2 Columbia +SBC 53015 2002 30 Cowlitz +SBC 53017 2002 16 Douglas +SBC 53019 2002 0 Ferry +SBC 53021 2002 30 Franklin +SBC 53023 2002 0 Garfield +SBC 53025 2002 23 Grant +SBC 53027 2002 33 Grays Harbor +SBC 53029 2002 90 Island +SBC 53031 2002 13 Jefferson +SBC 53033 2002 3577 King +SBC 53035 2002 341 Kitsap +SBC 53037 2002 17 Kittitas +SBC 53039 2002 9 Klickitat +SBC 53041 2002 32 Lewis +SBC 53043 2002 5 Lincoln +SBC 53045 2002 25 Mason +SBC 53047 2002 19 Okanogan +SBC 53049 2002 10 Pacific +SBC 53051 2002 6 Pend Oreille +SBC 53053 2002 1219 Pierce +SBC 53055 2002 56 San Juan +SBC 53057 2002 83 Skagit +SBC 53059 2002 5 Skamania +SBC 53061 2002 1187 Snohomish +SBC 53063 2002 358 Spokane +SBC 53065 2002 20 Stevens +SBC 53067 2002 0 Thurston +SBC 53069 2002 2 Wahkiakum +SBC 53071 2002 27 Walla Walla +SBC 53073 2002 211 Whatcom +SBC 53075 2002 19 Whitman +SBC 53077 2002 141 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_SBR.ALO new file mode 100644 index 0000000..e3f22ff --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_SBR.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 53000 2002 2440583 WA +SBR 53001 2002 5830 Adams +SBR 53003 2002 9205 Asotin +SBR 53005 2002 58018 Benton +SBR 53007 2002 30823 Chelan +SBR 53009 2002 31442 Clallam +SBR 53011 2002 141567 Clark +SBR 53013 2002 2051 Columbia +SBR 53015 2002 39580 Cowlitz +SBR 53017 2002 13297 Douglas +SBR 53019 2002 3852 Ferry +SBR 53021 2002 16893 Franklin +SBR 53023 2002 1276 Garfield +SBR 53025 2002 29638 Grant +SBR 53027 2002 32786 Grays Harbor +SBR 53029 2002 33562 Island +SBR 53031 2002 14645 Jefferson +SBR 53033 2002 763701 King +SBR 53035 2002 94940 Kitsap +SBR 53037 2002 17066 Kittitas +SBR 53039 2002 8817 Klickitat +SBR 53041 2002 29896 Lewis +SBR 53043 2002 5325 Lincoln +SBR 53045 2002 26303 Mason +SBR 53047 2002 19468 Okanogan +SBR 53049 2002 14037 Pacific +SBR 53051 2002 6727 Pend Oreille +SBR 53053 2002 287687 Pierce +SBR 53055 2002 10339 San Juan +SBR 53057 2002 44076 Skagit +SBR 53059 2002 4642 Skamania +SBR 53061 2002 248718 Snohomish +SBR 53063 2002 179105 Spokane +SBR 53065 2002 17854 Stevens +SBR 53067 2002 0 Thurston +SBR 53069 2002 1810 Wahkiakum +SBR 53071 2002 21464 Walla Walla +SBR 53073 2002 77000 Whatcom +SBR 53075 2002 16999 Whitman +SBR 53077 2002 80144 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_SNOWM.ALO new file mode 100644 index 0000000..0a63026 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_SNOWM.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 53000 2002 797 WA +SNM 53001 2002 0 Adams +SNM 53003 2002 0 Asotin +SNM 53005 2002 0 Benton +SNM 53007 2002 15 Chelan +SNM 53009 2002 0 Clallam +SNM 53011 2002 0 Clark +SNM 53013 2002 243 Columbia +SNM 53015 2002 11 Cowlitz +SNM 53017 2002 0 Douglas +SNM 53019 2002 137 Ferry +SNM 53021 2002 0 Franklin +SNM 53023 2002 0 Garfield +SNM 53025 2002 0 Grant +SNM 53027 2002 15 Grays Harbor +SNM 53029 2002 0 Island +SNM 53031 2002 37 Jefferson +SNM 53033 2002 0 King +SNM 53035 2002 0 Kitsap +SNM 53037 2002 29 Kittitas +SNM 53039 2002 52 Klickitat +SNM 53041 2002 14 Lewis +SNM 53043 2002 0 Lincoln +SNM 53045 2002 0 Mason +SNM 53047 2002 0 Okanogan +SNM 53049 2002 0 Pacific +SNM 53051 2002 83 Pend Oreille +SNM 53053 2002 0 Pierce +SNM 53055 2002 0 San Juan +SNM 53057 2002 9 Skagit +SNM 53059 2002 99 Skamania +SNM 53061 2002 0 Snohomish +SNM 53063 2002 0 Spokane +SNM 53065 2002 25 Stevens +SNM 53067 2002 0 Thurston +SNM 53069 2002 0 Wahkiakum +SNM 53071 2002 18 Walla Walla +SNM 53073 2002 6 Whatcom +SNM 53075 2002 0 Whitman +SNM 53077 2002 4 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_WIB.ALO new file mode 100644 index 0000000..aad94ca --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_WIB.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 53000 1990 9118 WA +WIB 53001 1990 12 Adams +WIB 53003 1990 12 Asotin +WIB 53005 1990 148 Benton +WIB 53007 1990 187 Chelan +WIB 53009 1990 1298 Clallam +WIB 53011 1990 73 Clark +WIB 53013 1990 12 Columbia +WIB 53015 1990 72 Cowlitz +WIB 53017 1990 73 Douglas +WIB 53019 1990 139 Ferry +WIB 53021 1990 60 Franklin +WIB 53023 1990 20 Garfield +WIB 53025 1990 298 Grant +WIB 53027 1990 437 Grays Harbor +WIB 53029 1990 456 Island +WIB 53031 1990 655 Jefferson +WIB 53033 1990 352 King +WIB 53035 1990 406 Kitsap +WIB 53037 1990 93 Kittitas +WIB 53039 1990 82 Klickitat +WIB 53041 1990 74 Lewis +WIB 53043 1990 74 Lincoln +WIB 53045 1990 371 Mason +WIB 53047 1990 122 Okanogan +WIB 53049 1990 416 Pacific +WIB 53051 1990 64 Pend Oreille +WIB 53053 1990 459 Pierce +WIB 53055 1990 859 San Juan +WIB 53057 1990 316 Skagit +WIB 53059 1990 71 Skamania +WIB 53061 1990 175 Snohomish +WIB 53063 1990 44 Spokane +WIB 53065 1990 161 Stevens +WIB 53067 1990 187 Thurston +WIB 53069 1990 60 Wahkiakum +WIB 53071 1990 74 Walla Walla +WIB 53073 1990 618 Whatcom +WIB 53075 1990 47 Whitman +WIB 53077 1990 41 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WA_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WA_WOB.ALO new file mode 100644 index 0000000..5a0ee8a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WA_WOB.ALO @@ -0,0 +1,64 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 53000 1990 4640 WA +WOB 53001 1990 12 Adams +WOB 53003 1990 12 Asotin +WOB 53005 1990 148 Benton +WOB 53007 1990 187 Chelan +WOB 53009 1990 243 Clallam +WOB 53011 1990 73 Clark +WOB 53013 1990 12 Columbia +WOB 53015 1990 72 Cowlitz +WOB 53017 1990 73 Douglas +WOB 53019 1990 139 Ferry +WOB 53021 1990 60 Franklin +WOB 53023 1990 20 Garfield +WOB 53025 1990 298 Grant +WOB 53027 1990 99 Grays Harbor +WOB 53029 1990 87 Island +WOB 53031 1990 224 Jefferson +WOB 53033 1990 215 King +WOB 53035 1990 192 Kitsap +WOB 53037 1990 93 Kittitas +WOB 53039 1990 82 Klickitat +WOB 53041 1990 74 Lewis +WOB 53043 1990 74 Lincoln +WOB 53045 1990 250 Mason +WOB 53047 1990 122 Okanogan +WOB 53049 1990 88 Pacific +WOB 53051 1990 64 Pend Oreille +WOB 53053 1990 318 Pierce +WOB 53055 1990 298 San Juan +WOB 53057 1990 131 Skagit +WOB 53059 1990 71 Skamania +WOB 53061 1990 74 Snohomish +WOB 53063 1990 44 Spokane +WOB 53065 1990 161 Stevens +WOB 53067 1990 129 Thurston +WOB 53069 1990 36 Wahkiakum +WOB 53071 1990 74 Walla Walla +WOB 53073 1990 203 Whatcom +WOB 53075 1990 47 Whitman +WOB 53077 1990 41 Yakima +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_AIRTR.ALO new file mode 100644 index 0000000..169d3c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_AIRTR.ALO @@ -0,0 +1,99 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 55000 2002 638.164 WI +AIR 55001 2002 0.000 Adams +AIR 55003 2002 0.072 Ashland +AIR 55005 2002 0.000 Barron +AIR 55007 2002 0.120 Bayfield +AIR 55009 2002 40.732 Brown +AIR 55011 2002 0.000 Buffalo +AIR 55013 2002 0.057 Burnett +AIR 55015 2002 0.046 Calumet +AIR 55017 2002 0.970 Chippewa +AIR 55019 2002 0.051 Clark +AIR 55021 2002 0.082 Columbia +AIR 55023 2002 0.052 Crawford +AIR 55025 2002 79.000 Dane +AIR 55027 2002 0.200 Dodge +AIR 55029 2002 12.060 Door +AIR 55031 2002 0.102 Douglas +AIR 55033 2002 0.000 Dunn +AIR 55035 2002 0.000 Eau Claire +AIR 55037 2002 0.000 Florence +AIR 55039 2002 0.327 Fond du Lac +AIR 55041 2002 0.000 Forest +AIR 55043 2002 0.062 Grant +AIR 55045 2002 0.000 Green +AIR 55047 2002 0.000 Green Lake +AIR 55049 2002 0.000 Iowa +AIR 55051 2002 0.000 Iron +AIR 55053 2002 0.058 Jackson +AIR 55055 2002 0.410 Jefferson +AIR 55057 2002 0.000 Juneau +AIR 55059 2002 0.663 Kenosha +AIR 55061 2002 0.000 Kewaunee +AIR 55063 2002 9.740 La Crosse +AIR 55065 2002 0.000 Lafayette +AIR 55067 2002 0.142 Langlade +AIR 55069 2002 0.172 Lincoln +AIR 55071 2002 0.017 Manitowoc +AIR 55073 2002 4.600 Marathon +AIR 55075 2002 0.000 Marinette +AIR 55077 2002 0.000 Marquette +AIR 55078 2002 0.000 Menominee +AIR 55079 2002 429.760 Milwaukee +AIR 55081 2002 1.045 Monroe +AIR 55083 2002 0.081 Oconto +AIR 55085 2002 42.451 Oneida +AIR 55087 2002 0.000 Outagamie +AIR 55089 2002 0.000 Ozaukee +AIR 55091 2002 0.000 Pepin +AIR 55093 2002 0.000 Pierce +AIR 55095 2002 0.170 Polk +AIR 55097 2002 0.217 Portage +AIR 55099 2002 0.164 Price +AIR 55101 2002 0.240 Racine +AIR 55103 2002 0.038 Richland +AIR 55105 2002 3.836 Rock +AIR 55107 2002 0.041 Rusk +AIR 55109 2002 0.200 St. Croix +AIR 55111 2002 0.079 Sauk +AIR 55113 2002 0.108 Sawyer +AIR 55115 2002 0.000 Shawano +AIR 55117 2002 0.580 Sheboygan +AIR 55119 2002 0.061 Taylor +AIR 55121 2002 0.000 Trempealeau +AIR 55123 2002 0.000 Vernon +AIR 55125 2002 6.164 Vilas +AIR 55127 2002 0.250 Walworth +AIR 55129 2002 0.112 Washburn +AIR 55131 2002 1.010 Washington +AIR 55133 2002 0.482 Waukesha +AIR 55135 2002 0.391 Waupaca +AIR 55137 2002 0.000 Waushara +AIR 55139 2002 0.650 Winnebago +AIR 55141 2002 0.298 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_COAL.ALO new file mode 100644 index 0000000..c7d1fa9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_COAL.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 55000 2002 0 WI +MIN 55001 2002 0 Adams +MIN 55003 2002 0 Ashland +MIN 55005 2002 0 Barron +MIN 55007 2002 0 Bayfield +MIN 55009 2002 0 Brown +MIN 55011 2002 0 Buffalo +MIN 55013 2002 0 Burnett +MIN 55015 2002 0 Calumet +MIN 55017 2002 0 Chippewa +MIN 55019 2002 0 Clark +MIN 55021 2002 0 Columbia +MIN 55023 2002 0 Crawford +MIN 55025 2002 0 Dane +MIN 55027 2002 0 Dodge +MIN 55029 2002 0 Door +MIN 55031 2002 0 Douglas +MIN 55033 2002 0 Dunn +MIN 55035 2002 0 Eau Claire +MIN 55037 2002 0 Florence +MIN 55039 2002 0 Fond du Lac +MIN 55041 2002 0 Forest +MIN 55043 2002 0 Grant +MIN 55045 2002 0 Green +MIN 55047 2002 0 Green Lake +MIN 55049 2002 0 Iowa +MIN 55051 2002 0 Iron +MIN 55053 2002 0 Jackson +MIN 55055 2002 0 Jefferson +MIN 55057 2002 0 Juneau +MIN 55059 2002 0 Kenosha +MIN 55061 2002 0 Kewaunee +MIN 55063 2002 0 La Crosse +MIN 55065 2002 0 Lafayette +MIN 55067 2002 0 Langlade +MIN 55069 2002 0 Lincoln +MIN 55071 2002 0 Manitowoc +MIN 55073 2002 0 Marathon +MIN 55075 2002 0 Marinette +MIN 55077 2002 0 Marquette +MIN 55078 2002 0 Menominee +MIN 55079 2002 0 Milwaukee +MIN 55081 2002 0 Monroe +MIN 55083 2002 0 Oconto +MIN 55085 2002 0 Oneida +MIN 55087 2002 0 Outagamie +MIN 55089 2002 0 Ozaukee +MIN 55091 2002 0 Pepin +MIN 55093 2002 0 Pierce +MIN 55095 2002 0 Polk +MIN 55097 2002 0 Portage +MIN 55099 2002 0 Price +MIN 55101 2002 0 Racine +MIN 55103 2002 0 Richland +MIN 55105 2002 0 Rock +MIN 55107 2002 0 Rusk +MIN 55109 2002 0 St. Croix +MIN 55111 2002 0 Sauk +MIN 55113 2002 0 Sawyer +MIN 55115 2002 0 Shawano +MIN 55117 2002 0 Sheboygan +MIN 55119 2002 0 Taylor +MIN 55121 2002 0 Trempealeau +MIN 55123 2002 0 Vernon +MIN 55125 2002 0 Vilas +MIN 55127 2002 0 Walworth +MIN 55129 2002 0 Washburn +MIN 55131 2002 0 Washington +MIN 55133 2002 0 Waukesha +MIN 55135 2002 0 Waupaca +MIN 55137 2002 0 Waushara +MIN 55139 2002 0 Winnebago +MIN 55141 2002 0 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_CONST.ALO new file mode 100644 index 0000000..b4aa2f6 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_CONST.ALO @@ -0,0 +1,99 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 55000 2003 10360606 WI +CON 55001 2003 43105 Adams +CON 55003 2003 14263 Ashland +CON 55005 2003 62230 Barron +CON 55007 2003 26277 Bayfield +CON 55009 2003 506385 Brown +CON 55011 2003 20580 Buffalo +CON 55013 2003 20908 Burnett +CON 55015 2003 80347 Calumet +CON 55017 2003 103230 Chippewa +CON 55019 2003 15172 Clark +CON 55021 2003 98112 Columbia +CON 55023 2003 21235 Crawford +CON 55025 2003 1719232 Dane +CON 55027 2003 82597 Dodge +CON 55029 2003 55098 Door +CON 55031 2003 46774 Douglas +CON 55033 2003 69709 Dunn +CON 55035 2003 197249 Eau Claire +CON 55037 2003 1666 Florence +CON 55039 2003 173706 Fond du Lac +CON 55041 2003 24248 Forest +CON 55043 2003 72124 Grant +CON 55045 2003 51979 Green +CON 55047 2003 22339 Green Lake +CON 55049 2003 23673 Iowa +CON 55051 2003 8956 Iron +CON 55053 2003 18223 Jackson +CON 55055 2003 106836 Jefferson +CON 55057 2003 32837 Juneau +CON 55059 2003 250659 Kenosha +CON 55061 2003 18778 Kewaunee +CON 55063 2003 169242 La Crosse +CON 55065 2003 24634 Lafayette +CON 55067 2003 21337 Langlade +CON 55069 2003 28716 Lincoln +CON 55071 2003 63745 Manitowoc +CON 55073 2003 326026 Marathon +CON 55075 2003 33537 Marinette +CON 55077 2003 17534 Marquette +CON 55078 2003 6352 Menominee +CON 55079 2003 897164 Milwaukee +CON 55081 2003 56479 Monroe +CON 55083 2003 64602 Oconto +CON 55085 2003 95410 Oneida +CON 55087 2003 333786 Outagamie +CON 55089 2003 824570 Ozaukee +CON 55091 2003 4971 Pepin +CON 55093 2003 77515 Pierce +CON 55095 2003 56272 Polk +CON 55097 2003 116553 Portage +CON 55099 2003 17146 Price +CON 55101 2003 293387 Racine +CON 55103 2003 21088 Richland +CON 55105 2003 194673 Rock +CON 55107 2003 17289 Rusk +CON 55109 2003 265867 St. Croix +CON 55111 2003 102704 Sauk +CON 55113 2003 45998 Sawyer +CON 55115 2003 40450 Shawano +CON 55117 2003 207404 Sheboygan +CON 55119 2003 14842 Taylor +CON 55121 2003 29499 Trempealeau +CON 55123 2003 17599 Vernon +CON 55125 2003 57659 Vilas +CON 55127 2003 197180 Walworth +CON 55129 2003 47289 Washburn +CON 55131 2003 261212 Washington +CON 55133 2003 874100 Waukesha +CON 55135 2003 97345 Waupaca +CON 55137 2003 33638 Waushara +CON 55139 2003 240175 Winnebago +CON 55141 2003 77087 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_FARMS.ALO new file mode 100644 index 0000000..0e85425 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_FARMS.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 55000 2002 8928083 WI +FRM 55001 2002 78655 Adams +FRM 55003 2002 22536 Ashland +FRM 55005 2002 196231 Barron +FRM 55007 2002 44490 Bayfield +FRM 55009 2002 152034 Brown +FRM 55011 2002 132891 Buffalo +FRM 55013 2002 40095 Burnett +FRM 55015 2002 120213 Calumet +FRM 55017 2002 193797 Chippewa +FRM 55019 2002 263652 Clark +FRM 55021 2002 236490 Columbia +FRM 55023 2002 88583 Crawford +FRM 55025 2002 360910 Dane +FRM 55027 2002 310475 Dodge +FRM 55029 2002 82284 Door +FRM 55031 2002 25626 Douglas +FRM 55033 2002 204923 Dunn +FRM 55035 2002 97693 Eau Claire +FRM 55037 2002 6816 Florence +FRM 55039 2002 257908 Fond du Lac +FRM 55041 2002 9156 Forest +FRM 55043 2002 297206 Grant +FRM 55045 2002 211087 Green +FRM 55047 2002 97692 Green Lake +FRM 55049 2002 152826 Iowa +FRM 55051 2002 2144 Iron +FRM 55053 2002 107491 Jackson +FRM 55055 2002 172669 Jefferson +FRM 55057 2002 91115 Juneau +FRM 55059 2002 70943 Kenosha +FRM 55061 2002 126151 Kewaunee +FRM 55063 2002 77831 La Crosse +FRM 55065 2002 226310 Lafayette +FRM 55067 2002 73915 Langlade +FRM 55069 2002 39291 Lincoln +FRM 55071 2002 185068 Manitowoc +FRM 55073 2002 286103 Marathon +FRM 55075 2002 73645 Marinette +FRM 55077 2002 73071 Marquette +FRM 55078 2002 2144 Menominee +FRM 55079 2002 3489 Milwaukee +FRM 55081 2002 147513 Monroe +FRM 55083 2002 123549 Oconto +FRM 55085 2002 9110 Oneida +FRM 55087 2002 188303 Outagamie +FRM 55089 2002 51444 Ozaukee +FRM 55091 2002 59689 Pepin +FRM 55093 2002 145023 Pierce +FRM 55095 2002 144177 Polk +FRM 55097 2002 184123 Portage +FRM 55099 2002 37470 Price +FRM 55101 2002 100730 Racine +FRM 55103 2002 94613 Richland +FRM 55105 2002 276933 Rock +FRM 55107 2002 67779 Rusk +FRM 55109 2002 176568 St. Croix +FRM 55111 2002 185927 Sauk +FRM 55113 2002 21716 Sawyer +FRM 55115 2002 164162 Shawano +FRM 55117 2002 151070 Sheboygan +FRM 55119 2002 105330 Taylor +FRM 55121 2002 162850 Trempealeau +FRM 55123 2002 165768 Vernon +FRM 55125 2002 2461 Vilas +FRM 55127 2002 173940 Walworth +FRM 55129 2002 35484 Washburn +FRM 55131 2002 96704 Washington +FRM 55133 2002 70543 Waukesha +FRM 55135 2002 145444 Waupaca +FRM 55137 2002 116566 Waushara +FRM 55139 2002 115451 Winnebago +FRM 55141 2002 111994 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_GOLF.ALO new file mode 100644 index 0000000..4304b3a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_GOLF.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 55000 2002 393 WI +GC 55001 2002 2 Adams +GC 55003 2002 2 Ashland +GC 55005 2002 6 Barron +GC 55007 2002 2 Bayfield +GC 55009 2002 10 Brown +GC 55011 2002 2 Buffalo +GC 55013 2002 5 Burnett +GC 55015 2002 5 Calumet +GC 55017 2002 7 Chippewa +GC 55019 2002 2 Clark +GC 55021 2002 6 Columbia +GC 55023 2002 1 Crawford +GC 55025 2002 19 Dane +GC 55027 2002 9 Dodge +GC 55029 2002 8 Door +GC 55031 2002 6 Douglas +GC 55033 2002 4 Dunn +GC 55035 2002 7 Eau Claire +GC 55037 2002 0 Florence +GC 55039 2002 6 Fond du Lac +GC 55041 2002 2 Forest +GC 55043 2002 4 Grant +GC 55045 2002 4 Green +GC 55047 2002 3 Green Lake +GC 55049 2002 2 Iowa +GC 55051 2002 1 Iron +GC 55053 2002 2 Jackson +GC 55055 2002 4 Jefferson +GC 55057 2002 3 Juneau +GC 55059 2002 5 Kenosha +GC 55061 2002 2 Kewaunee +GC 55063 2002 7 La Crosse +GC 55065 2002 3 Lafayette +GC 55067 2002 2 Langlade +GC 55069 2002 3 Lincoln +GC 55071 2002 4 Manitowoc +GC 55073 2002 8 Marathon +GC 55075 2002 10 Marinette +GC 55077 2002 2 Marquette +GC 55078 2002 0 Menominee +GC 55079 2002 9 Milwaukee +GC 55081 2002 1 Monroe +GC 55083 2002 6 Oconto +GC 55085 2002 6 Oneida +GC 55087 2002 12 Outagamie +GC 55089 2002 7 Ozaukee +GC 55091 2002 1 Pepin +GC 55093 2002 5 Pierce +GC 55095 2002 6 Polk +GC 55097 2002 4 Portage +GC 55099 2002 2 Price +GC 55101 2002 10 Racine +GC 55103 2002 1 Richland +GC 55105 2002 14 Rock +GC 55107 2002 1 Rusk +GC 55109 2002 12 St. Croix +GC 55111 2002 3 Sauk +GC 55113 2002 7 Sawyer +GC 55115 2002 4 Shawano +GC 55117 2002 11 Sheboygan +GC 55119 2002 1 Taylor +GC 55121 2002 6 Trempealeau +GC 55123 2002 1 Vernon +GC 55125 2002 6 Vilas +GC 55127 2002 8 Walworth +GC 55129 2002 2 Washburn +GC 55131 2002 11 Washington +GC 55133 2002 27 Waukesha +GC 55135 2002 8 Waupaca +GC 55137 2002 2 Waushara +GC 55139 2002 14 Winnebago +GC 55141 2002 5 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_HOLSL.ALO new file mode 100644 index 0000000..724e078 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_HOLSL.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 55000 2002 7800 WI +COM 55001 2002 9 Adams +COM 55003 2002 17 Ashland +COM 55005 2002 57 Barron +COM 55007 2002 10 Bayfield +COM 55009 2002 458 Brown +COM 55011 2002 19 Buffalo +COM 55013 2002 10 Burnett +COM 55015 2002 36 Calumet +COM 55017 2002 66 Chippewa +COM 55019 2002 51 Clark +COM 55021 2002 59 Columbia +COM 55023 2002 16 Crawford +COM 55025 2002 677 Dane +COM 55027 2002 82 Dodge +COM 55029 2002 31 Door +COM 55031 2002 58 Douglas +COM 55033 2002 45 Dunn +COM 55035 2002 126 Eau Claire +COM 55037 2002 5 Florence +COM 55039 2002 125 Fond du Lac +COM 55041 2002 9 Forest +COM 55043 2002 69 Grant +COM 55045 2002 59 Green +COM 55047 2002 16 Green Lake +COM 55049 2002 39 Iowa +COM 55051 2002 6 Iron +COM 55053 2002 8 Jackson +COM 55055 2002 103 Jefferson +COM 55057 2002 23 Juneau +COM 55059 2002 137 Kenosha +COM 55061 2002 18 Kewaunee +COM 55063 2002 149 La Crosse +COM 55065 2002 23 Lafayette +COM 55067 2002 32 Langlade +COM 55069 2002 32 Lincoln +COM 55071 2002 79 Manitowoc +COM 55073 2002 207 Marathon +COM 55075 2002 31 Marinette +COM 55077 2002 14 Marquette +COM 55078 2002 1 Menominee +COM 55079 2002 1205 Milwaukee +COM 55081 2002 37 Monroe +COM 55083 2002 20 Oconto +COM 55085 2002 42 Oneida +COM 55087 2002 315 Outagamie +COM 55089 2002 205 Ozaukee +COM 55091 2002 10 Pepin +COM 55093 2002 25 Pierce +COM 55095 2002 35 Polk +COM 55097 2002 82 Portage +COM 55099 2002 19 Price +COM 55101 2002 224 Racine +COM 55103 2002 16 Richland +COM 55105 2002 165 Rock +COM 55107 2002 6 Rusk +COM 55109 2002 107 St. Croix +COM 55111 2002 69 Sauk +COM 55113 2002 13 Sawyer +COM 55115 2002 51 Shawano +COM 55117 2002 122 Sheboygan +COM 55119 2002 21 Taylor +COM 55121 2002 42 Trempealeau +COM 55123 2002 31 Vernon +COM 55125 2002 20 Vilas +COM 55127 2002 115 Walworth +COM 55129 2002 20 Washburn +COM 55131 2002 195 Washington +COM 55133 2002 1231 Waukesha +COM 55135 2002 58 Waupaca +COM 55137 2002 21 Waushara +COM 55139 2002 182 Winnebago +COM 55141 2002 84 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_HOUSE.ALO new file mode 100644 index 0000000..684d842 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_HOUSE.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 55000 2002 2386857 WI +HOU 55001 2002 14663 Adams +HOU 55003 2002 8952 Ashland +HOU 55005 2002 21569 Barron +HOU 55007 2002 11828 Bayfield +HOU 55009 2002 93916 Brown +HOU 55011 2002 6243 Buffalo +HOU 55013 2002 12971 Burnett +HOU 55015 2002 16782 Calumet +HOU 55017 2002 23948 Chippewa +HOU 55019 2002 13704 Clark +HOU 55021 2002 23392 Columbia +HOU 55023 2002 8642 Crawford +HOU 55025 2002 189255 Dane +HOU 55027 2002 34409 Dodge +HOU 55029 2002 20420 Door +HOU 55031 2002 20701 Douglas +HOU 55033 2002 15927 Dunn +HOU 55035 2002 38890 Eau Claire +HOU 55037 2002 4278 Florence +HOU 55039 2002 40106 Fond du Lac +HOU 55041 2002 8458 Forest +HOU 55043 2002 20163 Grant +HOU 55045 2002 14257 Green +HOU 55047 2002 9932 Green Lake +HOU 55049 2002 9985 Iowa +HOU 55051 2002 5782 Iron +HOU 55053 2002 8216 Jackson +HOU 55055 2002 31028 Jefferson +HOU 55057 2002 12844 Juneau +HOU 55059 2002 61930 Kenosha +HOU 55061 2002 8423 Kewaunee +HOU 55063 2002 44614 La Crosse +HOU 55065 2002 6761 Lafayette +HOU 55067 2002 11433 Langlade +HOU 55069 2002 15070 Lincoln +HOU 55071 2002 35586 Manitowoc +HOU 55073 2002 52200 Marathon +HOU 55075 2002 26777 Marinette +HOU 55077 2002 8899 Marquette +HOU 55078 2002 2165 Menominee +HOU 55079 2002 400793 Milwaukee +HOU 55081 2002 17144 Monroe +HOU 55083 2002 20706 Oconto +HOU 55085 2002 27330 Oneida +HOU 55087 2002 65692 Outagamie +HOU 55089 2002 33241 Ozaukee +HOU 55091 2002 3133 Pepin +HOU 55093 2002 14118 Pierce +HOU 55095 2002 21950 Polk +HOU 55097 2002 27443 Portage +HOU 55099 2002 9884 Price +HOU 55101 2002 76078 Racine +HOU 55103 2002 8330 Richland +HOU 55105 2002 63688 Rock +HOU 55107 2002 7839 Rusk +HOU 55109 2002 26972 St. Croix +HOU 55111 2002 25417 Sauk +HOU 55113 2002 14141 Sawyer +HOU 55115 2002 18718 Shawano +HOU 55117 2002 47021 Sheboygan +HOU 55119 2002 8758 Taylor +HOU 55121 2002 11750 Trempealeau +HOU 55123 2002 12702 Vernon +HOU 55125 2002 22850 Vilas +HOU 55127 2002 45276 Walworth +HOU 55129 2002 11254 Washburn +HOU 55131 2002 47605 Washington +HOU 55133 2002 145511 Waukesha +HOU 55135 2002 23179 Waupaca +HOU 55137 2002 14200 Waushara +HOU 55139 2002 66594 Winnebago +HOU 55141 2002 32421 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_LOGGN.ALO new file mode 100644 index 0000000..f1ce903 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_LOGGN.ALO @@ -0,0 +1,99 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 55000 2002 569478138 WI +LOG 55001 2002 14724716 Adams +LOG 55003 2002 14927236 Ashland +LOG 55005 2002 7556681 Barron +LOG 55007 2002 29001791 Bayfield +LOG 55009 2002 747717 Brown +LOG 55011 2002 5899298 Buffalo +LOG 55013 2002 10883548 Burnett +LOG 55015 2002 1348117 Calumet +LOG 55017 2002 8708869 Chippewa +LOG 55019 2002 14121508 Clark +LOG 55021 2002 3224288 Columbia +LOG 55023 2002 2909005 Crawford +LOG 55025 2002 3361919 Dane +LOG 55027 2002 644966 Dodge +LOG 55029 2002 1563032 Door +LOG 55031 2002 21523100 Douglas +LOG 55033 2002 5782868 Dunn +LOG 55035 2002 5743976 Eau Claire +LOG 55037 2002 9869127 Florence +LOG 55039 2002 589516 Fond du Lac +LOG 55041 2002 20171575 Forest +LOG 55043 2002 5514729 Grant +LOG 55045 2002 1313713 Green +LOG 55047 2002 516022 Green Lake +LOG 55049 2002 2002620 Iowa +LOG 55051 2002 18247286 Iron +LOG 55053 2002 13260033 Jackson +LOG 55055 2002 1835320 Jefferson +LOG 55057 2002 9247054 Juneau +LOG 55059 2002 529356 Kenosha +LOG 55061 2002 444490 Kewaunee +LOG 55063 2002 5025314 La Crosse +LOG 55065 2002 300065 Lafayette +LOG 55067 2002 21310886 Langlade +LOG 55069 2002 19589455 Lincoln +LOG 55071 2002 1805767 Manitowoc +LOG 55073 2002 18728446 Marathon +LOG 55075 2002 23495252 Marinette +LOG 55077 2002 2932613 Marquette +LOG 55078 2002 20853530 Menominee +LOG 55079 2002 346382 Milwaukee +LOG 55081 2002 14119623 Monroe +LOG 55083 2002 8725269 Oconto +LOG 55085 2002 19752628 Oneida +LOG 55087 2002 862947 Outagamie +LOG 55089 2002 298543 Ozaukee +LOG 55091 2002 1298707 Pepin +LOG 55093 2002 1716477 Pierce +LOG 55095 2002 4773253 Polk +LOG 55097 2002 6624750 Portage +LOG 55099 2002 18055119 Price +LOG 55101 2002 41027 Racine +LOG 55103 2002 3940392 Richland +LOG 55105 2002 242309 Rock +LOG 55107 2002 14194236 Rusk +LOG 55109 2002 2003567 St. Croix +LOG 55111 2002 8123888 Sauk +LOG 55113 2002 27907242 Sawyer +LOG 55115 2002 9214743 Shawano +LOG 55117 2002 1190131 Sheboygan +LOG 55119 2002 12544815 Taylor +LOG 55121 2002 4534473 Trempealeau +LOG 55123 2002 5051697 Vernon +LOG 55125 2002 16063802 Vilas +LOG 55127 2002 845247 Walworth +LOG 55129 2002 16749979 Washburn +LOG 55131 2002 918237 Washington +LOG 55133 2002 1120322 Waukesha +LOG 55135 2002 5337286 Waupaca +LOG 55137 2002 4455513 Waushara +LOG 55139 2002 1121044 Winnebago +LOG 55141 2002 7049686 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_LSCAP.ALO new file mode 100644 index 0000000..3d6c612 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_LSCAP.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 55000 2002 5615 WI +LSC 55001 2002 36 Adams +LSC 55003 2002 0 Ashland +LSC 55005 2002 6 Barron +LSC 55007 2002 6 Bayfield +LSC 55009 2002 268 Brown +LSC 55011 2002 6 Buffalo +LSC 55013 2002 6 Burnett +LSC 55015 2002 38 Calumet +LSC 55017 2002 59 Chippewa +LSC 55019 2002 6 Clark +LSC 55021 2002 29 Columbia +LSC 55023 2002 0 Crawford +LSC 55025 2002 795 Dane +LSC 55027 2002 27 Dodge +LSC 55029 2002 38 Door +LSC 55031 2002 0 Douglas +LSC 55033 2002 27 Dunn +LSC 55035 2002 48 Eau Claire +LSC 55037 2002 6 Florence +LSC 55039 2002 35 Fond du Lac +LSC 55041 2002 6 Forest +LSC 55043 2002 5 Grant +LSC 55045 2002 6 Green +LSC 55047 2002 25 Green Lake +LSC 55049 2002 2 Iowa +LSC 55051 2002 6 Iron +LSC 55053 2002 6 Jackson +LSC 55055 2002 304 Jefferson +LSC 55057 2002 6 Juneau +LSC 55059 2002 101 Kenosha +LSC 55061 2002 6 Kewaunee +LSC 55063 2002 93 La Crosse +LSC 55065 2002 6 Lafayette +LSC 55067 2002 6 Langlade +LSC 55069 2002 6 Lincoln +LSC 55071 2002 54 Manitowoc +LSC 55073 2002 39 Marathon +LSC 55075 2002 18 Marinette +LSC 55077 2002 6 Marquette +LSC 55078 2002 6 Menominee +LSC 55079 2002 887 Milwaukee +LSC 55081 2002 6 Monroe +LSC 55083 2002 6 Oconto +LSC 55085 2002 38 Oneida +LSC 55087 2002 276 Outagamie +LSC 55089 2002 144 Ozaukee +LSC 55091 2002 6 Pepin +LSC 55093 2002 5 Pierce +LSC 55095 2002 6 Polk +LSC 55097 2002 33 Portage +LSC 55099 2002 6 Price +LSC 55101 2002 134 Racine +LSC 55103 2002 6 Richland +LSC 55105 2002 40 Rock +LSC 55107 2002 6 Rusk +LSC 55109 2002 70 St. Croix +LSC 55111 2002 49 Sauk +LSC 55113 2002 6 Sawyer +LSC 55115 2002 9 Shawano +LSC 55117 2002 77 Sheboygan +LSC 55119 2002 6 Taylor +LSC 55121 2002 6 Trempealeau +LSC 55123 2002 3 Vernon +LSC 55125 2002 14 Vilas +LSC 55127 2002 175 Walworth +LSC 55129 2002 6 Washburn +LSC 55131 2002 347 Washington +LSC 55133 2002 958 Waukesha +LSC 55135 2002 6 Waupaca +LSC 55137 2002 0 Waushara +LSC 55139 2002 83 Winnebago +LSC 55141 2002 58 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_MNFG.ALO new file mode 100644 index 0000000..2368e44 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_MNFG.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 55000 2002 939826 WI +MFG 55001 2002 733 Adams +MFG 55003 2002 2502 Ashland +MFG 55005 2002 8930 Barron +MFG 55007 2002 403 Bayfield +MFG 55009 2002 42847 Brown +MFG 55011 2002 344 Buffalo +MFG 55013 2002 1782 Burnett +MFG 55015 2002 10704 Calumet +MFG 55017 2002 9574 Chippewa +MFG 55019 2002 5300 Clark +MFG 55021 2002 9809 Columbia +MFG 55023 2002 4644 Crawford +MFG 55025 2002 47818 Dane +MFG 55027 2002 19244 Dodge +MFG 55029 2002 4528 Door +MFG 55031 2002 2071 Douglas +MFG 55033 2002 3425 Dunn +MFG 55035 2002 10578 Eau Claire +MFG 55037 2002 450 Florence +MFG 55039 2002 21338 Fond du Lac +MFG 55041 2002 727 Forest +MFG 55043 2002 5398 Grant +MFG 55045 2002 4217 Green +MFG 55047 2002 2776 Green Lake +MFG 55049 2002 1170 Iowa +MFG 55051 2002 548 Iron +MFG 55053 2002 1565 Jackson +MFG 55055 2002 20621 Jefferson +MFG 55057 2002 4023 Juneau +MFG 55059 2002 19679 Kenosha +MFG 55061 2002 3281 Kewaunee +MFG 55063 2002 16067 La Crosse +MFG 55065 2002 879 Lafayette +MFG 55067 2002 2886 Langlade +MFG 55069 2002 6650 Lincoln +MFG 55071 2002 22623 Manitowoc +MFG 55073 2002 32781 Marathon +MFG 55075 2002 11761 Marinette +MFG 55077 2002 1541 Marquette +MFG 55078 2002 364 Menominee +MFG 55079 2002 121987 Milwaukee +MFG 55081 2002 5496 Monroe +MFG 55083 2002 5011 Oconto +MFG 55085 2002 3214 Oneida +MFG 55087 2002 33042 Outagamie +MFG 55089 2002 21241 Ozaukee +MFG 55091 2002 300 Pepin +MFG 55093 2002 1911 Pierce +MFG 55095 2002 7291 Polk +MFG 55097 2002 8791 Portage +MFG 55099 2002 4469 Price +MFG 55101 2002 31925 Racine +MFG 55103 2002 3136 Richland +MFG 55105 2002 28478 Rock +MFG 55107 2002 3590 Rusk +MFG 55109 2002 10943 St. Croix +MFG 55111 2002 12313 Sauk +MFG 55113 2002 1222 Sawyer +MFG 55115 2002 3498 Shawano +MFG 55117 2002 39606 Sheboygan +MFG 55119 2002 5355 Taylor +MFG 55121 2002 8980 Trempealeau +MFG 55123 2002 1624 Vernon +MFG 55125 2002 685 Vilas +MFG 55127 2002 17277 Walworth +MFG 55129 2002 2128 Washburn +MFG 55131 2002 28554 Washington +MFG 55133 2002 85787 Waukesha +MFG 55135 2002 13003 Waupaca +MFG 55137 2002 1201 Waushara +MFG 55139 2002 45979 Winnebago +MFG 55141 2002 15208 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_OIL.ALO new file mode 100644 index 0000000..399336c --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_OIL.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 55000 2002 20 WI +OIL 55001 2002 0 Adams +OIL 55003 2002 0 Ashland +OIL 55005 2002 0 Barron +OIL 55007 2002 0 Bayfield +OIL 55009 2002 0 Brown +OIL 55011 2002 0 Buffalo +OIL 55013 2002 0 Burnett +OIL 55015 2002 0 Calumet +OIL 55017 2002 0 Chippewa +OIL 55019 2002 0 Clark +OIL 55021 2002 0 Columbia +OIL 55023 2002 0 Crawford +OIL 55025 2002 1 Dane +OIL 55027 2002 0 Dodge +OIL 55029 2002 0 Door +OIL 55031 2002 0 Douglas +OIL 55033 2002 0 Dunn +OIL 55035 2002 0 Eau Claire +OIL 55037 2002 0 Florence +OIL 55039 2002 0 Fond du Lac +OIL 55041 2002 0 Forest +OIL 55043 2002 4 Grant +OIL 55045 2002 0 Green +OIL 55047 2002 0 Green Lake +OIL 55049 2002 3 Iowa +OIL 55051 2002 0 Iron +OIL 55053 2002 0 Jackson +OIL 55055 2002 0 Jefferson +OIL 55057 2002 2 Juneau +OIL 55059 2002 0 Kenosha +OIL 55061 2002 0 Kewaunee +OIL 55063 2002 0 La Crosse +OIL 55065 2002 0 Lafayette +OIL 55067 2002 0 Langlade +OIL 55069 2002 0 Lincoln +OIL 55071 2002 0 Manitowoc +OIL 55073 2002 0 Marathon +OIL 55075 2002 0 Marinette +OIL 55077 2002 0 Marquette +OIL 55078 2002 0 Menominee +OIL 55079 2002 0 Milwaukee +OIL 55081 2002 0 Monroe +OIL 55083 2002 2 Oconto +OIL 55085 2002 0 Oneida +OIL 55087 2002 0 Outagamie +OIL 55089 2002 3 Ozaukee +OIL 55091 2002 0 Pepin +OIL 55093 2002 0 Pierce +OIL 55095 2002 0 Polk +OIL 55097 2002 0 Portage +OIL 55099 2002 0 Price +OIL 55101 2002 0 Racine +OIL 55103 2002 0 Richland +OIL 55105 2002 0 Rock +OIL 55107 2002 0 Rusk +OIL 55109 2002 0 St. Croix +OIL 55111 2002 3 Sauk +OIL 55113 2002 0 Sawyer +OIL 55115 2002 0 Shawano +OIL 55117 2002 0 Sheboygan +OIL 55119 2002 0 Taylor +OIL 55121 2002 0 Trempealeau +OIL 55123 2002 0 Vernon +OIL 55125 2002 0 Vilas +OIL 55127 2002 0 Walworth +OIL 55129 2002 0 Washburn +OIL 55131 2002 2 Washington +OIL 55133 2002 0 Waukesha +OIL 55135 2002 0 Waupaca +OIL 55137 2002 0 Waushara +OIL 55139 2002 0 Winnebago +OIL 55141 2002 0 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_POP.ALO new file mode 100644 index 0000000..e48f80a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_POP.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 55000 2002 5440367 WI +POP 55001 2002 20489 Adams +POP 55003 2002 16795 Ashland +POP 55005 2002 45481 Barron +POP 55007 2002 15139 Bayfield +POP 55009 2002 231996 Brown +POP 55011 2002 13823 Buffalo +POP 55013 2002 16107 Burnett +POP 55015 2002 42513 Calumet +POP 55017 2002 56279 Chippewa +POP 55019 2002 33836 Clark +POP 55021 2002 53451 Columbia +POP 55023 2002 17024 Crawford +POP 55025 2002 441647 Dane +POP 55027 2002 86953 Dodge +POP 55029 2002 28285 Door +POP 55031 2002 43708 Douglas +POP 55033 2002 40773 Dunn +POP 55035 2002 94104 Eau Claire +POP 55037 2002 5127 Florence +POP 55039 2002 97821 Fond du Lac +POP 55041 2002 9929 Forest +POP 55043 2002 49449 Grant +POP 55045 2002 34095 Green +POP 55047 2002 19247 Green Lake +POP 55049 2002 23134 Iowa +POP 55051 2002 6797 Iron +POP 55053 2002 19313 Jackson +POP 55055 2002 76959 Jefferson +POP 55057 2002 25080 Juneau +POP 55059 2002 153959 Kenosha +POP 55061 2002 20516 Kewaunee +POP 55063 2002 108033 La Crosse +POP 55065 2002 16312 Lafayette +POP 55067 2002 20824 Langlade +POP 55069 2002 29994 Lincoln +POP 55071 2002 82402 Manitowoc +POP 55073 2002 126918 Marathon +POP 55075 2002 43404 Marinette +POP 55077 2002 14729 Marquette +POP 55078 2002 4627 Menominee +POP 55079 2002 934352 Milwaukee +POP 55081 2002 41568 Monroe +POP 55083 2002 36635 Oconto +POP 55085 2002 36976 Oneida +POP 55087 2002 166080 Outagamie +POP 55089 2002 84030 Ozaukee +POP 55091 2002 7340 Pepin +POP 55093 2002 37435 Pierce +POP 55095 2002 42761 Polk +POP 55097 2002 67266 Portage +POP 55099 2002 15461 Price +POP 55101 2002 190952 Racine +POP 55103 2002 18114 Richland +POP 55105 2002 154078 Rock +POP 55107 2002 15310 Rusk +POP 55109 2002 68469 St. Croix +POP 55111 2002 55940 Sauk +POP 55113 2002 16588 Sawyer +POP 55115 2002 40999 Shawano +POP 55117 2002 113293 Sheboygan +POP 55119 2002 19661 Taylor +POP 55121 2002 27195 Trempealeau +POP 55123 2002 28370 Vernon +POP 55125 2002 21792 Vilas +POP 55127 2002 95211 Walworth +POP 55129 2002 16416 Washburn +POP 55131 2002 121023 Washington +POP 55133 2002 370335 Waukesha +POP 55135 2002 52389 Waupaca +POP 55137 2002 23403 Waushara +POP 55139 2002 158474 Winnebago +POP 55141 2002 75379 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_RAIL.ALO new file mode 100644 index 0000000..ea06b3e --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_RAIL.ALO @@ -0,0 +1,99 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 55000 2002 11125.580 WI +RR 55001 2002 64.570 Adams +RR 55003 2002 0.000 Ashland +RR 55005 2002 12.610 Barron +RR 55007 2002 0.000 Bayfield +RR 55009 2002 0.000 Brown +RR 55011 2002 740.870 Buffalo +RR 55013 2002 0.000 Burnett +RR 55015 2002 0.000 Calumet +RR 55017 2002 23.940 Chippewa +RR 55019 2002 42.120 Clark +RR 55021 2002 450.500 Columbia +RR 55023 2002 1212.370 Crawford +RR 55025 2002 57.430 Dane +RR 55027 2002 137.260 Dodge +RR 55029 2002 0.000 Door +RR 55031 2002 520.780 Douglas +RR 55033 2002 21.890 Dunn +RR 55035 2002 53.450 Eau Claire +RR 55037 2002 0.000 Florence +RR 55039 2002 0.000 Fond du Lac +RR 55041 2002 0.000 Forest +RR 55043 2002 552.950 Grant +RR 55045 2002 0.000 Green +RR 55047 2002 38.350 Green Lake +RR 55049 2002 0.000 Iowa +RR 55051 2002 0.000 Iron +RR 55053 2002 82.940 Jackson +RR 55055 2002 277.380 Jefferson +RR 55057 2002 714.220 Juneau +RR 55059 2002 265.260 Kenosha +RR 55061 2002 0.000 Kewaunee +RR 55063 2002 997.980 La Crosse +RR 55065 2002 0.000 Lafayette +RR 55067 2002 0.000 Langlade +RR 55069 2002 0.000 Lincoln +RR 55071 2002 0.840 Manitowoc +RR 55073 2002 132.260 Marathon +RR 55075 2002 0.000 Marinette +RR 55077 2002 38.350 Marquette +RR 55078 2002 0.000 Menominee +RR 55079 2002 555.720 Milwaukee +RR 55081 2002 378.000 Monroe +RR 55083 2002 0.000 Oconto +RR 55085 2002 0.000 Oneida +RR 55087 2002 0.000 Outagamie +RR 55089 2002 65.080 Ozaukee +RR 55091 2002 283.800 Pepin +RR 55093 2002 716.100 Pierce +RR 55095 2002 0.000 Polk +RR 55097 2002 295.800 Portage +RR 55099 2002 0.000 Price +RR 55101 2002 325.360 Racine +RR 55103 2002 0.000 Richland +RR 55105 2002 32.980 Rock +RR 55107 2002 0.000 Rusk +RR 55109 2002 20.390 St. Croix +RR 55111 2002 107.000 Sauk +RR 55113 2002 0.000 Sawyer +RR 55115 2002 0.000 Shawano +RR 55117 2002 54.640 Sheboygan +RR 55119 2002 0.000 Taylor +RR 55121 2002 269.360 Trempealeau +RR 55123 2002 646.480 Vernon +RR 55125 2002 0.000 Vilas +RR 55127 2002 16.320 Walworth +RR 55129 2002 0.000 Washburn +RR 55131 2002 0.000 Washington +RR 55133 2002 298.880 Waukesha +RR 55135 2002 0.000 Waupaca +RR 55137 2002 0.000 Waushara +RR 55139 2002 0.000 Winnebago +RR 55141 2002 621.350 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_RVPRK.ALO new file mode 100644 index 0000000..2cdf107 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_RVPRK.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 55000 2002 265 WI +RVP 55001 2002 3 Adams +RVP 55003 2002 1 Ashland +RVP 55005 2002 7 Barron +RVP 55007 2002 6 Bayfield +RVP 55009 2002 0 Brown +RVP 55011 2002 1 Buffalo +RVP 55013 2002 5 Burnett +RVP 55015 2002 0 Calumet +RVP 55017 2002 4 Chippewa +RVP 55019 2002 1 Clark +RVP 55021 2002 13 Columbia +RVP 55023 2002 1 Crawford +RVP 55025 2002 5 Dane +RVP 55027 2002 3 Dodge +RVP 55029 2002 9 Door +RVP 55031 2002 3 Douglas +RVP 55033 2002 2 Dunn +RVP 55035 2002 1 Eau Claire +RVP 55037 2002 0 Florence +RVP 55039 2002 5 Fond du Lac +RVP 55041 2002 1 Forest +RVP 55043 2002 4 Grant +RVP 55045 2002 1 Green +RVP 55047 2002 1 Green Lake +RVP 55049 2002 0 Iowa +RVP 55051 2002 0 Iron +RVP 55053 2002 1 Jackson +RVP 55055 2002 4 Jefferson +RVP 55057 2002 5 Juneau +RVP 55059 2002 2 Kenosha +RVP 55061 2002 1 Kewaunee +RVP 55063 2002 4 La Crosse +RVP 55065 2002 0 Lafayette +RVP 55067 2002 3 Langlade +RVP 55069 2002 4 Lincoln +RVP 55071 2002 3 Manitowoc +RVP 55073 2002 2 Marathon +RVP 55075 2002 1 Marinette +RVP 55077 2002 6 Marquette +RVP 55078 2002 0 Menominee +RVP 55079 2002 3 Milwaukee +RVP 55081 2002 3 Monroe +RVP 55083 2002 5 Oconto +RVP 55085 2002 8 Oneida +RVP 55087 2002 2 Outagamie +RVP 55089 2002 0 Ozaukee +RVP 55091 2002 1 Pepin +RVP 55093 2002 0 Pierce +RVP 55095 2002 7 Polk +RVP 55097 2002 6 Portage +RVP 55099 2002 1 Price +RVP 55101 2002 2 Racine +RVP 55103 2002 1 Richland +RVP 55105 2002 4 Rock +RVP 55107 2002 1 Rusk +RVP 55109 2002 6 St. Croix +RVP 55111 2002 8 Sauk +RVP 55113 2002 19 Sawyer +RVP 55115 2002 2 Shawano +RVP 55117 2002 6 Sheboygan +RVP 55119 2002 1 Taylor +RVP 55121 2002 1 Trempealeau +RVP 55123 2002 2 Vernon +RVP 55125 2002 29 Vilas +RVP 55127 2002 6 Walworth +RVP 55129 2002 7 Washburn +RVP 55131 2002 3 Washington +RVP 55133 2002 3 Waukesha +RVP 55135 2002 8 Waupaca +RVP 55137 2002 5 Waushara +RVP 55139 2002 2 Winnebago +RVP 55141 2002 0 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_SBC.ALO new file mode 100644 index 0000000..ae8fe13 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_SBC.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 55000 2002 5615 WI +SBC 55001 2002 36 Adams +SBC 55003 2002 0 Ashland +SBC 55005 2002 6 Barron +SBC 55007 2002 6 Bayfield +SBC 55009 2002 268 Brown +SBC 55011 2002 6 Buffalo +SBC 55013 2002 6 Burnett +SBC 55015 2002 17 Calumet +SBC 55017 2002 59 Chippewa +SBC 55019 2002 14 Clark +SBC 55021 2002 29 Columbia +SBC 55023 2002 0 Crawford +SBC 55025 2002 795 Dane +SBC 55027 2002 27 Dodge +SBC 55029 2002 11 Door +SBC 55031 2002 0 Douglas +SBC 55033 2002 27 Dunn +SBC 55035 2002 48 Eau Claire +SBC 55037 2002 2 Florence +SBC 55039 2002 35 Fond du Lac +SBC 55041 2002 4 Forest +SBC 55043 2002 5 Grant +SBC 55045 2002 14 Green +SBC 55047 2002 25 Green Lake +SBC 55049 2002 2 Iowa +SBC 55051 2002 3 Iron +SBC 55053 2002 8 Jackson +SBC 55055 2002 304 Jefferson +SBC 55057 2002 10 Juneau +SBC 55059 2002 101 Kenosha +SBC 55061 2002 8 Kewaunee +SBC 55063 2002 93 La Crosse +SBC 55065 2002 7 Lafayette +SBC 55067 2002 8 Langlade +SBC 55069 2002 12 Lincoln +SBC 55071 2002 54 Manitowoc +SBC 55073 2002 39 Marathon +SBC 55075 2002 18 Marinette +SBC 55077 2002 6 Marquette +SBC 55078 2002 2 Menominee +SBC 55079 2002 887 Milwaukee +SBC 55081 2002 17 Monroe +SBC 55083 2002 15 Oconto +SBC 55085 2002 15 Oneida +SBC 55087 2002 276 Outagamie +SBC 55089 2002 144 Ozaukee +SBC 55091 2002 3 Pepin +SBC 55093 2002 5 Pierce +SBC 55095 2002 17 Polk +SBC 55097 2002 33 Portage +SBC 55099 2002 6 Price +SBC 55101 2002 134 Racine +SBC 55103 2002 7 Richland +SBC 55105 2002 40 Rock +SBC 55107 2002 6 Rusk +SBC 55109 2002 70 St. Croix +SBC 55111 2002 49 Sauk +SBC 55113 2002 7 Sawyer +SBC 55115 2002 9 Shawano +SBC 55117 2002 77 Sheboygan +SBC 55119 2002 8 Taylor +SBC 55121 2002 11 Trempealeau +SBC 55123 2002 3 Vernon +SBC 55125 2002 14 Vilas +SBC 55127 2002 175 Walworth +SBC 55129 2002 7 Washburn +SBC 55131 2002 347 Washington +SBC 55133 2002 958 Waukesha +SBC 55135 2002 19 Waupaca +SBC 55137 2002 0 Waushara +SBC 55139 2002 83 Winnebago +SBC 55141 2002 58 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_SBR.ALO new file mode 100644 index 0000000..74406a5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_SBR.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 55000 2002 2386857 WI +SBR 55001 2002 14663 Adams +SBR 55003 2002 8952 Ashland +SBR 55005 2002 21569 Barron +SBR 55007 2002 11828 Bayfield +SBR 55009 2002 93916 Brown +SBR 55011 2002 6243 Buffalo +SBR 55013 2002 12971 Burnett +SBR 55015 2002 16782 Calumet +SBR 55017 2002 23948 Chippewa +SBR 55019 2002 13704 Clark +SBR 55021 2002 23392 Columbia +SBR 55023 2002 8642 Crawford +SBR 55025 2002 189255 Dane +SBR 55027 2002 34409 Dodge +SBR 55029 2002 20420 Door +SBR 55031 2002 20701 Douglas +SBR 55033 2002 15927 Dunn +SBR 55035 2002 38890 Eau Claire +SBR 55037 2002 4278 Florence +SBR 55039 2002 40106 Fond du Lac +SBR 55041 2002 8458 Forest +SBR 55043 2002 20163 Grant +SBR 55045 2002 14257 Green +SBR 55047 2002 9932 Green Lake +SBR 55049 2002 9985 Iowa +SBR 55051 2002 5782 Iron +SBR 55053 2002 8216 Jackson +SBR 55055 2002 31028 Jefferson +SBR 55057 2002 12844 Juneau +SBR 55059 2002 61930 Kenosha +SBR 55061 2002 8423 Kewaunee +SBR 55063 2002 44614 La Crosse +SBR 55065 2002 6761 Lafayette +SBR 55067 2002 11433 Langlade +SBR 55069 2002 15070 Lincoln +SBR 55071 2002 35586 Manitowoc +SBR 55073 2002 52200 Marathon +SBR 55075 2002 26777 Marinette +SBR 55077 2002 8899 Marquette +SBR 55078 2002 2165 Menominee +SBR 55079 2002 400793 Milwaukee +SBR 55081 2002 17144 Monroe +SBR 55083 2002 20706 Oconto +SBR 55085 2002 27330 Oneida +SBR 55087 2002 65692 Outagamie +SBR 55089 2002 33241 Ozaukee +SBR 55091 2002 3133 Pepin +SBR 55093 2002 14118 Pierce +SBR 55095 2002 21950 Polk +SBR 55097 2002 27443 Portage +SBR 55099 2002 9884 Price +SBR 55101 2002 76078 Racine +SBR 55103 2002 8330 Richland +SBR 55105 2002 63688 Rock +SBR 55107 2002 7839 Rusk +SBR 55109 2002 26972 St. Croix +SBR 55111 2002 25417 Sauk +SBR 55113 2002 14141 Sawyer +SBR 55115 2002 18718 Shawano +SBR 55117 2002 47021 Sheboygan +SBR 55119 2002 8758 Taylor +SBR 55121 2002 11750 Trempealeau +SBR 55123 2002 12702 Vernon +SBR 55125 2002 22850 Vilas +SBR 55127 2002 45276 Walworth +SBR 55129 2002 11254 Washburn +SBR 55131 2002 47605 Washington +SBR 55133 2002 145511 Waukesha +SBR 55135 2002 23179 Waupaca +SBR 55137 2002 14200 Waushara +SBR 55139 2002 66594 Winnebago +SBR 55141 2002 32421 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_SNOWM.ALO new file mode 100644 index 0000000..6986d79 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_SNOWM.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 55000 2002 2740 WI +SNM 55001 2002 49 Adams +SNM 55003 2002 60 Ashland +SNM 55005 2002 22 Barron +SNM 55007 2002 66 Bayfield +SNM 55009 2002 0 Brown +SNM 55011 2002 72 Buffalo +SNM 55013 2002 62 Burnett +SNM 55015 2002 24 Calumet +SNM 55017 2002 18 Chippewa +SNM 55019 2002 30 Clark +SNM 55021 2002 19 Columbia +SNM 55023 2002 59 Crawford +SNM 55025 2002 0 Dane +SNM 55027 2002 12 Dodge +SNM 55029 2002 35 Door +SNM 55031 2002 23 Douglas +SNM 55033 2002 25 Dunn +SNM 55035 2002 11 Eau Claire +SNM 55037 2002 195 Florence +SNM 55039 2002 10 Fond du Lac +SNM 55041 2002 101 Forest +SNM 55043 2002 20 Grant +SNM 55045 2002 29 Green +SNM 55047 2002 52 Green Lake +SNM 55049 2002 43 Iowa +SNM 55051 2002 147 Iron +SNM 55053 2002 52 Jackson +SNM 55055 2002 13 Jefferson +SNM 55057 2002 40 Juneau +SNM 55059 2002 0 Kenosha +SNM 55061 2002 49 Kewaunee +SNM 55063 2002 9 La Crosse +SNM 55065 2002 61 Lafayette +SNM 55067 2002 48 Langlade +SNM 55069 2002 33 Lincoln +SNM 55071 2002 12 Manitowoc +SNM 55073 2002 8 Marathon +SNM 55075 2002 23 Marinette +SNM 55077 2002 68 Marquette +SNM 55078 2002 216 Menominee +SNM 55079 2002 0 Milwaukee +SNM 55081 2002 24 Monroe +SNM 55083 2002 27 Oconto +SNM 55085 2002 27 Oneida +SNM 55087 2002 6 Outagamie +SNM 55089 2002 0 Ozaukee +SNM 55091 2002 136 Pepin +SNM 55093 2002 27 Pierce +SNM 55095 2002 23 Polk +SNM 55097 2002 15 Portage +SNM 55099 2002 65 Price +SNM 55101 2002 0 Racine +SNM 55103 2002 55 Richland +SNM 55105 2002 6 Rock +SNM 55107 2002 65 Rusk +SNM 55109 2002 15 St. Croix +SNM 55111 2002 18 Sauk +SNM 55113 2002 60 Sawyer +SNM 55115 2002 24 Shawano +SNM 55117 2002 9 Sheboygan +SNM 55119 2002 51 Taylor +SNM 55121 2002 37 Trempealeau +SNM 55123 2002 35 Vernon +SNM 55125 2002 46 Vilas +SNM 55127 2002 11 Walworth +SNM 55129 2002 61 Washburn +SNM 55131 2002 0 Washington +SNM 55133 2002 0 Waukesha +SNM 55135 2002 19 Waupaca +SNM 55137 2002 43 Waushara +SNM 55139 2002 6 Winnebago +SNM 55141 2002 13 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_WIB.ALO new file mode 100644 index 0000000..e9c13c1 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_WIB.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 55000 1990 7435 WI +WIB 55001 1990 106 Adams +WIB 55003 1990 226 Ashland +WIB 55005 1990 70 Barron +WIB 55007 1990 513 Bayfield +WIB 55009 1990 216 Brown +WIB 55011 1990 65 Buffalo +WIB 55013 1990 153 Burnett +WIB 55015 1990 200 Calumet +WIB 55017 1990 80 Chippewa +WIB 55019 1990 9 Clark +WIB 55021 1990 57 Columbia +WIB 55023 1990 69 Crawford +WIB 55025 1990 94 Dane +WIB 55027 1990 64 Dodge +WIB 55029 1990 795 Door +WIB 55031 1990 252 Douglas +WIB 55033 1990 31 Dunn +WIB 55035 1990 20 Eau Claire +WIB 55037 1990 24 Florence +WIB 55039 1990 111 Fond du Lac +WIB 55041 1990 84 Forest +WIB 55043 1990 92 Grant +WIB 55045 1990 1 Green +WIB 55047 1990 68 Green Lake +WIB 55049 1990 14 Iowa +WIB 55051 1990 154 Iron +WIB 55053 1990 33 Jackson +WIB 55055 1990 67 Jefferson +WIB 55057 1990 95 Juneau +WIB 55059 1990 81 Kenosha +WIB 55061 1990 152 Kewaunee +WIB 55063 1990 70 La Crosse +WIB 55065 1990 3 Lafayette +WIB 55067 1990 39 Langlade +WIB 55069 1990 62 Lincoln +WIB 55071 1990 188 Manitowoc +WIB 55073 1990 81 Marathon +WIB 55075 1990 164 Marinette +WIB 55077 1990 23 Marquette +WIB 55078 1990 18 Menominee +WIB 55079 1990 142 Milwaukee +WIB 55081 1990 20 Monroe +WIB 55083 1990 184 Oconto +WIB 55085 1990 288 Oneida +WIB 55087 1990 11 Outagamie +WIB 55089 1990 6 Ozaukee +WIB 55091 1990 42 Pepin +WIB 55093 1990 39 Pierce +WIB 55095 1990 101 Polk +WIB 55097 1990 43 Portage +WIB 55099 1990 67 Price +WIB 55101 1990 89 Racine +WIB 55103 1990 8 Richland +WIB 55105 1990 15 Rock +WIB 55107 1990 46 Rusk +WIB 55109 1990 36 St. Croix +WIB 55111 1990 28 Sauk +WIB 55113 1990 243 Sawyer +WIB 55115 1990 44 Shawano +WIB 55117 1990 145 Sheboygan +WIB 55119 1990 25 Taylor +WIB 55121 1990 20 Trempealeau +WIB 55123 1990 56 Vernon +WIB 55125 1990 376 Vilas +WIB 55127 1990 55 Walworth +WIB 55129 1990 112 Washburn +WIB 55131 1990 13 Washington +WIB 55133 1990 65 Waukesha +WIB 55135 1990 37 Waupaca +WIB 55137 1990 29 Waushara +WIB 55139 1990 363 Winnebago +WIB 55141 1990 43 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WI_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WI_WOB.ALO new file mode 100644 index 0000000..193abd0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WI_WOB.ALO @@ -0,0 +1,97 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 55000 1990 5078 WI +WOB 55001 1990 106 Adams +WOB 55003 1990 62 Ashland +WOB 55005 1990 70 Barron +WOB 55007 1990 145 Bayfield +WOB 55009 1990 45 Brown +WOB 55011 1990 65 Buffalo +WOB 55013 1990 153 Burnett +WOB 55015 1990 200 Calumet +WOB 55017 1990 80 Chippewa +WOB 55019 1990 9 Clark +WOB 55021 1990 57 Columbia +WOB 55023 1990 69 Crawford +WOB 55025 1990 94 Dane +WOB 55027 1990 64 Dodge +WOB 55029 1990 155 Door +WOB 55031 1990 107 Douglas +WOB 55033 1990 31 Dunn +WOB 55035 1990 20 Eau Claire +WOB 55037 1990 24 Florence +WOB 55039 1990 111 Fond du Lac +WOB 55041 1990 84 Forest +WOB 55043 1990 92 Grant +WOB 55045 1990 1 Green +WOB 55047 1990 68 Green Lake +WOB 55049 1990 14 Iowa +WOB 55051 1990 122 Iron +WOB 55053 1990 33 Jackson +WOB 55055 1990 67 Jefferson +WOB 55057 1990 95 Juneau +WOB 55059 1990 25 Kenosha +WOB 55061 1990 22 Kewaunee +WOB 55063 1990 70 La Crosse +WOB 55065 1990 3 Lafayette +WOB 55067 1990 39 Langlade +WOB 55069 1990 62 Lincoln +WOB 55071 1990 33 Manitowoc +WOB 55073 1990 81 Marathon +WOB 55075 1990 85 Marinette +WOB 55077 1990 23 Marquette +WOB 55078 1990 18 Menominee +WOB 55079 1990 21 Milwaukee +WOB 55081 1990 20 Monroe +WOB 55083 1990 67 Oconto +WOB 55085 1990 288 Oneida +WOB 55087 1990 11 Outagamie +WOB 55089 1990 6 Ozaukee +WOB 55091 1990 42 Pepin +WOB 55093 1990 39 Pierce +WOB 55095 1990 101 Polk +WOB 55097 1990 43 Portage +WOB 55099 1990 67 Price +WOB 55101 1990 27 Racine +WOB 55103 1990 8 Richland +WOB 55105 1990 15 Rock +WOB 55107 1990 46 Rusk +WOB 55109 1990 36 St. Croix +WOB 55111 1990 28 Sauk +WOB 55113 1990 243 Sawyer +WOB 55115 1990 44 Shawano +WOB 55117 1990 28 Sheboygan +WOB 55119 1990 25 Taylor +WOB 55121 1990 20 Trempealeau +WOB 55123 1990 56 Vernon +WOB 55125 1990 376 Vilas +WOB 55127 1990 55 Walworth +WOB 55129 1990 112 Washburn +WOB 55131 1990 13 Washington +WOB 55133 1990 65 Waukesha +WOB 55135 1990 37 Waupaca +WOB 55137 1990 29 Waushara +WOB 55139 1990 363 Winnebago +WOB 55141 1990 43 Wood +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_AIRTR.ALO new file mode 100644 index 0000000..0521805 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_AIRTR.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 54000 2002 134.574 WV +AIR 54001 2002 0.000 Barbour +AIR 54003 2002 0.989 Berkeley +AIR 54005 2002 0.000 Boone +AIR 54007 2002 0.000 Braxton +AIR 54009 2002 0.000 Brooke +AIR 54011 2002 0.000 Cabell +AIR 54013 2002 0.000 Calhoun +AIR 54015 2002 0.000 Clay +AIR 54017 2002 0.000 Doddridge +AIR 54019 2002 0.000 Fayette +AIR 54021 2002 0.000 Gilmer +AIR 54023 2002 0.040 Grant +AIR 54025 2002 1.850 Greenbrier +AIR 54027 2002 0.000 Hampshire +AIR 54029 2002 0.000 Hancock +AIR 54031 2002 0.000 Hardy +AIR 54033 2002 0.660 Harrison +AIR 54035 2002 0.000 Jackson +AIR 54037 2002 0.000 Jefferson +AIR 54039 2002 28.060 Kanawha +AIR 54041 2002 0.000 Lewis +AIR 54043 2002 0.000 Lincoln +AIR 54045 2002 0.000 Logan +AIR 54047 2002 0.000 McDowell +AIR 54049 2002 0.013 Marion +AIR 54051 2002 0.067 Marshall +AIR 54053 2002 0.015 Mason +AIR 54055 2002 8.633 Mercer +AIR 54057 2002 39.990 Mineral +AIR 54059 2002 0.000 Mingo +AIR 54061 2002 0.640 Monongalia +AIR 54063 2002 0.000 Monroe +AIR 54065 2002 0.000 Morgan +AIR 54067 2002 0.000 Nicholas +AIR 54069 2002 0.250 Ohio +AIR 54071 2002 0.000 Pendleton +AIR 54073 2002 0.000 Pleasants +AIR 54075 2002 0.000 Pocahontas +AIR 54077 2002 0.000 Preston +AIR 54079 2002 0.000 Putnam +AIR 54081 2002 12.753 Raleigh +AIR 54083 2002 0.052 Randolph +AIR 54085 2002 0.000 Ritchie +AIR 54087 2002 0.000 Roane +AIR 54089 2002 0.000 Summers +AIR 54091 2002 0.000 Taylor +AIR 54093 2002 0.000 Tucker +AIR 54095 2002 0.000 Tyler +AIR 54097 2002 0.000 Upshur +AIR 54099 2002 39.990 Wayne +AIR 54101 2002 0.000 Webster +AIR 54103 2002 0.000 Wetzel +AIR 54105 2002 0.000 Wirt +AIR 54107 2002 0.570 Wood +AIR 54109 2002 0.002 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_COAL.ALO new file mode 100644 index 0000000..00784d0 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_COAL.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +2/1/2006 Correct missing entries beyond Marshall County. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 54000 2002 87918 WV +MIN 54001 2002 815 Barbour +MIN 54003 2002 0 Berkeley +MIN 54005 2002 16220 Boone +MIN 54007 2002 0 Braxton +MIN 54009 2002 1270 Brooke +MIN 54011 2002 0 Cabell +MIN 54013 2002 0 Calhoun +MIN 54015 2002 1 Clay +MIN 54017 2002 0 Doddridge +MIN 54019 2002 1041 Fayette +MIN 54021 2002 0 Gilmer +MIN 54023 2002 203 Grant +MIN 54025 2002 633 Greenbrier +MIN 54027 2002 0 Hampshire +MIN 54029 2002 0 Hancock +MIN 54031 2002 0 Hardy +MIN 54033 2002 5767 Harrison +MIN 54035 2002 0 Jackson +MIN 54037 2002 0 Jefferson +MIN 54039 2002 8333 Kanawha +MIN 54041 2002 0 Lewis +MIN 54043 2002 327 Lincoln +MIN 54045 2002 3437 Logan +MIN 54047 2002 2630 McDowell +MIN 54049 2002 2 Marion +MIN 54051 2002 4797 Marshall +MIN 54053 2002 0 Mason +MIN 54055 2002 0 Mercer +MIN 54057 2002 0 Mineral +MIN 54059 2002 9625 Mingo +MIN 54061 2002 6195 Monongalia +MIN 54063 2002 0 Monroe +MIN 54065 2002 0 Morgan +MIN 54067 2002 639 Nicholas +MIN 54069 2002 3359 Ohio +MIN 54071 2002 0 Pendleton +MIN 54073 2002 0 Pleasants +MIN 54075 2002 0 Pocahontas +MIN 54077 2002 2422 Preston +MIN 54079 2002 0 Putnam +MIN 54081 2002 7395 Raleigh +MIN 54083 2002 0 Randolph +MIN 54085 2002 0 Ritchie +MIN 54087 2002 0 Roane +MIN 54089 2002 0 Summers +MIN 54091 2002 0 Taylor +MIN 54093 2002 0 Tucker +MIN 54095 2002 0 Tyler +MIN 54097 2002 1242 Upshur +MIN 54099 2002 3748 Wayne +MIN 54101 2002 2610 Webster +MIN 54103 2002 0 Wetzel +MIN 54105 2002 0 Wirt +MIN 54107 2002 0 Wood +MIN 54109 2002 5207 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_CONST.ALO new file mode 100644 index 0000000..b6c220d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_CONST.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 54000 2003 1751944 WV +CON 54001 2003 8699 Barbour +CON 54003 2003 208019 Berkeley +CON 54005 2003 3335 Boone +CON 54007 2003 9166 Braxton +CON 54009 2003 24641 Brooke +CON 54011 2003 73158 Cabell +CON 54013 2003 3827 Calhoun +CON 54015 2003 1530 Clay +CON 54017 2003 1645 Doddridge +CON 54019 2003 45741 Fayette +CON 54021 2003 3465 Gilmer +CON 54023 2003 13410 Grant +CON 54025 2003 78290 Greenbrier +CON 54027 2003 21531 Hampshire +CON 54029 2003 28532 Hancock +CON 54031 2003 10746 Hardy +CON 54033 2003 79169 Harrison +CON 54035 2003 7632 Jackson +CON 54037 2003 201839 Jefferson +CON 54039 2003 123542 Kanawha +CON 54041 2003 9292 Lewis +CON 54043 2003 7689 Lincoln +CON 54045 2003 30777 Logan +CON 54047 2003 6470 McDowell +CON 54049 2003 47532 Marion +CON 54051 2003 6247 Marshall +CON 54053 2003 35080 Mason +CON 54055 2003 17692 Mercer +CON 54057 2003 36528 Mineral +CON 54059 2003 9145 Mingo +CON 54061 2003 99033 Monongalia +CON 54063 2003 5419 Monroe +CON 54065 2003 30862 Morgan +CON 54067 2003 41246 Nicholas +CON 54069 2003 38006 Ohio +CON 54071 2003 5447 Pendleton +CON 54073 2003 973 Pleasants +CON 54075 2003 15470 Pocahontas +CON 54077 2003 8164 Preston +CON 54079 2003 68084 Putnam +CON 54081 2003 81613 Raleigh +CON 54083 2003 18731 Randolph +CON 54085 2003 3555 Ritchie +CON 54087 2003 4228 Roane +CON 54089 2003 4703 Summers +CON 54091 2003 15226 Taylor +CON 54093 2003 15393 Tucker +CON 54095 2003 2525 Tyler +CON 54097 2003 13347 Upshur +CON 54099 2003 19016 Wayne +CON 54101 2003 8735 Webster +CON 54103 2003 5653 Wetzel +CON 54105 2003 1621 Wirt +CON 54107 2003 86622 Wood +CON 54109 2003 3903 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_FARMS.ALO new file mode 100644 index 0000000..6ba6bff --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_FARMS.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 54000 2002 648635 WV +FRM 54001 2002 15268 Barbour +FRM 54003 2002 31184 Berkeley +FRM 54005 2002 245 Boone +FRM 54007 2002 9863 Braxton +FRM 54009 2002 3221 Brooke +FRM 54011 2002 4994 Cabell +FRM 54013 2002 6012 Calhoun +FRM 54015 2002 1918 Clay +FRM 54017 2002 10416 Doddridge +FRM 54019 2002 4455 Fayette +FRM 54021 2002 8088 Gilmer +FRM 54023 2002 14758 Grant +FRM 54025 2002 29466 Greenbrier +FRM 54027 2002 27851 Hampshire +FRM 54029 2002 2107 Hancock +FRM 54031 2002 21684 Hardy +FRM 54033 2002 20687 Harrison +FRM 54035 2002 21771 Jackson +FRM 54037 2002 38458 Jefferson +FRM 54039 2002 2066 Kanawha +FRM 54041 2002 11741 Lewis +FRM 54043 2002 2784 Lincoln +FRM 54045 2002 149 Logan +FRM 54047 2002 122 McDowell +FRM 54049 2002 9189 Marion +FRM 54051 2002 21582 Marshall +FRM 54053 2002 30630 Mason +FRM 54055 2002 8283 Mercer +FRM 54057 2002 15012 Mineral +FRM 54059 2002 122 Mingo +FRM 54061 2002 12455 Monongalia +FRM 54063 2002 23457 Monroe +FRM 54065 2002 5822 Morgan +FRM 54067 2002 9096 Nicholas +FRM 54069 2002 6817 Ohio +FRM 54071 2002 19804 Pendleton +FRM 54073 2002 3143 Pleasants +FRM 54075 2002 16852 Pocahontas +FRM 54077 2002 34519 Preston +FRM 54079 2002 10412 Putnam +FRM 54081 2002 6723 Raleigh +FRM 54083 2002 17216 Randolph +FRM 54085 2002 14132 Ritchie +FRM 54087 2002 14899 Roane +FRM 54089 2002 8871 Summers +FRM 54091 2002 9597 Taylor +FRM 54093 2002 5814 Tucker +FRM 54095 2002 8683 Tyler +FRM 54097 2002 12407 Upshur +FRM 54099 2002 3108 Wayne +FRM 54101 2002 1476 Webster +FRM 54103 2002 6547 Wetzel +FRM 54105 2002 6895 Wirt +FRM 54107 2002 15189 Wood +FRM 54109 2002 576 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_GOLF.ALO new file mode 100644 index 0000000..7984ca5 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_GOLF.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 54000 2002 91 WV +GC 54001 2002 1 Barbour +GC 54003 2002 2 Berkeley +GC 54005 2002 1 Boone +GC 54007 2002 0 Braxton +GC 54009 2002 1 Brooke +GC 54011 2002 7 Cabell +GC 54013 2002 0 Calhoun +GC 54015 2002 0 Clay +GC 54017 2002 0 Doddridge +GC 54019 2002 3 Fayette +GC 54021 2002 1 Gilmer +GC 54023 2002 0 Grant +GC 54025 2002 2 Greenbrier +GC 54027 2002 0 Hampshire +GC 54029 2002 2 Hancock +GC 54031 2002 2 Hardy +GC 54033 2002 6 Harrison +GC 54035 2002 3 Jackson +GC 54037 2002 3 Jefferson +GC 54039 2002 4 Kanawha +GC 54041 2002 1 Lewis +GC 54043 2002 0 Lincoln +GC 54045 2002 1 Logan +GC 54047 2002 1 McDowell +GC 54049 2002 4 Marion +GC 54051 2002 1 Marshall +GC 54053 2002 1 Mason +GC 54055 2002 1 Mercer +GC 54057 2002 1 Mineral +GC 54059 2002 2 Mingo +GC 54061 2002 4 Monongalia +GC 54063 2002 1 Monroe +GC 54065 2002 0 Morgan +GC 54067 2002 2 Nicholas +GC 54069 2002 1 Ohio +GC 54071 2002 0 Pendleton +GC 54073 2002 1 Pleasants +GC 54075 2002 1 Pocahontas +GC 54077 2002 1 Preston +GC 54079 2002 3 Putnam +GC 54081 2002 5 Raleigh +GC 54083 2002 0 Randolph +GC 54085 2002 1 Ritchie +GC 54087 2002 1 Roane +GC 54089 2002 1 Summers +GC 54091 2002 0 Taylor +GC 54093 2002 1 Tucker +GC 54095 2002 1 Tyler +GC 54097 2002 2 Upshur +GC 54099 2002 3 Wayne +GC 54101 2002 1 Webster +GC 54103 2002 0 Wetzel +GC 54105 2002 1 Wirt +GC 54107 2002 8 Wood +GC 54109 2002 1 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_HOLSL.ALO new file mode 100644 index 0000000..1648188 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_HOLSL.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 54000 2002 1707 WV +COM 54001 2002 5 Barbour +COM 54003 2002 46 Berkeley +COM 54005 2002 10 Boone +COM 54007 2002 18 Braxton +COM 54009 2002 14 Brooke +COM 54011 2002 146 Cabell +COM 54013 2002 1 Calhoun +COM 54015 2002 1 Clay +COM 54017 2002 1 Doddridge +COM 54019 2002 30 Fayette +COM 54021 2002 4 Gilmer +COM 54023 2002 4 Grant +COM 54025 2002 34 Greenbrier +COM 54027 2002 9 Hampshire +COM 54029 2002 16 Hancock +COM 54031 2002 5 Hardy +COM 54033 2002 76 Harrison +COM 54035 2002 25 Jackson +COM 54037 2002 22 Jefferson +COM 54039 2002 338 Kanawha +COM 54041 2002 17 Lewis +COM 54043 2002 5 Lincoln +COM 54045 2002 41 Logan +COM 54047 2002 9 McDowell +COM 54049 2002 62 Marion +COM 54051 2002 16 Marshall +COM 54053 2002 8 Mason +COM 54055 2002 51 Mercer +COM 54057 2002 19 Mineral +COM 54059 2002 19 Mingo +COM 54061 2002 76 Monongalia +COM 54063 2002 8 Monroe +COM 54065 2002 8 Morgan +COM 54067 2002 22 Nicholas +COM 54069 2002 89 Ohio +COM 54071 2002 5 Pendleton +COM 54073 2002 3 Pleasants +COM 54075 2002 8 Pocahontas +COM 54077 2002 28 Preston +COM 54079 2002 60 Putnam +COM 54081 2002 115 Raleigh +COM 54083 2002 36 Randolph +COM 54085 2002 7 Ritchie +COM 54087 2002 7 Roane +COM 54089 2002 6 Summers +COM 54091 2002 4 Taylor +COM 54093 2002 3 Tucker +COM 54095 2002 2 Tyler +COM 54097 2002 20 Upshur +COM 54099 2002 20 Wayne +COM 54101 2002 6 Webster +COM 54103 2002 12 Wetzel +COM 54105 2002 1 Wirt +COM 54107 2002 104 Wood +COM 54109 2002 5 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_HOUSE.ALO new file mode 100644 index 0000000..ae54a05 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_HOUSE.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 54000 2002 852101 WV +HOU 54001 2002 7394 Barbour +HOU 54003 2002 34783 Berkeley +HOU 54005 2002 11660 Boone +HOU 54007 2002 7435 Braxton +HOU 54009 2002 11097 Brooke +HOU 54011 2002 45619 Cabell +HOU 54013 2002 3882 Calhoun +HOU 54015 2002 4878 Clay +HOU 54017 2002 3667 Doddridge +HOU 54019 2002 21752 Fayette +HOU 54021 2002 3643 Gilmer +HOU 54023 2002 6167 Grant +HOU 54025 2002 17816 Greenbrier +HOU 54027 2002 11365 Hampshire +HOU 54029 2002 14712 Hancock +HOU 54031 2002 7281 Hardy +HOU 54033 2002 31140 Harrison +HOU 54035 2002 12393 Jackson +HOU 54037 2002 18613 Jefferson +HOU 54039 2002 94157 Kanawha +HOU 54041 2002 7957 Lewis +HOU 54043 2002 9994 Lincoln +HOU 54045 2002 17006 Logan +HOU 54047 2002 13529 McDowell +HOU 54049 2002 26620 Marion +HOU 54051 2002 15752 Marshall +HOU 54053 2002 12196 Mason +HOU 54055 2002 30155 Mercer +HOU 54057 2002 12485 Mineral +HOU 54059 2002 13106 Mingo +HOU 54061 2002 37001 Monongalia +HOU 54063 2002 7329 Monroe +HOU 54065 2002 8336 Morgan +HOU 54067 2002 12618 Nicholas +HOU 54069 2002 21907 Ohio +HOU 54071 2002 5141 Pendleton +HOU 54073 2002 3214 Pleasants +HOU 54075 2002 7583 Pocahontas +HOU 54077 2002 13533 Preston +HOU 54079 2002 22158 Putnam +HOU 54081 2002 35815 Raleigh +HOU 54083 2002 13565 Randolph +HOU 54085 2002 5511 Ritchie +HOU 54087 2002 7407 Roane +HOU 54089 2002 7311 Summers +HOU 54091 2002 7129 Taylor +HOU 54093 2002 4630 Tucker +HOU 54095 2002 4776 Tyler +HOU 54097 2002 10879 Upshur +HOU 54099 2002 19240 Wayne +HOU 54101 2002 5313 Webster +HOU 54103 2002 8334 Wetzel +HOU 54105 2002 3293 Wirt +HOU 54107 2002 40089 Wood +HOU 54109 2002 11735 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_LOGGN.ALO new file mode 100644 index 0000000..17e7a3a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_LOGGN.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 54000 2002 276799438 WV +LOG 54001 2002 3778350 Barbour +LOG 54003 2002 2625157 Berkeley +LOG 54005 2002 5841175 Boone +LOG 54007 2002 7801806 Braxton +LOG 54009 2002 1333373 Brooke +LOG 54011 2002 2090004 Cabell +LOG 54013 2002 3109339 Calhoun +LOG 54015 2002 7578973 Clay +LOG 54017 2002 2584914 Doddridge +LOG 54019 2002 9024096 Fayette +LOG 54021 2002 4680890 Gilmer +LOG 54023 2002 3177836 Grant +LOG 54025 2002 21786270 Greenbrier +LOG 54027 2002 5329517 Hampshire +LOG 54029 2002 1321317 Hancock +LOG 54031 2002 5044902 Hardy +LOG 54033 2002 2524413 Harrison +LOG 54035 2002 2062443 Jackson +LOG 54037 2002 2202558 Jefferson +LOG 54039 2002 6226889 Kanawha +LOG 54041 2002 4297031 Lewis +LOG 54043 2002 2561237 Lincoln +LOG 54045 2002 2788871 Logan +LOG 54047 2002 2707882 McDowell +LOG 54049 2002 3725036 Marion +LOG 54051 2002 1491044 Marshall +LOG 54053 2002 5408623 Mason +LOG 54055 2002 3014663 Mercer +LOG 54057 2002 4441809 Mineral +LOG 54059 2002 3544526 Mingo +LOG 54061 2002 4397613 Monongalia +LOG 54063 2002 6934384 Monroe +LOG 54065 2002 2737214 Morgan +LOG 54067 2002 22895799 Nicholas +LOG 54069 2002 1333373 Ohio +LOG 54071 2002 2727209 Pendleton +LOG 54073 2002 1345322 Pleasants +LOG 54075 2002 2805174 Pocahontas +LOG 54077 2002 9687961 Preston +LOG 54079 2002 3960824 Putnam +LOG 54081 2002 10454106 Raleigh +LOG 54083 2002 18020011 Randolph +LOG 54085 2002 5160896 Ritchie +LOG 54087 2002 2462284 Roane +LOG 54089 2002 2942979 Summers +LOG 54091 2002 3483948 Taylor +LOG 54093 2002 3954668 Tucker +LOG 54095 2002 2766580 Tyler +LOG 54097 2002 5211221 Upshur +LOG 54099 2002 3395160 Wayne +LOG 54101 2002 13189448 Webster +LOG 54103 2002 2629971 Wetzel +LOG 54105 2002 2287389 Wirt +LOG 54107 2002 3542010 Wood +LOG 54109 2002 4368952 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_LSCAP.ALO new file mode 100644 index 0000000..229d4c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_LSCAP.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 54000 2002 1498 WV +LSC 54001 2002 4 Barbour +LSC 54003 2002 31 Berkeley +LSC 54005 2002 4 Boone +LSC 54007 2002 4 Braxton +LSC 54009 2002 4 Brooke +LSC 54011 2002 29 Cabell +LSC 54013 2002 4 Calhoun +LSC 54015 2002 0 Clay +LSC 54017 2002 4 Doddridge +LSC 54019 2002 4 Fayette +LSC 54021 2002 0 Gilmer +LSC 54023 2002 0 Grant +LSC 54025 2002 20 Greenbrier +LSC 54027 2002 4 Hampshire +LSC 54029 2002 4 Hancock +LSC 54031 2002 0 Hardy +LSC 54033 2002 48 Harrison +LSC 54035 2002 4 Jackson +LSC 54037 2002 29 Jefferson +LSC 54039 2002 798 Kanawha +LSC 54041 2002 4 Lewis +LSC 54043 2002 0 Lincoln +LSC 54045 2002 28 Logan +LSC 54047 2002 28 McDowell +LSC 54049 2002 13 Marion +LSC 54051 2002 4 Marshall +LSC 54053 2002 0 Mason +LSC 54055 2002 4 Mercer +LSC 54057 2002 3 Mineral +LSC 54059 2002 4 Mingo +LSC 54061 2002 23 Monongalia +LSC 54063 2002 4 Monroe +LSC 54065 2002 4 Morgan +LSC 54067 2002 19 Nicholas +LSC 54069 2002 30 Ohio +LSC 54071 2002 4 Pendleton +LSC 54073 2002 0 Pleasants +LSC 54075 2002 0 Pocahontas +LSC 54077 2002 11 Preston +LSC 54079 2002 85 Putnam +LSC 54081 2002 88 Raleigh +LSC 54083 2002 6 Randolph +LSC 54085 2002 4 Ritchie +LSC 54087 2002 0 Roane +LSC 54089 2002 0 Summers +LSC 54091 2002 4 Taylor +LSC 54093 2002 4 Tucker +LSC 54095 2002 4 Tyler +LSC 54097 2002 6 Upshur +LSC 54099 2002 4 Wayne +LSC 54101 2002 0 Webster +LSC 54103 2002 0 Wetzel +LSC 54105 2002 0 Wirt +LSC 54107 2002 87 Wood +LSC 54109 2002 28 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_MNFG.ALO new file mode 100644 index 0000000..8836e90 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_MNFG.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 54000 2002 134272 WV +MFG 54001 2002 273 Barbour +MFG 54003 2002 7020 Berkeley +MFG 54005 2002 179 Boone +MFG 54007 2002 758 Braxton +MFG 54009 2002 11292 Brooke +MFG 54011 2002 10115 Cabell +MFG 54013 2002 146 Calhoun +MFG 54015 2002 80 Clay +MFG 54017 2002 222 Doddridge +MFG 54019 2002 1633 Fayette +MFG 54021 2002 398 Gilmer +MFG 54023 2002 1286 Grant +MFG 54025 2002 2696 Greenbrier +MFG 54027 2002 428 Hampshire +MFG 54029 2002 5082 Hancock +MFG 54031 2002 4997 Hardy +MFG 54033 2002 4047 Harrison +MFG 54035 2002 5321 Jackson +MFG 54037 2002 3412 Jefferson +MFG 54039 2002 12090 Kanawha +MFG 54041 2002 747 Lewis +MFG 54043 2002 72 Lincoln +MFG 54045 2002 1151 Logan +MFG 54047 2002 76 McDowell +MFG 54049 2002 2968 Marion +MFG 54051 2002 863 Marshall +MFG 54053 2002 1413 Mason +MFG 54055 2002 3674 Mercer +MFG 54057 2002 2708 Mineral +MFG 54059 2002 498 Mingo +MFG 54061 2002 4544 Monongalia +MFG 54063 2002 704 Monroe +MFG 54065 2002 417 Morgan +MFG 54067 2002 1860 Nicholas +MFG 54069 2002 2526 Ohio +MFG 54071 2002 128 Pendleton +MFG 54073 2002 884 Pleasants +MFG 54075 2002 717 Pocahontas +MFG 54077 2002 1868 Preston +MFG 54079 2002 3076 Putnam +MFG 54081 2002 1930 Raleigh +MFG 54083 2002 3773 Randolph +MFG 54085 2002 3007 Ritchie +MFG 54087 2002 978 Roane +MFG 54089 2002 112 Summers +MFG 54091 2002 726 Taylor +MFG 54093 2002 584 Tucker +MFG 54095 2002 1474 Tyler +MFG 54097 2002 1692 Upshur +MFG 54099 2002 1692 Wayne +MFG 54101 2002 473 Webster +MFG 54103 2002 3227 Wetzel +MFG 54105 2002 177 Wirt +MFG 54107 2002 11779 Wood +MFG 54109 2002 279 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_OIL.ALO new file mode 100644 index 0000000..92ddf98 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_OIL.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 54000 2002 2607 WV +OIL 54001 2002 13 Barbour +OIL 54003 2002 27 Berkeley +OIL 54005 2002 13 Boone +OIL 54007 2002 13 Braxton +OIL 54009 2002 0 Brooke +OIL 54011 2002 57 Cabell +OIL 54013 2002 97 Calhoun +OIL 54015 2002 13 Clay +OIL 54017 2002 40 Doddridge +OIL 54019 2002 27 Fayette +OIL 54021 2002 236 Gilmer +OIL 54023 2002 0 Grant +OIL 54025 2002 13 Greenbrier +OIL 54027 2002 13 Hampshire +OIL 54029 2002 0 Hancock +OIL 54031 2002 0 Hardy +OIL 54033 2002 191 Harrison +OIL 54035 2002 13 Jackson +OIL 54037 2002 0 Jefferson +OIL 54039 2002 247 Kanawha +OIL 54041 2002 213 Lewis +OIL 54043 2002 237 Lincoln +OIL 54045 2002 76 Logan +OIL 54047 2002 0 McDowell +OIL 54049 2002 13 Marion +OIL 54051 2002 13 Marshall +OIL 54053 2002 13 Mason +OIL 54055 2002 0 Mercer +OIL 54057 2002 0 Mineral +OIL 54059 2002 76 Mingo +OIL 54061 2002 103 Monongalia +OIL 54063 2002 0 Monroe +OIL 54065 2002 0 Morgan +OIL 54067 2002 0 Nicholas +OIL 54069 2002 0 Ohio +OIL 54071 2002 0 Pendleton +OIL 54073 2002 13 Pleasants +OIL 54075 2002 0 Pocahontas +OIL 54077 2002 0 Preston +OIL 54079 2002 0 Putnam +OIL 54081 2002 27 Raleigh +OIL 54083 2002 13 Randolph +OIL 54085 2002 235 Ritchie +OIL 54087 2002 191 Roane +OIL 54089 2002 0 Summers +OIL 54091 2002 13 Taylor +OIL 54093 2002 0 Tucker +OIL 54095 2002 13 Tyler +OIL 54097 2002 100 Upshur +OIL 54099 2002 76 Wayne +OIL 54101 2002 0 Webster +OIL 54103 2002 13 Wetzel +OIL 54105 2002 27 Wirt +OIL 54107 2002 104 Wood +OIL 54109 2002 25 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_POP.ALO new file mode 100644 index 0000000..2d1b5ae --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_POP.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 54000 2002 1805230 WV +POP 54001 2002 15541 Barbour +POP 54003 2002 81462 Berkeley +POP 54005 2002 25667 Boone +POP 54007 2002 14809 Braxton +POP 54009 2002 25053 Brooke +POP 54011 2002 95432 Cabell +POP 54013 2002 7372 Calhoun +POP 54015 2002 10398 Clay +POP 54017 2002 7452 Doddridge +POP 54019 2002 47153 Fayette +POP 54021 2002 7016 Gilmer +POP 54023 2002 11353 Grant +POP 54025 2002 34609 Greenbrier +POP 54027 2002 20969 Hampshire +POP 54029 2002 32070 Hancock +POP 54031 2002 12841 Hardy +POP 54033 2002 68001 Harrison +POP 54035 2002 28239 Jackson +POP 54037 2002 44972 Jefferson +POP 54039 2002 196109 Kanawha +POP 54041 2002 16909 Lewis +POP 54043 2002 22325 Lincoln +POP 54045 2002 37010 Logan +POP 54047 2002 26062 McDowell +POP 54049 2002 56334 Marion +POP 54051 2002 35022 Marshall +POP 54053 2002 26056 Mason +POP 54055 2002 62170 Mercer +POP 54057 2002 27115 Mineral +POP 54059 2002 27735 Mingo +POP 54061 2002 82723 Monongalia +POP 54063 2002 13330 Monroe +POP 54065 2002 15327 Morgan +POP 54067 2002 26381 Nicholas +POP 54069 2002 46273 Ohio +POP 54071 2002 7939 Pendleton +POP 54073 2002 7541 Pleasants +POP 54075 2002 8959 Pocahontas +POP 54077 2002 29650 Preston +POP 54079 2002 52309 Putnam +POP 54081 2002 79252 Raleigh +POP 54083 2002 28388 Randolph +POP 54085 2002 10423 Ritchie +POP 54087 2002 15299 Roane +POP 54089 2002 14009 Summers +POP 54091 2002 16138 Taylor +POP 54093 2002 7237 Tucker +POP 54095 2002 9413 Tyler +POP 54097 2002 23402 Upshur +POP 54099 2002 42439 Wayne +POP 54101 2002 9749 Webster +POP 54103 2002 17264 Wetzel +POP 54105 2002 5851 Wirt +POP 54107 2002 87731 Wood +POP 54109 2002 24947 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_RAIL.ALO new file mode 100644 index 0000000..0d9c5de --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_RAIL.ALO @@ -0,0 +1,82 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 54000 2002 11191.450 WV +RR 54001 2002 78.490 Barbour +RR 54003 2002 743.340 Berkeley +RR 54005 2002 233.390 Boone +RR 54007 2002 62.300 Braxton +RR 54009 2002 7.500 Brooke +RR 54011 2002 720.880 Cabell +RR 54013 2002 0.000 Calhoun +RR 54015 2002 0.000 Clay +RR 54017 2002 0.000 Doddridge +RR 54019 2002 511.080 Fayette +RR 54021 2002 1.290 Gilmer +RR 54023 2002 7.320 Grant +RR 54025 2002 458.240 Greenbrier +RR 54027 2002 210.320 Hampshire +RR 54029 2002 37.130 Hancock +RR 54031 2002 0.000 Hardy +RR 54033 2002 61.500 Harrison +RR 54035 2002 153.720 Jackson +RR 54037 2002 1160.660 Jefferson +RR 54039 2002 768.720 Kanawha +RR 54041 2002 27.560 Lewis +RR 54043 2002 112.830 Lincoln +RR 54045 2002 60.130 Logan +RR 54047 2002 597.570 McDowell +RR 54049 2002 55.800 Marion +RR 54051 2002 41.780 Marshall +RR 54053 2002 174.940 Mason +RR 54055 2002 484.050 Mercer +RR 54057 2002 176.900 Mineral +RR 54059 2002 1009.540 Mingo +RR 54061 2002 61.810 Monongalia +RR 54063 2002 158.870 Monroe +RR 54065 2002 512.530 Morgan +RR 54067 2002 28.380 Nicholas +RR 54069 2002 3.350 Ohio +RR 54071 2002 0.000 Pendleton +RR 54073 2002 108.620 Pleasants +RR 54075 2002 0.000 Pocahontas +RR 54077 2002 132.970 Preston +RR 54079 2002 493.030 Putnam +RR 54081 2002 43.600 Raleigh +RR 54083 2002 0.000 Randolph +RR 54085 2002 0.000 Ritchie +RR 54087 2002 0.000 Roane +RR 54089 2002 266.930 Summers +RR 54091 2002 95.230 Taylor +RR 54093 2002 0.000 Tucker +RR 54095 2002 39.420 Tyler +RR 54097 2002 62.220 Upshur +RR 54099 2002 898.080 Wayne +RR 54101 2002 15.950 Webster +RR 54103 2002 92.760 Wetzel +RR 54105 2002 0.000 Wirt +RR 54107 2002 112.480 Wood +RR 54109 2002 108.240 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_RVPRK.ALO new file mode 100644 index 0000000..75c2685 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_RVPRK.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 54000 2002 47 WV +RVP 54001 2002 0 Barbour +RVP 54003 2002 1 Berkeley +RVP 54005 2002 0 Boone +RVP 54007 2002 0 Braxton +RVP 54009 2002 0 Brooke +RVP 54011 2002 2 Cabell +RVP 54013 2002 0 Calhoun +RVP 54015 2002 0 Clay +RVP 54017 2002 0 Doddridge +RVP 54019 2002 1 Fayette +RVP 54021 2002 1 Gilmer +RVP 54023 2002 2 Grant +RVP 54025 2002 3 Greenbrier +RVP 54027 2002 7 Hampshire +RVP 54029 2002 0 Hancock +RVP 54031 2002 0 Hardy +RVP 54033 2002 0 Harrison +RVP 54035 2002 1 Jackson +RVP 54037 2002 1 Jefferson +RVP 54039 2002 3 Kanawha +RVP 54041 2002 0 Lewis +RVP 54043 2002 0 Lincoln +RVP 54045 2002 1 Logan +RVP 54047 2002 0 McDowell +RVP 54049 2002 0 Marion +RVP 54051 2002 0 Marshall +RVP 54053 2002 0 Mason +RVP 54055 2002 1 Mercer +RVP 54057 2002 1 Mineral +RVP 54059 2002 0 Mingo +RVP 54061 2002 3 Monongalia +RVP 54063 2002 1 Monroe +RVP 54065 2002 0 Morgan +RVP 54067 2002 1 Nicholas +RVP 54069 2002 1 Ohio +RVP 54071 2002 0 Pendleton +RVP 54073 2002 1 Pleasants +RVP 54075 2002 4 Pocahontas +RVP 54077 2002 1 Preston +RVP 54079 2002 0 Putnam +RVP 54081 2002 1 Raleigh +RVP 54083 2002 4 Randolph +RVP 54085 2002 0 Ritchie +RVP 54087 2002 0 Roane +RVP 54089 2002 0 Summers +RVP 54091 2002 0 Taylor +RVP 54093 2002 1 Tucker +RVP 54095 2002 0 Tyler +RVP 54097 2002 1 Upshur +RVP 54099 2002 0 Wayne +RVP 54101 2002 0 Webster +RVP 54103 2002 1 Wetzel +RVP 54105 2002 1 Wirt +RVP 54107 2002 1 Wood +RVP 54109 2002 0 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_SBC.ALO new file mode 100644 index 0000000..479048d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_SBC.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 54000 2002 1498 WV +SBC 54001 2002 5 Barbour +SBC 54003 2002 31 Berkeley +SBC 54005 2002 8 Boone +SBC 54007 2002 5 Braxton +SBC 54009 2002 8 Brooke +SBC 54011 2002 33 Cabell +SBC 54013 2002 2 Calhoun +SBC 54015 2002 0 Clay +SBC 54017 2002 2 Doddridge +SBC 54019 2002 15 Fayette +SBC 54021 2002 0 Gilmer +SBC 54023 2002 0 Grant +SBC 54025 2002 20 Greenbrier +SBC 54027 2002 7 Hampshire +SBC 54029 2002 10 Hancock +SBC 54031 2002 0 Hardy +SBC 54033 2002 48 Harrison +SBC 54035 2002 9 Jackson +SBC 54037 2002 14 Jefferson +SBC 54039 2002 798 Kanawha +SBC 54041 2002 5 Lewis +SBC 54043 2002 0 Lincoln +SBC 54045 2002 12 Logan +SBC 54047 2002 8 McDowell +SBC 54049 2002 13 Marion +SBC 54051 2002 11 Marshall +SBC 54053 2002 0 Mason +SBC 54055 2002 20 Mercer +SBC 54057 2002 3 Mineral +SBC 54059 2002 9 Mingo +SBC 54061 2002 23 Monongalia +SBC 54063 2002 4 Monroe +SBC 54065 2002 5 Morgan +SBC 54067 2002 19 Nicholas +SBC 54069 2002 30 Ohio +SBC 54071 2002 3 Pendleton +SBC 54073 2002 0 Pleasants +SBC 54075 2002 0 Pocahontas +SBC 54077 2002 11 Preston +SBC 54079 2002 85 Putnam +SBC 54081 2002 88 Raleigh +SBC 54083 2002 6 Randolph +SBC 54085 2002 3 Ritchie +SBC 54087 2002 0 Roane +SBC 54089 2002 0 Summers +SBC 54091 2002 5 Taylor +SBC 54093 2002 2 Tucker +SBC 54095 2002 3 Tyler +SBC 54097 2002 6 Upshur +SBC 54099 2002 14 Wayne +SBC 54101 2002 0 Webster +SBC 54103 2002 0 Wetzel +SBC 54105 2002 0 Wirt +SBC 54107 2002 87 Wood +SBC 54109 2002 8 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_SBR.ALO new file mode 100644 index 0000000..86c8c41 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_SBR.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 54000 2002 852101 WV +SBR 54001 2002 7394 Barbour +SBR 54003 2002 34783 Berkeley +SBR 54005 2002 11660 Boone +SBR 54007 2002 7435 Braxton +SBR 54009 2002 11097 Brooke +SBR 54011 2002 45619 Cabell +SBR 54013 2002 3882 Calhoun +SBR 54015 2002 4878 Clay +SBR 54017 2002 3667 Doddridge +SBR 54019 2002 21752 Fayette +SBR 54021 2002 3643 Gilmer +SBR 54023 2002 6167 Grant +SBR 54025 2002 17816 Greenbrier +SBR 54027 2002 11365 Hampshire +SBR 54029 2002 14712 Hancock +SBR 54031 2002 7281 Hardy +SBR 54033 2002 31140 Harrison +SBR 54035 2002 12393 Jackson +SBR 54037 2002 18613 Jefferson +SBR 54039 2002 94157 Kanawha +SBR 54041 2002 7957 Lewis +SBR 54043 2002 9994 Lincoln +SBR 54045 2002 17006 Logan +SBR 54047 2002 13529 McDowell +SBR 54049 2002 26620 Marion +SBR 54051 2002 15752 Marshall +SBR 54053 2002 12196 Mason +SBR 54055 2002 30155 Mercer +SBR 54057 2002 12485 Mineral +SBR 54059 2002 13106 Mingo +SBR 54061 2002 37001 Monongalia +SBR 54063 2002 7329 Monroe +SBR 54065 2002 8336 Morgan +SBR 54067 2002 12618 Nicholas +SBR 54069 2002 21907 Ohio +SBR 54071 2002 5141 Pendleton +SBR 54073 2002 3214 Pleasants +SBR 54075 2002 7583 Pocahontas +SBR 54077 2002 13533 Preston +SBR 54079 2002 22158 Putnam +SBR 54081 2002 35815 Raleigh +SBR 54083 2002 13565 Randolph +SBR 54085 2002 5511 Ritchie +SBR 54087 2002 7407 Roane +SBR 54089 2002 7311 Summers +SBR 54091 2002 7129 Taylor +SBR 54093 2002 4630 Tucker +SBR 54095 2002 4776 Tyler +SBR 54097 2002 10879 Upshur +SBR 54099 2002 19240 Wayne +SBR 54101 2002 5313 Webster +SBR 54103 2002 8334 Wetzel +SBR 54105 2002 3293 Wirt +SBR 54107 2002 40089 Wood +SBR 54109 2002 11735 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_SNOWM.ALO new file mode 100644 index 0000000..c95a94d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_SNOWM.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 54000 2002 561 WV +SNM 54001 2002 0 Barbour +SNM 54003 2002 0 Berkeley +SNM 54005 2002 0 Boone +SNM 54007 2002 0 Braxton +SNM 54009 2002 0 Brooke +SNM 54011 2002 0 Cabell +SNM 54013 2002 0 Calhoun +SNM 54015 2002 0 Clay +SNM 54017 2002 0 Doddridge +SNM 54019 2002 0 Fayette +SNM 54021 2002 0 Gilmer +SNM 54023 2002 88 Grant +SNM 54025 2002 0 Greenbrier +SNM 54027 2002 0 Hampshire +SNM 54029 2002 0 Hancock +SNM 54031 2002 0 Hardy +SNM 54033 2002 0 Harrison +SNM 54035 2002 0 Jackson +SNM 54037 2002 0 Jefferson +SNM 54039 2002 0 Kanawha +SNM 54041 2002 0 Lewis +SNM 54043 2002 0 Lincoln +SNM 54045 2002 0 Logan +SNM 54047 2002 0 McDowell +SNM 54049 2002 0 Marion +SNM 54051 2002 0 Marshall +SNM 54053 2002 0 Mason +SNM 54055 2002 0 Mercer +SNM 54057 2002 37 Mineral +SNM 54059 2002 0 Mingo +SNM 54061 2002 0 Monongalia +SNM 54063 2002 0 Monroe +SNM 54065 2002 0 Morgan +SNM 54067 2002 0 Nicholas +SNM 54069 2002 0 Ohio +SNM 54071 2002 126 Pendleton +SNM 54073 2002 0 Pleasants +SNM 54075 2002 0 Pocahontas +SNM 54077 2002 34 Preston +SNM 54079 2002 0 Putnam +SNM 54081 2002 0 Raleigh +SNM 54083 2002 35 Randolph +SNM 54085 2002 0 Ritchie +SNM 54087 2002 0 Roane +SNM 54089 2002 0 Summers +SNM 54091 2002 0 Taylor +SNM 54093 2002 138 Tucker +SNM 54095 2002 0 Tyler +SNM 54097 2002 0 Upshur +SNM 54099 2002 0 Wayne +SNM 54101 2002 103 Webster +SNM 54103 2002 0 Wetzel +SNM 54105 2002 0 Wirt +SNM 54107 2002 0 Wood +SNM 54109 2002 0 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_WIB.ALO new file mode 100644 index 0000000..d8bcf7b --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_WIB.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 54000 1990 378 WV +WIB 54001 1990 5 Barbour +WIB 54003 1990 1 Berkeley +WIB 54005 1990 1 Boone +WIB 54007 1990 7 Braxton +WIB 54009 1990 9 Brooke +WIB 54011 1990 17 Cabell +WIB 54013 1990 0 Calhoun +WIB 54015 1990 4 Clay +WIB 54017 1990 0 Doddridge +WIB 54019 1990 11 Fayette +WIB 54021 1990 0 Gilmer +WIB 54023 1990 8 Grant +WIB 54025 1990 8 Greenbrier +WIB 54027 1990 8 Hampshire +WIB 54029 1990 14 Hancock +WIB 54031 1990 3 Hardy +WIB 54033 1990 1 Harrison +WIB 54035 1990 15 Jackson +WIB 54037 1990 5 Jefferson +WIB 54039 1990 20 Kanawha +WIB 54041 1990 2 Lewis +WIB 54043 1990 3 Lincoln +WIB 54045 1990 4 Logan +WIB 54047 1990 0 McDowell +WIB 54049 1990 5 Marion +WIB 54051 1990 13 Marshall +WIB 54053 1990 34 Mason +WIB 54055 1990 1 Mercer +WIB 54057 1990 4 Mineral +WIB 54059 1990 3 Mingo +WIB 54061 1990 12 Monongalia +WIB 54063 1990 1 Monroe +WIB 54065 1990 2 Morgan +WIB 54067 1990 15 Nicholas +WIB 54069 1990 7 Ohio +WIB 54071 1990 1 Pendleton +WIB 54073 1990 10 Pleasants +WIB 54075 1990 4 Pocahontas +WIB 54077 1990 8 Preston +WIB 54079 1990 11 Putnam +WIB 54081 1990 6 Raleigh +WIB 54083 1990 1 Randolph +WIB 54085 1990 0 Ritchie +WIB 54087 1990 0 Roane +WIB 54089 1990 17 Summers +WIB 54091 1990 8 Taylor +WIB 54093 1990 6 Tucker +WIB 54095 1990 8 Tyler +WIB 54097 1990 0 Upshur +WIB 54099 1990 17 Wayne +WIB 54101 1990 0 Webster +WIB 54103 1990 6 Wetzel +WIB 54105 1990 5 Wirt +WIB 54107 1990 25 Wood +WIB 54109 1990 2 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WV_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WV_WOB.ALO new file mode 100644 index 0000000..69d9a27 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WV_WOB.ALO @@ -0,0 +1,80 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 54000 1990 378 WV +WOB 54001 1990 5 Barbour +WOB 54003 1990 1 Berkeley +WOB 54005 1990 1 Boone +WOB 54007 1990 7 Braxton +WOB 54009 1990 9 Brooke +WOB 54011 1990 17 Cabell +WOB 54013 1990 0 Calhoun +WOB 54015 1990 4 Clay +WOB 54017 1990 0 Doddridge +WOB 54019 1990 11 Fayette +WOB 54021 1990 0 Gilmer +WOB 54023 1990 8 Grant +WOB 54025 1990 8 Greenbrier +WOB 54027 1990 8 Hampshire +WOB 54029 1990 14 Hancock +WOB 54031 1990 3 Hardy +WOB 54033 1990 1 Harrison +WOB 54035 1990 15 Jackson +WOB 54037 1990 5 Jefferson +WOB 54039 1990 20 Kanawha +WOB 54041 1990 2 Lewis +WOB 54043 1990 3 Lincoln +WOB 54045 1990 4 Logan +WOB 54047 1990 0 McDowell +WOB 54049 1990 5 Marion +WOB 54051 1990 13 Marshall +WOB 54053 1990 34 Mason +WOB 54055 1990 1 Mercer +WOB 54057 1990 4 Mineral +WOB 54059 1990 3 Mingo +WOB 54061 1990 12 Monongalia +WOB 54063 1990 1 Monroe +WOB 54065 1990 2 Morgan +WOB 54067 1990 15 Nicholas +WOB 54069 1990 7 Ohio +WOB 54071 1990 1 Pendleton +WOB 54073 1990 10 Pleasants +WOB 54075 1990 4 Pocahontas +WOB 54077 1990 8 Preston +WOB 54079 1990 11 Putnam +WOB 54081 1990 6 Raleigh +WOB 54083 1990 1 Randolph +WOB 54085 1990 0 Ritchie +WOB 54087 1990 0 Roane +WOB 54089 1990 17 Summers +WOB 54091 1990 8 Taylor +WOB 54093 1990 6 Tucker +WOB 54095 1990 8 Tyler +WOB 54097 1990 0 Upshur +WOB 54099 1990 17 Wayne +WOB 54101 1990 0 Webster +WOB 54103 1990 6 Wetzel +WOB 54105 1990 5 Wirt +WOB 54107 1990 25 Wood +WOB 54109 1990 2 Wyoming +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_AIRTR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_AIRTR.ALO new file mode 100644 index 0000000..b65d813 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_AIRTR.ALO @@ -0,0 +1,50 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent AIRCRAFT NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +AIR 56000 2002 42.184 WY +AIR 56001 2002 0.310 Albany +AIR 56003 2002 0.027 Big Horn +AIR 56005 2002 0.212 Campbell +AIR 56007 2002 0.237 Carbon +AIR 56009 2002 0.024 Converse +AIR 56011 2002 0.000 Crook +AIR 56013 2002 0.191 Fremont +AIR 56015 2002 0.080 Goshen +AIR 56017 2002 0.000 Hot Springs +AIR 56019 2002 0.047 Johnson +AIR 56021 2002 1.370 Laramie +AIR 56023 2002 0.000 Lincoln +AIR 56025 2002 4.390 Natrona +AIR 56027 2002 0.000 Niobrara +AIR 56029 2002 0.421 Park +AIR 56031 2002 0.000 Platte +AIR 56033 2002 11.560 Sheridan +AIR 56035 2002 0.065 Sublette +AIR 56037 2002 11.029 Sweetwater +AIR 56039 2002 11.948 Teton +AIR 56041 2002 0.127 Uinta +AIR 56043 2002 0.130 Washakie +AIR 56045 2002 0.018 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_COAL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_COAL.ALO new file mode 100644 index 0000000..7f4a58a --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_COAL.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent UNDERGROUND COAL PRODUCTION TONS +DOE/EIA 2002 Annual Coal Report + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MIN 56000 2002 0 WY +MIN 56001 2002 0 Albany +MIN 56003 2002 0 Big Horn +MIN 56005 2002 0 Campbell +MIN 56007 2002 0 Carbon +MIN 56009 2002 0 Converse +MIN 56011 2002 0 Crook +MIN 56013 2002 0 Fremont +MIN 56015 2002 0 Goshen +MIN 56017 2002 0 Hot Springs +MIN 56019 2002 0 Johnson +MIN 56021 2002 0 Laramie +MIN 56023 2002 0 Lincoln +MIN 56025 2002 0 Natrona +MIN 56027 2002 0 Niobrara +MIN 56029 2002 0 Park +MIN 56031 2002 0 Platte +MIN 56033 2002 0 Sheridan +MIN 56035 2002 0 Sublette +MIN 56037 2002 0 Sweetwater +MIN 56039 2002 0 Teton +MIN 56041 2002 0 Uinta +MIN 56043 2002 0 Washakie +MIN 56045 2002 0 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_CONST.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_CONST.ALO new file mode 100644 index 0000000..12e758d --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_CONST.ALO @@ -0,0 +1,50 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2003 DOLLAR VALUE of CONSTRUCTION +adjusted for relative geographic cost of construction materials. + Const_Dollars * (1-(1/(1+100/Area_Mod_Factor))) +from McGraw-Hill Construction (values) and Craftsman (cost adj) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +CON 56000 2003 1032996 WY +CON 56001 2003 80836 Albany +CON 56003 2003 12666 Big Horn +CON 56005 2003 41655 Campbell +CON 56007 2003 33288 Carbon +CON 56009 2003 12515 Converse +CON 56011 2003 9343 Crook +CON 56013 2003 77562 Fremont +CON 56015 2003 14551 Goshen +CON 56017 2003 1029 Hot Springs +CON 56019 2003 28278 Johnson +CON 56021 2003 144440 Laramie +CON 56023 2003 45975 Lincoln +CON 56025 2003 73319 Natrona +CON 56027 2003 14944 Niobrara +CON 56029 2003 78961 Park +CON 56031 2003 8404 Platte +CON 56033 2003 69852 Sheridan +CON 56035 2003 17454 Sublette +CON 56037 2003 53165 Sweetwater +CON 56039 2003 160226 Teton +CON 56041 2003 20696 Uinta +CON 56043 2003 22599 Washakie +CON 56045 2003 11240 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_FARMS.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_FARMS.ALO new file mode 100644 index 0000000..c7326c2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_FARMS.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HARVESTED CROPLAND +2002 USDA Census of Agriculture + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +FRM 56000 2002 1298709 WY +FRM 56001 2002 55751 Albany +FRM 56003 2002 70310 Big Horn +FRM 56005 2002 26185 Campbell +FRM 56007 2002 72981 Carbon +FRM 56009 2002 32175 Converse +FRM 56011 2002 35855 Crook +FRM 56013 2002 100961 Fremont +FRM 56015 2002 120619 Goshen +FRM 56017 2002 13855 Hot Springs +FRM 56019 2002 32706 Johnson +FRM 56021 2002 144743 Laramie +FRM 56023 2002 74069 Lincoln +FRM 56025 2002 28352 Natrona +FRM 56027 2002 35947 Niobrara +FRM 56029 2002 90705 Park +FRM 56031 2002 71436 Platte +FRM 56033 2002 55763 Sheridan +FRM 56035 2002 106221 Sublette +FRM 56037 2002 15430 Sweetwater +FRM 56039 2002 12899 Teton +FRM 56041 2002 52791 Uinta +FRM 56043 2002 35592 Washakie +FRM 56045 2002 13363 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_GOLF.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_GOLF.ALO new file mode 100644 index 0000000..7e81a91 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_GOLF.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent GOLF COURSES AND COUNTRY CLUBS +CBP NAICS 713910; pre-2002 CBP SIC 7992 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +GC 56000 2002 41 WY +GC 56001 2002 1 Albany +GC 56003 2002 2 Big Horn +GC 56005 2002 3 Campbell +GC 56007 2002 1 Carbon +GC 56009 2002 2 Converse +GC 56011 2002 3 Crook +GC 56013 2002 4 Fremont +GC 56015 2002 0 Goshen +GC 56017 2002 1 Hot Springs +GC 56019 2002 2 Johnson +GC 56021 2002 3 Laramie +GC 56023 2002 2 Lincoln +GC 56025 2002 3 Natrona +GC 56027 2002 0 Niobrara +GC 56029 2002 3 Park +GC 56031 2002 2 Platte +GC 56033 2002 2 Sheridan +GC 56035 2002 1 Sublette +GC 56037 2002 1 Sweetwater +GC 56039 2002 2 Teton +GC 56041 2002 0 Uinta +GC 56043 2002 2 Washakie +GC 56045 2002 1 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_HOLSL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_HOLSL.ALO new file mode 100644 index 0000000..ce05716 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_HOLSL.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WHOLESALE ESTABLISHMENTS +CBP NAICS 42----; pre-2002 CBP SIC 50-- + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +COM 56000 2002 833 WY +COM 56001 2002 26 Albany +COM 56003 2002 13 Big Horn +COM 56005 2002 96 Campbell +COM 56007 2002 15 Carbon +COM 56009 2002 13 Converse +COM 56011 2002 4 Crook +COM 56013 2002 40 Fremont +COM 56015 2002 24 Goshen +COM 56017 2002 5 Hot Springs +COM 56019 2002 10 Johnson +COM 56021 2002 83 Laramie +COM 56023 2002 10 Lincoln +COM 56025 2002 205 Natrona +COM 56027 2002 4 Niobrara +COM 56029 2002 43 Park +COM 56031 2002 9 Platte +COM 56033 2002 50 Sheridan +COM 56035 2002 10 Sublette +COM 56037 2002 73 Sweetwater +COM 56039 2002 40 Teton +COM 56041 2002 38 Uinta +COM 56043 2002 16 Washakie +COM 56045 2002 6 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_HOUSE.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_HOUSE.ALO new file mode 100644 index 0000000..f0daefc --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_HOUSE.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent SINGLE AND DOUBLE (DUPLEX) FAMILY HOMES + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +HOU 56000 2002 227928 WY +HOU 56001 2002 15596 Albany +HOU 56003 2002 5130 Big Horn +HOU 56005 2002 13605 Campbell +HOU 56007 2002 8380 Carbon +HOU 56009 2002 5717 Converse +HOU 56011 2002 2997 Crook +HOU 56013 2002 15806 Fremont +HOU 56015 2002 5905 Goshen +HOU 56017 2002 2549 Hot Springs +HOU 56019 2002 3539 Johnson +HOU 56021 2002 34817 Laramie +HOU 56023 2002 7204 Lincoln +HOU 56025 2002 30211 Natrona +HOU 56027 2002 1331 Niobrara +HOU 56029 2002 12139 Park +HOU 56031 2002 4565 Platte +HOU 56033 2002 12762 Sheridan +HOU 56035 2002 3678 Sublette +HOU 56037 2002 16053 Sweetwater +HOU 56039 2002 10812 Teton +HOU 56041 2002 8186 Uinta +HOU 56043 2002 3679 Washakie +HOU 56045 2002 3267 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_LOGGN.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_LOGGN.ALO new file mode 100644 index 0000000..f45a78f --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_LOGGN.ALO @@ -0,0 +1,50 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent 2002 Timber Product Output (cu ft) +from US Forest Service TPO database. http://www.fia.fs.fed.us/program-features/tpo/ + +10/19/05 epa: use TPO data instead of CBP employee data. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LOG 56000 2002 29328118 WY +LOG 56001 2002 2881070 Albany +LOG 56003 2002 246794 Big Horn +LOG 56005 2002 0 Campbell +LOG 56007 2002 2367836 Carbon +LOG 56009 2002 677368 Converse +LOG 56011 2002 6817317 Crook +LOG 56013 2002 4498331 Fremont +LOG 56015 2002 433053 Goshen +LOG 56017 2002 380520 Hot Springs +LOG 56019 2002 1455426 Johnson +LOG 56021 2002 314227 Laramie +LOG 56023 2002 1256333 Lincoln +LOG 56025 2002 1003402 Natrona +LOG 56027 2002 0 Niobrara +LOG 56029 2002 888660 Park +LOG 56031 2002 62355 Platte +LOG 56033 2002 1124689 Sheridan +LOG 56035 2002 435656 Sublette +LOG 56037 2002 70000 Sweetwater +LOG 56039 2002 2703127 Teton +LOG 56041 2002 7950 Uinta +LOG 56043 2002 595188 Washakie +LOG 56045 2002 1108816 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_LSCAP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_LSCAP.ALO new file mode 100644 index 0000000..95370c9 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_LSCAP.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN LANDSCAPING SERVICES +CBP NAICS 561730; pre-2002 CBP SIC 0780 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +LSC 56000 2002 359 WY +LSC 56001 2002 29 Albany +LSC 56003 2002 6 Big Horn +LSC 56005 2002 6 Campbell +LSC 56007 2002 11 Carbon +LSC 56009 2002 6 Converse +LSC 56011 2002 6 Crook +LSC 56013 2002 6 Fremont +LSC 56015 2002 6 Goshen +LSC 56017 2002 0 Hot Springs +LSC 56019 2002 31 Johnson +LSC 56021 2002 69 Laramie +LSC 56023 2002 6 Lincoln +LSC 56025 2002 69 Natrona +LSC 56027 2002 0 Niobrara +LSC 56029 2002 13 Park +LSC 56031 2002 0 Platte +LSC 56033 2002 8 Sheridan +LSC 56035 2002 6 Sublette +LSC 56037 2002 6 Sweetwater +LSC 56039 2002 69 Teton +LSC 56041 2002 0 Uinta +LSC 56043 2002 6 Washakie +LSC 56045 2002 0 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_MNFG.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_MNFG.ALO new file mode 100644 index 0000000..bbf37c8 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_MNFG.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent NUMBER OF EMPLOYEES IN MANUFACTURING +CBP NAICS 31----, 321///, 322///, 323///, 324///, 325///, 326///, 327///, 331///, +332///, 333///, 334///, 335///, 336///, 337///, 339///, and 5111//; pre-2002 CBP SIC 20-- +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +MFG 56000 2002 20334 WY +MFG 56001 2002 1094 Albany +MFG 56003 2002 534 Big Horn +MFG 56005 2002 754 Campbell +MFG 56007 2002 768 Carbon +MFG 56009 2002 171 Converse +MFG 56011 2002 513 Crook +MFG 56013 2002 992 Fremont +MFG 56015 2002 321 Goshen +MFG 56017 2002 73 Hot Springs +MFG 56019 2002 197 Johnson +MFG 56021 2002 2625 Laramie +MFG 56023 2002 854 Lincoln +MFG 56025 2002 3275 Natrona +MFG 56027 2002 17 Niobrara +MFG 56029 2002 1157 Park +MFG 56031 2002 219 Platte +MFG 56033 2002 691 Sheridan +MFG 56035 2002 180 Sublette +MFG 56037 2002 4110 Sweetwater +MFG 56039 2002 598 Teton +MFG 56041 2002 550 Uinta +MFG 56043 2002 491 Washakie +MFG 56045 2002 150 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_OIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_OIL.ALO new file mode 100644 index 0000000..9cfd5d2 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_OIL.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent EMPLOYEES IN OIL & GAS EXTRACTION, AND DRILLING OIL & GAS WELLS +CBP NAICS 211/// and 213111; pre-2002 CBP SIC 1300 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +OIL 56000 2002 5284 WY +OIL 56001 2002 36 Albany +OIL 56003 2002 132 Big Horn +OIL 56005 2002 460 Campbell +OIL 56007 2002 298 Carbon +OIL 56009 2002 64 Converse +OIL 56011 2002 22 Crook +OIL 56013 2002 405 Fremont +OIL 56015 2002 0 Goshen +OIL 56017 2002 298 Hot Springs +OIL 56019 2002 160 Johnson +OIL 56021 2002 132 Laramie +OIL 56023 2002 298 Lincoln +OIL 56025 2002 1288 Natrona +OIL 56027 2002 0 Niobrara +OIL 56029 2002 390 Park +OIL 56031 2002 22 Platte +OIL 56033 2002 165 Sheridan +OIL 56035 2002 52 Sublette +OIL 56037 2002 402 Sweetwater +OIL 56039 2002 0 Teton +OIL 56041 2002 383 Uinta +OIL 56043 2002 59 Washakie +OIL 56045 2002 218 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_POP.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_POP.ALO new file mode 100644 index 0000000..efb45e3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_POP.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent HUMAN POPULATION + + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +POP 56000 2002 499192 WY +POP 56001 2002 31598 Albany +POP 56003 2002 11230 Big Horn +POP 56005 2002 36168 Campbell +POP 56007 2002 15387 Carbon +POP 56009 2002 12359 Converse +POP 56011 2002 5900 Crook +POP 56013 2002 36044 Fremont +POP 56015 2002 12293 Goshen +POP 56017 2002 4726 Hot Springs +POP 56019 2002 7416 Johnson +POP 56021 2002 83183 Laramie +POP 56023 2002 14946 Lincoln +POP 56025 2002 67523 Natrona +POP 56027 2002 2269 Niobrara +POP 56029 2002 25956 Park +POP 56031 2002 8776 Platte +POP 56033 2002 26960 Sheridan +POP 56035 2002 6221 Sublette +POP 56037 2002 37303 Sweetwater +POP 56039 2002 18591 Teton +POP 56041 2002 19778 Uinta +POP 56043 2002 7943 Washakie +POP 56045 2002 6622 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_RAIL.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_RAIL.ALO new file mode 100644 index 0000000..8f77744 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_RAIL.ALO @@ -0,0 +1,50 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent LOCOMOTIVE NOx TONS +from Draft 2002 NEI + +9/1/05 epa: Modifies to treat PR & VI as additional to US Total. + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RR 56000 2002 22524.360 WY +RR 56001 2002 2075.610 Albany +RR 56003 2002 175.750 Big Horn +RR 56005 2002 1896.990 Campbell +RR 56007 2002 2074.920 Carbon +RR 56009 2002 2322.790 Converse +RR 56011 2002 466.980 Crook +RR 56013 2002 234.110 Fremont +RR 56015 2002 1401.810 Goshen +RR 56017 2002 125.520 Hot Springs +RR 56019 2002 0.000 Johnson +RR 56021 2002 1715.190 Laramie +RR 56023 2002 956.900 Lincoln +RR 56025 2002 263.230 Natrona +RR 56027 2002 1157.640 Niobrara +RR 56029 2002 64.920 Park +RR 56031 2002 1323.790 Platte +RR 56033 2002 927.130 Sheridan +RR 56035 2002 0.000 Sublette +RR 56037 2002 3146.330 Sweetwater +RR 56039 2002 0.000 Teton +RR 56041 2002 1084.640 Uinta +RR 56043 2002 170.660 Washakie +RR 56045 2002 939.450 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_RVPRK.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_RVPRK.ALO new file mode 100644 index 0000000..0712833 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_RVPRK.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RECREATIONAL VEHICLE PARKS AND CAMPGROUNDS +CBP NAICS 72121/; pre-2002 CBP SIC 7030 + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +RVP 56000 2002 108 WY +RVP 56001 2002 7 Albany +RVP 56003 2002 1 Big Horn +RVP 56005 2002 2 Campbell +RVP 56007 2002 4 Carbon +RVP 56009 2002 1 Converse +RVP 56011 2002 1 Crook +RVP 56013 2002 8 Fremont +RVP 56015 2002 0 Goshen +RVP 56017 2002 1 Hot Springs +RVP 56019 2002 8 Johnson +RVP 56021 2002 5 Laramie +RVP 56023 2002 4 Lincoln +RVP 56025 2002 5 Natrona +RVP 56027 2002 0 Niobrara +RVP 56029 2002 14 Park +RVP 56031 2002 1 Platte +RVP 56033 2002 7 Sheridan +RVP 56035 2002 8 Sublette +RVP 56037 2002 3 Sweetwater +RVP 56039 2002 24 Teton +RVP 56041 2002 1 Uinta +RVP 56043 2002 2 Washakie +RVP 56045 2002 1 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_SBC.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_SBC.ALO new file mode 100644 index 0000000..129eb20 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_SBC.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF COMMERCIAL SNOWBLOWERS +Same as LSCAP allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBC 56000 2002 359 WY +SBC 56001 2002 29 Albany +SBC 56003 2002 5 Big Horn +SBC 56005 2002 18 Campbell +SBC 56007 2002 11 Carbon +SBC 56009 2002 6 Converse +SBC 56011 2002 3 Crook +SBC 56013 2002 17 Fremont +SBC 56015 2002 6 Goshen +SBC 56017 2002 0 Hot Springs +SBC 56019 2002 4 Johnson +SBC 56021 2002 69 Laramie +SBC 56023 2002 7 Lincoln +SBC 56025 2002 69 Natrona +SBC 56027 2002 0 Niobrara +SBC 56029 2002 13 Park +SBC 56031 2002 0 Platte +SBC 56033 2002 8 Sheridan +SBC 56035 2002 3 Sublette +SBC 56037 2002 18 Sweetwater +SBC 56039 2002 69 Teton +SBC 56041 2002 0 Uinta +SBC 56043 2002 4 Washakie +SBC 56045 2002 0 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_SBR.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_SBR.ALO new file mode 100644 index 0000000..3b172f4 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_SBR.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF RESIDENTIAL SNOWBLOWERS +Same as HOUSE allocation factors, with value set to 0 for counties with snowfall < 15" + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SBR 56000 2002 227928 WY +SBR 56001 2002 15596 Albany +SBR 56003 2002 5130 Big Horn +SBR 56005 2002 13605 Campbell +SBR 56007 2002 8380 Carbon +SBR 56009 2002 5717 Converse +SBR 56011 2002 2997 Crook +SBR 56013 2002 15806 Fremont +SBR 56015 2002 5905 Goshen +SBR 56017 2002 2549 Hot Springs +SBR 56019 2002 3539 Johnson +SBR 56021 2002 34817 Laramie +SBR 56023 2002 7204 Lincoln +SBR 56025 2002 30211 Natrona +SBR 56027 2002 1331 Niobrara +SBR 56029 2002 12139 Park +SBR 56031 2002 4565 Platte +SBR 56033 2002 12762 Sheridan +SBR 56035 2002 3678 Sublette +SBR 56037 2002 16053 Sweetwater +SBR 56039 2002 10812 Teton +SBR 56041 2002 8186 Uinta +SBR 56043 2002 3679 Washakie +SBR 56045 2002 3267 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_SNOWM.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_SNOWM.ALO new file mode 100644 index 0000000..d94bbd3 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_SNOWM.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent RELATIVE NUMBER OF SNOWMOBILES +Allocated to counties using snowfall limit of 40" and inverse human population; Alaska uses direct human population + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +SNM 56000 2002 2215 WY +SNM 56001 2002 32 Albany +SNM 56003 2002 89 Big Horn +SNM 56005 2002 28 Campbell +SNM 56007 2002 65 Carbon +SNM 56009 2002 81 Converse +SNM 56011 2002 169 Crook +SNM 56013 2002 28 Fremont +SNM 56015 2002 81 Goshen +SNM 56017 2002 212 Hot Springs +SNM 56019 2002 135 Johnson +SNM 56021 2002 12 Laramie +SNM 56023 2002 67 Lincoln +SNM 56025 2002 15 Natrona +SNM 56027 2002 441 Niobrara +SNM 56029 2002 39 Park +SNM 56031 2002 114 Platte +SNM 56033 2002 37 Sheridan +SNM 56035 2002 161 Sublette +SNM 56037 2002 27 Sweetwater +SNM 56039 2002 54 Teton +SNM 56041 2002 51 Uinta +SNM 56043 2002 126 Washakie +SNM 56045 2002 151 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_WIB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_WIB.ALO new file mode 100644 index 0000000..16d8276 --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_WIB.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR INBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WIB 56000 1990 1849 WY +WIB 56001 1990 91 Albany +WIB 56003 1990 57 Big Horn +WIB 56005 1990 12 Campbell +WIB 56007 1990 176 Carbon +WIB 56009 1990 27 Converse +WIB 56011 1990 31 Crook +WIB 56013 1990 216 Fremont +WIB 56015 1990 18 Goshen +WIB 56017 1990 6 Hot Springs +WIB 56019 1990 22 Johnson +WIB 56021 1990 4 Laramie +WIB 56023 1990 52 Lincoln +WIB 56025 1990 93 Natrona +WIB 56027 1990 5 Niobrara +WIB 56029 1990 68 Park +WIB 56031 1990 67 Platte +WIB 56033 1990 10 Sheridan +WIB 56035 1990 141 Sublette +WIB 56037 1990 171 Sweetwater +WIB 56039 1990 554 Teton +WIB 56041 1990 15 Uinta +WIB 56043 1990 7 Washakie +WIB 56045 1990 6 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/ALLOCATE/WY_WOB.ALO b/NONROAD/NR08a/DATA/ALLOCATE/WY_WOB.ALO new file mode 100644 index 0000000..f887dbe --- /dev/null +++ b/NONROAD/NR08a/DATA/ALLOCATE/WY_WOB.ALO @@ -0,0 +1,48 @@ +This is the allocation indicator file used by the NONROAD model. +These data are used to allocate from state level equipment population +to county level equipment populations. It could also be used to +allocate national level equipment populations to states level. Additional +data can be added to allocate from from county to subcounty. + +These data represent WATER SURFACE AREA FOR OUTBOARD RECREATIONAL MARINE CRAFT (sq km navigable water) +1990 GICS (inland water area); GIS analysis of coast lengths (coastal navigable water) + +------------------------------------------------------------------------ +This is the packet that contains the allocation indicator data. Each +indicator value is a measured or projected value such as human +population or land area. The format is as follows. + +1-3 Indicator code +6-10 FIPS code (can be global FIPS codes e.g. 06000 = all of CA) +11-15 Subregion code (blank means is entire nation, state or county) +16-20 Year of estimate or prediction +21-40 Indicator value +41-45 Blank (unused) +46+ Optional Description (unused) +------------------------------------------------------------------------ +/INDICATORS/ +WOB 56000 1990 1849 WY +WOB 56001 1990 91 Albany +WOB 56003 1990 57 Big Horn +WOB 56005 1990 12 Campbell +WOB 56007 1990 176 Carbon +WOB 56009 1990 27 Converse +WOB 56011 1990 31 Crook +WOB 56013 1990 216 Fremont +WOB 56015 1990 18 Goshen +WOB 56017 1990 6 Hot Springs +WOB 56019 1990 22 Johnson +WOB 56021 1990 4 Laramie +WOB 56023 1990 52 Lincoln +WOB 56025 1990 93 Natrona +WOB 56027 1990 5 Niobrara +WOB 56029 1990 68 Park +WOB 56031 1990 67 Platte +WOB 56033 1990 10 Sheridan +WOB 56035 1990 141 Sublette +WOB 56037 1990 171 Sweetwater +WOB 56039 1990 554 Teton +WOB 56041 1990 15 Uinta +WOB 56043 1990 7 Washakie +WOB 56045 1990 6 Weston +/END/ diff --git a/NONROAD/NR08a/DATA/DAILY/DAYTMPRV.DAT b/NONROAD/NR08a/DATA/DAILY/DAYTMPRV.DAT new file mode 100644 index 0000000..b496c7f --- /dev/null +++ b/NONROAD/NR08a/DATA/DAILY/DAYTMPRV.DAT @@ -0,0 +1,2617 @@ +Daily Temperatures (Min, Max, Avg) and RVP for every state and every day of the year. + +Version History: + 06Ded04: Updated RVP to EPA values. + 01Dec04: Based on 1971-2000 Climatological Normals. + 16Mar05: Cimulus added temporary dummy values for Puerto Rico and US Virgin Islands + 02Jun05: Daily1: EPA adds correct historical PR & VI temperatures from Oct05 AIR model version submittal. + and replaces PR & VI RVPs with FL RVPs, pending location of actual RVP data for PR & VI. + +----------------------------------------------------------------- +This data file contains only one packet. + +The format is as follows: + + 1-2 integer --- State FIPS (1 or 2 digits) + 3-6 character --- State Abbreviation (Not Used) + 7-10 character --- Parameter (TMAX, TMIN, TAVG, or RVP) + 12-13 integer --- Month (1 - 12) + 14-199 real --- 31 daily values, 6 char wide, separated by spaces. + (-99 is for unused days like Feb 30-31, but RDDAY.FOR code also ignores Feb 29) +------------------------------------------ + +ID ST Parm MO DAY01 DAY02 DAY03 DAY04 DAY05 DAY06 DAY07 DAY08 DAY09 DAY10 DAY11 DAY12 DAY13 DAY14 DAY15 DAY16 DAY17 DAY18 DAY19 DAY20 DAY21 DAY22 DAY23 DAY24 DAY25 DAY26 DAY27 DAY28 DAY29 DAY30 DAY31 +/DAYTEMPRVP/ + 0 US TMAX 1 46.6 46.5 46.4 46.3 46.3 46.2 46.2 46.1 46.1 46.0 46.0 46.0 46.0 46.0 46.0 46.0 46.1 46.1 46.2 46.3 46.3 46.4 46.5 46.6 46.7 46.8 47.0 47.1 47.2 47.4 47.5 + 0 US TMAX 2 47.7 47.9 48.0 48.2 48.4 48.6 48.8 49.0 49.2 49.4 49.6 49.8 50.0 50.2 50.4 50.7 50.9 51.1 51.4 51.6 51.8 52.1 52.4 52.6 52.9 53.1 53.4 53.7 53.8 -99.0 -99.0 + 0 US TMAX 3 53.9 54.2 54.5 54.8 55.0 55.3 55.6 55.9 56.2 56.5 56.7 57.0 57.3 57.6 57.9 58.2 58.5 58.8 59.1 59.3 59.7 59.9 60.2 60.5 60.8 61.1 61.4 61.7 62.0 62.3 62.6 + 0 US TMAX 4 62.9 63.2 63.5 63.8 64.1 64.4 64.7 65.0 65.3 65.6 65.9 66.2 66.5 66.8 67.0 67.3 67.6 67.9 68.2 68.5 68.8 69.0 69.3 69.6 69.9 70.2 70.5 70.7 71.0 71.3 -99.0 + 0 US TMAX 5 71.5 71.8 72.1 72.4 72.6 72.9 73.2 73.4 73.7 74.0 74.2 74.6 74.8 75.1 75.3 75.6 75.9 76.1 76.4 76.7 76.9 77.2 77.4 77.7 78.0 78.2 78.5 78.8 79.0 79.3 79.5 + 0 US TMAX 6 79.8 80.0 80.3 80.5 80.8 81.0 81.3 81.5 81.7 81.9 82.2 82.4 82.6 82.8 83.0 83.2 83.4 83.6 83.8 84.0 84.2 84.3 84.5 84.7 84.8 85.0 85.2 85.3 85.5 85.6 -99.0 + 0 US TMAX 7 85.7 85.9 86.0 86.2 86.3 86.4 86.5 86.6 86.7 86.8 86.9 86.9 87.0 87.1 87.1 87.2 87.3 87.3 87.4 87.4 87.4 87.5 87.5 87.5 87.5 87.5 87.4 87.4 87.4 87.3 87.3 + 0 US TMAX 8 87.3 87.2 87.2 87.1 87.1 87.0 86.9 86.8 86.8 86.7 86.6 86.5 86.4 86.3 86.2 86.0 85.9 85.8 85.7 85.5 85.4 85.2 85.1 84.9 84.8 84.6 84.4 84.2 84.1 83.9 83.7 + 0 US TMAX 9 83.5 83.3 83.1 82.9 82.7 82.5 82.2 82.0 81.7 81.5 81.3 81.0 80.8 80.6 80.3 80.0 79.7 79.5 79.2 78.9 78.7 78.4 78.1 77.8 77.5 77.2 76.8 76.5 76.2 75.9 -99.0 + 0 US TMAX 10 75.6 75.2 74.9 74.6 74.2 73.9 73.6 73.2 72.9 72.5 72.2 71.8 71.5 71.1 70.7 70.4 70.0 69.7 69.3 68.9 68.5 68.2 67.8 67.4 67.0 66.6 66.2 65.8 65.5 65.1 64.6 + 0 US TMAX 11 64.2 63.8 63.5 63.0 62.7 62.3 61.9 61.5 61.1 60.7 60.4 60.0 59.6 59.2 58.9 58.5 58.2 57.8 57.4 57.1 56.7 56.4 56.0 55.7 55.3 55.0 54.6 54.3 53.9 53.6 -99.0 + 0 US TMAX 12 53.3 53.0 52.7 52.3 52.0 51.8 51.4 51.2 50.9 50.6 50.4 50.1 49.9 49.7 49.4 49.2 49.0 48.8 48.6 48.4 48.2 48.0 47.8 47.7 47.5 47.4 47.2 47.1 47.0 46.8 46.7 + 0 US TMIN 1 28.0 27.9 27.8 27.7 27.6 27.5 27.4 27.4 27.3 27.3 27.2 27.2 27.2 27.2 27.1 27.1 27.1 27.1 27.1 27.1 27.2 27.2 27.2 27.3 27.3 27.4 27.5 27.6 27.7 27.8 27.9 + 0 US TMIN 2 27.9 28.1 28.2 28.4 28.5 28.6 28.8 28.9 29.1 29.2 29.3 29.5 29.7 29.9 30.0 30.2 30.5 30.7 30.9 31.1 31.3 31.5 31.8 32.0 32.2 32.5 32.7 33.0 33.1 -99.0 -99.0 + 0 US TMIN 3 33.2 33.5 33.7 34.0 34.2 34.5 34.8 35.0 35.3 35.5 35.7 36.0 36.2 36.5 36.7 37.0 37.2 37.4 37.7 37.9 38.2 38.4 38.6 38.9 39.1 39.3 39.5 39.8 40.0 40.2 40.5 + 0 US TMIN 4 40.7 40.9 41.1 41.3 41.6 41.8 42.0 42.3 42.6 42.8 43.1 43.3 43.6 43.8 44.1 44.3 44.6 44.9 45.1 45.4 45.7 46.0 46.3 46.5 46.8 47.1 47.4 47.7 48.0 48.3 -99.0 + 0 US TMIN 5 48.6 48.9 49.2 49.5 49.8 50.1 50.4 50.7 51.0 51.3 51.6 51.9 52.2 52.5 52.7 53.0 53.3 53.6 53.9 54.1 54.4 54.7 55.0 55.2 55.5 55.8 56.0 56.3 56.6 56.9 57.1 + 0 US TMIN 6 57.4 57.6 57.9 58.1 58.4 58.6 58.9 59.1 59.4 59.6 59.8 60.0 60.2 60.4 60.6 60.9 61.1 61.3 61.5 61.7 61.8 62.0 62.2 62.4 62.6 62.7 62.9 63.1 63.2 63.4 -99.0 + 0 US TMIN 7 63.5 63.7 63.9 64.0 64.1 64.2 64.4 64.4 64.6 64.7 64.7 64.8 64.9 64.9 65.0 65.1 65.1 65.2 65.2 65.3 65.4 65.4 65.5 65.5 65.5 65.4 65.4 65.4 65.3 65.3 65.2 + 0 US TMIN 8 65.3 65.2 65.1 65.1 65.0 64.9 64.9 64.8 64.7 64.7 64.6 64.5 64.4 64.3 64.2 64.0 63.9 63.8 63.7 63.5 63.4 63.2 63.1 62.9 62.8 62.6 62.4 62.2 62.0 61.8 61.7 + 0 US TMIN 9 61.5 61.3 61.1 60.9 60.7 60.4 60.2 60.0 59.7 59.4 59.2 58.9 58.6 58.4 58.1 57.8 57.5 57.2 56.9 56.6 56.3 55.9 55.6 55.3 54.9 54.6 54.2 53.8 53.5 53.1 -99.0 + 0 US TMIN 10 52.7 52.3 52.0 51.6 51.2 50.9 50.5 50.2 49.8 49.5 49.1 48.8 48.4 48.1 47.8 47.5 47.1 46.8 46.5 46.2 45.9 45.6 45.3 45.0 44.7 44.5 44.1 43.9 43.6 43.3 43.0 + 0 US TMIN 11 42.8 42.5 42.2 42.0 41.7 41.5 41.2 40.9 40.6 40.4 40.1 39.8 39.5 39.3 39.0 38.7 38.4 38.1 37.8 37.6 37.3 37.0 36.7 36.4 36.1 35.8 35.5 35.2 34.9 34.6 -99.0 + 0 US TMIN 12 34.4 34.0 33.8 33.5 33.2 33.0 32.7 32.4 32.2 31.9 31.7 31.5 31.2 31.0 30.8 30.6 30.4 30.2 30.0 29.8 29.6 29.4 29.3 29.1 28.9 28.8 28.7 28.5 28.4 28.2 28.1 + 0 US TAVG 1 37.3 37.2 37.1 37.1 37.0 36.9 36.8 36.8 36.7 36.7 36.7 36.6 36.6 36.6 36.6 36.6 36.6 36.6 36.7 36.7 36.7 36.8 36.9 37.0 37.1 37.2 37.2 37.3 37.5 37.6 37.8 + 0 US TAVG 2 37.8 38.0 38.2 38.3 38.5 38.6 38.8 39.0 39.1 39.3 39.5 39.7 39.9 40.0 40.3 40.5 40.7 40.9 41.1 41.4 41.6 41.8 42.1 42.3 42.6 42.8 43.1 43.3 43.4 -99.0 -99.0 + 0 US TAVG 3 43.6 43.9 44.1 44.4 44.7 44.9 45.2 45.5 45.7 46.0 46.3 46.5 46.8 47.1 47.3 47.6 47.9 48.1 48.4 48.6 48.9 49.2 49.5 49.7 50.0 50.2 50.5 50.8 51.0 51.3 51.5 + 0 US TAVG 4 51.8 52.1 52.3 52.6 52.9 53.1 53.4 53.7 53.9 54.2 54.5 54.8 55.0 55.3 55.6 55.8 56.1 56.4 56.7 57.0 57.3 57.5 57.8 58.1 58.4 58.7 58.9 59.3 59.5 59.8 -99.0 + 0 US TAVG 5 60.1 60.4 60.7 61.0 61.3 61.6 61.9 62.1 62.4 62.7 62.9 63.2 63.5 63.8 64.1 64.4 64.6 64.9 65.2 65.4 65.7 66.0 66.2 66.5 66.8 67.0 67.3 67.6 67.8 68.1 68.3 + 0 US TAVG 6 68.6 68.8 69.1 69.4 69.6 69.8 70.1 70.3 70.6 70.8 71.0 71.2 71.4 71.6 71.8 72.1 72.2 72.5 72.7 72.8 73.0 73.2 73.4 73.6 73.7 73.9 74.1 74.2 74.4 74.5 -99.0 + 0 US TAVG 7 74.7 74.8 74.9 75.1 75.2 75.3 75.5 75.6 75.6 75.7 75.8 75.9 76.0 76.0 76.1 76.2 76.2 76.3 76.4 76.4 76.5 76.5 76.5 76.5 76.5 76.5 76.4 76.4 76.4 76.3 76.3 + 0 US TAVG 8 76.3 76.3 76.2 76.1 76.1 76.0 75.9 75.8 75.8 75.7 75.6 75.5 75.4 75.3 75.2 75.1 74.9 74.8 74.7 74.5 74.4 74.2 74.1 73.9 73.8 73.6 73.4 73.3 73.1 72.9 72.7 + 0 US TAVG 9 72.5 72.3 72.1 71.9 71.7 71.5 71.2 71.0 70.8 70.5 70.2 70.0 69.7 69.5 69.2 69.0 68.7 68.4 68.1 67.8 67.5 67.2 66.9 66.5 66.2 65.9 65.6 65.2 64.9 64.5 -99.0 + 0 US TAVG 10 64.2 63.8 63.5 63.1 62.8 62.4 62.1 61.7 61.4 61.0 60.7 60.3 60.0 59.6 59.3 59.0 58.6 58.3 57.9 57.6 57.2 56.9 56.6 56.2 55.9 55.5 55.2 54.9 54.6 54.2 53.9 + 0 US TAVG 11 53.6 53.2 52.9 52.5 52.2 51.9 51.6 51.2 50.9 50.6 50.3 49.9 49.6 49.3 48.9 48.6 48.3 47.9 47.7 47.3 47.0 46.7 46.4 46.0 45.7 45.4 45.1 44.8 44.5 44.1 -99.0 + 0 US TAVG 12 43.8 43.5 43.2 42.9 42.7 42.4 42.1 41.8 41.6 41.3 41.1 40.8 40.6 40.3 40.1 39.9 39.7 39.5 39.3 39.1 38.9 38.7 38.6 38.4 38.3 38.1 37.9 37.8 37.7 37.5 37.4 + 0 US RVP 1 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 + 0 US RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 + 0 US RVP 3 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 10.7 + 0 US RVP 4 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 -99.0 + 0 US RVP 5 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 + 0 US RVP 6 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 -99.0 + 0 US RVP 7 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 + 0 US RVP 8 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 + 0 US RVP 9 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 -99.0 + 0 US RVP 10 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 8.8 + 0 US RVP 11 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 -99.0 + 0 US RVP 12 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 + 1 AL TMAX 1 54.4 54.3 54.3 54.2 54.1 54.1 53.9 53.8 53.7 53.7 53.6 53.6 53.6 53.7 53.7 53.8 53.9 54.0 54.2 54.2 54.3 54.4 54.4 54.4 54.6 54.9 55.0 55.2 55.3 55.5 55.7 + 1 AL TMAX 2 55.9 56.1 56.3 56.5 56.8 57.0 57.3 57.5 57.7 57.9 58.2 58.5 58.6 58.9 59.2 59.6 59.6 60.0 60.2 60.6 60.8 61.1 61.4 61.7 61.9 62.1 62.5 62.8 62.9 -99.0 -99.0 + 1 AL TMAX 3 63.1 63.5 63.7 63.9 64.4 64.7 64.9 65.1 65.6 65.8 66.0 66.2 66.7 66.8 67.1 67.4 67.7 67.9 68.1 68.5 68.7 69.0 69.1 69.6 69.8 69.9 70.1 70.5 70.8 70.9 71.1 + 1 AL TMAX 4 71.4 71.7 71.9 72.1 72.4 72.6 72.8 72.9 73.4 73.5 73.7 73.9 74.3 74.5 74.6 74.9 75.2 75.4 75.6 75.8 76.1 76.3 76.5 76.7 76.9 77.3 77.4 77.6 77.8 78.1 -99.0 + 1 AL TMAX 5 78.3 78.5 78.7 79.0 79.2 79.4 79.6 79.9 80.1 80.4 80.5 80.8 81.0 81.3 81.4 81.7 81.9 82.1 82.4 82.6 82.8 83.1 83.4 83.6 83.8 83.9 84.3 84.5 84.7 84.9 85.1 + 1 AL TMAX 6 85.4 85.6 85.8 86.0 86.3 86.5 86.6 86.9 87.2 87.3 87.4 87.5 87.7 87.9 88.3 88.3 88.5 88.6 88.6 88.8 89.1 89.2 89.2 89.3 89.4 89.5 89.7 89.8 89.9 90.0 -99.0 + 1 AL TMAX 7 90.1 90.1 90.1 90.2 90.2 90.3 90.4 90.4 90.4 90.6 90.6 90.6 90.8 90.8 90.8 90.9 90.9 90.9 91.0 91.0 91.1 91.1 91.1 91.1 91.1 91.2 91.2 91.2 91.2 91.2 91.2 + 1 AL TMAX 8 91.2 91.2 91.2 91.1 91.1 91.1 91.0 91.0 90.9 90.9 90.8 90.8 90.7 90.6 90.5 90.4 90.3 90.3 90.2 90.1 90.1 90.0 89.8 89.6 89.5 89.3 89.3 89.1 88.9 88.9 88.6 + 1 AL TMAX 9 88.4 88.3 88.2 88.0 87.8 87.6 87.5 87.2 86.9 86.7 86.6 86.5 86.0 85.9 85.6 85.4 85.2 84.8 84.6 84.4 84.1 83.9 83.5 83.2 82.9 82.7 82.2 82.0 81.7 81.4 -99.0 + 1 AL TMAX 10 81.0 80.7 80.3 80.0 79.7 79.3 79.0 78.8 78.3 78.0 77.8 77.3 77.0 76.7 76.3 76.0 75.7 75.3 75.0 74.7 74.3 74.0 73.6 73.3 73.1 72.6 72.3 72.0 71.6 71.3 71.0 + 1 AL TMAX 11 70.6 70.3 70.1 69.6 69.3 69.1 68.6 68.3 68.1 67.7 67.3 67.1 66.7 66.4 66.1 65.7 65.4 65.2 64.7 64.5 64.2 63.8 63.5 63.2 62.8 62.5 62.3 61.9 61.5 61.3 -99.0 + 1 AL TMAX 12 61.0 60.6 60.3 60.1 59.8 59.5 59.2 58.9 58.7 58.5 58.2 57.9 57.6 57.5 57.2 57.0 56.8 56.6 56.4 56.2 56.0 55.9 55.7 55.5 55.3 55.1 55.0 55.0 54.7 54.6 54.5 + 1 AL TMIN 1 33.3 33.3 33.3 33.2 33.0 32.9 32.9 32.8 32.7 32.7 32.6 32.6 32.5 32.5 32.5 32.5 32.5 32.6 32.6 32.7 32.7 32.9 32.9 33.0 33.0 33.0 33.2 33.2 33.3 33.3 33.4 + 1 AL TMIN 2 33.4 33.5 33.6 33.8 34.0 34.1 34.2 34.3 34.4 34.5 34.8 35.1 35.1 35.3 35.4 35.6 36.0 36.1 36.3 36.5 36.9 37.1 37.3 37.5 37.9 38.2 38.4 38.7 38.8 -99.0 -99.0 + 1 AL TMIN 3 38.9 39.3 39.5 39.8 40.1 40.4 40.6 40.9 41.2 41.4 41.6 42.0 42.2 42.4 42.5 42.9 43.1 43.2 43.5 43.6 44.0 44.1 44.3 44.5 44.6 44.9 45.0 45.2 45.4 45.5 45.7 + 1 AL TMIN 4 45.7 46.0 46.1 46.4 46.5 46.7 46.8 47.0 47.3 47.5 47.7 47.8 48.1 48.4 48.5 48.8 48.9 49.4 49.6 49.8 50.1 50.4 50.7 50.9 51.3 51.6 51.8 52.2 52.6 52.8 -99.0 + 1 AL TMIN 5 53.2 53.6 53.8 54.3 54.6 54.9 55.2 55.6 55.9 56.1 56.5 56.7 57.1 57.4 57.7 58.0 58.3 58.5 58.9 59.1 59.4 59.7 60.0 60.2 60.5 60.8 61.1 61.3 61.5 61.9 62.1 + 1 AL TMIN 6 62.3 62.5 62.8 63.1 63.3 63.5 63.9 64.0 64.2 64.3 64.7 65.0 65.1 65.2 65.3 65.7 65.9 66.1 66.1 66.3 66.6 66.8 66.9 67.0 67.2 67.5 67.6 67.7 67.8 67.9 -99.0 + 1 AL TMIN 7 68.1 68.2 68.3 68.5 68.6 68.7 68.9 68.9 69.1 69.1 69.1 69.1 69.2 69.3 69.3 69.4 69.4 69.5 69.5 69.5 69.6 69.6 69.7 69.7 69.7 69.6 69.6 69.5 69.4 69.4 69.3 + 1 AL TMIN 8 69.4 69.3 69.2 69.2 69.1 69.1 69.0 69.0 69.0 69.0 68.8 68.7 68.6 68.4 68.4 68.3 68.3 68.2 68.1 68.1 68.0 67.8 67.6 67.4 67.4 67.3 67.2 67.1 66.9 66.7 66.6 + 1 AL TMIN 9 66.6 66.5 66.3 65.9 65.8 65.6 65.5 65.2 65.0 64.7 64.5 64.1 64.0 63.7 63.3 63.0 62.7 62.3 61.9 61.6 61.1 60.8 60.5 59.9 59.6 59.0 58.7 58.1 57.7 57.2 -99.0 + 1 AL TMIN 10 56.7 56.2 55.7 55.2 54.7 54.3 53.8 53.4 52.9 52.5 52.1 51.7 51.3 50.9 50.5 50.2 49.8 49.4 49.1 48.7 48.5 48.1 47.8 47.5 47.2 46.9 46.7 46.4 46.1 45.9 45.7 + 1 AL TMIN 11 45.5 45.1 44.9 44.8 44.4 44.2 44.0 43.8 43.4 43.3 43.0 43.0 42.5 42.3 42.2 41.9 41.5 41.3 41.2 41.0 40.6 40.3 40.2 40.0 39.7 39.4 39.2 39.0 38.8 38.4 -99.0 + 1 AL TMIN 12 38.2 38.1 37.8 37.5 37.3 37.1 36.9 36.7 36.4 36.3 36.1 35.9 35.7 35.5 35.4 35.2 35.1 34.9 34.8 34.5 34.4 34.3 34.2 34.1 34.0 33.7 33.6 33.6 33.5 33.4 33.3 + 1 AL TAVG 1 43.8 43.8 43.7 43.7 43.7 43.6 43.4 43.4 43.3 43.2 43.1 43.1 43.1 43.1 43.2 43.2 43.3 43.4 43.5 43.5 43.7 43.7 43.7 43.8 43.8 43.9 43.9 44.0 44.2 44.5 44.6 + 1 AL TAVG 2 44.7 44.8 45.0 45.2 45.4 45.6 45.7 45.8 46.0 46.3 46.6 46.7 46.9 47.2 47.3 47.6 47.8 48.0 48.3 48.6 48.8 49.2 49.3 49.6 49.9 50.2 50.4 50.8 50.9 -99.0 -99.0 + 1 AL TAVG 3 51.1 51.3 51.6 52.0 52.2 52.5 52.8 53.1 53.3 53.6 53.8 54.2 54.4 54.6 54.9 55.2 55.4 55.6 55.8 56.2 56.3 56.5 56.8 57.0 57.3 57.4 57.5 57.8 58.2 58.3 58.4 + 1 AL TAVG 4 58.6 58.7 59.0 59.3 59.5 59.7 59.8 59.9 60.4 60.6 60.7 60.8 61.2 61.5 61.7 61.8 62.1 62.4 62.7 62.8 63.1 63.4 63.6 63.8 64.2 64.4 64.7 64.9 65.3 65.5 -99.0 + 1 AL TAVG 5 65.8 66.2 66.4 66.6 66.9 67.3 67.4 67.7 68.0 68.3 68.5 68.8 69.2 69.4 69.5 69.8 70.2 70.4 70.5 70.8 71.3 71.4 71.6 71.8 72.3 72.5 72.6 72.8 73.2 73.5 73.6 + 1 AL TAVG 6 73.8 74.1 74.4 74.6 74.8 75.1 75.2 75.4 75.7 75.8 76.1 76.3 76.4 76.6 76.7 77.0 77.2 77.3 77.5 77.6 77.9 77.9 78.0 78.2 78.3 78.5 78.6 78.8 78.9 78.9 -99.0 + 1 AL TAVG 7 79.0 79.1 79.2 79.3 79.4 79.6 79.8 79.8 79.8 79.8 79.8 79.8 79.9 79.9 80.0 80.1 80.2 80.2 80.2 80.3 80.4 80.5 80.5 80.5 80.5 80.5 80.5 80.4 80.4 80.3 80.3 + 1 AL TAVG 8 80.4 80.3 80.3 80.3 80.3 80.2 80.0 80.0 79.9 79.8 79.8 79.8 79.7 79.6 79.5 79.4 79.4 79.3 79.1 79.0 78.9 78.8 78.7 78.7 78.6 78.4 78.2 78.0 77.9 77.8 77.7 + 1 AL TAVG 9 77.6 77.3 77.2 77.0 76.9 76.7 76.4 76.2 76.0 75.8 75.6 75.3 75.0 74.7 74.5 74.1 74.0 73.6 73.3 73.0 72.6 72.3 72.0 71.6 71.2 70.9 70.5 70.1 69.7 69.3 -99.0 + 1 AL TAVG 10 68.9 68.4 68.0 67.6 67.1 66.9 66.5 66.0 65.6 65.3 65.0 64.5 64.2 63.7 63.4 63.2 62.7 62.4 62.1 61.7 61.4 61.1 60.7 60.4 60.2 59.7 59.5 59.2 58.9 58.6 58.4 + 1 AL TAVG 11 58.0 57.7 57.6 57.1 56.9 56.6 56.4 56.0 55.7 55.6 55.2 54.9 54.7 54.3 54.0 53.8 53.6 53.2 52.9 52.7 52.5 52.1 51.9 51.6 51.2 51.0 50.7 50.5 50.2 49.8 -99.0 + 1 AL TAVG 12 49.6 49.4 49.1 48.7 48.5 48.4 48.1 47.8 47.5 47.4 47.1 46.9 46.7 46.5 46.4 46.0 45.9 45.7 45.6 45.4 45.3 45.0 44.9 44.8 44.7 44.5 44.5 44.3 44.1 44.0 43.9 + 1 AL RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 1 AL RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 + 1 AL RVP 3 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 1 AL RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 + 1 AL RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 1 AL RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 + 1 AL RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 + 1 AL RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 + 1 AL RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 + 1 AL RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 1 AL RVP 11 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 + 1 AL RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 2 AK TMAX 1 19.3 19.2 19.2 19.0 19.0 18.9 18.8 18.5 18.5 18.5 18.5 18.5 18.4 18.5 18.5 18.5 18.7 18.8 18.8 18.8 19.1 19.1 19.1 19.3 19.4 19.6 19.6 19.7 19.9 20.0 20.4 + 2 AK TMAX 2 20.4 20.6 20.7 20.9 21.1 21.3 21.6 21.8 21.9 22.2 22.4 22.7 22.8 23.0 23.3 23.6 23.9 24.1 24.2 24.6 24.9 25.1 25.2 25.7 26.0 26.1 26.6 26.8 26.9 -99.0 -99.0 + 2 AK TMAX 3 27.0 27.4 27.8 28.0 28.3 28.8 28.9 29.3 29.6 29.8 30.3 30.5 30.9 31.2 31.4 31.9 32.2 32.5 32.9 33.2 33.3 33.9 34.2 34.4 34.8 35.2 35.5 35.8 36.2 36.7 36.9 + 2 AK TMAX 4 37.3 37.7 38.0 38.3 38.7 39.0 39.3 39.7 40.2 40.4 40.8 41.2 41.7 41.9 42.3 42.8 43.1 43.6 43.9 44.3 44.8 45.1 45.5 46.0 46.2 46.8 47.1 47.4 48.0 48.2 -99.0 + 2 AK TMAX 5 48.9 49.2 49.5 50.0 50.3 50.9 51.2 51.5 52.0 52.3 52.6 53.1 53.4 53.6 54.1 54.4 54.6 55.2 55.4 55.6 56.2 56.4 56.6 56.8 57.3 57.5 57.7 57.9 58.4 58.6 58.8 + 2 AK TMAX 6 59.1 59.5 59.6 59.8 60.0 60.3 60.6 60.8 60.9 61.2 61.4 61.7 61.8 61.9 62.1 62.5 62.6 62.8 62.8 63.0 63.1 63.3 63.6 63.7 63.7 64.0 64.1 64.1 64.2 64.3 -99.0 + 2 AK TMAX 7 64.4 64.5 64.8 65.0 65.1 65.1 65.2 65.2 65.3 65.3 65.4 65.4 65.4 65.4 65.3 65.4 65.4 65.4 65.4 65.3 65.3 65.7 65.6 65.7 65.6 65.6 65.4 65.3 65.3 65.2 65.1 + 2 AK TMAX 8 65.1 65.0 65.0 64.9 64.6 64.6 64.5 64.4 64.3 64.2 64.1 63.8 63.7 63.7 63.4 63.2 63.1 62.8 62.6 62.6 62.3 62.1 61.9 61.6 61.4 61.3 61.0 60.6 60.4 60.2 60.0 + 2 AK TMAX 9 59.6 59.4 59.1 58.6 58.5 58.2 57.7 57.4 57.2 56.6 56.4 56.1 55.6 55.4 54.7 54.4 53.8 53.5 53.1 52.6 52.4 51.7 51.3 50.7 50.3 49.7 49.1 48.7 48.1 47.5 -99.0 + 2 AK TMAX 10 47.0 46.4 45.8 45.4 44.7 44.3 43.7 43.2 42.6 41.9 41.6 40.9 40.6 39.8 39.5 38.8 38.5 37.8 37.4 36.8 36.4 35.8 35.5 34.8 34.4 34.0 33.4 33.0 32.5 32.0 31.5 + 2 AK TMAX 11 31.0 30.6 30.1 29.8 29.3 28.9 28.6 28.0 27.8 27.4 26.9 26.7 26.4 26.0 25.7 25.6 25.3 24.9 24.7 24.5 24.3 24.0 23.7 23.6 23.4 23.3 23.2 22.9 22.9 22.5 -99.0 + 2 AK TMAX 12 22.5 22.4 22.4 22.3 22.2 22.0 22.0 21.9 21.7 21.7 21.5 21.4 21.3 21.3 21.1 20.9 20.8 20.8 20.7 20.7 20.3 20.2 20.2 20.2 20.0 19.9 19.7 19.6 19.5 19.5 19.3 + 2 AK TMIN 1 5.8 5.8 5.7 5.4 5.3 5.0 5.0 5.0 5.0 4.9 4.9 4.8 4.8 4.8 4.8 4.8 4.7 4.7 4.7 4.7 4.8 4.8 4.8 4.8 4.8 4.8 4.9 5.2 5.2 5.3 5.3 + 2 AK TMIN 2 5.4 5.5 5.7 5.7 5.7 5.9 6.0 6.2 6.3 6.4 6.5 6.7 6.8 6.9 7.1 7.2 7.4 7.5 7.7 7.8 8.2 8.2 8.5 8.6 8.7 8.9 9.1 9.3 9.5 -99.0 -99.0 + 2 AK TMIN 3 9.6 9.7 9.8 10.2 10.4 10.6 10.8 11.2 11.4 11.6 11.8 12.3 12.4 12.6 13.1 13.4 13.5 13.9 14.2 14.7 15.0 15.3 15.8 16.0 16.3 16.8 17.1 17.6 17.9 18.3 18.7 + 2 AK TMIN 4 19.2 19.7 19.8 20.5 20.7 21.4 21.7 22.1 22.5 22.8 23.2 23.6 24.1 24.3 24.8 25.2 25.6 26.1 26.3 26.7 27.3 27.5 27.9 28.3 28.6 29.2 29.4 29.8 30.4 30.5 -99.0 + 2 AK TMIN 5 31.0 31.3 31.7 32.0 32.4 32.8 33.1 33.5 33.9 34.1 34.5 34.8 35.1 35.5 35.9 36.1 36.3 36.8 37.1 37.3 37.6 38.0 38.2 38.6 38.8 39.2 39.4 39.7 40.1 40.3 40.6 + 2 AK TMIN 6 40.9 41.2 41.4 41.7 42.0 42.3 42.5 42.8 43.0 43.2 43.5 43.8 43.9 44.0 44.5 44.7 44.8 45.0 45.3 45.7 45.8 45.8 46.0 46.3 46.7 46.8 46.8 47.0 47.3 47.4 -99.0 + 2 AK TMIN 7 47.7 47.8 47.9 48.0 48.2 48.4 48.6 48.6 48.7 48.8 48.9 48.9 49.0 49.0 49.1 49.2 49.1 49.2 49.2 49.4 49.5 49.4 49.4 49.3 49.3 49.3 49.2 49.0 48.9 48.9 48.8 + 2 AK TMIN 8 48.8 48.6 48.6 48.6 48.4 48.3 48.1 47.9 47.9 47.8 47.7 47.4 47.3 47.0 46.9 46.8 46.6 46.5 46.3 46.0 45.9 45.8 45.6 45.1 44.9 44.8 44.7 44.5 44.1 43.9 43.7 + 2 AK TMIN 9 43.5 43.1 42.8 42.7 42.3 42.0 41.7 41.4 41.1 40.9 40.6 40.1 39.9 39.5 39.1 38.9 38.5 38.1 37.7 37.3 37.0 36.6 36.1 35.7 35.2 34.8 34.5 34.2 33.6 33.2 -99.0 + 2 AK TMIN 10 32.7 32.3 31.7 31.3 30.9 30.4 29.9 29.4 29.0 28.4 28.1 27.6 27.1 26.8 26.2 25.8 25.2 24.8 24.2 23.9 23.3 23.0 22.3 21.8 21.4 20.8 20.4 19.8 19.5 18.9 18.5 + 2 AK TMIN 11 18.0 17.5 17.1 16.6 16.3 15.7 15.4 14.9 14.5 14.3 13.7 13.4 13.0 12.8 12.5 12.2 11.9 11.6 11.4 11.0 10.8 10.7 10.6 10.3 10.1 9.8 9.7 9.6 9.5 9.4 -99.0 + 2 AK TMIN 12 9.3 9.3 9.0 8.9 8.8 8.6 8.6 8.5 8.4 8.3 8.3 8.2 8.0 7.9 7.9 7.6 7.3 7.3 7.2 7.1 7.1 7.0 6.9 6.8 6.8 6.6 6.2 6.1 6.0 5.9 5.8 + 2 AK TAVG 1 12.4 12.3 12.3 12.2 12.2 12.0 12.0 12.0 12.0 12.0 11.9 11.8 11.8 11.7 11.7 11.7 11.7 11.8 11.8 11.8 11.9 11.9 11.9 12.0 12.2 12.3 12.3 12.4 12.5 12.5 12.6 + 2 AK TAVG 2 12.9 13.1 13.1 13.3 13.4 13.6 13.7 14.1 14.1 14.4 14.5 14.6 14.8 15.0 15.2 15.5 15.6 15.7 16.1 16.4 16.5 16.7 16.9 17.1 17.5 17.6 17.8 18.0 18.1 -99.0 -99.0 + 2 AK TAVG 3 18.3 18.5 18.7 19.2 19.4 19.6 20.0 20.2 20.4 20.9 21.2 21.4 21.5 22.0 22.3 22.6 22.9 23.3 23.5 24.0 24.3 24.7 24.9 25.1 25.8 26.0 26.2 26.8 27.1 27.4 27.9 + 2 AK TAVG 4 28.1 28.6 29.1 29.4 29.7 30.2 30.5 30.9 31.4 31.7 32.0 32.5 32.8 33.2 33.7 33.9 34.3 34.8 35.1 35.7 35.9 36.4 36.8 37.0 37.5 37.9 38.4 38.8 39.1 39.5 -99.0 + 2 AK TAVG 5 39.9 40.2 40.7 41.0 41.3 41.9 42.2 42.5 43.0 43.2 43.7 44.0 44.3 44.5 45.1 45.3 45.5 46.0 46.3 46.5 47.0 47.2 47.4 47.8 48.2 48.3 48.6 49.0 49.4 49.5 49.5 + 2 AK TAVG 6 50.1 50.4 50.5 50.7 51.1 51.3 51.5 51.7 52.0 52.3 52.5 52.7 52.8 53.2 53.4 53.5 53.7 53.9 54.1 54.3 54.5 54.6 54.9 55.1 55.3 55.3 55.5 55.6 55.8 55.9 -99.0 + 2 AK TAVG 7 56.1 56.2 56.4 56.6 56.7 56.8 56.9 56.9 56.9 57.2 57.2 57.2 57.2 57.2 57.3 57.3 57.3 57.4 57.4 57.5 57.4 57.5 57.5 57.5 57.5 57.3 57.2 57.2 57.1 57.0 57.0 + 2 AK TAVG 8 56.9 56.9 56.8 56.7 56.5 56.4 56.3 56.3 56.2 56.0 55.8 55.6 55.4 55.3 55.2 55.1 54.9 54.7 54.4 54.2 54.2 54.0 53.7 53.4 53.3 53.1 52.8 52.4 52.3 52.1 51.9 + 2 AK TAVG 9 51.4 51.3 51.0 50.8 50.4 50.1 49.8 49.4 49.1 48.9 48.4 48.1 47.8 47.4 47.0 46.6 46.2 45.7 45.4 45.0 44.6 44.1 43.6 43.2 42.7 42.3 41.8 41.4 40.8 40.5 -99.0 + 2 AK TAVG 10 39.8 39.4 38.8 38.4 37.8 37.2 36.9 36.4 35.8 35.3 34.8 34.4 33.9 33.5 32.8 32.3 31.8 31.4 30.9 30.3 29.9 29.4 28.8 28.4 27.8 27.4 27.0 26.4 25.9 25.4 25.2 + 2 AK TAVG 11 24.4 24.2 23.6 23.2 22.8 22.3 22.0 21.5 21.2 20.9 20.3 20.1 19.9 19.4 19.1 18.9 18.5 18.2 18.0 17.9 17.7 17.3 17.0 16.9 16.8 16.7 16.6 16.3 16.2 16.0 -99.0 + 2 AK TAVG 12 15.9 15.8 15.7 15.7 15.5 15.4 15.3 15.2 15.2 14.9 14.8 14.8 14.7 14.5 14.4 14.3 14.2 14.2 14.0 13.9 13.7 13.6 13.5 13.5 13.2 13.1 13.1 13.0 12.9 12.8 12.6 + 2 AK RVP 1 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 2 AK RVP 2 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 -99.0 -99.0 + 2 AK RVP 3 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 2 AK RVP 4 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 -99.0 + 2 AK RVP 5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 2 AK RVP 6 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 + 2 AK RVP 7 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 2 AK RVP 8 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 2 AK RVP 9 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 + 2 AK RVP 10 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 2 AK RVP 11 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 -99.0 + 2 AK RVP 12 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 4 AZ TMAX 1 62.5 62.5 62.5 62.8 62.8 62.9 62.9 62.9 63.1 63.1 63.2 63.2 63.2 63.5 63.5 63.7 63.8 64.0 64.0 64.1 64.1 64.4 64.7 64.8 64.9 65.0 65.1 65.4 65.7 65.9 66.0 + 4 AZ TMAX 2 66.1 66.4 66.7 66.8 66.9 67.1 67.4 67.5 67.8 67.9 68.0 68.1 68.5 68.6 68.9 68.9 69.0 69.1 69.2 69.3 69.7 69.9 70.0 70.1 70.2 70.2 70.3 70.4 70.4 -99.0 -99.0 + 4 AZ TMAX 3 70.5 70.9 70.9 71.0 71.1 71.4 71.4 71.6 71.9 72.1 72.1 72.2 72.3 72.9 73.1 73.2 73.3 73.5 73.9 74.1 74.3 74.4 74.9 75.1 75.3 75.9 76.0 76.2 76.5 76.9 77.2 + 4 AZ TMAX 4 77.4 77.9 78.1 78.4 78.7 79.0 79.4 79.7 79.9 80.0 80.6 80.8 81.0 81.5 81.7 81.8 82.4 82.6 82.8 82.9 83.4 83.5 83.8 84.0 84.5 84.5 84.8 85.0 85.5 85.6 -99.0 + 4 AZ TMAX 5 85.7 86.1 86.5 86.5 86.7 87.1 87.5 87.7 87.8 88.4 88.6 88.8 89.3 89.5 89.8 90.3 90.5 90.7 91.4 91.5 91.7 92.4 92.6 93.0 93.5 93.7 94.3 94.5 95.1 95.4 95.6 + 4 AZ TMAX 6 96.3 96.5 97.1 97.4 97.6 98.2 98.4 98.9 99.2 99.4 99.7 100.0 100.3 100.4 100.7 101.0 101.1 101.3 101.4 101.6 102.0 102.0 102.0 102.1 102.2 102.2 102.2 102.2 102.3 102.4 -99.0 + 4 AZ TMAX 7 102.3 102.4 102.5 102.5 102.6 102.6 102.6 102.6 102.4 102.3 102.1 102.1 102.1 102.1 102.1 102.1 102.0 102.0 102.0 101.9 101.9 101.9 101.8 101.8 101.8 101.8 101.8 101.8 101.7 101.7 101.6 + 4 AZ TMAX 8 101.4 101.3 101.3 101.0 101.0 101.0 100.9 100.9 100.9 100.8 100.8 100.7 100.7 100.3 100.3 100.1 100.0 100.0 100.0 99.9 99.9 99.8 99.6 99.6 99.3 99.1 99.0 99.0 99.0 99.0 98.9 + 4 AZ TMAX 9 98.7 98.5 98.1 98.1 98.0 97.9 97.7 97.5 97.4 97.1 96.9 96.8 96.5 96.1 96.1 95.9 95.6 95.1 95.0 94.7 94.5 94.2 93.9 93.6 93.3 92.9 92.4 92.2 91.8 91.3 -99.0 + 4 AZ TMAX 10 91.1 90.5 90.3 89.8 89.4 89.2 88.6 88.3 88.0 87.5 87.2 86.6 86.4 85.8 85.5 85.0 84.6 84.3 83.6 83.4 82.8 82.6 82.1 81.6 81.4 80.6 80.4 79.8 79.4 78.8 78.5 + 4 AZ TMAX 11 78.1 77.5 77.1 76.6 76.2 75.7 75.5 75.0 74.5 74.2 73.6 73.5 72.9 72.6 72.2 71.8 71.5 71.1 70.6 70.3 70.0 69.6 69.2 69.0 68.6 68.2 68.0 67.8 67.2 67.1 -99.0 + 4 AZ TMAX 12 67.0 66.4 66.1 66.0 65.9 65.3 65.0 65.0 64.9 64.7 64.2 64.0 64.0 63.9 63.9 63.4 63.3 63.3 63.0 63.0 63.0 62.9 62.9 62.9 62.9 62.9 62.6 62.6 62.6 62.5 62.5 + 4 AZ TMIN 1 36.9 36.9 36.9 37.1 37.1 37.1 37.1 37.4 37.6 37.7 37.7 37.7 37.7 37.7 37.7 37.7 37.7 37.8 37.8 38.1 38.2 38.5 38.5 38.6 38.6 38.7 38.7 38.8 39.2 39.3 39.4 + 4 AZ TMIN 2 39.5 39.6 39.6 39.8 40.1 40.2 40.3 40.3 40.5 40.6 40.8 41.0 41.2 41.2 41.3 41.4 41.4 41.6 41.8 41.8 42.0 42.2 42.3 42.4 42.5 42.8 42.9 42.9 43.0 -99.0 -99.0 + 4 AZ TMIN 3 43.0 43.0 43.2 43.3 43.5 43.6 43.9 44.0 44.1 44.2 44.2 44.3 44.6 44.6 44.8 45.1 45.2 45.2 45.3 45.6 45.7 45.8 46.0 46.0 46.4 46.6 46.6 46.7 46.8 47.2 47.3 + 4 AZ TMIN 4 47.6 47.6 47.8 48.0 48.1 48.3 48.4 48.9 49.0 49.1 49.1 49.4 49.9 50.1 50.1 50.3 50.9 51.0 51.1 51.4 51.8 52.0 52.1 52.6 52.7 53.0 53.3 53.6 53.9 54.0 -99.0 + 4 AZ TMIN 5 54.6 54.8 55.0 55.5 55.7 55.8 56.4 56.6 56.7 57.1 57.5 57.7 58.0 58.3 58.6 58.8 59.3 59.6 59.7 60.1 60.4 60.5 61.0 61.3 61.5 61.7 62.2 62.5 62.6 62.9 63.4 + 4 AZ TMIN 6 63.5 63.7 64.1 64.5 64.6 65.0 65.4 65.5 65.7 66.1 66.5 66.7 66.9 67.4 67.6 67.7 68.3 68.5 68.7 69.0 69.3 69.6 69.9 70.2 70.5 70.8 71.0 71.6 71.7 71.9 -99.0 + 4 AZ TMIN 7 72.3 72.6 72.9 73.3 73.3 73.4 73.8 74.1 74.3 74.6 74.7 74.7 75.0 75.1 75.2 75.5 75.6 75.6 75.6 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.8 75.7 75.7 75.7 75.6 + 4 AZ TMIN 8 75.6 75.5 75.3 75.2 75.2 75.1 74.9 74.8 74.8 74.7 74.6 74.4 74.3 74.3 74.1 74.0 73.8 73.8 73.4 73.3 73.2 73.2 73.1 72.9 72.7 72.4 72.3 72.2 72.1 71.8 71.6 + 4 AZ TMIN 9 71.3 71.2 71.1 71.0 70.7 70.3 70.2 70.0 69.8 69.4 69.2 69.0 68.6 68.4 68.1 67.8 67.4 67.1 66.9 66.4 66.2 65.9 65.4 65.1 64.9 64.4 64.0 63.6 63.3 62.7 -99.0 + 4 AZ TMIN 10 62.3 61.8 61.6 61.2 60.7 60.3 59.8 59.4 59.0 58.7 58.0 57.8 57.1 56.9 56.4 56.0 55.7 55.1 54.8 54.1 54.0 53.2 53.1 52.3 52.1 51.8 51.1 51.0 50.2 50.1 49.4 + 4 AZ TMIN 11 49.1 48.6 48.1 47.7 47.4 46.9 46.6 46.1 45.7 45.4 45.0 44.7 44.4 44.1 43.7 43.2 43.1 42.9 42.4 42.1 42.0 41.6 41.2 41.1 41.0 40.8 40.4 40.1 40.0 40.0 -99.0 + 4 AZ TMIN 12 39.6 39.6 39.2 39.0 39.0 39.0 38.7 38.5 38.4 38.1 38.0 38.0 38.0 37.8 37.8 37.7 37.6 37.4 37.4 37.4 37.3 37.3 37.2 37.0 37.0 37.0 37.0 37.0 36.8 36.8 36.9 + 4 AZ TAVG 1 49.8 49.8 49.9 49.9 50.1 50.1 50.1 50.1 50.2 50.4 50.4 50.4 50.4 50.5 50.5 50.7 50.8 50.9 51.1 51.1 51.3 51.4 51.5 51.6 51.7 52.0 52.0 52.3 52.4 52.4 52.6 + 4 AZ TAVG 2 52.9 52.9 53.1 53.3 53.5 53.8 53.8 53.9 54.1 54.3 54.4 54.7 54.8 54.9 55.0 55.3 55.3 55.4 55.5 55.6 55.9 56.0 56.1 56.3 56.4 56.5 56.6 56.7 56.7 -99.0 -99.0 + 4 AZ TAVG 3 56.8 56.9 57.0 57.2 57.5 57.6 57.7 57.8 57.9 58.0 58.3 58.4 58.5 58.6 58.9 59.2 59.3 59.5 59.5 59.7 60.2 60.3 60.5 60.5 60.7 61.3 61.3 61.5 61.6 62.0 62.3 + 4 AZ TAVG 4 62.4 62.8 62.9 63.3 63.4 63.8 63.9 64.2 64.4 64.6 64.8 65.2 65.4 65.6 66.0 66.2 66.6 66.7 66.9 67.2 67.6 67.7 68.0 68.4 68.6 68.9 69.1 69.4 69.6 69.9 -99.0 + 4 AZ TAVG 5 70.1 70.4 70.8 71.0 71.3 71.4 71.9 72.2 72.4 72.7 73.0 73.3 73.7 73.9 74.3 74.7 74.8 75.2 75.6 75.8 76.1 76.4 76.8 77.2 77.4 77.9 78.2 78.4 78.9 79.2 79.6 + 4 AZ TAVG 6 79.8 80.2 80.7 80.9 81.2 81.7 81.8 82.3 82.4 82.7 83.1 83.3 83.7 84.0 84.1 84.3 84.7 84.8 85.1 85.3 85.6 85.8 86.0 86.3 86.4 86.5 86.7 86.7 87.2 87.3 -99.0 + 4 AZ TAVG 7 87.4 87.5 87.5 87.8 87.9 87.9 88.2 88.3 88.3 88.6 88.6 88.6 88.7 88.7 88.7 88.7 88.8 88.8 88.9 88.9 88.9 88.9 88.9 88.9 88.8 88.8 88.8 88.8 88.7 88.7 88.6 + 4 AZ TAVG 8 88.6 88.6 88.4 88.2 88.0 88.0 87.9 87.9 87.8 87.8 87.6 87.6 87.4 87.4 87.3 87.0 87.0 86.8 86.8 86.7 86.5 86.4 86.3 86.1 85.9 85.8 85.8 85.7 85.4 85.4 85.3 + 4 AZ TAVG 9 84.9 84.8 84.8 84.6 84.4 84.2 83.9 83.8 83.7 83.3 83.1 82.8 82.7 82.4 81.9 81.8 81.5 81.2 80.8 80.8 80.4 79.9 79.8 79.4 78.9 78.5 78.4 77.9 77.5 77.1 -99.0 + 4 AZ TAVG 10 76.6 76.4 76.0 75.5 75.1 74.7 74.4 73.8 73.5 72.9 72.6 72.2 71.8 71.5 70.9 70.6 70.0 69.7 69.3 68.8 68.4 67.8 67.6 67.0 66.8 66.1 65.8 65.2 64.9 64.4 64.0 + 4 AZ TAVG 11 63.5 63.1 62.6 62.2 61.8 61.4 61.0 60.5 60.1 59.7 59.4 59.1 58.6 58.3 58.0 57.6 57.1 56.9 56.6 56.3 55.9 55.6 55.4 55.1 54.7 54.6 54.3 53.8 53.7 53.5 -99.0 + 4 AZ TAVG 12 53.3 52.8 52.7 52.5 52.5 52.2 52.0 51.7 51.6 51.5 51.4 51.3 51.0 50.7 50.6 50.5 50.5 50.4 50.4 50.4 50.4 50.1 50.1 50.1 50.0 49.8 49.8 49.6 49.7 49.8 49.8 + 4 AZ RVP 1 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 + 4 AZ RVP 2 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 -99.0 -99.0 + 4 AZ RVP 3 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 + 4 AZ RVP 4 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 + 4 AZ RVP 5 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 + 4 AZ RVP 6 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 + 4 AZ RVP 7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 + 4 AZ RVP 8 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 + 4 AZ RVP 9 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 + 4 AZ RVP 10 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 + 4 AZ RVP 11 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 + 4 AZ RVP 12 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 + 5 AR TMAX 1 48.0 47.9 47.8 47.8 47.6 47.6 47.5 47.4 47.4 47.3 47.3 47.3 47.3 47.4 47.5 47.6 47.7 47.7 47.9 47.9 48.0 48.2 48.3 48.5 48.8 48.9 49.2 49.3 49.6 49.9 50.2 + 5 AR TMAX 2 50.4 50.7 51.0 51.3 51.5 51.9 52.1 52.5 52.7 53.0 53.4 53.6 53.9 54.1 54.5 54.7 55.0 55.3 55.6 55.9 56.2 56.6 56.8 57.1 57.4 57.7 58.0 58.4 58.5 -99.0 -99.0 + 5 AR TMAX 3 58.5 58.9 59.2 59.5 59.9 60.1 60.4 60.7 61.0 61.3 61.6 62.0 62.2 62.5 62.9 63.1 63.4 63.7 64.1 64.3 64.7 65.0 65.3 65.6 65.9 66.2 66.5 66.8 67.1 67.4 67.8 + 5 AR TMAX 4 68.1 68.3 68.7 69.0 69.3 69.6 69.9 70.1 70.4 70.7 71.0 71.2 71.6 71.9 72.1 72.3 72.6 72.9 73.1 73.4 73.7 73.9 74.1 74.3 74.6 74.9 75.1 75.2 75.6 75.8 -99.0 + 5 AR TMAX 5 76.0 76.2 76.4 76.7 76.9 77.1 77.4 77.6 77.8 78.1 78.4 78.6 78.8 79.0 79.3 79.6 79.8 80.1 80.3 80.6 80.8 81.1 81.3 81.7 81.9 82.1 82.4 82.7 83.0 83.2 83.5 + 5 AR TMAX 6 83.9 84.1 84.3 84.6 84.9 85.1 85.5 85.8 85.9 86.2 86.5 86.6 86.9 87.0 87.4 87.5 87.8 87.9 88.2 88.4 88.6 88.7 88.9 89.2 89.4 89.5 89.6 89.7 90.0 90.3 -99.0 + 5 AR TMAX 7 90.4 90.5 90.6 90.7 90.9 91.1 91.2 91.3 91.4 91.5 91.6 91.7 91.9 91.9 92.0 92.0 92.1 92.2 92.3 92.3 92.4 92.5 92.5 92.6 92.6 92.6 92.6 92.6 92.6 92.7 92.7 + 5 AR TMAX 8 92.6 92.6 92.6 92.5 92.4 92.4 92.4 92.3 92.3 92.3 92.2 92.0 91.9 91.8 91.8 91.6 91.4 91.3 91.1 90.9 90.8 90.5 90.4 90.1 89.9 89.7 89.5 89.2 89.0 88.8 88.5 + 5 AR TMAX 9 88.1 87.9 87.7 87.2 87.1 86.9 86.5 86.1 86.0 85.7 85.3 85.1 84.8 84.6 84.2 84.0 83.7 83.4 83.1 82.9 82.6 82.3 82.0 81.7 81.4 81.2 80.9 80.6 80.3 80.0 -99.0 + 5 AR TMAX 10 79.7 79.4 79.1 78.8 78.5 78.2 77.9 77.5 77.3 76.9 76.5 76.2 75.6 75.3 75.1 74.5 74.2 73.7 73.3 73.0 72.5 72.2 71.5 71.2 70.7 70.3 69.8 69.3 68.9 68.3 67.9 + 5 AR TMAX 11 67.3 66.8 66.3 65.8 65.3 64.9 64.4 64.0 63.5 63.0 62.7 62.1 61.8 61.3 60.9 60.6 60.0 59.7 59.3 58.9 58.6 58.1 57.8 57.5 57.0 56.8 56.5 56.0 55.7 55.4 -99.0 + 5 AR TMAX 12 55.1 54.8 54.5 54.2 53.9 53.6 53.4 53.1 52.7 52.5 52.2 52.0 51.7 51.5 51.4 51.1 50.7 50.5 50.4 50.2 50.0 49.7 49.6 49.4 49.2 49.0 48.8 48.7 48.5 48.4 48.2 + 5 AR TMIN 1 28.2 28.0 27.9 27.8 27.7 27.7 27.6 27.5 27.5 27.4 27.3 27.3 27.2 27.1 27.1 27.2 27.2 27.4 27.4 27.5 27.6 27.7 27.7 27.8 27.8 27.9 28.0 28.1 28.3 28.5 28.7 + 5 AR TMIN 2 28.8 29.0 29.1 29.3 29.5 29.7 29.9 30.2 30.3 30.6 30.8 31.0 31.3 31.6 31.7 32.0 32.3 32.5 32.9 33.1 33.4 33.7 33.9 34.2 34.5 34.9 35.2 35.5 35.7 -99.0 -99.0 + 5 AR TMIN 3 35.8 36.1 36.5 36.7 37.1 37.4 37.6 38.0 38.4 38.6 38.8 39.2 39.5 39.7 40.0 40.4 40.5 40.7 41.3 41.5 41.6 41.9 42.3 42.5 42.6 43.0 43.3 43.4 43.6 43.9 44.2 + 5 AR TMIN 4 44.3 44.7 44.9 45.1 45.3 45.7 45.8 46.1 46.3 46.6 46.9 47.1 47.4 47.7 48.1 48.2 48.6 48.9 49.1 49.4 49.7 50.1 50.3 50.7 51.0 51.2 51.7 51.9 52.2 52.6 -99.0 + 5 AR TMIN 5 52.9 53.2 53.6 53.9 54.2 54.6 54.9 55.2 55.6 55.8 56.2 56.5 56.7 57.1 57.5 57.7 58.0 58.4 58.6 58.8 59.3 59.6 59.8 60.1 60.5 60.7 60.9 61.3 61.6 61.9 62.2 + 5 AR TMIN 6 62.4 62.6 63.0 63.2 63.5 63.8 64.0 64.2 64.4 64.8 65.0 65.2 65.4 65.7 65.9 66.0 66.2 66.6 66.8 66.9 67.0 67.2 67.5 67.7 67.9 68.0 68.1 68.3 68.6 68.7 -99.0 + 5 AR TMIN 7 68.8 68.8 69.0 69.1 69.3 69.5 69.7 69.7 69.7 69.8 69.9 69.9 69.9 70.0 70.0 70.1 70.2 70.3 70.3 70.3 70.5 70.4 70.5 70.5 70.4 70.2 70.2 70.1 70.0 69.9 69.9 + 5 AR TMIN 8 69.9 69.8 69.8 69.7 69.6 69.5 69.4 69.3 69.2 69.0 68.9 68.9 68.7 68.5 68.4 68.3 68.2 68.0 67.8 67.7 67.5 67.3 67.2 66.9 66.8 66.6 66.4 66.2 66.0 65.8 65.6 + 5 AR TMIN 9 65.4 65.1 64.8 64.6 64.4 64.2 63.9 63.6 63.3 63.1 62.7 62.4 62.1 61.8 61.5 61.2 60.8 60.4 60.2 59.7 59.3 59.0 58.6 58.2 57.7 57.4 56.9 56.5 56.2 55.6 -99.0 + 5 AR TMIN 10 55.3 54.7 54.3 53.9 53.5 53.0 52.6 52.2 51.8 51.4 50.9 50.6 50.1 49.8 49.4 49.0 48.7 48.3 47.9 47.6 47.1 46.9 46.5 46.1 45.9 45.5 45.1 44.9 44.5 44.2 43.9 + 5 AR TMIN 11 43.5 43.2 43.0 42.6 42.4 42.1 41.7 41.5 41.1 40.8 40.6 40.2 40.0 39.7 39.4 39.1 38.8 38.6 38.1 37.9 37.7 37.4 37.0 36.8 36.4 36.2 35.9 35.6 35.3 35.0 -99.0 + 5 AR TMIN 12 34.7 34.4 34.2 33.8 33.6 33.3 33.1 32.8 32.6 32.3 32.1 31.9 31.6 31.4 31.1 31.0 30.8 30.5 30.4 30.1 30.0 29.7 29.5 29.4 29.2 29.2 29.0 28.8 28.6 28.4 28.3 + 5 AR TAVG 1 38.0 37.9 37.9 37.8 37.8 37.8 37.6 37.5 37.4 37.4 37.2 37.2 37.3 37.3 37.4 37.4 37.6 37.6 37.7 37.8 37.8 37.9 37.9 38.0 38.3 38.5 38.7 38.8 38.9 39.1 39.5 + 5 AR TAVG 2 39.7 39.8 40.1 40.4 40.6 40.8 41.1 41.3 41.6 41.8 42.1 42.3 42.6 42.8 43.1 43.4 43.7 44.0 44.2 44.5 44.8 45.1 45.3 45.8 46.1 46.2 46.6 47.0 47.1 -99.0 -99.0 + 5 AR TAVG 3 47.2 47.4 47.9 48.1 48.4 48.8 49.1 49.4 49.7 50.0 50.3 50.6 50.9 51.2 51.4 51.7 52.1 52.3 52.6 52.9 53.2 53.5 53.7 54.1 54.3 54.6 54.8 55.2 55.4 55.7 55.9 + 5 AR TAVG 4 56.3 56.6 56.8 57.0 57.3 57.6 57.8 58.1 58.5 58.7 58.9 59.2 59.5 59.8 60.0 60.3 60.6 60.9 61.1 61.5 61.7 61.9 62.2 62.6 62.8 63.0 63.4 63.7 63.9 64.2 -99.0 + 5 AR TAVG 5 64.6 64.8 65.0 65.4 65.6 65.9 66.2 66.4 66.7 67.0 67.3 67.6 67.8 68.1 68.4 68.7 68.9 69.3 69.5 69.8 70.1 70.3 70.6 70.9 71.2 71.5 71.7 72.1 72.3 72.6 72.9 + 5 AR TAVG 6 73.1 73.4 73.7 74.0 74.2 74.5 74.8 75.0 75.2 75.5 75.8 76.0 76.1 76.4 76.7 76.9 77.0 77.2 77.4 77.8 77.9 78.0 78.2 78.4 78.6 78.8 79.0 79.1 79.2 79.4 -99.0 + 5 AR TAVG 7 79.5 79.7 79.8 80.1 80.2 80.2 80.3 80.4 80.6 80.7 80.7 80.8 81.0 81.0 81.0 81.0 81.2 81.2 81.3 81.4 81.4 81.4 81.5 81.5 81.5 81.5 81.5 81.5 81.4 81.4 81.4 + 5 AR TAVG 8 81.4 81.4 81.3 81.2 81.0 81.0 80.9 80.8 80.7 80.6 80.5 80.5 80.3 80.3 80.1 79.9 79.8 79.6 79.5 79.3 79.2 79.0 78.7 78.6 78.3 78.2 78.0 77.6 77.5 77.3 77.0 + 5 AR TAVG 9 76.8 76.5 76.3 76.0 75.7 75.5 75.3 74.9 74.7 74.4 74.1 73.8 73.5 73.2 72.9 72.6 72.3 71.9 71.7 71.3 70.9 70.7 70.4 69.9 69.7 69.2 69.0 68.6 68.2 67.9 -99.0 + 5 AR TAVG 10 67.6 67.1 66.8 66.4 66.0 65.7 65.2 64.9 64.5 64.1 63.8 63.3 62.9 62.6 62.2 61.8 61.5 61.1 60.7 60.3 59.9 59.5 59.1 58.7 58.3 57.9 57.5 57.1 56.7 56.3 55.8 + 5 AR TAVG 11 55.5 55.1 54.7 54.3 53.8 53.6 53.1 52.7 52.4 51.9 51.6 51.3 50.8 50.6 50.2 49.8 49.5 49.1 48.8 48.5 48.1 47.7 47.4 47.1 46.8 46.4 46.1 45.9 45.5 45.2 -99.0 + 5 AR TAVG 12 45.0 44.6 44.2 44.1 43.9 43.4 43.2 43.0 42.7 42.4 42.2 42.0 41.7 41.4 41.2 41.0 40.8 40.6 40.3 40.2 40.0 39.8 39.6 39.4 39.2 39.0 38.9 38.7 38.6 38.5 38.2 + 5 AR RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 5 AR RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 + 5 AR RVP 3 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 5 AR RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 + 5 AR RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 5 AR RVP 6 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 + 5 AR RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 + 5 AR RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 + 5 AR RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 + 5 AR RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 + 5 AR RVP 11 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 + 5 AR RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + 6 CA TMAX 1 61.2 61.2 61.2 61.2 61.2 61.2 61.3 61.3 61.4 61.4 61.5 61.5 61.5 61.6 61.7 61.7 61.8 61.9 62.0 62.1 62.2 62.2 62.3 62.4 62.6 62.7 62.7 62.8 63.1 63.2 63.3 + 6 CA TMAX 2 63.4 63.6 63.6 63.8 64.0 64.0 64.2 64.3 64.5 64.5 64.6 64.7 64.7 64.8 65.0 65.1 65.2 65.3 65.4 65.5 65.4 65.4 65.5 65.5 65.6 65.5 65.6 65.5 65.6 -99.0 -99.0 + 6 CA TMAX 3 65.7 65.6 65.6 65.6 65.7 65.7 65.8 65.9 65.9 66.0 66.1 66.1 66.2 66.3 66.6 66.7 66.8 66.9 67.0 67.2 67.3 67.4 67.5 67.7 67.8 68.1 68.3 68.4 68.6 68.8 68.9 + 6 CA TMAX 4 69.1 69.5 69.7 69.8 70.0 70.2 70.4 70.5 70.7 70.9 71.2 71.3 71.4 71.6 71.7 71.8 71.9 72.1 72.4 72.5 72.6 72.7 72.8 72.9 73.0 73.2 73.3 73.4 73.4 73.5 -99.0 + 6 CA TMAX 5 73.6 73.7 73.8 73.9 74.0 74.1 74.2 74.3 74.5 74.6 74.7 75.0 75.1 75.2 75.4 75.6 75.6 75.8 75.9 76.1 76.4 76.6 76.7 76.9 77.1 77.2 77.5 77.7 77.9 78.1 78.3 + 6 CA TMAX 6 78.6 78.9 79.0 79.2 79.4 79.7 79.9 80.1 80.3 80.6 80.7 80.9 81.2 81.3 81.5 81.7 81.8 82.1 82.3 82.4 82.7 82.8 83.1 83.2 83.3 83.5 83.7 84.0 84.1 84.2 -99.0 + 6 CA TMAX 7 84.3 84.5 84.6 84.9 85.0 85.1 85.2 85.3 85.5 85.5 85.6 85.8 86.0 86.0 86.1 86.1 86.2 86.2 86.2 86.3 86.3 86.5 86.5 86.6 86.7 86.7 86.7 86.8 86.8 86.8 86.7 + 6 CA TMAX 8 86.7 86.7 86.7 86.7 86.6 86.6 86.6 86.6 86.6 86.5 86.5 86.5 86.5 86.4 86.4 86.3 86.3 86.3 86.3 86.2 86.1 86.1 86.1 86.0 85.9 85.7 85.7 85.6 85.5 85.5 85.4 + 6 CA TMAX 9 85.4 85.3 85.3 85.2 85.1 85.1 85.0 84.8 84.7 84.6 84.6 84.4 84.4 84.2 84.1 83.9 83.7 83.5 83.4 83.4 83.2 83.1 83.0 82.8 82.5 82.3 82.1 82.0 81.9 81.6 -99.0 + 6 CA TMAX 10 81.4 81.2 81.0 80.9 80.6 80.4 80.2 79.8 79.6 79.5 79.3 79.0 78.7 78.3 78.1 77.9 77.6 77.3 77.1 76.8 76.4 76.1 75.9 75.5 75.1 74.8 74.6 74.2 74.0 73.6 73.2 + 6 CA TMAX 11 72.8 72.6 72.2 71.8 71.5 71.1 70.8 70.6 70.1 69.8 69.6 69.4 69.0 68.6 68.4 68.2 67.9 67.6 67.3 67.0 66.8 66.5 66.4 66.1 65.7 65.5 65.3 65.2 64.9 64.6 -99.0 + 6 CA TMAX 12 64.4 64.2 64.0 63.9 63.7 63.6 63.4 63.1 63.0 62.8 62.7 62.6 62.5 62.4 62.3 62.2 61.9 61.8 61.7 61.6 61.6 61.5 61.5 61.5 61.4 61.4 61.4 61.3 61.2 61.2 61.2 + 6 CA TMIN 1 40.4 40.4 40.4 40.5 40.5 40.6 40.6 40.7 40.8 40.8 40.8 40.9 41.0 41.0 41.1 41.2 41.3 41.4 41.4 41.5 41.5 41.6 41.7 41.7 41.8 41.8 41.9 42.0 42.1 42.1 42.2 + 6 CA TMIN 2 42.1 42.3 42.4 42.6 42.7 42.7 42.8 42.8 42.9 42.9 43.0 43.1 43.2 43.2 43.3 43.3 43.3 43.4 43.4 43.6 43.7 43.8 43.8 43.9 43.9 44.0 44.1 44.2 44.2 -99.0 -99.0 + 6 CA TMIN 3 44.1 44.1 44.2 44.3 44.3 44.4 44.5 44.6 44.6 44.7 44.7 44.7 44.7 44.8 44.8 45.0 45.1 45.1 45.2 45.2 45.3 45.4 45.6 45.6 45.6 45.7 45.7 45.8 46.0 46.0 46.1 + 6 CA TMIN 4 46.1 46.3 46.3 46.4 46.4 46.5 46.6 46.7 47.0 47.0 47.2 47.2 47.3 47.4 47.4 47.5 47.8 47.9 48.0 48.1 48.3 48.4 48.5 48.6 48.8 49.0 49.0 49.2 49.4 49.6 -99.0 + 6 CA TMIN 5 49.7 49.9 50.0 50.2 50.3 50.5 50.6 50.8 51.0 51.1 51.2 51.3 51.5 51.7 51.8 51.9 52.2 52.2 52.4 52.5 52.6 52.8 53.0 53.1 53.2 53.5 53.5 53.6 53.7 54.0 54.1 + 6 CA TMIN 6 54.1 54.3 54.5 54.7 54.8 54.8 54.9 55.1 55.3 55.4 55.6 55.6 55.9 56.0 56.1 56.2 56.4 56.5 56.6 56.7 56.9 57.0 57.2 57.3 57.5 57.6 57.8 57.9 58.0 58.2 -99.0 + 6 CA TMIN 7 58.3 58.4 58.6 58.8 58.8 58.9 59.0 59.1 59.3 59.4 59.5 59.5 59.7 59.7 59.7 59.8 59.9 59.9 60.0 60.0 60.3 60.3 60.3 60.3 60.3 60.3 60.3 60.3 60.3 60.4 60.4 + 6 CA TMIN 8 60.3 60.3 60.3 60.3 60.3 60.2 60.2 60.2 60.3 60.4 60.3 60.4 60.4 60.4 60.4 60.3 60.3 60.2 60.2 60.2 60.0 60.0 59.9 59.9 59.9 59.7 59.7 59.6 59.5 59.5 59.4 + 6 CA TMIN 9 59.6 59.5 59.5 59.3 59.2 59.2 59.1 59.0 58.9 58.8 58.7 58.6 58.4 58.4 58.3 58.1 58.1 58.0 57.7 57.5 57.3 57.2 57.2 57.0 56.8 56.7 56.5 56.2 56.1 56.0 -99.0 + 6 CA TMIN 10 55.8 55.5 55.4 55.2 54.9 54.7 54.5 54.3 54.3 53.9 53.6 53.4 53.3 53.1 52.8 52.5 52.4 52.1 51.8 51.6 51.4 51.2 51.0 50.6 50.4 50.2 49.9 49.6 49.4 49.2 48.9 + 6 CA TMIN 11 48.5 48.4 48.1 47.7 47.5 47.4 47.0 46.8 46.6 46.4 46.0 45.8 45.6 45.5 45.2 45.0 44.8 44.5 44.4 44.2 43.9 43.7 43.6 43.4 43.2 42.9 42.8 42.6 42.6 42.4 -99.0 + 6 CA TMIN 12 42.1 41.8 41.7 41.6 41.6 41.5 41.2 41.1 41.0 40.7 40.7 40.6 40.6 40.6 40.5 40.5 40.4 40.4 40.4 40.4 40.2 40.2 40.2 40.2 40.1 40.1 40.2 40.3 40.4 40.4 40.4 + 6 CA TAVG 1 50.7 50.7 50.7 50.9 50.9 51.0 51.1 51.1 51.1 51.2 51.2 51.3 51.3 51.4 51.5 51.5 51.5 51.6 51.6 51.7 51.8 51.8 52.0 52.1 52.2 52.3 52.4 52.5 52.6 52.7 52.8 + 6 CA TAVG 2 52.8 53.1 53.2 53.4 53.4 53.5 53.6 53.7 53.7 53.8 53.9 53.9 54.0 54.0 54.1 54.1 54.2 54.2 54.3 54.4 54.4 54.5 54.6 54.7 54.7 54.8 54.9 54.9 54.8 -99.0 -99.0 + 6 CA TAVG 3 54.7 54.8 54.8 54.9 55.1 55.2 55.3 55.3 55.3 55.4 55.4 55.5 55.5 55.6 55.8 55.9 55.9 56.0 56.1 56.2 56.4 56.5 56.6 56.6 56.7 56.8 57.0 57.2 57.3 57.5 57.5 + 6 CA TAVG 4 57.7 57.8 57.9 58.2 58.3 58.4 58.6 58.7 58.7 59.0 59.2 59.3 59.4 59.5 59.6 59.8 59.9 60.0 60.2 60.3 60.5 60.6 60.7 60.8 61.0 61.1 61.2 61.3 61.4 61.6 -99.0 + 6 CA TAVG 5 61.7 61.8 62.0 62.1 62.2 62.4 62.5 62.6 62.6 62.9 63.0 63.1 63.2 63.5 63.7 63.8 63.9 64.0 64.2 64.3 64.6 64.7 64.9 65.0 65.3 65.3 65.5 65.7 65.9 66.0 66.2 + 6 CA TAVG 6 66.3 66.6 66.8 67.0 67.2 67.3 67.4 67.5 67.9 68.1 68.2 68.3 68.4 68.6 68.8 69.1 69.2 69.4 69.5 69.7 69.8 70.1 70.1 70.3 70.5 70.6 70.8 70.9 71.0 71.2 -99.0 + 6 CA TAVG 7 71.4 71.5 71.7 71.9 71.9 72.0 72.1 72.3 72.4 72.5 72.6 72.7 72.8 72.9 72.9 73.0 73.0 73.1 73.2 73.3 73.4 73.4 73.5 73.5 73.5 73.5 73.5 73.5 73.6 73.6 73.6 + 6 CA TAVG 8 73.5 73.5 73.5 73.5 73.5 73.5 73.5 73.5 73.4 73.4 73.4 73.5 73.4 73.3 73.4 73.4 73.3 73.2 73.1 73.1 73.1 73.1 73.0 72.9 72.9 72.8 72.8 72.7 72.7 72.6 72.5 + 6 CA TAVG 9 72.5 72.5 72.3 72.3 72.2 72.2 72.1 72.0 71.8 71.8 71.6 71.5 71.4 71.2 71.1 71.1 71.0 70.8 70.6 70.5 70.4 70.2 70.1 69.9 69.7 69.5 69.4 69.2 69.1 68.8 -99.0 + 6 CA TAVG 10 68.6 68.4 68.2 68.0 67.9 67.5 67.3 67.1 66.9 66.7 66.5 66.2 66.0 65.8 65.5 65.3 65.0 64.8 64.4 64.2 64.0 63.6 63.4 63.2 62.9 62.5 62.3 62.1 61.7 61.4 61.1 + 6 CA TAVG 11 60.8 60.4 60.2 59.8 59.6 59.2 59.1 58.7 58.4 58.2 57.9 57.7 57.3 57.1 56.8 56.6 56.3 56.1 55.9 55.6 55.4 55.2 54.9 54.7 54.5 54.3 54.1 53.8 53.7 53.5 -99.0 + 6 CA TAVG 12 53.4 53.2 53.0 52.8 52.6 52.5 52.4 52.2 52.1 51.9 51.8 51.7 51.5 51.4 51.3 51.3 51.3 51.2 51.2 51.1 51.0 50.9 50.9 50.8 50.7 50.7 50.7 50.6 50.7 50.7 50.7 + 6 CA RVP 1 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 + 6 CA RVP 2 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 -99.0 -99.0 + 6 CA RVP 3 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 + 6 CA RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 + 6 CA RVP 5 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 + 6 CA RVP 6 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 -99.0 + 6 CA RVP 7 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 + 6 CA RVP 8 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 + 6 CA RVP 9 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 -99.0 + 6 CA RVP 10 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 + 6 CA RVP 11 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 -99.0 + 6 CA RVP 12 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 + 8 CO TMAX 1 41.8 41.7 41.5 41.5 41.4 41.4 41.4 41.4 41.4 41.6 41.6 41.7 41.7 41.8 42.0 42.0 42.1 42.2 42.2 42.2 42.3 42.3 42.4 42.6 42.7 42.8 43.0 43.2 43.3 43.4 43.5 + 8 CO TMAX 2 43.8 44.0 44.1 44.3 44.4 44.6 44.9 45.0 45.2 45.4 45.6 45.8 46.0 46.1 46.4 46.7 46.8 47.1 47.2 47.5 47.6 47.9 48.3 48.4 48.5 48.9 49.1 49.4 49.5 -99.0 -99.0 + 8 CO TMAX 3 49.5 49.7 50.0 50.2 50.4 50.7 51.0 51.2 51.5 51.6 52.0 52.2 52.3 52.6 52.9 53.1 53.3 53.5 53.7 54.0 54.3 54.4 54.5 54.9 55.1 55.3 55.5 55.7 56.0 56.3 56.4 + 8 CO TMAX 4 56.6 56.9 57.2 57.3 57.4 57.6 58.2 58.2 58.4 58.7 59.2 59.3 59.5 59.8 60.0 60.3 60.6 60.8 61.2 61.4 61.6 61.9 62.3 62.4 62.8 63.1 63.4 63.7 63.9 64.3 -99.0 + 8 CO TMAX 5 64.5 64.9 65.3 65.5 65.8 66.3 66.5 66.8 67.3 67.5 67.7 68.3 68.4 69.0 69.4 69.5 70.2 70.4 70.6 71.2 71.4 72.0 72.4 72.5 73.2 73.4 74.0 74.3 74.8 75.0 75.5 + 8 CO TMAX 6 76.0 76.3 76.8 77.2 77.7 77.8 78.3 78.7 79.0 79.3 79.8 80.0 80.5 80.7 81.0 81.5 81.7 81.9 82.2 82.6 82.7 82.9 83.4 83.6 83.8 84.0 84.2 84.5 84.7 85.0 -99.0 + 8 CO TMAX 7 85.0 85.3 85.4 85.6 85.8 85.9 86.0 86.2 86.3 86.4 86.5 86.7 86.7 86.8 86.8 86.9 86.9 87.0 87.0 87.1 87.1 87.3 87.3 87.3 87.3 87.2 87.0 86.8 86.7 86.7 86.7 + 8 CO TMAX 8 86.7 86.5 86.4 86.4 86.4 86.2 86.2 86.0 85.8 85.5 85.5 85.4 85.2 85.1 84.8 84.5 84.5 84.3 84.2 83.8 83.5 83.5 83.2 82.9 82.6 82.5 82.3 81.7 81.6 81.5 80.9 + 8 CO TMAX 9 80.7 80.6 80.2 79.8 79.6 79.3 79.1 78.7 78.4 78.1 77.7 77.5 77.2 76.9 76.7 76.2 75.9 75.6 75.2 74.9 74.8 74.4 73.9 73.8 73.4 73.1 72.8 72.4 72.2 71.8 -99.0 + 8 CO TMAX 10 71.5 71.2 70.8 70.4 69.9 69.8 69.3 68.9 68.5 68.1 67.8 67.3 66.9 66.4 65.9 65.6 65.0 64.6 64.0 63.7 63.1 62.6 62.1 61.6 61.2 60.6 60.1 59.5 59.0 58.4 57.8 + 8 CO TMAX 11 57.2 56.6 56.1 55.4 55.0 54.3 54.0 53.5 53.0 52.5 52.0 51.8 51.0 50.8 50.4 49.9 49.6 49.3 48.8 48.5 48.1 47.9 47.5 47.3 46.9 46.7 46.4 46.2 45.9 45.7 -99.0 + 8 CO TMAX 12 45.5 45.4 45.1 44.8 44.7 44.6 44.4 44.2 44.0 43.8 43.6 43.5 43.5 43.3 43.2 43.1 43.0 42.7 42.5 42.5 42.4 42.3 42.2 42.2 42.2 42.1 42.0 41.9 41.9 41.8 41.5 + 8 CO TMIN 1 13.5 13.5 13.4 13.2 13.2 13.1 13.1 13.1 13.2 13.2 13.2 13.2 13.4 13.4 13.5 13.5 13.6 13.6 13.7 13.8 13.8 13.9 13.9 14.0 14.1 14.4 14.4 14.5 14.7 14.9 15.0 + 8 CO TMIN 2 15.3 15.4 15.5 15.6 15.8 16.0 16.3 16.4 16.6 16.7 16.8 17.1 17.4 17.6 17.7 17.8 18.0 18.2 18.6 18.7 18.8 19.0 19.2 19.7 19.8 20.0 20.2 20.4 20.5 -99.0 -99.0 + 8 CO TMIN 3 20.7 21.0 21.1 21.3 21.5 21.9 22.0 22.3 22.5 22.8 23.0 23.1 23.4 23.7 24.0 24.1 24.2 24.5 24.8 25.0 25.2 25.5 25.7 25.8 26.1 26.3 26.5 26.8 27.0 27.2 27.4 + 8 CO TMIN 4 27.8 27.9 28.0 28.2 28.6 28.8 29.0 29.2 29.6 29.8 29.9 30.2 30.6 30.8 31.0 31.3 31.7 31.8 32.1 32.5 32.8 33.0 33.3 33.5 33.9 34.2 34.5 34.8 35.1 35.4 -99.0 + 8 CO TMIN 5 35.8 36.1 36.4 36.8 37.2 37.4 37.8 38.1 38.4 38.7 39.0 39.3 39.5 39.9 40.2 40.5 40.8 41.1 41.5 41.8 42.0 42.4 42.7 43.0 43.3 43.6 43.9 44.1 44.4 44.8 45.0 + 8 CO TMIN 6 45.3 45.7 45.9 46.3 46.4 46.7 47.0 47.3 47.6 47.8 48.1 48.3 48.6 48.9 49.2 49.3 49.7 49.9 50.1 50.3 50.8 50.9 51.0 51.3 51.6 51.9 52.0 52.1 52.5 52.9 -99.0 + 8 CO TMIN 7 52.9 53.0 53.3 53.6 53.7 53.9 54.0 54.0 54.2 54.3 54.7 54.9 54.9 54.9 55.0 55.0 55.1 55.1 55.2 55.2 55.3 55.5 55.5 55.6 55.7 55.8 55.7 55.7 55.7 55.6 55.5 + 8 CO TMIN 8 55.6 55.6 55.3 55.2 55.1 55.0 54.9 54.9 54.8 54.7 54.6 54.4 54.1 54.0 53.8 53.7 53.6 53.3 53.0 52.8 52.7 52.5 52.1 51.9 51.7 51.3 51.1 50.8 50.4 50.2 49.8 + 8 CO TMIN 9 49.4 49.2 48.8 48.5 48.2 47.8 47.4 47.2 46.8 46.4 46.2 45.9 45.4 45.1 44.8 44.4 44.1 43.6 43.4 43.0 42.6 42.4 41.9 41.6 41.3 40.9 40.5 40.3 39.7 39.4 -99.0 + 8 CO TMIN 10 39.1 38.7 38.4 38.1 37.6 37.2 36.9 36.5 36.2 35.7 35.5 35.2 34.7 34.3 33.9 33.5 33.2 32.8 32.4 32.1 31.5 31.4 31.0 30.5 30.2 29.7 29.3 28.9 28.6 28.2 27.7 + 8 CO TMIN 11 27.4 27.0 26.6 26.2 25.8 25.5 25.1 24.7 24.6 24.1 23.7 23.5 23.1 22.7 22.3 22.1 21.8 21.4 21.1 20.9 20.4 20.2 20.1 19.7 19.3 19.1 18.9 18.7 18.2 18.1 -99.0 + 8 CO TMIN 12 17.9 17.7 17.5 17.1 16.9 16.7 16.6 16.3 16.0 15.9 15.8 15.6 15.5 15.2 15.1 14.9 14.8 14.7 14.5 14.4 14.2 14.1 14.1 14.0 13.9 13.8 13.6 13.6 13.6 13.5 13.4 + 8 CO TAVG 1 27.6 27.6 27.5 27.5 27.4 27.4 27.4 27.4 27.4 27.5 27.5 27.5 27.6 27.6 27.7 27.7 27.8 27.8 27.8 28.0 28.0 28.1 28.1 28.2 28.4 28.7 28.7 28.8 29.0 29.1 29.2 + 8 CO TAVG 2 29.4 29.7 29.7 30.1 30.2 30.3 30.5 30.7 31.0 31.1 31.4 31.4 31.5 31.9 32.2 32.2 32.5 32.7 32.9 33.1 33.3 33.6 33.7 33.8 34.2 34.5 34.7 34.8 35.0 -99.0 -99.0 + 8 CO TAVG 3 35.2 35.4 35.5 35.9 36.1 36.4 36.5 36.6 37.0 37.3 37.5 37.6 37.9 38.1 38.5 38.7 38.7 39.0 39.3 39.6 39.7 40.0 40.1 40.4 40.7 40.8 41.0 41.3 41.6 41.7 41.9 + 8 CO TAVG 4 42.3 42.4 42.6 42.8 43.1 43.4 43.5 43.7 43.9 44.3 44.5 44.7 45.1 45.3 45.5 45.8 46.2 46.4 46.6 46.9 47.3 47.5 47.6 48.1 48.4 48.6 49.0 49.3 49.6 49.9 -99.0 + 8 CO TAVG 5 50.3 50.6 50.9 51.3 51.4 51.9 52.2 52.4 52.7 53.2 53.4 53.7 54.2 54.4 54.6 55.1 55.4 55.8 56.1 56.5 56.9 57.2 57.5 57.9 58.2 58.5 58.9 59.2 59.5 60.0 60.3 + 8 CO TAVG 6 60.8 61.0 61.3 61.8 62.0 62.3 62.7 63.0 63.3 63.7 63.9 64.2 64.6 64.9 65.0 65.5 65.6 66.0 66.3 66.5 66.7 67.0 67.2 67.5 67.6 67.9 68.1 68.4 68.6 68.7 -99.0 + 8 CO TAVG 7 68.9 69.1 69.5 69.6 69.7 69.8 69.9 70.3 70.3 70.4 70.6 70.7 70.7 70.8 70.8 70.8 71.0 71.1 71.2 71.2 71.4 71.4 71.4 71.4 71.4 71.4 71.4 71.4 71.3 71.2 71.2 + 8 CO TAVG 8 71.3 71.0 70.8 70.8 70.7 70.6 70.6 70.4 70.4 70.3 70.0 69.8 69.7 69.5 69.4 69.3 68.9 68.7 68.5 68.5 68.3 67.9 67.6 67.5 67.2 66.9 66.7 66.4 66.1 65.7 65.5 + 8 CO TAVG 9 65.2 64.8 64.7 64.2 63.9 63.6 63.2 62.9 62.6 62.3 61.9 61.6 61.3 61.1 60.6 60.4 60.1 59.6 59.4 59.1 58.5 58.4 58.2 57.6 57.4 57.2 56.6 56.3 55.9 55.5 -99.0 + 8 CO TAVG 10 55.3 54.9 54.5 54.3 53.9 53.4 53.2 52.7 52.4 52.0 51.6 51.3 50.8 50.4 50.1 49.6 49.2 48.7 48.3 47.8 47.5 47.2 46.6 46.2 45.7 45.2 44.7 44.2 43.7 43.3 42.8 + 8 CO TAVG 11 42.4 41.8 41.3 40.9 40.5 40.0 39.5 39.1 38.8 38.3 37.9 37.4 37.1 36.7 36.3 36.1 35.7 35.3 35.1 34.7 34.2 34.1 33.8 33.4 33.2 33.0 32.5 32.4 32.1 32.0 -99.0 + 8 CO TAVG 12 31.7 31.4 31.3 31.1 30.8 30.7 30.5 30.3 30.2 29.9 29.8 29.6 29.4 29.3 29.1 29.1 28.9 28.7 28.6 28.4 28.4 28.3 28.2 28.2 28.0 27.9 27.8 27.8 27.7 27.7 27.6 + 8 CO RVP 1 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 + 8 CO RVP 2 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 -99.0 -99.0 + 8 CO RVP 3 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 + 8 CO RVP 4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 + 8 CO RVP 5 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 + 8 CO RVP 6 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 -99.0 + 8 CO RVP 7 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 + 8 CO RVP 8 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 + 8 CO RVP 9 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 -99.0 + 8 CO RVP 10 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 9.2 + 8 CO RVP 11 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 + 8 CO RVP 12 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 + 9 CT TMAX 1 36.7 36.7 36.6 36.1 36.1 36.0 35.9 35.9 35.9 35.9 35.7 35.7 35.7 35.7 35.7 35.5 35.5 35.4 35.4 35.1 35.1 35.1 35.2 35.2 35.5 35.6 35.8 35.8 35.8 35.9 35.9 + 9 CT TMAX 2 36.0 36.0 36.1 36.1 36.2 36.5 36.5 36.9 37.0 37.1 37.2 37.4 37.5 37.9 38.1 38.3 38.5 38.8 39.0 39.1 39.5 39.9 40.1 40.4 40.8 41.0 41.1 41.8 41.9 -99.0 -99.0 + 9 CT TMAX 3 42.0 42.1 42.8 43.0 43.1 43.8 44.0 44.4 44.8 45.0 45.4 45.9 46.0 46.4 46.9 47.0 47.5 47.9 48.0 48.6 48.9 49.4 49.8 49.8 50.5 50.8 50.9 51.5 51.8 52.1 52.5 + 9 CT TMAX 4 52.8 53.1 53.7 54.0 54.4 54.7 55.1 55.6 55.8 56.1 56.7 56.9 57.1 57.7 58.0 58.4 58.8 59.1 59.7 59.9 60.4 60.7 61.1 61.4 61.9 62.3 62.5 63.1 63.4 63.9 -99.0 + 9 CT TMAX 5 64.1 64.4 64.9 65.2 65.5 66.2 66.4 66.5 67.2 67.4 67.7 68.2 68.4 68.7 69.3 69.4 69.7 70.2 70.4 70.7 71.1 71.4 71.5 72.1 72.3 72.4 73.1 73.2 73.4 74.0 74.1 + 9 CT TMAX 6 74.2 74.7 75.0 75.1 75.2 75.7 75.9 76.1 76.5 76.7 76.9 77.1 77.5 77.6 77.8 78.4 78.5 78.5 78.6 79.2 79.4 79.5 79.5 80.1 80.3 80.5 80.5 80.6 81.2 81.3 -99.0 + 9 CT TMAX 7 81.4 81.6 82.0 82.1 82.2 82.2 82.4 82.8 83.1 83.1 83.1 83.2 83.2 83.2 83.3 83.3 83.4 83.4 83.4 83.5 83.8 84.0 84.0 83.8 83.8 83.5 83.5 83.5 83.4 83.3 83.2 + 9 CT TMAX 8 83.3 83.2 83.2 83.1 82.8 82.8 82.5 82.5 82.5 82.4 82.3 81.9 81.8 81.6 81.5 81.5 81.2 80.9 80.9 80.6 80.5 80.1 79.9 79.9 79.5 79.4 79.1 78.9 78.6 78.4 78.1 + 9 CT TMAX 9 77.9 77.6 77.3 77.0 76.9 76.5 76.1 75.9 75.6 75.1 74.9 74.7 74.4 74.1 73.7 73.5 73.1 72.7 72.6 72.1 71.7 71.5 70.9 70.6 70.5 69.9 69.6 69.4 68.7 68.6 -99.0 + 9 CT TMAX 10 68.3 67.6 67.6 66.8 66.6 66.4 65.7 65.6 65.1 64.7 64.5 64.0 63.7 63.2 62.8 62.7 62.2 61.7 61.5 61.1 60.7 60.5 59.9 59.7 59.3 58.8 58.7 58.0 57.8 57.6 57.0 + 9 CT TMAX 11 56.8 56.5 55.9 55.8 55.1 54.9 54.8 54.1 53.9 53.4 53.1 52.8 52.3 52.0 51.8 51.1 50.8 50.4 50.0 49.8 49.1 48.9 48.5 48.1 47.8 47.1 46.9 46.5 46.1 45.6 -99.0 + 9 CT TMAX 12 45.1 44.8 44.3 44.0 43.8 43.2 43.0 42.5 42.0 41.9 41.4 41.1 41.0 40.8 40.2 40.0 39.9 39.6 39.1 39.0 38.9 38.6 38.2 38.0 37.9 37.7 37.6 37.3 37.1 36.9 36.9 + 9 CT TMIN 1 18.9 18.8 18.3 18.2 18.2 18.1 17.9 17.6 17.2 17.2 17.2 17.2 17.1 17.1 17.1 17.0 17.0 16.8 16.5 16.5 16.5 16.5 16.4 16.4 16.4 16.5 16.6 16.6 16.6 16.7 16.8 + 9 CT TMIN 2 16.9 17.0 17.0 17.0 17.3 17.4 17.7 17.8 17.8 17.8 18.0 18.1 18.6 18.7 18.8 19.0 19.5 19.6 19.8 19.9 20.5 20.6 20.8 21.3 21.6 21.7 22.0 22.4 22.5 -99.0 -99.0 + 9 CT TMIN 3 22.7 23.1 23.3 23.7 24.1 24.3 24.7 25.0 25.3 25.6 26.0 26.3 26.6 27.0 27.2 27.6 27.9 28.2 28.6 28.7 29.0 29.5 29.7 30.0 30.2 30.7 31.0 31.0 31.7 31.9 32.0 + 9 CT TMIN 4 32.4 32.8 33.0 33.2 33.7 33.9 34.2 34.4 34.9 35.2 35.3 35.8 36.1 36.3 36.8 37.1 37.2 37.6 38.1 38.2 38.4 39.1 39.3 39.5 40.0 40.2 40.6 41.0 41.2 41.8 -99.0 + 9 CT TMIN 5 42.1 42.2 42.8 43.1 43.2 43.7 44.1 44.2 44.7 45.1 45.2 45.7 45.9 46.2 46.6 47.0 47.2 47.5 47.9 48.2 48.5 48.9 49.2 49.5 49.9 50.2 50.5 50.8 51.1 51.5 51.9 + 9 CT TMIN 6 52.0 52.2 52.8 52.9 53.1 53.8 53.9 54.0 54.7 54.8 54.9 55.3 55.8 55.8 56.1 56.6 56.8 56.8 57.1 57.6 57.7 57.8 58.3 58.6 58.7 58.9 59.2 59.6 59.6 59.8 -99.0 + 9 CT TMIN 7 60.0 60.3 60.6 60.7 60.8 60.9 61.2 61.3 61.6 61.6 61.7 61.9 62.1 62.2 62.2 62.2 62.3 62.3 62.5 62.6 62.6 62.6 62.6 62.6 62.7 62.7 62.7 62.6 62.6 62.6 62.6 + 9 CT TMIN 8 62.6 62.6 62.3 62.1 62.1 62.0 61.8 61.7 61.7 61.6 61.4 61.2 61.1 61.0 60.8 60.7 60.5 60.2 60.0 60.0 59.6 59.5 59.2 59.1 58.7 58.6 58.2 58.0 57.9 57.6 57.0 + 9 CT TMIN 9 57.0 56.7 56.4 56.0 55.9 55.5 55.0 54.7 54.6 54.1 53.7 53.6 52.9 52.7 52.5 51.9 51.6 51.4 50.8 50.6 49.9 49.6 49.3 48.8 48.6 47.8 47.7 47.2 46.7 46.3 -99.0 + 9 CT TMIN 10 45.8 45.5 44.8 44.6 44.0 43.7 43.3 42.8 42.5 42.1 41.8 41.4 41.1 40.7 40.4 40.1 39.7 39.4 39.1 38.7 38.5 38.4 38.0 37.8 37.5 37.1 37.0 36.7 36.4 36.3 36.1 + 9 CT TMIN 11 36.1 35.7 35.4 35.3 35.3 34.9 34.7 34.4 34.0 34.0 33.8 33.6 33.1 33.0 32.8 32.4 32.0 31.9 31.8 31.1 30.9 30.8 30.1 30.0 29.8 29.4 29.0 28.6 28.4 28.0 -99.0 + 9 CT TMIN 12 27.6 27.3 27.0 26.6 26.3 25.8 25.5 25.3 24.8 24.6 24.3 24.0 23.5 23.3 23.1 23.0 22.5 22.1 22.0 21.9 21.2 21.1 21.0 20.9 20.3 20.1 20.0 19.9 19.4 19.2 19.0 + 9 CT TAVG 1 27.7 27.6 27.5 27.5 27.3 27.0 26.7 26.6 26.6 26.6 26.6 26.5 26.5 26.5 26.4 26.2 26.1 26.0 25.9 25.7 25.7 25.7 25.8 25.8 25.9 25.9 26.0 26.2 26.5 26.5 26.5 + 9 CT TAVG 2 26.5 26.5 26.8 26.8 26.8 26.9 27.0 27.2 27.4 27.7 27.8 27.9 28.0 28.2 28.4 28.8 28.9 29.0 29.4 29.7 29.9 30.2 30.6 30.8 31.0 31.4 31.8 31.9 32.2 -99.0 -99.0 + 9 CT TAVG 3 32.4 32.7 33.1 33.5 33.7 34.1 34.5 34.7 35.1 35.4 35.5 36.1 36.3 36.5 37.1 37.4 37.5 38.1 38.4 38.5 39.1 39.4 39.7 40.1 40.3 40.6 41.1 41.4 41.6 42.1 42.3 + 9 CT TAVG 4 42.7 43.0 43.3 43.6 44.0 44.5 44.7 45.0 45.5 45.6 46.0 46.5 46.6 46.9 47.6 47.6 48.0 48.6 48.6 49.3 49.6 49.9 50.3 50.6 50.9 51.4 51.7 52.0 52.4 52.6 -99.0 + 9 CT TAVG 5 53.0 53.5 53.8 54.0 54.5 54.9 55.0 55.5 55.9 56.3 56.6 57.0 57.3 57.6 58.0 58.3 58.5 59.0 59.3 59.5 59.9 60.3 60.3 60.9 61.0 61.3 61.7 62.0 62.4 62.6 62.9 + 9 CT TAVG 6 63.3 63.4 63.6 64.3 64.3 64.6 65.1 65.3 65.3 65.6 66.1 66.3 66.4 66.7 67.0 67.3 67.5 68.0 68.0 68.2 68.5 69.0 69.0 69.1 69.3 70.0 70.0 70.0 70.2 70.6 -99.0 + 9 CT TAVG 7 71.0 71.0 71.1 71.3 71.7 71.9 72.0 72.0 72.1 72.3 72.3 72.7 72.7 72.8 72.9 73.0 73.0 73.0 73.1 73.1 73.1 73.1 73.2 73.1 73.1 73.1 73.1 73.1 73.1 73.1 73.0 + 9 CT TAVG 8 73.1 73.0 72.9 72.5 72.5 72.2 72.2 72.1 72.1 72.1 71.9 71.7 71.4 71.3 71.2 71.1 71.0 70.7 70.4 70.3 70.2 70.0 69.5 69.3 69.3 69.1 68.5 68.4 68.3 67.9 67.6 + 9 CT TAVG 9 67.4 67.3 66.9 66.5 66.3 66.0 65.6 65.5 65.1 64.6 64.5 64.1 63.7 63.3 63.1 62.9 62.2 62.1 61.7 61.2 61.1 60.4 60.2 60.0 59.2 59.1 58.6 58.2 58.0 57.3 -99.0 + 9 CT TAVG 10 57.1 56.6 56.2 55.9 55.3 55.1 54.6 54.2 53.9 53.3 53.2 52.6 52.3 52.0 51.6 51.3 51.0 50.6 50.3 50.0 49.6 49.3 49.0 48.6 48.4 48.2 47.7 47.4 47.3 47.1 46.7 + 9 CT TAVG 11 46.4 46.2 45.8 45.6 45.3 44.9 44.7 44.4 44.0 43.8 43.7 43.0 42.8 42.7 42.0 41.8 41.5 41.1 40.8 40.5 40.0 39.8 39.2 39.0 38.8 38.2 37.9 37.6 37.1 36.9 -99.0 + 9 CT TAVG 12 36.6 35.9 35.8 35.2 34.9 34.6 34.4 33.9 33.7 33.3 32.9 32.6 32.5 31.9 31.7 31.5 31.3 30.7 30.6 30.5 30.3 29.7 29.6 29.5 29.3 28.8 28.6 28.6 28.5 28.1 27.8 + 9 CT RVP 1 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 + 9 CT RVP 2 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 -99.0 -99.0 + 9 CT RVP 3 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 + 9 CT RVP 4 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 -99.0 + 9 CT RVP 5 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 + 9 CT RVP 6 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 + 9 CT RVP 7 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 + 9 CT RVP 8 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 + 9 CT RVP 9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 + 9 CT RVP 10 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 + 9 CT RVP 11 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 -99.0 + 9 CT RVP 12 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 +10 DE TMAX 1 41.8 41.8 41.7 41.5 41.5 41.5 41.5 40.9 40.9 40.8 40.8 40.8 40.7 40.5 40.5 40.5 40.5 40.5 40.5 40.5 40.5 40.5 40.5 40.6 40.7 40.7 40.7 40.7 40.9 41.5 41.5 +10 DE TMAX 2 41.5 41.5 41.7 41.7 41.7 41.7 42.3 42.4 42.5 42.7 42.7 43.3 43.3 43.4 43.7 44.3 44.3 44.4 44.5 45.3 45.3 45.4 46.1 46.3 46.3 47.1 47.3 47.4 47.7 -99.0 -99.0 +10 DE TMAX 3 48.0 48.3 48.4 49.0 49.3 49.3 50.0 50.3 50.3 51.0 51.3 51.3 52.0 52.3 52.9 53.0 53.2 53.9 54.0 54.2 55.0 55.0 55.2 55.9 56.0 56.1 57.0 57.0 57.9 58.0 58.0 +10 DE TMAX 4 58.9 59.0 59.0 59.9 60.0 60.0 60.9 61.0 61.0 61.9 62.0 62.0 62.8 63.0 63.1 63.8 64.0 64.6 64.8 65.0 65.6 65.7 65.8 66.6 66.7 66.8 67.1 67.7 67.8 68.0 -99.0 +10 DE TMAX 5 68.7 68.8 68.9 69.7 69.8 69.8 70.6 70.7 70.8 71.5 71.6 71.8 72.5 72.6 72.8 73.4 73.5 73.7 73.8 74.5 74.6 74.8 75.5 75.6 75.7 76.4 76.5 76.6 76.8 77.5 77.6 +10 DE TMAX 6 77.7 78.4 78.6 78.6 78.7 79.5 79.6 79.6 80.4 80.6 80.6 80.6 81.3 81.6 81.6 81.6 82.2 82.5 82.6 82.6 83.2 83.4 83.6 83.6 83.6 84.3 84.4 84.6 84.6 84.6 -99.0 +10 DE TMAX 7 85.3 85.4 85.4 85.5 85.6 85.6 86.3 86.3 86.3 86.3 86.4 86.4 86.4 86.5 86.6 86.6 86.6 86.6 87.1 87.3 87.3 87.3 87.2 87.1 86.6 86.6 86.6 86.5 86.4 86.4 86.4 +10 DE TMAX 8 86.4 86.4 86.3 86.2 86.2 86.2 85.6 85.5 85.5 85.4 85.3 85.2 85.2 85.2 84.6 84.6 84.4 84.3 84.3 84.2 83.6 83.6 83.6 83.4 83.3 83.3 82.6 82.6 82.5 82.3 81.8 +10 DE TMAX 9 81.7 81.6 81.5 81.5 80.8 80.7 80.5 80.5 79.8 79.7 79.5 79.5 78.8 78.7 78.5 77.9 77.7 77.5 76.9 76.7 76.7 75.9 75.8 75.0 74.9 74.7 73.9 73.9 73.7 72.9 -99.0 +10 DE TMAX 10 72.8 72.0 71.9 71.7 70.9 70.9 70.0 69.9 69.1 68.9 68.9 68.1 67.9 67.9 67.0 66.9 66.3 66.0 65.9 65.3 65.0 64.9 64.3 63.9 63.9 63.2 62.9 62.3 62.2 62.0 61.3 +10 DE TMAX 11 61.2 61.1 60.3 60.2 60.1 59.3 59.3 59.1 58.3 58.3 58.1 57.3 57.3 57.0 56.4 56.2 56.0 55.3 55.2 54.5 54.3 54.1 53.5 53.2 53.1 52.5 52.2 51.5 51.4 51.1 -99.0 +10 DE TMAX 12 50.5 50.2 49.5 49.5 49.2 48.5 48.4 48.1 47.5 47.4 47.3 46.5 46.5 46.4 45.6 45.5 45.4 45.3 44.6 44.5 44.4 43.8 43.6 43.5 43.5 43.4 42.7 42.6 42.5 42.5 42.4 +10 DE TMIN 1 25.7 25.7 25.7 25.6 24.9 24.8 24.7 24.7 24.7 24.7 24.7 24.7 24.6 24.6 24.0 24.0 24.0 24.0 24.0 23.8 23.8 23.8 23.8 23.7 23.8 23.7 23.9 24.6 24.6 24.6 24.6 +10 DE TMIN 2 24.6 24.6 24.6 24.6 24.6 24.6 24.7 24.7 25.5 25.5 25.6 25.6 25.6 25.6 26.3 26.4 26.6 26.6 26.6 27.2 27.5 27.6 27.7 28.2 28.4 28.6 29.2 29.3 29.5 -99.0 -99.0 +10 DE TMIN 3 29.6 29.6 30.3 30.3 30.6 31.2 31.3 31.6 31.6 32.3 32.3 32.6 33.2 33.3 33.3 33.6 34.2 34.3 34.3 35.2 35.2 35.3 35.4 36.1 36.3 36.3 36.5 37.1 37.3 37.3 37.9 +10 DE TMIN 4 38.1 38.2 38.4 38.9 39.1 39.2 39.4 40.1 40.1 40.2 40.9 41.1 41.1 41.8 42.1 42.1 42.2 42.9 43.1 43.2 43.9 44.1 44.1 44.9 45.1 45.1 45.9 46.1 46.7 46.9 -99.0 +10 DE TMIN 5 47.1 47.7 48.0 48.1 48.8 49.0 49.1 49.8 50.1 50.1 50.9 51.1 51.1 51.9 52.1 52.1 52.9 53.1 53.7 53.8 54.0 54.7 54.7 55.0 55.1 55.7 55.9 56.1 56.7 56.9 57.1 +10 DE TMIN 6 57.7 57.8 58.0 58.7 58.8 58.9 59.7 59.7 59.8 59.9 60.7 60.7 60.8 61.7 61.7 61.8 61.8 62.7 62.7 62.8 62.8 63.7 63.7 63.7 63.8 63.8 64.7 64.7 64.8 64.8 -99.0 +10 DE TMIN 7 64.9 65.7 65.7 65.8 65.8 65.8 66.4 66.5 66.7 66.8 66.8 66.8 66.8 66.8 66.8 67.4 67.5 67.5 67.5 67.5 67.5 67.5 67.6 67.6 67.6 67.6 67.6 67.5 67.5 67.5 67.4 +10 DE TMIN 8 67.5 67.4 67.3 66.8 66.8 66.7 66.7 66.7 66.7 66.5 66.5 66.5 65.8 65.7 65.7 65.7 65.7 65.6 65.5 64.9 64.7 64.7 64.7 64.6 63.9 63.9 63.7 63.7 63.7 63.0 62.9 +10 DE TMIN 9 62.7 62.7 62.1 62.0 61.9 61.7 61.1 61.0 60.9 60.1 60.0 59.9 59.1 59.1 59.0 58.2 58.0 57.4 57.1 57.0 56.3 56.1 55.4 55.2 54.4 54.3 54.1 53.3 53.1 52.3 -99.0 +10 DE TMIN 10 52.1 51.3 51.1 50.5 50.3 49.5 49.3 48.5 48.3 48.1 47.5 47.3 46.5 46.5 46.3 45.5 45.3 44.6 44.5 44.5 44.3 43.5 43.5 43.3 42.6 42.5 42.4 42.1 41.5 41.5 41.4 +10 DE TMIN 11 41.3 40.5 40.5 40.5 40.4 39.5 39.5 39.4 39.4 38.7 38.5 38.4 38.3 37.7 37.4 37.4 37.3 36.7 36.4 36.4 36.3 35.6 35.4 35.3 34.6 34.5 34.3 33.7 33.5 33.5 -99.0 +10 DE TMIN 12 32.7 32.6 32.5 32.3 31.7 31.5 31.3 30.7 30.7 30.5 29.7 29.7 29.7 29.5 28.8 28.7 28.7 28.5 28.5 27.8 27.7 27.7 27.5 26.9 26.8 26.7 26.7 26.6 25.9 25.8 25.7 +10 DE TAVG 1 34.0 33.9 33.3 33.3 33.3 33.3 33.2 33.2 33.1 33.0 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.3 32.9 32.9 33.0 +10 DE TAVG 2 32.9 33.0 33.0 33.1 33.2 33.2 33.9 33.9 34.0 34.0 34.0 34.2 34.9 34.9 35.0 35.0 35.1 35.9 35.9 36.0 36.7 36.9 36.9 37.0 37.7 37.9 37.9 38.6 38.7 -99.0 -99.0 +10 DE TAVG 3 38.7 38.9 39.6 39.7 39.9 40.5 40.7 40.9 41.0 41.7 41.7 41.9 42.5 42.7 42.9 43.5 43.7 43.9 44.5 44.7 44.8 45.5 45.6 45.8 46.5 46.5 46.7 47.4 47.5 47.7 47.8 +10 DE TAVG 4 48.4 48.6 48.8 49.4 49.6 49.7 50.4 50.4 50.7 51.3 51.4 51.6 52.3 52.4 52.4 53.3 53.4 53.4 53.7 54.4 54.4 54.7 55.4 55.4 55.7 56.4 56.4 57.3 57.4 57.4 -99.0 +10 DE TAVG 5 58.1 58.4 58.4 59.1 59.4 59.4 60.0 60.3 60.4 61.0 61.3 61.4 62.0 62.3 62.4 63.0 63.3 63.4 63.4 64.2 64.4 64.4 65.1 65.3 65.4 66.1 66.3 66.4 67.0 67.3 67.4 +10 DE TAVG 6 68.0 68.0 68.3 69.0 69.0 69.3 69.4 70.0 70.0 70.4 70.4 71.0 71.0 71.4 72.0 72.0 72.0 72.3 72.4 73.0 73.0 73.3 73.4 74.0 74.0 74.0 74.3 74.4 75.0 75.0 -99.0 +10 DE TAVG 7 75.3 75.3 75.9 75.9 76.0 76.0 76.0 76.3 76.3 76.3 76.9 76.9 76.9 76.9 77.0 77.0 77.0 77.0 77.0 77.0 77.0 77.1 77.0 77.0 77.0 77.0 77.0 77.0 77.0 76.9 76.9 +10 DE TAVG 8 76.9 76.9 76.9 76.9 76.8 76.1 76.0 76.0 76.0 76.0 76.0 75.9 75.9 75.3 75.1 75.0 75.0 75.0 74.9 74.9 74.3 74.1 74.0 74.0 73.9 73.3 73.3 73.3 73.0 72.9 72.3 +10 DE TAVG 9 72.3 72.3 72.1 71.3 71.3 71.3 71.2 70.3 70.3 70.3 69.5 69.3 69.3 69.3 68.3 68.3 67.6 67.5 67.3 66.6 66.3 66.3 65.6 65.3 64.7 64.6 64.3 63.7 63.3 62.7 -99.0 +10 DE TAVG 10 62.3 61.7 61.7 60.7 60.7 60.4 59.7 59.5 58.7 58.7 58.4 57.7 57.7 56.8 56.7 56.5 55.7 55.7 54.9 54.7 54.7 53.9 53.7 53.7 53.1 52.7 52.7 52.6 51.9 51.7 51.6 +10 DE TAVG 11 51.0 50.7 50.7 50.0 49.9 49.7 49.7 49.0 48.9 48.7 48.0 47.9 47.8 47.1 46.9 46.8 46.7 45.9 45.8 45.7 45.0 44.9 44.8 44.0 43.9 43.8 43.1 42.8 42.2 42.0 -99.0 +10 DE TAVG 12 41.8 41.1 41.0 40.9 40.2 40.1 39.9 39.9 39.1 38.9 38.9 38.1 38.0 37.9 37.3 37.1 37.0 36.9 36.3 36.3 36.0 35.9 35.3 35.3 35.1 35.0 34.9 34.3 34.3 34.3 34.2 +10 DE RVP 1 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 +10 DE RVP 2 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 -99.0 -99.0 +10 DE RVP 3 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 +10 DE RVP 4 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 -99.0 +10 DE RVP 5 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 +10 DE RVP 6 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 -99.0 +10 DE RVP 7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 +10 DE RVP 8 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 +10 DE RVP 9 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 6.7 -99.0 +10 DE RVP 10 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 +10 DE RVP 11 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 -99.0 +10 DE RVP 12 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 13.4 +11 DC TMAX 1 43.8 43.7 43.7 43.0 43.0 43.0 43.0 42.8 42.8 42.8 42.8 42.8 42.8 42.7 42.7 42.0 42.0 42.1 42.8 42.8 42.8 42.8 42.8 43.0 43.0 43.0 43.0 43.0 43.1 43.1 43.1 +11 DC TMAX 2 43.8 44.0 44.1 44.1 44.1 44.1 45.0 45.1 45.1 45.1 45.1 46.1 46.1 46.1 46.1 46.4 47.1 47.1 47.3 48.0 48.1 48.1 48.4 49.1 49.1 49.4 50.0 50.1 50.2 -99.0 -99.0 +11 DC TMAX 3 50.2 51.0 51.1 51.4 51.4 52.1 52.4 52.4 53.1 53.4 54.0 54.1 54.4 55.0 55.1 55.4 56.0 56.2 56.4 57.0 57.2 57.4 58.0 58.2 58.4 59.2 59.4 59.4 60.2 60.4 61.1 +11 DC TMAX 4 61.2 61.4 62.2 62.2 62.4 63.2 63.4 63.5 64.2 64.4 64.5 65.2 65.4 66.2 66.2 66.4 67.2 67.2 67.4 68.1 68.2 68.2 69.1 69.2 69.2 70.1 70.2 70.2 70.2 71.1 -99.0 +11 DC TMAX 5 71.2 71.2 72.1 72.1 72.2 72.9 73.1 73.1 73.8 74.1 74.1 74.8 74.9 75.1 75.7 75.8 76.1 76.1 76.7 77.1 77.1 77.7 77.8 78.1 78.7 78.7 79.1 79.7 79.7 80.0 80.1 +11 DC TMAX 6 80.7 80.8 81.0 81.7 81.7 82.0 82.0 82.7 82.7 83.0 83.6 83.7 83.9 84.0 84.0 84.7 84.7 85.0 85.0 85.6 85.6 86.0 86.0 86.0 86.6 86.6 86.7 87.0 87.0 87.0 -99.0 +11 DC TMAX 7 87.6 87.7 87.7 87.9 88.0 88.0 88.6 88.7 88.7 88.7 88.7 88.7 88.7 88.7 88.7 88.9 88.9 88.9 89.0 89.0 89.0 89.7 89.7 89.7 89.0 88.9 88.9 88.8 88.7 88.7 88.7 +11 DC TMAX 8 88.7 88.7 88.7 88.7 88.7 88.7 88.7 88.7 87.8 87.7 87.7 87.7 87.7 87.7 87.7 87.5 86.7 86.7 86.7 86.7 86.7 86.5 85.7 85.7 85.7 85.7 85.7 85.5 84.7 84.7 84.7 +11 DC TMAX 9 84.7 83.7 83.7 83.7 83.7 82.8 82.7 82.7 82.5 81.7 81.7 81.7 80.8 80.7 80.7 80.5 79.7 79.7 78.8 78.7 78.7 77.8 77.7 77.7 76.8 76.7 76.5 75.8 75.7 74.8 -99.0 +11 DC TMAX 10 74.7 73.8 73.8 73.7 72.8 72.8 71.8 71.8 71.7 70.8 70.8 69.8 69.8 69.8 68.8 68.8 68.5 67.8 67.8 66.9 66.8 66.8 65.8 65.8 65.7 64.8 64.8 64.7 63.8 63.8 63.0 +11 DC TMAX 11 62.8 62.8 62.0 61.8 61.7 61.0 60.8 60.7 60.0 59.8 59.7 59.0 58.8 58.7 58.0 57.7 57.7 56.8 56.7 56.0 55.8 55.7 55.0 54.7 54.7 54.0 53.7 53.0 52.8 52.7 -99.0 +11 DC TMAX 12 52.0 51.8 51.7 51.0 50.7 50.7 49.8 49.7 49.7 48.8 48.8 48.7 48.0 47.8 47.7 47.0 46.8 46.8 46.7 46.0 45.8 45.8 45.7 45.0 45.0 44.8 44.8 44.7 44.0 44.0 43.8 +11 DC TMIN 1 25.8 25.6 25.6 25.5 24.8 24.8 24.8 24.8 24.6 24.6 24.6 24.6 24.6 24.6 24.6 24.6 24.5 24.5 24.5 23.8 23.8 23.8 23.9 24.5 24.5 24.5 24.6 24.6 24.6 24.6 24.6 +11 DC TMIN 2 24.6 24.8 24.8 24.9 24.9 25.5 25.5 25.5 25.7 25.8 25.8 25.9 25.9 26.5 26.7 26.8 26.9 26.9 27.5 27.7 27.8 27.9 28.6 28.8 28.8 28.9 29.6 29.8 29.8 -99.0 -99.0 +11 DC TMIN 3 29.8 29.9 30.8 30.8 30.8 31.8 31.8 31.8 31.8 32.8 32.8 32.8 33.6 33.8 33.8 33.9 34.8 34.8 34.8 35.6 35.8 35.8 35.8 36.8 36.8 36.8 36.8 37.8 37.8 37.8 38.6 +11 DC TMIN 4 38.8 38.8 38.8 39.8 39.8 39.8 40.5 40.8 40.8 40.9 41.6 41.8 41.8 42.5 42.8 42.8 43.5 43.8 43.8 44.5 44.7 44.8 44.9 45.5 45.8 45.9 46.6 46.8 47.5 47.6 -99.0 +11 DC TMIN 5 47.8 48.5 48.6 48.8 49.6 49.8 49.8 50.6 50.8 50.8 51.6 51.8 51.8 52.6 52.8 52.8 53.6 53.6 53.8 54.5 54.6 55.5 55.5 55.6 56.5 56.5 56.6 56.8 57.5 57.6 57.8 +11 DC TMIN 6 58.5 58.6 58.8 59.5 59.5 59.8 60.5 60.5 60.6 60.8 61.5 61.5 61.8 62.5 62.5 62.5 62.8 63.5 63.5 63.5 63.6 64.5 64.5 64.5 64.5 64.8 65.5 65.5 65.5 65.5 -99.0 +11 DC TMIN 7 66.5 66.5 66.5 66.5 66.5 66.5 67.4 67.5 67.5 67.5 67.5 67.5 67.5 67.5 67.5 67.5 67.5 67.5 67.7 67.8 68.4 68.4 68.5 67.8 67.8 67.8 67.8 67.6 67.6 67.5 67.5 +11 DC TMIN 8 67.6 67.5 67.5 67.5 67.5 66.8 66.8 66.8 66.8 66.8 66.6 66.6 65.8 65.8 65.8 65.8 65.8 65.8 65.0 64.9 64.8 64.8 64.8 64.8 64.0 63.9 63.8 63.8 63.1 63.0 63.0 +11 DC TMIN 9 62.8 62.1 62.1 62.0 61.9 61.1 61.1 61.0 60.8 60.1 60.1 59.9 59.1 59.1 58.3 58.1 58.1 57.1 57.1 56.5 56.1 56.1 55.1 55.1 54.1 54.1 53.3 53.1 52.3 52.1 -99.0 +11 DC TMIN 10 51.3 51.1 50.3 50.1 49.4 49.1 48.4 48.3 48.0 47.3 47.0 46.4 46.3 45.4 45.3 45.0 44.4 44.3 44.0 43.3 43.3 43.0 42.3 42.1 42.0 42.0 41.3 41.1 41.0 41.0 40.2 +11 DC TMIN 11 40.1 40.0 39.8 39.2 39.1 39.0 38.8 38.8 38.1 38.1 37.8 37.8 37.1 36.8 36.8 36.8 36.1 35.8 35.8 35.8 34.9 34.8 34.8 34.8 33.9 33.8 33.8 33.7 32.8 32.8 -99.0 +11 DC TMIN 12 32.8 31.8 31.8 31.8 31.7 30.8 30.8 30.8 30.7 29.8 29.8 29.8 29.8 29.5 28.8 28.8 28.8 28.5 27.8 27.8 27.8 27.8 27.5 26.8 26.8 26.8 26.6 26.6 26.5 25.8 25.8 +11 DC TAVG 1 35.1 34.5 34.4 34.1 34.1 34.1 34.1 34.1 34.1 34.1 33.5 33.5 33.5 33.5 33.3 33.1 33.1 33.2 33.2 33.2 33.4 33.5 33.5 33.5 33.5 33.5 33.5 34.1 34.1 34.1 34.1 +11 DC TAVG 2 34.2 34.4 34.5 34.5 34.5 34.5 35.2 35.4 35.4 35.5 35.5 36.2 36.4 36.4 36.5 36.5 37.2 37.4 37.5 37.5 37.5 38.4 38.4 38.5 39.4 39.4 39.5 39.7 40.1 -99.0 -99.0 +11 DC TAVG 3 40.4 40.5 40.5 41.4 41.5 41.5 42.4 42.5 42.5 42.7 43.5 43.5 43.7 44.5 44.5 44.5 45.5 45.5 45.5 46.5 46.5 46.5 47.4 47.5 47.5 48.4 48.5 48.5 48.7 49.5 49.5 +11 DC TAVG 4 49.7 50.5 50.5 50.6 51.5 51.5 51.5 52.5 52.5 52.5 53.5 53.5 53.5 54.4 54.5 54.5 55.4 55.5 55.5 56.4 56.5 56.5 57.2 57.5 57.5 57.5 58.4 58.5 58.5 59.5 -99.0 +11 DC TAVG 5 59.5 60.2 60.5 60.5 61.2 61.4 61.5 62.2 62.3 62.5 62.5 63.2 63.4 63.5 64.2 64.4 64.5 65.2 65.4 65.4 66.1 66.3 66.4 67.1 67.3 67.4 68.1 68.2 68.4 69.1 69.2 +11 DC TAVG 6 69.4 70.1 70.1 70.4 70.4 71.1 71.2 71.4 72.1 72.1 72.2 72.4 73.1 73.2 73.4 73.4 74.1 74.1 74.2 74.4 75.1 75.1 75.2 75.4 75.4 76.0 76.1 76.2 76.3 76.4 -99.0 +11 DC TAVG 7 77.0 77.0 77.2 77.2 77.2 77.4 78.0 78.0 78.0 78.0 78.2 78.2 78.2 78.2 78.2 78.2 78.3 78.3 78.4 78.4 79.0 79.0 79.0 78.4 78.4 78.4 78.4 78.2 78.2 78.2 78.2 +11 DC TAVG 8 78.2 78.2 78.1 78.1 78.1 78.0 77.4 77.4 77.2 77.2 77.2 77.2 77.1 77.1 76.4 76.4 76.2 76.2 76.2 76.1 75.4 75.4 75.2 75.2 75.1 75.1 74.4 74.4 74.2 74.2 73.4 +11 DC TAVG 9 73.4 73.4 73.2 72.4 72.4 72.4 72.2 71.4 71.4 71.2 71.2 70.4 70.4 70.2 69.4 69.4 68.5 68.4 68.4 67.5 67.4 67.2 66.4 66.4 65.5 65.4 64.5 64.4 64.4 63.4 -99.0 +11 DC TAVG 10 63.4 62.5 62.4 61.5 61.4 60.7 60.5 60.4 59.5 59.4 58.7 58.4 57.7 57.5 57.4 56.7 56.5 56.4 55.7 55.5 55.4 54.5 54.4 54.4 53.5 53.4 53.4 52.5 52.5 52.4 51.7 +11 DC TAVG 11 51.5 51.4 51.4 50.5 50.4 50.4 49.5 49.5 49.4 49.1 48.5 48.4 48.4 47.5 47.4 47.4 47.1 46.4 46.4 46.1 45.4 45.4 45.1 44.5 44.4 44.1 43.5 43.4 43.1 42.5 -99.0 +11 DC TAVG 12 42.4 42.1 41.5 41.4 41.1 40.5 40.4 40.1 40.1 39.5 39.4 39.1 39.1 38.4 38.4 38.1 38.1 37.5 37.4 37.1 37.1 36.5 36.4 36.1 36.1 36.1 35.5 35.4 35.1 35.1 35.1 +11 DC RVP 1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +11 DC RVP 2 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 -99.0 +11 DC RVP 3 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 +11 DC RVP 4 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +11 DC RVP 5 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +11 DC RVP 6 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +11 DC RVP 7 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +11 DC RVP 8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +11 DC RVP 9 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +11 DC RVP 10 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +11 DC RVP 11 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 +11 DC RVP 12 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +12 FL TMAX 1 71.9 71.9 71.8 71.6 71.6 71.6 71.5 71.5 71.4 71.4 71.4 71.4 71.3 71.4 71.3 71.4 71.4 71.4 71.4 71.6 71.7 71.7 71.8 71.8 71.8 71.9 71.9 71.9 72.1 72.1 72.2 +12 FL TMAX 2 72.0 72.0 72.1 72.3 72.4 72.4 72.5 72.5 72.6 72.6 72.7 72.8 73.1 73.2 73.3 73.4 73.5 73.6 73.7 73.9 74.0 74.2 74.3 74.3 74.6 74.8 75.0 75.2 75.3 -99.0 -99.0 +12 FL TMAX 3 75.3 75.4 75.6 75.7 76.0 76.1 76.2 76.4 76.6 76.8 76.9 77.1 77.2 77.4 77.5 77.6 77.7 77.9 78.0 78.1 78.3 78.4 78.6 78.8 78.8 79.0 79.1 79.2 79.3 79.3 79.5 +12 FL TMAX 4 79.7 79.8 80.1 80.1 80.2 80.2 80.3 80.5 80.6 80.7 80.9 81.1 81.1 81.4 81.5 81.6 81.7 81.9 82.0 82.3 82.4 82.6 82.8 82.9 83.1 83.2 83.4 83.6 83.8 84.0 -99.0 +12 FL TMAX 5 84.3 84.4 84.5 84.7 84.9 85.0 85.2 85.4 85.6 85.7 85.9 86.0 86.2 86.3 86.4 86.6 86.7 86.8 87.0 87.2 87.3 87.4 87.4 87.5 87.6 87.9 88.0 88.1 88.1 88.2 88.4 +12 FL TMAX 6 88.4 88.5 88.6 88.7 88.8 89.0 89.1 89.1 89.1 89.2 89.2 89.2 89.3 89.4 89.5 89.7 89.7 89.7 89.8 89.9 89.9 90.0 90.1 90.1 90.2 90.2 90.3 90.3 90.3 90.4 -99.0 +12 FL TMAX 7 90.4 90.4 90.4 90.5 90.5 90.5 90.7 90.7 90.7 90.8 90.8 90.8 90.9 90.9 90.9 91.0 91.0 91.0 91.0 91.1 91.1 91.1 91.1 91.1 91.1 91.1 91.2 91.1 91.1 91.0 90.9 +12 FL TMAX 8 91.1 91.0 91.0 91.0 91.0 91.1 91.1 91.0 90.9 90.8 90.8 90.8 90.8 90.8 90.7 90.7 90.7 90.6 90.6 90.5 90.5 90.5 90.4 90.4 90.3 90.3 90.3 90.2 90.2 90.1 90.1 +12 FL TMAX 9 90.2 90.1 90.1 90.1 90.0 89.9 89.9 89.8 89.7 89.6 89.4 89.4 89.3 89.2 89.1 88.9 88.9 88.8 88.7 88.5 88.5 88.2 88.1 87.8 87.7 87.6 87.5 87.3 87.1 86.9 -99.0 +12 FL TMAX 10 86.7 86.6 86.5 86.1 86.0 85.8 85.7 85.5 85.2 85.1 84.9 84.7 84.6 84.3 84.2 83.9 83.8 83.7 83.5 83.3 83.1 83.0 82.7 82.5 82.4 82.2 81.9 81.8 81.7 81.5 81.2 +12 FL TMAX 11 81.1 80.8 80.7 80.5 80.4 80.2 80.0 79.9 79.5 79.4 79.3 79.1 79.0 78.7 78.3 78.2 78.1 77.9 77.7 77.6 77.2 77.1 76.8 76.7 76.6 76.3 76.1 75.9 75.7 75.5 -99.0 +12 FL TMAX 12 75.3 75.1 75.0 74.7 74.5 74.3 74.1 74.0 73.9 73.8 73.6 73.4 73.3 73.0 73.0 72.8 72.8 72.6 72.5 72.5 72.4 72.3 72.2 72.1 72.1 72.1 72.0 71.9 71.8 71.8 71.6 +12 FL TMIN 1 51.8 51.8 51.7 51.6 51.6 51.6 51.5 51.5 51.4 51.3 51.3 51.2 51.2 51.2 51.2 51.2 51.0 51.0 51.0 51.0 51.0 51.0 51.1 51.1 51.1 51.1 51.2 51.2 51.3 51.4 51.4 +12 FL TMIN 2 51.2 51.3 51.5 51.5 51.6 51.6 51.7 51.8 51.9 51.9 52.0 52.0 52.1 52.3 52.4 52.5 52.7 52.8 53.0 53.0 53.2 53.4 53.5 53.7 53.8 54.1 54.3 54.4 54.5 -99.0 -99.0 +12 FL TMIN 3 54.5 54.7 55.0 55.2 55.4 55.5 55.7 55.8 56.0 56.2 56.4 56.6 56.7 56.8 57.0 57.1 57.2 57.3 57.5 57.7 57.9 58.0 58.1 58.2 58.3 58.3 58.4 58.6 58.7 58.8 59.0 +12 FL TMIN 4 59.0 59.1 59.2 59.3 59.4 59.4 59.6 59.8 59.8 60.0 60.2 60.3 60.4 60.6 60.7 61.0 61.0 61.2 61.5 61.6 61.8 61.9 62.1 62.4 62.6 62.8 62.9 63.1 63.5 63.6 -99.0 +12 FL TMIN 5 63.9 64.1 64.3 64.4 64.7 65.0 65.2 65.4 65.6 65.8 66.0 66.2 66.5 66.7 66.9 67.1 67.2 67.3 67.7 67.9 68.0 68.3 68.5 68.7 68.8 68.9 69.2 69.4 69.6 69.8 70.0 +12 FL TMIN 6 70.1 70.2 70.5 70.6 70.7 70.9 71.0 71.3 71.4 71.5 71.7 71.7 71.8 71.9 72.0 72.2 72.2 72.3 72.5 72.7 72.7 72.7 72.8 72.9 72.9 73.0 73.1 73.1 73.1 73.3 -99.0 +12 FL TMIN 7 73.1 73.1 73.1 73.2 73.2 73.2 73.2 73.2 73.2 73.3 73.3 73.3 73.4 73.4 73.4 73.6 73.6 73.6 73.6 73.7 73.8 73.9 73.9 73.9 73.9 73.9 73.9 73.9 73.9 73.9 73.8 +12 FL TMIN 8 73.6 73.6 73.6 73.7 73.7 73.7 73.8 73.8 73.8 73.8 73.8 73.8 73.7 73.7 73.8 73.6 73.6 73.7 73.7 73.7 73.7 73.7 73.7 73.8 73.8 73.6 73.6 73.6 73.6 73.6 73.6 +12 FL TMIN 9 73.7 73.7 73.7 73.6 73.6 73.4 73.4 73.3 73.3 73.2 73.1 73.0 72.9 72.8 72.7 72.6 72.5 72.4 72.3 72.2 72.0 71.7 71.4 71.3 71.1 70.9 70.7 70.6 70.3 70.1 -99.0 +12 FL TMIN 10 69.7 69.5 69.2 69.0 68.8 68.6 68.3 68.1 67.8 67.5 67.4 67.2 66.9 66.6 66.5 66.3 65.9 65.7 65.6 65.4 65.2 64.8 64.7 64.5 64.3 64.0 63.8 63.7 63.4 63.2 63.0 +12 FL TMIN 11 62.8 62.6 62.4 62.2 62.0 61.8 61.6 61.4 61.2 61.0 60.8 60.6 60.3 60.0 59.9 59.7 59.4 59.2 59.0 58.8 58.7 58.3 58.1 57.9 57.7 57.4 57.2 57.0 56.7 56.4 -99.0 +12 FL TMIN 12 56.3 56.1 55.9 55.6 55.4 55.3 54.9 54.7 54.7 54.4 54.3 54.1 53.8 53.7 53.7 53.6 53.3 53.2 53.0 52.9 52.7 52.7 52.6 52.5 52.4 52.2 52.2 52.1 52.0 51.8 51.8 +12 FL TAVG 1 61.9 61.9 61.8 61.7 61.7 61.7 61.6 61.5 61.5 61.4 61.4 61.4 61.4 61.3 61.3 61.2 61.2 61.2 61.3 61.3 61.3 61.4 61.4 61.5 61.5 61.5 61.5 61.6 61.6 61.7 61.8 +12 FL TAVG 2 61.6 61.6 61.7 61.9 61.9 62.0 62.1 62.2 62.3 62.4 62.5 62.6 62.7 62.7 62.9 62.9 63.0 63.1 63.2 63.6 63.7 63.9 64.0 64.2 64.2 64.3 64.4 64.9 64.9 -99.0 -99.0 +12 FL TAVG 3 65.0 65.2 65.3 65.5 65.7 65.8 65.9 66.1 66.3 66.6 66.7 66.8 67.0 67.1 67.2 67.4 67.5 67.7 67.8 68.0 68.1 68.2 68.3 68.5 68.6 68.7 68.8 68.9 68.9 69.1 69.2 +12 FL TAVG 4 69.3 69.5 69.5 69.7 69.9 70.0 70.1 70.1 70.2 70.3 70.6 70.7 70.8 70.9 71.2 71.3 71.4 71.6 71.8 72.0 72.0 72.2 72.6 72.7 72.8 72.9 73.2 73.4 73.6 73.9 -99.0 +12 FL TAVG 5 74.1 74.2 74.4 74.7 74.8 75.0 75.2 75.4 75.6 75.8 76.0 76.2 76.3 76.4 76.7 76.8 77.0 77.3 77.3 77.5 77.7 77.8 78.0 78.2 78.3 78.4 78.6 78.8 78.9 79.0 79.2 +12 FL TAVG 6 79.2 79.3 79.6 79.7 79.7 80.0 80.0 80.2 80.3 80.3 80.5 80.6 80.6 80.7 80.8 80.8 81.0 81.1 81.1 81.3 81.4 81.5 81.5 81.6 81.6 81.6 81.7 81.7 81.7 81.8 -99.0 +12 FL TAVG 7 81.8 81.7 81.7 81.8 81.8 81.8 81.8 81.8 81.9 82.0 82.0 82.0 82.2 82.2 82.2 82.3 82.3 82.4 82.4 82.5 82.5 82.5 82.5 82.5 82.5 82.6 82.5 82.5 82.6 82.6 82.5 +12 FL TAVG 8 82.4 82.4 82.4 82.4 82.5 82.5 82.4 82.4 82.4 82.4 82.4 82.5 82.4 82.4 82.3 82.3 82.2 82.2 82.2 82.1 82.0 82.0 82.0 82.0 82.0 81.9 81.9 81.9 81.8 81.8 81.8 +12 FL TAVG 9 82.0 81.9 81.9 81.8 81.8 81.7 81.7 81.5 81.5 81.4 81.4 81.3 81.1 81.1 80.9 80.9 80.7 80.6 80.4 80.3 80.2 80.0 79.8 79.6 79.5 79.3 79.1 78.9 78.7 78.5 -99.0 +12 FL TAVG 10 78.3 78.1 77.8 77.5 77.4 77.2 77.0 76.8 76.6 76.5 76.2 75.9 75.7 75.5 75.3 75.2 75.0 74.8 74.5 74.3 74.1 73.9 73.7 73.6 73.5 73.1 72.8 72.7 72.5 72.4 72.2 +12 FL TAVG 11 72.0 71.6 71.5 71.4 71.2 71.1 70.9 70.6 70.3 70.2 70.0 69.9 69.7 69.4 69.2 69.0 68.7 68.6 68.4 68.1 68.0 67.7 67.5 67.3 67.0 66.9 66.7 66.4 66.3 66.1 -99.0 +12 FL TAVG 12 65.7 65.6 65.4 65.1 65.0 64.9 64.6 64.4 64.3 64.1 63.9 63.8 63.6 63.5 63.3 63.2 63.1 62.9 62.7 62.6 62.6 62.5 62.5 62.3 62.2 62.2 62.1 62.0 61.9 61.9 61.7 +12 FL RVP 1 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +12 FL RVP 2 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 -99.0 -99.0 +12 FL RVP 3 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 FL RVP 4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 FL RVP 5 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 FL RVP 6 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 FL RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 FL RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 FL RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 FL RVP 10 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 FL RVP 11 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 FL RVP 12 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +13 GA TMAX 1 53.6 53.5 53.5 53.4 53.3 53.2 53.1 53.0 52.9 52.9 52.8 52.8 53.0 53.0 53.1 53.2 53.3 53.4 53.5 53.6 53.7 53.7 53.8 53.9 53.9 54.3 54.4 54.5 54.7 54.8 55.1 +13 GA TMAX 2 55.3 55.4 55.6 55.9 56.0 56.3 56.5 56.7 57.0 57.2 57.4 57.8 57.9 58.1 58.3 58.7 58.8 59.1 59.3 59.7 59.9 60.2 60.4 60.8 60.9 61.2 61.6 61.8 61.9 -99.0 -99.0 +13 GA TMAX 3 62.1 62.4 62.8 63.0 63.2 63.6 63.8 64.1 64.4 64.8 65.0 65.2 65.5 65.8 66.0 66.3 66.6 66.9 67.1 67.4 67.7 67.9 68.2 68.5 68.8 69.0 69.2 69.6 69.9 70.0 70.2 +13 GA TMAX 4 70.5 70.9 71.0 71.3 71.5 71.8 72.0 72.3 72.5 72.8 73.0 73.3 73.5 73.8 73.9 74.1 74.4 74.7 74.9 75.0 75.4 75.6 75.8 75.9 76.1 76.5 76.8 76.9 77.0 77.4 -99.0 +13 GA TMAX 5 77.7 77.8 77.9 78.2 78.5 78.7 78.9 79.1 79.3 79.7 79.8 80.0 80.2 80.5 80.7 80.9 81.1 81.3 81.6 81.7 81.9 82.2 82.5 82.7 82.9 83.0 83.3 83.6 83.8 84.0 84.2 +13 GA TMAX 6 84.4 84.7 84.9 85.0 85.3 85.5 85.7 85.8 86.1 86.3 86.5 86.6 86.7 86.9 87.2 87.4 87.5 87.6 87.7 87.8 88.0 88.2 88.4 88.5 88.6 88.7 88.8 88.8 89.0 89.2 -99.0 +13 GA TMAX 7 89.3 89.4 89.4 89.6 89.6 89.6 89.6 89.6 89.6 89.7 89.8 89.8 89.8 89.9 90.1 90.2 90.2 90.3 90.4 90.4 90.4 90.3 90.3 90.3 90.3 90.2 90.1 90.0 90.0 89.9 89.8 +13 GA TMAX 8 89.9 89.9 89.8 89.7 89.6 89.6 89.5 89.4 89.4 89.4 89.3 89.2 89.1 88.9 88.8 88.7 88.6 88.5 88.5 88.4 88.2 88.1 87.9 87.8 87.7 87.5 87.4 87.2 87.1 87.0 86.8 +13 GA TMAX 9 86.7 86.5 86.3 86.1 86.0 85.7 85.6 85.4 85.2 85.0 84.8 84.5 84.3 84.1 83.9 83.5 83.2 83.1 82.9 82.5 82.2 82.1 81.7 81.3 81.2 80.7 80.4 80.2 79.8 79.5 -99.0 +13 GA TMAX 10 79.2 78.9 78.4 78.2 77.8 77.5 77.2 76.8 76.5 76.3 75.9 75.5 75.3 75.1 74.6 74.4 74.1 73.6 73.5 73.3 72.7 72.5 72.4 71.9 71.6 71.5 71.0 70.7 70.6 70.1 69.8 +13 GA TMAX 11 69.7 69.3 69.0 68.8 68.5 68.1 67.8 67.7 67.2 66.9 66.7 66.4 66.1 65.8 65.4 65.1 64.9 64.6 64.2 63.9 63.6 63.2 62.9 62.6 62.2 61.9 61.6 61.2 60.8 60.6 -99.0 +13 GA TMAX 12 60.2 59.8 59.6 59.3 58.8 58.7 58.5 58.0 57.7 57.6 57.1 56.9 56.8 56.6 56.3 55.9 55.9 55.7 55.4 55.2 54.9 54.9 54.8 54.6 54.3 54.3 54.0 54.0 53.9 53.7 53.6 +13 GA TMIN 1 32.8 32.8 32.7 32.7 32.6 32.6 32.4 32.4 32.4 32.2 32.2 32.2 32.2 32.2 32.1 32.1 32.1 32.1 32.2 32.2 32.2 32.3 32.4 32.4 32.4 32.6 32.6 32.6 32.8 32.9 32.9 +13 GA TMIN 2 32.9 33.0 33.0 33.2 33.3 33.4 33.5 33.6 33.7 33.8 34.1 34.2 34.3 34.6 34.7 34.9 35.1 35.2 35.5 35.8 36.0 36.1 36.3 36.7 36.9 37.1 37.4 37.8 37.9 -99.0 -99.0 +13 GA TMIN 3 38.0 38.2 38.6 38.9 39.0 39.4 39.7 39.9 40.1 40.4 40.7 40.8 41.1 41.3 41.7 41.7 42.0 42.2 42.4 42.6 42.9 43.2 43.3 43.4 43.6 43.8 44.1 44.2 44.3 44.5 44.8 +13 GA TMIN 4 44.9 45.1 45.2 45.5 45.7 45.8 46.0 46.2 46.5 46.7 46.8 47.1 47.4 47.6 47.8 48.0 48.4 48.6 48.7 49.1 49.4 49.6 49.9 50.3 50.5 50.7 51.3 51.4 51.7 52.0 -99.0 +13 GA TMIN 5 52.4 52.7 53.1 53.4 53.7 54.0 54.4 54.7 54.9 55.3 55.6 55.8 56.3 56.5 56.7 57.2 57.4 57.7 58.0 58.3 58.6 58.8 59.1 59.5 59.7 59.9 60.3 60.5 60.8 61.1 61.4 +13 GA TMIN 6 61.5 61.9 62.2 62.3 62.5 62.8 63.2 63.3 63.6 63.7 64.0 64.2 64.4 64.6 64.8 65.0 65.2 65.5 65.6 65.8 66.0 66.0 66.4 66.5 66.7 66.8 66.9 67.1 67.2 67.4 -99.0 +13 GA TMIN 7 67.6 67.6 67.8 67.9 68.0 68.1 68.3 68.3 68.3 68.5 68.6 68.6 68.7 68.8 68.8 68.8 68.9 68.9 69.0 69.0 69.1 69.1 69.2 69.2 69.2 69.2 69.2 69.2 69.1 69.0 69.0 +13 GA TMIN 8 69.1 69.0 69.0 68.9 68.8 68.7 68.7 68.6 68.6 68.5 68.4 68.3 68.3 68.1 68.0 68.0 67.9 67.9 67.7 67.7 67.6 67.4 67.2 67.1 67.1 67.0 66.9 66.8 66.5 66.4 66.2 +13 GA TMIN 9 66.2 66.1 65.9 65.8 65.4 65.3 65.2 64.9 64.6 64.4 64.2 63.9 63.5 63.3 63.0 62.7 62.3 62.0 61.7 61.3 60.9 60.5 60.0 59.8 59.2 58.8 58.3 57.9 57.5 56.9 -99.0 +13 GA TMIN 10 56.5 55.9 55.6 54.9 54.6 54.1 53.6 53.2 52.8 52.3 51.9 51.4 51.2 50.8 50.3 50.0 49.5 49.3 48.9 48.5 48.3 48.0 47.6 47.3 47.2 46.7 46.4 46.3 46.1 45.7 45.5 +13 GA TMIN 11 45.2 45.0 44.9 44.6 44.3 44.1 44.0 43.7 43.3 43.2 43.0 42.6 42.4 42.2 42.1 41.7 41.4 41.2 41.0 40.8 40.4 40.3 40.0 39.7 39.4 39.2 38.9 38.6 38.4 38.2 -99.0 +13 GA TMIN 12 37.9 37.5 37.4 37.2 36.9 36.6 36.4 36.2 35.9 35.7 35.5 35.4 35.2 35.0 34.8 34.6 34.5 34.4 34.1 34.0 33.9 33.7 33.6 33.6 33.5 33.2 33.1 33.0 32.9 32.8 32.8 +13 GA TAVG 1 43.3 43.3 43.2 43.0 43.0 42.9 42.7 42.6 42.5 42.5 42.5 42.5 42.5 42.5 42.6 42.6 42.7 42.7 42.9 42.9 43.0 43.2 43.3 43.3 43.3 43.4 43.4 43.4 43.7 43.9 44.0 +13 GA TAVG 2 44.1 44.2 44.3 44.4 44.8 44.9 45.0 45.2 45.3 45.7 45.8 46.0 46.1 46.2 46.6 46.8 47.0 47.2 47.6 47.7 47.9 48.1 48.5 48.7 49.0 49.3 49.5 49.8 49.9 -99.0 -99.0 +13 GA TAVG 3 50.1 50.4 50.7 51.0 51.2 51.5 51.8 52.0 52.4 52.5 52.9 53.1 53.4 53.6 53.9 54.1 54.4 54.6 54.9 55.0 55.3 55.5 55.8 56.0 56.2 56.4 56.6 56.9 57.0 57.2 57.5 +13 GA TAVG 4 57.8 57.9 58.1 58.4 58.7 58.8 59.0 59.3 59.6 59.7 59.9 60.1 60.5 60.6 60.8 61.1 61.4 61.6 61.8 62.1 62.4 62.6 62.8 63.2 63.4 63.7 64.0 64.3 64.5 64.7 -99.0 +13 GA TAVG 5 65.0 65.3 65.6 65.9 66.1 66.4 66.7 67.0 67.2 67.4 67.8 67.9 68.2 68.5 68.8 69.0 69.3 69.5 69.9 70.1 70.4 70.5 70.9 71.1 71.3 71.5 71.8 72.1 72.3 72.5 72.8 +13 GA TAVG 6 73.0 73.3 73.5 73.7 73.9 74.1 74.4 74.7 74.8 75.0 75.2 75.5 75.6 75.9 76.0 76.1 76.3 76.5 76.8 76.9 77.0 77.2 77.3 77.5 77.6 77.8 77.9 78.0 78.2 78.3 -99.0 +13 GA TAVG 7 78.3 78.5 78.7 78.8 78.9 79.0 79.1 79.1 79.1 79.2 79.2 79.2 79.3 79.4 79.4 79.4 79.5 79.5 79.6 79.7 79.7 79.7 79.9 79.9 79.7 79.7 79.6 79.6 79.6 79.4 79.4 +13 GA TAVG 8 79.5 79.4 79.3 79.3 79.3 79.2 79.1 79.1 79.0 78.9 78.9 78.7 78.7 78.6 78.5 78.3 78.3 78.2 78.1 78.0 77.8 77.8 77.7 77.5 77.4 77.2 77.1 77.1 76.9 76.8 76.6 +13 GA TAVG 9 76.4 76.3 76.2 75.9 75.8 75.5 75.4 75.1 75.0 74.7 74.4 74.3 74.0 73.6 73.5 73.1 72.9 72.5 72.3 72.0 71.6 71.3 70.8 70.5 70.2 69.8 69.5 68.9 68.6 68.4 -99.0 +13 GA TAVG 10 67.7 67.4 66.9 66.6 66.3 65.7 65.5 65.1 64.6 64.3 63.8 63.6 63.2 62.8 62.5 62.2 61.8 61.6 61.2 60.8 60.6 60.2 59.9 59.7 59.4 59.0 58.8 58.6 58.2 58.0 57.8 +13 GA TAVG 11 57.5 57.0 56.9 56.8 56.3 56.1 55.9 55.8 55.3 55.1 54.9 54.6 54.2 54.0 53.9 53.4 53.1 53.0 52.6 52.2 52.1 51.9 51.4 51.1 51.0 50.6 50.3 50.0 49.7 49.3 -99.0 +13 GA TAVG 12 49.1 48.8 48.4 48.2 48.0 47.6 47.3 47.2 47.0 46.6 46.3 46.2 46.0 45.8 45.5 45.3 45.1 45.0 44.9 44.5 44.4 44.3 44.2 44.1 44.0 43.7 43.5 43.5 43.4 43.4 43.3 +13 GA RVP 1 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +13 GA RVP 2 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 -99.0 -99.0 +13 GA RVP 3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 +13 GA RVP 4 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 -99.0 +13 GA RVP 5 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 +13 GA RVP 6 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 -99.0 +13 GA RVP 7 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 +13 GA RVP 8 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 +13 GA RVP 9 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 -99.0 +13 GA RVP 10 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 +13 GA RVP 11 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 9.3 -99.0 +13 GA RVP 12 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +15 HI TMAX 1 76.6 76.6 76.6 76.7 76.7 76.7 76.7 76.7 76.6 76.6 76.6 76.6 76.4 76.4 76.2 76.2 76.2 76.4 76.4 76.3 76.4 76.4 76.4 76.3 76.3 76.3 76.3 76.3 76.3 76.4 76.4 +15 HI TMAX 2 76.3 76.3 76.3 76.4 76.4 76.4 76.5 76.5 76.5 76.5 76.5 76.6 76.6 76.6 76.7 76.7 76.7 76.9 76.9 76.9 76.9 76.9 76.9 76.9 76.9 77.1 77.1 77.1 76.9 -99.0 -99.0 +15 HI TMAX 3 76.8 76.8 76.9 76.9 76.9 76.8 76.9 76.8 76.8 76.8 76.8 76.8 77.0 77.0 77.0 77.0 77.3 77.3 77.2 77.2 77.2 77.2 77.4 77.5 77.5 77.5 77.5 77.5 77.5 77.5 77.6 +15 HI TMAX 4 77.4 77.5 77.5 77.5 77.5 77.6 77.6 77.6 77.6 78.1 78.1 78.1 78.1 78.1 78.1 78.2 78.2 78.2 78.2 78.2 78.2 78.3 78.3 78.3 78.4 78.4 78.5 78.5 78.5 78.6 -99.0 +15 HI TMAX 5 78.6 78.7 78.7 78.7 79.0 79.0 79.1 79.2 79.2 79.2 79.2 79.3 79.3 79.3 79.4 79.5 79.7 79.7 79.7 79.7 79.7 80.0 80.2 80.2 80.2 80.3 80.3 80.4 80.4 80.5 80.6 +15 HI TMAX 6 80.6 80.8 80.9 81.1 81.1 81.1 81.2 81.2 81.2 81.2 81.3 81.3 81.5 81.5 81.7 81.9 81.9 81.9 81.9 81.9 81.9 82.1 82.1 82.1 82.1 82.1 82.1 82.2 82.2 82.2 -99.0 +15 HI TMAX 7 82.1 82.1 82.1 82.1 82.1 82.1 82.2 82.4 82.5 82.5 82.5 82.5 82.6 82.5 82.5 82.7 82.7 82.7 82.7 82.8 82.8 82.8 82.8 82.8 82.8 82.9 82.9 82.9 82.9 83.0 83.2 +15 HI TMAX 8 83.0 83.0 83.0 83.1 83.1 83.1 83.3 83.3 83.3 83.4 83.4 83.4 83.5 83.5 83.5 83.6 83.6 83.6 83.6 83.6 83.6 83.6 83.6 83.6 83.6 83.7 83.7 83.7 84.0 84.0 84.0 +15 HI TMAX 9 83.9 83.9 84.0 83.7 83.8 83.7 83.7 83.7 83.7 83.7 83.7 83.6 83.6 83.6 83.6 83.4 83.5 83.5 83.5 83.5 83.5 83.4 83.3 83.3 83.3 83.3 83.3 83.2 83.2 83.2 -99.0 +15 HI TMAX 10 83.3 83.0 83.0 83.0 83.0 83.0 83.0 82.8 82.8 82.8 82.7 82.6 82.6 82.5 82.4 82.2 82.2 82.1 82.1 82.1 82.1 81.9 81.9 81.9 81.7 81.6 81.5 81.2 81.2 81.2 81.1 +15 HI TMAX 11 81.2 81.1 80.9 80.8 80.6 80.6 80.5 80.2 80.2 80.2 80.2 80.2 80.1 79.9 79.9 79.7 79.4 79.3 79.3 79.3 79.3 79.2 79.1 79.1 79.0 78.7 78.7 78.7 78.6 78.5 -99.0 +15 HI TMAX 12 78.4 78.4 78.4 78.4 78.2 77.9 77.9 77.9 77.8 77.8 77.8 77.8 77.7 77.7 77.7 77.6 77.5 77.2 77.1 77.1 77.1 77.1 76.9 76.9 76.9 76.9 76.9 76.9 76.9 76.8 76.8 +15 HI TMIN 1 61.2 60.9 60.9 60.8 60.8 60.7 60.7 60.7 60.7 60.4 60.4 60.4 60.4 60.4 60.4 60.4 60.4 60.4 60.4 60.3 60.3 60.1 60.1 60.1 60.1 60.0 60.0 60.0 60.0 60.0 59.9 +15 HI TMIN 2 60.0 60.0 59.8 59.9 59.8 59.8 59.8 59.8 59.8 59.6 59.8 59.8 60.1 60.1 60.1 60.1 60.2 60.3 60.3 60.3 60.3 60.3 60.4 60.4 60.4 60.5 60.5 60.5 60.5 -99.0 -99.0 +15 HI TMIN 3 60.4 60.4 60.4 60.5 60.7 60.7 60.9 60.9 60.9 61.0 61.0 61.0 61.0 61.1 61.1 61.1 61.5 61.5 61.5 61.5 61.5 61.5 61.5 61.5 61.5 61.7 61.7 61.7 61.8 61.8 62.0 +15 HI TMIN 4 62.0 62.0 62.0 62.1 62.1 62.1 62.1 62.1 62.1 62.1 62.1 62.1 62.4 62.4 62.4 62.4 62.4 62.4 62.6 62.6 62.6 62.9 62.9 62.9 63.0 63.0 63.0 63.0 63.0 63.1 -99.0 +15 HI TMIN 5 63.0 63.0 63.1 63.1 63.1 63.1 63.1 63.1 63.1 63.2 63.4 63.4 63.5 63.6 63.6 63.6 63.8 63.9 63.9 63.9 63.9 63.9 64.0 64.0 64.0 64.0 64.1 64.2 64.5 64.5 64.8 +15 HI TMIN 6 64.5 64.8 64.8 64.9 65.0 65.0 65.1 65.2 65.2 65.3 65.3 65.4 65.5 65.5 65.5 65.5 65.5 65.8 65.8 65.8 66.0 66.0 66.0 66.1 66.1 66.1 66.1 66.3 66.4 66.4 -99.0 +15 HI TMIN 7 66.4 66.4 66.6 66.6 66.7 66.7 66.7 66.7 66.7 66.7 66.7 66.7 66.7 66.7 66.8 66.8 66.8 66.8 66.8 66.8 66.8 66.8 66.9 67.1 67.1 67.3 67.4 67.4 67.5 67.4 67.3 +15 HI TMIN 8 66.8 67.0 67.0 67.3 67.3 67.3 67.3 67.3 67.3 67.2 67.2 67.2 67.2 67.2 67.2 67.2 67.2 67.2 67.2 67.3 67.3 67.3 67.5 67.5 67.4 67.5 67.5 67.5 67.5 67.3 67.3 +15 HI TMIN 9 67.3 67.3 67.4 67.3 67.3 67.3 67.3 67.3 67.3 67.4 67.4 67.4 67.3 67.3 67.3 67.1 67.0 67.0 67.0 67.0 66.9 66.9 66.9 66.9 66.9 66.9 66.9 66.8 66.8 66.8 -99.0 +15 HI TMIN 10 67.0 66.9 66.9 66.8 66.6 66.6 66.6 66.6 66.6 66.4 66.4 66.4 66.3 66.3 66.3 66.3 66.2 66.2 66.2 66.2 66.2 66.2 66.0 66.0 65.8 65.7 65.7 65.7 65.6 65.6 65.6 +15 HI TMIN 11 65.6 65.6 65.6 65.3 65.3 65.3 65.2 65.2 65.1 65.1 64.8 64.8 64.8 64.7 64.7 64.7 64.7 64.4 64.3 64.2 64.2 64.1 64.0 63.8 63.8 63.8 63.8 63.7 63.4 63.4 -99.0 +15 HI TMIN 12 63.3 63.3 63.3 63.2 63.2 62.9 62.9 62.5 62.4 62.4 62.4 62.3 62.3 62.3 62.3 62.3 62.2 62.2 61.9 61.9 61.5 61.5 61.5 61.4 61.4 61.4 61.3 61.3 61.3 61.3 61.2 +15 HI TAVG 1 68.8 68.8 68.8 68.6 68.6 68.6 68.6 68.6 68.6 68.6 68.6 68.6 68.5 68.5 68.5 68.5 68.5 68.5 68.5 68.3 68.3 68.3 68.3 68.3 68.3 68.2 68.2 68.2 68.1 68.1 68.2 +15 HI TAVG 2 68.2 68.1 68.1 68.1 68.1 68.1 68.2 68.2 68.2 68.2 68.2 68.4 68.4 68.4 68.5 68.5 68.5 68.6 68.6 68.6 68.6 68.6 68.6 68.5 68.6 68.7 68.7 68.7 68.6 -99.0 -99.0 +15 HI TAVG 3 68.6 68.7 68.7 68.7 68.7 68.7 68.8 68.9 68.9 68.9 69.0 69.0 69.1 69.1 69.1 69.2 69.4 69.4 69.3 69.4 69.4 69.4 69.4 69.4 69.7 69.7 69.7 69.7 69.7 69.7 69.7 +15 HI TAVG 4 69.7 69.7 69.7 69.8 69.8 69.8 69.9 69.9 69.9 70.3 70.3 70.3 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.5 70.6 70.6 70.6 70.6 70.6 70.7 -99.0 +15 HI TAVG 5 70.7 70.7 70.8 70.8 70.8 70.8 71.3 71.3 71.3 71.5 71.5 71.5 71.6 71.6 71.7 71.7 71.7 71.7 71.7 71.8 71.8 71.8 72.0 72.0 72.0 72.4 72.4 72.4 72.5 72.6 72.7 +15 HI TAVG 6 72.7 72.8 72.8 73.0 73.0 73.0 73.1 73.4 73.4 73.4 73.4 73.4 73.5 73.5 73.5 73.7 73.7 73.7 73.8 73.8 73.8 74.0 74.0 74.3 74.3 74.3 74.3 74.4 74.4 74.4 -99.0 +15 HI TAVG 7 74.3 74.3 74.3 74.3 74.3 74.3 74.4 74.4 74.4 74.5 74.5 74.5 74.5 74.5 74.5 74.9 74.9 74.9 74.9 74.9 74.9 74.9 75.1 75.1 75.1 75.2 75.2 75.2 75.2 75.2 75.1 +15 HI TAVG 8 74.9 74.9 75.0 75.1 75.1 75.1 75.1 75.1 75.1 75.1 75.2 75.2 75.3 75.3 75.3 75.6 75.6 75.6 75.6 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.6 75.6 +15 HI TAVG 9 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.6 75.6 75.6 75.6 75.6 75.6 75.5 75.5 75.5 75.0 75.0 75.0 75.0 75.0 75.0 74.9 74.9 75.0 74.9 74.9 74.9 -99.0 +15 HI TAVG 10 75.0 75.0 75.0 75.0 75.0 75.0 75.0 74.9 74.7 74.7 74.7 74.4 74.3 74.3 74.3 74.3 74.3 74.3 74.3 74.2 74.2 74.2 74.0 74.0 73.9 73.9 73.5 73.5 73.3 73.3 73.3 +15 HI TAVG 11 73.3 73.3 73.2 73.2 73.1 73.0 73.0 73.0 72.7 72.5 72.3 72.3 72.2 72.2 72.2 72.2 72.2 72.2 72.1 71.8 71.8 71.6 71.6 71.4 71.4 71.4 71.3 71.3 71.2 71.1 -99.0 +15 HI TAVG 12 70.9 70.8 70.7 70.7 70.5 70.5 70.4 70.4 70.4 70.3 70.3 70.0 69.7 69.7 69.7 69.7 69.7 69.7 69.6 69.5 69.5 69.5 69.5 69.5 69.4 69.4 69.2 69.2 69.1 68.8 68.7 +15 HI RVP 1 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +15 HI RVP 2 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 -99.0 +15 HI RVP 3 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +15 HI RVP 4 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 +15 HI RVP 5 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +15 HI RVP 6 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 -99.0 +15 HI RVP 7 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +15 HI RVP 8 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +15 HI RVP 9 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 -99.0 +15 HI RVP 10 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +15 HI RVP 11 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 +15 HI RVP 12 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +16 ID TMAX 1 33.4 33.3 33.3 33.2 33.2 33.3 33.3 33.4 33.6 33.7 33.7 33.8 33.8 33.8 33.8 34.0 34.0 34.3 34.5 34.7 34.8 34.9 35.2 35.3 35.6 35.7 36.1 36.2 36.4 36.9 37.1 +16 ID TMAX 2 37.2 37.5 38.0 38.1 38.3 38.8 39.0 39.2 39.6 39.9 40.1 40.5 40.8 41.0 41.5 41.7 42.0 42.4 42.7 42.9 43.4 43.6 43.8 44.4 44.6 44.9 45.4 45.6 45.8 -99.0 -99.0 +16 ID TMAX 3 45.9 46.3 46.7 46.9 47.1 47.7 47.9 48.3 48.6 48.9 49.3 49.6 49.8 50.2 50.4 50.9 51.2 51.4 51.9 52.1 52.4 52.6 53.0 53.3 53.6 53.8 54.3 54.5 54.8 55.0 55.4 +16 ID TMAX 4 55.8 56.0 56.1 56.6 56.9 57.2 57.3 57.8 58.1 58.3 58.5 59.0 59.2 59.4 59.7 60.2 60.4 60.6 61.1 61.3 61.5 61.8 62.2 62.4 62.7 63.1 63.3 63.6 64.0 64.2 -99.0 +16 ID TMAX 5 64.5 64.7 65.1 65.4 65.7 66.0 66.2 66.5 67.0 67.1 67.3 67.9 68.0 68.3 68.5 69.0 69.1 69.3 69.9 70.0 70.3 70.7 70.9 71.1 71.4 71.8 71.9 72.2 72.7 72.8 73.1 +16 ID TMAX 6 73.5 73.7 74.0 74.5 74.6 74.8 75.0 75.6 75.7 76.0 76.5 76.7 76.9 77.3 77.6 77.9 78.3 78.6 78.8 79.3 79.5 79.8 80.3 80.6 81.0 81.4 81.6 82.0 82.3 82.6 -99.0 +16 ID TMAX 7 83.2 83.4 83.6 84.2 84.3 84.5 85.1 85.2 85.4 85.6 86.1 86.2 86.4 86.6 86.9 87.1 87.2 87.3 87.5 87.6 87.7 87.7 87.8 88.0 88.1 88.2 88.4 88.4 88.4 88.4 88.4 +16 ID TMAX 8 88.4 88.4 88.3 88.1 88.1 88.1 88.0 87.9 87.8 87.7 87.6 87.3 87.2 87.2 86.9 86.5 86.3 86.2 86.1 85.7 85.4 85.2 85.0 84.6 84.2 83.8 83.6 83.2 82.7 82.5 82.1 +16 ID TMAX 9 81.6 81.2 80.7 80.5 79.8 79.6 79.2 78.7 78.4 77.9 77.6 77.0 76.7 76.4 75.9 75.6 75.2 74.8 74.4 73.9 73.6 73.2 72.8 72.4 72.0 71.7 71.3 70.9 70.5 70.2 -99.0 +16 ID TMAX 10 69.8 69.5 69.0 68.6 68.2 67.6 67.4 66.7 66.5 65.9 65.5 65.0 64.5 64.0 63.5 63.0 62.5 61.9 61.4 60.8 60.2 59.5 59.0 58.4 57.9 57.2 56.5 56.0 55.2 54.7 53.9 +16 ID TMAX 11 53.2 52.7 51.9 51.4 50.7 50.0 49.6 48.8 48.4 47.7 47.1 46.6 46.0 45.6 45.0 44.6 44.0 43.6 43.0 42.8 42.3 41.8 41.5 40.9 40.7 40.3 39.9 39.6 39.1 38.9 -99.0 +16 ID TMAX 12 38.6 38.2 38.0 37.7 37.3 37.2 37.0 36.7 36.3 36.2 36.0 35.7 35.4 35.3 35.2 35.0 34.9 34.5 34.4 34.3 34.3 34.1 34.0 33.9 33.9 33.8 33.5 33.4 33.4 33.4 33.4 +16 ID TMIN 1 17.8 17.9 17.9 17.9 18.1 18.2 18.2 18.2 18.3 18.3 18.4 18.5 18.6 18.6 18.6 18.6 18.7 18.9 19.0 19.0 19.2 19.3 19.4 19.4 19.6 19.7 19.8 20.0 20.1 20.4 20.5 +16 ID TMIN 2 20.5 20.7 20.8 21.1 21.3 21.4 21.6 21.9 22.0 22.2 22.2 22.5 22.8 22.9 23.0 23.2 23.4 23.8 24.0 24.1 24.3 24.4 24.5 24.9 25.2 25.4 25.5 25.7 25.8 -99.0 -99.0 +16 ID TMIN 3 25.8 26.2 26.5 26.7 26.8 27.0 27.4 27.6 27.8 27.9 28.1 28.2 28.6 28.7 29.0 29.1 29.2 29.4 29.8 29.9 30.1 30.2 30.4 30.5 30.6 31.1 31.2 31.3 31.4 31.5 31.6 +16 ID TMIN 4 31.9 32.1 32.3 32.4 32.5 32.6 33.1 33.2 33.3 33.4 33.6 34.1 34.2 34.3 34.4 34.6 35.2 35.2 35.3 35.5 35.8 36.2 36.3 36.5 36.6 37.1 37.3 37.5 37.6 38.1 -99.0 +16 ID TMIN 5 38.3 38.5 38.7 39.2 39.3 39.5 39.7 40.2 40.3 40.5 40.8 41.1 41.3 41.4 41.7 42.1 42.3 42.4 42.7 43.0 43.2 43.3 43.6 44.0 44.1 44.3 44.4 44.9 45.0 45.1 45.3 +16 ID TMIN 6 45.7 45.9 46.0 46.2 46.5 46.8 46.9 47.0 47.4 47.6 47.8 47.9 48.2 48.4 48.6 48.8 49.1 49.2 49.5 49.7 50.0 50.1 50.3 50.5 50.7 51.0 51.2 51.3 51.5 51.9 -99.0 +16 ID TMIN 7 52.0 52.2 52.3 52.7 52.8 52.9 53.1 53.2 53.5 53.6 53.7 53.9 53.9 54.0 54.1 54.3 54.4 54.5 54.5 54.6 54.6 54.7 54.8 54.8 54.8 54.8 54.8 55.0 55.0 55.0 54.9 +16 ID TMIN 8 55.0 54.9 54.9 54.8 54.5 54.5 54.4 54.4 54.3 54.2 54.0 53.9 53.9 53.7 53.3 53.2 53.1 52.9 52.8 52.3 52.1 52.0 51.8 51.7 51.2 51.0 50.8 50.4 50.0 49.9 49.5 +16 ID TMIN 9 49.1 48.9 48.5 48.1 47.9 47.4 47.1 46.9 46.4 46.1 45.9 45.5 45.2 44.9 44.5 44.2 44.0 43.6 43.2 43.0 42.7 42.4 42.1 41.7 41.5 41.1 40.7 40.6 40.3 39.8 -99.0 +16 ID TMIN 10 39.6 39.4 38.9 38.8 38.6 38.1 37.8 37.6 37.3 37.0 36.8 36.4 36.1 35.9 35.7 35.3 35.1 34.8 34.4 34.2 34.1 33.6 33.5 33.2 33.0 32.6 32.4 32.2 31.8 31.6 31.4 +16 ID TMIN 11 31.2 30.9 30.7 30.5 30.2 29.8 29.6 29.4 29.0 28.8 28.6 28.3 28.0 27.8 27.5 27.1 27.0 26.7 26.1 26.0 25.8 25.4 25.1 24.8 24.7 24.2 23.9 23.6 23.3 23.0 -99.0 +16 ID TMIN 12 22.6 22.3 22.1 21.9 21.4 21.3 21.1 20.7 20.5 20.4 20.2 19.8 19.6 19.5 19.4 19.3 19.2 18.8 18.7 18.6 18.5 18.5 18.5 18.4 18.3 18.2 18.0 17.9 17.9 17.9 17.9 +16 ID TAVG 1 25.7 25.7 25.7 25.7 25.7 25.7 25.8 25.8 25.9 25.9 25.9 26.0 26.1 26.3 26.4 26.4 26.5 26.5 26.6 26.7 27.1 27.2 27.4 27.4 27.5 27.8 28.0 28.1 28.3 28.6 28.8 +16 ID TAVG 2 28.9 29.1 29.6 29.7 29.8 30.2 30.4 30.6 30.8 31.1 31.3 31.5 31.7 32.1 32.3 32.4 32.7 33.1 33.3 33.5 33.7 34.2 34.4 34.6 34.8 35.3 35.5 35.6 35.8 -99.0 -99.0 +16 ID TAVG 3 35.9 36.4 36.6 36.8 37.0 37.4 37.7 37.9 38.1 38.3 38.8 39.0 39.1 39.4 39.8 40.0 40.3 40.5 40.8 41.1 41.2 41.5 41.6 42.0 42.3 42.5 42.6 42.8 43.2 43.4 43.6 +16 ID TAVG 4 43.7 44.2 44.4 44.6 44.7 44.9 45.3 45.5 45.7 45.9 46.1 46.5 46.7 46.9 47.1 47.5 47.7 47.9 48.1 48.5 48.7 48.9 49.2 49.6 49.8 50.0 50.3 50.6 50.8 51.1 -99.0 +16 ID TAVG 5 51.4 51.7 51.9 52.2 52.6 52.8 52.9 53.3 53.6 53.8 54.1 54.5 54.7 54.9 55.1 55.5 55.8 55.9 56.2 56.5 56.8 56.9 57.3 57.6 57.8 57.9 58.3 58.6 58.8 58.9 59.4 +16 ID TAVG 6 59.5 59.7 60.1 60.4 60.5 60.6 61.1 61.3 61.5 61.9 62.1 62.3 62.5 62.9 63.1 63.3 63.7 64.0 64.1 64.4 64.8 65.0 65.2 65.6 65.9 66.0 66.5 66.7 67.0 67.3 -99.0 +16 ID TAVG 7 67.6 67.8 68.0 68.5 68.6 68.8 68.9 69.3 69.5 69.7 69.8 69.9 70.2 70.5 70.6 70.7 70.7 70.8 71.0 71.2 71.3 71.3 71.3 71.4 71.5 71.5 71.6 71.6 71.6 71.6 71.6 +16 ID TAVG 8 71.6 71.6 71.6 71.5 71.5 71.5 71.4 71.3 71.1 70.8 70.7 70.7 70.5 70.4 70.2 69.9 69.8 69.6 69.4 69.0 68.8 68.6 68.4 67.9 67.8 67.5 67.0 66.8 66.5 66.0 65.8 +16 ID TAVG 9 65.5 64.9 64.7 64.1 63.8 63.6 63.1 62.8 62.6 62.0 61.7 61.3 61.0 60.7 60.1 60.0 59.7 59.1 58.9 58.6 58.1 57.8 57.4 57.1 56.8 56.4 56.1 55.8 55.3 55.1 -99.0 +16 ID TAVG 10 54.9 54.2 54.1 53.8 53.2 53.1 52.5 52.2 52.0 51.4 51.1 50.9 50.3 50.1 49.4 49.2 49.0 48.3 48.1 47.4 47.2 46.6 46.2 46.0 45.3 45.1 44.4 44.1 43.5 43.2 42.6 +16 ID TAVG 11 42.2 41.9 41.3 41.0 40.4 40.1 39.4 39.2 38.6 38.3 37.9 37.5 37.1 36.6 36.2 35.9 35.5 35.2 34.6 34.4 34.1 33.5 33.3 32.8 32.6 32.3 31.7 31.6 31.3 30.9 -99.0 +16 ID TAVG 12 30.6 30.4 30.0 29.7 29.6 29.1 28.9 28.7 28.5 28.1 28.0 27.8 27.7 27.5 27.1 27.1 26.9 26.8 26.7 26.6 26.3 26.2 26.2 26.0 26.0 26.0 25.9 25.8 25.8 25.7 25.7 +16 ID RVP 1 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +16 ID RVP 2 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 -99.0 -99.0 +16 ID RVP 3 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 +16 ID RVP 4 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +16 ID RVP 5 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +16 ID RVP 6 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +16 ID RVP 7 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +16 ID RVP 8 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +16 ID RVP 9 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +16 ID RVP 10 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +16 ID RVP 11 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +16 ID RVP 12 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 +17 IL TMAX 1 31.9 31.7 31.5 31.4 31.4 31.4 31.3 31.2 30.9 30.9 30.8 30.7 30.6 30.5 30.6 30.7 30.7 30.9 30.9 31.0 31.2 31.3 31.4 31.4 31.5 31.5 31.9 32.0 32.3 32.4 32.6 +17 IL TMAX 2 32.9 33.0 33.4 33.6 33.9 34.0 34.4 34.7 34.9 35.3 35.6 35.8 36.1 36.6 36.8 37.1 37.5 37.8 38.1 38.6 38.8 39.5 39.6 39.9 40.5 40.8 41.2 41.7 41.8 -99.0 -99.0 +17 IL TMAX 3 42.0 42.4 42.8 43.4 43.7 44.1 44.5 44.9 45.4 45.7 46.2 46.7 47.0 47.5 47.9 48.1 48.7 49.0 49.5 49.9 50.2 50.8 51.1 51.5 52.0 52.2 52.7 53.1 53.6 54.0 54.2 +17 IL TMAX 4 54.8 55.2 55.5 56.0 56.3 56.6 57.2 57.5 57.9 58.4 58.6 59.2 59.5 59.9 60.4 60.6 61.2 61.5 61.7 62.4 62.5 63.0 63.4 63.9 64.2 64.5 65.1 65.4 65.8 66.1 -99.0 +17 IL TMAX 5 66.5 67.0 67.2 67.7 68.0 68.5 68.9 69.1 69.6 69.9 70.1 70.7 71.0 71.4 71.8 72.0 72.5 72.8 73.2 73.5 73.9 74.3 74.6 74.9 75.4 75.6 75.9 76.4 76.6 76.9 77.4 +17 IL TMAX 6 77.6 78.0 78.4 78.5 79.0 79.4 79.5 79.8 80.1 80.4 80.6 80.8 81.1 81.4 81.5 81.8 81.9 82.3 82.4 82.7 82.9 82.9 83.2 83.3 83.6 83.7 83.9 83.9 84.1 84.2 -99.0 +17 IL TMAX 7 84.3 84.4 84.5 84.6 84.6 84.6 84.8 85.0 85.1 85.2 85.2 85.3 85.3 85.3 85.4 85.4 85.5 85.5 85.5 85.5 85.5 85.5 85.5 85.4 85.4 85.4 85.3 85.2 85.2 84.8 84.8 +17 IL TMAX 8 84.8 84.8 84.8 84.6 84.6 84.5 84.4 84.4 84.2 84.0 84.0 83.8 83.8 83.6 83.4 83.1 83.1 83.0 82.8 82.7 82.5 82.2 82.1 82.0 81.9 81.6 81.2 81.1 81.0 80.9 80.6 +17 IL TMAX 9 80.2 80.1 79.9 79.7 79.2 79.1 79.0 78.6 78.2 78.1 77.9 77.4 77.2 77.0 76.5 76.2 76.1 75.8 75.4 75.1 74.9 74.4 74.1 73.6 73.3 73.0 72.6 72.2 72.0 71.4 -99.0 +17 IL TMAX 10 71.1 70.5 70.3 70.0 69.4 69.1 68.5 68.2 67.9 67.4 67.0 66.4 66.1 65.5 65.2 64.5 64.2 63.5 63.2 62.9 62.3 61.9 61.2 60.9 60.2 59.7 59.2 58.5 58.2 57.5 57.1 +17 IL TMAX 11 56.4 55.9 55.4 54.9 54.3 53.9 53.1 52.8 52.1 51.8 51.1 50.6 50.1 49.8 49.1 48.8 48.2 47.6 47.2 46.7 46.2 45.7 45.2 44.8 44.3 43.8 43.3 43.0 42.6 42.1 -99.0 +17 IL TMAX 12 41.6 41.1 40.7 40.2 39.9 39.5 39.0 38.7 38.4 38.0 37.6 37.3 36.9 36.5 36.3 35.9 35.7 35.3 35.0 34.7 34.5 34.3 33.8 33.6 33.4 33.3 32.9 32.7 32.5 32.4 32.2 +17 IL TMIN 1 16.3 16.0 15.9 15.8 15.4 15.2 15.1 15.0 15.0 15.0 14.9 14.9 14.9 14.8 14.7 14.4 14.4 14.7 14.8 14.8 14.9 14.9 15.0 15.0 15.1 15.2 15.3 15.7 15.8 16.0 16.1 +17 IL TMIN 2 16.5 16.8 17.0 17.1 17.4 17.8 18.0 18.1 18.5 18.9 19.1 19.2 19.6 19.9 20.1 20.5 20.8 21.1 21.4 21.6 22.1 22.2 22.7 23.1 23.3 23.7 24.0 24.3 24.5 -99.0 -99.0 +17 IL TMIN 3 24.8 25.0 25.2 25.8 26.1 26.3 27.0 27.1 27.3 27.9 28.2 28.4 28.9 29.2 29.4 29.9 30.1 30.4 30.9 31.1 31.4 31.8 32.2 32.4 32.8 33.2 33.3 33.6 34.0 34.3 34.6 +17 IL TMIN 4 34.9 35.2 35.5 35.7 36.1 36.5 36.7 37.0 37.4 37.7 38.0 38.2 38.6 39.0 39.2 39.6 40.0 40.2 40.6 41.0 41.2 41.7 42.0 42.2 42.6 43.0 43.2 43.4 44.1 44.2 -99.0 +17 IL TMIN 5 44.6 45.1 45.3 45.7 46.1 46.3 46.8 47.2 47.3 47.8 48.2 48.5 48.8 49.2 49.6 49.9 50.2 50.6 51.0 51.2 51.6 52.0 52.1 52.6 53.0 53.3 53.7 54.0 54.3 54.7 55.0 +17 IL TMIN 6 55.5 55.7 56.0 56.3 56.6 57.0 57.2 57.6 57.9 58.1 58.5 58.8 59.0 59.2 59.6 59.8 60.0 60.4 60.6 60.9 61.0 61.4 61.6 61.8 61.9 61.9 62.3 62.6 62.7 62.8 -99.0 +17 IL TMIN 7 62.8 63.2 63.5 63.6 63.7 63.7 64.1 64.1 64.2 64.4 64.5 64.5 64.5 64.5 64.6 65.0 65.0 65.0 65.1 65.1 65.1 65.1 65.1 65.2 65.2 65.2 65.1 65.1 64.9 64.9 64.9 +17 IL TMIN 8 64.9 64.9 64.8 64.7 64.7 64.6 64.6 64.4 64.2 64.1 64.0 63.8 63.7 63.6 63.4 63.3 63.0 62.8 62.7 62.6 62.3 62.1 61.9 61.6 61.3 61.1 60.9 60.6 60.3 60.1 59.7 +17 IL TMIN 9 59.6 59.1 58.9 58.6 58.2 58.0 57.6 57.3 57.0 56.7 56.2 56.0 55.6 55.2 55.0 54.6 54.2 54.0 53.5 53.1 52.9 52.2 52.0 51.7 51.2 50.9 50.5 50.0 49.9 49.1 -99.0 +17 IL TMIN 10 48.9 48.2 48.0 47.7 47.1 47.0 46.2 46.0 45.8 45.1 45.0 44.3 44.0 43.9 43.1 43.0 42.7 42.2 42.0 41.6 41.1 41.0 40.5 40.1 39.8 39.5 39.1 38.8 38.6 38.1 37.7 +17 IL TMIN 11 37.6 37.1 36.8 36.5 36.2 35.8 35.5 35.0 34.8 34.5 34.0 33.8 33.5 32.9 32.6 32.3 31.9 31.6 31.1 30.7 30.6 29.9 29.6 29.2 28.8 28.6 28.0 27.7 27.3 26.8 -99.0 +17 IL TMIN 12 26.6 25.8 25.6 25.2 24.7 24.6 23.9 23.7 23.3 22.8 22.7 22.2 21.8 21.6 21.2 20.8 20.6 20.2 19.8 19.7 19.3 18.9 18.8 18.4 18.0 17.9 17.7 17.3 17.0 16.8 16.7 +17 IL TAVG 1 24.1 24.0 23.8 23.5 23.4 23.4 23.1 23.1 23.0 23.0 22.9 22.9 22.8 22.6 22.6 22.6 22.6 22.8 22.9 22.9 23.0 23.0 23.1 23.3 23.3 23.5 23.6 23.9 24.1 24.1 24.5 +17 IL TAVG 2 24.7 24.9 25.2 25.5 25.7 25.9 26.2 26.5 26.8 27.0 27.5 27.7 27.9 28.1 28.6 28.8 29.1 29.6 29.9 30.0 30.6 30.9 31.1 31.6 31.9 32.2 32.7 33.0 33.2 -99.0 -99.0 +17 IL TAVG 3 33.4 33.8 34.1 34.7 34.9 35.3 35.7 35.9 36.5 36.8 37.1 37.6 37.9 38.3 38.7 39.0 39.4 39.8 40.1 40.5 40.8 41.2 41.8 41.9 42.3 42.8 43.0 43.5 43.9 44.1 44.4 +17 IL TAVG 4 44.9 45.2 45.5 45.9 46.2 46.5 47.0 47.4 47.6 48.0 48.5 48.7 49.1 49.5 49.7 50.1 50.5 50.8 51.1 51.6 52.0 52.3 52.6 53.1 53.4 53.9 54.1 54.5 55.0 55.2 -99.0 +17 IL TAVG 5 55.8 56.0 56.3 56.8 57.0 57.4 57.9 58.1 58.6 59.0 59.1 59.6 60.0 60.2 60.6 61.0 61.4 61.7 62.0 62.4 62.8 63.0 63.5 63.9 64.1 64.5 64.9 65.1 65.5 65.9 66.1 +17 IL TAVG 6 66.5 66.9 67.1 67.5 67.8 68.0 68.5 68.7 69.0 69.4 69.7 69.8 70.0 70.5 70.7 70.8 71.0 71.4 71.6 71.7 71.9 72.2 72.4 72.6 72.8 72.8 72.9 73.3 73.4 73.7 -99.0 +17 IL TAVG 7 73.7 73.8 73.8 74.1 74.3 74.3 74.6 74.6 74.6 74.6 74.6 74.6 74.9 74.9 75.0 75.2 75.3 75.3 75.4 75.4 75.4 75.4 75.3 75.3 75.2 75.2 75.2 75.1 75.1 75.1 75.0 +17 IL TAVG 8 75.1 75.0 75.0 74.7 74.5 74.5 74.4 74.2 74.2 74.1 74.1 74.0 73.6 73.6 73.4 73.3 73.1 73.0 72.7 72.6 72.4 72.3 72.1 71.7 71.6 71.4 71.1 71.0 70.6 70.5 70.2 +17 IL TAVG 9 69.7 69.6 69.5 69.1 68.7 68.6 68.4 67.7 67.7 67.5 67.0 66.7 66.6 66.2 65.7 65.6 65.3 64.7 64.6 64.0 63.7 63.5 62.9 62.7 62.4 61.8 61.6 61.3 60.7 60.4 -99.0 +17 IL TAVG 10 59.8 59.6 59.3 58.7 58.5 57.9 57.6 57.1 56.7 56.5 55.8 55.6 55.1 54.7 54.4 53.7 53.5 53.0 52.6 52.1 51.7 51.5 50.7 50.6 50.0 49.6 49.2 48.7 48.5 47.8 47.6 +17 IL TAVG 11 46.9 46.6 46.1 45.7 45.2 44.8 44.4 43.9 43.6 43.1 42.7 42.1 41.7 41.3 41.0 40.6 40.0 39.7 39.1 38.7 38.2 37.9 37.6 37.1 36.6 36.1 35.7 35.2 34.9 34.6 -99.0 +17 IL TAVG 12 34.1 33.6 33.1 32.7 32.2 32.0 31.6 31.1 30.8 30.6 30.1 29.7 29.5 29.0 28.7 28.4 28.0 27.7 27.5 27.1 26.8 26.6 26.4 26.0 25.8 25.6 25.3 25.0 24.9 24.6 24.4 +17 IL RVP 1 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 +17 IL RVP 2 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 -99.0 -99.0 +17 IL RVP 3 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 +17 IL RVP 4 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 -99.0 +17 IL RVP 5 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +17 IL RVP 6 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +17 IL RVP 7 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +17 IL RVP 8 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +17 IL RVP 9 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +17 IL RVP 10 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +17 IL RVP 11 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 11.0 -99.0 +17 IL RVP 12 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 13.7 +18 IN TMAX 1 34.2 34.0 33.9 33.8 33.6 33.5 33.5 33.3 33.3 33.3 33.2 33.1 33.1 33.0 33.0 33.0 33.1 33.2 33.2 33.2 33.3 33.4 33.5 33.6 33.7 33.8 34.0 34.2 34.2 34.5 34.7 +18 IN TMAX 2 35.0 35.2 35.3 35.7 35.9 36.1 36.3 36.7 36.9 37.1 37.5 37.8 38.1 38.3 38.7 39.0 39.3 39.7 40.0 40.4 40.7 41.1 41.4 41.9 42.3 42.7 43.1 43.4 43.7 -99.0 -99.0 +18 IN TMAX 3 44.0 44.3 44.7 45.1 45.5 46.0 46.3 46.7 47.1 47.6 48.0 48.4 48.8 49.2 49.6 50.0 50.4 50.7 51.2 51.6 52.0 52.4 52.7 53.2 53.6 53.9 54.3 54.7 55.1 55.5 55.8 +18 IN TMAX 4 56.3 56.6 57.1 57.3 57.8 58.2 58.5 59.0 59.3 59.7 60.1 60.4 60.9 61.2 61.6 62.0 62.3 62.8 63.1 63.5 63.9 64.2 64.5 64.9 65.3 65.7 66.0 66.4 66.8 67.1 -99.0 +18 IN TMAX 5 67.5 67.9 68.3 68.5 69.0 69.3 69.6 70.0 70.4 70.8 71.0 71.4 71.8 72.0 72.4 72.8 73.0 73.5 73.8 74.0 74.5 74.8 75.0 75.5 75.7 76.0 76.4 76.7 77.0 77.3 77.6 +18 IN TMAX 6 78.0 78.1 78.5 78.7 79.1 79.4 79.7 79.9 80.1 80.5 80.7 80.9 81.1 81.4 81.6 81.7 82.0 82.2 82.5 82.6 82.7 83.0 83.1 83.3 83.4 83.5 83.7 83.8 84.0 84.1 -99.0 +18 IN TMAX 7 84.3 84.4 84.5 84.7 84.7 84.8 84.8 84.8 84.8 85.0 85.0 85.0 85.0 85.2 85.2 85.3 85.4 85.4 85.4 85.4 85.4 85.3 85.3 85.3 85.2 85.1 85.0 85.0 84.9 84.8 84.8 +18 IN TMAX 8 84.8 84.7 84.6 84.5 84.5 84.3 84.3 84.1 84.1 84.0 83.8 83.6 83.6 83.5 83.4 83.2 83.1 83.0 82.7 82.6 82.5 82.4 82.2 82.0 81.9 81.7 81.6 81.4 81.2 81.0 80.8 +18 IN TMAX 9 80.6 80.4 80.3 80.0 79.7 79.5 79.4 79.3 78.8 78.6 78.4 78.2 77.7 77.5 77.3 77.0 76.6 76.4 76.1 75.7 75.4 75.1 74.6 74.4 73.9 73.5 73.2 72.8 72.4 72.0 -99.0 +18 IN TMAX 10 71.5 71.2 70.8 70.3 69.9 69.5 69.1 68.6 68.2 67.8 67.3 67.0 66.4 66.1 65.6 65.2 64.7 64.3 63.8 63.3 62.9 62.4 62.0 61.5 61.1 60.5 60.2 59.6 59.2 58.7 58.2 +18 IN TMAX 11 57.7 57.2 56.7 56.2 55.8 55.3 54.9 54.3 53.9 53.4 53.0 52.5 52.0 51.5 51.0 50.7 50.1 49.7 49.1 48.9 48.2 47.9 47.3 47.0 46.5 46.1 45.6 45.1 44.8 44.2 -99.0 +18 IN TMAX 12 43.9 43.3 43.0 42.5 42.1 41.7 41.3 41.0 40.6 40.2 39.8 39.5 39.1 38.8 38.5 38.1 37.9 37.6 37.3 37.0 36.7 36.4 36.2 35.9 35.7 35.5 35.3 35.0 34.9 34.6 34.4 +18 IN TMIN 1 18.7 18.4 18.2 18.1 17.9 17.7 17.5 17.5 17.3 17.2 17.2 17.2 17.1 17.0 16.9 16.9 16.7 16.7 16.6 16.7 16.8 16.8 16.9 17.0 17.1 17.2 17.3 17.4 17.4 17.5 17.7 +18 IN TMIN 2 17.8 18.0 18.2 18.3 18.4 18.6 18.9 19.1 19.3 19.5 19.6 19.9 20.2 20.4 20.7 21.0 21.2 21.5 21.8 22.1 22.4 22.7 23.0 23.4 23.7 24.1 24.4 24.8 25.0 -99.0 -99.0 +18 IN TMIN 3 25.1 25.4 25.8 26.2 26.6 26.9 27.2 27.6 28.0 28.2 28.7 29.0 29.3 29.7 30.1 30.3 30.7 31.0 31.2 31.6 32.0 32.2 32.4 32.9 33.2 33.4 33.7 34.1 34.3 34.6 35.0 +18 IN TMIN 4 35.2 35.5 35.8 36.1 36.4 36.7 36.9 37.3 37.6 37.9 38.2 38.6 38.9 39.1 39.4 39.9 40.1 40.5 40.8 41.1 41.5 41.8 42.1 42.5 42.8 43.2 43.6 43.9 44.2 44.6 -99.0 +18 IN TMIN 5 45.0 45.4 45.7 46.1 46.4 46.7 47.2 47.5 47.8 48.3 48.6 48.9 49.3 49.6 49.9 50.3 50.7 50.9 51.3 51.7 52.1 52.4 52.8 53.1 53.4 53.8 54.1 54.4 54.8 55.2 55.4 +18 IN TMIN 6 55.8 56.2 56.5 56.7 57.1 57.4 57.6 57.9 58.3 58.5 58.7 59.1 59.3 59.6 59.8 60.0 60.3 60.5 60.7 61.0 61.2 61.3 61.5 61.7 61.8 62.1 62.3 62.4 62.6 62.6 -99.0 +18 IN TMIN 7 62.8 62.9 63.2 63.3 63.4 63.4 63.6 63.6 63.7 63.7 63.8 63.8 63.8 63.9 64.0 64.1 64.1 64.1 64.2 64.3 64.3 64.3 64.2 64.2 64.1 64.1 63.9 63.9 63.8 63.7 63.7 +18 IN TMIN 8 63.7 63.7 63.6 63.5 63.4 63.3 63.2 63.0 63.0 62.8 62.7 62.6 62.4 62.3 62.2 62.0 61.8 61.6 61.5 61.3 61.1 60.8 60.6 60.5 60.3 60.1 59.8 59.6 59.4 59.2 58.8 +18 IN TMIN 9 58.7 58.4 58.1 57.8 57.6 57.3 56.9 56.7 56.5 56.0 55.7 55.5 55.1 54.8 54.5 54.1 53.7 53.3 53.0 52.6 52.2 51.8 51.4 51.1 50.6 50.2 49.8 49.3 49.0 48.5 -99.0 +18 IN TMIN 10 48.1 47.6 47.2 46.9 46.4 46.0 45.6 45.1 44.9 44.4 44.0 43.7 43.2 42.9 42.6 42.2 41.9 41.6 41.2 40.9 40.6 40.3 40.0 39.7 39.4 39.1 38.8 38.5 38.3 38.1 37.7 +18 IN TMIN 11 37.5 37.4 37.1 36.7 36.5 36.3 36.0 35.6 35.4 35.2 34.8 34.5 34.3 33.9 33.5 33.4 33.0 32.6 32.4 31.9 31.6 31.3 30.9 30.6 30.2 29.8 29.5 29.1 28.7 28.4 -99.0 +18 IN TMIN 12 27.9 27.6 27.1 26.7 26.4 26.0 25.7 25.4 24.9 24.7 24.3 24.0 23.7 23.3 23.0 22.7 22.5 22.1 21.8 21.7 21.3 21.0 20.8 20.5 20.3 20.0 19.8 19.5 19.3 19.1 18.8 +18 IN TAVG 1 26.5 26.3 26.1 25.9 25.8 25.7 25.6 25.5 25.4 25.4 25.2 25.1 25.1 24.9 24.9 24.9 24.9 24.9 25.0 25.0 25.1 25.2 25.3 25.3 25.4 25.5 25.6 25.8 25.9 26.0 26.3 +18 IN TAVG 2 26.4 26.6 26.7 26.9 27.3 27.4 27.6 27.8 28.1 28.4 28.6 28.8 29.2 29.4 29.7 30.0 30.4 30.6 30.8 31.3 31.6 31.8 32.3 32.6 33.0 33.4 33.7 34.1 34.3 -99.0 -99.0 +18 IN TAVG 3 34.6 34.8 35.3 35.7 36.0 36.5 36.8 37.1 37.6 38.0 38.3 38.7 39.0 39.4 39.8 40.2 40.6 40.9 41.3 41.6 42.0 42.3 42.7 43.0 43.4 43.7 44.0 44.5 44.7 45.1 45.5 +18 IN TAVG 4 45.8 46.1 46.5 46.8 47.1 47.4 47.8 48.1 48.5 48.8 49.2 49.5 49.8 50.2 50.6 50.8 51.2 51.6 51.9 52.4 52.6 53.0 53.4 53.7 54.0 54.5 54.8 55.2 55.5 55.9 -99.0 +18 IN TAVG 5 56.3 56.6 57.0 57.3 57.7 58.1 58.4 58.7 59.1 59.4 59.8 60.2 60.5 60.9 61.1 61.6 61.9 62.2 62.6 62.9 63.2 63.6 63.9 64.3 64.6 64.9 65.3 65.6 66.0 66.3 66.6 +18 IN TAVG 6 66.9 67.2 67.5 67.9 68.1 68.4 68.6 69.0 69.2 69.5 69.8 70.0 70.2 70.5 70.7 70.9 71.1 71.4 71.6 71.8 72.0 72.1 72.3 72.6 72.7 72.9 73.0 73.2 73.3 73.4 -99.0 +18 IN TAVG 7 73.5 73.7 73.9 74.0 74.1 74.1 74.1 74.1 74.2 74.3 74.3 74.5 74.5 74.6 74.6 74.8 74.8 74.8 74.9 74.9 74.9 74.8 74.8 74.7 74.6 74.6 74.6 74.5 74.4 74.3 74.3 +18 IN TAVG 8 74.3 74.2 74.1 74.0 73.9 73.8 73.7 73.6 73.5 73.4 73.3 73.1 73.0 72.9 72.7 72.6 72.5 72.3 72.1 72.0 71.8 71.6 71.5 71.3 71.1 70.9 70.7 70.5 70.3 70.1 69.8 +18 IN TAVG 9 69.7 69.4 69.2 69.0 68.7 68.4 68.2 67.9 67.7 67.3 67.1 66.7 66.5 66.2 65.8 65.5 65.2 64.9 64.5 64.1 63.8 63.5 63.1 62.7 62.4 61.9 61.5 61.2 60.7 60.2 -99.0 +18 IN TAVG 10 59.8 59.5 59.0 58.6 58.2 57.8 57.3 56.9 56.5 56.2 55.7 55.3 54.9 54.5 54.1 53.7 53.3 52.9 52.6 52.2 51.8 51.3 51.0 50.6 50.2 49.9 49.5 49.1 48.7 48.4 48.0 +18 IN TAVG 11 47.6 47.2 47.0 46.5 46.1 45.8 45.4 45.0 44.7 44.3 43.9 43.6 43.1 42.8 42.4 41.9 41.6 41.1 40.8 40.4 40.0 39.6 39.1 38.8 38.3 38.0 37.6 37.1 36.8 36.2 -99.0 +18 IN TAVG 12 35.9 35.5 35.0 34.7 34.3 33.9 33.5 33.1 32.8 32.4 32.0 31.8 31.4 31.1 30.8 30.5 30.1 29.9 29.6 29.3 29.0 28.8 28.5 28.2 28.0 27.8 27.6 27.3 27.0 26.9 26.7 +18 IN RVP 1 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 +18 IN RVP 2 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 -99.0 -99.0 +18 IN RVP 3 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 +18 IN RVP 4 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 -99.0 +18 IN RVP 5 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +18 IN RVP 6 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 -99.0 +18 IN RVP 7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +18 IN RVP 8 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +18 IN RVP 9 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 -99.0 +18 IN RVP 10 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +18 IN RVP 11 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 -99.0 +18 IN RVP 12 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 13.9 +19 IA TMAX 1 27.9 27.7 27.6 27.6 27.5 27.4 27.4 27.2 27.1 27.0 26.9 26.9 27.0 27.0 27.1 27.2 27.3 27.4 27.6 27.6 27.6 27.7 27.8 27.9 28.2 28.4 28.6 28.7 28.9 29.2 29.4 +19 IA TMAX 2 29.7 29.9 30.2 30.4 30.7 31.0 31.3 31.4 31.9 32.2 32.4 32.8 33.2 33.5 33.8 34.2 34.6 35.0 35.3 35.7 36.2 36.5 36.9 37.3 37.8 38.2 38.6 39.1 39.3 -99.0 -99.0 +19 IA TMAX 3 39.5 40.0 40.4 41.0 41.3 41.9 42.2 42.8 43.1 43.6 44.1 44.5 45.1 45.5 46.0 46.4 46.9 47.3 47.9 48.2 48.8 49.2 49.7 50.1 50.6 51.1 51.6 52.1 52.5 53.1 53.5 +19 IA TMAX 4 54.0 54.4 54.9 55.4 55.9 56.4 56.8 57.2 57.7 58.1 58.7 59.0 59.4 59.9 60.3 60.8 61.2 61.5 62.0 62.4 62.8 63.2 63.6 64.0 64.4 64.8 65.2 65.6 65.9 66.4 -99.0 +19 IA TMAX 5 66.8 67.0 67.5 67.9 68.1 68.5 68.9 69.2 69.7 70.0 70.4 70.8 71.1 71.5 71.8 72.1 72.6 72.9 73.1 73.5 73.9 74.2 74.6 75.0 75.2 75.6 75.9 76.3 76.6 77.0 77.3 +19 IA TMAX 6 77.7 78.0 78.3 78.6 78.8 79.2 79.5 79.7 80.0 80.4 80.6 80.8 81.0 81.4 81.6 81.8 81.9 82.2 82.5 82.6 82.8 82.9 83.1 83.4 83.5 83.7 83.8 83.9 84.0 84.2 -99.0 +19 IA TMAX 7 84.4 84.5 84.6 84.7 84.8 84.8 84.9 85.0 85.0 85.0 85.1 85.1 85.2 85.3 85.3 85.4 85.5 85.5 85.6 85.6 85.6 85.6 85.5 85.3 85.2 85.1 85.1 85.0 85.0 84.9 84.9 +19 IA TMAX 8 84.9 84.8 84.8 84.7 84.6 84.5 84.4 84.1 84.1 83.9 83.8 83.8 83.6 83.4 83.3 83.0 82.9 82.8 82.6 82.4 82.1 82.0 81.8 81.6 81.4 81.1 80.9 80.7 80.5 80.1 79.9 +19 IA TMAX 9 79.8 79.4 79.1 78.9 78.6 78.4 78.1 77.7 77.5 77.2 76.9 76.7 76.4 76.0 75.7 75.5 75.1 74.8 74.6 74.2 73.8 73.6 73.1 72.8 72.6 72.1 71.7 71.5 71.1 70.7 -99.0 +19 IA TMAX 10 70.3 70.0 69.6 69.2 68.8 68.3 68.0 67.4 67.1 66.6 66.2 65.7 65.2 64.9 64.2 63.8 63.2 62.7 62.1 61.6 61.1 60.5 59.9 59.3 58.8 58.1 57.5 56.9 56.2 55.6 55.1 +19 IA TMAX 11 54.3 53.6 53.1 52.4 51.7 51.1 50.5 49.9 49.2 48.7 48.0 47.5 46.9 46.3 45.7 45.2 44.6 44.0 43.5 43.0 42.5 41.9 41.4 40.8 40.4 39.7 39.3 38.8 38.4 37.9 -99.0 +19 IA TMAX 12 37.4 36.9 36.5 36.0 35.6 35.1 34.7 34.2 34.0 33.5 33.2 32.9 32.4 32.1 31.9 31.4 31.2 31.0 30.6 30.3 30.1 29.8 29.5 29.3 29.1 28.9 28.7 28.5 28.3 28.2 28.0 +19 IA TMIN 1 10.1 9.8 9.7 9.6 9.4 9.2 9.0 9.0 8.9 8.8 8.7 8.7 8.6 8.5 8.5 8.4 8.5 8.6 8.7 8.7 8.9 9.1 9.1 9.2 9.3 9.5 9.8 9.9 10.1 10.4 10.6 +19 IA TMIN 2 10.9 11.2 11.5 11.7 12.1 12.4 12.6 12.9 13.2 13.5 13.9 14.2 14.5 14.9 15.2 15.5 15.8 16.2 16.6 17.0 17.4 17.7 18.1 18.5 18.8 19.3 19.7 20.1 20.3 -99.0 -99.0 +19 IA TMIN 3 20.5 20.9 21.3 21.8 22.2 22.6 23.0 23.4 23.8 24.1 24.5 24.9 25.3 25.6 26.1 26.5 26.8 27.3 27.6 28.0 28.4 28.7 29.1 29.4 29.8 30.2 30.5 30.9 31.3 31.6 31.9 +19 IA TMIN 4 32.3 32.6 32.9 33.4 33.7 34.0 34.5 34.8 35.1 35.5 35.9 36.3 36.7 37.0 37.4 37.8 38.1 38.6 38.9 39.3 39.7 40.0 40.5 40.9 41.2 41.7 42.0 42.5 42.9 43.2 -99.0 +19 IA TMIN 5 43.7 44.1 44.5 45.0 45.3 45.7 46.2 46.4 46.9 47.3 47.7 48.0 48.4 48.9 49.2 49.5 50.0 50.3 50.7 51.1 51.4 51.8 52.1 52.5 53.0 53.2 53.5 54.0 54.2 54.6 55.0 +19 IA TMIN 6 55.2 55.6 56.0 56.3 56.5 56.9 57.2 57.4 57.8 58.1 58.3 58.5 58.9 59.1 59.3 59.6 59.9 60.1 60.3 60.5 60.7 61.0 61.1 61.3 61.5 61.7 61.9 62.1 62.2 62.3 -99.0 +19 IA TMIN 7 62.5 62.7 62.8 62.9 63.1 63.2 63.3 63.4 63.5 63.6 63.6 63.6 63.7 63.7 63.8 63.8 64.0 64.0 64.1 64.2 64.3 64.3 64.3 64.3 64.2 64.1 64.1 64.0 63.8 63.7 63.7 +19 IA TMIN 8 63.7 63.6 63.6 63.5 63.4 63.3 63.2 63.2 63.0 62.8 62.6 62.5 62.3 62.2 61.9 61.7 61.5 61.3 61.0 60.8 60.6 60.3 60.0 59.7 59.6 59.2 58.8 58.6 58.3 57.8 57.6 +19 IA TMIN 9 57.2 56.8 56.5 56.2 55.8 55.5 55.1 54.7 54.4 54.0 53.6 53.2 52.9 52.5 52.2 51.8 51.4 51.1 50.7 50.3 50.0 49.5 49.2 48.8 48.4 48.0 47.7 47.3 46.9 46.6 -99.0 +19 IA TMIN 10 46.1 45.8 45.4 45.0 44.6 44.2 43.8 43.4 43.0 42.7 42.3 41.8 41.4 41.0 40.7 40.2 39.8 39.4 39.0 38.5 38.2 37.8 37.4 37.0 36.4 36.1 35.6 35.2 34.9 34.4 34.0 +19 IA TMIN 11 33.5 33.1 32.6 32.3 31.8 31.4 31.0 30.5 30.1 29.6 29.2 28.8 28.4 27.8 27.5 27.0 26.6 26.2 25.7 25.4 24.8 24.5 24.0 23.6 23.1 22.7 22.3 21.8 21.4 21.0 -99.0 +19 IA TMIN 12 20.4 20.1 19.6 19.2 18.8 18.4 18.0 17.6 17.2 16.8 16.4 16.1 15.7 15.4 15.0 14.6 14.4 14.0 13.6 13.4 13.1 12.8 12.5 12.2 11.9 11.6 11.4 11.1 10.8 10.6 10.5 +19 IA TAVG 1 19.1 18.8 18.6 18.5 18.4 18.3 18.3 18.2 18.1 18.0 17.9 17.8 17.8 17.8 17.8 17.9 17.9 18.0 18.1 18.2 18.3 18.4 18.5 18.6 18.7 18.9 19.2 19.3 19.6 19.7 20.0 +19 IA TAVG 2 20.3 20.6 20.8 21.1 21.3 21.7 22.0 22.3 22.5 22.9 23.2 23.4 23.9 24.2 24.6 24.9 25.3 25.6 26.0 26.4 26.8 27.2 27.6 27.9 28.4 28.7 29.2 29.6 29.8 -99.0 -99.0 +19 IA TAVG 3 30.0 30.5 30.8 31.3 31.7 32.3 32.6 33.1 33.4 33.9 34.4 34.8 35.2 35.5 36.1 36.4 37.0 37.3 37.7 38.2 38.5 39.1 39.4 39.9 40.3 40.6 41.1 41.4 42.0 42.3 42.7 +19 IA TAVG 4 43.2 43.6 44.0 44.4 44.8 45.2 45.6 46.0 46.5 46.8 47.3 47.6 48.1 48.5 48.8 49.3 49.6 50.2 50.4 50.8 51.3 51.6 52.2 52.4 52.9 53.3 53.6 54.1 54.4 54.8 -99.0 +19 IA TAVG 5 55.2 55.6 56.0 56.4 56.8 57.1 57.6 57.9 58.3 58.7 59.0 59.5 59.8 60.1 60.5 60.9 61.2 61.7 61.9 62.3 62.8 63.0 63.4 63.8 64.1 64.4 64.8 65.1 65.4 65.8 66.2 +19 IA TAVG 6 66.4 66.8 67.2 67.4 67.8 68.1 68.3 68.7 69.0 69.2 69.4 69.8 70.0 70.2 70.5 70.7 70.9 71.2 71.3 71.6 71.8 71.9 72.1 72.3 72.6 72.7 72.8 72.9 73.1 73.3 -99.0 +19 IA TAVG 7 73.4 73.6 73.7 73.8 73.9 74.0 74.2 74.3 74.3 74.3 74.4 74.5 74.5 74.5 74.5 74.7 74.7 74.8 74.9 74.9 74.9 74.9 74.9 74.8 74.8 74.8 74.6 74.6 74.5 74.4 74.4 +19 IA TAVG 8 74.4 74.3 74.2 74.1 73.9 73.9 73.8 73.7 73.6 73.4 73.3 73.1 72.9 72.8 72.6 72.4 72.3 72.0 71.8 71.6 71.4 71.2 71.0 70.7 70.4 70.2 70.0 69.6 69.3 69.1 68.8 +19 IA TAVG 9 68.4 68.2 67.9 67.5 67.2 67.0 66.5 66.2 66.0 65.6 65.3 65.0 64.7 64.3 64.0 63.7 63.3 63.0 62.6 62.2 62.0 61.5 61.1 60.9 60.5 60.1 59.8 59.4 59.0 58.7 -99.0 +19 IA TAVG 10 58.2 57.9 57.5 57.1 56.7 56.3 55.9 55.5 55.0 54.7 54.2 53.7 53.3 52.9 52.5 52.0 51.6 51.0 50.7 50.1 49.7 49.1 48.7 48.2 47.6 47.2 46.6 46.1 45.6 45.0 44.5 +19 IA TAVG 11 44.0 43.5 42.8 42.4 41.8 41.3 40.7 40.2 39.7 39.1 38.6 38.1 37.6 37.1 36.6 36.1 35.6 35.1 34.6 34.2 33.6 33.3 32.6 32.3 31.7 31.4 30.7 30.4 29.8 29.4 -99.0 +19 IA TAVG 12 28.9 28.5 28.1 27.6 27.3 26.7 26.4 26.0 25.6 25.3 24.8 24.5 24.1 23.7 23.5 23.1 22.7 22.5 22.3 21.8 21.6 21.3 21.1 20.7 20.5 20.4 20.1 19.7 19.5 19.4 19.2 +19 IA RVP 1 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +19 IA RVP 2 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 -99.0 -99.0 +19 IA RVP 3 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 +19 IA RVP 4 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +19 IA RVP 5 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 +19 IA RVP 6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 -99.0 +19 IA RVP 7 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 +19 IA RVP 8 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 +19 IA RVP 9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +19 IA RVP 10 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 +19 IA RVP 11 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 -99.0 +19 IA RVP 12 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +20 KS TMAX 1 39.0 39.0 38.9 38.7 38.6 38.6 38.5 38.5 38.4 38.3 38.2 38.2 38.4 38.5 38.7 38.7 38.8 38.9 39.0 39.0 39.0 39.2 39.4 39.8 39.9 40.0 40.2 40.4 40.8 41.0 41.3 +20 KS TMAX 2 41.5 41.9 42.1 42.4 42.8 43.0 43.3 43.6 44.0 44.3 44.5 45.0 45.3 45.5 46.0 46.2 46.7 47.0 47.3 47.8 47.9 48.3 48.8 49.0 49.5 49.8 50.2 50.6 50.8 -99.0 -99.0 +20 KS TMAX 3 50.9 51.3 51.7 52.0 52.6 52.8 53.2 53.6 53.9 54.3 54.7 55.1 55.3 55.8 56.2 56.4 57.0 57.2 57.5 58.0 58.3 58.5 59.1 59.3 59.7 60.1 60.3 60.7 61.1 61.4 61.8 +20 KS TMAX 4 62.2 62.4 62.8 63.1 63.4 63.8 64.1 64.4 64.8 65.1 65.4 65.7 66.0 66.4 66.7 66.9 67.2 67.6 67.9 68.1 68.4 68.8 69.0 69.2 69.7 69.9 70.1 70.5 70.8 71.0 -99.0 +20 KS TMAX 5 71.2 71.6 71.8 72.1 72.2 72.7 73.0 73.2 73.6 73.9 74.1 74.2 74.8 75.1 75.2 75.8 76.1 76.2 76.5 77.0 77.4 77.6 77.9 78.4 78.6 79.1 79.4 79.6 80.0 80.5 80.8 +20 KS TMAX 6 81.1 81.5 81.9 82.1 82.7 82.9 83.1 83.5 83.9 84.2 84.6 84.9 85.2 85.4 85.7 86.1 86.3 86.5 86.7 87.2 87.3 87.4 87.7 88.0 88.3 88.4 88.5 88.8 89.0 89.4 -99.0 +20 KS TMAX 7 89.4 89.5 89.7 90.0 90.1 90.3 90.4 90.5 90.7 90.7 91.0 91.0 91.1 91.1 91.3 91.3 91.4 91.4 91.5 91.5 91.5 91.8 91.8 91.9 91.9 91.9 91.8 91.8 91.8 91.8 91.7 +20 KS TMAX 8 91.7 91.7 91.7 91.6 91.4 91.2 91.1 91.0 90.9 90.8 90.8 90.7 90.6 90.2 90.0 89.9 89.8 89.7 89.4 89.0 88.9 88.7 88.5 88.0 87.9 87.8 87.4 87.0 86.9 86.5 86.2 +20 KS TMAX 9 85.8 85.5 85.3 84.9 84.6 84.3 84.0 83.6 83.3 83.0 82.6 82.2 82.0 81.8 81.2 81.1 80.8 80.3 80.1 79.9 79.3 79.1 78.9 78.5 78.1 77.8 77.5 77.1 76.8 76.6 -99.0 +20 KS TMAX 10 76.1 75.8 75.6 75.1 74.8 74.5 73.9 73.7 73.3 72.8 72.5 71.9 71.6 71.1 70.8 70.1 69.8 69.4 68.8 68.4 67.8 67.4 66.8 66.1 65.7 65.1 64.6 64.0 63.5 62.8 62.3 +20 KS TMAX 11 61.6 61.0 60.5 59.9 59.4 58.8 58.3 57.6 57.2 56.6 56.0 55.5 54.9 54.5 53.9 53.5 53.1 52.5 52.2 51.6 51.3 50.8 50.3 49.9 49.4 49.1 48.5 48.3 47.8 47.4 -99.0 +20 KS TMAX 12 47.2 46.6 46.4 46.0 45.5 45.4 44.7 44.6 44.4 43.8 43.6 43.5 43.2 42.7 42.5 42.4 42.0 41.7 41.6 41.3 41.0 40.7 40.6 40.5 40.3 40.0 39.7 39.6 39.5 39.4 39.1 +20 KS TMIN 1 18.9 18.6 18.5 18.5 18.4 18.4 18.3 18.2 18.2 17.9 17.9 17.8 17.8 17.7 17.7 17.8 17.9 18.1 18.2 18.2 18.3 18.4 18.4 18.4 18.6 18.8 19.1 19.3 19.4 19.4 19.7 +20 KS TMIN 2 20.1 20.2 20.4 20.7 21.0 21.2 21.4 21.5 22.0 22.3 22.4 22.5 23.1 23.3 23.4 24.0 24.2 24.4 24.7 25.1 25.3 25.5 26.1 26.3 26.5 27.0 27.2 27.5 27.7 -99.0 -99.0 +20 KS TMIN 3 28.0 28.2 28.5 29.0 29.3 29.6 30.0 30.2 30.5 31.0 31.2 31.5 31.9 32.2 32.5 32.8 33.2 33.5 33.8 34.2 34.5 34.8 35.2 35.5 35.8 36.0 36.5 36.8 37.1 37.4 37.8 +20 KS TMIN 4 38.0 38.5 38.7 38.9 39.3 39.8 40.0 40.2 40.8 41.0 41.2 41.7 42.0 42.2 42.8 43.1 43.3 43.5 44.1 44.3 44.7 45.1 45.3 45.7 46.2 46.3 46.8 47.2 47.4 47.8 -99.0 +20 KS TMIN 5 48.3 48.5 48.9 49.4 49.6 50.0 50.4 50.6 51.0 51.4 51.7 52.2 52.5 52.8 53.3 53.5 53.8 54.3 54.5 54.8 55.4 55.5 55.8 56.2 56.6 57.0 57.2 57.6 58.0 58.2 58.6 +20 KS TMIN 6 59.1 59.3 59.6 60.0 60.2 60.4 60.9 61.2 61.4 61.9 62.1 62.3 62.4 62.9 63.2 63.3 63.6 64.0 64.2 64.3 64.4 64.8 65.1 65.2 65.4 65.7 65.9 66.1 66.2 66.4 -99.0 +20 KS TMIN 7 66.5 66.8 66.9 67.1 67.2 67.3 67.4 67.5 67.8 67.9 67.9 67.9 68.2 68.2 68.3 68.3 68.3 68.4 68.4 68.6 68.7 68.7 68.7 68.7 68.7 68.7 68.7 68.6 68.6 68.5 68.4 +20 KS TMIN 8 68.5 68.4 68.4 68.2 68.0 67.8 67.8 67.7 67.6 67.5 67.4 67.1 67.0 66.9 66.6 66.5 66.3 66.0 65.9 65.6 65.5 65.2 64.9 64.7 64.4 64.2 63.9 63.7 63.3 63.1 62.8 +20 KS TMIN 9 62.4 62.1 61.7 61.3 61.1 60.7 60.3 60.1 59.7 59.3 59.1 58.6 58.2 58.0 57.7 57.2 56.9 56.6 56.1 55.8 55.4 55.0 54.7 54.3 53.9 53.5 53.0 52.7 52.4 52.0 -99.0 +20 KS TMIN 10 51.4 51.2 50.6 50.3 50.1 49.4 49.2 48.5 48.3 48.0 47.3 47.1 46.7 46.2 45.8 45.3 45.1 44.6 44.2 43.7 43.2 42.8 42.5 41.9 41.6 41.2 40.7 40.2 39.8 39.5 38.9 +20 KS TMIN 11 38.6 37.9 37.6 37.2 36.7 36.4 35.9 35.6 35.1 34.7 34.4 33.9 33.6 33.0 32.7 32.5 31.9 31.6 31.1 30.8 30.6 30.0 29.7 29.3 28.9 28.7 28.1 27.9 27.5 27.1 -99.0 +20 KS TMIN 12 26.8 26.5 26.1 25.8 25.5 25.1 24.9 24.5 24.3 24.0 23.6 23.5 23.2 22.7 22.6 22.4 22.2 21.7 21.5 21.5 21.2 20.7 20.6 20.5 20.4 20.2 19.7 19.6 19.4 19.4 19.2 +20 KS TAVG 1 28.9 28.8 28.7 28.7 28.6 28.5 28.5 28.5 28.2 28.0 28.0 27.9 27.9 28.1 28.2 28.4 28.5 28.5 28.6 28.6 28.7 28.8 28.8 29.1 29.4 29.6 29.7 29.8 30.0 30.3 30.6 +20 KS TAVG 2 30.7 31.1 31.4 31.6 31.8 32.1 32.5 32.7 32.9 33.4 33.6 33.7 34.3 34.5 34.7 35.1 35.4 35.7 36.0 36.4 36.7 37.1 37.4 37.6 38.2 38.4 38.6 39.2 39.3 -99.0 -99.0 +20 KS TAVG 3 39.5 39.7 40.3 40.5 40.7 41.3 41.6 41.9 42.3 42.6 42.9 43.4 43.6 44.0 44.4 44.6 45.1 45.4 45.6 46.0 46.5 46.8 47.1 47.3 47.8 48.1 48.3 48.9 49.1 49.3 49.9 +20 KS TAVG 4 50.1 50.3 50.9 51.1 51.3 51.7 52.1 52.3 52.7 53.1 53.3 53.7 54.1 54.3 54.7 55.0 55.3 55.7 56.0 56.3 56.6 56.9 57.3 57.6 57.9 58.1 58.6 58.9 59.1 59.4 -99.0 +20 KS TAVG 5 59.9 60.1 60.4 60.8 61.1 61.3 61.7 62.0 62.2 62.6 63.0 63.2 63.6 64.0 64.3 64.5 65.0 65.4 65.5 65.8 66.4 66.6 66.8 67.4 67.6 68.0 68.4 68.6 69.0 69.4 69.7 +20 KS TAVG 6 70.1 70.4 70.9 71.1 71.3 71.9 72.1 72.2 72.8 73.0 73.2 73.6 73.9 74.1 74.4 74.6 75.0 75.2 75.5 75.6 76.0 76.3 76.5 76.6 76.8 77.1 77.4 77.6 77.6 77.8 -99.0 +20 KS TAVG 7 78.0 78.2 78.5 78.5 78.7 78.7 78.8 79.1 79.3 79.5 79.5 79.6 79.6 79.6 79.6 79.7 79.8 79.8 79.9 80.0 80.3 80.3 80.4 80.4 80.4 80.4 80.4 80.2 80.1 80.1 80.0 +20 KS TAVG 8 80.1 80.0 80.0 80.0 79.8 79.5 79.5 79.4 79.4 79.1 79.0 79.0 78.8 78.7 78.4 78.1 78.0 77.9 77.7 77.4 77.3 77.0 76.8 76.4 76.2 75.9 75.8 75.4 75.1 74.8 74.5 +20 KS TAVG 9 74.2 73.8 73.5 73.2 72.8 72.5 72.2 72.0 71.5 71.2 70.8 70.5 70.2 69.9 69.5 69.2 68.9 68.4 68.1 67.8 67.4 67.0 66.8 66.5 65.9 65.7 65.5 64.9 64.6 64.3 -99.0 +20 KS TAVG 10 63.8 63.6 63.2 62.7 62.4 61.8 61.6 61.3 60.7 60.4 60.0 59.6 59.1 58.7 58.3 57.7 57.4 57.0 56.5 56.0 55.5 55.0 54.7 54.1 53.7 53.1 52.8 52.2 51.8 51.1 50.7 +20 KS TAVG 11 50.1 49.7 49.0 48.6 48.1 47.6 47.1 46.6 46.1 45.8 45.2 44.8 44.2 43.9 43.3 43.0 42.4 42.1 41.8 41.3 40.9 40.3 40.0 39.5 39.2 38.9 38.4 38.0 37.7 37.3 -99.0 +20 KS TAVG 12 37.0 36.5 36.2 36.0 35.5 35.2 35.0 34.6 34.2 34.1 33.7 33.3 33.2 32.9 32.6 32.3 32.1 31.8 31.6 31.3 31.0 30.9 30.7 30.5 30.2 30.0 29.8 29.7 29.6 29.5 29.0 +20 KS RVP 1 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +20 KS RVP 2 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 -99.0 +20 KS RVP 3 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 +20 KS RVP 4 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 -99.0 +20 KS RVP 5 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +20 KS RVP 6 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +20 KS RVP 7 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +20 KS RVP 8 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +20 KS RVP 9 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +20 KS RVP 10 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +20 KS RVP 11 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 -99.0 +20 KS RVP 12 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +21 KY TMAX 1 42.3 41.9 41.7 41.6 41.6 41.5 41.5 41.4 41.3 41.3 41.0 40.8 40.8 40.8 40.8 40.9 41.1 41.2 41.4 41.4 41.5 41.6 41.6 41.7 41.7 41.9 42.2 42.4 42.6 42.7 43.0 +21 KY TMAX 2 43.3 43.5 43.7 43.9 44.3 44.5 44.8 45.0 45.4 45.6 45.9 46.3 46.5 46.8 47.2 47.4 47.7 48.1 48.3 48.6 49.1 49.3 49.7 50.1 50.4 50.8 51.1 51.5 51.7 -99.0 -99.0 +21 KY TMAX 3 51.8 52.2 52.6 53.0 53.4 53.6 54.1 54.4 54.7 55.2 55.5 55.8 56.2 56.6 56.8 57.2 57.6 58.0 58.3 58.6 59.1 59.4 59.7 60.1 60.4 60.7 61.1 61.4 61.7 62.2 62.4 +21 KY TMAX 4 62.8 63.2 63.5 63.8 64.2 64.4 64.8 65.2 65.4 65.7 66.1 66.4 66.7 66.9 67.3 67.6 67.8 68.2 68.5 68.7 69.0 69.4 69.6 69.8 70.3 70.5 70.7 70.9 71.3 71.6 -99.0 +21 KY TMAX 5 71.8 72.1 72.4 72.6 72.8 73.2 73.4 73.7 73.9 74.3 74.5 74.7 75.2 75.3 75.6 75.8 76.2 76.5 76.6 76.9 77.3 77.5 77.7 78.1 78.4 78.6 78.9 79.2 79.5 79.7 80.1 +21 KY TMAX 6 80.4 80.5 80.8 81.2 81.4 81.6 82.0 82.2 82.4 82.6 83.0 83.2 83.3 83.5 83.6 84.1 84.2 84.3 84.5 84.6 85.0 85.1 85.2 85.3 85.5 85.6 85.7 86.1 86.1 86.2 -99.0 +21 KY TMAX 7 86.3 86.3 86.5 86.7 87.0 87.0 87.1 87.1 87.1 87.2 87.3 87.3 87.3 87.3 87.4 87.4 87.4 87.5 87.5 87.6 87.7 87.7 87.9 87.9 88.0 87.9 87.7 87.7 87.6 87.6 87.5 +21 KY TMAX 8 87.6 87.5 87.5 87.4 87.4 87.3 87.3 87.2 87.1 87.0 87.0 86.7 86.7 86.5 86.5 86.4 86.3 86.2 86.0 85.7 85.6 85.5 85.4 85.3 85.1 85.0 84.7 84.5 84.4 84.3 84.0 +21 KY TMAX 9 83.7 83.6 83.4 83.1 82.8 82.7 82.5 82.2 81.9 81.7 81.5 81.2 80.8 80.6 80.3 79.9 79.7 79.5 79.2 78.8 78.5 78.3 77.8 77.5 77.3 76.8 76.5 76.0 75.7 75.4 -99.0 +21 KY TMAX 10 75.0 74.7 74.3 73.8 73.5 73.0 72.8 72.3 71.9 71.6 71.1 70.8 70.4 69.9 69.6 69.1 68.8 68.4 67.9 67.6 67.0 66.7 66.4 65.9 65.5 65.1 64.7 64.4 63.9 63.4 63.0 +21 KY TMAX 11 62.6 62.1 61.7 61.4 60.9 60.5 60.0 59.7 59.2 58.9 58.5 58.0 57.7 57.2 56.9 56.4 56.0 55.6 55.2 54.9 54.5 54.0 53.8 53.4 52.9 52.6 52.1 51.8 51.4 51.0 -99.0 +21 KY TMAX 12 50.7 50.4 49.9 49.6 49.1 48.9 48.6 48.3 47.8 47.6 47.3 46.9 46.7 46.5 46.0 45.8 45.6 45.4 44.9 44.7 44.5 44.3 43.9 43.7 43.6 43.4 43.0 42.9 42.7 42.5 42.4 +21 KY TMIN 1 24.5 24.3 24.2 23.9 23.8 23.7 23.7 23.6 23.5 23.5 23.4 23.4 23.4 23.3 23.1 23.1 23.0 23.0 23.0 23.0 23.2 23.2 23.3 23.3 23.4 23.4 23.5 23.5 23.7 23.7 23.9 +21 KY TMIN 2 24.1 24.2 24.2 24.4 24.6 24.7 25.0 25.1 25.2 25.5 25.6 25.9 26.0 26.2 26.5 26.8 27.0 27.1 27.5 27.8 28.0 28.1 28.7 28.9 29.0 29.5 29.8 30.0 30.1 -99.0 -99.0 +21 KY TMIN 3 30.3 30.8 31.0 31.2 31.7 32.0 32.1 32.6 32.9 33.0 33.5 33.8 34.0 34.4 34.7 34.9 35.2 35.5 35.7 36.0 36.3 36.6 36.8 37.0 37.4 37.6 37.8 38.2 38.4 38.6 38.8 +21 KY TMIN 4 39.2 39.4 39.6 39.8 40.2 40.4 40.6 41.0 41.2 41.5 41.9 42.1 42.3 42.6 42.9 43.2 43.4 43.9 44.1 44.4 44.8 45.1 45.3 45.7 46.0 46.2 46.7 47.0 47.2 47.6 -99.0 +21 KY TMIN 5 48.0 48.2 48.7 49.0 49.2 49.7 50.0 50.2 50.6 51.0 51.4 51.7 52.0 52.3 52.6 52.9 53.3 53.6 53.9 54.1 54.6 54.9 55.1 55.5 55.9 56.1 56.4 56.7 57.0 57.4 57.7 +21 KY TMIN 6 58.0 58.4 58.6 58.9 59.1 59.5 59.7 60.0 60.4 60.5 60.8 61.1 61.4 61.6 61.8 62.0 62.3 62.5 62.7 62.9 63.2 63.4 63.6 63.7 63.9 64.2 64.3 64.4 64.6 64.8 -99.0 +21 KY TMIN 7 65.1 65.1 65.2 65.4 65.5 65.6 65.9 66.0 66.0 66.1 66.1 66.2 66.2 66.2 66.3 66.4 66.4 66.5 66.5 66.6 66.6 66.6 66.6 66.6 66.6 66.5 66.4 66.4 66.3 66.3 66.1 +21 KY TMIN 8 66.2 66.2 66.0 66.0 65.9 65.8 65.6 65.5 65.4 65.3 65.3 65.1 65.0 64.9 64.8 64.5 64.4 64.3 64.2 64.0 63.9 63.6 63.4 63.3 63.1 63.0 62.7 62.5 62.4 62.2 62.0 +21 KY TMIN 9 61.7 61.4 61.3 61.1 60.9 60.5 60.3 60.0 59.6 59.4 59.2 58.7 58.4 58.2 57.7 57.4 57.2 56.6 56.3 56.0 55.5 55.2 54.6 54.3 53.8 53.4 53.0 52.4 52.1 51.5 -99.0 +21 KY TMIN 10 51.1 50.5 50.1 49.6 49.2 48.6 48.3 47.8 47.5 47.0 46.6 46.2 45.7 45.4 45.0 44.7 44.3 43.8 43.6 43.3 42.9 42.7 42.4 42.0 41.8 41.5 41.3 40.9 40.7 40.5 40.4 +21 KY TMIN 11 40.0 39.8 39.6 39.5 39.1 38.9 38.7 38.5 38.1 37.9 37.7 37.5 37.1 36.9 36.7 36.3 36.0 35.9 35.4 35.2 35.0 34.6 34.3 34.2 33.6 33.4 33.2 32.8 32.5 32.3 -99.0 +21 KY TMIN 12 31.9 31.5 31.3 31.0 30.6 30.4 30.1 29.8 29.6 29.2 28.9 28.7 28.6 28.2 28.0 27.7 27.4 27.2 27.0 26.8 26.5 26.4 26.2 25.9 25.8 25.5 25.3 25.2 25.1 24.7 24.6 +21 KY TAVG 1 33.4 33.2 32.8 32.8 32.7 32.7 32.6 32.5 32.5 32.4 32.3 32.3 32.0 31.9 31.9 31.9 31.9 32.2 32.2 32.3 32.4 32.4 32.6 32.6 32.6 32.7 32.7 32.8 33.2 33.3 33.5 +21 KY TAVG 2 33.6 33.7 34.1 34.3 34.5 34.6 34.9 35.2 35.3 35.5 35.7 36.1 36.3 36.5 36.9 37.2 37.3 37.5 38.0 38.3 38.4 39.0 39.2 39.4 39.9 40.2 40.4 40.9 41.1 -99.0 -99.0 +21 KY TAVG 3 41.2 41.4 41.9 42.2 42.4 42.9 43.1 43.4 44.0 44.1 44.4 44.9 45.1 45.4 45.8 46.1 46.3 46.8 47.1 47.3 47.7 48.1 48.2 48.5 48.9 49.1 49.4 49.8 50.1 50.3 50.7 +21 KY TAVG 4 51.0 51.3 51.7 51.9 52.2 52.4 52.8 53.0 53.3 53.7 53.9 54.2 54.7 54.8 55.0 55.5 55.7 55.9 56.3 56.7 56.8 57.1 57.6 57.8 58.0 58.5 58.7 59.0 59.4 59.7 -99.0 +21 KY TAVG 5 59.9 60.3 60.6 60.8 61.0 61.5 61.7 61.9 62.5 62.6 62.8 63.4 63.6 63.7 64.2 64.5 64.6 64.9 65.4 65.6 65.8 66.4 66.5 66.7 67.3 67.5 67.6 67.8 68.4 68.6 68.8 +21 KY TAVG 6 69.3 69.5 69.7 70.0 70.4 70.6 70.8 71.2 71.4 71.6 71.8 72.2 72.4 72.6 72.7 73.0 73.3 73.4 73.6 73.8 74.1 74.2 74.4 74.6 74.7 74.8 75.1 75.2 75.4 75.6 -99.0 +21 KY TAVG 7 75.6 75.7 75.8 75.9 76.3 76.3 76.5 76.5 76.5 76.6 76.6 76.7 76.7 76.7 76.8 77.0 77.0 77.1 77.2 77.2 77.3 77.3 77.3 77.3 77.3 77.2 77.2 77.1 77.0 77.0 76.9 +21 KY TAVG 8 77.0 76.9 76.9 76.6 76.5 76.5 76.4 76.3 76.3 76.2 76.2 76.1 75.9 75.6 75.5 75.4 75.4 75.3 75.2 75.0 74.7 74.5 74.4 74.3 74.2 74.1 73.7 73.5 73.4 73.2 73.1 +21 KY TAVG 9 72.7 72.5 72.3 72.2 71.8 71.6 71.4 71.1 70.8 70.6 70.3 69.9 69.7 69.4 69.1 68.7 68.5 68.1 67.7 67.5 66.9 66.7 66.3 65.8 65.6 65.2 64.7 64.4 63.8 63.5 -99.0 +21 KY TAVG 10 62.9 62.6 62.3 61.7 61.4 60.8 60.5 60.2 59.7 59.3 58.8 58.5 58.2 57.7 57.3 56.9 56.6 56.3 55.8 55.5 55.1 54.7 54.4 54.0 53.7 53.4 53.0 52.6 52.4 51.9 51.7 +21 KY TAVG 11 51.4 51.0 50.7 50.4 50.0 49.7 49.5 49.0 48.7 48.5 48.1 47.8 47.4 47.0 46.8 46.4 46.0 45.8 45.4 45.0 44.8 44.4 44.0 43.8 43.3 43.0 42.8 42.3 42.0 41.6 -99.0 +21 KY TAVG 12 41.3 41.0 40.6 40.3 40.0 39.6 39.3 39.0 38.6 38.4 38.1 37.9 37.6 37.3 37.1 36.7 36.5 36.2 36.1 35.7 35.5 35.4 35.1 34.8 34.6 34.4 34.3 34.1 33.8 33.7 33.5 +21 KY RVP 1 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +21 KY RVP 2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 -99.0 -99.0 +21 KY RVP 3 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 +21 KY RVP 4 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 -99.0 +21 KY RVP 5 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 +21 KY RVP 6 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 -99.0 +21 KY RVP 7 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 +21 KY RVP 8 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 +21 KY RVP 9 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 -99.0 +21 KY RVP 10 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 8.1 +21 KY RVP 11 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 -99.0 +21 KY RVP 12 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +22 LA TMAX 1 60.1 60.1 60.0 60.0 59.9 59.9 59.8 59.7 59.6 59.5 59.4 59.3 59.4 59.4 59.5 59.5 59.6 59.6 59.9 59.9 60.0 60.0 60.1 60.2 60.3 60.4 60.4 60.5 60.8 60.9 61.1 +22 LA TMAX 2 61.2 61.5 61.6 61.7 61.9 62.3 62.4 62.6 62.8 63.0 63.1 63.4 63.6 63.9 64.0 64.1 64.5 64.8 64.9 65.1 65.3 65.8 65.9 66.1 66.3 66.8 67.0 67.1 67.2 -99.0 -99.0 +22 LA TMAX 3 67.4 67.8 68.0 68.2 68.5 68.9 69.0 69.2 69.4 69.9 70.1 70.2 70.4 70.9 71.1 71.2 71.3 71.6 72.0 72.1 72.3 72.4 72.7 72.8 73.1 73.3 73.5 73.7 73.8 74.1 74.3 +22 LA TMAX 4 74.5 74.7 74.8 74.9 75.1 75.4 75.7 75.8 75.9 76.1 76.4 76.6 76.8 76.9 77.2 77.5 77.8 77.8 78.0 78.2 78.6 78.8 78.9 79.2 79.5 79.8 79.9 80.1 80.4 80.7 -99.0 +22 LA TMAX 5 80.9 81.1 81.5 81.7 81.8 82.1 82.4 82.6 82.8 83.0 83.2 83.5 83.6 83.9 84.1 84.4 84.6 84.8 85.0 85.2 85.3 85.7 85.8 86.0 86.2 86.3 86.7 86.9 87.0 87.1 87.3 +22 LA TMAX 6 87.5 87.9 88.0 88.1 88.3 88.4 88.5 88.8 89.0 89.1 89.3 89.4 89.4 89.5 89.7 89.7 89.9 90.0 90.3 90.3 90.4 90.5 90.6 90.6 90.6 90.8 90.8 90.9 91.0 91.0 -99.0 +22 LA TMAX 7 91.0 91.1 91.1 91.1 91.2 91.2 91.3 91.3 91.4 91.5 91.5 91.5 91.7 91.7 91.7 91.8 91.8 91.8 91.8 91.9 91.9 91.9 92.0 92.0 92.0 92.2 92.2 92.2 92.3 92.3 92.3 +22 LA TMAX 8 92.3 92.3 92.3 92.3 92.3 92.3 92.3 92.3 92.2 92.1 92.1 92.1 92.0 91.9 91.9 91.9 91.9 91.8 91.8 91.7 91.7 91.7 91.4 91.3 91.2 91.1 91.0 90.9 90.7 90.7 90.5 +22 LA TMAX 9 90.3 90.1 90.1 89.8 89.6 89.6 89.5 89.3 88.9 88.9 88.7 88.5 88.3 88.0 87.9 87.7 87.5 87.3 87.0 86.8 86.5 86.4 86.1 85.8 85.6 85.5 85.3 84.8 84.6 84.4 -99.0 +22 LA TMAX 10 84.2 83.7 83.6 83.2 83.0 82.7 82.4 82.1 82.0 81.5 81.2 81.0 80.7 80.2 80.1 79.8 79.3 79.1 78.9 78.4 78.1 77.8 77.6 77.1 76.9 76.6 76.1 75.9 75.6 75.1 74.8 +22 LA TMAX 11 74.5 74.1 73.8 73.5 73.2 72.8 72.5 72.2 71.9 71.5 71.2 71.1 70.6 70.2 70.1 69.6 69.4 69.1 68.9 68.5 68.2 68.0 67.7 67.4 67.2 66.9 66.6 66.5 66.1 65.8 -99.0 +22 LA TMAX 12 65.6 65.5 65.2 64.9 64.7 64.4 64.3 64.1 63.8 63.6 63.4 63.2 63.1 62.8 62.6 62.4 62.2 62.1 62.0 61.9 61.6 61.4 61.2 61.1 61.0 60.9 60.9 60.6 60.5 60.4 60.2 +22 LA TMIN 1 40.2 40.2 40.0 40.0 39.9 39.8 39.8 39.8 39.7 39.7 39.6 39.6 39.6 39.7 39.7 39.8 39.8 39.8 39.9 40.0 40.0 40.0 40.1 40.1 40.3 40.5 40.5 40.5 40.6 40.7 40.8 +22 LA TMIN 2 40.9 40.9 41.0 41.1 41.3 41.6 41.7 41.8 41.9 42.1 42.3 42.5 42.8 42.8 42.9 43.1 43.4 43.7 43.9 44.0 44.4 44.6 44.8 45.1 45.3 45.6 45.9 46.1 46.2 -99.0 -99.0 +22 LA TMIN 3 46.3 46.7 47.0 47.2 47.5 47.8 48.1 48.2 48.5 48.7 49.1 49.2 49.4 49.6 49.9 50.2 50.4 50.5 50.7 51.0 51.2 51.4 51.5 51.8 52.0 52.0 52.3 52.4 52.6 52.8 52.9 +22 LA TMIN 4 53.0 53.2 53.4 53.6 53.7 53.9 54.1 54.3 54.4 54.7 54.9 55.1 55.3 55.5 55.8 56.1 56.3 56.5 56.7 57.1 57.3 57.6 58.0 58.2 58.4 58.7 59.1 59.3 59.6 59.9 -99.0 +22 LA TMIN 5 60.3 60.6 60.8 61.3 61.5 61.8 62.2 62.4 62.7 63.0 63.3 63.5 63.8 64.1 64.4 64.6 64.9 65.1 65.4 65.6 65.9 66.1 66.3 66.6 66.8 67.1 67.3 67.4 67.7 67.9 68.1 +22 LA TMIN 6 68.3 68.5 68.8 68.9 69.1 69.2 69.3 69.5 69.7 70.0 70.2 70.2 70.3 70.4 70.6 70.7 70.9 71.2 71.3 71.4 71.4 71.4 71.5 71.6 71.8 71.9 72.0 72.1 72.2 72.4 -99.0 +22 LA TMIN 7 72.5 72.5 72.5 72.6 72.6 72.7 72.7 72.7 72.8 72.9 72.9 72.9 72.9 72.9 72.9 73.0 73.0 73.0 73.1 73.1 73.2 73.2 73.2 73.2 73.2 73.3 73.3 73.2 73.2 73.1 73.1 +22 LA TMIN 8 73.2 73.1 73.1 73.0 72.9 72.8 72.7 72.7 72.7 72.7 72.6 72.6 72.5 72.5 72.5 72.3 72.3 72.3 72.2 72.2 72.1 72.1 72.0 71.8 71.8 71.7 71.6 71.6 71.3 71.3 71.2 +22 LA TMIN 9 71.0 70.9 70.8 70.8 70.6 70.4 70.3 70.2 69.8 69.6 69.4 69.2 69.0 68.7 68.4 68.2 67.9 67.7 67.2 67.0 66.7 66.2 65.9 65.7 65.1 64.8 64.4 63.9 63.5 63.2 -99.0 +22 LA TMIN 10 62.6 62.2 61.9 61.3 61.0 60.5 60.1 59.7 59.3 59.0 58.6 58.2 57.8 57.6 57.0 56.8 56.5 56.0 55.7 55.5 55.0 54.8 54.6 54.1 53.9 53.7 53.4 53.0 52.8 52.7 52.3 +22 LA TMIN 11 52.0 51.8 51.7 51.4 51.0 50.8 50.7 50.4 50.1 49.9 49.7 49.5 49.1 48.9 48.7 48.4 48.1 48.0 47.7 47.6 47.2 47.0 46.7 46.6 46.3 46.1 45.7 45.6 45.5 45.0 -99.0 +22 LA TMIN 12 44.8 44.6 44.4 44.1 43.9 43.8 43.5 43.3 43.2 42.9 42.8 42.5 42.4 42.2 42.1 41.9 41.7 41.7 41.5 41.3 41.2 41.1 41.1 40.8 40.7 40.7 40.6 40.6 40.4 40.2 40.2 +22 LA TAVG 1 50.1 50.1 50.0 50.0 49.9 49.9 49.9 49.8 49.8 49.7 49.7 49.6 49.7 49.5 49.7 49.8 49.8 49.8 49.9 50.0 50.0 50.0 50.1 50.2 50.2 50.3 50.3 50.4 50.6 50.7 51.0 +22 LA TAVG 2 51.0 51.2 51.3 51.5 51.6 52.0 52.0 52.2 52.3 52.5 52.8 53.1 53.2 53.3 53.5 53.7 54.1 54.2 54.4 54.6 55.0 55.2 55.4 55.6 55.9 56.2 56.4 56.7 56.8 -99.0 -99.0 +22 LA TAVG 3 56.9 57.3 57.5 57.8 58.0 58.4 58.6 58.8 59.0 59.4 59.6 59.8 59.9 60.2 60.5 60.7 60.9 61.0 61.2 61.6 61.8 62.0 62.1 62.3 62.6 62.8 62.9 63.1 63.1 63.5 63.6 +22 LA TAVG 4 63.9 64.0 64.1 64.4 64.5 64.6 64.8 65.1 65.3 65.4 65.6 65.8 66.2 66.4 66.5 66.7 66.9 67.3 67.4 67.6 67.9 68.2 68.4 68.6 68.9 69.3 69.5 69.8 70.0 70.4 -99.0 +22 LA TAVG 5 70.6 70.8 71.3 71.4 71.7 72.0 72.3 72.5 72.7 73.0 73.3 73.6 73.7 74.0 74.3 74.5 74.8 75.0 75.2 75.5 75.7 75.8 76.1 76.3 76.6 76.8 77.0 77.2 77.3 77.5 77.8 +22 LA TAVG 6 78.0 78.2 78.3 78.4 78.6 78.8 79.1 79.3 79.4 79.5 79.6 79.6 79.9 80.1 80.3 80.4 80.5 80.5 80.6 80.7 80.8 80.9 81.0 81.1 81.4 81.5 81.6 81.6 81.7 81.7 -99.0 +22 LA TAVG 7 81.8 81.8 81.8 81.9 81.9 82.0 82.0 82.0 82.0 82.2 82.2 82.2 82.2 82.2 82.2 82.3 82.4 82.4 82.4 82.5 82.5 82.5 82.7 82.7 82.7 82.9 82.9 82.8 82.8 82.8 82.8 +22 LA TAVG 8 82.8 82.8 82.8 82.8 82.8 82.7 82.7 82.7 82.6 82.6 82.5 82.2 82.2 82.2 82.1 82.0 82.0 81.9 81.9 81.9 81.8 81.7 81.7 81.6 81.5 81.4 81.4 81.2 81.1 80.8 80.7 +22 LA TAVG 9 80.7 80.6 80.4 80.3 80.2 80.1 79.8 79.6 79.4 79.2 79.1 78.9 78.7 78.4 78.1 77.9 77.7 77.5 77.1 76.9 76.7 76.4 76.0 75.8 75.4 75.0 74.8 74.4 74.2 73.7 -99.0 +22 LA TAVG 10 73.4 73.1 72.6 72.4 72.1 71.5 71.3 71.0 70.5 70.2 70.0 69.4 69.2 68.9 68.6 68.2 67.9 67.6 67.3 67.0 66.6 66.3 66.1 65.7 65.4 65.1 64.8 64.5 64.2 63.9 63.6 +22 LA TAVG 11 63.4 63.0 62.7 62.5 62.1 61.9 61.6 61.4 61.0 60.7 60.5 60.1 59.9 59.6 59.4 59.0 58.9 58.5 58.3 58.1 57.7 57.5 57.3 57.1 56.6 56.5 56.3 56.0 55.7 55.5 -99.0 +22 LA TAVG 12 55.3 55.1 54.8 54.5 54.3 54.1 53.9 53.8 53.6 53.2 53.0 52.9 52.8 52.6 52.4 52.1 52.0 51.9 51.8 51.7 51.4 51.1 51.1 51.0 50.9 50.8 50.8 50.6 50.5 50.4 50.1 +22 LA RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +22 LA RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +22 LA RVP 3 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +22 LA RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +22 LA RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +22 LA RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +22 LA RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +22 LA RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +22 LA RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +22 LA RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +22 LA RVP 11 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +22 LA RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +23 ME TMAX 1 29.5 29.4 29.1 29.0 28.8 28.7 28.6 28.5 28.4 28.4 28.4 28.3 28.2 28.1 28.0 27.9 27.9 27.9 28.0 28.0 28.0 28.2 28.2 28.3 28.3 28.4 28.6 28.6 28.7 28.8 28.9 +23 ME TMAX 2 29.0 29.2 29.5 29.7 29.8 29.9 30.1 30.3 30.7 30.8 30.9 31.0 31.4 31.7 31.9 32.0 32.3 32.8 32.9 33.0 33.4 33.8 33.9 34.1 34.7 34.9 35.1 35.5 35.7 -99.0 -99.0 +23 ME TMAX 3 35.8 36.0 36.3 36.7 37.0 37.4 37.7 38.0 38.4 38.7 39.1 39.4 39.6 39.9 40.6 40.7 40.9 41.6 41.7 42.2 42.6 42.8 43.2 43.6 43.8 44.2 44.7 45.1 45.5 45.7 46.1 +23 ME TMAX 4 46.6 46.9 47.3 47.7 48.0 48.4 48.8 49.2 49.6 50.0 50.4 50.9 51.2 51.6 52.0 52.5 52.9 53.3 53.9 54.2 54.6 55.1 55.4 55.9 56.3 56.9 57.3 57.7 58.3 58.7 -99.0 +23 ME TMAX 5 59.1 59.4 60.1 60.4 61.1 61.4 61.6 62.3 62.6 63.1 63.5 63.7 64.2 64.6 65.0 65.4 65.7 66.1 66.4 66.9 67.2 67.4 67.9 68.1 68.4 68.8 69.0 69.3 69.6 69.8 70.1 +23 ME TMAX 6 70.5 70.7 70.9 71.3 71.4 71.8 72.0 72.3 72.4 72.7 73.1 73.2 73.4 73.7 74.0 74.3 74.4 74.7 74.9 75.1 75.3 75.6 75.8 76.0 76.2 76.5 76.7 76.9 77.1 77.4 -99.0 +23 ME TMAX 7 77.6 77.8 77.8 78.0 78.4 78.6 78.6 78.8 78.8 78.9 79.1 79.4 79.5 79.6 79.6 79.6 79.7 79.7 79.7 79.8 79.8 80.0 80.0 80.0 80.0 80.0 80.0 80.0 80.0 79.8 79.8 +23 ME TMAX 8 79.8 79.8 79.8 79.7 79.6 79.3 79.3 79.2 79.1 79.0 78.8 78.7 78.5 78.3 78.2 78.0 77.8 77.5 77.4 77.2 76.9 76.6 76.5 76.3 76.0 75.5 75.4 75.1 74.8 74.5 74.1 +23 ME TMAX 9 73.8 73.5 73.3 72.8 72.4 72.3 71.9 71.5 71.1 70.8 70.6 70.1 69.8 69.6 68.9 68.8 68.4 67.8 67.7 67.3 66.9 66.6 66.1 65.8 65.5 65.0 64.7 64.4 63.9 63.6 -99.0 +23 ME TMAX 10 63.1 62.8 62.5 61.9 61.6 61.3 60.8 60.6 60.0 59.8 59.4 58.9 58.6 58.2 57.8 57.3 56.9 56.7 56.2 55.8 55.3 55.1 54.6 54.1 53.8 53.4 53.0 52.6 52.2 51.8 51.4 +23 ME TMAX 11 50.9 50.6 50.2 49.7 49.3 49.1 48.6 48.2 47.6 47.3 47.0 46.4 46.2 45.6 45.3 44.9 44.4 44.1 43.6 43.3 42.8 42.4 42.0 41.5 41.3 40.6 40.3 40.0 39.4 39.2 -99.0 +23 ME TMAX 12 38.5 38.3 37.9 37.4 37.2 36.7 36.3 36.1 35.5 35.2 35.0 34.6 34.2 34.0 33.6 33.2 33.0 32.8 32.3 32.2 32.0 31.7 31.4 31.1 31.0 30.6 30.4 30.2 30.0 29.9 29.6 +23 ME TMIN 1 10.0 9.7 9.4 9.2 9.0 8.8 8.5 8.4 8.3 8.2 7.8 7.7 7.7 7.6 7.5 7.4 7.3 7.2 7.2 7.1 7.1 7.1 7.0 7.1 7.1 7.1 7.1 7.1 7.2 7.3 7.5 +23 ME TMIN 2 7.4 7.7 7.9 8.0 8.1 8.2 8.4 8.7 8.7 9.0 9.1 9.4 9.7 9.9 10.1 10.5 10.7 11.0 11.4 11.7 11.9 12.2 12.7 13.0 13.4 13.8 14.2 14.8 14.9 -99.0 -99.0 +23 ME TMIN 3 15.0 15.4 16.0 16.3 16.7 17.1 17.5 18.0 18.3 18.7 19.2 19.5 20.0 20.4 20.6 21.1 21.5 21.8 22.4 22.7 23.0 23.4 23.8 24.1 24.5 24.8 25.2 25.6 25.8 26.2 26.6 +23 ME TMIN 4 26.9 27.3 27.6 28.0 28.3 28.7 28.9 29.3 29.7 30.0 30.4 30.8 31.0 31.5 31.9 32.1 32.4 32.9 33.2 33.4 33.8 34.2 34.5 34.8 35.2 35.6 35.9 36.3 36.7 36.9 -99.0 +23 ME TMIN 5 37.4 37.6 37.9 38.3 38.7 39.0 39.4 39.7 40.0 40.4 40.7 41.1 41.4 41.7 42.2 42.4 42.7 43.1 43.4 43.6 44.1 44.4 44.6 45.0 45.3 45.6 46.0 46.3 46.6 46.9 47.3 +23 ME TMIN 6 47.6 47.8 48.2 48.5 48.8 49.1 49.4 49.6 50.0 50.4 50.5 50.7 51.1 51.4 51.6 51.9 52.1 52.4 52.6 53.0 53.1 53.4 53.6 53.9 54.1 54.4 54.5 54.9 55.0 55.2 -99.0 +23 ME TMIN 7 55.4 55.6 55.9 56.0 56.2 56.3 56.4 56.6 56.9 57.0 57.2 57.2 57.3 57.3 57.4 57.5 57.6 57.6 57.8 57.8 57.9 57.9 57.9 57.9 58.0 58.2 58.2 58.0 58.0 57.9 57.8 +23 ME TMIN 8 57.8 57.8 57.7 57.7 57.5 57.4 57.2 57.2 57.1 56.9 56.8 56.7 56.6 56.4 56.1 56.1 55.8 55.6 55.6 55.2 55.1 54.7 54.6 54.4 54.0 53.7 53.6 53.3 52.9 52.7 52.4 +23 ME TMIN 9 52.1 51.7 51.5 51.2 50.7 50.5 50.3 49.7 49.5 49.2 48.7 48.5 48.1 47.6 47.5 46.9 46.7 46.5 45.8 45.6 45.4 44.7 44.5 44.0 43.7 43.4 42.9 42.6 42.1 41.8 -99.0 +23 ME TMIN 10 41.4 41.0 40.7 40.2 39.9 39.5 39.1 38.8 38.4 38.0 37.9 37.3 37.1 36.9 36.4 36.1 36.0 35.5 35.2 35.1 35.0 34.5 34.2 34.1 33.8 33.5 33.3 33.2 33.0 32.8 32.6 +23 ME TMIN 11 32.4 32.2 31.9 31.8 31.6 31.3 30.9 30.8 30.7 30.1 29.9 29.7 29.3 28.8 28.7 28.3 27.8 27.6 27.2 26.7 26.3 26.1 25.5 25.0 24.7 24.2 23.8 23.2 22.9 22.1 -99.0 +23 ME TMIN 12 21.8 21.3 20.7 20.3 19.7 19.3 19.0 18.3 18.0 17.5 17.1 16.6 16.1 15.9 15.4 15.0 14.8 14.3 13.9 13.5 13.2 12.9 12.4 12.2 11.9 11.6 11.2 11.0 10.7 10.4 10.1 +23 ME TAVG 1 19.7 19.6 19.4 19.1 18.9 18.7 18.6 18.5 18.4 18.2 18.1 18.0 18.0 17.9 17.8 17.7 17.6 17.6 17.6 17.6 17.5 17.5 17.6 17.7 17.8 17.8 17.9 17.9 18.1 18.2 18.3 +23 ME TAVG 2 18.3 18.5 18.7 18.8 19.0 19.2 19.3 19.4 19.6 20.0 20.1 20.3 20.5 20.7 21.1 21.2 21.5 21.8 22.2 22.4 22.6 23.1 23.3 23.6 23.9 24.3 24.6 25.1 25.3 -99.0 -99.0 +23 ME TAVG 3 25.5 25.7 26.2 26.5 26.9 27.4 27.7 27.9 28.4 28.7 29.1 29.5 29.8 30.1 30.6 30.9 31.4 31.7 32.0 32.5 32.7 33.1 33.5 33.8 34.3 34.6 34.8 35.3 35.7 36.0 36.5 +23 ME TAVG 4 36.8 37.1 37.5 37.9 38.1 38.6 38.9 39.3 39.7 40.1 40.4 40.8 41.2 41.5 41.8 42.4 42.7 43.1 43.5 43.8 44.2 44.6 45.0 45.4 45.9 46.2 46.7 47.0 47.4 47.9 -99.0 +23 ME TAVG 5 48.3 48.6 49.0 49.5 49.8 50.3 50.6 51.0 51.4 51.8 52.2 52.4 52.9 53.2 53.4 54.1 54.2 54.6 55.1 55.2 55.5 56.1 56.2 56.5 57.1 57.3 57.4 57.9 58.2 58.4 58.7 +23 ME TAVG 6 59.2 59.3 59.5 59.9 60.2 60.4 60.7 61.0 61.2 61.5 61.8 62.2 62.3 62.6 62.9 63.0 63.3 63.6 63.8 64.0 64.3 64.5 64.8 65.0 65.1 65.5 65.7 65.8 66.0 66.3 -99.0 +23 ME TAVG 7 66.6 66.7 66.8 67.0 67.2 67.3 67.6 67.7 67.9 67.9 68.2 68.2 68.3 68.4 68.4 68.5 68.6 68.8 68.9 68.9 68.9 68.9 69.0 69.1 69.1 69.1 69.1 69.1 68.9 68.8 68.8 +23 ME TAVG 8 68.8 68.8 68.8 68.7 68.6 68.5 68.3 68.2 68.1 67.9 67.9 67.7 67.6 67.3 67.2 67.0 66.8 66.7 66.3 66.2 66.0 65.7 65.4 65.2 65.1 64.8 64.4 64.2 63.9 63.7 63.2 +23 ME TAVG 9 63.0 62.7 62.3 62.1 61.7 61.4 61.1 60.6 60.3 60.1 59.6 59.3 59.0 58.5 58.3 58.0 57.4 57.3 56.9 56.4 56.1 55.6 55.4 55.1 54.5 54.2 53.9 53.4 53.1 52.6 -99.0 +23 ME TAVG 10 52.4 52.0 51.5 51.2 50.7 50.4 50.1 49.7 49.3 49.0 48.6 48.2 47.9 47.4 47.2 46.7 46.4 46.2 45.8 45.4 45.1 44.8 44.5 44.1 43.8 43.5 43.2 42.9 42.7 42.3 42.0 +23 ME TAVG 11 41.7 41.4 41.0 40.9 40.5 40.1 39.8 39.4 39.3 38.8 38.4 38.2 37.8 37.3 37.1 36.6 36.2 35.8 35.4 35.1 34.6 34.2 33.9 33.4 32.9 32.5 31.9 31.7 31.1 30.8 -99.0 +23 ME TAVG 12 30.3 29.8 29.3 29.0 28.6 28.0 27.6 27.1 26.8 26.4 26.0 25.7 25.3 24.8 24.7 24.1 23.8 23.6 23.0 22.8 22.6 22.4 21.9 21.7 21.6 21.2 20.8 20.6 20.5 20.3 19.8 +23 ME RVP 1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +23 ME RVP 2 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 -99.0 -99.0 +23 ME RVP 3 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 +23 ME RVP 4 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 -99.0 +23 ME RVP 5 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 +23 ME RVP 6 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 -99.0 +23 ME RVP 7 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 +23 ME RVP 8 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 +23 ME RVP 9 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 -99.0 +23 ME RVP 10 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 +23 ME RVP 11 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 -99.0 +23 ME RVP 12 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +24 MD TMAX 1 42.8 42.7 42.4 42.2 42.1 42.1 42.0 42.0 41.9 41.8 41.8 41.6 41.5 41.4 41.4 41.3 41.3 41.4 41.4 41.4 41.4 41.5 41.7 41.9 42.0 42.1 42.1 42.1 42.2 42.2 42.3 +24 MD TMAX 2 42.6 42.9 43.1 43.2 43.3 43.3 43.5 44.0 44.1 44.3 44.4 44.6 45.0 45.2 45.4 45.5 46.0 46.3 46.4 46.8 47.1 47.3 47.4 48.0 48.3 48.4 49.0 49.2 49.3 -99.0 -99.0 +24 MD TMAX 3 49.4 50.0 50.2 50.4 51.0 51.3 51.6 52.0 52.3 52.8 53.1 53.3 53.9 54.1 54.4 55.0 55.2 55.5 56.0 56.2 56.7 57.0 57.2 57.8 58.1 58.4 58.8 59.1 59.7 60.0 60.4 +24 MD TMAX 4 60.7 61.0 61.6 61.8 62.2 62.6 62.8 63.4 63.6 63.8 64.4 64.6 64.9 65.4 65.7 66.0 66.4 66.6 67.0 67.3 67.7 67.9 68.3 68.6 68.8 69.3 69.5 69.7 70.0 70.3 -99.0 +24 MD TMAX 5 70.7 71.0 71.1 71.5 71.9 72.1 72.2 72.6 73.0 73.1 73.4 73.9 74.0 74.3 74.7 75.0 75.1 75.4 75.9 76.0 76.3 76.7 77.0 77.2 77.5 77.9 78.1 78.4 78.6 78.9 79.2 +24 MD TMAX 6 79.4 79.9 80.1 80.3 80.5 81.0 81.2 81.3 81.6 82.0 82.2 82.3 82.8 83.0 83.1 83.3 83.5 83.8 84.0 84.2 84.3 84.8 84.9 85.0 85.2 85.4 85.6 85.8 86.0 86.1 -99.0 +24 MD TMAX 7 86.2 86.3 86.5 86.7 87.0 87.0 87.1 87.2 87.3 87.4 87.4 87.4 87.6 87.7 87.8 87.8 87.8 87.9 88.0 88.1 88.1 88.1 88.1 88.0 87.9 87.9 87.9 87.8 87.5 87.5 87.3 +24 MD TMAX 8 87.4 87.2 87.2 87.2 87.1 87.1 87.0 86.9 86.6 86.4 86.3 86.2 86.2 86.2 86.1 85.8 85.4 85.3 85.2 85.2 85.0 84.9 84.5 84.3 84.2 84.2 83.9 83.7 83.4 83.3 83.0 +24 MD TMAX 9 82.9 82.6 82.4 82.0 82.0 81.7 81.5 81.1 81.0 80.7 80.4 80.0 79.9 79.6 79.1 79.0 78.6 78.1 78.0 77.7 77.3 77.0 76.6 76.2 75.9 75.5 75.1 74.9 74.4 74.0 -99.0 +24 MD TMAX 10 73.6 73.0 72.9 72.4 72.0 71.7 71.1 71.0 70.4 70.0 69.8 69.1 69.0 68.6 68.0 67.9 67.3 67.0 66.8 66.2 65.9 65.7 65.1 64.9 64.3 64.1 63.9 63.3 63.0 62.9 62.1 +24 MD TMAX 11 62.0 61.8 61.2 61.0 60.5 60.1 59.9 59.5 59.1 59.0 58.3 58.1 57.8 57.2 57.1 56.8 56.2 56.0 55.4 55.1 54.9 54.3 54.0 53.8 53.2 53.0 52.7 52.1 51.9 51.3 -99.0 +24 MD TMAX 12 51.1 50.9 50.2 50.0 49.8 49.2 49.0 48.6 48.3 48.0 47.8 47.4 47.1 46.8 46.4 46.2 46.0 45.8 45.4 45.2 45.0 44.8 44.6 44.2 44.1 43.8 43.6 43.5 43.2 43.1 43.0 +24 MD TMIN 1 25.9 25.7 25.6 25.5 25.2 25.1 25.0 24.9 24.9 24.8 24.7 24.6 24.5 24.5 24.5 24.5 24.2 24.1 24.1 24.0 24.0 24.0 24.0 24.1 24.1 24.1 24.3 24.5 24.5 24.5 24.6 +24 MD TMIN 2 24.6 24.6 24.8 24.9 25.0 25.1 25.1 25.2 25.4 25.6 25.7 25.9 26.0 26.1 26.4 26.5 26.7 27.0 27.1 27.4 27.5 27.8 28.2 28.4 28.5 28.9 29.4 29.5 29.6 -99.0 -99.0 +24 MD TMIN 3 29.7 29.9 30.3 30.6 30.9 31.2 31.4 31.7 32.0 32.3 32.7 32.8 33.3 33.4 33.8 34.1 34.3 34.5 34.9 35.2 35.5 35.7 36.0 36.3 36.6 36.9 37.2 37.5 37.7 38.1 38.2 +24 MD TMIN 4 38.6 38.8 39.1 39.4 39.7 40.0 40.3 40.7 40.8 41.1 41.6 41.7 42.2 42.5 42.7 42.9 43.4 43.7 43.8 44.4 44.6 44.8 45.3 45.6 45.8 46.2 46.6 46.8 47.1 47.7 -99.0 +24 MD TMIN 5 47.8 48.0 48.7 48.8 49.1 49.7 49.8 50.2 50.7 50.8 51.1 51.7 51.8 52.2 52.4 52.8 53.2 53.4 53.8 54.2 54.4 54.8 55.2 55.3 55.7 56.1 56.3 56.6 57.0 57.3 57.5 +24 MD TMIN 6 58.0 58.1 58.5 58.8 59.1 59.4 59.6 59.9 60.3 60.4 60.8 61.1 61.3 61.5 61.9 62.2 62.3 62.6 62.8 63.0 63.2 63.4 63.7 63.8 64.2 64.2 64.6 64.7 64.8 65.2 -99.0 +24 MD TMIN 7 65.3 65.7 65.7 65.7 65.7 66.0 66.3 66.5 66.7 66.7 66.7 66.7 66.7 66.7 66.7 66.8 67.0 67.2 67.2 67.3 67.4 67.4 67.4 67.4 67.3 67.1 67.1 67.0 67.0 66.9 66.8 +24 MD TMIN 8 67.0 66.8 66.8 66.5 66.5 66.4 66.2 66.1 66.1 66.0 66.0 66.0 65.5 65.4 65.2 65.2 65.1 65.1 64.9 64.6 64.4 64.2 64.2 64.1 63.8 63.6 63.4 63.2 63.1 62.8 62.7 +24 MD TMIN 9 62.4 62.2 62.0 61.7 61.6 61.2 61.1 60.7 60.6 60.2 59.8 59.6 59.2 59.0 58.6 58.3 58.0 57.5 57.1 56.7 56.4 56.0 55.6 55.1 54.6 54.3 53.7 53.3 52.9 52.4 -99.0 +24 MD TMIN 10 51.9 51.5 51.0 50.6 50.2 49.6 49.2 48.7 48.3 47.9 47.4 47.2 46.7 46.3 45.9 45.6 45.2 44.9 44.4 44.2 43.8 43.4 43.2 42.9 42.5 42.3 42.1 41.6 41.4 41.3 41.1 +24 MD TMIN 11 40.6 40.4 40.3 40.0 39.6 39.5 39.3 38.9 38.6 38.5 38.1 37.9 37.6 37.4 37.1 36.9 36.6 36.2 36.0 35.9 35.5 35.2 35.0 34.9 34.3 34.1 33.9 33.5 33.2 33.0 -99.0 +24 MD TMIN 12 32.8 32.3 32.2 31.8 31.6 31.3 31.1 30.8 30.6 30.3 29.9 29.8 29.6 29.3 28.9 28.8 28.7 28.4 28.2 27.9 27.7 27.6 27.5 27.2 26.9 26.8 26.7 26.6 26.3 26.1 26.0 +24 MD TAVG 1 34.4 34.2 34.0 33.8 33.7 33.6 33.5 33.5 33.4 33.3 33.2 33.2 33.2 33.2 33.0 32.8 32.7 32.7 32.7 32.7 32.7 32.8 32.8 33.1 33.1 33.2 33.2 33.3 33.4 33.5 33.6 +24 MD TAVG 2 33.7 33.7 33.8 34.0 34.0 34.3 34.5 34.6 34.8 34.9 35.1 35.3 35.5 35.8 35.8 36.2 36.5 36.6 36.8 37.1 37.4 37.6 37.9 38.2 38.5 38.7 39.1 39.4 39.6 -99.0 -99.0 +24 MD TAVG 3 39.7 40.0 40.4 40.6 40.9 41.4 41.6 41.9 42.3 42.5 42.7 43.3 43.5 43.7 44.0 44.5 44.7 45.0 45.5 45.7 45.9 46.4 46.8 47.0 47.4 47.7 48.1 48.3 48.7 49.1 49.3 +24 MD TAVG 4 49.7 50.1 50.3 50.6 51.1 51.3 51.6 52.1 52.2 52.6 53.1 53.1 53.6 54.0 54.2 54.5 54.8 55.2 55.4 55.8 56.1 56.3 56.8 57.1 57.3 57.7 58.0 58.3 58.6 59.1 -99.0 +24 MD TAVG 5 59.2 59.6 60.0 60.2 60.4 60.7 61.1 61.4 61.7 62.1 62.3 62.7 63.0 63.3 63.6 64.0 64.2 64.4 64.9 65.0 65.3 65.9 66.0 66.3 66.8 67.0 67.1 67.5 67.9 68.1 68.5 +24 MD TAVG 6 68.8 68.9 69.4 69.7 69.9 70.0 70.5 70.8 70.9 71.2 71.5 71.8 71.9 72.2 72.6 72.8 72.9 73.1 73.4 73.7 73.9 74.0 74.3 74.5 74.8 75.0 75.0 75.3 75.6 75.6 -99.0 +24 MD TAVG 7 75.8 76.0 76.1 76.1 76.4 76.6 76.8 76.8 77.0 77.0 77.0 77.1 77.2 77.2 77.3 77.5 77.5 77.6 77.6 77.6 77.7 77.8 77.7 77.6 77.6 77.6 77.6 77.4 77.4 77.2 77.1 +24 MD TAVG 8 77.2 77.0 76.9 76.9 76.9 76.7 76.6 76.6 76.4 76.4 76.2 76.0 75.9 75.8 75.7 75.5 75.4 75.2 75.0 74.9 74.7 74.5 74.3 74.2 74.1 73.9 73.7 73.4 73.2 73.2 72.8 +24 MD TAVG 9 72.8 72.3 72.2 72.0 71.9 71.4 71.3 71.0 70.8 70.3 70.2 69.9 69.5 69.3 69.0 68.6 68.2 68.0 67.6 67.2 66.9 66.5 66.1 65.8 65.2 65.0 64.5 64.1 63.6 63.1 -99.0 +24 MD TAVG 10 62.8 62.3 62.0 61.4 61.1 60.6 60.2 59.8 59.4 59.1 58.5 58.1 57.9 57.4 57.1 56.8 56.4 55.9 55.5 55.3 54.9 54.5 54.2 53.9 53.5 53.2 52.9 52.5 52.4 51.9 51.6 +24 MD TAVG 11 51.4 51.0 50.8 50.5 50.0 49.8 49.5 49.4 48.9 48.6 48.4 48.0 47.7 47.4 47.1 46.7 46.5 46.1 45.8 45.6 45.1 44.8 44.6 44.2 43.8 43.6 43.2 42.8 42.6 42.2 -99.0 +24 MD TAVG 12 41.8 41.6 41.2 40.8 40.6 40.3 39.9 39.7 39.6 39.1 38.8 38.7 38.5 38.0 37.8 37.7 37.3 37.0 36.8 36.7 36.5 36.1 36.0 35.8 35.6 35.4 35.1 35.0 34.8 34.7 34.5 +24 MD RVP 1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +24 MD RVP 2 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 -99.0 -99.0 +24 MD RVP 3 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 +24 MD RVP 4 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +24 MD RVP 5 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +24 MD RVP 6 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 +24 MD RVP 7 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +24 MD RVP 8 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +24 MD RVP 9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 +24 MD RVP 10 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +24 MD RVP 11 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +24 MD RVP 12 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +25 MA TMAX 1 36.2 36.1 35.8 35.5 35.4 35.4 35.4 35.4 35.3 35.2 35.1 35.0 35.0 35.0 34.9 34.8 34.6 34.5 34.7 34.7 34.7 34.7 34.8 34.8 35.0 35.0 35.0 35.0 35.0 35.2 35.3 +25 MA TMAX 2 35.3 35.6 35.6 35.7 35.8 35.9 36.0 36.4 36.5 36.5 36.7 36.8 37.0 37.3 37.5 37.6 37.9 38.2 38.4 38.5 38.8 39.3 39.4 39.5 39.9 40.3 40.4 40.7 41.0 -99.0 -99.0 +25 MA TMAX 3 41.2 41.4 41.7 42.2 42.4 42.6 43.2 43.3 43.7 44.1 44.3 44.6 45.1 45.3 45.6 46.0 46.3 46.4 47.0 47.2 47.7 48.0 48.2 48.7 49.0 49.2 49.7 50.0 50.3 50.8 51.1 +25 MA TMAX 4 51.3 51.7 52.1 52.5 52.8 53.2 53.5 53.8 54.2 54.6 54.9 55.4 55.5 56.0 56.5 56.8 57.3 57.6 57.8 58.4 58.8 58.9 59.5 59.9 60.3 60.7 61.1 61.4 61.9 62.3 -99.0 +25 MA TMAX 5 62.7 63.0 63.5 63.9 64.3 64.7 64.9 65.3 65.8 66.2 66.4 66.8 67.2 67.6 67.9 68.3 68.6 68.9 69.3 69.6 69.8 70.0 70.5 70.8 71.0 71.4 71.8 71.9 72.0 72.6 72.8 +25 MA TMAX 6 73.0 73.2 73.7 73.8 74.0 74.3 74.7 74.9 75.2 75.3 75.4 75.9 76.1 76.3 76.5 77.0 77.1 77.2 77.5 77.8 78.1 78.2 78.4 78.6 78.9 79.1 79.4 79.6 79.9 80.0 -99.0 +25 MA TMAX 7 80.2 80.4 80.8 80.8 80.9 81.0 81.3 81.5 81.8 81.8 81.9 81.9 81.9 82.0 82.1 82.2 82.3 82.4 82.4 82.5 82.6 82.6 82.8 82.6 82.6 82.6 82.5 82.5 82.3 82.1 82.1 +25 MA TMAX 8 82.1 82.1 81.9 81.9 81.9 81.8 81.6 81.4 81.3 81.2 81.1 81.0 80.8 80.5 80.3 80.2 80.1 80.0 79.7 79.5 79.2 79.1 78.8 78.6 78.4 78.2 77.8 77.7 77.4 77.2 76.8 +25 MA TMAX 9 76.6 76.4 75.9 75.8 75.5 75.3 74.9 74.6 74.5 73.9 73.7 73.5 73.0 72.8 72.5 72.1 71.8 71.5 71.2 70.9 70.5 70.1 69.8 69.5 69.0 68.9 68.3 68.0 67.7 67.2 -99.0 +25 MA TMAX 10 67.0 66.6 66.1 66.0 65.5 65.0 64.9 64.4 64.0 63.7 63.1 63.0 62.6 62.1 62.0 61.5 61.0 60.9 60.5 60.0 59.8 59.5 59.0 58.8 58.5 58.0 57.6 57.2 57.0 56.6 56.2 +25 MA TMAX 11 56.0 55.6 55.2 55.0 54.6 54.1 53.7 53.6 53.1 52.7 52.5 51.9 51.7 51.2 50.9 50.6 50.1 49.7 49.3 48.9 48.7 48.2 47.8 47.4 47.0 46.7 46.3 45.9 45.4 45.0 -99.0 +25 MA TMAX 12 44.7 44.3 43.9 43.4 43.1 42.8 42.4 42.0 41.5 41.4 41.0 40.6 40.4 40.2 39.9 39.4 39.3 39.1 38.7 38.4 38.3 38.1 37.7 37.4 37.4 37.2 37.1 37.0 36.5 36.4 36.3 +25 MA TMIN 1 18.4 18.2 18.1 18.1 18.0 17.6 17.3 17.2 17.1 17.0 16.9 16.9 16.9 16.8 16.6 16.5 16.5 16.4 16.4 16.2 16.2 16.1 16.2 16.2 16.3 16.3 16.3 16.3 16.7 16.7 16.7 +25 MA TMIN 2 16.7 16.9 16.9 16.9 17.2 17.3 17.5 17.6 17.8 17.8 18.0 18.2 18.5 18.6 18.8 18.9 19.0 19.5 19.7 19.9 20.2 20.6 20.7 20.9 21.3 21.7 21.9 22.2 22.4 -99.0 -99.0 +25 MA TMIN 3 22.6 22.7 23.3 23.5 23.7 24.2 24.5 24.6 24.9 25.4 25.6 25.8 26.3 26.6 26.7 27.2 27.6 27.7 28.2 28.5 28.6 28.8 29.4 29.6 29.7 30.3 30.5 30.7 31.1 31.4 31.6 +25 MA TMIN 4 31.9 32.3 32.6 32.8 33.3 33.5 33.6 33.9 34.4 34.6 34.9 35.3 35.6 35.9 36.3 36.6 36.8 37.3 37.5 37.8 38.1 38.5 38.7 39.1 39.4 39.6 40.1 40.5 40.7 41.3 -99.0 +25 MA TMIN 5 41.5 41.8 42.3 42.5 42.8 43.4 43.5 43.8 44.4 44.5 44.8 45.4 45.5 45.8 46.4 46.5 46.8 47.1 47.5 47.7 48.1 48.5 48.7 49.1 49.5 49.6 50.0 50.4 50.5 50.9 51.2 +25 MA TMIN 6 51.5 51.8 52.2 52.5 52.7 53.0 53.5 53.6 53.8 54.2 54.5 54.7 54.9 55.3 55.6 55.7 56.0 56.3 56.6 56.8 56.9 57.3 57.5 57.7 57.9 58.3 58.6 58.7 58.9 59.2 -99.0 +25 MA TMIN 7 59.4 59.7 59.8 59.9 60.1 60.2 60.4 60.6 60.9 61.0 61.1 61.2 61.2 61.4 61.6 61.6 61.7 61.7 61.8 61.9 61.9 62.0 62.1 62.1 62.1 62.1 62.2 62.1 62.1 62.0 61.8 +25 MA TMIN 8 61.9 61.8 61.8 61.8 61.6 61.6 61.3 61.3 61.3 61.2 61.1 60.9 60.8 60.6 60.3 60.3 60.2 60.0 59.7 59.5 59.3 59.2 59.0 58.8 58.3 58.2 58.1 57.6 57.4 57.2 57.0 +25 MA TMIN 9 56.5 56.3 56.0 55.7 55.4 55.2 54.8 54.4 54.2 53.8 53.4 53.2 52.7 52.4 52.3 51.7 51.4 51.0 50.7 50.3 49.8 49.6 49.0 48.7 48.5 47.9 47.6 47.2 46.7 46.4 -99.0 +25 MA TMIN 10 45.9 45.5 45.1 44.7 44.4 44.0 43.6 43.1 42.8 42.5 42.1 41.8 41.5 41.1 40.9 40.6 40.1 40.0 39.7 39.5 39.1 38.8 38.6 38.2 38.1 37.9 37.7 37.5 37.2 37.0 36.7 +25 MA TMIN 11 36.6 36.6 36.1 36.1 35.7 35.6 35.5 35.1 34.9 34.6 34.5 34.0 33.8 33.6 33.3 33.0 32.7 32.4 32.0 31.8 31.5 31.0 30.7 30.5 30.2 29.7 29.3 28.9 28.5 28.2 -99.0 +25 MA TMIN 12 27.8 27.4 27.1 26.7 26.2 26.1 25.5 25.2 24.9 24.3 24.2 24.1 23.4 23.2 23.1 22.6 22.2 22.1 21.7 21.3 21.2 21.1 20.6 20.3 20.1 20.1 19.5 19.3 19.2 19.1 18.7 +25 MA TAVG 1 27.5 27.1 26.9 26.8 26.7 26.5 26.5 26.4 26.3 26.1 26.0 25.9 25.9 25.7 25.7 25.7 25.6 25.6 25.5 25.5 25.5 25.5 25.4 25.6 25.6 25.6 25.7 25.7 25.8 26.1 26.1 +25 MA TAVG 2 26.2 26.2 26.3 26.4 26.5 26.6 26.6 27.0 27.1 27.2 27.3 27.5 27.9 28.0 28.1 28.3 28.6 28.9 29.1 29.2 29.4 29.9 30.0 30.2 30.8 31.0 31.2 31.3 31.6 -99.0 -99.0 +25 MA TAVG 3 31.9 32.1 32.6 32.8 33.1 33.3 33.7 34.1 34.3 34.7 35.0 35.2 35.7 36.0 36.2 36.7 37.0 37.1 37.6 37.8 38.1 38.6 38.8 39.0 39.6 39.8 40.0 40.4 40.8 41.0 41.3 +25 MA TAVG 4 41.8 42.0 42.3 42.7 43.0 43.3 43.7 44.0 44.4 44.7 44.9 45.4 45.6 45.9 46.4 46.6 46.9 47.4 47.7 48.0 48.5 48.8 49.1 49.4 49.9 50.4 50.4 51.0 51.4 51.8 -99.0 +25 MA TAVG 5 52.2 52.4 52.9 53.2 53.5 53.9 54.3 54.6 55.0 55.4 55.6 56.0 56.4 56.8 57.0 57.5 57.7 58.0 58.4 58.7 59.0 59.4 59.6 60.0 60.4 60.6 60.9 61.0 61.4 61.8 62.0 +25 MA TAVG 6 62.2 62.6 62.9 63.1 63.4 63.7 64.0 64.1 64.6 64.8 65.1 65.2 65.6 65.8 66.1 66.2 66.6 66.8 67.1 67.2 67.5 67.8 68.1 68.2 68.4 68.7 68.9 69.2 69.4 69.5 -99.0 +25 MA TAVG 7 69.8 70.0 70.2 70.4 70.5 70.8 70.9 71.0 71.2 71.4 71.5 71.8 71.8 71.8 71.9 71.9 72.0 72.1 72.1 72.2 72.3 72.3 72.4 72.5 72.5 72.3 72.3 72.2 72.1 72.1 72.0 +25 MA TAVG 8 72.1 72.0 72.0 72.0 71.9 71.8 71.4 71.3 71.2 71.1 71.0 71.0 70.9 70.5 70.4 70.2 70.0 70.0 69.9 69.4 69.2 69.1 69.0 68.7 68.4 68.2 68.0 67.7 67.4 67.2 66.7 +25 MA TAVG 9 66.6 66.4 66.1 65.7 65.5 65.2 64.8 64.6 64.3 63.9 63.6 63.3 62.9 62.7 62.4 61.9 61.7 61.0 60.9 60.6 60.0 59.9 59.6 59.0 58.8 58.5 57.9 57.7 57.2 56.9 -99.0 +25 MA TAVG 10 56.5 55.9 55.7 55.2 54.9 54.6 54.1 53.8 53.6 53.0 52.8 52.5 52.0 51.8 51.3 50.9 50.8 50.6 50.0 49.8 49.6 49.1 48.8 48.6 48.2 47.8 47.8 47.6 47.0 46.8 46.7 +25 MA TAVG 11 46.2 45.9 45.8 45.6 45.0 44.8 44.8 44.3 44.0 43.8 43.4 43.0 42.8 42.6 42.0 41.8 41.4 41.0 40.8 40.4 40.0 39.8 39.4 39.0 38.7 38.1 37.9 37.4 37.0 36.8 -99.0 +25 MA TAVG 12 36.1 35.9 35.6 35.1 34.8 34.5 34.0 33.6 33.2 32.9 32.6 32.5 31.9 31.6 31.5 31.1 30.8 30.5 30.2 29.9 29.7 29.5 29.2 28.9 28.7 28.5 28.5 28.1 27.8 27.7 27.5 +25 MA RVP 1 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 +25 MA RVP 2 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 -99.0 -99.0 +25 MA RVP 3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 +25 MA RVP 4 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 -99.0 +25 MA RVP 5 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +25 MA RVP 6 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +25 MA RVP 7 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +25 MA RVP 8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +25 MA RVP 9 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +25 MA RVP 10 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 +25 MA RVP 11 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 10.3 -99.0 +25 MA RVP 12 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 +26 MI TMAX 1 31.0 30.9 30.7 30.6 30.5 30.3 30.2 30.2 30.1 30.1 30.1 30.0 29.9 29.8 29.8 29.7 29.6 29.6 29.8 29.8 29.8 29.9 29.9 30.0 30.0 30.1 30.1 30.2 30.2 30.3 30.6 +26 MI TMAX 2 30.7 30.8 30.9 31.0 31.1 31.2 31.7 31.8 31.9 32.1 32.4 32.7 32.8 33.0 33.3 33.7 33.8 34.1 34.6 34.8 35.0 35.3 35.8 36.0 36.4 36.8 37.1 37.6 37.7 -99.0 -99.0 +26 MI TMAX 3 37.9 38.2 38.8 39.1 39.4 39.9 40.3 40.7 41.1 41.5 41.9 42.3 42.8 43.1 43.5 43.9 44.3 44.8 45.1 45.5 46.0 46.4 46.9 47.2 47.5 48.0 48.4 48.9 49.3 49.7 50.0 +26 MI TMAX 4 50.4 51.0 51.3 51.9 52.2 52.5 53.1 53.4 54.0 54.3 54.9 55.2 55.6 56.1 56.4 57.0 57.3 57.9 58.2 58.9 59.2 59.5 60.0 60.4 61.0 61.3 61.9 62.2 62.8 63.2 -99.0 +26 MI TMAX 5 63.5 64.2 64.5 65.0 65.4 65.9 66.3 66.6 67.1 67.4 67.9 68.3 68.6 69.0 69.4 69.6 70.1 70.5 70.9 71.2 71.5 71.9 72.2 72.5 72.9 73.2 73.5 73.9 74.1 74.4 74.6 +26 MI TMAX 6 75.0 75.2 75.5 75.9 76.1 76.4 76.6 77.0 77.1 77.3 77.6 77.9 78.0 78.2 78.5 78.8 79.0 79.2 79.3 79.6 79.9 80.0 80.1 80.3 80.5 80.8 80.9 81.1 81.2 81.4 -99.0 +26 MI TMAX 7 81.4 81.7 82.0 82.0 82.2 82.2 82.4 82.4 82.6 82.7 82.7 82.7 82.8 82.8 83.0 83.0 83.1 83.2 83.2 83.2 83.2 83.1 83.1 83.1 83.0 82.9 82.8 82.8 82.8 82.7 82.6 +26 MI TMAX 8 82.7 82.6 82.5 82.3 82.3 82.0 82.0 81.8 81.7 81.6 81.5 81.4 81.2 81.0 80.8 80.7 80.5 80.4 80.2 80.1 79.7 79.6 79.4 79.3 79.1 78.7 78.5 78.3 78.2 78.0 77.5 +26 MI TMAX 9 77.3 77.2 77.0 76.5 76.3 76.1 75.9 75.4 75.2 75.0 74.5 74.2 74.0 73.6 73.2 73.0 72.5 72.2 72.1 71.5 71.2 70.8 70.3 70.1 69.6 69.2 68.8 68.4 68.1 67.6 -99.0 +26 MI TMAX 10 67.2 66.7 66.3 65.8 65.4 65.0 64.6 64.3 63.7 63.4 62.7 62.4 61.9 61.6 61.0 60.7 60.3 59.7 59.4 58.8 58.5 57.8 57.6 57.0 56.6 56.2 55.6 55.3 54.7 54.4 53.8 +26 MI TMAX 11 53.4 52.8 52.5 52.0 51.5 51.2 50.6 50.2 49.6 49.3 48.7 48.3 47.7 47.4 47.1 46.5 46.2 45.6 45.3 44.6 44.3 44.0 43.4 43.0 42.5 42.2 41.6 41.3 40.7 40.4 -99.0 +26 MI TMAX 12 40.0 39.5 39.2 38.7 38.4 38.0 37.6 37.3 36.8 36.5 36.2 35.8 35.5 35.2 34.8 34.6 34.3 33.9 33.7 33.5 33.3 32.9 32.7 32.6 32.3 32.0 31.8 31.7 31.6 31.5 31.1 +26 MI TMIN 1 16.8 16.6 16.3 16.2 16.1 15.9 15.7 15.6 15.3 15.2 15.1 15.1 15.0 15.0 14.9 14.8 14.8 14.6 14.6 14.4 14.3 14.3 14.2 14.2 14.2 14.2 14.5 14.5 14.6 14.7 14.7 +26 MI TMIN 2 14.7 14.8 14.9 14.9 15.0 15.0 15.3 15.5 15.6 15.7 15.8 15.9 16.2 16.4 16.6 16.7 17.1 17.2 17.5 17.7 17.9 18.2 18.5 18.7 19.1 19.3 19.6 20.1 20.2 -99.0 -99.0 +26 MI TMIN 3 20.3 20.5 21.1 21.2 21.5 22.0 22.3 22.5 23.1 23.2 23.5 24.1 24.2 24.5 24.9 25.2 25.5 25.8 26.2 26.5 26.8 27.2 27.5 27.8 28.2 28.5 28.7 29.2 29.5 29.7 30.2 +26 MI TMIN 4 30.5 30.8 31.2 31.5 31.8 32.2 32.5 32.9 33.3 33.5 33.9 34.1 34.5 34.9 35.4 35.5 35.9 36.4 36.5 37.0 37.4 37.8 38.0 38.5 38.8 39.1 39.5 39.9 40.1 40.7 -99.0 +26 MI TMIN 5 40.9 41.2 41.8 42.0 42.4 42.8 43.1 43.7 43.9 44.2 44.7 44.9 45.3 45.7 45.9 46.3 46.7 47.0 47.3 47.7 48.0 48.3 48.7 49.0 49.3 49.8 50.0 50.3 50.7 51.0 51.5 +26 MI TMIN 6 51.7 51.9 52.5 52.6 52.9 53.1 53.6 53.8 54.0 54.5 54.7 54.9 55.1 55.5 55.7 55.9 56.2 56.5 56.7 56.8 56.9 57.3 57.6 57.7 57.9 57.9 58.2 58.6 58.7 58.8 -99.0 +26 MI TMIN 7 58.9 59.0 59.3 59.4 59.7 59.8 59.9 59.9 60.0 60.0 60.3 60.3 60.4 60.4 60.5 60.6 60.6 60.7 60.7 60.8 60.9 60.9 60.9 61.0 61.0 60.9 60.8 60.7 60.7 60.7 60.7 +26 MI TMIN 8 60.7 60.7 60.6 60.6 60.4 60.4 60.3 60.2 59.9 59.8 59.7 59.7 59.6 59.5 59.3 59.0 58.9 58.7 58.7 58.5 58.3 57.9 57.8 57.7 57.5 57.3 56.8 56.7 56.6 56.1 55.9 +26 MI TMIN 9 55.7 55.4 55.0 54.8 54.6 54.1 53.9 53.7 53.4 53.0 52.8 52.5 52.1 51.8 51.3 51.1 50.8 50.3 50.1 49.8 49.3 49.1 48.5 48.2 48.0 47.5 47.1 46.7 46.3 46.0 -99.0 +26 MI TMIN 10 45.6 45.2 44.7 44.4 43.8 43.7 43.3 42.8 42.6 42.2 41.8 41.5 41.0 40.8 40.5 40.1 39.8 39.6 39.1 38.8 38.6 38.3 37.9 37.7 37.5 37.2 36.8 36.6 36.3 36.1 35.7 +26 MI TMIN 11 35.5 35.3 35.0 34.6 34.4 34.2 34.0 33.6 33.3 33.0 32.8 32.4 32.1 31.9 31.4 31.2 31.0 30.7 30.2 29.9 29.6 29.2 28.8 28.6 28.1 27.8 27.4 27.0 26.7 26.2 -99.0 +26 MI TMIN 12 25.8 25.7 25.1 24.8 24.6 24.0 23.7 23.4 22.9 22.7 22.4 21.9 21.8 21.6 21.1 20.8 20.6 20.2 19.9 19.7 19.3 19.2 18.8 18.7 18.3 18.2 17.8 17.7 17.3 17.2 17.0 +26 MI TAVG 1 24.0 23.8 23.6 23.5 23.2 23.1 23.0 22.9 22.8 22.8 22.6 22.6 22.5 22.5 22.3 22.3 22.1 22.1 22.0 22.0 22.0 22.0 22.1 22.1 22.2 22.2 22.2 22.5 22.5 22.6 22.6 +26 MI TAVG 2 22.7 22.8 22.8 23.1 23.1 23.2 23.5 23.6 23.7 24.0 24.1 24.4 24.5 24.7 25.0 25.1 25.4 25.7 26.0 26.4 26.5 26.8 27.1 27.5 27.7 28.0 28.4 28.7 28.9 -99.0 -99.0 +26 MI TAVG 3 29.1 29.5 29.8 30.1 30.6 30.9 31.4 31.6 32.0 32.4 32.7 33.0 33.5 33.9 34.1 34.6 34.9 35.4 35.7 36.0 36.5 36.7 37.1 37.6 37.9 38.2 38.6 39.0 39.5 39.8 40.0 +26 MI TAVG 4 40.6 40.9 41.1 41.7 42.0 42.5 42.9 43.1 43.6 44.0 44.3 44.8 45.1 45.5 45.9 46.2 46.8 47.1 47.5 47.9 48.2 48.8 49.1 49.4 49.9 50.2 50.8 51.1 51.4 51.9 -99.0 +26 MI TAVG 5 52.3 52.8 53.1 53.4 53.9 54.2 54.7 55.1 55.4 55.9 56.2 56.5 57.0 57.3 57.7 58.1 58.3 58.9 59.1 59.4 59.9 60.2 60.4 60.9 61.1 61.4 61.9 62.1 62.4 62.7 63.0 +26 MI TAVG 6 63.3 63.7 64.0 64.2 64.4 64.9 65.0 65.3 65.7 65.9 66.1 66.3 66.7 66.9 67.1 67.3 67.7 67.8 68.0 68.2 68.6 68.7 68.8 69.0 69.2 69.6 69.7 69.8 69.9 70.1 -99.0 +26 MI TAVG 7 70.2 70.5 70.6 70.8 70.9 71.1 71.1 71.2 71.4 71.5 71.5 71.6 71.6 71.6 71.7 71.8 71.9 71.9 71.9 72.1 72.1 72.2 72.1 72.0 71.9 71.9 71.8 71.8 71.8 71.7 71.7 +26 MI TAVG 8 71.7 71.7 71.5 71.5 71.5 71.3 71.0 70.9 70.8 70.8 70.7 70.6 70.4 70.3 70.2 69.8 69.8 69.6 69.4 69.3 68.9 68.8 68.6 68.5 68.3 68.0 67.7 67.5 67.3 67.2 66.7 +26 MI TAVG 9 66.5 66.4 66.1 65.7 65.5 65.3 64.8 64.6 64.4 63.9 63.6 63.4 63.1 62.6 62.5 62.0 61.6 61.4 60.9 60.6 60.4 59.9 59.6 59.2 58.8 58.5 58.0 57.6 57.2 56.7 -99.0 +26 MI TAVG 10 56.3 56.1 55.6 55.2 54.7 54.3 53.9 53.5 53.2 52.8 52.4 51.9 51.5 51.3 50.8 50.4 50.0 49.5 49.4 48.9 48.5 48.1 47.8 47.4 47.0 46.7 46.3 45.9 45.6 45.3 44.9 +26 MI TAVG 11 44.5 44.0 43.8 43.3 43.0 42.7 42.3 41.9 41.6 41.1 40.8 40.5 40.0 39.7 39.4 38.8 38.6 38.0 37.7 37.4 36.9 36.6 36.3 35.8 35.4 34.9 34.7 34.3 33.8 33.4 -99.0 +26 MI TAVG 12 32.9 32.5 32.3 31.8 31.5 30.9 30.7 30.4 29.9 29.6 29.4 28.9 28.6 28.5 28.0 27.6 27.5 27.1 26.8 26.6 26.5 26.1 25.7 25.5 25.5 25.2 24.9 24.7 24.5 24.2 24.1 +26 MI RVP 1 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 +26 MI RVP 2 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 -99.0 -99.0 +26 MI RVP 3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 +26 MI RVP 4 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 -99.0 +26 MI RVP 5 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +26 MI RVP 6 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +26 MI RVP 7 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +26 MI RVP 8 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +26 MI RVP 9 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +26 MI RVP 10 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 +26 MI RVP 11 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 -99.0 +26 MI RVP 12 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 +27 MN TMAX 1 20.8 20.7 20.5 20.4 20.4 20.3 20.2 20.0 20.0 19.9 19.9 19.8 19.8 19.9 20.0 20.1 20.1 20.4 20.6 20.6 20.7 20.7 20.9 21.2 21.4 21.7 21.8 22.0 22.3 22.6 22.8 +27 MN TMAX 2 23.2 23.5 23.8 24.1 24.5 24.8 25.1 25.4 25.7 26.1 26.4 26.7 27.0 27.4 27.7 28.1 28.5 28.8 29.2 29.6 29.9 30.2 30.6 31.0 31.3 31.6 32.1 32.4 32.6 -99.0 -99.0 +27 MN TMAX 3 32.8 33.2 33.6 34.0 34.4 34.8 35.3 35.7 36.1 36.6 37.0 37.5 38.0 38.3 38.9 39.3 39.9 40.3 40.9 41.3 41.9 42.4 43.1 43.7 44.1 44.7 45.2 45.9 46.4 47.0 47.7 +27 MN TMAX 4 48.3 48.8 49.3 50.0 50.7 51.2 51.8 52.3 52.9 53.4 54.0 54.5 55.0 55.6 56.2 56.8 57.2 57.8 58.2 58.7 59.2 59.8 60.3 60.8 61.2 61.8 62.1 62.6 63.1 63.6 -99.0 +27 MN TMAX 5 63.9 64.5 64.9 65.3 65.7 66.1 66.7 67.0 67.5 67.8 68.1 68.6 68.9 69.3 69.7 70.0 70.4 70.8 71.0 71.5 71.8 72.0 72.4 72.8 73.0 73.2 73.7 73.9 74.1 74.6 74.8 +27 MN TMAX 6 74.9 75.2 75.6 75.7 76.0 76.2 76.3 76.7 77.0 77.2 77.3 77.5 77.9 78.0 78.3 78.3 78.6 78.9 79.1 79.2 79.3 79.6 79.9 80.0 80.1 80.2 80.3 80.7 80.8 81.0 -99.0 +27 MN TMAX 7 81.1 81.3 81.3 81.5 81.7 81.8 81.9 82.0 82.0 82.0 82.1 82.2 82.2 82.2 82.5 82.5 82.7 82.7 82.7 82.7 82.8 82.8 82.7 82.6 82.6 82.6 82.3 82.3 82.3 82.2 82.1 +27 MN TMAX 8 82.1 82.1 82.1 81.9 81.9 81.7 81.5 81.5 81.3 81.2 81.0 80.9 80.7 80.5 80.3 80.1 79.8 79.7 79.5 79.2 78.9 78.7 78.5 78.1 77.8 77.6 77.3 76.9 76.6 76.4 76.0 +27 MN TMAX 9 75.6 75.3 75.1 74.7 74.3 73.9 73.6 73.3 72.9 72.6 72.3 71.9 71.7 71.2 70.9 70.6 70.2 69.9 69.6 69.2 68.9 68.5 68.1 67.9 67.5 67.1 66.8 66.4 66.1 65.8 -99.0 +27 MN TMAX 10 65.5 65.1 64.6 64.2 64.0 63.5 63.1 62.7 62.1 61.8 61.2 60.8 60.3 59.8 59.1 58.7 58.1 57.7 57.0 56.6 55.9 55.1 54.7 53.9 53.4 52.7 51.9 51.4 50.8 49.9 49.2 +27 MN TMAX 11 48.5 47.8 47.0 46.3 45.6 44.9 44.3 43.4 42.9 42.3 41.5 41.0 40.3 39.7 39.1 38.5 37.9 37.3 36.8 36.2 35.6 35.2 34.6 34.0 33.5 32.9 32.6 32.0 31.5 31.0 -99.0 +27 MN TMAX 12 30.5 30.2 29.6 29.2 28.8 28.5 28.0 27.6 27.2 26.7 26.5 26.1 25.7 25.5 25.0 24.7 24.5 24.2 23.8 23.6 23.4 23.0 22.7 22.5 22.4 22.0 21.8 21.5 21.4 21.4 21.0 +27 MN TMIN 1 2.4 2.2 2.1 1.8 1.5 1.3 1.2 1.1 1.0 0.8 0.8 0.5 0.5 0.4 0.4 0.3 0.6 0.7 0.8 0.8 1.0 1.1 1.2 1.3 1.6 1.8 2.0 2.2 2.5 2.8 3.1 +27 MN TMIN 2 3.4 3.8 4.0 4.4 4.7 5.1 5.5 5.7 6.2 6.5 6.9 7.3 7.6 8.1 8.4 8.8 9.2 9.7 10.0 10.4 10.8 11.3 11.7 12.0 12.6 12.9 13.4 13.8 14.0 -99.0 -99.0 +27 MN TMIN 3 14.1 14.7 15.1 15.6 16.1 16.4 17.0 17.3 17.8 18.2 18.7 19.1 19.6 19.9 20.3 20.8 21.3 21.7 22.2 22.5 23.0 23.4 23.8 24.3 24.6 25.2 25.5 25.9 26.4 26.7 27.4 +27 MN TMIN 4 27.6 28.2 28.5 28.8 29.4 29.7 30.3 30.6 30.9 31.5 31.8 32.4 32.7 33.2 33.6 33.9 34.5 34.9 35.4 35.7 36.2 36.6 37.0 37.5 37.9 38.4 38.7 39.0 39.7 40.0 -99.0 +27 MN TMIN 5 40.5 40.9 41.4 41.8 42.1 42.7 43.0 43.5 43.8 44.1 44.6 45.0 45.5 45.8 46.1 46.5 46.9 47.1 47.6 47.9 48.2 48.7 49.0 49.2 49.7 50.1 50.2 50.7 51.0 51.2 51.7 +27 MN TMIN 6 51.9 52.1 52.5 52.9 53.1 53.3 53.7 53.8 54.2 54.4 54.8 54.9 55.2 55.5 55.8 56.0 56.1 56.5 56.7 56.9 57.0 57.2 57.5 57.8 57.9 58.1 58.3 58.4 58.7 58.9 -99.0 +27 MN TMIN 7 58.9 59.3 59.4 59.5 59.6 59.7 59.9 60.0 60.3 60.4 60.4 60.4 60.4 60.5 60.5 60.5 60.6 60.7 60.8 61.0 61.0 61.0 61.0 61.1 61.0 61.0 61.0 60.9 60.7 60.6 60.6 +27 MN TMIN 8 60.6 60.6 60.5 60.5 60.4 60.2 60.2 60.0 59.9 59.7 59.5 59.4 59.2 59.0 58.7 58.5 58.5 58.2 57.9 57.7 57.4 57.2 56.8 56.5 56.4 56.1 55.6 55.4 55.0 54.7 54.3 +27 MN TMIN 9 53.9 53.5 53.2 52.9 52.5 52.1 51.8 51.4 50.9 50.7 50.3 49.9 49.6 49.1 48.8 48.5 48.1 47.8 47.2 47.0 46.7 46.2 45.9 45.7 45.2 44.8 44.4 44.1 43.8 43.4 -99.0 +27 MN TMIN 10 42.9 42.7 42.2 41.9 41.5 41.1 40.8 40.3 40.0 39.7 39.2 38.8 38.3 38.0 37.5 37.0 36.8 36.2 35.9 35.5 35.0 34.6 34.1 33.8 33.2 32.9 32.3 31.9 31.5 30.9 30.5 +27 MN TMIN 11 30.0 29.5 29.0 28.5 28.1 27.5 27.2 26.5 26.2 25.5 25.2 24.5 24.2 23.6 23.2 22.7 22.1 21.7 21.1 20.7 20.0 19.7 19.0 18.6 18.1 17.6 17.0 16.6 15.9 15.5 -99.0 +27 MN TMIN 12 14.8 14.4 13.8 13.4 12.9 12.4 11.9 11.4 11.1 10.5 10.1 9.7 9.2 8.8 8.3 8.0 7.6 7.1 6.9 6.4 6.0 5.7 5.3 5.0 4.5 4.3 4.0 3.5 3.3 3.0 2.8 +27 MN TAVG 1 11.8 11.6 11.1 11.0 11.0 10.9 10.8 10.6 10.6 10.3 10.2 10.2 10.2 10.2 10.2 10.2 10.3 10.5 10.7 10.8 10.9 11.0 11.1 11.2 11.5 11.8 11.9 12.1 12.3 12.8 13.1 +27 MN TAVG 2 13.2 13.7 14.0 14.2 14.6 14.9 15.2 15.7 15.9 16.2 16.7 17.0 17.5 17.8 18.1 18.6 18.9 19.2 19.7 19.9 20.4 20.8 21.0 21.7 21.9 22.2 22.8 23.1 23.4 -99.0 -99.0 +27 MN TAVG 3 23.7 24.0 24.3 24.9 25.2 25.7 26.1 26.5 27.1 27.3 27.9 28.2 28.8 29.2 29.6 30.2 30.6 31.1 31.6 32.0 32.5 32.9 33.5 33.9 34.4 34.9 35.4 35.9 36.4 36.9 37.4 +27 MN TAVG 4 38.0 38.4 39.0 39.5 40.0 40.5 41.1 41.5 42.0 42.5 43.0 43.4 43.9 44.4 44.9 45.3 45.8 46.3 46.8 47.3 47.8 48.2 48.7 49.2 49.6 50.0 50.5 50.9 51.3 51.9 -99.0 +27 MN TAVG 5 52.3 52.8 53.1 53.7 54.0 54.4 54.8 55.1 55.7 56.0 56.5 56.9 57.1 57.6 58.0 58.2 58.6 59.0 59.4 59.8 60.0 60.4 60.7 61.0 61.4 61.7 62.0 62.2 62.5 62.9 63.2 +27 MN TAVG 6 63.5 63.7 64.1 64.3 64.6 64.8 65.0 65.4 65.7 65.8 66.0 66.3 66.6 66.8 66.9 67.2 67.5 67.6 67.8 68.0 68.3 68.5 68.7 68.8 69.0 69.2 69.5 69.6 69.7 69.9 -99.0 +27 MN TAVG 7 70.1 70.2 70.3 70.5 70.7 70.8 71.0 71.1 71.1 71.2 71.2 71.3 71.3 71.3 71.4 71.5 71.6 71.7 71.8 71.9 72.0 72.0 71.9 71.9 71.9 71.8 71.7 71.5 71.5 71.4 71.3 +27 MN TAVG 8 71.4 71.3 71.3 71.2 71.1 71.0 71.0 70.7 70.5 70.4 70.3 70.1 70.0 69.8 69.6 69.3 69.1 69.1 68.7 68.5 68.2 67.9 67.7 67.4 67.2 66.9 66.5 66.2 65.9 65.5 65.3 +27 MN TAVG 9 64.8 64.4 64.3 63.8 63.4 63.0 62.7 62.3 62.0 61.7 61.3 60.9 60.7 60.3 59.9 59.5 59.1 58.8 58.5 58.1 57.8 57.5 57.0 56.7 56.5 56.0 55.7 55.3 55.0 54.6 -99.0 +27 MN TAVG 10 54.2 53.9 53.6 53.2 52.7 52.3 52.0 51.6 51.1 50.7 50.2 49.7 49.4 48.9 48.4 48.0 47.6 47.1 46.6 46.0 45.5 44.9 44.4 43.8 43.2 42.7 42.2 41.6 41.0 40.5 39.8 +27 MN TAVG 11 39.2 38.6 38.0 37.5 36.8 36.2 35.8 35.0 34.6 33.9 33.5 32.8 32.3 31.7 31.1 30.6 30.1 29.5 29.0 28.5 27.8 27.4 26.7 26.4 25.6 25.3 24.8 24.3 23.8 23.3 -99.0 +27 MN TAVG 12 22.8 22.3 21.8 21.3 20.8 20.4 20.0 19.5 19.1 18.7 18.3 18.0 17.6 17.1 16.8 16.3 16.1 15.7 15.2 15.0 14.7 14.2 14.0 13.8 13.5 13.1 13.0 12.7 12.3 12.0 12.0 +27 MN RVP 1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 +27 MN RVP 2 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 -99.0 -99.0 +27 MN RVP 3 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 +27 MN RVP 4 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 -99.0 +27 MN RVP 5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 +27 MN RVP 6 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 -99.0 +27 MN RVP 7 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 +27 MN RVP 8 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 +27 MN RVP 9 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 -99.0 +27 MN RVP 10 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 9.5 +27 MN RVP 11 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 12.1 -99.0 +27 MN RVP 12 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 14.1 +28 MS TMAX 1 55.0 55.0 54.9 54.8 54.7 54.6 54.5 54.4 54.3 54.3 54.2 54.2 54.2 54.3 54.4 54.5 54.5 54.6 54.8 54.8 54.9 55.0 55.0 55.1 55.3 55.4 55.6 55.8 56.0 56.1 56.4 +28 MS TMAX 2 56.6 56.9 57.0 57.2 57.4 57.7 57.9 58.2 58.4 58.6 58.9 59.1 59.4 59.6 59.8 60.1 60.4 60.7 60.9 61.2 61.5 61.7 62.0 62.3 62.5 62.9 63.2 63.4 63.6 -99.0 -99.0 +28 MS TMAX 3 63.7 64.1 64.3 64.5 64.9 65.2 65.4 65.8 65.9 66.2 66.5 66.9 67.0 67.3 67.6 67.8 68.2 68.4 68.6 68.9 69.1 69.4 69.6 69.8 70.1 70.4 70.6 70.8 71.0 71.3 71.6 +28 MS TMAX 4 71.7 72.0 72.2 72.4 72.7 72.9 73.2 73.3 73.7 73.8 74.0 74.3 74.5 74.8 75.0 75.2 75.4 75.7 75.9 76.1 76.4 76.6 76.9 77.0 77.3 77.5 77.8 78.0 78.2 78.4 -99.0 +28 MS TMAX 5 78.6 79.0 79.2 79.4 79.6 79.9 80.1 80.3 80.5 80.8 81.1 81.3 81.5 81.7 82.0 82.2 82.4 82.6 82.9 83.2 83.4 83.7 83.8 84.1 84.3 84.5 84.8 85.0 85.2 85.5 85.7 +28 MS TMAX 6 86.0 86.2 86.5 86.6 86.8 87.1 87.4 87.6 87.7 87.8 88.0 88.3 88.5 88.7 88.8 88.8 88.9 89.2 89.4 89.6 89.7 89.7 89.8 89.9 90.0 90.1 90.2 90.4 90.4 90.6 -99.0 +28 MS TMAX 7 90.6 90.7 90.7 90.9 90.9 91.0 91.1 91.1 91.1 91.2 91.2 91.2 91.3 91.3 91.3 91.4 91.4 91.4 91.4 91.6 91.6 91.6 91.6 91.7 91.8 91.8 91.8 91.9 91.9 91.9 91.8 +28 MS TMAX 8 91.9 91.9 91.9 91.9 91.8 91.8 91.7 91.6 91.6 91.5 91.5 91.4 91.3 91.3 91.3 91.2 91.1 91.1 91.0 90.9 90.8 90.7 90.5 90.4 90.3 90.2 90.0 89.9 89.8 89.7 89.4 +28 MS TMAX 9 89.3 89.2 88.9 88.8 88.6 88.4 88.3 87.9 87.8 87.6 87.4 87.2 87.0 86.8 86.5 86.2 86.0 85.9 85.6 85.2 85.0 84.9 84.5 84.1 84.0 83.7 83.3 83.0 82.8 82.4 -99.0 +28 MS TMAX 10 82.1 81.8 81.5 81.2 80.8 80.5 80.2 79.9 79.5 79.2 78.9 78.5 78.2 77.9 77.5 77.2 76.9 76.5 76.2 75.8 75.4 75.1 74.7 74.4 74.0 73.7 73.3 73.0 72.5 72.2 71.9 +28 MS TMAX 11 71.4 71.1 70.8 70.3 70.0 69.6 69.3 69.0 68.5 68.2 67.9 67.5 67.2 66.8 66.5 66.2 65.8 65.5 65.2 64.9 64.5 64.2 63.9 63.6 63.2 63.0 62.7 62.3 62.0 61.7 -99.0 +28 MS TMAX 12 61.5 61.1 60.9 60.6 60.3 60.1 59.7 59.5 59.3 59.1 58.8 58.6 58.3 58.1 57.9 57.6 57.4 57.2 57.1 56.9 56.7 56.6 56.3 56.1 56.0 55.8 55.7 55.6 55.3 55.2 55.1 +28 MS TMIN 1 34.6 34.6 34.4 34.4 34.4 34.3 34.3 34.1 34.0 34.0 33.9 33.9 33.8 33.8 33.8 33.9 34.0 34.0 34.1 34.2 34.2 34.3 34.3 34.4 34.4 34.5 34.5 34.5 34.6 34.7 34.8 +28 MS TMIN 2 35.0 35.1 35.3 35.4 35.5 35.6 35.8 35.9 36.2 36.3 36.4 36.6 36.8 37.1 37.3 37.4 37.7 37.9 38.2 38.4 38.6 38.9 39.1 39.4 39.8 40.0 40.3 40.5 40.7 -99.0 -99.0 +28 MS TMIN 3 40.9 41.1 41.4 41.8 42.0 42.3 42.6 42.8 43.1 43.3 43.6 43.9 44.2 44.3 44.6 44.9 45.1 45.3 45.5 45.7 46.0 46.3 46.4 46.6 46.8 47.1 47.3 47.4 47.6 47.7 48.0 +28 MS TMIN 4 48.2 48.4 48.5 48.6 48.9 49.2 49.4 49.5 49.7 50.0 50.2 50.5 50.6 50.9 51.2 51.5 51.7 51.9 52.3 52.4 52.8 53.1 53.4 53.6 54.0 54.3 54.5 54.9 55.2 55.5 -99.0 +28 MS TMIN 5 55.9 56.2 56.6 56.8 57.2 57.6 57.8 58.0 58.5 58.7 59.0 59.4 59.7 59.9 60.1 60.5 60.7 61.0 61.4 61.6 61.9 62.1 62.4 62.6 62.9 63.2 63.4 63.7 64.0 64.2 64.4 +28 MS TMIN 6 64.6 65.0 65.1 65.3 65.4 65.8 66.0 66.2 66.4 66.5 66.8 67.0 67.2 67.4 67.5 67.7 67.9 68.1 68.3 68.4 68.5 68.7 68.8 69.0 69.1 69.3 69.4 69.5 69.6 69.8 -99.0 +28 MS TMIN 7 69.8 69.9 70.1 70.4 70.5 70.5 70.6 70.6 70.6 70.6 70.7 70.7 70.8 70.8 70.9 71.0 71.0 71.0 71.1 71.2 71.2 71.2 71.2 71.1 71.1 71.1 71.0 71.0 70.9 70.8 70.8 +28 MS TMIN 8 70.9 70.8 70.8 70.7 70.6 70.5 70.4 70.3 70.3 70.3 70.2 70.1 70.0 69.9 69.8 69.7 69.6 69.5 69.4 69.3 69.3 69.1 69.0 68.9 68.8 68.6 68.5 68.3 68.2 68.1 68.0 +28 MS TMIN 9 67.9 67.6 67.5 67.3 67.1 66.9 66.7 66.4 66.2 66.0 65.8 65.4 65.2 65.0 64.5 64.2 64.0 63.6 63.2 62.9 62.4 62.1 61.6 61.3 60.7 60.4 59.8 59.4 58.9 58.5 -99.0 +28 MS TMIN 10 57.9 57.5 56.9 56.5 56.0 55.6 55.1 54.7 54.3 53.9 53.5 53.1 52.6 52.2 51.9 51.5 51.1 50.8 50.5 50.0 49.8 49.5 49.2 48.9 48.6 48.3 48.0 47.8 47.5 47.3 47.1 +28 MS TMIN 11 46.8 46.6 46.3 46.2 45.9 45.6 45.4 45.3 45.0 44.7 44.5 44.3 44.0 43.8 43.5 43.3 43.1 42.9 42.6 42.3 42.2 41.9 41.7 41.4 41.2 40.9 40.7 40.4 40.2 40.0 -99.0 +28 MS TMIN 12 39.7 39.5 39.2 39.0 38.8 38.6 38.3 38.1 37.9 37.7 37.5 37.3 37.1 37.0 36.8 36.6 36.4 36.3 36.1 36.0 35.9 35.7 35.5 35.4 35.3 35.2 35.0 34.9 34.8 34.8 34.6 +28 MS TAVG 1 44.8 44.8 44.7 44.6 44.5 44.5 44.4 44.3 44.3 44.1 44.0 44.0 44.0 44.0 44.1 44.2 44.3 44.3 44.4 44.5 44.6 44.6 44.7 44.8 44.8 44.9 45.0 45.1 45.3 45.5 45.6 +28 MS TAVG 2 45.8 45.9 46.1 46.3 46.5 46.6 46.9 47.1 47.3 47.5 47.7 47.9 48.1 48.4 48.5 48.9 49.1 49.3 49.5 49.8 50.1 50.3 50.6 50.9 51.2 51.4 51.6 52.1 52.2 -99.0 -99.0 +28 MS TAVG 3 52.3 52.5 52.9 53.2 53.4 53.7 54.1 54.3 54.6 54.8 55.1 55.3 55.6 55.9 56.1 56.3 56.7 56.9 57.1 57.3 57.6 57.9 58.1 58.3 58.5 58.8 58.9 59.2 59.4 59.6 59.7 +28 MS TAVG 4 60.0 60.1 60.4 60.6 60.8 61.0 61.2 61.4 61.8 61.9 62.1 62.3 62.6 62.9 63.1 63.3 63.6 63.9 64.1 64.3 64.6 64.9 65.1 65.3 65.6 66.0 66.2 66.5 66.8 67.0 -99.0 +28 MS TAVG 5 67.2 67.6 67.9 68.2 68.4 68.7 69.0 69.2 69.5 69.8 70.0 70.2 70.6 70.9 71.1 71.4 71.7 71.9 72.1 72.4 72.7 72.8 73.1 73.4 73.7 73.9 74.0 74.4 74.7 74.9 75.0 +28 MS TAVG 6 75.3 75.6 75.8 76.0 76.2 76.4 76.7 76.8 77.1 77.3 77.4 77.7 77.8 78.0 78.2 78.3 78.4 78.7 78.8 78.9 79.2 79.2 79.3 79.5 79.6 79.7 79.9 80.0 80.1 80.2 -99.0 +28 MS TAVG 7 80.2 80.3 80.5 80.6 80.7 80.7 80.7 80.8 80.8 80.9 80.9 80.9 81.1 81.1 81.1 81.2 81.2 81.2 81.4 81.4 81.4 81.5 81.5 81.5 81.5 81.5 81.5 81.5 81.5 81.4 81.4 +28 MS TAVG 8 81.5 81.4 81.4 81.3 81.2 81.2 81.1 81.1 81.1 80.9 80.8 80.7 80.7 80.6 80.5 80.5 80.4 80.3 80.2 80.1 80.0 79.9 79.8 79.6 79.5 79.4 79.3 79.2 79.1 78.8 78.7 +28 MS TAVG 9 78.5 78.4 78.3 78.1 77.9 77.7 77.5 77.3 77.1 76.8 76.6 76.3 76.1 75.8 75.5 75.3 75.0 74.7 74.4 74.1 73.8 73.4 73.1 72.8 72.4 72.0 71.6 71.2 70.9 70.5 -99.0 +28 MS TAVG 10 70.0 69.6 69.3 68.9 68.5 68.1 67.7 67.3 66.9 66.5 66.2 65.9 65.4 65.0 64.8 64.4 63.9 63.7 63.3 63.0 62.7 62.3 62.0 61.7 61.3 61.0 60.7 60.4 60.1 59.7 59.5 +28 MS TAVG 11 59.1 58.9 58.5 58.3 58.0 57.6 57.3 57.1 56.9 56.5 56.2 56.0 55.6 55.3 55.1 54.8 54.5 54.2 53.9 53.7 53.3 53.0 52.9 52.5 52.2 51.9 51.7 51.4 51.1 50.9 -99.0 +28 MS TAVG 12 50.6 50.3 50.1 49.8 49.6 49.3 49.1 48.8 48.6 48.4 48.2 48.0 47.7 47.5 47.4 47.2 47.0 46.8 46.6 46.5 46.3 46.1 45.9 45.8 45.7 45.5 45.4 45.2 45.1 45.0 44.9 +28 MS RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +28 MS RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +28 MS RVP 3 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +28 MS RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +28 MS RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +28 MS RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +28 MS RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +28 MS RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +28 MS RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +28 MS RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +28 MS RVP 11 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +28 MS RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +29 MO TMAX 1 38.5 38.4 38.3 38.2 38.1 38.0 37.8 37.8 37.6 37.6 37.5 37.5 37.5 37.5 37.6 37.7 37.8 37.9 38.0 38.2 38.3 38.4 38.4 38.5 38.8 39.1 39.3 39.4 39.6 40.0 40.3 +29 MO TMAX 2 40.5 40.7 41.1 41.4 41.6 42.0 42.2 42.5 42.9 43.2 43.5 43.8 44.2 44.4 44.8 45.1 45.4 45.9 46.2 46.4 46.9 47.3 47.7 48.1 48.4 48.7 49.1 49.5 49.7 -99.0 -99.0 +29 MO TMAX 3 49.9 50.3 50.7 51.0 51.5 51.8 52.3 52.7 53.0 53.5 53.7 54.1 54.5 54.9 55.4 55.7 56.0 56.5 56.8 57.2 57.6 57.9 58.2 58.7 59.1 59.4 59.8 60.1 60.5 60.9 61.2 +29 MO TMAX 4 61.7 61.9 62.3 62.7 63.0 63.3 63.8 64.1 64.4 64.8 65.1 65.4 65.8 66.1 66.4 66.8 67.1 67.4 67.7 68.1 68.3 68.7 69.0 69.2 69.5 69.9 70.1 70.4 70.7 71.1 -99.0 +29 MO TMAX 5 71.3 71.5 72.0 72.2 72.4 72.8 73.1 73.3 73.7 74.0 74.1 74.6 74.8 75.1 75.3 75.7 76.0 76.2 76.6 76.9 77.1 77.5 77.8 78.0 78.4 78.7 79.0 79.3 79.7 79.9 80.3 +29 MO TMAX 6 80.6 80.9 81.1 81.5 81.8 82.0 82.4 82.6 82.8 83.1 83.5 83.7 84.0 84.3 84.5 84.7 84.9 85.1 85.5 85.6 85.8 86.0 86.3 86.5 86.7 86.9 87.0 87.3 87.5 87.6 -99.0 +29 MO TMAX 7 87.8 87.9 88.0 88.3 88.5 88.5 88.7 88.9 88.9 89.0 89.2 89.2 89.3 89.4 89.5 89.5 89.6 89.6 89.7 89.8 89.8 89.9 89.9 89.9 89.9 89.9 89.9 89.9 89.9 89.7 89.7 +29 MO TMAX 8 89.7 89.7 89.7 89.6 89.5 89.4 89.3 89.1 89.0 89.0 88.8 88.8 88.7 88.5 88.2 88.1 88.0 87.9 87.7 87.3 87.1 87.0 86.9 86.6 86.2 86.0 85.8 85.6 85.3 85.0 84.7 +29 MO TMAX 9 84.5 84.2 83.8 83.6 83.3 83.0 82.7 82.4 82.1 81.7 81.5 81.2 81.0 80.6 80.2 80.0 79.6 79.2 79.1 78.7 78.3 78.1 77.9 77.4 77.2 76.9 76.4 76.2 75.9 75.5 -99.0 +29 MO TMAX 10 75.2 74.8 74.5 74.2 73.8 73.5 73.0 72.7 72.3 71.9 71.6 71.1 70.7 70.4 69.9 69.4 69.1 68.6 68.2 67.7 67.2 66.7 66.2 65.8 65.2 64.8 64.2 63.8 63.2 62.7 62.1 +29 MO TMAX 11 61.7 61.0 60.5 60.0 59.5 58.9 58.4 57.9 57.3 56.9 56.3 55.9 55.3 54.8 54.4 53.9 53.6 53.0 52.6 52.1 51.7 51.2 50.7 50.3 49.8 49.4 49.0 48.6 48.2 47.7 -99.0 +29 MO TMAX 12 47.4 46.9 46.5 46.2 45.8 45.4 45.0 44.8 44.4 44.0 43.7 43.4 43.1 42.8 42.4 42.2 41.9 41.5 41.3 41.1 40.7 40.5 40.3 40.1 39.8 39.6 39.4 39.3 39.2 38.7 38.6 +29 MO TMIN 1 19.9 19.7 19.7 19.5 19.4 19.1 19.1 19.0 19.0 18.9 18.8 18.7 18.6 18.6 18.5 18.4 18.4 18.6 18.7 18.9 19.0 19.1 19.1 19.1 19.2 19.2 19.5 19.7 20.0 20.1 20.2 +29 MO TMIN 2 20.5 20.8 21.0 21.2 21.4 21.7 22.0 22.2 22.4 22.8 23.0 23.2 23.5 23.9 24.0 24.3 24.7 25.0 25.2 25.6 25.9 26.2 26.6 26.8 27.1 27.6 27.8 28.3 28.5 -99.0 -99.0 +29 MO TMIN 3 28.6 28.8 29.2 29.6 30.0 30.3 30.5 31.0 31.3 31.6 31.9 32.3 32.5 33.0 33.3 33.7 34.0 34.3 34.6 35.0 35.3 35.6 36.0 36.2 36.6 37.0 37.2 37.6 37.9 38.2 38.6 +29 MO TMIN 4 38.9 39.2 39.5 39.8 40.2 40.5 40.8 41.1 41.4 41.8 42.1 42.3 42.8 43.0 43.4 43.8 44.0 44.4 44.8 45.0 45.4 45.8 46.0 46.4 46.7 47.0 47.4 47.7 48.0 48.3 -99.0 +29 MO TMIN 5 48.7 49.0 49.4 49.7 50.0 50.4 50.7 51.0 51.4 51.7 51.9 52.4 52.6 53.0 53.2 53.6 54.0 54.3 54.6 55.0 55.3 55.6 56.0 56.2 56.6 56.9 57.2 57.6 57.9 58.2 58.6 +29 MO TMIN 6 58.9 59.2 59.6 59.8 60.1 60.5 60.7 61.0 61.4 61.7 61.9 62.1 62.4 62.7 62.9 63.2 63.4 63.7 63.9 64.1 64.4 64.6 64.8 64.9 65.3 65.4 65.6 65.8 65.9 66.1 -99.0 +29 MO TMIN 7 66.3 66.5 66.7 66.8 66.9 67.1 67.2 67.3 67.4 67.5 67.6 67.7 67.7 67.7 67.8 67.9 67.9 68.0 68.0 68.1 68.2 68.3 68.2 68.1 68.0 68.0 68.0 67.9 67.9 67.8 67.7 +29 MO TMIN 8 67.7 67.7 67.5 67.4 67.3 67.2 67.1 67.0 66.9 66.8 66.6 66.5 66.2 66.1 66.0 65.7 65.6 65.3 65.2 65.0 64.7 64.5 64.2 64.1 63.8 63.6 63.4 63.0 62.7 62.5 62.1 +29 MO TMIN 9 61.8 61.6 61.4 60.9 60.6 60.5 59.9 59.7 59.4 59.1 58.7 58.4 58.0 57.7 57.3 57.0 56.7 56.2 55.9 55.6 55.1 54.8 54.5 53.9 53.8 53.3 52.9 52.4 52.1 51.8 -99.0 +29 MO TMIN 10 51.2 50.9 50.5 50.1 49.8 49.2 48.9 48.5 48.1 47.7 47.3 47.0 46.5 46.2 45.7 45.3 45.0 44.6 44.3 44.0 43.4 43.1 42.8 42.4 42.1 41.6 41.3 41.1 40.6 40.3 39.8 +29 MO TMIN 11 39.5 39.2 38.8 38.5 38.2 37.7 37.5 37.1 36.7 36.4 36.0 35.7 35.3 34.9 34.6 34.2 33.8 33.4 33.1 32.8 32.3 32.0 31.8 31.2 31.0 30.7 30.1 29.8 29.5 29.0 -99.0 +29 MO TMIN 12 28.8 28.3 28.1 27.8 27.3 27.0 26.7 26.3 26.1 25.6 25.3 25.1 24.8 24.4 24.2 24.0 23.5 23.3 23.1 22.8 22.5 22.2 22.1 21.7 21.5 21.3 21.1 20.8 20.6 20.4 20.3 +29 MO TAVG 1 29.3 29.1 29.0 28.9 28.8 28.5 28.4 28.3 28.3 28.2 28.2 28.2 28.1 28.1 28.1 28.2 28.3 28.3 28.4 28.4 28.5 28.7 28.7 29.0 29.1 29.2 29.4 29.6 29.9 30.0 30.2 +29 MO TAVG 2 30.5 30.8 31.1 31.3 31.5 31.9 32.2 32.3 32.6 33.0 33.2 33.5 34.0 34.1 34.4 34.8 35.1 35.4 35.8 36.1 36.4 36.8 37.1 37.4 37.8 38.1 38.5 38.9 39.1 -99.0 -99.0 +29 MO TAVG 3 39.2 39.7 40.0 40.3 40.8 41.0 41.4 41.9 42.1 42.6 42.9 43.1 43.7 44.0 44.2 44.7 45.0 45.4 45.8 46.0 46.6 46.8 47.1 47.6 47.8 48.1 48.7 48.8 49.1 49.7 49.9 +29 MO TAVG 4 50.2 50.7 50.9 51.4 51.7 51.9 52.4 52.6 52.9 53.3 53.6 53.9 54.3 54.6 54.9 55.3 55.5 55.9 56.3 56.5 56.9 57.3 57.4 57.9 58.1 58.4 58.8 59.1 59.3 59.7 -99.0 +29 MO TAVG 5 60.0 60.3 60.7 61.0 61.2 61.6 61.9 62.1 62.6 62.9 63.1 63.4 63.8 64.0 64.2 64.7 65.0 65.2 65.6 65.9 66.2 66.6 66.9 67.2 67.6 67.9 68.1 68.4 68.7 69.1 69.4 +29 MO TAVG 6 69.8 70.1 70.4 70.7 71.0 71.3 71.6 71.9 72.1 72.4 72.7 72.9 73.2 73.5 73.8 73.9 74.1 74.4 74.7 74.9 75.1 75.3 75.6 75.8 76.0 76.1 76.4 76.5 76.7 76.9 -99.0 +29 MO TAVG 7 77.1 77.3 77.4 77.5 77.7 77.7 77.9 78.0 78.3 78.3 78.4 78.4 78.5 78.6 78.6 78.6 78.8 78.8 78.9 78.9 78.9 79.1 79.1 79.1 79.1 79.1 79.0 78.9 78.8 78.8 78.8 +29 MO TAVG 8 78.8 78.6 78.6 78.5 78.3 78.2 78.2 78.1 78.1 77.9 77.7 77.6 77.4 77.2 77.1 77.0 76.7 76.6 76.4 76.2 76.1 75.7 75.5 75.3 75.1 74.8 74.6 74.2 74.1 73.8 73.4 +29 MO TAVG 9 73.2 72.9 72.5 72.2 72.0 71.7 71.3 71.1 70.7 70.4 70.1 69.9 69.5 69.1 68.9 68.5 68.1 67.8 67.5 67.1 66.8 66.5 66.1 65.8 65.4 65.1 64.7 64.3 64.0 63.7 -99.0 +29 MO TAVG 10 63.2 62.9 62.5 62.1 61.8 61.3 61.0 60.7 60.1 59.9 59.4 59.1 58.7 58.1 57.9 57.5 57.1 56.7 56.1 55.9 55.3 55.0 54.4 54.1 53.8 53.2 52.9 52.4 52.0 51.5 51.1 +29 MO TAVG 11 50.6 50.2 49.6 49.3 48.9 48.4 48.0 47.5 47.1 46.7 46.3 45.8 45.3 45.0 44.5 44.2 43.7 43.3 42.9 42.4 42.2 41.6 41.3 40.9 40.4 40.1 39.5 39.3 38.9 38.4 -99.0 +29 MO TAVG 12 38.1 37.7 37.4 36.9 36.6 36.2 35.9 35.6 35.2 34.9 34.6 34.3 33.9 33.6 33.3 33.0 32.7 32.5 32.3 32.0 31.7 31.4 31.2 31.0 30.7 30.5 30.2 30.1 29.9 29.7 29.3 +29 MO RVP 1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +29 MO RVP 2 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 -99.0 -99.0 +29 MO RVP 3 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 +29 MO RVP 4 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 -99.0 +29 MO RVP 5 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 +29 MO RVP 6 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +29 MO RVP 7 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +29 MO RVP 8 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +29 MO RVP 9 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +29 MO RVP 10 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 +29 MO RVP 11 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 -99.0 +29 MO RVP 12 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 +30 MT TMAX 1 31.2 31.2 31.2 31.1 31.0 31.0 30.9 30.9 30.9 31.0 31.1 31.1 31.2 31.3 31.4 31.5 31.6 31.8 31.9 31.9 32.1 32.2 32.4 32.7 32.9 33.0 33.2 33.3 33.8 34.0 34.2 +30 MT TMAX 2 34.4 34.8 35.0 35.2 35.5 36.0 36.1 36.3 36.7 37.0 37.2 37.4 37.7 38.1 38.3 38.7 38.8 39.2 39.6 39.7 39.9 40.3 40.7 40.8 41.0 41.4 41.7 41.9 42.1 -99.0 -99.0 +30 MT TMAX 3 42.3 42.5 42.8 43.1 43.4 43.6 44.0 44.3 44.5 44.9 45.3 45.5 45.8 46.2 46.5 46.8 47.0 47.5 47.7 48.0 48.5 48.7 49.1 49.5 49.8 50.2 50.5 50.8 51.2 51.5 51.9 +30 MT TMAX 4 52.3 52.6 52.9 53.4 53.7 53.9 54.4 54.7 55.0 55.5 55.8 56.1 56.4 56.7 57.1 57.4 57.8 58.0 58.4 58.7 58.9 59.4 59.7 59.9 60.3 60.6 60.8 61.2 61.5 61.8 -99.0 +30 MT TMAX 5 61.9 62.4 62.6 62.9 63.1 63.6 63.8 64.0 64.3 64.7 65.0 65.2 65.5 65.8 66.0 66.4 66.7 66.9 67.3 67.5 67.8 68.1 68.4 68.7 68.9 69.3 69.5 69.8 70.1 70.3 70.6 +30 MT TMAX 6 70.9 71.1 71.5 71.8 72.0 72.3 72.6 73.0 73.1 73.4 73.8 74.0 74.2 74.6 75.0 75.1 75.5 75.9 76.1 76.4 76.8 77.0 77.3 77.7 78.0 78.2 78.6 78.9 79.2 79.4 -99.0 +30 MT TMAX 7 79.9 80.2 80.4 80.7 81.0 81.2 81.5 81.8 82.0 82.2 82.5 82.7 82.9 83.0 83.3 83.4 83.6 83.7 83.9 84.0 84.2 84.3 84.3 84.4 84.5 84.6 84.7 84.9 84.9 84.9 85.0 +30 MT TMAX 8 85.0 85.0 85.0 84.9 84.9 84.8 84.6 84.6 84.6 84.4 84.4 84.2 83.9 83.8 83.5 83.4 83.2 82.9 82.6 82.4 82.0 81.7 81.5 81.0 80.7 80.2 79.9 79.6 79.0 78.6 78.0 +30 MT TMAX 9 77.6 77.2 76.8 76.3 75.8 75.3 74.8 74.4 74.0 73.5 73.2 72.7 72.3 71.9 71.5 71.1 70.6 70.2 69.9 69.5 69.1 68.7 68.4 68.0 67.7 67.3 66.9 66.7 66.3 65.9 -99.0 +30 MT TMAX 10 65.6 65.3 65.0 64.5 64.2 63.8 63.4 63.1 62.5 62.2 61.6 61.3 60.7 60.3 59.7 59.3 58.7 58.3 57.7 57.2 56.6 55.9 55.5 54.8 54.3 53.6 52.9 52.3 51.6 50.8 50.3 +30 MT TMAX 11 49.6 48.9 48.3 47.5 47.0 46.4 45.7 45.1 44.5 44.1 43.4 43.0 42.4 41.9 41.4 41.0 40.5 40.1 39.7 39.2 38.9 38.5 38.1 37.8 37.4 37.1 37.0 36.6 36.3 36.1 -99.0 +30 MT TMAX 12 35.9 35.7 35.4 35.3 35.0 34.7 34.6 34.3 34.2 34.0 33.8 33.7 33.5 33.3 33.2 33.0 32.9 32.8 32.4 32.3 32.2 32.1 32.0 32.0 31.9 31.8 31.7 31.5 31.5 31.3 31.2 +30 MT TMIN 1 11.8 11.8 11.6 11.6 11.6 11.5 11.5 11.5 11.5 11.4 11.4 11.5 11.6 11.7 11.8 11.9 11.9 12.0 12.1 12.1 12.1 12.2 12.3 12.3 12.7 12.9 13.0 13.0 13.2 13.5 13.6 +30 MT TMIN 2 13.9 14.0 14.3 14.3 14.6 14.8 15.0 15.3 15.4 15.6 15.8 16.1 16.2 16.4 16.6 16.9 17.2 17.3 17.6 17.9 18.1 18.2 18.5 18.8 19.0 19.2 19.4 19.7 19.9 -99.0 -99.0 +30 MT TMIN 3 20.0 20.2 20.3 20.7 21.0 21.1 21.3 21.6 21.9 22.2 22.3 22.4 22.9 23.1 23.3 23.5 23.8 24.0 24.3 24.4 24.8 25.0 25.1 25.4 25.8 26.0 26.1 26.4 26.6 26.9 27.1 +30 MT TMIN 4 27.5 27.7 27.8 27.9 28.4 28.7 28.8 29.1 29.3 29.7 29.8 30.1 30.4 30.6 30.9 31.2 31.4 31.6 31.9 32.2 32.4 32.8 33.0 33.3 33.7 33.9 34.0 34.4 34.7 35.0 -99.0 +30 MT TMIN 5 35.2 35.5 35.9 36.1 36.4 36.7 37.0 37.2 37.4 37.8 38.2 38.3 38.5 38.9 39.2 39.4 39.6 39.9 40.2 40.4 40.8 40.9 41.2 41.4 41.8 41.9 42.1 42.6 42.8 43.0 43.1 +30 MT TMIN 6 43.5 43.7 44.0 44.2 44.4 44.6 44.8 45.0 45.4 45.5 45.7 45.9 46.2 46.4 46.6 46.8 46.9 47.2 47.3 47.6 47.8 47.9 48.1 48.4 48.5 48.7 48.7 48.9 49.1 49.2 -99.0 +30 MT TMIN 7 49.4 49.6 49.7 49.9 49.9 50.1 50.2 50.5 50.5 50.6 50.7 50.8 50.8 51.0 51.0 51.2 51.3 51.4 51.4 51.4 51.5 51.5 51.5 51.5 51.6 51.7 51.7 51.7 51.8 51.9 52.1 +30 MT TMIN 8 52.1 52.1 52.0 51.8 51.7 51.6 51.6 51.5 51.4 51.3 51.2 51.1 51.0 50.9 50.7 50.4 50.2 50.0 49.9 49.7 49.3 49.1 48.8 48.6 48.2 48.0 47.7 47.3 46.9 46.6 46.2 +30 MT TMIN 9 45.9 45.6 45.0 44.7 44.4 43.9 43.7 43.3 42.9 42.6 42.3 42.0 41.7 41.2 41.0 40.7 40.3 40.0 39.9 39.4 39.0 38.9 38.6 38.3 37.9 37.7 37.5 37.2 36.9 36.5 -99.0 +30 MT TMIN 10 36.4 36.2 35.9 35.5 35.4 35.1 34.7 34.5 34.2 33.9 33.7 33.4 33.1 32.8 32.5 32.2 31.8 31.6 31.2 30.8 30.7 30.2 30.0 29.7 29.2 29.0 28.7 28.2 28.0 27.7 27.3 +30 MT TMIN 11 26.9 26.5 26.2 25.9 25.4 25.2 24.7 24.6 24.2 23.8 23.4 23.3 22.8 22.5 22.2 21.8 21.5 21.2 21.0 20.6 20.3 20.0 19.6 19.4 19.0 18.7 18.4 18.1 17.9 17.5 -99.0 +30 MT TMIN 12 17.3 17.0 16.6 16.5 16.1 15.9 15.7 15.5 15.2 14.9 14.7 14.5 14.3 14.2 14.0 13.7 13.5 13.4 13.2 13.1 13.0 12.8 12.6 12.5 12.4 12.2 12.2 12.2 12.0 11.9 11.8 +30 MT TAVG 1 21.5 21.4 21.5 21.5 21.4 21.4 21.3 21.3 21.3 21.3 21.3 21.4 21.4 21.4 21.5 21.6 21.7 21.8 22.0 22.0 22.1 22.2 22.4 22.6 22.7 22.9 23.1 23.3 23.5 23.7 23.8 +30 MT TAVG 2 24.1 24.5 24.6 24.8 25.1 25.5 25.6 25.9 26.0 26.3 26.6 26.8 27.0 27.3 27.5 27.8 28.0 28.2 28.5 28.8 29.0 29.3 29.5 29.8 30.1 30.3 30.5 30.9 31.0 -99.0 -99.0 +30 MT TAVG 3 31.2 31.3 31.6 32.0 32.1 32.4 32.7 33.1 33.2 33.5 33.8 34.1 34.3 34.6 34.9 35.2 35.5 35.7 36.0 36.3 36.6 36.9 37.2 37.6 37.7 38.0 38.3 38.7 39.0 39.1 39.6 +30 MT TAVG 4 39.8 40.1 40.5 40.7 41.0 41.3 41.7 41.8 42.2 42.6 42.9 43.1 43.4 43.8 44.0 44.2 44.6 44.8 45.2 45.5 45.8 46.0 46.3 46.6 46.8 47.1 47.5 47.8 48.0 48.5 -99.0 +30 MT TAVG 5 48.7 48.9 49.3 49.6 49.8 50.1 50.4 50.7 50.9 51.3 51.5 51.8 52.1 52.3 52.5 52.9 53.3 53.4 53.6 54.1 54.3 54.5 54.8 55.1 55.3 55.6 55.9 56.2 56.4 56.7 56.9 +30 MT TAVG 6 57.2 57.5 57.8 57.9 58.2 58.6 58.8 58.9 59.2 59.6 59.9 59.9 60.2 60.6 60.9 60.9 61.3 61.5 61.7 62.0 62.3 62.5 62.7 62.9 63.2 63.5 63.7 63.9 64.2 64.4 -99.0 +30 MT TAVG 7 64.7 64.9 65.1 65.3 65.6 65.7 65.9 65.9 66.2 66.5 66.7 66.7 66.8 66.9 67.1 67.4 67.6 67.6 67.7 67.7 67.8 67.8 68.0 68.1 68.1 68.2 68.2 68.3 68.5 68.5 68.5 +30 MT TAVG 8 68.5 68.5 68.5 68.4 68.3 68.3 68.2 68.1 68.0 67.9 67.8 67.6 67.5 67.3 67.1 67.0 66.7 66.5 66.2 66.0 65.8 65.5 65.1 64.9 64.5 64.1 63.8 63.4 63.0 62.7 62.2 +30 MT TAVG 9 61.8 61.3 61.0 60.6 60.1 59.7 59.3 58.9 58.6 58.0 57.7 57.3 56.9 56.7 56.2 55.9 55.5 55.2 54.9 54.5 54.1 53.9 53.5 53.1 52.8 52.5 52.3 51.9 51.6 51.3 -99.0 +30 MT TAVG 10 51.1 50.7 50.4 50.2 49.9 49.4 49.2 48.9 48.4 48.1 47.7 47.3 47.0 46.6 46.2 45.8 45.3 44.9 44.5 44.1 43.5 43.2 42.7 42.3 41.8 41.4 40.7 40.4 39.8 39.4 38.8 +30 MT TAVG 11 38.4 37.8 37.2 36.8 36.3 35.8 35.3 34.8 34.4 33.9 33.6 33.0 32.7 32.2 31.8 31.4 31.0 30.7 30.2 29.9 29.6 29.2 28.9 28.6 28.2 27.9 27.7 27.4 27.1 26.8 -99.0 +30 MT TAVG 12 26.6 26.3 26.1 25.9 25.6 25.4 25.2 24.9 24.6 24.4 24.3 24.2 23.9 23.8 23.5 23.3 23.3 23.2 23.0 22.7 22.6 22.5 22.4 22.4 22.2 22.0 21.9 21.7 21.6 21.6 21.5 +30 MT RVP 1 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 14.3 +30 MT RVP 2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 -99.0 -99.0 +30 MT RVP 3 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 +30 MT RVP 4 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +30 MT RVP 5 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 +30 MT RVP 6 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 -99.0 +30 MT RVP 7 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 +30 MT RVP 8 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 +30 MT RVP 9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 -99.0 +30 MT RVP 10 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 10.6 +30 MT RVP 11 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 -99.0 +30 MT RVP 12 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 14.2 +31 NE TMAX 1 32.8 32.7 32.6 32.5 32.5 32.5 32.4 32.2 32.2 32.2 32.2 32.2 32.4 32.4 32.5 32.5 32.6 32.8 32.8 32.9 33.0 33.0 33.2 33.3 33.6 33.9 34.0 34.0 34.3 34.5 34.9 +31 NE TMAX 2 35.1 35.3 35.5 35.9 36.1 36.4 36.6 37.0 37.3 37.5 37.9 38.1 38.4 38.7 39.0 39.4 39.9 40.0 40.4 40.8 41.1 41.7 41.8 42.2 42.7 42.8 43.5 43.7 44.0 -99.0 -99.0 +31 NE TMAX 3 44.3 44.6 44.9 45.4 45.7 46.2 46.6 47.0 47.5 47.9 48.3 48.8 48.9 49.6 49.8 50.3 50.7 51.1 51.6 52.0 52.5 52.9 53.3 53.6 54.0 54.5 54.9 55.5 55.9 56.3 56.8 +31 NE TMAX 4 57.1 57.5 57.9 58.4 58.8 59.3 59.7 60.0 60.5 60.9 61.3 61.7 61.9 62.4 62.8 63.1 63.5 63.8 64.1 64.5 64.9 65.3 65.6 65.9 66.3 66.5 66.9 67.3 67.4 67.7 -99.0 +31 NE TMAX 5 68.2 68.4 68.6 69.1 69.4 69.6 69.9 70.4 70.5 70.8 71.4 71.6 71.9 72.4 72.6 73.0 73.4 73.6 74.1 74.3 74.7 75.1 75.4 75.7 76.2 76.4 77.0 77.3 77.7 78.1 78.4 +31 NE TMAX 6 79.0 79.2 79.5 80.1 80.3 80.5 81.1 81.3 81.7 82.0 82.3 82.5 82.8 83.1 83.4 83.7 83.9 84.2 84.3 84.7 84.9 85.1 85.2 85.3 85.6 85.7 86.0 86.1 86.2 86.4 -99.0 +31 NE TMAX 7 86.5 86.7 86.8 86.9 86.9 87.0 87.1 87.1 87.2 87.2 87.3 87.3 87.5 87.8 87.8 87.8 87.9 87.9 87.9 87.9 88.0 88.0 87.9 87.9 87.9 87.8 87.6 87.5 87.5 87.5 87.4 +31 NE TMAX 8 87.4 87.4 87.3 87.3 87.0 87.0 86.9 86.8 86.6 86.5 86.4 86.3 86.2 86.1 85.7 85.5 85.4 85.3 85.2 85.0 84.6 84.4 84.3 84.1 83.8 83.5 83.3 83.2 82.8 82.4 82.3 +31 NE TMAX 9 82.1 81.6 81.3 81.2 81.0 80.5 80.2 80.1 79.6 79.3 79.1 78.7 78.4 78.1 77.8 77.5 77.2 77.0 76.6 76.2 76.0 75.6 75.2 75.0 74.6 74.2 74.0 73.6 73.2 72.9 -99.0 +31 NE TMAX 10 72.5 72.1 71.8 71.4 71.1 70.6 70.2 69.8 69.4 68.9 68.4 68.0 67.4 67.1 66.6 66.1 65.6 65.0 64.5 63.9 63.3 62.7 62.2 61.6 60.9 60.4 59.7 59.1 58.4 57.8 57.1 +31 NE TMAX 11 56.4 55.9 55.2 54.4 53.9 53.2 52.5 51.9 51.3 50.8 50.2 49.5 49.1 48.4 48.0 47.3 46.9 46.3 45.8 45.3 44.9 44.3 43.9 43.4 43.0 42.5 42.3 41.6 41.4 40.8 -99.0 +31 NE TMAX 12 40.5 40.0 39.7 39.3 39.0 38.7 38.2 37.9 37.7 37.3 37.0 36.7 36.5 36.1 35.9 35.7 35.3 35.1 35.0 34.7 34.5 34.3 34.1 33.9 33.6 33.6 33.3 33.3 33.2 33.1 32.9 +31 NE TMIN 1 12.1 11.9 11.9 11.7 11.4 11.4 11.4 11.3 11.2 11.2 11.1 11.0 11.0 11.0 11.0 11.1 11.1 11.2 11.3 11.4 11.5 11.7 11.8 11.8 11.9 12.0 12.3 12.7 12.8 12.9 13.3 +31 NE TMIN 2 13.4 13.6 13.9 14.3 14.4 14.6 15.1 15.3 15.4 15.8 16.2 16.3 16.8 16.8 17.2 17.4 17.8 18.1 18.3 18.8 19.1 19.3 19.7 20.0 20.3 20.6 21.0 21.2 21.4 -99.0 -99.0 +31 NE TMIN 3 21.6 22.0 22.2 22.7 23.0 23.2 23.7 24.0 24.3 24.7 25.0 25.3 25.7 26.0 26.4 26.8 27.1 27.4 27.8 28.1 28.4 28.9 29.2 29.7 29.9 30.2 30.7 31.0 31.3 31.7 32.0 +31 NE TMIN 4 32.5 32.7 33.2 33.6 33.8 34.2 34.6 34.9 35.3 35.7 36.1 36.5 36.8 37.2 37.6 38.0 38.2 38.8 39.1 39.4 39.8 40.1 40.6 40.9 41.3 41.8 42.1 42.5 42.9 43.2 -99.0 +31 NE TMIN 5 43.7 44.0 44.3 44.8 45.2 45.6 46.0 46.3 46.8 47.0 47.5 47.9 48.1 48.7 48.9 49.2 49.7 50.0 50.3 50.9 51.0 51.4 51.9 52.1 52.6 52.9 53.2 53.6 53.9 54.2 54.6 +31 NE TMIN 6 54.9 55.3 55.6 55.9 56.4 56.6 56.8 57.3 57.5 57.7 58.1 58.4 58.6 58.9 59.3 59.4 59.6 59.9 60.3 60.4 60.7 60.9 61.1 61.4 61.5 61.8 62.0 62.2 62.4 62.6 -99.0 +31 NE TMIN 7 62.7 62.9 63.0 63.2 63.4 63.4 63.6 63.7 64.0 64.1 64.1 64.2 64.3 64.3 64.4 64.4 64.5 64.6 64.7 64.7 64.7 64.9 64.9 64.9 64.9 64.9 64.9 64.7 64.7 64.6 64.5 +31 NE TMIN 8 64.6 64.4 64.4 64.3 64.2 64.1 64.0 64.0 63.9 63.5 63.3 63.2 63.1 63.0 62.8 62.4 62.2 62.0 61.9 61.5 61.2 61.0 60.6 60.4 60.1 59.9 59.4 59.3 58.7 58.4 58.2 +31 NE TMIN 9 57.5 57.3 57.0 56.4 56.2 55.6 55.3 55.0 54.4 54.2 53.8 53.3 53.1 52.7 52.2 52.0 51.4 51.2 50.7 50.3 49.9 49.5 49.2 48.7 48.4 47.9 47.6 47.1 46.7 46.4 -99.0 +31 NE TMIN 10 46.0 45.5 45.3 44.7 44.4 43.9 43.5 43.2 42.6 42.4 41.9 41.5 41.1 40.6 40.3 39.6 39.4 38.9 38.5 38.0 37.6 37.3 36.6 36.4 35.7 35.4 34.8 34.5 34.0 33.6 33.2 +31 NE TMIN 11 32.6 32.3 31.7 31.3 30.8 30.5 30.0 29.6 29.0 28.7 28.3 27.9 27.4 27.0 26.5 26.2 25.6 25.4 24.9 24.6 24.2 23.7 23.4 22.9 22.6 22.3 21.8 21.5 21.0 20.7 -99.0 +31 NE TMIN 12 20.4 20.0 19.5 19.3 18.9 18.6 18.3 18.0 17.6 17.4 17.0 16.7 16.5 16.3 15.8 15.6 15.5 15.1 14.8 14.6 14.4 14.1 13.8 13.7 13.4 13.2 12.9 12.8 12.7 12.4 12.2 +31 NE TAVG 1 22.3 22.3 22.2 22.1 22.0 22.0 21.9 21.9 21.8 21.8 21.7 21.7 21.7 21.8 21.9 21.9 22.0 22.0 22.0 22.2 22.2 22.2 22.5 22.6 22.7 23.1 23.2 23.2 23.5 23.7 24.0 +31 NE TAVG 2 24.2 24.5 24.7 25.1 25.2 25.6 25.8 26.1 26.4 26.7 27.0 27.3 27.5 27.8 28.1 28.5 28.8 29.1 29.5 29.7 30.1 30.6 30.7 31.2 31.5 31.7 32.2 32.5 32.7 -99.0 -99.0 +31 NE TAVG 3 32.9 33.4 33.6 34.1 34.4 34.8 35.2 35.4 35.8 36.3 36.6 37.2 37.5 37.7 38.2 38.5 39.0 39.4 39.7 40.1 40.5 40.9 41.3 41.7 42.2 42.4 42.7 43.3 43.6 44.1 44.3 +31 NE TAVG 4 44.7 45.2 45.5 46.1 46.3 46.8 47.1 47.5 48.1 48.2 48.6 49.1 49.4 49.9 50.2 50.5 51.0 51.2 51.6 52.1 52.3 52.6 53.1 53.5 54.0 54.2 54.5 54.9 55.2 55.5 -99.0 +31 NE TAVG 5 55.9 56.3 56.6 56.9 57.3 57.6 57.9 58.3 58.6 59.0 59.4 59.7 60.1 60.4 60.8 61.1 61.6 61.9 62.2 62.6 63.0 63.2 63.6 64.0 64.3 64.8 65.1 65.3 65.9 66.1 66.6 +31 NE TAVG 6 67.0 67.2 67.6 68.0 68.4 68.7 69.0 69.4 69.7 69.8 70.2 70.5 70.8 70.9 71.3 71.7 71.9 72.0 72.4 72.7 72.8 72.9 73.2 73.3 73.7 73.9 74.0 74.2 74.2 74.4 -99.0 +31 NE TAVG 7 74.5 74.9 75.0 75.0 75.3 75.3 75.4 75.5 75.5 75.7 75.8 75.9 76.0 76.0 76.0 76.2 76.2 76.3 76.3 76.3 76.4 76.4 76.4 76.3 76.3 76.3 76.3 76.2 76.1 76.1 76.0 +31 NE TAVG 8 76.0 76.0 75.9 75.8 75.7 75.6 75.5 75.3 75.2 75.0 74.9 74.8 74.6 74.5 74.2 74.0 73.9 73.6 73.5 73.2 72.9 72.7 72.5 72.3 71.9 71.6 71.5 71.1 70.7 70.5 70.2 +31 NE TAVG 9 69.8 69.5 69.1 68.8 68.5 68.3 67.8 67.4 67.3 66.8 66.4 66.1 65.8 65.4 65.1 64.7 64.4 64.1 63.7 63.3 62.9 62.6 62.3 61.8 61.5 61.2 60.8 60.3 59.9 59.7 -99.0 +31 NE TAVG 10 59.3 58.8 58.6 58.2 57.7 57.3 56.8 56.5 56.0 55.6 55.2 54.7 54.4 53.8 53.5 52.8 52.5 51.8 51.6 50.9 50.5 49.9 49.5 48.9 48.5 47.9 47.5 46.7 46.3 45.6 45.2 +31 NE TAVG 11 44.6 44.0 43.5 42.9 42.4 41.8 41.3 40.8 40.3 39.8 39.1 38.7 38.2 37.8 37.2 36.8 36.2 35.9 35.5 35.1 34.6 34.1 33.7 33.2 32.8 32.4 32.1 31.6 31.2 30.8 -99.0 +31 NE TAVG 12 30.5 30.0 29.7 29.4 28.8 28.7 28.4 27.9 27.7 27.4 27.0 26.7 26.5 26.1 26.0 25.7 25.5 25.1 24.9 24.7 24.5 24.2 24.0 23.8 23.7 23.4 23.2 23.0 22.9 22.8 22.7 +31 NE RVP 1 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 +31 NE RVP 2 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 -99.0 -99.0 +31 NE RVP 3 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +31 NE RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +31 NE RVP 5 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 +31 NE RVP 6 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 -99.0 +31 NE RVP 7 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 +31 NE RVP 8 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 +31 NE RVP 9 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 -99.0 +31 NE RVP 10 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 8.3 +31 NE RVP 11 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +31 NE RVP 12 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +32 NV TMAX 1 52.4 52.4 52.4 52.4 52.4 52.4 52.4 52.7 52.8 52.8 52.8 52.8 52.8 53.2 53.2 53.2 53.6 53.6 53.6 53.7 53.8 54.2 54.5 54.6 54.6 54.7 55.2 55.5 55.6 55.6 56.4 +32 NV TMAX 2 56.5 56.6 56.6 57.4 57.5 57.6 57.6 58.3 58.4 58.5 59.0 59.3 59.4 59.5 59.5 60.0 60.4 60.4 60.5 60.9 61.0 61.4 61.4 61.5 61.9 62.0 62.4 62.4 62.5 -99.0 -99.0 +32 NV TMAX 3 62.5 62.6 63.0 63.4 63.4 63.5 63.5 64.3 64.4 64.4 64.5 64.9 65.3 65.4 65.4 65.8 66.2 66.3 66.4 66.8 67.2 67.3 67.3 67.8 68.1 68.2 68.7 69.0 69.2 69.2 69.7 +32 NV TMAX 4 70.0 70.2 70.5 70.9 71.0 71.5 71.8 71.9 72.4 72.4 72.8 73.3 73.4 73.7 74.2 74.3 74.7 74.7 75.2 75.3 75.7 76.1 76.2 76.6 76.7 77.1 77.6 77.6 78.1 78.2 -99.0 +32 NV TMAX 5 78.6 78.6 79.1 79.5 79.6 80.0 80.4 80.6 80.7 81.4 81.5 81.6 82.4 82.5 82.6 83.4 83.4 83.9 84.3 84.4 84.8 85.3 85.4 86.2 86.3 86.8 87.2 87.3 88.1 88.2 88.6 +32 NV TMAX 6 89.1 89.2 90.0 90.1 90.8 91.0 91.1 91.8 92.0 92.1 92.8 93.0 93.4 93.8 94.0 94.1 94.9 95.0 95.1 95.9 96.0 96.1 96.3 96.7 97.1 97.2 97.3 97.7 98.2 98.3 -99.0 +32 NV TMAX 7 98.4 98.6 98.6 99.0 99.2 99.6 99.6 99.8 99.8 99.9 100.0 100.3 100.4 100.5 100.6 100.6 100.9 101.0 101.0 101.1 101.1 101.1 101.1 101.1 100.8 100.8 100.8 100.8 100.8 100.7 100.4 +32 NV TMAX 8 100.4 100.4 100.4 100.3 100.3 99.9 99.9 99.8 99.8 99.4 99.4 99.3 99.3 98.9 98.8 98.8 98.4 98.3 97.9 97.8 97.8 97.4 97.3 96.8 96.8 96.7 96.3 96.2 95.8 95.7 95.2 +32 NV TMAX 9 95.1 94.7 94.6 94.2 93.7 93.6 93.5 92.8 92.7 92.5 92.1 91.7 91.5 91.1 90.7 90.6 89.8 89.7 89.6 88.8 88.7 88.2 87.8 87.7 86.9 86.8 86.4 85.9 85.8 85.0 -99.0 +32 NV TMAX 10 84.8 84.5 84.0 83.5 83.1 82.5 82.1 82.0 81.2 81.1 80.2 80.1 79.3 79.1 78.4 78.1 77.7 77.1 76.7 76.2 75.4 75.2 74.4 74.2 73.4 73.2 72.4 72.2 71.4 70.8 70.3 +32 NV TMAX 11 69.8 69.3 68.8 68.2 67.8 67.2 66.7 66.2 65.7 65.2 64.7 64.3 63.8 63.4 62.9 62.4 62.2 61.7 61.4 60.9 60.4 60.0 59.8 59.4 58.9 58.8 58.4 58.0 57.9 57.4 -99.0 +32 NV TMAX 12 57.0 56.9 56.8 56.1 56.0 55.9 55.8 55.1 55.1 55.0 54.8 54.5 54.1 54.1 54.0 54.0 53.5 53.5 53.1 53.1 53.1 53.1 53.0 52.9 52.9 52.5 52.5 52.5 52.5 52.5 52.4 +32 NV TMIN 1 27.1 27.5 27.5 27.5 27.6 27.6 27.6 27.6 27.6 27.7 27.7 27.8 27.8 28.1 28.2 28.5 28.6 28.6 28.6 28.6 28.6 29.0 29.1 29.5 29.5 29.6 29.6 29.6 30.0 30.4 30.4 +32 NV TMIN 2 30.5 30.5 30.9 31.0 31.3 31.4 31.4 31.5 31.9 32.2 32.3 32.4 32.4 32.8 32.8 33.2 33.3 33.4 33.8 33.8 34.1 34.2 34.3 34.7 34.8 35.1 35.2 35.2 35.4 -99.0 -99.0 +32 NV TMIN 3 35.6 35.7 35.8 36.2 36.2 36.5 36.6 36.7 37.1 37.2 37.5 37.5 37.6 37.9 38.4 38.5 38.5 38.5 38.9 39.2 39.3 39.3 39.5 40.1 40.1 40.2 40.2 40.3 40.9 41.0 41.1 +32 NV TMIN 4 41.1 41.8 41.8 41.8 41.8 41.9 42.7 42.7 42.8 43.1 43.5 43.5 43.6 44.1 44.4 44.5 44.5 44.9 45.3 45.4 45.8 46.2 46.3 46.4 46.8 47.2 47.2 47.7 48.1 48.2 -99.0 +32 NV TMIN 5 48.6 49.1 49.2 49.5 49.6 50.1 50.2 50.5 51.0 51.1 51.5 51.8 52.0 52.1 52.8 52.9 53.0 53.7 53.8 53.9 54.0 54.7 54.8 54.9 55.3 55.8 55.8 56.2 56.3 56.4 57.1 +32 NV TMIN 6 57.2 57.2 57.7 58.1 58.2 58.5 58.7 59.1 59.5 59.5 59.7 59.7 60.4 60.5 60.6 61.0 61.4 61.5 61.6 62.0 62.4 62.4 62.6 62.9 63.3 63.4 63.5 63.9 64.0 64.4 -99.0 +32 NV TMIN 7 64.5 64.6 65.0 65.3 65.4 65.4 65.6 65.9 66.3 66.4 66.4 66.4 66.5 66.5 66.6 66.6 66.9 67.2 67.2 67.2 67.3 67.3 67.3 67.3 67.3 67.3 67.3 67.4 67.4 67.4 67.2 +32 NV TMIN 8 67.3 67.2 67.2 66.8 66.5 66.5 66.4 66.4 66.4 66.4 66.3 66.3 65.9 65.5 65.4 65.3 65.3 65.3 64.9 64.5 64.4 64.3 64.2 63.5 63.5 63.4 63.2 63.2 62.5 62.3 62.2 +32 NV TMIN 9 62.2 61.4 61.3 61.2 60.5 60.4 60.3 59.5 59.4 59.3 59.2 58.4 58.4 58.0 57.5 57.4 56.7 56.5 56.4 55.7 55.5 55.1 54.7 54.5 53.8 53.7 53.3 52.8 52.7 51.9 -99.0 +32 NV TMIN 10 51.8 51.3 50.9 50.5 50.0 49.6 49.2 49.0 48.6 48.2 47.7 47.3 46.9 46.5 46.3 45.9 45.5 45.0 44.6 44.5 43.8 43.6 42.9 42.8 42.7 42.0 41.9 41.1 41.0 40.6 40.2 +32 NV TMIN 11 39.8 39.3 39.2 38.8 38.4 38.0 37.5 37.4 37.0 36.6 36.2 36.1 35.6 35.3 35.3 34.8 34.3 34.3 33.9 33.4 33.3 33.2 32.5 32.5 32.3 31.6 31.5 31.4 31.3 30.6 -99.0 +32 NV TMIN 12 30.5 30.5 30.4 29.7 29.5 29.5 29.4 29.1 28.7 28.6 28.5 28.5 28.4 28.1 27.7 27.6 27.6 27.6 27.6 27.6 27.5 27.5 27.4 27.4 27.4 27.4 27.1 27.1 27.1 27.1 27.5 +32 NV TAVG 1 39.8 40.0 40.1 40.1 40.1 40.1 40.2 40.2 40.2 40.2 40.2 40.3 40.3 40.3 40.7 41.0 41.0 41.1 41.1 41.1 41.2 41.6 42.0 42.0 42.1 42.1 42.2 42.8 43.0 43.0 43.1 +32 NV TAVG 2 43.5 43.8 43.9 44.1 44.1 44.5 44.8 45.0 45.0 45.4 45.5 45.8 45.9 46.0 46.4 46.8 46.9 46.9 47.0 47.4 47.7 47.8 47.9 48.3 48.4 48.7 48.8 48.8 49.0 -99.0 -99.0 +32 NV TAVG 3 49.3 49.3 49.4 49.7 49.8 49.9 50.3 50.3 50.7 50.8 51.2 51.3 51.6 51.7 51.7 52.1 52.2 52.6 52.6 53.1 53.1 53.5 53.6 53.9 54.0 54.4 54.5 54.8 54.9 55.2 55.6 +32 NV TAVG 4 55.7 55.8 56.1 56.6 56.6 56.7 57.1 57.5 57.6 57.6 58.3 58.4 58.5 58.9 59.3 59.4 59.5 60.2 60.2 60.3 60.5 61.1 61.2 61.3 62.1 62.2 62.2 62.9 63.0 63.2 -99.0 +32 NV TAVG 5 63.3 64.0 64.2 64.2 64.9 65.0 65.2 65.9 65.9 66.1 66.6 66.9 67.0 67.5 67.9 67.9 68.4 68.8 68.9 69.3 69.7 69.9 70.3 70.4 70.8 71.3 71.3 72.0 72.2 72.3 73.0 +32 NV TAVG 6 73.2 73.3 74.0 74.1 74.2 75.0 75.0 75.5 75.9 76.0 76.1 76.6 76.9 77.0 77.5 77.6 78.0 78.4 78.5 78.9 79.1 79.5 79.6 79.6 80.1 80.5 80.6 80.7 81.1 81.2 -99.0 +32 NV TAVG 7 81.3 81.7 81.8 82.2 82.3 82.4 82.7 82.8 83.2 83.3 83.4 83.4 83.4 83.5 83.5 83.6 83.9 83.9 84.0 84.1 84.1 84.4 84.4 84.4 84.4 84.1 84.1 84.1 84.1 83.7 83.7 +32 NV TAVG 8 83.7 83.6 83.6 83.6 83.6 83.6 83.5 83.2 83.1 82.7 82.6 82.6 82.6 82.5 82.5 82.1 81.7 81.6 81.6 81.5 81.1 80.7 80.6 80.5 80.5 80.0 79.7 79.6 79.4 79.0 78.6 +32 NV TAVG 9 78.4 78.4 77.7 77.6 77.4 77.0 76.6 76.5 76.4 75.7 75.5 75.4 74.7 74.5 74.4 73.7 73.5 73.1 72.7 72.5 71.8 71.7 71.6 70.8 70.7 70.2 69.8 69.7 68.9 68.8 -99.0 +32 NV TAVG 10 68.0 67.9 67.4 67.0 66.9 66.1 66.0 65.2 65.1 64.6 64.1 63.7 63.3 62.7 62.3 62.2 61.4 61.3 60.6 60.4 59.6 59.4 58.7 58.6 58.0 57.6 57.1 56.7 56.2 55.7 55.6 +32 NV TAVG 11 54.8 54.6 53.9 53.7 52.9 52.8 52.0 51.9 51.1 50.9 50.8 50.1 49.9 49.1 49.1 48.9 48.1 48.0 47.6 47.1 47.1 46.3 46.2 46.1 45.7 45.2 45.1 44.7 44.3 44.2 -99.0 +32 NV TAVG 12 44.1 43.4 43.3 43.2 43.1 42.4 42.3 42.3 42.2 41.5 41.4 41.3 41.3 41.2 41.2 40.8 40.4 40.3 40.3 40.3 40.3 40.3 40.3 40.3 40.2 40.1 40.1 40.1 40.1 39.8 39.7 +32 NV RVP 1 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 +32 NV RVP 2 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 -99.0 -99.0 +32 NV RVP 3 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +32 NV RVP 4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +32 NV RVP 5 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +32 NV RVP 6 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +32 NV RVP 7 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +32 NV RVP 8 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +32 NV RVP 9 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 -99.0 +32 NV RVP 10 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 8.0 +32 NV RVP 11 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +32 NV RVP 12 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 +33 NH TMAX 1 31.9 31.7 31.6 31.6 31.5 31.5 31.3 31.3 31.1 31.1 30.9 30.9 30.8 30.7 30.7 30.7 30.7 30.6 30.7 30.9 30.9 31.0 31.0 31.1 31.2 31.2 31.2 31.4 31.6 31.6 31.9 +33 NH TMAX 2 32.0 32.0 32.1 32.3 32.5 32.7 33.0 33.0 33.2 33.3 33.7 34.0 34.1 34.3 34.6 35.0 35.1 35.2 35.6 35.9 36.1 36.3 36.7 37.0 37.1 37.5 37.8 38.1 38.3 -99.0 -99.0 +33 NH TMAX 3 38.4 38.8 39.1 39.4 39.7 40.1 40.4 40.9 41.2 41.4 41.8 42.2 42.4 42.8 43.2 43.5 44.0 44.2 44.5 45.2 45.3 45.8 46.2 46.4 46.9 47.3 47.5 48.2 48.4 48.8 49.2 +33 NH TMAX 4 49.5 50.0 50.4 50.7 51.2 51.5 51.9 52.5 52.7 53.2 53.6 53.9 54.5 54.8 55.4 55.7 56.2 56.6 56.9 57.5 57.9 58.4 58.8 59.1 59.6 60.0 60.6 61.0 61.6 61.8 -99.0 +33 NH TMAX 5 62.2 62.8 63.1 63.8 64.0 64.6 65.0 65.2 65.9 66.1 66.5 66.9 67.2 67.6 68.1 68.3 68.8 69.2 69.4 69.6 70.2 70.4 70.6 71.0 71.4 71.5 71.9 72.2 72.4 72.7 72.9 +33 NH TMAX 6 73.2 73.3 73.6 74.0 74.2 74.4 74.7 74.9 75.1 75.3 75.7 75.9 76.1 76.3 76.4 76.8 77.1 77.2 77.3 77.8 77.9 78.1 78.2 78.3 78.8 79.0 79.1 79.2 79.5 79.9 -99.0 +33 NH TMAX 7 80.0 80.2 80.2 80.3 80.7 80.8 81.0 81.1 81.2 81.3 81.3 81.7 81.7 81.7 81.8 81.8 81.9 81.9 82.0 82.1 82.2 82.2 82.2 82.2 82.1 82.1 82.0 81.9 81.7 81.7 81.7 +33 NH TMAX 8 81.7 81.7 81.6 81.4 81.2 81.2 81.1 81.0 80.9 80.7 80.6 80.4 80.2 80.0 79.9 79.7 79.6 79.3 79.0 78.9 78.8 78.6 78.1 77.9 77.8 77.6 77.1 76.9 76.7 76.5 76.0 +33 NH TMAX 9 75.9 75.6 75.0 74.9 74.7 74.3 73.9 73.7 73.2 72.9 72.8 72.4 71.9 71.8 71.5 70.9 70.8 70.4 69.9 69.7 69.4 68.9 68.6 68.2 67.8 67.5 67.0 66.8 66.4 65.9 -99.0 +33 NH TMAX 10 65.7 65.2 64.9 64.5 64.0 63.8 63.4 62.9 62.5 62.2 61.8 61.4 61.0 60.7 60.3 59.8 59.4 59.1 58.7 58.3 57.9 57.5 57.0 56.7 56.4 55.9 55.5 55.1 54.7 54.3 53.9 +33 NH TMAX 11 53.6 53.1 52.7 52.2 51.9 51.5 51.0 50.7 50.0 49.8 49.6 48.9 48.6 48.1 47.7 47.5 46.9 46.6 46.0 45.7 45.2 44.7 44.5 43.9 43.5 43.0 42.7 42.2 41.8 41.5 -99.0 +33 NH TMAX 12 40.9 40.5 40.1 39.7 39.5 38.9 38.5 38.1 37.7 37.5 37.0 36.7 36.5 36.0 35.8 35.6 35.3 34.8 34.7 34.6 34.1 33.8 33.7 33.6 33.3 32.9 32.7 32.7 32.6 32.4 32.1 +33 NH TMIN 1 11.9 11.6 11.4 11.0 11.0 10.9 10.7 10.5 10.2 10.0 10.0 10.0 9.9 9.8 9.7 9.7 9.7 9.7 9.4 9.1 9.2 9.2 9.1 9.3 9.2 9.3 9.4 9.4 9.5 9.6 9.6 +33 NH TMIN 2 9.6 9.8 9.9 10.1 10.3 10.4 10.4 10.7 10.9 11.1 11.2 11.4 11.7 11.9 12.1 12.4 12.6 12.9 13.3 13.4 13.7 14.1 14.5 14.8 15.2 15.6 15.8 16.3 16.5 -99.0 -99.0 +33 NH TMIN 3 16.7 16.9 17.7 17.8 18.2 18.8 18.9 19.3 19.8 20.1 20.5 20.7 21.2 21.6 21.8 22.4 22.6 22.9 23.5 23.7 24.0 24.4 24.8 24.9 25.3 25.8 25.9 26.3 26.7 26.9 27.3 +33 NH TMIN 4 27.7 27.9 28.3 28.5 28.8 29.2 29.5 29.8 30.2 30.5 30.8 31.1 31.4 31.7 32.1 32.5 32.8 33.1 33.3 33.8 34.1 34.3 35.0 35.2 35.4 36.0 36.2 36.5 37.1 37.3 -99.0 +33 NH TMIN 5 37.7 38.2 38.3 38.7 39.2 39.5 39.8 40.2 40.5 40.8 41.2 41.6 41.8 42.2 42.7 42.8 43.2 43.6 43.9 44.2 44.7 44.9 45.2 45.6 45.9 46.2 46.6 46.8 47.1 47.6 47.9 +33 NH TMIN 6 48.1 48.7 48.8 49.1 49.6 49.7 49.9 50.3 50.7 50.8 51.0 51.4 51.8 51.8 52.1 52.5 52.7 52.8 53.0 53.4 53.7 53.9 53.9 54.3 54.5 54.7 54.9 55.0 55.3 55.4 -99.0 +33 NH TMIN 7 55.7 55.9 56.2 56.3 56.3 56.4 56.5 56.7 56.9 57.0 57.3 57.3 57.3 57.3 57.3 57.3 57.3 57.4 57.5 57.6 57.7 57.9 57.9 57.9 57.9 57.9 57.8 57.7 57.6 57.5 57.4 +33 NH TMIN 8 57.5 57.4 57.3 57.3 57.2 57.2 57.1 57.0 56.8 56.7 56.5 56.4 56.2 56.2 56.0 55.8 55.5 55.4 55.2 55.1 54.7 54.5 54.4 54.1 54.0 53.7 53.3 53.1 52.8 52.5 52.3 +33 NH TMIN 9 52.0 51.6 51.3 51.1 50.7 50.3 50.2 49.6 49.3 49.2 48.5 48.3 48.2 47.4 47.3 47.1 46.4 46.2 45.8 45.3 45.1 44.5 44.3 43.9 43.3 42.9 42.5 42.2 41.8 41.3 -99.0 +33 NH TMIN 10 40.9 40.3 40.0 39.6 39.1 38.9 38.4 38.0 37.7 37.3 36.9 36.7 36.1 35.9 35.7 35.4 35.0 34.8 34.7 34.3 33.9 33.8 33.5 33.3 33.0 32.7 32.7 32.4 32.3 32.1 31.9 +33 NH TMIN 11 31.8 31.5 31.3 31.3 31.0 30.9 30.4 30.3 30.2 30.0 29.5 29.3 29.1 28.7 28.4 28.2 27.9 27.5 27.2 26.9 26.5 26.2 25.8 25.3 25.1 24.5 24.2 23.8 23.4 22.9 -99.0 +33 NH TMIN 12 22.4 22.0 21.6 21.0 20.7 20.2 19.8 19.5 19.1 18.6 18.4 17.8 17.5 17.3 16.6 16.5 16.3 15.8 15.5 15.2 14.8 14.5 14.3 13.9 13.7 13.4 13.2 12.9 12.5 12.2 12.1 +33 NH TAVG 1 21.9 21.7 21.7 21.4 21.2 21.0 20.9 20.9 20.8 20.6 20.6 20.6 20.6 20.5 20.3 20.2 20.0 20.0 19.9 20.0 20.1 20.1 20.2 20.2 20.2 20.4 20.4 20.5 20.5 20.5 20.7 +33 NH TAVG 2 20.8 21.0 21.1 21.2 21.4 21.4 21.7 22.0 22.0 22.2 22.4 22.6 23.0 23.1 23.2 23.5 24.0 24.2 24.3 24.7 25.0 25.3 25.5 26.0 26.2 26.6 26.8 27.2 27.4 -99.0 -99.0 +33 NH TAVG 3 27.6 27.8 28.3 28.7 29.0 29.4 29.7 30.1 30.5 30.8 31.2 31.7 31.9 32.2 32.7 32.9 33.3 33.8 34.0 34.3 34.9 35.1 35.4 35.7 36.2 36.5 36.7 37.2 37.6 37.8 38.2 +33 NH TAVG 4 38.6 38.9 39.3 39.6 40.2 40.4 40.6 41.3 41.4 41.8 42.4 42.5 43.0 43.4 43.7 44.1 44.5 44.9 45.2 45.6 46.1 46.3 46.8 47.2 47.6 48.1 48.3 48.8 49.2 49.5 -99.0 +33 NH TAVG 5 50.2 50.4 50.8 51.2 51.5 52.1 52.4 52.6 53.2 53.5 53.8 54.4 54.5 54.8 55.4 55.5 56.1 56.5 56.7 57.1 57.5 57.6 57.9 58.4 58.6 58.8 59.4 59.5 59.8 60.3 60.4 +33 NH TAVG 6 60.7 61.0 61.3 61.5 61.7 62.2 62.4 62.6 62.8 63.2 63.3 63.6 64.0 64.2 64.5 64.6 64.9 65.1 65.2 65.6 65.7 66.0 66.1 66.4 66.6 66.8 67.1 67.2 67.5 67.6 -99.0 +33 NH TAVG 7 67.7 68.1 68.2 68.3 68.4 68.6 68.7 68.9 69.2 69.3 69.4 69.4 69.4 69.4 69.5 69.6 69.7 69.7 69.8 69.9 69.9 69.9 70.1 70.1 70.1 70.0 70.0 69.9 69.8 69.6 69.6 +33 NH TAVG 8 69.6 69.6 69.4 69.3 69.3 69.2 69.1 69.0 68.9 68.7 68.5 68.3 68.2 68.1 67.9 67.9 67.5 67.3 67.2 67.0 66.9 66.4 66.3 66.1 65.9 65.6 65.3 65.1 64.7 64.3 64.2 +33 NH TAVG 9 64.0 63.5 63.3 63.1 62.7 62.3 62.1 61.7 61.3 61.2 60.7 60.3 60.1 59.7 59.3 58.9 58.6 58.3 57.9 57.5 57.2 56.8 56.3 56.0 55.7 55.2 54.9 54.4 53.9 53.7 -99.0 +33 NH TAVG 10 53.3 52.8 52.6 52.0 51.7 51.2 50.8 50.6 50.1 49.7 49.6 49.0 48.7 48.4 47.9 47.7 47.1 46.8 46.7 46.4 45.9 45.7 45.4 45.0 44.6 44.4 44.1 43.7 43.4 43.2 43.0 +33 NH TAVG 11 42.5 42.4 42.1 41.8 41.5 41.1 40.9 40.5 40.2 39.9 39.5 39.2 39.0 38.4 38.2 37.9 37.4 37.0 36.7 36.3 36.0 35.4 35.2 34.7 34.2 34.0 33.4 33.2 32.5 32.2 -99.0 +33 NH TAVG 12 31.6 31.2 31.1 30.4 30.2 29.4 29.2 29.0 28.3 28.1 27.7 27.3 27.1 26.8 26.3 26.1 25.8 25.3 25.1 24.8 24.5 24.3 23.9 23.8 23.3 23.3 23.0 22.8 22.6 22.3 22.0 +33 NH RVP 1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +33 NH RVP 2 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 -99.0 -99.0 +33 NH RVP 3 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 +33 NH RVP 4 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +33 NH RVP 5 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 +33 NH RVP 6 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 -99.0 +33 NH RVP 7 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 +33 NH RVP 8 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 +33 NH RVP 9 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 -99.0 +33 NH RVP 10 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 +33 NH RVP 11 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +33 NH RVP 12 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 13.1 +34 NJ TMAX 1 39.8 39.7 39.4 39.2 39.1 39.1 38.9 38.9 38.7 38.6 38.6 38.6 38.6 38.4 38.4 38.4 38.2 38.2 38.2 38.2 38.3 38.3 38.4 38.4 38.5 38.5 38.6 38.6 38.7 38.8 39.0 +34 NJ TMAX 2 38.9 39.2 39.3 39.4 39.6 39.7 39.8 39.9 40.3 40.3 40.6 40.8 40.9 41.2 41.4 41.7 41.8 42.1 42.4 42.7 42.8 43.3 43.5 43.8 44.2 44.3 44.6 45.1 45.2 -99.0 -99.0 +34 NJ TMAX 3 45.3 45.7 46.2 46.3 46.7 47.1 47.4 47.7 48.1 48.4 48.7 49.1 49.5 49.8 50.1 50.4 50.9 51.2 51.4 51.8 52.2 52.5 52.9 53.2 53.5 54.0 54.3 54.6 55.0 55.4 55.6 +34 NJ TMAX 4 56.0 56.4 56.7 57.2 57.4 57.8 58.2 58.5 58.8 59.3 59.5 59.9 60.3 60.5 61.1 61.3 61.7 62.1 62.4 62.7 63.1 63.4 63.8 64.2 64.4 64.9 65.2 65.6 66.0 66.2 -99.0 +34 NJ TMAX 5 66.6 67.0 67.3 67.5 68.0 68.4 68.8 69.1 69.4 69.8 70.1 70.4 70.7 71.0 71.4 71.6 71.9 72.4 72.6 72.9 73.2 73.6 73.8 74.1 74.5 74.8 75.0 75.3 75.7 75.9 76.1 +34 NJ TMAX 6 76.5 76.7 77.0 77.2 77.7 78.0 78.1 78.2 78.7 79.0 79.1 79.3 79.7 80.0 80.0 80.2 80.6 80.9 81.0 81.1 81.5 81.8 82.0 82.0 82.4 82.6 82.9 83.0 83.1 83.4 -99.0 +34 NJ TMAX 7 83.6 83.9 83.9 84.0 84.2 84.3 84.6 84.7 84.9 85.0 85.0 85.1 85.2 85.2 85.3 85.3 85.4 85.5 85.6 85.6 85.6 85.7 85.7 85.6 85.6 85.5 85.4 85.4 85.4 85.3 85.3 +34 NJ TMAX 8 85.3 85.1 85.1 85.0 84.9 84.7 84.6 84.5 84.4 84.3 84.2 84.0 83.9 83.7 83.6 83.4 83.3 83.1 82.9 82.9 82.6 82.4 82.2 82.0 81.9 81.6 81.4 81.1 81.0 80.8 80.5 +34 NJ TMAX 9 80.3 80.1 79.8 79.6 79.3 79.1 78.8 78.5 78.2 78.0 77.6 77.3 77.2 76.7 76.5 76.2 75.8 75.5 75.2 74.8 74.5 74.2 73.7 73.4 73.0 72.7 72.3 71.9 71.6 71.2 -99.0 +34 NJ TMAX 10 70.7 70.4 70.0 69.6 69.2 68.9 68.5 68.0 67.7 67.4 66.9 66.6 66.2 65.8 65.5 65.0 64.6 64.4 64.0 63.6 63.4 62.9 62.5 62.3 61.8 61.5 61.2 60.7 60.5 60.1 59.7 +34 NJ TMAX 11 59.5 59.1 58.8 58.5 58.1 57.8 57.5 57.0 56.7 56.4 56.0 55.6 55.3 54.9 54.5 54.1 53.9 53.4 53.0 52.8 52.3 51.9 51.6 51.0 50.9 50.4 50.0 49.7 49.0 48.9 -99.0 +34 NJ TMAX 12 48.4 48.0 47.7 47.2 46.8 46.5 46.1 45.8 45.4 45.1 44.8 44.4 44.2 43.8 43.5 43.3 43.0 42.7 42.4 42.3 41.9 41.7 41.5 41.3 41.0 40.8 40.7 40.4 40.2 40.1 39.8 +34 NJ TMIN 1 22.9 22.8 22.6 22.4 22.2 22.2 21.9 21.8 21.6 21.6 21.5 21.5 21.3 21.3 21.3 21.1 21.0 20.9 20.9 20.8 20.7 20.6 20.6 20.6 20.6 20.6 20.6 20.7 20.8 20.9 20.9 +34 NJ TMIN 2 20.9 21.0 21.1 21.3 21.3 21.5 21.6 21.7 21.7 21.9 22.0 22.2 22.4 22.5 22.7 22.9 23.1 23.3 23.7 23.8 24.0 24.2 24.6 24.8 25.0 25.3 25.7 26.0 26.1 -99.0 -99.0 +34 NJ TMIN 3 26.2 26.6 26.9 27.2 27.5 27.8 28.1 28.4 28.7 29.0 29.3 29.7 29.9 30.3 30.5 30.8 31.1 31.5 31.7 31.9 32.5 32.6 32.8 33.2 33.5 33.7 34.0 34.4 34.6 34.9 35.1 +34 NJ TMIN 4 35.4 35.7 36.0 36.3 36.6 36.8 37.1 37.5 37.7 38.0 38.4 38.6 38.9 39.3 39.5 39.7 40.1 40.4 40.7 41.1 41.4 41.7 42.1 42.4 42.7 43.0 43.4 43.7 43.9 44.5 -99.0 +34 NJ TMIN 5 44.8 44.9 45.4 45.8 45.9 46.4 46.8 47.0 47.4 47.8 48.0 48.5 48.8 49.0 49.4 49.8 50.1 50.3 50.8 51.1 51.4 51.7 52.1 52.3 52.7 52.9 53.3 53.6 53.9 54.3 54.6 +34 NJ TMIN 6 54.9 55.3 55.6 55.8 56.2 56.5 56.8 57.0 57.5 57.7 57.8 58.2 58.5 58.8 59.0 59.4 59.6 59.8 60.0 60.3 60.6 60.8 61.0 61.3 61.5 61.7 61.8 62.1 62.3 62.6 -99.0 +34 NJ TMIN 7 62.6 62.9 63.2 63.3 63.3 63.5 63.7 63.9 64.1 64.2 64.3 64.4 64.4 64.5 64.6 64.6 64.7 64.8 64.9 65.0 65.1 65.2 65.2 65.2 65.3 65.2 65.2 65.2 65.1 64.9 64.8 +34 NJ TMIN 8 64.9 64.8 64.7 64.6 64.5 64.3 64.3 64.2 64.2 64.1 64.0 63.9 63.6 63.5 63.3 63.2 63.0 63.0 62.7 62.5 62.3 62.2 62.1 61.9 61.6 61.4 61.2 61.1 60.6 60.4 60.3 +34 NJ TMIN 9 60.1 59.7 59.4 59.3 59.1 58.5 58.4 58.2 57.6 57.5 57.2 56.7 56.5 56.2 55.7 55.5 55.1 54.6 54.3 53.8 53.6 53.1 52.7 52.3 51.8 51.4 50.9 50.6 50.0 49.6 -99.0 +34 NJ TMIN 10 49.1 48.7 48.3 47.8 47.4 46.8 46.4 46.2 45.7 45.3 44.8 44.5 44.2 43.7 43.4 43.2 42.7 42.4 42.1 41.7 41.5 41.3 40.8 40.6 40.5 40.2 39.8 39.6 39.4 39.2 39.0 +34 NJ TMIN 11 38.8 38.5 38.3 38.2 38.0 37.7 37.5 37.2 37.0 36.9 36.5 36.3 36.0 35.8 35.5 35.2 34.9 34.8 34.3 34.1 33.9 33.7 33.2 33.0 32.7 32.4 32.1 31.7 31.5 31.2 -99.0 +34 NJ TMIN 12 30.7 30.5 30.2 29.8 29.5 29.3 28.9 28.7 28.3 28.1 27.8 27.6 27.2 27.0 26.7 26.4 26.2 26.0 25.7 25.4 25.3 25.0 24.8 24.5 24.4 24.1 23.9 23.7 23.4 23.2 23.0 +34 NJ TAVG 1 31.3 31.2 31.1 31.0 30.7 30.5 30.3 30.3 30.2 30.2 30.1 30.1 30.1 29.9 29.8 29.7 29.6 29.5 29.5 29.5 29.4 29.4 29.5 29.6 29.6 29.6 29.7 29.7 29.8 30.0 30.1 +34 NJ TAVG 2 30.0 30.2 30.3 30.3 30.4 30.5 30.7 30.8 31.0 31.2 31.4 31.4 31.6 31.9 32.2 32.3 32.4 32.7 33.0 33.3 33.4 33.8 34.1 34.3 34.5 35.0 35.2 35.5 35.7 -99.0 -99.0 +34 NJ TAVG 3 35.9 36.1 36.5 36.8 37.1 37.5 37.8 38.1 38.5 38.8 39.0 39.5 39.8 39.9 40.3 40.8 40.9 41.2 41.8 41.9 42.2 42.7 42.9 43.2 43.6 43.9 44.1 44.5 44.7 45.2 45.4 +34 NJ TAVG 4 45.7 46.1 46.4 46.6 47.1 47.4 47.6 48.1 48.3 48.5 49.1 49.2 49.6 50.1 50.2 50.5 51.0 51.2 51.6 52.0 52.2 52.6 53.0 53.2 53.6 54.0 54.3 54.7 55.0 55.3 -99.0 +34 NJ TAVG 5 55.7 56.0 56.3 56.8 57.0 57.5 57.8 57.9 58.4 58.8 59.0 59.4 59.8 60.0 60.4 60.8 61.0 61.4 61.7 61.9 62.3 62.7 63.0 63.3 63.6 64.0 64.2 64.5 64.9 65.1 65.4 +34 NJ TAVG 6 65.7 66.1 66.4 66.6 66.9 67.2 67.5 67.8 68.1 68.3 68.7 68.7 69.1 69.4 69.7 69.7 70.0 70.4 70.7 70.7 71.0 71.3 71.6 71.7 71.8 72.2 72.5 72.7 72.8 72.9 -99.0 +34 NJ TAVG 7 73.1 73.6 73.6 73.7 73.8 73.9 74.1 74.5 74.6 74.6 74.7 74.7 74.8 74.8 74.9 75.0 75.1 75.1 75.4 75.4 75.4 75.5 75.5 75.6 75.5 75.4 75.3 75.2 75.2 75.1 75.0 +34 NJ TAVG 8 75.1 74.9 74.9 74.7 74.7 74.6 74.6 74.5 74.3 74.2 74.0 73.9 73.7 73.7 73.6 73.4 73.2 73.0 72.8 72.6 72.5 72.4 72.1 71.9 71.7 71.5 71.4 71.1 70.8 70.6 70.5 +34 NJ TAVG 9 70.1 69.9 69.7 69.5 69.1 68.8 68.7 68.4 67.9 67.7 67.5 67.1 66.8 66.7 66.1 65.8 65.5 65.1 64.8 64.5 63.9 63.7 63.2 62.9 62.5 62.0 61.7 61.2 60.8 60.4 -99.0 +34 NJ TAVG 10 59.9 59.6 59.1 58.8 58.3 57.9 57.4 57.1 56.6 56.3 56.0 55.5 55.2 54.9 54.4 54.2 53.7 53.4 53.0 52.7 52.4 52.1 51.8 51.4 51.1 50.8 50.6 50.2 50.0 49.8 49.4 +34 NJ TAVG 11 49.2 48.8 48.6 48.3 48.0 47.8 47.5 47.2 46.9 46.7 46.2 45.9 45.8 45.4 44.9 44.8 44.5 44.0 43.8 43.4 43.1 42.8 42.4 42.0 41.8 41.4 41.0 40.7 40.3 39.9 -99.0 +34 NJ TAVG 12 39.6 39.3 38.9 38.6 38.2 37.9 37.5 37.2 37.0 36.6 36.3 36.1 35.7 35.4 35.2 35.0 34.5 34.3 34.2 34.0 33.4 33.3 33.2 33.0 32.7 32.4 32.2 32.2 32.0 31.6 31.4 +34 NJ RVP 1 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 +34 NJ RVP 2 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 -99.0 -99.0 +34 NJ RVP 3 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 +34 NJ RVP 4 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 -99.0 +34 NJ RVP 5 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +34 NJ RVP 6 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +34 NJ RVP 7 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +34 NJ RVP 8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 +34 NJ RVP 9 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 -99.0 +34 NJ RVP 10 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 +34 NJ RVP 11 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 10.2 -99.0 +34 NJ RVP 12 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 +35 NM TMAX 1 47.4 47.3 47.3 47.2 47.3 47.3 47.4 47.4 47.4 47.8 47.8 47.8 47.9 47.9 48.0 48.1 48.1 48.6 48.6 48.7 48.8 48.9 49.4 49.5 49.6 49.7 49.8 50.3 50.5 50.5 51.0 +35 NM TMAX 2 51.2 51.4 51.5 52.0 52.1 52.4 52.7 52.9 53.1 53.3 53.7 53.8 54.1 54.5 54.7 54.8 55.0 55.5 55.7 55.8 55.9 56.5 56.6 56.8 56.9 57.4 57.6 57.7 57.8 -99.0 -99.0 +35 NM TMAX 3 58.0 58.5 58.6 58.7 59.1 59.3 59.6 59.8 60.1 60.4 60.6 60.8 61.1 61.4 61.6 61.7 62.1 62.4 62.6 62.7 63.1 63.4 63.6 63.7 64.2 64.4 64.6 64.9 65.3 65.4 65.6 +35 NM TMAX 4 66.0 66.2 66.4 66.6 67.0 67.3 67.5 67.9 68.1 68.2 68.5 69.0 69.2 69.3 69.6 70.0 70.2 70.3 70.8 71.0 71.2 71.4 71.9 72.0 72.3 72.4 72.9 73.1 73.3 73.8 -99.0 +35 NM TMAX 5 74.0 74.2 74.4 74.8 75.0 75.3 75.7 76.0 76.2 76.4 76.9 77.2 77.4 77.8 78.1 78.4 78.7 79.1 79.6 79.7 80.2 80.6 80.8 81.5 81.6 82.0 82.5 82.7 83.4 83.5 83.9 +35 NM TMAX 6 84.4 84.7 85.3 85.5 85.7 86.3 86.5 86.9 87.2 87.4 87.8 88.0 88.2 88.4 88.7 88.9 89.1 89.2 89.3 89.6 89.8 89.9 90.0 90.0 90.1 90.1 90.2 90.5 90.5 90.6 -99.0 +35 NM TMAX 7 90.5 90.5 90.5 90.5 90.5 90.5 90.5 90.5 90.5 90.5 90.4 90.5 90.2 90.1 90.1 90.1 90.1 90.1 90.1 90.0 89.9 89.9 89.9 89.8 89.8 89.7 89.6 89.6 89.2 89.2 89.2 +35 NM TMAX 8 89.1 89.1 89.0 89.0 88.7 88.7 88.4 88.3 88.3 88.2 88.1 88.1 87.9 87.5 87.4 87.4 87.3 87.2 87.1 86.7 86.5 86.5 86.4 86.3 86.2 85.7 85.6 85.5 85.3 85.2 84.8 +35 NM TMAX 9 84.7 84.6 84.4 84.0 83.8 83.7 83.5 83.4 83.0 82.8 82.7 82.2 82.0 81.8 81.7 81.2 81.0 80.8 80.4 80.2 80.0 79.5 79.3 79.1 78.7 78.4 78.2 77.7 77.5 77.0 -99.0 +35 NM TMAX 10 76.7 76.5 76.0 75.7 75.3 75.1 74.7 74.3 73.9 73.4 73.2 72.9 72.4 72.0 71.5 71.2 70.6 70.4 70.1 69.5 69.1 68.5 68.2 67.7 67.2 66.8 66.4 65.8 65.4 64.9 64.5 +35 NM TMAX 11 63.9 63.4 62.9 62.6 61.9 61.6 61.3 60.7 60.4 59.8 59.5 58.9 58.6 58.3 57.7 57.5 56.9 56.7 56.1 55.8 55.6 55.1 54.8 54.5 54.1 53.8 53.6 53.1 52.8 52.6 -99.0 +35 NM TMAX 12 52.2 51.9 51.7 51.4 51.0 50.9 50.5 50.3 50.1 49.9 49.5 49.4 49.3 49.2 49.0 48.8 48.5 48.4 48.3 48.3 48.1 48.1 48.0 47.8 47.6 47.5 47.4 47.4 47.4 47.4 47.3 +35 NM TMIN 1 19.6 19.6 19.6 19.6 19.6 19.6 19.6 19.7 19.8 19.8 19.8 19.9 19.9 19.9 20.2 20.4 20.4 20.4 20.5 20.6 20.6 20.6 20.8 20.8 21.2 21.4 21.4 21.5 21.7 21.8 22.1 +35 NM TMIN 2 22.2 22.5 22.6 22.7 23.0 23.1 23.2 23.5 23.6 23.7 24.1 24.1 24.4 24.5 24.7 24.7 25.1 25.3 25.5 25.6 25.7 26.1 26.2 26.4 26.5 26.7 26.9 27.2 27.3 -99.0 -99.0 +35 NM TMIN 3 27.3 27.5 27.6 27.9 28.2 28.3 28.5 28.6 28.8 29.2 29.4 29.5 29.5 29.7 29.9 30.3 30.4 30.5 30.6 30.9 31.2 31.4 31.4 31.6 31.7 32.1 32.3 32.4 32.5 32.8 33.0 +35 NM TMIN 4 33.2 33.3 33.5 33.8 34.0 34.1 34.3 34.6 34.9 35.0 35.1 35.4 35.8 36.0 36.1 36.2 36.8 37.0 37.1 37.6 37.8 38.0 38.1 38.6 38.8 39.1 39.5 39.8 40.0 40.5 -99.0 +35 NM TMIN 5 40.7 41.0 41.5 41.6 42.0 42.1 42.6 42.9 43.0 43.5 43.9 44.0 44.5 44.8 45.0 45.4 45.7 46.0 46.4 46.6 46.8 47.3 47.5 47.7 48.2 48.4 48.6 49.1 49.3 49.6 50.0 +35 NM TMIN 6 50.2 50.4 50.9 51.1 51.3 51.8 52.0 52.2 52.6 52.8 53.0 53.4 53.6 53.9 54.0 54.4 54.6 54.9 55.3 55.4 55.6 55.9 56.4 56.4 56.6 56.7 57.0 57.4 57.6 57.8 -99.0 +35 NM TMIN 7 57.9 58.4 58.5 58.6 58.7 58.9 59.0 59.1 59.2 59.6 59.7 59.9 59.9 60.0 60.0 60.1 60.1 60.1 60.3 60.3 60.3 60.4 60.5 60.5 60.5 60.4 60.4 60.3 60.3 60.3 60.2 +35 NM TMIN 8 60.3 60.3 60.2 60.2 60.1 60.1 59.7 59.6 59.6 59.5 59.4 59.3 59.2 59.1 59.0 58.6 58.6 58.5 58.3 58.1 58.0 57.7 57.6 57.4 57.1 57.1 56.8 56.5 56.3 56.2 56.0 +35 NM TMIN 9 55.6 55.4 55.2 54.9 54.6 54.4 54.1 53.9 53.4 53.2 53.1 52.5 52.3 52.2 51.5 51.3 51.1 50.6 50.3 50.1 49.6 49.3 49.0 48.5 48.1 47.7 47.3 47.0 46.5 46.2 -99.0 +35 NM TMIN 10 45.6 45.3 44.7 44.5 44.2 43.6 43.2 42.7 42.4 41.9 41.6 41.3 40.7 40.4 39.9 39.6 39.1 38.6 38.2 37.9 37.6 37.0 36.7 36.3 35.9 35.6 35.1 34.7 34.2 34.0 33.4 +35 NM TMIN 11 33.1 32.7 32.2 32.1 31.6 31.2 30.7 30.5 30.2 29.7 29.5 29.2 28.7 28.4 28.2 27.7 27.5 27.3 26.8 26.5 26.3 25.9 25.6 25.4 25.0 24.8 24.5 24.4 23.9 23.8 -99.0 +35 NM TMIN 12 23.6 23.1 22.9 22.8 22.6 22.4 22.0 21.9 21.8 21.6 21.4 21.1 20.9 20.9 20.8 20.6 20.5 20.4 20.4 20.1 20.0 20.0 19.9 19.9 19.9 19.7 19.7 19.6 19.6 19.6 19.6 +35 NM TAVG 1 33.4 33.4 33.4 33.6 33.6 33.6 33.6 33.6 33.6 33.7 33.8 33.9 33.9 34.0 34.0 34.1 34.2 34.5 34.5 34.7 34.8 34.8 34.9 35.4 35.5 35.6 35.6 35.8 36.2 36.3 36.5 +35 NM TAVG 2 36.7 37.1 37.2 37.3 37.5 37.6 38.0 38.1 38.4 38.6 38.9 39.0 39.3 39.4 39.7 39.9 40.1 40.3 40.4 40.8 41.0 41.2 41.3 41.7 41.9 42.0 42.2 42.4 42.6 -99.0 -99.0 +35 NM TAVG 3 42.8 43.0 43.1 43.2 43.7 43.8 44.1 44.2 44.4 44.8 45.0 45.1 45.2 45.7 45.9 46.0 46.2 46.6 46.8 46.9 47.1 47.2 47.7 47.8 48.0 48.1 48.6 48.8 48.9 49.0 49.5 +35 NM TAVG 4 49.6 49.8 49.9 50.4 50.5 50.7 50.9 51.3 51.5 51.6 51.9 52.3 52.4 52.6 52.9 53.3 53.4 53.6 53.9 54.3 54.5 54.8 55.2 55.3 55.6 55.9 56.2 56.4 56.7 57.2 -99.0 +35 NM TAVG 5 57.3 57.6 57.9 58.3 58.5 58.7 59.2 59.4 59.6 60.2 60.4 60.5 61.2 61.3 61.5 62.1 62.3 62.5 63.0 63.3 63.4 63.9 64.3 64.4 64.9 65.2 65.4 65.9 66.3 66.7 67.0 +35 NM TAVG 6 67.3 67.7 68.0 68.5 68.7 68.8 69.3 69.6 69.8 70.2 70.5 70.6 70.8 71.2 71.5 71.6 72.0 72.1 72.2 72.5 72.6 73.0 73.1 73.3 73.4 73.5 73.6 73.9 74.0 74.2 -99.0 +35 NM TAVG 7 74.2 74.3 74.3 74.4 74.4 74.6 74.7 74.8 74.8 75.1 75.1 75.2 75.2 75.2 75.2 75.2 75.2 75.2 75.2 75.3 75.3 75.4 75.4 75.3 75.2 74.9 74.9 74.8 74.8 74.7 74.7 +35 NM TAVG 8 74.7 74.7 74.6 74.5 74.5 74.4 74.1 74.0 73.9 73.8 73.8 73.6 73.6 73.5 73.2 73.0 72.9 72.8 72.7 72.6 72.2 72.1 71.9 71.8 71.7 71.6 71.1 71.0 70.8 70.7 70.3 +35 NM TAVG 9 70.1 70.0 69.8 69.7 69.2 69.1 68.9 68.7 68.2 68.1 67.9 67.3 67.2 67.0 66.6 66.3 66.1 65.9 65.4 65.1 64.9 64.4 64.1 63.7 63.5 63.3 62.6 62.4 61.8 61.6 -99.0 +35 NM TAVG 10 61.4 60.8 60.5 60.0 59.7 59.4 58.9 58.6 58.1 57.8 57.5 57.0 56.6 56.1 55.8 55.3 55.1 54.4 54.1 53.7 53.2 52.9 52.4 52.1 51.5 51.2 50.6 50.3 49.9 49.4 49.1 +35 NM TAVG 11 48.5 48.2 47.6 47.3 46.7 46.5 46.1 45.6 45.3 44.7 44.5 44.2 43.7 43.4 42.9 42.6 42.4 41.8 41.5 41.4 40.9 40.5 40.1 40.0 39.6 39.4 39.0 38.7 38.5 38.1 -99.0 +35 NM TAVG 12 38.0 37.6 37.2 37.1 36.9 36.6 36.2 36.1 36.0 35.8 35.6 35.3 35.1 35.0 34.9 34.8 34.6 34.3 34.2 34.1 34.0 34.0 34.0 33.9 33.9 33.7 33.7 33.7 33.7 33.4 33.4 +35 NM RVP 1 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 +35 NM RVP 2 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 -99.0 -99.0 +35 NM RVP 3 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 +35 NM RVP 4 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 -99.0 +35 NM RVP 5 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 +35 NM RVP 6 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 -99.0 +35 NM RVP 7 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 +35 NM RVP 8 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 +35 NM RVP 9 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 -99.0 +35 NM RVP 10 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 9.1 +35 NM RVP 11 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 -99.0 +35 NM RVP 12 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 +36 NY TMAX 1 36.7 36.6 36.5 36.2 36.1 35.9 35.8 35.8 35.8 35.6 35.6 35.6 35.5 35.5 35.4 35.3 35.2 35.1 35.1 35.1 35.0 35.2 35.2 35.3 35.3 35.4 35.4 35.6 35.6 35.7 35.7 +36 NY TMAX 2 35.7 36.0 36.0 36.1 36.3 36.4 36.6 36.8 37.0 37.0 37.1 37.3 37.6 37.9 38.0 38.1 38.4 38.8 39.0 39.2 39.5 39.8 40.1 40.3 40.8 40.9 41.2 41.5 41.7 -99.0 -99.0 +36 NY TMAX 3 41.9 42.3 42.5 42.9 43.2 43.5 43.9 44.3 44.5 45.0 45.3 45.6 46.1 46.4 46.6 47.1 47.4 47.6 48.2 48.5 48.7 49.1 49.5 49.8 50.2 50.6 50.9 51.3 51.6 52.0 52.4 +36 NY TMAX 4 52.7 53.0 53.5 53.9 54.3 54.6 55.0 55.3 55.7 56.0 56.4 56.8 57.1 57.5 58.0 58.2 58.8 59.1 59.3 59.9 60.3 60.5 61.0 61.4 61.7 62.2 62.5 63.0 63.4 63.7 -99.0 +36 NY TMAX 5 64.1 64.6 64.8 65.2 65.7 65.9 66.3 66.8 67.1 67.4 67.7 68.2 68.5 68.8 69.2 69.5 69.8 70.1 70.5 70.8 71.0 71.4 71.7 71.9 72.4 72.6 72.9 73.0 73.5 73.7 73.9 +36 NY TMAX 6 74.2 74.6 74.7 74.9 75.4 75.6 75.7 76.0 76.4 76.6 76.7 77.0 77.3 77.5 77.7 78.0 78.2 78.4 78.6 78.8 79.2 79.3 79.4 79.7 80.1 80.2 80.4 80.6 80.9 81.1 -99.0 +36 NY TMAX 7 81.2 81.4 81.6 81.9 82.0 82.1 82.2 82.3 82.5 82.8 82.8 82.9 82.9 83.0 83.0 83.0 83.2 83.2 83.3 83.3 83.3 83.5 83.7 83.7 83.6 83.4 83.3 83.3 83.2 83.2 83.0 +36 NY TMAX 8 83.2 82.9 82.9 82.8 82.8 82.7 82.6 82.3 82.3 82.2 82.0 81.9 81.8 81.7 81.5 81.2 81.0 80.9 80.8 80.7 80.4 80.2 79.9 79.8 79.6 79.3 79.0 78.8 78.7 78.4 78.0 +36 NY TMAX 9 77.9 77.7 77.4 77.0 76.8 76.6 76.2 75.9 75.7 75.4 75.0 74.7 74.5 74.1 73.7 73.6 73.1 72.7 72.6 72.1 71.7 71.5 71.1 70.7 70.3 70.0 69.6 69.1 68.8 68.6 -99.0 +36 NY TMAX 10 68.0 67.7 67.3 66.8 66.6 66.2 65.7 65.4 64.9 64.6 64.3 63.7 63.5 63.0 62.7 62.3 61.9 61.6 61.3 60.8 60.5 60.1 59.7 59.5 58.9 58.7 58.2 57.8 57.6 57.2 56.9 +36 NY TMAX 11 56.4 56.2 55.7 55.4 55.1 54.6 54.3 53.9 53.5 53.2 52.8 52.4 52.1 51.8 51.2 50.9 50.7 50.2 49.8 49.5 49.1 48.7 48.4 47.9 47.5 47.1 46.8 46.4 45.9 45.6 -99.0 +36 NY TMAX 12 45.3 44.8 44.5 44.0 43.7 43.5 42.9 42.6 42.5 41.9 41.6 41.5 41.1 40.7 40.6 40.4 39.8 39.6 39.5 39.2 38.7 38.6 38.6 38.4 38.0 37.7 37.6 37.5 37.3 37.0 36.9 +36 NY TMIN 1 22.4 22.2 21.9 21.8 21.6 21.6 21.4 21.2 21.0 21.0 20.7 20.6 20.5 20.5 20.4 20.4 20.3 20.3 20.2 20.2 20.0 19.9 20.0 20.0 20.0 20.0 20.0 20.1 20.1 20.1 20.2 +36 NY TMIN 2 20.1 20.2 20.4 20.5 20.7 20.7 20.8 21.0 21.0 21.2 21.4 21.5 21.7 21.8 21.9 22.2 22.4 22.7 22.8 23.0 23.3 23.4 23.8 24.0 24.2 24.5 24.8 25.1 25.2 -99.0 -99.0 +36 NY TMIN 3 25.4 25.6 26.1 26.3 26.6 26.8 27.2 27.5 27.8 28.0 28.4 28.7 29.0 29.3 29.6 29.9 30.2 30.6 30.8 31.1 31.4 31.7 31.9 32.4 32.7 32.9 33.2 33.6 33.9 34.2 34.4 +36 NY TMIN 4 34.8 35.1 35.3 35.7 36.0 36.3 36.6 37.0 37.2 37.6 38.0 38.2 38.6 39.0 39.2 39.6 40.0 40.2 40.6 40.9 41.2 41.5 41.9 42.2 42.5 43.0 43.2 43.6 44.0 44.3 -99.0 +36 NY TMIN 5 44.6 45.1 45.3 45.6 46.1 46.3 46.7 47.1 47.3 47.7 48.1 48.3 48.7 49.1 49.3 49.7 50.1 50.3 50.7 51.0 51.4 51.7 52.0 52.3 52.7 52.9 53.3 53.5 53.8 54.3 54.5 +36 NY TMIN 6 54.9 55.2 55.4 55.7 56.1 56.4 56.7 56.9 57.3 57.5 57.8 58.0 58.3 58.6 58.9 59.2 59.3 59.7 59.9 60.1 60.3 60.7 60.8 61.0 61.2 61.5 61.8 61.9 62.1 62.3 -99.0 +36 NY TMIN 7 62.5 62.8 62.9 63.1 63.3 63.4 63.6 63.7 63.9 64.0 64.3 64.4 64.5 64.5 64.5 64.5 64.6 64.6 64.7 64.7 64.8 65.0 65.1 65.1 65.3 65.2 65.2 65.1 65.1 64.7 64.7 +36 NY TMIN 8 64.8 64.7 64.6 64.6 64.6 64.5 64.4 64.4 64.3 64.2 64.1 63.9 63.6 63.6 63.5 63.5 63.3 63.1 62.9 62.6 62.5 62.4 62.2 62.0 61.6 61.5 61.4 61.3 60.8 60.5 60.4 +36 NY TMIN 9 60.3 59.8 59.4 59.3 59.2 58.7 58.4 58.3 58.0 57.4 57.3 57.1 56.6 56.3 56.1 55.6 55.3 55.1 54.5 54.2 54.0 53.5 53.2 52.7 52.3 52.1 51.5 51.2 50.9 50.4 -99.0 +36 NY TMIN 10 50.0 49.5 49.1 48.8 48.3 48.0 47.6 47.2 46.8 46.4 46.0 45.8 45.4 45.1 44.8 44.4 44.1 43.8 43.5 43.1 42.9 42.8 42.4 42.0 41.9 41.6 41.3 41.1 40.9 40.6 40.4 +36 NY TMIN 11 40.2 40.0 39.6 39.3 39.3 39.0 38.8 38.4 38.3 38.0 37.7 37.4 37.1 36.9 36.5 36.3 36.0 35.6 35.4 35.0 34.6 34.4 34.1 33.8 33.4 33.0 32.7 32.4 32.0 31.6 -99.0 +36 NY TMIN 12 31.3 30.9 30.6 30.1 29.9 29.6 29.1 28.8 28.5 28.2 27.8 27.6 27.3 26.8 26.7 26.4 26.1 25.7 25.6 25.3 25.0 24.7 24.5 24.2 24.0 23.7 23.5 23.3 23.0 22.8 22.6 +36 NY TAVG 1 29.5 29.4 29.4 29.2 29.0 28.7 28.5 28.5 28.4 28.4 28.3 28.3 28.1 28.0 27.9 27.9 27.8 27.7 27.7 27.6 27.4 27.5 27.6 27.6 27.6 27.7 27.7 27.7 27.8 28.0 28.1 +36 NY TAVG 2 28.1 28.1 28.4 28.5 28.5 28.6 28.7 28.8 28.9 29.1 29.3 29.6 29.6 29.7 30.0 30.2 30.5 30.7 30.8 31.1 31.4 31.7 31.8 32.2 32.4 32.8 33.0 33.4 33.6 -99.0 -99.0 +36 NY TAVG 3 33.7 34.0 34.3 34.6 35.0 35.2 35.6 35.9 36.2 36.5 36.9 37.1 37.5 37.9 38.2 38.4 38.8 39.2 39.5 39.7 40.1 40.4 40.8 41.1 41.4 41.8 42.1 42.3 42.8 43.2 43.3 +36 NY TAVG 4 43.8 44.2 44.4 44.8 45.2 45.5 45.8 46.2 46.5 46.8 47.3 47.6 47.8 48.3 48.5 48.9 49.4 49.6 50.1 50.4 50.6 51.1 51.5 51.8 52.2 52.5 52.8 53.4 53.7 53.9 -99.0 +36 NY TAVG 5 54.4 54.7 55.0 55.5 55.8 56.2 56.7 56.8 57.3 57.7 57.9 58.2 58.6 58.9 59.2 59.6 60.0 60.2 60.5 61.0 61.2 61.5 61.9 62.1 62.4 62.8 63.1 63.3 63.7 64.0 64.2 +36 NY TAVG 6 64.6 64.8 65.1 65.4 65.8 66.0 66.3 66.6 66.8 67.0 67.3 67.6 67.8 68.0 68.4 68.6 68.8 69.0 69.4 69.5 69.7 70.0 70.3 70.4 70.7 70.9 71.1 71.4 71.4 71.6 -99.0 +36 NY TAVG 7 71.8 72.2 72.4 72.4 72.6 72.7 72.8 73.1 73.3 73.4 73.4 73.5 73.6 73.6 73.7 73.8 73.9 74.0 74.1 74.1 74.2 74.2 74.3 74.3 74.4 74.3 74.3 74.2 74.1 74.1 74.0 +36 NY TAVG 8 74.1 74.0 74.0 73.7 73.6 73.6 73.5 73.3 73.2 73.2 73.1 73.0 72.8 72.6 72.5 72.3 72.2 72.0 71.9 71.7 71.4 71.2 71.1 70.9 70.8 70.3 70.2 70.0 69.9 69.4 69.2 +36 NY TAVG 9 69.1 68.8 68.4 68.2 68.0 67.6 67.3 67.1 66.8 66.4 66.2 65.9 65.6 65.2 65.0 64.7 64.1 64.0 63.6 63.1 62.9 62.4 62.1 61.9 61.3 61.0 60.7 60.1 59.9 59.4 -99.0 +36 NY TAVG 10 59.1 58.7 58.1 57.9 57.5 57.0 56.7 56.2 56.0 55.6 55.1 54.8 54.5 54.1 53.7 53.4 53.0 52.7 52.4 52.1 51.7 51.4 51.1 50.7 50.4 50.1 49.9 49.6 49.2 49.0 48.7 +36 NY TAVG 11 48.3 48.0 47.8 47.4 47.0 46.9 46.6 46.2 45.9 45.7 45.2 44.9 44.8 44.3 44.0 43.7 43.3 42.9 42.7 42.3 41.9 41.5 41.2 40.8 40.5 40.1 39.7 39.3 39.0 38.7 -99.0 +36 NY TAVG 12 38.2 37.8 37.5 37.1 36.8 36.5 36.1 35.7 35.5 35.1 34.8 34.5 34.2 33.9 33.6 33.4 33.0 32.8 32.5 32.3 31.9 31.6 31.5 31.3 31.1 30.8 30.5 30.4 30.2 29.9 29.7 +36 NY RVP 1 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 +36 NY RVP 2 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 -99.0 -99.0 +36 NY RVP 3 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 +36 NY RVP 4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 +36 NY RVP 5 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +36 NY RVP 6 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 -99.0 +36 NY RVP 7 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +36 NY RVP 8 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 +36 NY RVP 9 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 -99.0 +36 NY RVP 10 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 +36 NY RVP 11 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 10.4 -99.0 +36 NY RVP 12 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 +37 NC TMAX 1 50.4 50.3 50.3 50.2 50.1 50.1 50.0 49.8 49.8 49.7 49.7 49.7 49.7 49.7 49.7 49.8 49.8 50.0 50.0 50.1 50.1 50.2 50.2 50.4 50.4 50.6 50.7 50.9 51.0 51.1 51.2 +37 NC TMAX 2 51.4 51.7 51.9 52.0 52.2 52.4 52.6 52.7 53.0 53.3 53.4 53.6 53.9 54.1 54.3 54.5 54.8 55.1 55.3 55.5 55.8 56.1 56.3 56.5 56.9 57.2 57.4 57.6 57.8 -99.0 -99.0 +37 NC TMAX 3 58.1 58.3 58.5 58.8 59.3 59.5 59.6 60.2 60.3 60.6 61.0 61.3 61.5 61.9 62.2 62.5 62.7 63.2 63.4 63.6 64.0 64.4 64.6 64.9 65.3 65.5 65.9 66.1 66.5 66.8 67.1 +37 NC TMAX 4 67.4 67.7 68.1 68.3 68.6 69.0 69.2 69.5 69.8 70.1 70.4 70.7 70.9 71.2 71.5 71.7 72.0 72.3 72.5 72.7 72.9 73.2 73.5 73.7 73.9 74.1 74.4 74.6 74.8 75.0 -99.0 +37 NC TMAX 5 75.2 75.4 75.6 75.8 76.0 76.2 76.5 76.7 76.9 77.1 77.3 77.5 77.8 78.0 78.2 78.4 78.7 78.9 79.1 79.4 79.5 79.8 80.0 80.3 80.4 80.7 81.0 81.2 81.4 81.6 81.9 +37 NC TMAX 6 82.2 82.4 82.6 82.8 83.0 83.3 83.5 83.7 83.9 84.1 84.4 84.5 84.7 84.9 85.1 85.3 85.5 85.6 85.8 86.0 86.2 86.4 86.5 86.7 86.8 87.0 87.1 87.3 87.4 87.6 -99.0 +37 NC TMAX 7 87.6 87.8 87.9 88.2 88.3 88.3 88.4 88.4 88.4 88.4 88.5 88.6 88.7 88.7 88.7 88.8 88.9 89.0 89.1 89.1 89.1 89.1 89.0 88.9 88.9 88.9 88.8 88.7 88.6 88.6 88.5 +37 NC TMAX 8 88.6 88.4 88.3 88.2 88.2 88.1 88.0 87.9 87.8 87.8 87.7 87.5 87.4 87.3 87.1 87.1 86.9 86.9 86.7 86.5 86.4 86.2 86.1 86.0 85.8 85.8 85.5 85.4 85.2 85.1 84.9 +37 NC TMAX 9 84.7 84.5 84.3 84.1 84.0 83.8 83.6 83.3 83.1 82.9 82.7 82.4 82.2 81.9 81.7 81.4 81.1 80.9 80.6 80.3 80.1 79.7 79.4 79.2 78.9 78.5 78.1 77.9 77.5 77.2 -99.0 +37 NC TMAX 10 76.9 76.4 76.1 75.8 75.4 75.1 74.8 74.4 74.0 73.8 73.4 73.1 72.8 72.4 72.1 71.8 71.5 71.2 70.9 70.6 70.3 69.9 69.6 69.3 69.0 68.7 68.5 68.2 67.8 67.6 67.3 +37 NC TMAX 11 66.9 66.7 66.5 66.2 65.8 65.6 65.3 64.9 64.7 64.4 64.0 63.8 63.5 63.1 62.9 62.5 62.2 61.9 61.5 61.2 60.9 60.5 60.1 59.9 59.5 59.2 58.9 58.5 58.1 57.9 -99.0 +37 NC TMAX 12 57.5 57.1 56.9 56.5 56.1 55.9 55.6 55.2 55.0 54.7 54.4 54.1 53.9 53.6 53.4 53.1 52.9 52.7 52.5 52.3 52.1 51.9 51.7 51.6 51.4 51.2 51.1 50.9 50.8 50.6 50.6 +37 NC TMIN 1 29.6 29.6 29.6 29.4 29.4 29.3 29.3 29.3 29.2 29.2 29.1 29.0 29.0 28.9 28.9 28.9 28.8 28.8 28.8 28.8 28.8 28.9 28.9 29.0 29.1 29.2 29.2 29.2 29.3 29.3 29.4 +37 NC TMIN 2 29.3 29.4 29.5 29.6 29.7 29.8 29.9 30.0 30.1 30.2 30.4 30.6 30.7 30.8 31.0 31.2 31.4 31.7 31.8 31.9 32.2 32.6 32.7 32.8 33.1 33.5 33.7 34.0 34.2 -99.0 -99.0 +37 NC TMIN 3 34.4 34.6 34.8 35.2 35.5 35.7 35.9 36.3 36.5 36.7 37.1 37.4 37.6 37.8 38.2 38.4 38.6 38.9 39.1 39.4 39.6 39.8 40.1 40.4 40.6 40.8 41.1 41.3 41.5 41.7 41.9 +37 NC TMIN 4 42.2 42.4 42.6 42.8 43.1 43.3 43.5 43.8 44.1 44.3 44.5 44.8 45.1 45.3 45.6 45.9 46.2 46.4 46.7 47.0 47.2 47.6 47.9 48.1 48.4 48.8 49.1 49.4 49.8 50.0 -99.0 +37 NC TMIN 5 50.4 50.7 51.0 51.2 51.7 52.0 52.2 52.6 53.0 53.2 53.6 53.9 54.1 54.5 54.8 55.1 55.4 55.7 56.1 56.2 56.6 56.9 57.2 57.5 57.8 58.1 58.4 58.6 59.0 59.2 59.5 +37 NC TMIN 6 59.8 60.1 60.4 60.6 60.9 61.2 61.5 61.7 62.0 62.2 62.5 62.7 63.0 63.1 63.5 63.7 63.8 64.0 64.3 64.6 64.7 64.9 65.1 65.3 65.6 65.7 65.8 66.0 66.2 66.5 -99.0 +37 NC TMIN 7 66.6 66.7 66.8 66.9 67.1 67.4 67.6 67.6 67.6 67.6 67.7 67.8 67.8 67.9 68.0 68.1 68.2 68.3 68.3 68.4 68.5 68.5 68.5 68.5 68.4 68.3 68.2 68.1 68.1 68.0 67.9 +37 NC TMIN 8 68.0 67.8 67.8 67.7 67.6 67.5 67.5 67.4 67.3 67.2 67.1 67.0 66.9 66.7 66.7 66.6 66.4 66.3 66.2 66.0 65.9 65.8 65.7 65.5 65.4 65.2 65.1 64.9 64.8 64.7 64.4 +37 NC TMIN 9 64.3 64.1 63.9 63.7 63.5 63.3 63.1 62.8 62.6 62.2 62.0 61.6 61.4 61.1 60.8 60.4 60.0 59.7 59.3 58.9 58.5 58.0 57.7 57.2 56.9 56.3 55.9 55.3 54.9 54.3 -99.0 +37 NC TMIN 10 53.8 53.3 52.8 52.3 51.8 51.4 50.9 50.5 50.0 49.5 49.2 48.7 48.3 47.9 47.5 47.2 46.8 46.4 46.1 45.7 45.4 45.1 44.8 44.4 44.3 43.9 43.6 43.4 43.1 42.9 42.5 +37 NC TMIN 11 42.4 42.2 42.0 41.6 41.5 41.3 41.1 40.9 40.4 40.4 40.2 40.0 39.5 39.4 39.2 39.0 38.5 38.4 38.1 37.9 37.5 37.3 37.1 36.8 36.5 36.3 36.1 35.8 35.5 35.2 -99.0 +37 NC TMIN 12 35.0 34.7 34.4 34.2 34.0 33.7 33.4 33.2 33.0 32.8 32.5 32.3 32.2 32.0 31.8 31.6 31.5 31.2 31.2 30.9 30.8 30.7 30.5 30.4 30.3 30.2 30.0 29.9 29.9 29.7 29.7 +37 NC TAVG 1 40.1 40.0 40.0 40.0 39.8 39.8 39.7 39.5 39.5 39.4 39.3 39.3 39.3 39.2 39.3 39.2 39.3 39.4 39.4 39.5 39.6 39.6 39.7 39.8 39.9 40.0 40.0 40.0 40.1 40.2 40.3 +37 NC TAVG 2 40.4 40.5 40.8 40.9 41.0 41.1 41.3 41.4 41.6 41.8 41.9 42.1 42.3 42.4 42.7 42.9 43.2 43.4 43.6 43.8 44.0 44.3 44.5 44.7 45.1 45.3 45.6 45.9 46.1 -99.0 -99.0 +37 NC TAVG 3 46.2 46.5 46.8 47.0 47.4 47.7 47.9 48.2 48.4 48.7 49.0 49.3 49.6 49.9 50.2 50.5 50.7 50.9 51.3 51.6 51.8 52.0 52.5 52.6 52.9 53.3 53.5 53.7 53.9 54.4 54.6 +37 NC TAVG 4 54.7 55.1 55.4 55.6 55.9 56.2 56.4 56.7 56.9 57.2 57.5 57.8 58.1 58.3 58.5 58.8 59.1 59.4 59.6 59.8 60.2 60.4 60.7 61.0 61.2 61.5 61.7 62.1 62.3 62.5 -99.0 +37 NC TAVG 5 62.8 63.0 63.4 63.6 63.8 64.1 64.4 64.6 64.9 65.2 65.5 65.7 66.0 66.3 66.6 66.7 67.0 67.4 67.6 67.8 68.0 68.4 68.6 68.8 69.1 69.5 69.7 69.9 70.1 70.5 70.7 +37 NC TAVG 6 71.0 71.3 71.5 71.7 72.0 72.3 72.5 72.7 72.9 73.1 73.4 73.6 73.8 74.0 74.3 74.5 74.7 74.9 75.0 75.2 75.5 75.7 75.8 76.0 76.1 76.3 76.6 76.7 76.8 76.9 -99.0 +37 NC TAVG 7 77.1 77.2 77.4 77.6 77.7 77.9 78.0 78.0 78.0 78.1 78.1 78.2 78.3 78.3 78.4 78.4 78.6 78.7 78.7 78.8 78.9 78.8 78.8 78.8 78.7 78.6 78.5 78.4 78.3 78.3 78.2 +37 NC TAVG 8 78.3 78.2 78.1 78.0 77.9 77.8 77.8 77.7 77.6 77.5 77.4 77.3 77.1 77.0 76.9 76.8 76.7 76.6 76.5 76.3 76.1 76.0 75.9 75.8 75.7 75.5 75.4 75.2 75.0 74.9 74.7 +37 NC TAVG 9 74.6 74.3 74.1 74.0 73.8 73.6 73.3 73.0 72.9 72.7 72.3 72.0 71.9 71.5 71.3 71.0 70.6 70.3 70.0 69.7 69.2 69.0 68.5 68.2 67.9 67.4 67.0 66.7 66.2 65.8 -99.0 +37 NC TAVG 10 65.3 65.0 64.5 64.1 63.6 63.2 62.9 62.4 62.1 61.7 61.3 61.0 60.6 60.2 59.9 59.5 59.1 58.9 58.4 58.2 57.9 57.5 57.2 56.9 56.7 56.3 56.0 55.8 55.5 55.2 55.0 +37 NC TAVG 11 54.7 54.5 54.2 54.0 53.7 53.4 53.2 53.0 52.6 52.3 52.2 51.9 51.5 51.3 51.0 50.8 50.4 50.2 49.9 49.5 49.3 49.0 48.7 48.3 48.1 47.8 47.4 47.2 46.9 46.6 -99.0 +37 NC TAVG 12 46.2 45.9 45.7 45.3 45.1 44.8 44.6 44.2 44.0 43.8 43.5 43.2 43.0 42.8 42.7 42.4 42.1 42.0 41.8 41.7 41.5 41.2 41.1 41.0 40.9 40.8 40.6 40.5 40.3 40.1 40.1 +37 NC RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +37 NC RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +37 NC RVP 3 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +37 NC RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +37 NC RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +37 NC RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +37 NC RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +37 NC RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +37 NC RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +37 NC RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +37 NC RVP 11 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 +37 NC RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +38 ND TMAX 1 17.9 17.7 17.4 17.3 17.3 17.2 16.9 16.8 16.8 16.7 16.5 16.5 16.5 16.5 16.6 16.6 16.8 16.9 17.0 17.2 17.3 17.4 17.5 17.9 18.1 18.4 18.5 18.8 19.2 19.4 19.7 +38 ND TMAX 2 20.1 20.4 20.7 21.2 21.4 21.8 22.2 22.4 22.9 23.2 23.6 24.0 24.2 24.6 25.0 25.2 25.7 26.1 26.2 26.7 27.1 27.3 27.8 28.1 28.4 28.8 29.1 29.4 29.6 -99.0 -99.0 +38 ND TMAX 3 29.8 30.2 30.5 30.8 31.2 31.7 32.0 32.5 32.9 33.3 33.8 34.2 34.6 35.1 35.6 36.1 36.5 37.1 37.7 38.3 38.8 39.3 39.8 40.5 41.1 41.7 42.2 42.8 43.5 44.1 44.7 +38 ND TMAX 4 45.4 46.2 46.8 47.3 48.1 48.7 49.3 49.9 50.5 51.0 51.7 52.4 52.9 53.5 53.9 54.6 55.3 55.7 56.4 57.0 57.5 58.0 58.6 59.1 59.6 60.1 60.7 61.1 61.8 62.2 -99.0 +38 ND TMAX 5 62.7 63.1 63.6 64.1 64.6 65.0 65.5 65.9 66.4 66.7 67.2 67.6 68.0 68.4 68.7 69.1 69.5 69.8 70.2 70.5 70.8 71.1 71.4 71.7 72.0 72.3 72.6 72.8 72.9 73.4 73.6 +38 ND TMAX 6 73.7 73.9 74.1 74.5 74.7 74.8 75.1 75.2 75.5 75.7 76.0 76.2 76.3 76.6 76.9 77.1 77.2 77.4 77.5 77.8 78.2 78.3 78.4 78.6 78.9 79.2 79.4 79.5 79.6 80.0 -99.0 +38 ND TMAX 7 80.1 80.3 80.4 80.7 81.0 81.1 81.2 81.3 81.5 81.6 81.9 82.1 82.1 82.3 82.4 82.5 82.6 82.7 82.7 82.8 83.0 83.2 83.2 83.3 83.4 83.4 83.5 83.5 83.6 83.6 83.7 +38 ND TMAX 8 83.7 83.7 83.7 83.7 83.6 83.6 83.6 83.5 83.4 83.2 83.1 82.9 82.7 82.6 82.5 82.2 81.9 81.7 81.4 81.3 80.7 80.5 80.4 79.9 79.5 79.2 78.7 78.4 77.9 77.4 77.1 +38 ND TMAX 9 76.6 76.1 75.6 75.1 74.7 74.3 73.7 73.3 72.9 72.5 72.0 71.6 71.2 70.8 70.4 69.9 69.5 69.0 68.8 68.3 67.9 67.5 67.2 66.8 66.4 66.0 65.8 65.4 65.0 64.6 -99.0 +38 ND TMAX 10 64.4 64.0 63.6 63.3 62.7 62.4 61.8 61.5 60.9 60.6 60.0 59.6 58.9 58.4 57.8 57.2 56.6 56.1 55.5 54.8 54.1 53.3 52.7 52.1 51.2 50.6 49.9 49.0 48.2 47.3 46.5 +38 ND TMAX 11 45.8 45.0 44.1 43.3 42.5 41.7 41.0 40.3 39.5 38.7 38.2 37.5 36.7 36.2 35.5 34.8 34.4 33.7 33.1 32.6 32.0 31.6 31.0 30.6 30.0 29.6 29.1 28.7 28.2 27.9 -99.0 +38 ND TMAX 12 27.4 27.0 26.8 26.2 26.0 25.6 25.3 24.9 24.5 24.2 23.8 23.5 23.3 22.7 22.5 22.3 21.9 21.6 21.4 21.0 20.8 20.5 20.2 19.8 19.7 19.4 19.1 18.9 18.7 18.5 18.1 +38 ND TMIN 1 -1.9 -2.2 -2.6 -2.7 -2.8 -2.9 -3.2 -3.3 -3.3 -3.5 -3.5 -3.6 -3.6 -3.7 -3.7 -3.6 -3.6 -3.4 -3.4 -3.3 -3.2 -3.0 -2.7 -2.6 -2.4 -2.2 -1.9 -1.7 -1.4 -1.1 -0.7 +38 ND TMIN 2 -0.5 -0.1 0.3 0.6 1.1 1.3 1.8 2.2 2.5 2.8 3.2 3.6 4.1 4.4 4.8 5.1 5.6 6.0 6.4 6.8 7.2 7.6 8.1 8.5 8.9 9.2 9.7 10.0 10.3 -99.0 -99.0 +38 ND TMIN 3 10.6 10.9 11.4 11.8 12.2 12.6 13.0 13.5 13.9 14.4 14.7 15.2 15.6 16.1 16.5 16.9 17.3 17.8 18.1 18.7 19.0 19.5 19.9 20.4 20.7 21.2 21.6 22.0 22.4 22.9 23.3 +38 ND TMIN 4 23.8 24.1 24.6 25.0 25.4 25.9 26.3 26.8 27.2 27.5 28.1 28.5 28.9 29.3 29.7 30.2 30.6 31.1 31.5 31.9 32.3 32.9 33.3 33.6 34.1 34.5 35.0 35.4 35.9 36.3 -99.0 +38 ND TMIN 5 36.8 37.2 37.6 38.1 38.4 38.9 39.3 39.8 40.1 40.6 41.0 41.3 41.8 42.1 42.6 42.9 43.1 43.7 43.9 44.3 44.7 45.0 45.4 45.7 46.0 46.5 46.8 47.0 47.4 47.7 48.0 +38 ND TMIN 6 48.3 48.6 48.9 49.2 49.5 49.8 50.2 50.4 50.6 50.8 51.2 51.4 51.6 51.8 52.2 52.3 52.5 52.7 53.1 53.3 53.4 53.6 53.8 54.1 54.2 54.4 54.5 54.6 54.9 55.1 -99.0 +38 ND TMIN 7 55.2 55.4 55.4 55.5 55.7 55.9 56.1 56.2 56.3 56.3 56.3 56.4 56.5 56.5 56.7 56.8 56.9 56.9 56.9 57.0 57.0 57.0 57.1 57.1 57.1 57.1 57.1 57.0 57.0 57.0 56.9 +38 ND TMIN 8 57.0 56.9 56.8 56.6 56.6 56.5 56.5 56.3 56.2 56.1 55.8 55.6 55.5 55.3 55.1 54.7 54.5 54.4 54.1 53.7 53.5 53.2 52.9 52.5 52.2 51.9 51.4 51.1 50.6 50.4 49.9 +38 ND TMIN 9 49.4 49.1 48.5 48.2 47.8 47.3 47.0 46.5 46.2 45.8 45.3 44.9 44.6 44.2 43.8 43.3 43.1 42.7 42.3 42.0 41.4 41.2 40.9 40.3 40.1 39.9 39.3 39.1 38.9 38.3 -99.0 +38 ND TMIN 10 38.1 37.9 37.3 37.1 36.7 36.3 36.0 35.6 35.2 34.8 34.4 34.0 33.6 33.2 32.8 32.3 31.8 31.4 30.9 30.5 30.1 29.6 29.1 28.7 28.1 27.7 27.1 26.6 26.0 25.6 25.0 +38 ND TMIN 11 24.6 23.9 23.5 22.9 22.5 21.9 21.3 20.8 20.2 19.8 19.2 18.7 18.2 17.8 17.2 16.8 16.2 15.8 15.2 14.7 14.2 13.7 13.2 12.8 12.2 11.8 11.2 10.8 10.3 9.9 -99.0 +38 ND TMIN 12 9.4 8.9 8.5 8.0 7.5 7.1 6.7 6.2 5.9 5.4 5.0 4.6 4.2 3.9 3.4 3.1 2.7 2.3 2.0 1.6 1.3 1.0 0.6 0.3 0.0 -0.4 -0.6 -0.9 -1.1 -1.6 -1.8 +38 ND TAVG 1 8.0 7.8 7.5 7.4 7.3 7.2 7.0 6.7 6.6 6.6 6.5 6.4 6.4 6.5 6.5 6.5 6.7 6.8 6.9 7.0 7.1 7.2 7.4 7.7 7.9 8.1 8.2 8.7 9.0 9.2 9.5 +38 ND TAVG 2 9.9 10.1 10.6 11.0 11.3 11.6 12.0 12.4 12.7 13.0 13.4 13.8 14.2 14.5 14.9 15.3 15.7 15.9 16.4 16.8 17.2 17.6 17.8 18.4 18.7 19.0 19.4 19.7 20.0 -99.0 -99.0 +38 ND TAVG 3 20.2 20.5 21.0 21.3 21.7 22.2 22.6 23.0 23.5 23.8 24.4 24.8 25.0 25.5 26.0 26.5 27.1 27.4 28.1 28.3 29.0 29.4 30.0 30.3 31.0 31.4 31.9 32.4 32.9 33.5 34.1 +38 ND TAVG 4 34.6 35.1 35.8 36.1 36.9 37.2 37.9 38.3 38.9 39.3 39.9 40.3 40.9 41.4 41.9 42.4 42.9 43.5 43.9 44.5 44.9 45.5 45.9 46.5 46.9 47.4 47.8 48.4 48.8 49.3 -99.0 +38 ND TAVG 5 49.7 50.2 50.7 51.1 51.6 52.0 52.4 52.9 53.2 53.7 54.1 54.5 54.9 55.2 55.6 56.0 56.3 56.8 57.1 57.5 57.8 58.1 58.4 58.8 59.0 59.3 59.6 60.0 60.2 60.5 60.8 +38 ND TAVG 6 61.1 61.3 61.5 61.9 62.1 62.3 62.5 62.9 63.1 63.3 63.5 63.8 64.0 64.2 64.4 64.6 64.9 65.1 65.4 65.6 65.7 66.0 66.2 66.4 66.6 66.8 66.9 67.2 67.4 67.6 -99.0 +38 ND TAVG 7 67.6 67.9 68.0 68.2 68.3 68.5 68.6 68.8 69.0 69.1 69.1 69.2 69.3 69.3 69.5 69.7 69.7 69.9 70.0 70.0 70.1 70.1 70.1 70.1 70.2 70.2 70.3 70.3 70.4 70.4 70.4 +38 ND TAVG 8 70.4 70.3 70.3 70.2 70.2 70.1 69.9 69.8 69.8 69.7 69.5 69.4 69.2 68.9 68.8 68.6 68.3 68.1 67.8 67.5 67.2 66.8 66.6 66.2 66.0 65.5 65.1 64.7 64.2 64.0 63.4 +38 ND TAVG 9 63.0 62.5 62.1 61.7 61.2 60.9 60.4 59.9 59.5 59.0 58.7 58.3 57.9 57.5 57.0 56.8 56.3 55.8 55.5 55.0 54.8 54.4 54.0 53.7 53.3 52.9 52.7 52.2 51.9 51.6 -99.0 +38 ND TAVG 10 51.1 50.8 50.5 50.1 49.7 49.3 49.0 48.6 48.1 47.7 47.2 46.8 46.2 45.9 45.3 44.9 44.2 43.9 43.2 42.7 42.1 41.4 41.0 40.3 39.7 39.1 38.4 37.8 37.2 36.5 35.8 +38 ND TAVG 11 35.2 34.5 33.8 33.2 32.5 31.7 31.3 30.6 29.9 29.4 28.6 28.2 27.5 27.0 26.5 25.8 25.4 24.6 24.1 23.6 23.1 22.6 22.1 21.6 21.1 20.8 20.1 19.8 19.2 19.0 -99.0 +38 ND TAVG 12 18.3 18.0 17.6 17.2 16.8 16.3 16.1 15.5 15.2 14.8 14.4 14.1 13.7 13.4 13.0 12.7 12.4 11.9 11.7 11.4 10.9 10.7 10.5 10.0 9.8 9.7 9.2 8.9 8.7 8.5 8.2 +38 ND RVP 1 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +38 ND RVP 2 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 -99.0 -99.0 +38 ND RVP 3 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +38 ND RVP 4 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 +38 ND RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +38 ND RVP 6 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 -99.0 +38 ND RVP 7 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 +38 ND RVP 8 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 +38 ND RVP 9 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 8.2 -99.0 +38 ND RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +38 ND RVP 11 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 +38 ND RVP 12 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +39 OH TMAX 1 35.4 35.2 35.0 34.8 34.8 34.6 34.5 34.5 34.5 34.4 34.3 34.3 34.2 34.1 34.1 34.0 34.0 34.0 34.1 34.1 34.2 34.3 34.3 34.4 34.4 34.6 34.6 34.7 34.9 35.1 35.2 +39 OH TMAX 2 35.4 35.5 35.7 35.8 36.1 36.3 36.5 36.7 36.8 37.1 37.5 37.7 37.9 38.1 38.5 38.8 39.0 39.3 39.7 40.0 40.3 40.8 41.0 41.4 41.8 42.1 42.4 42.9 43.1 -99.0 -99.0 +39 OH TMAX 3 43.3 43.7 44.1 44.5 44.9 45.3 45.7 46.1 46.6 46.9 47.3 47.7 48.1 48.5 48.8 49.3 49.7 50.0 50.4 50.8 51.2 51.6 52.0 52.4 52.8 53.1 53.6 54.0 54.3 54.7 55.1 +39 OH TMAX 4 55.4 55.9 56.1 56.6 56.9 57.4 57.7 58.1 58.5 58.9 59.2 59.7 59.9 60.4 60.7 61.1 61.5 61.8 62.3 62.6 63.0 63.3 63.7 64.0 64.5 64.8 65.2 65.5 65.9 66.3 -99.0 +39 OH TMAX 5 66.6 67.1 67.4 67.7 68.1 68.4 68.9 69.1 69.4 69.9 70.2 70.5 70.9 71.1 71.5 71.9 72.2 72.5 72.8 73.2 73.4 73.8 74.1 74.4 74.7 75.0 75.3 75.7 75.9 76.2 76.6 +39 OH TMAX 6 76.8 77.0 77.3 77.7 77.9 78.1 78.5 78.8 78.9 79.1 79.4 79.8 79.8 80.0 80.3 80.6 80.8 80.9 81.1 81.3 81.5 81.8 81.9 82.1 82.2 82.4 82.6 82.7 82.9 83.0 -99.0 +39 OH TMAX 7 83.1 83.2 83.4 83.6 83.7 83.8 83.9 83.9 83.9 84.0 84.0 84.1 84.2 84.2 84.2 84.3 84.5 84.5 84.6 84.7 84.6 84.6 84.6 84.5 84.5 84.4 84.3 84.2 84.1 84.0 84.0 +39 OH TMAX 8 84.0 84.0 83.8 83.8 83.7 83.7 83.6 83.5 83.4 83.3 83.2 83.0 82.8 82.7 82.5 82.5 82.4 82.2 82.1 81.9 81.7 81.5 81.4 81.3 81.1 80.9 80.6 80.5 80.3 80.1 79.9 +39 OH TMAX 9 79.7 79.5 79.3 79.1 78.9 78.6 78.3 78.1 77.8 77.6 77.2 77.0 76.7 76.4 76.1 75.8 75.5 75.2 74.8 74.5 74.1 73.8 73.4 73.0 72.6 72.3 71.9 71.4 71.1 70.7 -99.0 +39 OH TMAX 10 70.3 69.8 69.4 69.0 68.6 68.2 67.7 67.3 66.9 66.5 66.1 65.6 65.2 64.8 64.3 64.0 63.5 63.1 62.7 62.2 61.8 61.3 60.9 60.5 60.1 59.6 59.2 58.7 58.4 57.9 57.5 +39 OH TMAX 11 57.1 56.5 56.3 55.6 55.4 54.9 54.5 54.1 53.6 53.2 52.8 52.3 51.9 51.4 51.1 50.7 50.2 49.8 49.3 48.9 48.4 48.1 47.7 47.2 46.9 46.4 46.0 45.6 45.1 44.8 -99.0 +39 OH TMAX 12 44.3 43.9 43.6 43.1 42.8 42.4 42.0 41.7 41.3 40.9 40.6 40.3 39.9 39.6 39.3 39.0 38.8 38.4 38.2 37.9 37.6 37.3 37.2 37.0 36.7 36.5 36.3 36.1 36.0 35.6 35.5 +39 OH TMIN 1 20.3 19.9 19.8 19.6 19.5 19.4 19.1 18.9 18.8 18.7 18.6 18.6 18.5 18.4 18.3 18.2 18.2 18.1 18.0 18.0 17.9 18.0 18.0 18.1 18.1 18.2 18.2 18.3 18.5 18.5 18.6 +39 OH TMIN 2 18.7 18.8 18.8 19.0 19.2 19.3 19.5 19.7 19.8 20.0 20.2 20.3 20.5 20.7 21.0 21.2 21.4 21.7 21.9 22.2 22.4 22.7 23.0 23.3 23.5 24.0 24.2 24.5 24.6 -99.0 -99.0 +39 OH TMIN 3 24.8 25.2 25.5 25.8 26.2 26.5 26.7 27.1 27.4 27.6 27.9 28.4 28.6 28.9 29.3 29.5 29.8 30.2 30.4 30.7 31.0 31.3 31.6 31.9 32.3 32.4 32.7 33.1 33.3 33.6 33.9 +39 OH TMIN 4 34.1 34.5 34.8 35.0 35.4 35.6 35.9 36.1 36.5 36.9 37.1 37.5 37.8 38.1 38.4 38.7 39.2 39.5 39.7 40.1 40.5 40.7 41.2 41.5 41.8 42.2 42.5 43.0 43.4 43.6 -99.0 +39 OH TMIN 5 44.0 44.4 44.7 45.3 45.6 45.9 46.3 46.6 47.0 47.4 47.6 48.1 48.4 48.7 49.2 49.4 49.8 50.2 50.5 50.9 51.3 51.5 51.9 52.3 52.5 52.9 53.2 53.5 53.8 54.1 54.5 +39 OH TMIN 6 54.8 55.0 55.4 55.7 56.0 56.4 56.7 56.9 57.1 57.4 57.7 57.9 58.1 58.5 58.7 58.9 59.1 59.4 59.6 59.8 60.0 60.2 60.4 60.6 60.8 60.9 61.0 61.2 61.5 61.6 -99.0 +39 OH TMIN 7 61.8 61.9 62.0 62.1 62.1 62.4 62.6 62.6 62.7 62.8 62.8 62.9 62.9 62.9 63.0 63.0 63.1 63.2 63.3 63.3 63.3 63.4 63.4 63.3 63.3 63.2 63.2 63.1 63.0 62.9 62.8 +39 OH TMIN 8 62.9 62.8 62.7 62.6 62.5 62.4 62.3 62.2 62.1 62.1 61.9 61.7 61.6 61.6 61.4 61.2 61.1 60.9 60.7 60.6 60.5 60.3 60.1 59.8 59.7 59.6 59.3 59.1 58.9 58.7 58.5 +39 OH TMIN 9 58.3 58.0 57.8 57.5 57.3 57.0 56.7 56.6 56.1 55.9 55.6 55.3 54.9 54.7 54.4 54.0 53.7 53.3 52.9 52.6 52.1 51.8 51.4 51.1 50.7 50.3 49.8 49.4 49.0 48.5 -99.0 +39 OH TMIN 10 48.1 47.6 47.2 46.8 46.4 45.9 45.5 45.2 44.7 44.5 44.1 43.6 43.3 42.9 42.5 42.3 41.8 41.5 41.4 40.9 40.6 40.4 40.0 39.7 39.5 39.3 38.9 38.7 38.5 38.2 37.9 +39 OH TMIN 11 37.7 37.5 37.3 37.0 36.7 36.6 36.3 36.0 35.7 35.6 35.2 34.9 34.7 34.4 34.0 33.8 33.6 33.2 32.9 32.6 32.3 32.0 31.6 31.3 31.0 30.7 30.2 30.0 29.6 29.2 -99.0 +39 OH TMIN 12 29.0 28.5 28.2 28.0 27.5 27.3 27.0 26.5 26.3 26.0 25.6 25.4 25.1 24.7 24.5 24.2 23.9 23.6 23.4 23.1 22.7 22.6 22.3 22.0 21.7 21.6 21.3 21.1 20.8 20.6 20.5 +39 OH TAVG 1 27.7 27.6 27.5 27.3 27.2 27.0 26.9 26.7 26.6 26.5 26.5 26.4 26.4 26.2 26.1 26.1 26.1 26.1 26.0 26.0 26.0 26.1 26.2 26.3 26.3 26.4 26.4 26.6 26.7 26.8 26.9 +39 OH TAVG 2 27.1 27.2 27.3 27.5 27.6 27.8 28.0 28.2 28.4 28.6 28.7 29.0 29.4 29.5 29.7 30.0 30.3 30.6 30.8 31.2 31.5 31.7 32.0 32.3 32.6 33.0 33.4 33.7 33.9 -99.0 -99.0 +39 OH TAVG 3 34.1 34.4 34.8 35.2 35.6 35.9 36.3 36.6 37.0 37.4 37.6 38.0 38.4 38.7 39.0 39.5 39.8 40.1 40.5 40.9 41.1 41.5 41.9 42.1 42.5 42.9 43.1 43.4 43.9 44.2 44.4 +39 OH TAVG 4 44.9 45.2 45.4 45.9 46.2 46.5 46.9 47.2 47.5 47.9 48.2 48.5 49.0 49.2 49.6 50.0 50.3 50.6 51.0 51.3 51.7 52.1 52.5 52.8 53.2 53.5 53.9 54.3 54.6 55.0 -99.0 +39 OH TAVG 5 55.3 55.8 56.1 56.4 56.9 57.2 57.6 58.0 58.2 58.7 59.0 59.3 59.7 60.1 60.3 60.7 61.0 61.3 61.7 62.1 62.3 62.7 63.0 63.3 63.7 64.0 64.3 64.6 64.9 65.2 65.5 +39 OH TAVG 6 65.8 66.2 66.4 66.6 66.9 67.3 67.5 67.7 68.1 68.4 68.5 68.8 69.1 69.3 69.5 69.7 69.9 70.2 70.4 70.5 70.7 71.0 71.2 71.4 71.5 71.6 71.8 72.0 72.2 72.4 -99.0 +39 OH TAVG 7 72.5 72.6 72.7 72.9 73.0 73.2 73.3 73.4 73.4 73.4 73.5 73.5 73.6 73.6 73.7 73.7 73.7 73.8 73.9 74.0 74.0 74.0 74.0 73.9 73.9 73.8 73.7 73.6 73.6 73.5 73.4 +39 OH TAVG 8 73.5 73.4 73.4 73.3 73.2 73.1 73.0 72.8 72.7 72.6 72.5 72.4 72.3 72.2 72.0 71.8 71.7 71.5 71.4 71.3 71.2 70.9 70.7 70.6 70.4 70.3 69.9 69.8 69.6 69.5 69.3 +39 OH TAVG 9 68.9 68.7 68.6 68.4 68.1 67.8 67.6 67.4 67.0 66.7 66.5 66.2 65.8 65.5 65.3 64.9 64.6 64.3 63.8 63.6 63.2 62.8 62.4 62.1 61.7 61.3 60.9 60.4 60.1 59.6 -99.0 +39 OH TAVG 10 59.2 58.7 58.4 57.9 57.5 57.1 56.7 56.3 55.8 55.5 55.0 54.7 54.4 53.8 53.5 53.1 52.7 52.4 51.9 51.6 51.3 50.8 50.6 50.1 49.8 49.5 49.1 48.7 48.5 48.0 47.7 +39 OH TAVG 11 47.5 47.0 46.7 46.4 46.0 45.7 45.4 45.0 44.7 44.4 44.0 43.7 43.4 42.9 42.6 42.3 41.8 41.5 41.2 40.8 40.4 40.2 39.6 39.4 38.9 38.5 38.2 37.8 37.5 37.1 -99.0 +39 OH TAVG 12 36.7 36.4 35.8 35.6 35.3 34.8 34.5 34.1 33.7 33.5 33.1 32.8 32.6 32.1 31.9 31.7 31.4 31.0 30.7 30.6 30.2 29.9 29.8 29.6 29.2 29.0 28.8 28.6 28.5 28.2 28.0 +39 OH RVP 1 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +39 OH RVP 2 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 -99.0 -99.0 +39 OH RVP 3 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 +39 OH RVP 4 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 -99.0 +39 OH RVP 5 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 +39 OH RVP 6 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 -99.0 +39 OH RVP 7 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 +39 OH RVP 8 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 +39 OH RVP 9 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 -99.0 +39 OH RVP 10 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 9.0 +39 OH RVP 11 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 11.8 -99.0 +39 OH RVP 12 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +40 OK TMAX 1 47.2 47.2 47.1 47.0 47.0 46.8 46.7 46.6 46.6 46.6 46.6 46.6 46.7 46.7 46.9 47.0 47.1 47.2 47.3 47.3 47.4 47.6 47.7 48.1 48.2 48.4 48.6 48.9 49.2 49.3 49.8 +40 OK TMAX 2 50.0 50.2 50.5 50.8 51.1 51.3 51.7 52.1 52.2 52.6 52.9 53.1 53.3 53.7 54.1 54.2 54.6 54.9 55.2 55.5 55.8 56.1 56.3 56.7 57.0 57.2 57.5 57.9 58.0 -99.0 -99.0 +40 OK TMAX 3 58.1 58.4 58.9 59.0 59.3 59.7 60.0 60.3 60.6 61.0 61.1 61.5 61.9 62.1 62.3 62.9 63.1 63.2 63.7 64.1 64.2 64.5 65.1 65.2 65.5 66.0 66.2 66.6 66.8 67.2 67.6 +40 OK TMAX 4 67.8 68.2 68.6 68.7 69.0 69.3 69.7 70.0 70.3 70.6 70.9 71.1 71.5 71.7 71.9 72.2 72.5 72.8 73.0 73.2 73.6 73.8 73.9 74.2 74.6 74.7 74.9 75.2 75.5 75.7 -99.0 +40 OK TMAX 5 75.8 76.1 76.4 76.6 76.7 76.9 77.3 77.5 77.7 77.9 78.1 78.4 78.7 78.9 79.1 79.4 79.7 79.9 80.2 80.6 80.7 80.9 81.3 81.6 81.8 82.1 82.5 82.7 82.9 83.2 83.6 +40 OK TMAX 6 83.8 84.1 84.5 84.7 84.8 85.3 85.6 85.7 86.1 86.4 86.6 86.8 87.2 87.5 87.6 87.8 88.3 88.5 88.6 88.7 89.2 89.4 89.6 89.7 90.1 90.4 90.6 90.7 91.0 91.3 -99.0 +40 OK TMAX 7 91.5 91.6 91.7 92.0 92.2 92.5 92.6 92.7 92.8 93.0 93.1 93.4 93.5 93.6 93.7 93.8 94.0 94.0 94.1 94.2 94.2 94.4 94.4 94.5 94.6 94.7 94.7 94.7 94.7 94.7 94.7 +40 OK TMAX 8 94.7 94.7 94.7 94.7 94.6 94.6 94.5 94.5 94.5 94.4 94.2 94.1 93.9 93.7 93.6 93.5 93.3 93.1 92.9 92.7 92.6 92.3 92.0 91.8 91.6 91.3 90.9 90.7 90.4 90.1 89.6 +40 OK TMAX 9 89.4 89.2 88.6 88.4 88.0 87.6 87.3 87.2 86.6 86.4 86.1 85.7 85.4 85.2 84.7 84.5 84.2 83.8 83.5 83.3 82.9 82.6 82.4 81.9 81.7 81.4 81.0 80.8 80.5 80.2 -99.0 +40 OK TMAX 10 79.9 79.6 79.3 79.1 78.7 78.3 78.1 77.7 77.3 77.0 76.6 76.2 75.9 75.3 75.0 74.7 74.2 73.9 73.3 72.9 72.6 72.0 71.6 71.1 70.7 70.1 69.7 69.1 68.7 68.2 67.6 +40 OK TMAX 11 67.1 66.6 66.1 65.5 65.0 64.5 64.1 63.6 63.1 62.6 62.1 61.7 61.2 60.8 60.4 60.0 59.6 59.1 58.7 58.2 57.9 57.5 57.1 56.7 56.4 56.1 55.6 55.3 54.9 54.6 -99.0 +40 OK TMAX 12 54.3 53.9 53.6 53.4 53.0 52.6 52.5 52.2 51.8 51.6 51.4 51.0 50.7 50.5 50.4 50.1 49.8 49.6 49.5 49.2 49.0 48.8 48.6 48.5 48.2 48.1 47.9 47.8 47.6 47.5 47.4 +40 OK TMIN 1 25.1 24.8 24.8 24.7 24.7 24.6 24.6 24.5 24.5 24.4 24.3 24.3 24.3 24.3 24.4 24.4 24.5 24.5 24.6 24.6 24.7 24.7 24.8 24.8 25.0 25.2 25.4 25.6 25.7 25.8 26.0 +40 OK TMIN 2 26.4 26.5 26.7 26.9 27.2 27.4 27.6 27.8 28.1 28.3 28.6 28.7 29.1 29.3 29.5 29.7 30.1 30.3 30.6 30.8 31.2 31.4 31.7 32.1 32.3 32.6 32.8 33.2 33.3 -99.0 -99.0 +40 OK TMIN 3 33.5 33.8 34.1 34.5 34.7 35.1 35.4 35.6 35.9 36.3 36.5 36.8 37.2 37.5 37.7 38.0 38.4 38.6 38.9 39.4 39.5 39.8 40.1 40.5 40.7 41.0 41.3 41.6 41.9 42.2 42.5 +40 OK TMIN 4 42.8 43.1 43.3 43.7 44.0 44.3 44.6 44.9 45.2 45.5 45.9 46.1 46.4 46.8 47.0 47.4 47.6 48.0 48.4 48.6 49.0 49.3 49.7 50.0 50.3 50.7 51.1 51.3 51.7 52.1 -99.0 +40 OK TMIN 5 52.4 52.7 53.1 53.4 53.8 54.1 54.4 54.6 55.1 55.5 55.6 56.1 56.5 56.6 57.1 57.4 57.6 58.1 58.4 58.6 59.0 59.2 59.6 59.9 60.2 60.5 60.7 61.1 61.4 61.6 62.1 +40 OK TMIN 6 62.3 62.6 62.9 63.2 63.4 63.6 64.1 64.2 64.5 64.8 65.1 65.2 65.5 65.8 65.9 66.2 66.4 66.7 66.8 67.1 67.4 67.6 67.7 67.8 68.0 68.4 68.6 68.7 68.7 68.9 -99.0 +40 OK TMIN 7 69.2 69.4 69.5 69.6 69.7 69.8 70.0 70.2 70.4 70.4 70.5 70.5 70.5 70.5 70.6 70.6 70.7 70.9 70.9 70.9 71.0 71.1 71.1 71.0 71.0 71.0 71.0 71.1 70.9 70.7 70.6 +40 OK TMIN 8 70.7 70.6 70.6 70.5 70.4 70.3 70.3 70.2 70.2 70.0 69.8 69.8 69.6 69.4 69.3 69.2 69.0 68.9 68.7 68.5 68.3 68.1 67.9 67.7 67.5 67.2 67.0 66.8 66.5 66.2 66.0 +40 OK TMIN 9 65.8 65.3 65.2 65.0 64.6 64.2 64.0 63.8 63.3 63.1 62.8 62.4 62.2 61.9 61.5 61.2 60.7 60.5 60.1 59.7 59.3 59.0 58.6 58.2 57.9 57.5 57.1 56.6 56.3 55.9 -99.0 +40 OK TMIN 10 55.5 55.0 54.6 54.2 53.8 53.3 52.9 52.5 52.2 51.8 51.4 50.9 50.4 50.1 49.6 49.3 48.8 48.4 48.1 47.6 47.3 46.8 46.5 46.0 45.6 45.2 44.8 44.5 44.0 43.7 43.2 +40 OK TMIN 11 42.8 42.4 42.0 41.8 41.3 40.9 40.5 40.2 39.9 39.3 39.0 38.6 38.3 38.0 37.5 37.2 37.0 36.4 36.1 35.8 35.4 35.1 34.8 34.4 34.2 33.7 33.4 33.2 32.7 32.4 -99.0 +40 OK TMIN 12 32.2 31.7 31.4 31.2 31.0 30.5 30.4 30.1 29.7 29.5 29.3 29.1 28.7 28.5 28.3 28.0 27.8 27.6 27.4 27.2 26.9 26.7 26.6 26.4 26.3 25.9 25.8 25.7 25.6 25.5 25.2 +40 OK TAVG 1 36.2 36.2 36.0 35.9 35.8 35.7 35.6 35.5 35.5 35.5 35.4 35.4 35.5 35.5 35.6 35.6 35.7 35.8 36.0 36.1 36.2 36.2 36.4 36.5 36.6 36.9 37.2 37.2 37.4 37.6 38.0 +40 OK TAVG 2 38.2 38.4 38.6 38.7 39.2 39.5 39.6 39.8 40.2 40.5 40.7 41.1 41.2 41.5 41.7 42.1 42.4 42.7 42.8 43.3 43.5 43.7 44.0 44.4 44.6 45.0 45.3 45.5 45.7 -99.0 -99.0 +40 OK TAVG 3 45.8 46.2 46.4 46.7 47.1 47.3 47.7 48.1 48.2 48.6 49.0 49.2 49.4 49.8 50.1 50.4 50.7 51.1 51.3 51.6 52.1 52.3 52.5 52.9 53.2 53.5 53.8 54.1 54.5 54.8 55.0 +40 OK TAVG 4 55.4 55.7 55.9 56.1 56.7 56.9 57.0 57.6 57.8 58.0 58.4 58.7 58.9 59.1 59.6 59.8 60.0 60.4 60.8 61.0 61.2 61.7 61.9 62.1 62.4 62.8 63.0 63.2 63.6 63.9 -99.0 +40 OK TAVG 5 64.1 64.3 64.8 64.9 65.3 65.4 65.9 66.2 66.3 66.8 67.0 67.3 67.5 67.9 68.1 68.4 68.7 69.0 69.3 69.5 69.9 70.1 70.3 70.8 71.1 71.3 71.6 72.0 72.1 72.4 72.8 +40 OK TAVG 6 73.1 73.3 73.7 73.9 74.2 74.5 74.8 75.0 75.3 75.6 75.8 76.1 76.3 76.6 76.8 77.1 77.4 77.6 77.8 78.0 78.3 78.4 78.7 78.9 79.1 79.3 79.5 79.8 79.9 80.1 -99.0 +40 OK TAVG 7 80.3 80.4 80.7 80.9 81.0 81.2 81.3 81.4 81.5 81.7 81.9 82.0 82.1 82.1 82.2 82.2 82.3 82.4 82.4 82.5 82.7 82.8 82.8 82.8 82.9 82.9 82.9 82.9 82.9 82.9 82.8 +40 OK TAVG 8 82.8 82.8 82.8 82.7 82.6 82.5 82.5 82.3 82.2 82.0 82.0 81.9 81.8 81.7 81.6 81.4 81.1 81.0 80.9 80.6 80.5 80.0 79.9 79.8 79.6 79.3 79.0 78.7 78.4 78.1 77.9 +40 OK TAVG 9 77.6 77.3 77.0 76.6 76.4 76.0 75.7 75.4 75.1 74.7 74.5 74.1 73.8 73.6 73.1 72.8 72.6 72.3 71.8 71.5 71.1 70.8 70.5 70.1 69.8 69.5 69.1 68.7 68.5 68.0 -99.0 +40 OK TAVG 10 67.6 67.4 67.0 66.6 66.3 65.9 65.5 65.1 64.7 64.4 63.9 63.6 63.1 62.9 62.4 62.0 61.6 61.1 60.9 60.2 59.9 59.5 59.0 58.6 58.1 57.8 57.1 56.9 56.3 55.9 55.4 +40 OK TAVG 11 55.0 54.6 54.1 53.6 53.2 52.8 52.3 51.9 51.4 51.1 50.6 50.2 49.9 49.4 49.0 48.5 48.2 47.9 47.3 47.1 46.7 46.3 46.0 45.6 45.2 45.0 44.4 44.2 43.8 43.4 -99.0 +40 OK TAVG 12 43.2 42.9 42.6 42.3 41.9 41.7 41.3 41.2 40.7 40.5 40.3 40.0 39.7 39.5 39.3 39.0 38.7 38.6 38.5 38.2 37.9 37.7 37.6 37.5 37.4 37.0 36.8 36.7 36.6 36.5 36.4 +40 OK RVP 1 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 +40 OK RVP 2 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 -99.0 -99.0 +40 OK RVP 3 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 +40 OK RVP 4 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 -99.0 +40 OK RVP 5 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 +40 OK RVP 6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 -99.0 +40 OK RVP 7 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 +40 OK RVP 8 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 +40 OK RVP 9 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 -99.0 +40 OK RVP 10 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 7.6 +40 OK RVP 11 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 9.7 -99.0 +40 OK RVP 12 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 12.4 +41 OR TMAX 1 44.4 44.4 44.6 44.6 44.6 44.8 44.8 44.8 44.8 44.9 45.0 45.1 45.1 45.2 45.3 45.5 45.5 45.6 45.8 45.9 46.0 46.2 46.3 46.4 46.6 46.7 46.9 47.0 47.3 47.3 47.6 +41 OR TMAX 2 47.8 48.0 48.1 48.3 48.5 48.6 48.9 49.1 49.2 49.4 49.6 49.8 50.0 50.2 50.4 50.5 50.7 50.9 51.0 51.3 51.5 51.7 51.8 52.0 52.2 52.3 52.5 52.7 52.8 -99.0 -99.0 +41 OR TMAX 3 52.8 53.1 53.3 53.4 53.6 53.8 54.0 54.2 54.3 54.4 54.7 54.9 55.1 55.2 55.4 55.6 55.8 55.9 56.1 56.2 56.4 56.5 56.7 56.9 57.0 57.2 57.3 57.5 57.6 57.8 57.9 +41 OR TMAX 4 58.1 58.2 58.3 58.7 58.7 58.9 59.1 59.2 59.4 59.6 59.8 60.0 60.2 60.3 60.5 60.8 61.0 61.1 61.3 61.5 61.7 62.0 62.1 62.3 62.7 62.9 63.1 63.2 63.5 63.8 -99.0 +41 OR TMAX 5 64.0 64.1 64.4 64.8 64.9 65.1 65.4 65.6 65.9 66.1 66.3 66.4 66.8 67.0 67.2 67.3 67.4 67.6 68.0 68.2 68.3 68.4 68.6 68.9 69.1 69.3 69.4 69.5 69.7 69.9 70.2 +41 OR TMAX 6 70.4 70.5 70.6 70.7 71.0 71.3 71.4 71.6 71.8 71.9 72.3 72.5 72.7 72.9 73.1 73.4 73.7 73.9 74.1 74.4 74.7 74.9 75.1 75.4 75.8 76.0 76.3 76.5 77.0 77.1 -99.0 +41 OR TMAX 7 77.5 77.9 78.1 78.3 78.6 79.0 79.2 79.4 79.6 79.9 80.2 80.3 80.4 80.6 80.7 80.9 81.1 81.1 81.3 81.4 81.5 81.6 81.7 81.8 81.8 81.9 81.9 82.0 82.0 82.0 82.0 +41 OR TMAX 8 82.0 82.0 82.0 81.9 81.9 81.8 81.8 81.8 81.7 81.7 81.5 81.4 81.3 81.2 81.2 81.1 81.1 81.0 80.9 80.8 80.7 80.5 80.4 80.2 80.1 80.0 79.9 79.8 79.6 79.4 79.3 +41 OR TMAX 9 79.1 78.9 78.7 78.6 78.4 78.1 78.0 77.7 77.5 77.2 77.1 76.8 76.5 76.2 76.0 75.7 75.4 75.1 75.0 74.5 74.2 74.0 73.5 73.2 73.0 72.4 72.2 71.8 71.3 71.1 -99.0 +41 OR TMAX 10 70.6 70.3 69.8 69.4 69.2 68.6 68.3 67.8 67.4 67.1 66.5 66.2 65.7 65.3 64.8 64.5 64.1 63.6 63.1 62.7 62.2 61.9 61.3 60.9 60.5 59.9 59.5 59.0 58.6 58.2 57.6 +41 OR TMAX 11 57.2 56.7 56.2 55.6 55.4 54.9 54.5 54.2 53.6 53.3 53.0 52.5 52.1 51.8 51.4 51.1 50.9 50.4 50.1 49.9 49.5 49.2 49.0 48.7 48.4 48.2 47.9 47.7 47.5 47.2 -99.0 +41 OR TMAX 12 47.0 46.8 46.7 46.5 46.4 46.1 46.0 45.8 45.7 45.5 45.4 45.4 45.2 45.1 44.9 44.9 44.8 44.8 44.7 44.6 44.6 44.5 44.5 44.5 44.4 44.4 44.4 44.4 44.4 44.3 44.4 +41 OR TMIN 1 31.9 31.9 31.9 31.9 31.9 31.9 32.0 32.1 32.1 32.3 32.3 32.3 32.4 32.4 32.4 32.4 32.6 32.6 32.6 32.6 32.6 32.6 32.6 32.7 32.7 32.8 32.9 32.9 33.1 33.1 33.2 +41 OR TMIN 2 33.2 33.4 33.4 33.5 33.6 33.6 33.7 33.8 33.9 33.9 34.0 34.0 34.2 34.2 34.4 34.4 34.5 34.6 34.7 34.8 34.8 34.9 35.0 35.0 35.2 35.2 35.3 35.5 35.5 -99.0 -99.0 +41 OR TMIN 3 35.5 35.6 35.7 35.7 35.8 36.0 36.0 36.1 36.1 36.1 36.2 36.3 36.4 36.6 36.6 36.7 36.8 36.9 37.0 37.0 37.0 37.1 37.2 37.2 37.2 37.4 37.4 37.6 37.6 37.7 37.8 +41 OR TMIN 4 37.8 37.9 38.1 38.1 38.2 38.3 38.3 38.4 38.6 38.6 38.6 38.7 38.9 39.0 39.3 39.4 39.5 39.6 39.7 39.8 40.0 40.0 40.3 40.5 40.6 40.8 40.9 41.0 41.3 41.5 -99.0 +41 OR TMIN 5 41.7 41.8 41.9 42.1 42.3 42.6 42.7 42.8 42.9 43.2 43.5 43.6 43.7 43.8 44.0 44.3 44.5 44.6 44.7 44.8 44.9 45.3 45.5 45.6 45.7 45.8 45.9 46.1 46.4 46.6 46.7 +41 OR TMIN 6 46.8 46.9 47.1 47.2 47.5 47.6 47.8 47.8 48.0 48.2 48.4 48.5 48.7 48.8 48.9 49.1 49.3 49.5 49.6 49.7 49.8 50.0 50.2 50.4 50.5 50.6 50.7 50.9 51.0 51.2 -99.0 +41 OR TMIN 7 51.4 51.5 51.7 51.8 51.9 51.9 52.1 52.2 52.3 52.6 52.7 52.7 52.8 52.8 52.8 52.9 53.1 53.1 53.2 53.2 53.3 53.4 53.4 53.4 53.4 53.5 53.5 53.5 53.6 53.5 53.5 +41 OR TMIN 8 53.5 53.5 53.5 53.6 53.6 53.4 53.4 53.4 53.4 53.3 53.2 53.1 53.0 53.0 52.9 52.8 52.7 52.6 52.6 52.5 52.4 52.3 52.2 52.1 52.0 51.9 51.5 51.4 51.3 51.2 51.0 +41 OR TMIN 9 50.9 50.8 50.7 50.3 50.1 50.0 49.9 49.7 49.6 49.3 49.2 48.8 48.7 48.6 48.5 48.2 47.9 47.7 47.6 47.4 47.1 47.0 46.7 46.5 46.2 46.0 45.7 45.6 45.3 45.1 -99.0 +41 OR TMIN 10 45.0 44.7 44.3 44.1 44.0 43.7 43.5 43.3 43.1 42.9 42.7 42.6 42.3 42.0 41.8 41.7 41.6 41.4 41.1 41.0 40.9 40.8 40.6 40.3 40.2 40.1 40.0 39.8 39.7 39.6 39.4 +41 OR TMIN 11 39.4 39.1 39.0 38.9 38.8 38.6 38.4 38.3 38.3 38.1 38.0 37.7 37.6 37.5 37.3 37.2 36.9 36.8 36.7 36.6 36.5 36.2 36.0 35.8 35.7 35.6 35.5 35.3 34.9 34.8 -99.0 +41 OR TMIN 12 34.7 34.4 34.4 34.2 33.9 33.8 33.7 33.6 33.5 33.4 33.2 33.0 32.9 32.8 32.7 32.6 32.6 32.5 32.5 32.4 32.3 32.2 32.2 32.2 32.1 32.0 32.0 32.0 31.9 31.9 31.9 +41 OR TAVG 1 38.1 38.1 38.2 38.2 38.3 38.4 38.5 38.6 38.6 38.6 38.7 38.7 38.8 38.9 38.9 39.0 39.0 39.0 39.1 39.2 39.3 39.3 39.4 39.6 39.8 39.9 40.0 40.1 40.1 40.2 40.3 +41 OR TAVG 2 40.4 40.7 40.9 41.0 41.1 41.1 41.2 41.3 41.6 41.7 41.9 42.0 42.1 42.3 42.3 42.4 42.6 42.8 42.9 43.0 43.1 43.3 43.4 43.6 43.7 43.8 43.9 44.1 44.2 -99.0 -99.0 +41 OR TAVG 3 44.2 44.3 44.4 44.6 44.8 44.9 45.1 45.1 45.2 45.3 45.5 45.7 45.8 46.0 46.0 46.1 46.2 46.3 46.4 46.6 46.9 46.9 47.0 47.1 47.1 47.2 47.3 47.6 47.6 47.9 47.9 +41 OR TAVG 4 48.0 48.1 48.2 48.3 48.5 48.6 48.8 48.9 49.0 49.1 49.2 49.4 49.6 49.7 49.9 50.1 50.2 50.2 50.6 50.7 51.0 51.1 51.2 51.4 51.7 51.8 52.0 52.2 52.4 52.6 -99.0 +41 OR TAVG 5 52.8 53.0 53.2 53.5 53.7 53.8 54.0 54.3 54.5 54.7 54.8 55.0 55.2 55.6 55.7 55.7 55.9 56.2 56.3 56.6 56.7 56.8 57.0 57.2 57.3 57.6 57.8 57.9 58.1 58.2 58.4 +41 OR TAVG 6 58.5 58.8 58.9 59.1 59.2 59.4 59.5 59.7 60.0 60.2 60.3 60.4 60.6 60.9 61.1 61.3 61.4 61.6 61.8 62.1 62.3 62.5 62.7 62.9 63.2 63.3 63.6 63.7 64.0 64.3 -99.0 +41 OR TAVG 7 64.5 64.7 64.8 65.2 65.3 65.6 65.7 65.9 66.0 66.2 66.3 66.5 66.6 66.8 66.9 67.0 67.2 67.2 67.3 67.3 67.4 67.4 67.5 67.6 67.6 67.7 67.7 67.8 67.8 67.8 67.9 +41 OR TAVG 8 67.9 67.8 67.7 67.6 67.6 67.6 67.6 67.6 67.4 67.4 67.3 67.3 67.2 67.2 67.2 67.1 67.1 67.0 66.7 66.6 66.5 66.4 66.2 66.1 66.1 66.0 65.9 65.7 65.5 65.3 65.1 +41 OR TAVG 9 65.0 64.9 64.7 64.4 64.3 64.1 63.9 63.8 63.4 63.3 63.2 62.9 62.7 62.4 62.2 62.0 61.8 61.4 61.2 61.1 60.7 60.4 60.2 59.8 59.5 59.3 59.1 58.7 58.4 58.2 -99.0 +41 OR TAVG 10 57.8 57.4 57.2 56.8 56.5 56.3 56.0 55.6 55.4 55.1 54.6 54.4 54.1 53.6 53.5 53.2 52.7 52.5 52.3 51.9 51.5 51.4 50.9 50.6 50.4 50.1 49.7 49.5 49.1 48.8 48.6 +41 OR TAVG 11 48.2 47.9 47.7 47.4 46.9 46.8 46.6 46.2 45.9 45.7 45.5 45.2 44.9 44.6 44.4 44.2 43.8 43.7 43.4 43.2 43.0 42.7 42.6 42.3 42.1 41.8 41.7 41.5 41.3 41.0 -99.0 +41 OR TAVG 12 40.8 40.7 40.6 40.4 40.1 40.0 39.9 39.7 39.6 39.5 39.4 39.2 39.0 38.9 38.8 38.8 38.7 38.7 38.7 38.6 38.6 38.4 38.4 38.3 38.3 38.2 38.2 38.1 38.1 38.1 38.2 +41 OR RVP 1 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +41 OR RVP 2 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 -99.0 -99.0 +41 OR RVP 3 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 +41 OR RVP 4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 -99.0 +41 OR RVP 5 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +41 OR RVP 6 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 +41 OR RVP 7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +41 OR RVP 8 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +41 OR RVP 9 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 +41 OR RVP 10 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +41 OR RVP 11 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 11.4 -99.0 +41 OR RVP 12 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +42 PA TMAX 1 37.6 37.4 37.2 37.0 37.0 36.9 36.9 36.8 36.8 36.7 36.5 36.5 36.4 36.3 36.2 36.2 36.2 36.1 36.2 36.2 36.3 36.4 36.4 36.4 36.5 36.6 36.7 36.8 36.9 37.0 37.0 +42 PA TMAX 2 37.2 37.3 37.4 37.6 37.7 37.8 38.1 38.3 38.5 38.6 38.9 39.1 39.4 39.6 39.8 40.1 40.3 40.6 40.9 41.2 41.5 41.8 42.1 42.4 42.8 43.1 43.4 43.8 44.0 -99.0 -99.0 +42 PA TMAX 3 44.2 44.5 44.9 45.2 45.6 46.0 46.4 46.7 47.1 47.5 47.9 48.2 48.6 49.0 49.3 49.7 50.1 50.5 50.8 51.2 51.6 52.0 52.3 52.8 53.1 53.4 53.9 54.2 54.7 55.1 55.3 +42 PA TMAX 4 55.9 56.2 56.6 57.0 57.3 57.7 58.1 58.4 58.9 59.2 59.6 59.9 60.3 60.8 61.1 61.4 61.8 62.2 62.6 62.9 63.2 63.7 64.0 64.4 64.7 65.0 65.4 65.8 66.1 66.5 -99.0 +42 PA TMAX 5 66.8 67.1 67.5 67.8 68.2 68.5 68.9 69.2 69.5 69.8 70.2 70.5 70.8 71.1 71.5 71.7 72.1 72.4 72.7 73.0 73.3 73.6 73.8 74.2 74.6 74.7 75.0 75.4 75.6 75.8 76.1 +42 PA TMAX 6 76.4 76.7 76.9 77.2 77.5 77.8 77.9 78.2 78.5 78.7 78.9 79.1 79.4 79.6 79.9 80.0 80.3 80.5 80.7 80.8 81.0 81.3 81.5 81.7 81.8 82.0 82.2 82.4 82.6 82.7 -99.0 +42 PA TMAX 7 82.8 83.0 83.1 83.3 83.5 83.5 83.8 83.8 83.9 84.0 84.0 84.1 84.2 84.3 84.3 84.4 84.4 84.4 84.4 84.5 84.6 84.6 84.7 84.6 84.5 84.5 84.5 84.5 84.4 84.4 84.3 +42 PA TMAX 8 84.4 84.3 84.2 84.0 83.9 83.8 83.7 83.7 83.6 83.5 83.4 83.3 83.1 83.0 82.8 82.7 82.5 82.3 82.2 82.0 81.8 81.6 81.4 81.3 81.1 80.9 80.6 80.4 80.2 79.9 79.7 +42 PA TMAX 9 79.4 79.2 79.0 78.7 78.4 78.1 77.9 77.6 77.3 77.0 76.7 76.4 76.1 75.8 75.5 75.2 74.8 74.5 74.3 73.8 73.5 73.2 72.8 72.4 72.1 71.7 71.4 70.9 70.6 70.2 -99.0 +42 PA TMAX 10 69.8 69.4 69.1 68.7 68.3 68.0 67.5 67.1 66.8 66.4 66.0 65.6 65.1 64.9 64.4 64.0 63.7 63.2 63.0 62.5 62.0 61.7 61.4 61.0 60.6 60.2 59.8 59.4 59.0 58.7 58.3 +42 PA TMAX 11 57.9 57.5 57.1 56.7 56.3 56.0 55.6 55.1 54.8 54.4 54.0 53.7 53.2 52.8 52.4 52.1 51.7 51.3 51.0 50.5 50.1 49.7 49.3 49.0 48.5 48.1 47.7 47.3 46.9 46.5 -99.0 +42 PA TMAX 12 46.0 45.7 45.3 44.9 44.6 44.1 43.8 43.5 43.1 42.9 42.5 42.2 41.9 41.6 41.2 41.0 40.8 40.5 40.2 39.9 39.7 39.5 39.2 39.0 38.9 38.6 38.4 38.2 38.1 37.9 37.7 +42 PA TMIN 1 21.0 20.9 20.8 20.6 20.5 20.3 20.1 19.9 19.8 19.8 19.7 19.6 19.5 19.4 19.3 19.3 19.2 19.1 19.0 19.0 18.9 18.9 18.8 18.8 18.9 18.9 18.9 19.0 19.1 19.1 19.2 +42 PA TMIN 2 19.1 19.3 19.3 19.5 19.5 19.7 19.8 19.8 20.0 20.0 20.2 20.5 20.6 20.8 20.9 21.1 21.3 21.6 21.8 22.0 22.3 22.5 22.8 23.0 23.3 23.5 23.9 24.2 24.3 -99.0 -99.0 +42 PA TMIN 3 24.4 24.9 25.1 25.4 25.7 26.1 26.3 26.6 26.9 27.2 27.5 27.8 28.1 28.5 28.7 29.0 29.3 29.6 29.9 30.3 30.6 30.7 31.1 31.4 31.7 31.9 32.3 32.6 32.8 33.1 33.4 +42 PA TMIN 4 33.7 34.0 34.3 34.5 34.9 35.2 35.4 35.8 36.2 36.3 36.7 37.1 37.3 37.6 38.0 38.3 38.5 38.9 39.3 39.5 39.9 40.3 40.5 40.8 41.2 41.5 41.8 42.2 42.6 42.8 -99.0 +42 PA TMIN 5 43.3 43.6 43.9 44.3 44.6 45.0 45.4 45.6 46.0 46.4 46.7 47.1 47.3 47.6 48.0 48.3 48.6 48.9 49.3 49.6 49.9 50.2 50.6 50.9 51.2 51.5 51.8 52.1 52.5 52.8 53.1 +42 PA TMIN 6 53.4 53.8 54.1 54.2 54.6 55.0 55.2 55.5 55.8 56.1 56.3 56.5 56.8 57.1 57.4 57.6 57.8 58.0 58.3 58.5 58.7 59.0 59.1 59.4 59.6 59.8 60.0 60.2 60.4 60.6 -99.0 +42 PA TMIN 7 60.7 61.0 61.1 61.3 61.4 61.5 61.6 61.8 62.0 62.1 62.2 62.3 62.3 62.3 62.4 62.4 62.4 62.5 62.6 62.6 62.7 62.8 62.9 62.9 62.8 62.8 62.7 62.7 62.6 62.5 62.4 +42 PA TMIN 8 62.5 62.4 62.3 62.3 62.2 62.1 62.0 61.8 61.8 61.7 61.5 61.4 61.3 61.2 61.1 60.8 60.7 60.5 60.4 60.3 60.1 60.0 59.7 59.5 59.3 59.2 58.9 58.7 58.4 58.3 58.1 +42 PA TMIN 9 57.9 57.5 57.3 57.1 56.8 56.5 56.3 56.0 55.7 55.3 55.1 54.8 54.4 54.2 53.7 53.4 53.1 52.6 52.3 51.9 51.5 51.2 50.7 50.4 49.9 49.4 49.0 48.5 48.1 47.6 -99.0 +42 PA TMIN 10 47.3 46.7 46.4 45.9 45.4 44.9 44.6 44.2 43.8 43.5 43.0 42.6 42.3 41.9 41.6 41.2 40.8 40.6 40.3 40.0 39.7 39.4 39.1 38.8 38.5 38.3 38.0 37.8 37.6 37.4 37.1 +42 PA TMIN 11 36.9 36.7 36.5 36.4 36.1 35.8 35.6 35.5 35.1 34.9 34.6 34.5 34.1 33.9 33.6 33.3 33.0 32.9 32.6 32.3 32.0 31.8 31.4 31.1 30.9 30.5 30.2 29.9 29.6 29.3 -99.0 +42 PA TMIN 12 29.0 28.6 28.2 28.0 27.8 27.3 27.1 26.9 26.5 26.2 26.0 25.8 25.4 25.1 24.9 24.7 24.4 24.1 23.9 23.7 23.4 23.1 23.0 22.8 22.5 22.3 22.0 21.9 21.7 21.5 21.3 +42 PA TAVG 1 29.4 29.2 29.0 28.9 28.7 28.6 28.4 28.4 28.2 28.2 28.1 28.0 28.0 27.9 27.9 27.8 27.8 27.7 27.6 27.5 27.5 27.5 27.6 27.7 27.7 27.8 27.9 28.0 28.0 28.1 28.1 +42 PA TAVG 2 28.1 28.2 28.4 28.5 28.7 28.8 29.0 29.0 29.2 29.5 29.6 29.8 30.0 30.2 30.5 30.7 30.8 31.0 31.4 31.6 31.9 32.1 32.6 32.7 33.0 33.3 33.7 34.0 34.2 -99.0 -99.0 +42 PA TAVG 3 34.3 34.7 35.0 35.3 35.7 36.0 36.4 36.7 37.0 37.4 37.7 38.1 38.4 38.7 39.0 39.4 39.7 40.1 40.4 40.6 41.1 41.4 41.7 42.1 42.4 42.7 43.1 43.4 43.8 44.1 44.5 +42 PA TAVG 4 44.8 45.1 45.4 45.8 46.1 46.5 46.8 47.1 47.5 47.9 48.1 48.5 48.9 49.1 49.6 49.9 50.2 50.6 50.9 51.2 51.7 51.9 52.3 52.7 52.9 53.3 53.7 54.0 54.3 54.7 -99.0 +42 PA TAVG 5 55.0 55.3 55.7 56.2 56.5 56.7 57.2 57.5 57.8 58.1 58.4 58.8 59.1 59.4 59.7 60.1 60.3 60.7 61.1 61.3 61.6 62.0 62.2 62.6 62.9 63.2 63.5 63.8 64.1 64.4 64.7 +42 PA TAVG 6 64.9 65.3 65.5 65.8 66.1 66.4 66.6 66.8 67.1 67.4 67.7 67.9 68.1 68.4 68.6 68.9 69.0 69.3 69.6 69.7 69.9 70.1 70.3 70.6 70.8 70.9 71.2 71.3 71.5 71.7 -99.0 +42 PA TAVG 7 71.9 72.0 72.1 72.3 72.4 72.6 72.7 72.9 72.9 73.0 73.1 73.1 73.3 73.3 73.4 73.5 73.5 73.5 73.6 73.7 73.8 73.8 73.8 73.8 73.8 73.7 73.7 73.6 73.5 73.4 73.4 +42 PA TAVG 8 73.4 73.4 73.3 73.2 73.0 73.0 72.9 72.8 72.7 72.6 72.5 72.4 72.3 72.0 71.9 71.8 71.6 71.5 71.4 71.1 71.0 70.8 70.6 70.4 70.2 70.0 69.8 69.6 69.4 69.1 68.9 +42 PA TAVG 9 68.7 68.4 68.1 67.9 67.7 67.3 67.1 66.8 66.5 66.2 65.9 65.6 65.2 65.0 64.6 64.2 64.0 63.6 63.2 62.9 62.5 62.2 61.8 61.4 61.1 60.6 60.2 59.8 59.4 58.9 -99.0 +42 PA TAVG 10 58.5 58.1 57.7 57.3 56.9 56.4 56.1 55.7 55.3 54.9 54.5 54.1 53.8 53.4 53.0 52.7 52.3 52.0 51.6 51.2 50.9 50.6 50.2 49.9 49.7 49.2 48.9 48.7 48.4 48.0 47.7 +42 PA TAVG 11 47.5 47.0 46.8 46.6 46.2 45.8 45.7 45.4 44.8 44.7 44.4 44.0 43.7 43.4 43.1 42.7 42.5 42.1 41.8 41.5 41.1 40.7 40.4 40.1 39.7 39.4 38.9 38.6 38.3 37.8 -99.0 +42 PA TAVG 12 37.6 37.2 36.8 36.6 36.2 35.8 35.5 35.2 34.9 34.6 34.3 34.0 33.6 33.4 33.1 32.9 32.6 32.3 32.1 31.9 31.5 31.4 31.1 30.9 30.7 30.5 30.3 30.0 29.9 29.7 29.5 +42 PA RVP 1 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +42 PA RVP 2 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 -99.0 -99.0 +42 PA RVP 3 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 +42 PA RVP 4 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 -99.0 +42 PA RVP 5 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +42 PA RVP 6 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +42 PA RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +42 PA RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +42 PA RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +42 PA RVP 10 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 +42 PA RVP 11 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 -99.0 +42 PA RVP 12 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +44 RI TMAX 1 37.9 37.9 37.8 37.7 37.6 37.2 37.0 37.0 37.0 37.0 36.9 36.9 36.9 36.9 36.9 36.9 36.8 36.7 36.7 36.8 36.3 36.3 36.7 36.7 36.8 36.8 36.9 36.9 36.9 36.9 36.9 +44 RI TMAX 2 37.0 37.0 37.0 37.1 37.7 37.7 37.8 37.8 37.8 38.0 38.0 38.4 38.7 38.7 38.9 39.0 39.5 39.5 39.7 39.9 40.0 40.5 40.7 40.9 41.4 41.7 41.7 41.9 42.3 -99.0 -99.0 +44 RI TMAX 3 42.7 42.7 43.4 43.6 43.7 43.7 44.6 44.7 44.7 45.6 45.6 45.7 46.5 46.6 46.7 47.4 47.6 47.7 48.4 48.6 48.7 49.3 49.5 49.7 50.3 50.4 50.7 51.3 51.4 51.7 52.3 +44 RI TMAX 4 52.4 52.6 53.3 53.4 53.7 54.3 54.4 55.1 55.3 55.4 56.2 56.3 56.4 57.2 57.3 57.5 58.2 58.4 58.6 59.2 59.5 59.6 60.2 60.5 60.8 61.4 61.5 61.8 62.4 62.6 -99.0 +44 RI TMAX 5 63.0 63.4 63.7 64.4 64.5 64.8 65.4 65.6 65.9 66.4 66.6 66.7 67.4 67.6 67.7 68.5 68.6 68.7 69.4 69.6 69.7 69.9 70.6 70.6 70.8 71.5 71.6 71.6 72.4 72.6 72.6 +44 RI TMAX 6 72.6 73.3 73.6 73.6 74.1 74.4 74.5 74.6 75.3 75.4 75.5 76.0 76.3 76.4 76.5 76.9 77.1 77.3 77.5 77.5 78.0 78.3 78.5 78.5 79.0 79.1 79.3 79.5 80.0 80.0 -99.0 +44 RI TMAX 7 80.0 80.4 80.5 81.0 81.0 81.1 81.1 81.5 81.5 82.0 82.0 82.0 82.0 82.0 82.1 82.1 82.1 82.4 82.4 82.5 82.5 82.5 82.5 82.5 82.6 82.6 82.6 82.6 82.4 82.4 82.3 +44 RI TMAX 8 82.4 82.3 82.2 82.2 82.0 82.0 81.6 81.6 81.4 81.4 81.3 81.3 81.3 80.8 80.6 80.4 80.3 80.3 80.3 79.8 79.8 79.4 79.3 79.3 78.8 78.7 78.3 78.3 77.8 77.8 77.5 +44 RI TMAX 9 77.3 76.9 76.6 76.5 76.5 75.9 75.7 75.5 75.3 74.8 74.6 74.5 73.8 73.6 73.5 73.0 72.6 72.5 72.1 71.7 71.6 71.1 70.7 70.6 70.0 69.7 69.5 69.0 68.6 68.5 -99.0 +44 RI TMAX 10 68.0 67.6 67.5 66.9 66.6 66.0 65.9 65.5 65.0 64.8 64.5 63.9 63.7 63.5 62.9 62.6 62.5 61.9 61.6 61.1 60.8 60.5 60.1 59.8 59.6 59.1 58.8 58.6 58.0 57.9 57.6 +44 RI TMAX 11 56.9 56.9 56.6 55.9 55.9 55.6 54.9 54.9 54.6 53.9 53.7 53.5 52.9 52.7 52.4 51.9 51.6 51.4 50.9 50.4 50.4 49.7 49.4 49.0 48.5 48.4 47.9 47.4 47.4 46.6 -99.0 +44 RI TMAX 12 46.4 45.9 45.5 45.5 44.7 44.5 44.4 43.7 43.5 43.4 42.7 42.6 42.4 41.8 41.7 41.5 41.4 40.8 40.8 40.4 39.9 39.9 39.8 39.6 39.4 38.9 38.9 38.8 38.7 38.6 37.9 +44 RI TMIN 1 20.6 19.9 19.9 19.7 19.7 19.7 19.6 19.3 18.9 18.8 18.8 18.7 18.7 18.6 18.6 18.6 18.6 18.5 18.5 18.4 18.3 18.3 18.3 18.3 18.3 18.3 18.3 18.5 18.5 18.5 18.6 +44 RI TMIN 2 18.6 18.7 19.1 19.2 19.2 19.3 19.3 19.3 19.6 20.1 20.2 20.2 20.3 20.3 20.6 21.2 21.2 21.3 21.3 21.7 22.2 22.2 22.4 22.6 23.2 23.3 23.6 23.7 24.0 -99.0 -99.0 +44 RI TMIN 3 24.3 24.4 24.6 25.3 25.3 25.7 25.9 26.3 26.7 26.7 27.3 27.4 27.7 27.9 28.4 28.7 28.7 29.4 29.7 29.7 29.8 30.4 30.7 30.8 31.3 31.7 31.8 31.8 32.3 32.7 32.8 +44 RI TMIN 4 33.3 33.4 33.7 34.3 34.4 34.5 34.8 35.3 35.5 35.5 36.3 36.4 36.5 37.1 37.4 37.5 38.0 38.3 38.5 38.6 39.2 39.5 39.5 40.2 40.5 40.5 41.2 41.4 41.5 42.2 -99.0 +44 RI TMIN 5 42.4 42.5 43.2 43.4 43.5 44.2 44.3 44.6 45.2 45.3 45.6 46.2 46.3 46.6 47.2 47.3 47.6 47.6 48.3 48.6 48.7 49.3 49.5 49.6 50.3 50.5 50.6 51.3 51.3 51.6 51.7 +44 RI TMIN 6 52.3 52.6 52.7 53.3 53.5 53.6 54.3 54.5 54.6 54.7 55.3 55.6 55.6 56.2 56.3 56.6 56.6 57.2 57.6 57.6 57.6 58.2 58.6 58.6 58.6 59.2 59.5 59.6 60.1 60.2 -99.0 +44 RI TMIN 7 60.4 60.5 60.6 61.1 61.2 61.3 61.5 61.6 62.1 62.1 62.2 62.3 62.3 62.4 62.4 62.6 62.7 63.1 63.1 63.1 63.1 63.1 63.2 63.2 63.2 63.2 63.3 63.3 63.3 63.2 63.2 +44 RI TMIN 8 63.2 63.2 63.2 63.2 62.7 62.6 62.5 62.3 62.3 62.3 62.3 62.3 62.2 62.2 61.6 61.4 61.4 61.4 61.2 60.7 60.6 60.4 60.3 59.8 59.7 59.5 59.3 59.3 58.7 58.6 58.4 +44 RI TMIN 9 57.8 57.6 57.5 57.4 56.6 56.6 56.5 55.8 55.6 55.4 54.9 54.5 54.4 53.9 53.5 53.0 52.8 52.5 52.0 51.5 51.5 50.9 50.5 50.0 49.6 49.5 48.8 48.5 47.8 47.5 -99.0 +44 RI TMIN 10 47.0 46.7 46.4 45.7 45.5 44.8 44.7 44.4 43.8 43.7 42.8 42.8 42.7 41.8 41.8 41.7 40.8 40.8 40.8 40.4 39.8 39.8 39.7 39.4 38.8 38.7 38.7 38.5 38.0 37.9 37.7 +44 RI TMIN 11 37.7 37.5 37.0 37.0 36.8 36.5 36.5 36.0 35.9 35.6 35.6 35.0 34.9 34.7 34.1 34.0 33.8 33.6 33.0 32.8 32.6 32.1 31.8 31.6 31.1 30.8 30.6 30.1 29.8 29.6 -99.0 +44 RI TMIN 12 29.1 28.7 28.5 28.0 27.7 27.2 26.9 26.9 26.2 25.9 25.9 25.6 25.0 24.9 24.6 24.1 23.9 23.8 23.6 23.0 22.8 22.8 22.6 21.9 21.8 21.8 21.7 21.0 20.8 20.8 20.8 +44 RI TAVG 1 29.3 29.3 29.1 29.0 28.3 28.3 28.3 28.3 28.3 28.3 28.1 28.1 28.1 28.0 27.5 27.3 27.3 27.3 27.3 27.3 27.3 27.3 27.3 27.3 27.4 27.4 27.5 27.9 27.9 27.9 28.1 +44 RI TAVG 2 27.9 28.1 28.1 28.2 28.2 28.3 28.3 28.8 28.9 28.9 29.0 29.1 29.3 29.9 29.9 29.9 30.2 30.3 30.8 30.9 31.1 31.3 31.4 31.9 32.2 32.3 32.8 33.1 33.2 -99.0 -99.0 +44 RI TAVG 3 33.2 33.8 34.1 34.2 34.4 35.1 35.2 35.3 36.0 36.1 36.3 37.0 37.1 37.2 37.4 38.1 38.1 38.3 39.1 39.1 39.2 39.9 40.1 40.2 40.9 41.1 41.2 41.8 42.0 42.1 42.3 +44 RI TAVG 4 42.9 43.0 43.7 43.9 44.0 44.7 44.8 44.9 45.2 45.8 45.9 46.1 46.9 46.9 47.0 47.9 47.9 48.1 48.9 48.9 49.1 49.8 49.9 50.1 50.8 51.0 51.1 51.8 52.1 52.7 -99.0 +44 RI TAVG 5 52.8 53.1 53.7 53.8 54.2 54.7 54.9 55.2 55.7 55.9 56.1 56.2 57.1 57.1 57.2 58.0 58.1 58.2 58.8 59.1 59.2 59.8 60.1 60.2 60.8 61.0 61.2 61.2 61.9 62.1 62.2 +44 RI TAVG 6 62.8 63.0 63.1 63.7 63.9 64.0 64.2 64.8 64.9 65.0 65.1 65.9 66.0 66.1 66.7 66.9 66.9 67.1 67.7 67.9 67.9 68.1 68.7 68.7 68.9 69.0 69.2 69.7 69.8 69.9 -99.0 +44 RI TAVG 7 70.0 70.6 70.8 70.9 71.0 71.0 71.1 71.6 71.7 71.8 72.0 72.0 72.0 72.0 72.5 72.6 72.6 72.7 72.7 72.7 72.7 72.9 72.9 72.9 73.0 73.0 72.9 72.9 72.7 72.7 72.7 +44 RI TAVG 8 72.7 72.7 72.7 72.7 72.7 72.1 72.1 72.0 72.0 72.0 71.9 71.8 71.7 71.6 71.1 71.0 71.0 70.9 70.9 70.2 70.0 70.0 69.9 69.9 69.2 69.0 68.9 68.9 68.4 68.0 68.0 +44 RI TAVG 9 67.9 67.3 67.0 67.0 66.5 66.1 66.0 65.9 65.3 65.1 64.9 64.3 64.2 63.9 63.4 63.2 63.0 62.3 62.2 61.9 61.3 61.2 60.4 60.3 60.0 59.4 59.3 58.9 58.4 58.0 -99.0 +44 RI TAVG 10 57.4 57.4 56.9 56.4 56.1 55.4 55.4 55.1 54.4 54.3 53.9 53.4 53.3 52.4 52.4 52.1 51.4 51.4 51.1 50.9 50.4 50.2 50.1 49.4 49.3 49.1 48.5 48.4 48.2 48.0 47.5 +44 RI TAVG 11 47.4 47.1 47.0 46.4 46.3 46.1 46.0 45.3 45.2 45.0 44.5 44.2 44.0 43.5 43.2 43.1 42.5 42.3 42.1 41.9 41.3 41.0 40.5 40.3 40.0 39.5 39.3 38.9 38.5 38.2 -99.0 +44 RI TAVG 12 37.9 37.4 37.1 36.4 36.3 36.0 35.4 35.3 35.0 34.5 34.3 34.2 33.5 33.3 33.3 32.9 32.4 32.3 32.2 31.5 31.4 31.3 31.2 30.9 30.4 30.4 30.3 30.2 29.4 29.4 29.4 +44 RI RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +44 RI RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +44 RI RVP 3 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 +44 RI RVP 4 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 -99.0 +44 RI RVP 5 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +44 RI RVP 6 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 +44 RI RVP 7 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +44 RI RVP 8 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 +44 RI RVP 9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 -99.0 +44 RI RVP 10 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 +44 RI RVP 11 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 10.1 -99.0 +44 RI RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +45 SC TMAX 1 54.7 54.6 54.6 54.6 54.5 54.4 54.3 54.2 54.2 54.2 54.1 54.2 54.3 54.3 54.4 54.5 54.5 54.6 54.6 54.7 54.8 54.8 54.8 54.9 55.0 55.3 55.4 55.5 55.7 55.8 56.0 +45 SC TMAX 2 56.2 56.4 56.5 56.8 56.9 57.2 57.3 57.6 57.7 58.0 58.2 58.4 58.5 58.8 59.1 59.3 59.5 59.7 60.0 60.3 60.5 60.8 61.0 61.3 61.5 61.8 62.1 62.4 62.5 -99.0 -99.0 +45 SC TMAX 3 62.6 62.9 63.3 63.4 63.8 64.0 64.4 64.6 64.8 65.1 65.4 65.7 66.0 66.2 66.5 66.8 67.1 67.3 67.6 67.9 68.2 68.4 68.7 69.0 69.3 69.5 69.7 70.1 70.3 70.6 70.9 +45 SC TMAX 4 71.1 71.4 71.6 72.0 72.2 72.4 72.7 73.0 73.2 73.4 73.7 74.0 74.2 74.4 74.7 75.1 75.2 75.4 75.6 76.0 76.1 76.4 76.6 76.9 77.1 77.3 77.5 77.8 78.0 78.2 -99.0 +45 SC TMAX 5 78.5 78.7 78.9 79.0 79.4 79.6 79.7 79.9 80.1 80.5 80.6 80.8 81.0 81.3 81.6 81.7 81.9 82.1 82.4 82.5 82.7 83.0 83.2 83.4 83.5 83.8 84.1 84.2 84.3 84.6 84.8 +45 SC TMAX 6 85.1 85.3 85.5 85.6 85.7 85.9 86.3 86.4 86.5 86.6 86.8 87.1 87.3 87.4 87.6 87.7 87.9 88.0 88.3 88.4 88.5 88.7 88.9 88.9 89.1 89.3 89.4 89.5 89.8 89.9 -99.0 +45 SC TMAX 7 90.0 90.1 90.3 90.3 90.4 90.4 90.6 90.7 90.7 90.8 90.8 90.9 91.0 91.0 91.0 91.1 91.2 91.3 91.3 91.3 91.2 91.2 91.1 91.0 91.0 91.0 90.9 90.9 90.8 90.8 90.6 +45 SC TMAX 8 90.7 90.6 90.5 90.4 90.1 90.1 90.0 90.0 89.9 89.9 89.8 89.7 89.5 89.3 89.2 89.1 89.0 89.0 88.9 88.8 88.6 88.5 88.3 88.2 88.1 87.9 87.8 87.5 87.4 87.4 87.3 +45 SC TMAX 9 87.1 86.9 86.6 86.5 86.4 86.3 86.1 85.8 85.6 85.4 85.2 84.9 84.8 84.7 84.3 83.9 83.9 83.7 83.3 82.9 82.8 82.6 82.1 81.9 81.7 81.3 81.0 80.8 80.3 80.0 -99.0 +45 SC TMAX 10 79.8 79.3 79.0 78.8 78.3 78.0 77.7 77.3 77.1 76.8 76.4 76.1 75.8 75.5 75.2 74.9 74.6 74.2 74.0 73.7 73.5 73.1 72.8 72.6 72.2 72.0 71.7 71.4 71.2 71.0 70.5 +45 SC TMAX 11 70.4 70.0 69.8 69.5 69.2 68.9 68.7 68.4 68.0 67.8 67.6 67.2 66.9 66.7 66.3 66.0 65.7 65.3 65.1 64.8 64.5 64.1 63.9 63.5 63.1 62.9 62.6 62.1 61.9 61.5 -99.0 +45 SC TMAX 12 61.1 60.8 60.5 60.2 59.9 59.6 59.3 59.1 58.7 58.5 58.3 57.9 57.7 57.5 57.4 57.0 56.8 56.6 56.4 56.3 56.1 55.9 55.7 55.6 55.5 55.4 55.3 55.1 54.9 54.8 54.7 +45 SC TMIN 1 33.5 33.5 33.5 33.5 33.3 33.3 33.1 33.0 33.0 32.9 32.9 32.9 32.9 32.9 32.8 32.8 32.8 32.8 32.8 32.9 32.9 33.0 33.0 33.1 33.1 33.2 33.3 33.4 33.4 33.4 33.5 +45 SC TMIN 2 33.4 33.5 33.7 33.7 33.8 33.8 34.0 34.1 34.3 34.3 34.5 34.6 34.7 35.0 35.1 35.3 35.4 35.7 35.9 36.1 36.3 36.5 36.7 37.0 37.3 37.5 37.7 38.1 38.3 -99.0 -99.0 +45 SC TMIN 3 38.4 38.6 38.9 39.2 39.5 39.7 40.0 40.3 40.6 40.8 40.9 41.3 41.6 41.8 41.9 42.3 42.5 42.7 42.9 43.1 43.5 43.6 43.8 43.9 44.2 44.5 44.7 44.8 45.0 45.2 45.6 +45 SC TMIN 4 45.7 45.8 46.0 46.1 46.4 46.7 46.9 47.1 47.2 47.6 47.7 48.0 48.2 48.5 48.7 49.0 49.3 49.6 49.8 50.0 50.4 50.6 50.9 51.2 51.5 51.9 52.1 52.4 52.9 53.1 -99.0 +45 SC TMIN 5 53.4 53.9 54.1 54.5 54.7 55.1 55.4 55.7 56.0 56.3 56.7 56.9 57.3 57.6 57.8 58.2 58.5 58.7 59.0 59.4 59.6 59.8 60.1 60.4 60.7 61.0 61.2 61.5 61.9 62.0 62.3 +45 SC TMIN 6 62.6 62.9 63.0 63.3 63.6 63.8 63.9 64.3 64.5 64.8 64.8 65.1 65.5 65.6 65.8 65.9 66.2 66.5 66.6 66.8 66.9 67.1 67.4 67.5 67.7 67.8 68.0 68.2 68.4 68.5 -99.0 +45 SC TMIN 7 68.6 68.8 69.0 69.1 69.2 69.4 69.6 69.6 69.7 69.7 69.8 69.9 69.9 70.0 70.0 70.1 70.1 70.1 70.2 70.2 70.3 70.5 70.4 70.4 70.3 70.3 70.1 70.1 70.1 70.1 70.0 +45 SC TMIN 8 70.0 70.0 70.0 69.8 69.8 69.7 69.7 69.7 69.6 69.4 69.3 69.2 69.1 69.0 68.9 68.9 68.9 68.7 68.6 68.5 68.3 68.1 68.1 68.0 67.9 67.8 67.7 67.5 67.4 67.2 67.0 +45 SC TMIN 9 67.0 66.9 66.6 66.5 66.3 66.1 65.9 65.6 65.5 65.3 64.8 64.6 64.4 64.1 63.7 63.5 63.1 62.7 62.5 62.0 61.6 61.3 60.8 60.4 60.0 59.6 59.2 58.7 58.2 57.7 -99.0 +45 SC TMIN 10 57.2 56.7 56.3 55.7 55.3 54.8 54.3 54.0 53.5 53.1 52.7 52.2 51.9 51.4 51.0 50.7 50.3 50.0 49.6 49.2 49.0 48.6 48.3 48.0 47.8 47.5 47.1 47.0 46.7 46.4 46.1 +45 SC TMIN 11 46.0 45.7 45.5 45.1 45.0 44.8 44.5 44.2 44.0 43.7 43.5 43.2 43.1 42.7 42.6 42.2 42.0 41.7 41.5 41.2 41.0 40.7 40.4 40.2 40.0 39.7 39.4 39.2 38.9 38.6 -99.0 +45 SC TMIN 12 38.4 38.1 37.8 37.6 37.4 37.1 36.9 36.7 36.4 36.3 36.0 35.9 35.7 35.5 35.3 35.1 35.0 34.8 34.7 34.4 34.4 34.3 34.1 34.1 34.0 33.9 33.8 33.6 33.5 33.5 33.5 +45 SC TAVG 1 44.1 44.1 44.0 44.0 44.0 43.9 43.8 43.8 43.6 43.6 43.5 43.5 43.5 43.5 43.6 43.6 43.7 43.7 43.9 43.9 44.0 44.0 44.0 44.1 44.2 44.2 44.3 44.3 44.4 44.6 44.7 +45 SC TAVG 2 44.8 45.0 45.1 45.2 45.3 45.6 45.8 45.8 46.0 46.2 46.3 46.6 46.7 46.9 47.1 47.3 47.6 47.7 47.9 48.2 48.5 48.7 48.9 49.1 49.5 49.7 49.9 50.3 50.4 -99.0 -99.0 +45 SC TAVG 3 50.6 50.8 51.1 51.5 51.6 51.9 52.1 52.5 52.7 52.9 53.3 53.5 53.8 53.9 54.4 54.6 54.8 55.0 55.3 55.6 55.8 56.0 56.3 56.6 56.8 56.9 57.2 57.5 57.7 57.9 58.2 +45 SC TAVG 4 58.4 58.7 58.8 59.1 59.3 59.7 59.8 60.0 60.3 60.6 60.8 60.9 61.2 61.5 61.7 62.0 62.3 62.5 62.7 63.0 63.3 63.5 63.8 64.0 64.3 64.6 64.9 65.1 65.4 65.7 -99.0 +45 SC TAVG 5 66.0 66.2 66.5 66.8 67.0 67.4 67.6 67.9 68.0 68.5 68.7 68.9 69.2 69.5 69.7 69.9 70.2 70.4 70.7 70.9 71.2 71.5 71.8 71.9 72.2 72.4 72.6 72.9 73.1 73.4 73.6 +45 SC TAVG 6 73.8 74.1 74.3 74.4 74.6 74.9 75.2 75.4 75.5 75.8 75.9 76.2 76.4 76.5 76.7 76.9 77.1 77.3 77.5 77.5 77.8 77.9 78.1 78.3 78.5 78.5 78.7 78.9 79.1 79.2 -99.0 +45 SC TAVG 7 79.3 79.5 79.5 79.7 79.8 80.0 80.2 80.2 80.2 80.3 80.4 80.4 80.5 80.5 80.5 80.5 80.6 80.7 80.8 80.8 80.8 80.9 80.8 80.7 80.7 80.6 80.6 80.5 80.5 80.5 80.3 +45 SC TAVG 8 80.5 80.3 80.3 80.2 80.0 80.0 79.9 79.7 79.7 79.6 79.5 79.5 79.3 79.3 79.1 79.1 79.0 78.7 78.6 78.5 78.5 78.4 78.2 78.1 77.9 77.8 77.7 77.6 77.6 77.3 77.0 +45 SC TAVG 9 76.9 76.9 76.8 76.6 76.4 76.1 75.9 75.9 75.6 75.3 75.1 74.9 74.5 74.2 74.0 73.8 73.5 73.2 72.9 72.6 72.3 71.9 71.5 71.3 70.7 70.5 70.1 69.6 69.3 68.9 -99.0 +45 SC TAVG 10 68.4 68.0 67.7 67.3 66.8 66.5 66.0 65.7 65.3 65.0 64.6 64.2 63.8 63.6 63.2 62.7 62.5 62.2 61.8 61.5 61.2 60.9 60.6 60.3 60.0 59.7 59.5 59.1 58.9 58.7 58.4 +45 SC TAVG 11 58.1 57.9 57.7 57.3 57.1 56.9 56.6 56.3 56.1 55.9 55.6 55.3 55.0 54.7 54.4 54.2 53.8 53.6 53.4 53.0 52.7 52.5 52.2 51.8 51.6 51.3 50.9 50.7 50.5 50.1 -99.0 +45 SC TAVG 12 49.8 49.5 49.2 48.9 48.7 48.4 48.1 47.8 47.6 47.4 47.2 46.9 46.7 46.6 46.3 46.1 45.9 45.8 45.6 45.5 45.3 45.0 44.9 44.8 44.8 44.7 44.5 44.4 44.3 44.2 44.0 +45 SC RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +45 SC RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +45 SC RVP 3 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +45 SC RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +45 SC RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +45 SC RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +45 SC RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +45 SC RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +45 SC RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +45 SC RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +45 SC RVP 11 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 +45 SC RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +46 SD TMAX 1 26.9 26.8 26.7 26.6 26.5 26.4 26.3 26.3 26.1 26.0 26.0 26.0 26.1 26.3 26.3 26.3 26.4 26.5 26.6 26.7 26.8 26.9 27.0 27.3 27.5 27.6 27.8 28.0 28.4 28.6 28.7 +46 SD TMAX 2 28.9 29.4 29.7 29.8 30.1 30.5 30.8 30.9 31.4 31.6 31.9 32.3 32.5 32.7 33.3 33.4 33.7 34.2 34.4 34.6 35.1 35.3 35.6 36.1 36.3 36.7 37.1 37.5 37.6 -99.0 -99.0 +46 SD TMAX 3 37.7 38.0 38.5 38.8 39.3 39.6 39.9 40.3 40.6 41.2 41.4 42.0 42.3 42.8 43.0 43.6 44.0 44.5 44.8 45.5 45.8 46.1 46.7 47.2 47.6 48.3 48.6 49.2 49.6 50.2 50.6 +46 SD TMAX 4 51.2 51.5 52.2 52.6 53.1 53.6 54.1 54.6 55.1 55.5 56.0 56.4 56.9 57.3 57.8 58.2 58.8 59.1 59.6 60.0 60.6 60.8 61.2 61.7 61.9 62.6 62.9 63.2 63.7 64.0 -99.0 +46 SD TMAX 5 64.3 64.8 65.2 65.5 66.0 66.2 66.7 67.0 67.5 67.7 68.1 68.6 68.8 69.0 69.6 69.8 70.1 70.6 70.8 71.1 71.7 71.9 72.4 72.7 72.9 73.4 73.7 73.8 74.4 74.7 74.8 +46 SD TMAX 6 75.4 75.6 75.8 76.1 76.5 76.7 77.0 77.4 77.7 78.0 78.3 78.5 78.9 79.0 79.4 79.7 79.9 80.1 80.6 80.7 80.9 81.1 81.6 81.8 81.9 82.2 82.3 82.7 83.0 83.1 -99.0 +46 SD TMAX 7 83.3 83.6 83.9 84.0 84.2 84.3 84.5 84.6 84.7 84.9 85.2 85.3 85.4 85.6 85.6 85.7 85.8 85.8 85.9 85.9 86.1 86.1 86.2 86.1 86.1 86.1 86.1 86.1 86.1 86.1 86.1 +46 SD TMAX 8 86.1 86.1 85.8 85.7 85.7 85.7 85.5 85.5 85.4 85.3 85.0 85.0 84.8 84.6 84.4 84.3 84.0 83.9 83.7 83.4 83.0 82.8 82.6 82.4 82.0 81.7 81.4 81.0 80.7 80.4 80.2 +46 SD TMAX 9 79.6 79.3 79.0 78.6 78.2 77.9 77.5 77.2 76.9 76.4 76.1 75.7 75.3 75.0 74.5 74.3 74.0 73.4 73.2 72.8 72.3 72.1 71.7 71.3 70.9 70.4 70.2 69.8 69.4 69.0 -99.0 +46 SD TMAX 10 68.7 68.2 67.9 67.4 67.0 66.5 66.0 65.7 65.3 64.8 64.3 63.8 63.2 62.7 62.1 61.6 61.0 60.3 59.8 59.2 58.6 58.0 57.2 56.7 56.0 55.2 54.7 54.0 53.1 52.6 51.8 +46 SD TMAX 11 51.0 50.3 49.6 48.8 48.1 47.5 46.9 46.1 45.6 44.9 44.2 43.7 43.0 42.4 42.0 41.3 40.9 40.3 39.8 39.2 38.6 38.4 37.7 37.4 36.9 36.6 36.0 35.8 35.4 35.0 -99.0 +46 SD TMAX 12 34.7 34.3 34.0 33.5 33.2 33.0 32.6 32.2 32.1 31.7 31.4 31.3 30.8 30.5 30.4 30.0 29.9 29.7 29.4 29.1 28.8 28.7 28.6 28.5 28.1 27.8 27.7 27.6 27.5 27.1 27.0 +46 SD TMIN 1 5.5 5.4 5.2 5.2 5.1 5.0 4.8 4.7 4.6 4.6 4.5 4.4 4.4 4.5 4.5 4.6 4.7 4.7 5.0 5.0 5.1 5.2 5.3 5.5 5.9 6.0 6.2 6.3 6.5 6.9 7.2 +46 SD TMIN 2 7.4 7.8 8.0 8.3 8.7 8.9 9.1 9.5 9.9 10.1 10.5 10.8 11.3 11.5 11.7 12.1 12.4 12.8 13.2 13.4 13.6 14.2 14.4 14.9 15.1 15.4 15.9 16.1 16.4 -99.0 -99.0 +46 SD TMIN 3 16.6 16.8 17.2 17.6 18.0 18.3 18.7 19.0 19.4 19.8 20.0 20.4 20.7 21.3 21.5 21.8 22.2 22.6 22.9 23.3 23.7 24.2 24.4 24.7 25.2 25.5 25.7 26.3 26.5 26.8 27.2 +46 SD TMIN 4 27.6 27.9 28.3 28.7 29.2 29.5 29.8 30.3 30.5 30.8 31.3 31.6 31.9 32.5 32.8 33.2 33.5 33.8 34.4 34.7 35.2 35.5 35.8 36.3 36.6 37.2 37.4 37.9 38.4 38.6 -99.0 +46 SD TMIN 5 39.2 39.5 40.0 40.3 40.6 41.1 41.4 42.0 42.2 42.6 43.1 43.3 43.9 44.2 44.5 44.9 45.2 45.4 46.0 46.2 46.7 47.1 47.3 47.8 48.1 48.3 48.8 49.1 49.2 49.7 50.1 +46 SD TMIN 6 50.2 50.7 51.0 51.2 51.7 51.9 52.2 52.5 52.8 53.0 53.2 53.6 53.8 54.0 54.3 54.7 54.9 55.2 55.4 55.6 55.8 56.1 56.4 56.5 56.7 57.0 57.2 57.5 57.6 57.7 -99.0 +46 SD TMIN 7 57.9 58.3 58.4 58.5 58.6 58.8 58.9 59.2 59.3 59.4 59.6 59.6 59.7 59.8 60.0 60.0 60.1 60.1 60.2 60.3 60.3 60.4 60.4 60.4 60.4 60.5 60.4 60.4 60.4 60.4 60.3 +46 SD TMIN 8 60.4 60.3 60.2 60.2 60.1 60.0 59.8 59.6 59.5 59.4 59.3 59.1 58.8 58.7 58.4 58.3 58.1 57.8 57.4 57.3 57.0 56.7 56.4 56.1 55.7 55.4 55.1 54.6 54.3 53.8 53.5 +46 SD TMIN 9 53.1 52.6 52.3 51.8 51.4 51.1 50.6 50.2 49.7 49.4 48.9 48.6 48.2 47.7 47.3 46.9 46.6 46.2 45.8 45.4 44.9 44.6 44.1 43.9 43.4 43.0 42.8 42.2 41.9 41.6 -99.0 +46 SD TMIN 10 41.1 40.8 40.4 40.0 39.7 39.3 38.8 38.4 38.2 37.8 37.3 36.9 36.4 36.1 35.5 35.2 34.8 34.3 34.0 33.3 33.1 32.5 32.2 31.7 31.2 30.7 30.3 29.9 29.3 29.1 28.3 +46 SD TMIN 11 28.1 27.4 27.1 26.6 26.2 25.6 25.2 24.7 24.2 23.7 23.4 22.8 22.4 21.8 21.5 21.0 20.5 20.1 19.8 19.3 18.9 18.5 18.0 17.6 17.1 16.7 16.3 15.9 15.4 15.0 -99.0 +46 SD TMIN 12 14.6 14.2 13.9 13.4 13.1 12.6 12.3 11.8 11.6 11.3 10.8 10.6 10.3 9.9 9.6 9.2 9.0 8.8 8.2 8.2 7.9 7.7 7.4 7.1 6.9 6.9 6.4 6.2 6.1 5.9 5.6 +46 SD TAVG 1 16.2 16.0 15.9 15.9 15.9 15.8 15.7 15.4 15.3 15.3 15.2 15.2 15.2 15.3 15.4 15.4 15.7 15.8 15.8 15.9 15.9 16.0 16.1 16.3 16.7 16.9 17.0 17.1 17.4 17.8 18.0 +46 SD TAVG 2 18.2 18.6 18.9 19.1 19.5 19.7 20.0 20.2 20.7 20.8 21.1 21.6 21.8 22.1 22.4 22.8 23.3 23.4 23.6 24.2 24.4 24.7 25.1 25.4 25.9 26.1 26.3 26.8 27.0 -99.0 -99.0 +46 SD TAVG 3 27.1 27.6 27.8 28.3 28.7 28.9 29.4 29.7 30.2 30.5 30.7 31.3 31.5 32.1 32.3 32.9 33.1 33.4 34.0 34.3 34.8 35.2 35.7 36.0 36.4 36.9 37.2 37.6 38.1 38.6 38.9 +46 SD TAVG 4 39.3 39.8 40.1 40.8 41.0 41.6 41.9 42.5 42.7 43.2 43.6 44.0 44.5 44.9 45.5 45.7 46.0 46.6 47.0 47.4 47.9 48.1 48.5 49.0 49.4 49.7 50.3 50.6 50.9 51.5 -99.0 +46 SD TAVG 5 51.8 52.2 52.6 52.9 53.3 53.7 54.2 54.4 54.9 55.3 55.5 55.9 56.4 56.6 57.2 57.4 57.7 58.2 58.4 58.7 59.3 59.5 59.7 60.3 60.5 60.7 61.3 61.5 61.7 62.3 62.5 +46 SD TAVG 6 62.6 63.2 63.5 63.6 64.0 64.4 64.6 64.9 65.3 65.5 65.7 66.1 66.4 66.6 66.8 67.2 67.4 67.6 68.0 68.2 68.4 68.7 69.0 69.2 69.3 69.6 69.8 70.1 70.2 70.5 -99.0 +46 SD TAVG 7 70.6 70.8 71.3 71.4 71.4 71.5 71.6 71.9 72.2 72.3 72.3 72.4 72.6 72.7 72.8 72.8 72.9 72.9 73.0 73.3 73.3 73.4 73.4 73.4 73.4 73.4 73.4 73.4 73.4 73.2 73.2 +46 SD TAVG 8 73.2 73.1 73.0 73.0 72.9 72.9 72.8 72.7 72.6 72.3 72.2 72.0 71.9 71.7 71.4 71.2 71.0 70.9 70.7 70.3 70.0 69.8 69.4 69.2 68.8 68.7 68.3 67.9 67.5 67.1 66.9 +46 SD TAVG 9 66.2 66.0 65.8 65.1 64.9 64.6 64.0 63.8 63.2 62.9 62.6 62.1 61.8 61.3 61.0 60.6 60.2 59.9 59.5 59.0 58.8 58.2 58.0 57.6 57.1 56.8 56.5 56.0 55.7 55.3 -99.0 +46 SD TAVG 10 55.0 54.6 54.1 53.9 53.3 53.0 52.3 52.1 51.8 51.1 50.9 50.2 49.9 49.3 49.0 48.3 48.0 47.3 46.9 46.4 45.8 45.3 44.8 44.2 43.5 43.0 42.4 41.9 41.3 40.8 40.1 +46 SD TAVG 11 39.4 39.0 38.2 37.7 37.2 36.4 36.0 35.3 35.0 34.2 33.9 33.3 32.6 32.3 31.6 31.3 30.6 30.3 29.7 29.4 28.8 28.5 27.9 27.6 27.1 26.6 26.2 25.9 25.5 25.0 -99.0 +46 SD TAVG 12 24.7 24.3 23.9 23.5 23.2 22.8 22.4 22.2 21.8 21.5 21.2 20.8 20.6 20.3 20.0 19.7 19.4 19.1 19.0 18.7 18.3 18.2 18.0 17.7 17.6 17.3 17.2 16.9 16.8 16.4 16.3 +46 SD RVP 1 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 +46 SD RVP 2 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 13.0 -99.0 -99.0 +46 SD RVP 3 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 +46 SD RVP 4 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +46 SD RVP 5 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 +46 SD RVP 6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 -99.0 +46 SD RVP 7 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 +46 SD RVP 8 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 +46 SD RVP 9 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 -99.0 +46 SD RVP 10 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 8.6 +46 SD RVP 11 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +46 SD RVP 12 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 +47 TN TMAX 1 46.6 46.4 46.4 46.3 46.1 45.9 45.9 45.9 45.8 45.7 45.7 45.6 45.6 45.6 45.7 45.7 45.7 45.9 45.9 46.0 46.3 46.3 46.4 46.4 46.5 46.7 47.0 47.2 47.3 47.5 47.7 +47 TN TMAX 2 48.0 48.3 48.5 48.7 49.0 49.2 49.4 49.7 50.2 50.2 50.5 50.9 51.2 51.3 51.6 52.0 52.2 52.4 52.9 53.1 53.3 53.8 54.1 54.3 54.7 55.0 55.3 55.7 55.8 -99.0 -99.0 +47 TN TMAX 3 56.0 56.2 56.8 57.0 57.2 57.8 58.0 58.3 58.6 58.9 59.3 59.6 59.9 60.3 60.6 60.9 61.3 61.6 61.9 62.2 62.5 62.9 63.1 63.5 63.8 64.0 64.5 64.8 65.0 65.5 65.7 +47 TN TMAX 4 66.0 66.4 66.7 66.9 67.2 67.6 67.9 68.1 68.5 68.7 68.9 69.3 69.6 69.8 70.1 70.4 70.7 70.9 71.2 71.4 71.7 71.9 72.2 72.5 72.7 73.0 73.2 73.5 73.6 73.8 -99.0 +47 TN TMAX 5 74.1 74.4 74.6 74.7 75.0 75.3 75.5 75.7 75.9 76.3 76.5 76.6 77.0 77.3 77.5 77.7 78.0 78.2 78.5 78.7 79.1 79.3 79.5 79.9 80.1 80.3 80.6 81.0 81.2 81.5 81.8 +47 TN TMAX 6 82.0 82.3 82.6 82.8 83.1 83.3 83.6 83.8 84.1 84.3 84.5 84.7 84.9 85.2 85.4 85.5 85.8 85.9 86.1 86.3 86.5 86.7 86.8 86.9 87.0 87.2 87.4 87.5 87.5 87.8 -99.0 +47 TN TMAX 7 87.8 87.8 88.0 88.1 88.3 88.3 88.5 88.6 88.6 88.7 88.7 88.7 88.7 88.8 88.8 88.8 88.8 88.9 89.0 89.0 89.0 89.1 89.2 89.3 89.3 89.3 89.3 89.2 89.1 89.1 89.0 +47 TN TMAX 8 89.0 89.0 89.0 89.0 88.9 88.9 88.9 88.8 88.7 88.7 88.6 88.4 88.4 88.2 88.2 88.1 87.9 87.9 87.8 87.5 87.5 87.3 87.2 87.0 86.9 86.7 86.5 86.4 86.2 86.0 85.8 +47 TN TMAX 9 85.6 85.5 85.1 85.0 84.7 84.5 84.3 84.1 83.8 83.5 83.4 83.1 82.8 82.5 82.3 82.0 81.7 81.5 81.2 80.8 80.5 80.3 79.9 79.6 79.4 79.0 78.6 78.4 77.8 77.6 -99.0 +47 TN TMAX 10 77.4 76.8 76.5 76.3 75.8 75.5 75.2 74.6 74.4 74.0 73.6 73.3 72.8 72.6 72.2 71.7 71.4 70.9 70.6 70.3 69.7 69.5 69.0 68.7 68.4 67.9 67.6 67.0 66.7 66.4 66.0 +47 TN TMAX 11 65.5 65.1 64.8 64.3 63.9 63.5 63.1 62.8 62.3 61.9 61.7 61.1 60.9 60.5 60.0 59.8 59.3 58.9 58.7 58.2 57.9 57.5 57.1 56.8 56.3 56.0 55.8 55.3 55.0 54.7 -99.0 +47 TN TMAX 12 54.3 53.9 53.7 53.4 52.9 52.7 52.4 52.0 51.7 51.6 51.1 50.9 50.6 50.4 50.0 49.8 49.6 49.3 49.0 48.8 48.7 48.5 48.2 47.9 47.8 47.6 47.5 47.2 46.9 46.9 46.8 +47 TN TMIN 1 27.6 27.5 27.4 27.4 27.2 27.2 27.1 27.0 27.0 26.9 26.9 26.9 26.8 26.8 26.6 26.6 26.6 26.7 26.8 26.8 26.8 26.9 26.9 26.9 27.0 27.0 27.1 27.1 27.2 27.3 27.4 +47 TN TMIN 2 27.6 27.8 27.9 27.9 28.0 28.1 28.3 28.5 28.5 28.8 29.0 29.3 29.4 29.5 29.7 30.1 30.3 30.4 30.6 31.0 31.3 31.4 31.8 32.0 32.3 32.6 32.9 33.3 33.4 -99.0 -99.0 +47 TN TMIN 3 33.5 33.9 34.3 34.5 34.8 35.2 35.4 35.7 36.1 36.3 36.5 36.9 37.1 37.5 37.8 38.0 38.2 38.5 38.8 39.0 39.2 39.5 39.8 40.0 40.3 40.4 40.7 40.9 41.1 41.4 41.6 +47 TN TMIN 4 41.8 42.0 42.3 42.5 42.7 43.0 43.3 43.4 43.7 43.8 44.3 44.5 44.6 45.0 45.3 45.5 45.7 46.1 46.4 46.6 46.9 47.3 47.5 47.7 48.3 48.4 48.7 49.1 49.4 49.7 -99.0 +47 TN TMIN 5 50.0 50.4 50.8 51.0 51.3 51.8 52.0 52.3 52.8 53.0 53.2 53.7 54.0 54.2 54.6 54.9 55.1 55.4 55.9 56.1 56.4 56.8 57.0 57.3 57.6 57.9 58.2 58.5 58.8 59.1 59.4 +47 TN TMIN 6 59.7 60.0 60.4 60.5 60.8 61.2 61.5 61.6 61.9 62.1 62.5 62.6 62.8 63.1 63.4 63.5 63.7 64.1 64.1 64.5 64.6 64.8 65.0 65.2 65.5 65.6 65.7 65.9 66.1 66.3 -99.0 +47 TN TMIN 7 66.5 66.6 66.7 66.8 67.0 67.2 67.3 67.4 67.4 67.5 67.5 67.6 67.7 67.7 67.8 67.9 68.0 68.0 68.1 68.1 68.3 68.3 68.1 68.0 68.0 67.9 67.9 67.9 67.8 67.8 67.7 +47 TN TMIN 8 67.7 67.7 67.6 67.4 67.3 67.2 67.0 67.0 66.9 66.8 66.8 66.7 66.5 66.4 66.2 66.0 65.9 65.8 65.6 65.5 65.4 65.2 65.1 64.9 64.8 64.6 64.4 64.2 64.1 63.8 63.6 +47 TN TMIN 9 63.5 63.3 63.1 62.8 62.7 62.4 62.2 61.8 61.6 61.3 61.0 60.7 60.3 60.1 59.7 59.3 59.0 58.6 58.1 57.8 57.4 56.9 56.5 56.1 55.7 55.2 54.7 54.2 53.7 53.2 -99.0 +47 TN TMIN 10 52.7 52.2 51.7 51.2 50.7 50.2 49.8 49.3 48.9 48.5 48.0 47.7 47.2 46.8 46.5 46.0 45.7 45.4 45.0 44.7 44.3 44.0 43.8 43.5 43.1 42.9 42.5 42.3 42.1 41.9 41.6 +47 TN TMIN 11 41.4 41.1 40.9 40.7 40.5 40.2 40.0 39.8 39.5 39.2 39.1 38.8 38.5 38.3 38.1 37.7 37.5 37.3 37.1 36.7 36.5 36.3 35.9 35.7 35.4 35.2 34.8 34.5 34.4 34.0 -99.0 +47 TN TMIN 12 33.7 33.4 33.2 32.9 32.6 32.4 32.1 31.9 31.7 31.5 31.1 30.9 30.7 30.6 30.4 30.1 29.8 29.7 29.6 29.3 29.2 29.0 28.8 28.7 28.6 28.4 28.3 28.0 27.9 27.8 27.8 +47 TN TAVG 1 37.1 37.0 36.9 36.8 36.8 36.7 36.6 36.5 36.4 36.3 36.2 36.2 36.1 36.1 36.1 36.1 36.2 36.3 36.4 36.5 36.5 36.5 36.7 36.8 36.8 36.9 37.0 37.1 37.3 37.5 37.6 +47 TN TAVG 2 37.8 37.9 38.2 38.4 38.5 38.7 38.8 39.2 39.4 39.6 39.7 39.9 40.3 40.6 40.7 41.0 41.2 41.5 41.8 42.0 42.4 42.7 43.0 43.2 43.6 43.7 44.1 44.5 44.7 -99.0 -99.0 +47 TN TAVG 3 44.8 45.1 45.5 45.8 46.1 46.5 46.7 47.0 47.4 47.7 48.0 48.2 48.6 48.9 49.1 49.5 49.9 50.1 50.3 50.7 50.9 51.1 51.5 51.9 52.1 52.3 52.6 52.9 53.1 53.3 53.8 +47 TN TAVG 4 54.0 54.2 54.4 54.8 55.0 55.2 55.5 55.8 56.2 56.3 56.6 56.9 57.2 57.4 57.7 58.0 58.3 58.5 58.8 59.1 59.3 59.6 59.9 60.2 60.4 60.7 61.0 61.3 61.6 61.7 -99.0 +47 TN TAVG 5 62.1 62.5 62.6 62.9 63.2 63.5 63.7 64.0 64.4 64.6 64.9 65.2 65.5 65.7 66.0 66.4 66.6 66.9 67.2 67.4 67.7 68.1 68.4 68.5 68.9 69.2 69.4 69.7 70.1 70.3 70.5 +47 TN TAVG 6 70.8 71.2 71.5 71.7 72.0 72.3 72.5 72.8 72.9 73.3 73.5 73.7 73.9 74.2 74.3 74.6 74.9 74.9 75.2 75.4 75.6 75.8 75.9 76.1 76.3 76.5 76.6 76.8 76.9 77.0 -99.0 +47 TN TAVG 7 77.1 77.1 77.4 77.6 77.7 77.8 77.9 77.9 77.9 78.0 78.1 78.1 78.2 78.3 78.3 78.3 78.4 78.5 78.6 78.7 78.8 78.8 78.8 78.8 78.7 78.7 78.6 78.6 78.4 78.4 78.3 +47 TN TAVG 8 78.4 78.3 78.3 78.1 78.1 78.1 78.0 77.9 77.8 77.7 77.7 77.6 77.5 77.3 77.3 77.1 77.0 76.8 76.7 76.6 76.4 76.3 76.1 76.0 75.8 75.7 75.5 75.4 75.1 74.9 74.8 +47 TN TAVG 9 74.6 74.3 74.1 73.9 73.8 73.5 73.2 73.0 72.8 72.5 72.1 71.9 71.6 71.3 71.0 70.6 70.5 70.0 69.7 69.4 68.9 68.6 68.3 67.8 67.5 67.1 66.7 66.3 65.8 65.4 -99.0 +47 TN TAVG 10 65.0 64.5 64.2 63.8 63.3 63.0 62.3 62.1 61.8 61.2 60.9 60.4 60.1 59.8 59.3 59.0 58.5 58.2 57.9 57.5 57.1 56.8 56.4 56.1 55.7 55.4 55.0 54.7 54.5 54.0 53.8 +47 TN TAVG 11 53.5 53.1 52.8 52.5 52.2 51.9 51.6 51.3 50.9 50.6 50.4 50.0 49.7 49.4 49.0 48.8 48.5 48.1 47.8 47.5 47.2 46.9 46.5 46.3 45.9 45.6 45.3 44.9 44.7 44.3 -99.0 +47 TN TAVG 12 44.1 43.8 43.3 43.1 42.9 42.5 42.3 41.9 41.7 41.4 41.2 40.9 40.7 40.5 40.2 39.9 39.8 39.6 39.3 39.1 38.9 38.8 38.6 38.4 38.1 38.0 37.9 37.7 37.5 37.4 37.2 +47 TN RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +47 TN RVP 2 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 -99.0 +47 TN RVP 3 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +47 TN RVP 4 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +47 TN RVP 5 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +47 TN RVP 6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 -99.0 +47 TN RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +47 TN RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +47 TN RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +47 TN RVP 10 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 9.6 +47 TN RVP 11 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 -99.0 +47 TN RVP 12 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +48 TX TMAX 1 58.8 58.8 58.8 58.7 58.7 58.6 58.5 58.5 58.5 58.4 58.4 58.5 58.6 58.7 58.7 58.8 58.8 58.9 58.9 59.0 59.1 59.1 59.3 59.5 59.7 59.8 59.9 60.0 60.3 60.4 60.7 +48 TX TMAX 2 60.9 61.1 61.3 61.5 61.6 61.9 62.2 62.4 62.6 62.8 63.0 63.3 63.6 63.8 64.0 64.2 64.5 64.7 65.0 65.2 65.5 65.8 65.9 66.3 66.6 66.8 67.0 67.4 67.6 -99.0 -99.0 +48 TX TMAX 3 67.7 67.9 68.2 68.5 68.7 68.9 69.2 69.5 69.7 70.0 70.2 70.5 70.7 71.1 71.3 71.5 71.7 72.0 72.2 72.5 72.8 72.9 73.1 73.3 73.5 73.9 74.1 74.2 74.3 74.6 74.9 +48 TX TMAX 4 75.1 75.3 75.6 75.7 75.8 76.1 76.4 76.6 76.7 76.9 77.1 77.4 77.6 77.8 77.9 78.1 78.5 78.6 78.8 79.0 79.3 79.5 79.7 79.8 80.1 80.4 80.6 80.7 81.0 81.2 -99.0 +48 TX TMAX 5 81.4 81.6 81.9 82.0 82.3 82.5 82.6 82.9 83.1 83.4 83.5 83.8 84.0 84.2 84.5 84.7 84.9 85.0 85.4 85.6 85.8 86.0 86.2 86.4 86.7 86.9 87.2 87.3 87.5 87.9 88.1 +48 TX TMAX 6 88.3 88.4 88.7 88.9 89.1 89.4 89.6 89.8 89.9 90.2 90.4 90.5 90.6 90.9 91.1 91.2 91.4 91.4 91.7 91.9 92.0 92.1 92.3 92.4 92.6 92.7 92.8 92.9 93.1 93.1 -99.0 +48 TX TMAX 7 93.3 93.5 93.6 93.6 93.7 93.8 93.8 93.9 94.1 94.2 94.2 94.3 94.5 94.6 94.6 94.6 94.7 94.7 94.7 94.8 94.9 94.9 95.0 95.0 95.0 95.1 95.1 95.2 95.2 95.2 95.2 +48 TX TMAX 8 95.2 95.2 95.3 95.3 95.3 95.2 95.2 95.1 95.1 95.1 95.0 94.9 94.8 94.7 94.6 94.6 94.5 94.4 94.3 94.2 94.0 93.8 93.7 93.6 93.5 93.3 93.1 92.9 92.7 92.5 92.3 +48 TX TMAX 9 92.1 91.9 91.7 91.4 91.2 91.0 90.8 90.7 90.3 90.0 89.9 89.7 89.5 89.2 88.9 88.6 88.5 88.3 87.9 87.7 87.5 87.3 86.9 86.7 86.5 86.2 85.9 85.7 85.5 85.1 -99.0 +48 TX TMAX 10 84.9 84.7 84.4 84.1 83.8 83.5 83.2 82.9 82.6 82.3 82.1 81.6 81.4 81.1 80.7 80.3 80.1 79.7 79.3 79.0 78.6 78.2 77.9 77.5 77.1 76.8 76.3 76.0 75.6 75.2 74.8 +48 TX TMAX 11 74.3 73.9 73.5 73.2 72.7 72.4 71.9 71.6 71.2 70.8 70.5 70.1 69.8 69.3 69.1 68.8 68.4 68.0 67.7 67.4 67.1 66.8 66.5 66.2 65.9 65.5 65.3 65.1 64.7 64.4 -99.0 +48 TX TMAX 12 64.2 63.9 63.7 63.4 63.2 62.9 62.7 62.5 62.2 62.0 61.8 61.7 61.5 61.3 61.0 60.9 60.7 60.6 60.5 60.2 60.0 59.9 59.8 59.7 59.6 59.5 59.3 59.2 59.1 58.9 58.8 +48 TX TMIN 1 37.1 37.0 37.0 36.9 36.8 36.8 36.8 36.7 36.7 36.7 36.7 36.7 36.8 36.8 36.9 36.9 37.0 37.0 37.1 37.1 37.2 37.3 37.3 37.4 37.4 37.7 37.8 37.8 37.9 38.2 38.3 +48 TX TMIN 2 38.4 38.5 38.7 38.8 39.0 39.2 39.4 39.5 39.7 39.9 40.0 40.3 40.6 40.7 40.9 41.1 41.4 41.6 41.8 41.9 42.2 42.6 42.8 43.0 43.3 43.6 43.8 44.0 44.2 -99.0 -99.0 +48 TX TMIN 3 44.4 44.7 44.9 45.1 45.5 45.7 45.9 46.2 46.5 46.8 47.0 47.3 47.5 47.8 48.0 48.3 48.5 48.7 48.9 49.2 49.5 49.6 49.8 50.1 50.3 50.5 50.7 50.9 51.2 51.3 51.5 +48 TX TMIN 4 51.7 52.1 52.2 52.4 52.5 52.9 53.1 53.3 53.5 53.7 54.1 54.3 54.4 54.8 55.0 55.3 55.5 55.8 56.0 56.3 56.6 56.9 57.1 57.4 57.8 58.0 58.3 58.6 59.0 59.2 -99.0 +48 TX TMIN 5 59.5 59.9 60.2 60.4 60.8 61.1 61.3 61.6 62.0 62.2 62.4 62.8 63.1 63.3 63.6 63.9 64.1 64.5 64.7 64.9 65.1 65.5 65.7 65.9 66.2 66.5 66.7 66.9 67.1 67.4 67.6 +48 TX TMIN 6 67.8 68.1 68.2 68.4 68.6 68.9 69.0 69.2 69.4 69.7 69.8 69.9 70.0 70.3 70.5 70.6 70.7 70.8 71.0 71.1 71.3 71.3 71.4 71.6 71.7 71.9 72.0 72.1 72.2 72.2 -99.0 +48 TX TMIN 7 72.2 72.4 72.4 72.5 72.5 72.6 72.7 72.7 72.7 72.8 72.9 72.9 73.0 73.0 73.0 73.1 73.1 73.1 73.2 73.3 73.3 73.4 73.5 73.5 73.5 73.4 73.5 73.5 73.5 73.5 73.5 +48 TX TMIN 8 73.5 73.5 73.4 73.4 73.4 73.3 73.2 73.2 73.1 73.0 73.0 72.9 72.8 72.7 72.6 72.6 72.5 72.3 72.2 72.2 72.1 72.0 71.9 71.7 71.6 71.5 71.3 71.2 71.0 70.8 70.7 +48 TX TMIN 9 70.5 70.3 70.2 70.0 69.7 69.6 69.4 69.1 68.8 68.7 68.5 68.1 67.9 67.7 67.4 67.2 66.9 66.6 66.3 66.0 65.8 65.3 65.1 64.8 64.4 64.2 63.7 63.4 63.1 62.7 -99.0 +48 TX TMIN 10 62.4 62.1 61.6 61.3 60.9 60.5 60.2 59.7 59.5 59.2 58.7 58.4 58.0 57.7 57.4 56.9 56.7 56.3 55.9 55.6 55.3 54.9 54.6 54.2 53.9 53.5 53.2 52.9 52.5 52.2 51.8 +48 TX TMIN 11 51.5 51.3 50.8 50.5 50.2 49.8 49.5 49.2 48.9 48.6 48.3 47.9 47.6 47.3 47.1 46.6 46.4 46.1 45.7 45.5 45.2 44.9 44.5 44.3 44.0 43.7 43.4 43.2 42.8 42.6 -99.0 +48 TX TMIN 12 42.3 42.0 41.7 41.5 41.2 41.0 40.7 40.5 40.3 40.1 39.8 39.7 39.4 39.3 39.2 38.9 38.7 38.5 38.4 38.3 38.1 38.0 37.9 37.7 37.6 37.5 37.5 37.4 37.2 37.1 37.0 +48 TX TAVG 1 48.0 48.0 47.9 47.8 47.8 47.7 47.6 47.6 47.6 47.5 47.5 47.6 47.6 47.7 47.9 47.9 48.0 48.0 48.1 48.1 48.2 48.2 48.4 48.5 48.6 48.8 48.9 49.0 49.1 49.3 49.5 +48 TX TAVG 2 49.7 49.9 50.0 50.1 50.4 50.6 50.8 50.9 51.2 51.4 51.6 51.8 52.1 52.2 52.5 52.7 53.0 53.2 53.4 53.6 53.9 54.2 54.4 54.7 54.9 55.2 55.4 55.7 55.9 -99.0 -99.0 +48 TX TAVG 3 56.1 56.3 56.5 56.9 57.1 57.3 57.6 57.9 58.2 58.4 58.7 58.9 59.2 59.4 59.7 59.8 60.1 60.4 60.6 60.8 61.0 61.2 61.6 61.8 61.9 62.1 62.4 62.6 62.8 63.0 63.2 +48 TX TAVG 4 63.5 63.7 63.9 64.0 64.3 64.5 64.7 64.9 65.2 65.4 65.6 65.8 66.1 66.3 66.4 66.7 67.0 67.2 67.4 67.7 68.0 68.2 68.4 68.7 69.0 69.2 69.3 69.8 70.0 70.2 -99.0 +48 TX TAVG 5 70.4 70.8 71.1 71.2 71.5 71.9 72.1 72.2 72.5 72.9 73.1 73.3 73.5 73.8 74.1 74.3 74.5 74.8 75.1 75.3 75.5 75.7 75.9 76.4 76.5 76.6 76.8 77.2 77.4 77.6 77.9 +48 TX TAVG 6 78.0 78.2 78.5 78.8 78.9 79.1 79.2 79.5 79.7 79.9 80.0 80.3 80.4 80.5 80.7 80.9 81.2 81.2 81.4 81.5 81.6 81.7 81.9 82.0 82.1 82.3 82.4 82.6 82.7 82.8 -99.0 +48 TX TAVG 7 82.8 82.9 83.0 83.1 83.2 83.2 83.3 83.4 83.4 83.5 83.6 83.6 83.7 83.8 83.8 83.9 84.0 84.0 84.0 84.1 84.1 84.2 84.2 84.2 84.2 84.3 84.3 84.3 84.3 84.3 84.3 +48 TX TAVG 8 84.3 84.3 84.3 84.3 84.3 84.2 84.1 84.1 84.1 84.1 84.0 84.0 83.9 83.8 83.8 83.6 83.5 83.4 83.3 83.2 83.1 83.0 82.8 82.7 82.5 82.4 82.3 82.1 81.9 81.7 81.6 +48 TX TAVG 9 81.3 81.1 80.9 80.7 80.6 80.3 80.0 79.8 79.6 79.4 79.2 78.9 78.7 78.4 78.2 78.0 77.7 77.4 77.2 77.0 76.6 76.3 76.1 75.7 75.5 75.2 74.9 74.6 74.3 74.0 -99.0 +48 TX TAVG 10 73.8 73.3 73.0 72.8 72.3 72.0 71.8 71.3 71.1 70.8 70.3 70.1 69.8 69.4 69.1 68.7 68.4 68.1 67.6 67.3 67.0 66.6 66.2 65.9 65.5 65.1 64.8 64.4 64.0 63.7 63.3 +48 TX TAVG 11 63.0 62.6 62.2 61.9 61.4 61.2 60.7 60.4 60.1 59.7 59.4 59.0 58.7 58.4 58.1 57.7 57.4 57.1 56.8 56.5 56.1 55.8 55.6 55.2 55.0 54.7 54.3 54.1 53.8 53.5 -99.0 +48 TX TAVG 12 53.3 53.0 52.7 52.4 52.2 52.0 51.8 51.4 51.2 51.1 50.9 50.8 50.4 50.3 50.1 49.9 49.8 49.6 49.4 49.2 49.1 49.0 48.9 48.7 48.6 48.6 48.4 48.3 48.1 48.1 48.0 +48 TX RVP 1 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 +48 TX RVP 2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 -99.0 -99.0 +48 TX RVP 3 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 +48 TX RVP 4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 -99.0 +48 TX RVP 5 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 +48 TX RVP 6 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +48 TX RVP 7 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +48 TX RVP 8 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +48 TX RVP 9 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 -99.0 +48 TX RVP 10 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 7.3 +48 TX RVP 11 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 9.4 -99.0 +48 TX RVP 12 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 12.2 +49 UT TMAX 1 37.2 37.2 37.1 37.1 37.1 37.1 37.1 37.1 37.2 37.2 37.2 37.2 37.4 37.4 37.5 37.6 37.6 37.9 38.0 38.1 38.2 38.4 38.5 38.7 38.9 39.0 39.2 39.5 39.6 39.8 40.0 +49 UT TMAX 2 40.4 40.7 40.8 41.0 41.4 41.6 41.9 42.1 42.5 42.7 42.8 43.2 43.6 43.8 44.0 44.4 44.7 44.9 45.4 45.7 45.9 46.4 46.7 46.9 47.4 47.7 47.9 48.4 48.5 -99.0 -99.0 +49 UT TMAX 3 48.6 49.0 49.5 49.6 50.2 50.5 50.6 51.2 51.5 51.7 52.1 52.4 52.7 53.0 53.4 53.7 53.8 54.3 54.5 54.7 55.2 55.4 55.6 56.0 56.2 56.4 56.8 57.2 57.3 57.5 57.9 +49 UT TMAX 4 58.2 58.4 58.7 58.9 59.3 59.6 59.8 60.0 60.3 60.6 60.9 61.2 61.4 61.7 62.0 62.2 62.6 62.8 63.1 63.5 63.8 64.0 64.4 64.7 65.0 65.3 65.6 65.8 66.3 66.6 -99.0 +49 UT TMAX 5 66.7 67.2 67.6 67.7 68.2 68.5 68.6 69.2 69.4 69.6 70.2 70.4 70.7 71.3 71.4 71.9 72.3 72.6 73.0 73.3 73.7 74.2 74.4 74.8 75.3 75.5 76.1 76.4 76.7 77.2 77.5 +49 UT TMAX 6 78.0 78.4 78.7 79.2 79.5 79.9 80.4 80.6 81.1 81.5 81.7 82.1 82.6 82.7 83.3 83.7 83.9 84.3 84.6 84.9 85.3 85.5 85.9 86.2 86.5 86.8 87.2 87.6 87.7 87.9 -99.0 +49 UT TMAX 7 88.4 88.6 88.9 89.1 89.3 89.6 89.9 90.2 90.2 90.4 90.7 90.7 91.0 91.1 91.1 91.3 91.6 91.6 91.6 91.7 91.8 91.9 91.9 91.9 91.9 92.0 92.0 91.9 91.8 91.8 91.7 +49 UT TMAX 8 91.7 91.7 91.6 91.4 91.3 91.3 91.2 91.1 90.9 90.6 90.4 90.3 90.2 90.1 89.8 89.5 89.3 89.2 88.9 88.4 88.3 88.0 87.8 87.4 87.2 86.9 86.4 86.2 85.7 85.4 85.1 +49 UT TMAX 9 84.5 84.2 83.8 83.4 83.2 82.7 82.3 81.9 81.4 81.3 80.7 80.4 79.9 79.5 79.2 78.6 78.4 78.0 77.5 77.3 76.7 76.4 76.0 75.6 75.2 74.8 74.4 74.0 73.5 73.1 -99.0 +49 UT TMAX 10 72.7 72.3 71.9 71.6 71.0 70.6 70.2 69.7 69.2 68.9 68.4 68.0 67.4 67.0 66.4 65.9 65.5 64.9 64.3 63.9 63.3 62.9 62.3 61.7 61.2 60.6 60.1 59.3 58.9 58.2 57.7 +49 UT TMAX 11 57.1 56.5 56.0 55.3 54.9 54.2 53.7 53.1 52.6 52.1 51.5 51.1 50.5 50.1 49.5 49.1 48.7 48.3 47.7 47.3 46.9 46.5 46.0 45.7 45.2 44.8 44.4 44.1 43.8 43.3 -99.0 +49 UT TMAX 12 43.0 42.7 42.3 42.0 41.6 41.4 41.1 40.7 40.5 40.4 40.0 39.6 39.5 39.4 39.1 38.9 38.6 38.5 38.4 38.4 38.1 37.9 37.8 37.7 37.5 37.5 37.4 37.3 37.3 37.2 37.2 +49 UT TMIN 1 19.1 19.1 19.1 19.1 19.0 19.0 19.0 19.1 19.1 19.2 19.2 19.2 19.2 19.3 19.3 19.4 19.4 19.5 19.6 19.6 19.6 19.8 19.9 20.0 20.0 20.1 20.4 20.5 20.5 20.8 20.9 +49 UT TMIN 2 21.0 21.0 21.4 21.5 21.7 21.9 22.0 22.2 22.4 22.5 22.7 22.9 23.2 23.4 23.6 23.8 24.1 24.3 24.6 24.9 25.1 25.3 25.8 26.0 26.2 26.3 26.8 27.1 27.3 -99.0 -99.0 +49 UT TMIN 3 27.5 27.7 28.0 28.4 28.5 28.9 29.2 29.5 29.7 29.9 30.3 30.6 30.7 31.0 31.3 31.6 31.7 31.9 32.1 32.5 32.6 32.8 33.1 33.3 33.4 33.6 33.8 34.0 34.3 34.4 34.5 +49 UT TMIN 4 34.6 35.0 35.1 35.3 35.4 35.7 35.8 36.0 36.2 36.3 36.5 36.9 37.0 37.2 37.4 37.8 37.9 38.0 38.4 38.5 39.0 39.1 39.3 39.5 39.9 40.1 40.2 40.6 40.9 41.2 -99.0 +49 UT TMIN 5 41.5 41.7 42.0 42.3 42.7 42.8 43.2 43.5 43.7 43.9 44.2 44.6 44.7 45.1 45.4 45.7 45.8 46.1 46.5 46.7 46.9 47.3 47.5 47.8 48.0 48.3 48.5 48.9 49.2 49.3 49.5 +49 UT TMIN 6 50.0 50.2 50.4 50.7 50.9 51.2 51.4 51.8 52.0 52.2 52.5 52.9 53.0 53.4 53.7 53.9 54.0 54.7 54.8 54.9 55.3 55.7 55.8 56.0 56.6 56.7 57.0 57.4 57.7 57.9 -99.0 +49 UT TMIN 7 58.1 58.5 58.7 58.9 59.3 59.6 59.7 59.9 60.1 60.5 60.5 60.7 60.9 61.0 61.1 61.4 61.5 61.5 61.5 61.5 61.6 61.7 61.8 61.9 62.0 62.0 62.0 62.0 62.1 62.0 62.0 +49 UT TMIN 8 62.0 61.9 61.7 61.7 61.6 61.4 61.3 61.3 61.1 61.1 60.9 60.9 60.5 60.4 60.1 60.0 59.9 59.6 59.3 59.1 59.0 58.6 58.3 58.1 57.8 57.4 57.3 56.9 56.4 56.3 55.8 +49 UT TMIN 9 55.4 55.3 54.8 54.4 54.1 53.9 53.4 53.1 52.7 52.3 52.0 51.5 51.3 50.9 50.6 50.1 49.9 49.4 49.0 48.8 48.4 48.0 47.7 47.3 46.9 46.5 46.3 45.7 45.5 45.2 -99.0 +49 UT TMIN 10 44.6 44.4 44.2 43.6 43.3 43.0 42.6 42.3 41.9 41.6 41.2 40.7 40.4 40.1 39.7 39.4 39.0 38.6 38.4 38.0 37.6 37.2 36.9 36.6 36.1 35.9 35.5 35.1 34.8 34.5 34.1 +49 UT TMIN 11 33.7 33.5 33.0 32.7 32.5 32.1 31.7 31.2 31.0 30.7 30.2 30.1 29.8 29.2 29.1 28.7 28.3 28.1 27.7 27.5 27.0 26.7 26.5 26.3 25.9 25.5 25.3 24.9 24.7 24.3 -99.0 +49 UT TMIN 12 24.0 23.7 23.4 23.3 22.9 22.6 22.4 22.3 22.0 21.9 21.5 21.3 21.1 21.0 20.9 20.6 20.4 20.3 20.2 20.0 20.0 19.8 19.7 19.6 19.6 19.5 19.3 19.2 19.1 19.1 19.1 +49 UT TAVG 1 28.1 28.1 28.1 28.0 27.9 28.0 28.0 28.0 28.1 28.3 28.3 28.4 28.4 28.5 28.5 28.5 28.6 28.7 28.8 28.9 29.0 29.1 29.1 29.4 29.5 29.6 29.9 30.1 30.2 30.3 30.5 +49 UT TAVG 2 30.7 31.0 31.1 31.3 31.4 31.8 32.0 32.2 32.3 32.7 32.9 33.1 33.4 33.6 33.8 34.1 34.4 34.7 35.0 35.3 35.5 36.0 36.2 36.5 36.7 37.1 37.4 37.6 37.8 -99.0 -99.0 +49 UT TAVG 3 38.1 38.5 38.6 39.0 39.4 39.6 40.0 40.3 40.5 41.0 41.2 41.4 41.8 42.1 42.3 42.5 42.9 43.2 43.3 43.7 43.9 44.2 44.4 44.6 44.8 45.1 45.4 45.6 45.7 45.9 46.4 +49 UT TAVG 4 46.5 46.7 46.8 47.1 47.3 47.7 47.8 48.0 48.2 48.6 48.8 49.0 49.1 49.7 49.8 50.0 50.2 50.6 50.8 51.1 51.2 51.7 51.9 52.1 52.5 52.8 53.0 53.3 53.5 53.9 -99.0 +49 UT TAVG 5 54.2 54.5 54.8 55.1 55.3 55.8 55.9 56.3 56.7 56.9 57.2 57.6 57.8 58.1 58.4 58.8 59.1 59.3 59.8 60.1 60.3 60.7 61.1 61.1 61.7 62.0 62.2 62.6 62.9 63.2 63.6 +49 UT TAVG 6 63.9 64.2 64.7 64.8 65.3 65.7 65.8 66.3 66.6 66.8 67.2 67.5 67.8 68.3 68.5 68.7 69.0 69.4 69.7 69.9 70.3 70.6 70.8 71.3 71.6 71.7 72.0 72.5 72.7 72.9 -99.0 +49 UT TAVG 7 73.3 73.6 73.9 74.0 74.3 74.6 74.9 75.0 75.2 75.4 75.6 75.8 76.0 76.1 76.1 76.4 76.4 76.5 76.7 76.7 76.7 76.9 76.9 76.9 76.9 77.1 77.0 76.9 76.9 76.9 76.9 +49 UT TAVG 8 76.9 76.9 76.6 76.5 76.4 76.4 76.3 76.3 76.2 76.0 75.7 75.5 75.4 75.3 75.2 74.8 74.4 74.4 74.2 73.8 73.5 73.3 73.1 72.7 72.5 72.2 71.8 71.4 71.3 70.7 70.4 +49 UT TAVG 9 70.2 69.6 69.4 69.0 68.6 68.3 67.8 67.4 67.1 66.7 66.4 66.0 65.6 65.4 64.9 64.5 64.0 63.7 63.5 62.8 62.6 62.3 61.7 61.6 61.1 60.7 60.4 59.9 59.7 59.1 -99.0 +49 UT TAVG 10 58.8 58.3 58.0 57.7 57.1 56.9 56.4 56.0 55.6 55.1 54.7 54.4 54.0 53.6 53.0 52.7 52.2 51.8 51.4 50.9 50.5 50.0 49.7 49.1 48.8 48.3 47.8 47.3 46.9 46.3 46.0 +49 UT TAVG 11 45.4 45.1 44.5 44.0 43.7 43.2 42.8 42.3 41.8 41.4 40.9 40.6 40.1 39.9 39.3 39.0 38.6 38.1 37.9 37.3 37.0 36.8 36.1 35.9 35.7 35.0 34.9 34.5 34.1 33.9 -99.0 +49 UT TAVG 12 33.6 33.1 32.9 32.8 32.2 32.0 31.9 31.6 31.2 31.0 30.9 30.6 30.3 30.2 30.0 29.9 29.6 29.4 29.2 29.2 29.1 28.9 28.7 28.7 28.6 28.6 28.5 28.3 28.3 28.1 28.0 +49 UT RVP 1 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 +49 UT RVP 2 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 -99.0 -99.0 +49 UT RVP 3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 +49 UT RVP 4 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 -99.0 +49 UT RVP 5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 +49 UT RVP 6 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 -99.0 +49 UT RVP 7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +49 UT RVP 8 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +49 UT RVP 9 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 -99.0 +49 UT RVP 10 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 +49 UT RVP 11 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 9.8 -99.0 +49 UT RVP 12 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 11.3 +50 VT TMAX 1 28.3 28.1 28.0 27.9 27.8 27.5 27.5 27.4 27.3 27.3 27.2 27.2 27.2 27.1 27.0 26.9 26.7 26.6 26.7 26.7 26.7 27.0 27.0 27.0 27.0 27.1 27.1 27.2 27.2 27.3 27.7 +50 VT TMAX 2 27.5 27.9 27.9 28.1 28.2 28.3 28.4 28.6 28.7 29.2 29.3 29.4 29.6 29.7 30.2 30.3 30.6 31.0 31.3 31.5 31.7 32.2 32.3 32.7 33.1 33.3 33.9 34.1 34.2 -99.0 -99.0 +50 VT TMAX 3 34.3 34.9 35.2 35.6 36.0 36.2 36.7 37.1 37.5 37.9 38.1 38.6 39.1 39.3 39.8 40.3 40.5 41.0 41.3 41.7 42.3 42.4 43.2 43.4 43.8 44.3 44.5 45.1 45.5 46.0 46.4 +50 VT TMAX 4 46.6 47.2 47.5 48.2 48.5 49.0 49.3 49.9 50.3 50.7 51.3 51.7 52.3 52.4 53.1 53.4 54.1 54.4 55.0 55.4 56.0 56.4 56.9 57.4 57.9 58.6 59.0 59.6 60.0 60.7 -99.0 +50 VT TMAX 5 61.0 61.7 62.1 62.7 63.1 63.7 64.1 64.5 64.9 65.4 65.8 66.4 66.6 67.1 67.4 67.8 68.3 68.5 68.9 69.3 69.5 69.8 70.3 70.4 70.6 71.2 71.4 71.5 71.7 72.2 72.3 +50 VT TMAX 6 72.5 72.7 73.1 73.3 73.4 73.5 73.9 74.1 74.4 74.4 74.8 74.9 75.2 75.4 75.5 75.8 75.9 76.3 76.3 76.7 76.8 77.0 77.1 77.4 77.7 77.8 78.0 78.1 78.3 78.6 -99.0 +50 VT TMAX 7 78.8 79.0 79.1 79.2 79.5 79.6 79.9 80.0 80.1 80.1 80.1 80.2 80.4 80.4 80.5 80.5 80.8 80.8 80.8 80.9 80.9 80.9 80.9 80.9 80.7 80.7 80.6 80.5 80.2 80.2 80.2 +50 VT TMAX 8 80.2 80.0 80.0 79.9 79.9 79.8 79.5 79.2 79.1 79.0 78.9 78.9 78.5 78.3 78.0 77.9 77.7 77.5 77.3 77.0 76.7 76.6 76.4 76.1 75.7 75.6 75.3 74.8 74.7 74.4 74.2 +50 VT TMAX 9 73.7 73.4 73.2 72.8 72.5 72.3 71.8 71.5 71.1 70.8 70.5 70.1 69.8 69.4 69.0 68.8 68.2 67.9 67.8 67.2 66.9 66.5 66.1 65.9 65.4 65.0 64.6 64.2 63.9 63.5 -99.0 +50 VT TMAX 10 63.0 62.6 62.2 61.7 61.5 61.1 60.6 60.2 59.8 59.4 59.0 58.5 58.2 57.7 57.4 56.9 56.5 56.1 55.7 55.2 54.9 54.4 54.0 53.5 53.1 52.9 52.4 52.1 51.4 51.1 50.5 +50 VT TMAX 11 50.2 49.9 49.3 49.0 48.4 48.1 47.8 47.2 46.9 46.2 46.0 45.4 45.1 44.7 44.1 43.9 43.2 43.0 42.5 42.0 41.8 41.1 40.9 40.2 39.9 39.6 39.0 38.6 38.1 37.9 -99.0 +50 VT TMAX 12 37.3 36.9 36.6 36.1 35.7 35.3 35.0 34.6 34.2 33.9 33.5 33.2 32.8 32.5 32.2 31.9 31.7 31.3 31.0 30.8 30.6 30.3 30.0 29.9 29.7 29.4 29.1 28.9 28.8 28.5 28.4 +50 VT TMIN 1 9.0 8.9 8.5 8.3 8.1 8.0 7.7 7.4 7.3 7.2 7.2 6.7 6.6 6.5 6.5 6.4 6.3 6.2 6.2 6.1 6.1 5.9 5.8 5.8 5.7 5.7 5.7 5.6 5.7 5.7 5.6 +50 VT TMIN 2 5.6 5.7 6.1 6.2 6.4 6.5 6.5 6.5 6.6 6.7 7.3 7.4 7.5 7.6 8.1 8.4 8.6 8.7 9.3 9.5 9.8 10.2 10.6 10.8 11.4 11.7 12.2 12.7 12.9 -99.0 -99.0 +50 VT TMIN 3 13.2 13.5 13.9 14.5 14.8 15.4 15.7 16.3 16.6 17.0 17.5 17.9 18.4 18.7 19.1 19.6 20.0 20.4 20.9 21.3 21.7 22.0 22.6 22.9 23.1 23.7 23.9 24.6 24.8 25.2 25.6 +50 VT TMIN 4 25.8 26.5 26.7 27.1 27.6 27.9 28.2 28.7 29.1 29.3 29.8 30.2 30.7 31.0 31.2 31.8 32.2 32.5 32.9 33.2 33.7 34.1 34.3 34.9 35.2 35.6 36.0 36.3 36.8 37.1 -99.0 +50 VT TMIN 5 37.7 37.9 38.2 38.7 39.1 39.5 39.8 40.2 40.7 41.0 41.5 41.7 42.0 42.6 42.7 43.0 43.6 43.8 43.9 44.6 44.8 45.0 45.6 45.7 46.0 46.5 46.7 47.0 47.4 47.7 48.0 +50 VT TMIN 6 48.3 48.6 48.9 49.3 49.4 49.7 50.2 50.3 50.5 50.6 51.2 51.4 51.4 51.7 52.2 52.3 52.4 52.6 53.0 53.3 53.4 53.5 53.9 54.1 54.3 54.4 54.7 54.8 55.0 55.3 -99.0 +50 VT TMIN 7 55.4 55.6 55.7 55.8 55.9 56.0 56.2 56.4 56.6 56.6 56.7 56.7 56.8 56.8 56.9 56.9 56.9 56.9 57.1 57.2 57.2 57.2 57.4 57.4 57.4 57.2 57.1 57.1 57.0 57.0 57.0 +50 VT TMIN 8 56.9 56.9 56.9 56.8 56.7 56.6 56.5 56.3 56.2 56.1 55.9 55.8 55.7 55.7 55.4 55.1 55.0 54.8 54.7 54.6 54.1 54.0 53.8 53.6 53.4 53.0 52.8 52.6 52.4 52.1 51.8 +50 VT TMIN 9 51.5 51.1 50.8 50.6 50.3 49.9 49.6 49.4 49.0 48.7 48.5 47.9 47.7 47.4 46.9 46.6 46.4 45.9 45.6 45.1 44.8 44.5 44.0 43.6 43.2 42.8 42.5 42.1 41.6 41.2 -99.0 +50 VT TMIN 10 40.8 40.4 40.0 39.6 39.1 38.8 38.6 38.0 37.8 37.5 37.0 36.7 36.5 36.0 35.8 35.6 35.1 34.9 34.6 34.3 34.1 33.8 33.6 33.4 33.1 32.8 32.7 32.4 32.3 32.0 32.0 +50 VT TMIN 11 31.8 31.3 31.2 31.1 31.0 30.7 30.4 30.1 29.8 29.7 29.3 29.0 28.7 28.4 28.1 27.7 27.3 27.0 26.4 26.1 25.9 25.2 24.9 24.3 24.1 23.3 23.1 22.4 22.1 21.4 -99.0 +50 VT TMIN 12 21.0 20.3 19.9 19.4 19.0 18.4 18.0 17.4 17.1 16.7 16.2 15.9 15.3 15.0 14.5 14.2 13.8 13.2 13.0 12.7 12.3 12.0 11.6 11.3 11.0 10.6 10.4 10.1 9.9 9.6 9.2 +50 VT TAVG 1 18.7 18.5 18.3 18.0 17.8 17.8 17.7 17.6 17.4 17.1 17.0 17.0 16.9 16.9 16.8 16.7 16.7 16.6 16.6 16.3 16.3 16.2 16.3 16.3 16.3 16.3 16.4 16.4 16.5 16.5 16.6 +50 VT TAVG 2 16.6 16.7 17.0 17.2 17.2 17.3 17.4 17.6 17.8 17.9 18.3 18.3 18.6 18.8 19.2 19.3 19.7 19.8 20.3 20.5 20.7 21.1 21.5 21.7 22.3 22.6 22.9 23.4 23.5 -99.0 -99.0 +50 VT TAVG 3 23.6 24.2 24.6 24.9 25.5 25.9 26.2 26.6 27.1 27.4 28.0 28.3 28.6 29.1 29.4 30.0 30.2 30.9 31.1 31.4 32.0 32.2 32.9 33.2 33.4 34.0 34.2 34.8 35.2 35.7 36.1 +50 VT TAVG 4 36.3 36.8 37.1 37.7 38.1 38.3 38.9 39.2 39.8 40.1 40.4 41.1 41.3 41.8 42.2 42.7 43.1 43.6 43.9 44.4 44.9 45.2 45.8 46.1 46.7 47.0 47.7 48.0 48.3 48.9 -99.0 +50 VT TAVG 5 49.3 49.8 50.1 50.7 51.1 51.6 51.9 52.5 52.8 53.1 53.6 54.0 54.4 54.8 55.1 55.6 55.9 56.1 56.6 56.8 57.3 57.6 57.8 58.3 58.5 58.8 59.0 59.3 59.6 59.8 60.2 +50 VT TAVG 6 60.4 60.7 60.9 61.2 61.4 61.7 62.1 62.2 62.3 62.6 63.0 63.2 63.3 63.5 64.0 64.1 64.3 64.3 64.8 65.0 65.2 65.2 65.3 65.8 66.0 66.1 66.2 66.3 66.7 67.0 -99.0 +50 VT TAVG 7 67.2 67.2 67.3 67.5 67.6 68.0 68.1 68.2 68.2 68.4 68.5 68.5 68.5 68.5 68.6 68.8 68.8 69.0 69.0 69.1 69.1 69.1 69.1 69.1 69.1 69.0 68.9 68.9 68.7 68.6 68.5 +50 VT TAVG 8 68.6 68.5 68.3 68.2 68.2 68.1 68.0 67.9 67.9 67.5 67.3 67.2 67.2 67.0 66.9 66.4 66.3 66.2 66.1 65.9 65.4 65.2 65.1 65.0 64.5 64.2 64.1 63.9 63.5 63.2 63.0 +50 VT TAVG 9 62.5 62.3 62.1 61.6 61.3 61.1 60.9 60.4 60.1 59.9 59.4 59.1 58.7 58.4 58.1 57.7 57.3 57.1 56.5 56.2 55.8 55.5 55.2 54.6 54.4 54.0 53.5 53.3 52.7 52.4 -99.0 +50 VT TAVG 10 51.8 51.6 51.2 50.6 50.4 50.0 49.5 49.3 48.7 48.4 48.0 47.6 47.4 47.0 46.6 46.4 45.9 45.4 45.1 44.8 44.5 44.0 43.9 43.5 43.1 42.9 42.5 42.3 41.9 41.6 41.4 +50 VT TAVG 11 40.9 40.6 40.4 39.9 39.8 39.3 39.0 38.7 38.3 38.0 37.5 37.3 37.0 36.4 36.3 35.7 35.3 35.0 34.4 34.3 33.6 33.3 32.9 32.4 31.9 31.6 30.9 30.6 30.2 29.7 -99.0 +50 VT TAVG 12 29.2 28.7 28.2 27.7 27.4 26.8 26.6 26.1 25.7 25.4 24.8 24.6 24.1 23.7 23.5 23.0 22.7 22.4 22.0 21.7 21.5 21.2 20.9 20.5 20.3 20.0 19.9 19.5 19.4 19.0 18.9 +50 VT RVP 1 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 +50 VT RVP 2 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 -99.0 -99.0 +50 VT RVP 3 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 +50 VT RVP 4 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 -99.0 +50 VT RVP 5 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 +50 VT RVP 6 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 -99.0 +50 VT RVP 7 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 +50 VT RVP 8 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 +50 VT RVP 9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 7.9 -99.0 +50 VT RVP 10 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 +50 VT RVP 11 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 11.2 -99.0 +50 VT RVP 12 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 +51 VA TMAX 1 45.6 45.4 45.3 45.2 45.1 45.1 44.9 44.8 44.7 44.7 44.7 44.7 44.6 44.4 44.4 44.4 44.4 44.5 44.6 44.6 44.7 44.7 44.8 44.9 45.0 45.1 45.2 45.3 45.5 45.6 45.7 +51 VA TMAX 2 45.8 46.0 46.3 46.4 46.6 46.7 46.9 47.2 47.3 47.5 47.7 48.0 48.3 48.3 48.6 48.9 49.2 49.3 49.6 50.0 50.2 50.4 50.7 51.0 51.3 51.7 51.9 52.2 52.4 -99.0 -99.0 +51 VA TMAX 3 52.6 52.9 53.2 53.4 53.8 54.1 54.4 54.8 55.1 55.4 55.7 56.0 56.5 56.7 57.0 57.5 57.7 58.1 58.5 58.7 59.2 59.4 59.8 60.2 60.5 60.9 61.2 61.5 62.0 62.3 62.6 +51 VA TMAX 4 63.0 63.3 63.6 64.0 64.4 64.7 65.1 65.3 65.7 66.0 66.4 66.6 66.9 67.4 67.5 67.8 68.3 68.5 68.6 68.9 69.3 69.5 69.7 70.1 70.4 70.6 70.8 71.1 71.4 71.6 -99.0 +51 VA TMAX 5 71.8 72.0 72.2 72.4 72.8 72.9 73.2 73.4 73.7 73.9 74.1 74.4 74.7 75.0 75.1 75.5 75.7 76.0 76.1 76.5 76.7 76.9 77.2 77.5 77.7 78.0 78.4 78.6 78.7 79.1 79.5 +51 VA TMAX 6 79.6 79.9 80.2 80.5 80.6 80.9 81.2 81.5 81.6 81.9 82.1 82.5 82.6 82.8 83.1 83.3 83.5 83.7 83.8 84.1 84.2 84.5 84.7 84.8 85.0 85.1 85.3 85.5 85.7 85.8 -99.0 +51 VA TMAX 7 85.9 86.0 86.1 86.3 86.6 86.7 86.8 86.9 86.9 86.9 86.9 87.0 87.0 87.1 87.1 87.2 87.3 87.4 87.6 87.7 87.7 87.6 87.6 87.5 87.5 87.4 87.3 87.3 87.2 87.1 87.0 +51 VA TMAX 8 87.0 87.0 86.9 86.8 86.8 86.7 86.6 86.5 86.4 86.3 86.1 86.1 86.0 85.8 85.7 85.6 85.4 85.3 85.1 85.0 84.9 84.8 84.5 84.4 84.3 84.1 83.9 83.8 83.6 83.4 83.2 +51 VA TMAX 9 83.0 82.9 82.6 82.4 82.2 82.0 81.7 81.5 81.3 81.1 80.7 80.5 80.3 79.9 79.7 79.4 79.0 78.8 78.5 78.1 77.9 77.5 77.2 76.9 76.6 76.1 75.8 75.5 75.0 74.7 -99.0 +51 VA TMAX 10 74.3 73.9 73.6 73.1 72.7 72.6 72.0 71.7 71.4 71.0 70.7 70.3 69.9 69.6 69.2 68.8 68.5 68.3 67.9 67.4 67.2 66.9 66.4 66.2 65.8 65.5 65.3 64.9 64.5 64.3 63.9 +51 VA TMAX 11 63.7 63.4 62.9 62.7 62.3 62.1 61.7 61.4 61.0 60.8 60.4 60.1 59.8 59.4 59.1 58.7 58.4 58.1 57.7 57.4 57.1 56.7 56.3 55.9 55.7 55.3 54.9 54.5 54.2 53.9 -99.0 +51 VA TMAX 12 53.4 53.2 52.8 52.4 52.0 51.7 51.4 51.0 50.8 50.5 50.3 49.9 49.7 49.4 49.1 48.8 48.6 48.3 48.1 47.8 47.6 47.4 47.2 47.0 46.8 46.6 46.5 46.2 46.1 45.8 45.8 +51 VA TMIN 1 26.7 26.7 26.6 26.4 26.3 26.2 26.1 26.1 26.0 25.9 25.9 25.8 25.8 25.8 25.7 25.7 25.5 25.4 25.4 25.3 25.4 25.4 25.5 25.6 25.6 25.6 25.7 25.8 25.8 25.9 25.9 +51 VA TMIN 2 25.9 26.0 26.1 26.2 26.3 26.3 26.5 26.6 26.8 26.9 27.0 27.1 27.3 27.5 27.7 27.9 28.1 28.2 28.4 28.7 28.9 29.2 29.3 29.6 29.9 30.2 30.4 30.7 30.8 -99.0 -99.0 +51 VA TMIN 3 30.9 31.3 31.5 31.8 32.0 32.4 32.6 32.9 33.1 33.4 33.7 33.9 34.3 34.5 34.8 35.1 35.3 35.6 35.8 36.1 36.3 36.7 36.9 37.2 37.4 37.7 37.9 38.2 38.4 38.6 38.9 +51 VA TMIN 4 39.2 39.4 39.6 39.9 40.1 40.4 40.7 41.0 41.2 41.6 41.8 42.0 42.3 42.6 42.8 43.1 43.5 43.8 44.1 44.4 44.7 45.0 45.3 45.6 45.9 46.3 46.6 46.9 47.3 47.6 -99.0 +51 VA TMIN 5 47.9 48.3 48.7 48.9 49.3 49.6 49.8 50.3 50.6 50.9 51.2 51.6 51.8 52.3 52.6 52.8 53.2 53.5 53.8 54.0 54.5 54.7 55.0 55.3 55.7 55.9 56.2 56.6 56.9 57.2 57.5 +51 VA TMIN 6 57.7 58.1 58.4 58.5 58.9 59.3 59.4 59.6 60.0 60.3 60.5 60.8 61.1 61.3 61.4 61.8 62.1 62.2 62.4 62.7 63.0 63.1 63.3 63.4 63.7 64.1 64.1 64.3 64.4 64.7 -99.0 +51 VA TMIN 7 65.0 65.2 65.3 65.3 65.4 65.6 65.8 66.0 66.2 66.2 66.3 66.3 66.3 66.4 66.4 66.5 66.6 66.6 66.7 66.8 66.9 66.9 67.0 66.9 66.9 66.8 66.7 66.6 66.6 66.5 66.3 +51 VA TMIN 8 66.5 66.3 66.3 66.2 66.1 66.0 65.9 65.8 65.7 65.7 65.6 65.5 65.3 65.1 65.0 65.0 64.8 64.7 64.6 64.4 64.2 64.1 64.0 63.8 63.7 63.5 63.3 63.1 63.0 62.9 62.7 +51 VA TMIN 9 62.5 62.3 62.2 61.9 61.6 61.4 61.3 61.0 60.6 60.4 60.2 59.9 59.5 59.3 58.8 58.6 58.3 57.8 57.5 57.1 56.6 56.3 55.8 55.4 55.0 54.5 54.1 53.5 53.1 52.6 -99.0 +51 VA TMIN 10 52.1 51.7 51.1 50.7 50.2 49.8 49.2 48.9 48.3 47.9 47.5 47.0 46.8 46.3 46.0 45.5 45.1 44.9 44.5 44.0 43.8 43.5 43.1 42.8 42.6 42.3 42.0 41.8 41.6 41.2 41.0 +51 VA TMIN 11 40.7 40.5 40.2 40.1 39.7 39.5 39.4 39.1 38.8 38.5 38.4 38.1 37.8 37.5 37.3 37.1 36.7 36.5 36.3 36.0 35.7 35.5 35.2 34.9 34.6 34.4 34.1 33.8 33.6 33.3 -99.0 +51 VA TMIN 12 33.0 32.7 32.5 32.3 31.9 31.7 31.5 31.2 30.8 30.7 30.6 30.4 30.0 29.7 29.6 29.5 29.4 28.9 28.7 28.6 28.6 28.4 28.0 27.8 27.7 27.7 27.6 27.5 27.2 27.0 26.8 +51 VA TAVG 1 36.3 36.0 35.8 35.8 35.7 35.7 35.6 35.5 35.5 35.5 35.4 35.3 35.2 35.1 35.0 34.9 34.8 34.9 35.0 35.0 35.0 35.2 35.2 35.4 35.4 35.5 35.6 35.6 35.6 35.6 35.7 +51 VA TAVG 2 35.9 36.0 36.2 36.3 36.4 36.6 36.7 36.9 37.1 37.2 37.4 37.6 37.8 37.9 38.2 38.4 38.6 38.8 39.1 39.3 39.6 39.8 40.0 40.3 40.7 40.9 41.1 41.5 41.7 -99.0 -99.0 +51 VA TAVG 3 41.8 42.0 42.4 42.6 42.9 43.3 43.5 43.8 44.2 44.4 44.7 45.0 45.4 45.6 45.9 46.3 46.5 46.8 47.2 47.5 47.7 48.1 48.4 48.6 49.0 49.3 49.5 49.9 50.2 50.5 50.8 +51 VA TAVG 4 51.1 51.3 51.7 52.0 52.3 52.6 52.9 53.2 53.5 53.8 54.0 54.3 54.7 54.9 55.2 55.5 55.9 56.1 56.4 56.7 57.0 57.3 57.6 57.9 58.2 58.4 58.7 59.1 59.3 59.6 -99.0 +51 VA TAVG 5 59.8 60.2 60.4 60.7 61.0 61.3 61.6 61.9 62.1 62.4 62.7 63.0 63.3 63.6 64.0 64.1 64.5 64.7 65.0 65.2 65.5 65.9 66.1 66.5 66.8 67.0 67.2 67.6 67.9 68.1 68.5 +51 VA TAVG 6 68.7 69.0 69.2 69.6 69.8 70.1 70.4 70.7 70.9 71.1 71.4 71.6 71.8 72.1 72.4 72.5 72.7 73.0 73.2 73.4 73.6 73.8 74.0 74.2 74.4 74.5 74.8 74.9 75.1 75.3 -99.0 +51 VA TAVG 7 75.4 75.5 75.7 75.8 76.0 76.2 76.4 76.4 76.5 76.5 76.6 76.7 76.8 76.8 76.9 76.9 77.0 77.1 77.2 77.2 77.2 77.3 77.3 77.2 77.1 77.1 77.0 76.9 76.9 76.8 76.8 +51 VA TAVG 8 76.8 76.8 76.6 76.6 76.5 76.3 76.2 76.1 76.0 75.9 75.9 75.8 75.7 75.6 75.5 75.2 75.1 75.0 74.9 74.8 74.7 74.5 74.3 74.1 73.9 73.8 73.7 73.5 73.3 73.1 73.0 +51 VA TAVG 9 72.9 72.6 72.3 72.1 72.0 71.8 71.5 71.2 71.0 70.7 70.5 70.2 69.8 69.6 69.3 69.0 68.6 68.4 68.0 67.6 67.3 66.9 66.5 66.2 65.8 65.3 65.0 64.5 64.1 63.7 -99.0 +51 VA TAVG 10 63.2 62.8 62.3 61.9 61.6 61.1 60.7 60.2 59.9 59.5 59.1 58.7 58.4 58.0 57.5 57.3 56.9 56.5 56.2 55.9 55.5 55.3 54.9 54.5 54.3 54.0 53.5 53.4 53.1 52.7 52.5 +51 VA TAVG 11 52.3 51.9 51.6 51.4 51.0 50.8 50.5 50.3 50.0 49.6 49.4 49.0 48.8 48.5 48.2 47.9 47.7 47.2 47.0 46.8 46.3 46.1 45.8 45.5 45.2 44.8 44.6 44.2 43.9 43.6 -99.0 +51 VA TAVG 12 43.2 43.0 42.6 42.3 42.1 41.8 41.4 41.1 41.0 40.6 40.3 40.1 39.9 39.5 39.4 39.2 39.0 38.7 38.4 38.3 38.1 37.9 37.7 37.4 37.3 37.2 37.0 36.8 36.7 36.5 36.3 +51 VA RVP 1 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 +51 VA RVP 2 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 -99.0 -99.0 +51 VA RVP 3 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 +51 VA RVP 4 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 -99.0 +51 VA RVP 5 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 +51 VA RVP 6 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 -99.0 +51 VA RVP 7 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 +51 VA RVP 8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 +51 VA RVP 9 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 -99.0 +51 VA RVP 10 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 +51 VA RVP 11 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 10.9 -99.0 +51 VA RVP 12 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 13.3 +53 WA TMAX 1 42.3 42.3 42.4 42.5 42.5 42.5 42.6 42.6 42.6 42.7 42.7 42.7 42.9 43.1 43.2 43.3 43.4 43.5 43.6 43.7 43.7 43.8 43.9 44.3 44.5 44.5 44.7 44.8 44.9 45.0 45.3 +53 WA TMAX 2 45.5 45.8 45.9 46.0 46.2 46.4 46.6 46.9 47.1 47.2 47.3 47.4 47.7 47.8 48.1 48.3 48.5 48.6 48.9 49.0 49.1 49.3 49.6 49.8 49.9 50.2 50.3 50.4 50.5 -99.0 -99.0 +53 WA TMAX 3 50.6 50.8 51.2 51.4 51.5 51.6 51.8 51.9 52.1 52.4 52.6 52.9 53.1 53.1 53.2 53.4 53.7 53.9 54.2 54.3 54.4 54.7 54.7 55.0 55.2 55.5 55.6 55.8 55.9 56.1 56.3 +53 WA TMAX 4 56.5 56.8 56.9 57.1 57.1 57.4 57.7 57.8 58.1 58.2 58.3 58.5 58.9 59.1 59.3 59.4 59.6 60.0 60.2 60.4 60.5 60.6 61.1 61.4 61.5 61.6 61.9 62.2 62.5 62.6 -99.0 +53 WA TMAX 5 62.8 63.1 63.5 63.6 63.7 64.0 64.2 64.5 64.7 64.9 65.1 65.3 65.6 65.8 65.9 66.0 66.3 66.5 66.6 66.8 67.1 67.2 67.3 67.5 67.6 67.9 68.0 68.1 68.3 68.4 68.7 +53 WA TMAX 6 68.7 68.8 69.1 69.3 69.4 69.5 69.6 69.8 70.0 70.1 70.5 70.6 70.7 70.9 71.1 71.3 71.6 71.8 72.0 72.1 72.3 72.6 72.9 73.0 73.3 73.5 73.7 74.0 74.2 74.5 -99.0 +53 WA TMAX 7 74.7 75.0 75.2 75.6 75.8 75.9 76.1 76.3 76.5 76.8 77.0 77.1 77.2 77.4 77.6 77.7 77.9 78.0 78.1 78.2 78.3 78.3 78.3 78.4 78.4 78.6 78.6 78.7 78.9 79.0 79.0 +53 WA TMAX 8 79.0 79.0 79.0 79.0 78.8 78.8 78.8 78.7 78.6 78.5 78.4 78.4 78.4 78.3 78.2 78.1 78.1 78.0 77.9 77.7 77.6 77.6 77.3 77.1 77.0 76.9 76.7 76.5 76.4 76.0 75.9 +53 WA TMAX 9 75.7 75.5 75.3 75.1 74.9 74.5 74.4 74.1 73.8 73.6 73.2 73.0 72.8 72.4 72.2 71.9 71.7 71.2 70.9 70.7 70.3 70.0 69.7 69.4 68.8 68.6 68.3 67.8 67.5 67.2 -99.0 +53 WA TMAX 10 66.7 66.4 66.0 65.6 65.2 64.8 64.4 64.0 63.7 63.3 62.8 62.5 62.0 61.7 61.3 60.9 60.4 60.2 59.7 59.3 58.9 58.3 58.0 57.6 57.3 56.8 56.4 56.1 55.6 55.2 54.8 +53 WA TMAX 11 54.3 53.9 53.6 53.1 52.7 52.4 52.1 51.6 51.3 51.0 50.5 50.2 49.9 49.6 49.2 48.8 48.7 48.4 48.2 47.7 47.5 47.3 47.0 46.6 46.4 46.3 45.9 45.9 45.6 45.2 -99.0 +53 WA TMAX 12 45.1 44.9 44.8 44.5 44.2 44.1 44.0 43.9 43.8 43.5 43.3 43.3 43.0 43.0 42.9 42.8 42.7 42.7 42.7 42.7 42.6 42.6 42.4 42.4 42.3 42.3 42.1 42.2 42.3 42.3 42.4 +53 WA TMIN 1 30.7 30.8 30.7 31.0 31.0 31.0 31.0 31.0 31.1 31.2 31.2 31.2 31.3 31.3 31.3 31.3 31.4 31.4 31.4 31.5 31.5 31.5 31.5 31.5 31.6 31.7 31.7 31.7 31.8 31.9 31.9 +53 WA TMIN 2 31.9 32.2 32.3 32.5 32.5 32.5 32.6 32.7 32.8 32.8 32.9 33.0 33.0 33.1 33.1 33.2 33.3 33.4 33.4 33.6 33.7 33.8 34.0 34.1 34.1 34.2 34.3 34.4 34.4 -99.0 -99.0 +53 WA TMIN 3 34.4 34.5 34.6 34.7 34.8 35.0 35.1 35.3 35.4 35.4 35.5 35.6 35.6 35.7 35.7 35.8 35.9 36.0 36.2 36.4 36.5 36.6 36.7 36.8 36.8 36.9 36.9 37.1 37.2 37.3 37.4 +53 WA TMIN 4 37.5 37.6 37.8 37.9 38.0 38.1 38.2 38.3 38.4 38.5 38.7 38.9 39.1 39.2 39.3 39.4 39.7 39.8 39.9 40.1 40.3 40.5 40.7 40.8 40.9 41.2 41.4 41.6 41.7 42.0 -99.0 +53 WA TMIN 5 42.3 42.5 42.7 42.8 42.9 43.1 43.5 43.8 43.8 43.9 44.1 44.6 44.7 44.8 44.9 45.1 45.3 45.7 45.8 45.9 46.0 46.1 46.2 46.7 46.8 46.9 47.0 47.1 47.3 47.6 47.7 +53 WA TMIN 6 47.9 48.0 48.2 48.2 48.4 48.4 48.9 49.0 49.1 49.2 49.3 49.4 49.6 49.7 50.0 50.1 50.3 50.3 50.4 50.6 50.6 51.0 51.2 51.3 51.3 51.4 51.6 51.7 52.0 52.1 -99.0 +53 WA TMIN 7 52.3 52.4 52.5 52.6 52.6 52.6 53.1 53.1 53.2 53.4 53.4 53.5 53.6 53.6 53.7 53.8 53.9 53.9 53.9 54.0 54.1 54.1 54.2 54.3 54.3 54.3 54.4 54.5 54.5 54.6 54.6 +53 WA TMIN 8 54.5 54.6 54.6 54.6 54.6 54.5 54.4 54.4 54.4 54.4 54.3 54.2 54.1 54.0 54.0 53.9 53.9 53.8 53.7 53.6 53.4 53.2 53.1 52.9 52.8 52.6 52.6 52.3 52.1 52.0 51.7 +53 WA TMIN 9 51.5 51.4 51.1 51.0 50.9 50.5 50.3 50.1 49.8 49.7 49.5 49.3 49.0 48.8 48.6 48.5 48.2 47.9 47.7 47.4 47.4 47.1 46.7 46.5 46.4 46.1 45.8 45.5 45.3 45.2 -99.0 +53 WA TMIN 10 44.8 44.5 44.3 44.2 44.0 43.6 43.3 43.1 43.0 42.8 42.5 42.3 42.1 41.9 41.8 41.5 41.1 41.0 40.9 40.8 40.4 40.3 40.1 40.0 39.7 39.6 39.3 39.3 39.1 39.0 38.7 +53 WA TMIN 11 38.7 38.4 38.4 38.2 38.0 37.9 37.6 37.5 37.3 37.1 37.1 36.9 36.6 36.5 36.2 36.2 36.0 35.8 35.6 35.5 35.3 35.1 35.0 34.7 34.5 34.3 34.2 34.1 34.0 33.7 -99.0 +53 WA TMIN 12 33.5 33.1 33.1 33.0 32.9 32.7 32.7 32.4 32.1 32.0 31.9 31.8 31.7 31.7 31.6 31.5 31.5 31.5 31.3 31.3 31.3 31.1 31.1 30.9 30.8 30.8 30.7 30.7 30.6 30.7 30.7 +53 WA TAVG 1 36.5 36.5 36.5 36.5 36.6 36.7 36.7 36.7 36.8 36.9 37.1 37.1 37.2 37.3 37.3 37.3 37.4 37.5 37.5 37.6 37.6 37.7 37.7 37.8 38.1 38.3 38.4 38.5 38.5 38.6 38.6 +53 WA TAVG 2 38.9 38.9 39.0 39.1 39.3 39.6 39.7 39.8 39.8 39.9 40.1 40.2 40.3 40.5 40.7 40.8 40.9 41.0 41.3 41.4 41.4 41.5 41.7 41.9 42.1 42.1 42.2 42.5 42.6 -99.0 -99.0 +53 WA TAVG 3 42.7 42.7 42.8 43.1 43.2 43.4 43.4 43.6 43.7 43.9 44.1 44.2 44.4 44.5 44.6 44.8 44.9 45.0 45.2 45.3 45.4 45.7 45.8 45.9 46.1 46.2 46.3 46.4 46.6 46.8 47.0 +53 WA TAVG 4 47.1 47.2 47.3 47.4 47.7 47.8 47.8 48.2 48.3 48.4 48.5 48.8 48.9 49.0 49.4 49.5 49.7 49.7 50.0 50.4 50.6 50.6 50.8 51.0 51.3 51.5 51.7 51.9 52.1 52.4 -99.0 +53 WA TAVG 5 52.6 52.8 52.9 53.2 53.6 53.7 53.8 53.9 54.3 54.6 54.7 54.9 55.1 55.3 55.5 55.7 55.9 56.0 56.1 56.4 56.6 56.8 56.9 57.0 57.2 57.4 57.5 57.7 58.0 58.0 58.1 +53 WA TAVG 6 58.2 58.4 58.6 58.8 59.0 59.0 59.2 59.3 59.5 59.7 59.8 60.2 60.2 60.2 60.6 60.8 60.9 61.1 61.3 61.4 61.6 61.8 61.9 62.2 62.4 62.4 62.8 63.0 63.1 63.3 -99.0 +53 WA TAVG 7 63.5 63.7 63.8 64.1 64.3 64.4 64.6 64.8 64.9 65.0 65.1 65.2 65.3 65.6 65.8 65.9 65.9 66.0 66.0 66.1 66.2 66.3 66.3 66.3 66.4 66.4 66.6 66.7 66.7 66.7 66.7 +53 WA TAVG 8 66.7 66.7 66.7 66.7 66.7 66.7 66.6 66.6 66.6 66.4 66.4 66.3 66.2 66.1 66.1 66.0 65.9 65.9 65.9 65.7 65.7 65.4 65.2 65.0 64.9 64.7 64.7 64.5 64.3 64.0 63.8 +53 WA TAVG 9 63.7 63.5 63.3 63.1 62.8 62.5 62.3 62.3 61.9 61.7 61.4 61.2 61.0 60.7 60.4 60.1 60.0 59.7 59.3 59.0 58.8 58.6 58.2 57.9 57.8 57.4 57.1 56.7 56.4 56.1 -99.0 +53 WA TAVG 10 55.7 55.6 55.1 54.8 54.6 54.3 53.9 53.7 53.3 53.1 52.6 52.4 52.1 51.8 51.5 51.2 50.9 50.6 50.3 50.1 49.6 49.4 49.1 48.7 48.5 48.3 47.9 47.6 47.4 47.1 46.7 +53 WA TAVG 11 46.4 46.2 46.0 45.7 45.3 45.1 44.9 44.7 44.3 44.0 43.8 43.6 43.3 43.0 42.8 42.6 42.4 42.1 41.8 41.6 41.4 41.3 40.9 40.7 40.6 40.3 40.2 39.9 39.7 39.5 -99.0 +53 WA TAVG 12 39.3 39.1 38.8 38.7 38.7 38.5 38.3 38.2 38.0 37.7 37.6 37.5 37.5 37.4 37.3 37.3 37.1 37.1 36.9 36.9 36.8 36.8 36.7 36.6 36.6 36.5 36.4 36.5 36.5 36.5 36.5 +53 WA RVP 1 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 +53 WA RVP 2 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 -99.0 -99.0 +53 WA RVP 3 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 +53 WA RVP 4 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 11.5 -99.0 +53 WA RVP 5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 +53 WA RVP 6 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 -99.0 +53 WA RVP 7 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 +53 WA RVP 8 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 8.5 +53 WA RVP 9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 -99.0 +53 WA RVP 10 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 8.9 +53 WA RVP 11 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 11.6 -99.0 +53 WA RVP 12 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 13.8 +54 WV TMAX 1 40.7 40.5 40.4 40.3 40.1 40.1 40.1 40.0 39.8 39.7 39.7 39.6 39.5 39.5 39.4 39.4 39.4 39.5 39.7 39.7 39.7 39.9 40.0 40.0 40.1 40.2 40.3 40.4 40.5 40.7 41.0 +54 WV TMAX 2 41.1 41.2 41.4 41.7 41.9 42.1 42.2 42.5 42.7 43.0 43.2 43.4 43.7 44.0 44.2 44.5 44.8 45.1 45.3 45.6 46.0 46.3 46.6 47.0 47.3 47.6 48.0 48.3 48.5 -99.0 -99.0 +54 WV TMAX 3 48.7 49.2 49.4 49.7 50.2 50.5 50.8 51.2 51.6 52.0 52.3 52.7 53.1 53.5 53.8 54.1 54.6 54.9 55.2 55.7 55.9 56.3 56.7 57.0 57.5 57.7 58.1 58.5 58.9 59.3 59.6 +54 WV TMAX 4 59.9 60.4 60.6 61.0 61.5 61.7 62.0 62.5 62.8 63.1 63.4 63.8 64.2 64.4 64.8 65.1 65.4 65.8 66.1 66.4 66.6 67.0 67.3 67.5 67.7 68.2 68.5 68.7 68.9 69.3 -99.0 +54 WV TMAX 5 69.5 69.8 70.0 70.4 70.8 70.9 71.1 71.6 71.8 72.0 72.2 72.7 72.9 73.0 73.3 73.7 74.0 74.1 74.3 74.8 75.0 75.2 75.5 75.8 76.0 76.2 76.5 76.9 77.0 77.3 77.6 +54 WV TMAX 6 77.9 78.0 78.4 78.6 78.7 79.0 79.3 79.5 79.7 79.9 80.1 80.3 80.6 80.7 80.9 81.2 81.3 81.5 81.6 81.8 82.0 82.3 82.3 82.5 82.6 82.7 82.9 83.1 83.2 83.4 -99.0 +54 WV TMAX 7 83.4 83.5 83.6 83.9 84.1 84.1 84.2 84.2 84.2 84.2 84.3 84.3 84.4 84.4 84.4 84.5 84.5 84.6 84.7 84.8 85.0 85.0 85.0 85.0 84.9 84.9 84.8 84.7 84.7 84.6 84.5 +54 WV TMAX 8 84.6 84.6 84.5 84.3 84.3 84.3 84.2 84.2 84.0 83.9 83.8 83.7 83.7 83.6 83.4 83.3 83.2 83.0 82.8 82.7 82.6 82.5 82.3 82.2 81.9 81.7 81.6 81.4 81.2 80.9 80.8 +54 WV TMAX 9 80.6 80.4 80.2 79.9 79.7 79.5 79.3 78.9 78.7 78.5 78.2 77.9 77.7 77.4 77.2 76.7 76.5 76.3 75.8 75.6 75.3 75.0 74.6 74.3 74.0 73.5 73.2 72.9 72.5 72.2 -99.0 +54 WV TMAX 10 71.7 71.5 71.0 70.6 70.3 70.0 69.5 69.1 68.8 68.4 68.1 67.7 67.2 66.9 66.5 66.1 65.8 65.4 65.0 64.7 64.2 63.9 63.6 63.1 62.7 62.5 62.0 61.6 61.3 60.9 60.6 +54 WV TMAX 11 60.1 59.8 59.5 58.9 58.7 58.3 57.9 57.5 57.2 56.8 56.4 56.1 55.6 55.3 55.0 54.4 54.2 53.9 53.4 53.1 52.7 52.3 52.0 51.5 51.2 50.9 50.4 50.1 49.7 49.3 -99.0 +54 WV TMAX 12 48.9 48.6 48.2 47.9 47.5 47.1 46.8 46.5 46.2 45.9 45.6 45.3 45.0 44.7 44.5 44.2 43.8 43.6 43.4 43.2 42.8 42.7 42.4 42.3 42.0 41.8 41.6 41.4 41.3 41.0 40.8 +54 WV TMIN 1 22.4 22.2 22.0 21.9 21.8 21.7 21.5 21.4 21.2 21.2 21.1 21.1 21.0 21.0 21.0 21.0 20.9 20.8 20.7 20.7 20.6 20.6 20.6 20.6 20.7 20.7 20.8 20.9 20.9 21.0 21.1 +54 WV TMIN 2 21.0 21.2 21.3 21.4 21.4 21.6 21.6 21.7 22.1 22.1 22.2 22.4 22.5 22.7 23.0 23.2 23.3 23.5 23.7 24.0 24.2 24.4 24.7 25.0 25.2 25.5 25.8 26.1 26.2 -99.0 -99.0 +54 WV TMIN 3 26.3 26.6 26.9 27.2 27.5 27.8 28.1 28.4 28.7 28.9 29.2 29.5 29.7 30.0 30.3 30.6 30.8 31.1 31.4 31.6 31.8 32.2 32.5 32.7 32.9 33.2 33.6 33.7 33.9 34.3 34.6 +54 WV TMIN 4 34.7 34.9 35.3 35.5 35.7 36.0 36.4 36.6 36.9 37.1 37.5 37.7 38.0 38.2 38.6 38.9 39.1 39.4 39.7 40.1 40.3 40.6 41.1 41.3 41.6 42.0 42.3 42.6 42.9 43.4 -99.0 +54 WV TMIN 5 43.7 43.9 44.4 44.7 45.0 45.3 45.7 46.0 46.4 46.8 47.0 47.4 47.7 48.0 48.3 48.7 49.0 49.3 49.6 49.8 50.3 50.5 50.8 51.1 51.5 51.7 52.1 52.5 52.7 53.0 53.4 +54 WV TMIN 6 53.6 53.9 54.2 54.6 54.7 55.0 55.3 55.6 55.8 56.0 56.4 56.7 56.8 57.1 57.3 57.7 57.8 58.0 58.3 58.5 58.7 58.9 59.1 59.3 59.5 59.7 59.9 60.1 60.2 60.4 -99.0 +54 WV TMIN 7 60.7 60.9 61.0 61.1 61.2 61.4 61.6 61.8 61.9 61.9 62.0 62.0 62.1 62.1 62.1 62.2 62.3 62.3 62.3 62.4 62.5 62.6 62.7 62.6 62.5 62.5 62.4 62.3 62.3 62.2 62.2 +54 WV TMIN 8 62.2 62.2 62.1 62.0 62.0 61.8 61.7 61.7 61.6 61.5 61.3 61.2 61.2 60.9 60.8 60.7 60.6 60.5 60.3 60.2 60.0 59.8 59.7 59.6 59.4 59.2 59.0 58.9 58.7 58.5 58.3 +54 WV TMIN 9 58.1 57.9 57.7 57.4 57.1 57.0 56.7 56.4 56.1 55.9 55.6 55.3 54.9 54.6 54.3 53.9 53.5 53.1 52.7 52.4 51.9 51.6 51.2 50.7 50.3 49.7 49.4 48.8 48.5 47.8 -99.0 +54 WV TMIN 10 47.5 46.8 46.5 45.9 45.5 45.0 44.6 44.1 43.8 43.3 42.9 42.5 42.1 41.7 41.3 41.0 40.6 40.3 39.9 39.6 39.3 39.0 38.8 38.4 38.0 37.9 37.6 37.3 37.1 36.8 36.7 +54 WV TMIN 11 36.3 36.1 36.0 35.8 35.5 35.2 35.0 34.8 34.7 34.4 34.1 33.9 33.7 33.4 33.2 32.9 32.7 32.4 32.2 31.9 31.7 31.5 31.2 30.9 30.7 30.4 30.2 29.8 29.6 29.4 -99.0 +54 WV TMIN 12 29.2 28.7 28.6 28.3 28.1 27.7 27.6 27.4 27.1 26.7 26.6 26.4 26.2 25.9 25.7 25.4 25.3 25.1 24.8 24.5 24.4 24.2 24.1 23.9 23.6 23.4 23.3 23.1 23.0 22.6 22.5 +54 WV TAVG 1 31.6 31.4 31.3 31.1 31.0 30.9 30.8 30.6 30.6 30.5 30.5 30.4 30.3 30.3 30.2 30.2 30.1 30.1 30.1 30.1 30.2 30.2 30.3 30.4 30.4 30.5 30.7 30.7 30.8 30.9 31.0 +54 WV TAVG 2 31.1 31.1 31.3 31.6 31.7 31.9 32.0 32.1 32.4 32.6 32.8 32.9 33.1 33.4 33.7 33.8 34.0 34.3 34.7 34.9 35.1 35.5 35.7 36.0 36.2 36.6 36.9 37.2 37.4 -99.0 -99.0 +54 WV TAVG 3 37.6 37.9 38.2 38.6 38.9 39.2 39.5 39.8 40.1 40.4 40.8 41.1 41.4 41.8 42.1 42.4 42.7 43.0 43.3 43.6 44.0 44.3 44.5 44.9 45.2 45.4 45.8 46.1 46.4 46.8 47.1 +54 WV TAVG 4 47.3 47.7 48.0 48.3 48.6 48.9 49.2 49.6 49.8 50.2 50.5 50.6 51.1 51.4 51.6 52.1 52.4 52.6 52.9 53.3 53.5 53.8 54.1 54.5 54.8 55.0 55.4 55.7 56.0 56.3 -99.0 +54 WV TAVG 5 56.6 57.0 57.2 57.5 58.0 58.2 58.5 58.8 59.1 59.4 59.8 60.0 60.3 60.6 60.9 61.1 61.5 61.8 62.0 62.2 62.7 62.9 63.1 63.5 63.7 64.0 64.4 64.7 64.9 65.2 65.4 +54 WV TAVG 6 65.8 66.0 66.2 66.5 66.8 67.0 67.3 67.5 67.9 68.0 68.2 68.5 68.8 68.9 69.1 69.4 69.6 69.9 70.0 70.1 70.3 70.6 70.7 71.0 71.1 71.2 71.5 71.6 71.7 71.9 -99.0 +54 WV TAVG 7 72.1 72.1 72.3 72.4 72.6 72.9 73.0 73.0 73.0 73.1 73.1 73.2 73.2 73.3 73.3 73.4 73.4 73.5 73.5 73.6 73.8 73.8 74.0 73.9 73.8 73.7 73.7 73.6 73.5 73.4 73.3 +54 WV TAVG 8 73.4 73.3 73.2 73.1 73.1 73.1 73.0 73.0 72.9 72.8 72.7 72.5 72.3 72.2 72.1 72.0 71.9 71.9 71.7 71.4 71.2 71.1 71.0 70.9 70.7 70.5 70.3 70.2 70.0 69.9 69.5 +54 WV TAVG 9 69.4 69.2 69.0 68.8 68.4 68.2 68.1 67.7 67.4 67.2 66.9 66.5 66.3 66.1 65.7 65.3 65.1 64.7 64.3 64.0 63.6 63.3 62.8 62.6 62.2 61.7 61.3 60.9 60.5 60.1 -99.0 +54 WV TAVG 10 59.6 59.2 58.7 58.3 58.0 57.5 57.0 56.6 56.2 55.9 55.5 55.0 54.8 54.3 53.9 53.6 53.2 52.9 52.5 52.2 51.8 51.5 51.1 50.8 50.5 50.2 49.8 49.5 49.2 48.8 48.6 +54 WV TAVG 11 48.3 48.0 47.7 47.4 47.1 46.9 46.5 46.2 46.0 45.5 45.3 45.0 44.8 44.3 44.0 43.8 43.5 43.1 42.9 42.6 42.1 41.9 41.6 41.2 41.0 40.7 40.4 40.0 39.7 39.4 -99.0 +54 WV TAVG 12 39.0 38.7 38.4 38.1 37.8 37.5 37.3 36.9 36.6 36.4 36.2 35.8 35.6 35.3 35.1 34.7 34.6 34.4 34.2 33.9 33.6 33.5 33.3 33.1 32.8 32.6 32.4 32.3 32.1 32.0 31.7 +54 WV RVP 1 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +54 WV RVP 2 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 -99.0 -99.0 +54 WV RVP 3 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 +54 WV RVP 4 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 -99.0 +54 WV RVP 5 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +54 WV RVP 6 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 -99.0 +54 WV RVP 7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +54 WV RVP 8 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +54 WV RVP 9 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 -99.0 +54 WV RVP 10 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 8.7 +54 WV RVP 11 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 11.7 -99.0 +54 WV RVP 12 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 14.0 +55 WI TMAX 1 25.8 25.6 25.4 25.4 25.2 25.1 25.0 24.9 24.9 24.8 24.8 24.7 24.7 24.7 24.5 24.6 24.6 24.7 24.9 24.9 25.0 25.1 25.1 25.2 25.4 25.5 25.7 25.9 26.2 26.3 26.5 +55 WI TMAX 2 26.8 26.9 27.2 27.6 27.7 27.9 28.3 28.6 28.8 29.0 29.5 29.7 29.9 30.2 30.6 30.8 31.1 31.6 31.8 32.1 32.6 32.9 33.2 33.6 34.0 34.3 34.7 35.1 35.2 -99.0 -99.0 +55 WI TMAX 3 35.4 35.9 36.2 36.5 37.0 37.3 37.9 38.2 38.6 39.0 39.4 39.8 40.3 40.6 40.9 41.5 41.8 42.4 42.7 43.1 43.6 44.0 44.5 44.9 45.3 45.8 46.3 46.6 47.1 47.5 48.1 +55 WI TMAX 4 48.5 48.9 49.4 49.9 50.4 50.9 51.2 51.7 52.2 52.7 53.1 53.4 54.0 54.4 54.9 55.4 55.8 56.3 56.7 57.3 57.5 58.2 58.5 59.0 59.4 59.9 60.4 60.8 61.3 61.6 -99.0 +55 WI TMAX 5 62.2 62.5 63.1 63.5 64.0 64.3 64.8 65.2 65.5 66.0 66.4 66.9 67.2 67.6 68.0 68.3 68.8 69.1 69.5 69.9 70.1 70.5 70.9 71.1 71.6 71.9 72.1 72.6 72.9 73.2 73.5 +55 WI TMAX 6 73.8 74.1 74.5 74.7 74.9 75.4 75.5 75.7 76.1 76.4 76.5 76.9 77.1 77.4 77.5 77.8 78.1 78.2 78.4 78.6 78.9 79.1 79.3 79.4 79.7 79.8 80.1 80.2 80.3 80.5 -99.0 +55 WI TMAX 7 80.7 80.8 81.0 81.1 81.3 81.5 81.6 81.6 81.6 81.7 81.7 81.8 81.9 81.9 81.9 82.1 82.2 82.2 82.3 82.3 82.4 82.4 82.2 82.1 82.1 82.0 82.0 81.9 81.9 81.8 81.7 +55 WI TMAX 8 81.8 81.6 81.6 81.5 81.3 81.1 81.0 80.9 80.9 80.8 80.6 80.3 80.2 80.0 79.9 79.7 79.6 79.3 79.1 79.0 78.7 78.4 78.2 78.1 77.9 77.5 77.3 77.0 76.9 76.6 76.2 +55 WI TMAX 9 76.0 75.7 75.4 75.2 74.8 74.5 74.2 73.8 73.5 73.2 73.0 72.7 72.3 72.1 71.7 71.3 71.1 70.6 70.3 70.0 69.6 69.3 69.0 68.5 68.2 67.9 67.4 67.2 66.6 66.4 -99.0 +55 WI TMAX 10 66.1 65.5 65.3 64.7 64.4 64.0 63.5 63.3 62.6 62.4 61.8 61.4 60.9 60.5 60.1 59.5 59.2 58.6 58.2 57.6 57.2 56.6 56.1 55.5 55.0 54.5 53.9 53.4 52.9 52.2 51.7 +55 WI TMAX 11 51.0 50.6 49.9 49.4 48.8 48.3 47.7 47.0 46.6 46.0 45.6 44.9 44.5 44.0 43.4 43.0 42.4 41.9 41.3 40.9 40.3 40.0 39.3 39.0 38.4 38.0 37.5 37.0 36.5 36.0 -99.0 +55 WI TMAX 12 35.5 35.1 34.8 34.3 33.9 33.4 33.1 32.7 32.2 32.0 31.5 31.1 30.8 30.4 30.1 29.9 29.5 29.2 29.0 28.5 28.3 28.1 27.7 27.5 27.3 27.1 26.8 26.5 26.4 26.3 25.9 +55 WI TMIN 1 9.0 8.6 8.5 8.3 8.0 7.8 7.6 7.5 7.5 7.4 7.1 7.1 7.0 7.0 6.8 6.7 6.7 6.7 6.8 6.9 6.9 7.0 7.1 7.2 7.4 7.5 7.6 7.8 7.9 8.1 8.4 +55 WI TMIN 2 8.6 8.8 9.0 9.3 9.6 9.8 10.1 10.4 10.7 10.9 11.2 11.6 11.8 12.1 12.4 12.8 13.1 13.4 13.8 14.1 14.5 14.9 15.2 15.5 16.0 16.3 16.7 17.2 17.4 -99.0 -99.0 +55 WI TMIN 3 17.5 17.9 18.3 18.7 19.1 19.5 19.9 20.3 20.7 21.0 21.4 21.8 22.3 22.6 23.0 23.4 23.7 24.2 24.5 24.8 25.3 25.7 26.1 26.4 26.8 27.3 27.6 27.8 28.3 28.7 29.0 +55 WI TMIN 4 29.4 29.8 30.1 30.5 30.9 31.3 31.6 31.9 32.4 32.7 33.1 33.5 33.8 34.3 34.6 34.9 35.4 35.7 36.0 36.5 36.8 37.3 37.6 37.9 38.4 38.7 39.2 39.5 39.9 40.3 -99.0 +55 WI TMIN 5 40.6 41.1 41.4 41.8 42.2 42.5 42.9 43.2 43.6 44.0 44.3 44.7 45.0 45.4 45.7 46.2 46.4 46.8 47.2 47.4 47.8 48.2 48.4 48.9 49.2 49.4 49.8 50.2 50.4 50.8 51.2 +55 WI TMIN 6 51.4 51.8 52.1 52.4 52.6 53.1 53.3 53.5 53.9 54.2 54.3 54.6 55.1 55.2 55.4 55.7 56.1 56.2 56.4 56.8 57.0 57.2 57.4 57.7 57.9 58.0 58.3 58.6 58.7 59.0 -99.0 +55 WI TMIN 7 59.1 59.3 59.5 59.6 59.7 60.1 60.3 60.3 60.5 60.5 60.6 60.8 60.8 60.9 61.0 61.1 61.1 61.2 61.3 61.3 61.4 61.5 61.6 61.6 61.6 61.5 61.5 61.5 61.3 61.3 61.2 +55 WI TMIN 8 61.3 61.2 61.2 61.1 61.0 60.9 60.7 60.6 60.5 60.3 60.2 60.1 60.0 59.7 59.6 59.3 59.2 59.0 58.8 58.6 58.3 58.2 57.8 57.4 57.3 57.1 56.8 56.3 56.1 55.9 55.4 +55 WI TMIN 9 55.2 54.9 54.5 54.1 54.0 53.5 53.2 52.9 52.4 52.1 51.7 51.4 51.1 50.7 50.3 50.1 49.6 49.3 49.1 48.5 48.3 48.0 47.5 47.3 46.9 46.4 46.2 45.7 45.3 45.0 -99.0 +55 WI TMIN 10 44.6 44.3 43.9 43.5 43.2 42.9 42.4 42.2 41.8 41.3 41.0 40.5 40.3 39.9 39.4 39.2 38.6 38.3 38.0 37.6 37.3 36.8 36.4 36.1 35.6 35.3 34.9 34.5 34.1 33.8 33.4 +55 WI TMIN 11 33.0 32.6 32.2 31.8 31.3 31.0 30.6 30.2 29.8 29.3 29.1 28.5 28.1 27.8 27.3 27.0 26.4 26.0 25.7 25.1 24.8 24.2 23.9 23.4 22.9 22.6 22.0 21.6 21.1 20.7 -99.0 +55 WI TMIN 12 20.2 19.8 19.3 18.8 18.5 18.0 17.5 17.2 16.7 16.3 16.0 15.6 15.2 14.8 14.3 14.0 13.7 13.2 12.9 12.7 12.3 11.9 11.6 11.4 11.0 10.6 10.4 10.0 9.8 9.5 9.2 +55 WI TAVG 1 17.4 17.2 17.0 16.9 16.6 16.5 16.4 16.3 16.2 16.1 16.0 16.0 15.8 15.7 15.6 15.6 15.7 15.7 15.8 15.9 16.0 16.2 16.2 16.3 16.5 16.6 16.7 16.8 17.0 17.3 17.6 +55 WI TAVG 2 17.7 17.9 18.2 18.5 18.7 18.9 19.3 19.5 19.8 20.0 20.4 20.7 21.0 21.2 21.5 21.8 22.1 22.5 22.9 23.1 23.5 23.9 24.2 24.5 25.0 25.3 25.7 26.1 26.3 -99.0 -99.0 +55 WI TAVG 3 26.5 27.0 27.3 27.6 28.1 28.4 28.8 29.3 29.6 30.1 30.4 30.8 31.2 31.6 32.1 32.3 33.0 33.2 33.6 34.1 34.4 35.0 35.3 35.6 36.1 36.4 36.9 37.2 37.8 38.2 38.6 +55 WI TAVG 4 38.9 39.4 39.8 40.2 40.7 41.1 41.5 41.9 42.3 42.6 43.1 43.6 43.9 44.3 44.7 45.1 45.7 46.0 46.4 46.8 47.3 47.7 48.0 48.6 48.9 49.4 49.7 50.2 50.6 51.0 -99.0 +55 WI TAVG 5 51.5 51.8 52.2 52.7 53.0 53.5 53.8 54.3 54.6 55.0 55.4 55.8 56.2 56.5 56.9 57.3 57.6 58.1 58.3 58.6 59.1 59.4 59.7 60.1 60.4 60.7 61.1 61.4 61.7 62.1 62.3 +55 WI TAVG 6 62.7 63.0 63.3 63.5 63.8 64.1 64.4 64.7 65.0 65.2 65.5 65.7 66.1 66.3 66.5 66.8 67.1 67.2 67.5 67.8 68.0 68.1 68.3 68.7 68.9 69.0 69.1 69.3 69.6 69.8 -99.0 +55 WI TAVG 7 70.0 70.1 70.4 70.4 70.5 70.7 71.0 71.0 71.2 71.2 71.3 71.4 71.4 71.4 71.5 71.6 71.6 71.7 71.7 71.8 71.9 72.0 72.0 71.9 71.9 71.7 71.7 71.7 71.6 71.6 71.5 +55 WI TAVG 8 71.5 71.5 71.4 71.3 71.2 71.0 70.9 70.7 70.7 70.6 70.5 70.3 70.1 69.9 69.7 69.6 69.4 69.2 69.0 68.8 68.5 68.3 68.1 67.8 67.5 67.3 67.0 66.8 66.5 66.2 65.9 +55 WI TAVG 9 65.6 65.2 65.0 64.7 64.2 64.0 63.7 63.3 63.1 62.8 62.4 62.1 61.7 61.5 61.0 60.8 60.4 60.0 59.7 59.4 59.0 58.6 58.3 57.9 57.6 57.2 56.9 56.5 56.0 55.7 -99.0 +55 WI TAVG 10 55.4 54.9 54.6 54.2 53.8 53.5 53.0 52.7 52.2 51.8 51.4 51.0 50.7 50.2 49.8 49.3 48.8 48.6 48.0 47.7 47.1 46.8 46.2 45.8 45.3 44.9 44.4 44.0 43.6 43.0 42.6 +55 WI TAVG 11 42.0 41.6 41.0 40.6 40.1 39.7 39.1 38.7 38.2 37.8 37.4 36.8 36.4 35.8 35.4 34.9 34.5 33.8 33.5 33.0 32.6 32.2 31.7 31.2 30.7 30.3 29.7 29.3 28.8 28.4 -99.0 +55 WI TAVG 12 28.0 27.4 27.1 26.5 26.2 25.8 25.3 25.0 24.4 24.2 23.8 23.3 23.0 22.7 22.2 22.0 21.6 21.2 21.0 20.7 20.2 20.0 19.9 19.3 19.1 18.9 18.6 18.3 18.1 17.9 17.7 +55 WI RVP 1 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 +55 WI RVP 2 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 -99.0 -99.0 +55 WI RVP 3 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 +55 WI RVP 4 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 -99.0 +55 WI RVP 5 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +55 WI RVP 6 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 +55 WI RVP 7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +55 WI RVP 8 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +55 WI RVP 9 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 -99.0 +55 WI RVP 10 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 7.7 +55 WI RVP 11 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 11.1 -99.0 +55 WI RVP 12 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 13.6 +56 WY TMAX 1 32.4 32.3 32.2 32.2 32.1 32.0 32.0 32.0 32.1 32.2 32.2 32.2 32.3 32.4 32.4 32.5 32.6 32.6 32.6 32.7 32.8 32.8 33.0 33.3 33.3 33.4 33.7 33.8 33.9 34.1 34.3 +56 WY TMAX 2 34.5 34.7 34.9 35.0 35.3 35.6 35.8 35.9 36.1 36.4 36.7 36.8 37.0 37.3 37.6 37.9 38.0 38.4 38.7 38.9 39.2 39.4 39.7 40.1 40.2 40.5 41.0 41.3 41.4 -99.0 -99.0 +56 WY TMAX 3 41.6 41.8 42.0 42.5 42.8 43.1 43.4 43.6 44.1 44.3 44.6 45.0 45.3 45.5 45.9 46.1 46.5 46.8 47.0 47.2 47.8 47.9 48.2 48.6 48.8 49.1 49.4 49.7 49.9 50.4 50.7 +56 WY TMAX 4 50.8 51.3 51.5 51.8 52.0 52.4 52.7 52.9 53.2 53.5 53.8 54.1 54.4 54.7 55.1 55.3 55.6 56.0 56.2 56.6 56.9 57.1 57.5 57.9 58.1 58.4 58.9 59.0 59.3 59.9 -99.0 +56 WY TMAX 5 60.0 60.2 60.7 61.0 61.3 61.7 62.0 62.3 62.7 63.0 63.4 63.7 63.9 64.4 64.7 65.0 65.6 65.8 66.0 66.7 66.9 67.4 67.7 68.0 68.5 68.8 69.2 69.5 70.0 70.4 70.8 +56 WY TMAX 6 71.1 71.5 71.9 72.4 72.8 73.0 73.6 73.8 74.1 74.7 74.9 75.4 75.7 76.0 76.5 76.7 77.1 77.3 77.7 78.1 78.3 78.7 79.0 79.2 79.5 80.0 80.2 80.4 80.8 81.1 -99.0 +56 WY TMAX 7 81.3 81.5 81.8 82.2 82.4 82.5 82.8 82.9 83.1 83.4 83.6 83.7 83.9 84.1 84.1 84.3 84.3 84.4 84.6 84.8 84.8 84.8 85.0 85.0 85.1 85.1 85.2 85.2 85.0 85.0 85.0 +56 WY TMAX 8 85.0 84.9 84.9 84.8 84.7 84.7 84.6 84.4 84.2 84.1 84.1 83.8 83.7 83.4 83.2 83.0 82.8 82.5 82.4 82.0 81.7 81.5 81.1 80.8 80.5 80.2 79.7 79.4 79.0 78.6 78.1 +56 WY TMAX 9 77.9 77.2 77.0 76.5 76.1 75.7 75.2 74.9 74.5 74.1 73.6 73.3 72.9 72.5 72.2 71.7 71.4 70.8 70.5 70.2 69.8 69.4 69.2 68.6 68.3 67.9 67.5 67.3 66.9 66.5 -99.0 +56 WY TMAX 10 66.3 65.7 65.4 65.0 64.6 64.4 63.8 63.4 62.8 62.6 62.1 61.6 61.2 60.6 60.2 59.6 59.2 58.6 58.1 57.6 57.0 56.6 55.8 55.3 54.7 54.2 53.5 52.9 52.2 51.8 51.0 +56 WY TMAX 11 50.2 49.7 49.0 48.4 47.8 47.2 46.7 46.0 45.5 45.0 44.4 43.9 43.3 43.0 42.4 42.1 41.5 41.1 40.8 40.4 39.9 39.5 39.3 38.8 38.5 38.2 38.1 37.7 37.3 37.1 -99.0 +56 WY TMAX 12 36.8 36.6 36.4 36.1 35.8 35.6 35.5 35.3 35.1 34.9 34.8 34.4 34.3 34.2 34.1 33.8 33.7 33.6 33.5 33.4 33.2 33.1 32.9 32.8 32.8 32.6 32.6 32.5 32.5 32.4 32.3 +56 WY TMIN 1 9.4 9.4 9.3 9.3 9.3 9.3 9.2 9.2 9.2 9.2 9.3 9.3 9.4 9.5 9.5 9.6 9.6 9.7 9.7 9.7 9.8 9.8 9.9 9.9 10.1 10.3 10.4 10.4 10.5 10.6 10.8 +56 WY TMIN 2 11.1 11.2 11.3 11.4 11.6 11.8 11.9 12.0 12.3 12.6 12.9 13.0 13.1 13.3 13.5 13.8 13.9 14.4 14.5 14.8 15.0 15.2 15.5 15.7 16.1 16.4 16.6 16.8 17.0 -99.0 -99.0 +56 WY TMIN 3 17.3 17.4 17.8 18.1 18.4 18.7 18.9 19.2 19.7 19.8 20.0 20.2 20.6 20.9 21.1 21.4 21.5 21.8 22.1 22.3 22.5 22.7 23.0 23.2 23.5 23.6 23.8 24.1 24.3 24.6 24.6 +56 WY TMIN 4 24.9 25.0 25.3 25.6 25.8 25.9 26.1 26.4 26.7 26.9 27.1 27.4 27.7 27.9 28.1 28.4 28.6 28.9 29.3 29.5 29.8 30.1 30.3 30.6 31.0 31.3 31.4 31.8 32.3 32.4 -99.0 +56 WY TMIN 5 32.7 33.3 33.4 33.6 34.2 34.4 34.5 35.1 35.4 35.5 35.9 36.3 36.4 36.8 37.2 37.4 37.8 38.1 38.3 38.7 38.9 39.2 39.6 39.8 40.0 40.5 40.7 40.8 41.2 41.5 41.7 +56 WY TMIN 6 42.1 42.4 42.6 42.7 43.2 43.4 43.6 44.1 44.3 44.5 44.6 45.1 45.3 45.5 45.6 46.1 46.3 46.4 46.9 47.1 47.2 47.4 47.9 48.0 48.1 48.4 48.7 49.0 49.1 49.5 -99.0 +56 WY TMIN 7 49.6 49.9 50.0 50.3 50.4 50.6 50.8 50.9 51.2 51.3 51.4 51.5 51.7 51.8 52.0 52.0 52.2 52.2 52.2 52.3 52.3 52.4 52.4 52.4 52.5 52.5 52.5 52.5 52.5 52.5 52.4 +56 WY TMIN 8 52.4 52.4 52.4 52.3 52.3 52.2 52.0 51.9 51.8 51.5 51.4 51.4 51.1 51.0 50.9 50.5 50.3 50.2 49.9 49.7 49.4 49.1 48.8 48.5 48.3 47.8 47.6 47.2 46.8 46.6 46.1 +56 WY TMIN 9 45.8 45.4 44.9 44.6 44.3 43.8 43.5 43.0 42.7 42.4 42.0 41.7 41.3 40.9 40.6 40.3 39.9 39.6 39.3 38.9 38.6 38.2 38.0 37.6 37.3 37.0 36.7 36.4 36.0 35.8 -99.0 +56 WY TMIN 10 35.5 35.0 34.9 34.7 34.1 33.9 33.7 33.2 33.0 32.7 32.3 32.0 31.7 31.3 30.9 30.7 30.2 29.9 29.6 29.2 28.8 28.3 28.0 27.7 27.3 26.9 26.5 26.2 25.6 25.3 24.9 +56 WY TMIN 11 24.5 24.1 23.6 23.3 22.8 22.4 22.0 21.7 21.4 21.0 20.7 20.2 19.9 19.6 19.1 18.8 18.6 18.0 17.9 17.6 17.0 16.8 16.5 16.3 15.8 15.6 15.3 15.1 14.7 14.3 -99.0 +56 WY TMIN 12 14.2 13.9 13.6 13.3 13.1 12.9 12.6 12.4 12.2 12.0 11.9 11.5 11.3 11.1 11.0 10.9 10.8 10.6 10.5 10.2 10.1 9.9 9.9 9.9 9.8 9.7 9.6 9.5 9.5 9.4 9.4 +56 WY TAVG 1 21.0 20.9 20.7 20.7 20.7 20.6 20.7 20.6 20.7 20.7 20.7 20.8 20.9 20.9 21.0 21.0 21.1 21.1 21.2 21.2 21.4 21.4 21.5 21.7 21.8 21.9 21.9 22.1 22.3 22.4 22.6 +56 WY TAVG 2 22.8 23.0 23.1 23.2 23.3 23.8 23.9 24.0 24.2 24.6 24.7 24.8 25.0 25.3 25.7 25.8 26.0 26.1 26.6 26.9 27.1 27.4 27.7 27.8 28.1 28.6 28.8 29.1 29.2 -99.0 -99.0 +56 WY TAVG 3 29.4 29.7 30.1 30.4 30.6 30.9 31.3 31.4 31.8 32.0 32.3 32.7 32.9 33.3 33.5 33.7 33.9 34.4 34.6 34.8 35.0 35.3 35.6 35.9 36.1 36.4 36.7 36.9 37.1 37.3 37.6 +56 WY TAVG 4 38.0 38.1 38.4 38.7 39.0 39.1 39.3 39.7 40.0 40.2 40.4 40.9 41.1 41.2 41.5 42.0 42.1 42.4 42.8 43.1 43.3 43.5 44.0 44.2 44.5 45.0 45.2 45.4 45.8 46.2 -99.0 +56 WY TAVG 5 46.4 46.7 47.1 47.3 47.6 48.1 48.3 48.5 49.0 49.3 49.6 50.0 50.2 50.6 51.0 51.1 51.6 52.0 52.1 52.6 53.0 53.2 53.8 54.0 54.2 54.6 55.0 55.1 55.7 55.9 56.3 +56 WY TAVG 6 56.6 56.9 57.4 57.6 57.9 58.5 58.6 58.8 59.4 59.6 59.7 60.3 60.5 60.7 61.1 61.4 61.6 62.0 62.3 62.5 62.8 63.1 63.4 63.6 63.9 64.3 64.4 64.7 65.0 65.2 -99.0 +56 WY TAVG 7 65.4 65.8 66.0 66.1 66.4 66.6 66.8 67.0 67.1 67.4 67.6 67.7 67.8 67.9 68.0 68.1 68.3 68.3 68.5 68.6 68.6 68.6 68.7 68.8 68.8 68.9 68.9 68.9 68.7 68.7 68.7 +56 WY TAVG 8 68.7 68.7 68.7 68.6 68.5 68.4 68.3 68.2 68.0 67.9 67.8 67.7 67.5 67.2 67.0 66.8 66.6 66.4 66.0 65.8 65.6 65.4 65.1 64.6 64.3 64.1 63.6 63.3 63.0 62.5 62.2 +56 WY TAVG 9 61.8 61.3 61.0 60.6 60.2 59.7 59.4 59.1 58.6 58.3 57.8 57.5 57.1 56.7 56.5 56.0 55.6 55.3 54.9 54.5 54.2 53.8 53.5 53.2 52.8 52.6 52.2 51.9 51.5 51.2 -99.0 +56 WY TAVG 10 50.9 50.4 50.1 49.9 49.5 49.1 48.8 48.4 48.0 47.6 47.3 46.9 46.4 46.0 45.6 45.2 44.8 44.3 43.9 43.4 43.0 42.5 42.1 41.5 41.1 40.5 40.1 39.5 39.0 38.5 38.0 +56 WY TAVG 11 37.5 36.9 36.4 35.8 35.3 34.8 34.3 34.0 33.3 33.0 32.6 32.0 31.8 31.1 30.9 30.5 30.0 29.7 29.3 28.9 28.6 28.2 28.0 27.6 27.2 26.9 26.6 26.3 26.0 25.8 -99.0 +56 WY TAVG 12 25.6 25.2 24.9 24.8 24.5 24.2 24.0 23.9 23.7 23.6 23.3 22.9 22.8 22.7 22.5 22.5 22.3 22.2 22.0 21.7 21.6 21.5 21.5 21.4 21.2 21.2 21.1 21.1 21.0 20.9 20.9 +56 WY RVP 1 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 +56 WY RVP 2 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 -99.0 -99.0 +56 WY RVP 3 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 +56 WY RVP 4 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +56 WY RVP 5 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +56 WY RVP 6 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +56 WY RVP 7 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +56 WY RVP 8 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +56 WY RVP 9 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 -99.0 +56 WY RVP 10 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 8.4 +56 WY RVP 11 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 9.9 -99.0 +56 WY RVP 12 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 12.0 +72 PR TMAX 1 84.3 84.3 84.3 84.2 84.2 84.2 84.3 84.2 84.2 84.0 84.2 84.3 84.3 84.2 84.3 84.2 84.2 84.0 84.0 84.2 84.2 84.2 84.1 84.1 84.1 84.1 84.3 84.3 84.4 84.4 84.4 +72 PR TMAX 2 84.1 84.1 84.1 84.2 84.2 84.1 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.6 84.6 84.6 84.7 84.7 84.8 84.8 84.8 84.8 84.8 84.8 -99.0 -99.0 -99.0 +72 PR TMAX 3 84.8 84.8 84.7 84.8 85.0 85.0 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.5 85.5 85.5 85.5 85.5 85.5 85.7 85.7 85.7 85.7 85.8 86.0 +72 PR TMAX 4 85.7 85.9 85.9 85.9 86.0 86.0 86.4 86.4 86.4 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.6 86.6 86.6 86.6 86.7 86.9 87.1 87.1 87.1 87.2 87.2 87.2 -99.0 +72 PR TMAX 5 87.2 87.2 87.3 87.3 87.3 87.4 87.5 87.5 87.5 87.5 87.6 87.6 87.8 87.9 87.9 87.9 87.9 87.9 87.9 87.9 87.9 87.9 88.1 88.2 88.2 88.3 88.4 88.4 88.4 88.5 88.6 +72 PR TMAX 6 88.6 88.6 88.6 88.8 88.8 88.8 88.9 88.9 88.9 88.9 88.9 89.0 89.2 89.2 89.2 89.3 89.3 89.3 89.3 89.3 89.3 89.4 89.4 89.4 89.5 89.5 89.5 89.6 89.6 89.5 -99.0 +72 PR TMAX 7 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.4 89.4 89.4 89.4 89.4 89.2 89.2 89.2 89.2 89.2 89.3 89.3 89.1 89.1 89.1 89.4 89.4 89.3 89.4 89.5 89.5 89.5 89.5 89.5 +72 PR TMAX 8 89.3 89.3 89.4 89.4 89.4 89.4 89.5 89.5 89.5 89.5 89.5 89.6 89.5 89.5 89.5 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.5 89.4 89.4 +72 PR TMAX 9 89.6 89.6 89.7 89.6 89.6 89.6 89.6 89.6 89.6 89.5 89.2 89.2 89.2 89.3 89.3 89.1 89.1 89.1 89.1 89.1 89.1 89.1 89.2 89.2 89.2 89.2 89.2 89.2 89.2 89.2 -99.0 +72 PR TMAX 10 89.3 89.3 89.3 89.3 89.3 89.2 89.2 89.1 89.1 89.1 89.0 88.9 88.9 88.9 88.9 88.7 88.7 88.5 88.5 88.5 88.5 88.5 88.5 88.5 88.5 88.4 88.3 88.3 88.1 88.1 87.7 +72 PR TMAX 11 87.9 87.6 87.6 87.6 87.6 87.5 87.5 87.4 87.3 87.3 87.2 87.2 87.1 87.0 87.0 86.8 86.8 86.5 86.5 86.5 86.5 86.4 86.4 86.2 86.2 86.2 85.9 85.8 85.7 85.6 -99.0 +72 PR TMAX 12 85.7 85.5 85.5 85.5 85.5 85.4 85.3 85.1 85.1 85.1 85.1 85.1 84.8 84.8 84.7 84.7 84.7 84.7 84.5 84.5 84.5 84.4 84.4 84.4 84.4 84.4 84.4 84.4 84.2 84.2 84.1 +72 PR TMIN 1 66.8 66.8 66.8 66.7 66.7 66.7 66.7 66.7 66.7 66.6 66.5 66.4 66.3 66.3 66.3 66.2 66.2 66.1 66.1 66.0 66.0 66.0 65.9 65.9 65.9 65.9 65.8 65.8 66.0 66.1 66.1 +72 PR TMIN 2 66.0 66.0 66.0 66.1 66.1 66.1 65.9 65.9 66.0 66.0 66.0 66.0 66.0 66.0 66.1 66.1 66.1 66.1 66.1 66.1 66.2 66.3 66.3 66.4 66.4 66.4 66.4 66.3 -99.0 -99.0 -99.0 +72 PR TMIN 3 66.2 66.2 66.3 66.3 66.4 66.4 66.4 66.4 66.4 66.6 66.6 66.6 66.7 66.7 66.7 66.7 66.8 66.8 66.8 66.9 66.9 66.9 67.1 67.1 67.2 67.3 67.3 67.3 67.4 67.4 67.4 +72 PR TMIN 4 67.4 67.4 67.5 67.6 67.7 67.9 67.9 68.0 68.1 68.4 68.4 68.4 68.4 68.4 68.4 68.5 68.5 68.5 68.5 68.7 68.8 69.1 69.2 69.3 69.3 69.3 69.3 69.3 69.4 69.4 -99.0 +72 PR TMIN 5 69.4 69.5 69.7 70.0 70.1 70.1 70.1 70.1 70.1 70.3 70.4 70.4 70.5 70.6 70.7 70.7 70.7 70.9 70.9 71.0 71.0 71.1 71.2 71.2 71.3 71.4 71.4 71.4 71.6 71.6 71.7 +72 PR TMIN 6 71.6 71.6 71.6 71.7 71.7 71.7 71.9 71.9 71.9 72.1 72.1 72.1 72.3 72.3 72.4 72.4 72.4 72.4 72.5 72.5 72.5 72.5 72.5 72.4 72.5 72.5 72.5 72.5 72.4 72.4 -99.0 +72 PR TMIN 7 72.4 72.4 72.4 72.3 72.3 72.3 72.3 72.3 72.3 72.0 72.0 71.9 72.0 72.0 72.2 72.2 72.3 72.3 72.3 72.3 72.3 72.3 72.2 72.1 72.2 72.2 72.2 72.2 72.4 72.5 72.5 +72 PR TMIN 8 72.3 72.2 72.2 72.2 72.3 72.3 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.4 72.4 72.4 72.4 72.6 72.6 72.6 72.6 72.6 72.6 72.6 72.6 72.5 72.3 72.3 72.3 +72 PR TMIN 9 72.5 72.5 72.5 72.5 72.6 72.6 72.4 72.4 72.4 72.3 72.3 72.3 72.3 72.3 72.3 72.1 72.1 72.1 72.0 72.0 72.0 71.9 71.9 71.9 71.8 71.8 71.8 71.8 71.8 71.9 -99.0 +72 PR TMIN 10 72.0 72.0 72.0 71.9 71.9 71.9 71.7 71.7 71.7 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.3 71.3 71.3 71.3 71.3 71.3 71.3 71.2 71.2 71.0 71.0 71.0 +72 PR TMIN 11 71.1 71.0 71.0 71.0 70.9 70.8 70.6 70.5 70.5 70.4 70.4 70.4 70.2 70.2 70.2 70.2 70.1 70.1 70.0 70.0 70.0 69.7 69.6 69.4 69.3 69.3 69.3 69.2 69.1 69.0 -99.0 +72 PR TMIN 12 69.0 69.0 69.0 68.9 68.6 68.6 68.5 68.5 68.3 68.2 68.2 68.1 68.1 68.1 68.1 68.0 67.7 67.7 67.6 67.6 67.6 67.6 67.4 67.4 67.4 67.4 67.1 66.9 66.9 66.9 66.8 +72 PR TAVG 1 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.6 75.6 75.6 75.4 75.4 75.3 75.0 75.0 75.0 75.0 74.9 74.8 74.8 74.8 74.8 74.8 74.8 75.0 75.0 75.1 75.1 75.1 +72 PR TAVG 2 74.9 74.9 74.8 75.0 75.0 75.0 75.0 75.0 75.1 75.1 75.1 75.2 75.2 75.2 75.4 75.4 75.4 75.5 75.5 75.5 75.6 75.6 75.7 75.7 75.7 75.8 75.8 75.8 -99.0 -99.0 -99.0 +72 PR TAVG 3 75.5 75.5 75.5 75.6 75.6 75.6 75.8 75.8 75.8 75.9 75.9 75.9 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.3 76.3 76.3 76.3 76.3 76.4 76.6 76.6 76.6 +72 PR TAVG 4 76.6 76.7 76.8 76.8 77.0 77.0 77.1 77.2 77.2 77.2 77.3 77.5 77.5 77.5 77.5 77.5 77.5 77.7 77.7 77.7 77.7 77.7 77.8 78.1 78.1 78.1 78.2 78.3 78.5 78.5 -99.0 +72 PR TAVG 5 78.5 78.5 78.5 78.6 78.7 78.7 78.7 78.8 78.8 79.0 79.0 79.0 79.0 79.2 79.2 79.4 79.4 79.4 79.4 79.6 79.6 79.6 79.6 79.7 79.7 79.8 79.8 79.9 80.0 80.1 80.2 +72 PR TAVG 6 80.4 80.4 80.4 80.5 80.5 80.5 80.6 80.6 80.6 80.6 80.6 80.6 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.8 80.9 81.0 81.0 80.9 80.8 80.9 80.9 80.9 -99.0 +72 PR TAVG 7 80.9 81.0 80.9 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.7 80.7 80.8 80.9 80.9 80.9 80.8 80.7 80.7 80.8 80.8 80.8 80.8 80.9 80.9 81.0 81.0 81.0 81.0 +72 PR TAVG 8 80.9 80.8 80.8 80.9 80.9 80.9 80.9 80.9 81.0 81.0 81.0 80.9 81.0 81.1 81.2 81.2 81.2 81.2 81.1 81.1 81.2 81.2 81.2 81.2 81.0 81.0 80.8 80.8 80.8 80.8 80.8 +72 PR TAVG 9 81.2 81.2 81.2 81.0 81.0 81.0 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.7 80.7 80.7 80.6 80.6 80.5 80.5 80.5 80.6 80.5 80.5 80.6 -99.0 +72 PR TAVG 10 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.4 80.4 80.4 80.4 80.4 80.4 80.4 80.1 80.1 80.1 79.9 79.9 79.9 79.8 79.8 79.8 79.7 79.7 79.7 79.7 79.6 79.6 +72 PR TAVG 11 79.7 79.6 79.3 79.1 79.0 79.0 78.9 78.9 78.9 78.9 78.9 78.8 78.8 78.7 78.7 78.6 78.4 78.4 78.2 78.1 78.1 78.0 78.0 77.9 77.9 77.8 77.8 77.6 77.6 77.4 -99.0 +72 PR TAVG 12 77.4 77.4 77.1 77.1 77.0 76.9 76.8 76.8 76.8 76.7 76.6 76.6 76.4 76.4 76.4 76.3 76.3 76.3 76.2 76.2 76.0 76.0 76.0 75.8 75.8 75.7 75.7 75.7 75.7 75.6 75.6 +12 PR RVP 1 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +12 PR RVP 2 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 -99.0 -99.0 +12 PR RVP 3 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 PR RVP 4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 PR RVP 5 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 PR RVP 6 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 PR RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 PR RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 PR RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 PR RVP 10 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 PR RVP 11 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 PR RVP 12 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +78 VI TMAX 1 84.3 84.3 84.3 84.2 84.2 84.2 84.3 84.2 84.2 84.0 84.2 84.3 84.3 84.2 84.3 84.2 84.2 84.0 84.0 84.2 84.2 84.2 84.1 84.1 84.1 84.1 84.3 84.3 84.4 84.4 84.4 +78 VI TMAX 2 84.1 84.1 84.1 84.2 84.2 84.1 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.3 84.6 84.6 84.6 84.7 84.7 84.8 84.8 84.8 84.8 84.8 84.8 -99.0 -99.0 -99.0 +78 VI TMAX 3 84.8 84.8 84.7 84.8 85.0 85.0 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.1 85.5 85.5 85.5 85.5 85.5 85.5 85.7 85.7 85.7 85.7 85.8 86.0 +78 VI TMAX 4 85.7 85.9 85.9 85.9 86.0 86.0 86.4 86.4 86.4 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.5 86.6 86.6 86.6 86.6 86.7 86.9 87.1 87.1 87.1 87.2 87.2 87.2 -99.0 +78 VI TMAX 5 87.2 87.2 87.3 87.3 87.3 87.4 87.5 87.5 87.5 87.5 87.6 87.6 87.8 87.9 87.9 87.9 87.9 87.9 87.9 87.9 87.9 87.9 88.1 88.2 88.2 88.3 88.4 88.4 88.4 88.5 88.6 +78 VI TMAX 6 88.6 88.6 88.6 88.8 88.8 88.8 88.9 88.9 88.9 88.9 88.9 89.0 89.2 89.2 89.2 89.3 89.3 89.3 89.3 89.3 89.3 89.4 89.4 89.4 89.5 89.5 89.5 89.6 89.6 89.5 -99.0 +78 VI TMAX 7 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.4 89.4 89.4 89.4 89.4 89.2 89.2 89.2 89.2 89.2 89.3 89.3 89.1 89.1 89.1 89.4 89.4 89.3 89.4 89.5 89.5 89.5 89.5 89.5 +78 VI TMAX 8 89.3 89.3 89.4 89.4 89.4 89.4 89.5 89.5 89.5 89.5 89.5 89.6 89.5 89.5 89.5 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.6 89.5 89.4 89.4 +78 VI TMAX 9 89.6 89.6 89.7 89.6 89.6 89.6 89.6 89.6 89.6 89.5 89.2 89.2 89.2 89.3 89.3 89.1 89.1 89.1 89.1 89.1 89.1 89.1 89.2 89.2 89.2 89.2 89.2 89.2 89.2 89.2 -99.0 +78 VI TMAX 10 89.3 89.3 89.3 89.3 89.3 89.2 89.2 89.1 89.1 89.1 89.0 88.9 88.9 88.9 88.9 88.7 88.7 88.5 88.5 88.5 88.5 88.5 88.5 88.5 88.5 88.4 88.3 88.3 88.1 88.1 87.7 +78 VI TMAX 11 87.9 87.6 87.6 87.6 87.6 87.5 87.5 87.4 87.3 87.3 87.2 87.2 87.1 87.0 87.0 86.8 86.8 86.5 86.5 86.5 86.5 86.4 86.4 86.2 86.2 86.2 85.9 85.8 85.7 85.6 -99.0 +78 VI TMAX 12 85.7 85.5 85.5 85.5 85.5 85.4 85.3 85.1 85.1 85.1 85.1 85.1 84.8 84.8 84.7 84.7 84.7 84.7 84.5 84.5 84.5 84.4 84.4 84.4 84.4 84.4 84.4 84.4 84.2 84.2 84.1 +78 VI TMIN 1 66.8 66.8 66.8 66.7 66.7 66.7 66.7 66.7 66.7 66.6 66.5 66.4 66.3 66.3 66.3 66.2 66.2 66.1 66.1 66.0 66.0 66.0 65.9 65.9 65.9 65.9 65.8 65.8 66.0 66.1 66.1 +78 VI TMIN 2 66.0 66.0 66.0 66.1 66.1 66.1 65.9 65.9 66.0 66.0 66.0 66.0 66.0 66.0 66.1 66.1 66.1 66.1 66.1 66.1 66.2 66.3 66.3 66.4 66.4 66.4 66.4 66.3 -99.0 -99.0 -99.0 +78 VI TMIN 3 66.2 66.2 66.3 66.3 66.4 66.4 66.4 66.4 66.4 66.6 66.6 66.6 66.7 66.7 66.7 66.7 66.8 66.8 66.8 66.9 66.9 66.9 67.1 67.1 67.2 67.3 67.3 67.3 67.4 67.4 67.4 +78 VI TMIN 4 67.4 67.4 67.5 67.6 67.7 67.9 67.9 68.0 68.1 68.4 68.4 68.4 68.4 68.4 68.4 68.5 68.5 68.5 68.5 68.7 68.8 69.1 69.2 69.3 69.3 69.3 69.3 69.3 69.4 69.4 -99.0 +78 VI TMIN 5 69.4 69.5 69.7 70.0 70.1 70.1 70.1 70.1 70.1 70.3 70.4 70.4 70.5 70.6 70.7 70.7 70.7 70.9 70.9 71.0 71.0 71.1 71.2 71.2 71.3 71.4 71.4 71.4 71.6 71.6 71.7 +78 VI TMIN 6 71.6 71.6 71.6 71.7 71.7 71.7 71.9 71.9 71.9 72.1 72.1 72.1 72.3 72.3 72.4 72.4 72.4 72.4 72.5 72.5 72.5 72.5 72.5 72.4 72.5 72.5 72.5 72.5 72.4 72.4 -99.0 +78 VI TMIN 7 72.4 72.4 72.4 72.3 72.3 72.3 72.3 72.3 72.3 72.0 72.0 71.9 72.0 72.0 72.2 72.2 72.3 72.3 72.3 72.3 72.3 72.3 72.2 72.1 72.2 72.2 72.2 72.2 72.4 72.5 72.5 +78 VI TMIN 8 72.3 72.2 72.2 72.2 72.3 72.3 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.5 72.4 72.4 72.4 72.4 72.6 72.6 72.6 72.6 72.6 72.6 72.6 72.6 72.5 72.3 72.3 72.3 +78 VI TMIN 9 72.5 72.5 72.5 72.5 72.6 72.6 72.4 72.4 72.4 72.3 72.3 72.3 72.3 72.3 72.3 72.1 72.1 72.1 72.0 72.0 72.0 71.9 71.9 71.9 71.8 71.8 71.8 71.8 71.8 71.9 -99.0 +78 VI TMIN 10 72.0 72.0 72.0 71.9 71.9 71.9 71.7 71.7 71.7 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.6 71.3 71.3 71.3 71.3 71.3 71.3 71.3 71.2 71.2 71.0 71.0 71.0 +78 VI TMIN 11 71.1 71.0 71.0 71.0 70.9 70.8 70.6 70.5 70.5 70.4 70.4 70.4 70.2 70.2 70.2 70.2 70.1 70.1 70.0 70.0 70.0 69.7 69.6 69.4 69.3 69.3 69.3 69.2 69.1 69.0 -99.0 +78 VI TMIN 12 69.0 69.0 69.0 68.9 68.6 68.6 68.5 68.5 68.3 68.2 68.2 68.1 68.1 68.1 68.1 68.0 67.7 67.7 67.6 67.6 67.6 67.6 67.4 67.4 67.4 67.4 67.1 66.9 66.9 66.9 66.8 +78 VI TAVG 1 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.7 75.6 75.6 75.6 75.4 75.4 75.3 75.0 75.0 75.0 75.0 74.9 74.8 74.8 74.8 74.8 74.8 74.8 75.0 75.0 75.1 75.1 75.1 +78 VI TAVG 2 74.9 74.9 74.8 75.0 75.0 75.0 75.0 75.0 75.1 75.1 75.1 75.2 75.2 75.2 75.4 75.4 75.4 75.5 75.5 75.5 75.6 75.6 75.7 75.7 75.7 75.8 75.8 75.8 -99.0 -99.0 -99.0 +78 VI TAVG 3 75.5 75.5 75.5 75.6 75.6 75.6 75.8 75.8 75.8 75.9 75.9 75.9 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.1 76.3 76.3 76.3 76.3 76.3 76.4 76.6 76.6 76.6 +78 VI TAVG 4 76.6 76.7 76.8 76.8 77.0 77.0 77.1 77.2 77.2 77.2 77.3 77.5 77.5 77.5 77.5 77.5 77.5 77.7 77.7 77.7 77.7 77.7 77.8 78.1 78.1 78.1 78.2 78.3 78.5 78.5 -99.0 +78 VI TAVG 5 78.5 78.5 78.5 78.6 78.7 78.7 78.7 78.8 78.8 79.0 79.0 79.0 79.0 79.2 79.2 79.4 79.4 79.4 79.4 79.6 79.6 79.6 79.6 79.7 79.7 79.8 79.8 79.9 80.0 80.1 80.2 +78 VI TAVG 6 80.4 80.4 80.4 80.5 80.5 80.5 80.6 80.6 80.6 80.6 80.6 80.6 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.7 80.8 80.9 81.0 81.0 80.9 80.8 80.9 80.9 80.9 -99.0 +78 VI TAVG 7 80.9 81.0 80.9 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.7 80.7 80.8 80.9 80.9 80.9 80.8 80.7 80.7 80.8 80.8 80.8 80.8 80.9 80.9 81.0 81.0 81.0 81.0 +78 VI TAVG 8 80.9 80.8 80.8 80.9 80.9 80.9 80.9 80.9 81.0 81.0 81.0 80.9 81.0 81.1 81.2 81.2 81.2 81.2 81.1 81.1 81.2 81.2 81.2 81.2 81.0 81.0 80.8 80.8 80.8 80.8 80.8 +78 VI TAVG 9 81.2 81.2 81.2 81.0 81.0 81.0 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.8 80.7 80.7 80.7 80.6 80.6 80.5 80.5 80.5 80.6 80.5 80.5 80.6 -99.0 +78 VI TAVG 10 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.6 80.4 80.4 80.4 80.4 80.4 80.4 80.4 80.1 80.1 80.1 79.9 79.9 79.9 79.8 79.8 79.8 79.7 79.7 79.7 79.7 79.6 79.6 +78 VI TAVG 11 79.7 79.6 79.3 79.1 79.0 79.0 78.9 78.9 78.9 78.9 78.9 78.8 78.8 78.7 78.7 78.6 78.4 78.4 78.2 78.1 78.1 78.0 78.0 77.9 77.9 77.8 77.8 77.6 77.6 77.4 -99.0 +78 VI TAVG 12 77.4 77.4 77.1 77.1 77.0 76.9 76.8 76.8 76.8 76.7 76.6 76.6 76.4 76.4 76.4 76.3 76.3 76.3 76.2 76.2 76.0 76.0 76.0 75.8 75.8 75.7 75.7 75.7 75.7 75.6 75.6 +12 VI RVP 1 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +12 VI RVP 2 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 -99.0 -99.0 +12 VI RVP 3 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 VI RVP 4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 VI RVP 5 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 VI RVP 6 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 VI RVP 7 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 VI RVP 8 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 VI RVP 9 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 VI RVP 10 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 +12 VI RVP 11 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 7.4 -99.0 +12 VI RVP 12 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 12.3 +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVDIU.DET b/NONROAD/NR08a/DATA/DETFAC/EVDIU.DET new file mode 100644 index 0000000..125c923 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVDIU.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for Diurnal +emissions. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVHOSE.DET b/NONROAD/NR08a/DATA/DETFAC/EVHOSE.DET new file mode 100644 index 0000000..aee1ebc --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVHOSE.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for +Non-Rec-Marine Hose Permeation. The deterioration factors +are specified by tech type. The values are actually the +coefficients of the deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVHOTSK.DET b/NONROAD/NR08a/DATA/DETFAC/EVHOTSK.DET new file mode 100644 index 0000000..cdf0a86 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVHOTSK.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for Hot +Soak. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVNECK.DET b/NONROAD/NR08a/DATA/DETFAC/EVNECK.DET new file mode 100644 index 0000000..0e82c3a --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVNECK.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for +Rec-Marine Fill Neck Hose Permeation. The deterioration factors +are specified by tech type. The values are actually the +coefficients of the deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVRUNLS.DET b/NONROAD/NR08a/DATA/DETFAC/EVRUNLS.DET new file mode 100644 index 0000000..d4519e1 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVRUNLS.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for Running +Loss. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVSUPRET.DET b/NONROAD/NR08a/DATA/DETFAC/EVSUPRET.DET new file mode 100644 index 0000000..dfd1515 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVSUPRET.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for +Rec-Marine Supply/Return Hose Permeation. The deterioration factors +are specified by tech type. The values are actually the +coefficients of the deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVTANK.DET b/NONROAD/NR08a/DATA/DETFAC/EVTANK.DET new file mode 100644 index 0000000..f36c26a --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVTANK.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for Tank +Permeation. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EVVENT.DET b/NONROAD/NR08a/DATA/DETFAC/EVVENT.DET new file mode 100644 index 0000000..89e8c5a --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EVVENT.DET @@ -0,0 +1,29 @@ +This file contains deterioration factors (DF) data for +Rec-Marine Vent Hose Permeation. The deterioration factors +are specified by tech type. The values are actually the +coefficients of the deterioration equation: + DF = 1 + A * (age)**B + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + B = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +05/18/04 +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- B coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +ALL 0.0 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EXHCO.DET b/NONROAD/NR08a/DATA/DETFAC/EXHCO.DET new file mode 100644 index 0000000..3312961 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EXHCO.DET @@ -0,0 +1,134 @@ +This file contains deterioration factors data for exhaust CO +emissions. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**b + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + b = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +9/28/07 16e: like 16c but change dsl recmarine Base, T0, T1 to BaseM, T0M, T1M; + & RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- b coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +G2H3 0.2 1.0 1.0 CO +G2H31 0.24 1.0 1.0 CO +G2H3C1 0.24 1.0 1.0 CO +G2H32 0.24 1.0 1.0 CO +G2H3C2 0.24 1.0 1.0 CO +G2H4 0.2 1.0 1.0 CO +G2H41 0.24 1.0 1.0 CO +G2H4C1 0.24 1.0 1.0 CO +G4H41 0.90 0.5 1.0 CO +G2H42 0.24 1.0 1.0 CO +G2H4C2 0.24 1.0 1.0 CO +G4H42 0.90 0.5 1.0 CO +G2H5 0.2 1.0 1.0 CO +G2H51 0.231 1.0 1.0 CO +G2H5C1 0.231 1.0 1.0 CO +G2H52 0.231 1.0 1.0 CO +G2H5C2 0.231 1.0 1.0 CO +G2N1 0.199 1.0 2.0 CO +G4N1S 0.90 0.5 2.0 CO +G4N1O 0.90 0.5 2.0 CO +G2N1 0.231 1.0 2.0 CO +G4N1S1 1.109 0.5 2.0 CO +G4N1O1 1.051 0.5 2.0 CO +G4N1SC1 1.109 0.5 2.0 CO +G4N1S2 0.070 0.5 2.0 CO +G4N1O2 0.070 0.5 2.0 CO +G4N1S3 0.070 0.5 2.0 CO +G4N1O3 0.070 0.5 2.0 CO +G2N2 0.199 1.0 2.0 CO +G4N2S 0.90 0.5 2.0 CO +G4N2O 0.90 0.5 2.0 CO +G4N2S1 0.887 0.5 2.0 CO +G4N2O1 1.307 0.5 2.0 CO +G4N2S2 0.080 0.5 2.0 CO +G4N2O2 0.080 0.5 2.0 CO +G4N23 0.080 0.5 2.0 CO +G4N23a 0.080 0.5 2.0 CO +G4N23b 0.080 0.5 2.0 CO +G2GT25 0.199 1.0 1.0 CO +G4GT25 0.35 1.0 1.0 CO +G4GT251 0.36 1.0 1.0 CO +G4GT252 0.36 1.0 1.0 CO +RM2 0.199 1.0 1.0 CO +RM21 0.199 1.0 1.0 CO +RS2 0.199 1.0 1.0 CO +RS21 0.199 1.0 1.0 CO +RS22 0.199 1.0 1.0 CO +RA2 0.199 1.0 1.0 CO +RA21 0.199 1.0 1.0 CO +RM4 0.17 0.5 1.0 CO +RM40 0.17 0.5 1.0 CO +RM41 0.17 0.5 1.0 CO +RM42 0.17 0.5 1.0 CO +RS4 0.17 0.5 1.0 CO +RS40 0.17 0.5 1.0 CO +RS41 0.17 0.5 1.0 CO +RS42 0.17 0.5 1.0 CO +RA4 0.17 0.5 1.0 CO +RA40 0.17 0.5 1.0 CO +RA41 0.17 0.5 1.0 CO +RA42 0.17 0.5 1.0 CO +LGT25 0.35 1.0 1.0 CO +LGT251 0.36 1.0 1.0 CO +LGT252 0.36 1.0 1.0 CO +NGT25 0.35 1.0 1.0 CO +NGT251 0.36 1.0 1.0 CO +NGT252 0.36 1.0 1.0 CO +Base 0.185 1.0 1.0 CO +T0 0.185 1.0 1.0 CO +T1 0.101 1.0 1.0 CO +T2 0.101 1.0 1.0 CO +T3 0.151 1.0 1.0 CO +T3B 0.151 1.0 1.0 CO +T4A 0.151 1.0 1.0 CO +T4B 0.151 1.0 1.0 CO +T4 0.151 1.0 1.0 CO +T4N1 0.151 1.0 1.0 CO +T4N 0.151 1.0 1.0 CO +BaseM 0.185 1.0 1.0 CO +T0M 0.185 1.0 1.0 CO +T1M 0.101 1.0 1.0 CO +T2M 0.101 1.0 1.0 CO +T3M 0.101 1.0 1.0 CO +T4M 0.101 1.0 1.0 CO +MO2C 0.0 1.0 1.0 CO +MO2I 0.03 1.0 1.0 CO +MO2D 0.03 1.0 1.0 CO +MO4C 0.05 1.0 1.0 CO +MO4I 0.03 1.0 1.0 CO +MO4D 0.03 1.0 1.0 CO +MOC1 0.05 1.0 1.0 CO +MOC2 0.05 1.0 1.0 CO +MP2C 0.0 1.0 1.0 CO +MP2CA 0.26 1.0 1.0 CO +MP2I 0.03 1.0 1.0 CO +MP2D 0.03 1.0 1.0 CO +MP4C 0.05 1.0 1.0 CO +MP4I 0.03 1.0 1.0 CO +MP4D 0.03 1.0 1.0 CO +MPC1 0.05 1.0 1.0 CO +MS4C 0.35 1.0 1.0 CO +MS4D 0.35 1.0 1.0 CO +MSC1 0.36 1.0 1.0 CO +MS4X 0.35 1.0 1.0 CO +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EXHNOX.DET b/NONROAD/NR08a/DATA/DETFAC/EXHNOX.DET new file mode 100644 index 0000000..fec74ca --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EXHNOX.DET @@ -0,0 +1,134 @@ +This file contains deterioration factors data for exhaust NOx +emissions. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**b + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + b = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +9/28/07 16f: like 16e but change dsl recmarine Base, T0, T1 to BaseM, T0M, T1M; + & RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- b coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +G2H3 0 1.0 1.0 NOx +G2H31 0 1.0 1.0 NOx +G2H3C1 0 1.0 1.0 NOx +G2H32 0 1.0 1.0 NOx +G2H3C2 0 1.0 1.0 NOx +G2H4 0 1.0 1.0 NOx +G2H41 0 1.0 1.0 NOx +G2H4C1 0 1.0 1.0 NOx +G4H41 0 0.5 1.0 NOx +G2H42 0 1.0 1.0 NOx +G2H4C2 0 1.0 1.0 NOx +G4H42 0 0.5 1.0 NOx +G2H5 0 1.0 1.0 NOx +G2H51 0 1.0 1.0 NOx +G2H5C1 0 1.0 1.0 NOx +G2H52 0 1.0 1.0 NOx +G2H5C2 0 1.0 1.0 NOx +G2N1 0 1.0 2.0 NOx +G4N1S 0 0.5 2.0 NOx +G4N1O 0 0.5 2.0 NOx +G2N1 0 1.0 2.0 NOx +G4N1S1 0 0.5 2.0 NOx +G4N1O1 0 0.5 2.0 NOx +G4N1SC1 0 0.5 2.0 NOx +G4N1S2 0.18 0.5 2.0 NOx +G4N1O2 0.18 0.5 2.0 NOx +G4N1S3 0.302 0.5 2.0 NOx +G4N1O3 0.302 0.5 2.0 NOx +G2N2 0 1.0 2.0 NOx +G4N2S 0 0.5 2.0 NOx +G4N2O 0 0.5 2.0 NOx +G4N2S1 0 0.5 2.0 NOx +G4N2O1 0 0.5 2.0 NOx +G4N2S2 0 0.5 2.0 NOx +G4N2O2 0 0.5 2.0 NOx +G4N23 0.302 0.5 2.0 NOx +G4N23a 0.302 0.5 2.0 NOx +G4N23b 0.302 0.5 2.0 NOx +G2GT25 0 1.0 1.0 NOx +G4GT25 0.03 1.0 1.0 NOx +G4GT251 0.15 1.0 1.0 NOx +G4GT252 0.15 1.0 1.0 NOx +RM2 0 1.0 1.0 NOx +RM21 0 1.0 1.0 NOx +RS2 0 1.0 1.0 NOx +RS21 0 1.0 1.0 NOx +RS22 0 1.0 1.0 NOx +RA2 0 1.0 1.0 NOx +RA21 0 1.0 1.0 NOx +RM4 0 1.0 1.0 NOx +RM40 0 1.0 1.0 NOx +RM41 0 1.0 1.0 NOx +RM42 0 1.0 1.0 NOx +RS4 0 1.0 1.0 NOx +RS40 0 1.0 1.0 NOx +RS41 0 1.0 1.0 NOx +RS42 0 1.0 1.0 NOx +RA4 0 1.0 1.0 NOx +RA40 0 1.0 1.0 NOx +RA41 0 1.0 1.0 NOx +RA42 0 1.0 1.0 NOx +LGT25 0.03 1.0 1.0 NOx +LGT251 0.15 1.0 1.0 NOx +LGT252 0.15 1.0 1.0 NOx +NGT25 0.03 1.0 1.0 NOx +NGT251 0.15 1.0 1.0 NOx +NGT252 0.15 1.0 1.0 NOx +Base 0.024 1.0 1.0 NOx +T0 0.024 1.0 1.0 NOx +T1 0.024 1.0 1.0 NOx +T2 0.009 1.0 1.0 NOx +T3 0.008 1.0 1.0 NOx +T3B 0.008 1.0 1.0 NOx +T4A 0.008 1.0 1.0 NOx +T4B 0.008 1.0 1.0 NOx +T4 0.008 1.0 1.0 NOx +T4N1 0.008 1.0 1.0 NOx +T4N 0.008 1.0 1.0 NOx +BaseM 0.024 1.0 1.0 NOx +T0M 0.024 1.0 1.0 NOx +T1M 0.024 1.0 1.0 NOx +T2M 0.009 1.0 1.0 NOx +T3M 0.009 1.0 1.0 NOx +T4M 0.009 1.0 1.0 NOx +MO2C 0.0 1.0 1.0 NOx +MO2I 0.08 1.0 1.0 NOx +MO2D 0.05 1.0 1.0 NOx +MO4C 0.05 1.0 1.0 NOx +MO4I 0.03 1.0 1.0 NOx +MO4D 0.03 1.0 1.0 NOx +MOC1 0.05 1.0 1.0 NOx +MOC2 0.05 1.0 1.0 NOx +MP2C 0.0 1.0 1.0 NOx +MP2CA 0.06 1.0 1.0 NOx +MP2I 0.08 1.0 1.0 NOx +MP2D 0.05 1.0 1.0 NOx +MP4C 0.05 1.0 1.0 NOx +MP4I 0.03 1.0 1.0 NOx +MP4D 0.03 1.0 1.0 NOx +MPC1 0.05 1.0 1.0 NOx +MS4C 0.03 1.0 1.0 NOx +MS4D 0.03 1.0 1.0 NOx +MSC1 0.15 1.0 1.0 NOx +MS4X 0.03 1.0 1.0 NOx +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EXHPM.DET b/NONROAD/NR08a/DATA/DETFAC/EXHPM.DET new file mode 100644 index 0000000..0f9d9c4 --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EXHPM.DET @@ -0,0 +1,134 @@ +This file contains deterioration factors data for exhaust PM +emissions. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**b + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + b = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +9/28/07 16f: like 16e but change dsl recmarine Base, T0, T1 to BaseM, T0M, T1M; + & RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- b coefficient in the equation + 41-50 real -- emissions cap (in median life units) + 51-60 character -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +G2H3 0.2 1.0 1.0 PM +G2H31 0.24 1.0 1.0 PM +G2H3C1 0.24 1.0 1.0 PM +G2H32 0.24 1.0 1.0 PM +G2H3C2 0.24 1.0 1.0 PM +G2H4 0.2 1.0 1.0 PM +G2H41 0.29 1.0 1.0 PM +G2H4C1 0.29 1.0 1.0 PM +G4H41 1.10 0.5 1.0 PM +G2H42 0.29 1.0 1.0 PM +G2H4C2 0.29 1.0 1.0 PM +G4H42 1.10 0.5 1.0 PM +G2H5 0.2 1.0 1.0 PM +G2H51 0.266 1.0 1.0 PM +G2H5C1 0.266 1.0 1.0 PM +G2H52 0.266 1.0 1.0 PM +G2H5C2 0.266 1.0 1.0 PM +G2N1 0.201 1.0 2.0 PM +G4N1S 1.10 0.5 2.0 PM +G4N1O 1.10 0.5 2.0 PM +G2N1 0.266 1.0 2.0 PM +G4N1S1 5.103 0.5 2.0 PM +G4N1O1 1.753 0.5 2.0 PM +G4N1SC1 5.103 0.5 2.0 PM +G4N1S2 1.753 0.5 2.0 PM +G4N1O2 1.753 0.5 2.0 PM +G4N1S3 1.753 0.5 2.0 PM +G4N1O3 1.753 0.5 2.0 PM +G2N2 0.201 1.0 2.0 PM +G4N2S 1.10 0.5 2.0 PM +G4N2O 1.10 0.5 2.0 PM +G4N2S1 1.935 0.5 2.0 PM +G4N2O1 1.095 0.5 2.0 PM +G4N2S2 1.095 0.5 2.0 PM +G4N2O2 1.095 0.5 2.0 PM +G4N23 1.095 0.5 2.0 PM +G4N23a 1.095 0.5 2.0 PM +G4N23b 1.095 0.5 2.0 PM +G2GT25 0.201 1.0 1.0 PM +G4GT25 0.26 1.0 1.0 PM +G4GT251 0.26 1.0 1.0 PM +G4GT252 0.26 1.0 1.0 PM +RM2 0.201 1.0 1.0 PM +RM21 0.201 1.0 1.0 PM +RS2 0.201 1.0 1.0 PM +RS21 0.201 1.0 1.0 PM +RS22 0.201 1.0 1.0 PM +RA2 0.201 1.0 1.0 PM +RA21 0.201 1.0 1.0 PM +RM4 0.15 0.5 1.0 PM +RM40 0.15 0.5 1.0 PM +RM41 0.15 0.5 1.0 PM +RM42 0.15 0.5 1.0 PM +RS4 0.15 0.5 1.0 PM +RS40 0.15 0.5 1.0 PM +RS41 0.15 0.5 1.0 PM +RS42 0.15 0.5 1.0 PM +RA4 0.15 0.5 1.0 PM +RA40 0.15 0.5 1.0 PM +RA41 0.15 0.5 1.0 PM +RA42 0.15 0.5 1.0 PM +LGT25 0.26 1.0 1.0 PM +LGT251 0.26 1.0 1.0 PM +LGT252 0.26 1.0 1.0 PM +NGT25 0.26 1.0 1.0 PM +NGT251 0.26 1.0 1.0 PM +NGT252 0.26 1.0 1.0 PM +Base 0.473 1.0 1.0 PM +T0 0.473 1.0 1.0 PM +T1 0.473 1.0 1.0 PM +T2 0.473 1.0 1.0 PM +T3 0.473 1.0 1.0 PM +T3B 0.473 1.0 1.0 PM +T4A 0.473 1.0 1.0 PM +T4B 0.473 1.0 1.0 PM +T4 0.473 1.0 1.0 PM +T4N1 0.473 1.0 1.0 PM +T4N 0.473 1.0 1.0 PM +BaseM 0.473 1.0 1.0 PM +T0M 0.473 1.0 1.0 PM +T1M 0.473 1.0 1.0 PM +T2M 0.473 1.0 1.0 PM +T3M 0.473 1.0 1.0 PM +T4M 0.473 1.0 1.0 PM +MO2C 0.0 1.0 1.0 PM +MO2I 0.0 1.0 1.0 PM +MO2D 0.0 1.0 1.0 PM +MO4C 0.0 1.0 1.0 PM +MO4I 0.0 1.0 1.0 PM +MO4D 0.0 1.0 1.0 PM +MOC1 0.0 1.0 1.0 PM +MOC2 0.0 1.0 1.0 PM +MP2C 0.0 1.0 1.0 PM +MP2CA 0.0 1.0 1.0 PM +MP2I 0.0 1.0 1.0 PM +MP2D 0.0 1.0 1.0 PM +MP4C 0.0 1.0 1.0 PM +MP4I 0.0 1.0 1.0 PM +MP4D 0.0 1.0 1.0 PM +MPC1 0.0 1.0 1.0 PM +MS4C 0.26 1.0 1.0 PM +MS4D 0.26 1.0 1.0 PM +MSC1 0.26 1.0 1.0 PM +MS4X 0.26 1.0 1.0 PM +/END/ diff --git a/NONROAD/NR08a/DATA/DETFAC/EXHTHC.DET b/NONROAD/NR08a/DATA/DETFAC/EXHTHC.DET new file mode 100644 index 0000000..0844caa --- /dev/null +++ b/NONROAD/NR08a/DATA/DETFAC/EXHTHC.DET @@ -0,0 +1,134 @@ +This file contains deterioration factors data for exhaust THC +emissions. The deterioration factors are specified by tech +type. The values are actually the coefficients of the +deterioration equation: + DF = 1 + A * (age)**b + where: + DF = new deterioation factor + A = coefficient specified here + age = age of the engine + (cum. hours * load factor / median life in hours) + b = coefficient specified here +An ALL in the tech type field will apply to all technology +types. +Any tech type not listed in this file will assume to have +no deterioration on the emission factor. + +9/28/07 16e: like 16c but change dsl recmarine Base, T0, T1 to BaseM, T0M, T1M; + & RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + +-------------------------------------------------------------- +The format is as follows: + 1-10 character -- technology type code + 21-30 real -- A coefficient in the equation + 31-40 real -- b coefficient in the equation + 41-50 character -- emissions cap (in median life units) + 51-60 real -- pollutant name +-------------------------------------------------------------- + +/DETFAC/ +G2H3 0.2 1.0 1.0 THC +G2H31 0.24 1.0 1.0 THC +G2H3C1 0.24 1.0 1.0 THC +G2H32 0.24 1.0 1.0 THC +G2H3C2 0.72 1.0 1.0 THC +G2H4 0.2 1.0 1.0 THC +G2H41 0.29 1.0 1.0 THC +G2H4C1 0.29 1.0 1.0 THC +G4H41 1.10 0.5 1.0 THC +G2H42 0.29 1.0 1.0 THC +G2H4C2 0.77 1.0 1.0 THC +G4H42 1.10 0.5 1.0 THC +G2H5 0.2 1.0 1.0 THC +G2H51 0.266 1.0 1.0 THC +G2H5C1 0.266 1.0 1.0 THC +G2H52 0.266 1.0 1.0 THC +G2H5C2 0.626 1.0 1.0 THC +G2N1 0.201 1.0 2.0 THC +G4N1S 1.10 0.5 2.0 THC +G4N1O 1.10 0.5 2.0 THC +G2N1 0.266 1.0 2.0 THC +G4N1S1 5.103 0.5 2.0 THC +G4N1O1 1.753 0.5 2.0 THC +G4N1SC1 5.103 0.5 2.0 THC +G4N1S2 1.753 0.5 2.0 THC +G4N1O2 1.753 0.5 2.0 THC +G4N1S3 0.797 0.5 2.0 THC +G4N1O3 0.797 0.5 2.0 THC +G2N2 0.201 1.0 2.0 THC +G4N2S 1.10 0.5 2.0 THC +G4N2O 1.10 0.5 2.0 THC +G4N2S1 1.935 0.5 2.0 THC +G4N2O1 1.095 0.5 2.0 THC +G4N2S2 1.095 0.5 2.0 THC +G4N2O2 1.095 0.5 2.0 THC +G4N23 0.797 0.5 2.0 THC +G4N23a 0.797 0.5 2.0 THC +G4N23b 0.797 0.5 2.0 THC +G2GT25 0.201 1.0 1.0 THC +G4GT25 0.26 1.0 1.0 THC +G4GT251 0.64 1.0 1.0 THC +G4GT252 0.64 1.0 1.0 THC +RM2 0.201 1.0 1.0 THC +RM21 0.201 1.0 1.0 THC +RS2 0.201 1.0 1.0 THC +RS21 0.201 1.0 1.0 THC +RS22 0.201 1.0 1.0 THC +RA2 0.201 1.0 1.0 THC +RA21 0.201 1.0 1.0 THC +RM4 0.15 0.5 1.0 THC +RM40 0.15 0.5 1.0 THC +RM41 0.15 0.5 1.0 THC +RM42 0.15 0.5 1.0 THC +RS4 0.15 0.5 1.0 THC +RS40 0.15 0.5 1.0 THC +RS41 0.15 0.5 1.0 THC +RS42 0.15 0.5 1.0 THC +RA4 0.15 0.5 1.0 THC +RA40 0.15 0.5 1.0 THC +RA41 0.15 0.5 1.0 THC +RA42 0.15 0.5 1.0 THC +LGT25 0.26 1.0 1.0 THC +LGT251 0.64 1.0 1.0 THC +LGT252 0.64 1.0 1.0 THC +NGT25 0.26 1.0 1.0 THC +NGT251 0.64 1.0 1.0 THC +NGT252 0.64 1.0 1.0 THC +Base 0.047 1.0 1.0 THC +T0 0.047 1.0 1.0 THC +T1 0.036 1.0 1.0 THC +T2 0.034 1.0 1.0 THC +T3 0.027 1.0 1.0 THC +T3B 0.027 1.0 1.0 THC +T4A 0.027 1.0 1.0 THC +T4B 0.027 1.0 1.0 THC +T4 0.027 1.0 1.0 THC +T4N1 0.027 1.0 1.0 THC +T4N 0.027 1.0 1.0 THC +BaseM 0.047 1.0 1.0 THC +T0M 0.047 1.0 1.0 THC +T1M 0.036 1.0 1.0 THC +T2M 0.034 1.0 1.0 THC +T3M 0.034 1.0 1.0 THC +T4M 0.034 1.0 1.0 THC +MO2C 0.0 1.0 1.0 THC +MO2I 0.03 1.0 1.0 THC +MO2D 0.03 1.0 1.0 THC +MO4C 0.05 1.0 1.0 THC +MO4I 0.03 1.0 1.0 THC +MO4D 0.03 1.0 1.0 THC +MOC1 0.05 1.0 1.0 THC +MOC2 0.05 1.0 1.0 THC +MP2C 0.0 1.0 1.0 THC +MP2CA 0.26 1.0 1.0 THC +MP2I 0.03 1.0 1.0 THC +MP2D 0.03 1.0 1.0 THC +MP4C 0.05 1.0 1.0 THC +MP4I 0.03 1.0 1.0 THC +MP4D 0.03 1.0 1.0 THC +MPC1 0.05 1.0 1.0 THC +MS4C 0.26 1.0 1.0 THC +MS4D 0.26 1.0 1.0 THC +MSC1 0.64 1.0 1.0 THC +MS4X 0.26 1.0 1.0 THC +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/BSFC.EMF b/NONROAD/NR08a/DATA/EMSFAC/BSFC.EMF new file mode 100644 index 0000000..4225ed7 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/BSFC.EMF @@ -0,0 +1,2656 @@ +This file contains emission factors data for exhaust BSFC +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +11/2/06 bsfc-43n: same as 43k but new SIrecmarine PWC ctl BSFC per 11/1/06 primary inputs spreadsheet. +3/2/07 bsfc-43q: like 43n but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +10/3/07 bsfc-43r: like 43q but rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + change Hi-Perf SD/I control from MSC1 to MS4X. +1/25/08 bsfc43s: New Phs-3 Cls-2 CO & BSFC. +7/22/08 43u: Like 43s but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HpminHpmax techtyT1 techtyT2 techtyT3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyT10 BSFC +1900 37.7 0 37.7 999.99 999.99 999.990 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 BSFC +1900 1.300 0.484 0.484 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G4H31 G2H32 G2H3C2 G4H32 BSFC +1900 1.365 1.184 1.184 0.000 0.822 0.822 0.000 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 BSFC +1900 1.365 0.000 0.000 1.184 1.184 0.847 0.822 0.822 0.847 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 BSFC +1900 0.921 0.000 0.870 0.870 0.608 0.608 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b BSFC +1900 0.870 0.937 0.937 0.740 0.868 0.740 0.868 0.735 0.735 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b BSFC +1900 0.870 0.937 0.937 0.740 0.868 0.740 0.868 0.735 0.735 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2260001010 0 9999 RM2 RM4 RM40 RM41 BSFC +1900 0.268 0.201 0.201 0.201 + 2265001010 0 9999 RM4 RM40 RM41 BSFC +1900 0.158 0.158 0.158 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 BSFC +1900 1.660 1.245 1.245 1.660 1.245 + 2265001020 0 9999 RS4 RS40 BSFC +1900 1.245 1.245 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 BSFC +1900 0.213 0.160 0.160 0.160 0.160 + 2265001030 0 9999 RA4 RA40 RA41 RA42 BSFC +1900 0.167 0.167 0.167 0.167 + 2265002015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002024 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002057 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002060 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002066 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002072 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265002078 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265003040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 BSFC +1900 0.921 0.000 0.870 0.870 0.608 0.608 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 BSFC +1900 0.921 0.000 0.870 0.870 0.608 0.608 + 2260004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S BSFC +1900 0.87 0.87 0.99 1.36 0.94 0.94 + 2260004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S BSFC +1900 0.87 0.87 0.99 1.36 0.94 0.94 + 2265004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S BSFC +1900 0.87 0.87 0.99 1.36 0.94 0.94 + 2265004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S BSFC +1900 0.87 0.87 0.99 1.36 0.94 0.94 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004046 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004051 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265004055 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 BSFC +1900 0.870 0.991 1.365 0.693 0.693 + 2265004056 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 BSFC +1900 0.870 0.991 1.365 0.693 0.693 + 2265004066 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 BSFC +1900 0.870 0.991 1.365 0.693 0.693 + 2265004076 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 BSFC +1900 0.870 0.991 1.365 0.693 0.693 + 2265005015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265005020 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265005025 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265005030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265006005 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2265006010 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2265006015 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2265006035 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 BSFC +1900 0.921 0.000 0.870 0.870 0.608 0.608 + 2265008005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2267000000 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2267006005 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2267006010 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2267006015 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2267006035 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2268000000 25 9999 NGT25 NGT251 NGT252 BSFC +1900 0.507 0.406 0.406 + 2268006005 25 9999 NGT25 NGT251 NGT252 BSFC +1900 0.507 0.406 0.406 + 2268006010 25 9999 NGT25 NGT251 NGT252 BSFC +1900 0.507 0.406 0.406 + 2268006015 25 9999 NGT25 NGT251 NGT252 BSFC +1900 0.507 0.406 0.406 + 2268006035 25 9999 NGT25 NGT251 NGT252 BSFC +1900 0.507 0.406 0.406 + 2270001000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270001000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270001000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270001000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270001000 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270001000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270001000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270001000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270001000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270001000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002003 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002003 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002003 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002003 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002003 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002003 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002003 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002003 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002003 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002003 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002006 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002006 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002006 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002006 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002006 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002006 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002006 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002006 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002006 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002006 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002009 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002009 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002009 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002009 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002009 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002009 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002009 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002009 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002009 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002009 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002015 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002018 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002018 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002018 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002018 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002018 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002018 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002018 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002018 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002018 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002018 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002021 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002021 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002021 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002021 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002021 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002021 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002021 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002021 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002021 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002021 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002024 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002024 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002024 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002024 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002024 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002024 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002024 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002024 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002024 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002024 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002027 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002027 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002027 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002027 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002027 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002027 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002027 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002027 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002027 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002027 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002030 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002033 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002033 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002033 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002033 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002033 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002033 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002033 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002033 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002033 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002033 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002036 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002036 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002036 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002036 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002036 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002036 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002036 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002036 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002036 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002036 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002039 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002039 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002039 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002039 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002039 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002039 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002039 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002039 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002039 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002039 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002042 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002042 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002042 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002042 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002042 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002042 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002042 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002042 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002042 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002042 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002045 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002048 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002048 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002048 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002048 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002048 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002048 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002048 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002048 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002048 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002048 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002051 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002051 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002051 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002051 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002051 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002051 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002051 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002051 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002051 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002051 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002054 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002054 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002054 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002054 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002054 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270002054 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002054 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002054 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002054 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002054 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270002057 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002057 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002057 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002057 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002057 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002057 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002057 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002057 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002057 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002057 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002060 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002063 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002063 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002063 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002063 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002063 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002063 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002063 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002063 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002063 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002063 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002066 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002066 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002066 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002066 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002066 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002066 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002066 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002066 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002066 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002066 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002069 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002069 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002069 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002069 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002069 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002069 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002069 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002069 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002069 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002069 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002072 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002072 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002072 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002072 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002072 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002072 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002072 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002072 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002072 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002072 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002075 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002075 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002075 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002075 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002075 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002075 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002075 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002075 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002075 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002075 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002078 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002078 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002078 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002078 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002078 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270002078 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002078 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002078 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002078 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002078 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270002081 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002081 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002081 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002081 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002081 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270002081 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002081 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002081 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002081 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270002081 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003010 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003020 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003030 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003040 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003050 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003050 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003050 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003050 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003050 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270003050 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003050 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003050 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003050 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003050 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270003060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003060 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270003060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270003070 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003070 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003070 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003070 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003070 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270003070 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003070 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003070 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003070 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270003070 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270004000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270004000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270004000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270004000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270004000 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270004000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270004000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270004000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270004000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270004000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270005010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005010 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005015 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005020 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005025 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005030 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005035 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005035 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005035 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005035 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005035 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005035 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005035 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005035 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005035 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005035 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005040 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005045 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005055 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005055 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005055 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005055 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005055 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270005055 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005055 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005055 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005055 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005055 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270005060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270005060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270005060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270005060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270005060 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270005060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270005060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270005060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270005060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270005060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270006000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270006000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270006000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270006000 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270006000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270006025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270006025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270006025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270006025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270006025 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270006025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270006025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270006025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270006025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270006025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270007010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007010 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007015 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270007015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270007015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270008005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270008005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270008005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270008005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270008005 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 0.412 + 2270008005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270008005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270008005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270008005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270008005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 0.371 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270009010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270009010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270009010 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2270010010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270010010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270010010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270010010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270010010 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 0.408 + 2270010010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270010010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270010010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270010010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2270010010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 0.367 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.80 1.62 1.44 0.92 0.83 0.83 0.92 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.62 1.46 1.29 0.92 0.83 0.83 0.92 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.48 1.33 1.18 0.91 0.82 0.82 0.91 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.39 1.25 1.11 0.91 0.82 0.82 0.91 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.34 1.21 1.07 0.89 0.80 0.80 0.89 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.16 1.04 0.92 0.87 0.78 0.78 0.87 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.11 1.00 0.89 0.83 0.75 0.75 0.83 + 2282005010 50 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 1.06 0.96 0.85 0.80 0.72 0.72 0.77 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 0.92 0.83 0.74 0.69 0.62 0.62 0.68 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 BSFC +1900 0.83 0.75 0.67 0.62 0.56 0.56 0.64 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.80 1.62 1.44 1.80 0.92 0.83 0.83 0.92 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.62 1.46 1.29 1.62 0.92 0.83 0.83 0.92 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.48 1.33 1.18 1.48 0.91 0.82 0.82 0.91 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.39 1.25 1.11 1.39 0.91 0.82 0.82 0.91 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.34 1.21 1.07 1.34 0.89 0.80 0.80 0.89 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.16 1.04 0.92 1.16 0.87 0.78 0.78 0.87 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.11 1.00 0.89 1.11 0.83 0.75 0.75 0.83 + 2282005015 50 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 1.06 0.96 0.85 1.06 0.80 0.72 0.72 0.80 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 0.92 0.83 0.74 0.92 0.69 0.62 0.62 0.65 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 BSFC +1900 0.83 0.75 0.67 0.83 0.62 0.56 0.56 0.62 + 2282010005 0 50 MS4C MS4D MSC1 BSFC +1900 0.66 0.57 0.57 + 2282010005 50 175 MS4C MS4D MSC1 BSFC +1900 0.66 0.57 0.57 + 2282010005 175 600 MS4C MS4D MSC1 BSFC +1900 0.66 0.57 0.57 + 2282010005 600 9999 MS4C MS4D MS4X BSFC +1900 0.66 0.595 0.595 + 2282020000 0 11 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 + 2282020000 11 16 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 + 2282020000 16 25 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 + 2282020000 50 100 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.408 0.408 0.408 0.408 0.408 0.408 + 2282020000 100 175 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 + 2282020000 175 300 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 + 2282020000 300 600 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 + 2282020000 600 750 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 + 2282020000 750 9999 BaseM T0M T1M T2M T3M T4M BSFC +1900 0.367 0.367 0.367 0.367 0.367 0.367 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2285002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2285002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2285002015 50 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 0.481 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N BSFC +1900 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 0.433 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 BSFC +1900 0.870 0.991 1.365 0.781 0.921 0.921 0.781 0.921 0.781 0.921 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b BSFC +1900 0.870 0.937 0.937 0.740 0.868 0.740 0.868 0.735 0.735 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 BSFC +1900 0.605 0.484 0.484 + 2285006015 25 9999 LGT25 LGT251 LGT252 BSFC +1900 0.507 0.406 0.406 + 2285008015 25 9999 NGT25 NGT2521 NGT252 BSFC +1900 0.507 0.406 0.406 +/END/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/NONROAD/NR08a/DATA/EMSFAC/CRANK.EMF b/NONROAD/NR08a/DATA/EMSFAC/CRANK.EMF new file mode 100644 index 0000000..024c5b8 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/CRANK.EMF @@ -0,0 +1,105 @@ +This file contains emission factors data for Crankcase THC +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +3/2/07 cran-43f: like 43e but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +10/1/07 cran-43g: like 43f but rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + Use tech inputs to phase-in 2265x rec equip crankcase control, rather than using EF file. + Split out all 2-stk & 4-stk rec equip tech types from 2260x & 2265x SCCs. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. +7/22/08 cran-43h: Like 43g but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (ignored; treated only as MULT) + x5-x4 character -- pollutant (ignored?; is only THC,12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/hp-hr THC +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 1 ALL G4H3 MULT THC +1900 0 0.33 + 2260000000 1 3 ALL G4H4 MULT THC +1900 0 0.33 + 2260000000 3 9999 ALL G4H4 G4H5 MULT THC +1900 0 0.33 0.33 + 2265000000 0 6 ALL G4N1O G4N1S MULT THC +1900 0 0.33 0.33 + 2265000000 6 25 ALL G4N2O G4N2S MULT THC +1900 0 0.33 0.33 + 2265000000 25 9999 ALL G4GT25 MULT THC +1900 0 0.33 + 2260001010 0 9999 RM2 RM4 RM40 RM41 MULT THC +1900 0 0.33 0 0 + 2265001010 0 9999 RM4 RM40 RM41 MULT THC +1900 0.33 0 0 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 MULT THC +1900 0 0.33 0 0 0 + 2265001020 0 9999 RS4 RS40 RS41 MULT THC +1900 0.33 0 0 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 MULT THC +1900 0 0.33 0 0 0 + 2265001030 0 9999 RA4 RA40 RA41 RA42 MULT THC +1900 0.33 0 0 0 + 2260004000 0 1 ALL G4H3 MULT THC +1900 0 0.0693 + 2260004000 1 3 ALL G4H4 MULT THC +1900 0 0.0693 + 2260004000 3 6 ALL G4H4 G4H5 MULT THC +1900 0 0.0693 0.0693 + 2265004000 0 6 ALL G4N1O G4N1S MULT THC +1900 0 0.0693 0.0693 + 2265004000 6 25 ALL G4N2O G4N2S MULT THC +1900 0 0.0693 0.0693 + 2265004066 6 25 ALL G4N2O G4N2S MULT THC +1900 0 0.33 0.33 + 2267000000 0 25 ALL MULT THC +1900 0 + 2267000000 25 9999 ALL LGT25 MULT THC +1900 0 0.33 + 2268000000 0 25 ALL MULT THC +1900 0 + 2268000000 25 9999 ALL NGT25 MULT THC +1900 0 0.33 + 2270000000 0 9999 BASE T0 T1 T2 T3 T3B T4A T4B T4 T4N MULT THC +1900 0.02 0.02 0.02 0.02 0.02 0.02 0.00 0.00 0.00 0.00 + 2282005010 0 9999 ALL MULT THC +1900 0.00 + 2282005015 0 9999 ALL MULT THC +1900 0.00 + 2282010005 0 9999 ALL MULT THC +1900 0.00 + 2282020000 0 50 BASEM T0M T1M T2M T3M T4M MULT THC +1900 0.02 0.02 0.02 0.02 0.00 0.00 + 2282020000 50 100 BASEM T0M T1M T2M T3M T4M MULT THC +1900 0.02 0.02 0.02 0.00 0.00 0.00 + 2282020000 100 9999 BASEM T0M T1M T2M T3M T4M MULT THC +1900 0.02 0.02 0.02 0.00 0.00 0.00 + 2285002015 0 9999 BASE T0 T1 T2 T3 T3B T4A T4B T4 T4N MULT THC +1900 0.02 0.02 0.02 0.02 0.02 0.02 0.00 0.00 0.00 0.00 + 2285004015 0 6 ALL G4N1O G4N1S MULT THC +1900 0 0.33 0.33 + 2285004015 6 25 ALL G4N2O G4N2S MULT THC +1900 0 0.33 0.33 + 2285004015 25 9999 ALL G4GT25 MULT THC +1900 0 0.33 + 2285006015 25 9999 ALL LGT25 MULT THC +1900 0 0.33 + 2285008015 25 9999 ALL NGT25 MULT THC +1900 0 0.33 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVDIU.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVDIU.EMF new file mode 100644 index 0000000..6dcd541 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVDIU.EMF @@ -0,0 +1,124 @@ +This file contains Wade equation emission factor multipliers (EFM) +for Diurnal THC. +The multipliers are specified by SCC, HP range, and technology type. +An ALL in the tech type field applies to all diurnal technology types. +The model will use the EFM for the closest year that is less than or +equal to the current model year. + +8/15/06 8a: Split out HH to allow HandHeld no diffusion for base or control + +Unit options: (MULT) + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (10 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factor multiplier (EFM) for technology type 1 + x5-x4 real -- EFM's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 Mult THC +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 25 E0 E1 Mult THC +1900 1.46 1.00 + 2260000000 25 9999 E0 E1 Mult THC +1900 1.46 0.10 + 2260001010 0 9999 ALL Mult THC +1900 1.00 + 2260001020 0 9999 ALL Mult THC +1900 1.00 + 2260001030 0 9999 ALL Mult THC +1900 1.00 + 2260002006 0 6 ALL Mult THC +1900 1.00 + 2260002009 0 3 ALL Mult THC +1900 1.00 + 2260002021 0 3 ALL Mult THC +1900 1.00 + 2260002027 0 3 ALL Mult THC +1900 1.00 + 2260002039 0 6 ALL Mult THC +1900 1.00 + 2260002054 0 3 ALL Mult THC +1900 1.00 + 2260003030 0 3 ALL Mult THC +1900 1.00 + 2260003040 0 3 ALL Mult THC +1900 1.00 + 2260004015 0 3 ALL Mult THC +1900 1.00 + 2260004016 0 3 ALL Mult THC +1900 1.00 + 2260004020 0 3 ALL Mult THC +1900 1.00 + 2260004021 0 6 ALL Mult THC +1900 1.00 + 2260004025 0 3 ALL Mult THC +1900 1.00 + 2260004026 0 6 ALL Mult THC +1900 1.00 + 2260004030 0 3 ALL Mult THC +1900 1.00 + 2260004031 0 6 ALL Mult THC +1900 1.00 + 2260004071 0 3 ALL Mult THC +1900 1.00 + 2260005035 0 3 ALL Mult THC +1900 1.00 + 2260006005 0 3 ALL Mult THC +1900 1.00 + 2260006010 0 3 ALL Mult THC +1900 1.00 + 2260006015 0 3 ALL Mult THC +1900 1.00 + 2260006035 0 3 ALL Mult THC +1900 1.00 + 2260007005 0 11 ALL Mult THC +1900 1.00 + 2265000000 0 25 E0 E1 Mult THC +1900 1.46 1.00 + 2265000000 25 9999 E0 E1 Mult THC +1900 1.46 0.10 + 2265001010 0 9999 ALL Mult THC +1900 1.00 + 2265001020 0 9999 ALL Mult THC +1900 1.00 + 2265001030 0 9999 ALL Mult THC +1900 1.00 + 2267000000 0 9999 ALL Mult THC +1900 0.00 + 2268000000 0 9999 ALL Mult THC +1900 0.00 + 2270000000 0 9999 ALL Mult THC +1900 0.00 + 2282005010 0 25 E0 E1 Mult THC +1900 0.73 0.10 + 2282005010 25 9999 E0 E1 Mult THC +1900 1.00 0.40 + 2282005015 0 9999 E0 E1 Mult THC +1900 0.30 0.30 + 2282010005 0 9999 E0 E1 Mult THC +1900 1.00 0.40 + 2282020000 0 9999 ALL Mult THC +1900 0.00 + 2285002015 0 9999 ALL Mult THC +1900 0.00 + 2285004015 0 25 E0 E1 Mult THC +1900 1.46 1.00 + 2285004015 25 9999 E0 E1 Mult THC +1900 1.46 0.10 + 2285006015 0 9999 ALL Mult THC +1900 0.00 + 2285008015 0 9999 ALL Mult THC +1900 0.00 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVHOSE.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVHOSE.EMF new file mode 100644 index 0000000..2d6fa85 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVHOSE.EMF @@ -0,0 +1,132 @@ +This file contains the emission factors (EF) for non-metal HOSE +Permeation THC for NON-REC MARINE EQUIPMENT ONLY. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all HOSE technology types. +The model will use the EF for the closest year that is less than or equal +to the current model year. +Metal hoses have zero permeation. Metal fractions are in spillage.emf. + +NOTE: The rec-marine permeations for neck, supply/return, and +vent are in EVNECK.EMF, EVSUPRET.EMF, and EVVENT.EMF respectively. + +11/1/06 5b: Like 5a but new SmSI EFs, Dates per 10/31/06 spreadsheet. + and use pseudo-EFs to model some of the evap phase-ins. + +Unit options: (g/m2/day) + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +46-55 character -- units +56-67 character -- pollutant +Line 2: +1-5 integer -- year +35-44 real -- emission factor (EF) for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/m2/day THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 25 E0 E1 g/m2/day THC +1900 122.0 3.75 + 2260000000 25 9999 ALL g/m2/day THC +1900 0.0 + 2260001010 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2260001020 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2260001030 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2260002006 0 6 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260002009 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260002021 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260002027 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260002039 0 6 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260002054 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260003030 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260003040 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004015 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004016 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004020 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 140.00 140.00 + 2260004021 0 6 E0 E1 E2 g/m2/day THC +1900 140.0 140.00 140.00 + 2260004025 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004026 0 6 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004030 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004031 0 6 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260004071 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260005035 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260006005 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260006010 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260006015 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260006035 0 3 E0 E1 E2 g/m2/day THC +1900 140.0 17.38 3.75 + 2260007005 0 11 E0 E1 E2 g/m2/day THC +1900 140.0 140.00 140.00 + 2265000000 0 25 E0 E1 g/m2/day THC +1900 122.0 3.75 + 2265000000 25 9999 ALL g/m2/day THC +1900 0.0 + 2265001010 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2265001020 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2265001030 0 9999 E0 E1 g/m2/day THC +1900 450.0 7.50 + 2267000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2268000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2270000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2282005010 0 9999 ALL g/m2/day THC +1900 0.0 + 2282005015 0 9999 ALL g/m2/day THC +1900 0.0 + 2282010005 0 9999 ALL g/m2/day THC +1900 0.0 + 2282020005 0 9999 ALL g/m2/day THC +1900 0.0 + 2282020010 0 9999 ALL g/m2/day THC +1900 0.0 + 2285002015 0 9999 ALL g/m2/day THC +1900 0.0 + 2285003015 0 25 ALL g/m2/day THC +1900 122.0 3.75 + 2285003015 25 9999 ALL g/m2/day THC +1900 0.0 + 2285004015 0 25 E0 E1 g/m2/day THC +1900 122.0 3.75 + 2285004015 25 9999 ALL g/m2/day THC +1900 0.0 + 2285006015 0 9999 ALL g/m2/day THC +1900 0.0 + 2285008015 0 9999 ALL g/m2/day THC +1900 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVHOTSK.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVHOTSK.EMF new file mode 100644 index 0000000..5fc06f0 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVHOTSK.EMF @@ -0,0 +1,225 @@ +This file contains emission factors (EFs) for Hot Soak THC emissions. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all Hot Soak technology types. +The model will use the EF for the closest year that is less than or +equal to the current model year. + +11/14/05 6b: EPA: Make 4-stk rec equip match 2-stk 0-9999 hp range. Add 0-25 non-rec 226x001050/60. + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC Code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +x5-x4 character -- technology type (repeating fields of 10) +x5-x4 character -- units (10 characters max) g/start (meaning grams per full hotsoak event) +x5-x4 character -- pollutant (12 characters max) +Line 2: +1-5 integer -- year +35-44 real -- emission factors for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/start THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 E0 E1 g/start THC +1900 4.34 0.43 + 2260001000 0 9999 ALL g/start THC +1900 3.00 + 2260001050 0 25 ALL g/start THC +1900 3.00 + 2260001060 0 25 ALL g/start THC +1900 3.00 + 2260001060 25 9999 E0 E1 g/start THC +1900 3.00 0.30 + 2260002000 0 25 ALL g/start THC +1900 10.50 + 2260002027 0 25 ALL g/start THC +1900 3.24 + 2260002033 0 25 ALL g/start THC +1900 3.24 + 2260003000 0 25 ALL g/start THC +1900 10.50 + 2260004010 0 25 ALL g/start THC +1900 0.85 + 2260004011 0 25 ALL g/start THC +1900 0.85 + 2260004015 0 25 ALL g/start THC +1900 0.57 + 2260004016 0 25 ALL g/start THC +1900 0.57 + 2260004020 0 25 ALL g/start THC +1900 0.27 + 2260004021 0 25 ALL g/start THC +1900 0.27 + 2260004025 0 25 ALL g/start THC +1900 0.29 + 2260004026 0 25 ALL g/start THC +1900 0.29 + 2260004030 0 25 ALL g/start THC +1900 0.15 + 2260004031 0 25 ALL g/start THC +1900 0.15 + 2260004035 0 25 ALL g/start THC +1900 0.85 + 2260004036 0 25 ALL g/start THC +1900 0.85 + 2260004040 0 25 ALL g/start THC +1900 1.52 + 2260004041 0 25 ALL g/start THC +1900 1.52 + 2260004045 0 25 ALL g/start THC +1900 1.52 + 2260004046 0 25 ALL g/start THC +1900 1.52 + 2260004050 0 25 ALL g/start THC +1900 0.27 + 2260004051 0 25 ALL g/start THC +1900 0.27 + 2260004055 0 25 ALL g/start THC +1900 1.52 + 2260004056 0 25 ALL g/start THC +1900 1.52 + 2260004065 0 25 ALL g/start THC +1900 0.85 + 2260004066 0 25 ALL g/start THC +1900 0.85 + 2260004071 0 25 ALL g/start THC +1900 1.52 + 2260004075 0 25 ALL g/start THC +1900 0.85 + 2260004076 0 25 ALL g/start THC +1900 0.85 + 2260005000 0 25 ALL g/start THC +1900 3.00 + 2260005020 0 25 ALL g/start THC +1900 10.50 + 2260005025 0 25 ALL g/start THC +1900 10.50 + 2260005045 0 25 ALL g/start THC +1900 10.50 + 2260006000 0 25 ALL g/start THC +1900 3.24 + 2260007000 0 25 ALL g/start THC +1900 0.27 + 2260007015 0 25 ALL g/start THC +1900 10.50 + 2260008005 0 25 ALL g/start THC +1900 10.50 + 2260009010 0 25 ALL g/start THC +1900 3.24 + 2260010010 0 25 ALL g/start THC +1900 3.24 + 2265000000 25 9999 E0 E1 g/start THC +1900 4.34 0.43 + 2265001000 0 9999 ALL g/start THC +1900 3.00 + 2265001050 0 25 ALL g/start THC +1900 3.00 + 2265001060 0 25 ALL g/start THC +1900 3.00 + 2265001060 25 9999 E0 E1 g/start THC +1900 3.00 0.30 + 2265002000 0 25 ALL g/start THC +1900 10.50 + 2265002027 0 25 ALL g/start THC +1900 3.24 + 2265002033 0 25 ALL g/start THC +1900 3.24 + 2265003000 0 25 ALL g/start THC +1900 10.50 + 2265004010 0 25 ALL g/start THC +1900 0.85 + 2265004011 0 25 ALL g/start THC +1900 0.85 + 2265004015 0 25 ALL g/start THC +1900 0.57 + 2265004016 0 25 ALL g/start THC +1900 0.57 + 2265004020 0 25 ALL g/start THC +1900 0.27 + 2265004021 0 25 ALL g/start THC +1900 0.27 + 2265004025 0 25 ALL g/start THC +1900 0.29 + 2265004026 0 25 ALL g/start THC +1900 0.29 + 2265004030 0 25 ALL g/start THC +1900 0.15 + 2265004031 0 25 ALL g/start THC +1900 0.15 + 2265004035 0 25 ALL g/start THC +1900 0.85 + 2265004036 0 25 ALL g/start THC +1900 0.85 + 2265004040 0 25 ALL g/start THC +1900 1.52 + 2265004041 0 25 ALL g/start THC +1900 1.52 + 2265004045 0 25 ALL g/start THC +1900 1.52 + 2265004046 0 25 ALL g/start THC +1900 1.52 + 2265004050 0 25 ALL g/start THC +1900 0.27 + 2265004051 0 25 ALL g/start THC +1900 0.27 + 2265004055 0 25 ALL g/start THC +1900 1.52 + 2265004056 0 25 ALL g/start THC +1900 1.52 + 2265004065 0 25 ALL g/start THC +1900 0.85 + 2265004066 0 25 ALL g/start THC +1900 0.85 + 2265004071 0 25 ALL g/start THC +1900 1.52 + 2265004075 0 25 ALL g/start THC +1900 0.85 + 2265004076 0 25 ALL g/start THC +1900 0.85 + 2265005000 0 25 ALL g/start THC +1900 3.00 + 2265005020 0 25 ALL g/start THC +1900 10.50 + 2265005025 0 25 ALL g/start THC +1900 10.50 + 2265005045 0 25 ALL g/start THC +1900 10.50 + 2265006000 0 25 ALL g/start THC +1900 3.24 + 2265007000 0 25 ALL g/start THC +1900 0.27 + 2265007015 0 25 ALL g/start THC +1900 10.50 + 2265008005 0 25 ALL g/start THC +1900 10.50 + 2265009010 0 25 ALL g/start THC +1900 3.24 + 2265010010 0 25 ALL g/start THC +1900 3.24 + 2267000000 0 9999 ALL g/start THC +1900 0.00 + 2268000000 0 9999 ALL g/start THC +1900 0.00 + 2270000000 0 9999 ALL g/start THC +1900 0.00 + 2282005000 0 9999 ALL g/start THC +1900 3.00 + 2282005010 0 25 ALL g/start THC +1900 0.00 + 2282010000 0 9999 ALL g/start THC +1900 3.00 + 2282020000 0 9999 ALL g/start THC +1900 0.00 + 2285004015 0 25 ALL g/start THC +1900 3.00 + 2285004015 25 9999 E0 E1 g/start THC +1900 4.34 0.43 + 2285006015 0 9999 ALL g/start THC +1900 0.00 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVNECK.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVNECK.EMF new file mode 100644 index 0000000..94a1a21 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVNECK.EMF @@ -0,0 +1,52 @@ +This file contains the emission factors (EFs) for non-metal +fill neck hose permeation THC for REC-MARINE equipment ONLY. +This differs from the supply/return and vent hose EFs that are +covered in separate EF data files. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all fill neck hose tech types. +The model will use the EF for the closest year that is less than or +equal to the current model year. + +8/15/06 4b: Update EFs & Dates + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +46-55 character -- units +56-67 character -- pollutant +Line 2: +1-5 integer -- year +35-44 real -- emission factor (EF) for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/m2/day THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- +/EMSFAC/ + 2260000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2265000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2267000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2268000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2270000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2282005010 0 25 E0 E1 g/m2/day THC +1900 0.00 0.00 + 2282005010 25 9999 E0 E1 g/m2/day THC +1900 2.50 2.50 + 2282005015 0 9999 E0 E1 g/m2/day THC +1900 2.50 2.50 + 2282010005 0 9999 E0 E1 g/m2/day THC +1900 2.50 2.50 + 2282020000 0 9999 ALL g/m2/day THC +1900 0.0 + 2285000000 0 9999 ALL g/m2/day THC +1900 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVRUNLS.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVRUNLS.EMF new file mode 100644 index 0000000..83c6c04 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVRUNLS.EMF @@ -0,0 +1,280 @@ +This file contains emission factors (EFs) for Running Loss THC emissions. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all Running Loss tech types. +The model will use the EF for the closest year that is less than or +equal to the current model year. + +8/21/06: 5b, Like 5a, but separate Cls 1 (90% ctl), Cls 2 (80% ctl), HandHeld (no ctl) per 8/3/06 spreadsheet. +1/25/08: 5f, Like 5b, but separate 4-stk snowblowers to give them lower base EF (equal other equip ctl EF) due to winter-only use. & set 2-strokes to same EFs. + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (10 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/hr THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 E0 E1 g/hr THC LSI +1900 2.41 0.241 + 2260000000 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260000000 3 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260000000 6 25 E0 E1 g/hr THC CL2 +1900 4.61 0.922 + 2260001010 0 9999 ALL g/hr THC +1900 0.57 + 2260001020 0 9999 ALL g/hr THC +1900 11.30 + 2260001030 0 9999 ALL g/hr THC +1900 1.18 + 2260001050 0 6 E0 E1 g/hr THC CL1 +1900 11.30 1.130 + 2260001050 6 25 E0 E1 g/hr THC CL2 +1900 11.30 2.260 + 2260001050 25 9999 E0 E1 g/hr THC LSI +1900 11.30 1.130 + 2260001060 0 6 E0 E1 g/hr THC CL1 +1900 11.30 1.130 + 2260001060 6 25 E0 E1 g/hr THC CL2 +1900 11.30 2.260 + 2260001060 25 9999 E0 E1 g/hr THC LSI +1900 11.30 1.130 + 2260002000 3 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260002000 6 25 E0 E1 g/hr THC CL2 +1900 4.61 0.922 + 2260002006 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260002009 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260002021 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260002027 0 3 E0 E1 g/hr THC HH +1900 14.23 14.230 + 2260002027 3 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2260002027 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2260002039 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260002054 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260003030 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260003040 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260003050 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260003060 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2260004010 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004010 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2260004011 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004011 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2260004015 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004016 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004020 0 25 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004021 0 25 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004025 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004026 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004030 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004031 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004035 0 6 E0 E1 g/hr THC HH +1900 0.334 0.334 + 2260004036 0 6 E0 E1 g/hr THC HH +1900 0.334 0.334 + 2260004040 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004041 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004045 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004046 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004050 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004051 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004055 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004056 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004065 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004066 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260004071 0 6 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260004075 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260004076 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2260005030 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2260005035 0 3 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2260005060 3 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2260006000 0 3 E0 E1 g/hr THC HH +1900 14.23 14.230 + 2260006000 3 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2260006000 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2260007005 0 25 E0 E1 g/hr THC HH +1900 0.58 0.580 + 2265000000 25 9999 E0 E1 g/hr THC LSI +1900 2.41 0.241 + 2265000000 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265000000 6 25 E0 E1 g/hr THC CL2 +1900 4.61 0.922 + 2265001010 0 9999 ALL g/hr THC +1900 0.57 + 2265001020 0 9999 ALL g/hr THC +1900 11.30 + 2265001030 0 9999 ALL g/hr THC +1900 1.18 + 2265001050 0 6 E0 E1 g/hr THC CL1 +1900 11.30 1.130 + 2265001050 6 25 E0 E1 g/hr THC CL2 +1900 11.30 2.260 + 2265001050 25 9999 E0 E1 g/hr THC LSI +1900 11.30 1.130 + 2265001060 0 6 E0 E1 g/hr THC CL1 +1900 11.30 1.130 + 2265001060 6 25 E0 E1 g/hr THC CL2 +1900 11.30 2.260 + 2265001060 25 9999 E0 E1 g/hr THC LSI +1900 11.30 1.130 + 2265003060 0 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2265003060 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2265004010 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004010 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004011 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004011 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004035 0 6 E0 E1 g/hr THC CL1 +1900 0.334 0.334 + 2265004035 6 25 E0 E1 g/hr THC CL2 +1900 0.922 0.922 + 2265004036 0 6 E0 E1 g/hr THC CL1 +1900 0.334 0.334 + 2265004036 6 25 E0 E1 g/hr THC CL2 +1900 0.922 0.922 + 2265004040 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004040 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004041 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004041 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004045 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004045 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004046 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004046 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004050 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004050 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004051 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004051 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004055 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004055 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004056 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004056 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004065 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004065 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004066 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2265004066 6 25 E0 E1 g/hr THC CL2 +1900 3.34 0.668 + 2265004075 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004075 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265004076 0 6 E0 E1 g/hr THC CL1 +1900 2.86 0.286 + 2265004076 6 25 E0 E1 g/hr THC CL2 +1900 2.86 0.572 + 2265005060 0 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2265005060 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2265006000 0 6 E0 E1 g/hr THC CL1 +1900 14.23 1.423 + 2265006000 6 25 E0 E1 g/hr THC CL2 +1900 14.23 2.846 + 2267000000 0 9999 ALL g/hr THC +1900 0.00 + 2268000000 0 9999 ALL g/hr THC +1900 0.00 + 2270000000 0 9999 ALL g/hr THC +1900 0.00 + 2282005010 0 9999 ALL g/hr THC +1900 0.00 + 2282005015 0 9999 ALL g/hr THC +1900 2.86 + 2282010005 0 100 ALL g/hr THC +1900 2.86 + 2282010005 100 9999 ALL g/hr THC +1900 0.00 + 2282020000 0 9999 ALL g/hr THC +1900 0.00 + 2285002015 0 9999 ALL g/hr THC +1900 0.00 + 2285004015 0 6 E0 E1 g/hr THC CL1 +1900 3.34 0.334 + 2285004015 6 25 E0 E1 g/hr THC CL2 +1900 4.61 0.922 + 2285004015 25 9999 E0 E1 g/hr THC LSI +1900 2.41 0.241 + 2285006015 0 9999 ALL g/hr THC +1900 0.00 + 2285008015 0 9999 ALL g/hr THC +1900 0.00 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVSUPRET.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVSUPRET.EMF new file mode 100644 index 0000000..2df8ca2 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVSUPRET.EMF @@ -0,0 +1,51 @@ +This file contains the emission factors (EFs) for non-metal +supply/return hose permeation THC for REC-MARINE equipment ONLY. +This differs from the fill-neck and vent hose EFs that are +covered in separate EF data files. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all supply/return hose tech types. +The model will use the EF for the closest year that is less than or +equal to the current model year. + +1/30/06 4: EPA: new inputs + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +46-55 character -- units +56-67 character -- pollutant +Line 2: +1-5 integer -- year +35-44 real -- emission factor (EF) for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/m2/day THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2265000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2267000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2268000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2270000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2282005010 0 25 E0 E1 g/m2/day THC +1900 122.0 3.75 + 2282005010 25 9999 E0 E1 g/m2/day THC +1900 42.0 3.75 + 2282005015 0 9999 E0 E1 g/m2/day THC +1900 42.0 3.75 + 2282010005 0 9999 E0 E1 g/m2/day THC +1900 22.0 3.75 + 2285000000 0 9999 ALL g/m2/day THC +1900 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVTANK.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVTANK.EMF new file mode 100644 index 0000000..3e4f185 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVTANK.EMF @@ -0,0 +1,172 @@ +This file contains emission factors (EFs) For non-metal Tank Permeation THC. +The EFs are specified by SCC code, HP range and technology type. +An ALL in the tech type field will apply to all Tank Permeation tech types. +The model will use the EF for the closest year that is less than or +equal to the current model year. +Metal tanks have zero permeation. The metal fractions are in spillage.emf. + +11/2/06 8a: Like 8 but remove all nylon adjustments and give chainsaws separate EFs + +Unit options: (g/m2/day) + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +46-55 character -- units (g/m2/day) +56-67 character -- pollutant +Line 2: +1-5 integer -- year +35-44 real -- emission factor (EF) for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/m2/day THC +1900 999.99 999.990 999.990 999.990 999.990 999.990 999.990 999.990 999.990 999.990 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 6 E0 E1 g/m2/day THC Class 1 NHH +1900 9.70 0.750 + 2260000000 6 25 E0 E1 E2 E3 g/m2/day THC Class 2 NHH +1900 9.70 2.272 1.377 0.750 + 2260000000 25 9999 ALL g/m2/day THC +1900 0.00 + 2260001010 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2260001020 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2260001030 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2260002006 3 6 E0 E1 E2 g/m2/day THC Class 5 HH +1900 9.70 1.645 0.750 + 2260002009 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260002021 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260002027 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260002039 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260002039 3 6 E0 E1 E2 g/m2/day THC Class 5 HH +1900 9.70 1.645 0.750 + 2260002054 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260003030 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260003040 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260004015 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260004015 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260004016 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260004016 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 0.170 + 2260004020 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 1.25 1.25 1.25 1.000 + 2260004020 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 1.25 1.25 1.25 1.000 + 2260004020 3 25 E0 E1 E2 g/m2/day THC Class 5 HH (no exist) +1900 1.25 1.25 1.25 + 2260004021 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 1.25 1.25 1.25 + 2260004021 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 1.25 1.25 1.25 + 2260004021 3 6 E0 E1 E2 g/m2/day THC Class 5 HH +1900 1.25 1.25 1.25 1.000 + 2260004021 6 25 E0 E1 E2 g/m2/day THC Class 5 HH (no exist) +1900 1.25 1.25 1.25 + 2260004025 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 6.50 1.325 0.750 0.204 + 2260004025 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 6.50 1.325 0.750 0.204 + 2260004025 3 25 E0 E1 E2 g/m2/day THC Class 5 HH (no exist) +1900 6.50 1.325 0.750 0.204 + 2260004026 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 6.50 1.325 0.750 + 2260004026 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 6.50 1.325 0.750 + 2260004026 3 6 E0 E1 E2 g/m2/day THC Class 5 HH +1900 6.50 1.325 0.750 + 2260004026 6 25 E0 E1 E2 E3 g/m2/day THC Class 2 NHH +1900 9.70 2.272 1.377 0.750 + 2260004030 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260004030 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260004031 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260004031 3 6 E0 E1 E2 g/m2/day THC Class 5 HH +1900 9.70 1.645 0.750 + 2260004071 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260005035 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260005035 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260006005 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260006005 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260006010 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 9.70 1.645 0.750 + 2260006010 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260006015 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 9.70 1.645 0.750 + 2260006035 0 1 E0 E1 E2 g/m2/day THC Class 3 HH +1900 6.50 1.325 0.750 + 2260006035 1 3 E0 E1 E2 g/m2/day THC Class 4 HH +1900 6.50 1.325 0.750 + 2260007005 6 11 E0 E1 E2 g/m2/day THC Class 5 HH +1900 1.25 1.250 1.250 + 2265000000 0 6 E0 E1 g/m2/day THC Class 1 NHH +1900 9.70 0.750 + 2265000000 6 25 E0 E1 E2 E3 g/m2/day THC Class 2 NHH +1900 9.70 2.272 1.377 0.750 + 2265000000 25 9999 ALL g/m2/day THC +1900 0.00 + 2265001010 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2265001020 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2265001030 0 9999 E0 E1 g/m2/day THC +1900 9.70 0.750 + 2265004025 0 6 E0 E1 g/m2/day THC +1900 6.50 1.325 + 2265004026 0 6 E0 E1 g/m2/day THC +1900 6.50 1.325 + 2267000000 0 9999 ALL g/m2/day THC +1900 0.00 + 2268000000 0 9999 ALL g/m2/day THC +1900 0.00 + 2270000000 0 9999 ALL g/m2/day THC +1900 0.00 + 2282005010 0 25 E0 E1 g/m2/day THC +1900 9.90 0.75 + 2282005010 25 9999 E0 E1 g/m2/day THC +1900 8.00 0.75 + 2282005015 0 9999 E0 E1 g/m2/day THC +1900 9.90 0.75 + 2282010005 0 9999 E0 E1 g/m2/day THC +1900 8.00 0.75 + 2282020000 0 9999 ALL g/m2/day THC +1900 0.00 + 2285002015 0 9999 ALL g/m2/day THC +1900 0.00 + 2285004015 0 6 E0 E1 g/m2/day THC Class 1 NHH +1900 9.70 0.750 + 2285004015 6 25 E0 E1 E2 E3 g/m2/day THC Class 2 NHH +1900 9.70 2.272 1.377 0.750 + 2285004015 25 9999 ALL g/m2/day THC +1900 0.00 + 2285006015 0 9999 ALL g/m2/day THC +1900 0.00 + 2285008015 0 9999 ALL g/m2/day THC +1900 0.00 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EVVENT.EMF b/NONROAD/NR08a/DATA/EMSFAC/EVVENT.EMF new file mode 100644 index 0000000..6bfef20 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EVVENT.EMF @@ -0,0 +1,53 @@ +This file contains the emission factors (EFs) for non-metal vent +hose permeation THC for REC-MARINE equipment ONLY. +This differs from the fill-neck and supply/return hose EFs +that are covered in separate EF data files. +The EFs are specified by SCC code, HP range and Technology type. +An ALL in the tech type field applies to all Vent hose tech types. +The model will use the EF for the closest year that is less than or +equal to the current model year. + +1/30/06 5: EPA: new inputs + +-------------------------------------------------------------- +The format is as follows: +Line 1: +6-15 character -- SCC code +21-25 real -- beginning of HP range +26-30 real -- end of horsepower range +35-44 character -- technology type +46-55 character -- units +56-67 character -- pollutant +Line 2: +1-5 integer -- year +35-44 real -- emission factor (EF) for technology type 1 +x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HPmn HPmx techtyp1 techtyp2 techtyp3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyp10 g/m2/day THC +1900 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2265000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2267000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2268000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2270000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2282005010 0 25 E0 E1 g/m2/day THC +1900 0.0 0.00 + 2282005010 25 9999 E0 E1 g/m2/day THC +1900 2.5 2.50 + 2282005015 0 9999 E0 E1 g/m2/day THC +1900 2.5 2.50 + 2282010005 0 9999 E0 E1 g/m2/day THC +1900 2.5 2.50 + 2282000000 0 9999 ALL g/m2/day THC +1900 0.0 + 2285000000 0 9999 ALL g/m2/day THC +1900 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EXHCO.EMF b/NONROAD/NR08a/DATA/EMSFAC/EXHCO.EMF new file mode 100644 index 0000000..611ca33 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EXHCO.EMF @@ -0,0 +1,2926 @@ +This file contains emission factors data for exhaust CO +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +3/2/07 CO-43o: like 43n but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +10/1/07 CO-43p: like 43o but rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + and fix MOVES export macro to do BASE techtype, and to handle all this. +1/25/08 co-43q: for Small SI & SI recmarine FRM. +7/21/08 co-43t: Like 43q but fix T4 >750hp (set=T2), and remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HpminHpmax techtyT1 techtyT2 techtyT3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyT10 g/hp-hr CO +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 g/hp-hr CO +1900 704.7 41.63 13.24 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G4H31 G2H32 G2H3C2 G4H32 g/hp-hr CO +1900 718.9 480.3 480.3 0.0 283.4 141.7 0.0 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 g/hp-hr CO +1900 718.9 0.0 0.0 407.4 407.4 533.4 283.4 141.7 432.5 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr CO +1900 519.0 0.0 351.0 351.0 283.4 141.7 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr CO +1900 485.8 408.8 430.8 352.6 387.0 352.6 387.0 321.9 321.9 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr CO +1900 485.8 408.8 430.8 352.6 387.0 352.6 387.0 321.9 321.9 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 155.5 50.76 11.94 + 2260001010 0 9999 RM2 RM4 RM40 RM41 g/hp-hr CO +1900 54.1 48.5 48.5 30.6 + 2265001010 0 9999 RM4 RM40 RM41 g/hp-hr CO +1900 48.5 48.5 30.6 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 g/hp-hr CO +1900 296.0 123.0 123.0 146.9 90.0 + 2265001020 0 9999 RS4 RS40 g/hp-hr CO +1900 123.0 123.0 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 g/hp-hr CO +1900 54.1 48.5 48.5 42.9 30.6 + 2265001030 0 9999 RA4 RA40 RA41 RA42 g/hp-hr CO +1900 48.5 48.5 42.9 30.6 + 2265002015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002024 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002057 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002060 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002066 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002072 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265002078 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265003040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr CO +1900 519.0 0.0 351.0 351.0 283.4 141.7 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr CO +1900 519.0 0.0 351.0 351.0 283.4 141.7 + 2260004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr CO +1900 485.8 485.8 408.8 430.8 408.8 430.8 + 2260004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr CO +1900 485.8 485.8 408.8 430.8 408.8 430.8 + 2265004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr CO +1900 485.8 485.8 408.8 430.8 408.8 430.8 + 2265004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr CO +1900 485.8 485.8 408.8 430.8 408.8 430.8 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004046 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004051 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265004055 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr CO +1900 485.8 408.8 430.8 84.27 84.27 + 2265004056 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr CO +1900 485.8 408.8 430.8 84.27 84.27 + 2265004066 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr CO +1900 485.8 408.8 430.8 84.27 84.27 + 2265004076 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr CO +1900 485.8 408.8 430.8 84.27 84.27 + 2265005015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265005020 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265005025 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265005030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265006005 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 107.2 29.86 11.94 + 2265006010 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 107.2 29.86 11.94 + 2265006015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 107.2 29.86 11.94 + 2265006035 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 107.2 29.86 11.94 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr CO +1900 519.0 0.0 351.0 351.0 283.4 141.7 + 2265008005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2267000000 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 40.93 35.51 3.92 + 2267006005 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2267006010 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2267006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2267006035 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2268000000 25 9999 NGT25 NGT251 NGT252 g/hp-hr CO +1900 40.93 35.51 3.92 + 2268006005 25 9999 NGT25 NGT251 NGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2268006010 25 9999 NGT25 NGT251 NGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2268006015 25 9999 NGT25 NGT251 NGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2268006035 25 9999 NGT25 NGT251 NGT252 g/hp-hr CO +1900 28.23 24.49 3.92 + 2270001000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270001000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270001000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270001000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270001000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270001000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270001000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270001000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270001000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270001000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270001000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270002003 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002003 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002003 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002003 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002003 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002003 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002003 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002003 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002003 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002003 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002003 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.94 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002006 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002006 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002006 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002006 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002006 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002006 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002006 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002006 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002006 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002006 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002006 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002009 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002009 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002009 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002009 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002009 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002009 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002009 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002009 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002009 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002009 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002009 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.10 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.74 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002018 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002018 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002018 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002018 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002018 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002018 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002018 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002018 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002018 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002018 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002018 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.83 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002021 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002021 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002021 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002021 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002021 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002021 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002021 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002021 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002021 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002021 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002021 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002024 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002024 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002024 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002024 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002024 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002024 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002024 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002024 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002024 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002024 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002024 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002027 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002027 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002027 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002027 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002027 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002027 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002027 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002027 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002027 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002027 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002027 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.99 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002033 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002033 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002033 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002033 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002033 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002033 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002033 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002033 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002033 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002033 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002033 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002036 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002036 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002036 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002036 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002036 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002036 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002036 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002036 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002036 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002036 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002036 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002039 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002039 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002039 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002039 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002039 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002039 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002039 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002039 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002039 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002039 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002039 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002042 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002042 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002042 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002042 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002042 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002042 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002042 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002042 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002042 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002042 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002042 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.10 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002048 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002048 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002048 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002048 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002048 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002048 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002048 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002048 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002048 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002048 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002048 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.91 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002051 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002051 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002051 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002051 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002051 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002051 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002051 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002051 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002051 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002051 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002051 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002054 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270002054 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002054 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270002054 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270002054 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002054 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270002054 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270002054 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270002054 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270002054 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270002054 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.60 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270002057 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002057 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002057 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002057 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002057 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002057 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002057 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002057 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002057 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002057 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002057 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002063 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002063 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002063 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002063 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002063 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002063 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002063 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002063 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002063 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002063 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002063 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 2.14 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002066 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270002066 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002066 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002066 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270002066 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002066 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002066 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270002066 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270002066 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270002066 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270002066 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 8.74 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270002069 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002069 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002069 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002069 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002069 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002069 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002069 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002069 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002069 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002069 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002069 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.67 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002072 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270002072 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002072 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002072 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270002072 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002072 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002072 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270002072 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270002072 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270002072 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270002072 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.57 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270002075 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002075 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002075 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002075 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002075 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002075 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002075 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002075 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002075 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002075 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002075 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 11.23 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270002078 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270002078 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002078 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270002078 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270002078 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002078 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270002078 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270002078 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270002078 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270002078 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270002078 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.60 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270002081 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270002081 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002081 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270002081 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270002081 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002081 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270002081 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270002081 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270002081 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270002081 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270002081 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.04 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270003010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270003010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270003010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270003010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270003010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270003010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270003010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270003010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270003010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270003010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270003010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270003020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270003020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270003020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270003020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270003020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270003020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270003020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270003020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270003020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270003020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270003020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270003030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270003030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270003030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270003030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270003030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270003030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270003030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270003040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270003040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270003040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270003040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270003040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270003040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270003040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.03 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270003050 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270003050 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270003050 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270003050 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270003050 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270003050 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270003050 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270003050 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270003050 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270003050 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270003050 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270003060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270003060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270003060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270003060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270003060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270003060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270003060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270003060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270003060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270003070 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270003070 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270003070 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270003070 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270003070 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270003070 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270003070 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270003070 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270003070 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270003070 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270003070 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270004000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270004000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270004000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270004000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270004000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270004000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270004000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270004000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270004000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270004000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270004000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270005010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.84 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005035 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005035 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005035 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005035 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005035 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005035 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005035 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005035 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005035 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005035 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005035 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.78 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.21 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005055 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270005055 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005055 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270005055 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270005055 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005055 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270005055 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270005055 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270005055 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270005055 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270005055 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 6.69 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270005060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270005060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270005060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270005060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270005060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270005060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270005060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270005060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270005060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270005060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270005060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.78 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270006000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270006000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270006000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270006000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270006000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270006000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270006000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270006000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270006000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270006000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270006000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270006005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270006005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270006005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270006005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270006005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270006005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270006005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270006005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270006005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270006005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270006005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2270006025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2270006025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270006025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2270006025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2270006025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270006025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2270006025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2270006025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2270006025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2270006025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2270006025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2270007010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270007010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270007010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270007010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270007010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270007010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270007010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270007010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270007010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270007010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270007010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270007015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270007015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270007015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270007015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270007015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270007015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270007015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270007015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270007015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270007015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270007015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 3.98 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270008005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 6.29 6.29 6.29 6.29 4.11 4.11 0.63 0.63 + 2270008005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270008005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 3.31 3.31 3.31 3.31 2.16 2.16 0.33 0.33 + 2270008005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.65 7.65 2.34 2.34 2.34 2.34 1.53 1.53 0.23 0.23 + 2270008005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270008005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 5.34 3.62 3.62 3.62 3.62 2.37 2.37 0.36 0.36 + 2270008005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.33 1.33 1.33 1.33 1.33 0.87 0.13 0.13 + 2270008005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.14 1.14 1.14 1.14 1.14 0.75 0.11 0.11 + 2270008005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.00 1.29 1.29 1.29 1.29 0.84 0.13 0.13 + 2270008005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 2.03 2.03 2.03 2.03 2.03 1.33 0.20 0.20 + 2270008005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 4.64 4.13 1.17 1.17 1.17 1.17 1.17 0.76 1.17 0.12 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 12.85 10.57 10.57 10.57 10.57 10.57 10.57 10.57 + 2270009010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 12.85 5.55 5.55 5.55 5.55 5.55 5.55 5.55 + 2270009010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 12.85 5.55 5.55 5.55 5.55 5.55 5.55 5.55 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 12.85 3.94 3.94 3.94 3.94 3.94 3.94 3.94 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 8.97 6.08 6.08 6.08 6.08 6.08 6.08 6.08 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 8.97 8.97 6.08 6.08 6.08 6.08 6.08 6.08 6.08 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 6.94 2.23 2.23 2.23 2.23 2.23 2.23 2.23 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 6.94 1.92 1.92 1.92 1.92 1.92 1.92 1.92 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 6.94 2.17 2.17 2.17 2.17 2.17 2.17 2.17 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 6.94 3.41 3.41 3.41 3.41 3.41 3.41 3.41 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 7.79 6.94 6.94 1.96 1.96 1.96 1.96 1.96 1.96 1.96 + 2270010010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 4.11 4.11 0.41 0.41 + 2270010010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270010010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 2.16 2.16 0.22 0.22 + 2270010010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 1.53 1.53 0.15 0.15 + 2270010010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270010010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 3.49 2.37 2.37 2.37 2.37 2.37 2.37 0.24 0.24 + 2270010010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.87 0.87 0.87 0.87 0.87 0.87 0.09 0.09 + 2270010010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.75 0.75 0.75 0.75 0.75 0.75 0.07 0.07 + 2270010010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.31 0.84 0.84 0.84 0.84 0.84 0.08 0.08 + 2270010010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 1.33 1.33 1.33 1.33 1.33 1.33 0.13 0.13 + 2270010010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 5.00 2.70 0.76 0.76 0.76 0.76 0.76 0.76 0.76 0.08 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 522.4 443.8 168.1 404.4 442.1 417.8 404.4 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 357.3 303.5 114.9 265.9 303.7 279.4 265.9 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 316.8 269.1 101.9 217.9 255.6 231.3 217.9 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 276.2 234.7 88.9 184.9 222.7 198.3 184.9 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 153.0 190.8 166.5 153.0 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 121.2 158.9 134.6 141.3 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 114.5 152.3 127.9 124.7 + 2282005010 50 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 114.5 152.3 127.9 125.9 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 114.5 136.6 120.6 128.9 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr CO +1900 240.3 204.2 77.3 114.5 140.7 120.3 102.1 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 522.4 477.0 231.2 547.8 477.0 477.0 477.0 477.0 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 444.6 406.0 196.7 469.9 401.3 401.3 401.3 401.3 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 366.8 334.9 162.3 392.1 181.1 181.1 181.1 181.1 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 289.0 263.9 127.9 314.3 171.9 171.9 171.9 171.9 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 192.8 93.5 236.5 162.7 162.7 162.7 162.7 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 192.8 93.5 236.5 153.5 153.5 153.5 153.5 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 192.8 93.5 236.5 153.5 153.5 153.5 93.5 + 2282005015 50 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 193.6 100.8 236.5 153.5 153.5 153.5 153.5 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 193.6 94.7 236.5 153.5 153.5 153.5 150.4 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr CO +1900 211.2 193.6 85.1 236.5 153.5 153.5 153.5 85.1 + 2282010005 0 50 MS4C MS4D MSC1 g/hp-hr CO +1900 153.7 71.80 41.01 + 2282010005 50 175 MS4C MS4D MSC1 g/hp-hr CO +1900 153.7 71.80 41.01 + 2282010005 175 600 MS4C MS4D MSC1 g/hp-hr CO +1900 153.7 71.80 41.01 + 2282010005 600 9999 MS4C MS4D MS4X g/hp-hr CO +1900 188.7 154.55 154.60 + 2282020000 0 11 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 5.00 5.00 4.11 4.11 4.11 4.11 + 2282020000 11 16 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 + 2282020000 16 25 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 5.00 5.00 2.16 2.16 2.16 2.16 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 5.00 5.00 1.53 1.53 1.53 1.53 + 2282020000 50 75 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 75 100 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 100 175 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 175 300 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 300 600 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 600 750 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2282020000 750 9999 BaseM T0M T1M T2M T3M T4M g/hp-hr CO +1900 0.95 0.95 0.95 0.95 0.95 0.95 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 10.57 10.57 10.57 10.57 4.11 4.11 1.06 1.06 + 2285002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2285002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 5.55 5.55 5.55 5.55 2.16 2.16 0.56 0.56 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 12.85 12.85 3.94 3.94 3.94 3.94 1.53 1.53 0.39 0.39 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 8.97 6.08 6.08 6.08 6.08 2.37 2.37 0.61 0.61 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 6.94 2.23 2.23 2.23 2.23 2.23 0.87 0.22 0.22 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 6.94 1.92 1.92 1.92 1.92 1.92 0.75 0.19 0.19 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 6.94 3.36 2.17 2.17 2.17 2.17 0.84 0.22 0.22 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 6.94 3.41 3.41 3.41 3.41 3.41 1.33 0.34 0.34 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr CO +1900 9.98 6.94 1.96 1.96 1.96 1.96 1.96 0.76 1.96 0.20 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr CO +1900 485.8 408.8 430.8 351.2 353.7 353.7 293.0 288.2 242.4 238.4 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr CO +1900 485.8 408.8 430.8 352.6 387.0 352.6 387.0 321.9 321.9 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr CO +1900 155.5 50.76 11.94 + 2285006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr CO +1900 40.93 35.51 3.92 + 2285008015 25 9999 NGT25 NGT2521 NGT252 g/hp-hr CO +1900 40.93 35.51 3.92 +/END/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/NONROAD/NR08a/DATA/EMSFAC/EXHNOX.EMF b/NONROAD/NR08a/DATA/EMSFAC/EXHNOX.EMF new file mode 100644 index 0000000..e0d3945 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EXHNOX.EMF @@ -0,0 +1,1436 @@ +This file contains emission factors data for exhaust NOx +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +3/2/07 NOx-43s: like 43r but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +9/7/07 NOx-43s: rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + and fix MOVES export macro to do BASE techtype, and to handle all this. +2/8/08 NOx-43w: for Small SI & SI recmarine FRM. +7/22/08 43z: Like 43w but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). +2/13/09 44a: for MOVES: Fix 2-stk LgSI TAFs to match 4-stk (i.e., 2260006010) +6/11/09 44b: For NR08a Fixed NOx CI EFs (TAFs) back to the correct NR05 values. +7/6/09 44c: For NR08a Revert 2-stk LgSI TAFs back to 43z (NR05) version to be consistent with other pollutants & NR05. + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HpminHpmax techtyT1 techtyT2 techtyT3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyT10 g/hp-hr NOx +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 0.290 2.114 0.690 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G4H31 G2H32 G2H3C2 G4H32 g/hp-hr NOx +1900 0.969 0.783 0.783 0.000 0.910 1.491 0.000 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 g/hp-hr NOx +1900 0.940 0.000 0.000 0.513 0.513 1.790 0.910 1.491 1.126 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr NOx +1900 0.969 0.000 1.817 1.817 0.910 1.491 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr NOx +1900 0.291 3.497 2.058 3.497 4.497 2.767 4.497 1.007 1.007 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr NOx +1900 0.291 3.497 2.058 3.497 4.497 2.767 4.497 1.007 1.007 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.430 2.114 0.690 + 2260001010 0 9999 RM2 RM4 RM40 RM41 g/hp-hr NOx +1900 0.150 0.410 0.410 0.340 + 2265001010 0 9999 RM4 RM40 RM41 g/hp-hr NOx +1900 0.410 0.410 0.340 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 g/hp-hr NOx +1900 0.860 9.200 9.200 0.860 2.800 + 2265001020 0 9999 RS4 RS40 g/hp-hr NOx +1900 9.200 9.200 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 g/hp-hr NOx +1900 0.150 0.410 0.410 0.260 0.260 + 2265001030 0 9999 RA4 RA40 RA41 RA42 g/hp-hr NOx +1900 0.410 0.410 0.260 0.260 + 2265002015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002024 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002057 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002060 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002066 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002072 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265002078 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265003040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr NOx +1900 0.969 0.000 1.817 1.817 0.910 1.491 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr NOx +1900 0.969 0.000 1.817 1.817 0.910 1.491 + 2260004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr NOx +1900 0.29 0.29 1.80 2.00 3.50 2.06 + 2260004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr NOx +1900 0.29 0.29 1.80 2.00 3.50 2.06 + 2265004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr NOx +1900 0.29 0.29 1.80 2.00 3.50 2.06 + 2265004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr NOx +1900 0.29 0.29 1.80 2.00 3.50 2.06 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004046 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004051 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265004055 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr NOx +1900 0.291 1.797 1.999 5.250 5.250 + 2265004056 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr NOx +1900 0.291 1.797 1.999 5.250 5.250 + 2265004066 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr NOx +1900 0.291 1.797 1.999 5.250 5.250 + 2265004076 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr NOx +1900 0.291 1.797 1.999 5.250 5.250 + 2265005015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265005020 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265005025 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265005030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2265006005 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.43 1.51 0.69 + 2265006010 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.43 1.51 0.69 + 2265006015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.43 1.51 0.69 + 2265006035 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.43 1.51 0.69 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr NOx +1900 0.969 0.000 1.817 1.817 0.910 1.491 + 2265008005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2260009000 0 9999 G2GT25 g/hp-hr NOx +1900 0.29 + 2265009000 0 9999 G4GT25 g/hp-hr NOx +1900 8.43 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2267000000 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 3.15 0.85 + 2267006005 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 2.10 0.85 + 2267006010 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 2.10 0.85 + 2267006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 2.10 0.85 + 2267006035 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 2.10 0.85 + 2268000000 25 9999 NGT25 NGT251 NGT252 g/hp-hr NOx +1900 11.99 3.15 0.89 + 2268006005 25 9999 NGT25 NGT251 NGT252 g/hp-hr NOx +1900 11.99 2.10 0.89 + 2268006010 25 9999 NGT25 NGT251 NGT252 g/hp-hr NOx +1900 11.99 2.10 0.89 + 2268006015 25 9999 NGT25 NGT251 NGT252 g/hp-hr NOx +1900 11.99 2.10 0.89 + 2268006035 25 9999 NGT25 NGT251 NGT252 g/hp-hr NOx +1900 11.99 2.10 0.89 + 2270001000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270001000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270001000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270001000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270001000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270001000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270001000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270001000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270001000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270001000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270001000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270002003 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002003 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002003 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002003 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002003 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002003 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002003 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002003 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002003 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002003 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002003 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.63 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002006 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002006 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002006 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002006 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002006 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002006 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002006 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002006 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002006 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002006 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002006 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002009 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002009 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002009 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002009 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002009 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002009 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002009 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002009 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002009 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002009 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002009 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.30 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.81 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002018 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002018 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002018 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002018 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002018 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002018 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002018 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002018 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002018 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002018 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002018 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.24 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002021 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002021 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002021 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002021 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002021 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002021 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002021 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002021 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002021 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002021 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002021 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002024 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002024 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002024 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002024 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002024 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002024 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002024 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002024 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002024 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002024 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002024 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002027 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002027 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002027 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002027 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002027 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002027 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002027 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002027 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002027 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002027 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002027 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.49 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002033 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002033 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002033 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002033 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002033 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002033 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002033 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002033 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002033 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002033 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002033 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002036 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002036 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002036 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002036 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002036 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002036 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002036 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002036 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002036 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002036 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002036 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.19 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002039 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002039 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002039 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002039 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002039 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002039 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002039 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002039 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002039 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002039 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002039 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002042 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002042 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002042 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002042 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002042 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002042 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002042 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002042 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002042 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002042 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002042 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.30 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002048 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002048 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002048 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002048 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002048 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002048 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002048 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002048 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002048 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002048 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002048 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002051 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002051 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002051 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002051 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002051 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002051 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002051 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002051 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002051 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002051 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002051 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002054 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270002054 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002054 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270002054 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270002054 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002054 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270002054 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002054 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002054 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002054 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270002054 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.01 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270002057 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002057 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002057 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002057 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002057 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002057 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002057 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002057 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002057 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002057 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002057 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002063 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002063 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002063 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002063 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002063 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002063 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002063 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002063 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002063 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002063 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002063 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.10 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002066 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270002066 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002066 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002066 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270002066 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002066 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002066 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002066 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002066 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002066 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002066 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.14 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270002069 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002069 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002069 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002069 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002069 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002069 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002069 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002069 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002069 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002069 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002069 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.76 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002072 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270002072 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002072 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002072 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270002072 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002072 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002072 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002072 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002072 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002072 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002072 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270002075 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002075 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002075 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002075 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002075 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002075 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002075 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002075 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002075 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002075 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002075 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.28 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270002078 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270002078 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002078 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270002078 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270002078 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002078 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270002078 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002078 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002078 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002078 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270002078 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.59 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270002081 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270002081 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002081 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270002081 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270002081 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002081 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270002081 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002081 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002081 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002081 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270002081 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.43 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270003010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270003010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270003010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270003010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270003010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270003010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270003010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270003020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270003020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270003020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270003020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270003020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270003020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270003020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270003030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270003030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270003030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270003040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270003040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270003040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 14.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270003050 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270003050 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270003050 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270003050 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270003050 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270003050 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270003050 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003050 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003050 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003050 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270003050 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270003060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270003060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270003060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270003060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270003060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270003060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270003070 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270003070 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270003070 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270003070 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270003070 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270003070 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270003070 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003070 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003070 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003070 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270003070 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270004000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270004000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270004000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270004000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270004000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270004000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270004000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270004000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270004000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270004000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270004000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270005010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.62 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005035 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005035 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005035 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005035 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005035 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005035 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005035 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005035 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005035 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005035 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005035 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.37 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.90 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005055 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270005055 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005055 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270005055 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270005055 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005055 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270005055 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005055 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005055 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005055 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270005055 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.54 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270005060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270005060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270005060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270005060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270005060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270005060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270005060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270005060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270005060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270005060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270005060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.78 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270006000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270006000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270006000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270006000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270006000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270006000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270006000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2270006005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270006005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270006005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270006005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270006005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270006005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270006005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270006005 750 1200 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 0.46 + 2270006005 1200 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 0.46 0.46 + 2270006025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2270006025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270006025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2270006025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2270006025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270006025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2270006025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270006025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2270006025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2270006025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2270006025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.83 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2270007010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270007010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270007010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270007010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270007010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270007010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270007010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.58 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270007015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270007015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270007015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270007015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270007015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270007015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270007015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270007015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.71 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270008005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.48 9.48 4.96 4.07 4.07 4.07 4.30 4.30 4.30 0.28 + 2270008005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270008005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.05 8.05 4.21 4.21 4.21 4.21 4.44 4.44 4.44 0.28 + 2270008005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.54 6.54 4.48 4.48 4.48 4.48 4.73 4.73 3.00 0.28 + 2270008005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270008005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 6.54 5.30 4.45 3.13 3.13 3.00 3.00 3.00 0.28 + 2270008005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.36 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270008005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.28 3.79 2.61 2.61 2.61 2.50 2.50 0.28 + 2270008005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.70 4.11 2.61 2.61 2.61 2.50 2.50 0.28 + 2270008005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.52 3.88 2.61 2.61 2.61 2.50 2.50 0.28 + 2270008005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 13.27 7.94 5.83 3.88 3.88 4.27 4.27 4.10 2.39 2.39 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 11.03 4.74 4.74 4.74 4.74 4.74 4.74 4.74 + 2270009010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 9.38 4.90 4.90 4.90 4.90 4.90 4.90 4.90 + 2270009010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 9.38 4.90 4.90 4.90 4.90 4.90 4.90 4.90 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 7.61 5.22 5.22 5.22 5.22 5.22 5.22 5.22 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 7.61 5.19 5.19 5.19 5.19 5.19 5.19 5.19 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 7.61 7.61 5.19 5.19 5.19 5.19 5.19 5.19 5.19 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 9.25 4.52 4.52 4.52 4.52 4.52 4.52 4.52 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 9.25 4.41 4.41 4.41 4.41 4.41 4.41 4.41 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 9.25 4.78 4.78 4.78 4.78 4.78 4.78 4.78 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 9.25 4.52 4.52 4.52 4.52 4.52 4.52 4.52 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 15.45 9.25 9.25 4.52 4.52 4.52 4.52 4.52 4.52 4.52 + 2270010010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 10.00 10.00 5.23 4.30 4.30 4.30 4.30 4.30 4.30 0.28 + 2270010010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270010010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.50 8.50 4.44 4.44 4.44 4.44 4.44 4.44 4.44 0.28 + 2270010010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 6.90 6.90 4.73 4.73 4.73 4.73 4.73 4.73 3.00 0.28 + 2270010010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270010010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 6.90 5.60 4.70 3.00 3.00 3.00 3.00 3.00 0.28 + 2270010010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.65 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270010010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.58 4.00 2.50 2.50 2.50 2.50 2.50 0.28 + 2270010010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.02 4.34 2.50 2.50 2.50 2.50 2.50 0.28 + 2270010010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 5.82 4.10 2.50 2.50 2.50 2.50 2.50 0.28 + 2270010010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 8.00 8.38 6.15 4.10 4.10 4.10 4.10 4.10 2.39 2.39 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 3.60 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 2.69 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 4.18 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 5.04 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 3.21 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 4.24 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 4.41 + 2282005010 50 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 4.03 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 3.73 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr NOx +1900 1.34 1.96 4.32 5.18 5.44 5.82 2.74 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 1.47 4.90 3.55 3.60 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 1.07 4.90 3.55 2.69 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 4.18 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 5.04 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 3.21 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 4.24 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 4.41 + 2282005015 50 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 4.03 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 3.73 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr NOx +1900 1.08 1.31 3.78 0.27 5.98 4.90 3.55 2.74 + 2282010005 0 50 MS4C MS4D MSC1 g/hp-hr NOx +1900 5.35 8.48 1.19 + 2282010005 50 175 MS4C MS4D MSC1 g/hp-hr NOx +1900 5.35 8.48 1.19 + 2282010005 175 600 MS4C MS4D MSC1 g/hp-hr NOx +1900 5.35 8.48 1.19 + 2282010005 600 9999 MS4C MS4D MS4X g/hp-hr NOx +1900 6.26 5.07 5.07 + 2282020000 0 11 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 10.00 10.00 5.23 4.39 4.39 4.39 + 2282020000 11 16 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 8.50 8.50 4.44 3.63 3.63 3.63 + 2282020000 16 25 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 8.50 8.50 4.44 3.63 3.63 3.63 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 6.90 6.90 4.73 3.71 3.71 2.32 + 2282020000 50 75 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 6.67 6.67 6.67 3.82 3.82 2.39 + 2282020000 75 100 BaseM T0M T1M T2M T3M T4M g/hp-hr NOx +1900 6.67 6.67 6.67 3.82 3.82 2.39 + 2282020000 100 175 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 3.82 3.34 + 2282020000 175 300 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 4.46 3.90 + 2282020000 300 600 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 4.42 3.98 + 2282020000 600 750 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 4.42 3.98 + 2282020000 750 1200 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 4.42 3.98 + 2282020000 1200 9999 BaseM T0M T1M T2M T3M g/hp-hr NOx +1900 6.67 6.67 6.67 4.42 3.98 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.03 11.03 5.77 4.74 4.74 4.74 4.30 4.30 4.30 0.28 + 2285002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2285002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 9.38 9.38 4.90 4.90 4.90 4.90 4.44 4.44 4.44 0.28 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 7.61 7.61 5.22 5.22 5.22 5.22 4.73 4.73 3.00 0.28 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 7.61 6.18 5.19 3.64 3.64 3.00 3.00 3.00 0.28 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 9.25 6.24 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 9.25 6.15 4.41 3.03 3.03 3.03 2.50 2.50 0.28 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 9.25 6.64 4.78 3.03 3.03 3.03 2.50 2.50 0.28 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 9.25 6.42 4.52 3.03 3.03 3.03 2.50 2.50 0.28 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr NOx +1900 11.36 9.25 6.79 4.52 4.52 4.98 4.98 4.10 2.39 2.39 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr NOx +1900 0.291 1.797 1.999 3.236 3.602 3.602 2.446 1.916 1.424 1.044 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr NOx +1900 0.291 3.497 2.058 3.497 4.497 2.767 4.497 1.007 1.007 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr NOx +1900 8.43 2.114 0.69 + 2285006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr NOx +1900 11.99 3.15 0.85 + 2285008015 25 9999 NGT25 NGT2521 NGT252 g/hp-hr NOx +1900 11.99 3.15 0.89 +/END/ diff --git a/NONROAD/NR08a/DATA/EMSFAC/EXHPM.EMF b/NONROAD/NR08a/DATA/EMSFAC/EXHPM.EMF new file mode 100644 index 0000000..77c4a77 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EXHPM.EMF @@ -0,0 +1,2944 @@ +This file contains emission factors data for exhaust PM +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +3/2/07 pm-43q: like 43p but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +10/1/07 pm-43r: like 43q but rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. + and fix MOVES export macro to do BASE techtype, and to handle all this. +1/25/08 pm-43t: Small SI & SI recmarine FRM. +7/22/08 43v: Like 43t but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HpminHpmax techtyT1 techtyT2 techtyT3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyT10 g/hp-hr PM +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 g/hp-hr PM +1900 7.70 7.70 7.70 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G4H31 G2H32 G2H3C2 G4H32 g/hp-hr PM +1900 7.70 7.70 7.70 0.00 7.70 7.70 0.00 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 g/hp-hr PM +1900 7.70 0.00 0.06 7.70 7.70 0.06 7.70 7.70 0.06 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr PM +1900 7.70 0.00 7.70 7.70 7.70 7.70 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.06 0.060 0.060 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.06 0.060 0.060 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2260001010 0 9999 RM2 RM4 RM40 RM41 g/hp-hr PM +1900 2.1 0.06 0.06 0.06 + 2265001010 0 9999 RM4 RM40 RM41 g/hp-hr PM +1900 0.06 0.06 0.06 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 g/hp-hr PM +1900 2.70 0.15 0.15 2.70 0.57 + 2265001020 0 9999 RS4 RS40 g/hp-hr PM +1900 0.15 0.15 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 g/hp-hr PM +1900 2.1 0.06 0.06 0.06 0.06 + 2265001030 0 9999 RA4 RA40 RA41 RA42 g/hp-hr PM +1900 0.06 0.06 0.06 0.06 + 2265002015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002024 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002057 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002060 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002066 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002072 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265002078 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265003040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr PM +1900 7.70 0.00 7.70 7.70 7.70 7.70 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr PM +1900 7.70 0.00 7.70 7.70 7.70 7.70 + 2260004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr PM +1900 7.70 7.70 0.06 0.06 0.06 0.06 + 2260004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr PM +1900 7.70 7.70 0.06 0.06 0.06 0.06 + 2265004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr PM +1900 7.70 7.70 0.06 0.06 0.06 0.06 + 2265004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr PM +1900 7.70 7.70 0.06 0.06 0.06 0.06 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004046 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004051 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265004055 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 + 2265004056 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 + 2265004066 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 + 2265004076 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 + 2265005015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265005020 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265005025 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265005030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265006005 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2265006010 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2265006015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2265006035 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr PM +1900 7.70 0.00 7.70 7.70 7.70 7.70 + 2265008005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2267000000 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2267006005 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2267006010 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2267006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2267006035 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2268000000 25 9999 NGT25 NGT251 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2268006005 25 9999 NGT25 NGT251 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2268006010 25 9999 NGT25 NGT251 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2268006015 25 9999 NGT25 NGT251 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2268006035 25 9999 NGT25 NGT251 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2270001000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270001000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270001000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270001000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270001000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270001000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270001000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270001000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270001000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270001000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270001000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270002003 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002003 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002003 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002003 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002003 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002003 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002003 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002003 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002003 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002003 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002003 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002006 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002006 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002006 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002006 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002006 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002006 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002006 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002006 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002006 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002006 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002006 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002009 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002009 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002009 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002009 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002009 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002009 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002009 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002009 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002009 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002009 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002009 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.96 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002018 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002018 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002018 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002018 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002018 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002018 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002018 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002018 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002018 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002018 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002018 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.97 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002021 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002021 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002021 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002021 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002021 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002021 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002021 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002021 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002021 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002021 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002021 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002024 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002024 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002024 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002024 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002024 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002024 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002024 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002024 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002024 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002024 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002024 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002027 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002027 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002027 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002027 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002027 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002027 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002027 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002027 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002027 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002027 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002027 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002033 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002033 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002033 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002033 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002033 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002033 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002033 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002033 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002033 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002033 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002033 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002036 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002036 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002036 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002036 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002036 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002036 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002036 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002036 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002036 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002036 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002036 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002039 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002039 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002039 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002039 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002039 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002039 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002039 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002039 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002039 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002039 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002039 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002042 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002042 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002042 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002042 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002042 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002042 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002042 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002042 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002042 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002042 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002042 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002048 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002048 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002048 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002048 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002048 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002048 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002048 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002048 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002048 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002048 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002048 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.77 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002051 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002051 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002051 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002051 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002051 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002051 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002051 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002051 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002051 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002051 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002051 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.61 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002054 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270002054 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002054 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270002054 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270002054 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270002054 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270002054 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270002054 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002054 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002054 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270002054 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270002057 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002057 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002057 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002057 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002057 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002057 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002057 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002057 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002057 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002057 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002057 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.99 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002063 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002063 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002063 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002063 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002063 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002063 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002063 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002063 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002063 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002063 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002063 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.51 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002066 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270002066 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002066 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002066 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270002066 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270002066 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270002066 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270002066 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002066 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002066 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002066 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.31 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270002069 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002069 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002069 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002069 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002069 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002069 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002069 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002069 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002069 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002069 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002069 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.85 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002072 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270002072 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002072 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002072 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270002072 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270002072 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270002072 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270002072 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002072 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002072 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002072 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270002075 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002075 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002075 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002075 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002075 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002075 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002075 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002075 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002075 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002075 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002075 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.56 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270002078 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270002078 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002078 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270002078 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270002078 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270002078 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270002078 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270002078 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002078 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002078 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270002078 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270002081 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270002081 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002081 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270002081 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270002081 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270002081 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270002081 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270002081 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002081 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002081 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270002081 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270003010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270003010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270003010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270003010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270003010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270003010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270003010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270003010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270003020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270003020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270003020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270003020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270003020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270003020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270003020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270003020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270003030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270003030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270003030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270003030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270003030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270003030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270003040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270003040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270003040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270003040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270003040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270003040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270003050 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270003050 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270003050 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270003050 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270003050 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270003050 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270003050 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270003050 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003050 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003050 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270003050 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270003060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270003060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270003060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270003060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270003060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270003060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270003060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270003060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270003070 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270003070 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270003070 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270003070 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270003070 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270003070 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270003070 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270003070 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003070 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003070 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270003070 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270004000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270004000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270004000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270004000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270004000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270004000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270004000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270004000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270004000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270004000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270004000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270005010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.86 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005035 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005035 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005035 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005035 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005035 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005035 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005035 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005035 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005035 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005035 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005035 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005055 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270005055 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005055 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270005055 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270005055 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270005055 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270005055 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270005055 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005055 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005055 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270005055 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.85 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270005060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270005060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270005060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270005060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270005060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270005060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270005060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270005060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270005060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270005060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270005060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.51 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270006000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270006000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270006000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270006000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270006000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270006000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270006000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270006000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2270006005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270006005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270006005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270006005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270006005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270006005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270006005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270006005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270006005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0184 + 2270006025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2270006025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270006025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2270006025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2270006025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2270006025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2270006025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2270006025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270006025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270006025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2270006025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2270007010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270007010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270007010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270007010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270007010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270007010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270007010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270007010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270007015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270007015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270007015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270007015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270007015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270007015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270007015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270007015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270007015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270008005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 1.23 0.55 0.61 0.61 0.6138 0.2760 0.2760 0.0092 0.0092 + 2270008005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270008005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.10 1.10 0.33 0.33 0.33 0.3271 0.2760 0.2760 0.0092 0.0092 + 2270008005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.98 0.98 0.42 0.42 0.42 0.4160 0.2024 0.2024 0.0184 0.0092 + 2270008005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0184 0.0092 + 2270008005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.89 0.58 0.29 0.44 0.4419 0.2024 0.2024 0.0092 0.0092 + 2270008005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.34 0.22 0.32 0.3241 0.3241 0.2200 0.0092 0.0092 + 2270008005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.31 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270008005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.25 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270008005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.27 0.16 0.22 0.2210 0.2210 0.1500 0.0092 0.0092 + 2270008005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.23 0.49 0.24 0.16 0.16 0.1615 0.1615 0.1316 0.0690 0.0276 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 1.97 0.99 0.99 0.9867 0.9867 0.9867 0.9867 0.9867 + 2270009010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 1.78 0.53 0.53 0.5259 0.5259 0.5259 0.5259 0.5259 + 2270009010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 1.78 0.53 0.53 0.5259 0.5259 0.5259 0.5259 0.5259 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 1.58 0.67 0.67 0.6688 0.6688 0.6688 0.6688 0.6688 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 1.42 0.47 0.47 0.4736 0.4736 0.4736 0.4736 0.4736 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.42 1.42 0.47 0.47 0.4736 0.4736 0.4736 0.4736 0.4736 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.79 0.36 0.36 0.3552 0.3552 0.3552 0.3552 0.3552 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.79 0.26 0.26 0.2597 0.2597 0.2597 0.2597 0.2597 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.79 0.26 0.26 0.2597 0.2597 0.2597 0.2597 0.2597 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.79 0.26 0.26 0.2597 0.2597 0.2597 0.2597 0.2597 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 0.79 0.79 0.26 0.26 0.2597 0.2597 0.2597 0.2597 0.2597 + 2270010010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 1.00 0.45 0.50 0.50 0.5000 0.2760 0.2760 0.0092 0.0092 + 2270010010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270010010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.90 0.90 0.27 0.27 0.27 0.2665 0.2760 0.2760 0.0092 0.0092 + 2270010010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 0.80 0.80 0.34 0.34 0.34 0.3389 0.2024 0.2024 0.0184 0.0092 + 2270010010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0184 0.0092 + 2270010010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.72 0.47 0.24 0.30 0.3000 0.2024 0.2024 0.0092 0.0092 + 2270010010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.28 0.18 0.22 0.2200 0.2200 0.2200 0.0092 0.0092 + 2270010010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.25 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270010010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.20 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270010010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.22 0.13 0.15 0.1500 0.1500 0.1500 0.0092 0.0092 + 2270010010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.00 0.40 0.19 0.13 0.13 0.1316 0.1316 0.1316 0.0690 0.0276 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 5.7 4.7 0.33 0.06 0.06 0.06 0.060 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 4.8 4.1 0.33 0.06 0.06 0.06 0.060 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 4.1 3.5 0.33 0.06 0.06 0.06 0.060 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 3.4 2.9 0.30 0.06 0.06 0.06 0.060 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.7 2.3 0.26 0.06 0.06 0.06 0.060 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.6 2.2 0.26 0.06 0.06 0.06 0.060 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.5 2.1 0.22 0.06 0.06 0.06 0.060 + 2282005010 50 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.2 1.9 0.22 0.06 0.06 0.06 0.060 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.2 1.9 0.22 0.06 0.06 0.06 0.060 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr PM +1900 2.2 1.9 0.22 0.06 0.06 0.06 0.060 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 5.50 4.70 0.33 2.16 0.06 0.06 0.06 0.060 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 4.80 4.10 0.33 1.88 0.06 0.06 0.06 0.060 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 4.10 3.50 0.33 1.61 0.06 0.06 0.06 0.060 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 3.40 2.90 0.30 1.33 0.06 0.06 0.06 0.060 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.70 2.30 0.26 1.06 0.06 0.06 0.06 0.060 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.60 2.20 0.26 1.02 0.06 0.06 0.06 0.060 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.50 2.10 0.22 0.98 0.06 0.06 0.06 0.060 + 2282005015 50 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.20 1.90 0.22 0.86 0.06 0.06 0.06 0.060 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.20 1.90 0.22 0.86 0.06 0.06 0.06 0.060 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr PM +1900 2.20 1.90 0.22 0.86 0.06 0.06 0.06 0.060 + 2282010005 0 50 MS4C MS4D MSC1 g/hp-hr PM +1900 0.06 0.06 0.06 + 2282010005 50 175 MS4C MS4D MSC1 g/hp-hr PM +1900 0.06 0.06 0.06 + 2282010005 175 600 MS4C MS4D MSC1 g/hp-hr PM +1900 0.06 0.06 0.06 + 2282010005 600 9999 MS4C MS4D MS4X g/hp-hr PM +1900 0.06 0.06 0.06 + 2282020000 0 11 BaseM T0M T1M T2M T3M T4M g/hp-hr PM +1900 1.00 1.00 0.45 0.38 0.24 0.24 + 2282020000 11 16 BaseM T0M T1M T2M T3M T4M g/hp-hr PM +1900 0.90 0.90 0.27 0.19 0.19 0.19 + 2282020000 16 25 BaseM T0M T1M T2M T3M T4M g/hp-hr PM +1900 0.90 0.90 0.27 0.19 0.19 0.19 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M g/hp-hr PM +1900 0.80 0.80 0.34 0.23 0.18 0.18 + 2282020000 50 100 BaseM T0M T1M T2M T3M T4M g/hp-hr PM +1900 0.16 0.16 0.16 0.13 0.13 0.13 + 2282020000 100 175 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.13 0.088 + 2282020000 175 300 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.090 0.080 + 2282020000 300 600 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.082 0.072 + 2282020000 600 750 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.082 0.072 + 2282020000 750 1200 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.082 0.072 + 2282020000 1200 9999 BaseM T0M T1M T2M T3M g/hp-hr PM +1900 0.16 0.16 0.16 0.082 0.064 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.97 1.97 0.88 0.99 0.99 0.9867 0.2760 0.2760 0.0092 0.0092 + 2285002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2285002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.78 0.53 0.53 0.53 0.5259 0.2760 0.2760 0.0092 0.0092 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.58 1.58 0.67 0.67 0.67 0.6688 0.2024 0.2024 0.0184 0.0092 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0184 0.0092 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 1.42 0.93 0.47 0.71 0.7104 0.2024 0.2024 0.0092 0.0092 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.55 0.36 0.52 0.5210 0.5210 0.2200 0.0092 0.0092 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.50 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.40 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.43 0.26 0.36 0.3552 0.3552 0.1500 0.0092 0.0092 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr PM +1900 1.78 0.79 0.38 0.26 0.26 0.2597 0.2597 0.1316 0.0690 0.0276 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.04 0.26 0.037 0.179 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr PM +1900 7.70 0.06 0.06 0.06 0.06 0.06 0.06 0.060 0.060 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr PM +1900 0.06 0.06 0.06 + 2285006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr PM +1900 0.05 0.05 0.05 + 2285008015 25 9999 NGT25 NGT2521 NGT252 g/hp-hr PM +1900 0.05 0.05 0.05 +/END/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/NONROAD/NR08a/DATA/EMSFAC/EXHTHC.EMF b/NONROAD/NR08a/DATA/EMSFAC/EXHTHC.EMF new file mode 100644 index 0000000..c592064 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/EXHTHC.EMF @@ -0,0 +1,2945 @@ +This file contains emission factors data for exhaust THC +emissions. The emission factors are specified by SCC code, +HP range and technology type. An ALL in the tech type field +will apply to all technology types. The model will use the +the emission factor for the closest year that is less than or +equal to the current model year. + +3/2/07 thc-43s: like 43r but just rename dsl marine "T2" to "T2M" so it will get proper PM Base Sulfur, same as other T2M. +9/10/07 thc-43s: rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + and change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. +2/8/08 thc-43w: for Small SI / SI recmarine FRM. +7/21/08 thc-43z: Like 43w but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +-------------------------------------------------------------- +The format is as follows: +Line 1: + 6-15 character -- SCC Code + 21-25 real -- beginning of HP range + 26-30 real -- end of horsepower range + 35-44 character -- technology type + x5-x4 character -- technology type (repeating fields of 10) + x5-x4 character -- units (10 characters max) + x5-x4 character -- pollutant (12 characters max) +Line 2: + 1-5 integer -- year + 35-44 real -- emission factors for technology type 1 + x5-x4 real -- EF's for tech types (repeating fields of 10) + + 2200000000 HpminHpmax techtyT1 techtyT2 techtyT3 techtyp4 techtyp5 techtyp6 techtyp7 techtyp8 techtyp9 techtyT10 g/hp-hr THC +1900 37.7 0 37.7 999.99 999.99 999.99 999.99 999.99 999.99 999.99 +-------------------------------------------------------------- + +/EMSFAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 g/hp-hr THC +1900 270.40 1.45 0.28 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G4H31 G2H32 G2H3C2 G4H32 g/hp-hr THC +1900 261.00 219.99 219.99 0.00 33.07 26.87 0.00 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 g/hp-hr THC +1900 261.00 0.00 0.00 179.72 179.72 22.37 33.07 26.87 25.83 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr THC +1900 159.58 0.00 120.06 120.06 47.98 40.15 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr THC +1900 207.92 5.20 9.66 5.20 5.50 4.16 5.50 3.17 3.17 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr THC +1900 207.92 5.20 9.66 5.20 5.50 4.16 5.50 3.17 3.17 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 5.01 1.003 0.27 + 2260001010 0 9999 RM2 RM4 RM40 RM41 g/hp-hr THC +1900 53.9 2.40 2.40 2.10 + 2265001010 0 9999 RM4 RM40 RM41 g/hp-hr THC +1900 2.40 2.40 2.10 + 2260001020 0 9999 RS2 RS4 RS40 RS21 RS22 g/hp-hr THC +1900 111.0 7.80 7.80 53.7 21.8 + 2265001020 0 9999 RS4 RS40 g/hp-hr THC +1900 7.80 7.80 + 2260001030 0 9999 RA2 RA4 RA40 RA41 RA42 g/hp-hr THC +1900 53.9 2.40 2.40 1.60 1.60 + 2265001030 0 9999 RA4 RA40 RA41 RA42 g/hp-hr THC +1900 2.40 2.40 1.60 1.60 + 2265002015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002024 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002057 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002060 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002066 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002072 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265002078 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265003040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr THC +1900 159.58 0.00 120.06 120.06 47.98 40.15 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr THC +1900 159.58 0.00 120.06 120.06 47.98 40.15 + 2260004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr THC +1900 207.92 207.92 13.39 38.99 5.20 9.66 + 2260004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr THC +1900 207.92 207.92 13.39 38.99 5.20 9.66 + 2265004035 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr THC +1900 207.92 207.92 13.39 38.99 5.20 9.66 + 2265004036 0 9999 G2N1 G2N2 G4N1O G4N1S G4N2O G4N2S g/hp-hr THC +1900 207.92 207.92 13.39 38.99 5.20 9.66 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004046 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004051 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265004055 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr THC +1900 207.92 13.39 38.99 3.19 3.19 THC + 2265004056 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr THC +1900 207.92 13.39 38.99 3.19 3.19 + 2265004066 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr THC +1900 207.92 13.39 38.99 3.19 3.19 THC + 2265004076 0 6 G2N1 G4N1O G4N1S L4N1 N4N1 g/hp-hr THC +1900 207.92 13.39 38.99 3.19 3.19 + 2265005015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265005020 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265005025 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265005030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265006005 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 3.85 0.590 0.27 + 2265006010 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 3.85 0.590 0.27 + 2265006015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 3.85 0.590 0.27 + 2265006035 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 3.85 0.590 0.27 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 g/hp-hr THC +1900 159.58 0.00 120.06 120.06 47.98 40.15 + 2265008005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2267000000 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 2.18 0.725 0.10 + 2267006005 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 1.68 0.250 0.10 + 2267006010 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 1.68 0.250 0.10 + 2267006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 1.68 0.250 0.10 + 2267006035 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 1.68 0.250 0.10 + 2268000000 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 32.03 10.70 1.57 + 2268006005 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 24.64 3.69 1.57 + 2268006010 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 24.64 3.69 1.57 + 2268006015 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 24.64 3.69 1.57 + 2268006035 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 24.64 3.69 1.57 + 2270001000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270001000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270001000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270001000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270001000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270001000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270001000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270001000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270001000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270001000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270001000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270002003 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002003 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002003 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002003 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002003 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002003 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002003 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002003 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002003 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002003 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002003 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.99 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002006 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002006 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002006 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002006 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002006 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002006 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002006 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002006 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002006 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002006 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002006 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002009 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002009 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002009 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002009 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002009 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002009 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002009 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002009 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002009 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002009 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002009 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.84 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002018 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002018 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002018 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002018 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002018 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002018 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002018 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002018 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002018 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002018 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002018 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002021 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002021 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002021 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002021 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002021 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002021 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002021 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002021 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002021 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002021 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002021 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002024 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002024 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002024 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002024 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002024 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002024 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002024 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002024 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002024 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002024 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002024 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.06 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002027 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002027 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002027 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002027 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002027 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002027 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002027 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002027 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002027 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002027 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002027 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002033 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002033 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002033 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002033 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002033 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002033 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002033 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002033 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002033 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002033 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002033 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002036 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002036 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002036 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002036 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002036 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002036 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002036 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002036 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002036 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002036 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002036 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.52 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002039 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002039 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002039 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002039 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002039 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002039 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002039 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002039 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002039 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002039 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002039 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002042 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002042 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002042 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002042 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002042 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002042 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002042 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002042 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002042 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002042 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002042 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.90 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002048 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002048 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002048 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002048 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002048 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002048 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002048 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002048 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002048 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002048 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002048 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.15 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002051 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002051 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002051 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002051 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002051 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002051 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002051 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002051 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002051 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002051 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002051 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002054 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270002054 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002054 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270002054 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270002054 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002054 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002054 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002054 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270002054 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002054 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002054 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.01 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002057 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002057 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002057 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002057 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002057 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002057 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002057 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002057 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002057 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002057 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002057 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002063 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002063 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002063 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002063 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002063 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002063 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002063 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002063 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002063 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002063 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002063 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002066 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270002066 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002066 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002066 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270002066 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002066 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002066 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002066 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002066 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002066 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002066 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.29 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270002069 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002069 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002069 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002069 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002069 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002069 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002069 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002069 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002069 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002069 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002069 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002072 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270002072 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002072 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002072 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270002072 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002072 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002072 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002072 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002072 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002072 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002072 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270002075 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002075 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002075 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002075 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002075 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002075 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002075 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002075 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002075 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002075 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002075 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.84 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270002078 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270002078 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002078 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270002078 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270002078 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002078 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270002078 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002078 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270002078 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002078 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270002078 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.38 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270002081 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270002081 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002081 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270002081 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270002081 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002081 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270002081 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002081 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270002081 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002081 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270002081 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.05 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270003010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270003010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270003010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270003010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270003010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270003010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270003010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270003010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270003010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270003010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270003010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270003020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270003020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270003020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270003020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270003020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270003020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270003020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270003020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270003020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270003030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270003030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270003030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270003040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270003040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270003040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.12 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270003050 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270003050 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270003050 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270003050 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270003050 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270003050 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270003050 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270003050 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270003050 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270003050 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270003050 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270003060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270003060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270003060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270003060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270003060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270003070 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270003070 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270003070 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270003070 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270003070 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270003070 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270003070 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270003070 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270003070 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003070 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270003070 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270004000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270004000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270004000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270004000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270004000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270004000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270004000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270004000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270004000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270004000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270004000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005020 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005020 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005020 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005020 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005020 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005020 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005020 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005020 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005020 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005020 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005020 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005030 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005030 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005030 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005030 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005030 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005030 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005030 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005030 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005030 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005030 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005030 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.66 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005035 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005035 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005035 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005035 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005035 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005035 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005035 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005035 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005035 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005035 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005035 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.33 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005040 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005040 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005040 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005040 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005040 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005040 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005040 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005040 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005040 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005040 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005040 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005045 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005045 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005045 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005045 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005045 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005045 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005045 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005045 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005045 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005045 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005045 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.94 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005055 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270005055 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005055 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270005055 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270005055 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005055 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270005055 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005055 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270005055 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005055 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005055 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.90 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270005060 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270005060 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270005060 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270005060 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270005060 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270005060 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270005060 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270005060 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270005060 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005060 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270005060 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.23 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270006000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270006000 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270006000 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270006000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270006000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270006000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270006000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270006005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270006005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270006005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270006005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270006005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270006005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270006005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270006005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270006025 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2270006025 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270006025 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2270006025 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2270006025 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270006025 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2270006025 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2270006025 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2270006025 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270006025 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2270006025 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.75 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2270007010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270007010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270007010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270007010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270007010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270007010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270007010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270007010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270007010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270007010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270007010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.25 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270007015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270007015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270007015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270007015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270007015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270007015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270007015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270007015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270007015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270007015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270007015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 0.63 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270008005 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.57 1.57 0.80 0.58 0.58 0.58 0.55 0.55 0.13 0.13 + 2270008005 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270008005 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.78 1.78 0.46 0.46 0.46 0.46 0.44 0.44 0.13 0.13 + 2270008005 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.88 1.88 0.29 0.29 0.29 0.29 0.28 0.28 0.13 0.13 + 2270008005 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270008005 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 1.03 0.54 0.38 0.19 0.19 0.18 0.18 0.13 0.13 + 2270008005 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.35 0.35 0.19 0.19 0.19 0.18 0.13 0.13 + 2270008005 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.32 0.32 0.19 0.19 0.19 0.18 0.13 0.13 + 2270008005 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.21 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270008005 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270008005 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.17 0.71 0.30 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 3.44 1.26 1.26 1.26 1.26 1.26 1.26 1.26 + 2270009010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 3.90 1.00 1.00 1.00 1.00 1.00 1.00 1.00 + 2270009010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 3.90 1.00 1.00 1.00 1.00 1.00 1.00 1.00 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 4.13 0.64 0.64 0.64 0.64 0.64 0.64 0.64 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 2.27 0.84 0.84 0.84 0.84 0.84 0.84 0.84 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 2.27 2.27 0.84 0.84 0.84 0.84 0.84 0.84 0.84 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 1.56 0.78 0.78 0.78 0.78 0.78 0.78 0.78 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 1.56 0.71 0.71 0.71 0.71 0.71 0.71 0.71 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 1.56 0.38 0.38 0.38 0.38 0.38 0.38 0.38 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 1.56 0.38 0.38 0.38 0.38 0.38 0.38 0.38 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.57 1.56 1.56 0.38 0.38 0.38 0.38 0.38 0.38 0.38 + 2270010010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.50 1.50 0.76 0.55 0.55 0.55 0.55 0.55 0.13 0.13 + 2270010010 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270010010 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.70 1.70 0.44 0.44 0.44 0.44 0.44 0.44 0.13 0.13 + 2270010010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.80 1.80 0.28 0.28 0.28 0.28 0.28 0.28 0.13 0.13 + 2270010010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270010010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.99 0.52 0.37 0.18 0.18 0.18 0.18 0.13 0.13 + 2270010010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.34 0.34 0.18 0.18 0.18 0.18 0.13 0.13 + 2270010010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.31 0.31 0.18 0.18 0.18 0.18 0.13 0.13 + 2270010010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.20 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270010010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.15 0.17 0.17 0.17 0.17 0.17 0.13 0.13 + 2270010010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 1.20 0.68 0.29 0.17 0.17 0.17 0.17 0.17 0.28 0.13 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 271.9 230.4 38.74 25.60 31.77 19.27 15.57 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 236.7 200.6 33.73 19.09 23.69 14.37 16.49 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 201.5 170.8 28.72 12.61 15.65 9.49 11.59 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 166.4 141.0 23.70 8.89 11.03 6.69 8.67 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 131.2 111.2 18.69 6.17 7.66 4.65 9.32 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 126.5 107.2 18.03 5.31 6.59 4.00 7.63 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 121.0 102.5 15.55 4.81 5.97 3.62 6.96 + 2282005010 50 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 109.1 92.5 15.55 4.69 5.82 3.53 6.88 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 109.1 92.5 15.55 4.69 5.82 3.53 6.83 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 g/hp-hr THC +1900 109.1 92.5 15.55 4.69 5.82 3.53 7.62 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 271.92 205.35 60.78 106.70 25.84 31.75 30.09 15.57 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 230.19 173.84 51.46 90.32 15.13 21.04 19.38 16.49 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 188.47 142.33 42.13 73.95 4.43 10.33 8.67 11.59 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 146.74 110.82 32.80 57.58 4.43 10.33 8.67 8.67 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 23.48 41.21 4.43 10.33 8.67 9.32 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 23.48 41.21 3.73 9.63 7.97 7.63 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 23.48 41.21 3.73 9.63 7.97 6.96 + 2282005015 50 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 24.74 41.21 3.63 9.54 7.88 6.88 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 24.37 41.21 3.63 9.54 7.88 6.83 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 g/hp-hr THC +1900 105.02 79.31 15.76 41.21 3.63 9.54 7.88 7.62 + 2282010005 0 50 MS4C MS4D MSC1 g/hp-hr THC +1900 5.88 3.02 1.34 + 2282010005 50 175 MS4C MS4D MSC1 g/hp-hr THC +1900 5.88 3.02 1.34 + 2282010005 175 600 MS4C MS4D MSC1 g/hp-hr THC +1900 5.88 3.02 1.34 + 2282010005 600 9999 MS4C MS4D MS4X g/hp-hr THC +1900 10.31 10.31 6.39 + 2282020000 0 11 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 1.50 1.50 0.76 0.68 0.43 0.43 + 2282020000 11 16 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 1.70 1.70 0.44 0.21 0.21 0.21 + 2282020000 16 25 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 1.70 1.70 0.44 0.21 0.21 0.21 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 1.80 1.80 0.28 0.54 0.41 0.41 + 2282020000 50 75 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 0.22 0.22 0.22 0.20 0.20 0.20 + 2282020000 75 100 BaseM T0M T1M T2M T3M T4M g/hp-hr THC +1900 0.22 0.22 0.22 0.20 0.20 0.20 + 2282020000 100 175 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.20 0.13 + 2282020000 175 300 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.25 0.22 + 2282020000 300 600 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.33 0.29 + 2282020000 600 750 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.33 0.29 + 2282020000 750 1200 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.33 0.29 + 2282020000 1200 9999 BaseM T0M T1M T2M T3M g/hp-hr THC +1900 0.22 0.22 0.22 0.33 0.29 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.44 3.44 1.75 1.26 1.26 1.26 0.55 0.55 0.13 0.13 + 2285002015 11 16 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2285002015 16 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 3.90 3.90 1.00 1.00 1.00 1.00 0.44 0.44 0.13 0.13 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 4.13 4.13 0.64 0.64 0.64 0.64 0.28 0.28 0.13 0.13 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 2.27 1.20 0.84 0.42 0.42 0.18 0.18 0.13 0.13 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 1.56 0.78 0.78 0.42 0.42 0.42 0.18 0.13 0.13 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 1.56 0.71 0.71 0.42 0.42 0.42 0.18 0.13 0.13 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 1.56 0.46 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 1.56 0.34 0.38 0.38 0.38 0.38 0.17 0.13 0.13 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N g/hp-hr THC +1900 2.18 1.56 0.66 0.38 0.38 0.38 0.38 0.17 0.28 0.13 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1SC1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 g/hp-hr THC +1900 207.92 13.39 38.99 8.40 8.40 8.40 6.51 7.68 3.80 4.18 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b g/hp-hr THC +1900 207.92 5.20 9.66 5.20 5.50 4.16 5.50 3.17 3.17 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 g/hp-hr THC +1900 5.01 1.003 0.27 + 2285006015 25 9999 LGT25 LGT251 LGT252 g/hp-hr THC +1900 2.18 0.725 0.10 + 2285008015 25 9999 NGT25 NGT251 NGT252 g/hp-hr THC +1900 32.03 10.70 1.57 +/END/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/NONROAD/NR08a/DATA/EMSFAC/SPILLAGE.EMF b/NONROAD/NR08a/DATA/EMSFAC/SPILLAGE.EMF new file mode 100644 index 0000000..a8d7a76 --- /dev/null +++ b/NONROAD/NR08a/DATA/EMSFAC/SPILLAGE.EMF @@ -0,0 +1,568 @@ +This file contains the data necessary to calculate the factors for +spillage, refueling, tank permeation, hose pereation and hot soaks for gas engines. + +9/18/06 10, Add fields for E10 tank & hose permeation adjustment factors +11/16/06 10a, Change E10 recmarine fillneck permeation adjustment factors from 2.98 to 2.0. Chainsaw tank baseline becomes 2.0. +6/13/07 10b, Just extend 3-6 hp bin of 2265002030 (4-stk trenchers) to 1-6 hp, since pop file has some 1-3 hp. +7/21/08 10c, Like 10b but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +The format of the data is as follows: + + 1 - 10 SCC code + 12 - 51 Equipment name + 54 - 62 Fill method (PUMP or CONTAINER) + 64 - 67 Indicator code (TANK or HP) + 69 - 73 Minimum HP range + 74 - 78 Maximum HP range (ranges must match those internal to model) + 79 - 88 Evap Technology Type + 90 - 99 Units (GALLONS or GAL/HP) +103 - 112 Tank size estimate (either gallons or gal/hp) +113 - 120 Fraction of tank filled with fuel (for diurnal calcs) +121 - 130 Tank metal fraction +131 - 140 Non-Rec-Marine Hose length (meters) +141 - 150 Non-Rec-Marine Hose diameter (meters) +151 - 160 Non-Rec-Marine Hose metal fraction +161 - 170 Rec-Marine Fill Neck Hose length (meters) +171 - 180 Rec-Marine Fill Neck Hose diameter (meters) +181 - 190 Rec-Marine Supply/Return Hose length (meters) +191 - 200 Rec-Marine Supply/Return Hose diameter (meters) +201 - 210 Rec-Marine Vent Hose length (meters) +211 - 220 Rec-Marine Vent Hose diameter (meters) +221 - 230 Hot soaks (full soaks) per hour of operation +231 - 240 Diurnal all non-rec marine/rec-marine portable plastic (get 0.78 factor) +241 - 250 Diurnal rec-marine installed platic tank on trailer (get 50% temperature swing reduction) +251 - 260 Diurnal rec-marine installed platic tank in water (get 80% temperature swing reduction) +261 - 270 Diurnal rec-marine installed metal tank on trailer (get 50% temperature swing reduction) +271 - 280 Diurnal rec-marine installed metal tank in water (get 80% temperature swing reduction) +281 - 290 Tank E10 permeation adjustment factor +291 - 300 non-rec marine Hose E10 permeation adjustment factor +301 - 310 Rec marine Fill Neck E10 permeation adjustment factor +311 - 320 Rec marine Supply/Return hose E10 permeation adjustment factor +321 - 330 Rec marine Vent hose E10 permeation adjustment factor + + +------------------ ---------------------Diurnal--------------------- + ----------------------Rec-Marine-Hose---------------------- Non-Rec/ Installed Installed Installed Installed--------------E10 Adjustment Factors-------------- + -----------Tank------------ -----Non-Rec-Marine-Hose----- -----Fill-Neck----- ---Supply-Return--- -------Vent-------- Hot Soak Portable Plastic Plastic Metal Metal Non-metal Non-RecMarRecMarine RecMarine RecMarine +SCC_code Name Filled TnkHp HPmn HPmx Tech Units Size Full Metal Length Diameter Metal Length Diameter Length Diameter Length Diameter Soaks/Hr Plastic Trailer Water Trailer Water Tank Hose FillNeck Sup/Ret Vent +---------- ---------------------------------- --------- ---- ---- ---- ------- --------- --------- ------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- --------- +/EMSFAC/ +2260001010 2-Str Offroad Motorcycles CONTAINER HP 0 9999 ALL GALLONS 3.00000 0.50000 0.00000 0.45750 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.05000 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2260001020 2-Str Snowmobiles PUMP HP 1 175 ALL GALLONS 11.00000 0.50000 0.00000 1.06750 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2260001030 2-Str All Terrain Vehicles CONTAINER HP 0 9999 ALL GALLONS 4.00000 0.50000 0.00000 0.30500 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.10417 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2260001060 2-Str Specialty Vehicle Carts CONTAINER HP 0 6 ALL GALLONS 3.60000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260001060 2-Str Specialty Vehicle Carts PUMP HP 6 25 ALL GALLONS 3.60000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260001060 2-Str Specialty Vehicle Carts PUMP HP 25 40 ALL GALLONS 3.60000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260001060 2-Str Specialty Vehicle Carts PUMP HP 40 100 ALL GALLONS 6.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002006 2-Str Tampers/Rammers PUMP HP 3 6 ALL GALLONS 0.90000 0.50000 0.00000 0.09379 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002009 2-Str Plate Compactors PUMP HP 1 3 ALL GALLONS 0.90000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002021 2-Str Paving Equipment PUMP HP 1 3 ALL GALLONS 1.00000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002027 2-Str Signal Boards/Light Plants PUMP HP 1 3 ALL GALLONS 1.00000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002039 2-Str Concrete/Industrial Saws PUMP HP 1 3 ALL GALLONS 0.96747 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002039 2-Str Concrete/Industrial Saws PUMP HP 3 6 ALL GALLONS 2.31132 0.50000 0.00000 0.09379 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260002054 2-Str Crushing/Proc. Equipment PUMP HP 1 6 ALL GALLONS 0.91800 0.50000 0.00000 0.09760 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260003030 2-Str Sweepers/Scrubbers CONTAINER HP 1 3 ALL GALLONS 0.65076 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260003040 2-Str Other General Industrial Eqp CONTAINER HP 1 3 ALL GALLONS 1.04244 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004015 2-Str Rotary Tillers < 6 HP (res) CONTAINER HP 0 1 ALL GALLONS 0.30000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004015 2-Str Rotary Tillers < 6 HP (res) CONTAINER HP 1 3 ALL GALLONS 0.30000 0.50000 0.00000 0.11971 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004016 2-Str Rotary Tillers < 6 HP (com) CONTAINER HP 0 1 ALL GALLONS 0.30000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004016 2-Str Rotary Tillers < 6 HP (com) CONTAINER HP 1 3 ALL GALLONS 0.30000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004020 2-Str Chain Saws < 6 HP (res) CONTAINER HP 1 3 ALL GALLONS 0.08440 0.50000 0.00000 0.11971 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 2.000 1.820 0.000 0.000 0.000 +2260004020 2-Str Chain Saws < 6 HP (res) CONTAINER HP 3 6 ALL GALLONS 0.15664 0.50000 0.00000 0.04778 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 2.000 1.820 0.000 0.000 0.000 +2260004021 2-Str Chain Saws < 6 HP (com) CONTAINER HP 1 3 ALL GALLONS 0.08440 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 2.000 1.820 0.000 0.000 0.000 +2260004021 2-Str Chain Saws < 6 HP (com) CONTAINER HP 3 6 ALL GALLONS 0.15664 0.50000 0.00000 0.09379 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 2.000 1.820 0.000 0.000 0.000 +2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 0 1 ALL GALLONS 0.20000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 1 3 ALL GALLONS 0.20000 0.50000 0.00000 0.11971 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 3 6 ALL GALLONS 0.20000 0.50000 0.00000 0.04778 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 0 1 ALL GALLONS 0.20000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 1 3 ALL GALLONS 0.20000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 3 6 ALL GALLONS 0.20000 0.50000 0.00000 0.09379 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260004030 2-Str Leafblowers/Vacuums (res) CONTAINER HP 0 1 ALL GALLONS 0.70000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004030 2-Str Leafblowers/Vacuums (res) CONTAINER HP 1 3 ALL GALLONS 0.70000 0.50000 0.00000 0.11971 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004030 2-Str Leafblowers/Vacuums (res) CONTAINER HP 3 6 ALL GALLONS 0.70000 0.50000 0.00000 0.04778 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004031 2-Str Leafblowers/Vacuums (com) CONTAINER HP 0 1 ALL GALLONS 0.70000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004031 2-Str Leafblowers/Vacuums (com) CONTAINER HP 1 3 ALL GALLONS 0.70000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004031 2-Str Leafblowers/Vacuums (com) CONTAINER HP 3 6 ALL GALLONS 0.70000 0.50000 0.00000 0.09379 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004035 2-Str Snowblowers (res) CONTAINER HP 1 3 ALL GALLONS 0.30000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004035 2-Str Snowblowers (res) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004036 2-Str Snowblowers (com) CONTAINER HP 1 3 ALL GALLONS 0.30000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004036 2-Str Snowblowers (com) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260004071 2-Str Commercial Turf Equipment (com) CONTAINER HP 1 3 ALL GALLONS 2.50000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260005035 2-Str Sprayers PUMP HP 0 1 ALL GALLONS 1.50000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260005035 2-Str Sprayers PUMP HP 1 3 ALL GALLONS 1.50000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006005 2-Str Generator Sets CONTAINER HP 0 1 ALL GALLONS 0.80000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006005 2-Str Generator Sets CONTAINER HP 1 3 ALL GALLONS 0.80000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006010 2-Str Pumps CONTAINER HP 0 1 ALL GALLONS 0.80000 0.50000 0.00000 0.07625 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006010 2-Str Pumps CONTAINER HP 1 3 ALL GALLONS 0.80000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006010 2-Str Pumps PUMP HP 25 40 ALL GALLONS 19.38000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006010 2-Str Pumps PUMP HP 40 100 ALL GALLONS 28.05000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006015 2-Str Air Compressors CONTAINER HP 1 3 ALL GALLONS 1.10000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2260006035 2-Str Hydro Power Units PUMP HP 1 3 ALL GALLONS 0.23000 0.50000 0.00000 0.09760 0.003177 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2260007005 2-Str Chain Saws > 6 HP CONTAINER HP 6 11 ALL GALLONS 0.27240 0.50000 0.00000 0.06100 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 2.000 1.820 0.000 0.000 0.000 +2265001010 4-Str Offroad Motorcycles CONTAINER HP 0 9999 ALL GALLONS 3.00000 0.50000 0.00000 0.45750 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.05000 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2265001020 4-Str Snowmobiles PUMP HP 16 25 ALL GALLONS 10.80000 0.50000 0.00000 1.06750 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2265001030 4-Str All Terrain Vehicles CONTAINER HP 0 9999 ALL GALLONS 4.00000 0.50000 0.00000 0.30500 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.10417 1.000 0.000 0.000 0.000 0.000 1.000 1.000 0.000 0.000 0.000 +2265001050 4-Str Golf Carts PUMP HP 6 11 ALL GALLONS 4.60000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.24074 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265001060 4-Str Specialty Vehicle Carts CONTAINER HP 0 6 ALL GALLONS 3.60000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265001060 4-Str Specialty Vehicle Carts PUMP HP 6 25 ALL GALLONS 3.60000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265001060 4-Str Specialty Vehicle Carts PUMP HP 25 175 ALL GALLONS 6.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 6 11 ALL GALLONS 1.00000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 11 16 ALL GALLONS 1.00000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 16 25 ALL GALLONS 10.63350 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 25 40 ALL GALLONS 16.19250 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002003 4-Str Pavers PUMP HP 50 100 ALL GALLONS 31.82910 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002006 4-Str Tampers/Rammers PUMP HP 6 11 ALL GALLONS 0.90000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002009 4-Str Plate Compactors PUMP HP 3 6 ALL GALLONS 0.90000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002009 4-Str Plate Compactors PUMP HP 6 11 ALL GALLONS 0.90000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002009 4-Str Plate Compactors PUMP HP 11 16 ALL GALLONS 0.90000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 6 11 ALL GALLONS 4.53951 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 11 16 ALL GALLONS 7.55820 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 16 25 ALL GALLONS 9.73080 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 25 40 ALL GALLONS 18.77820 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002015 4-Str Rollers PUMP HP 50 100 ALL GALLONS 35.60310 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 6 11 ALL GALLONS 4.35285 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 11 16 ALL GALLONS 6.76260 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 16 25 ALL GALLONS 10.20000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 25 40 ALL GALLONS 18.66600 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002021 4-Str Paving Equipment PUMP HP 50 100 ALL GALLONS 33.66000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 6 11 ALL GALLONS 4.54818 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 11 16 ALL GALLONS 7.96110 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 16 25 ALL GALLONS 9.71550 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 25 40 ALL GALLONS 15.42240 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002024 4-Str Surfacing Equipment PUMP HP 50 100 ALL GALLONS 33.66000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002027 4-Str Signal Boards/Light Plants PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002027 4-Str Signal Boards/Light Plants PUMP HP 6 11 ALL GALLONS 4.20750 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002027 4-Str Signal Boards/Light Plants PUMP HP 11 16 ALL GAL/HP 0.51000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002027 4-Str Signal Boards/Light Plants PUMP HP 16 25 ALL GALLONS 9.18000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 1 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 6 11 ALL GALLONS 4.53033 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 11 16 ALL GALLONS 6.85440 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 16 25 ALL GALLONS 9.84300 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 25 40 ALL GALLONS 15.30000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002030 4-Str Trenchers PUMP HP 50 100 ALL GALLONS 35.56740 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 0 1 ALL GALLONS 0.45900 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 1 3 ALL GALLONS 1.12659 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 3 6 ALL GALLONS 2.45259 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 6 11 ALL GALLONS 4.46454 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 11 16 ALL GALLONS 8.16000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 16 25 ALL GALLONS 10.86810 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 25 40 ALL GALLONS 16.00890 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 50 100 ALL GALLONS 31.28340 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002033 4-Str Bore/Drill Rigs PUMP HP 100 175 ALL GALLONS 60.23100 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 3 6 ALL GAL/HP 0.51000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 6 11 ALL GALLONS 4.35285 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 11 16 ALL GALLONS 7.48680 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 16 25 ALL GALLONS 9.89910 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 25 40 ALL GALLONS 17.74290 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002039 4-Str Concrete/Industrial Saws PUMP HP 40 100 ALL GALLONS 33.54780 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002042 4-Str Cement & Mortar Mixers PUMP HP 1 3 ALL GALLONS 1.47390 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002042 4-Str Cement & Mortar Mixers PUMP HP 3 6 ALL GALLONS 2.66220 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002042 4-Str Cement & Mortar Mixers PUMP HP 6 11 ALL GALLONS 4.27023 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002042 4-Str Cement & Mortar Mixers PUMP HP 11 16 ALL GALLONS 6.89520 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002042 4-Str Cement & Mortar Mixers PUMP HP 16 25 ALL GALLONS 9.11370 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 6 11 ALL GALLONS 4.08000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 11 16 ALL GALLONS 7.15020 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 16 25 ALL GALLONS 9.26160 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 25 40 ALL GALLONS 18.87000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 50 100 ALL GALLONS 35.21040 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002045 4-Str Cranes PUMP HP 100 175 ALL GALLONS 58.75200 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002054 4-Str Crushing/Proc. Equipment PUMP HP 3 6 ALL GALLONS 2.20371 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002054 4-Str Crushing/Proc. Equipment PUMP HP 6 11 ALL GALLONS 4.55430 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002054 4-Str Crushing/Proc. Equipment PUMP HP 11 16 ALL GALLONS 8.16000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002054 4-Str Crushing/Proc. Equipment PUMP HP 16 175 ALL GALLONS 31.89030 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002057 4-Str Rough Terrain Forklift PUMP HP 16 25 ALL GALLONS 11.73000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002057 4-Str Rough Terrain Forklift PUMP HP 25 40 ALL GALLONS 14.79000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002057 4-Str Rough Terrain Forklift PUMP HP 40 50 ALL GALLONS 23.46000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002057 4-Str Rough Terrain Forklift PUMP HP 50 100 ALL GALLONS 33.64980 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002057 4-Str Rough Terrain Forklift PUMP HP 100 175 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002060 4-Str Rubber Tire Loaders PUMP HP 25 40 ALL GALLONS 18.87000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002060 4-Str Rubber Tire Loaders PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002060 4-Str Rubber Tire Loaders PUMP HP 50 100 ALL GALLONS 35.90400 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002060 4-Str Rubber Tire Loaders PUMP HP 100 175 ALL GALLONS 57.63000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002066 4-Str Tractors/Loaders/Backhoes PUMP HP 6 11 ALL GALLONS 5.50800 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002066 4-Str Tractors/Loaders/Backhoes PUMP HP 16 25 ALL GALLONS 9.73080 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002066 4-Str Tractors/Loaders/Backhoes PUMP HP 25 40 ALL GALLONS 15.30000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002066 4-Str Tractors/Loaders/Backhoes PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002066 4-Str Tractors/Loaders/Backhoes PUMP HP 50 100 ALL GALLONS 23.20000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002072 4-Str Skid Steer Loaders PUMP HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002072 4-Str Skid Steer Loaders PUMP HP 16 25 ALL GALLONS 9.38910 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002072 4-Str Skid Steer Loaders PUMP HP 25 40 ALL GALLONS 16.28430 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002072 4-Str Skid Steer Loaders PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002072 4-Str Skid Steer Loaders PUMP HP 50 100 ALL GALLONS 34.35870 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 3 6 ALL GALLONS 1.00000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 6 11 ALL GALLONS 4.34520 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 11 16 ALL GALLONS 6.26280 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 16 25 ALL GALLONS 9.55740 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 25 40 ALL GAL/HP 0.51000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002078 4-Str Dumpers/Tenders PUMP HP 50 100 ALL GALLONS 33.66000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002081 4-Str Other Construction Equipment PUMP HP 16 25 ALL GALLONS 9.18000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002081 4-Str Other Construction Equipment PUMP HP 25 40 ALL GAL/HP 0.51000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002081 4-Str Other Construction Equipment PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002081 4-Str Other Construction Equipment PUMP HP 50 100 ALL GAL/HP 0.51000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265002081 4-Str Other Construction Equipment PUMP HP 100 175 ALL GALLONS 64.26000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts CONTAINER HP 6 11 ALL GALLONS 2.90000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts CONTAINER HP 11 16 ALL GALLONS 2.90000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts PUMP HP 16 25 ALL GALLONS 10.77630 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts PUMP HP 25 40 ALL GALLONS 15.92220 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts PUMP HP 50 100 ALL GALLONS 30.52860 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003010 4-Str Aerial Lifts PUMP HP 100 175 ALL GALLONS 56.86500 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts CONTAINER HP 16 25 ALL GAL/HP 0.51000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts PUMP HP 25 40 ALL GALLONS 20.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts PUMP HP 40 50 ALL GALLONS 20.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts PUMP HP 50 100 ALL GALLONS 20.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts PUMP HP 100 175 ALL GALLONS 20.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003020 4-Str Forklifts PUMP HP 175 300 ALL GALLONS 20.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.14444 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers CONTAINER HP 3 6 ALL GALLONS 2.41485 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers CONTAINER HP 6 11 ALL GALLONS 5.02605 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers CONTAINER HP 11 16 ALL GALLONS 7.57350 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 16 25 ALL GALLONS 9.29730 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 25 40 ALL GALLONS 16.27410 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 40 50 ALL GALLONS 23.46000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 50 100 ALL GALLONS 32.44110 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 100 175 ALL GALLONS 76.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 175 300 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003030 4-Str Sweepers/Scrubbers PUMP HP 300 600 ALL GALLONS 209.61000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp CONTAINER HP 3 6 ALL GALLONS 2.18739 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp CONTAINER HP 6 11 ALL GALLONS 4.62213 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp CONTAINER HP 11 16 ALL GALLONS 6.90030 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 16 25 ALL GALLONS 9.30240 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 25 40 ALL GALLONS 15.36120 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 50 100 ALL GALLONS 32.29320 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 100 175 ALL GALLONS 69.36000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003040 4-Str Other General Industrial Eqp PUMP HP 175 300 ALL GALLONS 99.45000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003050 4-Str Other Material Handling Eqp CONTAINER HP 1 3 ALL GALLONS 1.53000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003050 4-Str Other Material Handling Eqp PUMP HP 16 25 ALL GALLONS 9.24120 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003050 4-Str Other Material Handling Eqp PUMP HP 50 100 ALL GALLONS 41.08050 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003060 4-Str AC\Refrigeration PUMP HP 6 11 ALL GALLONS 4.59000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003060 4-Str AC\Refrigeration PUMP HP 11 16 ALL GALLONS 6.63000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003060 4-Str AC\Refrigeration PUMP HP 16 25 ALL GALLONS 9.18000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003070 4-Str Terminal Tractors PUMP HP 25 40 ALL GALLONS 17.85000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003070 4-Str Terminal Tractors PUMP HP 50 100 ALL GALLONS 35.25120 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003070 4-Str Terminal Tractors PUMP HP 100 175 ALL GALLONS 58.24200 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265003070 4-Str Terminal Tractors PUMP HP 175 300 ALL GALLONS 127.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004010 4-Str Lawn mowers (res) CONTAINER HP 1 3 ALL GALLONS 0.40000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004010 4-Str Lawn mowers (res) CONTAINER HP 3 6 ALL GALLONS 0.40000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004010 4-Str Lawn mowers (res) CONTAINER HP 6 11 ALL GALLONS 0.40000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004011 4-Str Lawn mowers (com) CONTAINER HP 1 3 ALL GALLONS 0.40000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004011 4-Str Lawn mowers (com) CONTAINER HP 3 6 ALL GALLONS 0.40000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004011 4-Str Lawn mowers (com) CONTAINER HP 6 11 ALL GALLONS 0.40000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004015 4-Str Rotary Tillers < 6 HP (res) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004016 4-Str Rotary Tillers < 6 HP (com) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 3 6 ALL GALLONS 0.20000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 6 11 ALL GALLONS 0.50000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 11 16 ALL GALLONS 1.00000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) CONTAINER HP 16 25 ALL GALLONS 1.00000 0.50000 0.10000 1.50210 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 3 6 ALL GALLONS 0.20000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.110 1.820 0.000 0.000 0.000 +2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 6 11 ALL GALLONS 0.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 11 16 ALL GALLONS 1.00000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) CONTAINER HP 16 25 ALL GALLONS 1.00000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004030 4-Str Leafblowers/Vacuums (res) CONTAINER HP 3 6 ALL GALLONS 0.70000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004030 4-Str Leafblowers/Vacuums (res) CONTAINER HP 6 11 ALL GALLONS 0.70000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004030 4-Str Leafblowers/Vacuums (res) CONTAINER HP 11 16 ALL GALLONS 0.70000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004030 4-Str Leafblowers/Vacuums (res) CONTAINER HP 16 25 ALL GALLONS 0.70000 0.50000 0.10000 1.50210 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 3.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 3 6 ALL GALLONS 0.70000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 6 11 ALL GALLONS 0.70000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 11 16 ALL GALLONS 0.70000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 16 25 ALL GALLONS 0.70000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 25 40 ALL GALLONS 0.70000 0.50000 1.00000 0.06100 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 40 50 ALL GALLONS 0.70000 0.50000 1.00000 0.06100 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 50 100 ALL GALLONS 0.70000 0.50000 1.00000 0.06100 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004031 4-Str Leafblowers/Vacuums (com) CONTAINER HP 100 175 ALL GALLONS 0.70000 0.50000 1.00000 0.06100 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004035 4-Str Snowblowers (res) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.00000 0.09150 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004035 4-Str Snowblowers (res) CONTAINER HP 6 11 ALL GALLONS 0.70000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004035 4-Str Snowblowers (res) CONTAINER HP 11 16 ALL GALLONS 0.70000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004035 4-Str Snowblowers (res) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.00000 0.09150 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004036 4-Str Snowblowers (com) CONTAINER HP 3 6 ALL GALLONS 0.30000 0.50000 0.00000 0.09150 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004036 4-Str Snowblowers (com) CONTAINER HP 6 11 ALL GALLONS 0.70000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004036 4-Str Snowblowers (com) CONTAINER HP 11 16 ALL GALLONS 0.70000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004036 4-Str Snowblowers (com) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.00000 0.09150 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004040 4-Str Rear Engine Riding Mowers (res) CONTAINER HP 3 6 ALL GALLONS 1.10000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004040 4-Str Rear Engine Riding Mowers (res) CONTAINER HP 6 11 ALL GALLONS 2.45000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004040 4-Str Rear Engine Riding Mowers (res) CONTAINER HP 11 16 ALL GALLONS 2.45000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004040 4-Str Rear Engine Riding Mowers (res) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 1.50210 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004041 4-Str Rear Engine Riding Mowers (com) CONTAINER HP 3 6 ALL GALLONS 1.10000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.45694 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004041 4-Str Rear Engine Riding Mowers (com) CONTAINER HP 6 11 ALL GALLONS 2.45000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.45694 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004041 4-Str Rear Engine Riding Mowers (com) CONTAINER HP 11 16 ALL GALLONS 2.45000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.45694 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004041 4-Str Rear Engine Riding Mowers (com) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.45694 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004046 4-Str Front Mowers (com) CONTAINER HP 6 11 ALL GALLONS 1.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004046 4-Str Front Mowers (com) CONTAINER HP 11 16 ALL GALLONS 2.45000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004046 4-Str Front Mowers (com) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004046 4-Str Front Mowers (com) CONTAINER HP 25 40 ALL GALLONS 5.50000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004050 4-Str Shredders < 6 HP (res) CONTAINER HP 1 3 ALL GALLONS 0.31000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004050 4-Str Shredders < 6 HP (res) CONTAINER HP 3 6 ALL GALLONS 0.31000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004051 4-Str Shredders < 6 HP (com) CONTAINER HP 1 3 ALL GALLONS 0.31000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004051 4-Str Shredders < 6 HP (com) CONTAINER HP 3 6 ALL GALLONS 0.31000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004055 4-Str Lawn & Garden Tractors (res) CONTAINER HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004055 4-Str Lawn & Garden Tractors (res) CONTAINER HP 6 11 ALL GALLONS 2.50000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004055 4-Str Lawn & Garden Tractors (res) CONTAINER HP 11 16 ALL GALLONS 2.50000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004055 4-Str Lawn & Garden Tractors (res) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 1.50210 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004056 4-Str Lawn & Garden Tractors (com) CONTAINER HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.36061 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004056 4-Str Lawn & Garden Tractors (com) CONTAINER HP 6 11 ALL GALLONS 2.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.36061 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004056 4-Str Lawn & Garden Tractors (com) CONTAINER HP 11 16 ALL GALLONS 2.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.36061 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004056 4-Str Lawn & Garden Tractors (com) CONTAINER HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.36061 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004056 4-Str Lawn & Garden Tractors (com) CONTAINER HP 25 40 ALL GAL/HP 0.51000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 3 6 ALL GALLONS 1.78500 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 16 25 ALL GALLONS 10.70000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 25 40 ALL GALLONS 17.90100 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 50 100 ALL GALLONS 31.07940 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004066 4-Str Chippers/Stump Grinders (com) CONTAINER HP 100 175 ALL GALLONS 60.69000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 16 25 ALL GALLONS 9.20000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 25 40 ALL GALLONS 9.20000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004071 4-Str Commercial Turf Equipment (com) CONTAINER HP 50 100 ALL GALLONS 9.20000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.38123 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 0 1 ALL GALLONS 2.50000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 1 3 ALL GALLONS 2.50000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.18810 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 6 11 ALL GALLONS 5.00000 0.50000 0.10000 0.31770 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 11 16 ALL GALLONS 5.00000 0.50000 0.10000 0.93530 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004075 4-Str Other Lawn & Garden Eqp. (res) CONTAINER HP 16 25 ALL GALLONS 10.00000 0.50000 0.10000 1.50210 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 2.00000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 0 1 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 1 3 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 6 11 ALL GALLONS 5.00000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 11 16 ALL GALLONS 5.00000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 16 25 ALL GALLONS 10.00000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 25 40 ALL GALLONS 10.00000 0.50000 1.00000 0.09150 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.09150 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 50 100 ALL GALLONS 10.00000 0.50000 1.00000 0.09150 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265004076 4-Str Other Lawn & Garden Eqp. (com) CONTAINER HP 100 175 ALL GALLONS 10.00000 0.50000 1.00000 0.09150 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005010 4-Str 2-Wheel Tractors PUMP HP 3 6 ALL GALLONS 2.90000 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005010 4-Str 2-Wheel Tractors PUMP HP 6 11 ALL GALLONS 2.90000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005010 4-Str 2-Wheel Tractors PUMP HP 11 16 ALL GALLONS 2.90000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005015 4-Str Agricultural Tractors PUMP HP 16 25 ALL GALLONS 10.40400 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005015 4-Str Agricultural Tractors PUMP HP 25 40 ALL GALLONS 15.55500 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005015 4-Str Agricultural Tractors PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005015 4-Str Agricultural Tractors PUMP HP 50 100 ALL GALLONS 22.20000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005015 4-Str Agricultural Tractors PUMP HP 100 175 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005020 4-Str Combines PUMP HP 50 100 ALL GALLONS 116.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005020 4-Str Combines PUMP HP 100 175 ALL GALLONS 120.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005025 4-Str Balers PUMP HP 25 40 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005025 4-Str Balers PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005025 4-Str Balers PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005025 4-Str Balers PUMP HP 100 175 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005030 4-Str Agricultural Mowers PUMP HP 3 6 ALL GALLONS 2.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005030 4-Str Agricultural Mowers PUMP HP 6 11 ALL GALLONS 2.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005030 4-Str Agricultural Mowers PUMP HP 11 16 ALL GALLONS 2.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005030 4-Str Agricultural Mowers PUMP HP 16 25 ALL GALLONS 2.90000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 3 6 ALL GALLONS 1.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 16 25 ALL GALLONS 10.46010 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 25 40 ALL GALLONS 16.97280 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 50 100 ALL GALLONS 38.88750 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005035 4-Str Sprayers PUMP HP 100 175 ALL GALLONS 66.45300 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005040 4-Str Tillers > 6 HP PUMP HP 6 11 ALL GALLONS 0.57000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005040 4-Str Tillers > 6 HP PUMP HP 11 16 ALL GALLONS 1.10000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005045 4-Str Swathers PUMP HP 50 100 ALL GALLONS 40.80000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005045 4-Str Swathers PUMP HP 100 175 ALL GALLONS 62.16900 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 3 6 ALL GALLONS 0.31000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 16 25 ALL GALLONS 9.50640 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 25 40 ALL GALLONS 16.43730 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 40 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 50 100 ALL GALLONS 33.60900 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 100 175 ALL GALLONS 50.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005055 4-Str Other Agricultural Equipment PUMP HP 175 300 ALL GALLONS 50.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 3 6 ALL GALLONS 0.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 6 16 ALL GALLONS 1.00000 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 16 25 ALL GALLONS 9.18000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 50 100 ALL GALLONS 37.55640 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 100 175 ALL GALLONS 61.45500 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265005060 4-Str Irrigation Sets PUMP HP 175 300 ALL GALLONS 107.20200 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets CONTAINER HP 3 6 ALL GALLONS 0.80000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets CONTAINER HP 6 11 ALL GALLONS 4.49616 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets CONTAINER HP 11 16 ALL GALLONS 7.31340 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 16 25 ALL GALLONS 10.56720 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 25 40 ALL GALLONS 15.46320 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 40 50 ALL GALLONS 23.45490 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006005 4-Str Generator Sets PUMP HP 175 300 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps CONTAINER HP 3 6 ALL GALLONS 0.80000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps CONTAINER HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps CONTAINER HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps PUMP HP 16 25 ALL GALLONS 9.35850 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps PUMP HP 25 40 ALL GALLONS 16.29450 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps PUMP HP 40 50 ALL GALLONS 23.46000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006010 4-Str Pumps PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors CONTAINER HP 3 6 ALL GALLONS 1.10000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors CONTAINER HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors CONTAINER HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors PUMP HP 16 25 ALL GALLONS 8.70000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors PUMP HP 25 50 ALL GALLONS 20.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006015 4-Str Air Compressors PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders CONTAINER HP 3 6 ALL GALLONS 1.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders CONTAINER HP 6 11 ALL GALLONS 1.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders CONTAINER HP 11 16 ALL GALLONS 1.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders PUMP HP 16 25 ALL GALLONS 10.00000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders PUMP HP 25 40 ALL GALLONS 23.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders PUMP HP 40 50 ALL GALLONS 23.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders PUMP HP 50 100 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006025 4-Str Welders PUMP HP 100 175 ALL GALLONS 58.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers CONTAINER HP 1 3 ALL GALLONS 0.80000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers CONTAINER HP 3 6 ALL GALLONS 0.80000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers CONTAINER HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers CONTAINER HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers PUMP HP 16 25 ALL GALLONS 9.20000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers PUMP HP 25 40 ALL GALLONS 18.90000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers PUMP HP 40 50 ALL GALLONS 18.90000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006030 4-Str Pressure Washers PUMP HP 50 100 ALL GALLONS 18.90000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 3 6 ALL GALLONS 0.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 6 11 ALL GALLONS 4.50000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 11 16 ALL GALLONS 4.50000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 16 25 ALL GALLONS 9.35850 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 25 40 ALL GALLONS 17.29410 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 40 50 ALL GALLONS 23.46000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 50 100 ALL GALLONS 34.06290 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265006035 4-Str Hydro Power Units PUMP HP 100 175 ALL GALLONS 57.63000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265007010 4-Str Shredders > 6 HP CONTAINER HP 6 11 ALL GALLONS 1.00000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265007010 4-Str Shredders > 6 HP PUMP HP 11 16 ALL GALLONS 1.00000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265007010 4-Str Shredders > 6 HP PUMP HP 16 25 ALL GALLONS 1.00000 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder PUMP HP 3 6 ALL GALLONS 0.50000 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder PUMP HP 6 11 ALL GALLONS 1.00000 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 3 6 ALL GALLONS 2.47911 0.50000 0.20000 0.21860 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 6 11 ALL GALLONS 4.16721 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 11 16 ALL GALLONS 8.16000 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 16 25 ALL GALLONS 9.36360 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 25 40 ALL GALLONS 18.87000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 40 50 ALL GALLONS 23.46000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 50 100 ALL GALLONS 41.33550 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265008005 4-Str Airport Support Equipment PUMP HP 100 175 ALL GALLONS 57.63000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265010010 4-Str Other Oil Field Equipment PUMP HP 6 11 ALL GALLONS 4.87968 0.50000 0.10000 0.39900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.23551 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265010010 4-Str Other Oil Field Equipment PUMP HP 11 16 ALL GALLONS 6.46680 0.50000 0.10000 1.84780 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.23551 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265010010 4-Str Other Oil Field Equipment PUMP HP 16 25 ALL GALLONS 10.35810 0.50000 0.10000 2.83900 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.23551 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2265010010 4-Str Other Oil Field Equipment PUMP HP 25 40 ALL GALLONS 18.87000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.23551 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267001060 LPG - Specialty Vehicle Carts PUMP HP 25 175 ALL GALLONS 6.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 1.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002003 LPG - Pavers PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002015 LPG - Rollers PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002021 LPG - Paving Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002024 LPG - Surfacing Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002030 LPG - Trenchers PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002033 LPG - Bore/Drill Rigs PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002039 LPG - Concrete/Industrial Saws PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002045 LPG - Cranes PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002054 LPG - Crushing/Proc. Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002057 LPG - Rough Terrain Forklift PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002060 LPG - Rubber Tire Loaders PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002066 LPG - Tractors/Loaders/Backhoes PUMP HP 25 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002066 LPG - Tractors/Loaders/Backhoes PUMP HP 50 100 ALL GALLONS 23.20000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002066 LPG - Tractors/Loaders/Backhoes PUMP HP 100 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002072 LPG - Skid Steer Loaders PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267002081 LPG - Other Construction Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003010 LPG - Aerial Lifts PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003020 LPG - Forklifts PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003030 LPG - Sweepers/Scrubbers PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003040 LPG - Other General Industrial Eqp PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003050 LPG - Other Material Handling Eqp PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267003070 LPG - Terminal Tractors PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267004066 LPG - Chippers/Stump Grinders (com) CONTAINER HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.15250 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.50000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267005055 LPG - Other Agricultural Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267005060 LPG - Irrigation Sets PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006005 LPG - Generator Sets PUMP HP 25 50 ALL GALLONS 14.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006005 LPG - Generator Sets PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006005 LPG - Generator Sets PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006005 LPG - Generator Sets PUMP HP 175 300 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006005 LPG - Generator Sets PUMP HP 300 600 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006010 LPG - Pumps PUMP HP 25 50 ALL GALLONS 14.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006010 LPG - Pumps PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006010 LPG - Pumps PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006015 LPG - Air Compressors PUMP HP 25 50 ALL GALLONS 20.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006015 LPG - Air Compressors PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006015 LPG - Air Compressors PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006025 LPG - Welders PUMP HP 25 40 ALL GALLONS 23.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006025 LPG - Welders PUMP HP 40 50 ALL GALLONS 23.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006025 LPG - Welders PUMP HP 50 100 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006025 LPG - Welders PUMP HP 100 175 ALL GALLONS 58.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006030 LPG - Pressure Washers PUMP HP 25 50 ALL GALLONS 18.90000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006030 LPG - Pressure Washers PUMP HP 50 100 ALL GALLONS 18.90000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267006035 LPG - Hydro Power Units PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2267008005 LPG - Airport Support Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268003020 CNG - Forklifts PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268002081 CNG - Other Construction Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268003030 CNG - Sweepers/Scrubbers PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268003040 CNG - Other General Industrial Eqp PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268003060 CNG - AC\Refrigeration PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268003070 CNG - Terminal Tractors PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268005055 CNG - Other Agricultural Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268005060 CNG - Irrigation Sets PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006005 CNG - Generator Sets PUMP HP 25 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006005 CNG - Generator Sets PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006005 CNG - Generator Sets PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006005 CNG - Generator Sets PUMP HP 175 300 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006005 CNG - Generator Sets PUMP HP 300 600 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006010 CNG - Pumps PUMP HP 25 50 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006010 CNG - Pumps PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006010 CNG - Pumps PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006010 CNG - Pumps PUMP HP 175 300 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006010 CNG - Pumps PUMP HP 300 600 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006015 CNG - Air Compressors PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006015 CNG - Air Compressors PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 25 40 ALL GALLONS 20.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 40 50 ALL GALLONS 20.50000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 50 100 ALL GALLONS 28.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 100 175 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 175 300 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006020 CNG - Gas Compressors PUMP HP 300 600 ALL GALLONS 42.00000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268006035 CNG - Hydro Power Units PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2268010010 CNG - Other Oil Field Equipment PUMP HP 25 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2270000000 All Diesel Equipment PUMP HP 0 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2282005010 4-Str Outboard CONTAINER HP 1 3 ALL GALLONS 2.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.00000 0.038100 2.44040 0.006350 0.00000 0.006350 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 0.000 2.000 1.820 2.000 +2282005010 4-Str Outboard CONTAINER HP 3 6 ALL GALLONS 5.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.00000 0.038100 2.44040 0.006350 0.00000 0.006350 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 0.000 2.000 1.820 2.000 +2282005010 4-Str Outboard CONTAINER HP 6 11 ALL GALLONS 6.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.00000 0.038100 2.44040 0.006350 0.00000 0.006350 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 0.000 2.000 1.820 2.000 +2282005010 4-Str Outboard CONTAINER HP 11 16 ALL GALLONS 6.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.00000 0.038100 2.44040 0.006350 0.00000 0.006350 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 0.000 2.000 1.820 2.000 +2282005010 4-Str Outboard PUMP HP 16 25 ALL GALLONS 9.14158 0.50000 0.00000 0.00000 0.000000 0.00000 0.00000 0.038100 2.44040 0.006350 0.00000 0.006350 1.00000 1.000 0.000 0.000 0.000 0.000 1.100 0.000 2.000 1.820 2.000 +2282005010 4-Str Outboard PUMP HP 25 40 ALL GALLONS 15.27840 0.50000 0.33333 0.00000 0.000000 0.00000 1.83000 0.038100 1.83000 0.009525 1.52500 0.015875 1.00000 0.000 0.603 0.067 0.297 0.033 1.100 0.000 2.000 2.980 2.000 +2282005010 4-Str Outboard PUMP HP 40 50 ALL GALLONS 20.93990 0.50000 0.33333 0.00000 0.000000 0.00000 2.44000 0.038100 2.44000 0.009525 1.83000 0.015875 1.00000 0.000 0.536 0.134 0.264 0.066 1.100 0.000 2.000 2.980 2.000 +2282005010 4-Str Outboard PUMP HP 50 100 ALL GALLONS 33.17535 0.50000 0.33333 0.00000 0.000000 0.00000 3.05000 0.038100 3.05000 0.009525 2.13500 0.015875 1.00000 0.000 0.469 0.201 0.231 0.099 1.100 0.000 2.000 2.980 2.000 +2282005010 4-Str Outboard PUMP HP 100 175 ALL GALLONS 59.16136 0.50000 0.33333 0.00000 0.000000 0.00000 3.66000 0.038100 3.66000 0.009525 2.44000 0.015875 1.00000 0.000 0.402 0.268 0.198 0.132 1.100 0.000 2.000 2.980 2.000 +2282005010 4-Str Outboard PUMP HP 175 300 ALL GALLONS 92.47676 0.50000 0.33333 0.00000 0.000000 0.00000 4.27000 0.038100 4.27000 0.009525 2.74500 0.015875 1.00000 0.000 0.335 0.335 0.165 0.165 1.100 0.000 2.000 2.980 2.000 +2282005015 2-Str Personal Water Craft CONTAINER HP 0 25 ALL GALLONS 4.41840 0.50000 0.00000 0.00000 0.000000 0.00000 0.30500 0.038100 0.61000 0.006350 0.61000 0.006350 1.00000 0.000 0.950 0.050 0.000 0.000 1.100 0.000 2.000 2.980 2.000 +2282005015 2-Str Personal Water Craft PUMP HP 25 40 ALL GALLONS 8.82000 0.50000 0.00000 0.00000 0.000000 0.00000 0.30500 0.038100 0.91500 0.006350 0.61000 0.006350 1.00000 0.000 0.950 0.050 0.000 0.000 1.100 0.000 2.000 2.980 2.000 +2282005015 2-Str Personal Water Craft PUMP HP 40 50 ALL GALLONS 10.54800 0.50000 0.00000 0.00000 0.000000 0.00000 0.30500 0.038100 1.22000 0.006350 0.61000 0.006350 1.00000 0.000 0.950 0.050 0.000 0.000 1.100 0.000 2.000 2.980 2.000 +2282005015 2-Str Personal Water Craft PUMP HP 50 100 ALL GALLONS 15.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.45750 0.038100 1.52500 0.006350 0.61000 0.006350 1.00000 0.000 0.950 0.050 0.000 0.000 1.100 0.000 2.000 2.980 2.000 +2282005015 2-Str Personal Water Craft PUMP HP 100 300 ALL GALLONS 18.00000 0.50000 0.00000 0.00000 0.000000 0.00000 0.61000 0.038100 1.83000 0.006350 0.61000 0.006350 1.00000 0.000 0.950 0.050 0.000 0.000 1.100 0.000 2.000 2.980 2.000 +2282010005 4-Str Inboard/Sterndrive CONTAINER HP 3 6 ALL GALLONS 3.00000 0.50000 0.33333 0.00000 0.000000 0.00000 0.31000 0.038100 1.22000 0.009525 0.30500 0.015875 1.00000 0.000 0.667 0.000 0.333 0.000 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive CONTAINER HP 6 11 ALL GALLONS 5.00000 0.50000 0.33333 0.00000 0.000000 0.00000 0.31000 0.038100 1.22000 0.009525 0.30500 0.015875 1.00000 0.000 0.667 0.000 0.333 0.000 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive CONTAINER HP 11 25 ALL GALLONS 6.00000 0.50000 0.33333 0.00000 0.000000 0.00000 0.31000 0.038100 1.22000 0.009525 0.30500 0.015875 1.00000 0.000 0.667 0.000 0.333 0.000 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 25 50 ALL GALLONS 10.16175 0.50000 0.33333 0.00000 0.000000 0.00000 0.61000 0.038100 1.22000 0.009525 1.22000 0.015875 1.00000 0.000 0.603 0.067 0.297 0.033 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 50 100 ALL GALLONS 19.85993 0.50000 0.33333 0.00000 0.000000 0.00000 1.22000 0.038100 1.52500 0.009525 1.83000 0.015875 1.00000 0.000 0.536 0.134 0.264 0.066 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 100 175 ALL GALLONS 49.92495 0.50000 0.33333 0.00000 0.000000 0.00000 1.83000 0.038100 1.83000 0.009525 2.44000 0.015875 1.00000 0.000 0.469 0.201 0.231 0.099 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 175 300 ALL GALLONS 70.40185 0.50000 0.33333 0.00000 0.000000 0.00000 2.44000 0.038100 2.13500 0.009525 3.05000 0.015875 1.00000 0.000 0.402 0.268 0.198 0.132 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 300 600 ALL GALLONS 126.99680 0.50000 0.33333 0.00000 0.000000 0.00000 3.05000 0.038100 2.44000 0.009525 3.66000 0.015875 1.00000 0.000 0.335 0.335 0.165 0.165 1.100 0.000 2.000 1.820 2.000 +2282010005 4-Str Inboard/Sterndrive PUMP HP 600 750 ALL GALLONS 210.10500 0.50000 0.33333 0.00000 0.000000 0.00000 3.66000 0.038100 2.74500 0.009525 4.27000 0.015875 1.00000 0.000 0.000 0.670 0.000 0.330 1.100 0.000 2.000 1.820 2.000 +2282020005 Dsl - Inboard PUMP HP 0 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2282020010 Dsl - Outboard PUMP HP 0 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2282020025 Diesel Sailboat Aux. Outboard (unused) PUMP HP 0 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285002015 Dsl - Railway Maintenance PUMP HP 0 9999 ALL GAL/HP 0.51000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance CONTAINER HP 1 3 ALL GALLONS 1.53000 0.50000 0.20000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 3 6 ALL GALLONS 1.79520 0.50000 0.20000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 6 11 ALL GALLONS 3.36090 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 11 16 ALL GALLONS 6.15570 0.50000 0.10000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 16 25 ALL GALLONS 9.27690 0.50000 0.00000 0.10000 0.006354 0.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 25 40 ALL GALLONS 16.90650 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285004015 4-Str Railway Maintenance PUMP HP 100 175 ALL GALLONS 57.63000 0.50000 1.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +2285006015 LPG - Railway Maintenance PUMP HP 25 175 ALL GAL/HP 0.51000 0.50000 0.00000 0.10000 0.006354 1.00000 0.00000 0.000000 0.00000 0.000000 0.00000 0.000000 0.25000 1.000 0.000 0.000 0.000 0.000 1.100 1.820 0.000 0.000 0.000 +/END/ diff --git a/NONROAD/NR08a/DATA/GROWTH/NATION.GRW b/NONROAD/NR08a/DATA/GROWTH/NATION.GRW new file mode 100644 index 0000000..c18bb10 --- /dev/null +++ b/NONROAD/NR08a/DATA/GROWTH/NATION.GRW @@ -0,0 +1,1015 @@ +------------------------------------------------------------------------ +This file contains the growth data used in the NONROAD model. +The data included here is based on national growth estimates +for the various source category groups. The data is operated +into four packets. The first packet provides a cross reference +of SCC code to growth indicator. The second packet contains the +actual growth values The last two packets define the scrappage +curves used for model year distribution. +------------------------------------------------------------------------ + +12/17/02 10d, combines PWC addition from 10a2 with final RecFRM 10c growth. +8/04/04 10j, expand to full 99-value PSR scrappage curve, and then interpolate to ~200. + +------------------------------------------------------------------------ +This packet provides the cross reference of SCC to growth +indicator code. The indicator code is an arbitrary code +that identifies an actual predicted value such as human +population or employment. The indicator must match one of +the codes provided in the /GROWTH/ packet. +The cross reference is by FIPS code, SCC code, HP range, +and technology type. Global values can be used for the FIPS code, +the SCC code and the technology type. The model used the best +match of the codes provided. + +The format of the data is as follows: + + 1- 5 FIPS code (00000 = applies to entire nation) + (ss000 = applies to all of state ss) + 7-10 indicator code (arbitrary alphanumeric code) +12-21 SCC code (2260004000 = applies to all 2-stroke lawn and garden) + (2600000000 = applies to all 2-stroke) +23-27 beginning of HP range +28-32 ending of HP range +34-43 technology type (ALL = applies to all tech types) +------------------------------------------------------------------------ +The indicator codes are arbitrary. The codes in this file are: + +010 -- Airport Service - Total +011 -- Airport Service - Diesel +012 -- Airport Service - Gasoline +013 -- Airport Service - LPG +014 -- Airport Service - CNG +020 -- Construction- Total +021 -- Construction - Diesel +022 -- Construction - Gasoline +023 -- Construction - LPG +024 -- Construction - CNG +030 -- Farm - Total +031 -- Farm - Diesel +032 -- Farm - Gasoline +033 -- Farm - LPG +034 -- Farm - CNG +040 -- Industrial - Total +041 -- Industrial - Diesel +042 -- Industrial - Gasoline +043 -- Industrial - LPG +044 -- Industrial - CNG +050 -- Lawn & Garden -Total +051 -- Lawn & Garden - Diesel +052 -- Lawn & Garden - Gasoline +053 -- Lawn & Garden - LPG +054 -- Lawn & Garden - CNG +060 -- Light Commercial - Total +061 -- Light Commercial - Diesel +062 -- Light Commercial - Gasoline +063 -- Light Commercial - LPG +064 -- Light Commercial - CNG +070 -- Logging - Total +071 -- Logging - Diesel +072 -- Logging - Gasoline +073 -- Logging - LPG +074 -- Logging - CNG +080 -- Railway - Total +081 -- Railway - Diesel +082 -- Railway - Gasoline +083 -- Railway - LPG +084 -- Railway - CNG +090 -- Recreational - Total +091 -- Recreational - Diesel +092 -- Recreational - Gasoline +093 -- Recreational - LPG +094 -- Recreational - CNG +095 -- Recreational - 2sATV +096 -- Recreational - 4sATV +097 -- Recreational - Offroad MC +098 -- Recreational - Snowmobile +099 -- Rec Marine - PWC (backcast to ~zero in 1970; =092 for 1996+) +100 -- Oil Field - Total +101 -- Oil Field - Diesel +102 -- Oil Field - Gasoline +103 -- Oil Field - LPG +104 -- Oil Field - CNG +------------------------------------------------------------------------ + +/INDICATORS/ +00000 092 2260001000 0 9999 ALL 2-Stroke Recreational Vehicles +00000 097 2260001010 0 9999 ALL 2-Stroke Offroad Motorcycles +00000 098 2260001020 0 9999 ALL 2-Stroke Snowmobiles +00000 095 2260001030 0 9999 ALL 2-Stroke ATV +00000 022 2260002000 0 9999 ALL 2-Stroke Construction Equipment +00000 042 2260003000 0 9999 ALL 2-Stroke Industrial Equipment +00000 052 2260004000 0 9999 ALL 2-Stroke Lawn & Garden Equipment +00000 032 2260005000 0 9999 ALL 2-Stroke Farm Equipment +00000 062 2260006000 0 9999 ALL 2-Stroke Light Commercial +00000 072 2260007000 0 9999 ALL 2-Stroke Logging Equipment +00000 012 2260008000 0 9999 ALL 2-Stroke Airport Service Equipment +00000 020 2260009000 0 9999 ALL 2-Stroke Underground Mining Equipment +00000 100 2260010000 0 9999 ALL 2-Stroke Oil Field Equipment +00000 082 2285003000 0 9999 ALL 2-Stroke Railway Maintenance +00000 092 2265001000 0 9999 ALL 4-Stroke Recreational Vehicles +00000 097 2265001010 0 9999 ALL 4-Stroke Offroad Motorcycles +00000 098 2265001020 0 9999 ALL 4-Stroke Snowmobiles +00000 096 2265001030 0 9999 ALL 4-Stroke ATV +00000 022 2265002000 0 9999 ALL 4-Stroke Construction Equipment +00000 042 2265003000 0 9999 ALL 4-Stroke Industrial Equipment +00000 052 2265004000 0 9999 ALL 4-Stroke Lawn & Garden Equipment +00000 032 2265005000 0 9999 ALL 4-Stroke Farm Equipment +00000 062 2265006000 0 9999 ALL 4-Stroke Light Commercial +00000 072 2265007000 0 9999 ALL 4-Stroke Logging Equipment +00000 012 2265008000 0 9999 ALL 4-Stroke Airport Service Equipment +00000 020 2265009000 0 9999 ALL 4-Stroke Underground Mining Equipment +00000 100 2265010000 0 9999 ALL 4-Stroke Oil Field Equipment +00000 082 2285004000 0 9999 ALL 4-Stroke Railway Maintenance +00000 090 2267001000 0 9999 ALL LPG Recreational Vehicles +00000 020 2267002000 0 9999 ALL LPG Construction Equipment +00000 043 2267003000 0 9999 ALL LPG Industrial Equipment +00000 050 2267004000 0 9999 ALL LPG Lawn & Garden Equipment +00000 033 2267005000 0 9999 ALL LPG Farm Equipment +00000 063 2267006000 0 9999 ALL LPG Light Commercial +00000 070 2267007000 0 9999 ALL LPG Logging Equipment +00000 010 2267008000 0 9999 ALL LPG Airport Service Equipment +00000 020 2267009000 0 9999 ALL LPG Underground Mining Equipment +00000 100 2267010000 0 9999 ALL LPG Oil Field Equipment +00000 080 2285006000 0 9999 ALL LPG Railway Maintenance +00000 090 2268001000 0 9999 ALL CNG Recreational Vehicles +00000 020 2268002000 0 9999 ALL CNG Construction Equipment +00000 040 2268003000 0 9999 ALL CNG Industrial Equipment +00000 050 2268004000 0 9999 ALL CNG Lawn & Garden Equipment +00000 034 2268005000 0 9999 ALL CNG Farm Equipment +00000 064 2268006000 0 9999 ALL CNG Light Commercial +00000 070 2268007000 0 9999 ALL CNG Logging Equipment +00000 010 2268008000 0 9999 ALL CNG Airport Service Equipment +00000 020 2268009000 0 9999 ALL CNG Underground Mining Equipment +00000 104 2268010000 0 9999 ALL CNG Oil Field Equipment +00000 080 2285008000 0 9999 ALL CNG Railway Maintenance +00000 091 2270001000 0 9999 ALL Diesel Recreational Vehicles +00000 021 2270002000 0 9999 ALL Diesel Construction Equipment +00000 041 2270003000 0 9999 ALL Diesel Industrial Equipment +00000 051 2270004000 0 9999 ALL Diesel Lawn & Garden Equipment Lawn mowers +00000 031 2270005000 0 9999 ALL Diesel Farm Equipment +00000 061 2270006000 0 9999 ALL Diesel Light Commercial +00000 071 2270007000 0 9999 ALL Diesel Logging Equipment +00000 011 2270008000 0 9999 ALL Diesel Airport Service Equipment +00000 020 2270009000 0 9999 ALL Diesel Underground Mining Equipment +00000 101 2270010000 0 9999 ALL Diesel Oil Field Equipment +00000 081 2285002000 0 9999 ALL Diesel Railway Maintenance +00000 091 2282020000 0 9999 ALL Diesel Recreational Marine +00000 092 2282010000 0 9999 ALL 4-Stroke Recreational Marine +00000 092 2282005000 0 9999 ALL 2-Stroke Recreational Marine +00000 099 2282005015 0 9999 ALL 2-Stroke Rec Marine PWC +/END/ + + +------------------------------------------------------------------------ +This packet contains the growth estimates for the indicator codes +listed in the /INDICATORS/ packet. The indicator value is an +actual estimated value such as human population or employment +and should be applied for as many years as possible. The +model will use the data for the closest year to the year of +interest. The data is identified by FIPS code, subregion +code, year, and arbitrary indicator code. The FIPS code and +subregion code can be global. + +The format of the data is as follows: + + 1- 5 FIPS code (00000 = applies to entire nation) + (ss000 = applies to all of state ss) + 6-10 subregion code (blank = applies to all subregions) +11-15 year of estimate (4-digit year) +17-20 indicator code (arbitrary alphanumeric code) +26-45 indicator value + +------------------------------------------------------------------------ + +/GROWTH/ +00000 1970 095 1 +00000 1970 096 1 +00000 1970 097 500 +00000 1970 098 500 +00000 1970 099 1 +00000 1987 099 208 +00000 1990 095 1000 +00000 1990 096 1000 +00000 1990 097 1000 +00000 1990 098 1000 +00000 1990 099 351 +00000 1993 099 544 +00000 1996 010 1000 +00000 1996 011 1000 +00000 1996 012 1000 +00000 1996 013 1000 +00000 1996 014 1000 +00000 1996 020 1000 +00000 1996 021 1000 +00000 1996 022 1000 +00000 1996 023 1000 +00000 1996 024 1000 +00000 1996 030 1000 +00000 1996 031 1000 +00000 1996 032 1000 +00000 1996 033 1000 +00000 1996 034 1000 +00000 1996 040 1000 +00000 1996 041 1000 +00000 1996 042 1000 +00000 1996 043 1000 +00000 1996 044 1000 +00000 1996 050 1000 +00000 1996 051 1000 +00000 1996 052 1000 +00000 1996 053 1000 +00000 1996 054 1000 +00000 1996 060 1000 +00000 1996 061 1000 +00000 1996 062 1000 +00000 1996 063 1000 +00000 1996 064 1000 +00000 1996 070 1000 +00000 1996 071 1000 +00000 1996 072 1000 +00000 1996 073 1000 +00000 1996 074 1000 +00000 1996 080 1000 +00000 1996 081 1000 +00000 1996 082 1000 +00000 1996 083 1000 +00000 1996 084 1000 +00000 1996 090 1000 +00000 1996 091 1000 +00000 1996 092 1000 +00000 1996 093 1000 +00000 1996 094 1000 +00000 1996 095 1000 +00000 1996 096 1000 +00000 1996 097 1000 +00000 1996 098 1000 +00000 1996 099 1000 +00000 1996 100 1000 +00000 1996 101 1000 +00000 1996 102 1000 +00000 1996 103 1000 +00000 1996 104 1000 +00000 1997 095 1372 +00000 1997 096 980 +00000 1997 097 968 +00000 1997 098 1063 +00000 1998 010 1120 +00000 1998 011 1139 +00000 1998 012 974 +00000 1998 013 1000 +00000 1998 014 1000 +00000 1998 020 1044 +00000 1998 021 1063 +00000 1998 022 1000 +00000 1998 023 1000 +00000 1998 024 1000 +00000 1998 030 1055 +00000 1998 031 1063 +00000 1998 032 1037 +00000 1998 033 1000 +00000 1998 034 804 +00000 1998 040 1052 +00000 1998 041 1068 +00000 1998 042 921 +00000 1998 043 1082 +00000 1998 044 1000 +00000 1998 050 1046 +00000 1998 051 1128 +00000 1998 052 1045 +00000 1998 053 1000 +00000 1998 054 1000 +00000 1998 060 1072 +00000 1998 061 1088 +00000 1998 062 1068 +00000 1998 063 1164 +00000 1998 064 1079 +00000 1998 070 1093 +00000 1998 071 967 +00000 1998 072 1105 +00000 1998 073 1000 +00000 1998 074 1000 +00000 1998 080 1059 +00000 1998 081 1090 +00000 1998 082 1038 +00000 1998 083 1000 +00000 1998 084 1000 +00000 1998 090 1006 +00000 1998 091 1064 +00000 1998 092 1005 +00000 1998 093 1000 +00000 1998 094 1000 +00000 1998 095 1865 +00000 1998 096 974 +00000 1998 097 962 +00000 1998 098 1121 +00000 1998 099 1005 +00000 1998 100 1011 +00000 1998 101 1011 +00000 1998 102 1000 +00000 1998 103 1000 +00000 1998 104 1011 +00000 1999 095 2431 +00000 1999 096 1011 +00000 1999 097 991 +00000 1999 098 1172 +00000 2000 010 1240 +00000 2000 011 1277 +00000 2000 012 948 +00000 2000 013 1000 +00000 2000 014 1000 +00000 2000 020 1088 +00000 2000 021 1125 +00000 2000 022 999 +00000 2000 023 1000 +00000 2000 024 1000 +00000 2000 030 1109 +00000 2000 031 1126 +00000 2000 032 1074 +00000 2000 033 1000 +00000 2000 034 607 +00000 2000 040 1103 +00000 2000 041 1136 +00000 2000 042 841 +00000 2000 043 1164 +00000 2000 044 1000 +00000 2000 050 1091 +00000 2000 051 1255 +00000 2000 052 1090 +00000 2000 053 1000 +00000 2000 054 1000 +00000 2000 060 1143 +00000 2000 061 1175 +00000 2000 062 1136 +00000 2000 063 1327 +00000 2000 064 1158 +00000 2000 070 1185 +00000 2000 071 933 +00000 2000 072 1209 +00000 2000 073 1000 +00000 2000 074 1000 +00000 2000 080 1118 +00000 2000 081 1179 +00000 2000 082 1076 +00000 2000 083 1000 +00000 2000 084 1000 +00000 2000 090 1012 +00000 2000 091 1127 +00000 2000 092 1010 +00000 2000 093 1000 +00000 2000 094 1000 +00000 2000 095 3176 +00000 2000 096 1089 +00000 2000 097 1083 +00000 2000 098 1213 +00000 2000 099 1010 +00000 2000 100 1022 +00000 2000 101 1022 +00000 2000 102 1000 +00000 2000 103 1000 +00000 2000 104 1022 +00000 2001 095 4053 +00000 2001 096 1193 +00000 2001 097 1183 +00000 2001 098 1256 +00000 2002 095 4959 +00000 2002 096 1316 +00000 2002 097 1285 +00000 2002 098 1307 +00000 2003 095 5895 +00000 2003 096 1453 +00000 2003 097 1389 +00000 2003 098 1364 +00000 2004 095 6824 +00000 2004 096 1596 +00000 2004 097 1495 +00000 2004 098 1427 +00000 2005 010 1553 +00000 2005 011 1622 +00000 2005 012 1010 +00000 2005 013 1000 +00000 2005 014 1000 +00000 2005 020 1206 +00000 2005 021 1286 +00000 2005 022 1013 +00000 2005 023 1000 +00000 2005 024 1000 +00000 2005 030 1237 +00000 2005 031 1271 +00000 2005 032 1166 +00000 2005 033 1000 +00000 2005 034 88 +00000 2005 040 1243 +00000 2005 041 1326 +00000 2005 042 643 +00000 2005 043 1348 +00000 2005 044 1000 +00000 2005 050 1212 +00000 2005 051 1604 +00000 2005 052 1210 +00000 2005 053 1000 +00000 2005 054 1000 +00000 2005 060 1349 +00000 2005 061 1403 +00000 2005 062 1335 +00000 2005 063 1776 +00000 2005 064 1373 +00000 2005 070 1405 +00000 2005 071 893 +00000 2005 072 1453 +00000 2005 073 1000 +00000 2005 074 1000 +00000 2005 080 1243 +00000 2005 081 1394 +00000 2005 082 1138 +00000 2005 083 1000 +00000 2005 084 1000 +00000 2005 090 1054 +00000 2005 091 1296 +00000 2005 092 1050 +00000 2005 093 1000 +00000 2005 094 1000 +00000 2005 095 7726 +00000 2005 096 1734 +00000 2005 097 1600 +00000 2005 098 1496 +00000 2005 099 1050 +00000 2005 100 1015 +00000 2005 101 1015 +00000 2005 102 1000 +00000 2005 103 1000 +00000 2005 104 1015 +00000 2006 095 8587 +00000 2006 096 1868 +00000 2006 097 1705 +00000 2006 098 1567 +00000 2007 095 9386 +00000 2007 096 1997 +00000 2007 097 1810 +00000 2007 098 1635 +00000 2008 095 10109 +00000 2008 096 2121 +00000 2008 097 1912 +00000 2008 098 1696 +00000 2009 095 10734 +00000 2009 096 2239 +00000 2009 097 2010 +00000 2009 098 1749 +00000 2010 010 1867 +00000 2010 011 1967 +00000 2010 012 1073 +00000 2010 013 1000 +00000 2010 014 1000 +00000 2010 020 1324 +00000 2010 021 1446 +00000 2010 022 1027 +00000 2010 023 1000 +00000 2010 024 1000 +00000 2010 030 1365 +00000 2010 031 1414 +00000 2010 032 1258 +00000 2010 033 1000 +00000 2010 034 0 +00000 2010 040 1384 +00000 2010 041 1515 +00000 2010 042 444 +00000 2010 043 1533 +00000 2010 044 1000 +00000 2010 050 1333 +00000 2010 051 1953 +00000 2010 052 1329 +00000 2010 053 1000 +00000 2010 054 1000 +00000 2010 060 1554 +00000 2010 061 1630 +00000 2010 062 1535 +00000 2010 063 2225 +00000 2010 064 1587 +00000 2010 070 1624 +00000 2010 071 854 +00000 2010 072 1698 +00000 2010 073 1000 +00000 2010 074 1000 +00000 2010 080 1368 +00000 2010 081 1610 +00000 2010 082 1200 +00000 2010 083 1000 +00000 2010 084 1000 +00000 2010 090 1096 +00000 2010 091 1466 +00000 2010 092 1089 +00000 2010 093 1000 +00000 2010 094 1000 +00000 2010 095 11332 +00000 2010 096 2349 +00000 2010 097 2101 +00000 2010 098 1800 +00000 2010 099 1089 +00000 2010 100 1015 +00000 2010 101 1015 +00000 2010 102 1000 +00000 2010 103 1000 +00000 2010 104 1015 +00000 2011 095 11876 +00000 2011 096 2448 +00000 2011 097 2180 +00000 2011 098 1852 +00000 2012 095 12345 +00000 2012 096 2532 +00000 2012 097 2241 +00000 2012 098 1908 +00000 2013 095 12731 +00000 2013 096 2597 +00000 2013 097 2288 +00000 2013 098 1967 +00000 2014 095 13017 +00000 2014 096 2649 +00000 2014 097 2331 +00000 2014 098 2026 +00000 2015 010 2180 +00000 2015 011 2312 +00000 2015 012 1136 +00000 2015 013 1000 +00000 2015 014 1000 +00000 2015 020 1442 +00000 2015 021 1607 +00000 2015 022 1041 +00000 2015 023 1000 +00000 2015 024 1000 +00000 2015 030 1493 +00000 2015 031 1558 +00000 2015 032 1349 +00000 2015 033 1000 +00000 2015 034 0 +00000 2015 040 1525 +00000 2015 041 1704 +00000 2015 042 245 +00000 2015 043 1717 +00000 2015 044 1000 +00000 2015 050 1453 +00000 2015 051 2301 +00000 2015 052 1449 +00000 2015 053 1000 +00000 2015 054 1000 +00000 2015 060 1759 +00000 2015 061 1858 +00000 2015 062 1734 +00000 2015 063 2674 +00000 2015 064 1801 +00000 2015 070 1843 +00000 2015 071 815 +00000 2015 072 1942 +00000 2015 073 1000 +00000 2015 074 1000 +00000 2015 080 1493 +00000 2015 081 1825 +00000 2015 082 1263 +00000 2015 083 1000 +00000 2015 084 1000 +00000 2015 090 1138 +00000 2015 091 1635 +00000 2015 092 1129 +00000 2015 093 1000 +00000 2015 094 1000 +00000 2015 095 13241 +00000 2015 096 2690 +00000 2015 097 2371 +00000 2015 098 2083 +00000 2015 099 1129 +00000 2015 100 1020 +00000 2015 101 1020 +00000 2015 102 1000 +00000 2015 103 1000 +00000 2015 104 1020 +00000 2016 095 13420 +00000 2016 096 2723 +00000 2016 097 2408 +00000 2016 098 2135 +00000 2017 095 13555 +00000 2017 096 2749 +00000 2017 097 2442 +00000 2017 098 2184 +00000 2018 095 13666 +00000 2018 096 2770 +00000 2018 097 2474 +00000 2018 098 2229 +00000 2019 095 13754 +00000 2019 096 2787 +00000 2019 097 2504 +00000 2019 098 2271 +00000 2020 095 13822 +00000 2020 096 2801 +00000 2020 097 2531 +00000 2020 098 2310 +00000 2021 095 13876 +00000 2021 096 2812 +00000 2021 097 2557 +00000 2021 098 2345 +00000 2022 095 13915 +00000 2022 096 2819 +00000 2022 097 2582 +00000 2022 098 2377 +00000 2023 095 13944 +00000 2023 096 2825 +00000 2023 097 2605 +00000 2023 098 2406 +00000 2024 095 13962 +00000 2024 096 2828 +00000 2024 097 2627 +00000 2024 098 2431 +00000 2025 010 2806 +00000 2025 011 3001 +00000 2025 012 1261 +00000 2025 013 1000 +00000 2025 014 1000 +00000 2025 020 1678 +00000 2025 021 1927 +00000 2025 022 1069 +00000 2025 023 1000 +00000 2025 024 1000 +00000 2025 030 1749 +00000 2025 031 1845 +00000 2025 032 1531 +00000 2025 033 1000 +00000 2025 034 0 +00000 2025 040 1807 +00000 2025 041 2060 +00000 2025 042 0 +00000 2025 043 2065 +00000 2025 044 1000 +00000 2025 050 1695 +00000 2025 051 2999 +00000 2025 052 1688 +00000 2025 053 1000 +00000 2025 054 1000 +00000 2025 060 2169 +00000 2025 061 2313 +00000 2025 062 2133 +00000 2025 063 3571 +00000 2025 064 2230 +00000 2025 070 2282 +00000 2025 071 736 +00000 2025 072 2430 +00000 2025 073 1000 +00000 2025 074 1000 +00000 2025 080 1743 +00000 2025 081 2256 +00000 2025 082 1387 +00000 2025 083 1000 +00000 2025 084 1000 +00000 2025 090 1222 +00000 2025 091 1974 +00000 2025 092 1208 +00000 2025 093 1000 +00000 2025 094 1000 +00000 2025 095 13973 +00000 2025 096 2830 +00000 2025 097 2650 +00000 2025 098 2454 +00000 2025 099 1208 +00000 2025 100 1043 +00000 2025 101 1043 +00000 2025 102 1000 +00000 2025 103 1000 +00000 2025 104 1043 +00000 2026 095 13978 +00000 2026 096 2831 +00000 2026 097 2672 +00000 2026 098 2473 +00000 2027 095 13980 +00000 2027 096 2831 +00000 2027 097 2694 +00000 2027 098 2490 +00000 2028 095 13981 +00000 2028 096 2831 +00000 2028 097 2717 +00000 2028 098 2505 +00000 2029 095 13981 +00000 2029 096 2831 +00000 2029 097 2739 +00000 2029 098 2517 +00000 2030 095 13981 +00000 2030 096 2831 +00000 2030 097 2761 +00000 2030 098 2526 +00000 2045 010 4060 +00000 2045 011 4381 +00000 2045 012 1511 +00000 2045 013 1000 +00000 2045 014 1000 +00000 2045 020 2149 +00000 2045 021 2569 +00000 2045 022 1125 +00000 2045 023 1000 +00000 2045 024 1000 +00000 2045 030 2260 +00000 2045 031 2420 +00000 2045 032 1896 +00000 2045 033 1000 +00000 2045 034 0 +00000 2045 040 2370 +00000 2045 041 2705 +00000 2045 042 0 +00000 2045 043 2692 +00000 2045 044 1000 +00000 2045 050 2178 +00000 2045 051 4394 +00000 2045 052 2166 +00000 2045 053 1000 +00000 2045 054 1000 +00000 2045 060 2989 +00000 2045 061 3224 +00000 2045 062 2931 +00000 2045 063 5367 +00000 2045 064 3088 +00000 2045 070 3160 +00000 2045 071 579 +00000 2045 072 3407 +00000 2045 073 1000 +00000 2045 074 1000 +00000 2045 080 2243 +00000 2045 081 3118 +00000 2045 082 1637 +00000 2045 083 1000 +00000 2045 084 1000 +00000 2045 090 1389 +00000 2045 091 2651 +00000 2045 092 1367 +00000 2045 093 1000 +00000 2045 094 1000 +00000 2045 095 13981 +00000 2045 096 2831 +00000 2045 097 3097 +00000 2045 098 2672 +00000 2045 099 1367 +00000 2045 100 1123 +00000 2045 101 1123 +00000 2045 102 1000 +00000 2045 103 1000 +00000 2045 104 1123 +/END/ + +------------------------------------------------------ +This is the packet that defines the scrappage curve +used for model year distrubution. The first value +is the fraction of useful life already used and the +second value is the percentage of equipment scrapped. +This curve is used for all equipment types with the +DEFAULT value in the scrappage flag field of the +population file. +------------------------------------------------------ +/SCRAPPAGE/ +0 0.00 +0.0294 0.5 +0.0588 1.00 +0.08705 1.5 +0.1153 2.00 +0.14235 2.5 +0.1694 3.00 +0.19535 3.5 +0.2213 4.00 +0.24615 4.5 +0.271 5.00 +0.29475 5.5 +0.3185 6.00 +0.3412 6.5 +0.3639 7.00 +0.3856 7.5 +0.4073 8.00 +0.42795 8.5 +0.4486 9.00 +0.4683 9.5 +0.488 10.00 +0.5067 10.5 +0.5254 11.00 +0.5432 11.5 +0.561 12.00 +0.5779 12.5 +0.5948 13.00 +0.6108 13.5 +0.6268 14.00 +0.6419 14.5 +0.657 15.00 +0.6713 15.5 +0.6856 16.00 +0.69905 16.5 +0.7125 17.00 +0.7252 17.5 +0.7379 18.00 +0.7498 18.5 +0.7617 19.00 +0.77285 19.5 +0.784 20.00 +0.79445 20.5 +0.8049 21.00 +0.81465 21.5 +0.8244 22.00 +0.83345 22.5 +0.8425 23.00 +0.85095 23.5 +0.8594 24.00 +0.8672 24.5 +0.875 25.00 +0.8822 25.5 +0.8894 26.00 +0.89605 26.5 +0.9027 27.00 +0.90875 27.5 +0.9148 28.00 +0.92035 28.5 +0.9259 29.00 +0.93095 29.5 +0.936 30.00 +0.94055 30.5 +0.9451 31.00 +0.9492 31.5 +0.9533 32.00 +0.957 32.5 +0.9607 33.00 +0.96395 33.5 +0.9672 34.00 +0.9701 34.5 +0.973 35.00 +0.9755 35.5 +0.978 36.00 +0.9802 36.5 +0.9824 37.00 +0.9843 37.5 +0.9862 38.00 +0.9878 38.5 +0.9894 39.00 +0.9907 39.5 +0.992 40.00 +0.9931 40.5 +0.9942 41.00 +0.99505 41.5 +0.9959 42.00 +0.9966 42.5 +0.9973 43.00 +0.9978 43.5 +0.9983 44.00 +0.99865 44.5 +0.999 45.00 +0.99925 45.5 +0.9995 46.00 +0.99965 46.5 +0.9998 47.00 +0.99985 47.5 +0.9999 48.00 +0.99995 49.00 +1 50.00 +1.00005 51.00 +1.0001 52.00 +1.00015 52.5 +1.0002 53.00 +1.00035 53.5 +1.0005 54.00 +1.00075 54.5 +1.001 55.00 +1.00135 55.5 +1.0017 56.00 +1.0022 56.5 +1.0027 57.00 +1.0034 57.5 +1.0041 58.00 +1.00495 58.5 +1.0058 59.00 +1.0069 59.5 +1.008 60.00 +1.0093 60.5 +1.0106 61.00 +1.0122 61.5 +1.0138 62.00 +1.0157 62.5 +1.0176 63.00 +1.0198 63.5 +1.022 64.00 +1.0245 64.5 +1.027 65.00 +1.0299 65.5 +1.0328 66.00 +1.03605 66.5 +1.0393 67.00 +1.043 67.5 +1.0467 68.00 +1.0508 68.5 +1.0549 69.00 +1.05945 69.5 +1.064 70.00 +1.06905 70.5 +1.0741 71.00 +1.07965 71.5 +1.0852 72.00 +1.09125 72.5 +1.0973 73.00 +1.10395 73.5 +1.1106 74.00 +1.1178 74.5 +1.125 75.00 +1.1328 75.5 +1.1406 76.00 +1.14905 76.5 +1.1575 77.00 +1.16655 77.5 +1.1756 78.00 +1.18535 78.5 +1.1951 79.00 +1.20555 79.5 +1.216 80.00 +1.22715 80.5 +1.2383 81.00 +1.2502 81.5 +1.2621 82.00 +1.2748 82.5 +1.2875 83.00 +1.30095 83.5 +1.3144 84.00 +1.3287 84.5 +1.343 85.00 +1.3581 85.5 +1.3732 86.00 +1.3892 86.5 +1.4052 87.00 +1.4221 87.5 +1.439 88.00 +1.4568 88.5 +1.4746 89.00 +1.4933 89.5 +1.512 90.00 +1.5317 90.5 +1.5514 91.00 +1.57205 91.5 +1.5927 92.00 +1.6144 92.5 +1.6361 93.00 +1.6588 93.5 +1.6815 94.00 +1.70525 94.5 +1.729 95.00 +1.75385 95.5 +1.7787 96.00 +1.80465 96.5 +1.8306 97.00 +1.85765 97.5 +1.8847 98.00 +1.91295 98.5 +1.9412 99.00 +1.9706 99.5 +2 100.00 +/END/ +------------------------------------------------------ +This is the packet that defines the alternate scrappage +curve used for model year distrubution. The first value +is the fraction of useful life already used and the +second value is the percentage of equipment scrapped. +The first line is used to name the curves. +The names of the curves must match the name in the +scrappage flag (except for the DEFAULT name) of the +population files for the equipment types to which the +curve applies. +THIS IS JUST AN EXAMPLE. DO NOT USE THESE VALUES. +------------------------------------------------------ +/ALTERNATE SCRAPPAGE/ + MOTORCYC CHAINSAW +0 0 0 +0.06 2 1.5 +0.12 4 3 +0.17 6 4.5 +0.22 8 6 +0.24 9 6.75 +0.26 10 7.5 +0.3 12 9 +0.4 16 12 +0.45 20 15 +0.5 22 16.5 +0.55 26 19.5 +0.6 28 21 +0.65 30 22.5 +0.7 36 17 +0.75 38 28.5 +0.8 42 31.5 +0.85 48 36 +0.9 50 37.5 +0.95 62 46.5 +1 100 75 +1.05 100.0 +1.1 +1.15 +1.2 +1.25 +1.3 +1.35 +1.4 +1.45 +1.5 +1.55 +1.6 +1.7 +1.72 +1.74 +1.78 +1.83 +1.88 +1.94 +2 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/47state.pop b/NONROAD/NR08a/DATA/POP/47state.pop new file mode 100644 index 0000000..7919417 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/47state.pop @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 00000 US 47-State 111,623,697.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 5999 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3539 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3800 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 302835 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 305676 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 137199 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 483350 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 198653 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 51753 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 726617 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 357886 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 367244 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3178247 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 164316 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 284759 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 85 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 48 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 144 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 5847 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 11075 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 87241 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 892 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 21 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2152 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 17 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 815 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 892 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 21 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2152 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 17 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 815 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 660 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 4602 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 213 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1667 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 281 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 311 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 281 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 311 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 137681 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 301 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 12938 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 65647 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 20209 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 3582 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 4976 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 889 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2313 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 273 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 188 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 129 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 273 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 188 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 129 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 12391 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 36244 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 30736 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 15394 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 10846 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 440 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 39 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 440 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 39 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 5382 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 8288 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2396 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1010 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 34 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 608 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 606 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 23 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 26 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 9422 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 9224 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3296 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 3758 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 626 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 529 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 416 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 626 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 529 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 416 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 3886 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 79550 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3217 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 984 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1248 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 820 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 330 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 301 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 498 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 330 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 301 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 498 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 10173 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 48749 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 25065 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5256 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2311 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 636 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 346 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 636 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 346 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1379 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 77309 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 129159 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4382 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3358 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 131 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 185 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 66 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 460 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 74 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 460 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 74 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1244 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1748 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3190 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 818 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 29 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 653 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 77 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 653 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 77 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1304 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 43 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1304 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 43 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 320 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 6670 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 117 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 117 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 263 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 5299 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1503 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 830 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 887 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1503 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 830 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 887 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 4673 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 15420 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2321 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 2835 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 110 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 18 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 553 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 528 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 25 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1952 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 543 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 12526 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 5539 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 11538 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 5539 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 11538 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1468 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5243 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 8447 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 617 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 3926 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 19 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 27898 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 60980 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 160495 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 11722 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 74591 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 365 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 38645 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 2943 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3370 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5157 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1395 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 2988 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1795 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2028 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2057 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 41 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 2 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1795 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2028 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2057 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 41 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 2 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 18 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 139 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 57106 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 10790 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 5495 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 4645 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 415 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 576 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 93 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 415 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 576 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 71 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 21 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 29 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1134 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 689 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 26 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 689 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 26 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 19 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 31 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 930 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 105 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 36 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 366 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 168 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 659 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 346 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 131 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 651 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 21 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 37 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 8 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 566191 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 28138923 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 9278 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 24448 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1215031 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 401 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 52504 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 371172 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 2635866 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 8146 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 57587 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 408950 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 4578923 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 131675 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 463302 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3422613 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 8667657 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1389203 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 98653 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 197662 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 21791 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 5829 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 308 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 669 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 506725 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 5627310 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 421559 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 157051 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 318874 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 24040 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 235107 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 7405 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 8057 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 613 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 4183 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 4149 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 944591 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1446464 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2440263 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 114054 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 104418 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 159897 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 269755 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12608 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 6182 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 894467 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 693653 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3281 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 154 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 22200 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 17217 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 82 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 22974 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 78474 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 34697 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 521 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 84180 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 164752 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 22088 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 692522 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 7694851 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2507928 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 548 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 17189 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 190988 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 62247 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 28 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1387 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 5717 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 10774 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 813 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3470 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 830 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 813 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3470 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 830 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 98 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 283567 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 75429 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 168326 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 219403 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 43472 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 375 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 22561 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 97696 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 248984 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 164519 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2409 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1579 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 24925 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 107933 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 275072 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 181757 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2662 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1745 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 170 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 59 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 21 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 69 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2521 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2175 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1044 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 108 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1249 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 141 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 19 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 12888 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4125 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 468 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 85 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 5973 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 87 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1827 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 21881 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 20400 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 79439 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 28971 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 9952 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 16861 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4107 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1541 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1614 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1584 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 698585 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1745 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 6964 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 3946 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1500 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7293 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4335 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3841 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 305 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 494 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 79 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2892 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1209 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 78 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 130 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 739 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 203 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 463 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 978 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 454 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 207 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 241 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1277 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1816 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 179 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 208 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 43 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 3484 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 86470 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 608330 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1460782 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 323117 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 462354 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 42818 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 322 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 19971 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 17761 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 6663 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 154 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 26 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 405 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 685 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 13682 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 4605 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1590 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 650 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 328 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 109496 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 197829 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 120 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 25 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 283510 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 177823 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 17224 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 10037 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 8726 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4060 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 270 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 626 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 8440 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4057 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 270 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 586 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 286 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 3 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 40 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 46 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 47 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 51 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 44933 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 41943 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 5145 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 5575 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 816 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 4516 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 961 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 451 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 816 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 4386 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 961 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 241 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 130 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 210 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 133 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 79 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 21 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 233 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 39 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 101 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 33 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 5941 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 23038 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 84921 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 28329 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 6687 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 594 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 134 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 6687 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 594 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 134 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 141 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 750155 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 463931 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 137630 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 25882 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 438 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 438 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1094 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 5207 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 4717 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 3716 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 3804 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 57 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 56 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 57 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 56 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 28037 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 178011 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 9845 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3191 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 310 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 127 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 751 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 85 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 304 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 16 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 19 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 81 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 240 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 19 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 81 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 240 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3788 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 6945 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4613 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4521 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 619 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1918 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 70 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 190 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 13 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 404 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 14724 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 10180 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 34 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 216 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 214 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 1803 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1587 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 701 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 90 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2212 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 205 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4199 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2614 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 5727 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4021 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 518 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2165 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 10841 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 4844 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 2946 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 272 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1167 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2191 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2624 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 4708 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 6715 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 6224 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 6302 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 17246 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 15991 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 5459 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1619 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 4 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 435 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5000 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 6474 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3004 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 4 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 935 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1048 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 81 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 540 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 719 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 705 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 832 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1518 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 471 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 21 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 17 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 54 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 808 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 677 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 233 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 12 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 641 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 196 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 9 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 197 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 87 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 18 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 14 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1755 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4131 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2206 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 34939 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 10719 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 18 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 766 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 444 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 354 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 86 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 64 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 88 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 4831 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 12045 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 20037 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 8093 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2514 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1679 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 853 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 75 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 9 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 50 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 78 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 174 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 2976 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3028 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 4907 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 4990 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 7335 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 6377 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 3674 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 860 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 470 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 16 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 59 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 322 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 663 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 2956 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6123 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3265 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2533 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 11431 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 42710 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 31225 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 8272 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 263 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 305 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 10 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 116 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 269 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 459 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 2635 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 95 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 845 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1216 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 149 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 3 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 5357 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3193 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 593 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 540 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 393 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 674 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1126 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 357 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 127 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 159 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 32 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 488 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 7 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 259 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2514 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 9464 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 9680 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 5962 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 257 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 73 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 14 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 111 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 861 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 8792 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 14725 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1684 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 102 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 23 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2210 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 4692 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 2655 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1290 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 408 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2065 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 503 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 57 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 78 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 297 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3390 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 820 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1285 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 485 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1261 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 96 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 7 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 14 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 173 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4039 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 4497 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 8913 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 51002 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 26199 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1358 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 1787 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 40 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2043 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2346 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3318 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 14265 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 36073 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 34438 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 25266 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 1909 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 930 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 193 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1140 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 41 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 4 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2077 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4151 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2218 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 41427 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 146361 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 97385 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 530 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 429 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 12359 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 27932 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 24189 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 12248 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 4831 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1000 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1739 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 8 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 111 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 18276 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 40522 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 79290 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 31354 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 172173 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 113185 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 2851 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 385 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 658 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1573 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 515 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 49 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 407 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 10 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 775 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 742 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 530 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 615 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 134 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 64 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 418 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 152 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 25 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 11 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 113 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 322 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 29 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 314 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 309 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2146 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 1916 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 4627 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 844 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 56 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 110 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 726 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 10176 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 12640 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 2989 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 21243 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 7550 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 92 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 15 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 3 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 37 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 433 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 16039 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 16159 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 5803 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 944 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1206 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 270 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 12 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1646 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 3958 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2671 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2586 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 9523 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 10694 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 2875 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 49 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1881 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 355 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 229 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 399 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1262 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 459 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3559 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 11082 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 15765 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 4919 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 503 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 83 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 300 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1509 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 455 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2093 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 796 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 110 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 5511 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 16941 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 15884 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4073 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 29856 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 114835 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 10 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2030 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3523 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 5658 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 9420 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 288 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 229 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 56 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 21 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 183 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 228 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 232 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 6505 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 90270 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 43754 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 9774 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 16050 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 3431 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 26 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1588 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 39633 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 688 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 396 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 604 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 9 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 147 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1563 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 5830 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 25761 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 8157 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 4924 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 4177 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 946 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 154 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 19 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 927 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1205 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2221 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1079 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 19 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1135 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 950 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 26 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 229 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 5 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 191 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 52 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 9 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 84 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 339 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 76902 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 206836 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 118186 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 187135 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 164933 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 274817 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 236923 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 122594 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 12 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 12922 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 118530 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 141340 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7301 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 142 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3082 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1135 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 965 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 47 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 291 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1541 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 701 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 439 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1178 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7218 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 13932 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15140 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4102 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 30 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8725 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 41232 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8145 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 365 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 23 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 271 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 984 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 521 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 317 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2465 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3080 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7676 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7765 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3254 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 3 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 620 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1415 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 561 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2203 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10398 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5455 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1552 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 110 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 51884 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 51805 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 39931 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 62874 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 104069 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 14214 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 52446 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 63828 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 21786 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 12113 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 6291 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 23 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 8933 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 21474 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 5387 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 4285 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 7453 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2112 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 14300 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 15915 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 7018 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 1758 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 891 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 304 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 743 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 100 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 154 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 5706 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 3949 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 25311 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 32968 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 3781 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3393 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 970 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3298 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 18273 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 26600 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 16497 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 45730 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 33215 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 14584 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 760 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 17 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 577 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 4914 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 5641 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 7044 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 6733 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 843 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 2832 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 792 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 2631 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2129 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 326 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 152 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 77 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 173 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 54 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 507 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 735 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 232 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1125 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1300 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 351 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 45 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 11 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 16 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 23 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1133 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 7859 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11263 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 973 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 398 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 941 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 12 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 35 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 48 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 984 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1793 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 5294 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1777 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2076 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 220 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 13 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 219 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 106 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 995 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 146 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2071 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1054 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1525 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 966 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 401 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 178 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 218 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 163255 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 608972 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 917204 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 203925 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 401637 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 775833 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 596813 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 998107 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 678019 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1516796 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1361576 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 649 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 627 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 5981 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 11 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6350 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2560 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 56744 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 209875 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 777523 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 51155 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 713 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 511 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 302 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1304 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 11466 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 274904 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1020360 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 409778 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 6913 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 8412 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4128 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9133 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 4997 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 923 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8097 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 6819 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 55890 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 91905 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 67793 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2675 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5072 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 413 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1450 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 888 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9051 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 12 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 66 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 74 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 103 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 383 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 601 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1096 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1020 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4308 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1587 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 269 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 67 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 16 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 25 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 8 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 66 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2099 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 8629 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 155 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 395 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/48state.pop b/NONROAD/NR08a/DATA/POP/48state.pop new file mode 100644 index 0000000..b8d8093 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/48state.pop @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 00000 US 48-State 124,108,493.1 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 6056 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3573 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3836 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 305712 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 308580 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 138502 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 487941 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 200539 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 52245 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 792766 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 390467 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 400677 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3467584 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 174529 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 324441 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 96 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 55 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 164 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 6662 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 12618 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 99398 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1016 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 24 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2452 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 928 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1016 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 24 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2452 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 928 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 742 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 5167 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 240 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1872 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 316 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 349 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 316 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 349 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 154605 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 338 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 14528 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 73716 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 22693 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 4022 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 5588 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 998 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2598 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 307 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 211 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 145 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 307 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 211 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 145 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 13914 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 40699 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 34514 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 17286 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 12179 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 495 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 44 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 495 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 44 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 6043 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 9307 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2691 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1134 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 112 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 40 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 112 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 40 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 38 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 683 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 680 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 26 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 29 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 10580 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 10358 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3701 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 4220 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 703 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 594 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 467 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 703 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 594 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 467 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 4364 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 89328 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3613 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 1104 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1402 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 921 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 371 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 337 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 560 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 371 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 337 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 560 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 11423 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 54741 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 28146 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5902 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2595 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 714 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 389 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 714 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 389 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1549 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 86812 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 145035 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4921 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3771 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 147 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 208 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 74 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 517 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 84 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 517 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 84 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1397 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1963 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3582 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 919 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 114 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 114 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 33 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 111 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 733 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 86 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 111 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 733 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 86 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 31 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1465 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 48 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 31 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1465 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 48 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 360 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 7490 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 131 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 131 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 295 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 5951 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1688 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 932 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 997 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1688 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 932 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 997 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 5248 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 17315 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2607 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 3183 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 123 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 20 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 621 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 593 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 28 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 2185 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 607 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 14018 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 6199 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 12913 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 287 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 6199 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 12913 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 287 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1643 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5868 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 9453 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 690 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 4393 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 22 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 31221 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 68244 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 179613 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 13118 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 83476 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 409 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 43248 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 3294 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3772 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5771 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1561 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 3343 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 2008 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2270 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2302 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 46 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 2 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 2008 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2270 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2302 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 46 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 2 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 20 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 156 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 63909 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 12076 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 6150 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 5198 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 464 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 645 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 104 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 246 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 464 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 645 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 80 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 246 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 24 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 33 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1269 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 771 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 29 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 771 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 29 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 22 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 35 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 1060 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 119 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 41 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 11 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 410 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 188 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 737 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 11 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 387 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 147 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 729 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 23 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 41 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 9 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 632964 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 31457466 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 10372 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 29413 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1461767 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 482 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 58696 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 414946 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 2946724 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 9800 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 69281 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 491995 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 5118935 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 158414 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 557384 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3826257 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 9689871 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1671308 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 118687 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 220973 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 26216 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 7013 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 371 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 805 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 566485 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 6290962 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 507165 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 188944 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 356480 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 28921 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 282850 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 8909 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 9693 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 738 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 5033 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 4992 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 963298 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1475109 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2488590 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 116313 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 107288 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 164292 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 277169 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12954 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 6911 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 999955 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 775459 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3668 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 185 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 26709 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 20713 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 98 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 27639 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 94409 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 41743 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 626 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 101275 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 198208 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 24693 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 774194 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 8602337 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2803699 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 659 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 20679 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 229772 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 74887 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 34 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1669 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 6878 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 12962 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 978 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4175 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 38 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 999 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 978 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4175 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 38 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 999 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 118 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 341151 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 90746 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 202508 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 263958 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 52300 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 451 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 25221 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 109218 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 278348 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 183922 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2693 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1765 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 29986 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 129851 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 330931 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 218667 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 3202 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 2099 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 205 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 71 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 25 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 83 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2594 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2238 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1074 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 111 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1285 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 145 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 20 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 13259 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4244 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 482 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 88 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 6145 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 90 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1879 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 22510 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 20987 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 81726 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 29805 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 10238 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 17346 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4225 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1585 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1660 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1629 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 718696 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1795 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 7165 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 4059 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1543 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7502 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4460 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3951 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 314 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 508 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 81 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2976 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1243 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 80 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 134 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 761 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 209 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 477 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1007 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 467 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 213 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 248 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1313 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1868 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 184 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 214 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 44 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 4028 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 99984 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 703400 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1689075 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 373614 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 534611 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 49509 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 372 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 23092 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 20537 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 7704 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 178 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 30 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 468 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 792 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 15821 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 5324 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1838 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 752 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 380 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 126608 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 228746 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 139 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 29 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 327818 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 205613 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 19916 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 11605 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 10090 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 93 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4695 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 312 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 724 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 9759 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 93 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4691 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 312 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 678 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 331 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 4 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 46 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 53 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 55 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 59 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 51955 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 48497 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 5949 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 6447 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 944 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 5222 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 1112 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 521 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 944 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 5072 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 1112 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 278 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 150 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 243 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 154 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 91 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 25 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 269 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 45 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 116 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 38 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 6869 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 26638 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 98193 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 32757 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 7732 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 687 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 155 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 7732 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 687 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 155 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 163 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 867389 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 536434 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 159139 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 29926 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 506 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 39 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 506 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 39 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1265 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 6020 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 5454 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 4297 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 4398 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 66 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 28 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 65 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 66 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 28 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 65 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 29252 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 185723 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 10272 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3329 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 323 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 133 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 861 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 98 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 348 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 18 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 20 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 22 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 93 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 275 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 20 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 22 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 93 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 275 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3951 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7244 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4812 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4716 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 646 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2001 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 73 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 198 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 14 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 461 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 16776 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 11599 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 39 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 246 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 244 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 2054 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1808 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 799 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 30 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 101 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2484 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 230 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4716 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2935 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 6431 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4516 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 581 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2431 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 12174 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 5439 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 3308 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 306 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1311 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2461 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2946 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 5287 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 7540 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 6989 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 7076 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 19366 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 17957 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 6130 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1818 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 5 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 488 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5615 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 7270 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3373 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 4 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 1050 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1177 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 91 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 606 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 807 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 792 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 934 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1704 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 529 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 24 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 19 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 61 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 907 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 760 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 262 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 14 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 720 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 220 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 10 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 221 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 98 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 20 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 15 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1970 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4639 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2477 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 39234 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 12036 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 21 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 860 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 499 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 397 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 97 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 71 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 99 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 5425 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 13525 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 22500 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 9088 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2823 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1886 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 958 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 84 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 56 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 88 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 196 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 3342 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3400 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 5510 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 5603 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 8237 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 7161 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 4126 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 966 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 528 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 18 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 66 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 362 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 745 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 3319 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6876 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3667 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2844 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 12836 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 47960 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 35063 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 9289 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 295 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 342 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 11 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 130 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 302 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 516 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 2959 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 106 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 949 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1366 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 167 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 4 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 6016 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3586 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 666 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 606 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 441 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 757 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1264 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 401 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 142 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 179 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 36 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 548 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 7 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 291 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2823 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 10627 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 10870 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 6695 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 289 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 82 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 16 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 125 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 967 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 9873 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 16535 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1891 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 115 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 26 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2482 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 5268 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 2982 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1448 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 459 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2319 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 565 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 64 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 88 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 334 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3807 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 921 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1443 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 544 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1416 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 107 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 8 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 15 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 194 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4536 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 5049 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 10009 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 57272 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 29420 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1525 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 2007 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 45 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2294 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2635 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3726 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 16018 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 40507 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 38671 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 28371 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 2144 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 1045 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 217 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1280 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 46 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 5 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2332 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4661 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2490 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 46519 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 164351 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 109356 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 595 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 482 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 13878 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 31366 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 27162 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 13754 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 5425 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1123 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1952 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 9 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 125 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 20522 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 45502 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 89037 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 35208 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 193336 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 127097 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 3201 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 432 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 739 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1766 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 579 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 55 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 458 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 11 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 871 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 833 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 595 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 690 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 151 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 72 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 470 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 170 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 28 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 12 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 126 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 362 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 33 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 352 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 347 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2410 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 2151 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 5195 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 948 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 63 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 123 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 812 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 11388 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 14146 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 3345 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 23774 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 8449 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 103 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 16 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 4 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 41 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 485 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 17949 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 18083 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 6494 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 1056 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1349 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 302 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 14 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1842 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 4430 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2989 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2894 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 10658 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 11968 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 3218 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 55 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 2105 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 397 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 257 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 447 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1412 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 514 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3983 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 12402 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 17642 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 5505 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 563 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 93 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 336 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1688 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 509 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2342 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 891 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 123 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 6279 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 19302 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 18098 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4641 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 34017 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 130837 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 11 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2272 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3942 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 6332 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 10542 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 322 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 275 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 67 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 22 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 188 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 234 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 279 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 7825 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 108601 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 52639 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 11759 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 19309 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 4128 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 32 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1910 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 47682 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 828 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 477 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 727 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 11 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 177 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1881 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 7014 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 30993 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 9813 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 5925 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 5025 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1138 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 186 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 23 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1115 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1450 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2672 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1298 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 23 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1366 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1143 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 32 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 276 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 6 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 230 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 62 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 11 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 86 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 349 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 79116 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 212791 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 121588 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 192522 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 169681 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 282728 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 243744 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 126123 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 13 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 13294 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 121942 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 145408 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7511 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 146 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3171 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1168 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 993 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 48 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 299 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1585 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 721 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 451 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1212 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7426 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 14333 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15576 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4220 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 31 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8976 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 42419 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8379 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 375 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 24 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 279 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1012 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 536 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 326 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2536 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3169 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7897 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7989 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3347 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 4 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 638 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1456 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 577 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2266 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10697 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5612 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1597 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 114 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 59993 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 59901 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 46171 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 72700 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 120333 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 16436 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 60643 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 73803 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 25191 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 14006 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 7274 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 26 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 10329 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 24830 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 6229 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 4955 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 8618 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2442 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 16534 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 18403 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 8115 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 2033 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 1030 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 351 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 859 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 116 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 178 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 6597 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 4566 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 29267 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 38120 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 4371 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3923 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 1122 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3813 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 21128 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 30757 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 19075 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 52877 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 38406 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 16863 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 878 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 20 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 667 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 5682 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 6523 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 8145 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 7785 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 975 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 3274 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 916 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 3042 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2462 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 377 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 176 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 89 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 200 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 63 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 586 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 849 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 268 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1301 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1503 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 405 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 53 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 12 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 17 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 24 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1182 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 8199 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11751 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1015 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 416 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1079 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 14 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 40 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 55 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1129 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 2056 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 6072 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 2038 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2381 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 253 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 15 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 228 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 111 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1038 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 152 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2160 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1099 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1591 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1008 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 418 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 186 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 228 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 175998 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 656508 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 988800 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 219843 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 432989 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 836394 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 643399 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 1076018 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 730945 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1635196 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1467859 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 700 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 676 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 6447 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 12 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6846 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2760 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 61174 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 226258 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 838216 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 55148 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 769 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 551 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 326 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1406 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 12361 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 296362 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1100008 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 441764 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 7453 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 9069 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4450 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9846 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 5387 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 995 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8729 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 7351 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 60253 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 99079 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 73085 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2884 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5468 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 445 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1563 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 958 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9757 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 13 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 71 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 78 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 110 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 407 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 639 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1166 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1086 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4584 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1689 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 286 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 72 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 17 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 9 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 70 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2233 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 9181 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 165 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 420 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 131 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 131 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/49CAP25h.POP b/NONROAD/NR08a/DATA/POP/49CAP25h.POP new file mode 100644 index 0000000..3155362 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/49CAP25h.POP @@ -0,0 +1,1215 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/24/06 25h, like 25e but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +8/24/06 49CAP25h, based on 50-state 25h version above, but removes Calif-regulated small SI and SI rec marine engines. + + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 00000 US 49-State 113,047,514.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 6240 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3681 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3953 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 315011 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 317966 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 142715 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 502783 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 206639 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 53834 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 735171 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 362099 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 371567 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3215663 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 165324 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 286886 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 85 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 48 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 145 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 5891 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 11158 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 87893 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 899 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 22 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2169 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 18 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 821 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 899 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 22 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2169 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 18 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 821 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 746 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 5198 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 241 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1883 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 283 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 313 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 283 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 313 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 155522 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 340 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 14614 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 74153 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 22828 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 4046 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 5621 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 1004 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2613 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 275 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 189 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 130 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 275 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 189 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 130 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 13997 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 40940 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 34719 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 17389 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 12251 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 443 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 40 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 443 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 40 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 6079 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 9362 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2707 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1141 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 38 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 687 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 684 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 26 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 29 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 10643 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 10419 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3723 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 4245 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 630 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 532 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 419 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 630 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 532 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 419 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 4390 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 89858 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3634 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 1111 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1410 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 926 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 332 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 303 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 502 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 332 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 303 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 502 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 11491 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 55066 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 28313 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5937 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2610 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 640 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 348 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 640 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 348 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1558 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 87327 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 145895 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4950 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3793 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 148 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 209 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 74 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 463 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 75 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 463 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 75 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1405 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1975 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3603 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 924 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 33 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 657 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 78 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 657 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 78 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1313 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 43 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1313 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 43 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 362 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 7534 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 118 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 118 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 297 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 5986 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1513 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 836 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 893 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1513 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 836 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 893 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 5279 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 17418 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2622 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 3202 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 111 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 20 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 557 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 532 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 25 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 2188 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 608 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 14037 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 5548 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 11556 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 5548 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 11556 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1471 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5251 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 8460 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 618 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 3932 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 19 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 27941 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 61073 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 160740 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 11740 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 74705 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 366 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 38704 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 3298 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3777 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5779 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1563 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 3348 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1797 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2031 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2060 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 42 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 2 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1797 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2031 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2060 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 42 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 2 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 18 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 156 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 63996 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 12092 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 6158 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 5205 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 416 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 577 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 93 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 416 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 577 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 71 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 21 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 33 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1271 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 690 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 26 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 690 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 26 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 22 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 35 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 1067 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 105 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 36 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 367 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 168 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 660 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 346 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 131 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 652 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 21 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 37 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 8 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 570119 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 28334129 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 9342 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 24612 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1223202 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 404 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 52868 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 373747 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 2654151 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 8201 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 57974 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 411700 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 4610688 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 132561 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 560500 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3446357 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 8727786 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1398545 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 99317 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 199033 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 21938 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 5868 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 310 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 673 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 510240 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 5666347 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 424394 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 158108 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 321086 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 24201 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 236688 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 7455 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 8111 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 617 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 4211 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 4177 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 948286 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1452122 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2449809 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 114500 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 104574 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 160135 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 270156 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12626 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 6225 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 900672 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 698465 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3304 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 155 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 22350 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 17333 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 82 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 23129 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 79001 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 34930 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 524 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 84747 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 165860 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 22241 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 697326 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 7748231 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2525326 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 552 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 17304 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 192272 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 62666 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 28 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1396 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 5755 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 10846 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 818 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3494 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 836 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 818 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3494 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 836 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 99 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 285474 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 75936 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 169458 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 220879 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 43764 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 378 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 22717 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 98374 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 250711 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 165661 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2426 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1590 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 25093 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 108659 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 276922 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 182980 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2680 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1757 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 171 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 59 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 21 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 69 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2595 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2239 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1075 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 108 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1250 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 141 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 19 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 12894 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4127 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 469 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 88 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 6148 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 90 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1880 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 22521 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 20997 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 81764 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 29819 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 10243 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 17354 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4109 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1542 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1615 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1584 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 719032 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1796 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 6968 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 3947 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1544 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7506 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4462 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3953 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 305 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 494 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 79 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2894 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1209 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 78 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 130 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 761 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 209 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 464 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 979 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 454 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 207 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 241 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1277 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1817 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 179 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 208 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 43 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 3508 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 87063 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 612502 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1470801 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 325333 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 465525 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 43111 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 324 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 20108 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 17883 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 6709 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 155 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 26 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 408 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 690 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 13776 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 4636 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1601 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 654 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 331 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 127359 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 230103 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 121 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 25 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 329762 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 206833 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 20034 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 11674 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 8786 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4088 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 271 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 630 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 8498 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4085 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 271 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 590 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 288 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 3 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 40 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 46 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 48 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 59 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 52263 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 48785 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 5984 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 6485 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 822 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 4547 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 968 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 454 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 822 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 4416 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 968 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 242 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 131 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 211 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 134 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 80 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 22 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 235 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 39 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 101 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 33 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 6910 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 26796 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 98775 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 32951 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 6733 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 598 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 135 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 6733 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 598 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 135 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 164 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 872534 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 539616 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 160083 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 30104 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 441 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 441 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1273 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 6056 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 5486 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 4322 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 4424 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 58 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 57 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 58 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 57 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 29500 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 187298 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 10359 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3357 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 326 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 134 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 787 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 89 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 318 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 17 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 20 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 85 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 251 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 20 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 85 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 251 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3852 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7061 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4690 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4597 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 629 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1950 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 71 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 193 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 13 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 408 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 14834 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 10256 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 34 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 218 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 216 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 1816 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1599 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 706 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 91 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2227 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 206 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4227 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2632 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 5765 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4048 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 521 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2179 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 10913 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 4876 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 2966 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 274 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1175 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2206 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2641 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 4739 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 6760 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 6265 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 6344 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 17361 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 16098 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 5496 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1630 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 4 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 437 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5033 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 6517 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3024 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 4 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 941 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1055 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 81 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 543 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 724 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 710 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 837 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1528 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 474 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 21 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 17 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 54 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 813 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 681 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 235 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 12 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 645 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 198 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 9 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 198 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 87 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 18 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 14 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1766 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4158 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2221 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 35172 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 10790 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 19 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 771 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 447 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 356 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 87 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 64 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 89 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 4863 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 12125 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 20170 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 8147 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2531 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1690 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 859 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 75 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 9 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 51 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 79 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 175 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 2996 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3048 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 4939 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 5023 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 7384 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 6419 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 3699 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 866 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 474 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 16 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 59 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 324 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 668 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 2976 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6164 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3287 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2549 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 11507 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 42995 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 31433 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 8327 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 264 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 307 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 10 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 117 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 271 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 462 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 2653 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 95 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 851 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1224 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 150 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 3 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 5393 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3215 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 597 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 543 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 395 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 678 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1133 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 359 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 127 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 160 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 32 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 491 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 7 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 261 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2530 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 9527 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 9744 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 6002 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 259 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 74 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 14 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 112 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 866 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 8851 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 14823 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1695 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 103 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 23 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2225 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 4723 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 2673 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1298 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 411 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2079 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 506 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 58 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 79 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 299 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3413 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 825 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1293 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 488 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1269 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 96 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 7 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 14 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 174 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4066 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 4527 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 8973 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 51342 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 26374 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1367 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 1799 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 40 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2057 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2362 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3340 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 14360 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 36313 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 34667 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 25434 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 1922 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 936 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 195 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1147 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 41 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 4 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2090 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4179 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2232 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 41703 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 147336 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 98034 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 534 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 432 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 12441 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 28118 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 24350 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 12330 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 4864 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1007 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1750 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 8 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 112 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 18397 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 40792 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 79819 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 31563 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 173319 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 113939 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 2870 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 388 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 662 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1584 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 519 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 50 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 410 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 10 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 780 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 746 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 534 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 619 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 135 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 64 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 421 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 153 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 25 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 11 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 113 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 325 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 30 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 316 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 311 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2160 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 1929 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 4657 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 850 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 56 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 110 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 727 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 10191 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 12660 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 2994 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 21276 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 7561 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 92 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 15 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 3 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 37 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 434 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 16063 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 16183 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 5812 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 945 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1207 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 270 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 12 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1649 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 3964 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2675 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2590 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 9538 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 10710 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 2880 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 49 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1884 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 356 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 230 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 400 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1264 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 460 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3565 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 11099 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 15789 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 4926 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 504 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 83 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 300 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1511 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 456 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2096 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 798 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 110 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 5552 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 17067 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 16003 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4104 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 30079 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 115693 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 10 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2033 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3528 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 5666 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 9434 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 288 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 230 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 56 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 21 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 184 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 228 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 233 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 6548 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 90877 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 44048 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 9840 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 16158 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 3454 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 27 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1598 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 39900 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 693 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 399 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 608 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 9 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 148 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1574 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 5869 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 25935 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 8211 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 4958 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 4205 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 952 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 155 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 19 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 933 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1214 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2236 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1087 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 20 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1143 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 956 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 26 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 231 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 5 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 193 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 52 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 9 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 84 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 339 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 76939 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 206936 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 118243 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 187225 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 165012 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 274949 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 237037 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 122653 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 12 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 12928 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 118587 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 141407 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7304 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 142 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3084 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1136 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 966 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 47 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 291 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1542 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 701 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 439 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1179 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7221 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 13939 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15147 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4104 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 30 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8729 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 41252 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8149 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 365 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 23 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 271 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 984 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 521 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 317 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2466 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3082 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7680 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7769 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3255 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 3 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 620 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1416 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 561 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2204 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10403 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5458 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1553 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 110 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 52240 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 52161 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 40205 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 63305 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 104783 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 14312 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 52806 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 64266 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 21935 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 12196 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 6334 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 23 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 8994 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 21621 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 5424 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 4314 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 7504 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2127 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 14398 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 16025 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 7066 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 1771 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 897 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 306 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 748 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 101 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 155 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 5745 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 3976 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 25484 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 33194 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 3807 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3416 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 977 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3320 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 18398 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 26783 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 16610 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 46044 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 33443 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 14684 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 765 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 17 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 581 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 4948 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 5680 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 7093 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 6779 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 849 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 2851 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 798 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 2649 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2144 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 328 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 153 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 78 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 174 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 55 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 510 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 740 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 233 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1133 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1309 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 353 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 46 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 11 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 17 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 23 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1143 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 7928 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11362 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 982 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 402 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 986 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 12 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 36 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 50 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1032 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1879 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 5550 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1863 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2176 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 231 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 14 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 223 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 108 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1012 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 148 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2106 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1072 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1551 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 982 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 407 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 181 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 222 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 164363 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 613107 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 923432 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 205310 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 404365 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 781101 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 600865 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 1004885 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 682623 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1527096 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1370822 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 653 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 631 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 6021 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 11 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6393 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2577 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 57130 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 211300 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 782803 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 51502 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 718 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 514 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 304 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1313 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 11544 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 276770 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1027289 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 412560 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50.4 DEFAULT 6960 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 8470 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4156 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9195 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 5031 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 930 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8152 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 6865 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 56270 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 92529 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 68254 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2693 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5106 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 416 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1460 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 894 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9112 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 12 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 67 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 74 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 104 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 383 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 602 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1099 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1023 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4319 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1591 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 269 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 68 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 16 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 25 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 8 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 66 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2104 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 8650 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 155 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 396 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/49state.pop b/NONROAD/NR08a/DATA/POP/49state.pop new file mode 100644 index 0000000..1d27c59 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/49state.pop @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 00000 US 49-State 112,427,183.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 6240 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3681 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3953 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 315011 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 317966 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 142715 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 502783 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 206639 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 53834 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 735171 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 362099 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 371567 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3215663 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 165324 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 286886 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 85 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 48 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 145 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 5891 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 11158 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 87893 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 899 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 22 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2169 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 18 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 821 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 899 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 22 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2169 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 18 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 821 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 665 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 4632 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 215 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1678 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 283 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 313 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 283 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 313 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 138598 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 303 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 13024 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 66084 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 20344 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 3606 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 5009 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 895 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2329 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 275 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 189 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 130 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 275 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 189 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 130 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 12474 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 36485 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 30941 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 15497 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 10918 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 443 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 40 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 443 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 40 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 5417 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 8343 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2412 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1017 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 100 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 36 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 34 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 612 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 610 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 23 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 26 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 9485 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 9285 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3318 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 3783 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 630 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 532 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 419 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 630 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 532 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 419 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 3912 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 80080 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3239 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 990 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1257 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 825 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 332 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 303 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 502 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 332 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 303 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 502 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 10241 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 49074 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 25232 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5291 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2326 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 640 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 348 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 640 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 348 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1388 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 77824 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 130019 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4411 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3380 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 132 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 186 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 66 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 463 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 75 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 463 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 75 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1252 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1760 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3211 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 823 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 102 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 29 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 657 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 78 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 99 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 657 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 4 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 78 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1313 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 43 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 28 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1313 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 43 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 323 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 6714 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 118 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 25 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 118 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 14 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 265 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 5335 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1513 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 836 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 893 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1513 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 836 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 893 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 4705 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 15523 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2337 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 2854 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 111 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 18 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 557 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 532 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 25 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1955 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 543 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 12545 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 5548 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 11556 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 5548 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 11556 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 256 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1471 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5251 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 8460 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 618 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 3932 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 19 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 27941 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 61073 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 160740 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 11740 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 74705 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 366 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 38704 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 2947 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3376 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5165 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1397 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 2992 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1797 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2031 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2060 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 42 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 2 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1797 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2031 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2060 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 21 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 42 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 2 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 18 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 139 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 57194 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 10807 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 5503 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 4652 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 416 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 577 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 93 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 416 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 577 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 71 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 220 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 8 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 21 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 29 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1136 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 690 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 26 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 690 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 26 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 19 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 31 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 937 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 105 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 36 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 367 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 168 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 660 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 10 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 346 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 131 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 652 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 21 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 37 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 8 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 8 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 570119 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 28334129 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 9342 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 24612 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1223202 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 404 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 52868 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 373747 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 2654151 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 8201 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 57974 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 411700 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 4610688 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 132561 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 466418 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3446357 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 8727786 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1398545 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 99317 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 199033 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 21938 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 5868 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 310 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 673 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 510240 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 5666347 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 424394 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 158108 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 321086 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 24201 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 236688 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 7455 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 8111 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 617 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 4211 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 4177 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 948286 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1452122 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2449809 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 114500 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 104574 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 160135 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 270156 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12626 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 6225 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 900672 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 698465 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3304 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 155 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 22350 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 17333 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 82 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 23129 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 79001 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 34930 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 524 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 84747 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 165860 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 22241 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 697326 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 7748231 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2525326 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 552 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 17304 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 192272 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 62666 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 28 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1396 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 5755 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 10846 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 818 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3494 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 836 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 818 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3494 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 32 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 836 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 99 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 285474 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 75936 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 169458 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 220879 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 43764 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 378 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 22717 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 98374 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 250711 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 165661 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2426 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1590 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 25093 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 108659 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 276922 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 182980 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2680 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1757 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 171 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 59 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 21 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 69 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2522 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2176 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1045 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 108 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1250 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 141 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 19 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 12894 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4127 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 469 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 86 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 5976 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 87 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1827 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 21891 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 20410 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 79477 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 28985 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 9957 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 16869 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4109 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1542 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1615 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1584 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 698921 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1746 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 6968 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 3947 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1501 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7296 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4337 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3842 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 305 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 494 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 79 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2894 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1209 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 78 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 130 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 740 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 203 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 464 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 979 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 454 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 207 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 241 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1277 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1817 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 179 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 208 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 43 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 3508 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 87063 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 612502 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1470801 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 325333 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 465525 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 43111 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 324 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 20108 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 17883 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 6709 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 155 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 26 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 408 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 690 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 13776 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 4636 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1601 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 654 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 331 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 110247 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 199186 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 121 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 25 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 285455 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 179043 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 17342 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 10105 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 8786 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4088 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 271 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 630 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 8498 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 81 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4085 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 271 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 590 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 288 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 3 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 40 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 46 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 48 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 51 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 45241 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 42230 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 5180 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 5614 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 822 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 4547 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 968 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 454 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 822 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 4416 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 968 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 242 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 131 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 211 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 134 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 80 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 22 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 235 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 39 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 101 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 33 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 5982 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 23196 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 85503 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 28524 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 6733 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 598 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 135 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 6733 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 598 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 135 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 142 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 755299 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 467113 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 138574 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 26059 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 441 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 441 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 34 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1102 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 5242 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 4749 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 3741 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 3830 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 58 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 57 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 58 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 24 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 57 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 28285 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 179587 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 9933 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3219 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 313 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 128 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 787 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 89 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 318 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 17 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 20 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 85 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 251 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 18 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 6 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 20 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 85 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 251 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3852 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7061 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4690 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4597 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 629 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1950 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 71 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 193 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 13 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 408 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 14834 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 10256 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 34 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 218 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 216 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 1816 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1599 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 706 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 91 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2227 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 206 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4227 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2632 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 5765 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4048 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 521 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2179 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 10913 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 4876 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 2966 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 274 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1175 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2206 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2641 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 4739 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 6760 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 6265 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 6344 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 17361 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 16098 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 5496 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1630 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 4 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 437 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5033 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 6517 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3024 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 4 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 941 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1055 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 81 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 543 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 724 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 710 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 837 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1528 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 474 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 21 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 17 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 54 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 813 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 681 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 235 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 12 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 645 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 198 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 9 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 198 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 87 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 18 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 14 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1766 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4158 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2221 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 35172 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 10790 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 19 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 771 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 447 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 356 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 87 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 64 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 89 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 4863 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 12125 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 20170 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 8147 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2531 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1690 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 859 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 75 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 9 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 51 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 79 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 175 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 2996 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3048 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 4939 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 5023 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 7384 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 6419 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 3699 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 866 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 474 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 16 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 59 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 324 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 668 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 2976 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6164 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3287 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2549 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 11507 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 42995 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 31433 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 8327 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 264 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 307 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 10 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 117 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 271 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 462 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 2653 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 95 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 851 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1224 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 150 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 3 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 5393 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3215 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 597 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 543 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 395 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 678 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1133 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 359 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 127 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 160 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 32 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 491 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 7 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 261 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2530 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 9527 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 9744 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 6002 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 259 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 74 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 14 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 112 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 866 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 8851 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 14823 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1695 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 103 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 23 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2225 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 4723 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 2673 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1298 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 411 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2079 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 506 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 58 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 79 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 299 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3413 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 825 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1293 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 488 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1269 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 96 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 7 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 14 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 174 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4066 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 4527 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 8973 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 51342 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 26374 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1367 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 1799 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 40 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2057 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2362 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3340 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 14360 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 36313 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 34667 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 25434 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 1922 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 936 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 195 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1147 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 41 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 4 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2090 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4179 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2232 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 41703 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 147336 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 98034 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 534 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 432 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 12441 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 28118 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 24350 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 12330 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 4864 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1007 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1750 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 8 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 112 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 18397 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 40792 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 79819 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 31563 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 173319 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 113939 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 2870 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 388 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 662 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1584 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 519 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 50 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 410 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 10 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 780 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 746 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 534 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 619 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 135 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 64 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 421 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 153 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 25 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 11 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 113 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 325 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 30 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 316 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 311 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2160 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 1929 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 4657 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 850 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 56 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 110 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 727 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 10191 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 12660 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 2994 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 21276 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 7561 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 92 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 15 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 3 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 37 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 434 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 16063 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 16183 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 5812 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 945 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1207 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 270 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 12 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1649 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 3964 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2675 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2590 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 9538 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 10710 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 2880 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 49 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1884 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 356 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 230 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 400 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1264 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 460 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3565 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 11099 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 15789 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 4926 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 504 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 83 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 300 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1511 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 456 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2096 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 798 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 110 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 5552 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 17067 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 16003 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4104 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 30079 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 115693 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 10 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2033 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3528 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 5666 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 9434 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 288 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 230 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 56 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 21 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 184 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 228 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 233 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 6548 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 90877 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 44048 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 9840 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 16158 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 3454 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 27 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1598 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 39900 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 693 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 399 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 608 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 9 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 148 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1574 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 5869 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 25935 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 8211 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 4958 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 4205 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 952 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 155 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 19 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 933 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1214 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2236 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1087 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 20 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1143 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 956 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 26 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 231 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 5 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 193 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 52 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 9 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 84 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 339 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 76939 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 206936 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 118243 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 187225 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 165012 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 274949 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 237037 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 122653 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 12 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 12928 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 118587 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 141407 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7304 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 142 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3084 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1136 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 966 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 47 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 291 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1542 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 701 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 439 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1179 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7221 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 13939 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15147 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4104 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 30 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8729 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 41252 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8149 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 365 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 23 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 271 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 984 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 521 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 317 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2466 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3082 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7680 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7769 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3255 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 3 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 620 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1416 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 561 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2204 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10403 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5458 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1553 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 110 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 52240 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 52161 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 40205 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 63305 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 104783 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 14312 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 52806 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 64266 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 21935 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 12196 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 6334 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 23 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 8994 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 21621 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 5424 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 4314 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 7504 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2127 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 14398 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 16025 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 7066 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 1771 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 897 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 306 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 748 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 101 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 155 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 5745 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 3976 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 25484 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 33194 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 3807 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3416 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 977 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3320 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 18398 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 26783 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 16610 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 46044 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 33443 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 14684 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 765 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 17 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 581 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 4948 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 5680 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 7093 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 6779 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 849 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 2851 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 798 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 2649 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2144 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 328 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 153 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 78 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 174 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 55 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 510 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 740 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 233 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1133 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1309 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 353 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 46 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 11 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 17 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 23 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1143 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 7928 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11362 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 982 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 402 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 10 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 986 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 12 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 36 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 50 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1032 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1879 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 5550 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1863 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2176 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 231 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 14 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 223 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 108 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1012 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 148 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2106 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1072 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1551 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 982 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 407 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 181 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 222 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 164363 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 613107 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 923432 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 205310 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 404365 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 781101 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 600865 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 1004885 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 682623 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1527096 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1370822 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 653 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 631 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 6021 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 11 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6393 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2577 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 57130 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 211300 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 782803 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 51502 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 718 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 514 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 304 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1313 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 11544 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 276770 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1027289 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 412560 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 6960 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 8470 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4156 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9195 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 5031 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 930 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8152 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 6865 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 56270 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 92529 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 68254 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2693 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5106 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 416 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1460 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 894 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9112 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 12 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 67 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 74 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 104 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 383 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 602 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1099 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1023 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4319 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1591 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 269 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 68 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 16 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 25 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 8 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 66 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2104 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 8650 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 155 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 396 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 123 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/52state.pop b/NONROAD/NR08a/DATA/POP/52state.pop new file mode 100644 index 0000000..f634a98 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/52state.pop @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) 124,911,979.1sum of 50 states +106 - 122 population estimate 126,214,757.0sum of 52 states +State 00000 US 52-State 126,214,757.0this total +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 6297 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3715 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3989 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 317887 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 320869 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 144018 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 507374 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 208526 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 54325 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 807403 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 397676 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 408074 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3531605 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 175937 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 331069 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 98 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 56 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 167 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 6798 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 12876 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 101429 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1037 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 25 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2503 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 947 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1037 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 25 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2503 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 947 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 752 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 5240 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 243 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1898 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 320 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 354 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 320 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 354 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 156765 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 343 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 14731 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 74746 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 23011 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 4078 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 5666 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 1012 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2634 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 311 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 214 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 147 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 311 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 214 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 147 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 14109 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 41267 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 34997 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 17528 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 12349 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 501 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 45 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 501 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 45 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 6128 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 9437 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2729 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1150 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 113 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 41 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 113 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 41 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 38 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 692 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 689 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 26 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 29 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 10728 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 10502 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3753 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 4279 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 713 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 602 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 474 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 713 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 602 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 474 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 4425 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 90576 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3663 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 1120 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1421 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 933 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 376 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 342 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 568 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 376 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 342 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 568 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 11583 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 55506 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 28539 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5984 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2631 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 724 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 394 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 724 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 394 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1570 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 88025 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 147061 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4990 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3823 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 149 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 211 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 75 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 524 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 85 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 524 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 85 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1416 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1991 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3632 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 931 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 116 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 116 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 33 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 112 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 1 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 743 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 5 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 88 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 112 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 1 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 743 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 5 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 88 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 32 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1485 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 49 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 32 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1485 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 49 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 365 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 7594 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 133 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 133 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 299 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 6034 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1712 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 945 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 1011 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1712 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 945 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 1011 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 5321 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 17557 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2643 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 3228 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 125 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 20 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 629 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 601 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 28 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 2201 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 612 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 14123 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 6245 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 13009 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 289 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 6245 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 13009 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 289 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1656 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5912 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 9524 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 696 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 4426 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 22 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 31455 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 68753 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 180954 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 13216 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 84099 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 412 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 43571 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 3318 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3800 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5814 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1573 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 3368 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 2023 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2287 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2320 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 47 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 3 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 2023 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2287 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2320 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 47 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 3 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 20 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 157 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 64386 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 12166 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 6196 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 5237 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 468 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 650 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 105 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 247 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 9 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 468 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 650 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 80 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 247 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 9 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 24 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 33 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1279 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 777 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 29 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 777 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 29 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 22 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 35 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 1082 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 122 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 42 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 11 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 413 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 189 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 743 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 9 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 11 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 390 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 148 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 734 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 23 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 41 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 9 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 9 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 644731 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 32042263 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 10564 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 30041 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1493001 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 493 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 59787 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 422660 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 3001504 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 10010 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 70761 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 502507 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 5214096 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 161799 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 569294 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3897387 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 9870006 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1707019 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 121223 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 225081 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 26777 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 7163 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 379 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 822 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 577016 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 6407912 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 518002 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 192981 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 363107 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 29539 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 288894 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 9100 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 9900 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 754 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 5140 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 5099 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 966993 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1480768 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2498136 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 116759 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 107444 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 164530 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 277571 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12973 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 7040 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 1018544 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 789875 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3736 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 189 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 27279 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 21156 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 101 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 28230 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 96427 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 42635 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 640 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 103439 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 202443 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 25152 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 788586 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 8762255 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2855820 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 673 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 21121 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 234681 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 76488 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 35 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1704 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 7025 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 13238 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 999 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4264 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 39 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1020 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 999 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4264 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 39 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1020 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 121 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 348440 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 92685 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 206835 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 269598 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 53417 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 461 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 25690 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 111249 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 283522 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 187341 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2743 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1798 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 30627 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 132626 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 338002 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 223339 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 3271 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 2144 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 209 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 72 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 25 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 84 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2597 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2240 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1076 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 111 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1287 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 145 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 20 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 13274 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4249 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 482 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 88 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 6152 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 90 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1881 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 22535 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 21010 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 81816 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 29838 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 10250 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 17365 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4230 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1587 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1662 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1631 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 719493 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1797 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 7173 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 4064 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1545 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7511 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4465 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3956 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 314 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 508 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 81 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2979 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1245 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 80 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 134 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 761 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 209 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 477 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1008 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 467 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 213 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 248 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1315 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1870 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 184 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 214 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 44 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 4079 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 101241 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 712241 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1710305 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 378310 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 541331 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 50132 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 376 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 23382 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 20795 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 7801 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 180 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 30 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 474 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 802 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 16020 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 5391 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1861 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 761 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 385 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 128199 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 231621 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 141 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 29 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 331938 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 208198 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 20166 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 11751 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 10217 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 95 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4754 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 316 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 733 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 9882 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 95 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4750 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 316 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 687 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 335 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 4 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 46 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 53 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 55 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 59 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 52608 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 49107 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 6023 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 6528 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 956 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 5287 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 1126 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 527 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 956 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 5135 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 1126 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 282 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 152 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 246 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 156 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 93 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 25 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 273 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 45 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 118 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 38 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 6956 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 26973 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 99427 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 33168 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 7829 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 695 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 157 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 7829 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 695 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 157 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 165 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 878292 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 543177 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 161139 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 30303 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 513 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 39 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 513 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 39 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1281 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 6096 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 5522 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 4351 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 4453 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 67 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 28 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 66 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 67 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 28 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 66 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 29500 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 187298 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 10359 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3357 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 326 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 134 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 904 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 103 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 366 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 19 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 21 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 23 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 98 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 289 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 21 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 23 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 98 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 289 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 4015 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7361 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4889 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4792 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 656 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2033 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 74 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 201 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 14 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 470 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 17118 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 11836 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 39 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 251 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 249 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 2096 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1845 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 815 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 31 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 103 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2519 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 233 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4781 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2976 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 6521 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4579 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 589 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2465 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 12344 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 5515 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 3354 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 310 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1329 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2495 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2987 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 5361 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 7646 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 7086 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 7175 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 19637 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 18208 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 6216 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1843 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 5 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 495 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5693 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 7372 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3420 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 5 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 1065 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1194 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 92 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 615 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 819 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 803 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 947 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1728 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 536 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 24 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 19 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 61 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 920 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 771 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 266 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 14 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 730 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 224 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 10 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 224 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 99 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 20 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 15 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1998 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4703 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2512 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 39782 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 12204 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 21 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 872 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 506 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 403 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 98 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 72 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 101 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 5500 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 13714 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 22814 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 9215 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2863 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1912 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 972 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 85 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 57 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 89 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 198 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 3389 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3448 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 5587 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 5682 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 8352 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 7261 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 4184 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 979 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 536 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 19 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 67 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 367 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 755 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 3366 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6972 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3718 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2884 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 13015 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 48630 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 35553 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 9418 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 299 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 347 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 11 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 132 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 306 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 523 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 3000 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 108 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 963 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1385 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 169 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 4 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 6100 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3636 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 675 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 615 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 447 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 767 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1282 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 406 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 144 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 181 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 37 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 556 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 8 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 295 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2862 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 10776 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 11022 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 6788 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 293 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 83 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 16 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 127 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 980 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 10011 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 16766 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1918 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 116 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 26 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2517 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 5342 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 3023 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1468 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 465 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2352 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 573 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 65 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 89 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 339 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3860 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 934 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1463 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 552 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1436 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 109 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 8 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 16 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 197 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4599 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 5120 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 10149 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 58072 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 29831 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1546 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 2035 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 45 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2326 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2671 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3778 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 16242 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 41073 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 39211 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 28768 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 2174 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 1059 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 220 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1298 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 47 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 5 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2364 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4727 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2525 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 47169 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 166648 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 110884 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 604 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 489 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 14072 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 31804 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 27542 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 13946 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 5501 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1138 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1980 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 9 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 126 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 20809 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 46138 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 90281 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 35700 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 196037 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 128873 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 3246 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 439 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 749 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1791 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 587 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 56 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 464 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 11 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 883 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 844 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 604 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 700 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 153 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 73 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 476 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 173 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 28 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 13 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 128 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 367 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 33 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 357 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 352 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2443 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 2181 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 5268 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 961 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 64 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 124 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 818 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 11473 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 14252 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 3370 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 23951 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 8512 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 104 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 16 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 4 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 41 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 488 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 18083 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 18218 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 6542 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 1064 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1359 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 304 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 14 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1856 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 4463 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 3012 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2916 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 10737 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 12057 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 3242 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 55 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 2120 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 400 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 259 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 450 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1423 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 518 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 4013 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 12495 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 17774 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 5546 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 567 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 94 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 338 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1701 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 513 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2360 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 898 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 124 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 6407 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 19696 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 18467 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4736 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 34711 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 133510 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 11 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2289 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3972 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 6379 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 10621 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 324 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 281 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 69 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 22 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 189 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 235 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 285 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 7993 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 110922 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 53764 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 12010 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 19722 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 4216 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 32 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1951 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 48701 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 845 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 487 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 742 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 11 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 181 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1921 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 7164 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 31655 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 10023 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 6051 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 5132 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1162 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 190 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 23 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1139 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1481 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2729 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1326 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 24 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1395 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1167 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 32 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 282 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 6 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 235 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 63 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 11 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 86 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 349 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 79203 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 213027 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 121723 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 192736 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 169869 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 283042 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 244014 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 126263 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 13 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 13309 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 122077 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 145570 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7519 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 146 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3174 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1169 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 994 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 49 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 300 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1587 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 722 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 452 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1213 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7434 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 14349 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15593 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4224 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 31 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8986 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 42466 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8389 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 375 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 24 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 279 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1013 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 536 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 327 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2539 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3173 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7906 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7998 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3351 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 4 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 639 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1458 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 578 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2269 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10709 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5618 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1598 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 114 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 60747 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 60654 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 46752 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 73613 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 121846 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 16643 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 61405 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 74731 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 25507 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 14182 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 7366 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 27 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 10459 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 25142 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 6308 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 5017 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 8726 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2473 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 16742 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 18634 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 8217 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 2059 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 1043 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 356 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 870 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 118 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 180 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 6680 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 4623 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 29634 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 38599 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 4426 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3973 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 1136 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3861 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 21394 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 31144 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 19315 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 53541 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 38889 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 17075 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 889 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 20 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 676 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 5754 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 6605 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 8248 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 7883 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 987 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 3315 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 928 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 3080 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2493 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 381 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 178 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 91 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 202 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 64 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 593 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 860 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 271 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1317 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1522 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 410 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 53 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 13 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 17 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 24 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1192 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 8269 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11850 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1024 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 419 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1133 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 14 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 42 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 58 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1185 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 2159 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 6376 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 2140 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2500 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 265 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 16 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 232 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 113 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1055 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 155 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2195 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1117 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1617 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1024 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 425 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 189 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 231 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 178519 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 665911 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 1002962 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 222992 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 439190 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 848373 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 652615 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 1091430 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 741414 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1658617 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1488883 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 710 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 685 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 6540 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 12 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6944 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2799 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 62050 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 229498 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 850222 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 55938 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 780 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 558 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 331 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1426 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 12538 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 300607 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1115763 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 448092 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 7560 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 9199 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4514 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9987 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 5464 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 1010 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8854 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 7456 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 61116 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 100498 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 74132 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2925 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5546 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 452 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1586 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 971 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9897 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 13 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 71 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 78 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 110 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 408 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 641 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1169 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1088 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4595 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1693 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 286 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 72 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 17 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 9 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 70 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2238 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 9202 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 165 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 421 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 131 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 131 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/AK.POP b/NONROAD/NR08a/DATA/POP/AK.POP new file mode 100644 index 0000000..d992c6f --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/AK.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 02000 AK Alaska 376,594.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +02000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 241.2 +02000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 142.3 +02000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 152.8 +02000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 12175.4 +02000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 12289.7 +02000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 5516.1 +02000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 19433.0 +02000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 7986.8 +02000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 2080.7 +02000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 8554.2 +02000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 4213.2 +02000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 4323.4 +02000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 37416.2 +02000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 266.8 +02000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 726.8 +02000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.2 +02000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.4 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 14.9 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 28.3 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 222.7 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.3 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.5 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +02000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.1 +02000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.3 +02000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +02000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.5 +02000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +02000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.1 +02000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.9 +02000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 13.0 +02000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.6 +02000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 4.7 +02000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.8 +02000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.9 +02000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.8 +02000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.9 +02000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 388.9 +02000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.9 +02000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 36.5 +02000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 185.4 +02000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 57.1 +02000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 10.1 +02000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 14.1 +02000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 2.5 +02000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 6.5 +02000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.8 +02000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.5 +02000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.4 +02000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.8 +02000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.5 +02000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.4 +02000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 35.0 +02000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 102.4 +02000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 86.8 +02000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 43.5 +02000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 30.6 +02000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.2 +02000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +02000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.2 +02000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +02000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 15.2 +02000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 23.4 +02000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 6.8 +02000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.9 +02000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +02000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +02000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +02000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +02000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +02000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.7 +02000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.7 +02000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +02000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +02000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 26.6 +02000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 26.1 +02000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 9.3 +02000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 10.6 +02000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.8 +02000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.5 +02000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.2 +02000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.8 +02000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.5 +02000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.2 +02000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 11.0 +02000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 224.7 +02000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 9.1 +02000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.8 +02000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 3.5 +02000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 2.3 +02000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.9 +02000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.8 +02000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.4 +02000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.9 +02000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.8 +02000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.4 +02000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 28.7 +02000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 137.7 +02000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 70.8 +02000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 14.8 +02000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 6.5 +02000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.8 +02000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.0 +02000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.8 +02000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.0 +02000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 3.9 +02000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 218.4 +02000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 364.9 +02000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 12.4 +02000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 9.5 +02000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.4 +02000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.5 +02000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +02000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +02000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.3 +02000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +02000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +02000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.3 +02000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +02000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 3.5 +02000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 4.9 +02000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 9.0 +02000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 2.3 +02000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +02000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +02000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +02000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +02000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +02000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.8 +02000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +02000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +02000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +02000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +02000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.8 +02000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +02000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +02000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +02000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.7 +02000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +02000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +02000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.7 +02000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +02000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.9 +02000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 18.8 +02000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +02000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +02000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +02000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +02000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +02000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +02000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.7 +02000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 15.0 +02000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 4.2 +02000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 2.3 +02000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 2.5 +02000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 4.2 +02000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 2.3 +02000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 2.5 +02000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 13.2 +02000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 43.6 +02000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 6.6 +02000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 8.0 +02000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.3 +02000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +02000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.6 +02000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.5 +02000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +02000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1.2 +02000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.3 +02000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 7.9 +02000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 3.5 +02000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 7.2 +02000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +02000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 3.5 +02000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 7.2 +02000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +02000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 0.9 +02000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 3.3 +02000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 5.3 +02000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.4 +02000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 2.5 +02000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +02000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 17.5 +02000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 38.3 +02000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 100.7 +02000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 7.4 +02000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 46.8 +02000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.2 +02000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 24.2 +02000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 1.8 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 2.1 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 3.2 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 0.9 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 1.9 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1.1 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 1.3 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.3 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.0 +02000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1.1 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 1.3 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.3 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.0 +02000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +02000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +02000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.1 +02000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 35.8 +02000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 6.8 +02000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 3.4 +02000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 2.9 +02000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.3 +02000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.4 +02000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +02000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.1 +02000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +02000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.3 +02000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.4 +02000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.0 +02000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.1 +02000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +02000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +02000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +02000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 0.7 +02000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 0.4 +02000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +02000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 0.4 +02000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +02000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +02000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +02000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 2.4 +02000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.3 +02000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +02000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +02000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.2 +02000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.1 +02000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 0.4 +02000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +02000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +02000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.2 +02000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.1 +02000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 0.4 +02000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +02000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +02000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.0 +02000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +02000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +02000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1416.4 +02000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 70394.7 +02000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 23.2 +02000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 20.0 +02000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 996.2 +02000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.3 +02000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 131.3 +02000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 928.6 +02000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 6594.1 +02000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 6.7 +02000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 47.2 +02000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 335.3 +02000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 11455.0 +02000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +02000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 108.0 +02000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 379.9 +02000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 8562.3 +02000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 21683.8 +02000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +02000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +02000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1139.0 +02000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 80.9 +02000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 494.5 +02000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +02000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +02000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +02000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 17.9 +02000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 4.8 +02000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.3 +02000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.5 +02000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1267.7 +02000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 14077.8 +02000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +02000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +02000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 345.6 +02000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 128.8 +02000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 797.7 +02000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +02000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +02000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 19.7 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 192.8 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 6.1 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 6.6 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.5 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 3.4 +02000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 3.4 +02000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 3695.3 +02000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 5658.7 +02000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 9546.5 +02000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 446.2 +02000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 155.5 +02000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 238.1 +02000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 401.7 +02000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 18.8 +02000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 15.5 +02000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2237.7 +02000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 1735.3 +02000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 8.2 +02000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.1 +02000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 18.2 +02000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 14.1 +02000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +02000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 18.8 +02000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 64.3 +02000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 28.4 +02000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.4 +02000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 69.0 +02000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 135.1 +02000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 55.3 +02000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 1732.5 +02000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 19250.1 +02000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 6274.0 +02000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.4 +02000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 14.1 +02000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 156.6 +02000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 51.0 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1.1 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 4.7 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 8.8 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.7 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 2.8 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +02000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.7 +02000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.7 +02000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 2.8 +02000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +02000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.7 +02000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 232.5 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 61.8 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 138.0 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 179.9 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 35.6 +02000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.3 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 56.4 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 244.4 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 622.9 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 411.6 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 6.0 +02000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 3.9 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 20.4 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 88.5 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 225.5 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 149.0 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2.2 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1.4 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.1 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.0 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +02000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +02000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.3 +02000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.2 +02000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.1 +02000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +02000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.1 +02000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.0 +02000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +02000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +02000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +02000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 1.4 +02000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 0.4 +02000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.1 +02000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +02000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 0.6 +02000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +02000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.2 +02000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 2.4 +02000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 2.2 +02000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 8.6 +02000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 3.1 +02000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 1.1 +02000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1.8 +02000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 0.4 +02000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.2 +02000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.2 +02000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.2 +02000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 75.6 +02000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.2 +02000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 0.8 +02000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 0.4 +02000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.2 +02000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 0.8 +02000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 0.5 +02000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 0.4 +02000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.0 +02000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.1 +02000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +02000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 0.3 +02000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.1 +02000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +02000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +02000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.1 +02000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.0 +02000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +02000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.1 +02000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.1 +02000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.0 +02000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.0 +02000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +02000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.0 +02000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.1 +02000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.2 +02000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.0 +02000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.0 +02000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +02000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 6.9 +02000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 172.2 +02000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 1211.5 +02000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 2909.1 +02000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 643.5 +02000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 920.8 +02000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +02000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +02000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +02000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +02000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +02000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +02000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 85.3 +02000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.6 +02000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 39.8 +02000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 35.4 +02000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 13.3 +02000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.3 +02000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +02000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 0.8 +02000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 1.4 +02000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 27.2 +02000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 9.2 +02000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 3.2 +02000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 1.3 +02000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.7 +02000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 218.1 +02000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 394.0 +02000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.2 +02000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.0 +02000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 564.6 +02000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 354.1 +02000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 34.3 +02000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 20.0 +02000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 17.4 +02000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.2 +02000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 8.1 +02000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.5 +02000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 1.2 +02000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 16.8 +02000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.2 +02000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 8.1 +02000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.5 +02000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 1.2 +02000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.6 +02000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +02000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.1 +02000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.1 +02000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.1 +02000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.1 +02000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 89.5 +02000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 83.5 +02000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 10.2 +02000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 11.1 +02000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 1.6 +02000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 9.0 +02000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 1.9 +02000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 0.9 +02000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 1.6 +02000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 8.7 +02000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 1.9 +02000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.5 +02000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.3 +02000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.4 +02000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.3 +02000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.2 +02000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.0 +02000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.5 +02000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.1 +02000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.2 +02000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +02000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 11.8 +02000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 45.9 +02000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 169.1 +02000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 56.4 +02000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 13.3 +02000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 1.2 +02000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.3 +02000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 13.3 +02000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 1.2 +02000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.3 +02000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.3 +02000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 1493.9 +02000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 923.9 +02000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 274.1 +02000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 51.5 +02000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 0.9 +02000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +02000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +02000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 0.9 +02000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +02000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +02000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 2.2 +02000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 10.4 +02000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 9.4 +02000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 7.4 +02000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 7.6 +02000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +02000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +02000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +02000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +02000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +02000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +02000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +02000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +02000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +02000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 248.1 +02000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1575.2 +02000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 87.1 +02000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 28.2 +02000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.7 +02000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.1 +02000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 14.6 +02000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.7 +02000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 5.9 +02000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.3 +02000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +02000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +02000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +02000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +02000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.7 +02000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +02000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +02000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +02000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +02000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.7 +02000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 63.6 +02000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 116.7 +02000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 77.5 +02000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +02000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 75.9 +02000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 10.4 +02000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 32.2 +02000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.2 +02000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 3.2 +02000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.0 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 37.6 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 26.0 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.6 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.5 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 4.6 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 4.1 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 1.8 +02000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +02000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.3 +02000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 6.2 +02000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.6 +02000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 11.9 +02000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 7.4 +02000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 16.2 +02000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 11.4 +02000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.5 +02000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 6.1 +02000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 30.6 +02000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 13.7 +02000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 8.3 +02000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.8 +02000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 3.3 +02000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 6.2 +02000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 7.4 +02000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 13.3 +02000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 19.0 +02000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 17.6 +02000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 17.8 +02000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 48.7 +02000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 45.2 +02000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 15.4 +02000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 4.6 +02000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +02000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.2 +02000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 14.1 +02000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 18.3 +02000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 8.5 +02000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +02000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 2.6 +02000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 3.0 +02000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +02000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.5 +02000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 2.0 +02000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +02000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 2.0 +02000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 2.3 +02000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 4.3 +02000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.3 +02000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +02000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +02000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +02000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 2.3 +02000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.9 +02000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.7 +02000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +02000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.8 +02000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.6 +02000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +02000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.6 +02000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +02000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +02000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +02000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 5.0 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 11.7 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 6.2 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 98.7 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 30.3 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 2.2 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.3 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.0 +02000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +02000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +02000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +02000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +02000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +02000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 13.6 +02000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 34.0 +02000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 56.6 +02000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 22.9 +02000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 7.1 +02000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 4.7 +02000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 2.4 +02000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +02000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.5 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 8.4 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 8.6 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 13.9 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 14.1 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 20.7 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 18.0 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 10.4 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 2.4 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.3 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +02000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +02000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +02000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.9 +02000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.9 +02000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 8.4 +02000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 17.3 +02000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 9.2 +02000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 7.2 +02000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 32.3 +02000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 120.7 +02000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 88.2 +02000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 23.4 +02000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.7 +02000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.9 +02000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +02000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.3 +02000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.8 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.3 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 7.4 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.3 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 2.4 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 3.4 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.4 +02000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 15.1 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 9.0 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.7 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.5 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.1 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.9 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 3.2 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.0 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.4 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.4 +02000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +02000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +02000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.4 +02000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +02000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.7 +02000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 7.1 +02000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 26.7 +02000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 27.3 +02000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 16.8 +02000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.7 +02000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +02000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +02000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +02000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +02000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.3 +02000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 2.4 +02000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 24.8 +02000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 41.6 +02000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 4.8 +02000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.3 +02000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +02000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 6.2 +02000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 13.3 +02000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 7.5 +02000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 3.6 +02000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.2 +02000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 5.8 +02000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.4 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.8 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 9.6 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 2.3 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 3.6 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.4 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 3.6 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.3 +02000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.5 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 11.4 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 12.7 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 25.2 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 144.1 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 74.0 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 3.8 +02000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 5.0 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 5.8 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 6.6 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 9.4 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 40.3 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 101.9 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 97.3 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 71.4 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 5.4 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 2.6 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.5 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 3.2 +02000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 5.9 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 11.7 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 6.3 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 117.0 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 413.5 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 275.1 +02000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.5 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.2 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 34.9 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 78.9 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 68.3 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 34.6 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 13.6 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.8 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 4.9 +02000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +02000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.3 +02000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 51.6 +02000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 114.5 +02000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 224.0 +02000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 88.6 +02000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 486.4 +02000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 319.7 +02000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 8.1 +02000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +02000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.1 +02000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.9 +02000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 4.4 +02000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.5 +02000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +02000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.2 +02000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +02000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 2.2 +02000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 2.1 +02000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.5 +02000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.7 +02000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.4 +02000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +02000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.2 +02000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.4 +02000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +02000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +02000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.3 +02000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.9 +02000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +02000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.9 +02000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.9 +02000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 6.1 +02000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 5.4 +02000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 13.1 +02000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 2.4 +02000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +02000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +02000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.1 +02000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 0.5 +02000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 6.4 +02000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 7.9 +02000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 1.9 +02000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 13.3 +02000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 4.7 +02000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.1 +02000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +02000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +02000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.0 +02000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.3 +02000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 10.1 +02000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 10.1 +02000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 3.6 +02000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 0.6 +02000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 0.8 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.2 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1.0 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 2.5 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 1.7 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 1.6 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 6.0 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 6.7 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 1.8 +02000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.0 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1.2 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.2 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.1 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.3 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 0.8 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.3 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 2.2 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 7.0 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 9.9 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 3.1 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.3 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.1 +02000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.2 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 0.9 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.3 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 1.3 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 0.5 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.1 +02000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +02000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 14.1 +02000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 43.2 +02000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 40.5 +02000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 10.4 +02000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 76.2 +02000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 293.1 +02000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +02000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 1.3 +02000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 2.2 +02000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 3.6 +02000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 5.9 +02000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.2 +02000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.2 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.0 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +02000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +02000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +02000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.3 +02000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.3 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.2 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 5.3 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 74.0 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 35.9 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 8.0 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 13.2 +02000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 2.8 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1.3 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 32.5 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.6 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.3 +02000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.5 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.1 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1.3 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 4.8 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 21.1 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 6.7 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 4.0 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 3.4 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 0.8 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.1 +02000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 0.8 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1.0 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 1.8 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 0.9 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 0.9 +02000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 0.8 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.2 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.2 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.0 +02000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +02000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +02000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.0 +02000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +02000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 8.3 +02000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 22.4 +02000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 12.8 +02000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 20.3 +02000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 17.8 +02000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 29.7 +02000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 25.6 +02000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 13.3 +02000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +02000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 1.4 +02000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 12.8 +02000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 15.3 +02000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 0.8 +02000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.0 +02000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 0.3 +02000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.1 +02000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.1 +02000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +02000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.0 +02000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.2 +02000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.1 +02000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.0 +02000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.1 +02000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 0.8 +02000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 1.5 +02000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 1.6 +02000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 0.4 +02000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +02000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +02000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +02000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 0.9 +02000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 4.5 +02000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 0.9 +02000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.0 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.0 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.1 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.1 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.0 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.3 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 0.3 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 0.8 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 0.8 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 0.4 +02000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +02000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +02000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +02000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.1 +02000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.2 +02000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.1 +02000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.2 +02000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 1.1 +02000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 0.6 +02000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.2 +02000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +02000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +02000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 103.3 +02000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 103.2 +02000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 79.5 +02000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 125.2 +02000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 207.2 +02000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 28.3 +02000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 104.4 +02000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 127.1 +02000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 43.4 +02000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 24.1 +02000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 12.5 +02000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +02000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +02000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +02000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +02000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 17.8 +02000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 42.8 +02000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 10.7 +02000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 8.5 +02000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 14.8 +02000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 4.2 +02000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 28.5 +02000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 31.7 +02000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 14.0 +02000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 3.5 +02000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 1.8 +02000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +02000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +02000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.6 +02000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 1.5 +02000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.2 +02000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.3 +02000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 11.4 +02000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 7.9 +02000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 50.4 +02000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 65.7 +02000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 7.5 +02000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 6.8 +02000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 1.9 +02000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +02000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +02000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +02000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +02000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +02000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +02000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 6.6 +02000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 36.4 +02000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 53.0 +02000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 32.9 +02000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 91.1 +02000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 66.1 +02000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 29.0 +02000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 1.5 +02000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +02000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +02000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 1.1 +02000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 9.8 +02000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 11.2 +02000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 14.0 +02000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 13.4 +02000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 1.7 +02000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 5.6 +02000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 1.6 +02000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 5.2 +02000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 4.2 +02000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.6 +02000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.3 +02000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.2 +02000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.3 +02000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.1 +02000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 1.0 +02000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 1.5 +02000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.5 +02000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 2.2 +02000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 2.6 +02000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.7 +02000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.1 +02000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +02000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +02000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.2 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 10.0 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 69.5 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 99.7 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 8.6 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 3.5 +02000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +02000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 18.3 +02000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +02000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.2 +02000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.7 +02000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.9 +02000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 19.1 +02000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 34.9 +02000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 102.9 +02000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 34.5 +02000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 40.4 +02000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 4.3 +02000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +02000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 3.7 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.8 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 16.7 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.5 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 34.8 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 17.7 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 25.6 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 16.2 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 6.7 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 3.0 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 3.7 +02000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +02000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 582.3 +02000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 2172.2 +02000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 3271.6 +02000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 727.4 +02000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1432.6 +02000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2767.4 +02000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 2128.8 +02000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 3560.2 +02000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2418.5 +02000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 5410.3 +02000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 4856.7 +02000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.3 +02000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.2 +02000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 21.3 +02000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +02000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 22.7 +02000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 9.1 +02000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 202.4 +02000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 748.6 +02000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2773.4 +02000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 182.5 +02000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.5 +02000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.8 +02000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.1 +02000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 4.7 +02000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 40.9 +02000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +02000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 980.6 +02000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 3639.6 +02000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1461.7 +02000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 24.7 +02000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 30.0 +02000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 14.7 +02000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 32.6 +02000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 17.8 +02000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 3.3 +02000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 28.9 +02000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 24.3 +02000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 199.4 +02000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 327.8 +02000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 241.8 +02000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 9.5 +02000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 18.1 +02000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.5 +02000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 5.2 +02000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 3.2 +02000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 32.3 +02000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +02000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.2 +02000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.2 +02000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.3 +02000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.9 +02000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 1.5 +02000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 2.6 +02000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 2.5 +02000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 10.4 +02000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 3.8 +02000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.6 +02000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.2 +02000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +02000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +02000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +02000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.2 +02000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 5.1 +02000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 20.9 +02000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.4 +02000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 1.0 +02000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +02000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +02000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +02000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/AL.POP b/NONROAD/NR08a/DATA/POP/AL.POP new file mode 100644 index 0000000..9f56cb2 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/AL.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 01000 AL Alabama 2,058,395.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +01000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +01000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +01000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 22864.5 +01000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11261.6 +01000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 11556.1 +01000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 100009.9 +01000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2623.7 +01000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 5082.2 +01000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.5 +01000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.9 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.6 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 104.4 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 197.7 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1557.0 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 15.9 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.4 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +01000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.5 +01000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 15.9 +01000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +01000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.4 +01000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +01000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.5 +01000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 11.0 +01000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 76.5 +01000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 3.5 +01000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 27.7 +01000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 4.7 +01000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 5.2 +01000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 4.7 +01000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 5.2 +01000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2289.1 +01000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 5.0 +01000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 215.1 +01000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1091.5 +01000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 336.0 +01000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 59.6 +01000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 82.7 +01000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 14.8 +01000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 38.5 +01000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 4.5 +01000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.1 +01000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.1 +01000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 4.5 +01000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.1 +01000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.1 +01000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 206.0 +01000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 602.6 +01000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 511.0 +01000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 255.9 +01000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 180.3 +01000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 7.3 +01000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.7 +01000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 7.3 +01000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.7 +01000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 89.5 +01000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 137.8 +01000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 39.8 +01000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 16.8 +01000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.7 +01000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +01000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.7 +01000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +01000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.6 +01000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 10.1 +01000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 10.1 +01000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.4 +01000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.4 +01000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 156.7 +01000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 153.4 +01000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 54.8 +01000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 62.5 +01000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 10.4 +01000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 8.8 +01000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 6.9 +01000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 10.4 +01000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 8.8 +01000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 6.9 +01000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 64.6 +01000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1322.6 +01000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 53.5 +01000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 16.4 +01000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 20.8 +01000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 13.6 +01000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.5 +01000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 5.0 +01000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 8.3 +01000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.5 +01000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 5.0 +01000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 8.3 +01000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 169.1 +01000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 810.5 +01000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 416.7 +01000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 87.4 +01000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 38.4 +01000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 10.6 +01000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.8 +01000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 10.6 +01000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.8 +01000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 22.9 +01000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1285.4 +01000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2147.4 +01000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 72.9 +01000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 55.8 +01000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.2 +01000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.1 +01000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.1 +01000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +01000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 7.7 +01000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.2 +01000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +01000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 7.7 +01000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.2 +01000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 20.7 +01000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 29.1 +01000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 53.0 +01000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 13.6 +01000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.7 +01000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.7 +01000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.5 +01000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.6 +01000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +01000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 10.9 +01000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +01000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.3 +01000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.6 +01000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +01000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 10.9 +01000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +01000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.3 +01000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.5 +01000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 21.7 +01000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.7 +01000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.5 +01000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 21.7 +01000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.7 +01000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 5.3 +01000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 110.9 +01000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +01000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.9 +01000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +01000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +01000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.9 +01000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +01000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 4.4 +01000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 88.1 +01000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 25.0 +01000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 13.8 +01000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 14.8 +01000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 25.0 +01000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 13.8 +01000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 14.8 +01000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 77.7 +01000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 256.4 +01000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 38.6 +01000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 47.1 +01000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.8 +01000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.3 +01000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 9.2 +01000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 8.8 +01000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.4 +01000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 40.5 +01000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 11.3 +01000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 259.8 +01000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 114.9 +01000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 239.3 +01000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 5.3 +01000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 114.9 +01000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 239.3 +01000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 5.3 +01000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 30.5 +01000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 108.8 +01000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 175.2 +01000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 12.8 +01000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 81.4 +01000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.4 +01000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 578.7 +01000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1264.9 +01000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3329.1 +01000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 243.1 +01000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1547.2 +01000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 7.6 +01000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 801.6 +01000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 61.0 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 69.9 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 107.0 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 28.9 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 62.0 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 37.2 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 42.1 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 42.7 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.9 +01000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 37.2 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 42.1 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 42.7 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.9 +01000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +01000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +01000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.9 +01000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1184.5 +01000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 223.8 +01000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 114.0 +01000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 96.3 +01000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.6 +01000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.0 +01000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.9 +01000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.6 +01000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +01000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.6 +01000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.0 +01000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.5 +01000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.6 +01000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +01000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.4 +01000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.6 +01000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 23.5 +01000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 14.3 +01000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.5 +01000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 14.3 +01000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.5 +01000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +01000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +01000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 16.6 +01000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.9 +01000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.6 +01000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +01000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 7.6 +01000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 3.5 +01000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 13.7 +01000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +01000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +01000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 7.2 +01000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.7 +01000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 13.5 +01000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +01000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.4 +01000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.8 +01000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +01000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +01000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 10752.5 +01000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 534384.7 +01000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 176.2 +01000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 401.7 +01000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 19962.5 +01000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 6.6 +01000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 997.1 +01000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 7048.9 +01000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 50057.6 +01000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 133.8 +01000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 946.1 +01000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 6718.9 +01000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 86958.1 +01000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +01000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2163.4 +01000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 7611.9 +01000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 64998.7 +01000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 164607.0 +01000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +01000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +01000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 22824.1 +01000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1620.8 +01000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3753.8 +01000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +01000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +01000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +01000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 358.0 +01000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 95.8 +01000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 5.1 +01000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 11.0 +01000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 9623.2 +01000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 106867.9 +01000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +01000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +01000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 6926.1 +01000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2580.3 +01000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 6055.7 +01000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +01000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +01000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 395.0 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3862.7 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 121.7 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 132.4 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 10.1 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 68.7 +01000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 68.2 +01000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +01000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +01000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +01000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +01000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +01000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +01000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +01000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +01000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 117.4 +01000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 16986.8 +01000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 13173.1 +01000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 62.3 +01000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.5 +01000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 364.7 +01000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 282.9 +01000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.3 +01000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 377.5 +01000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1289.3 +01000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 570.1 +01000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 8.6 +01000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1383.1 +01000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2706.8 +01000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 419.5 +01000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 13151.6 +01000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 146132.5 +01000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 47627.9 +01000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 9.0 +01000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 282.4 +01000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3137.9 +01000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1022.7 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.5 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 22.8 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 93.9 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 177.0 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.4 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 57.0 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +01000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.6 +01000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.4 +01000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 57.0 +01000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +01000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.6 +01000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.6 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 4658.9 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1239.3 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2765.5 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3604.7 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 714.2 +01000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 6.2 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 428.5 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1855.3 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 4728.4 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3124.4 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 45.8 +01000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 30.0 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 409.5 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1773.3 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4519.3 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2986.2 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 43.7 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 28.7 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.8 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.0 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +01000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.1 +01000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 17.1 +01000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 14.8 +01000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 7.1 +01000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.7 +01000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 8.5 +01000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.0 +01000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +01000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +01000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +01000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 87.4 +01000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 28.0 +01000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 3.2 +01000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.6 +01000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 40.5 +01000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.6 +01000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 12.4 +01000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 148.4 +01000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 138.4 +01000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 538.9 +01000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 196.5 +01000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 67.5 +01000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 114.4 +01000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 27.9 +01000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 10.5 +01000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 10.9 +01000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 10.7 +01000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 4739.3 +01000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 11.8 +01000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 47.2 +01000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 26.8 +01000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 10.2 +01000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 49.5 +01000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 29.4 +01000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 26.1 +01000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 2.1 +01000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 3.3 +01000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.5 +01000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 19.6 +01000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 8.2 +01000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.5 +01000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.9 +01000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 5.0 +01000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 1.4 +01000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +01000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 3.1 +01000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 6.6 +01000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 3.1 +01000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 1.4 +01000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +01000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 1.6 +01000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 8.7 +01000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 12.3 +01000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 1.2 +01000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 1.4 +01000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.3 +01000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 53.7 +01000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1333.4 +01000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 9380.7 +01000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 22525.9 +01000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4982.6 +01000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 7129.7 +01000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +01000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +01000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +01000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +01000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +01000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +01000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 660.3 +01000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 5.0 +01000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 308.0 +01000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 273.9 +01000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 102.7 +01000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.4 +01000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.4 +01000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 6.2 +01000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 10.6 +01000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 211.0 +01000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 71.0 +01000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 24.5 +01000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 10.0 +01000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 5.1 +01000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1688.5 +01000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3050.6 +01000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.9 +01000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.4 +01000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 4371.8 +01000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2742.1 +01000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 265.6 +01000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 154.8 +01000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 134.6 +01000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.2 +01000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 62.6 +01000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 4.2 +01000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 9.7 +01000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 130.1 +01000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.2 +01000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 62.6 +01000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 4.2 +01000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 9.0 +01000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 4.4 +01000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +01000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.6 +01000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.7 +01000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.7 +01000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.8 +01000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 692.9 +01000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 646.8 +01000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 79.3 +01000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 86.0 +01000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 12.6 +01000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 69.6 +01000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 14.8 +01000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 6.9 +01000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 12.6 +01000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 67.6 +01000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 14.8 +01000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.7 +01000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.0 +01000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 3.2 +01000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.1 +01000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.2 +01000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +01000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.6 +01000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.6 +01000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.6 +01000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.5 +01000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 91.6 +01000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 355.3 +01000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1309.5 +01000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 436.9 +01000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 103.1 +01000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 9.2 +01000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.1 +01000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 103.1 +01000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 9.2 +01000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.1 +01000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.2 +01000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 11567.7 +01000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 7154.0 +01000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2122.3 +01000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 399.1 +01000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 6.8 +01000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.5 +01000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +01000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 6.8 +01000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.5 +01000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +01000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 16.9 +01000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 80.3 +01000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 72.7 +01000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 57.3 +01000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 58.7 +01000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +01000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +01000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +01000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +01000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +01000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +01000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +01000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +01000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +01000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 2110.9 +01000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 13402.3 +01000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 741.3 +01000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 240.2 +01000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 23.3 +01000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 9.6 +01000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 4.2 +01000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.5 +01000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.7 +01000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +01000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +01000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +01000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +01000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.5 +01000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.4 +01000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +01000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +01000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +01000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.5 +01000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.4 +01000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 29.5 +01000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 54.1 +01000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 35.9 +01000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +01000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 35.2 +01000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 4.8 +01000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 14.9 +01000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.5 +01000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.5 +01000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 7.2 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 262.8 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 181.7 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.6 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.9 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.8 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 32.2 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 28.3 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 12.5 +01000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.5 +01000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.5 +01000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 36.8 +01000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 3.4 +01000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 69.8 +01000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 43.5 +01000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 95.2 +01000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 66.9 +01000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 8.6 +01000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 36.0 +01000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 180.2 +01000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 80.5 +01000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 49.0 +01000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 4.5 +01000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 19.4 +01000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 36.4 +01000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 43.6 +01000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 78.3 +01000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 111.6 +01000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 103.5 +01000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 104.8 +01000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 286.7 +01000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 265.9 +01000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 90.8 +01000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 26.9 +01000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +01000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 7.2 +01000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 83.1 +01000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 107.6 +01000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 49.9 +01000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +01000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 15.5 +01000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 17.4 +01000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.3 +01000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 9.0 +01000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 12.0 +01000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +01000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 11.7 +01000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 13.8 +01000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 25.2 +01000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 7.8 +01000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +01000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +01000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.9 +01000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 13.4 +01000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 11.3 +01000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 3.9 +01000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +01000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 10.7 +01000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 3.3 +01000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +01000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 3.3 +01000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.4 +01000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.3 +01000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +01000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 29.2 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 68.7 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 36.7 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 580.9 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 178.2 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 12.7 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 7.4 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 5.9 +01000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.4 +01000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +01000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +01000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.1 +01000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.5 +01000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 80.3 +01000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 200.3 +01000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 333.1 +01000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 134.6 +01000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 41.8 +01000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 27.9 +01000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 14.2 +01000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.2 +01000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.8 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.3 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 2.9 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 49.5 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 50.3 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 81.6 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 83.0 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 122.0 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 106.0 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 61.1 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 14.3 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 7.8 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +01000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +01000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.0 +01000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 5.4 +01000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 11.0 +01000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 49.1 +01000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 101.8 +01000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 54.3 +01000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 42.1 +01000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 190.1 +01000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 710.1 +01000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 519.2 +01000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 137.5 +01000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 4.4 +01000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 5.1 +01000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +01000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.9 +01000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 4.5 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 7.6 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 43.8 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.6 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 14.1 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 20.2 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.5 +01000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 89.1 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 53.1 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 9.9 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 9.0 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 6.5 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 11.2 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 18.7 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 5.9 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.1 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.6 +01000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.5 +01000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +01000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 8.1 +01000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +01000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 4.3 +01000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 41.8 +01000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 157.4 +01000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 160.9 +01000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 99.1 +01000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 4.3 +01000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.2 +01000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +01000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +01000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +01000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.9 +01000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 14.3 +01000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 146.2 +01000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 244.8 +01000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 28.0 +01000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.7 +01000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.4 +01000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 36.7 +01000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 78.0 +01000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 44.1 +01000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 21.4 +01000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 6.8 +01000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 34.3 +01000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 8.4 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.9 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.3 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 4.9 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 56.4 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 13.6 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 21.4 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 8.1 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 21.0 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.6 +01000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 2.9 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 67.2 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 74.8 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 148.2 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 848.0 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 435.6 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 22.6 +01000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 29.7 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.7 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 34.0 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 39.0 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 55.2 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 237.2 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 599.8 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 572.6 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 420.1 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 31.7 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 15.5 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 3.2 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 18.9 +01000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.7 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 34.5 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 69.0 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 36.9 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 688.8 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2433.4 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1619.1 +01000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 8.8 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 7.1 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 205.5 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 464.4 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 402.2 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 203.6 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 80.3 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 16.6 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 28.9 +01000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +01000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.8 +01000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 303.9 +01000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 673.7 +01000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1318.3 +01000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 521.3 +01000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 2862.6 +01000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1881.8 +01000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 47.4 +01000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +01000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 6.4 +01000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 10.9 +01000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 26.2 +01000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 8.6 +01000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.8 +01000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 6.8 +01000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +01000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 12.9 +01000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 12.3 +01000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 8.8 +01000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 10.2 +01000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.2 +01000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.1 +01000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 7.0 +01000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.5 +01000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.4 +01000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +01000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.9 +01000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 5.4 +01000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.5 +01000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 5.2 +01000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 5.1 +01000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 35.7 +01000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 31.9 +01000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 76.9 +01000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 14.0 +01000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +01000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.9 +01000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.3 +01000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 15.1 +01000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 211.1 +01000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 262.2 +01000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 62.0 +01000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 440.6 +01000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 156.6 +01000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.9 +01000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +01000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +01000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.8 +01000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 9.0 +01000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 332.7 +01000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 335.2 +01000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 120.4 +01000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 19.6 +01000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 25.0 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 5.6 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 34.1 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 82.1 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 55.4 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 53.6 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 197.5 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 221.8 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 59.6 +01000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.0 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 39.0 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 7.4 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 4.8 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 8.3 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 26.2 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 9.5 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 73.8 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 229.9 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 327.0 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 102.0 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 10.4 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.7 +01000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 6.2 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 31.3 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 9.4 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 43.4 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 16.5 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.3 +01000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +01000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 98.4 +01000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 302.4 +01000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 283.5 +01000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 72.7 +01000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 532.9 +01000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2049.5 +01000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +01000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +01000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +01000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +01000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +01000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +01000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 42.1 +01000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 73.1 +01000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 117.4 +01000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 195.4 +01000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 6.0 +01000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.8 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.9 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +01000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +01000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +01000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +01000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.8 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 106.9 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1483.1 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 718.9 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 160.6 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 263.7 +01000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 56.4 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 26.1 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 651.2 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 11.3 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 6.5 +01000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 9.9 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.4 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 25.7 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 95.8 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 423.3 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 134.0 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 80.9 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 68.6 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 15.5 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.5 +01000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 15.2 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 19.8 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 36.5 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 17.7 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 18.7 +01000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 15.6 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.8 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 3.1 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.8 +01000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +01000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.6 +01000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 2.3 +01000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +01000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 521.7 +01000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 1403.2 +01000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 801.8 +01000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 1269.5 +01000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1118.9 +01000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 1864.4 +01000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 1607.3 +01000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 831.7 +01000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +01000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 87.7 +01000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 804.1 +01000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 958.9 +01000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 49.5 +01000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.0 +01000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 20.9 +01000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 7.7 +01000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 6.5 +01000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.3 +01000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 2.0 +01000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 10.5 +01000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 4.8 +01000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 3.0 +01000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 8.0 +01000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 49.0 +01000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 94.5 +01000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 102.7 +01000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 27.8 +01000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.2 +01000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +01000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +01000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 59.2 +01000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 279.7 +01000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 55.3 +01000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 2.5 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.2 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 1.8 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 6.7 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 3.5 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 2.2 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 16.7 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 20.9 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 52.1 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 52.7 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 22.1 +01000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +01000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +01000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +01000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 4.2 +01000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 9.6 +01000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 3.8 +01000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 14.9 +01000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 70.5 +01000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 37.0 +01000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 10.5 +01000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.7 +01000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +01000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 800.1 +01000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 798.9 +01000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 615.8 +01000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 969.5 +01000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1604.8 +01000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 219.2 +01000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 808.7 +01000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 984.3 +01000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 336.0 +01000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 186.8 +01000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 97.0 +01000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +01000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +01000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +01000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +01000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +01000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.4 +01000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 137.8 +01000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 331.1 +01000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 83.1 +01000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 66.1 +01000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 114.9 +01000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 32.6 +01000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 220.5 +01000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 245.4 +01000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 108.2 +01000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 27.1 +01000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 13.7 +01000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +01000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +01000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +01000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +01000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +01000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.7 +01000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 11.5 +01000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.5 +01000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.4 +01000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 88.0 +01000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 60.9 +01000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 390.3 +01000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 508.4 +01000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 58.3 +01000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 52.3 +01000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 15.0 +01000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +01000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +01000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +01000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +01000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +01000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +01000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 50.9 +01000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 281.8 +01000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 410.2 +01000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 254.4 +01000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 705.2 +01000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 512.2 +01000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 224.9 +01000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 11.7 +01000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +01000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +01000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 8.9 +01000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 75.8 +01000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 87.0 +01000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 108.6 +01000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 103.8 +01000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 13.0 +01000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 43.7 +01000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 12.2 +01000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 40.6 +01000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 32.8 +01000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 5.0 +01000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.3 +01000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.2 +01000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.7 +01000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.8 +01000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 7.8 +01000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 11.3 +01000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.6 +01000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 17.3 +01000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 20.0 +01000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 5.4 +01000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.7 +01000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +01000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +01000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.9 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 1.2 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.7 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 85.3 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 591.7 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 848.0 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 73.3 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 30.0 +01000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.8 +01000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 5.3 +01000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +01000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +01000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.2 +01000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.3 +01000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 5.6 +01000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 10.1 +01000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 29.9 +01000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 10.0 +01000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 11.7 +01000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.2 +01000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.5 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 12.0 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 23.7 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 61.4 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 108.5 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 115.5 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 36.2 +01000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 17.9 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 1.7 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.8 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 7.8 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.1 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 16.1 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 8.2 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 11.9 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 7.5 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 3.1 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.4 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 1.7 +01000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +01000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4262.5 +01000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 15900.0 +01000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 23947.8 +01000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5324.4 +01000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 10486.6 +01000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 20256.6 +01000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 15582.5 +01000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 26060.1 +01000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 17702.8 +01000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 39602.8 +01000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 35550.1 +01000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 16.9 +01000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 16.4 +01000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 156.1 +01000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +01000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 165.8 +01000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 66.8 +01000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1481.6 +01000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5479.7 +01000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 20300.8 +01000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1335.6 +01000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 18.6 +01000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 13.3 +01000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.9 +01000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 34.1 +01000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 299.4 +01000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +01000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 7177.6 +01000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 26641.1 +01000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 10699.1 +01000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 180.5 +01000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 219.6 +01000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 107.8 +01000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 238.5 +01000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 130.5 +01000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 24.1 +01000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 211.4 +01000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 178.0 +01000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1459.3 +01000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2399.6 +01000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1770.1 +01000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 69.8 +01000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 132.4 +01000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 10.8 +01000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 37.9 +01000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 23.2 +01000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 236.3 +01000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +01000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.3 +01000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.5 +01000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.1 +01000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 7.7 +01000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 12.1 +01000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 22.1 +01000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 20.6 +01000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 87.0 +01000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 32.0 +01000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 5.4 +01000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.4 +01000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +01000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.5 +01000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +01000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.3 +01000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 42.4 +01000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 174.2 +01000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.1 +01000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 8.0 +01000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.5 +01000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +01000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.5 +01000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/AR.POP b/NONROAD/NR08a/DATA/POP/AR.POP new file mode 100644 index 0000000..9dccab5 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/AR.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 05000 AR Arkansas 1,315,057.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +05000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +05000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +05000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 23216.8 +05000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11435.1 +05000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 11734.1 +05000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 101551.0 +05000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2312.4 +05000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3070.7 +05000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.9 +05000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.5 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.6 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 63.1 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 119.4 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 940.8 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 9.6 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 23.2 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +05000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 8.8 +05000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 9.6 +05000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +05000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 23.2 +05000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +05000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 8.8 +05000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 5.8 +05000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 40.1 +05000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.9 +05000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 14.5 +05000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.5 +05000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.7 +05000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.5 +05000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.7 +05000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1200.8 +05000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.6 +05000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 112.8 +05000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 572.6 +05000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 176.3 +05000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 31.2 +05000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 43.4 +05000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 7.8 +05000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 20.2 +05000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.4 +05000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.6 +05000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.1 +05000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.4 +05000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.6 +05000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.1 +05000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 108.1 +05000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 316.1 +05000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 268.1 +05000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 134.3 +05000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 94.6 +05000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 3.8 +05000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +05000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 3.8 +05000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +05000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 46.9 +05000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 72.3 +05000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 20.9 +05000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 8.8 +05000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.9 +05000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +05000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.9 +05000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +05000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.3 +05000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 5.3 +05000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 5.3 +05000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +05000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +05000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 82.2 +05000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 80.4 +05000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 28.7 +05000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 32.8 +05000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 5.5 +05000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 4.6 +05000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 3.6 +05000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 5.5 +05000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 4.6 +05000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 3.6 +05000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 33.9 +05000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 693.8 +05000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 28.1 +05000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 8.6 +05000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 10.9 +05000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 7.1 +05000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.9 +05000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.6 +05000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.3 +05000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.9 +05000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.6 +05000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.3 +05000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 88.7 +05000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 425.2 +05000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 218.6 +05000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 45.8 +05000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 20.2 +05000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.5 +05000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.0 +05000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.5 +05000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.0 +05000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 12.0 +05000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 674.3 +05000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1126.5 +05000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 38.2 +05000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 29.3 +05000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.1 +05000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.6 +05000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.6 +05000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +05000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 4.0 +05000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.6 +05000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +05000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 4.0 +05000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.6 +05000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 10.8 +05000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 15.2 +05000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 27.8 +05000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 7.1 +05000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.9 +05000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.9 +05000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.3 +05000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.9 +05000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +05000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.7 +05000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +05000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.7 +05000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.9 +05000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +05000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.7 +05000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +05000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.7 +05000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +05000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 11.4 +05000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.4 +05000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +05000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 11.4 +05000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.4 +05000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.8 +05000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 58.2 +05000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +05000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.0 +05000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +05000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +05000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.0 +05000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +05000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.3 +05000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 46.2 +05000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 13.1 +05000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 7.2 +05000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 7.7 +05000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 13.1 +05000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 7.2 +05000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 7.7 +05000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 40.8 +05000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 134.5 +05000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 20.2 +05000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 24.7 +05000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.0 +05000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +05000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 4.8 +05000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 4.6 +05000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +05000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 30.0 +05000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 8.3 +05000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 192.6 +05000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 85.2 +05000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 177.4 +05000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.9 +05000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 85.2 +05000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 177.4 +05000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.9 +05000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 22.6 +05000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 80.6 +05000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 129.9 +05000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 9.5 +05000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 60.4 +05000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +05000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 428.9 +05000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 937.5 +05000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2467.4 +05000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 180.2 +05000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1146.7 +05000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 5.6 +05000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 594.1 +05000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 45.2 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 51.8 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 79.3 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 21.4 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 45.9 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 27.6 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 31.2 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 31.6 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.6 +05000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 27.6 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 31.2 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 31.6 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.6 +05000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +05000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.3 +05000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.1 +05000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 877.9 +05000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 165.9 +05000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 84.5 +05000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 71.4 +05000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 6.4 +05000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.9 +05000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.4 +05000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.4 +05000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +05000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 6.4 +05000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.9 +05000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.1 +05000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.4 +05000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +05000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +05000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.5 +05000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 17.4 +05000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 10.6 +05000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +05000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 10.6 +05000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +05000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +05000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.3 +05000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 10.0 +05000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.1 +05000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.4 +05000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +05000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 5.6 +05000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.6 +05000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 10.1 +05000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +05000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +05000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 5.3 +05000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.0 +05000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 10.0 +05000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +05000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +05000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.6 +05000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +05000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +05000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 6415.2 +05000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 318825.8 +05000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 105.1 +05000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 167.5 +05000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 8323.8 +05000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.7 +05000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 594.9 +05000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4205.5 +05000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 29865.5 +05000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 55.8 +05000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 394.5 +05000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2801.6 +05000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 51881.1 +05000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +05000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 902.1 +05000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 3173.9 +05000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 38779.6 +05000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 98208.2 +05000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +05000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +05000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 9517.0 +05000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 675.8 +05000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2239.6 +05000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +05000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +05000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +05000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 149.3 +05000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 39.9 +05000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 2.1 +05000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 4.6 +05000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 5741.4 +05000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 63759.8 +05000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +05000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +05000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2888.0 +05000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1075.9 +05000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 3613.0 +05000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +05000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +05000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 164.7 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1610.6 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 50.7 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 55.2 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 4.2 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 28.7 +05000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 28.4 +05000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +05000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +05000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +05000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +05000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +05000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +05000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +05000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +05000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 70.0 +05000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 10134.7 +05000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 7859.4 +05000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 37.2 +05000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.1 +05000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 152.1 +05000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 117.9 +05000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.6 +05000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 157.4 +05000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 537.6 +05000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 237.7 +05000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 3.6 +05000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 576.7 +05000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1128.7 +05000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 250.3 +05000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 7846.6 +05000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 87185.9 +05000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 28415.9 +05000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 3.8 +05000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 117.8 +05000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1308.4 +05000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 426.4 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.2 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 9.5 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 39.2 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 73.8 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 5.6 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 23.8 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +05000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 5.7 +05000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 5.6 +05000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 23.8 +05000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +05000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 5.7 +05000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.7 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1942.6 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 516.7 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1153.1 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1503.1 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 297.8 +05000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 2.6 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 255.6 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1106.9 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2821.1 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1864.1 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 27.3 +05000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 17.9 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 170.8 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 739.4 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1884.4 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1245.2 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 18.2 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 12.0 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.2 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.4 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +05000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.5 +05000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 63.9 +05000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 55.2 +05000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 26.5 +05000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 2.7 +05000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 31.7 +05000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 3.6 +05000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +05000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.2 +05000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.5 +05000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 326.8 +05000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 104.6 +05000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 11.9 +05000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.2 +05000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 151.5 +05000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.2 +05000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 46.3 +05000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 554.9 +05000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 517.3 +05000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2014.4 +05000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 734.7 +05000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 252.4 +05000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 427.6 +05000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 104.1 +05000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 39.1 +05000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 40.9 +05000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 40.2 +05000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 17714.9 +05000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 44.2 +05000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 176.6 +05000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 100.1 +05000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 38.0 +05000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 184.9 +05000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 109.9 +05000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 97.4 +05000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 7.7 +05000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 12.5 +05000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.0 +05000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 73.3 +05000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 30.6 +05000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.0 +05000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 3.3 +05000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 18.7 +05000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 5.1 +05000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +05000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 11.8 +05000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 24.8 +05000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 11.5 +05000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 5.2 +05000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.3 +05000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 6.1 +05000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 32.4 +05000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 46.0 +05000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 4.5 +05000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 5.3 +05000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.1 +05000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 32.8 +05000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 813.8 +05000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 5725.3 +05000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 13748.1 +05000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 3041.0 +05000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 4351.4 +05000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +05000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +05000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +05000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +05000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +05000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +05000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 403.0 +05000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 3.0 +05000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 188.0 +05000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 167.2 +05000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 62.7 +05000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.4 +05000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +05000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 3.8 +05000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 6.4 +05000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 128.8 +05000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 43.3 +05000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 15.0 +05000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 6.1 +05000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 3.1 +05000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1030.5 +05000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1861.9 +05000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.1 +05000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +05000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 2668.2 +05000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1673.6 +05000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 162.1 +05000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 94.5 +05000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 82.1 +05000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.8 +05000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 38.2 +05000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 2.5 +05000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 5.9 +05000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 79.4 +05000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.8 +05000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 38.2 +05000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 2.5 +05000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 5.5 +05000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.7 +05000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +05000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.4 +05000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.4 +05000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.4 +05000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.5 +05000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 422.9 +05000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 394.7 +05000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 48.4 +05000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 52.5 +05000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 7.7 +05000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 42.5 +05000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 9.0 +05000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 4.2 +05000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 7.7 +05000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 41.3 +05000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 9.0 +05000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 2.3 +05000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.2 +05000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.0 +05000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.3 +05000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.7 +05000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.2 +05000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 2.2 +05000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.4 +05000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.9 +05000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.3 +05000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 55.9 +05000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 216.8 +05000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 799.2 +05000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 266.6 +05000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 62.9 +05000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 5.6 +05000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.3 +05000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 62.9 +05000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 5.6 +05000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.3 +05000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.3 +05000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 7060.0 +05000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 4366.3 +05000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1295.3 +05000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 243.6 +05000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 4.1 +05000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.3 +05000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +05000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 4.1 +05000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.3 +05000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +05000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 10.3 +05000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 49.0 +05000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 44.4 +05000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 35.0 +05000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 35.8 +05000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +05000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +05000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.5 +05000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +05000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +05000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +05000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.5 +05000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +05000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +05000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1388.3 +05000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 8814.5 +05000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 487.5 +05000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 158.0 +05000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 15.3 +05000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 6.3 +05000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 2.6 +05000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.3 +05000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.1 +05000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +05000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +05000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +05000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +05000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +05000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +05000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +05000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +05000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +05000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +05000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +05000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 35.4 +05000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 64.8 +05000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 43.1 +05000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +05000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 42.2 +05000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 5.8 +05000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 17.9 +05000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.7 +05000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.8 +05000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 4.4 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 158.8 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 109.8 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.4 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 2.3 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 2.3 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 19.4 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 17.1 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 7.6 +05000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.3 +05000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.8 +05000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 19.3 +05000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.8 +05000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 36.6 +05000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 22.8 +05000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 50.0 +05000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 35.1 +05000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 4.5 +05000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 18.9 +05000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 94.6 +05000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 42.2 +05000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 25.7 +05000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.4 +05000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 10.2 +05000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 19.1 +05000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 22.9 +05000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 41.1 +05000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 58.6 +05000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 54.3 +05000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 55.0 +05000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 150.4 +05000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 139.5 +05000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 47.6 +05000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 14.1 +05000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +05000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 3.8 +05000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 43.6 +05000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 56.5 +05000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 26.2 +05000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +05000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 8.2 +05000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 9.1 +05000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.7 +05000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 4.7 +05000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 6.3 +05000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +05000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 6.2 +05000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 7.3 +05000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 13.2 +05000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 4.1 +05000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +05000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +05000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.5 +05000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 7.0 +05000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 5.9 +05000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.0 +05000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +05000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 5.6 +05000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.7 +05000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +05000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.7 +05000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.8 +05000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +05000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +05000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 15.3 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 36.0 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 19.2 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 304.7 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 93.5 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 6.7 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 3.9 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.1 +05000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.8 +05000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +05000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +05000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.6 +05000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.8 +05000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 42.1 +05000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 105.0 +05000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 174.8 +05000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 70.6 +05000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 21.9 +05000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 14.6 +05000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 7.4 +05000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.7 +05000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.4 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.7 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.5 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 26.0 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 26.4 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 42.8 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 43.5 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 64.0 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 55.6 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 32.0 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 7.5 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 4.1 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +05000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +05000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.5 +05000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.8 +05000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 5.8 +05000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 25.8 +05000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 53.4 +05000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 28.5 +05000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 22.1 +05000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 99.7 +05000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 372.5 +05000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 272.3 +05000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 72.1 +05000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.3 +05000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.7 +05000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +05000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.0 +05000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.3 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 4.0 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 23.0 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.8 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 7.4 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 10.6 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.3 +05000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 46.7 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 27.9 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 5.2 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 4.7 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 3.4 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 5.9 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 9.8 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 3.1 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.1 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.4 +05000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +05000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +05000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 4.3 +05000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +05000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.3 +05000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 21.9 +05000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 82.5 +05000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 84.4 +05000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 52.0 +05000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.2 +05000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.6 +05000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +05000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +05000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +05000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.0 +05000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 7.5 +05000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 76.7 +05000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 128.4 +05000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 14.7 +05000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.9 +05000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +05000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 19.3 +05000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 40.9 +05000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 23.2 +05000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 11.2 +05000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 3.6 +05000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 18.0 +05000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 4.4 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.5 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.7 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.6 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 29.6 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 7.2 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 11.2 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 4.2 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 11.0 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.8 +05000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.5 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 35.2 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 39.2 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 77.7 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 444.8 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 228.5 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 11.8 +05000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 15.6 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 17.8 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 20.5 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 28.9 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 124.4 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 314.6 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 300.4 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 220.4 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 16.7 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 8.1 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.7 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 9.9 +05000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.4 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 18.1 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 36.2 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 19.3 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 361.3 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1276.5 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 849.4 +05000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 4.6 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 3.7 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 107.8 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 243.6 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 211.0 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 106.8 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 42.1 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 8.7 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 15.2 +05000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +05000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.0 +05000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 159.4 +05000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 353.4 +05000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 691.6 +05000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 273.5 +05000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1501.6 +05000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 987.2 +05000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 24.9 +05000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +05000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 3.4 +05000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 5.7 +05000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 13.7 +05000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 4.5 +05000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.4 +05000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 3.6 +05000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +05000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 6.8 +05000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 6.5 +05000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 4.6 +05000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 5.4 +05000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.2 +05000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.6 +05000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 3.6 +05000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.3 +05000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +05000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +05000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.0 +05000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.8 +05000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.3 +05000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.7 +05000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.7 +05000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 18.7 +05000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 16.7 +05000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 40.4 +05000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 7.4 +05000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +05000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.5 +05000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.7 +05000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 11.2 +05000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 156.4 +05000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 194.3 +05000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 46.0 +05000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 326.6 +05000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 116.1 +05000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.4 +05000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +05000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +05000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.6 +05000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 6.7 +05000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 246.6 +05000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 248.4 +05000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 89.2 +05000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 14.5 +05000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 18.5 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 4.1 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 25.3 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 60.9 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 41.1 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 39.8 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 146.4 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 164.4 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 44.2 +05000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.7 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 28.9 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 5.5 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.5 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 6.1 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 19.4 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 7.1 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 54.7 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 170.4 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 242.4 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 75.6 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 7.7 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.3 +05000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 4.6 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 23.2 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 7.0 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 32.2 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 12.2 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.7 +05000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +05000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 59.4 +05000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 182.7 +05000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 171.3 +05000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 43.9 +05000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 322.0 +05000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1238.3 +05000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +05000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +05000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +05000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +05000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +05000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +05000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 31.2 +05000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 54.2 +05000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 87.0 +05000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 144.8 +05000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 4.4 +05000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.6 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.4 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +05000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +05000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +05000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +05000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.6 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 44.6 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 618.4 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 299.7 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 67.0 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 110.0 +05000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 23.5 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.2 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 10.9 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 271.5 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 4.7 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.7 +05000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 4.1 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 1.0 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 10.7 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 39.9 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 176.5 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 55.9 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 33.7 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 28.6 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 6.5 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.1 +05000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 6.3 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 8.3 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 15.2 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 7.4 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 7.8 +05000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 6.5 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.6 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.3 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.4 +05000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +05000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.1 +05000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 8.6 +05000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +05000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1950.1 +05000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 5245.0 +05000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 2997.0 +05000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 4745.4 +05000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 4182.4 +05000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 6968.9 +05000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 6008.0 +05000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 3108.8 +05000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.3 +05000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 327.7 +05000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 3005.7 +05000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 3584.1 +05000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 185.1 +05000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 3.6 +05000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 78.2 +05000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 28.8 +05000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 24.5 +05000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.2 +05000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 7.4 +05000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 39.1 +05000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 17.8 +05000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 11.1 +05000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 29.9 +05000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 183.0 +05000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 353.3 +05000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 383.9 +05000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 104.0 +05000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.8 +05000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +05000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.3 +05000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 221.2 +05000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1045.6 +05000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 206.5 +05000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 9.2 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.6 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 6.9 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 25.0 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 13.2 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 8.0 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 62.5 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 78.1 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 194.7 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 196.9 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 82.5 +05000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +05000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +05000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +05000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 15.7 +05000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 35.9 +05000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 14.2 +05000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 55.9 +05000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 263.7 +05000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 138.3 +05000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 39.4 +05000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 2.8 +05000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +05000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 488.3 +05000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 487.6 +05000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 375.8 +05000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 591.7 +05000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 979.4 +05000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 133.8 +05000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 493.6 +05000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 600.7 +05000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 205.0 +05000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 114.0 +05000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 59.2 +05000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +05000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +05000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +05000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +05000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +05000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +05000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 84.1 +05000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 202.1 +05000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 50.7 +05000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 40.3 +05000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 70.1 +05000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 19.9 +05000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 134.6 +05000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 149.8 +05000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 66.0 +05000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 16.5 +05000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 8.4 +05000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +05000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +05000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +05000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +05000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +05000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.9 +05000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 7.0 +05000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.9 +05000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.5 +05000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 53.7 +05000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 37.2 +05000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 238.2 +05000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 310.3 +05000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 35.6 +05000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 31.9 +05000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 9.1 +05000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +05000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +05000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +05000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +05000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +05000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +05000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 31.0 +05000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 172.0 +05000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 250.3 +05000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 155.3 +05000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 430.4 +05000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 312.6 +05000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 137.3 +05000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 7.1 +05000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +05000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +05000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 5.4 +05000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 46.3 +05000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 53.1 +05000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 66.3 +05000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 63.4 +05000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 7.9 +05000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 26.7 +05000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 7.5 +05000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 24.8 +05000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 20.0 +05000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 3.1 +05000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.4 +05000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.7 +05000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.6 +05000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.5 +05000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 4.8 +05000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 6.9 +05000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 2.2 +05000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 10.6 +05000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 12.2 +05000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 3.3 +05000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.4 +05000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +05000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +05000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.6 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.8 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.1 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 56.1 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 389.1 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 557.7 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 48.2 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 19.7 +05000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.5 +05000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.3 +05000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +05000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +05000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +05000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +05000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 3.4 +05000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 6.3 +05000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 18.5 +05000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 6.2 +05000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 7.3 +05000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.8 +05000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +05000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 2.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 9.3 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.4 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 19.3 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 9.8 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 14.2 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 9.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 3.7 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.7 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 2.0 +05000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +05000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2321.6 +05000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 8659.9 +05000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 13043.1 +05000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 2899.9 +05000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 5711.5 +05000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 11032.7 +05000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 8487.0 +05000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 14193.6 +05000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 9641.8 +05000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 21569.6 +05000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 19362.3 +05000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 9.2 +05000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 8.9 +05000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 85.0 +05000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +05000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 90.3 +05000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 36.4 +05000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 806.9 +05000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 2984.5 +05000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 11056.8 +05000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 727.4 +05000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 10.1 +05000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 7.3 +05000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.3 +05000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 18.5 +05000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 163.1 +05000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +05000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 3909.3 +05000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 14510.0 +05000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 5827.2 +05000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 98.3 +05000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 119.6 +05000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 58.7 +05000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 129.9 +05000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 71.1 +05000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 13.1 +05000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 115.1 +05000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 97.0 +05000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 794.8 +05000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1306.9 +05000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 964.1 +05000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 38.0 +05000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 72.1 +05000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 5.9 +05000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 20.6 +05000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 12.6 +05000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 128.7 +05000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +05000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.7 +05000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.9 +05000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.7 +05000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 9.9 +05000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 15.5 +05000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 28.4 +05000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 26.4 +05000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 111.5 +05000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 41.1 +05000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 7.0 +05000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.7 +05000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +05000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +05000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +05000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.7 +05000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 54.3 +05000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 223.3 +05000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 4.0 +05000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 10.2 +05000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +05000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +05000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +05000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/AZ.POP b/NONROAD/NR08a/DATA/POP/AZ.POP new file mode 100644 index 0000000..349598e --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/AZ.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 04000 AZ Arizona 2,255,145.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +04000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 40.2 +04000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 23.7 +04000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 25.5 +04000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 2029.2 +04000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 2048.3 +04000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 919.3 +04000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 3238.8 +04000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 1331.1 +04000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 346.8 +04000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 13266.2 +04000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 6534.1 +04000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 6704.9 +04000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 58026.8 +04000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2905.4 +04000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6168.7 +04000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.8 +04000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.0 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.1 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 126.7 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 239.9 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1889.9 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +04000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +04000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +04000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +04000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +04000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +04000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +04000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 24.7 +04000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 172.0 +04000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 8.0 +04000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 62.3 +04000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 10.5 +04000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 11.6 +04000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 10.5 +04000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 11.6 +04000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 5146.4 +04000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 11.3 +04000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 483.6 +04000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2453.8 +04000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 755.4 +04000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 133.9 +04000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 186.0 +04000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 33.2 +04000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 86.5 +04000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 10.2 +04000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 7.0 +04000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 4.8 +04000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 10.2 +04000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 7.0 +04000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 4.8 +04000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 463.2 +04000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1354.7 +04000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1148.9 +04000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 575.4 +04000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 405.4 +04000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 16.5 +04000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.5 +04000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 16.5 +04000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.5 +04000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 201.2 +04000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 309.8 +04000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 89.6 +04000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 37.8 +04000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.7 +04000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.3 +04000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.7 +04000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.3 +04000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.3 +04000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 22.7 +04000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 22.6 +04000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.9 +04000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 1.0 +04000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 352.2 +04000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 344.8 +04000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 123.2 +04000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 140.5 +04000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 23.4 +04000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 19.8 +04000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 15.6 +04000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 23.4 +04000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 19.8 +04000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 15.6 +04000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 145.3 +04000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2973.5 +04000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 120.3 +04000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 36.8 +04000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 46.7 +04000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 30.6 +04000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 12.3 +04000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 11.2 +04000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 18.6 +04000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 12.3 +04000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 11.2 +04000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 18.6 +04000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 380.2 +04000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1822.2 +04000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 936.9 +04000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 196.5 +04000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 86.4 +04000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 23.8 +04000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 12.9 +04000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 23.8 +04000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 12.9 +04000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 51.6 +04000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2889.7 +04000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 4827.8 +04000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 163.8 +04000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 125.5 +04000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 4.9 +04000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 6.9 +04000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.4 +04000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +04000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 17.2 +04000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.8 +04000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +04000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 17.2 +04000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.8 +04000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 46.5 +04000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 65.4 +04000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 119.2 +04000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 30.6 +04000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.8 +04000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.8 +04000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.1 +04000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.7 +04000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +04000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 24.4 +04000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +04000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.9 +04000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.7 +04000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +04000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 24.4 +04000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +04000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.9 +04000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.0 +04000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 48.8 +04000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.6 +04000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.0 +04000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 48.8 +04000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.6 +04000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 12.0 +04000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 249.3 +04000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.9 +04000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.4 +04000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +04000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.9 +04000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.4 +04000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +04000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 9.8 +04000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 198.1 +04000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 56.2 +04000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 31.0 +04000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 33.2 +04000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 56.2 +04000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 31.0 +04000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 33.2 +04000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 174.7 +04000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 576.4 +04000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 86.8 +04000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 106.0 +04000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 4.1 +04000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.7 +04000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 20.7 +04000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 19.7 +04000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.9 +04000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 26.8 +04000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 7.4 +04000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 171.8 +04000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 76.0 +04000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 158.2 +04000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +04000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 76.0 +04000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 158.2 +04000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +04000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 20.1 +04000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 71.9 +04000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 115.8 +04000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 8.5 +04000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 53.8 +04000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +04000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 382.6 +04000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 836.2 +04000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2200.9 +04000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 160.7 +04000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1022.9 +04000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 5.0 +04000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 529.9 +04000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 40.4 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 46.2 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 70.7 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 19.1 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 41.0 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 24.6 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 27.8 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.2 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.6 +04000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 24.6 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 27.8 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.2 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.6 +04000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +04000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +04000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.9 +04000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 783.1 +04000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 148.0 +04000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 75.4 +04000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 63.7 +04000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.7 +04000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 7.9 +04000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.3 +04000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +04000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +04000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.7 +04000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 7.9 +04000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.0 +04000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +04000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +04000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +04000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.4 +04000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 15.6 +04000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 9.5 +04000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +04000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 9.5 +04000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +04000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +04000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +04000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 20.2 +04000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.3 +04000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.8 +04000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +04000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 5.0 +04000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.3 +04000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 9.0 +04000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +04000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +04000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.7 +04000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.8 +04000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 8.9 +04000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +04000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +04000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.5 +04000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +04000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +04000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 12429.5 +04000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 617730.5 +04000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 203.7 +04000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 887.9 +04000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 44128.6 +04000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 14.6 +04000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1152.6 +04000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 8148.3 +04000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 57864.9 +04000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 295.9 +04000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2091.5 +04000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 14852.6 +04000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 100520.6 +04000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +04000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 4782.3 +04000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 16826.6 +04000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 75136.2 +04000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 190280.1 +04000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +04000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +04000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 50454.3 +04000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 3583.0 +04000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4339.2 +04000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +04000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +04000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +04000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 791.4 +04000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 211.7 +04000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 11.2 +04000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 24.3 +04000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 11124.1 +04000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 123535.7 +04000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +04000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +04000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 15310.6 +04000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 5703.9 +04000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7000.2 +04000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +04000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +04000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 873.1 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 8538.8 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 269.0 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 292.6 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 22.3 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 151.9 +04000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 150.7 +04000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 3255.1 +04000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 4984.6 +04000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 8409.2 +04000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 393.0 +04000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 221.6 +04000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 339.4 +04000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 572.5 +04000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 26.8 +04000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 135.7 +04000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 19636.1 +04000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 15227.7 +04000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 72.0 +04000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 5.6 +04000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 806.3 +04000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 625.3 +04000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.0 +04000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 834.4 +04000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2850.1 +04000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1260.2 +04000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 18.9 +04000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3057.3 +04000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 5983.6 +04000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 484.9 +04000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 15202.9 +04000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 168924.2 +04000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 55056.3 +04000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 19.9 +04000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 624.3 +04000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 6936.5 +04000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2260.7 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.0 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 50.4 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 207.6 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 391.3 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 29.5 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 126.0 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +04000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 30.2 +04000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 29.5 +04000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 126.0 +04000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +04000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 30.2 +04000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 3.6 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 10298.9 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2739.5 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 6113.4 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 7968.5 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1578.9 +04000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 13.6 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 495.3 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2144.7 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5465.9 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3611.7 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 52.9 +04000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 34.7 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 905.2 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 3920.0 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 9990.3 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 6601.2 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 96.7 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 63.4 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 6.2 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.1 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.8 +04000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.5 +04000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 7.6 +04000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 6.6 +04000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 3.2 +04000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.3 +04000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 3.8 +04000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.4 +04000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +04000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +04000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +04000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 38.9 +04000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 12.5 +04000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 1.4 +04000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.3 +04000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 18.0 +04000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.3 +04000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 5.5 +04000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 66.1 +04000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 61.6 +04000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 239.9 +04000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 87.5 +04000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 30.0 +04000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 50.9 +04000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 12.4 +04000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 4.7 +04000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 4.9 +04000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 4.8 +04000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 2109.3 +04000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 5.3 +04000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 21.0 +04000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 11.9 +04000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 4.5 +04000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 22.0 +04000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 13.1 +04000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 11.6 +04000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.9 +04000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 1.5 +04000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.2 +04000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 8.7 +04000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 3.6 +04000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.2 +04000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.4 +04000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 2.2 +04000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.6 +04000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +04000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 1.4 +04000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 3.0 +04000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 1.4 +04000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.6 +04000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +04000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.7 +04000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 3.9 +04000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 5.5 +04000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.5 +04000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.6 +04000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +04000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 61.5 +04000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1527.7 +04000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 10747.6 +04000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 25808.3 +04000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 5708.7 +04000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 8168.6 +04000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +04000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +04000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +04000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +04000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +04000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +04000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 756.5 +04000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 5.7 +04000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 352.8 +04000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 313.8 +04000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 117.7 +04000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.7 +04000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.5 +04000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 7.2 +04000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 12.1 +04000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 241.7 +04000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 81.4 +04000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 28.1 +04000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 11.5 +04000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 5.8 +04000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1934.5 +04000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3495.1 +04000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.1 +04000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.4 +04000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 5008.9 +04000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3141.7 +04000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 304.3 +04000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 177.3 +04000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 154.2 +04000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.4 +04000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 71.7 +04000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 4.8 +04000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 11.1 +04000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 149.1 +04000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.4 +04000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 71.7 +04000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 4.8 +04000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 10.4 +04000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 5.1 +04000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +04000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.7 +04000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.8 +04000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.8 +04000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.9 +04000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 793.8 +04000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 741.0 +04000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 90.9 +04000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 98.5 +04000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 14.4 +04000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 79.8 +04000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 17.0 +04000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 8.0 +04000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 14.4 +04000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 77.5 +04000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 17.0 +04000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 4.3 +04000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.3 +04000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 3.7 +04000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.4 +04000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.4 +04000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.4 +04000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 4.1 +04000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.7 +04000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.8 +04000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.6 +04000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 105.0 +04000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 407.0 +04000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1500.3 +04000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 500.5 +04000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 118.1 +04000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 10.5 +04000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.4 +04000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 118.1 +04000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 10.5 +04000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.4 +04000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.5 +04000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 13253.3 +04000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 8196.5 +04000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2431.6 +04000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 457.3 +04000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 7.7 +04000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.6 +04000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +04000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 7.7 +04000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.6 +04000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +04000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 19.3 +04000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 92.0 +04000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 83.3 +04000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 65.6 +04000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 67.2 +04000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.0 +04000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +04000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.0 +04000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +04000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.0 +04000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +04000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.0 +04000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +04000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +04000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 25.3 +04000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 160.9 +04000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 8.9 +04000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 2.9 +04000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.3 +04000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.1 +04000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 26.8 +04000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 3.0 +04000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 10.8 +04000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.6 +04000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +04000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +04000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +04000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.9 +04000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.6 +04000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +04000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +04000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +04000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.9 +04000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.6 +04000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 11.0 +04000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 20.1 +04000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 13.3 +04000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +04000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 13.1 +04000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.8 +04000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 5.6 +04000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.2 +04000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.5 +04000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 8.8 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 319.0 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 220.5 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.7 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 4.7 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.6 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 39.1 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 34.4 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 15.2 +04000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +04000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 3.4 +04000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 82.7 +04000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 7.7 +04000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 157.0 +04000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 97.7 +04000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 214.1 +04000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 150.3 +04000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 19.3 +04000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 80.9 +04000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 405.2 +04000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 181.1 +04000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 110.1 +04000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 10.2 +04000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 43.6 +04000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 81.9 +04000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 98.1 +04000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 176.0 +04000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 251.0 +04000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 232.6 +04000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 235.6 +04000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 644.6 +04000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 597.7 +04000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 204.1 +04000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 60.5 +04000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +04000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 16.2 +04000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 186.9 +04000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 242.0 +04000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 112.3 +04000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +04000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 34.9 +04000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 39.2 +04000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 3.0 +04000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 20.2 +04000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 26.9 +04000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +04000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 26.4 +04000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 31.1 +04000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 56.7 +04000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 17.6 +04000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.8 +04000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.6 +04000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 2.0 +04000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 30.2 +04000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 25.3 +04000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 8.7 +04000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.5 +04000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 24.0 +04000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 7.3 +04000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.3 +04000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 7.4 +04000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.2 +04000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.7 +04000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +04000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.5 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 65.6 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 154.4 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 82.5 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1306.0 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 400.7 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.7 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 28.6 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 16.6 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 13.2 +04000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.2 +04000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +04000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +04000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.4 +04000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.3 +04000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 180.6 +04000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 450.2 +04000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 749.0 +04000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 302.5 +04000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 94.0 +04000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 62.8 +04000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 31.9 +04000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.8 +04000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.9 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.9 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 6.5 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 111.2 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 113.2 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 183.4 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 186.5 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 274.2 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 238.4 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 137.3 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 32.1 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 17.6 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.4 +04000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.6 +04000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.2 +04000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 12.0 +04000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 24.8 +04000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 110.5 +04000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 228.9 +04000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 122.1 +04000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 94.7 +04000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 427.3 +04000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1596.5 +04000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1167.2 +04000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 309.2 +04000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 9.8 +04000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 11.4 +04000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +04000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 4.3 +04000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 10.1 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 17.2 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 98.5 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 3.5 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 31.6 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 45.5 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 5.6 +04000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 200.2 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 119.4 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 22.2 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 20.2 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 14.7 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 25.2 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 42.1 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 13.3 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 4.7 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 5.9 +04000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.2 +04000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +04000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 18.2 +04000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +04000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 9.7 +04000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 94.0 +04000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 353.8 +04000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 361.8 +04000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 222.8 +04000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 9.6 +04000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.7 +04000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +04000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +04000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.5 +04000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 4.2 +04000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 32.2 +04000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 328.6 +04000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 550.4 +04000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 63.0 +04000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 3.8 +04000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.9 +04000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 82.6 +04000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 175.4 +04000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 99.3 +04000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 48.2 +04000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 15.3 +04000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 77.2 +04000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 18.8 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.1 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.9 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 11.1 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 126.7 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 30.7 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 48.0 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 18.1 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 47.1 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.6 +04000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.3 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.5 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 6.5 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 151.0 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 168.1 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 333.2 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1906.4 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 979.3 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 50.8 +04000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 66.8 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.5 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 76.4 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 87.7 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 124.0 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 533.2 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1348.4 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1287.2 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 944.4 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 71.4 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 34.8 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 7.2 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 42.6 +04000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.5 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 77.6 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 155.2 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 82.9 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1548.5 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 5470.8 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3640.2 +04000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 19.8 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 16.0 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 462.0 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 1044.1 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 904.2 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 457.8 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 180.6 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 37.4 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 65.0 +04000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +04000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 4.1 +04000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 683.1 +04000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1514.7 +04000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2963.8 +04000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1172.0 +04000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 6435.6 +04000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 4230.7 +04000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 106.6 +04000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +04000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 14.4 +04000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 24.6 +04000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 58.8 +04000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 19.3 +04000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.8 +04000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 15.2 +04000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.4 +04000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 29.0 +04000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 27.7 +04000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 19.8 +04000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 23.0 +04000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 5.0 +04000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.4 +04000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 15.6 +04000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 5.7 +04000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.9 +04000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.4 +04000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 4.2 +04000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 12.1 +04000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.1 +04000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 11.7 +04000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 11.6 +04000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 80.2 +04000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 71.6 +04000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 172.9 +04000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 31.5 +04000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +04000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.1 +04000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.5 +04000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 10.0 +04000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 139.5 +04000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 173.3 +04000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 41.0 +04000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 291.3 +04000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 103.5 +04000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.3 +04000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +04000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +04000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.5 +04000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.9 +04000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 219.9 +04000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 221.6 +04000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 79.6 +04000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 12.9 +04000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 16.5 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.7 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 22.6 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 54.3 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 36.6 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 35.5 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 130.6 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 146.6 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 39.4 +04000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.7 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 25.8 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.9 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.1 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 5.5 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 17.3 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 6.3 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 48.8 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 152.0 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 216.2 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 67.5 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 6.9 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.1 +04000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 4.1 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 20.7 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 6.2 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 28.7 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 10.9 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.5 +04000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +04000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 119.4 +04000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 367.0 +04000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 344.1 +04000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 88.2 +04000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 646.8 +04000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2487.7 +04000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +04000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +04000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +04000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +04000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +04000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +04000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 27.8 +04000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 48.3 +04000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 77.6 +04000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 129.2 +04000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.9 +04000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 8.3 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.0 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +04000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +04000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +04000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.4 +04000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.5 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 8.4 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 236.2 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3278.5 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1589.1 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 355.0 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 582.9 +04000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 124.6 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.0 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 57.7 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1439.4 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 25.0 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 14.4 +04000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 21.9 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.3 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 5.4 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 56.8 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 211.7 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 935.6 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 296.2 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 178.9 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 151.7 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 34.3 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 5.6 +04000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.7 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 33.7 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 43.8 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 80.7 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 39.2 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.7 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 41.2 +04000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 34.5 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.0 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 8.3 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 6.9 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.9 +04000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.3 +04000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.3 +04000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.0 +04000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +04000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 232.2 +04000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 624.5 +04000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 356.8 +04000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 565.0 +04000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 498.0 +04000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 829.8 +04000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 715.4 +04000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 370.2 +04000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +04000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 39.0 +04000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 357.9 +04000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 426.8 +04000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 22.0 +04000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.4 +04000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 9.3 +04000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 3.4 +04000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 2.9 +04000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +04000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.9 +04000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 4.7 +04000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 2.1 +04000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.3 +04000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 3.6 +04000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 21.8 +04000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 42.1 +04000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 45.7 +04000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 12.4 +04000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +04000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +04000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +04000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 26.3 +04000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 124.5 +04000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 24.6 +04000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.1 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.8 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 3.0 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 1.6 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 1.0 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 7.4 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 9.3 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 23.2 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 23.4 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 9.8 +04000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +04000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +04000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +04000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 1.9 +04000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 4.3 +04000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 1.7 +04000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 6.7 +04000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 31.4 +04000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 16.5 +04000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 4.7 +04000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.3 +04000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +04000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 916.7 +04000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 915.3 +04000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 705.5 +04000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1110.8 +04000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1838.6 +04000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 251.1 +04000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 926.6 +04000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1127.7 +04000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 384.9 +04000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 214.0 +04000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 111.1 +04000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +04000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +04000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +04000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +04000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +04000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.4 +04000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 157.8 +04000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 379.4 +04000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 95.2 +04000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 75.7 +04000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 131.7 +04000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 37.3 +04000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 252.6 +04000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 281.2 +04000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 124.0 +04000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 31.1 +04000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 15.7 +04000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +04000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +04000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +04000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +04000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +04000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 5.4 +04000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 13.1 +04000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.8 +04000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.7 +04000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 100.8 +04000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 69.8 +04000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 447.2 +04000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 582.5 +04000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 66.8 +04000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 59.9 +04000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 17.1 +04000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +04000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +04000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +04000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +04000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +04000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +04000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 58.3 +04000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 322.8 +04000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 470.0 +04000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 291.5 +04000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 807.9 +04000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 586.8 +04000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 257.7 +04000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 13.4 +04000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +04000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +04000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 10.2 +04000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 86.8 +04000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 99.7 +04000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 124.5 +04000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 119.0 +04000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 14.9 +04000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 50.0 +04000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 14.0 +04000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 46.5 +04000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 37.6 +04000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 5.8 +04000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.7 +04000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.4 +04000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.1 +04000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.0 +04000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 9.0 +04000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 13.0 +04000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 4.1 +04000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 19.9 +04000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 23.0 +04000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 6.2 +04000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.8 +04000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +04000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +04000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.0 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 7.1 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 10.2 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.9 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.4 +04000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +04000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 33.6 +04000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +04000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +04000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.2 +04000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.7 +04000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 35.2 +04000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 64.0 +04000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 189.1 +04000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 63.5 +04000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 74.1 +04000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 7.9 +04000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.5 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +04000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.6 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.3 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 2.9 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.4 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 6.0 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 3.1 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 4.4 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 2.8 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 1.2 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.5 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.6 +04000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +04000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2153.9 +04000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 8034.6 +04000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 12101.3 +04000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 2690.5 +04000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 5299.1 +04000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 10236.1 +04000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 7874.2 +04000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 13168.8 +04000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 8945.6 +04000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 20012.2 +04000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 17964.3 +04000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 8.6 +04000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 8.3 +04000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 78.9 +04000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +04000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 83.8 +04000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 33.8 +04000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 748.7 +04000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 2769.0 +04000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 10258.4 +04000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 674.9 +04000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 9.4 +04000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 6.7 +04000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.0 +04000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 17.2 +04000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 151.3 +04000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +04000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 3627.0 +04000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 13462.4 +04000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 5406.5 +04000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 91.2 +04000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 111.0 +04000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 54.5 +04000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 120.5 +04000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 65.9 +04000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 12.2 +04000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 106.8 +04000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 90.0 +04000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 737.4 +04000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1212.6 +04000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 894.4 +04000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 35.3 +04000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 66.9 +04000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 5.4 +04000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 19.1 +04000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 11.7 +04000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 119.4 +04000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +04000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.6 +04000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.8 +04000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.6 +04000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 9.4 +04000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 14.8 +04000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 27.0 +04000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 25.2 +04000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 106.2 +04000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 39.1 +04000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.6 +04000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.7 +04000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +04000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +04000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +04000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.6 +04000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 51.7 +04000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 212.8 +04000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.8 +04000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 9.7 +04000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.0 +04000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +04000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.0 +04000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/CA.POP b/NONROAD/NR08a/DATA/POP/CA.POP new file mode 100644 index 0000000..132638d --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/CA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 06000 CA California 12,484,795.4 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +06000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 57.0 +06000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 33.6 +06000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 36.1 +06000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 2876.4 +06000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 2903.4 +06000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1303.2 +06000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 4591.1 +06000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 1886.9 +06000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 491.6 +06000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 66148.8 +06000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 32580.7 +06000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 33432.6 +06000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 289336.9 +06000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 10213.2 +06000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 39681.9 +06000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 11.8 +06000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 6.7 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 20.0 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 814.9 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 1543.3 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 12157.3 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 124.3 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 3.0 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 300.0 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 2.4 +06000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 113.6 +06000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 124.3 +06000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 3.0 +06000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 300.0 +06000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 2.4 +06000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 113.6 +06000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 81.2 +06000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 565.6 +06000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 26.2 +06000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 204.9 +06000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 34.5 +06000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 38.2 +06000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 34.5 +06000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 38.2 +06000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 16923.5 +06000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 37.0 +06000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 1590.3 +06000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 8069.2 +06000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 2484.1 +06000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 440.3 +06000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 611.7 +06000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 109.3 +06000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 284.3 +06000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 33.6 +06000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 23.1 +06000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 15.8 +06000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 33.6 +06000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 23.1 +06000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 15.8 +06000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 1523.1 +06000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 4455.0 +06000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 3778.0 +06000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 1892.2 +06000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 1333.1 +06000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 54.1 +06000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 4.8 +06000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 54.1 +06000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 4.8 +06000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 661.5 +06000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 1018.8 +06000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 294.6 +06000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 124.2 +06000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 12.2 +06000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 4.4 +06000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 12.2 +06000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 4.4 +06000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 4.1 +06000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 74.8 +06000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 74.4 +06000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 2.8 +06000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 3.2 +06000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 1158.1 +06000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 1133.8 +06000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 405.1 +06000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 461.9 +06000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 76.9 +06000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 65.0 +06000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 51.1 +06000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 76.9 +06000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 65.0 +06000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 51.1 +06000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 477.7 +06000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 9778.1 +06000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 395.4 +06000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 120.9 +06000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 153.4 +06000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 100.8 +06000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 40.6 +06000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 36.9 +06000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 61.3 +06000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 40.6 +06000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 36.9 +06000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 61.3 +06000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 1250.4 +06000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 5992.2 +06000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 3081.0 +06000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 646.1 +06000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 284.0 +06000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 78.1 +06000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 42.5 +06000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 78.1 +06000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 42.5 +06000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 169.5 +06000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 9502.7 +06000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 15876.0 +06000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 538.6 +06000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 412.7 +06000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 16.1 +06000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 22.7 +06000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 8.1 +06000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.3 +06000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 56.6 +06000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 9.1 +06000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.3 +06000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 56.6 +06000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 9.1 +06000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 152.9 +06000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 214.9 +06000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 392.1 +06000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 100.5 +06000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 12.5 +06000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 12.5 +06000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 3.6 +06000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 12.1 +06000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.1 +06000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 80.3 +06000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.5 +06000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 9.5 +06000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 12.1 +06000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.1 +06000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 80.3 +06000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.5 +06000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 9.5 +06000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 3.4 +06000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 160.3 +06000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 5.3 +06000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 3.4 +06000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 160.3 +06000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 5.3 +06000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 39.4 +06000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 819.8 +06000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 3.0 +06000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 14.4 +06000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.7 +06000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 3.0 +06000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 14.4 +06000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.7 +06000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 32.3 +06000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 651.4 +06000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 184.8 +06000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 102.1 +06000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 109.1 +06000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 184.8 +06000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 102.1 +06000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 109.1 +06000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 574.4 +06000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 1895.4 +06000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 285.3 +06000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 348.4 +06000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 13.5 +06000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 2.2 +06000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 68.0 +06000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 64.9 +06000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 3.0 +06000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 232.6 +06000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 64.6 +06000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 1492.1 +06000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 659.8 +06000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 1374.4 +06000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 30.5 +06000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 659.8 +06000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 1374.4 +06000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 30.5 +06000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 174.9 +06000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 624.6 +06000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 1006.2 +06000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 73.5 +06000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 467.6 +06000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 2.3 +06000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 3323.2 +06000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 7263.9 +06000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 19117.9 +06000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 1396.3 +06000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 8885.2 +06000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 43.5 +06000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 4603.3 +06000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 350.6 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 401.5 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 614.3 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 166.1 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 355.9 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 213.8 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 241.6 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 245.1 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 2.4 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 4.9 +06000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.3 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 213.8 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 241.6 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 245.1 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 2.4 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 4.9 +06000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.3 +06000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 2.1 +06000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 16.6 +06000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 6802.4 +06000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 1285.3 +06000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 654.6 +06000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 553.3 +06000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 49.4 +06000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 68.7 +06000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 11.1 +06000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 26.1 +06000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.9 +06000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 49.4 +06000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 68.7 +06000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 8.5 +06000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 26.1 +06000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.9 +06000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 2.6 +06000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 3.5 +06000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 135.1 +06000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 82.1 +06000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 3.1 +06000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 82.1 +06000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 3.1 +06000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 2.7 +06000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 4.3 +06000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 129.7 +06000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 14.6 +06000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 5.0 +06000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 1.2 +06000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 43.6 +06000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 20.0 +06000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 78.5 +06000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.9 +06000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 1.2 +06000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 41.2 +06000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 15.6 +06000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 77.5 +06000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +06000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 2.4 +06000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 4.4 +06000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 1.0 +06000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.9 +06000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 66773.3 +06000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 3318543.3 +06000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 1094.1 +06000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 4964.6 +06000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 246735.7 +06000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 81.4 +06000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 6192.0 +06000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 43773.9 +06000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 310858.9 +06000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 1654.2 +06000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 11694.1 +06000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 83045.2 +06000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 540011.9 +06000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +06000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 26739.2 +06000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 94082.4 +06000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 403643.4 +06000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 1022213.8 +06000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +06000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +06000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 282104.6 +06000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 20033.4 +06000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 23311.1 +06000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +06000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +06000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +06000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 4425.1 +06000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 1183.7 +06000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 62.6 +06000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 135.8 +06000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 59760.2 +06000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 663652.6 +06000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +06000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +06000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 85605.8 +06000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 31892.3 +06000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 37606.1 +06000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +06000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +06000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 4881.7 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 47743.0 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 1503.8 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 1636.1 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 124.5 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 849.5 +06000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 842.6 +06000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 18706.6 +06000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 28645.7 +06000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 48326.9 +06000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 2258.7 +06000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 2870.2 +06000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 4395.1 +06000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 7414.8 +06000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 346.5 +06000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 729.1 +06000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 105488.3 +06000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 81805.5 +06000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 387.0 +06000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 31.2 +06000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 4508.2 +06000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 3496.2 +06000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 16.6 +06000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 4665.3 +06000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 15935.6 +06000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 7045.9 +06000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 105.7 +06000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 17094.5 +06000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 33456.1 +06000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 2604.9 +06000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 81672.0 +06000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 907486.6 +06000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 295770.7 +06000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 111.3 +06000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 3490.5 +06000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 38783.8 +06000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 12640.4 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 5.7 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 281.7 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 1160.9 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 2187.8 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 165.1 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 704.7 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 6.5 +06000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 168.6 +06000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 165.1 +06000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 704.7 +06000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 6.5 +06000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 168.6 +06000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 20.0 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 57583.8 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 15317.2 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 34181.9 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 44554.1 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 8827.8 +06000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 76.2 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 2660.7 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 11521.8 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 29363.7 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 19402.5 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 284.1 +06000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 186.2 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 5061.5 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 21917.9 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 55858.8 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 36909.3 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 540.5 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 354.3 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 34.6 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 11.9 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 4.2 +06000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 13.9 +06000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 72.6 +06000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 62.6 +06000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 30.1 +06000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 3.1 +06000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 36.0 +06000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 4.1 +06000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +06000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.3 +06000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.6 +06000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 371.0 +06000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 118.8 +06000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 13.5 +06000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.5 +06000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 172.0 +06000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.5 +06000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 52.6 +06000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 629.9 +06000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 587.3 +06000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2286.9 +06000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 834.0 +06000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 286.5 +06000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 485.4 +06000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 118.2 +06000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 44.4 +06000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 46.5 +06000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 45.6 +06000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 20111.0 +06000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 50.2 +06000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 200.5 +06000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 113.6 +06000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 43.2 +06000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 209.9 +06000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 124.8 +06000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 110.6 +06000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 8.8 +06000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 14.2 +06000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.3 +06000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 83.3 +06000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 34.8 +06000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.2 +06000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 3.7 +06000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 21.3 +06000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 5.8 +06000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +06000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 13.3 +06000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 28.2 +06000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 13.1 +06000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 6.0 +06000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.3 +06000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 6.9 +06000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 36.8 +06000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 52.3 +06000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 5.1 +06000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 6.0 +06000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.2 +06000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 544.4 +06000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 13513.6 +06000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 95070.2 +06000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 228292.2 +06000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 50497.0 +06000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 72257.0 +06000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +06000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +06000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +06000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +06000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +06000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +06000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 6691.6 +06000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 50.3 +06000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 3121.1 +06000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 2775.8 +06000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 1041.3 +06000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 24.1 +06000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 4.0 +06000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 63.3 +06000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 107.1 +06000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 2138.3 +06000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 719.6 +06000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 248.4 +06000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 101.6 +06000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 51.3 +06000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 17112.1 +06000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 30916.9 +06000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 18.8 +06000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 3.9 +06000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 44307.2 +06000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 27790.3 +06000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 2691.8 +06000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 1568.5 +06000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 1363.8 +06000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 12.6 +06000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 634.5 +06000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 42.1 +06000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 97.8 +06000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 1319.0 +06000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 12.6 +06000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 634.0 +06000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 42.1 +06000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 91.6 +06000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 44.7 +06000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.5 +06000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 6.2 +06000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 7.1 +06000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 7.4 +06000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 7.9 +06000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 7022.1 +06000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 6554.8 +06000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 804.0 +06000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 871.3 +06000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 127.6 +06000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 705.8 +06000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 150.2 +06000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 70.4 +06000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 127.6 +06000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 685.5 +06000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 150.2 +06000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 37.6 +06000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 20.3 +06000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 32.8 +06000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 20.8 +06000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 12.4 +06000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 3.4 +06000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 36.4 +06000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 6.0 +06000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 15.7 +06000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 5.1 +06000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 928.4 +06000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 3600.3 +06000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 13271.5 +06000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 4427.3 +06000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 1045.0 +06000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 92.8 +06000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 21.0 +06000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 1045.0 +06000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 92.8 +06000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 21.0 +06000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 22.0 +06000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 117234.7 +06000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 72503.5 +06000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 21508.9 +06000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 4044.8 +06000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 68.5 +06000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 5.2 +06000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.1 +06000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 68.5 +06000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 5.2 +06000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.1 +06000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 171.0 +06000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 813.7 +06000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 737.1 +06000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 580.7 +06000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 594.4 +06000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 8.9 +06000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 3.8 +06000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 8.8 +06000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.1 +06000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 8.9 +06000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 3.8 +06000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 8.8 +06000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.1 +06000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.1 +06000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1214.6 +06000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 7711.4 +06000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 426.5 +06000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 138.2 +06000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 13.4 +06000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 5.5 +06000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 110.2 +06000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 12.5 +06000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 44.6 +06000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 2.3 +06000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 2.6 +06000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.9 +06000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 2.8 +06000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 11.9 +06000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 35.2 +06000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 2.6 +06000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.9 +06000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 2.8 +06000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 11.9 +06000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 35.2 +06000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 163.4 +06000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 299.6 +06000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 199.0 +06000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +06000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 195.1 +06000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 26.7 +06000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 82.8 +06000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 3.0 +06000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 8.2 +06000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.6 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 56.4 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 2051.8 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 1418.6 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 4.7 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 30.1 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 29.9 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 251.2 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 221.2 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 97.7 +06000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 3.7 +06000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 11.1 +06000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 271.9 +06000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 25.2 +06000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 516.2 +06000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 321.3 +06000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 704.0 +06000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 494.3 +06000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 63.6 +06000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 266.1 +06000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 1332.6 +06000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 595.4 +06000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 362.1 +06000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 33.4 +06000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 143.5 +06000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 269.4 +06000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 322.5 +06000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 578.7 +06000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 825.4 +06000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 765.0 +06000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 774.6 +06000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 2119.9 +06000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 1965.6 +06000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 671.0 +06000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 199.0 +06000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.5 +06000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 53.4 +06000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 614.6 +06000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 795.8 +06000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 369.2 +06000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.5 +06000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 114.9 +06000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 128.9 +06000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 9.9 +06000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 66.4 +06000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 88.4 +06000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +06000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 86.7 +06000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 102.2 +06000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 186.6 +06000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 57.9 +06000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 2.6 +06000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 2.1 +06000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 6.6 +06000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 99.3 +06000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 83.2 +06000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 28.7 +06000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 1.5 +06000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 78.8 +06000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 24.1 +06000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 1.1 +06000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 24.2 +06000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 10.7 +06000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 2.2 +06000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.2 +06000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 1.7 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 215.7 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 507.8 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 271.2 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 4294.7 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 1317.5 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 2.3 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 94.1 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 54.6 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 43.5 +06000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 10.6 +06000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +06000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.7 +06000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 7.8 +06000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 10.9 +06000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 593.8 +06000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 1480.5 +06000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 2462.9 +06000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 994.8 +06000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 309.0 +06000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 206.4 +06000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 104.9 +06000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 9.2 +06000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 1.1 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 6.2 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 9.6 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 21.4 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 365.8 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 372.2 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 603.1 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 613.4 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 901.6 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 783.8 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 451.6 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 105.7 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 57.8 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 1.2 +06000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 2.0 +06000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 7.2 +06000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 39.6 +06000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 81.5 +06000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 363.4 +06000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 752.6 +06000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 401.4 +06000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 311.3 +06000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 1405.1 +06000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 5249.9 +06000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 3838.2 +06000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 1016.8 +06000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 32.3 +06000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 37.4 +06000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 1.2 +06000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 14.2 +06000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.6 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 33.1 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 56.5 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 323.9 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 11.6 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 103.9 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 149.5 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 18.3 +06000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.4 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 658.5 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 392.5 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 72.9 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 66.3 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 48.3 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 82.8 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 138.4 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 43.9 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 15.6 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 19.6 +06000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 3.9 +06000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +06000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 60.0 +06000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.8 +06000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 31.9 +06000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 309.0 +06000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 1163.3 +06000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 1189.8 +06000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 732.8 +06000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 31.6 +06000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 9.0 +06000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.3 +06000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +06000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 1.7 +06000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 13.7 +06000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 105.8 +06000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 1080.7 +06000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 1810.0 +06000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 207.0 +06000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 12.5 +06000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 2.8 +06000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 271.7 +06000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 576.7 +06000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 326.4 +06000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 158.5 +06000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 50.2 +06000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 253.9 +06000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 61.8 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 7.0 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 9.6 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 36.6 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 416.8 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 100.8 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 157.9 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 59.6 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 155.0 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 11.8 +06000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.8 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 1.7 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 21.2 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 496.5 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 552.7 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 1095.6 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 6269.1 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 3220.4 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 166.9 +06000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 219.7 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 4.9 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 251.1 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 288.4 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 407.8 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 1753.4 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 4434.0 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 4233.0 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 3105.6 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 234.7 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 114.3 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 23.8 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 140.1 +06000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 5.0 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.5 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 255.2 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 510.2 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 272.6 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 5092.1 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 17990.4 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 11970.4 +06000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 65.2 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 52.8 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 1519.2 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 3433.4 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 2973.3 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 1505.5 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 593.9 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 122.9 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 213.7 +06000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.9 +06000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 13.6 +06000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 2246.4 +06000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 4980.8 +06000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 9746.2 +06000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 3854.0 +06000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 21163.1 +06000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 13912.5 +06000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 350.4 +06000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.1 +06000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 47.3 +06000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 80.8 +06000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 193.4 +06000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 63.3 +06000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 6.0 +06000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 50.1 +06000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 1.2 +06000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 95.3 +06000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 91.1 +06000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 65.2 +06000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 75.6 +06000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 16.5 +06000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 7.9 +06000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 51.4 +06000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 18.7 +06000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 3.1 +06000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 1.4 +06000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 13.8 +06000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 39.6 +06000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 3.6 +06000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 38.5 +06000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 38.0 +06000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 263.8 +06000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 235.5 +06000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 568.7 +06000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 103.7 +06000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.4 +06000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 6.9 +06000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 13.1 +06000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 86.5 +06000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 1212.1 +06000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 1505.7 +06000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 356.0 +06000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 2530.5 +06000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 899.3 +06000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 11.0 +06000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 1.7 +06000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.4 +06000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 4.4 +06000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 51.6 +06000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 1910.5 +06000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 1924.8 +06000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 691.2 +06000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 112.5 +06000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 143.6 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 32.1 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 1.5 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 196.1 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 471.5 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 318.2 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 308.0 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 1134.4 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 1273.9 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 342.5 +06000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 5.8 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 224.0 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 42.3 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 27.3 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 47.6 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 150.3 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 54.7 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 424.0 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 1320.1 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 1877.9 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 585.9 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 59.9 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 9.9 +06000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 35.7 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 179.7 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 54.2 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 249.3 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 94.9 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 13.1 +06000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.2 +06000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 767.9 +06000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 2360.8 +06000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 2213.5 +06000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 567.6 +06000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 4160.5 +06000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 16002.5 +06000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +06000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +06000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +06000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 1.2 +06000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.5 +06000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +06000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 241.8 +06000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 419.6 +06000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 673.9 +06000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 1122.1 +06000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 34.3 +06000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 46.5 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 11.3 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +06000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +06000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.6 +06000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 5.0 +06000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 6.3 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 47.1 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 1320.9 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 18331.1 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 8885.1 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 1984.8 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 3259.3 +06000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 696.8 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 5.4 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 322.4 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 8048.3 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 139.7 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 80.5 +06000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 122.6 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 1.8 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 29.9 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 317.5 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 1183.9 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 5231.4 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 1656.3 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 1000.0 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 848.2 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 192.1 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 31.4 +06000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 3.8 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 188.2 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 244.8 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 451.0 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 219.2 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 3.9 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 230.6 +06000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 192.9 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 5.3 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 46.5 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.2 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 1.0 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 38.8 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 10.5 +06000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 1.8 +06000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.4 +06000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 9.8 +06000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +06000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 2213.9 +06000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 5954.5 +06000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 3402.4 +06000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 5387.3 +06000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 4748.1 +06000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 7911.5 +06000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 6820.6 +06000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 3529.3 +06000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.4 +06000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 372.0 +06000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 3412.3 +06000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 4068.9 +06000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 210.2 +06000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 4.1 +06000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 88.7 +06000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 32.7 +06000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 27.8 +06000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.4 +06000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 8.4 +06000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 44.4 +06000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 20.2 +06000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 12.6 +06000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 33.9 +06000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 207.8 +06000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 401.1 +06000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 435.8 +06000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 118.1 +06000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.9 +06000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +06000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.3 +06000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 251.2 +06000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1187.0 +06000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 234.5 +06000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 10.5 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.7 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 7.8 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 28.3 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 15.0 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 9.1 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 71.0 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 88.7 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 221.0 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 223.6 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 93.7 +06000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +06000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +06000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +06000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 17.9 +06000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 40.7 +06000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 16.2 +06000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 63.4 +06000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 299.3 +06000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 157.0 +06000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 44.7 +06000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 3.2 +06000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +06000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 8108.5 +06000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 8096.2 +06000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 6240.4 +06000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 9825.9 +06000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 16264.0 +06000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 2221.4 +06000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 8196.3 +06000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 9975.1 +06000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 3404.7 +06000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 1893.0 +06000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 983.2 +06000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +06000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +06000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +06000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +06000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +06000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 3.6 +06000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 1396.1 +06000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 3356.0 +06000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 842.0 +06000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 669.7 +06000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 1164.8 +06000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 330.1 +06000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 2234.8 +06000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 2487.3 +06000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 1096.8 +06000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 274.8 +06000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 139.2 +06000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +06000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +06000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +06000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +06000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +06000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 47.5 +06000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 116.1 +06000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 15.7 +06000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 24.1 +06000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 891.7 +06000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 617.1 +06000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 3955.6 +06000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 5152.2 +06000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 590.8 +06000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 530.3 +06000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 151.6 +06000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +06000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +06000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +06000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.1 +06000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.1 +06000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +06000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 515.4 +06000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 2855.7 +06000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 4157.1 +06000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 2578.1 +06000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 7146.7 +06000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 5190.9 +06000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 2279.2 +06000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 118.7 +06000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 2.7 +06000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +06000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 90.2 +06000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 768.0 +06000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 881.6 +06000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 1100.9 +06000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 1052.2 +06000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 131.8 +06000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 442.6 +06000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 123.8 +06000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 411.1 +06000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 332.7 +06000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 50.9 +06000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 23.7 +06000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 12.1 +06000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 27.0 +06000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 8.5 +06000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 79.2 +06000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 114.8 +06000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 36.2 +06000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 175.8 +06000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 203.1 +06000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 54.8 +06000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 7.1 +06000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 1.7 +06000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +06000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.5 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.7 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.0 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 49.1 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 340.4 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 487.9 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 42.1 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 17.3 +06000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.4 +06000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 138.2 +06000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.4 +06000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 1.7 +06000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 5.1 +06000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 7.0 +06000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 144.5 +06000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 263.3 +06000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 777.6 +06000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 261.0 +06000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 304.9 +06000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 32.3 +06000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 1.9 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +06000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 9.4 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 4.6 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 42.9 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 6.3 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 89.3 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 45.5 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 65.8 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 41.7 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 17.3 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 7.7 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 9.4 +06000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.3 +06000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 12743.5 +06000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 47535.8 +06000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 71596.1 +06000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 15918.2 +06000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 31351.5 +06000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 60560.9 +06000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 46586.7 +06000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 77911.4 +06000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 52925.6 +06000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 118399.9 +06000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 106283.5 +06000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 50.7 +06000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 48.9 +06000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 466.8 +06000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.9 +06000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 495.7 +06000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 199.8 +06000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 4429.4 +06000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 16382.7 +06000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 60692.8 +06000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 3993.1 +06000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 55.7 +06000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 39.9 +06000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 23.6 +06000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 101.8 +06000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 895.0 +06000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +06000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 21458.7 +06000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 79648.4 +06000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 31986.9 +06000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 539.7 +06000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 656.7 +06000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 322.2 +06000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 712.9 +06000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 390.0 +06000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 72.1 +06000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 632.1 +06000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 532.3 +06000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 4362.7 +06000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 7174.1 +06000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 5291.9 +06000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 208.8 +06000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 395.9 +06000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 32.2 +06000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 113.2 +06000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 69.3 +06000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 706.5 +06000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.8 +06000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 4.3 +06000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 4.7 +06000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 6.6 +06000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 24.5 +06000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 38.4 +06000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 70.2 +06000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 65.3 +06000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 275.7 +06000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 101.6 +06000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 17.2 +06000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 4.3 +06000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 1.0 +06000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 1.6 +06000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.5 +06000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 4.2 +06000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 134.3 +06000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 552.2 +06000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 9.9 +06000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 25.3 +06000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 7.9 +06000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +06000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 7.9 +06000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/CO.POP b/NONROAD/NR08a/DATA/POP/CO.POP new file mode 100644 index 0000000..c123327 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/CO.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 08000 CO Colorado 2,030,569.9 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +08000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 118.2 +08000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 69.7 +08000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 74.9 +08000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 5966.0 +08000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 6021.9 +08000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 2702.9 +08000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 9522.2 +08000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 3913.5 +08000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1019.6 +08000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11941.6 +08000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5881.7 +08000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 6035.5 +08000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 52233.1 +08000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1852.9 +08000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 5101.5 +08000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.5 +08000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.9 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.6 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 104.8 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 198.4 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1562.9 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 16.0 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.6 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +08000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.6 +08000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 16.0 +08000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +08000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.6 +08000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +08000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.6 +08000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 16.2 +08000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 112.7 +08000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 5.2 +08000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 40.8 +08000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 6.9 +08000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 7.6 +08000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 6.9 +08000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 7.6 +08000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3370.9 +08000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 7.4 +08000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 316.8 +08000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1607.2 +08000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 494.8 +08000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 87.7 +08000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 121.8 +08000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 21.8 +08000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 56.6 +08000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 6.7 +08000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.6 +08000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 3.2 +08000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 6.7 +08000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.6 +08000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 3.2 +08000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 303.4 +08000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 887.4 +08000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 752.5 +08000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 376.9 +08000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 265.5 +08000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 10.8 +08000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.0 +08000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 10.8 +08000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.0 +08000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 131.8 +08000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 202.9 +08000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 58.7 +08000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 24.7 +08000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.4 +08000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +08000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.4 +08000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +08000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.8 +08000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 14.9 +08000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 14.8 +08000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.6 +08000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.6 +08000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 230.7 +08000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 225.8 +08000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 80.7 +08000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 92.0 +08000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 15.3 +08000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 13.0 +08000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 10.2 +08000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 15.3 +08000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 13.0 +08000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 10.2 +08000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 95.2 +08000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1947.7 +08000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 78.8 +08000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 24.1 +08000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 30.6 +08000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 20.1 +08000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.1 +08000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.4 +08000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.2 +08000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.1 +08000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.4 +08000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.2 +08000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 249.1 +08000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1193.5 +08000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 613.7 +08000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 128.7 +08000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 56.6 +08000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 15.6 +08000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.5 +08000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 15.6 +08000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.5 +08000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 33.8 +08000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1892.8 +08000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 3162.2 +08000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 107.3 +08000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 82.2 +08000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.2 +08000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.5 +08000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.6 +08000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +08000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 11.3 +08000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.8 +08000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +08000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 11.3 +08000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.8 +08000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 30.5 +08000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 42.8 +08000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 78.1 +08000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 20.0 +08000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.5 +08000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.5 +08000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.7 +08000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.4 +08000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +08000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.0 +08000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +08000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.9 +08000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.4 +08000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +08000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.0 +08000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +08000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.9 +08000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +08000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 31.9 +08000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.1 +08000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +08000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 31.9 +08000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.1 +08000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 7.8 +08000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 163.3 +08000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +08000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.9 +08000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +08000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +08000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.9 +08000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +08000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 6.4 +08000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 129.7 +08000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 36.8 +08000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 20.3 +08000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 21.7 +08000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 36.8 +08000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 20.3 +08000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 21.7 +08000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 114.4 +08000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 377.5 +08000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 56.8 +08000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 69.4 +08000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.7 +08000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +08000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 13.5 +08000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 12.9 +08000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.6 +08000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 23.2 +08000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 6.4 +08000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 148.7 +08000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 65.8 +08000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 137.0 +08000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +08000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 65.8 +08000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 137.0 +08000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +08000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 17.4 +08000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 62.3 +08000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 100.3 +08000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 7.3 +08000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 46.6 +08000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.2 +08000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 331.3 +08000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 724.1 +08000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1905.7 +08000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 139.2 +08000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 885.7 +08000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 4.3 +08000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 458.9 +08000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 34.9 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 40.0 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 61.2 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 16.6 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 35.5 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 21.3 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 24.1 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 24.4 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.5 +08000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 21.3 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 24.1 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 24.4 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.5 +08000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +08000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +08000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.7 +08000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 678.1 +08000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 128.1 +08000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 65.2 +08000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 55.1 +08000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.9 +08000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.8 +08000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.1 +08000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +08000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +08000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.9 +08000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.8 +08000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.8 +08000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +08000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +08000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +08000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.3 +08000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 13.5 +08000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 8.2 +08000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.3 +08000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 8.2 +08000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.3 +08000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +08000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +08000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 16.7 +08000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.9 +08000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.6 +08000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +08000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 4.3 +08000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.0 +08000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 7.8 +08000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +08000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +08000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.1 +08000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.6 +08000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 7.7 +08000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +08000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.2 +08000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.4 +08000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +08000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +08000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 10295.8 +08000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 511688.3 +08000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 168.7 +08000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 663.4 +08000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 32972.4 +08000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 10.9 +08000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 954.7 +08000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 6749.5 +08000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 47931.5 +08000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 221.1 +08000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1562.7 +08000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 11097.7 +08000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 83264.8 +08000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +08000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 3573.3 +08000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 12572.6 +08000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 62238.0 +08000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 157615.8 +08000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +08000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +08000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 37698.9 +08000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2677.2 +08000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3594.4 +08000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +08000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +08000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +08000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 591.4 +08000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 158.2 +08000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 8.4 +08000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 18.1 +08000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 9214.5 +08000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 102329.0 +08000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +08000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +08000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 11439.9 +08000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 4261.9 +08000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 5798.5 +08000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +08000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +08000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 652.4 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 6380.1 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 201.0 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 218.6 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 16.6 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 113.5 +08000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 112.6 +08000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 28150.3 +08000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 43106.9 +08000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 72723.7 +08000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 3399.0 +08000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 5147.0 +08000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 7881.6 +08000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 13296.7 +08000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 621.5 +08000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 112.4 +08000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 16265.3 +08000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 12613.6 +08000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 59.7 +08000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 4.2 +08000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 602.5 +08000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 467.2 +08000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 2.2 +08000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 623.5 +08000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2129.5 +08000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 941.6 +08000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 14.1 +08000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 2284.4 +08000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 4470.9 +08000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 401.7 +08000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 12593.1 +08000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 139925.9 +08000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 45605.1 +08000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 14.9 +08000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 466.5 +08000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 5182.8 +08000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1689.2 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.8 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 37.6 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 155.1 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 292.4 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 22.1 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 94.2 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.9 +08000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 22.5 +08000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 22.1 +08000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 94.2 +08000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.9 +08000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 22.5 +08000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.7 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 7695.2 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2046.9 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 4567.9 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 5954.0 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1179.7 +08000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 10.2 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 410.3 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1776.5 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 4527.6 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2991.7 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 43.8 +08000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 28.7 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 676.4 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2929.0 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 7464.7 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 4932.4 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 72.2 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 47.4 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 4.6 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.6 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.6 +08000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.9 +08000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 37.3 +08000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 32.2 +08000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 15.4 +08000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.6 +08000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 18.5 +08000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.1 +08000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +08000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +08000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +08000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 190.5 +08000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 61.0 +08000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.9 +08000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.3 +08000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 88.3 +08000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.3 +08000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 27.0 +08000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 323.4 +08000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 301.5 +08000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1174.2 +08000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 428.2 +08000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 147.1 +08000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 249.2 +08000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 60.7 +08000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 22.8 +08000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 23.9 +08000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 23.4 +08000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 10325.8 +08000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 25.8 +08000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 102.9 +08000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 58.3 +08000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 22.2 +08000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 107.8 +08000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 64.1 +08000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 56.8 +08000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.5 +08000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 7.3 +08000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.2 +08000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 42.8 +08000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 17.9 +08000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.1 +08000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.9 +08000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 10.9 +08000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.0 +08000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +08000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.9 +08000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 14.5 +08000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.7 +08000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.1 +08000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +08000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.6 +08000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 18.9 +08000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 26.8 +08000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.6 +08000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.1 +08000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +08000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 69.2 +08000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1716.9 +08000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 12078.9 +08000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 29005.2 +08000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 6415.8 +08000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 9180.5 +08000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +08000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +08000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +08000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +08000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +08000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +08000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 850.2 +08000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 6.4 +08000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 396.5 +08000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 352.7 +08000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 132.3 +08000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.1 +08000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.5 +08000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 8.0 +08000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 13.6 +08000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 271.7 +08000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 91.4 +08000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 31.6 +08000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 12.9 +08000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 6.5 +08000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2174.1 +08000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3928.1 +08000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.4 +08000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.5 +08000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 5629.4 +08000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3530.8 +08000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 342.0 +08000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 199.3 +08000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 173.3 +08000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.6 +08000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 80.6 +08000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 5.4 +08000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 12.4 +08000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 167.6 +08000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.6 +08000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 80.6 +08000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 5.4 +08000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 11.6 +08000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 5.7 +08000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +08000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.8 +08000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.9 +08000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.9 +08000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.0 +08000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 892.2 +08000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 832.8 +08000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 102.2 +08000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 110.7 +08000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 16.2 +08000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 89.7 +08000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 19.1 +08000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 8.9 +08000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 16.2 +08000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 87.1 +08000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 19.1 +08000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 4.8 +08000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.6 +08000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.2 +08000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.6 +08000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.6 +08000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.4 +08000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 4.6 +08000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.8 +08000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.0 +08000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.6 +08000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 118.0 +08000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 457.4 +08000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1686.2 +08000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 562.5 +08000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 132.8 +08000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 11.8 +08000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.7 +08000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 132.8 +08000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 11.8 +08000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.7 +08000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.8 +08000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 14895.0 +08000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 9211.8 +08000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2732.8 +08000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 513.9 +08000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 8.7 +08000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.7 +08000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +08000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 8.7 +08000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.7 +08000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +08000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 21.7 +08000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 103.4 +08000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 93.7 +08000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 73.8 +08000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 75.5 +08000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.1 +08000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +08000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +08000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +08000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.1 +08000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +08000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +08000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +08000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +08000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 86.4 +08000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 548.4 +08000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 30.3 +08000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 9.8 +08000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 1.0 +08000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.4 +08000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 23.4 +08000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.7 +08000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 9.5 +08000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +08000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +08000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +08000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +08000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.5 +08000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.5 +08000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +08000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +08000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +08000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.5 +08000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.5 +08000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 163.0 +08000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 298.9 +08000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 198.5 +08000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +08000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 194.6 +08000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 26.6 +08000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 82.5 +08000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 3.0 +08000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 8.2 +08000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.6 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 7.2 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 263.8 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 182.4 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.6 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.9 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.8 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 32.3 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 28.4 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 12.6 +08000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.5 +08000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.2 +08000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 54.2 +08000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 5.0 +08000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 102.8 +08000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 64.0 +08000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 140.2 +08000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 98.5 +08000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 12.7 +08000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 53.0 +08000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 265.4 +08000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 118.6 +08000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 72.1 +08000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 6.7 +08000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 28.6 +08000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 53.7 +08000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 64.2 +08000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 115.3 +08000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 164.4 +08000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 152.4 +08000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 154.3 +08000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 422.2 +08000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 391.5 +08000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 133.7 +08000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 39.6 +08000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +08000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 10.6 +08000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 122.4 +08000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 158.5 +08000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 73.5 +08000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +08000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 22.9 +08000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 25.7 +08000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.0 +08000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 13.2 +08000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 17.6 +08000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +08000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 17.3 +08000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 20.4 +08000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 37.2 +08000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 11.5 +08000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +08000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +08000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.3 +08000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 19.8 +08000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 16.6 +08000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 5.7 +08000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +08000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 15.7 +08000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.8 +08000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +08000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.8 +08000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.1 +08000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +08000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +08000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 43.0 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 101.1 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 54.0 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 855.4 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 262.4 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.5 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 18.8 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 10.9 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 8.7 +08000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.1 +08000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +08000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +08000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.6 +08000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.2 +08000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 118.3 +08000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 294.9 +08000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 490.6 +08000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 198.1 +08000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 61.6 +08000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 41.1 +08000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 20.9 +08000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.8 +08000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.2 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.9 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 4.3 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 72.9 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 74.1 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 120.1 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 122.2 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 179.6 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 156.1 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 90.0 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 21.1 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 11.5 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +08000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +08000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.4 +08000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 7.9 +08000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 16.2 +08000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 72.4 +08000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 149.9 +08000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 79.9 +08000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 62.0 +08000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 279.9 +08000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1045.7 +08000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 764.5 +08000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 202.5 +08000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 6.4 +08000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 7.5 +08000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +08000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.8 +08000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 6.6 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 11.2 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 64.5 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.3 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 20.7 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 29.8 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.6 +08000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 131.2 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 78.2 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 14.5 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 13.2 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 9.6 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 16.5 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 27.6 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 8.7 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 3.1 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.9 +08000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.8 +08000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +08000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 11.9 +08000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +08000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 6.3 +08000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 61.5 +08000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 231.7 +08000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 237.0 +08000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 146.0 +08000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 6.3 +08000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.8 +08000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +08000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +08000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +08000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.7 +08000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 21.1 +08000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 215.3 +08000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 360.5 +08000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 41.2 +08000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.5 +08000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.6 +08000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 54.1 +08000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 114.9 +08000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 65.0 +08000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 31.6 +08000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 10.0 +08000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 50.6 +08000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 12.3 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.4 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.9 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 7.3 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 83.0 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 20.1 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 31.5 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 11.9 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 30.9 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.3 +08000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 4.2 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 98.9 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 110.1 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 218.2 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1248.7 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 641.4 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 33.2 +08000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 43.8 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.0 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 50.0 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 57.4 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 81.2 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 349.3 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 883.2 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 843.1 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 618.6 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 46.8 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 22.8 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.7 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 27.9 +08000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.0 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 50.8 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 101.6 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 54.3 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1014.3 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3583.4 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2384.3 +08000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 13.0 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 10.5 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 302.6 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 683.9 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 592.2 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 299.9 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 118.3 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 24.5 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 42.6 +08000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +08000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.7 +08000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 447.4 +08000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 992.1 +08000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1941.3 +08000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 767.7 +08000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 4215.4 +08000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2771.1 +08000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 69.8 +08000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +08000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 9.4 +08000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 16.1 +08000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 38.5 +08000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 12.6 +08000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.2 +08000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 10.0 +08000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +08000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 19.0 +08000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 18.2 +08000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 13.0 +08000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 15.1 +08000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.3 +08000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.6 +08000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 10.2 +08000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.7 +08000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.6 +08000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +08000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.8 +08000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 7.9 +08000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.7 +08000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 7.7 +08000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 7.6 +08000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 52.5 +08000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 46.9 +08000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 113.3 +08000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 20.7 +08000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +08000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.4 +08000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.3 +08000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 8.6 +08000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 120.8 +08000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 150.1 +08000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 35.5 +08000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 252.2 +08000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 89.6 +08000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.1 +08000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +08000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +08000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.4 +08000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.1 +08000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 190.4 +08000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 191.9 +08000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 68.9 +08000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 11.2 +08000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 14.3 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.2 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 19.5 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 47.0 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 31.7 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 30.7 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 113.1 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 127.0 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 34.1 +08000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.6 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 22.3 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.2 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 2.7 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 4.7 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 15.0 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 5.5 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 42.3 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 131.6 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 187.2 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 58.4 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 6.0 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.0 +08000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 3.6 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 17.9 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 5.4 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 24.9 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 9.5 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.3 +08000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +08000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 98.7 +08000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 303.5 +08000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 284.6 +08000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 73.0 +08000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 534.9 +08000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2057.3 +08000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +08000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +08000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +08000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +08000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +08000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +08000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 24.1 +08000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 41.8 +08000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 67.2 +08000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 111.8 +08000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.4 +08000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 6.2 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.5 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +08000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +08000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.1 +08000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 9.0 +08000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 11.2 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 6.3 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 176.5 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2449.7 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1187.4 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 265.2 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 435.6 +08000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 93.1 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.7 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 43.1 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1075.5 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 18.7 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 10.8 +08000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 16.4 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 4.0 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 42.4 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 158.2 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 699.1 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 221.3 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 133.6 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 113.3 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 25.7 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 4.2 +08000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.5 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 25.2 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 32.7 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 60.3 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 29.3 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.5 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 30.8 +08000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 25.8 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.7 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 6.2 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 5.2 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.4 +08000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +08000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +08000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.0 +08000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +08000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1136.7 +08000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3057.3 +08000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1746.9 +08000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2766.1 +08000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2437.9 +08000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4062.1 +08000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3502.0 +08000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1812.1 +08000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +08000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 191.0 +08000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1752.0 +08000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2089.1 +08000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 107.9 +08000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.1 +08000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 45.6 +08000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 16.8 +08000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 14.3 +08000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +08000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.3 +08000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 22.8 +08000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 10.4 +08000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.5 +08000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 17.4 +08000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 106.7 +08000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 205.9 +08000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 223.8 +08000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 60.6 +08000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +08000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +08000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +08000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 129.0 +08000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 609.5 +08000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 120.4 +08000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.4 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.0 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 14.5 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.7 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.7 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 36.4 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 45.5 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 113.5 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 114.8 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 48.1 +08000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +08000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +08000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +08000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 9.2 +08000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 20.9 +08000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 8.3 +08000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 32.6 +08000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 153.7 +08000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 80.6 +08000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 22.9 +08000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.6 +08000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +08000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1030.2 +08000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1028.6 +08000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 792.9 +08000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1248.4 +08000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2066.4 +08000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 282.2 +08000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1041.4 +08000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1267.4 +08000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 432.6 +08000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 240.5 +08000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 124.9 +08000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +08000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +08000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +08000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +08000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +08000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +08000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 177.4 +08000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 426.4 +08000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 107.0 +08000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 85.1 +08000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 148.0 +08000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 41.9 +08000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 283.9 +08000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 316.0 +08000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 139.3 +08000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 34.9 +08000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 17.7 +08000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +08000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +08000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +08000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +08000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +08000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 6.0 +08000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 14.7 +08000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.0 +08000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.1 +08000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 113.3 +08000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 78.4 +08000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 502.6 +08000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 654.6 +08000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 75.1 +08000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 67.4 +08000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 19.3 +08000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +08000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +08000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +08000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +08000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +08000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +08000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 65.5 +08000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 362.8 +08000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 528.2 +08000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 327.6 +08000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 908.0 +08000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 659.5 +08000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 289.6 +08000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 15.1 +08000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +08000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +08000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 11.5 +08000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 97.6 +08000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 112.0 +08000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 139.9 +08000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 133.7 +08000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 16.7 +08000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 56.2 +08000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 15.7 +08000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 52.2 +08000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 42.3 +08000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 6.5 +08000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.0 +08000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.5 +08000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.4 +08000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.1 +08000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 10.1 +08000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 14.6 +08000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 4.6 +08000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 22.3 +08000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 25.8 +08000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 7.0 +08000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.9 +08000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +08000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +08000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 3.5 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 24.2 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 34.7 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 3.0 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 1.2 +08000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +08000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 29.3 +08000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +08000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +08000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.1 +08000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.5 +08000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 30.7 +08000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 55.9 +08000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 165.0 +08000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 55.4 +08000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 64.7 +08000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.9 +08000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.8 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 20.4 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 40.3 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 104.2 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 184.2 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 196.2 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 61.5 +08000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 30.5 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 9.4 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 4.6 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 42.8 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 6.3 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 89.1 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 45.4 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 65.6 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 41.6 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 17.2 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 7.7 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 9.4 +08000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.3 +08000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 962.0 +08000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 3588.3 +08000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 5404.5 +08000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1201.6 +08000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 2366.6 +08000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 4571.5 +08000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 3516.6 +08000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 5881.2 +08000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 3995.1 +08000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 8937.5 +08000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 8022.9 +08000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 3.8 +08000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 3.7 +08000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 35.2 +08000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +08000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 37.4 +08000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 15.1 +08000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 334.4 +08000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1236.7 +08000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 4581.4 +08000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 301.4 +08000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 4.2 +08000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 3.0 +08000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.8 +08000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 7.7 +08000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 67.6 +08000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +08000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1619.8 +08000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 6012.3 +08000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 2414.5 +08000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 40.7 +08000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 49.6 +08000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 24.3 +08000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 53.8 +08000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 29.4 +08000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 5.4 +08000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 47.7 +08000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 40.2 +08000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 329.3 +08000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 541.5 +08000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 399.5 +08000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 15.8 +08000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 29.9 +08000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 2.4 +08000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 8.5 +08000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 5.2 +08000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 53.3 +08000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +08000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.1 +08000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.2 +08000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.7 +08000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 6.1 +08000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 9.6 +08000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 17.5 +08000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 16.3 +08000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 68.8 +08000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 25.3 +08000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 4.3 +08000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.1 +08000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +08000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.4 +08000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +08000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.0 +08000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 33.5 +08000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 137.7 +08000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.5 +08000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 6.3 +08000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.0 +08000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +08000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.0 +08000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/CT.POP b/NONROAD/NR08a/DATA/POP/CT.POP new file mode 100644 index 0000000..15107f1 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/CT.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 09000 CT Connecticut 1,477,961.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +09000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 5.6 +09000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3.3 +09000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3.5 +09000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 280.2 +09000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 282.9 +09000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 127.0 +09000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 447.3 +09000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 183.8 +09000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 47.9 +09000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5188.6 +09000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2555.6 +09000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 2622.4 +09000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 22695.3 +09000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2327.3 +09000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3923.0 +09000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.2 +09000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.7 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.0 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 80.6 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 152.6 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1201.9 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.3 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 29.7 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +09000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.2 +09000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.3 +09000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +09000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 29.7 +09000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +09000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.2 +09000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 6.6 +09000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 46.2 +09000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 2.1 +09000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 16.7 +09000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.8 +09000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 3.1 +09000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.8 +09000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 3.1 +09000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1381.3 +09000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 3.0 +09000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 129.8 +09000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 658.6 +09000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 202.8 +09000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 35.9 +09000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 49.9 +09000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 8.9 +09000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 23.2 +09000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.7 +09000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.9 +09000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.3 +09000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.7 +09000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.9 +09000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.3 +09000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 124.3 +09000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 363.6 +09000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 308.4 +09000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 154.4 +09000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 108.8 +09000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 4.4 +09000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.4 +09000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 4.4 +09000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.4 +09000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 54.0 +09000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 83.2 +09000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 24.0 +09000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 10.1 +09000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.0 +09000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +09000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.0 +09000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +09000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.3 +09000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 6.1 +09000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 6.1 +09000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +09000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.3 +09000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 94.5 +09000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 92.5 +09000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 33.1 +09000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 37.7 +09000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 6.3 +09000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 5.3 +09000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 4.2 +09000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 6.3 +09000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 5.3 +09000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 4.2 +09000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 39.0 +09000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 798.1 +09000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 32.3 +09000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 9.9 +09000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 12.5 +09000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 8.2 +09000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.3 +09000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.0 +09000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.0 +09000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.3 +09000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.0 +09000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.0 +09000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 102.1 +09000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 489.1 +09000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 251.5 +09000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 52.7 +09000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 23.2 +09000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.4 +09000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.5 +09000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.4 +09000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.5 +09000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 13.8 +09000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 775.6 +09000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1295.8 +09000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 44.0 +09000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 33.7 +09000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.3 +09000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.9 +09000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.7 +09000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +09000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 4.6 +09000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.7 +09000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +09000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 4.6 +09000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.7 +09000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 12.5 +09000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 17.5 +09000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 32.0 +09000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 8.2 +09000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.0 +09000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.0 +09000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.3 +09000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.0 +09000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +09000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 6.6 +09000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +09000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.8 +09000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.0 +09000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +09000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 6.6 +09000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +09000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.8 +09000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +09000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 13.1 +09000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.4 +09000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +09000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 13.1 +09000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.4 +09000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 3.2 +09000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 66.9 +09000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +09000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.2 +09000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +09000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +09000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.2 +09000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +09000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.6 +09000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 53.2 +09000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 15.1 +09000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 8.3 +09000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 8.9 +09000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 15.1 +09000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 8.3 +09000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 8.9 +09000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 46.9 +09000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 154.7 +09000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 23.3 +09000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 28.4 +09000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.1 +09000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +09000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 5.5 +09000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 5.3 +09000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +09000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 34.0 +09000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 9.4 +09000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 218.0 +09000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 96.4 +09000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 200.8 +09000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 4.5 +09000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 96.4 +09000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 200.8 +09000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 4.5 +09000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 25.6 +09000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 91.2 +09000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 147.0 +09000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 10.7 +09000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 68.3 +09000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +09000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 485.5 +09000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1061.1 +09000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2792.7 +09000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 204.0 +09000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1297.9 +09000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 6.4 +09000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 672.4 +09000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 51.2 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 58.6 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 89.7 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 24.3 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 52.0 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 31.2 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 35.3 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 35.8 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.7 +09000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 31.2 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 35.3 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 35.8 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.7 +09000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +09000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.3 +09000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.4 +09000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 993.7 +09000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 187.8 +09000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 95.6 +09000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 80.8 +09000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 7.2 +09000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 10.0 +09000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.6 +09000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.8 +09000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +09000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 7.2 +09000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 10.0 +09000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.2 +09000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.8 +09000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +09000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.4 +09000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.5 +09000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 19.7 +09000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 12.0 +09000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.5 +09000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 12.0 +09000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.5 +09000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +09000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.4 +09000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 12.8 +09000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.4 +09000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.5 +09000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +09000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 6.4 +09000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.9 +09000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 11.5 +09000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +09000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +09000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 6.0 +09000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.3 +09000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 11.3 +09000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +09000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.4 +09000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.6 +09000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +09000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +09000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 7486.7 +09000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 372077.4 +09000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 122.7 +09000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 396.3 +09000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 19695.3 +09000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 6.5 +09000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 694.3 +09000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4908.0 +09000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 34853.7 +09000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 132.0 +09000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 933.5 +09000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 6628.9 +09000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 60546.5 +09000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +09000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2134.4 +09000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 7510.0 +09000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 45256.8 +09000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 114611.3 +09000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +09000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +09000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 22518.5 +09000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1599.1 +09000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2613.7 +09000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +09000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +09000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +09000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 353.2 +09000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 94.5 +09000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 5.0 +09000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 10.8 +09000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 6700.4 +09000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 74409.2 +09000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +09000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +09000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 6833.3 +09000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2545.8 +09000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 4216.4 +09000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +09000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +09000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 389.7 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3811.0 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 120.0 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 130.6 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 9.9 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 67.8 +09000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 67.3 +09000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 20469.7 +09000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 31345.5 +09000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 52881.5 +09000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 2471.6 +09000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 3074.4 +09000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 4707.9 +09000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 7942.5 +09000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 371.2 +09000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 81.7 +09000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 11827.4 +09000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 9172.1 +09000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 43.4 +09000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.5 +09000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 359.9 +09000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 279.1 +09000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.3 +09000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 372.4 +09000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1272.0 +09000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 562.4 +09000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 8.4 +09000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1364.5 +09000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2670.6 +09000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 292.1 +09000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 9157.1 +09000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 101748.0 +09000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 33162.0 +09000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 8.9 +09000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 278.6 +09000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3095.8 +09000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1009.0 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.5 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 22.5 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 92.7 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 174.6 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.2 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 56.3 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +09000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.5 +09000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.2 +09000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 56.3 +09000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +09000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.5 +09000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.6 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 4596.5 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1222.7 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2728.5 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3556.5 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 704.7 +09000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 6.1 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 298.3 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1291.8 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 3292.3 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2175.4 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 31.9 +09000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 20.9 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 404.0 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1749.6 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4458.8 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2946.2 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 43.1 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 28.3 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.8 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.0 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +09000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.1 +09000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 1.1 +09000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 1.0 +09000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.5 +09000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +09000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.6 +09000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.1 +09000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +09000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +09000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +09000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 5.8 +09000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 1.8 +09000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.2 +09000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +09000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 2.7 +09000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +09000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.8 +09000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 9.8 +09000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 9.1 +09000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 35.5 +09000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 12.9 +09000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 4.4 +09000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 7.5 +09000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 1.8 +09000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.7 +09000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.7 +09000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.7 +09000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 311.8 +09000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.8 +09000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 3.1 +09000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 1.8 +09000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.7 +09000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 3.3 +09000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 1.9 +09000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 1.7 +09000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.1 +09000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.2 +09000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +09000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 1.3 +09000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.5 +09000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +09000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.1 +09000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.3 +09000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.1 +09000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +09000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.2 +09000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.4 +09000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.2 +09000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.1 +09000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +09000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.1 +09000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.6 +09000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.8 +09000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.1 +09000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.1 +09000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +09000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 44.5 +09000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1104.1 +09000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 7767.6 +09000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 18652.3 +09000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4125.8 +09000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 5903.7 +09000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +09000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +09000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +09000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +09000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +09000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +09000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 546.7 +09000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.1 +09000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 255.0 +09000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 226.8 +09000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 85.1 +09000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.0 +09000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +09000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.2 +09000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 8.7 +09000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 174.7 +09000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 58.8 +09000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 20.3 +09000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.3 +09000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.2 +09000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1398.1 +09000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2526.0 +09000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.5 +09000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +09000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3620.1 +09000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2270.6 +09000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 219.9 +09000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 128.2 +09000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 111.4 +09000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.0 +09000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 51.8 +09000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.4 +09000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 8.0 +09000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 107.8 +09000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.0 +09000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 51.8 +09000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.4 +09000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.5 +09000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.7 +09000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +09000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +09000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +09000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +09000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.6 +09000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 573.7 +09000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 535.6 +09000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 65.7 +09000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 71.2 +09000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.4 +09000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 57.7 +09000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.3 +09000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 5.8 +09000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.4 +09000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 56.0 +09000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.3 +09000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.1 +09000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.7 +09000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.7 +09000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.7 +09000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.0 +09000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +09000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.0 +09000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +09000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +09000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +09000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 75.9 +09000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 294.2 +09000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1084.3 +09000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 361.7 +09000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 85.4 +09000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.6 +09000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.7 +09000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 85.4 +09000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.6 +09000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.7 +09000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.8 +09000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9578.5 +09000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 5923.8 +09000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1757.4 +09000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 330.5 +09000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.6 +09000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +09000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +09000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.6 +09000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +09000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +09000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 14.0 +09000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 66.5 +09000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 60.2 +09000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 47.4 +09000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 48.6 +09000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +09000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +09000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +09000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +09000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +09000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +09000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +09000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +09000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +09000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 49.1 +09000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 311.6 +09000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 17.2 +09000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 5.6 +09000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.5 +09000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +09000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 4.6 +09000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.5 +09000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.9 +09000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +09000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +09000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +09000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +09000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.5 +09000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.5 +09000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +09000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +09000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +09000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.5 +09000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.5 +09000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +09000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +09000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +09000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +09000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +09000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +09000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +09000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +09000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +09000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 5.6 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 202.8 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 140.3 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.5 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.0 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.0 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 24.8 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 21.9 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 9.7 +09000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +09000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.9 +09000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 22.2 +09000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.1 +09000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 42.1 +09000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 26.2 +09000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 57.5 +09000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 40.3 +09000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 5.2 +09000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 21.7 +09000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 108.8 +09000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 48.6 +09000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 29.6 +09000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.7 +09000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 11.7 +09000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 22.0 +09000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 26.3 +09000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 47.2 +09000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 67.4 +09000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 62.4 +09000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 63.2 +09000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 173.0 +09000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 160.4 +09000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 54.8 +09000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 16.2 +09000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +09000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 4.4 +09000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 50.2 +09000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 65.0 +09000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 30.1 +09000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +09000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 9.4 +09000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 10.5 +09000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.8 +09000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 5.4 +09000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 7.2 +09000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +09000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 7.1 +09000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 8.3 +09000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 15.2 +09000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 4.7 +09000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +09000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +09000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.5 +09000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 8.1 +09000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 6.8 +09000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.3 +09000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +09000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 6.4 +09000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 2.0 +09000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +09000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 2.0 +09000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.9 +09000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +09000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +09000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 17.6 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 41.4 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 22.1 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 350.5 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 107.5 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 7.7 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 4.5 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.5 +09000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.9 +09000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +09000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +09000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.6 +09000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.9 +09000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 48.5 +09000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 120.8 +09000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 201.0 +09000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 81.2 +09000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 25.2 +09000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 16.8 +09000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 8.6 +09000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.7 +09000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.5 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.8 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.7 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 29.9 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 30.4 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 49.2 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 50.1 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 73.6 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 64.0 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 36.9 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 8.6 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 4.7 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +09000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +09000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.6 +09000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 3.2 +09000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 6.7 +09000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 29.7 +09000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 61.4 +09000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 32.8 +09000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 25.4 +09000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 114.7 +09000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 428.5 +09000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 313.3 +09000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 83.0 +09000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.6 +09000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 3.1 +09000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +09000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.2 +09000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.7 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 4.6 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 26.4 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.9 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 8.5 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 12.2 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.5 +09000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 53.7 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 32.0 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 5.9 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 5.4 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 3.9 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 6.8 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 11.3 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 3.6 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.3 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.6 +09000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +09000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +09000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 4.9 +09000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +09000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.6 +09000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 25.2 +09000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 95.0 +09000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 97.1 +09000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 59.8 +09000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.6 +09000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.7 +09000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +09000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +09000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +09000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.1 +09000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 8.6 +09000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 88.2 +09000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 147.7 +09000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 16.9 +09000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.0 +09000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +09000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 22.2 +09000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 47.1 +09000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 26.6 +09000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 12.9 +09000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 4.1 +09000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 20.7 +09000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 5.0 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.6 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.8 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 3.0 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 34.0 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 8.2 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 12.9 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 4.9 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 12.7 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.0 +09000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.7 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 40.5 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 45.1 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 89.4 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 511.7 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 262.9 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 13.6 +09000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 17.9 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.4 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 20.5 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 23.5 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 33.3 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 143.1 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 361.9 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 345.5 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 253.5 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 19.2 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 9.3 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.9 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 11.4 +09000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.4 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 20.8 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 41.6 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 22.2 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 415.6 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1468.4 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 977.0 +09000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 5.3 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 4.3 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 124.0 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 280.2 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 242.7 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 122.9 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 48.5 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 10.0 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 17.4 +09000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +09000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.1 +09000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 183.4 +09000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 406.5 +09000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 795.5 +09000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 314.6 +09000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1727.4 +09000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1135.5 +09000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 28.6 +09000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +09000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 3.9 +09000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 6.6 +09000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 15.8 +09000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 5.2 +09000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.5 +09000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 4.1 +09000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +09000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 7.8 +09000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 7.4 +09000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 5.3 +09000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 6.2 +09000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.3 +09000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.6 +09000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 4.2 +09000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.5 +09000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.3 +09000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +09000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.1 +09000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 3.2 +09000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.3 +09000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 3.1 +09000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 3.1 +09000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 21.5 +09000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 19.2 +09000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 46.4 +09000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 8.5 +09000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +09000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.6 +09000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.9 +09000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 12.6 +09000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 177.1 +09000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 220.0 +09000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 52.0 +09000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 369.6 +09000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 131.4 +09000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.6 +09000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +09000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +09000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.6 +09000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 7.5 +09000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 279.1 +09000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 281.2 +09000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 101.0 +09000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 16.4 +09000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 21.0 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 4.7 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 28.6 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 68.9 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 46.5 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 45.0 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 165.7 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 186.1 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 50.0 +09000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.8 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 32.7 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 6.2 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 4.0 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 6.9 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 22.0 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 8.0 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 61.9 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 192.8 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 274.3 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 85.6 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 8.8 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.5 +09000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 5.2 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 26.3 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 7.9 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 36.4 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 13.9 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.9 +09000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +09000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 75.9 +09000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 233.4 +09000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 218.8 +09000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 56.1 +09000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 411.3 +09000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1582.0 +09000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +09000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +09000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +09000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +09000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +09000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +09000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 35.3 +09000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 61.3 +09000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 98.4 +09000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 163.9 +09000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 5.0 +09000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.7 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.9 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +09000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +09000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.6 +09000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 5.4 +09000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 6.7 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.8 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 105.4 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1463.2 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 709.2 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 158.4 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 260.2 +09000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 55.6 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 25.7 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 642.4 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 11.2 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 6.4 +09000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 9.8 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.4 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 25.3 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 94.5 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 417.6 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 132.2 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 79.8 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 67.7 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 15.3 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.5 +09000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 15.0 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 19.5 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 36.0 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 17.5 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 18.4 +09000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 15.4 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.7 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 3.1 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.8 +09000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +09000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +09000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.2 +09000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +09000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 34.3 +09000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 92.3 +09000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 52.7 +09000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 83.5 +09000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 73.6 +09000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 122.6 +09000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 105.7 +09000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 54.7 +09000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +09000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 5.8 +09000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 52.9 +09000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 63.1 +09000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 3.3 +09000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.1 +09000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 1.4 +09000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.5 +09000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.4 +09000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +09000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.1 +09000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.7 +09000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.3 +09000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.2 +09000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.5 +09000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 3.2 +09000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 6.2 +09000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 6.8 +09000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 1.8 +09000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +09000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +09000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +09000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 3.9 +09000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 18.4 +09000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 3.6 +09000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.2 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.1 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.4 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.2 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.1 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 1.1 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 1.4 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 3.4 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 3.5 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 1.5 +09000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +09000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +09000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +09000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.3 +09000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.6 +09000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.3 +09000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 1.0 +09000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 4.6 +09000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 2.4 +09000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.7 +09000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +09000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +09000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 662.5 +09000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 661.5 +09000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 509.9 +09000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 802.8 +09000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1328.8 +09000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 181.5 +09000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 669.7 +09000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 815.0 +09000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 278.2 +09000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 154.7 +09000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 80.3 +09000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +09000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +09000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +09000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +09000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +09000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +09000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 114.1 +09000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 274.2 +09000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 68.8 +09000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 54.7 +09000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 95.2 +09000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 27.0 +09000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 182.6 +09000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 203.2 +09000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 89.6 +09000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 22.5 +09000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.4 +09000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +09000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +09000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +09000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +09000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +09000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 3.9 +09000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.5 +09000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +09000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.0 +09000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 72.9 +09000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 50.4 +09000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 323.2 +09000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 421.0 +09000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 48.3 +09000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 43.3 +09000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.4 +09000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +09000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +09000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +09000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +09000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +09000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +09000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 42.1 +09000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 233.3 +09000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 339.6 +09000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 210.6 +09000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 583.9 +09000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 424.1 +09000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 186.2 +09000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 9.7 +09000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +09000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +09000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.4 +09000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 62.8 +09000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 72.0 +09000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 89.9 +09000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 86.0 +09000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 10.8 +09000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 36.2 +09000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 10.1 +09000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 33.6 +09000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 27.2 +09000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.2 +09000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.9 +09000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +09000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.2 +09000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +09000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.5 +09000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.4 +09000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.0 +09000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 14.4 +09000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 16.6 +09000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.5 +09000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +09000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +09000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +09000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 2.0 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 13.8 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 19.7 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.7 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.7 +09000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +09000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 5.8 +09000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +09000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +09000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.2 +09000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.3 +09000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 6.0 +09000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 11.0 +09000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 32.5 +09000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 10.9 +09000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 12.7 +09000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.4 +09000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +09000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +09000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +09000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2485.4 +09000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 9271.1 +09000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 13963.7 +09000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 3104.6 +09000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 6114.6 +09000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 11811.4 +09000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 9086.0 +09000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 15195.4 +09000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 10322.3 +09000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 23092.0 +09000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 20728.9 +09000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 9.9 +09000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 9.5 +09000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 91.0 +09000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +09000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 96.7 +09000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 39.0 +09000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 863.9 +09000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 3195.2 +09000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 11837.2 +09000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 778.8 +09000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 10.9 +09000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 7.8 +09000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.6 +09000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 19.9 +09000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 174.6 +09000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +09000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 4185.2 +09000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 15534.2 +09000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 6238.5 +09000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 105.3 +09000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 128.1 +09000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 62.8 +09000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 139.0 +09000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 76.1 +09000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 14.1 +09000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 123.3 +09000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 103.8 +09000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 850.9 +09000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1399.2 +09000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1032.1 +09000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 40.7 +09000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 77.2 +09000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 6.3 +09000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 22.1 +09000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 13.5 +09000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 137.8 +09000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +09000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.9 +09000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.0 +09000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.4 +09000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 5.0 +09000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.8 +09000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 14.3 +09000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 13.3 +09000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 56.2 +09000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 20.7 +09000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.5 +09000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.9 +09000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +09000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +09000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +09000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.9 +09000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 27.4 +09000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 112.6 +09000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.0 +09000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.2 +09000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +09000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +09000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +09000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/DC.POP b/NONROAD/NR08a/DATA/POP/DC.POP new file mode 100644 index 0000000..cf2d12c --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/DC.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 11000 DC Washington D.C. 219,820.3 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +11000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +11000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +11000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 88.0 +11000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 43.4 +11000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 44.5 +11000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 385.1 +11000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 88.9 +11000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 640.4 +11000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.2 +11000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.3 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 13.2 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 24.9 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 196.2 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.0 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 4.8 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +11000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 1.8 +11000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.0 +11000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +11000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 4.8 +11000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +11000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 1.8 +11000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 2.5 +11000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 17.7 +11000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.8 +11000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 6.4 +11000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.1 +11000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.2 +11000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.1 +11000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.2 +11000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 530.8 +11000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.2 +11000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 49.9 +11000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 253.1 +11000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 77.9 +11000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 13.8 +11000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 19.2 +11000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 3.4 +11000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 8.9 +11000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.1 +11000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.7 +11000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.5 +11000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.1 +11000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.7 +11000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.5 +11000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 47.8 +11000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 139.7 +11000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 118.5 +11000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 59.4 +11000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 41.8 +11000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.7 +11000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.2 +11000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.7 +11000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.2 +11000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 20.7 +11000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 32.0 +11000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 9.2 +11000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 3.9 +11000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +11000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +11000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +11000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +11000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +11000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.3 +11000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.3 +11000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +11000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +11000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 36.3 +11000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 35.6 +11000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 12.7 +11000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 14.5 +11000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.4 +11000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 2.0 +11000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.6 +11000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.4 +11000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 2.0 +11000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.6 +11000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 15.0 +11000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 306.7 +11000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 12.4 +11000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 3.8 +11000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 4.8 +11000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 3.2 +11000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.3 +11000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.2 +11000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +11000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.3 +11000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.2 +11000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +11000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 39.2 +11000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 188.0 +11000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 96.6 +11000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 20.3 +11000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 8.9 +11000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.5 +11000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +11000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.5 +11000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +11000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 5.3 +11000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 298.1 +11000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 498.0 +11000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 16.9 +11000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 12.9 +11000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.5 +11000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.7 +11000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.3 +11000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +11000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.8 +11000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +11000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +11000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.8 +11000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +11000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 4.8 +11000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 6.7 +11000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 12.3 +11000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 3.2 +11000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +11000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +11000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +11000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +11000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +11000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.5 +11000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +11000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +11000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +11000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +11000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.5 +11000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +11000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +11000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +11000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.0 +11000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.2 +11000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +11000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.0 +11000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.2 +11000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.2 +11000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 25.7 +11000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +11000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +11000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +11000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +11000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +11000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +11000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.0 +11000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 20.4 +11000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.8 +11000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 3.2 +11000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 3.4 +11000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.8 +11000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 3.2 +11000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 3.4 +11000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 18.0 +11000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 59.5 +11000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 8.9 +11000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 10.9 +11000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.4 +11000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +11000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 2.1 +11000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 2.0 +11000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +11000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1.2 +11000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.3 +11000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 7.4 +11000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 3.3 +11000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 6.8 +11000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +11000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 3.3 +11000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 6.8 +11000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +11000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 0.9 +11000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 3.1 +11000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 5.0 +11000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.4 +11000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 2.3 +11000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +11000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 16.5 +11000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 36.1 +11000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 94.9 +11000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 6.9 +11000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 44.1 +11000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.2 +11000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 22.9 +11000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 1.7 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 2.0 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 3.0 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 0.8 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 1.8 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1.1 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 1.2 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.2 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.0 +11000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1.1 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 1.2 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.2 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.0 +11000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +11000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +11000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.1 +11000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 33.8 +11000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 6.4 +11000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 3.2 +11000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 2.7 +11000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.2 +11000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.3 +11000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +11000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.1 +11000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +11000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.2 +11000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.3 +11000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.0 +11000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.1 +11000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +11000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +11000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +11000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 0.7 +11000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 0.4 +11000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +11000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 0.4 +11000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +11000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +11000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +11000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 2.1 +11000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.2 +11000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +11000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +11000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.2 +11000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.1 +11000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 0.4 +11000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +11000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +11000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.2 +11000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.1 +11000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 0.4 +11000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +11000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +11000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.0 +11000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +11000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +11000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1455.2 +11000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 72321.1 +11000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 23.8 +11000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 2.7 +11000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 131.9 +11000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.0 +11000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 134.9 +11000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 954.0 +11000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 6774.6 +11000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 0.9 +11000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 6.3 +11000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 44.4 +11000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 11768.5 +11000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +11000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 14.3 +11000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 50.3 +11000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 8796.6 +11000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 22277.1 +11000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +11000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +11000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 150.8 +11000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 10.7 +11000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 508.0 +11000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +11000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +11000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +11000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 2.4 +11000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 0.6 +11000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.0 +11000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.1 +11000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1302.4 +11000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 14463.0 +11000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +11000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +11000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 45.8 +11000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 17.0 +11000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 819.6 +11000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +11000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +11000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 2.6 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 25.5 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 0.8 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 0.9 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.1 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 0.5 +11000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 0.5 +11000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 3978.7 +11000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 6092.7 +11000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 10278.6 +11000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 480.4 +11000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 20.6 +11000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 31.5 +11000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 53.2 +11000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 2.5 +11000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 15.9 +11000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2298.9 +11000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 1782.8 +11000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 8.4 +11000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.0 +11000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 2.4 +11000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 1.9 +11000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.0 +11000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 2.5 +11000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 8.5 +11000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 3.8 +11000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.1 +11000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 9.1 +11000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 17.9 +11000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 56.8 +11000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 1779.9 +11000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 19776.9 +11000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 6445.7 +11000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.1 +11000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 1.9 +11000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 20.7 +11000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 6.8 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 0.2 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 0.6 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 1.2 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.1 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 0.4 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +11000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.1 +11000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.1 +11000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 0.4 +11000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +11000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.1 +11000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.0 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 30.8 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 8.2 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 18.3 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 23.8 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 4.7 +11000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.0 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 58.0 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 251.1 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 639.9 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 422.8 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 6.2 +11000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 4.1 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 2.7 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 11.7 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 29.9 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 19.7 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 0.3 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 0.2 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.0 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.0 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +11000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.0 +11000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.0 +11000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.0 +11000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.0 +11000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +11000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.0 +11000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.0 +11000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +11000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +11000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +11000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 0.0 +11000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 0.0 +11000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.0 +11000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +11000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 0.0 +11000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +11000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.0 +11000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 0.0 +11000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.0 +11000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.0 +11000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 0.0 +11000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.0 +11000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 0.0 +11000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 0.0 +11000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.0 +11000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +11000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.0 +11000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.0 +11000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.0 +11000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +11000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 3.1 +11000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 77.8 +11000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 547.4 +11000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1314.5 +11000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 290.8 +11000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 416.1 +11000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +11000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +11000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +11000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +11000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +11000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +11000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 38.5 +11000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.3 +11000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 18.0 +11000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 16.0 +11000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 6.0 +11000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.1 +11000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.0 +11000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 0.4 +11000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 0.6 +11000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 12.3 +11000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 4.1 +11000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1.4 +11000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 0.6 +11000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.3 +11000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 98.5 +11000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 178.0 +11000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.1 +11000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.0 +11000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 255.1 +11000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 160.0 +11000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 15.5 +11000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 9.0 +11000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 7.9 +11000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.1 +11000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 3.7 +11000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.2 +11000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 0.6 +11000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 7.6 +11000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.1 +11000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 3.7 +11000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.2 +11000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 0.5 +11000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.3 +11000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +11000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.0 +11000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.0 +11000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.0 +11000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.0 +11000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 40.4 +11000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 37.7 +11000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 4.6 +11000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 5.0 +11000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 0.7 +11000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 4.1 +11000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 0.9 +11000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 0.4 +11000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 0.7 +11000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 3.9 +11000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 0.9 +11000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.2 +11000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.1 +11000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.2 +11000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.1 +11000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.1 +11000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.0 +11000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.2 +11000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.0 +11000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.1 +11000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.0 +11000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 5.3 +11000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 20.7 +11000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 76.4 +11000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 25.5 +11000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 6.0 +11000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 0.5 +11000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.1 +11000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 6.0 +11000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 0.5 +11000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.1 +11000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.1 +11000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 675.0 +11000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 417.5 +11000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 123.9 +11000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 23.3 +11000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 0.4 +11000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.0 +11000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +11000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 0.4 +11000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.0 +11000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +11000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1.0 +11000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 4.7 +11000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 4.2 +11000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 3.3 +11000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 3.4 +11000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +11000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +11000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +11000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +11000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +11000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +11000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +11000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +11000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +11000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 0.0 +11000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 0.0 +11000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 0.0 +11000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.0 +11000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.0 +11000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.0 +11000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.0 +11000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +11000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +11000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +11000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.0 +11000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.0 +11000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.2 +11000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.4 +11000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.2 +11000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +11000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.2 +11000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +11000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.1 +11000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +11000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +11000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 0.9 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 33.1 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 22.9 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.5 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.5 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 4.1 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 3.6 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 1.6 +11000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +11000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.3 +11000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 8.5 +11000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.8 +11000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 16.2 +11000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 10.1 +11000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 22.1 +11000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 15.5 +11000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 2.0 +11000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 8.3 +11000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 41.8 +11000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 18.7 +11000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 11.4 +11000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.0 +11000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 4.5 +11000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 8.4 +11000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 10.1 +11000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 18.2 +11000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 25.9 +11000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 24.0 +11000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 24.3 +11000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 66.5 +11000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 61.7 +11000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 21.0 +11000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 6.2 +11000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +11000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.7 +11000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 19.3 +11000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 25.0 +11000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 11.6 +11000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +11000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 3.6 +11000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 4.0 +11000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.3 +11000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 2.1 +11000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 2.8 +11000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +11000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 2.7 +11000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 3.2 +11000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 5.9 +11000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.8 +11000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +11000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +11000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +11000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 3.1 +11000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 2.6 +11000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.9 +11000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +11000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 2.5 +11000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.8 +11000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +11000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.8 +11000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.3 +11000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +11000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +11000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 6.8 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 15.9 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 8.5 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 134.7 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 41.3 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 3.0 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.7 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.4 +11000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.3 +11000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +11000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +11000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +11000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.3 +11000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 18.6 +11000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 46.4 +11000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 77.3 +11000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 31.2 +11000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 9.7 +11000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 6.5 +11000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 3.3 +11000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +11000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.3 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.7 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 11.5 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 11.7 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 18.9 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 19.2 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 28.3 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 24.6 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 14.2 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 3.3 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.8 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +11000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +11000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +11000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.2 +11000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 2.6 +11000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 11.4 +11000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 23.6 +11000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 12.6 +11000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 9.8 +11000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 44.1 +11000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 164.7 +11000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 120.4 +11000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 31.9 +11000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.0 +11000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.2 +11000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +11000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.4 +11000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.0 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.8 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 10.2 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.4 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 3.3 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 4.7 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.6 +11000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 20.7 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 12.3 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.3 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 2.1 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.5 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 2.6 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 4.3 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.4 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.5 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.6 +11000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +11000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +11000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.9 +11000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +11000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.0 +11000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 9.7 +11000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 36.5 +11000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 37.3 +11000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 23.0 +11000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.0 +11000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.3 +11000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +11000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +11000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +11000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.4 +11000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 3.3 +11000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 33.9 +11000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 56.8 +11000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 6.5 +11000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.4 +11000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +11000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 8.5 +11000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 18.1 +11000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 10.2 +11000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 5.0 +11000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.6 +11000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 8.0 +11000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.9 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.3 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.1 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 13.1 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 3.2 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 5.0 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.9 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 4.9 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.4 +11000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.7 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 15.6 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 17.3 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 34.4 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 196.6 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 101.0 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 5.2 +11000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 6.9 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.2 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 7.9 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 9.0 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 12.8 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 55.0 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 139.1 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 132.8 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 97.4 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 7.4 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 3.6 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.7 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 4.4 +11000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.2 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 8.0 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 16.0 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 8.6 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 159.7 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 564.3 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 375.5 +11000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 2.0 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.7 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 47.7 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 107.7 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 93.3 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 47.2 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 18.6 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 3.9 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 6.7 +11000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +11000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.4 +11000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 70.5 +11000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 156.2 +11000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 305.7 +11000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 120.9 +11000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 663.8 +11000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 436.4 +11000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 11.0 +11000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +11000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.5 +11000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 2.5 +11000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 6.1 +11000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 2.0 +11000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +11000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.6 +11000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +11000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 3.0 +11000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 2.9 +11000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 2.0 +11000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.4 +11000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.5 +11000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +11000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.6 +11000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.6 +11000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +11000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +11000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.4 +11000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.2 +11000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +11000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.2 +11000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.2 +11000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 8.3 +11000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 7.4 +11000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 17.8 +11000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 3.3 +11000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +11000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +11000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.1 +11000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 0.4 +11000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 6.0 +11000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 7.5 +11000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 1.8 +11000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 12.6 +11000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 4.5 +11000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.1 +11000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +11000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +11000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.0 +11000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.3 +11000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 9.5 +11000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 9.6 +11000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 3.4 +11000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 0.6 +11000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 0.7 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.2 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1.0 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 2.3 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 1.6 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 1.5 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 5.6 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 6.3 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 1.7 +11000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.0 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1.1 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.2 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.1 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.2 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 0.7 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.3 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 2.1 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 6.6 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 9.3 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 2.9 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.3 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.0 +11000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.2 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 0.9 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.3 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 1.2 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 0.5 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.1 +11000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +11000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 12.4 +11000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 38.1 +11000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 35.7 +11000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 9.2 +11000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 67.1 +11000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 258.2 +11000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +11000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 1.2 +11000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 2.1 +11000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 3.3 +11000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 5.6 +11000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.2 +11000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +11000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +11000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +11000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +11000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.0 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 0.7 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 9.8 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 4.7 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 1.1 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 1.7 +11000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 0.4 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 0.2 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 4.3 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.1 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.0 +11000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.1 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.0 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 0.2 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 0.6 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 2.8 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 0.9 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 0.5 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 0.5 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 0.1 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.0 +11000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 0.1 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 0.1 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 0.2 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 0.1 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 0.1 +11000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 0.1 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.0 +11000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +11000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +11000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 0.0 +11000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +11000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 0.0 +11000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 0.0 +11000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 0.0 +11000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 0.0 +11000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.0 +11000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 0.0 +11000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.0 +11000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.0 +11000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +11000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 0.0 +11000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 0.0 +11000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +11000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +11000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +11000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 0.0 +11000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 0.0 +11000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 0.0 +11000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 0.0 +11000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +11000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +11000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 46.7 +11000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 46.6 +11000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 35.9 +11000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 56.6 +11000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 93.6 +11000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 12.8 +11000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 47.2 +11000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 57.4 +11000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 19.6 +11000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 10.9 +11000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 5.7 +11000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +11000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +11000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +11000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +11000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 8.0 +11000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 19.3 +11000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 4.8 +11000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 3.9 +11000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 6.7 +11000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 1.9 +11000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 12.9 +11000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 14.3 +11000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 6.3 +11000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 1.6 +11000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 0.8 +11000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +11000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +11000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.3 +11000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 0.7 +11000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.1 +11000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.1 +11000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 5.1 +11000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 3.6 +11000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 22.8 +11000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 29.7 +11000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 3.4 +11000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3.1 +11000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 0.9 +11000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +11000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +11000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +11000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +11000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +11000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +11000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3.0 +11000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 16.4 +11000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 23.9 +11000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 14.8 +11000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 41.2 +11000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 29.9 +11000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 13.1 +11000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 0.7 +11000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +11000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +11000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 0.5 +11000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 4.4 +11000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 5.1 +11000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 6.3 +11000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 6.1 +11000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 0.8 +11000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 2.5 +11000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 0.7 +11000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 2.4 +11000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 1.9 +11000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.3 +11000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.1 +11000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.1 +11000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.2 +11000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.0 +11000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 0.5 +11000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 0.7 +11000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.2 +11000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1.0 +11000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1.2 +11000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.3 +11000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.0 +11000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +11000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +11000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.0 +11000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.0 +11000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +11000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.1 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.1 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.1 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +11000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +11000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 77.3 +11000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 288.2 +11000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 434.1 +11000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 96.5 +11000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 190.1 +11000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 367.2 +11000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 282.5 +11000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 472.4 +11000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 320.9 +11000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 717.9 +11000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 644.5 +11000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 0.3 +11000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 0.3 +11000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 2.8 +11000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +11000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 3.0 +11000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 1.2 +11000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 26.9 +11000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 99.3 +11000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 368.0 +11000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 24.2 +11000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 0.3 +11000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 0.2 +11000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.1 +11000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 0.6 +11000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 5.4 +11000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +11000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 130.1 +11000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 483.0 +11000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 194.0 +11000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 3.3 +11000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 4.0 +11000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 2.0 +11000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 4.3 +11000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 2.4 +11000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 0.4 +11000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 3.8 +11000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 3.2 +11000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 26.5 +11000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 43.5 +11000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 32.1 +11000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 1.3 +11000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 2.4 +11000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 0.2 +11000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 0.7 +11000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 0.4 +11000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 4.3 +11000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.2 +11000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.3 +11000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.5 +11000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.4 +11000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 1.9 +11000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.7 +11000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.1 +11000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +11000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +11000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +11000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.9 +11000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 3.7 +11000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.1 +11000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.2 +11000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.1 +11000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +11000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.1 +11000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/DE.POP b/NONROAD/NR08a/DATA/POP/DE.POP new file mode 100644 index 0000000..e2b3e76 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/DE.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 10000 DE Delaware 391,341.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +10000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +10000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +10000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 1590.7 +10000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 783.5 +10000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 804.0 +10000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 6957.8 +10000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 533.6 +10000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 914.2 +10000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.3 +10000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.5 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 18.8 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 35.6 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 280.1 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.9 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 6.9 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +10000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.6 +10000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.9 +10000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +10000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 6.9 +10000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +10000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.6 +10000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 2.2 +10000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 15.6 +10000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.7 +10000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 5.6 +10000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.0 +10000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.1 +10000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.0 +10000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.1 +10000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 465.8 +10000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.0 +10000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 43.8 +10000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 222.1 +10000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 68.4 +10000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 12.1 +10000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 16.8 +10000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 3.0 +10000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 7.8 +10000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.9 +10000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.6 +10000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.4 +10000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.9 +10000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.6 +10000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.4 +10000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 41.9 +10000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 122.6 +10000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 104.0 +10000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 52.1 +10000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 36.7 +10000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.5 +10000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +10000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.5 +10000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +10000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 18.2 +10000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 28.0 +10000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 8.1 +10000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 3.4 +10000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +10000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +10000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +10000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +10000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +10000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.1 +10000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.0 +10000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +10000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +10000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 31.9 +10000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 31.2 +10000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 11.2 +10000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 12.7 +10000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.1 +10000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.8 +10000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.4 +10000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.1 +10000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.8 +10000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.4 +10000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 13.1 +10000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 269.1 +10000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 10.9 +10000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 3.3 +10000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 4.2 +10000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 2.8 +10000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.1 +10000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.0 +10000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.7 +10000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.1 +10000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.0 +10000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.7 +10000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 34.4 +10000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 164.9 +10000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 84.8 +10000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 17.8 +10000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 7.8 +10000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.2 +10000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.2 +10000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.2 +10000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.2 +10000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 4.7 +10000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 261.5 +10000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 437.0 +10000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 14.8 +10000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 11.4 +10000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.4 +10000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.6 +10000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +10000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +10000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.6 +10000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +10000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +10000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.6 +10000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +10000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 4.2 +10000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 5.9 +10000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 10.8 +10000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 2.8 +10000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +10000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +10000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +10000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +10000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +10000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.2 +10000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +10000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +10000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +10000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +10000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.2 +10000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +10000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +10000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +10000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 4.4 +10000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +10000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +10000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 4.4 +10000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +10000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.1 +10000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 22.6 +10000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +10000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +10000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +10000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +10000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +10000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +10000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.9 +10000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 17.9 +10000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.1 +10000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 2.8 +10000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 3.0 +10000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.1 +10000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 2.8 +10000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 3.0 +10000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 15.8 +10000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 52.2 +10000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 7.9 +10000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 9.6 +10000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.4 +10000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +10000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.9 +10000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.8 +10000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +10000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 5.7 +10000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 1.6 +10000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 36.4 +10000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 16.1 +10000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 33.5 +10000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +10000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 16.1 +10000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 33.5 +10000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +10000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 4.3 +10000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 15.2 +10000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 24.6 +10000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 1.8 +10000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 11.4 +10000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +10000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 81.1 +10000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 177.3 +10000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 466.6 +10000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 34.1 +10000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 216.9 +10000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.1 +10000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 112.4 +10000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 8.6 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 9.8 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 15.0 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 4.1 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 8.7 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 5.2 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 5.9 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 6.0 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +10000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 5.2 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 5.9 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 6.0 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +10000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +10000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +10000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.4 +10000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 166.0 +10000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 31.4 +10000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 16.0 +10000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 13.5 +10000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.2 +10000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.7 +10000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +10000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +10000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +10000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.2 +10000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.7 +10000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +10000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +10000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +10000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +10000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +10000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 3.3 +10000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 2.0 +10000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +10000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 2.0 +10000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +10000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +10000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +10000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 3.0 +10000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.3 +10000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +10000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +10000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.1 +10000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.5 +10000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 1.9 +10000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +10000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +10000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.0 +10000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.4 +10000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 1.9 +10000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +10000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +10000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +10000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +10000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +10000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1879.0 +10000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 93381.6 +10000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 30.8 +10000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 111.3 +10000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 5533.0 +10000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 1.8 +10000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 174.2 +10000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1231.8 +10000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 8747.4 +10000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 37.1 +10000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 262.2 +10000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 1862.3 +10000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 15195.6 +10000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +10000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 599.6 +10000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2109.8 +10000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 11358.3 +10000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 28764.4 +10000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +10000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +10000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 6326.1 +10000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 449.2 +10000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 656.0 +10000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +10000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +10000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +10000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 99.2 +10000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 26.5 +10000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.4 +10000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.0 +10000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1681.6 +10000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 18674.8 +10000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +10000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +10000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 1919.7 +10000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 715.2 +10000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1058.2 +10000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +10000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +10000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 109.5 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1070.6 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 33.7 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 36.7 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 2.8 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 19.1 +10000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 18.9 +10000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +10000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +10000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +10000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +10000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +10000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +10000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +10000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +10000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 20.5 +10000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2968.4 +10000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 2302.0 +10000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 10.9 +10000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.7 +10000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 101.1 +10000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 78.4 +10000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +10000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 104.6 +10000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 357.4 +10000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 158.0 +10000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.4 +10000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 383.3 +10000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 750.2 +10000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 73.3 +10000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 2298.2 +10000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 25536.1 +10000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 8322.8 +10000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.5 +10000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 78.3 +10000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 869.7 +10000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 283.5 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 6.3 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 26.0 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 49.1 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.7 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 15.8 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +10000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.8 +10000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.7 +10000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 15.8 +10000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +10000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.8 +10000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.4 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1291.3 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 343.5 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 766.5 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 999.1 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 198.0 +10000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.7 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 74.9 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 324.2 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 826.3 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 546.0 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 8.0 +10000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 5.2 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 113.5 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 491.5 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1252.6 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 827.7 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 12.1 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 7.9 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.8 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +10000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.3 +10000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 3.7 +10000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 3.2 +10000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1.5 +10000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.2 +10000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1.8 +10000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.2 +10000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +10000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +10000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +10000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 19.0 +10000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 6.1 +10000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.7 +10000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.1 +10000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 8.8 +10000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.1 +10000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 2.7 +10000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 32.2 +10000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 30.0 +10000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 117.0 +10000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 42.7 +10000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 14.7 +10000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 24.8 +10000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 6.0 +10000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 2.3 +10000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 2.4 +10000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 2.3 +10000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1028.8 +10000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 2.6 +10000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 10.3 +10000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 5.8 +10000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 2.2 +10000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 10.7 +10000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 6.4 +10000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 5.7 +10000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.4 +10000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.7 +10000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +10000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 4.3 +10000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1.8 +10000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +10000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.2 +10000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.1 +10000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.3 +10000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +10000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.7 +10000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1.4 +10000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.7 +10000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.3 +10000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +10000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.4 +10000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1.9 +10000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 2.7 +10000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.3 +10000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.3 +10000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +10000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 8.8 +10000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 219.4 +10000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 1543.5 +10000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 3706.3 +10000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 819.8 +10000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1173.1 +10000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +10000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +10000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +10000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +10000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +10000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +10000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 108.6 +10000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.8 +10000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 50.7 +10000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 45.1 +10000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 16.9 +10000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.4 +10000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +10000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.0 +10000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 1.7 +10000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 34.7 +10000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 11.7 +10000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 4.0 +10000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 1.6 +10000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.8 +10000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 277.8 +10000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 501.9 +10000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.3 +10000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +10000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 719.3 +10000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 451.2 +10000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 43.7 +10000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 25.5 +10000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 22.1 +10000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.2 +10000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 10.3 +10000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.7 +10000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 1.6 +10000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 21.4 +10000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.2 +10000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 10.3 +10000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.7 +10000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 1.5 +10000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.7 +10000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +10000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.1 +10000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.1 +10000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.1 +10000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.1 +10000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 114.0 +10000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 106.4 +10000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 13.1 +10000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 14.1 +10000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 2.1 +10000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 11.5 +10000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 2.4 +10000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.1 +10000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 2.1 +10000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 11.1 +10000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 2.4 +10000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.6 +10000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.3 +10000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.5 +10000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.3 +10000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.2 +10000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +10000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.6 +10000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.1 +10000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.3 +10000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +10000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 15.1 +10000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 58.5 +10000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 215.5 +10000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 71.9 +10000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 17.0 +10000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 1.5 +10000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.3 +10000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 17.0 +10000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 1.5 +10000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.3 +10000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.4 +10000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 1903.3 +10000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1177.1 +10000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 349.2 +10000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 65.7 +10000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.1 +10000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +10000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +10000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.1 +10000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +10000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +10000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 2.8 +10000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 13.2 +10000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 12.0 +10000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 9.4 +10000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 9.7 +10000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +10000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +10000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +10000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +10000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +10000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +10000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +10000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +10000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +10000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 19.8 +10000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 126.0 +10000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 7.0 +10000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 2.3 +10000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.2 +10000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.1 +10000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 0.1 +10000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.0 +10000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.0 +10000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +10000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +10000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +10000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.0 +10000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.0 +10000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 4.1 +10000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7.4 +10000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4.9 +10000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +10000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4.8 +10000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.7 +10000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2.1 +10000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +10000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +10000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.3 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 47.3 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 32.7 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.7 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.7 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 5.8 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 5.1 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 2.3 +10000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +10000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.3 +10000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 7.5 +10000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.7 +10000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 14.2 +10000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 8.8 +10000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 19.4 +10000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 13.6 +10000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.8 +10000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 7.3 +10000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 36.7 +10000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 16.4 +10000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 10.0 +10000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.9 +10000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 3.9 +10000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 7.4 +10000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 8.9 +10000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 15.9 +10000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 22.7 +10000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 21.1 +10000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 21.3 +10000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 58.3 +10000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 54.1 +10000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 18.5 +10000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 5.5 +10000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +10000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.5 +10000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 16.9 +10000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 21.9 +10000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 10.2 +10000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +10000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 3.2 +10000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 3.5 +10000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.3 +10000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.8 +10000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 2.4 +10000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +10000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 2.4 +10000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 2.8 +10000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 5.1 +10000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.6 +10000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +10000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +10000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +10000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 2.7 +10000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 2.3 +10000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.8 +10000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +10000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 2.2 +10000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.7 +10000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +10000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.7 +10000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.3 +10000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +10000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +10000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 5.9 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 14.0 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 7.5 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 118.2 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 36.3 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 2.6 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.5 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.2 +10000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.3 +10000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +10000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +10000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +10000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.3 +10000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 16.3 +10000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 40.7 +10000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 67.8 +10000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 27.4 +10000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 8.5 +10000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 5.7 +10000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 2.9 +10000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +10000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.3 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.6 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 10.1 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 10.2 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 16.6 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 16.9 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 24.8 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 21.6 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 12.4 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 2.9 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.6 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +10000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +10000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +10000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.1 +10000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 2.2 +10000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 10.0 +10000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 20.7 +10000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 11.0 +10000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 8.6 +10000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 38.7 +10000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 144.5 +10000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 105.6 +10000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 28.0 +10000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.9 +10000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.0 +10000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +10000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.4 +10000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.9 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.6 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 8.9 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.3 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 2.9 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 4.1 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.5 +10000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 18.1 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 10.8 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.0 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.8 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.3 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 2.3 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 3.8 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.2 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.4 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.5 +10000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +10000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +10000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.7 +10000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +10000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.9 +10000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 8.5 +10000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 32.0 +10000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 32.7 +10000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 20.2 +10000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.9 +10000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +10000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +10000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +10000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +10000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.4 +10000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 2.9 +10000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 29.7 +10000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 49.8 +10000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 5.7 +10000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.3 +10000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +10000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 7.5 +10000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 15.9 +10000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 9.0 +10000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 4.4 +10000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.4 +10000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 7.0 +10000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.7 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.3 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.0 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 11.5 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 2.8 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 4.3 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.6 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 4.3 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.3 +10000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.6 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 13.7 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 15.2 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 30.2 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 172.5 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 88.6 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 4.6 +10000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 6.0 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 6.9 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 7.9 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 11.2 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 48.3 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 122.0 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 116.5 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 85.5 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 6.5 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 3.1 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.7 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 3.9 +10000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 7.0 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 14.0 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 7.5 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 140.2 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 495.2 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 329.5 +10000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.8 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.5 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 41.8 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 94.5 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 81.8 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 41.4 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 16.3 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 3.4 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 5.9 +10000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +10000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.4 +10000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 61.8 +10000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 137.1 +10000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 268.2 +10000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 106.1 +10000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 582.5 +10000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 382.9 +10000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 9.6 +10000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +10000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.3 +10000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 2.2 +10000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 5.3 +10000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.7 +10000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +10000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.4 +10000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +10000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 2.6 +10000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 2.5 +10000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.8 +10000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.1 +10000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.5 +10000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +10000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.4 +10000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.5 +10000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +10000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +10000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.4 +10000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.1 +10000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +10000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.1 +10000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.0 +10000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 7.3 +10000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 6.5 +10000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 15.7 +10000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 2.9 +10000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +10000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +10000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.3 +10000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 2.1 +10000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 29.6 +10000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 36.8 +10000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 8.7 +10000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 61.8 +10000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 22.0 +10000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.3 +10000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +10000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +10000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +10000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.3 +10000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 46.6 +10000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 47.0 +10000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 16.9 +10000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 2.7 +10000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 3.5 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.8 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 4.8 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 11.5 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 7.8 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 7.5 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 27.7 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 31.1 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 8.4 +10000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.1 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 5.5 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.0 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.7 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.2 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 3.7 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 1.3 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 10.3 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 32.2 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 45.8 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 14.3 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 1.5 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.2 +10000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.9 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 4.4 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 1.3 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 6.1 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 2.3 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.3 +10000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +10000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 17.7 +10000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 54.4 +10000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 51.0 +10000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 13.1 +10000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 95.9 +10000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 368.7 +10000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +10000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 5.9 +10000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 10.2 +10000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 16.4 +10000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 27.4 +10000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.8 +10000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.0 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +10000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +10000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +10000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +10000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.1 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 29.6 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 411.1 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 199.2 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 44.5 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 73.1 +10000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 15.6 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 7.2 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 180.5 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.1 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 1.8 +10000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 2.7 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.7 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 7.1 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 26.5 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 117.3 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 37.1 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 22.4 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 19.0 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.3 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.7 +10000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.2 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 5.5 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 10.1 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 4.9 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 5.2 +10000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.3 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.0 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.9 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.2 +10000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +10000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.1 +10000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.5 +10000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +10000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 113.3 +10000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 304.6 +10000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 174.1 +10000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 275.6 +10000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 242.9 +10000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 404.7 +10000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 348.9 +10000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 180.5 +10000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +10000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 19.0 +10000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 174.6 +10000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 208.2 +10000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 10.8 +10000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.2 +10000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 4.5 +10000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1.7 +10000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 1.4 +10000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +10000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.4 +10000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 2.3 +10000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 1.0 +10000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.6 +10000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1.7 +10000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 10.6 +10000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 20.5 +10000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 22.3 +10000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 6.0 +10000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +10000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +10000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +10000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 12.8 +10000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 60.7 +10000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 12.0 +10000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.5 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.4 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1.4 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.8 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.5 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 3.6 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 4.5 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 11.3 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 11.4 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 4.8 +10000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +10000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +10000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +10000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.9 +10000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 2.1 +10000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.8 +10000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 3.2 +10000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 15.3 +10000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 8.0 +10000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 2.3 +10000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.2 +10000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +10000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 131.6 +10000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 131.4 +10000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 101.3 +10000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 159.5 +10000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 264.0 +10000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 36.1 +10000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 133.1 +10000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 161.9 +10000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 55.3 +10000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 30.7 +10000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 16.0 +10000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +10000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +10000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +10000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +10000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +10000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +10000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 22.7 +10000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 54.5 +10000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 13.7 +10000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 10.9 +10000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 18.9 +10000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 5.4 +10000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 36.3 +10000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 40.4 +10000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 17.8 +10000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 4.5 +10000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 2.3 +10000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +10000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +10000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +10000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +10000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +10000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.8 +10000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 1.9 +10000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.3 +10000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.4 +10000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 14.5 +10000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 10.0 +10000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 64.2 +10000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 83.6 +10000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 9.6 +10000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 8.6 +10000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 2.5 +10000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +10000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +10000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +10000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +10000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +10000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +10000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 8.4 +10000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 46.4 +10000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 67.5 +10000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 41.9 +10000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 116.0 +10000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 84.3 +10000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 37.0 +10000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 1.9 +10000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +10000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +10000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 1.5 +10000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 12.5 +10000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 14.3 +10000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 17.9 +10000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 17.1 +10000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 2.1 +10000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 7.2 +10000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 2.0 +10000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 6.7 +10000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 5.4 +10000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.8 +10000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.4 +10000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.2 +10000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.4 +10000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.1 +10000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 1.3 +10000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 1.9 +10000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.6 +10000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 2.9 +10000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 3.3 +10000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.9 +10000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.1 +10000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +10000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +10000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.8 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 5.6 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 8.0 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.7 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.3 +10000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 0.1 +10000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 0.1 +10000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 0.2 +10000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 0.6 +10000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 0.2 +10000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 0.2 +10000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.0 +10000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +10000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.2 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.1 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.2 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2.2 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.1 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.6 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.0 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.4 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.2 +10000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +10000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1287.5 +10000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 4802.6 +10000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 7233.4 +10000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1608.2 +10000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 3167.5 +10000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 6118.5 +10000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 4706.7 +10000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 7871.5 +10000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 5347.1 +10000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 11962.0 +10000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 10737.9 +10000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 5.1 +10000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 4.9 +10000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 47.2 +10000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +10000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 50.1 +10000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 20.2 +10000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 447.5 +10000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1655.2 +10000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 6131.8 +10000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 403.4 +10000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 5.6 +10000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 4.0 +10000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.4 +10000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 10.3 +10000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 90.4 +10000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +10000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 2168.0 +10000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 8046.9 +10000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 3231.7 +10000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 54.5 +10000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 66.3 +10000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 32.6 +10000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 72.0 +10000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 39.4 +10000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 7.3 +10000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 63.9 +10000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 53.8 +10000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 440.8 +10000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 724.8 +10000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 534.6 +10000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 21.1 +10000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 40.0 +10000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 3.3 +10000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 11.4 +10000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 7.0 +10000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 71.4 +10000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.1 +10000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.2 +10000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.3 +10000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.3 +10000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 1.3 +10000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.5 +10000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.1 +10000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +10000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +10000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +10000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.7 +10000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 2.7 +10000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.0 +10000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.1 +10000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +10000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +10000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +10000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/FL.POP b/NONROAD/NR08a/DATA/POP/FL.POP new file mode 100644 index 0000000..9607632 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/FL.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 12000 FL Florida 8,131,410.1 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +12000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +12000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +12000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 25495.2 +12000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 12557.3 +12000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 12885.7 +12000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 111516.8 +12000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 8701.3 +12000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 18918.9 +12000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 5.6 +12000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 3.2 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 9.6 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 388.5 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 735.8 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 5796.1 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 59.3 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.4 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 143.0 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.2 +12000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 54.1 +12000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 59.3 +12000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.4 +12000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 143.0 +12000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.2 +12000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 54.1 +12000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 71.5 +12000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 497.9 +12000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 23.1 +12000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 180.4 +12000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 30.4 +12000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 33.6 +12000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 30.4 +12000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 33.6 +12000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 14897.3 +12000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 32.6 +12000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 1399.9 +12000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 7103.1 +12000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 2186.7 +12000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 387.6 +12000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 538.4 +12000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 96.2 +12000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 250.3 +12000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 29.6 +12000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 20.3 +12000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 13.9 +12000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 29.6 +12000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 20.3 +12000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 13.9 +12000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 1340.8 +12000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 3921.6 +12000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 3325.7 +12000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 1665.7 +12000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 1173.5 +12000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 47.7 +12000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 4.3 +12000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 47.7 +12000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 4.3 +12000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 582.3 +12000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 896.8 +12000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 259.3 +12000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 109.3 +12000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 10.8 +12000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 3.9 +12000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 10.8 +12000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 3.9 +12000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 3.6 +12000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 65.8 +12000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 65.5 +12000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 2.5 +12000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 2.8 +12000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 1019.5 +12000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 998.0 +12000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 356.6 +12000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 406.6 +12000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 67.7 +12000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 57.2 +12000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 45.0 +12000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 67.7 +12000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 57.2 +12000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 45.0 +12000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 420.5 +12000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 8607.4 +12000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 348.1 +12000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 106.4 +12000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 135.1 +12000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 88.7 +12000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 35.7 +12000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 32.5 +12000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 53.9 +12000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 35.7 +12000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 32.5 +12000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 53.9 +12000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 1100.7 +12000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 5274.7 +12000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 2712.1 +12000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 568.7 +12000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 250.0 +12000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 68.8 +12000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 37.5 +12000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 68.8 +12000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 37.5 +12000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 149.2 +12000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 8365.0 +12000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 13975.2 +12000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 474.2 +12000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 363.3 +12000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 14.2 +12000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 20.0 +12000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 7.1 +12000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.3 +12000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 49.8 +12000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 8.0 +12000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.3 +12000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 49.8 +12000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 8.0 +12000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 134.6 +12000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 189.2 +12000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 345.1 +12000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 88.5 +12000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 11.0 +12000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 11.0 +12000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 3.2 +12000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 10.7 +12000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +12000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 70.6 +12000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.4 +12000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 8.3 +12000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 10.7 +12000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +12000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 70.6 +12000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.4 +12000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 8.3 +12000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 3.0 +12000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 141.1 +12000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 4.6 +12000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 3.0 +12000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 141.1 +12000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 4.6 +12000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 34.7 +12000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 721.7 +12000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 2.7 +12000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 12.6 +12000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.5 +12000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 2.7 +12000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 12.6 +12000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.5 +12000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 28.4 +12000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 573.4 +12000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 162.7 +12000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 89.9 +12000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 96.0 +12000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 162.7 +12000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 89.9 +12000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 96.0 +12000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 505.7 +12000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 1668.5 +12000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 251.2 +12000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 306.7 +12000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 11.9 +12000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 1.9 +12000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 59.8 +12000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 57.1 +12000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 2.7 +12000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 58.0 +12000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 16.1 +12000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 372.3 +12000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 164.6 +12000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 342.9 +12000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 7.6 +12000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 164.6 +12000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 342.9 +12000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 7.6 +12000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 43.6 +12000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 155.8 +12000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 251.1 +12000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 18.3 +12000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 116.7 +12000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.6 +12000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 829.2 +12000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1812.4 +12000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 4770.1 +12000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 348.4 +12000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 2216.9 +12000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 10.9 +12000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1148.6 +12000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 87.5 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 100.2 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 153.3 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 41.5 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 88.8 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 53.3 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 60.3 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 61.1 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.2 +12000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 53.3 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 60.3 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 61.1 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.2 +12000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +12000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.5 +12000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 4.1 +12000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1697.3 +12000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 320.7 +12000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 163.3 +12000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 138.0 +12000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 12.3 +12000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 17.1 +12000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.8 +12000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.5 +12000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +12000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 12.3 +12000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 17.1 +12000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.1 +12000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.5 +12000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +12000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.6 +12000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.9 +12000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 33.7 +12000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 20.5 +12000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.8 +12000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 20.5 +12000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.8 +12000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 1.3 +12000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 2.0 +12000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 61.8 +12000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 7.0 +12000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 2.4 +12000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +12000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 10.9 +12000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 5.0 +12000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 19.6 +12000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +12000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +12000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 10.3 +12000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.9 +12000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 19.3 +12000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +12000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.6 +12000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.1 +12000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +12000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +12000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 40696.0 +12000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 2022533.8 +12000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 666.8 +12000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 2589.9 +12000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 128713.4 +12000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 42.5 +12000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 3773.8 +12000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 26678.6 +12000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 189457.4 +12000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 862.9 +12000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 6100.4 +12000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 43321.8 +12000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 329118.0 +12000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +12000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 13948.9 +12000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 49079.5 +12000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 246006.3 +12000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 623002.8 +12000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +12000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +12000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 147164.1 +12000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 10450.7 +12000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 14207.3 +12000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +12000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +12000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +12000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 2308.4 +12000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 617.5 +12000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 32.7 +12000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 70.8 +12000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 36421.7 +12000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 404472.6 +12000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +12000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +12000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 44657.5 +12000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 16637.1 +12000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 22919.6 +12000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +12000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +12000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 2546.6 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 24905.9 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 784.5 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 853.5 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 65.0 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 443.2 +12000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 439.6 +12000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +12000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +12000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +12000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +12000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +12000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +12000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +12000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +12000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 444.3 +12000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 64291.3 +12000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 49857.5 +12000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 235.8 +12000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 16.3 +12000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 2351.8 +12000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 1823.9 +12000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 8.7 +12000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 2433.7 +12000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 8313.0 +12000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 3675.6 +12000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 55.2 +12000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 8917.6 +12000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 17452.9 +12000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1587.6 +12000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 49776.2 +12000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 553080.7 +12000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 180261.7 +12000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 58.1 +12000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 1820.9 +12000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 20232.1 +12000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 6594.1 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 3.0 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 146.9 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 605.6 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 1141.3 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 86.1 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 367.6 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 3.4 +12000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 88.0 +12000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 86.1 +12000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 367.6 +12000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 3.4 +12000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 88.0 +12000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 10.4 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 30039.5 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 7990.5 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 17831.5 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 23242.3 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 4605.2 +12000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 39.8 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1621.6 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 7022.1 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 17896.2 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 11825.1 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 173.2 +12000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 113.5 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 2640.4 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 11433.8 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 29139.6 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 19254.3 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 282.0 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 184.8 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 18.0 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 6.2 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 2.2 +12000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 7.3 +12000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 19.8 +12000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 17.1 +12000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 8.2 +12000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.8 +12000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 9.8 +12000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.1 +12000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +12000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +12000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.2 +12000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 101.4 +12000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 32.5 +12000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 3.7 +12000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.7 +12000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 47.0 +12000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.7 +12000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 14.4 +12000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 172.1 +12000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 160.5 +12000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 624.9 +12000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 227.9 +12000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 78.3 +12000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 132.6 +12000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 32.3 +12000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 12.1 +12000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 12.7 +12000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 12.5 +12000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 5495.6 +12000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 13.7 +12000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 54.8 +12000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 31.0 +12000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 11.8 +12000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 57.4 +12000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 34.1 +12000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 30.2 +12000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 2.4 +12000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 3.9 +12000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.6 +12000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 22.8 +12000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 9.5 +12000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.6 +12000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.0 +12000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 5.8 +12000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 1.6 +12000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +12000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 3.6 +12000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 7.7 +12000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 3.6 +12000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 1.6 +12000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +12000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 1.9 +12000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 10.0 +12000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 14.3 +12000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 1.4 +12000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 1.6 +12000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.3 +12000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 285.3 +12000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 7081.2 +12000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 49817.1 +12000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 119625.9 +12000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 26460.6 +12000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 37862.9 +12000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +12000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +12000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +12000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +12000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +12000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +12000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 3506.4 +12000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 26.3 +12000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 1635.5 +12000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 1454.5 +12000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 545.6 +12000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 12.6 +12000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 2.1 +12000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 33.2 +12000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 56.1 +12000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 1120.5 +12000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 377.1 +12000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 130.2 +12000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 53.2 +12000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 26.9 +12000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 8966.8 +12000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 16200.6 +12000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 9.9 +12000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 2.0 +12000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 23217.1 +12000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 14562.2 +12000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 1410.5 +12000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 821.9 +12000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 714.6 +12000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 6.6 +12000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 332.5 +12000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 22.1 +12000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 51.3 +12000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 691.2 +12000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 6.6 +12000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 332.2 +12000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 22.1 +12000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 48.0 +12000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 23.4 +12000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.3 +12000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 3.2 +12000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 3.7 +12000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 3.9 +12000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 4.2 +12000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 3679.6 +12000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 3434.7 +12000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 421.3 +12000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 456.6 +12000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 66.9 +12000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 369.8 +12000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 78.7 +12000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 36.9 +12000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 66.9 +12000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 359.2 +12000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 78.7 +12000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 19.7 +12000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 10.6 +12000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 17.2 +12000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 10.9 +12000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 6.5 +12000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 1.8 +12000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 19.1 +12000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 3.2 +12000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 8.2 +12000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 2.7 +12000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 486.5 +12000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 1886.6 +12000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 6954.3 +12000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 2319.9 +12000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 547.6 +12000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 48.6 +12000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 11.0 +12000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 547.6 +12000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 48.6 +12000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 11.0 +12000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 11.5 +12000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 61431.4 +12000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 37992.1 +12000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 11270.8 +12000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 2119.5 +12000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 35.9 +12000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 2.7 +12000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.1 +12000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 35.9 +12000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 2.7 +12000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.1 +12000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 89.6 +12000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 426.4 +12000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 386.2 +12000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 304.3 +12000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 311.5 +12000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 4.7 +12000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 2.0 +12000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 4.6 +12000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.1 +12000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 4.7 +12000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 2.0 +12000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 4.6 +12000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.1 +12000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.1 +12000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 955.6 +12000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 6067.5 +12000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 335.6 +12000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 108.7 +12000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 10.6 +12000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 4.3 +12000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 76.1 +12000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 8.7 +12000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 30.8 +12000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 1.6 +12000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.8 +12000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.6 +12000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.9 +12000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 8.2 +12000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 24.3 +12000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.8 +12000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.6 +12000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.9 +12000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 8.2 +12000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 24.3 +12000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 10.6 +12000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 19.5 +12000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 12.9 +12000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +12000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 12.7 +12000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.7 +12000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 5.4 +12000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.2 +12000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.5 +12000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 26.9 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 978.2 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 676.4 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 2.3 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 14.4 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 14.2 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 119.8 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 105.4 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 46.6 +12000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 1.7 +12000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 9.8 +12000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 239.4 +12000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 22.2 +12000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 454.4 +12000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 282.9 +12000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 619.7 +12000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 435.1 +12000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 56.0 +12000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 234.3 +12000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 1173.0 +12000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 524.1 +12000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 318.8 +12000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 29.4 +12000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 126.3 +12000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 237.1 +12000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 283.9 +12000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 509.4 +12000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 726.6 +12000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 673.4 +12000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 681.9 +12000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 1866.1 +12000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 1730.3 +12000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 590.7 +12000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 175.2 +12000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.5 +12000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 47.0 +12000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 541.0 +12000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 700.5 +12000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 325.0 +12000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.4 +12000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 101.2 +12000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 113.4 +12000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 8.7 +12000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 58.4 +12000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 77.8 +12000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +12000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 76.3 +12000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 90.0 +12000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 164.2 +12000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 50.9 +12000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 2.3 +12000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 1.8 +12000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 5.8 +12000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 87.4 +12000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 73.2 +12000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 25.3 +12000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 1.3 +12000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 69.4 +12000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 21.2 +12000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 1.0 +12000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 21.3 +12000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 9.4 +12000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 1.9 +12000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.2 +12000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 1.5 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 189.9 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 447.0 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 238.7 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 3780.5 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 1159.8 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 2.0 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 82.9 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 48.1 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 38.3 +12000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 9.4 +12000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +12000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.6 +12000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 6.9 +12000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 9.6 +12000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 522.7 +12000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 1303.2 +12000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 2168.0 +12000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 875.7 +12000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 272.0 +12000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 181.7 +12000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 92.3 +12000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 8.1 +12000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 1.0 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 5.4 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 8.5 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 18.8 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 322.0 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 327.6 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 530.9 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 539.9 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 793.7 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 690.0 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 397.6 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 93.0 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 50.9 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 1.0 +12000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 1.8 +12000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 6.4 +12000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 34.8 +12000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 71.8 +12000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 319.9 +12000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 662.5 +12000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 353.3 +12000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 274.0 +12000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 1236.8 +12000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 4621.3 +12000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 3378.6 +12000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 895.0 +12000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 28.4 +12000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 33.0 +12000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 1.1 +12000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 12.5 +12000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.5 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 29.1 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 49.7 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 285.1 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 10.2 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 91.5 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 131.6 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 16.1 +12000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.4 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 579.7 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 345.5 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 64.1 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 58.4 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 42.5 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 72.9 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 121.8 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 38.6 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 13.7 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 17.2 +12000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 3.5 +12000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +12000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 52.8 +12000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.7 +12000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 28.0 +12000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 272.0 +12000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 1024.0 +12000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 1047.4 +12000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 645.1 +12000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 27.8 +12000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 7.9 +12000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.3 +12000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +12000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 1.5 +12000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 12.0 +12000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 93.1 +12000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 951.3 +12000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 1593.3 +12000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 182.2 +12000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 11.0 +12000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 2.5 +12000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 239.2 +12000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 507.6 +12000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 287.3 +12000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 139.5 +12000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 44.2 +12000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 223.5 +12000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 54.4 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 6.2 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 8.5 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 32.2 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 366.9 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 88.7 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 139.0 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 52.4 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 136.4 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 10.4 +12000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.7 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 1.5 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 18.7 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 437.1 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 486.6 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 964.4 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 5518.5 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 2834.8 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 146.9 +12000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 193.4 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 4.3 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 221.1 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 253.9 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 359.0 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 1543.5 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 3903.2 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 3726.2 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 2733.8 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 206.6 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 100.6 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 20.9 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 123.3 +12000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 4.4 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.5 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 224.7 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 449.2 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 240.0 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 4482.5 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 15836.5 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 10537.2 +12000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 57.4 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 46.4 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 1337.3 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 3022.3 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 2617.3 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 1325.3 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 522.8 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 108.2 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 188.1 +12000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.8 +12000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 12.0 +12000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 1977.4 +12000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 4384.5 +12000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 8579.4 +12000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 3392.6 +12000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 18629.3 +12000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 12246.8 +12000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 308.4 +12000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.1 +12000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 41.7 +12000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 71.2 +12000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 170.2 +12000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 55.7 +12000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 5.3 +12000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 44.1 +12000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 1.0 +12000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 83.9 +12000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 80.2 +12000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 57.4 +12000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 66.5 +12000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 14.5 +12000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 6.9 +12000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 45.3 +12000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 16.4 +12000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 2.7 +12000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 1.2 +12000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 12.2 +12000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 34.9 +12000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 3.2 +12000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 33.9 +12000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 33.5 +12000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 232.2 +12000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 207.3 +12000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 500.6 +12000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 91.3 +12000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.4 +12000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 6.0 +12000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 3.3 +12000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 21.6 +12000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 302.4 +12000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 375.7 +12000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 88.8 +12000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 631.4 +12000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 224.4 +12000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.7 +12000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.4 +12000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +12000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.1 +12000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 12.9 +12000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 476.7 +12000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 480.3 +12000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 172.5 +12000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 28.1 +12000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 35.8 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 8.0 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.4 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 48.9 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 117.6 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 79.4 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 76.9 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 283.0 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 317.8 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 85.5 +12000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.4 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 55.9 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 10.6 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 6.8 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 11.9 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 37.5 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 13.6 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 105.8 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 329.4 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 468.5 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 146.2 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 14.9 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.5 +12000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 8.9 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 44.8 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 13.5 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 62.2 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 23.7 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 3.3 +12000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +12000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 366.1 +12000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 1125.5 +12000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 1055.3 +12000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 270.6 +12000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1983.6 +12000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 7629.4 +12000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +12000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +12000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +12000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +12000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +12000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +12000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 60.3 +12000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 104.7 +12000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 168.2 +12000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 280.0 +12000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 8.5 +12000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 24.3 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 5.9 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +12000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +12000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +12000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +12000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 24.6 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 689.1 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 9562.7 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 4635.1 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 1035.4 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 1700.2 +12000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 363.5 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 2.8 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 168.2 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 4198.5 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 72.9 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 42.0 +12000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 64.0 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.9 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 15.6 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 165.6 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 617.6 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 2729.0 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 864.1 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 521.7 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 442.5 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 100.2 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 16.4 +12000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 2.0 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 98.2 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 127.7 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 235.3 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 114.3 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 2.1 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 120.3 +12000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 100.6 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 2.8 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 24.3 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.5 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 20.3 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 5.5 +12000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.9 +12000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.7 +12000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 2.7 +12000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +12000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 605.0 +12000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 1627.1 +12000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 929.7 +12000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 1472.1 +12000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1297.5 +12000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 2161.9 +12000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 1863.8 +12000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 964.4 +12000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +12000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 101.7 +12000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 932.4 +12000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1111.9 +12000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 57.4 +12000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.1 +12000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 24.2 +12000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 8.9 +12000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 7.6 +12000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.4 +12000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 2.3 +12000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 12.1 +12000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 5.5 +12000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 3.4 +12000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 9.3 +12000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 56.8 +12000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 109.6 +12000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 119.1 +12000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 32.3 +12000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.2 +12000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +12000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +12000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 68.6 +12000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 324.4 +12000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 64.1 +12000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 2.9 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.2 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 2.1 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 7.7 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 4.1 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 2.5 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 19.4 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 24.2 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 60.4 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 61.1 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 25.6 +12000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +12000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +12000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +12000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 4.9 +12000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 11.1 +12000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 4.4 +12000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 17.3 +12000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 81.8 +12000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 42.9 +12000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 12.2 +12000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.9 +12000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +12000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 4248.9 +12000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 4242.4 +12000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 3270.0 +12000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 5148.8 +12000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 8522.4 +12000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 1164.0 +12000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 4294.9 +12000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 5227.0 +12000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 1784.1 +12000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 992.0 +12000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 515.2 +12000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +12000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +12000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +12000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +12000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +12000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.9 +12000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 731.5 +12000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 1758.6 +12000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 441.2 +12000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 350.9 +12000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 610.4 +12000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 173.0 +12000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 1171.0 +12000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 1303.3 +12000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 574.7 +12000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 144.0 +12000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 73.0 +12000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +12000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +12000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +12000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +12000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +12000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 24.9 +12000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 60.8 +12000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 8.2 +12000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 12.6 +12000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 467.2 +12000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 323.4 +12000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 2072.8 +12000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 2699.8 +12000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 309.6 +12000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 277.9 +12000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 79.4 +12000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +12000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +12000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +12000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +12000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +12000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +12000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 270.1 +12000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 1496.4 +12000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 2178.3 +12000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 1351.0 +12000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 3744.9 +12000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 2720.0 +12000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 1194.3 +12000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 62.2 +12000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 1.4 +12000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +12000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 47.3 +12000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 402.5 +12000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 462.0 +12000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 576.9 +12000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 551.4 +12000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 69.1 +12000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 231.9 +12000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 64.9 +12000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 215.4 +12000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 174.3 +12000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 26.7 +12000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 12.4 +12000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 6.3 +12000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 14.2 +12000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 4.5 +12000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 41.5 +12000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 60.2 +12000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 19.0 +12000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 92.1 +12000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 106.4 +12000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 28.7 +12000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 3.7 +12000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.9 +12000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +12000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.4 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.6 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.8 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 38.6 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 267.9 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 383.9 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 33.2 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 13.6 +12000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.3 +12000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 95.4 +12000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.3 +12000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 1.2 +12000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 3.5 +12000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 4.8 +12000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 99.8 +12000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 181.8 +12000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 536.8 +12000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 180.2 +12000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 210.5 +12000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 22.3 +12000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 1.3 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +12000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.6 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.3 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 2.8 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.4 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 5.8 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 3.0 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 4.3 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 2.7 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 1.1 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.5 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.6 +12000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +12000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 20616.3 +12000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 76902.7 +12000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 115827.1 +12000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 25752.2 +12000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 50719.9 +12000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 97974.4 +12000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 75367.2 +12000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 126043.8 +12000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 85622.2 +12000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 191545.4 +12000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 171943.7 +12000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 81.9 +12000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 79.2 +12000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 755.2 +12000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 1.4 +12000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 801.9 +12000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 323.3 +12000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 7165.8 +12000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 26503.6 +12000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 98187.9 +12000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 6459.9 +12000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 90.1 +12000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 64.5 +12000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 38.2 +12000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 164.7 +12000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 1448.0 +12000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +12000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 34715.6 +12000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 128853.9 +12000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 51747.9 +12000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 873.0 +12000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 1062.3 +12000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 521.3 +12000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 1153.4 +12000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 631.0 +12000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 116.6 +12000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 1022.5 +12000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 861.1 +12000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 7058.0 +12000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 11606.1 +12000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 8561.1 +12000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 337.8 +12000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 640.5 +12000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 52.2 +12000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 183.1 +12000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 112.2 +12000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 1143.0 +12000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +12000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.9 +12000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.0 +12000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.4 +12000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 5.0 +12000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.8 +12000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 14.3 +12000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 13.3 +12000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 56.3 +12000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 20.7 +12000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.5 +12000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.9 +12000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +12000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +12000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +12000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.9 +12000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 27.4 +12000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 112.7 +12000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.0 +12000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.2 +12000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +12000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +12000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +12000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/GA.POP b/NONROAD/NR08a/DATA/POP/GA.POP new file mode 100644 index 0000000..43b5959 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/GA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 13000 GA Georgia 3,452,274.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +13000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +13000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +13000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 28200.6 +13000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 13889.9 +13000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 14253.0 +13000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 123350.5 +13000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 4135.7 +13000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 9685.3 +13000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.9 +13000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.6 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 4.9 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 198.9 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 376.7 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2967.3 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 30.3 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 73.2 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +13000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.7 +13000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 30.3 +13000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +13000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 73.2 +13000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +13000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.7 +13000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 28.3 +13000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 197.3 +13000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 9.1 +13000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 71.5 +13000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 12.1 +13000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 13.3 +13000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 12.1 +13000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 13.3 +13000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 5904.1 +13000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 12.9 +13000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 554.8 +13000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2815.1 +13000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 866.6 +13000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 153.6 +13000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 213.4 +13000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 38.1 +13000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 99.2 +13000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 11.7 +13000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 8.0 +13000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 5.5 +13000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 11.7 +13000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 8.0 +13000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 5.5 +13000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 531.4 +13000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1554.2 +13000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1318.0 +13000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 660.1 +13000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 465.1 +13000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 18.9 +13000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.7 +13000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 18.9 +13000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.7 +13000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 230.8 +13000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 355.4 +13000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 102.8 +13000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 43.3 +13000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.3 +13000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +13000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.3 +13000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +13000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.4 +13000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 26.1 +13000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 26.0 +13000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 1.0 +13000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 1.1 +13000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 404.0 +13000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 395.5 +13000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 141.3 +13000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 161.2 +13000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 26.8 +13000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 22.7 +13000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 17.8 +13000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 26.8 +13000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 22.7 +13000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 17.8 +13000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 166.7 +13000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 3411.3 +13000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 138.0 +13000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 42.2 +13000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 53.5 +13000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 35.2 +13000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 14.2 +13000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.9 +13000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.4 +13000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 14.2 +13000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.9 +13000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.4 +13000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 436.2 +13000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 2090.5 +13000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 1074.8 +13000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 225.4 +13000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 99.1 +13000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 27.3 +13000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.8 +13000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 27.3 +13000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.8 +13000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 59.1 +13000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 3315.2 +13000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 5538.6 +13000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 187.9 +13000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 144.0 +13000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 5.6 +13000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 7.9 +13000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.8 +13000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +13000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 19.7 +13000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 3.2 +13000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +13000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 19.7 +13000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 3.2 +13000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 53.3 +13000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 75.0 +13000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 136.8 +13000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 35.1 +13000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.4 +13000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.4 +13000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.3 +13000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.2 +13000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +13000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 28.0 +13000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +13000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.3 +13000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.2 +13000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +13000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 28.0 +13000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +13000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.3 +13000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +13000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 55.9 +13000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.8 +13000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +13000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 55.9 +13000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.8 +13000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 13.7 +13000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 286.0 +13000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.1 +13000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 5.0 +13000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +13000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.1 +13000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 5.0 +13000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +13000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 11.3 +13000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 227.2 +13000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 64.5 +13000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 35.6 +13000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 38.1 +13000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 64.5 +13000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 35.6 +13000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 38.1 +13000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 200.4 +13000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 661.2 +13000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 99.5 +13000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 121.6 +13000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 4.7 +13000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.8 +13000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 23.7 +13000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 22.6 +13000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 1.1 +13000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 62.0 +13000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 17.2 +13000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 397.9 +13000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 175.9 +13000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 366.5 +13000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 8.1 +13000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 175.9 +13000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 366.5 +13000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 8.1 +13000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 46.6 +13000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 166.5 +13000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 268.3 +13000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 19.6 +13000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 124.7 +13000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.6 +13000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 886.1 +13000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1936.9 +13000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 5097.8 +13000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 372.3 +13000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 2369.2 +13000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 11.6 +13000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1227.5 +13000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 93.5 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 107.1 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 163.8 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 44.3 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 94.9 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 57.0 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 64.4 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 65.3 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.7 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.3 +13000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 57.0 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 64.4 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 65.3 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.7 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.3 +13000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +13000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.6 +13000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 4.4 +13000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1813.9 +13000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 342.7 +13000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 174.5 +13000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 147.5 +13000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 13.2 +13000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 18.3 +13000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.9 +13000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 7.0 +13000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +13000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 13.2 +13000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 18.3 +13000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.3 +13000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 7.0 +13000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +13000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.7 +13000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.9 +13000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 36.0 +13000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 21.9 +13000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.8 +13000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 21.9 +13000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.8 +13000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.7 +13000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.0 +13000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 31.6 +13000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 3.6 +13000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.2 +13000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +13000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 11.6 +13000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 5.3 +13000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 20.9 +13000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +13000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +13000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 11.0 +13000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 4.2 +13000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 20.7 +13000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +13000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.7 +13000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.2 +13000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.3 +13000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +13000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 18612.1 +13000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 924998.4 +13000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 305.0 +13000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 1084.6 +13000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 53903.3 +13000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 17.8 +13000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1725.9 +13000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 12201.4 +13000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 86647.6 +13000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 361.4 +13000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2554.8 +13000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 18142.5 +13000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 150520.9 +13000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +13000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 5841.6 +13000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 20553.8 +13000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 112510.1 +13000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 284928.1 +13000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +13000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +13000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 61630.3 +13000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 4376.6 +13000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 6497.6 +13000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +13000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +13000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +13000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 966.7 +13000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 258.6 +13000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 13.7 +13000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 29.7 +13000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 16657.3 +13000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 184984.1 +13000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +13000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +13000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 18702.0 +13000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 6967.4 +13000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 10482.2 +13000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +13000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +13000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 1066.5 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 10430.2 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 328.5 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 357.4 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 27.2 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 185.6 +13000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 184.1 +13000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 254.9 +13000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 390.4 +13000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 658.6 +13000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 30.8 +13000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 9.8 +13000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 14.9 +13000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 25.2 +13000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 1.2 +13000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 203.2 +13000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 29403.4 +13000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 22802.2 +13000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 107.9 +13000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 6.8 +13000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 984.9 +13000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 763.8 +13000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.6 +13000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 1019.2 +13000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 3481.4 +13000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1539.3 +13000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 23.1 +13000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3734.6 +13000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 7309.0 +13000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 726.1 +13000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 22765.0 +13000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 252949.4 +13000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 82442.0 +13000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 24.3 +13000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 762.6 +13000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 8472.9 +13000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2761.5 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.2 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 61.5 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 253.6 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 478.0 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 36.1 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 154.0 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.4 +13000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 36.8 +13000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 36.1 +13000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 154.0 +13000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.4 +13000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 36.8 +13000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 4.4 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 12580.1 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 3346.3 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 7467.6 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 9733.6 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1928.6 +13000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 16.6 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 741.6 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 3211.5 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 8184.7 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 5408.2 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 79.2 +13000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 51.9 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 1105.8 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4788.3 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 12203.2 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 8063.4 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 118.1 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 77.4 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 7.6 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.6 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.9 +13000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 3.0 +13000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 27.8 +13000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 24.0 +13000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 11.5 +13000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.2 +13000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 13.8 +13000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.6 +13000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +13000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +13000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.2 +13000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 142.2 +13000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 45.5 +13000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 5.2 +13000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.9 +13000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 65.9 +13000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.0 +13000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 20.2 +13000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 241.5 +13000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 225.1 +13000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 876.7 +13000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 319.7 +13000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 109.8 +13000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 186.1 +13000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 45.3 +13000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 17.0 +13000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 17.8 +13000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 17.5 +13000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 7710.1 +13000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 19.3 +13000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 76.9 +13000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 43.5 +13000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 16.6 +13000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 80.5 +13000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 47.8 +13000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 42.4 +13000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 3.4 +13000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 5.4 +13000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.9 +13000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 31.9 +13000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 13.3 +13000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.9 +13000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.4 +13000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 8.2 +13000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.2 +13000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +13000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 5.1 +13000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 10.8 +13000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 5.0 +13000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.3 +13000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +13000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 2.7 +13000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 14.1 +13000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 20.0 +13000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.0 +13000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.3 +13000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.5 +13000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 126.3 +13000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 3134.8 +13000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 22054.0 +13000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 52958.3 +13000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 11714.1 +13000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 16761.9 +13000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +13000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +13000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +13000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +13000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +13000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +13000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1552.3 +13000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 11.7 +13000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 724.0 +13000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 643.9 +13000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 241.6 +13000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 5.6 +13000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.9 +13000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 14.7 +13000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 24.8 +13000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 496.0 +13000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 166.9 +13000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 57.6 +13000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 23.6 +13000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 11.9 +13000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 3969.6 +13000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 7172.0 +13000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 4.4 +13000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.9 +13000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 10278.2 +13000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 6446.7 +13000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 624.4 +13000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 363.9 +13000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 316.4 +13000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.9 +13000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 147.2 +13000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 9.8 +13000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 22.7 +13000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 306.0 +13000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.9 +13000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 147.1 +13000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 9.8 +13000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 21.3 +13000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 10.4 +13000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +13000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.4 +13000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.7 +13000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.7 +13000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.8 +13000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1629.0 +13000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1520.6 +13000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 186.5 +13000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 202.1 +13000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 29.6 +13000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 163.7 +13000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 34.9 +13000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 16.3 +13000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 29.6 +13000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 159.0 +13000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 34.9 +13000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 8.7 +13000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 4.7 +13000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 7.6 +13000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 4.8 +13000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 2.9 +13000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.8 +13000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 8.4 +13000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.4 +13000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 3.6 +13000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.2 +13000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 215.4 +13000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 835.2 +13000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 3078.7 +13000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 1027.0 +13000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 242.4 +13000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 21.5 +13000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 4.9 +13000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 242.4 +13000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 21.5 +13000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 4.9 +13000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 5.1 +13000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 27195.7 +13000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 16819.1 +13000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 4989.6 +13000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 938.3 +13000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 15.9 +13000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.2 +13000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +13000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 15.9 +13000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.2 +13000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +13000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 39.7 +13000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 188.8 +13000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 171.0 +13000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 134.7 +13000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 137.9 +13000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 2.1 +13000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.9 +13000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 2.0 +13000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +13000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 2.1 +13000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.9 +13000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 2.0 +13000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +13000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +13000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 2331.0 +13000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 14799.4 +13000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 818.5 +13000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 265.3 +13000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 25.8 +13000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 10.6 +13000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 40.4 +13000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 4.6 +13000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 16.3 +13000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.9 +13000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.9 +13000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.3 +13000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.0 +13000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 4.4 +13000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 12.9 +13000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.9 +13000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.3 +13000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.0 +13000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 4.4 +13000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 12.9 +13000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3.4 +13000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 6.3 +13000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4.2 +13000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +13000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4.1 +13000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.6 +13000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.7 +13000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +13000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +13000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 13.8 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 500.8 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 346.3 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.2 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 7.4 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 7.3 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 61.3 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 54.0 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 23.8 +13000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.9 +13000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 3.9 +13000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 94.9 +13000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 8.8 +13000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 180.1 +13000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 112.1 +13000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 245.6 +13000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 172.4 +13000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 22.2 +13000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 92.8 +13000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 464.9 +13000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 207.7 +13000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 126.3 +13000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 11.7 +13000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 50.1 +13000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 94.0 +13000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 112.5 +13000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 201.9 +13000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 287.9 +13000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 266.9 +13000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 270.2 +13000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 739.6 +13000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 685.7 +13000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 234.1 +13000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 69.4 +13000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +13000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 18.6 +13000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 214.4 +13000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 277.6 +13000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 128.8 +13000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.2 +13000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 40.1 +13000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 45.0 +13000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 3.5 +13000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 23.1 +13000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 30.8 +13000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +13000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 30.2 +13000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 35.7 +13000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 65.1 +13000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 20.2 +13000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.9 +13000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.7 +13000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 2.3 +13000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 34.6 +13000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 29.0 +13000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 10.0 +13000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.5 +13000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 27.5 +13000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 8.4 +13000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.4 +13000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 8.4 +13000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.7 +13000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.8 +13000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +13000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.6 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 75.2 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 177.1 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 94.6 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1498.3 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 459.6 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.8 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 32.8 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 19.1 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 15.2 +13000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.7 +13000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +13000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +13000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.7 +13000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.8 +13000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 207.2 +13000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 516.5 +13000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 859.2 +13000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 347.0 +13000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 107.8 +13000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 72.0 +13000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 36.6 +13000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 3.2 +13000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.4 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 2.2 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 3.4 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 7.5 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 127.6 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 129.9 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 210.4 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 214.0 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 314.5 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 273.4 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 157.6 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 36.9 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 20.2 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.4 +13000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.7 +13000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.5 +13000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 13.8 +13000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 28.4 +13000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 126.8 +13000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 262.6 +13000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 140.0 +13000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 108.6 +13000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 490.2 +13000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1831.5 +13000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1339.0 +13000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 354.7 +13000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 11.3 +13000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 13.1 +13000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +13000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 5.0 +13000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 11.5 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 19.7 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 113.0 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 4.1 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 36.3 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 52.2 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 6.4 +13000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 229.7 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 136.9 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 25.4 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 23.1 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 16.8 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 28.9 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 48.3 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 15.3 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 5.4 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 6.8 +13000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.4 +13000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +13000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 20.9 +13000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.3 +13000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 11.1 +13000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 107.8 +13000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 405.8 +13000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 415.1 +13000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 255.7 +13000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 11.0 +13000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 3.1 +13000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +13000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +13000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.6 +13000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 4.8 +13000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 36.9 +13000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 377.0 +13000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 631.5 +13000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 72.2 +13000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 4.4 +13000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 1.0 +13000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 94.8 +13000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 201.2 +13000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 113.9 +13000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 55.3 +13000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 17.5 +13000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 88.6 +13000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 21.6 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.4 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 3.4 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 12.8 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 145.4 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 35.2 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 55.1 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 20.8 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 54.1 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 4.1 +13000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.3 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.6 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 7.4 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 173.2 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 192.8 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 382.2 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 2187.1 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 1123.5 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 58.2 +13000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 76.6 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.7 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 87.6 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 100.6 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 142.3 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 611.7 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1546.9 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1476.8 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 1083.5 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 81.9 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 39.9 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 8.3 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 48.9 +13000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.8 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 89.0 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 178.0 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 95.1 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1776.5 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 6276.3 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 4176.1 +13000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 22.7 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 18.4 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 530.0 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 1197.8 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 1037.3 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 525.2 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 207.2 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 42.9 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 74.6 +13000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +13000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 4.8 +13000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 783.7 +13000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1737.7 +13000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 3400.1 +13000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1344.5 +13000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 7383.1 +13000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 4853.6 +13000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 122.2 +13000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +13000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 16.5 +13000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 28.2 +13000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 67.5 +13000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 22.1 +13000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 2.1 +13000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 17.5 +13000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.4 +13000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 33.2 +13000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 31.8 +13000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 22.7 +13000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 26.4 +13000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 5.8 +13000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.7 +13000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 17.9 +13000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 6.5 +13000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 1.1 +13000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.5 +13000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 4.8 +13000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 13.8 +13000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.3 +13000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 13.4 +13000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 13.3 +13000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 92.0 +13000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 82.2 +13000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 198.4 +13000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 36.2 +13000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.2 +13000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.4 +13000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 3.5 +13000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 23.1 +13000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 323.2 +13000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 401.5 +13000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 94.9 +13000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 674.7 +13000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 239.8 +13000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.9 +13000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.5 +13000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +13000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.2 +13000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 13.8 +13000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 509.4 +13000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 513.2 +13000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 184.3 +13000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 30.0 +13000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 38.3 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 8.6 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.4 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 52.3 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 125.7 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 84.8 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 82.1 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 302.5 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 339.7 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 91.3 +13000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.5 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 59.7 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 11.3 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 7.3 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 12.7 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 40.1 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 14.6 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 113.1 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 352.0 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 500.7 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 156.2 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 16.0 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.6 +13000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 9.5 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 47.9 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 14.4 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 66.5 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 25.3 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 3.5 +13000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +13000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 187.4 +13000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 576.2 +13000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 540.3 +13000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 138.5 +13000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1015.5 +13000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 3905.8 +13000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +13000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +13000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +13000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +13000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +13000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +13000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 64.5 +13000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 111.9 +13000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 179.7 +13000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 299.2 +13000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 9.1 +13000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 10.2 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.5 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +13000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +13000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +13000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +13000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 10.3 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 288.6 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 4004.7 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1941.1 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 433.6 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 712.0 +13000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 152.2 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.2 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 70.4 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1758.3 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 30.5 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 17.6 +13000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 26.8 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.4 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 6.5 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 69.4 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 258.6 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1142.9 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 361.9 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 218.5 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 185.3 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 42.0 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 6.8 +13000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.8 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 41.1 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 53.5 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 98.5 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 47.9 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.9 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 50.4 +13000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 42.1 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.2 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 10.2 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 8.5 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.3 +13000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.4 +13000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.9 +13000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 3.7 +13000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +13000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 848.7 +13000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2282.8 +13000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1304.4 +13000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2065.4 +13000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1820.3 +13000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 3033.1 +13000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 2614.9 +13000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1353.0 +13000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +13000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 142.6 +13000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1308.2 +13000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1559.9 +13000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 80.6 +13000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.6 +13000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 34.0 +13000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 12.5 +13000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 10.7 +13000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.5 +13000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 3.2 +13000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 17.0 +13000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 7.7 +13000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 4.8 +13000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 13.0 +13000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 79.7 +13000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 153.8 +13000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 167.1 +13000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 45.3 +13000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.3 +13000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +13000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +13000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 96.3 +13000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 455.1 +13000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 89.9 +13000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 4.0 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 3.0 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 10.9 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 5.7 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 3.5 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 27.2 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 34.0 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 84.7 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 85.7 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 35.9 +13000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +13000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +13000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +13000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 6.8 +13000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 15.6 +13000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 6.2 +13000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 24.3 +13000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 114.8 +13000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 60.2 +13000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 17.1 +13000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.2 +13000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +13000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1881.0 +13000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1878.1 +13000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1447.6 +13000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2279.4 +13000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 3772.9 +13000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 515.3 +13000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1901.4 +13000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2314.0 +13000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 789.8 +13000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 439.1 +13000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 228.1 +13000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +13000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +13000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +13000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +13000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +13000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.8 +13000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 323.9 +13000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 778.5 +13000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 195.3 +13000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 155.3 +13000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 270.2 +13000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 76.6 +13000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 518.4 +13000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 577.0 +13000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 254.4 +13000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 63.8 +13000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 32.3 +13000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +13000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +13000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +13000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +13000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +13000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 11.0 +13000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 26.9 +13000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 3.6 +13000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 5.6 +13000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 206.8 +13000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 143.2 +13000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 917.6 +13000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1195.2 +13000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 137.1 +13000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 123.0 +13000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 35.2 +13000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +13000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +13000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +13000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +13000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +13000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +13000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 119.6 +13000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 662.4 +13000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 964.3 +13000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 598.1 +13000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1657.9 +13000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1204.2 +13000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 528.7 +13000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 27.5 +13000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.6 +13000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +13000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 20.9 +13000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 178.2 +13000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 204.5 +13000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 255.4 +13000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 244.1 +13000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 30.6 +13000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 102.7 +13000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 28.7 +13000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 95.4 +13000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 77.2 +13000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 11.8 +13000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 5.5 +13000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 2.8 +13000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 6.3 +13000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 2.0 +13000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 18.4 +13000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 26.6 +13000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 8.4 +13000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 40.8 +13000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 47.1 +13000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 12.7 +13000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.6 +13000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.4 +13000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +13000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 1.0 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 1.4 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.9 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 94.2 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 653.3 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 936.3 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 80.9 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 33.1 +13000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.8 +13000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 50.6 +13000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.2 +13000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.6 +13000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.9 +13000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 2.6 +13000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 52.9 +13000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 96.4 +13000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 284.8 +13000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 95.6 +13000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 111.7 +13000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 11.8 +13000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.7 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +13000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.2 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.9 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.9 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.0 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.4 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.9 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.4 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.2 +13000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +13000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4035.4 +13000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 15053.0 +13000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 22672.1 +13000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5040.8 +13000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9927.9 +13000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 19177.6 +13000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 14752.4 +13000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 24671.9 +13000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 16759.7 +13000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 37493.2 +13000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 33656.3 +13000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 16.0 +13000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 15.5 +13000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 147.8 +13000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +13000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 157.0 +13000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 63.3 +13000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1402.6 +13000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5187.8 +13000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 19219.3 +13000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1264.5 +13000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 17.6 +13000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 12.6 +13000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.5 +13000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 32.2 +13000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 283.4 +13000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +13000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6795.3 +13000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 25221.9 +13000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 10129.2 +13000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 170.9 +13000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 207.9 +13000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 102.0 +13000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 225.8 +13000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 123.5 +13000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 22.8 +13000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 200.1 +13000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 168.6 +13000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1381.5 +13000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2271.8 +13000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1675.8 +13000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 66.1 +13000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 125.4 +13000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 10.2 +13000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 35.8 +13000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 22.0 +13000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 223.7 +13000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.4 +13000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 2.1 +13000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 2.3 +13000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 3.2 +13000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 12.0 +13000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 18.8 +13000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 34.3 +13000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 31.9 +13000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 134.8 +13000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 49.6 +13000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 8.4 +13000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 2.1 +13000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.5 +13000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.8 +13000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.3 +13000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 2.1 +13000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 65.6 +13000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 269.9 +13000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 4.8 +13000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 12.3 +13000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.8 +13000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +13000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.8 +13000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/HI.POP b/NONROAD/NR08a/DATA/POP/HI.POP new file mode 100644 index 0000000..48b07c7 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/HI.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 15000 HI Hawaii 426,892.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +15000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +15000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +15000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 0.0 +15000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 0.0 +15000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 0.0 +15000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 0.0 +15000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 741.2 +15000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1400.1 +15000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.4 +15000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.7 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 28.8 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 54.5 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 429.0 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.4 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 10.6 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +15000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.0 +15000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.4 +15000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +15000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 10.6 +15000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +15000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.0 +15000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 2.5 +15000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 17.6 +15000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.8 +15000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 6.4 +15000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.1 +15000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.2 +15000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.1 +15000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.2 +15000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 528.1 +15000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.2 +15000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 49.6 +15000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 251.8 +15000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 77.5 +15000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 13.7 +15000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 19.1 +15000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 3.4 +15000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 8.9 +15000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.0 +15000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.7 +15000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.5 +15000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.0 +15000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.7 +15000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.5 +15000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 47.5 +15000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 139.0 +15000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 117.9 +15000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 59.0 +15000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 41.6 +15000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.7 +15000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.2 +15000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.7 +15000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.2 +15000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 20.6 +15000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 31.8 +15000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 9.2 +15000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 3.9 +15000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +15000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +15000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +15000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +15000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +15000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.3 +15000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.3 +15000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +15000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +15000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 36.1 +15000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 35.4 +15000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 12.6 +15000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 14.4 +15000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.4 +15000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 2.0 +15000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.6 +15000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.4 +15000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 2.0 +15000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.6 +15000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 14.9 +15000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 305.1 +15000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 12.3 +15000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 3.8 +15000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 4.8 +15000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 3.1 +15000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.3 +15000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.2 +15000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +15000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.3 +15000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.2 +15000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +15000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 39.0 +15000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 187.0 +15000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 96.1 +15000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 20.2 +15000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 8.9 +15000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.4 +15000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +15000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.4 +15000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +15000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 5.3 +15000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 296.5 +15000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 495.4 +15000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 16.8 +15000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 12.9 +15000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.5 +15000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.7 +15000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.3 +15000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +15000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.8 +15000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +15000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +15000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.8 +15000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +15000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 4.8 +15000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 6.7 +15000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 12.2 +15000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 3.1 +15000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +15000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +15000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +15000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +15000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +15000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.5 +15000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +15000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +15000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +15000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +15000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.5 +15000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +15000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +15000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +15000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.0 +15000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.2 +15000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +15000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.0 +15000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.2 +15000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.2 +15000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 25.6 +15000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +15000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +15000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +15000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +15000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +15000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +15000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.0 +15000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 20.3 +15000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.8 +15000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 3.2 +15000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 3.4 +15000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.8 +15000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 3.2 +15000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 3.4 +15000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 17.9 +15000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 59.1 +15000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 8.9 +15000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 10.9 +15000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.4 +15000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +15000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 2.1 +15000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 2.0 +15000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +15000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1.8 +15000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.5 +15000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 11.3 +15000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 5.0 +15000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 10.4 +15000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +15000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 5.0 +15000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 10.4 +15000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +15000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1.3 +15000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 4.7 +15000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 7.6 +15000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.6 +15000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 3.5 +15000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +15000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 25.1 +15000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 54.8 +15000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 144.2 +15000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 10.5 +15000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 67.0 +15000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.3 +15000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 34.7 +15000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 2.6 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3.0 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 4.6 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1.3 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 2.7 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1.6 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 1.8 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.8 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.0 +15000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1.6 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 1.8 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.8 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.0 +15000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +15000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +15000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.1 +15000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 51.3 +15000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 9.7 +15000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 4.9 +15000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 4.2 +15000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.4 +15000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.5 +15000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +15000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.2 +15000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +15000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.4 +15000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.5 +15000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +15000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.2 +15000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +15000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +15000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +15000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1.0 +15000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 0.6 +15000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +15000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 0.6 +15000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +15000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +15000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +15000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 4.6 +15000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.5 +15000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +15000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +15000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.3 +15000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.2 +15000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 0.6 +15000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +15000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +15000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.3 +15000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.1 +15000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 0.6 +15000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +15000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +15000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.0 +15000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +15000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +15000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 2511.4 +15000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 124810.9 +15000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 41.2 +15000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 144.4 +15000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 7174.8 +15000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.4 +15000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 232.9 +15000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1646.3 +15000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 11691.4 +15000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 48.1 +15000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 340.1 +15000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2414.9 +15000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 20309.9 +15000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +15000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 777.6 +15000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2735.8 +15000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 15181.1 +15000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 38445.6 +15000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +15000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +15000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 8203.3 +15000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 582.6 +15000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 876.7 +15000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +15000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +15000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +15000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 128.7 +15000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 34.4 +15000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.8 +15000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.9 +15000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 2247.6 +15000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 24960.1 +15000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +15000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +15000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2489.3 +15000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 927.4 +15000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1414.4 +15000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +15000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +15000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 142.0 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1388.3 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 43.7 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 47.6 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.6 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 24.7 +15000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 24.5 +15000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +15000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +15000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +15000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +15000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +15000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +15000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +15000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +15000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 27.4 +15000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 3967.4 +15000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 3076.7 +15000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 14.6 +15000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.9 +15000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 131.1 +15000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 101.7 +15000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.5 +15000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 135.7 +15000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 463.4 +15000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 204.9 +15000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 3.1 +15000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 497.1 +15000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 972.9 +15000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 98.0 +15000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 3071.7 +15000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 34130.7 +15000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 11124.0 +15000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 3.2 +15000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 101.5 +15000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1127.8 +15000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 367.6 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.2 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 8.2 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 33.8 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 63.6 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.8 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 20.5 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +15000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.9 +15000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.8 +15000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 20.5 +15000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +15000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.9 +15000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.6 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1674.5 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 445.4 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 994.0 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1295.6 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 256.7 +15000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 2.2 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 100.1 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 433.3 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1104.4 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 729.7 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 10.7 +15000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 7.0 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 147.2 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 637.4 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1624.3 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1073.3 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 15.7 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 10.3 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.0 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +15000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.4 +15000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.9 +15000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.8 +15000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.4 +15000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +15000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.5 +15000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.1 +15000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +15000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +15000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +15000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 4.8 +15000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 1.5 +15000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.2 +15000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +15000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 2.2 +15000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +15000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.7 +15000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 8.1 +15000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 7.6 +15000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 29.6 +15000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 10.8 +15000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 3.7 +15000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 6.3 +15000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 1.5 +15000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.6 +15000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.6 +15000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.6 +15000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 260.0 +15000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.6 +15000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 2.6 +15000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 1.5 +15000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.6 +15000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 2.7 +15000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 1.6 +15000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 1.4 +15000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.1 +15000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.2 +15000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +15000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 1.1 +15000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.4 +15000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +15000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +15000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.3 +15000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.1 +15000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +15000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.2 +15000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.4 +15000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.2 +15000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.1 +15000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +15000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.1 +15000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.5 +15000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.7 +15000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.1 +15000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.1 +15000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +15000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 17.0 +15000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 420.8 +15000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2960.6 +15000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 7109.3 +15000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1572.5 +15000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2250.2 +15000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +15000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +15000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +15000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +15000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +15000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +15000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 208.4 +15000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.6 +15000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 97.2 +15000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 86.4 +15000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 32.4 +15000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.7 +15000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +15000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 2.0 +15000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.3 +15000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 66.6 +15000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 22.4 +15000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 7.7 +15000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.2 +15000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.6 +15000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 532.9 +15000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 962.8 +15000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.6 +15000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +15000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1379.8 +15000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 865.4 +15000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 83.8 +15000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 48.8 +15000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 42.5 +15000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +15000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 19.8 +15000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.3 +15000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 3.0 +15000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 41.1 +15000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +15000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 19.7 +15000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.3 +15000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.9 +15000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.4 +15000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +15000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +15000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +15000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +15000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +15000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 218.7 +15000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 204.1 +15000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 25.0 +15000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 27.1 +15000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 4.0 +15000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 22.0 +15000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 4.7 +15000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.2 +15000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 4.0 +15000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 21.3 +15000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 4.7 +15000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.2 +15000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.6 +15000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.0 +15000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.6 +15000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +15000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +15000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.1 +15000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +15000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.5 +15000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +15000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 28.9 +15000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 112.1 +15000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 413.3 +15000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 137.9 +15000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 32.5 +15000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.9 +15000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.7 +15000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 32.5 +15000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.9 +15000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.7 +15000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.7 +15000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3650.9 +15000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2257.9 +15000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 669.8 +15000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 126.0 +15000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.1 +15000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +15000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +15000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.1 +15000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +15000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +15000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 5.3 +15000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 25.3 +15000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 23.0 +15000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 18.1 +15000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 18.5 +15000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +15000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +15000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +15000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +15000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +15000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +15000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +15000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +15000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +15000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 0.0 +15000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 0.0 +15000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 0.0 +15000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.0 +15000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.0 +15000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +15000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 21.6 +15000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.5 +15000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 8.7 +15000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +15000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +15000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +15000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +15000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.3 +15000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.9 +15000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +15000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +15000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +15000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.3 +15000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.9 +15000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.0 +15000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.0 +15000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.0 +15000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +15000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.0 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 72.4 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 50.1 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.1 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.1 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 8.9 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 7.8 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 3.4 +15000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +15000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.3 +15000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 8.5 +15000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.8 +15000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 16.1 +15000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 10.0 +15000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 22.0 +15000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 15.4 +15000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 2.0 +15000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 8.3 +15000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 41.6 +15000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 18.6 +15000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 11.3 +15000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.0 +15000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 4.5 +15000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 8.4 +15000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 10.1 +15000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 18.1 +15000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 25.8 +15000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 23.9 +15000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 24.2 +15000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 66.1 +15000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 61.3 +15000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 20.9 +15000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 6.2 +15000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +15000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.7 +15000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 19.2 +15000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 24.8 +15000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 11.5 +15000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +15000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 3.6 +15000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 4.0 +15000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.3 +15000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 2.1 +15000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 2.8 +15000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +15000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 2.7 +15000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 3.2 +15000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 5.8 +15000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.8 +15000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +15000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +15000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +15000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 3.1 +15000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 2.6 +15000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.9 +15000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +15000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 2.5 +15000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.8 +15000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +15000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.8 +15000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.3 +15000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +15000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +15000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 6.7 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 15.8 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 8.5 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 134.0 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 41.1 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 2.9 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.7 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.4 +15000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.3 +15000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +15000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +15000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +15000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.3 +15000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 18.5 +15000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 46.2 +15000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 76.9 +15000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 31.0 +15000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 9.6 +15000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 6.4 +15000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 3.3 +15000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +15000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.3 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.7 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 11.4 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 11.6 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 18.8 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 19.1 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 28.1 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 24.5 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 14.1 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 3.3 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.8 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +15000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +15000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +15000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.2 +15000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 2.5 +15000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 11.3 +15000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 23.5 +15000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 12.5 +15000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 9.7 +15000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 43.8 +15000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 163.8 +15000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 119.8 +15000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 31.7 +15000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.0 +15000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.2 +15000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +15000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.4 +15000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.0 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.8 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 10.1 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.4 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 3.2 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 4.7 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.6 +15000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 20.5 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 12.2 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.3 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 2.1 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.5 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 2.6 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 4.3 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.4 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.5 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.6 +15000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +15000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +15000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.9 +15000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +15000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.0 +15000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 9.6 +15000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 36.3 +15000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 37.1 +15000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 22.9 +15000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.0 +15000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.3 +15000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +15000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +15000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +15000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.4 +15000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 3.3 +15000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 33.7 +15000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 56.5 +15000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 6.5 +15000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.4 +15000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +15000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 8.5 +15000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 18.0 +15000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 10.2 +15000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 4.9 +15000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.6 +15000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 7.9 +15000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.9 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.3 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.1 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 13.0 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 3.1 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 4.9 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.9 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 4.8 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.4 +15000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.7 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 15.5 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 17.2 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 34.2 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 195.6 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 100.5 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 5.2 +15000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 6.9 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.2 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 7.8 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 9.0 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 12.7 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 54.7 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 138.4 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 132.1 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 96.9 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 7.3 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 3.6 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.7 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 4.4 +15000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.2 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 8.0 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 15.9 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 8.5 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 158.9 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 561.4 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 373.5 +15000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 2.0 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.6 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 47.4 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 107.1 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 92.8 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 47.0 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 18.5 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 3.8 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 6.7 +15000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +15000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.4 +15000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 70.1 +15000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 155.4 +15000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 304.1 +15000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 120.3 +15000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 660.4 +15000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 434.1 +15000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 10.9 +15000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +15000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.5 +15000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 2.5 +15000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 6.0 +15000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 2.0 +15000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +15000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.6 +15000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +15000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 3.0 +15000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 2.8 +15000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 2.0 +15000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.4 +15000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.5 +15000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +15000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.6 +15000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.6 +15000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +15000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +15000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.4 +15000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.2 +15000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +15000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.2 +15000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.2 +15000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 8.2 +15000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 7.3 +15000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 17.7 +15000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 3.2 +15000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +15000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +15000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.1 +15000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 0.7 +15000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 9.1 +15000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 11.4 +15000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 2.7 +15000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 19.1 +15000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 6.8 +15000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.1 +15000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +15000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +15000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.0 +15000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.4 +15000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 14.4 +15000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 14.5 +15000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 5.2 +15000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 0.8 +15000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1.1 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.2 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1.5 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 3.6 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2.4 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2.3 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 8.6 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 9.6 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 2.6 +15000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.0 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1.7 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.3 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.2 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.4 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1.1 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.4 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3.2 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 10.0 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 14.2 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 4.4 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.5 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.1 +15000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.3 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1.4 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.4 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 1.9 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 0.7 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.1 +15000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +15000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 27.1 +15000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 83.3 +15000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 78.1 +15000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 20.0 +15000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 146.8 +15000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 564.6 +15000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +15000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 1.8 +15000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3.2 +15000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 5.1 +15000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 8.5 +15000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.3 +15000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.4 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +15000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +15000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +15000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +15000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.4 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 38.4 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 533.1 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 258.4 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 57.7 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 94.8 +15000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 20.3 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.2 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 9.4 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 234.0 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 4.1 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.3 +15000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.6 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.9 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 9.2 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 34.4 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 152.1 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 48.2 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 29.1 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 24.7 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 5.6 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.9 +15000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 5.5 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 7.1 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 13.1 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 6.4 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 6.7 +15000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 5.6 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.4 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.1 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +15000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +15000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +15000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.1 +15000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +15000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 28.6 +15000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 77.0 +15000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 44.0 +15000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 69.7 +15000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 61.4 +15000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 102.3 +15000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 88.2 +15000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 45.6 +15000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +15000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 4.8 +15000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 44.1 +15000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 52.6 +15000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 2.7 +15000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.1 +15000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 1.1 +15000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.4 +15000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.4 +15000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +15000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.1 +15000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.6 +15000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.3 +15000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.2 +15000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.4 +15000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 2.7 +15000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 5.2 +15000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 5.6 +15000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 1.5 +15000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +15000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +15000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +15000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 3.2 +15000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 15.3 +15000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 3.0 +15000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.1 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.1 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.4 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.2 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.1 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.9 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 1.1 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 2.9 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 2.9 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 1.2 +15000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +15000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +15000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +15000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.2 +15000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.5 +15000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.2 +15000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.8 +15000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 3.9 +15000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 2.0 +15000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.6 +15000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +15000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +15000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 252.5 +15000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 252.1 +15000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 194.3 +15000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 306.0 +15000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 506.5 +15000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 69.2 +15000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 255.2 +15000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 310.6 +15000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 106.0 +15000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 59.0 +15000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 30.6 +15000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +15000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +15000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +15000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +15000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +15000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +15000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 43.5 +15000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 104.5 +15000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 26.2 +15000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 20.9 +15000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 36.3 +15000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 10.3 +15000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 69.6 +15000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 77.5 +15000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 34.2 +15000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 8.6 +15000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 4.3 +15000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +15000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +15000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +15000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +15000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +15000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.5 +15000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.6 +15000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.5 +15000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.8 +15000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 27.8 +15000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 19.2 +15000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 123.2 +15000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 160.4 +15000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 18.4 +15000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 16.5 +15000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 4.7 +15000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +15000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +15000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +15000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +15000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +15000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +15000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 16.0 +15000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 88.9 +15000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 129.5 +15000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 80.3 +15000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 222.6 +15000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 161.7 +15000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 71.0 +15000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.7 +15000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +15000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +15000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.8 +15000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 23.9 +15000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 27.5 +15000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 34.3 +15000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 32.8 +15000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 4.1 +15000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 13.8 +15000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.9 +15000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 12.8 +15000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 10.4 +15000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.6 +15000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.7 +15000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +15000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.8 +15000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.3 +15000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.5 +15000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.6 +15000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.1 +15000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 5.5 +15000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 6.3 +15000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.7 +15000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +15000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +15000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +15000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.0 +15000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +15000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 27.1 +15000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +15000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.3 +15000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.0 +15000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.4 +15000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 28.3 +15000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 51.6 +15000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 152.3 +15000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 51.1 +15000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 59.7 +15000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.3 +15000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +15000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +15000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +15000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 526.3 +15000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1963.0 +15000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 2956.6 +15000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 657.4 +15000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1294.7 +15000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2500.9 +15000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1923.8 +15000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 3217.4 +15000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2185.6 +15000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 4889.4 +15000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 4389.0 +15000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.1 +15000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.0 +15000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 19.3 +15000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +15000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 20.5 +15000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 8.3 +15000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 182.9 +15000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 676.5 +15000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2506.3 +15000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 164.9 +15000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.3 +15000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.6 +15000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.0 +15000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 4.2 +15000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 37.0 +15000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +15000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 886.1 +15000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 3289.1 +15000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1320.9 +15000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 22.3 +15000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 27.1 +15000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 13.3 +15000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 29.4 +15000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 16.1 +15000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 3.0 +15000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 26.1 +15000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 22.0 +15000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 180.2 +15000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 296.3 +15000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 218.5 +15000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 8.6 +15000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 16.3 +15000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.3 +15000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 4.7 +15000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 2.9 +15000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 29.2 +15000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +15000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +15000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +15000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +15000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/IA.POP b/NONROAD/NR08a/DATA/POP/IA.POP new file mode 100644 index 0000000..11731d0 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/IA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 19000 IA Iowa 1,545,529.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +19000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 139.3 +19000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 82.2 +19000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 88.2 +19000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 7031.3 +19000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 7097.3 +19000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 3185.5 +19000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 11222.6 +19000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 4612.4 +19000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1201.6 +19000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 8923.3 +19000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 4395.0 +19000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 4510.0 +19000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 39030.7 +19000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 4713.8 +19000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3328.5 +19000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.0 +19000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.6 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.7 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 68.3 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 129.5 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1019.7 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 10.4 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 25.2 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +19000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 9.5 +19000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 10.4 +19000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +19000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 25.2 +19000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +19000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 9.5 +19000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 9.1 +19000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 63.2 +19000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 2.9 +19000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 22.9 +19000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 3.9 +19000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 4.3 +19000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 3.9 +19000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 4.3 +19000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1892.0 +19000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 4.1 +19000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 177.8 +19000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 902.1 +19000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 277.7 +19000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 49.2 +19000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 68.4 +19000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 12.2 +19000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 31.8 +19000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 3.8 +19000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.6 +19000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.8 +19000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 3.8 +19000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.6 +19000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.8 +19000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 170.3 +19000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 498.0 +19000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 422.4 +19000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 211.5 +19000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 149.0 +19000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 6.1 +19000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.5 +19000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 6.1 +19000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.5 +19000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 74.0 +19000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 113.9 +19000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 32.9 +19000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 13.9 +19000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.4 +19000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +19000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.4 +19000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +19000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.5 +19000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 8.4 +19000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 8.3 +19000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.3 +19000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.4 +19000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 129.5 +19000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 126.7 +19000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 45.3 +19000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 51.6 +19000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 8.6 +19000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 7.3 +19000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 5.7 +19000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 8.6 +19000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 7.3 +19000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 5.7 +19000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 53.4 +19000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1093.1 +19000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 44.2 +19000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 13.5 +19000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 17.2 +19000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 11.3 +19000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 4.5 +19000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.1 +19000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 6.8 +19000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 4.5 +19000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.1 +19000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 6.8 +19000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 139.8 +19000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 669.9 +19000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 344.4 +19000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 72.2 +19000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 31.8 +19000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 8.7 +19000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 4.8 +19000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 8.7 +19000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 4.8 +19000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 19.0 +19000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1062.4 +19000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1774.8 +19000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 60.2 +19000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 46.1 +19000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.8 +19000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.5 +19000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.9 +19000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +19000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 6.3 +19000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.0 +19000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +19000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 6.3 +19000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.0 +19000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 17.1 +19000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 24.0 +19000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 43.8 +19000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 11.2 +19000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.4 +19000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.4 +19000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.4 +19000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.4 +19000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +19000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.0 +19000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +19000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.1 +19000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.4 +19000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +19000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.0 +19000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +19000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.1 +19000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +19000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 17.9 +19000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.6 +19000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +19000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 17.9 +19000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.6 +19000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 4.4 +19000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 91.7 +19000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +19000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.6 +19000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +19000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +19000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.6 +19000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +19000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 3.6 +19000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 72.8 +19000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 20.7 +19000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 11.4 +19000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 12.2 +19000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 20.7 +19000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 11.4 +19000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 12.2 +19000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 64.2 +19000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 211.9 +19000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 31.9 +19000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 39.0 +19000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.5 +19000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +19000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 7.6 +19000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 7.3 +19000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.3 +19000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 32.7 +19000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 9.1 +19000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 209.5 +19000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 92.6 +19000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 193.0 +19000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 4.3 +19000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 92.6 +19000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 193.0 +19000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 4.3 +19000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 24.6 +19000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 87.7 +19000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 141.3 +19000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 10.3 +19000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 65.7 +19000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +19000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 466.6 +19000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1019.9 +19000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2684.2 +19000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 196.0 +19000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1247.5 +19000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 6.1 +19000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 646.3 +19000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 49.2 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 56.4 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 86.2 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 23.3 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 50.0 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 30.0 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 33.9 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 34.4 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.7 +19000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 30.0 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 33.9 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 34.4 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.7 +19000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +19000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.3 +19000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.3 +19000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 955.1 +19000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 180.5 +19000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 91.9 +19000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 77.7 +19000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 6.9 +19000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 9.6 +19000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.6 +19000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.7 +19000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +19000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 6.9 +19000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 9.6 +19000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.2 +19000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.7 +19000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +19000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.4 +19000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.5 +19000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 19.0 +19000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 11.5 +19000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +19000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 11.5 +19000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +19000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +19000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.4 +19000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 10.9 +19000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.2 +19000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.4 +19000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +19000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 6.1 +19000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.8 +19000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 11.0 +19000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +19000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +19000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 5.8 +19000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.2 +19000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 10.9 +19000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +19000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +19000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.6 +19000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +19000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +19000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 6711.7 +19000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 333561.0 +19000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 110.0 +19000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 180.0 +19000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 8945.1 +19000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 3.0 +19000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 622.4 +19000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4399.9 +19000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 31245.8 +19000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 60.0 +19000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 424.0 +19000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 3010.7 +19000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 54278.9 +19000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +19000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 969.4 +19000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 3410.9 +19000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 40571.9 +19000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 102747.1 +19000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +19000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +19000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 10227.4 +19000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 726.3 +19000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2343.1 +19000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +19000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +19000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +19000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 160.4 +19000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 42.9 +19000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 2.3 +19000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 4.9 +19000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 6006.8 +19000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 66706.6 +19000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +19000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +19000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 3103.5 +19000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1156.2 +19000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 3780.0 +19000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +19000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +19000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 177.0 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1730.9 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 54.5 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 59.3 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 4.5 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 30.8 +19000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 30.5 +19000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 18350.7 +19000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 28100.7 +19000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 47407.4 +19000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 2215.7 +19000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 1396.3 +19000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 2138.2 +19000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 3607.3 +19000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 168.6 +19000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 73.3 +19000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 10603.1 +19000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 8222.6 +19000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 38.9 +19000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.1 +19000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 163.4 +19000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 126.8 +19000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.6 +19000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 169.1 +19000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 577.7 +19000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 255.4 +19000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 3.8 +19000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 619.7 +19000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1212.9 +19000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 261.8 +19000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 8209.2 +19000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 91215.4 +19000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 29729.2 +19000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 4.0 +19000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 126.5 +19000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1406.1 +19000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 458.3 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.2 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 10.2 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 42.1 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 79.3 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 6.0 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 25.5 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +19000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 6.1 +19000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 6.0 +19000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 25.5 +19000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +19000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 6.1 +19000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.7 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 2087.6 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 555.3 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1239.2 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1615.3 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 320.0 +19000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 2.8 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 267.4 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1158.1 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2951.5 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1950.2 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 28.6 +19000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 18.7 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 183.5 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 794.6 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 2025.1 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1338.1 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 19.6 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 12.8 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.3 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.4 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.2 +19000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.5 +19000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 205.7 +19000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 177.5 +19000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 85.2 +19000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 8.8 +19000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 101.9 +19000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 11.5 +19000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +19000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.7 +19000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.6 +19000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 1051.5 +19000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 336.6 +19000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 38.2 +19000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 7.0 +19000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 487.3 +19000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 7.1 +19000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 149.0 +19000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1785.2 +19000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1664.4 +19000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 6481.3 +19000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 2363.7 +19000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 811.9 +19000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1375.6 +19000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 335.1 +19000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 125.7 +19000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 131.7 +19000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 129.2 +19000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 56996.6 +19000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 142.4 +19000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 568.2 +19000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 321.9 +19000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 122.4 +19000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 595.0 +19000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 353.7 +19000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 313.3 +19000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 24.9 +19000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 40.3 +19000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 6.4 +19000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 236.0 +19000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 98.6 +19000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 6.3 +19000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 10.6 +19000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 60.3 +19000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 16.6 +19000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +19000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 37.8 +19000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 79.8 +19000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 37.0 +19000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 16.9 +19000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 1.0 +19000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 19.7 +19000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 104.2 +19000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 148.2 +19000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 14.6 +19000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 17.0 +19000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 3.5 +19000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 46.4 +19000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1151.8 +19000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 8102.8 +19000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 19457.3 +19000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4303.9 +19000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 6158.5 +19000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +19000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +19000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +19000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +19000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +19000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +19000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 570.3 +19000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.3 +19000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 266.0 +19000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 236.6 +19000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 88.7 +19000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.0 +19000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +19000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.4 +19000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 9.1 +19000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 182.2 +19000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 61.3 +19000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 21.2 +19000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.7 +19000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.4 +19000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1458.5 +19000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2635.0 +19000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.6 +19000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +19000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3776.3 +19000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2368.6 +19000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 229.4 +19000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 133.7 +19000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 116.2 +19000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.1 +19000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 54.1 +19000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.6 +19000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 8.3 +19000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 112.4 +19000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.1 +19000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 54.0 +19000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.6 +19000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.8 +19000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.8 +19000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +19000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +19000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +19000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +19000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.7 +19000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 598.5 +19000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 558.7 +19000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 68.5 +19000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 74.3 +19000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.9 +19000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 60.2 +19000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.8 +19000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 6.0 +19000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.9 +19000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 58.4 +19000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.8 +19000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.2 +19000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.7 +19000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.8 +19000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.8 +19000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.1 +19000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +19000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.1 +19000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +19000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +19000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +19000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 79.1 +19000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 306.9 +19000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1131.1 +19000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 377.3 +19000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 89.1 +19000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.9 +19000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.8 +19000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 89.1 +19000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.9 +19000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.8 +19000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.9 +19000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9991.9 +19000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 6179.5 +19000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1833.2 +19000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 344.7 +19000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.8 +19000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +19000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +19000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.8 +19000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +19000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +19000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 14.6 +19000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 69.4 +19000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 62.8 +19000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 49.5 +19000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 50.7 +19000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.8 +19000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +19000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.8 +19000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +19000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.8 +19000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +19000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.8 +19000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +19000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +19000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 92.4 +19000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 586.6 +19000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 32.4 +19000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 10.5 +19000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 1.0 +19000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.4 +19000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 3.1 +19000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.4 +19000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.3 +19000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +19000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +19000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +19000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +19000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +19000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.0 +19000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +19000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +19000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +19000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +19000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.0 +19000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +19000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +19000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +19000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +19000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +19000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +19000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +19000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +19000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +19000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 4.7 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 172.1 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 119.0 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.4 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 2.5 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 2.5 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 21.1 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 18.6 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 8.2 +19000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.3 +19000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.2 +19000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 30.4 +19000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.8 +19000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 57.7 +19000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 35.9 +19000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 78.7 +19000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 55.3 +19000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 7.1 +19000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 29.8 +19000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 149.0 +19000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 66.6 +19000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 40.5 +19000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 3.7 +19000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 16.0 +19000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 30.1 +19000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 36.1 +19000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 64.7 +19000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 92.3 +19000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 85.5 +19000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 86.6 +19000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 237.0 +19000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 219.7 +19000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 75.0 +19000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 22.2 +19000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +19000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 6.0 +19000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 68.7 +19000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 89.0 +19000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 41.3 +19000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +19000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 12.8 +19000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 14.4 +19000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.1 +19000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 7.4 +19000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 9.9 +19000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +19000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 9.7 +19000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 11.4 +19000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 20.9 +19000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 6.5 +19000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.3 +19000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +19000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.7 +19000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 11.1 +19000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 9.3 +19000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 3.2 +19000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +19000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 8.8 +19000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 2.7 +19000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +19000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 2.7 +19000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.2 +19000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +19000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +19000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 24.1 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 56.8 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 30.3 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 480.1 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 147.3 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 10.5 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 6.1 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 4.9 +19000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.2 +19000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +19000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +19000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.9 +19000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.2 +19000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 66.4 +19000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 165.5 +19000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 275.3 +19000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 111.2 +19000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 34.5 +19000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 23.1 +19000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 11.7 +19000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.0 +19000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.7 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.1 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 2.4 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 40.9 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 41.6 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 67.4 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 68.6 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 100.8 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 87.6 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 50.5 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 11.8 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 6.5 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +19000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +19000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.8 +19000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 4.4 +19000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 9.1 +19000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 40.6 +19000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 84.1 +19000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 44.9 +19000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 34.8 +19000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 157.1 +19000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 586.9 +19000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 429.1 +19000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 113.7 +19000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 3.6 +19000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 4.2 +19000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +19000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.6 +19000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 3.7 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 6.3 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 36.2 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.3 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 11.6 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 16.7 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.0 +19000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 73.6 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 43.9 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 8.1 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 7.4 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 5.4 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 9.3 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 15.5 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 4.9 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.7 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.2 +19000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.4 +19000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +19000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 6.7 +19000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +19000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 3.6 +19000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 34.5 +19000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 130.1 +19000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 133.0 +19000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 81.9 +19000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 3.5 +19000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.0 +19000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +19000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +19000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +19000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.5 +19000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 11.8 +19000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 120.8 +19000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 202.4 +19000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 23.1 +19000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.4 +19000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.3 +19000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 30.4 +19000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 64.5 +19000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 36.5 +19000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 17.7 +19000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 5.6 +19000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 28.4 +19000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 6.9 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.8 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.1 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 4.1 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 46.6 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 11.3 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 17.7 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 6.7 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 17.3 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.3 +19000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 2.4 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 55.5 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 61.8 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 122.5 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 700.9 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 360.0 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 18.7 +19000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 24.6 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.5 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 28.1 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 32.2 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 45.6 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 196.0 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 495.7 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 473.2 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 347.2 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 26.2 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 12.8 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 2.7 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 15.7 +19000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.6 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 28.5 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 57.0 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 30.5 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 569.3 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2011.2 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1338.2 +19000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 7.3 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 5.9 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 169.8 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 383.8 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 332.4 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 168.3 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 66.4 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 13.7 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 23.9 +19000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +19000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.5 +19000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 251.1 +19000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 556.8 +19000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1089.6 +19000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 430.9 +19000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 2365.9 +19000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1555.3 +19000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 39.2 +19000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +19000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 5.3 +19000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 9.0 +19000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 21.6 +19000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 7.1 +19000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.7 +19000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 5.6 +19000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +19000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 10.7 +19000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 10.2 +19000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 7.3 +19000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 8.4 +19000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.8 +19000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.9 +19000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 5.8 +19000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.1 +19000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.3 +19000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +19000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.5 +19000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 4.4 +19000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.4 +19000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 4.3 +19000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 4.2 +19000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 29.5 +19000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 26.3 +19000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 63.6 +19000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 11.6 +19000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +19000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.8 +19000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.8 +19000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 12.1 +19000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 170.2 +19000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 211.4 +19000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 50.0 +19000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 355.3 +19000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 126.3 +19000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.5 +19000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +19000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +19000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.6 +19000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 7.2 +19000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 268.2 +19000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 270.2 +19000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 97.0 +19000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 15.8 +19000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 20.2 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 4.5 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 27.5 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 66.2 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 44.7 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 43.3 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 159.3 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 178.9 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 48.1 +19000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.8 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 31.5 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 5.9 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.8 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 6.7 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 21.1 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 7.7 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 59.5 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 185.3 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 263.7 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 82.3 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 8.4 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.4 +19000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 5.0 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 25.2 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 7.6 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 35.0 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 13.3 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.8 +19000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +19000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 64.4 +19000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 198.0 +19000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 185.7 +19000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 47.6 +19000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 349.0 +19000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1342.3 +19000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +19000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +19000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +19000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +19000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +19000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +19000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 33.9 +19000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 58.9 +19000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 94.6 +19000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 157.5 +19000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 4.8 +19000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.7 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.4 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +19000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +19000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.3 +19000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 2.5 +19000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 3.0 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.7 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 47.9 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 664.6 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 322.1 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 72.0 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 118.2 +19000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 25.3 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.2 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 11.7 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 291.8 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 5.1 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.9 +19000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 4.4 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 1.1 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 11.5 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 42.9 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 189.7 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 60.0 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 36.3 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 30.8 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 7.0 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.1 +19000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 6.8 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 8.9 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 16.4 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 7.9 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 8.4 +19000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 7.0 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.7 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.4 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.4 +19000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +19000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 6.8 +19000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 27.7 +19000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.6 +19000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 6274.3 +19000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 16875.5 +19000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 9642.6 +19000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 15268.1 +19000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 13456.6 +19000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 22421.9 +19000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 19330.2 +19000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 10002.2 +19000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 1.0 +19000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 1054.3 +19000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 9670.7 +19000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 11531.7 +19000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 595.7 +19000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 11.6 +19000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 251.5 +19000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 92.6 +19000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 78.7 +19000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 3.8 +19000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 23.7 +19000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 125.7 +19000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 57.2 +19000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 35.8 +19000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 96.1 +19000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 588.9 +19000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 1136.7 +19000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 1235.2 +19000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 334.6 +19000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 2.5 +19000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +19000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 1.0 +19000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 711.8 +19000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 3364.1 +19000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 664.5 +19000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 29.7 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.9 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 22.1 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 80.3 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 42.5 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 25.9 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 201.1 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 251.3 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 626.3 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 633.6 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 265.5 +19000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +19000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +19000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.3 +19000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 50.6 +19000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 115.5 +19000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 45.8 +19000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 179.7 +19000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 848.3 +19000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 445.1 +19000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 126.6 +19000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 9.0 +19000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +19000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 691.1 +19000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 690.0 +19000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 531.9 +19000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 837.5 +19000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1386.2 +19000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 189.3 +19000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 698.6 +19000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 850.2 +19000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 290.2 +19000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 161.3 +19000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 83.8 +19000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +19000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +19000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +19000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +19000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +19000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +19000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 119.0 +19000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 286.0 +19000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 71.8 +19000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 57.1 +19000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 99.3 +19000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 28.1 +19000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 190.5 +19000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 212.0 +19000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 93.5 +19000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 23.4 +19000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.9 +19000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +19000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +19000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +19000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +19000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +19000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.0 +19000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.9 +19000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +19000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.1 +19000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 76.0 +19000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 52.6 +19000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 337.1 +19000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 439.1 +19000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 50.4 +19000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 45.2 +19000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.9 +19000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +19000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +19000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +19000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +19000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +19000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +19000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 43.9 +19000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 243.4 +19000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 354.3 +19000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 219.7 +19000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 609.1 +19000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 442.4 +19000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 194.3 +19000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 10.1 +19000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +19000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +19000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.7 +19000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 65.5 +19000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 75.1 +19000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 93.8 +19000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 89.7 +19000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 11.2 +19000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 37.7 +19000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 10.6 +19000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 35.0 +19000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 28.4 +19000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.3 +19000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.0 +19000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +19000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.3 +19000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +19000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.8 +19000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.8 +19000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.1 +19000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 15.0 +19000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 17.3 +19000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.7 +19000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +19000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +19000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +19000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 3.7 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 25.9 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 37.1 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 3.2 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 1.3 +19000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +19000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.9 +19000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +19000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +19000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +19000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +19000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 4.1 +19000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 7.4 +19000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 21.9 +19000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 7.3 +19000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 8.6 +19000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.9 +19000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +19000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +19000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +19000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1714.9 +19000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 6396.8 +19000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 9634.5 +19000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 2142.1 +19000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 4218.9 +19000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 8149.5 +19000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 6269.1 +19000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 10484.4 +19000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 7122.1 +19000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 15932.8 +19000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 14302.3 +19000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 6.8 +19000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 6.6 +19000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 62.8 +19000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +19000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 66.7 +19000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 26.9 +19000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 596.1 +19000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 2204.6 +19000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 8167.3 +19000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 537.3 +19000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 7.5 +19000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 5.4 +19000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 3.2 +19000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 13.7 +19000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 120.4 +19000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +19000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 2887.7 +19000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 10718.1 +19000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 4304.4 +19000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 72.6 +19000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 88.4 +19000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 43.4 +19000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 95.9 +19000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 52.5 +19000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 9.7 +19000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 85.1 +19000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 71.6 +19000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 587.1 +19000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 965.4 +19000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 712.1 +19000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 28.1 +19000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 53.3 +19000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 4.3 +19000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 15.2 +19000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 9.3 +19000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 95.1 +19000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +19000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.7 +19000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.9 +19000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.6 +19000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 9.8 +19000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 15.4 +19000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 28.0 +19000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 26.1 +19000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 110.1 +19000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 40.6 +19000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.9 +19000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.7 +19000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +19000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +19000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +19000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.7 +19000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 53.6 +19000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 220.6 +19000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 4.0 +19000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 10.1 +19000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.1 +19000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +19000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.1 +19000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/ID.POP b/NONROAD/NR08a/DATA/POP/ID.POP new file mode 100644 index 0000000..0a3e403 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/ID.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 16000 ID Idaho 719,151.3 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +16000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 147.8 +16000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 87.2 +16000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 93.6 +16000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 7463.1 +16000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 7533.2 +16000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 3381.2 +16000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 11911.8 +16000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 4895.6 +16000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1275.4 +16000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 10479.5 +16000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5161.5 +16000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 5296.5 +16000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 45837.5 +16000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1082.1 +16000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1523.4 +16000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.5 +16000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.3 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.8 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 31.3 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 59.2 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 466.7 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.8 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 11.5 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +16000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.4 +16000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.8 +16000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +16000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 11.5 +16000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +16000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.4 +16000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 4.2 +16000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 29.6 +16000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.4 +16000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 10.7 +16000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.8 +16000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.0 +16000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.8 +16000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.0 +16000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 884.8 +16000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.9 +16000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 83.1 +16000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 421.9 +16000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 129.9 +16000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 23.0 +16000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 32.0 +16000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 5.7 +16000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 14.9 +16000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.8 +16000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.2 +16000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.8 +16000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.8 +16000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.2 +16000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.8 +16000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 79.6 +16000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 232.9 +16000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 197.5 +16000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 98.9 +16000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 69.7 +16000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 2.8 +16000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +16000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 2.8 +16000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +16000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 34.6 +16000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 53.3 +16000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 15.4 +16000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 6.5 +16000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.6 +16000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +16000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.6 +16000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +16000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.2 +16000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 3.9 +16000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 3.9 +16000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +16000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +16000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 60.6 +16000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 59.3 +16000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 21.2 +16000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 24.2 +16000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 4.0 +16000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 3.4 +16000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 2.7 +16000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 4.0 +16000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 3.4 +16000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 2.7 +16000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 25.0 +16000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 511.2 +16000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 20.7 +16000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 6.3 +16000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 8.0 +16000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 5.3 +16000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.1 +16000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.9 +16000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.2 +16000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.1 +16000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.9 +16000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.2 +16000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 65.4 +16000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 313.3 +16000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 161.1 +16000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 33.8 +16000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 14.8 +16000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.1 +16000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.2 +16000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.1 +16000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.2 +16000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 8.9 +16000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 496.8 +16000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 830.1 +16000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 28.2 +16000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 21.6 +16000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.8 +16000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.2 +16000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.4 +16000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +16000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 3.0 +16000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.5 +16000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +16000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 3.0 +16000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.5 +16000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 8.0 +16000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 11.2 +16000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 20.5 +16000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 5.3 +16000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.7 +16000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.7 +16000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.2 +16000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.6 +16000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +16000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.2 +16000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +16000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.5 +16000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.6 +16000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +16000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.2 +16000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +16000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.5 +16000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +16000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 8.4 +16000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.3 +16000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +16000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 8.4 +16000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.3 +16000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.1 +16000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 42.9 +16000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +16000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.8 +16000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +16000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +16000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.8 +16000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +16000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.7 +16000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 34.1 +16000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 9.7 +16000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 5.3 +16000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 5.7 +16000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 9.7 +16000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 5.3 +16000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 5.7 +16000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 30.0 +16000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 99.1 +16000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 14.9 +16000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 18.2 +16000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.7 +16000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +16000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 3.6 +16000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 3.4 +16000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +16000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 8.6 +16000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 2.4 +16000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 55.0 +16000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 24.3 +16000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 50.7 +16000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.1 +16000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 24.3 +16000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 50.7 +16000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.1 +16000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 6.5 +16000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 23.0 +16000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 37.1 +16000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 2.7 +16000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 17.2 +16000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +16000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 122.6 +16000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 267.9 +16000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 705.1 +16000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 51.5 +16000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 327.7 +16000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.6 +16000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 169.8 +16000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 12.9 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 14.8 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 22.7 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 6.1 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 13.1 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 7.9 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 8.9 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 9.0 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.2 +16000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 7.9 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 8.9 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 9.0 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.2 +16000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +16000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +16000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.6 +16000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 250.9 +16000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 47.4 +16000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 24.1 +16000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 20.4 +16000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.8 +16000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.5 +16000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.4 +16000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.0 +16000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +16000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.8 +16000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.5 +16000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +16000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.0 +16000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +16000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +16000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +16000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 5.0 +16000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 3.0 +16000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +16000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 3.0 +16000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +16000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +16000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +16000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 5.0 +16000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.6 +16000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +16000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +16000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.6 +16000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.7 +16000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 2.9 +16000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +16000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +16000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.5 +16000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.6 +16000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 2.9 +16000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +16000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +16000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.2 +16000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +16000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +16000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 2946.9 +16000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 146457.4 +16000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 48.3 +16000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 126.6 +16000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 6293.2 +16000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.1 +16000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 273.3 +16000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1931.9 +16000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 13719.1 +16000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 42.2 +16000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 298.3 +16000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2118.1 +16000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 23832.4 +16000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +16000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 682.0 +16000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2399.6 +16000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 17814.0 +16000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 45113.4 +16000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +16000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +16000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 7195.3 +16000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 511.0 +16000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1028.8 +16000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +16000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +16000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +16000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 112.9 +16000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 30.2 +16000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.6 +16000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.5 +16000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 2637.4 +16000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 29289.0 +16000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +16000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +16000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2183.4 +16000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 813.4 +16000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1659.7 +16000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +16000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +16000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 124.5 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1217.7 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 38.4 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 41.7 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.2 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 21.7 +16000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 21.5 +16000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 8057.3 +16000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 12338.2 +16000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 20815.3 +16000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 972.9 +16000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 982.4 +16000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1504.3 +16000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2537.8 +16000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 118.6 +16000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 32.2 +16000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 4655.5 +16000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 3610.3 +16000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 17.1 +16000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.8 +16000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 115.0 +16000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 89.2 +16000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +16000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 119.0 +16000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 406.4 +16000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 179.7 +16000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.7 +16000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 436.0 +16000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 853.3 +16000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 115.0 +16000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 3604.4 +16000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 40050.1 +16000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 13053.3 +16000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.8 +16000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 89.0 +16000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 989.2 +16000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 322.4 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 7.2 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 29.6 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 55.8 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.2 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 18.0 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +16000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.3 +16000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.2 +16000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 18.0 +16000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +16000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.3 +16000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.5 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1468.7 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 390.7 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 871.8 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1136.4 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 225.2 +16000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.9 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 117.4 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 508.5 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1295.9 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 856.3 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 12.5 +16000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 8.2 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 129.1 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 559.0 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1424.7 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 941.4 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 13.8 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 9.0 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.9 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +16000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.4 +16000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 37.0 +16000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 31.9 +16000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 15.3 +16000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.6 +16000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 18.3 +16000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.1 +16000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +16000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +16000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +16000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 189.0 +16000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 60.5 +16000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.9 +16000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.3 +16000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 87.6 +16000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.3 +16000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 26.8 +16000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 320.9 +16000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 299.2 +16000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1165.1 +16000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 424.9 +16000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 146.0 +16000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 247.3 +16000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 60.2 +16000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 22.6 +16000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 23.7 +16000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 23.2 +16000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 10245.9 +16000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 25.6 +16000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 102.1 +16000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 57.9 +16000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 22.0 +16000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 107.0 +16000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 63.6 +16000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 56.3 +16000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.5 +16000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 7.2 +16000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.2 +16000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 42.4 +16000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 17.7 +16000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.1 +16000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.9 +16000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 10.8 +16000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.0 +16000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +16000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.8 +16000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 14.3 +16000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.7 +16000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.0 +16000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +16000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.5 +16000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 18.7 +16000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 26.6 +16000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.6 +16000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.0 +16000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +16000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 18.3 +16000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 455.1 +16000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 3201.9 +16000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 7688.8 +16000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1700.7 +16000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2433.6 +16000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +16000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +16000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +16000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +16000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +16000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +16000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 225.4 +16000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.7 +16000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 105.1 +16000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 93.5 +16000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 35.1 +16000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.8 +16000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +16000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 2.1 +16000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.6 +16000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 72.0 +16000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 24.2 +16000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 8.4 +16000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.4 +16000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.7 +16000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 576.3 +16000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1041.3 +16000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.6 +16000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +16000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1492.3 +16000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 936.0 +16000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 90.7 +16000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 52.8 +16000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 45.9 +16000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +16000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 21.4 +16000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.4 +16000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 3.3 +16000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 44.4 +16000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +16000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 21.4 +16000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.4 +16000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 3.1 +16000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.5 +16000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +16000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +16000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +16000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +16000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.3 +16000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 236.5 +16000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 220.8 +16000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 27.1 +16000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 29.3 +16000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 4.3 +16000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 23.8 +16000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 5.1 +16000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.4 +16000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 4.3 +16000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 23.1 +16000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 5.1 +16000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.3 +16000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.7 +16000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.1 +16000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.7 +16000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +16000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +16000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.2 +16000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +16000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.5 +16000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +16000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 31.3 +16000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 121.3 +16000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 447.0 +16000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 149.1 +16000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 35.2 +16000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 3.1 +16000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.7 +16000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 35.2 +16000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 3.1 +16000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.7 +16000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.7 +16000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3948.4 +16000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2441.9 +16000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 724.4 +16000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 136.2 +16000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.3 +16000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +16000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +16000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.3 +16000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +16000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +16000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 5.8 +16000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 27.4 +16000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 24.8 +16000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 19.6 +16000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 20.0 +16000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +16000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +16000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +16000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +16000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +16000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +16000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +16000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +16000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +16000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 500.3 +16000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 3176.6 +16000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 175.7 +16000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 56.9 +16000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 5.5 +16000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 2.3 +16000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 2.4 +16000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.3 +16000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.0 +16000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +16000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +16000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +16000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +16000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +16000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +16000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +16000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +16000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +16000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +16000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +16000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 2.4 +16000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 4.4 +16000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2.9 +16000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +16000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 2.9 +16000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.4 +16000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.2 +16000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +16000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +16000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.2 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 78.8 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 54.5 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.2 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.1 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 9.6 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 8.5 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 3.7 +16000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +16000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.6 +16000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 14.2 +16000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.3 +16000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 27.0 +16000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 16.8 +16000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 36.8 +16000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 25.8 +16000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 3.3 +16000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 13.9 +16000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 69.7 +16000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 31.1 +16000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 18.9 +16000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.7 +16000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 7.5 +16000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 14.1 +16000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 16.9 +16000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 30.3 +16000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 43.2 +16000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 40.0 +16000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 40.5 +16000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 110.8 +16000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 102.8 +16000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 35.1 +16000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 10.4 +16000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +16000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 2.8 +16000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 32.1 +16000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 41.6 +16000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 19.3 +16000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +16000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 6.0 +16000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 6.7 +16000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.5 +16000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 3.5 +16000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 4.6 +16000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +16000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 4.5 +16000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 5.3 +16000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 9.8 +16000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 3.0 +16000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.3 +16000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 5.2 +16000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 4.3 +16000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.5 +16000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 4.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.3 +16000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.3 +16000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.6 +16000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +16000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +16000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 11.3 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 26.5 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 14.2 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 224.5 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 68.9 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 4.9 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 2.9 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 2.3 +16000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.6 +16000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +16000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +16000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.4 +16000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.6 +16000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 31.0 +16000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 77.4 +16000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 128.8 +16000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 52.0 +16000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 16.2 +16000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 10.8 +16000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 5.5 +16000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.5 +16000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.3 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.5 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 19.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 19.5 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 31.5 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 32.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 47.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 41.0 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 23.6 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 5.5 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 3.0 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +16000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +16000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.4 +16000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.1 +16000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 4.3 +16000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 19.0 +16000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 39.4 +16000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 21.0 +16000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 16.3 +16000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 73.5 +16000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 274.5 +16000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 200.7 +16000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 53.2 +16000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.7 +16000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.0 +16000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +16000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.7 +16000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.7 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 3.0 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 16.9 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.6 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 5.4 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 7.8 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.0 +16000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 34.4 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 20.5 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 3.8 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 3.5 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 2.5 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 4.3 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 7.2 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 2.3 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.8 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.0 +16000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.2 +16000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +16000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 3.1 +16000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +16000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.7 +16000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 16.2 +16000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 60.8 +16000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 62.2 +16000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 38.3 +16000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.7 +16000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.5 +16000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +16000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +16000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +16000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.7 +16000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 5.5 +16000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 56.5 +16000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 94.6 +16000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 10.8 +16000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.7 +16000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +16000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 14.2 +16000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 30.2 +16000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 17.1 +16000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 8.3 +16000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 2.6 +16000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 13.3 +16000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 3.2 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.4 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.5 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.9 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 21.8 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 5.3 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 8.3 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 3.1 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 8.1 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.6 +16000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.1 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 26.0 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 28.9 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 57.3 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 327.8 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 168.4 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 8.7 +16000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 11.5 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 13.1 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 15.1 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 21.3 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 91.7 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 231.8 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 221.3 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 162.4 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 12.3 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 6.0 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.2 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 7.3 +16000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.3 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 13.3 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 26.7 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 14.3 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 266.2 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 940.6 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 625.9 +16000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 3.4 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 2.8 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 79.4 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 179.5 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 155.5 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 78.7 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 31.1 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 6.4 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 11.2 +16000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +16000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.7 +16000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 117.5 +16000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 260.4 +16000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 509.6 +16000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 201.5 +16000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1106.5 +16000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 727.4 +16000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 18.3 +16000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +16000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 2.5 +16000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 4.2 +16000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 10.1 +16000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 3.3 +16000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.3 +16000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 2.6 +16000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +16000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 5.0 +16000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 4.8 +16000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 3.4 +16000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 4.0 +16000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.9 +16000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.4 +16000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 2.7 +16000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.0 +16000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +16000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +16000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.7 +16000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.1 +16000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.2 +16000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.0 +16000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.0 +16000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 13.8 +16000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 12.3 +16000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 29.7 +16000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 5.4 +16000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +16000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.4 +16000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.5 +16000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 3.2 +16000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 44.7 +16000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 55.5 +16000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 13.1 +16000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 93.3 +16000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 33.2 +16000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.4 +16000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +16000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +16000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.2 +16000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.9 +16000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 70.5 +16000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 71.0 +16000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 25.5 +16000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 4.1 +16000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 5.3 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.2 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 7.2 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 17.4 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 11.7 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 11.4 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 41.8 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 47.0 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 12.6 +16000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.2 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 8.3 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.6 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.0 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.8 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 5.5 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 2.0 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 15.6 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 48.7 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 69.3 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 21.6 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 2.2 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.4 +16000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 1.3 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 6.6 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 2.0 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 9.2 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 3.5 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.5 +16000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +16000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 29.5 +16000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 90.6 +16000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 85.0 +16000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 21.8 +16000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 159.7 +16000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 614.3 +16000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +16000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 8.9 +16000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 15.5 +16000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 24.9 +16000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 41.4 +16000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.3 +16000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.2 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +16000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +16000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +16000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.7 +16000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.1 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.2 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 33.7 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 467.5 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 226.6 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 50.6 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 83.1 +16000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 17.8 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 8.2 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 205.3 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.6 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.1 +16000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.1 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.8 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 8.1 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 30.2 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 133.4 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 42.2 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 25.5 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 21.6 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.9 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.8 +16000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.8 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 6.2 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 11.5 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 5.6 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 5.9 +16000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.9 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.2 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.0 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +16000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +16000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +16000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.0 +16000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +16000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1127.9 +16000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3033.6 +16000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1733.4 +16000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2744.6 +16000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2419.0 +16000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4030.6 +16000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3474.8 +16000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1798.0 +16000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +16000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 189.5 +16000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1738.4 +16000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2073.0 +16000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 107.1 +16000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.1 +16000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 45.2 +16000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 16.7 +16000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 14.2 +16000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +16000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.3 +16000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 22.6 +16000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 10.3 +16000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.4 +16000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 17.3 +16000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 105.9 +16000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 204.3 +16000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 222.0 +16000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 60.2 +16000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +16000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +16000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +16000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 128.0 +16000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 604.7 +16000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 119.5 +16000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.3 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.0 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 14.4 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.6 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.7 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 36.2 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 45.2 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 112.6 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 113.9 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 47.7 +16000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +16000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +16000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +16000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 9.1 +16000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 20.8 +16000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 8.2 +16000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 32.3 +16000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 152.5 +16000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 80.0 +16000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 22.8 +16000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.6 +16000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +16000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 273.1 +16000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 272.7 +16000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 210.2 +16000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 330.9 +16000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 547.8 +16000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 74.8 +16000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 276.1 +16000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 336.0 +16000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 114.7 +16000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 63.8 +16000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 33.1 +16000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +16000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +16000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +16000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +16000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +16000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +16000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 47.0 +16000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 113.0 +16000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 28.4 +16000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 22.6 +16000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 39.2 +16000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 11.1 +16000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 75.3 +16000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 83.8 +16000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 36.9 +16000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 9.3 +16000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 4.7 +16000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +16000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +16000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +16000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +16000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +16000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.6 +16000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.9 +16000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.5 +16000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.8 +16000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 30.0 +16000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 20.8 +16000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 133.2 +16000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 173.5 +16000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 19.9 +16000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 17.9 +16000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 5.1 +16000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +16000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +16000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +16000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +16000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +16000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +16000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 17.4 +16000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 96.2 +16000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 140.0 +16000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 86.8 +16000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 240.7 +16000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 174.8 +16000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 76.8 +16000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 4.0 +16000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +16000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +16000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 3.0 +16000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 25.9 +16000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 29.7 +16000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 37.1 +16000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 35.4 +16000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 4.4 +16000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 14.9 +16000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 4.2 +16000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 13.8 +16000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 11.2 +16000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.7 +16000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.8 +16000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +16000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.9 +16000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.3 +16000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.7 +16000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.9 +16000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.2 +16000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 5.9 +16000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 6.8 +16000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.8 +16000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +16000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +16000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +16000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.3 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.4 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 20.2 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 140.2 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 201.0 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 17.4 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 7.1 +16000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +16000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.1 +16000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +16000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +16000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +16000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +16000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 3.2 +16000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 5.8 +16000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 17.3 +16000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 5.8 +16000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 6.8 +16000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.7 +16000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +16000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.6 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.3 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.7 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.0 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.6 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.3 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +16000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +16000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1073.3 +16000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 4003.6 +16000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 6030.1 +16000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1340.7 +16000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 2640.5 +16000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 5100.6 +16000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 3923.7 +16000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 6562.0 +16000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 4457.6 +16000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 9972.0 +16000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 8951.6 +16000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 4.3 +16000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 4.1 +16000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 39.3 +16000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +16000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 41.7 +16000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 16.8 +16000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 373.1 +16000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1379.8 +16000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 5111.8 +16000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 336.3 +16000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 4.7 +16000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 3.4 +16000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.0 +16000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 8.6 +16000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 75.4 +16000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +16000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1807.3 +16000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 6708.3 +16000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 2694.0 +16000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 45.5 +16000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 55.3 +16000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 27.1 +16000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 60.0 +16000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 32.9 +16000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 6.1 +16000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 53.2 +16000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 44.8 +16000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 367.4 +16000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 604.2 +16000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 445.7 +16000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 17.6 +16000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 33.3 +16000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 2.7 +16000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 9.5 +16000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 5.8 +16000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 59.5 +16000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +16000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.8 +16000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.9 +16000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.3 +16000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 4.6 +16000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.3 +16000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 13.3 +16000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 12.4 +16000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 52.2 +16000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 19.2 +16000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.3 +16000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.8 +16000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +16000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +16000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +16000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.8 +16000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 25.4 +16000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 104.5 +16000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.9 +16000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 4.8 +16000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.5 +16000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +16000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.5 +16000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/IL.POP b/NONROAD/NR08a/DATA/POP/IL.POP new file mode 100644 index 0000000..f916654 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/IL.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 17000 IL Illinois 5,157,657.1 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +17000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 245.3 +17000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 144.7 +17000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 155.4 +17000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 12382.8 +17000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 12499.0 +17000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 5610.0 +17000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 19764.0 +17000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 8122.8 +17000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 2116.2 +17000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 20580.1 +17000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 10136.5 +17000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 10401.5 +17000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 90018.0 +17000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 7367.2 +17000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 14273.5 +17000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 4.2 +17000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 2.4 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 7.2 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 293.1 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 555.1 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 4372.9 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 44.7 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.1 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 107.9 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.9 +17000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 40.8 +17000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 44.7 +17000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.1 +17000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 107.9 +17000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.9 +17000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 40.8 +17000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 27.8 +17000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 193.7 +17000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 9.0 +17000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 70.2 +17000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 11.8 +17000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 13.1 +17000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 11.8 +17000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 13.1 +17000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 5796.8 +17000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 12.7 +17000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 544.7 +17000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2763.9 +17000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 850.9 +17000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 150.8 +17000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 209.5 +17000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 37.4 +17000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 97.4 +17000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 11.5 +17000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 7.9 +17000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 5.4 +17000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 11.5 +17000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 7.9 +17000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 5.4 +17000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 521.7 +17000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1526.0 +17000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1294.1 +17000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 648.1 +17000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 456.6 +17000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 18.5 +17000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.7 +17000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 18.5 +17000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.7 +17000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 226.6 +17000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 349.0 +17000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 100.9 +17000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 42.5 +17000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.2 +17000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +17000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.2 +17000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +17000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.4 +17000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 25.6 +17000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 25.5 +17000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 1.0 +17000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 1.1 +17000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 396.7 +17000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 388.4 +17000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 138.8 +17000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 158.2 +17000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 26.4 +17000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 22.3 +17000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 17.5 +17000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 26.4 +17000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 22.3 +17000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 17.5 +17000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 163.6 +17000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 3349.3 +17000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 135.5 +17000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 41.4 +17000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 52.6 +17000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 34.5 +17000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 13.9 +17000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.7 +17000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.0 +17000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 13.9 +17000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.7 +17000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.0 +17000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 428.3 +17000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 2052.5 +17000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 1055.3 +17000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 221.3 +17000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 97.3 +17000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 26.8 +17000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.6 +17000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 26.8 +17000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.6 +17000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 58.1 +17000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 3255.0 +17000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 5438.0 +17000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 184.5 +17000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 141.4 +17000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 5.5 +17000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 7.8 +17000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.8 +17000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +17000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 19.4 +17000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 3.1 +17000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +17000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 19.4 +17000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 3.1 +17000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 52.4 +17000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 73.6 +17000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 134.3 +17000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 34.4 +17000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.3 +17000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.3 +17000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.2 +17000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.2 +17000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +17000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 27.5 +17000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +17000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.2 +17000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.2 +17000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +17000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 27.5 +17000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +17000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.2 +17000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +17000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 54.9 +17000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.8 +17000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +17000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 54.9 +17000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.8 +17000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 13.5 +17000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 280.8 +17000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.0 +17000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.9 +17000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +17000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.0 +17000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.9 +17000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +17000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 11.1 +17000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 223.1 +17000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 63.3 +17000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 35.0 +17000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 37.4 +17000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 63.3 +17000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 35.0 +17000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 37.4 +17000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 196.8 +17000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 649.2 +17000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 97.7 +17000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 119.3 +17000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 4.6 +17000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.7 +17000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 23.3 +17000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 22.2 +17000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 1.0 +17000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 112.9 +17000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 31.4 +17000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 724.3 +17000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 320.3 +17000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 667.2 +17000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 14.8 +17000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 320.3 +17000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 667.2 +17000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 14.8 +17000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 84.9 +17000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 303.2 +17000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 488.4 +17000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 35.7 +17000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 227.0 +17000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.1 +17000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1613.2 +17000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 3526.1 +17000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 9280.3 +17000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 677.8 +17000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 4313.1 +17000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 21.1 +17000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 2234.6 +17000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 170.2 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 194.9 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 298.2 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 80.6 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 172.8 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 103.8 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 117.3 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 119.0 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.2 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.4 +17000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 103.8 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 117.3 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 119.0 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.2 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.4 +17000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +17000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 1.0 +17000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 8.0 +17000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 3302.1 +17000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 623.9 +17000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 317.7 +17000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 268.6 +17000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 24.0 +17000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 33.3 +17000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 5.4 +17000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.7 +17000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +17000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 24.0 +17000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 33.3 +17000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.1 +17000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.7 +17000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +17000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.2 +17000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.7 +17000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 65.6 +17000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 39.9 +17000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.5 +17000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 39.9 +17000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.5 +17000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 1.0 +17000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.5 +17000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 46.6 +17000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 5.2 +17000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.8 +17000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.6 +17000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 21.2 +17000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 9.7 +17000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 38.1 +17000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +17000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.6 +17000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 20.0 +17000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 7.6 +17000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 37.6 +17000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +17000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.2 +17000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 2.1 +17000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.5 +17000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +17000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 26588.3 +17000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 1321402.5 +17000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 435.7 +17000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 973.6 +17000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 48384.2 +17000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 16.0 +17000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 2465.6 +17000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 17430.2 +17000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 123780.1 +17000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 324.4 +17000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2293.2 +17000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 16284.9 +17000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 215026.0 +17000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +17000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 5243.5 +17000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 18449.3 +17000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 160725.8 +17000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 407032.8 +17000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +17000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +17000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 55320.0 +17000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 3928.5 +17000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 9282.2 +17000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +17000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +17000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +17000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 867.8 +17000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 232.1 +17000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 12.3 +17000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 26.6 +17000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 23795.8 +17000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 264258.2 +17000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +17000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +17000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 16787.1 +17000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 6254.0 +17000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 14974.3 +17000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +17000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +17000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 957.3 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 9362.3 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 294.9 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 320.8 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 24.4 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 166.6 +17000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 165.2 +17000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 72284.8 +17000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 110690.5 +17000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 186740.9 +17000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 8728.0 +17000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 7547.4 +17000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 11557.3 +17000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 19497.8 +17000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 911.3 +17000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 290.3 +17000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 42004.1 +17000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 32573.9 +17000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 154.1 +17000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 6.1 +17000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 884.1 +17000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 685.6 +17000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.3 +17000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 914.9 +17000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 3124.9 +17000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1381.7 +17000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 20.7 +17000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3352.2 +17000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 6560.7 +17000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1037.2 +17000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 32520.8 +17000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 361349.8 +17000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 117772.2 +17000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 21.8 +17000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 684.5 +17000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 7605.4 +17000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2478.8 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.1 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 55.2 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 227.6 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 429.0 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 32.4 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 138.2 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +17000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 33.1 +17000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 32.4 +17000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 138.2 +17000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +17000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 33.1 +17000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 3.9 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 11292.0 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 3003.7 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 6703.0 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 8736.9 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1731.1 +17000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 14.9 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1059.5 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 4587.8 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 11692.3 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 7725.8 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 113.1 +17000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 74.1 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 992.5 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4298.1 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 10953.8 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 7237.8 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 106.0 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 69.5 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 6.8 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.3 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.8 +17000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.7 +17000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 193.4 +17000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 166.9 +17000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 80.1 +17000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 8.3 +17000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 95.9 +17000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 10.8 +17000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +17000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.7 +17000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.5 +17000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 988.8 +17000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 316.5 +17000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 35.9 +17000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 6.6 +17000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 458.3 +17000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 6.7 +17000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 140.1 +17000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1678.7 +17000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1565.1 +17000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 6094.6 +17000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 2222.7 +17000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 763.5 +17000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1293.6 +17000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 315.1 +17000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 118.2 +17000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 123.8 +17000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 121.5 +17000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 53596.3 +17000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 133.9 +17000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 534.3 +17000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 302.7 +17000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 115.1 +17000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 559.5 +17000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 332.6 +17000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 294.7 +17000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 23.4 +17000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 37.9 +17000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 6.0 +17000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 221.9 +17000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 92.7 +17000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 6.0 +17000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 10.0 +17000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 56.7 +17000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 15.6 +17000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +17000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 35.6 +17000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 75.1 +17000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 34.8 +17000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 15.9 +17000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.9 +17000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 18.5 +17000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 97.9 +17000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 139.3 +17000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 13.7 +17000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 16.0 +17000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 3.3 +17000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 191.0 +17000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 4741.7 +17000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 33358.8 +17000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 80104.5 +17000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 17718.7 +17000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 25354.0 +17000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +17000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +17000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +17000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +17000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +17000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +17000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 2348.0 +17000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 17.6 +17000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 1095.1 +17000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 974.0 +17000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 365.4 +17000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 8.4 +17000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 1.4 +17000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 22.2 +17000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 37.6 +17000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 750.3 +17000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 252.5 +17000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 87.2 +17000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 35.6 +17000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 18.0 +17000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 6004.4 +17000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 10848.3 +17000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 6.6 +17000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 1.4 +17000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 15546.8 +17000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 9751.2 +17000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 944.5 +17000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 550.4 +17000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 478.5 +17000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 4.4 +17000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 222.7 +17000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 14.8 +17000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 34.3 +17000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 462.8 +17000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 4.4 +17000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 222.5 +17000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 14.8 +17000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 32.2 +17000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 15.7 +17000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.2 +17000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 2.2 +17000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 2.5 +17000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 2.6 +17000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 2.8 +17000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 2464.0 +17000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 2300.0 +17000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 282.1 +17000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 305.7 +17000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 44.8 +17000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 247.6 +17000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 52.7 +17000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 24.7 +17000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 44.8 +17000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 240.5 +17000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 52.7 +17000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 13.2 +17000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 7.1 +17000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 11.5 +17000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 7.3 +17000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 4.3 +17000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 1.2 +17000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 12.8 +17000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 2.1 +17000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 5.5 +17000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.8 +17000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 325.8 +17000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 1263.3 +17000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 4656.8 +17000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 1553.5 +17000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 366.7 +17000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 32.6 +17000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 7.4 +17000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 366.7 +17000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 32.6 +17000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 7.4 +17000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 7.7 +17000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 41136.0 +17000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 25440.4 +17000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 7547.2 +17000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 1419.3 +17000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 24.0 +17000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.8 +17000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +17000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 24.0 +17000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.8 +17000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +17000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 60.0 +17000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 285.5 +17000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 258.6 +17000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 203.8 +17000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 208.6 +17000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 3.1 +17000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 1.3 +17000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 3.1 +17000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +17000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 3.1 +17000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 1.3 +17000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 3.1 +17000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +17000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +17000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 175.6 +17000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1114.7 +17000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 61.7 +17000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 20.0 +17000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 1.9 +17000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.8 +17000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 52.3 +17000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 6.0 +17000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 21.2 +17000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 1.1 +17000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.2 +17000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.4 +17000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.3 +17000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 5.7 +17000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 16.7 +17000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.2 +17000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.4 +17000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.3 +17000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 5.7 +17000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 16.7 +17000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 38.8 +17000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 71.1 +17000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 47.2 +17000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +17000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 46.3 +17000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 6.3 +17000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 19.6 +17000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.7 +17000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.9 +17000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 20.3 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 738.0 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 510.3 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.7 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 10.8 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 10.7 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 90.4 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 79.6 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 35.1 +17000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 1.3 +17000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 3.8 +17000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 93.1 +17000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 8.6 +17000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 176.8 +17000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 110.1 +17000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 241.1 +17000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 169.3 +17000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 21.8 +17000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 91.2 +17000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 456.5 +17000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 203.9 +17000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 124.0 +17000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 11.5 +17000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 49.2 +17000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 92.3 +17000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 110.5 +17000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 198.2 +17000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 282.7 +17000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 262.0 +17000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 265.3 +17000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 726.1 +17000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 673.3 +17000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 229.8 +17000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 68.2 +17000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +17000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 18.3 +17000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 210.5 +17000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 272.6 +17000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 126.5 +17000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.2 +17000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 39.4 +17000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 44.1 +17000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 3.4 +17000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 22.7 +17000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 30.3 +17000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +17000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 29.7 +17000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 35.0 +17000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 63.9 +17000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 19.8 +17000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.9 +17000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.7 +17000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 2.3 +17000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 34.0 +17000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 28.5 +17000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 9.8 +17000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.5 +17000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 27.0 +17000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 8.3 +17000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.4 +17000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 8.3 +17000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.7 +17000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.7 +17000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +17000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.6 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 73.9 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 173.9 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 92.9 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1471.1 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 451.3 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.8 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 32.2 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 18.7 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 14.9 +17000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.6 +17000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +17000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +17000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.7 +17000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.7 +17000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 203.4 +17000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 507.1 +17000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 843.6 +17000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 340.7 +17000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 105.9 +17000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 70.7 +17000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 35.9 +17000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 3.1 +17000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.4 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 2.1 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 3.3 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 7.3 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 125.3 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 127.5 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 206.6 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 210.1 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 308.8 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 268.5 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 154.7 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 36.2 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 19.8 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.4 +17000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.7 +17000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.5 +17000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 13.6 +17000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 27.9 +17000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 124.5 +17000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 257.8 +17000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 137.5 +17000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 106.6 +17000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 481.3 +17000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1798.2 +17000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1314.7 +17000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 348.3 +17000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 11.1 +17000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 12.8 +17000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +17000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 4.9 +17000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 11.3 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 19.3 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 110.9 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 4.0 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 35.6 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 51.2 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 6.3 +17000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 225.6 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 134.4 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 25.0 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 22.7 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 16.5 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 28.4 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 47.4 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 15.0 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 5.3 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 6.7 +17000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.4 +17000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +17000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 20.5 +17000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.3 +17000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 10.9 +17000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 105.8 +17000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 398.5 +17000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 407.6 +17000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 251.0 +17000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 10.8 +17000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 3.1 +17000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +17000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +17000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.6 +17000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 4.7 +17000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 36.2 +17000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 370.2 +17000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 620.0 +17000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 70.9 +17000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 4.3 +17000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 1.0 +17000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 93.1 +17000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 197.5 +17000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 111.8 +17000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 54.3 +17000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 17.2 +17000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 87.0 +17000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 21.2 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.4 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 3.3 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 12.5 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 142.8 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 34.5 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 54.1 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 20.4 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 53.1 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 4.0 +17000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.3 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.6 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 7.3 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 170.1 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 189.3 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 375.3 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 2147.4 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 1103.1 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 57.2 +17000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 75.2 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.7 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 86.0 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 98.8 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 139.7 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 600.6 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1518.8 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1449.9 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 1063.8 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 80.4 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 39.2 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 8.1 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 48.0 +17000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.7 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 87.4 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 174.8 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 93.4 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1744.2 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 6162.3 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 4100.2 +17000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 22.3 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 18.1 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 520.4 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 1176.0 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 1018.4 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 515.7 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 203.4 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 42.1 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 73.2 +17000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +17000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 4.7 +17000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 769.5 +17000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1706.1 +17000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 3338.4 +17000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1320.1 +17000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 7249.0 +17000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 4765.4 +17000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 120.0 +17000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +17000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 16.2 +17000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 27.7 +17000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 66.2 +17000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 21.7 +17000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 2.1 +17000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 17.2 +17000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.4 +17000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 32.6 +17000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 31.2 +17000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 22.3 +17000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 25.9 +17000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 5.6 +17000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.7 +17000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 17.6 +17000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 6.4 +17000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 1.1 +17000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.5 +17000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 4.7 +17000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 13.6 +17000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.2 +17000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 13.2 +17000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 13.0 +17000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 90.3 +17000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 80.7 +17000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 194.8 +17000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 35.5 +17000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +17000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.4 +17000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 6.3 +17000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 42.0 +17000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 588.4 +17000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 730.9 +17000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 172.8 +17000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1228.3 +17000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 436.6 +17000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 5.3 +17000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.8 +17000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +17000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 2.1 +17000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 25.0 +17000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 927.4 +17000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 934.3 +17000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 335.5 +17000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 54.6 +17000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 69.7 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 15.6 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.7 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 95.2 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 228.9 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 154.4 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 149.5 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 550.7 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 618.4 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 166.3 +17000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.8 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 108.7 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 20.5 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 13.3 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 23.1 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 73.0 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 26.6 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 205.8 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 640.8 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 911.6 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 284.4 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 29.1 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 4.8 +17000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 17.3 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 87.2 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 26.3 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 121.0 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 46.0 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 6.4 +17000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +17000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 276.2 +17000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 849.2 +17000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 796.2 +17000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 204.2 +17000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1496.5 +17000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 5756.1 +17000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +17000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +17000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +17000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.6 +17000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +17000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +17000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 117.4 +17000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 203.7 +17000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 327.1 +17000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 544.7 +17000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 16.6 +17000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 9.1 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.2 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +17000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +17000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.5 +17000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 13.2 +17000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 16.5 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 9.2 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 259.0 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3594.7 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1742.3 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 389.2 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 639.1 +17000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 136.6 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.1 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 63.2 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1578.3 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 27.4 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 15.8 +17000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 24.0 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.4 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 5.9 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 62.3 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 232.2 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1025.9 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 324.8 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 196.1 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 166.3 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 37.7 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 6.1 +17000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.7 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 36.9 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 48.0 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 88.4 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 43.0 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.8 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 45.2 +17000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 37.8 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.0 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 9.1 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 7.6 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.1 +17000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.4 +17000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 6.4 +17000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 26.0 +17000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.6 +17000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 5900.0 +17000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 15868.7 +17000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 9067.4 +17000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 14357.2 +17000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 12653.8 +17000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 21084.3 +17000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 18177.0 +17000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 9405.5 +17000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.9 +17000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 991.4 +17000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 9093.7 +17000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 10843.7 +17000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 560.1 +17000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 10.9 +17000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 236.5 +17000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 87.1 +17000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 74.0 +17000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 3.6 +17000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 22.3 +17000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 118.2 +17000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 53.8 +17000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 33.6 +17000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 90.4 +17000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 553.8 +17000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 1068.9 +17000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 1161.5 +17000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 314.7 +17000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 2.3 +17000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +17000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.9 +17000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 669.4 +17000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 3163.4 +17000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 624.9 +17000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 28.0 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.8 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 20.8 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 75.5 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 40.0 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 24.3 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 189.1 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 236.3 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 588.9 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 595.8 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 249.6 +17000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +17000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +17000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.3 +17000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 47.6 +17000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 108.6 +17000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 43.0 +17000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 169.0 +17000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 797.7 +17000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 418.5 +17000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 119.1 +17000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 8.5 +17000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +17000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 2845.2 +17000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 2840.8 +17000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 2189.7 +17000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 3447.8 +17000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 5706.8 +17000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 779.5 +17000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 2876.0 +17000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 3500.1 +17000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 1194.7 +17000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 664.2 +17000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 345.0 +17000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +17000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +17000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +17000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +17000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +17000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.3 +17000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 489.9 +17000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 1177.6 +17000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 295.4 +17000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 235.0 +17000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 408.7 +17000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 115.8 +17000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 784.1 +17000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 872.8 +17000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 384.8 +17000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 96.4 +17000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 48.9 +17000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +17000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +17000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +17000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +17000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +17000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 16.7 +17000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 40.7 +17000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 5.5 +17000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 8.5 +17000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 312.9 +17000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 216.5 +17000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 1388.0 +17000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1807.8 +17000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 207.3 +17000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 186.1 +17000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 53.2 +17000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +17000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +17000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +17000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +17000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +17000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +17000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 180.8 +17000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 1002.0 +17000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 1458.7 +17000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 904.6 +17000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 2507.7 +17000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1821.4 +17000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 799.7 +17000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 41.7 +17000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.9 +17000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +17000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 31.6 +17000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 269.5 +17000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 309.4 +17000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 386.3 +17000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 369.2 +17000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 46.2 +17000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 155.3 +17000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 43.4 +17000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 144.3 +17000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 116.7 +17000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 17.9 +17000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 8.3 +17000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 4.2 +17000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 9.5 +17000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 3.0 +17000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 27.8 +17000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 40.3 +17000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 12.7 +17000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 61.7 +17000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 71.3 +17000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 19.2 +17000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 2.5 +17000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.6 +17000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +17000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 7.1 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 49.2 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 70.5 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 6.1 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 2.5 +17000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +17000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 65.6 +17000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.2 +17000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.8 +17000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 2.4 +17000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 3.3 +17000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 68.6 +17000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 125.0 +17000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 369.2 +17000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 123.9 +17000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 144.8 +17000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 15.4 +17000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.9 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.8 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 21.7 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 42.8 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 110.8 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 195.8 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 208.6 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 65.4 +17000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 32.4 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 2.2 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.1 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 10.2 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.5 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 21.2 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 10.8 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 15.6 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 9.9 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 4.1 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.8 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 2.2 +17000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +17000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4504.0 +17000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 16800.9 +17000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 25304.7 +17000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5626.1 +17000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 11080.8 +17000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 21404.4 +17000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 16465.5 +17000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 27536.8 +17000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 18705.9 +17000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 41846.9 +17000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 37564.5 +17000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 17.9 +17000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 17.3 +17000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 165.0 +17000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +17000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 175.2 +17000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 70.6 +17000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1565.5 +17000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5790.2 +17000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 21451.1 +17000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1411.3 +17000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 19.7 +17000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 14.1 +17000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 8.3 +17000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 36.0 +17000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 316.3 +17000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +17000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 7584.3 +17000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 28150.7 +17000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 11305.3 +17000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 190.7 +17000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 232.1 +17000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 113.9 +17000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 252.0 +17000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 137.9 +17000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 25.5 +17000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 223.4 +17000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 188.1 +17000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1542.0 +17000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2535.6 +17000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1870.4 +17000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 73.8 +17000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 139.9 +17000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 11.4 +17000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 40.0 +17000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 24.5 +17000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 249.7 +17000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.7 +17000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 3.9 +17000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 4.3 +17000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 6.1 +17000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 22.4 +17000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 35.1 +17000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 64.1 +17000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 59.7 +17000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 252.1 +17000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 92.9 +17000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 15.7 +17000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 3.9 +17000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.9 +17000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 1.4 +17000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.5 +17000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 3.8 +17000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 122.8 +17000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 504.9 +17000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 9.1 +17000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 23.1 +17000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 7.2 +17000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +17000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 7.2 +17000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/IN.POP b/NONROAD/NR08a/DATA/POP/IN.POP new file mode 100644 index 0000000..7d67bfa --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/IN.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 18000 IN Indiana 2,696,555.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +18000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 81.0 +18000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 47.8 +18000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 51.3 +18000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 4089.5 +18000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 4127.9 +18000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1852.7 +18000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 6527.2 +18000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 2682.6 +18000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 698.9 +18000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 17450.0 +18000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 8594.8 +18000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 8819.5 +18000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 76326.8 +18000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 4951.0 +18000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6984.5 +18000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.1 +18000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.2 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.5 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 143.4 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 271.6 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2139.8 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 21.9 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 52.8 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +18000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 20.0 +18000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 21.9 +18000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +18000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 52.8 +18000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +18000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 20.0 +18000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 18.2 +18000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 127.1 +18000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 5.9 +18000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 46.0 +18000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 7.8 +18000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 8.6 +18000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 7.8 +18000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 8.6 +18000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3802.5 +18000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 8.3 +18000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 357.3 +18000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1813.0 +18000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 558.1 +18000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 98.9 +18000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 137.4 +18000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 24.5 +18000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 63.9 +18000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 7.5 +18000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 5.2 +18000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 3.6 +18000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 7.5 +18000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 5.2 +18000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 3.6 +18000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 342.2 +18000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1001.0 +18000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 848.9 +18000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 425.2 +18000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 299.5 +18000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 12.2 +18000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.1 +18000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 12.2 +18000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.1 +18000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 148.6 +18000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 228.9 +18000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 66.2 +18000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 27.9 +18000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.8 +18000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.0 +18000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.8 +18000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.0 +18000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.9 +18000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 16.8 +18000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 16.7 +18000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.6 +18000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.7 +18000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 260.2 +18000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 254.7 +18000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 91.0 +18000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 103.8 +18000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 17.3 +18000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 14.6 +18000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 11.5 +18000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 17.3 +18000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 14.6 +18000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 11.5 +18000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 107.3 +18000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2197.0 +18000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 88.9 +18000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 27.2 +18000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 34.5 +18000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 22.6 +18000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 9.1 +18000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 8.3 +18000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 13.8 +18000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 9.1 +18000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 8.3 +18000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 13.8 +18000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 281.0 +18000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1346.3 +18000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 692.2 +18000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 145.2 +18000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 63.8 +18000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 17.6 +18000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 9.6 +18000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 17.6 +18000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 9.6 +18000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 38.1 +18000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2135.1 +18000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 3567.1 +18000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 121.0 +18000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 92.7 +18000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.6 +18000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 5.1 +18000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.8 +18000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +18000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 12.7 +18000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.1 +18000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +18000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 12.7 +18000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.1 +18000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 34.4 +18000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 48.3 +18000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 88.1 +18000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 22.6 +18000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.8 +18000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.8 +18000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.8 +18000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.7 +18000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +18000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 18.0 +18000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +18000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.1 +18000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.7 +18000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +18000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 18.0 +18000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +18000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.1 +18000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.8 +18000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 36.0 +18000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.2 +18000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.8 +18000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 36.0 +18000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.2 +18000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 8.9 +18000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 184.2 +18000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.7 +18000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.2 +18000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +18000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.7 +18000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.2 +18000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +18000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 7.3 +18000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 146.4 +18000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 41.5 +18000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 22.9 +18000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 24.5 +18000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 41.5 +18000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 22.9 +18000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 24.5 +18000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 129.1 +18000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 425.9 +18000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 64.1 +18000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 78.3 +18000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 3.0 +18000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.5 +18000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 15.3 +18000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 14.6 +18000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.7 +18000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 87.1 +18000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 24.2 +18000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 558.6 +18000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 247.0 +18000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 514.6 +18000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 11.4 +18000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 247.0 +18000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 514.6 +18000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 11.4 +18000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 65.5 +18000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 233.8 +18000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 376.7 +18000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 27.5 +18000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 175.1 +18000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.9 +18000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1244.2 +18000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 2719.5 +18000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 7157.5 +18000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 522.7 +18000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 3326.5 +18000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 16.3 +18000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1723.4 +18000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 131.2 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 150.3 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 230.0 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 62.2 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 133.2 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 80.0 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 90.5 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 91.7 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.9 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.9 +18000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 80.0 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 90.5 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 91.7 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.9 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.9 +18000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +18000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.8 +18000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 6.2 +18000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 2546.7 +18000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 481.2 +18000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 245.1 +18000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 207.1 +18000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 18.5 +18000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 25.7 +18000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.1 +18000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 9.8 +18000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +18000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 18.5 +18000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 25.7 +18000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 3.2 +18000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 9.8 +18000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +18000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.0 +18000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.3 +18000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 50.6 +18000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 30.7 +18000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.2 +18000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 30.7 +18000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.2 +18000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.5 +18000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +18000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 22.8 +18000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.6 +18000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.9 +18000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +18000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 16.3 +18000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 7.5 +18000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 29.4 +18000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +18000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +18000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 15.4 +18000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 5.8 +18000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 29.0 +18000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +18000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.9 +18000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.6 +18000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.4 +18000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +18000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 13962.0 +18000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 693892.2 +18000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 228.8 +18000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 573.8 +18000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 28518.9 +18000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 9.4 +18000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1294.7 +18000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 9152.9 +18000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 64999.2 +18000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 191.2 +18000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1351.7 +18000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 9598.8 +18000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 112914.0 +18000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +18000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 3090.6 +18000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 10874.5 +18000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 84400.0 +18000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 213740.2 +18000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +18000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +18000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 32607.0 +18000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2315.6 +18000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4874.2 +18000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +18000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +18000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +18000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 511.5 +18000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 136.8 +18000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 7.2 +18000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 15.7 +18000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 12495.6 +18000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 138766.7 +18000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +18000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +18000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 9894.7 +18000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3686.3 +18000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7863.3 +18000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +18000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +18000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 564.3 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 5518.4 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 173.8 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 189.1 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 14.4 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 98.2 +18000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 97.4 +18000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 35201.0 +18000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 53903.6 +18000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 90938.4 +18000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 4250.3 +18000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 4144.0 +18000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 6345.8 +18000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 10705.7 +18000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 500.4 +18000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 152.4 +18000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 22057.1 +18000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 17105.2 +18000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 80.9 +18000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.6 +18000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 521.1 +18000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 404.1 +18000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.9 +18000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 539.2 +18000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1841.9 +18000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 814.4 +18000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 12.2 +18000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1975.9 +18000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3867.0 +18000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 544.7 +18000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 17077.3 +18000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 189751.3 +18000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 61844.3 +18000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 12.9 +18000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 403.5 +18000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 4482.8 +18000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1461.0 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.7 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 32.6 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 134.2 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 252.9 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 19.1 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 81.5 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +18000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 19.5 +18000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 19.1 +18000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 81.5 +18000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +18000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 19.5 +18000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.3 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 6655.8 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1770.4 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3950.9 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 5149.8 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1020.4 +18000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 8.8 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 556.3 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2409.1 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 6139.8 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 4057.0 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 59.4 +18000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 38.9 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 585.0 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2533.4 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 6456.4 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 4266.2 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 62.5 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 41.0 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 4.0 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.4 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.5 +18000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.6 +18000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 102.3 +18000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 88.3 +18000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 42.4 +18000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 4.4 +18000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 50.7 +18000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 5.7 +18000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +18000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.4 +18000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.8 +18000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 523.1 +18000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 167.4 +18000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 19.0 +18000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 3.5 +18000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 242.5 +18000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 3.5 +18000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 74.1 +18000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 888.2 +18000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 828.1 +18000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 3224.5 +18000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1176.0 +18000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 403.9 +18000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 684.4 +18000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 166.7 +18000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 62.5 +18000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 65.5 +18000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 64.3 +18000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 28356.2 +18000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 70.8 +18000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 282.7 +18000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 160.2 +18000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 60.9 +18000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 296.0 +18000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 176.0 +18000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 155.9 +18000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 12.4 +18000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 20.0 +18000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 3.2 +18000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 117.4 +18000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 49.1 +18000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 3.2 +18000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 5.3 +18000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 30.0 +18000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 8.2 +18000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +18000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 18.8 +18000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 39.7 +18000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 18.4 +18000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 8.4 +18000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.5 +18000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 9.8 +18000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 51.8 +18000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 73.7 +18000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 7.3 +18000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 8.4 +18000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.7 +18000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 78.3 +18000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1942.8 +18000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 13667.8 +18000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 32820.4 +18000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 7259.7 +18000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 10388.0 +18000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +18000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +18000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +18000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +18000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +18000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +18000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 962.0 +18000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 7.2 +18000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 448.7 +18000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 399.1 +18000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 149.7 +18000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.5 +18000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.6 +18000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 9.1 +18000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 15.4 +18000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 307.4 +18000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 103.5 +18000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 35.7 +18000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 14.6 +18000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 7.4 +18000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2460.1 +18000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4444.8 +18000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.7 +18000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.6 +18000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 6369.8 +18000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3995.3 +18000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 387.0 +18000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 225.5 +18000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 196.1 +18000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.8 +18000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 91.2 +18000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 6.1 +18000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 14.1 +18000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 189.6 +18000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.8 +18000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 91.1 +18000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 6.1 +18000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 13.2 +18000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 6.4 +18000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +18000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.9 +18000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.0 +18000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.1 +18000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.1 +18000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1009.5 +18000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 942.4 +18000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 115.6 +18000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 125.3 +18000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 18.3 +18000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 101.5 +18000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 21.6 +18000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 10.1 +18000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 18.3 +18000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 98.5 +18000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 21.6 +18000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 5.4 +18000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.9 +18000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.7 +18000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 3.0 +18000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.8 +18000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.5 +18000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 5.2 +18000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.9 +18000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.3 +18000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.7 +18000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 133.5 +18000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 517.6 +18000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1908.0 +18000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 636.5 +18000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 150.2 +18000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 13.3 +18000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 3.0 +18000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 150.2 +18000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 13.3 +18000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 3.0 +18000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 3.2 +18000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 16854.2 +18000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 10423.5 +18000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 3092.2 +18000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 581.5 +18000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 9.8 +18000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.8 +18000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +18000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 9.8 +18000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.8 +18000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +18000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 24.6 +18000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 117.0 +18000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 106.0 +18000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 83.5 +18000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 85.5 +18000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.3 +18000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +18000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.3 +18000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +18000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.3 +18000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +18000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.3 +18000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +18000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +18000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 241.0 +18000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1530.4 +18000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 84.6 +18000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 27.4 +18000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.7 +18000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.1 +18000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 8.3 +18000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.9 +18000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 3.4 +18000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.2 +18000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +18000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +18000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +18000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +18000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.7 +18000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +18000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +18000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +18000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +18000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.7 +18000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 7.7 +18000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 14.1 +18000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 9.4 +18000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +18000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 9.2 +18000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.3 +18000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 3.9 +18000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +18000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.4 +18000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 9.9 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 361.1 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 249.7 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.8 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 5.3 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 5.3 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 44.2 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 38.9 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 17.2 +18000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +18000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.5 +18000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 61.1 +18000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 5.7 +18000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 116.0 +18000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 72.2 +18000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 158.2 +18000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 111.1 +18000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 14.3 +18000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 59.8 +18000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 299.4 +18000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 133.8 +18000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 81.4 +18000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 7.5 +18000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 32.2 +18000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 60.5 +18000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 72.5 +18000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 130.0 +18000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 185.5 +18000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 171.9 +18000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 174.0 +18000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 476.3 +18000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 441.6 +18000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 150.8 +18000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 44.7 +18000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +18000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 12.0 +18000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 138.1 +18000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 178.8 +18000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 83.0 +18000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +18000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 25.8 +18000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 29.0 +18000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.2 +18000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 14.9 +18000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 19.9 +18000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +18000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 19.5 +18000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 23.0 +18000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 41.9 +18000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 13.0 +18000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.6 +18000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.5 +18000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.5 +18000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 22.3 +18000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 18.7 +18000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 6.4 +18000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +18000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 17.7 +18000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 5.4 +18000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +18000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 5.4 +18000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.4 +18000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.5 +18000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +18000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.4 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 48.5 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 114.1 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 60.9 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 964.9 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 296.0 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.5 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 21.2 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 12.3 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 9.8 +18000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.4 +18000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +18000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +18000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.8 +18000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.4 +18000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 133.4 +18000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 332.6 +18000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 553.4 +18000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 223.5 +18000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 69.4 +18000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 46.4 +18000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 23.6 +18000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.1 +18000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.4 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.2 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 4.8 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 82.2 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 83.6 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 135.5 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 137.8 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 202.6 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 176.1 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 101.5 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 23.7 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 13.0 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.3 +18000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.5 +18000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.6 +18000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 8.9 +18000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 18.3 +18000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 81.6 +18000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 169.1 +18000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 90.2 +18000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 69.9 +18000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 315.7 +18000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1179.6 +18000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 862.4 +18000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 228.4 +18000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 7.3 +18000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 8.4 +18000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.3 +18000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 3.2 +18000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 7.4 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 12.7 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 72.8 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.6 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 23.3 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 33.6 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 4.1 +18000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 148.0 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 88.2 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 16.4 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 14.9 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 10.8 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 18.6 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 31.1 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 9.9 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 3.5 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 4.4 +18000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.9 +18000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +18000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 13.5 +18000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +18000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 7.2 +18000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 69.4 +18000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 261.4 +18000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 267.3 +18000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 164.7 +18000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 7.1 +18000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.0 +18000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +18000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +18000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.4 +18000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 3.1 +18000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 23.8 +18000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 242.8 +18000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 406.7 +18000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 46.5 +18000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.8 +18000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.6 +18000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 61.0 +18000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 129.6 +18000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 73.3 +18000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 35.6 +18000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 11.3 +18000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 57.0 +18000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 13.9 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.6 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.2 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 8.2 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 93.6 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 22.6 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 35.5 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 13.4 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 34.8 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.6 +18000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.4 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 4.8 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 111.6 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 124.2 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 246.2 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1408.6 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 723.6 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 37.5 +18000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 49.4 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.1 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 56.4 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 64.8 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 91.6 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 394.0 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 996.3 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 951.1 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 697.8 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 52.7 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 25.7 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 5.3 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 31.5 +18000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.1 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 57.3 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 114.6 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 61.2 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1144.1 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 4042.2 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2689.6 +18000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 14.6 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 11.9 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 341.3 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 771.4 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 668.0 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 338.3 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 133.4 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 27.6 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 48.0 +18000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +18000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 3.1 +18000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 504.7 +18000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1119.1 +18000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2189.8 +18000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 865.9 +18000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 4755.0 +18000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 3125.9 +18000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 78.7 +18000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +18000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 10.6 +18000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 18.2 +18000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 43.4 +18000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 14.2 +18000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.4 +18000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 11.3 +18000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.3 +18000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 21.4 +18000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 20.5 +18000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 14.6 +18000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 17.0 +18000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.7 +18000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.8 +18000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 11.6 +18000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 4.2 +18000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.7 +18000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +18000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 3.1 +18000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 8.9 +18000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.8 +18000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 8.7 +18000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 8.5 +18000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 59.3 +18000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 52.9 +18000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 127.8 +18000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 23.3 +18000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +18000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.5 +18000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 4.9 +18000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 32.4 +18000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 453.8 +18000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 563.7 +18000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 133.3 +18000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 947.4 +18000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 336.7 +18000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 4.1 +18000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.7 +18000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +18000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.6 +18000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 19.3 +18000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 715.3 +18000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 720.6 +18000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 258.8 +18000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 42.1 +18000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 53.8 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 12.0 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.5 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 73.4 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 176.5 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 119.1 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 115.3 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 424.7 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 476.9 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 128.2 +18000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.2 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 83.9 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 15.8 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 10.2 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 17.8 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 56.3 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 20.5 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 158.7 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 494.2 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 703.0 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 219.4 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 22.4 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 3.7 +18000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 13.4 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 67.3 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 20.3 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 93.3 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 35.5 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 4.9 +18000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +18000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 135.2 +18000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 415.5 +18000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 389.6 +18000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 99.9 +18000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 732.3 +18000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2816.6 +18000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +18000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +18000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +18000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.4 +18000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +18000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +18000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 90.5 +18000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 157.1 +18000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 252.3 +18000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 420.1 +18000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 12.8 +18000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 5.4 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.3 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +18000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +18000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.8 +18000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 7.3 +18000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 9.0 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 5.4 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 152.7 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2118.8 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1027.0 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 229.4 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 376.7 +18000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 80.5 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 37.3 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 930.3 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 16.1 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 9.3 +18000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 14.2 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.5 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 36.7 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 136.8 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 604.7 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 191.4 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 115.6 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 98.0 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 22.2 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.6 +18000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.4 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 21.8 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 28.3 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 52.1 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 25.3 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.5 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 26.7 +18000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 22.3 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.6 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 5.4 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.5 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.2 +18000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +18000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 3.4 +18000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 13.8 +18000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.3 +18000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 3121.5 +18000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 8395.7 +18000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 4797.3 +18000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 7596.0 +18000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 6694.8 +18000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 11155.1 +18000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 9616.9 +18000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 4976.2 +18000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.5 +18000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 524.5 +18000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 4811.2 +18000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 5737.1 +18000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 296.4 +18000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 5.8 +18000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 125.1 +18000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 46.1 +18000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 39.2 +18000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.9 +18000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 11.8 +18000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 62.5 +18000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 28.4 +18000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 17.8 +18000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 47.8 +18000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 293.0 +18000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 565.5 +18000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 614.5 +18000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 166.5 +18000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.2 +18000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +18000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.5 +18000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 354.1 +18000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1673.6 +18000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 330.6 +18000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 14.8 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.9 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 11.0 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 39.9 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 21.1 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 12.9 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 100.1 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 125.0 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 311.6 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 315.2 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 132.1 +18000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +18000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +18000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +18000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 25.2 +18000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 57.4 +18000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 22.8 +18000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 89.4 +18000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 422.0 +18000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 221.4 +18000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 63.0 +18000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 4.5 +18000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +18000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1165.7 +18000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1163.9 +18000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 897.2 +18000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1412.6 +18000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2338.2 +18000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 319.4 +18000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1178.3 +18000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1434.1 +18000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 489.5 +18000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 272.2 +18000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 141.3 +18000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +18000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +18000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +18000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +18000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +18000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +18000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 200.7 +18000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 482.5 +18000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 121.0 +18000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 96.3 +18000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 167.5 +18000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 47.5 +18000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 321.3 +18000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 357.6 +18000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 157.7 +18000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 39.5 +18000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 20.0 +18000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +18000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +18000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +18000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +18000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +18000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 6.8 +18000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 16.7 +18000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.3 +18000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.5 +18000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 128.2 +18000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 88.7 +18000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 568.7 +18000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 740.7 +18000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 84.9 +18000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 76.2 +18000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 21.8 +18000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +18000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +18000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +18000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +18000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +18000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +18000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 74.1 +18000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 410.5 +18000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 597.6 +18000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 370.6 +18000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1027.4 +18000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 746.3 +18000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 327.7 +18000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 17.1 +18000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +18000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +18000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 13.0 +18000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 110.4 +18000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 126.7 +18000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 158.3 +18000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 151.3 +18000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 18.9 +18000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 63.6 +18000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 17.8 +18000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 59.1 +18000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 47.8 +18000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 7.3 +18000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.4 +18000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.7 +18000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.9 +18000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.2 +18000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 11.4 +18000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 16.5 +18000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 5.2 +18000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 25.3 +18000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 29.2 +18000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 7.9 +18000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.0 +18000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +18000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +18000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.2 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 9.7 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 67.6 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 96.8 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 8.4 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 3.4 +18000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +18000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 10.4 +18000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +18000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +18000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.4 +18000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.5 +18000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 10.9 +18000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 19.8 +18000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 58.6 +18000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 19.7 +18000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 23.0 +18000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 2.4 +18000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.2 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 6.4 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 12.6 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 32.5 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 57.5 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 61.3 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 19.2 +18000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 9.5 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.4 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.2 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 2.0 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.3 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 4.2 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 2.1 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 3.1 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 2.0 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.8 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.4 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.4 +18000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +18000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1905.5 +18000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 7107.8 +18000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 10705.4 +18000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 2380.2 +18000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 4687.8 +18000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 9055.4 +18000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 6965.9 +18000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 11649.7 +18000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 7913.7 +18000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 17703.7 +18000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 15892.0 +18000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 7.6 +18000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 7.3 +18000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 69.8 +18000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +18000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 74.1 +18000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 29.9 +18000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 662.3 +18000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 2449.6 +18000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 9075.1 +18000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 597.1 +18000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 8.3 +18000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 6.0 +18000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 3.5 +18000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 15.2 +18000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 133.8 +18000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +18000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 3208.6 +18000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 11909.4 +18000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 4782.8 +18000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 80.7 +18000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 98.2 +18000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 48.2 +18000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 106.6 +18000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 58.3 +18000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 10.8 +18000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 94.5 +18000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 79.6 +18000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 652.3 +18000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1072.7 +18000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 791.3 +18000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 31.2 +18000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 59.2 +18000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 4.8 +18000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 16.9 +18000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 10.4 +18000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 105.6 +18000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +18000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.8 +18000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.9 +18000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.7 +18000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 10.1 +18000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 15.9 +18000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 29.0 +18000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 27.0 +18000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 113.9 +18000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 41.9 +18000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 7.1 +18000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.8 +18000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +18000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.7 +18000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +18000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.7 +18000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 55.5 +18000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 228.0 +18000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 4.1 +18000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 10.4 +18000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +18000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +18000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +18000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/KS.POP b/NONROAD/NR08a/DATA/POP/KS.POP new file mode 100644 index 0000000..ef44da3 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/KS.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 20000 KS Kansas 1,302,993.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +20000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +20000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +20000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 6734.2 +20000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3316.8 +20000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3403.6 +20000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 29455.5 +20000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2520.0 +20000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3076.8 +20000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.9 +20000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.5 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.6 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 63.2 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 119.7 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 942.6 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 9.6 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 23.3 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +20000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 8.8 +20000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 9.6 +20000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +20000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 23.3 +20000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +20000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 8.8 +20000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 6.3 +20000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 44.2 +20000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 2.0 +20000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 16.0 +20000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.7 +20000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 3.0 +20000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.7 +20000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 3.0 +20000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1322.8 +20000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.9 +20000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 124.3 +20000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 630.7 +20000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 194.2 +20000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 34.4 +20000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 47.8 +20000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 8.5 +20000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 22.2 +20000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.6 +20000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.8 +20000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.2 +20000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.6 +20000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.8 +20000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.2 +20000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 119.1 +20000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 348.2 +20000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 295.3 +20000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 147.9 +20000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 104.2 +20000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 4.2 +20000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.4 +20000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 4.2 +20000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.4 +20000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 51.7 +20000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 79.6 +20000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 23.0 +20000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 9.7 +20000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.0 +20000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +20000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.0 +20000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +20000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.3 +20000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 5.8 +20000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 5.8 +20000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +20000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +20000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 90.5 +20000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 88.6 +20000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 31.7 +20000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 36.1 +20000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 6.0 +20000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 5.1 +20000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 4.0 +20000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 6.0 +20000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 5.1 +20000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 4.0 +20000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 37.3 +20000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 764.3 +20000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 30.9 +20000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 9.4 +20000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 12.0 +20000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 7.9 +20000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.2 +20000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.9 +20000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.8 +20000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.2 +20000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.9 +20000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.8 +20000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 97.7 +20000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 468.4 +20000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 240.8 +20000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 50.5 +20000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 22.2 +20000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.1 +20000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.3 +20000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.1 +20000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.3 +20000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 13.3 +20000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 742.8 +20000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1240.9 +20000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 42.1 +20000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 32.3 +20000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.3 +20000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.8 +20000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.6 +20000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +20000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 4.4 +20000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.7 +20000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +20000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 4.4 +20000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.7 +20000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 12.0 +20000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 16.8 +20000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 30.6 +20000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 7.9 +20000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.0 +20000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.0 +20000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.3 +20000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.9 +20000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +20000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 6.3 +20000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +20000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.7 +20000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.9 +20000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +20000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 6.3 +20000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +20000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.7 +20000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +20000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 12.5 +20000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.4 +20000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +20000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 12.5 +20000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.4 +20000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 3.1 +20000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 64.1 +20000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +20000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.1 +20000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +20000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +20000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.1 +20000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +20000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.5 +20000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 50.9 +20000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 14.4 +20000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 8.0 +20000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 8.5 +20000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 14.4 +20000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 8.0 +20000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 8.5 +20000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 44.9 +20000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 148.2 +20000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 22.3 +20000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 27.2 +20000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.1 +20000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +20000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 5.3 +20000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 5.1 +20000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +20000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 27.0 +20000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 7.5 +20000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 173.1 +20000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 76.5 +20000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 159.4 +20000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +20000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 76.5 +20000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 159.4 +20000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +20000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 20.3 +20000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 72.5 +20000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 116.7 +20000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 8.5 +20000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 54.2 +20000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +20000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 385.5 +20000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 842.6 +20000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2217.7 +20000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 162.0 +20000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1030.7 +20000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 5.0 +20000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 534.0 +20000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 40.7 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 46.6 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 71.3 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 19.3 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 41.3 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 24.8 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 28.0 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.4 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.6 +20000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 24.8 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 28.0 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.4 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.6 +20000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +20000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +20000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.9 +20000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 789.1 +20000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 149.1 +20000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 75.9 +20000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 64.2 +20000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.7 +20000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.0 +20000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.3 +20000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +20000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +20000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.7 +20000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.0 +20000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.0 +20000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +20000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +20000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +20000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.4 +20000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 15.7 +20000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 9.5 +20000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +20000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 9.5 +20000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +20000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +20000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.3 +20000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 10.1 +20000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.1 +20000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.4 +20000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +20000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 5.1 +20000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.3 +20000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 9.1 +20000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +20000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +20000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.8 +20000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.8 +20000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 9.0 +20000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +20000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +20000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.5 +20000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +20000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +20000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 6188.8 +20000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 307576.3 +20000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 101.4 +20000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 221.6 +20000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 11013.9 +20000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 3.6 +20000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 573.9 +20000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4057.1 +20000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 28811.7 +20000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 73.8 +20000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 522.0 +20000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 3707.0 +20000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 50050.5 +20000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +20000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 1193.6 +20000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 4199.7 +20000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 37411.3 +20000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 94743.0 +20000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +20000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +20000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 12592.8 +20000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 894.3 +20000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2160.6 +20000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +20000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +20000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +20000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 197.5 +20000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 52.8 +20000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 2.8 +20000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 6.1 +20000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 5538.8 +20000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 61510.1 +20000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +20000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +20000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 3821.3 +20000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1423.6 +20000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 3485.5 +20000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +20000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +20000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 217.9 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 2131.2 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 67.1 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 73.0 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 5.6 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 37.9 +20000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 37.6 +20000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 15327.8 +20000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 23471.6 +20000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 39597.9 +20000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1850.7 +20000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 1671.0 +20000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 2558.9 +20000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 4317.0 +20000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 201.8 +20000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 67.6 +20000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 9777.1 +20000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 7582.1 +20000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 35.9 +20000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.4 +20000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 201.2 +20000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 156.1 +20000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.7 +20000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 208.3 +20000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 711.3 +20000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 314.5 +20000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 4.7 +20000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 763.1 +20000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1493.4 +20000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 241.4 +20000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 7569.7 +20000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 84109.6 +20000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 27413.3 +20000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 5.0 +20000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 155.8 +20000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1731.3 +20000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 564.3 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.3 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 12.6 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 51.8 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 97.7 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.4 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 31.5 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +20000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 7.5 +20000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.4 +20000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 31.5 +20000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +20000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 7.5 +20000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.9 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 2570.5 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 683.7 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1525.8 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1988.8 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 394.1 +20000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 3.4 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 246.6 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1067.9 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2721.6 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1798.3 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 26.3 +20000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 17.3 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 225.9 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 978.4 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 2493.5 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1647.6 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 24.1 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 15.8 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.5 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.5 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.2 +20000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.6 +20000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 162.7 +20000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 140.4 +20000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 67.4 +20000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 7.0 +20000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 80.6 +20000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 9.1 +20000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +20000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.6 +20000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.3 +20000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 831.6 +20000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 266.2 +20000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 30.2 +20000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 5.5 +20000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 385.4 +20000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 5.6 +20000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 117.9 +20000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1411.9 +20000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1316.3 +20000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 5126.0 +20000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1869.4 +20000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 642.2 +20000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1088.0 +20000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 265.0 +20000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 99.4 +20000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 104.1 +20000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 102.2 +20000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 45077.6 +20000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 112.6 +20000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 449.4 +20000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 254.6 +20000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 96.8 +20000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 470.6 +20000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 279.7 +20000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 247.8 +20000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 19.7 +20000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 31.8 +20000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 5.1 +20000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 186.6 +20000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 78.0 +20000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 5.0 +20000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 8.4 +20000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 47.7 +20000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 13.1 +20000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +20000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 29.9 +20000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 63.1 +20000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 29.3 +20000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 13.4 +20000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.8 +20000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 15.5 +20000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 82.4 +20000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 117.2 +20000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 11.5 +20000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 13.4 +20000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.8 +20000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 43.8 +20000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1086.4 +20000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 7642.9 +20000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 18352.8 +20000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4059.5 +20000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 5808.9 +20000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +20000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +20000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +20000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +20000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +20000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +20000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 537.9 +20000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.0 +20000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 250.9 +20000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 223.1 +20000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 83.7 +20000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.9 +20000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +20000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.1 +20000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 8.6 +20000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 171.9 +20000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 57.8 +20000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 20.0 +20000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.2 +20000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.1 +20000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1375.7 +20000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2485.5 +20000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.5 +20000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +20000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3561.9 +20000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2234.1 +20000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 216.4 +20000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 126.1 +20000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 109.6 +20000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.0 +20000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 51.0 +20000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.4 +20000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 7.9 +20000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 106.0 +20000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.0 +20000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 51.0 +20000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.4 +20000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.4 +20000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.6 +20000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +20000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +20000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +20000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +20000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.6 +20000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 564.5 +20000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 527.0 +20000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 64.6 +20000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 70.0 +20000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.3 +20000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 56.7 +20000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.1 +20000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 5.7 +20000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.3 +20000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 55.1 +20000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.1 +20000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.0 +20000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.6 +20000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.6 +20000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.7 +20000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.0 +20000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +20000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 2.9 +20000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +20000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +20000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +20000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 74.6 +20000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 289.4 +20000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1066.9 +20000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 355.9 +20000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 84.0 +20000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.5 +20000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.7 +20000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 84.0 +20000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.5 +20000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.7 +20000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.8 +20000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9424.7 +20000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 5828.7 +20000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1729.1 +20000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 325.2 +20000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.5 +20000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +20000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +20000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.5 +20000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +20000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +20000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 13.8 +20000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 65.4 +20000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 59.3 +20000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 46.7 +20000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 47.8 +20000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +20000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +20000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +20000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +20000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +20000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +20000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +20000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +20000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +20000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 43.9 +20000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 278.5 +20000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 15.4 +20000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 5.0 +20000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.5 +20000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +20000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 1.6 +20000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.2 +20000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.6 +20000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +20000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +20000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +20000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +20000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +20000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +20000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +20000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +20000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +20000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +20000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +20000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 101.1 +20000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 185.3 +20000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 123.1 +20000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +20000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 120.6 +20000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 16.5 +20000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 51.2 +20000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.9 +20000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 5.1 +20000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.4 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 4.4 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 159.1 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 110.0 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.4 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 2.3 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 2.3 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 19.5 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 17.1 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 7.6 +20000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.3 +20000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.9 +20000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 21.3 +20000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.0 +20000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 40.3 +20000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 25.1 +20000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 55.0 +20000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 38.6 +20000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 5.0 +20000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 20.8 +20000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 104.2 +20000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 46.5 +20000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 28.3 +20000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.6 +20000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 11.2 +20000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 21.1 +20000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 25.2 +20000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 45.2 +20000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 64.5 +20000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 59.8 +20000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 60.5 +20000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 165.7 +20000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 153.6 +20000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 52.5 +20000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 15.6 +20000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +20000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 4.2 +20000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 48.0 +20000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 62.2 +20000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 28.9 +20000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +20000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 9.0 +20000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 10.1 +20000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.8 +20000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 5.2 +20000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 6.9 +20000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +20000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 6.8 +20000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 8.0 +20000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 14.6 +20000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 4.5 +20000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +20000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +20000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.5 +20000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 7.8 +20000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 6.5 +20000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.2 +20000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +20000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 6.2 +20000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.9 +20000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +20000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.9 +20000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.8 +20000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +20000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +20000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 16.9 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 39.7 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 21.2 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 335.7 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 103.0 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 7.4 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 4.3 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.4 +20000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.8 +20000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +20000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +20000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.6 +20000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.8 +20000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 46.4 +20000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 115.7 +20000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 192.5 +20000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 77.8 +20000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 24.2 +20000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 16.1 +20000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 8.2 +20000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.7 +20000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.5 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.8 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.7 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 28.6 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 29.1 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 47.1 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 47.9 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 70.5 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 61.3 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 35.3 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 8.3 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 4.5 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +20000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +20000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.6 +20000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 3.1 +20000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 6.4 +20000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 28.4 +20000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 58.8 +20000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 31.4 +20000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 24.3 +20000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 109.8 +20000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 410.4 +20000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 300.0 +20000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 79.5 +20000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.5 +20000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.9 +20000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +20000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.1 +20000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.6 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 4.4 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 25.3 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.9 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 8.1 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 11.7 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.4 +20000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 51.5 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 30.7 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 5.7 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 5.2 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 3.8 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 6.5 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 10.8 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 3.4 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.2 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.5 +20000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +20000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +20000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 4.7 +20000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +20000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.5 +20000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 24.2 +20000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 90.9 +20000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 93.0 +20000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 57.3 +20000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.5 +20000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.7 +20000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +20000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +20000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +20000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.1 +20000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 8.3 +20000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 84.5 +20000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 141.5 +20000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 16.2 +20000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.0 +20000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +20000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 21.2 +20000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 45.1 +20000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 25.5 +20000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 12.4 +20000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 3.9 +20000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 19.8 +20000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 4.8 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.5 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.8 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.9 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 32.6 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 7.9 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 12.3 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 4.7 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 12.1 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.9 +20000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.7 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 38.8 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 43.2 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 85.6 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 490.0 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 251.7 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 13.0 +20000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 17.2 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.4 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 19.6 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 22.5 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 31.9 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 137.1 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 346.6 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 330.9 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 242.8 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 18.3 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 8.9 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.9 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 11.0 +20000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.4 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 20.0 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 39.9 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 21.3 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 398.0 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1406.2 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 935.7 +20000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 5.1 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 4.1 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 118.7 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 268.4 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 232.4 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 117.7 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 46.4 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 9.6 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 16.7 +20000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +20000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.1 +20000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 175.6 +20000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 389.3 +20000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 761.8 +20000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 301.3 +20000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1654.2 +20000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1087.5 +20000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 27.4 +20000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +20000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 3.7 +20000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 6.3 +20000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 15.1 +20000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 4.9 +20000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.5 +20000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 3.9 +20000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +20000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 7.4 +20000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 7.1 +20000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 5.1 +20000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 5.9 +20000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.3 +20000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.6 +20000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 4.0 +20000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.5 +20000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +20000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +20000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.1 +20000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 3.1 +20000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.3 +20000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 3.0 +20000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 3.0 +20000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 20.6 +20000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 18.4 +20000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 44.5 +20000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 8.1 +20000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +20000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.5 +20000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.5 +20000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 10.0 +20000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 140.6 +20000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 174.7 +20000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 41.3 +20000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 293.5 +20000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 104.3 +20000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.3 +20000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +20000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +20000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.5 +20000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 6.0 +20000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 221.6 +20000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 223.3 +20000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 80.2 +20000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 13.0 +20000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 16.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 22.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 54.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 36.9 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 35.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 131.6 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 147.8 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 39.7 +20000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.7 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 26.0 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.9 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.2 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 5.5 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 17.4 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 6.3 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 49.2 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 153.1 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 217.8 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 68.0 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 7.0 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.2 +20000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 4.1 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 20.8 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 6.3 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 28.9 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 11.0 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.5 +20000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +20000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 59.5 +20000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 183.0 +20000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 171.6 +20000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 44.0 +20000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 322.6 +20000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1240.8 +20000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +20000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +20000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +20000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +20000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +20000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +20000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 28.0 +20000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 48.7 +20000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 78.2 +20000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 130.2 +20000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 4.0 +20000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 2.1 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.5 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +20000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +20000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.3 +20000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 2.9 +20000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 3.6 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 2.1 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 59.0 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 818.3 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 396.6 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 88.6 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 145.5 +20000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 31.1 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.2 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 14.4 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 359.3 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 6.2 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 3.6 +20000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 5.5 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 1.3 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 14.2 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 52.8 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 233.5 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 73.9 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 44.6 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 37.9 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 8.6 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.4 +20000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.2 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 8.4 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 10.9 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 20.1 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 9.8 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.2 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 10.3 +20000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 8.6 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 2.1 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.7 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.5 +20000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +20000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 5.4 +20000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 21.9 +20000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.5 +20000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 4962.2 +20000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 13346.5 +20000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 7626.2 +20000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 12075.3 +20000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 10642.6 +20000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 17733.1 +20000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 15287.9 +20000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 7910.6 +20000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.8 +20000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 833.8 +20000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 7648.4 +20000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 9120.2 +20000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 471.1 +20000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 9.2 +20000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 198.9 +20000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 73.3 +20000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 62.3 +20000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 3.0 +20000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 18.8 +20000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 99.4 +20000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 45.2 +20000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 28.3 +20000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 76.0 +20000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 465.7 +20000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 899.0 +20000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 976.9 +20000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 264.7 +20000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.9 +20000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +20000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.8 +20000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 563.0 +20000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2660.6 +20000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 525.6 +20000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 23.5 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.5 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 17.5 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 63.5 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 33.6 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 20.5 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 159.1 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 198.8 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 495.3 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 501.1 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 210.0 +20000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +20000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +20000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +20000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 40.0 +20000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 91.3 +20000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 36.2 +20000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 142.1 +20000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 670.9 +20000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 352.0 +20000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 100.1 +20000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 7.1 +20000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +20000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 651.9 +20000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 650.9 +20000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 501.7 +20000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 789.9 +20000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1307.5 +20000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 178.6 +20000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 658.9 +20000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 801.9 +20000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 273.7 +20000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 152.2 +20000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 79.0 +20000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +20000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +20000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +20000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +20000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +20000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +20000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 112.2 +20000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 269.8 +20000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 67.7 +20000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 53.8 +20000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 93.6 +20000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 26.5 +20000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 179.7 +20000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 200.0 +20000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 88.2 +20000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 22.1 +20000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.2 +20000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +20000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +20000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +20000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +20000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +20000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 3.8 +20000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.3 +20000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +20000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.9 +20000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 71.7 +20000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 49.6 +20000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 318.0 +20000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 414.2 +20000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 47.5 +20000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 42.6 +20000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.2 +20000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +20000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +20000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +20000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +20000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +20000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +20000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 41.4 +20000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 229.6 +20000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 334.2 +20000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 207.3 +20000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 574.5 +20000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 417.3 +20000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 183.2 +20000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 9.5 +20000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +20000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +20000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.3 +20000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 61.7 +20000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 70.9 +20000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 88.5 +20000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 84.6 +20000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 10.6 +20000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 35.6 +20000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 10.0 +20000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 33.0 +20000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 26.7 +20000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.1 +20000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.9 +20000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +20000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.2 +20000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +20000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.4 +20000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.2 +20000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 2.9 +20000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 14.1 +20000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 16.3 +20000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.4 +20000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +20000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +20000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +20000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.8 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 12.3 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 17.6 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.5 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.6 +20000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +20000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1.9 +20000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +20000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +20000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +20000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.1 +20000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 2.0 +20000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 3.7 +20000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 11.0 +20000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 3.7 +20000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 4.3 +20000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.5 +20000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +20000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 5.8 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 2.8 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 26.5 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 3.9 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 55.2 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 28.1 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 40.7 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 25.8 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 10.7 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 4.8 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 5.8 +20000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.2 +20000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 823.3 +20000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 3070.9 +20000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 4625.2 +20000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1028.3 +20000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 2025.4 +20000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 3912.3 +20000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 3009.6 +20000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 5033.2 +20000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 3419.1 +20000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 7648.9 +20000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 6866.1 +20000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 3.3 +20000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 3.2 +20000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 30.2 +20000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +20000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 32.0 +20000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 12.9 +20000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 286.1 +20000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1058.4 +20000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 3920.9 +20000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 258.0 +20000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 3.6 +20000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 2.6 +20000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.5 +20000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 6.6 +20000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 57.8 +20000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +20000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1386.3 +20000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 5145.4 +20000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 2066.4 +20000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 34.9 +20000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 42.4 +20000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 20.8 +20000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 46.1 +20000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 25.2 +20000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 4.7 +20000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 40.8 +20000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 34.4 +20000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 281.8 +20000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 463.5 +20000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 341.9 +20000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 13.5 +20000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 25.6 +20000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 2.1 +20000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 7.3 +20000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 4.5 +20000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 45.6 +20000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.4 +20000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 2.4 +20000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 2.7 +20000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 3.8 +20000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 13.9 +20000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 21.8 +20000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 39.8 +20000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 37.0 +20000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 156.3 +20000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 57.6 +20000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 9.7 +20000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 2.4 +20000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.6 +20000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.9 +20000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.3 +20000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 2.4 +20000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 76.2 +20000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 313.1 +20000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 5.6 +20000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 14.3 +20000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 4.5 +20000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +20000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 4.5 +20000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/KY.POP b/NONROAD/NR08a/DATA/POP/KY.POP new file mode 100644 index 0000000..d82fa67 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/KY.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 21000 KY Kentucky 1,811,280.3 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +21000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +21000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +21000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 20112.1 +21000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 9906.0 +21000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 10165.0 +21000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 87971.0 +21000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2935.0 +21000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 4638.6 +21000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.4 +21000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.8 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.3 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 95.3 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 180.4 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1421.1 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 14.5 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 35.1 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +21000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 13.3 +21000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 14.5 +21000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +21000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 35.1 +21000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +21000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 13.3 +21000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 10.1 +21000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 70.6 +21000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 3.3 +21000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 25.6 +21000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 4.3 +21000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 4.8 +21000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 4.3 +21000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 4.8 +21000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2113.7 +21000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 4.6 +21000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 198.6 +21000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1007.8 +21000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 310.3 +21000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 55.0 +21000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 76.4 +21000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 13.6 +21000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 35.5 +21000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 4.2 +21000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.9 +21000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.0 +21000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 4.2 +21000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.9 +21000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.0 +21000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 190.2 +21000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 556.4 +21000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 471.9 +21000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 236.3 +21000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 166.5 +21000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 6.8 +21000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.6 +21000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 6.8 +21000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.6 +21000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 82.6 +21000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 127.2 +21000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 36.8 +21000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 15.5 +21000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.5 +21000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +21000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.5 +21000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +21000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.5 +21000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 9.3 +21000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 9.3 +21000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.4 +21000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.4 +21000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 144.7 +21000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 141.6 +21000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 50.6 +21000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 57.7 +21000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 9.6 +21000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 8.1 +21000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 6.4 +21000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 9.6 +21000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 8.1 +21000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 6.4 +21000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 59.7 +21000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1221.3 +21000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 49.4 +21000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 15.1 +21000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 19.2 +21000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 12.6 +21000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.1 +21000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.6 +21000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.7 +21000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.1 +21000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.6 +21000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.7 +21000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 156.2 +21000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 748.4 +21000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 384.8 +21000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 80.7 +21000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 35.5 +21000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 9.8 +21000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.3 +21000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 9.8 +21000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.3 +21000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 21.2 +21000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1186.9 +21000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1982.9 +21000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 67.3 +21000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 51.6 +21000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.0 +21000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.8 +21000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.0 +21000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +21000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 7.1 +21000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.1 +21000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +21000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 7.1 +21000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.1 +21000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 19.1 +21000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 26.8 +21000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 49.0 +21000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 12.6 +21000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.6 +21000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.6 +21000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.4 +21000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.5 +21000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +21000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 10.0 +21000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +21000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.2 +21000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.5 +21000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +21000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 10.0 +21000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +21000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.2 +21000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +21000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 20.0 +21000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.7 +21000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +21000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 20.0 +21000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.7 +21000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 4.9 +21000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 102.4 +21000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +21000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.8 +21000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +21000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +21000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.8 +21000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +21000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 4.0 +21000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 81.4 +21000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 23.1 +21000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 12.7 +21000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 13.6 +21000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 23.1 +21000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 12.7 +21000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 13.6 +21000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 71.7 +21000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 236.7 +21000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 35.6 +21000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 43.5 +21000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.7 +21000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.3 +21000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 8.5 +21000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 8.1 +21000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.4 +21000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 39.5 +21000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 11.0 +21000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 253.1 +21000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 111.9 +21000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 233.2 +21000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 5.2 +21000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 111.9 +21000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 233.2 +21000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 5.2 +21000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 29.7 +21000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 106.0 +21000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 170.7 +21000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 12.5 +21000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 79.3 +21000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.4 +21000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 563.8 +21000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1232.2 +21000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3243.2 +21000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 236.9 +21000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1507.3 +21000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 7.4 +21000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 780.9 +21000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 59.5 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 68.1 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 104.2 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 28.2 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 60.4 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 36.3 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 41.0 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 41.6 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.8 +21000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 36.3 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 41.0 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 41.6 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.8 +21000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +21000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +21000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.8 +21000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1154.0 +21000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 218.0 +21000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 111.0 +21000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 93.9 +21000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.4 +21000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 11.6 +21000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.9 +21000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.4 +21000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +21000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.4 +21000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 11.6 +21000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.4 +21000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.4 +21000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +21000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.4 +21000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.6 +21000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 22.9 +21000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 13.9 +21000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.5 +21000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 13.9 +21000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.5 +21000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +21000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +21000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 15.2 +21000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.7 +21000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.6 +21000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +21000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 7.4 +21000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 3.4 +21000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 13.3 +21000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +21000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +21000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 7.0 +21000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.7 +21000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 13.2 +21000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +21000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.4 +21000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.7 +21000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +21000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +21000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 9590.4 +21000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 476628.9 +21000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 157.1 +21000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 235.4 +21000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 11697.7 +21000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 3.9 +21000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 889.3 +21000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 6287.1 +21000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 44647.4 +21000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 78.4 +21000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 554.4 +21000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 3937.2 +21000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 77559.7 +21000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +21000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 1267.7 +21000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 4460.5 +21000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 57973.7 +21000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 146816.4 +21000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +21000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +21000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 13374.6 +21000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 949.8 +21000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3348.1 +21000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +21000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +21000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +21000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 209.8 +21000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 56.1 +21000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 3.0 +21000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 6.4 +21000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 8583.1 +21000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 95317.7 +21000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +21000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +21000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 4058.6 +21000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1512.0 +21000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 5401.2 +21000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +21000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +21000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 231.4 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 2263.5 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 71.3 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 77.6 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 5.9 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 40.3 +21000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 39.9 +21000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 13643.6 +21000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 20892.7 +21000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 35247.1 +21000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1647.4 +21000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 1107.5 +21000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1696.0 +21000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2861.2 +21000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 133.7 +21000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 104.7 +21000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 15150.9 +21000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 11749.4 +21000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 55.6 +21000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.5 +21000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 213.7 +21000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 165.8 +21000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.8 +21000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 221.2 +21000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 755.5 +21000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 334.0 +21000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 5.0 +21000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 810.4 +21000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1586.2 +21000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 374.1 +21000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 11730.2 +21000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 130338.6 +21000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 42480.3 +21000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 5.3 +21000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 165.5 +21000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1838.7 +21000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 599.3 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.3 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 13.4 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 55.0 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 103.7 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.8 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 33.4 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +21000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 8.0 +21000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.8 +21000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 33.4 +21000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +21000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 8.0 +21000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.9 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 2730.1 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 726.2 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1620.6 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 2112.3 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 418.5 +21000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 3.6 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 382.1 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1654.8 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 4217.4 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2786.7 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 40.8 +21000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 26.7 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 240.0 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1039.1 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 2648.3 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1749.9 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 25.6 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 16.8 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.6 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.6 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.2 +21000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.7 +21000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 42.7 +21000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 36.8 +21000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 17.7 +21000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.8 +21000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 21.2 +21000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.4 +21000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +21000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +21000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +21000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 218.2 +21000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 69.8 +21000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 7.9 +21000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.4 +21000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 101.1 +21000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.5 +21000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 30.9 +21000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 370.4 +21000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 345.4 +21000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1344.9 +21000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 490.5 +21000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 168.5 +21000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 285.5 +21000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 69.5 +21000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 26.1 +21000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 27.3 +21000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 26.8 +21000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 11827.2 +21000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 29.5 +21000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 117.9 +21000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 66.8 +21000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 25.4 +21000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 123.5 +21000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 73.4 +21000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 65.0 +21000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 5.2 +21000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 8.4 +21000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.3 +21000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 49.0 +21000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 20.5 +21000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.3 +21000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 2.2 +21000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 12.5 +21000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.4 +21000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +21000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 7.8 +21000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 16.6 +21000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 7.7 +21000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.5 +21000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +21000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 4.1 +21000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 21.6 +21000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 30.7 +21000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 3.0 +21000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.5 +21000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.7 +21000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 43.7 +21000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1085.0 +21000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 7633.2 +21000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 18329.5 +21000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4054.4 +21000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 5801.5 +21000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +21000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +21000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +21000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +21000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +21000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +21000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 537.3 +21000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.0 +21000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 250.6 +21000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 222.9 +21000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 83.6 +21000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.9 +21000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +21000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.1 +21000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 8.6 +21000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 171.7 +21000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 57.8 +21000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 19.9 +21000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.2 +21000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.1 +21000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1373.9 +21000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2482.3 +21000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.5 +21000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +21000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3557.4 +21000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2231.3 +21000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 216.1 +21000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 125.9 +21000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 109.5 +21000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.0 +21000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 50.9 +21000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.4 +21000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 7.9 +21000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 105.9 +21000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.0 +21000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 50.9 +21000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.4 +21000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.4 +21000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.6 +21000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +21000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +21000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +21000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +21000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.6 +21000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 563.8 +21000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 526.3 +21000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 64.6 +21000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 70.0 +21000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.2 +21000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 56.7 +21000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.1 +21000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 5.7 +21000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.2 +21000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 55.0 +21000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.1 +21000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.0 +21000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.6 +21000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.6 +21000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.7 +21000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.0 +21000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +21000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 2.9 +21000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +21000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +21000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +21000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 74.5 +21000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 289.1 +21000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1065.6 +21000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 355.5 +21000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 83.9 +21000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.5 +21000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.7 +21000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 83.9 +21000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.5 +21000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.7 +21000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.8 +21000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9412.7 +21000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 5821.3 +21000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1726.9 +21000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 324.8 +21000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.5 +21000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +21000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +21000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.5 +21000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +21000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +21000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 13.7 +21000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 65.3 +21000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 59.2 +21000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 46.6 +21000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 47.7 +21000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +21000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +21000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +21000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +21000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +21000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +21000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +21000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +21000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +21000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 571.2 +21000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 3626.7 +21000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 200.6 +21000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 65.0 +21000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 6.3 +21000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 2.6 +21000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 15.5 +21000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.8 +21000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 6.3 +21000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.3 +21000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +21000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +21000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +21000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.7 +21000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.9 +21000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +21000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +21000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +21000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.7 +21000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.9 +21000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 28.7 +21000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 52.6 +21000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 34.9 +21000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +21000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 34.2 +21000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 4.7 +21000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 14.5 +21000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.5 +21000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.4 +21000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 6.6 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 239.8 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 165.8 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.6 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.5 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.5 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 29.4 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 25.9 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 11.4 +21000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +21000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.4 +21000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 34.0 +21000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 3.1 +21000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 64.5 +21000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 40.1 +21000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 87.9 +21000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 61.7 +21000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 7.9 +21000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 33.2 +21000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 166.4 +21000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 74.4 +21000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 45.2 +21000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 4.2 +21000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 17.9 +21000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 33.6 +21000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 40.3 +21000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 72.3 +21000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 103.1 +21000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 95.5 +21000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 96.7 +21000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 264.8 +21000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 245.5 +21000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 83.8 +21000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 24.9 +21000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +21000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 6.7 +21000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 76.8 +21000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 99.4 +21000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 46.1 +21000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +21000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 14.4 +21000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 16.1 +21000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.2 +21000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 8.3 +21000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 11.0 +21000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +21000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 10.8 +21000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 12.8 +21000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 23.3 +21000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 7.2 +21000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.3 +21000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +21000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.8 +21000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 12.4 +21000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 10.4 +21000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 3.6 +21000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +21000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 9.8 +21000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 3.0 +21000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +21000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 3.0 +21000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.3 +21000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.3 +21000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +21000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 26.9 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 63.4 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 33.9 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 536.4 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 164.6 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 11.8 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 6.8 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 5.4 +21000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.3 +21000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +21000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +21000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.0 +21000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.4 +21000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 74.2 +21000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 184.9 +21000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 307.6 +21000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 124.2 +21000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 38.6 +21000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 25.8 +21000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 13.1 +21000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.1 +21000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.8 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.2 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 2.7 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 45.7 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 46.5 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 75.3 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 76.6 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 112.6 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 97.9 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 56.4 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 13.2 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 7.2 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +21000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +21000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.9 +21000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 4.9 +21000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 10.2 +21000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 45.4 +21000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 94.0 +21000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 50.1 +21000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 38.9 +21000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 175.5 +21000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 655.7 +21000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 479.4 +21000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 127.0 +21000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 4.0 +21000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 4.7 +21000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +21000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.8 +21000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 4.1 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 7.1 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 40.5 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.5 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 13.0 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 18.7 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.3 +21000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 82.2 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 49.0 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 9.1 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 8.3 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 6.0 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 10.3 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 17.3 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 5.5 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.9 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.4 +21000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.5 +21000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +21000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 7.5 +21000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +21000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 4.0 +21000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 38.6 +21000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 145.3 +21000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 148.6 +21000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 91.5 +21000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 3.9 +21000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.1 +21000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +21000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +21000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +21000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.7 +21000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 13.2 +21000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 135.0 +21000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 226.1 +21000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 25.9 +21000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.6 +21000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.4 +21000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 33.9 +21000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 72.0 +21000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 40.8 +21000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 19.8 +21000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 6.3 +21000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 31.7 +21000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 7.7 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.9 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.2 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 4.6 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 52.1 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 12.6 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 19.7 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 7.4 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 19.4 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.5 +21000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 2.7 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 62.0 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 69.0 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 136.8 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 783.0 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 402.2 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 20.8 +21000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 27.4 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.6 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 31.4 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 36.0 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 50.9 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 219.0 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 553.8 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 528.7 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 387.9 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 29.3 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 14.3 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 3.0 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 17.5 +21000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.6 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 31.9 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 63.7 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 34.0 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 636.0 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2247.0 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1495.1 +21000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 8.1 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 6.6 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 189.7 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 428.8 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 371.4 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 188.0 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 74.2 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 15.4 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 26.7 +21000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +21000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.7 +21000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 280.6 +21000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 622.1 +21000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1217.3 +21000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 481.4 +21000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 2643.3 +21000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1737.7 +21000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 43.8 +21000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +21000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 5.9 +21000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 10.1 +21000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 24.2 +21000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 7.9 +21000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.8 +21000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 6.3 +21000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +21000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 11.9 +21000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 11.4 +21000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 8.1 +21000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 9.4 +21000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.1 +21000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.0 +21000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 6.4 +21000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.3 +21000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.4 +21000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +21000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.7 +21000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 4.9 +21000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.5 +21000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 4.8 +21000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 4.7 +21000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 32.9 +21000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 29.4 +21000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 71.0 +21000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 13.0 +21000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +21000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.9 +21000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.2 +21000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 14.7 +21000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 205.6 +21000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 255.4 +21000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 60.4 +21000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 429.3 +21000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 152.6 +21000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.9 +21000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +21000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +21000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.7 +21000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 8.8 +21000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 324.1 +21000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 326.5 +21000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 117.3 +21000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 19.1 +21000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 24.4 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 5.5 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 33.3 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 80.0 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 54.0 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 52.3 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 192.4 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 216.1 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 58.1 +21000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.0 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 38.0 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 7.2 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 4.6 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 8.1 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 25.5 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 9.3 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 71.9 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 223.9 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 318.6 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 99.4 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 10.2 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.7 +21000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 6.1 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 30.5 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 9.2 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 42.3 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 16.1 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.2 +21000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +21000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 89.8 +21000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 276.0 +21000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 258.8 +21000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 66.4 +21000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 486.3 +21000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1870.6 +21000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +21000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +21000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +21000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +21000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +21000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +21000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 41.0 +21000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 71.2 +21000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 114.3 +21000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 190.4 +21000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 5.8 +21000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 2.2 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.5 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +21000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +21000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +21000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.9 +21000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.4 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 2.2 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 62.6 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 869.1 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 421.2 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 94.1 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 154.5 +21000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 33.0 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.3 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 15.3 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 381.6 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 6.6 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 3.8 +21000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 5.8 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 1.4 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 15.1 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 56.1 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 248.0 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 78.5 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 47.4 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 40.2 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 9.1 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.5 +21000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.2 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 8.9 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 11.6 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 21.4 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 10.4 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.2 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 10.9 +21000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 9.1 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.3 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 2.2 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.8 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.5 +21000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +21000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.4 +21000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.7 +21000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +21000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1302.0 +21000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3501.8 +21000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 2000.9 +21000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 3168.2 +21000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2792.3 +21000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4652.7 +21000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 4011.2 +21000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 2075.5 +21000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +21000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 218.8 +21000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 2006.7 +21000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2392.9 +21000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 123.6 +21000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.4 +21000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 52.2 +21000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 19.2 +21000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 16.3 +21000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.8 +21000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.9 +21000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 26.1 +21000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 11.9 +21000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 7.4 +21000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 19.9 +21000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 122.2 +21000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 235.9 +21000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 256.3 +21000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 69.4 +21000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.5 +21000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +21000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +21000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 147.7 +21000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 698.1 +21000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 137.9 +21000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 6.2 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.4 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.6 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 16.7 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 8.8 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 5.4 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 41.7 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 52.2 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 130.0 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 131.5 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 55.1 +21000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +21000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +21000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +21000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 10.5 +21000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 24.0 +21000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 9.5 +21000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 37.3 +21000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 176.0 +21000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 92.4 +21000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 26.3 +21000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.9 +21000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +21000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 651.0 +21000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 650.0 +21000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 501.0 +21000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 788.9 +21000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1305.8 +21000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 178.4 +21000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 658.1 +21000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 800.9 +21000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 273.4 +21000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 152.0 +21000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 78.9 +21000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +21000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +21000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +21000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +21000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +21000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +21000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 112.1 +21000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 269.5 +21000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 67.6 +21000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 53.8 +21000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 93.5 +21000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 26.5 +21000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 179.4 +21000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 199.7 +21000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 88.1 +21000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 22.1 +21000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.2 +21000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +21000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +21000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +21000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +21000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +21000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 3.8 +21000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.3 +21000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +21000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.9 +21000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 71.6 +21000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 49.5 +21000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 317.6 +21000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 413.7 +21000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 47.4 +21000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 42.6 +21000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.2 +21000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +21000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +21000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +21000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +21000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +21000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +21000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 41.4 +21000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 229.3 +21000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 333.8 +21000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 207.0 +21000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 573.8 +21000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 416.8 +21000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 183.0 +21000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 9.5 +21000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +21000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +21000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.2 +21000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 61.7 +21000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 70.8 +21000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 88.4 +21000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 84.5 +21000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 10.6 +21000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 35.5 +21000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 9.9 +21000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 33.0 +21000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 26.7 +21000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.1 +21000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.9 +21000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +21000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.2 +21000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +21000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.4 +21000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.2 +21000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 2.9 +21000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 14.1 +21000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 16.3 +21000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.4 +21000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +21000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +21000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +21000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.3 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.5 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 23.1 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 160.1 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 229.5 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 19.8 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 8.1 +21000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +21000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 19.4 +21000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +21000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.2 +21000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.7 +21000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.0 +21000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 20.3 +21000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 37.0 +21000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 109.2 +21000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 36.7 +21000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 42.8 +21000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 4.5 +21000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 2.4 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 61.0 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 120.2 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 310.9 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 549.6 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 585.5 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 183.5 +21000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 90.9 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 1.7 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.8 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 7.5 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.1 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 15.7 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 8.0 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 11.6 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 7.3 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 3.0 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.4 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 1.7 +21000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +21000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2632.6 +21000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 9820.2 +21000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 14790.8 +21000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 3288.5 +21000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 6476.8 +21000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 12511.0 +21000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 9624.2 +21000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 16095.4 +21000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 10933.7 +21000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 24459.8 +21000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 21956.7 +21000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 10.5 +21000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 10.1 +21000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 96.4 +21000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +21000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 102.4 +21000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 41.3 +21000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 915.1 +21000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 3384.4 +21000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 12538.3 +21000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 824.9 +21000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 11.5 +21000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 8.2 +21000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.9 +21000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 21.0 +21000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 184.9 +21000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +21000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 4433.1 +21000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 16454.3 +21000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 6608.0 +21000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 111.5 +21000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 135.7 +21000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 66.6 +21000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 147.3 +21000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 80.6 +21000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 14.9 +21000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 130.6 +21000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 110.0 +21000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 901.3 +21000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1482.1 +21000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1093.2 +21000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 43.1 +21000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 81.8 +21000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 6.7 +21000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 23.4 +21000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 14.3 +21000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 146.0 +21000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +21000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.6 +21000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.8 +21000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.5 +21000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 9.3 +21000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 14.6 +21000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 26.6 +21000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 24.8 +21000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 104.6 +21000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 38.5 +21000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.5 +21000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.6 +21000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +21000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +21000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +21000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.6 +21000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 51.0 +21000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 209.5 +21000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.8 +21000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 9.6 +21000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.0 +21000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +21000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.0 +21000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/LA.POP b/NONROAD/NR08a/DATA/POP/LA.POP new file mode 100644 index 0000000..d819f0a --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/LA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 22000 LA Louisiana 2,033,887.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +22000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +22000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +22000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 23454.7 +22000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11552.3 +22000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 11854.4 +22000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 102591.6 +22000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1867.7 +22000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 5077.6 +22000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.5 +22000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.9 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.6 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 104.3 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 197.5 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1555.6 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 15.9 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.4 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +22000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.5 +22000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 15.9 +22000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +22000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 38.4 +22000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +22000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 14.5 +22000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 9.3 +22000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 64.6 +22000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 3.0 +22000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 23.4 +22000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 3.9 +22000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 4.4 +22000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 3.9 +22000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 4.4 +22000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1933.1 +22000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 4.2 +22000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 181.6 +22000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 921.7 +22000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 283.7 +22000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 50.3 +22000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 69.9 +22000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 12.5 +22000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 32.5 +22000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 3.8 +22000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.6 +22000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.8 +22000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 3.8 +22000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.6 +22000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.8 +22000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 174.0 +22000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 508.9 +22000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 431.5 +22000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 216.1 +22000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 152.3 +22000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 6.2 +22000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.6 +22000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 6.2 +22000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.6 +22000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 75.6 +22000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 116.4 +22000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 33.6 +22000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 14.2 +22000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.4 +22000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +22000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.4 +22000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +22000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.5 +22000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 8.5 +22000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 8.5 +22000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.3 +22000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.4 +22000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 132.3 +22000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 129.5 +22000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 46.3 +22000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 52.8 +22000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 8.8 +22000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 7.4 +22000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 5.8 +22000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 8.8 +22000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 7.4 +22000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 5.8 +22000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 54.6 +22000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1116.9 +22000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 45.2 +22000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 13.8 +22000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 17.5 +22000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 11.5 +22000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 4.6 +22000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.2 +22000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.0 +22000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 4.6 +22000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.2 +22000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.0 +22000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 142.8 +22000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 684.5 +22000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 351.9 +22000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 73.8 +22000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 32.4 +22000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 8.9 +22000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 4.9 +22000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 8.9 +22000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 4.9 +22000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 19.4 +22000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1085.5 +22000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1813.4 +22000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 61.5 +22000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 47.1 +22000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.8 +22000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.6 +22000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.9 +22000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +22000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 6.5 +22000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.0 +22000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +22000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 6.5 +22000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.0 +22000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 17.5 +22000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 24.5 +22000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 44.8 +22000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 11.5 +22000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.4 +22000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.4 +22000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.4 +22000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.4 +22000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +22000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.2 +22000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +22000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.1 +22000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.4 +22000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +22000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.2 +22000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +22000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.1 +22000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +22000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 18.3 +22000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.6 +22000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +22000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 18.3 +22000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.6 +22000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 4.5 +22000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 93.6 +22000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +22000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.6 +22000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +22000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +22000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.6 +22000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +22000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 3.7 +22000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 74.4 +22000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 21.1 +22000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 11.7 +22000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 12.5 +22000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 21.1 +22000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 11.7 +22000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 12.5 +22000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 65.6 +22000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 216.5 +22000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 32.6 +22000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 39.8 +22000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.5 +22000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +22000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 7.8 +22000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 7.4 +22000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.3 +22000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 22.8 +22000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 6.3 +22000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 146.2 +22000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 64.6 +22000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 134.6 +22000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +22000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 64.6 +22000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 134.6 +22000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +22000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 17.1 +22000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 61.2 +22000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 98.6 +22000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 7.2 +22000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 45.8 +22000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.2 +22000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 325.6 +22000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 711.6 +22000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1872.9 +22000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 136.8 +22000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 870.4 +22000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 4.3 +22000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 451.0 +22000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 34.3 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 39.3 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 60.2 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 16.3 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 34.9 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 20.9 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 23.7 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 24.0 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.5 +22000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 20.9 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 23.7 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 24.0 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.5 +22000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +22000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +22000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.6 +22000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 666.4 +22000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 125.9 +22000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 64.1 +22000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 54.2 +22000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +22000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +22000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.1 +22000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +22000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +22000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +22000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +22000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.8 +22000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +22000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +22000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +22000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.3 +22000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 13.2 +22000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 8.0 +22000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.3 +22000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 8.0 +22000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.3 +22000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +22000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +22000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 16.6 +22000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.9 +22000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.6 +22000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +22000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 4.3 +22000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.0 +22000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 7.7 +22000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +22000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +22000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.0 +22000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.5 +22000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 7.6 +22000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +22000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.2 +22000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.4 +22000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +22000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +22000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 10038.6 +22000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 498905.1 +22000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 164.5 +22000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 231.7 +22000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 11517.2 +22000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 3.8 +22000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 930.9 +22000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 6580.9 +22000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 46734.1 +22000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 77.2 +22000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 545.9 +22000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 3876.4 +22000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 81184.6 +22000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +22000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 1248.1 +22000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 4391.6 +22000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 60683.2 +22000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 153678.2 +22000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +22000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +22000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 13168.2 +22000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 935.1 +22000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3504.6 +22000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +22000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +22000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +22000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 206.6 +22000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 55.3 +22000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 2.9 +22000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 6.3 +22000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 8984.3 +22000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 99772.6 +22000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +22000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +22000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 3995.9 +22000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1488.7 +22000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 5653.7 +22000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +22000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +22000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 227.9 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 2228.6 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 70.2 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 76.4 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 5.8 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 39.7 +22000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 39.3 +22000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +22000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +22000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +22000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +22000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +22000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +22000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +22000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +22000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 109.6 +22000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 15859.0 +22000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 12298.5 +22000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 58.2 +22000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.5 +22000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 210.4 +22000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 163.2 +22000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.8 +22000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 217.8 +22000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 743.8 +22000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 328.9 +22000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 4.9 +22000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 797.9 +22000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1561.7 +22000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 391.6 +22000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 12278.5 +22000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 136430.3 +22000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 44465.7 +22000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 5.2 +22000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 162.9 +22000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1810.4 +22000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 590.0 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.3 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 13.1 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 54.2 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 102.1 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.7 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 32.9 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +22000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 7.9 +22000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 7.7 +22000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 32.9 +22000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.3 +22000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 7.9 +22000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.9 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 2687.9 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 715.0 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1595.6 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 2079.7 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 412.1 +22000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 3.6 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 400.0 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1732.2 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 4414.5 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2916.9 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 42.7 +22000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 28.0 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 236.3 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1023.1 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 2607.4 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1722.9 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 25.2 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 16.5 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.6 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.6 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.2 +22000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.7 +22000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 28.6 +22000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 24.6 +22000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 11.8 +22000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.2 +22000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 14.2 +22000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.6 +22000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +22000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +22000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.2 +22000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 146.0 +22000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 46.7 +22000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 5.3 +22000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.0 +22000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 67.7 +22000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.0 +22000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 20.7 +22000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 247.9 +22000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 231.1 +22000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 900.1 +22000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 328.3 +22000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 112.8 +22000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 191.0 +22000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 46.5 +22000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 17.5 +22000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 18.3 +22000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 17.9 +22000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 7915.2 +22000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 19.8 +22000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 78.9 +22000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 44.7 +22000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 17.0 +22000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 82.6 +22000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 49.1 +22000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 43.5 +22000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 3.5 +22000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 5.6 +22000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.9 +22000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 32.8 +22000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 13.7 +22000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.9 +22000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.5 +22000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 8.4 +22000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.3 +22000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +22000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 5.3 +22000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 11.1 +22000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 5.1 +22000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.3 +22000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +22000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 2.7 +22000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 14.5 +22000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 20.6 +22000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.0 +22000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.4 +22000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.5 +22000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 55.3 +22000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1373.2 +22000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 9660.9 +22000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 23198.7 +22000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 5131.4 +22000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 7342.6 +22000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +22000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +22000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +22000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +22000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +22000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +22000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 680.0 +22000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 5.1 +22000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 317.2 +22000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 282.1 +22000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 105.8 +22000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.4 +22000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.4 +22000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 6.4 +22000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 10.9 +22000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 217.3 +22000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 73.1 +22000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 25.2 +22000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 10.3 +22000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 5.2 +22000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1738.9 +22000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3141.7 +22000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.9 +22000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.4 +22000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 4502.4 +22000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2824.0 +22000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 273.5 +22000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 159.4 +22000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 138.6 +22000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.3 +22000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 64.5 +22000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 4.3 +22000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 9.9 +22000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 134.0 +22000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.3 +22000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 64.4 +22000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 4.3 +22000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 9.3 +22000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 4.5 +22000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +22000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.6 +22000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.7 +22000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.8 +22000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.8 +22000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 713.6 +22000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 666.1 +22000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 81.7 +22000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 88.5 +22000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 13.0 +22000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 71.7 +22000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 15.3 +22000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 7.2 +22000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 13.0 +22000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 69.7 +22000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 15.3 +22000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.8 +22000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.1 +22000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 3.3 +22000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.1 +22000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.3 +22000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +22000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.7 +22000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.6 +22000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.6 +22000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.5 +22000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 94.3 +22000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 365.9 +22000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1348.6 +22000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 449.9 +22000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 106.2 +22000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 9.4 +22000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.1 +22000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 106.2 +22000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 9.4 +22000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.1 +22000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.2 +22000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 11913.2 +22000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 7367.7 +22000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2185.7 +22000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 411.0 +22000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 7.0 +22000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.5 +22000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +22000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 7.0 +22000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.5 +22000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +22000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 17.4 +22000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 82.7 +22000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 74.9 +22000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 59.0 +22000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 60.4 +22000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +22000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +22000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +22000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +22000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +22000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +22000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +22000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +22000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +22000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1596.4 +22000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 10135.6 +22000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 560.6 +22000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 181.7 +22000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 17.6 +22000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 7.3 +22000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 8.1 +22000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.9 +22000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 3.3 +22000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.2 +22000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +22000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +22000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +22000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +22000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.6 +22000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +22000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +22000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +22000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +22000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.6 +22000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 504.0 +22000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 924.1 +22000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 613.7 +22000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +22000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 601.6 +22000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 82.4 +22000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 255.2 +22000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 9.3 +22000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 25.2 +22000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 1.8 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 7.2 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 262.5 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 181.5 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.6 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.9 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.8 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 32.1 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 28.3 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 12.5 +22000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.5 +22000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.3 +22000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 31.1 +22000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.9 +22000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 59.0 +22000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 36.7 +22000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 80.4 +22000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 56.5 +22000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 7.3 +22000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 30.4 +22000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 152.2 +22000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 68.0 +22000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 41.4 +22000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 3.8 +22000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 16.4 +22000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 30.8 +22000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 36.8 +22000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 66.1 +22000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 94.3 +22000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 87.4 +22000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 88.5 +22000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 242.1 +22000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 224.5 +22000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 76.6 +22000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 22.7 +22000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +22000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 6.1 +22000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 70.2 +22000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 90.9 +22000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 42.2 +22000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +22000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 13.1 +22000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 14.7 +22000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.1 +22000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 7.6 +22000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 10.1 +22000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +22000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 9.9 +22000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 11.7 +22000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 21.3 +22000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 6.6 +22000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.3 +22000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +22000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.8 +22000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 11.3 +22000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 9.5 +22000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 3.3 +22000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +22000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 9.0 +22000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 2.8 +22000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +22000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 2.8 +22000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.2 +22000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +22000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +22000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 24.6 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 58.0 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 31.0 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 490.6 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 150.5 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 10.8 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 6.2 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 5.0 +22000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.2 +22000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +22000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +22000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.9 +22000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.2 +22000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 67.8 +22000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 169.1 +22000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 281.3 +22000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 113.6 +22000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 35.3 +22000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 23.6 +22000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 12.0 +22000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.0 +22000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.7 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.1 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 2.4 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 41.8 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 42.5 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 68.9 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 70.1 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 103.0 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 89.5 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 51.6 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 12.1 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 6.6 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +22000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +22000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.8 +22000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 4.5 +22000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 9.3 +22000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 41.5 +22000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 86.0 +22000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 45.8 +22000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 35.6 +22000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 160.5 +22000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 599.7 +22000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 438.4 +22000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 116.1 +22000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 3.7 +22000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 4.3 +22000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +22000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.6 +22000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 3.8 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 6.4 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 37.0 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.3 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 11.9 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 17.1 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.1 +22000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 75.2 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 44.8 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 8.3 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 7.6 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 5.5 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 9.5 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 15.8 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 5.0 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.8 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.2 +22000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.5 +22000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +22000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 6.9 +22000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +22000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 3.6 +22000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 35.3 +22000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 132.9 +22000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 135.9 +22000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 83.7 +22000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 3.6 +22000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.0 +22000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +22000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +22000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +22000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.6 +22000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 12.1 +22000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 123.4 +22000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 206.8 +22000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 23.6 +22000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.4 +22000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.3 +22000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 31.0 +22000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 65.9 +22000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 37.3 +22000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 18.1 +22000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 5.7 +22000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 29.0 +22000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 7.1 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.8 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.1 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 4.2 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 47.6 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 11.5 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 18.0 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 6.8 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 17.7 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.3 +22000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 2.4 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 56.7 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 63.1 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 125.1 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 716.1 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 367.9 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 19.1 +22000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 25.1 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.6 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 28.7 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 32.9 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 46.6 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 200.3 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 506.5 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 483.5 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 354.7 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 26.8 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 13.1 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 2.7 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 16.0 +22000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.6 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 29.2 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 58.3 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 31.1 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 581.7 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2055.0 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1367.3 +22000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 7.4 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 6.0 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 173.5 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 392.2 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 339.6 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 172.0 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 67.8 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 14.0 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 24.4 +22000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +22000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.6 +22000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 256.6 +22000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 568.9 +22000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1113.3 +22000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 440.2 +22000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 2417.4 +22000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1589.2 +22000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 40.0 +22000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +22000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 5.4 +22000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 9.2 +22000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 22.1 +22000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 7.2 +22000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.7 +22000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 5.7 +22000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +22000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 10.9 +22000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 10.4 +22000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 7.4 +22000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 8.6 +22000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.9 +22000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.9 +22000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 5.9 +22000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.1 +22000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.4 +22000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +22000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.6 +22000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 4.5 +22000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.4 +22000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 4.4 +22000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 4.3 +22000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 30.1 +22000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 26.9 +22000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 65.0 +22000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 11.9 +22000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +22000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.8 +22000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.3 +22000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 8.5 +22000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 118.7 +22000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 147.5 +22000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 34.9 +22000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 247.9 +22000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 88.1 +22000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.1 +22000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +22000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +22000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.4 +22000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.1 +22000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 187.2 +22000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 188.6 +22000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 67.7 +22000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 11.0 +22000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 14.1 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.1 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 19.2 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 46.2 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 31.2 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 30.2 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 111.1 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 124.8 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 33.6 +22000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.6 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 21.9 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.1 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 2.7 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 4.7 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 14.7 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 5.4 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 41.5 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 129.3 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 184.0 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 57.4 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 5.9 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.0 +22000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 3.5 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 17.6 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 5.3 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 24.4 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 9.3 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.3 +22000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +22000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 98.3 +22000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 302.1 +22000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 283.2 +22000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 72.6 +22000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 532.4 +22000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2047.7 +22000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +22000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +22000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +22000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +22000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +22000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +22000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 23.7 +22000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 41.1 +22000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 66.0 +22000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 109.9 +22000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.4 +22000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 2.2 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.5 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +22000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +22000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +22000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +22000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 2.2 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 61.7 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 855.7 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 414.7 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 92.6 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 152.1 +22000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 32.5 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.3 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 15.0 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 375.7 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 6.5 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 3.8 +22000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 5.7 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 1.4 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 14.8 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 55.3 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 244.2 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 77.3 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 46.7 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 39.6 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 9.0 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.5 +22000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.2 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 8.8 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 11.4 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 21.1 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 10.2 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.2 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 10.8 +22000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 9.0 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 2.2 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.8 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.5 +22000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +22000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.9 +22000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 3.8 +22000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +22000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 871.3 +22000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2343.5 +22000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1339.1 +22000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2120.3 +22000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1868.7 +22000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 3113.8 +22000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 2684.4 +22000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1389.0 +22000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +22000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 146.4 +22000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1343.0 +22000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1601.4 +22000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 82.7 +22000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.6 +22000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 34.9 +22000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 12.9 +22000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 10.9 +22000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.5 +22000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 3.3 +22000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 17.5 +22000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 7.9 +22000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 5.0 +22000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 13.3 +22000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 81.8 +22000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 157.9 +22000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 171.5 +22000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 46.5 +22000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.3 +22000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +22000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +22000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 98.9 +22000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 467.2 +22000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 92.3 +22000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 4.1 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 3.1 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 11.1 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 5.9 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 3.6 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 27.9 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 34.9 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 87.0 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 88.0 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 36.9 +22000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +22000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +22000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +22000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 7.0 +22000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 16.0 +22000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 6.4 +22000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 25.0 +22000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 117.8 +22000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 61.8 +22000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 17.6 +22000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.3 +22000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +22000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 824.0 +22000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 822.7 +22000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 634.1 +22000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 998.5 +22000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1652.7 +22000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 225.7 +22000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 832.9 +22000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1013.7 +22000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 346.0 +22000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 192.4 +22000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 99.9 +22000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +22000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +22000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +22000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +22000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +22000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.4 +22000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 141.9 +22000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 341.0 +22000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 85.6 +22000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 68.0 +22000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 118.4 +22000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 33.5 +22000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 227.1 +22000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 252.8 +22000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 111.5 +22000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 27.9 +22000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 14.1 +22000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +22000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +22000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +22000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +22000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +22000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.8 +22000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 11.8 +22000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.6 +22000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.4 +22000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 90.6 +22000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 62.7 +22000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 402.0 +22000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 523.6 +22000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 60.0 +22000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 53.9 +22000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 15.4 +22000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +22000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +22000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +22000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +22000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +22000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +22000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 52.4 +22000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 290.2 +22000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 422.4 +22000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 262.0 +22000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 726.2 +22000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 527.5 +22000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 231.6 +22000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 12.1 +22000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +22000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +22000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 9.2 +22000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 78.0 +22000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 89.6 +22000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 111.9 +22000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 106.9 +22000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 13.4 +22000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 45.0 +22000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 12.6 +22000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 41.8 +22000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 33.8 +22000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 5.2 +22000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.4 +22000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.2 +22000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.7 +22000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.9 +22000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 8.0 +22000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 11.7 +22000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.7 +22000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 17.9 +22000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 20.6 +22000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 5.6 +22000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.7 +22000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +22000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +22000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.7 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.9 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.3 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 64.5 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 447.5 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 641.3 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 55.4 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 22.7 +22000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.6 +22000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 10.1 +22000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +22000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +22000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.4 +22000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.5 +22000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 10.6 +22000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 19.3 +22000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 56.9 +22000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 19.1 +22000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 22.3 +22000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 2.4 +22000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +22000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 29.1 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 14.2 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 132.4 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 19.4 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 275.5 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 140.2 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 202.9 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 128.6 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 53.3 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 23.7 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 29.0 +22000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.8 +22000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 5789.1 +22000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 21594.6 +22000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 32524.8 +22000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 7231.3 +22000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 14242.4 +22000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 27511.7 +22000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 21163.5 +22000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 35393.7 +22000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 24043.1 +22000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 53786.8 +22000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 48282.6 +22000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 23.0 +22000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 22.2 +22000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 212.1 +22000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.4 +22000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 225.2 +22000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 90.8 +22000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 2012.2 +22000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 7442.3 +22000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 27571.6 +22000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1814.0 +22000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 25.3 +22000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 18.1 +22000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 10.7 +22000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 46.3 +22000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 406.6 +22000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +22000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 9748.3 +22000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 36182.8 +22000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 14531.0 +22000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 245.2 +22000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 298.3 +22000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 146.4 +22000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 323.9 +22000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 177.2 +22000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 32.7 +22000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 287.1 +22000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 241.8 +22000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1981.9 +22000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 3259.0 +22000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 2404.0 +22000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 94.9 +22000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 179.9 +22000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 14.6 +22000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 51.4 +22000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 31.5 +22000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 321.0 +22000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +22000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.2 +22000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.4 +22000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.9 +22000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 7.1 +22000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 11.1 +22000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 20.3 +22000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 18.9 +22000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 79.6 +22000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 29.3 +22000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 5.0 +22000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.2 +22000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +22000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.5 +22000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +22000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.2 +22000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 38.8 +22000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 159.5 +22000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.9 +22000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 7.3 +22000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.3 +22000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +22000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.3 +22000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MA.POP b/NONROAD/NR08a/DATA/POP/MA.POP new file mode 100644 index 0000000..beb0dfd --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 25000 MA Massachusetts 2,667,230.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +25000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 56.0 +25000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 33.0 +25000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 35.5 +25000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 2827.7 +25000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 2854.3 +25000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1281.1 +25000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 4513.3 +25000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 1854.9 +25000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 483.2 +25000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 7921.2 +25000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3901.5 +25000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 4003.5 +25000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 34647.7 +25000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 4832.4 +25000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 7272.8 +25000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.2 +25000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.2 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.7 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 149.3 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 282.9 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2228.1 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 22.8 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 55.0 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +25000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 20.8 +25000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 22.8 +25000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +25000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 55.0 +25000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +25000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 20.8 +25000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 11.7 +25000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 81.8 +25000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 3.8 +25000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 29.6 +25000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 5.0 +25000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 5.5 +25000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 5.0 +25000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 5.5 +25000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2446.3 +25000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 5.3 +25000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 229.9 +25000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1166.4 +25000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 359.1 +25000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 63.6 +25000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 88.4 +25000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 15.8 +25000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 41.1 +25000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 4.9 +25000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.3 +25000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.3 +25000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 4.9 +25000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.3 +25000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.3 +25000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 220.2 +25000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 644.0 +25000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 546.1 +25000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 273.5 +25000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 192.7 +25000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 7.8 +25000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.7 +25000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 7.8 +25000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.7 +25000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 95.6 +25000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 147.3 +25000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 42.6 +25000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 17.9 +25000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.8 +25000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +25000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.8 +25000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.6 +25000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.6 +25000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 10.8 +25000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 10.8 +25000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.4 +25000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.5 +25000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 167.4 +25000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 163.9 +25000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 58.6 +25000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 66.8 +25000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 11.1 +25000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 9.4 +25000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 7.4 +25000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 11.1 +25000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 9.4 +25000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 7.4 +25000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 69.1 +25000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1413.4 +25000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 57.2 +25000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 17.5 +25000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 22.2 +25000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 14.6 +25000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.9 +25000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 5.3 +25000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 8.9 +25000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.9 +25000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 5.3 +25000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 8.9 +25000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 180.8 +25000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 866.2 +25000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 445.4 +25000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 93.4 +25000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 41.1 +25000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 11.3 +25000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 6.2 +25000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 11.3 +25000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 6.2 +25000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 24.5 +25000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1373.6 +25000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2294.9 +25000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 77.9 +25000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 59.7 +25000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.3 +25000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.3 +25000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.2 +25000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +25000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 8.2 +25000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.3 +25000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +25000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 8.2 +25000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.3 +25000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 22.1 +25000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 31.1 +25000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 56.7 +25000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 14.5 +25000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.8 +25000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.8 +25000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.5 +25000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.8 +25000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +25000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 11.6 +25000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +25000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.4 +25000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.8 +25000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +25000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 11.6 +25000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +25000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.4 +25000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.5 +25000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 23.2 +25000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.8 +25000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.5 +25000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 23.2 +25000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.8 +25000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 5.7 +25000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 118.5 +25000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +25000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.1 +25000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +25000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +25000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.1 +25000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +25000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 4.7 +25000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 94.2 +25000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 26.7 +25000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 14.8 +25000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 15.8 +25000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 26.7 +25000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 14.8 +25000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 15.8 +25000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 83.0 +25000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 274.0 +25000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 41.2 +25000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 50.4 +25000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.0 +25000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.3 +25000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 9.8 +25000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 9.4 +25000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.4 +25000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 51.8 +25000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 14.4 +25000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 332.3 +25000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 146.9 +25000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 306.1 +25000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 6.8 +25000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 146.9 +25000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 306.1 +25000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 6.8 +25000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 38.9 +25000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 139.1 +25000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 224.1 +25000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 16.4 +25000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 104.1 +25000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.5 +25000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 740.0 +25000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1617.6 +25000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 4257.4 +25000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 310.9 +25000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1978.6 +25000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 9.7 +25000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1025.1 +25000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 78.1 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 89.4 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 136.8 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 37.0 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 79.3 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 47.6 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 53.8 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 54.6 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.1 +25000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 47.6 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 53.8 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 54.6 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.1 +25000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +25000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.5 +25000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.7 +25000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1514.8 +25000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 286.2 +25000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 145.8 +25000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 123.2 +25000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.0 +25000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 15.3 +25000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.5 +25000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.8 +25000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +25000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.0 +25000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 15.3 +25000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.9 +25000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.8 +25000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +25000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.6 +25000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.8 +25000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 30.1 +25000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 18.3 +25000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.7 +25000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 18.3 +25000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.7 +25000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.5 +25000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.8 +25000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 23.8 +25000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.7 +25000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.9 +25000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +25000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 9.7 +25000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 4.5 +25000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 17.5 +25000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +25000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +25000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 9.2 +25000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.5 +25000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 17.3 +25000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +25000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.5 +25000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.0 +25000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +25000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +25000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 14139.0 +25000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 702687.9 +25000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 231.7 +25000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 546.5 +25000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 27158.2 +25000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 9.0 +25000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1311.1 +25000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 9268.9 +25000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 65823.1 +25000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 182.1 +25000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1287.2 +25000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 9140.8 +25000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 114345.3 +25000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +25000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2943.2 +25000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 10355.7 +25000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 85469.8 +25000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 216449.6 +25000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +25000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +25000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 31051.3 +25000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2205.1 +25000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4936.0 +25000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +25000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +25000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +25000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 487.1 +25000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 130.3 +25000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 6.9 +25000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 14.9 +25000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 12654.0 +25000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 140525.7 +25000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +25000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +25000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 9422.6 +25000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3510.4 +25000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7962.9 +25000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +25000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +25000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 537.3 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 5255.1 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 165.5 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 180.1 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 13.7 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 93.5 +25000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 92.7 +25000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 38658.1 +25000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 59197.6 +25000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 99869.5 +25000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 4667.7 +25000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 4239.4 +25000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 6491.8 +25000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 10952.1 +25000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 511.9 +25000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 154.4 +25000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 22336.7 +25000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 17322.0 +25000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 81.9 +25000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.4 +25000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 496.2 +25000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 384.8 +25000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.8 +25000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 513.5 +25000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1754.0 +25000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 775.5 +25000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 11.6 +25000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1881.6 +25000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3682.5 +25000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 551.6 +25000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 17293.7 +25000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 192156.5 +25000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 62628.2 +25000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 12.2 +25000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 384.2 +25000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 4268.9 +25000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1391.3 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.6 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 31.0 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 127.8 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 240.8 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 18.2 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 77.6 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +25000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 18.6 +25000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 18.2 +25000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 77.6 +25000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +25000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 18.6 +25000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.2 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 6338.3 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1686.0 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3762.4 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 4904.1 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 971.7 +25000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 8.4 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 563.4 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2439.7 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 6217.7 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 4108.4 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 60.2 +25000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 39.4 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 557.1 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2412.5 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 6148.4 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 4062.6 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 59.5 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 39.0 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.8 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.3 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.5 +25000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.5 +25000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 1.4 +25000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 1.2 +25000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.6 +25000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.1 +25000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.7 +25000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.1 +25000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +25000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +25000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +25000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 7.0 +25000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 2.2 +25000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.3 +25000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +25000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 3.2 +25000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +25000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1.0 +25000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 11.8 +25000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 11.0 +25000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 43.0 +25000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 15.7 +25000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 5.4 +25000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 9.1 +25000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 2.2 +25000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.8 +25000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.9 +25000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.9 +25000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 378.3 +25000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.9 +25000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 3.8 +25000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 2.1 +25000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.8 +25000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 3.9 +25000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 2.3 +25000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 2.1 +25000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.2 +25000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.3 +25000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +25000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 1.6 +25000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.7 +25000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +25000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.1 +25000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.4 +25000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.1 +25000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +25000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.3 +25000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.5 +25000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.2 +25000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.1 +25000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +25000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.1 +25000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.7 +25000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1.0 +25000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.1 +25000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.1 +25000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +25000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 87.5 +25000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 2173.0 +25000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 15287.4 +25000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 36709.5 +25000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 8119.9 +25000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 11619.0 +25000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +25000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +25000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +25000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +25000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +25000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +25000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1076.0 +25000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 8.1 +25000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 501.9 +25000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 446.3 +25000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 167.4 +25000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.9 +25000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.6 +25000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 10.2 +25000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 17.2 +25000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 343.8 +25000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 115.7 +25000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 39.9 +25000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 16.3 +25000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 8.3 +25000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2751.6 +25000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4971.5 +25000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 3.0 +25000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.6 +25000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 7124.6 +25000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 4468.7 +25000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 432.8 +25000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 252.2 +25000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 219.3 +25000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.0 +25000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 102.0 +25000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 6.8 +25000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 15.7 +25000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 212.1 +25000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.0 +25000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 101.9 +25000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 6.8 +25000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 14.7 +25000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 7.2 +25000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +25000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.0 +25000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.1 +25000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.2 +25000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.3 +25000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1129.2 +25000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1054.0 +25000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 129.3 +25000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 140.1 +25000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 20.5 +25000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 113.5 +25000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 24.2 +25000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 11.3 +25000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 20.5 +25000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 110.2 +25000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 24.2 +25000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 6.0 +25000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 3.3 +25000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 5.3 +25000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 3.3 +25000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 2.0 +25000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.5 +25000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 5.9 +25000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.0 +25000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.5 +25000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.8 +25000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 149.3 +25000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 578.9 +25000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 2134.1 +25000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 711.9 +25000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 168.0 +25000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 14.9 +25000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 3.4 +25000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 168.0 +25000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 14.9 +25000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 3.4 +25000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 3.5 +25000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 18851.4 +25000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 11658.6 +25000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 3458.7 +25000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 650.4 +25000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 11.0 +25000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.8 +25000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +25000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 11.0 +25000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.8 +25000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +25000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 27.5 +25000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 130.8 +25000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 118.5 +25000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 93.4 +25000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 95.6 +25000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.4 +25000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +25000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +25000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +25000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.4 +25000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +25000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +25000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +25000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +25000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 171.5 +25000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1088.8 +25000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 60.2 +25000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 19.5 +25000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 1.9 +25000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.8 +25000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 17.2 +25000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.0 +25000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 6.9 +25000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.4 +25000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +25000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +25000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +25000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.9 +25000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 5.5 +25000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +25000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +25000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +25000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.9 +25000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 5.5 +25000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +25000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +25000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +25000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +25000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +25000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +25000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +25000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +25000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +25000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 10.3 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 376.1 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 260.0 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.9 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 5.5 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 5.5 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 46.0 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 40.5 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 17.9 +25000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.7 +25000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.6 +25000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 39.3 +25000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 3.6 +25000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 74.6 +25000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 46.4 +25000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 101.8 +25000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 71.5 +25000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 9.2 +25000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 38.5 +25000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 192.6 +25000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 86.1 +25000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 52.3 +25000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 4.8 +25000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 20.7 +25000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 38.9 +25000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 46.6 +25000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 83.7 +25000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 119.3 +25000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 110.6 +25000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 112.0 +25000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 306.4 +25000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 284.1 +25000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 97.0 +25000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 28.8 +25000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +25000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 7.7 +25000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 88.8 +25000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 115.0 +25000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 53.4 +25000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +25000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 16.6 +25000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 18.6 +25000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.4 +25000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 9.6 +25000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 12.8 +25000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +25000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 12.5 +25000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 14.8 +25000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 27.0 +25000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 8.4 +25000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +25000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +25000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.0 +25000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 14.3 +25000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 12.0 +25000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 4.1 +25000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +25000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 11.4 +25000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 3.5 +25000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +25000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 3.5 +25000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.5 +25000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.3 +25000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +25000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 31.2 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 73.4 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 39.2 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 620.8 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 190.5 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 13.6 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 7.9 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 6.3 +25000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.5 +25000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +25000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +25000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.1 +25000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.6 +25000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 85.8 +25000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 214.0 +25000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 356.0 +25000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 143.8 +25000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 44.7 +25000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 29.8 +25000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 15.2 +25000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.3 +25000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.9 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.4 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.1 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 52.9 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 53.8 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 87.2 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 88.7 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 130.3 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 113.3 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 65.3 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 15.3 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 8.4 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +25000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +25000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.0 +25000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 5.7 +25000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 11.8 +25000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 52.5 +25000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 108.8 +25000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 58.0 +25000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 45.0 +25000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 203.1 +25000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 758.9 +25000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 554.8 +25000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 147.0 +25000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 4.7 +25000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 5.4 +25000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +25000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.1 +25000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 4.8 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 8.2 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 46.8 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.7 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 15.0 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 21.6 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.6 +25000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 95.2 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 56.7 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 10.5 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 9.6 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 7.0 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 12.0 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 20.0 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 6.3 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.2 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.8 +25000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.6 +25000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +25000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 8.7 +25000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +25000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 4.6 +25000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 44.7 +25000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 168.2 +25000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 172.0 +25000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 105.9 +25000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 4.6 +25000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.3 +25000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +25000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +25000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +25000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.0 +25000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 15.3 +25000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 156.2 +25000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 261.6 +25000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 29.9 +25000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.8 +25000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.4 +25000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 39.3 +25000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 83.4 +25000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 47.2 +25000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 22.9 +25000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 7.3 +25000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 36.7 +25000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 8.9 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.0 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.4 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 5.3 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 60.2 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 14.6 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 22.8 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 8.6 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 22.4 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.7 +25000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.1 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 71.8 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 79.9 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 158.4 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 906.2 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 465.5 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 24.1 +25000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 31.8 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.7 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 36.3 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 41.7 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 59.0 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 253.5 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 640.9 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 611.9 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 448.9 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 33.9 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 16.5 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 3.4 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 20.3 +25000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.7 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 36.9 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 73.8 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 39.4 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 736.1 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2600.5 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1730.3 +25000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 9.4 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 7.6 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 219.6 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 496.3 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 429.8 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 217.6 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 85.8 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 17.8 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 30.9 +25000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +25000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.0 +25000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 324.7 +25000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 720.0 +25000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1408.8 +25000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 557.1 +25000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3059.2 +25000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2011.1 +25000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 50.7 +25000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +25000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 6.8 +25000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 11.7 +25000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 28.0 +25000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 9.2 +25000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.9 +25000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 7.2 +25000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +25000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 13.8 +25000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 13.2 +25000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 9.4 +25000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 10.9 +25000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.4 +25000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.1 +25000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 7.4 +25000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.7 +25000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.4 +25000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +25000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.0 +25000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 5.7 +25000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.5 +25000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 5.6 +25000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 5.5 +25000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 38.1 +25000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 34.0 +25000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 82.2 +25000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 15.0 +25000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +25000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.0 +25000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.9 +25000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 19.3 +25000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 269.9 +25000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 335.3 +25000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 79.3 +25000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 563.5 +25000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 200.3 +25000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.4 +25000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.4 +25000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +25000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.0 +25000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 11.5 +25000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 425.5 +25000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 428.6 +25000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 153.9 +25000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 25.0 +25000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 32.0 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 7.2 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 43.7 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 105.0 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 70.9 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 68.6 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 252.6 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 283.7 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 76.3 +25000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.3 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 49.9 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 9.4 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 6.1 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 10.6 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 33.5 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 12.2 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 94.4 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 294.0 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 418.2 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 130.5 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 13.3 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.2 +25000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 8.0 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 40.0 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 12.1 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 55.5 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 21.1 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.9 +25000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +25000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 140.7 +25000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 432.7 +25000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 405.7 +25000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 104.0 +25000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 762.5 +25000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2932.9 +25000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +25000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +25000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +25000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +25000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +25000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +25000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 53.8 +25000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 93.4 +25000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 150.1 +25000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 249.9 +25000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 7.6 +25000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 5.1 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.2 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +25000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +25000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.9 +25000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 7.4 +25000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 9.3 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 5.2 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 145.4 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2017.7 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 978.0 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 218.5 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 358.7 +25000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 76.7 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 35.5 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 885.9 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 15.4 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 8.9 +25000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 13.5 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.3 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 34.9 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 130.3 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 575.8 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 182.3 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 110.1 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 93.4 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 21.1 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.5 +25000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.4 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 20.7 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 26.9 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 49.6 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 24.1 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 25.4 +25000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 21.2 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.6 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 5.1 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.3 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.2 +25000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +25000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +25000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.2 +25000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +25000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 41.6 +25000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 112.0 +25000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 64.0 +25000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 101.3 +25000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 89.3 +25000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 148.8 +25000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 128.3 +25000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 66.4 +25000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +25000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 7.0 +25000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 64.2 +25000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 76.5 +25000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 4.0 +25000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.1 +25000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 1.7 +25000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.6 +25000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.5 +25000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +25000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.2 +25000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.8 +25000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.4 +25000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.2 +25000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.6 +25000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 3.9 +25000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 7.5 +25000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 8.2 +25000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 2.2 +25000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +25000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +25000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +25000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 4.7 +25000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 22.3 +25000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 4.4 +25000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.2 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.1 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.5 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.3 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.2 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 1.3 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 1.7 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 4.2 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 4.2 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 1.8 +25000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +25000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +25000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +25000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.3 +25000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.8 +25000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.3 +25000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 1.2 +25000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 5.6 +25000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 3.0 +25000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.8 +25000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.1 +25000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +25000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1303.9 +25000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1301.9 +25000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1003.5 +25000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1580.0 +25000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2615.3 +25000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 357.2 +25000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1318.0 +25000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1604.0 +25000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 547.5 +25000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 304.4 +25000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 158.1 +25000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +25000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +25000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +25000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +25000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +25000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.6 +25000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 224.5 +25000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 539.6 +25000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 135.4 +25000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 107.7 +25000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 187.3 +25000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 53.1 +25000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 359.3 +25000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 400.0 +25000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 176.4 +25000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 44.2 +25000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 22.4 +25000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +25000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +25000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +25000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +25000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +25000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 7.6 +25000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 18.7 +25000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.5 +25000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.9 +25000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 143.4 +25000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 99.2 +25000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 636.1 +25000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 828.5 +25000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 95.0 +25000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 85.3 +25000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 24.4 +25000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +25000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +25000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +25000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +25000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +25000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +25000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 82.9 +25000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 459.2 +25000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 668.5 +25000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 414.6 +25000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1149.2 +25000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 834.7 +25000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 366.5 +25000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 19.1 +25000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +25000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +25000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 14.5 +25000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 123.5 +25000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 141.8 +25000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 177.0 +25000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 169.2 +25000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 21.2 +25000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 71.2 +25000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 19.9 +25000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 66.1 +25000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 53.5 +25000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 8.2 +25000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.8 +25000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.9 +25000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 4.3 +25000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.4 +25000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 12.7 +25000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 18.5 +25000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 5.8 +25000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 28.3 +25000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 32.7 +25000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 8.8 +25000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.1 +25000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.3 +25000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +25000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 6.9 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 48.1 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 68.9 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 6.0 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 2.4 +25000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +25000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 21.5 +25000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +25000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.3 +25000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.8 +25000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.1 +25000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 22.5 +25000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 41.0 +25000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 121.1 +25000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 40.6 +25000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 47.5 +25000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 5.0 +25000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +25000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +25000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +25000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 3898.3 +25000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 14541.5 +25000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 21901.7 +25000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 4869.5 +25000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9590.6 +25000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 18526.0 +25000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 14251.2 +25000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 23833.6 +25000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 16190.3 +25000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 36219.3 +25000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 32512.8 +25000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 15.5 +25000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 15.0 +25000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 142.8 +25000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +25000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 151.6 +25000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 61.1 +25000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1355.0 +25000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5011.6 +25000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 18566.3 +25000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1221.5 +25000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 17.0 +25000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 12.2 +25000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.2 +25000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 31.1 +25000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 273.8 +25000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +25000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6564.4 +25000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 24365.0 +25000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 9785.0 +25000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 165.1 +25000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 200.9 +25000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 98.6 +25000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 218.1 +25000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 119.3 +25000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 22.0 +25000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 193.3 +25000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 162.8 +25000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1334.6 +25000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2194.6 +25000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1618.8 +25000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 63.9 +25000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 121.1 +25000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 9.9 +25000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 34.6 +25000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 21.2 +25000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 216.1 +25000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +25000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.2 +25000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.2 +25000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.3 +25000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 1.0 +25000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 1.5 +25000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 2.7 +25000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 2.5 +25000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 10.7 +25000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 4.0 +25000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.7 +25000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.2 +25000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +25000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +25000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +25000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.2 +25000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 5.2 +25000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 21.5 +25000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.4 +25000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 1.0 +25000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +25000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +25000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +25000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MD.POP b/NONROAD/NR08a/DATA/POP/MD.POP new file mode 100644 index 0000000..7be30e7 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MD.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 24000 MD Maryland 2,316,654.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +24000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 1.0 +24000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.6 +24000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.6 +24000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 50.1 +24000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 50.6 +24000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 22.7 +24000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 80.0 +24000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 32.9 +24000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 8.6 +24000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 8446.2 +24000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 4160.1 +24000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 4268.8 +24000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 36943.9 +24000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2104.9 +24000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6171.5 +24000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.8 +24000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.0 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.1 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 126.7 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 240.0 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1890.8 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +24000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +24000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +24000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +24000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +24000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +24000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +24000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 13.2 +24000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 92.0 +24000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.3 +24000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 33.3 +24000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 5.6 +24000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 6.2 +24000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 5.6 +24000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 6.2 +24000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2753.5 +24000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.0 +24000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 258.7 +24000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1312.9 +24000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 404.2 +24000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 71.6 +24000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 99.5 +24000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 17.8 +24000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 46.3 +24000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 5.5 +24000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.8 +24000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.6 +24000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 5.5 +24000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.8 +24000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.6 +24000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 247.8 +24000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 724.8 +24000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 614.7 +24000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 307.9 +24000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 216.9 +24000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 8.8 +24000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.8 +24000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 8.8 +24000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.8 +24000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 107.6 +24000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 165.8 +24000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 47.9 +24000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 20.2 +24000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +24000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +24000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +24000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +24000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.7 +24000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 12.2 +24000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 12.1 +24000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +24000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.5 +24000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 188.4 +24000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 184.5 +24000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 65.9 +24000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 75.2 +24000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 12.5 +24000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 10.6 +24000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 8.3 +24000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 12.5 +24000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 10.6 +24000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 8.3 +24000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 77.7 +24000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1590.9 +24000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 64.3 +24000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 19.7 +24000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 25.0 +24000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 16.4 +24000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.6 +24000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.0 +24000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.0 +24000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.6 +24000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.0 +24000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.0 +24000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 203.4 +24000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 974.9 +24000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 501.3 +24000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 105.1 +24000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 46.2 +24000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 12.7 +24000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 6.9 +24000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 12.7 +24000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 6.9 +24000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 27.6 +24000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1546.1 +24000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2583.1 +24000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 87.6 +24000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 67.2 +24000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.6 +24000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.7 +24000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.3 +24000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +24000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 9.2 +24000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.5 +24000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +24000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 9.2 +24000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.5 +24000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 24.9 +24000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 35.0 +24000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 63.8 +24000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 16.4 +24000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.0 +24000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.0 +24000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.6 +24000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +24000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +24000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.1 +24000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +24000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.5 +24000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +24000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +24000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.1 +24000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +24000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.5 +24000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +24000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.1 +24000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.9 +24000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +24000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.1 +24000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.9 +24000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 6.4 +24000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 133.4 +24000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +24000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.3 +24000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +24000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +24000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.3 +24000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +24000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.3 +24000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 106.0 +24000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.1 +24000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 16.6 +24000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 17.7 +24000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.1 +24000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 16.6 +24000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 17.7 +24000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 93.5 +24000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 308.4 +24000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 46.4 +24000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 56.7 +24000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.2 +24000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +24000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 11.1 +24000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 10.6 +24000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.5 +24000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 22.7 +24000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 6.3 +24000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 145.6 +24000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 64.4 +24000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 134.2 +24000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +24000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 64.4 +24000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 134.2 +24000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +24000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 17.1 +24000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 61.0 +24000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 98.2 +24000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 7.2 +24000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 45.6 +24000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.2 +24000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 324.4 +24000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 709.1 +24000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1866.2 +24000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 136.3 +24000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 867.3 +24000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 4.2 +24000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 449.3 +24000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 34.2 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 39.2 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 60.0 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 16.2 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 34.7 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 20.9 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 23.6 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 23.9 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.5 +24000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 20.9 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 23.6 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 23.9 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.5 +24000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +24000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +24000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.6 +24000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 664.0 +24000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 125.5 +24000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 63.9 +24000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 54.0 +24000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +24000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +24000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.1 +24000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +24000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +24000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +24000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +24000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.8 +24000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.6 +24000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +24000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +24000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.3 +24000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 13.2 +24000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 8.0 +24000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.3 +24000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 8.0 +24000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.3 +24000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +24000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +24000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 20.2 +24000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.3 +24000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.8 +24000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +24000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 4.3 +24000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.0 +24000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 7.7 +24000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +24000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +24000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.0 +24000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.5 +24000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 7.6 +24000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +24000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.2 +24000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.4 +24000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +24000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +24000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 11727.1 +24000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 582823.1 +24000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 192.2 +24000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 800.5 +24000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 39786.2 +24000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 13.1 +24000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1087.5 +24000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 7687.8 +24000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 54595.0 +24000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 266.7 +24000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1885.7 +24000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 13391.1 +24000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 94840.2 +24000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +24000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 4311.7 +24000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 15170.8 +24000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 70890.4 +24000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 179527.5 +24000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +24000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +24000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 45489.5 +24000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 3230.4 +24000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4094.0 +24000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +24000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +24000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +24000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 713.6 +24000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 190.9 +24000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 10.1 +24000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 21.9 +24000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 10495.5 +24000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 116554.8 +24000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +24000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +24000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 13804.0 +24000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 5142.7 +24000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 6604.6 +24000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +24000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +24000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 787.2 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 7698.6 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 242.5 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 263.8 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 20.1 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 137.0 +24000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 135.9 +24000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 29795.4 +24000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 45626.0 +24000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 76973.5 +24000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 3597.6 +24000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 5721.3 +24000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 8761.1 +24000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 14780.5 +24000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 690.8 +24000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 128.0 +24000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 18526.5 +24000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 14367.2 +24000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 68.0 +24000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 5.0 +24000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 727.0 +24000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 563.8 +24000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 2.7 +24000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 752.3 +24000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2569.6 +24000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1136.1 +24000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 17.1 +24000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 2756.5 +24000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 5394.8 +24000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 457.5 +24000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 14343.8 +24000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 159378.4 +24000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 51945.1 +24000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 17.9 +24000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 562.8 +24000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 6253.9 +24000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2038.3 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.9 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 45.4 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 187.2 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 352.8 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 26.6 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 113.6 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.0 +24000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 27.2 +24000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 26.6 +24000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 113.6 +24000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.0 +24000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 27.2 +24000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 3.2 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 9285.4 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2469.9 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 5511.8 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 7184.4 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1423.5 +24000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 12.3 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 467.3 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2023.5 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5157.0 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3407.6 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 49.9 +24000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 32.7 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 816.2 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 3534.3 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 9007.2 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 5951.6 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 87.2 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 57.1 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 5.6 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.9 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.7 +24000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.2 +24000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 11.0 +24000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 9.5 +24000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 4.6 +24000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.5 +24000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 5.4 +24000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.6 +24000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +24000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +24000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +24000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 56.2 +24000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 18.0 +24000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 2.0 +24000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.4 +24000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 26.0 +24000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.4 +24000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 8.0 +24000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 95.4 +24000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 88.9 +24000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 346.3 +24000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 126.3 +24000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 43.4 +24000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 73.5 +24000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 17.9 +24000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 6.7 +24000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 7.0 +24000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 6.9 +24000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 3045.3 +24000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 7.6 +24000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 30.4 +24000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 17.2 +24000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 6.5 +24000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 31.8 +24000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 18.9 +24000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 16.7 +24000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 1.3 +24000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 2.2 +24000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.3 +24000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 12.6 +24000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 5.3 +24000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.3 +24000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.6 +24000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 3.2 +24000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.9 +24000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +24000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 2.0 +24000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 4.3 +24000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 2.0 +24000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.9 +24000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +24000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 1.1 +24000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 5.6 +24000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 7.9 +24000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.8 +24000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.9 +24000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.2 +24000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 55.9 +24000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1386.4 +24000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 9753.2 +24000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 23420.4 +24000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 5180.5 +24000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 7412.8 +24000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +24000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +24000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +24000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +24000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +24000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +24000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 686.5 +24000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 5.2 +24000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 320.2 +24000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 284.8 +24000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 106.8 +24000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.5 +24000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.4 +24000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 6.5 +24000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 11.0 +24000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 219.4 +24000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 73.8 +24000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 25.5 +24000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 10.4 +24000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 5.3 +24000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1755.5 +24000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3171.7 +24000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.9 +24000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.4 +24000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 4545.5 +24000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2851.0 +24000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 276.1 +24000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 160.9 +24000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 139.9 +24000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.3 +24000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 65.1 +24000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 4.3 +24000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 10.0 +24000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 135.3 +24000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.3 +24000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 65.0 +24000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 4.3 +24000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 9.4 +24000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 4.6 +24000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +24000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.6 +24000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.7 +24000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.8 +24000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.8 +24000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 720.4 +24000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 672.5 +24000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 82.5 +24000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 89.4 +24000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 13.1 +24000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 72.4 +24000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 15.4 +24000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 7.2 +24000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 13.1 +24000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 70.3 +24000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 15.4 +24000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.9 +24000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.1 +24000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 3.4 +24000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.1 +24000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.3 +24000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +24000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.7 +24000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.6 +24000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.6 +24000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.5 +24000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 95.2 +24000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 369.4 +24000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1361.5 +24000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 454.2 +24000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 107.2 +24000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 9.5 +24000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.2 +24000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 107.2 +24000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 9.5 +24000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.2 +24000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.3 +24000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 12027.0 +24000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 7438.1 +24000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2206.6 +24000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 415.0 +24000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 7.0 +24000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.5 +24000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +24000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 7.0 +24000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.5 +24000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +24000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 17.5 +24000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 83.5 +24000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 75.6 +24000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 59.6 +24000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 61.0 +24000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +24000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +24000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +24000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +24000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +24000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +24000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +24000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +24000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +24000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 177.8 +24000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1129.0 +24000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 62.4 +24000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 20.2 +24000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.0 +24000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.8 +24000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 13.4 +24000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.5 +24000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 5.4 +24000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.3 +24000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +24000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +24000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.3 +24000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.5 +24000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.3 +24000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +24000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +24000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.3 +24000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.5 +24000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.3 +24000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 1.6 +24000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 2.9 +24000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 1.9 +24000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +24000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 1.9 +24000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.3 +24000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.8 +24000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +24000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +24000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 8.8 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 319.1 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 220.6 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.7 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 4.7 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.6 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 39.1 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 34.4 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 15.2 +24000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +24000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.8 +24000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 44.2 +24000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.1 +24000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 84.0 +24000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 52.3 +24000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 114.5 +24000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 80.4 +24000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 10.4 +24000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 43.3 +24000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 216.8 +24000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 96.9 +24000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 58.9 +24000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 5.4 +24000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 23.3 +24000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 43.8 +24000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 52.5 +24000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 94.2 +24000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 134.3 +24000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 124.5 +24000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 126.0 +24000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 344.9 +24000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 319.8 +24000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 109.2 +24000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 32.4 +24000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +24000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 8.7 +24000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 100.0 +24000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 129.5 +24000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 60.1 +24000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +24000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 18.7 +24000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 21.0 +24000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.6 +24000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 10.8 +24000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 14.4 +24000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +24000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 14.1 +24000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 16.6 +24000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 30.4 +24000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 9.4 +24000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +24000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +24000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.1 +24000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 16.2 +24000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 13.5 +24000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 4.7 +24000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +24000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 12.8 +24000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 3.9 +24000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +24000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 3.9 +24000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.7 +24000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +24000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +24000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 35.1 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 82.6 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 44.1 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 698.8 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 214.4 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 15.3 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 8.9 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 7.1 +24000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.7 +24000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +24000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +24000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.3 +24000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.8 +24000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 96.6 +24000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 240.9 +24000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 400.7 +24000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 161.9 +24000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 50.3 +24000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 33.6 +24000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 17.1 +24000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.5 +24000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.0 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.6 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.5 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 59.5 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 60.6 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 98.1 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 99.8 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 146.7 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 127.5 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 73.5 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 17.2 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 9.4 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +24000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +24000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.2 +24000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 6.4 +24000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 13.3 +24000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 59.1 +24000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 122.5 +24000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 65.3 +24000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 50.6 +24000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 228.6 +24000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 854.2 +24000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 624.5 +24000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 165.4 +24000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.3 +24000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.1 +24000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +24000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.3 +24000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 5.4 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 9.2 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 52.7 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.9 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 16.9 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 24.3 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.0 +24000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 107.1 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 63.9 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 11.9 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 10.8 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 7.9 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 13.5 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 22.5 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 7.1 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.5 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.2 +24000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.6 +24000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +24000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 9.8 +24000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +24000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.2 +24000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 50.3 +24000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 189.3 +24000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 193.6 +24000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 119.2 +24000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.1 +24000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.5 +24000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +24000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +24000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +24000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.2 +24000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 17.2 +24000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 175.8 +24000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 294.5 +24000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 33.7 +24000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.0 +24000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +24000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 44.2 +24000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 93.8 +24000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 53.1 +24000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 25.8 +24000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 8.2 +24000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 41.3 +24000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 10.1 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.1 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.6 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 5.9 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 67.8 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 16.4 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 25.7 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 9.7 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 25.2 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.9 +24000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.5 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 80.8 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 89.9 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 178.3 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1020.0 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 524.0 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 27.2 +24000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 35.7 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.8 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 40.9 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 46.9 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 66.4 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 285.3 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 721.4 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 688.7 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 505.3 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 38.2 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 18.6 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 3.9 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 22.8 +24000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.8 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 41.5 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 83.0 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 44.4 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 828.5 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2927.1 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1947.6 +24000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 10.6 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 8.6 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 247.2 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 558.6 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 483.8 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 245.0 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 96.6 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 20.0 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 34.8 +24000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +24000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.2 +24000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 365.5 +24000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 810.4 +24000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1585.7 +24000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 627.1 +24000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3443.3 +24000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2263.6 +24000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 57.0 +24000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +24000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 7.7 +24000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 13.2 +24000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 31.5 +24000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 10.3 +24000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.0 +24000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 8.1 +24000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +24000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 15.5 +24000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 14.8 +24000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 10.6 +24000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 12.3 +24000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.7 +24000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.3 +24000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 8.4 +24000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.0 +24000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.5 +24000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +24000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.3 +24000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 6.4 +24000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.6 +24000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 6.3 +24000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 6.2 +24000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 42.9 +24000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 38.3 +24000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 92.5 +24000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 16.9 +24000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +24000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.1 +24000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.3 +24000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 8.4 +24000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 118.3 +24000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 147.0 +24000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 34.8 +24000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 247.0 +24000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 87.8 +24000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.1 +24000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +24000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +24000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.4 +24000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.0 +24000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 186.5 +24000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 187.9 +24000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 67.5 +24000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 11.0 +24000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 14.0 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.1 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 19.1 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 46.0 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 31.1 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 30.1 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 110.7 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 124.3 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 33.4 +24000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.6 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 21.9 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.1 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 2.7 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 4.6 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 14.7 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 5.3 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 41.4 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 128.9 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 183.3 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 57.2 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 5.8 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.0 +24000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 3.5 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 17.5 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 5.3 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 24.3 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 9.3 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.3 +24000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +24000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 119.4 +24000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 367.2 +24000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 344.3 +24000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 88.3 +24000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 647.1 +24000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2488.8 +24000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +24000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +24000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +24000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +24000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +24000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +24000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 23.6 +24000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 41.0 +24000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 65.8 +24000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 109.5 +24000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.3 +24000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 7.5 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.8 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +24000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +24000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.2 +24000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 10.0 +24000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 12.5 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 7.6 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 213.0 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2955.9 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1432.7 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 320.0 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 525.6 +24000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 112.4 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.9 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 52.0 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1297.8 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 22.5 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 13.0 +24000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 19.8 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.3 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 4.8 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 51.2 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 190.9 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 843.6 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 267.1 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 161.3 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 136.8 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 31.0 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 5.1 +24000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.6 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 30.3 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 39.5 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 72.7 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 35.3 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.6 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 37.2 +24000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 31.1 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.9 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 7.5 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 6.3 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.7 +24000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.3 +24000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.4 +24000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.5 +24000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +24000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 335.2 +24000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 901.6 +24000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 515.2 +24000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 815.8 +24000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 719.0 +24000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 1198.0 +24000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 1032.8 +24000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 534.4 +24000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +24000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 56.3 +24000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 516.7 +24000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 616.1 +24000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 31.8 +24000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.6 +24000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 13.4 +24000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 4.9 +24000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 4.2 +24000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.2 +24000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 1.3 +24000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 6.7 +24000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 3.1 +24000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.9 +24000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 5.1 +24000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 31.5 +24000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 60.7 +24000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 66.0 +24000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 17.9 +24000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +24000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +24000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +24000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 38.0 +24000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 179.7 +24000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 35.5 +24000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.6 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 1.2 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 4.3 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 2.3 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 1.4 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 10.7 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 13.4 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 33.5 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 33.9 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 14.2 +24000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +24000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +24000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +24000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 2.7 +24000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 6.2 +24000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 2.4 +24000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 9.6 +24000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 45.3 +24000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 23.8 +24000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 6.8 +24000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.5 +24000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +24000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 831.8 +24000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 830.6 +24000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 640.2 +24000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1008.0 +24000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1668.5 +24000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 227.9 +24000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 840.9 +24000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1023.3 +24000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 349.3 +24000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 194.2 +24000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 100.9 +24000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +24000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +24000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +24000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +24000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +24000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.4 +24000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 143.2 +24000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 344.3 +24000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 86.4 +24000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 68.7 +24000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 119.5 +24000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 33.9 +24000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 229.3 +24000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 255.2 +24000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 112.5 +24000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 28.2 +24000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 14.3 +24000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +24000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +24000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +24000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +24000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +24000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.9 +24000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 11.9 +24000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.6 +24000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.5 +24000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 91.5 +24000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 63.3 +24000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 405.8 +24000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 528.6 +24000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 60.6 +24000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 54.4 +24000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 15.6 +24000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +24000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +24000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +24000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +24000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +24000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +24000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 52.9 +24000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 293.0 +24000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 426.5 +24000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 264.5 +24000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 733.2 +24000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 532.5 +24000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 233.8 +24000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 12.2 +24000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +24000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +24000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 9.3 +24000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 78.8 +24000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 90.4 +24000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 112.9 +24000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 107.9 +24000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 13.5 +24000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 45.4 +24000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 12.7 +24000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 42.2 +24000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 34.1 +24000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 5.2 +24000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.4 +24000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.2 +24000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.8 +24000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.9 +24000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 8.1 +24000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 11.8 +24000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.7 +24000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 18.0 +24000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 20.8 +24000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 5.6 +24000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.7 +24000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +24000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +24000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 7.2 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 49.8 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 71.4 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 6.2 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 2.5 +24000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +24000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 16.8 +24000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +24000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.2 +24000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.6 +24000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.9 +24000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 17.6 +24000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 32.1 +24000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 94.8 +24000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 31.8 +24000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 37.2 +24000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 3.9 +24000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.2 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.1 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 2.7 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 5.3 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 13.7 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 24.2 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 25.8 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 8.1 +24000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 4.0 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.4 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.9 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.4 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.6 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.4 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.2 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +24000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +24000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 3516.1 +24000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 13115.8 +24000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 19754.4 +24000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 4392.1 +24000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 8650.3 +24000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 16709.6 +24000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 12854.0 +24000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 21496.9 +24000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 14603.0 +24000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 32668.2 +24000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 29325.2 +24000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 14.0 +24000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 13.5 +24000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 128.8 +24000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +24000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 136.8 +24000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 55.1 +24000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1222.1 +24000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 4520.2 +24000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 16746.0 +24000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1101.7 +24000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 15.4 +24000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 11.0 +24000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 6.5 +24000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 28.1 +24000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 247.0 +24000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +24000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 5920.8 +24000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 21976.2 +24000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 8825.7 +24000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 148.9 +24000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 181.2 +24000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 88.9 +24000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 196.7 +24000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 107.6 +24000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 19.9 +24000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 174.4 +24000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 146.9 +24000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1203.7 +24000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1979.4 +24000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1460.1 +24000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 57.6 +24000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 109.2 +24000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 8.9 +24000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 31.2 +24000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 19.1 +24000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 194.9 +24000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +24000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.5 +24000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.6 +24000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.8 +24000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 3.1 +24000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 4.8 +24000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 8.8 +24000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 8.2 +24000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 34.5 +24000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 12.7 +24000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.2 +24000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.5 +24000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +24000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.2 +24000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +24000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.5 +24000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 16.8 +24000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 69.1 +24000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.2 +24000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 3.2 +24000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.0 +24000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +24000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.0 +24000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/ME.POP b/NONROAD/NR08a/DATA/POP/ME.POP new file mode 100644 index 0000000..492da88 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/ME.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 23000 ME Maine 802,284.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +23000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 350.3 +23000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 206.7 +23000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 221.9 +23000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 17684.8 +23000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 17850.7 +23000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 8012.1 +23000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 28226.5 +23000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 11600.8 +23000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 3022.2 +23000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 6418.6 +23000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3161.4 +23000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3244.0 +23000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 28075.0 +23000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1556.4 +23000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1471.8 +23000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.4 +23000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.7 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 30.2 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 57.2 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 450.9 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.6 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 11.1 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +23000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.2 +23000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.6 +23000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +23000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 11.1 +23000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +23000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.2 +23000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 2.8 +23000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 19.7 +23000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.9 +23000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 7.1 +23000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.2 +23000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.3 +23000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.2 +23000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.3 +23000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 589.0 +23000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.3 +23000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 55.3 +23000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 280.8 +23000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 86.5 +23000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 15.3 +23000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 21.3 +23000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 3.8 +23000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 9.9 +23000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.2 +23000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.8 +23000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.6 +23000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.2 +23000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.8 +23000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.6 +23000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 53.0 +23000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 155.0 +23000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 131.5 +23000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 65.9 +23000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 46.4 +23000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.9 +23000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.2 +23000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.9 +23000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.2 +23000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 23.0 +23000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 35.5 +23000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 10.3 +23000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 4.3 +23000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +23000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +23000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +23000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +23000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +23000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.6 +23000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.6 +23000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +23000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +23000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 40.3 +23000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 39.5 +23000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 14.1 +23000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 16.1 +23000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.7 +23000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 2.3 +23000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.8 +23000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.7 +23000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 2.3 +23000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.8 +23000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 16.6 +23000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 340.3 +23000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 13.8 +23000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 4.2 +23000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 5.3 +23000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 3.5 +23000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.4 +23000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.3 +23000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 2.1 +23000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.4 +23000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.3 +23000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 2.1 +23000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 43.5 +23000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 208.5 +23000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 107.2 +23000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 22.5 +23000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 9.9 +23000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.7 +23000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.5 +23000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.7 +23000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.5 +23000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 5.9 +23000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 330.7 +23000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 552.5 +23000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 18.7 +23000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 14.4 +23000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.6 +23000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.8 +23000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.3 +23000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +23000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 2.0 +23000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +23000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +23000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 2.0 +23000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +23000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 5.3 +23000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 7.5 +23000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 13.6 +23000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 3.5 +23000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +23000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +23000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +23000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +23000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +23000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.8 +23000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +23000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +23000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +23000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +23000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.8 +23000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +23000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +23000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +23000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.6 +23000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.2 +23000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +23000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 5.6 +23000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.2 +23000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.4 +23000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 28.5 +23000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +23000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +23000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +23000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +23000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +23000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +23000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.1 +23000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 22.7 +23000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 6.4 +23000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 3.6 +23000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 3.8 +23000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 6.4 +23000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 3.6 +23000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 3.8 +23000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 20.0 +23000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 66.0 +23000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 9.9 +23000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 12.1 +23000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.5 +23000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +23000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 2.4 +23000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 2.3 +23000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +23000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 9.7 +23000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 2.7 +23000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 62.4 +23000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 27.6 +23000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 57.5 +23000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.3 +23000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 27.6 +23000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 57.5 +23000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.3 +23000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 7.3 +23000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 26.1 +23000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 42.1 +23000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 3.1 +23000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 19.5 +23000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +23000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 138.9 +23000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 303.6 +23000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 799.1 +23000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 58.4 +23000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 371.4 +23000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.8 +23000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 192.4 +23000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 14.7 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 16.8 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 25.7 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 6.9 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 14.9 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 8.9 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 10.1 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 10.2 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.2 +23000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 8.9 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 10.1 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 10.2 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.2 +23000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +23000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +23000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.7 +23000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 284.3 +23000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 53.7 +23000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 27.4 +23000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 23.1 +23000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.1 +23000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.9 +23000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.5 +23000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.1 +23000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +23000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.1 +23000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.9 +23000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.4 +23000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.1 +23000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +23000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +23000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +23000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 5.6 +23000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 3.4 +23000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +23000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 3.4 +23000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +23000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +23000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +23000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 4.8 +23000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.5 +23000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +23000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +23000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.8 +23000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.8 +23000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 3.3 +23000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +23000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +23000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.7 +23000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.7 +23000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 3.2 +23000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +23000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +23000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.2 +23000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +23000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +23000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 3547.5 +23000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 176304.6 +23000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 58.1 +23000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 96.8 +23000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 4811.0 +23000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 1.6 +23000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 329.0 +23000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 2325.6 +23000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 16515.0 +23000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 32.3 +23000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 228.0 +23000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 1619.3 +23000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 28689.3 +23000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +23000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 521.4 +23000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 1834.5 +23000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 21444.4 +23000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 54307.3 +23000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +23000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +23000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 5500.6 +23000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 390.6 +23000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1238.5 +23000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +23000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +23000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +23000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 86.3 +23000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 23.1 +23000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.2 +23000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 2.6 +23000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 3174.9 +23000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 35257.9 +23000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +23000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +23000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 1669.2 +23000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 621.9 +23000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1997.9 +23000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +23000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +23000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 95.2 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 930.9 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 29.3 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 31.9 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 2.4 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 16.6 +23000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 16.4 +23000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 9699.3 +23000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 14852.7 +23000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 25057.3 +23000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1171.1 +23000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 751.0 +23000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1150.0 +23000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 1940.1 +23000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 90.7 +23000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 38.7 +23000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 5604.3 +23000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 4346.1 +23000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 20.6 +23000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.6 +23000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 87.9 +23000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 68.2 +23000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.3 +23000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 91.0 +23000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 310.7 +23000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 137.4 +23000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.1 +23000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 333.3 +23000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 652.3 +23000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 138.4 +23000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 4339.0 +23000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 48212.1 +23000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 15713.4 +23000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.2 +23000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 68.1 +23000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 756.2 +23000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 246.5 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 5.5 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 22.6 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 42.7 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.2 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 13.7 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +23000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.3 +23000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.2 +23000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 13.7 +23000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +23000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.3 +23000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.4 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1122.8 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 298.7 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 666.5 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 868.7 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 172.1 +23000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.5 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 141.4 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 612.1 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1560.0 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1030.8 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 15.1 +23000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 9.9 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 98.7 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 427.4 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1089.2 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 719.7 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 10.5 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 6.9 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.7 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.2 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +23000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.3 +23000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 3.4 +23000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2.9 +23000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1.4 +23000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.1 +23000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1.7 +23000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.2 +23000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +23000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +23000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +23000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 17.3 +23000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 5.5 +23000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.6 +23000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.1 +23000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 8.0 +23000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.1 +23000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 2.4 +23000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 29.3 +23000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 27.3 +23000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 106.5 +23000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 38.8 +23000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 13.3 +23000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 22.6 +23000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 5.5 +23000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 2.1 +23000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 2.2 +23000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 2.1 +23000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 936.2 +23000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 2.3 +23000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 9.3 +23000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 5.3 +23000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 2.0 +23000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 9.8 +23000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 5.8 +23000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 5.1 +23000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.4 +23000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.7 +23000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +23000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 3.9 +23000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1.6 +23000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +23000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.2 +23000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.0 +23000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.3 +23000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +23000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.6 +23000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1.3 +23000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.6 +23000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.3 +23000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +23000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.3 +23000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1.7 +23000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 2.4 +23000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.2 +23000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.3 +23000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +23000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 15.8 +23000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 392.7 +23000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2763.0 +23000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 6634.9 +23000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1467.6 +23000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2100.0 +23000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +23000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +23000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +23000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +23000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +23000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +23000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 194.5 +23000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.5 +23000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 90.7 +23000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 80.7 +23000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 30.3 +23000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.7 +23000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +23000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.8 +23000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.1 +23000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 62.1 +23000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 20.9 +23000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 7.2 +23000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.0 +23000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.5 +23000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 497.3 +23000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 898.5 +23000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.5 +23000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +23000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1287.7 +23000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 807.7 +23000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 78.2 +23000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 45.6 +23000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 39.6 +23000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +23000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 18.4 +23000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.2 +23000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.8 +23000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 38.3 +23000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +23000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 18.4 +23000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.2 +23000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.7 +23000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.3 +23000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +23000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +23000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +23000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +23000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +23000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 204.1 +23000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 190.5 +23000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 23.4 +23000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 25.3 +23000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 3.7 +23000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 20.5 +23000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 4.4 +23000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.0 +23000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 3.7 +23000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 19.9 +23000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 4.4 +23000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.1 +23000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.6 +23000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.0 +23000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.6 +23000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +23000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +23000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.1 +23000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +23000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.5 +23000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +23000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 27.0 +23000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 104.6 +23000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 385.7 +23000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 128.7 +23000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 30.4 +23000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.7 +23000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.6 +23000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 30.4 +23000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.7 +23000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.6 +23000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.6 +23000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3407.2 +23000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2107.2 +23000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 625.1 +23000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 117.6 +23000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.0 +23000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +23000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +23000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.0 +23000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +23000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +23000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 5.0 +23000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 23.6 +23000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 21.4 +23000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 16.9 +23000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 17.3 +23000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +23000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +23000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +23000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +23000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +23000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +23000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +23000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +23000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +23000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1115.5 +23000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 7082.3 +23000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 391.7 +23000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 126.9 +23000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 12.3 +23000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 5.1 +23000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 2.6 +23000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.3 +23000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.0 +23000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +23000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +23000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +23000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +23000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +23000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +23000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +23000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +23000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +23000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +23000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +23000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +23000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +23000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +23000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +23000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +23000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +23000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +23000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +23000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +23000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.1 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 76.1 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 52.6 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.1 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.1 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 9.3 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 8.2 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 3.6 +23000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +23000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.4 +23000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 9.5 +23000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.9 +23000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 18.0 +23000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 11.2 +23000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 24.5 +23000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 17.2 +23000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 2.2 +23000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 9.3 +23000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 46.4 +23000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 20.7 +23000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 12.6 +23000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.2 +23000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 5.0 +23000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 9.4 +23000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 11.2 +23000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 20.1 +23000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 28.7 +23000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 26.6 +23000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 27.0 +23000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 73.8 +23000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 68.4 +23000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 23.4 +23000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 6.9 +23000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +23000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.9 +23000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 21.4 +23000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 27.7 +23000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 12.9 +23000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +23000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 4.0 +23000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 4.5 +23000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.3 +23000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 2.3 +23000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 3.1 +23000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +23000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 3.0 +23000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 3.6 +23000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 6.5 +23000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 2.0 +23000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +23000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +23000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +23000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 3.5 +23000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 2.9 +23000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.0 +23000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +23000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 2.7 +23000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.8 +23000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +23000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.8 +23000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.4 +23000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +23000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +23000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 7.5 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 17.7 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 9.4 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 149.5 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 45.9 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 3.3 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.9 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.5 +23000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.4 +23000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +23000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +23000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.3 +23000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.4 +23000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 20.7 +23000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 51.5 +23000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 85.7 +23000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 34.6 +23000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 10.8 +23000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 7.2 +23000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 3.7 +23000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +23000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.3 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.7 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 12.7 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 13.0 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 21.0 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 21.3 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 31.4 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 27.3 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 15.7 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 3.7 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 2.0 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +23000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +23000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.3 +23000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.4 +23000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 2.8 +23000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 12.6 +23000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 26.2 +23000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 14.0 +23000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 10.8 +23000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 48.9 +23000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 182.7 +23000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 133.6 +23000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 35.4 +23000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.1 +23000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.3 +23000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +23000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.5 +23000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.2 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 2.0 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 11.3 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.4 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 3.6 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 5.2 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.6 +23000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 22.9 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 13.7 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.5 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 2.3 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.7 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 2.9 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 4.8 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.5 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.5 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.7 +23000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +23000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +23000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 2.1 +23000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +23000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.1 +23000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 10.8 +23000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 40.5 +23000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 41.4 +23000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 25.5 +23000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.1 +23000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.3 +23000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +23000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +23000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +23000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.5 +23000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 3.7 +23000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 37.6 +23000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 63.0 +23000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 7.2 +23000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.4 +23000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +23000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 9.5 +23000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 20.1 +23000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 11.4 +23000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 5.5 +23000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.7 +23000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 8.8 +23000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 2.2 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.3 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.3 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 14.5 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 3.5 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 5.5 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 2.1 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 5.4 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.4 +23000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.7 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 17.3 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 19.2 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 38.1 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 218.2 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 112.1 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 5.8 +23000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 7.6 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.2 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 8.7 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 10.0 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 14.2 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 61.0 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 154.3 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 147.3 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 108.1 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 8.2 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 4.0 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.8 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 4.9 +23000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.2 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 8.9 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 17.8 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 9.5 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 177.2 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 626.1 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 416.6 +23000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 2.3 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.8 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 52.9 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 119.5 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 103.5 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 52.4 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 20.7 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 4.3 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 7.4 +23000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +23000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.5 +23000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 78.2 +23000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 173.3 +23000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 339.2 +23000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 134.1 +23000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 736.5 +23000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 484.2 +23000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 12.2 +23000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +23000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.6 +23000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 2.8 +23000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 6.7 +23000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 2.2 +23000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +23000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.7 +23000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +23000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 3.3 +23000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 3.2 +23000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 2.3 +23000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.6 +23000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.6 +23000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.3 +23000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.8 +23000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.6 +23000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +23000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +23000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.5 +23000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.4 +23000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +23000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.3 +23000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.3 +23000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 9.2 +23000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 8.2 +23000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 19.8 +23000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 3.6 +23000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +23000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +23000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.5 +23000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 3.6 +23000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 50.7 +23000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 62.9 +23000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 14.9 +23000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 105.8 +23000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 37.6 +23000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.5 +23000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +23000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +23000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.2 +23000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 2.2 +23000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 79.9 +23000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 80.5 +23000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 28.9 +23000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 4.7 +23000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 6.0 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.3 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 8.2 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 19.7 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 13.3 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 12.9 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 47.4 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 53.2 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 14.3 +23000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.2 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 9.4 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.8 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.1 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 2.0 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 6.3 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 2.3 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 17.7 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 55.2 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 78.5 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 24.5 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 2.5 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.4 +23000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 1.5 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 7.5 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 2.3 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 10.4 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 4.0 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.5 +23000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +23000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 28.5 +23000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 87.6 +23000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 82.1 +23000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 21.1 +23000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 154.3 +23000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 593.5 +23000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +23000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 10.1 +23000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 17.5 +23000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 28.2 +23000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 46.9 +23000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.4 +23000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.9 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.2 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +23000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +23000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +23000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.3 +23000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.6 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.9 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 25.8 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 357.4 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 173.2 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 38.7 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 63.6 +23000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 13.6 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 6.3 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 156.9 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 2.7 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 1.6 +23000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 2.4 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.6 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 6.2 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 23.1 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 102.0 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 32.3 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 19.5 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 16.5 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 3.7 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.6 +23000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 3.7 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 4.8 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 8.8 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 4.3 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 4.5 +23000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 3.8 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.9 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.8 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.2 +23000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +23000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.1 +23000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.5 +23000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +23000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 103.1 +23000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 277.2 +23000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 158.4 +23000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 250.8 +23000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 221.0 +23000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 368.3 +23000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 317.5 +23000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 164.3 +23000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +23000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 17.3 +23000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 158.8 +23000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 189.4 +23000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 9.8 +23000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.2 +23000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 4.1 +23000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1.5 +23000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 1.3 +23000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +23000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.4 +23000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 2.1 +23000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.9 +23000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.6 +23000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1.6 +23000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 9.7 +23000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 18.7 +23000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 20.3 +23000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 5.5 +23000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +23000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +23000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +23000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 11.7 +23000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 55.3 +23000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 10.9 +23000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.5 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.4 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1.3 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.7 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.4 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 3.3 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 4.1 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 10.3 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 10.4 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 4.4 +23000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +23000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +23000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +23000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.8 +23000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1.9 +23000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.8 +23000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 3.0 +23000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 13.9 +23000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 7.3 +23000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 2.1 +23000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.1 +23000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +23000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 235.7 +23000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 235.3 +23000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 181.4 +23000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 285.6 +23000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 472.7 +23000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 64.6 +23000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 238.2 +23000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 289.9 +23000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 99.0 +23000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 55.0 +23000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 28.6 +23000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +23000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +23000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +23000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +23000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +23000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +23000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 40.6 +23000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 97.5 +23000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 24.5 +23000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 19.5 +23000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 33.9 +23000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 9.6 +23000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 64.9 +23000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 72.3 +23000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 31.9 +23000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 8.0 +23000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 4.0 +23000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +23000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +23000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +23000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +23000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +23000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.4 +23000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.4 +23000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.5 +23000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.7 +23000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 25.9 +23000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 17.9 +23000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 115.0 +23000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 149.7 +23000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 17.2 +23000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 15.4 +23000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 4.4 +23000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +23000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +23000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +23000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +23000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +23000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +23000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 15.0 +23000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 83.0 +23000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 120.8 +23000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 74.9 +23000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 207.7 +23000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 150.9 +23000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 66.2 +23000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.4 +23000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +23000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +23000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.6 +23000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 22.3 +23000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 25.6 +23000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 32.0 +23000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 30.6 +23000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.8 +23000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 12.9 +23000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.6 +23000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 11.9 +23000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 9.7 +23000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.5 +23000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.7 +23000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +23000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.8 +23000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +23000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.3 +23000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.3 +23000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.1 +23000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 5.1 +23000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 5.9 +23000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.6 +23000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +23000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +23000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +23000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.5 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.7 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.9 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 45.1 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 312.7 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 448.1 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 38.7 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 15.9 +23000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.4 +23000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.2 +23000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +23000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +23000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +23000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +23000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 3.4 +23000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 6.1 +23000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 18.0 +23000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 6.1 +23000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 7.1 +23000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.7 +23000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +23000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +23000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +23000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1485.0 +23000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 5539.5 +23000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 8343.3 +23000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1855.0 +23000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 3653.5 +23000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 7057.3 +23000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 5428.8 +23000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 9079.2 +23000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 6167.5 +23000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 13797.4 +23000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 12385.4 +23000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 5.9 +23000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 5.7 +23000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 54.4 +23000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +23000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 57.8 +23000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 23.3 +23000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 516.2 +23000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1909.1 +23000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 7072.7 +23000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 465.3 +23000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 6.5 +23000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 4.6 +23000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.8 +23000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 11.9 +23000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 104.3 +23000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +23000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 2500.6 +23000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 9281.6 +23000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 3727.5 +23000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 62.9 +23000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 76.5 +23000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 37.5 +23000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 83.1 +23000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 45.5 +23000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 8.4 +23000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 73.7 +23000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 62.0 +23000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 508.4 +23000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 836.0 +23000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 616.7 +23000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 24.3 +23000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 46.1 +23000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 3.8 +23000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 13.2 +23000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 8.1 +23000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 82.3 +23000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +23000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.3 +23000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.4 +23000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.5 +23000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 1.9 +23000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 2.9 +23000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 5.4 +23000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 5.0 +23000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 21.1 +23000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 7.8 +23000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 1.3 +23000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.3 +23000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +23000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +23000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +23000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.3 +23000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 10.3 +23000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 42.2 +23000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.8 +23000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 1.9 +23000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.6 +23000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +23000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.6 +23000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MI.POP b/NONROAD/NR08a/DATA/POP/MI.POP new file mode 100644 index 0000000..3e5b504 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MI.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 26000 MI Michigan 5,012,615.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +26000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 1234.1 +26000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 728.1 +26000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 781.8 +26000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 62303.2 +26000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 62887.6 +26000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 28226.3 +26000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 99441.0 +26000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 40869.4 +26000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 10647.3 +26000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 36983.1 +26000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 18215.6 +26000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 18691.9 +26000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 161765.4 +26000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 9664.8 +26000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 11389.7 +26000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 3.4 +26000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.9 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 5.8 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 233.9 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 443.0 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 3489.4 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 35.7 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.9 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 86.1 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.7 +26000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 32.6 +26000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 35.7 +26000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.9 +26000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 86.1 +26000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.7 +26000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 32.6 +26000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 20.4 +26000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 141.8 +26000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 6.6 +26000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 51.4 +26000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 8.7 +26000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 9.6 +26000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 8.7 +26000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 9.6 +26000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 4243.2 +26000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 9.3 +26000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 398.7 +26000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2023.2 +26000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 622.8 +26000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 110.4 +26000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 153.4 +26000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 27.4 +26000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 71.3 +26000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 8.4 +26000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 5.8 +26000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 4.0 +26000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 8.4 +26000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 5.8 +26000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 4.0 +26000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 381.9 +26000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1117.0 +26000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 947.3 +26000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 474.4 +26000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 334.3 +26000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 13.6 +26000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.2 +26000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 13.6 +26000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.2 +26000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 165.9 +26000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 255.4 +26000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 73.9 +26000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 31.1 +26000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.1 +26000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.1 +26000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.1 +26000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.1 +26000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.0 +26000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 18.7 +26000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 18.7 +26000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.7 +26000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.8 +26000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 290.4 +26000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 284.3 +26000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 101.6 +26000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 115.8 +26000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 19.3 +26000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 16.3 +26000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 12.8 +26000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 19.3 +26000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 16.3 +26000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 12.8 +26000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 119.8 +26000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2451.6 +26000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 99.1 +26000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 30.3 +26000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 38.5 +26000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 25.3 +26000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.2 +26000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.3 +26000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 15.4 +26000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.2 +26000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.3 +26000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 15.4 +26000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 313.5 +26000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1502.4 +26000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 772.5 +26000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 162.0 +26000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 71.2 +26000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 19.6 +26000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 10.7 +26000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 19.6 +26000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 10.7 +26000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 42.5 +26000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2382.6 +26000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 3980.5 +26000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 135.1 +26000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 103.5 +26000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 4.0 +26000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 5.7 +26000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.0 +26000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +26000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 14.2 +26000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.3 +26000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +26000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 14.2 +26000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.3 +26000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 38.3 +26000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 53.9 +26000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 98.3 +26000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 25.2 +26000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.1 +26000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.1 +26000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.9 +26000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.0 +26000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +26000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 20.1 +26000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +26000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.4 +26000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.0 +26000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +26000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 20.1 +26000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +26000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.4 +26000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +26000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 40.2 +26000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.3 +26000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +26000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 40.2 +26000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.3 +26000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 9.9 +26000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 205.6 +26000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +26000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.6 +26000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +26000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +26000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.6 +26000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +26000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 8.1 +26000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 163.3 +26000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 46.3 +26000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 25.6 +26000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 27.4 +26000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 46.3 +26000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 25.6 +26000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 27.4 +26000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 144.0 +26000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 475.2 +26000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 71.5 +26000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 87.4 +26000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 3.4 +26000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.5 +26000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 17.0 +26000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 16.3 +26000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.8 +26000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 110.0 +26000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 30.6 +26000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 705.7 +26000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 312.1 +26000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 650.1 +26000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 14.4 +26000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 312.1 +26000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 650.1 +26000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 14.4 +26000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 82.7 +26000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 295.4 +26000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 475.9 +26000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 34.8 +26000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 221.2 +26000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.1 +26000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1571.8 +26000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 3435.7 +26000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 9042.6 +26000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 660.4 +26000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 4202.6 +26000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 20.6 +26000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 2177.3 +26000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 165.8 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 189.9 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 290.5 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 78.6 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 168.3 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 101.1 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 114.3 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 115.9 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.2 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.3 +26000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 101.1 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 114.3 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 115.9 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.2 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.3 +26000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +26000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 1.0 +26000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 7.8 +26000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 3217.5 +26000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 607.9 +26000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 309.6 +26000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 261.7 +26000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 23.4 +26000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 32.5 +26000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 5.2 +26000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.4 +26000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +26000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 23.4 +26000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 32.5 +26000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.0 +26000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.4 +26000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +26000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.2 +26000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.7 +26000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 63.9 +26000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 38.8 +26000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.5 +26000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 38.8 +26000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.5 +26000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.8 +26000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.2 +26000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 37.2 +26000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 4.2 +26000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.4 +26000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.6 +26000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 20.6 +26000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 9.5 +26000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 37.1 +26000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +26000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.6 +26000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 19.5 +26000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 7.4 +26000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 36.7 +26000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +26000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.2 +26000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 2.1 +26000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.5 +26000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +26000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 23167.7 +26000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 1151404.6 +26000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 379.6 +26000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 720.1 +26000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 35787.5 +26000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 11.8 +26000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 2148.4 +26000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 15187.8 +26000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 107855.9 +26000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 239.9 +26000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1696.2 +26000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 12045.2 +26000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 187363.0 +26000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +26000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 3878.4 +26000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 13646.1 +26000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 140048.5 +26000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 354668.2 +26000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +26000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +26000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 40917.5 +26000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2905.7 +26000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 8088.0 +26000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +26000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +26000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +26000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 641.8 +26000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 171.7 +26000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 9.1 +26000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 19.7 +26000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 20734.4 +26000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 230261.5 +26000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +26000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +26000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 12416.6 +26000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 4625.8 +26000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 13047.9 +26000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +26000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +26000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 708.1 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 6924.8 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 218.1 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 237.3 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 18.1 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 123.2 +26000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 122.2 +26000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 63344.0 +26000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 96999.5 +26000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 163643.4 +26000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 7648.4 +26000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 5586.4 +26000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 8554.5 +26000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 14432.0 +26000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 674.5 +26000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 253.0 +26000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 36600.3 +26000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 28383.3 +26000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 134.3 +26000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 4.5 +26000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 653.9 +26000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 507.1 +26000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 2.4 +26000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 676.7 +26000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2311.4 +26000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1022.0 +26000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 15.3 +26000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 2479.4 +26000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 4852.6 +26000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 903.8 +26000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 28337.0 +26000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 314862.3 +26000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 102620.9 +26000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 16.1 +26000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 506.3 +26000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 5625.3 +26000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1833.4 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.8 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 40.9 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 168.4 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 317.3 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 23.9 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 102.2 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.9 +26000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 24.5 +26000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 23.9 +26000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 102.2 +26000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.9 +26000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 24.5 +26000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.9 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 8352.2 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2221.7 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 4957.9 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 6462.3 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1280.4 +26000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 11.1 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 923.2 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 3997.6 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 10188.1 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 6731.9 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 98.6 +26000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 64.6 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 734.1 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 3179.1 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 8102.0 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 5353.5 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 78.4 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 51.4 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 5.0 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.7 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.6 +26000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.0 +26000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 58.5 +26000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 50.5 +26000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 24.2 +26000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 2.5 +26000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 29.0 +26000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 3.3 +26000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +26000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.2 +26000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.5 +26000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 299.2 +26000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 95.8 +26000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 10.9 +26000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.0 +26000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 138.7 +26000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.0 +26000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 42.4 +26000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 508.0 +26000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 473.6 +26000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1844.3 +26000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 672.6 +26000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 231.1 +26000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 391.5 +26000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 95.3 +26000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 35.8 +26000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 37.5 +26000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 36.8 +26000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 16219.1 +26000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 40.5 +26000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 161.7 +26000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 91.6 +26000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 34.8 +26000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 169.3 +26000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 100.6 +26000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 89.2 +26000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 7.1 +26000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 11.5 +26000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.8 +26000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 67.2 +26000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 28.1 +26000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.8 +26000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 3.0 +26000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 17.2 +26000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 4.7 +26000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +26000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 10.8 +26000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 22.7 +26000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 10.5 +26000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 4.8 +26000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.3 +26000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 5.6 +26000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 29.6 +26000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 42.2 +26000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 4.2 +26000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 4.8 +26000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.0 +26000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 121.1 +26000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 3005.5 +26000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 21143.8 +26000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 50772.7 +26000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 11230.6 +26000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 16070.1 +26000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +26000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +26000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +26000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +26000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +26000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +26000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1488.2 +26000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 11.2 +26000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 694.1 +26000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 617.3 +26000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 231.6 +26000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 5.3 +26000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.9 +26000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 14.1 +26000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 23.8 +26000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 475.6 +26000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 160.0 +26000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 55.3 +26000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 22.6 +26000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 11.4 +26000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 3805.8 +26000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 6876.0 +26000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 4.2 +26000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.9 +26000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 9854.0 +26000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 6180.6 +26000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 598.7 +26000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 348.8 +26000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 303.3 +26000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.8 +26000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 141.1 +26000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 9.4 +26000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 21.8 +26000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 293.4 +26000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.8 +26000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 141.0 +26000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 9.4 +26000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 20.4 +26000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 10.0 +26000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +26000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.4 +26000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.6 +26000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.6 +26000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.8 +26000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1561.7 +26000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1457.8 +26000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 178.8 +26000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 193.8 +26000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 28.4 +26000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 157.0 +26000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 33.4 +26000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 15.7 +26000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 28.4 +26000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 152.5 +26000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 33.4 +26000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 8.4 +26000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 4.5 +26000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 7.3 +26000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 4.6 +26000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 2.7 +26000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.7 +26000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 8.1 +26000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.3 +26000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 3.5 +26000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.1 +26000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 206.5 +26000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 800.7 +26000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 2951.6 +26000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 984.6 +26000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 232.4 +26000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 20.6 +26000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 4.7 +26000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 232.4 +26000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 20.6 +26000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 4.7 +26000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 4.9 +26000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 26073.2 +26000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 16124.9 +26000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 4783.6 +26000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 899.6 +26000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 15.2 +26000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.2 +26000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +26000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 15.2 +26000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.2 +26000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +26000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 38.0 +26000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 181.0 +26000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 163.9 +26000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 129.2 +26000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 132.2 +26000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 2.0 +26000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.8 +26000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 2.0 +26000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +26000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 2.0 +26000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.8 +26000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 2.0 +26000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +26000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +26000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 681.8 +26000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 4328.6 +26000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 239.4 +26000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 77.6 +26000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 7.5 +26000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 3.1 +26000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 22.1 +26000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.5 +26000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 8.9 +26000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +26000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +26000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +26000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +26000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.4 +26000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.1 +26000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +26000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +26000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +26000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.4 +26000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.1 +26000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 31.7 +26000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 58.1 +26000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 38.6 +26000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +26000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 37.8 +26000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 5.2 +26000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 16.0 +26000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.6 +26000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.6 +26000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 16.2 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 588.9 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 407.2 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.4 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 8.6 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 8.6 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 72.1 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 63.5 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 28.0 +26000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 1.1 +26000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.8 +26000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 68.2 +26000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 6.3 +26000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 129.4 +26000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 80.6 +26000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 176.5 +26000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 123.9 +26000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 16.0 +26000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 66.7 +26000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 334.1 +26000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 149.3 +26000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 90.8 +26000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 8.4 +26000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 36.0 +26000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 67.5 +26000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 80.9 +26000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 145.1 +26000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 206.9 +26000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 191.8 +26000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 194.2 +26000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 531.5 +26000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 492.8 +26000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 168.2 +26000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 49.9 +26000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +26000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 13.4 +26000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 154.1 +26000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 199.5 +26000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 92.6 +26000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +26000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 28.8 +26000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 32.3 +26000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.5 +26000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 16.6 +26000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 22.2 +26000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +26000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 21.7 +26000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 25.6 +26000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 46.8 +26000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 14.5 +26000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.7 +26000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.5 +26000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.7 +26000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 24.9 +26000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 20.9 +26000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 7.2 +26000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.4 +26000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 19.8 +26000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 6.1 +26000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.3 +26000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 6.1 +26000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.7 +26000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.5 +26000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +26000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.4 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 54.1 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 127.3 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 68.0 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1076.8 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 330.3 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.6 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 23.6 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 13.7 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 10.9 +26000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.7 +26000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +26000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +26000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.0 +26000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.7 +26000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 148.9 +26000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 371.2 +26000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 617.5 +26000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 249.4 +26000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 77.5 +26000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 51.8 +26000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 26.3 +26000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.3 +26000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.5 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.4 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 5.4 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 91.7 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 93.3 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 151.2 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 153.8 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 226.1 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 196.5 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 113.2 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 26.5 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 14.5 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.3 +26000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.5 +26000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.8 +26000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 9.9 +26000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 20.4 +26000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 91.1 +26000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 188.7 +26000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 100.6 +26000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 78.1 +26000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 352.3 +26000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1316.3 +26000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 962.3 +26000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 254.9 +26000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 8.1 +26000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 9.4 +26000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.3 +26000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 3.6 +26000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 8.3 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 14.2 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 81.2 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.9 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 26.1 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 37.5 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 4.6 +26000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 165.1 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 98.4 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 18.3 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 16.6 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 12.1 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 20.8 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 34.7 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 11.0 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 3.9 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 4.9 +26000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.0 +26000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +26000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 15.0 +26000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +26000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 8.0 +26000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 77.5 +26000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 291.7 +26000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 298.3 +26000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 183.7 +26000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 7.9 +26000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.3 +26000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +26000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +26000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.4 +26000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 3.4 +26000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 26.5 +26000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 271.0 +26000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 453.8 +26000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 51.9 +26000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 3.1 +26000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.7 +26000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 68.1 +26000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 144.6 +26000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 81.8 +26000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 39.7 +26000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 12.6 +26000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 63.7 +26000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 15.5 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.8 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.4 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 9.2 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 104.5 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 25.3 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 39.6 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 14.9 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 38.9 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.0 +26000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.4 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 5.3 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 124.5 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 138.6 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 274.7 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1571.8 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 807.4 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 41.8 +26000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 55.1 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.2 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 63.0 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 72.3 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 102.3 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 439.6 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1111.7 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1061.3 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 778.7 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 58.8 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 28.7 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 6.0 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 35.1 +26000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.3 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 64.0 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 127.9 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 68.3 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1276.7 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 4510.7 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3001.3 +26000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 16.3 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 13.2 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 380.9 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 860.8 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 745.5 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 377.5 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 148.9 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 30.8 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 53.6 +26000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +26000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 3.4 +26000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 563.2 +26000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1248.8 +26000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2443.6 +26000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 966.3 +26000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 5306.2 +26000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 3488.2 +26000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 87.9 +26000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +26000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 11.9 +26000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 20.3 +26000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 48.5 +26000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 15.9 +26000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.5 +26000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 12.6 +26000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.3 +26000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 23.9 +26000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 22.9 +26000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 16.3 +26000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 18.9 +26000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 4.1 +26000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.0 +26000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 12.9 +26000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 4.7 +26000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.8 +26000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +26000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 3.5 +26000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 9.9 +26000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.9 +26000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 9.7 +26000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 9.5 +26000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 66.1 +26000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 59.0 +26000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 142.6 +26000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 26.0 +26000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +26000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.7 +26000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 6.2 +26000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 40.9 +26000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 573.3 +26000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 712.2 +26000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 168.4 +26000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1196.9 +26000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 425.4 +26000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 5.2 +26000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.8 +26000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +26000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 2.1 +26000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 24.4 +26000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 903.7 +26000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 910.4 +26000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 326.9 +26000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 53.2 +26000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 67.9 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 15.2 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.7 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 92.7 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 223.0 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 150.5 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 145.7 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 536.6 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 602.5 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 162.0 +26000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.7 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 106.0 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 20.0 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 12.9 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 22.5 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 71.1 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 25.9 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 200.5 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 624.4 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 888.2 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 277.1 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 28.3 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 4.7 +26000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 16.9 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 85.0 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 25.6 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 117.9 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 44.9 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 6.2 +26000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +26000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 220.4 +26000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 677.6 +26000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 635.3 +26000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 162.9 +26000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1194.2 +26000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 4593.1 +26000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +26000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +26000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +26000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.6 +26000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +26000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +26000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 114.4 +26000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 198.5 +26000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 318.8 +26000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 530.7 +26000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 16.2 +26000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 6.7 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.6 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +26000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +26000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.1 +26000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 9.8 +26000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 12.2 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 6.8 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 191.6 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2658.8 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1288.7 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 287.9 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 472.7 +26000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 101.1 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.8 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 46.8 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1167.4 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 20.3 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 11.7 +26000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 17.8 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.3 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 4.3 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 46.0 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 171.7 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 758.8 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 240.2 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 145.0 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 123.0 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 27.9 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 4.5 +26000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.6 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 27.3 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 35.5 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 65.4 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 31.8 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.6 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 33.4 +26000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 28.0 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.8 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 6.7 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 5.6 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.5 +26000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.3 +26000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.9 +26000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 7.9 +26000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +26000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1785.4 +26000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 4802.1 +26000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 2743.9 +26000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 4344.7 +26000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 3829.3 +26000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 6380.4 +26000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 5500.7 +26000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 2846.3 +26000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.3 +26000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 300.0 +26000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 2751.9 +26000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 3281.5 +26000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 169.5 +26000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 3.3 +26000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 71.6 +26000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 26.4 +26000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 22.4 +26000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.1 +26000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 6.8 +26000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 35.8 +26000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 16.3 +26000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 10.2 +26000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 27.3 +26000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 167.6 +26000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 323.5 +26000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 351.5 +26000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 95.2 +26000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.7 +26000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +26000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.3 +26000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 202.6 +26000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 957.3 +26000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 189.1 +26000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 8.5 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.5 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 6.3 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 22.8 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 12.1 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 7.4 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 57.2 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 71.5 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 178.2 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 180.3 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 75.5 +26000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +26000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +26000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +26000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 14.4 +26000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 32.9 +26000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 13.0 +26000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 51.1 +26000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 241.4 +26000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 126.7 +26000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 36.0 +26000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 2.6 +26000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +26000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1803.4 +26000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1800.6 +26000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1387.9 +26000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2185.3 +26000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 3617.2 +26000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 494.1 +26000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1822.9 +26000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2218.5 +26000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 757.2 +26000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 421.0 +26000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 218.7 +26000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +26000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +26000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +26000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +26000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +26000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.8 +26000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 310.5 +26000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 746.4 +26000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 187.3 +26000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 148.9 +26000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 259.1 +26000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 73.4 +26000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 497.0 +26000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 553.2 +26000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 243.9 +26000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 61.1 +26000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 31.0 +26000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +26000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +26000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +26000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +26000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +26000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 10.6 +26000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 25.8 +26000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 3.5 +26000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 5.4 +26000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 198.3 +26000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 137.3 +26000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 879.7 +26000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1145.9 +26000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 131.4 +26000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 117.9 +26000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 33.7 +26000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +26000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +26000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +26000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +26000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +26000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +26000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 114.6 +26000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 635.1 +26000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 924.5 +26000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 573.4 +26000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1589.4 +26000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1154.5 +26000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 506.9 +26000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 26.4 +26000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.6 +26000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +26000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 20.1 +26000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 170.8 +26000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 196.1 +26000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 244.8 +26000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 234.0 +26000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 29.3 +26000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 98.4 +26000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 27.5 +26000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 91.4 +26000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 74.0 +26000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 11.3 +26000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 5.3 +26000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 2.7 +26000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 6.0 +26000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.9 +26000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 17.6 +26000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 25.5 +26000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 8.1 +26000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 39.1 +26000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 45.2 +26000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 12.2 +26000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.6 +26000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.4 +26000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +26000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.3 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.4 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.6 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 27.6 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 191.1 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 273.9 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 23.7 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 9.7 +26000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +26000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 27.7 +26000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +26000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +26000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.0 +26000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.4 +26000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 28.9 +26000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 52.7 +26000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 155.7 +26000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 52.3 +26000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 61.1 +26000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.5 +26000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +26000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 1.8 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.9 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 8.3 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.2 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 17.3 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 8.8 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 12.7 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 8.1 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 3.3 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.5 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 1.8 +26000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +26000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 9605.3 +26000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 35829.4 +26000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 53964.5 +26000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 11998.1 +26000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 23630.7 +26000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 45646.9 +26000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 35114.0 +26000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 58724.6 +26000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 39891.9 +26000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 89242.2 +26000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 80109.6 +26000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 38.2 +26000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 36.9 +26000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 351.9 +26000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.7 +26000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 373.6 +26000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 150.6 +26000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 3338.6 +26000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 12348.2 +26000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 45746.3 +26000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 3009.7 +26000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 42.0 +26000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 30.0 +26000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 17.8 +26000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 76.7 +26000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 674.6 +26000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +26000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 16174.2 +26000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 60033.8 +26000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 24109.7 +26000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 406.8 +26000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 495.0 +26000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 242.9 +26000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 537.4 +26000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 294.0 +26000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 54.3 +26000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 476.4 +26000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 401.2 +26000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 3288.4 +26000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 5407.3 +26000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 3988.7 +26000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 157.4 +26000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 298.4 +26000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 24.3 +26000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 85.3 +26000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 52.3 +26000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 532.5 +26000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +26000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.6 +26000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.7 +26000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.0 +26000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 3.6 +26000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 5.7 +26000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 10.4 +26000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 9.7 +26000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 41.0 +26000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 15.1 +26000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.6 +26000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.6 +26000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +26000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.2 +26000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +26000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.6 +26000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 20.0 +26000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 82.1 +26000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.5 +26000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 3.8 +26000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +26000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +26000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +26000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MN.POP b/NONROAD/NR08a/DATA/POP/MN.POP new file mode 100644 index 0000000..9e5c794 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MN.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 27000 MN Minnesota 2,938,004.1 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +27000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 1160.3 +27000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 684.5 +27000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 735.0 +27000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 58575.9 +27000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 59125.4 +27000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 26537.6 +27000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 93491.9 +27000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 38424.4 +27000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 10010.3 +27000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 19648.3 +27000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 9677.5 +27000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 9930.6 +27000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 85942.5 +27000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 5291.9 +27000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 5699.2 +27000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.7 +27000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.0 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.9 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 117.0 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 221.7 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1746.0 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 17.9 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 43.1 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +27000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 16.3 +27000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 17.9 +27000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.4 +27000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 43.1 +27000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +27000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 16.3 +27000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 14.9 +27000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 104.0 +27000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.8 +27000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 37.7 +27000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 6.4 +27000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 7.0 +27000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 6.4 +27000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 7.0 +27000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3111.3 +27000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.8 +27000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 292.4 +27000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1483.5 +27000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 456.7 +27000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 80.9 +27000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 112.5 +27000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 20.1 +27000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 52.3 +27000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 6.2 +27000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.2 +27000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.9 +27000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 6.2 +27000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.2 +27000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.9 +27000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 280.0 +27000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 819.0 +27000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 694.6 +27000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 347.9 +27000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 245.1 +27000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 10.0 +27000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.9 +27000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 10.0 +27000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.9 +27000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 121.6 +27000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 187.3 +27000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 54.2 +27000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 22.8 +27000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.3 +27000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +27000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.3 +27000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +27000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.8 +27000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 13.7 +27000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 13.7 +27000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +27000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.6 +27000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 212.9 +27000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 208.4 +27000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 74.5 +27000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 84.9 +27000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 14.1 +27000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 12.0 +27000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 9.4 +27000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 14.1 +27000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 12.0 +27000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 9.4 +27000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 87.8 +27000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1797.7 +27000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 72.7 +27000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 22.2 +27000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 28.2 +27000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 18.5 +27000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.5 +27000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.8 +27000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.3 +27000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.5 +27000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.8 +27000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.3 +27000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 229.9 +27000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1101.6 +27000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 566.4 +27000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 118.8 +27000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 52.2 +27000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.4 +27000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.8 +27000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.4 +27000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.8 +27000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 31.2 +27000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1747.0 +27000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2918.7 +27000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 99.0 +27000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 75.9 +27000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.0 +27000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.2 +27000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.5 +27000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +27000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 10.4 +27000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.7 +27000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +27000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 10.4 +27000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.7 +27000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 28.1 +27000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 39.5 +27000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 72.1 +27000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 18.5 +27000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.3 +27000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.3 +27000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.7 +27000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +27000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +27000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.8 +27000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +27000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +27000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +27000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +27000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.8 +27000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +27000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +27000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +27000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 29.5 +27000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.0 +27000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +27000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 29.5 +27000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.0 +27000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 7.2 +27000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 150.7 +27000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +27000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +27000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +27000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +27000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +27000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +27000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.9 +27000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 119.8 +27000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 34.0 +27000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 18.8 +27000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 20.1 +27000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 34.0 +27000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 18.8 +27000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 20.1 +27000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 105.6 +27000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 348.5 +27000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 52.5 +27000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 64.1 +27000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.5 +27000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +27000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 12.5 +27000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 11.9 +27000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.6 +27000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 52.0 +27000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 14.4 +27000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 333.5 +27000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 147.5 +27000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 307.2 +27000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 6.8 +27000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 147.5 +27000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 307.2 +27000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 6.8 +27000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 39.1 +27000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 139.6 +27000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 224.9 +27000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 16.4 +27000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 104.5 +27000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.5 +27000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 742.8 +27000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1623.6 +27000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 4273.1 +27000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 312.1 +27000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1986.0 +27000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 9.7 +27000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1028.9 +27000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 78.4 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 89.7 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 137.3 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 37.1 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 79.5 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 47.8 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 54.0 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 54.8 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.1 +27000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 47.8 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 54.0 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 54.8 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.1 +27000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +27000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.5 +27000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.7 +27000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1520.4 +27000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 287.3 +27000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 146.3 +27000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 123.7 +27000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.0 +27000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 15.3 +27000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.5 +27000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.8 +27000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +27000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.0 +27000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 15.3 +27000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.9 +27000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.8 +27000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +27000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.6 +27000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.8 +27000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 30.2 +27000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 18.4 +27000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.7 +27000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 18.4 +27000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.7 +27000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +27000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.6 +27000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 18.6 +27000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.1 +27000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.7 +27000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +27000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 9.8 +27000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 4.5 +27000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 17.5 +27000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +27000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +27000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 9.2 +27000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.5 +27000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 17.3 +27000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +27000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.5 +27000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.0 +27000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +27000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +27000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 11383.1 +27000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 565724.9 +27000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 186.5 +27000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 337.8 +27000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 16789.9 +27000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 5.5 +27000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1055.6 +27000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 7462.3 +27000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 52993.3 +27000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 112.6 +27000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 795.8 +27000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 5651.1 +27000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 92057.9 +27000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +27000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 1819.6 +27000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 6402.1 +27000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 68810.6 +27000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 174260.7 +27000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +27000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +27000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 19196.7 +27000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1363.2 +27000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3973.9 +27000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +27000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +27000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +27000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 301.1 +27000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 80.5 +27000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 4.3 +27000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 9.2 +27000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 10187.5 +27000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 113135.4 +27000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +27000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +27000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 5825.3 +27000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2170.2 +27000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 6410.9 +27000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +27000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +27000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 332.2 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3248.8 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 102.3 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 111.3 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 8.5 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 57.8 +27000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 57.3 +27000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 31123.1 +27000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 47659.2 +27000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 80403.7 +27000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 3757.9 +27000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 2620.9 +27000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 4013.4 +27000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 6770.8 +27000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 316.5 +27000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 124.3 +27000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 17983.0 +27000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 13945.7 +27000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 66.0 +27000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.1 +27000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 306.8 +27000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 237.9 +27000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.1 +27000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 317.5 +27000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1084.4 +27000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 479.5 +27000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 7.2 +27000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1163.2 +27000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2276.6 +27000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 444.1 +27000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 13922.9 +27000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 154702.7 +27000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 50421.2 +27000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 7.6 +27000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 237.5 +27000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 2639.2 +27000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 860.2 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.4 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 19.2 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 79.0 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 148.9 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 11.2 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 48.0 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.4 +27000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 11.5 +27000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 11.2 +27000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 48.0 +27000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.4 +27000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 11.5 +27000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.4 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 3918.5 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1042.3 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2326.0 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3031.8 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 600.7 +27000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 5.2 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 453.6 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1964.2 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5005.8 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3307.6 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 48.4 +27000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 31.7 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 344.4 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1491.5 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 3801.1 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2511.6 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 36.8 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 24.1 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.4 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.8 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +27000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.9 +27000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 166.3 +27000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 143.5 +27000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 68.9 +27000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 7.1 +27000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 82.4 +27000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 9.3 +27000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +27000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.6 +27000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.3 +27000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 850.1 +27000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 272.1 +27000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 30.9 +27000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 5.6 +27000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 394.0 +27000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 5.8 +27000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 120.5 +27000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1443.3 +27000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1345.6 +27000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 5239.8 +27000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1910.9 +27000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 656.4 +27000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1112.1 +27000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 270.9 +27000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 101.6 +27000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 106.4 +27000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 104.5 +27000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 46079.1 +27000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 115.1 +27000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 459.4 +27000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 260.2 +27000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 98.9 +27000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 481.0 +27000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 285.9 +27000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 253.3 +27000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 20.1 +27000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 32.6 +27000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 5.2 +27000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 190.8 +27000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 79.7 +27000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 5.1 +27000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 8.6 +27000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 48.8 +27000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 13.4 +27000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +27000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 30.6 +27000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 64.5 +27000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 29.9 +27000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 13.7 +27000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.8 +27000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 15.9 +27000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 84.2 +27000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 119.8 +27000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 11.8 +27000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 13.7 +27000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.8 +27000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 85.0 +27000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 2110.2 +27000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 14845.2 +27000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 35647.8 +27000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 7885.1 +27000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 11282.9 +27000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +27000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +27000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +27000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +27000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +27000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +27000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1044.9 +27000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 7.8 +27000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 487.4 +27000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 433.4 +27000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 162.6 +27000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.8 +27000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.6 +27000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 9.9 +27000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 16.7 +27000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 333.9 +27000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 112.4 +27000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 38.8 +27000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 15.9 +27000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 8.0 +27000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2672.1 +27000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4827.7 +27000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.9 +27000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.6 +27000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 6918.6 +27000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 4339.5 +27000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 420.3 +27000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 244.9 +27000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 213.0 +27000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.0 +27000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 99.1 +27000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 6.6 +27000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 15.3 +27000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 206.0 +27000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.0 +27000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 99.0 +27000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 6.6 +27000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 14.3 +27000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 7.0 +27000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +27000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.0 +27000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.1 +27000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.2 +27000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.2 +27000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1096.5 +27000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1023.5 +27000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 125.5 +27000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 136.1 +27000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 19.9 +27000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 110.2 +27000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 23.5 +27000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 11.0 +27000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 19.9 +27000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 107.0 +27000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 23.5 +27000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 5.9 +27000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 3.2 +27000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 5.1 +27000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 3.3 +27000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.9 +27000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.5 +27000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 5.7 +27000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.9 +27000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.5 +27000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.8 +27000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 145.0 +27000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 562.2 +27000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 2072.3 +27000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 691.3 +27000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 163.2 +27000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 14.5 +27000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 3.3 +27000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 163.2 +27000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 14.5 +27000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 3.3 +27000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 3.4 +27000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 18306.2 +27000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 11321.4 +27000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 3358.6 +27000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 631.6 +27000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 10.7 +27000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.8 +27000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +27000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 10.7 +27000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.8 +27000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +27000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 26.7 +27000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 127.1 +27000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 115.1 +27000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 90.7 +27000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 92.8 +27000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.4 +27000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +27000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +27000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +27000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.4 +27000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +27000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +27000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +27000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +27000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 721.7 +27000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 4582.4 +27000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 253.4 +27000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 82.1 +27000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 8.0 +27000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 3.3 +27000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 14.6 +27000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.7 +27000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 5.9 +27000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.3 +27000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +27000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +27000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +27000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +27000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.7 +27000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.3 +27000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +27000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +27000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +27000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.7 +27000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3.5 +27000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 6.4 +27000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4.3 +27000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +27000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4.2 +27000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.6 +27000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.8 +27000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +27000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +27000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 8.1 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 294.7 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 203.7 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.7 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 4.3 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.3 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 36.1 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 31.8 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 14.0 +27000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.5 +27000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.0 +27000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 50.0 +27000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.6 +27000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 94.9 +27000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 59.1 +27000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 129.4 +27000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 90.9 +27000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 11.7 +27000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 48.9 +27000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 245.0 +27000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 109.5 +27000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 66.6 +27000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 6.1 +27000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 26.4 +27000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 49.5 +27000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 59.3 +27000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 106.4 +27000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 151.7 +27000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 140.6 +27000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 142.4 +27000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 389.7 +27000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 361.4 +27000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 123.4 +27000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 36.6 +27000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +27000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 9.8 +27000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 113.0 +27000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 146.3 +27000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 67.9 +27000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +27000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 21.1 +27000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 23.7 +27000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.8 +27000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 12.2 +27000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 16.2 +27000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +27000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 15.9 +27000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 18.8 +27000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 34.3 +27000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 10.6 +27000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +27000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +27000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.2 +27000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 18.2 +27000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 15.3 +27000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 5.3 +27000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +27000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 14.5 +27000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.4 +27000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +27000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.4 +27000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.0 +27000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +27000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +27000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 39.7 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 93.3 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 49.9 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 789.6 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 242.2 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 17.3 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 10.0 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 8.0 +27000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.0 +27000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +27000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +27000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.4 +27000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.0 +27000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 109.2 +27000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 272.2 +27000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 452.8 +27000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 182.9 +27000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 56.8 +27000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 37.9 +27000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 19.3 +27000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.7 +27000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.1 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.8 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.9 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 67.3 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 68.4 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 110.9 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 112.8 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 165.8 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 144.1 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 83.0 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 19.4 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 10.6 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +27000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +27000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.3 +27000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 7.3 +27000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 15.0 +27000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 66.8 +27000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 138.4 +27000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 73.8 +27000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 57.2 +27000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 258.3 +27000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 965.2 +27000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 705.6 +27000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 186.9 +27000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.9 +27000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.9 +27000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +27000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.6 +27000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 6.1 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 10.4 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 59.5 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.1 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 19.1 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 27.5 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.4 +27000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 121.1 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 72.2 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 13.4 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 12.2 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.9 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 15.2 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 25.4 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 8.1 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.9 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.6 +27000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +27000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +27000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 11.0 +27000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +27000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.9 +27000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 56.8 +27000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 213.9 +27000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 218.7 +27000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 134.7 +27000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.8 +27000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.7 +27000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +27000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +27000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +27000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.5 +27000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 19.5 +27000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 198.7 +27000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 332.8 +27000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 38.1 +27000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.3 +27000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +27000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 49.9 +27000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 106.0 +27000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 60.0 +27000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 29.1 +27000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 9.2 +27000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 46.7 +27000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 11.4 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.3 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.8 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.7 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 76.6 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 18.5 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 29.0 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 11.0 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 28.5 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.2 +27000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.9 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 91.3 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 101.6 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 201.4 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1152.6 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 592.1 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 30.7 +27000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 40.4 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.9 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 46.2 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 53.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 75.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 322.4 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 815.2 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 778.2 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 571.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 43.2 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 21.0 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.4 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 25.8 +27000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.9 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 46.9 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 93.8 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 50.1 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 936.2 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3307.5 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2200.7 +27000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 12.0 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 9.7 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 279.3 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 631.2 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 546.6 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 276.8 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 109.2 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 22.6 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 39.3 +27000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +27000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.5 +27000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 413.0 +27000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 915.7 +27000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1791.8 +27000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 708.6 +27000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3890.8 +27000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2557.8 +27000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 64.4 +27000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +27000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 8.7 +27000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 14.9 +27000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 35.5 +27000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 11.6 +27000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.1 +27000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 9.2 +27000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +27000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 17.5 +27000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 16.8 +27000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 12.0 +27000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 13.9 +27000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.0 +27000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.4 +27000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 9.5 +27000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.4 +27000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.6 +27000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +27000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.5 +27000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 7.3 +27000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.7 +27000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 7.1 +27000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 7.0 +27000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 48.5 +27000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 43.3 +27000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 104.6 +27000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 19.1 +27000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +27000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.3 +27000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.9 +27000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 19.3 +27000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 270.9 +27000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 336.5 +27000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 79.6 +27000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 565.6 +27000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 201.0 +27000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.5 +27000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.4 +27000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +27000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.0 +27000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 11.5 +27000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 427.0 +27000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 430.2 +27000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 154.5 +27000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 25.1 +27000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 32.1 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 7.2 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 43.8 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 105.4 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 71.1 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 68.9 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 253.6 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 284.7 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 76.6 +27000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.3 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 50.1 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 9.5 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 6.1 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 10.6 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 33.6 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 12.2 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 94.8 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 295.1 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 419.7 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 131.0 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 13.4 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.2 +27000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 8.0 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 40.2 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 12.1 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 55.7 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 21.2 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.9 +27000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +27000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 110.3 +27000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 339.1 +27000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 317.9 +27000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 81.5 +27000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 597.5 +27000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2298.3 +27000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +27000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +27000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +27000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +27000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +27000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +27000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 54.0 +27000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 93.8 +27000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 150.6 +27000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 250.8 +27000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 7.7 +27000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.2 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.8 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +27000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +27000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.5 +27000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 4.6 +27000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 5.7 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.2 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 89.9 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1247.4 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 604.6 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 135.1 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 221.8 +27000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 47.4 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 21.9 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 547.7 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 9.5 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 5.5 +27000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 8.3 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.0 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 21.6 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 80.6 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 356.0 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 112.7 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 68.0 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 57.7 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 13.1 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.1 +27000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 12.8 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 16.7 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 30.7 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 14.9 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 15.7 +27000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 13.1 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.2 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 2.6 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.7 +27000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +27000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 5.5 +27000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 22.4 +27000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.5 +27000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 5072.5 +27000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 13643.0 +27000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 7795.6 +27000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 12343.5 +27000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 10879.0 +27000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 18127.1 +27000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 15627.6 +27000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 8086.3 +27000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.8 +27000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 852.3 +27000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 7818.3 +27000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 9322.8 +27000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 481.6 +27000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 9.4 +27000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 203.3 +27000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 74.9 +27000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 63.7 +27000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 3.1 +27000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 19.2 +27000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 101.6 +27000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 46.2 +27000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 28.9 +27000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 77.7 +27000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 476.1 +27000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 919.0 +27000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 998.6 +27000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 270.5 +27000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 2.0 +27000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +27000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.8 +27000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 575.5 +27000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2719.7 +27000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 537.2 +27000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 24.0 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.5 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 17.9 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 64.9 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 34.4 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 20.9 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 162.6 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 203.2 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 506.3 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 512.2 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 214.6 +27000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +27000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +27000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +27000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 40.9 +27000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 93.3 +27000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 37.0 +27000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 145.3 +27000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 685.8 +27000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 359.8 +27000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 102.4 +27000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 7.3 +27000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +27000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1266.1 +27000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1264.2 +27000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 974.4 +27000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1534.3 +27000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2539.6 +27000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 346.9 +27000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1279.9 +27000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1557.6 +27000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 531.7 +27000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 295.6 +27000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 153.5 +27000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +27000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +27000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +27000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +27000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +27000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.6 +27000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 218.0 +27000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 524.0 +27000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 131.5 +27000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 104.6 +27000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 181.9 +27000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 51.5 +27000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 349.0 +27000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 388.4 +27000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 171.3 +27000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 42.9 +27000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 21.7 +27000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +27000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +27000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +27000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +27000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +27000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 7.4 +27000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 18.1 +27000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.5 +27000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.8 +27000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 139.2 +27000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 96.4 +27000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 617.7 +27000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 804.5 +27000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 92.3 +27000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 82.8 +27000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 23.7 +27000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +27000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +27000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +27000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +27000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +27000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +27000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 80.5 +27000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 445.9 +27000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 649.1 +27000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 402.6 +27000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1116.0 +27000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 810.6 +27000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 355.9 +27000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 18.5 +27000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +27000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +27000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 14.1 +27000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 119.9 +27000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 137.7 +27000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 171.9 +27000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 164.3 +27000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 20.6 +27000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 69.1 +27000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 19.3 +27000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 64.2 +27000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 52.0 +27000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 7.9 +27000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.7 +27000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.9 +27000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 4.2 +27000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.3 +27000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 12.4 +27000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 17.9 +27000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 5.7 +27000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 27.5 +27000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 31.7 +27000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 8.6 +27000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.1 +27000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.3 +27000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +27000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.3 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.4 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.6 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 29.2 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 202.3 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 289.9 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 25.0 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 10.3 +27000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.3 +27000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 18.3 +27000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +27000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.2 +27000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.7 +27000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.9 +27000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 19.2 +27000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 34.9 +27000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 103.0 +27000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 34.6 +27000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 40.4 +27000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 4.3 +27000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +27000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.2 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.9 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.9 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.0 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.4 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.9 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.4 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.2 +27000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +27000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 6341.2 +27000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 23653.7 +27000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 35626.1 +27000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 7920.9 +27000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 15600.4 +27000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 30135.0 +27000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 23181.4 +27000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 38768.5 +27000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 26335.7 +27000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 58915.5 +27000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 52886.4 +27000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 25.2 +27000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 24.3 +27000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 232.3 +27000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.4 +27000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 246.7 +27000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 99.4 +27000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 2204.1 +27000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 8152.0 +27000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 30200.6 +27000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1986.9 +27000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 27.7 +27000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 19.8 +27000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 11.7 +27000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 50.7 +27000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 445.4 +27000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +27000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 10677.8 +27000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 39632.9 +27000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 15916.6 +27000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 268.5 +27000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 326.8 +27000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 160.3 +27000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 354.8 +27000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 194.1 +27000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 35.9 +27000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 314.5 +27000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 264.9 +27000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 2170.9 +27000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 3569.8 +27000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 2633.2 +27000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 103.9 +27000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 197.0 +27000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 16.0 +27000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 56.3 +27000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 34.5 +27000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 351.6 +27000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +27000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.5 +27000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.7 +27000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.3 +27000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 8.6 +27000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 13.6 +27000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 24.7 +27000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 23.0 +27000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 97.3 +27000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 35.8 +27000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.1 +27000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.5 +27000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +27000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +27000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +27000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.5 +27000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 47.4 +27000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 194.8 +27000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.5 +27000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 8.9 +27000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.8 +27000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +27000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.8 +27000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MO.POP b/NONROAD/NR08a/DATA/POP/MO.POP new file mode 100644 index 0000000..bc79b78 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MO.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 29000 MO Missouri 2,749,139.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +29000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +29000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +29000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 21555.9 +29000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 10617.1 +29000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 10894.7 +29000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 94286.3 +29000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 3883.7 +29000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6441.7 +29000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.9 +29000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.1 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.3 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 132.3 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 250.5 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1973.5 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 20.2 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 48.7 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +29000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 18.4 +29000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 20.2 +29000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +29000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 48.7 +29000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +29000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 18.4 +29000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 13.4 +29000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 93.4 +29000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.3 +29000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 33.8 +29000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 5.7 +29000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 6.3 +29000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 5.7 +29000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 6.3 +29000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2793.4 +29000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.1 +29000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 262.5 +29000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1331.9 +29000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 410.0 +29000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 72.7 +29000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 101.0 +29000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 18.0 +29000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 46.9 +29000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 5.5 +29000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.8 +29000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.6 +29000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 5.5 +29000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.8 +29000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.6 +29000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 251.4 +29000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 735.3 +29000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 623.6 +29000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 312.3 +29000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 220.0 +29000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 8.9 +29000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.8 +29000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 8.9 +29000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.8 +29000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 109.2 +29000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 168.2 +29000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 48.6 +29000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 20.5 +29000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +29000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +29000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +29000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +29000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.7 +29000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 12.3 +29000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 12.3 +29000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +29000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.5 +29000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 191.2 +29000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 187.1 +29000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 66.9 +29000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 76.2 +29000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 12.7 +29000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 10.7 +29000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 8.4 +29000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 12.7 +29000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 10.7 +29000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 8.4 +29000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 78.9 +29000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1614.0 +29000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 65.3 +29000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 20.0 +29000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 25.3 +29000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 16.6 +29000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.7 +29000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.1 +29000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.1 +29000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.7 +29000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.1 +29000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.1 +29000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 206.4 +29000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 989.1 +29000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 508.5 +29000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 106.6 +29000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 46.9 +29000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 12.9 +29000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.0 +29000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 12.9 +29000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.0 +29000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 28.0 +29000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1568.5 +29000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2620.5 +29000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 88.9 +29000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 68.1 +29000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.7 +29000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.8 +29000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.3 +29000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +29000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 9.3 +29000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.5 +29000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +29000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 9.3 +29000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.5 +29000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 25.2 +29000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 35.5 +29000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 64.7 +29000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 16.6 +29000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +29000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +29000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.6 +29000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +29000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +29000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.2 +29000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +29000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +29000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +29000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +29000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.2 +29000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +29000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +29000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +29000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.5 +29000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.9 +29000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +29000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.5 +29000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.9 +29000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 6.5 +29000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 135.3 +29000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +29000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.4 +29000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +29000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +29000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.4 +29000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +29000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.3 +29000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 107.5 +29000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.5 +29000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 16.8 +29000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 18.0 +29000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.5 +29000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 16.8 +29000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 18.0 +29000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 94.8 +29000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 312.9 +29000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 47.1 +29000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 57.5 +29000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.2 +29000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +29000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 11.2 +29000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 10.7 +29000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.5 +29000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 47.3 +29000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 13.1 +29000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 303.3 +29000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 134.1 +29000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 279.4 +29000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 6.2 +29000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 134.1 +29000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 279.4 +29000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 6.2 +29000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 35.6 +29000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 127.0 +29000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 204.5 +29000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 14.9 +29000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 95.1 +29000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.5 +29000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 675.5 +29000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1476.5 +29000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3886.1 +29000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 283.8 +29000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1806.1 +29000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 8.8 +29000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 935.7 +29000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 71.3 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 81.6 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 124.9 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 33.8 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 72.3 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 43.5 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 49.1 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 49.8 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.0 +29000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 43.5 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 49.1 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 49.8 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.0 +29000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +29000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +29000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.4 +29000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1382.7 +29000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 261.3 +29000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 133.1 +29000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 112.5 +29000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 10.0 +29000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 14.0 +29000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.2 +29000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.3 +29000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +29000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 10.0 +29000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 14.0 +29000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.7 +29000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.3 +29000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +29000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.5 +29000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.7 +29000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 27.5 +29000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 16.7 +29000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.6 +29000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 16.7 +29000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.6 +29000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +29000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +29000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 21.0 +29000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.4 +29000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.8 +29000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +29000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 8.9 +29000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 4.1 +29000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 16.0 +29000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +29000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +29000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 8.4 +29000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.2 +29000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 15.8 +29000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +29000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.5 +29000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.9 +29000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +29000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +29000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 13361.5 +29000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 664046.8 +29000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 218.9 +29000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 513.2 +29000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 25505.9 +29000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 8.4 +29000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1239.0 +29000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 8759.2 +29000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 62203.5 +29000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 171.0 +29000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1208.9 +29000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 8584.7 +29000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 108057.4 +29000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +29000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2764.1 +29000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 9725.6 +29000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 80769.8 +29000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 204546.9 +29000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +29000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +29000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 29162.2 +29000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2070.9 +29000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4664.6 +29000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +29000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +29000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +29000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 457.4 +29000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 122.4 +29000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 6.5 +29000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 14.0 +29000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 11958.1 +29000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 132798.2 +29000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +29000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +29000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 8849.4 +29000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3296.8 +29000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7525.1 +29000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +29000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +29000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 504.6 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 4935.4 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 155.5 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 169.1 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 12.9 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 87.8 +29000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 87.1 +29000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 30682.9 +29000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 46985.1 +29000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 79266.5 +29000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 3704.8 +29000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 3750.6 +29000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 5743.4 +29000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 9689.4 +29000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 452.9 +29000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 145.9 +29000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 21108.4 +29000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 16369.4 +29000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 77.4 +29000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.2 +29000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 466.0 +29000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 361.4 +29000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.7 +29000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 482.3 +29000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1647.3 +29000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 728.4 +29000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 10.9 +29000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1767.1 +29000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3458.5 +29000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 521.2 +29000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 16342.7 +29000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 181589.8 +29000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 59184.3 +29000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 11.5 +29000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 360.8 +29000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 4009.2 +29000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1306.7 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.6 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 29.1 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 120.0 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 226.2 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.1 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.9 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +29000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +29000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.1 +29000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.9 +29000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +29000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +29000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.1 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 5952.6 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1583.4 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3533.5 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 4605.7 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 912.6 +29000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 7.9 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 532.4 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2305.5 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5875.7 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3882.5 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 56.9 +29000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 37.3 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 523.2 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2265.7 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 5774.3 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 3815.5 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 55.9 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 36.6 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.6 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.2 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.4 +29000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.4 +29000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 112.6 +29000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 97.2 +29000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 46.7 +29000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 4.8 +29000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 55.8 +29000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 6.3 +29000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +29000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.4 +29000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.9 +29000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 575.7 +29000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 184.3 +29000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 20.9 +29000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 3.8 +29000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 266.8 +29000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 3.9 +29000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 81.6 +29000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 977.4 +29000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 911.3 +29000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 3548.6 +29000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1294.2 +29000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 444.6 +29000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 753.2 +29000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 183.5 +29000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 68.8 +29000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 72.1 +29000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 70.7 +29000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 31206.3 +29000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 77.9 +29000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 311.1 +29000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 176.2 +29000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 67.0 +29000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 325.8 +29000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 193.7 +29000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 171.6 +29000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 13.6 +29000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 22.0 +29000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 3.5 +29000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 129.2 +29000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 54.0 +29000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 3.5 +29000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 5.8 +29000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 33.0 +29000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 9.1 +29000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +29000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 20.7 +29000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 43.7 +29000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 20.3 +29000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 9.2 +29000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.5 +29000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 10.8 +29000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 57.0 +29000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 81.1 +29000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 8.0 +29000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 9.3 +29000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.9 +29000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 80.7 +29000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 2002.9 +29000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 14090.5 +29000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 33835.5 +29000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 7484.2 +29000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 10709.3 +29000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +29000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +29000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +29000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +29000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +29000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +29000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 991.8 +29000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 7.4 +29000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 462.6 +29000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 411.4 +29000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 154.3 +29000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.6 +29000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.6 +29000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 9.4 +29000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 15.9 +29000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 316.9 +29000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 106.7 +29000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 36.8 +29000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 15.1 +29000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 7.6 +29000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2536.2 +29000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4582.2 +29000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.8 +29000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.6 +29000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 6566.8 +29000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 4118.8 +29000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 399.0 +29000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 232.5 +29000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 202.1 +29000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.9 +29000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 94.0 +29000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 6.2 +29000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 14.5 +29000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 195.5 +29000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.9 +29000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 94.0 +29000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 6.2 +29000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 13.6 +29000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 6.6 +29000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +29000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.9 +29000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.1 +29000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.1 +29000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.2 +29000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1040.8 +29000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 971.5 +29000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 119.2 +29000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 129.1 +29000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 18.9 +29000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 104.6 +29000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 22.3 +29000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 10.4 +29000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 18.9 +29000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 101.6 +29000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 22.3 +29000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 5.6 +29000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 3.0 +29000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.9 +29000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 3.1 +29000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.8 +29000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.5 +29000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 5.4 +29000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.9 +29000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.3 +29000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.8 +29000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 137.6 +29000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 533.6 +29000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1967.0 +29000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 656.2 +29000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 154.9 +29000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 13.8 +29000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 3.1 +29000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 154.9 +29000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 13.8 +29000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 3.1 +29000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 3.3 +29000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 17375.5 +29000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 10745.8 +29000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 3187.9 +29000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 599.5 +29000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 10.1 +29000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.8 +29000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +29000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 10.1 +29000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.8 +29000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +29000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 25.4 +29000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 120.6 +29000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 109.2 +29000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 86.1 +29000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 88.1 +29000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.3 +29000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +29000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.3 +29000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +29000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.3 +29000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +29000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.3 +29000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +29000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +29000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 475.9 +29000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 3021.5 +29000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 167.1 +29000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 54.2 +29000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 5.3 +29000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 2.2 +29000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 27.8 +29000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 3.2 +29000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 11.2 +29000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.6 +29000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.7 +29000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +29000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +29000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 3.0 +29000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.9 +29000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.7 +29000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +29000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +29000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 3.0 +29000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.9 +29000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 4.7 +29000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 8.7 +29000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 5.8 +29000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +29000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 5.6 +29000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.8 +29000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2.4 +29000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +29000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +29000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 9.2 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 333.1 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 230.3 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.8 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 4.9 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.8 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 40.8 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 35.9 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 15.9 +29000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +29000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.8 +29000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 44.9 +29000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.2 +29000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 85.2 +29000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 53.0 +29000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 116.2 +29000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 81.6 +29000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 10.5 +29000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 43.9 +29000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 220.0 +29000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 98.3 +29000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 59.8 +29000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 5.5 +29000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 23.7 +29000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 44.5 +29000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 53.2 +29000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 95.5 +29000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 136.2 +29000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 126.3 +29000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 127.9 +29000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 349.9 +29000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 324.4 +29000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 110.8 +29000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 32.8 +29000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +29000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 8.8 +29000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 101.4 +29000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 131.4 +29000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 60.9 +29000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +29000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 19.0 +29000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 21.3 +29000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.6 +29000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 11.0 +29000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 14.6 +29000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +29000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 14.3 +29000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 16.9 +29000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 30.8 +29000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 9.6 +29000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +29000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +29000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.1 +29000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 16.4 +29000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 13.7 +29000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 4.7 +29000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +29000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 13.0 +29000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.0 +29000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +29000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.0 +29000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.8 +29000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +29000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +29000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 35.6 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 83.8 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 44.8 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 708.9 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 217.5 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 15.5 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 9.0 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 7.2 +29000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.8 +29000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +29000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +29000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.3 +29000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.8 +29000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 98.0 +29000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 244.4 +29000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 406.5 +29000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 164.2 +29000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 51.0 +29000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 34.1 +29000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 17.3 +29000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.5 +29000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.0 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.6 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.5 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 60.4 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 61.4 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 99.5 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 101.2 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 148.8 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 129.4 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 74.6 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 17.4 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 9.5 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +29000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +29000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.2 +29000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 6.5 +29000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 13.5 +29000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 60.0 +29000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 124.2 +29000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 66.3 +29000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 51.4 +29000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 231.9 +29000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 866.6 +29000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 633.5 +29000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 167.8 +29000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.3 +29000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.2 +29000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +29000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.3 +29000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 5.5 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 9.3 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 53.5 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.9 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 17.2 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 24.7 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.0 +29000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 108.7 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 64.8 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 12.0 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 10.9 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.0 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 13.7 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 22.8 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 7.2 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.6 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.2 +29000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +29000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +29000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 9.9 +29000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +29000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.3 +29000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 51.0 +29000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 192.0 +29000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 196.4 +29000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 121.0 +29000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.2 +29000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.5 +29000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +29000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +29000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +29000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.3 +29000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 17.5 +29000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 178.4 +29000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 298.8 +29000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 34.2 +29000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.1 +29000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +29000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 44.8 +29000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 95.2 +29000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 53.9 +29000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 26.2 +29000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 8.3 +29000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 41.9 +29000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 10.2 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.2 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.6 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.0 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 68.8 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 16.6 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 26.1 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 9.8 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 25.6 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.9 +29000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.5 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 82.0 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 91.2 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 180.8 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1034.8 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 531.6 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 27.5 +29000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 36.3 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.8 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 41.5 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 47.6 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 67.3 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 289.4 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 731.9 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 698.7 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 512.6 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 38.7 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 18.9 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 3.9 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 23.1 +29000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.8 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 42.1 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 84.2 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 45.0 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 840.5 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2969.5 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1975.9 +29000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 10.8 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 8.7 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 250.8 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 566.7 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 490.8 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 248.5 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 98.0 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 20.3 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 35.3 +29000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +29000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.3 +29000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 370.8 +29000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 822.1 +29000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1608.7 +29000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 636.2 +29000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3493.2 +29000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2296.4 +29000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 57.8 +29000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +29000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 7.8 +29000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 13.3 +29000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 31.9 +29000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 10.5 +29000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.0 +29000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 8.3 +29000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +29000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 15.7 +29000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 15.0 +29000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 10.8 +29000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 12.5 +29000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.7 +29000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.3 +29000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 8.5 +29000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.1 +29000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.5 +29000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +29000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.3 +29000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 6.5 +29000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.6 +29000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 6.4 +29000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 6.3 +29000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 43.5 +29000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 38.9 +29000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 93.9 +29000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 17.1 +29000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +29000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.1 +29000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.7 +29000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 17.6 +29000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 246.4 +29000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 306.1 +29000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 72.4 +29000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 514.4 +29000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 182.8 +29000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.2 +29000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.4 +29000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +29000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.9 +29000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 10.5 +29000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 388.4 +29000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 391.3 +29000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 140.5 +29000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 22.9 +29000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 29.2 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 6.5 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 39.9 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 95.8 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 64.7 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 62.6 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 230.6 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 258.9 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 69.6 +29000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.2 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 45.5 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 8.6 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 5.6 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 9.7 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 30.6 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 11.1 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 86.2 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 268.3 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 381.7 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 119.1 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 12.2 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.0 +29000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 7.3 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 36.5 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 11.0 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 50.7 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 19.3 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.7 +29000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +29000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 124.7 +29000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 383.2 +29000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 359.3 +29000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 92.1 +29000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 675.4 +29000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2597.7 +29000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +29000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +29000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +29000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +29000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +29000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +29000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 49.2 +29000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 85.3 +29000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 137.0 +29000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 228.1 +29000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 7.0 +29000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 4.8 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.2 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +29000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +29000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.8 +29000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 6.6 +29000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 8.2 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 4.9 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 136.5 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1895.0 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 918.5 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 205.2 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 336.9 +29000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 72.0 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 33.3 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 832.0 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 14.4 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 8.3 +29000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 12.7 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.1 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 32.8 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 122.4 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 540.8 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 171.2 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 103.4 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 87.7 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 19.9 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.2 +29000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.4 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 19.5 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 25.3 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 46.6 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 22.7 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 23.8 +29000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 19.9 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.5 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 4.8 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.0 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.1 +29000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +29000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 3.7 +29000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 15.1 +29000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.3 +29000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 3435.3 +29000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 9239.5 +29000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 5279.4 +29000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 8359.4 +29000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 7367.7 +29000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 12276.2 +29000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 10583.5 +29000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 5476.3 +29000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.5 +29000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 577.2 +29000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 5294.8 +29000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 6313.7 +29000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 326.1 +29000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 6.3 +29000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 137.7 +29000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 50.7 +29000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 43.1 +29000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 2.1 +29000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 13.0 +29000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 68.8 +29000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 31.3 +29000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 19.6 +29000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 52.6 +29000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 322.4 +29000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 622.4 +29000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 676.3 +29000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 183.2 +29000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.3 +29000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +29000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.5 +29000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 389.7 +29000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1841.9 +29000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 363.8 +29000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 16.3 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.0 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 12.1 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 44.0 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 23.3 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 14.2 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 110.1 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 137.6 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 342.9 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 346.9 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 145.4 +29000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +29000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +29000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +29000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 27.7 +29000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 63.2 +29000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 25.1 +29000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 98.4 +29000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 464.5 +29000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 243.7 +29000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 69.3 +29000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 4.9 +29000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +29000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1201.8 +29000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1199.9 +29000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 924.9 +29000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1456.3 +29000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2410.5 +29000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 329.2 +29000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1214.8 +29000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1478.4 +29000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 504.6 +29000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 280.6 +29000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 145.7 +29000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +29000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +29000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +29000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +29000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +29000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +29000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 206.9 +29000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 497.4 +29000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 124.8 +29000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 99.3 +29000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 172.6 +29000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 48.9 +29000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 331.2 +29000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 368.6 +29000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 162.6 +29000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 40.7 +29000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 20.6 +29000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +29000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +29000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +29000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +29000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +29000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 7.0 +29000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 17.2 +29000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.3 +29000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.6 +29000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 132.2 +29000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 91.5 +29000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 586.3 +29000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 763.6 +29000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 87.6 +29000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 78.6 +29000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 22.5 +29000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +29000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +29000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +29000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +29000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +29000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +29000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 76.4 +29000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 423.2 +29000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 616.1 +29000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 382.1 +29000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1059.2 +29000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 769.3 +29000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 337.8 +29000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 17.6 +29000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +29000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +29000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 13.4 +29000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 113.8 +29000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 130.7 +29000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 163.2 +29000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 155.9 +29000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 19.5 +29000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 65.6 +29000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 18.4 +29000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 60.9 +29000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 49.3 +29000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 7.5 +29000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.5 +29000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.8 +29000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 4.0 +29000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.3 +29000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 11.7 +29000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 17.0 +29000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 5.4 +29000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 26.1 +29000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 30.1 +29000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 8.1 +29000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.1 +29000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +29000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +29000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.3 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.4 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 19.2 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 133.4 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 191.2 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 16.5 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 6.8 +29000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +29000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 34.8 +29000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +29000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +29000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.3 +29000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.8 +29000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 36.4 +29000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 66.4 +29000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 196.1 +29000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 65.8 +29000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 76.9 +29000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 8.2 +29000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.5 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +29000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.3 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.2 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.2 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2.6 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.3 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.9 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.2 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.5 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.3 +29000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +29000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4484.6 +29000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 16728.5 +29000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 25195.6 +29000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5601.8 +29000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 11033.0 +29000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 21312.2 +29000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 16394.5 +29000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 27418.0 +29000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 18625.2 +29000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 41666.5 +29000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 37402.6 +29000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 17.8 +29000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 17.2 +29000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 164.3 +29000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +29000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 174.4 +29000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 70.3 +29000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1558.8 +29000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5765.3 +29000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 21358.6 +29000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1405.2 +29000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 19.6 +29000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 14.0 +29000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 8.3 +29000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 35.8 +29000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 315.0 +29000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +29000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 7551.6 +29000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 28029.3 +29000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 11256.6 +29000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 189.9 +29000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 231.1 +29000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 113.4 +29000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 250.9 +29000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 137.3 +29000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 25.4 +29000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 222.4 +29000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 187.3 +29000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1535.3 +29000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2524.6 +29000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1862.3 +29000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 73.5 +29000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 139.3 +29000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 11.3 +29000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 39.8 +29000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 24.4 +29000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 248.6 +29000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.6 +29000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 3.1 +29000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 3.4 +29000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 4.8 +29000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 17.7 +29000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 27.8 +29000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 50.7 +29000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 47.2 +29000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 199.2 +29000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 73.4 +29000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 12.4 +29000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 3.1 +29000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.7 +29000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 1.1 +29000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.4 +29000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 3.0 +29000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 97.0 +29000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 399.0 +29000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 7.2 +29000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 18.3 +29000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 5.7 +29000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +29000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 5.7 +29000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MS.POP b/NONROAD/NR08a/DATA/POP/MS.POP new file mode 100644 index 0000000..74b876c --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MS.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 28000 MS Mississippi 1,273,911.8 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +28000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +28000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +28000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 18926.1 +28000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 9321.8 +28000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 9565.6 +28000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 82783.5 +28000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1912.2 +28000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3252.3 +28000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.0 +28000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.5 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.6 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 66.8 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 126.5 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 996.4 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 10.2 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 24.6 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +28000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 9.3 +28000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 10.2 +28000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +28000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 24.6 +28000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +28000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 9.3 +28000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 5.3 +28000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 36.8 +28000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.7 +28000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 13.3 +28000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.3 +28000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.5 +28000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.3 +28000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.5 +28000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1102.1 +28000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.4 +28000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 103.6 +28000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 525.5 +28000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 161.8 +28000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 28.7 +28000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 39.8 +28000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 7.1 +28000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 18.5 +28000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.2 +28000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.5 +28000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.0 +28000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.2 +28000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.5 +28000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.0 +28000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 99.2 +28000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 290.1 +28000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 246.0 +28000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 123.2 +28000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 86.8 +28000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 3.5 +28000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +28000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 3.5 +28000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +28000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 43.1 +28000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 66.3 +28000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 19.2 +28000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 8.1 +28000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.8 +28000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +28000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.8 +28000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +28000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.3 +28000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 4.9 +28000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 4.8 +28000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +28000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +28000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 75.4 +28000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 73.8 +28000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 26.4 +28000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 30.1 +28000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 5.0 +28000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 4.2 +28000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 3.3 +28000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 5.0 +28000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 4.2 +28000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 3.3 +28000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 31.1 +28000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 636.8 +28000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 25.8 +28000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 7.9 +28000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 10.0 +28000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 6.6 +28000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.6 +28000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.4 +28000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.0 +28000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.6 +28000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.4 +28000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.0 +28000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 81.4 +28000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 390.2 +28000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 200.6 +28000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 42.1 +28000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 18.5 +28000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.1 +28000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.8 +28000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.1 +28000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.8 +28000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 11.0 +28000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 618.9 +28000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1033.9 +28000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 35.1 +28000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 26.9 +28000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.0 +28000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.5 +28000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.5 +28000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +28000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 3.7 +28000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.6 +28000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +28000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 3.7 +28000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.6 +28000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 10.0 +28000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 14.0 +28000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 25.5 +28000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 6.5 +28000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.8 +28000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.8 +28000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.2 +28000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.8 +28000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +28000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.2 +28000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +28000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +28000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.8 +28000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +28000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.2 +28000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +28000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +28000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +28000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 10.4 +28000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.3 +28000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +28000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 10.4 +28000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.3 +28000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.6 +28000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 53.4 +28000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +28000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.9 +28000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +28000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +28000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.9 +28000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +28000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.1 +28000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 42.4 +28000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 12.0 +28000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 6.6 +28000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 7.1 +28000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 12.0 +28000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 6.6 +28000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 7.1 +28000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 37.4 +28000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 123.4 +28000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 18.6 +28000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 22.7 +28000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.9 +28000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +28000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 4.4 +28000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 4.2 +28000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +28000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 26.6 +28000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 7.4 +28000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 170.5 +28000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 75.4 +28000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 157.0 +28000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +28000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 75.4 +28000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 157.0 +28000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.5 +28000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 20.0 +28000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 71.4 +28000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 115.0 +28000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 8.4 +28000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 53.4 +28000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +28000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 379.6 +28000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 829.8 +28000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2184.1 +28000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 159.5 +28000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1015.0 +28000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 5.0 +28000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 525.9 +28000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 40.0 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 45.9 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 70.2 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 19.0 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 40.7 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 24.4 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 27.6 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.0 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.6 +28000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 24.4 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 27.6 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 28.0 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.6 +28000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +28000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +28000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.9 +28000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 777.1 +28000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 146.8 +28000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 74.8 +28000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 63.2 +28000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.6 +28000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 7.8 +28000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.3 +28000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +28000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +28000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.6 +28000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 7.8 +28000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.0 +28000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.0 +28000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +28000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +28000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.4 +28000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 15.4 +28000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 9.4 +28000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +28000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 9.4 +28000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +28000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +28000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.3 +28000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 10.6 +28000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.2 +28000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.4 +28000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +28000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 5.0 +28000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.3 +28000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 9.0 +28000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +28000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +28000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.7 +28000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.8 +28000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 8.9 +28000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +28000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +28000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.5 +28000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +28000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +28000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 6378.5 +28000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 317004.2 +28000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 104.5 +28000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 126.9 +28000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 6307.1 +28000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.1 +28000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 591.5 +28000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4181.5 +28000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 29694.8 +28000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 42.3 +28000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 298.9 +28000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2122.8 +28000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 51584.7 +28000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +28000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 683.5 +28000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2404.9 +28000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 38558.1 +28000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 97647.1 +28000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +28000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +28000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 7211.2 +28000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 512.1 +28000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2226.8 +28000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +28000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +28000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +28000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 113.1 +28000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 30.3 +28000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.6 +28000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.5 +28000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 5708.6 +28000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 63395.5 +28000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +28000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +28000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2188.3 +28000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 815.2 +28000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 3592.3 +28000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +28000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +28000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 124.8 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1220.4 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 38.4 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 41.8 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.2 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 21.7 +28000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 21.5 +28000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +28000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +28000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +28000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +28000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +28000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +28000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +28000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +28000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 69.6 +28000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 10076.8 +28000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 7814.5 +28000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 37.0 +28000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.8 +28000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 115.2 +28000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 89.4 +28000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +28000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 119.3 +28000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 407.3 +28000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 180.1 +28000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.7 +28000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 437.0 +28000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 855.2 +28000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 248.8 +28000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 7801.7 +28000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 86687.7 +28000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 28253.5 +28000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.8 +28000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 89.2 +28000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 991.4 +28000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 323.1 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 7.2 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 29.7 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 55.9 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.2 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 18.0 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +28000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.3 +28000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.2 +28000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 18.0 +28000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +28000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.3 +28000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.5 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1472.0 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 391.5 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 873.8 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1138.9 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 225.7 +28000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.9 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 254.2 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1100.6 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2805.0 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1853.4 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 27.1 +28000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 17.8 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 129.4 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 560.3 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1427.9 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 943.5 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 13.8 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 9.1 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.9 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +28000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.4 +28000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 35.5 +28000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 30.6 +28000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 14.7 +28000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.5 +28000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 17.6 +28000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.0 +28000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +28000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +28000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +28000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 181.4 +28000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 58.1 +28000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.6 +28000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.2 +28000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 84.1 +28000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.2 +28000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 25.7 +28000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 308.0 +28000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 287.1 +28000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1118.1 +28000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 407.8 +28000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 140.1 +28000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 237.3 +28000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 57.8 +28000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 21.7 +28000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 22.7 +28000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 22.3 +28000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 9832.7 +28000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 24.6 +28000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 98.0 +28000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 55.5 +28000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 21.1 +28000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 102.6 +28000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 61.0 +28000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 54.1 +28000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.3 +28000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 6.9 +28000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.1 +28000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 40.7 +28000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 17.0 +28000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.1 +28000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.8 +28000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 10.4 +28000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.9 +28000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +28000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.5 +28000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 13.8 +28000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.4 +28000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.9 +28000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +28000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.4 +28000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 18.0 +28000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 25.6 +28000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.5 +28000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.9 +28000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +28000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 27.5 +28000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 683.0 +28000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 4805.3 +28000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 11539.1 +28000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 2552.4 +28000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 3652.2 +28000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +28000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +28000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +28000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +28000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +28000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +28000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 338.2 +28000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 2.5 +28000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 157.8 +28000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 140.3 +28000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 52.6 +28000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.2 +28000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +28000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 3.2 +28000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 5.4 +28000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 108.1 +28000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 36.4 +28000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 12.6 +28000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 5.1 +28000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 2.6 +28000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 864.9 +28000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1562.7 +28000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.0 +28000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +28000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 2239.5 +28000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1404.7 +28000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 136.1 +28000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 79.3 +28000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 68.9 +28000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.6 +28000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 32.1 +28000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 2.1 +28000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 4.9 +28000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 66.7 +28000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.6 +28000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 32.0 +28000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 2.1 +28000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 4.6 +28000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.3 +28000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +28000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.3 +28000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.4 +28000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.4 +28000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.4 +28000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 354.9 +28000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 331.3 +28000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 40.6 +28000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 44.0 +28000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 6.4 +28000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 35.7 +28000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 7.6 +28000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 3.6 +28000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 6.4 +28000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 34.6 +28000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 7.6 +28000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.9 +28000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.0 +28000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.7 +28000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.1 +28000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.6 +28000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.2 +28000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.8 +28000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.3 +28000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.8 +28000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.3 +28000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 46.9 +28000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 182.0 +28000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 670.8 +28000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 223.8 +28000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 52.8 +28000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 4.7 +28000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.1 +28000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 52.8 +28000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 4.7 +28000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.1 +28000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.1 +28000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 5925.6 +28000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 3664.7 +28000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1087.2 +28000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 204.4 +28000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 3.5 +28000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.3 +28000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +28000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 3.5 +28000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.3 +28000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +28000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 8.6 +28000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 41.1 +28000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 37.3 +28000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 29.4 +28000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 30.0 +28000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +28000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +28000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +28000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +28000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +28000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +28000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +28000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +28000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +28000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1926.4 +28000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 12231.1 +28000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 676.5 +28000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 219.2 +28000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 21.3 +28000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 8.8 +28000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 1.8 +28000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.2 +28000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.7 +28000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +28000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +28000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +28000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +28000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +28000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.6 +28000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +28000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +28000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +28000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +28000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.6 +28000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 64.0 +28000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 117.3 +28000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 77.9 +28000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +28000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 76.4 +28000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 10.5 +28000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 32.4 +28000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.2 +28000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 3.2 +28000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 4.6 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 168.2 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 116.3 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.4 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 2.5 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 2.4 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 20.6 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 18.1 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 8.0 +28000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.3 +28000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.7 +28000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 17.7 +28000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.6 +28000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 33.6 +28000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 20.9 +28000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 45.8 +28000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 32.2 +28000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 4.1 +28000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 17.3 +28000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 86.8 +28000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 38.8 +28000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 23.6 +28000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.2 +28000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 9.3 +28000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 17.5 +28000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 21.0 +28000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 37.7 +28000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 53.8 +28000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 49.8 +28000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 50.4 +28000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 138.1 +28000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 128.0 +28000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 43.7 +28000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 13.0 +28000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +28000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 3.5 +28000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 40.0 +28000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 51.8 +28000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 24.0 +28000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +28000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 7.5 +28000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 8.4 +28000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.6 +28000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 4.3 +28000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 5.8 +28000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +28000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 5.6 +28000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 6.7 +28000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 12.2 +28000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 3.8 +28000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +28000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +28000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.4 +28000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 6.5 +28000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 5.4 +28000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.9 +28000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +28000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 5.1 +28000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.6 +28000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +28000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.6 +28000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.7 +28000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +28000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +28000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 14.0 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 33.1 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 17.7 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 279.7 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 85.8 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 6.1 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 3.6 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 2.8 +28000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.7 +28000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +28000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +28000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.5 +28000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.7 +28000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 38.7 +28000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 96.4 +28000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 160.4 +28000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 64.8 +28000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 20.1 +28000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 13.4 +28000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 6.8 +28000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.6 +28000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.4 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.6 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.4 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 23.8 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 24.2 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 39.3 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 39.9 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 58.7 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 51.0 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 29.4 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 6.9 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 3.8 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +28000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +28000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.5 +28000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.6 +28000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 5.3 +28000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 23.7 +28000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 49.0 +28000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 26.1 +28000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 20.3 +28000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 91.5 +28000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 341.9 +28000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 250.0 +28000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 66.2 +28000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.1 +28000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.4 +28000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +28000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.9 +28000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.2 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 3.7 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 21.1 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.8 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 6.8 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 9.7 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.2 +28000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 42.9 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 25.6 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 4.7 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 4.3 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 3.1 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 5.4 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 9.0 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 2.9 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.0 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.3 +28000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +28000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +28000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 3.9 +28000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +28000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.1 +28000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 20.1 +28000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 75.8 +28000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 77.5 +28000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 47.7 +28000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.1 +28000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.6 +28000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +28000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +28000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +28000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.9 +28000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 6.9 +28000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 70.4 +28000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 117.9 +28000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 13.5 +28000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.8 +28000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +28000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 17.7 +28000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 37.6 +28000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 21.3 +28000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 10.3 +28000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 3.3 +28000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 16.5 +28000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 4.0 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.5 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.6 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.4 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 27.1 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 6.6 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 10.3 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 3.9 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 10.1 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.8 +28000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.4 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 32.3 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 36.0 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 71.4 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 408.3 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 209.7 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 10.9 +28000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 14.3 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 16.4 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 18.8 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 26.6 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 114.2 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 288.8 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 275.7 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 202.3 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 15.3 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 7.4 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.5 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 9.1 +28000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.3 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 16.6 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 33.2 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 17.8 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 331.6 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1171.6 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 779.6 +28000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 4.2 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 3.4 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 98.9 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 223.6 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 193.6 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 98.0 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 38.7 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 8.0 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 13.9 +28000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +28000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.9 +28000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 146.3 +28000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 324.4 +28000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 634.7 +28000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 251.0 +28000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1378.3 +28000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 906.1 +28000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 22.8 +28000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +28000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 3.1 +28000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 5.3 +28000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 12.6 +28000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 4.1 +28000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.4 +28000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 3.3 +28000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +28000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 6.2 +28000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 5.9 +28000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 4.2 +28000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 4.9 +28000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.1 +28000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.5 +28000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 3.3 +28000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.2 +28000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +28000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +28000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.9 +28000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.6 +28000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.2 +28000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.5 +28000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.5 +28000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 17.2 +28000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 15.3 +28000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 37.0 +28000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 6.8 +28000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +28000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.4 +28000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.5 +28000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 9.9 +28000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 138.5 +28000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 172.0 +28000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 40.7 +28000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 289.1 +28000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 102.7 +28000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.3 +28000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +28000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +28000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.5 +28000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.9 +28000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 218.3 +28000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 219.9 +28000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 79.0 +28000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 12.8 +28000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 16.4 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.7 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 22.4 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 53.9 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 36.3 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 35.2 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 129.6 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 145.5 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 39.1 +28000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.7 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 25.6 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.8 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.1 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 5.4 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 17.2 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 6.2 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 48.4 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 150.8 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 214.5 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 66.9 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 6.8 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.1 +28000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 4.1 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 20.5 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 6.2 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 28.5 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 10.8 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.5 +28000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +28000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 62.9 +28000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 193.5 +28000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 181.4 +28000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 46.5 +28000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 341.0 +28000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1311.6 +28000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +28000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +28000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +28000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +28000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +28000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +28000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 27.6 +28000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 47.9 +28000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 77.0 +28000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 128.2 +28000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.9 +28000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.2 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +28000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +28000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +28000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +28000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.2 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 33.8 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 468.6 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 227.1 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 50.7 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 83.3 +28000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 17.8 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 8.2 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 205.7 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.6 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.1 +28000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.1 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.8 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 8.1 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 30.3 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 133.7 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 42.3 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 25.6 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 21.7 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.9 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.8 +28000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.8 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 6.3 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 11.5 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 5.6 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 5.9 +28000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.9 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.2 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.0 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +28000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +28000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +28000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 4.8 +28000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +28000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1082.4 +28000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2911.2 +28000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1663.5 +28000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2633.9 +28000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2321.4 +28000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 3868.1 +28000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3334.7 +28000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1725.5 +28000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +28000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 181.9 +28000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1668.3 +28000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1989.4 +28000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 102.8 +28000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.0 +28000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 43.4 +28000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 16.0 +28000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 13.6 +28000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +28000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.1 +28000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 21.7 +28000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 9.9 +28000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.2 +28000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 16.6 +28000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 101.6 +28000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 196.1 +28000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 213.1 +28000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 57.7 +28000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +28000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +28000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +28000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 122.8 +28000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 580.3 +28000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 114.6 +28000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.1 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 3.8 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 13.9 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.3 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.5 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 34.7 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 43.4 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 108.0 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 109.3 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 45.8 +28000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +28000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +28000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +28000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 8.7 +28000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 19.9 +28000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 7.9 +28000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 31.0 +28000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 146.3 +28000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 76.8 +28000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 21.8 +28000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.6 +28000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +28000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 409.8 +28000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 409.2 +28000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 315.4 +28000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 496.7 +28000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 822.1 +28000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 112.3 +28000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 414.3 +28000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 504.2 +28000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 172.1 +28000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 95.7 +28000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 49.7 +28000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +28000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +28000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +28000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +28000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +28000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +28000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 70.6 +28000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 169.6 +28000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 42.6 +28000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 33.8 +28000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 58.9 +28000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 16.7 +28000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 113.0 +28000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 125.7 +28000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 55.4 +28000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 13.9 +28000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 7.0 +28000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +28000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +28000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +28000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +28000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +28000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.4 +28000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 5.9 +28000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.8 +28000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.2 +28000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 45.1 +28000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 31.2 +28000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 199.9 +28000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 260.4 +28000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 29.9 +28000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 26.8 +28000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 7.7 +28000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +28000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +28000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +28000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +28000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +28000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +28000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 26.0 +28000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 144.3 +28000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 210.1 +28000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 130.3 +28000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 361.2 +28000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 262.4 +28000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 115.2 +28000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 6.0 +28000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +28000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +28000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 4.6 +28000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 38.8 +28000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 44.6 +28000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 55.6 +28000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 53.2 +28000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 6.7 +28000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 22.4 +28000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 6.3 +28000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 20.8 +28000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 16.8 +28000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 2.6 +28000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.2 +28000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.6 +28000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.4 +28000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.4 +28000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 4.0 +28000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 5.8 +28000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.8 +28000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 8.9 +28000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 10.3 +28000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 2.8 +28000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.4 +28000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +28000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +28000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.8 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 1.1 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.6 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 77.8 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 540.0 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 773.9 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 66.9 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 27.4 +28000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.7 +28000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 2.3 +28000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +28000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +28000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +28000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.1 +28000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 2.4 +28000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 4.3 +28000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 12.8 +28000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 4.3 +28000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 5.0 +28000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.5 +28000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +28000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 3.7 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.8 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 16.8 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.5 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 35.0 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 17.8 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 25.8 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 16.3 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 6.8 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 3.0 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 3.7 +28000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +28000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2924.9 +28000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 10910.4 +28000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 16432.7 +28000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 3653.5 +28000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 7195.8 +28000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 13899.9 +28000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 10692.6 +28000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 17882.2 +28000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 12147.5 +28000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 27175.1 +28000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 24394.1 +28000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 11.6 +28000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 11.2 +28000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 107.1 +28000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +28000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 113.8 +28000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 45.9 +28000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1016.6 +28000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 3760.1 +28000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 13930.2 +28000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 916.5 +28000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 12.8 +28000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 9.1 +28000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 5.4 +28000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 23.4 +28000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 205.4 +28000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +28000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 4925.2 +28000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 18280.9 +28000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 7341.6 +28000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 123.9 +28000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 150.7 +28000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 74.0 +28000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 163.6 +28000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 89.5 +28000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 16.5 +28000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 145.1 +28000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 122.2 +28000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1001.3 +28000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1646.6 +28000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1214.6 +28000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 47.9 +28000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 90.9 +28000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 7.4 +28000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 26.0 +28000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 15.9 +28000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 162.2 +28000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +28000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.0 +28000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.1 +28000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.6 +28000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 5.7 +28000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 9.0 +28000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 16.4 +28000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 15.3 +28000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 64.6 +28000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 23.8 +28000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 4.0 +28000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.0 +28000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +28000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.4 +28000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +28000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.0 +28000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 31.5 +28000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 129.4 +28000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.3 +28000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.9 +28000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.8 +28000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +28000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.8 +28000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/MT.POP b/NONROAD/NR08a/DATA/POP/MT.POP new file mode 100644 index 0000000..672b1e3 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/MT.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 30000 MT Montana 526,892.3 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +30000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 60.6 +30000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 35.8 +30000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 38.4 +30000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 3059.9 +30000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 3088.6 +30000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1386.3 +30000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 4883.8 +30000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 2007.2 +30000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 522.9 +30000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 6872.1 +30000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3384.8 +30000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3473.3 +30000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 30058.8 +30000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1126.6 +30000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1032.8 +30000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.3 +30000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.5 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 21.2 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 40.2 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 316.4 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 3.2 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 7.8 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +30000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 3.0 +30000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 3.2 +30000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +30000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 7.8 +30000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +30000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 3.0 +30000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.4 +30000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 9.5 +30000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.4 +30000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 3.4 +30000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.6 +30000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.6 +30000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.6 +30000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.6 +30000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 284.5 +30000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.6 +30000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 26.7 +30000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 135.6 +30000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 41.8 +30000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 7.4 +30000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 10.3 +30000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 1.8 +30000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 4.8 +30000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.6 +30000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.4 +30000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.3 +30000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.6 +30000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.4 +30000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.3 +30000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 25.6 +30000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 74.9 +30000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 63.5 +30000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 31.8 +30000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 22.4 +30000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 0.9 +30000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +30000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 0.9 +30000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +30000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 11.1 +30000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 17.1 +30000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 5.0 +30000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.1 +30000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +30000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +30000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +30000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +30000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +30000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.3 +30000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.3 +30000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.0 +30000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +30000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 19.5 +30000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 19.1 +30000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 6.8 +30000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 7.8 +30000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.3 +30000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.1 +30000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 0.9 +30000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.3 +30000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.1 +30000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 0.9 +30000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 8.0 +30000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 164.4 +30000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 6.6 +30000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.0 +30000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 2.6 +30000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 1.7 +30000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.7 +30000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.6 +30000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.0 +30000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.7 +30000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.6 +30000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.0 +30000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 21.0 +30000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 100.7 +30000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 51.8 +30000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 10.9 +30000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 4.8 +30000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.3 +30000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.7 +30000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.3 +30000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.7 +30000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 2.8 +30000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 159.7 +30000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 266.9 +30000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 9.1 +30000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 6.9 +30000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.3 +30000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.4 +30000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.1 +30000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +30000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.0 +30000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +30000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +30000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.0 +30000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +30000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 2.6 +30000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 3.6 +30000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 6.6 +30000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 1.7 +30000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +30000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +30000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +30000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +30000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +30000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.3 +30000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +30000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +30000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +30000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +30000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.3 +30000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +30000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +30000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +30000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.7 +30000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +30000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +30000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.7 +30000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +30000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.7 +30000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 13.8 +30000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +30000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.2 +30000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +30000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +30000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.2 +30000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +30000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.5 +30000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 10.9 +30000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.1 +30000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 1.7 +30000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 1.8 +30000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.1 +30000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 1.7 +30000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 1.8 +30000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 9.7 +30000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 31.9 +30000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 4.8 +30000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 5.9 +30000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.2 +30000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +30000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.1 +30000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.1 +30000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +30000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 3.0 +30000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.8 +30000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 19.1 +30000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 8.5 +30000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 17.6 +30000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.4 +30000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 8.5 +30000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 17.6 +30000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.4 +30000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 2.2 +30000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 8.0 +30000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 12.9 +30000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.9 +30000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 6.0 +30000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +30000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 42.6 +30000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 93.1 +30000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 244.9 +30000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 17.9 +30000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 113.8 +30000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.6 +30000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 59.0 +30000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 4.5 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 5.1 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 7.9 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 2.1 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 4.6 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 2.7 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 3.1 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 3.1 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +30000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 2.7 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 3.1 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 3.1 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +30000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +30000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +30000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.2 +30000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 87.1 +30000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 16.5 +30000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 8.4 +30000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 7.1 +30000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.6 +30000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.9 +30000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +30000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.3 +30000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +30000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.6 +30000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.9 +30000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +30000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.3 +30000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +30000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +30000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +30000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1.7 +30000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 1.1 +30000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +30000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 1.1 +30000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +30000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +30000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +30000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 3.4 +30000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.4 +30000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +30000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +30000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.6 +30000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.3 +30000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 1.0 +30000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +30000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +30000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.5 +30000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.2 +30000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 1.0 +30000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +30000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +30000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +30000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +30000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +30000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 2226.3 +30000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 110644.1 +30000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 36.5 +30000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 36.8 +30000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1829.3 +30000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.6 +30000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 206.4 +30000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1459.5 +30000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 10364.4 +30000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 12.3 +30000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 86.7 +30000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 615.7 +30000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 18004.6 +30000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +30000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 198.2 +30000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 697.5 +30000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 13457.9 +30000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 34081.8 +30000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +30000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +30000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 2091.5 +30000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 148.5 +30000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 777.2 +30000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +30000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +30000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +30000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 32.8 +30000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 8.8 +30000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.5 +30000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 1.0 +30000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1992.5 +30000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 22127.0 +30000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +30000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +30000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 634.7 +30000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 236.4 +30000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1253.8 +30000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +30000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +30000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 36.2 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 354.0 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 11.1 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 12.1 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.9 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 6.3 +30000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 6.2 +30000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 6087.0 +30000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 9321.2 +30000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 15725.3 +30000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 735.0 +30000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 285.6 +30000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 437.3 +30000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 737.7 +30000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 34.5 +30000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 24.3 +30000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 3517.1 +30000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 2727.5 +30000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 12.9 +30000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.2 +30000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 33.4 +30000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 25.9 +30000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +30000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 34.6 +30000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 118.1 +30000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 52.2 +30000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.8 +30000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 126.7 +30000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 248.0 +30000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 86.9 +30000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 2723.0 +30000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 30256.7 +30000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 9861.3 +30000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.8 +30000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 25.9 +30000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 287.5 +30000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 93.7 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 2.1 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 8.6 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 16.2 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.2 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 5.2 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +30000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.3 +30000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.2 +30000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 5.2 +30000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +30000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.3 +30000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 426.9 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 113.6 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 253.4 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 330.3 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 65.4 +30000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.6 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 88.7 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 384.1 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 979.0 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 646.9 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 9.5 +30000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 6.2 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 37.5 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 162.5 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 414.1 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 273.6 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 4.0 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 2.6 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.3 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.1 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +30000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +30000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 74.9 +30000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 64.7 +30000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 31.0 +30000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 3.2 +30000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 37.1 +30000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 4.2 +30000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +30000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.3 +30000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.6 +30000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 383.1 +30000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 122.6 +30000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 13.9 +30000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.5 +30000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 177.6 +30000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.6 +30000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 54.3 +30000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 650.4 +30000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 606.4 +30000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2361.4 +30000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 861.2 +30000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 295.8 +30000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 501.2 +30000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 122.1 +30000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 45.8 +30000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 48.0 +30000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 47.1 +30000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 20766.2 +30000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 51.9 +30000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 207.0 +30000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 117.3 +30000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 44.6 +30000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 216.8 +30000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 128.9 +30000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 114.2 +30000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 9.1 +30000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 14.7 +30000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.3 +30000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 86.0 +30000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 35.9 +30000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.3 +30000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 3.9 +30000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 22.0 +30000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 6.0 +30000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +30000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 13.8 +30000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 29.1 +30000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 13.5 +30000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 6.2 +30000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.3 +30000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 7.2 +30000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 37.9 +30000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 54.0 +30000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 5.3 +30000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 6.2 +30000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.3 +30000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 14.5 +30000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 360.5 +30000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2536.3 +30000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 6090.4 +30000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1347.2 +30000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1927.7 +30000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +30000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +30000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +30000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +30000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +30000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +30000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 178.5 +30000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.3 +30000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 83.3 +30000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 74.1 +30000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 27.8 +30000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.6 +30000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +30000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.7 +30000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 2.9 +30000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 57.0 +30000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 19.2 +30000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 6.6 +30000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 2.7 +30000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.4 +30000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 456.5 +30000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 824.8 +30000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.5 +30000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +30000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1182.0 +30000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 741.4 +30000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 71.8 +30000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 41.8 +30000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 36.4 +30000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.3 +30000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 16.9 +30000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.1 +30000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.6 +30000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 35.2 +30000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.3 +30000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 16.9 +30000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.1 +30000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.4 +30000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.2 +30000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +30000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +30000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +30000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +30000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +30000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 187.3 +30000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 174.9 +30000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 21.4 +30000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 23.2 +30000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 3.4 +30000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 18.8 +30000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 4.0 +30000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.9 +30000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 3.4 +30000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 18.3 +30000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 4.0 +30000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.0 +30000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.5 +30000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.9 +30000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.6 +30000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.3 +30000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +30000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.0 +30000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +30000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.4 +30000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +30000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 24.8 +30000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 96.1 +30000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 354.1 +30000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 118.1 +30000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 27.9 +30000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.5 +30000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.6 +30000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 27.9 +30000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.5 +30000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.6 +30000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.6 +30000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3127.6 +30000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1934.2 +30000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 573.8 +30000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 107.9 +30000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.8 +30000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +30000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +30000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.8 +30000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +30000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +30000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 4.6 +30000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 21.7 +30000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 19.7 +30000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 15.5 +30000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 15.9 +30000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +30000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +30000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +30000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +30000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +30000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +30000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +30000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +30000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +30000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 327.7 +30000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 2080.7 +30000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 115.1 +30000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 37.3 +30000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 3.6 +30000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.5 +30000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 3.1 +30000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.4 +30000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.3 +30000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +30000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +30000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +30000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +30000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +30000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.0 +30000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +30000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +30000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +30000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +30000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.0 +30000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 25.8 +30000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 47.2 +30000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 31.4 +30000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +30000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 30.8 +30000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 4.2 +30000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 13.0 +30000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.5 +30000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 1.3 +30000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.1 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.5 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 53.4 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 36.9 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.8 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.8 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 6.5 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 5.8 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 2.5 +30000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +30000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +30000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 4.6 +30000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.4 +30000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 8.7 +30000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 5.4 +30000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 11.8 +30000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 8.3 +30000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.1 +30000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 4.5 +30000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 22.4 +30000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 10.0 +30000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 6.1 +30000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.6 +30000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 2.4 +30000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 4.5 +30000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 5.4 +30000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 9.7 +30000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 13.9 +30000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 12.9 +30000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 13.0 +30000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 35.6 +30000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 33.0 +30000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 11.3 +30000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 3.3 +30000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +30000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 0.9 +30000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 10.3 +30000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 13.4 +30000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 6.2 +30000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +30000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 1.9 +30000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.2 +30000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +30000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.1 +30000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.5 +30000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +30000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.5 +30000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 1.7 +30000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 3.1 +30000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.0 +30000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +30000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 1.7 +30000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.4 +30000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.5 +30000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.3 +30000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.4 +30000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.4 +30000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +30000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +30000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 3.6 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 8.5 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 4.6 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 72.2 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 22.1 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 1.6 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 0.9 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.7 +30000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +30000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +30000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +30000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.1 +30000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +30000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 10.0 +30000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 24.9 +30000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 41.4 +30000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 16.7 +30000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 5.2 +30000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 3.5 +30000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 1.8 +30000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +30000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.4 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 6.1 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 6.3 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 10.1 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 10.3 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 15.2 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 13.2 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 7.6 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 1.8 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.0 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +30000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +30000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.1 +30000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.7 +30000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.4 +30000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 6.1 +30000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 12.7 +30000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 6.7 +30000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 5.2 +30000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 23.6 +30000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 88.2 +30000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 64.5 +30000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 17.1 +30000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.5 +30000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.6 +30000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +30000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.2 +30000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.6 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 0.9 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 5.4 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 1.7 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 2.5 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.3 +30000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 11.1 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 6.6 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.2 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.1 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 0.8 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.4 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.3 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.7 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.3 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.3 +30000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +30000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +30000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.0 +30000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +30000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.5 +30000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 5.2 +30000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 19.6 +30000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 20.0 +30000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 12.3 +30000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.5 +30000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +30000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +30000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +30000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +30000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.2 +30000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 1.8 +30000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 18.2 +30000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 30.4 +30000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 3.5 +30000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.2 +30000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.0 +30000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 4.6 +30000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 9.7 +30000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 5.5 +30000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 2.7 +30000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 0.8 +30000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 4.3 +30000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.0 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.6 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 7.0 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 1.7 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 2.7 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.0 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 2.6 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +30000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.4 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 8.3 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 9.3 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 18.4 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 105.4 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 54.1 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 2.8 +30000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 3.7 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 4.2 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 4.8 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 6.9 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 29.5 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 74.5 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 71.2 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 52.2 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 3.9 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 1.9 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.4 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.4 +30000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 4.3 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 8.6 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 4.6 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 85.6 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 302.4 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 201.2 +30000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.1 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 0.9 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 25.5 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 57.7 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 50.0 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 25.3 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 10.0 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.1 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 3.6 +30000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +30000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.2 +30000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 37.8 +30000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 83.7 +30000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 163.8 +30000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 64.8 +30000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 355.7 +30000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 233.9 +30000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 5.9 +30000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +30000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.8 +30000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.4 +30000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 3.3 +30000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.1 +30000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +30000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 0.8 +30000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +30000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 1.6 +30000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.5 +30000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.1 +30000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.3 +30000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +30000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.1 +30000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 0.9 +30000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.3 +30000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +30000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +30000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.2 +30000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.7 +30000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +30000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.6 +30000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.6 +30000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 4.4 +30000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 4.0 +30000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 9.6 +30000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 1.7 +30000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +30000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +30000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.2 +30000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 1.1 +30000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 15.5 +30000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 19.3 +30000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 4.6 +30000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 32.4 +30000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 11.5 +30000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.1 +30000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +30000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +30000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +30000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.7 +30000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 24.5 +30000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 24.7 +30000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 8.9 +30000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 1.4 +30000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1.8 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.4 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 2.5 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 6.0 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 4.1 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 3.9 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 14.5 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 16.3 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 4.4 +30000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.1 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 2.9 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.5 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.4 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.6 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1.9 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.7 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 5.4 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 16.9 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 24.1 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 7.5 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.8 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.1 +30000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.5 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 2.3 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.7 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 3.2 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 1.2 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.2 +30000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +30000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 20.0 +30000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 61.4 +30000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 57.6 +30000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 14.8 +30000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 108.3 +30000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 416.5 +30000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +30000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 3.1 +30000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 5.4 +30000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 8.6 +30000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 14.4 +30000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.4 +30000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.3 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.1 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +30000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +30000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +30000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.5 +30000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.6 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.3 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 9.8 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 135.9 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 65.9 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 14.7 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 24.2 +30000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 5.2 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 2.4 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 59.7 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 1.0 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.6 +30000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.9 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.2 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 2.4 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 8.8 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 38.8 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 12.3 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 7.4 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 6.3 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1.4 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.2 +30000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1.4 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1.8 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 3.3 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1.6 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1.7 +30000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1.4 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.3 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.3 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.1 +30000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +30000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.5 +30000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 10.1 +30000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +30000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 2286.0 +30000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 6148.4 +30000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 3513.2 +30000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 5562.8 +30000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 4902.8 +30000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 8169.2 +30000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 7042.8 +30000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 3644.2 +30000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.4 +30000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 384.1 +30000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 3523.4 +30000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 4201.5 +30000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 217.0 +30000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 4.2 +30000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 91.6 +30000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 33.8 +30000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 28.7 +30000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.4 +30000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 8.7 +30000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 45.8 +30000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 20.8 +30000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 13.0 +30000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 35.0 +30000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 214.6 +30000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 414.1 +30000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 450.0 +30000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 121.9 +30000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.9 +30000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +30000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.4 +30000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 259.3 +30000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1225.7 +30000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 242.1 +30000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 10.8 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.7 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 8.1 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 29.3 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 15.5 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 9.4 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 73.3 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 91.6 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 228.2 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 230.8 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 96.7 +30000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +30000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +30000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +30000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 18.4 +30000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 42.1 +30000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 16.7 +30000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 65.5 +30000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 309.1 +30000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 162.2 +30000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 46.1 +30000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 3.3 +30000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +30000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 216.3 +30000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 216.0 +30000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 166.5 +30000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 262.1 +30000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 433.9 +30000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 59.3 +30000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 218.7 +30000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 266.1 +30000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 90.8 +30000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 50.5 +30000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 26.2 +30000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +30000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +30000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +30000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +30000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +30000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +30000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 37.2 +30000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 89.5 +30000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 22.5 +30000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 17.9 +30000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 31.1 +30000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 8.8 +30000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 59.6 +30000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 66.4 +30000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 29.3 +30000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 7.3 +30000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 3.7 +30000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +30000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +30000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +30000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +30000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +30000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.3 +30000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.1 +30000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.4 +30000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.6 +30000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 23.8 +30000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 16.5 +30000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 105.5 +30000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 137.5 +30000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 15.8 +30000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 14.1 +30000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 4.0 +30000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +30000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +30000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +30000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +30000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +30000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +30000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 13.7 +30000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 76.2 +30000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 110.9 +30000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 68.8 +30000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 190.7 +30000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 138.5 +30000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 60.8 +30000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.2 +30000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +30000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +30000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.4 +30000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 20.5 +30000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 23.5 +30000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 29.4 +30000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 28.1 +30000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.5 +30000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 11.8 +30000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.3 +30000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 11.0 +30000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 8.9 +30000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.4 +30000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.6 +30000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.3 +30000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.7 +30000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +30000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.1 +30000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.1 +30000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.0 +30000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 4.7 +30000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 5.4 +30000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.5 +30000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +30000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +30000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +30000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.2 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.3 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 13.2 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 91.9 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 131.6 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 11.4 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 4.7 +30000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +30000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.9 +30000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +30000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +30000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +30000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +30000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 4.1 +30000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 7.5 +30000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 22.0 +30000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 7.4 +30000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 8.6 +30000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.9 +30000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +30000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 1.5 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.7 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 6.8 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.0 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 14.1 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 7.2 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 10.4 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 6.6 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 2.7 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 1.2 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 1.5 +30000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +30000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 474.1 +30000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1768.6 +30000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 2663.8 +30000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 592.3 +30000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1166.5 +30000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2253.2 +30000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1733.3 +30000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 2898.8 +30000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 1969.2 +30000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 4405.2 +30000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 3954.4 +30000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 1.9 +30000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 1.8 +30000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 17.4 +30000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +30000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 18.4 +30000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 7.4 +30000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 164.8 +30000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 609.5 +30000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2258.2 +30000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 148.6 +30000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.1 +30000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.5 +30000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.9 +30000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 3.8 +30000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 33.3 +30000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +30000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 798.4 +30000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 2963.4 +30000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1190.1 +30000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 20.1 +30000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 24.4 +30000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 12.0 +30000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 26.5 +30000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 14.5 +30000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 2.7 +30000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 23.5 +30000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 19.8 +30000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 162.3 +30000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 266.9 +30000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 196.9 +30000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 7.8 +30000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 14.7 +30000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.2 +30000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 4.2 +30000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 2.6 +30000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 26.3 +30000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.6 +30000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 3.4 +30000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 3.7 +30000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 5.2 +30000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 19.3 +30000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 30.3 +30000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 55.4 +30000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 51.5 +30000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 217.6 +30000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 80.2 +30000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 13.6 +30000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 3.4 +30000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.8 +30000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 1.2 +30000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.4 +30000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 3.3 +30000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 106.0 +30000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 435.8 +30000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 7.8 +30000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 19.9 +30000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 6.2 +30000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +30000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 6.2 +30000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NC.POP b/NONROAD/NR08a/DATA/POP/NC.POP new file mode 100644 index 0000000..51a1180 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NC.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 37000 NC North Carolina 3,681,785.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +37000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +37000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +37000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 27286.3 +37000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 13439.5 +37000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 13790.9 +37000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 119351.2 +37000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 6759.4 +37000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 9426.9 +37000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.8 +37000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.6 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 4.8 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 193.6 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 366.6 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2888.1 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 29.5 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 71.3 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +37000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.0 +37000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 29.5 +37000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +37000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 71.3 +37000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +37000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.0 +37000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 26.9 +37000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 187.5 +37000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 8.7 +37000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 67.9 +37000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 11.5 +37000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 12.7 +37000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 11.5 +37000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 12.7 +37000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 5609.1 +37000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 12.3 +37000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 527.1 +37000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2674.4 +37000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 823.3 +37000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 145.9 +37000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 202.7 +37000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 36.2 +37000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 94.2 +37000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 11.1 +37000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 7.6 +37000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 5.2 +37000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 11.1 +37000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 7.6 +37000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 5.2 +37000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 504.8 +37000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1476.6 +37000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1252.2 +37000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 627.2 +37000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 441.8 +37000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 17.9 +37000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.6 +37000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 17.9 +37000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.6 +37000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 219.2 +37000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 337.7 +37000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 97.6 +37000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 41.2 +37000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.1 +37000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +37000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.1 +37000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.5 +37000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.4 +37000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 24.8 +37000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 24.7 +37000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.9 +37000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 1.0 +37000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 383.9 +37000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 375.8 +37000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 134.3 +37000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 153.1 +37000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 25.5 +37000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 21.5 +37000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 17.0 +37000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 25.5 +37000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 21.5 +37000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 17.0 +37000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 158.3 +37000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 3240.8 +37000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 131.1 +37000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 40.1 +37000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 50.9 +37000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 33.4 +37000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 13.5 +37000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.2 +37000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 20.3 +37000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 13.5 +37000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 12.2 +37000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 20.3 +37000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 414.4 +37000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1986.0 +37000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 1021.1 +37000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 214.1 +37000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 94.1 +37000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 25.9 +37000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.1 +37000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 25.9 +37000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 14.1 +37000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 56.2 +37000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 3149.6 +37000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 5261.9 +37000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 178.5 +37000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 136.8 +37000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 5.3 +37000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 7.5 +37000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.7 +37000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +37000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 18.8 +37000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 3.0 +37000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +37000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 18.8 +37000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 3.0 +37000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 50.7 +37000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 71.2 +37000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 129.9 +37000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 33.3 +37000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.1 +37000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.1 +37000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.2 +37000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.0 +37000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +37000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 26.6 +37000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +37000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.1 +37000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.0 +37000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +37000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 26.6 +37000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +37000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.1 +37000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.1 +37000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 53.1 +37000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.7 +37000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.1 +37000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 53.1 +37000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.7 +37000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 13.1 +37000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 271.7 +37000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.0 +37000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.8 +37000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +37000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.0 +37000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.8 +37000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +37000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 10.7 +37000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 215.9 +37000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 61.2 +37000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 33.8 +37000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 36.2 +37000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 61.2 +37000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 33.8 +37000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 36.2 +37000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 190.4 +37000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 628.2 +37000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 94.6 +37000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 115.5 +37000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 4.5 +37000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.7 +37000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 22.5 +37000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 21.5 +37000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 1.0 +37000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 85.3 +37000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 23.7 +37000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 546.9 +37000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 241.9 +37000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 503.8 +37000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 11.2 +37000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 241.9 +37000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 503.8 +37000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 11.2 +37000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 64.1 +37000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 228.9 +37000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 368.8 +37000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 26.9 +37000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 171.4 +37000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.8 +37000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1218.1 +37000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 2662.6 +37000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 7007.8 +37000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 511.8 +37000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 3256.9 +37000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 15.9 +37000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1687.4 +37000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 128.5 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 147.2 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 225.2 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 60.9 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 130.4 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 78.4 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 88.6 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 89.8 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.9 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.8 +37000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 78.4 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 88.6 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 89.8 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.9 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.8 +37000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +37000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.8 +37000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 6.1 +37000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 2493.5 +37000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 471.1 +37000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 239.9 +37000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 202.8 +37000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 18.1 +37000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 25.2 +37000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.1 +37000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 9.6 +37000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +37000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 18.1 +37000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 25.2 +37000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 3.1 +37000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 9.6 +37000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +37000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.9 +37000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.3 +37000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 49.5 +37000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 30.1 +37000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.1 +37000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 30.1 +37000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.1 +37000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.6 +37000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.0 +37000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 30.8 +37000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 3.5 +37000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.2 +37000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +37000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 16.0 +37000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 7.3 +37000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 28.8 +37000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +37000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +37000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 15.1 +37000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 5.7 +37000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 28.4 +37000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +37000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.9 +37000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.6 +37000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.4 +37000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +37000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 19789.5 +37000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 983509.5 +37000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 324.3 +37000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 1030.3 +37000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 51202.8 +37000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 16.9 +37000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1835.1 +37000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 12973.2 +37000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 92128.6 +37000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 343.3 +37000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2426.8 +37000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 17233.6 +37000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 160042.2 +37000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +37000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 5548.9 +37000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 19524.1 +37000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 119626.9 +37000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 302951.3 +37000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +37000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +37000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 58542.6 +37000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 4157.4 +37000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 6908.7 +37000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +37000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +37000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +37000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 918.3 +37000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 245.6 +37000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 13.0 +37000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 28.2 +37000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 17711.0 +37000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 196685.3 +37000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +37000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +37000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 17765.0 +37000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 6618.3 +37000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 11145.2 +37000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +37000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +37000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 1013.1 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 9907.7 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 312.1 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 339.5 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 25.8 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 176.3 +37000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 174.9 +37000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 5074.1 +37000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 7770.1 +37000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 13108.5 +37000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 612.7 +37000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 531.0 +37000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 813.1 +37000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 1371.8 +37000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 64.1 +37000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 216.1 +37000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 31263.3 +37000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 24244.5 +37000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 114.7 +37000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 6.5 +37000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 935.6 +37000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 725.5 +37000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.4 +37000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 968.2 +37000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 3307.0 +37000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1462.2 +37000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 21.9 +37000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3547.5 +37000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 6942.8 +37000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 772.0 +37000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 24205.0 +37000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 268949.8 +37000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 87656.9 +37000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 23.1 +37000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 724.4 +37000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 8048.4 +37000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2623.2 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.2 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 58.5 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 240.9 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 454.0 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 34.3 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 146.2 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +37000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 35.0 +37000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 34.3 +37000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 146.2 +37000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +37000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 35.0 +37000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 4.1 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 11949.8 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 3178.6 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 7093.5 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 9245.9 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1832.0 +37000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 15.8 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 788.5 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 3414.7 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 8702.5 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 5750.3 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 84.2 +37000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 55.2 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 1050.4 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4548.4 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 11591.9 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 7659.5 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 112.2 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 73.5 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 7.2 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.5 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.9 +37000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.9 +37000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 36.9 +37000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 31.9 +37000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 15.3 +37000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.6 +37000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 18.3 +37000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.1 +37000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +37000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +37000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +37000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 188.8 +37000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 60.4 +37000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.9 +37000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.3 +37000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 87.5 +37000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.3 +37000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 26.8 +37000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 320.5 +37000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 298.8 +37000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1163.7 +37000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 424.4 +37000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 145.8 +37000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 247.0 +37000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 60.2 +37000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 22.6 +37000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 23.6 +37000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 23.2 +37000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 10233.8 +37000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 25.6 +37000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 102.0 +37000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 57.8 +37000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 22.0 +37000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 106.8 +37000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 63.5 +37000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 56.3 +37000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.5 +37000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 7.2 +37000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.2 +37000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 42.4 +37000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 17.7 +37000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.1 +37000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.9 +37000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 10.8 +37000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.0 +37000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +37000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.8 +37000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 14.3 +37000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.6 +37000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.0 +37000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +37000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.5 +37000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 18.7 +37000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 26.6 +37000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.6 +37000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.0 +37000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +37000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 111.9 +37000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 2778.7 +37000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 19548.5 +37000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 46941.9 +37000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 10383.3 +37000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 14857.6 +37000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +37000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +37000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +37000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +37000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +37000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +37000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1375.9 +37000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 10.3 +37000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 641.8 +37000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 570.8 +37000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 214.1 +37000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 4.9 +37000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.8 +37000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 13.0 +37000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 22.0 +37000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 439.7 +37000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 148.0 +37000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 51.1 +37000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 20.9 +37000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 10.6 +37000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 3518.6 +37000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 6357.2 +37000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 3.9 +37000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.8 +37000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 9110.5 +37000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 5714.3 +37000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 553.5 +37000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 322.5 +37000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 280.4 +37000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.6 +37000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 130.5 +37000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 8.7 +37000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 20.1 +37000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 271.2 +37000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.6 +37000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 130.4 +37000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 8.7 +37000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 18.8 +37000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 9.2 +37000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +37000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.3 +37000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.5 +37000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.5 +37000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.6 +37000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1443.9 +37000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1347.8 +37000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 165.3 +37000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 179.2 +37000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 26.2 +37000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 145.1 +37000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 30.9 +37000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 14.5 +37000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 26.2 +37000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 140.9 +37000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 30.9 +37000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 7.7 +37000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 4.2 +37000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 6.7 +37000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 4.3 +37000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 2.5 +37000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.7 +37000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 7.5 +37000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.2 +37000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 3.2 +37000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.0 +37000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 190.9 +37000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 740.3 +37000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 2728.9 +37000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 910.4 +37000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 214.9 +37000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 19.1 +37000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 4.3 +37000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 214.9 +37000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 19.1 +37000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 4.3 +37000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 4.5 +37000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 24106.0 +37000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 14908.3 +37000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 4422.7 +37000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 831.7 +37000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 14.1 +37000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.1 +37000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +37000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 14.1 +37000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.1 +37000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +37000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 35.2 +37000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 167.3 +37000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 151.6 +37000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 119.4 +37000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 122.2 +37000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.8 +37000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.8 +37000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.8 +37000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +37000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.8 +37000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.8 +37000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.8 +37000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +37000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +37000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1595.6 +37000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 10130.8 +37000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 560.3 +37000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 181.6 +37000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 17.6 +37000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 7.2 +37000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 27.0 +37000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 3.1 +37000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 10.9 +37000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.6 +37000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +37000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +37000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +37000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.9 +37000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.6 +37000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +37000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +37000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.7 +37000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.9 +37000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 8.6 +37000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 2.4 +37000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 4.4 +37000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2.9 +37000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +37000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 2.9 +37000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.4 +37000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.2 +37000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +37000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +37000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 13.4 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 487.4 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 337.0 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.1 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 7.2 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 7.1 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 59.7 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 52.5 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 23.2 +37000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.9 +37000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 3.7 +37000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 90.1 +37000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 8.4 +37000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 171.1 +37000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 106.5 +37000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 233.3 +37000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 163.8 +37000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 21.1 +37000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 88.2 +37000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 441.7 +37000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 197.3 +37000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 120.0 +37000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 11.1 +37000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 47.6 +37000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 89.3 +37000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 106.9 +37000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 191.8 +37000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 273.6 +37000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 253.5 +37000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 256.7 +37000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 702.6 +37000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 651.5 +37000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 222.4 +37000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 66.0 +37000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +37000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 17.7 +37000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 203.7 +37000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 263.8 +37000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 122.4 +37000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.2 +37000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 38.1 +37000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 42.7 +37000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 3.3 +37000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 22.0 +37000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 29.3 +37000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +37000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 28.7 +37000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 33.9 +37000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 61.8 +37000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 19.2 +37000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.9 +37000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.7 +37000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 2.2 +37000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 32.9 +37000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 27.6 +37000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 9.5 +37000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.5 +37000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 26.1 +37000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 8.0 +37000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.4 +37000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 8.0 +37000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.5 +37000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.7 +37000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +37000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.6 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 71.5 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 168.3 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 89.9 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1423.4 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 436.7 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.8 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 31.2 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 18.1 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 14.4 +37000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.5 +37000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +37000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +37000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.6 +37000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.6 +37000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 196.8 +37000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 490.7 +37000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 816.3 +37000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 329.7 +37000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 102.4 +37000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 68.4 +37000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 34.8 +37000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 3.0 +37000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.4 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 2.0 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 3.2 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 7.1 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 121.3 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 123.4 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 199.9 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 203.3 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 298.8 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 259.8 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 149.7 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 35.0 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 19.2 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.4 +37000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.7 +37000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.4 +37000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 13.1 +37000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 27.0 +37000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 120.4 +37000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 249.5 +37000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 133.0 +37000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 103.2 +37000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 465.7 +37000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1740.0 +37000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1272.1 +37000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 337.0 +37000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 10.7 +37000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 12.4 +37000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +37000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 4.7 +37000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 11.0 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 18.7 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 107.4 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 3.9 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 34.4 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 49.6 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 6.1 +37000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 218.3 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 130.1 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 24.2 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 22.0 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 16.0 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 27.4 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 45.9 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 14.5 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 5.2 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 6.5 +37000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.3 +37000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +37000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 19.9 +37000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.3 +37000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 10.6 +37000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 102.4 +37000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 385.6 +37000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 394.4 +37000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 242.9 +37000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 10.5 +37000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 3.0 +37000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +37000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +37000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.6 +37000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 4.5 +37000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 35.1 +37000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 358.2 +37000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 599.9 +37000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 68.6 +37000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 4.2 +37000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.9 +37000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 90.0 +37000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 191.1 +37000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 108.2 +37000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 52.5 +37000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 16.6 +37000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 84.1 +37000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 20.5 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.3 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 3.2 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 12.1 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 138.1 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 33.4 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 52.3 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 19.7 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 51.4 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.9 +37000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.3 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.6 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 7.0 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 164.6 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 183.2 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 363.1 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 2077.8 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 1067.4 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 55.3 +37000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 72.8 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.6 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 83.2 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 95.6 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 135.2 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 581.2 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1469.6 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1403.0 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 1029.3 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 77.8 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 37.9 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 7.9 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 46.4 +37000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.7 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 84.6 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 169.1 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 90.3 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1687.7 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 5962.7 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3967.4 +37000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 21.6 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 17.5 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 503.5 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 1138.0 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 985.5 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 499.0 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 196.8 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 40.7 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 70.8 +37000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +37000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 4.5 +37000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 744.5 +37000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1650.8 +37000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 3230.3 +37000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1277.4 +37000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 7014.3 +37000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 4611.1 +37000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 116.1 +37000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +37000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 15.7 +37000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 26.8 +37000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 64.1 +37000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 21.0 +37000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 2.0 +37000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 16.6 +37000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.4 +37000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 31.6 +37000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 30.2 +37000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 21.6 +37000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 25.0 +37000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 5.5 +37000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.6 +37000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 17.0 +37000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 6.2 +37000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 1.0 +37000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.4 +37000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 4.6 +37000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 13.1 +37000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.2 +37000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 12.8 +37000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 12.6 +37000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 87.4 +37000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 78.0 +37000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 188.5 +37000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 34.4 +37000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +37000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.3 +37000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 4.8 +37000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 31.7 +37000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 444.3 +37000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 551.9 +37000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 130.5 +37000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 927.6 +37000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 329.7 +37000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 4.0 +37000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.6 +37000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +37000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.6 +37000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 18.9 +37000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 700.3 +37000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 705.5 +37000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 253.4 +37000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 41.2 +37000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 52.6 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 11.8 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.5 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 71.9 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 172.8 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 116.6 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 112.9 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 415.8 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 466.9 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 125.5 +37000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.1 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 82.1 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 15.5 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 10.0 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 17.4 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 55.1 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 20.1 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 155.4 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 483.9 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 688.3 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 214.8 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 22.0 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 3.6 +37000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 13.1 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 65.9 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 19.9 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 91.4 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 34.8 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 4.8 +37000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +37000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 182.4 +37000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 560.8 +37000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 525.8 +37000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 134.8 +37000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 988.4 +37000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 3801.6 +37000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +37000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +37000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +37000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.4 +37000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +37000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +37000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 88.6 +37000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 153.8 +37000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 247.0 +37000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 411.3 +37000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 12.6 +37000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 9.6 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.3 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +37000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +37000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +37000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.9 +37000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.2 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 9.8 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 274.1 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3804.1 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1843.8 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 411.9 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 676.4 +37000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 144.6 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.1 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 66.9 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1670.2 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 29.0 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 16.7 +37000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 25.4 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.4 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 6.2 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 65.9 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 245.7 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1085.6 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 343.7 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 207.5 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 176.0 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 39.9 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 6.5 +37000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.8 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 39.1 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 50.8 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 93.6 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 45.5 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.8 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 47.9 +37000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 40.0 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.1 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 9.7 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 8.1 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.2 +37000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.4 +37000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +37000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.0 +37000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +37000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1126.6 +37000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3030.0 +37000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1731.3 +37000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2741.4 +37000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2416.1 +37000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4025.9 +37000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3470.8 +37000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1795.9 +37000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +37000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 189.3 +37000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1736.4 +37000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2070.5 +37000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 107.0 +37000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.1 +37000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 45.1 +37000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 16.6 +37000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 14.1 +37000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +37000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.3 +37000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 22.6 +37000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 10.3 +37000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.4 +37000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 17.3 +37000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 105.7 +37000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 204.1 +37000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 221.8 +37000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 60.1 +37000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +37000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +37000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +37000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 127.8 +37000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 604.0 +37000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 119.3 +37000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.3 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.0 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 14.4 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.6 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.6 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 36.1 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 45.1 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 112.5 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 113.8 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 47.7 +37000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +37000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +37000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +37000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 9.1 +37000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 20.7 +37000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 8.2 +37000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 32.3 +37000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 152.3 +37000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 79.9 +37000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 22.7 +37000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.6 +37000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +37000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1667.3 +37000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1664.8 +37000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1283.2 +37000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2020.4 +37000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 3344.2 +37000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 456.8 +37000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1685.3 +37000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2051.1 +37000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 700.1 +37000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 389.2 +37000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 202.2 +37000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +37000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +37000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +37000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +37000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +37000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.7 +37000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 287.1 +37000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 690.1 +37000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 173.1 +37000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 137.7 +37000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 239.5 +37000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 67.9 +37000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 459.5 +37000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 511.4 +37000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 225.5 +37000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 56.5 +37000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 28.6 +37000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +37000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +37000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +37000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +37000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +37000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 9.8 +37000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 23.9 +37000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 3.2 +37000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 5.0 +37000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 183.3 +37000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 126.9 +37000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 813.4 +37000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1059.4 +37000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 121.5 +37000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 109.0 +37000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 31.2 +37000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +37000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +37000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +37000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +37000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +37000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +37000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 106.0 +37000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 587.2 +37000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 854.8 +37000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 530.1 +37000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1469.5 +37000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1067.4 +37000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 468.6 +37000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 24.4 +37000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.5 +37000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +37000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 18.5 +37000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 157.9 +37000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 181.3 +37000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 226.4 +37000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 216.4 +37000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 27.1 +37000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 91.0 +37000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 25.5 +37000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 84.5 +37000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 68.4 +37000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 10.5 +37000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 4.9 +37000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 2.5 +37000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 5.6 +37000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.7 +37000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 16.3 +37000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 23.6 +37000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 7.4 +37000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 36.2 +37000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 41.8 +37000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 11.3 +37000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.5 +37000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.3 +37000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +37000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.7 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.9 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.3 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 64.5 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 447.2 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 641.0 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 55.4 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 22.7 +37000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.6 +37000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 33.8 +37000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +37000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +37000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.2 +37000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.7 +37000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 35.4 +37000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 64.4 +37000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 190.2 +37000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 63.9 +37000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 74.6 +37000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 7.9 +37000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.5 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +37000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.6 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.3 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.7 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.0 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.6 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.3 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +37000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +37000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 5458.1 +37000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 20359.6 +37000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 30664.7 +37000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 6817.8 +37000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 13427.8 +37000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 25938.2 +37000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 19953.1 +37000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 33369.5 +37000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 22668.1 +37000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 50710.7 +37000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 45521.3 +37000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 21.7 +37000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 21.0 +37000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 199.9 +37000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.4 +37000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 212.3 +37000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 85.6 +37000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1897.1 +37000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 7016.7 +37000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 25994.8 +37000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1710.2 +37000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 23.9 +37000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 17.1 +37000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 10.1 +37000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 43.6 +37000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 383.3 +37000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +37000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 9190.8 +37000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 34113.5 +37000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 13700.0 +37000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 231.1 +37000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 281.3 +37000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 138.0 +37000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 305.4 +37000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 167.1 +37000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 30.9 +37000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 270.7 +37000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 228.0 +37000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1868.6 +37000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 3072.6 +37000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 2266.5 +37000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 89.4 +37000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 169.6 +37000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 13.8 +37000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 48.5 +37000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 29.7 +37000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 302.6 +37000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +37000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.9 +37000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.9 +37000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.3 +37000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 4.9 +37000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.7 +37000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 14.1 +37000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 13.1 +37000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 55.3 +37000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 20.4 +37000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.4 +37000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.9 +37000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +37000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +37000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +37000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.8 +37000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 26.9 +37000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 110.7 +37000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.0 +37000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.1 +37000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +37000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +37000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +37000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/ND.POP b/NONROAD/NR08a/DATA/POP/ND.POP new file mode 100644 index 0000000..ca0dc76 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/ND.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 38000 ND North Dakota 509,430.9 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +38000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 68.4 +38000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 40.3 +38000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 43.3 +38000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 3451.9 +38000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 3484.3 +38000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1563.9 +38000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 5509.6 +38000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 2264.4 +38000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 589.9 +38000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3057.3 +38000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 1505.8 +38000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 1545.2 +38000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 13372.7 +38000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1037.6 +38000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 718.8 +38000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.2 +38000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.4 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 14.8 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 28.0 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 220.2 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.3 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.4 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +38000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.1 +38000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.3 +38000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +38000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.4 +38000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +38000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.1 +38000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.6 +38000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 10.9 +38000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.5 +38000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 3.9 +38000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.7 +38000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.7 +38000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.7 +38000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.7 +38000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 325.1 +38000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.7 +38000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 30.5 +38000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 155.0 +38000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 47.7 +38000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 8.5 +38000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 11.7 +38000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 2.1 +38000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 5.5 +38000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.6 +38000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.4 +38000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.3 +38000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.6 +38000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.4 +38000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.3 +38000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 29.3 +38000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 85.6 +38000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 72.6 +38000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 36.3 +38000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 25.6 +38000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.0 +38000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +38000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.0 +38000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +38000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 12.7 +38000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 19.6 +38000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 5.7 +38000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.4 +38000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +38000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +38000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +38000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +38000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +38000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.4 +38000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.4 +38000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +38000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +38000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 22.2 +38000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 21.8 +38000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 7.8 +38000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 8.9 +38000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.5 +38000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.2 +38000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.0 +38000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.5 +38000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.2 +38000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.0 +38000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 9.2 +38000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 187.8 +38000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 7.6 +38000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.3 +38000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 2.9 +38000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 1.9 +38000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.8 +38000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +38000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.2 +38000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.8 +38000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +38000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.2 +38000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 24.0 +38000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 115.1 +38000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 59.2 +38000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 12.4 +38000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 5.5 +38000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.5 +38000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +38000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.5 +38000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +38000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 3.3 +38000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 182.5 +38000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 305.0 +38000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 10.3 +38000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 7.9 +38000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.3 +38000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.4 +38000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +38000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +38000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.1 +38000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +38000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +38000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.1 +38000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +38000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 2.9 +38000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 4.1 +38000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 7.5 +38000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 1.9 +38000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +38000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +38000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +38000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +38000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +38000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.5 +38000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +38000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +38000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +38000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +38000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.5 +38000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +38000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +38000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +38000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.1 +38000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +38000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +38000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.1 +38000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +38000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.8 +38000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 15.7 +38000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +38000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +38000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +38000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +38000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +38000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +38000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.6 +38000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 12.5 +38000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.5 +38000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 2.0 +38000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 2.1 +38000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.5 +38000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 2.0 +38000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 2.1 +38000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 11.0 +38000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 36.4 +38000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 5.5 +38000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 6.7 +38000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.3 +38000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +38000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.3 +38000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.2 +38000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +38000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 3.2 +38000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.9 +38000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 20.7 +38000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 9.2 +38000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 19.1 +38000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.4 +38000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 9.2 +38000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 19.1 +38000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.4 +38000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 2.4 +38000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 8.7 +38000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 14.0 +38000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 1.0 +38000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 6.5 +38000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +38000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 46.2 +38000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 100.9 +38000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 265.6 +38000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 19.4 +38000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 123.4 +38000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.6 +38000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 63.9 +38000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 4.9 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 5.6 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 8.5 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 2.3 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 4.9 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 3.0 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 3.4 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 3.4 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +38000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 3.0 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 3.4 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 3.4 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +38000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +38000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +38000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.2 +38000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 94.5 +38000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 17.9 +38000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 9.1 +38000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 7.7 +38000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.7 +38000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.0 +38000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +38000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.4 +38000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +38000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.7 +38000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.0 +38000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +38000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.4 +38000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +38000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +38000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +38000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1.9 +38000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 1.1 +38000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +38000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 1.1 +38000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +38000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +38000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +38000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 2.3 +38000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.3 +38000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +38000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +38000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.6 +38000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.3 +38000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 1.1 +38000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +38000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +38000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.6 +38000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.2 +38000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 1.1 +38000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +38000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +38000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +38000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +38000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +38000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1570.2 +38000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 78034.7 +38000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 25.7 +38000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 19.8 +38000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 985.8 +38000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.3 +38000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 145.6 +38000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1029.3 +38000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 7309.8 +38000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 6.6 +38000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 46.7 +38000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 331.8 +38000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 12698.2 +38000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +38000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 106.8 +38000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 375.9 +38000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 9491.6 +38000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 24037.1 +38000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +38000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +38000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1127.1 +38000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 80.0 +38000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 548.2 +38000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +38000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +38000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +38000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 17.7 +38000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 4.7 +38000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.3 +38000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.5 +38000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1405.2 +38000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 15605.6 +38000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +38000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +38000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 342.0 +38000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 127.4 +38000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 884.3 +38000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +38000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +38000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 19.5 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 190.8 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 6.0 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 6.5 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.5 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 3.4 +38000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 3.4 +38000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 4293.0 +38000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 6574.0 +38000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 11090.7 +38000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 518.4 +38000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 153.9 +38000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 235.6 +38000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 397.5 +38000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 18.6 +38000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 17.1 +38000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2480.5 +38000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 1923.6 +38000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 9.1 +38000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.1 +38000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 18.0 +38000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 14.0 +38000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +38000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 18.6 +38000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 63.7 +38000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 28.2 +38000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.4 +38000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 68.3 +38000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 133.7 +38000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 61.3 +38000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 1920.5 +38000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 21339.3 +38000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 6955.0 +38000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.4 +38000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 13.9 +38000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 155.0 +38000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 50.5 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1.1 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 4.6 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 8.7 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.7 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 2.8 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +38000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.7 +38000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.7 +38000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 2.8 +38000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +38000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.7 +38000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 230.1 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 61.2 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 136.6 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 178.0 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 35.3 +38000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.3 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 62.6 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 270.9 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 690.5 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 456.2 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 6.7 +38000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 4.4 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 20.2 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 87.6 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 223.2 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 147.5 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2.2 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1.4 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.1 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.0 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +38000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +38000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 170.7 +38000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 147.3 +38000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 70.7 +38000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 7.3 +38000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 84.6 +38000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 9.5 +38000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +38000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.6 +38000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.3 +38000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 872.5 +38000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 279.3 +38000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 31.7 +38000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 5.8 +38000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 404.4 +38000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 5.9 +38000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 123.6 +38000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1481.2 +38000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1381.0 +38000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 5377.7 +38000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1961.2 +38000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 673.7 +38000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1141.4 +38000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 278.0 +38000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 104.3 +38000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 109.2 +38000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 107.2 +38000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 47291.4 +38000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 118.1 +38000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 471.4 +38000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 267.1 +38000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 101.6 +38000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 493.7 +38000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 293.5 +38000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 260.0 +38000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 20.7 +38000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 33.4 +38000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 5.3 +38000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 195.8 +38000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 81.8 +38000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 5.3 +38000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 8.8 +38000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 50.1 +38000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 13.7 +38000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +38000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 31.4 +38000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 66.2 +38000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 30.7 +38000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 14.0 +38000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.8 +38000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 16.3 +38000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 86.4 +38000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 122.9 +38000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 12.1 +38000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 14.1 +38000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.9 +38000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 14.1 +38000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 349.2 +38000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2456.9 +38000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 5899.8 +38000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1305.0 +38000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1867.4 +38000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +38000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +38000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +38000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +38000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +38000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +38000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 172.9 +38000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.3 +38000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 80.7 +38000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 71.7 +38000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 26.9 +38000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.6 +38000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +38000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.6 +38000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 2.8 +38000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 55.3 +38000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 18.6 +38000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 6.4 +38000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 2.6 +38000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.3 +38000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 442.2 +38000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 799.0 +38000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.5 +38000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +38000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1145.0 +38000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 718.2 +38000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 69.6 +38000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 40.5 +38000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 35.2 +38000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.3 +38000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 16.4 +38000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.1 +38000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.5 +38000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 34.1 +38000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.3 +38000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 16.4 +38000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.1 +38000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.4 +38000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.2 +38000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +38000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +38000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +38000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +38000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +38000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 181.5 +38000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 169.4 +38000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 20.8 +38000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 22.5 +38000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 3.3 +38000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 18.2 +38000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 3.9 +38000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.8 +38000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 3.3 +38000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 17.7 +38000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 3.9 +38000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.0 +38000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.5 +38000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.8 +38000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.5 +38000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.3 +38000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +38000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.9 +38000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +38000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.4 +38000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +38000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 24.0 +38000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 93.0 +38000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 343.0 +38000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 114.4 +38000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 27.0 +38000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.4 +38000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.5 +38000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 27.0 +38000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.4 +38000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.5 +38000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.6 +38000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3029.7 +38000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1873.7 +38000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 555.9 +38000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 104.5 +38000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.8 +38000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +38000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +38000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.8 +38000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +38000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +38000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 4.4 +38000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 21.0 +38000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 19.0 +38000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 15.0 +38000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 15.4 +38000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +38000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +38000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +38000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +38000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +38000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +38000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +38000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +38000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +38000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 6.0 +38000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 37.9 +38000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 2.1 +38000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.7 +38000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.1 +38000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +38000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 1.5 +38000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.2 +38000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.6 +38000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +38000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +38000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +38000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +38000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +38000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +38000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +38000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +38000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +38000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +38000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +38000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 46.1 +38000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 84.6 +38000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 56.2 +38000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +38000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 55.1 +38000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 7.5 +38000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 23.4 +38000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.9 +38000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 2.3 +38000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.0 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 37.2 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 25.7 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.5 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.5 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 4.6 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 4.0 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 1.8 +38000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +38000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +38000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 5.2 +38000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.5 +38000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 9.9 +38000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 6.2 +38000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 13.5 +38000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 9.5 +38000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.2 +38000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 5.1 +38000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 25.6 +38000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 11.4 +38000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 7.0 +38000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.6 +38000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 2.8 +38000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 5.2 +38000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 6.2 +38000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 11.1 +38000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 15.9 +38000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 14.7 +38000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 14.9 +38000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 40.7 +38000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 37.8 +38000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 12.9 +38000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 3.8 +38000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +38000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.0 +38000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 11.8 +38000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 15.3 +38000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 7.1 +38000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +38000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 2.2 +38000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.5 +38000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +38000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.3 +38000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.7 +38000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +38000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.7 +38000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 2.0 +38000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 3.6 +38000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.1 +38000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +38000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 1.9 +38000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.6 +38000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.6 +38000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.5 +38000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.5 +38000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.5 +38000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +38000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +38000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 4.1 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 9.8 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 5.2 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 82.5 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 25.3 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 1.8 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.0 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.8 +38000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +38000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +38000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +38000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +38000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +38000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 11.4 +38000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 28.4 +38000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 47.3 +38000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 19.1 +38000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 5.9 +38000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 4.0 +38000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 2.0 +38000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +38000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.4 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 7.0 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 7.1 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 11.6 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 11.8 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 17.3 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 15.1 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 8.7 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 2.0 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.1 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +38000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +38000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.1 +38000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.8 +38000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.6 +38000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 7.0 +38000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 14.5 +38000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 7.7 +38000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 6.0 +38000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 27.0 +38000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 100.8 +38000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 73.7 +38000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 19.5 +38000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.6 +38000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.7 +38000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +38000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.3 +38000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.6 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.1 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 6.2 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 2.0 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 2.9 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.4 +38000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 12.6 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 7.5 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.4 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.3 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 0.9 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.6 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.7 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.8 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.3 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.4 +38000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +38000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +38000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.2 +38000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +38000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.6 +38000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 5.9 +38000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 22.3 +38000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 22.9 +38000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 14.1 +38000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.6 +38000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +38000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +38000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +38000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +38000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.3 +38000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 2.0 +38000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 20.8 +38000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 34.8 +38000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 4.0 +38000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.2 +38000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +38000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 5.2 +38000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 11.1 +38000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 6.3 +38000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 3.0 +38000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.0 +38000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 4.9 +38000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.2 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.7 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 8.0 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 1.9 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 3.0 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.1 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 3.0 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +38000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.4 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 9.5 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 10.6 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 21.0 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 120.4 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 61.9 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 3.2 +38000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 4.2 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 4.8 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 5.5 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 7.8 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 33.7 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 85.2 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 81.3 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 59.7 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 4.5 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 2.2 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.5 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.7 +38000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 4.9 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 9.8 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 5.2 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 97.8 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 345.6 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 229.9 +38000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.3 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.0 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 29.2 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 66.0 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 57.1 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 28.9 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 11.4 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.4 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 4.1 +38000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +38000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.3 +38000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 43.2 +38000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 95.7 +38000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 187.2 +38000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 74.0 +38000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 406.5 +38000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 267.2 +38000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 6.7 +38000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +38000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.9 +38000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.6 +38000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 3.7 +38000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.2 +38000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +38000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.0 +38000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +38000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 1.8 +38000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.8 +38000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.3 +38000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.5 +38000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +38000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +38000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.0 +38000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.4 +38000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +38000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +38000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.3 +38000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.8 +38000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +38000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.7 +38000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.7 +38000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 5.1 +38000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 4.5 +38000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 10.9 +38000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 2.0 +38000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +38000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +38000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.2 +38000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 1.2 +38000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 16.8 +38000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 20.9 +38000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 4.9 +38000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 35.2 +38000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 12.5 +38000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.2 +38000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +38000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +38000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +38000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.7 +38000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 26.5 +38000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 26.7 +38000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 9.6 +38000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 1.6 +38000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 2.0 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.4 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 2.7 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 6.5 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 4.4 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 4.3 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 15.8 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 17.7 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 4.8 +38000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 3.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.6 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.4 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.7 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 2.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.8 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 5.9 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 18.3 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 26.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 8.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.8 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.1 +38000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.5 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 2.5 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.8 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 3.5 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 1.3 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.2 +38000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +38000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 13.9 +38000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 42.8 +38000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 40.1 +38000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 10.3 +38000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 75.4 +38000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 289.9 +38000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +38000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 3.4 +38000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 5.8 +38000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 9.4 +38000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 15.6 +38000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.5 +38000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.2 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.0 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +38000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +38000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +38000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.3 +38000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.3 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.2 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 5.3 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 73.2 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 35.5 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 7.9 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 13.0 +38000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 2.8 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1.3 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 32.2 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.6 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.3 +38000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.5 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.1 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1.3 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 4.7 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 20.9 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 6.6 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 4.0 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 3.4 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 0.8 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.1 +38000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 0.8 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1.0 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 1.8 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 0.9 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 0.9 +38000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 0.8 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.2 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.2 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.0 +38000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +38000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 5.7 +38000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 23.0 +38000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.5 +38000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 5205.9 +38000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 14002.0 +38000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 8000.7 +38000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 12668.3 +38000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 11165.3 +38000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 18604.0 +38000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 16038.7 +38000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 8299.1 +38000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.8 +38000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 874.8 +38000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 8024.0 +38000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 9568.1 +38000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 494.2 +38000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 9.6 +38000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 208.6 +38000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 76.9 +38000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 65.3 +38000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 3.2 +38000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 19.7 +38000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 104.3 +38000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 47.4 +38000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 29.7 +38000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 79.7 +38000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 488.6 +38000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 943.2 +38000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 1024.9 +38000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 277.7 +38000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 2.0 +38000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +38000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.8 +38000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 590.6 +38000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2791.2 +38000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 551.4 +38000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 24.7 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.6 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 18.3 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 66.6 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 35.3 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 21.5 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 166.9 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 208.5 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 519.6 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 525.7 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 220.3 +38000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +38000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +38000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +38000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 42.0 +38000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 95.8 +38000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 38.0 +38000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 149.1 +38000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 703.9 +38000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 369.3 +38000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 105.1 +38000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 7.5 +38000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +38000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 209.6 +38000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 209.2 +38000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 161.3 +38000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 253.9 +38000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 420.3 +38000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 57.4 +38000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 211.8 +38000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 257.8 +38000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 88.0 +38000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 48.9 +38000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 25.4 +38000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +38000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +38000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +38000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +38000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +38000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +38000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 36.1 +38000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 86.7 +38000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 21.8 +38000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 17.3 +38000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 30.1 +38000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 8.5 +38000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 57.8 +38000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 64.3 +38000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 28.3 +38000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 7.1 +38000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 3.6 +38000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +38000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +38000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +38000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +38000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +38000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.2 +38000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.0 +38000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.4 +38000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.6 +38000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 23.0 +38000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 15.9 +38000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 102.2 +38000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 133.1 +38000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 15.3 +38000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 13.7 +38000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 3.9 +38000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +38000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +38000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +38000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +38000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +38000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +38000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 13.3 +38000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 73.8 +38000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 107.4 +38000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 66.6 +38000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 184.7 +38000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 134.1 +38000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 58.9 +38000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.1 +38000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +38000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +38000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.3 +38000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 19.8 +38000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 22.8 +38000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 28.5 +38000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 27.2 +38000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.4 +38000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 11.4 +38000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.2 +38000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 10.6 +38000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 8.6 +38000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.3 +38000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.6 +38000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.3 +38000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.7 +38000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +38000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.0 +38000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.0 +38000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.9 +38000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 4.5 +38000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 5.2 +38000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.4 +38000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +38000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +38000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +38000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.2 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 1.7 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 2.4 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.2 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.1 +38000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +38000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1.9 +38000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +38000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +38000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +38000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.1 +38000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1.9 +38000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 3.6 +38000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 10.5 +38000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 3.5 +38000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 4.1 +38000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.4 +38000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +38000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 2.7 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.3 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 12.1 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 1.8 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 25.2 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 12.8 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 18.6 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 11.8 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 4.9 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 2.2 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 2.7 +38000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +38000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 433.7 +38000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1617.9 +38000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 2436.7 +38000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 541.8 +38000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1067.0 +38000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2061.2 +38000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1585.6 +38000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 2651.7 +38000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 1801.3 +38000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 4029.7 +38000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 3617.3 +38000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 1.7 +38000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 1.7 +38000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 15.9 +38000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +38000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 16.9 +38000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 6.8 +38000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 150.8 +38000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 557.6 +38000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2065.7 +38000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 135.9 +38000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 1.9 +38000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.4 +38000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.8 +38000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 3.5 +38000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 30.5 +38000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +38000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 730.3 +38000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 2710.8 +38000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1088.7 +38000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 18.4 +38000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 22.3 +38000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 11.0 +38000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 24.3 +38000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 13.3 +38000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 2.5 +38000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 21.5 +38000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 18.1 +38000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 148.5 +38000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 244.2 +38000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 180.1 +38000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 7.1 +38000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 13.5 +38000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.1 +38000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 3.9 +38000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 2.4 +38000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 24.0 +38000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +38000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.3 +38000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.5 +38000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.1 +38000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 7.7 +38000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 12.0 +38000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 22.0 +38000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 20.5 +38000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 86.4 +38000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 31.8 +38000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 5.4 +38000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.4 +38000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +38000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.5 +38000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +38000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.3 +38000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 42.1 +38000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 173.0 +38000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.1 +38000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 7.9 +38000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.5 +38000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +38000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.5 +38000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NE.POP b/NONROAD/NR08a/DATA/POP/NE.POP new file mode 100644 index 0000000..65412ea --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NE.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 31000 NE Nebraska 906,985.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +31000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 5.8 +31000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3.4 +31000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3.7 +31000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 294.4 +31000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 297.2 +31000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 133.4 +31000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 470.0 +31000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 193.1 +31000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 50.3 +31000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 6475.4 +31000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3189.4 +31000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3272.8 +31000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 28323.5 +31000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2297.6 +31000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1958.0 +31000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.6 +31000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.3 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.0 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 40.2 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 76.2 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 599.9 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.1 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 14.8 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +31000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 5.6 +31000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.1 +31000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +31000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 14.8 +31000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +31000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 5.6 +31000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 4.9 +31000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 34.2 +31000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.6 +31000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 12.4 +31000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.1 +31000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.3 +31000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.1 +31000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.3 +31000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1023.0 +31000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.2 +31000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 96.1 +31000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 487.8 +31000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 150.2 +31000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 26.6 +31000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 37.0 +31000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 6.6 +31000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 17.2 +31000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.0 +31000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.4 +31000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.0 +31000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.0 +31000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.4 +31000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.0 +31000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 92.1 +31000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 269.3 +31000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 228.4 +31000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 114.4 +31000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 80.6 +31000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 3.3 +31000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +31000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 3.3 +31000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +31000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 40.0 +31000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 61.6 +31000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 17.8 +31000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 7.5 +31000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.7 +31000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +31000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.7 +31000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +31000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.2 +31000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 4.5 +31000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 4.5 +31000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +31000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +31000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 70.0 +31000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 68.5 +31000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 24.5 +31000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 27.9 +31000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 4.7 +31000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 3.9 +31000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 3.1 +31000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 4.7 +31000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 3.9 +31000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 3.1 +31000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 28.9 +31000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 591.1 +31000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 23.9 +31000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 7.3 +31000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 9.3 +31000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 6.1 +31000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.5 +31000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.2 +31000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.7 +31000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.5 +31000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.2 +31000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.7 +31000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 75.6 +31000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 362.2 +31000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 186.2 +31000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 39.1 +31000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 17.2 +31000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.7 +31000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.6 +31000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.7 +31000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.6 +31000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 10.2 +31000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 574.4 +31000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 959.7 +31000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 32.6 +31000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 25.0 +31000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.0 +31000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.4 +31000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.5 +31000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +31000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 3.4 +31000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.6 +31000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +31000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 3.4 +31000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.6 +31000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 9.2 +31000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 13.0 +31000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 23.7 +31000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 6.1 +31000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.8 +31000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.8 +31000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.2 +31000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.7 +31000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +31000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.9 +31000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +31000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +31000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.7 +31000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +31000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.9 +31000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +31000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +31000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +31000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 9.7 +31000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.3 +31000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +31000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 9.7 +31000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.3 +31000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.4 +31000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 49.6 +31000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +31000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.9 +31000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +31000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +31000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.9 +31000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +31000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.0 +31000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 39.4 +31000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 11.2 +31000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 6.2 +31000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 6.6 +31000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 11.2 +31000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 6.2 +31000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 6.6 +31000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 34.7 +31000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 114.6 +31000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 17.2 +31000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 21.1 +31000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.8 +31000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +31000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 4.1 +31000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 3.9 +31000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +31000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 14.2 +31000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 3.9 +31000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 90.8 +31000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 40.1 +31000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 83.6 +31000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.9 +31000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 40.1 +31000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 83.6 +31000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.9 +31000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 10.6 +31000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 38.0 +31000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 61.2 +31000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 4.5 +31000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 28.5 +31000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +31000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 202.2 +31000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 442.0 +31000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1163.3 +31000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 85.0 +31000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 540.6 +31000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 2.6 +31000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 280.1 +31000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 21.3 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 24.4 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 37.4 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 10.1 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 21.7 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 13.0 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 14.7 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.9 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.3 +31000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 13.0 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 14.7 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.9 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.3 +31000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +31000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +31000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.0 +31000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 413.9 +31000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 78.2 +31000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 39.8 +31000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 33.7 +31000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 3.0 +31000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.2 +31000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.7 +31000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.6 +31000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +31000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 3.0 +31000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.2 +31000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.5 +31000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.6 +31000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +31000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +31000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.2 +31000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 8.2 +31000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 5.0 +31000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.2 +31000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 5.0 +31000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.2 +31000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +31000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +31000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 6.4 +31000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.7 +31000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +31000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +31000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 2.7 +31000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 1.2 +31000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 4.8 +31000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +31000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +31000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 2.5 +31000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.0 +31000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 4.7 +31000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +31000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +31000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.3 +31000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +31000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +31000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 3943.9 +31000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 196004.1 +31000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 64.6 +31000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 118.5 +31000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 5890.5 +31000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 1.9 +31000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 365.7 +31000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 2585.4 +31000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 18360.3 +31000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 39.5 +31000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 279.2 +31000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 1982.6 +31000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 31894.9 +31000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +31000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 638.4 +31000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2246.1 +31000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 23840.5 +31000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 60375.3 +31000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +31000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +31000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 6734.9 +31000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 478.3 +31000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1376.8 +31000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +31000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +31000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +31000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 105.6 +31000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 28.3 +31000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.5 +31000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.2 +31000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 3529.6 +31000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 39197.5 +31000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +31000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +31000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2043.7 +31000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 761.4 +31000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 2221.1 +31000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +31000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +31000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 116.5 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1139.8 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 35.9 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 39.1 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.0 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 20.3 +31000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 20.1 +31000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 10783.1 +31000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 16512.3 +31000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 27857.1 +31000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1302.0 +31000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 919.5 +31000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1408.1 +31000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2375.5 +31000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 111.0 +31000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 43.1 +31000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 6230.5 +31000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 4831.7 +31000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 22.9 +31000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.7 +31000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 107.6 +31000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 83.5 +31000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +31000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 111.4 +31000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 380.4 +31000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 168.2 +31000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.5 +31000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 408.1 +31000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 798.7 +31000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 153.9 +31000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 4823.8 +31000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 53599.1 +31000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 17469.2 +31000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.7 +31000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 83.3 +31000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 925.9 +31000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 301.8 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 6.7 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 27.7 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 52.2 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.9 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 16.8 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +31000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.0 +31000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.9 +31000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 16.8 +31000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +31000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.0 +31000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.5 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1374.7 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 365.7 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 816.1 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1063.7 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 210.8 +31000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.8 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 157.1 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 680.5 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1734.3 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1146.0 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 16.8 +31000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 11.0 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 120.8 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 523.3 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1333.6 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 881.2 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 12.9 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 8.5 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.8 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +31000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.3 +31000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 148.6 +31000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 128.2 +31000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 61.6 +31000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 6.4 +31000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 73.7 +31000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 8.3 +31000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +31000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.5 +31000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.1 +31000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 759.7 +31000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 243.2 +31000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 27.6 +31000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 5.0 +31000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 352.1 +31000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 5.2 +31000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 107.7 +31000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1289.9 +31000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1202.6 +31000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 4682.9 +31000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1707.8 +31000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 586.7 +31000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 993.9 +31000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 242.1 +31000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 90.8 +31000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 95.1 +31000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 93.4 +31000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 41181.7 +31000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 102.9 +31000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 410.5 +31000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 232.6 +31000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 88.4 +31000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 429.9 +31000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 255.6 +31000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 226.4 +31000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 18.0 +31000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 29.1 +31000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 4.6 +31000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 170.5 +31000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 71.2 +31000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 4.6 +31000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 7.7 +31000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 43.6 +31000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 12.0 +31000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +31000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 27.3 +31000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 57.7 +31000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 26.7 +31000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 12.2 +31000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.7 +31000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 14.2 +31000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 75.3 +31000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 107.0 +31000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 10.5 +31000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 12.3 +31000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.5 +31000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 27.6 +31000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 684.2 +31000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 4813.4 +31000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 11558.5 +31000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 2556.7 +31000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 3658.4 +31000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +31000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +31000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +31000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +31000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +31000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +31000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 338.8 +31000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 2.5 +31000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 158.0 +31000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 140.5 +31000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 52.7 +31000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.2 +31000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +31000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 3.2 +31000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 5.4 +31000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 108.3 +31000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 36.4 +31000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 12.6 +31000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 5.1 +31000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 2.6 +31000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 866.4 +31000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1565.3 +31000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.0 +31000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +31000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 2243.3 +31000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1407.0 +31000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 136.3 +31000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 79.4 +31000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 69.0 +31000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.6 +31000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 32.1 +31000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 2.1 +31000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 5.0 +31000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 66.8 +31000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.6 +31000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 32.1 +31000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 2.1 +31000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 4.6 +31000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.3 +31000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +31000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.3 +31000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.4 +31000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.4 +31000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.4 +31000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 355.5 +31000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 331.9 +31000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 40.7 +31000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 44.1 +31000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 6.5 +31000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 35.7 +31000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 7.6 +31000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 3.6 +31000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 6.5 +31000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 34.7 +31000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 7.6 +31000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.9 +31000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.0 +31000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.7 +31000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.1 +31000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.6 +31000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.2 +31000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.8 +31000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.3 +31000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.8 +31000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.3 +31000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 47.0 +31000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 182.3 +31000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 671.9 +31000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 224.2 +31000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 52.9 +31000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 4.7 +31000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.1 +31000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 52.9 +31000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 4.7 +31000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.1 +31000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.1 +31000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 5935.6 +31000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 3670.9 +31000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1089.0 +31000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 204.8 +31000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 3.5 +31000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.3 +31000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +31000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 3.5 +31000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.3 +31000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +31000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 8.7 +31000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 41.2 +31000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 37.3 +31000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 29.4 +31000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 30.1 +31000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +31000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +31000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +31000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +31000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +31000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +31000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +31000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +31000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +31000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 33.1 +31000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 210.3 +31000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 11.6 +31000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3.8 +31000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.4 +31000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +31000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 4.1 +31000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.5 +31000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.7 +31000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +31000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +31000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +31000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +31000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.4 +31000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.3 +31000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +31000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +31000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +31000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.4 +31000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.3 +31000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 5.1 +31000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 9.4 +31000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 6.3 +31000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +31000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 6.1 +31000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.8 +31000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2.6 +31000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +31000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.3 +31000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.8 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 101.2 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 70.0 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.5 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.5 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 12.4 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 10.9 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 4.8 +31000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.2 +31000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.7 +31000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 16.4 +31000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.5 +31000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 31.2 +31000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 19.4 +31000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 42.6 +31000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 29.9 +31000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 3.8 +31000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 16.1 +31000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 80.6 +31000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 36.0 +31000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 21.9 +31000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.0 +31000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 8.7 +31000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 16.3 +31000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 19.5 +31000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 35.0 +31000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 49.9 +31000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 46.2 +31000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 46.8 +31000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 128.1 +31000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 118.8 +31000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 40.6 +31000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 12.0 +31000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +31000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 3.2 +31000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 37.2 +31000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 48.1 +31000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 22.3 +31000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +31000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 6.9 +31000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 7.8 +31000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.6 +31000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 4.0 +31000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 5.3 +31000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +31000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 5.2 +31000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 6.2 +31000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 11.3 +31000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 3.5 +31000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +31000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +31000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.4 +31000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 6.0 +31000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 5.0 +31000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.7 +31000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +31000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 4.8 +31000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.5 +31000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +31000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.5 +31000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.6 +31000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +31000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +31000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 13.0 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 30.7 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 16.4 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 259.6 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 79.6 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 5.7 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 3.3 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 2.6 +31000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.6 +31000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +31000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +31000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.5 +31000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.7 +31000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 35.9 +31000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 89.5 +31000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 148.9 +31000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 60.1 +31000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 18.7 +31000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 12.5 +31000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 6.3 +31000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.6 +31000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.4 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.6 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.3 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 22.1 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 22.5 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 36.5 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 37.1 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 54.5 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 47.4 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 27.3 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 6.4 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 3.5 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +31000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +31000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.4 +31000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.4 +31000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 4.9 +31000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 22.0 +31000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 45.5 +31000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 24.3 +31000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 18.8 +31000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 84.9 +31000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 317.4 +31000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 232.0 +31000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 61.5 +31000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.0 +31000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.3 +31000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +31000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.9 +31000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.0 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 3.4 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 19.6 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.7 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 6.3 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 9.0 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.1 +31000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 39.8 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 23.7 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 4.4 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 4.0 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 2.9 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 5.0 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 8.4 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 2.7 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.9 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.2 +31000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.2 +31000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +31000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 3.6 +31000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +31000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.9 +31000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 18.7 +31000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 70.3 +31000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 71.9 +31000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 44.3 +31000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.9 +31000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.5 +31000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +31000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +31000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +31000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.8 +31000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 6.4 +31000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 65.3 +31000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 109.4 +31000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 12.5 +31000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.8 +31000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +31000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 16.4 +31000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 34.9 +31000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 19.7 +31000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 9.6 +31000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 3.0 +31000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 15.3 +31000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 3.7 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.4 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.6 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.2 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 25.2 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 6.1 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 9.5 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 3.6 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 9.4 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.7 +31000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.3 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 30.0 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 33.4 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 66.2 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 379.0 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 194.7 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 10.1 +31000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 13.3 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 15.2 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 17.4 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 24.7 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 106.0 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 268.0 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 255.9 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 187.7 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 14.2 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 6.9 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.4 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 8.5 +31000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.3 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 15.4 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 30.8 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 16.5 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 307.8 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1087.5 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 723.6 +31000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 3.9 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 3.2 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 91.8 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 207.5 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 179.7 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 91.0 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 35.9 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 7.4 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 12.9 +31000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +31000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.8 +31000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 135.8 +31000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 301.1 +31000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 589.2 +31000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 233.0 +31000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1279.3 +31000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 841.0 +31000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 21.2 +31000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +31000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 2.9 +31000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 4.9 +31000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 11.7 +31000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 3.8 +31000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.4 +31000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 3.0 +31000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +31000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 5.8 +31000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 5.5 +31000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 3.9 +31000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 4.6 +31000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.0 +31000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.5 +31000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 3.1 +31000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.1 +31000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +31000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +31000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.8 +31000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.4 +31000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.2 +31000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.3 +31000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.3 +31000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 15.9 +31000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 14.2 +31000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 34.4 +31000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 6.3 +31000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +31000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.4 +31000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.8 +31000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 5.3 +31000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 73.8 +31000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 91.6 +31000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 21.7 +31000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 154.0 +31000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 54.7 +31000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.7 +31000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +31000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +31000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.3 +31000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 3.1 +31000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 116.2 +31000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 117.1 +31000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 42.1 +31000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 6.8 +31000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 8.7 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 2.0 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 11.9 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 28.7 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 19.4 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 18.7 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 69.0 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 77.5 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 20.8 +31000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.4 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 13.6 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 2.6 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.7 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 2.9 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 9.1 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 3.3 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 25.8 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 80.3 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 114.3 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 35.7 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 3.6 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.6 +31000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 2.2 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 10.9 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 3.3 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 15.2 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 5.8 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.8 +31000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +31000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 37.9 +31000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 116.5 +31000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 109.2 +31000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 28.0 +31000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 205.3 +31000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 789.6 +31000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +31000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +31000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +31000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +31000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +31000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +31000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 14.7 +31000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 25.5 +31000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 41.0 +31000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 68.3 +31000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 2.1 +31000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.1 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +31000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +31000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +31000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.6 +31000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.0 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.1 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 31.5 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 437.6 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 212.1 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 47.4 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 77.8 +31000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 16.6 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 7.7 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 192.1 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.3 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 1.9 +31000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 2.9 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.7 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 7.6 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 28.3 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 124.9 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 39.5 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 23.9 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 20.2 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.6 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.7 +31000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.5 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 5.8 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 10.8 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 5.2 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 5.5 +31000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.6 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.1 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.9 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.2 +31000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +31000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 4.9 +31000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 20.0 +31000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.5 +31000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 4533.4 +31000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 12193.0 +31000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 6967.1 +31000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 11031.6 +31000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 9722.8 +31000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 16200.5 +31000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 13966.6 +31000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 7226.9 +31000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.7 +31000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 761.8 +31000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 6987.4 +31000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 8332.0 +31000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 430.4 +31000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 8.4 +31000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 181.7 +31000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 66.9 +31000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 56.9 +31000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 2.8 +31000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 17.2 +31000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 90.8 +31000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 41.3 +31000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 25.9 +31000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 69.4 +31000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 425.5 +31000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 821.3 +31000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 892.5 +31000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 241.8 +31000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.8 +31000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +31000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.7 +31000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 514.3 +31000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2430.6 +31000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 480.1 +31000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 21.5 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.4 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 16.0 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 58.0 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 30.7 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 18.7 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 145.3 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 181.6 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 452.5 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 457.8 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 191.8 +31000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +31000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +31000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +31000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 36.6 +31000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 83.4 +31000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 33.1 +31000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 129.8 +31000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 612.9 +31000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 321.6 +31000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 91.5 +31000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 6.5 +31000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +31000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 410.5 +31000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 409.9 +31000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 316.0 +31000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 497.5 +31000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 823.5 +31000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 112.5 +31000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 415.0 +31000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 505.0 +31000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 172.4 +31000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 95.8 +31000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 49.8 +31000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +31000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +31000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +31000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +31000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +31000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +31000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 70.7 +31000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 169.9 +31000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 42.6 +31000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 33.9 +31000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 59.0 +31000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 16.7 +31000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 113.1 +31000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 125.9 +31000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 55.5 +31000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 13.9 +31000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 7.0 +31000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +31000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +31000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +31000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +31000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +31000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.4 +31000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 5.9 +31000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.8 +31000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.2 +31000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 45.1 +31000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 31.2 +31000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 200.3 +31000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 260.9 +31000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 29.9 +31000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 26.8 +31000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 7.7 +31000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +31000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +31000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +31000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +31000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +31000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +31000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 26.1 +31000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 144.6 +31000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 210.5 +31000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 130.5 +31000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 361.8 +31000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 262.8 +31000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 115.4 +31000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 6.0 +31000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +31000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +31000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 4.6 +31000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 38.9 +31000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 44.6 +31000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 55.7 +31000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 53.3 +31000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 6.7 +31000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 22.4 +31000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 6.3 +31000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 20.8 +31000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 16.8 +31000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 2.6 +31000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.2 +31000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.6 +31000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.4 +31000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.4 +31000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 4.0 +31000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 5.8 +31000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.8 +31000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 8.9 +31000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 10.3 +31000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 2.8 +31000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.4 +31000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +31000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +31000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.3 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 9.3 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 13.3 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.1 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.5 +31000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +31000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 5.1 +31000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +31000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +31000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.2 +31000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.3 +31000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 5.4 +31000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 9.8 +31000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 28.9 +31000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 9.7 +31000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 11.3 +31000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.2 +31000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +31000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.3 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.4 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.2 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2.8 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.4 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 2.1 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.3 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.5 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.3 +31000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +31000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 685.0 +31000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 2555.0 +31000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 3848.2 +31000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 855.6 +31000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1685.1 +31000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 3255.1 +31000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 2504.0 +31000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 4187.7 +31000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2844.7 +31000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 6363.9 +31000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 5712.7 +31000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.7 +31000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.6 +31000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 25.1 +31000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +31000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 26.6 +31000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 10.7 +31000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 238.1 +31000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 880.6 +31000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 3262.2 +31000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 214.6 +31000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 3.0 +31000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 2.1 +31000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.3 +31000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 5.5 +31000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 48.1 +31000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +31000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1153.4 +31000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 4281.1 +31000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1719.3 +31000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 29.0 +31000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 35.3 +31000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 17.3 +31000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 38.3 +31000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 21.0 +31000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 3.9 +31000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 34.0 +31000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 28.6 +31000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 234.5 +31000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 385.6 +31000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 284.4 +31000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 11.2 +31000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 21.3 +31000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.7 +31000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 6.1 +31000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 3.7 +31000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 38.0 +31000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.7 +31000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 4.0 +31000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 4.4 +31000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 6.2 +31000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 22.9 +31000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 36.0 +31000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 65.6 +31000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 61.1 +31000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 257.9 +31000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 95.0 +31000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 16.1 +31000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 4.0 +31000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.9 +31000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 1.5 +31000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.5 +31000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 3.9 +31000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 125.6 +31000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 516.5 +31000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 9.3 +31000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 23.6 +31000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 7.4 +31000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +31000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 7.4 +31000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NH.POP b/NONROAD/NR08a/DATA/POP/NH.POP new file mode 100644 index 0000000..f98d7fd --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NH.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 33000 NH New Hampshire 672,841.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +33000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 148.9 +33000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 87.9 +33000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 94.3 +33000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 7517.7 +33000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 7588.3 +33000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 3405.9 +33000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 11998.9 +33000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 4931.4 +33000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1284.7 +33000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 4702.6 +33000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2316.2 +33000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 2376.8 +33000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 20569.4 +33000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1245.2 +33000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1446.7 +33000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.4 +33000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.7 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 29.7 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 56.3 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 443.2 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.5 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 10.9 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +33000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.1 +33000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 4.5 +33000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +33000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 10.9 +33000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +33000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 4.1 +33000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 3.0 +33000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 21.2 +33000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.0 +33000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 7.7 +33000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.3 +33000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.4 +33000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.3 +33000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.4 +33000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 635.5 +33000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.4 +33000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 59.7 +33000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 303.0 +33000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 93.3 +33000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 16.5 +33000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 23.0 +33000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 4.1 +33000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 10.7 +33000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.3 +33000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.9 +33000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.6 +33000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.3 +33000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.9 +33000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.6 +33000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 57.2 +33000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 167.3 +33000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 141.9 +33000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 71.1 +33000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 50.1 +33000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 2.0 +33000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.2 +33000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 2.0 +33000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.2 +33000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 24.8 +33000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 38.3 +33000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 11.1 +33000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 4.7 +33000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.5 +33000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +33000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.5 +33000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +33000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.2 +33000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.8 +33000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.8 +33000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +33000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +33000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 43.5 +33000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 42.6 +33000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 15.2 +33000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 17.3 +33000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.9 +33000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 2.4 +33000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.9 +33000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.9 +33000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 2.4 +33000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.9 +33000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 17.9 +33000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 367.2 +33000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 14.8 +33000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 4.5 +33000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 5.8 +33000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 3.8 +33000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.5 +33000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.4 +33000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 2.3 +33000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.5 +33000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.4 +33000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 2.3 +33000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 47.0 +33000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 225.0 +33000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 115.7 +33000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 24.3 +33000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 10.7 +33000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.9 +33000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.6 +33000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.9 +33000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.6 +33000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 6.4 +33000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 356.8 +33000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 596.2 +33000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 20.2 +33000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 15.5 +33000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.6 +33000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.9 +33000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.3 +33000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +33000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 2.1 +33000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +33000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +33000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 2.1 +33000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +33000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 5.7 +33000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 8.1 +33000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 14.7 +33000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 3.8 +33000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.5 +33000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.5 +33000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +33000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.5 +33000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +33000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 3.0 +33000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +33000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.4 +33000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.5 +33000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +33000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 3.0 +33000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +33000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.4 +33000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +33000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 6.0 +33000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.2 +33000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +33000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 6.0 +33000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.2 +33000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.5 +33000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 30.8 +33000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +33000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +33000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +33000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +33000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.5 +33000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +33000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.2 +33000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 24.5 +33000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 6.9 +33000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 3.8 +33000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 4.1 +33000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 6.9 +33000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 3.8 +33000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 4.1 +33000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 21.6 +33000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 71.2 +33000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 10.7 +33000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 13.1 +33000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.5 +33000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +33000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 2.6 +33000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 2.4 +33000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +33000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 13.8 +33000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 3.8 +33000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 88.7 +33000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 39.2 +33000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 81.7 +33000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.8 +33000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 39.2 +33000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 81.7 +33000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.8 +33000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 10.4 +33000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 37.1 +33000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 59.8 +33000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 4.4 +33000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 27.8 +33000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +33000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 197.5 +33000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 431.7 +33000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1136.1 +33000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 83.0 +33000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 528.0 +33000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 2.6 +33000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 273.6 +33000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 20.8 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 23.9 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 36.5 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 9.9 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 21.1 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 12.7 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 14.4 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.6 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.3 +33000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 12.7 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 14.4 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.6 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.3 +33000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +33000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +33000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.0 +33000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 404.2 +33000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 76.4 +33000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 38.9 +33000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 32.9 +33000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.9 +33000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.1 +33000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.7 +33000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.6 +33000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +33000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.9 +33000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.1 +33000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.5 +33000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.6 +33000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +33000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +33000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.2 +33000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 8.0 +33000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 4.9 +33000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.2 +33000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 4.9 +33000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.2 +33000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +33000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +33000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 4.7 +33000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.5 +33000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +33000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +33000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 2.6 +33000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 1.2 +33000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 4.7 +33000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +33000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +33000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 2.4 +33000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.9 +33000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 4.6 +33000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +33000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +33000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.3 +33000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +33000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +33000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 2995.3 +33000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 148861.8 +33000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 49.1 +33000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 121.2 +33000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 6022.4 +33000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.0 +33000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 277.8 +33000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1963.6 +33000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 13944.4 +33000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 40.4 +33000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 285.4 +33000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2027.0 +33000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 24223.6 +33000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +33000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 652.7 +33000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2296.4 +33000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 18106.5 +33000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 45854.0 +33000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +33000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +33000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 6885.7 +33000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 489.0 +33000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1045.7 +33000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +33000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +33000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +33000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 108.0 +33000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 28.9 +33000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.5 +33000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.3 +33000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 2680.7 +33000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 29769.8 +33000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +33000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +33000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2089.5 +33000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 778.4 +33000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1686.9 +33000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +33000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +33000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 119.2 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1165.3 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 36.7 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 39.9 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.0 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 20.7 +33000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 20.6 +33000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 8189.6 +33000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 12540.8 +33000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 21157.0 +33000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 988.8 +33000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 940.1 +33000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1439.6 +33000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2428.7 +33000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 113.5 +33000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 32.7 +33000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 4731.9 +33000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 3669.6 +33000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 17.4 +33000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.8 +33000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 110.0 +33000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 85.3 +33000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +33000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 113.9 +33000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 389.0 +33000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 172.0 +33000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.6 +33000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 417.2 +33000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 816.6 +33000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 116.9 +33000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 3663.6 +33000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 40707.6 +33000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 13267.6 +33000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.7 +33000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 85.2 +33000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 946.7 +33000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 308.5 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 6.9 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 28.3 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 53.4 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.0 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 17.2 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +33000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.1 +33000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.0 +33000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 17.2 +33000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +33000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.1 +33000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.5 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1405.5 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 373.9 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 834.3 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1087.5 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 215.5 +33000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.9 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 119.4 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 516.8 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1317.2 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 870.3 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 12.7 +33000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 8.4 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 123.5 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 535.0 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1363.4 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 900.9 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 13.2 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 8.6 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.8 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +33000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.3 +33000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.8 +33000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.7 +33000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.3 +33000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +33000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.4 +33000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.0 +33000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +33000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +33000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +33000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 4.2 +33000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 1.3 +33000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.2 +33000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +33000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 1.9 +33000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +33000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.6 +33000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 7.1 +33000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 6.7 +33000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 25.9 +33000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 9.5 +33000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 3.2 +33000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 5.5 +33000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 1.3 +33000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.5 +33000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.5 +33000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.5 +33000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 228.0 +33000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.6 +33000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 2.3 +33000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 1.3 +33000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.5 +33000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 2.4 +33000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 1.4 +33000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 1.3 +33000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.1 +33000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.2 +33000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +33000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 0.9 +33000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.4 +33000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +33000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +33000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.2 +33000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.1 +33000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +33000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.2 +33000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.3 +33000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.1 +33000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.1 +33000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +33000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.1 +33000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.4 +33000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.6 +33000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.1 +33000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.1 +33000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +33000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 19.0 +33000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 470.8 +33000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 3312.1 +33000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 7953.3 +33000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1759.2 +33000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2517.3 +33000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +33000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +33000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +33000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +33000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +33000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +33000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 233.1 +33000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.8 +33000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 108.7 +33000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 96.7 +33000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 36.3 +33000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.8 +33000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +33000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 2.2 +33000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.7 +33000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 74.5 +33000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 25.1 +33000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 8.7 +33000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.5 +33000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.8 +33000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 596.2 +33000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1077.1 +33000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.7 +33000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +33000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1543.6 +33000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 968.2 +33000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 93.8 +33000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 54.6 +33000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 47.5 +33000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +33000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 22.1 +33000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.5 +33000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 3.4 +33000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 46.0 +33000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +33000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 22.1 +33000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.5 +33000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 3.2 +33000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.6 +33000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +33000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +33000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +33000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.3 +33000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.3 +33000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 244.6 +33000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 228.4 +33000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 28.0 +33000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 30.4 +33000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 4.4 +33000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 24.6 +33000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 5.2 +33000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.5 +33000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 4.4 +33000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 23.9 +33000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 5.2 +33000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.3 +33000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.7 +33000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.1 +33000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.7 +33000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +33000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +33000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.3 +33000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +33000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.5 +33000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +33000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 32.3 +33000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 125.4 +33000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 462.4 +33000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 154.2 +33000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 36.4 +33000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 3.2 +33000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.7 +33000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 36.4 +33000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 3.2 +33000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.7 +33000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.8 +33000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 4084.2 +33000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2525.9 +33000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 749.3 +33000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 140.9 +33000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.4 +33000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +33000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +33000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.4 +33000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +33000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +33000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 6.0 +33000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 28.3 +33000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 25.7 +33000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 20.2 +33000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 20.7 +33000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +33000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +33000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +33000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +33000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +33000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +33000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +33000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +33000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +33000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 360.0 +33000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 2285.7 +33000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 126.4 +33000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 41.0 +33000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 4.0 +33000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.6 +33000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 2.6 +33000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.3 +33000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.1 +33000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +33000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +33000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +33000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +33000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +33000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +33000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +33000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +33000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +33000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +33000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.8 +33000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +33000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +33000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +33000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +33000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +33000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +33000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +33000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +33000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +33000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.1 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 74.8 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 51.7 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.1 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.1 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 9.2 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 8.1 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 3.6 +33000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +33000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.4 +33000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 10.2 +33000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.9 +33000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 19.4 +33000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 12.1 +33000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 26.4 +33000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 18.6 +33000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 2.4 +33000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 10.0 +33000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 50.0 +33000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 22.4 +33000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 13.6 +33000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.3 +33000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 5.4 +33000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 10.1 +33000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 12.1 +33000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 21.7 +33000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 31.0 +33000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 28.7 +33000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 29.1 +33000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 79.6 +33000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 73.8 +33000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 25.2 +33000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 7.5 +33000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +33000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 2.0 +33000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 23.1 +33000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 29.9 +33000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 13.9 +33000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +33000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 4.3 +33000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 4.8 +33000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.4 +33000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 2.5 +33000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 3.3 +33000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +33000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 3.3 +33000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 3.8 +33000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 7.0 +33000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 2.2 +33000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +33000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 3.7 +33000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 3.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 3.0 +33000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.9 +33000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +33000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.9 +33000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.4 +33000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +33000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +33000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 8.1 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 19.1 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 10.2 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 161.3 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 49.5 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 3.5 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 2.1 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.6 +33000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.4 +33000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +33000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +33000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.3 +33000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.4 +33000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 22.3 +33000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 55.6 +33000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 92.5 +33000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 37.4 +33000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 11.6 +33000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 7.8 +33000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 3.9 +33000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +33000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.4 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.8 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 13.7 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 14.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 22.6 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 23.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 33.9 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 29.4 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 17.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 4.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 2.2 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +33000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +33000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.3 +33000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.5 +33000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 3.1 +33000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 13.6 +33000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 28.3 +33000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 15.1 +33000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 11.7 +33000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 52.8 +33000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 197.1 +33000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 144.1 +33000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 38.2 +33000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.2 +33000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.4 +33000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +33000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.5 +33000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.2 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 2.1 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 12.2 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.4 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 3.9 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 5.6 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.7 +33000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 24.7 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 14.7 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.7 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 2.5 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.8 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 3.1 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 5.2 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.6 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.6 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.7 +33000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +33000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +33000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 2.3 +33000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +33000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.2 +33000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 11.6 +33000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 43.7 +33000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 44.7 +33000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 27.5 +33000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.2 +33000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.3 +33000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +33000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +33000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +33000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.5 +33000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 4.0 +33000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 40.6 +33000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 68.0 +33000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 7.8 +33000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.5 +33000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +33000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 10.2 +33000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 21.7 +33000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 12.3 +33000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 6.0 +33000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.9 +33000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 9.5 +33000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 2.3 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.3 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.4 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.4 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 15.7 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 3.8 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 5.9 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 2.2 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 5.8 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.4 +33000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.8 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 18.6 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 20.8 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 41.1 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 235.4 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 120.9 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 6.3 +33000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 8.2 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.2 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 9.4 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 10.8 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 15.3 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 65.8 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 166.5 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 159.0 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 116.6 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 8.8 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 4.3 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.9 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 5.3 +33000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.2 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 9.6 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 19.2 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 10.2 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 191.2 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 675.6 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 449.5 +33000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 2.4 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 2.0 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 57.0 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 128.9 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 111.7 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 56.5 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 22.3 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 4.6 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 8.0 +33000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +33000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.5 +33000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 84.4 +33000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 187.0 +33000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 366.0 +33000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 144.7 +33000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 794.7 +33000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 522.4 +33000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 13.2 +33000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +33000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.8 +33000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 3.0 +33000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 7.3 +33000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 2.4 +33000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +33000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.9 +33000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +33000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 3.6 +33000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 3.4 +33000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 2.4 +33000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.8 +33000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.6 +33000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.3 +33000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.9 +33000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.7 +33000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +33000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +33000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.5 +33000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.5 +33000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +33000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.4 +33000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.4 +33000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 9.9 +33000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 8.8 +33000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 21.4 +33000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 3.9 +33000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +33000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.3 +33000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.8 +33000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 5.1 +33000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 72.0 +33000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 89.5 +33000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 21.2 +33000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 150.4 +33000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 53.4 +33000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.7 +33000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +33000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +33000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.3 +33000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 3.1 +33000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 113.5 +33000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 114.4 +33000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 41.1 +33000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 6.7 +33000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 8.5 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.9 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 11.7 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 28.0 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 18.9 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 18.3 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 67.4 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 75.7 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 20.4 +33000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.3 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 13.3 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 2.5 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.6 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 2.8 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 8.9 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 3.3 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 25.2 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 78.4 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 111.6 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 34.8 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 3.6 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.6 +33000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 2.1 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 10.7 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 3.2 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 14.8 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 5.6 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.8 +33000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +33000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 28.0 +33000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 86.1 +33000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 80.7 +33000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 20.7 +33000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 151.7 +33000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 583.4 +33000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +33000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +33000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +33000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +33000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +33000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +33000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 14.4 +33000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 24.9 +33000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 40.0 +33000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 66.7 +33000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 2.0 +33000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.1 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +33000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +33000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +33000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.7 +33000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.1 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.1 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 32.2 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 447.4 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 216.9 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 48.4 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 79.6 +33000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 17.0 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 7.9 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 196.4 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.4 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.0 +33000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.0 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.7 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 7.7 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 28.9 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 127.7 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 40.4 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 24.4 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 20.7 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.7 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.8 +33000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.6 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 6.0 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 11.0 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 5.3 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 5.6 +33000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.7 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.1 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.9 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +33000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +33000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +33000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.1 +33000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +33000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 25.1 +33000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 67.5 +33000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 38.6 +33000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 61.1 +33000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 53.8 +33000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 89.7 +33000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 77.3 +33000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 40.0 +33000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +33000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 4.2 +33000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 38.7 +33000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 46.1 +33000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 2.4 +33000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.0 +33000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 1.0 +33000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.4 +33000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.3 +33000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +33000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.1 +33000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.5 +33000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.2 +33000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.1 +33000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.4 +33000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 2.4 +33000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 4.5 +33000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 4.9 +33000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 1.3 +33000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +33000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +33000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +33000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 2.8 +33000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 13.5 +33000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 2.7 +33000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.1 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.1 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.3 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.2 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.1 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.8 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 1.0 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 2.5 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 2.5 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 1.1 +33000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +33000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +33000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +33000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.2 +33000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.5 +33000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.2 +33000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.7 +33000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 3.4 +33000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 1.8 +33000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.5 +33000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +33000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +33000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 282.5 +33000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 282.1 +33000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 217.4 +33000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 342.3 +33000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 566.6 +33000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 77.4 +33000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 285.5 +33000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 347.5 +33000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 118.6 +33000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 65.9 +33000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 34.3 +33000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +33000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +33000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +33000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +33000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +33000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +33000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 48.6 +33000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 116.9 +33000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 29.3 +33000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 23.3 +33000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 40.6 +33000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 11.5 +33000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 77.9 +33000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 86.7 +33000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 38.2 +33000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 9.6 +33000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 4.9 +33000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +33000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +33000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +33000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +33000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +33000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.7 +33000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 4.0 +33000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.5 +33000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.8 +33000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 31.1 +33000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 21.5 +33000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 137.8 +33000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 179.5 +33000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 20.6 +33000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 18.5 +33000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 5.3 +33000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +33000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +33000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +33000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +33000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +33000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +33000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 18.0 +33000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 99.5 +33000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 144.8 +33000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 89.8 +33000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 249.0 +33000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 180.8 +33000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 79.4 +33000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 4.1 +33000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +33000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +33000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 3.1 +33000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 26.8 +33000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 30.7 +33000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 38.4 +33000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 36.7 +33000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 4.6 +33000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 15.4 +33000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 4.3 +33000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 14.3 +33000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 11.6 +33000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.8 +33000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.8 +33000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +33000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.9 +33000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.3 +33000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.8 +33000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 4.0 +33000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.3 +33000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 6.1 +33000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 7.1 +33000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.9 +33000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +33000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +33000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +33000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.2 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.3 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 14.5 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 100.9 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 144.6 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 12.5 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 5.1 +33000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +33000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.3 +33000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +33000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +33000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +33000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +33000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 3.4 +33000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 6.2 +33000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 18.4 +33000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 6.2 +33000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 7.2 +33000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.8 +33000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +33000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +33000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +33000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1477.1 +33000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 5509.9 +33000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 8298.7 +33000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1845.1 +33000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 3634.0 +33000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 7019.6 +33000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 5399.9 +33000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 9030.7 +33000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 6134.6 +33000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 13723.8 +33000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 12319.3 +33000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 5.9 +33000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 5.7 +33000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 54.1 +33000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +33000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 57.5 +33000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 23.2 +33000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 513.4 +33000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1898.9 +33000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 7034.9 +33000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 462.8 +33000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 6.5 +33000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 4.6 +33000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.7 +33000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 11.8 +33000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 103.7 +33000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +33000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 2487.3 +33000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 9232.1 +33000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 3707.6 +33000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 62.6 +33000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 76.1 +33000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 37.3 +33000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 82.6 +33000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 45.2 +33000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 8.4 +33000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 73.3 +33000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 61.7 +33000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 505.7 +33000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 831.5 +33000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 613.4 +33000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 24.2 +33000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 45.9 +33000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 3.7 +33000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 13.1 +33000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 8.0 +33000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 81.9 +33000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +33000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.3 +33000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.4 +33000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.5 +33000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 1.8 +33000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 2.9 +33000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 5.3 +33000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 4.9 +33000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 20.7 +33000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 7.6 +33000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 1.3 +33000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.3 +33000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +33000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +33000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +33000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.3 +33000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 10.1 +33000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 41.5 +33000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.7 +33000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 1.9 +33000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.6 +33000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +33000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.6 +33000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NJ.POP b/NONROAD/NR08a/DATA/POP/NJ.POP new file mode 100644 index 0000000..dbe1a23 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NJ.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 34000 NJ New Jersey 3,602,874.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +34000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 10.6 +34000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 6.3 +34000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 6.7 +34000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 535.5 +34000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 540.5 +34000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 242.6 +34000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 854.7 +34000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 351.3 +34000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 91.5 +34000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11955.3 +34000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5888.4 +34000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 6042.4 +34000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 52292.9 +34000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 3483.5 +34000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 9727.9 +34000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.9 +34000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.6 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 4.9 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 199.8 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 378.3 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2980.3 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 30.5 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 73.5 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +34000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.8 +34000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 30.5 +34000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.7 +34000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 73.5 +34000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.6 +34000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 27.8 +34000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 16.3 +34000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 113.9 +34000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 5.3 +34000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 41.3 +34000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 7.0 +34000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 7.7 +34000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 7.0 +34000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 7.7 +34000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3407.9 +34000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 7.5 +34000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 320.2 +34000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1624.9 +34000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 500.2 +34000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 88.7 +34000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 123.2 +34000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 22.0 +34000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 57.3 +34000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 6.8 +34000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.6 +34000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 3.2 +34000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 6.8 +34000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.6 +34000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 3.2 +34000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 306.7 +34000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 897.1 +34000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 760.8 +34000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 381.0 +34000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 268.5 +34000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 10.9 +34000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.0 +34000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 10.9 +34000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.0 +34000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 133.2 +34000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 205.1 +34000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 59.3 +34000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 25.0 +34000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.5 +34000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +34000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.5 +34000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +34000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.8 +34000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 15.1 +34000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 15.0 +34000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.6 +34000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.6 +34000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 233.2 +34000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 228.3 +34000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 81.6 +34000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 93.0 +34000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 15.5 +34000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 13.1 +34000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 10.3 +34000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 15.5 +34000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 13.1 +34000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 10.3 +34000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 96.2 +34000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1969.0 +34000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 79.6 +34000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 24.3 +34000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 30.9 +34000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 20.3 +34000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.2 +34000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.4 +34000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.3 +34000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.2 +34000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.4 +34000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.3 +34000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 251.8 +34000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1206.7 +34000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 620.4 +34000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 130.1 +34000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 57.2 +34000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 15.7 +34000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.6 +34000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 15.7 +34000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.6 +34000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 34.1 +34000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1913.6 +34000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 3197.0 +34000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 108.5 +34000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 83.1 +34000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.2 +34000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.6 +34000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.6 +34000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +34000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 11.4 +34000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.8 +34000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +34000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 11.4 +34000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.8 +34000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 30.8 +34000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 43.3 +34000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 79.0 +34000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 20.2 +34000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.5 +34000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.5 +34000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.7 +34000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.4 +34000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +34000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.2 +34000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +34000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.9 +34000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.4 +34000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +34000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.2 +34000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +34000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.9 +34000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +34000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 32.3 +34000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.1 +34000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +34000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 32.3 +34000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.1 +34000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 7.9 +34000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 165.1 +34000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +34000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.9 +34000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +34000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +34000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.9 +34000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +34000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 6.5 +34000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 131.2 +34000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 37.2 +34000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 20.6 +34000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 22.0 +34000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 37.2 +34000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 20.6 +34000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 22.0 +34000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 115.7 +34000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 381.7 +34000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 57.5 +34000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 70.2 +34000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.7 +34000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +34000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 13.7 +34000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 13.1 +34000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.6 +34000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 54.6 +34000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 15.2 +34000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 350.5 +34000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 155.0 +34000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 322.9 +34000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 7.2 +34000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 155.0 +34000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 322.9 +34000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 7.2 +34000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 41.1 +34000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 146.7 +34000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 236.4 +34000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 17.3 +34000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 109.9 +34000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.5 +34000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 780.7 +34000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1706.5 +34000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 4491.3 +34000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 328.0 +34000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 2087.4 +34000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 10.2 +34000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1081.4 +34000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 82.4 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 94.3 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 144.3 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 39.0 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 83.6 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 50.2 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 56.8 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 57.6 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.2 +34000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 50.2 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 56.8 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 57.6 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.2 +34000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +34000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.5 +34000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.9 +34000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1598.1 +34000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 302.0 +34000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 153.8 +34000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 130.0 +34000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.6 +34000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 16.1 +34000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.6 +34000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.1 +34000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +34000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 11.6 +34000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 16.1 +34000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.0 +34000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.1 +34000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +34000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.6 +34000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.8 +34000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 31.7 +34000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 19.3 +34000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.7 +34000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 19.3 +34000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.7 +34000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.7 +34000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.0 +34000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 31.8 +34000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 3.6 +34000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.2 +34000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +34000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 10.3 +34000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 4.7 +34000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 18.4 +34000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +34000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +34000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 9.7 +34000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.7 +34000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 18.2 +34000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +34000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.6 +34000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.0 +34000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +34000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +34000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 18003.9 +34000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 894767.9 +34000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 295.0 +34000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 928.2 +34000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 46131.5 +34000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 15.2 +34000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1669.5 +34000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 11802.6 +34000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 83815.9 +34000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 309.3 +34000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2186.4 +34000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 15526.7 +34000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 145601.6 +34000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +34000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 4999.4 +34000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 17590.3 +34000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 108833.0 +34000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 275616.1 +34000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +34000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +34000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 52744.3 +34000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 3745.6 +34000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 6285.3 +34000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +34000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +34000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +34000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 827.4 +34000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 221.3 +34000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 11.7 +34000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 25.4 +34000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 16112.9 +34000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 178938.5 +34000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +34000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +34000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 16005.5 +34000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 5962.8 +34000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 10139.6 +34000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +34000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +34000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 912.7 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 8926.4 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 281.2 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 305.9 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 23.3 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 158.8 +34000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 157.5 +34000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 45368.3 +34000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 69473.0 +34000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 117204.8 +34000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 5478.0 +34000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 6900.9 +34000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 10567.5 +34000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 17827.9 +34000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 833.2 +34000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 196.6 +34000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 28442.5 +34000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 22057.0 +34000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 104.3 +34000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 5.8 +34000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 842.9 +34000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 653.7 +34000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.1 +34000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 872.3 +34000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2979.4 +34000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1317.3 +34000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 19.8 +34000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3196.1 +34000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 6255.2 +34000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 702.4 +34000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 22021.0 +34000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 244682.6 +34000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 79747.7 +34000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 20.8 +34000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 652.6 +34000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 7251.3 +34000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2363.3 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.1 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 52.7 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 217.0 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 409.0 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 30.9 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 131.8 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +34000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 31.5 +34000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 30.9 +34000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 131.8 +34000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +34000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 31.5 +34000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 3.7 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 10766.3 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2863.8 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 6390.9 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 8330.2 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1650.5 +34000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 14.2 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 717.4 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 3106.6 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 7917.2 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 5231.4 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 76.6 +34000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 50.2 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 946.3 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4097.9 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 10443.8 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 6900.8 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 101.1 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 66.3 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 6.5 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.2 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.8 +34000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.6 +34000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 3.8 +34000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 3.3 +34000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1.6 +34000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.2 +34000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1.9 +34000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.2 +34000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +34000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +34000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +34000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 19.5 +34000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 6.2 +34000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.7 +34000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.1 +34000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 9.0 +34000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.1 +34000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 2.8 +34000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 33.1 +34000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 30.8 +34000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 120.1 +34000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 43.8 +34000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 15.0 +34000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 25.5 +34000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 6.2 +34000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 2.3 +34000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 2.4 +34000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 2.4 +34000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1056.3 +34000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 2.6 +34000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 10.5 +34000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 6.0 +34000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 2.3 +34000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 11.0 +34000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 6.6 +34000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 5.8 +34000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.5 +34000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.7 +34000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +34000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 4.4 +34000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1.8 +34000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +34000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.2 +34000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.1 +34000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.3 +34000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +34000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.7 +34000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1.5 +34000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.7 +34000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.3 +34000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +34000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.4 +34000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1.9 +34000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 2.7 +34000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.3 +34000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.3 +34000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +34000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 153.5 +34000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 3809.4 +34000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 26799.4 +34000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 64353.5 +34000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 14234.6 +34000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 20368.6 +34000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +34000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +34000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +34000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +34000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +34000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +34000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1886.3 +34000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 14.2 +34000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 879.8 +34000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 782.5 +34000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 293.5 +34000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 6.8 +34000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 1.1 +34000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 17.8 +34000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 30.2 +34000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 602.8 +34000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 202.8 +34000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 70.0 +34000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 28.6 +34000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 14.5 +34000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 4823.7 +34000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 8715.2 +34000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 5.3 +34000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 1.1 +34000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 12489.8 +34000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 7833.8 +34000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 758.8 +34000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 442.2 +34000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 384.4 +34000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 3.6 +34000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 178.9 +34000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 11.9 +34000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 27.6 +34000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 371.8 +34000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 3.6 +34000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 178.7 +34000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 11.9 +34000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 25.8 +34000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 12.6 +34000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.2 +34000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.7 +34000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 2.0 +34000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 2.1 +34000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 2.2 +34000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1979.5 +34000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1847.7 +34000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 226.6 +34000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 245.6 +34000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 36.0 +34000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 198.9 +34000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 42.4 +34000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 19.8 +34000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 36.0 +34000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 193.2 +34000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 42.4 +34000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 10.6 +34000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 5.7 +34000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 9.2 +34000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 5.9 +34000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 3.5 +34000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.9 +34000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 10.3 +34000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.7 +34000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 4.4 +34000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.4 +34000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 261.7 +34000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 1014.9 +34000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 3741.1 +34000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 1248.0 +34000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 294.6 +34000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 26.2 +34000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 5.9 +34000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 294.6 +34000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 26.2 +34000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 5.9 +34000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 6.2 +34000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 33047.4 +34000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 20438.1 +34000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 6063.2 +34000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 1140.2 +34000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 19.3 +34000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.5 +34000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +34000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 19.3 +34000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.5 +34000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +34000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 48.2 +34000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 229.4 +34000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 207.8 +34000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 163.7 +34000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 167.6 +34000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +34000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 1.1 +34000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 2.5 +34000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +34000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +34000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 1.1 +34000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 2.5 +34000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +34000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +34000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 125.9 +34000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 799.2 +34000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 44.2 +34000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 14.3 +34000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 1.4 +34000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.6 +34000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 23.6 +34000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.7 +34000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 9.6 +34000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +34000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +34000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +34000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +34000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.6 +34000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.5 +34000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.6 +34000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +34000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +34000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.6 +34000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.5 +34000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 1.6 +34000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 2.9 +34000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 1.9 +34000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +34000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 1.9 +34000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.3 +34000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.8 +34000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +34000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +34000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 13.8 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 503.0 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 347.8 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.2 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 7.4 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 7.3 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 61.6 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 54.2 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 23.9 +34000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.9 +34000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.2 +34000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 54.8 +34000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 5.1 +34000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 103.9 +34000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 64.7 +34000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 141.8 +34000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 99.5 +34000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 12.8 +34000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 53.6 +34000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 268.3 +34000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 119.9 +34000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 72.9 +34000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 6.7 +34000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 28.9 +34000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 54.2 +34000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 64.9 +34000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 116.5 +34000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 166.2 +34000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 154.0 +34000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 156.0 +34000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 426.9 +34000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 395.8 +34000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 135.1 +34000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 40.1 +34000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +34000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 10.8 +34000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 123.8 +34000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 160.3 +34000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 74.4 +34000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +34000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 23.1 +34000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 25.9 +34000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.0 +34000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 13.4 +34000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 17.8 +34000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +34000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 17.5 +34000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 20.6 +34000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 37.6 +34000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 11.7 +34000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +34000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +34000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.3 +34000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 20.0 +34000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 16.8 +34000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 5.8 +34000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +34000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 15.9 +34000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.9 +34000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +34000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.9 +34000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.1 +34000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +34000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +34000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 43.4 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 102.2 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 54.6 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 864.8 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 265.3 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.5 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 19.0 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 11.0 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 8.8 +34000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.1 +34000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +34000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +34000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.6 +34000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.2 +34000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 119.6 +34000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 298.1 +34000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 496.0 +34000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 200.3 +34000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 62.2 +34000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 41.6 +34000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 21.1 +34000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.8 +34000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.2 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.9 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 4.3 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 73.7 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 75.0 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 121.4 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 123.5 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 181.6 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 157.8 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 90.9 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 21.3 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 11.6 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +34000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +34000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.5 +34000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 8.0 +34000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 16.4 +34000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 73.2 +34000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 151.6 +34000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 80.8 +34000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 62.7 +34000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 282.9 +34000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1057.2 +34000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 772.9 +34000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 204.7 +34000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 6.5 +34000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 7.5 +34000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +34000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.9 +34000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 6.7 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 11.4 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 65.2 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.3 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 20.9 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 30.1 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.7 +34000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 132.6 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 79.0 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 14.7 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 13.4 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 9.7 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 16.7 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 27.9 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 8.8 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 3.1 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.9 +34000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.8 +34000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +34000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 12.1 +34000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +34000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 6.4 +34000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 62.2 +34000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 234.3 +34000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 239.6 +34000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 147.6 +34000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 6.4 +34000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.8 +34000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +34000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +34000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +34000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.8 +34000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 21.3 +34000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 217.6 +34000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 364.5 +34000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 41.7 +34000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.5 +34000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.6 +34000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 54.7 +34000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 116.1 +34000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 65.7 +34000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 31.9 +34000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 10.1 +34000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 51.1 +34000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 12.4 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.4 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.9 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 7.4 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 83.9 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 20.3 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 31.8 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 12.0 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 31.2 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.4 +34000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 4.3 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 100.0 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 111.3 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 220.6 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1262.4 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 648.5 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 33.6 +34000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 44.2 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.0 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 50.6 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 58.1 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 82.1 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 353.1 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 892.9 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 852.4 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 625.4 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 47.3 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 23.0 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.8 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 28.2 +34000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.0 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 51.4 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 102.7 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 54.9 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1025.4 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3622.8 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2410.5 +34000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 13.1 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 10.6 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 305.9 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 691.4 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 598.7 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 303.2 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 119.6 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 24.7 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 43.0 +34000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +34000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.7 +34000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 452.4 +34000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1003.0 +34000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1962.6 +34000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 776.1 +34000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 4261.7 +34000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2801.6 +34000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 70.6 +34000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +34000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 9.5 +34000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 16.3 +34000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 38.9 +34000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 12.8 +34000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.2 +34000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 10.1 +34000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +34000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 19.2 +34000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 18.4 +34000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 13.1 +34000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 15.2 +34000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.3 +34000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.6 +34000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 10.4 +34000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.8 +34000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.6 +34000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +34000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.8 +34000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 8.0 +34000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.7 +34000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 7.8 +34000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 7.7 +34000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 53.1 +34000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 47.4 +34000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 114.5 +34000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 20.9 +34000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +34000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.4 +34000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 3.1 +34000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 20.3 +34000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 284.8 +34000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 353.7 +34000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 83.6 +34000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 594.5 +34000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 211.3 +34000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.6 +34000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.4 +34000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +34000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.0 +34000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 12.1 +34000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 448.8 +34000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 452.2 +34000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 162.4 +34000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 26.4 +34000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 33.7 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 7.6 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 46.1 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 110.8 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 74.7 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 72.4 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 266.5 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 299.3 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 80.5 +34000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.4 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 52.6 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 9.9 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 6.4 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 11.2 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 35.3 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 12.9 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 99.6 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 310.1 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 441.2 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 137.6 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 14.1 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.3 +34000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 8.4 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 42.2 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 12.7 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 58.6 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 22.3 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 3.1 +34000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +34000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 188.3 +34000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 578.7 +34000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 542.6 +34000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 139.2 +34000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1019.9 +34000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 3923.0 +34000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +34000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +34000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +34000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +34000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +34000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +34000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 56.8 +34000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 98.6 +34000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 158.3 +34000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 263.6 +34000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 8.0 +34000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 8.7 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.1 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +34000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +34000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.4 +34000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 12.1 +34000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 15.1 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 8.8 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 247.0 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3427.3 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1661.2 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 371.1 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 609.4 +34000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 130.3 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.0 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 60.3 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1504.8 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 26.1 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 15.1 +34000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 22.9 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.3 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 5.6 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 59.4 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 221.3 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 978.1 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 309.7 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 187.0 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 158.6 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 35.9 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 5.9 +34000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.7 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 35.2 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 45.8 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 84.3 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 41.0 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.7 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 43.1 +34000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 36.1 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.0 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 8.7 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 7.3 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.0 +34000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.3 +34000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.1 +34000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.5 +34000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +34000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 116.3 +34000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 312.7 +34000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 178.7 +34000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 283.0 +34000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 249.4 +34000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 415.5 +34000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 358.2 +34000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 185.4 +34000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +34000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 19.5 +34000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 179.2 +34000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 213.7 +34000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 11.0 +34000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.2 +34000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 4.7 +34000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1.7 +34000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 1.5 +34000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +34000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.4 +34000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 2.3 +34000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 1.1 +34000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.7 +34000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1.8 +34000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 10.9 +34000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 21.1 +34000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 22.9 +34000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 6.2 +34000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +34000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +34000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +34000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 13.2 +34000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 62.3 +34000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 12.3 +34000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.6 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.4 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1.5 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.8 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.5 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 3.7 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 4.7 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 11.6 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 11.7 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 4.9 +34000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +34000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +34000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +34000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.9 +34000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 2.1 +34000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.8 +34000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 3.3 +34000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 15.7 +34000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 8.2 +34000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 2.3 +34000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.2 +34000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +34000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 2285.7 +34000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 2282.2 +34000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1759.1 +34000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2769.8 +34000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 4584.7 +34000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 626.2 +34000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 2310.5 +34000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2811.9 +34000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 959.8 +34000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 533.6 +34000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 277.1 +34000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +34000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +34000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +34000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +34000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +34000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.0 +34000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 393.5 +34000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 946.0 +34000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 237.3 +34000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 188.8 +34000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 328.3 +34000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 93.1 +34000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 630.0 +34000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 701.1 +34000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 309.2 +34000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 77.5 +34000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 39.3 +34000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +34000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +34000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +34000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +34000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +34000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 13.4 +34000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 32.7 +34000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 4.4 +34000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 6.8 +34000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 251.4 +34000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 174.0 +34000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 1115.1 +34000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1452.4 +34000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 166.6 +34000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 149.5 +34000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 42.7 +34000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +34000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +34000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +34000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +34000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +34000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +34000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 145.3 +34000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 805.0 +34000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 1171.8 +34000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 726.8 +34000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 2014.6 +34000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1463.3 +34000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 642.5 +34000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 33.5 +34000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.7 +34000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +34000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 25.4 +34000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 216.5 +34000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 248.5 +34000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 310.3 +34000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 296.6 +34000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 37.1 +34000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 124.8 +34000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 34.9 +34000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 115.9 +34000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 93.8 +34000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 14.3 +34000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 6.7 +34000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 3.4 +34000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 7.6 +34000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 2.4 +34000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 22.3 +34000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 32.4 +34000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 10.2 +34000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 49.6 +34000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 57.3 +34000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 15.4 +34000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 2.0 +34000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.5 +34000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +34000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.1 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 5.1 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 35.3 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 50.6 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 4.4 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 1.8 +34000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +34000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 29.6 +34000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +34000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +34000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.1 +34000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.5 +34000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 31.0 +34000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 56.4 +34000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 166.5 +34000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 55.9 +34000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 65.3 +34000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.9 +34000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +34000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.4 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.9 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.4 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.6 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.4 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.2 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +34000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +34000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 6075.5 +34000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 22662.6 +34000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 34133.3 +34000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 7589.0 +34000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 14946.7 +34000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 28872.3 +34000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 22210.1 +34000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 37144.1 +34000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 25232.2 +34000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 56446.9 +34000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 50670.4 +34000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 24.1 +34000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 23.3 +34000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 222.6 +34000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.4 +34000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 236.3 +34000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 95.3 +34000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 2111.7 +34000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 7810.4 +34000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 28935.2 +34000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1903.7 +34000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 26.6 +34000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 19.0 +34000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 11.3 +34000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 48.5 +34000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 426.7 +34000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +34000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 10230.4 +34000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 37972.2 +34000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 15249.7 +34000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 257.3 +34000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 313.1 +34000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 153.6 +34000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 339.9 +34000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 186.0 +34000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 34.4 +34000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 301.3 +34000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 253.8 +34000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 2079.9 +34000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 3420.2 +34000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 2522.9 +34000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 99.5 +34000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 188.7 +34000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 15.4 +34000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 54.0 +34000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 33.1 +34000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 336.8 +34000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +34000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.1 +34000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.1 +34000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.2 +34000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.7 +34000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 1.1 +34000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1.9 +34000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1.8 +34000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 7.6 +34000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 2.8 +34000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.5 +34000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.1 +34000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +34000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +34000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +34000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.1 +34000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 3.7 +34000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 15.2 +34000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.3 +34000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.7 +34000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.2 +34000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +34000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.2 +34000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NM.POP b/NONROAD/NR08a/DATA/POP/NM.POP new file mode 100644 index 0000000..93123a8 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NM.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 35000 NM New Mexico 756,017.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +35000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 5.3 +35000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3.1 +35000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3.3 +35000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 265.4 +35000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 267.9 +35000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 120.2 +35000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 423.6 +35000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 174.1 +35000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 45.4 +35000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5663.1 +35000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2789.3 +35000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 2862.2 +35000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 24770.5 +35000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 637.4 +35000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 2104.0 +35000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.6 +35000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.4 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.1 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 43.2 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 81.8 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 644.6 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.6 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 15.9 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +35000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 6.0 +35000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.6 +35000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +35000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 15.9 +35000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +35000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 6.0 +35000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 4.5 +35000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 31.2 +35000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.4 +35000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 11.3 +35000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.9 +35000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.1 +35000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.9 +35000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.1 +35000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 934.4 +35000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.0 +35000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 87.8 +35000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 445.5 +35000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 137.2 +35000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 24.3 +35000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 33.8 +35000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 6.0 +35000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 15.7 +35000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.9 +35000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.3 +35000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.9 +35000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.9 +35000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.3 +35000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.9 +35000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 84.1 +35000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 246.0 +35000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 208.6 +35000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 104.5 +35000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 73.6 +35000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 3.0 +35000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +35000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 3.0 +35000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +35000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 36.5 +35000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 56.2 +35000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 16.3 +35000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 6.9 +35000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.7 +35000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +35000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.7 +35000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.2 +35000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.2 +35000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 4.1 +35000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 4.1 +35000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +35000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +35000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 63.9 +35000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 62.6 +35000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 22.4 +35000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 25.5 +35000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 4.2 +35000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 3.6 +35000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 2.8 +35000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 4.2 +35000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 3.6 +35000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 2.8 +35000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 26.4 +35000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 539.9 +35000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 21.8 +35000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 6.7 +35000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 8.5 +35000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 5.6 +35000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.2 +35000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.0 +35000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.4 +35000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.2 +35000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.0 +35000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 3.4 +35000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 69.0 +35000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 330.8 +35000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 170.1 +35000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 35.7 +35000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 15.7 +35000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.3 +35000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.3 +35000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 4.3 +35000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.3 +35000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 9.4 +35000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 524.7 +35000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 876.6 +35000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 29.7 +35000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 22.8 +35000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.9 +35000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.3 +35000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.4 +35000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +35000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 3.1 +35000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.5 +35000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +35000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 3.1 +35000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.5 +35000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 8.4 +35000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 11.9 +35000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 21.6 +35000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 5.6 +35000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.7 +35000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.7 +35000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.2 +35000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.7 +35000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +35000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.4 +35000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +35000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.5 +35000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.7 +35000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +35000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 4.4 +35000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +35000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.5 +35000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +35000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 8.9 +35000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.3 +35000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +35000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 8.9 +35000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.3 +35000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.2 +35000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 45.3 +35000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +35000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.8 +35000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +35000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +35000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.8 +35000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +35000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.8 +35000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 36.0 +35000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 10.2 +35000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 5.6 +35000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 6.0 +35000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 10.2 +35000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 5.6 +35000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 6.0 +35000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 31.7 +35000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 104.7 +35000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 15.8 +35000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 19.2 +35000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.7 +35000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +35000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 3.8 +35000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 3.6 +35000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +35000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 5.3 +35000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 1.5 +35000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 34.1 +35000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 15.1 +35000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 31.5 +35000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +35000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 15.1 +35000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 31.5 +35000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +35000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 4.0 +35000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 14.3 +35000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 23.0 +35000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 1.7 +35000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 10.7 +35000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +35000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 76.0 +35000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 166.2 +35000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 437.5 +35000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 32.0 +35000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 203.3 +35000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.0 +35000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 105.3 +35000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 8.0 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 9.2 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 14.1 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 3.8 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 8.1 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 4.9 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 5.5 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 5.6 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +35000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 4.9 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 5.5 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 5.6 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +35000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +35000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +35000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.4 +35000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 155.7 +35000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 29.4 +35000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 15.0 +35000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 12.7 +35000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.1 +35000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.6 +35000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +35000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +35000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +35000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.1 +35000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.6 +35000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +35000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +35000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +35000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +35000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +35000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 3.1 +35000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 1.9 +35000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +35000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 1.9 +35000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +35000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +35000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +35000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 6.9 +35000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.8 +35000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.3 +35000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +35000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.0 +35000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.5 +35000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 1.8 +35000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +35000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +35000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.9 +35000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.4 +35000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 1.8 +35000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +35000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +35000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +35000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +35000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +35000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 4298.3 +35000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 213617.2 +35000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 70.4 +35000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 138.3 +35000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 6872.9 +35000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.3 +35000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 398.6 +35000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 2817.8 +35000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 20010.2 +35000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 46.1 +35000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 325.7 +35000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2313.2 +35000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 34761.0 +35000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +35000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 744.8 +35000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2620.7 +35000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 25982.8 +35000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 65800.7 +35000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +35000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +35000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 7858.1 +35000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 558.0 +35000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1500.6 +35000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +35000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +35000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +35000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 123.3 +35000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 33.0 +35000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.7 +35000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 3.8 +35000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 3846.8 +35000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 42719.8 +35000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +35000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +35000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2384.6 +35000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 888.4 +35000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 2420.7 +35000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +35000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +35000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 136.0 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1329.9 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 41.9 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 45.6 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.5 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 23.7 +35000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 23.5 +35000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 8636.0 +35000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 13224.3 +35000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 22310.2 +35000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1042.7 +35000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 955.8 +35000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1463.6 +35000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2469.3 +35000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 115.4 +35000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 46.9 +35000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 6790.4 +35000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 5265.9 +35000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 24.9 +35000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.9 +35000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 125.6 +35000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 97.4 +35000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.5 +35000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 130.0 +35000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 443.9 +35000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 196.3 +35000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.9 +35000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 476.2 +35000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 931.9 +35000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 167.7 +35000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 5257.3 +35000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 58415.6 +35000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 19039.0 +35000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 3.1 +35000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 97.2 +35000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1080.3 +35000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 352.1 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.2 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 7.8 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 32.3 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 60.9 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.6 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 19.6 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +35000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.7 +35000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 4.6 +35000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 19.6 +35000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +35000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 4.7 +35000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.6 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1604.0 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 426.7 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 952.1 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1241.1 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 245.9 +35000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 2.1 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 171.3 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 741.7 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1890.2 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1249.0 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 18.3 +35000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 12.0 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 141.0 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 610.5 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1556.0 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1028.1 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 15.1 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 9.9 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.0 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +35000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.4 +35000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 7.3 +35000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 6.3 +35000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 3.0 +35000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.3 +35000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 3.6 +35000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.4 +35000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +35000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +35000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +35000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 37.5 +35000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 12.0 +35000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 1.4 +35000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.2 +35000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 17.4 +35000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.3 +35000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 5.3 +35000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 63.7 +35000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 59.4 +35000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 231.3 +35000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 84.3 +35000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 29.0 +35000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 49.1 +35000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 12.0 +35000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 4.5 +35000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 4.7 +35000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 4.6 +35000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 2033.8 +35000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 5.1 +35000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 20.3 +35000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 11.5 +35000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 4.4 +35000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 21.2 +35000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 12.6 +35000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 11.2 +35000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.9 +35000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 1.4 +35000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.2 +35000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 8.4 +35000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 3.5 +35000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.2 +35000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.4 +35000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 2.2 +35000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.6 +35000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +35000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 1.3 +35000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 2.8 +35000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 1.3 +35000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.6 +35000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +35000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.7 +35000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 3.7 +35000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 5.3 +35000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.5 +35000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.6 +35000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +35000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 19.4 +35000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 480.9 +35000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 3383.3 +35000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 8124.4 +35000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1797.1 +35000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2571.5 +35000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +35000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +35000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +35000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +35000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +35000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +35000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 238.1 +35000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.8 +35000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 111.1 +35000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 98.8 +35000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 37.1 +35000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.9 +35000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +35000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 2.3 +35000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.8 +35000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 76.1 +35000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 25.6 +35000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 8.8 +35000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.6 +35000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.8 +35000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 609.0 +35000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1100.3 +35000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.7 +35000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +35000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1576.8 +35000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 989.0 +35000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 95.8 +35000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 55.8 +35000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 48.5 +35000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +35000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 22.6 +35000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.5 +35000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 3.5 +35000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 46.9 +35000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +35000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 22.6 +35000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.5 +35000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 3.3 +35000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.6 +35000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +35000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +35000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.3 +35000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.3 +35000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.3 +35000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 249.9 +35000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 233.3 +35000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 28.6 +35000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 31.0 +35000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 4.5 +35000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 25.1 +35000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 5.3 +35000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.5 +35000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 4.5 +35000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 24.4 +35000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 5.3 +35000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.3 +35000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.7 +35000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.2 +35000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.7 +35000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +35000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +35000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.3 +35000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +35000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.6 +35000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +35000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 33.0 +35000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 128.1 +35000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 472.3 +35000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 157.6 +35000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 37.2 +35000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 3.3 +35000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.7 +35000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 37.2 +35000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 3.3 +35000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.7 +35000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.8 +35000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 4172.1 +35000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2580.2 +35000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 765.5 +35000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 143.9 +35000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.4 +35000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +35000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +35000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.4 +35000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +35000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +35000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 6.1 +35000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 29.0 +35000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 26.2 +35000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 20.7 +35000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 21.2 +35000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +35000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +35000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +35000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +35000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +35000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +35000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +35000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +35000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +35000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 35.4 +35000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 224.5 +35000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 12.4 +35000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 4.0 +35000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.4 +35000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +35000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 5.5 +35000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.6 +35000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 2.2 +35000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +35000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +35000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +35000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +35000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.6 +35000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.7 +35000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +35000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +35000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +35000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.6 +35000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.7 +35000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 162.7 +35000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 298.3 +35000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 198.1 +35000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +35000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 194.2 +35000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 26.6 +35000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 82.4 +35000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 3.0 +35000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 8.1 +35000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.6 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 3.0 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 108.8 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 75.2 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.3 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.6 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.6 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 13.3 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 11.7 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 5.2 +35000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.2 +35000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.6 +35000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 15.0 +35000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.4 +35000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 28.5 +35000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 17.7 +35000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 38.9 +35000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 27.3 +35000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 3.5 +35000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 14.7 +35000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 73.6 +35000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 32.9 +35000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 20.0 +35000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.8 +35000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 7.9 +35000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 14.9 +35000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 17.8 +35000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 32.0 +35000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 45.6 +35000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 42.2 +35000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 42.8 +35000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 117.0 +35000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 108.5 +35000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 37.1 +35000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 11.0 +35000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +35000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 2.9 +35000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 33.9 +35000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 43.9 +35000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 20.4 +35000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +35000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 6.3 +35000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 7.1 +35000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.5 +35000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 3.7 +35000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 4.9 +35000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +35000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 4.8 +35000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 5.6 +35000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 10.3 +35000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 3.2 +35000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +35000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +35000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.4 +35000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 5.5 +35000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 4.6 +35000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 1.6 +35000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +35000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 4.4 +35000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.3 +35000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +35000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.3 +35000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.6 +35000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +35000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +35000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 11.9 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 28.0 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 15.0 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 237.1 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 72.7 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 5.2 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 3.0 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 2.4 +35000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.6 +35000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +35000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +35000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.4 +35000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.6 +35000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 32.8 +35000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 81.7 +35000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 136.0 +35000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 54.9 +35000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 17.1 +35000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 11.4 +35000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 5.8 +35000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.5 +35000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.3 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.5 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.2 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 20.2 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 20.6 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 33.3 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 33.9 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 49.8 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 43.3 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 24.9 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 5.8 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 3.2 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +35000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +35000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.4 +35000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.2 +35000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 4.5 +35000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 20.1 +35000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 41.6 +35000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 22.2 +35000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 17.2 +35000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 77.6 +35000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 289.9 +35000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 211.9 +35000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 56.1 +35000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.8 +35000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.1 +35000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +35000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.8 +35000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.8 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 3.1 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 17.9 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.6 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 5.7 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 8.3 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.0 +35000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 36.4 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 21.7 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 4.0 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 3.7 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 2.7 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 4.6 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 7.6 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 2.4 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.9 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.1 +35000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.2 +35000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +35000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 3.3 +35000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +35000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.8 +35000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 17.1 +35000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 64.2 +35000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 65.7 +35000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 40.5 +35000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.7 +35000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.5 +35000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +35000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +35000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +35000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.8 +35000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 5.8 +35000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 59.7 +35000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 99.9 +35000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 11.4 +35000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.7 +35000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +35000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 15.0 +35000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 31.8 +35000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 18.0 +35000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 8.8 +35000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 2.8 +35000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 14.0 +35000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 3.4 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.4 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.5 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.0 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 23.0 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 5.6 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 8.7 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 3.3 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 8.6 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.6 +35000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.2 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 27.4 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 30.5 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 60.5 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 346.1 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 177.8 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 9.2 +35000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 12.1 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 13.9 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 15.9 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 22.5 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 96.8 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 244.8 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 233.7 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 171.5 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 13.0 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 6.3 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.3 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 7.7 +35000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.3 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 14.1 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 28.2 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 15.1 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 281.2 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 993.3 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 660.9 +35000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 3.6 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 2.9 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 83.9 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 189.6 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 164.2 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 83.1 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 32.8 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 6.8 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 11.8 +35000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +35000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.8 +35000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 124.0 +35000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 275.0 +35000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 538.1 +35000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 212.8 +35000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1168.5 +35000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 768.2 +35000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 19.3 +35000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +35000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 2.6 +35000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 4.5 +35000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 10.7 +35000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 3.5 +35000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.3 +35000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 2.8 +35000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +35000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 5.3 +35000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 5.0 +35000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 3.6 +35000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 4.2 +35000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.9 +35000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.4 +35000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 2.8 +35000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.0 +35000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +35000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +35000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.8 +35000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.2 +35000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.2 +35000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.1 +35000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.1 +35000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 14.6 +35000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 13.0 +35000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 31.4 +35000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 5.7 +35000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +35000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.4 +35000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.3 +35000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 2.0 +35000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 27.7 +35000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 34.5 +35000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 8.1 +35000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 57.9 +35000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 20.6 +35000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.3 +35000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +35000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +35000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +35000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.2 +35000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 43.7 +35000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 44.0 +35000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 15.8 +35000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 2.6 +35000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 3.3 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.7 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 4.5 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 10.8 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 7.3 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 7.0 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 26.0 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 29.1 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 7.8 +35000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.1 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 5.1 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.0 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.6 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.1 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 3.4 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 1.3 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 9.7 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 30.2 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 43.0 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 13.4 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 1.4 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.2 +35000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.8 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 4.1 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 1.2 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 5.7 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 2.2 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.3 +35000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +35000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 40.7 +35000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 125.2 +35000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 117.4 +35000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 30.1 +35000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 220.6 +35000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 848.5 +35000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +35000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 5.5 +35000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 9.6 +35000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 15.4 +35000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 25.7 +35000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.8 +35000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.3 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.3 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +35000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +35000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +35000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.7 +35000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.1 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.3 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 36.8 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 510.6 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 247.5 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 55.3 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 90.8 +35000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 19.4 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 9.0 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 224.2 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 3.9 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.2 +35000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.4 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.8 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 8.8 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 33.0 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 145.7 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 46.1 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 27.9 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 23.6 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 5.3 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.9 +35000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 5.2 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 6.8 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 12.6 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 6.1 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 6.4 +35000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 5.4 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.3 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.1 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +35000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +35000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.2 +35000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.0 +35000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +35000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 223.9 +35000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 602.2 +35000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 344.1 +35000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 544.8 +35000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 480.2 +35000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 800.1 +35000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 689.7 +35000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 356.9 +35000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +35000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 37.6 +35000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 345.1 +35000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 411.5 +35000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 21.3 +35000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.4 +35000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 9.0 +35000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 3.3 +35000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 2.8 +35000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +35000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.8 +35000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 4.5 +35000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 2.0 +35000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.3 +35000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 3.4 +35000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 21.0 +35000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 40.6 +35000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 44.1 +35000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 11.9 +35000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +35000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +35000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +35000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 25.4 +35000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 120.0 +35000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 23.7 +35000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.1 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.8 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 2.9 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 1.5 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.9 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 7.2 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 9.0 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 22.3 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 22.6 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 9.5 +35000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +35000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +35000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +35000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 1.8 +35000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 4.1 +35000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 1.6 +35000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 6.4 +35000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 30.3 +35000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 15.9 +35000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 4.5 +35000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.3 +35000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +35000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 288.6 +35000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 288.1 +35000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 222.1 +35000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 349.7 +35000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 578.8 +35000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 79.1 +35000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 291.7 +35000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 355.0 +35000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 121.2 +35000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 67.4 +35000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 35.0 +35000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +35000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +35000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +35000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +35000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +35000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +35000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 49.7 +35000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 119.4 +35000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 30.0 +35000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 23.8 +35000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 41.5 +35000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 11.7 +35000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 79.5 +35000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 88.5 +35000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 39.0 +35000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 9.8 +35000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 5.0 +35000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +35000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +35000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +35000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +35000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +35000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.7 +35000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 4.1 +35000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.6 +35000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.9 +35000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 31.7 +35000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 22.0 +35000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 140.8 +35000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 183.4 +35000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 21.0 +35000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 18.9 +35000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 5.4 +35000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +35000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +35000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +35000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +35000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +35000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +35000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 18.3 +35000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 101.6 +35000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 147.9 +35000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 91.8 +35000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 254.3 +35000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 184.7 +35000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 81.1 +35000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 4.2 +35000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +35000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +35000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 3.2 +35000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 27.3 +35000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 31.4 +35000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 39.2 +35000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 37.4 +35000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 4.7 +35000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 15.7 +35000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 4.4 +35000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 14.6 +35000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 11.8 +35000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.8 +35000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.8 +35000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +35000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.0 +35000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.3 +35000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.8 +35000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 4.1 +35000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.3 +35000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 6.3 +35000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 7.2 +35000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.9 +35000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.3 +35000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +35000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +35000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.4 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 9.9 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 14.2 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.2 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.5 +35000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +35000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 6.9 +35000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +35000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +35000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.3 +35000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.3 +35000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 7.2 +35000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 13.1 +35000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 38.6 +35000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 13.0 +35000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 15.1 +35000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.6 +35000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.1 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 1.4 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 2.8 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 7.2 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 12.7 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 13.6 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 4.3 +35000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 2.1 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 9.4 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 4.6 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 42.7 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 6.3 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 88.9 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 45.3 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 65.5 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 41.5 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 17.2 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 7.7 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 9.4 +35000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.3 +35000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 594.0 +35000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 2215.8 +35000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 3337.3 +35000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 742.0 +35000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1461.4 +35000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2822.9 +35000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 2171.5 +35000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 3631.7 +35000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2467.0 +35000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 5519.0 +35000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 4954.2 +35000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.4 +35000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.3 +35000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 21.8 +35000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +35000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 23.1 +35000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 9.3 +35000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 206.5 +35000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 763.6 +35000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2829.1 +35000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 186.1 +35000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.6 +35000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.9 +35000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.1 +35000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 4.7 +35000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 41.7 +35000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +35000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1000.3 +35000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 3712.6 +35000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1491.0 +35000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 25.2 +35000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 30.6 +35000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 15.0 +35000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 33.2 +35000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 18.2 +35000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 3.4 +35000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 29.5 +35000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 24.8 +35000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 203.4 +35000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 334.4 +35000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 246.7 +35000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 9.7 +35000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 18.5 +35000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.5 +35000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 5.3 +35000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 3.2 +35000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 32.9 +35000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.4 +35000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 2.1 +35000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 2.4 +35000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 3.3 +35000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 12.3 +35000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 19.3 +35000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 35.2 +35000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 32.8 +35000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 138.3 +35000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 51.0 +35000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 8.6 +35000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 2.2 +35000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.5 +35000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.8 +35000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.3 +35000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 2.1 +35000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 67.4 +35000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 277.0 +35000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 5.0 +35000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 12.7 +35000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.9 +35000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +35000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.9 +35000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NV.POP b/NONROAD/NR08a/DATA/POP/NV.POP new file mode 100644 index 0000000..4b67ff4 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NV.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 32000 NV Nevada 932,444.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +32000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.4 +32000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.2 +32000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.3 +32000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 20.3 +32000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 20.5 +32000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 9.2 +32000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 32.4 +32000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 13.3 +32000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 3.5 +32000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5970.8 +32000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2940.9 +32000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3017.7 +32000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 26116.6 +32000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 919.0 +32000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 2459.2 +32000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.7 +32000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.4 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.2 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 50.5 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 95.6 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 753.4 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 7.7 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 18.6 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +32000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 7.0 +32000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 7.7 +32000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +32000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 18.6 +32000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +32000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 7.0 +32000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 13.5 +32000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 94.4 +32000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.4 +32000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 34.2 +32000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 5.8 +32000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 6.4 +32000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 5.8 +32000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 6.4 +32000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2824.0 +32000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.2 +32000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 265.4 +32000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1346.5 +32000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 414.5 +32000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 73.5 +32000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 102.1 +32000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 18.2 +32000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 47.4 +32000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 5.6 +32000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.8 +32000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.6 +32000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 5.6 +32000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.8 +32000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.6 +32000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 254.2 +32000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 743.4 +32000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 630.4 +32000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 315.8 +32000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 222.5 +32000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 9.0 +32000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.8 +32000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 9.0 +32000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.8 +32000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 110.4 +32000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 170.0 +32000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 49.2 +32000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 20.7 +32000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +32000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +32000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.0 +32000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.7 +32000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.7 +32000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 12.5 +32000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 12.4 +32000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +32000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.5 +32000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 193.3 +32000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 189.2 +32000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 67.6 +32000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 77.1 +32000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 12.8 +32000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 10.8 +32000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 8.5 +32000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 12.8 +32000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 10.8 +32000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 8.5 +32000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 79.7 +32000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1631.7 +32000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 66.0 +32000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 20.2 +32000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 25.6 +32000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 16.8 +32000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.8 +32000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.2 +32000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.2 +32000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.8 +32000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.2 +32000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.2 +32000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 208.7 +32000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 999.9 +32000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 514.1 +32000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 107.8 +32000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 47.4 +32000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 13.0 +32000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.1 +32000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 13.0 +32000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.1 +32000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 28.3 +32000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1585.7 +32000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2649.2 +32000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 89.9 +32000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 68.9 +32000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.7 +32000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.8 +32000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.3 +32000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +32000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 9.4 +32000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.5 +32000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +32000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 9.4 +32000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.5 +32000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 25.5 +32000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 35.9 +32000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 65.4 +32000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 16.8 +32000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +32000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +32000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.6 +32000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +32000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +32000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.4 +32000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +32000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +32000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.0 +32000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +32000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.4 +32000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +32000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +32000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +32000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.8 +32000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.9 +32000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +32000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 26.8 +32000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.9 +32000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 6.6 +32000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 136.8 +32000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +32000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.4 +32000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +32000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +32000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.4 +32000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +32000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.4 +32000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 108.7 +32000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.8 +32000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 17.0 +32000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 18.2 +32000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 30.8 +32000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 17.0 +32000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 18.2 +32000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 95.9 +32000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 316.3 +32000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 47.6 +32000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 58.1 +32000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.3 +32000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +32000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 11.3 +32000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 10.8 +32000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.5 +32000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 6.1 +32000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 1.7 +32000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 39.4 +32000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 17.4 +32000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 36.3 +32000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.8 +32000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 17.4 +32000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 36.3 +32000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.8 +32000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 4.6 +32000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 16.5 +32000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 26.6 +32000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 1.9 +32000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 12.4 +32000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +32000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 87.8 +32000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 191.9 +32000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 505.1 +32000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 36.9 +32000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 234.8 +32000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.1 +32000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 121.6 +32000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 9.3 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 10.6 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 16.2 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 4.4 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 9.4 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 5.6 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 6.4 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 6.5 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +32000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 5.6 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 6.4 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 6.5 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +32000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +32000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +32000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.4 +32000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 179.7 +32000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 34.0 +32000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 17.3 +32000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 14.6 +32000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.3 +32000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.8 +32000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +32000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.7 +32000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +32000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.3 +32000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.8 +32000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +32000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.7 +32000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +32000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +32000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +32000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 3.6 +32000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 2.2 +32000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +32000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 2.2 +32000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +32000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +32000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.3 +32000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 8.0 +32000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.9 +32000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.3 +32000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +32000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.2 +32000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.5 +32000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 2.1 +32000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +32000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +32000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.1 +32000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.4 +32000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 2.0 +32000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +32000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +32000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +32000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +32000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +32000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 4812.1 +32000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 239152.8 +32000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 78.8 +32000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 443.3 +32000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 22031.3 +32000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 7.3 +32000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 446.2 +32000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 3154.6 +32000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 22402.2 +32000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 147.7 +32000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1044.2 +32000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 7415.2 +32000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 38916.3 +32000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +32000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2387.6 +32000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 8400.7 +32000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 29088.8 +32000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 73666.4 +32000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +32000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +32000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 25189.5 +32000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1788.8 +32000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1679.9 +32000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +32000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +32000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +32000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 395.1 +32000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 105.7 +32000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 5.6 +32000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 12.1 +32000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 4306.7 +32000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 47826.5 +32000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +32000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +32000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 7643.8 +32000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2847.7 +32000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 2710.1 +32000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +32000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +32000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 435.9 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 4263.0 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 134.3 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 146.1 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 11.1 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 75.9 +32000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 75.2 +32000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 3190.0 +32000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 4884.8 +32000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 8240.9 +32000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 385.2 +32000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 495.2 +32000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 758.4 +32000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 1279.4 +32000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 59.8 +32000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 52.5 +32000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 7602.1 +32000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 5895.4 +32000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 27.9 +32000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.8 +32000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 402.5 +32000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 312.2 +32000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.5 +32000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 416.6 +32000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1422.9 +32000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 629.1 +32000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 9.4 +32000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1526.4 +32000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2987.3 +32000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 187.7 +32000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 5885.7 +32000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 65398.6 +32000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 21314.9 +32000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 9.9 +32000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 311.7 +32000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3463.1 +32000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1128.7 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.5 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 25.1 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 103.7 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 195.4 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 14.7 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 62.9 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.6 +32000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 15.1 +32000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 14.7 +32000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 62.9 +32000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.6 +32000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 15.1 +32000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.8 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 5141.7 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1367.7 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3052.1 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3978.3 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 788.2 +32000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 6.8 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 191.7 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 830.3 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2116.1 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1398.2 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 20.5 +32000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 13.4 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 451.9 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1957.1 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4987.7 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 3295.7 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 48.3 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 31.6 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.1 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.1 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.4 +32000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.2 +32000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 4.7 +32000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 4.1 +32000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1.9 +32000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.2 +32000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 2.3 +32000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.3 +32000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +32000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +32000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +32000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 24.1 +32000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 7.7 +32000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.9 +32000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.2 +32000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 11.2 +32000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.2 +32000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 3.4 +32000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 40.9 +32000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 38.1 +32000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 148.3 +32000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 54.1 +32000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 18.6 +32000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 31.5 +32000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 7.7 +32000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 2.9 +32000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 3.0 +32000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 3.0 +32000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1304.3 +32000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 3.3 +32000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 13.0 +32000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 7.4 +32000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 2.8 +32000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 13.6 +32000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 8.1 +32000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 7.2 +32000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.6 +32000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.9 +32000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +32000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 5.4 +32000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 2.3 +32000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +32000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.2 +32000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.4 +32000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.4 +32000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +32000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.9 +32000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1.8 +32000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.8 +32000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.4 +32000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +32000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.4 +32000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 2.4 +32000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 3.4 +32000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.3 +32000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.4 +32000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +32000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 24.0 +32000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 595.3 +32000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 4188.3 +32000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 10057.3 +32000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 2224.6 +32000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 3183.2 +32000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +32000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +32000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +32000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +32000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +32000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +32000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 294.8 +32000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 2.2 +32000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 137.5 +32000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 122.3 +32000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 45.9 +32000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.1 +32000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +32000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 2.8 +32000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 4.7 +32000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 94.2 +32000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 31.7 +32000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 10.9 +32000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 4.5 +32000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 2.3 +32000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 753.9 +32000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1362.0 +32000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.8 +32000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +32000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1951.9 +32000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1224.3 +32000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 118.6 +32000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 69.1 +32000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 60.1 +32000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.6 +32000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 28.0 +32000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.9 +32000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 4.3 +32000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 58.1 +32000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.6 +32000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 27.9 +32000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.9 +32000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 4.0 +32000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.0 +32000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +32000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.3 +32000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.3 +32000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.3 +32000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.3 +32000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 309.4 +32000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 288.8 +32000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 35.4 +32000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 38.4 +32000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 5.6 +32000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 31.1 +32000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 6.6 +32000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 3.1 +32000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 5.6 +32000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 30.2 +32000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 6.6 +32000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.7 +32000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.9 +32000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.4 +32000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.9 +32000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.5 +32000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +32000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.6 +32000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.3 +32000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.7 +32000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +32000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 40.9 +32000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 158.6 +32000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 584.7 +32000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 195.0 +32000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 46.0 +32000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 4.1 +32000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.9 +32000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 46.0 +32000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 4.1 +32000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.9 +32000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.0 +32000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 5164.7 +32000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 3194.1 +32000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 947.6 +32000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 178.2 +32000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 3.0 +32000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +32000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +32000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 3.0 +32000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +32000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +32000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 7.5 +32000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 35.8 +32000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 32.5 +32000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 25.6 +32000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 26.2 +32000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.4 +32000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +32000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +32000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +32000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.4 +32000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +32000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +32000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +32000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +32000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 6.0 +32000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 38.3 +32000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 2.1 +32000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.7 +32000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.1 +32000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +32000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 22.0 +32000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.5 +32000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 8.9 +32000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +32000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +32000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +32000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +32000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.4 +32000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.0 +32000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +32000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +32000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +32000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.4 +32000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.0 +32000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 3.7 +32000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 6.8 +32000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4.5 +32000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +32000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4.4 +32000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.6 +32000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.9 +32000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +32000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +32000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 3.5 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 127.2 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 87.9 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.3 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.9 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.9 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 15.6 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 13.7 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 6.1 +32000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.2 +32000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.8 +32000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 45.4 +32000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.2 +32000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 86.1 +32000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 53.6 +32000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 117.5 +32000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 82.5 +32000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 10.6 +32000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 44.4 +32000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 222.4 +32000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 99.4 +32000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 60.4 +32000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 5.6 +32000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 23.9 +32000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 44.9 +32000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 53.8 +32000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 96.6 +32000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 137.7 +32000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 127.7 +32000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 129.3 +32000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 353.7 +32000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 328.0 +32000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 112.0 +32000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 33.2 +32000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +32000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 8.9 +32000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 102.6 +32000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 132.8 +32000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 61.6 +32000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +32000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 19.2 +32000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 21.5 +32000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.7 +32000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 11.1 +32000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 14.7 +32000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +32000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 14.5 +32000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 17.1 +32000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 31.1 +32000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 9.7 +32000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +32000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +32000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.1 +32000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 16.6 +32000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 13.9 +32000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 4.8 +32000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +32000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 13.2 +32000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.0 +32000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +32000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.0 +32000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.8 +32000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +32000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +32000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 36.0 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 84.7 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 45.3 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 716.7 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 219.9 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 15.7 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 9.1 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 7.3 +32000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.8 +32000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +32000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +32000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.3 +32000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.8 +32000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 99.1 +32000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 247.1 +32000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 411.0 +32000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 166.0 +32000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 51.6 +32000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 34.4 +32000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 17.5 +32000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.5 +32000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.0 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.6 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.6 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 61.0 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 62.1 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 100.6 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 102.4 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 150.5 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 130.8 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 75.4 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 17.6 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 9.7 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +32000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +32000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.2 +32000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 6.6 +32000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 13.6 +32000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 60.6 +32000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 125.6 +32000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 67.0 +32000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 51.9 +32000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 234.5 +32000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 876.0 +32000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 640.5 +32000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 169.7 +32000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.4 +32000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.2 +32000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +32000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.4 +32000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 5.5 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 9.4 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 54.0 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.9 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 17.3 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 24.9 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.0 +32000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 109.9 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 65.5 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 12.2 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 11.1 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.1 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 13.8 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 23.1 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 7.3 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.6 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.3 +32000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +32000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +32000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 10.0 +32000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +32000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.3 +32000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 51.6 +32000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 194.1 +32000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 198.5 +32000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 122.3 +32000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.3 +32000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.5 +32000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +32000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +32000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +32000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.3 +32000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 17.7 +32000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 180.3 +32000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 302.0 +32000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 34.5 +32000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.1 +32000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +32000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 45.3 +32000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 96.2 +32000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 54.5 +32000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 26.5 +32000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 8.4 +32000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 42.4 +32000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 10.3 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.2 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.6 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.1 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 69.5 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 16.8 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 26.4 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 9.9 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 25.9 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.0 +32000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.5 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 82.9 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 92.2 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 182.8 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1046.1 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 537.4 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 27.8 +32000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 36.7 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.8 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 41.9 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 48.1 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 68.1 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 292.6 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 739.9 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 706.4 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 518.2 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 39.2 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 19.1 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.0 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 23.4 +32000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.8 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 42.6 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 85.1 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 45.5 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 849.7 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3002.1 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1997.5 +32000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 10.9 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 8.8 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 253.5 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 572.9 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 496.1 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 251.2 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 99.1 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 20.5 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 35.7 +32000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +32000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.3 +32000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 374.9 +32000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 831.2 +32000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1626.4 +32000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 643.1 +32000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3531.5 +32000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2321.6 +32000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 58.5 +32000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +32000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 7.9 +32000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 13.5 +32000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 32.3 +32000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 10.6 +32000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.0 +32000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 8.4 +32000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +32000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 15.9 +32000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 15.2 +32000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 10.9 +32000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 12.6 +32000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.8 +32000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.3 +32000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 8.6 +32000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.1 +32000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.5 +32000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +32000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.3 +32000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 6.6 +32000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.6 +32000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 6.4 +32000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 6.3 +32000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 44.0 +32000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 39.3 +32000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 94.9 +32000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 17.3 +32000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +32000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.1 +32000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.3 +32000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 2.3 +32000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 32.0 +32000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 39.8 +32000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 9.4 +32000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 66.9 +32000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 23.8 +32000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.3 +32000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +32000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +32000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +32000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.4 +32000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 50.5 +32000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 50.9 +32000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 18.3 +32000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 3.0 +32000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 3.8 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.8 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 5.2 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 12.5 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 8.4 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 8.1 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 30.0 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 33.7 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 9.0 +32000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.2 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 5.9 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.1 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.7 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.3 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 4.0 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 1.4 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 11.2 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 34.9 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 49.6 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 15.5 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 1.6 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.3 +32000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.9 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 4.7 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 1.4 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 6.6 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 2.5 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.3 +32000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +32000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 47.6 +32000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 146.3 +32000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 137.2 +32000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 35.2 +32000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 257.8 +32000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 991.7 +32000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +32000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 6.4 +32000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 11.1 +32000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 17.8 +32000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 29.6 +32000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.9 +32000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 4.2 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.0 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +32000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +32000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +32000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.9 +32000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.1 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 4.2 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 117.9 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1636.8 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 793.4 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 177.2 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 291.0 +32000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 62.2 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.5 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 28.8 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 718.6 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 12.5 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 7.2 +32000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 10.9 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.7 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 28.3 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 105.7 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 467.1 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 147.9 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 89.3 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 75.7 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 17.1 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.8 +32000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 16.8 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 21.9 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 40.3 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 19.6 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 20.6 +32000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 17.2 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.5 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 4.2 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 3.5 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.9 +32000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +32000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.2 +32000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.6 +32000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +32000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 143.6 +32000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 386.2 +32000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 220.7 +32000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 349.4 +32000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 307.9 +32000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 513.1 +32000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 442.3 +32000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 228.9 +32000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +32000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 24.1 +32000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 221.3 +32000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 263.9 +32000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 13.6 +32000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.3 +32000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 5.8 +32000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 2.1 +32000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 1.8 +32000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +32000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.5 +32000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 2.9 +32000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 1.3 +32000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.8 +32000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 2.2 +32000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 13.5 +32000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 26.0 +32000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 28.3 +32000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 7.7 +32000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +32000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +32000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +32000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 16.3 +32000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 77.0 +32000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 15.2 +32000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.7 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.5 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1.8 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 1.0 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.6 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 4.6 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 5.8 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 14.3 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 14.5 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 6.1 +32000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +32000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +32000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +32000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 1.2 +32000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 2.6 +32000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 1.0 +32000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 4.1 +32000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 19.4 +32000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 10.2 +32000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 2.9 +32000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.2 +32000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +32000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 357.2 +32000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 356.7 +32000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 274.9 +32000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 432.9 +32000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 716.5 +32000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 97.9 +32000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 361.1 +32000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 439.4 +32000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 150.0 +32000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 83.4 +32000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 43.3 +32000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +32000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +32000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +32000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +32000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +32000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +32000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 61.5 +32000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 147.8 +32000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 37.1 +32000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 29.5 +32000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 51.3 +32000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 14.5 +32000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 98.5 +32000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 109.6 +32000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 48.3 +32000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 12.1 +32000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 6.1 +32000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +32000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +32000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +32000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +32000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +32000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.1 +32000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 5.1 +32000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.7 +32000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.1 +32000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 39.3 +32000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 27.2 +32000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 174.3 +32000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 227.0 +32000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 26.0 +32000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 23.4 +32000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 6.7 +32000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +32000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +32000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +32000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +32000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +32000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +32000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 22.7 +32000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 125.8 +32000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 183.1 +32000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 113.6 +32000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 314.8 +32000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 228.7 +32000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 100.4 +32000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 5.2 +32000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +32000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +32000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 4.0 +32000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 33.8 +32000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 38.8 +32000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 48.5 +32000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 46.4 +32000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 5.8 +32000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 19.5 +32000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 5.5 +32000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 18.1 +32000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 14.7 +32000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 2.2 +32000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.0 +32000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.5 +32000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.2 +32000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.4 +32000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 3.5 +32000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 5.1 +32000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.6 +32000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 7.7 +32000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 8.9 +32000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 2.4 +32000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.3 +32000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +32000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +32000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.2 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 1.7 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 2.4 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.2 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.1 +32000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +32000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 27.6 +32000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +32000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.3 +32000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.0 +32000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.4 +32000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 28.8 +32000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 52.5 +32000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 155.1 +32000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 52.1 +32000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 60.8 +32000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.5 +32000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +32000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.2 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.5 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.0 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.4 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.2 +32000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +32000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 854.0 +32000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 3185.5 +32000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 4797.8 +32000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1066.7 +32000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 2100.9 +32000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 4058.3 +32000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 3121.9 +32000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 5221.0 +32000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 3546.6 +32000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 7934.2 +32000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 7122.2 +32000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 3.4 +32000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 3.3 +32000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 31.3 +32000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +32000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 33.2 +32000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 13.4 +32000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 296.8 +32000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1097.8 +32000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 4067.1 +32000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 267.6 +32000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 3.7 +32000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 2.7 +32000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.6 +32000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 6.8 +32000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 60.0 +32000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +32000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1438.0 +32000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 5337.4 +32000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 2143.5 +32000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 36.2 +32000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 44.0 +32000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 21.6 +32000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 47.8 +32000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 26.1 +32000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 4.8 +32000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 42.4 +32000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 35.7 +32000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 292.4 +32000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 480.7 +32000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 354.6 +32000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 14.0 +32000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 26.5 +32000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 2.2 +32000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 7.6 +32000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 4.6 +32000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 47.3 +32000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +32000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.6 +32000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.6 +32000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.9 +32000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 3.4 +32000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 5.3 +32000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 9.6 +32000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 9.0 +32000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 37.9 +32000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 14.0 +32000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.4 +32000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.6 +32000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +32000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.2 +32000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +32000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.6 +32000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 18.5 +32000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 75.9 +32000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.4 +32000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 3.5 +32000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.1 +32000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +32000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.1 +32000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/NY.POP b/NONROAD/NR08a/DATA/POP/NY.POP new file mode 100644 index 0000000..e9ed76c --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/NY.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 36000 NY New York 7,732,253.4 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +36000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 464.3 +36000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 273.9 +36000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 294.1 +36000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 23437.7 +36000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 23657.6 +36000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 10618.4 +36000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 37408.6 +36000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 15374.6 +36000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 4005.4 +36000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 28242.5 +36000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 13910.5 +36000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 14274.2 +36000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 123533.7 +36000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 9990.9 +36000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 21720.1 +36000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 6.5 +36000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 3.7 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 11.0 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 446.0 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 844.7 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 6654.4 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 68.0 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.6 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 164.2 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.3 +36000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 62.2 +36000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 68.0 +36000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.6 +36000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 164.2 +36000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.3 +36000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 62.2 +36000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 29.1 +36000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 202.5 +36000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 9.4 +36000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 73.4 +36000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 12.4 +36000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 13.7 +36000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 12.4 +36000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 13.7 +36000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 6059.9 +36000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 13.2 +36000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 569.4 +36000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2889.3 +36000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 889.5 +36000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 157.7 +36000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 219.0 +36000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 39.1 +36000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 101.8 +36000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 12.0 +36000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 8.3 +36000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 5.7 +36000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 12.0 +36000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 8.3 +36000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 5.7 +36000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 545.4 +36000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1595.2 +36000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1352.8 +36000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 677.6 +36000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 477.4 +36000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 19.4 +36000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.7 +36000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 19.4 +36000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.7 +36000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 236.9 +36000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 364.8 +36000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 105.5 +36000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 44.5 +36000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.4 +36000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.6 +36000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 4.4 +36000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.6 +36000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.5 +36000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 26.8 +36000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 26.7 +36000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 1.0 +36000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 1.1 +36000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 414.7 +36000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 406.0 +36000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 145.1 +36000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 165.4 +36000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 27.5 +36000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 23.3 +36000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 18.3 +36000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 27.5 +36000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 23.3 +36000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 18.3 +36000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 171.1 +36000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 3501.3 +36000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 141.6 +36000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 43.3 +36000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 54.9 +36000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 36.1 +36000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 14.5 +36000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 13.2 +36000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.9 +36000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 14.5 +36000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 13.2 +36000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 21.9 +36000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 447.7 +36000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 2145.6 +36000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 1103.2 +36000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 231.3 +36000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 101.7 +36000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 28.0 +36000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 15.2 +36000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 28.0 +36000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 15.2 +36000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 60.7 +36000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 3402.7 +36000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 5684.7 +36000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 192.9 +36000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 147.8 +36000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 5.8 +36000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 8.1 +36000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.9 +36000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +36000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 20.3 +36000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 3.3 +36000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +36000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 20.3 +36000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 3.3 +36000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 54.7 +36000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 77.0 +36000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 140.4 +36000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 36.0 +36000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.5 +36000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 4.5 +36000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.3 +36000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.3 +36000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +36000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 28.7 +36000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +36000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.4 +36000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 4.3 +36000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +36000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 28.7 +36000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.2 +36000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 3.4 +36000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +36000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 57.4 +36000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.9 +36000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.2 +36000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 57.4 +36000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.9 +36000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 14.1 +36000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 293.6 +36000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.1 +36000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 5.1 +36000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +36000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 1.1 +36000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 5.1 +36000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.6 +36000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 11.6 +36000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 233.2 +36000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 66.2 +36000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 36.5 +36000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 39.1 +36000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 66.2 +36000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 36.5 +36000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 39.1 +36000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 205.7 +36000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 678.7 +36000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 102.2 +36000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 124.8 +36000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 4.8 +36000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.8 +36000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 24.3 +36000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 23.2 +36000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 1.1 +36000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 98.2 +36000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 27.3 +36000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 630.1 +36000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 278.6 +36000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 580.4 +36000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 12.9 +36000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 278.6 +36000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 580.4 +36000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 12.9 +36000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 73.9 +36000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 263.8 +36000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 424.9 +36000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 31.0 +36000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 197.5 +36000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.0 +36000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1403.4 +36000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 3067.5 +36000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 8073.3 +36000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 589.6 +36000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 3752.1 +36000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 18.4 +36000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1943.9 +36000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 148.0 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 169.5 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 259.4 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 70.2 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 150.3 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 90.3 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 102.0 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 103.5 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.0 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.1 +36000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 90.3 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 102.0 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 103.5 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.0 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.1 +36000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +36000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.9 +36000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 7.0 +36000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 2872.6 +36000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 542.8 +36000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 276.4 +36000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 233.6 +36000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 20.9 +36000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 29.0 +36000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.7 +36000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 11.0 +36000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +36000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 20.9 +36000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 29.0 +36000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 3.6 +36000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 11.0 +36000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +36000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.1 +36000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.5 +36000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 57.1 +36000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 34.7 +36000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.3 +36000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 34.7 +36000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.3 +36000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 1.5 +36000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 2.3 +36000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 71.0 +36000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 8.0 +36000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 2.7 +36000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.5 +36000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 18.4 +36000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 8.4 +36000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 33.1 +36000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +36000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.5 +36000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 17.4 +36000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 6.6 +36000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 32.7 +36000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +36000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.0 +36000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.8 +36000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.4 +36000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +36000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 41433.9 +36000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 2059206.6 +36000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 678.9 +36000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 913.6 +36000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 45402.5 +36000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 15.0 +36000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 3842.2 +36000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 27162.4 +36000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 192892.7 +36000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 304.4 +36000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2151.9 +36000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 15281.4 +36000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 335085.6 +36000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +36000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 4920.4 +36000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 17312.4 +36000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 250466.9 +36000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 634299.2 +36000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +36000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +36000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 51910.9 +36000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 3686.4 +36000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 14464.9 +36000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +36000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +36000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +36000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 814.3 +36000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 217.8 +36000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 11.5 +36000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 25.0 +36000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 37082.1 +36000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 411806.6 +36000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +36000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +36000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 15752.6 +36000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 5868.6 +36000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 23335.2 +36000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +36000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +36000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 898.3 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 8785.3 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 276.7 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 301.1 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 22.9 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 156.3 +36000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 155.1 +36000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 113286.4 +36000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 173476.8 +36000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 292664.8 +36000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 13678.7 +36000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 7087.3 +36000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 10852.9 +36000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 18309.4 +36000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 855.7 +36000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 452.4 +36000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 65457.1 +36000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 50761.6 +36000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 240.1 +36000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 5.7 +36000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 829.6 +36000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 643.4 +36000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.1 +36000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 858.5 +36000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 2932.4 +36000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1296.5 +36000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 19.5 +36000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3145.6 +36000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 6156.3 +36000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1616.4 +36000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 50678.7 +36000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 563109.2 +36000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 183530.2 +36000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 20.5 +36000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 642.3 +36000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 7136.7 +36000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2326.0 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.1 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 51.8 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 213.6 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 402.6 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 30.4 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 129.7 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +36000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 31.0 +36000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 30.4 +36000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 129.7 +36000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.2 +36000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 31.0 +36000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 3.7 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 10596.2 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 2818.6 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 6289.9 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 8198.5 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1624.4 +36000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 14.0 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1651.0 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 7149.4 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 18220.7 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 12039.5 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 176.3 +36000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 115.5 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 931.4 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4033.2 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 10278.7 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 6791.8 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 99.5 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 65.2 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 6.4 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.2 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.8 +36000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.6 +36000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 33.0 +36000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 28.5 +36000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 13.7 +36000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.4 +36000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 16.3 +36000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.8 +36000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +36000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +36000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +36000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 168.6 +36000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 54.0 +36000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.1 +36000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.1 +36000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 78.1 +36000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.1 +36000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 23.9 +36000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 286.2 +36000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 266.8 +36000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1039.0 +36000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 378.9 +36000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 130.2 +36000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 220.5 +36000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 53.7 +36000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 20.2 +36000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 21.1 +36000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 20.7 +36000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 9136.7 +36000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 22.8 +36000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 91.1 +36000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 51.6 +36000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 19.6 +36000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 95.4 +36000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 56.7 +36000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 50.2 +36000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.0 +36000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 6.5 +36000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.0 +36000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 37.8 +36000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 15.8 +36000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.0 +36000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.7 +36000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 9.7 +36000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.7 +36000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +36000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.1 +36000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 12.8 +36000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 5.9 +36000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.7 +36000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +36000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.2 +36000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 16.7 +36000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 23.7 +36000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.3 +36000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.7 +36000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +36000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 330.4 +36000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 8202.1 +36000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 57702.9 +36000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 138562.1 +36000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 30649.2 +36000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 43856.5 +36000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +36000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +36000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +36000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +36000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +36000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +36000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 4061.5 +36000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 30.5 +36000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 1894.3 +36000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 1684.8 +36000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 632.0 +36000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 14.6 +36000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 2.4 +36000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 38.4 +36000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 65.0 +36000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 1297.8 +36000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 436.8 +36000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 150.8 +36000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 61.7 +36000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 31.2 +36000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 10386.2 +36000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 18765.0 +36000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 11.4 +36000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 2.4 +36000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 26892.3 +36000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 16867.4 +36000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 1633.8 +36000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 952.0 +36000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 827.7 +36000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 7.7 +36000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 385.1 +36000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 25.6 +36000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 59.4 +36000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 800.6 +36000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 7.7 +36000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 384.8 +36000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 25.6 +36000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 55.6 +36000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 27.2 +36000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.3 +36000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 3.8 +36000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 4.3 +36000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 4.5 +36000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 4.8 +36000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 4262.1 +36000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 3978.4 +36000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 488.0 +36000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 528.9 +36000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 77.4 +36000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 428.4 +36000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 91.2 +36000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 42.7 +36000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 77.4 +36000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 416.0 +36000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 91.2 +36000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 22.8 +36000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 12.3 +36000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 19.9 +36000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 12.6 +36000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 7.5 +36000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 2.0 +36000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 22.1 +36000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 3.7 +36000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 9.5 +36000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 3.1 +36000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 563.5 +36000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 2185.2 +36000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 8055.2 +36000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 2687.2 +36000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 634.3 +36000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 56.3 +36000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 12.7 +36000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 634.3 +36000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 56.3 +36000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 12.7 +36000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 13.4 +36000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 71155.7 +36000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 44006.0 +36000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 13054.9 +36000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 2455.0 +36000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 41.6 +36000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 3.2 +36000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.1 +36000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 41.6 +36000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 3.2 +36000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.1 +36000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 103.8 +36000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 493.9 +36000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 447.4 +36000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 352.5 +36000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 360.8 +36000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 5.4 +36000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 2.3 +36000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 5.3 +36000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.1 +36000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 5.4 +36000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 2.3 +36000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 5.3 +36000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.1 +36000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.1 +36000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 443.8 +36000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 2817.9 +36000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 155.9 +36000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 50.5 +36000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 4.9 +36000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 2.0 +36000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 54.2 +36000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 6.2 +36000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 21.9 +36000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 1.1 +36000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.3 +36000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.4 +36000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.4 +36000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 5.9 +36000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 17.3 +36000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 1.3 +36000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.4 +36000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 1.4 +36000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 5.9 +36000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 17.3 +36000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 9.3 +36000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 17.0 +36000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 11.3 +36000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +36000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 11.1 +36000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.5 +36000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 4.7 +36000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.2 +36000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.5 +36000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 30.9 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 1123.1 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 776.5 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 2.6 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 16.5 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 16.3 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 137.5 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 121.1 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 53.5 +36000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 2.0 +36000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 4.0 +36000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 97.4 +36000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 9.0 +36000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 184.8 +36000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 115.1 +36000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 252.1 +36000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 177.0 +36000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 22.8 +36000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 95.3 +36000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 477.2 +36000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 213.2 +36000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 129.7 +36000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 12.0 +36000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 51.4 +36000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 96.5 +36000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 115.5 +36000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 207.2 +36000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 295.5 +36000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 273.9 +36000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 277.4 +36000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 759.1 +36000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 703.8 +36000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 240.3 +36000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 71.3 +36000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +36000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 19.1 +36000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 220.1 +36000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 285.0 +36000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 132.2 +36000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.2 +36000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 41.1 +36000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 46.1 +36000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 3.5 +36000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 23.8 +36000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 31.6 +36000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +36000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 31.0 +36000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 36.6 +36000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 66.8 +36000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 20.7 +36000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.9 +36000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.7 +36000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 2.4 +36000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 35.5 +36000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 29.8 +36000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 10.3 +36000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.5 +36000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 28.2 +36000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 8.6 +36000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.4 +36000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 8.7 +36000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.8 +36000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.8 +36000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +36000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.6 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 77.2 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 181.8 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 97.1 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1537.8 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 471.8 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.8 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 33.7 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 19.6 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 15.6 +36000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.8 +36000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +36000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +36000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.8 +36000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.9 +36000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 212.6 +36000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 530.1 +36000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 881.9 +36000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 356.2 +36000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 110.7 +36000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 73.9 +36000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 37.6 +36000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 3.3 +36000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.4 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 2.2 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 3.4 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 7.7 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 131.0 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 133.3 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 216.0 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 219.6 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 322.8 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 280.7 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 161.7 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 37.8 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 20.7 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.4 +36000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.7 +36000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.6 +36000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 14.2 +36000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 29.2 +36000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 130.1 +36000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 269.5 +36000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 143.7 +36000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 111.5 +36000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 503.1 +36000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1879.8 +36000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1374.3 +36000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 364.1 +36000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 11.6 +36000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 13.4 +36000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +36000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 5.1 +36000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 11.8 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 20.2 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 116.0 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 4.2 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 37.2 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 53.5 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 6.5 +36000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.2 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 235.8 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 140.5 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 26.1 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 23.8 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 17.3 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 29.7 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 49.6 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 15.7 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 5.6 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 7.0 +36000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.4 +36000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +36000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 21.5 +36000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.3 +36000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 11.4 +36000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 110.6 +36000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 416.5 +36000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 426.0 +36000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 262.4 +36000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 11.3 +36000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 3.2 +36000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +36000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +36000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.6 +36000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 4.9 +36000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 37.9 +36000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 387.0 +36000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 648.1 +36000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 74.1 +36000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 4.5 +36000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 1.0 +36000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 97.3 +36000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 206.5 +36000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 116.9 +36000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 56.8 +36000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 18.0 +36000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 90.9 +36000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 22.1 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.5 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 3.4 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 13.1 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 149.2 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 36.1 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 56.5 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 21.3 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 55.5 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 4.2 +36000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.3 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.6 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 7.6 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 177.8 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 197.9 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 392.3 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 2244.8 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 1153.1 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 59.8 +36000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 78.7 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.8 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 89.9 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 103.3 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 146.0 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 627.9 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1587.7 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1515.7 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 1112.0 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 84.0 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 40.9 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 8.5 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 50.2 +36000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.8 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 91.4 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 182.7 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 97.6 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1823.4 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 6441.9 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 4286.3 +36000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 23.3 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 18.9 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 544.0 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 1229.4 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 1064.6 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 539.1 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 212.7 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 44.0 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 76.5 +36000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +36000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 4.9 +36000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 804.4 +36000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1783.5 +36000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 3489.9 +36000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1380.0 +36000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 7577.9 +36000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 4981.7 +36000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 125.5 +36000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +36000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 17.0 +36000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 28.9 +36000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 69.2 +36000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 22.7 +36000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 2.2 +36000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 17.9 +36000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.4 +36000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 34.1 +36000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 32.6 +36000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 23.3 +36000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 27.1 +36000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 5.9 +36000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.8 +36000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 18.4 +36000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 6.7 +36000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 1.1 +36000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.5 +36000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 5.0 +36000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 14.2 +36000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.3 +36000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 13.8 +36000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 13.6 +36000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 94.4 +36000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 84.3 +36000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 203.6 +36000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 37.1 +36000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.2 +36000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.5 +36000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 5.5 +36000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 36.5 +36000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 511.9 +36000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 635.8 +36000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 150.4 +36000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1068.6 +36000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 379.8 +36000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 4.6 +36000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.7 +36000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +36000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.8 +36000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 21.8 +36000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 806.8 +36000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 812.8 +36000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 291.9 +36000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 47.5 +36000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 60.6 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 13.6 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.6 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 82.8 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 199.1 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 134.4 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 130.1 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 479.1 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 537.9 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 144.6 +36000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.5 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 94.6 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 17.9 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 11.5 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 20.1 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 63.5 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 23.1 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 179.0 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 557.5 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 793.0 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 247.4 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 25.3 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 4.2 +36000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 15.1 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 75.9 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 22.9 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 105.3 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 40.1 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 5.5 +36000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +36000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 420.3 +36000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 1292.2 +36000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 1211.6 +36000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 310.7 +36000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 2277.3 +36000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 8759.1 +36000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +36000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +36000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +36000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.5 +36000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +36000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +36000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 102.1 +36000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 177.2 +36000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 284.6 +36000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 473.8 +36000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 14.5 +36000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 8.6 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.1 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +36000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +36000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.4 +36000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 12.4 +36000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 15.5 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 8.7 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 243.1 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3373.2 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1635.0 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 365.2 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 599.7 +36000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 128.2 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.0 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 59.3 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1481.0 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 25.7 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 14.8 +36000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 22.6 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.3 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 5.5 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 58.4 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 217.9 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 962.6 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 304.8 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 184.0 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 156.1 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 35.3 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 5.8 +36000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.7 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 34.6 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 45.0 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 83.0 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 40.3 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.7 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 42.4 +36000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 35.5 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.0 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 8.6 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 7.1 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.9 +36000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.3 +36000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.1 +36000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 4.4 +36000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +36000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1005.8 +36000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2705.2 +36000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1545.7 +36000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2447.5 +36000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2157.1 +36000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 3594.3 +36000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3098.7 +36000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1603.4 +36000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +36000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 169.0 +36000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1550.2 +36000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1848.6 +36000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 95.5 +36000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.9 +36000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 40.3 +36000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 14.9 +36000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 12.6 +36000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.6 +36000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 3.8 +36000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 20.2 +36000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 9.2 +36000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 5.7 +36000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 15.4 +36000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 94.4 +36000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 182.2 +36000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 198.0 +36000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 53.6 +36000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +36000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +36000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +36000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 114.1 +36000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 539.3 +36000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 106.5 +36000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 4.8 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 3.5 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 12.9 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 6.8 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.1 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 32.2 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 40.3 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 100.4 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 101.6 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 42.6 +36000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +36000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +36000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +36000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 8.1 +36000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 18.5 +36000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 7.3 +36000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 28.8 +36000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 136.0 +36000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 71.3 +36000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 20.3 +36000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.4 +36000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +36000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 4921.5 +36000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 4914.0 +36000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 3787.6 +36000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 5963.9 +36000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 9871.5 +36000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 1348.3 +36000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 4974.8 +36000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 6054.4 +36000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 2066.5 +36000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 1149.0 +36000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 596.7 +36000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +36000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +36000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +36000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +36000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +36000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 2.2 +36000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 847.3 +36000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 2036.9 +36000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 511.0 +36000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 406.5 +36000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 707.0 +36000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 200.4 +36000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 1356.4 +36000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 1509.7 +36000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 665.7 +36000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 166.8 +36000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 84.5 +36000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +36000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +36000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +36000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +36000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +36000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 28.8 +36000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 70.4 +36000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 9.5 +36000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 14.6 +36000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 541.2 +36000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 374.6 +36000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 2400.9 +36000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 3127.1 +36000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 358.6 +36000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 321.8 +36000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 92.0 +36000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +36000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +36000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +36000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +36000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.1 +36000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +36000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 312.8 +36000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 1733.3 +36000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 2523.2 +36000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 1564.8 +36000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 4337.7 +36000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 3150.6 +36000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 1383.3 +36000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 72.0 +36000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 1.6 +36000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +36000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 54.7 +36000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 466.2 +36000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 535.1 +36000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 668.2 +36000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 638.6 +36000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 80.0 +36000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 268.6 +36000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 75.1 +36000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 249.5 +36000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 201.9 +36000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 30.9 +36000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 14.4 +36000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 7.3 +36000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 16.4 +36000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 5.2 +36000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 48.1 +36000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 69.7 +36000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 22.0 +36000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 106.7 +36000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 123.3 +36000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 33.3 +36000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 4.3 +36000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 1.0 +36000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +36000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.3 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.4 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 17.9 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 124.4 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 178.3 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 15.4 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 6.3 +36000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +36000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 67.9 +36000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.2 +36000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.9 +36000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 2.5 +36000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 3.4 +36000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 71.0 +36000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 129.4 +36000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 382.2 +36000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 128.3 +36000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 149.9 +36000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 15.9 +36000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.9 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +36000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.5 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.3 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 2.4 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.4 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 5.1 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 2.6 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 3.7 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 2.4 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 1.0 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.4 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.5 +36000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +36000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 10161.4 +36000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 37904.1 +36000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 57089.2 +36000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 12692.8 +36000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 24999.0 +36000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 48289.9 +36000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 37147.2 +36000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 62124.9 +36000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 42201.8 +36000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 94409.5 +36000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 84748.2 +36000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 40.4 +36000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 39.0 +36000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 372.2 +36000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.7 +36000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 395.3 +36000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 159.3 +36000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 3531.9 +36000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 13063.2 +36000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 48395.2 +36000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 3184.0 +36000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 44.4 +36000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 31.8 +36000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 18.8 +36000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 81.2 +36000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 713.7 +36000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +36000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 17110.7 +36000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 63510.0 +36000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 25505.7 +36000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 430.3 +36000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 523.6 +36000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 256.9 +36000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 568.5 +36000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 311.0 +36000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 57.5 +36000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 504.0 +36000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 424.4 +36000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 3478.8 +36000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 5720.4 +36000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 4219.6 +36000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 166.5 +36000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 315.7 +36000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 25.7 +36000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 90.3 +36000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 55.3 +36000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 563.4 +36000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +36000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.1 +36000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.2 +36000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.7 +36000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 6.3 +36000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 9.9 +36000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 18.1 +36000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 16.8 +36000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 71.1 +36000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 26.2 +36000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 4.4 +36000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.1 +36000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +36000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.4 +36000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +36000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.1 +36000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 34.6 +36000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 142.4 +36000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.6 +36000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 6.5 +36000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.0 +36000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +36000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.0 +36000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/OH.POP b/NONROAD/NR08a/DATA/POP/OH.POP new file mode 100644 index 0000000..67a00e9 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/OH.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 39000 OH Ohio 5,121,989.1 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +39000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 97.1 +39000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 57.3 +39000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 61.5 +39000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 4900.6 +39000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 4946.6 +39000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 2220.2 +39000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 7821.8 +39000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 3214.7 +39000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 837.5 +39000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 31086.4 +39000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 15311.2 +39000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 15711.6 +39000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 135972.9 +39000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 9575.8 +39000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 12941.1 +39000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 3.8 +39000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 2.2 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 6.5 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 265.7 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 503.3 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 3964.7 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 40.5 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.0 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 97.8 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.8 +39000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 37.0 +39000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 40.5 +39000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.0 +39000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 97.8 +39000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.8 +39000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 37.0 +39000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 23.2 +39000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 161.5 +39000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 7.5 +39000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 58.5 +39000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 9.9 +39000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 10.9 +39000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 9.9 +39000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 10.9 +39000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 4832.6 +39000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 10.6 +39000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 454.1 +39000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2304.2 +39000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 709.4 +39000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 125.7 +39000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 174.7 +39000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 31.2 +39000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 81.2 +39000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 9.6 +39000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 6.6 +39000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 4.5 +39000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 9.6 +39000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 6.6 +39000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 4.5 +39000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 434.9 +39000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1272.2 +39000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 1078.8 +39000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 540.3 +39000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 380.7 +39000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 15.5 +39000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.4 +39000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 15.5 +39000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.4 +39000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 188.9 +39000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 290.9 +39000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 84.1 +39000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 35.5 +39000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.5 +39000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.3 +39000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.5 +39000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.3 +39000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.2 +39000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 21.3 +39000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 21.3 +39000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.8 +39000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.9 +39000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 330.7 +39000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 323.8 +39000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 115.7 +39000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 131.9 +39000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 22.0 +39000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 18.6 +39000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 14.6 +39000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 22.0 +39000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 18.6 +39000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 14.6 +39000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 136.4 +39000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2792.2 +39000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 112.9 +39000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 34.5 +39000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 43.8 +39000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 28.8 +39000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 11.6 +39000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 10.5 +39000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 17.5 +39000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 11.6 +39000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 10.5 +39000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 17.5 +39000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 357.1 +39000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1711.1 +39000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 879.8 +39000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 184.5 +39000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 81.1 +39000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 22.3 +39000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 12.1 +39000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 22.3 +39000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 12.1 +39000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 48.4 +39000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2713.6 +39000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 4533.5 +39000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 153.8 +39000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 117.9 +39000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 4.6 +39000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 6.5 +39000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.3 +39000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +39000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 16.2 +39000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.6 +39000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +39000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 16.2 +39000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.6 +39000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 43.7 +39000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 61.4 +39000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 112.0 +39000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 28.7 +39000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.6 +39000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.6 +39000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 1.0 +39000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.5 +39000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +39000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 22.9 +39000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +39000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.7 +39000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.5 +39000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +39000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 22.9 +39000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +39000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.7 +39000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.0 +39000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 45.8 +39000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.5 +39000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 1.0 +39000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 45.8 +39000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.5 +39000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 11.2 +39000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 234.1 +39000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.9 +39000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.1 +39000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +39000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.9 +39000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 4.1 +39000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +39000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 9.2 +39000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 186.0 +39000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 52.8 +39000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 29.1 +39000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 31.2 +39000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 52.8 +39000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 29.1 +39000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 31.2 +39000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 164.0 +39000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 541.2 +39000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 81.5 +39000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 99.5 +39000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 3.9 +39000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.6 +39000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 19.4 +39000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 18.5 +39000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.9 +39000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 131.4 +39000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 36.5 +39000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 842.7 +39000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 372.7 +39000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 776.3 +39000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 17.2 +39000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 372.7 +39000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 776.3 +39000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 17.2 +39000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 98.8 +39000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 352.8 +39000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 568.3 +39000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 41.5 +39000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 264.1 +39000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.3 +39000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1876.9 +39000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 4102.5 +39000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 10797.4 +39000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 788.6 +39000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 5018.1 +39000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 24.6 +39000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 2599.8 +39000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 198.0 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 226.7 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 346.9 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 93.8 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 201.0 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 120.7 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 136.5 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 138.4 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.4 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.8 +39000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.2 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 120.7 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 136.5 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 138.4 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.4 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.8 +39000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.2 +39000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 1.2 +39000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 9.4 +39000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 3841.9 +39000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 725.9 +39000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 369.7 +39000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 312.5 +39000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 27.9 +39000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 38.8 +39000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 6.2 +39000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 14.8 +39000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.5 +39000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 27.9 +39000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 38.8 +39000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.8 +39000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 14.8 +39000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.5 +39000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.4 +39000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 2.0 +39000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 76.3 +39000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 46.4 +39000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.7 +39000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 46.4 +39000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.7 +39000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.9 +39000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.4 +39000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 42.3 +39000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 4.8 +39000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.6 +39000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.7 +39000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 24.6 +39000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 11.3 +39000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 44.3 +39000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.5 +39000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.7 +39000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 23.3 +39000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 8.8 +39000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 43.8 +39000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +39000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.4 +39000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 2.5 +39000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.5 +39000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.5 +39000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 26029.3 +39000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 1293622.8 +39000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 426.5 +39000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 1312.5 +39000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 65229.7 +39000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 21.5 +39000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 2413.7 +39000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 17063.8 +39000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 121177.9 +39000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 437.3 +39000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 3091.6 +39000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 21954.7 +39000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 210505.5 +39000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +39000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 7069.1 +39000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 24872.6 +39000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 157346.8 +39000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 398475.8 +39000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +39000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +39000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 74580.2 +39000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 5296.3 +39000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 9087.0 +39000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +39000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +39000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +39000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 1169.9 +39000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 312.9 +39000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 16.6 +39000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 35.9 +39000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 23295.5 +39000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 258702.7 +39000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +39000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +39000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 22631.7 +39000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 8431.4 +39000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 14659.5 +39000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +39000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +39000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 1290.6 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 12621.9 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 397.6 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 432.5 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 32.9 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 224.6 +39000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 222.8 +39000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 71168.1 +39000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 108980.6 +39000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 183856.2 +39000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 8593.2 +39000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 10182.3 +39000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 15592.3 +39000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 26305.1 +39000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 1229.4 +39000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 284.2 +39000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 41121.1 +39000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 31889.1 +39000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 150.8 +39000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 8.3 +39000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 1191.8 +39000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 924.3 +39000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 4.4 +39000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 1233.4 +39000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 4212.9 +39000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1862.7 +39000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 28.0 +39000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 4519.3 +39000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 8844.8 +39000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1015.4 +39000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 31837.1 +39000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 353753.2 +39000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 115296.3 +39000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 29.4 +39000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 922.8 +39000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 10253.3 +39000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 3341.8 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.5 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 74.5 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 306.9 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 578.4 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 43.6 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 186.3 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.7 +39000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 44.6 +39000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 43.6 +39000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 186.3 +39000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.7 +39000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 44.6 +39000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 5.3 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 15223.5 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 4049.4 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 9036.7 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 11778.8 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 2333.8 +39000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 20.1 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1037.2 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 4491.4 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 11446.5 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 7563.4 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 110.8 +39000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 72.6 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 1338.1 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 5794.5 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 14767.4 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 9757.8 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 142.9 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 93.7 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 9.1 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 3.2 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 1.1 +39000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 3.7 +39000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 86.1 +39000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 74.3 +39000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 35.7 +39000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 3.7 +39000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 42.7 +39000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 4.8 +39000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +39000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.3 +39000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.7 +39000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 440.0 +39000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 140.9 +39000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 16.0 +39000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.9 +39000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 203.9 +39000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 3.0 +39000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 62.4 +39000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 747.1 +39000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 696.5 +39000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2712.4 +39000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 989.2 +39000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 339.8 +39000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 575.7 +39000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 140.2 +39000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 52.6 +39000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 55.1 +39000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 54.1 +39000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 23852.5 +39000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 59.6 +39000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 237.8 +39000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 134.7 +39000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 51.2 +39000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 249.0 +39000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 148.0 +39000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 131.1 +39000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 10.4 +39000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 16.9 +39000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.7 +39000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 98.8 +39000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 41.3 +39000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.7 +39000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 4.4 +39000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 25.2 +39000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 6.9 +39000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +39000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 15.8 +39000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 33.4 +39000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 15.5 +39000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 7.1 +39000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.4 +39000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 8.2 +39000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 43.6 +39000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 62.0 +39000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 6.1 +39000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 7.1 +39000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.5 +39000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 150.3 +39000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 3730.0 +39000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 26240.7 +39000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 63011.8 +39000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 13937.9 +39000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 19943.9 +39000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +39000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +39000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +39000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +39000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +39000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +39000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1847.0 +39000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 13.9 +39000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 861.5 +39000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 766.1 +39000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 287.4 +39000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 6.6 +39000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 1.1 +39000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 17.5 +39000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 29.6 +39000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 590.2 +39000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 198.6 +39000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 68.6 +39000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 28.0 +39000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 14.2 +39000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 4723.2 +39000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 8533.5 +39000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 5.2 +39000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 1.1 +39000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 12229.4 +39000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 7670.5 +39000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 743.0 +39000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 432.9 +39000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 376.4 +39000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 3.5 +39000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 175.1 +39000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 11.6 +39000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 27.0 +39000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 364.1 +39000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 3.5 +39000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 175.0 +39000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 11.6 +39000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 25.3 +39000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 12.3 +39000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +39000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.7 +39000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 2.0 +39000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 2.0 +39000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 2.2 +39000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1938.2 +39000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1809.2 +39000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 221.9 +39000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 240.5 +39000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 35.2 +39000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 194.8 +39000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 41.5 +39000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 19.4 +39000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 35.2 +39000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 189.2 +39000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 41.5 +39000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 10.4 +39000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 5.6 +39000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 9.0 +39000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 5.7 +39000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 3.4 +39000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.9 +39000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 10.1 +39000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.7 +39000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 4.3 +39000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.4 +39000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 256.3 +39000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 993.7 +39000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 3663.1 +39000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 1222.0 +39000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 288.4 +39000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 25.6 +39000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 5.8 +39000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 288.4 +39000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 25.6 +39000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 5.8 +39000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 6.1 +39000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 32358.4 +39000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 20011.9 +39000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 5936.8 +39000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 1116.4 +39000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 18.9 +39000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.4 +39000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +39000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 18.9 +39000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.4 +39000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +39000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 47.2 +39000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 224.6 +39000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 203.5 +39000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 160.3 +39000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 164.1 +39000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +39000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 1.0 +39000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 2.4 +39000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +39000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +39000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 1.0 +39000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 2.4 +39000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +39000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +39000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 257.2 +39000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1633.3 +39000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 90.3 +39000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 29.3 +39000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.8 +39000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.2 +39000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 15.0 +39000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.7 +39000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 6.1 +39000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.3 +39000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +39000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +39000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +39000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +39000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.8 +39000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +39000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +39000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.4 +39000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.6 +39000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 4.8 +39000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 58.0 +39000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 106.4 +39000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 70.6 +39000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +39000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 69.2 +39000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 9.5 +39000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 29.4 +39000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.1 +39000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 2.9 +39000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 18.4 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 669.1 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 462.6 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.5 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 9.8 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 9.7 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 81.9 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 72.1 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 31.9 +39000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 1.2 +39000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 3.2 +39000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 77.7 +39000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 7.2 +39000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 147.4 +39000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 91.8 +39000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 201.0 +39000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 141.2 +39000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 18.2 +39000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 76.0 +39000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 380.5 +39000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 170.0 +39000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 103.4 +39000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 9.6 +39000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 41.0 +39000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 76.9 +39000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 92.1 +39000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 165.3 +39000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 235.7 +39000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 218.4 +39000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 221.2 +39000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 605.3 +39000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 561.3 +39000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 191.6 +39000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 56.8 +39000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.2 +39000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 15.3 +39000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 175.5 +39000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 227.3 +39000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 105.4 +39000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +39000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 32.8 +39000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 36.8 +39000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.8 +39000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 18.9 +39000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 25.2 +39000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +39000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 24.8 +39000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 29.2 +39000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 53.3 +39000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 16.5 +39000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.7 +39000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.6 +39000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.9 +39000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 28.3 +39000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 23.8 +39000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 8.2 +39000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.4 +39000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 22.5 +39000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 6.9 +39000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.3 +39000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 6.9 +39000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 3.0 +39000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.6 +39000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +39000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.5 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 61.6 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 145.0 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 77.4 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1226.4 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 376.2 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.6 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 26.9 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 15.6 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 12.4 +39000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 3.0 +39000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +39000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +39000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.2 +39000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 3.1 +39000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 169.6 +39000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 422.8 +39000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 703.3 +39000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 284.1 +39000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 88.2 +39000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 58.9 +39000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 30.0 +39000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.6 +39000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.8 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.7 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 6.1 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 104.5 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 106.3 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 172.2 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 175.1 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 257.5 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 223.8 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 129.0 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 30.2 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 16.5 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.3 +39000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.6 +39000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 2.1 +39000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 11.3 +39000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 23.3 +39000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 103.8 +39000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 214.9 +39000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 114.6 +39000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 88.9 +39000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 401.2 +39000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1499.1 +39000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1096.0 +39000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 290.3 +39000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 9.2 +39000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 10.7 +39000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.4 +39000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 4.1 +39000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 9.4 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 16.1 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 92.5 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 3.3 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 29.7 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 42.7 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 5.2 +39000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 188.0 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 112.1 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 20.8 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 18.9 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 13.8 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 23.6 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 39.5 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 12.5 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 4.4 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 5.6 +39000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.1 +39000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +39000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 17.1 +39000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +39000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 9.1 +39000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 88.2 +39000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 332.2 +39000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 339.8 +39000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 209.3 +39000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 9.0 +39000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.6 +39000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +39000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +39000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.5 +39000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 3.9 +39000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 30.2 +39000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 308.6 +39000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 516.9 +39000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 59.1 +39000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 3.6 +39000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.8 +39000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 77.6 +39000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 164.7 +39000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 93.2 +39000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 45.3 +39000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 14.3 +39000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 72.5 +39000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 17.7 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 2.0 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.8 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 10.4 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 119.0 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 28.8 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 45.1 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 17.0 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 44.3 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.4 +39000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.5 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 6.1 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 141.8 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 157.8 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 312.9 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1790.2 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 919.6 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 47.7 +39000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 62.7 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.4 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 71.7 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 82.4 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 116.5 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 500.7 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1266.2 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1208.8 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 886.8 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 67.0 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 32.6 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 6.8 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 40.0 +39000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.4 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.2 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 72.9 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 145.7 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 77.8 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1454.1 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 5137.3 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3418.2 +39000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 18.6 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 15.1 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 433.8 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 980.4 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 849.0 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 429.9 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 169.6 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 35.1 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 61.0 +39000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.3 +39000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 3.9 +39000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 641.5 +39000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1422.3 +39000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2783.1 +39000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1100.5 +39000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 6043.3 +39000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 3972.8 +39000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 100.1 +39000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +39000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 13.5 +39000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 23.1 +39000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 55.2 +39000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 18.1 +39000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.7 +39000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 14.3 +39000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.3 +39000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 27.2 +39000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 26.0 +39000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 18.6 +39000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 21.6 +39000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 4.7 +39000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.2 +39000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 14.7 +39000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 5.3 +39000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.9 +39000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.4 +39000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 3.9 +39000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 11.3 +39000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.0 +39000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 11.0 +39000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 10.9 +39000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 75.3 +39000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 67.2 +39000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 162.4 +39000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 29.6 +39000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +39000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 2.0 +39000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 7.4 +39000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 48.8 +39000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 684.6 +39000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 850.4 +39000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 201.1 +39000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1429.1 +39000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 507.9 +39000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 6.2 +39000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 1.0 +39000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +39000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 2.5 +39000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 29.1 +39000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 1079.0 +39000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 1087.1 +39000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 390.4 +39000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 63.5 +39000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 81.1 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 18.2 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.8 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 110.7 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 266.3 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 179.7 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 174.0 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 640.7 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 719.4 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 193.4 +39000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 3.3 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 126.5 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 23.9 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 15.4 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 26.9 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 84.9 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 30.9 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 239.5 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 745.5 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 1060.6 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 330.9 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 33.8 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 5.6 +39000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 20.2 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 101.5 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 30.6 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 140.8 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 53.6 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 7.4 +39000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +39000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 250.4 +39000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 769.9 +39000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 721.9 +39000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 185.1 +39000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1356.8 +39000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 5218.7 +39000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +39000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +39000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +39000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.7 +39000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.3 +39000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +39000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 136.6 +39000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 237.0 +39000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 380.6 +39000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 633.7 +39000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 19.3 +39000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 12.3 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 3.0 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +39000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +39000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 2.1 +39000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 17.9 +39000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 22.2 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 12.4 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 349.2 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 4846.2 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 2349.0 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 524.7 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 861.7 +39000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 184.2 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.4 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 85.2 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 2127.7 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 36.9 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 21.3 +39000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 32.4 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.5 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 7.9 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 83.9 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 313.0 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1383.0 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 437.9 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 264.4 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 224.2 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 50.8 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 8.3 +39000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 1.0 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 49.8 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 64.7 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 119.2 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 57.9 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 1.0 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 61.0 +39000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 51.0 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.4 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 12.3 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.3 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 10.3 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.8 +39000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.5 +39000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.9 +39000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 11.6 +39000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.3 +39000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 2625.7 +39000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 7062.2 +39000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 4035.3 +39000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 6389.5 +39000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 5631.5 +39000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 9383.4 +39000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 8089.5 +39000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 4185.8 +39000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.4 +39000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 441.2 +39000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 4047.1 +39000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 4825.9 +39000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 249.3 +39000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 4.8 +39000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 105.2 +39000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 38.8 +39000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 33.0 +39000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.6 +39000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 9.9 +39000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 52.6 +39000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 23.9 +39000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 15.0 +39000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 40.2 +39000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 246.4 +39000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 475.7 +39000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 516.9 +39000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 140.0 +39000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.0 +39000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +39000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.4 +39000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 297.9 +39000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1407.8 +39000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 278.1 +39000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 12.4 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.8 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 9.3 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 33.6 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 17.8 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 10.8 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 84.2 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 105.2 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 262.1 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 265.1 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 111.1 +39000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +39000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +39000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +39000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 21.2 +39000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 48.3 +39000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 19.2 +39000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 75.2 +39000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 355.0 +39000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 186.3 +39000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 53.0 +39000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 3.8 +39000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +39000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 2238.1 +39000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 2234.7 +39000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1722.4 +39000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2712.1 +39000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 4489.1 +39000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 613.2 +39000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 2262.3 +39000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2753.3 +39000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 939.8 +39000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 522.5 +39000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 271.4 +39000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +39000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +39000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +39000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +39000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +39000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.0 +39000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 385.3 +39000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 926.3 +39000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 232.4 +39000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 184.8 +39000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 321.5 +39000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 91.1 +39000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 616.8 +39000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 686.5 +39000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 302.7 +39000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 75.9 +39000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 38.4 +39000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +39000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +39000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +39000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +39000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +39000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 13.1 +39000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 32.0 +39000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 4.3 +39000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 6.6 +39000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 246.1 +39000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 170.3 +39000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 1091.8 +39000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1422.1 +39000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 163.1 +39000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 146.4 +39000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 41.8 +39000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +39000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +39000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +39000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +39000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +39000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +39000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 142.2 +39000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 788.2 +39000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 1147.4 +39000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 711.6 +39000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1972.6 +39000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1432.7 +39000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 629.1 +39000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 32.8 +39000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.7 +39000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +39000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 24.9 +39000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 212.0 +39000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 243.3 +39000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 303.9 +39000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 290.4 +39000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 36.4 +39000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 122.2 +39000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 34.2 +39000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 113.5 +39000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 91.8 +39000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 14.0 +39000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 6.6 +39000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 3.3 +39000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 7.5 +39000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 2.3 +39000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 21.9 +39000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 31.7 +39000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 10.0 +39000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 48.5 +39000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 56.1 +39000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 15.1 +39000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 2.0 +39000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.5 +39000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +39000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.2 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.2 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 10.4 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 72.1 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 103.3 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 8.9 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 3.7 +39000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +39000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 18.8 +39000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +39000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.2 +39000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.7 +39000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.0 +39000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 19.7 +39000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 35.9 +39000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 106.1 +39000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 35.6 +39000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 41.6 +39000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 4.4 +39000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.3 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 8.8 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 17.3 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 44.6 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 78.9 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 84.1 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 26.3 +39000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 13.0 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 3.4 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.6 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 15.2 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.2 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 31.7 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 16.1 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 23.4 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 14.8 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 6.1 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 2.7 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 3.3 +39000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +39000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 5947.1 +39000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 22183.7 +39000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 33412.0 +39000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 7428.6 +39000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 14630.9 +39000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 28262.1 +39000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 21740.7 +39000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 36359.1 +39000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 24699.0 +39000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 55254.0 +39000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 49599.6 +39000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 23.6 +39000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 22.8 +39000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 217.9 +39000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.4 +39000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 231.3 +39000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 93.2 +39000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 2067.1 +39000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 7645.4 +39000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 28323.7 +39000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1863.5 +39000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 26.0 +39000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 18.6 +39000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 11.0 +39000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 47.5 +39000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 417.7 +39000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +39000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 10014.2 +39000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 37169.8 +39000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 14927.4 +39000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 251.8 +39000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 306.4 +39000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 150.4 +39000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 332.7 +39000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 182.0 +39000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 33.6 +39000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 295.0 +39000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 248.4 +39000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 2036.0 +39000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 3347.9 +39000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 2469.6 +39000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 97.4 +39000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 184.8 +39000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 15.0 +39000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 52.8 +39000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 32.4 +39000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 329.7 +39000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.5 +39000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 2.4 +39000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 2.7 +39000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 3.8 +39000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 14.1 +39000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 22.1 +39000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 40.4 +39000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 37.6 +39000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 158.9 +39000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 58.5 +39000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 9.9 +39000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 2.5 +39000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.6 +39000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.9 +39000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.3 +39000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 2.4 +39000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 77.4 +39000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 318.2 +39000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 5.7 +39000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 14.6 +39000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 4.5 +39000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +39000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 4.5 +39000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/OK.POP b/NONROAD/NR08a/DATA/POP/OK.POP new file mode 100644 index 0000000..b13b119 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/OK.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 40000 OK Oklahoma 1,558,305.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +40000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +40000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +40000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11576.6 +40000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5701.9 +40000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 5851.0 +40000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 50636.5 +40000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1764.0 +40000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3956.1 +40000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.2 +40000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.7 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.0 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 81.2 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 153.9 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1212.0 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.4 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 29.9 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +40000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.3 +40000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.4 +40000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +40000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 29.9 +40000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +40000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.3 +40000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 7.3 +40000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 51.1 +40000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 2.4 +40000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 18.5 +40000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 3.1 +40000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 3.5 +40000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 3.1 +40000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 3.5 +40000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1529.9 +40000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 3.3 +40000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 143.8 +40000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 729.5 +40000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 224.6 +40000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 39.8 +40000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 55.3 +40000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 9.9 +40000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 25.7 +40000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 3.0 +40000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.1 +40000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.4 +40000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 3.0 +40000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.1 +40000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.4 +40000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 137.7 +40000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 402.7 +40000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 341.5 +40000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 171.1 +40000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 120.5 +40000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 4.9 +40000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.4 +40000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 4.9 +40000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.4 +40000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 59.8 +40000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 92.1 +40000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 26.6 +40000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 11.2 +40000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.1 +40000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +40000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.1 +40000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +40000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.4 +40000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 6.8 +40000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 6.7 +40000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.3 +40000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.3 +40000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 104.7 +40000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 102.5 +40000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 36.6 +40000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 41.8 +40000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 7.0 +40000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 5.9 +40000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 4.6 +40000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 7.0 +40000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 5.9 +40000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 4.6 +40000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 43.2 +40000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 884.0 +40000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 35.7 +40000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 10.9 +40000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 13.9 +40000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 9.1 +40000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.7 +40000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.3 +40000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.5 +40000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.7 +40000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.3 +40000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.5 +40000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 113.0 +40000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 541.7 +40000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 278.5 +40000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 58.4 +40000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 25.7 +40000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 7.1 +40000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.8 +40000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 7.1 +40000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.8 +40000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 15.3 +40000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 859.1 +40000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1435.2 +40000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 48.7 +40000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 37.3 +40000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.5 +40000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.1 +40000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.7 +40000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +40000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 5.1 +40000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.8 +40000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +40000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 5.1 +40000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.8 +40000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 13.8 +40000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 19.4 +40000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 35.4 +40000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 9.1 +40000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.1 +40000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.1 +40000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.3 +40000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.1 +40000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +40000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 7.3 +40000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +40000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.9 +40000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.1 +40000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +40000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 7.3 +40000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +40000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.9 +40000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +40000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 14.5 +40000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.5 +40000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +40000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 14.5 +40000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.5 +40000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 3.6 +40000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 74.1 +40000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +40000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.3 +40000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +40000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +40000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.3 +40000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +40000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.9 +40000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 58.9 +40000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 16.7 +40000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 9.2 +40000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 9.9 +40000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 16.7 +40000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 9.2 +40000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 9.9 +40000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 51.9 +40000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 171.3 +40000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 25.8 +40000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 31.5 +40000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.2 +40000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +40000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 6.1 +40000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 5.9 +40000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.3 +40000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 22.6 +40000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 6.3 +40000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 144.9 +40000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 64.1 +40000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 133.5 +40000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +40000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 64.1 +40000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 133.5 +40000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.0 +40000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 17.0 +40000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 60.7 +40000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 97.7 +40000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 7.1 +40000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 45.4 +40000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.2 +40000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 322.7 +40000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 705.4 +40000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1856.6 +40000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 135.6 +40000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 862.9 +40000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 4.2 +40000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 447.0 +40000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 34.0 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 39.0 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 59.7 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 16.1 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 34.6 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 20.8 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 23.5 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 23.8 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.5 +40000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 20.8 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 23.5 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 23.8 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.5 +40000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +40000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +40000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.6 +40000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 660.6 +40000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 124.8 +40000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 63.6 +40000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 53.7 +40000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +40000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +40000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.1 +40000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.5 +40000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +40000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 4.8 +40000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 6.7 +40000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.8 +40000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 2.5 +40000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +40000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +40000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.3 +40000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 13.1 +40000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 8.0 +40000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.3 +40000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 8.0 +40000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.3 +40000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +40000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.4 +40000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 12.9 +40000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.5 +40000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.5 +40000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +40000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 4.2 +40000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 1.9 +40000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 7.6 +40000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +40000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +40000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.0 +40000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.5 +40000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 7.5 +40000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +40000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.2 +40000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.4 +40000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +40000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +40000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 8227.4 +40000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 408889.4 +40000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 134.8 +40000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 371.5 +40000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 18463.0 +40000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 6.1 +40000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 762.9 +40000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 5393.5 +40000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 38302.0 +40000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 123.8 +40000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 875.1 +40000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 6214.2 +40000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 66536.8 +40000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +40000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2000.9 +40000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 7040.1 +40000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 49734.3 +40000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 125950.6 +40000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +40000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +40000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 21109.6 +40000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1499.1 +40000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2872.2 +40000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +40000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +40000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +40000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 331.1 +40000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 88.6 +40000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 4.7 +40000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 10.2 +40000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 7363.3 +40000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 81771.0 +40000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +40000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +40000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 6405.8 +40000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2386.5 +40000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 4633.6 +40000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +40000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +40000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 365.3 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3572.6 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 112.5 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 122.4 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 9.3 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 63.6 +40000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 63.1 +40000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 210.1 +40000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 321.8 +40000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 542.9 +40000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 25.4 +40000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 2.2 +40000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 3.3 +40000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 5.6 +40000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.3 +40000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 89.8 +40000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 12997.6 +40000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 10079.5 +40000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 47.7 +40000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.3 +40000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 337.3 +40000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 261.6 +40000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.2 +40000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 349.1 +40000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1192.4 +40000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 527.2 +40000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 7.9 +40000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1279.2 +40000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2503.5 +40000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 321.0 +40000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 10063.1 +40000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 111814.6 +40000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 36443.0 +40000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 8.3 +40000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 261.2 +40000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 2902.2 +40000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 945.9 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.4 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 21.1 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 86.9 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 163.7 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 12.4 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 52.7 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +40000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 12.6 +40000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 12.4 +40000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 52.7 +40000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +40000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 12.6 +40000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.5 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 4308.9 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1146.2 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2557.8 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3333.9 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 660.6 +40000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 5.7 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 327.8 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1419.6 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 3618.0 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2390.6 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 35.0 +40000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 22.9 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 378.7 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1640.1 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4179.9 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2761.9 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 40.4 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 26.5 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.6 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.9 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +40000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.0 +40000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 66.1 +40000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 57.0 +40000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 27.4 +40000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 2.8 +40000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 32.7 +40000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 3.7 +40000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +40000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.2 +40000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.5 +40000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 337.7 +40000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 108.1 +40000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 12.3 +40000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.2 +40000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 156.5 +40000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.3 +40000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 47.9 +40000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 573.3 +40000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 534.5 +40000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2081.5 +40000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 759.1 +40000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 260.8 +40000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 441.8 +40000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 107.6 +40000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 40.4 +40000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 42.3 +40000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 41.5 +40000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 18304.6 +40000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 45.7 +40000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 182.5 +40000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 103.4 +40000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 39.3 +40000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 191.1 +40000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 113.6 +40000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 100.6 +40000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 8.0 +40000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 12.9 +40000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.1 +40000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 75.8 +40000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 31.7 +40000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.0 +40000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 3.4 +40000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 19.4 +40000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 5.3 +40000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +40000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 12.1 +40000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 25.6 +40000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 11.9 +40000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 5.4 +40000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.3 +40000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 6.3 +40000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 33.5 +40000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 47.6 +40000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 4.7 +40000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 5.4 +40000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.1 +40000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 44.8 +40000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1113.1 +40000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 7830.7 +40000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 18804.0 +40000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4159.3 +40000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 5951.7 +40000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +40000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +40000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +40000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +40000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +40000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +40000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 551.2 +40000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.1 +40000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 257.1 +40000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 228.6 +40000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 85.8 +40000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.0 +40000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +40000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.2 +40000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 8.8 +40000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 176.1 +40000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 59.3 +40000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 20.5 +40000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.4 +40000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.2 +40000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1409.5 +40000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2546.6 +40000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.5 +40000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +40000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3649.5 +40000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2289.0 +40000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 221.7 +40000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 129.2 +40000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 112.3 +40000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.0 +40000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 52.3 +40000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.5 +40000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 8.1 +40000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 108.6 +40000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.0 +40000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 52.2 +40000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.5 +40000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.5 +40000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.7 +40000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +40000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +40000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +40000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +40000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.7 +40000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 578.4 +40000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 539.9 +40000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 66.2 +40000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 71.8 +40000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.5 +40000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 58.1 +40000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.4 +40000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 5.8 +40000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.5 +40000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 56.5 +40000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.4 +40000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.1 +40000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.7 +40000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.7 +40000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.7 +40000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.0 +40000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +40000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.0 +40000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +40000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +40000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +40000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 76.5 +40000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 296.6 +40000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1093.1 +40000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 364.7 +40000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 86.1 +40000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.6 +40000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.7 +40000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 86.1 +40000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.6 +40000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.7 +40000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.8 +40000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9656.4 +40000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 5972.0 +40000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1771.6 +40000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 333.2 +40000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.6 +40000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +40000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +40000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.6 +40000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +40000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +40000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 14.1 +40000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 67.0 +40000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 60.7 +40000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 47.8 +40000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 49.0 +40000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +40000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +40000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +40000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +40000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.7 +40000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +40000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +40000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +40000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +40000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 266.1 +40000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1689.5 +40000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 93.4 +40000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 30.3 +40000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.9 +40000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.2 +40000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 5.6 +40000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.6 +40000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 2.3 +40000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +40000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +40000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +40000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +40000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.6 +40000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.8 +40000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +40000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +40000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +40000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.6 +40000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.8 +40000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 387.3 +40000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 710.1 +40000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 471.6 +40000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +40000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 462.3 +40000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 63.3 +40000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 196.1 +40000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 7.1 +40000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 19.4 +40000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 1.4 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 5.6 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 204.6 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 141.4 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.5 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.0 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.0 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 25.0 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 22.0 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 9.7 +40000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +40000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.0 +40000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 24.6 +40000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.3 +40000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 46.7 +40000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 29.0 +40000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 63.6 +40000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 44.7 +40000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 5.8 +40000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 24.1 +40000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 120.5 +40000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 53.8 +40000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 32.7 +40000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 3.0 +40000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 13.0 +40000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 24.4 +40000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 29.2 +40000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 52.3 +40000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 74.6 +40000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 69.2 +40000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 70.0 +40000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 191.6 +40000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 177.7 +40000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 60.7 +40000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 18.0 +40000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +40000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 4.8 +40000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 55.6 +40000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 71.9 +40000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 33.4 +40000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +40000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 10.4 +40000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 11.6 +40000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.9 +40000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 6.0 +40000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 8.0 +40000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +40000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 7.8 +40000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 9.2 +40000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 16.9 +40000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 5.2 +40000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +40000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +40000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.6 +40000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 9.0 +40000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 7.5 +40000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.6 +40000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +40000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 7.1 +40000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 2.2 +40000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +40000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 2.2 +40000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.0 +40000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +40000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +40000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 19.5 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 45.9 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 24.5 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 388.2 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 119.1 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 8.5 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 4.9 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.9 +40000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.0 +40000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +40000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +40000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.7 +40000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.0 +40000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 53.7 +40000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 133.8 +40000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 222.7 +40000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 89.9 +40000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 27.9 +40000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 18.7 +40000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 9.5 +40000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.8 +40000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.6 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.9 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.9 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 33.1 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 33.6 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 54.5 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 55.4 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 81.5 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 70.9 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 40.8 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 9.6 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 5.2 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +40000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +40000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.7 +40000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 3.6 +40000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 7.4 +40000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 32.8 +40000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 68.0 +40000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 36.3 +40000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 28.1 +40000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 127.0 +40000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 474.6 +40000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 347.0 +40000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 91.9 +40000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.9 +40000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 3.4 +40000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +40000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.3 +40000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 3.0 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 5.1 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 29.3 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.1 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 9.4 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 13.5 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.7 +40000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 59.5 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 35.5 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 6.6 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 6.0 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 4.4 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 7.5 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 12.5 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 4.0 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.4 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.8 +40000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.4 +40000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +40000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 5.4 +40000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +40000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.9 +40000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 27.9 +40000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 105.2 +40000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 107.6 +40000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 66.2 +40000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.9 +40000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.8 +40000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +40000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +40000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +40000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.2 +40000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 9.6 +40000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 97.7 +40000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 163.6 +40000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 18.7 +40000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.1 +40000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.3 +40000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 24.6 +40000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 52.1 +40000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 29.5 +40000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 14.3 +40000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 4.5 +40000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 23.0 +40000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 5.6 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.6 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.9 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 3.3 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 37.7 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 9.1 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 14.3 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 5.4 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 14.0 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.1 +40000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.9 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 44.9 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 50.0 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 99.0 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 566.7 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 291.1 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 15.1 +40000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 19.9 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.4 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 22.7 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 26.1 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 36.9 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 158.5 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 400.8 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 382.7 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 280.8 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 21.2 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 10.3 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 2.1 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 12.7 +40000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.5 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 23.1 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 46.1 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 24.6 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 460.3 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1626.4 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1082.2 +40000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 5.9 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 4.8 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 137.3 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 310.4 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 268.8 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 136.1 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 53.7 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 11.1 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 19.3 +40000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +40000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.2 +40000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 203.1 +40000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 450.3 +40000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 881.1 +40000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 348.4 +40000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1913.2 +40000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1257.7 +40000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 31.7 +40000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +40000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 4.3 +40000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 7.3 +40000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 17.5 +40000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 5.7 +40000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.5 +40000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 4.5 +40000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +40000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 8.6 +40000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 8.2 +40000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 5.9 +40000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 6.8 +40000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.5 +40000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.7 +40000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 4.7 +40000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.7 +40000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.3 +40000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +40000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.3 +40000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 3.6 +40000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.3 +40000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 3.5 +40000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 3.4 +40000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 23.8 +40000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 21.3 +40000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 51.4 +40000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 9.4 +40000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +40000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.6 +40000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.3 +40000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 8.4 +40000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 117.7 +40000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 146.2 +40000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 34.6 +40000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 245.7 +40000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 87.3 +40000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.1 +40000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +40000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +40000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.4 +40000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 5.0 +40000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 185.5 +40000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 186.9 +40000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 67.1 +40000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 10.9 +40000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 13.9 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.1 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 19.0 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 45.8 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 30.9 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 29.9 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 110.2 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 123.7 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 33.3 +40000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.6 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 21.8 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 4.1 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 2.7 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 4.6 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 14.6 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 5.3 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 41.2 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 128.2 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 182.4 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 56.9 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 5.8 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.0 +40000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 3.5 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 17.5 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 5.3 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 24.2 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 9.2 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.3 +40000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +40000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 76.6 +40000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 235.4 +40000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 220.7 +40000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 56.6 +40000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 414.8 +40000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1595.4 +40000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +40000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +40000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +40000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +40000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +40000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +40000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 23.5 +40000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 40.7 +40000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 65.4 +40000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 109.0 +40000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 3.3 +40000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.5 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.8 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +40000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +40000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +40000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +40000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.5 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 98.8 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1371.7 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 664.9 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 148.5 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 243.9 +40000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 52.1 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 24.1 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 602.2 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 10.5 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 6.0 +40000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 9.2 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.2 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 23.8 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 88.6 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 391.5 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 123.9 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 74.8 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 63.5 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 14.4 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.3 +40000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 14.1 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 18.3 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 33.8 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 16.4 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 17.3 +40000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 14.4 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.5 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 2.9 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.8 +40000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +40000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.2 +40000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 8.9 +40000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +40000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 2015.0 +40000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 5419.6 +40000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 3096.8 +40000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 4903.4 +40000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 4321.6 +40000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 7200.9 +40000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 6208.0 +40000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 3212.3 +40000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.3 +40000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 338.6 +40000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 3105.8 +40000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 3703.4 +40000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 191.3 +40000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 3.7 +40000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 80.8 +40000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 29.8 +40000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 25.3 +40000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.2 +40000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 7.6 +40000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 40.4 +40000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 18.4 +40000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 11.5 +40000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 30.9 +40000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 189.1 +40000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 365.1 +40000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 396.7 +40000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 107.5 +40000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.8 +40000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +40000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.3 +40000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 228.6 +40000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1080.4 +40000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 213.4 +40000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 9.6 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.6 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 7.1 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 25.8 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 13.6 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 8.3 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 64.6 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 80.7 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 201.1 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 203.5 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 85.3 +40000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +40000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +40000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +40000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 16.2 +40000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 37.1 +40000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 14.7 +40000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 57.7 +40000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 272.4 +40000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 142.9 +40000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 40.7 +40000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 2.9 +40000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +40000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 667.9 +40000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 666.9 +40000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 514.0 +40000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 809.3 +40000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1339.6 +40000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 183.0 +40000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 675.1 +40000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 821.6 +40000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 280.4 +40000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 155.9 +40000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 81.0 +40000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +40000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +40000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +40000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +40000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +40000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +40000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 115.0 +40000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 276.4 +40000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 69.4 +40000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 55.2 +40000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 95.9 +40000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 27.2 +40000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 184.1 +40000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 204.9 +40000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 90.3 +40000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 22.6 +40000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.5 +40000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +40000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +40000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +40000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +40000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +40000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 3.9 +40000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.6 +40000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +40000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.0 +40000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 73.4 +40000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 50.8 +40000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 325.8 +40000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 424.4 +40000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 48.7 +40000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 43.7 +40000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.5 +40000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +40000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +40000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +40000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +40000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +40000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +40000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 42.5 +40000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 235.2 +40000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 342.4 +40000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 212.4 +40000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 588.7 +40000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 427.6 +40000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 187.7 +40000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 9.8 +40000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +40000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +40000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.4 +40000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 63.3 +40000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 72.6 +40000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 90.7 +40000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 86.7 +40000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 10.9 +40000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 36.5 +40000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 10.2 +40000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 33.9 +40000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 27.4 +40000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.2 +40000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.0 +40000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +40000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.2 +40000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +40000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.5 +40000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.5 +40000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.0 +40000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 14.5 +40000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 16.7 +40000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.5 +40000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +40000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +40000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +40000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.2 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.2 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 10.8 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 74.6 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 106.9 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 9.2 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 3.8 +40000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +40000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 7.1 +40000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +40000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +40000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.3 +40000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.4 +40000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 7.4 +40000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 13.5 +40000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 39.8 +40000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 13.3 +40000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 15.6 +40000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.7 +40000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.4 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.7 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1.9 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 3.4 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 3.6 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 1.1 +40000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.6 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 22.4 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 10.9 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 101.7 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 14.9 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 211.7 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 107.8 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 156.0 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 98.8 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 41.0 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 18.2 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 22.3 +40000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.6 +40000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2569.8 +40000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 9586.0 +40000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 14437.9 +40000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 3210.0 +40000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 6322.3 +40000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 12212.5 +40000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 9394.6 +40000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 15711.4 +40000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 10672.8 +40000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 23876.2 +40000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 21432.8 +40000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 10.2 +40000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 9.9 +40000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 94.1 +40000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +40000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 100.0 +40000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 40.3 +40000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 893.2 +40000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 3303.7 +40000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 12239.2 +40000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 805.2 +40000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 11.2 +40000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 8.0 +40000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.8 +40000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 20.5 +40000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 180.5 +40000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +40000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 4327.3 +40000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 16061.7 +40000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 6450.4 +40000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 108.8 +40000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 132.4 +40000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 65.0 +40000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 143.8 +40000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 78.7 +40000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 14.5 +40000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 127.5 +40000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 107.3 +40000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 879.8 +40000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1446.7 +40000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1067.2 +40000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 42.1 +40000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 79.8 +40000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 6.5 +40000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 22.8 +40000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 14.0 +40000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 142.5 +40000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +40000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.5 +40000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.6 +40000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.3 +40000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 8.6 +40000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 13.5 +40000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 24.6 +40000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 22.9 +40000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 96.6 +40000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 35.6 +40000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.0 +40000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.5 +40000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +40000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +40000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +40000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.5 +40000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 47.0 +40000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 193.4 +40000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.5 +40000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 8.8 +40000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.8 +40000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +40000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.8 +40000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/OR.POP b/NONROAD/NR08a/DATA/POP/OR.POP new file mode 100644 index 0000000..d277b4e --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/OR.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 41000 OR Oregon 1,668,726.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +41000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 56.7 +41000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 33.4 +41000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 35.9 +41000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 2860.6 +41000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 2887.5 +41000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1296.0 +41000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 4565.8 +41000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 1876.5 +41000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 488.9 +41000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 15195.6 +41000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 7484.4 +41000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 7680.1 +41000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 66465.9 +41000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 2193.8 +41000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 3995.9 +41000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.2 +41000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.7 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.0 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 82.1 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 155.4 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1224.2 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.5 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 30.2 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +41000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.4 +41000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 12.5 +41000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +41000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 30.2 +41000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +41000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 11.4 +41000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 10.0 +41000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 69.4 +41000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 3.2 +41000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 25.1 +41000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 4.2 +41000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 4.7 +41000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 4.2 +41000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 4.7 +41000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2076.6 +41000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 4.5 +41000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 195.1 +41000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 990.1 +41000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 304.8 +41000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 54.0 +41000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 75.1 +41000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 13.4 +41000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 34.9 +41000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 4.1 +41000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.8 +41000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.9 +41000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 4.1 +41000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.8 +41000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.9 +41000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 186.9 +41000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 546.6 +41000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 463.6 +41000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 232.2 +41000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 163.6 +41000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 6.6 +41000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.6 +41000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 6.6 +41000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.6 +41000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 81.2 +41000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 125.0 +41000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 36.1 +41000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 15.2 +41000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.5 +41000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +41000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.5 +41000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.5 +41000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.5 +41000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 9.2 +41000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 9.1 +41000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.3 +41000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.4 +41000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 142.1 +41000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 139.1 +41000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 49.7 +41000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 56.7 +41000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 9.4 +41000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 8.0 +41000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 6.3 +41000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 9.4 +41000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 8.0 +41000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 6.3 +41000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 58.6 +41000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1199.8 +41000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 48.5 +41000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 14.8 +41000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 18.8 +41000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 12.4 +41000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.0 +41000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.5 +41000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.5 +41000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 5.0 +41000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 4.5 +41000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 7.5 +41000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 153.4 +41000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 735.3 +41000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 378.0 +41000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 79.3 +41000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 34.8 +41000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 9.6 +41000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.2 +41000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 9.6 +41000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 5.2 +41000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 20.8 +41000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1166.0 +41000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1948.0 +41000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 66.1 +41000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 50.6 +41000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.0 +41000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.8 +41000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.0 +41000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +41000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 6.9 +41000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.1 +41000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +41000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 6.9 +41000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.1 +41000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 18.8 +41000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 26.4 +41000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 48.1 +41000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 12.3 +41000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.5 +41000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.5 +41000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.4 +41000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.5 +41000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +41000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.8 +41000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +41000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.2 +41000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.5 +41000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +41000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 9.8 +41000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +41000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.2 +41000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +41000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 19.7 +41000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.6 +41000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.4 +41000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 19.7 +41000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.6 +41000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 4.8 +41000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 100.6 +41000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +41000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.8 +41000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +41000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.4 +41000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.8 +41000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +41000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 4.0 +41000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 79.9 +41000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 22.7 +41000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 12.5 +41000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 13.4 +41000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 22.7 +41000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 12.5 +41000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 13.4 +41000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 70.5 +41000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 232.6 +41000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 35.0 +41000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 42.8 +41000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.7 +41000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.3 +41000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 8.3 +41000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 8.0 +41000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.4 +41000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 27.6 +41000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 7.7 +41000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 176.9 +41000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 78.2 +41000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 162.9 +41000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 3.6 +41000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 78.2 +41000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 162.9 +41000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 3.6 +41000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 20.7 +41000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 74.0 +41000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 119.3 +41000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 8.7 +41000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 55.4 +41000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.3 +41000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 394.0 +41000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 861.1 +41000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 2266.5 +41000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 165.5 +41000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1053.3 +41000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 5.2 +41000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 545.7 +41000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 41.6 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 47.6 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 72.8 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 19.7 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 42.2 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 25.3 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 28.6 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 29.1 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.6 +41000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 25.3 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 28.6 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 29.1 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.3 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.6 +41000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +41000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.3 +41000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 2.0 +41000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 806.4 +41000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 152.4 +41000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 77.6 +41000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 65.6 +41000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.9 +41000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.1 +41000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.3 +41000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.1 +41000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +41000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 5.9 +41000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 8.1 +41000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.0 +41000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 3.1 +41000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +41000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.3 +41000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.4 +41000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 16.0 +41000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 9.7 +41000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.4 +41000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 9.7 +41000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.4 +41000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +41000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.4 +41000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 13.1 +41000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.5 +41000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.5 +41000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +41000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 5.2 +41000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 2.4 +41000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 9.3 +41000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +41000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +41000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 4.9 +41000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.9 +41000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 9.2 +41000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +41000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.3 +41000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.5 +41000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +41000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +41000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 7982.7 +41000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 396730.2 +41000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 130.8 +41000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 363.2 +41000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 18049.9 +41000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 6.0 +41000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 740.2 +41000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 5233.1 +41000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 37163.0 +41000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 121.0 +41000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 855.5 +41000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 6075.2 +41000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 64558.2 +41000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +41000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 1956.1 +41000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 6882.6 +41000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 48255.4 +41000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 122205.1 +41000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +41000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +41000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 20637.3 +41000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1465.5 +41000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2786.8 +41000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +41000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +41000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +41000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 323.7 +41000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 86.6 +41000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 4.6 +41000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 9.9 +41000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 7144.3 +41000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 79339.3 +41000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +41000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +41000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 6262.5 +41000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2333.1 +41000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 4495.8 +41000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +41000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +41000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 357.1 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3492.6 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 110.0 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 119.7 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 9.1 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 62.1 +41000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 61.6 +41000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 21825.9 +41000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 33422.3 +41000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 56385.3 +41000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 2635.4 +41000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 2817.6 +41000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 4314.6 +41000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 7279.0 +41000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 340.2 +41000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 87.2 +41000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 12611.1 +41000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 9779.8 +41000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 46.3 +41000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.3 +41000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 329.8 +41000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 255.8 +41000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.2 +41000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 341.3 +41000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1165.8 +41000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 515.4 +41000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 7.7 +41000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1250.5 +41000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2447.5 +41000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 311.4 +41000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 9763.9 +41000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 108489.6 +41000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 35359.2 +41000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 8.1 +41000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 255.3 +41000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 2837.2 +41000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 924.7 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.4 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 20.6 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 84.9 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 160.0 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 12.1 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 51.6 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +41000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 12.3 +41000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 12.1 +41000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 51.6 +41000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +41000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 12.3 +41000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.5 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 4212.5 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1120.5 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2500.6 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3259.4 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 645.8 +41000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 5.6 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 318.1 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1377.4 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 3510.4 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2319.6 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 34.0 +41000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 22.3 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 370.3 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1603.4 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4086.3 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2700.1 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 39.5 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 25.9 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.5 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.9 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +41000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.0 +41000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 26.7 +41000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 23.1 +41000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 11.1 +41000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.1 +41000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 13.3 +41000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.5 +41000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +41000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +41000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.2 +41000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 136.7 +41000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 43.8 +41000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 5.0 +41000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.9 +41000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 63.4 +41000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.9 +41000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 19.4 +41000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 232.1 +41000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 216.4 +41000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 842.6 +41000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 307.3 +41000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 105.6 +41000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 178.8 +41000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 43.6 +41000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 16.3 +41000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 17.1 +41000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 16.8 +41000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 7409.8 +41000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 18.5 +41000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 73.9 +41000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 41.8 +41000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 15.9 +41000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 77.4 +41000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 46.0 +41000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 40.7 +41000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 3.2 +41000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 5.2 +41000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.8 +41000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 30.7 +41000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 12.8 +41000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.8 +41000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.4 +41000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 7.8 +41000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.2 +41000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +41000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 4.9 +41000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 10.4 +41000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 4.8 +41000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.2 +41000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +41000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 2.6 +41000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 13.5 +41000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 19.3 +41000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 1.9 +41000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.2 +41000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.5 +41000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 53.9 +41000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1338.7 +41000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 9417.9 +41000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 22615.3 +41000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 5002.4 +41000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 7158.0 +41000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +41000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +41000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +41000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +41000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +41000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +41000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 662.9 +41000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 5.0 +41000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 309.2 +41000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 275.0 +41000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 103.2 +41000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.4 +41000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.4 +41000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 6.3 +41000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 10.6 +41000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 211.8 +41000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 71.3 +41000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 24.6 +41000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 10.1 +41000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 5.1 +41000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1695.2 +41000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 3062.7 +41000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.9 +41000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.4 +41000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 4389.2 +41000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2753.0 +41000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 266.7 +41000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 155.4 +41000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 135.1 +41000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.3 +41000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 62.9 +41000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 4.2 +41000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 9.7 +41000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 130.7 +41000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.3 +41000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 62.8 +41000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 4.2 +41000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 9.1 +41000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 4.4 +41000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +41000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.6 +41000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.7 +41000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.7 +41000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.8 +41000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 695.6 +41000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 649.3 +41000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 79.6 +41000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 86.3 +41000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 12.6 +41000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 69.9 +41000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 14.9 +41000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 7.0 +41000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 12.6 +41000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 67.9 +41000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 14.9 +41000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.7 +41000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.0 +41000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 3.2 +41000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.1 +41000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.2 +41000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +41000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.6 +41000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.6 +41000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.6 +41000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.5 +41000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 92.0 +41000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 356.7 +41000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1314.7 +41000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 438.6 +41000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 103.5 +41000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 9.2 +41000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.1 +41000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 103.5 +41000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 9.2 +41000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.1 +41000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.2 +41000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 11613.6 +41000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 7182.4 +41000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2130.7 +41000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 400.7 +41000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 6.8 +41000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.5 +41000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +41000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 6.8 +41000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.5 +41000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +41000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 16.9 +41000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 80.6 +41000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 73.0 +41000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 57.5 +41000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 58.9 +41000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +41000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +41000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +41000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +41000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.9 +41000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.4 +41000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.9 +41000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +41000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +41000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1409.7 +41000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 8950.5 +41000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 495.0 +41000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 160.4 +41000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 15.6 +41000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 6.4 +41000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 8.6 +41000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.0 +41000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 3.5 +41000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.2 +41000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +41000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +41000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +41000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +41000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.7 +41000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +41000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +41000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +41000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.9 +41000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.7 +41000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 2.4 +41000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 4.4 +41000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2.9 +41000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +41000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 2.9 +41000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.4 +41000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.2 +41000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +41000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +41000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 5.7 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 206.6 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 142.9 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.5 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.0 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.0 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 25.3 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 22.3 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 9.8 +41000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +41000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.4 +41000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 33.4 +41000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 3.1 +41000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 63.3 +41000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 39.4 +41000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 86.4 +41000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 60.7 +41000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 7.8 +41000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 32.7 +41000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 163.5 +41000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 73.1 +41000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 44.4 +41000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 4.1 +41000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 17.6 +41000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 33.1 +41000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 39.6 +41000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 71.0 +41000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 101.3 +41000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 93.9 +41000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 95.0 +41000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 260.1 +41000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 241.2 +41000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 82.3 +41000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 24.4 +41000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +41000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 6.6 +41000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 75.4 +41000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 97.7 +41000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 45.3 +41000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +41000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 14.1 +41000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 15.8 +41000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.2 +41000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 8.1 +41000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 10.8 +41000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +41000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 10.6 +41000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 12.5 +41000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 22.9 +41000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 7.1 +41000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.3 +41000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.3 +41000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.8 +41000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 12.2 +41000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 10.2 +41000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 3.5 +41000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.2 +41000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 9.7 +41000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 3.0 +41000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +41000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 3.0 +41000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.3 +41000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.3 +41000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +41000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.2 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 26.5 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 62.3 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 33.3 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 527.0 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 161.7 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.3 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 11.6 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 6.7 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 5.3 +41000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.3 +41000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +41000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +41000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.0 +41000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.3 +41000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 72.9 +41000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 181.7 +41000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 302.2 +41000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 122.1 +41000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 37.9 +41000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 25.3 +41000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 12.9 +41000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.1 +41000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.8 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.2 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 2.6 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 44.9 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 45.7 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 74.0 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 75.3 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 110.6 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 96.2 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 55.4 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 13.0 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 7.1 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +41000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +41000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.9 +41000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 4.9 +41000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 10.0 +41000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 44.6 +41000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 92.4 +41000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 49.3 +41000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 38.2 +41000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 172.4 +41000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 644.2 +41000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 471.0 +41000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 124.8 +41000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 4.0 +41000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 4.6 +41000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +41000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.7 +41000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 4.1 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 6.9 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 39.7 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.4 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 12.8 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 18.3 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 2.2 +41000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 80.8 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 48.2 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 8.9 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 8.1 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 5.9 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 10.2 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 17.0 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 5.4 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.9 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 2.4 +41000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.5 +41000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +41000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 7.4 +41000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +41000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 3.9 +41000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 37.9 +41000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 142.7 +41000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 146.0 +41000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 89.9 +41000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 3.9 +41000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.1 +41000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +41000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +41000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +41000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.7 +41000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 13.0 +41000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 132.6 +41000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 222.1 +41000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 25.4 +41000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.5 +41000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.3 +41000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 33.3 +41000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 70.8 +41000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 40.1 +41000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 19.5 +41000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 6.2 +41000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 31.2 +41000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 7.6 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.9 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.2 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 4.5 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 51.1 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 12.4 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 19.4 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 7.3 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 19.0 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.4 +41000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.2 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 2.6 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 60.9 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 67.8 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 134.4 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 769.2 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 395.2 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 20.5 +41000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 27.0 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.6 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 30.8 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 35.4 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 50.0 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 215.2 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 544.1 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 519.4 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 381.1 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 28.8 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 14.0 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 2.9 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 17.2 +41000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.6 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 31.3 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 62.6 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 33.4 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 624.8 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 2207.5 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1468.8 +41000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 8.0 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 6.5 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 186.4 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 421.3 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 364.8 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 184.7 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 72.9 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 15.1 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 26.2 +41000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +41000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.7 +41000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 275.6 +41000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 611.2 +41000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1195.9 +41000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 472.9 +41000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 2596.8 +41000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1707.1 +41000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 43.0 +41000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +41000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 5.8 +41000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 9.9 +41000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 23.7 +41000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 7.8 +41000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.7 +41000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 6.1 +41000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +41000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 11.7 +41000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 11.2 +41000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 8.0 +41000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 9.3 +41000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.0 +41000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.0 +41000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 6.3 +41000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 2.3 +41000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.4 +41000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +41000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.7 +41000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 4.9 +41000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.4 +41000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 4.7 +41000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 4.7 +41000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 32.4 +41000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 28.9 +41000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 69.8 +41000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 12.7 +41000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +41000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.8 +41000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 1.5 +41000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 10.3 +41000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 143.7 +41000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 178.5 +41000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 42.2 +41000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 300.0 +41000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 106.6 +41000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 1.3 +41000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.2 +41000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +41000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.5 +41000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 6.1 +41000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 226.5 +41000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 228.2 +41000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 81.9 +41000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 13.3 +41000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 17.0 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 3.8 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.2 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 23.2 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 55.9 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 37.7 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 36.5 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 134.5 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 151.0 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 40.6 +41000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.7 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 26.6 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 5.0 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 3.2 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 5.6 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 17.8 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 6.5 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 50.3 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 156.5 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 222.6 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 69.5 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 7.1 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.2 +41000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 4.2 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 21.3 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 6.4 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 29.6 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 11.2 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 1.6 +41000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +41000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 77.3 +41000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 237.7 +41000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 222.9 +41000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 57.2 +41000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 419.0 +41000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1611.4 +41000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +41000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +41000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +41000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +41000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +41000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +41000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 28.7 +41000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 49.7 +41000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 79.9 +41000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 133.0 +41000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 4.1 +41000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.4 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.8 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +41000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +41000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.6 +41000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 4.9 +41000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 6.2 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.4 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 96.6 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1341.0 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 650.0 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 145.2 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 238.4 +41000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 51.0 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 23.6 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 588.8 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 10.2 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 5.9 +41000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 9.0 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.2 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 23.2 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 86.6 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 382.7 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 121.2 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 73.2 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 62.0 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 14.1 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.3 +41000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 13.8 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 17.9 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 33.0 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 16.0 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 16.9 +41000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 14.1 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.4 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 2.8 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.8 +41000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +41000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.9 +41000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 3.6 +41000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +41000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 815.7 +41000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2193.9 +41000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1253.6 +41000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 1984.9 +41000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1749.4 +41000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 2915.0 +41000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 2513.0 +41000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1300.3 +41000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +41000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 137.1 +41000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1257.2 +41000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1499.2 +41000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 77.4 +41000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.5 +41000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 32.7 +41000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 12.0 +41000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 10.2 +41000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.5 +41000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 3.1 +41000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 16.3 +41000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 7.4 +41000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 4.7 +41000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 12.5 +41000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 76.6 +41000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 147.8 +41000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 160.6 +41000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 43.5 +41000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.3 +41000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +41000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +41000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 92.5 +41000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 437.3 +41000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 86.4 +41000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 3.9 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.2 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 2.9 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 10.4 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 5.5 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 3.4 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 26.1 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 32.7 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 81.4 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 82.4 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 34.5 +41000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +41000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +41000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +41000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 6.6 +41000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 15.0 +41000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 6.0 +41000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 23.4 +41000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 110.3 +41000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 57.9 +41000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 16.5 +41000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.2 +41000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +41000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 803.3 +41000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 802.0 +41000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 618.2 +41000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 973.4 +41000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1611.2 +41000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 220.1 +41000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 812.0 +41000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 988.2 +41000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 337.3 +41000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 187.5 +41000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 97.4 +41000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +41000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +41000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +41000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +41000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +41000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.4 +41000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 138.3 +41000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 332.5 +41000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 83.4 +41000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 66.3 +41000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 115.4 +41000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 32.7 +41000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 221.4 +41000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 246.4 +41000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 108.6 +41000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 27.2 +41000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 13.8 +41000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +41000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +41000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +41000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +41000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +41000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.7 +41000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 11.5 +41000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.6 +41000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.4 +41000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 88.3 +41000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 61.1 +41000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 391.9 +41000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 510.4 +41000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 58.5 +41000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 52.5 +41000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 15.0 +41000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +41000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +41000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +41000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +41000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +41000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +41000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 51.1 +41000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 282.9 +41000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 411.8 +41000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 255.4 +41000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 708.0 +41000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 514.2 +41000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 225.8 +41000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 11.8 +41000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +41000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +41000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 8.9 +41000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 76.1 +41000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 87.3 +41000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 109.1 +41000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 104.2 +41000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 13.1 +41000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 43.8 +41000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 12.3 +41000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 40.7 +41000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 33.0 +41000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 5.0 +41000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.4 +41000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.2 +41000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.7 +41000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.8 +41000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 7.8 +41000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 11.4 +41000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.6 +41000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 17.4 +41000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 20.1 +41000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 5.4 +41000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.7 +41000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +41000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +41000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.6 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.8 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.2 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 57.0 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 395.1 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 566.3 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 48.9 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 20.0 +41000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.5 +41000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 10.7 +41000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +41000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +41000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.4 +41000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.5 +41000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 11.2 +41000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 20.5 +41000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 60.4 +41000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 20.3 +41000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 23.7 +41000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 2.5 +41000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +41000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.6 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.3 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.7 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.0 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.6 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.3 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +41000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +41000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 2359.0 +41000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 8799.6 +41000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 13253.5 +41000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 2946.7 +41000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 5803.6 +41000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 11210.7 +41000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 8623.9 +41000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 14422.5 +41000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 9797.3 +41000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 21917.5 +41000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 19674.6 +41000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 9.4 +41000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 9.1 +41000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 86.4 +41000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.2 +41000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 91.8 +41000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 37.0 +41000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 819.9 +41000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 3032.7 +41000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 11235.1 +41000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 739.2 +41000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 10.3 +41000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 7.4 +41000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 4.4 +41000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 18.8 +41000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 165.7 +41000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +41000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 3972.3 +41000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 14744.1 +41000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 5921.2 +41000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 99.9 +41000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 121.6 +41000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 59.6 +41000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 132.0 +41000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 72.2 +41000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 13.3 +41000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 117.0 +41000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 98.5 +41000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 807.6 +41000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 1328.0 +41000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 979.6 +41000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 38.7 +41000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 73.3 +41000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 6.0 +41000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 21.0 +41000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 12.8 +41000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 130.8 +41000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +41000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.6 +41000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.7 +41000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.0 +41000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 3.7 +41000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 5.9 +41000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 10.7 +41000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 9.9 +41000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 42.0 +41000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 15.5 +41000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.6 +41000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.7 +41000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +41000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.2 +41000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +41000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.6 +41000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 20.5 +41000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 84.1 +41000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.5 +41000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 3.8 +41000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +41000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +41000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +41000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/PA.POP b/NONROAD/NR08a/DATA/POP/PA.POP new file mode 100644 index 0000000..2f4b96b --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/PA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 42000 PA Pennsylvania 5,215,924.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +42000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 181.5 +42000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 107.1 +42000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 115.0 +42000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 9162.0 +42000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 9248.0 +42000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 4150.8 +42000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 14623.3 +42000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 6010.1 +42000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1565.7 +42000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 35781.2 +42000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 17623.6 +42000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 18084.4 +42000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 156507.9 +42000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 9071.8 +42000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 13982.3 +42000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 4.2 +42000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 2.4 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 7.1 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 287.1 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 543.8 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 4283.7 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 43.8 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.0 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 105.7 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.9 +42000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 40.0 +42000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 43.8 +42000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.0 +42000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 105.7 +42000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.9 +42000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 40.0 +42000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 21.2 +42000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 147.6 +42000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 6.8 +42000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 53.5 +42000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 9.0 +42000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 10.0 +42000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 9.0 +42000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 10.0 +42000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 4415.9 +42000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 9.7 +42000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 415.0 +42000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2105.5 +42000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 648.2 +42000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 114.9 +42000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 159.6 +42000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 28.5 +42000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 74.2 +42000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 8.8 +42000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 6.0 +42000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 4.1 +42000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 8.8 +42000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 6.0 +42000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 4.1 +42000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 397.4 +42000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1162.5 +42000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 985.8 +42000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 493.7 +42000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 347.9 +42000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 14.1 +42000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.3 +42000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 14.1 +42000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.3 +42000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 172.6 +42000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 265.8 +42000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 76.9 +42000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 32.4 +42000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.2 +42000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.1 +42000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.2 +42000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.1 +42000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.1 +42000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 19.5 +42000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 19.4 +42000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.7 +42000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.8 +42000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 302.2 +42000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 295.8 +42000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 105.7 +42000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 120.5 +42000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 20.1 +42000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 17.0 +42000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 13.3 +42000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 20.1 +42000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 17.0 +42000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 13.3 +42000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 124.6 +42000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2551.4 +42000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 103.2 +42000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 31.5 +42000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 40.0 +42000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 26.3 +42000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.6 +42000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.6 +42000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 16.0 +42000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.6 +42000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.6 +42000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 16.0 +42000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 326.3 +42000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1563.5 +42000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 803.9 +42000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 168.6 +42000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 74.1 +42000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 20.4 +42000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 11.1 +42000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 20.4 +42000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 11.1 +42000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 44.2 +42000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2479.6 +42000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 4142.6 +42000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 140.6 +42000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 107.7 +42000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 4.2 +42000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 5.9 +42000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.1 +42000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +42000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 14.8 +42000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.4 +42000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +42000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 14.8 +42000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.4 +42000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 39.9 +42000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 56.1 +42000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 102.3 +42000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 26.2 +42000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.3 +42000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.3 +42000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.9 +42000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.2 +42000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +42000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 20.9 +42000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +42000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.5 +42000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.2 +42000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +42000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 20.9 +42000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +42000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.5 +42000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +42000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 41.8 +42000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.4 +42000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +42000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 41.8 +42000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.4 +42000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 10.3 +42000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 213.9 +42000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +42000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.7 +42000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +42000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +42000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.7 +42000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +42000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 8.4 +42000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 170.0 +42000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 48.2 +42000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 26.6 +42000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 28.5 +42000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 48.2 +42000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 26.6 +42000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 28.5 +42000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 149.9 +42000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 494.6 +42000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 74.4 +42000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 90.9 +42000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 3.5 +42000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.6 +42000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 17.7 +42000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 16.9 +42000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.8 +42000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 107.9 +42000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 30.0 +42000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 692.4 +42000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 306.2 +42000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 637.8 +42000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 14.2 +42000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 306.2 +42000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 637.8 +42000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 14.2 +42000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 81.2 +42000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 289.9 +42000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 467.0 +42000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 34.1 +42000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 217.0 +42000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.1 +42000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1542.2 +42000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 3370.9 +42000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 8872.1 +42000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 648.0 +42000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 4123.3 +42000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 20.2 +42000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 2136.3 +42000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 162.7 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 186.3 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 285.1 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 77.1 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 165.2 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 99.2 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 112.1 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 113.7 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.1 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.3 +42000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 99.2 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 112.1 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 113.7 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.1 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.3 +42000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +42000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 1.0 +42000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 7.7 +42000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 3156.8 +42000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 596.5 +42000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 303.8 +42000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 256.8 +42000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 22.9 +42000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 31.9 +42000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 5.1 +42000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.1 +42000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +42000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 22.9 +42000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 31.9 +42000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 3.9 +42000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 12.1 +42000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.4 +42000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.2 +42000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.6 +42000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 62.7 +42000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 38.1 +42000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.4 +42000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 38.1 +42000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.4 +42000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.9 +42000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 1.5 +42000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 45.7 +42000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 5.1 +42000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.8 +42000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.5 +42000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 20.2 +42000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 9.3 +42000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 36.4 +42000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +42000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.5 +42000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 19.1 +42000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 7.3 +42000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 36.0 +42000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +42000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.1 +42000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 2.0 +42000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.4 +42000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.4 +42000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 28439.6 +42000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 1413408.5 +42000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 466.0 +42000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 1088.9 +42000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 54115.1 +42000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 17.9 +42000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 2637.2 +42000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 18643.9 +42000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 132398.6 +42000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 362.8 +42000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2564.8 +42000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 18213.8 +42000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 229997.7 +42000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +42000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 5864.6 +42000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 20634.5 +42000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 171916.7 +42000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 435373.5 +42000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +42000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +42000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 61872.4 +42000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 4393.8 +42000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 9928.5 +42000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +42000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +42000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +42000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 970.5 +42000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 259.6 +42000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 13.7 +42000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 29.8 +42000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 25452.6 +42000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 282657.8 +42000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +42000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +42000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 18775.4 +42000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 6994.8 +42000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 16016.9 +42000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +42000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +42000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 1070.7 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 10471.2 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 329.8 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 358.8 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 27.3 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 186.3 +42000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 184.8 +42000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 77758.1 +42000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 119071.9 +42000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 200880.7 +42000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 9388.9 +42000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 8447.4 +42000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 12935.5 +42000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 21822.9 +42000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 1020.0 +42000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 310.5 +42000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 44928.8 +42000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 34842.0 +42000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 164.8 +42000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 6.8 +42000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 988.8 +42000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 766.8 +42000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.6 +42000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 1023.2 +42000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 3495.1 +42000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1545.3 +42000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 23.2 +42000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3749.2 +42000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 7337.7 +42000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1109.5 +42000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 34785.1 +42000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 386509.7 +42000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 125972.4 +42000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 24.4 +42000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 765.6 +42000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 8506.2 +42000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2772.4 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.3 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 61.8 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 254.6 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 479.8 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 36.2 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 154.6 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.4 +42000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 37.0 +42000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 36.2 +42000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 154.6 +42000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.4 +42000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 37.0 +42000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 4.4 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 12629.5 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 3359.4 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 7496.9 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 9771.8 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1936.2 +42000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 16.7 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1133.2 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 4907.3 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 12506.4 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 8263.7 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 121.0 +42000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 79.3 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 1110.1 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4807.1 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 12251.2 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 8095.1 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 118.5 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 77.7 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 7.6 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.6 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.9 +42000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 3.1 +42000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 35.0 +42000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 30.2 +42000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 14.5 +42000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.5 +42000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 17.3 +42000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.0 +42000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +42000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +42000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +42000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 178.8 +42000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 57.2 +42000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 6.5 +42000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.2 +42000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 82.9 +42000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.2 +42000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 25.3 +42000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 303.5 +42000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 283.0 +42000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1101.9 +42000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 401.9 +42000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 138.0 +42000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 233.9 +42000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 57.0 +42000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 21.4 +42000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 22.4 +42000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 22.0 +42000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 9690.0 +42000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 24.2 +42000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 96.6 +42000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 54.7 +42000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 20.8 +42000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 101.2 +42000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 60.1 +42000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 53.3 +42000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.2 +42000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 6.8 +42000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.1 +42000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 40.1 +42000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 16.8 +42000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.1 +42000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.8 +42000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 10.3 +42000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 2.8 +42000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +42000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.4 +42000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 13.6 +42000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.3 +42000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 2.9 +42000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +42000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.3 +42000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 17.7 +42000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 25.2 +42000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.5 +42000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 2.9 +42000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +42000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 150.9 +42000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 3746.1 +42000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 26354.1 +42000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 63284.0 +42000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 13998.1 +42000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 20030.1 +42000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +42000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +42000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +42000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +42000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +42000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +42000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1855.0 +42000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 13.9 +42000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 865.2 +42000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 769.5 +42000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 288.7 +42000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 6.7 +42000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 1.1 +42000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 17.5 +42000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 29.7 +42000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 592.7 +42000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 199.5 +42000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 68.9 +42000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 28.2 +42000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 14.2 +42000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 4743.6 +42000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 8570.4 +42000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 5.2 +42000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 1.1 +42000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 12282.2 +42000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 7703.7 +42000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 746.2 +42000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 434.8 +42000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 378.0 +42000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 3.5 +42000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 175.9 +42000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 11.7 +42000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 27.1 +42000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 365.6 +42000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 3.5 +42000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 175.8 +42000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 11.7 +42000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 25.4 +42000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 12.4 +42000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +42000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.7 +42000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 2.0 +42000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 2.0 +42000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 2.2 +42000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1946.6 +42000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1817.0 +42000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 222.9 +42000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 241.5 +42000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 35.4 +42000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 195.6 +42000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 41.7 +42000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 19.5 +42000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 35.4 +42000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 190.0 +42000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 41.7 +42000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 10.4 +42000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 5.6 +42000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 9.1 +42000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 5.8 +42000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 3.4 +42000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.9 +42000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 10.1 +42000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.7 +42000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 4.4 +42000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 1.4 +42000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 257.4 +42000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 998.0 +42000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 3678.9 +42000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 1227.3 +42000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 289.7 +42000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 25.7 +42000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 5.8 +42000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 289.7 +42000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 25.7 +42000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 5.8 +42000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 6.1 +42000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 32498.2 +42000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 20098.4 +42000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 5962.4 +42000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 1121.2 +42000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 19.0 +42000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 1.5 +42000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +42000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 19.0 +42000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 1.5 +42000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +42000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 47.4 +42000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 225.6 +42000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 204.3 +42000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 161.0 +42000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 164.8 +42000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +42000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 1.0 +42000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 2.4 +42000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +42000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 2.5 +42000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 1.0 +42000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 2.4 +42000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +42000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +42000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 544.8 +42000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 3459.3 +42000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 191.3 +42000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 62.0 +42000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 6.0 +42000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 2.5 +42000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 32.8 +42000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 3.7 +42000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 13.3 +42000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.7 +42000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.8 +42000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.3 +42000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.8 +42000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 3.5 +42000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 10.5 +42000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.8 +42000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.3 +42000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.8 +42000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 3.5 +42000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 10.5 +42000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 66.7 +42000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 122.3 +42000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 81.2 +42000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +42000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 79.6 +42000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 10.9 +42000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 33.8 +42000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.2 +42000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 3.3 +42000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 19.9 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 723.0 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 499.9 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.7 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 10.6 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 10.5 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 88.5 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 77.9 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 34.4 +42000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 1.3 +42000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.9 +42000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 71.0 +42000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 6.6 +42000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 134.7 +42000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 83.8 +42000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 183.7 +42000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 129.0 +42000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 16.6 +42000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 69.4 +42000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 347.7 +42000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 155.4 +42000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 94.5 +42000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 8.7 +42000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 37.4 +42000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 70.3 +42000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 84.1 +42000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 151.0 +42000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 215.4 +42000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 199.6 +42000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 202.1 +42000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 553.1 +42000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 512.9 +42000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 175.1 +42000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 51.9 +42000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +42000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 13.9 +42000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 160.4 +42000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 207.7 +42000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 96.3 +42000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +42000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 30.0 +42000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 33.6 +42000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.6 +42000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 17.3 +42000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 23.1 +42000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +42000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 22.6 +42000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 26.7 +42000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 48.7 +42000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 15.1 +42000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.7 +42000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.5 +42000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.7 +42000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 25.9 +42000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 21.7 +42000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 7.5 +42000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.4 +42000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 20.6 +42000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 6.3 +42000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.3 +42000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 6.3 +42000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.8 +42000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.6 +42000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +42000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.4 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 56.3 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 132.5 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 70.8 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1120.6 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 343.8 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.6 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 24.6 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 14.3 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 11.3 +42000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.8 +42000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +42000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +42000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.0 +42000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.8 +42000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 154.9 +42000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 386.3 +42000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 642.6 +42000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 259.6 +42000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 80.6 +42000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 53.9 +42000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 27.4 +42000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.4 +42000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.6 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.5 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 5.6 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 95.5 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 97.1 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 157.4 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 160.0 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 235.3 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 204.5 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 117.9 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 27.6 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 15.1 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.3 +42000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.5 +42000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.9 +42000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 10.3 +42000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 21.3 +42000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 94.8 +42000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 196.4 +42000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 104.7 +42000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 81.2 +42000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 366.6 +42000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1369.9 +42000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1001.5 +42000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 265.3 +42000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 8.4 +42000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 9.8 +42000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.3 +42000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 3.7 +42000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 8.6 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 14.7 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 84.5 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 3.0 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 27.1 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 39.0 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 4.8 +42000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 171.8 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 102.4 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 19.0 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 17.3 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 12.6 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 21.6 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 36.1 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 11.4 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 4.1 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 5.1 +42000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.0 +42000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +42000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 15.6 +42000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +42000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 8.3 +42000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 80.6 +42000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 303.5 +42000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 310.5 +42000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 191.2 +42000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 8.2 +42000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.3 +42000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +42000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +42000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.4 +42000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 3.6 +42000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 27.6 +42000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 282.0 +42000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 472.3 +42000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 54.0 +42000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 3.3 +42000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.7 +42000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 70.9 +42000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 150.5 +42000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 85.2 +42000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 41.4 +42000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 13.1 +42000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 66.2 +42000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 16.1 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.8 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.5 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 9.5 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 108.7 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 26.3 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 41.2 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 15.5 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 40.4 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.1 +42000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.4 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 5.5 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 129.6 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 144.2 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 285.9 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1635.8 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 840.3 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 43.5 +42000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 57.3 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.3 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 65.5 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 75.2 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 106.4 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 457.5 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1157.0 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1104.5 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 810.4 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 61.2 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 29.8 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 6.2 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 36.6 +42000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.3 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 66.6 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 133.1 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 71.1 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1328.7 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 4694.3 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3123.5 +42000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 17.0 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 13.8 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 396.4 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 895.9 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 775.8 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 392.8 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 155.0 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 32.1 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 55.8 +42000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +42000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 3.6 +42000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 586.2 +42000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1299.7 +42000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2543.1 +42000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1005.6 +42000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 5522.1 +42000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 3630.2 +42000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 91.4 +42000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +42000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 12.4 +42000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 21.1 +42000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 50.5 +42000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 16.5 +42000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.6 +42000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 13.1 +42000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.3 +42000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 24.9 +42000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 23.8 +42000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 17.0 +42000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 19.7 +42000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 4.3 +42000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.1 +42000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 13.4 +42000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 4.9 +42000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.8 +42000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.4 +42000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 3.6 +42000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 10.3 +42000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.9 +42000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 10.1 +42000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 9.9 +42000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 68.8 +42000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 61.4 +42000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 148.4 +42000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 27.1 +42000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +42000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.8 +42000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 6.1 +42000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 40.1 +42000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 562.5 +42000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 698.8 +42000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 165.2 +42000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1174.3 +42000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 417.4 +42000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 5.1 +42000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.8 +42000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +42000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 2.0 +42000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 23.9 +42000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 886.6 +42000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 893.2 +42000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 320.8 +42000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 52.2 +42000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 66.6 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 14.9 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.7 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 91.0 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 218.8 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 147.7 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 143.0 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 526.5 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 591.2 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 158.9 +42000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 2.7 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 104.0 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 19.6 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 12.7 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 22.1 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 69.8 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 25.4 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 196.8 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 612.6 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 871.5 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 271.9 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 27.8 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 4.6 +42000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 16.6 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 83.4 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 25.1 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 115.7 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 44.0 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 6.1 +42000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +42000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 270.6 +42000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 831.8 +42000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 780.0 +42000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 200.0 +42000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 1466.0 +42000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 5638.6 +42000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +42000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +42000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +42000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.6 +42000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.2 +42000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +42000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 112.2 +42000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 194.7 +42000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 312.8 +42000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 520.7 +42000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 15.9 +42000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 10.2 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.5 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +42000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +42000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.7 +42000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 14.8 +42000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 18.4 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 10.3 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 289.7 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 4020.5 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1948.7 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 435.3 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 714.8 +42000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 152.8 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.2 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 70.7 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1765.2 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 30.6 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 17.7 +42000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 26.9 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.4 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 6.6 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 69.6 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 259.7 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1147.4 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 363.3 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 219.3 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 186.0 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 42.1 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 6.9 +42000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.8 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 41.3 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 53.7 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 98.9 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 48.1 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.9 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 50.6 +42000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 42.3 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.2 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 10.2 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 8.5 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.3 +42000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.4 +42000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +42000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 4.7 +42000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +42000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1066.7 +42000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 2869.0 +42000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1639.3 +42000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2595.7 +42000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2287.8 +42000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 3811.9 +42000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3286.3 +42000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1700.5 +42000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +42000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 179.2 +42000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1644.1 +42000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1960.5 +42000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 101.3 +42000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.0 +42000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 42.8 +42000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 15.7 +42000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 13.4 +42000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +42000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.0 +42000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 21.4 +42000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 9.7 +42000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.1 +42000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 16.3 +42000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 100.1 +42000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 193.3 +42000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 210.0 +42000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 56.9 +42000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +42000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +42000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +42000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 121.0 +42000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 571.9 +42000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 113.0 +42000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.1 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 3.8 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 13.6 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.2 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.4 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 34.2 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 42.7 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 106.5 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 107.7 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 45.1 +42000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +42000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +42000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +42000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 8.6 +42000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 19.6 +42000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 7.8 +42000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 30.6 +42000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 144.2 +42000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 75.7 +42000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 21.5 +42000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.5 +42000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +42000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 2247.7 +42000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 2244.3 +42000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1729.9 +42000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 2723.8 +42000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 4508.5 +42000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 615.8 +42000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 2272.1 +42000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 2765.2 +42000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 943.8 +42000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 524.8 +42000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 272.5 +42000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +42000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +42000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +42000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +42000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +42000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.0 +42000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 387.0 +42000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 930.3 +42000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 233.4 +42000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 185.6 +42000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 322.9 +42000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 91.5 +42000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 619.5 +42000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 689.5 +42000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 304.0 +42000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 76.2 +42000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 38.6 +42000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +42000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +42000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +42000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +42000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +42000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 13.2 +42000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 32.2 +42000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 4.4 +42000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 6.7 +42000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 247.2 +42000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 171.1 +42000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 1096.5 +42000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 1428.2 +42000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 163.8 +42000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 147.0 +42000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 42.0 +42000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +42000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +42000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +42000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +42000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +42000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +42000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 142.9 +42000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 791.6 +42000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 1152.4 +42000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 714.7 +42000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1981.1 +42000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 1438.9 +42000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 631.8 +42000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 32.9 +42000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.7 +42000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +42000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 25.0 +42000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 212.9 +42000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 244.4 +42000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 305.2 +42000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 291.7 +42000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 36.5 +42000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 122.7 +42000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 34.3 +42000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 114.0 +42000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 92.2 +42000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 14.1 +42000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 6.6 +42000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 3.3 +42000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 7.5 +42000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 2.4 +42000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 22.0 +42000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 31.8 +42000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 10.0 +42000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 48.7 +42000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 56.3 +42000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 15.2 +42000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 2.0 +42000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.5 +42000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +42000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.3 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.4 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 22.0 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 152.7 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 218.9 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 18.9 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 7.7 +42000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +42000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 41.1 +42000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +42000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.5 +42000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.5 +42000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 2.1 +42000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 43.0 +42000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 78.4 +42000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 231.5 +42000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 77.7 +42000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 90.8 +42000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 9.6 +42000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.6 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 1.8 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 45.0 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 88.7 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 229.4 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 405.6 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 432.1 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 135.4 +42000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 67.1 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 3.9 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.9 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 17.5 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.6 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 36.5 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 18.6 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 26.9 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 17.0 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 7.1 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 3.1 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 3.8 +42000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +42000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 3908.2 +42000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 14578.5 +42000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 21957.4 +42000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 4881.9 +42000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9615.0 +42000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 18573.1 +42000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 14287.4 +42000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 23894.2 +42000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 16231.4 +42000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 36311.4 +42000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 32595.4 +42000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 15.5 +42000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 15.0 +42000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 143.2 +42000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +42000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 152.0 +42000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 61.3 +42000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1358.4 +42000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5024.3 +42000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 18613.5 +42000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1224.6 +42000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 17.1 +42000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 12.2 +42000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.2 +42000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 31.2 +42000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 274.5 +42000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +42000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6581.1 +42000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 24426.9 +42000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 9809.9 +42000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 165.5 +42000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 201.4 +42000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 98.8 +42000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 218.6 +42000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 119.6 +42000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 22.1 +42000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 193.8 +42000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 163.2 +42000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1338.0 +42000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2200.2 +42000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1622.9 +42000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 64.0 +42000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 121.4 +42000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 9.9 +42000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 34.7 +42000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 21.3 +42000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 216.7 +42000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +42000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.4 +42000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.6 +42000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.2 +42000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 8.3 +42000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 13.0 +42000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 23.7 +42000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 22.1 +42000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 93.3 +42000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 34.4 +42000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 5.8 +42000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.5 +42000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +42000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.5 +42000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +42000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.4 +42000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 45.4 +42000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 186.8 +42000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.4 +42000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 8.5 +42000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.7 +42000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +42000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.7 +42000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/PR.POP b/NONROAD/NR08a/DATA/POP/PR.POP new file mode 100644 index 0000000..71319b4 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/PR.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 72000 PR Puerto Rico 1,256,125.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +72000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +72000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +72000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5899.0 +72000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2905.5 +72000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 2981.4 +72000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 25802.2 +72000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 340.9 +72000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 4377.4 +72000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.3 +72000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.7 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.2 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 89.9 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 170.2 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1341.1 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 13.7 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 33.1 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +72000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 12.5 +72000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 13.7 +72000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +72000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 33.1 +72000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +72000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 12.5 +72000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 5.6 +72000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 38.8 +72000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 1.8 +72000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 14.0 +72000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 2.4 +72000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 2.6 +72000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 2.4 +72000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 2.6 +72000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1159.9 +72000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 2.5 +72000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 109.0 +72000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 553.0 +72000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 170.2 +72000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 30.2 +72000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 41.9 +72000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 7.5 +72000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 19.5 +72000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 2.3 +72000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 1.6 +72000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.1 +72000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 2.3 +72000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 1.6 +72000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.1 +72000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 104.4 +72000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 305.3 +72000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 258.9 +72000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 129.7 +72000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 91.4 +72000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 3.7 +72000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.3 +72000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 3.7 +72000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.3 +72000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 45.3 +72000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 69.8 +72000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 20.2 +72000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 8.5 +72000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.8 +72000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +72000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.8 +72000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.3 +72000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.3 +72000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 5.1 +72000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 5.1 +72000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +72000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.2 +72000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 79.4 +72000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 77.7 +72000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 27.8 +72000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 31.7 +72000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 5.3 +72000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 4.5 +72000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 3.5 +72000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 5.3 +72000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 4.5 +72000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 3.5 +72000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 32.7 +72000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 670.1 +72000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 27.1 +72000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 8.3 +72000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 10.5 +72000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 6.9 +72000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.8 +72000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.5 +72000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.2 +72000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 2.8 +72000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 2.5 +72000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 4.2 +72000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 85.7 +72000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 410.7 +72000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 211.2 +72000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 44.3 +72000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 19.5 +72000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.4 +72000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.9 +72000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 5.4 +72000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 2.9 +72000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 11.6 +72000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 651.3 +72000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1088.1 +72000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 36.9 +72000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 28.3 +72000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.1 +72000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 1.6 +72000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.6 +72000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +72000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 3.9 +72000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.6 +72000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +72000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 3.9 +72000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.6 +72000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 10.5 +72000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 14.7 +72000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 26.9 +72000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 6.9 +72000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.9 +72000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.9 +72000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.2 +72000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.8 +72000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +72000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.5 +72000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +72000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +72000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.8 +72000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +72000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 5.5 +72000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +72000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.6 +72000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +72000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 11.0 +72000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.4 +72000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.2 +72000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 11.0 +72000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.4 +72000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 2.7 +72000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 56.2 +72000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +72000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.0 +72000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +72000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.2 +72000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.0 +72000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +72000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.2 +72000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 44.6 +72000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 12.7 +72000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 7.0 +72000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 7.5 +72000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 12.7 +72000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 7.0 +72000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 7.5 +72000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 39.4 +72000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 129.9 +72000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 19.6 +72000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 23.9 +72000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.9 +72000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +72000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 4.7 +72000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 4.4 +72000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.2 +72000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 13.2 +72000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 3.7 +72000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 84.9 +72000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 37.6 +72000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 78.2 +72000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.7 +72000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 37.6 +72000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 78.2 +72000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.7 +72000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 10.0 +72000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 35.6 +72000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 57.3 +72000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 4.2 +72000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 26.6 +72000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +72000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 189.2 +72000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 413.5 +72000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1088.3 +72000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 79.5 +72000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 505.8 +72000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 2.5 +72000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 262.0 +72000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 20.0 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 22.9 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 35.0 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 9.5 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 20.3 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 12.2 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 13.8 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.0 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.3 +72000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 12.2 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 13.8 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 14.0 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.3 +72000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +72000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +72000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.9 +72000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 387.2 +72000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 73.2 +72000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 37.3 +72000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 31.5 +72000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.8 +72000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 3.9 +72000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.6 +72000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.5 +72000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +72000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.8 +72000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 3.9 +72000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.5 +72000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.5 +72000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +72000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +72000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.2 +72000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 7.7 +72000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 4.7 +72000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.2 +72000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 4.7 +72000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.2 +72000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +72000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +72000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 14.3 +72000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.6 +72000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.5 +72000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +72000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 2.5 +72000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 1.1 +72000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 4.5 +72000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +72000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +72000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 2.3 +72000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.9 +72000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 4.4 +72000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +72000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +72000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.2 +72000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +72000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +72000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 7571.1 +72000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 376273.6 +72000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 124.1 +72000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 451.4 +72000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 22431.6 +72000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 7.4 +72000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 702.1 +72000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 4963.3 +72000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 35246.8 +72000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 150.4 +72000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1063.1 +72000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 7549.9 +72000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 61229.4 +72000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +72000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2431.0 +72000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 8553.4 +72000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 45767.2 +72000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 115903.9 +72000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +72000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +72000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 25647.1 +72000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1821.3 +72000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 2643.1 +72000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +72000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +72000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +72000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 402.3 +72000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 107.6 +72000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 5.7 +72000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 12.3 +72000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 6775.9 +72000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 75248.4 +72000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +72000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +72000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 7782.7 +72000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2899.4 +72000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 4264.0 +72000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +72000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +72000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 443.8 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 4340.5 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 136.7 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 148.7 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 11.3 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 77.2 +72000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 76.6 +72000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +72000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +72000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +72000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +72000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +72000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +72000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +72000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +72000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 82.7 +72000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 11960.8 +72000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 9275.5 +72000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 43.9 +72000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.8 +72000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 409.9 +72000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 317.9 +72000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.5 +72000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 424.1 +72000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1448.8 +72000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 640.6 +72000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 9.6 +72000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1554.1 +72000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3041.6 +72000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 295.4 +72000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 9260.4 +72000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 102895.5 +72000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 33536.0 +72000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 10.1 +72000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 317.3 +72000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3526.0 +72000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1149.2 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.5 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 25.6 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 105.5 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 198.9 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 15.0 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 64.1 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.6 +72000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 15.3 +72000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 15.0 +72000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 64.1 +72000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.6 +72000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 15.3 +72000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.8 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 5235.1 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1392.5 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3107.6 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 4050.6 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 802.6 +72000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 6.9 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 301.7 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1306.4 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 3329.4 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2200.0 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 32.2 +72000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 21.1 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 460.2 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1992.6 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 5078.3 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 3355.6 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 49.1 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 32.2 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.1 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.1 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.4 +72000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.3 +72000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 1.7 +72000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 1.4 +72000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.7 +72000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.1 +72000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.8 +72000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.1 +72000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +72000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +72000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +72000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 8.5 +72000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 2.7 +72000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.3 +72000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.1 +72000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 3.9 +72000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.1 +72000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1.2 +72000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 14.4 +72000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 13.4 +72000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 52.3 +72000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 19.1 +72000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 6.5 +72000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 11.1 +72000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 2.7 +72000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1.0 +72000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1.1 +72000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1.0 +72000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 459.6 +72000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1.1 +72000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 4.6 +72000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 2.6 +72000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1.0 +72000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 4.8 +72000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 2.9 +72000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 2.5 +72000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.2 +72000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.3 +72000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +72000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 1.9 +72000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.8 +72000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +72000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.1 +72000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.5 +72000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.1 +72000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +72000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.3 +72000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.6 +72000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.3 +72000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.1 +72000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +72000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.2 +72000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.8 +72000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1.2 +72000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.1 +72000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.1 +72000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +72000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 26.1 +72000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 646.7 +72000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 4549.4 +72000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 10924.6 +72000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 2416.5 +72000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 3457.8 +72000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +72000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +72000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +72000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +72000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +72000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +72000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 320.2 +72000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 2.4 +72000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 149.4 +72000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 132.8 +72000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 49.8 +72000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.2 +72000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +72000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 3.0 +72000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 5.1 +72000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 102.3 +72000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 34.4 +72000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 11.9 +72000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 4.9 +72000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 2.5 +72000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 818.9 +72000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1479.5 +72000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.9 +72000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +72000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 2120.3 +72000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1329.9 +72000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 128.8 +72000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 75.1 +72000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 65.3 +72000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.6 +72000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 30.4 +72000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 2.0 +72000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 4.7 +72000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 63.1 +72000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.6 +72000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 30.3 +72000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 2.0 +72000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 4.4 +72000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.1 +72000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +72000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.3 +72000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.3 +72000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.4 +72000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.4 +72000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 336.0 +72000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 313.7 +72000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 38.5 +72000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 41.7 +72000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 6.1 +72000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 33.8 +72000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 7.2 +72000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 3.4 +72000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 6.1 +72000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 32.8 +72000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 7.2 +72000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.8 +72000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.0 +72000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.6 +72000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.0 +72000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.6 +72000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.2 +72000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.7 +72000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.3 +72000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.8 +72000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.2 +72000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 44.4 +72000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 172.3 +72000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 635.1 +72000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 211.9 +72000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 50.0 +72000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 4.4 +72000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.0 +72000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 50.0 +72000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 4.4 +72000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.0 +72000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.1 +72000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 5610.1 +72000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 3469.5 +72000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1029.3 +72000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 193.6 +72000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 3.3 +72000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.3 +72000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +72000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 3.3 +72000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.3 +72000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +72000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 8.2 +72000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 38.9 +72000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 35.3 +72000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 27.8 +72000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 28.4 +72000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.4 +72000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +72000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +72000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +72000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.4 +72000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +72000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.4 +72000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +72000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +72000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 0.0 +72000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 0.0 +72000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 0.0 +72000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.0 +72000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.0 +72000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +72000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 6.2 +72000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.7 +72000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 2.5 +72000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +72000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +72000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +72000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +72000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.7 +72000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.0 +72000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +72000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +72000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +72000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.7 +72000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.0 +72000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.0 +72000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.0 +72000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.0 +72000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +72000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 6.2 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 226.3 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 156.5 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.5 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.3 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.3 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 27.7 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 24.4 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 10.8 +72000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +72000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.8 +72000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 18.6 +72000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 1.7 +72000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 35.4 +72000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 22.0 +72000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 48.2 +72000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 33.9 +72000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 4.4 +72000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 18.2 +72000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 91.3 +72000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 40.8 +72000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 24.8 +72000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.3 +72000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 9.8 +72000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 18.5 +72000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 22.1 +72000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 39.7 +72000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 56.6 +72000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 52.4 +72000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 53.1 +72000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 145.3 +72000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 134.7 +72000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 46.0 +72000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 13.6 +72000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +72000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 3.7 +72000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 42.1 +72000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 54.5 +72000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 25.3 +72000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +72000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 7.9 +72000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 8.8 +72000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.7 +72000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 4.5 +72000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 6.1 +72000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +72000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 5.9 +72000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 7.0 +72000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 12.8 +72000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 4.0 +72000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +72000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +72000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.5 +72000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 6.8 +72000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 5.7 +72000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.0 +72000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +72000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 5.4 +72000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 1.7 +72000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +72000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 1.7 +72000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.7 +72000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +72000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +72000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 14.8 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 34.8 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 18.6 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 294.3 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 90.3 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 6.5 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 3.7 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.0 +72000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.7 +72000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +72000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +72000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.5 +72000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.7 +72000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 40.7 +72000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 101.5 +72000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 168.8 +72000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 68.2 +72000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 21.2 +72000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 14.1 +72000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 7.2 +72000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.6 +72000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.4 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.7 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.5 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 25.1 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 25.5 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 41.3 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 42.0 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 61.8 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 53.7 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 31.0 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 7.2 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 4.0 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +72000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +72000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.5 +72000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 2.7 +72000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 5.6 +72000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 24.9 +72000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 51.6 +72000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 27.5 +72000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 21.3 +72000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 96.3 +72000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 359.8 +72000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 263.0 +72000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 69.7 +72000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.2 +72000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 2.6 +72000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +72000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.0 +72000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.3 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 3.9 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 22.2 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.8 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 7.1 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 10.2 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.3 +72000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 45.1 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 26.9 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 5.0 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 4.5 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 3.3 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 5.7 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 9.5 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 3.0 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.1 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.3 +72000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +72000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +72000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 4.1 +72000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +72000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.2 +72000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 21.2 +72000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 79.7 +72000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 81.5 +72000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 50.2 +72000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.2 +72000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.6 +72000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +72000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +72000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +72000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.9 +72000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 7.3 +72000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 74.1 +72000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 124.1 +72000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 14.2 +72000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.9 +72000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +72000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 18.6 +72000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 39.5 +72000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 22.4 +72000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 10.9 +72000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 3.4 +72000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 17.4 +72000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 4.2 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.5 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.7 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 2.5 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 28.6 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 6.9 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 10.8 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 4.1 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 10.6 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.8 +72000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.5 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 34.0 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 37.9 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 75.1 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 429.7 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 220.7 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 11.4 +72000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 15.1 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.3 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 17.2 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 19.8 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 28.0 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 120.2 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 303.9 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 290.1 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 212.8 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 16.1 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 7.8 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 1.6 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 9.6 +72000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.3 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 17.5 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 35.0 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 18.7 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 349.0 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1233.0 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 820.4 +72000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 4.5 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 3.6 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 104.1 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 235.3 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 203.8 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 103.2 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 40.7 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 8.4 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 14.6 +72000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +72000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.9 +72000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 154.0 +72000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 341.4 +72000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 668.0 +72000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 264.1 +72000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1450.4 +72000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 953.5 +72000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 24.0 +72000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +72000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 3.2 +72000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 5.5 +72000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 13.3 +72000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 4.3 +72000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.4 +72000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 3.4 +72000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +72000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 6.5 +72000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 6.2 +72000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 4.5 +72000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 5.2 +72000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.1 +72000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.5 +72000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 3.5 +72000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.3 +72000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.2 +72000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +72000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.9 +72000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 2.7 +72000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.2 +72000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 2.6 +72000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 2.6 +72000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 18.1 +72000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 16.1 +72000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 39.0 +72000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 7.1 +72000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +72000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.5 +72000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.7 +72000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 4.9 +72000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 69.0 +72000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 85.7 +72000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 20.3 +72000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 144.0 +72000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 51.2 +72000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.6 +72000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +72000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +72000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.2 +72000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 2.9 +72000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 108.8 +72000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 109.6 +72000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 39.3 +72000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 6.4 +72000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 8.2 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.8 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 11.2 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 26.8 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 18.1 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 17.5 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 64.6 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 72.5 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 19.5 +72000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.3 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 12.8 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 2.4 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.6 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 2.7 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 8.6 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 3.1 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 24.1 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 75.1 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 106.9 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 33.4 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 3.4 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.6 +72000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 2.0 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 10.2 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 3.1 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 14.2 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 5.4 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.7 +72000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +72000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 84.7 +72000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 260.4 +72000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 244.2 +72000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 62.6 +72000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 459.0 +72000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1765.3 +72000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +72000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +72000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +72000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +72000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +72000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +72000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 13.8 +72000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 23.9 +72000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 38.4 +72000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 63.9 +72000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.9 +72000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 4.2 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.0 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +72000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +72000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +72000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +72000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 4.3 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 120.1 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1666.5 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 807.8 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 180.4 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 296.3 +72000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 63.3 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.5 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 29.3 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 731.7 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 12.7 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 7.3 +72000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 11.1 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.7 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 28.9 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 107.6 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 475.6 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 150.6 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 90.9 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 77.1 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 17.5 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.9 +72000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 17.1 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 22.3 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 41.0 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 19.9 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 21.0 +72000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 17.5 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.5 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 4.2 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 3.5 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.0 +72000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +72000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.1 +72000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.2 +72000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +72000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 50.6 +72000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 136.1 +72000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 77.8 +72000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 123.1 +72000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 108.5 +72000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 180.8 +72000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 155.9 +72000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 80.7 +72000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +72000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 8.5 +72000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 78.0 +72000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 93.0 +72000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 4.8 +72000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.1 +72000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 2.0 +72000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.7 +72000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.6 +72000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +72000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.2 +72000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1.0 +72000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.5 +72000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.3 +72000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.8 +72000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 4.7 +72000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 9.2 +72000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 10.0 +72000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 2.7 +72000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +72000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +72000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +72000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 5.7 +72000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 27.1 +72000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 5.4 +72000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.2 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.2 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.6 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.3 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.2 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 1.6 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 2.0 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 5.1 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 5.1 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 2.1 +72000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +72000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +72000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +72000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.4 +72000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.9 +72000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.4 +72000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 1.4 +72000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 6.8 +72000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 3.6 +72000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1.0 +72000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.1 +72000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +72000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 388.0 +72000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 387.4 +72000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 298.6 +72000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 470.2 +72000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 778.3 +72000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 106.3 +72000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 392.2 +72000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 477.3 +72000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 162.9 +72000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 90.6 +72000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 47.0 +72000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +72000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +72000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +72000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +72000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +72000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +72000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 66.8 +72000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 160.6 +72000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 40.3 +72000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 32.0 +72000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 55.7 +72000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 15.8 +72000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 106.9 +72000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 119.0 +72000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 52.5 +72000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 13.2 +72000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 6.7 +72000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +72000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +72000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +72000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +72000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +72000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.3 +72000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 5.6 +72000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.8 +72000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.2 +72000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 42.7 +72000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 29.5 +72000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 189.3 +72000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 246.6 +72000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 28.3 +72000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 25.4 +72000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 7.3 +72000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +72000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +72000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +72000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +72000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +72000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +72000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 24.7 +72000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 136.7 +72000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 198.9 +72000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 123.4 +72000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 342.0 +72000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 248.4 +72000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 109.1 +72000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 5.7 +72000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +72000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +72000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 4.3 +72000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 36.8 +72000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 42.2 +72000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 52.7 +72000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 50.4 +72000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 6.3 +72000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 21.2 +72000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 5.9 +72000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 19.7 +72000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 15.9 +72000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 2.4 +72000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.1 +72000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.6 +72000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.3 +72000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.4 +72000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 3.8 +72000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 5.5 +72000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.7 +72000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 8.4 +72000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 9.7 +72000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 2.6 +72000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.3 +72000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +72000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +72000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.0 +72000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +72000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 7.7 +72000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +72000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +72000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.3 +72000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.4 +72000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 8.1 +72000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 14.7 +72000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 43.5 +72000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 14.6 +72000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 17.1 +72000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.8 +72000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +72000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +72000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +72000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1319.4 +72000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 4921.8 +72000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 7412.9 +72000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1648.1 +72000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 3246.1 +72000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 6270.4 +72000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 4823.5 +72000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 8066.8 +72000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 5479.8 +72000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 12258.9 +72000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 11004.4 +72000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 5.2 +72000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 5.1 +72000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 48.3 +72000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +72000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 51.3 +72000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 20.7 +72000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 458.6 +72000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1696.2 +72000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 6284.0 +72000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 413.4 +72000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 5.8 +72000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 4.1 +72000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.4 +72000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 10.5 +72000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 92.7 +72000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +72000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 2221.8 +72000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 8246.7 +72000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 3311.9 +72000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 55.9 +72000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 68.0 +72000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 33.4 +72000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 73.8 +72000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 40.4 +72000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 7.5 +72000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 65.4 +72000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 55.1 +72000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 451.7 +72000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 742.8 +72000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 547.9 +72000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 21.6 +72000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 41.0 +72000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 3.3 +72000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 11.7 +72000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 7.2 +72000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 73.2 +72000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +72000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +72000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +72000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +72000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/RI.POP b/NONROAD/NR08a/DATA/POP/RI.POP new file mode 100644 index 0000000..2d65387 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/RI.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 44000 RI Rhode Island 425,405.9 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +44000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +44000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +44000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 953.2 +44000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 469.5 +44000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 481.8 +44000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 4169.5 +44000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 904.2 +44000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 1212.3 +44000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.4 +44000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.2 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.6 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 24.9 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 47.1 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 371.4 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 3.8 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 9.2 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +44000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 3.5 +44000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 3.8 +44000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +44000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 9.2 +44000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +44000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 3.5 +44000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.6 +44000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 11.3 +44000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.5 +44000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 4.1 +44000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.7 +44000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.8 +44000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.7 +44000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.8 +44000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 337.0 +44000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.7 +44000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 31.7 +44000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 160.7 +44000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 49.5 +44000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 8.8 +44000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 12.2 +44000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 2.2 +44000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 5.7 +44000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.7 +44000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.5 +44000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.3 +44000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.7 +44000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.5 +44000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.3 +44000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 30.3 +44000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 88.7 +44000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 75.2 +44000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 37.7 +44000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 26.5 +44000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.1 +44000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +44000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.1 +44000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +44000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 13.2 +44000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 20.3 +44000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 5.9 +44000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.5 +44000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +44000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +44000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +44000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +44000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +44000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.5 +44000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.5 +44000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +44000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +44000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 23.1 +44000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 22.6 +44000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 8.1 +44000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 9.2 +44000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.5 +44000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.3 +44000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.0 +44000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.5 +44000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.3 +44000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.0 +44000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 9.5 +44000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 194.7 +44000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 7.9 +44000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.4 +44000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 3.1 +44000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 2.0 +44000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.8 +44000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +44000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.2 +44000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.8 +44000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +44000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.2 +44000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 24.9 +44000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 119.3 +44000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 61.4 +44000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 12.9 +44000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 5.7 +44000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.6 +44000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +44000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.6 +44000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +44000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 3.4 +44000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 189.2 +44000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 316.2 +44000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 10.7 +44000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 8.2 +44000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.3 +44000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.5 +44000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +44000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +44000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.1 +44000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +44000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +44000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.1 +44000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +44000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 3.0 +44000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 4.3 +44000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 7.8 +44000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 2.0 +44000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +44000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +44000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +44000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +44000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +44000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.6 +44000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +44000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +44000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +44000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +44000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.6 +44000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +44000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +44000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +44000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.2 +44000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +44000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +44000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.2 +44000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +44000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.8 +44000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 16.3 +44000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +44000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +44000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +44000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +44000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +44000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +44000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.6 +44000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 13.0 +44000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.7 +44000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 2.0 +44000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 2.2 +44000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.7 +44000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 2.0 +44000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 2.2 +44000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 11.4 +44000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 37.7 +44000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 5.7 +44000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 6.9 +44000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.3 +44000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +44000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.4 +44000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.3 +44000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +44000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 9.3 +44000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 2.6 +44000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 59.5 +44000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 26.3 +44000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 54.8 +44000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.2 +44000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 26.3 +44000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 54.8 +44000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.2 +44000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 7.0 +44000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 24.9 +44000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 40.1 +44000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 2.9 +44000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 18.7 +44000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +44000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 132.6 +44000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 289.8 +44000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 762.7 +44000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 55.7 +44000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 354.5 +44000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.7 +44000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 183.7 +44000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 14.0 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 16.0 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 24.5 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 6.6 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 14.2 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 8.5 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 9.6 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 9.8 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.2 +44000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 8.5 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 9.6 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 9.8 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.2 +44000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +44000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +44000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.7 +44000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 271.4 +44000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 51.3 +44000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 26.1 +44000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 22.1 +44000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.0 +44000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.7 +44000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.4 +44000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.0 +44000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +44000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.0 +44000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.7 +44000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +44000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.0 +44000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +44000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +44000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +44000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 5.4 +44000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 3.3 +44000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +44000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 3.3 +44000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +44000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +44000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +44000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 4.0 +44000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.4 +44000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.2 +44000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +44000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.7 +44000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.8 +44000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 3.1 +44000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +44000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +44000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.6 +44000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.6 +44000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 3.1 +44000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +44000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +44000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.2 +44000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +44000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +44000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 2368.6 +44000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 117714.8 +44000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 38.8 +44000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 68.0 +44000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 3380.9 +44000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 1.1 +44000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 219.6 +44000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1552.7 +44000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 11026.7 +44000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 22.7 +44000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 160.2 +44000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 1137.9 +44000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 19155.2 +44000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +44000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 366.4 +44000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 1289.2 +44000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 14318.0 +44000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 36259.8 +44000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +44000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +44000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 3865.5 +44000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 274.5 +44000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 826.9 +44000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +44000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +44000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +44000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 60.6 +44000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 16.2 +44000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.9 +44000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 1.9 +44000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 2119.8 +44000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 23541.0 +44000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +44000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +44000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 1173.0 +44000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 437.0 +44000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 1334.0 +44000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +44000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +44000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 66.9 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 654.2 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 20.6 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 22.4 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 1.7 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 11.6 +44000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 11.5 +44000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 6476.0 +44000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 9916.8 +44000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 16730.2 +44000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 781.9 +44000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 527.8 +44000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 808.2 +44000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 1363.4 +44000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 63.7 +44000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 25.9 +44000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 3741.9 +44000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 2901.8 +44000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 13.7 +44000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.4 +44000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 61.8 +44000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 47.9 +44000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.2 +44000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 63.9 +44000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 218.4 +44000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 96.5 +44000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 1.4 +44000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 234.2 +44000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 458.4 +44000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 92.4 +44000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 2897.1 +44000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 32190.2 +44000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 10491.5 +44000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 1.5 +44000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 47.8 +44000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 531.4 +44000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 173.2 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 3.9 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 15.9 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 30.0 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 2.3 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 9.7 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +44000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 2.3 +44000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 2.3 +44000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 9.7 +44000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +44000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 2.3 +44000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.3 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 789.0 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 209.9 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 468.4 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 610.5 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 121.0 +44000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.0 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 94.4 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 408.7 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1041.6 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 688.2 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 10.1 +44000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 6.6 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 69.4 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 300.3 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 765.4 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 505.7 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 7.4 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 4.9 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.5 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.2 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +44000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.2 +44000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.2 +44000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.1 +44000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.1 +44000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +44000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.1 +44000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.0 +44000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +44000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +44000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +44000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 0.8 +44000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 0.2 +44000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.0 +44000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +44000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 0.4 +44000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +44000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.1 +44000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1.3 +44000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1.2 +44000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 4.8 +44000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1.8 +44000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 0.6 +44000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1.0 +44000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 0.2 +44000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.1 +44000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.1 +44000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.1 +44000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 42.3 +44000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.1 +44000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 0.4 +44000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 0.2 +44000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.1 +44000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 0.4 +44000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 0.3 +44000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 0.2 +44000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.0 +44000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.0 +44000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +44000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 0.2 +44000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.1 +44000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +44000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.1 +44000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.0 +44000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.0 +44000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +44000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.0 +44000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.1 +44000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.1 +44000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.0 +44000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.0 +44000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +44000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 13.7 +44000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 340.9 +44000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2398.6 +44000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 5759.8 +44000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1274.0 +44000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1823.0 +44000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +44000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +44000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +44000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +44000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +44000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +44000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 168.8 +44000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.3 +44000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 78.7 +44000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 70.0 +44000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 26.3 +44000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.6 +44000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +44000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.6 +44000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 2.7 +44000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 53.9 +44000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 18.2 +44000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 6.3 +44000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 2.6 +44000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.3 +44000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 431.7 +44000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 780.0 +44000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.5 +44000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +44000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1117.9 +44000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 701.1 +44000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 67.9 +44000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 39.6 +44000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 34.4 +44000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.3 +44000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 16.0 +44000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.1 +44000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.5 +44000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 33.3 +44000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.3 +44000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 16.0 +44000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.1 +44000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.3 +44000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.1 +44000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +44000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +44000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +44000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +44000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +44000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 177.2 +44000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 165.4 +44000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 20.3 +44000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 22.0 +44000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 3.2 +44000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 17.8 +44000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 3.8 +44000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.8 +44000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 3.2 +44000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 17.3 +44000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 3.8 +44000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.9 +44000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.5 +44000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.8 +44000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.5 +44000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.3 +44000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +44000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.9 +44000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +44000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.4 +44000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +44000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 23.4 +44000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 90.8 +44000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 334.8 +44000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 111.7 +44000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 26.4 +44000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.3 +44000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.5 +44000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 26.4 +44000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.3 +44000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.5 +44000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.6 +44000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 2957.8 +44000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1829.3 +44000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 542.7 +44000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 102.1 +44000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.7 +44000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +44000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +44000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.7 +44000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +44000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +44000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 4.3 +44000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 20.5 +44000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 18.6 +44000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 14.7 +44000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 15.0 +44000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +44000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +44000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +44000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +44000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +44000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +44000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +44000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +44000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +44000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 13.7 +44000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 86.8 +44000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 4.8 +44000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 1.6 +44000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.2 +44000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.1 +44000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 3.5 +44000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.4 +44000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.4 +44000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +44000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +44000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +44000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +44000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.4 +44000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.1 +44000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +44000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +44000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +44000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.4 +44000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 1.1 +44000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.2 +44000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.4 +44000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.2 +44000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +44000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.2 +44000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +44000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.1 +44000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +44000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +44000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.7 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 62.7 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 43.3 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.9 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.9 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 7.7 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 6.8 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 3.0 +44000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +44000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +44000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 5.4 +44000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.5 +44000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 10.3 +44000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 6.4 +44000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 14.0 +44000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 9.8 +44000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.3 +44000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 5.3 +44000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 26.5 +44000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 11.9 +44000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 7.2 +44000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.7 +44000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 2.9 +44000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 5.4 +44000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 6.4 +44000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 11.5 +44000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 16.4 +44000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 15.2 +44000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 15.4 +44000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 42.2 +44000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 39.1 +44000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 13.4 +44000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 4.0 +44000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +44000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.1 +44000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 12.2 +44000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 15.8 +44000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 7.4 +44000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +44000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 2.3 +44000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.6 +44000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +44000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.3 +44000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.8 +44000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +44000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.7 +44000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 2.0 +44000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 3.7 +44000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.2 +44000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +44000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +44000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 2.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.7 +44000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.6 +44000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.6 +44000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.5 +44000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.5 +44000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +44000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +44000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 4.3 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 10.1 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 5.4 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 85.5 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 26.2 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 1.9 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.1 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.9 +44000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +44000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +44000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +44000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +44000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +44000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 11.8 +44000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 29.5 +44000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 49.0 +44000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 19.8 +44000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 6.2 +44000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 4.1 +44000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 2.1 +44000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +44000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.4 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 7.3 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 7.4 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 12.0 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 12.2 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 18.0 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 15.6 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 9.0 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 2.1 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.2 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +44000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +44000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.1 +44000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.8 +44000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.6 +44000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 7.2 +44000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 15.0 +44000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 8.0 +44000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 6.2 +44000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 28.0 +44000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 104.6 +44000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 76.4 +44000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 20.2 +44000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.6 +44000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.7 +44000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +44000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.3 +44000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.7 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.1 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 6.5 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 2.1 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 3.0 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.4 +44000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 13.1 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 7.8 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.5 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.3 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.0 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.6 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.8 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.9 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.3 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.4 +44000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +44000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +44000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.2 +44000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +44000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.6 +44000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 6.2 +44000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 23.2 +44000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 23.7 +44000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 14.6 +44000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.6 +44000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +44000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +44000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +44000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +44000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.3 +44000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 2.1 +44000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 21.5 +44000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 36.0 +44000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 4.1 +44000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.2 +44000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +44000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 5.4 +44000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 11.5 +44000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 6.5 +44000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 3.2 +44000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.0 +44000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 5.1 +44000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.2 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.7 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 8.3 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 2.0 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 3.1 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.2 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 3.1 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +44000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.4 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 9.9 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 11.0 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 21.8 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 124.8 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 64.1 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 3.3 +44000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 4.4 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 5.0 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 5.7 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 8.1 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 34.9 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 88.3 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 84.3 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 61.8 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 4.7 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 2.3 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.5 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.8 +44000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 5.1 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 10.2 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 5.4 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 101.4 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 358.3 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 238.4 +44000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.3 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.1 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 30.3 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 68.4 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 59.2 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 30.0 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 11.8 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.4 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 4.3 +44000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +44000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.3 +44000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 44.7 +44000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 99.2 +44000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 194.1 +44000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 76.8 +44000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 421.5 +44000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 277.1 +44000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 7.0 +44000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +44000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.9 +44000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.6 +44000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 3.9 +44000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.3 +44000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +44000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.0 +44000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +44000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 1.9 +44000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.8 +44000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.3 +44000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.5 +44000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +44000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +44000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.0 +44000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.4 +44000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +44000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +44000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.3 +44000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.8 +44000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +44000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.8 +44000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.8 +44000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 5.3 +44000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 4.7 +44000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 11.3 +44000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 2.1 +44000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +44000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +44000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.5 +44000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 3.4 +44000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 48.4 +44000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 60.1 +44000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 14.2 +44000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 101.0 +44000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 35.9 +44000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.4 +44000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +44000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +44000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.2 +44000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 2.1 +44000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 76.2 +44000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 76.8 +44000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 27.6 +44000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 4.5 +44000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 5.7 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.3 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 7.8 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 18.8 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 12.7 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 12.3 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 45.3 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 50.8 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 13.7 +44000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.2 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 8.9 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.7 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.1 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.9 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 6.0 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 2.2 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 16.9 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 52.7 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 74.9 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 23.4 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 2.4 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.4 +44000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 1.4 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 7.2 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 2.2 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 9.9 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 3.8 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.5 +44000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +44000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 23.5 +44000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 72.1 +44000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 67.6 +44000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 17.3 +44000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 127.1 +44000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 488.9 +44000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +44000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 9.6 +44000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 16.7 +44000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 26.9 +44000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 44.8 +44000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.4 +44000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.6 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.2 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +44000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +44000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +44000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.9 +44000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.2 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.6 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 18.1 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 251.2 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 121.7 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 27.2 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 44.7 +44000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 9.5 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 4.4 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 110.3 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 1.9 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 1.1 +44000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 1.7 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.4 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 4.4 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 16.2 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 71.7 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 22.7 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 13.7 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 11.6 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 2.6 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.4 +44000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 2.6 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 3.4 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 6.2 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 3.0 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 3.2 +44000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 2.6 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.6 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.5 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.1 +44000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +44000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +44000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.0 +44000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +44000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 4.7 +44000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 12.5 +44000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 7.2 +44000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 11.3 +44000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 10.0 +44000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 16.7 +44000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 14.4 +44000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 7.4 +44000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +44000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 0.8 +44000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 7.2 +44000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 8.6 +44000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 0.4 +44000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.0 +44000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 0.2 +44000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.1 +44000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.1 +44000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +44000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.0 +44000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.1 +44000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.0 +44000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.0 +44000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.1 +44000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 0.4 +44000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 0.8 +44000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 0.9 +44000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 0.2 +44000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +44000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +44000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +44000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 0.5 +44000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2.5 +44000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 0.5 +44000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.0 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.0 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.1 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.0 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.0 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.1 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 0.2 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 0.5 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 0.5 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 0.2 +44000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.1 +44000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.1 +44000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 0.6 +44000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 0.3 +44000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.1 +44000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +44000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +44000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 204.6 +44000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 204.3 +44000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 157.4 +44000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 247.9 +44000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 410.3 +44000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 56.0 +44000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 206.8 +44000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 251.7 +44000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 85.9 +44000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 47.8 +44000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 24.8 +44000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +44000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +44000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +44000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +44000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +44000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +44000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 35.2 +44000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 84.7 +44000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 21.2 +44000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 16.9 +44000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 29.4 +44000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 8.3 +44000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 56.4 +44000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 62.8 +44000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 27.7 +44000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 6.9 +44000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 3.5 +44000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +44000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +44000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +44000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +44000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +44000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.2 +44000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 2.9 +44000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.4 +44000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.6 +44000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 22.5 +44000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 15.6 +44000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 99.8 +44000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 130.0 +44000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 14.9 +44000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 13.4 +44000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 3.8 +44000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +44000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +44000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +44000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +44000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +44000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +44000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 13.0 +44000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 72.0 +44000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 104.9 +44000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 65.0 +44000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 180.3 +44000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 131.0 +44000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 57.5 +44000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.0 +44000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +44000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +44000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.3 +44000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 19.4 +44000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 22.2 +44000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 27.8 +44000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 26.5 +44000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.3 +44000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 11.2 +44000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.1 +44000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 10.4 +44000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 8.4 +44000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.3 +44000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.6 +44000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.3 +44000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.7 +44000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +44000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.0 +44000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 2.9 +44000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.9 +44000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 4.4 +44000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 5.1 +44000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.4 +44000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +44000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +44000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +44000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.6 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 3.8 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 5.5 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.5 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.2 +44000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +44000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 4.4 +44000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +44000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +44000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.2 +44000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +44000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 4.6 +44000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 8.3 +44000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 24.6 +44000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 8.3 +44000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 9.6 +44000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 1.0 +44000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +44000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.1 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.1 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.1 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +44000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +44000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 565.9 +44000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 2110.8 +44000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 3179.2 +44000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 706.8 +44000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1392.2 +44000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2689.2 +44000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 2068.7 +44000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 3459.7 +44000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2350.2 +44000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 5257.6 +44000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 4719.5 +44000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.2 +44000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.2 +44000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 20.7 +44000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +44000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 22.0 +44000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 8.9 +44000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 196.7 +44000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 727.5 +44000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2695.1 +44000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 177.3 +44000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.5 +44000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.8 +44000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.0 +44000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 4.5 +44000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 39.7 +44000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +44000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 952.9 +44000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 3536.8 +44000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1420.4 +44000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 24.0 +44000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 29.2 +44000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 14.3 +44000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 31.7 +44000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 17.3 +44000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 3.2 +44000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 28.1 +44000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 23.6 +44000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 193.7 +44000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 318.6 +44000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 235.0 +44000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 9.3 +44000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 17.6 +44000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.4 +44000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 5.0 +44000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 3.1 +44000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 31.4 +44000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +44000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +44000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +44000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +44000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/SC.POP b/NONROAD/NR08a/DATA/POP/SC.POP new file mode 100644 index 0000000..3f671e6 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/SC.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 45000 SC South Carolina 1,846,271.0 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +45000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +45000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +45000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 11455.6 +45000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 5642.3 +45000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 5789.9 +45000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 50107.2 +45000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 4209.8 +45000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 4656.6 +45000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.4 +45000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.8 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 2.4 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 95.6 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 181.1 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1426.6 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 14.6 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 35.2 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +45000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 13.3 +45000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 14.6 +45000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.3 +45000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 35.2 +45000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.3 +45000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 13.3 +45000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 13.9 +45000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 96.7 +45000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.5 +45000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 35.0 +45000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 5.9 +45000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 6.5 +45000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 5.9 +45000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 6.5 +45000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 2892.9 +45000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.3 +45000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 271.8 +45000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1379.4 +45000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 424.6 +45000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 75.3 +45000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 104.6 +45000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 18.7 +45000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 48.6 +45000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 5.7 +45000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 3.9 +45000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.7 +45000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 5.7 +45000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 3.9 +45000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.7 +45000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 260.4 +45000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 761.5 +45000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 645.8 +45000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 323.5 +45000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 227.9 +45000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 9.3 +45000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.8 +45000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 9.3 +45000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.8 +45000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 113.1 +45000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 174.1 +45000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 50.4 +45000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 21.2 +45000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.1 +45000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +45000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.1 +45000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +45000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.7 +45000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 12.8 +45000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 12.7 +45000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +45000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.5 +45000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 198.0 +45000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 193.8 +45000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 69.3 +45000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 79.0 +45000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 13.2 +45000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 11.1 +45000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 8.7 +45000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 13.2 +45000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 11.1 +45000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 8.7 +45000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 81.7 +45000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1671.5 +45000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 67.6 +45000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 20.7 +45000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 26.2 +45000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 17.2 +45000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.9 +45000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.3 +45000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.5 +45000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 6.9 +45000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.3 +45000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 10.5 +45000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 213.7 +45000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1024.3 +45000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 526.7 +45000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 110.4 +45000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 48.5 +45000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 13.4 +45000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.3 +45000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 13.4 +45000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.3 +45000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 29.0 +45000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1624.4 +45000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2713.9 +45000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 92.1 +45000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 70.6 +45000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.8 +45000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 3.9 +45000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.4 +45000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +45000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 9.7 +45000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.6 +45000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +45000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 9.7 +45000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.6 +45000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 26.1 +45000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 36.7 +45000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 67.0 +45000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 17.2 +45000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +45000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.1 +45000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.6 +45000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.1 +45000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +45000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.7 +45000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +45000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +45000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.1 +45000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +45000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 13.7 +45000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +45000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.6 +45000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +45000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 27.4 +45000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.9 +45000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +45000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 27.4 +45000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.9 +45000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 6.7 +45000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 140.1 +45000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +45000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.5 +45000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +45000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +45000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.5 +45000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +45000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.5 +45000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 111.3 +45000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 31.6 +45000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 17.4 +45000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 18.6 +45000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 31.6 +45000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 17.4 +45000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 18.6 +45000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 98.2 +45000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 324.0 +45000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 48.8 +45000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 59.6 +45000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.3 +45000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +45000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 11.6 +45000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 11.1 +45000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.5 +45000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 41.4 +45000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 11.5 +45000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 265.6 +45000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 117.5 +45000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 244.7 +45000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 5.4 +45000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 117.5 +45000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 244.7 +45000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 5.4 +45000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 31.1 +45000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 111.2 +45000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 179.1 +45000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 13.1 +45000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 83.3 +45000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.4 +45000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 591.6 +45000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1293.1 +45000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3403.4 +45000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 248.6 +45000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1581.8 +45000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 7.7 +45000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 819.5 +45000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 62.4 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 71.5 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 109.4 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 29.6 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 63.4 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 38.1 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 43.0 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 43.6 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.9 +45000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 38.1 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 43.0 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 43.6 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.9 +45000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +45000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +45000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.0 +45000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1211.0 +45000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 228.8 +45000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 116.5 +45000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 98.5 +45000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.8 +45000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.2 +45000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.0 +45000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.7 +45000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +45000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.8 +45000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.2 +45000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.5 +45000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.7 +45000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +45000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.5 +45000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.6 +45000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 24.1 +45000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 14.6 +45000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.5 +45000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 14.6 +45000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.5 +45000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.3 +45000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.5 +45000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 15.2 +45000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.7 +45000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.6 +45000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +45000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 7.8 +45000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 3.6 +45000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 14.0 +45000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +45000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +45000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 7.3 +45000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.8 +45000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 13.8 +45000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +45000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.4 +45000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.8 +45000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +45000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +45000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 9743.4 +45000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 484234.0 +45000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 159.7 +45000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 511.1 +45000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 25401.8 +45000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 8.4 +45000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 903.5 +45000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 6387.4 +45000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 45359.8 +45000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 170.3 +45000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1203.9 +45000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 8549.6 +45000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 78797.3 +45000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +45000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2752.8 +45000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 9685.9 +45000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 58898.7 +45000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 149159.0 +45000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +45000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +45000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 29043.1 +45000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2062.5 +45000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 3401.5 +45000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +45000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +45000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +45000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 455.6 +45000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 121.9 +45000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 6.4 +45000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 14.0 +45000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 8720.1 +45000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 96838.6 +45000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +45000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +45000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 8813.2 +45000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3283.4 +45000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 5487.4 +45000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +45000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +45000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 502.6 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 4915.2 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 154.8 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 168.4 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 12.8 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 87.5 +45000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 86.7 +45000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +45000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +45000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +45000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +45000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +45000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +45000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +45000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +45000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 106.4 +45000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 15392.6 +45000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 11936.9 +45000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 56.5 +45000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.2 +45000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 464.1 +45000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 359.9 +45000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.7 +45000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 480.3 +45000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1640.6 +45000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 725.4 +45000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 10.9 +45000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1759.9 +45000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3444.4 +45000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 380.1 +45000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 11917.4 +45000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 132418.3 +45000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 43158.2 +45000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 11.5 +45000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 359.4 +45000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3992.8 +45000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1301.4 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.6 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 29.0 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 119.5 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 225.2 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.0 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.6 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +45000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +45000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.0 +45000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.6 +45000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +45000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +45000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.1 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 5928.3 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1576.9 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3519.1 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 4586.9 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 908.8 +45000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 7.8 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 388.2 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 1681.2 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 4284.7 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 2831.2 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 41.5 +45000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 27.2 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 521.1 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2256.5 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 5750.7 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 3799.9 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 55.6 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 36.5 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.6 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.2 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.4 +45000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.4 +45000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 11.8 +45000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 10.2 +45000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 4.9 +45000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.5 +45000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 5.8 +45000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.7 +45000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +45000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +45000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +45000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 60.2 +45000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 19.3 +45000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 2.2 +45000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.4 +45000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 27.9 +45000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.4 +45000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 8.5 +45000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 102.3 +45000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 95.4 +45000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 371.3 +45000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 135.4 +45000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 46.5 +45000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 78.8 +45000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 19.2 +45000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 7.2 +45000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 7.5 +45000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 7.4 +45000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 3265.3 +45000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 8.2 +45000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 32.6 +45000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 18.4 +45000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 7.0 +45000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 34.1 +45000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 20.3 +45000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 18.0 +45000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 1.4 +45000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 2.3 +45000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.4 +45000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 13.5 +45000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 5.6 +45000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.4 +45000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.6 +45000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 3.5 +45000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.9 +45000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +45000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 2.2 +45000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 4.6 +45000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 2.1 +45000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 1.0 +45000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +45000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 1.1 +45000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 6.0 +45000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 8.5 +45000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.8 +45000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 1.0 +45000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.2 +45000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 45.8 +45000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1137.0 +45000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 7999.2 +45000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 19208.4 +45000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 4248.8 +45000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 6079.7 +45000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +45000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +45000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +45000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +45000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +45000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +45000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 563.0 +45000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 4.2 +45000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 262.6 +45000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 233.6 +45000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 87.6 +45000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 2.0 +45000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.3 +45000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 5.3 +45000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 9.0 +45000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 179.9 +45000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 60.5 +45000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 20.9 +45000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 8.5 +45000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 4.3 +45000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 1439.8 +45000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 2601.3 +45000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.6 +45000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.3 +45000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 3728.0 +45000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 2338.3 +45000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 226.5 +45000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 132.0 +45000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 114.7 +45000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.1 +45000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 53.4 +45000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 3.5 +45000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 8.2 +45000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 111.0 +45000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.1 +45000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 53.3 +45000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 3.5 +45000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 7.7 +45000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 3.8 +45000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +45000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.5 +45000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.6 +45000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.6 +45000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.7 +45000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 590.8 +45000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 551.5 +45000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 67.6 +45000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 73.3 +45000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 10.7 +45000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 59.4 +45000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 12.6 +45000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 5.9 +45000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 10.7 +45000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 57.7 +45000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 12.6 +45000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 3.2 +45000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.7 +45000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 2.8 +45000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.8 +45000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.0 +45000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.3 +45000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 3.1 +45000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.5 +45000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 1.3 +45000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.4 +45000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 78.1 +45000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 302.9 +45000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1116.7 +45000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 372.5 +45000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 87.9 +45000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 7.8 +45000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.8 +45000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 87.9 +45000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 7.8 +45000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.8 +45000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.9 +45000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 9864.1 +45000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 6100.4 +45000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1809.8 +45000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 340.3 +45000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 5.8 +45000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.4 +45000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +45000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 5.8 +45000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.4 +45000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +45000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 14.4 +45000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 68.5 +45000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 62.0 +45000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 48.9 +45000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 50.0 +45000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.8 +45000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +45000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +45000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +45000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.8 +45000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.3 +45000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.7 +45000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +45000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +45000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1167.9 +45000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 7415.1 +45000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 410.1 +45000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 132.9 +45000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 12.9 +45000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 5.3 +45000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 2.8 +45000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.3 +45000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 1.2 +45000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.1 +45000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +45000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +45000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +45000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +45000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.9 +45000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.1 +45000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +45000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.1 +45000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.3 +45000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.9 +45000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 2.4 +45000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 4.4 +45000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2.9 +45000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +45000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 2.9 +45000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.4 +45000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 1.2 +45000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +45000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +45000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 6.6 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 240.8 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 166.5 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.6 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 3.5 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 3.5 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 29.5 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 26.0 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 11.5 +45000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.4 +45000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.9 +45000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 46.5 +45000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.3 +45000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 88.2 +45000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 54.9 +45000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 120.3 +45000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 84.5 +45000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 10.9 +45000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 45.5 +45000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 227.8 +45000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 101.8 +45000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 61.9 +45000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 5.7 +45000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 24.5 +45000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 46.0 +45000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 55.1 +45000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 98.9 +45000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 141.1 +45000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 130.8 +45000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 132.4 +45000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 362.4 +45000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 336.0 +45000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 114.7 +45000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 34.0 +45000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +45000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 9.1 +45000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 105.1 +45000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 136.0 +45000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 63.1 +45000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +45000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 19.6 +45000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 22.0 +45000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.7 +45000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 11.3 +45000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 15.1 +45000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +45000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 14.8 +45000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 17.5 +45000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 31.9 +45000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 9.9 +45000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.4 +45000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +45000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.1 +45000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 17.0 +45000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 14.2 +45000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 4.9 +45000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +45000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 13.5 +45000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.1 +45000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +45000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.1 +45000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.8 +45000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +45000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +45000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 36.9 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 86.8 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 46.4 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 734.1 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 225.2 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 16.1 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 9.3 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 7.4 +45000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.8 +45000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +45000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +45000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.3 +45000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.9 +45000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 101.5 +45000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 253.1 +45000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 421.0 +45000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 170.0 +45000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 52.8 +45000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 35.3 +45000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 17.9 +45000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.6 +45000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.1 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.6 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.7 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 62.5 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 63.6 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 103.1 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 104.8 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 154.1 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 134.0 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 77.2 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 18.1 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 9.9 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +45000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.3 +45000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.2 +45000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 6.8 +45000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 13.9 +45000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 62.1 +45000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 128.7 +45000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 68.6 +45000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 53.2 +45000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 240.2 +45000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 897.4 +45000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 656.1 +45000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 173.8 +45000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.5 +45000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.4 +45000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +45000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.4 +45000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 5.7 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 9.6 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 55.4 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.0 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 17.8 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 25.6 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.1 +45000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 112.6 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 67.1 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 12.5 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 11.3 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.3 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 14.2 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 23.7 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 7.5 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.7 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.3 +45000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +45000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +45000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 10.3 +45000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +45000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.4 +45000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 52.8 +45000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 198.9 +45000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 203.4 +45000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 125.3 +45000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.4 +45000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.5 +45000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +45000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +45000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +45000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.3 +45000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 18.1 +45000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 184.7 +45000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 309.4 +45000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 35.4 +45000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.1 +45000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +45000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 46.4 +45000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 98.6 +45000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 55.8 +45000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 27.1 +45000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 8.6 +45000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 43.4 +45000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 10.6 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.2 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.6 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.3 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 71.2 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 17.2 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 27.0 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 10.2 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 26.5 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.0 +45000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.6 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 84.9 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 94.5 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 187.3 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1071.7 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 550.5 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 28.5 +45000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 37.5 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.8 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 42.9 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 49.3 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 69.7 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 299.7 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 758.0 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 723.6 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 530.9 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 40.1 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 19.5 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.1 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 23.9 +45000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.9 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 43.6 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 87.2 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 46.6 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 870.5 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3075.3 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2046.2 +45000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 11.1 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 9.0 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 259.7 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 586.9 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 508.3 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 257.4 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 101.5 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 21.0 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 36.5 +45000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +45000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.3 +45000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 384.0 +45000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 851.4 +45000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1666.0 +45000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 658.8 +45000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3617.7 +45000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2378.2 +45000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 59.9 +45000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +45000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 8.1 +45000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 13.8 +45000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 33.1 +45000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 10.8 +45000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.0 +45000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 8.6 +45000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +45000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 16.3 +45000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 15.6 +45000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 11.1 +45000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 12.9 +45000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 2.8 +45000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.3 +45000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 8.8 +45000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.2 +45000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.5 +45000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +45000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.4 +45000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 6.8 +45000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.6 +45000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 6.6 +45000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 6.5 +45000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 45.1 +45000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 40.3 +45000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 97.2 +45000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 17.7 +45000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +45000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.2 +45000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.3 +45000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 15.4 +45000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 215.8 +45000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 268.1 +45000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 63.4 +45000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 450.5 +45000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 160.1 +45000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.0 +45000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +45000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +45000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.8 +45000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 9.2 +45000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 340.1 +45000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 342.7 +45000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 123.1 +45000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 20.0 +45000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 25.6 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 5.7 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 34.9 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 83.9 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 56.6 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 54.8 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 202.0 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 226.8 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 61.0 +45000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.0 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 39.9 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 7.5 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 4.9 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 8.5 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 26.8 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 9.7 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 75.5 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 235.0 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 334.3 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 104.3 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 10.7 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.8 +45000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 6.4 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 32.0 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 9.6 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 44.4 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 16.9 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.3 +45000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +45000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 90.1 +45000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 277.0 +45000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 259.8 +45000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 66.6 +45000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 488.2 +45000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1877.9 +45000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +45000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +45000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +45000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +45000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +45000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +45000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 43.0 +45000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 74.7 +45000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 120.0 +45000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 199.8 +45000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 6.1 +45000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 4.8 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.2 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +45000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +45000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +45000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +45000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 4.8 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 136.0 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1887.2 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 914.7 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 204.3 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 335.5 +45000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 71.7 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 33.2 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 828.6 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 14.4 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 8.3 +45000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 12.6 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.1 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 32.7 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 121.9 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 538.6 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 170.5 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 103.0 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 87.3 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 19.8 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.2 +45000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.4 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 19.4 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 25.2 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 46.4 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 22.6 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 23.7 +45000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 19.9 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.5 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 4.8 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.0 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.1 +45000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +45000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.4 +45000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.6 +45000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +45000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 359.5 +45000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 966.8 +45000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 552.4 +45000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 874.7 +45000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 770.9 +45000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 1284.5 +45000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 1107.4 +45000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 573.0 +45000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +45000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 60.4 +45000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 554.0 +45000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 660.6 +45000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 34.1 +45000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.7 +45000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 14.4 +45000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 5.3 +45000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 4.5 +45000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.2 +45000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 1.4 +45000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 7.2 +45000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 3.3 +45000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 2.0 +45000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 5.5 +45000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 33.7 +45000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 65.1 +45000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 70.8 +45000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 19.2 +45000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +45000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +45000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +45000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 40.8 +45000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 192.7 +45000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 38.1 +45000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.7 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 1.3 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 4.6 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 2.4 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 1.5 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 11.5 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 14.4 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 35.9 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 36.3 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 15.2 +45000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +45000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +45000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +45000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 2.9 +45000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 6.6 +45000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 2.6 +45000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 10.3 +45000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 48.6 +45000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 25.5 +45000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 7.3 +45000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.5 +45000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +45000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 682.2 +45000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 681.2 +45000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 525.1 +45000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 826.8 +45000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 1368.5 +45000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 186.9 +45000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 689.6 +45000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 839.3 +45000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 286.5 +45000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 159.3 +45000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 82.7 +45000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +45000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +45000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +45000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +45000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +45000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.3 +45000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 117.5 +45000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 282.4 +45000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 70.8 +45000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 56.3 +45000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 98.0 +45000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 27.8 +45000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 188.0 +45000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 209.3 +45000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 92.3 +45000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 23.1 +45000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 11.7 +45000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +45000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +45000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +45000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +45000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +45000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 4.0 +45000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 9.8 +45000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 1.3 +45000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 2.0 +45000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 75.0 +45000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 51.9 +45000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 332.8 +45000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 433.5 +45000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 49.7 +45000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 44.6 +45000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 12.8 +45000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +45000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +45000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +45000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +45000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +45000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +45000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 43.4 +45000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 240.3 +45000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 349.8 +45000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 216.9 +45000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 601.3 +45000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 436.8 +45000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 191.8 +45000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 10.0 +45000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +45000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +45000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 7.6 +45000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 64.6 +45000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 74.2 +45000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 92.6 +45000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 88.5 +45000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 11.1 +45000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 37.2 +45000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 10.4 +45000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 34.6 +45000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 28.0 +45000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 4.3 +45000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 2.0 +45000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.0 +45000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 2.3 +45000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.7 +45000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 6.7 +45000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 9.7 +45000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 3.0 +45000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 14.8 +45000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 17.1 +45000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 4.6 +45000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.6 +45000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +45000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +45000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.5 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.7 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.0 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 47.2 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 327.4 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 469.1 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 40.5 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 16.6 +45000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.4 +45000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 3.6 +45000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +45000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +45000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +45000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.2 +45000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 3.7 +45000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 6.8 +45000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 20.1 +45000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 6.7 +45000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 7.9 +45000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.8 +45000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +45000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.6 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 1.3 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.7 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.0 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.6 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.3 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +45000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +45000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 3802.2 +45000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 14183.1 +45000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 21361.8 +45000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 4749.5 +45000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9354.2 +45000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 18069.3 +45000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 13899.9 +45000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 23246.1 +45000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 15791.2 +45000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 35326.5 +45000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 31711.4 +45000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 15.1 +45000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 14.6 +45000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 139.3 +45000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +45000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 147.9 +45000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 59.6 +45000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1321.6 +45000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 4888.0 +45000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 18108.7 +45000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1191.4 +45000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 16.6 +45000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 11.9 +45000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.0 +45000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 30.4 +45000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 267.0 +45000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +45000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6402.6 +45000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 23764.4 +45000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 9543.8 +45000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 161.0 +45000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 195.9 +45000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 96.1 +45000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 212.7 +45000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 116.4 +45000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 21.5 +45000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 188.6 +45000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 158.8 +45000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1301.7 +45000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2140.5 +45000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1578.9 +45000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 62.3 +45000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 118.1 +45000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 9.6 +45000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 33.8 +45000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 20.7 +45000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 210.8 +45000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +45000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.7 +45000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.8 +45000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.1 +45000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 4.1 +45000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 6.5 +45000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 11.8 +45000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 11.0 +45000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 46.3 +45000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 17.1 +45000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.9 +45000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.7 +45000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +45000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +45000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +45000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.7 +45000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 22.5 +45000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 92.7 +45000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.7 +45000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 4.2 +45000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.3 +45000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +45000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.3 +45000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/SD.POP b/NONROAD/NR08a/DATA/POP/SD.POP new file mode 100644 index 0000000..d2b01a7 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/SD.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 46000 SD South Dakota 482,467.8 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +46000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 52.9 +46000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 31.2 +46000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 33.5 +46000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 2671.1 +46000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 2696.1 +46000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1210.1 +46000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 4263.3 +46000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 1752.2 +46000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 456.5 +46000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 3628.9 +46000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 1787.3 +46000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 1834.1 +46000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 15872.7 +46000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1052.5 +46000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 862.5 +46000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.3 +46000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.4 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 17.7 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 33.5 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 264.2 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.7 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 6.5 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +46000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.5 +46000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.7 +46000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +46000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 6.5 +46000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +46000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.5 +46000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.7 +46000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 11.9 +46000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.6 +46000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 4.3 +46000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.7 +46000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.8 +46000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.7 +46000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.8 +46000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 355.6 +46000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.8 +46000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 33.4 +46000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 169.5 +46000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 52.2 +46000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 9.3 +46000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 12.9 +46000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 2.3 +46000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 6.0 +46000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.7 +46000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.5 +46000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.3 +46000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.7 +46000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.5 +46000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.3 +46000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 32.0 +46000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 93.6 +46000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 79.4 +46000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 39.8 +46000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 28.0 +46000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.1 +46000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +46000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.1 +46000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +46000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 13.9 +46000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 21.4 +46000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 6.2 +46000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.6 +46000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +46000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +46000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.3 +46000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +46000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +46000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.6 +46000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.6 +46000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +46000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +46000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 24.3 +46000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 23.8 +46000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 8.5 +46000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 9.7 +46000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.6 +46000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.4 +46000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.1 +46000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.6 +46000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.4 +46000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.1 +46000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 10.0 +46000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 205.5 +46000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 8.3 +46000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.5 +46000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 3.2 +46000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 2.1 +46000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.9 +46000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.8 +46000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.3 +46000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.9 +46000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.8 +46000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.3 +46000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 26.3 +46000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 125.9 +46000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 64.7 +46000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 13.6 +46000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 6.0 +46000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.6 +46000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.9 +46000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.6 +46000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.9 +46000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 3.6 +46000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 199.7 +46000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 333.6 +46000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 11.3 +46000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 8.7 +46000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.3 +46000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.5 +46000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +46000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +46000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.2 +46000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +46000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +46000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.2 +46000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +46000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 3.2 +46000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 4.5 +46000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 8.2 +46000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 2.1 +46000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +46000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.3 +46000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +46000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +46000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +46000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.7 +46000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +46000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +46000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.3 +46000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +46000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.7 +46000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +46000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +46000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +46000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.4 +46000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +46000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +46000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 3.4 +46000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +46000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.8 +46000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 17.2 +46000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +46000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +46000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +46000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +46000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +46000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +46000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.7 +46000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 13.7 +46000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.9 +46000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 2.1 +46000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 2.3 +46000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.9 +46000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 2.1 +46000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 2.3 +46000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 12.1 +46000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 39.8 +46000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 6.0 +46000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 7.3 +46000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.3 +46000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +46000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.4 +46000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.4 +46000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +46000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 5.4 +46000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 1.5 +46000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 34.3 +46000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 15.2 +46000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 31.6 +46000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +46000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 15.2 +46000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 31.6 +46000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.7 +46000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 4.0 +46000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 14.4 +46000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 23.1 +46000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 1.7 +46000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 10.8 +46000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +46000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 76.4 +46000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 167.1 +46000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 439.8 +46000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 32.1 +46000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 204.4 +46000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.0 +46000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 105.9 +46000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 8.1 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 9.2 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 14.1 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 3.8 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 8.2 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 4.9 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 5.6 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 5.6 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +46000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 4.9 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 5.6 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 5.6 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +46000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +46000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +46000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.4 +46000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 156.5 +46000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 29.6 +46000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 15.1 +46000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 12.7 +46000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.1 +46000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.6 +46000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +46000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +46000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +46000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.1 +46000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 1.6 +46000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +46000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.6 +46000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +46000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +46000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +46000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 3.1 +46000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 1.9 +46000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +46000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 1.9 +46000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +46000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +46000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +46000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 2.8 +46000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.3 +46000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +46000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +46000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.0 +46000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.5 +46000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 1.8 +46000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +46000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +46000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.9 +46000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.4 +46000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 1.8 +46000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +46000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +46000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +46000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +46000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +46000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1774.0 +46000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 88164.1 +46000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 29.1 +46000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 31.1 +46000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1544.7 +46000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.5 +46000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 164.5 +46000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1162.9 +46000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 8258.6 +46000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 10.4 +46000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 73.2 +46000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 519.9 +46000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 14346.6 +46000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +46000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 167.4 +46000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 589.0 +46000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 10723.6 +46000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 27157.3 +46000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +46000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +46000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1766.1 +46000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 125.4 +46000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 619.3 +46000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +46000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +46000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +46000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 27.7 +46000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 7.4 +46000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.4 +46000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.9 +46000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1587.7 +46000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 17631.3 +46000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +46000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +46000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 535.9 +46000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 199.7 +46000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 999.1 +46000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +46000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +46000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 30.6 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 298.9 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 9.4 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 10.2 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.8 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 5.3 +46000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 5.3 +46000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 4850.3 +46000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 7427.3 +46000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 12530.3 +46000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 585.6 +46000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 241.1 +46000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 369.2 +46000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 622.9 +46000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 29.1 +46000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 19.4 +46000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2802.5 +46000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 2173.3 +46000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 10.3 +46000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.2 +46000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 28.2 +46000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 21.9 +46000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +46000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 29.2 +46000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 99.8 +46000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 44.1 +46000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.7 +46000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 107.0 +46000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 209.4 +46000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 69.2 +46000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 2169.8 +46000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 24109.3 +46000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 7857.8 +46000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.7 +46000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 21.9 +46000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 242.8 +46000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 79.1 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1.8 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 7.3 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 13.7 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.0 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4.4 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +46000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.1 +46000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.0 +46000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4.4 +46000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +46000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.1 +46000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 360.5 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 95.9 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 214.0 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 278.9 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 55.3 +46000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.5 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 70.7 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 306.1 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 780.1 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 515.5 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 7.5 +46000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 4.9 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 31.7 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 137.2 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 349.7 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 231.1 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 3.4 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 2.2 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.2 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.1 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +46000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +46000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 115.7 +46000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 99.8 +46000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 47.9 +46000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 4.9 +46000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 57.3 +46000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 6.5 +46000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +46000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.4 +46000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.9 +46000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 591.3 +46000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 189.3 +46000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 21.5 +46000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 3.9 +46000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 274.0 +46000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 4.0 +46000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 83.8 +46000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1003.8 +46000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 935.9 +46000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 3644.5 +46000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1329.1 +46000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 456.6 +46000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 773.5 +46000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 188.4 +46000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 70.7 +46000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 74.0 +46000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 72.7 +46000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 32049.8 +46000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 80.1 +46000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 319.5 +46000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 181.0 +46000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 68.8 +46000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 334.6 +46000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 198.9 +46000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 176.2 +46000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 14.0 +46000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 22.6 +46000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 3.6 +46000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 132.7 +46000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 55.4 +46000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 3.6 +46000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 6.0 +46000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 33.9 +46000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 9.3 +46000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +46000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 21.3 +46000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 44.9 +46000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 20.8 +46000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 9.5 +46000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.5 +46000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 11.1 +46000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 58.6 +46000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 83.3 +46000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 8.2 +46000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 9.5 +46000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.0 +46000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 12.4 +46000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 308.9 +46000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2173.5 +46000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 5219.2 +46000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1154.5 +46000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1651.9 +46000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +46000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +46000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +46000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +46000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +46000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +46000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 153.0 +46000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.1 +46000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 71.4 +46000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 63.5 +46000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 23.8 +46000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.5 +46000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +46000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.4 +46000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 2.4 +46000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 48.9 +46000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 16.5 +46000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 5.7 +46000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 2.3 +46000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.2 +46000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 391.2 +46000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 706.8 +46000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.4 +46000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +46000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1013.0 +46000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 635.3 +46000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 61.5 +46000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 35.9 +46000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 31.2 +46000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.3 +46000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 14.5 +46000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.0 +46000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.2 +46000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 30.2 +46000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.3 +46000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 14.5 +46000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.0 +46000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.1 +46000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.0 +46000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +46000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.1 +46000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +46000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +46000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +46000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 160.5 +46000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 149.9 +46000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 18.4 +46000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 19.9 +46000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 2.9 +46000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 16.1 +46000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 3.4 +46000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.6 +46000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 2.9 +46000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 15.7 +46000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 3.4 +46000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.9 +46000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.5 +46000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.7 +46000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.5 +46000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.3 +46000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +46000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.8 +46000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.1 +46000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.4 +46000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +46000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 21.2 +46000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 82.3 +46000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 303.4 +46000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 101.2 +46000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 23.9 +46000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.1 +46000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.5 +46000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 23.9 +46000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.1 +46000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.5 +46000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.5 +46000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 2680.2 +46000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1657.6 +46000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 491.7 +46000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 92.5 +46000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.6 +46000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +46000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +46000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.6 +46000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +46000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +46000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 3.9 +46000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 18.6 +46000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 16.9 +46000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 13.3 +46000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 13.6 +46000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +46000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +46000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +46000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +46000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.2 +46000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +46000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.2 +46000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +46000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +46000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 47.0 +46000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 298.5 +46000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 16.5 +46000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 5.4 +46000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.5 +46000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +46000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 1.6 +46000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.2 +46000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.7 +46000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +46000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +46000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +46000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +46000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +46000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +46000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +46000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +46000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +46000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +46000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +46000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 1.6 +46000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 3.0 +46000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2.0 +46000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +46000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 2.0 +46000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.3 +46000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.8 +46000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +46000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.1 +46000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.2 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 44.6 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 30.8 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.7 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.6 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 5.5 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 4.8 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 2.1 +46000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +46000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +46000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 5.7 +46000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.5 +46000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 10.8 +46000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 6.8 +46000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 14.8 +46000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 10.4 +46000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.3 +46000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 5.6 +46000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 28.0 +46000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 12.5 +46000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 7.6 +46000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.7 +46000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 3.0 +46000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 5.7 +46000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 6.8 +46000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 12.2 +46000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 17.3 +46000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 16.1 +46000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 16.3 +46000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 44.5 +46000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 41.3 +46000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 14.1 +46000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 4.2 +46000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +46000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.1 +46000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 12.9 +46000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 16.7 +46000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 7.8 +46000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +46000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 2.4 +46000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.7 +46000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +46000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.4 +46000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.9 +46000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +46000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.8 +46000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 2.1 +46000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 3.9 +46000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.2 +46000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +46000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +46000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +46000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 2.1 +46000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.7 +46000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.6 +46000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +46000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.7 +46000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.5 +46000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +46000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.5 +46000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +46000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +46000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +46000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 4.5 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 10.7 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 5.7 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 90.2 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 27.7 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 2.0 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.1 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.9 +46000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +46000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +46000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +46000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +46000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +46000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 12.5 +46000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 31.1 +46000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 51.8 +46000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 20.9 +46000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 6.5 +46000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 4.3 +46000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 2.2 +46000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +46000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.4 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 7.7 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 7.8 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 12.7 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 12.9 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 18.9 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 16.5 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 9.5 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 2.2 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.2 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +46000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +46000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +46000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.8 +46000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.7 +46000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 7.6 +46000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 15.8 +46000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 8.4 +46000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 6.5 +46000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 29.5 +46000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 110.3 +46000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 80.6 +46000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 21.4 +46000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.7 +46000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.8 +46000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +46000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.3 +46000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.7 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.2 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 6.8 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 2.2 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 3.1 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.4 +46000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 13.8 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 8.2 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.5 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.4 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.0 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.7 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.9 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.9 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.3 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.4 +46000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +46000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +46000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.3 +46000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +46000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.7 +46000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 6.5 +46000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 24.4 +46000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 25.0 +46000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 15.4 +46000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.7 +46000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +46000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +46000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +46000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +46000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.3 +46000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 2.2 +46000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 22.7 +46000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 38.0 +46000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 4.3 +46000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.3 +46000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +46000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 5.7 +46000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 12.1 +46000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 6.9 +46000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 3.3 +46000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.1 +46000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 5.3 +46000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.3 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.8 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 8.8 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 2.1 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 3.3 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.3 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 3.3 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +46000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.4 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 10.4 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 11.6 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 23.0 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 131.7 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 67.7 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 3.5 +46000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 4.6 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 5.3 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 6.1 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 8.6 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 36.8 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 93.2 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 88.9 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 65.3 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 4.9 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 2.4 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.5 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.9 +46000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 5.4 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 10.7 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 5.7 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 107.0 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 378.0 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 251.5 +46000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.4 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.1 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 31.9 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 72.1 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 62.5 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 31.6 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 12.5 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.6 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 4.5 +46000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +46000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.3 +46000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 47.2 +46000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 104.7 +46000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 204.8 +46000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 81.0 +46000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 444.7 +46000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 292.3 +46000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 7.4 +46000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +46000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.0 +46000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.7 +46000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 4.1 +46000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.3 +46000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +46000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.1 +46000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +46000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 2.0 +46000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.9 +46000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.4 +46000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.6 +46000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +46000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +46000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.1 +46000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.4 +46000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +46000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +46000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.3 +46000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.8 +46000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +46000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.8 +46000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.8 +46000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 5.5 +46000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 4.9 +46000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 11.9 +46000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 2.2 +46000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +46000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +46000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.3 +46000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 2.0 +46000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 27.9 +46000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 34.6 +46000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 8.2 +46000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 58.2 +46000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 20.7 +46000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.3 +46000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +46000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +46000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +46000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.2 +46000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 44.0 +46000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 44.3 +46000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 15.9 +46000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 2.6 +46000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 3.3 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.7 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 4.5 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 10.8 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 7.3 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 7.1 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 26.1 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 29.3 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 7.9 +46000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.1 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 5.2 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.0 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.6 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.1 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 3.5 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 1.3 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 9.8 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 30.4 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 43.2 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 13.5 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 1.4 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.2 +46000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.8 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 4.1 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 1.2 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 5.7 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 2.2 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.3 +46000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +46000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 16.7 +46000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 51.3 +46000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 48.1 +46000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 12.3 +46000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 90.4 +46000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 347.8 +46000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +46000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 5.6 +46000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 9.7 +46000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 15.5 +46000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 25.8 +46000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.8 +46000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.3 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.1 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +46000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +46000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +46000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.4 +46000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.5 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.3 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 8.3 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 114.8 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 55.6 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 12.4 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 20.4 +46000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 4.4 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 2.0 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 50.4 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.9 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.5 +46000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.8 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.2 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 2.0 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 7.4 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 32.8 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 10.4 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 6.3 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 5.3 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1.2 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.2 +46000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1.2 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1.5 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2.8 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1.4 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1.4 +46000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1.2 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.3 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.2 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.1 +46000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +46000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 3.8 +46000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 15.6 +46000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.4 +46000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 3528.1 +46000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 9489.3 +46000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 5422.2 +46000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 8585.4 +46000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 7566.8 +46000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 12608.1 +46000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 10869.6 +46000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 5624.4 +46000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.6 +46000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 592.8 +46000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 5437.9 +46000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 6484.4 +46000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 335.0 +46000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 6.5 +46000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 141.4 +46000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 52.1 +46000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 44.3 +46000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 2.2 +46000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 13.4 +46000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 70.7 +46000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 32.1 +46000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 20.1 +46000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 54.0 +46000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 331.1 +46000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 639.2 +46000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 694.6 +46000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 188.2 +46000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.4 +46000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +46000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.6 +46000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 400.3 +46000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1891.6 +46000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 373.7 +46000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 16.7 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.1 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 12.4 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 45.1 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 23.9 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 14.6 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 113.1 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 141.3 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 352.2 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 356.3 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 149.3 +46000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +46000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +46000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +46000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 28.4 +46000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 64.9 +46000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 25.7 +46000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 101.1 +46000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 477.0 +46000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 250.3 +46000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 71.2 +46000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 5.1 +46000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +46000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 185.4 +46000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 185.1 +46000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 142.7 +46000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 224.6 +46000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 371.8 +46000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 50.8 +46000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 187.4 +46000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 228.1 +46000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 77.8 +46000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 43.3 +46000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 22.5 +46000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +46000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +46000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +46000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +46000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +46000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +46000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 31.9 +46000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 76.7 +46000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 19.2 +46000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 15.3 +46000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 26.6 +46000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 7.5 +46000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 51.1 +46000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 56.9 +46000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 25.1 +46000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 6.3 +46000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 3.2 +46000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +46000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +46000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +46000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +46000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +46000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.1 +46000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 2.7 +46000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.4 +46000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.6 +46000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 20.4 +46000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 14.1 +46000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 90.4 +46000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 117.8 +46000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 13.5 +46000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 12.1 +46000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 3.5 +46000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +46000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +46000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +46000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +46000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +46000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +46000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 11.8 +46000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 65.3 +46000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 95.0 +46000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 58.9 +46000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 163.4 +46000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 118.7 +46000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 52.1 +46000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 2.7 +46000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +46000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +46000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.1 +46000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 17.6 +46000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 20.2 +46000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 25.2 +46000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 24.1 +46000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.0 +46000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 10.1 +46000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 2.8 +46000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 9.4 +46000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 7.6 +46000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.2 +46000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.5 +46000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.3 +46000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.6 +46000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +46000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 1.8 +46000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 2.6 +46000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.8 +46000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 4.0 +46000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 4.6 +46000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.3 +46000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +46000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +46000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +46000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.9 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 13.2 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 18.9 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.6 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.7 +46000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +46000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 2.0 +46000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +46000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +46000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +46000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.1 +46000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 2.1 +46000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 3.9 +46000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 11.4 +46000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 3.8 +46000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 4.5 +46000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.5 +46000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +46000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.1 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.4 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.1 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.9 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.5 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.7 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.4 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.2 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.1 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.1 +46000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +46000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 498.5 +46000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1859.5 +46000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 2800.8 +46000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 622.7 +46000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1226.4 +46000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 2369.1 +46000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1822.4 +46000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 3047.8 +46000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 2070.4 +46000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 4631.7 +46000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 4157.7 +46000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.0 +46000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 1.9 +46000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 18.3 +46000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +46000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 19.4 +46000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 7.8 +46000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 173.3 +46000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 640.9 +46000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 2374.2 +46000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 156.2 +46000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 2.2 +46000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.6 +46000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.9 +46000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 4.0 +46000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 35.0 +46000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +46000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 839.4 +46000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 3115.7 +46000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1251.3 +46000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 21.1 +46000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 25.7 +46000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 12.6 +46000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 27.9 +46000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 15.3 +46000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 2.8 +46000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 24.7 +46000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 20.8 +46000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 170.7 +46000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 280.6 +46000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 207.0 +46000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 8.2 +46000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 15.5 +46000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.3 +46000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 4.4 +46000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 2.7 +46000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 27.6 +46000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +46000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.2 +46000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.3 +46000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.4 +46000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 1.4 +46000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 2.2 +46000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 4.0 +46000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 3.8 +46000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 15.9 +46000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 5.8 +46000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 1.0 +46000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.2 +46000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.1 +46000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +46000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +46000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.2 +46000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 7.7 +46000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 31.8 +46000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.6 +46000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 1.5 +46000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.5 +46000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +46000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.5 +46000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/TN.POP b/NONROAD/NR08a/DATA/POP/TN.POP new file mode 100644 index 0000000..7310d2d --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/TN.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 47000 TN Tennessee 2,516,011.2 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +47000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +47000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +47000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 25464.7 +47000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 12542.3 +47000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 12870.3 +47000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 111383.6 +47000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 3201.8 +47000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6569.3 +47000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.0 +47000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.1 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.3 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 134.9 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 255.5 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2012.6 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 20.6 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 49.7 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +47000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 18.8 +47000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 20.6 +47000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +47000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 49.7 +47000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +47000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 18.8 +47000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 15.0 +47000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 104.2 +47000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.8 +47000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 37.8 +47000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 6.4 +47000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 7.0 +47000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 6.4 +47000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 7.0 +47000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3119.0 +47000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.8 +47000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 293.1 +47000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1487.1 +47000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 457.8 +47000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 81.1 +47000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 112.7 +47000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 20.1 +47000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 52.4 +47000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 6.2 +47000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.3 +47000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.9 +47000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 6.2 +47000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.3 +47000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.9 +47000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 280.7 +47000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 821.0 +47000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 696.3 +47000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 348.7 +47000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 245.7 +47000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 10.0 +47000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.9 +47000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 10.0 +47000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.9 +47000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 121.9 +47000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 187.8 +47000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 54.3 +47000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 22.9 +47000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.3 +47000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +47000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.3 +47000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +47000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.8 +47000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 13.8 +47000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 13.7 +47000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +47000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.6 +47000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 213.4 +47000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 209.0 +47000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 74.7 +47000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 85.1 +47000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 14.2 +47000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 12.0 +47000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 9.4 +47000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 14.2 +47000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 12.0 +47000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 9.4 +47000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 88.0 +47000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1802.1 +47000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 72.9 +47000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 22.3 +47000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 28.3 +47000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 18.6 +47000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.5 +47000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.8 +47000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.3 +47000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.5 +47000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.8 +47000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.3 +47000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 230.5 +47000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1104.3 +47000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 567.8 +47000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 119.1 +47000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 52.3 +47000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.4 +47000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.8 +47000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.4 +47000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.8 +47000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 31.2 +47000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1751.3 +47000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2925.9 +47000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 99.3 +47000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 76.1 +47000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.0 +47000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.2 +47000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.5 +47000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +47000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 10.4 +47000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.7 +47000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +47000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 10.4 +47000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.7 +47000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 28.2 +47000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 39.6 +47000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 72.3 +47000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 18.5 +47000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.3 +47000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.3 +47000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.7 +47000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +47000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +47000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.8 +47000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +47000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +47000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +47000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +47000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.8 +47000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +47000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +47000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +47000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 29.6 +47000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.0 +47000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +47000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 29.6 +47000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.0 +47000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 7.3 +47000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 151.1 +47000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +47000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +47000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +47000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +47000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +47000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +47000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 6.0 +47000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 120.0 +47000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 34.1 +47000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 18.8 +47000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 20.1 +47000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 34.1 +47000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 18.8 +47000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 20.1 +47000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 105.9 +47000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 349.3 +47000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 52.6 +47000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 64.2 +47000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.5 +47000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +47000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 12.5 +47000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 12.0 +47000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.6 +47000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 61.7 +47000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 17.1 +47000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 395.8 +47000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 175.0 +47000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 364.6 +47000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 8.1 +47000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 175.0 +47000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 364.6 +47000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 8.1 +47000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 46.4 +47000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 165.7 +47000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 266.9 +47000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 19.5 +47000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 124.0 +47000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.6 +47000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 881.5 +47000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1926.8 +47000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 5071.2 +47000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 370.4 +47000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 2356.8 +47000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 11.5 +47000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1221.1 +47000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 93.0 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 106.5 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 162.9 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 44.1 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 94.4 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 56.7 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 64.1 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 65.0 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.3 +47000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 56.7 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 64.1 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 65.0 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.6 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.3 +47000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +47000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.6 +47000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 4.4 +47000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1804.4 +47000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 340.9 +47000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 173.6 +47000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 146.8 +47000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 13.1 +47000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 18.2 +47000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.9 +47000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.9 +47000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +47000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 13.1 +47000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 18.2 +47000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.3 +47000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 6.9 +47000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +47000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.7 +47000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.9 +47000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 35.8 +47000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 21.8 +47000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.8 +47000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 21.8 +47000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.8 +47000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +47000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +47000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 21.5 +47000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.4 +47000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.8 +47000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +47000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 11.6 +47000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 5.3 +47000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 20.8 +47000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +47000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.3 +47000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 10.9 +47000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 4.1 +47000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 20.6 +47000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +47000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.6 +47000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.2 +47000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.3 +47000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +47000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 13449.0 +47000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 668395.1 +47000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 220.4 +47000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 511.9 +47000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 25440.0 +47000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 8.4 +47000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1247.1 +47000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 8816.6 +47000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 62610.8 +47000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 170.6 +47000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1205.7 +47000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 8562.5 +47000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 108765.0 +47000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +47000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2757.0 +47000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 9700.5 +47000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 81298.7 +47000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 205886.3 +47000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +47000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +47000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 29086.8 +47000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2065.6 +47000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4695.1 +47000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +47000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +47000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +47000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 456.3 +47000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 122.0 +47000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 6.5 +47000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 14.0 +47000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 12036.4 +47000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 133667.7 +47000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +47000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +47000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 8826.5 +47000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3288.3 +47000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7574.3 +47000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +47000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +47000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 503.3 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 4922.6 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 155.1 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 168.7 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 12.8 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 87.6 +47000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 86.9 +47000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 7189.5 +47000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 11009.4 +47000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 18573.4 +47000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 868.1 +47000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 435.6 +47000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 667.1 +47000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 1125.4 +47000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 52.6 +47000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 146.8 +47000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 21246.6 +47000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 16476.6 +47000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 77.9 +47000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.2 +47000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 464.8 +47000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 360.5 +47000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.7 +47000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 481.0 +47000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1643.1 +47000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 726.5 +47000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 10.9 +47000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1762.5 +47000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3449.5 +47000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 524.7 +47000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 16449.7 +47000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 182778.9 +47000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 59571.8 +47000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 11.5 +47000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 359.9 +47000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3998.9 +47000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1303.3 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.6 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 29.0 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 119.7 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 225.6 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.0 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.7 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +47000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +47000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 17.0 +47000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 72.7 +47000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.7 +47000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 17.4 +47000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.1 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 5937.3 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1579.3 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 3524.4 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 4593.8 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 910.2 +47000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 7.9 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 535.9 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2320.6 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5914.2 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3907.9 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 57.2 +47000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 37.5 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 521.9 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2259.9 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 5759.4 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 3805.6 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 55.7 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 36.5 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 3.6 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.2 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.4 +47000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.4 +47000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 37.4 +47000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 32.3 +47000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 15.5 +47000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.6 +47000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 18.5 +47000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.1 +47000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +47000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +47000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +47000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 191.3 +47000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 61.2 +47000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 7.0 +47000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.3 +47000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 88.7 +47000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.3 +47000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 27.1 +47000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 324.8 +47000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 302.8 +47000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1179.2 +47000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 430.0 +47000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 147.7 +47000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 250.3 +47000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 61.0 +47000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 22.9 +47000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 24.0 +47000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 23.5 +47000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 10369.5 +47000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 25.9 +47000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 103.4 +47000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 58.6 +47000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 22.3 +47000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 108.2 +47000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 64.3 +47000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 57.0 +47000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 4.5 +47000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 7.3 +47000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.2 +47000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 42.9 +47000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 17.9 +47000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.2 +47000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.9 +47000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 11.0 +47000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.0 +47000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +47000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 6.9 +47000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 14.5 +47000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 6.7 +47000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.1 +47000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +47000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 3.6 +47000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 18.9 +47000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 27.0 +47000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 2.7 +47000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.1 +47000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.6 +47000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 70.6 +47000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1752.6 +47000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 12330.0 +47000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 29608.0 +47000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 6549.1 +47000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 9371.3 +47000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +47000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +47000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +47000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +47000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +47000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +47000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 867.9 +47000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 6.5 +47000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 404.8 +47000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 360.0 +47000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 135.0 +47000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.1 +47000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.5 +47000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 8.2 +47000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 13.9 +47000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 277.3 +47000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 93.3 +47000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 32.2 +47000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 13.2 +47000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 6.7 +47000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2219.3 +47000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4009.7 +47000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.4 +47000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.5 +47000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 5746.4 +47000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3604.2 +47000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 349.1 +47000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 203.4 +47000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 176.9 +47000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.6 +47000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 82.3 +47000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 5.5 +47000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 12.7 +47000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 171.1 +47000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.6 +47000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 82.2 +47000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 5.5 +47000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 11.9 +47000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 5.8 +47000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +47000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.8 +47000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.9 +47000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.0 +47000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.0 +47000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 910.7 +47000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 850.1 +47000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 104.3 +47000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 113.0 +47000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 16.5 +47000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 91.5 +47000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 19.5 +47000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 9.1 +47000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 16.5 +47000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 88.9 +47000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 19.5 +47000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 4.9 +47000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.6 +47000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.3 +47000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.7 +47000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.6 +47000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.4 +47000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 4.7 +47000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.8 +47000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.0 +47000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.7 +47000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 120.4 +47000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 466.9 +47000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1721.2 +47000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 574.2 +47000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 135.5 +47000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 12.0 +47000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.7 +47000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 135.5 +47000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 12.0 +47000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.7 +47000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.9 +47000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 15204.6 +47000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 9403.2 +47000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2789.6 +47000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 524.6 +47000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 8.9 +47000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.7 +47000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +47000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 8.9 +47000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.7 +47000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +47000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 22.2 +47000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 105.5 +47000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 95.6 +47000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 75.3 +47000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 77.1 +47000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +47000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +47000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +47000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +47000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +47000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +47000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +47000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +47000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +47000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 662.8 +47000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 4208.3 +47000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 232.7 +47000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 75.4 +47000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 7.3 +47000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 3.0 +47000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 21.6 +47000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.5 +47000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 8.8 +47000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +47000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +47000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +47000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +47000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.3 +47000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.9 +47000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +47000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +47000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +47000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.3 +47000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.9 +47000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 4.4 +47000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 8.0 +47000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 5.3 +47000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +47000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 5.2 +47000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.7 +47000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2.2 +47000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +47000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.2 +47000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 9.3 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 339.7 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 234.9 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.8 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 5.0 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.9 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 41.6 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 36.6 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 16.2 +47000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +47000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.0 +47000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 50.1 +47000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.6 +47000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 95.1 +47000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 59.2 +47000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 129.7 +47000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 91.1 +47000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 11.7 +47000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 49.0 +47000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 245.6 +47000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 109.7 +47000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 66.7 +47000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 6.2 +47000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 26.4 +47000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 49.6 +47000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 59.4 +47000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 106.7 +47000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 152.1 +47000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 141.0 +47000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 142.8 +47000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 390.7 +47000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 362.3 +47000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 123.7 +47000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 36.7 +47000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +47000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 9.8 +47000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 113.3 +47000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 146.7 +47000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 68.0 +47000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +47000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 21.2 +47000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 23.7 +47000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.8 +47000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 12.2 +47000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 16.3 +47000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +47000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 16.0 +47000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 18.8 +47000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 34.4 +47000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 10.7 +47000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +47000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +47000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.2 +47000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 18.3 +47000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 15.3 +47000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 5.3 +47000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +47000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 14.5 +47000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.4 +47000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +47000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.5 +47000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.0 +47000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +47000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +47000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 39.7 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 93.6 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 50.0 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 791.5 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 242.8 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 17.3 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 10.1 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 8.0 +47000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.0 +47000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +47000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +47000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.4 +47000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.0 +47000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 109.4 +47000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 272.9 +47000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 453.9 +47000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 183.3 +47000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 57.0 +47000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 38.0 +47000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 19.3 +47000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.7 +47000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.1 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.8 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.9 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 67.4 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 68.6 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 111.1 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 113.0 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 166.2 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 144.5 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 83.2 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 19.5 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 10.7 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +47000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +47000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.3 +47000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 7.3 +47000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 15.0 +47000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 67.0 +47000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 138.7 +47000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 74.0 +47000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 57.4 +47000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 258.9 +47000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 967.5 +47000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 707.4 +47000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 187.4 +47000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 6.0 +47000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.9 +47000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +47000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.6 +47000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 6.1 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 10.4 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 59.7 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.1 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 19.2 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 27.6 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.4 +47000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 121.4 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 72.3 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 13.4 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 12.2 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.9 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 15.3 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 25.5 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 8.1 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.9 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.6 +47000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +47000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +47000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 11.1 +47000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +47000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.9 +47000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 56.9 +47000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 214.4 +47000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 219.3 +47000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 135.1 +47000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.8 +47000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.7 +47000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +47000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +47000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +47000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.5 +47000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 19.5 +47000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 199.2 +47000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 333.6 +47000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 38.2 +47000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.3 +47000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +47000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 50.1 +47000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 106.3 +47000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 60.2 +47000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 29.2 +47000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 9.3 +47000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 46.8 +47000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 11.4 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.3 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.8 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.7 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 76.8 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 18.6 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 29.1 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 11.0 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 28.6 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.2 +47000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.9 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 91.5 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 101.9 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 201.9 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1155.4 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 593.5 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 30.8 +47000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 40.5 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.9 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 46.3 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 53.1 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 75.2 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 323.2 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 817.2 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 780.1 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 572.4 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 43.3 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 21.1 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.4 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 25.8 +47000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.9 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 47.0 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 94.0 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 50.2 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 938.5 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3315.6 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2206.1 +47000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 12.0 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 9.7 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 280.0 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 632.8 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 548.0 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 277.5 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 109.5 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 22.7 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 39.4 +47000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +47000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.5 +47000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 414.0 +47000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 918.0 +47000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1796.2 +47000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 710.3 +47000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3900.3 +47000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2564.0 +47000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 64.6 +47000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +47000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 8.7 +47000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 14.9 +47000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 35.6 +47000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 11.7 +47000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.1 +47000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 9.2 +47000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +47000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 17.6 +47000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 16.8 +47000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 12.0 +47000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 13.9 +47000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.0 +47000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.4 +47000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 9.5 +47000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.4 +47000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.6 +47000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +47000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.5 +47000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 7.3 +47000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.7 +47000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 7.1 +47000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 7.0 +47000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 48.6 +47000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 43.4 +47000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 104.8 +47000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 19.1 +47000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +47000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.3 +47000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 3.5 +47000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 22.9 +47000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 321.5 +47000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 399.4 +47000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 94.4 +47000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 671.2 +47000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 238.6 +47000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.9 +47000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.5 +47000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +47000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.2 +47000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 13.7 +47000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 506.8 +47000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 510.6 +47000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 183.4 +47000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 29.8 +47000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 38.1 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 8.5 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.4 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 52.0 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 125.1 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 84.4 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 81.7 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 300.9 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 337.9 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 90.9 +47000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.5 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 59.4 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 11.2 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 7.3 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 12.6 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 39.9 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 14.5 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 112.5 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 350.2 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 498.1 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 155.4 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 15.9 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.6 +47000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 9.5 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 47.7 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 14.4 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 66.1 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 25.2 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 3.5 +47000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +47000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 127.1 +47000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 390.8 +47000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 366.4 +47000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 94.0 +47000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 688.8 +47000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2649.2 +47000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +47000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +47000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +47000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.3 +47000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +47000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +47000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 64.1 +47000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 111.3 +47000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 178.8 +47000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 297.6 +47000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 9.1 +47000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 4.8 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.2 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +47000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +47000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +47000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.8 +47000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.0 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 4.9 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 136.2 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1890.1 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 916.1 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 204.6 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 336.1 +47000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 71.8 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 33.2 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 829.8 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 14.4 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 8.3 +47000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 12.6 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.1 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 32.7 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 122.1 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 539.4 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 170.8 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 103.1 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 87.5 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 19.8 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.2 +47000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.4 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 19.4 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 25.2 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 46.5 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 22.6 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.4 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 23.8 +47000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 19.9 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.5 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 4.8 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.0 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.1 +47000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +47000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.2 +47000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.0 +47000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +47000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1141.5 +47000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3070.2 +47000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1754.3 +47000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 2777.8 +47000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2448.2 +47000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4079.3 +47000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3516.8 +47000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1819.7 +47000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +47000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 191.8 +47000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1759.4 +47000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2098.0 +47000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 108.4 +47000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.1 +47000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 45.7 +47000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 16.9 +47000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 14.3 +47000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.7 +47000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.3 +47000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 22.9 +47000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 10.4 +47000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 6.5 +47000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 17.5 +47000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 107.1 +47000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 206.8 +47000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 224.7 +47000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 60.9 +47000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.4 +47000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +47000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +47000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 129.5 +47000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 612.0 +47000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 120.9 +47000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 5.4 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.3 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.0 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 14.6 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 7.7 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 4.7 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 36.6 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 45.7 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 113.9 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 115.3 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 48.3 +47000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +47000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +47000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +47000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 9.2 +47000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 21.0 +47000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 8.3 +47000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 32.7 +47000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 154.3 +47000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 81.0 +47000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 23.0 +47000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.6 +47000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +47000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1051.6 +47000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1050.0 +47000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 809.3 +47000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1274.4 +47000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2109.3 +47000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 288.1 +47000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1063.0 +47000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1293.7 +47000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 441.6 +47000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 245.5 +47000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 127.5 +47000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +47000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +47000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +47000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +47000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +47000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +47000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 181.1 +47000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 435.3 +47000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 109.2 +47000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 86.9 +47000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 151.1 +47000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 42.8 +47000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 289.8 +47000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 322.6 +47000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 142.2 +47000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 35.6 +47000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 18.1 +47000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +47000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +47000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +47000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +47000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +47000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 6.2 +47000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 15.1 +47000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.0 +47000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.1 +47000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 115.6 +47000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 80.0 +47000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 513.0 +47000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 668.2 +47000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 76.6 +47000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 68.8 +47000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 19.7 +47000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +47000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +47000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +47000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +47000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +47000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +47000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 66.8 +47000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 370.4 +47000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 539.1 +47000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 334.4 +47000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 926.9 +47000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 673.2 +47000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 295.6 +47000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 15.4 +47000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +47000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +47000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 11.7 +47000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 99.6 +47000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 114.3 +47000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 142.8 +47000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 136.5 +47000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 17.1 +47000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 57.4 +47000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 16.1 +47000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 53.3 +47000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 43.2 +47000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 6.6 +47000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.1 +47000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.6 +47000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.5 +47000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.1 +47000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 10.3 +47000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 14.9 +47000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 4.7 +47000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 22.8 +47000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 26.3 +47000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 7.1 +47000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.9 +47000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +47000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +47000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.3 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.4 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.5 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 26.8 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 185.8 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 266.3 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 23.0 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 9.4 +47000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.2 +47000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 27.1 +47000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +47000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.3 +47000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.0 +47000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.4 +47000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 28.4 +47000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 51.7 +47000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 152.7 +47000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 51.3 +47000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 59.9 +47000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.4 +47000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.9 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 1.7 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 4.5 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 7.9 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 8.4 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 2.6 +47000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 1.3 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.3 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.1 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.1 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.2 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2.4 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.2 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1.8 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.1 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.5 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.2 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.3 +47000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +47000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 3934.4 +47000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 14676.0 +47000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 22104.3 +47000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 4914.5 +47000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9679.3 +47000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 18697.3 +47000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 14383.0 +47000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 24054.1 +47000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 16340.1 +47000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 36554.3 +47000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 32813.6 +47000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 15.6 +47000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 15.1 +47000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 144.1 +47000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +47000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 153.0 +47000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 61.7 +47000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1367.5 +47000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5057.9 +47000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 18738.1 +47000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1232.8 +47000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 17.2 +47000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 12.3 +47000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.3 +47000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 31.4 +47000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 276.3 +47000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +47000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6625.1 +47000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 24590.4 +47000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 9875.5 +47000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 166.6 +47000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 202.7 +47000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 99.5 +47000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 220.1 +47000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 120.4 +47000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 22.3 +47000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 195.1 +47000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 164.3 +47000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1346.9 +47000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2214.9 +47000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1633.8 +47000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 64.5 +47000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 122.2 +47000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 10.0 +47000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 35.0 +47000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 21.4 +47000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 218.1 +47000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +47000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.7 +47000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.8 +47000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.6 +47000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 9.6 +47000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 15.1 +47000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 27.5 +47000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 25.6 +47000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 108.0 +47000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 39.8 +47000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 6.7 +47000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.7 +47000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +47000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +47000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +47000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.6 +47000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 52.6 +47000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 216.3 +47000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 3.9 +47000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 9.9 +47000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.1 +47000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +47000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.1 +47000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/TX.POP b/NONROAD/NR08a/DATA/POP/TX.POP new file mode 100644 index 0000000..a976bd1 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/TX.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 48000 TX Texas 8,073,211.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +48000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +48000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +48000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 43536.2 +48000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 21443.2 +48000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 22003.9 +48000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 190428.7 +48000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 8612.3 +48000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 24637.3 +48000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 7.3 +48000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 4.1 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 12.4 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 505.9 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 958.2 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 7548.1 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 77.2 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.8 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 186.2 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.5 +48000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 70.5 +48000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 77.2 +48000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 1.8 +48000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 186.2 +48000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 1.5 +48000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 70.5 +48000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 64.5 +48000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 449.1 +48000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 20.8 +48000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 162.7 +48000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 27.4 +48000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 30.3 +48000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 27.4 +48000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 30.3 +48000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 13437.4 +48000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 29.4 +48000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 1262.7 +48000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 6407.0 +48000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 1972.4 +48000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 349.6 +48000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 485.7 +48000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 86.7 +48000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 225.8 +48000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 26.7 +48000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 18.3 +48000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 12.6 +48000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 26.7 +48000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 18.3 +48000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 12.6 +48000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 1209.4 +48000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 3537.3 +48000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 2999.8 +48000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 1502.4 +48000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 1058.5 +48000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 43.0 +48000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 3.8 +48000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 43.0 +48000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 3.8 +48000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 525.2 +48000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 808.9 +48000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 233.9 +48000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 98.6 +48000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 9.7 +48000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 3.5 +48000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 9.7 +48000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 3.5 +48000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 3.3 +48000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 59.4 +48000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 59.1 +48000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 2.2 +48000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 2.5 +48000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 919.6 +48000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 900.2 +48000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 321.7 +48000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 366.8 +48000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 61.1 +48000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 51.6 +48000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 40.6 +48000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 61.1 +48000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 51.6 +48000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 40.6 +48000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 379.3 +48000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 7763.9 +48000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 314.0 +48000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 96.0 +48000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 121.8 +48000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 80.0 +48000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 32.2 +48000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 29.3 +48000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 48.6 +48000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 32.2 +48000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 29.3 +48000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 48.6 +48000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 992.8 +48000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 4757.8 +48000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 2446.3 +48000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 513.0 +48000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 225.5 +48000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 62.0 +48000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 33.8 +48000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 62.0 +48000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 33.8 +48000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 134.6 +48000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 7545.2 +48000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 12605.6 +48000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 427.7 +48000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 327.7 +48000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 12.8 +48000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 18.1 +48000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 6.4 +48000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.3 +48000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 44.9 +48000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 7.3 +48000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.3 +48000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 44.9 +48000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 7.3 +48000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 121.4 +48000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 170.6 +48000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 311.3 +48000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 79.8 +48000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 9.9 +48000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 9.9 +48000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 2.9 +48000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 9.6 +48000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +48000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 63.7 +48000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.4 +48000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 7.5 +48000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 9.6 +48000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +48000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 63.7 +48000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.4 +48000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 7.5 +48000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 2.7 +48000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 127.3 +48000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 4.2 +48000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 2.7 +48000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 127.3 +48000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 4.2 +48000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 31.3 +48000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 651.0 +48000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 2.4 +48000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 11.4 +48000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.4 +48000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 2.4 +48000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 11.4 +48000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 1.4 +48000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 25.7 +48000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 517.2 +48000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 146.7 +48000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 81.0 +48000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 86.6 +48000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 146.7 +48000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 81.0 +48000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 86.6 +48000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 456.1 +48000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 1505.0 +48000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 226.5 +48000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 276.7 +48000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 10.7 +48000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 1.7 +48000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 54.0 +48000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 51.5 +48000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 2.4 +48000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 129.7 +48000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 36.0 +48000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 832.1 +48000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 368.0 +48000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 766.5 +48000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 17.0 +48000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 368.0 +48000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 766.5 +48000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 17.0 +48000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 97.5 +48000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 348.3 +48000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 561.1 +48000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 41.0 +48000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 260.8 +48000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 1.3 +48000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1853.3 +48000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 4050.9 +48000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 10661.7 +48000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 778.7 +48000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 4955.1 +48000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 24.3 +48000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 2567.2 +48000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 195.5 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 223.9 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 342.6 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 92.7 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 198.5 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 119.2 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 134.7 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 136.7 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.4 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 2.8 +48000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 119.2 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 134.7 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 136.7 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 1.4 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 2.8 +48000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +48000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 1.2 +48000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 9.2 +48000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 3793.6 +48000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 716.8 +48000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 365.0 +48000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 308.5 +48000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 27.6 +48000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 38.3 +48000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 6.2 +48000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 14.6 +48000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.5 +48000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 27.6 +48000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 38.3 +48000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 4.7 +48000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 14.6 +48000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.5 +48000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 1.4 +48000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 2.0 +48000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 75.3 +48000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 45.8 +48000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.7 +48000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 45.8 +48000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.7 +48000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 1.7 +48000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 2.6 +48000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 80.5 +48000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 9.1 +48000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 3.1 +48000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.7 +48000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 24.3 +48000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 11.1 +48000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 43.8 +48000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.5 +48000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.7 +48000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 23.0 +48000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 8.7 +48000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 43.2 +48000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +48000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 1.4 +48000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 2.4 +48000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.5 +48000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.5 +48000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 45379.0 +48000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 2255275.7 +48000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 743.6 +48000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 2111.8 +48000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 104953.4 +48000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 34.6 +48000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 4208.1 +48000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 29748.7 +48000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 211259.1 +48000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 703.6 +48000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 4974.3 +48000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 35324.7 +48000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 366991.1 +48000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +48000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 11374.0 +48000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 40019.6 +48000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 274315.3 +48000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 694694.5 +48000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +48000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +48000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 119998.2 +48000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 8521.6 +48000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 15842.2 +48000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +48000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +48000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +48000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 1882.3 +48000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 503.5 +48000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 26.6 +48000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 57.8 +48000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 40612.9 +48000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 451017.1 +48000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +48000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +48000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 36413.9 +48000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 13566.0 +48000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 25557.1 +48000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +48000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +48000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 2076.5 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 20308.3 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 639.7 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 695.9 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 53.0 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 361.4 +48000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 358.4 +48000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 1389.6 +48000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 2127.9 +48000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 3589.9 +48000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 167.8 +48000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 61.2 +48000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 93.8 +48000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 158.2 +48000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 7.4 +48000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 495.5 +48000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 71689.6 +48000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 55594.9 +48000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 263.0 +48000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 13.3 +48000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 1917.7 +48000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 1487.2 +48000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 7.1 +48000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 1984.5 +48000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 6778.5 +48000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 2997.1 +48000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 45.0 +48000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 7271.4 +48000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 14231.1 +48000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 1770.3 +48000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 55504.2 +48000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 616726.1 +48000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 201005.2 +48000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 47.3 +48000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 1484.8 +48000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 16497.4 +48000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 5376.8 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 2.4 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 119.8 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 493.8 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 930.6 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 70.2 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 299.8 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 2.7 +48000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 71.7 +48000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 70.2 +48000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 299.8 +48000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 2.7 +48000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 71.7 +48000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 8.5 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 24494.3 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 6515.5 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 14539.9 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 18951.9 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 3755.1 +48000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 32.4 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 1808.2 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 7830.2 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 19955.5 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 13185.9 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 193.1 +48000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 126.5 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 2153.0 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 9323.2 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 23760.5 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 15700.1 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 229.9 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 150.7 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 14.7 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 5.1 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 1.8 +48000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 5.9 +48000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 152.2 +48000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 131.3 +48000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 63.0 +48000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 6.5 +48000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 75.4 +48000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 8.5 +48000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.1 +48000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.5 +48000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 1.2 +48000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 777.9 +48000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 249.0 +48000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 28.3 +48000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 5.2 +48000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 360.5 +48000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 5.3 +48000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 110.2 +48000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 1320.7 +48000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 1231.3 +48000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 4794.8 +48000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 1748.7 +48000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 600.7 +48000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 1017.7 +48000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 247.9 +48000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 93.0 +48000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 97.4 +48000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 95.6 +48000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 42165.9 +48000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 105.3 +48000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 420.3 +48000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 238.1 +48000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 90.5 +48000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 440.2 +48000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 261.7 +48000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 231.8 +48000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 18.4 +48000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 29.8 +48000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 4.8 +48000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 174.6 +48000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 73.0 +48000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 4.7 +48000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 7.9 +48000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 44.6 +48000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 12.3 +48000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.2 +48000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 28.0 +48000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 59.1 +48000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 27.4 +48000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 12.5 +48000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.7 +48000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 14.5 +48000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 77.1 +48000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 109.6 +48000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 10.8 +48000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 12.5 +48000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 2.6 +48000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 295.6 +48000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 7337.9 +48000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 51623.0 +48000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 123962.3 +48000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 27419.8 +48000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 39235.5 +48000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +48000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +48000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +48000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +48000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +48000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +48000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 3633.5 +48000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 27.3 +48000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 1694.7 +48000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 1507.2 +48000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 565.4 +48000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 13.1 +48000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 2.2 +48000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 34.4 +48000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 58.1 +48000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 1161.1 +48000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 390.7 +48000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 134.9 +48000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 55.2 +48000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 27.9 +48000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 9291.8 +48000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 16787.8 +48000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 10.2 +48000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 2.1 +48000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 24058.7 +48000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 15090.1 +48000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 1461.6 +48000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 851.7 +48000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 740.5 +48000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 6.9 +48000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 344.6 +48000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 22.9 +48000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 53.1 +48000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 716.2 +48000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 6.9 +48000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 344.3 +48000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 22.9 +48000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 49.8 +48000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 24.3 +48000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.3 +48000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 3.4 +48000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 3.9 +48000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 4.0 +48000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 4.3 +48000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 3813.0 +48000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 3559.3 +48000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 436.6 +48000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 473.1 +48000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 69.3 +48000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 383.2 +48000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 81.6 +48000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 38.2 +48000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 69.3 +48000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 372.2 +48000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 81.6 +48000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 20.4 +48000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 11.0 +48000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 17.8 +48000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 11.3 +48000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 6.7 +48000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 1.8 +48000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 19.8 +48000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 3.3 +48000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 8.5 +48000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 2.8 +48000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 504.1 +48000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 1955.0 +48000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 7206.4 +48000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 2404.0 +48000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 567.4 +48000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 50.4 +48000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 11.4 +48000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 567.4 +48000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 50.4 +48000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 11.4 +48000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 12.0 +48000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 63658.3 +48000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 39369.3 +48000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 11679.3 +48000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 2196.3 +48000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 37.2 +48000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 2.8 +48000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.1 +48000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 37.2 +48000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 2.8 +48000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.1 +48000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 92.9 +48000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 441.8 +48000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 400.2 +48000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 315.3 +48000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 322.8 +48000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 4.9 +48000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 2.0 +48000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 4.8 +48000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.1 +48000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 4.9 +48000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 2.0 +48000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 4.8 +48000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.1 +48000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.1 +48000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1270.6 +48000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 8067.3 +48000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 446.2 +48000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 144.6 +48000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 14.0 +48000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 5.8 +48000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 85.4 +48000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 9.7 +48000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 34.6 +48000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 1.8 +48000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 2.0 +48000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.7 +48000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 2.1 +48000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 9.2 +48000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 27.3 +48000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 2.0 +48000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.7 +48000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 2.1 +48000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 9.2 +48000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 27.3 +48000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 1669.8 +48000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 3061.3 +48000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 2033.3 +48000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +48000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 1992.9 +48000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 272.8 +48000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 845.5 +48000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 30.8 +48000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 83.6 +48000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 5.8 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 35.0 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 1273.9 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 880.8 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 2.9 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 18.7 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 18.5 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 156.0 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 137.3 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 60.6 +48000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 2.3 +48000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 8.8 +48000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 215.9 +48000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 20.0 +48000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 409.8 +48000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 255.1 +48000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 559.0 +48000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 392.5 +48000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 50.5 +48000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 211.3 +48000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 1058.1 +48000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 472.7 +48000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 287.5 +48000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 26.6 +48000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 113.9 +48000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 213.9 +48000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 256.1 +48000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 459.5 +48000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 655.4 +48000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 607.4 +48000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 615.0 +48000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 1683.2 +48000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 1560.7 +48000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 532.8 +48000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 158.0 +48000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.4 +48000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 42.4 +48000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 488.0 +48000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 631.9 +48000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 293.2 +48000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.4 +48000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 91.2 +48000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 102.3 +48000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 7.9 +48000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 52.7 +48000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 70.2 +48000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +48000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 68.8 +48000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 81.2 +48000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 148.1 +48000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 46.0 +48000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 2.1 +48000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 1.6 +48000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 5.3 +48000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 78.8 +48000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 66.1 +48000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 22.8 +48000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 1.2 +48000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 62.6 +48000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 19.2 +48000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.9 +48000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 19.2 +48000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 8.5 +48000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 1.7 +48000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.2 +48000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 1.3 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 171.2 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 403.2 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 215.3 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 3410.0 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 1046.1 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 1.8 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 74.7 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 43.4 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 34.5 +48000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 8.4 +48000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +48000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.6 +48000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 6.2 +48000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 8.6 +48000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 471.5 +48000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 1175.5 +48000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 1955.5 +48000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 789.9 +48000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 245.4 +48000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 163.9 +48000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 83.3 +48000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 7.3 +48000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 4.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 7.6 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 17.0 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 290.5 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 295.5 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 478.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 487.0 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 715.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 622.4 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 358.6 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 83.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 45.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.9 +48000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 1.6 +48000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 5.7 +48000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 31.4 +48000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 64.7 +48000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 288.5 +48000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 597.6 +48000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 318.7 +48000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 247.2 +48000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 1115.6 +48000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 4168.4 +48000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 3047.5 +48000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 807.3 +48000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 25.6 +48000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 29.7 +48000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 1.0 +48000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 11.3 +48000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.5 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 26.3 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 44.8 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 257.2 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 9.2 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 82.5 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 118.7 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 14.5 +48000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.3 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 522.9 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 311.7 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 57.9 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 52.7 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 38.3 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 65.8 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 109.9 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 34.8 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 12.4 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 15.5 +48000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 3.1 +48000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +48000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 47.6 +48000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.7 +48000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 25.3 +48000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 245.3 +48000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 923.7 +48000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 944.7 +48000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 581.9 +48000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 25.1 +48000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 7.1 +48000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.3 +48000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +48000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 1.4 +48000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 10.9 +48000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 84.0 +48000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 858.1 +48000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 1437.2 +48000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 164.4 +48000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 10.0 +48000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 2.2 +48000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 215.7 +48000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 457.9 +48000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 259.2 +48000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 125.9 +48000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 39.9 +48000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 201.6 +48000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 49.1 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 5.6 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 7.6 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 29.0 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 330.9 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 80.0 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 125.4 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 47.3 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 123.1 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 9.3 +48000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.7 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 1.3 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 16.9 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 394.2 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 438.9 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 869.9 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 4977.7 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 2557.0 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 132.5 +48000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 174.4 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 3.9 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 199.4 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 229.0 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 323.8 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 1392.2 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 3520.7 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 3361.0 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 2465.9 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 186.4 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 90.8 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 18.9 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 111.2 +48000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 4.0 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.4 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 202.7 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 405.1 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 216.4 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 4043.2 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 14284.5 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 9504.6 +48000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 51.7 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 41.9 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 1206.2 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 2726.1 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 2360.8 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 1195.4 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 471.5 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 97.6 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 169.7 +48000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.7 +48000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 10.8 +48000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 1783.7 +48000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 3954.8 +48000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 7738.6 +48000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 3060.1 +48000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 16803.7 +48000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 11046.6 +48000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 278.2 +48000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.1 +48000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 37.6 +48000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 64.2 +48000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 153.5 +48000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 50.3 +48000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 4.8 +48000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 39.8 +48000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.9 +48000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 75.7 +48000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 72.4 +48000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 51.8 +48000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 60.0 +48000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 13.1 +48000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 6.2 +48000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 40.8 +48000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 14.8 +48000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 2.4 +48000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 1.1 +48000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 11.0 +48000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 31.5 +48000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 2.9 +48000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 30.6 +48000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 30.2 +48000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 209.4 +48000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 187.0 +48000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 451.5 +48000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 82.4 +48000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.3 +48000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 5.4 +48000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 7.3 +48000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 48.2 +48000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 676.0 +48000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 839.7 +48000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 198.6 +48000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1411.2 +48000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 501.5 +48000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 6.1 +48000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 1.0 +48000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.2 +48000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 2.4 +48000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 28.8 +48000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 1065.5 +48000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 1073.4 +48000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 385.5 +48000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 62.7 +48000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 80.1 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 17.9 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.8 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.1 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 109.3 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 263.0 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 177.4 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 171.8 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 632.6 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 710.4 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 191.0 +48000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 3.2 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 124.9 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 23.6 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 15.2 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 26.5 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 83.8 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 30.5 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 236.5 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 736.2 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 1047.2 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 326.8 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 33.4 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 5.5 +48000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 19.9 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 100.2 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 30.2 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 139.0 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 52.9 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 7.3 +48000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +48000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 476.8 +48000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 1465.7 +48000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 1374.3 +48000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 352.4 +48000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 2583.1 +48000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 9935.5 +48000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +48000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +48000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +48000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.7 +48000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.3 +48000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +48000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 134.8 +48000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 234.0 +48000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 375.8 +48000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 625.8 +48000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 19.1 +48000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 19.8 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 4.8 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +48000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +48000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +48000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.1 +48000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.1 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 20.0 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 561.9 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 7797.5 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 3779.4 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 844.3 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 1386.4 +48000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 296.4 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 2.3 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 137.1 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 3423.5 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 59.4 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 34.2 +48000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 52.2 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.8 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 12.7 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 135.0 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 503.6 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 2225.3 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 704.6 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 425.4 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 360.8 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 81.7 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 13.3 +48000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 1.6 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 80.1 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 104.1 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 191.9 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 93.2 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 1.7 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 98.1 +48000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 82.0 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 2.3 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 19.8 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.4 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 16.5 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 4.5 +48000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.8 +48000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 5.1 +48000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 20.5 +48000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.5 +48000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 4641.7 +48000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 12484.4 +48000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 7133.6 +48000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 11295.3 +48000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 9955.2 +48000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 16587.6 +48000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 14300.4 +48000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 7399.6 +48000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.7 +48000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 780.0 +48000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 7154.3 +48000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 8531.1 +48000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 440.7 +48000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 8.6 +48000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 186.0 +48000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 68.5 +48000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 58.3 +48000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 2.8 +48000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 17.6 +48000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 93.0 +48000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 42.3 +48000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 26.5 +48000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 71.1 +48000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 435.7 +48000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 840.9 +48000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 913.8 +48000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 247.6 +48000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 1.8 +48000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.2 +48000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.7 +48000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 526.6 +48000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 2488.7 +48000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 491.6 +48000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 22.0 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 1.4 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 16.4 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 59.4 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 31.4 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 19.1 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 148.8 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 185.9 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 463.3 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 468.7 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 196.4 +48000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +48000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +48000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.2 +48000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 37.4 +48000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 85.4 +48000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 33.9 +48000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 132.9 +48000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 627.6 +48000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 329.3 +48000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 93.7 +48000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 6.7 +48000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +48000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 4402.9 +48000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 4396.2 +48000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 3388.5 +48000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 5335.5 +48000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 8831.3 +48000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 1206.2 +48000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 4450.6 +48000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 5416.5 +48000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 1848.8 +48000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 1027.9 +48000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 533.9 +48000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +48000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +48000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +48000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +48000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +48000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 1.9 +48000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 758.1 +48000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 1822.3 +48000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 457.2 +48000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 363.6 +48000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 632.5 +48000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 179.3 +48000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 1213.5 +48000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 1350.6 +48000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 595.5 +48000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 149.2 +48000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 75.6 +48000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +48000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +48000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +48000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +48000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +48000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 25.8 +48000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 63.0 +48000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 8.5 +48000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 13.1 +48000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 484.2 +48000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 335.1 +48000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 2147.9 +48000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 2797.6 +48000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 320.8 +48000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 287.9 +48000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 82.3 +48000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +48000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +48000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +48000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +48000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +48000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +48000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 279.8 +48000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 1550.6 +48000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 2257.3 +48000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 1399.9 +48000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 3880.7 +48000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 2818.6 +48000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 1237.6 +48000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 64.5 +48000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 1.4 +48000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +48000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 49.0 +48000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 417.0 +48000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 478.7 +48000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 597.8 +48000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 571.3 +48000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 71.6 +48000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 240.3 +48000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 67.2 +48000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 223.2 +48000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 180.7 +48000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 27.6 +48000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 12.9 +48000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 6.6 +48000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 14.7 +48000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 4.6 +48000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 43.0 +48000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 62.3 +48000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 19.7 +48000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 95.5 +48000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 110.3 +48000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 29.7 +48000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 3.9 +48000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.9 +48000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +48000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.5 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.7 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.0 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 51.3 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 356.1 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 510.4 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 44.1 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 18.1 +48000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.5 +48000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 107.1 +48000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.3 +48000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 1.4 +48000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 3.9 +48000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 5.4 +48000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 112.0 +48000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 204.1 +48000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 602.7 +48000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 202.3 +48000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 236.3 +48000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 25.1 +48000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 1.5 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +48000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 96.5 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 46.9 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 438.6 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 64.4 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 912.8 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 464.6 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 672.3 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 425.9 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 176.7 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 78.7 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 96.2 +48000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 2.7 +48000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 9046.7 +48000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 33746.0 +48000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 50826.5 +48000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 11300.4 +48000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 22256.6 +48000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 42992.5 +48000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 33072.2 +48000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 55309.7 +48000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 37572.2 +48000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 84052.7 +48000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 75451.2 +48000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 36.0 +48000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 34.7 +48000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 331.4 +48000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.6 +48000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 351.9 +48000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 141.9 +48000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 3144.5 +48000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 11630.2 +48000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 43086.2 +48000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 2834.7 +48000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 39.5 +48000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 28.3 +48000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 16.8 +48000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 72.3 +48000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 635.4 +48000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +48000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 15233.7 +48000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 56542.9 +48000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 22707.7 +48000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 383.1 +48000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 466.2 +48000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 228.7 +48000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 506.1 +48000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 276.9 +48000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 51.2 +48000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 448.7 +48000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 377.9 +48000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 3097.1 +48000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 5092.9 +48000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 3756.7 +48000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 148.2 +48000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 281.1 +48000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 22.9 +48000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 80.4 +48000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 49.2 +48000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 501.6 +48000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 1.1 +48000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 6.0 +48000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 6.7 +48000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 9.4 +48000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 34.7 +48000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 54.4 +48000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 99.4 +48000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 92.5 +48000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 390.5 +48000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 143.9 +48000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 24.3 +48000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 6.1 +48000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 1.4 +48000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 2.2 +48000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.7 +48000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 5.9 +48000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 190.2 +48000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 782.1 +48000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 14.0 +48000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 35.8 +48000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 11.1 +48000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +48000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 11.1 +48000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.1 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/US.POP b/NONROAD/NR08a/DATA/POP/US.POP new file mode 100644 index 0000000..20057f1 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/US.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +National Population +FIPS SUBR Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population SIHpMaxMod +------------------------------------------------------------------------------ 1,041,469 ######## nr04 +/POPULATION/ psr98? or 96 PSR98 frac ISMA Tota chksum psr?98?9PSR?98 frac +00000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 6297 4185 0.0040 1,567,0001,567,000 3 4185 0.0041 +00000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 3715 2469 0.0024 6 1997 0.0019 +00000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 3989 2651 0.0025 Avg Hp 16 31495 0.0305 +00000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 317887 211276 0.2029 49.3 25 208713 0.2020 +00000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 320869 213258 0.2048 40 187053 0.1811 +00000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 144018 95718 0.0919 50 138605 0.1342 +00000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 507374 337214 0.3238 75 424825 0.4113 +00000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 208526 138592 0.1331 100 0.0000 +00000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 54325 36106 0.0347 175 36106 0.0350 +00000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 801320 5106000 1 +00000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 394680 1 +00000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 405000 780000 1 +00000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 3505000 3130000 1 +00000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 175537 11 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 326568 11 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 97 40 +00000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 55 75 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 165 3 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 6706 6 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 12701 16 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 100050 25 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1023 2046 40 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 25 49 50 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2469 4937 75 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 40 100 +00000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 935 1869 175 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1023 0 40 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 25 0 50 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 2469 0 75 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 20 0 100 +00000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 934.5 0 175 +00000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 746 6 +00000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 5198 11 +00000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 241 16 +00000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1883 25 +00000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 318 635 40 +00000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 351 702 75 +00000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 317.5 0 40 +00000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 351 0 75 +00000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 155522 6 +00000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 340 11 +00000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 14614 3 +00000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 74153 6 +00000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 22828 11 +00000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 4046 16 +00000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 5621 11 +00000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 1004 16 +00000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 2613 25 +00000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 309 617 40 +00000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 212 424 75 +00000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 146 291 100 +00000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 308.5 0 40 +00000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 212 0 75 +00000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 146 0 100 +00000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 13997 3 +00000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 40940 6 +00000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 34719 11 +00000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 17389 16 +00000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 12251 25 +00000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 498 995 40 +00000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 45 89 75 +00000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 498 0 40 +00000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 45 0 75 +00000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 6079 6 +00000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 9362 11 +00000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 2707 16 +00000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1141 25 +00000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 113 225 40 +00000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 41 81 75 +00000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 113 0 40 +00000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 41 0 75 +00000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 38 3 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 687 6 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 684 11 +00000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 26 25 +00000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 29 3 +00000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 10643 6 +00000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 10419 11 +00000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 3723 16 +00000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 4245 25 +00000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 707 1414 40 +00000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 598 1195 75 +00000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 470 940 100 +00000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 707 0 40 +00000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 598 0 75 +00000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 470 0 100 +00000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 4390 1 +00000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 89858 3 +00000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 3634 6 +00000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 1111 11 +00000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 1410 16 +00000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 926 25 +00000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 373 746 40 +00000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 340 679 75 +00000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 563 1126 175 +00000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 373 0 40 +00000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 340 0 75 +00000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 563 0 175 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 11491 3 +00000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 55066 6 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 28313 11 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 5937 16 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 2610 25 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 718 1436 40 +00000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 391 782 75 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 718 0 40 +00000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 391 0 75 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 1558 3 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 87327 6 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 145895 11 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 4950 16 +00000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 3793 25 +00000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 148 11 +00000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 209 16 +00000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 74 25 +00000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 3 6 40 +00000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 520 1040 75 +00000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 84 168 175 +00000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 3 0 40 +00000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 520 0 75 +00000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 84 0 175 +00000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 1405 3 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1975 6 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 3603 11 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 924 16 +00000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 115 230 75 +00000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 115 0 75 +00000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 33 25 +00000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 112 223 40 +00000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 1 1 50 +00000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 738 1475 75 +00000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 5 9 100 +00000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 87 174 175 +00000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 112 0 40 +00000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 1 0 50 +00000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 738 0 75 +00000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 5 0 100 +00000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 87 0 175 +00000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 32 63 40 +00000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1474 2947 75 +00000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 49 97 175 +00000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 32 0 40 +00000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 1474 0 75 +00000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 48.5 0 175 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 362 11 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 7534 25 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 56 40 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 132 264 75 +00000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 32 100 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 28 0 40 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 132 0 75 +00000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 16 0 100 +00000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 297 16 +00000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 5986 25 +00000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1698 3396 40 +00000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 938 1803 75 +00000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 1003 2005 100 +00000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 1698 0 40 +00000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 938 73 75 +00000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 1003 0 100 +00000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 5279 6 +00000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 17418 11 +00000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 2622 16 +00000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 3202 25 +00000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 124 75 +00000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 20 25 +00000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 624.5 1221 175 +00000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 596.5 0 175 +00000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 28 28 175 +00000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 2188 11 +00000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 608 16 +00000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 14037 25 +00000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 6208 12415 40 +00000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 12931 25861 75 +00000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 287 574 175 +00000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 6208 0 40 +00000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 12931 0 75 +00000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 287 0 175 +00000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1645 1349 0.0037 442000<- change total he 40 +00000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 5876 4079 0.0133 208258 1.0000 50 +00000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 9466 31636 0.0214 442000 75 +00000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 691 3493 0.0016 100 +00000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 4399 6307 0.0100 175 +00000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 22 203 0.0000 300 +00000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 31264 14157 0.0707 40 +00000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 68337 30888 0.1546 50 +00000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 179857 57568 0.4069 75 +00000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 13136 3022 0.0297 100 +00000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 83590 35151 0.1891 175 +00000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 409 0 0.0009 300 +00000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 43307 20405 0.0980 50 +00000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 3298 3 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 3777 6 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 5779 11 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1563 16 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 3348 25 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 2011 4009 0.1507 13343 40 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 2273 4113 0.1704 13343 50 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2306 4611 0.1728 75 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 46 0.0017 100 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 47 93 0.0035 1.0000 175 +00000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 3 5 0.0002 600 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 2011 13 0.1507 40 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 2273 433 0.1704 50 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 2306 0 0.1728 75 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 23 0 0.0017 100 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 47 0 0.0035 175 +00000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 2.5 0 0.0002 600 +00000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 20 20 0.0015 300 +00000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 156 3 +00000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 63996 6 +00000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 12092 11 +00000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 6158 16 +00000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 5205 25 +00000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 465 930 2939 2939 40 +00000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 646 1292 1476 75 +00000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 104 184 1500 100 +00000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 246 492 90522 175 +00000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 9 17 90522 300 +00000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 465 0 40 +00000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 646 0 75 +00000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 80 0 100 +00000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 246 0 175 +00000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 8.5 0 300 +00000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 24 24 100 +00000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 33 3 +00000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1271 25 +00000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 773 18 75 +00000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 29 58 100 +00000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 773 1527 75 +00000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 29 0 100 +00000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 22 11 +00000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 35 16 +00000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 1067 25 +00000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 120 50 +00000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 41 75 +00000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 11 22 2713 2713 40 +00000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 411 663 75 +00000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 188 246 100 +00000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 739 1011 175 +00000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 9 0 300 +00000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 11 0 40 +00000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 388 135 75 +00000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 147 89 100 +00000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 730 457 175 +00000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0 6 300 +00000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 23 23 75 +00000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 41 41 100 +00000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 9 9 175 +00000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 9 11 300 +00000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 636892 33,800,000 0.9556 3 +00000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 31652672 0.9556 6 +00000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 10436 0.9556 11 +00000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 29577 0.0444 3 +00000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1469938 0.0444 6 +00000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 485 0.0444 11 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 59060 4,015,859 0.8570 1 +00000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 417521 4,734,891 0.8570 3 +00000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 2965010 0.8570 6 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 9855 0.1430 1 +00000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 69668 0.1430 3 +00000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 494745 0.1430 6 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 5150700 97.00% 5,870,500 0.97 3 +00000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0 0.00% 5,900,000 0 6 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 159300 3.00% 0.03 3 +00000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 560500 100.00% 21,556,941 1 6 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 3850000 15,656,941 1.0000 1 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 9750000 0.8530 3 +00000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0 0.0000 6 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0 0.0000 1 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1680650 0.1470 3 +00000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 119350 1.0000 6 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 222344 0.8940 6 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0 0.0000 11 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0 0.0000 16 +00000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0 0.0000 25 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 26363 0.1060 6 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 7052 1.0000 11 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 373 1.0000 16 +00000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 809 1.0000 25 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 570000 8,301,735 1.0000 1 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 6330000 0.9254 3 +00000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0 0.0000 6 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0 0.0000 1 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 510000 0.0746 3 +00000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 190000 1.0000 6 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 358692 0.9250 6 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0 0.0000 11 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0 0.0000 16 +00000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0 0.0000 25 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 29083 0.0750 6 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 284431 1.0000 11 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 8959 1.0000 16 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 9747 1.0000 25 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 742 40 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 5061 75 +00000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 5020 175 +00000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 966993 5,625,174 0.9000 3 +00000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 1480768 0.9000 6 +00000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 2498136 0.9000 11 +00000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 116759 0.9000 16 +00000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 107444 0.1000 3 +00000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 164530 0.1000 6 +00000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 277571 0.1000 11 +00000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 12973 0.1000 16 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 6954 0.9739 6 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 1006160 0.9740 11 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 780271 0.9740 16 +00000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 3691 0.9739 25 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 186 0.0261 6 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 26858 0.0260 11 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 20829 0.0260 16 +00000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 99 0.0261 25 +00000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 27794 11 +00000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 94937 16 +00000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 41976 25 +00000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 630 40 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 101841 3 +00000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 199316 6 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 24846 12608479 0.9740 6 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 778998 0.9740 11 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 8655718 0.9740 16 +00000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 2821097 0.9740 25 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 663 0.0260 6 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 20795 0.0260 11 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 231056 0.0260 16 +00000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 75306 0.0260 25 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 34 6 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1678 11 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 6916 16 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 13034 25 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 984 1967 40 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4199 8397 75 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 39 77 100 +00000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1005 2009 175 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 984 0 40 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 4199 0 75 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 39 0 100 +00000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1005 0 175 +00000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 119 3 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 343058 6 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 91253 11 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 203640 16 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 265433 25 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 52592 40 +00000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 454 75 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 25378 0.4570 1 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 109896 0.4570 3 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 280075 0.4570 6 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 185063 0.4570 11 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 2710 0.4570 16 +00000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 1776 0.4569 25 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 30154 0.5430 1 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 130577 0.5430 3 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 332781 0.5430 6 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 219889 0.5430 11 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 3220 0.5430 16 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 2111 0.5431 25 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 206 40 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 71 75 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 25 100 +00000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 83 175 +00000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 2595 11 +00000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 2239 16 +00000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1075 2617 25 +00000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 111 40 +00000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1286 100 +00000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 145 175 +00000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 1 75 +00000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 9 100 +00000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 20 175 +00000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 13265 40 +00000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 4246 75 +00000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 482 175 +00000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 88 6 +00000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 6148 11 +00000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 90 16 +00000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 1880 25 +00000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 22521 1 +00000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 20997 3 +00000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 81764 6 +00000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 29819 11 +00000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 10243 16 +00000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 17354 25 +00000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 4227 40 +00000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 1586 75 +00000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 1661 100 +00000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 1630 175 +00000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 719032 720,828 11 +00000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 1796 16 +00000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 7168 100 +00000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 4061 175 +00000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 1544 6 +00000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 7506 11 +00000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 4462 16 +00000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 3953 25 +00000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 314 40 +00000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 508 75 +00000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 81 100 +00000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 2977 175 +00000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1244 300 +00000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 80 175 +00000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 134 175 +00000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 761 3,137 6 +00000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 209 11 +00000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 3 25 +00000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 477 75 +00000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1007 100 +00000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 467 175 +00000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 213 300 +00000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 12 3,885 175 +00000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 248 40 +00000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 1314 75 +00000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 1869 100 +00000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 184 175 +00000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 214 300 +00000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 44 600 +00000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 4052 1 +00000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 100577 3 +00000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 707572 6 +00000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 1699093 11 +00000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 375830 16 +00000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 537782 25 +00000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0 49803 50,274 50,274 40 +00000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0 374 1,171 1,171 50 +00000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0 20256 39,144 39,144 75 +00000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0 20659 26,015 26,015 100 +00000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0 6209 9,599 9,599 175 +00000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0 82 935 935 300 +00000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 49803 0 40 +00000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 374 0 50 +00000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 23229 2973 75 +00000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 20659 0 100 +00000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 7750 1541 175 +00000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 179 97 300 +00000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 30 30 600 +00000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 471 471 40 +00000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 797 797 50 +00000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 15915 15915 75 +00000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 5356 5356 100 +00000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 1849 1849 175 +00000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 756 756 300 +00000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 382 382 600 +00000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 127359 958059 1 +00000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 230103 3 +00000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 140 140 40 +00000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 29 29 75 +00000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 329762 329762 6 +00000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 206833 206833 11 +00000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 20034 20034 16 +00000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 11674 11674 25 +00000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 10150 19967 32294 32294 40 +00000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 94 188 50 +00000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 4723 9437 75 +00000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 314 627 100 +00000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 728 1410 175 +00000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 9817 0 40 +00000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 94 0 50 +00000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 4719 4 75 +00000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 314 0 100 +00000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 682 0 175 +00000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 333 333 40 +00000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 4 4 75 +00000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 46 46 175 +00000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 53 53 300 +00000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 55 55 600 +00000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 59 129265 3 +00000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 52263 6 +00000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 48785 11 +00000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 5984 16 +00000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 6485 25 +00000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 950 1899 15689 15689 40 +00000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 5253 10354 75 +00000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 1118 2237 100 +00000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 524 804 175 +00000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 950 0 40 +00000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 5102 0 75 +00000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 1118 0 100 +00000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 280 0 175 +00000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 151 151 75 +00000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 244 244 175 +00000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 155 40 +00000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 92 50 +00000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 25 75 +00000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 271 100 +00000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 45 175 +00000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 117 300 +00000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 38 600 +00000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 6910 6 +00000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 26796 11 +00000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 98775 16 +00000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 32951 25 +00000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 7778 15555 75 +00000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 691 1382 100 +00000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 156 312 175 +00000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 7778 75 +00000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 691 100 +00000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 156 175 +00000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 164 1,603,599 3 +00000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 872534 872534 6 +00000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 539616 539616 11 +00000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 160083 160083 16 +00000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 30104 25 +00000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 510 1019 40 +00000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 39 78 75 +00000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 1 2 100 +00000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 510 0 40 +00000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 39 0 75 +00000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 1 0 100 +00000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 1273 3 +00000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 6056 6 +00000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 5486 11 +00000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 4322 16 +00000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 4424 25 +00000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 67 133 40 +00000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 28 56 50 +00000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 66 131 75 +00000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 1 1 175 +00000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 67 0 40 +00000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 28 0 50 +00000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 66 0 75 +00000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 1 1 175 +00000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 1 1 175 +00000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 29500 11 +00000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 187298 11 +00000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 10359 16 +00000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3357 25 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 326 6 +00000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 134 11 +00000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 897 6 +00000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 102 11 +00000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 363 16 +00000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 19 25 +00000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 21 42 868 868 40 +00000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 14 50 +00000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 23 45 75 +00000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 97 194 100 +00000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 287 573 175 +00000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 21 0 40 +00000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 7 0 50 +00000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 23 0 75 +00000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 97 0 100 +00000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 287 0 175 +00000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 4015 11 +00000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 7361 16 +00000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 4889 25 +00000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0 20 7770 7770 40 +00000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 4792 4772 40 +00000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 656 656 50 +00000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 2033 2033 75 +00000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 74 74 100 +00000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 201 201 175 +00000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 14 14 750 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 464 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 16886 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 11675 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 39 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 248 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 246 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 2068 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 1820 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 804 +00000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 30 +00000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 102 +00000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 2499 +00000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 232 +00000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 4743 +00000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 2953 +00000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 6469 +00000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 4542 +00000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 585 +00000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 2446 +00000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 12246 +00000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 5471 +00000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 3328 +00000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 307 +00000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 1319 +00000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 2475 +00000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 2963 +00000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 5318 +00000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 7585 +00000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 7030 +00000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 7118 +00000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 19481 +00000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 18063 +00000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 6167 +00000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1829 +00000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 5 +00000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 491 +00000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 5648 +00000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 7313 +00000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 3393 +00000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 4 +00000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 1056 +00000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 1184 +00000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 91 +00000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 610 +00000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 812 +00000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0 +00000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 797 +00000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 940 +00000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 1715 +00000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 532 +00000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 24 +00000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 19 +00000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 61 +00000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 912 +00000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 764 +00000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 264 +00000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 14 +00000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 724 +00000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 222 +00000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 10 +00000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 222 +00000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 98 +00000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 20 +00000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 2 +00000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 15 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1982 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 4666 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 2492 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 39467 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 12108 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 21 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 865 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 502 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 399 +00000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 98 +00000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0 +00000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 6 +00000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 72 +00000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 100 +00000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 5457 +00000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 13605 +00000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 22633 +00000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 9142 +00000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 2840 +00000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1897 +00000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 964 +00000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 84 +00000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 10 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 57 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 88 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 197 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 3362 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 3420 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 5542 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 5637 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 8286 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 7203 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 4151 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 971 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 531 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 19 +00000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 66 +00000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 364 +00000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 749 +00000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 3339 +00000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 6917 +00000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 3688 +00000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 2861 +00000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 12912 +00000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 48245 +00000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 35271 +00000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 9344 +00000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 297 +00000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 344 +00000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 11 +00000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 131 +00000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 5 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 304 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 519 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 2977 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 107 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 955 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 1374 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 168 +00000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 4 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 6051 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 3607 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 670 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 610 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 444 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 761 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 1272 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 403 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 143 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 180 +00000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 36 +00000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0 +00000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 551 +00000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 8 +00000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 293 +00000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 2839 +00000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 10690 +00000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 10934 +00000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 6734 +00000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 290 +00000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 82 +00000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 3 +00000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0 +00000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 16 +00000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 126 +00000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 972 +00000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 9932 +00000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 16634 +00000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1902 +00000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 115 +00000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 26 +00000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 2497 +00000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 5299 +00000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 3000 +00000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 1457 +00000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 461 +00000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 2333 +00000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 568 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 65 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 89 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 336 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 3830 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 926 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 1451 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 547 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 1424 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 108 +00000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 8 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 15 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 195 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 4563 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 5079 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 10068 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 57611 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 29594 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 1534 +00000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 2019 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 45 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 2308 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 2650 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 3748 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 16113 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 40747 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 38900 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 28540 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 2157 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 1051 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 219 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 1287 +00000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 46 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 5 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 2346 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 4689 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 2505 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 46795 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 165326 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 110004 +00000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 599 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 485 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 13961 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 31552 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 27323 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 13835 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 5458 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1129 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1964 +00000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 9 +00000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 125 +00000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 20644 +00000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 45772 +00000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 89565 +00000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 35417 +00000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 194482 +00000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 127851 +00000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 3220 +00000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 1 +00000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 435 +00000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 743 +00000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1777 +00000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 582 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 56 +00000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 460 +00000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 11 +00000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 876 +00000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 838 +00000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 599 +00000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 694 +00000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 152 +00000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 72 +00000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 473 +00000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 171 +00000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 28 +00000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 12 +00000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 127 +00000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 364 +00000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 33 +00000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 354 +00000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 349 +00000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 2424 +00000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 2164 +00000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 5226 +00000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 953 +00000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 4 +00000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 63 +00000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 123 +00000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 813 +00000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 11404 +00000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 14165 +00000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 3350 +00000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 23806 +00000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 8461 +00000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 103 +00000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 16 +00000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 4 +00000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 41 +00000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 485 +00000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 17974 +00000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 18108 +00000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 6503 +00000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 1058 +00000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1351 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 302 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 14 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 1 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1845 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 4436 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2993 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2898 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 10672 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 11984 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 3222 +00000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 55 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 2108 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 398 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 257 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 447 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1414 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 515 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3989 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 12419 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 17667 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 5512 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 564 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 93 +00000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 336 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1691 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 510 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 2345 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 892 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 123 +00000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 2 +00000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 6320 +00000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 19428 +00000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 18216 +00000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 4671 +00000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 34240 +00000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 131695 +00000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 11 +00000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 4 +00000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0 +00000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 2275 +00000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3947 +00000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 6340 +00000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 10556 +00000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 322 +00000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 277 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 67 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0 +00000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0 +00000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 22 +00000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 189 +00000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 235 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 280 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 7869 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 109208 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 52933 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 11824 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 19417 +00000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 4151 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 32 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1921 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 47948 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 832 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 480 +00000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 731 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 11 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 178 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1891 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 7053 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 31166 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 9868 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 5958 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 5053 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1144 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 187 +00000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 23 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1121 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1458 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2687 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1306 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 24 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1374 +00000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1149 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 32 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 277 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 1 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 6 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 231 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 62 +00000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 11 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 86 +00000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 349 +00000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 8 +00000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 79153 +00000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 212890 +00000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 121645 +00000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 192612 +00000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 169760 +00000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 282860 +00000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 243857 +00000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 126182 +00000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 13 +00000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 13300 +00000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 121999 +00000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 145476 +00000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 7515 +00000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 146 +00000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 3172 +00000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1169 +00000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 993 +00000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 49 +00000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 300 +00000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 1586 +00000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 721 +00000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 451 +00000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1212 +00000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 7429 +00000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 14340 +00000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 15583 +00000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 4222 +00000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 31 +00000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 3 +00000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 12 +00000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 8980 +00000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 42439 +00000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 8383 +00000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 375 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 24 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 279 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1013 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 536 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 326 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 2537 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 3171 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 7901 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 7993 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 3349 +00000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 2 +00000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0 +00000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 4 +00000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 638 +00000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 1457 +00000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 578 +00000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 2267 +00000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 10702 +00000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 5615 +00000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 1597 +00000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 114 +00000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 60349 +00000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 60257 +00000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 46445 +00000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 73131 +00000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 121047 +00000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 16533 +00000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 61002 +00000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 74241 +00000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 25340 +00000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 14089 +00000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 7317 +00000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0 +00000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0 4669 +00000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0 2250 +00000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0 4981 +00000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0 386 +00000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 27 +00000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 10390 +00000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 24977 +00000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 6266 +00000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 4984 +00000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 8669 +00000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 2457 +00000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 16632 +00000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 18512 +00000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 8163 +00000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 2045 +00000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 1036 +00000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0 +00000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0 275 +00000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0 165 +00000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0 6 +00000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0 2 +00000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 354 +00000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 864 +00000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 117 +00000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 179 +00000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 6636 +00000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 4593 +00000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 29440 +00000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 38346 +00000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 4397 +00000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 3947 +00000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 1128 +00000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0 +00000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 1 +00000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0 +00000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 3836 +00000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 21254 +00000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 30940 +00000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 19188 +00000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 53190 +00000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 38634 +00000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 16963 +00000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 883 +00000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 20 +00000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0 +00000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 671 +00000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 5716 +00000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 6562 +00000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 8194 +00000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 7831 +00000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 981 +00000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 3294 +00000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 921 +00000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 3060 +00000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 2476 +00000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 379 +00000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 177 +00000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 90 +00000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 201 +00000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 63 +00000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 589 +00000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 854 +00000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 269 +00000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 1309 +00000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 1512 +00000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 408 +00000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 53 +00000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 13 +00000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0 +00000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 12 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 17 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 24 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1192 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 8269 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11850 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1024 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 419 +00000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 11 +00000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1124 +00000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 3 +00000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 14 +00000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 41 +00000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 57 +00000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1176 +00000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 2142 +00000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 6327 +00000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 2124 +00000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2481 +00000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 263 +00000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 16 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 10 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 252 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 497 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 1285 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 2271 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 2419 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 758 +00000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 376 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 232 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 113 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1055 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 155 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 2195 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1117 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 1617 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1024 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 425 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 189 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 231 +00000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 6 +00000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 177107 0.0199 8,919,782 1.0000 3 26.55 +00000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 660643 0.0741 6 26.55 +00000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 995028 0.1116 11 26.14 +00000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 221228 0.0248 16 24.22 +00000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 435716 0.0488 25 22.17 +00000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 841662 0.0944 40 20.25 +00000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 647452 0.0726 50 19.16 +00000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 1082796 0.1214 75 17.24 +00000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 735549 0.0825 100 17.24 +00000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 1645496 0.1845 175 14.78 +00000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 1477105 0.1656 300 13.27 +00000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 704 0.0006 1,205,783 1.0000 3 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 680 0.0006 6 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 6488 0.0054 11 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 12 0.0000 25 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 6889 0.0057 40 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 2777 0.0023 50 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 61559 0.0511 75 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 227683 0.1888 100 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 843496 0.6995 175 9.86 +00000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 55495 0.0460 300 9.86 +00000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 774 0.0004 1,872,723 1.0000 6 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 554 0.0003 11 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 328 0.0002 16 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 1415 0.0008 40 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 12439 0.0066 75 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0 0.0000 100 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 298229 0.1592 175 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 1106937 0.5911 300 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 444547 0.2374 600 19.71 +00000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50.4 DEFAULT 7500 0.0040 750 5.04 +00000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 9126 +00000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 4478 +00000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 9908 +00000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 5421 +00000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 1002 +00000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 8784 +00000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 7397 +00000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 60632 +00000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 99703 +00000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 73546 +00000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 2902 +00000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 5502 +00000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 448 +00000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 1573 +00000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 964 +00000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 9819 +00000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 13 +00000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 71 +00000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 78 +00000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 110 +00000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 408 +00000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 641 +00000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 1169 +00000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 1088 +00000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 4595 +00000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 1693 +00000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 286 +00000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 72 +00000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 17 +00000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 26 +00000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 9 +00000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 70 3 +00000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 2238 6 +00000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 9202 11 +00000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 165 16 +00000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 421 25 +00000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 131 262 40 +00000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 1 2 175 +00000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 131 0 40 +00000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 1 0 175 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/UT.POP b/NONROAD/NR08a/DATA/POP/UT.POP new file mode 100644 index 0000000..0bd2aa2 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/UT.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 49000 UT Utah 936,404.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +49000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 103.4 +49000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 61.0 +49000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 65.5 +49000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 5219.8 +49000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 5268.8 +49000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 2364.8 +49000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 8331.3 +49000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 3424.1 +49000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 892.0 +49000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 14242.8 +49000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 7015.1 +49000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 7198.5 +49000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 62298.5 +49000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 815.3 +49000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 2630.9 +49000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.8 +49000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.4 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.3 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 54.0 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 102.3 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 806.0 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 8.2 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 19.9 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +49000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 7.5 +49000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 8.2 +49000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +49000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 19.9 +49000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.2 +49000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 7.5 +49000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 7.1 +49000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 49.8 +49000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 2.3 +49000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 18.0 +49000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 3.0 +49000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 3.4 +49000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 3.0 +49000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 3.4 +49000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 1490.3 +49000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 3.3 +49000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 140.0 +49000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 710.6 +49000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 218.7 +49000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 38.8 +49000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 53.9 +49000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 9.6 +49000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 25.0 +49000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 3.0 +49000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 2.0 +49000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 1.4 +49000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 3.0 +49000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 2.0 +49000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 1.4 +49000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 134.1 +49000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 392.3 +49000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 332.7 +49000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 166.6 +49000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 117.4 +49000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 4.8 +49000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.4 +49000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 4.8 +49000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.4 +49000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 58.3 +49000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 89.7 +49000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 25.9 +49000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 10.9 +49000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.1 +49000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +49000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 1.1 +49000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.4 +49000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.4 +49000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 6.6 +49000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 6.6 +49000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.2 +49000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.3 +49000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 102.0 +49000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 99.8 +49000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 35.7 +49000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 40.7 +49000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 6.8 +49000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 5.7 +49000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 4.5 +49000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 6.8 +49000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 5.7 +49000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 4.5 +49000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 42.1 +49000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 861.1 +49000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 34.8 +49000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 10.6 +49000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 13.5 +49000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 8.9 +49000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.6 +49000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.3 +49000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.4 +49000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 3.6 +49000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 3.3 +49000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 5.4 +49000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 110.1 +49000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 527.7 +49000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 271.3 +49000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 56.9 +49000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 25.0 +49000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.9 +49000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.7 +49000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 6.9 +49000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 3.7 +49000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 14.9 +49000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 836.8 +49000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 1398.0 +49000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 47.4 +49000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 36.3 +49000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 1.4 +49000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 2.0 +49000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.7 +49000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +49000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 5.0 +49000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.8 +49000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +49000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 5.0 +49000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.8 +49000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 13.5 +49000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 18.9 +49000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 34.5 +49000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 8.9 +49000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.1 +49000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 1.1 +49000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.3 +49000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.1 +49000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +49000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 7.1 +49000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +49000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.8 +49000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 1.1 +49000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +49000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 7.1 +49000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +49000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.8 +49000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +49000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 14.1 +49000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.5 +49000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.3 +49000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 14.1 +49000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.5 +49000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 3.5 +49000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 72.2 +49000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +49000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.3 +49000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +49000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.3 +49000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 1.3 +49000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.2 +49000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 2.8 +49000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 57.4 +49000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 16.3 +49000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 9.0 +49000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 9.6 +49000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 16.3 +49000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 9.0 +49000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 9.6 +49000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 50.6 +49000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 166.9 +49000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 25.1 +49000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 30.7 +49000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 1.2 +49000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.2 +49000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 6.0 +49000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 5.7 +49000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.3 +49000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 16.7 +49000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 4.6 +49000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 107.2 +49000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 47.4 +49000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 98.7 +49000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 2.2 +49000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 47.4 +49000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 98.7 +49000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 2.2 +49000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 12.6 +49000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 44.9 +49000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 72.3 +49000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 5.3 +49000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 33.6 +49000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.2 +49000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 238.8 +49000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 521.9 +49000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 1373.5 +49000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 100.3 +49000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 638.3 +49000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 3.1 +49000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 330.7 +49000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 25.2 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 28.8 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 44.1 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 11.9 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 25.6 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 15.4 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 17.4 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 17.6 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.4 +49000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 15.4 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 17.4 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 17.6 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.2 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.4 +49000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +49000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.2 +49000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 1.2 +49000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 488.7 +49000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 92.3 +49000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 47.0 +49000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 39.7 +49000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 3.6 +49000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.9 +49000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.8 +49000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.9 +49000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +49000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 3.6 +49000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 4.9 +49000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.6 +49000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.9 +49000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.1 +49000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.2 +49000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.3 +49000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 9.7 +49000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 5.9 +49000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.2 +49000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 5.9 +49000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.2 +49000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.2 +49000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.3 +49000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 8.6 +49000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 1.0 +49000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.3 +49000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +49000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 3.1 +49000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 1.4 +49000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 5.6 +49000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +49000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +49000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 3.0 +49000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 1.1 +49000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 5.6 +49000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +49000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.2 +49000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.3 +49000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.1 +49000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.1 +49000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 4316.1 +49000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 214502.9 +49000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 70.7 +49000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 157.4 +49000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 7820.5 +49000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 2.6 +49000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 400.2 +49000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 2829.4 +49000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 20093.2 +49000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 52.4 +49000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 370.7 +49000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 2632.2 +49000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 34905.1 +49000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +49000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 847.5 +49000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 2982.0 +49000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 26090.6 +49000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 66073.5 +49000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +49000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +49000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 8941.5 +49000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 635.0 +49000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1506.8 +49000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +49000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +49000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +49000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 140.3 +49000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 37.5 +49000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 2.0 +49000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 4.3 +49000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 3862.8 +49000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 42897.0 +49000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +49000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +49000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 2713.3 +49000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 1010.9 +49000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 2430.8 +49000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +49000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +49000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 154.7 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1513.3 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 47.7 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 51.9 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 3.9 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 26.9 +49000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 26.7 +49000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 11800.8 +49000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 18070.7 +49000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 30486.2 +49000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1424.9 +49000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 1220.8 +49000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1869.4 +49000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 3153.8 +49000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 147.4 +49000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 47.1 +49000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 6818.5 +49000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 5287.7 +49000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 25.0 +49000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 1.0 +49000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 142.9 +49000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 110.8 +49000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.5 +49000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 147.9 +49000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 505.1 +49000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 223.3 +49000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 3.4 +49000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 541.8 +49000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 1060.4 +49000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 168.4 +49000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 5279.1 +49000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 58657.8 +49000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 19117.9 +49000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 3.5 +49000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 110.6 +49000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 1229.3 +49000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 400.6 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.2 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 8.9 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 36.8 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 69.3 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 5.2 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 22.3 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +49000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 5.3 +49000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 5.2 +49000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 22.3 +49000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.2 +49000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 5.3 +49000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.6 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1825.2 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 485.5 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 1083.4 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 1412.2 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 279.8 +49000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 2.4 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 172.0 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 744.7 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 1898.0 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1254.1 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 18.4 +49000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 12.0 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 160.4 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 694.7 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1770.5 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 1169.9 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 17.1 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 11.2 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 1.1 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.4 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +49000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.4 +49000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 8.2 +49000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 7.1 +49000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 3.4 +49000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.4 +49000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 4.1 +49000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.5 +49000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +49000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +49000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +49000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 42.1 +49000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 13.5 +49000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 1.5 +49000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.3 +49000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 19.5 +49000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.3 +49000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 6.0 +49000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 71.5 +49000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 66.7 +49000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 259.6 +49000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 94.7 +49000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 32.5 +49000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 55.1 +49000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 13.4 +49000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 5.0 +49000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 5.3 +49000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 5.2 +49000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 2282.9 +49000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 5.7 +49000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 22.8 +49000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 12.9 +49000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 4.9 +49000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 23.8 +49000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 14.2 +49000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 12.6 +49000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 1.0 +49000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 1.6 +49000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.3 +49000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 9.5 +49000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 3.9 +49000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.3 +49000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.4 +49000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 2.4 +49000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.7 +49000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +49000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 1.5 +49000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 3.2 +49000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 1.5 +49000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.7 +49000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +49000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.8 +49000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 4.2 +49000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 5.9 +49000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.6 +49000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.7 +49000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +49000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 31.0 +49000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 770.3 +49000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 5419.2 +49000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 13013.0 +49000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 2878.4 +49000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 4118.8 +49000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +49000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +49000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +49000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +49000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +49000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +49000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 381.4 +49000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 2.9 +49000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 177.9 +49000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 158.2 +49000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 59.4 +49000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 1.4 +49000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.2 +49000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 3.6 +49000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 6.1 +49000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 121.9 +49000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 41.0 +49000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 14.2 +49000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 5.8 +49000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 2.9 +49000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 975.4 +49000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 1762.3 +49000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 1.1 +49000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.2 +49000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 2525.6 +49000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 1584.1 +49000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 153.4 +49000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 89.4 +49000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 77.7 +49000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.7 +49000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 36.2 +49000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 2.4 +49000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 5.6 +49000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 75.2 +49000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.7 +49000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 36.1 +49000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 2.4 +49000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 5.2 +49000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 2.6 +49000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +49000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.4 +49000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.4 +49000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.4 +49000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.5 +49000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 400.3 +49000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 373.6 +49000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 45.8 +49000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 49.7 +49000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 7.3 +49000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 40.2 +49000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 8.6 +49000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 4.0 +49000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 7.3 +49000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 39.1 +49000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 8.6 +49000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 2.1 +49000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 1.2 +49000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.9 +49000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 1.2 +49000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.7 +49000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.2 +49000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 2.1 +49000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.3 +49000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.9 +49000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.3 +49000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 52.9 +49000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 205.2 +49000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 756.5 +49000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 252.4 +49000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 59.6 +49000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 5.3 +49000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 1.2 +49000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 59.6 +49000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 5.3 +49000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 1.2 +49000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 1.3 +49000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 6682.6 +49000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 4132.8 +49000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 1226.0 +49000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 230.6 +49000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 3.9 +49000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.3 +49000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +49000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 3.9 +49000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.3 +49000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +49000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 9.7 +49000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 46.4 +49000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 42.0 +49000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 33.1 +49000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 33.9 +49000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +49000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +49000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.5 +49000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +49000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.5 +49000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.2 +49000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.5 +49000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +49000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +49000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 27.5 +49000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 174.3 +49000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 9.6 +49000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 3.1 +49000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.3 +49000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.1 +49000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 9.4 +49000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 1.1 +49000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 3.8 +49000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.2 +49000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +49000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +49000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +49000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.0 +49000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 3.0 +49000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +49000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +49000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +49000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 1.0 +49000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 3.0 +49000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 53.7 +49000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 98.5 +49000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 65.4 +49000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +49000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 64.1 +49000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 8.8 +49000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 27.2 +49000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.0 +49000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 2.7 +49000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.2 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 3.7 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 136.0 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 94.1 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.3 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 2.0 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 2.0 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 16.7 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 14.7 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 6.5 +49000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.2 +49000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 1.0 +49000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 23.9 +49000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 2.2 +49000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 45.5 +49000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 28.3 +49000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 62.0 +49000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 43.5 +49000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 5.6 +49000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 23.4 +49000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 117.3 +49000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 52.4 +49000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 31.9 +49000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 2.9 +49000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 12.6 +49000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 23.7 +49000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 28.4 +49000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 51.0 +49000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 72.7 +49000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 67.4 +49000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 68.2 +49000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 186.7 +49000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 173.1 +49000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 59.1 +49000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 17.5 +49000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +49000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 4.7 +49000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 54.1 +49000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 70.1 +49000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 32.5 +49000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +49000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 10.1 +49000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 11.3 +49000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.9 +49000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 5.8 +49000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 7.8 +49000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +49000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 7.6 +49000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 9.0 +49000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 16.4 +49000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 5.1 +49000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.2 +49000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.2 +49000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.6 +49000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 8.7 +49000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 7.3 +49000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 2.5 +49000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.1 +49000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 6.9 +49000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 2.1 +49000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.1 +49000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 2.1 +49000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.9 +49000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.2 +49000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +49000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 19.0 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 44.7 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 23.9 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 378.2 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 116.0 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.2 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 8.3 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 4.8 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 3.8 +49000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.9 +49000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +49000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +49000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.7 +49000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.0 +49000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 52.3 +49000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 130.4 +49000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 216.9 +49000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 87.6 +49000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 27.2 +49000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 18.2 +49000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 9.2 +49000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.8 +49000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.1 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.5 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.8 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 1.9 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 32.2 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 32.8 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 53.1 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 54.0 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 79.4 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 69.0 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 39.8 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 9.3 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 5.1 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.1 +49000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.2 +49000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.6 +49000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 3.5 +49000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 7.2 +49000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 32.0 +49000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 66.3 +49000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 35.3 +49000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 27.4 +49000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 123.7 +49000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 462.3 +49000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 338.0 +49000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 89.5 +49000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 2.8 +49000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 3.3 +49000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.1 +49000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 1.3 +49000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 2.9 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 5.0 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 28.5 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 1.0 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 9.2 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 13.2 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 1.6 +49000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 58.0 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 34.6 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 6.4 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 5.8 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 4.3 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 7.3 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 12.2 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 3.9 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 1.4 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 1.7 +49000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.3 +49000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +49000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 5.3 +49000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +49000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 2.8 +49000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 27.2 +49000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 102.4 +49000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 104.8 +49000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 64.5 +49000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 2.8 +49000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.8 +49000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +49000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +49000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.2 +49000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 1.2 +49000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 9.3 +49000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 95.2 +49000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 159.4 +49000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 18.2 +49000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 1.1 +49000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.2 +49000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 23.9 +49000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 50.8 +49000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 28.7 +49000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 14.0 +49000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 4.4 +49000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 22.4 +49000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 5.4 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.6 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.8 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 3.2 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 36.7 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 8.9 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 13.9 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 5.2 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 13.6 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 1.0 +49000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.1 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 1.9 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 43.7 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 48.7 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 96.5 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 552.1 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 283.6 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 14.7 +49000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 19.3 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.4 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 22.1 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 25.4 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 35.9 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 154.4 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 390.5 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 372.8 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 273.5 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 20.7 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 10.1 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 2.1 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 12.3 +49000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.4 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 22.5 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 44.9 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 24.0 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 448.4 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 1584.2 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 1054.1 +49000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 5.7 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 4.6 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 133.8 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 302.3 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 261.8 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 132.6 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 52.3 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 10.8 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 18.8 +49000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.1 +49000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 1.2 +49000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 197.8 +49000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 438.6 +49000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 858.2 +49000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 339.4 +49000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 1863.6 +49000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 1225.1 +49000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 30.9 +49000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +49000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 4.2 +49000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 7.1 +49000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 17.0 +49000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 5.6 +49000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.5 +49000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 4.4 +49000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.1 +49000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 8.4 +49000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 8.0 +49000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 5.7 +49000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 6.7 +49000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 1.5 +49000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.7 +49000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 4.5 +49000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 1.6 +49000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.3 +49000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.1 +49000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 1.2 +49000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 3.5 +49000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.3 +49000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 3.4 +49000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 3.3 +49000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 23.2 +49000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 20.7 +49000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 50.1 +49000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 9.1 +49000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +49000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.6 +49000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.9 +49000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 6.2 +49000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 87.1 +49000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 108.2 +49000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 25.6 +49000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 181.8 +49000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 64.6 +49000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.8 +49000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +49000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +49000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.3 +49000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 3.7 +49000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 137.3 +49000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 138.3 +49000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 49.7 +49000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 8.1 +49000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 10.3 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 2.3 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 14.1 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 33.9 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 22.9 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 22.1 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 81.5 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 91.5 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 24.6 +49000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.4 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 16.1 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 3.0 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 2.0 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 3.4 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 10.8 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 3.9 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 30.5 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 94.8 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 134.9 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 42.1 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 4.3 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.7 +49000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 2.6 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 12.9 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 3.9 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 17.9 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 6.8 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.9 +49000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +49000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 50.9 +49000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 156.5 +49000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 146.8 +49000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 37.6 +49000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 275.8 +49000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 1061.0 +49000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +49000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +49000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +49000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +49000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +49000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +49000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 17.4 +49000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 30.1 +49000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 48.4 +49000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 80.6 +49000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 2.5 +49000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.5 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.4 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +49000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +49000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +49000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 2.1 +49000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 2.7 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.5 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 41.9 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 581.0 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 281.6 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 62.9 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 103.3 +49000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 22.1 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.2 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 10.2 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 255.1 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 4.4 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 2.6 +49000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 3.9 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.9 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 10.1 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 37.5 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 165.8 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 52.5 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 31.7 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 26.9 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 6.1 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 1.0 +49000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 6.0 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 7.8 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 14.3 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 6.9 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 7.3 +49000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 6.1 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.2 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.5 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 1.2 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.3 +49000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +49000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.3 +49000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.1 +49000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +49000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 251.3 +49000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 675.9 +49000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 386.2 +49000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 611.5 +49000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 539.0 +49000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 898.1 +49000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 774.2 +49000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 400.6 +49000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +49000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 42.2 +49000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 387.3 +49000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 461.9 +49000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 23.9 +49000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.5 +49000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 10.1 +49000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 3.7 +49000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 3.2 +49000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.2 +49000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 1.0 +49000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 5.0 +49000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 2.3 +49000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.4 +49000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 3.8 +49000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 23.6 +49000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 45.5 +49000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 49.5 +49000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 13.4 +49000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +49000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +49000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +49000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 28.5 +49000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 134.7 +49000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 26.6 +49000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.2 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.9 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 3.2 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 1.7 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 1.0 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 8.1 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 10.1 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 25.1 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 25.4 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 10.6 +49000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +49000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +49000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +49000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 2.0 +49000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 4.6 +49000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 1.8 +49000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 7.2 +49000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 34.0 +49000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 17.8 +49000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 5.1 +49000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.4 +49000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +49000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 462.2 +49000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 461.5 +49000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 355.7 +49000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 560.1 +49000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 927.1 +49000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 126.6 +49000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 467.2 +49000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 568.6 +49000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 194.1 +49000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 107.9 +49000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 56.0 +49000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +49000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +49000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +49000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +49000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +49000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.2 +49000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 79.6 +49000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 191.3 +49000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 48.0 +49000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 38.2 +49000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 66.4 +49000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 18.8 +49000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 127.4 +49000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 141.8 +49000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 62.5 +49000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 15.7 +49000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 7.9 +49000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +49000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +49000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +49000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +49000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +49000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 2.7 +49000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 6.6 +49000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.9 +49000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 1.4 +49000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 50.8 +49000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 35.2 +49000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 225.5 +49000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 293.7 +49000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 33.7 +49000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 30.2 +49000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 8.6 +49000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +49000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +49000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +49000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +49000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +49000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +49000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 29.4 +49000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 162.8 +49000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 237.0 +49000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 147.0 +49000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 407.4 +49000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 295.9 +49000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 129.9 +49000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 6.8 +49000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.2 +49000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +49000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 5.1 +49000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 43.8 +49000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 50.3 +49000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 62.8 +49000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 60.0 +49000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 7.5 +49000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 25.2 +49000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 7.1 +49000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 23.4 +49000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 19.0 +49000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 2.9 +49000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 1.4 +49000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.7 +49000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 1.5 +49000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.5 +49000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 4.5 +49000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 6.5 +49000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 2.1 +49000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 10.0 +49000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 11.6 +49000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 3.1 +49000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.4 +49000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.1 +49000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +49000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.1 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 7.7 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 11.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.0 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.4 +49000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +49000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 11.8 +49000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +49000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +49000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.4 +49000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.6 +49000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 12.4 +49000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 22.5 +49000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 66.5 +49000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 22.3 +49000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 26.1 +49000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 2.8 +49000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.2 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.8 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 20.2 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 39.8 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 103.0 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 182.0 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 193.9 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 60.8 +49000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 30.1 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 3.1 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 1.5 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 14.1 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.1 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 29.4 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 14.9 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 21.6 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 13.7 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 5.7 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 2.5 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 3.1 +49000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +49000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 1148.8 +49000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 4285.2 +49000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 6454.2 +49000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 1435.0 +49000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 2826.2 +49000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 5459.4 +49000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 4199.7 +49000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 7023.5 +49000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 4771.1 +49000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 10673.4 +49000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 9581.2 +49000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 4.6 +49000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 4.4 +49000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 42.1 +49000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.1 +49000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 44.7 +49000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 18.0 +49000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 399.3 +49000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 1476.9 +49000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 5471.3 +49000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 360.0 +49000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 5.0 +49000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 3.6 +49000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 2.1 +49000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 9.2 +49000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 80.7 +49000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +49000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1934.4 +49000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 7180.1 +49000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 2883.5 +49000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 48.6 +49000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 59.2 +49000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 29.0 +49000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 64.3 +49000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 35.2 +49000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 6.5 +49000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 57.0 +49000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 48.0 +49000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 393.3 +49000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 646.7 +49000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 477.1 +49000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 18.8 +49000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 35.7 +49000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 2.9 +49000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 10.2 +49000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 6.3 +49000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 63.7 +49000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.1 +49000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.7 +49000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.7 +49000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.0 +49000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 3.8 +49000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 6.0 +49000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 11.0 +49000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 10.2 +49000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 43.1 +49000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 15.9 +49000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 2.7 +49000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.7 +49000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +49000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.2 +49000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +49000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.7 +49000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 21.0 +49000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 86.4 +49000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 1.5 +49000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 4.0 +49000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +49000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +49000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.2 +49000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/VA.POP b/NONROAD/NR08a/DATA/POP/VA.POP new file mode 100644 index 0000000..2531e7a --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/VA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 51000 VA Virginia 3,044,109.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +51000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +51000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +51000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 15056.8 +51000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 7416.1 +51000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 7610.0 +51000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 65859.1 +51000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 3631.7 +51000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 8249.3 +51000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.5 +51000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.4 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 4.2 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 169.4 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 320.8 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2527.3 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 25.8 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.6 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 62.4 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.5 +51000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 23.6 +51000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 25.8 +51000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.6 +51000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 62.4 +51000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.5 +51000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 23.6 +51000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 21.4 +51000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 149.3 +51000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 6.9 +51000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 54.1 +51000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 9.1 +51000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 10.1 +51000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 9.1 +51000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 10.1 +51000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 4466.6 +51000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 9.8 +51000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 419.7 +51000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 2129.7 +51000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 655.6 +51000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 116.2 +51000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 161.4 +51000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 28.8 +51000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 75.0 +51000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 8.9 +51000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 6.1 +51000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 4.2 +51000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 8.9 +51000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 6.1 +51000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 4.2 +51000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 402.0 +51000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 1175.8 +51000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 997.1 +51000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 499.4 +51000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 351.8 +51000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 14.3 +51000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.3 +51000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 14.3 +51000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.3 +51000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 174.6 +51000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 268.9 +51000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 77.7 +51000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 32.8 +51000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.2 +51000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 1.2 +51000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 3.2 +51000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 1.2 +51000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 1.1 +51000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 19.7 +51000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 19.6 +51000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.7 +51000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.8 +51000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 305.7 +51000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 299.2 +51000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 106.9 +51000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 121.9 +51000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 20.3 +51000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 17.2 +51000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 13.5 +51000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 20.3 +51000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 17.2 +51000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 13.5 +51000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 126.1 +51000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2580.7 +51000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 104.4 +51000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 31.9 +51000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 40.5 +51000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 26.6 +51000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.7 +51000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.8 +51000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 16.2 +51000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 10.7 +51000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 9.8 +51000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 16.2 +51000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 330.0 +51000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1581.5 +51000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 813.1 +51000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 170.5 +51000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 75.0 +51000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 20.6 +51000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 11.2 +51000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 20.6 +51000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 11.2 +51000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 44.7 +51000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 2508.0 +51000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 4190.1 +51000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 142.2 +51000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 108.9 +51000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 4.3 +51000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 6.0 +51000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 2.1 +51000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +51000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 14.9 +51000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 2.4 +51000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +51000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 14.9 +51000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 2.4 +51000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 40.4 +51000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 56.7 +51000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 103.5 +51000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 26.5 +51000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.3 +51000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 3.3 +51000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.9 +51000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.2 +51000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +51000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 21.2 +51000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +51000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.5 +51000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 3.2 +51000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +51000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 21.2 +51000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +51000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.5 +51000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +51000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 42.3 +51000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.4 +51000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.9 +51000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 42.3 +51000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.4 +51000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 10.4 +51000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 216.4 +51000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +51000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.8 +51000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +51000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.8 +51000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.8 +51000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.5 +51000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 8.5 +51000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 171.9 +51000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 48.8 +51000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 26.9 +51000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 28.8 +51000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 48.8 +51000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 26.9 +51000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 28.8 +51000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 151.6 +51000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 500.2 +51000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 75.3 +51000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 92.0 +51000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 3.6 +51000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.6 +51000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 17.9 +51000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 17.1 +51000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.8 +51000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 46.5 +51000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 12.9 +51000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 298.6 +51000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 132.1 +51000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 275.1 +51000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 6.1 +51000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 132.1 +51000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 275.1 +51000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 6.1 +51000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 35.0 +51000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 125.0 +51000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 201.4 +51000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 14.7 +51000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 93.6 +51000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.5 +51000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 665.1 +51000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1453.8 +51000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3826.2 +51000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 279.4 +51000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1778.2 +51000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 8.7 +51000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 921.3 +51000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 70.2 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 80.3 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 122.9 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 33.3 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 71.2 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 42.8 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 48.4 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 49.0 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.0 +51000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 42.8 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 48.4 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 49.0 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.5 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.0 +51000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +51000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +51000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.3 +51000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1361.4 +51000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 257.2 +51000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 131.0 +51000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 110.7 +51000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 9.9 +51000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 13.7 +51000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.2 +51000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.2 +51000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +51000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 9.9 +51000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 13.7 +51000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.7 +51000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 5.2 +51000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +51000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.5 +51000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.7 +51000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 27.0 +51000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 16.4 +51000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.6 +51000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 16.4 +51000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.6 +51000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.6 +51000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.9 +51000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 27.0 +51000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 3.0 +51000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 1.0 +51000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +51000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 8.7 +51000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 4.0 +51000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 15.7 +51000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +51000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +51000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 8.2 +51000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 3.1 +51000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 15.5 +51000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +51000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.5 +51000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.9 +51000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +51000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +51000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 16047.3 +51000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 797529.5 +51000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 262.9 +51000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 1023.9 +51000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 50886.9 +51000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 16.8 +51000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1488.1 +51000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 10520.0 +51000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 74707.2 +51000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 341.2 +51000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 2411.8 +51000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 17127.3 +51000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 129778.5 +51000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +51000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 5514.7 +51000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 19403.6 +51000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 97005.7 +51000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 245663.7 +51000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +51000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +51000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 58181.4 +51000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 4131.7 +51000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 5602.2 +51000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +51000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +51000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +51000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 912.6 +51000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 244.1 +51000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 12.9 +51000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 28.0 +51000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 14361.9 +51000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 159492.4 +51000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +51000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +51000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 17655.4 +51000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 6577.5 +51000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 9037.7 +51000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +51000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +51000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 1006.8 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 9846.6 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 310.1 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 337.4 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 25.7 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 175.2 +51000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 173.8 +51000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 24155.7 +51000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 36989.8 +51000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 62403.9 +51000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 2916.7 +51000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 5381.1 +51000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 8240.1 +51000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 13901.4 +51000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 649.7 +51000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 175.2 +51000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 25351.5 +51000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 19659.9 +51000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 93.0 +51000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 6.4 +51000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 929.8 +51000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 721.1 +51000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 3.4 +51000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 962.2 +51000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 3286.6 +51000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 1453.1 +51000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 21.8 +51000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 3525.6 +51000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 6900.0 +51000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 626.0 +51000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 19627.9 +51000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 218091.9 +51000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 71081.1 +51000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 23.0 +51000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 719.9 +51000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 7998.8 +51000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 2607.0 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 1.2 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 58.1 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 239.4 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 451.2 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 34.0 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 145.3 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +51000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 34.8 +51000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 34.0 +51000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 145.3 +51000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 1.3 +51000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 34.8 +51000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 4.1 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 11876.1 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 3159.0 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 7049.7 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 9188.9 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1820.7 +51000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 15.7 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 639.4 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2769.0 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 7056.8 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 4662.9 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 68.3 +51000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 44.7 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 1043.9 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 4520.4 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 11520.4 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 7612.2 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 111.5 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 73.1 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 7.1 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 2.5 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.9 +51000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 2.9 +51000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 22.5 +51000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 19.4 +51000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 9.3 +51000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.0 +51000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 11.1 +51000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 1.3 +51000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +51000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +51000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.2 +51000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 115.0 +51000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 36.8 +51000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 4.2 +51000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.8 +51000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 53.3 +51000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.8 +51000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 16.3 +51000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 195.2 +51000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 182.0 +51000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 708.7 +51000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 258.5 +51000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 88.8 +51000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 150.4 +51000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 36.6 +51000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 13.7 +51000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 14.4 +51000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 14.1 +51000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 6232.6 +51000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 15.6 +51000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 62.1 +51000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 35.2 +51000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 13.4 +51000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 65.1 +51000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 38.7 +51000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 34.3 +51000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 2.7 +51000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 4.4 +51000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.7 +51000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 25.8 +51000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 10.8 +51000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.7 +51000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 1.2 +51000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 6.6 +51000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 1.8 +51000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +51000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 4.1 +51000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 8.7 +51000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 4.0 +51000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 1.8 +51000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +51000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 2.1 +51000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 11.4 +51000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 16.2 +51000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 1.6 +51000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 1.9 +51000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.4 +51000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 70.8 +51000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1757.7 +51000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 12365.6 +51000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 29693.5 +51000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 6568.0 +51000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 9398.3 +51000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +51000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +51000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +51000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +51000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +51000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +51000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 870.4 +51000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 6.5 +51000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 406.0 +51000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 361.0 +51000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 135.4 +51000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.1 +51000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.5 +51000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 8.2 +51000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 13.9 +51000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 278.1 +51000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 93.6 +51000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 32.3 +51000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 13.2 +51000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 6.7 +51000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2225.7 +51000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4021.3 +51000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.4 +51000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.5 +51000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 5763.0 +51000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3614.6 +51000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 350.1 +51000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 204.0 +51000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 177.4 +51000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.6 +51000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 82.5 +51000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 5.5 +51000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 12.7 +51000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 171.6 +51000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.6 +51000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 82.5 +51000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 5.5 +51000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 11.9 +51000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 5.8 +51000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +51000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.8 +51000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.9 +51000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.0 +51000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.0 +51000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 913.4 +51000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 852.6 +51000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 104.6 +51000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 113.3 +51000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 16.6 +51000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 91.8 +51000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 19.5 +51000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 9.2 +51000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 16.6 +51000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 89.2 +51000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 19.5 +51000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 4.9 +51000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.6 +51000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.3 +51000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.7 +51000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.6 +51000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.4 +51000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 4.7 +51000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.8 +51000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.0 +51000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.7 +51000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 120.8 +51000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 468.3 +51000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1726.2 +51000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 575.9 +51000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 135.9 +51000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 12.1 +51000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.7 +51000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 135.9 +51000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 12.1 +51000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.7 +51000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.9 +51000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 15248.5 +51000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 9430.4 +51000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2797.6 +51000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 526.1 +51000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 8.9 +51000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.7 +51000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +51000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 8.9 +51000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.7 +51000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +51000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 22.2 +51000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 105.8 +51000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 95.9 +51000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 75.5 +51000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 77.3 +51000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +51000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +51000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +51000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +51000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +51000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +51000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.1 +51000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +51000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +51000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1077.5 +51000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 6840.9 +51000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 378.4 +51000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 122.6 +51000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 11.9 +51000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 4.9 +51000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 23.0 +51000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.6 +51000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 9.3 +51000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.5 +51000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +51000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +51000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +51000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.5 +51000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.3 +51000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.5 +51000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.2 +51000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.6 +51000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.5 +51000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 7.3 +51000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 10.1 +51000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 18.5 +51000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 12.3 +51000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +51000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 12.0 +51000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.6 +51000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 5.1 +51000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.2 +51000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.5 +51000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 11.7 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 426.5 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 294.9 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 1.0 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 6.3 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 6.2 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 52.2 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 46.0 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 20.3 +51000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.8 +51000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.9 +51000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 71.8 +51000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 6.7 +51000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 136.2 +51000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 84.8 +51000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 185.8 +51000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 130.5 +51000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 16.8 +51000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 70.2 +51000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 351.7 +51000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 157.1 +51000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 95.6 +51000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 8.8 +51000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 37.9 +51000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 71.1 +51000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 85.1 +51000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 152.7 +51000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 217.8 +51000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 201.9 +51000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 204.4 +51000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 559.5 +51000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 518.8 +51000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 177.1 +51000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 52.5 +51000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +51000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 14.1 +51000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 162.2 +51000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 210.0 +51000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 97.4 +51000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +51000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 30.3 +51000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 34.0 +51000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.6 +51000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 17.5 +51000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 23.3 +51000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +51000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 22.9 +51000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 27.0 +51000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 49.2 +51000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 15.3 +51000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.7 +51000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.5 +51000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.7 +51000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 26.2 +51000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 22.0 +51000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 7.6 +51000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.4 +51000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 20.8 +51000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 6.4 +51000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.3 +51000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 6.4 +51000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.8 +51000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.6 +51000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.1 +51000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.4 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 56.9 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 134.0 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 71.6 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 1133.5 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 347.7 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.6 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 24.8 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 14.4 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 11.5 +51000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.8 +51000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +51000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.2 +51000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 2.1 +51000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.9 +51000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 156.7 +51000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 390.7 +51000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 650.0 +51000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 262.5 +51000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 81.6 +51000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 54.5 +51000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 27.7 +51000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 2.4 +51000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.3 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.6 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.5 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 5.6 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 96.6 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 98.2 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 159.2 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 161.9 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 238.0 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 206.9 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 119.2 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 27.9 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 15.3 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.3 +51000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.5 +51000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.9 +51000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 10.4 +51000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 21.5 +51000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 95.9 +51000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 198.6 +51000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 105.9 +51000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 82.2 +51000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 370.8 +51000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1385.6 +51000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 1013.0 +51000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 268.3 +51000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 8.5 +51000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 9.9 +51000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.3 +51000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 3.8 +51000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.2 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 8.7 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 14.9 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 85.5 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 3.1 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 27.4 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 39.5 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 4.8 +51000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 173.8 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 103.6 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 19.2 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 17.5 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 12.7 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 21.9 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 36.5 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 11.6 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 4.1 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 5.2 +51000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 1.0 +51000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +51000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 15.8 +51000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +51000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 8.4 +51000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 81.5 +51000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 307.0 +51000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 314.0 +51000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 193.4 +51000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 8.3 +51000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 2.4 +51000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +51000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +51000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.5 +51000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 3.6 +51000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 27.9 +51000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 285.2 +51000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 477.7 +51000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 54.6 +51000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 3.3 +51000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.7 +51000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 71.7 +51000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 152.2 +51000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 86.1 +51000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 41.8 +51000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 13.2 +51000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 67.0 +51000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 16.3 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.9 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.5 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 9.7 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 110.0 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 26.6 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 41.7 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 15.7 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 40.9 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 3.1 +51000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.4 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 5.6 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 131.0 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 145.9 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 289.2 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1654.6 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 849.9 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 44.0 +51000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 58.0 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.3 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 66.3 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 76.1 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 107.6 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 462.8 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 1170.3 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 1117.2 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 819.7 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 61.9 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 30.2 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 6.3 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 37.0 +51000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.3 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 67.4 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 134.7 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 71.9 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1344.0 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 4748.1 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 3159.3 +51000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 17.2 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 13.9 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 400.9 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 906.2 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 784.7 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 397.4 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 156.7 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 32.4 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 56.4 +51000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +51000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 3.6 +51000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 592.9 +51000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1314.6 +51000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2572.3 +51000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 1017.2 +51000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 5585.5 +51000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 3671.9 +51000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 92.5 +51000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +51000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 12.5 +51000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 21.3 +51000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 51.0 +51000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 16.7 +51000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.6 +51000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 13.2 +51000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.3 +51000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 25.2 +51000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 24.1 +51000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 17.2 +51000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 19.9 +51000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 4.4 +51000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 2.1 +51000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 13.6 +51000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 4.9 +51000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.8 +51000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.4 +51000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 3.7 +51000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 10.5 +51000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 1.0 +51000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 10.2 +51000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 10.0 +51000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 69.6 +51000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 62.2 +51000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 150.1 +51000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 27.4 +51000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +51000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.8 +51000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.6 +51000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 17.3 +51000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 242.6 +51000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 301.3 +51000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 71.3 +51000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 506.4 +51000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 180.0 +51000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.2 +51000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +51000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +51000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.9 +51000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 10.3 +51000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 382.4 +51000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 385.2 +51000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 138.3 +51000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 22.5 +51000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 28.7 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 6.4 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 39.2 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 94.4 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 63.7 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 61.7 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 227.0 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 254.9 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 68.5 +51000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.2 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 44.8 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 8.5 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 5.5 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 9.5 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 30.1 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 10.9 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 84.9 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 264.2 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 375.8 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 117.3 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 12.0 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 2.0 +51000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 7.2 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 36.0 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 10.8 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 49.9 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 19.0 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.6 +51000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +51000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 159.6 +51000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 490.8 +51000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 460.2 +51000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 118.0 +51000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 864.9 +51000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 3326.7 +51000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +51000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +51000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +51000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +51000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +51000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +51000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 48.4 +51000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 84.0 +51000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 134.9 +51000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 224.6 +51000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 6.9 +51000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 9.6 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 2.3 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +51000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +51000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 1.1 +51000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 9.4 +51000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 11.8 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 9.7 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 272.4 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 3780.6 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1832.5 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 409.3 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 672.2 +51000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 143.7 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 1.1 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 66.5 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 1659.9 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 28.8 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 16.6 +51000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 25.3 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.4 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 6.2 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 65.5 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 244.2 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 1078.9 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 341.6 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 206.2 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 174.9 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 39.6 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 6.5 +51000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.8 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 38.8 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 50.5 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 93.0 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 45.2 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.8 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 47.6 +51000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 39.8 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 1.1 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 9.6 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.1 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.2 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 8.0 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 2.2 +51000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.4 +51000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.7 +51000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 3.0 +51000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +51000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 686.1 +51000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 1845.3 +51000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1054.4 +51000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 1669.6 +51000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 1471.5 +51000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 2451.8 +51000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 2113.8 +51000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 1093.7 +51000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +51000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 115.3 +51000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1057.5 +51000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 1261.0 +51000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 65.1 +51000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 1.3 +51000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 27.5 +51000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 10.1 +51000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 8.6 +51000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.4 +51000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 2.6 +51000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 13.7 +51000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 6.3 +51000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 3.9 +51000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 10.5 +51000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 64.4 +51000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 124.3 +51000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 135.1 +51000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 36.6 +51000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.3 +51000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +51000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +51000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 77.8 +51000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 367.9 +51000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 72.7 +51000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 3.3 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.2 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 2.4 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 8.8 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 4.6 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 2.8 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 22.0 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 27.5 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 68.5 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 69.3 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 29.0 +51000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +51000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +51000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +51000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 5.5 +51000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 12.6 +51000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 5.0 +51000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 19.7 +51000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 92.8 +51000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 48.7 +51000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 13.8 +51000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.0 +51000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +51000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1054.7 +51000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1053.1 +51000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 811.7 +51000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1278.0 +51000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2115.4 +51000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 288.9 +51000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1066.1 +51000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1297.4 +51000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 442.8 +51000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 246.2 +51000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 127.9 +51000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +51000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +51000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +51000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +51000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +51000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +51000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 181.6 +51000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 436.5 +51000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 109.5 +51000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 87.1 +51000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 151.5 +51000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 42.9 +51000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 290.7 +51000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 323.5 +51000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 142.7 +51000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 35.7 +51000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 18.1 +51000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +51000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +51000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +51000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +51000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +51000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 6.2 +51000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 15.1 +51000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.0 +51000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.1 +51000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 116.0 +51000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 80.3 +51000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 514.5 +51000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 670.1 +51000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 76.8 +51000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 69.0 +51000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 19.7 +51000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +51000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +51000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +51000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +51000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +51000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +51000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 67.0 +51000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 371.4 +51000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 540.7 +51000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 335.3 +51000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 929.6 +51000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 675.2 +51000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 296.4 +51000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 15.4 +51000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.3 +51000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +51000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 11.7 +51000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 99.9 +51000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 114.7 +51000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 143.2 +51000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 136.9 +51000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 17.1 +51000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 57.6 +51000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 16.1 +51000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 53.5 +51000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 43.3 +51000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 6.6 +51000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.1 +51000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.6 +51000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.5 +51000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.1 +51000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 10.3 +51000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 14.9 +51000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 4.7 +51000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 22.9 +51000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 26.4 +51000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 7.1 +51000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.9 +51000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +51000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +51000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.4 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.6 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.9 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 43.5 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 302.0 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 432.8 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 37.4 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 15.3 +51000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.4 +51000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 28.8 +51000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +51000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.4 +51000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 1.1 +51000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.5 +51000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 30.2 +51000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 55.0 +51000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 162.3 +51000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 54.5 +51000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 63.6 +51000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 6.7 +51000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.4 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.6 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 16.5 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 32.6 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 84.3 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 149.0 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 158.7 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 49.7 +51000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 24.6 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.6 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.3 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 2.6 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.4 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 5.5 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 2.8 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 4.1 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 2.6 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 1.1 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.5 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.6 +51000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +51000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4059.6 +51000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 15143.1 +51000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 22807.9 +51000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5071.0 +51000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 9987.4 +51000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 19292.4 +51000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 14840.8 +51000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 24819.7 +51000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 16860.1 +51000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 37717.8 +51000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 33858.0 +51000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 16.1 +51000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 15.6 +51000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 148.7 +51000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +51000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 157.9 +51000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 63.7 +51000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1411.0 +51000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5218.9 +51000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 19334.5 +51000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1272.0 +51000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 17.7 +51000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 12.7 +51000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.5 +51000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 32.4 +51000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 285.1 +51000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +51000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 6836.0 +51000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 25373.0 +51000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 10189.8 +51000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 171.9 +51000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 209.2 +51000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 102.6 +51000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 227.1 +51000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 124.3 +51000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 23.0 +51000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 201.3 +51000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 169.6 +51000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1389.8 +51000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2285.4 +51000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1685.8 +51000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 66.5 +51000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 126.1 +51000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 10.3 +51000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 36.1 +51000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 22.1 +51000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 225.1 +51000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.4 +51000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 2.3 +51000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 2.5 +51000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 3.5 +51000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 13.0 +51000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 20.4 +51000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 37.2 +51000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 34.6 +51000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 146.1 +51000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 53.8 +51000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 9.1 +51000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 2.3 +51000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.5 +51000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.8 +51000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.3 +51000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 2.2 +51000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 71.2 +51000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 292.6 +51000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 5.2 +51000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 13.4 +51000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 4.2 +51000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +51000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 4.2 +51000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/VI.POP b/NONROAD/NR08a/DATA/POP/VI.POP new file mode 100644 index 0000000..0e89391 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/VI.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 78000 VI Virgin Islands 46,652.4 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +78000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +78000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +78000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 183.6 +78000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 90.4 +78000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 92.8 +78000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 803.1 +78000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 59.3 +78000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 123.2 +78000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.0 +78000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.0 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.1 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 2.5 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 4.8 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 37.7 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 0.4 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 0.9 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +78000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 0.4 +78000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 0.4 +78000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +78000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 0.9 +78000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +78000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 0.4 +78000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 0.4 +78000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 2.8 +78000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.1 +78000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 1.0 +78000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.2 +78000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.2 +78000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.2 +78000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.2 +78000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 83.5 +78000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.2 +78000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 7.9 +78000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 39.8 +78000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 12.3 +78000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 2.2 +78000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 3.0 +78000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 0.5 +78000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 1.4 +78000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.2 +78000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.1 +78000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.1 +78000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.2 +78000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.1 +78000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.1 +78000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 7.5 +78000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 22.0 +78000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 18.6 +78000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 9.3 +78000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 6.6 +78000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 0.3 +78000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.0 +78000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 0.3 +78000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.0 +78000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 3.3 +78000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 5.0 +78000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 1.5 +78000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 0.6 +78000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.1 +78000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.0 +78000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.1 +78000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.0 +78000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.0 +78000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 0.4 +78000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 0.4 +78000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.0 +78000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.0 +78000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 5.7 +78000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 5.6 +78000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 2.0 +78000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 2.3 +78000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 0.4 +78000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 0.3 +78000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 0.3 +78000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 0.4 +78000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 0.3 +78000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 0.3 +78000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 2.4 +78000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 48.3 +78000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 2.0 +78000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 0.6 +78000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 0.8 +78000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 0.5 +78000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.2 +78000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.2 +78000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 0.3 +78000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.2 +78000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.2 +78000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 0.3 +78000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 6.2 +78000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 29.6 +78000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 15.2 +78000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 3.2 +78000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 1.4 +78000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 0.4 +78000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.2 +78000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 0.4 +78000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.2 +78000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 0.8 +78000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 46.9 +78000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 78.4 +78000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 2.7 +78000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 2.0 +78000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.1 +78000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.1 +78000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.0 +78000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +78000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 0.3 +78000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.0 +78000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +78000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 0.3 +78000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.0 +78000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 0.8 +78000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 1.1 +78000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 1.9 +78000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 0.5 +78000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.1 +78000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.1 +78000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.0 +78000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.1 +78000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +78000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 0.4 +78000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +78000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.0 +78000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.1 +78000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +78000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 0.4 +78000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +78000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.0 +78000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.0 +78000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 0.8 +78000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.0 +78000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.0 +78000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 0.8 +78000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.0 +78000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.2 +78000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 4.0 +78000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.0 +78000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.1 +78000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +78000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.0 +78000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.1 +78000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +78000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.2 +78000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 3.2 +78000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 0.9 +78000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 0.5 +78000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 0.5 +78000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 0.9 +78000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 0.5 +78000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 0.5 +78000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 2.8 +78000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 9.4 +78000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 1.4 +78000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 1.7 +78000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.1 +78000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +78000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 0.3 +78000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 0.3 +78000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.0 +78000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 0.1 +78000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.0 +78000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 0.6 +78000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 0.3 +78000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 0.6 +78000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.0 +78000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 0.3 +78000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 0.6 +78000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.0 +78000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 0.1 +78000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 0.3 +78000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 0.4 +78000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.0 +78000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 0.2 +78000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +78000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1.4 +78000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 3.0 +78000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 7.9 +78000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 0.6 +78000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 3.7 +78000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.0 +78000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1.9 +78000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 0.2 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 0.3 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 0.1 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.0 +78000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 0.1 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 0.1 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 0.1 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.0 +78000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +78000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +78000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.0 +78000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 2.8 +78000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 0.5 +78000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 0.3 +78000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 0.2 +78000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.0 +78000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.0 +78000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.0 +78000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.0 +78000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +78000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.0 +78000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.0 +78000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.0 +78000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.0 +78000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +78000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +78000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +78000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 0.1 +78000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 0.0 +78000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +78000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 0.0 +78000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +78000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +78000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.0 +78000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 0.4 +78000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.0 +78000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.0 +78000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +78000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.0 +78000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.0 +78000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 0.0 +78000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +78000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +78000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.0 +78000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.0 +78000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 0.0 +78000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +78000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +78000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.0 +78000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +78000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +78000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 268.0 +78000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 13316.9 +78000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 4.4 +78000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 12.7 +78000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 631.2 +78000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.2 +78000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 24.8 +78000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 175.7 +78000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 1247.4 +78000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 4.2 +78000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 29.9 +78000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 212.5 +78000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 2167.0 +78000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +78000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 68.4 +78000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 240.7 +78000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 1619.8 +78000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 4102.0 +78000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +78000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +78000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 721.7 +78000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 51.3 +78000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 93.5 +78000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +78000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +78000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +78000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 11.3 +78000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 3.0 +78000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.2 +78000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.3 +78000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 239.8 +78000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 2663.2 +78000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +78000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +78000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 219.0 +78000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 81.6 +78000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 150.9 +78000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +78000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +78000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 12.5 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 122.1 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 3.8 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 4.2 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.3 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 2.2 +78000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 2.2 +78000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 0.0 +78000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 0.0 +78000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 0.0 +78000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 0.0 +78000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 0.0 +78000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 0.0 +78000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 0.0 +78000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 0.0 +78000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 2.9 +78000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 423.3 +78000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 328.3 +78000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 1.6 +78000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.1 +78000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 11.5 +78000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 8.9 +78000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.0 +78000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 11.9 +78000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 40.8 +78000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 18.0 +78000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.3 +78000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 43.7 +78000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 85.6 +78000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 10.5 +78000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 327.7 +78000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 3641.6 +78000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 1186.9 +78000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.3 +78000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 8.9 +78000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 99.2 +78000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 32.3 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 0.7 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 3.0 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 5.6 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.4 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 1.8 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +78000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.4 +78000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.4 +78000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 1.8 +78000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +78000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.4 +78000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 147.3 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 39.2 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 87.4 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 114.0 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 22.6 +78000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.2 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 10.7 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 46.2 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 117.8 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 77.9 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 1.1 +78000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 0.7 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 12.9 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 56.1 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 142.9 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 94.4 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 1.4 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 0.9 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.1 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.0 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +78000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.0 +78000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 0.0 +78000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 0.0 +78000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 0.0 +78000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.0 +78000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 0.0 +78000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.0 +78000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +78000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +78000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +78000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 0.0 +78000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 0.0 +78000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.0 +78000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.0 +78000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 0.0 +78000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.0 +78000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 0.0 +78000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 0.0 +78000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 0.2 +78000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 0.1 +78000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 0.0 +78000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 0.0 +78000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1.4 +78000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 0.0 +78000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 0.0 +78000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 0.0 +78000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 0.0 +78000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.0 +78000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.0 +78000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.0 +78000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.0 +78000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.0 +78000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 0.7 +78000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 17.0 +78000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 119.9 +78000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 287.8 +78000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 63.7 +78000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 91.1 +78000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +78000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +78000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +78000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +78000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +78000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +78000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 8.4 +78000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.1 +78000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 3.9 +78000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 3.5 +78000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 1.3 +78000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.0 +78000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.0 +78000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 0.1 +78000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 0.1 +78000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 2.7 +78000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 0.9 +78000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 0.3 +78000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 0.1 +78000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.1 +78000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 21.6 +78000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 39.0 +78000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.0 +78000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.0 +78000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 55.9 +78000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 35.0 +78000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 3.4 +78000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 2.0 +78000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 1.7 +78000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.0 +78000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 0.8 +78000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.1 +78000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 0.1 +78000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 1.7 +78000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.0 +78000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 0.8 +78000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.1 +78000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 0.1 +78000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.1 +78000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +78000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.0 +78000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.0 +78000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.0 +78000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.0 +78000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 8.9 +78000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 8.3 +78000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 1.0 +78000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 1.1 +78000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 0.2 +78000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 0.9 +78000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 0.2 +78000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 0.1 +78000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 0.2 +78000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 0.9 +78000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 0.2 +78000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.0 +78000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.0 +78000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.0 +78000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.0 +78000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 1.2 +78000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 4.5 +78000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 16.7 +78000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 5.6 +78000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 1.3 +78000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 0.1 +78000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.0 +78000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 1.3 +78000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 0.1 +78000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.0 +78000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.0 +78000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 147.8 +78000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 91.4 +78000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 27.1 +78000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 5.1 +78000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 0.1 +78000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.0 +78000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +78000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 0.1 +78000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.0 +78000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +78000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 0.2 +78000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 1.0 +78000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 0.9 +78000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 0.7 +78000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 0.7 +78000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.0 +78000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +78000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.0 +78000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +78000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.0 +78000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.0 +78000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.0 +78000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +78000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +78000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 0.0 +78000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 0.0 +78000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 0.0 +78000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 0.0 +78000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.0 +78000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.0 +78000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 0.7 +78000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.1 +78000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.3 +78000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +78000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +78000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +78000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +78000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +78000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +78000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +78000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +78000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +78000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +78000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +78000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.0 +78000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.0 +78000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.0 +78000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +78000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 0.2 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 6.4 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 4.4 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.0 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.1 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.1 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 0.8 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 0.7 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 0.3 +78000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.0 +78000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.1 +78000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 1.3 +78000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.1 +78000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 2.5 +78000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 1.6 +78000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 3.5 +78000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 2.4 +78000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 0.3 +78000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 1.3 +78000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 6.6 +78000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 2.9 +78000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 1.8 +78000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.2 +78000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 0.7 +78000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 1.3 +78000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 1.6 +78000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 2.9 +78000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 4.1 +78000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 3.8 +78000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 3.8 +78000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 10.5 +78000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 9.7 +78000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 3.3 +78000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 1.0 +78000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +78000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 0.3 +78000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 3.0 +78000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 3.9 +78000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 1.8 +78000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +78000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 0.6 +78000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 0.6 +78000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.0 +78000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 0.3 +78000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 0.4 +78000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +78000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 0.4 +78000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 0.5 +78000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 0.9 +78000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 0.3 +78000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 0.5 +78000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 0.4 +78000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.1 +78000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 0.4 +78000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.1 +78000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.1 +78000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.1 +78000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +78000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 1.1 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 2.5 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 1.3 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 21.2 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 6.5 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 0.5 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 0.3 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.2 +78000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.1 +78000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +78000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +78000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.0 +78000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.1 +78000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 2.9 +78000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 7.3 +78000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 12.2 +78000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 4.9 +78000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 1.5 +78000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 1.0 +78000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 0.5 +78000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.0 +78000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.1 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 1.8 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 1.8 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 3.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 3.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 4.5 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 3.9 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 2.2 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 0.5 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 0.3 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +78000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +78000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.0 +78000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.2 +78000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 0.4 +78000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 1.8 +78000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 3.7 +78000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 2.0 +78000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 1.5 +78000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 6.9 +78000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 25.9 +78000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 18.9 +78000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 5.0 +78000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.2 +78000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.2 +78000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +78000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.1 +78000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.2 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 0.3 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 1.6 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.1 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 0.5 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 0.7 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.1 +78000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 3.3 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 1.9 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 0.4 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 0.3 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 0.2 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 0.4 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 0.7 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.2 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.1 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.1 +78000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.0 +78000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +78000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 0.3 +78000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +78000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.2 +78000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 1.5 +78000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 5.7 +78000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 5.9 +78000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 3.6 +78000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.2 +78000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.0 +78000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +78000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +78000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +78000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.1 +78000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 0.5 +78000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 5.3 +78000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 8.9 +78000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 1.0 +78000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.1 +78000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.0 +78000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 1.3 +78000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 2.8 +78000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 1.6 +78000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 0.8 +78000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 0.2 +78000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 1.3 +78000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 0.3 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.0 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.0 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.2 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 2.1 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 0.5 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 0.8 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 0.3 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 0.8 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.1 +78000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.1 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 2.5 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 2.7 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 5.4 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 30.9 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 15.9 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 0.8 +78000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 1.1 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.0 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 1.2 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 1.4 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 2.0 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 8.7 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 21.9 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 20.9 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 15.3 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 1.2 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 0.6 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.1 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 0.7 +78000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.0 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 1.3 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 2.5 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 1.3 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 25.1 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 88.8 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 59.1 +78000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 0.3 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 0.3 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 7.5 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 16.9 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 14.7 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 7.4 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 2.9 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 0.6 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 1.1 +78000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +78000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.1 +78000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 11.1 +78000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 24.6 +78000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 48.1 +78000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 19.0 +78000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 104.5 +78000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 68.7 +78000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 1.7 +78000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +78000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.2 +78000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 0.4 +78000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 1.0 +78000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 0.3 +78000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.0 +78000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 0.2 +78000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +78000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 0.5 +78000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 0.4 +78000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 0.3 +78000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 0.4 +78000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.1 +78000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.0 +78000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 0.3 +78000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.1 +78000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.0 +78000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +78000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.1 +78000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.2 +78000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.0 +78000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.2 +78000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.2 +78000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 1.3 +78000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 1.2 +78000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 2.8 +78000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 0.5 +78000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +78000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.0 +78000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.0 +78000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 0.0 +78000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 0.5 +78000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 0.6 +78000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 0.1 +78000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 1.1 +78000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 0.4 +78000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 0.8 +78000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 0.8 +78000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 0.3 +78000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 0.0 +78000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 0.1 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.0 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 0.1 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 0.2 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 0.1 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 0.1 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 0.5 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 0.5 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 0.1 +78000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 0.1 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 0.1 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 0.2 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 0.5 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 0.8 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 0.2 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.0 +78000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 0.1 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 0.1 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.0 +78000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +78000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 2.4 +78000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 7.3 +78000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 6.9 +78000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 1.8 +78000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 12.9 +78000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 49.7 +78000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 0.1 +78000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 0.2 +78000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 0.3 +78000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 0.5 +78000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.0 +78000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.1 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.0 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +78000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +78000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +78000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.0 +78000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.0 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.1 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 3.4 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 46.9 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 22.7 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 5.1 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 8.3 +78000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 1.8 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 0.8 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 20.6 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.4 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.2 +78000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.3 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.1 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 0.8 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 3.0 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 13.4 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 4.2 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 2.6 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 2.2 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 0.5 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.1 +78000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 0.5 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 0.6 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 1.2 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 0.6 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 0.6 +78000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 0.5 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.1 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.1 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.0 +78000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +78000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.0 +78000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.0 +78000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +78000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 0.2 +78000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 0.4 +78000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 0.2 +78000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 0.4 +78000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 0.3 +78000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 0.6 +78000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 0.5 +78000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 0.3 +78000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +78000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 0.0 +78000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 0.2 +78000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 0.3 +78000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 0.0 +78000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.0 +78000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 0.0 +78000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 0.0 +78000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 0.0 +78000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.0 +78000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 0.0 +78000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 0.0 +78000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +78000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +78000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +78000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 0.0 +78000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 0.1 +78000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 0.0 +78000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 0.0 +78000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.0 +78000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +78000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 10.2 +78000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 10.2 +78000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 7.9 +78000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 12.4 +78000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 20.5 +78000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 2.8 +78000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 10.3 +78000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 12.6 +78000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 4.3 +78000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 2.4 +78000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 1.2 +78000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +78000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +78000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +78000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +78000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 1.8 +78000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 4.2 +78000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 1.1 +78000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 0.8 +78000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 1.5 +78000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 0.4 +78000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 2.8 +78000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 3.1 +78000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 1.4 +78000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 0.3 +78000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 0.2 +78000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +78000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +78000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.1 +78000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 0.1 +78000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.0 +78000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.0 +78000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 1.1 +78000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 0.8 +78000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 5.0 +78000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 6.5 +78000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 0.7 +78000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 0.7 +78000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 0.2 +78000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +78000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +78000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +78000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +78000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +78000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +78000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 0.6 +78000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 3.6 +78000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 5.2 +78000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 3.3 +78000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 9.0 +78000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 6.5 +78000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 2.9 +78000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 0.1 +78000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +78000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +78000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 0.1 +78000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 1.0 +78000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 1.1 +78000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 1.4 +78000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 1.3 +78000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 0.2 +78000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 0.6 +78000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 0.2 +78000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 0.5 +78000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 0.4 +78000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.1 +78000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 0.1 +78000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 0.1 +78000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 0.2 +78000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 0.3 +78000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.1 +78000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +78000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +78000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.0 +78000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 0.9 +78000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 1.0 +78000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1.8 +78000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 5.3 +78000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1.8 +78000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 2.1 +78000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.2 +78000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +78000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +78000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +78000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 92.8 +78000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 346.1 +78000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 521.2 +78000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 115.9 +78000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 228.2 +78000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 440.9 +78000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 339.2 +78000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 567.2 +78000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 385.3 +78000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 862.0 +78000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 773.7 +78000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 0.4 +78000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 0.4 +78000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 3.4 +78000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +78000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 3.6 +78000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 1.5 +78000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 32.2 +78000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 119.3 +78000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 441.8 +78000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 29.1 +78000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 0.4 +78000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 0.3 +78000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.2 +78000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 0.7 +78000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 6.5 +78000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +78000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 156.2 +78000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 579.8 +78000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 232.9 +78000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 3.9 +78000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 4.8 +78000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 2.3 +78000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 5.2 +78000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 2.8 +78000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 0.5 +78000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 4.6 +78000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 3.9 +78000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 31.8 +78000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 52.2 +78000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 38.5 +78000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 1.5 +78000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 2.9 +78000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 0.2 +78000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 0.8 +78000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 0.5 +78000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 5.1 +78000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.0 +78000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +78000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +78000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.0 +78000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/VT.POP b/NONROAD/NR08a/DATA/POP/VT.POP new file mode 100644 index 0000000..179d1ab --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/VT.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 50000 VT Vermont 333,124.7 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +50000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 112.8 +50000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 66.6 +50000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 71.5 +50000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 5696.7 +50000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 5750.1 +50000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 2580.9 +50000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 9092.4 +50000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 3736.9 +50000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 973.5 +50000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2783.4 +50000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 1370.9 +50000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 1406.8 +50000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 12174.8 +50000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 711.5 +50000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 699.2 +50000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.2 +50000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.4 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 14.4 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 27.2 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 214.2 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.2 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.3 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +50000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.0 +50000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 2.2 +50000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.1 +50000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 5.3 +50000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +50000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 2.0 +50000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.2 +50000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 8.6 +50000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.4 +50000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 3.1 +50000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.5 +50000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.6 +50000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.5 +50000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.6 +50000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 258.6 +50000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.6 +50000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 24.3 +50000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 123.3 +50000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 38.0 +50000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 6.7 +50000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 9.3 +50000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 1.7 +50000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 4.3 +50000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.5 +50000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.4 +50000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.2 +50000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.5 +50000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.4 +50000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.2 +50000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 23.3 +50000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 68.1 +50000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 57.7 +50000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 28.9 +50000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 20.4 +50000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 0.8 +50000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +50000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 0.8 +50000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +50000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 10.1 +50000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 15.6 +50000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 4.5 +50000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 1.9 +50000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +50000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +50000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +50000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +50000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +50000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.1 +50000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.1 +50000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.0 +50000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.0 +50000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 17.7 +50000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 17.3 +50000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 6.2 +50000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 7.1 +50000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.2 +50000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.0 +50000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 0.8 +50000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.2 +50000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.0 +50000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 0.8 +50000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 7.3 +50000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 149.4 +50000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 6.0 +50000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 1.8 +50000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 2.3 +50000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 1.5 +50000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.6 +50000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.6 +50000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 0.9 +50000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.6 +50000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.6 +50000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 0.9 +50000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 19.1 +50000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 91.5 +50000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 47.1 +50000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 9.9 +50000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 4.3 +50000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.2 +50000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.7 +50000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.2 +50000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.7 +50000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 2.6 +50000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 145.2 +50000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 242.6 +50000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 8.2 +50000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 6.3 +50000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.2 +50000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.3 +50000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.1 +50000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +50000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 0.9 +50000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.1 +50000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +50000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 0.9 +50000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.1 +50000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 2.3 +50000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 3.3 +50000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 6.0 +50000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 1.5 +50000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +50000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +50000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +50000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +50000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +50000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.2 +50000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +50000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.1 +50000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +50000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +50000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.2 +50000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +50000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.1 +50000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +50000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.4 +50000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +50000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +50000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.4 +50000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +50000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.6 +50000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 12.5 +50000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.0 +50000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.2 +50000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +50000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.0 +50000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.2 +50000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +50000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.5 +50000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 10.0 +50000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 2.8 +50000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 1.6 +50000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 1.7 +50000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 2.8 +50000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 1.6 +50000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 1.7 +50000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 8.8 +50000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 29.0 +50000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 4.4 +50000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 5.3 +50000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.2 +50000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +50000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.0 +50000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.0 +50000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.0 +50000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 6.8 +50000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 1.9 +50000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 43.8 +50000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 19.4 +50000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 40.4 +50000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.9 +50000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 19.4 +50000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 40.4 +50000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.9 +50000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 5.1 +50000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 18.3 +50000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 29.5 +50000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 2.2 +50000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 13.7 +50000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +50000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 97.6 +50000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 213.3 +50000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 561.3 +50000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 41.0 +50000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 260.9 +50000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 1.3 +50000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 135.2 +50000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 10.3 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 11.8 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 18.0 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 4.9 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 10.4 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 6.3 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 7.1 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 7.2 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.1 +50000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 6.3 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 7.1 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 7.2 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.1 +50000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +50000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +50000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.5 +50000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 199.7 +50000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 37.7 +50000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 19.2 +50000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 16.2 +50000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.5 +50000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.0 +50000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.3 +50000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.8 +50000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +50000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 1.5 +50000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 2.0 +50000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.2 +50000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.8 +50000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +50000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +50000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.1 +50000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 4.0 +50000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 2.4 +50000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +50000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 2.4 +50000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +50000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +50000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +50000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 2.3 +50000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.3 +50000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +50000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +50000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 1.3 +50000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.6 +50000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 2.3 +50000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +50000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +50000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.2 +50000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.5 +50000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 2.3 +50000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +50000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +50000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.1 +50000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +50000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +50000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1599.0 +50000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 79468.4 +50000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 26.2 +50000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 41.7 +50000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 2072.3 +50000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.7 +50000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 148.3 +50000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 1048.2 +50000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 7444.1 +50000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 13.9 +50000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 98.2 +50000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 697.5 +50000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 12931.5 +50000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +50000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 224.6 +50000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 790.2 +50000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 9666.0 +50000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 24478.7 +50000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +50000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +50000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 2369.3 +50000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 168.3 +50000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 558.2 +50000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +50000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +50000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +50000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 37.2 +50000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 9.9 +50000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.5 +50000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 1.1 +50000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1431.1 +50000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 15892.3 +50000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +50000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +50000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 719.0 +50000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 267.9 +50000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 900.5 +50000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +50000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +50000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 41.0 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 401.0 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 12.6 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 13.7 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 1.0 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 7.1 +50000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 7.1 +50000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 4371.9 +50000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 6694.8 +50000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 11294.5 +50000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 527.9 +50000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 323.5 +50000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 495.3 +50000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 835.7 +50000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 39.1 +50000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 17.5 +50000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 2526.1 +50000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 1959.0 +50000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 9.3 +50000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.3 +50000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 37.9 +50000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 29.4 +50000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +50000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 39.2 +50000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 133.8 +50000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 59.2 +50000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.9 +50000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 143.6 +50000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 281.0 +50000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 62.4 +50000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 1955.8 +50000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 21731.4 +50000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 7082.8 +50000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.9 +50000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 29.3 +50000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 325.7 +50000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 106.2 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 2.4 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 9.7 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 18.4 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.4 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 5.9 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +50000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.4 +50000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 1.4 +50000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 5.9 +50000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +50000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 1.4 +50000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.2 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 483.6 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 128.6 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 287.1 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 374.2 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 74.1 +50000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.6 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 63.7 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 275.9 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 703.2 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 464.6 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 6.8 +50000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 4.5 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 42.5 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 184.1 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 469.1 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 310.0 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 4.5 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 3.0 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.3 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.1 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +50000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +50000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 3.9 +50000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 3.4 +50000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 1.6 +50000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.2 +50000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 1.9 +50000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.2 +50000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +50000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +50000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +50000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 19.9 +50000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 6.4 +50000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 0.7 +50000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.1 +50000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 9.2 +50000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.1 +50000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 2.8 +50000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 33.8 +50000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 31.5 +50000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 122.8 +50000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 44.8 +50000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 15.4 +50000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 26.1 +50000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 6.3 +50000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 2.4 +50000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 2.5 +50000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 2.4 +50000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1080.1 +50000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 2.7 +50000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 10.8 +50000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 6.1 +50000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 2.3 +50000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 11.3 +50000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 6.7 +50000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 5.9 +50000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.5 +50000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 0.8 +50000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.1 +50000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 4.5 +50000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 1.9 +50000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.1 +50000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.2 +50000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.1 +50000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.3 +50000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +50000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 0.7 +50000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 1.5 +50000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 0.7 +50000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.3 +50000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +50000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.4 +50000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 2.0 +50000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 2.8 +50000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.3 +50000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.3 +50000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +50000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 8.1 +50000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 200.1 +50000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 1407.4 +50000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 3379.7 +50000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 747.6 +50000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1069.7 +50000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +50000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +50000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +50000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +50000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +50000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +50000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 99.1 +50000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.7 +50000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 46.2 +50000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 41.1 +50000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 15.4 +50000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.4 +50000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +50000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 0.9 +50000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 1.6 +50000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 31.7 +50000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 10.7 +50000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 3.7 +50000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 1.5 +50000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.8 +50000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 253.3 +50000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 457.7 +50000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.3 +50000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +50000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 655.9 +50000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 411.4 +50000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 39.8 +50000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 23.2 +50000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 20.2 +50000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.2 +50000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 9.4 +50000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.6 +50000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 1.4 +50000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 19.5 +50000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.2 +50000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 9.4 +50000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.6 +50000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 1.4 +50000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.7 +50000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +50000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.1 +50000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.1 +50000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.1 +50000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.1 +50000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 104.0 +50000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 97.0 +50000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 11.9 +50000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 12.9 +50000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 1.9 +50000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 10.4 +50000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 2.2 +50000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.0 +50000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 1.9 +50000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 10.1 +50000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 2.2 +50000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.6 +50000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.3 +50000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.5 +50000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.3 +50000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.2 +50000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.0 +50000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.5 +50000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.1 +50000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.2 +50000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +50000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 13.7 +50000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 53.3 +50000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 196.5 +50000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 65.5 +50000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 15.5 +50000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 1.4 +50000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.3 +50000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 15.5 +50000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 1.4 +50000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.3 +50000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.3 +50000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 1735.6 +50000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1073.3 +50000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 318.4 +50000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 59.9 +50000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.0 +50000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +50000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +50000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.0 +50000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +50000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +50000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 2.5 +50000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 12.0 +50000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 10.9 +50000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 8.6 +50000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 8.8 +50000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +50000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +50000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +50000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +50000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +50000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +50000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +50000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +50000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +50000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 209.2 +50000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 1328.1 +50000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 73.5 +50000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 23.8 +50000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 2.3 +50000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.0 +50000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 0.5 +50000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.1 +50000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.2 +50000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +50000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +50000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +50000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +50000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +50000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +50000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +50000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +50000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +50000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +50000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +50000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.0 +50000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 0.0 +50000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.0 +50000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +50000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 1.0 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 36.2 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 25.0 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.5 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.5 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 4.4 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 3.9 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 1.7 +50000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +50000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +50000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 4.2 +50000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.4 +50000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 7.9 +50000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 4.9 +50000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 10.8 +50000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 7.6 +50000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.0 +50000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 4.1 +50000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 20.4 +50000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 9.1 +50000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 5.5 +50000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.5 +50000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 2.2 +50000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 4.1 +50000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 4.9 +50000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 8.8 +50000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 12.6 +50000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 11.7 +50000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 11.8 +50000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 32.4 +50000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 30.0 +50000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 10.3 +50000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 3.0 +50000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +50000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 0.8 +50000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 9.4 +50000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 12.2 +50000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 5.6 +50000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +50000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 1.8 +50000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.0 +50000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +50000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.0 +50000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.4 +50000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +50000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.3 +50000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 1.6 +50000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 2.9 +50000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 0.9 +50000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +50000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 1.5 +50000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.3 +50000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.4 +50000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.2 +50000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.4 +50000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.4 +50000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +50000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +50000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 3.3 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 7.8 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 4.1 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 65.6 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 20.1 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 1.4 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 0.8 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.7 +50000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +50000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +50000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +50000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.1 +50000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +50000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 9.1 +50000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 22.6 +50000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 37.6 +50000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 15.2 +50000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 4.7 +50000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 3.2 +50000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 1.6 +50000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.1 +50000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.1 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.3 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 5.6 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 5.7 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 9.2 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 9.4 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 13.8 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 12.0 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 6.9 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 1.6 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 0.9 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +50000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +50000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.1 +50000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.6 +50000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.2 +50000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 5.6 +50000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 11.5 +50000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 6.1 +50000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 4.8 +50000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 21.5 +50000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 80.2 +50000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 58.6 +50000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 15.5 +50000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.5 +50000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.6 +50000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +50000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.2 +50000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.5 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 0.9 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 4.9 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 1.6 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 2.3 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.3 +50000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 10.1 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 6.0 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.1 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.0 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 0.7 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.3 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.1 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.7 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.2 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.3 +50000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +50000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +50000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 0.9 +50000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +50000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.5 +50000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 4.7 +50000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 17.8 +50000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 18.2 +50000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 11.2 +50000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.5 +50000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.1 +50000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +50000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +50000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +50000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.2 +50000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 1.6 +50000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 16.5 +50000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 27.7 +50000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 3.2 +50000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.2 +50000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.0 +50000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 4.2 +50000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 8.8 +50000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 5.0 +50000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 2.4 +50000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 0.8 +50000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 3.9 +50000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 0.9 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.1 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.6 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 6.4 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 1.5 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 2.4 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 0.9 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 2.4 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +50000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.3 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 7.6 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 8.4 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 16.7 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 95.8 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 49.2 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 2.5 +50000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 3.4 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 3.8 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 4.4 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 6.2 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 26.8 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 67.7 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 64.7 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 47.4 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 3.6 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 1.7 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.4 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.1 +50000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 3.9 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 7.8 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 4.2 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 77.8 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 274.9 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 182.9 +50000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.0 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 0.8 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 23.2 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 52.5 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 45.4 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 23.0 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 9.1 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 1.9 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 3.3 +50000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +50000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.2 +50000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 34.3 +50000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 76.1 +50000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 148.9 +50000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 58.9 +50000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 323.3 +50000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 212.6 +50000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 5.4 +50000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +50000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.7 +50000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.2 +50000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 3.0 +50000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.0 +50000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +50000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 0.8 +50000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +50000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 1.5 +50000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.4 +50000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.0 +50000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.2 +50000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +50000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.1 +50000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 0.8 +50000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.3 +50000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.0 +50000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +50000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.2 +50000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.6 +50000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +50000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.6 +50000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.6 +50000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 4.0 +50000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 3.6 +50000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 8.7 +50000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 1.6 +50000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +50000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +50000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.4 +50000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 2.5 +50000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 35.6 +50000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 44.2 +50000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 10.5 +50000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 74.3 +50000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 26.4 +50000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.3 +50000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +50000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +50000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.1 +50000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 1.5 +50000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 56.1 +50000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 56.5 +50000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 20.3 +50000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 3.3 +50000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 4.2 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.9 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 5.8 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 13.8 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 9.3 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 9.0 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 33.3 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 37.4 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 10.1 +50000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.2 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 6.6 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 1.2 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.8 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 1.4 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 4.4 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 1.6 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 12.4 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 38.8 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 55.1 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 17.2 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 1.8 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.3 +50000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 1.0 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 5.3 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 1.6 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 7.3 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 2.8 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.4 +50000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +50000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 13.5 +50000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 41.6 +50000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 39.0 +50000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 10.0 +50000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 73.3 +50000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 282.0 +50000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +50000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 7.1 +50000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 12.3 +50000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 19.8 +50000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 32.9 +50000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.0 +50000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.4 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.1 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +50000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +50000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.1 +50000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.6 +50000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.7 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.4 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 11.1 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 154.0 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 74.6 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 16.7 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 27.4 +50000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 5.9 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 2.7 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 67.6 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 1.2 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.7 +50000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 1.0 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.3 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 2.7 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 9.9 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 43.9 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 13.9 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 8.4 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 7.1 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1.6 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.3 +50000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1.6 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 2.1 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 3.8 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1.8 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1.9 +50000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1.6 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.4 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.3 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.1 +50000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +50000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.1 +50000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.5 +50000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +50000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 118.9 +50000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 319.8 +50000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 182.7 +50000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 289.3 +50000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 255.0 +50000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 424.9 +50000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 366.3 +50000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 189.5 +50000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +50000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 20.0 +50000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 183.3 +50000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 218.5 +50000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 11.3 +50000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.2 +50000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 4.8 +50000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 1.8 +50000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 1.5 +50000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +50000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.4 +50000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 2.4 +50000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 1.1 +50000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 0.7 +50000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 1.8 +50000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 11.2 +50000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 21.5 +50000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 23.4 +50000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 6.3 +50000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.0 +50000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +50000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +50000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 13.5 +50000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 63.7 +50000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 12.6 +50000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.6 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.0 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.4 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 1.5 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 0.8 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.5 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 3.8 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 4.8 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 11.9 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 12.0 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 5.0 +50000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +50000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +50000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +50000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 1.0 +50000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 2.2 +50000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 0.9 +50000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 3.4 +50000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 16.1 +50000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 8.4 +50000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 2.4 +50000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.2 +50000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +50000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 120.0 +50000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 119.9 +50000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 92.4 +50000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 145.5 +50000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 240.8 +50000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 32.9 +50000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 121.3 +50000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 147.7 +50000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 50.4 +50000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 28.0 +50000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 14.6 +50000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +50000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +50000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +50000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +50000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +50000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +50000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 20.7 +50000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 49.7 +50000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 12.5 +50000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 9.9 +50000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 17.2 +50000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 4.9 +50000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 33.1 +50000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 36.8 +50000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 16.2 +50000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 4.1 +50000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 2.1 +50000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +50000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +50000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +50000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +50000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +50000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.7 +50000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 1.7 +50000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.2 +50000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.4 +50000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 13.2 +50000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 9.1 +50000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 58.6 +50000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 76.3 +50000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 8.7 +50000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 7.9 +50000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 2.2 +50000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +50000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +50000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +50000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +50000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +50000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +50000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 7.6 +50000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 42.3 +50000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 61.5 +50000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 38.2 +50000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 105.8 +50000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 76.8 +50000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 33.7 +50000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 1.8 +50000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +50000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +50000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 1.3 +50000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 11.4 +50000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 13.1 +50000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 16.3 +50000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 15.6 +50000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 2.0 +50000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 6.6 +50000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 1.8 +50000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 6.1 +50000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 4.9 +50000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.8 +50000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.4 +50000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.2 +50000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.4 +50000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.1 +50000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 1.2 +50000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 1.7 +50000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.5 +50000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 2.6 +50000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 3.0 +50000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.8 +50000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.1 +50000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +50000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +50000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.1 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.1 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.2 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 8.5 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 58.6 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 84.0 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 7.3 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 3.0 +50000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +50000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 0.7 +50000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +50000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +50000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.0 +50000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.0 +50000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 0.7 +50000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1.3 +50000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 3.7 +50000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1.3 +50000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 1.5 +50000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.2 +50000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +50000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +50000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +50000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 400.8 +50000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1495.2 +50000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 2252.0 +50000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 500.7 +50000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 986.1 +50000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 1904.9 +50000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1465.3 +50000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 2450.6 +50000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 1664.7 +50000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 3724.1 +50000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 3343.0 +50000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 1.6 +50000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 1.5 +50000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 14.7 +50000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +50000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 15.6 +50000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 6.3 +50000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 139.3 +50000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 515.3 +50000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 1909.0 +50000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 125.6 +50000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 1.8 +50000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.3 +50000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.7 +50000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 3.2 +50000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 28.2 +50000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +50000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 675.0 +50000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 2505.2 +50000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1006.1 +50000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 17.0 +50000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 20.7 +50000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 10.1 +50000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 22.4 +50000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 12.3 +50000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 2.3 +50000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 19.9 +50000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 16.7 +50000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 137.2 +50000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 225.6 +50000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 166.4 +50000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 6.6 +50000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 12.5 +50000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.0 +50000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 3.6 +50000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 2.2 +50000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 22.2 +50000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.0 +50000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.2 +50000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 0.2 +50000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 0.2 +50000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 0.9 +50000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 1.4 +50000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 2.5 +50000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 2.4 +50000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 10.0 +50000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 3.7 +50000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 0.6 +50000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.2 +50000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.0 +50000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.1 +50000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.0 +50000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.2 +50000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 4.9 +50000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 20.1 +50000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 0.4 +50000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 0.9 +50000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +50000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +50000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 0.3 +50000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/WA.POP b/NONROAD/NR08a/DATA/POP/WA.POP new file mode 100644 index 0000000..cef3aa0 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/WA.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 53000 WA Washington 2,756,564.5 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +53000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 117.5 +53000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 69.3 +53000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 74.4 +53000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 5930.5 +53000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 5986.1 +53000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 2686.8 +53000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 9465.5 +53000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 3890.2 +53000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 1013.5 +53000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 16617.7 +53000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 8184.9 +53000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 8398.9 +53000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 72686.5 +53000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 3127.7 +53000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6881.0 +53000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 2.0 +53000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.2 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.5 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 141.3 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 267.6 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 2108.1 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 21.6 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 52.0 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +53000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 19.7 +53000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 21.6 +53000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +53000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 52.0 +53000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +53000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 19.7 +53000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 17.0 +53000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 118.6 +53000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 5.5 +53000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 43.0 +53000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 7.2 +53000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 8.0 +53000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 7.2 +53000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 8.0 +53000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3548.9 +53000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 7.8 +53000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 333.5 +53000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1692.1 +53000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 520.9 +53000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 92.3 +53000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 128.3 +53000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 22.9 +53000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 59.6 +53000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 7.0 +53000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.8 +53000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 3.3 +53000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 7.0 +53000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.8 +53000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 3.3 +53000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 319.4 +53000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 934.2 +53000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 792.3 +53000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 396.8 +53000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 279.6 +53000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 11.4 +53000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 1.0 +53000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 11.4 +53000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 1.0 +53000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 138.7 +53000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 213.6 +53000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 61.8 +53000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 26.0 +53000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.6 +53000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +53000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.6 +53000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.9 +53000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.9 +53000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 15.7 +53000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 15.6 +53000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.6 +53000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.7 +53000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 242.9 +53000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 237.8 +53000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 85.0 +53000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 96.9 +53000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 16.1 +53000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 13.6 +53000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 10.7 +53000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 16.1 +53000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 13.6 +53000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 10.7 +53000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 100.2 +53000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 2050.5 +53000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 82.9 +53000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 25.4 +53000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 32.2 +53000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 21.1 +53000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.5 +53000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.7 +53000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.8 +53000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 8.5 +53000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 7.7 +53000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 12.8 +53000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 262.2 +53000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1256.6 +53000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 646.1 +53000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 135.5 +53000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 59.6 +53000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 16.4 +53000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.9 +53000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 16.4 +53000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 8.9 +53000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 35.6 +53000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1992.7 +53000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 3329.2 +53000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 113.0 +53000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 86.6 +53000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 3.4 +53000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.8 +53000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.7 +53000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +53000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 11.9 +53000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.9 +53000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +53000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 11.9 +53000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.9 +53000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 32.1 +53000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 45.1 +53000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 82.2 +53000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 21.1 +53000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.6 +53000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.6 +53000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.8 +53000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.5 +53000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +53000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.8 +53000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +53000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.0 +53000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.5 +53000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +53000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 16.8 +53000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +53000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 2.0 +53000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +53000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 33.6 +53000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 1.1 +53000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.7 +53000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 33.6 +53000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 1.1 +53000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 8.3 +53000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 171.9 +53000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +53000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.0 +53000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +53000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.6 +53000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 3.0 +53000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.4 +53000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 6.8 +53000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 136.6 +53000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 38.7 +53000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 21.4 +53000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 22.9 +53000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 38.7 +53000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 21.4 +53000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 22.9 +53000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 120.5 +53000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 397.5 +53000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 59.8 +53000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 73.1 +53000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.8 +53000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.5 +53000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 14.3 +53000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 13.6 +53000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.6 +53000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 41.4 +53000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 11.5 +53000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 265.6 +53000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 117.4 +53000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 244.6 +53000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 5.4 +53000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 117.4 +53000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 244.6 +53000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 5.4 +53000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 31.1 +53000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 111.2 +53000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 179.1 +53000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 13.1 +53000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 83.2 +53000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.4 +53000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 591.5 +53000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 1292.8 +53000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 3402.6 +53000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 248.5 +53000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 1581.4 +53000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 7.7 +53000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 819.3 +53000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 62.4 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 71.5 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 109.3 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 29.6 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 63.3 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 38.0 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 43.0 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 43.6 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.9 +53000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 38.0 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 43.0 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 43.6 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.4 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.9 +53000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +53000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.4 +53000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 3.0 +53000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 1210.7 +53000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 228.8 +53000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 116.5 +53000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 98.5 +53000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.8 +53000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.2 +53000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.0 +53000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.7 +53000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +53000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 8.8 +53000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 12.2 +53000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 1.5 +53000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 4.7 +53000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.2 +53000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.5 +53000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.6 +53000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 24.0 +53000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 14.6 +53000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.5 +53000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 14.6 +53000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.5 +53000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.5 +53000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +53000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 22.5 +53000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.5 +53000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.9 +53000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +53000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 7.8 +53000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 3.6 +53000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 14.0 +53000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +53000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.2 +53000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 7.3 +53000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 2.8 +53000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 13.8 +53000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +53000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.4 +53000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.8 +53000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.2 +53000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.2 +53000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 13505.0 +53000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 671180.3 +53000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 221.3 +53000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 593.3 +53000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 29487.3 +53000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 9.7 +53000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1252.3 +53000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 8853.3 +53000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 62871.7 +53000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 197.7 +53000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 1397.6 +53000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 9924.7 +53000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 109218.2 +53000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +53000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 3195.6 +53000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 11243.8 +53000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 81637.5 +53000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 206744.3 +53000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +53000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +53000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 33714.3 +53000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 2394.2 +53000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4714.7 +53000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +53000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +53000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +53000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 528.8 +53000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 141.5 +53000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 7.5 +53000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 16.2 +53000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 12086.6 +53000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 134224.7 +53000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +53000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +53000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 10230.7 +53000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 3811.5 +53000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7605.9 +53000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +53000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +53000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 583.4 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 5705.8 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 179.7 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 195.5 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 14.9 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 101.5 +53000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 100.7 +53000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 35616.7 +53000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 54540.2 +53000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 92012.3 +53000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 4300.5 +53000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 4468.1 +53000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 6842.0 +53000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 11542.8 +53000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 539.5 +53000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 147.5 +53000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 21335.2 +53000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 16545.3 +53000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 78.3 +53000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 3.7 +53000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 538.8 +53000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 417.8 +53000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 2.0 +53000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 557.6 +53000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1904.5 +53000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 842.0 +53000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 12.6 +53000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 2043.0 +53000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 3998.3 +53000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 526.8 +53000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 16518.3 +53000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 183540.5 +53000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 59820.1 +53000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 13.3 +53000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 417.2 +53000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 4635.0 +53000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 1510.7 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.7 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 33.7 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 138.7 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 261.5 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 19.7 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 84.2 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.8 +53000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 20.2 +53000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 19.7 +53000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 84.2 +53000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.8 +53000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 20.2 +53000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 2.4 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 6881.8 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1830.6 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 4085.1 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 5324.7 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 1055.0 +53000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 9.1 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 538.1 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2330.3 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5938.9 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3924.2 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 57.5 +53000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 37.7 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 604.9 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 2619.4 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 6675.7 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 4411.0 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 64.6 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 42.3 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 4.1 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 1.4 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.5 +53000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.7 +53000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 42.0 +53000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 36.2 +53000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 17.4 +53000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 1.8 +53000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 20.8 +53000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 2.3 +53000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +53000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.1 +53000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.3 +53000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 214.5 +53000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 68.7 +53000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 7.8 +53000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 1.4 +53000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 99.4 +53000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 1.5 +53000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 30.4 +53000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 364.2 +53000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 339.5 +53000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 1322.1 +53000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 482.2 +53000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 165.6 +53000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 280.6 +53000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 68.4 +53000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 25.6 +53000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 26.9 +53000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 26.4 +53000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 11626.8 +53000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 29.0 +53000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 115.9 +53000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 65.7 +53000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 25.0 +53000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 121.4 +53000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 72.2 +53000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 63.9 +53000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 5.1 +53000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 8.2 +53000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 1.3 +53000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 48.1 +53000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 20.1 +53000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 1.3 +53000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 2.2 +53000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 12.3 +53000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 3.4 +53000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +53000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 7.7 +53000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 16.3 +53000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 7.6 +53000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 3.4 +53000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.2 +53000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 4.0 +53000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 21.2 +53000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 30.2 +53000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 3.0 +53000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 3.5 +53000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.7 +53000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 89.7 +53000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 2226.4 +53000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 15663.1 +53000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 37611.8 +53000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 8319.5 +53000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 11904.6 +53000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +53000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +53000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +53000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +53000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +53000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +53000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 1102.5 +53000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 8.3 +53000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 514.2 +53000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 457.3 +53000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 171.6 +53000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 4.0 +53000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.7 +53000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 10.4 +53000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 17.6 +53000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 352.3 +53000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 118.6 +53000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 40.9 +53000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 16.7 +53000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 8.5 +53000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2819.3 +53000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 5093.7 +53000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 3.1 +53000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.6 +53000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 7299.7 +53000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 4578.5 +53000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 443.5 +53000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 258.4 +53000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 224.7 +53000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 2.1 +53000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 104.5 +53000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 6.9 +53000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 16.1 +53000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 217.3 +53000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 2.1 +53000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 104.5 +53000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 6.9 +53000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 15.1 +53000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 7.4 +53000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +53000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 1.0 +53000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 1.2 +53000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.2 +53000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.3 +53000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 1156.9 +53000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 1079.9 +53000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 132.5 +53000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 143.6 +53000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 21.0 +53000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 116.3 +53000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 24.8 +53000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 11.6 +53000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 21.0 +53000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 112.9 +53000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 24.8 +53000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 6.2 +53000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 3.3 +53000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 5.4 +53000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 3.4 +53000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 2.0 +53000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.6 +53000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 6.0 +53000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 1.0 +53000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.6 +53000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.8 +53000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 153.0 +53000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 593.2 +53000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 2186.5 +53000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 729.4 +53000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 172.2 +53000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 15.3 +53000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 3.5 +53000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 172.2 +53000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 15.3 +53000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 3.5 +53000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 3.6 +53000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 19314.8 +53000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 11945.2 +53000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 3543.7 +53000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 666.4 +53000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 11.3 +53000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.9 +53000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +53000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 11.3 +53000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.9 +53000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +53000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 28.2 +53000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 134.1 +53000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 121.4 +53000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 95.7 +53000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 97.9 +53000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.5 +53000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +53000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +53000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +53000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.5 +53000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.6 +53000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.4 +53000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +53000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +53000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 1413.5 +53000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 8974.5 +53000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 496.4 +53000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 160.9 +53000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 15.6 +53000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 6.4 +53000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 18.9 +53000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 2.1 +53000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 7.6 +53000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.4 +53000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +53000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +53000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +53000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.0 +53000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.0 +53000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.4 +53000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +53000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.5 +53000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 2.0 +53000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 6.0 +53000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 6.5 +53000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 11.8 +53000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 7.9 +53000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +53000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 7.7 +53000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 1.1 +53000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 3.3 +53000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.1 +53000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.3 +53000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 9.8 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 355.8 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 246.0 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.8 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 5.2 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 5.2 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 43.6 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 38.4 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 16.9 +53000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +53000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.3 +53000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 57.0 +53000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 5.3 +53000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 108.2 +53000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 67.4 +53000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 147.6 +53000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 103.7 +53000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 13.3 +53000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 55.8 +53000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 279.4 +53000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 124.9 +53000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 75.9 +53000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 7.0 +53000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 30.1 +53000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 56.5 +53000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 67.6 +53000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 121.4 +53000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 173.1 +53000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 160.4 +53000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 162.4 +53000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 444.5 +53000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 412.2 +53000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 140.7 +53000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 41.7 +53000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +53000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 11.2 +53000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 128.9 +53000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 166.9 +53000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 77.4 +53000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +53000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 24.1 +53000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 27.0 +53000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 2.1 +53000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 13.9 +53000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 18.5 +53000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +53000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 18.2 +53000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 21.4 +53000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 39.1 +53000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 12.1 +53000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +53000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +53000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.4 +53000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 20.8 +53000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 17.4 +53000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 6.0 +53000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +53000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 16.5 +53000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 5.1 +53000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +53000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 5.1 +53000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 2.2 +53000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.5 +53000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +53000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 45.2 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 106.5 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 56.9 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 900.6 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 276.3 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.5 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 19.7 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 11.5 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 9.1 +53000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 2.2 +53000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +53000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +53000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.6 +53000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 2.3 +53000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 124.5 +53000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 310.5 +53000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 516.5 +53000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 208.6 +53000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 64.8 +53000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 43.3 +53000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 22.0 +53000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.9 +53000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.3 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 2.0 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 4.5 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 76.7 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 78.1 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 126.5 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 128.6 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 189.1 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 164.4 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 94.7 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 22.2 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 12.1 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +53000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +53000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.5 +53000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 8.3 +53000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 17.1 +53000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 76.2 +53000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 157.8 +53000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 84.2 +53000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 65.3 +53000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 294.6 +53000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 1100.9 +53000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 804.9 +53000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 213.2 +53000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 6.8 +53000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 7.9 +53000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.3 +53000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 3.0 +53000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 6.9 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 11.8 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 67.9 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.4 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 21.8 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 31.4 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.8 +53000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 138.1 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 82.3 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 15.3 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 13.9 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 10.1 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 17.4 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 29.0 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 9.2 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 3.3 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 4.1 +53000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.8 +53000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +53000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 12.6 +53000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.2 +53000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 6.7 +53000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 64.8 +53000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 243.9 +53000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 249.5 +53000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 153.7 +53000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 6.6 +53000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.9 +53000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +53000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +53000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.4 +53000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.9 +53000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 22.2 +53000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 226.6 +53000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 379.6 +53000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 43.4 +53000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.6 +53000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.6 +53000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 57.0 +53000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 120.9 +53000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 68.4 +53000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 33.2 +53000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 10.5 +53000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 53.2 +53000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 13.0 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.5 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 2.0 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 7.7 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 87.4 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 21.1 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 33.1 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 12.5 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 32.5 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.5 +53000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.4 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 4.5 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 104.1 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 115.9 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 229.8 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1314.6 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 675.3 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 35.0 +53000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 46.1 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 1.0 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 52.7 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 60.5 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 85.5 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 367.7 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 929.8 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 887.7 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 651.3 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 49.2 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 24.0 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 5.0 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 29.4 +53000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 1.1 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 53.5 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 107.0 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 57.2 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 1067.8 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3772.6 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2510.2 +53000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 13.7 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 11.1 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 318.6 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 720.0 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 623.5 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 315.7 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 124.5 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 25.8 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 44.8 +53000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +53000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.9 +53000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 471.1 +53000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 1044.5 +53000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 2043.8 +53000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 808.2 +53000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 4437.9 +53000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2917.5 +53000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 73.5 +53000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +53000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 9.9 +53000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 17.0 +53000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 40.5 +53000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 13.3 +53000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.3 +53000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 10.5 +53000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +53000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 20.0 +53000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 19.1 +53000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 13.7 +53000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 15.8 +53000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.5 +53000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.6 +53000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 10.8 +53000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.9 +53000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.6 +53000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.3 +53000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.9 +53000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 8.3 +53000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.8 +53000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 8.1 +53000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 8.0 +53000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 55.3 +53000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 49.4 +53000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 119.3 +53000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 21.8 +53000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +53000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.4 +53000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 2.3 +53000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 15.4 +53000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 215.7 +53000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 268.0 +53000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 63.4 +53000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 450.4 +53000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 160.1 +53000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 2.0 +53000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.3 +53000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +53000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.8 +53000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 9.2 +53000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 340.0 +53000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 342.6 +53000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 123.0 +53000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 20.0 +53000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 25.6 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 5.7 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.3 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 34.9 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 83.9 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 56.6 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 54.8 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 201.9 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 226.7 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 61.0 +53000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.0 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 39.9 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 7.5 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 4.9 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 8.5 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 26.8 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 9.7 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 75.5 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 234.9 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 334.2 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 104.3 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 10.7 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 1.8 +53000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 6.4 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 32.0 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 9.6 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 44.4 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 16.9 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 2.3 +53000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +53000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 133.2 +53000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 409.4 +53000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 383.8 +53000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 98.4 +53000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 721.5 +53000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2774.9 +53000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +53000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +53000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +53000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.2 +53000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +53000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +53000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 43.0 +53000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 74.7 +53000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 119.9 +53000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 199.7 +53000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 6.1 +53000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 5.6 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 1.4 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +53000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +53000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.9 +53000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 7.8 +53000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 9.8 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 5.6 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 157.9 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 2190.7 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 1061.9 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 237.2 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 389.5 +53000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 83.3 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.6 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 38.5 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 961.9 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 16.7 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 9.6 +53000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 14.7 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.2 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 3.6 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 37.9 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 141.5 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 625.2 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 198.0 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 119.5 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 101.4 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 23.0 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 3.7 +53000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.5 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 22.5 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 29.3 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 53.9 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 26.2 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.5 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 27.6 +53000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 23.1 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.6 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 5.6 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 4.6 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 1.3 +53000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.2 +53000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 1.4 +53000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 5.6 +53000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.1 +53000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 1279.9 +53000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 3442.4 +53000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 1967.0 +53000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 3114.6 +53000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 2745.0 +53000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 4573.9 +53000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 3943.2 +53000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 2040.4 +53000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.2 +53000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 215.1 +53000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 1972.7 +53000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 2352.4 +53000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 121.5 +53000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 2.4 +53000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 51.3 +53000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 18.9 +53000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 16.1 +53000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.8 +53000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 4.8 +53000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 25.6 +53000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 11.7 +53000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 7.3 +53000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 19.6 +53000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 120.1 +53000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 231.9 +53000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 252.0 +53000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 68.3 +53000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.5 +53000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +53000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.2 +53000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 145.2 +53000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 686.2 +53000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 135.6 +53000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 6.1 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.4 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 4.5 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 16.4 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 8.7 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 5.3 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 41.0 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 51.3 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 127.8 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 129.2 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 54.2 +53000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +53000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +53000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +53000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 10.3 +53000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 23.6 +53000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 9.3 +53000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 36.7 +53000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 173.0 +53000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 90.8 +53000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 25.8 +53000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 1.8 +53000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +53000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1335.9 +53000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1333.9 +53000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 1028.1 +53000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1618.9 +53000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2679.5 +53000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 366.0 +53000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1350.4 +53000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1643.4 +53000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 560.9 +53000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 311.9 +53000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 162.0 +53000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +53000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +53000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +53000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +53000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +53000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.6 +53000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 230.0 +53000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 552.9 +53000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 138.7 +53000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 110.3 +53000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 191.9 +53000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 54.4 +53000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 368.2 +53000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 409.8 +53000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 180.7 +53000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 45.3 +53000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 22.9 +53000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +53000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +53000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +53000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +53000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +53000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 7.8 +53000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 19.1 +53000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.6 +53000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 4.0 +53000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 146.9 +53000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 101.7 +53000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 651.7 +53000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 848.8 +53000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 97.3 +53000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 87.4 +53000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 25.0 +53000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +53000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +53000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +53000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +53000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +53000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +53000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 84.9 +53000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 470.5 +53000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 684.9 +53000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 424.8 +53000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 1177.4 +53000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 855.2 +53000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 375.5 +53000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 19.6 +53000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +53000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +53000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 14.9 +53000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 126.5 +53000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 145.3 +53000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 181.4 +53000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 173.4 +53000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 21.7 +53000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 72.9 +53000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 20.4 +53000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 67.7 +53000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 54.8 +53000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 8.4 +53000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.9 +53000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 2.0 +53000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 4.5 +53000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.4 +53000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 13.0 +53000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 18.9 +53000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 6.0 +53000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 29.0 +53000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 33.5 +53000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 9.0 +53000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 1.2 +53000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.3 +53000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +53000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.6 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.8 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 1.2 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 57.1 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 396.2 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 567.8 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 49.1 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 20.1 +53000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.5 +53000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 23.7 +53000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.1 +53000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.3 +53000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.9 +53000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 1.2 +53000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 24.8 +53000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 45.1 +53000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 133.2 +53000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 44.7 +53000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 52.2 +53000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 5.5 +53000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.3 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +53000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.4 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.2 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 1.7 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.2 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 3.5 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 1.8 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 2.6 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 1.6 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.7 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.3 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.4 +53000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +53000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4234.4 +53000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 15795.0 +53000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 23789.7 +53000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5289.2 +53000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 10417.3 +53000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 20122.9 +53000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 15479.6 +53000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 25888.1 +53000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 17585.9 +53000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 39341.4 +53000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 35315.5 +53000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 16.8 +53000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 16.3 +53000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 155.1 +53000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +53000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 164.7 +53000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 66.4 +53000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1471.8 +53000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5443.6 +53000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 20166.8 +53000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1326.8 +53000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 18.5 +53000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 13.2 +53000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 7.8 +53000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 33.8 +53000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 297.4 +53000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +53000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 7130.2 +53000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 26465.3 +53000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 10628.5 +53000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 179.3 +53000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 218.2 +53000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 107.1 +53000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 236.9 +53000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 129.6 +53000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 24.0 +53000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 210.0 +53000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 176.9 +53000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1449.6 +53000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2383.8 +53000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1758.4 +53000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 69.4 +53000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 131.6 +53000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 10.7 +53000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 37.6 +53000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 23.0 +53000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 234.8 +53000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +53000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.2 +53000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.3 +53000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.9 +53000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 6.9 +53000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 10.9 +53000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 19.8 +53000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 18.5 +53000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 77.9 +53000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 28.7 +53000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 4.9 +53000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.2 +53000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.3 +53000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.4 +53000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +53000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.2 +53000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 38.0 +53000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 156.1 +53000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.8 +53000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 7.1 +53000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 2.2 +53000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +53000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 2.2 +53000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/WI.POP b/NONROAD/NR08a/DATA/POP/WI.POP new file mode 100644 index 0000000..6a6a7ff --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/WI.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 55000 WI Wisconsin 2,824,178.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +55000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 853.5 +55000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 503.5 +55000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 540.6 +55000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 43086.3 +55000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 43490.5 +55000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 19520.1 +55000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 68769.2 +55000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 28263.6 +55000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 7363.2 +55000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 19074.0 +55000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 9394.6 +55000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 9640.3 +55000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 83430.1 +55000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 5825.5 +55000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 6170.2 +55000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 1.8 +55000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 1.0 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 3.1 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 126.7 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 240.0 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 1890.3 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +55000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +55000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 19.3 +55000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.5 +55000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 46.6 +55000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.4 +55000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 17.7 +55000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 14.5 +55000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 101.3 +55000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 4.7 +55000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 36.7 +55000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 6.2 +55000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 6.8 +55000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 6.2 +55000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 6.8 +55000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 3030.7 +55000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 6.6 +55000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 284.8 +55000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 1445.1 +55000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 444.9 +55000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 78.8 +55000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 109.5 +55000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 19.6 +55000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 50.9 +55000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 6.0 +55000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 4.1 +55000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 2.8 +55000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 6.0 +55000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 4.1 +55000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 2.8 +55000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 272.8 +55000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 797.8 +55000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 676.6 +55000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 338.9 +55000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 238.7 +55000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 9.7 +55000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.9 +55000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 9.7 +55000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.9 +55000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 118.5 +55000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 182.4 +55000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 52.8 +55000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 22.2 +55000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.2 +55000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +55000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 2.2 +55000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.8 +55000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.7 +55000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 13.4 +55000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 13.3 +55000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.5 +55000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.6 +55000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 207.4 +55000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 203.0 +55000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 72.6 +55000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 82.7 +55000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 13.8 +55000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 11.6 +55000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 9.2 +55000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 13.8 +55000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 11.6 +55000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 9.2 +55000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 85.6 +55000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 1751.1 +55000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 70.8 +55000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 21.7 +55000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 27.5 +55000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 18.0 +55000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.3 +55000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.6 +55000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.0 +55000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 7.3 +55000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 6.6 +55000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 11.0 +55000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 223.9 +55000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 1073.1 +55000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 551.7 +55000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 115.7 +55000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 50.9 +55000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.0 +55000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.6 +55000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 14.0 +55000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 7.6 +55000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 30.4 +55000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 1701.8 +55000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 2843.1 +55000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 96.5 +55000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 73.9 +55000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 2.9 +55000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 4.1 +55000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 1.4 +55000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.1 +55000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 10.1 +55000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 1.6 +55000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.1 +55000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 10.1 +55000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 1.6 +55000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 27.4 +55000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 38.5 +55000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 70.2 +55000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 18.0 +55000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.2 +55000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 2.2 +55000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.6 +55000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +55000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +55000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.4 +55000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +55000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +55000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 2.2 +55000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +55000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 14.4 +55000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.1 +55000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 1.7 +55000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +55000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 28.7 +55000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.9 +55000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.6 +55000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 28.7 +55000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.9 +55000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 7.1 +55000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 146.8 +55000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +55000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +55000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +55000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.5 +55000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 2.6 +55000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.3 +55000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 5.8 +55000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 116.7 +55000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 33.1 +55000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 18.3 +55000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 19.5 +55000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 33.1 +55000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 18.3 +55000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 19.5 +55000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 102.9 +55000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 339.4 +55000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 51.1 +55000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 62.4 +55000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 2.4 +55000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.4 +55000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 12.2 +55000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 11.6 +55000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.5 +55000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 76.1 +55000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 21.1 +55000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 487.9 +55000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 215.8 +55000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 449.5 +55000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 10.0 +55000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 215.8 +55000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 449.5 +55000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 10.0 +55000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 57.2 +55000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 204.2 +55000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 329.0 +55000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 24.0 +55000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 152.9 +55000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.7 +55000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 1086.7 +55000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 2375.4 +55000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 6251.8 +55000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 456.6 +55000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 2905.5 +55000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 14.2 +55000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 1505.3 +55000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 114.6 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 131.3 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 200.9 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 54.3 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 116.4 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 69.9 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 79.0 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 80.1 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.8 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 1.6 +55000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.1 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 69.9 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 79.0 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 80.1 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.8 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 1.6 +55000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.1 +55000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.7 +55000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 5.4 +55000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 2224.5 +55000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 420.3 +55000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 214.1 +55000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 180.9 +55000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 16.2 +55000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 22.5 +55000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 3.6 +55000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 8.6 +55000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +55000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 16.2 +55000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 22.5 +55000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 2.8 +55000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 8.6 +55000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.3 +55000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.8 +55000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 1.1 +55000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 44.2 +55000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 26.9 +55000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 1.0 +55000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 26.9 +55000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 1.0 +55000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.4 +55000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.7 +55000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 20.2 +55000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 2.3 +55000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.8 +55000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +55000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 14.3 +55000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 6.5 +55000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 25.7 +55000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +55000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.4 +55000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 13.5 +55000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 5.1 +55000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 25.4 +55000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +55000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.8 +55000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 1.4 +55000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.3 +55000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.3 +55000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 12739.8 +55000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 633152.3 +55000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 208.8 +55000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 392.2 +55000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 19490.5 +55000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 6.4 +55000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 1181.4 +55000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 8351.7 +55000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 59309.5 +55000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 130.7 +55000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 923.8 +55000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 6560.0 +55000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 103030.1 +55000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +55000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 2112.2 +55000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 7431.9 +55000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 77012.0 +55000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 195030.5 +55000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +55000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +55000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 22284.4 +55000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 1582.5 +55000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 4447.6 +55000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +55000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +55000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +55000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 349.6 +55000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 93.5 +55000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 4.9 +55000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 10.7 +55000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 11401.8 +55000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 126619.8 +55000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +55000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +55000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 6762.3 +55000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 2519.3 +55000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 7175.0 +55000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +55000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +55000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 385.6 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 3771.4 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 118.8 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 129.2 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 9.8 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 67.1 +55000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 66.6 +55000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 34832.6 +55000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 53339.6 +55000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 89986.8 +55000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 4205.8 +55000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 3042.5 +55000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 4658.9 +55000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 7859.9 +55000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 367.4 +55000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 139.1 +55000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 20126.3 +55000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 15607.9 +55000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 73.8 +55000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 2.5 +55000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 356.1 +55000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 276.2 +55000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 1.3 +55000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 368.5 +55000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 1258.8 +55000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 556.6 +55000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 8.4 +55000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 1350.3 +55000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 2642.8 +55000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 497.0 +55000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 15582.4 +55000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 173141.4 +55000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 56430.8 +55000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 8.8 +55000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 275.7 +55000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 3063.7 +55000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 998.5 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.5 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 22.2 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 91.7 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 172.8 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.0 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 55.7 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +55000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.3 +55000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 13.0 +55000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 55.7 +55000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.5 +55000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 13.3 +55000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 1.6 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 4548.7 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 1210.0 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 2700.1 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 3519.5 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 697.3 +55000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 6.0 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 507.6 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 2198.3 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 5602.4 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 3701.8 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 54.2 +55000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 35.5 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 399.8 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 1731.4 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 4412.5 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 2915.6 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 42.7 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 28.0 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 2.7 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.9 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.3 +55000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 1.1 +55000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 76.5 +55000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 66.0 +55000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 31.7 +55000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 3.3 +55000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 37.9 +55000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 4.3 +55000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +55000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.3 +55000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.6 +55000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 391.3 +55000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 125.2 +55000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 14.2 +55000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 2.6 +55000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 181.3 +55000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 2.7 +55000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 55.5 +55000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 664.3 +55000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 619.3 +55000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 2411.6 +55000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 879.5 +55000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 302.1 +55000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 511.9 +55000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 124.7 +55000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 46.8 +55000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 49.0 +55000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 48.1 +55000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 21207.9 +55000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 53.0 +55000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 211.4 +55000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 119.8 +55000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 45.5 +55000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 221.4 +55000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 131.6 +55000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 116.6 +55000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 9.3 +55000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 15.0 +55000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 2.4 +55000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 87.8 +55000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 36.7 +55000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 2.4 +55000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 4.0 +55000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 22.4 +55000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 6.2 +55000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.1 +55000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 14.1 +55000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 29.7 +55000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 13.8 +55000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 6.3 +55000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.4 +55000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 7.3 +55000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 38.8 +55000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 55.1 +55000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 5.4 +55000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 6.3 +55000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 1.3 +55000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 72.3 +55000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 1795.7 +55000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 12632.8 +55000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 30335.3 +55000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 6710.0 +55000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 9601.4 +55000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +55000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +55000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +55000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +55000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +55000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +55000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 889.2 +55000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 6.7 +55000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 414.7 +55000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 368.8 +55000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 138.4 +55000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 3.2 +55000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.5 +55000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 8.4 +55000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 14.2 +55000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 284.1 +55000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 95.6 +55000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 33.0 +55000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 13.5 +55000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 6.8 +55000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 2273.8 +55000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 4108.2 +55000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 2.5 +55000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.5 +55000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 5887.5 +55000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 3692.8 +55000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 357.7 +55000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 208.4 +55000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 181.2 +55000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 1.7 +55000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 84.3 +55000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 5.6 +55000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 13.0 +55000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 175.3 +55000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 1.7 +55000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 84.2 +55000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 5.6 +55000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 12.2 +55000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 5.9 +55000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.1 +55000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.8 +55000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.9 +55000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 1.0 +55000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 1.1 +55000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 933.1 +55000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 871.0 +55000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 106.8 +55000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 115.8 +55000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 17.0 +55000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 93.8 +55000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 20.0 +55000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 9.4 +55000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 17.0 +55000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 91.1 +55000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 20.0 +55000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 5.0 +55000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 2.7 +55000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 4.4 +55000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 2.8 +55000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 1.6 +55000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.4 +55000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 4.8 +55000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.8 +55000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 2.1 +55000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.7 +55000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 123.4 +55000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 478.4 +55000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 1763.5 +55000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 588.3 +55000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 138.9 +55000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 12.3 +55000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 2.8 +55000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 138.9 +55000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 12.3 +55000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 2.8 +55000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 2.9 +55000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 15578.0 +55000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 9634.2 +55000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 2858.1 +55000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 537.5 +55000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 9.1 +55000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.7 +55000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +55000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 9.1 +55000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.7 +55000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +55000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 22.7 +55000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 108.1 +55000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 97.9 +55000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 77.2 +55000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 79.0 +55000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +55000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +55000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 1.2 +55000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +55000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 1.2 +55000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.5 +55000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 1.2 +55000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +55000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +55000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 831.4 +55000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 5278.8 +55000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 292.0 +55000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 94.6 +55000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 9.2 +55000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 3.8 +55000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 7.1 +55000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.8 +55000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 2.9 +55000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.2 +55000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +55000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +55000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +55000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.8 +55000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.3 +55000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.2 +55000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.1 +55000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.2 +55000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.8 +55000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 2.3 +55000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 0.6 +55000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 1.0 +55000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 0.7 +55000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +55000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 0.7 +55000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 0.1 +55000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 0.3 +55000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 0.0 +55000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 0.0 +55000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.0 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 8.8 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 319.0 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 220.6 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.7 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 4.7 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 4.6 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 39.1 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 34.4 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 15.2 +55000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.6 +55000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 2.0 +55000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 48.7 +55000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 4.5 +55000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 92.4 +55000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 57.5 +55000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 126.1 +55000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 88.5 +55000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 11.4 +55000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 47.7 +55000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 238.6 +55000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 106.6 +55000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 64.8 +55000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 6.0 +55000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 25.7 +55000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 48.2 +55000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 57.8 +55000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 103.6 +55000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 147.8 +55000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 137.0 +55000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 138.7 +55000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 379.6 +55000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 352.0 +55000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 120.2 +55000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 35.6 +55000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.1 +55000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 9.6 +55000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 110.1 +55000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 142.5 +55000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 66.1 +55000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.1 +55000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 20.6 +55000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 23.1 +55000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 1.8 +55000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 11.9 +55000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 15.8 +55000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +55000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 15.5 +55000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 18.3 +55000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 33.4 +55000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 10.4 +55000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.5 +55000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.4 +55000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 1.2 +55000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 17.8 +55000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 14.9 +55000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 5.1 +55000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.3 +55000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 14.1 +55000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 4.3 +55000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.2 +55000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 4.3 +55000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 1.9 +55000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.4 +55000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +55000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.3 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 38.6 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 90.9 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 48.6 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 769.1 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 235.9 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.4 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 16.9 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 9.8 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 7.8 +55000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 1.9 +55000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +55000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.1 +55000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 1.4 +55000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 1.9 +55000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 106.3 +55000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 265.1 +55000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 441.1 +55000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 178.1 +55000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 55.3 +55000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 37.0 +55000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 18.8 +55000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 1.6 +55000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.2 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 1.1 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 1.7 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 3.8 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 65.5 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 66.7 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 108.0 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 109.8 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 161.5 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 140.4 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 80.9 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 18.9 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 10.4 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.2 +55000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.4 +55000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 1.3 +55000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 7.1 +55000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 14.6 +55000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 65.1 +55000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 134.8 +55000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 71.9 +55000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 55.7 +55000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 251.6 +55000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 940.2 +55000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 687.4 +55000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 182.1 +55000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 5.8 +55000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 6.7 +55000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.2 +55000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 2.5 +55000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.1 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 5.9 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 10.1 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 58.0 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 2.1 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 18.6 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 26.8 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 3.3 +55000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.1 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 117.9 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 70.3 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 13.0 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 11.9 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 8.6 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 14.8 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 24.8 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 7.9 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 2.8 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 3.5 +55000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.7 +55000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +55000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 10.7 +55000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.1 +55000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 5.7 +55000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 55.3 +55000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 208.3 +55000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 213.1 +55000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 131.2 +55000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 5.7 +55000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 1.6 +55000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.1 +55000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +55000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.3 +55000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 2.5 +55000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 18.9 +55000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 193.5 +55000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 324.1 +55000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 37.1 +55000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 2.2 +55000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.5 +55000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 48.7 +55000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 103.3 +55000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 58.5 +55000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 28.4 +55000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 9.0 +55000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 45.5 +55000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 11.1 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 1.3 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 1.7 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 6.5 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 74.6 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 18.1 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 28.3 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 10.7 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 27.8 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 2.1 +55000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.2 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.3 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 3.8 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 88.9 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 99.0 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 196.2 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 1122.7 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 576.7 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 29.9 +55000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 39.3 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.9 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 45.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 51.6 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 73.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 314.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 794.1 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 758.1 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 556.2 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 42.0 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 20.5 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 4.3 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 25.1 +55000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.9 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.1 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 45.7 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 91.4 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 48.8 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 911.9 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 3221.8 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 2143.7 +55000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 11.7 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 9.4 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 272.1 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 614.9 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 532.5 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 269.6 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 106.4 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 22.0 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 38.3 +55000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.2 +55000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 2.4 +55000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 402.3 +55000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 892.0 +55000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 1745.4 +55000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 690.2 +55000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 3790.0 +55000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 2491.5 +55000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 62.8 +55000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +55000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 8.5 +55000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 14.5 +55000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 34.6 +55000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 11.3 +55000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 1.1 +55000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 9.0 +55000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.2 +55000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 17.1 +55000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 16.3 +55000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 11.7 +55000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 13.5 +55000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 3.0 +55000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 1.4 +55000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 9.2 +55000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 3.3 +55000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.5 +55000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.2 +55000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 2.5 +55000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 7.1 +55000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.6 +55000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 6.9 +55000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 6.8 +55000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 47.2 +55000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 42.2 +55000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 101.8 +55000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 18.6 +55000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.1 +55000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 1.2 +55000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 4.3 +55000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 28.3 +55000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 396.4 +55000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 492.4 +55000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 116.4 +55000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 827.5 +55000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 294.1 +55000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 3.6 +55000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.6 +55000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.1 +55000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 1.4 +55000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 16.9 +55000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 624.8 +55000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 629.4 +55000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 226.0 +55000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 36.8 +55000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 47.0 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 10.5 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.5 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 64.1 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 154.2 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 104.0 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 100.7 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 371.0 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 416.6 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 112.0 +55000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 1.9 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 73.3 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 13.8 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 8.9 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 15.6 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 49.2 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 17.9 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 138.7 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 431.7 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 614.1 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 191.6 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 19.6 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 3.2 +55000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 11.7 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 58.8 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 17.7 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 81.5 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 31.0 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 4.3 +55000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.1 +55000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 119.4 +55000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 367.1 +55000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 344.2 +55000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 88.3 +55000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 646.9 +55000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 2488.2 +55000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +55000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +55000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +55000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.4 +55000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.1 +55000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +55000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 79.1 +55000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 137.2 +55000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 220.4 +55000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 366.9 +55000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 11.2 +55000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 3.7 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.9 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +55000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +55000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.6 +55000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 5.3 +55000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 6.6 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 3.7 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 104.3 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 1448.0 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 701.9 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 156.8 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 257.5 +55000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 55.0 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.4 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 25.5 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 635.8 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 11.0 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 6.4 +55000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 9.7 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.1 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 2.4 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 25.1 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 93.5 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 413.2 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 130.8 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 79.0 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 67.0 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 15.2 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 2.5 +55000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.3 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 14.9 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 19.3 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 35.6 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 17.3 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.3 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 18.2 +55000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 15.2 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.4 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 3.7 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.1 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 3.1 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.8 +55000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.1 +55000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 2.5 +55000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 10.3 +55000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.2 +55000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 2334.6 +55000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 6279.2 +55000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 3587.9 +55000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 5681.1 +55000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 5007.1 +55000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 8343.0 +55000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 7192.6 +55000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 3721.7 +55000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.4 +55000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 392.3 +55000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 3598.4 +55000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 4290.8 +55000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 221.6 +55000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 4.3 +55000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 93.6 +55000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 34.5 +55000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 29.3 +55000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 1.4 +55000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 8.8 +55000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 46.8 +55000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 21.3 +55000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 13.3 +55000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 35.8 +55000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 219.1 +55000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 423.0 +55000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 459.6 +55000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 124.5 +55000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.9 +55000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.1 +55000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.4 +55000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 264.9 +55000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 1251.7 +55000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 247.3 +55000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 11.1 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.7 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 8.2 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 29.9 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 15.8 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 9.6 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 74.8 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 93.5 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 233.0 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 235.7 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 98.8 +55000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.1 +55000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +55000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.1 +55000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 18.8 +55000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 43.0 +55000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 17.0 +55000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 66.9 +55000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 315.7 +55000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 165.6 +55000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 47.1 +55000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 3.4 +55000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +55000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 1077.5 +55000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 1075.8 +55000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 829.2 +55000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 1305.7 +55000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 2161.2 +55000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 295.2 +55000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 1089.1 +55000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 1325.5 +55000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 452.4 +55000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 251.5 +55000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 130.6 +55000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +55000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +55000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +55000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +55000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +55000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.5 +55000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 185.5 +55000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 445.9 +55000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 111.9 +55000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 89.0 +55000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 154.8 +55000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 43.9 +55000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 297.0 +55000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 330.5 +55000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 145.7 +55000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 36.5 +55000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 18.5 +55000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +55000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +55000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +55000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +55000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +55000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 6.3 +55000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 15.4 +55000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 2.1 +55000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 3.2 +55000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 118.5 +55000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 82.0 +55000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 525.6 +55000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 684.6 +55000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 78.5 +55000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 70.5 +55000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 20.1 +55000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +55000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +55000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +55000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +55000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +55000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +55000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 68.5 +55000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 379.5 +55000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 552.4 +55000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 342.6 +55000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 949.7 +55000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 689.8 +55000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 302.9 +55000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 15.8 +55000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.4 +55000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +55000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 12.0 +55000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 102.1 +55000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 117.2 +55000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 146.3 +55000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 139.8 +55000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 17.5 +55000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 58.8 +55000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 16.5 +55000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 54.6 +55000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 44.2 +55000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 6.8 +55000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 3.2 +55000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 1.6 +55000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 3.6 +55000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 1.1 +55000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 10.5 +55000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 15.3 +55000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 4.8 +55000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 23.4 +55000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 27.0 +55000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 7.3 +55000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.9 +55000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.2 +55000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +55000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.3 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.5 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.7 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 33.6 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 233.0 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 334.0 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 28.9 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 11.8 +55000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.3 +55000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 8.9 +55000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +55000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.1 +55000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.3 +55000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.5 +55000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 9.4 +55000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 17.0 +55000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 50.3 +55000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 16.9 +55000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 19.7 +55000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 2.1 +55000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.1 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +55000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 0.1 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 0.3 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 0.2 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 0.2 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 0.1 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 0.1 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 0.0 +55000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.0 +55000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 4583.7 +55000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 17098.0 +55000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 25752.2 +55000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 5725.6 +55000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 11276.7 +55000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 21783.0 +55000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 16756.6 +55000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 28023.7 +55000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 19036.7 +55000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 42586.9 +55000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 38228.8 +55000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 18.2 +55000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 17.6 +55000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 167.9 +55000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.3 +55000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 178.3 +55000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 71.9 +55000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 1593.2 +55000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 5892.6 +55000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 21830.4 +55000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 1436.3 +55000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 20.0 +55000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 14.3 +55000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 8.5 +55000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 36.6 +55000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 321.9 +55000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +55000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 7718.4 +55000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 28648.5 +55000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 11505.3 +55000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 194.1 +55000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 236.2 +55000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 115.9 +55000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 256.4 +55000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 140.3 +55000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 25.9 +55000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 227.3 +55000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 191.5 +55000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 1569.2 +55000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 2580.4 +55000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 1903.4 +55000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 75.1 +55000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 142.4 +55000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 11.6 +55000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 40.7 +55000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 24.9 +55000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 254.1 +55000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +55000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.9 +55000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.0 +55000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.3 +55000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 5.0 +55000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.8 +55000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 14.3 +55000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 13.3 +55000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 56.0 +55000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 20.6 +55000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.5 +55000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.9 +55000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +55000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +55000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +55000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.9 +55000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 27.3 +55000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 112.3 +55000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.0 +55000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.1 +55000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +55000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +55000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +55000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/WV.POP b/NONROAD/NR08a/DATA/POP/WV.POP new file mode 100644 index 0000000..5930d92 --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/WV.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 54000 WV West Virginia 860,579.3 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +54000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 0.0 +54000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 0.0 +54000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 16145.5 +54000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 7952.3 +54000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 8160.2 +54000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 70621.0 +54000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 1348.9 +54000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 2047.4 +54000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.6 +54000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.3 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 1.0 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 42.0 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 79.6 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 627.3 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.4 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 15.5 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +54000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 5.9 +54000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 6.4 +54000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.2 +54000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 15.5 +54000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.1 +54000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 5.9 +54000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 2.5 +54000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 17.1 +54000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.8 +54000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 6.2 +54000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 1.0 +54000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 1.2 +54000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 1.0 +54000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 1.2 +54000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 512.5 +54000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 1.1 +54000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 48.2 +54000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 244.4 +54000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 75.2 +54000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 13.3 +54000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 18.5 +54000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 3.3 +54000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 8.6 +54000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 1.0 +54000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.7 +54000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.5 +54000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 1.0 +54000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.7 +54000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.5 +54000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 46.1 +54000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 134.9 +54000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 114.4 +54000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 57.3 +54000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 40.4 +54000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.6 +54000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +54000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.6 +54000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +54000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 20.0 +54000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 30.9 +54000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 8.9 +54000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 3.8 +54000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +54000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +54000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.4 +54000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +54000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +54000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 2.3 +54000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 2.3 +54000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +54000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +54000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 35.1 +54000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 34.3 +54000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 12.3 +54000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 14.0 +54000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 2.3 +54000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 2.0 +54000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 1.5 +54000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 2.3 +54000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 2.0 +54000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 1.5 +54000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 14.5 +54000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 296.1 +54000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 12.0 +54000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 3.7 +54000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 4.6 +54000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 3.1 +54000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.2 +54000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.1 +54000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +54000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 1.2 +54000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 1.1 +54000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.9 +54000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 37.9 +54000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 181.5 +54000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 93.3 +54000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 19.6 +54000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 8.6 +54000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.4 +54000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +54000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 2.4 +54000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 1.3 +54000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 5.1 +54000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 287.8 +54000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 480.8 +54000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 16.3 +54000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 12.5 +54000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.5 +54000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.7 +54000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.2 +54000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +54000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.7 +54000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.3 +54000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +54000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.7 +54000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.3 +54000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 4.6 +54000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 6.5 +54000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 11.9 +54000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 3.0 +54000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +54000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.4 +54000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +54000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +54000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +54000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.4 +54000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +54000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +54000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.4 +54000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +54000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 2.4 +54000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +54000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.3 +54000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +54000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 4.9 +54000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.2 +54000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +54000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 4.9 +54000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.2 +54000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 1.2 +54000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 24.8 +54000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +54000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +54000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +54000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +54000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.4 +54000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.1 +54000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 1.0 +54000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 19.7 +54000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.6 +54000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 3.1 +54000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 3.3 +54000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 5.6 +54000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 3.1 +54000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 3.3 +54000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 17.4 +54000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 57.4 +54000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 8.6 +54000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 10.6 +54000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.4 +54000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.1 +54000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 2.1 +54000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 2.0 +54000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +54000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 10.9 +54000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 3.0 +54000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 69.7 +54000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 30.8 +54000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 64.2 +54000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 1.4 +54000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 30.8 +54000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 64.2 +54000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 1.4 +54000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 8.2 +54000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 29.2 +54000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 47.0 +54000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 3.4 +54000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 21.8 +54000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.1 +54000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 155.3 +54000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 339.4 +54000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 893.2 +54000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 65.2 +54000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 415.1 +54000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 2.0 +54000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 215.1 +54000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 16.4 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 18.8 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 28.7 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 7.8 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 16.6 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 10.0 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 11.3 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 11.4 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.2 +54000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 10.0 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 11.3 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 11.4 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.1 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.2 +54000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +54000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.1 +54000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.8 +54000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 317.8 +54000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 60.0 +54000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 30.6 +54000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 25.8 +54000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.3 +54000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 3.2 +54000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.5 +54000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.2 +54000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +54000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 2.3 +54000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 3.2 +54000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.4 +54000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 1.2 +54000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +54000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.1 +54000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.2 +54000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 6.3 +54000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 3.8 +54000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.1 +54000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 3.8 +54000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.1 +54000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.1 +54000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.2 +54000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 6.7 +54000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.8 +54000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.3 +54000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +54000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 2.0 +54000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.9 +54000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 3.7 +54000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +54000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.1 +54000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 1.9 +54000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.7 +54000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 3.6 +54000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +54000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.1 +54000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.2 +54000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +54000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +54000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 4548.1 +54000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 226033.5 +54000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 74.5 +54000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 104.6 +54000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 5199.8 +54000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 1.7 +54000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 421.8 +54000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 2981.5 +54000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 21173.3 +54000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 34.9 +54000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 246.4 +54000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 1750.1 +54000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 36781.4 +54000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +54000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 563.5 +54000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 1982.7 +54000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 27493.1 +54000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 69625.3 +54000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +54000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +54000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 5945.1 +54000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 422.2 +54000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 1587.8 +54000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +54000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +54000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +54000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 93.3 +54000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 24.9 +54000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 1.3 +54000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 2.9 +54000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 4070.4 +54000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 45202.9 +54000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +54000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +54000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 1804.1 +54000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 672.1 +54000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 2561.4 +54000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +54000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +54000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 102.9 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 1006.1 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 31.7 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 34.5 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 2.6 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 17.9 +54000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 17.8 +54000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 12435.1 +54000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 19042.1 +54000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 32125.0 +54000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 1501.5 +54000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 811.7 +54000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 1242.9 +54000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 2096.9 +54000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 98.0 +54000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 49.7 +54000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 7185.0 +54000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 5572.0 +54000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 26.4 +54000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.7 +54000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 95.0 +54000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 73.7 +54000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.4 +54000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 98.3 +54000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 335.8 +54000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 148.5 +54000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 2.2 +54000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 360.3 +54000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 705.1 +54000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 177.4 +54000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 5562.9 +54000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 61811.0 +54000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 20145.6 +54000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 2.3 +54000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 73.6 +54000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 817.3 +54000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 266.4 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.1 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 5.9 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 24.5 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 46.1 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.5 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 14.9 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +54000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.6 +54000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 3.5 +54000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 14.9 +54000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.1 +54000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 3.6 +54000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.4 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 1213.5 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 322.8 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 720.4 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 938.9 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 186.0 +54000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 1.6 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 181.2 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 784.8 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 2000.0 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 1321.5 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 19.4 +54000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 12.7 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 106.7 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 461.9 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 1177.2 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 777.8 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 11.4 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 7.5 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.7 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.3 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.1 +54000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.3 +54000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 5.6 +54000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 4.8 +54000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 2.3 +54000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.2 +54000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 2.8 +54000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.3 +54000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +54000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +54000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.0 +54000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 28.4 +54000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 9.1 +54000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 1.0 +54000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.2 +54000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 13.2 +54000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.2 +54000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 4.0 +54000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 48.3 +54000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 45.0 +54000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 175.2 +54000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 63.9 +54000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 21.9 +54000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 37.2 +54000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 9.1 +54000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 3.4 +54000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 3.6 +54000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 3.5 +54000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 1540.8 +54000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 3.8 +54000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 15.4 +54000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 8.7 +54000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 3.3 +54000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 16.1 +54000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 9.6 +54000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 8.5 +54000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 0.7 +54000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 1.1 +54000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.2 +54000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 6.4 +54000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 2.7 +54000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.2 +54000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.3 +54000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 1.6 +54000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.4 +54000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +54000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 1.0 +54000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 2.2 +54000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 1.0 +54000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.5 +54000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.0 +54000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 0.5 +54000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 2.8 +54000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 4.0 +54000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.4 +54000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.5 +54000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.1 +54000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 15.8 +54000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 393.0 +54000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 2764.6 +54000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 6638.8 +54000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 1468.5 +54000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 2101.2 +54000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +54000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +54000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +54000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +54000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +54000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +54000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 194.6 +54000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 1.5 +54000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 90.8 +54000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 80.7 +54000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 30.3 +54000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.7 +54000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +54000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 1.8 +54000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 3.1 +54000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 62.2 +54000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 20.9 +54000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 7.2 +54000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 3.0 +54000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 1.5 +54000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 497.6 +54000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 899.1 +54000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.5 +54000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +54000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 1288.5 +54000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 808.1 +54000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 78.3 +54000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 45.6 +54000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 39.7 +54000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.4 +54000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 18.5 +54000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 1.2 +54000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 2.8 +54000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 38.4 +54000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.4 +54000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 18.4 +54000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 1.2 +54000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 2.7 +54000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 1.3 +54000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +54000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.2 +54000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.2 +54000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.2 +54000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.2 +54000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 204.2 +54000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 190.6 +54000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 23.4 +54000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 25.3 +54000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 3.7 +54000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 20.5 +54000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 4.4 +54000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 2.0 +54000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 3.7 +54000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 19.9 +54000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 4.4 +54000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 1.1 +54000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.6 +54000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 1.0 +54000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.6 +54000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.4 +54000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.1 +54000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 1.1 +54000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.2 +54000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.5 +54000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +54000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 27.0 +54000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 104.7 +54000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 385.9 +54000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 128.7 +54000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 30.4 +54000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 2.7 +54000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.6 +54000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 30.4 +54000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 2.7 +54000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.6 +54000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.6 +54000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 3409.2 +54000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 2108.4 +54000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 625.5 +54000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 117.6 +54000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 2.0 +54000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.2 +54000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +54000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 2.0 +54000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.2 +54000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +54000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 5.0 +54000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 23.7 +54000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 21.4 +54000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 16.9 +54000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 17.3 +54000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +54000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +54000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +54000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +54000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.3 +54000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +54000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.3 +54000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +54000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +54000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 404.1 +54000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 2565.8 +54000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 141.9 +54000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 46.0 +54000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 4.5 +54000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 1.8 +54000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 1.5 +54000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.2 +54000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.6 +54000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +54000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +54000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +54000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +54000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +54000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +54000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +54000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +54000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +54000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.2 +54000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.5 +54000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 72.5 +54000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 133.0 +54000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 88.3 +54000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +54000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 86.6 +54000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 11.9 +54000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 36.7 +54000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 1.3 +54000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 3.6 +54000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.3 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 2.9 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 105.9 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 73.2 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.2 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 1.6 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 1.5 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 13.0 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 11.4 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 5.0 +54000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.2 +54000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.3 +54000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 8.2 +54000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.8 +54000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 15.6 +54000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 9.7 +54000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 21.3 +54000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 15.0 +54000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.9 +54000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 8.1 +54000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 40.4 +54000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 18.0 +54000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 11.0 +54000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 1.0 +54000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 4.3 +54000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 8.2 +54000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 9.8 +54000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 17.5 +54000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 25.0 +54000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 23.2 +54000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 23.5 +54000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 64.2 +54000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 59.5 +54000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 20.3 +54000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 6.0 +54000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +54000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.6 +54000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 18.6 +54000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 24.1 +54000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 11.2 +54000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +54000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 3.5 +54000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 3.9 +54000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.3 +54000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 2.0 +54000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 2.7 +54000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +54000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 2.6 +54000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 3.1 +54000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 5.6 +54000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.8 +54000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.1 +54000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.1 +54000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.2 +54000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 3.0 +54000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 2.5 +54000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.9 +54000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +54000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 2.4 +54000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.7 +54000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +54000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.7 +54000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.3 +54000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.1 +54000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +54000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.1 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 6.5 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 15.4 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 8.2 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 130.1 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 39.9 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.1 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 2.9 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.7 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 1.3 +54000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.3 +54000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +54000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +54000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.2 +54000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.3 +54000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 18.0 +54000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 44.8 +54000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 74.6 +54000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 30.1 +54000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 9.4 +54000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 6.3 +54000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 3.2 +54000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.3 +54000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.2 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.3 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.6 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 11.1 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 11.3 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 18.3 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 18.6 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 27.3 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 23.7 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 13.7 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 3.2 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.8 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +54000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.1 +54000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.2 +54000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 1.2 +54000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 2.5 +54000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 11.0 +54000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 22.8 +54000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 12.2 +54000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 9.4 +54000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 42.5 +54000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 159.0 +54000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 116.2 +54000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 30.8 +54000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 1.0 +54000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 1.1 +54000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +54000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.4 +54000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 1.0 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.7 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 9.8 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.4 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 3.1 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 4.5 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.6 +54000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 19.9 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 11.9 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 2.2 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 2.0 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 1.5 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 2.5 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 4.2 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 1.3 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.5 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.6 +54000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +54000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +54000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.8 +54000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +54000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 1.0 +54000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 9.4 +54000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 35.2 +54000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 36.0 +54000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 22.2 +54000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 1.0 +54000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.3 +54000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +54000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +54000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.1 +54000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.4 +54000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 3.2 +54000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 32.7 +54000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 54.8 +54000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 6.3 +54000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.4 +54000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +54000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 8.2 +54000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 17.5 +54000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 9.9 +54000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 4.8 +54000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 1.5 +54000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 7.7 +54000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.9 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.2 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.3 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 1.1 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 12.6 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 3.1 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 4.8 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.8 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 4.7 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.4 +54000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.1 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.6 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 15.0 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 16.7 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 33.2 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 189.8 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 97.5 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 5.1 +54000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 6.7 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 7.6 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 8.7 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 12.4 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 53.1 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 134.3 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 128.2 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 94.0 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 7.1 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 3.5 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.7 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 4.2 +54000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.2 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 7.7 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 15.5 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 8.3 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 154.2 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 544.8 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 362.5 +54000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 2.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 1.6 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 46.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 104.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 90.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 45.6 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 18.0 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 3.7 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 6.5 +54000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +54000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.4 +54000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 68.0 +54000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 150.8 +54000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 295.1 +54000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 116.7 +54000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 640.9 +54000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 421.3 +54000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 10.6 +54000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +54000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 1.4 +54000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 2.4 +54000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 5.9 +54000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.9 +54000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.2 +54000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 1.5 +54000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +54000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 2.9 +54000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 2.8 +54000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 2.0 +54000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 2.3 +54000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.5 +54000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.2 +54000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 1.6 +54000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.6 +54000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +54000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +54000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.4 +54000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 1.2 +54000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +54000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 1.2 +54000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 1.2 +54000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 8.0 +54000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 7.1 +54000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 17.2 +54000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 3.1 +54000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +54000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.2 +54000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.6 +54000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 4.0 +54000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 56.6 +54000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 70.3 +54000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 16.6 +54000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 118.2 +54000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 42.0 +54000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.5 +54000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.1 +54000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +54000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.2 +54000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 2.4 +54000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 89.3 +54000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 89.9 +54000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 32.3 +54000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 5.3 +54000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 6.7 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 1.5 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.1 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 9.2 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 22.0 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 14.9 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 14.4 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 53.0 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 59.5 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 16.0 +54000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.3 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 10.5 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 2.0 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 1.3 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 2.2 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 7.0 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 2.6 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 19.8 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 61.7 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 87.7 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 27.4 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 2.8 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.5 +54000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 1.7 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 8.4 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 2.5 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 11.6 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 4.4 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.6 +54000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +54000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 39.6 +54000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 121.8 +54000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 114.2 +54000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 29.3 +54000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 214.7 +54000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 825.7 +54000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +54000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +54000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +54000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.1 +54000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +54000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +54000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 11.3 +54000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 19.6 +54000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 31.5 +54000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 52.4 +54000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 1.6 +54000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 1.0 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.2 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +54000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +54000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.2 +54000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 1.4 +54000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 1.8 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 1.0 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 27.8 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 386.3 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 187.2 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 41.8 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 68.7 +54000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 14.7 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.1 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 6.8 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 169.6 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 2.9 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 1.7 +54000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 2.6 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.6 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 6.7 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 24.9 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 110.2 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 34.9 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 21.1 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 17.9 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 4.0 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.7 +54000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.1 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 4.0 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 5.2 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 9.5 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 4.6 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.1 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 4.9 +54000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 4.1 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.1 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 1.0 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.8 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.2 +54000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +54000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.2 +54000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 0.7 +54000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +54000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 169.6 +54000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 456.2 +54000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 260.7 +54000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 412.7 +54000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 363.8 +54000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 606.1 +54000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 522.5 +54000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 270.4 +54000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.0 +54000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 28.5 +54000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 261.4 +54000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 311.7 +54000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 16.1 +54000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.3 +54000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 6.8 +54000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 2.5 +54000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 2.1 +54000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.1 +54000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 0.6 +54000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 3.4 +54000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 1.5 +54000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.0 +54000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 2.6 +54000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 15.9 +54000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 30.7 +54000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 33.4 +54000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 9.0 +54000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +54000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +54000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.0 +54000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 19.2 +54000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 90.9 +54000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 18.0 +54000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 0.8 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 0.6 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 2.2 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 1.1 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 0.7 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 5.4 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 6.8 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 16.9 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 17.1 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 7.2 +54000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +54000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +54000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +54000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 1.4 +54000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 3.1 +54000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 1.2 +54000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 4.9 +54000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 22.9 +54000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 12.0 +54000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 3.4 +54000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.2 +54000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +54000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 235.8 +54000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 235.4 +54000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 181.5 +54000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 285.7 +54000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 473.0 +54000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 64.6 +54000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 238.4 +54000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 290.1 +54000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 99.0 +54000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 55.0 +54000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 28.6 +54000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +54000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +54000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +54000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +54000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +54000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +54000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 40.6 +54000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 97.6 +54000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 24.5 +54000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 19.5 +54000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 33.9 +54000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 9.6 +54000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 65.0 +54000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 72.3 +54000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 31.9 +54000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 8.0 +54000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 4.0 +54000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +54000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +54000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +54000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +54000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +54000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 1.4 +54000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 3.4 +54000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.5 +54000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.7 +54000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 25.9 +54000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 17.9 +54000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 115.0 +54000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 149.8 +54000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 17.2 +54000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 15.4 +54000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 4.4 +54000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +54000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +54000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +54000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +54000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +54000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +54000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 15.0 +54000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 83.0 +54000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 120.9 +54000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 75.0 +54000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 207.8 +54000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 151.0 +54000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 66.3 +54000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 3.5 +54000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.1 +54000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +54000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 2.6 +54000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 22.3 +54000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 25.6 +54000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 32.0 +54000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 30.6 +54000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 3.8 +54000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 12.9 +54000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 3.6 +54000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 12.0 +54000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 9.7 +54000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 1.5 +54000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.7 +54000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.4 +54000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.8 +54000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.2 +54000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 2.3 +54000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 3.3 +54000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 1.1 +54000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 5.1 +54000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 5.9 +54000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 1.6 +54000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.2 +54000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +54000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +54000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.2 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.2 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.3 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 16.3 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 113.3 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 162.3 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 14.0 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 5.7 +54000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.1 +54000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 1.9 +54000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +54000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +54000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.1 +54000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.1 +54000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 2.0 +54000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 3.6 +54000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 10.6 +54000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 3.6 +54000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 4.2 +54000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.4 +54000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 1.4 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 34.6 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 68.1 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 176.2 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 311.6 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 331.9 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 104.0 +54000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 51.5 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 4.2 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 2.0 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 19.1 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 2.8 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 39.7 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 20.2 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 29.2 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 18.5 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 7.7 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 3.4 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 4.2 +54000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.1 +54000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 734.9 +54000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 2741.3 +54000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 4128.8 +54000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 918.0 +54000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 1808.0 +54000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 3492.4 +54000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 2686.5 +54000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 4493.0 +54000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 3052.1 +54000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 6827.8 +54000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 6129.1 +54000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 2.9 +54000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 2.8 +54000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 26.9 +54000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +54000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 28.6 +54000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 11.5 +54000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 255.4 +54000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 944.7 +54000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 3500.0 +54000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 230.3 +54000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 3.2 +54000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 2.3 +54000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 1.4 +54000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 5.9 +54000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 51.6 +54000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +54000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 1237.5 +54000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 4593.1 +54000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 1844.6 +54000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 31.1 +54000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 37.9 +54000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 18.6 +54000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 41.1 +54000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 22.5 +54000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 4.2 +54000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 36.4 +54000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 30.7 +54000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 251.6 +54000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 413.7 +54000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 305.2 +54000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 12.0 +54000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 22.8 +54000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 1.9 +54000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 6.5 +54000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 4.0 +54000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 40.7 +54000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.2 +54000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 0.9 +54000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.0 +54000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 1.4 +54000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 5.0 +54000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 7.9 +54000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 14.3 +54000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 13.4 +54000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 56.4 +54000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 20.8 +54000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 3.5 +54000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 0.9 +54000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.2 +54000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.3 +54000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.1 +54000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 0.9 +54000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 27.5 +54000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 112.9 +54000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 2.0 +54000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 5.2 +54000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +54000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +54000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 1.6 +54000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/POP/WY.POP b/NONROAD/NR08a/DATA/POP/WY.POP new file mode 100644 index 0000000..72bdf5b --- /dev/null +++ b/NONROAD/NR08a/DATA/POP/WY.POP @@ -0,0 +1,1218 @@ +This file contains the equipment population estimates for the NONROAD model. +These data drive the rest of the model in terms of which equipment types +will be processed. Unless overwritten by user options, all of the data +in this file will be processed and written to the output data file. The model +will use the closest year which comes before the episode year. Population +estimates for an entire state may be allocated to county level. + +8/12/05 25a, NR05 release: like 25 but corrects SI 50-100 bin(s) properly into 50-75 & 75-100. +12/12/05 25e, like 25a but updates OB & PWC HPavg per Samulski (Cert data). +3/31/06 25f, like 25e but adds CMV <= 50hp as SCC 22800002030 (propulsion) & 2280002040 (aux) +5/12/06 25g, like 25f but change CMV 22800002030/40 pops & life. +8/24/06 25h, like 25g but updates SI SDI rec marine 600-750 hp pop from 1 to 7500, 650 HPavg, 8 yr MedLife, 30 hrs/yr. +7/21/08 25j, like 25h but remove 2280* temporary <50hp commercial marine (was just for Loco/Marine rule modeling). + +NOTE: Many of the <25hp SI engine pop numbers have been "lumped" into either +2-stroke or 4-stroke SCC. Differing EF's are handled by Tech Type within that SCC. + +The format of the data is as follows: + + 1 - 5 FIPS code + 7 - 11 subregion code (used for subcounty estimates) + 13 - 16 year of population estimates + 18 - 27 SCC code (no globals accepted) + 29 - 68 equipment description (ignored) + 70 - 74 minimum HP range + 76 - 80 maximum HP range (ranges must match those internal to model) + 82 - 86 average HP in range (if blank model uses midpoint) + 88 - 92 expected useful life (in hours of use) + 93 - 102 flag for scrappage distribution curve (DEFAULT = standard curve) +106 - 122 population estimate +State 56000 WY Wyoming 280,028.6 +FIPS Year SCC Equipment Description HPmn HPmx HPavg Life ScrapFlag Population +------------------------------------------------------------------------------ +/POPULATION/ +56000 1999 2260001020 2-Str Snowmobiles 1 3 2.5 252 DEFAULT 80.0 +56000 1999 2260001020 2-Str Snowmobiles 3 6 4 252 DEFAULT 47.2 +56000 1999 2260001020 2-Str Snowmobiles 11 16 15.66 252 DEFAULT 50.7 +56000 1999 2260001020 2-Str Snowmobiles 16 25 20.26 252 DEFAULT 4040.6 +56000 1999 2260001020 2-Str Snowmobiles 25 40 32.86 252 DEFAULT 4078.5 +56000 1999 2260001020 2-Str Snowmobiles 40 50 45.68 252 DEFAULT 1830.6 +56000 1999 2260001020 2-Str Snowmobiles 50 75 58.48 252 DEFAULT 6449.2 +56000 1999 2260001020 2-Str Snowmobiles 75 100 85.78 252 DEFAULT 2650.6 +56000 1999 2260001020 2-Str Snowmobiles 100 175 112.4 252 DEFAULT 690.5 +56000 1998 2260001010 2-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 4307.4 +56000 1998 2265001010 4-Str Offroad Motorcycles 0 1 1 19200 DEFAULT 2121.6 +56000 1998 2260001030 2-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 2177.1 +56000 1998 2265001030 4-Str All Terrain Vehicles 0 1 1 20410 DEFAULT 18840.9 +56000 1998 2265001050 4-Str Golf Carts 6 11 9.15 400 DEFAULT 607.8 +56000 1998 2260001060 2-Str Specialty Vehicle Carts 6 11 8.046 200 DEFAULT 566.2 +56000 1998 2260001060 2-Str Specialty Vehicle Carts 25 40 37 942 DEFAULT 0.2 +56000 1998 2260001060 2-Str Specialty Vehicle Carts 50 75 55 942 DEFAULT 0.1 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 1 3 3 200 DEFAULT 0.3 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 3 6 4.424 200 DEFAULT 11.6 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 11 16 15.99 400 DEFAULT 22.0 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 16 25 19.62 750 DEFAULT 173.5 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1.8 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 4.3 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +56000 1998 2265001060 4-Str Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 1.6 +56000 1998 2267001060 LPG - Specialty Vehicle Carts 25 40 30.55 942 DEFAULT 1.8 +56000 1998 2267001060 LPG - Specialty Vehicle Carts 40 50 46 942 DEFAULT 0.0 +56000 1998 2267001060 LPG - Specialty Vehicle Carts 50 75 61.48 942 DEFAULT 4.3 +56000 1998 2267001060 LPG - Specialty Vehicle Carts 75 100 86.5 942 DEFAULT 0.0 +56000 1998 2267001060 LPG - Specialty Vehicle Carts 100 175 118.3 942 DEFAULT 1.6 +56000 1998 2265002003 4-Str Pavers 3 6 5.35 200 DEFAULT 1.4 +56000 1998 2265002003 4-Str Pavers 6 11 9.328 400 DEFAULT 10.1 +56000 1998 2265002003 4-Str Pavers 11 16 12.56 400 DEFAULT 0.5 +56000 1998 2265002003 4-Str Pavers 16 25 20.85 750 DEFAULT 3.7 +56000 1998 2265002003 4-Str Pavers 25 40 31.75 1500 DEFAULT 0.6 +56000 1998 2265002003 4-Str Pavers 50 75 62.41 3000 DEFAULT 0.7 +56000 1998 2267002003 LPG - Pavers 25 40 31.75 1500 DEFAULT 0.6 +56000 1998 2267002003 LPG - Pavers 50 75 62.41 3000 DEFAULT 0.7 +56000 1998 2260002006 2-Str Tampers/Rammers 3 6 3.75 200 DEFAULT 302.2 +56000 1998 2265002006 4-Str Tampers/Rammers 6 11 7.518 400 DEFAULT 0.7 +56000 1998 2260002009 2-Str Plate Compactors 1 3 1.649 150 DEFAULT 28.4 +56000 1998 2265002009 4-Str Plate Compactors 3 6 4.409 200 DEFAULT 144.1 +56000 1998 2265002009 4-Str Plate Compactors 6 11 8.225 400 DEFAULT 44.4 +56000 1998 2265002009 4-Str Plate Compactors 11 16 12.67 400 DEFAULT 7.9 +56000 1998 2265002015 4-Str Rollers 6 11 8.901 400 DEFAULT 10.9 +56000 1998 2265002015 4-Str Rollers 11 16 14.82 400 DEFAULT 2.0 +56000 1998 2265002015 4-Str Rollers 16 25 19.08 750 DEFAULT 5.1 +56000 1998 2265002015 4-Str Rollers 25 40 36.82 1500 DEFAULT 0.6 +56000 1998 2265002015 4-Str Rollers 50 75 60.76 3000 DEFAULT 0.4 +56000 1998 2265002015 4-Str Rollers 75 100 83 3000 DEFAULT 0.3 +56000 1998 2267002015 LPG - Rollers 25 40 36.82 1500 DEFAULT 0.6 +56000 1998 2267002015 LPG - Rollers 50 75 60.76 3000 DEFAULT 0.4 +56000 1998 2267002015 LPG - Rollers 75 100 83 3000 DEFAULT 0.3 +56000 1998 2260002021 2-Str Paving Equipment 1 3 1.823 150 DEFAULT 27.2 +56000 1998 2265002021 4-Str Paving Equipment 3 6 5.136 200 DEFAULT 79.5 +56000 1998 2265002021 4-Str Paving Equipment 6 11 8.535 400 DEFAULT 67.5 +56000 1998 2265002021 4-Str Paving Equipment 11 16 13.26 400 DEFAULT 33.8 +56000 1998 2265002021 4-Str Paving Equipment 16 25 20 750 DEFAULT 23.8 +56000 1998 2265002021 4-Str Paving Equipment 25 40 36.6 1500 DEFAULT 1.0 +56000 1998 2265002021 4-Str Paving Equipment 50 75 66 2581 DEFAULT 0.1 +56000 1998 2267002021 LPG - Paving Equipment 25 40 36.6 1500 DEFAULT 1.0 +56000 1998 2267002021 LPG - Paving Equipment 50 75 66 2581 DEFAULT 0.1 +56000 1998 2265002024 4-Str Surfacing Equipment 3 6 5.16 200 DEFAULT 11.8 +56000 1998 2265002024 4-Str Surfacing Equipment 6 11 8.918 400 DEFAULT 18.2 +56000 1998 2265002024 4-Str Surfacing Equipment 11 16 15.61 400 DEFAULT 5.3 +56000 1998 2265002024 4-Str Surfacing Equipment 16 25 19.05 750 DEFAULT 2.2 +56000 1998 2265002024 4-Str Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +56000 1998 2265002024 4-Str Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +56000 1998 2267002024 LPG - Surfacing Equipment 25 40 30.24 1500 DEFAULT 0.2 +56000 1998 2267002024 LPG - Surfacing Equipment 50 75 66 3000 DEFAULT 0.1 +56000 1998 2260002027 2-Str Signal Boards/Light Plants 1 3 2.2 150 DEFAULT 0.1 +56000 1998 2265002027 4-Str Signal Boards/Light Plants 3 6 5.032 200 DEFAULT 1.3 +56000 1998 2265002027 4-Str Signal Boards/Light Plants 6 11 8.25 400 DEFAULT 1.3 +56000 1998 2265002027 4-Str Signal Boards/Light Plants 16 25 18 750 DEFAULT 0.1 +56000 1998 2265002030 4-Str Trenchers 1 3 3 200 DEFAULT 0.1 +56000 1998 2265002030 4-Str Trenchers 3 6 5.211 200 DEFAULT 20.7 +56000 1998 2265002030 4-Str Trenchers 6 11 8.883 400 DEFAULT 20.2 +56000 1998 2265002030 4-Str Trenchers 11 16 13.44 400 DEFAULT 7.2 +56000 1998 2265002030 4-Str Trenchers 16 25 19.3 750 DEFAULT 8.2 +56000 1998 2265002030 4-Str Trenchers 25 40 30 1500 DEFAULT 1.4 +56000 1998 2265002030 4-Str Trenchers 50 75 61.69 3000 DEFAULT 1.2 +56000 1998 2265002030 4-Str Trenchers 75 100 80 3000 DEFAULT 0.9 +56000 1998 2267002030 LPG - Trenchers 25 40 30 1500 DEFAULT 1.4 +56000 1998 2267002030 LPG - Trenchers 50 75 61.69 3000 DEFAULT 1.2 +56000 1998 2267002030 LPG - Trenchers 75 100 80 3000 DEFAULT 0.9 +56000 1998 2265002033 4-Str Bore/Drill Rigs 0 1 0.9 200 DEFAULT 8.5 +56000 1998 2265002033 4-Str Bore/Drill Rigs 1 3 2.209 200 DEFAULT 174.6 +56000 1998 2265002033 4-Str Bore/Drill Rigs 3 6 4.809 200 DEFAULT 7.1 +56000 1998 2265002033 4-Str Bore/Drill Rigs 6 11 8.754 400 DEFAULT 2.2 +56000 1998 2265002033 4-Str Bore/Drill Rigs 11 16 16 400 DEFAULT 2.7 +56000 1998 2265002033 4-Str Bore/Drill Rigs 16 25 21.31 750 DEFAULT 1.8 +56000 1998 2265002033 4-Str Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.7 +56000 1998 2265002033 4-Str Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +56000 1998 2265002033 4-Str Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.1 +56000 1998 2267002033 LPG - Bore/Drill Rigs 25 40 31.39 1500 DEFAULT 0.7 +56000 1998 2267002033 LPG - Bore/Drill Rigs 50 75 61.34 2113 DEFAULT 0.7 +56000 1998 2267002033 LPG - Bore/Drill Rigs 100 175 118.1 2113 DEFAULT 1.1 +56000 1998 2260002039 2-Str Concrete/Industrial Saws 1 3 1.897 150 DEFAULT 22.3 +56000 1998 2260002039 2-Str Concrete/Industrial Saws 3 6 4.532 200 DEFAULT 107.0 +56000 1998 2265002039 4-Str Concrete/Industrial Saws 6 11 8.535 400 DEFAULT 55.0 +56000 1998 2265002039 4-Str Concrete/Industrial Saws 11 16 14.68 400 DEFAULT 11.5 +56000 1998 2265002039 4-Str Concrete/Industrial Saws 16 25 19.41 750 DEFAULT 5.1 +56000 1998 2265002039 4-Str Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.4 +56000 1998 2265002039 4-Str Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +56000 1998 2267002039 LPG - Concrete/Industrial Saws 25 40 34.79 1500 DEFAULT 1.4 +56000 1998 2267002039 LPG - Concrete/Industrial Saws 50 75 65.78 3000 DEFAULT 0.8 +56000 1998 2265002042 4-Str Cement & Mortar Mixers 1 3 2.89 200 DEFAULT 3.0 +56000 1998 2265002042 4-Str Cement & Mortar Mixers 3 6 5.22 200 DEFAULT 169.7 +56000 1998 2265002042 4-Str Cement & Mortar Mixers 6 11 8.373 400 DEFAULT 283.5 +56000 1998 2265002042 4-Str Cement & Mortar Mixers 11 16 13.52 400 DEFAULT 9.6 +56000 1998 2265002042 4-Str Cement & Mortar Mixers 16 25 17.87 750 DEFAULT 7.4 +56000 1998 2265002045 4-Str Cranes 6 11 8 400 DEFAULT 0.3 +56000 1998 2265002045 4-Str Cranes 11 16 14.02 400 DEFAULT 0.4 +56000 1998 2265002045 4-Str Cranes 16 25 18.16 750 DEFAULT 0.1 +56000 1998 2265002045 4-Str Cranes 25 40 37 1500 DEFAULT 0.0 +56000 1998 2265002045 4-Str Cranes 50 75 69.04 3000 DEFAULT 1.0 +56000 1998 2265002045 4-Str Cranes 100 175 115.2 3000 DEFAULT 0.2 +56000 1998 2267002045 LPG - Cranes 25 40 37 1500 DEFAULT 0.0 +56000 1998 2267002045 LPG - Cranes 50 75 69.04 3000 DEFAULT 1.0 +56000 1998 2267002045 LPG - Cranes 100 175 115.2 3000 DEFAULT 0.2 +56000 1998 2260002054 2-Str Crushing/Proc. Equipment 1 3 1.8 150 DEFAULT 2.7 +56000 1998 2265002054 4-Str Crushing/Proc. Equipment 3 6 4.321 200 DEFAULT 3.8 +56000 1998 2265002054 4-Str Crushing/Proc. Equipment 6 11 8.93 400 DEFAULT 7.0 +56000 1998 2265002054 4-Str Crushing/Proc. Equipment 11 16 16 400 DEFAULT 1.8 +56000 1998 2265002054 4-Str Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +56000 1998 2267002054 LPG - Crushing/Proc. Equipment 50 75 62.53 3000 DEFAULT 0.2 +56000 1998 2265002057 4-Str Rough Terrain Forklift 16 25 23 750 DEFAULT 0.1 +56000 1998 2265002057 4-Str Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +56000 1998 2265002057 4-Str Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +56000 1998 2265002057 4-Str Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.4 +56000 1998 2265002057 4-Str Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +56000 1998 2265002057 4-Str Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +56000 1998 2267002057 LPG - Rough Terrain Forklift 25 40 29 1500 DEFAULT 0.2 +56000 1998 2267002057 LPG - Rough Terrain Forklift 40 50 46 1500 DEFAULT 0.0 +56000 1998 2267002057 LPG - Rough Terrain Forklift 50 75 65.9 3000 DEFAULT 1.4 +56000 1998 2267002057 LPG - Rough Terrain Forklift 75 100 80 3000 DEFAULT 0.0 +56000 1998 2267002057 LPG - Rough Terrain Forklift 100 175 113.3 3000 DEFAULT 0.2 +56000 1998 2265002060 4-Str Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +56000 1998 2265002060 4-Str Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.9 +56000 1998 2265002060 4-Str Rubber Tire Loaders 100 175 113.0 3000 DEFAULT 0.1 +56000 1998 2267002060 LPG - Rubber Tire Loaders 25 40 37 1500 DEFAULT 0.1 +56000 1998 2267002060 LPG - Rubber Tire Loaders 50 75 70.4 3000 DEFAULT 2.9 +56000 1998 2267002060 LPG - Rubber Tire Loaders 100 175 113 3000 DEFAULT 0.1 +56000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 6 11 10.8 400 DEFAULT 0.7 +56000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 16 25 19.08 750 DEFAULT 14.6 +56000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +56000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +56000 1998 2265002066 4-Str Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +56000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 25 40 30 1500 DEFAULT 0.1 +56000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 50 75 61 3000 DEFAULT 0.3 +56000 1998 2267002066 LPG - Tractors/Loaders/Backhoes 75 100 80 3000 DEFAULT 0.0 +56000 1998 2265002072 4-Str Skid Steer Loaders 11 16 15.93 400 DEFAULT 0.6 +56000 1998 2265002072 4-Str Skid Steer Loaders 16 25 18.41 750 DEFAULT 11.6 +56000 1998 2265002072 4-Str Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.3 +56000 1998 2265002072 4-Str Skid Steer Loaders 50 75 54.44 3000 DEFAULT 1.8 +56000 1998 2265002072 4-Str Skid Steer Loaders 75 100 79 3000 DEFAULT 1.9 +56000 1998 2267002072 LPG - Skid Steer Loaders 25 40 31.93 1500 DEFAULT 3.3 +56000 1998 2267002072 LPG - Skid Steer Loaders 50 75 54.58 3000 DEFAULT 1.8 +56000 1998 2267002072 LPG - Skid Steer Loaders 75 100 79 3000 DEFAULT 1.9 +56000 1998 2265002078 4-Str Dumpers/Tenders 3 6 4.96 200 DEFAULT 10.3 +56000 1998 2265002078 4-Str Dumpers/Tenders 6 11 8.52 400 DEFAULT 33.8 +56000 1998 2265002078 4-Str Dumpers/Tenders 11 16 12.28 400 DEFAULT 5.1 +56000 1998 2265002078 4-Str Dumpers/Tenders 16 25 18.74 750 DEFAULT 6.2 +56000 1998 2265002078 4-Str Dumpers/Tenders 50 75 66 1301 DEFAULT 0.2 +56000 1998 2265002081 4-Str Other Construction Equipment 16 25 18 750 DEFAULT 0.0 +56000 1998 2265002081 4-Str Other Construction Equipment 100 175 126 3000 DEFAULT 1.2 +56000 1998 2267002081 LPG - Other Construction Equipment 100 175 126 3000 DEFAULT 1.2 +56000 1998 2268002081 CNG - Other Construction Equipment 100 175 105 3000 DEFAULT 0.1 +56000 1998 2265003010 4-Str Aerial Lifts 6 11 8.075 400 DEFAULT 1.6 +56000 1998 2265003010 4-Str Aerial Lifts 11 16 14.39 400 DEFAULT 0.5 +56000 1998 2265003010 4-Str Aerial Lifts 16 25 21.13 750 DEFAULT 10.6 +56000 1998 2265003010 4-Str Aerial Lifts 25 40 31.22 1500 DEFAULT 4.7 +56000 1998 2265003010 4-Str Aerial Lifts 50 75 59.86 3000 DEFAULT 9.7 +56000 1998 2265003010 4-Str Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +56000 1998 2267003010 LPG - Aerial Lifts 25 40 31.22 1500 DEFAULT 4.7 +56000 1998 2267003010 LPG - Aerial Lifts 50 75 59.88 3000 DEFAULT 9.7 +56000 1998 2267003010 LPG - Aerial Lifts 100 175 111.5 3000 DEFAULT 0.2 +56000 1996 2265003020 4-Str Forklifts 25 40 36.12 4500 DEFAULT 1.2 +56000 1996 2265003020 4-Str Forklifts 40 50 45.16 4500 DEFAULT 4.4 +56000 1996 2265003020 4-Str Forklifts 50 75 62.77 4500 DEFAULT 7.1 +56000 1996 2265003020 4-Str Forklifts 75 100 89.03 4500 DEFAULT 0.5 +56000 1996 2265003020 4-Str Forklifts 100 175 144.7 4500 DEFAULT 3.3 +56000 1996 2265003020 4-Str Forklifts 175 300 215.8 4500 DEFAULT 0.0 +56000 1996 2267003020 LPG - Forklifts 25 40 33.44 4500 DEFAULT 23.5 +56000 1996 2267003020 LPG - Forklifts 40 50 45.43 4500 DEFAULT 51.4 +56000 1996 2267003020 LPG - Forklifts 50 75 58.18 4500 DEFAULT 135.3 +56000 1996 2267003020 LPG - Forklifts 75 100 79.83 4500 DEFAULT 9.9 +56000 1996 2267003020 LPG - Forklifts 100 175 131.5 4500 DEFAULT 62.9 +56000 1996 2267003020 LPG - Forklifts 175 300 215.8 4500 DEFAULT 0.3 +56000 1996 2268003020 CNG - Forklifts 40 50 48 4500 DEFAULT 32.6 +56000 1998 2260003030 2-Str Sweepers/Scrubbers 1 3 1.276 150 DEFAULT 2.5 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 3 6 4.735 200 DEFAULT 2.8 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 6 11 9.855 400 DEFAULT 4.3 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 11 16 14.85 400 DEFAULT 1.2 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 16 25 18.23 750 DEFAULT 2.5 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 25 40 31.91 1500 DEFAULT 1.5 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 40 50 46 1500 DEFAULT 1.7 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.7 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 100 175 150.0 3000 DEFAULT 0.0 +56000 1998 2265003030 4-Str Sweepers/Scrubbers 300 600 411.0 3000 DEFAULT 0.0 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 25 40 31 1500 DEFAULT 1.5 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 40 50 47 1500 DEFAULT 1.7 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 50 75 63.35 3000 DEFAULT 1.7 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 75 100 90 3000 DEFAULT 0.0 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 100 175 150 3000 DEFAULT 0.0 +56000 1998 2267003030 LPG - Sweepers/Scrubbers 300 600 411 3000 DEFAULT 0.0 +56000 1998 2268003030 CNG - Sweepers/Scrubbers 175 300 190 3000 DEFAULT 0.0 +56000 1998 2260003040 2-Str Other General Industrial Eqp 1 3 2.044 150 DEFAULT 0.1 +56000 1998 2265003040 4-Str Other General Industrial Eqp 3 6 4.289 200 DEFAULT 48.1 +56000 1998 2265003040 4-Str Other General Industrial Eqp 6 11 9.063 400 DEFAULT 9.1 +56000 1998 2265003040 4-Str Other General Industrial Eqp 11 16 13.53 400 DEFAULT 4.6 +56000 1998 2265003040 4-Str Other General Industrial Eqp 16 25 18.24 750 DEFAULT 3.9 +56000 1998 2265003040 4-Str Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.3 +56000 1998 2265003040 4-Str Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.5 +56000 1998 2265003040 4-Str Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +56000 1998 2265003040 4-Str Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.2 +56000 1998 2265003040 4-Str Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +56000 1998 2267003040 LPG - Other General Industrial Eqp 25 40 30.12 1500 DEFAULT 0.3 +56000 1998 2267003040 LPG - Other General Industrial Eqp 50 75 60.96 3000 DEFAULT 0.5 +56000 1998 2267003040 LPG - Other General Industrial Eqp 75 100 80 3000 DEFAULT 0.1 +56000 1998 2267003040 LPG - Other General Industrial Eqp 100 175 136 3000 DEFAULT 0.2 +56000 1998 2267003040 LPG - Other General Industrial Eqp 175 300 195 3000 DEFAULT 0.0 +56000 1998 2268003040 CNG - Other General Industrial Eqp 75 100 98.5 3000 DEFAULT 0.0 +56000 1998 2265003050 4-Str Other Material Handling Eqp 1 3 3 200 DEFAULT 0.0 +56000 1998 2265003050 4-Str Other Material Handling Eqp 16 25 18.12 750 DEFAULT 1.0 +56000 1998 2265003050 4-Str Other Material Handling Eqp 50 75 63.00 3000 DEFAULT 0.6 +56000 1998 2265003050 4-Str Other Material Handling Eqp 75 100 86.00 3000 DEFAULT 0.0 +56000 1998 2267003050 LPG - Other Material Handling Eqp 50 75 53.6 3000 DEFAULT 0.6 +56000 1998 2267003050 LPG - Other Material Handling Eqp 75 100 86.0 3000 DEFAULT 0.0 +56000 1998 2265003060 4-Str AC\Refrigeration 6 11 9.0 400 DEFAULT 0.0 +56000 1998 2265003060 4-Str AC\Refrigeration 11 16 13.0 400 DEFAULT 0.1 +56000 1998 2265003060 4-Str AC\Refrigeration 16 25 18.0 750 DEFAULT 1.8 +56000 1998 2268003060 CNG - AC\Refrigeration 40 50 48 1500 DEFAULT 0.2 +56000 1998 2268003060 CNG - AC\Refrigeration 50 75 74 3000 DEFAULT 0.1 +56000 1998 2265003070 4-Str Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +56000 1998 2265003070 4-Str Terminal Tractors 50 75 58.19 3000 DEFAULT 0.3 +56000 1998 2265003070 4-Str Terminal Tractors 75 100 98.62 3000 DEFAULT 0.1 +56000 1998 2265003070 4-Str Terminal Tractors 100 175 114.2 3000 DEFAULT 0.6 +56000 1998 2265003070 4-Str Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +56000 1998 2267003070 LPG - Terminal Tractors 25 40 35 1500 DEFAULT 0.0 +56000 1998 2267003070 LPG - Terminal Tractors 50 75 57 3000 DEFAULT 0.3 +56000 1998 2267003070 LPG - Terminal Tractors 75 100 97 3000 DEFAULT 0.1 +56000 1998 2267003070 LPG - Terminal Tractors 100 175 104 3000 DEFAULT 0.5 +56000 1998 2267003070 LPG - Terminal Tractors 175 300 190 3000 DEFAULT 0.0 +56000 1998 2268003070 CNG - Terminal Tractors 50 75 62 3000 DEFAULT 0.0 +56000 1998 2268003070 CNG - Terminal Tractors 75 100 94 3000 DEFAULT 0.0 +56000 1998 2268003070 CNG - Terminal Tractors 100 175 125 3000 DEFAULT 0.0 +56000 1998 2268003070 CNG - Terminal Tractors 175 300 250 3000 DEFAULT 0.0 +56000 1996 2265004010 4-Str Lawn mowers (res) 1 3 2.55 47.9 DEFAULT 1216.6 +56000 1996 2265004010 4-Str Lawn mowers (res) 3 6 4.1 47.9 DEFAULT 60461.6 +56000 1996 2265004010 4-Str Lawn mowers (res) 6 11 6.24 400 DEFAULT 19.9 +56000 1996 2265004011 4-Str Lawn mowers (Com) 1 3 2.55 268 DEFAULT 25.1 +56000 1996 2265004011 4-Str Lawn mowers (Com) 3 6 4.1 268 DEFAULT 1246.1 +56000 1996 2265004011 4-Str Lawn mowers (Com) 6 11 6.24 400 DEFAULT 0.4 +56000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 0 1 0.957 39.4 DEFAULT 112.8 +56000 1998 2260004015 2-Str Rotary Tillers < 6 HP (res) 1 3 2.514 39.4 DEFAULT 797.5 +56000 1998 2265004015 4-Str Rotary Tillers < 6 HP (res) 3 6 4.712 39.4 DEFAULT 5663.6 +56000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 0 1 0.957 830.7 DEFAULT 8.4 +56000 1998 2260004016 2-Str Rotary Tillers < 6 HP (com) 1 3 2.514 830.7 DEFAULT 59.1 +56000 1998 2265004016 4-Str Rotary Tillers < 6 HP (com) 3 6 4.712 830.7 DEFAULT 419.4 +56000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 1 3 2.11 39.2 DEFAULT 9838.6 +56000 1996 2260004020 2-Str Chain Saws < 6 HP (res) 3 6 3.916 39.2 DEFAULT 0.0 +56000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 1 3 2.11 191 DEFAULT 135.0 +56000 1996 2260004021 2-Str Chain Saws < 6 HP (com) 3 6 3.916 191 DEFAULT 475.2 +56000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 0 1 0.81 35.3 DEFAULT 7354.1 +56000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 1 3 1.4 35.3 DEFAULT 18624.0 +56000 1996 2260004025 2-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 0.0 +56000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 0 1 0.81 286.8 DEFAULT 0.0 +56000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 1 3 1.4 286.8 DEFAULT 1424.8 +56000 1996 2260004026 2-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.30 286.8 DEFAULT 101.2 +56000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 3 6 3.3 35.3 DEFAULT 424.7 +56000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 6 11 7.9 35.3 DEFAULT 0.0 +56000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 11 16 16 35.3 DEFAULT 0.0 +56000 1996 2265004025 4-Str Trimmers/Edgers/Brush Cutter (res) 16 25 18.00 35.3 DEFAULT 0.0 +56000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 3 6 3.3 286.8 DEFAULT 22.3 +56000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 6 11 7.9 286.8 DEFAULT 6.0 +56000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 11 16 16 286.8 DEFAULT 0.3 +56000 1996 2265004026 4-Str Trimmers/Edgers/Brush Cutter (com) 16 25 18 286.8 DEFAULT 0.7 +56000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 0 1 0.84 40.4 DEFAULT 1088.8 +56000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 1 3 1.41 40.4 DEFAULT 12091.3 +56000 1996 2260004030 2-Str Leafblowers/Vacuums (res) 3 6 3.42 40.4 DEFAULT 0.0 +56000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 0 1 0.84 609.7 DEFAULT 0.0 +56000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 1 3 1.41 609.7 DEFAULT 432.4 +56000 1996 2260004031 2-Str Leafblowers/Vacuums (com) 3 6 3.42 609.7 DEFAULT 161.1 +56000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 3 6 3.4 40.4 DEFAULT 685.2 +56000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 6 11 8.3 40.4 DEFAULT 0.0 +56000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 11 16 14.23 40.4 DEFAULT 0.0 +56000 1996 2265004030 4-Str Leafblowers/Vacuums (res) 16 25 20.96 40.4 DEFAULT 0.0 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 3 6 3.4 609.7 DEFAULT 24.7 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 6 11 8.3 609.7 DEFAULT 241.1 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 11 16 14.2 609.7 DEFAULT 7.6 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 16 25 21.0 609.7 DEFAULT 8.3 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 25 40 31 1500 DEFAULT 0.6 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 50 75 61.21 3000 DEFAULT 4.3 +56000 1996 2265004031 4-Str Leafblowers/Vacuums (com) 100 175 120.8 3000 DEFAULT 4.3 +56000 1998 2260004035 2-Str Snowblowers (res) 1 3 2.921 12.3 DEFAULT 3326.3 +56000 1998 2260004035 2-Str Snowblowers (res) 3 6 4.686 12.3 DEFAULT 5093.6 +56000 1998 2265004035 4-Str Snowblowers (res) 6 11 8.699 12.3 DEFAULT 8593.1 +56000 1998 2265004035 4-Str Snowblowers (res) 11 16 12.59 12.3 DEFAULT 401.6 +56000 1998 2260004036 2-Str Snowblowers (com) 1 3 2.921 209.4 DEFAULT 194.5 +56000 1998 2260004036 2-Str Snowblowers (com) 3 6 4.686 209.4 DEFAULT 297.9 +56000 1998 2265004036 4-Str Snowblowers (com) 6 11 8.699 209.4 DEFAULT 502.5 +56000 1998 2265004036 4-Str Snowblowers (com) 11 16 12.59 209.4 DEFAULT 23.5 +56000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 3 6 5.105 79.3 DEFAULT 13.3 +56000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 6 11 9.153 79.3 DEFAULT 1921.9 +56000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 11 16 12.61 79.3 DEFAULT 1490.4 +56000 1998 2265004040 4-Str Rear Engine Riding Mowers (res) 16 25 18.26 750 DEFAULT 7.1 +56000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 3 6 5.105 200 DEFAULT 0.2 +56000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 6 11 9.153 627 DEFAULT 22.8 +56000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 11 16 12.61 627 DEFAULT 17.7 +56000 1998 2265004041 4-Str Rear Engine Riding Mowers (com) 16 25 18.26 750 DEFAULT 0.1 +56000 1998 2265004046 4-Str Front Mowers (com) 6 11 8 400 DEFAULT 23.6 +56000 1998 2265004046 4-Str Front Mowers (com) 11 16 13.47 400 DEFAULT 80.5 +56000 1998 2265004046 4-Str Front Mowers (com) 16 25 17 750 DEFAULT 35.6 +56000 1998 2265004046 4-Str Front Mowers (com) 25 40 32.27 1397 DEFAULT 0.5 +56000 1998 2265004051 4-Str Shredders < 6 HP (com) 1 3 2.986 200 DEFAULT 86.3 +56000 1998 2265004051 4-Str Shredders < 6 HP (com) 3 6 4.835 200 DEFAULT 169.0 +56000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 3 6 5.002 114.8 DEFAULT 47.5 +56000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 6 11 9.735 114.8 DEFAULT 1488.0 +56000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 11 16 13.61 114.8 DEFAULT 16533.8 +56000 1998 2265004055 4-Str Lawn & Garden Tractors (res) 16 25 18.41 114.8 DEFAULT 5388.7 +56000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 3 6 5.002 200 DEFAULT 0.6 +56000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 6 11 9.735 920 DEFAULT 17.6 +56000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 11 16 13.61 920 DEFAULT 195.9 +56000 1998 2265004056 4-Str Lawn & Garden Tractors (com) 16 25 18.41 920 DEFAULT 63.8 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 3 6 3.5 200 DEFAULT 0.0 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 6 11 9.791 400 DEFAULT 1.4 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 11 16 15.32 400 DEFAULT 5.9 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 16 25 20.05 750 DEFAULT 11.0 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.8 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3.6 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +56000 1998 2265004066 4-Str Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.9 +56000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 25 40 35.1 1500 DEFAULT 0.8 +56000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 50 75 60.77 3000 DEFAULT 3.6 +56000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 75 100 80 3000 DEFAULT 0.0 +56000 1998 2267004066 LPG - Chippers/Stump Grinders (com) 100 175 119 3000 DEFAULT 0.9 +56000 1998 2260004071 2-Str Commercial Turf Equipment (com) 1 3 3 988.9 DEFAULT 0.1 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 3 6 5.217 988.9 DEFAULT 290.8 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 6 11 8.771 988.9 DEFAULT 77.4 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 11 16 13.99 988.9 DEFAULT 172.6 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 16 25 19.33 988.9 DEFAULT 225.0 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 25 40 27.24 1500 DEFAULT 44.6 +56000 1998 2265004071 4-Str Commercial Turf Equipment (com) 50 75 59.59 3000 DEFAULT 0.4 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 0 1 0.914 200 DEFAULT 48.5 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 1 3 2.34 200 DEFAULT 209.9 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 3 6 4.867 200 DEFAULT 535.0 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 6 11 8.208 400 DEFAULT 353.5 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 11 16 15.54 400 DEFAULT 5.2 +56000 1998 2265004075 4-Str Other Lawn & Garden Eqp. (res) 16 25 20.04 750 DEFAULT 3.4 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 0 1 0.914 200 DEFAULT 25.6 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 1 3 2.34 200 DEFAULT 110.7 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 3 6 4.867 200 DEFAULT 282.1 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 6 11 8.208 400 DEFAULT 186.4 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 11 16 15.54 400 DEFAULT 2.7 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 16 25 20.04 750 DEFAULT 1.8 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 25 40 36.04 884 DEFAULT 0.2 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 50 75 66.00 884 DEFAULT 0.1 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 75 100 86.00 884 DEFAULT 0.0 +56000 1998 2265004076 4-Str Other Lawn & Garden Eqp. (com) 100 175 113 884 DEFAULT 0.1 +56000 1998 2265005010 4-Str 2-Wheel Tractors 6 11 8.197 400 DEFAULT 11.1 +56000 1998 2265005010 4-Str 2-Wheel Tractors 11 16 14.19 400 DEFAULT 9.6 +56000 1998 2265005015 4-Str Agricultural Tractors 16 25 20.4 750 DEFAULT 4.6 +56000 1998 2265005015 4-Str Agricultural Tractors 25 40 30.5 1500 DEFAULT 0.5 +56000 1998 2265005015 4-Str Agricultural Tractors 75 100 82.13 3000 DEFAULT 5.5 +56000 1998 2265005015 4-Str Agricultural Tractors 100 175 125 3000 DEFAULT 0.6 +56000 1998 2265005020 4-Str Combines 50 75 60 2312 DEFAULT 0.0 +56000 1998 2265005020 4-Str Combines 75 100 90 2312 DEFAULT 0.0 +56000 1998 2265005020 4-Str Combines 100 175 141.2 2312 DEFAULT 0.1 +56000 1998 2265005025 4-Str Balers 25 40 34.57 1054 DEFAULT 56.9 +56000 1998 2265005025 4-Str Balers 50 75 65.28 1054 DEFAULT 18.2 +56000 1998 2265005025 4-Str Balers 100 175 113 1054 DEFAULT 2.1 +56000 1998 2265005030 4-Str Agricultural Mowers 3 6 6 200 DEFAULT 0.4 +56000 1998 2265005030 4-Str Agricultural Mowers 6 11 9.206 400 DEFAULT 26.4 +56000 1998 2265005030 4-Str Agricultural Mowers 11 16 16 400 DEFAULT 0.4 +56000 1998 2265005030 4-Str Agricultural Mowers 16 25 18 750 DEFAULT 8.1 +56000 1998 2260005035 2-Str Sprayers 0 1 0.88 150 DEFAULT 96.6 +56000 1998 2260005035 2-Str Sprayers 1 3 2.567 150 DEFAULT 90.1 +56000 1998 2265005035 4-Str Sprayers 3 6 4.37 200 DEFAULT 350.8 +56000 1998 2265005035 4-Str Sprayers 6 11 8.204 400 DEFAULT 127.9 +56000 1998 2265005035 4-Str Sprayers 11 16 14.85 400 DEFAULT 43.9 +56000 1998 2265005035 4-Str Sprayers 16 25 20.51 750 DEFAULT 74.5 +56000 1998 2265005035 4-Str Sprayers 25 40 33.28 1300 DEFAULT 18.1 +56000 1998 2265005035 4-Str Sprayers 50 75 62 1300 DEFAULT 6.8 +56000 1998 2265005035 4-Str Sprayers 75 100 89.87 1300 DEFAULT 7.1 +56000 1998 2265005035 4-Str Sprayers 100 175 130.3 1300 DEFAULT 7.0 +56000 1998 2265005040 4-Str Tillers > 6 HP 6 11 7.501 830.7 DEFAULT 3085.0 +56000 1998 2265005040 4-Str Tillers > 6 HP 11 16 14.76 830.7 DEFAULT 7.7 +56000 1998 2265005045 4-Str Swathers 75 100 80 1235 DEFAULT 30.8 +56000 1998 2265005045 4-Str Swathers 100 175 121.9 1235 DEFAULT 17.4 +56000 1998 2265005055 4-Str Other Agricultural Equipment 3 6 4.84 200 DEFAULT 6.6 +56000 1998 2265005055 4-Str Other Agricultural Equipment 6 11 9.14 400 DEFAULT 32.2 +56000 1998 2265005055 4-Str Other Agricultural Equipment 11 16 14.11 400 DEFAULT 19.1 +56000 1998 2265005055 4-Str Other Agricultural Equipment 16 25 18.64 750 DEFAULT 17.0 +56000 1998 2265005055 4-Str Other Agricultural Equipment 25 40 32.23 1500 DEFAULT 1.3 +56000 1998 2265005055 4-Str Other Agricultural Equipment 50 75 62.38 1705 DEFAULT 2.2 +56000 1998 2265005055 4-Str Other Agricultural Equipment 75 100 88.04 1705 DEFAULT 0.3 +56000 1998 2265005055 4-Str Other Agricultural Equipment 100 175 167.4 1705 DEFAULT 12.8 +56000 1998 2265005055 4-Str Other Agricultural Equipment 175 300 230.1 1705 DEFAULT 5.3 +56000 1998 2267005055 LPG - Other Agricultural Equipment 100 175 154 1705 DEFAULT 0.3 +56000 1998 2268005055 CNG - Other Agricultural Equipment 100 175 148 1705 DEFAULT 0.6 +56000 1998 2265005060 4-Str Irrigation Sets 3 6 4.692 200 DEFAULT 3.3 +56000 1998 2265005060 4-Str Irrigation Sets 6 11 8.918 400 DEFAULT 0.9 +56000 1998 2265005060 4-Str Irrigation Sets 16 25 18 750 DEFAULT 0.0 +56000 1998 2265005060 4-Str Irrigation Sets 50 75 59.7 3000 DEFAULT 2.0 +56000 1998 2265005060 4-Str Irrigation Sets 75 100 80.25 3000 DEFAULT 4.3 +56000 1998 2265005060 4-Str Irrigation Sets 100 175 120.5 3000 DEFAULT 2.0 +56000 1998 2265005060 4-Str Irrigation Sets 175 300 210.2 3000 DEFAULT 0.9 +56000 1998 2267005060 LPG - Irrigation Sets 100 175 113 3000 DEFAULT 0.1 +56000 1998 2268005060 CNG - Irrigation Sets 25 40 32 1500 DEFAULT 1.1 +56000 1998 2268005060 CNG - Irrigation Sets 50 75 72.78 3000 DEFAULT 5.6 +56000 1998 2268005060 CNG - Irrigation Sets 75 100 96.19 3000 DEFAULT 8.0 +56000 1998 2268005060 CNG - Irrigation Sets 100 175 138.9 3000 DEFAULT 0.8 +56000 1998 2268005060 CNG - Irrigation Sets 175 300 233.3 3000 DEFAULT 0.9 +56000 1998 2268005060 CNG - Irrigation Sets 300 600 384.4 3000 DEFAULT 0.2 +56000 1998 2260006005 2-Str Generator Sets 0 1 0.8 150 DEFAULT 7.7 +56000 1998 2260006005 2-Str Generator Sets 1 3 1.663 150 DEFAULT 191.8 +56000 1998 2265006005 4-Str Generator Sets 3 6 4.567 200 DEFAULT 1349.1 +56000 1998 2265006005 4-Str Generator Sets 6 11 8.816 400 DEFAULT 3239.6 +56000 1998 2265006005 4-Str Generator Sets 11 16 14.34 400 DEFAULT 716.6 +56000 1998 2265006005 4-Str Generator Sets 16 25 20.72 750 DEFAULT 1025.4 +56000 1998 2265006005 4-Str Generator Sets 25 40 30.32 1500 DEFAULT 0.0 +56000 1998 2265006005 4-Str Generator Sets 40 50 45.99 1500 DEFAULT 0.0 +56000 1998 2265006005 4-Str Generator Sets 50 75 59.5 1955 DEFAULT 0.0 +56000 1998 2265006005 4-Str Generator Sets 75 100 81.28 1955 DEFAULT 0.0 +56000 1998 2265006005 4-Str Generator Sets 100 175 138.5 1955 DEFAULT 0.0 +56000 1998 2265006005 4-Str Generator Sets 175 300 212.6 1955 DEFAULT 0.0 +56000 1998 2267006005 LPG - Generator Sets 25 40 30.32 1500 DEFAULT 95.0 +56000 1998 2267006005 LPG - Generator Sets 40 50 45.99 1500 DEFAULT 0.7 +56000 1998 2267006005 LPG - Generator Sets 50 75 62.91 1955 DEFAULT 44.3 +56000 1998 2267006005 LPG - Generator Sets 75 100 81.28 1955 DEFAULT 39.4 +56000 1998 2267006005 LPG - Generator Sets 100 175 138.8 1955 DEFAULT 14.8 +56000 1998 2267006005 LPG - Generator Sets 175 300 239.6 1955 DEFAULT 0.3 +56000 1998 2267006005 LPG - Generator Sets 300 600 372 1955 DEFAULT 0.1 +56000 1998 2268006005 CNG - Generator Sets 25 40 31.73 1500 DEFAULT 0.9 +56000 1998 2268006005 CNG - Generator Sets 40 50 47.67 1500 DEFAULT 1.5 +56000 1998 2268006005 CNG - Generator Sets 50 75 60.44 1955 DEFAULT 30.3 +56000 1998 2268006005 CNG - Generator Sets 75 100 95.41 1955 DEFAULT 10.2 +56000 1998 2268006005 CNG - Generator Sets 100 175 147.8 1955 DEFAULT 3.5 +56000 1998 2268006005 CNG - Generator Sets 175 300 239.8 1955 DEFAULT 1.4 +56000 1998 2268006005 CNG - Generator Sets 300 600 392.6 1955 DEFAULT 0.7 +56000 1998 2260006010 2-Str Pumps 0 1 0.991 150 DEFAULT 242.8 +56000 1998 2260006010 2-Str Pumps 1 3 1.998 150 DEFAULT 438.7 +56000 1998 2260006010 2-Str Pumps 25 40 38 1500 DEFAULT 0.3 +56000 1998 2260006010 2-Str Pumps 50 75 55 3000 DEFAULT 0.1 +56000 1998 2265006010 4-Str Pumps 3 6 4.631 200 DEFAULT 628.8 +56000 1998 2265006010 4-Str Pumps 6 11 8.337 400 DEFAULT 394.4 +56000 1998 2265006010 4-Str Pumps 11 16 14.81 400 DEFAULT 38.2 +56000 1998 2265006010 4-Str Pumps 16 25 18.35 750 DEFAULT 22.3 +56000 1998 2265006010 4-Str Pumps 25 40 31.95 1500 DEFAULT 19.4 +56000 1998 2265006010 4-Str Pumps 40 50 46 1500 DEFAULT 0.2 +56000 1998 2265006010 4-Str Pumps 50 75 60.6 3000 DEFAULT 9.0 +56000 1998 2265006010 4-Str Pumps 75 100 81.25 3000 DEFAULT 0.6 +56000 1998 2265006010 4-Str Pumps 100 175 115.3 3000 DEFAULT 1.4 +56000 1998 2267006010 LPG - Pumps 25 40 31.95 1500 DEFAULT 18.7 +56000 1998 2267006010 LPG - Pumps 40 50 46 1500 DEFAULT 0.2 +56000 1998 2267006010 LPG - Pumps 50 75 57 3000 DEFAULT 9.0 +56000 1998 2267006010 LPG - Pumps 75 100 81.25 3000 DEFAULT 0.6 +56000 1998 2267006010 LPG - Pumps 100 175 115.3 3000 DEFAULT 1.3 +56000 1998 2268006010 CNG - Pumps 25 40 32 1500 DEFAULT 0.6 +56000 1998 2268006010 CNG - Pumps 50 75 52 3000 DEFAULT 0.0 +56000 1998 2268006010 CNG - Pumps 100 175 175 3000 DEFAULT 0.1 +56000 1998 2268006010 CNG - Pumps 175 300 246 3000 DEFAULT 0.1 +56000 1998 2268006010 CNG - Pumps 300 600 423.3 3000 DEFAULT 0.1 +56000 1998 2260006015 2-Str Air Compressors 1 3 2.209 150 DEFAULT 0.1 +56000 1998 2265006015 4-Str Air Compressors 3 6 5.188 200 DEFAULT 99.6 +56000 1998 2265006015 4-Str Air Compressors 6 11 9.925 400 DEFAULT 93.0 +56000 1998 2265006015 4-Str Air Compressors 11 16 13.63 400 DEFAULT 11.4 +56000 1998 2265006015 4-Str Air Compressors 16 25 18.67 750 DEFAULT 12.4 +56000 1998 2265006015 4-Str Air Compressors 25 40 31.67 1500 DEFAULT 1.8 +56000 1998 2265006015 4-Str Air Compressors 50 75 60.73 3000 DEFAULT 10.0 +56000 1998 2265006015 4-Str Air Compressors 75 100 81.69 3000 DEFAULT 2.1 +56000 1998 2265006015 4-Str Air Compressors 100 175 131.9 3000 DEFAULT 1.0 +56000 1998 2267006015 LPG - Air Compressors 25 40 31.67 1500 DEFAULT 1.8 +56000 1998 2267006015 LPG - Air Compressors 50 75 60.73 3000 DEFAULT 9.7 +56000 1998 2267006015 LPG - Air Compressors 75 100 81.69 3000 DEFAULT 2.1 +56000 1998 2267006015 LPG - Air Compressors 100 175 131.9 3000 DEFAULT 0.5 +56000 1998 2268006015 CNG - Air Compressors 50 75 52 3000 DEFAULT 0.3 +56000 1998 2268006015 CNG - Air Compressors 100 175 148 3000 DEFAULT 0.5 +56000 1998 2268006020 CNG - Gas Compressors 25 40 27.5 1500 DEFAULT 0.3 +56000 1998 2268006020 CNG - Gas Compressors 40 50 45.24 1500 DEFAULT 0.2 +56000 1998 2268006020 CNG - Gas Compressors 50 75 69 3000 DEFAULT 0.0 +56000 1998 2268006020 CNG - Gas Compressors 75 100 91.2 3000 DEFAULT 0.5 +56000 1998 2268006020 CNG - Gas Compressors 100 175 145.9 3000 DEFAULT 0.1 +56000 1998 2268006020 CNG - Gas Compressors 175 300 242.1 3000 DEFAULT 0.2 +56000 1998 2268006020 CNG - Gas Compressors 300 600 401.9 3000 DEFAULT 0.1 +56000 1998 2265006025 4-Str Welders 3 6 5.974 200 DEFAULT 13.2 +56000 1998 2265006025 4-Str Welders 6 11 9.326 400 DEFAULT 51.1 +56000 1998 2265006025 4-Str Welders 11 16 15.71 400 DEFAULT 188.3 +56000 1998 2265006025 4-Str Welders 16 25 18.20 750 DEFAULT 62.8 +56000 1998 2265006025 4-Str Welders 50 75 63.63 3000 DEFAULT 14.8 +56000 1998 2265006025 4-Str Welders 75 100 80.00 3000 DEFAULT 1.3 +56000 1998 2265006025 4-Str Welders 100 175 130.0 3000 DEFAULT 0.3 +56000 1998 2267006025 LPG - Welders 50 75 63.63 3000 DEFAULT 14.8 +56000 1998 2267006025 LPG - Welders 75 100 80.00 3000 DEFAULT 1.3 +56000 1998 2267006025 LPG - Welders 100 175 130 3000 DEFAULT 0.3 +56000 1998 2265006030 4-Str Pressure Washers 1 3 3.00 150 DEFAULT 0.3 +56000 1998 2265006030 4-Str Pressure Washers 3 6 4.827 200 DEFAULT 1663.7 +56000 1998 2265006030 4-Str Pressure Washers 6 11 9.104 400 DEFAULT 1028.9 +56000 1998 2265006030 4-Str Pressure Washers 11 16 14.13 400 DEFAULT 305.2 +56000 1998 2265006030 4-Str Pressure Washers 16 25 18.8 750 DEFAULT 57.4 +56000 1998 2265006030 4-Str Pressure Washers 25 40 36.55 1500 DEFAULT 1.0 +56000 1998 2265006030 4-Str Pressure Washers 50 75 66 2443 DEFAULT 0.1 +56000 1998 2265006030 4-Str Pressure Washers 75 100 86 2443 DEFAULT 0.0 +56000 1998 2267006030 LPG - Pressure Washers 25 40 36.55 1500 DEFAULT 1.0 +56000 1998 2267006030 LPG - Pressure Washers 50 75 66 2443 DEFAULT 0.1 +56000 1998 2267006030 LPG - Pressure Washers 75 100 86 2443 DEFAULT 0.0 +56000 1998 2260006035 2-Str Hydro Power Units 1 3 1.709 150 DEFAULT 2.4 +56000 1998 2265006035 4-Str Hydro Power Units 3 6 4.834 200 DEFAULT 11.5 +56000 1998 2265006035 4-Str Hydro Power Units 6 11 9.855 400 DEFAULT 10.5 +56000 1998 2265006035 4-Str Hydro Power Units 11 16 13.1 400 DEFAULT 8.2 +56000 1998 2265006035 4-Str Hydro Power Units 16 25 18.35 750 DEFAULT 8.4 +56000 1998 2265006035 4-Str Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +56000 1998 2265006035 4-Str Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +56000 1998 2265006035 4-Str Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +56000 1998 2265006035 4-Str Hydro Power Units 100 175 113 3000 DEFAULT 0.0 +56000 1998 2267006035 LPG - Hydro Power Units 25 40 33.91 1500 DEFAULT 0.1 +56000 1998 2267006035 LPG - Hydro Power Units 40 50 46 1500 DEFAULT 0.1 +56000 1998 2267006035 LPG - Hydro Power Units 50 75 66.79 3000 DEFAULT 0.1 +56000 1998 2267006035 LPG - Hydro Power Units 100 175 154 3000 DEFAULT 0.0 +56000 1998 2268006035 CNG - Hydro Power Units 100 175 148 3000 DEFAULT 0.0 +56000 1996 2260007005 2-Str Chain Saws > 6 HP 6 11 6.81 191 DEFAULT 42.8 +56000 1998 2265007010 4-Str Shredders > 6 HP 6 11 8.117 400 DEFAULT 271.9 +56000 1998 2265007010 4-Str Shredders > 6 HP 11 16 12.62 400 DEFAULT 15.0 +56000 1998 2265007010 4-Str Shredders > 6 HP 16 25 20.56 750 DEFAULT 4.9 +56000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 3 6 5.50 200 DEFAULT 0.5 +56000 1998 2265007015 4-Str Forest Eqp - Feller/Bunch/Skidder 6 11 9.00 400 DEFAULT 0.2 +56000 1998 2265008005 4-Str Airport Support Equipment 3 6 4.861 200 DEFAULT 0.5 +56000 1998 2265008005 4-Str Airport Support Equipment 6 11 8.171 400 DEFAULT 0.1 +56000 1998 2265008005 4-Str Airport Support Equipment 11 16 16.00 400 DEFAULT 0.2 +56000 1998 2265008005 4-Str Airport Support Equipment 16 25 18.36 750 DEFAULT 0.0 +56000 1998 2265008005 4-Str Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +56000 1998 2265008005 4-Str Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +56000 1998 2265008005 4-Str Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +56000 1998 2265008005 4-Str Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +56000 1998 2265008005 4-Str Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +56000 1998 2267008005 LPG - Airport Support Equipment 25 40 37.0 1500 DEFAULT 0.0 +56000 1998 2267008005 LPG - Airport Support Equipment 40 50 46.0 1500 DEFAULT 0.0 +56000 1998 2267008005 LPG - Airport Support Equipment 50 75 59.0 3000 DEFAULT 0.0 +56000 1998 2267008005 LPG - Airport Support Equipment 75 100 86.16 3000 DEFAULT 0.1 +56000 1998 2267008005 LPG - Airport Support Equipment 100 175 113.0 3000 DEFAULT 0.2 +56000 1998 2265010010 4-Str Other Oil Field Equipment 6 11 9.568 400 DEFAULT 147.0 +56000 1998 2265010010 4-Str Other Oil Field Equipment 11 16 12.68 400 DEFAULT 269.5 +56000 1998 2265010010 4-Str Other Oil Field Equipment 16 25 20.31 750 DEFAULT 179.0 +56000 1998 2265010010 4-Str Other Oil Field Equipment 25 40 37 1500 DEFAULT 0.0 +56000 1998 2268010010 CNG - Other Oil Field Equipment 25 40 32.59 1500 DEFAULT 175.5 +56000 1998 2268010010 CNG - Other Oil Field Equipment 40 50 43.74 1500 DEFAULT 24.0 +56000 1998 2268010010 CNG - Other Oil Field Equipment 50 75 57.77 3000 DEFAULT 74.4 +56000 1998 2268010010 CNG - Other Oil Field Equipment 75 100 81.7 3000 DEFAULT 2.7 +56000 1998 2268010010 CNG - Other Oil Field Equipment 100 175 131.1 3000 DEFAULT 7.4 +56000 1998 2268010010 CNG - Other Oil Field Equipment 600 750 725 3000 DEFAULT 0.5 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 11 16 15 2500 DEFAULT 0.8 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 16 25 21.27 2500 DEFAULT 29.3 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 25 40 28.44 2500 DEFAULT 20.2 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 40 50 46.5 2500 DEFAULT 0.1 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 50 75 62.54 4667 DEFAULT 0.4 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 75 100 88.43 4667 DEFAULT 0.4 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 100 175 144.7 4667 DEFAULT 3.6 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 175 300 252.4 4667 DEFAULT 3.2 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 300 600 373.8 7000 DEFAULT 1.4 +56000 2000 2270001060 Dsl - Specialty Vehicle Carts 1000 1200 1200 7000 DEFAULT 0.1 +56000 2000 2270002003 Dsl - Pavers 16 25 21.9 2500 DEFAULT 0.2 +56000 2000 2270002003 Dsl - Pavers 25 40 32.8 2500 DEFAULT 4.9 +56000 2000 2270002003 Dsl - Pavers 40 50 45.34 2500 DEFAULT 0.4 +56000 2000 2270002003 Dsl - Pavers 50 75 62.96 4667 DEFAULT 9.2 +56000 2000 2270002003 Dsl - Pavers 75 100 86.65 4667 DEFAULT 5.7 +56000 2000 2270002003 Dsl - Pavers 100 175 134.6 4667 DEFAULT 12.6 +56000 2000 2270002003 Dsl - Pavers 175 300 221.1 4667 DEFAULT 8.8 +56000 2000 2270002003 Dsl - Pavers 300 600 386.9 7000 DEFAULT 1.1 +56000 2000 2270002006 Dsl - Tampers/Rammers 3 6 4.2 2500 DEFAULT 4.8 +56000 2000 2270002009 Dsl - Plate Compactors 3 6 4.937 2500 DEFAULT 23.8 +56000 2000 2270002009 Dsl - Plate Compactors 6 11 8.554 2500 DEFAULT 10.6 +56000 2000 2270002009 Dsl - Plate Compactors 11 16 14.22 2500 DEFAULT 6.5 +56000 2000 2270002009 Dsl - Plate Compactors 16 25 20.35 2500 DEFAULT 0.6 +56000 2000 2270002015 Dsl - Rollers 3 6 5.438 2500 DEFAULT 2.6 +56000 2000 2270002015 Dsl - Rollers 6 11 8.695 2500 DEFAULT 4.8 +56000 2000 2270002015 Dsl - Rollers 11 16 13.55 2500 DEFAULT 5.8 +56000 2000 2270002015 Dsl - Rollers 16 25 19.68 2500 DEFAULT 10.3 +56000 2000 2270002015 Dsl - Rollers 25 40 32.52 2500 DEFAULT 14.7 +56000 2000 2270002015 Dsl - Rollers 40 50 45.81 2500 DEFAULT 13.7 +56000 2000 2270002015 Dsl - Rollers 50 75 60.74 4667 DEFAULT 13.8 +56000 2000 2270002015 Dsl - Rollers 75 100 84.76 4667 DEFAULT 37.9 +56000 2000 2270002015 Dsl - Rollers 100 175 132.2 4667 DEFAULT 35.1 +56000 2000 2270002015 Dsl - Rollers 175 300 217 4667 DEFAULT 12.0 +56000 2000 2270002015 Dsl - Rollers 300 600 420.5 7000 DEFAULT 3.6 +56000 2000 2270002018 Dsl - Scrapers 50 75 66 4667 DEFAULT 0.0 +56000 2000 2270002018 Dsl - Scrapers 100 175 160.8 4667 DEFAULT 1.0 +56000 2000 2270002018 Dsl - Scrapers 175 300 246.9 4667 DEFAULT 11.0 +56000 2000 2270002018 Dsl - Scrapers 300 600 422.5 7000 DEFAULT 14.2 +56000 2000 2270002018 Dsl - Scrapers 600 750 687.6 7000 DEFAULT 6.6 +56000 2000 2270002018 Dsl - Scrapers 750 1000 760 7000 DEFAULT 0.0 +56000 2000 2270002021 Dsl - Paving Equipment 3 6 4.62 2500 DEFAULT 2.1 +56000 2000 2270002021 Dsl - Paving Equipment 6 11 7.3 2500 DEFAULT 2.3 +56000 2000 2270002021 Dsl - Paving Equipment 11 16 14.7 2500 DEFAULT 0.2 +56000 2000 2270002021 Dsl - Paving Equipment 16 25 19.72 2500 DEFAULT 1.2 +56000 2000 2270002021 Dsl - Paving Equipment 25 40 33.82 2500 DEFAULT 1.6 +56000 2000 2270002021 Dsl - Paving Equipment 40 50 41 2500 DEFAULT 0.0 +56000 2000 2270002021 Dsl - Paving Equipment 50 75 61.05 4667 DEFAULT 1.5 +56000 2000 2270002021 Dsl - Paving Equipment 75 100 83.23 4667 DEFAULT 1.8 +56000 2000 2270002021 Dsl - Paving Equipment 100 175 131.3 4667 DEFAULT 3.3 +56000 2000 2270002021 Dsl - Paving Equipment 175 300 230.2 4667 DEFAULT 1.0 +56000 2000 2270002021 Dsl - Paving Equipment 300 600 460 7000 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 6 11 6.7 2500 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 11 16 13.3 2500 DEFAULT 0.1 +56000 2000 2270002024 Dsl - Surfacing Equipment 16 25 21.66 2500 DEFAULT 1.8 +56000 2000 2270002024 Dsl - Surfacing Equipment 25 40 31.69 2500 DEFAULT 1.5 +56000 2000 2270002024 Dsl - Surfacing Equipment 40 50 44.9 2500 DEFAULT 0.5 +56000 2000 2270002024 Dsl - Surfacing Equipment 50 75 54.93 4667 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 75 100 80.9 4667 DEFAULT 1.4 +56000 2000 2270002024 Dsl - Surfacing Equipment 100 175 126.5 4667 DEFAULT 0.4 +56000 2000 2270002024 Dsl - Surfacing Equipment 175 300 233 4667 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 300 600 492.6 7000 DEFAULT 0.4 +56000 2000 2270002024 Dsl - Surfacing Equipment 600 750 713.5 7000 DEFAULT 0.2 +56000 2000 2270002024 Dsl - Surfacing Equipment 750 1000 897 7000 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 1000 1200 1050 7000 DEFAULT 0.0 +56000 2000 2270002024 Dsl - Surfacing Equipment 1200 2000 1544 7000 DEFAULT 0.0 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 3 6 5.4 2500 DEFAULT 3.9 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 6 11 7.775 2500 DEFAULT 9.1 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 11 16 13.73 2500 DEFAULT 4.8 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 16 25 22.18 2500 DEFAULT 76.7 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 25 40 30.32 2500 DEFAULT 23.5 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 40 50 42.2 2500 DEFAULT 0.0 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 50 75 59.28 4667 DEFAULT 1.7 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 75 100 89 4667 DEFAULT 1.0 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 100 175 157.5 4667 DEFAULT 0.8 +56000 2000 2270002027 Dsl - Signal Boards/Light Plants 175 300 216 4667 DEFAULT 0.2 +56000 2000 2270002030 Dsl - Trenchers 3 6 5 2500 DEFAULT 0.0 +56000 2000 2270002030 Dsl - Trenchers 6 11 9.6 2500 DEFAULT 0.0 +56000 2000 2270002030 Dsl - Trenchers 11 16 15.5 2500 DEFAULT 0.1 +56000 2000 2270002030 Dsl - Trenchers 16 25 21.6 2500 DEFAULT 0.2 +56000 2000 2270002030 Dsl - Trenchers 25 40 34.1 2500 DEFAULT 10.6 +56000 2000 2270002030 Dsl - Trenchers 40 50 45.05 2500 DEFAULT 26.4 +56000 2000 2270002030 Dsl - Trenchers 50 75 61.02 4667 DEFAULT 44.0 +56000 2000 2270002030 Dsl - Trenchers 75 100 86.75 4667 DEFAULT 17.8 +56000 2000 2270002030 Dsl - Trenchers 100 175 134.3 4667 DEFAULT 5.5 +56000 2000 2270002030 Dsl - Trenchers 175 300 250.5 4667 DEFAULT 3.7 +56000 2000 2270002030 Dsl - Trenchers 300 600 414.6 7000 DEFAULT 1.9 +56000 2000 2270002030 Dsl - Trenchers 600 750 741.7 7000 DEFAULT 0.2 +56000 2000 2270002030 Dsl - Trenchers 1200 2000 1500 7000 DEFAULT 0.0 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 6 11 8 2500 DEFAULT 0.1 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 11 16 14.5 2500 DEFAULT 0.2 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 16 25 23.48 2500 DEFAULT 0.4 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 25 40 31.48 2500 DEFAULT 6.5 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 40 50 44.93 2500 DEFAULT 6.6 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 50 75 61.85 4667 DEFAULT 10.8 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 75 100 85.12 4667 DEFAULT 11.0 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 100 175 131.8 4667 DEFAULT 16.1 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 175 300 239.2 4667 DEFAULT 14.0 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 300 600 447.1 7000 DEFAULT 8.1 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 600 750 690.5 7000 DEFAULT 1.9 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 750 1000 869 7000 DEFAULT 1.0 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 1000 1200 1050 7000 DEFAULT 0.0 +56000 2000 2270002033 Dsl - Bore/Drill Rigs 1200 2000 1500 7000 DEFAULT 0.0 +56000 2000 2270002036 Dsl - Excavators 3 6 6 2500 DEFAULT 0.1 +56000 2000 2270002036 Dsl - Excavators 6 11 7.967 2500 DEFAULT 0.7 +56000 2000 2270002036 Dsl - Excavators 11 16 13.14 2500 DEFAULT 1.5 +56000 2000 2270002036 Dsl - Excavators 16 25 21.54 2500 DEFAULT 6.5 +56000 2000 2270002036 Dsl - Excavators 25 40 33.05 2500 DEFAULT 13.4 +56000 2000 2270002036 Dsl - Excavators 40 50 45.77 2500 DEFAULT 7.2 +56000 2000 2270002036 Dsl - Excavators 50 75 61.3 4667 DEFAULT 5.6 +56000 2000 2270002036 Dsl - Excavators 75 100 91.67 4667 DEFAULT 25.1 +56000 2000 2270002036 Dsl - Excavators 100 175 137.6 4667 DEFAULT 93.7 +56000 2000 2270002036 Dsl - Excavators 175 300 233.3 4667 DEFAULT 68.5 +56000 2000 2270002036 Dsl - Excavators 300 600 410.6 7000 DEFAULT 18.2 +56000 2000 2270002036 Dsl - Excavators 600 750 719.4 7000 DEFAULT 0.6 +56000 2000 2270002036 Dsl - Excavators 750 1000 884 7000 DEFAULT 0.7 +56000 2000 2270002036 Dsl - Excavators 1000 1200 1200 7000 DEFAULT 0.0 +56000 2000 2270002036 Dsl - Excavators 1200 2000 1768 7000 DEFAULT 0.3 +56000 2000 2270002036 Dsl - Excavators 2000 3000 2350 7000 DEFAULT 0.0 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 6 11 10 2500 DEFAULT 0.6 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 16 25 20.12 2500 DEFAULT 1.0 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 25 40 32.94 2500 DEFAULT 5.8 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 40 50 43.2 2500 DEFAULT 0.2 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 50 75 57.85 4667 DEFAULT 1.9 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 75 100 81.47 4667 DEFAULT 2.7 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 100 175 120.9 4667 DEFAULT 0.3 +56000 2000 2270002039 Dsl - Concrete/Industrial Saws 175 300 241.5 4667 DEFAULT 0.0 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 3 6 5.983 2500 DEFAULT 11.8 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 6 11 8.082 2500 DEFAULT 7.0 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 11 16 13.08 2500 DEFAULT 1.3 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 16 25 21.08 2500 DEFAULT 1.2 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 25 40 32.78 2500 DEFAULT 0.9 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 40 50 45.5 2500 DEFAULT 0.0 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 50 75 59.56 4667 DEFAULT 1.5 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 75 100 83.46 4667 DEFAULT 2.5 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 100 175 128.9 4667 DEFAULT 0.8 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 175 300 253.1 4667 DEFAULT 0.3 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 300 600 402.3 7000 DEFAULT 0.3 +56000 2000 2270002042 Dsl - Cement & Mortar Mixers 600 750 704.7 7000 DEFAULT 0.1 +56000 2000 2270002045 Dsl - Cranes 16 25 23 2500 DEFAULT 0.0 +56000 2000 2270002045 Dsl - Cranes 25 40 39.4 2500 DEFAULT 1.1 +56000 2000 2270002045 Dsl - Cranes 40 50 41.7 2500 DEFAULT 0.0 +56000 2000 2270002045 Dsl - Cranes 50 75 64 4667 DEFAULT 0.6 +56000 2000 2270002045 Dsl - Cranes 75 100 88.14 4667 DEFAULT 5.5 +56000 2000 2270002045 Dsl - Cranes 100 175 145.2 4667 DEFAULT 20.8 +56000 2000 2270002045 Dsl - Cranes 175 300 237.7 4667 DEFAULT 21.2 +56000 2000 2270002045 Dsl - Cranes 300 600 412 7000 DEFAULT 13.1 +56000 2000 2270002045 Dsl - Cranes 600 750 669 7000 DEFAULT 0.6 +56000 2000 2270002045 Dsl - Cranes 750 1000 882.8 7000 DEFAULT 0.2 +56000 2000 2270002045 Dsl - Cranes 1000 1200 1071 7000 DEFAULT 0.0 +56000 2000 2270002048 Dsl - Graders 25 40 35 2500 DEFAULT 0.0 +56000 2000 2270002048 Dsl - Graders 40 50 48.3 2500 DEFAULT 0.0 +56000 2000 2270002048 Dsl - Graders 50 75 59.54 4667 DEFAULT 0.2 +56000 2000 2270002048 Dsl - Graders 75 100 84.21 4667 DEFAULT 1.9 +56000 2000 2270002048 Dsl - Graders 100 175 140.8 4667 DEFAULT 19.3 +56000 2000 2270002048 Dsl - Graders 175 300 231.2 4667 DEFAULT 32.3 +56000 2000 2270002048 Dsl - Graders 300 600 341.8 7000 DEFAULT 3.7 +56000 2000 2270002048 Dsl - Graders 600 750 750 7000 DEFAULT 0.2 +56000 2000 2270002051 Dsl - Off-highway Trucks 100 175 160.5 4667 DEFAULT 0.1 +56000 2000 2270002051 Dsl - Off-highway Trucks 175 300 244.3 4667 DEFAULT 4.9 +56000 2000 2270002051 Dsl - Off-highway Trucks 300 600 419.9 7000 DEFAULT 10.3 +56000 2000 2270002051 Dsl - Off-highway Trucks 600 750 688.1 7000 DEFAULT 5.8 +56000 2000 2270002051 Dsl - Off-highway Trucks 750 1000 868 7000 DEFAULT 2.8 +56000 2000 2270002051 Dsl - Off-highway Trucks 1000 1200 1153 7000 DEFAULT 0.9 +56000 2000 2270002051 Dsl - Off-highway Trucks 1200 2000 1787 7000 DEFAULT 4.5 +56000 2000 2270002051 Dsl - Off-highway Trucks 2000 3000 2424 7000 DEFAULT 1.1 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 16 25 20.42 2500 DEFAULT 0.1 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 25 40 32.1 2500 DEFAULT 0.2 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 40 50 45.6 2500 DEFAULT 0.7 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 50 75 60.74 4667 DEFAULT 7.4 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 75 100 88.98 4667 DEFAULT 1.8 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 100 175 132.3 4667 DEFAULT 2.8 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 175 300 241.3 4667 DEFAULT 1.1 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 300 600 423.2 7000 DEFAULT 2.8 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 600 750 666.3 7000 DEFAULT 0.2 +56000 2000 2270002054 Dsl - Crushing/Proc. Equipment 750 1000 920 7000 DEFAULT 0.0 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 11 16 13.5 2500 DEFAULT 0.0 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 16 25 22.45 2500 DEFAULT 0.4 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 25 40 33.36 2500 DEFAULT 8.9 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 40 50 45.06 2500 DEFAULT 9.9 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 50 75 61.42 4667 DEFAULT 19.6 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 75 100 85.6 4667 DEFAULT 111.9 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 100 175 126 4667 DEFAULT 57.5 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 175 300 229.1 4667 DEFAULT 3.0 +56000 2000 2270002057 Dsl - Rough Terrain Forklifts 300 600 346.1 7000 DEFAULT 3.9 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 6 11 8.336 2500 DEFAULT 0.0 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 11 16 15.4 2500 DEFAULT 0.0 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 16 25 22.83 2500 DEFAULT 0.1 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 25 40 34.38 2500 DEFAULT 4.5 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 40 50 45.44 2500 DEFAULT 5.1 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 50 75 61.7 4667 DEFAULT 7.3 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 75 100 85.48 4667 DEFAULT 31.3 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 100 175 136.3 4667 DEFAULT 79.2 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 175 300 230 4667 DEFAULT 75.6 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 300 600 419.4 7000 DEFAULT 55.5 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 600 750 692.2 7000 DEFAULT 4.2 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 750 1000 866.3 7000 DEFAULT 2.0 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 1000 1200 1082 7000 DEFAULT 0.4 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 1200 2000 1867 7000 DEFAULT 2.5 +56000 2000 2270002060 Dsl - Rubber Tire Loaders 2000 3000 2243 7000 DEFAULT 0.1 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 11 16 15.5 2500 DEFAULT 0.0 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 16 25 22.78 2500 DEFAULT 4.6 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 25 40 32.49 2500 DEFAULT 9.1 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 40 50 46.23 2500 DEFAULT 4.9 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 50 75 62.46 4667 DEFAULT 90.9 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 75 100 87.17 4667 DEFAULT 321.2 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 100 175 120.7 4667 DEFAULT 213.7 +56000 2000 2270002066 Dsl - Tractors/Loaders/Backhoes 175 300 200 4667 DEFAULT 1.2 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 25 40 25.75 2500 DEFAULT 0.0 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 40 50 42.5 2500 DEFAULT 0.0 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 50 75 57.98 4667 DEFAULT 0.9 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 75 100 87.86 4667 DEFAULT 27.1 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 100 175 136.1 4667 DEFAULT 61.3 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 175 300 235.5 4667 DEFAULT 53.1 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 300 600 425.3 7000 DEFAULT 26.9 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 600 750 707 7000 DEFAULT 10.6 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 750 1000 923 7000 DEFAULT 2.2 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1000 1200 1065 7000 DEFAULT 3.8 +56000 2000 2270002069 Dsl - Crawler Tractor/Dozers 1200 2000 1473 7000 DEFAULT 0.0 +56000 2000 2270002072 Dsl - Skid Steer Loaders 6 11 9.5 2500 DEFAULT 0.2 +56000 2000 2270002072 Dsl - Skid Steer Loaders 11 16 15.47 2500 DEFAULT 40.1 +56000 2000 2270002072 Dsl - Skid Steer Loaders 16 25 20.3 2500 DEFAULT 88.9 +56000 2000 2270002072 Dsl - Skid Steer Loaders 25 40 34.97 2500 DEFAULT 174.0 +56000 2000 2270002072 Dsl - Skid Steer Loaders 40 50 44.94 2500 DEFAULT 68.8 +56000 2000 2270002072 Dsl - Skid Steer Loaders 50 75 57.67 4667 DEFAULT 377.9 +56000 2000 2270002072 Dsl - Skid Steer Loaders 75 100 84.35 4667 DEFAULT 248.4 +56000 2000 2270002072 Dsl - Skid Steer Loaders 100 175 115.3 4667 DEFAULT 6.3 +56000 2000 2270002075 Dsl - Off-Highway Tractors 100 175 144.5 4667 DEFAULT 0.0 +56000 2000 2270002075 Dsl - Off-Highway Tractors 175 300 290 4667 DEFAULT 0.8 +56000 2000 2270002075 Dsl - Off-Highway Tractors 300 600 410.3 7000 DEFAULT 1.4 +56000 2000 2270002075 Dsl - Off-Highway Tractors 600 750 676 7000 DEFAULT 3.5 +56000 2000 2270002075 Dsl - Off-Highway Tractors 750 1000 907.8 7000 DEFAULT 1.1 +56000 2000 2270002075 Dsl - Off-Highway Tractors 1000 1200 1139 7000 DEFAULT 0.1 +56000 2000 2270002075 Dsl - Off-Highway Tractors 1200 2000 1516 7000 DEFAULT 0.9 +56000 2000 2270002075 Dsl - Off-Highway Tractors 2000 3000 2283 7000 DEFAULT 0.0 +56000 2000 2270002078 Dsl - Dumpers/Tenders 6 11 10 2500 DEFAULT 1.7 +56000 2000 2270002078 Dsl - Dumpers/Tenders 11 16 14.31 2500 DEFAULT 1.6 +56000 2000 2270002078 Dsl - Dumpers/Tenders 16 25 23.75 2500 DEFAULT 1.2 +56000 2000 2270002078 Dsl - Dumpers/Tenders 25 40 32.15 2500 DEFAULT 1.3 +56000 2000 2270002078 Dsl - Dumpers/Tenders 40 50 48.5 2500 DEFAULT 0.3 +56000 2000 2270002078 Dsl - Dumpers/Tenders 50 75 57.8 4667 DEFAULT 0.1 +56000 2000 2270002078 Dsl - Dumpers/Tenders 75 100 85.4 4667 DEFAULT 0.9 +56000 2000 2270002078 Dsl - Dumpers/Tenders 100 175 109.7 4667 DEFAULT 0.3 +56000 2000 2270002081 Dsl - Other Construction Equipment 6 11 7.9 2500 DEFAULT 0.1 +56000 2000 2270002081 Dsl - Other Construction Equipment 11 16 15 2500 DEFAULT 0.0 +56000 2000 2270002081 Dsl - Other Construction Equipment 16 25 21.1 2500 DEFAULT 0.2 +56000 2000 2270002081 Dsl - Other Construction Equipment 25 40 34.14 2500 DEFAULT 0.7 +56000 2000 2270002081 Dsl - Other Construction Equipment 40 50 44.43 2500 DEFAULT 0.1 +56000 2000 2270002081 Dsl - Other Construction Equipment 50 75 59.85 4667 DEFAULT 0.7 +56000 2000 2270002081 Dsl - Other Construction Equipment 75 100 84.28 4667 DEFAULT 0.7 +56000 2000 2270002081 Dsl - Other Construction Equipment 100 175 137.7 4667 DEFAULT 4.7 +56000 2000 2270002081 Dsl - Other Construction Equipment 175 300 233.7 4667 DEFAULT 4.2 +56000 2000 2270002081 Dsl - Other Construction Equipment 300 600 442.6 7000 DEFAULT 10.2 +56000 2000 2270002081 Dsl - Other Construction Equipment 600 750 710.2 7000 DEFAULT 1.9 +56000 2000 2270002081 Dsl - Other Construction Equipment 750 1000 827.5 7000 DEFAULT 0.0 +56000 2000 2270002081 Dsl - Other Construction Equipment 1000 1200 1200 7000 DEFAULT 0.1 +56000 2000 2270003010 Dsl - Aerial Lifts 6 11 8 2500 DEFAULT 0.1 +56000 2000 2270003010 Dsl - Aerial Lifts 11 16 13.18 2500 DEFAULT 0.6 +56000 2000 2270003010 Dsl - Aerial Lifts 16 25 21.63 2500 DEFAULT 8.6 +56000 2000 2270003010 Dsl - Aerial Lifts 25 40 33.05 2500 DEFAULT 10.7 +56000 2000 2270003010 Dsl - Aerial Lifts 40 50 45.46 2500 DEFAULT 2.5 +56000 2000 2270003010 Dsl - Aerial Lifts 50 75 60.46 4667 DEFAULT 17.9 +56000 2000 2270003010 Dsl - Aerial Lifts 75 100 83.86 4667 DEFAULT 6.4 +56000 2000 2270003010 Dsl - Aerial Lifts 100 175 113 4667 DEFAULT 0.1 +56000 2000 2270003020 Dsl - Forklifts 11 16 15 2500 DEFAULT 0.0 +56000 2000 2270003020 Dsl - Forklifts 16 25 25 2500 DEFAULT 0.0 +56000 2000 2270003020 Dsl - Forklifts 25 40 34.68 2500 DEFAULT 0.0 +56000 2000 2270003020 Dsl - Forklifts 40 50 47.02 2500 DEFAULT 0.4 +56000 2000 2270003020 Dsl - Forklifts 50 75 61.74 4667 DEFAULT 13.5 +56000 2000 2270003020 Dsl - Forklifts 75 100 85.48 4667 DEFAULT 13.6 +56000 2000 2270003020 Dsl - Forklifts 100 175 135.6 4667 DEFAULT 4.9 +56000 2000 2270003020 Dsl - Forklifts 175 300 220.3 4667 DEFAULT 0.8 +56000 2000 2270003020 Dsl - Forklifts 300 600 353.9 7000 DEFAULT 1.0 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 3 6 5 2500 DEFAULT 0.2 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 6 11 11 2500 DEFAULT 0.0 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 11 16 13.65 2500 DEFAULT 0.0 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 16 25 21.69 2500 DEFAULT 1.4 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 25 40 34.83 2500 DEFAULT 3.3 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 40 50 43.64 2500 DEFAULT 2.3 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 50 75 60.81 4667 DEFAULT 2.2 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 75 100 81.86 4667 DEFAULT 8.0 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 100 175 134.3 4667 DEFAULT 9.0 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 175 300 216.7 4667 DEFAULT 2.4 +56000 2000 2270003030 Dsl - Sweepers/Scrubbers 300 600 363.8 7000 DEFAULT 0.0 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 3 6 4.367 2500 DEFAULT 1.6 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 6 11 9.58 2500 DEFAULT 0.3 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 11 16 13.72 2500 DEFAULT 0.2 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 16 25 22.62 2500 DEFAULT 0.3 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 25 40 32.48 2500 DEFAULT 1.1 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 40 50 44.31 2500 DEFAULT 0.4 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 50 75 61.31 4667 DEFAULT 3.0 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 75 100 86.11 4667 DEFAULT 9.3 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 100 175 130.4 4667 DEFAULT 13.3 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 175 300 234.2 4667 DEFAULT 4.1 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 300 600 389.4 7000 DEFAULT 0.4 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 600 750 650 7000 DEFAULT 0.1 +56000 2000 2270003040 Dsl - Other General Industrial Eqp 1200 2000 1350 7000 DEFAULT 0.0 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 6 11 8.5 2500 DEFAULT 0.0 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 16 25 19 2500 DEFAULT 0.0 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 25 40 37.2 2500 DEFAULT 0.3 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 50 75 64.73 4667 DEFAULT 1.3 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 75 100 86.43 4667 DEFAULT 0.4 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 100 175 128.9 4667 DEFAULT 1.8 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 175 300 245.2 4667 DEFAULT 0.7 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 300 600 428.3 7000 DEFAULT 0.1 +56000 2000 2270003050 Dsl - Other Material Handling Eqp 1000 1200 1071 7000 DEFAULT 0.0 +56000 2000 2270003060 Dsl - AC\Refrigeration 6 11 9.6 2500 DEFAULT 11.0 +56000 2000 2270003060 Dsl - AC\Refrigeration 11 16 13.24 2500 DEFAULT 33.7 +56000 2000 2270003060 Dsl - AC\Refrigeration 16 25 19.45 2500 DEFAULT 31.6 +56000 2000 2270003060 Dsl - AC\Refrigeration 25 40 31.83 2500 DEFAULT 8.1 +56000 2000 2270003060 Dsl - AC\Refrigeration 40 50 44.9 2500 DEFAULT 59.4 +56000 2000 2270003060 Dsl - AC\Refrigeration 50 75 57 4667 DEFAULT 228.3 +56000 2000 2270003060 Dsl - AC\Refrigeration 75 100 76 4667 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 6 11 8.3 2500 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 11 16 11.7 2500 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 16 25 21.2 2500 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 25 40 38.5 2500 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 40 50 41 2500 DEFAULT 0.0 +56000 2000 2270003070 Dsl - Terminal Tractors 50 75 62.82 4667 DEFAULT 1.7 +56000 2000 2270003070 Dsl - Terminal Tractors 75 100 84.18 4667 DEFAULT 3.0 +56000 2000 2270003070 Dsl - Terminal Tractors 100 175 141.1 4667 DEFAULT 4.8 +56000 2000 2270003070 Dsl - Terminal Tractors 175 300 221.4 4667 DEFAULT 7.9 +56000 2000 2270003070 Dsl - Terminal Tractors 300 600 419 7000 DEFAULT 0.2 +56000 2000 2270003070 Dsl - Terminal Tractors 600 750 655 7000 DEFAULT 0.0 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 3 6 5.667 2500 DEFAULT 0.2 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 25 40 28 2500 DEFAULT 0.1 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 40 50 49 2500 DEFAULT 0.0 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 50 75 61 4667 DEFAULT 0.0 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 75 100 95 4667 DEFAULT 0.0 +56000 2000 2270004031 Dsl - Leafblowers/Vacuums (com) 100 175 118.5 4667 DEFAULT 0.0 +56000 2000 2270004036 Dsl - Snowblowers (com) 100 175 165 4667 DEFAULT 0.0 +56000 2000 2270004036 Dsl - Snowblowers (com) 175 300 251.8 4667 DEFAULT 0.3 +56000 2000 2270004036 Dsl - Snowblowers (com) 300 600 384.4 7000 DEFAULT 0.4 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 3 6 5 2500 DEFAULT 0.2 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 6 11 7.35 2500 DEFAULT 0.0 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 11 16 14.12 2500 DEFAULT 6.7 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 16 25 20.87 2500 DEFAULT 92.6 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 25 40 31.28 2500 DEFAULT 44.9 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 40 50 44.66 2500 DEFAULT 10.0 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 50 75 55.08 4667 DEFAULT 16.5 +56000 2000 2270004046 Dsl - Commercial Mowers (com) 75 100 82.63 4667 DEFAULT 3.5 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 6 11 10.5 2500 DEFAULT 0.0 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 11 16 14.62 2500 DEFAULT 1.6 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 16 25 20.03 2500 DEFAULT 40.6 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 25 40 26.33 2500 DEFAULT 0.7 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 40 50 44.5 2500 DEFAULT 0.4 +56000 2000 2270004056 Dsl - Lawn & Garden Tractors (com) 75 100 80 4667 DEFAULT 0.6 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 16 25 25 2500 DEFAULT 0.0 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 25 40 37.2 2500 DEFAULT 0.2 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 40 50 47.12 2500 DEFAULT 1.6 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 50 75 61.07 4667 DEFAULT 6.0 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 75 100 84.47 4667 DEFAULT 26.4 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 100 175 121.3 4667 DEFAULT 8.4 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 175 300 241.7 4667 DEFAULT 5.1 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 300 600 434.4 7000 DEFAULT 4.3 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 600 750 702.9 7000 DEFAULT 1.0 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 750 1000 947.8 7000 DEFAULT 0.2 +56000 2000 2270004066 Dsl - Chippers/Stump Grinders (com) 1000 1200 1095 7000 DEFAULT 0.0 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 6 11 7.75 2500 DEFAULT 0.0 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 11 16 13.56 2500 DEFAULT 1.0 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 16 25 21.15 2500 DEFAULT 1.2 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 25 40 34.57 2500 DEFAULT 2.3 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 40 50 45.47 2500 DEFAULT 1.1 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 50 75 62.87 4667 DEFAULT 0.0 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 75 100 83.82 4667 DEFAULT 1.2 +56000 2000 2270004071 Dsl - Commercial Turf Equipment (com) 100 175 113 4667 DEFAULT 1.0 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 11 16 15 2500 DEFAULT 0.0 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 16 25 22.9 2500 DEFAULT 0.2 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 25 40 32 2500 DEFAULT 0.0 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 40 50 47 2500 DEFAULT 0.0 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 50 75 51 4667 DEFAULT 0.2 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 75 100 80 4667 DEFAULT 0.1 +56000 2000 2270004076 Dsl - Other Lawn & Garden Eqp. (com) 100 175 131 4667 DEFAULT 0.0 +56000 2000 2270005010 Dsl - 2-Wheel Tractors 3 6 6 2500 DEFAULT 0.4 +56000 2000 2270005010 Dsl - 2-Wheel Tractors 6 11 8.333 2500 DEFAULT 1.5 +56000 2000 2270005015 Dsl - Agricultural Tractors 11 16 16 2500 DEFAULT 0.0 +56000 2000 2270005015 Dsl - Agricultural Tractors 16 25 20.97 2500 DEFAULT 339.6 +56000 2000 2270005015 Dsl - Agricultural Tractors 25 40 32.48 2500 DEFAULT 913.4 +56000 2000 2270005015 Dsl - Agricultural Tractors 40 50 46.39 2500 DEFAULT 521.9 +56000 2000 2270005015 Dsl - Agricultural Tractors 50 75 62.18 4667 DEFAULT 826.4 +56000 2000 2270005015 Dsl - Agricultural Tractors 75 100 86.14 4667 DEFAULT 728.3 +56000 2000 2270005015 Dsl - Agricultural Tractors 100 175 133.6 4667 DEFAULT 1213.6 +56000 2000 2270005015 Dsl - Agricultural Tractors 175 300 236.5 4667 DEFAULT 1046.3 +56000 2000 2270005015 Dsl - Agricultural Tractors 300 600 415.2 7000 DEFAULT 541.4 +56000 2000 2270005015 Dsl - Agricultural Tractors 600 750 635 7000 DEFAULT 0.1 +56000 2000 2270005020 Dsl - Combines 75 100 91 4667 DEFAULT 57.1 +56000 2000 2270005020 Dsl - Combines 100 175 141.8 4667 DEFAULT 523.4 +56000 2000 2270005020 Dsl - Combines 175 300 231.5 4667 DEFAULT 624.2 +56000 2000 2270005020 Dsl - Combines 300 600 345.8 7000 DEFAULT 32.2 +56000 2000 2270005025 Dsl - Balers 40 50 50 2500 DEFAULT 0.6 +56000 2000 2270005025 Dsl - Balers 50 75 61.8 4667 DEFAULT 13.6 +56000 2000 2270005025 Dsl - Balers 75 100 85.83 4667 DEFAULT 5.0 +56000 2000 2270005025 Dsl - Balers 100 175 140 4667 DEFAULT 4.3 +56000 2000 2270005025 Dsl - Balers 175 300 177 4667 DEFAULT 0.2 +56000 2000 2270005030 Dsl - Agricultural Mowers 75 100 76 4667 DEFAULT 1.3 +56000 2000 2270005035 Dsl - Sprayers 16 25 22.6 2500 DEFAULT 6.8 +56000 2000 2270005035 Dsl - Sprayers 25 40 32.06 2500 DEFAULT 3.1 +56000 2000 2270005035 Dsl - Sprayers 40 50 47.97 2500 DEFAULT 1.9 +56000 2000 2270005035 Dsl - Sprayers 50 75 63.66 4667 DEFAULT 5.2 +56000 2000 2270005035 Dsl - Sprayers 75 100 86.24 4667 DEFAULT 31.9 +56000 2000 2270005035 Dsl - Sprayers 100 175 128.4 4667 DEFAULT 61.5 +56000 2000 2270005035 Dsl - Sprayers 175 300 226.6 4667 DEFAULT 66.9 +56000 2000 2270005035 Dsl - Sprayers 300 600 358.5 7000 DEFAULT 18.1 +56000 2000 2270005040 Dsl - Tillers > 6 HP 3 6 6 2500 DEFAULT 0.1 +56000 2000 2270005040 Dsl - Tillers > 6 HP 175 300 245 4667 DEFAULT 0.0 +56000 2000 2270005040 Dsl - Tillers > 6 HP 300 600 424.5 7000 DEFAULT 0.1 +56000 2000 2270005045 Dsl - Swathers 50 75 70 4667 DEFAULT 38.5 +56000 2000 2270005045 Dsl - Swathers 75 100 85 4667 DEFAULT 182.1 +56000 2000 2270005045 Dsl - Swathers 100 175 131.3 4667 DEFAULT 36.0 +56000 2000 2270005045 Dsl - Swathers 175 300 200 4667 DEFAULT 1.6 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 6 11 10.5 2500 DEFAULT 0.1 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 11 16 14.38 2500 DEFAULT 1.2 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 16 25 20.87 2500 DEFAULT 4.3 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 25 40 32.08 2500 DEFAULT 2.3 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 40 50 45.02 2500 DEFAULT 1.4 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 50 75 62.64 4667 DEFAULT 10.9 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 75 100 84.95 4667 DEFAULT 13.6 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 100 175 135.5 4667 DEFAULT 33.9 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 175 300 230.4 4667 DEFAULT 34.3 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 300 600 375.1 7000 DEFAULT 14.4 +56000 2000 2270005055 Dsl - Other Agricultural Equipment 750 1000 965 7000 DEFAULT 0.0 +56000 2000 2270005060 Dsl - Irrigation Sets 6 11 8 2500 DEFAULT 0.0 +56000 2000 2270005060 Dsl - Irrigation Sets 11 16 15.6 2500 DEFAULT 0.0 +56000 2000 2270005060 Dsl - Irrigation Sets 16 25 21.88 2500 DEFAULT 2.7 +56000 2000 2270005060 Dsl - Irrigation Sets 25 40 33 2500 DEFAULT 6.2 +56000 2000 2270005060 Dsl - Irrigation Sets 40 50 45.08 2500 DEFAULT 2.5 +56000 2000 2270005060 Dsl - Irrigation Sets 50 75 60.24 4667 DEFAULT 9.7 +56000 2000 2270005060 Dsl - Irrigation Sets 75 100 85.87 4667 DEFAULT 45.9 +56000 2000 2270005060 Dsl - Irrigation Sets 100 175 136.3 4667 DEFAULT 24.1 +56000 2000 2270005060 Dsl - Irrigation Sets 175 300 224.5 4667 DEFAULT 6.9 +56000 2000 2270005060 Dsl - Irrigation Sets 300 600 390 7000 DEFAULT 0.5 +56000 2000 2270005060 Dsl - Irrigation Sets 600 750 704.7 7000 DEFAULT 0.0 +56000 2000 2270006005 Dsl - Generator Sets 3 6 5.35 2500 DEFAULT 115.1 +56000 2000 2270006005 Dsl - Generator Sets 6 11 8.418 2500 DEFAULT 114.9 +56000 2000 2270006005 Dsl - Generator Sets 11 16 13.56 2500 DEFAULT 88.6 +56000 2000 2270006005 Dsl - Generator Sets 16 25 21.29 2500 DEFAULT 139.4 +56000 2000 2270006005 Dsl - Generator Sets 25 40 33.44 2500 DEFAULT 230.8 +56000 2000 2270006005 Dsl - Generator Sets 40 50 45.19 2500 DEFAULT 31.5 +56000 2000 2270006005 Dsl - Generator Sets 50 75 59.96 4667 DEFAULT 116.3 +56000 2000 2270006005 Dsl - Generator Sets 75 100 86.42 4667 DEFAULT 141.6 +56000 2000 2270006005 Dsl - Generator Sets 100 175 135.7 4667 DEFAULT 48.3 +56000 2000 2270006005 Dsl - Generator Sets 175 300 238 4667 DEFAULT 26.9 +56000 2000 2270006005 Dsl - Generator Sets 300 600 419.3 7000 DEFAULT 14.0 +56000 2000 2270006005 Dsl - Generator Sets 600 750 682.1 7000 DEFAULT 0.0 +56000 2000 2270006005 Dsl - Generator Sets 750 1000 887.1 7000 DEFAULT 0.0 +56000 2000 2270006005 Dsl - Generator Sets 1000 1200 1112 7000 DEFAULT 0.0 +56000 2000 2270006005 Dsl - Generator Sets 1200 2000 1655 7000 DEFAULT 0.0 +56000 2000 2270006005 Dsl - Generator Sets 2000 3000 2401 7000 DEFAULT 0.0 +56000 2000 2270006010 Dsl - Pumps 1 3 3 2500 DEFAULT 0.1 +56000 2000 2270006010 Dsl - Pumps 3 6 5.225 2500 DEFAULT 19.8 +56000 2000 2270006010 Dsl - Pumps 6 11 8.464 2500 DEFAULT 47.6 +56000 2000 2270006010 Dsl - Pumps 11 16 13.73 2500 DEFAULT 11.9 +56000 2000 2270006010 Dsl - Pumps 16 25 21.72 2500 DEFAULT 9.5 +56000 2000 2270006010 Dsl - Pumps 25 40 34.32 2500 DEFAULT 16.5 +56000 2000 2270006010 Dsl - Pumps 40 50 44.78 2500 DEFAULT 4.7 +56000 2000 2270006010 Dsl - Pumps 50 75 62.38 4667 DEFAULT 31.7 +56000 2000 2270006010 Dsl - Pumps 75 100 86.31 4667 DEFAULT 35.3 +56000 2000 2270006010 Dsl - Pumps 100 175 132.4 4667 DEFAULT 15.6 +56000 2000 2270006010 Dsl - Pumps 175 300 243.2 4667 DEFAULT 3.9 +56000 2000 2270006010 Dsl - Pumps 300 600 397.6 7000 DEFAULT 2.0 +56000 2000 2270006010 Dsl - Pumps 600 750 687.2 7000 DEFAULT 0.0 +56000 2000 2270006010 Dsl - Pumps 750 1000 860 7000 DEFAULT 0.0 +56000 2000 2270006010 Dsl - Pumps 1000 1200 1200 7000 DEFAULT 0.0 +56000 2000 2270006010 Dsl - Pumps 1200 2000 1633 7000 DEFAULT 0.0 +56000 2000 2270006010 Dsl - Pumps 2000 3000 2373 7000 DEFAULT 0.0 +56000 2000 2270006015 Dsl - Air Compressors 3 6 5.567 2500 DEFAULT 0.7 +56000 2000 2270006015 Dsl - Air Compressors 6 11 9.47 2500 DEFAULT 1.6 +56000 2000 2270006015 Dsl - Air Compressors 11 16 13.34 2500 DEFAULT 0.2 +56000 2000 2270006015 Dsl - Air Compressors 16 25 22.68 2500 DEFAULT 0.3 +56000 2000 2270006015 Dsl - Air Compressors 25 40 33.5 2500 DEFAULT 12.7 +56000 2000 2270006015 Dsl - Air Compressors 40 50 44.26 2500 DEFAULT 8.8 +56000 2000 2270006015 Dsl - Air Compressors 50 75 60.76 4667 DEFAULT 56.1 +56000 2000 2270006015 Dsl - Air Compressors 75 100 83.86 4667 DEFAULT 73.1 +56000 2000 2270006015 Dsl - Air Compressors 100 175 129.2 4667 DEFAULT 8.4 +56000 2000 2270006015 Dsl - Air Compressors 175 300 243.3 4667 DEFAULT 7.5 +56000 2000 2270006015 Dsl - Air Compressors 300 600 427.4 7000 DEFAULT 2.2 +56000 2000 2270006015 Dsl - Air Compressors 600 750 700 7000 DEFAULT 0.0 +56000 2000 2270006020 Dsl - Gas Compressors 25 40 38 2500 DEFAULT 0.0 +56000 2000 2270006020 Dsl - Gas Compressors 40 50 40.1 2500 DEFAULT 0.0 +56000 2000 2270006020 Dsl - Gas Compressors 50 75 54.65 4667 DEFAULT 0.0 +56000 2000 2270006020 Dsl - Gas Compressors 75 100 90 4667 DEFAULT 0.0 +56000 2000 2270006020 Dsl - Gas Compressors 300 600 400.3 7000 DEFAULT 0.0 +56000 2000 2270006025 Dsl - Welders 6 11 8.843 2500 DEFAULT 7.3 +56000 2000 2270006025 Dsl - Welders 11 16 14.68 2500 DEFAULT 40.5 +56000 2000 2270006025 Dsl - Welders 16 25 21.29 2500 DEFAULT 59.0 +56000 2000 2270006025 Dsl - Welders 25 40 32.98 2500 DEFAULT 36.6 +56000 2000 2270006025 Dsl - Welders 40 50 46.24 2500 DEFAULT 101.4 +56000 2000 2270006025 Dsl - Welders 50 75 64.27 4667 DEFAULT 73.7 +56000 2000 2270006025 Dsl - Welders 75 100 84.6 4667 DEFAULT 32.3 +56000 2000 2270006025 Dsl - Welders 100 175 151.8 4667 DEFAULT 1.7 +56000 2000 2270006025 Dsl - Welders 300 600 380 7000 DEFAULT 0.0 +56000 2000 2270006025 Dsl - Welders 750 1000 800 7000 DEFAULT 0.0 +56000 2000 2270006030 Dsl - Pressure Washers 3 6 5.18 2500 DEFAULT 1.3 +56000 2000 2270006030 Dsl - Pressure Washers 6 11 9.041 2500 DEFAULT 10.9 +56000 2000 2270006030 Dsl - Pressure Washers 11 16 13.97 2500 DEFAULT 12.5 +56000 2000 2270006030 Dsl - Pressure Washers 16 25 20.42 2500 DEFAULT 15.6 +56000 2000 2270006030 Dsl - Pressure Washers 25 40 31.23 2500 DEFAULT 14.9 +56000 2000 2270006030 Dsl - Pressure Washers 40 50 45.31 2500 DEFAULT 1.9 +56000 2000 2270006030 Dsl - Pressure Washers 50 75 61.34 4667 DEFAULT 6.3 +56000 2000 2270006030 Dsl - Pressure Washers 75 100 88.53 4667 DEFAULT 1.8 +56000 2000 2270006030 Dsl - Pressure Washers 100 175 128.3 4667 DEFAULT 5.8 +56000 2000 2270006030 Dsl - Pressure Washers 175 300 226.2 4667 DEFAULT 4.7 +56000 2000 2270006030 Dsl - Pressure Washers 300 600 415.5 7000 DEFAULT 0.7 +56000 2000 2270006030 Dsl - Pressure Washers 600 750 688.9 7000 DEFAULT 0.3 +56000 2000 2270006035 Dsl - Hydro Power Units 3 6 5.1 2500 DEFAULT 0.2 +56000 2000 2270006035 Dsl - Hydro Power Units 6 11 8.575 2500 DEFAULT 0.4 +56000 2000 2270006035 Dsl - Hydro Power Units 11 16 13.97 2500 DEFAULT 0.1 +56000 2000 2270006035 Dsl - Hydro Power Units 16 25 20.54 2500 DEFAULT 1.1 +56000 2000 2270006035 Dsl - Hydro Power Units 25 40 33.26 2500 DEFAULT 1.6 +56000 2000 2270006035 Dsl - Hydro Power Units 40 50 42.73 2500 DEFAULT 0.5 +56000 2000 2270006035 Dsl - Hydro Power Units 50 75 58.03 4667 DEFAULT 2.5 +56000 2000 2270006035 Dsl - Hydro Power Units 75 100 83.95 4667 DEFAULT 2.9 +56000 2000 2270006035 Dsl - Hydro Power Units 100 175 137.7 4667 DEFAULT 0.8 +56000 2000 2270006035 Dsl - Hydro Power Units 175 300 226.8 4667 DEFAULT 0.1 +56000 2000 2270006035 Dsl - Hydro Power Units 300 600 439 7000 DEFAULT 0.0 +56000 2000 2270006035 Dsl - Hydro Power Units 600 750 700 7000 DEFAULT 0.0 +56000 2000 2270007010 Dsl - Shredders > 6 HP 40 50 2500 DEFAULT 0.0 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 25 40 35.47 2500 DEFAULT 0.0 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 40 50 44.93 2500 DEFAULT 0.0 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 50 75 65.09 4667 DEFAULT 0.0 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 75 100 88.96 4667 DEFAULT 1.7 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 100 175 137 4667 DEFAULT 12.0 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 175 300 225.2 4667 DEFAULT 17.2 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 300 600 421.3 7000 DEFAULT 1.5 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 600 750 689.3 7000 DEFAULT 0.6 +56000 2000 2270007015 Dsl - Forest Eqp - Feller/Bunch/Skidder 1000 1200 1050 7000 DEFAULT 0.0 +56000 2000 2270008005 Dsl - Airport Support Equipment 6 11 7.65 2500 DEFAULT 0.6 +56000 2000 2270008005 Dsl - Airport Support Equipment 11 16 15.5 2500 DEFAULT 0.0 +56000 2000 2270008005 Dsl - Airport Support Equipment 16 25 25 2500 DEFAULT 0.0 +56000 2000 2270008005 Dsl - Airport Support Equipment 25 40 32.46 2500 DEFAULT 0.0 +56000 2000 2270008005 Dsl - Airport Support Equipment 40 50 42.82 2500 DEFAULT 0.0 +56000 2000 2270008005 Dsl - Airport Support Equipment 50 75 61.23 4667 DEFAULT 0.6 +56000 2000 2270008005 Dsl - Airport Support Equipment 75 100 85.4 4667 DEFAULT 1.1 +56000 2000 2270008005 Dsl - Airport Support Equipment 100 175 135.6 4667 DEFAULT 3.3 +56000 2000 2270008005 Dsl - Airport Support Equipment 175 300 228.8 4667 DEFAULT 1.1 +56000 2000 2270008005 Dsl - Airport Support Equipment 300 600 443.4 7000 DEFAULT 1.3 +56000 2000 2270008005 Dsl - Airport Support Equipment 600 750 667 7000 DEFAULT 0.1 +56000 2000 2270008005 Dsl - Airport Support Equipment 1000 1200 1071 7000 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 16 25 22.76 2500 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 25 40 31.89 2500 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 40 50 44.42 2500 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 50 75 60 4667 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 75 100 92.49 4667 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 100 175 145 4667 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 175 300 251.1 4667 DEFAULT 0.0 +56000 2000 2270009010 Dsl - Other Underground Mining Equip 300 600 339.6 7000 DEFAULT 0.0 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 6 11 9 2500 DEFAULT 0.0 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 16 25 20.1 2500 DEFAULT 0.0 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 25 40 36.79 2500 DEFAULT 8.5 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 40 50 44.36 2500 DEFAULT 4.1 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 50 75 62.68 4667 DEFAULT 38.6 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 75 100 87.93 4667 DEFAULT 5.7 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 100 175 136.7 4667 DEFAULT 80.4 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 175 300 255.3 4667 DEFAULT 40.9 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 300 600 401.9 7000 DEFAULT 59.2 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 600 750 681.7 7000 DEFAULT 37.5 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 750 1000 887.3 7000 DEFAULT 15.6 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 1000 1200 1110 7000 DEFAULT 6.9 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 1200 2000 1492 7000 DEFAULT 8.5 +56000 2000 2270010010 Dsl - Other Oil Field Equipment 2000 3000 2268 7000 DEFAULT 0.2 +56000 1998 2282005010 2-Str Outboard 1 3 2.08 194 DEFAULT 347.9 +56000 1998 2282005010 2-Str Outboard 3 6 4.43 194 DEFAULT 1297.8 +56000 1998 2282005010 2-Str Outboard 6 11 9.07 191 DEFAULT 1954.7 +56000 1998 2282005010 2-Str Outboard 11 16 14.83 177 DEFAULT 434.6 +56000 1998 2282005010 2-Str Outboard 16 25 22.76 162 DEFAULT 856.0 +56000 1998 2282005010 2-Str Outboard 25 40 32.01 148 DEFAULT 1653.4 +56000 1998 2282005010 2-Str Outboard 40 50 45.58 140 DEFAULT 1271.9 +56000 1998 2282005010 2-Str Outboard 50 75 63.58 126 DEFAULT 2127.2 +56000 1998 2282005010 2-Str Outboard 75 100 85.05 126 DEFAULT 1445.0 +56000 1998 2282005010 2-Str Outboard 100 175 127.8 108 DEFAULT 3232.6 +56000 1998 2282005010 2-Str Outboard 175 300 212.3 97 DEFAULT 2901.8 +56000 1998 2282005015 2-Str Personal Water Craft 1 3 2.01 160 DEFAULT 1.4 +56000 1998 2282005015 2-Str Personal Water Craft 3 6 4.96 160 DEFAULT 1.3 +56000 1998 2282005015 2-Str Personal Water Craft 6 11 9.12 160 DEFAULT 12.7 +56000 1998 2282005015 2-Str Personal Water Craft 16 25 25.00 160 DEFAULT 0.0 +56000 1998 2282005015 2-Str Personal Water Craft 25 40 29.59 160 DEFAULT 13.5 +56000 1998 2282005015 2-Str Personal Water Craft 40 50 46.59 160 DEFAULT 5.5 +56000 1998 2282005015 2-Str Personal Water Craft 50 75 61.51 160 DEFAULT 120.9 +56000 1998 2282005015 2-Str Personal Water Craft 75 100 88.85 160 DEFAULT 447.3 +56000 1998 2282005015 2-Str Personal Water Craft 100 175 130.0 160 DEFAULT 1657.1 +56000 1998 2282005015 2-Str Personal Water Craft 175 300 212.7 160 DEFAULT 109.0 +56000 1998 2282010005 4-Str Inboard/Sterndrive 3 6 5.00 197 DEFAULT 1.5 +56000 1998 2282010005 4-Str Inboard/Sterndrive 6 11 10.00 197 DEFAULT 1.1 +56000 1998 2282010005 4-Str Inboard/Sterndrive 11 16 15.00 197 DEFAULT 0.6 +56000 1998 2282010005 4-Str Inboard/Sterndrive 25 40 30.47 197 DEFAULT 2.8 +56000 1998 2282010005 4-Str Inboard/Sterndrive 50 75 59.55 197 DEFAULT 24.4 +56000 1998 2282010005 4-Str Inboard/Sterndrive 75 100 197 DEFAULT 0.0 +56000 1998 2282010005 4-Str Inboard/Sterndrive 100 175 149.7 197 DEFAULT 585.9 +56000 1998 2282010005 4-Str Inboard/Sterndrive 175 300 211.1 197 DEFAULT 2174.6 +56000 1998 2282010005 4-Str Inboard/Sterndrive 300 600 380.8 197 DEFAULT 873.3 +56000 1998 2282010005 4-Str Inboard/Sterndrive 600 750 650.0 50 DEFAULT 14.7 +56000 2000 2282020005 Dsl - Inboard 6 11 9.736 1400 DEFAULT 17.9 +56000 2000 2282020005 Dsl - Inboard 11 16 14.92 1400 DEFAULT 8.8 +56000 2000 2282020005 Dsl - Inboard 16 25 21.41 1400 DEFAULT 19.5 +56000 2000 2282020005 Dsl - Inboard 25 40 31.2 1400 DEFAULT 10.6 +56000 2000 2282020005 Dsl - Inboard 40 50 42.4 1400 DEFAULT 2.0 +56000 2000 2282020005 Dsl - Inboard 50 75 56.19 1400 DEFAULT 17.3 +56000 2000 2282020005 Dsl - Inboard 75 100 94.22 1400 DEFAULT 14.5 +56000 2000 2282020005 Dsl - Inboard 100 175 144.9 1400 DEFAULT 119.1 +56000 2000 2282020005 Dsl - Inboard 175 300 223.1 1400 DEFAULT 195.9 +56000 2000 2282020005 Dsl - Inboard 300 600 387.1 1400 DEFAULT 144.5 +56000 2000 2282020005 Dsl - Inboard 600 750 677 1400 DEFAULT 5.7 +56000 2000 2282020005 Dsl - Inboard 750 1000 876.5 1400 DEFAULT 10.8 +56000 2000 2282020005 Dsl - Inboard 1000 1200 1154 1400 DEFAULT 0.9 +56000 2000 2282020005 Dsl - Inboard 1200 2000 1369 1400 DEFAULT 3.1 +56000 2000 2282020005 Dsl - Inboard 2000 3000 2294 1400 DEFAULT 1.9 +56000 2000 2282020010 Dsl - Outboard 25 40 32.25 1050 DEFAULT 19.3 +56000 2000 2285002015 Dsl - Railway Maintenance 3 6 4.2 2500 DEFAULT 0.3 +56000 2000 2285002015 Dsl - Railway Maintenance 6 11 8.32 2500 DEFAULT 1.7 +56000 2000 2285002015 Dsl - Railway Maintenance 11 16 14.13 2500 DEFAULT 1.9 +56000 2000 2285002015 Dsl - Railway Maintenance 16 25 17.5 2500 DEFAULT 2.7 +56000 2000 2285002015 Dsl - Railway Maintenance 25 40 33.34 2500 DEFAULT 10.1 +56000 2000 2285002015 Dsl - Railway Maintenance 40 50 44.12 2500 DEFAULT 15.8 +56000 2000 2285002015 Dsl - Railway Maintenance 50 75 59.61 4667 DEFAULT 28.9 +56000 2000 2285002015 Dsl - Railway Maintenance 75 100 87.84 4667 DEFAULT 26.9 +56000 2000 2285002015 Dsl - Railway Maintenance 100 175 134 4667 DEFAULT 113.5 +56000 2000 2285002015 Dsl - Railway Maintenance 175 300 234 4667 DEFAULT 41.8 +56000 2000 2285002015 Dsl - Railway Maintenance 300 600 453.2 7000 DEFAULT 7.1 +56000 2000 2285002015 Dsl - Railway Maintenance 600 750 689.2 7000 DEFAULT 1.8 +56000 2000 2285002015 Dsl - Railway Maintenance 750 1000 850 7000 DEFAULT 0.4 +56000 2000 2285002015 Dsl - Railway Maintenance 1000 1200 1200 7000 DEFAULT 0.6 +56000 2000 2285002015 Dsl - Railway Maintenance 1200 2000 1633 7000 DEFAULT 0.2 +56000 1998 2285004015 4-Str Railway Maintenance 1 3 3.00 200 DEFAULT 1.7 +56000 1998 2285004015 4-Str Railway Maintenance 3 6 3.52 200 DEFAULT 55.3 +56000 1998 2285004015 4-Str Railway Maintenance 6 11 6.59 400 DEFAULT 227.3 +56000 1998 2285004015 4-Str Railway Maintenance 11 16 12.07 400 DEFAULT 4.1 +56000 1998 2285004015 4-Str Railway Maintenance 16 25 18.19 750 DEFAULT 10.4 +56000 1998 2285004015 4-Str Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +56000 1998 2285004015 4-Str Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +56000 1998 2285006015 LPG - Railway Maintenance 25 40 33.15 1500 DEFAULT 3.2 +56000 1998 2285006015 LPG - Railway Maintenance 100 175 113.0 2852 DEFAULT 0.0 +/END/ diff --git a/NONROAD/NR08a/DATA/RETROFIT/retrotst.dat b/NONROAD/NR08a/DATA/RETROFIT/retrotst.dat new file mode 100644 index 0000000..7a58a18 --- /dev/null +++ b/NONROAD/NR08a/DATA/RETROFIT/retrotst.dat @@ -0,0 +1,50 @@ +Retrofit Input Data File +This optional file contains parameters specifying details of +whatever voluntary retrofit program(s) the user wishes to model. +The model will accept overlapping (multiple) retrofit specifications +for the same set of engines (same SCC, TechType, Hp, ModelYear, and +pollutant), so the user must be careful to properly enter +different retrofit technologies that affect the same equipment. +Entering something in the Description area can help keep track of this. + +12/6/2005 retrotst.dat Test file. + +----------------------------------------------------------------- +This data file contains only one packet. + +The format is as follows: + + + 1-4 integer --- Retrofit Year start (first calendar year when retrofits are done) + 5 blank + 6-9 integer --- Retrofit Year end (last calendar year when retrofits are done) + 10 blank + 11-14 integer --- Model Year start (first model year equipment that is receiving retrofit) + 15 blank + 16-19 integer --- Model Year end (last model year equipment that is receiving retrofit) + 20 blank + 21-30 character --- SCC Code + 31 blank + 32-41 character --- Exhaust Technology Type (e.g., Base, T0, T1, T2, T2M) + 42 blank + 43-47 real --- Minimum HP + 48-52 real --- Maximum HP + 53 blank + 54-71 real --- Annual Retrofit Fraction (0.0 - 1.0) OR Actual Total Number Retrofitted (greater than 1.0) + 72 blank + 73-78 real --- Retrofit Effectiveness. Range = 0.0 - 1.0 (zero is no benefit). + 79 blank + 80-89 character --- Exhaust Pollutant affected by retrofit (HC, CO, NOx, or PM) + 90 blank + 91-95 integer --- Retrofit identifier (use same arbitrary number for different pollutants being affected by same retrofit) + 96+ Can enter a description of specific retrofit technology. Not read into model. + + +RYst RYen MYst MYen SCC TechType HPmn HPmx AnnualRetroFracOrN Effect Pollutant RetID Description (not used) +---- ---- ---- ---- ---------- ---------- ---------- ------------------ ------ ---------- ----- ----------------------- +/RETROFIT/ +2008 2009 1996 1997 2270002000 ALL 50 300 0.05 0.50 PM 1 funded by xxxx +2008 2008 1991 1996 2270002069 T1 175 600 0.06 0.05 NOx 2 +2007 2008 1996 1997 2270005015 ALL 100 300 0.04 0.80 PM 3 +2007 2008 1996 1997 2270005015 ALL 100 300 0.04 0.03 NOx 3 +/END/ diff --git a/NONROAD/NR08a/DATA/SEASON/SEASON.DAT b/NONROAD/NR08a/DATA/SEASON/SEASON.DAT new file mode 100644 index 0000000..c2ab9ee --- /dev/null +++ b/NONROAD/NR08a/DATA/SEASON/SEASON.DAT @@ -0,0 +1,1050 @@ +This file contains the seasonality (temporal adjustment data) used +by the NONROAD model. These data are used to convert tons/year +calculated by the model to the arbitrary time period specified by +the model. A description of each packet appears below. + +NOTE: If no data for an equipment type can be found in this +file, the default values will be used for temporal allocation. +The default values represent a flat temporal activity profile. + +9/16/05, 11b, EPA updates construction seasons per 2003 McGraw-Hill county-month const dollar values. +9/28/05, 11c, EPA updates US Total Seasonal Allocations per new Geographic ALO and new Const Seasonal allocations. + +-------------------------------------------------------------- +The following packet defines the states/counties in each +geographic region. The region code is arbitrary but the +FIPs code must be a valid state or county FIPS code. If +a state code is supplied, all counties in that state will +be included in the indicated region, unless overridden by +a county-specific record. If a state or county is not +listed under any region, only data records with a global +region code (all blanks) will used for that state or county. + +The format is as follows: + 1- 5 character -- user defined region code + 6-45 character -- region description (not used) +46-50 character -- state or county FIPs code +51-70 character -- state or county name (not used) +-------------------------------------------------------------- + +/REGIONS/ +US National 00000 Nation +SE Southeast 01000 Alabama +MW Great Lakes/Midwest 02000 Alaska +SW Southwest 04000 Arizona +SC South Central 05000 Arkansas +WCST West Coast 06000 California +RCKMT Rocky Mountains 08000 Colorado +MIDAT Mid-Atlantic 09000 Connecticut +MIDAT Mid-Atlantic 10000 Delaware +SE Southeast 12000 Florida +SE Southeast 13000 Georgia +WCST West Coast 15000 Hawaii +NW Northwest 16000 Idaho +MW Great Lakes/Midwest 17000 Illinois +MW Great Lakes/Midwest 18000 Indiana +MW Great Lakes/Midwest 19000 Iowa +CW Central West 20000 Kansas +SC South Central 21000 Kentucky +SE Southeast 22000 Louisiana +NE Northeast/New England 23000 Maine +MIDAT Mid-Atlantic 24000 Maryland +NE Northeast/New England 25000 Massachusetts +MW Great Lakes/Midwest 26000 Michigan +MW Great Lakes/Midwest 27000 Minnesota +SE Southeast 28000 Mississippi +MW Great Lakes/Midwest 29000 Missouri +NW Northwest 30000 Montana +CW Central West 31000 Nebraska +CW Central West 32000 Nevada +NE Northeast/New England 33000 New Hampshire +MIDAT Mid-Atlantic 34000 New Jersey +SW Southwest 35000 New Mexico +NE Northeast/New England 36000 New York +MIDAT Mid-Atlantic 37000 North Carolina +MW Great Lakes/Midwest 38000 North Dakota +MW Great Lakes/Midwest 39000 Ohio +SC South Central 40000 Oklahoma +NW Northwest 41000 Oregon +MIDAT Mid-Atlantic 42000 Pennsylvania +MIDAT Mid-Atlantic 44000 Rhode Island +SE Southeast 45000 South Carolina +MW Great Lakes/Midwest 46000 South Dakota +SC South Central 47000 Tennessee +SW Southwest 48000 Texas +CW Central West 49000 Utah +NE Northeast/New England 50000 Vermont +MIDAT Mid-Atlantic 51000 Virginia +NW Northwest 53000 Washington +MIDAT Mid-Atlantic 11000 Washington D.C. +MIDAT Mid-Atlantic 54000 West Virginia +MW Great Lakes/Midwest 55000 Wisconsin +RCKMT Rocky Mountains 56000 Wyoming +SE Southeast 72000 Puerto Rico +SE Southeast 78000 US Virgin Islands +/END/ + + + +--------------------------------------------------------------- +The following packet contains the monthly adjustment factors. +The factors are fraction of annual activity occurring in the given +month. For periods longer than a single month (e.g. season) +the factors from each month spanned by the period will be +summed. +Global SCC codes can be used and the model will find the best +match. +A blank region code will apply to all states and counties. +The model will also find the best match on subregion code. + +The format is as follows: + + 1- 5 character -- subregion code (blank = match all) + 7- 16 character -- SCC code (global codes are acceptable) + 18- 51 character -- equipment description (not used) + 52- 61 real -- fraction of annual activity in January + 62- 71 real -- fraction of annual activity in February + 72- 81 real -- fraction of annual activity in March + 82- 91 real -- fraction of annual activity in April + 92-101 real -- fraction of annual activity in May +102-111 real -- fraction of annual activity in June +112-121 real -- fraction of annual activity in July +122-131 real -- fraction of annual activity in August +132-141 real -- fraction of annual activity in September +142-151 real -- fraction of annual activity in October +152-161 real -- fraction of annual activity in November +162-171 real -- fraction of annual activity in December + +--------------------------------------------------------------- + +/MONTHLY/ +CW 2260000000 Average 0.081 0.081 0.075 0.075 0.075 0.101 0.101 0.101 0.075 0.075 0.075 0.081 +CW 2260001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +CW 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2260002000 Construction 0.070 0.070 0.089 0.089 0.089 0.094 0.094 0.094 0.080 0.080 0.080 0.070 +CW 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2260005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265000000 Average 0.081 0.081 0.075 0.075 0.075 0.101 0.101 0.101 0.075 0.075 0.075 0.081 +CW 2265001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +CW 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2265002000 Construction 0.070 0.070 0.089 0.089 0.089 0.094 0.094 0.094 0.080 0.080 0.080 0.070 +CW 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2265005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267000000 Average 0.081 0.081 0.075 0.075 0.075 0.101 0.101 0.101 0.075 0.075 0.075 0.081 +CW 2267001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +CW 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2267002000 Construction 0.070 0.070 0.089 0.089 0.089 0.094 0.094 0.094 0.080 0.080 0.080 0.070 +CW 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2267005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268000000 Average 0.081 0.081 0.075 0.075 0.075 0.101 0.101 0.101 0.075 0.075 0.075 0.081 +CW 2268001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +CW 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2268002000 Construction 0.070 0.070 0.089 0.089 0.089 0.094 0.094 0.094 0.080 0.080 0.080 0.070 +CW 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2268005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270000000 Average 0.081 0.081 0.075 0.075 0.075 0.101 0.101 0.101 0.075 0.075 0.075 0.081 +CW 2270001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +CW 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2270002000 Construction 0.070 0.070 0.089 0.089 0.089 0.094 0.094 0.094 0.080 0.080 0.080 0.070 +CW 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +CW 2270005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +CW 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +CW 2282000000 Recreational Marine 0.023 0.023 0.075 0.075 0.075 0.16 0.16 0.16 0.075 0.075 0.075 0.023 +CW 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260000000 Average 0.08 0.08 0.074 0.074 0.074 0.103 0.103 0.103 0.074 0.074 0.074 0.08 +MIDAT 2260001000 Recreational Equipment 0.04 0.04 0.078 0.078 0.078 0.137 0.137 0.137 0.078 0.078 0.078 0.04 +MIDAT 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2260002000 Construction 0.072 0.072 0.079 0.079 0.079 0.098 0.098 0.098 0.085 0.085 0.085 0.072 +MIDAT 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2260005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265000000 Average 0.08 0.08 0.074 0.074 0.074 0.103 0.103 0.103 0.074 0.074 0.074 0.08 +MIDAT 2265001000 Recreational Equipment 0.04 0.04 0.078 0.078 0.078 0.137 0.137 0.137 0.078 0.078 0.078 0.04 +MIDAT 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2265002000 Construction 0.072 0.072 0.079 0.079 0.079 0.098 0.098 0.098 0.085 0.085 0.085 0.072 +MIDAT 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2265005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267000000 Average 0.08 0.08 0.074 0.074 0.074 0.103 0.103 0.103 0.074 0.074 0.074 0.08 +MIDAT 2267001000 Recreational Equipment 0.04 0.04 0.078 0.078 0.078 0.137 0.137 0.137 0.078 0.078 0.078 0.04 +MIDAT 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2267002000 Construction 0.072 0.072 0.079 0.079 0.079 0.098 0.098 0.098 0.085 0.085 0.085 0.072 +MIDAT 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2267005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268000000 Average 0.08 0.08 0.074 0.074 0.074 0.103 0.103 0.103 0.074 0.074 0.074 0.08 +MIDAT 2268001000 Recreational Equipment 0.04 0.04 0.078 0.078 0.078 0.137 0.137 0.137 0.078 0.078 0.078 0.04 +MIDAT 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2268002000 Construction 0.072 0.072 0.079 0.079 0.079 0.098 0.098 0.098 0.085 0.085 0.085 0.072 +MIDAT 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2268005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270000000 Average 0.08 0.08 0.074 0.074 0.074 0.103 0.103 0.103 0.074 0.074 0.074 0.08 +MIDAT 2270001000 Recreational Equipment 0.04 0.04 0.078 0.078 0.078 0.137 0.137 0.137 0.078 0.078 0.078 0.04 +MIDAT 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2270002000 Construction 0.072 0.072 0.079 0.079 0.079 0.098 0.098 0.098 0.085 0.085 0.085 0.072 +MIDAT 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MIDAT 2270005000 Agricultural 0.02 0.02 0.09 0.09 0.09 0.133 0.133 0.133 0.09 0.09 0.09 0.02 +MIDAT 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MIDAT 2282000000 Recreational Marine 0.007 0.007 0.068 0.068 0.068 0.19 0.19 0.19 0.068 0.068 0.068 0.007 +MIDAT 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2260000000 Average 0.076 0.076 0.07 0.07 0.07 0.118 0.118 0.118 0.07 0.07 0.07 0.076 +MW 2260001000 Recreational Equipment 0.027 0.027 0.077 0.077 0.077 0.153 0.153 0.153 0.077 0.077 0.077 0.027 +MW 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2260002000 Construction 0.061 0.061 0.089 0.089 0.089 0.099 0.099 0.099 0.086 0.086 0.086 0.061 +MW 2260003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +MW 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2260005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2265000000 Average 0.076 0.076 0.07 0.07 0.07 0.118 0.118 0.118 0.07 0.07 0.07 0.076 +MW 2265001000 Recreational Equipment 0.027 0.027 0.077 0.077 0.077 0.153 0.153 0.153 0.077 0.077 0.077 0.027 +MW 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2265002000 Construction 0.061 0.061 0.089 0.089 0.089 0.099 0.099 0.099 0.086 0.086 0.086 0.061 +MW 2265003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +MW 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2265005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2267000000 Average 0.076 0.076 0.07 0.07 0.07 0.118 0.118 0.118 0.07 0.07 0.07 0.076 +MW 2267001000 Recreational Equipment 0.027 0.027 0.077 0.077 0.077 0.153 0.153 0.153 0.077 0.077 0.077 0.027 +MW 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2267002000 Construction 0.061 0.061 0.089 0.089 0.089 0.099 0.099 0.099 0.086 0.086 0.086 0.061 +MW 2267003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +MW 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2267005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2268000000 Average 0.076 0.076 0.07 0.07 0.07 0.118 0.118 0.118 0.07 0.07 0.07 0.076 +MW 2268001000 Recreational Equipment 0.027 0.027 0.077 0.077 0.077 0.153 0.153 0.153 0.077 0.077 0.077 0.027 +MW 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2268002000 Construction 0.061 0.061 0.089 0.089 0.089 0.099 0.099 0.099 0.086 0.086 0.086 0.061 +MW 2268003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +MW 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2268005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2270000000 Average 0.076 0.076 0.07 0.07 0.07 0.118 0.118 0.118 0.07 0.07 0.07 0.076 +MW 2270001000 Recreational Equipment 0.027 0.027 0.077 0.077 0.077 0.153 0.153 0.153 0.077 0.077 0.077 0.027 +MW 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2270002000 Construction 0.061 0.061 0.089 0.089 0.089 0.099 0.099 0.099 0.086 0.086 0.086 0.061 +MW 2270003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +MW 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +MW 2270005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +MW 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +MW 2282000000 Recreational Marine 0 0 0.05 0.05 0.05 0.233 0.233 0.233 0.05 0.05 0.05 0 +MW 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2260000000 Average 0.078 0.078 0.069 0.069 0.069 0.117 0.117 0.117 0.069 0.069 0.069 0.078 +NE 2260001000 Recreational Equipment 0.047 0.047 0.07 0.07 0.07 0.146 0.146 0.146 0.07 0.07 0.07 0.047 +NE 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2260002000 Construction 0.059 0.059 0.093 0.093 0.093 0.095 0.095 0.095 0.086 0.086 0.086 0.059 +NE 2260003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NE 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2260005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2265000000 Average 0.078 0.078 0.069 0.069 0.069 0.117 0.117 0.117 0.069 0.069 0.069 0.078 +NE 2265001000 Recreational Equipment 0.047 0.047 0.07 0.07 0.07 0.146 0.146 0.146 0.07 0.07 0.07 0.047 +NE 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2265002000 Construction 0.059 0.059 0.093 0.093 0.093 0.095 0.095 0.095 0.086 0.086 0.086 0.059 +NE 2265003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NE 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2265005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2267000000 Average 0.078 0.078 0.069 0.069 0.069 0.117 0.117 0.117 0.069 0.069 0.069 0.078 +NE 2267001000 Recreational Equipment 0.047 0.047 0.07 0.07 0.07 0.146 0.146 0.146 0.07 0.07 0.07 0.047 +NE 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2267002000 Construction 0.059 0.059 0.093 0.093 0.093 0.095 0.095 0.095 0.086 0.086 0.086 0.059 +NE 2267003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NE 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2267005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2268000000 Average 0.078 0.078 0.069 0.069 0.069 0.117 0.117 0.117 0.069 0.069 0.069 0.078 +NE 2268001000 Recreational Equipment 0.047 0.047 0.07 0.07 0.07 0.146 0.146 0.146 0.07 0.07 0.07 0.047 +NE 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2268002000 Construction 0.059 0.059 0.093 0.093 0.093 0.095 0.095 0.095 0.086 0.086 0.086 0.059 +NE 2268003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NE 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2268005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2270000000 Average 0.078 0.078 0.069 0.069 0.069 0.117 0.117 0.117 0.069 0.069 0.069 0.078 +NE 2270001000 Recreational Equipment 0.047 0.047 0.07 0.07 0.07 0.146 0.146 0.146 0.07 0.07 0.07 0.047 +NE 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2270002000 Construction 0.059 0.059 0.093 0.093 0.093 0.095 0.095 0.095 0.086 0.086 0.086 0.059 +NE 2270003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NE 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NE 2270005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NE 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NE 2282000000 Recreational Marine 0.003 0.003 0.052 0.052 0.052 0.23 0.23 0.23 0.052 0.052 0.052 0.003 +NE 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2260000000 Average 0.077 0.077 0.071 0.071 0.071 0.113 0.113 0.113 0.071 0.071 0.071 0.077 +NW 2260001000 Recreational Equipment 0.043 0.043 0.073 0.073 0.073 0.143 0.143 0.143 0.073 0.073 0.073 0.043 +NW 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2260002000 Construction 0.069 0.069 0.081 0.081 0.081 0.102 0.102 0.102 0.080 0.080 0.080 0.069 +NW 2260003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NW 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2260004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2260004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2260005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2265000000 Average 0.077 0.077 0.071 0.071 0.071 0.113 0.113 0.113 0.071 0.071 0.071 0.077 +NW 2265001000 Recreational Equipment 0.037 0.037 0.075 0.075 0.075 0.147 0.147 0.147 0.075 0.075 0.075 0.037 +NW 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2265002000 Construction 0.069 0.069 0.081 0.081 0.081 0.102 0.102 0.102 0.080 0.080 0.080 0.069 +NW 2265003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NW 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2265004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2265004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2265005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2267000000 Average 0.077 0.077 0.071 0.071 0.071 0.113 0.113 0.113 0.071 0.071 0.071 0.077 +NW 2267001000 Recreational Equipment 0.037 0.037 0.075 0.075 0.075 0.147 0.147 0.147 0.075 0.075 0.075 0.037 +NW 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2267002000 Construction 0.069 0.069 0.081 0.081 0.081 0.102 0.102 0.102 0.080 0.080 0.080 0.069 +NW 2267003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NW 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2267004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2267004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2267005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2268000000 Average 0.077 0.077 0.071 0.071 0.071 0.113 0.113 0.113 0.071 0.071 0.071 0.077 +NW 2268001000 Recreational Equipment 0.037 0.037 0.075 0.075 0.075 0.147 0.147 0.147 0.075 0.075 0.075 0.037 +NW 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2268002000 Construction 0.069 0.069 0.081 0.081 0.081 0.102 0.102 0.102 0.080 0.080 0.080 0.069 +NW 2268003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NW 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2268004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2268004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2268005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2270000000 Average 0.077 0.077 0.071 0.071 0.071 0.113 0.113 0.113 0.071 0.071 0.071 0.077 +NW 2270001000 Recreational Equipment 0.037 0.037 0.075 0.075 0.075 0.147 0.147 0.147 0.075 0.075 0.075 0.037 +NW 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2270002000 Construction 0.069 0.069 0.081 0.081 0.081 0.102 0.102 0.102 0.080 0.080 0.080 0.069 +NW 2270003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +NW 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2270004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2270004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +NW 2270005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +NW 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +NW 2282000000 Recreational Marine 0.016 0.016 0.063 0.063 0.063 0.19 0.19 0.19 0.063 0.063 0.063 0.016 +NW 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2260000000 Average 0.076 0.076 0.07 0.07 0.07 0.117 0.117 0.117 0.07 0.07 0.07 0.076 +RCKMT 2260001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +RCKMT 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2260002000 Construction 0.066 0.066 0.079 0.079 0.079 0.100 0.100 0.100 0.089 0.089 0.089 0.066 +RCKMT 2260003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +RCKMT 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2260004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2260004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2260005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2265000000 Average 0.076 0.076 0.07 0.07 0.07 0.117 0.117 0.117 0.07 0.07 0.07 0.076 +RCKMT 2265001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +RCKMT 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2265002000 Construction 0.066 0.066 0.079 0.079 0.079 0.100 0.100 0.100 0.089 0.089 0.089 0.066 +RCKMT 2265003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +RCKMT 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2265004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2265004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2265005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2267000000 Average 0.076 0.076 0.07 0.07 0.07 0.117 0.117 0.117 0.07 0.07 0.07 0.076 +RCKMT 2267001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +RCKMT 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2267002000 Construction 0.066 0.066 0.079 0.079 0.079 0.100 0.100 0.100 0.089 0.089 0.089 0.066 +RCKMT 2267003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +RCKMT 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2267004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2267004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2267005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2268000000 Average 0.076 0.076 0.07 0.07 0.07 0.117 0.117 0.117 0.07 0.07 0.07 0.076 +RCKMT 2268001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +RCKMT 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2268002000 Construction 0.066 0.066 0.079 0.079 0.079 0.100 0.100 0.100 0.089 0.089 0.089 0.066 +RCKMT 2268003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +RCKMT 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2268004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2268004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2268005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2270000000 Average 0.076 0.076 0.07 0.07 0.07 0.117 0.117 0.117 0.07 0.07 0.07 0.076 +RCKMT 2270001000 Recreational Equipment 0.027 0.027 0.08 0.08 0.08 0.147 0.147 0.147 0.08 0.08 0.08 0.027 +RCKMT 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2270002000 Construction 0.066 0.066 0.079 0.079 0.079 0.100 0.100 0.100 0.089 0.089 0.089 0.066 +RCKMT 2270003000 Industrial 0.067 0.067 0.083 0.083 0.083 0.1 0.1 0.1 0.083 0.083 0.083 0.067 +RCKMT 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2270004020 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2270004021 Lawn and garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +RCKMT 2270005000 Agricultural 0.02 0.02 0.073 0.073 0.073 0.167 0.167 0.167 0.073 0.073 0.073 0.02 +RCKMT 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +RCKMT 2282000000 Recreational Marine 0 0 0.052 0.052 0.052 0.23 0.23 0.23 0.052 0.052 0.052 0 +RCKMT 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260000000 Average 0.084 0.084 0.077 0.077 0.077 0.094 0.094 0.094 0.077 0.077 0.077 0.084 +SC 2260001000 Recreational Equipment 0.05 0.05 0.082 0.082 0.082 0.12 0.12 0.12 0.082 0.082 0.082 0.05 +SC 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2260002000 Construction 0.068 0.068 0.092 0.092 0.092 0.091 0.091 0.091 0.082 0.082 0.082 0.068 +SC 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2260005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265000000 Average 0.084 0.084 0.077 0.077 0.077 0.094 0.094 0.094 0.077 0.077 0.077 0.084 +SC 2265001000 Recreational Equipment 0.05 0.05 0.082 0.082 0.082 0.12 0.12 0.12 0.082 0.082 0.082 0.05 +SC 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2265002000 Construction 0.068 0.068 0.092 0.092 0.092 0.091 0.091 0.091 0.082 0.082 0.082 0.068 +SC 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2265005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267000000 Average 0.084 0.084 0.077 0.077 0.077 0.094 0.094 0.094 0.077 0.077 0.077 0.084 +SC 2267001000 Recreational Equipment 0.05 0.05 0.082 0.082 0.082 0.12 0.12 0.12 0.082 0.082 0.082 0.05 +SC 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2267002000 Construction 0.068 0.068 0.092 0.092 0.092 0.091 0.091 0.091 0.082 0.082 0.082 0.068 +SC 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2267005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268000000 Average 0.084 0.084 0.077 0.077 0.077 0.094 0.094 0.094 0.077 0.077 0.077 0.084 +SC 2268001000 Recreational Equipment 0.05 0.05 0.082 0.082 0.082 0.12 0.12 0.12 0.082 0.082 0.082 0.05 +SC 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2268002000 Construction 0.068 0.068 0.092 0.092 0.092 0.091 0.091 0.091 0.082 0.082 0.082 0.068 +SC 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2268005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270000000 Average 0.084 0.084 0.077 0.077 0.077 0.094 0.094 0.094 0.077 0.077 0.077 0.084 +SC 2270001000 Recreational Equipment 0.05 0.05 0.082 0.082 0.082 0.12 0.12 0.12 0.082 0.082 0.082 0.05 +SC 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2270002000 Construction 0.068 0.068 0.092 0.092 0.092 0.091 0.091 0.091 0.082 0.082 0.082 0.068 +SC 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SC 2270005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SC 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SC 2282000000 Recreational Marine 0.023 0.023 0.075 0.075 0.075 0.16 0.16 0.16 0.075 0.075 0.075 0.023 +SC 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260000000 Average 0.085 0.085 0.077 0.077 0.077 0.093 0.093 0.093 0.077 0.077 0.077 0.085 +SE 2260001000 Recreational Equipment 0.057 0.057 0.08 0.08 0.08 0.117 0.117 0.117 0.08 0.08 0.08 0.057 +SE 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2260002000 Construction 0.078 0.078 0.080 0.080 0.080 0.089 0.089 0.089 0.086 0.086 0.086 0.078 +SE 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2260004020 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260004021 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2260005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265000000 Average 0.085 0.085 0.077 0.077 0.077 0.093 0.093 0.093 0.077 0.077 0.077 0.085 +SE 2265001000 Recreational Equipment 0.057 0.057 0.08 0.08 0.08 0.117 0.117 0.117 0.08 0.08 0.08 0.057 +SE 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2265002000 Construction 0.078 0.078 0.080 0.080 0.080 0.089 0.089 0.089 0.086 0.086 0.086 0.078 +SE 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2265004020 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265004021 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2265005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267000000 Average 0.085 0.085 0.077 0.077 0.077 0.093 0.093 0.093 0.077 0.077 0.077 0.085 +SE 2267001000 Recreational Equipment 0.057 0.057 0.08 0.08 0.08 0.117 0.117 0.117 0.08 0.08 0.08 0.057 +SE 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2267002000 Construction 0.078 0.078 0.080 0.080 0.080 0.089 0.089 0.089 0.086 0.086 0.086 0.078 +SE 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2267004020 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267004021 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2267005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268000000 Average 0.085 0.085 0.077 0.077 0.077 0.093 0.093 0.093 0.077 0.077 0.077 0.085 +SE 2268001000 Recreational Equipment 0.057 0.057 0.08 0.08 0.08 0.117 0.117 0.117 0.08 0.08 0.08 0.057 +SE 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2268002000 Construction 0.078 0.078 0.080 0.080 0.080 0.089 0.089 0.089 0.086 0.086 0.086 0.078 +SE 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2268004020 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268004021 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2268005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270000000 Average 0.085 0.085 0.077 0.077 0.077 0.093 0.093 0.093 0.077 0.077 0.077 0.085 +SE 2270001000 Recreational Equipment 0.057 0.057 0.08 0.08 0.08 0.117 0.117 0.117 0.08 0.08 0.08 0.057 +SE 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2270002000 Construction 0.078 0.078 0.080 0.080 0.080 0.089 0.089 0.089 0.086 0.086 0.086 0.078 +SE 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2270004020 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270004021 Lawn and Garden Chainswas 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SE 2270005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SE 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SE 2282000000 Recreational Marine 0.023 0.023 0.075 0.075 0.075 0.16 0.16 0.16 0.075 0.075 0.075 0.023 +SE 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260000000 Average 0.083 0.083 0.078 0.078 0.078 0.094 0.094 0.094 0.078 0.078 0.078 0.083 +SW 2260001000 Recreational Equipment 0.04 0.04 0.085 0.085 0.085 0.123 0.123 0.123 0.085 0.085 0.085 0.04 +SW 2260001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2260002000 Construction 0.075 0.075 0.084 0.084 0.084 0.091 0.091 0.091 0.084 0.084 0.084 0.075 +SW 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2260004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2260005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265000000 Average 0.083 0.083 0.078 0.078 0.078 0.094 0.094 0.094 0.078 0.078 0.078 0.083 +SW 2265001000 Recreational Equipment 0.04 0.04 0.085 0.085 0.085 0.123 0.123 0.123 0.085 0.085 0.085 0.04 +SW 2265001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2265002000 Construction 0.075 0.075 0.084 0.084 0.084 0.091 0.091 0.091 0.084 0.084 0.084 0.075 +SW 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2265004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2265005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267000000 Average 0.083 0.083 0.078 0.078 0.078 0.094 0.094 0.094 0.078 0.078 0.078 0.083 +SW 2267001000 Recreational Equipment 0.04 0.04 0.085 0.085 0.085 0.123 0.123 0.123 0.085 0.085 0.085 0.04 +SW 2267001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2267002000 Construction 0.075 0.075 0.084 0.084 0.084 0.091 0.091 0.091 0.084 0.084 0.084 0.075 +SW 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2267004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2267005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268000000 Average 0.083 0.083 0.078 0.078 0.078 0.094 0.094 0.094 0.078 0.078 0.078 0.083 +SW 2268001000 Recreational Equipment 0.04 0.04 0.085 0.085 0.085 0.123 0.123 0.123 0.085 0.085 0.085 0.04 +SW 2268001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2268002000 Construction 0.075 0.075 0.084 0.084 0.084 0.091 0.091 0.091 0.084 0.084 0.084 0.075 +SW 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2268004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2268005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270000000 Average 0.083 0.083 0.078 0.078 0.078 0.094 0.094 0.094 0.078 0.078 0.078 0.083 +SW 2270001000 Recreational Equipment 0.04 0.04 0.085 0.085 0.085 0.123 0.123 0.123 0.085 0.085 0.085 0.04 +SW 2270001020 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2270002000 Construction 0.075 0.075 0.084 0.084 0.084 0.091 0.091 0.091 0.084 0.084 0.084 0.075 +SW 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270004000 Lawn and Garden excl. chainsaws 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270004035 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2270004036 Snowblowers/Snowmobiles 0.333 0.333 0 0 0 0 0 0 0 0 0 0.333 +SW 2270005000 Agricultural 0.02 0.02 0.1 0.1 0.1 0.113 0.113 0.113 0.1 0.1 0.1 0.02 +SW 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +SW 2282000000 Recreational Marine 0.023 0.023 0.075 0.075 0.075 0.16 0.16 0.16 0.075 0.075 0.075 0.023 +SW 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260000000 Average 0.081 0.082 0.09 0.08 0.081 0.087 0.087 0.087 0.079 0.075 0.085 0.083 +WCST 2260001000 Recreational Equipment 0.06 0.06 0.07 0.08 0.09 0.1 0.1 0.1 0.09 0.09 0.09 0.07 +WCST 2260001020 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2260002000 Construction 0.072 0.072 0.088 0.088 0.088 0.090 0.090 0.090 0.083 0.083 0.083 0.072 +WCST 2260003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260004000 Lawn and Garden excl. chainsaws 0.057 0.067 0.086 0.086 0.095 0.095 0.095 0.095 0.095 0.086 0.076 0.067 +WCST 2260004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260004035 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2260004036 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2260005000 Agricultural 0.054 0.054 0.086 0.086 0.108 0.108 0.108 0.108 0.108 0.075 0.054 0.054 +WCST 2260006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2260008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265000000 Average 0.081 0.082 0.09 0.08 0.081 0.087 0.087 0.087 0.079 0.075 0.085 0.083 +WCST 2265001000 Recreational Equipment 0.06 0.06 0.07 0.08 0.09 0.1 0.1 0.1 0.09 0.09 0.09 0.07 +WCST 2265001020 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2265002000 Construction 0.072 0.072 0.088 0.088 0.088 0.090 0.090 0.090 0.083 0.083 0.083 0.072 +WCST 2265003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265004000 Lawn and Garden excl. chainsaws 0.057 0.067 0.086 0.086 0.095 0.095 0.095 0.095 0.095 0.086 0.076 0.067 +WCST 2265004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265004035 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2265004036 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2265005000 Agricultural 0.054 0.054 0.086 0.086 0.108 0.108 0.108 0.108 0.108 0.075 0.054 0.054 +WCST 2265006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2265008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267000000 Average 0.081 0.082 0.09 0.08 0.081 0.087 0.087 0.087 0.079 0.075 0.085 0.083 +WCST 2267001000 Recreational Equipment 0.06 0.06 0.07 0.08 0.09 0.1 0.1 0.1 0.09 0.09 0.09 0.07 +WCST 2267001020 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2267002000 Construction 0.072 0.072 0.088 0.088 0.088 0.090 0.090 0.090 0.083 0.083 0.083 0.072 +WCST 2267003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267004000 Lawn and Garden excl. chainsaws 0.057 0.067 0.086 0.086 0.095 0.095 0.095 0.095 0.095 0.086 0.076 0.067 +WCST 2267004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267004035 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2267004036 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2267005000 Agricultural 0.054 0.054 0.086 0.086 0.108 0.108 0.108 0.108 0.108 0.075 0.054 0.054 +WCST 2267006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2267008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268000000 Average 0.081 0.082 0.09 0.08 0.081 0.087 0.087 0.087 0.079 0.075 0.085 0.083 +WCST 2268001000 Recreational Equipment 0.06 0.06 0.07 0.08 0.09 0.1 0.1 0.1 0.09 0.09 0.09 0.07 +WCST 2268001020 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2268002000 Construction 0.072 0.072 0.088 0.088 0.088 0.090 0.090 0.090 0.083 0.083 0.083 0.072 +WCST 2268003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268004000 Lawn and Garden excl. chainsaws 0.057 0.067 0.086 0.086 0.095 0.095 0.095 0.095 0.095 0.086 0.076 0.067 +WCST 2268004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268004035 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2268004036 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2268005000 Agricultural 0.054 0.054 0.086 0.086 0.108 0.108 0.108 0.108 0.108 0.075 0.054 0.054 +WCST 2268006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2268008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270000000 Average 0.081 0.082 0.09 0.08 0.081 0.087 0.087 0.087 0.079 0.075 0.085 0.083 +WCST 2270001000 Recreational Equipment 0.06 0.06 0.07 0.08 0.09 0.1 0.1 0.1 0.09 0.09 0.09 0.07 +WCST 2270001020 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2270002000 Construction 0.072 0.072 0.088 0.088 0.088 0.090 0.090 0.090 0.083 0.083 0.083 0.072 +WCST 2270003000 Industrial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270004000 Lawn and Garden excl. chainsaws 0.057 0.067 0.086 0.086 0.095 0.095 0.095 0.095 0.095 0.086 0.076 0.067 +WCST 2270004020 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270004021 Lawn and Garden Chainsaws 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270004035 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2270004036 Snowblowers/Snowmobiles 0.2 0.2 0.18 0.06 0.02 0 0 0 0 0 0.14 0.2 +WCST 2270005000 Agricultural 0.054 0.054 0.086 0.086 0.108 0.108 0.108 0.108 0.108 0.075 0.054 0.054 +WCST 2270006000 Light Commercial 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270007000 Logging 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2270008000 Airport Service 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2280000000 Commercial Marine 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +WCST 2282000000 Recreational Marine 0.023 0.023 0.075 0.075 0.075 0.16 0.16 0.16 0.075 0.075 0.075 0.023 +WCST 2285000000 Railway Maintenance 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 0.083 +US 2260001000 0.0422 0.0422 0.0777 0.0785 0.0793 0.1330 0.1330 0.1330 0.0793 0.0793 0.0793 0.0431 +US 2260001020 0.3321 0.3321 0.0016 0.0005 0.0002 0.0000 0.0000 0.0000 0.0000 0.0000 0.0013 0.3321 +US 2260002000 0.0699 0.0699 0.0848 0.0848 0.0848 0.0941 0.0941 0.0941 0.0845 0.0845 0.0845 0.0699 +US 2260003000 0.0764 0.0764 0.0832 0.0832 0.0832 0.0905 0.0905 0.0905 0.0832 0.0832 0.0832 0.0764 +US 2260004000 0.0240 0.0251 0.0865 0.0865 0.0874 0.1354 0.1354 0.1354 0.0874 0.0865 0.0854 0.0251 +US 2260004016 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2260004020 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2260004021 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2260004026 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2260004031 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2260004035 0.3308 0.3308 0.0035 0.0012 0.0004 0.0000 0.0000 0.0000 0.0000 0.0000 0.0027 0.3308 +US 2260004036 0.3298 0.3298 0.0048 0.0016 0.0005 0.0000 0.0000 0.0000 0.0000 0.0000 0.0037 0.3298 +US 2260004071 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2260005000 0.0210 0.0210 0.0817 0.0817 0.0824 0.1488 0.1488 0.1488 0.0824 0.0814 0.0808 0.0210 +US 2260006000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2260007000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2260008000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2265001000 0.0419 0.0419 0.0778 0.0786 0.0794 0.1332 0.1332 0.1332 0.0794 0.0794 0.0794 0.0427 +US 2265001050 0.0401 0.0401 0.0773 0.0779 0.0785 0.1367 0.1367 0.1367 0.0785 0.0785 0.0785 0.0407 +US 2265002000 0.0699 0.0699 0.0848 0.0848 0.0848 0.0941 0.0941 0.0941 0.0845 0.0845 0.0845 0.0699 +US 2265003000 0.0764 0.0764 0.0832 0.0832 0.0832 0.0905 0.0905 0.0905 0.0832 0.0832 0.0832 0.0764 +US 2265004000 0.0240 0.0251 0.0865 0.0865 0.0874 0.1354 0.1354 0.1354 0.0874 0.0865 0.0854 0.0251 +US 2265004011 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004016 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004026 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004031 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004035 0.3308 0.3308 0.0035 0.0012 0.0004 0.0000 0.0000 0.0000 0.0000 0.0000 0.0027 0.3308 +US 2265004036 0.3298 0.3298 0.0048 0.0016 0.0005 0.0000 0.0000 0.0000 0.0000 0.0000 0.0037 0.3298 +US 2265004041 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004046 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004051 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004056 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004066 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004071 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265004076 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2265005000 0.0210 0.0210 0.0817 0.0817 0.0824 0.1488 0.1488 0.1488 0.0824 0.0814 0.0808 0.0210 +US 2265006000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2265007000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2265008000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2265010010 0.0823 0.0823 0.0769 0.0765 0.0765 0.0980 0.0980 0.0980 0.0764 0.0763 0.0767 0.0823 +US 2267001060 0.0419 0.0419 0.0778 0.0786 0.0794 0.1332 0.1332 0.1332 0.0794 0.0794 0.0794 0.0427 +US 2267002000 0.0699 0.0699 0.0848 0.0848 0.0848 0.0941 0.0941 0.0941 0.0845 0.0845 0.0845 0.0699 +US 2267003000 0.0764 0.0764 0.0832 0.0832 0.0832 0.0905 0.0905 0.0905 0.0832 0.0832 0.0832 0.0764 +US 2267004066 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2267005000 0.0210 0.0210 0.0817 0.0817 0.0824 0.1488 0.1488 0.1488 0.0824 0.0814 0.0808 0.0210 +US 2267006000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2267008000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2268002000 0.0699 0.0699 0.0848 0.0848 0.0848 0.0941 0.0941 0.0941 0.0845 0.0845 0.0845 0.0699 +US 2268003000 0.0764 0.0764 0.0832 0.0832 0.0832 0.0905 0.0905 0.0905 0.0832 0.0832 0.0832 0.0764 +US 2268005000 0.0210 0.0210 0.0817 0.0817 0.0824 0.1488 0.1488 0.1488 0.0824 0.0814 0.0808 0.0210 +US 2268006000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2268010010 0.0823 0.0823 0.0769 0.0765 0.0765 0.0980 0.0980 0.0980 0.0764 0.0763 0.0767 0.0823 +US 2270001060 0.0419 0.0419 0.0778 0.0786 0.0794 0.1332 0.1332 0.1332 0.0794 0.0794 0.0794 0.0427 +US 2270002000 0.0699 0.0699 0.0848 0.0848 0.0848 0.0941 0.0941 0.0941 0.0845 0.0845 0.0845 0.0699 +US 2270003000 0.0764 0.0764 0.0832 0.0832 0.0832 0.0905 0.0905 0.0905 0.0832 0.0832 0.0832 0.0764 +US 2270004031 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270004036 0.3298 0.3298 0.0048 0.0016 0.0005 0.0000 0.0000 0.0000 0.0000 0.0000 0.0037 0.3298 +US 2270004046 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270004056 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270004066 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270004071 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270004076 0.0263 0.0280 0.0878 0.0878 0.0893 0.1298 0.1298 0.1298 0.0893 0.0878 0.0861 0.0280 +US 2270005000 0.0210 0.0210 0.0817 0.0817 0.0824 0.1488 0.1488 0.1488 0.0824 0.0814 0.0808 0.0210 +US 2270006000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2270007000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2270008000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +US 2270009000 0.0807 0.0807 0.0744 0.0744 0.0744 0.1038 0.1038 0.1038 0.0744 0.0744 0.0744 0.0807 +US 2270010010 0.0823 0.0823 0.0769 0.0765 0.0765 0.0980 0.0980 0.0980 0.0764 0.0763 0.0767 0.0823 +US 2282000000 0.0128 0.0128 0.0653 0.0653 0.0653 0.1900 0.1900 0.1900 0.0653 0.0653 0.0653 0.0128 +US 2285000000 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 0.0833 +/END/ + +--------------------------------------------------------------- +The following packet contains the day-of-week adjustment factors. +The factors are fraction of weekly activity occurring in the given +day. Two factors are provided: typical weekday and typical +weekend day. To get the total weeks activity, multiply the +weekday factor by 5 and the weekend factor by 2 and add the +results together. +Global SCC codes can be used and the model will find the best +match. +A blank region code will apply to all states and counties. +The model will also find the best match on subregion code. + +The format is as follows: + + 1- 5 character -- subregion code (blank = match all) + 7- 16 character -- SCC code (global codes are acceptable) + 18- 52 character -- equipment description (not used) + 52- 61 real -- fraction of weekly activity in typical weekday + 62- 71 real -- fraction of weekly activity in typical weekend +--------------------------------------------------------------- + +/DAILY/ + 2260001000 Recreational Equipment 0.1111111 0.2222222 + 2260002000 Construction 0.1666667 0.0833334 + 2260003000 Industrial 0.1666667 0.0833334 + 2260003060 AC\Refrigeration 0.1428571 0.1428571 + 2260004000 Lawn & Garden 0.1111111 0.2222222 + 2260005000 Agricultural 0.1666667 0.0833334 + 2260006000 Light Commercial 0.1666667 0.0833334 + 2260007000 Logging 0.1666667 0.0833334 + 2260008000 Airport Service 0.1428571 0.1428571 + 2260009000 Underground Mining 0.1666667 0.0833334 + 2265001000 Recreational Equipment 0.1111111 0.2222222 + 2265002000 Construction 0.1666667 0.0833334 + 2265003000 Industrial 0.1666667 0.0833334 + 2265003060 AC\Refrigeration 0.1428571 0.1428571 + 2265004000 Lawn & Garden 0.1111111 0.2222222 + 2265005000 Agricultural 0.1666667 0.0833334 + 2265006000 Light Commercial 0.1666667 0.0833334 + 2265007000 Logging 0.1666667 0.0833334 + 2265008000 Airport Service 0.1428571 0.1428571 + 2265009000 Underground Mining 0.1666667 0.0833334 + 2267001000 Recreational Equipment 0.1111111 0.2222222 + 2267002000 Construction 0.1666667 0.0833334 + 2267003000 Industrial 0.1666667 0.0833334 + 2267003060 AC\Refrigeration 0.1428571 0.1428571 + 2267004000 Lawn & Garden 0.1111111 0.2222222 + 2267005000 Agricultural 0.1666667 0.0833334 + 2267006000 Light Commercial 0.1666667 0.0833334 + 2267007000 Logging 0.1666667 0.0833334 + 2267008000 Airport Service 0.1428571 0.1428571 + 2267009000 Underground Mining 0.1666667 0.0833334 + 2268001000 Recreational Equipment 0.1111111 0.2222222 + 2268002000 Construction 0.1666667 0.0833334 + 2268003000 Industrial 0.1666667 0.0833334 + 2268003060 AC\Refrigeration 0.1428571 0.1428571 + 2268004000 Lawn & Garden 0.1111111 0.2222222 + 2268005000 Agricultural 0.1666667 0.0833334 + 2268006000 Light Commercial 0.1666667 0.0833334 + 2268007000 Logging 0.1666667 0.0833334 + 2268008000 Airport Service 0.1428571 0.1428571 + 2268009000 Underground Mining 0.1666667 0.0833334 + 2270001000 Recreational Equipment 0.1111111 0.2222222 + 2270002000 Construction 0.1666667 0.0833334 + 2270003000 Industrial 0.1666667 0.0833334 + 2270003060 AC\Refrigeration 0.1428571 0.1428571 + 2270004000 Lawn & Garden 0.1111111 0.2222222 + 2270005000 Agricultural 0.1666667 0.0833334 + 2270006000 Light Commercial 0.1666667 0.0833334 + 2270007000 Logging 0.1666667 0.0833334 + 2270008000 Airport Service 0.1428571 0.1428571 + 2270009000 Underground Mining 0.1666667 0.0833334 + 2260004011 2-Stroke Lawn mowers (Comm.) 0.1600000 0.1000000 + 2260004016 2-Stroke Rotary Tillers < 5 HP 0.1600000 0.1000000 + 2260004021 2-Stroke Chain Saws < 4 HP (Com 0.1600000 0.1000000 + 2260004026 2-Stroke Trimmers/Edgers/Brush 0.1600000 0.1000000 + 2260004031 2-Stroke Leafblowers/Vacuums (C 0.1600000 0.1000000 + 2260004036 2-Stroke Snowblowers (Comm.) 0.1600000 0.1000000 + 2260004051 2-Stroke Shredders < 5 HP (Comm 0.1600000 0.1000000 + 2260004071 2-Stroke Commercial Turf Equipm 0.1600000 0.1000000 + 2260004076 2-Stroke Other Lawn & Garden Eq 0.1600000 0.1000000 + 2265004011 4-Stroke Lawn mowers (Comm.) 0.1600000 0.1000000 + 2265004016 4-Stroke Rotary Tillers < 5 HP 0.1600000 0.1000000 + 2265004026 4-Stroke Trimmers/Edgers/Brush 0.1600000 0.1000000 + 2265004031 4-Stroke Leafblowers/Vacuums (C 0.1600000 0.1000000 + 2265004036 4-Stroke Snowblowers (Comm.) 0.1600000 0.1000000 + 2265004041 4-Stroke Rear Engine Riding Mow 0.1600000 0.1000000 + 2265004046 4-Stroke Front Mowers (Comm.) 0.1600000 0.1000000 + 2265004051 4-Stroke Shredders < 5 HP (Comm 0.1600000 0.1000000 + 2265004056 4-Stroke Lawn & Garden Tractors 0.1600000 0.1000000 + 2265004066 4-Stroke Chippers/Stump Grinder 0.1600000 0.1000000 + 2265004071 4-Stroke Commercial Turf Equipm 0.1600000 0.1000000 + 2265004076 4-Stroke Other Lawn & Garden Eq 0.1600000 0.1000000 + 2267004011 LPG Lawn mowers (Comm.) 0.1600000 0.1000000 + 2267004016 LPG Rotary Tillers < 5 HP 0.1600000 0.1000000 + 2267004026 LPG Trimmers/Edgers/Brush 0.1600000 0.1000000 + 2267004031 LPG Leafblowers/Vacuums (C 0.1600000 0.1000000 + 2267004036 LPG Snowblowers (Comm.) 0.1600000 0.1000000 + 2267004041 LPG Rear Engine Riding Mow 0.1600000 0.1000000 + 2267004046 LPG Front Mowers (Comm.) 0.1600000 0.1000000 + 2267004051 LPG Shredders < 5 HP (Comm 0.1600000 0.1000000 + 2267004056 LPG Lawn & Garden Tractors 0.1600000 0.1000000 + 2267004066 LPG Chippers/Stump Grinder 0.1600000 0.1000000 + 2267004071 LPG Commercial Turf Equipm 0.1600000 0.1000000 + 2267004076 LPG Other Lawn & Garden Eq 0.1600000 0.1000000 + 2268004011 CNG Lawn mowers (Comm.) 0.1600000 0.1000000 + 2268004016 CNG Rotary Tillers < 5 HP 0.1600000 0.1000000 + 2268004026 CNG Trimmers/Edgers/Brush 0.1600000 0.1000000 + 2268004031 CNG Leafblowers/Vacuums (C 0.1600000 0.1000000 + 2268004036 CNG Snowblowers (Comm.) 0.1600000 0.1000000 + 2268004041 CNG Rear Engine Riding Mow 0.1600000 0.1000000 + 2268004046 CNG Front Mowers (Comm.) 0.1600000 0.1000000 + 2268004051 CNG Shredders < 5 HP (Comm 0.1600000 0.1000000 + 2268004056 CNG Lawn & Garden Tractors 0.1600000 0.1000000 + 2268004066 CNG Chippers/Stump Grinder 0.1600000 0.1000000 + 2268004071 CNG Commercial Turf Equipm 0.1600000 0.1000000 + 2268004076 CNG Other Lawn & Garden Eq 0.1600000 0.1000000 + 2270004031 Diesel Leafblowers/Vacuums (Com 0.1600000 0.1000000 + 2270004036 Diesel Snowblowers (Comm.) 0.1600000 0.1000000 + 2270004041 Diesel Rear Engine Riding Mower 0.1600000 0.1000000 + 2270004046 Diesel Front Mowers (Comm.) 0.1600000 0.1000000 + 2270004056 Diesel Lawn & Garden Tractors ( 0.1600000 0.1000000 + 2270004066 Diesel Chippers/Stump Grinders 0.1600000 0.1000000 + 2270004071 Diesel Commercial Turf Equipmen 0.1600000 0.1000000 + 2270004076 Diesel Other Lawn & Garden Equi 0.1600000 0.1000000 + 2282000000 Recreational Marine 0.0600000 0.3500000 + 2285000000 Railway Maintenance 0.1800000 0.0500000 +/END/ diff --git a/NONROAD/NR08a/DATA/TECH/TECH-EVP.DAT b/NONROAD/NR08a/DATA/TECH/TECH-EVP.DAT new file mode 100644 index 0000000..bd85d47 --- /dev/null +++ b/NONROAD/NR08a/DATA/TECH/TECH-EVP.DAT @@ -0,0 +1,316 @@ +This is the data file which defines the evap technology type distributions +for the NONROAD model. The tech types are specified by SCC, HP range, +& model year. Global SCC codes can be used to indicate entire groups +of equipment types. The data is separated into two lines. The first +line has the identification information and a list of up to 10 +technology types which make up the specified equipment population. +The second line identifies the year and the fraction of population +in each technology type. The model will use this distribution +for all years greater than or equal to the specified year, until +a new distribution is provided. + +File History: +1/18/08 techev4j: like 4i but for SmSI & SIrecmarine FRM change rec marine installed tank diurnal ctl from 2010 to 2011. + and revert rec marine hose control back from 2010 to 2009. +7/21/08 techev4n: Like 4j but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + +The format of the data is as follows: + +Line 1: + + 6 - 15 SCC code (globals can be used) + 21 - 25 Minimum HP range + 26 - 30 Maximum HP range + 35 - end List of tech type codes (each in field of 10 chars) + +Key to Tech Group + + 12345678 +E00000000 + +c E: Evap Tech Group +c 1: Diurnal +c 2: Tank Permeation +c 3: Hose Permeation +c 4: Hot Soak +c 5: Displacement +c 6: Spillage +c 7: Running Loss +c 8: Resting Loss + +Value: +0: Base +1: Control Level 1 +N: Control Level N + +Line 2: + 1 - 5 Model Year start + 35 - end Fractions for each tech type (each in field of 10 chars) + +Year SCC HpMn HpMx T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 +---- --------------------------------------------------------------------------------------------------------------------------------- + +/EVAP TECH FRAC/ + 2260000000 0 6 E00000000 E00100000 E11100010 Class 1 (& default HH) +1900 1.000 0.000 0.000 +2008 0.050 0.950 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260000000 6 25 E00000000 E00100000 E11100010 E12100010 E13100010 Class 2 +1900 1.000 0.000 0.000 0.000 0.000 +2008 0.100 0.900 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 1.000 0.000 0.000 +2013 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 1.000 + 2260000000 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2260001010 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2260001020 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2260001030 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2260004015 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004016 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004025 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004030 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260005035 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006005 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006010 0 1 E00000000 E02000000 E02200000 Class 3 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002009 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002021 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002027 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002039 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002054 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260003030 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260003040 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004015 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004016 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004020 1 3 E00000000 E01000000 Class 4 HH +1900 1.000 0.000 + 2260004021 1 3 E00000000 E01000000 Class 4 HH +1900 1.000 0.000 + 2260004025 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004026 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004030 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004031 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260004071 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260005035 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006005 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006010 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006015 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260006035 1 3 E00000000 E02000000 E02200000 Class 4 HH +1900 1.000 0.000 0.000 +2009 0.500 0.500 0.000 +2010 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2260002006 3 6 E00000000 E02000000 E01100000 E02200000 Class 5 HH +1900 1.000 0.000 0.000 0.000 +2009 0.550 0.450 0.000 0.000 +2010 0.100 0.900 0.000 0.000 +2012 0.000 0.000 1.000 0.000 +2013 0.000 0.000 0.000 1.000 + 2260002039 3 6 E00000000 E02000000 E01100000 E02200000 Class 5 HH +1900 1.000 0.000 0.000 0.000 +2009 0.550 0.450 0.000 0.000 +2010 0.100 0.900 0.000 0.000 +2012 0.000 0.000 1.000 0.000 +2013 0.000 0.000 0.000 1.000 + 2260004021 3 6 E00000000 E01000000 Class 5 HH +1900 1.000 0.000 + 2260004026 3 6 E00000000 E02000000 E01100000 E02200000 Class 5 HH +1900 1.000 0.000 0.000 0.000 +2009 0.550 0.450 0.000 0.000 +2010 0.100 0.900 0.000 0.000 +2012 0.000 0.000 1.000 0.000 +2013 0.000 0.000 0.000 1.000 + 2260004031 3 6 E00000000 E02000000 E01100000 E02200000 Class 5 HH +1900 1.000 0.000 0.000 0.000 +2009 0.550 0.450 0.000 0.000 +2010 0.100 0.900 0.000 0.000 +2012 0.000 0.000 1.000 0.000 +2013 0.000 0.000 0.000 1.000 + 2260007005 6 11 E00000000 E01000000 Class 5 HH +1900 1.000 0.000 + 2265000000 0 6 E00000000 E00100000 E11100010 Class 1 +1900 1.000 0.000 0.000 +2008 0.050 0.950 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2265000000 6 25 E00000000 E00100000 E11100010 E12100010 E13100010 Class 2 +1900 1.000 0.000 0.000 0.000 0.000 +2008 0.100 0.900 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 1.000 0.000 0.000 +2013 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 1.000 + 2265000000 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2265001010 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2265001020 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2265001030 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2267000000 0 9999 E00000000 +1900 1.000 + 2268000000 0 9999 E00000000 +1900 1.000 + 2270000000 0 9999 E00000000 +1900 1.000 + 2282005010 0 25 E00000000 E00100000 E10100000 E11100000 +1900 1.000 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 +2010 0.000 0.000 1.000 0.000 +2011 0.000 0.000 0.000 1.000 + 2282005010 25 9999 E00000000 E00100000 E10100000 E11100000 +1900 1.000 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 +2011 0.000 0.000 1.000 0.000 +2012 0.000 0.000 0.000 1.000 + 2282005015 0 9999 E00000000 E00100000 E10100000 E11100000 +1900 1.000 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 +2010 0.000 0.000 1.000 0.000 +2011 0.000 0.000 0.000 1.000 + 2282010005 0 9999 E00000000 E00100000 E10100000 E11100000 +1900 1.000 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 +2011 0.000 0.000 1.000 0.000 +2012 0.000 0.000 0.000 1.000 + 2282020000 0 9999 E00000000 +1900 1.000 + 2285002015 0 9999 E00000000 +1900 1.000 + 2285004015 0 6 E00000000 E00100000 E11100010 Class 1 +1900 1.000 0.000 0.000 +2008 0.050 0.950 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2285004015 6 25 E00000000 E00100000 E11100010 E12100010 E13100010 Class 2 +1900 1.000 0.000 0.000 0.000 0.000 +2008 0.100 0.900 0.000 0.000 0.000 +2009 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 1.000 0.000 0.000 +2013 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 1.000 + 2285004015 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2285006015 0 9999 E00000000 +1900 1.000 + 2285008015 0 9999 E00000000 +1900 1.000 +/END/ diff --git a/NONROAD/NR08a/DATA/TECH/TECH-EXH.DAT b/NONROAD/NR08a/DATA/TECH/TECH-EXH.DAT new file mode 100644 index 0000000..0051f20 --- /dev/null +++ b/NONROAD/NR08a/DATA/TECH/TECH-EXH.DAT @@ -0,0 +1,1127 @@ +This is the data file which defines the technology type distributions +for the NONROAD model. The tech types are specified by SCC, HP range, +& model year. Global SCC codes can be used to indicate entire groups +of equipment types. The data is separated into two lines. The first +line has the identification information and a list of up to 10 +technology types which make up the specified equipment population. +The second line identifies the year and the fraction of population +in each technology type. The model will use this distribution +for all years greater than or equal to the specified year, until +a new distribution is provided. + +1/22/08, tech44d: SI RecMar "Bond" FRM controls (SDI treat 20/25g in 2010 as phase-in of 16/22g in 2011 & 2013). And change bins 9 & 11. +7/21/08 44h: Like 44d but just remove 2280* temporary commercial marine <=50hp (was added just for Loco/Marine rule modeling). + + +The format of the data is as follows: + +Line 1: + + 6 - 15 SCC code (globals can be used) + 21 - 25 Minimum HP range + 26 - 30 Maximum HP range + 35 - end List of tech type codes (each in field of 10 chars) + +Line 2: + 1 - 5 Year + 35 - end Fractions for each tech type (each in field of 10 chars) + + T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 T13 T14 T15 +---------------------------------------------------------------------- + +/TECH FRAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.495 0.005 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.990 0.010 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 1.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 1.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 1.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 1.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 1.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2260001010 0 9999 RM2 RM41 +1900 1.000 0.000 +2006 0.760 0.240 +2007 0.530 0.470 +2008 0.490 0.510 +2009 0.460 0.540 + 2265001010 0 9999 RM4 RM40 RM41 +1900 1.000 0.000 0.000 +1999 0.667 0.333 0.000 +2001 0.333 0.667 0.000 +2003 0.000 1.000 0.000 +2006 0.000 0.560 0.440 +2007 0.000 0.120 0.880 +2008 0.000 0.060 0.940 +2009 0.000 0.000 1.000 + 2260001020 0 9999 RS2 RS21 RS22 RS40 +1900 1.000 0.000 0.000 0.000 +2005 0.860 0.000 0.070 0.070 +2006 0.530 0.300 0.085 0.085 +2007 0.200 0.600 0.100 0.100 +2010 0.200 0.300 0.350 0.150 +2012 0.100 0.200 0.500 0.200 + 2265001020 0 9999 RS4 RS40 RS41 RS42 +1900 1.000 0.000 0.000 0.000 +1999 0.667 0.333 0.000 0.000 +2001 0.333 0.667 0.000 0.000 +2003 0.000 1.000 0.000 0.000 +2006 0.000 0.000 1.000 0.000 +2010 0.000 0.000 0.000 1.000 + 2260001030 0 9999 RA2 RA41 RA42 +1900 1.000 0.000 0.000 +2006 0.650 0.350 0.000 +2007 0.300 0.700 0.000 +2008 0.150 0.850 0.000 +2009 0.000 1.000 0.000 + 2265001030 0 9999 RA4 RA40 RA41 RA42 +1900 1.000 0.000 0.000 0.000 +1999 0.667 0.333 0.000 0.000 +2001 0.333 0.667 0.000 0.000 +2003 0.000 1.000 0.000 0.000 +2006 0.000 0.500 0.500 0.000 +2007 0.000 0.000 1.000 0.000 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.050 0.070 0.880 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.025 0.035 0.440 0.052 0.448 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.104 0.896 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.150 0.060 0.790 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.075 0.030 0.395 0.072 0.429 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.143 0.857 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260004025 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260004025 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.490 0.005 0.005 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.980 0.010 0.010 0.000 0.000 0.000 +1998 0.000 0.000 0.000 0.972 0.010 0.018 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2265004025 3 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.063 0.936 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.032 0.468 0.037 0.463 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.073 0.927 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004025 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2260004026 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260004026 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.490 0.005 0.005 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.980 0.010 0.010 0.000 0.000 0.000 +1998 0.000 0.000 0.000 0.972 0.010 0.018 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2265004026 3 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.063 0.936 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.032 0.468 0.037 0.463 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.073 0.927 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004026 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.010 0.990 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.005 0.495 0.010 0.490 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.019 0.981 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004030 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.002 0.998 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.001 0.499 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004031 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.010 0.990 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.005 0.495 0.010 0.490 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.019 0.981 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004031 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.002 0.998 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.001 0.499 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2260004035 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2260004035 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2260004036 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2260004036 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004035 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2265004035 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004036 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2265004036 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004040 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.164 0.836 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.082 0.418 0.082 0.418 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.164 0.836 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.082 0.418 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.062 0.313 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.041 0.209 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.020 0.105 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004041 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.164 0.836 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.082 0.418 0.082 0.418 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.164 0.836 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.082 0.418 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.062 0.313 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.041 0.209 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.020 0.105 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004055 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.027 0.973 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.013 0.487 0.018 0.481 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.037 0.963 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004055 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.007 0.993 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.003 0.497 0.003 0.497 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.007 0.993 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.003 0.497 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.002 0.373 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.001 0.249 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004056 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.027 0.973 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.013 0.487 0.018 0.481 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.037 0.963 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004056 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.007 0.993 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.003 0.497 0.003 0.497 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.007 0.993 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.003 0.497 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.002 0.373 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.001 0.249 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265004071 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.086 0.349 0.565 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.043 0.175 0.282 0.199 0.301 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.398 0.602 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265004071 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.413 0.587 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.207 0.293 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.413 0.587 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.206 0.294 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.155 0.220 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.104 0.146 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.052 0.073 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265005040 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.006 0.020 0.974 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.010 0.487 0.016 0.484 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.032 0.968 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265006005 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.078 0.922 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.039 0.461 0.039 0.461 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.078 0.922 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.039 0.461 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.030 0.345 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.020 0.230 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.010 0.115 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2265006010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2265006010 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.143 0.857 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.072 0.428 0.072 0.428 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.143 0.857 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.071 0.429 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.053 0.322 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.035 0.215 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.017 0.108 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2267000000 25 9999 LGT25 LGT251 LGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2268000000 25 9999 NGT25 NGT251 NGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2270000000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2270000000 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2270000000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2270000000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.000 0.900 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2270000000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.900 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.300 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.300 0.000 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.900 0.000 0.000 0.100 0.000 0.000 0.000 +1998 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.620 0.000 0.000 0.380 0.000 0.000 0.000 +2000 0.673 0.000 0.000 0.327 0.000 0.000 0.000 +2001 0.601 0.000 0.000 0.399 0.000 0.000 0.000 +2002 0.350 0.000 0.000 0.650 0.000 0.000 0.000 +2003 0.104 0.000 0.000 0.896 0.000 0.000 0.000 +2004 0.088 0.000 0.000 0.912 0.000 0.000 0.000 +2005 0.104 0.000 0.000 0.896 0.000 0.000 0.000 +2006 0.100 0.000 0.000 0.900 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.957 0.000 0.000 0.043 0.000 0.000 0.000 +1997 0.870 0.000 0.000 0.130 0.000 0.000 0.000 +1998 0.707 0.000 0.000 0.293 0.000 0.000 0.000 +1999 0.730 0.000 0.000 0.270 0.000 0.000 0.000 +2000 0.596 0.000 0.000 0.404 0.000 0.000 0.000 +2001 0.547 0.000 0.000 0.453 0.000 0.000 0.000 +2002 0.463 0.000 0.000 0.537 0.000 0.000 0.000 +2003 0.443 0.000 0.000 0.557 0.000 0.000 0.000 +2004 0.554 0.000 0.000 0.446 0.000 0.000 0.000 +2005 0.386 0.000 0.000 0.614 0.000 0.000 0.000 +2006 0.400 0.000 0.000 0.600 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.957 0.000 0.000 0.043 0.000 0.000 0.000 +1997 0.870 0.000 0.000 0.130 0.000 0.000 0.000 +1998 0.710 0.000 0.000 0.290 0.000 0.000 0.000 +1999 0.672 0.000 0.000 0.328 0.000 0.000 0.000 +2000 0.523 0.000 0.000 0.477 0.000 0.000 0.000 +2001 0.169 0.000 0.000 0.831 0.000 0.000 0.000 +2002 0.269 0.000 0.000 0.731 0.000 0.000 0.000 +2003 0.222 0.000 0.000 0.778 0.000 0.000 0.000 +2004 0.185 0.000 0.000 0.815 0.000 0.000 0.000 +2005 0.157 0.000 0.000 0.843 0.000 0.000 0.000 +2006 0.150 0.000 0.000 0.850 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.989 0.000 0.000 0.011 0.000 0.000 0.000 +1998 0.732 0.000 0.000 0.268 0.000 0.000 0.000 +1999 0.802 0.000 0.000 0.198 0.000 0.000 0.000 +2000 0.546 0.000 0.000 0.454 0.000 0.000 0.000 +2001 0.124 0.000 0.000 0.876 0.000 0.000 0.000 +2002 0.203 0.000 0.000 0.797 0.000 0.000 0.000 +2003 0.282 0.000 0.000 0.718 0.000 0.000 0.000 +2004 0.240 0.000 0.000 0.760 0.000 0.000 0.000 +2005 0.132 0.000 0.000 0.868 0.000 0.000 0.000 1.000 +2006 0.150 0.000 0.000 0.850 0.000 0.000 0.000 1.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.989 0.000 0.000 0.011 0.000 0.000 0.000 +1998 0.928 0.000 0.000 0.072 0.000 0.000 0.000 +1999 0.866 0.000 0.000 0.134 0.000 0.000 0.000 +2000 0.720 0.000 0.000 0.280 0.000 0.000 0.000 +2001 0.748 0.000 0.000 0.252 0.000 0.000 0.000 +2002 0.678 0.000 0.000 0.322 0.000 0.000 0.000 +2003 0.535 0.000 0.000 0.465 0.000 0.000 0.000 +2004 0.295 0.000 0.000 0.705 0.000 0.000 0.000 +2005 0.406 0.000 0.000 0.594 0.000 0.000 0.000 1.000 +2006 0.300 0.000 0.000 0.700 0.000 0.000 0.000 1.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.688 0.000 0.000 0.312 0.000 0.000 0.000 +1999 0.794 0.000 0.000 0.206 0.000 0.000 0.000 +2000 0.569 0.000 0.000 0.431 0.000 0.000 0.000 +2001 0.421 0.000 0.000 0.579 0.000 0.000 0.000 +2002 0.385 0.000 0.000 0.566 0.049 0.000 0.000 +2003 0.515 0.000 0.000 0.396 0.089 0.000 0.000 +2004 0.390 0.000 0.000 0.368 0.242 0.000 0.000 +2005 0.267 0.000 0.000 0.532 0.201 0.000 0.000 +2006 0.250 0.000 0.000 0.500 0.250 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.945 0.000 0.000 0.055 0.000 0.000 0.000 +1999 0.758 0.000 0.000 0.242 0.000 0.000 0.000 +2000 0.460 0.000 0.001 0.249 0.000 0.290 0.000 +2001 0.689 0.000 0.019 0.155 0.000 0.137 0.000 +2002 0.615 0.000 0.051 0.181 0.000 0.153 0.000 +2003 0.566 0.000 0.029 0.299 0.000 0.106 0.000 +2004 0.645 0.000 0.000 0.125 0.000 0.230 0.000 +2005 0.412 0.000 0.026 0.127 0.000 0.435 0.000 +2006 0.400 0.000 0.050 0.150 0.000 0.400 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 50 75 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.791 0.000 0.000 0.156 0.000 0.054 0.000 +1999 0.785 0.000 0.000 0.067 0.000 0.148 0.000 +2000 0.639 0.000 0.000 0.145 0.000 0.216 0.000 +2001 0.460 0.000 0.000 0.456 0.000 0.084 0.000 +2002 0.362 0.000 0.000 0.423 0.179 0.037 0.000 +2003 0.384 0.000 0.000 0.439 0.127 0.051 0.000 +2004 0.197 0.000 0.000 0.287 0.428 0.088 0.000 +2005 0.193 0.000 0.000 0.148 0.405 0.254 0.000 +2006 0.200 0.000 0.100 0.000 0.300 0.400 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 75 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.837 0.000 0.000 0.163 0.000 0.000 0.000 +2000 0.519 0.000 0.120 0.362 0.000 0.000 0.000 +2001 0.472 0.000 0.085 0.421 0.000 0.022 0.000 +2002 0.476 0.000 0.069 0.300 0.000 0.155 0.000 +2003 0.470 0.000 0.007 0.237 0.000 0.286 0.000 +2004 0.275 0.000 0.170 0.207 0.000 0.348 0.000 +2005 0.310 0.000 0.114 0.001 0.000 0.575 0.000 +2006 0.200 0.000 0.100 0.000 0.300 0.400 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.988 0.012 0.000 0.000 0.000 0.000 0.000 +1998 0.914 0.000 0.086 0.000 0.000 0.000 0.000 +1999 0.702 0.029 0.227 0.000 0.000 0.042 0.000 +2000 0.622 0.068 0.178 0.000 0.059 0.073 0.000 +2001 0.559 0.028 0.202 0.000 0.127 0.084 0.000 +2002 0.487 0.050 0.253 0.000 0.102 0.108 0.000 +2003 0.390 0.041 0.261 0.000 0.105 0.202 0.000 +2004 0.382 0.026 0.055 0.000 0.378 0.159 0.000 +2005 0.167 0.004 0.301 0.000 0.037 0.491 0.000 +2006 0.150 0.050 0.300 0.000 0.050 0.450 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.967 0.033 0.000 0.000 0.000 0.000 0.000 +1998 0.740 0.072 0.188 0.000 0.000 0.000 0.000 +1999 0.250 0.424 0.326 0.000 0.000 0.000 0.000 +2000 0.338 0.204 0.459 0.000 0.000 0.000 0.000 +2001 0.222 0.150 0.628 0.000 0.000 0.000 0.000 +2002 0.039 0.378 0.449 0.000 0.072 0.062 0.000 +2003 0.005 0.308 0.487 0.000 0.200 0.000 0.000 +2004 0.026 0.106 0.583 0.000 0.243 0.042 0.000 +2005 0.004 0.259 0.595 0.000 0.142 0.000 0.000 +2006 0.000 0.250 0.600 0.000 0.150 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.800 0.000 0.000 0.000 0.200 0.000 0.000 0.000 +2006 0.600 0.000 0.000 0.000 0.400 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 0.218 0.000 0.000 0.000 0.782 0.000 0.000 0.000 +2005 0.200 0.000 0.000 0.000 0.800 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2000 0.640 0.000 0.000 0.000 0.360 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2002 0.017 0.000 0.000 0.000 0.983 0.000 0.000 0.000 +2003 0.019 0.000 0.000 0.000 0.981 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.700 0.000 0.300 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 50 75 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.991 0.000 0.000 0.000 0.009 0.000 0.000 0.000 +2000 0.932 0.000 0.000 0.000 0.068 0.000 0.000 0.000 +2001 0.928 0.000 0.000 0.000 0.072 0.000 0.000 0.000 +2002 0.976 0.000 0.000 0.000 0.024 0.000 0.000 0.000 +2003 0.906 0.000 0.000 0.000 0.094 0.000 0.000 0.000 +2004 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.900 0.000 0.000 0.000 0.100 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 75 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.394 0.606 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.803 0.197 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.770 0.230 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.700 0.150 0.150 0.000 0.000 0.000 0.000 0.000 +2003 0.720 0.219 0.061 0.000 0.000 0.000 0.000 0.000 +2004 0.541 0.459 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.340 0.660 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.300 0.600 0.100 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.957 0.000 0.043 0.000 0.000 0.000 0.000 0.000 +2000 0.655 0.000 0.229 0.116 0.000 0.000 0.000 0.000 +2001 0.496 0.000 0.242 0.262 0.000 0.000 0.000 0.000 +2002 0.343 0.000 0.245 0.149 0.000 0.072 0.191 0.000 +2003 0.137 0.000 0.336 0.037 0.000 0.192 0.299 0.000 +2004 0.174 0.000 0.055 0.000 0.000 0.455 0.316 0.000 +2005 0.059 0.000 0.036 0.000 0.000 0.068 0.837 0.000 +2006 0.050 0.000 0.050 0.000 0.000 0.050 0.850 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.480 0.520 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.588 0.300 0.112 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.686 0.314 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.500 0.500 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.863 0.137 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.690 0.310 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.700 0.300 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2282010005 0 50 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +2010 0.100 0.000 0.900 +2011 0.000 0.000 1.000 + 2282010005 50 100 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +2004 0.917 0.083 0.000 +2005 0.833 0.167 0.000 +2006 0.750 0.250 0.000 +2007 0.667 0.333 0.000 +2008 0.583 0.417 0.000 +2010 0.050 0.050 0.900 +2011 0.000 0.000 1.000 + 2282010005 100 175 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +2004 0.917 0.083 0.000 +2005 0.833 0.167 0.000 +2006 0.750 0.250 0.000 +2007 0.667 0.333 0.000 +2008 0.583 0.417 0.000 +2010 0.300 0.300 0.400 +2011 0.000 0.000 1.000 + 2282010005 175 300 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +1996 0.900 0.100 0.000 +1997 0.800 0.200 0.000 +1998 0.700 0.300 0.000 +1999 0.600 0.400 0.000 +2000 0.562 0.439 0.000 +2001 0.523 0.477 0.000 +2002 0.485 0.516 0.000 +2003 0.446 0.554 0.000 +2004 0.388 0.612 0.000 +2005 0.331 0.669 0.000 +2006 0.273 0.727 0.000 +2007 0.215 0.785 0.000 +2008 0.158 0.842 0.000 +2010 0.010 0.090 0.900 +2011 0.000 0.000 1.000 + 2282010005 300 600 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +1995 0.900 0.100 0.000 +1996 0.800 0.200 0.000 +1997 0.700 0.300 0.000 +1998 0.600 0.400 0.000 +1999 0.500 0.500 0.000 +2000 0.375 0.625 0.000 +2001 0.250 0.750 0.000 +2002 0.125 0.875 0.000 +2003 0.000 1.000 0.000 +2010 0.000 0.250 0.750 +2011 0.000 0.000 1.000 + 2282010005 600 9999 MS4C MS4D MS4X +1900 1.000 0.000 0.000 +1995 0.900 0.100 0.000 +1996 0.800 0.200 0.000 +1997 0.700 0.300 0.000 +1998 0.600 0.400 0.000 +1999 0.500 0.500 0.000 +2010 0.150 0.580 0.270 +2011 0.150 0.150 0.700 +2013 0.000 0.000 1.000 + 2282020000 0 25 BaseM T0M T1M T2M T3M +1900 1.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 +2007 0.000 0.000 0.000 1.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M +1900 1.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 +2000 0.000 0.100 0.900 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 0.000 0.000 1.000 + 2282020000 50 75 BaseM T2M T3M T4M +1900 1.000 0.000 0.000 0.000 +2007 0.000 1.000 0.000 0.000 +2009 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 1.000 + 2282020000 75 100 BaseM T2M T3M T4M +1900 1.000 0.000 0.000 0.000 +2007 0.000 1.000 0.000 0.000 +2009 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 1.000 + 2282020000 100 175 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2282020000 175 300 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2013 0.000 0.000 1.000 + 2282020000 300 750 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2014 0.000 0.000 1.000 + 2282020000 750 1200 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2013 0.000 0.000 1.000 + 2282020000 1200 2000 BaseM T2M T3M +1900 1.000 0.000 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2282020000 2000 9999 BaseM T2M T3M +1900 1.000 0.000 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2285002015 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.000 0.900 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.900 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.300 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.020 0.030 0.380 0.570 1.000 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.400 0.600 1.000 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.170 0.000 0.830 0.000 1.000 +2013 0.000 0.000 0.000 0.000 0.000 0.070 0.000 0.930 0.000 1.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 1.000 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2285006015 25 9999 LGT25 LGT251 LGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2285008015 25 9999 NGT25 NGT251 NGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 +/END/ diff --git a/NONROAD/NR08a/DATA/TECH/TECHEVBA.DAT b/NONROAD/NR08a/DATA/TECH/TECHEVBA.DAT new file mode 100644 index 0000000..d9fab65 --- /dev/null +++ b/NONROAD/NR08a/DATA/TECH/TECHEVBA.DAT @@ -0,0 +1,107 @@ +This is the data file which defines the evap technology type distributions +for the NONROAD model. The tech types are specified by SCC, HP range, +& model year. Global SCC codes can be used to indicate entire groups +of equipment types. The data is separated into two lines. The first +line has the identification information and a list of up to 10 +technology types which make up the specified equipment population. +The second line identifies the year and the fraction of population +in each technology type. The model will use this distribution +for all years greater than or equal to the specified year, until +a new distribution is provided. + +File History: +11/17/2004 tech-ev2: EPA Base Case. + +The format of the data is as follows: + +Line 1: + + 6 - 15 SCC code (globals can be used) + 21 - 25 Minimum HP range + 26 - 30 Maximum HP range + 35 - end List of tech type codes (each in field of 10 chars) + +Key to Tech Group + + 12345678 +E00000000 + +c E: Evap Tech Group +c 1: Diurnal +c 2: Tank Permeation +c 3: Hose Permeation +c 4: Hot Soak +c 5: Displacement +c 6: Spillage +c 7: Running Loss +c 8: Resting Loss + +Value: +0: Base +1: Control Level 1 +N: Control Level N + +Line 2: + 1 - 5 Model Year start + 35 - end Fractions for each tech type (each in field of 10 chars) + +Year SCC HpMnHpMx T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 +---- --------------------------------------------------------------------------------------------------------------------------------- +/EVAP TECH FRAC/ + 2260000000 0 25 E00000000 +1900 1.000 + 2260000000 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2260001010 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2260001020 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2260001030 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2265000000 0 25 E00000000 +1900 1.000 + 2265000000 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2265001010 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2265001020 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2265001030 0 9999 E00000000 E01100000 +1900 1.000 0.000 +2008 0.000 1.000 + 2267000000 0 9999 E00000000 +1900 1.000 + 2268000000 0 9999 E00000000 +1900 1.000 + 2270000000 0 9999 E00000000 +1900 1.000 + 2282005010 0 9999 E00000000 +1900 1.000 + 2282005015 0 9999 E00000000 +1900 1.000 + 2282010005 0 9999 E00000000 +1900 1.000 + 2282020000 0 9999 E00000000 +1900 1.000 + 2285002015 0 9999 E00000000 +1900 1.000 + 2285004015 0 25 E00000000 +1900 1.000 + 2285004015 25 9999 E00000000 E00010000 E10010010 +1900 1.000 0.0000 0.0000 +2004 0.000 1.0000 0.0000 +2007 0.000 0.0000 1.0000 + 2285006015 0 9999 E00000000 +1900 1.000 + 2285008015 0 9999 E00000000 +1900 1 +/END/ diff --git a/NONROAD/NR08a/DATA/TECH/TECHEXBA.DAT b/NONROAD/NR08a/DATA/TECH/TECHEXBA.DAT new file mode 100644 index 0000000..ab7dbc5 --- /dev/null +++ b/NONROAD/NR08a/DATA/TECH/TECHEXBA.DAT @@ -0,0 +1,1014 @@ +This is the data file which defines the technology type distributions +for the NONROAD model. The tech types are specified by SCC, HP range, +& model year. Global SCC codes can be used to indicate entire groups +of equipment types. The data is separated into two lines. The first +line has the identification information and a list of up to 10 +technology types which make up the specified equipment population. +The second line identifies the year and the fraction of population +in each technology type. The model will use this distribution +for all years greater than or equal to the specified year, until +a new distribution is provided. + +3/2/07 43q: like 43n but rename "T2" to "T2M" for dsl marine so it gets proper PM Base Sulfur. +4/4/07 44a: Add SmSI fix from tech42b3, switches gasoline snowblower OHV/SV mix from 80/20 to 20/80 per P.Carlson correction based on prior Cert data analysis. BASE case (no phs 3 controls). +9/11/07 44b0: from tech42b4, change 2260/265000000 GT25 from 0-9999 to 25-9999. No effect on outputs. (for MOVES) + Rename dsl marine BASE to BaseM, T0 to T0M, T1 to T1M for proper conversion to MOVES. + Change RecEq TechTypes to RM2, RM4, RM40 (closed crankcase), RM21, RM41, RSxx (snowmobile), RAxx (ATV), etc. for MOVES. Remove pumpfrac sheet. + To help MOVES conversion, change Dsl (2270 & 2285002015) 0-50 hp Base to T0, since are same. Lets Base have single set of TAFs (based on NEVES). + Split out Dsl Und Mining (2270009010) to use ONLY Base, T0, & T2, so it gets proper base sulfur & DF. +10/3/07 44b: from 44b0 but add SmSI & SI recmar Phs3 ctl from NPRM 42o modified dates & MS4X for FRM. +10/3/07 44b0: just hide the SmSI & SIrecmar phs3 control years from 44b. +10/10/07 44c0: Like 44b0 but remove CI RecMarine 2016 T4M > 2000 hp for L/M FRM. (and thus for Bond Base & Ctl FRM) +7/24/08 TECHEXBA: Like 44c0 but just remove 2280* commercial marine. + +The format of the data is as follows: + +Line 1: + + 6 - 15 SCC code (globals can be used) + 21 - 25 Minimum HP range + 26 - 30 Maximum HP range + 35 - end List of tech type codes (each in field of 10 chars) + +Line 2: + 1 - 5 Year + 35 - end Fractions for each tech type (each in field of 10 chars) + + T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 T13 T14 T15 +---------------------------------------------------------------------- + +/TECH FRAC/ + 2260000000 25 9999 G2GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2265000000 25 9999 G4GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2260000000 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260000000 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.495 0.005 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.990 0.010 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2260000000 3 6 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265000000 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 1.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 1.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 1.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 1.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 1.000 + 2265000000 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2260001010 0 9999 RM2 RM41 +1900 1.000 0.000 +2006 0.760 0.240 +2007 0.530 0.470 +2008 0.490 0.510 +2009 0.460 0.540 + 2265001010 0 9999 RM4 RM40 RM41 +1900 1.000 0.000 0.000 +1999 0.667 0.333 0.000 +2001 0.333 0.667 0.000 +2003 0.000 1.000 0.000 +2006 0.000 0.560 0.440 +2007 0.000 0.120 0.880 +2008 0.000 0.060 0.940 +2009 0.000 0.000 1.000 + 2260001020 0 9999 RS2 RS21 RS22 RS40 +1900 1.000 0.000 0.000 0.000 +2005 0.860 0.000 0.070 0.070 +2006 0.530 0.300 0.085 0.085 +2007 0.200 0.600 0.100 0.100 +2010 0.200 0.300 0.350 0.150 +2012 0.100 0.200 0.500 0.200 + 2265001020 0 9999 RS4 RS40 RS41 RS42 +1900 1.000 0.000 0.000 0.000 +1999 0.667 0.333 0.000 0.000 +2001 0.333 0.667 0.000 0.000 +2003 0.000 1.000 0.000 0.000 +2006 0.000 0.000 1.000 0.000 +2010 0.000 0.000 0.000 1.000 + 2260001030 0 9999 RA2 RA41 RA42 +1900 1.000 0.000 0.000 +2006 0.650 0.350 0.000 +2007 0.300 0.700 0.000 +2008 0.150 0.850 0.000 +2009 0.000 1.000 0.000 + 2265001030 0 9999 RA4 RA40 RA41 RA42 +1900 1.000 0.000 0.000 0.000 +1999 0.667 0.333 0.000 0.000 +2001 0.333 0.667 0.000 0.000 +2003 0.000 1.000 0.000 0.000 +2006 0.000 0.500 0.500 0.000 +2007 0.000 0.000 1.000 0.000 + 2265004010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.050 0.070 0.880 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.025 0.035 0.440 0.052 0.448 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.104 0.896 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004011 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.150 0.060 0.790 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.075 0.030 0.395 0.072 0.429 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.143 0.857 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2260004020 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260004021 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2260004025 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260004025 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.490 0.005 0.005 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.980 0.010 0.010 0.000 0.000 0.000 +1998 0.000 0.000 0.000 0.972 0.010 0.018 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2265004025 3 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.063 0.936 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.032 0.468 0.037 0.463 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.073 0.927 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004025 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2260004026 0 1 G2H3 G2H31 G2H3C1 G2H32 G4H31 G2H3C2 G4H32 +1900 1.000 0.0000 0.0000 0.000 0.000 0.000 0.000 +1996 0.500 0.4950 0.0050 0.000 0.000 0.000 0.000 +1997 0.000 0.9900 0.0100 0.000 0.000 0.000 0.000 +2002 0.000 0.7425 0.0075 0.000 0.000 0.250 0.000 +2003 0.000 0.4950 0.0050 0.000 0.000 0.500 0.000 +2004 0.000 0.2475 0.0025 0.000 0.000 0.750 0.000 +2005 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 +2006 0.000 0.0000 0.0000 0.000 0.000 1.000 0.000 + 2260004026 1 3 G2H4 G2H4C G4H4 G2H41 G2H4C1 G4H41 G2H42 G2H4C2 G4H42 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.500 0.000 0.000 0.490 0.005 0.005 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.980 0.010 0.010 0.000 0.000 0.000 +1998 0.000 0.000 0.000 0.972 0.010 0.018 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.675 0.075 0.000 0.000 0.200 0.050 +2003 0.000 0.000 0.000 0.450 0.050 0.000 0.000 0.400 0.100 +2004 0.000 0.000 0.000 0.225 0.025 0.000 0.000 0.600 0.150 +2005 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 +2006 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.800 0.200 + 2265004026 3 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.063 0.936 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.032 0.468 0.037 0.463 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.073 0.927 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004026 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004030 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.010 0.990 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.005 0.495 0.010 0.490 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.019 0.981 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004030 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.002 0.998 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.001 0.499 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004031 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.010 0.990 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.005 0.495 0.010 0.490 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.019 0.981 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004031 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.002 0.998 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.001 0.499 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2260004035 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2260004035 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2260004036 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2260004036 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004035 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2265004035 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004036 0 6 G2N1 G4N1O G4N1S +1900 0.600 0.080 0.320 + 2265004036 6 25 G2N2 G4N2O G4N2S +1900 0.000 0.200 0.800 + 2265004040 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004040 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.164 0.836 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.082 0.418 0.082 0.418 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.164 0.836 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.082 0.418 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.062 0.313 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.041 0.209 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.020 0.105 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004041 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004041 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.164 0.836 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.082 0.418 0.082 0.418 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.164 0.836 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.082 0.418 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.062 0.313 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.041 0.209 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.020 0.105 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004055 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.027 0.973 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.013 0.487 0.018 0.481 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.037 0.963 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004055 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.007 0.993 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.003 0.497 0.003 0.497 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.007 0.993 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.003 0.497 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.002 0.373 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.001 0.249 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004056 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.027 0.973 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.013 0.487 0.018 0.481 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.037 0.963 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004056 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.007 0.993 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.003 0.497 0.003 0.497 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.007 0.993 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.003 0.497 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.002 0.373 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.001 0.249 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265004071 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.086 0.349 0.565 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.043 0.175 0.282 0.199 0.301 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.398 0.602 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265004071 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.413 0.587 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.207 0.293 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.413 0.587 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.206 0.294 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.155 0.220 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.104 0.146 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.052 0.073 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265005040 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 0.500 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 0.375 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 0.250 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.000 0.125 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265006005 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.006 0.020 0.974 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.010 0.487 0.016 0.484 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.032 0.968 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265006005 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.078 0.922 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.039 0.461 0.039 0.461 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.078 0.922 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.039 0.461 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.030 0.345 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.020 0.230 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.010 0.115 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2265006010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 0.500 0.005 0.495 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.010 0.990 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2265006010 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.000 0.143 0.857 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.072 0.428 0.072 0.428 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.143 0.857 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.071 0.429 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.053 0.322 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.035 0.215 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.017 0.108 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2260007005 6 9999 G2H5 G2H5C G2H51 G2H5C1 G2H52 G2H5C2 +1900 1.000 0.000 0.0000 0.0000 0.000 0.000 +1996 0.500 0.000 0.4950 0.0050 0.000 0.000 +1997 0.000 0.000 0.9900 0.0100 0.000 0.000 +2002 0.000 0.000 0.9900 0.0100 0.000 0.000 +2003 0.000 0.000 0.9900 0.0100 0.000 0.000 +2004 0.000 0.000 0.7425 0.0075 0.250 0.000 +2005 0.000 0.000 0.4950 0.0050 0.500 0.000 +2006 0.000 0.000 0.2475 0.0025 0.750 0.000 +2007 0.000 0.000 0.0000 0.0000 1.000 0.000 +2008 0.000 0.000 0.0000 0.0000 1.000 0.000 + 2265010010 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2267000000 25 9999 LGT25 LGT251 LGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2268000000 25 9999 NGT25 NGT251 NGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2270000000 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2270000000 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2270000000 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2270000000 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.000 0.900 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2270000000 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.900 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270000000 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.300 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2270009010 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2270009010 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.300 0.000 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.200 0.000 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 + 2282005010 0 3 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.900 0.000 0.000 0.100 0.000 0.000 0.000 +1998 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.620 0.000 0.000 0.380 0.000 0.000 0.000 +2000 0.673 0.000 0.000 0.327 0.000 0.000 0.000 +2001 0.601 0.000 0.000 0.399 0.000 0.000 0.000 +2002 0.350 0.000 0.000 0.650 0.000 0.000 0.000 +2003 0.104 0.000 0.000 0.896 0.000 0.000 0.000 +2004 0.088 0.000 0.000 0.912 0.000 0.000 0.000 +2005 0.104 0.000 0.000 0.896 0.000 0.000 0.000 +2006 0.100 0.000 0.000 0.900 0.000 0.000 0.000 + 2282005010 3 6 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.957 0.000 0.000 0.043 0.000 0.000 0.000 +1997 0.870 0.000 0.000 0.130 0.000 0.000 0.000 +1998 0.707 0.000 0.000 0.293 0.000 0.000 0.000 +1999 0.730 0.000 0.000 0.270 0.000 0.000 0.000 +2000 0.596 0.000 0.000 0.404 0.000 0.000 0.000 +2001 0.547 0.000 0.000 0.453 0.000 0.000 0.000 +2002 0.463 0.000 0.000 0.537 0.000 0.000 0.000 +2003 0.443 0.000 0.000 0.557 0.000 0.000 0.000 +2004 0.554 0.000 0.000 0.446 0.000 0.000 0.000 +2005 0.386 0.000 0.000 0.614 0.000 0.000 0.000 +2006 0.400 0.000 0.000 0.600 0.000 0.000 0.000 + 2282005010 6 11 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.957 0.000 0.000 0.043 0.000 0.000 0.000 +1997 0.870 0.000 0.000 0.130 0.000 0.000 0.000 +1998 0.710 0.000 0.000 0.290 0.000 0.000 0.000 +1999 0.672 0.000 0.000 0.328 0.000 0.000 0.000 +2000 0.523 0.000 0.000 0.477 0.000 0.000 0.000 +2001 0.169 0.000 0.000 0.831 0.000 0.000 0.000 +2002 0.269 0.000 0.000 0.731 0.000 0.000 0.000 +2003 0.222 0.000 0.000 0.778 0.000 0.000 0.000 +2004 0.185 0.000 0.000 0.815 0.000 0.000 0.000 +2005 0.157 0.000 0.000 0.843 0.000 0.000 0.000 +2006 0.150 0.000 0.000 0.850 0.000 0.000 0.000 + 2282005010 11 16 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.989 0.000 0.000 0.011 0.000 0.000 0.000 +1998 0.732 0.000 0.000 0.268 0.000 0.000 0.000 +1999 0.802 0.000 0.000 0.198 0.000 0.000 0.000 +2000 0.546 0.000 0.000 0.454 0.000 0.000 0.000 +2001 0.124 0.000 0.000 0.876 0.000 0.000 0.000 +2002 0.203 0.000 0.000 0.797 0.000 0.000 0.000 +2003 0.282 0.000 0.000 0.718 0.000 0.000 0.000 +2004 0.240 0.000 0.000 0.760 0.000 0.000 0.000 +2005 0.132 0.000 0.000 0.868 0.000 0.000 0.000 1.000 +2006 0.150 0.000 0.000 0.850 0.000 0.000 0.000 1.000 + 2282005010 16 25 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 0.989 0.000 0.000 0.011 0.000 0.000 0.000 +1998 0.928 0.000 0.000 0.072 0.000 0.000 0.000 +1999 0.866 0.000 0.000 0.134 0.000 0.000 0.000 +2000 0.720 0.000 0.000 0.280 0.000 0.000 0.000 +2001 0.748 0.000 0.000 0.252 0.000 0.000 0.000 +2002 0.678 0.000 0.000 0.322 0.000 0.000 0.000 +2003 0.535 0.000 0.000 0.465 0.000 0.000 0.000 +2004 0.295 0.000 0.000 0.705 0.000 0.000 0.000 +2005 0.406 0.000 0.000 0.594 0.000 0.000 0.000 1.000 +2006 0.300 0.000 0.000 0.700 0.000 0.000 0.000 1.000 + 2282005010 25 40 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.688 0.000 0.000 0.312 0.000 0.000 0.000 +1999 0.794 0.000 0.000 0.206 0.000 0.000 0.000 +2000 0.569 0.000 0.000 0.431 0.000 0.000 0.000 +2001 0.421 0.000 0.000 0.579 0.000 0.000 0.000 +2002 0.385 0.000 0.000 0.566 0.049 0.000 0.000 +2003 0.515 0.000 0.000 0.396 0.089 0.000 0.000 +2004 0.390 0.000 0.000 0.368 0.242 0.000 0.000 +2005 0.267 0.000 0.000 0.532 0.201 0.000 0.000 +2006 0.250 0.000 0.000 0.500 0.250 0.000 0.000 + 2282005010 40 50 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.945 0.000 0.000 0.055 0.000 0.000 0.000 +1999 0.758 0.000 0.000 0.242 0.000 0.000 0.000 +2000 0.460 0.000 0.001 0.249 0.000 0.290 0.000 +2001 0.689 0.000 0.019 0.155 0.000 0.137 0.000 +2002 0.615 0.000 0.051 0.181 0.000 0.153 0.000 +2003 0.566 0.000 0.029 0.299 0.000 0.106 0.000 +2004 0.645 0.000 0.000 0.125 0.000 0.230 0.000 +2005 0.412 0.000 0.026 0.127 0.000 0.435 0.000 +2006 0.400 0.000 0.050 0.150 0.000 0.400 0.000 + 2282005010 50 75 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.791 0.000 0.000 0.156 0.000 0.054 0.000 +1999 0.785 0.000 0.000 0.067 0.000 0.148 0.000 +2000 0.639 0.000 0.000 0.145 0.000 0.216 0.000 +2001 0.460 0.000 0.000 0.456 0.000 0.084 0.000 +2002 0.362 0.000 0.000 0.423 0.179 0.037 0.000 +2003 0.384 0.000 0.000 0.439 0.127 0.051 0.000 +2004 0.197 0.000 0.000 0.287 0.428 0.088 0.000 +2005 0.193 0.000 0.000 0.148 0.405 0.254 0.000 +2006 0.200 0.000 0.100 0.000 0.300 0.400 0.000 + 2282005010 75 100 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.837 0.000 0.000 0.163 0.000 0.000 0.000 +2000 0.519 0.000 0.120 0.362 0.000 0.000 0.000 +2001 0.472 0.000 0.085 0.421 0.000 0.022 0.000 +2002 0.476 0.000 0.069 0.300 0.000 0.155 0.000 +2003 0.470 0.000 0.007 0.237 0.000 0.286 0.000 +2004 0.275 0.000 0.170 0.207 0.000 0.348 0.000 +2005 0.310 0.000 0.114 0.001 0.000 0.575 0.000 +2006 0.200 0.000 0.100 0.000 0.300 0.400 0.000 + 2282005010 100 175 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.988 0.012 0.000 0.000 0.000 0.000 0.000 +1998 0.914 0.000 0.086 0.000 0.000 0.000 0.000 +1999 0.702 0.029 0.227 0.000 0.000 0.042 0.000 +2000 0.622 0.068 0.178 0.000 0.059 0.073 0.000 +2001 0.559 0.028 0.202 0.000 0.127 0.084 0.000 +2002 0.487 0.050 0.253 0.000 0.102 0.108 0.000 +2003 0.390 0.041 0.261 0.000 0.105 0.202 0.000 +2004 0.382 0.026 0.055 0.000 0.378 0.159 0.000 +2005 0.167 0.004 0.301 0.000 0.037 0.491 0.000 +2006 0.150 0.050 0.300 0.000 0.050 0.450 0.000 + 2282005010 175 9999 MO2C MO2I MO2D MO4C MO4I MO4D MOC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.967 0.033 0.000 0.000 0.000 0.000 0.000 +1998 0.740 0.072 0.188 0.000 0.000 0.000 0.000 +1999 0.250 0.424 0.326 0.000 0.000 0.000 0.000 +2000 0.338 0.204 0.459 0.000 0.000 0.000 0.000 +2001 0.222 0.150 0.628 0.000 0.000 0.000 0.000 +2002 0.039 0.378 0.449 0.000 0.072 0.062 0.000 +2003 0.005 0.308 0.487 0.000 0.200 0.000 0.000 +2004 0.026 0.106 0.583 0.000 0.243 0.042 0.000 +2005 0.004 0.259 0.595 0.000 0.142 0.000 0.000 +2006 0.000 0.250 0.600 0.000 0.150 0.000 0.000 + 2282005015 0 3 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2282005015 3 6 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2282005015 6 11 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2282005015 11 16 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.800 0.000 0.000 0.000 0.200 0.000 0.000 0.000 +2006 0.600 0.000 0.000 0.000 0.400 0.000 0.000 0.000 + 2282005015 16 25 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 0.218 0.000 0.000 0.000 0.782 0.000 0.000 0.000 +2005 0.200 0.000 0.000 0.000 0.800 0.000 0.000 0.000 + 2282005015 25 40 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2000 0.640 0.000 0.000 0.000 0.360 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2002 0.017 0.000 0.000 0.000 0.983 0.000 0.000 0.000 +2003 0.019 0.000 0.000 0.000 0.981 0.000 0.000 0.000 + 2282005015 40 50 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.700 0.000 0.300 0.000 0.000 0.000 0.000 0.000 + 2282005015 50 75 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.991 0.000 0.000 0.000 0.009 0.000 0.000 0.000 +2000 0.932 0.000 0.000 0.000 0.068 0.000 0.000 0.000 +2001 0.928 0.000 0.000 0.000 0.072 0.000 0.000 0.000 +2002 0.976 0.000 0.000 0.000 0.024 0.000 0.000 0.000 +2003 0.906 0.000 0.000 0.000 0.094 0.000 0.000 0.000 +2004 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.900 0.000 0.000 0.000 0.100 0.000 0.000 0.000 + 2282005015 75 100 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.394 0.606 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.803 0.197 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.770 0.230 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.700 0.150 0.150 0.000 0.000 0.000 0.000 0.000 +2003 0.720 0.219 0.061 0.000 0.000 0.000 0.000 0.000 +2004 0.541 0.459 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.340 0.660 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.300 0.600 0.100 0.000 0.000 0.000 0.000 0.000 + 2282005015 100 175 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.957 0.000 0.043 0.000 0.000 0.000 0.000 0.000 +2000 0.655 0.000 0.229 0.116 0.000 0.000 0.000 0.000 +2001 0.496 0.000 0.242 0.262 0.000 0.000 0.000 0.000 +2002 0.343 0.000 0.245 0.149 0.000 0.072 0.191 0.000 +2003 0.137 0.000 0.336 0.037 0.000 0.192 0.299 0.000 +2004 0.174 0.000 0.055 0.000 0.000 0.455 0.316 0.000 +2005 0.059 0.000 0.036 0.000 0.000 0.068 0.837 0.000 +2006 0.050 0.000 0.050 0.000 0.000 0.050 0.850 0.000 + 2282005015 175 9999 MP2C MP2I MP2D MP2CA MP4C MP4I MP4D MPC1 +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.480 0.520 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.588 0.300 0.112 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.686 0.314 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.500 0.500 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.863 0.137 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.690 0.310 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.700 0.300 0.000 0.000 0.000 0.000 0.000 + 2282010005 0 50 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 + 2282010005 50 175 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +2004 0.917 0.083 0.000 +2005 0.833 0.167 0.000 +2006 0.750 0.250 0.000 +2007 0.667 0.333 0.000 +2008 0.583 0.417 0.000 + 2282010005 175 300 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +1996 0.900 0.100 0.000 +1997 0.800 0.200 0.000 +1998 0.700 0.300 0.000 +1999 0.600 0.400 0.000 +2000 0.562 0.439 0.000 +2001 0.523 0.477 0.000 +2002 0.485 0.516 0.000 +2003 0.446 0.554 0.000 +2004 0.388 0.612 0.000 +2005 0.331 0.669 0.000 +2006 0.273 0.727 0.000 +2007 0.215 0.785 0.000 +2008 0.158 0.842 0.000 + 2282010005 300 600 MS4C MS4D MSC1 +1900 1.000 0.000 0.000 +1995 0.900 0.100 0.000 +1996 0.800 0.200 0.000 +1997 0.700 0.300 0.000 +1998 0.600 0.400 0.000 +1999 0.500 0.500 0.000 +2000 0.375 0.625 0.000 +2001 0.250 0.750 0.000 +2002 0.125 0.875 0.000 +2003 0.000 1.000 0.000 + 2282010005 600 9999 MS4C MS4D MS4X +1900 1.000 0.000 0.000 +1995 0.900 0.100 0.000 +1996 0.800 0.200 0.000 +1997 0.700 0.300 0.000 +1998 0.600 0.400 0.000 +1999 0.500 0.500 0.000 + 2282020000 0 25 BaseM T0M T1M T2M T3M +1900 1.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 +2007 0.000 0.000 0.000 1.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 + 2282020000 25 50 BaseM T0M T1M T2M T3M T4M +1900 1.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 +2000 0.000 0.100 0.900 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 0.000 0.000 1.000 + 2282020000 50 75 BaseM T2M T3M T4M +1900 1.000 0.000 0.000 0.000 +2007 0.000 1.000 0.000 0.000 +2009 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 1.000 + 2282020000 75 100 BaseM T2M T3M T4M +1900 1.000 0.000 0.000 0.000 +2007 0.000 1.000 0.000 0.000 +2009 0.000 0.000 1.000 0.000 +2014 0.000 0.000 0.000 1.000 + 2282020000 100 175 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2282020000 175 300 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2013 0.000 0.000 1.000 + 2282020000 300 750 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2014 0.000 0.000 1.000 + 2282020000 750 1200 BaseM T2M T3M +1900 1.000 0.000 0.000 +2006 0.000 1.000 0.000 +2013 0.000 0.000 1.000 + 2282020000 1200 2000 BaseM T2M T3M +1900 1.000 0.000 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2282020000 2000 9999 BaseM T2M T3M +1900 1.000 0.000 0.000 +2009 0.000 1.000 0.000 +2012 0.000 0.000 1.000 + 2285002015 0 11 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2285002015 11 25 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 + 2285002015 25 50 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1999 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2285002015 50 75 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.000 0.900 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 +2013 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 + 2285002015 75 100 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1998 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.100 0.000 0.000 0.900 0.000 0.000 0.000 0.000 +2010 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 100 175 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1997 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2012 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 175 300 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2005 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 300 600 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2003 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 600 750 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2002 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2004 0.000 0.000 0.100 0.900 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.100 0.000 0.900 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.500 0.500 +2014 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285002015 750 9999 Base T0 T1 T2 T3 T3B T4A T4B T4 T4N +1900 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +1988 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 +2006 0.000 0.000 0.300 0.700 0.000 0.000 0.000 0.000 0.000 0.000 +2008 0.000 0.000 0.200 0.800 0.000 0.000 0.000 0.000 0.000 0.000 +2009 0.000 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 +2011 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.000 +2015 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 + 2285004015 0 6 G2N1 G4N1O G4N1S G4N1O1 G4N1S1 G4N1O2 G4N1S2 G4N1O3 G4N1S3 +1900 0.180 0.069 0.751 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.090 0.035 0.375 0.083 0.417 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.167 0.833 0.000 0.000 0.000 0.000 +2007 0.000 0.000 0.000 0.097 0.486 0.167 0.250 0.000 0.000 +2008 0.000 0.000 0.000 0.000 0.000 0.400 0.600 0.000 0.000 + 2285004015 6 25 G2N2 G4N2O G4N2S G4N2O1 G4N2S1 G4N2O2 G4N2S2 G4N23a G4N23b +1900 0.005 0.018 0.977 0.000 0.000 0.000 0.000 0.000 0.000 +1996 0.003 0.009 0.488 0.000 0.500 0.000 0.000 0.000 0.000 +1997 0.000 0.000 0.000 0.017 0.983 0.000 0.000 0.000 0.000 +2001 0.000 0.000 0.000 0.008 0.492 0.500 0.000 0.000 0.000 +2002 0.000 0.000 0.000 0.006 0.369 0.625 0.000 0.000 0.000 +2003 0.000 0.000 0.000 0.004 0.246 0.750 0.000 0.000 0.000 +2004 0.000 0.000 0.000 0.002 0.123 0.875 0.000 0.000 0.000 +2005 0.000 0.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 + 2285004015 25 9999 G4GT25 G4GT251 G4GT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2285006015 25 9999 LGT25 LGT251 LGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 + 2285008015 25 9999 NGT25 NGT251 NGT252 +1900 1.000 0.000 0.000 +2004 0.000 1.000 0.000 +2007 0.000 0.000 1.000 +/END/ diff --git a/NONROAD/NR08a/NONROAD.exe b/NONROAD/NR08a/NONROAD.exe new file mode 100644 index 0000000..2a3b23c Binary files /dev/null and b/NONROAD/NR08a/NONROAD.exe differ diff --git a/NONROAD/NR08a/OUTPUTS/placeholder.txt b/NONROAD/NR08a/OUTPUTS/placeholder.txt new file mode 100644 index 0000000..b3a4252 --- /dev/null +++ b/NONROAD/NR08a/OUTPUTS/placeholder.txt @@ -0,0 +1 @@ +placeholder \ No newline at end of file diff --git a/NONROAD/NR08a/SOURCE/agedist.f b/NONROAD/NR08a/SOURCE/agedist.f new file mode 100644 index 0000000..e98f7cc --- /dev/null +++ b/NONROAD/NR08a/SOURCE/agedist.f @@ -0,0 +1,193 @@ +C**** AGEDIST +c + subroutine agedist( ierr, baspop, mdyrfrc, ibaspopyr, igrwthyr, + & nyrlif, yryrfrcscrp, infips, indcod ) +c +c--------------------------------------------------------------------- +c +c This is based on ScrapDir.doc and scrap-2.xls (AgeDist +c worksheet). +c +c This routine grows the model-year fractions (age distribution) +c from the base-population year to the growth year. +c +c If the two years are the same or the growth year is less than +c the base-population year, age distribution is untouched. +c Otherwise, the age distribution is grown forward to the growth +c year. +c +c If the growth year is less than the base-population year, the +c base population is grown backward to the value for the growth +c year. This is necessary because there is no way to grow +c the age distribution backward, so the initial age distribution +c is used, and since the age distribution is relative to the +c base-year population, the population must be adjusted to +c maintain this relationship. +c +c Argument declaration +c Outputs: +c ierr I error indicator flag +c baspop R base-year population (also input) +c mdyrfrc R model-year fractions by age (age +c distribution) for growth year (also input) +c Inputs: +c mdyrfrc R model-year fractions by age (age +c distribution) for first full-scrappage year +c ibaspopyr I base population year +c igrwthyr I year to which to grow +c nyrlif I number of years in the lifetime (years +c from initial sale to full scrappage) +c yryrfrcscrp R year-to-year faction scrapped by age +c infips I FIPS code +c indcod C indicator code +c +c--------------------------------------------------------------------- +c LOG: +c--------------------------------------------------------------------- +c +c 03/24/05 -cimulus- original development based on +c ScrapDir.doc and scrap-2.xls +c 04/05/05 -cimulus- do not allow populations or +c age-distribution fractions to go below +c zero; also, removed backward growth +c handling (keep initial age-distribution +c fractions when growth year less than +c base-population year) +c 04/30/05 -cimulus- removed debug output +c 05/04/05 -cimulus- changed calculation of totpopfrc to use +c compound growth +c 05/05/05 -cimulus- added special case handling that uses a +c minimum base population of MINGRWIND in +c case grwfac had to adjust the base-year +c indicator to avoid divide by zero +c +c--------------------------------------------------------------------- +c Include files: +c--------------------------------------------------------------------- +c + IMPLICIT NONE +c + include 'nonrdprm.inc' +c +c--------------------------------------------------------------------- +c Argument declarations: +c--------------------------------------------------------------------- +c + integer*4 ierr + real*4 baspop + real*4 mdyrfrc(MXAGYR) + integer*4 ibaspopyr + integer*4 igrwthyr + integer*4 nyrlif + real*4 yryrfrcscrp(MXAGYR) + character*5 infips + character*4 indcod +c +c--------------------------------------------------------------------- +c External functions: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Local variables: +c--------------------------------------------------------------------- +c + integer*4 iyear ! year loop iterator + integer*4 iage ! engine-age year iterator + real*4 tmpfrc(MXAGYR) ! temporary storage of model-year fractions + real*4 totpop ! total population for the current growth year + real*4 totpopfrc ! total population for the current growth year relative to base population + real*4 grwthfc ! growth factor between previous year and current growth year + real*4 frcsum ! sum of new model-year fractions +c +c--------------------------------------------------------------------- +c Entry point: +c--------------------------------------------------------------------- +c + ierr = IFAIL +c +c --- if growth year greater than base-population year, +c grow forward to growth year --- +c + if( igrwthyr .GT. ibaspopyr ) then + totpop = baspop + do iyear=ibaspopyr+1,igrwthyr +c --- store the current model-year fractions --- + do iage=1,MXAGYR + tmpfrc(iage) = mdyrfrc(iage) + end do +c +c --- calculate new total population fraction --- + call grwfac( ierr, grwthfc, iyear - 1, iyear, + & infips, indcod ) + if( ierr .NE. ISUCES ) goto 9999 + if( grwthfc .NE. 0. ) then +c --- if non-zero growth factor, don't use an initial base population +c value below minimum growth indicator, since grwfac never goes +c below this for the base-year indicator (to avoid divide by zero); +c therefore if grwfac adjusted the base-year indicator value, +c base population must be adjusted accordingly --- + totpop = max(MINGRWIND, totpop) + endif + totpop = max(0., totpop * (1. + grwthfc)) ! do not allow population to go below 0 +c technically this should be "totpop = max(0., totpop * (1 + (grwthfc * (year2 - year1)))", +c but "year2" is known to be one greater than "year1", hence the above simplification + totpopfrc = totpop / baspop +c +c --- increment model-year fractions to the next year --- + frcsum = 0. + do iage=2,MXAGYR + mdyrfrc(iage) = max(0., tmpfrc(iage - 1) * + & (1. - yryrfrcscrp(iage))) ! do not allow fraction to go below 0 + frcsum = frcsum + mdyrfrc(iage) + end do + mdyrfrc(1) = totpopfrc - frcsum + end do + endif +c +c --- if growth year less than base-population year, +c grow base-year population backward to growth year --- +c + if( igrwthyr .LT. ibaspopyr ) then +c +c --- calculate growth factor from base-population year +c back to growth year --- + call grwfac( ierr, grwthfc, ibaspopyr, igrwthyr, + & infips, indcod ) + if( ierr .NE. ISUCES ) goto 9999 +c +c --- grow base-year population backward --- + if( grwthfc .NE. 0. ) then +c --- if non-zero growth factor, don't use an initial base population +c value below minimum growth indicator, since grwfac never goes +c below this for the base-year indicator (to avoid divide by zero); +c therefore if grwfac adjusted the base-year indicator value, +c base population must be adjusted accordingly --- + baspop = max(MINGRWIND, baspop) + endif + baspop = max(0., baspop * + & (1. + ((igrwthyr - ibaspopyr) * grwthfc))) + endif +c +c --- set error code to sucess and return --- +c + ierr = ISUCES + goto 9999 +c +c--------------------------------------------------------------------- +c Error messages: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Format statements: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Return point: +c--------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/alocty.f b/NONROAD/NR08a/SOURCE/alocty.f new file mode 100644 index 0000000..7ce282d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/alocty.f @@ -0,0 +1,181 @@ +C**** ALOCTY +c + subroutine alocty(ierr,popcty,grwcty, + & icurec,popyr,idxsta,idxasc,luse,growth) +c +c----------------------------------------------------------------------- +c +c This routine calculates the indicator values for the current record +c in the population arrays. The current record should be a state +c record. The state indicator is retrieved and then for each county in +c the state the indicator is retrieved. These data are used to calculate +c the ratio of state to county which is applied to the state population +c to get county population. This routine will also store the growth +c factors in the county arrays for all counties in the state. +c +c Outputs: +c ierr I error code +c popcty R population for each county +c grwcty R growth values for each county +c Inputs: +c icurec I current record in population arrays +c popyr I population to be allocated +c idxsta I index of state code in arrays +c idxasc I index of SCC codes in arrays +c luse I flag for determining if want usage data +c growth R growth value to store in county arrays +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- original development +c 07/06/05 epa -- change ipopyr(icurec) to iepyr for getind call +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 popcty(NCNTY) + real*4 grwcty(NCNTY) + integer*4 icurec + real*4 popyr + integer*4 idxsta + integer*4 idxasc + logical*4 luse + real*4 growth +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*5 fiptmp, subtmp + integer*4 i, idxfip + integer*4 ibeg, iend + real*4 valout, valalo, valsta(MXCOEF), valcty(MXCOEF) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set the error code ---- +c + ierr = IFAIL +c +c ---- load the FIPS code into local variable --- +c + fiptmp = regncd(icurec)(1:5) + subtmp = ' ' +c +c --- get the allocation indicator for the state ---- +c + do 10 i=1,MXCOEF + valsta(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 111 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valsta(i) = valsta(i) + valout + 10 continue +c +c --- loop over counties in this state ---- +c + 111 continue + ibeg = idxcty(idxsta) + iend = ibeg + nconty(idxsta) - 1 + do 20 idxfip=ibeg,iend + popcty(idxfip) = 0. +c +c --- if county is not requested or has county specific population +c data, then just skip it --- +c + if( .NOT. lfipcd(idxfip) ) goto 20 + if( lctlev(idxfip) ) goto 20 +c +c --- get the indicator values for this county --- +c + fiptmp = fipcod(idxfip) + subtmp = ' ' + do 30 i=1,MXCOEF + valcty(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 222 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valcty(i) = valcty(i) + valout + 30 continue +c +c --- calculate ratio of state to county --- +c + 222 continue + valalo = 0. + do 40 i=1,MXCOEF + if( valsta(i) .GT. 0 ) valalo = valalo + + & (valcty(i) / valsta(i)) * coeffs(idxasc,i) + 40 continue + popcty(idxfip) = popyr * valalo +c +c --- store the growth value --- +c + grwcty(idxfip) = growth +c +c --- next county ---- +c + 20 continue +c +c --- set error code and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7002 continue + write(IOWSTD,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + write(IOWMSG,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/alosta.f b/NONROAD/NR08a/SOURCE/alosta.f new file mode 100644 index 0000000..cc6e91a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/alosta.f @@ -0,0 +1,176 @@ +C**** ALOSTA +c + subroutine alosta(ierr,popsta,grwsta, + & icurec,popyr,idxasc,luse,growth) +c +c----------------------------------------------------------------------- +c +c This routine calculates the indicator values for the current record +c in the population arrays. The current record should be a national +c record. The national indicator is retrieved and then for each state +c the state indicator is retrieved. These data are used to calculate +c the ratio of nation to state which is applied to the national population +c to get state population. This routine will also store the growth +c factors in the state arrays for all states. +c +c Outputs: +c ierr I error code +c popsta R population for each state +c grwsta R growth values for each state +c Inputs: +c icurec I current record in population arrays +c popyr I population to be allocated +c idxasc I index of SCC codes in arrays +c luse I flag for determining if want usage data +c growth R growth value to store in county arrays +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- original development +c 07/06/05 epa -- change ipopyr(icurec) to iepyr for getind call +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 popsta(NCNTY) + real*4 grwsta(NCNTY) + integer*4 icurec + real*4 popyr + integer*4 idxasc + logical*4 luse + real*4 growth +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*5 fiptmp, subtmp + integer*4 i, idxsta + real*4 valout, valalo, valnat(MXCOEF), valsta(MXCOEF) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set the error code ---- +c + ierr = IFAIL +c +c ---- load the FIPS code into local variable --- +c + fiptmp = regncd(icurec)(1:5) + subtmp = ' ' +c +c --- get the population for the nation ---- +c + do 10 i=1,MXCOEF + valnat(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 111 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valnat(i) = valnat(i) + valout + 10 continue +c +c --- loop over states ---- +c + 111 continue + do 20 idxsta=1,NSTATE + popsta(idxsta) = 0. +c +c --- if state is not requested or if there is state specific --- +c data, then just skip it --- +c + if( .NOT. lstacd(idxsta) ) goto 20 + if( lstlev(idxsta) ) goto 20 +c +c --- get the indicator values for this state --- +c + fiptmp = statcd(idxsta) + subtmp = ' ' + do 30 i=1,MXCOEF + valsta(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 222 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valsta(i) = valsta(i) + valout + 30 continue +c +c --- calculate ratio of nation to state --- +c + 222 continue + valalo = 0. + do 40 i=1,MXCOEF + if( valnat(i) .GT. 0 ) valalo = valalo + + & (valsta(i) / valnat(i)) * coeffs(idxasc,i) + 40 continue + popsta(idxsta) = popyr * valalo +c +c --- store the growth value --- +c + grwsta(idxsta) = growth +c +c --- next state ---- +c + 20 continue +c +c --- set error code and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7002 continue + write(IOWSTD,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + write(IOWMSG,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/alosub.f b/NONROAD/NR08a/SOURCE/alosub.f new file mode 100644 index 0000000..597b2f0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/alosub.f @@ -0,0 +1,170 @@ +C**** ALOSUB +c + subroutine alosub(ierr,popsub,grwsub,subreg, + & icurec,iyear,popyr,idxfip,idxasc,luse,growth) +c +c----------------------------------------------------------------------- +c +c This routine calculates the indicator values for the current record +c in the population arrays. The current record should be a county +c record. The county indicator is retrieved and then for the specified +c subregion the indicator is retrieved. These data are used to calculate +c the ratio of county to subcounty which is applied to the county population +c to get subcounty population. +c +c Outputs: +c ierr I error code +c popsub R population for the subregion +c grwsub R growth values the subregion +c Inputs: +c subreg C subregion (subcounty) code +c icurec I current record in population arrays +c iyear I year for predicting emissions +c popyr I population to be allocated +c idxfip I index of state code in arrays +c idxasc I index of SCC codes in arrays +c luse I flag for determining if want usage data +c growth R growth value to store in county arrays +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- original development +c 07/06/05 epa -- change ipopyr(icurec) to iepyr for getind call +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*5 subreg + integer*4 ierr + real*4 popsub + real*4 grwsub + integer*4 icurec + integer*4 iyear + real*4 popyr + integer*4 idxfip + integer*4 idxasc + logical*4 luse + real*4 growth +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*5 fiptmp, subtmp + integer*4 i + real*4 valout, valalo, valcty(MXCOEF), valsub(MXCOEF) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set the error code ---- +c + ierr = IFAIL +c +c ---- load the county FIPS code into local variable ---- +c + fiptmp = regncd(icurec)(1:5) + subtmp = ' ' +c +c --- get the allocation indicator for the county ---- +c + do 10 i=1,MXCOEF + valcty(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 111 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valcty(i) = valcty(i) + valout + 10 continue +c +c --- initialize the subcounty population ---- +c + 111 continue + popsub = 0. +c +c --- get the indicator values for the subcounty --- +c + subtmp = subreg + call lftjst( subtmp ) + do 20 i=1,MXCOEF + valsub(i) = 0 + if( strlen( indcod(idxasc,i) ) .EQ. 0 ) goto 222 + call getind( ierr, valout, indcod(idxasc,i), + & fiptmp, subtmp, iepyr ) + if( ierr .EQ. IEOF ) goto 7002 + if( ierr .NE. ISUCES ) goto 9999 + valsub(i) = valsub(i) + valout + 20 continue +c +c --- calculate ratio of county to subcounty --- +c + 222 continue + valalo = 0. + do 30 i=1,MXCOEF + if( valcty(i) .GT. 0 ) valalo = valalo + + & (valsub(i) / valcty(i)) * coeffs(idxasc,i) + 30 continue + popsub = popyr * valalo +c +c --- store the growth value --- +c + grwsub = growth +c +c --- set error code and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7002 continue + write(IOWSTD,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + write(IOWMSG,'(/1X,2A,/9X,A,/9X,A5,4X,A5,10X,A3,5X,I4)',ERR=9999) + & 'ERROR: Could not find any spatial ', + & 'indicator data for: ','FIPS Subregion Code Year', + & fiptmp, subtmp, indcod(idxasc,i), iepyr + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/blknon.f b/NONROAD/NR08a/SOURCE/blknon.f new file mode 100644 index 0000000..989c11e --- /dev/null +++ b/NONROAD/NR08a/SOURCE/blknon.f @@ -0,0 +1,176 @@ +C**** BLKNON +c + BLOCK DATA +c +c----------------------------------------------------------------------- +c +c Block data routine for initializing the global data structures +c used in the NONROAD model. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/06/95 --djk-- original development +c 07/27/98 --gwilson-- added the SI report data +c 06/25/03 -cah- add 75hp split to hpclev +c 06/14/04 --dfk-- commented out resting loss variables +c 11/15/04 --dfk-- added code for rec-marine 3-hose +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c NSIEMS I number of elements in SI emissions array +c + integer*4 NSIEMS +c + parameter( NSIEMS = MXOTCH * MXPOL ) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- scratch filenames ---- +c + data spopfl /'poptmp.txt'/ + data indfl /'indtmp.txt'/ + data grwfl /'grwtmp.txt'/ +c +c --- counters for deterioation factor lists --- +c + data ndtfac /MXPOL*0/ +c +c --- /PERIOD/ packet data --- +c + data ldays /2*.FALSE./ + data lmonth /12*.FALSE./ + data idseas /IDXWTR, IDXWTR, + & IDXSPR, IDXSPR, IDXSPR, + & IDXSUM, IDXSUM, IDXSUM, + & IDXFAL, IDXFAL, IDXFAL, + & IDXWTR/ +c +c --- AMS criteria pollutant names and SAROAD codes --- +c + data amspol(IDXTHC) / AMSTHC / + data amspol(IDXNOX) / AMSNOX / + data amspol(IDXSOX) / AMSSOX / + data amspol(IDXCO) / AMSCO / + data amspol(IDXCO2) / AMSCO2 / + data amspol(IDXPM) / AMSPM / + data amspol(IDXCRA) / AMSTHC / + data amspol(IDXDIU) / AMSTHC / + data amspol(IDXDIS) / AMSTHC / + data amspol(IDXTKP) / AMSTHC / + data amspol(IDXHOS) / AMSTHC / + data amspol(IDXNCK) / AMSTHC / + data amspol(IDXSR ) / AMSTHC / + data amspol(IDXVNT) / AMSTHC / + data amspol(IDXSPL) / AMSTHC / + data amspol(IDXSOK) / AMSTHC / + data amspol(IDXRLS) / AMSTHC / +C data amspol(IDXRST) / AMSTHC / + data amspol(IDSTHC) / AMSTHC / + data amspol(IDSNOX) / AMSNOX / + data amspol(IDSCO) / AMSCO / + data amspol(IDSPM) / AMSPM / + data amspol(IDSSOX) / AMSSOX / + data amspol(IDSCO2) / AMSCO2 / +c + data iscod(IDXTHC) / ISCTHC / + data iscod(IDXNOX) / ISCNOX / + data iscod(IDXCO) / ISCCO / + data iscod(IDXSOX) / ISCSOX / + data iscod(IDXPM) / ISCPM / +c data iscod(IDXCO2) / ISCCO2 / + data iscod(IDXCRA) / ISCTHC / + data iscod(IDXDIU) / ISCTHC / + data iscod(IDXDIS) / ISCTHC / + data iscod(IDXSPL) / ISCTHC / + data iscod(IDXSOK) / ISCTHC / + data iscod(IDXRLS) / ISCTHC / +C data iscod(IDXRST) / ISCTHC / + data iscod(IDSTHC) / ISCTHC / + data iscod(IDSNOX) / ISCNOX / + data iscod(IDSCO) / ISCCO / + data iscod(IDSPM) / ISCPM / + data iscod(IDSSOX) / ISCSOX / +c data iscod(IDSCO2) / ISCCO2 / +c +c --- model pollutant names --- +c + data polnam(IDXTHC) / NMETHC / + data polnam(IDXNOX) / NMENOX / + data polnam(IDXSOX) / NMESOX / + data polnam(IDXCO) / NMECO / + data polnam(IDXCO2) / NMECO2 / + data polnam(IDXPM) / NMEPM / + data polnam(IDXCRA) / NMCRA / + data polnam(IDXDIU) / NMDIU / + data polnam(IDXDIS) / NMREF / + data polnam(IDXTKP) / NMTKP / + data polnam(IDXHOS) / NMHOS / + data polnam(IDXNCK) / NMNCK / + data polnam(IDXSR) / NMSR / + data polnam(IDXVNT) / NMVNT / + data polnam(IDXSPL) / NMSPL / + data polnam(IDXSOK) / NMHSOK / + data polnam(IDXRLS) / NMRLS / +C data polnam(IDXRST) / NMRST / + data polnam(IDSTHC) / NMSTHC / + data polnam(IDSNOX) / NMSNOX / + data polnam(IDSCO) / NMSCO / + data polnam(IDSPM) / NMSPM / + data polnam(IDSSOX) / NMSSOX / + data polnam(IDSCO2) / NMSCO2 / +c +c --- intialize global horse power categories --- +c + data hpclev / 1., 3., 6., 11., 16., 25., 40., 50., 75., 100., + & 175., 300., 600., 750., 1000., 1200., 2000., + & 3000./ +c +c ---- array of tech types used in SI report --- +c + data sitech / + & "G2N1" ,"G2N11" ,"G2N12" ,"G4N1O" ,"G4N1O1" ,"G4N1O2" , + & "G4N1S" ,"G4N1S1" ,"G4N1S2" ,"G4N1SC" ,"G4N1SC1" ,"G4N1SC2", + & "G2N2" ,"G2N21" ,"G2N22" ,"G4N2O" ,"G4N2O1" ,"G4N2O2" , + & "G4N2S" ,"G4N2S1" ,"G4N2S2" ,"G2H3" ,"G2H31" ,"G2H32" , + & "G2H3C" ,"G2H3C1" ,"G2H3C2" ,"G2H4" ,"G2H41" ,"G2H42" , + & "G2H4C" ,"G2H4C1" ,"G2H4C2" ,"G4H4" ,"G4H41" ,"G4H42" , + & "G2H5" ,"G2H51" ,"G2H52" ,"G2H5C" ,"G2H5C1" ,"G2H5C2" / +c +c ---- index into arrays for each tech type --- +c + data indxsi / + & 1, 1, 1, 2, 2, 2 , + & 3, 3, 3, 4, 4, 4 , + & 5, 5, 5, 6, 6, 6 , + & 7, 7, 7, 8, 8, 8 , + & 9, 9, 9, 10, 10, 10 , + & 11, 11, 11, 12, 12, 12 , + & 13, 13, 13, 14, 14, 14 / +c +c --- totals arrays for SI report --- +c + data popsi /MXOTCH*0.0/ + data actsi /MXOTCH*0.0/ + data fuelsi /MXOTCH*0.0/ + data emissi /NSIEMS*0.0/ +c + end + diff --git a/NONROAD/NR08a/SOURCE/chkasc.f b/NONROAD/NR08a/SOURCE/chkasc.f new file mode 100644 index 0000000..55521df --- /dev/null +++ b/NONROAD/NR08a/SOURCE/chkasc.f @@ -0,0 +1,115 @@ +C**** CHKASC +c + function chkasc( ascin, skipunreq ) +C + IMPLICIT NONE +C + logical*4 chkasc +c +c----------------------------------------------------------------------- +c +c This routine searches through the array of equipment codes and +c compares the codes to the code in the argument list. It will +c skip any SCC codes that were not requested. The comparison is +c done to make sure that the code in the argument list is needed. +c Since the code in the argument list may be a global code it is +c not as simple as just check for an exact match. To do this, +c pass false for skipunreq. +c +c This can also be used to do a straight validation of the input +c code (i.e., whether or not the SCC is valid, as opposed to +c whether or not the code was requested). To do this, pass true +c for skipunreq. +c +c Arguments: +c Inputs: +c ascin C code to match +c skipunreq L whether or not to skip unrequested SCCs +c Return Value: +c .TRUE. = code will be used +c .FALSE. = code will not be used +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/95 -gmw- Original development +c 05/19/05 -cimulus- Added skipunreq parameter to allow alternate +c usage of this function for SCC validation (in +c addition to being able to use if for +c determining whether or not an SCC or global +c was requested) +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*(10) ascin + logical*4 skipunreq +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize return value ---- +c + chkasc = .FALSE. +c +c ---- loop through the array --- +c + do 10 i=1,NEQNAM +c +c ---- skip the equipment code if not requested +c and skipping is desired ---- +c + if( (.NOT. lascat(i)) .AND. skipunreq ) goto 10 +c +c --- if exact match set return value and return --- +c + if( ascin .EQ. eqpcod(i) ) then + chkasc = .TRUE. + goto 9999 + endif +c +c --- if input SCC is global check for a global match --- +c + if( ascin(5:10) .EQ. '000000' ) then + if( ascin(1:4) .EQ. eqpcod(i)(1:4) ) then + chkasc = .TRUE. + goto 9999 + endif + else if( ascin(8:10) .EQ. '000' ) then + if( ascin(1:7) .EQ. eqpcod(i)(1:7) ) then + chkasc = .TRUE. + goto 9999 + endif + endif +c +c --- no match yet, check the next code --- +c + 10 continue +c +c ---- no match, return false --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/chkwrn.f b/NONROAD/NR08a/SOURCE/chkwrn.f new file mode 100644 index 0000000..2fccea9 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/chkwrn.f @@ -0,0 +1,102 @@ +c**** CHKWRN +c + subroutine chkwrn(ierr,idxwrn) +c +c----------------------------------------------------------------------- +c +c This routine increments the counter for the number of warnings +c and checks if the limit has been exceeded. If so, an error message +c is produced and an error code of fail is returned. +c Argument descriptions: +c Outputs: +c ierr I error code +c Inputs: +c idxwrn I index of type of warning in the counter array +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/28/98 --gmw-- original developnent +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 idxwrn +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initilialize the error code --- +c + ierr = IFAIL +c +c --- incrament the overall warning counter ---- +c + nwarn = nwarn + 1 +c +c --- incrament the counter for this warning type and check against +c allowable limit --- +c + nwrnct(idxwrn) = nwrnct(idxwrn) + 1 +c +c --- if over the limit, display an error message ---- +c + if( nwrnct(idxwrn) .GT. MXWARN ) goto 7000 +c +c --- everything OK, set error code to sucess and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,I3,A)',ERR=9999) 'ERROR: There were ', + & nwarn,' warnings written to the message file.' + write(IOWSTD,'(1X,2A)',ERR=9999) 'The number of warnings ', + & 'produced during this run indicates a problem ' + write(IOWSTD,'(1X,2A)',ERR=9999) 'with the input data. Update ', + & 'the appropriate data files and try again.' + write(IOWMSG,'(//,1X,2A)',ERR=9999) 'The number of warnings ', + & 'produced during this run indicates a problem ' + write(IOWMSG,'(1X,2A)',ERR=9999) 'with the input data. Update ', + & 'the appropriate data files and try again.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/chrsrt.f b/NONROAD/NR08a/SOURCE/chrsrt.f new file mode 100644 index 0000000..94be678 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/chrsrt.f @@ -0,0 +1,86 @@ +C**** CHRSRT +c + subroutine chrsrt(array,ilen,ncount,itglst) +c----------------------------------------------------------------------- +c +c Sorts an array of character strings lexicographically. The sorted +c order of elements of the array is stored in the array itglst. +c That is, the value of the ith element of the sorted version of array +c is array(itglst(i)) +c Strings to sort must have length less than or equal to MXSTR. +c +c Argument description: +c Inputs: +c array C array of character strings to sort +c ilen I declared length of character string +c ncount I number of elements in array +c Outputs: +c itglst I array of indexes of original array elements in +c sorted order +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 01/10/92 -gmw- Original development (taken from PRPMPP code, SAI) +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ncount + character*(*) array(ncount) + integer*4 ilen + integer*4 itglst(ncount) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c string C string for temporary storage +c + character*(MXSTR) string + integer i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- Start with 1 element presumed sorted +c (ncount_th data element) --- +c + itglst(ncount) = ncount +c +c --- then insertion sort the rest, changing the indices only --- +c + do 10 i=ncount-1,1,-1 + call spinit() + if (array(i)(1:ilen) .LE. array(itglst(i+1))(1:ilen) ) then + itglst(i) = i + else + string(1:ilen) = array(i)(1:ilen) + j = i + 1 + 111 continue + itglst(j-1) = itglst(j) + j = j + 1 + if (j .LE. ncount) THEN + if(array(itglst(j))(1:ilen) .LT. string(1:ilen)) goto 111 + end if + itglst(j-1) = i + endif + 10 continue +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + return + end diff --git a/NONROAD/NR08a/SOURCE/clcems.f b/NONROAD/NR08a/SOURCE/clcems.f new file mode 100644 index 0000000..f81bbd3 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/clcems.f @@ -0,0 +1,360 @@ +c**** CLCEMS +c + subroutine clcems(ierr, emsday, emsbmy, + & idxyr, idxtec, idxtch, dage, detcap, adetcf, bdetcf, + & idxunt, tfrac, hpval, denful, bsfval, iact, adjems, + & adjtime, emsfac, tpltmp, sadj, pop, mfrac, ndays, + & afac ) +c +c----------------------------------------------------------------------- +c +c This routine calculates emissions +c Argument descriptions: +c Outputs: +c ierr I error flag +c emsday R calculated emissions +c emsbmy R calculated emissions by-model-year +c Inputs: +c idxyr I year index +c idxtec I technology type index +c idxtch I number of technology types +c dage R age of deterioration +c detcap R cap on age of equip for deterioration calc +c adetcf R A coefficient of deterioration factor equation +c bdetcf R B coefficient of deterioration factor equation +c idxunt I index of unit conversion +c tfrac R technology type fraction +c hpval R horsepower +c denful R fuel density +c bsfval R bsfc value +c iact I activity index +c adjems R adjustment factors +c adjtime R time period adjustment factor +c emsfac R emission factors +c sadj R starts hour +c tpltmp R temporal adjustment factor +c pop R population +c mfrac R model year fraction +c ndays I number of period days +c afac R activity adjustment +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 10/8/98 --mmj-- taken from the process routines 'prcxxx' +c 02/10/00 mjimenez added error to diurnal calc if no spillage file +c 01/19/01 charvey adds code for T3 & T4 sulfur PM adjustment. +c 06/11/01 -3 charvey mods vapor disp equation from NEVES to ORVR. +c 06/14/01 -4 charvey adds carbon fractions by fuel type for CO2. +c 06/25/01 -5 charvey fixes carbon fract: IDXGS2/4, not IDXGAS. +c 08/03/01 -6 charvey tries T5 sulf PM adj using ".LT. T4" code +c 08/31/01 -7 charvey/bgiannelli remove unused modscp declaration. +c 09/28/01 -11 charvey fixes SOx calc for LPG & CNG. +c 10/30/01 -12 charvey allow CI base sulfur input in OPT file packet. +c 02/26/02 -13 charvey: T4 & T4N sulfate conversion 30% from 2.2% for SOX & PM. +c 03/14/02 -14 charvey: fix stage II to only apply to pump refueling. +c 05/27/04 -dfk- changed to only calculate exhaust and start emissions +c 06/15/04 -dfk- added optional daily temperature/RVP corrections +c 09/21/04 -dfk- changed emsbmy to sum over all days +c 09/22/04 -dfk- added rec marine sulfur code from NR04n2. +c 01/11/05 -dfk- added code to process months, seasons, or annual periods +c 03/03/05 -dfk- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 05/23/05 -cimulus- apply the retrofit reduction, if any +c 06/22/05 -EPA- fix detcap handling for other than 1.0 medlife. +c 07/19/05 -cimulus- removed unused variables/functions +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c sulbas values are hard-coded or read from +c file, rather than being calculated at runtime +c 07/29/05 -cimulus- removed unused arguments refmod and fulcsm +c 02/12/06 -epa- set tpltmp2 to 1 if Daily Temp/RVP, handled by daymthf +c This gives properly monthly-activity weighted ANNUAL or +c MONTHLY total values, but NOT seasonal or typical day. +c 04/19/06 --epa-- Fixes all SI Daily Temp/RVP month/season/year. +c 05/09/06 --epa-- Fixes dsl PM/sulfur calc for Daily & TypDay runs. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 emsday(MXPOL) + real*4 emsbmy(MXPOL) +c + integer*4 ierr + integer*4 idxyr + integer*4 idxtec + integer*4 idxtch + integer*4 idxunt(MXPOL,MXTECH) + integer*4 iact + integer*4 ndays + real*4 dage + real*4 detcap(MXPOL,MXTECH) + real*4 adetcf(MXPOL,MXTECH) + real*4 bdetcf(MXPOL,MXTECH) + real*4 tfrac + real*4 hpval + real*4 denful + real*4 bsfval + real*4 adjems(MXPOL,MXDAYS), adjtime + real*4 emsfac(MXAGYR,MXPOL,MXTECH) + real*4 sadj + real*4 tpltmp + real*4 pop + real*4 mfrac + real*4 afac + real*4 soxcnv +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c unitcf R returns unit conversion factor +c fndchr I returns the index of string in array of strings +c + real*4 unitcf + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxspc, idxalt + real*4 cvtbck, sulbas + real*4 detrat, emstmp, emiss, cvttmp, emsthc + real*4 cfrac, temiss + integer*4 jday,jbday,jeday,jbskip,jeskip + logical lskip + real*4 tpltmp2 +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- Do not modify tpltmp, which gets used later in PRC* --- +c + tpltmp2 = tpltmp +c +c --- set looping indexes +c + call dayloop(jbday,jeday,jbskip,jeskip,lskip) +cc +cc if(ldayfl .AND. iprtyp .NE. IDXMTH) tpltmp2 = 1. +cc +c loop over selected period +c + do jday=jbday,jeday +c +c if winter and using daily values, skip 1 March to 30 November, inclusive +c + if(lskip.and.jday.ge.jbskip.and.jday.le.jeskip) cycle +c +c --- calculate emissions for each exhaust or start pollutant --- +c + do 90 idxspc=1,MXPOL +c + if(idxspc.ge.IDXDIU.and.idxspc.le.IDXRLS) cycle +c +c --- skip if emission factor file was not supplied --- +c + if( .NOT. lfacfl(idxspc) .AND. .NOT. + & (idxspc .EQ. IDXCO2 .OR. idxspc .EQ. IDXSOX .OR. + & idxspc .EQ. IDXDIS) ) cycle +c +c --- calculate the detrioration rate from values retrieved earlier ---- +c + if( dage .LE. detcap(idxspc,idxtec) ) then + detrat = 1. + adetcf(idxspc,idxtec) * + & dage**bdetcf(idxspc,idxtec) + else + detrat = 1. + adetcf(idxspc,idxtec) * + & detcap(idxspc,idxtec)**bdetcf(idxspc,idxtec) + endif +c +c --- call routine to get the units converion for this species --- +c + cvttmp = unitcf( idxunt(idxspc,idxtec),hpval,iact, + & denful,bsfval ) + emstmp = emsfac(idxyr,idxspc,idxtec) * cvttmp * detrat * +cc & adjems(idxspc,jday) + & adjems(idxspc,jday) * adjtime +CTEST if(idxspc.eq.IDXTHC.OR.idxspc.eq.IDXNOX) +CTEST &write(99,99) idxyr,idxspc,idxtec,adetcf(idxspc,idxtec), +CTEST &bdetcf(idxspc,idxtec),dage,detrat,emstmp, +CTEST &emsfac(idxyr,idxspc,idxtec),cvttmp,adjems(idxspc,jday) * adjtime +CTEST 99 format(3i3,8es16.6) +c +c --- save the THC exhaust emission factor for use later --- +c + if( idxspc .EQ. IDXTHC ) emsthc = + & emsfac(idxyr,idxspc,idxtec) * cvttmp * detrat +c +c --- calculate the SOx emissions from the HC emission factor --- +c + if( idxspc .EQ. IDXSOX .AND. tfrac .GT. 0. ) then + cvtbck = 1.0 / (hpval * faclod(iact) ) +cc + soxcnv = soxfrc(ifuel) +c +c --- look for alternate sulfur conversion factor by tech type --- +c + idxalt = fndchr( + & tectyp(idxtch,idxtec), 10, sultec, numalt ) + if( idxalt .GT. 0) then + if( sulcnv(idxalt) .GE. 0.) soxcnv = sulcnv(idxalt) + end if +c + emsfac(idxyr,idxspc,idxtec) = hpval * faclod(iact) * + & ( bsfval * 453.6 * (1.0 - soxcnv) + & - emsthc*cvtbck ) * 0.01*soxbas(ifuel) * 2.0 + emstmp = emsfac(idxyr,idxspc,idxtec) * +cc & adjems(idxspc,jday) + & adjems(idxspc,jday) * adjtime + endif +c +c --- calculate the Crankcase emission factor from HC emission factor ---- +c + if( idxspc .EQ. IDXCRA .AND. tfrac .GT. 0 + & .AND. emsfac(idxyr,IDXTHC,idxtec) .GT. 0.0 + & .AND. emsfac(idxyr,IDXCRA,idxtec) .GT. 0.0 ) + & emstmp = emsfac(idxyr,idxspc,idxtec) * emsthc * +cc & adjems(idxspc,jday) + & adjems(idxspc,jday) * adjtime +c +c --- special case for CO2, CO2 emissions are just a function of BSFC --- +c + if( idxspc .EQ. IDXCO2 .AND. tfrac .GT. 0 ) then + cvtbck = 1.0 / (hpval * faclod(iact) ) + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + cfrac = CMFGAS + elseif( ifuel .EQ. IDXDSL ) then + cfrac = CMFDSL + elseif( ifuel .EQ. IDXLPG ) then + cfrac = CMFLPG + elseif( ifuel .EQ. IDXCNG ) then + cfrac = CMFCNG + endif + emsfac(idxyr,idxspc,idxtec) = hpval * faclod(iact) * + & ( bsfval * 453.6 - emsthc*cvtbck ) * cfrac * 44./12. + emstmp = emsfac(idxyr,idxspc,idxtec) * detrat * +cc & adjems(idxspc,jday) + & adjems(idxspc,jday) * adjtime + endif +c +c --- Correction for sulfur content to PM, need to wait until +c now because the correction factor uses BSFC which is by +c technology type. --- +c + if( idxspc .EQ. IDXPM .AND. ifuel .EQ. IDXDSL) then + sulbas = soxbas(IDXDSL) +c +c --- Loop check if there is any alternate base sulfur level +c for this techtype for PM calc only. --- +c + idxalt = fndchr( tectyp(idxtch,idxtec), 10, sultec, numalt) + if( idxalt .GT. 0 ) then + if(sulalt(idxalt) .GE. 0. ) sulbas = sulalt(idxalt) + end if +c +c --- '1.0' means no PM adjustment: in-use expected to equal cert sulfur. +c (but it is not a multiplicative factor). +c + if( sulbas .NE. 1.0 ) then ! floating-point comparison for equality okay; sulbas values are hard-coded or read from file, rather than being calculated at runtime +c + soxcnv = soxfrc(ifuel) + if( idxalt .GT. 0 ) then + if( sulcnv(idxalt) .GE. 0.) soxcnv = sulcnv(idxalt) + end if +c +cc --- Calc sulfur-adjusted PM. The adjems(IDXSOX) handles marine soxdsm +c +cdiag if(hpval .LE. 16.0 .AND. idxyr .EQ. 1 .AND. idxtec .EQ. 2) then +cxdiag if(hpval .LE. 16.0 .AND. idxyr .EQ. 1 .AND. jday .EQ. 1) then +cdiag write(IOWMSG,'(1X,3I4,F7.2,F7.4,F10.7,F7.4,3F10.7,F7.4)') +cdiag & idxyr, idxtec, jday, hpval, bsfval, emstmp, sulbas, soxcnv, +cdiag & adjems(IDXPM, jday), adjems(IDXSOX, jday), adjtime +cdiag endif +c + emstmp = emstmp - bsfval * 453.6 * hpval * + & faclod(iact) * 7.0 * soxcnv * 0.01 * adjtime * + & (sulbas * adjems(IDXPM,jday) - + & soxbas(IDXDSL) * adjems(IDXSOX,jday)) + endif + endif +c +c ---- Starts depend on number of starts --- +c + if(idxspc .GE. IDSTHC) then + emiss = emstmp * sadj * + & tpltmp2 * pop * mfrac * tchfrc(idxtch,idxtec) +c +c ---- "normal" exhaust species --- +c + else + if( idxunt(idxspc,idxtec) .EQ. IDXGDY ) then + emiss = emstmp * ndays * tpltmp2 * + & pop * mfrac * tchfrc(idxtch,idxtec) + else + emiss = emstmp * afac * tpltmp2 * + & pop * mfrac * tchfrc(idxtch,idxtec) + endif + endif +c + if( emsfac(idxyr,idxspc,idxtec) .LT. 0. + & .OR. emsday(idxspc) .LT. 0.0 ) then + emsday(idxspc) = RMISS + emsbmy(idxspc) = RMISS + else +c +c --- apply the retrofit reduction, if any --- +c + if( rtrftplltntrdfrc(idxspc) .GT. 0. ) then + emiss = emiss * (1. - rtrftplltntrdfrc(idxspc)) + endif +c + temiss = emiss * CVTTON + emsday(idxspc) = emsday(idxspc) + temiss + emsbmy(idxspc) = emsbmy(idxspc) + temiss + endif +c + 90 continue +c + end do ! jday +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + + + diff --git a/NONROAD/NR08a/SOURCE/clcevems.f b/NONROAD/NR08a/SOURCE/clcevems.f new file mode 100644 index 0000000..d0fe497 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/clcevems.f @@ -0,0 +1,721 @@ +c**** CLCEVEMS +c + subroutine clcevems(ierr, asccod, emsday, emsbmy, idxyr, idxtec, + & idxtch, dage, detcap, adetcf, bdetcf, idxunt, + & tfrac, hpval, adjems, adjtime, emsfac, tpltmp, + & sadj, pop, mfrac, ndays, tvol, afac, refmod, + & fulcsm, tfull, tmfrac, hoselen, hosedia, + & hmfrac, necklen, neckdia, supretlen, + & supretdia, ventlen, ventdia, hsstrt, diufrac, + & tnke10fac, hose10fac, ncke10fac, sre10fac, + & vnte10fac, code ) +c +c----------------------------------------------------------------------- +c +c This routine calculates emissions +c Argument descriptions: +c Outputs: +c ierr I error flag +c emsday R calculated emissions +c emsbmy R calculated emissions by-model-year +c Inputs: +c idxyr I year index +c idxtec I technology type index +c idxtch I number of technology types +c dage R age of deterioration +c detcap R cap on age of equip for deterioration calc +c adetcf R A coefficient of deterioration factor equation +c bdetcf R B coefficient of deterioration factor equation +c idxunt I index of unit conversion +c tfrac R technology type fraction +c hpval R horsepower +c adjems R adjustment factors +c adjtime R time period adjustment factor +c emsfac R emission factors +c sadj R starts hour +c tpltmp R temporal adjustment factor +c pop R population +c mfrac R model year fraction +c ndays I number of period days +c tvol R tank volume (gallons) +c tfull R fraction of tank filled with fuel +c tmfrac R tank metal fraction +c hmfrac R non rec marine hose metal fraction +c hosedia R non rec marine hose diameter (meters) +c hoselen R non rec marine hose length (meters) +c neckdia R rec marine fill neck hose diameter (meters) +c necklen R rec marine fill neck hose length (meters) +c supretdia R rec marine suppy/return hose diameter (meters) +c supretlen R rec marine supply/return hose length (meters) +c ventdia R rec marine vent hose diameter (meters) +c ventlen R rec marine vent hose length (meters) +c afac R activity adjustment +c refmod C refueling mode +c fulcsm R fuel consumption +c hsstrt R hot soak starts per hour of operation +c diufrac R diurnal fractions +c code C 5-digit fips code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/17/04 --dfk-- original development (from clcems) +c 10/13/04 --dfk-- changed hose permeation calc from multiplier to EF +c changed tank permeation calc from multiplier to EF +c 11/15/04 --dfk-- changed rec-marine hose permeation into 3 sources +c 12/06/04 --dfk-- changed diurnal calcs to apply Wade Eqgn 0.78 +c adjustment factor to all portable plastic containers +c 01/11/05 --dfk-- added code to process months, seasons, or annual +c periods +c 01/13/05 --dfk-- added 40F limits to tmax/tmin for diurnal calculations +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 05/11/05 --epa-- remove spillage for non-gasoline fuels, allowing +c for easy re-inclusion if ever desired. +c 06/22/05 --epa-- fix detcap handling for other than 1.0 medlife. +c 07/19/05 --cimulus-- removed unused variables/functions +c 07/20/05 --cimulus-- floating-point comparison for equality okay; +c diufrac values are read from file, rather +c than being calculated at runtime +c 08/17/05 --epa-- bypass diurnal calcs if tmax <= 40F. Fixes small float +c error that yielded negative VapGen in wadeeq.for. +c add negative diurnal error check. +c 11/16/05 --epa-- Remove incorrect cap on hot soak calc 260 hrs/yr. +c (260 soaks/year cap is used externally to calc the +c soaks/hour input) +c 02/08/06 --epa-- Remove tpltmp adjustment from Diurnal, Tank, +c and all Hose calcs, since it doesn't apply to +c emiss/day input types. +c 02/10/06 -epa- set tpltmp2 to 1 if Daily Temp/RVP, handled by daymthf +c 04/21/06 --epa-- Fixes all Daily Temp/RVP month/season/year. +c 09/22/06 --epa-- Add calc of ethanol blend hose & tank permeation. +c 09/29/06 --epa-- Fix ethanol adj factor contrl tech type recognition. +c 11/20/06 --epa-- Fix ethanol adj factor above E20 cap from 85.0 to 0.85 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 emsday(MXPOL) + real*4 emsbmy(MXPOL) +c + character*10 asccod + character*9 refmod + character*5 code + integer*4 ierr + integer*4 idxyr + integer*4 idxtec + integer*4 idxtch + integer*4 idxunt(MXPOL,MXEVTECH) + integer*4 ndays + real*4 dage + real*4 detcap(MXPOL,MXEVTECH) + real*4 adetcf(MXPOL,MXEVTECH) + real*4 bdetcf(MXPOL,MXEVTECH) + real*4 tfrac + real*4 hpval + real*4 adjems(MXPOL,MXDAYS), adjtime + real*4 emsfac(MXAGYR,MXPOL,MXEVTECH) + real*4 sadj + real*4 tpltmp + real*4 pop + real*4 mfrac + real*4 tvol + real*4 tfull + real*4 tmfrac + real*4 hmfrac + real*4 hosedia + real*4 hoselen + real*4 afac + real*4 fulcsm + real*4 stg2tmp + real*4 hsstrt + real*4 diufrac(5,MXEVTECH) + real*4 tnke10fac, hose10fac, ncke10fac, sre10fac, vnte10fac +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c wadeeq R returns the wade equation diurnal emission factor +c + real*4 wadeeq +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxspc + real*4 tempds + real*4 detrat, emstmp, emiss + real*4 sfcarea + real*4 tankef + real*4 hoseef + real*4 permef + integer*4 ib + integer*4 ie + real*4 tmax,tmin,tamb,tavg,dtmax,dtmin,swing,trvp,temiss + integer*4 jday,jbday,jeday,j,ireg,jbskip,jeskip + real*4 necklen,neckdia,supretlen,supretdia,ventlen,ventdia + real*4 pi,diutmax,diutmin + logical lskip + real*4 tpltmp2 + real*4 ethpwr, ethmktfrc, ethvfrc, temeth, e10fac +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- Do not modify tpltmp, which gets used later in PRC* --- +c + tpltmp2 = tpltmp +c +c --- set pi and hose ef +c + pi=3.141592657 + hoseef = 0. + ethpwr = 0.40 + ethmktfrc = 0.01 * ethmkt + ethvfrc = 0.01 * ethvpct + e10fac = 1.0 +c +c --- set looping indexes +c + call dayloop(jbday,jeday,jbskip,jeskip,lskip) +c +cc +cc if(ldayfl .AND. iprtyp .NE. IDXMTH) tpltmp2 = 1. +cc +c --- loop over selected period +c + do jday=jbday,jeday +c +c if winter and using daily values, skip 1 March to 30 November, inclusive +c + if(lskip.and.jday.ge.jbskip.and.jday.le.jeskip) cycle +c +c --- set evap loop parameters based on fuel: only gas powered equipment +c have all evap species; however all fuels have spillage. +c also set diurnal temperatures and RVP +c + if(ifuel.eq.IDXGS2 .or. ifuel.eq.IDXGS4) then + ib=IDXDIU + ie=IDXRLS + if(ldayfl) then + read(code(1:2),*) ireg + tmax=daytmp(jday,1,ireg) + tmin=daytmp(jday,2,ireg) + tamb=daytmp(jday,3,ireg) + trvp=dayrvp(jday, ireg) + else + tmax=tempmx + tmin=tempmn + tamb=amtemp + trvp=fulrvp + end if + else + ib=IDXSPL + ie=IDXSPL + end if +c +c --- calculate emissions for each evap pollutant --- +c + do 100 idxspc=ib,ie +c +c --- skip if emission factor file was not supplied --- +c + if( .NOT. lfacfl(idxspc) .AND. .NOT. + & (idxspc .EQ. IDXCO2 .OR. idxspc .EQ. IDXSOX .OR. + & idxspc .EQ. IDXDIS) ) cycle +c +c --- calculate the deterioration rate from values retrieved earlier ---- +c + if( dage .LE. detcap(idxspc,idxtec) ) then + detrat = 1. + adetcf(idxspc,idxtec) * + & dage**bdetcf(idxspc,idxtec) + else + detrat = 1. + adetcf(idxspc,idxtec) * + & detcap(idxspc,idxtec)**bdetcf(idxspc,idxtec) + endif +c +c --- get the emission factor or multiplication correction factor for this species --- +c + emstmp = emsfac(idxyr,idxspc,idxtec) +c +c --- spillage emissions are a function of tank volume --- +c --- different for container or gas pump (gas only) --- +c + if( idxspc .EQ. IDXSPL ) then +c +c --- if ever want to include spillage from non-gasoline fuels, just need +c --- to remove the following outer if/else/endif check for GS2 & GS4. +c + if(ifuel.eq.IDXGS2 .or. ifuel.eq.IDXGS4) then + if ( lfacfl(IDXSPL) .AND. refmod .NE. ' ' ) then + if( refmod .EQ. PUMP ) then + emiss = PMPFAC / tvol + elseif ( refmod .EQ. CNTR ) then + emiss = CNTFAC / tvol + endif + else + emiss = 0.0 + endif + else + emiss = 0.0 + endif +cc emiss = emiss * adjems(idxspc,jday) +ccx emiss = emiss * adjems(idxspc,jday) * adjtime + temiss = emiss * CVTTON * fulcsm + if(ldayfl) temiss = temiss / float(ndays) +c + emsday(idxspc) = emsday(idxspc) + temiss + emsbmy(idxspc) = emsbmy(idxspc) + temiss + goto 90 + endif +c +c ---- vapor displacement emissions are a function of ambient temp and RVP --- +c --- different for container or gas pump (gas only) --- +c + if( idxspc .EQ. IDXDIS ) then + if ( lfacfl(IDXSPL) .AND. refmod .NE. ' ' ) then + if( refmod .EQ. PUMP ) then + tempds = 62 + 0.6 * (tamb - 62.) + elseif (refmod .EQ. CNTR ) then + tempds = tamb + endif + emiss = EXP( -1.2798 - 0.0049 * (tempds - tamb) + & + 0.0203 * tempds + 0.1315 * trvp ) +c +c emiss = -5.909 - 0.0949 * (tamb - tempds) +c & + 0.0884 * tempds + 0.485 * trvp + else + emiss = 0.0 + endif + if( refmod .EQ. PUMP ) then + stg2tmp = stg2fac + else + stg2tmp = 1.0 + endif +cc emiss = emiss * adjems(idxspc,jday) +ccx emiss = emiss * adjems(idxspc,jday) * adjtime + temiss = emiss * CVTTON * fulcsm * stg2tmp +cc if(ldayfl) temiss = temiss / float(ndays) + if(ldayfl) then + if(iprtyp .EQ. IDXANN) then + temiss = temiss * adjems(idxspc,jday) + else + temiss = temiss / float(ndays) + endif + endif +c + emsday(idxspc) = emsday(idxspc) + temiss + emsbmy(idxspc) = emsbmy(idxspc) + temiss + goto 90 + endif +c +c --- tank permeation emissions are a function of tank surface area and metal fraction --- +c + if( idxspc .EQ. IDXTKP ) then + if ( lfacfl(IDXTKP) .AND. lfacfl(IDXSPL) ) then + sfcarea=0.15*sqrt((((tvol+2.0)**2)/(2.0**2))-1.) + emiss = emstmp * (1.0-tmfrac) * sfcarea + else + emiss = 0.0 + endif + tankef=emiss ! store uncorrected tank EF (g/day) for use with HS/RL + temiss = emiss * CVTTON * adjems(idxspc,jday) * + & adjtime * detrat * +ccx & adjtime * ndays * detrat * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +c +c --- Ethanol Blend Permeation Effect +c --- If E10fac input is 1.0, also assume no EtOH effect on control techtypes +c --- Limit EtOH effect to what happens at E85. +c + if ( ethmktfrc .GT. 0.0 .AND. ethvfrc .GT. 0.0 ) then + e10fac = tnke10fac + if( evtectyp(idxtch,idxtec)(3:3) .NE. '0' + & .AND. e10fac .NE. 1. ) e10fac = 2.0 ! floating-point comparison for equality okay; e10fac values are read from file, rather than being calculated at runtime + if ( ethvfrc .LE. 0.2 ) then + temeth = temiss * (1 + (e10fac - 1) + & * (10 * ethvfrc) ** ethpwr) + else + temeth = temiss * (1 + (e10fac - 1) + & * (10 * 0.2) ** ethpwr) + & * (1 - ((MIN(ethvfrc, 0.85) - 0.2)/0.8) + & ** (1/ethpwr)) + endif + temiss = temiss * (1 - ethmktfrc) + temeth * ethmktfrc + endif +c + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss +cc +c if( asccod .EQ. '2265004010' ) then +c write(IOWMSG,'(A, 1X, F9.3, 2I5, 1X, A, 3F9.6)') +c & asccod, hpval, idxtec, idxtch, evtectyp(idxtch,idxtec), +c & tankef, e10fac, temiss +c endif +cc & adjems(idxspc,jday), adjtime, ndays, tpltmp2 +cc + goto 90 + endif +c +c --- hose permeation emissions are a function of hose diameter, length and metal fraction --- +c +c --- all non rec marine + if( idxspc .EQ. IDXHOS ) then + if ( lfacfl(IDXHOS) .AND. lfacfl(IDXSPL) ) then + sfcarea=pi*hoselen*hosedia + emiss = emstmp * (1.0-hmfrac) * sfcarea ! non-rec-marine + else + emiss = 0.0 + endif + hoseef=hoseef + emiss ! store uncorrected hose EF (g/day) for use with HS/RL + temiss = emiss * CVTTON * detrat * + & adjems(idxspc,jday) * adjtime * +cc & adjems(idxspc,jday) * adjtime * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +c +c --- ethanol blend effect +c + if ( ethmktfrc .GT. 0.0 .AND. ethvfrc .GT. 0.0 ) then + e10fac = hose10fac + if( evtectyp(idxtch,idxtec)(4:4) .NE. '0' + & .AND. e10fac .NE. 1. ) e10fac = 2.0 ! floating-point comparison for equality okay; e10fac values are read from file, rather than being calculated at runtime + if ( ethvfrc .LE. 0.2 ) then + temeth = temiss * (1 + (e10fac - 1) + & * (10 * ethvfrc) ** ethpwr) + else + temeth = temiss * (1 + (e10fac - 1) + & * (10 * 0.2) ** ethpwr) + & * (1 - ((MIN(ethvfrc, 0.85) - 0.2)/0.8) + & ** (1/ethpwr)) + endif + temiss = temiss * (1 - ethmktfrc) + temeth * ethmktfrc + endif +c + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c --- rec marine fill neck + if( idxspc .EQ. IDXNCK ) then + if ( lfacfl(IDXNCK) .AND. lfacfl(IDXSPL) ) then + sfcarea=pi*necklen*neckdia + emiss = emstmp * sfcarea ! rec-marine hoses are 100% non-metal + else + emiss = 0.0 + endif + hoseef=hoseef + emiss ! store uncorrected hose EF (g/day) for use with HS/RL + temiss = emiss * CVTTON * detrat * + & adjems(idxspc,jday) * adjtime * +cc & adjems(idxspc,jday) * adjtime * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +c +c --- ethanol blend effect +c + if ( ethmktfrc .GT. 0.0 .AND. ethvfrc .GT. 0.0 ) then + e10fac = ncke10fac + if( evtectyp(idxtch,idxtec)(4:4) .NE. '0' + & .AND. e10fac .NE. 1. ) e10fac = 2.0 ! floating-point comparison for equality okay; e10fac values are read from file, rather than being calculated at runtime + if ( ethvfrc .LE. 0.2 ) then + temeth = temiss * (1 + (e10fac - 1) + & * (10 * ethvfrc) ** ethpwr) + else + temeth = temiss * (1 + (e10fac - 1) + & * (10 * 0.2) ** ethpwr) + & * (1 - ((MIN(ethvfrc, 0.85) - 0.2)/0.8) + & ** (1/ethpwr)) + endif + temiss = temiss * (1 - ethmktfrc) + temeth * ethmktfrc + endif +c + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c --- rec marine supply/return + if( idxspc .EQ. IDXSR ) then + if ( lfacfl(IDXSR) .AND. lfacfl(IDXSPL) ) then + sfcarea=pi*supretlen*supretdia + emiss = emstmp * sfcarea ! rec-marine hoses are 100% non-metal + else + emiss = 0.0 + endif + hoseef=hoseef + emiss ! store uncorrected hose EF (g/day) for use with HS/RL + temiss = emiss * CVTTON * detrat * + & adjems(idxspc,jday) * adjtime * +cc & adjems(idxspc,jday) * adjtime * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +c +c --- ethanol blend effect +c + if ( ethmktfrc .GT. 0.0 .AND. ethvfrc .GT. 0.0 ) then + e10fac = sre10fac + if( evtectyp(idxtch,idxtec)(4:4) .NE. '0' + & .AND. e10fac .NE. 1. ) e10fac = 2.0 ! floating-point comparison for equality okay; e10fac values are read from file, rather than being calculated at runtime + if ( ethvfrc .LE. 0.2 ) then + temeth = temiss * (1 + (e10fac - 1) + & * (10 * ethvfrc) ** ethpwr) + else + temeth = temiss * (1 + (e10fac - 1) + & * (10 * 0.2) ** ethpwr) + & * (1 - ((MIN(ethvfrc, 0.85) - 0.2)/0.8) + & ** (1/ethpwr)) + endif + temiss = temiss * (1 - ethmktfrc) + temeth * ethmktfrc + endif +c + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c --- rec marine vent + if( idxspc .EQ. IDXVNT ) then + if ( lfacfl(IDXVNT) .AND. lfacfl(IDXSPL) ) then + sfcarea=pi*ventlen*ventdia + emiss = emstmp * sfcarea ! rec-marine hoses are 100% non-metal + else + emiss = 0.0 + endif + hoseef=hoseef + emiss ! store uncorrected hose EF (g/day) for use with HS/RL + temiss = emiss * CVTTON * detrat * + & adjems(idxspc,jday) * adjtime * +cc & adjems(idxspc,jday) * adjtime * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +c +c --- ethanol blend effect +c + if ( ethmktfrc .GT. 0.0 .AND. ethvfrc .GT. 0.0 ) then + e10fac = vnte10fac + if( evtectyp(idxtch,idxtec)(4:4) .NE. '0' + & .AND. e10fac .NE. 1. ) e10fac = 2.0 ! floating-point comparison for equality okay; e10fac values are read from file, rather than being calculated at runtime + if ( ethvfrc .LE. 0.2 ) then + temeth = temiss * (1 + (e10fac - 1) + & * (10 * ethvfrc) ** ethpwr) + else + temeth = temiss * (1 + (e10fac - 1) + & * (10 * 0.2) ** ethpwr) + & * (1 - ((MIN(ethvfrc, 0.85) - 0.2)/0.8) + & ** (1/ethpwr)) + endif + temiss = temiss * (1 - ethmktfrc) + temeth * ethmktfrc + endif +c + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c ---- Hot soak depends on activity and starts/hour --- +c Remove 3-hours worth of tank and hose permeation from hot soaks +c + if( idxspc .EQ. IDXSOK) then + if ( lfacfl(IDXSOK) .AND. lfacfl(IDXSPL) ) then +ctd permef = (tankef+hoseef)*3./24. ! 3 hours uncorrected permeation + permef = 0. + if(emstmp .ge. permef) then +ctest write(*,*) emstmp,permef,tankef,hoseef + emiss = emstmp - permef ! remove uncorrected permeation + emiss = afac * hsstrt * emiss ! hrs * soaks/hr * g/event + else + goto 7000 + end if + else + emiss = 0.0 + end if + temiss = emiss * CVTTON * detrat * tpltmp2 * + & adjems(idxspc,jday) * adjtime * + & pop * mfrac * evtchfrc(idxtch,idxtec) + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c ---- Running Loss depends on activity --- +c Remove 40 minuntes of tank and hose permeation from running loss +c + if( idxspc .EQ. IDXRLS) then + if ( lfacfl(IDXRLS) ) then +ctd permef = (tankef+hoseef)*40./(24.*60.) ! 40 minutes uncorrected permeation + permef = 0. + If(emstmp .ge. permef) then +ctest write(*,*) emstmp,permef,tankef,hoseef + emiss = emstmp - permef ! remove uncorrected permeation + emiss = emiss * afac + else + go to 7002 + end if + else + emiss = 0.0 + end if +ctest WRITE(99,*) idxspc,jday,tmax,tmin,tamb,trvp,ndays,emiss, +ctest &afac,detrat, +ctest &tpltmp2,adjems(idxspc,jday)*adjtime,pop,mfrac,evtchfrc(idxtch,idxtec) + temiss = emiss * CVTTON * detrat * tpltmp2 * + & adjems(idxspc,jday) * adjtime * + & pop * mfrac * evtchfrc(idxtch,idxtec) + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + goto 90 + endif +c +c ---- diurnal emissions are different --- +c j=1-4: for all non-rec marine and rec-marine portable plastic, multiply Wade Eq by 0.78 +c j=2,4: for rec-marine tanks on trailer, reduce temperature swing by 50% +c j=3,5: for rec-marine tanks in water, reduce temperature swing by 80% +c Note: the emstmp is a multiplicative correction factor, not an EF +c For all diurnals, limit lowest temperature to 40F. +c + if( idxspc .EQ. IDXDIU ) then + if ( lfacfl(IDXDIU) ) then + emiss = 0. +ccah + if( tmax .GT. DIUMIN ) then +ccah + diutmax=max(tmax, DIUMIN) + diutmin=max(tmin, DIUMIN) + tavg=(diutmax+diutmin)/2. + swing=(diutmax-diutmin)/2. + do j=1,5 + if(diufrac(j,idxtec).eq.0.) cycle ! floating-point comparison for equality okay; diufrac values are read from file, rather than being calculated at runtime + if(j.eq.1) then + emiss = emiss + + & wadeeq(tfull,tvol,trvp,diutmin,diutmax) * + & 0.78 * diufrac(j,idxtec) + else + if(j.eq.2.or.j.eq.4) then + dtmax=tavg+swing * 0.5 + dtmin=tavg-swing * 0.5 + else + dtmax=tavg+swing * 0.2 + dtmin=tavg-swing * 0.2 + end if + emiss = emiss + wadeeq(tfull,tvol,trvp,dtmin,dtmax) + & * 0.78 * diufrac(j,idxtec) + end if +ccah + if( emiss .LT. 0.0 ) then + goto 7004 + end if +ccah + if(diufrac(j,idxtec).eq.1.) exit ! floating-point comparison for equality okay; diufrac values are read from file, rather than being calculated at runtime + end do + emiss = emiss * emstmp +ccah + end if +ccah + else + emiss = 0.0 + end if + temiss = emiss * CVTTON * detrat * +cc temiss = emiss * ndays * CVTTON * detrat * + & adjems(idxspc,jday) * adjtime * +cc & adjems(idxspc,jday) * adjtime * tpltmp2 * + & pop * mfrac * evtchfrc(idxtch,idxtec) +ctest WRITE(*,*) emiss,ndays,detrat,tpltmp2,adjems(idxspc,jday)*adjtime, +ctest &pop,mfrac,evtchfrc(idxtch,idxtec) + if(.NOT. ldayfl) temiss = temiss * ndays +c + emsbmy(idxspc) = emsbmy(idxspc) + temiss + emsday(idxspc) = emsday(idxspc) + temiss + end if +c +c ---- catch negative emissions --- +c + 90 if( emsbmy(idxspc) .LT. 0.0 ) then + emsday(idxspc) = RMISS + emsbmy(idxspc) = RMISS + endif +c + 100 continue +c + end do +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,1X,A,5F9.4)') + & 'ERROR: Negative Hot Soak EF calculated:', + & asccod,hpval,emstmp,permef,tankef,hoseef + write(IOWMSG,'(/,1X,A,1X,A,5F9.4)') + & 'ERROR: Negative Hot Soak EF calculated:', + & asccod,hpval,emstmp,permef,tankef,hoseef + ierr = ISUCES + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,1X,A,5F9.4)') + & 'ERROR: Negative Running Loss EF calculated:', + & asccod,hpval,emstmp,permef,tankef,hoseef + write(IOWMSG,'(/,1X,A,1X,A,5F9.4)') + & 'ERROR: Negative Running Loss EF calculated:', + & asccod,hpval,emstmp,permef,tankef,hoseef + ierr = ISUCES + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,A,1X,A,2F9.4)') + & 'ERROR: Negative Diurnal Emissions calculated:', + & asccod,hpval,tmax,emiss + write(IOWMSG,'(/,1X,A,1X,A,2F9.4)') + & 'ERROR: Negative Diurnal Emissions calculated:', + & asccod,hpval,tmax,emiss + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + + + + + + + + + + diff --git a/NONROAD/NR08a/SOURCE/clcrtrft.f b/NONROAD/NR08a/SOURCE/clcrtrft.f new file mode 100644 index 0000000..4dc67c9 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/clcrtrft.f @@ -0,0 +1,309 @@ +C**** CLCRTRFT +c + subroutine clcrtrft( ierr, fracretro, unitsretro, pop, scc, hpavg, + & mdlyr, techtype ) +c +c----------------------------------------------------------------------- +c +c Calculates the retrofit reductions for every pollutant affect by +c the retrofits that affect the current model iteration (i.e., +c the current combination of SCC, HP, model year, and tech type). +c Calculates the fraction and units retrofitted for the current +c iteration. Assumes that fndrtrft() has been called to filter the +c retrofit arrays to match the current iteration. +c +c Argument declaration +c Outputs: +c ierr I error flag +c fracretro R fraction retrofitted for the current model +c iteration +c unitsretro R units retrofitted for the current model +c iteration +c Inputs: +c pop R engine population in existence for the +c current model iteration +c scc C SCC for the current model iteration +c hpavg R HP average for the current model iteration +c mdlyr I model year for the current model iteration +c techtype C tech type for the current model iteration +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/26/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 fracretro + real*4 unitsretro + real*4 pop + character*10 scc + real*4 hpavg + integer*4 mdlyr + character*10 techtype +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i + integer*4 plltnt ! index into rtrftplltnt for the current iteration + integer*4 rtrft ! index into the below arrays for current iteration + integer*4 rtrftidxid(MXRTRFT) ! map index into first dimension + ! of below arrays to retrofit ID + real*4 rtrftplltntfracretro(MXRTRFT, NRTRFTPLLTNT) ! fraction retrofitted for a given retrofit-pollutant combination + ! (can be > 1, but will be limitted to 1 for recuction calculation) + logical*4 rtrftplltnthasnunits(MXRTRFT, NRTRFTPLLTNT) ! whether or not a given retrofit-pollutant + ! combination has any cases where N-units are + ! retrofitted (as opposed to a fraction) + real*4 rtrftplltnteffect(MXRTRFT, NRTRFTPLLTNT) ! the effect fraction for a given retrofit-pollutant combination + integer*4 rtrftidx ! index into the retrofit-record arrays + integer*4 plltntidx ! index into the rtrftplltnt array + integer*4 rystart ! first retrofit year that applies + integer*4 ryend ! last retrofit year that applies + integer*4 rycount ! number of retrofit years that apply + real*4 tmpfrac +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- assume no engines affected --- +c + fracretro = 0. + unitsretro = 0. +c +c --- clear any values from previous iteration --- +c + do rtrft = 1, numrtrft + rtrftidxid(rtrft) = 0 + do plltnt = 1, NRTRFTPLLTNT + rtrftplltntfracretro(rtrft, plltnt) = 0. + rtrftplltnthasnunits(rtrft, plltnt) = .FALSE. + rtrftplltnteffect(rtrft, plltnt) = 0. + end do + end do + numrtrft = 0 +c +c --- calculate total retrofit-pollutant-level fraction retrofitted +c and effect of the filtered retrofits (i.e., the ones that affect +c the current model iteration) --- +c + do i = 1, rtrftfltr3cnt + rtrftidx = rtrftfltr3(i) +c +c --- find the retrofit index in the retrofit-pollutant arrays --- +c + do rtrft = 1, numrtrft + if( rtrftidxid(rtrft) + & .EQ. rtrftid(rtrftidx) ) then + exit + endif + end do + if( rtrft .GT. numrtrft ) then ! if retrofit not in array yet + numrtrft = rtrft + rtrftidxid(numrtrft) = rtrftid(rtrftidx) + endif +c +c --- calculate the number of retrofit years --- +c + rystart = rtrftryst(rtrftidx) + ryend = min(rtrftryen(rtrftidx), iepyr) + rycount = ryend - rystart + 1 +c +c --- apply the current fraction retrofitted and effect to the +c retrofit-pollutant arrays --- +c + plltntidx = rtrftplltntidx(rtrftidx) + if( rtrftannualfracorn(rtrftidx) .GT. 1. ) then ! if N units retrofitted + rtrftplltnthasnunits(rtrft, plltntidx) = .TRUE. + tmpfrac = rtrftannualfracorn(rtrftidx) / pop + else + tmpfrac = rtrftannualfracorn(rtrftidx) + endif + rtrftplltntfracretro(rtrft, plltntidx) = + & rtrftplltntfracretro(rtrft, plltntidx) + + & (tmpfrac * rycount) + rtrftplltnteffect(rtrft, plltntidx) = rtrfteffect(rtrftidx) ! effect always same for given retrofit-pollutant combination +c + end do +c +c --- calculate the fraction and units retrofitted for the current +c model iteration --- +c + do rtrft = 1, numrtrft + do plltnt = 1, NRTRFTPLLTNT + if( rtrftplltntfracretro(rtrft, plltnt) .GT. 0. ) then +c +c --- if N units retrofitted requires more engines than exist, +c log error and return --- +c + if( rtrftplltnthasnunits(rtrft, plltnt) .AND. + & rtrftplltntfracretro(rtrft, plltnt) .GT. 1. + & ) then + goto 7000 + endif +c + fracretro = fracretro + + & rtrftplltntfracretro(rtrft, plltnt) +c +c --- fraction retrofitted always same for all pollutants for +c a given retrofit and must only be added once, so once +c a non-zero value is found exit the loop --- +c + exit + endif + end do + end do + fracretro = min(1., fracretro) + unitsretro = pop * fracretro +c +c --- calculate the emission reduction fractions for each pollutant --- +c + do plltnt = 1, NRTRFTPLLTNT + rtrftplltntrdfrc(rtrftplltntidxmp(plltnt)) = 0. + end do + do rtrft = 1, numrtrft + do plltnt = 1, NRTRFTPLLTNT + if( rtrftplltntfracretro(rtrft, plltnt) .EQ. 0. ) then + cycle + else if( rtrftplltntfracretro(rtrft, plltnt) .GT. 1. + & ) then +c +c --- fraction retrofitted exceeds 1 for a given retrofit- +c pollutant combination; log warning and fix value --- +c + write(IOWSTD,8001,ERR=9999) + & 'WARNING: Fraction retrofitted exceeds 1', + & '; setting value to 1', + & 'Retrofit ID','Pollutant','Frac Retro', + & 'SCC','HP Average','Model Year', + & 'Tech Type',rtrftidxid(rtrft), + & rtrftplltnt(plltnt), + & rtrftplltntfracretro(rtrft, plltnt),scc, + & hpavg,mdlyr,techtype(:strmin(techtype)) + if( lmsgfl ) then + write(IOWMSG,8001,ERR=9999) + & 'WARNING: Fraction retrofitted exceeds 1', + & '; setting value to 1', + & 'Retrofit ID','Pollutant','Frac Retro', + & 'SCC','HP Average','Model Year', + & 'Tech Type',rtrftidxid(rtrft), + & rtrftplltnt(plltnt), + & rtrftplltntfracretro(rtrft, plltnt),scc, + & hpavg,mdlyr,techtype(:strmin(techtype)) + endif + rtrftplltntfracretro(rtrft, plltnt) = 1. + endif +c +c --- apply the effect to the pollutant --- +c + rtrftplltntrdfrc(rtrftplltntidxmp(plltnt)) = + & rtrftplltntrdfrc(rtrftplltntidxmp(plltnt)) + + & (rtrftplltntfracretro(rtrft, plltnt) * + & rtrftplltnteffect(rtrft, plltnt)) + end do + end do +c +c --- limit emission reduction fractions to 1 --- +c + do plltnt = 1, NRTRFTPLLTNT + if( rtrftplltntrdfrc(rtrftplltntidxmp(plltnt)) .GT. 1. ) then +c +c --- retrofit reduction fraction exceeds 1 for a given +c pollutant; log warning and fix value --- +c + write(IOWSTD,8002,ERR=9999) + & 'WARNING: Retrofit reduction fraction ', + & 'exceeds 1; setting value to 1', + & 'Pollutant','SCC','HP Average', + & 'Model Year','Tech Type', + & rtrftplltnt(plltnt),scc,hpavg,mdlyr, + & techtype(:strmin(techtype)) + if( lmsgfl ) then + write(IOWMSG,8002,ERR=9999) + & 'WARNING: Retrofit reduction fraction ', + & 'exceeds 1; setting value to 1', + & 'Pollutant','SCC','HP Average', + & 'Model Year','Tech Type', + & rtrftplltnt(plltnt),scc,hpavg,mdlyr, + & techtype(:strmin(techtype)) + endif + rtrftplltntrdfrc(rtrftplltntidxmp(plltnt)) = 1. + endif + end do +c +c --- set error code to sucess and return --- +c + 999 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,8000,ERR=9999) + & 'ERROR: Request for N units retrofitted exceeds ', + & 'engines in existence ','Retrofit ID','Pollutant', + & 'SCC','HP Average','Model Year','Tech Type', + & 'N Units Requested','N Units Existing', + & rtrftidxid(rtrft),rtrftplltnt(plltnt),scc,hpavg,mdlyr, + & techtype,rtrftplltntfracretro(rtrft, plltnt)*pop,pop + if( lmsgfl ) then + write(IOWMSG,8000,ERR=9999) + & 'ERROR: Request for N units retrofitted exceeds ', + & 'engines in existence ','Retrofit ID','Pollutant', + & 'SCC','HP Average','Model Year','Tech Type', + & 'N Units Requested','N Units Existing', + & rtrftidxid(rtrft),rtrftplltnt(plltnt),scc,hpavg,mdlyr, + & techtype,rtrftplltntfracretro(rtrft, plltnt)*pop,pop + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(/,1X,2A,/,6X,A,3X,A,4X,A,10X,A,3X,A,3X,A,4X,A,3X,A, + &/,6X,I11,3X,A10,3X,A10,3X,F10.3,3X,I10,3X,A10,3X,F17.3,3X,F16.3,/) + 8001 format(/,1X,2A,/,6X,A,3X,A,4X,A,3X,A,10X,A,3X,A,3X,A, + &/,6X,I11,3X,A10,3X,F10.3,3X,A10,3X,F10.3,3X,I10,3X,A,/) + 8002 format(/,1X,2A,/,6X,A,4X,A,10X,A,3X,A,3X,A, + &/,6X,A10,3X,A10,3X,F10.3,3X,I10,3X,A,/) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/clsnon.f b/NONROAD/NR08a/SOURCE/clsnon.f new file mode 100644 index 0000000..8d22add --- /dev/null +++ b/NONROAD/NR08a/SOURCE/clsnon.f @@ -0,0 +1,97 @@ +C**** CLSNON +c + subroutine clsnon( ) +c +c----------------------------------------------------------------------- +c +c closes all of the file used in the NONROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 05/10/04 --dfk--- added closure of evap tech group file +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + close( IORSTD ) +c + close( IOWSTD ) +c + close( IORUSR ) +c + close( IORPOP ) +c + close( IORALO ) +c + close( IORIND ) +c + close( IORACT ) +c + close( IORSES ) +c + close( IORFAC ) +c + close( IORDAC ) +c + close( IORGRW ) +c + close( IORTCH ) +c + close( IOREVTCH ) +c + close( IORREG ) +c + close( IOWMSG ) +c + close( IOWDAT ) +c + close( IOWAMS ) +c + close( IOSDIR, status='DELETE' ) +c + close( IOSPOP, status='DELETE' ) +c + close( IOSIND, status='DELETE' ) +c + close( IOSGRW, status='DELETE' ) +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/cmprrtrft.f b/NONROAD/NR08a/SOURCE/cmprrtrft.f new file mode 100644 index 0000000..c70d100 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/cmprrtrft.f @@ -0,0 +1,153 @@ +C**** CMPRRTRFT +c + integer*4 function cmprrtrft( cmprtype, a, b ) +c +c----------------------------------------------------------------------- +c +c This function compares two retrofit records, first by model year +c end and then by maximum HP. +c +c The comparison that is made depends on cmprtype: +c 1 = compare retrofit ID, then pollutant, then record number +c 2 = compare model year end, then maximum HP +c +c Return value: +c < 0 = retrofit a is less than retrofit b +c 0 = retrofit a is equal to retrofit b +c > 0 = retrofit a is greater than retrofit b +c +c Argument declaration +c Inputs: +c cmprtype I comparison type +c a I index of first retrofit record to compare +c b I index of second retrofit record to compare +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/25/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 cmprtype + integer*4 a + integer*4 b +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume equal --- +c + cmprrtrft = 0 +c +c +c --- compare retrofit ID, then pollutant, then record number --- +c + if( cmprtype .EQ. 1 ) then +c +c --- compare retrofit ID values --- +c + if( rtrftid(a) .LT. rtrftid(b) ) then + cmprrtrft = -1 + else if( rtrftid(a) .GT. rtrftid(b) ) then + cmprrtrft = 1 + else +c +c --- retrofit ID values are equal, +c so compare pollutant values --- +c + if( rtrftplltntidx(a) .LT. rtrftplltntidx(b) ) then + cmprrtrft = -1 + else if( rtrftplltntidx(a) .GT. rtrftplltntidx(b) ) then + cmprrtrft = 1 + else +c +c --- retrofit ID and pollutant values are equal, +c so compare record number --- +c + if( rtrftrec(a) .LT. rtrftrec(b) ) then + cmprrtrft = -1 + else if( rtrftrec(a) .GT. rtrftrec(b) ) then + cmprrtrft = 1 + else +c +c --- retrofit ID, pollutant, and record number +c values are equal, so compare ... --- +c + endif + endif + endif +c +c --- compare model year end, then maximum HP --- +c + else if( cmprtype .EQ. 2 ) then +c +c --- compare model year end values --- +c --- note: an optimization in fndrtrft() depends on the fact +c that model year end is the first comparison +c criterion; if this ever changes, fndrtrft() will +c need to be modified --- +c + if( rtrftmyen(a) .LT. rtrftmyen(b) ) then + cmprrtrft = -1 + else if( rtrftmyen(a) .GT. rtrftmyen(b) ) then + cmprrtrft = 1 + else +c +c --- model year end values are equal, +c so compare maximum HP values --- +c + if( rtrfthpmx(a) .LT. rtrfthpmx(b) ) then + cmprrtrft = -1 + else if( rtrfthpmx(a) .GT. rtrfthpmx(b) ) then + cmprrtrft = 1 + else +c +c --- model year end and maximum HP values are equal, +c so compare ... --- +c + endif + endif +c +c --- invalid comparison type --- +c + else +c + goto 9999 +c + endif +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/cnthpcat.f b/NONROAD/NR08a/SOURCE/cnthpcat.f new file mode 100644 index 0000000..f34dadb --- /dev/null +++ b/NONROAD/NR08a/SOURCE/cnthpcat.f @@ -0,0 +1,122 @@ +C**** CNTHPCAT +c + integer*4 function cnthpcat( hpmn, hpmx ) +c +c----------------------------------------------------------------------- +c +c This function counts the number of HP categories defined by the +c specified HP range. Assumes that hpmn and hpmx are each 0, 9999, +c or one of the values specified in hpclev, and that hpmn < hpmx. +c +c Return value: +c count of HP categories represented by the HP range +c +c Argument declaration +c Inputs: +c hpmn R minimum HP +c hpmx R maximum HP +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/05 -cimulus- original development +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c hpmn and hpmx values are read from file and +c must be 0, 9999, or one of the values in +c hpclev, which are hard-coded, rather than +c being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 hpmn + real*4 hpmx +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndhpc L returns index into hpclev for specified HP +c + integer*4 fndhpc +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 hpmnidx + integer*4 hpmxidx +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no HP categories --- +c + cnthpcat = 0 +c +c --- determine the category index of the minimum HP --- +c + if( hpmn .EQ. 0. ) then ! floating-point comparison for equality okay; hpmn values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + hpmnidx = 0 + else if( hpmn .EQ. 9999. ) then ! floating-point comparison for equality okay; hpmn values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + hpmnidx = MXHPC + 1 + else +c +c --- find matching HP category --- +c + hpmnidx = fndhpc(hpmn) + if( hpmnidx .EQ. 0 ) then +c +c --- no matching category found, return 0 --- +c + goto 9999 + endif + endif +c +c --- determine the category index of the maximum HP --- +c + if( hpmx .EQ. 0. ) then ! floating-point comparison for equality okay; hpmx values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + hpmxidx = 0 + else if( hpmx .EQ. 9999. ) then ! floating-point comparison for equality okay; hpmx values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + hpmxidx = MXHPC + 1 + else +c +c --- find matching HP category --- +c + hpmxidx = fndhpc(hpmx) + if( hpmxidx .EQ. 0 ) then +c +c --- no matching category found, return 0 --- +c + goto 9999 + endif + endif +c +c --- the count of categories is the difference +c between the category indexes --- +c + cnthpcat = hpmxidx - hpmnidx +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/dayloop.f b/NONROAD/NR08a/SOURCE/dayloop.f new file mode 100644 index 0000000..7eba5fe --- /dev/null +++ b/NONROAD/NR08a/SOURCE/dayloop.f @@ -0,0 +1,126 @@ +C***** DAYLOOP +C + subroutine dayloop(jbday,jeday,jbskip,jeskip,lskip) +c +c --- set looping: if optional daily temperatures/RVPs were read +c in, then use those values according to the month, season, or +c annual period selected by the user, otherwise, only use the +c single temperatures and RVP found in the /OPTIONS/ packet. +c +c +c----------------------------------------------------------------------- +c +c This routine calculates emissions +c Argument descriptions: +c Outputs: +c jbday I beginning day +c jeday I ending day +c jbskip I beginning day of winter skip over +c jeskip I ending day of winter skip over +c lskip L flag to involk winter skip over +c Inputs: +c NONE +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 01/12/05 --dfk-- original development +c 01/20/05 --dfk-- corrected summer index error +c 02/03/05 --dfk-- commented out leap year correction, all years +c will now have 365 days, per EPA +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 jbday + integer*4 jeday + integer*4 jbskip + integer*4 jeskip + logical lskip +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +cleap logical leapyr + integer, dimension(13), save :: daynum=(/1,32,60,91,121,152,182, + & 213,244,274,305,335,366/) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + lskip=.false. + jbday=1 + jeday=1 + jbskip=0 + jeskip=0 +c +c if not using daily temps/RVPs, return +c + if(.NOT.ldayfl) goto 999 +c +c assign looping indexes +c + if( iprtyp .EQ. IDXANN ) then + jbday=1 + jeday=MXDAYS + else if( iprtyp .EQ. IDXSES ) then + if( iseasn .EQ. IDXWTR ) then + jbday=1 + jeday=MXDAYS + lskip=.TRUE. + jbskip=daynum(3) + jeskip=daynum(12)-1 + else if( iseasn .EQ. IDXSPR ) then + jbday=daynum(3) + jeday=daynum(6)-1 + else if( iseasn .EQ. IDXSUM ) then + jbday=daynum(6) + jeday=daynum(9)-1 + else if( iseasn .EQ. IDXFAL ) then + jbday=daynum(9) + jeday=daynum(12)-1 + endif + else if( iprtyp .EQ. IDXMTH) then + jbday=daynum(imonth) + jeday=daynum(imonth+1)-1 + endif +cleapc +cleapc check and adjust for leap year +cleapc +cleap if ((iepyr-(iepyr/400)*400).eq.0) then +cleap leapyr = .TRUE. +cleap elseif ((iepyr-(iepyr/100)*100).eq.0) then +cleap leapyr = .FALSE. +cleap elseif ((iepyr-(iepyr/4)*4).eq.0) then +cleap leapyr = .TRUE. +cleap else +cleap leapyr = .FALSE. +cleap endif +cleapc +cleap if(leapyr) then +cleap if(jbday.ge.daynum(3)) jbday=jbday+1 +cleap if(jeday.ge.daynum(3)-1) jeday=jeday+1 +cleap if(jeday.gt.daynum(13)) jeday=daynum(13) +cleap if(lskip) then +cleap if(jbskip.ge.daynum(3)) jbskip=jbskip+1 +cleap if(jeskip.ge.daynum(3)-1) jeskip=jeskip+1 +cleap endif +cleap endif +c + 999 return + end + diff --git a/NONROAD/NR08a/SOURCE/daymthf.f b/NONROAD/NR08a/SOURCE/daymthf.f new file mode 100644 index 0000000..fcd3513 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/daymthf.f @@ -0,0 +1,194 @@ +c**** DAYMTHF +c + subroutine daymthf(asccod, fipin, daymthfac, mthf, dayf, ndays) +c +c----------------------------------------------------------------------- +c +c Calculates monthly activity factor for every day of year for a +c specified engine type. +c The return value is a single factor to convert the annual emissions +c estimate the to period requested by the user. +c +c Arguments: +c Outputs: +c daymthfac R array of calculated adjustment factors +c mthf R month(s) vs annual adjustment factor +c ndays I number of days spanned by interval (used for +c diurnal & permeation emission caclulations) +c Inputs: +c nday I which day of year to look at +c asccod C SCC code to match +c fipin C FIPs code to match +c +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 02/10/06 --epa-- lifted from dailyf & dayloop, and simplified to +c just do monthly factors for every day of year +c 04/19/06 --epa-- incorp dailyf() and move outside of emsadj(). +c Fixes all SI Daily Temp/RVP month/season/year. +c 05/09/06 --epa-- Fixes dsl PM/sulfur calc for Daily & TypDay runs. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 asccod + character*5 fipin + real*4 daymthfac(MXDAYS), mthf, dayf + integer*4 ndays +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- + + integer*4 idxtpd, idxtpm, modays(12) +cc mostrt(13) + integer*4 i, jday, jbeg, jend + real*4 mthin(MXMTH), nmths, dayin(MXDAY) +c +c----------------------------------------------------------------------- +c Data statements: +c----------------------------------------------------------------------- +c + data modays /31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31/ +cc data mostrt /1,32,60,91,121,152,182,213,244,274,305,335,366/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize array --- +c + do 10 i=1,MXDAYS + daymthfac(i) = 1. + 10 continue +c +cc if not using daily temps/RVPs for multiple months, return +c +cc if(.NOT.ldayfl .OR. (iprtyp .EQ. IDXMTH) ) goto 9999 +c +c --- call routine to get the monthly and daily seasonality data --- +c +cc dailyf = -9. + call fndtpm( asccod, fipin, idxtpm, idxtpd ) +c +c --- if match found for day-of-week, load the values --- +c + if( idxtpd .GT. 0 ) then + do 15 i=1,MXDAY + dayin(i) = dayfac(i,idxtpd) + 15 continue +c +c --- otherwise load the defaults --- +c + else + do 20 i=1,MXDAY + dayin(i) = defday(i) + 20 continue + endif +c +c --- if match found for month of year, load the values --- +c + if( idxtpm .GT. 0 ) then + do 30 i=1,MXMTH + mthin(i) = mthfac(i,idxtpm) + 30 continue +c +c --- otherwise load the defaults --- +c + else + do 40 i=1,MXMTH + mthin(i) = defmth(i) + 40 continue + endif +c +c --- set number of months --- +c + if( iprtyp .EQ. IDXANN ) then + nmths = 12. + else if( iprtyp .EQ. IDXSES ) then + nmths = 3. + else + nmths = 1. + endif +c +c --- loop over months & days and assign daily monthly factors --- +c --- assigning same value to every day within a month --- +c + mthf = 0. + ndays = 0 + jbeg = 1 + jend = 0 + do 50 i=1,MXMTH +cc +ctst1 if( iprtyp .NE. IDXANN ) then +ctst1 mthin(i) = mthin(i) * REAL(MXDAYS) / REAL(modays(i) * 12) +ctst1 endif +cc + if( lmonth(i) ) then + mthf = mthf + mthin(i) + ndays = ndays + modays(i) + endif + if(ldayfl) then + jend = jbeg + modays(i) - 1 +ctstd if(iprtyp .NE. IDXANN) then +ctstd mthin(i) = mthin(i) * REAL(MXDAYS) / REAL(modays(i) * 12) +ctstd endif + do 60 jday = jbeg,jend + daymthfac(jday) = mthin(i) / REAL(modays(i)) +ctst daymthfac(jday) = mthin(i) * nmths +cc daymthfac(jday) = mthin(i) * 12. + 60 continue +cdiag write(IOWMSG,'(A, 1X, A, 1X, 4I4, 2F9.6)') +cdiag & fipin, asccod, i, jbeg, jend, jday, mthin(i), +cdiag & daymthfac(jday-1) + jbeg = jend + 1 + endif + 50 continue +c +c --- if period is not Typical Day, day-of-week adjustment is 1.0 --- +c + if( ismtyp .EQ. IDXTOT ) then + dayf = 1.0 + else +c +c --- if the period is daily, multiply by 7 to get a weeks worth and +c then apply the day of week factor --- +c +cc ndays = 1 + dayf = 0. + if( ldays(IDXWKD) ) then + dayf = dayin(IDXWKD) + else + dayf = dayin(IDXWKE) + endif + dayf = 7 * dayf + endif +c +cdiag write(IOWMSG,'(A, 1X, A, 1X, I5, 3F9.6, I5)') +cdiag & fipin, asccod, idxtpm, daymthfac(182), mthf, dayf, ndays +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/dispit.f b/NONROAD/NR08a/SOURCE/dispit.f new file mode 100644 index 0000000..73ae255 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/dispit.f @@ -0,0 +1,50 @@ +C**** DISPIT() +c + subroutine dispit() +c +c----------------------------------------------------------------------- +c +c displays a count of records processed +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 ipct +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + nrecds = nrecds + 1 + if( ntotrc .GT. 0 ) then + ipct = INT( 100.0 * FLOAT( nrecds ) / FLOAT( ntotrc ) ) + else + ipct = 100 + endif +cgwilson IF(MOD(FLOAT(IPCT),5.).EQ.0.)write(IOWSTD,9000,ERR=9999) ipct +CDFK write(IOWSTD,9000,ERR=9999,advance='no') ipct +CDFK call flush(IOWSTD) +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format('+','Processing...',I3,'%') +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/emfclc.f b/NONROAD/NR08a/SOURCE/emfclc.f new file mode 100644 index 0000000..3f09b02 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/emfclc.f @@ -0,0 +1,314 @@ +C**** EMFCLC +c + subroutine emfclc(ierr,emsfac,bsfc,idxunt,adetcf,bdetcf,detcap, + & asccod,tecnam,ntch,tecfrc,iyrin,idxyr,icurec) +c +c----------------------------------------------------------------------- +c +c This routine calculates the emission factors for the specified +c equipment type. Wherever necessary, the original emission factors +c are converted to grams/hour. This routine also retrieves the +c deterioration data and applies a deterioration factor to the +c emission factor based on the age of the equipment. +c Since the BSFC data is in the same format as the emission factor +c data, this routine also retieves the BSFC data. +c Before a call is made to the routine that searches for emission +c factor data, a check is made to determine if the search is +c necessary. That is, if it is certain that a new search will yield +c the same data record, no search is made. +c +c Argument description: +c Outputs: +c ierr I error code +c emsfac R array of caluclated exhaust emission factors +c bsfc R BSFC value for this equipment type +c idxunt I index in the units array for the emission factors +c adetcf R A-coefficient of the deterioration factor equation +c bdetcf R B-coefficient of the deterioration factor equation +c detcap R cap on age of equipment for deterioration calc +c Inputs: +c asccod C SCC code of equipment +c tecnam C exhaust technology type of equipment +c ntch I number of exhaust technology types for this equipemnt +c tecfrc I the exhaust tech type fractions +c iyrin I current model year +c idxyr I index of year in emission factor arrays +c icurec I index in array of current record +c idxyr I index of model year being evaluated +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- original development +c 07/21/96 --jlf-- added deterioration +c 05/13/04 --dfk-- added seperate evap tech group by species processing +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; hpavga and emhpc values are read +c from file, rather than being calculated +c at runtime +c 04/03/06 --epa-- added BSFC read check warning for missing BSFCs. +c 04/24/06 --epa-- enhanced BSFC warning check to only care for +c tech fractions > 0.0 (like other EF inputs). +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndefc I returns the index in the emission factor arrays +c fnddet I returns the index in the deterioration factor arrays +c + integer*4 fndefc + integer*4 fnddet +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 emsfac(MXAGYR,MXPOL,MXTECH) + real*4 bsfc(MXAGYR,MXTECH) + integer*4 idxunt(MXPOL,MXTECH) + real*4 adetcf(MXPOL,MXTECH) + real*4 bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + character*10 asccod + character*10 tecnam(MXTECH) + integer*4 ntch + real*4 tecfrc(MXTECH) + integer*4 iyrin + integer*4 idxyr + integer*4 icurec +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxspc, idxefc, idxdet, idxbsf, idxall, i, j + integer*4 jerr + real*4 hpavga + logical*4 lcall(0:MXPOL,0:MXTECH) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error code --- +c + ierr = IFAIL +c +c --- intialize the exhaust emission factors to missing --- +c + do 10 i=1,MXPOL + if(i.GE.IDXDIU .AND. i.LE.IDXRLS) cycle + do 20 j=1,MXTECH + if( tecfrc(j) .NE. 0. ) then + emsfac(idxyr,i,j) = RMISS + else + emsfac(idxyr,i,j) = 0. + endif + adetcf(i,j) = 0.0 + bdetcf(i,j) = 1.0 + detcap(i,j) = 0. + 20 continue + 10 continue +c +c --- set the HP category ---- +c + hpavga = avghpc(icurec) +c +c --- BSFC DATA --- +c +c --- check the identification data to determine if a new +c search for BSFC data is necessary, +c position 0 of the last match arrays is BSFC ---- +c + do 25 i=0,ntch + lcall(0,i) = .FALSE. + if( asccod .NE. emasc(0) ) lcall(0,i) = .TRUE. + if( hpavga .NE. emhpc(0) ) lcall(0,i) = .TRUE. ! floating-point comparison for equality okay; hpavga and emhpc values are read from file, rather than being calculated at runtime + if( iyrin .LT. iemyr(0,i,1) .OR. + & iyrin .GE. iemyr(0,i,2) ) lcall(0,i) = .TRUE. + if( i .GT. 0) then + if( tecnam(i) .NE. emtech(0,i) ) lcall(0,i)=.TRUE. + end if + 25 continue +c +c --- if needed, get the global match --- +c reinitialize the upper and lower bound on years +c for last record found ---- +c + if( lcall(0,0) ) then + iemyr(0,0,1) = 0 + iemyr(0,0,2) = 9999 +chmm fix ifrst to = 0 +chmm idxeal(0) = fndefc( asccod, ascbsf, 0, TECDEF, tecbsf, +chmm & hpavga, bsfpcb, bsfpce, iyrin, iyrbsf, bsffac, 1, +chmm & nbsffc, 0) + idxeal(0) = fndefc( asccod, ascbsf, 0, TECDEF, tecbsf, + & hpavga, bsfpcb, bsfpce, iyrin, iyrbsf, bsffac, 0, + & nbsffc, 0) + endif +c +c --- the information may give a different best match, call +c routine to find the best match in the BSFC data arrays ---- +c reinitialize the upper and lower bound on years +c for last record found ---- +c + do 26 i=1,ntch + if( lcall(0,i) .AND. tecnam(i) .NE. TECDEF ) then + iemyr(0,i,1) = 0 + iemyr(0,i,2) = 9999 +chmm fix ifrst to = 0 +chmm idxbsf = fndefc( asccod, ascbsf, i, tecnam(i), tecbsf, +chmm & hpavga, bsfpcb, bsfpce, iyrin, iyrbsf, bsffac, 1, +chmm & nbsffc, 0) + idxbsf = fndefc( asccod, ascbsf, i, tecnam(i), tecbsf, + & hpavga, bsfpcb, bsfpce, iyrin, iyrbsf, bsffac, 0, + & nbsffc, 0) + else + idxbsf = idxems(0,i) + endif + if( idxbsf .EQ. 0 ) idxbsf = idxeal(0) + if( idxbsf .GT. 0 ) then + bsfc(idxyr,i) = bsffac(idxbsf,0) + else if( idxbsf .LE. 0 .AND. tecfrc(i) .GT. 0.0 ) then +cah bsfc(idxyr,i) = 1.0 + write(IOWMSG,9000,ERR=9999) + & 'WARNING: No BSFC factors found for: ', + & asccod, tecnam(i), hpavga, iyrin, ' ' + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + goto 26 + endif + 26 continue +c +c --- EXHAUST SPECIES ---- +c +c --- Loop over exhaust species ---- +c + do 90 idxspc=IDXTHC,IDXCRA +c +c --- since SOx is calculated when doing the HC emissions, +c skip it this is SOx --- +c + if( idxspc .EQ. IDXSOX ) goto 90 +c +c --- skip if there is no emission factor file for this species ---- +c + if( .NOT. lfacfl(idxspc) ) goto 90 +c +c --- check which tech types need new emission factors --- +c + do 21 i=0,ntch +c +c --- check the identification data to determine if a new +c search for emission factor data is necessary, +c + lcall(idxspc,i) = .FALSE. + if( asccod .NE. emasc(idxspc) ) lcall(idxspc,i) = .TRUE. + if( hpavga .NE. emhpc(idxspc) ) lcall(idxspc,i) = .TRUE. ! floating-point comparison for equality okay; hpavga and emhpc values are read from file, rather than being calculated at runtime + if( iyrin .LT. iemyr(idxspc,i,1) .OR. + & iyrin .GE. iemyr(idxspc,i,2) ) lcall(idxspc,i) = .TRUE. + if( i .GT. 0 ) then + if( tecnam(i) .NE. emtech(idxspc,i) ) + & lcall(idxspc,i) = .TRUE. + if( tecfrc(i) .GT. 0. ) emsfac(idxyr,idxspc,i) = RMISS + endif + 21 continue +c +c --- call to get the emission factor for global tech types --- +c + if( lcall(idxspc,0) ) then + iemyr(idxspc,0,1) = 0 + iemyr(idxspc,0,2) = 9999 + idxeal(idxspc) = fndefc( asccod, ascexh, 0, TECDEF, tecexh, + & hpavga, exhpcb, exhpce, iyrin, iyrexh, exhfac, IDXTHC, + & nexhfc, idxspc) + endif +c +c --- the information may give a different best match, call +c routine to find the best match in the exhaust +c emission factor data arrays ---- +c + do 31 i=1,ntch + if( lcall(idxspc,i) .AND. tecnam(i) .NE. TECDEF ) then + iemyr(idxspc,i,1) = 0 + iemyr(idxspc,i,2) = 9999 + idxefc = fndefc( asccod, ascexh, i, tecnam(i), tecexh, + & hpavga, exhpcb, exhpce, iyrin, iyrexh, exhfac, IDXTHC, + & nexhfc, idxspc) + idxems(idxspc,i) = idxefc + emtech(idxspc,i) = tecnam(i) + else + idxefc = idxems(idxspc,i) + endif +c +c --- if data was found, fill the local variables with the +c data from the global arrays ---- +c + if( idxefc .EQ. 0 ) idxefc = idxeal(idxspc) + if( idxefc .GT. 0 ) then + emsfac(idxyr,idxspc,i) = exhfac(idxefc,idxspc) + idxunt(idxspc,i) = iexhun(idxefc,idxspc) +c +c --- no data was found, write a warning message ---- +c + else if( idxefc .LE. 0 .AND. tecfrc(i) .GT. 0.0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: No emissions factors found for: ', + & asccod, tecnam(i), hpavga, iyrin, polnam(idxspc) + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + goto 31 + endif +c +c ---- call routine to find the best match in the +c exhaust deterioration rate data arrays ---- +c + idxall = 0 + idxdet = 0 + if( ldetfl(idxspc) ) then + idxall = fnddet( idxspc, TECDEF ) + idxdet = fnddet( idxspc, tecnam(i) ) + if( idxdet .EQ. 0 ) idxdet = idxall + if( idxdet .GT. 0 ) then + adetcf(idxspc,i) = detavl(idxdet,idxspc) + bdetcf(idxspc,i) = detbvl(idxdet,idxspc) + detcap(idxspc,i) = capdet(idxdet,idxspc) + endif + endif + 31 continue + 90 continue +c +c ---- return to calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(1X,3(A,1X),F5.0,I5,1X,A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/emsadj.f b/NONROAD/NR08a/SOURCE/emsadj.f new file mode 100644 index 0000000..2c552b0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/emsadj.f @@ -0,0 +1,343 @@ +C**** EMSADJ +c + subroutine emsadj(adjfac,asccod,code, daymthfac) +c +c----------------------------------------------------------------------- +c +c This routine calculates the various emission adjustment factors. +c All of the adjustments are incorporated into a single array of +c factors, indexed by species. +c +c Argument description: +c Outputs: +c adjfac R array of calculated adjustment factors +c adjtime R adjustment for time period +c Inputs: +c asccod C SCC code of equipment +c code C 5-digit fip code +c daymthfac R array of daily monthly adjustments +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gmw-- original development +c 11/10/99 --mmj-- modified oxygenate correction per NR-003 +c tech report +c 05/27/04 --dfk-- added temperature corrections for tank and hose +c permeation +c 06/04/04 --dfk-- removed corrections for diurnal (they are +c performed by updated Wade equation routine) +c 06/15/04 --dfk-- added optional daily temperature corrections +c 09/22/04 --dfk-- added optional diesel sulfur corrections +C 11/15/04 --dfk-- added temp corrections for rec-marine 3-hoses +C 02/25/05 --cimulus-- changed temperature correction for +c tank permeation (now 50% lower with +c each 10C (18F) reduction from 85F) +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c correction is handled in clcems. Fixed the +c time adjustment correction for Winter. +c 07/20/05 --cimulus-- commented variables/functions that were +c only used in commented code +c 07/20/05 --cimulus-- commented variables that were set but +c only used in commented code +c 11/18/05 --epa-- change 4-stk oxy adjustment for CO from 6.3% +c to 6.2% per percent oxygen, per peer review. +c 02/10/06 --epa-- add daymthfac adjustment for exhaust +c and all per-activity (not per-day) pollutants. +c 04/03/06 --epa-- add 2280002xxx as dsl marine sulfur adj SCC. +c 04/21/06 --epa-- Fixes all SI Daily Temp/RVP month/season/year. +c 05/09/06 --epa-- Fixes dsl PM/sulfur calc for Daily & TypDay runs. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c caludi R returns the diurnal "uncontrolled" emission rate +c +c real*4 caludi +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 adjfac(MXPOL,MXDAYS), daymthfac(MXDAYS) +cc real*4 adjtime + character*10 asccod + character*5 code +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxyr, iseas, i + real*4 temfac, acoeff, soxcor, oxyadj + integer*4 jday,jbday,jeday,jbskip,jeskip,ireg + real*4 tamb + logical lskip +cold real*4 stdval, epsval +cold logical tmax,tmin +cold integer*4 jndays +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +cc --- set looping indexes +c + call dayloop(jbday,jeday,jbskip,jeskip,lskip) +c +c set number of days in period +c +cc if(lskip) then +cc jndays=31+28+31 ! January+February+December (no leap years) +cc else +cc jndays=jeday-jbday+1 +cc end if +c +c set the time period adjustment factor +c +cc adjtime=1.0/float(jndays) +c +c loop over selected period +c + do jday=jbday,jeday +c +c if winter and using daily values, skip 1 March to 30 November, inclusive +c + if(lskip.and.jday.ge.jbskip.and.jday.le.jeskip) cycle +c +c set temperatures +c + if(ldayfl) then + read(code(1:2),*) ireg +cold tmax=daytmp(jday,1,ireg) +cold tmin=daytmp(jday,2,ireg) + tamb=daytmp(jday,3,ireg) + else +cold tmax=tempmx +cold tmin=tempmn + tamb=amtemp + end if +c +c --- initialize the emission factors to no adjustment --- +c + do 10 i=1,MXPOL + adjfac(i,jday) = 1.0 + 10 continue +c +c --- assign monthly activity adjustments to days for activity --- +c --- based EFs (not Disp or Spill) if doing a daily TempRVP run --- +c + if(ldayfl) then + do 15 i=1,MXPOL + if( (i .GE. IDXDIU .AND. i .LE. IDXVNT) + & .OR. i .EQ. IDXSPL) cycle + adjfac(i,jday) = daymthfac(jday) + 15 continue + end if +c +c --- temperature corrections for diurnal emissions --- +c +cold if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then +cold stdval = caludi( 9.0, 60.0, 84.0, 40.0 ) +cold epsval = caludi( fulrvp, tmin, tmax, 40.0 ) +cold if( stdval .NE. 0. ) adjfac(IDXDIU) = +cold & adjfac(IDXDIU) * epsval/stdval +cold endif +c +c --- temperature corrections for exhaust emissions --- +c (NOTE: 2-stroke is included in case data becomes available, +c we need only change the coefficients ) ---- +c +c --- Gasoline 4-stroke ---- +c + if( ifuel .EQ. IDXGS4 ) then + if( tamb .LE. 75.0 ) then + acoeff = -0.00240 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * temfac +c + acoeff = 0.0015784 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * temfac +c + acoeff = -0.00892 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) * temfac + else + acoeff = 0.00132 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * temfac +c + acoeff = 0.00375 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * temfac +c + acoeff = -0.00873 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) * temfac + endif + endif +c +c --- Gasoline 2-stroke ---- +c + if( ifuel .EQ. IDXGS2 ) then + if( tamb .GE. 75.0 ) then + acoeff = 0.0 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * temfac +c + acoeff = 0.0 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * temfac +c + acoeff = 0.0 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) * temfac + else + acoeff = 0.0 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * temfac +c + acoeff = 0.0 + temfac = EXP( acoeff * (tamb - 75.0) ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * temfac + endif + endif +c +c --- oyxgenate correction to gasoline exhaust --- +c (NOTE: 2-stroke is included in case data becomes, we need +c only change the coefficients ) ---- +c +c --- Gasoline 4-stroke ---- +c + if( .NOT. lrfg .AND. ifuel .EQ. IDXGS4 ) then + acoeff = 0.045 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * oxyadj +c + acoeff = 0.062 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * oxyadj +c + acoeff = -0.115 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) * oxyadj + endif +c +c --- Gasoline 2-stroke ---- +c + if( .NOT. lrfg .AND. ifuel .EQ. IDXGS2 ) then + acoeff = 0.006 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) * oxyadj +c + acoeff = 0.065 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) * oxyadj +c + acoeff = -0.186 + oxyadj = 1.0 - ( acoeff * oxypct ) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) * oxyadj + endif +c +c --- correction for sulfur content on SOx --- +c + if( .NOT. lrfg .AND. ifuel .GT. 0 .AND. ifuel .LE. IDXCNG ) then + soxcor = soxful(ifuel) / soxbas(ifuel) +cc +cc --- alternative diesel sulfur content for rec marine --- +cc + if(asccod(1:7) .EQ. '2282020' .OR. + & asccod(1:7) .EQ. '2280002') then + soxcor = soxdsm / soxbas(ifuel) + endif +cc + adjfac(IDXSOX,jday) = adjfac(IDXSOX,jday) * soxcor + endif +c +c --- correction for altitude --- +c + if( lhigh .AND. ifuel .GT. 0 .AND. ifuel .LE. IDXCNG ) then + do 20 i=IDXTHC,IDXSOX + adjfac(i,jday) = adjfac(i,jday) * altfac(ifuel) + 20 continue + endif +c +c --- correction for RFG --- +c + iseas = 0 + idxyr = 0 + if( lrfg .AND. imonth .GT. 0 ) iseas = idseas(imonth) + if( iseas .EQ. IDXWTR .OR. iseas .EQ. IDXSUM ) then + do 30 i=1,NRFGBIN + if( iepyr .GE. iyrbin(iseas,i,1) .AND. + & iepyr .LE. iyrbin(iseas,i,2) ) idxyr = i + 30 continue +c + if( ifuel .EQ. IDXGS2 .AND. idxyr .NE. 0 ) then + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) + & * rfggs2(iseas,idxyr,IDXTHC) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) + & * rfggs2(iseas,idxyr,IDXCO) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) + & * rfggs2(iseas,idxyr,IDXNOX) + adjfac(IDXSOX,jday) = adjfac(IDXSOX,jday) + & * rfggs2(iseas,idxyr,IDXSOX) + adjfac(IDXPM,jday) = adjfac(IDXPM,jday) + & * rfggs2(iseas,idxyr,IDXPM) + endif + if( ifuel .EQ. IDXGS4 .AND. idxyr .NE. 0 ) then + adjfac(IDXTHC,jday) = adjfac(IDXTHC,jday) + & * rfggs4(iseas,idxyr,IDXTHC) + adjfac(IDXCO,jday) = adjfac(IDXCO,jday) + & * rfggs4(iseas,idxyr,IDXCO) + adjfac(IDXNOX,jday) = adjfac(IDXNOX,jday) + & * rfggs4(iseas,idxyr,IDXNOX) + adjfac(IDXSOX,jday) = adjfac(IDXSOX,jday) + & * rfggs4(iseas,idxyr,IDXSOX) + adjfac(IDXPM,jday) = adjfac(IDXPM,jday) + & * rfggs4(iseas,idxyr,IDXPM) + endif + endif +c +c --- temperature corrections for tank and hose permeations +c --- (temperature must be in degrees F) +c + adjfac(IDXTKP,jday) = adjfac(IDXTKP,jday) + & * 3.788519E-2*exp(3.850818E-2*tamb) + adjfac(IDXHOS,jday) = adjfac(IDXHOS,jday) + & * 6.013899e-2*exp(3.850818e-2*tamb) + adjfac(IDXNCK,jday) = adjfac(IDXHOS,jday) + adjfac(IDXSR ,jday) = adjfac(IDXHOS,jday) + adjfac(IDXVNT,jday) = adjfac(IDXHOS,jday) +c + end do ! iday +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + + diff --git a/NONROAD/NR08a/SOURCE/evemfclc.f b/NONROAD/NR08a/SOURCE/evemfclc.f new file mode 100644 index 0000000..1a73550 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/evemfclc.f @@ -0,0 +1,370 @@ +C**** EVEMFCLC +c + subroutine evemfclc(ierr,evemsfac,idxevunt,aevdetcf,bevdetcf, + & evdetcap,asccod,evtecnam,nevtch,evtecfrc,iyrin,idxyr,icurec) +c +c----------------------------------------------------------------------- +c +c This routine calculates the evap emission factors for the specified +c equipment type. Wherever necessary, the original emission factors +c are converted to grams/hour. This routine also retrieves the +c deterioration data and applies a deterioration factor to the +c emission factor based on the age of the equipment. +c Before a call is made to the routine that searches for emission +c factor data, a check is made to determine if the search is +c necessary. That is, if it is certain that a new search will yield +c the same data record, no search is made. +c +c Argument description: +c Outputs: +c ierr I error code +c evemsfac R array of caluclated evap emission factors +c idxevunt I index in the units array for the emission factors +c aevdetcf R A-coefficient of the deterioration factor equation +c bevdetcf R B-coefficient of the deterioration factor equation +c evdetcap R cap on age of equipment for deterioration calc +c Inputs: +c asccod C SCC code of equipment +c evtecnam C evap technology type of equipment +c nevtch I number of evap technology types for this equipemnt +c evtecfrc I the evap tech type fractions +c iyrin I current model year +c idxyr I index of year in emission factor arrays +c icurec I index in array of current record +c idxyr I index of model year being evaluated +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/04 --dfk-- original development (from emfclc) +c 07/20/05 --cimulus-- removed unused variable +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; hpavga and emhpc values are read +c from file, rather than being calculated +c at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndevefc I returns the index in the evap emission factor arrays +c fnddet I returns the index in the deterioration factor arrays +c + integer*4 fnddet + integer*4 fndevefc +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + character*10 asccod + character*10 evtecnam(MXEVTECH) + integer*4 nevtch + real*4 evtecfrc(MXEVTECH) + integer*4 iyrin + integer*4 idxyr + integer*4 icurec +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxspc, idxefc, idxdet, idxall, i, j + integer*4 jerr + real*4 hpavga + logical*4 lcall(0:MXPOL,0:MXEVTECH) + character*10 tname +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error code --- +c + ierr = IFAIL +c +c --- intialize the emission factors to missing --- +c + do 10 i=IDXDIU, IDXRLS + do 20 j=1,MXEVTECH + if( evtecfrc(j) .NE. 0. ) then + evemsfac(idxyr,i,j) = RMISS + else + evemsfac(idxyr,i,j) = 0. + endif + aevdetcf(i,j) = 0.0 + bevdetcf(i,j) = 1.0 + evdetcap(i,j) = 0. + 20 continue + 10 continue +c +c --- set the HP category ---- +c + hpavga = avghpc(icurec) +c +c --- EVAP SPECIES ---- +c +c --- Loop over evap species ---- +c + do 30 idxspc=IDXDIU, IDXRLS +c +c --- skip if diesel, LPG or CNG type --- +c + if( ifuel .EQ. IDXDSL .OR. + & ifuel .EQ. IDXCNG .OR. + & ifuel .EQ. IDXLPG) then + do 40 i=1,nevtch + evemsfac(idxyr,idxspc,i) = 0. + 40 continue + goto 30 + endif +c +c --- skip if there is no emission factor file for this species --- +c + if( .NOT. lfacfl(idxspc) .OR. idxspc.EQ.IDXSPL ) goto 30 +c +c ---- an evap tech group consists of an E followed by 8 numbers. +c each number corresponds to a tech group name for each evap +c species, as follows: +c +c 12345678 +c E00000000 +c +c E: Evap Tech Group +c 1: Diurnal +c 2: Tank Permeation +c 3: Hose Permeation (applies to non-rec-marine hose and 3 rec-marine hoses) +c 4: Hot Soak +c 5: Displacement +c 6: Spillage +c 7: Running Loss +c 8: Resting Loss +c +c the tech type name format for each evap species is En, where n=0-9 +c +c --- check the identification data to determine if a new +c search for emission factor data is necessary, +c (parse the species tech group name from the evap tech group ---- +c the species tech group name format is En, where n=0-9.) +c + do 50 i=0,nevtch + lcall(idxspc,i) = .FALSE. + if( asccod .NE. emasc(idxspc) ) lcall(idxspc,i) = .TRUE. + if( hpavga .NE. emhpc(idxspc) ) lcall(idxspc,i) = .TRUE. ! floating-point comparison for equality okay; hpavga and emhpc values are read from file, rather than being calculated at runtime + if( iyrin .LT. iemyr(idxspc,i,1) .OR. + & iyrin .GE. iemyr(idxspc,i,2) ) lcall(idxspc,i) = .TRUE. + if( i .GT. 0 ) then + if(idxspc.le.IDXHOS) then + j=idxspc-IDXDIU+2 ! ID starts in column 2 of evap tech name + else if (idxspc.ge.IDXNCK.and.idxspc.le.IDXVNT) then + j=IDXHOS-IDXDIU+2 ! map all hoses into hose + else + j=idxspc-IDXDIU+2-3 ! shift 3 slots per 3-rec-marine hose + end if + tname='E'//evtecnam(i)(j:j) + if( tname .NE. evemtech(idxspc,i) ) + & lcall(idxspc,i) = .TRUE. + if( evtecfrc(i) .GT. 0. ) + & evemsfac(idxyr,idxspc,i) = RMISS + endif + 50 continue +c +c --- if needed, get the global match --- +c reinitialize the upper and lower bound on years +c for last record found ---- +c + if( lcall(idxspc,0) ) then + iemyr(idxspc,0,1) = 0 + iemyr(idxspc,0,2) = 9999 + idxeal(idxspc) = fndevefc( asccod, ascevp, 0, TECDEF, + & tecevp, hpavga, evhpcb, evhpce, iyrin, iyrevp, evpfac, + & IDXTHC, nevpfc, idxspc) + endif +c +c --- the information may give a different best match, call +c routine to find the best match in the non-exhaust +c emission factor data arrays ---- +c reinitialize the upper and lower bound on years +c for last record found ---- +c + do 60 i=1,nevtch + j=idxspc-IDXDIU+2 + if(idxspc.le.IDXHOS) then + j=idxspc-IDXDIU+2 ! ID starts in column 2 of evap tech name + else if (idxspc.ge.IDXNCK.and.idxspc.le.IDXVNT) then + j=IDXHOS-IDXDIU+2 ! map all hoses into hose + else + j=idxspc-IDXDIU+2-3 ! shift 3 slots per 3-rec-marine hose + end if + tname='E'//evtecnam(i)(j:j) + if(lcall(idxspc,i) .AND. tname .NE. TECDEF) then + iemyr(idxspc,i,1) = 0 + iemyr(idxspc,i,2) = 9999 + idxefc = fndevefc( asccod, ascevp, i, tname, + & tecevp, hpavga, evhpcb, evhpce, iyrin, + & iyrevp, evpfac, IDXTHC, nevpfc, idxspc) + idxems(idxspc,i) = idxefc + evemtech(idxspc,i) = tname + else + idxefc = idxems(idxspc,i) + endif +c +c --- if data was found, fill the local variables with the +c data from the global arrays ---- +c + if( idxefc .EQ. 0 ) idxefc = idxeal(idxspc) + if( idxefc .GT. 0 .AND. evtecfrc(i) .GT. 0.0 ) then + evemsfac(idxyr,idxspc,i) = evpfac(idxefc,idxspc) + idxevunt(idxspc,i) = ievpun(idxefc,idxspc) + else if( evtecfrc(i) .GT. 0.0 ) then +c +c --- no data was found, write a warning message ---- +c + write(IOWMSG,9000,ERR=9999) + & 'WARNING: No evap emission factors found for: ', + & asccod, evtecnam(i), tname, hpavga, iyrin, + & polnam(idxspc) + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + goto 60 + endif +c +c ---- call routine to find the best match in the +c non-exhaust deterioration rate data arrays ---- +c + idxall = 0 + idxdet = 0 + if( ldetfl(idxspc) ) then + idxall = fnddet( idxspc, TECDEF ) + idxdet = fnddet( idxspc, tname ) + if( idxdet .EQ. 0 ) idxdet = idxall + if( idxdet .GT. 0 ) then + aevdetcf(idxspc,i) = detavl(idxdet,idxspc) + bevdetcf(idxspc,i) = detbvl(idxdet,idxspc) + evdetcap(idxspc,i) = capdet(idxdet,idxspc) + endif + endif + 60 continue + 30 continue +cc +cc --- HOT SOAKS handled differently --- +cc +cc --- check the identification data to determine if a new +cc search for emission factor data for Hot SoaK is necessary, +cc +c do 70 i=0,nevtch +c if( asccod .NE. emasc(IDXSOK) ) lcall(IDXSOK,i) = .TRUE. +c if( hpavga .NE. emhpc(IDXSOK) ) lcall(IDXSOK,i) = .TRUE. ! floating-point comparison for equality okay; hpavga and emhpc values are read from file, rather than being calculated at runtime +c if( iyrin .LT. iemyr(IDXSOK,i,1) .OR. +c & iyrin .GE. iemyr(IDXSOK,i,2) ) lcall(IDXSOK,i) = .TRUE. +c if( i .GT. 0 ) then +c if( evtecnam(i) .NE. emtech(IDXSOK,i) ) +c & lcall(IDXSOK,i) = .TRUE. +c if( evtecfrc(i) .GT. 0. ) evemsfac(idxyr,IDXSOK,i) = RMISS +c endif +c 70 continue +cc +c if( lfacfl(IDXSOK) ) then +cc +cc --- the information may give a different best match, call +cc routine to find the best match in the Hot Soak +cc emission factor data array ---- +cc reinitialize the upper and lower bound on years +cc for last record found ---- +cc +c if( lcall(IDXSOK,0) ) then +c iemyr(IDXSOK,0,1) = 0 +c iemyr(IDXSOK,0,2) = 9999 +c idxeal(IDXSOK) = fndefc( asccod, ascevp, 0, TECDEF, tecevp, +c & hpavga, evhpcb, evhpce, iyrin, iyrevp, evpfac, IDXSOK, +c & nevpfc, IDXSOK) +c endif +cc +c do 80 i=1,nevtch +c iemyr(IDXSOK,i,1) = 0 +c iemyr(IDXSOK,i,2) = 9999 +c if( lcall(IDXSOK,i) .AND. tecnam(i) .NE. TECDEF ) then +c idxefc = fndefc( asccod, ascevp, i, tecnam(i), tecevp, +c & hpavga, evhpcb, evhpce, iyrin, iyrevp, evpfac, IDXSOK, +c & nevpfc, IDXSOK) +c idxems(IDXSOK,i) = idxefc +c emtech(IDXSOK,i) = evtecnam(i) +c else +c idxefc = idxems(IDXSOK,i) +c endif +cc +cc ---- call routine to find the best match in the +cc Hot Soak deterioration rate data arrays ---- +cc reinitialize the upper and lower bound on years +cc for last record found ---- +cc +c idxall = 0 +c idxdet = 0 +c if( ldetfl(IDXSOK) ) then +c idxall = fnddet( IDXSOK, TECDEF ) +c idxdet = fnddet( IDXSOK, tecnam(i) ) +c if( idxdet .EQ. 0 ) idxdet = idxall +c if( idxdet .GT. 0 ) then +c aevdetcf(idxspc,i) = detavl(idxdet,idxspc) +c bevdetcf(idxspc,i) = detbvl(idxdet,idxspc) +c evdetcap(idxspc,i) = capdet(idxdet,idxspc) +c endif +c endif +cc +cc --- if data is available, calculate the hot soak factors +cc this should not need conversion --- +cc +c if( idxefc .GT. 0 ) then +c evemsfac(idxyr,IDXSOK,i) = exhfac(idxefc,idxspc) +c idxevunt(IDXSOK,i) = iexhun(idxefc,idxspc) +cc +cc --- no data was found, write a warning message ---- +cc +c else if( idxefc .LE. 0 .AND. tecfrc(i) .GT. 0.0 ) then +c write(IOWMSG,9000,ERR=9999) +c & 'WARNING: No emissions factors found for: ', +c & asccod, tecnam(i), hpavga, iyrin, polnam(IDXSOK) +c call chkwrn(jerr,IDXWEM) +c if( jerr .NE. ISUCES ) goto 9999 +c endif +c 80 continue +c endif +c +c ---- return to calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(1X,4(A,1X),F5.0,I5,1X,A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndact.f b/NONROAD/NR08a/SOURCE/fndact.f new file mode 100644 index 0000000..bf772a2 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndact.f @@ -0,0 +1,182 @@ +c**** FNDACT +c + function fndact( asccin, fipin, hpin ) +C + IMPLICIT NONE +C + integer*4 fndact +c +c----------------------------------------------------------------------- +c +c This routine searches through the array of equipment types read +c from the activity file and looks for the best match of the +c identification data in the argument list. +c The best match is defined as: +c SCC Region +c ------ ------ +c Exact Exact +c Exact Global +c Global Exact +c Global Global +c +c The average HP must be in the HP range of the matched record, but +c there is no check for best match on HP range. +c +c Arguments: +c Inputs: +c asccin C SCC code to match +c fipin C FIPS code of the county +c hpin I HP category +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 01/10/94 --gmw-- Original development +c 07/23/96 --jlf-- added option of technology code = ALL in +c the activity file +c 06/10/97 --gwilson-- Changed literal ALL to be a parameter +c 05/20/04 --dfk-- added switch to search for exhaust or evap tech type +c 07/11/05 --cimulus-- evaporative no longer compares technology +c type to find activity data, so force match +c by assuming ALL when iexev is evap +c 07/13/05 --cimulus-- exhaust no longer compares technology +c type to find activity data, so force match +c by assuming ALL when iexev is exhaust +c 07/15/05 --cimulus-- removed tech type searching/matching +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdreg.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c External funnctions: +c----------------------------------------------------------------------- +c +c fndreg I returns the index of a region county for a county +c + integer*4 fndreg +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*10 asccin + character*5 fipin + real*4 hpin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I maximum number of global checks +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + character*5 rgncd + integer*4 iexact, iexreg, idxglb(MXGLB), idxrgb(MXGLB) + integer*4 idxreg, i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the global SCC codes --- +c + fndact = 0 + do 10 i=1,MXGLB + ascglb(i) = '0000000000' + idxglb(i) = -9 + idxrgb(i) = -9 + 10 continue + iexreg = 0 + iexact = 0 + ascglb(2)(1:4) = asccin(1:4) + ascglb(3)(1:7) = asccin(1:7) +c +c --- get the index of the region code --- +c + idxreg = fndreg( fipin ) + if( idxreg .GT. 0 ) rgncd = rgdfcd(idxreg) +c +c ---- loop through the array of codes --- +c + do 40 i=1,nactrc +c +c ---- check if the HP category is within the range ---- +c + if( hpin .GE. hpcact(1,i) .AND. hpin .LE. hpcact(2,i) ) then +c +c ---- if exact match of SCC, set the match on region --- +c + if( asccin .EQ. ascact(i) ) then + if( subact(i) .EQ. ' ' ) then + iexact = i + else if( subact(i) .EQ. rgncd ) then + iexreg = i + endif + else +c +c ---- loop over global SCC codes, setting indexes for match on region --- +c + do 50 j=1,MXGLB + if( ascglb(j) .EQ. ascact(i) ) then + if( subact(i) .EQ. ' ' ) then + idxglb(j) = i + else if( subact(i) .EQ. rgncd ) then + idxrgb(j) = i + endif + endif + 50 continue + endif + endif +c +c ---- next seasonality code --- +c + 40 continue +c +c --- check for exact matches of SCC code, an exact region match +c is better than a global region match --- +c + if( iexreg .GT. 0 ) then + fndact = iexreg + goto 9999 + else if( iexact .GT. 0 ) then + fndact = iexact + goto 9999 + endif +c +c --- loop over global indexes, backwards for best match, +c an exact region match is better than a global region match --- +c + do 60 i=MXGLB,1,-1 + if( idxrgb(i) .GT. 0 ) then + fndact = idxrgb(i) + goto 9999 + else if( idxglb(i) .GT. 0 ) then + fndact = idxglb(i) + goto 9999 + endif + 60 continue + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndasc.f b/NONROAD/NR08a/SOURCE/fndasc.f new file mode 100644 index 0000000..47a93b9 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndasc.f @@ -0,0 +1,98 @@ +C**** FNDASC +c + function fndasc( + & ascin, array, ncount ) +C + IMPLICIT NONE +C + integer*4 fndasc +c +c----------------------------------------------------------------------- +c +c This routine searches through an array of SCC codes and searches +c for the best match of the SCC code in the argument list. +c The best match is based on the SCC code heierchy. For example, +c the best match for the code 2265001010 are as follows: +c 2265001010 +c 2265001000 +c 2265000000 +c +c Arguments: +c +c Inputs: +c ascin C SCC code to seach for +c array C array of codes to search +c ncount I number of entries in the array +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/95 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*10 ascin + integer*4 ncount + character*10 array(ncount) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(2) + integer*4 i, j, idxglb(2) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize the found-match arrays --- +c + fndasc = 0 + ascglb(1) = ascin(1:4)//'000000' + ascglb(2) = ascin(1:7)//'000' + idxglb(1) = -9 + idxglb(2) = -9 +c +c ---- loop through the array --- +c + do 10 i=1,ncount +c +c ---- if exact match, set return value and return right away --- +c + if( ascin .EQ. array(i) ) then + fndasc = i + goto 9999 + endif +c +c --- check the global matches and set the local index array --- +c + do 20 j=1,2 + if( array(i) .EQ. ascglb(j) ) idxglb(j) = i + 20 continue + 10 continue +c +c ---- find the best match, loop backwards through +c found-match array --- +c + do 30 j=2,1,-1 + if( idxglb(j) .GT. 0 ) then + fndasc = idxglb(j) + goto 9999 + endif + 30 continue +c +c --- no match, will return zero --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndchr.f b/NONROAD/NR08a/SOURCE/fndchr.f new file mode 100644 index 0000000..fa7ac82 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndchr.f @@ -0,0 +1,76 @@ +C**** FNDCHR +c + function fndchr( + & string, ilen, array, nchr ) +C + IMPLICIT NONE +C + integer*4 fndchr +c +c----------------------------------------------------------------------- +c +c This routine searches through an array of character strings for a +c string matching the input string. The return value is the index +c of the string in the array. A return value of zero means no +c match was made. +c +c Arguments: +c +c Inputs: +c string C string to seach for +c ilen I declared length of strings +c array C array of strings to search +c nchr I number of entries in the array +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*(*) string + integer*4 ilen + integer*4 nchr + character*(*) array(nchr) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize return value ---- +c + fndchr = 0 +c +c ---- loop through the array --- +c + do 10 i=1,nchr +c +c ---- if match, set return value and return right away --- +c + if( string(1:ilen) .EQ. array(i)(1:ilen) ) then + fndchr = i + goto 9999 + endif + 10 continue +c +c ---- no match, return zero ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fnddet.f b/NONROAD/NR08a/SOURCE/fnddet.f new file mode 100644 index 0000000..45fdc85 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fnddet.f @@ -0,0 +1,87 @@ +C**** FNDDET +c + function fnddet( idxpol, tecin ) +C + IMPLICIT NONE +C + integer*4 fnddet +c +c----------------------------------------------------------------------- +c +c This routine finds the deterioration factor data in the arrays +c stored in common blocks. It searches the arrays using the data +c lookiing for an exact match of the tech type supplied in the +c argument list. Since the the deterioration data is specified by +c species, the arrays are indexed by species. +c +c Return value: +c > 0 = index in array of match +c = 0 = no match found +c +c Arguments: +c +c Inputs: +c idxpol I pollutant code index +c tecin C technology type to match +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/01/98 -- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 idxpol + character*10 tecin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fnddet = 0 +c +c --- loop over all entries in the array for this species --- +c + do 10 i=1,ndtfac(idxpol) +c +c --- if match is made, set the return value and return --- +c + if( tecdet(i,idxpol) .EQ. tecin ) then + fnddet = i + goto 9999 + endif + 10 continue +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndefc.f b/NONROAD/NR08a/SOURCE/fndefc.f new file mode 100644 index 0000000..f976be7 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndefc.f @@ -0,0 +1,231 @@ +C**** FNDEFC +c + function fndefc( ascin, ascar, idxtch, tecin, tecar, hpcin, + & arhpcb, arhpce, inyr, iaryr, facar, ifrst, + & nfacar, idxpol ) +C + IMPLICIT NONE +C + integer*4 fndefc +c +c----------------------------------------------------------------------- +c +c this routine finds the emission factor in the arrays supplied +c by the array arguments. It searches the arrays using the data +c supplied in the other arguments. It finds the best match by +c matching SCC code heierchy, HP category and tech type. It uses the +c year closest to but not greater than the year supplied. +c +c Return value: +c > 0 = index in array of best match +c = 0 = no match found +c +c Arguments: +c +c Inputs: +c ascin C SCC code to match +c ascar C list of SCCs to search +c idxtch I index into the tech type array (0 = global) +c tecin C technology type to match +c tecar C list of tech types to search +c hpcin R average horsepower to match +c arhpcb R array of beginning ranges of HP categories to search +c arhpce R array of ending ranges of HP categories to search +c inyr I year to match +c iaryr I array of years to search +c facar R array of emissions factors +c ifrst I first element of facar to search +c nfacar I number of elements of facar +c idxpol I pollutant code index +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/95 -- original development +c 07/14/05 --cimulus-- changed the comparison of tech type to +c allow exact match or global 'ALL', and +c updated the check-for-better-match logic +c accordingly (precedence is now: most +c specific SCC, most specific HP, most +c specific tech type, and highest year +c without going over) +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 ascar(MXEMFC) + character*10 ascin + integer*4 idxtch + character*10 tecar(MXEMFC) + character*10 tecin + real*4 arhpcb(MXEMFC) + real*4 arhpce(MXEMFC) + real*4 hpcin + integer*4 iaryr(MXEMFC) + integer*4 inyr + integer*4 ifrst + real*4 facar(MXEMFC,ifrst:*) + integer*4 nfacar + integer*4 idxpol +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I number of codes for global matches +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + integer*4 idxfac, idxasc, iasc, idfhpc, idfyr, idiff + character*10 tecmatch ! best match so far for tech type +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fndefc = 0 +c +c ---- set up the global matches ---- +c + ascglb(1) = ascin + ascglb(2) = ascin(1:7)//'000' + ascglb(3) = ascin(1:4)//'000000' + iasc = 9999999 + idfhpc = 99999999 + idfyr = 99999999 + tecmatch = '' +c +c ---- loop over all entries in the arrays ---- +c + do 10 idxfac=1,nfacar +c +c ---- skip if factor is missing for this pollutant --- +c + if( facar(idxfac,idxpol) .LT. 0 ) goto 10 +c +c ---- skip if not correct techonolgy type (accepts exact match or global 'ALL') --- +c + if( tecin .NE. tecar(idxfac) + & .AND. tecar(idxfac) .NE. TECDEF ) goto 10 +c +c ---- skip if HP category is larger than current HP category ---- +c + if( hpcin .LT. arhpcb(idxfac) .OR. + & hpcin .GT. arhpce(idxfac) ) goto 10 +c +c ---- search in arrays for a match of ASC code ---- +c + idxasc = fndchr( ascar(idxfac), 10, ascglb, MXGLB ) + if( idxasc .LE. 0 ) goto 10 +c +c ---- skip if year is later than current year --- +c but set the upper year to this one, since all other criteria match --- +c + if( inyr .LT. iaryr(idxfac) ) then + iemyr(idxpol,idxtch,2) = + & MIN( iemyr(idxpol,idxtch,2), iaryr(idxfac) ) + goto 10 + endif +c +c ---- calculate the HP difference --- +c + idiff = INT( hpcin-arhpcb(idxfac) ) + idiff = MAX( idiff , INT( arhpce(idxfac)-hpcin ) ) +c +c ---- if SCC match is better than a previous match then set the differences --- +c + if( idxasc .LT. iasc ) then + fndefc = idxfac + iasc = idxasc + idfhpc = idiff + tecmatch = tecar(idxfac) + idfyr = inyr - iaryr(idxfac) +c +c ---- if same SCC match then check for closer HP category --- +c + else if( idxasc .EQ. iasc ) then +c +c ---- if HP match is better than a previous match then set the differences --- +c + if( idfhpc .GT. idiff ) then + fndefc = idxfac + idfhpc = idiff + tecmatch = tecar(idxfac) + idfyr = inyr - iaryr(idxfac) +c +c ---- if same HP match then check for better tech type --- +c + else if( idfhpc .EQ. idiff ) then +c +c ---- if tech type match is better than a previous match then set the differences --- +c + if( tecar(idxfac) .NE. TECDEF + & .AND. tecmatch .EQ. TECDEF ) then + fndefc = idxfac + tecmatch = tecar(idxfac) + idfyr = inyr - iaryr(idxfac) +c +c ---- if same tech type match then check for better year --- +c + else if( tecmatch .EQ. tecar(idxfac) ) then +c +c ---- if year match is better than a previous match then set the differences --- +c + if( idfyr .GT. (inyr - iaryr(idxfac) ) ) then + fndefc = idxfac + idfyr = inyr - iaryr(idxfac) + endif + endif + endif + endif +c +c --- get the next array element ---- +c + 10 continue +c +c ---- set the last matches --- +c + if( fndefc .GT. 0 ) iemyr(idxpol,idxtch,1) = iaryr(fndefc) + emhpc(idxpol) = hpcin + emasc(idxpol) = ascin +c +c ---- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndevefc.f b/NONROAD/NR08a/SOURCE/fndevefc.f new file mode 100644 index 0000000..e89df08 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndevefc.f @@ -0,0 +1,232 @@ +C**** FNDEVEFC +c + function fndevefc( ascin, ascar, idxtch, tecin, tecar, hpcin, + & arhpcb, arhpce, inyr, iaryr, facar, ifrst, + & nfacar, idxpol ) +C + IMPLICIT NONE +C + integer*4 fndevefc +c +c----------------------------------------------------------------------- +c +c this routine finds the evap emission factor in the arrays supplied +c by the array arguments. It searches the arrays using the data +c supplied in the other arguments. It finds the best match by +c matching SCC code heierchy, HP category and tech type. It uses the +c year closest to but not greater than the year supplied. +c +c Return value: +c > 0 = index in array of best match +c = 0 = no match found +c +c Arguments: +c +c Inputs: +c ascin C SCC code to match +c ascar C list of SCCs to search +c idxtch I index into the tech type array (0 = global) +c tecin C technology type to match +c tecar C list of tech types to search +c hpcin R average horsepower to match +c arhpcb R array of beginning ranges of HP categories to search +c arhpce R array of ending ranges of HP categories to search +c inyr I year to match +c iaryr I array of years to search +c facar R array of emissions factors +c ifrst I first element of facar to search +c nfacar I number of elements of facar +c idxpol I pollutant code index +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/18/04 --dfk-- original development (from fndefc) +c 07/14/05 --cimulus-- changed the comparison of tech type to +c allow exact match or global 'ALL', and +c updated the check-for-better-match logic +c accordingly (precedence is now: most +c specific SCC, most specific HP, most +c specific tech type, and highest year +c without going over) +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ifrst + character*10 ascar(MXEMFC,ifrst:*) + character*10 ascin + integer*4 idxtch + character*10 tecar(MXEMFC,ifrst:*) + character*10 tecin + real*4 arhpcb(MXEMFC,ifrst:*) + real*4 arhpce(MXEMFC,ifrst:*) + real*4 hpcin + integer*4 iaryr(MXEMFC,ifrst:*) + integer*4 inyr + real*4 facar(MXEMFC,ifrst:*) + integer*4 nfacar(ifrst:*) + integer*4 idxpol +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I number of codes for global matches +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + integer*4 idxfac, idxasc, iasc, idfhpc, idfyr, idiff + character*10 tecmatch ! best match so far for tech type +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fndevefc = 0 +c +c ---- set up the global matches ---- +c + ascglb(1) = ascin + ascglb(2) = ascin(1:7)//'000' + ascglb(3) = ascin(1:4)//'000000' + iasc = 9999999 + idfhpc = 99999999 + idfyr = 99999999 + tecmatch = '' +c +c ---- loop over all entries in the arrays ---- +c + do 10 idxfac=1,nfacar(idxpol) +c +c ---- skip if factor is missing for this pollutant --- +c + if( facar(idxfac,idxpol) .LT. 0 ) goto 10 +c +c ---- skip if not correct techonolgy type (accepts exact match or global 'ALL') --- +c + if( tecin .NE. tecar(idxfac,idxpol) + & .AND. tecar(idxfac,idxpol) .NE. TECDEF ) goto 10 +c +c ---- skip if HP category is larger than current HP category ---- +c + if( hpcin .LT. arhpcb(idxfac,idxpol) .OR. + & hpcin .GT. arhpce(idxfac,idxpol) ) goto 10 +c +c ---- search in arrays for a match of ASC code ---- +c + idxasc = fndchr( ascar(idxfac,idxpol), 10, ascglb, MXGLB ) + if( idxasc .LE. 0 ) goto 10 +c +c ---- skip if year is later than current year --- +c but set the upper year to this one, since all other criteria match --- +c + if( inyr .LT. iaryr(idxfac,idxpol) ) then + iemyr(idxpol,idxtch,2) = + & MIN( iemyr(idxpol,idxtch,2), iaryr(idxfac,idxpol) ) + goto 10 + endif +c +c ---- calculate the HP difference --- +c + idiff = INT( hpcin-arhpcb(idxfac,idxpol) ) + idiff = MAX( idiff , INT( arhpce(idxfac,idxpol)-hpcin ) ) +c +c ---- if SCC match is better than a previous match then set the differences --- +c + if( idxasc .LT. iasc ) then + fndevefc = idxfac + iasc = idxasc + idfhpc = idiff + tecmatch = tecar(idxfac,idxpol) + idfyr = inyr - iaryr(idxfac,idxpol) +c +c ---- if same SCC match then check for closer HP category --- +c + else if( idxasc .EQ. iasc ) then +c +c ---- if HP match is better than a previous match then set the differences --- +c + if( idfhpc .GT. idiff ) then + fndevefc = idxfac + idfhpc = idiff + tecmatch = tecar(idxfac,idxpol) + idfyr = inyr - iaryr(idxfac,idxpol) +c +c ---- if same HP match then check for better tech type --- +c + else if( idfhpc .EQ. idiff ) then +c +c ---- if tech type match is better than a previous match then set the differences --- +c + if( tecar(idxfac,idxpol) .NE. TECDEF + & .AND. tecmatch .EQ. TECDEF ) then + fndevefc = idxfac + tecmatch = tecar(idxfac,idxpol) + idfyr = inyr - iaryr(idxfac,idxpol) +c +c ---- if same tech type match then check for better year --- +c + else if( tecmatch .EQ. tecar(idxfac,idxpol) ) then +c +c ---- if year match is better than a previous match then set the differences --- +c + if( idfyr .GT. (inyr - iaryr(idxfac,idxpol) ) ) then + fndevefc = idxfac + idfyr = inyr - iaryr(idxfac,idxpol) + endif + endif + endif + endif +c +c --- get the next array element ---- +c + 10 continue +c +c ---- set the last matches --- +c + if( fndevefc .GT. 0 ) + & iemyr(idxpol,idxtch,1) = iaryr(fndevefc,idxpol) + emhpc(idxpol) = hpcin + emasc(idxpol) = ascin +c +c ---- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndevtch.f b/NONROAD/NR08a/SOURCE/fndevtch.f new file mode 100644 index 0000000..e164d74 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndevtch.f @@ -0,0 +1,160 @@ +C**** FNDEVTCH +c + function fndevtch( ascin, hpval, inyr ) +C + IMPLICIT NONE +C + integer*4 fndevtch +c +c----------------------------------------------------------------------- +c +c this routine finds the evap technology fraction data in the arrays +c supplied by the arguments. It searches the arrays using the data +c supplied in the other arguments. It finds the best match by +c matching SCC code hierarchy, HP category and model year. It uses the +c year closest to but not less than the year supplied. +c +c Important Assumption: the number of technology types is the same +c for each model year of a particular piece of equipment, although +c the technology fraction may be zero for some of the technologies +c in some of the model years. Hence, the first time this gets called +c in PRC???, it is just to find the maximum number of tech types possible +c for the specific piece of equipment. +c +c Return value: +c > 0 = index in array of best match +c = 0 = no match found +c +c Argument declaration. +c Inputs: +c ascin C SCC code to match +c hpval R HP category +c inyr I model year +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 02/03/03 --dfk-- new routine (from FNDTCH) +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 ascin + real*4 hpval + integer*4 inyr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I number of codes for global matches +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + integer*4 idxfac, idxasc, iasc, idfhpc, idfyr, idiff +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fndevtch = 0 +c +c ---- set up the global matches ---- +c + ascglb(1) = ascin + ascglb(2) = ascin(1:7)//'000' + ascglb(3) = ascin(1:4)//'000000' + iasc = 9999999 + idfhpc = 99999999 + idfyr = 99999999 +c +c ---- loop over all entries in the arrays ---- +c + do 10 idxfac=1,nevtchcd +c +c ---- skip if year is later than current year --- +c + if( inyr .LT. iyrevtch(idxfac) ) goto 10 +c +c ---- skip if HP category is larger than current HP category ---- +c + if( hpval .LE. evtchhpb(idxfac) .OR. + & hpval .GT. evtchhpe(idxfac) ) goto 10 +c +c ---- search in arrays for a match of ASC code ---- +c + idxasc = fndchr( ascevtch(idxfac), 10, ascglb, MXGLB ) + if( idxasc .LE. 0 ) goto 10 +c +c ---- if match is better than a previous match then set the differences --- +c + idiff = INT( hpval - evtchhpb(idxfac) ) + idiff = MAX( idiff, INT( evtchhpe(idxfac) - hpval ) ) + if( idxasc .LT. iasc ) then + fndevtch = idxfac + iasc = idxasc + idfhpc = INT( hpval - evtchhpb(idxfac) ) + idfhpc = MAX( idfhpc, INT( evtchhpe(idxfac) - hpval ) ) + idfyr = inyr - iyrevtch(idxfac) +c +c ---- if same match the check for closer HP category --- +c + else if( idxasc .EQ. iasc ) then + if( idiff .LT. idfhpc ) then + fndevtch = idxfac + idfhpc = idiff + idfyr = inyr - iyrevtch(idxfac) +c +c ---- if HP cat is the same, check for better year --- +c + else if( idiff .EQ. idfhpc ) then + if( idfyr .GT. (inyr - iyrevtch(idxfac) ) ) then + fndevtch = idxfac + idfyr = inyr - iyrevtch(idxfac) + endif + endif + endif +c +c --- get the next array element ---- +c + 10 continue +c +c ---- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndgxf.f b/NONROAD/NR08a/SOURCE/fndgxf.f new file mode 100644 index 0000000..5fd0081 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndgxf.f @@ -0,0 +1,176 @@ +C**** FNDGXF +c + function fndgxf( fipin, asccin, hpin ) +C + IMPLICIT NONE +C + integer*4 fndgxf +c +c----------------------------------------------------------------------- +c +c This routine searches through the array of SCC codes read in the +c seasonality file and looks for the best match. +c +c Arguments: +c Inputs: +c fipin C FIPS code (needed for state code) +c asccin C SCC code to match +c hpcat R HP category to match +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 01/10/94 -gmw- Original development +c 12/11/01 cah Allow exact SCC match with global FIPS match. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdgrw.inc' +ccc +cc include 'nonrdio.inc' +ccc +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*10 asccin + character*5 fipin + real*4 hpin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I maximum number of global checks +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c ascglb C variable for storing global code +c + character*10 ascglb(MXGLB) + character*5 fipglb(MXGLB) + integer*4 idxglb(MXGLB,MXGLB), idxfip, idx, i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the global codes --- +c + fndgxf = 0 + do 10 i=1,MXGLB + ascglb(i) = '0000000000' + idxglb(1,i) = -9 + idxglb(2,i) = -9 + idxglb(3,i) = -9 + 10 continue + ascglb(1)(1:4) = asccin(1:4) + ascglb(2)(1:7) = asccin(1:7) + ascglb(3) = asccin + fipglb(1) = '00000' + fipglb(2) = fipin(1:2)//'000' + fipglb(3) = fipin +c +c ---- loop through the array of codes --- +c + do 20 i=1,nrcgrx +c +c ---- check if this is the correct FIPS state code ---- +c + idxfip = 0 + if( fipgrx(i).EQ. fipglb(1) ) idxfip = 1 + if( fipgrx(i).EQ. fipglb(2) ) idxfip = 2 + if( fipgrx(i).EQ. fipglb(3) ) idxfip = 3 + if( idxfip .LE. 0 ) goto 20 +c +c ---- check if the HP category is within the range ---- +c + if( hpin .LT. hpgrx(i,1) .OR. hpin .GT. hpgrx(i,2) ) goto 20 +c +c ---- if exact match, check for better HP category --- +c + if( asccin .EQ. ascgrx(i) .AND. fipin .EQ. fipgrx(i) ) then +ccc +cc write(IOWMSG,'(12X,A,2X,A,2X,A)',ERR=9999) +cc & asccin,ascgrx(i),fipglb(2) +ccc + if( fndgxf .LE. 0 ) then + fndgxf = i + else + if( hpgrx(i,1) .GT. hpgrx(fndgxf,1) .OR. + & hpgrx(i,2) .LT. hpgrx(fndgxf,2) ) then + fndgxf = i + endif + endif + endif +c +c ---- loop over global codes, setting indexes --- +c + do 30 j=1,MXGLB +ccc +cc write(IOWMSG,'(8X,A,2X,A,2X,A)',ERR=9999) +cc & asccin,ascgrx(i),ascglb(j) +ccc +c + if( ascglb(j) .EQ. ascgrx(i) ) then +ccc +cc if( ascglb(j) .EQ. ascgrx(i) .OR. +cc & asccin .EQ. ascgrx(i) ) then +ccc + if( idxglb(idxfip,j) .LE. 0 ) then + idxglb(idxfip,j) = i + else + idx = idxglb(idxfip,j) + if( hpgrx(i,1) .GT. hpgrx(idx,1) .OR. + & hpgrx(i,2) .LT. hpgrx(idx,2) ) then + idxglb(idxfip,j) = i + endif + endif + endif + 30 continue +c +c ---- next seasonality code --- +c + 20 continue +c +c --- if no exact matches found, loop over global indexes, +c backwards for best match --- +c + if( fndgxf .LE. 0 ) then + do 40 i=MXGLB,1,-1 + do 50 j=MXGLB,1,-1 +ccc +cc write(IOWMSG,'(14X,A,2X,A,2X,A)',ERR=9999) +cc & asccin,fipglb(i),ascglb(j) +ccc + if( idxglb(i,j) .GT. 0 ) then + fndgxf = idxglb(i,j) +ccc +cc write(IOWMSG,'(14X,A10,I5)',ERR=9999) +cc & 'Found GXF',fndgxf +ccc + goto 9999 + endif + 50 continue + 40 continue + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndhpc.f b/NONROAD/NR08a/SOURCE/fndhpc.f new file mode 100644 index 0000000..15b2e01 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndhpc.f @@ -0,0 +1,81 @@ +C**** FNDHPC +c + integer*4 function fndhpc( hp ) +c +c----------------------------------------------------------------------- +c +c This function finds the index into hpclev of the specified HP. +c +c Return value: +c 0 = no match found +c > 0 = the index of the matching HP category +c +c Argument declaration +c Inputs: +c hp R HP category to find +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/05 -cimulus- original development +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c hp values are read from file and must be 0, +c 9999, or one of the values in hpclev, which +c are hard-coded, rather than being calculated +c at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 hp +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match --- +c + fndhpc = 0 +c +c --- find the matching HP category --- +c + do i = 1, MXHPC + if( hp .EQ. hpclev(i) ) then ! floating-point comparison for equality okay; hp values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + fndhpc = i + exit + endif + end do +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndkey.f b/NONROAD/NR08a/SOURCE/fndkey.f new file mode 100644 index 0000000..893151b --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndkey.f @@ -0,0 +1,125 @@ +C**** FNDKEY version 1.0 fndkey.f 1.5 5/20/92 +c + subroutine fndkey( ierr, + & iounit, keyin ) +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine searches the file attached to logical unit number +c "iounit" for a string matching "keyin". The first 20 cahracters +c of each line are read and converted to upper case. It is assumed +c that the "keyin" string is upper case. An initial search is made, +c and if not successful, the file is rewound and a second search is +c made. If a match is still not found, the error flag is set to +c failure. +c +c Arguments: +c +c Outputs: +c ierr I error flag (either ISUCES or IFAIL) +c Inputs: +c iounit I logical unit number of file to read +c keyin C string to match (all upper case) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns actual length of string (no trailing blanks) +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Argument decleration: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(*) keyin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c keywrd C keyword to check against argument for match +c lpass2 L flag to determine if currently on second pass +c + character*(MXSTR) keywrd + logical lpass2 +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + ierr = IFAIL + lpass2 = .FALSE. +c +c ---- read next string from file ---- +c + 111 continue + read( iounit, 8000, ERR=7000, END=7001 ) keywrd +c +c ---- convert ot upper case --- +c + call low2up( keywrd ) +c +c ---- get rid of leading blanks ---- +c + call lftjst( keywrd ) +c +c ---- If match return success; otherwise read next record --- +c + if( keywrd(:strlen(keyin)) .EQ. keyin(:strlen(keyin)) ) then + ierr = ISUCES + goto 9999 + else + goto 111 + endif +c +c---------------------------------------------------------------------- +c Error statements: +c---------------------------------------------------------------------- +c + 7000 continue + ierr = IRDERR + goto 9999 +c + 7001 continue + rewind( iounit, ERR=7000 ) + if( lpass2 ) then + ierr = IEOF + goto 9999 + else + lpass2 = .TRUE. + goto 111 + endif +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A20) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndreg.f b/NONROAD/NR08a/SOURCE/fndreg.f new file mode 100644 index 0000000..64180b8 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndreg.f @@ -0,0 +1,102 @@ +C**** FNDREG +c + function fndreg( fipin ) +C + IMPLICIT NONE +C + integer*4 fndreg +c +c----------------------------------------------------------------------- +c +c This routine searches through an array of region definitions and +c searches for the best match of FIPS code. +c Return value: +c 0 = no match found +c > 0 = index of best match in arrays +c Arguments: +c Inputs: +c fipin C FIPS code to seach for +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/10/97 -gwilson- Original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdreg.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*5 fipin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxus, idxst, i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize return value ---- +c + fndreg = 0 + idxus = 0 + idxst = 0 +c +c ---- loop through array of region codes --- +c + do 10 i=1,nregcd +c +c ---- loop through array of FIPS codes in this region --- +c + do 20 j=1,isttcnt(i) +c +c ---- if exact match, set return value and return right away --- +c + if( fipin .EQ. rgstt(i,j) ) then + fndreg = i + goto 9999 + endif +c +c --- look for match of state code --- +c + if( rgstt(i,j)(3:5) .EQ. '000' .AND. + & fipin(1:2) .EQ. rgstt(i,j)(1:2) ) idxst = i +c +c --- if region FIPS code is national it matches everything --- +c + if( rgstt(i,j) .EQ. '00000' ) idxus = i + 20 continue + 10 continue +c +c ---- check for global matches --- +c + if( idxst .GT. 0 ) then + fndreg = idxst + goto 9999 + else if( idxus .GT. 0 ) then + fndreg = idxus + goto 9999 + endif +c +c --- no match, return value is zero ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndrfm.f b/NONROAD/NR08a/SOURCE/fndrfm.f new file mode 100644 index 0000000..c3f499d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndrfm.f @@ -0,0 +1,151 @@ +C**** FNDRFM +c + function fndrfm( ascin, hpval, ttyp ) +C + IMPLICIT NONE +C + integer*4 fndrfm +c +c----------------------------------------------------------------------- +c +c this routine finds the refueling mode data in the arrays supplied +c by the arguments. It searches the arrays using the data +c supplied in the other arguments. It finds the best match by +c matching SCC code hierarchy, HP category and technology type. +c +c Return value: +c > 0 = index in array of best match +c = 0 = no match found +c +c Argument declaration. +c Inputs: +c ascin C SCC code to match +c hpval R HP category +cc removed tvol R tank volume +c ttyp C technology type +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 10/13/98 --mjimenez-- original development taken from fndtch +c 02/10/00 --mjimenez-- removed tank volume in argument list +c and search +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 ascin + real*4 hpval +cc removed real*4 tvol + character*10 ttyp +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I number of codes for global matches +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + integer*4 idxarr, idxasc, iasc, idfhpc, idiff + real*4 chkval +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fndrfm = 0 +c +c ---- set up the global matches ---- +c + ascglb(1) = ascin + ascglb(2) = ascin(1:7)//'000' + ascglb(3) = ascin(1:4)//'000000' + iasc = 9999999 + idfhpc = 99999999 +c +c ---- loop over all entries in the arrays ---- +c + do 10 idxarr=1,nsplar +c +c ---- if not the same tech type then skip ---- +c + if ( tecspl(idxarr) .NE. ttyp ) goto 10 +c +c --- get range indicator and set comparison value --- +c + if ( indspl(idxarr) .EQ. HP ) chkval = hpval +cc if ( indspl(idxarr) .EQ. TNKTYP ) chkval = tvol +c +c ---- skip if size (either hp or tank volume) is outside range --- +c + if( chkval .LT. splpcb(idxarr) .OR. + & chkval .GT. splpce(idxarr) ) goto 10 +c +c ---- search in arrays for a match of ASC code ---- +c + idxasc = fndchr( ascspl(idxarr), 10, ascglb, MXGLB ) + if( idxasc .LE. 0 ) goto 10 +c +c ---- if match is better than a previous match then set the differences --- +c + idiff = INT( chkval - splpcb(idxarr) ) + idiff = MAX( idiff, INT( splpce(idxarr) - chkval ) ) + if( idxasc .LT. iasc ) then + fndrfm = idxarr + iasc = idxasc + idfhpc = INT( chkval - splpcb(idxarr) ) + idfhpc = MAX( idfhpc, INT( splpce(idxarr) - chkval ) ) +c +c ---- if same match then check for closer HP category --- +c + else if( idxasc .EQ. iasc ) then + if( idiff .LT. idfhpc ) then + fndrfm = idxarr + idfhpc = idiff + endif + endif +c +c --- get the next array element ---- +c + 10 continue +c +c ---- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndrtrft.f b/NONROAD/NR08a/SOURCE/fndrtrft.f new file mode 100644 index 0000000..8ad4eb9 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndrtrft.f @@ -0,0 +1,238 @@ +C**** FNDRTRFT +c + subroutine fndrtrft( ierr, fltrtyp, scc, hpavg, mdlyr, techtype ) +c +c----------------------------------------------------------------------- +c +c Filters the retrofit-record arrays down to the records that could +c possibly affect the current iteration of SCC-HP combination, model +c year, and tech type. This is done in phases: SCC-HP combination, +c then model year, then tech type. +c +c Does not actually modify the retrofit-record arrays. Fills the +c appropriate (based on fltrtyp) rtrftfltr# array and sets +c rtrftfltr#cnt instead. The indexes of the filtered arrays are +c stored in the same order as they are in the retrofit arrays, so +c any sorting that has been done on the retrofit arrays applies to +c the filtered arrays. +c +c The filtering that is done depends on fltrtyp: +c 1 = filter entire set of retrofit records down to the retrofits +c that match the current scc and hpavg; ignores mdlyr +c and techtype +c 2 = filter the previously filtered retrofits from type 1 down +c to the retrofits that match the current model year; +c assumes type 1 filtering has already been done, and that +c subsequent calls for type 2 filtering will have a higher +c mdlyr; ignores scc, hpavg, and techtype +c 3 = filter the previously filtered retrofits from type 2 down +c to the retrofits that match the current tech type; +c assumes type 2 filtering has already been done; ignores +c scc, hpavg, and mdlyr +c +c Argument declaration +c Outputs: +c ierr I error flag +c Inputs: +c fltrtyp I the filter type that is being executed (see +c notes above) +c scc C the SCC to filter by +c hpavg R the HP average to filter by +c mdlyr I the model year to filter by +c techtype C the tech type to filter by +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/25/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 fltrtyp + character*10 scc + real*4 hpavg + integer*4 mdlyr + character*10 techtype +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i + character*10 iterscc ! SCC of iteration retrofit record + logical*4 foundnewfltr1mnidx + character*10 itertechtype ! tech type of iteration retrofit record +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- filter by SCC and HP --- +c + if( fltrtyp .EQ. 1 ) then +c +c --- filter entire set of retrofit records down to the +c retrofits that match the SCC and HP average --- +c + rtrftfltr1cnt = 0 + rtrftfltr1mnidx = 1 ! start type 2 filtering at the first type 1 index + rtrftfltr2cnt = 0 + rtrftfltr3cnt = 0 + do i = 1, rtrftcount ! for all retrofit records +c +c --- if the SCC doesn't match, skip this record --- +c + iterscc = rtrftscc(i) + if( .NOT. ( iterscc .EQ. RTRFTSCCALL + & .OR. scc .EQ. iterscc + & .OR. ( iterscc(5:10) .EQ. '000000' + & .AND. scc(1:4) .EQ. iterscc(1:4) ) + & .OR. ( iterscc(8:10) .EQ. '000' + & .AND. scc(1:7) .EQ. iterscc(1:7) ) ) ) then + cycle + endif +c +c --- if the HP doesn't match, skip this record --- +c + if( hpavg .LE. rtrfthpmn(i) + & .OR. hpavg .GT. rtrfthpmx(i) ) then + cycle + endif +c +c --- the record matches, so add it to the filter array --- +c + rtrftfltr1cnt = rtrftfltr1cnt + 1 + rtrftfltr1(rtrftfltr1cnt) = i +c + end do +c +c --- filter by model year --- +c + else if( fltrtyp .EQ. 2 ) then +c +c --- filter the previously filtered retrofits from type 1 down +c to the retrofits that match the model year --- +c + foundnewfltr1mnidx = .FALSE. + rtrftfltr2cnt = 0 + rtrftfltr3cnt = 0 + do i = rtrftfltr1mnidx, rtrftfltr1cnt ! for all retrofit records filtered in the type 1 phase with model-year end >= mdlyr +c +c --- if haven't found new minimum type 1 index to search +c and this index would fit the subsequent model year, +c update the minimum type 1 index --- +c --- note: this optimization only works because the first +c comparison field used for sorting the retrofit +c arrays is model year end; if that every changes +c (in cmprrtrft()), this must be removed --- +c + if ( .NOT. foundnewfltr1mnidx .AND. + & rtrftmyen(rtrftfltr1(i)) .GE. (mdlyr + 1) ) then + foundnewfltr1mnidx = .TRUE. + rtrftfltr1mnidx = i + endif +c +c --- if the model year doesn't match, skip this record --- +c + if( mdlyr .LT. rtrftmyst(rtrftfltr1(i)) + & .OR. mdlyr .GT. rtrftmyen(rtrftfltr1(i)) ) then + cycle + endif +c +c --- the record matches, so add it to the filter array --- +c + rtrftfltr2cnt = rtrftfltr2cnt + 1 + rtrftfltr2(rtrftfltr2cnt) = rtrftfltr1(i) +c + end do +c +c --- filter by tech type --- +c + else if( fltrtyp .EQ. 3 ) then +c +c --- filter the previously filtered retrofits from type 2 down +c to the retrofits that match the tech type --- +c + rtrftfltr3cnt = 0 + do i = 1, rtrftfltr2cnt ! for all retrofit records filtered in the type 2 phase +c +c --- if the tech type doesn't match, skip this record --- +c + itertechtype = rtrfttechtype(rtrftfltr2(i)) + if( .NOT. ( itertechtype .EQ. RTRFTTCHTYPALL + & .OR. techtype .EQ. itertechtype ) ) then + cycle + endif +c +c --- the record matches, so add it to the filter array --- +c + rtrftfltr3cnt = rtrftfltr3cnt + 1 + rtrftfltr3(rtrftfltr3cnt) = rtrftfltr2(i) +c + end do +c +c --- invalid filter type --- +c + else +c + goto 7000 +c + endif +c +c --- set error code to sucess and return --- +c + 999 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,8000,ERR=9999) + & 'ERROR: Finding matching retrofits; ', + & 'invalid filter type: ',fltrtyp + if( lmsgfl ) then + write(IOWMSG,8000,ERR=9999) + & 'ERROR: Finding matching retrofits; ', + & 'invalid filter type: ',fltrtyp + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(/,1X,2A,I5) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndscrp.f b/NONROAD/NR08a/SOURCE/fndscrp.f new file mode 100644 index 0000000..99e349a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndscrp.f @@ -0,0 +1,105 @@ +C**** FNDSCRP +c + function fndscrp( frcmlusd, scrpbin, scrppct ) +c + IMPLICIT NONE +c + real*4 fndscrp +c--------------------------------------------------------------------- +c +c Finds the percent scrapped from the provided array based on +c the provided fraction of median life used +c +c Return value: +c < 0. = no match found +c >= 0. = percent scrapped for best match +c +c Argument declaration +c Inputs: +c frcmlusd R fraction of median life used +c scrpbin R array of scrappage bin values +c scrppct R percent of equipment left in each bin +c +c--------------------------------------------------------------------- +c LOG: +c--------------------------------------------------------------------- +c +c 03-23-05 -cimulus- original development +c 04-05-05 -cimulus- for efficiency, pass in scrpbin and +c scrppct instead of finding them for each +c call to this function +c 07/20/05 -cimulus- removed unused function +c 07/20/05 -cimulus- floating-point comparison for equality +c okay; fndscrp value is hard-coded to -1 +c by default +c +c--------------------------------------------------------------------- +c Include files: +c--------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' +c +c--------------------------------------------------------------------- +c Argument declarations: +c--------------------------------------------------------------------- +c + real*4 frcmlusd + real*4 scrpbin(MXSCRP) + real*4 scrppct(MXSCRP) +c +c--------------------------------------------------------------------- +c External functions: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Local variables: +c--------------------------------------------------------------------- +c + integer*4 i +c +c--------------------------------------------------------------------- +c Entry point: +c--------------------------------------------------------------------- +c +c --- assume no match +c + fndscrp = -1. +c +c --- if fraction of median life used falls below valid +c range, return first value --- +c + if( frcmlusd .LT. scrpbin(1) ) then + fndscrp = scrppct(1) + goto 9999 + endif +c +c --- search the scrappage curve for the best match --- +c + do i=1,MXSCRP-1 + if( scrpbin(i + 1) .GT. frcmlusd ) then + fndscrp = scrppct(i) + exit + endif + end do +c +c --- if no match found, fraction of median life used falls above +c valid range, so return maximum value --- +c + if( fndscrp .EQ. -1. ) then ! floating-point comparison for equality okay; fndscrp value is hard-coded to -1 by default + fndscrp = scrppct(MXSCRP) + endif +c +c --- return to calling routine --- +c + goto 9999 +c +c--------------------------------------------------------------------- +c Return point: +c--------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndtch.f b/NONROAD/NR08a/SOURCE/fndtch.f new file mode 100644 index 0000000..ac9b082 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndtch.f @@ -0,0 +1,161 @@ +C**** FNDTCH +c + function fndtch( ascin, hpval, inyr ) +C + IMPLICIT NONE +C + integer*4 fndtch +c +c----------------------------------------------------------------------- +c +c this routine finds the technology fraction data in the arrays supplied +c by the arguments. It searches the arrays using the data +c supplied in the other arguments. It finds the best match by +c matching SCC code hierarchy, HP category and model year. It uses the +c year closest to but not less than the year supplied. +c +c Important Assumption: the number of technology types is the same +c for each model year of a particular piece of equipment, although +c the technology fraction may be zero for some of the technologies +c in some of the model years. Hence, the first time this gets called +c in PRC???, it is just to find the maximum number of tech types possible +c for the specific piece of equipment. +c +c Return value: +c > 0 = index in array of best match +c = 0 = no match found +c +c Argument declaration. +c Inputs: +c ascin C SCC code to match +c hpval R HP category +c inyr I model year +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/22/96 --jlf-- original development +c 02/03/03 --gwilson-- fixed bug in checking for HP range +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 ascin + real*4 hpval + integer*4 inyr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I number of codes for global matches +c + integer*4 MXGLB +c + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + integer*4 idxfac, idxasc, iasc, idfhpc, idfyr, idiff +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume no match ---- +c + fndtch = 0 +c +c ---- set up the global matches ---- +c + ascglb(1) = ascin + ascglb(2) = ascin(1:7)//'000' + ascglb(3) = ascin(1:4)//'000000' + iasc = 9999999 + idfhpc = 99999999 + idfyr = 99999999 +c +c ---- loop over all entries in the arrays ---- +c + do 10 idxfac=1,ntchcd +c +c ---- skip if year is later than current year --- +c + if( inyr .LT. iyrtch(idxfac) ) goto 10 +c +c ---- skip if HP category is larger than current HP category ---- +c + if( hpval .LE. tchhpb(idxfac) .OR. + & hpval .GT. tchhpe(idxfac) ) goto 10 +c +c ---- search in arrays for a match of ASC code ---- +c + idxasc = fndchr( asctch(idxfac), 10, ascglb, MXGLB ) + if( idxasc .LE. 0 ) goto 10 +c +c ---- if match is better than a previous match then set the differences --- +c + idiff = INT( hpval - tchhpb(idxfac) ) + idiff = MAX( idiff, INT( tchhpe(idxfac) - hpval ) ) + if( idxasc .LT. iasc ) then + fndtch = idxfac + iasc = idxasc + idfhpc = INT( hpval - tchhpb(idxfac) ) + idfhpc = MAX( idfhpc, INT( tchhpe(idxfac) - hpval ) ) + idfyr = inyr - iyrtch(idxfac) +c +c ---- if same match the check for closer HP category --- +c + else if( idxasc .EQ. iasc ) then + if( idiff .LT. idfhpc ) then + fndtch = idxfac + idfhpc = idiff + idfyr = inyr - iyrtch(idxfac) +c +c ---- if HP cat is the same, check for better year --- +c + else if( idiff .EQ. idfhpc ) then + if( idfyr .GT. (inyr - iyrtch(idxfac) ) ) then + fndtch = idxfac + idfyr = inyr - iyrtch(idxfac) + endif + endif + endif +c +c --- get the next array element ---- +c + 10 continue +c +c ---- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/fndtpm.f b/NONROAD/NR08a/SOURCE/fndtpm.f new file mode 100644 index 0000000..fcb4336 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/fndtpm.f @@ -0,0 +1,245 @@ +C**** FNDTPM +c + subroutine fndtpm( asccin, fipin, idxtpm, idxtpl ) +c +c----------------------------------------------------------------------- +c +c This routine searches through the arrays of monthly +c and daily seasonal data and looks for the best matches on +c each. +c +c Arguments: +c Inputs: +c asccin C SCC code to match +c fipin C FIPS code +c Outputs: +c idxtpm I index to Monthly profile code +c idxtpl I index to Daily profile code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/07/95 -djk- Original development +c 07/20/96 -jlf- Added lookup of daily & hourly codes +c 05/20/97 -gwilson- Modified to use region codes +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdtpl.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndreg I returns the index of a region for a county +c + integer*4 fndreg +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*10 asccin + character*5 fipin + integer*4 idxtpm + integer*4 idxtpl +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c MXGLB I maximum number of global matches +c + integer*4 MXGLB + parameter( MXGLB = 3 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*10 ascglb(MXGLB) + character*5 sregin + integer*4 idxglb(MXGLB), idxsrg(2), idxreg, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the global codes --- +c + idxtpm = -9 + idxtpl = -9 + do 10 i = 1, MXGLB + ascglb(i) = '0000000000' + 10 continue + ascglb(1)(1:4) = asccin(1:4) + ascglb(2)(1:7) = asccin(1:7) + ascglb(3) = asccin +c +c --- reinitialize the pointers --- +c + idxglb(1) = -9 + idxglb(2) = -9 + idxglb(3) = -9 + idxsrg(2) = -9 + idxsrg(1) = -9 +c +c --- get the subregion containing this county --- +c + idxreg = fndreg( fipin ) + if( idxreg .GT. 0 ) sregin = rgdfcd(idxreg) +c +c --- loop through the array of codes --- +c + do 30 i=1,ntplmn +c +c --- check if record matches SCC code --- +c + if( asccin .EQ. asctpm(i) ) then +c +c --- check if subregion matches, if so then exact match so just return --- +c + if( sregin .EQ. sbrtpm(i) ) then + idxtpm = i + goto 111 + endif +c +c --- check if the subregion is global --- +c + if( sbrtpm(i) .EQ. ' ' ) idxglb(3) = i + endif +c +c --- check if the code matches global 2 --- +c + if( ascglb(2) .EQ. asctpm(i) ) then +c +c --- check if the region code matches or is global +c + if( sregin .EQ. sbrtpm(i) ) then + idxsrg(2) = i + else if( sbrtpm(i) .EQ. ' ' ) then + idxglb(2) = i + endif + endif +c +c --- check if the code matches global 3 --- +c + if( ascglb(1) .EQ. asctpm(i) ) then +c +c --- check if the region code matches or is global +c + if( sregin .EQ. sbrtpm(i) ) then + idxsrg(1) = i + else if( sbrtpm(i) .EQ. ' ' ) then + idxglb(1) = i + endif + endif +c +c --- next seasonality code --- +c + 30 continue +c +c --- select best match and do day-of-week next --- +c + if( idxglb(3) .GT. 0 ) then + idxtpm = idxglb(3) + else if( idxsrg(2) .GT. 0 ) then + idxtpm = idxsrg(2) + else if( idxglb(2) .GT. 0 ) then + idxtpm = idxglb(2) + else if( idxsrg(1) .GT. 0 ) then + idxtpm = idxsrg(1) + else if( idxglb(1) .GT. 0 ) then + idxtpm = idxglb(1) + endif +c +c ---- find days now and reinitialize some indices ---- +c + 111 continue + idxglb(1) = -9 + idxglb(2) = -9 + idxglb(3) = -9 + idxsrg(2) = -9 + idxsrg(1) = -9 +c +c --- loop through the array of daily codes --- +c + do 40 i=1,ntplcd +c +c --- check if record matches SCC code --- +c + if( asccin .EQ. asctpl(i) ) then +c +c --- check if subregion matches --- +c + if( sregin .EQ. sbrtpl(i) ) then +c +c --- match is exact, return --- +c + idxtpl = i + goto 9999 + endif +c +c --- check if the subregion is global --- +c + if( sbrtpl(i) .EQ. ' ' ) idxglb(3) = i + endif +c +c --- check if the code matches global 2 --- +c + if( ascglb(2) .EQ. asctpl(i) ) then +c +c --- check if the region code matches or is global +c + if( sregin .EQ. sbrtpl(i) ) then + idxsrg(2) = i + else if( sbrtpl(i) .EQ. ' ' ) then + idxglb(2) = i + endif + endif +c +c --- check if the code matches global 3 --- +c + if( ascglb(1) .EQ. asctpl(i) ) then +c +c --- check if the region code matches or is global +c + if( sregin .EQ. sbrtpl(i) ) then + idxsrg(1) = i + else if( sbrtpl(i) .EQ. ' ' ) then + idxglb(1) = i + endif + endif +c +c --- next seasonality code --- +c + 40 continue +c +c --- select best match and return -- +c + if( idxglb(3) .GT. 0 ) then + idxtpl = idxglb(3) + else if( idxsrg(2) .GT. 0 ) then + idxtpl = idxsrg(2) + else if( idxglb(2) .GT. 0 ) then + idxtpl = idxglb(2) + else if( idxsrg(1) .GT. 0 ) then + idxtpl = idxsrg(1) + else if( idxglb(1) .GT. 0 ) then + idxtpl = idxglb(1) + endif +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getgrw.f b/NONROAD/NR08a/SOURCE/getgrw.f new file mode 100644 index 0000000..7f132ff --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getgrw.f @@ -0,0 +1,200 @@ +C**** GETGRW +c + subroutine getgrw( ierr, indin ) +c +c----------------------------------------------------------------------- +c +c reads the growth indicator data from sorted scratch file. +c the only data that is saved is for the indicator code specified in +c the argument list. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c indin C indicator code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 04/06/05 --cimulus-- removed code that was calculating modified +c version of the scrappage curve; this +c handling is replaced by scrptime +c 07/20/05 --cimulus-- removed unused variable MLINE1 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE +C + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdgrw.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*4 indin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minumum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line + character*10 keytmp + character*5 fiptmp, subtmp + character*4 indtmp + integer*4 irec, iyrtmp + real*4 valtmp + logical lpass +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + nrcgrw = 0 + lpass = .TRUE. +c +c --- read a record as a character string --- +c + 111 continue + read(IOSGRW,8000,ERR=7001,END=7001) line + irec = irec + 1 +c +c --- look for the /END/ keyword ---- +c + keytmp = line(1:10) + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 222 +c +c --- get the indicator code, if it is not the one we want skip +c the record ---- +c + indtmp = line(17:20) + call lftjst( indtmp ) + if( indtmp .LT. indin ) goto 111 + if( indtmp .GT. indin ) goto 222 +c +c --- parse the line and load all of the data ---- +c + fiptmp = line(1:5) + subtmp = line(6:10) + read(line(11:15),'(I5)',ERR=7003) iyrtmp + read(line(26:45),'(F20.0)',ERR=7003) valtmp +c +c --- store the data in global arrays ---- +c + nrcgrw = nrcgrw + 1 + if( nrcgrw .GT. MXGROW ) goto 7004 + fipgrw(nrcgrw) = fiptmp + subgrw(nrcgrw) = subtmp + iyrgrw(nrcgrw) = iyrtmp + valgrw(nrcgrw) = valtmp +c +c --- get the next record --- +c + goto 111 +c +c --- entire file processed --- +c + 222 continue +c +c --- check if we have input data --- +c + if( nrcgrw .GE. 1 ) then +c +c --- back up one record for next call --- +c + backspace IOSGRW + ierr = ISUCES + goto 9999 + else +c +c --- if the file was beyond the desired end, then rewind and start from +c beginning of file --- +c + if( lpass ) then + rewind IOSGRW + lpass = .FALSE. + irec = 0 + goto 111 + else + goto 7005 + endif + endif +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c + 7001 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading growth scratch file ', + & grwfl(:strmin(grwfl)),'at record ',irec + write(IOWMSG,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading growth scratch file ', + & grwfl(:strmin(grwfl)),'at record ',irec + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading growth scratch file ', + & grwfl(:strmin(grwfl)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading growth scratch file ', + & grwfl(:strmin(grwfl)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,I5)',ERR=9999) + & 'ERROR: Number of growth indicator ', + & 'records exceeds max ',MXGROW + write(IOWMSG,'(/,1X,2A,I5)',ERR=9999) + & 'ERROR: Number of growth indicator ', + & 'records exceeds max ',MXGROW + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Growth indicator ',indin, + & ' not found in growth indicator file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Growth indicator ',indin, + & ' not found in growth indicator file.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getime.f b/NONROAD/NR08a/SOURCE/getime.f new file mode 100644 index 0000000..d6d4c3b --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getime.f @@ -0,0 +1,87 @@ +C**** GETIME +c + subroutine getime( cdate ) +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine returns the actual length of a string, i.e. with no +c trailing blanks. +c +c Arguments: +c +c Outputs: +c cdate C date as character string +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c 07/20/05 -cimulus- removed unused variables +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + character*(*) cdate +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*3 months(12) + integer*4 idatvl(8), i +c +c----------------------------------------------------------------------- +c Data statements: +c----------------------------------------------------------------------- +c + data months /'Jan','Feb','Mar','Apr','May','Jun', + & 'Jul','Aug','Sep','Oct','Nov','Dec'/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize the string --- +c + do 10 i=1,LEN(cdate) + cdate(i:i) = ' ' + 10 continue +c +c ---- call routine to get date --- +c + call date_and_time( values=idatvl ) +c +c --- create the date string --- +c + if( idatvl(2) .GT. 0 .AND. idatvl(2) .LE. 12 ) then + write(cdate,9000,ERR=9999) months(idatvl(2)), idatvl(3), + & idatvl(5), idatvl(6), idatvl(7), idatvl(1) + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(A,1X,I2.2,1X,I2.2,':',I2.2,':',I2.2,':',1X,I4) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getind.f b/NONROAD/NR08a/SOURCE/getind.f new file mode 100644 index 0000000..87a3bec --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getind.f @@ -0,0 +1,313 @@ +C**** GETIND +c + subroutine getind( ierr, valout, indin, fipin, subin, iyrin ) +c +c----------------------------------------------------------------------- +c +c This routine finds the record in the indicator file that +c matches the data in the argument list. It marches through the file +c looking for the correct indicator code. Once at the correct code +c it continues the march until it reaches the correct fip/subregion +c code. It then gets the data surrounding the year and +c chooses the closest year prior to or equal to the eval year; or if +c none, then the earliest year after the eval year. +c to get the exact year. +c +c Argument declaration. +c Outputs: +c ierr I error code +c valout R indicator value +c Inputs: +c indin C indicator code to search for +c fipin C FIPS code to search for +c subin C subregion code to search for +c iyrin I evaluation year to determine geo allocations for +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 07/13/05 -epa- remove interpolation; use closest/earlier year. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 valout + character*3 indin + character*5 fipin + character*5 subin + integer*4 iyrin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line + character*5 fiptmp, subtmp + character*3 indtmp + integer*4 irec, iyrtmp, iyrlow, iyrhi + real*4 valtmp, valhi, vallow +c real*4 slope + logical*4 lpass, lyrlow, lyrhi +c +c----------------------------------------------------------------------- +c Save and data statements: +c----------------------------------------------------------------------- +c + save irec + data irec /1/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + lpass = .FALSE. + iyrlow = -9 + iyrhi = 99999999 + lyrlow = .FALSE. + lyrhi = .FALSE. +c +c --- read a record as a character string --- +c + 111 continue + read(IOSIND,8000,ERR=7000,END=333) line + irec = irec + 1 +c +c --- get the indicator code, if it is not the one take appropriate +c action to get to there ---- +c + indtmp = line(1:3) + if( indin .GT. indtmp ) then + goto 111 + else if( indin .LT. indtmp ) then + if( lpass ) then + ierr = IEOF + goto 9999 + endif + lpass = .TRUE. + rewind(IOSIND) + goto 111 + endif + backspace(IOSIND,ERR=222) +c +c --- read the next record with this code --- +c + 222 continue + read(IOSIND,8000,ERR=7000,END=333) line + irec = irec + 1 +c +c --- if the indicator code changed then we are done with the county, +c so calculate the indicator value --- +c + indtmp = line(1:3) + if( indin .NE. indtmp ) then + if( .NOT. lyrlow .AND. .NOT. lyrhi ) then + if( lpass ) then + ierr = IEOF + goto 9999 + endif + lpass = .TRUE. + rewind(IOSIND) + goto 111 + else + if( lyrlow .AND. lyrhi ) then +c slope = (valhi - vallow)/FLOAT(iyrhi - iyrlow) +c valout = vallow + slope * FLOAT(iyrin - iyrlow) +c +c --- don't interpolate, just use earlier year --- +c + valout = vallow + else if( lyrlow ) then + valout = vallow + else if( lyrhi ) then + valout = valhi + endif + ierr = ISUCES + backspace(IOSIND,ERR=9999) + goto 9999 + endif + endif +c +c --- parse the line and load all of the data ---- +c + fiptmp = line(6:10) + subtmp = line(11:15) + call lftjst(subtmp) + read(line(16:20),'(I5)',ERR=7001) iyrtmp + read(line(21:40),'(F20.0)',ERR=7001) valtmp +c +c --- check the FIPS codes, if we haven't reached it yet keep reading --- +c + if( fipin .GT. fiptmp ) then + goto 222 +c +c --- FIPS code is greater than the one we want but we haven't found it +c yet so rewind and go look some more --- +c + else if( fipin .LT. fiptmp ) then + if( .NOT. lyrlow .AND. .NOT. lyrhi ) then + if( lpass ) then + ierr = IEOF + goto 9999 + endif + lpass = .TRUE. + rewind(IOSIND) + goto 111 +c +c --- new FIPS code and we have our data so calculate the value and +c return --- +c + else + if( lyrlow .AND. lyrhi ) then +c slope = (valhi - vallow)/FLOAT(iyrhi - iyrlow) +c valout = vallow + slope * FLOAT(iyrin - iyrlow) +c +c --- don't interpolate, just use earlier year --- +c + valout = vallow + else if( lyrlow ) then + valout = vallow + else if( lyrhi ) then + valout = valhi + endif + ierr = ISUCES + backspace(IOSIND,ERR=9999) + goto 9999 + endif + endif +c +c --- FIPS code matches now do checks with subregion code --- +c +c --- check the subregion codes, if we haven't reached it yet keep reading --- +c + if( subin .GT. subtmp ) then + goto 222 +c +c --- subregion code is greater than the one we want but we haven't +c found it yet so rewind and go look some more --- +c + else if( subin .LT. subtmp ) then + if( .NOT. lyrlow .AND. .NOT. lyrhi ) then + if( lpass ) then + ierr = IEOF + goto 9999 + endif + lpass = .TRUE. + rewind(IOSIND) + goto 111 +c +c --- new subregion code and we have our data so calculate +c the value and return --- +c + else + if( lyrlow .AND. lyrhi ) then +c slope = (valhi - vallow)/FLOAT(iyrhi - iyrlow) +c valout = vallow + slope * FLOAT(iyrin - iyrlow) +c +c --- don't interpolate, just use earlier year --- +c + valout = vallow + else if( lyrlow ) then + valout = vallow + else if( lyrhi ) then + valout = valhi + endif + ierr = ISUCES + backspace(IOSIND,ERR=9999) + goto 9999 + endif + endif +c +c --- all of the data matches, check for the years --- +c + if( iyrtmp .LE. iyrin ) then + if( iyrtmp .GT. iyrlow ) then + lyrlow = .TRUE. + iyrlow = iyrtmp + vallow = valtmp + endif + else if( iyrtmp .GT. iyrin ) then + if( iyrtmp .LT. iyrhi ) then + lyrhi = .TRUE. + iyrhi = iyrtmp + valhi = valtmp + endif + endif +c +c --- get the next record --- +c + goto 222 +c +c --- entire file processed, if we've made a pass already then +c set error code and return, otherwise, take another pass ---- +c + 333 continue + if( lpass ) then + ierr = IEOF + goto 9999 + else + lpass = .TRUE. + rewind(IOSIND) + goto 111 + endif +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading sorted spatial indicator file ', + & indfl(:strmin(indfl)),'at record ',irec + write(IOWMSG,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading sorted spatial indicator file ', + & indfl(:strmin(indfl)),'at record ',irec + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I10,/9X,2A)',ERR=9999) + & 'ERROR: Reading spatial indicator file ', + & indfl(:strmin(indfl)),'at record ',irec, + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,A,I10,/9X,2A)',ERR=9999) + & 'ERROR: Reading spatial indicator file ', + & indfl(:strmin(indfl)),'at record ',irec, + & 'Line read: ',line(:strmin(line)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getpop.f b/NONROAD/NR08a/SOURCE/getpop.f new file mode 100644 index 0000000..4019058 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getpop.f @@ -0,0 +1,285 @@ +C**** GETPOP +c + subroutine getpop( ierr, asccod, iyrin ) +c +c----------------------------------------------------------------------- +c +c reads the base year sorted population file and stores the data +c in common to be used by the NONROAD program. Population +c figures are given by equipment type, fuel type, Horsepower +c category, and region code. All of the data for the current +c SCC is read and stored. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c asccod C SCC code of records read +c Inputs: +c iyrin I current year +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 07/22/96 --gwl-- fixes +c 07/22/96 --jlf-- took out reading of technology info - this is +c now handled elsewhere +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; lasthp value is hard-coded to -9 by +c default, and lasthp stores previous values +c of hpavg and then is compared back against +c hpavg +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*10 asccod + integer*4 iyrin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in array of string +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*15 poptmp + character*10 ascin, asctmp, regtmp, regstr, distmp + character*5 fiptmp, subtmp, hpavtmp + integer*4 irec, idigit, iend, iyrtmp + integer*4 idxfip, idxsta, i + real*4 hpmin, hpmax, valtmp, usetmp, lasthp, hpavg + logical*4 lupper +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- intialize some local variables --- +c + irec = 1 + ascin = ' ' + regstr = ' ' + lasthp = -9 + lupper = .FALSE. + npoprc = 0 +c +c --- read a record as a character string --- +c + 111 continue + read(IOSPOP,8000,ERR=7001,END=7002) line + irec = irec + 1 +c +c --- get the SCC code, check for match with last record --- +c + asctmp = line(18:27) + if( ascin .EQ. ' ' ) ascin = asctmp + if( asctmp .NE. ascin ) then + asccod = ascin + backspace(IOSPOP) + ierr = ISUCES + goto 9999 + endif +c +c --- check for /END/ keyword --- +c + if( asctmp .EQ. KEYEND ) then + ierr = IEOF + goto 9999 + endif +c +c --- parse the line and load all of the data ---- +c + fiptmp = line(1:5) + subtmp = line(7:11) + read(line(13:16),'(I4)',ERR=7003) iyrtmp + read(line(70:74),'(F5.0)',ERR=7003) hpmin + read(line(76:80),'(F5.0)',ERR=7003) hpmax + hpavtmp = line(82:86) + read(line(88:92),'(F5.0)',ERR=7003) usetmp + distmp = line(93:102) +c +c --- left justify and convert to upper case where necessary --- +c + if( hpavtmp .EQ. ' ' ) then + hpavg = (hpmin+hpmax)/2. + else + read(hpavtmp,'(F5.0)',ERR=7002) hpavg + endif + call lftjst( fiptmp ) + call lftjst( subtmp ) + call low2up( subtmp ) + regtmp = fiptmp//subtmp + call lftjst( distmp ) + call low2up( distmp ) +c +c --- set the last to current if first time through --- +c + if( regstr .EQ. ' ' ) regstr = regtmp + if( lasthp .EQ. -9 ) lasthp = hpavg ! floating-point comparison for equality okay; lasthp value is hard-coded to -9 by default +c +c --- if this record matches the last one, check for which +c one to use for the current year --- +c + if( regstr .EQ. regtmp + & .AND. hpavg .EQ. lasthp .AND. npoprc .GT. 0 ) then ! floating-point comparison for equality okay; lasthp stores previous values of hpavg and then is compared back against hpavg + nrecds = nrecds + 1 + if( lupper ) then + goto 111 + endif + if( iyrtmp .GT. iyrin ) then + if( ipopyr(npoprc) .NE. iyrin ) then + if( irec .GT. 1 ) then + npoprc = npoprc + 1 + nrecds = nrecds - 1 + if( npoprc .GT. MXPOP ) goto 7004 + endif + else + goto 111 + endif + lupper = .TRUE. + endif + else + npoprc = npoprc + 1 + if( npoprc .GT. MXPOP ) goto 7004 + regstr = regtmp + lasthp = hpavg + if( iyrtmp .GE. iyrin ) then + lupper = .TRUE. + else + lupper = .FALSE. + endif + endif +c +c --- if fips code is not a state code, find the index into county array +c and set the county specific flag --- +c + if( regtmp(3:5) .NE. '000' ) then + idxfip = fndchr( regtmp(1:5), 5, fipcod, NCNTY ) + if( idxfip .GT. 0 ) lctlev(idxfip) = .TRUE. + if( regtmp(6:10) .NE. ' ' ) then + idxfip = fndchr( regtmp, 10, reglst, nregin ) + if( idxfip .GT. 0 ) lrglev(idxfip) = .TRUE. + endif + else + if( regtmp(1:2) .NE. '00' ) then + idxsta = fndchr( regtmp(1:5), 5, statcd, NSTATE ) + if( idxsta .GT. 0 ) lstlev(idxsta) = .TRUE. + endif + endif +c +c --- get population value, if population value is zero, skip it --- +c + poptmp = ' ' + idigit = 1 + iend = 122 + do 20 i=108,iend + if(line(i:i) .NE. ',' .AND. line(i:i) .NE. ' ') then + poptmp(idigit:idigit) = line(i:i) + idigit = idigit + 1 + endif + 20 continue + call rgtjst( poptmp ) + read(poptmp,'(F20.0)',ERR=7003) valtmp +c +c -- load this data into global arrays --- +c + if( npoprc .EQ. 0 ) npoprc = 1 + regncd(npoprc) = regtmp + ipopyr(npoprc) = iyrtmp + avghpc(npoprc) = hpavg + hprang(1,npoprc) = hpmin + hprang(2,npoprc) = hpmax + usehrs(npoprc) = usetmp + popeqp(npoprc) = valtmp + discod(npoprc) = distmp +c + goto 111 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7001 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I7)',ERR=9999) + & 'ERROR: Reading sorted population file ', + & spopfl(:strmin(popfl)),'at record ',irec + write(IOWMSG,'(/,1X,2A,/,9X,A,I7)',ERR=9999) + & 'ERROR: Reading sorted population file ', + & spopfl(:strmin(popfl)),'at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached', + & 'reading sorted population file ', + & spopfl(:strmin(spopfl)) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached', + & 'reading sorted population file ', + & spopfl(:strmin(spopfl)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I7,/,9X,2A)',ERR=9999) + & 'ERROR: Reading sorted population file ', + & spopfl(:strmin(spopfl)),'at record ',irec, + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,A,I7,/,9X,2A)',ERR=9999) + & 'ERROR: Reading sorted population file ', + & spopfl(:strmin(spopfl)),'at record ',irec, + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I7)',ERR=9999) + & 'ERROR: Number of population records ', + & 'for equipment type ',asctmp, + & 'exceeds max ',MXPOP + write(IOWMSG,'(/,1X,3A,/,9X,A,I7)',ERR=9999) + & 'ERROR: Number of population records ', + & 'for equipment type ',asctmp, + & 'exceeds max ',MXPOP + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getscrp.f b/NONROAD/NR08a/SOURCE/getscrp.f new file mode 100644 index 0000000..05fcbea --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getscrp.f @@ -0,0 +1,107 @@ +C**** GETSCRP +c + subroutine getscrp( ierr, scrpbin, scrppct, scrpnam ) +c +c--------------------------------------------------------------------- +c +c Returns the scrappage curve specified by scrpnam. Uses the +c default scrappage curve if the name specified is 'DEFAULT' +c or is not found in the alternate scrappage curve arrays. +c +c Argument declaration +c Outputs: +c ierr I error indicator flag +c scrpbin R array of scrappage bin values +c scrppct R percent of equipment left in each bin +c Inputs: +c scrpnam C name of the scrappage curve to search +c +c--------------------------------------------------------------------- +c LOG: +c--------------------------------------------------------------------- +c +c 04-05-05 -cimulus- original development +c +c--------------------------------------------------------------------- +c Include files: +c--------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' +c +c--------------------------------------------------------------------- +c Argument declarations: +c--------------------------------------------------------------------- +c + integer*4 ierr + real*4 scrpbin(MXSCRP) + real*4 scrppct(MXSCRP) + character*10 scrpnam +c +c--------------------------------------------------------------------- +c External functions: +c--------------------------------------------------------------------- +c +c fndchr I returns the index of string in array of strings +c + integer*4 fndchr +c +c--------------------------------------------------------------------- +c Local variables: +c--------------------------------------------------------------------- +c + integer*4 i ! loop iterator + integer*4 idxalt ! index of alternate scrappage curve, if any +c +c--------------------------------------------------------------------- +c Entry point: +c--------------------------------------------------------------------- +c + ierr = IFAIL +c +c --- determine which scrappage curve to search --- +c + do i=1,MXSCRP + scrpbin(i) = scpbin(i) + scrppct(i) = scppct(i) + end do + if( scrpnam .NE. 'DEFAULT' ) then + idxalt = fndchr( scrpnam, 10, altnam, naltnm ) + if( idxalt .GT. 0 ) then + do i=1,MXSCRP + scrpbin(i) = altbin(i) + scrppct(i) = altpct(idxalt,i) + end do + else + write(IOWMSG,'(/,1X,4A,/)',ERR=9999) 'WARNING: Cannot ', + & 'find /ALTERNATE SCRAPPAGE/ curve ',scrpnam, + & ' Using DEFAULT curve.' + nwarn = nwarn + 1 + endif + endif +c +c --- set error code to sucess and return --- +c + ierr = ISUCES + goto 9999 +c +c--------------------------------------------------------------------- +c Error messages: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Format statements: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Return point: +c--------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/getsys.f b/NONROAD/NR08a/SOURCE/getsys.f new file mode 100644 index 0000000..bbe7151 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/getsys.f @@ -0,0 +1,98 @@ +C**** GETSYS +c + subroutine getsys( ierr, fname ) + + implicit none +c +c----------------------------------------------------------------------- +c +c This routine gets the name of the system file from the user. It +c is done in a seperate routine so that platform dependant code +c can easily be implimented to take advantage of certain compiler +c dependant extensions such as the GETARG function of MS Fortran. +c +c Arguments: +c Outputs: +c ierr I error code +c fname C name of system file +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 01/10/94 --gmw-- original development +c 4/6/96 --gwl-- modified for MS Fortran compiler +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*(MXSTR) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) cline + integer*4 iend +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error code ---- +c + ierr = IFAIL +c +c --- get number of arguments, if more than 1 get control filename --- +c note if running on unix or compiling with MS Fortran, use getarg +c instead of getcl --- +c + call getarg( 1, cline ) +clahey call GETCL( cline ) + if( strlen(cline) .GT. 0 ) then + call lftjst( cline ) + iend = INDEX(cline,' ') + if( iend .EQ. 0 ) iend = LEN( cline ) + fname = cline(:iend) +c +c --- only one argument, prompt user for system file ---- +c + else + write(IOWSTD,9000,ERR=9999) 'Enter options filename: ' + read(IORSTD,'(A)') fname + ierr = ISKIP + endif +c +c --- set error code to sucess --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format('+',A) +c +c----------------------------------------------------------------------- +c Exit point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/grwfac.f b/NONROAD/NR08a/SOURCE/grwfac.f new file mode 100644 index 0000000..1a5582a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/grwfac.f @@ -0,0 +1,281 @@ +C**** GRWFAC +c + subroutine grwfac( ierr, factor, ibasyr, igyear, infips, indcod ) +c +c----------------------------------------------------------------------------- +c +c subroutine to compute the growth factor from the current indicator +c data +c +c Argument declaration +c Outputs: +c ierr I error indicator flag +c factor R the growth factor based on the current indicator +c Inputs: +c ibasyr I the base population year +c igyear I the growth year +c infips I FIPS code +c indcod C indicator code +c +c----------------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------------- +c +c 12-05-95 -djk- Original Development +c 07-16-96 -gwl- Rewritten +c 06/09/97 -gwilson- Now writes error if no data available. +c 09/19/01 -charvey- For future year interpolate between two +c closest yrs of input vs using later year index. +c 01/24/02 -charvey- If base pop year in pop file is not a year +c in the growth file, interpolate to get base index. +c 03/14/02 12 charvey: Properly backcast & handle negative growth. +c 07/23/04 charvey: corrections to negative growth handling special cases. +c 04/25/05 -cimulus- Redeveloped extrapolation/interpolation of +c base-year and growth-year indicators +c 05/04/05 -cimulus- Changed ipopyr to ibasyr +c 05/05/05 -cimulus- Removed error message about 0 +c interpolated-base-year indicator, and added +c special case handling for base-year +c indicator of zero +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdgrw.inc' + include 'nonrdreg.inc' +c +c------------------------------------------------------------------------ +c Argument declarations: +c------------------------------------------------------------------------ +c + integer*4 ierr + integer*4 ibasyr + integer*4 igyear + real*4 factor + character*5 infips + character*4 indcod +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c------------------------------------------------------------------------ +c Local variables: +c------------------------------------------------------------------------ +c + character*5 stfips + integer*4 i, ibeg, iend + real*4 baseyearind ! growth indicator for base-population year, interpolated or extrapolated as necessary + real*4 growthyearind ! growth indicator for growth year, interpolated or extrapolated as necessary + real*4 indchange ! temporary storage of year-to-year change in indicator value + real*4 lowerboundindchange ! year-to-year change in indicator value at the lower end of the range of indicators + real*4 upperboundindchange ! year-to-year change in indicator value at the upper end of the range of indicators + real*4 tmpbaseyearind +c +c------------------------------------------------------------------------ +c Entry point: +c------------------------------------------------------------------------ +c +c --- default growth is no growth --- +c + ierr = IFAIL + factor = 0.0 +c +c --- if episode year equals base year, then no growth --- +c +CCC +CCC but still need to calc growth to get proper adjusted age dist? +CCC + if( igyear .EQ. ibasyr ) then +cc +cc write(IOWMSG,'(//1X,A,A4,2X,2I4)',ERR=9999) +cc & 'indcod,ibasyr = igyear: ',indcod,ibasyr,igyear +cc + ierr = ISUCES + goto 9999 + endif +CCC +c +c --- zero indicator year indecies --- +c + ibeg = 0 + iend = 0 +c +c --- loop over the indicator fips searching for national, state, +c or county match (note--fipgrw is sorted by fips code) --- +c + stfips = infips(1:2)//'000' +c + do 10 i=1,nrcgrw + if( fipgrw(i) .EQ. '00000') iend = i + if( fipgrw(i) .EQ. stfips) iend = i + if( fipgrw(i) .EQ. infips) iend = i + 10 continue +c +c --- if there is no match, use default growth --- +c + if( iend .EQ. 0 ) goto 7000 +c +c --- backup to the first occurrance --- +c + ibeg = 1 + do 20 i=iend-1,1,-1 + if( fipgrw(i) .NE. fipgrw(iend) ) then + ibeg = i + 1 + goto 111 + endif + 20 continue +c +c --- if ibeg equals iend then only one indicator, +c we need two years for equation, so write error and return --- +c + 111 continue +cc +cc write(IOWMSG,'(//1X,A,A4,2X,2I4)',ERR=9999) +cc & 'indcod,ibeg,iend: ',indcod,ibeg,iend +cc + if( ibeg .EQ. iend .OR. iyrgrw(ibeg) .EQ. iyrgrw(iend) ) goto 7000 +c +c --- calculate lower boundary year-to-year indicator +c change (forward in time), if necessary --- + if( ibasyr .LT. iyrgrw(ibeg) .OR. igyear .LT. iyrgrw(ibeg) ) then + lowerboundindchange = (valgrw(ibeg + 1) - valgrw(ibeg)) / + & (iyrgrw(ibeg + 1) - iyrgrw(ibeg)) ! growing forward, so subtract lower year from higher year + endif +c +c --- calculate upper boundary year-to-year indicator +c change (forward in time), if necessary --- + if( ibasyr .GT. iyrgrw(iend) .OR. igyear .GT. iyrgrw(iend) ) then + upperboundindchange = (valgrw(iend) - valgrw(iend - 1)) / + & (iyrgrw(iend) - iyrgrw(iend - 1)) ! growing forward, so subtract lower year from higher year + endif +c +c --- calculate growth indicator for the base-population year --- + if( ibasyr .LT. iyrgrw(ibeg) ) then +c --- extrapolate bacwards based on the year-to-year +c indicator change at the lower end of the range --- + baseyearind = max(0., valgrw(ibeg) + + & (lowerboundindchange * (ibasyr - iyrgrw(ibeg)))) ! growing backwards, so subtract higher year from lower year + else if( ibasyr .GT. iyrgrw(iend) ) then +c --- extrapolate forward based on the year-to-year +c indicator change at the upper end of the range --- + baseyearind = max(0., valgrw(iend) + + & (upperboundindchange * (ibasyr - iyrgrw(iend)))) ! growing forward, so subtract lower year from higher year + else if( ibasyr .EQ. iyrgrw(iend) ) then +c --- matched last growth-data year --- + baseyearind = valgrw(iend) + else + do i=ibeg,iend-1 + if( ibasyr .EQ. iyrgrw(i) ) then +c --- matched current growth-data year --- + baseyearind = valgrw(i) + exit + else if( ibasyr .LT. iyrgrw(i + 1) ) then +c --- in between growth-data years, so interpolate based on +c year-to-year indicator change between the two years --- + indchange = (valgrw(i + 1) - valgrw(i)) / + & (iyrgrw(i + 1) - iyrgrw(i)) ! growing forward, so subtract lower year from higher year + baseyearind = valgrw(i) + (indchange * + & (ibasyr - iyrgrw(i))) ! growing forward, so subtract lower year from higher year + exit + endif + end do + endif +c +c --- calculate growth indicator for the growth year --- + if( igyear .LT. iyrgrw(ibeg) ) then +c --- extrapolate bacwards based on the year-to-year +c indicator change at the lower end of the range --- + growthyearind = max(0., valgrw(ibeg) + + & (lowerboundindchange * (igyear - iyrgrw(ibeg)))) ! growing backwards, so subtract higher year from lower year + else if( igyear .GT. iyrgrw(iend) ) then +c --- extrapolate forward based on the year-to-year +c indicator change at the upper end of the range --- + growthyearind = max(0., valgrw(iend) + + & (upperboundindchange * (igyear - iyrgrw(iend)))) ! growing forward, so subtract lower year from higher year + else if( igyear .EQ. iyrgrw(iend) ) then +c --- matched last growth-data year --- + growthyearind = valgrw(iend) + else + do i=ibeg,iend-1 + if( igyear .EQ. iyrgrw(i) ) then +c --- matched current growth-data year --- + growthyearind = valgrw(i) + exit + else if( igyear .LT. iyrgrw(i + 1) ) then +c --- in between growth-data years, so interpolate based on +c year-to-year indicator change between the two years --- + indchange = (valgrw(i + 1) - valgrw(i)) / + & (iyrgrw(i + 1) - iyrgrw(i)) ! growing forward, so subtract lower year from higher year + growthyearind = valgrw(i) + (indchange * + & (igyear - iyrgrw(i))) ! growing forward, so subtract lower year from higher year + exit + endif + end do + endif +c +c --- if both indicators are zero, return default growth factor of zero --- + if( baseyearind .EQ. 0. .AND. growthyearind .EQ. 0.) then + ierr = ISUCES + goto 9999 + endif +c +c --- cannot calculate growth factor if base-year indicator is zero --- + if( baseyearind .EQ. 0. ) then +c --- adjust base-year indicator to the minimum allowed +c to avoid divide by zero --- + tmpbaseyearind = max(MINGRWIND, baseyearind) + write(IOWMSG,9002,ERR=9999) 'WARNING: Adjusting ', + & 'base-year growth indicator to avoid divide by zero', + & 'Base Yr','Base Yr Ind','Adj Base Yr Ind', + & 'Growth Yr','Growth Yr Ind', + & ibasyr,baseyearind,tmpbaseyearind, + & igyear,growthyearind + nwarn = nwarn + 1 + endif +c +c --- calculate the growth factor --- + factor = (growthyearind - baseyearind) / + & (baseyearind * (igyear - ibasyr)) +c +c --- set error code to sucess and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find any ', + & 'valid growth data for ' + write(IOWSTD,9000,ERR=9999) 'County','Year','Indicator Code', + & infips, igyear, indcod + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find any ', + & 'valid growth data for ' + write(IOWMSG,9000,ERR=9999) 'County','Year','Indicator Code', + & infips, igyear, indcod +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(10X,A6,3X,A4,3X,A,/,10X,A5,4X,I4,10X,A4) + 9001 format(10X,A6,3X,A9,3X,A,/,10X,A5,4X,I4,15X,A4) + 9002 format(/,1X,2A,/,T11,A,T23,A,T39,A,T59,A,T73,A, + & /,T11,I4,T19,F15.6,T39,F15.6,T59,I4,T71,F15.6) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/hdrbmy.f b/NONROAD/NR08a/SOURCE/hdrbmy.f new file mode 100644 index 0000000..e2f9e33 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/hdrbmy.f @@ -0,0 +1,213 @@ +C**** HDRBMY +c + subroutine hdrbmy( ierr, iexev ) +c +c----------------------------------------------------------------------- +c +c writes header record to the output by-model-year data file +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c iexev I switch between exhaust (1) and evap (2) output +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 08/06/98 --gwilson-- original development (started w/wrthdr) +c 06/04/04 -dfk-- modified to output exhaust and evap separatly +c due to introduction of evap techs +c 09/22/04 -dfk-- changed SOx to SO2 per version NR04 +c 10/06/04 -dfk-- changed Refueling to Displacement +c 02/24/05 -cimulus- added Activity +c 02/25/05 -cimulus- added LF and HPAvg (exhaust only) +c 02/25/05 -cimulus- added spacing to header row to facilitate +c viewing in a text editor, and changed +c 'Tech Type' to 'TechType' +c 03/08/05 -cimulus- changed 'Year' to 'MYr' and 'RuningLoss' +c to 'RunLoss' +c changed the order of the output of the +c columns to be consistent with the OUT file +c and the postprocessors +c 05/19/05 -cimulus- output new retrofit fields, if running +c retrofit functionality +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iexev +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c COMMA C parameter for the comma character +c + character*1 COMMA +c + parameter( COMMA = ',' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*400 line + character*15 name(13), namesp(MXPOL) + integer*4 ilen, i + integer*4 io + character*(MXSTR) iofl + integer*4 tmpend +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- set I/O depending on exhaust/evap +c + if(iexev.eq.1) then + io=IOWBMY + iofl=bmyfl + else + io=IOWEVBMY + iofl=evbmyfl + end if +c +c --- initialize +c + line = ' ' +c +c --- write the lines with first set of labels --- +c + name(1) = 'Cnty' + name(2) = 'SubR' + name(3) = 'SCC' + name(4) = 'HP' + name(5) = 'TechType' + name(6) = 'MYr' + name(7) = 'Population' + write(line,9000,ERR=7000) (name(i),COMMA,i=1,7) +c +c --- write the lines with first set of labels --- +c + namesp(IDXTHC) = 'THC-Exhaust' + namesp(IDXCO) = 'CO-Exhaust' + namesp(IDXNOX) = 'NOx-Exhaust' + namesp(IDXCO2) = 'CO2-Exhaust' + namesp(IDXSOX) = 'SO2-Exhaust' + namesp(IDXPM) = 'PM-Exhaust' + namesp(IDXCRA) = 'Crankcase' + namesp(IDXSOK) = 'Hot-Soaks' + namesp(IDXDIU) = 'Diurnal' + namesp(IDXDIS) = 'Displacement' + namesp(IDXSPL) = 'Spillage' + namesp(IDXRLS) = 'RunLoss' +C namesp(IDXRST) = 'RestngLoss' + namesp(IDSTHC) = 'THC-Starts' + namesp(IDSNOX) = 'NOx-Starts' + namesp(IDSCO) = 'CO-Starts' + namesp(IDSPM) = 'PM-Starts' + namesp(IDSSOX) = 'SO2-Starts' + namesp(IDSCO2) = 'CO2-Starts' + namesp(IDXTKP) = 'TankPerm' + namesp(IDXHOS) = 'HosePerm' ! sum of non-rec-marine hose and 3 rec-marine hoses +c + if(iexev.eq.1) then + ilen = strmin( line ) + 1 + write(line(ilen:),'(100(:15A,A))',ERR=7000) + & (namesp(i),COMMA,i=IDXTHC,IDXCRA) + else + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXSOK),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXDIU),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXDIS),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXSPL),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXRLS),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXTKP),COMMA + ilen = strmin(line) + 1 + write(line(ilen:),'(15A,A)',ERR=7000) namesp(IDXHOS),COMMA + endif +c + ilen = strmin( line ) + 1 + name(8) = 'FuelCons.' + name(9) = 'Activity' + write(line(ilen:),'(100(:15A,A))',ERR=7000) + & (name(i),COMMA,i=8,9) + + if(iexev.eq.1) then ! if exhaust + ilen = strmin( line ) + 1 + name(10) = 'LF' + name(11) = 'HPAvg' + name(12) = 'FracRetro' + name(13) = 'UnitsRetro' + if( lrtrftfl ) then ! if running retrofit functionality + tmpend = 13 + else + tmpend = 11 + endif + write(line(ilen:),'(100(15A:,A))',ERR=7000) + & (name(i),COMMA,i=10,tmpend) + end if +c +c --- write the record to the output file --- +c + write(io,'(A)',ERR=7000) line(:strmin(line)) +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the by-model-year file ', + & iofl(:strmin(iofl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the by-model-year file ', + & iofl(:strmin(iofl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(A5,A,A5,A,A10,A,A5,A,A10,A,A4,A,A15,A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/in1fip.f b/NONROAD/NR08a/SOURCE/in1fip.f new file mode 100644 index 0000000..f57f4dd --- /dev/null +++ b/NONROAD/NR08a/SOURCE/in1fip.f @@ -0,0 +1,141 @@ +C**** IN1FIP +c + subroutine in1fip() +c +c----------------------------------------------------------------------- +c +c Initiliazes the county and state names and the county codes. The +c code is separated into a couple of subroutines so the compiler +c can handle it. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 03/24/03 --charvey-- change 12025 Dade to 12086 Miami-Dade +c 04/22/05 --cimulus-- removed fipcod and cntynm array setup, +c and commented out nconty and idxcty setup +c because such information will be read from +c data\allocate\FIPS.DAT +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- ALABAMA ---- +c + statcd(1) = '01000' + statnm(1) = 'Alabama' +C nconty(1) = 67 +C idxcty(1) = 1 +c +c +c ---- ALASKA ---- +c + statcd(2) = '02000' + statnm(2) = 'Alaska' +c nconty(2) = 27 +c idxcty(2) = 68 +c +c ---- ARIZONA ---- +c + statcd(3) = '04000' + statnm(3) = 'Arizona' +c nconty(3) = 15 +c idxcty(3) = 95 +c +c ---- ARKANSAS ---- +c + statcd(4) = '05000' + statnm(4) = 'Arkansas' +c nconty(4) = 75 +c idxcty(4) = 110 +c +c ---- CALIFORNIA ---- +c + statcd(5) = '06000' + statnm(5) = 'California' +c nconty(5) = 58 +c idxcty(5) = 185 +c +c ---- COLORADO ---- +c + statcd(6) = '08000' + statnm(6) = 'Colorado' +c nconty(6) = 63 +c idxcty(6) = 243 +c +c ---- CONNECTICUT ---- +c + statcd(7) = '09000' + statnm(7) = 'Connecticut' +c nconty(7) = 8 +c idxcty(7) = 306 +c +c ---- DELAWARE ---- +c + statcd(8) = '10000' + statnm(8) = 'Delaware' +c nconty(8) = 3 +c idxcty(8) = 314 +c +c ---- WASH DC ---- +c + statcd(9) = '11000' + statnm(9) = 'Wash DC' +c nconty(9) = 1 +c idxcty(9) = 317 +c +c ---- FLORIDA ---- +c + statcd(10) = '12000' + statnm(10) = 'Florida' +c nconty(10) = 67 +c idxcty(10) = 318 +c +c ---- GEORGIA ---- +c + statcd(11) = '13000' + statnm(11) = 'Georgia' +c nconty(11) = 159 +c idxcty(11) = 385 +c +c ---- HAWAII ---- +c + statcd(12) = '15000' + statnm(12) = 'Hawaii' +c nconty(12) = 5 +c idxcty(12) = 544 +c +c ---- IDAHO ---- +c + statcd(13) = '16000' + statnm(13) = 'Idaho' +c nconty(13) = 44 +c idxcty(13) = 549 +c +c ---- ILLINOIS ---- +c + statcd(14) = '17000' + statnm(14) = 'Illinois' +c nconty(14) = 102 +c idxcty(14) = 593 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/in2fip.f b/NONROAD/NR08a/SOURCE/in2fip.f new file mode 100644 index 0000000..4db4f72 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/in2fip.f @@ -0,0 +1,117 @@ +C**** IN2FIP +c + subroutine in2fip() +c +c----------------------------------------------------------------------- +c +c Initiliazes the county and state names and the county codes. The +c code is separated into a couple of subroutines so the compiler +c can handle it. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 04/22/05 --cimulus-- removed fipcod and cntynm array setup, +c and commented out nconty and idxcty setup +c because such information will be read from +c data\allocate\FIPS.DAT +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- state and county names and codes arrays --- +c +c ---- INDIANA ---- +c + statcd(15) = '18000' + statnm(15) = 'Indiana' +c nconty(15) = 92 +c idxcty(15) = 695 +c +c ---- IOWA ---- +c + statcd(16) = '19000' + statnm(16) = 'Iowa' +c nconty(16) = 99 +c idxcty(16) = 787 +c +c ---- KANSAS ---- +c + statcd(17) = '20000' + statnm(17) = 'Kansas' +c nconty(17) = 105 +c idxcty(17) = 886 +c +c ---- KENTUCKY ---- +c + statcd(18) = '21000' + statnm(18) = 'Kentucky' +c nconty(18) = 120 +c idxcty(18) = 991 +c +c ---- LOUISIANA ---- +c + statcd(19) = '22000' + statnm(19) = 'Louisiana' +c nconty(19) = 64 +c idxcty(19) = 1111 +c +c ---- MAINE ---- +c + statcd(20) = '23000' + statnm(20) = 'Maine' +c nconty(20) = 16 +c idxcty(20) = 1175 +c +c ---- MARYLAND ---- +c + statcd(21) = '24000' + statnm(21) = 'Maryland' +c nconty(21) = 24 +c idxcty(21) = 1191 +c +c ---- MASSACHUSETTS ---- +c + statcd(22) = '25000' + statnm(22) = 'Massachusetts' +c nconty(22) = 14 +c idxcty(22) = 1215 +c +c ---- MICHIGAN ---- +c + statcd(23) = '26000' + statnm(23) = 'Michigan' +c nconty(23) = 83 +c idxcty(23) = 1229 +c +c ---- MINNISOTA ---- +c + statcd(24) = '27000' + statnm(24) = 'Minnesota' +c nconty(24) = 87 +c idxcty(24) = 1312 +c +c --- return to calling return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/in3fip.f b/NONROAD/NR08a/SOURCE/in3fip.f new file mode 100644 index 0000000..a62b679 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/in3fip.f @@ -0,0 +1,122 @@ +C**** IN3FIP +c + subroutine in3fip() +c +c----------------------------------------------------------------------- +c +c Initiliazes the county and state names and the county codes. The +c code is separated into a couple of subroutines so the compiler can +c handle it. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 04/22/05 --cimulus-- removed fipcod and cntynm array setup, +c and commented out nconty and idxcty setup +c because such information will be read from +c data\allocate\FIPS.DAT +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- MISSISSIPPI ---- +c + statcd(25) = '28000' + statnm(25) = 'Mississippi' +c nconty(25) = 82 +c idxcty(25) = 1399 +c +c ---- MISSOURI ---- +c + statcd(26) = '29000' + statnm(26) = 'Missouri' +c nconty(26) = 115 +c idxcty(26) = 1481 +c +c ---- MONTANA ---- +c + statcd(27) = '30000' + statnm(27) = 'Montana' +c nconty(27) = 57 +c idxcty(27) = 1596 +c +c ---- NEBRASKA ---- +c + statcd(28) = '31000' + statnm(28) = 'Nebraska' +c nconty(28) = 93 +c idxcty(28) = 1653 +c +c ---- NEVADA ---- +c + statcd(29) = '32000' + statnm(29) = 'Nevada' +c nconty(29) = 17 +c idxcty(29) = 1746 +c +c ---- NEW HAMPSHIRE ---- +c + statcd(30) = '33000' + statnm(30) = 'New Hampshire' +c nconty(30) = 10 +c idxcty(30) = 1763 +c +c ---- NEW JERSEY ---- +c + statcd(31) = '34000' + statnm(31) = 'New Jersey' +c nconty(31) = 21 +c idxcty(31) = 1773 +c +c ---- NEW MEXICO ---- +c + statcd(32) = '35000' + statnm(32) = 'New Mexico' +c nconty(32) = 33 +c idxcty(32) = 1794 +c +c ---- NEW YORK ---- +c + statcd(33) = '36000' + statnm(33) = 'New York' +c nconty(33) = 62 +c idxcty(33) = 1827 +c +c ---- NORTH CAROLINA ---- +c + statcd(34) = '37000' + statnm(34) = 'North Carolina' +c nconty(34) = 100 +c idxcty(34) = 1889 +c +c ---- NORTH DAKOTA ---- +c + statcd(35) = '38000' + statnm(35) = 'North Dakota' +c nconty(35) = 53 +c idxcty(35) = 1989 +c +c --- return to calling return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/in4fip.f b/NONROAD/NR08a/SOURCE/in4fip.f new file mode 100644 index 0000000..b5b270d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/in4fip.f @@ -0,0 +1,110 @@ +C**** IN4FIP +c + subroutine in4fip() +c +c----------------------------------------------------------------------- +c +c Initiliazes the county and state names and the county codes. The +c code is separated into a couple of subroutines so the compiler can +c handle it. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 03/16/05 --cimulus-- moved Texas here from in5fip to make room +c for Puerto Rico and US Virgin Islands +c 04/22/05 --cimulus-- removed fipcod and cntynm array setup, +c and commented out nconty and idxcty setup +c because such information will be read from +c data\allocate\FIPS.DAT +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- OHIO ---- +c + statcd(36) = '39000' + statnm(36) = 'Ohio' +c nconty(36) = 88 +c idxcty(36) = 2042 +c +c ---- OKLAHOMA ---- +c + statcd(37) = '40000' + statnm(37) = 'Oklahoma' +c nconty(37) = 77 +c idxcty(37) = 2130 +c +c ---- OREGON ---- +c + statcd(38) = '41000' + statnm(38) = 'Oregon' +c nconty(38) = 36 +c idxcty(38) = 2207 +c +c ---- PENNSYLVANIA ---- +c + statcd(39) = '42000' + statnm(39) = 'Pennsylvania' +c nconty(39) = 67 +c idxcty(39) = 2243 +c +c ---- RHODE ISLAND ---- +c + statcd(40) = '44000' + statnm(40) = 'Rhode Island' +c nconty(40) = 5 +c idxcty(40) = 2310 +c +c ---- SOUTH CAROLINA ---- +c + statcd(41) = '45000' + statnm(41) = 'South Carolina' +c nconty(41) = 46 +c idxcty(41) = 2315 +c +c ---- SOUTH DAKOTA ---- +c + statcd(42) = '46000' + statnm(42) = 'South Dakota' +c nconty(42) = 66 +c idxcty(42) = 2361 +c +c ---- TENNESSEE ---- +c + statcd(43) = '47000' + statnm(43) = 'Tennessee' +c nconty(43) = 95 +c idxcty(43) = 2427 +c +c ---- TEXAS ---- +c + statcd(44) = '48000' + statnm(44) = 'Texas' +c nconty(44) = 254 +c idxcty(44) = 2522 +c +c --- return to calling return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/in5fip.f b/NONROAD/NR08a/SOURCE/in5fip.f new file mode 100644 index 0000000..5d3d8eb --- /dev/null +++ b/NONROAD/NR08a/SOURCE/in5fip.f @@ -0,0 +1,113 @@ +C**** IN5FIP +c + subroutine in5fip() +c +c----------------------------------------------------------------------- +c +c Initiliazes the county and state names and the county codes. The +c code is separated into a couple of subroutines so the compiler can +c handle it. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 03/16/05 --cimulus-- moved Texas to in4fip to make room +c for Puerto Rico and US Virgin Islands +c 03/16/05 --cimulus-- added Puerto Rico and US Virgin Islands +c 04/22/05 --cimulus-- removed fipcod and cntynm array setup, +c and commented out nconty and idxcty setup +c because such information will be read from +c data\allocate\FIPS.DAT +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- UTAH ---- +c + statcd(45) = '49000' + statnm(45) = 'Utah' +c nconty(45) = 29 +c idxcty(45) = 2776 +c +c ---- VERMONT ---- +c + statcd(46) = '50000' + statnm(46) = 'Vermont' +c nconty(46) = 14 +c idxcty(46) = 2805 +c +c ---- VIRGINIA ---- +c + statcd(47) = '51000' + statnm(47) = 'Virginia' +c nconty(47) = 135 +c idxcty(47) = 2819 +c +c ---- WASHINGTON ---- +c + statcd(48) = '53000' + statnm(48) = 'Washington' +c nconty(48) = 39 +c idxcty(48) = 2954 +c +c ---- WEST VIRGINIA ---- +c + statcd(49) = '54000' + statnm(49) = 'West Virginia' +c nconty(49) = 55 +c idxcty(49) = 2993 +c +c ---- WISCONSIN ---- +c + statcd(50) = '55000' + statnm(50) = 'Wisconsin' +c nconty(50) = 72 +c idxcty(50) = 3048 +c +c ---- WYOMING ---- +c + statcd(51) = '56000' + statnm(51) = 'Wyoming' +c nconty(51) = 23 +c idxcty(51) = 3120 +c +c ---- PUERTO RICO ---- +c + statcd(52) = '72000' + statnm(52) = 'Puerto Rico' +c nconty(52) = 78 +c idxcty(52) = 3143 +c +c ---- US VIRGIN ISLANDS ---- +c + statcd(53) = '78000' + statnm(53) = 'US Virgin Islands' +c nconty(53) = 3 +c idxcty(53) = 3221 +c +c idxcty(54) = 3224 +c +c --- return to calling return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/iniasc.f b/NONROAD/NR08a/SOURCE/iniasc.f new file mode 100644 index 0000000..37917d8 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/iniasc.f @@ -0,0 +1,653 @@ +C**** INIASC +c + subroutine iniasc() +c +c----------------------------------------------------------------------- +c +c Initiliazes the equipment codes. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gwilson-- original development +c 04/03/02 charvey adds detailed GSE SCC's. +c 04/27/05 --cimulus-- changed Hyrdo power units from 22xx005050 +c to 22xx006035, moving their categories and +c renumbering as needed. The total array size +c did not change. +c 03/09/2007 charvey adds 2260008005 & 2268008005 GSE SCC's. Removed 2285002005. +c Removed 2285002005. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- equipment category and equipment name arrays ---- +c +c --- Recreational Equipment --- +c + eqpcod( 1) = "2260001010" + eqpcod( 2) = "2260001020" + eqpcod( 3) = "2260001030" + eqpcod( 4) = "2260001040" + eqpcod( 5) = "2260001050" + eqpcod( 6) = "2260001060" + eqpcod( 7) = "2265001010" + eqpcod( 8) = "2265001020" + eqpcod( 9) = "2265001030" + eqpcod( 10) = "2265001040" + eqpcod( 11) = "2265001050" + eqpcod( 12) = "2265001060" + eqpcod( 13) = "2267001010" + eqpcod( 14) = "2267001020" + eqpcod( 15) = "2267001030" + eqpcod( 16) = "2267001040" + eqpcod( 17) = "2267001050" + eqpcod( 18) = "2267001060" + eqpcod( 19) = "2268001010" + eqpcod( 20) = "2268001020" + eqpcod( 21) = "2268001030" + eqpcod( 22) = "2268001040" + eqpcod( 23) = "2268001050" + eqpcod( 24) = "2268001060" + eqpcod( 25) = "2270001010" + eqpcod( 26) = "2270001020" + eqpcod( 27) = "2270001030" + eqpcod( 28) = "2270001040" + eqpcod( 29) = "2270001050" + eqpcod( 30) = "2270001060" +c +c --- Construction and Mining Equipment --- +c + eqpcod( 31) = "2260002003" + eqpcod( 32) = "2260002006" + eqpcod( 33) = "2260002009" + eqpcod( 34) = "2260002015" + eqpcod( 35) = "2260002018" + eqpcod( 36) = "2260002021" + eqpcod( 37) = "2260002024" + eqpcod( 38) = "2260002027" + eqpcod( 39) = "2260002030" + eqpcod( 40) = "2260002033" + eqpcod( 41) = "2260002036" + eqpcod( 42) = "2260002039" + eqpcod( 43) = "2260002042" + eqpcod( 44) = "2260002045" + eqpcod( 45) = "2260002048" + eqpcod( 46) = "2260002051" + eqpcod( 47) = "2260002054" + eqpcod( 48) = "2260002057" + eqpcod( 49) = "2260002060" + eqpcod( 50) = "2260002063" + eqpcod( 51) = "2260002066" + eqpcod( 52) = "2260002069" + eqpcod( 53) = "2260002072" + eqpcod( 54) = "2260002075" + eqpcod( 55) = "2260002078" + eqpcod( 56) = "2260002081" + eqpcod( 57) = "2265002003" + eqpcod( 58) = "2265002006" + eqpcod( 59) = "2265002009" + eqpcod( 60) = "2265002015" + eqpcod( 61) = "2265002018" + eqpcod( 62) = "2265002021" + eqpcod( 63) = "2265002024" + eqpcod( 64) = "2265002027" + eqpcod( 65) = "2265002030" + eqpcod( 66) = "2265002033" + eqpcod( 67) = "2265002036" + eqpcod( 68) = "2265002039" + eqpcod( 69) = "2265002042" + eqpcod( 70) = "2265002045" + eqpcod( 71) = "2265002048" + eqpcod( 72) = "2265002051" + eqpcod( 73) = "2265002054" + eqpcod( 74) = "2265002057" + eqpcod( 75) = "2265002060" + eqpcod( 76) = "2265002063" + eqpcod( 77) = "2265002066" + eqpcod( 78) = "2265002069" + eqpcod( 79) = "2265002072" + eqpcod( 80) = "2265002075" + eqpcod( 81) = "2265002078" + eqpcod( 82) = "2265002081" + eqpcod( 83) = "2267002003" + eqpcod( 84) = "2267002006" + eqpcod( 85) = "2267002009" + eqpcod( 86) = "2267002015" + eqpcod( 87) = "2267002018" + eqpcod( 88) = "2267002021" + eqpcod( 89) = "2267002024" + eqpcod( 90) = "2267002027" + eqpcod( 91) = "2267002030" + eqpcod( 92) = "2267002033" + eqpcod( 93) = "2267002036" + eqpcod( 94) = "2267002039" + eqpcod( 95) = "2267002042" + eqpcod( 96) = "2267002045" + eqpcod( 97) = "2267002048" + eqpcod( 98) = "2267002051" + eqpcod( 99) = "2267002054" + eqpcod( 100) = "2267002057" + eqpcod( 101) = "2267002060" + eqpcod( 102) = "2267002063" + eqpcod( 103) = "2267002066" + eqpcod( 104) = "2267002069" + eqpcod( 105) = "2267002072" + eqpcod( 106) = "2267002075" + eqpcod( 107) = "2267002078" + eqpcod( 108) = "2267002081" + eqpcod( 109) = "2268002003" + eqpcod( 110) = "2268002006" + eqpcod( 111) = "2268002009" + eqpcod( 112) = "2268002015" + eqpcod( 113) = "2268002018" + eqpcod( 114) = "2268002021" + eqpcod( 115) = "2268002024" + eqpcod( 116) = "2268002027" + eqpcod( 117) = "2268002030" + eqpcod( 118) = "2268002033" + eqpcod( 119) = "2268002036" + eqpcod( 120) = "2268002039" + eqpcod( 121) = "2268002042" + eqpcod( 122) = "2268002045" + eqpcod( 123) = "2268002048" + eqpcod( 124) = "2268002051" + eqpcod( 125) = "2268002054" + eqpcod( 126) = "2268002057" + eqpcod( 127) = "2268002060" + eqpcod( 128) = "2268002063" + eqpcod( 129) = "2268002066" + eqpcod( 130) = "2268002069" + eqpcod( 131) = "2268002072" + eqpcod( 132) = "2268002075" + eqpcod( 133) = "2268002078" + eqpcod( 134) = "2268002081" + eqpcod( 135) = "2270002003" + eqpcod( 136) = "2270002006" + eqpcod( 137) = "2270002009" + eqpcod( 138) = "2270002015" + eqpcod( 139) = "2270002018" + eqpcod( 140) = "2270002021" + eqpcod( 141) = "2270002024" + eqpcod( 142) = "2270002027" + eqpcod( 143) = "2270002030" + eqpcod( 144) = "2270002033" + eqpcod( 145) = "2270002036" + eqpcod( 146) = "2270002039" + eqpcod( 147) = "2270002042" + eqpcod( 148) = "2270002045" + eqpcod( 149) = "2270002048" + eqpcod( 150) = "2270002051" + eqpcod( 151) = "2270002054" + eqpcod( 152) = "2270002057" + eqpcod( 153) = "2270002060" + eqpcod( 154) = "2270002063" + eqpcod( 155) = "2270002066" + eqpcod( 156) = "2270002069" + eqpcod( 157) = "2270002072" + eqpcod( 158) = "2270002075" + eqpcod( 159) = "2270002078" + eqpcod( 160) = "2270002081" +c +c --- Industrial Equipment --- +c + eqpcod( 161) = "2260003010" + eqpcod( 162) = "2260003020" + eqpcod( 163) = "2260003030" + eqpcod( 164) = "2260003040" + eqpcod( 165) = "2260003050" + eqpcod( 166) = "2260003060" + eqpcod( 167) = "2260003070" + eqpcod( 168) = "2265003010" + eqpcod( 169) = "2265003020" + eqpcod( 170) = "2265003030" + eqpcod( 171) = "2265003040" + eqpcod( 172) = "2265003050" + eqpcod( 173) = "2265003060" + eqpcod( 174) = "2265003070" + eqpcod( 175) = "2267003010" + eqpcod( 176) = "2267003020" + eqpcod( 177) = "2267003030" + eqpcod( 178) = "2267003040" + eqpcod( 179) = "2267003050" + eqpcod( 180) = "2267003060" + eqpcod( 181) = "2267003070" + eqpcod( 182) = "2268003010" + eqpcod( 183) = "2268003020" + eqpcod( 184) = "2268003030" + eqpcod( 185) = "2268003040" + eqpcod( 186) = "2268003050" + eqpcod( 187) = "2268003060" + eqpcod( 188) = "2268003070" + eqpcod( 189) = "2270003010" + eqpcod( 190) = "2270003020" + eqpcod( 191) = "2270003030" + eqpcod( 192) = "2270003040" + eqpcod( 193) = "2270003050" + eqpcod( 194) = "2270003060" + eqpcod( 195) = "2270003070" +c +c --- Lawn and Garden Equipment --- +c + eqpcod( 196) = "2260004010" + eqpcod( 197) = "2260004011" + eqpcod( 198) = "2260004015" + eqpcod( 199) = "2260004016" + eqpcod( 200) = "2260004020" + eqpcod( 201) = "2260004021" + eqpcod( 202) = "2260004025" + eqpcod( 203) = "2260004026" + eqpcod( 204) = "2260004030" + eqpcod( 205) = "2260004031" + eqpcod( 206) = "2260004035" + eqpcod( 207) = "2260004036" + eqpcod( 208) = "2260004040" + eqpcod( 209) = "2260004041" + eqpcod( 210) = "2260004045" + eqpcod( 211) = "2260004046" + eqpcod( 212) = "2260004050" + eqpcod( 213) = "2260004051" + eqpcod( 214) = "2260004055" + eqpcod( 215) = "2260004056" + eqpcod( 216) = "2260004060" + eqpcod( 217) = "2260004061" + eqpcod( 218) = "2260004065" + eqpcod( 219) = "2260004066" + eqpcod( 220) = "2260004071" + eqpcod( 221) = "2260004075" + eqpcod( 222) = "2260004076" + eqpcod( 223) = "2265004010" + eqpcod( 224) = "2265004011" + eqpcod( 225) = "2265004015" + eqpcod( 226) = "2265004016" + eqpcod( 227) = "2265004020" + eqpcod( 228) = "2265004021" + eqpcod( 229) = "2265004025" + eqpcod( 230) = "2265004026" + eqpcod( 231) = "2265004030" + eqpcod( 232) = "2265004031" + eqpcod( 233) = "2265004035" + eqpcod( 234) = "2265004036" + eqpcod( 235) = "2265004040" + eqpcod( 236) = "2265004041" + eqpcod( 237) = "2265004045" + eqpcod( 238) = "2265004046" + eqpcod( 239) = "2265004050" + eqpcod( 240) = "2265004051" + eqpcod( 241) = "2265004055" + eqpcod( 242) = "2265004056" + eqpcod( 243) = "2265004060" + eqpcod( 244) = "2265004061" + eqpcod( 245) = "2265004065" + eqpcod( 246) = "2265004066" + eqpcod( 247) = "2265004071" + eqpcod( 248) = "2265004075" + eqpcod( 249) = "2265004076" + eqpcod( 250) = "2267004010" + eqpcod( 251) = "2267004011" + eqpcod( 252) = "2267004015" + eqpcod( 253) = "2267004016" + eqpcod( 254) = "2267004020" + eqpcod( 255) = "2267004021" + eqpcod( 256) = "2267004025" + eqpcod( 257) = "2267004026" + eqpcod( 258) = "2267004030" + eqpcod( 259) = "2267004031" + eqpcod( 260) = "2267004035" + eqpcod( 261) = "2267004036" + eqpcod( 262) = "2267004040" + eqpcod( 263) = "2267004041" + eqpcod( 264) = "2267004045" + eqpcod( 265) = "2267004046" + eqpcod( 266) = "2267004050" + eqpcod( 267) = "2267004051" + eqpcod( 268) = "2267004055" + eqpcod( 269) = "2267004056" + eqpcod( 270) = "2267004060" + eqpcod( 271) = "2267004061" + eqpcod( 272) = "2267004065" + eqpcod( 273) = "2267004066" + eqpcod( 274) = "2267004071" + eqpcod( 275) = "2267004075" + eqpcod( 276) = "2267004076" + eqpcod( 277) = "2268004010" + eqpcod( 278) = "2268004011" + eqpcod( 279) = "2268004015" + eqpcod( 280) = "2268004016" + eqpcod( 281) = "2268004020" + eqpcod( 282) = "2268004021" + eqpcod( 283) = "2268004025" + eqpcod( 284) = "2268004026" + eqpcod( 285) = "2268004030" + eqpcod( 286) = "2268004031" + eqpcod( 287) = "2268004035" + eqpcod( 288) = "2268004036" + eqpcod( 289) = "2268004040" + eqpcod( 290) = "2268004041" + eqpcod( 291) = "2268004045" + eqpcod( 292) = "2268004046" + eqpcod( 293) = "2268004050" + eqpcod( 294) = "2268004051" + eqpcod( 295) = "2268004055" + eqpcod( 296) = "2268004056" + eqpcod( 297) = "2268004060" + eqpcod( 298) = "2268004061" + eqpcod( 299) = "2268004065" + eqpcod( 300) = "2268004066" + eqpcod( 301) = "2268004071" + eqpcod( 302) = "2268004075" + eqpcod( 303) = "2268004076" + eqpcod( 304) = "2270004010" + eqpcod( 305) = "2270004011" + eqpcod( 306) = "2270004015" + eqpcod( 307) = "2270004016" + eqpcod( 308) = "2270004020" + eqpcod( 309) = "2270004021" + eqpcod( 310) = "2270004025" + eqpcod( 311) = "2270004026" + eqpcod( 312) = "2270004030" + eqpcod( 313) = "2270004031" + eqpcod( 314) = "2270004035" + eqpcod( 315) = "2270004036" + eqpcod( 316) = "2270004040" + eqpcod( 317) = "2270004041" + eqpcod( 318) = "2270004045" + eqpcod( 319) = "2270004046" + eqpcod( 320) = "2270004050" + eqpcod( 321) = "2270004051" + eqpcod( 322) = "2270004055" + eqpcod( 323) = "2270004056" + eqpcod( 324) = "2270004060" + eqpcod( 325) = "2270004061" + eqpcod( 326) = "2270004065" + eqpcod( 327) = "2270004066" + eqpcod( 328) = "2270004071" + eqpcod( 329) = "2270004075" + eqpcod( 330) = "2270004076" +c +c --- Agricultural Equipment --- +c + eqpcod( 331) = "2260005010" + eqpcod( 332) = "2260005015" + eqpcod( 333) = "2260005020" + eqpcod( 334) = "2260005025" + eqpcod( 335) = "2260005030" + eqpcod( 336) = "2260005035" + eqpcod( 337) = "2260005040" + eqpcod( 338) = "2260005045" + eqpcod( 339) = "2260005055" + eqpcod( 340) = "2260005060" + eqpcod( 341) = "2265005010" + eqpcod( 342) = "2265005015" + eqpcod( 343) = "2265005020" + eqpcod( 344) = "2265005025" + eqpcod( 345) = "2265005030" + eqpcod( 346) = "2265005035" + eqpcod( 347) = "2265005040" + eqpcod( 348) = "2265005045" + eqpcod( 349) = "2265005055" + eqpcod( 350) = "2265005060" + eqpcod( 351) = "2267005010" + eqpcod( 352) = "2267005015" + eqpcod( 353) = "2267005020" + eqpcod( 354) = "2267005025" + eqpcod( 355) = "2267005030" + eqpcod( 356) = "2267005035" + eqpcod( 357) = "2267005040" + eqpcod( 358) = "2267005045" + eqpcod( 359) = "2267005055" + eqpcod( 360) = "2267005060" + eqpcod( 361) = "2268005010" + eqpcod( 362) = "2268005015" + eqpcod( 363) = "2268005020" + eqpcod( 364) = "2268005025" + eqpcod( 365) = "2268005030" + eqpcod( 366) = "2268005035" + eqpcod( 367) = "2268005040" + eqpcod( 368) = "2268005045" + eqpcod( 369) = "2268005055" + eqpcod( 370) = "2268005060" + eqpcod( 371) = "2270005010" + eqpcod( 372) = "2270005015" + eqpcod( 373) = "2270005020" + eqpcod( 374) = "2270005025" + eqpcod( 375) = "2270005030" + eqpcod( 376) = "2270005035" + eqpcod( 377) = "2270005040" + eqpcod( 378) = "2270005045" + eqpcod( 379) = "2270005055" + eqpcod( 380) = "2270005060" +c +c --- Commercial Equipment --- +c + eqpcod( 381) = "2260006005" + eqpcod( 382) = "2260006010" + eqpcod( 383) = "2260006015" + eqpcod( 384) = "2260006020" + eqpcod( 385) = "2260006025" + eqpcod( 386) = "2260006030" + eqpcod( 387) = "2260006035" + eqpcod( 388) = "2265006005" + eqpcod( 389) = "2265006010" + eqpcod( 390) = "2265006015" + eqpcod( 391) = "2265006020" + eqpcod( 392) = "2265006025" + eqpcod( 393) = "2265006030" + eqpcod( 394) = "2265006035" + eqpcod( 395) = "2267006005" + eqpcod( 396) = "2267006010" + eqpcod( 397) = "2267006015" + eqpcod( 398) = "2267006020" + eqpcod( 399) = "2267006025" + eqpcod( 400) = "2267006030" + eqpcod( 401) = "2267006035" + eqpcod( 402) = "2268006005" + eqpcod( 403) = "2268006010" + eqpcod( 404) = "2268006015" + eqpcod( 405) = "2268006020" + eqpcod( 406) = "2268006025" + eqpcod( 407) = "2268006030" + eqpcod( 408) = "2268006035" + eqpcod( 409) = "2270006005" + eqpcod( 410) = "2270006010" + eqpcod( 411) = "2270006015" + eqpcod( 412) = "2270006020" + eqpcod( 413) = "2270006025" + eqpcod( 414) = "2270006030" + eqpcod( 415) = "2270006035" +c +c --- Logging Equipment --- +c + eqpcod( 416) = "2260007005" + eqpcod( 417) = "2260007010" + eqpcod( 418) = "2260007015" + eqpcod( 419) = "2265007005" + eqpcod( 420) = "2265007010" + eqpcod( 421) = "2265007015" + eqpcod( 422) = "2267007005" + eqpcod( 423) = "2267007010" + eqpcod( 424) = "2267007015" + eqpcod( 425) = "2268007005" + eqpcod( 426) = "2268007010" + eqpcod( 427) = "2268007015" + eqpcod( 428) = "2270007005" + eqpcod( 429) = "2270007010" + eqpcod( 430) = "2270007015" +c +c --- Airport Ground Support Equipment --- +c + eqpcod( 431) = "2260008005" +c + eqpcod( 432) = "2265008005" + eqpcod( 433) = "2265008010" + eqpcod( 434) = "2265008015" + eqpcod( 435) = "2265008020" + eqpcod( 436) = "2265008025" + eqpcod( 437) = "2265008030" + eqpcod( 438) = "2265008035" + eqpcod( 439) = "2265008040" + eqpcod( 440) = "2265008045" + eqpcod( 441) = "2265008050" + eqpcod( 442) = "2265008055" + eqpcod( 443) = "2265008060" + eqpcod( 444) = "2265008065" + eqpcod( 445) = "2265008070" + eqpcod( 446) = "2265008075" + eqpcod( 447) = "2265008080" + eqpcod( 448) = "2265008085" + eqpcod( 449) = "2265008090" + eqpcod( 450) = "2265008095" + eqpcod( 451) = "2265008100" + eqpcod( 452) = "2265008101" + eqpcod( 453) = "2265008102" + eqpcod( 454) = "2265008103" + eqpcod( 455) = "2265008104" + eqpcod( 456) = "2265008105" + eqpcod( 457) = "2265008106" + eqpcod( 458) = "2265008107" + eqpcod( 459) = "2265008108" + eqpcod( 460) = "2265008109" + eqpcod( 461) = "2265008110" + eqpcod( 462) = "2265008111" +c + eqpcod( 463) = "2267008005" + eqpcod( 464) = "2267008010" + eqpcod( 465) = "2267008015" + eqpcod( 466) = "2267008020" + eqpcod( 467) = "2267008025" + eqpcod( 468) = "2267008030" + eqpcod( 469) = "2267008035" + eqpcod( 470) = "2267008040" + eqpcod( 471) = "2267008045" + eqpcod( 472) = "2267008050" + eqpcod( 473) = "2267008055" + eqpcod( 474) = "2267008060" + eqpcod( 475) = "2267008065" + eqpcod( 476) = "2267008070" + eqpcod( 477) = "2267008075" + eqpcod( 478) = "2267008080" + eqpcod( 479) = "2267008085" + eqpcod( 480) = "2267008090" + eqpcod( 481) = "2267008095" + eqpcod( 482) = "2267008100" + eqpcod( 483) = "2267008101" + eqpcod( 484) = "2267008102" + eqpcod( 485) = "2267008103" + eqpcod( 486) = "2267008104" + eqpcod( 487) = "2267008105" + eqpcod( 488) = "2267008106" + eqpcod( 489) = "2267008107" + eqpcod( 490) = "2267008108" + eqpcod( 491) = "2267008109" + eqpcod( 492) = "2267008110" + eqpcod( 493) = "2267008111" +c + eqpcod( 494) = "2268008005" +c + eqpcod( 495) = "2270008005" + eqpcod( 496) = "2270008010" + eqpcod( 497) = "2270008015" + eqpcod( 498) = "2270008020" + eqpcod( 499) = "2270008025" + eqpcod( 500) = "2270008030" + eqpcod( 501) = "2270008035" + eqpcod( 502) = "2270008040" + eqpcod( 503) = "2270008045" + eqpcod( 504) = "2270008050" + eqpcod( 505) = "2270008055" + eqpcod( 506) = "2270008060" + eqpcod( 507) = "2270008065" + eqpcod( 508) = "2270008070" + eqpcod( 509) = "2270008075" + eqpcod( 510) = "2270008080" + eqpcod( 511) = "2270008085" + eqpcod( 512) = "2270008090" + eqpcod( 513) = "2270008095" + eqpcod( 514) = "2270008100" + eqpcod( 515) = "2270008101" + eqpcod( 516) = "2270008102" + eqpcod( 517) = "2270008103" + eqpcod( 518) = "2270008104" + eqpcod( 519) = "2270008105" + eqpcod( 520) = "2270008106" + eqpcod( 521) = "2270008107" + eqpcod( 522) = "2270008108" + eqpcod( 523) = "2270008109" + eqpcod( 524) = "2270008110" + eqpcod( 525) = "2270008111" +c +c --- Other Underground Mining Equipment --- +c + eqpcod( 526) = "2260009010" + eqpcod( 527) = "2265009010" + eqpcod( 528) = "2267009010" + eqpcod( 529) = "2268009010" + eqpcod( 530) = "2270009010" +c +c --- Other Oil Field Equipment --- +c + eqpcod( 531) = "2260010010" + eqpcod( 532) = "2265010010" + eqpcod( 533) = "2267010010" + eqpcod( 534) = "2268010010" + eqpcod( 535) = "2270010010" +c +c --- Marine Vessels --- +c + eqpcod( 536) = "2280001010" + eqpcod( 537) = "2280001020" + eqpcod( 538) = "2280001030" + eqpcod( 539) = "2280001040" + eqpcod( 540) = "2280002010" + eqpcod( 541) = "2280002020" + eqpcod( 542) = "2280002030" + eqpcod( 543) = "2280002040" + eqpcod( 544) = "2280003010" + eqpcod( 545) = "2280003020" + eqpcod( 546) = "2280003030" + eqpcod( 547) = "2280003040" + eqpcod( 548) = "2280004010" + eqpcod( 549) = "2280004020" + eqpcod( 550) = "2280004030" + eqpcod( 551) = "2280004040" +c +c --- Pleasure Craft --- +c + eqpcod( 552) = "2282005010" + eqpcod( 553) = "2282005015" + eqpcod( 554) = "2282010005" + eqpcod( 555) = "2282020005" + eqpcod( 556) = "2282020010" + eqpcod( 557) = "2282020025" +c +c --- Railroad Locomotives --- +c + eqpcod( 558) = "2285002015" + eqpcod( 559) = "2285003015" + eqpcod( 560) = "2285004015" + eqpcod( 561) = "2285006015" + eqpcod( 562) = "2285008015" +c +c --- return to calling return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/initrtrft.f b/NONROAD/NR08a/SOURCE/initrtrft.f new file mode 100644 index 0000000..3eadc2b --- /dev/null +++ b/NONROAD/NR08a/SOURCE/initrtrft.f @@ -0,0 +1,81 @@ +C**** INITRTRFT +c + subroutine initrtrft() +c +c----------------------------------------------------------------------- +c +c Initializes the fixed arrays that are used for retrofit +c functionality, such as input-validation lookup arrays. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/26/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- Initialize retrofit-record arrays --- +c + rtrftcount = 0 + do i = 1, MXRTRFT + rtrftryst(i) = 0 + rtrftryen(i) = 0 + rtrftmyst(i) = 0 + rtrftmyen(i) = 0 + rtrftscc(i) = ' ' + rtrfttechtype(i) = ' ' + rtrfthpmn(i) = 0. + rtrfthpmx(i) = 0. + rtrftannualfracorn(i) = 0. + rtrfteffect(i) = 0. + rtrftpollutant(i) = ' ' + rtrftplltntidx(i) = 0 + rtrftid(i) = 0 + end do +c +c --- Pollutants that are allowed for retrofit records --- +c + rtrftplltnt(1) = 'HC' + rtrftplltnt(2) = 'CO' + rtrftplltnt(3) = 'NOX' + rtrftplltnt(4) = 'PM' +c +c --- Map from index into rtrftplltnt to pollutant index +c for the pollutants that are allowed for retrofit records --- +c + rtrftplltntidxmp(1) = IDXTHC + rtrftplltntidxmp(2) = IDXCO + rtrftplltntidxmp(3) = IDXNOX + rtrftplltntidxmp(4) = IDXPM +c +c --- Intitialize pollutant reduction fractions to 0 --- +c + do i = 1, MXPOL + rtrftplltntrdfrc(i) = 0. + end do +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/intadj.f b/NONROAD/NR08a/SOURCE/intadj.f new file mode 100644 index 0000000..5ca7f2d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/intadj.f @@ -0,0 +1,141 @@ +C**** INTADJ +c + subroutine intadj( ) +c +c----------------------------------------------------------------------- +c +c This routine intializes the common variables used for the various +c emission adjustment factors. +c Argument description: +c Outputs: +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/10/97 --gmw-- original development +c 09/22/04 --dfk-- SOXFUL(IDXDSM) initialization (commented out +c with NR04n2 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdusr.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxbeg, idxend +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + idxbeg = 1 + idxend = 2 +c +c --- initialize the local arrays for sulfur content --- +c + soxbas(IDXGS2) = SWTGS2 + soxbas(IDXGS4) = SWTGS4 + soxbas(IDXLPG) = SWTLPG + soxbas(IDXCNG) = SWTCNG + soxbas(IDXDSL) = SWTDSL +c + soxfrc(IDXGS2) = SFCGS2 + soxfrc(IDXGS4) = SFCGS4 + soxfrc(IDXLPG) = SFCLPG + soxfrc(IDXCNG) = SFCCNG + soxfrc(IDXDSL) = SFCDSL +c + soxful(IDXGS2) = soxgas + soxful(IDXGS4) = soxgas + soxful(IDXLPG) = soxcng + soxful(IDXCNG) = soxcng + soxful(IDXDSL) = soxdsl +c soxful(IDXDSM) = soxdsm +c + altfac(IDXGS2) = ALTGS2 + altfac(IDXGS4) = ALTGS4 + altfac(IDXLPG) = ALTLPG + altfac(IDXCNG) = ALTCNG + altfac(IDXDSL) = ALTDSL +c + iyrbin(IDXSUM,1,idxbeg) = 1995 + iyrbin(IDXSUM,1,idxend) = 1996 + rfggs2(IDXSUM,1,IDXTHC) = 1.0 + rfggs2(IDXSUM,1,IDXCO) = 1.0 + rfggs2(IDXSUM,1,IDXNOX) = 1.0 + rfggs2(IDXSUM,1,IDXSOX) = 1.0 + rfggs2(IDXSUM,1,IDXPM) = 1.0 + rfggs4(IDXSUM,1,IDXTHC) = 1.0 + rfggs4(IDXSUM,1,IDXCO) = 1.0 + rfggs4(IDXSUM,1,IDXNOX) = 1.0 + rfggs4(IDXSUM,1,IDXSOX) = 1.0 + rfggs4(IDXSUM,1,IDXPM) = 1.0 +c + iyrbin(IDXSUM,2,idxbeg) = 1997 + iyrbin(IDXSUM,2,idxend) = 1999 + rfggs2(IDXSUM,2,IDXTHC) = 1.0 + rfggs2(IDXSUM,2,IDXCO) = 1.0 + rfggs2(IDXSUM,2,IDXNOX) = 1.0 + rfggs2(IDXSUM,2,IDXSOX) = 1.0 + rfggs2(IDXSUM,2,IDXPM) = 1.0 + rfggs4(IDXSUM,2,IDXTHC) = 1.0 + rfggs4(IDXSUM,2,IDXCO) = 1.0 + rfggs4(IDXSUM,2,IDXNOX) = 1.0 + rfggs4(IDXSUM,2,IDXSOX) = 1.0 + rfggs4(IDXSUM,2,IDXPM) = 1.0 +c + iyrbin(IDXSUM,3,idxbeg) = 2000 + iyrbin(IDXSUM,3,idxend) = 9999 + rfggs2(IDXSUM,3,IDXTHC) = 1.0 + rfggs2(IDXSUM,3,IDXCO) = 1.0 + rfggs2(IDXSUM,3,IDXNOX) = 1.0 + rfggs2(IDXSUM,3,IDXSOX) = 1.0 + rfggs2(IDXSUM,3,IDXPM) = 1.0 + rfggs4(IDXSUM,3,IDXTHC) = 1.0 + rfggs4(IDXSUM,3,IDXCO) = 1.0 + rfggs4(IDXSUM,3,IDXNOX) = 1.0 + rfggs4(IDXSUM,3,IDXSOX) = 1.0 + rfggs4(IDXSUM,3,IDXPM) = 1.0 +c + iyrbin(IDXWTR,1,idxbeg) = 1995 + iyrbin(IDXWTR,1,idxend) = 1996 + rfggs2(IDXWTR,3,IDXTHC) = 1.0 + rfggs2(IDXWTR,3,IDXCO) = 1.0 + rfggs2(IDXWTR,3,IDXNOX) = 1.0 + rfggs2(IDXWTR,3,IDXSOX) = 1.0 + rfggs2(IDXWTR,3,IDXPM) = 1.0 + rfggs4(IDXWTR,3,IDXTHC) = 1.0 + rfggs4(IDXWTR,3,IDXCO) = 1.0 + rfggs4(IDXWTR,3,IDXNOX) = 1.0 + rfggs4(IDXWTR,3,IDXSOX) = 1.0 + rfggs4(IDXWTR,3,IDXPM) = 1.0 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/intams.f b/NONROAD/NR08a/SOURCE/intams.f new file mode 100644 index 0000000..c149e4a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/intams.f @@ -0,0 +1,134 @@ +C**** INTAMS +c + subroutine intams( ) +c +c----------------------------------------------------------------------- +c +c subroutine to perform all initializaton of the EPS2 AMS file +c parameters for the NONROAD model +c +c Argument description: +c Outputs: +c ierr I error code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/07/97 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 nodays(12) +c +c----------------------------------------------------------------------- +c Data statments: +c----------------------------------------------------------------------- +c + data nodays /31,28,31,30,31,30,31,31,30,31,30,31/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set some variables to defaults --- +c + itype = 'B' + inetyp = 'AC' +c +c --- set some variables that depend on user supplied parameters --- +c + irefyr = MOD(iepyr,100) + ibasyr = irefyr + + cvtams = 1.0 + iperod = 'S' + if( iprtyp .EQ. IDXANN ) then + iperod = ' ' + if( ismtyp .EQ. IDXTYP) cvtams = 365.0 + ibegdt = irefyr*1000000 + 010100 + ienddt = irefyr*1000000 + 123124 + if ( ismtyp .EQ. IDXTYP ) goto 6000 + else if( iprtyp .EQ. IDXSES ) then + if( ismtyp .EQ. IDXTYP) cvtams = 91.21 + if( iseasn .EQ. IDXWTR ) then + ibegdt = (irefyr-1)*1000000 + 120100 + ienddt = irefyr*1000000 + 022824 + else if( iseasn .EQ. IDXSPR ) then + ibegdt = irefyr*1000000 + 030100 + ienddt = irefyr*1000000 + 053124 + else if( iseasn .EQ. IDXSUM ) then + ibegdt = irefyr*1000000 + 060100 + ienddt = irefyr*1000000 + 083124 + else if( iseasn .EQ. IDXFAL ) then + ibegdt = irefyr*1000000 + 090100 + ienddt = irefyr*1000000 + 113024 + endif + if ( ismtyp .EQ. IDXTYP ) then + if ( iseasn .EQ. IDXSUM .OR. iseasn .EQ. IDXWTR ) then + cvtams = 1.0 + if ( iseasn .EQ. IDXSUM ) iperod = 'PO' + if ( iseasn .EQ. IDXWTR ) iperod = 'PC' + else + goto 6000 + endif + endif + else if( iprtyp .EQ. IDXMTH ) then + if( ismtyp .EQ. IDXTYP) cvtams = FLOAT( nodays(imonth) ) + ibegdt = irefyr*1000000 + imonth*10000 + 100 + ienddt = irefyr*1000000 + imonth*10000 + + & nodays(imonth)*100 + 24 + if ( ismtyp .EQ. IDXTYP ) goto 6000 + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Warning messages: +c----------------------------------------------------------------------- +c + 6000 continue + write(IOWMSG,'(/,1X,A/,A/,A,A)',ERR=9999) + & 'WARNING: The output EPS file contains period total emissions.', + & ' This does NOT correspond to the user specified ', + & ' typical day emissions written to the NONROAD ', + & 'output file.' + + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/intnon.f b/NONROAD/NR08a/SOURCE/intnon.f new file mode 100644 index 0000000..04885b5 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/intnon.f @@ -0,0 +1,307 @@ +C**** INTNON + subroutine intnon( ierr ) +c +c----------------------------------------------------------------------- +c +c Subroutine to perform initializaton for the nonroad model. +c +c Argument description: +c Outputs: +c ierr I error code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/07/95 --djk-- original development +c 07/22/96 --jlf-- added reading of technology fractions +c 10/29/01 2 --charvey-- added reading of alt base sulfur +c 05/10/04 --dfk-- added reading of evap tech groups +c 06/15/04 --dfk-- added reading of optional daily temperatures/RVPs +c 01/12/05 --dfk-- removed restriction that annual period can +c only be used with optional daily temp/RVP +c 04/25/05 --cimulus-- added call to rdfips to read the FIPS.dat +c list of counties just after the PERIOD packet +c is read but before the REGION packet is read. +c 05/16/05 --cimulus-- added call to rdrtrft to read the retrofit +c input data, after all other input files are +c read, due to retrofit input validation +c dependencies +c 07/21/05 --cimulus-- commented error block with label that was +c only referenced in commented code +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdalo.inc' + include 'nonrdusr.inc' +c +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 jerr +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set the error code ---- +c + ierr = IFAIL +c +c --- call routine to read the /OPTIONS/ packet ---- +c + call rdnropt(jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the /PERIOD/ packet ---- +c + call rdnrper(jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- read the list of counties from a default file or the file +c specified by the options file --- +c + call rdfips( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the /REGION/ packet ---- +c + call rdnrreg(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the /SOURCE CATEGORY/ packet ---- +c + call rdnrsrc(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to open the emission factor files --- +c + call opnefc( jerr ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- call routine to read the spatial allocation coefficients --- +c + call rdalo(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the spatial indicator data and +c create the sorted file --- +c + call rdind( jerr ) + if( jerr .EQ. IEOF ) goto 7001 + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the growth indicator data and create +c the sorted growth indicator file --- +c + call rdgrow( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the /STAGE II/ packet ---- +c + call rdstg2(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the /PM BASE SULFUR/ packet ---- +c + call rdsulf(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to echo the inputs to message file --- +c + call wrtmsg( jerr ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- call routine to read the regions definition file ---- +c + call rdrgndf(jerr) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the activity data --- +c + call rdact( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read all of the population data and create the +c sorted file ---- +c + call rdpop(jerr) + if( jerr .EQ. IEOF ) goto 7000 + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the emission factor files --- +c + call rdefls( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the BSFC file --- +c + call rdbsfc( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the seasonality files ---- +c + call rdseas( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read the exhaust technology fraction file ---- +c could be a MOVES style file --- +c + call rdtech( jerr ) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + if( jerr .EQ. ISKIP ) then + call rdtech_moves( jerr ) + if( jerr .EQ. IFAIL ) goto 9999 + if( jerr .EQ. ISKIP ) goto 7003 + endif + call spinit() +c +c --- call routine to read the evap technology fraction file ---- +c + call rdevtech( jerr ) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + if( jerr .EQ. ISKIP ) then + call rdevtech_moves( jerr ) + if( jerr .EQ. IFAIL ) goto 9999 + if( jerr .EQ. ISKIP ) goto 7004 + endif + call spinit() +c +c --- call routine to initialize the adjustment factor variables --- +c + call intadj() + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to initialize the optional daily temperatures/RVPs --- +c --- option only allowed if annual period is selected --- +c + if(ldayfl) then +c if(iprtyp .NE. IDXANN) goto 7002 + call rdday( jerr, IORDAY, dayfl) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + end if +c +c --- call routine to read the optional retrofit file +c done after all other input files read, since the retrofit input +c validation depends on some of the data read from other files ---- +c + if( lrtrftfl ) then + call rdrtrft( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + endif +c +c --- set error code and return successuflly --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A,/,1X,A)',ERR=9999) 'ERROR: Could not ', + & 'find any population data for the regions ', + & ' and equipment types requested.' + write(IOWSTD,'(9X,A,/9X,A)',ERR=9999) + & 'Make sure the population files are for the region', + & 'specified in the /REGION/ packet.' + write(IOWMSG,'(/,1X,2A,/,1X,A)',ERR=9999) 'ERROR: Could not ', + & 'find any population data for the regions ', + & ' and equipment types requested.' + write(IOWMSG,'(9X,A,/9X,A)',ERR=9999) + & 'Make sure the population files are for the region', + & 'specified in the /REGION/ packet.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'spatial allocation indicator data for the regions ', + & 'and equipment types requested.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'spatial allocation indicator data for the regions ', + & 'and equipment types requested.' + goto 9999 +c +c 7002 continue +c write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Optional annual', +c & ' temperatures specified for non-annual period.' +c write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Optional annual', +c & ' temperatures specified for non-annual period.' +c goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A,/,9X,A)',ERR=9999) + & 'ERROR: Cannot find packet identifier in', + & ' technology fractions file ', + & tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find packet identifier in', + & ' technology fractions file ', + & tchfl(:strmin(tchfl)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,/,9X,A)',ERR=9999) + & 'ERROR: Cannot find packet identifier in', + & ' evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find packet identifier in', + & ' evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/lftjst.f b/NONROAD/NR08a/SOURCE/lftjst.f new file mode 100644 index 0000000..f3c37d8 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/lftjst.f @@ -0,0 +1,89 @@ +C**** LFTJST +c + subroutine lftjst( string ) +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine left justifies a string, .ie. it removes the leading +c blanks. +c +c Arguments: +c +c Inputs/Outputs: (the string argument serves as both input and +c output) +c string C string to left justify +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + character*(*) string +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c BLANK C blank character +c + character*1 BLANK +c + parameter(BLANK=' ') +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c ibeg I first non-blank character of string +c + integer*4 ibeg, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- already left justified so just return ---- +c + if( string(1:1) .NE. BLANK ) goto 9999 +c +c ---- check from beninng of string to end for non-blank ---- +c + do 10 i=1,LEN(string) + if( string(i:i) .NE. BLANK ) then +c +c ---- non-blank character found, return length ---- +c + ibeg = i + goto 111 + endif + 10 continue +c +c ---- string must be all blank, take no action and return ---- +c + goto 9999 +c +c ---- shift all characters to the beginning of string --- +c + 111 continue + do 20 i=1,LEN(string)-ibeg+1 + string(i:i) = string(i+ibeg-1:i+ibeg-1) + string(i+ibeg-1:i+ibeg-1) = BLANK + 20 continue + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/low2up.f b/NONROAD/NR08a/SOURCE/low2up.f new file mode 100644 index 0000000..38018ba --- /dev/null +++ b/NONROAD/NR08a/SOURCE/low2up.f @@ -0,0 +1,58 @@ +C**** LOW2UP +c + subroutine low2up( string ) +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine converts a string from lower case to upper case. +c +c Arguments: +c +c Inputs/Outputs: (the string argument serves as both input and +c output) +c string C string to convert +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + character*(*) string +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idiff, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- check from beninng of string to end for non-blank ---- +c + do 10 i=1,LEN(string) + idiff = ichar( string(i:i) ) - ichar( 'a' ) + if( idiff .GE. 0 .AND. idiff .LE. 26 ) then + string(i:i) = char( ichar( 'A' ) + idiff ) + endif + 10 continue +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/makefile b/NONROAD/NR08a/SOURCE/makefile new file mode 100644 index 0000000..e12b92a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/makefile @@ -0,0 +1,249 @@ +FC = gfortran + +FLGS = -O2 -static + +INC = ./ + +LIBS = + +TARGT = nonroad.exe + +OBJCTS = \ +agedist.o \ +alocty.o \ +alosta.o \ +alosub.o \ +blknon.o \ +chkasc.o \ +chkwrn.o \ +chrsrt.o \ +clcems.o \ +clcevems.o \ +clcrtrft.o \ +clsnon.o \ +cmprrtrft.o \ +cnthpcat.o \ +dayloop.o \ +daymthf.o \ +dispit.o \ +emfclc.o \ +emsadj.o \ +evemfclc.o \ +fndact.o \ +fndasc.o \ +fndchr.o \ +fnddet.o \ +fndefc.o \ +fndevefc.o \ +fndevtch.o \ +fndgxf.o \ +fndhpc.o \ +fndkey.o \ +fndreg.o \ +fndrfm.o \ +fndrtrft.o \ +fndscrp.o \ +fndtch.o \ +fndtpm.o \ +getgrw.o \ +getime.o \ +getind.o \ +getpop.o \ +getscrp.o \ +getsys.o \ +grwfac.o \ +hdrbmy.o \ +in1fip.o \ +in2fip.o \ +in3fip.o \ +in4fip.o \ +in5fip.o \ +iniasc.o \ +initrtrft.o \ +intadj.o \ +intams.o \ +intnon.o \ +lftjst.o \ +low2up.o \ +modyr.o \ +mspinit.o \ +nonroad.o \ +opnefc.o \ +opnnon.o \ +prc1st.o \ +prccty.o \ +prcnat.o \ +prcsta.o \ +prcsub.o \ +prcus.o \ +rdact.o \ +rdalo.o \ +rdalt.o \ +rdbsfc.o \ +rdday.o \ +rddetr.o \ +rdefls.o \ +rdemfc.o \ +rdevemfc.o \ +rdevtech.o \ +rdevtech_moves.o \ +rdfips.o \ +rdgrow.o \ +rdgxrf.o \ +rdind.o \ +rdnropt.o \ +rdnrper.o \ +rdnrreg.o \ +rdnrsrc.o \ +rdpop.o \ +rdrgndf.o \ +rdrtrft.o \ +rdscrp.o \ +rdseas.o \ +rdspil.o \ +rdstg2.o \ +rdsulf.o \ +rdtech.o \ +rdtech_moves.o \ +rgtjst.o \ +rtrftengovrlp.o \ +scrptime.o \ +sitot.o \ +spinit.o \ +srtrtrft.o \ +strlen.o \ +strmin.o \ +swaprtrft.o \ +unitcf.o \ +vldrtrfthp.o \ +vldrtrftrecs.o \ +vldrtrftscc.o \ +vldrtrfttchtyp.o \ +wadeeq.o \ +wrtams.o \ +wrtbmy.o \ +wrtdat.o \ +wrthdr.o \ +wrtmsg.o \ +wrtsi.o \ +wrtsum.o + +nonroad: $(OBJCTS) + $(FC) -o $(TARGT) $(FLGS) $(OBJCTS) $(LIBS) +.f.o : + $(FC) -c -o $@ $(FLGS) $< + +clean: + del nonroad *.o + + +agedist.o : agedist.f $(INC)/nonrdprm.inc +alocty.o : alocty.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +alosta.o : alosta.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +alosub.o : alosub.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +blknon.o : blknon.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +chkasc.o : chkasc.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc +chkwrn.o : chkwrn.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +chrsrt.o : chrsrt.f $(INC)/nonrdprm.inc +clcems.o : clcems.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc $(INC)/nonrdrtrft.inc +clcevems.o : clcevems.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +clcrtrft.o : clcrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdrtrft.inc +clsnon.o : clsnon.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +cmprrtrft.o : cmprrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +cnthpcat.o : cnthpcat.f $(INC)/nonrdprm.inc $(INC)/nonrdeqp.inc +dayloop.o : dayloop.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +daymthf.o : daymthf.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdtpl.inc +dispit.o : dispit.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +emfclc.o : emfclc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +emsadj.o : emsadj.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdio.inc +evemfclc.o : evemfclc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +fndact.o : fndact.f $(INC)/nonrdprm.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdreg.inc $(INC)/nonrdtpl.inc +fnddet.o : fnddet.f $(INC)/nonrdprm.inc $(INC)/nonrdefc.inc +fndefc.o : fndefc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc $(INC)/nonrdefc.inc +fndevefc.o : fndevefc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc $(INC)/nonrdefc.inc +fndevtch.o : fndevtch.f $(INC)/nonrdprm.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +fndgxf.o : fndgxf.f $(INC)/nonrdprm.inc $(INC)/nonrdgrw.inc +fndhpc.o : fndhpc.f $(INC)/nonrdprm.inc $(INC)/nonrdeqp.inc +fndkey.o : fndkey.f $(INC)/nonrdprm.inc +fndreg.o : fndreg.f $(INC)/nonrdprm.inc $(INC)/nonrdreg.inc $(INC)/nonrdtpl.inc +fndrfm.o : fndrfm.f $(INC)/nonrdprm.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +fndrtrft.o : fndrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdrtrft.inc +fndscrp.o : fndscrp.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc +fndtch.o : fndtch.f $(INC)/nonrdprm.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +fndtpm.o : fndtpm.f $(INC)/nonrdprm.inc $(INC)/nonrdtpl.inc $(INC)/nonrdreg.inc +getgrw.o : getgrw.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdgrw.inc $(INC)/nonrdeqp.inc +getime.o : getime.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +getind.o : getind.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +getpop.o : getpop.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +getscrp.o : getscrp.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc +getsys.o : getsys.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +grwfac.o : grwfac.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdgrw.inc $(INC)/nonrdreg.inc +hdrbmy.o : hdrbmy.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +in1fip.o : in1fip.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +in2fip.o : in2fip.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +in3fip.o : in3fip.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +in4fip.o : in4fip.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +in5fip.o : in5fip.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +iniasc.o : iniasc.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +initrtrft.o : initrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +intadj.o : intadj.f $(INC)/nonrdprm.inc $(INC)/nonrdusr.inc $(INC)/nonrdefc.inc +intams.o : intams.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdeqp.inc +intnon.o : intnon.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdalo.inc $(INC)/nonrdusr.inc +modyr.o : modyr.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +mspinit.o : mspinit.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +nonroad.o : nonroad.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +opnefc.o : opnefc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +opnnon.o : opnnon.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +prc1st.o : prc1st.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +prccty.o : prccty.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +prcnat.o : prcnat.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +prcsta.o : prcsta.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +prcsub.o : prcsub.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +prcus.o : prcus.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdalo.inc $(INC)/nonrdgrw.inc $(INC)/nonrdact.inc $(INC)/nonrdusr.inc +rdact.o : rdact.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdact.inc +rdalo.o : rdalo.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdalo.inc +rdalt.o : rdalt.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rdbsfc.o : rdbsfc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdusr.inc +rdday.o : rdday.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdusr.inc +rddetr.o : rddetr.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdusr.inc +rdefls.o : rdefls.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdusr.inc +rdemfc.o : rdemfc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc +rdevemfc.o : rdevemfc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc +rdevtech.o : rdevtech.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rdevtech_moves.o : rdevtech_moves.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rdfips.o : rdfips.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +rdgrow.o : rdgrow.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdgrw.inc $(INC)/nonrdreg.inc +rdgxrf.o : rdgxrf.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdgrw.inc +rdind.o : rdind.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdalo.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +rdnropt.o : rdnropt.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +rdnrper.o : rdnrper.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +rdnrreg.o : rdnrreg.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdreg.inc +rdnrsrc.o : rdnrsrc.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc $(INC)/nonrdtpl.inc +rdpop.o : rdpop.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdreg.inc $(INC)/nonrdusr.inc +rdrgndf.o : rdrgndf.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdtpl.inc +rdrtrft.o : rdrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc $(INC)/nonrdrtrft.inc +rdscrp.o : rdscrp.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rdseas.o : rdseas.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdtpl.inc +rdspil.o : rdspil.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc +rdstg2.o : rdstg2.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +rdsulf.o : rdsulf.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +rdtech.o : rdtech.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rdtech_moves.o : rdtech_moves.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc +rtrftengovrlp.o : rtrftengovrlp.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +scrptime.o : scrptime.f $(INC)/nonrdprm.inc $(INC)/nonrdeqp.inc +sitot.o : sitot.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc +spinit.o : spinit.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +srtrtrft.o : srtrtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +swaprtrft.o : swaprtrft.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +unitcf.o : unitcf.f $(INC)/nonrdprm.inc $(INC)/nonrdefc.inc $(INC)/nonrdact.inc +vldrtrfthp.o : vldrtrfthp.f $(INC)/nonrdprm.inc $(INC)/nonrdeqp.inc +vldrtrftrecs.o : vldrtrftrecs.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdrtrft.inc +vldrtrftscc.o : vldrtrftscc.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +vldrtrfttchtyp.o : vldrtrfttchtyp.f $(INC)/nonrdprm.inc $(INC)/nonrdrtrft.inc +wrtams.o : wrtams.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc $(INC)/nonrdreg.inc +wrtbmy.o : wrtbmy.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +wrtdat.o : wrtdat.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc +wrthdr.o : wrthdr.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdusr.inc +wrtmsg.o : wrtmsg.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdact.inc $(INC)/nonrdalo.inc $(INC)/nonrdefc.inc $(INC)/nonrdeqp.inc $(INC)/nonrdgrw.inc $(INC)/nonrdreg.inc $(INC)/nonrdtpl.inc $(INC)/nonrdusr.inc +wrtsi.o : wrtsi.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdeqp.inc +wrtsum.o : wrtsum.f $(INC)/nonrdprm.inc $(INC)/nonrdio.inc $(INC)/nonrdreg.inc $(INC)/nonrdeqp.inc diff --git a/NONROAD/NR08a/SOURCE/modyr.f b/NONROAD/NR08a/SOURCE/modyr.f new file mode 100644 index 0000000..b419c59 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/modyr.f @@ -0,0 +1,216 @@ +C**** MODYR +c + subroutine modyr(yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, uselif, disin, strhrs, acthrs, idxunt, + & eload, agecod, popgrwfac) +c +c----------------------------------------------------------------------- +c +c This routine calculates the fraction of population still in +c service of a certain equipment type. It uses the hours of service +c per year and the expected hours of life together with the scrappage +c curve data. If the distribution code is not the default code the +c adjustment factors by year are retrieved and applied. Otherwise +c just the annual activity is used for all years. +c +c Argument declaration. +c Outputs: +c yryrfrcscrp R year-to-year faction scrapped by age +c modfrc R array of population fractions for each model year +c stradj R array of new adjusted starts hours for each year +c actadj R array of new adjusted activity hours for each year +c nyrlif I number of years in the lifetime +c detage R age of the engine, used for deterioration calculation +c Inputs: +c uselif R expected lifespan of equipment in hours +c this is currently read from the population file in years +c and multiplied by annual use hours here to get total hours +c disin C code that tells which scrappage curve to use +c strhrs R number of starts from activity file +c acthrs R number of hours of use from activity file +c idxunt R index units of activity data +c eload R equipment load factor +c agecod C code that indicates which age vs activity curve to apply +c popgrwfac R population growth factor +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/16/93 --rel-- original development +c 12/18/95 --djk-- modified for EPA offroad +c 07/15/96 --asr-- modified for mid-year evaluation +c 07/21/96 --jlf-- modified to pass back useful life consumed for +c deterioration calculation +c 06/10/97 --gwilson-- added switch to do end of year fractions +c when doing annual, winter season, or +c a late year month +c 11/30/99 -mjimenez- added age vs activity adjustment +c 08/30/01 -rgiannelli- static age dist with backcast growth in it. +c 08/31/01 -charvey- removes all partial year scrap & det. code. +c 04/06/05 -cimulus- replaced modscp output parameter with +c yryrfrcscrp; added popgrwfac input parameter; +c removed search-for-scrappage-curve handling +c and calculation of model-year fractions and +c model-year scrappage, which are done in +c scrptime now +c 06/01/05 -cimulus- moved activity-adjustment calculation to +c after the call to scrptime so that it uses +c the nyrlif value calculated by scrptime +c 07/20/05 -cimulus- removed unused variables +c +c----------------------------------------------------------------------- +c Include files +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 yryrfrcscrp(MXAGYR) + real*4 modfrc(MXAGYR) + real*4 stradj(MXAGYR) + real*4 actadj(MXAGYR) + real*4 detage(MXAGYR) + integer*4 nyrlif + real*4 uselif + character*10 disin + real*4 acthrs + real*4 strhrs + integer*4 idxunt + real*4 eload + character*10 agecod + real*4 popgrwfac +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns index of a string in array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i, j, idxage + real*4 adjfac(MXAGYR), accum, acttmp + integer*4 ierr +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initiialize the adjustment factors ---- +c + do 10 i=1,MXAGYR + adjfac(i) = 1.0 + modfrc(i) = 0.0 + 10 continue +c +c --- search for the alternate activity curve to apply --- +c + idxage = 0 + if ( agecod .NE. 'DEFAULT' ) then + idxage = fndchr ( agecod, 10, agenam, nagenm ) + if ( idxage .LE. 0 ) then + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'WARNING: Cannot ', + & 'find /AGE ADJUSTMENT/ curve ', agecod, + & ' Using DEFAULT, no adjustment.' + nwarn = nwarn + 1 + endif + endif +c +c --- set the local variable to be the annual units --- +c + if( idxunt .EQ. IDXHRY ) then + acttmp = acthrs + else if( idxunt .EQ. IDXHRD ) then + acttmp = acthrs * 365 + else if( idxunt .EQ. IDXGLY .AND. uselif .GT. 0. ) then + acttmp = 1.0 / (2*uselif) + else if( idxunt .EQ. IDXGLD .AND. uselif .GT. 0. ) then + acttmp = 1.0 / (2*uselif) + endif +c +c --- calculate life in years, year-to-year scrappage percentages, +c and initial model-year fractions (age distribution) +c NOTE: Uses a single activity in hours per year value (acttmp), +c since the alternate-activity-curve functionality is not actually +c being used. See note in scrptime about required changes to +c integrate alternate activity curve --- +c + call scrptime( ierr, yryrfrcscrp, nyrlif, modfrc, uselif, + & eload, acttmp, disin, popgrwfac ) +c +c --- calculate the activity adjustment +c and start adjustment by age ---- +c NOTE: The scrptime subroutine uses a single activity in hours +c per year value (acttmp), since the alternate-activity-curve +c functionality is not actually being used. If alternate +c activity curves are ever to be used, the below calculation +c will have to be integrated into scrptime --- +c + accum = 0 + if( uselif .LE. 0 ) uselif = 1.0 +c do 40 i=1,MXAGYR + do 40 i=1,nyrlif +c if( accum .LT. 2*uselif ) then +c nyrlif = i + if ( idxage .LE. 0 ) then + actadj(i) = acttmp + else + if ( accum/uselif .GE. 2 ) then + actadj(i) = 0.0 + else if ( accum/uselif .LE. agebin(1) ) then + actadj(i) = agepct(idxage,1)/100.0 * acttmp + else + do 35 j = 1, MXUSE + if ( accum/uselif .GT. agebin(j) .AND. + & accum/uselif .LE. agebin(j+1) ) then + actadj(i) = agepct(idxage,j)/100.0 * acttmp + goto 39 + endif + 35 continue + 39 continue + endif + endif + stradj(i) = adjfac(i) * strhrs + accum = accum + actadj(i) * eload +c endif + 40 continue +c +c ---- save the age of the engine that is used for +c deterioration calculation --- +c + accum = 0. + do 50 i=1,nyrlif + accum = accum + actadj(i) * eload + if( accum .GT. 0 ) then + detage(i) = accum / uselif + else + detage(i) = 0.0 + endif + 50 continue +c +c --- return to calling routine ---- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/mspinit.f b/NONROAD/NR08a/SOURCE/mspinit.f new file mode 100644 index 0000000..ce6ab10 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/mspinit.f @@ -0,0 +1,40 @@ +C Last change: U 25 Sep 97 1:29 pm +C**** MSPINIT() +c + subroutine mspinit() +c +c----------------------------------------------------------------------- +c +c displays a little "clock" thing to measure progress. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + icall = MOD(icall+1,8) + write(IOWSTD,'(A,A,$)') 8,spin(icall) +CDFK call flush(IOWSTD) +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(A) +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/nonrdact.inc b/NONROAD/NR08a/SOURCE/nonrdact.inc new file mode 100644 index 0000000..1fce926 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdact.inc @@ -0,0 +1,135 @@ +C**** ENEESACT.INC +c +c----------------------------------------------------------------------- +c +c Include file for the activity data to be used by the EPA Nonroad +c program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 -gmw- Original development +c 11/16/99 -mjimenez - added activity vs age curve +c 02/10/00 -mjimenez - removed tank volume from activity file +c 06/22/01 -charvey - changed TNKMAX from 50 to 1000 +c 05/20/04 -dfk- added evap tech groups to activity +c 04/05/05 -cimulus- changed MXUSE from 50 to 51 +c 07/11/05 --cimulus-- reverted back to a single technology type +c +c----------------------------------------------------------------------- +c Parameters for array bounds: +c----------------------------------------------------------------------- +c +c MXACTR I maximum number of activity records in activity file +c + integer*4 MXACTR +c + parameter( MXACTR = 5000 ) +c +c----------------------------------------------------------------------- +c Activity level units parameters: +c----------------------------------------------------------------------- +c +c KEYHRY C keyword of hr/yr activity level units +c KEYHRD C keyword of hr/day activity level units +c KEYGLY C keyword of gal/yr activity level units +c KEYGLD C keyword of gal/day activity level units +c + character*10 KEYHRY + character*10 KEYHRD + character*10 KEYGLY + character*10 KEYGLD +c + parameter( KEYHRY = 'HRS/YR ' ) + parameter( KEYHRD = 'HRS/DAY ' ) + parameter( KEYGLY = 'GAL/YR ' ) + parameter( KEYGLD = 'GAL/DAY ' ) +c +c IDXHRY C index of hr/yr activity level units arrays +c IDXHRD C index of hr/day activity level units arrays +c IDXGLY C index of gal/yr activity level units arrays +c IDXGLD C index of gal/day activity level units arrays +c + integer*4 IDXHRY + integer*4 IDXHRD + integer*4 IDXGLY + integer*4 IDXGLD +c + parameter( IDXHRY = 1 ) + parameter( IDXHRD = 2 ) + parameter( IDXGLY = 3 ) + parameter( IDXGLD = 4 ) +c +c----------------------------------------------------------------------- +c Parameters for limits: +c----------------------------------------------------------------------- +c +c TNKMAX R maximum allowed tank volume +c + real*4 TNKMAX +c + parameter( TNKMAX = 1000.0 ) +c +c----------------------------------------------------------------------- +c Variables for actitivty data +c----------------------------------------------------------------------- +c +c ascact C SCC code for the activity level +c subact C subregion code +c tecact C technology type for the activity record +c nactrc I number of records in the arrays +c hpcact R HP range for the activity record +c faclod R load factor array +c tnkvol R tank volume (gal) +c actlev R activity level +c starts R number of starts per year for equipment +c iactun I index of the units of the activity level +c actage C code indicating activity vs age curve +c + character*10 ascact(MXACTR) + character*10 tecact(MXACTR) + character*5 subact(MXACTR) + character*10 actage(MXACTR) + integer*4 nactrc + integer*4 iactun(MXACTR) + real*4 hpcact(2,MXACTR) + real*4 faclod(MXACTR) +cc real*4 tnkvol(MXACTR) + real*4 actlev(MXACTR) + real*4 starts(MXACTR) +c + common /actchr/ ascact, tecact, subact, actage + common /actdat/ nactrc, hpcact, faclod, actlev, + & starts, iactun +c +c----------------------------------------------------------------------- +c Parameters for array bounds for % useful life vs activity: +c----------------------------------------------------------------------- +c +c MXAGE I maximum number of age vs new activity curves +c MXUSE I maximum number of age bins +c + integer*4 MXAGE + integer*4 MXUSE +c + parameter( MXAGE = 10 ) + parameter( MXUSE = 51 ) +c +c----------------------------------------------------------------------- +c Variables for % useful life vs activity data: +c----------------------------------------------------------------------- +c +c agebin R array for %useful life bin values +c agenam C names of new activity curves +c agepct R percent of new activity in each bin for age curves +c nagenm I number of new activity curves +c + character*10 agenam(MXAGE) + real*4 agebin(MXUSE) + real*4 agepct(MXAGE,MXUSE) + integer*4 nagenm +c + common /agechr/ agenam + common /agedat/ agebin, agepct, nagenm +c diff --git a/NONROAD/NR08a/SOURCE/nonrdalo.inc b/NONROAD/NR08a/SOURCE/nonrdalo.inc new file mode 100644 index 0000000..a715004 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdalo.inc @@ -0,0 +1,42 @@ +c*** ALLOCATE.INC +c +c----------------------------------------------------------------------- +c +c Include for the allocation surrogate data for the OFFROAD program. +c +c----------------------------------------------------------------------- +c Parameters for array bounds: +c----------------------------------------------------------------------- +c +c MXALO I maximum number of allocation indicator assignments +c MXCOEF I maximum number of coefficients in regression equation +c MXCODE I maximum number of indicator codes used +c + integer*4 MXALO + integer*4 MXCOEF + integer*4 MXCODE +c + parameter( MXALO = 500 ) + parameter( MXCOEF = 3 ) + parameter( MXCODE = 100 ) +c +c----------------------------------------------------------------------- +c Allocation indicator assignment data arrays: +c----------------------------------------------------------------------- +c +c ascalo C asc code for assignment of allocation indicator +c coeffs R coefficients for regression equations +c indcod C indicator code for allocation +c alocod C list of spatial indicator codes +c nalorc I number of allocation assignment records found +c nalocd I number of unigue indicator codes used +c + character*10 ascalo(MXALO) + character*3 indcod(MXALO,MXCOEF) + character*3 alocod(MXCODE) + real*4 coeffs(MXALO,MXCOEF) + integer*4 nalorc + integer*4 nalocd +c + common /alochr/ ascalo, indcod, alocod + common /alodat/ coeffs, nalorc, nalocd diff --git a/NONROAD/NR08a/SOURCE/nonrdefc.inc b/NONROAD/NR08a/SOURCE/nonrdefc.inc new file mode 100644 index 0000000..9a64e29 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdefc.inc @@ -0,0 +1,415 @@ +c*** NONRDEFC.INC +c +c----------------------------------------------------------------------- +c +c Include file for the emission factor data used by the NONROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/01/93 --gmw-- Original development +c 07/19/96 --jlf-- Added deterioration rates +c 06/09/97 --gwilson-- Added variables for the last emissions values +c retrieved +c 09/20/97 --gwilson-- Added variables for the CAP/NOCAP option for +c deterioration factors +c 04/14/98 --gwilson-- Changed the varables for the last record found +c to be by tech type +c 05/01/98 --gwilson-- Changed how deterioration factors are stored +c and referenced +c 02/10/00 mjimenez Added variables units and tank vol to spillage +c 05/18/04 --dfk-- expanded evap arrays to handle evap tech groups +c by species +c 05/28/04 --dfk-- added arrays for tank and hose data (diurnal and +c permeation), hot soak starts per hour of operation +c 06/17/04 --dfk-- added diurnal fractions +c 10/13/04 --dfk-- added IDXGMD and KEYGMD and increased MXEMCY +c from 7 to 8 +c 11/15/04 --dfk-- added rec-marine fill neck, supply/return, and +c vent hose permeation length and diameter +c 09/15/06 --epa-- added Base E10 permeation adj inputs. Ctl all = 2.0 +c 10/03/07 --epa-- increased MXDTFC from 100 to 120 +c 03/22/18 --dbc-- increased MXEMFC from 8000 to 13000 +c +c----------------------------------------------------------------------- +c Emission factor units parameters: +c----------------------------------------------------------------------- +c +c MXEMCV I maximum number of emission factor units conversion +c MXEMFC I maximum number of exhaust emission factors +c MXDTFC I maximum number of deterioration factors +c MXSPL I maximum number of spillage factors +c + integer*4 MXEMCV + integer*4 MXEMFC + integer*4 MXDTFC + integer*4 MXSPL +c + parameter( MXEMCV = 8 ) + parameter( MXEMFC = 13000 ) + parameter( MXDTFC = 120 ) + parameter( MXSPL = 2000 ) +c +c KEYGHR C keyword of g/hr emission factor units +c KEYGHP C keyword of g/hp-hr emission factor units +c KEYGAL C keyword of g/gallon emission factor units +c KEYTNK C keyword of g/tank volume emission factor units +c KEYGDY C keyword of g/day emission factor units +c KEYGST C keyword of g/start emission factor units +c KEYMLT C keyword of unitless emission factor units +c KEYGMD C keyword of g/m2/day emission factor units +c + character*10 KEYGHR + character*10 KEYGHP + character*10 KEYGAL + character*10 KEYTNK + character*10 KEYGDY + character*10 KEYGST + character*10 KEYMLT + character*10 KEYGMD +c + parameter( KEYGHR = 'G/HR ' ) + parameter( KEYGHP = 'G/HP-HR ' ) + parameter( KEYGAL = 'G/GALLON ' ) + parameter( KEYTNK = 'G/TANK ' ) + parameter( KEYGDY = 'G/DAY ' ) + parameter( KEYGST = 'G/START ' ) + parameter( KEYMLT = 'MULT ' ) + parameter( KEYGMD = 'G/M2/DAY ' ) +c +c IDXGHR I index of g/hr emission factor units in arrays +c IDXGHP I index of g/hp-hr emission factor units in arrays +c IDXGAL I index of g/gallons emission factor units in arrays +c IDXTNK I index of g/tank volume emission factor units in arrays +c IDXGDY I index of g/day emission factor units in arrays +c IDXGST I index of g/start emissions factor units array +c IDXMLT I index of multiplicative (unitless) emissions factor units array +c + integer*4 IDXGHR + integer*4 IDXGHP + integer*4 IDXGAL + integer*4 IDXTNK + integer*4 IDXGDY + integer*4 IDXGST + integer*4 IDXMLT + integer*4 IDXGMD +c + parameter( IDXGHR = 1 ) + parameter( IDXGHP = 2 ) + parameter( IDXGAL = 3 ) + parameter( IDXTNK = 4 ) + parameter( IDXGDY = 5 ) + parameter( IDXGST = 6 ) + parameter( IDXMLT = 7 ) + parameter( IDXGMD = 8 ) +c +c FACGHR R conversion factor from g/hr to g/hr +c FACGHP R conversion factor from g/hp-hr to g/hr +c FACGAL R conversion factor from g/gallons to g/hr +c FACTNK R conversion factor from g/tank volume to g/hr +c FACGDY R conversion factor from g/day to g/hr +c + real*4 FACGHR + real*4 FACGHP + real*4 FACGAL + real*4 FACTNK + real*4 FACGDY +c + parameter( FACGHR = 1.0 ) + parameter( FACGHP = 1.0 ) + parameter( FACGAL = 1.0 ) + parameter( FACTNK = 1.0 ) + parameter( FACGDY = 1.0 ) +c +c----------------------------------------------------------------------- +c Parameters for the CAP option: +c----------------------------------------------------------------------- +c +c FLGCAP C flag for apllying CAP +c FLGNCP C flag for apllying NOCAP +c + character*10 FLGCAP + character*10 FLGNCP +c + parameter( FLGCAP = "CAP ") + parameter( FLGNCP = "NOCAP ") +c +c----------------------------------------------------------------------- +c Exhaust Emission factors data: +c----------------------------------------------------------------------- +c +c ascexh C SCC code +c tecexh C technology code +c exhpcb R beginning of horsepower range +c exhpce R ending of horsepower range +c iexhun I array of units index for each exhaust emission factor +c iyrexh I array of years for emission factors +c exhfac R vector of exhaust emission factor array +c nexhfc I number of codes in factors array +c + character*10 ascexh(MXEMFC) + character*10 tecexh(MXEMFC) + real*4 exhpcb(MXEMFC) + real*4 exhpce(MXEMFC) + integer*4 iyrexh(MXEMFC) + integer*4 iexhun(MXEMFC,IDXTHC:IDXCRA) + real*4 exhfac(MXEMFC,IDXTHC:IDXCRA) + integer*4 nexhfc +c + common /emxchr/ ascexh, tecexh + common /emxdat/ exhpcb, exhpce, iexhun, iyrexh, exhfac, nexhfc +c +c----------------------------------------------------------------------- +c Non-Exhaust Emission factors data: +c----------------------------------------------------------------------- +c +c ascevp C SCC code for each evap species +c tecevp C technology code for each evap species +c evhpcb R beginning of horsepower range for each evap species +c evhpce R ending of horsepower range for each evap species +c evpfac R vector of evap emission factor array for each evap species +c ievpun I array of units index for each evap emission factor for each evap species +c iyrevp I array of years for emission factors for each evap species +c nevpfc I number of codes in factors array for each evap species +c + character*10 ascevp(MXEMFC,MXPOL) + character*10 tecevp(MXEMFC,MXPOL) + real*4 evhpcb(MXEMFC,MXPOL) + real*4 evhpce(MXEMFC,MXPOL) + integer*4 iyrevp(MXEMFC,MXPOL) + integer*4 ievpun(MXEMFC,MXPOL) + real*4 evpfac(MXEMFC,MXPOL) + integer*4 nevpfc(MXPOL) +c + common /emvchr/ ascevp, tecevp + common /emvdat/ evhpcb, evhpce, ievpun, iyrevp, evpfac, nevpfc +c +c----------------------------------------------------------------------- +c Start Emission factors data: +c NOTE: This code was commented out because starts emissions +c are not currently supported. +c----------------------------------------------------------------------- +c +c ascstr C SCC code +c tecstr C technology code +c sthpcb R beginning of horsepower range +c sthpce R ending of horsepower range +c strfac R vector of exhaust emission factor array +c istrun I array of units index for each exhaust emission factor +c iyrstr I array of years for emission factors +c nstrfc I number of codes in factors array +c +cgmw character*10 ascstr(MXEMFC) +cgmw character*10 tecstr(MXEMFC) +cgmw real*4 sthpcb(MXEMFC) +cgmw real*4 sthpce(MXEMFC) +cgmw integer*4 iyrstr(MXEMFC) +cgmw integer*4 istrun(MXEMFC,IDSTHC:IDSPM) +cgmw real*4 strfac(MXEMFC,IDSTHC:IDSPM) +cgmw integer*4 nstrfc +c +cgmw common /emschr/ ascstr, tecstr +cgmw common /emsdat/ sthpcb, sthpce, istrun, iyrstr, strfac, nstrfc +c +c----------------------------------------------------------------------- +c The last match on emissions factors: +c----------------------------------------------------------------------- +c +c emasc C the SCC code of the last emission factor retrieved +c emtech C the technology code of the last exhaust emission factor retrieved +c evemtech C the technology code of the last evap emission factor retrieved +c iemyr I the span of years of the last emission factor retrieved +c emhpc R the HP range of the last emission factor retrieved +c idxems I the last match in the arrays +c idxeal I the last match for the global tech type +c + character*10 emasc(0:MXPOL) + character*10 emtech(0:MXPOL,MXTECH) + character*10 evemtech(0:MXPOL,MXEVTECH) + integer*4 iemyr(0:MXPOL,0:MXTECH,2) + real*4 emhpc(0:MXPOL) + integer*4 idxems(0:MXPOL,MXTECH) + integer*4 idxeal(0:MXPOL) +c + common /emlchr/ emasc, emtech, evemtech + common /emldat/ iemyr, emhpc, idxems, idxeal +c +c----------------------------------------------------------------------- +c Deterioration factors +c----------------------------------------------------------------------- +c +c tecdet C array of the tech types for deterioration factors +c detavl R array of a-coefficients to deterioration factor equation +c detbvl R array of b-coefficients to deterioration factor equation +c capdet R value for the CAP on deteroioration (fraction of useful life) +c ndtfac I number of codes in deterioration factors array +c + character*10 tecdet(MXDTFC,MXPOL) + real*4 detavl(MXDTFC,MXPOL) + real*4 detbvl(MXDTFC,MXPOL) + real*4 capdet(MXDTFC,MXPOL) + integer*4 ndtfac(MXPOL) +c + common /detchr/ tecdet + common /detdat/ detavl, detbvl, ndtfac, capdet +c +c----------------------------------------------------------------------- +c BSFC factors data: +c----------------------------------------------------------------------- +c +c ascbsf C SCC code +c tecbsf C technology code +c bsfpcb R beginning of horsepower range +c bsfpce R ending of horsepower range +c ibsfun I array of units index for each BSFC value +c iyrbsf I array of years for BSFC value +c bsffac R vector of BSFC values +c nbsffc I number of codes in BSFC array +c + character*10 ascbsf(MXEMFC) + character*10 tecbsf(MXEMFC) + real*4 bsfpcb(MXEMFC) + real*4 bsfpce(MXEMFC) + integer*4 iyrbsf(MXEMFC) + integer*4 ibsfun(MXEMFC,0:0) + real*4 bsffac(MXEMFC,0:0) + integer*4 nbsffc +c + common /bsxchr/ ascbsf, tecbsf + common /bsxdat/ bsfpcb, bsfpce, ibsfun, iyrbsf, bsffac, nbsffc +c +c----------------------------------------------------------------------- +c Parameters for adjustment factors for RFG adjustment factors: +c----------------------------------------------------------------------- +c +c NRFGBIN I number of bins for years for RFG factors +c + integer*4 NRFGBIN +c + parameter( NRFGBIN = 3 ) +c +c----------------------------------------------------------------------- +c Variables for adjustment factors for RFG adjustment factors: +c----------------------------------------------------------------------- +c +c iyrbin I years for RFG bins +c rfggs2 R array of adjustment factors for 2-stroke gasoline +c rfggs4 R array of adjustment factors for 4-stroke gasoline +c soxbas R array for base level sulfur content +c soxfrc R array for fraction fuel sulfur that becomes PM +c soxful R array for episodic level sulfur content +c altfac R array for altitude adjutment factors +c + integer*4 iyrbin(IDXFAL,NRFGBIN,2) + real*4 rfggs2(IDXFAL,NRFGBIN,MXPOL) + real*4 rfggs4(IDXFAL,NRFGBIN,MXPOL) + real*4 soxbas(IDXCNG) + real*4 soxfrc(IDXCNG) + real*4 soxful(IDXCNG) + real*4 altfac(IDXCNG) +c + common /rfgdat/ iyrbin, soxbas, soxfrc, soxful, altfac, + & rfggs2, rfggs4 +c +c----------------------------------------------------------------------- +c Parameters for Spillage input and calculation: +c----------------------------------------------------------------------- +c +c CNTFAC R Factor (g/refueling) for portable container spillage +c PMPFAC R Factor (g/refueling) for gasoline pump spillage +c PUMP C Indicates pump refueling mode +c CNTR C Indicates portable container refueling mode +c TNKTYP C Indicates tank volume ranges provided +c HP C Indicates horsepower ranges provided +c GALLON C Indicates tank volume units of gallons +c GALHP C Indicates tank volume units of gallons/HP +c + real*4 CNTFAC + real*4 PMPFAC + character*9 PUMP + character*9 CNTR + character*4 TNKTYP + character*4 HP + character*10 GALLON + character*10 GALHP +c + parameter( CNTFAC = 17. ) + parameter( PMPFAC = 3.6 ) + parameter( PUMP = "PUMP " ) + parameter( CNTR = "CONTAINER" ) + parameter( TNKTYP = "TANK" ) + parameter( HP = "HP " ) + parameter( GALLON = "GALLONS ") + parameter( GALHP = "GAL/HP ") +c +c----------------------------------------------------------------------- +c Spillage, Diurnal and Tank/Hose Permeation data: +c----------------------------------------------------------------------- +c +c ascspl C SCC code +c tecspl C technology code +c modspl C refueling mode (PUMP or CONTAINER) +c indspl C range indicator (TNKTYP or HP) +c untspl C tank volume units indicator (GALLONS or GAL/HP) +c splpcb R beginning of horsepower/tank volume range +c splpce R ending of horsepower/tank volume range +c nsplar I number of codes in spillage array +c tnkful R fraction of tank full of fuel (for diurnal calculations) +c tnkmtl R fraction of tanks that are metal +c hoslen R non rec marine hose length (meters) +c hosdia R non rec marine hose diameter (meters) +c ncklen R rec marine fill neck hose length (meters) +c nckdia R rec marine fill neck hose diameter (meters) +c srlen R rec marine supply/return hose length (meters) +c srdia R rec marine supply/return hose diameter (meters) +c vntlen R rec marine vent hose length (meters) +c vntdia R rec marine vent hose diameter (meters) +c hosmtl R fraction of hoses that are metal +c hssph R hot soak starts per hour of operations +c diufrc R diurnal fractions(1=non rec/rec marine portable plastic, +c 2=rec-marine installed plastic on trailer, +c 3=rec-marine installed plastic in water, +c 4=rec-marine installed metal on trailer, +c 5=rec-marine installed metal in water) +c tnke10 R Non-metal tank permeation E10 adj factor, pre-control +c hose10 R Non-Recmarine Non-metal hose permeation E10 adj factor, pre-control +c ncke10 R Recmarine fill neck permeation E10 adj factor, pre-control +c sre10 R Recmarine supply/return hose permeation E10 adj factor, pre-control +c vnte10 R Recmarine vent hose permeation E10 adj factor, pre-control + +c + character*10 ascspl(MXEMFC) + character*10 tecspl(MXEMFC) + character*10 untspl(MXEMFC) + character*9 modspl(MXEMFC) + character*4 indspl(MXEMFC) + real*4 splpcb(MXEMFC) + real*4 splpce(MXEMFC) + real*4 volspl(MXEMFC) + integer*4 nsplar + real*4 tnkful(MXEMFC) + real*4 tnkmtl(MXEMFC) + real*4 hoslen(MXEMFC) + real*4 hosdia(MXEMFC) + real*4 hosmtl(MXEMFC) + real*4 hssph(MXEMFC) + real*4 diufrc(5,MXEMFC) + real*4 ncklen(MXEMFC) + real*4 nckdia(MXEMFC) + real*4 srlen(MXEMFC) + real*4 srdia(MXEMFC) + real*4 vntlen(MXEMFC) + real*4 vntdia(MXEMFC) + real*4 tnke10(MXEMFC) + real*4 hose10(MXEMFC) + real*4 ncke10(MXEMFC) + real*4 sre10(MXEMFC) + real*4 vnte10(MXEMFC) +c + common /splchr/ ascspl, tecspl, modspl, indspl, untspl + common /spldat/ splpcb, splpce, volspl, nsplar, tnkful, + & tnkmtl, hoslen, hosdia, hosmtl, hssph, + & diufrc, ncklen, nckdia, srlen, srdia, + & vntlen, vntdia, tnke10, hose10, ncke10, + & sre10, vnte10 diff --git a/NONROAD/NR08a/SOURCE/nonrdeqp.inc b/NONROAD/NR08a/SOURCE/nonrdeqp.inc new file mode 100644 index 0000000..bbe82b0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdeqp.inc @@ -0,0 +1,248 @@ +C**** EQIPMENT.INC +c +c----------------------------------------------------------------------- +c +c Include file for the equipment type and population data to be used +c by the EPA Nonroad program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- Original development +c 07/22/96 --jlf-- Changes for handling of technology fractions +c 06/09/97 --gwilson-- Took out names of equipment types +c 05/10/04 --dfk-- Added evap tech fractions +c 09/22/04 --dfk-- Increased exh and evap tech code limits to 1500 +c per version N04n2 +c 04/05/05 -cimulus- changed MXSCRP from 50 to 197 +c 04/06/05 -cimulus- removed scppct_mod, which is no longer used, +c due to the new handling implemented by scrptime +c +c----------------------------------------------------------------------- +c Variables for HP Categories: +c----------------------------------------------------------------------- +c +c hpclev R ranges of HP category +c + real*4 hpclev(MXHPC) +c + common /hpcdat/ hpclev +c +c----------------------------------------------------------------------- +c Variables for population data: +c----------------------------------------------------------------------- +c +c regncd C region code for the population record +c ipopyr I base year for the population +c popeqp R array of population values for each equipment type +c ieqptr I index of next equipment type in link list +c usehrs I number of hours in useful life +c discod C string for identifying the data for distributing model years +c avghpc R average HP +c hprang R range of Horsepower +c npoprc I number of records in arrays +c lctlev L flag for determining if county has county specific records +c lstlev L flag for determining if state has county specific records +c lrglev L flag for determining if sub-county specific records +c ifuel I index of the fuel type of the current record +c +c + character*10 regncd(MXPOP) + character*10 discod(MXPOP) + integer*4 ipopyr(MXPOP) + real*4 popeqp(MXPOP) + real*4 avghpc(MXPOP) + real*4 hprang(2,MXPOP) + real*4 usehrs(MXPOP) + integer*4 npoprc + logical*4 lctlev(NCNTY) + logical*4 lstlev(NSTATE) + logical*4 lrglev(NSTATE) + integer*4 ifuel +c + common /eqpchr/ regncd, discod + common /eqpdat/ ipopyr, popeqp, avghpc, hprang, usehrs, npoprc, + & lctlev, lstlev, lrglev, ifuel +c +c----------------------------------------------------------------------- +c Parameters for technology fraction data: +c----------------------------------------------------------------------- +c +c TECDEF C default value for exhaust technology types +c MXTECD I maximum number of technology codes +c + character*10 TECDEF + integer*4 MXTECD +c + parameter( TECDEF = 'ALL ') + parameter( MXTECD = 1500 ) +c +c----------------------------------------------------------------------- +c Variables for technology fraction data: +c----------------------------------------------------------------------- +c +c tchfrc R array of technology fractions +c asctch C array of SCC codes +c tectyp C array of technology names +c tchhpb R array of average horsepowers for the tech fractions +c tchhpe R array of average horsepowers for the tech fractions +c iyrtch I array of model years for the tech fractions +c ntech I count of number of technologies for each equipment type +c ntchcd I count of number of SCC codes with technology fractions +c ascsav C saved prior SCC code (to check if it has changed from prior PRC* call) +c + character*10 asctch(MXTECD) + character*10 tectyp(MXTECD,MXTECH) + integer*4 iyrtch(MXTECD) + integer*4 ntech(MXTECD) + integer*4 ntchcd + real*4 tchfrc(MXTECD,MXTECH) + real*4 tchhpb(MXTECD) + real*4 tchhpe(MXTECD) + integer*4 yrsav +c + common /tchchr/ asctch, tectyp, yrsav + common /tchdat/ tchfrc, tchhpb, tchhpe, iyrtch, + & ntech, ntchcd +c +c----------------------------------------------------------------------- +c Parameters for evap technology fraction data: +c----------------------------------------------------------------------- +c +c MXEVTECD I maximum number of evap technology codes +c + integer*4 MXEVTECD +c + parameter( MXEVTECD = 1500 ) +c +c----------------------------------------------------------------------- +c Variables for evap technology fraction data: +c----------------------------------------------------------------------- +c +c evtchfrc R array of evap technology fractions +c ascevtch C array of evap SCC codes +c evtectyp C array of evap technology names +c evtchhpb R array of average horsepowers for the evap tech fractions +c evtchhpe R array of average horsepowers for the evap tech fractions +c iyrevtch I array of model years for the evap tech fractions +c nevtech I count of number of evap technologies for each equipment type +c nevtchcd I count of number of SCC codes with evap technology fractions +c + character*10 ascevtch(MXEVTECD) + character*10 evtectyp(MXEVTECD,MXEVTECH) + integer*4 iyrevtch(MXEVTECD) + integer*4 nevtech(MXEVTECD) + integer*4 nevtchcd + real*4 evtchfrc(MXEVTECD,MXEVTECH) + real*4 evtchhpb(MXEVTECD) + real*4 evtchhpe(MXEVTECD) +c + common /evtchchr/ ascevtch, evtectyp + common /evtchdat/ evtchfrc, evtchhpb, evtchhpe, iyrevtch, + & nevtech, nevtchcd +c +c----------------------------------------------------------------------- +c Parameters for scrappage data: +c----------------------------------------------------------------------- +c +c MXSCRP I maximum number of scrappage bins +c MXALT I maximum number of alternate scrappage curves +c + integer*4 MXSCRP + integer*4 MXALT +c + parameter(MXSCRP = 197 ) + parameter(MXALT = 10 ) +c +c----------------------------------------------------------------------- +c Variables for scrappage data: +c----------------------------------------------------------------------- +c +c scpbin R array if scrappage bin values +c scppct R percent of equipment left in each bin +c altbin R array for alternate scrappage bin values +c altpct R percent of equipment left in each bin for alternate +c scrappage curves +c altnam C names of alternate scrappage curves +c naltnm I number of alternative scrappage curves +c + character*10 altnam(MXALT) + real*4 scpbin(MXSCRP) + real*4 scppct(MXSCRP) + real*4 altbin(MXSCRP) + real*4 altpct(MXALT,MXSCRP) + integer*4 naltnm +c + common /scpchr/ altnam + common /scpdat/ scpbin, scppct, altbin, altpct, naltnm +c +c----------------------------------------------------------------------- +c Variables for EPS2 AMS file: +c----------------------------------------------------------------------- +c +c itype C invetory type +c irefyr I reference year of inventory +c ibasyr I base year of inventory +c inetyp C emissions type +c infips C FIPS state/county code +c insbrg C subregion code +c insic C SIC code +c inasc C ASC code +c iperod C inventory period code +c ibegdt I beginning date/time of inventory +c ienddt I ending date/time of inventory +c cvtams R factor for converting emissions to AMS period +c namsrc I number of AMS records found +c + character*1 itype + character*10 inasc + character*10 insbrg + character*5 infips + character*4 insic + character*2 inetyp + character*2 iperod + integer*4 irefyr + integer*4 ibasyr + integer*4 ibegdt + integer*4 ienddt + integer*4 namsrc + real*4 cvtams +c + common /epschr/ itype, inasc, insbrg, infips, insic, + & inetyp, iperod + common /epsdat/ irefyr, ibasyr, ibegdt, ienddt, cvtams, namsrc +c +c----------------------------------------------------------------------- +c Parameters for SI report option: +c----------------------------------------------------------------------- +c +c MXITCH I maximum number of input tech types used for SI reporting +c MXOTCH I maximum number of output tech types used for SI reporting +c + integer*4 MXITCH + integer*4 MXOTCH +c + parameter( MXITCH = 42 ) + parameter( MXOTCH = 14 ) +c +c----------------------------------------------------------------------- +c Variables for SI report option: +c----------------------------------------------------------------------- +c +c sitech C array of tech types to be mapped in SI report +c indxsi C index of mapped tech types to output tech types +c popsi R array for population totals for SI reoprt +c actsi R array for activity totals for SI reoprt +c fuelsi R array for fuel consumption totals for SI report +c emissi R array for emissions totals for SI reoprt +c + character*10 sitech(MXITCH) + integer*4 indxsi(MXITCH) + real*4 popsi(MXOTCH) + real*4 actsi(MXOTCH) + real*4 fuelsi(MXOTCH) + real*4 emissi(MXOTCH,MXPOL) +c + common /sichr/ sitech + common /sidat/ indxsi, popsi, actsi, fuelsi, emissi diff --git a/NONROAD/NR08a/SOURCE/nonrdgrw.inc b/NONROAD/NR08a/SOURCE/nonrdgrw.inc new file mode 100644 index 0000000..9859c61 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdgrw.inc @@ -0,0 +1,60 @@ +c*** GROWCNTL.INC +c +c----------------------------------------------------------------------- +c +c Include file for the growth and control factors for the OFFROAD +c program +c +c +c----------------------------------------------------------------------- +c Parameters for Growth data: +c----------------------------------------------------------------------- +c +c MXGRXF I maximum number of growth cross reference records +c MXGROW I maximum number of growth records +c + integer*4 MXGXRF + integer*4 MXGROW +c + parameter( MXGXRF = 12000 ) + parameter( MXGROW = 300 ) +c +c----------------------------------------------------------------------- +c Growth indicator cross reference data arrays: +c----------------------------------------------------------------------- +c +c fipgrx C state code for record +c ascgrx C SCC code for the growth record (could be global) +c hpgrx R range of HP categories for growth recrod +c tecgrx C technology type for the growth record +c indgrx C growth indicator code +c nrcgrx I number of growth records +c + character*10 ascgrx(MXGXRF) + character*10 tecgrx(MXGXRF) + character*5 fipgrx(MXGXRF) + character*4 indgrx(MXGXRF) + integer*4 nrcgrx + real*4 hpgrx(MXGXRF,2) +c + common /gxfchr/ fipgrx, ascgrx, tecgrx, indgrx + common /gxfdat/ nrcgrx, hpgrx +c +c----------------------------------------------------------------------- +c Growth indicator data arrays: +c----------------------------------------------------------------------- +c +c fipgrw C FIPS code for the growth data +c subgrw C subregion code for the growth data +c iyrgrw I year for the growth indicator +c valgrw R growth indicator value +c nrcgrw I number of growth records +c + character*5 fipgrw(MXGROW) + character*5 subgrw(MXGROW) + integer*4 iyrgrw(MXGROW) + real*4 valgrw(MXGROW) + integer*4 nrcgrw +c + common /grwchr/ fipgrw, subgrw + common /grwdat/ iyrgrw, valgrw, nrcgrw diff --git a/NONROAD/NR08a/SOURCE/nonrdio.inc b/NONROAD/NR08a/SOURCE/nonrdio.inc new file mode 100644 index 0000000..3a7c36d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdio.inc @@ -0,0 +1,273 @@ +C**** IOOFFRD.INC +c +c----------------------------------------------------------------------- +c +c Include file for I/O parameters and variables for OFFROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- Original development +c 07/18/96 --jlf-- added deterioration rates +c 07/22/96 --jlf-- added new file of technology fractions by model +c year by equipment type +c 05/10/04 --dfk-- added evap tech groups +c 06/04/04 --dfk-- added evap bmy output I/O +c 06/15/04 --dfk-- added daily ambient temperatures I/O +c 04/26/05 --cimulus-- added IOFIPS, fipsfl and lfipsfl variables +c all related to the FIPS.DAT file holding +c county names and FIPS codes +c 05/13/05 --cimulus-- added IORTRFT, rtrftfl, and lrtrftfl +c variables, all related to the diesel +c retrofit input file +c 05/24/05 --cimulus-- updated version +c 07/15/05 --cimulus-- removed commercial marine related constants +c and variables +c +c----------------------------------------------------------------------- +c Program version parameter: +c----------------------------------------------------------------------- +c +c PROGNM C character string paramater containing program name +c VERSON C character string paramater containing version of the +c OFFROAD program +c + character*30 PROGNM + character*30 VERSON +c + parameter( PROGNM = ' EPA`s NONROAD Emissions Model') + parameter( VERSON = 'Core Model ver 2008a, 07/06/09') +c +c----------------------------------------------------------------------- +c I/O unit parameters +c----------------------------------------------------------------------- +c +c IORSTD I unit number for standard input +c IOWSTD I unit number for standard output +c IORUSR I unit number for user input file +c IORPOP I unit number for base population data file +c IORALO I unit number for allocation data file +c IORIND I unit number for spatial indicator file +c IORACT I unit number for base activity levels data file +c IORSES I unit number for seasonality data file +c IORFAC I base unit number for emission factors data files +c IORDAC I base unit number for deterioration factors data files +c IORBSF I unit number for BSFC file +c IORGRW I unit number for growth factors file +c IORTCH I unit number for exhaust technology fractions file +c IOREVTCH I unit number for evap technology fractions file +c IORREG I unit number for regions definitions file +c IOWMSG I unit number for output message file +c IOWDAT I unit number for output data file +c IOWAMS I unit number for output AMS workfile +c IOWBMY I unit number for output exhaust by-model-year +c IOWEVBMY I unit number for output evap by-model-year +c IOWSI I unit number for output SI report +c IOSDIR I unit number for scratch direct-access file +c IOSPOP I unit number for scratch population file +c IOSIND I unit number for scratch allocation file +c IOSGRW I unit number for scratch growth indicator data +c IORDAY I unit number for daily temperatures/RVPs file +c IOFIPS I unit number for FIPS.DAT file containing county codes +c IORTRFT I unit number for retrofit input file +c + integer*4 IORSTD + integer*4 IOWSTD + integer*4 IORUSR + integer*4 IORPOP + integer*4 IORALO + integer*4 IORIND + integer*4 IORACT + integer*4 IORSES + integer*4 IORFAC + integer*4 IORDAC + integer*4 IORBSF + integer*4 IORGRW + integer*4 IORTCH + integer*4 IOREVTCH + integer*4 IORREG + integer*4 IOWMSG + integer*4 IOWDAT + integer*4 IOWAMS + integer*4 IOWBMY + integer*4 IOWEVBMY + integer*4 IOWSI + integer*4 IOSDIR + integer*4 IOSPOP + integer*4 IOSIND + integer*4 IOSGRW + integer*4 IORDAY + integer*4 IOFIPS + integer*4 IORTRFT +c + parameter( IORSTD = 5 ) + parameter( IOWSTD = 6 ) + parameter( IORUSR = 7 ) + parameter( IORPOP = 8 ) + parameter( IORALO = 9 ) + parameter( IORTCH = 10 ) + parameter( IORIND = 11 ) + parameter( IORREG = 12 ) + parameter( IORSES = 13 ) + parameter( IORGRW = 14 ) + parameter( IORACT = 15 ) + parameter( IORFAC = 18 ) + parameter( IORDAC = 18 ) + parameter( IORBSF = 18 ) + parameter( IOREVTCH = 19 ) + parameter( IOWMSG = 45 ) + parameter( IOWDAT = 46 ) + parameter( IOWAMS = 47 ) + parameter( IOWBMY = 48 ) + parameter( IOWEVBMY = 53 ) + parameter( IOWSI = 49 ) + parameter( IOSDIR = 38 ) + parameter( IOSPOP = 39 ) + parameter( IOSIND = 40 ) + parameter( IOSGRW = 42 ) + parameter( IORDAY = 54 ) + parameter( IOFIPS = 55 ) + parameter( IORTRFT = 56 ) +c +c----------------------------------------------------------------------- +c I/O filenames: +c----------------------------------------------------------------------- +c +c popfl C array of base population data files +c alofl C allocation coefficients data file +c indfl C filename of file with spatial indicator data +c actfl C activity data file +c sesfl C seasonality data file +c facfl C emissions factors files (one for each pollutant) +c detfl C deterioration factors files (one for each pollutant) +c bsffl C BSFC file +c tchfl C exhaust technology fractions file +c evtchfl C evap technology fractions file +c grwfl C growth factors filename +c ctlfl C emissions control factors file +c regfl C file with definitions of regions +c msgfl C output tables filename +c datfl C output data file +c amsfl C output AMS workfile name +c bmyfl C output exhaust by-model-year name +c evbmyfl C output evap by-model-year name +c sifl C output SI report filename +c sysfl C user control file combining options and system file functions +c spopfl C output sorted population file +c npopfl I number of population files provided +c dayfl C input daily ambient temperatures file +c fipsfl C location of the FIPS.DAT file or equivalent that names all counties +c rtrftfl C location of the retrofit input file +c + character*(MXSTR) popfl(MXPFIL) + character*(MXSTR) alofl + character*(MXSTR) indfl + character*(MXSTR) actfl + character*(MXSTR) sesfl + character*(MXSTR) tchfl + character*(MXSTR) evtchfl + character*(MXSTR) facfl(MXPOL) + character*(MXSTR) detfl(MXPOL) + character*(MXSTR) bsffl + character*(MXSTR) grwfl + character*(MXSTR) ctlfl + character*(MXSTR) msgfl + character*(MXSTR) regfl + character*(MXSTR) datfl + character*(MXSTR) amsfl + character*(MXSTR) bmyfl + character*(MXSTR) evbmyfl + character*(MXSTR) sifl + character*(MXSTR) sysfl + character*(MXSTR) spopfl + character*(MXSTR) dayfl + character*(MXSTR) fipsfl + character*(MXSTR) rtrftfl + integer*4 npopfl +c + common /iochr/ popfl, alofl, indfl, + & actfl, sesfl, tchfl, facfl, detfl, bsffl, datfl, + & amsfl, bmyfl, sifl, grwfl, ctlfl, regfl, msgfl, + & sysfl, spopfl, evtchfl, evbmyfl, dayfl, fipsfl, + & rtrftfl + common /iodat/ npopfl +c +c----------------------------------------------------------------------- +c Flags for processing certain input files: +c----------------------------------------------------------------------- +c +c lalofl L flag for determining if using allocation data file +c lactfl L flag for determining if using activity data file +c lsesfl L flag for determining if using seasonality data file +c lfacfl L flag for determining if using emissions factors file +c lbsffl L flag for determining if using BSFC file +c ldetfl L flag for determining if using deterioration factors file +c ltchfl L flag for determining if using exhaust technology fractions file +c levtchfl L flag for determining if using evap technology fractions file +c lgrwfl L flag for determining if using growth factors filename +c lctlfl L flag for determining if using emissions control factors file +c lregfl L flag for determining if region definition file is supplied +c lmsgfl L flag for determining if using output tables filename +c ldatfl L flag for determining if output data file was supplied +c lamsfl L flag for determining if creating AMS workfile +c lbmyfl L flag for determining if creating exhasut by-model-year output file +c levbmyfl L flag for determining if creating evap by-model-year output file +c lsifl L flag for determining if creating SI report output file +c ldayfl L flag for determining if using daily ambient temperatures file +c lfipsfl L flag for determining if using a FIPS.DAT file listing all counties +c lrtrftfl L flag for determining if using a retrofit input file +c + logical*4 lalofl + logical*4 lactfl + logical*4 lsesfl + logical*4 ltchfl + logical*4 levtchfl + logical*4 lfacfl(MXPOL) + logical*4 ldetfl(MXPOL) + logical*4 lbsffl + logical*4 lgrwfl + logical*4 lctlfl + logical*4 lregfl + logical*4 lmsgfl + logical*4 ldatfl + logical*4 lamsfl + logical*4 lbmyfl + logical*4 levbmyfl + logical*4 lsifl + logical*4 ldayfl + logical*4 lfipsfl + logical*4 lrtrftfl +c + common /flgdat/ lalofl, lactfl, lsesfl, lfacfl, lbsffl, + & ldetfl, ltchfl, lgrwfl, lctlfl, lregfl, + & lmsgfl, ldatfl, lamsfl, lbmyfl, lsifl, + & levtchfl, levbmyfl, ldayfl, lfipsfl, lrtrftfl +c +c----------------------------------------------------------------------- +c Varables for displaying progress. +c----------------------------------------------------------------------- +c +c spin C characters that simulate a spinning thing +c icall I number of subroutines called +c nwarn I number of WARNING messages. +c nwrnct I array for keeping track of warnings for error stop features +c nrecds I number of records processed (for display purposes) +c ntotrc I number of total population records to process +c nctyrc I number of population records for each county +c nstarc I number of population records for each state +c nnatrc I number of population records for entire nation +c + character*1 spin(0:11) + integer*4 icall + integer*4 nwarn + integer*4 nwrnct(IDXWSE) + integer*4 nrecds + integer*4 ntotrc + integer*4 nctyrc(NCNTY) + integer*4 nstarc(NSTATE) + integer*4 nnatrc +c + common /spnchr/ spin + common /spndat/ icall, nwarn, nwrnct, nrecds, ntotrc, + & nctyrc, nstarc, nnatrc diff --git a/NONROAD/NR08a/SOURCE/nonrdprm.inc b/NONROAD/NR08a/SOURCE/nonrdprm.inc new file mode 100644 index 0000000..3806c91 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdprm.inc @@ -0,0 +1,732 @@ +C**** NONRDPRM.INC +c +c----------------------------------------------------------------------- +c +c Include file for I/O parameter and variables for OFFROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 -gmw- Original development +c 06/14/01 -cah- Add Carbon Mass Fractions by fuel. Used in CLCEMS. +c 09/28/01 -cah- Add SOx Fractions SFCGS2, SFCxxx +c 12/18/01 -cah- Fixed DENCNG from lb/cu-ft to lb/gal (was 0.0517) +c 02/26/02 -cah- Changed SFCDSL from 0.022 to 0.02247 to match 0.157 +c 06/25/03 -cah- changed MXHPC from 17 to 18 for 75hp bin +c 05/10/04 -dfk- Added evap tech groups, added tank and hose permeation +c which increased MXPOL to 21. +c 06/14/04 -dfk- Removed Resting Loss, reduced to 20. +c 09/22/04 -dfk- changed SOx to SO2 per version NR04, changed MXTCH +c and MXEVTCH from 10 to 15, added MXDAYS, MXFIPS +c 11/15/04 -dfk- added separate indexes for rec-marine fill neck, +c supply/return, and vent hose permeation. Increased +c MXPOL to 23, accordingly. Although calculated +c separately, the 3 rec-marine hose emissions are +c added to the non-rec hose pereations at output. +c 03/16/05 -cimulus- increased NSTATE to 53 to accommodate +c Puerto Rico and US Virgin Islands +c 03/16/05 -cimulus- increased NCNTY to 3223 to accommodate +c Puerto Rico and US Virgin Islands +c 03/16/05 -cimulus- increased MXFIPS to 78 to accommodate +c Puerto Rico and US Virgin Islands +c 04/05/05 -cimulus- changed MXAGYR from 50 to 51 +c 04/25/05 -cimulus- changed NCNTY from 3223 to 3400 to accommodate +c growth. Another global, nmcnty, will contain +c the actual number of used counties. +c 05/05/05 -cimulus- added MINGRWIND +c 05/13/05 -cimulus- corrected the comments regarding CVTTON +c 05/16/05 -cimulus- added year-range validation parameters: +c MINYEAR and MAXYEAR +c 07/18/05 -epa- changed MINGRWIND from 1.0 to 0.0001 to fix ALO. +c 08/17/05 -epa- added DIUMIN minimum diurnal temperature. +c +c----------------------------------------------------------------------- +c Parameter for string length +c----------------------------------------------------------------------- +c +c MXSTR I maximum length of character strings +c + integer*4 MXSTR +c + parameter( MXSTR = 80 ) +c +c----------------------------------------------------------------------- +c Parameter for error codes and keywords +c----------------------------------------------------------------------- +c +c ISUCES I error code for uccess +c IFAIL I error code for failure (ome error occured) +c IRDERR I error code for I/O read error +c IMAIN I error code for Main menu +c IEOF I error code for end-of-file encountered on read +c ISKIP I error code for end-of-file encountered on read +c KEYEND C parameter for /END/ keyword +c IMISS I parameter for missing value of type integer +c RMISS R parameter for missing value of type real +c + integer*4 IFAIL + integer*4 ISUCES + integer*4 IMAIN + integer*4 IRDERR + integer*4 IEOF + integer*4 ISKIP + character*20 KEYEND + integer*4 IMISS + real*4 RMISS +c + parameter( ISUCES = 0 ) + parameter( IFAIL = 1 ) + parameter( IMAIN = 2 ) + parameter( IRDERR = 3 ) + parameter( IEOF = 4 ) + parameter( ISKIP = 5 ) + parameter( KEYEND = '/END/' ) + parameter( IMISS = -9 ) + parameter( RMISS = -9.0 ) +c +c----------------------------------------------------------------------- +c Parameter for warning messages: +c----------------------------------------------------------------------- +c +c MXWARN I maximum number of warning messages allowed before exiting +c IDXWEM I index into warning counter for emissions warnings +c IDXWAL I index into warning counter for allocation warnings +c IDXWTC I index into warning counter for tech fractions warnings +c IDXWAC I index into warning counter for acitivity warnings +c IDXWPP I index into warning counter for population warnings +c IDXWSE I index into warning counter for seasonality warnings +c + integer*4 MXWARN + integer*4 IDXWEM + integer*4 IDXWAL + integer*4 IDXWTC + integer*4 IDXWAC + integer*4 IDXWPP + integer*4 IDXWSE +c + parameter( MXWARN = 5000000 ) + parameter( IDXWEM = 1 ) + parameter( IDXWAL = 2 ) + parameter( IDXWTC = 3 ) + parameter( IDXWAC = 4 ) + parameter( IDXWPP = 5 ) + parameter( IDXWSE = 6 ) +c +c----------------------------------------------------------------------- +c Parameters for user input flags: +c----------------------------------------------------------------------- +c +c FLAGHI C string for reponse of HIGH to altitude flag +c FLAGLO C string for response of LOW to altitude flag +c FLAGYES C string for response of YES to RFG flag +c FLAGNO C string for response of NO to RFG flag +c + character*5 FLAGHI + character*5 FLAGLO + character*5 FLAGYES + character*5 FLAGNO +c + parameter( FLAGHI = 'HIGH ') + parameter( FLAGLO = 'LOW ') + parameter( FLAGYES = 'YES ') + parameter( FLAGNO = 'NO ') +c +c----------------------------------------------------------------------- +c Array bound parameters for hash table: +c----------------------------------------------------------------------- +c +c MXEQIP I maximum number of equipment type +c + integer*4 MXEQIP +c + parameter ( MXEQIP = 25 ) +c +c----------------------------------------------------------------------- +c Parameters for fuel/engine types: +c----------------------------------------------------------------------- +c +c IDXGS2 I index for 2-stroke gasoline +c IDXGS4 I index for 4-stroke gasoline +c IDXDSL I index for diesel +c IDXLPG I index for LPG +c IDXCNG I index for CNG +c + integer*4 IDXGS2 + integer*4 IDXGS4 + integer*4 IDXDSL + integer*4 IDXLPG + integer*4 IDXCNG +c + parameter( IDXGS2 = 1 ) + parameter( IDXGS4 = 2 ) + parameter( IDXDSL = 3 ) + parameter( IDXLPG = 4 ) + parameter( IDXCNG = 5 ) +c +c----------------------------------------------------------------------- +c Parameter for fuel density: +c----------------------------------------------------------------------- +c +c DENGAS R fuel denity for gasoline +c DENCNG R fuel denity for CNG +c DENLPG R fuel denity for LPG +c DENDSL R fuel denity for Diesel +c + real*4 DENGAS + real*4 DENCNG + real*4 DENLPG + real*4 DENDSL +c + parameter( DENGAS = 6.17 ) + parameter( DENCNG = 0.0061 ) + parameter( DENLPG = 4.507 ) + parameter( DENDSL = 7.1 ) +c +c----------------------------------------------------------------------- +c Parameter for fuel carbon mass fraction: +c----------------------------------------------------------------------- +c +c CMFGAS R carbon mass frac for gasoline +c CMFCNG R carbon mass frac for CNG +c CMFLPG R carbon mass frac for LPG +c CMFDSL R carbon mass frac for Diesel +c + real*4 CMFGAS + real*4 CMFCNG + real*4 CMFLPG + real*4 CMFDSL +c + parameter( CMFGAS = 0.87 ) + parameter( CMFCNG = 0.717 ) + parameter( CMFLPG = 0.817 ) + parameter( CMFDSL = 0.87 ) +c +c----------------------------------------------------------------------- +c Parameters for emission factor adjustments: +c----------------------------------------------------------------------- +c +c SWTGS2 R baseline sulfur weight content for 2-stroke gasoline +c SWTGS4 R baseline sulfur weight content for 4-stroke gasoline +c SWTLPG R baseline sulfur weight content for LPG +c SWTCNG R baseline sulfur weight content for CNG +c SWTDSL R baseline sulfur weight content for Diesel +c +c SFCGS2 R fraction of 2-stroke gas sulfur that becomes PM +c SFCGS4 R fraction of 4-stroke gas sulfur that becomes PM +c SFCLPG R fraction of LPG sulfur that becomes PM +c SFCCNG R fraction of CNG sulfur that becomes PM +c SFCDSL R fraction of Diesel sulfur that becomes PM +c +c ALTGS2 R altitude correction factor for 2-stroke gasoline +c ALTGS4 R altitude correction factor for 4-stroke gasoline +c ALTCNG R altitude correction factor for LPG +c ALTLPG R altitude correction factor for CNG +c ALTDSL R altitude correction factor for Diesel +c +c DIUMIN R diurnal minimum temperature +c + real*4 SWTGS2 + real*4 SWTGS4 + real*4 SWTCNG + real*4 SWTLPG + real*4 SWTDSL +c + real*4 SFCGS2 + real*4 SFCGS4 + real*4 SFCLPG + real*4 SFCCNG + real*4 SFCDSL +c + real*4 ALTGS2 + real*4 ALTGS4 + real*4 ALTLPG + real*4 ALTCNG + real*4 ALTDSL +c + real*4 DIUMIN +c + parameter( SWTGS2 = 0.0339 ) + parameter( SWTGS4 = 0.0339 ) + parameter( SWTCNG = 0.008 ) + parameter( SWTLPG = 0.008 ) + parameter( SWTDSL = 0.33 ) +c + parameter( SFCGS2 = 0.03 ) + parameter( SFCGS4 = 0.03 ) + parameter( SFCLPG = 0.03 ) + parameter( SFCCNG = 0.03 ) + parameter( SFCDSL = 0.02247 ) +c + parameter( ALTGS2 = 1.0 ) + parameter( ALTGS4 = 1.0 ) + parameter( ALTLPG = 1.0 ) + parameter( ALTCNG = 1.0 ) + parameter( ALTDSL = 1.0 ) +c + parameter( DIUMIN = 40.0 ) +c +c----------------------------------------------------------------------- +c Parameter for pollutant order: +c----------------------------------------------------------------------- +c +c MXPOL I maximum number of pollutant categories +c IDXTHC I index of exhaut HC emission factor in arrays +c IDXCO I index of CO emission factor in arrays +c IDXNOX I index of NOx emission factor in arrays +c IDXPM I index of PM emiison factor in arrays +c IDXCO2 I index of CO2 emission factor in arrays +c IDXSOX I index of SOx emission factor in arrays +c IDXCRA I index of crank HC emission factor in arrays +c IDXDIU I index of Diurnal evaporative emission factors in arrays +c IDXTKP I index of Tank Permeation emission factors in arrays +c IDXHOS I index of Non-rec marine Hose Permeation emission factors in arrays +c IDXNCK I index of Rec-marine filler neck hose permeation emission factors in arrays +c IDXSR I index of Rec-marine supply/return hose permeation emission factors in arrays +c IDXVNT I index of Rec-marine vent hose permeation emission factors in arrays +c IDXDIS I index of Refueling (Displacement) emission factor in arrays +c IDXSPL I index of Spillage emission factor in arrays +c IDXSOK I index of Hot Soak emission factor in arrays +c IDXRLS I index of Running Loss emission factor in arrays +c IDXRST I index of Resting Loss emission factor in arrays +c IDSTHC I index of Start emissions for THC +c IDSCO I index of Start emissions for CO +c IDSNOX I index of Start emissions for NOx +c IDSCO2 I index of Start emissions for CO2 +c IDSSOX I index of Start emissions for SOx +c IDSPM I index of Start emissions for PM +c + integer*4 MXPOL + integer*4 IDXTHC + integer*4 IDXCO + integer*4 IDXNOX + integer*4 IDXCO2 + integer*4 IDXSOX + integer*4 IDXPM + integer*4 IDXCRA + integer*4 IDXDIU + integer*4 IDXDIS + integer*4 IDXTKP + integer*4 IDXHOS + integer*4 IDXNCK + integer*4 IDXSR + integer*4 IDXVNT + integer*4 IDXSPL + integer*4 IDXSOK + integer*4 IDXRLS +c integer*4 IDXRST + integer*4 IDSTHC + integer*4 IDSCO + integer*4 IDSNOX + integer*4 IDSCO2 + integer*4 IDSSOX + integer*4 IDSPM +c + parameter( MXPOL = 23 ) + parameter( IDXTHC = 1 ) + parameter( IDXCO = 2 ) + parameter( IDXNOX = 3 ) + parameter( IDXCO2 = 4 ) + parameter( IDXSOX = 5 ) + parameter( IDXPM = 6 ) + parameter( IDXCRA = 7 ) + parameter( IDXDIU = 8 ) + parameter( IDXTKP = 9 ) + parameter( IDXHOS = 10 ) + parameter( IDXNCK = 11 ) + parameter( IDXSR = 12 ) + parameter( IDXVNT = 13 ) + parameter( IDXSOK = 14 ) + parameter( IDXDIS = 15 ) + parameter( IDXSPL = 16 ) + parameter( IDXRLS = 17 ) +c parameter( IDXRST = 15 ) + parameter( IDSTHC = 18 ) + parameter( IDSCO = 19 ) + parameter( IDSNOX = 20 ) + parameter( IDSCO2 = 21 ) + parameter( IDSSOX = 22 ) + parameter( IDSPM = 23 ) +c +c---------------------------------------------------------------------- +c Parameters for SAROAD pollutant codes: +c +c ISCNOX I NOx SAROAD code +c ISCTHC I THC SAROAD code +c ISCCO I CO SAROAD code +c ISCPM I PM10 SAROAD code +c ISCSOX I SOx SAROAD code +c + integer*4 ISCNOX + integer*4 ISCTHC + integer*4 ISCCO + integer*4 ISCPM + integer*4 ISCSOX +c + parameter( ISCNOX = 42603 ) + parameter( ISCTHC = 43101 ) + parameter( ISCCO = 42101 ) + parameter( ISCPM = 81102 ) + parameter( ISCSOX = 42401 ) +c +c +c---------------------------------------------------------------------- +c Parameters for AMS criteria pollutant names: +c +c AMSNOX C NOx +c AMSTHC C THC +c AMSCO C CO +c AMSPM C PM10 +c AMSSOX C SOx +c AMSCO2 C CO2 +c + character*4 AMSNOX + character*4 AMSTHC + character*4 AMSCO + character*4 AMSPM + character*4 AMSSOX + character*4 AMSCO2 +c + parameter( AMSNOX = 'NOX ' ) + parameter( AMSTHC = 'THC ' ) + parameter( AMSCO = 'CO ' ) + parameter( AMSPM = 'PM ' ) + parameter( AMSSOX = 'SO2 ' ) + parameter( AMSCO2 = 'CO2 ' ) +c +c--------------------------------------------------------------------------- +c Parameters for pollutant names within model +c +c NMETHC C Exhaust THC +c NMENOX C Exhaust NOX +c NMECO C Exhaust CO +c NMESOX C Exhaust SOX +c NMECO2 C Exhaust CO2 +c NMEPM C Exhaust PM +c NMCRA C Crankcase +c NMDIU C Diurnal +c NMREF C Refueling +c NMSPL C Spillage +c NMHSOK C Hot Soak +c NMTKP C Tank Permeation +c NMHOS C Non-Rec-Marine Hose Permeation +c NMNCK C Rec-Marine Fill Neck Hose Permeation +c NMRS C Rec-Marine Supply/Return Hose Permeation +c NMVNT C Rec-Marine Vent Hose Permeation +c NMRST C Resting Loss +c NMRLS C Running Loss +c NMSTHC C Start THC +c NMSNOX C Start NOX +c NMSCO C Start CO +c NMSSOX C Start NOX +c NMSCO2 C Start CO2 +c NMSPM C Start PM +c + character*10 NMETHC + character*10 NMENOX + character*10 NMECO + character*10 NMESOX + character*10 NMECO2 + character*10 NMEPM + character*10 NMCRA + character*10 NMDIU + character*10 NMREF + character*10 NMSPL + character*10 NMHSOK + character*10 NMTKP + character*10 NMHOS + character*10 NMNCK + character*10 NMSR + character*10 NMVNT +c character*10 NMRST + character*10 NMRLS + character*10 NMSTHC + character*10 NMSNOX + character*10 NMSCO + character*10 NMSSOX + character*10 NMSCO2 + character*10 NMSPM +c + parameter(NMETHC = 'Exh. THC' ) + parameter(NMENOX = 'Exh. NOX' ) + parameter(NMECO = 'Exh. CO' ) + parameter(NMESOX = 'Exh. SO2' ) + parameter(NMECO2 = 'Exh. CO2' ) + parameter(NMEPM = 'Exh. PM' ) + parameter(NMCRA = 'Crankcase' ) + parameter(NMDIU = 'Diurnal' ) + parameter(NMREF = 'Refueling' ) + parameter(NMSPL = 'Spillage' ) + parameter(NMHSOK = 'Hot Soak' ) + parameter(NMTKP = 'Tank Perm' ) + parameter(NMHOS = 'Hose Perm' ) + parameter(NMNCK = 'Neck Perm' ) + parameter(NMSR = 'S/R Perm' ) + parameter(NMVNT = 'Vent Perm' ) + + parameter(NMRLS = 'RuningLoss') +c parameter(NMRST = 'RestngLoss') + parameter(NMSTHC = 'Start THC' ) + parameter(NMSNOX = 'Start NOX' ) + parameter(NMSCO = 'Start CO' ) + parameter(NMSSOX = 'Start SO2' ) + parameter(NMSCO2 = 'Start CO2' ) + parameter(NMSPM = 'Start PM' ) +c +c----------------------------------------------------------------------- +c FUZZ factors: +c----------------------------------------------------------------------- +c +c EFUZZ R value for insignificant emission +c + real*4 EFUZZ +c + parameter( EFUZZ = 1.0E-5 ) +c +c----------------------------------------------------------------------- +c Unit Conversion: +c----------------------------------------------------------------------- +c +c +c CVTTON R converion factor from grams to tons +c + real*4 CVTTON +c + parameter( CVTTON = 1.102311E-06 ) +c +c----------------------------------------------------------------------- +c Parameters for array bounds: +c----------------------------------------------------------------------- +c +c NSTATE I number of states in the country +c NCNTY I number of conties in the country +c NEQCAT I number of equipment categories +c MXNAA I maximum number of NAA designations +c MXPOP I maximum number of population records per SCC +c MXPFIL I maximum number of population files +c MXTECH I maximum number of exhaust tech types +c MXEVTECH I maximum number of evap tech types +c MXHPC I maximum number of horepower categories +c MXRGDF I maximum number of region definitions allowed +c MXCTDF I maximum number of counties in each region +c MXSUBC I maximum number of subcounty entries +c MXAGYR I maximum number of years in model year distribution +c MXDAYS I maximum number of days in a year +c MXFIPS I maximum number of FIPS codes +c + integer*4 NSTATE + integer*4 NCNTY + integer*4 NEQCAT + integer*4 MXNAA + integer*4 MXPOP + integer*4 MXPFIL + integer*4 MXTECH + integer*4 MXEVTECH + integer*4 MXHPC + integer*4 MXRGDF + integer*4 MXCTDF + integer*4 MXSUBC + integer*4 MXAGYR + integer*4 MXDAYS + integer*4 MXFIPS +c + parameter( NSTATE = 53 ) + parameter( NCNTY = 3400 ) + parameter( NEQCAT = 12 ) + parameter( MXNAA = 50 ) + parameter( MXPOP = 1000 ) + parameter( MXPFIL = 3265 ) + parameter( MXTECH = 15 ) + parameter( MXEVTECH = 15 ) + parameter( MXHPC = 18 ) + parameter( MXRGDF = 50 ) + parameter( MXCTDF = 10 ) + parameter( MXSUBC = 300 ) + parameter( MXAGYR = 51 ) + parameter( MXDAYS = 365 ) + parameter( MXFIPS = 78 ) +c +c----------------------------------------------------------------------- +c Parameters for period definition: +c----------------------------------------------------------------------- +c +c PERANN C string for specifying ANNUAL period +c PERMTH C string for specifying MONTHLY period +c PERSES C string for specifying SEASONAL period +c SUMTYP C string for specifying sum of typical day in period +c SUMTOT C string for specifying sum of total in period +c + character*10 PERANN + character*10 PERMTH + character*10 PERSES + character*15 SUMTYP + character*15 SUMTOT +c + parameter( PERANN = 'ANNUAL ' ) + parameter( PERMTH = 'MONTHLY ' ) + parameter( PERSES = 'SEASONAL ' ) + parameter( SUMTYP = 'TYPICAL DAY ' ) + parameter( SUMTOT = 'PERIOD TOTAL ' ) +c +c IDXANN I index of type that is ANNUAL period +c IDXMTH I index of type that is MONTHLY period +c IDXSES I index of type that is SEASONAL period +c IDXTYP I index of type that is DAILY period +c IDXTOT I index of type that is DAILY period +c + integer*4 IDXANN + integer*4 IDXMTH + integer*4 IDXSES + integer*4 IDXTYP + integer*4 IDXTOT +c + parameter( IDXANN = 1 ) + parameter( IDXMTH = 2 ) + parameter( IDXSES = 3 ) + parameter( IDXTYP = 1 ) + parameter( IDXTOT = 2 ) +c +c----------------------------------------------------------------------- +c Parameters for specifying month of year: +c----------------------------------------------------------------------- +c +c MON*** C string for specifying month of *** +c + character*10 MONJAN + character*10 MONFEB + character*10 MONMAR + character*10 MONAPR + character*10 MONMAY + character*10 MONJUN + character*10 MONJUL + character*10 MONAUG + character*10 MONSEP + character*10 MONOCT + character*10 MONNOV + character*10 MONDEC +c + parameter( MONJAN = 'JANUARY ' ) + parameter( MONFEB = 'FEBRUARY ' ) + parameter( MONMAR = 'MARCH ' ) + parameter( MONAPR = 'APRIL ' ) + parameter( MONMAY = 'MAY ' ) + parameter( MONJUN = 'JUNE ' ) + parameter( MONJUL = 'JULY ' ) + parameter( MONAUG = 'AUGUST ' ) + parameter( MONSEP = 'SEPTEMBER ' ) + parameter( MONOCT = 'OCTOBER ' ) + parameter( MONNOV = 'NOVEMBER ' ) + parameter( MONDEC = 'DECEMBER ' ) +c +c IDX*** I index in arrays of month of *** +c + integer*4 IDXJAN + integer*4 IDXFEB + integer*4 IDXMAR + integer*4 IDXAPR + integer*4 IDXMAY + integer*4 IDXJUN + integer*4 IDXJUL + integer*4 IDXAUG + integer*4 IDXSEP + integer*4 IDXOCT + integer*4 IDXNOV + integer*4 IDXDEC +c + parameter( IDXJAN = 1 ) + parameter( IDXFEB = 2 ) + parameter( IDXMAR = 3 ) + parameter( IDXAPR = 4 ) + parameter( IDXMAY = 5 ) + parameter( IDXJUN = 6 ) + parameter( IDXJUL = 7 ) + parameter( IDXAUG = 8 ) + parameter( IDXSEP = 9 ) + parameter( IDXOCT = 10 ) + parameter( IDXNOV = 11 ) + parameter( IDXDEC = 12 ) +c +c----------------------------------------------------------------------- +c Parameters for day of week: +c----------------------------------------------------------------------- +c +c WEEKDY C character string for specifying Weekday +c WEEKDS C character string for specifying Weekday +c WEEKND C character string for specifying Weekend +c + character*10 WEEKDY + character*10 WEEKDS + character*10 WEEKND +c + parameter( WEEKDY = 'WEEKDAY ' ) + parameter( WEEKDS = 'WEEKDAYS ' ) + parameter( WEEKND = 'WEEKEND ' ) +c +c IDXWKD I index of weekday in arrays +c IDXWKE I index of weekend in arrays +c + integer*4 IDXWKD + integer*4 IDXWKE +c + parameter( IDXWKD = 1 ) + parameter( IDXWKE = 2 ) +c +c----------------------------------------------------------------------- +c Parameters for seasons: +c----------------------------------------------------------------------- +c +c SESWTR C string for specifying Winter season +c SESSPR C string for specifying Spring season +c SESSUM C string for specifying Summer season +c SESFAL C string for specifying Fall season +c + character*10 SESWTR + character*10 SESSPR + character*10 SESSUM + character*10 SESFAL +c + parameter( SESWTR = 'WINTER ' ) + parameter( SESSPR = 'SPRING ' ) + parameter( SESSUM = 'SUMMER ' ) + parameter( SESFAL = 'AUTUMN ' ) +c +c IDXWTR I index of Winter season in arrays +c IDXSPR I index of Spring season in arrays +c IDXSUM I index of Summer season in arrays +c IDXFAL I index of Fall season in arrays +c + integer*4 IDXWTR + integer*4 IDXSPR + integer*4 IDXSUM + integer*4 IDXFAL +c + parameter( IDXWTR = 1 ) + parameter( IDXSPR = 2 ) + parameter( IDXSUM = 3 ) + parameter( IDXFAL = 4 ) +c +c----------------------------------------------------------------------- +c Parameters for growth factor: +c----------------------------------------------------------------------- +c +c MINGRWIND R minimum growth indicator, used to solve issue caused +c by growth indicator of 0 (to avoid divide by 0) +c + real*4 MINGRWIND +c + parameter( MINGRWIND = 0.0001 ) +c +c +c----------------------------------------------------------------------- +c Parameters for input validation: +c----------------------------------------------------------------------- +c +c MINYEAR I minimum year (episode, growth, tech, etc.) +c MAXYEAR I maximum year (episode, growth, tech, etc.) +c + integer*4 MINYEAR + integer*4 MAXYEAR +c + parameter( MINYEAR = 1970 ) + parameter( MAXYEAR = 2050 ) +c diff --git a/NONROAD/NR08a/SOURCE/nonrdreg.inc b/NONROAD/NR08a/SOURCE/nonrdreg.inc new file mode 100644 index 0000000..6d74fec --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdreg.inc @@ -0,0 +1,43 @@ +C**** NONRDREG.INC +c +c----------------------------------------------------------------------- +c +c Include file for the region definition data used by the EPA +c NONROAD program. It contains data structures for the state names, +c county names and code as well as the subregion designation. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 -gmw- Original development +c 04/25/05 -cimulus- Added nmcnty to hold the number of used counties. +c This should be used instead of NCNTY. +c 05/16/05 -cimulus- Increased size of strings in cntynm to 50 +c +c----------------------------------------------------------------------- +c Variables for county and state data: +c----------------------------------------------------------------------- +c +c statnm C name of each state +c statcd C state FIPS codes +c nconty I array of number of counties in each state +c idxcty I index into arrays of first county in the state +c cntynm C name of each county +c fipcod C array of fips codes selected +c lfipcd L flags to determine if the counties were selected +c lstacd L flag for determining if state was selected +c nmcnty I number of counties actually used, upto NCNTY +c + character*20 statnm(NSTATE) + character*5 statcd(NSTATE) + character*50 cntynm(NCNTY) + character*5 fipcod(NCNTY) + integer*4 nconty(NSTATE) + integer*4 idxcty(0:NSTATE+1) + logical*4 lfipcd(NCNTY) + logical*4 lstacd(NSTATE) + integer*4 nmcnty +c + common /regchr/ statcd, fipcod, statnm, cntynm + common /regdat/ nconty, idxcty, lfipcd, lstacd, nmcnty diff --git a/NONROAD/NR08a/SOURCE/nonrdrtrft.inc b/NONROAD/NR08a/SOURCE/nonrdrtrft.inc new file mode 100644 index 0000000..5d91259 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdrtrft.inc @@ -0,0 +1,166 @@ +c*** NONRDRTRFT.INC +c +c----------------------------------------------------------------------- +c +c Include file for the retrofit parameters used by the NONROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/25/05 --cimulus-- Original development +c 05/31/05 --cimulus-- Added rtrftfltr1mnidx to the rtrftrtdat common block +c +c----------------------------------------------------------------------- +c Parameters for array bounds: +c----------------------------------------------------------------------- +c +c MXRTRFT I maximum number of retrofit records in retrofit file +c NRTRFTPLLTNT I number of pollutants that are allowed as possible +c value in the pollutant field of a retrofit record +c + integer*4 MXRTRFT + integer*4 NRTRFTPLLTNT +c + parameter( MXRTRFT = 500 ) + parameter( NRTRFTPLLTNT = 4 ) +c +c +c----------------------------------------------------------------------- +c Variables for retrofit parameters +c----------------------------------------------------------------------- +c +c rtrftcount I number of records in the retrofit arrays +c rtrftrec I original record number from input file +c rtrftryst I retrofit year start (first calendar year +c when retrofits are done) +c rtrftryen I retrofit year end (last calendar year +c when retrofits are done) +c rtrftmyst I model year start for the retrofit (first model +c year equipment that is receiving retrofit) +c rtrftmyen I model year end for the retrofit (last model +c year equipment that is receiving retrofit) +c rtrftscc C SCC code for the retrofit +c rtrfttechtype C exhaust technology type for the retrofit +c (e.g., Base, T0, T1, T2, T2M) +c rtrfthpmn R minimum HP for the retrofit +c rtrfthpmx R maximum HP for the retrofit +c rtrftannualfracorn R annual retrofit fraction (0.0 - 1.0) OR actual +c total number retrofitted (greater than 1.0) +c rtrfteffect R retrofit effectiveness; range = 0.0 - 1.0 +c (zero is no benefit) +c rtrftpollutant C exhaust pollutant affected by retrofit +c (HC, CO, NOx, or PM) +c rtrftplltntidx I index into rtrftplltnt for the pollutant that +c corresponds to rtrftpollutant (HC = IDXTHC, +c CO = IDXCO, etc); this is calculated based on +c rtrftpollutant rather than read from file +c rtrftid I retrofit ID (same arbitrary number for +c different pollutants being affected by +c same retrofit) +c + integer*4 rtrftcount + integer*4 rtrftrec(MXRTRFT) + integer*4 rtrftryst(MXRTRFT) + integer*4 rtrftryen(MXRTRFT) + integer*4 rtrftmyst(MXRTRFT) + integer*4 rtrftmyen(MXRTRFT) + character*10 rtrftscc(MXRTRFT) + character*10 rtrfttechtype(MXRTRFT) + real*4 rtrfthpmn(MXRTRFT) + real*4 rtrfthpmx(MXRTRFT) + real*4 rtrftannualfracorn(MXRTRFT) + real*4 rtrfteffect(MXRTRFT) + character*10 rtrftpollutant(MXRTRFT) + integer*4 rtrftplltntidx(MXRTRFT) + integer*4 rtrftid(MXRTRFT) +c + common /rtrftchr/ rtrftscc, rtrfttechtype, rtrftpollutant + common /rtrftdat/ rtrftcount, rtrftrec, rtrftryst, rtrftryen, + & rtrftmyst, rtrftmyen, rtrfthpmn, rtrfthpmx, + & rtrftannualfracorn, rtrfteffect, + & rtrftplltntidx, rtrftid +c +c----------------------------------------------------------------------- +c Parameters for input validation: +c----------------------------------------------------------------------- +c +c MINRTRFTYEAR I minimum retrofit year +c MAXRTRFTYEAR I maximum retrofit year +c MINRTRFTMDLYEAR I minimum retrofit model year +c MAXRTRFTMDLYEAR I maximum retrofit model year +c RTRFTSCCALL C the "ALL" option for SCC +c RTRFTTCHTYPALL C the "ALL" option for tech type +c + integer*4 MINRTRFTYEAR + integer*4 MAXRTRFTYEAR + integer*4 MINRTRFTMDLYEAR + integer*4 MAXRTRFTMDLYEAR + character*10 RTRFTSCCALL + character*10 RTRFTTCHTYPALL +c + parameter( MINRTRFTYEAR = MINYEAR ) + parameter( MAXRTRFTYEAR = MAXYEAR ) + parameter( MINRTRFTMDLYEAR = 1900 ) + parameter( MAXRTRFTMDLYEAR = MAXYEAR ) + parameter( RTRFTSCCALL = 'ALL' ) + parameter( RTRFTTCHTYPALL = 'ALL' ) +c +c----------------------------------------------------------------------- +c Variables for retrofit input validation +c----------------------------------------------------------------------- +c +c rtrftplltnt C pollutants allowed in retrofit records +c rtrftplltntidxmp I map from index into rtrftplltnt to +c pollutant index +c + character*10 rtrftplltnt(NRTRFTPLLTNT) + integer*4 rtrftplltntidxmp(NRTRFTPLLTNT) +c + common /rtrftvldchr/ rtrftplltnt, rtrftplltntidxmp +c +c----------------------------------------------------------------------- +c Variables for retrofit runtime, calculated values +c----------------------------------------------------------------------- +c +c rtrftfltr1cnt I number of indexes in the retrofit filter +c type 1 array +c rtrftfltr1 I the indexes of a filtered set of retrofit +c records for filter type 1 +c rtrftfltr1mnidx I the minimum index into rtrftfltr1 that could +c possibly affect a subsequent call to fndrtrft +c (i.e., the minimum index into rtrftfltr1 that +c has a rtrftmyen value that is >= the next +c model year that will be passed to fndrtrft) +c rtrftfltr2cnt I number of indexes in the retrofit filter +c type 2 array +c rtrftfltr2 I the indexes of a filtered set of retrofit +c records for filter type 2 +c rtrftfltr3cnt I number of indexes in the retrofit filter +c type 3 array +c rtrftfltr3 I the indexes of a filtered set of retrofit +c records for filter type 3 +c numrtrft I number of retrofits applicable to the current +c iteration (this is different than rtrftfltr3cnt +c in that numrtrft is the number of unique +c retrofit IDs, whereas rtrftfltr3cnt can include +c multiple records per retrofit ID) +c rtrftplltntrdfrc R pollutant reduction fraction for the current +c iteration (SCC, HP, model year, tech type); +c large enough for all pollutants, although +c only some are used +c + integer*4 rtrftfltr1cnt + integer*4 rtrftfltr1(MXRTRFT) + integer*4 rtrftfltr1mnidx + integer*4 rtrftfltr2cnt + integer*4 rtrftfltr2(MXRTRFT) + integer*4 rtrftfltr3cnt + integer*4 rtrftfltr3(MXRTRFT) + integer*4 numrtrft + real*4 rtrftplltntrdfrc(MXPOL) +c + common /rtrftrtdat/ rtrftfltr1cnt, rtrftfltr1, rtrftfltr1mnidx, + & rtrftfltr2cnt, rtrftfltr2, + & rtrftfltr3cnt, rtrftfltr3, numrtrft, + & rtrftplltntrdfrc diff --git a/NONROAD/NR08a/SOURCE/nonrdtpl.inc b/NONROAD/NR08a/SOURCE/nonrdtpl.inc new file mode 100644 index 0000000..a24bd11 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdtpl.inc @@ -0,0 +1,95 @@ +c*** TEMPORAL.INC +c +c----------------------------------------------------------------------- +c +c Include for the seasonality data for the OFFROAD program. +c +c----------------------------------------------------------------------- +c LOG +c----------------------------------------------------------------------- +c 07/19/96 --jlf-- removed ithour (which was not used) +c 03/20/17 --dbc-- increased MXTASC for MOVES2014a +c----------------------------------------------------------------------- +c Parameters for array dimensions: +c----------------------------------------------------------------------- +c +c MXTASC I maximum number of SCC codes in the temporal arrays +c MXMTH I maximum number of months +c MXDAY I maximum number of days (weekday, weekend) +c MXHOUR I maximum number of hours +c + integer*4 MXTASC + integer*4 MXMTH + integer*4 MXDAY + integer*4 MXHOUR +c + parameter( MXTASC = 12000 ) + parameter( MXMTH = 12 ) + parameter( MXDAY = 2 ) + parameter( MXHOUR = 24 ) +c +c----------------------------------------------------------------------- +c Temporal allocation arrays: +c----------------------------------------------------------------------- +c +c asctpm C SCC code of monthly temporal record +c asctpl C SCC code of daily temporal records +c sbrtpm C subregion code of monthly temporal code +c sbrtpl C subregion code of daily temporal record +c ntplcd I number of daily temporal records +c ntplmn I number of monthly temporal records +c mthfac R monthly temporal fractions +c dayfac R daily temporal fractions +c + character*10 asctpl(MXTASC) + character*10 asctpm(MXTASC) + character*5 sbrtpl(MXTASC) + character*5 sbrtpm(MXTASC) + integer*4 ntplcd + integer*4 ntplmn + real*4 mthfac(MXMTH,MXTASC) + real*4 dayfac(MXDAY,MXTASC) +c + common /tplchr/ asctpl, sbrtpl, sbrtpm, asctpm + common /tpldat/ ntplcd, ntplmn, mthfac, dayfac +c +c----------------------------------------------------------------------- +c Default allocation arrays: +c----------------------------------------------------------------------- +c +c defmth R array of default monthly temporal allocation +c defday R array of default daily temporal allocation +c defhr R array of default hourly temporal allocation +c + real*4 defmth(MXMTH) + real*4 defday(MXDAY) + real*4 defhr(MXHOUR) +c + common /defdat/ defmth, defday, defhr +c +c------------------------------------------------------------------------- +c Parameters for region definitions file: +c------------------------------------------------------------------------- +c +c MXREGN C maximum number of region definitions +c + integer*4 MXREGN +c + parameter( MXREGN = 55 ) +c +c------------------------------------------------------------------------- +c Variables for regions definition file: +c------------------------------------------------------------------------- +c +c isttcnt I number of FIPS for each region definition +c nregcd I the number of region definitions +c rgdfcd C list of region definition codes +c rgstt C list of FIPS codes for each region +c + character*5 rgdfcd(MXREGN) + character*5 rgstt(MXREGN,NCNTY) + integer*4 isttcnt(MXREGN) + integer*4 nregcd +c + common /rdfchr/ rgdfcd, rgstt + common /rdfdat/ isttcnt, nregcd diff --git a/NONROAD/NR08a/SOURCE/nonrdusr.inc b/NONROAD/NR08a/SOURCE/nonrdusr.inc new file mode 100644 index 0000000..d9f080e --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonrdusr.inc @@ -0,0 +1,224 @@ +C**** NONRDUSR.INC +c +c----------------------------------------------------------------------- +c +c Include file user input parameters and variables for OFFROAD program +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/01/95 -djk- Original development +c 02/15/97 -gwilson- Wholesale changes for BETA version +c 10/29/01 -charvey- Adds optional base sulfur array +c 06/25/04 -dfk- Added daily temperature and RVP arrays +c 09/22/04 -dfk- Added rec marine diesel sulfur +c 03/15/05 -cimulus- Added growth year +c 03/15/05 -cimulus- Added technology year +c 07/15/05 -cimulus- Removed commercial marine related constants +c and variables +c +c----------------------------------------------------------------------- +c Variables for user options for each model run: +c----------------------------------------------------------------------- +c +c title1 C first user supplied string of model run description +c title2 C second user supplied string of model run description +c fulrvp R fuel RVP in psi (for evap temperature correction) +c oxypct R percent by weight of oxygen in the fuel +c ethmkt R ethanol blend market share, percent +c ethvpct R volume percent ethanol in ethanol blends +c tempmn R minumum daily temperature (for diurnal adjustment) +c tempmx R maximum daily temperature (for diurnal adjustment) +c amtemp R representative ambient temperature +c amrvp R representative daily fuel RVP +c soxgas R weight fraction of sulfur in gasoline +c soxdsl R weight fraction of sulfur in diesel (land) +c soxdsm R weight fraction of sulfur in rec marine diesel +c soxcng R weight fraction of sulfur in LPG/CNG +c lhigh L flag for determining if in high altitude region +c lrfg L flag for determining if RFG adjustments should be applied +c daytmp R daily maximum, minimum, and average temperatures, by state/region +c dayrvp R daily fuel RVP, by state/region +c + character*80 title1 + character*80 title2 + real*4 fulrvp + real*4 oxypct + real*4 ethmkt, ethvpct + real*4 tempmn + real*4 tempmx + real*4 amtemp + real*4 soxgas + real*4 soxdsl + real*4 soxdsm + real*4 soxcng + real*4 daytmp(MXDAYS,3,0:MXFIPS) + real*4 dayrvp(MXDAYS,0:MXFIPS) + logical*4 lhigh + logical*4 lrfg +c + common /optchr/ title1, title2 + common /optdat/ fulrvp, oxypct, ethmkt, ethvpct, tempmn, + & tempmx, amtemp, soxgas, soxdsl, soxdsm, soxcng, + & daytmp, dayrvp, lhigh, lrfg +c +c----------------------------------------------------------------------- +c Variables for /PERIOD/ packet: +c----------------------------------------------------------------------- +c +c iprtyp I code for period type +c ismtyp I code for type of sum +c iepyr I year of episode +c imonth I index of the month of the year +c iday I index of the day of week +c iseasn I index of the season of the year +c ldays L flag for determining if day of week is used +c lmonth L flag for determining if month of year is used +c idseas I array of indexes for which season each month is in +c igryr I year of growth calculation +c itchyr I year of technology selection +c + integer*4 iprtyp + integer*4 ismtyp + integer*4 iepyr + integer*4 imonth + integer*4 iday + integer*4 iseasn + logical*4 ldays(2) + logical*4 lmonth(12) + integer*4 idseas(12) + integer*4 igryr + integer*4 itchyr +c + common /perdat/ iprtyp, ismtyp, iepyr, imonth, iday, iseasn, + & ldays, lmonth, idseas, igryr, itchyr +c +c------------------------------------------------------------------------- +c Parameters for REGION packet: +c------------------------------------------------------------------------- +c +c USTOT C code for national total inventory +c NATION C code for 50-state inventory +c STATE C code for state-level inventory +c COUNTY C code for county-level inventory +c SUBCTY C code for subcounty-level inventory +c + character*10 USTOT + character*10 NATION + character*10 STATE + character*10 COUNTY + character*10 SUBCTY +c + parameter( USTOT = 'US TOTAL ' ) + parameter( NATION = '50STATE ' ) + parameter( STATE = 'STATE ' ) + parameter( COUNTY = 'COUNTY ' ) + parameter( SUBCTY = 'SUBCOUNTY ' ) +c +c------------------------------------------------------------------------- +c Variables for REGION packet: +c------------------------------------------------------------------------- +c +c reglvl C the level for emissions estimates +c reglst C list of region codes to be used +c regcty C coutny portopm of list of region codes to be used +c nregin I number of region codes in the list +c + character*10 reglvl + character*10 reglst(MXSUBC) + character*10 regcty(MXSUBC) + integer*4 nregin +c + common /rgdchr/ reglvl, reglst, regcty + common /rgddat/ nregin +c +c----------------------------------------------------------------------- +c Parameters for equipment names and codes: +c----------------------------------------------------------------------- +c +c NEQNAM I number of equipment names and codes +c + integer*4 NEQNAM +c + parameter( NEQNAM = 575 ) +c +c----------------------------------------------------------------------- +c Variables for equipment categories: +c----------------------------------------------------------------------- +c +c eqpcod C SCC codes of individual equipments +c lascat L flag for determing if individual equipment was selected +c lascal L flag for determining if all SCC are selected +c nrcasc I number of records found for each SCC +c + character*10 eqpcod(NEQNAM) + integer*4 nrcasc(NEQNAM) + logical*4 lascat(NEQNAM) + logical*4 lascal +c + common /eqchr/ eqpcod + common /eqdat/ lascat, lascal, nrcasc +c +c----------------------------------------------------------------------- +c Variables for pollutant names and SAROD codes: +c----------------------------------------------------------------------- +c +c iscod I vector that holds SAROD codes indexed by pollutant +c amspol C vector that holds AMS criteria pollutant names +c + integer*4 iscod(MXPOL) + character*4 amspol(MXPOL) +c + common /amschr/ amspol + common /amsdat/ iscod +c +c polnam C vector that holds model pollutant names +c + character*10 polnam(MXPOL) +c + common /polchr/ polnam +c +c----------------------------------------------------------------------- +c Variables for optional Stage II controls: +c----------------------------------------------------------------------- +c +c stg2fac R percent reduction due to stage II controls +c + real*4 stg2fac +c + common /stg2/ stg2fac +c +c----------------------------------------------------------------------- +c Variables and parameters for optional Base Sulfur by Tech Type: +c----------------------------------------------------------------------- +c +c MXSULF I maximum number of alternate tech records +c + integer*4 MXSULF +c + parameter( MXSULF = 100) +c +c sultec C Tech types with alternate base (cert) sulfur +c sulalt R Aternate base (cert) sulfur level for PM adjustment +c sulcnv R Sulfur conversion factor oefficient +c numalt I number of tecords read +c + character*10 sultec(MXSULF) + real*4 sulalt(MXSULF) + real*4 sulcnv(MXSULF) + integer*4 numalt +c + common /sulchr/ sultec + common /suldat/ sulalt, sulcnv, numalt +c +c----------------------------------------------------------------------- +c Common block used in CALUDI: +c----------------------------------------------------------------------- +c + real*4 feet + integer*4 irejn + real*4 alt + integer*4 initpr +c + COMMON /REGION/ FEET(2),IREJN,ALT,INITPR diff --git a/NONROAD/NR08a/SOURCE/nonroad.f b/NONROAD/NR08a/SOURCE/nonroad.f new file mode 100644 index 0000000..049fa98 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/nonroad.f @@ -0,0 +1,397 @@ +C**** NONROAD +c + program nonroad +c +c----------------------------------------------------------------------- +c +c This is the main driving routine for the EPA NONROAD model. It calls +c all of the routines to read and store the data needed to process +c the nonroad emisisons. It reads populations for all equipment types +c and states/counties requested and then allocates population to +c county/subregion level. Then population is then grown to future +c year predictions. Activity levels and episode specific adjustment +c factors are applied to the population to get hours of use for the +c requested period. Emission factors are then retrieved and applied +c to the activity to get emission estimates. The emission estimates +c are written to a scratch file which will be read and processed for +c purposes of creating output tables. +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- began development +c 07/22/96 --jlf-- changes for technology fractions +c 09/22/04 --dfk-- added initialization of yrsav per NR04n2 +c 07/15/05 --cimulus-- removed commercial marine related handling +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; avghpc values are read from file, +c rather than being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of a string in an array of strings +c strmin I returns length of string (minumum of 1) +c + integer*4 fndchr + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 fname + character*20 tmpstr + character*10 asccod + integer*4 jerr, idxasc, icurec, idxsta, idxfip, iyear + integer*4 idxreg, i, j + real*4 growth, emsams(NCNTY,MXPOL) + logical*4 lskip, lexist +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the spin characters --- +c + spin(0) = '|' + spin(1) = '|' + spin(2) = '/' + spin(3) = '-' + spin(4) = '-' + spin(5) = '\\' + spin(6) = '|' + spin(7) = '|' + spin(8) = '/' + spin(9) = '-' + spin(10) = '-' + spin(11) = '\\' + nrecds = 0 +c +c --- call routine to get the options file --- +c + call getsys( jerr, fname ) + if( jerr .NE. ISUCES ) goto 9999 + sysfl = fname + inquire(file=sysfl,exist=lexist) + if(.NOT. lexist) goto 7002 +c +c --- call routines to read and initialize some of the arrays -- +c + write(IOWSTD,'(A,$)') 'Initializing...' + call iniasc() + call spinit() + call in1fip() + call spinit() + call in2fip() + call spinit() + call in3fip() + call spinit() + call in4fip() + call spinit() + call in5fip() + call spinit() +c +c --- call routines to read filenames from the user options file +c and open some of the files --- +c + call opnnon( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to read all data files and initialize the +c data structures --- +c + call intnon( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to write the header of the data file --- +c + call wrthdr( jerr ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- if doing EPS2 AMS file, call routine to initialize variables --- +c + if( lamsfl ) call intams() +c +c --- main processing loop, call routine to read the population +c records until there are no more population records to process ---- +c + iyear = iepyr + write(IOWSTD,'(2A)') 'Done' + write(IOWSTD,'(1X,A,$)') 'Processing...' + namsrc = 0 +ccc ascsav = ' ' + yrsav = 1900 + 111 continue + call getpop(jerr, asccod, iyear ) + if( jerr .EQ. IEOF ) goto 222 + if( jerr .NE. ISUCES ) goto 7000 + if( jerr .NE. ISUCES ) goto 9999 +c +c --- initialize the emissions for AMS file --- +c + do 10 j=1,MXPOL + do 20 i=1,NCNTY + emsams(i,j) = 0. + 20 continue + 10 continue +c +c --- if equipment type is not requested skip it, should not happen --- +c + idxasc = fndchr( asccod, 10, eqpcod, NEQNAM ) + if( idxasc .LE. 0 ) goto 111 + if( .NOT. lascat(idxasc) ) goto 111 +c +c --- if region is not requested skip it, also shouldn't happen --- +c + idxsta = 0 + idxfip = 0 + if( regncd(1)(1:5) .NE. '00000' ) then + if( regncd(1)(3:5) .EQ. '000' ) then + idxsta = fndchr( regncd(1)(1:5), 5, statcd, NSTATE ) + if( idxsta .LE. 0 ) goto 111 + if( .NOT. lstacd(idxsta) ) goto 111 + else + idxfip = fndchr( regncd(1)(1:5), 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 111 + if( .NOT. lfipcd(idxfip) ) goto 111 + endif + endif +c +c --- process all of the records read for this SCC --- +c + icurec = 0 + lskip = .FALSE. + 333 continue +c +c --- if the last record was a "growth record" skip it --- +c + if( lskip ) then + icurec = icurec + 1 + endif +c +c --- increment to get the next record +c + icurec = icurec + 1 + if( icurec .GT. npoprc ) then + if( lamsfl ) then + call wrtams( jerr, emsams, asccod ) + if( jerr .NE. ISUCES ) goto 9999 + endif + goto 111 + endif + call dispit() +c +c --- if the next record is the same except for year, then we +c should use it as a growth factor to project base year --- +c + growth = -9 + lskip = .FALSE. + if( icurec .LT. npoprc ) then + if( regncd(icurec) .EQ. regncd(icurec+1) .AND. + & avghpc(icurec) .EQ. avghpc(icurec+1) .AND. ! floating-point comparison for equality okay; avghpc values are read from file, rather than being calculated at runtime + & popeqp(icurec) .GT. 0 .AND. + & ipopyr(icurec) .NE. ipopyr(icurec+1) ) then +cc growth = EXP( 1/(ipopyr(icurec+1) - ipopyr(icurec)) * +cc & LOG(popeqp(icurec+1) / popeqp(icurec)) ) + growth = ( popeqp(icurec+1) - popeqp(icurec) ) / + & ( popeqp(icurec) * (ipopyr(icurec+1) - ipopyr(icurec)) ) + lskip = .TRUE. + nrecds = nrecds + 1 + endif + endif +c +c --- if region is not requested skip it, also shouldn't happen --- +c + idxsta = 0 + idxfip = 0 + if( regncd(icurec)(1:5) .NE. '00000' ) then + if( regncd(icurec)(3:5) .EQ. '000' ) then + idxsta = fndchr( regncd(icurec)(1:5), 5, statcd, NSTATE ) + if( idxsta .LE. 0 ) goto 333 + if( .NOT. lstacd(idxsta) ) goto 333 + else + idxfip = fndchr( regncd(icurec)(1:5), 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 333 + if( .NOT. lfipcd(idxfip) ) goto 333 + endif + endif +c +c --- set the current fuel type --- +c + ifuel = 0 + if( asccod(1:4) .EQ. '2260' .OR. + & asccod(1:7) .EQ. '2282005' .OR. + & asccod(1:7) .EQ. '2285003') then + ifuel = IDXGS2 + else if( asccod(1:4) .EQ. '2265' .OR. + & asccod(1:7) .EQ. '2282010' .OR. + & asccod(1:7) .EQ. '2285004') then + ifuel = IDXGS4 + else if( asccod(1:4) .EQ. '2268' .OR. + & asccod(1:7) .EQ. '2285008') then + ifuel = IDXCNG + else if( asccod(1:4) .EQ. '2267' .OR. + & asccod(1:7) .EQ. '2285006') then + ifuel = IDXLPG + else if( asccod(1:4) .EQ. '2270' .OR. + & asccod(1:7) .EQ. '2280002' .OR. + & asccod(1:7) .EQ. '2282020' .OR. + & asccod(1:7) .EQ. '2285002') then + ifuel = IDXDSL + endif +c +c --- if doing national to state allocation, call the +c routine to process the states --- +c + if( regncd(icurec) .EQ. '00000' ) then + if( reglvl .EQ. USTOT ) then + nnatrc = nnatrc + 1 + call prcus(jerr,icurec,asccod,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + else if( reglvl .EQ. STATE .OR. reglvl .EQ. NATION ) then + nnatrc = nnatrc + 1 + call prcnat(jerr,icurec,asccod,idxsta,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + goto 333 + endif +c +c --- if doing state to county allocation, call the +c routine to process the counties --- +c + else if( regncd(icurec)(3:5) .EQ. '000' ) then + if( reglvl .EQ. COUNTY ) then + call prcsta(jerr,emsams,icurec,asccod,idxsta,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + goto 333 + else if( reglvl .EQ. STATE .OR. reglvl .EQ. NATION ) then + call prc1st(jerr,icurec,asccod,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + goto 333 + endif +c +c --- FIPS code is a county code, call routine to process the subregion --- +c + else + if( reglvl .EQ. COUNTY ) then + idxfip = fndchr( regncd(icurec)(1:5), 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 333 + call prccty(jerr,emsams,icurec,asccod,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + goto 333 +c +c --- could be full county record or partial county record --- +c + else if( reglvl .EQ. SUBCTY ) then + idxreg = fndchr( regncd(icurec)(1:5)//' ', + & 10, reglst, nregin ) + if( idxreg .GT. 0 ) then + call prccty(jerr,emsams,icurec,asccod,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + endif + idxfip = fndchr( regncd(icurec)(1:5), 5, reglst, nregin ) + if( idxfip .GT. 0 ) then + call prcsub(jerr,emsams,icurec,asccod,growth) + if( jerr .EQ. ISKIP ) goto 333 + if( jerr .NE. ISUCES ) goto 9999 + endif + endif + endif +c +c --- get next population record in this set --- +c + goto 333 + 222 continue +c +c --- if doing the SI report, call routine to write the data --- +c + if( lsifl ) then + call wrtsi(jerr) + if( jerr .NE. ISUCES ) goto 9999 + endif + +c --- all of the records processed, write summary --- +c + nrecds = ntotrc - 1 + call dispit() + call wrtsum(jerr) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- Display completion banner ---- +c + write(IOWSTD,'(2A)') 'Done' + if( nwarn .EQ. 0 ) then + write(IOWSTD,'(/,1X,4A)') + & 'Successful completion of ',PROGNM,', ',VERSON + else + write(tmpstr,'(I20)') nwarn + call lftjst( tmpstr ) + write(IOWSTD,'(/,1X,4A)') 'Completion of ',PROGNM,', ',VERSON + write(IOWSTD,'(10X,4A)') 'There were ', + & tmpstr(:strmin(tmpstr)) ,' warnings. Review message file.' + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A,/,1X,A)',ERR=9999) 'ERROR: Could not ', + & 'find any population data for the regions ', + & ' and equipment types requested.' + write(IOWSTD,'(1X,3A)',ERR=9999) 'Make sure the population files', + & ' are for the area specified in the /REGION/ packet.' + write(IOWMSG,'(/,1X,2A,/,1X,A)',ERR=9999) 'ERROR: Could not ', + & 'find any population data for the regions ', + & ' and equipment types requested.' + write(IOWMSG,'(1X,3A)',ERR=9999) 'Make sure the population files', + & ' are for the area specified in the /REGION/ packet.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(1X,3A)',ERR=9999) 'ERROR: Could not find file ', + & sysfl(:strmin(sysfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format('+',A,/) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue +c +c --- call the routine to close the open files --- +c + call clsnon() +C PAUSE + end diff --git a/NONROAD/NR08a/SOURCE/opnefc.f b/NONROAD/NR08a/SOURCE/opnefc.f new file mode 100644 index 0000000..40b56ee --- /dev/null +++ b/NONROAD/NR08a/SOURCE/opnefc.f @@ -0,0 +1,437 @@ +C**** OPNEFC +c + subroutine opnefc( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the filenames to be used in the NONROAD program for all +c emission factors files and deterioration factors files +c +c Argument description. +c Inputs: +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/93 --gmw-- original development +c 03/03/96 --djk-- adapted for enees +c 07/19/96 --jlf-- added deterioration +c 02/10/98 --gwilson-- took out CO2 as an input file. CO2 +c emissions are a function of BSFC. +c 05/21/98 --gwilson-- took out SOx as an input file. SOx +c emissions are a function of BSFC and EXHTHC. +c 06/14/04 --dfk-- removed resting loss +c 09/22/04 --dfk-- changed SOx to SO2 per version NR04 +c 10/06/04 --dfk-- changed Refueling to Displacement +c 11/15/04 --dfk-- separate input of rec-marine neck, +c supply/return and vent +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in array of strings +c + integer*4 strlen + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c fname C character string for temporary storage of filenames +c + character*(MXSTR) fname, line + character*20 keywrd, keyfil, keyin(MXPOL), keybsf + integer*4 jerr, idxpol, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- set the keywords for each pollutant --- +c + keybsf = 'BSFC' + keyin(IDXTHC) = 'THC EXHAUST' + keyin(IDXNOX) = 'NOX EXHAUST' + keyin(IDXCO) = 'CO EXHAUST' + keyin(IDXPM) = 'PM EXHAUST' + keyin(IDXCRA) = 'CRANKCASE' + keyin(IDXDIU) = 'DIURNAL' + keyin(IDXDIS) = 'DISPLACEMENT' + keyin(IDXSPL) = 'SPILLAGE' + keyin(IDXSOK) = 'HOT SOAKS' + keyin(IDXTKP) = 'TANK PERM' + keyin(IDXHOS) = 'NON-RM HOSE PERM' + keyin(IDXNCK) = 'RM FILL NECK PERM' + keyin(IDXSR) = 'RM SUPPLY/RETURN' + keyin(IDXVNT) = 'RM VENT PERM' + keyin(IDXRLS) = 'RUNINGLOSS' +C keyin(IDXRST) = 'RESTNGLOSS' + keyin(IDSTHC) = 'THC STARTS' + keyin(IDSNOX) = 'NOX STARTS' + keyin(IDSCO) = 'CO STARTS' + keyin(IDSPM) = 'PM STARTS' + keyin(IDXSOX) = 'SO2 EXHAUST' + keyin(IDXCO2) = 'CO2 EXHAUST' + keyin(IDSSOX) = 'SO2 STARTS' + keyin(IDSCO2) = 'CO2 STARTS' +c +c --- search for the packet header ---- +c + keywrd = '/EMFAC FILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c + 111 continue + read(IORUSR,8000,ERR=7001,END=7002) line + call spinit() + keyfil = line(1:19) + call lftjst( keyfil ) + call low2up( keyfil ) +c +c --- check for /END/ keyword ---- +c + if( keyfil .EQ. KEYEND ) goto 222 +c +c --- get the filename --- +c + fname = line(21:) + call lftjst( fname ) +c +c ---- check for the BSFC file --- +c + if( keyfil .EQ. keybsf ) then + bsffl = fname + lbsffl = .TRUE. + else +c +c ---- check if file type is valid --- +c + idxpol = fndchr( keyfil, 19, keyin, MXPOL ) +c +c ---- if it is a CO2 file or SOx file, add output a warning --- +c + if( idxpol .EQ. IDXCO2 .OR. idxpol .EQ. IDXSOX) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Emission factor file not needed for ', + & keyin(idxpol)(:strmin(keyin(idxpol))),'.' + write(IOWMSG,'(11X,3A)',ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol))),' emissions are ', + & 'calculated as a function of BSFC. Ignoring this file.' + nwarn = nwarn + 1 +c +c ---- if it is a refueling (vapor displacemnt) file, output a warning --- +c + elseif( idxpol .EQ. IDXDIS ) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Emission factor file not needed for ', + & keyin(idxpol)(:strmin(keyin(idxpol))),'.' + write(IOWMSG,'(11X,3A,/11X,A)',ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol))),' emissions are ', + & 'calculated as a function of temperature and RVP.', + & 'Ignoring this file.' + nwarn = nwarn + 1 + else if( idxpol .GT. 0 ) then + if( strlen( fname ) .GT. 0 ) then + facfl(idxpol) = fname + lfacfl(idxpol) = .TRUE. + endif +c +c ---- unrecognized keyword, skip it --- +c + else + goto 7003 + endif + endif +c +c --- get the next record --- +c + goto 111 +c +c ---- read the entire file, make sure all files provided --- +c Missing BSFC file is an error --- +c + 222 continue + if( .NOT. lbsffl ) goto 7005 +cgmw do 10 i=1,MXPOL + do 10 i=1,IDSTHC-1 + if( .NOT. lfacfl(i) .AND. i .NE. IDXCO2 + & .AND. i .NE. IDXSOX + & .AND. i .NE. IDXSOK + & .AND. i .NE. IDXDIS +C & .AND. i .NE. IDXRST + & .AND. i .NE. IDXRLS ) then + if ( i .EQ. IDXSPL ) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Cannot find ',keyin(i)(:strmin(keyin(i))), + & ' filename in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(11X,3A)',ERR=9999) 'All factors for ', + & 'spillage and vapor displacement', + & ' will be set to missing.' + nwarn = nwarn + 1 + else + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Cannot find ',keyin(i)(:strmin(keyin(i))), + & ' filename in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(11X,2A)',ERR=9999) 'All factors for ', + & 'this species will be set to missing.' + nwarn = nwarn + 1 + endif + endif + 10 continue +c +c ---- search for the deterioration factors files --- +c + keywrd = '/DETERIORATE FILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7004 + if( jerr .EQ. IEOF ) then + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'WARNING: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(11X,2A)',ERR=9999) 'Factors for all species ', + & 'will be set to 1.0 (no deterioration).' + nwarn = nwarn + 1 + goto 555 + endif +c + 333 continue + read(IORUSR,8000,ERR=7001,END=7002) line + call spinit() + keyfil = line(1:19) + call lftjst( keyfil ) + call low2up( keyfil ) +c +c --- check for /END/ keyword ---- +c + if( keyfil .EQ. KEYEND ) goto 444 +c +c --- get the filename --- +c + fname = line(21:) + call lftjst( fname ) +c +c ---- check if file type is valid --- +c + idxpol = fndchr( keyfil, 19, keyin, MXPOL ) +c +c ---- if it is a CO2 file or SOx file, add output a warning --- +c + if( idxpol .EQ. IDXCO2 .OR. idxpol .EQ. IDXSOX) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Deterioration factor file not needed for ', + & keyin(idxpol)(:strmin(keyin(idxpol))),'.' + write(IOWMSG,'(11X,3A)',ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol))),' emissions are ', + & 'calculated as a function of BSFC. Ignoring this file.' + nwarn = nwarn + 1 +c +c ---- if it is a refueling (vapor displacement) file, output a warning --- +c + elseif( idxpol .EQ. IDXDIS ) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Deterioration factor file not needed for ', + & keyin(idxpol)(:strmin(keyin(idxpol))),'.' + write(IOWMSG,'(11X,3A,/11X,A)',ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol))),' emissions are ', + & 'calculated as a function of temperature and RVP.', + & 'Ignoring this file.' + nwarn = nwarn + 1 +c +c ---- if it is a spillage file, output a warning --- +c + elseif( idxpol .EQ. IDXSPL ) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Deterioration factor file not needed for ', + & keyin(idxpol)(:strmin(keyin(idxpol))),'.' + write(IOWMSG,'(11X,3A,/11X,A)',ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol))),' emissions are ', + & 'calculated as a function of tank volume.', + & 'Ignoring this file.' + nwarn = nwarn + 1 +c + else if( idxpol .GT. 0 ) then + if( strlen( fname ) .GT. 0 ) then + detfl(idxpol) = fname + ldetfl(idxpol) = .TRUE. + endif +c +c ---- unrecognized keyword, skip it --- +c + else + goto 7003 + endif +c +c --- get the next record --- +c + goto 333 +c +c --- check to make sure all necessary files were provided +c + 444 continue + ldetfl(IDXCO2) = .FALSE. + ldetfl(IDXSOX) = .FALSE. + ldetfl(IDXDIS) = .FALSE. + ldetfl(IDXSPL) = .FALSE. +cgmw do 20 i=1,MXPOL + do 20 i=1,IDSTHC-1 + if( .NOT. ldetfl(i) .AND. (i .EQ. IDXTHC .OR. i .EQ. IDXCO + & .OR. i .EQ. IDXNOX .OR. i .EQ. IDXPM) ) then + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'WARNING: Cannot find ',keyin(i)(:strmin(keyin(i))), + & ' filename in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(11X,2A)',ERR=9999) 'All factors for this', + & ' species will be set to 1.0 (no deterioration).' + nwarn = nwarn + 1 + endif + 20 continue +c +c --- echo filenames --- +c + 555 continue + write(IOWMSG,9001,ERR=9999) + write(IOWMSG,9003,ERR=9999) '*** Emission Factors Files ***' + write(IOWMSG,9001,ERR=9999) +c + write(IOWMSG,9002,ERR=9999) keybsf(:strmin(keybsf))// + & ' file',bsffl(:strmin( bsffl )) +cgmw do 30 idxpol=1,MXPOL + do 30 idxpol=1,IDSTHC-1 + if( lfacfl(idxpol) ) then + write(IOWMSG,9002,ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol)))// + & ' file',facfl(idxpol)(:strmin( facfl(idxpol))) + else + write(IOWMSG,9002,ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol)))// + & ' file',' Not Supplied.' + endif + 30 continue +c + write(IOWMSG,9001,ERR=9999) + write(IOWMSG,9003,ERR=9999) '*** Deterioration Factors Files ***' + write(IOWMSG,9001,ERR=9999) +c +cgmw do 40 idxpol=1,MXPOL + do 40 idxpol=1,IDSTHC-1 + if( ldetfl(idxpol) ) then + write(IOWMSG,9002,ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol)))// + & ' file',detfl(idxpol)(:strmin( detfl(idxpol))) + else + write(IOWMSG,9002,ERR=9999) + & keyin(idxpol)(:strmin(keyin(idxpol)))// + & ' file',' Not Supplied.' + endif + 40 continue + write(IOWMSG,'(A)',ERR=9999) + + +c --- set error flag to success ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: This program ', + & 'requires the ',keywrd(:strmin( keywrd )), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: This program ', + & 'requires the ',keywrd(:strmin( keywrd )), + & ' packet of the options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,2A,/9X,2A)',ERR=9999) 'ERROR: Unexpected ', + & 'end-of-file reached reading ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,2A,/9X,2A)',ERR=9999) 'ERROR: Unexpected ', + & 'end-of-file reached reading ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,4A,/9X,3A)',ERR=9999) 'ERROR: Invalid file ', + & 'identifier in ',keywrd(:strmin(keywrd)), + & ' packet','of options file: -->',line(1:19),'<--' + write(IOWMSG,'(/,1X,4A,/9X,3A)',ERR=9999) 'ERROR: Invalid file ', + & 'identifier in ',keywrd(:strmin(keywrd)), + & ' packet','of options file: -->',line(1:19),'<--' + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,5A)',ERR=9999) + & 'ERROR: Cannot find ',keybsf(:strmin(keybsf)), + & ' filename in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(/,1X,5A)',ERR=9999) + & 'ERROR: Cannot find ',keybsf(:strmin(keybsf)), + & ' filename in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 9001 format(1X,A) + 9002 format(T10,A,T30,:,':',A) + 9003 format(T20,A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/opnnon.f b/NONROAD/NR08a/SOURCE/opnnon.f new file mode 100644 index 0000000..77dbffe --- /dev/null +++ b/NONROAD/NR08a/SOURCE/opnnon.f @@ -0,0 +1,633 @@ +C**** OPNNON +c + subroutine opnnon( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the filenames to be used in the NONROAD program and opens +c some files +c +c Argument description. +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/10/95 --djk-- original development +c 07/19/96 --jlf-- removed mention of aircraft, vessels, and +c locomotives files +c 07/22/96 --jlf-- changed so population file opened here +c 05/10/04 --dfk-- added evap tech fractions +c 06/04/04 --dfk-- added exhaust and evap bmy output +c 01/21/05 --dfk-- added trap for non-existent Daily temp/RVP file +c 04/22/05 --cimulus-- added support for reading FIPS.DAT with +c the US COUNTIES FIPS option +c 05/16/05 --cimulus-- added support for reading retrofit file +c with the RETROFIT option +c 07/13/05 --epa-- added msg file & error output of evtchfl +c 03/25/08 --epa-- write Daily file info to msg file even if none +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strlen + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c fname C character string for temporary storage of filenames +c + character*(MXSTR) fname, line + character*40 cdate + character*20 keywrd, keyfil, keyin, keytmp + integer*4 jerr, i + logical*4 lcheck, lexist, lmsg +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- flag to indicate message file not yet open --- +c + lmsg = .FALSE. +c +c ---- check for existence of the options file and open it ---- +c + fname = sysfl + open(IORUSR,file=sysfl,ERR=7003,status='UNKNOWN') +c +c --- now set the date and time for this run - you'll need +c different routines when running on unix ---- +c + call getime ( cdate ) +c +c --- search for the packet header ---- +c + lamsfl = .FALSE. + keywrd = '/RUNFILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7006 +c + 111 continue + read(IORUSR,8000,ERR=7000,END=7008) line + keyfil = line(1:19) + call lftjst( keyfil ) + call low2up( keyfil ) +c +c --- check for /END/ keyword ---- +c + if( keyfil .EQ. KEYEND ) goto 222 +c +c --- get the filename --- +c + fname = line(21:) + call lftjst( fname ) +c +c ---- check if file type is a allocation file ----- +c + if( keyfil .EQ. 'ALLOC XREF' ) then + if( strlen( fname ) .GT. 0 ) then + alofl = fname + lalofl = .TRUE. + endif +c +c ---- check if file type is an activity file ----- +c + else if( keyfil .EQ. 'ACTIVITY' ) then + if( strlen( fname ) .GT. 0 ) then + actfl = fname + lactfl = .TRUE. + endif +c +c ---- check if file type is an exhaust technology fractions file ----- +c + else if( keyfil .EQ. 'EXH TECHNOLOGY' ) then + if( strlen( fname ) .GT. 0 ) then + tchfl = fname + ltchfl = .TRUE. + endif +c +c ---- check if file type is a technology fractions file ----- +c + else if( keyfil .EQ. 'EVP TECHNOLOGY' ) then + if( strlen( fname ) .GT. 0 ) then + evtchfl = fname + levtchfl = .TRUE. + endif +c +c --- check if file type is a seasonality file --- +c + else if( keyfil .EQ. 'SEASONALITY' ) then + if( strlen( fname ) .GT. 0 ) then + sesfl = fname + lsesfl = .TRUE. + endif +c +c --- check if file type is a message file ---- +c + else if( keyfil .EQ. 'MESSAGE' ) then + if( strlen( fname ) .GT. 0 ) then + msgfl = fname + lmsgfl = .TRUE. + lmsg = .TRUE. + fname = msgfl + open(IOWMSG,file=msgfl,ERR=7003,status='UNKNOWN') + rewind(IOWMSG) + endif +c +c --- check if file type is a regions file ---- +c + else if( keyfil .EQ. 'REGIONS' ) then + if( strlen( fname ) .GT. 0 ) then + regfl = fname + lregfl = .TRUE. + endif +c +c ---- check if file type is an output file ----- +c + else if( keyfil .EQ. 'OUTPUT DATA' ) then + if( strlen( fname ) .GT. 0 ) then + datfl = fname + ldatfl = .TRUE. + fname = datfl + open(IOWDAT,file=datfl,ERR=7003,status='UNKNOWN') + rewind(IOWDAT) + endif +c +c --- check if file type is a AMS workfile ---- +c + else if( keyfil .EQ. 'EPS2 AMS' ) then + if( strlen( fname ) .GT. 0 ) then + amsfl = fname + lamsfl = .TRUE. + endif +c +c --- check if file type is a US Counties FIPS file ---- +c + else if( keyfil .EQ. 'US COUNTIES FIPS' ) then + if( strlen( fname ) .GT. 0 ) then + fipsfl = fname + lfipsfl = .TRUE. + endif +c +c --- check if file type is a retrofit file ---- +c + else if( keyfil .EQ. 'RETROFIT' ) then + if( strlen( fname ) .GT. 0 ) then + rtrftfl = fname + lrtrftfl = .TRUE. + endif +c +c ---- unrecognized keyword, skip it --- +c + else + goto 7007 + endif +c +c --- get the next record --- +c + goto 111 +c +c ---- read the entire file, check for output files --- +c + 222 continue +c +c --- check to make sure all necessary files were provided, if so +c open them ---- +c +c --- MESSAGE file, check already opened ---- +c + if( .NOT. lmsgfl ) then + keyin = ' MESSAGE' + goto 7002 + endif +c +c --- SPATIAL ALLOCATION cross-reference file --- +c this file will be opened later to save file handles --- +c + if( .NOT. lalofl ) then + keyin = ' ALLOC XREF' + goto 7002 + else + fname = alofl + inquire(file=alofl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- ACTIVITY file --- +c this file will be opened later to save file handles --- +c + if( .NOT. lactfl ) then + keyin = ' ACTIVITY' + goto 7002 + else + fname = actfl + inquire(file=actfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- EXHAUST TECHNOLOGY FRACTIONS file --- +c + if( .NOT. ltchfl ) then + keyin = ' EXH TECH' + goto 7002 + else + fname = tchfl + inquire(file=tchfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- EVAP TECHNOLOGY FRACTIONS file --- +c + if( .NOT. levtchfl ) then + keyin = ' EVAP TECH' + goto 7002 + else + fname = tchfl + inquire(file=tchfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- SEASONALITY file ---- +c this file will be opened later to save file handles --- +c + if( .NOT. lsesfl ) then + keyin = ' SEASONALITY' + goto 7002 + else + fname = sesfl + inquire(file=sesfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- REGIONS file ---- +c + if( .NOT. lregfl ) then + keyin = ' REGIONS' + goto 7002 + else + fname = regfl + inquire(file=regfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- OUTPUT DATA file ---- +c + if( .NOT. ldatfl ) then + keyin = ' OUTPUT DATA' + goto 7002 + endif +c +c --- AMS file - optional ---- +c + if( lamsfl ) then + fname = amsfl + open(IOWAMS,file=amsfl,ERR=7003,status='UNKNOWN') + rewind(IOWAMS) + endif +c +c --- RETROFIT file - optional ---- +c + if( lrtrftfl ) then + fname = rtrftfl + inquire(file=rtrftfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + endif +c +c --- look for the /POP FILES/ packet ---- +c + keywrd = '/POP FILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7006 +c +c --- read a filename and open the file --- +c + 333 continue + read(IORUSR,8001,ERR=7000,END=7008) keytmp, fname + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 444 + if( strlen(fname) .LE. 0 ) goto 333 + call lftjst( fname ) + inquire(file=fname,exist=lexist) + if( .NOT. lexist ) goto 7001 + npopfl = npopfl + 1 + if( npopfl .GT. MXPFIL ) goto 7009 + popfl(npopfl) = fname + goto 333 +c +c --- look for the /MODELYEAR OUT/ packet (optional) --- +c + 444 continue + lbmyfl = .FALSE. + levbmyfl = .FALSE. + keywrd = '/MODELYEAR OUT/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7010 + if( jerr .EQ. IEOF ) goto 555 +c +c --- read line --- +c + 777 continue + read(IORUSR,8000,ERR=7000,END=7008) line + keyfil = line(1:19) + call lftjst( keyfil ) + call low2up( keyfil ) +c +c --- check for /END/ keyword ---- +c + if( keyfil .EQ. KEYEND ) goto 555 +c +c --- get the filename --- +c + fname = line(21:) + call lftjst( fname ) +c +c ---- check if file type is an exhaust file ----- +c + if( keyfil .EQ. 'EXHAUST BMY OUT' ) then + if( strlen( fname ) .GT. 0 ) then + bmyfl = fname + lbmyfl = .TRUE. + open(IOWBMY,file=bmyfl,ERR=7003,status='UNKNOWN') + rewind(IOWBMY) + call hdrbmy(jerr,1) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c ---- check if file type is an evap file ----- +c + else if( keyfil .EQ. 'EVAP BMY OUT' ) then + if( strlen( fname ) .GT. 0 ) then + evbmyfl = fname + levbmyfl = .TRUE. + open(IOWEVBMY,file=evbmyfl,ERR=7003,status='UNKNOWN') + rewind(IOWEVBMY) + call hdrbmy(jerr,2) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c ---- unrecognized keyword, skip it --- +c + else + goto 7007 + endif +c +c --- get the next record --- +c + goto 777 +c +c --- look for the /SI REPORT/ packet (optional) --- +c + 555 continue + lsifl = .FALSE. + keywrd = '/SI REPORT/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7010 + if( jerr .EQ. IEOF ) goto 666 +c +c --- read the filename and open the file --- +c + read(IORUSR,8001,ERR=7000,END=7008) keytmp, fname + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 666 + if( strlen(fname) .LE. 0 ) goto 666 + call lftjst( fname ) + lsifl = .TRUE. + sifl = fname + open(IOWSI,file=sifl,ERR=7003,status='UNKNOWN') + rewind(IOWSI) +c +c --- look for the /DAILY FILES/ packet (optional) --- +c + 666 continue + ldayfl = .FALSE. + keywrd = '/DAILY FILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7010 + if( jerr .EQ. IEOF ) goto 888 +c +c --- read the filename and open the file --- +c + read(IORUSR,8001,ERR=7000,END=7008) keytmp, fname + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 888 + if( strlen(fname) .LE. 0 ) goto 888 + call lftjst( fname ) + dayfl = fname + inquire(file=dayfl,exist=lcheck) + if( .NOT. lcheck ) goto 7001 + ldayfl = .TRUE. + open(IORDAY,file=dayfl,ERR=7003,status='UNKNOWN') + rewind(IORDAY) +c +c --- echo filenames --- +c + 888 continue + write(IOWMSG,9001,ERR=7004) PROGNM,', ',VERSON,' ',cdate + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9003,ERR=7004) '*** Output Files ***' + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9002,ERR=7004) + & 'Output data file',datfl(:strmin(datfl)) + if( lamsfl ) then + write(IOWMSG,9002,ERR=7004) + & 'EPS2 AMS file',amsfl(:strmin(amsfl)) + endif + if( lbmyfl ) then + write(IOWMSG,9002,ERR=7004) + & 'Exhaust By-Model-Year file',bmyfl(:strmin(bmyfl)) + endif + if( levbmyfl ) then + write(IOWMSG,9002,ERR=7004) + & 'Evap By-Model-Year file',evbmyfl(:strmin(evbmyfl)) + endif + if( lsifl ) then + write(IOWMSG,9002,ERR=7004) + & 'SI file',sifl(:strmin(sifl)) + endif + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9003,ERR=7004) '*** Input Files ***' + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9002,ERR=7004) 'Options file',sysfl(:strmin(sysfl)) + write(IOWMSG,9002,ERR=7004) + & 'Allocation XREF file',alofl(:strmin(alofl)) + write(IOWMSG,9002,ERR=7004) 'Activity file',actfl(:strmin(actfl)) + write(IOWMSG,9002,ERR=7004) + & 'State/Regions file',regfl(:strmin(regfl)) + write(IOWMSG,9002,ERR=7004) + & 'Seasonality file',sesfl(:strmin(sesfl)) + write(IOWMSG,9002,ERR=7004) + & 'Exh Tech fractions',tchfl(:strmin(tchfl)) + write(IOWMSG,9002,ERR=7004) + & 'Evap Tech fractions',evtchfl(:strmin(evtchfl)) + write(IOWMSG,9002,ERR=7004) + & 'US Counties FIPS',fipsfl(:strmin(fipsfl)) + if( lrtrftfl ) then + write(IOWMSG,9002,ERR=7004) + & 'Retrofit file',rtrftfl(:strmin(rtrftfl)) + else + write(IOWMSG,9002,ERR=7004) + & 'Retrofit file: (not used)' + endif + + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9003,ERR=7004) '*** Population Files ***' + write(IOWMSG,9001,ERR=7004) + do 10 i=1,npopfl + write(IOWMSG,9002,ERR=7004) ' ',popfl(i)(:strmin(popfl(i))) + 10 continue +c if( ldayfl ) then + write(IOWMSG,9001,ERR=7004) + write(IOWMSG,9003,ERR=7004) '*** Daily Files ***' + write(IOWMSG,9001,ERR=7004) + if( ldayfl ) then + write(IOWMSG,9002,ERR=7004) + & 'Daily Temp/RVP file',dayfl(:strmin(dayfl)) + else + write(IOWMSG,9002,ERR=7004) + & 'Daily Temp/RVP file: (not used)' + end if +c endif +c +c --- set error flag to success ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + if ( lmsg ) + & write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Input file not found: ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Input file not found: ',fname(:strmin(fname)) + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,4A,/,9X,A)',ERR=9999) 'ERROR: The', + & keyin(:strmin(keyin)),' file must be provided in the ', + & keywrd(:strmin( keywrd )),'packet of the options file.' + if ( lmsg ) + & write(IOWMSG,'(/,1X,4A,/,9X,A)',ERR=9999) 'ERROR: The', + & keyin(:strmin(keyin)),' file must be provided in the ', + & keywrd(:strmin( keywrd )),'packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fname(:strmin(fname)) + if ( lmsg ) + & write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fname(:strmin(fname)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Writing message file: ',msgfl(:strmin(msgfl)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + if ( lmsg ) + & write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,3A,/9X,3A)',ERR=9999) + & 'ERROR: Invalid file identifier in ',keywrd(:strmin(keywrd)), + & ' packet','of options file: -->',line(1:19),'<--' + if ( lmsg ) + & write(IOWMSG,'(/,1X,3A,/9X,3A)',ERR=9999) + & 'ERROR: Invalid file identifier in ',keywrd(:strmin(keywrd)), + & ' packet','of options file: -->',line(1:19),'<--' + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,3A,/9X,A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet','of the options file.' + if ( lmsg ) + & write(IOWMSG,'(/,1X,3A,/9X,A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet','of the options file.' + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,2A,I10)',ERR=9999) 'ERROR: Number of ', + & 'population files supplied exceeds maximum: ',MXPFIL + write(IOWMSG,'(/,1X,2A,I10)',ERR=9999) 'ERROR: Number of ', + & 'population files supplied exceeds maximum: ',MXPFIL + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(A20,A) + 9001 format(1X,5A) + 9002 format(T10,A,T30,:,':',A) + 9003 format(T20,A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/prc1st.f b/NONROAD/NR08a/SOURCE/prc1st.f new file mode 100644 index 0000000..0c1662e --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prc1st.f @@ -0,0 +1,785 @@ +c**** PRC1ST +c + subroutine prc1st(ierr,icurec,asccod,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the processing for the state records for a state +c run. It performs the the application of all of the emission factors +c and seasonality factors. +c Argument descriptions: +c Outputs: +c ierr I error code +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/20/97 --gmw-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 10/11/01 rgiannelli force getgrw even in base year +c 06/07/04 --dfk-- added evap processing +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/29/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/29/05 -cimulus- cleaned up code for consistency, in terms of +c whitespace and commenting +c 07/29/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/29/05 -cimulus- removed redundant thisfc variable +c 07/29/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 08/01/05 -cimulus- pass zeroems to wrtdat for the zero record +c 04/19/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 icurec + character*10 asccod + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of a string in an array of strings +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the exhaust technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndchr + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +cc real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + real*4 zeroems(MXPOL) + real*4 missems(MXPOL) + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) +c + character*10 tecnam(MXTECH) + character*9 rfmode(MXEVTECH) + character*5 fipsta, subcur + integer*4 jerr, i, j, idxsta, idxref, idxall + integer*4 idxact, idxgrw, nyrlif, idxyr, iyr + integer*4 idxunt(MXPOL,MXTECH), idxtch, ndays + real*4 popsta, grwsta + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 emsfac(MXAGYR,MXPOL,MXTECH), emsday(MXPOL) + real*4 fulcsm, hplev, bsfc(MXAGYR,MXTECH) + real*4 tplfac, tpltmp, poptot, acttot, strtot + real*4 hpval, adjems(MXPOL,MXDAYS),adjtime, tank(MXEVTECH) + real*4 hpmid, denful, tecfrc(MXTECH) + real*4 popbmy, actbmy, fulbmy, emsbmy(MXPOL) + real*4 adetcf(MXPOL,MXTECH), bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's population +c + character*10 tname + character*10 evtecnam(MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + real*4 tfull(MXEVTECH) + real*4 tmetal(MXEVTECH) + real*4 hlen(MXEVTECH) + real*4 hdia(MXEVTECH) + real*4 hmetal(MXEVTECH) + real*4 nlen(MXEVTECH) + real*4 ndia(MXEVTECH) + real*4 slen(MXEVTECH) + real*4 sdia(MXEVTECH) + real*4 vlen(MXEVTECH) + real*4 vdia(MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) + real*4 hsstart(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 fulbmytot + integer*4 idxevtch + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the error code --- +c + ierr = IFAIL +c +c --- initialize variables that do not change throughout +c the life of the subroutine --- +c + subcur = ' ' + zeroems = 0. + missems = RMISS +c +c --- get the index of this state --- +c + fipsta = regncd(icurec)(1:5) + idxsta = fndchr( fipsta, 5, statcd, NSTATE ) + if( idxsta .LE. 0 ) then + ierr = ISKIP + goto 9999 + endif + nstarc(idxsta) = nstarc(idxsta) + 1 +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do i = 2, MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) then + hplev = hpclev(i) + endif + end do + endif + hpval = avghpc(icurec) +c +c --- if the population is zero, just write a zero record and return --- +c + popsta = popeqp(icurec) + if( popsta .LE. 0. ) then + call wrtdat(jerr,fipsta,subcur,asccod,hplev, + & 0.,0.,0.,0.,0.,0.,0.,zeroems) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- call routine to find the number of exhaust tech types +c for this piece of equipment and tech year --- +c + idxtch = fndtch(asccod,hpval,itchyr) + if( idxtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any exhaust technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + idxevtch = fndevtch(asccod,hpval,itchyr) + if( idxevtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- find the fuel density, used for fuel consumption calc --- +c + denful = 1. + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c --- initialize daily emissions to zero --- +c + do i = 1, MXPOL + emsday(i) = 0.0 + end do +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, fipsta, daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, fipsta, daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, fipsta ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( fipsta, asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, fipsta, avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write a missing record, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'State','SCC','HP range', + & fipsta,asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + call wrtdat(jerr,fipsta,subcur,asccod,hplev, + & RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,missems) + if( jerr .NE. ISUCES ) goto 9999 + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwsta, ipopyr(icurec), + & ipopyr(icurec)+1, fipsta, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), iactun(idxact), + & faclod(idxact), actage(idxact), grwsta) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popsta, modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, fipsta, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0. + acttot = 0. + strtot = 0. + fulcsm = 0. + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity, and starts totals to zero --- +c + evpoptot = 0. + evacttot = 0. + evstrtot = 0. +c +c --- loop over model years --- +c + do iyr = iepyr - nyrlif + 1, iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip if the model year fraction is zero (sometimes +c happens for the first year in the distribution) --- +c + if( modfrc(idxyr) .LE. 0. ) then + cycle + endif +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) --- +c + fulbmytot = 0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- call routine to find the exhaust technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxtch = fndtch(asccod,hpval,tchmdyr) +c + do i = 1, ntech(idxtch) + tecnam(i) = tectyp(idxtch,i) + tecfrc(i) = tchfrc(idxtch,i) + end do +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type and model year --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch), tecfrc, + & tchmdyr, idxyr, icurec ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- loop over exhaust technology types --- +c + do i = 1, ntech(idxtch) +c +c --- skip over unused technology types --- +c + if( tchfrc(idxtch,i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this model year and tech type --- +c + popbmy = popsta * modfrc(idxyr) * tchfrc(idxtch,i) +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, tecnam(i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, tecnam(i) ) + if( jerr .NE. ISUCES ) goto 9999 + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr, emsday, emsbmy, + & idxyr, i, idxtch, detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tecfrc(i), hpval, denful, + & bsfc(idxyr,i), idxact, adjems, adjtime, emsfac, + & tpltmp, stradj(idxyr), popsta, modfrc(idxyr), + & ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this model year and tech type --- +c + actbmy = actadj(idxyr) * popsta * modfrc(idxyr) + & * tplful * tchfrc(idxtch,i) * adjtime + fulbmy = tplful * popsta * actadj(idxyr) * modfrc(idxyr) + & * tchfrc(idxtch,i) * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total by-model-year fuel consumption +c (value used in evap calculations below) --- +c + fulbmytot = fulbmytot + fulbmy +c +c --- call routine to write exhaust by-model-year output --- +c + if( lbmyfl ) then + call wrtbmy(jerr,fipsta,subcur,asccod,hplev, + & tecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & faclod(idxact),hpval,fracretrobmy, + & unitsretrobmy,1) ! 1=exhaust + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust technology type --- +c + end do +c +c --- sum population, activity, and starts --- +c + poptot = poptot + popsta * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- call routine to find the evap technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxevtch = fndevtch(asccod,hpval,tchmdyr) +c + do i = 1, nevtech(idxevtch) +c + evtecnam(i) = evtectyp(idxevtch,i) + evtecfrc(i) = evtchfrc(idxevtch,i) +c +c --- set up refueling, hose and tank data --- +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(i) = tnkful(idxref) + tmetal(i) = tnkmtl(idxref) + hlen(i) = hoslen(idxref) + hdia(i) = hosdia(idxref) + hmetal(i) = hosmtl(idxref) + hsstart(i)= hssph(idxref) + nlen(i) = ncklen(idxref) + ndia(i) = nckdia(idxref) + slen(i) = srlen(idxref) + sdia(i) = srdia(idxref) + vlen(i) = vntlen(idxref) + vdia(i) = vntdia(idxref) + do j=1,5 + diufrac(j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(i) = ' ' + tank(i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i),tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch), + & evtecfrc, tchmdyr, idxyr, icurec ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- loop over evap technology types --- +c + do i = 1, nevtech(idxevtch) +c +c --- skip over unused technology types --- +c + if( evtchfrc(idxevtch,i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- estimate the fuel used by this technology and model year --- +c + fulbmy = fulbmytot * evtecfrc(i) +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch, detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, evtecfrc(i), hpval, + & adjems, adjtime, evemsfac, + & tpltmp, stradj(idxyr), popsta, modfrc(idxyr), + & ndays, tank(i), actadj(idxyr), rfmode(i), fulbmy, + & tfull(i), tmetal(i), hlen(i), hdia(i), hmetal(i), + & nlen(i), ndia(i), slen(i), sdia(i), vlen(i), + & vdia(i), hsstart(i), diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), fipsta ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + popbmy = popsta * modfrc(idxyr) * evtchfrc(idxevtch,i) + actbmy = actadj(idxyr) * popsta * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch,i) * adjtime +c +c --- call routine to write evap by-model-year output --- +c + if ( levbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,fipsta,subcur,asccod,hplev, + & evtecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & RMISS,RMISS,RMISS,RMISS,2) ! 2=evap + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap technology type --- +c + end do +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popsta * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + end do +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +ccc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c --- write the data to the output data file --- +c + call wrtdat(jerr,fipsta,subcur,asccod,hplev,poptot,acttot, + & fulcsm,faclod(idxact),hpval,fracretro,unitsretro,emsday) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- state processed, return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & fipsta, asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & fipsta, asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,11X,A,/,10X,A,4X,A,4X,F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/prccty.f b/NONROAD/NR08a/SOURCE/prccty.f new file mode 100644 index 0000000..01a29c1 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prccty.f @@ -0,0 +1,790 @@ +c**** PRCCTY +c + subroutine prccty(ierr,emsams,icurec,asccod,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the processing for the state to county allocation +c of populations and the application of all of the emission factors +c and seasonality factors. +c Argument descriptions: +c Outputs: +c ierr I error code +c emsams R emissions for each county +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/20/97 --gmw-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 10/11/01 rgiannelli force getgrw even in base year +c 06/08/04 --dfk-- added evap processing +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/30/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/30/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/30/05 -cimulus- removed redundant thisfc variable +c 07/30/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 04/20/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c fixed tecfrc to evtecfrc for fulbmy. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 emsams(NCNTY,MXPOL) + integer*4 icurec + character*10 asccod + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of a string in an array of strings +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the exhaust technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndchr + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +c real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) +c + character*10 tecnam(MXTECH) + character*5 fipin, subcur + integer*4 jerr, i, idxfip, j, idxref, idxall + integer*4 idxact, idxgrw, nyrlif, idxyr, iyr + integer*4 idxunt(MXPOL,MXTECH), idxtch, ndays + real*4 popcty, grwcty, grwtmp + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 emsfac(MXAGYR,MXPOL,MXTECH), emsday(MXPOL) + real*4 fulcsm, hplev, bsfc(MXAGYR,MXTECH) + real*4 tplfac, tpltmp, poptot, acttot, strtot + real*4 hpval, adjems(MXPOL,MXDAYS),adjtime + real*4 hpmid, denful, tecfrc(MXTECH) + real*4 popbmy, actbmy, fulbmy, emsbmy(MXPOL) + real*4 adetcf(MXPOL,MXTECH), bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's population +c + character*10 evtecnam(MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + character*10 tname + character*9 rfmode(MXEVTECH) + real*4 tank(MXEVTECH) + real*4 tfull(MXEVTECH) + real*4 tmetal(MXEVTECH) + real*4 hlen(MXEVTECH) + real*4 hdia(MXEVTECH) + real*4 hmetal(MXEVTECH) + real*4 hsstart(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 fulbmytot + real*4 nlen(MXEVTECH) + real*4 ndia(MXEVTECH) + real*4 slen(MXEVTECH) + real*4 sdia(MXEVTECH) + real*4 vlen(MXEVTECH) + real*4 vdia(MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) + integer*4 idxevtch + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize the error code --- +c + ierr = IFAIL + subcur = ' ' +c +c --- get the index of this county --- +c + fipin = regncd(icurec)(1:5) + idxfip = fndchr( fipin, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) then + ierr = ISKIP + goto 9999 + endif + nctyrc(idxfip) = nctyrc(idxfip) + 1 +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do 10 i=2,MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) + & hplev = hpclev(i) + 10 continue + endif + hpval = avghpc(icurec) +c +c --- initialize daily emissions to zero --- +c + do 30 i=1,MXPOL + emsday(i) = 0.0 + 30 continue +c +c --- if the population is zero, just write the records and return --- +c + if( popeqp(icurec) .LE. 0. ) then + call wrtdat(jerr,fipin,subcur,asccod,hplev,0.,0., + & 0.,0.,0.,0.,0.,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- initialize the population ---- +c + popcty = popeqp(icurec) +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + idxtch = fndtch(asccod,hpval,itchyr) + if( idxtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any exhaust technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + idxevtch = fndevtch(asccod,hpval,itchyr) + if( idxevtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- find the fuel density, used for fuel consumption calc --- +c + denful = 1.0 + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, fipin, daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, fipin, daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, fipin ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( fipin, asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, fipin, avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write missing records, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'County','SCC','HP range', + & fipcod(idxfip),asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + do j = 1, MXPOL + if(j.lt.IDXDIU.or.j.gt.IDXRLS) emsday(j) = RMISS + end do + call wrtdat(jerr,fipin,subcur,asccod,hplev,RMISS,RMISS, + & RMISS,RMISS,RMISS,RMISS,RMISS,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwtmp, ipopyr(icurec), + & ipopyr(icurec)+1, fipin, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 + grwcty = grwtmp +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), + & iactun(idxact), faclod(idxact), + & actage(idxact), grwcty ) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popcty, modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, fipin, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0.0 + acttot = 0.0 + strtot = 0.0 + fulcsm = 0.0 + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity and starts totals to zero +c + evpoptot = 0.0 + evacttot = 0.0 + evstrtot = 0.0 +c +c --- loop over model years ---- +c + do 60 iyr=iepyr-nyrlif+1,iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip it the model year fraction is zero (sometimes happens for +c the first year in the distribution) +c + if( modfrc(idxyr) .LE. 0.0 ) goto 60 +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) +c + fulbmytot=0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- call routine to find the exhaust technology index for this +c piece of equipment and model year --- +c +c if the model year is greater than the tech year, use the tech year +c + idxtch = fndtch(asccod,hpval,tchmdyr) +c + do 70 i=1,ntech(idxtch) + tecnam(i) = tectyp(idxtch,i) + tecfrc(i) = tchfrc(idxtch,i) + 70 continue +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type and model year --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch),tecfrc, + & tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c ---- loop over exhaust technology types --- +c + do 80 i=1,ntech(idxtch) +c +c ---- skip over unused technology types +c + if( tchfrc(idxtch,i) .LE. 0. ) goto 80 +c +c --- initialize the bmy array +c + emsbmy = 0.0 +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this tech type --- +c + popbmy = popcty * modfrc(idxyr) * tchfrc(idxtch,i) +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, tecnam(i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, tecnam(i) ) + if( jerr .NE. ISUCES ) goto 9999 + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY .OR. + & iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD .OR. + & iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1.0 + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr, emsday, emsbmy, + & idxyr, i, idxtch, detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tecfrc(i), hpval, denful, + & bsfc(idxyr,i), idxact, adjems, adjtime, emsfac, + & tpltmp, stradj(idxyr), popcty, modfrc(idxyr), + & ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + actbmy = actadj(idxyr) * popcty * modfrc(idxyr) * + & * tplful * tchfrc(idxtch,i) * adjtime + fulbmy = tplful * popcty * actadj(idxyr) * modfrc(idxyr) + & * tchfrc(idxtch,i) * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total bmy fuel consumption --- +c (value used in evap calculations below) +c + fulbmytot = fulbmytot + fulbmy +c +c --- call routine to write exhaust by-model-year output --- +c + if( lbmyfl ) then + call wrtbmy(jerr,fipin,subcur,asccod,hplev, + & tecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & faclod(idxact),hpval,fracretrobmy, + & unitsretrobmy,1) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust technology type ---- +c + 80 continue +c +c --- sum population, activity and starts --- +c + poptot = poptot + popcty * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popcty + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popcty + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- call routine to find the evap technology index for this +c piece of equipment and model year --- +c +c if the model year is greater than the tech year, use the tech year + idxevtch = fndevtch(asccod,hpval,tchmdyr) +c + do i=1,nevtech(idxevtch) +c + evtecnam(i) = evtectyp(idxevtch,i) + evtecfrc(i) = evtchfrc(idxevtch,i) +c +c set up refueling, hose and tank data +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(i) = tnkful(idxref) + tmetal(i) = tnkmtl(idxref) + hlen(i) = hoslen(idxref) + hdia(i) = hosdia(idxref) + hmetal(i) = hosmtl(idxref) + hsstart(i)= hssph(idxref) + nlen(i) = ncklen(idxref) + ndia(i) = nckdia(idxref) + slen(i) = srlen(idxref) + sdia(i) = srdia(idxref) + vlen(i) = vntlen(idxref) + vdia(i) = vntdia(idxref) + do j=1,5 + diufrac(j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(i) = ' ' + tank(i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i),tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch), + & evtecfrc, tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c ---- loop over evap technology types --- +c + do 90 i=1,nevtech(idxevtch) +c +c ---- skip over unused technology types +c + if( evtchfrc(idxevtch,i) .LE. 0. ) goto 90 +c +c --- initialize the bmy array --- +c + emsbmy = 0.0 +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY .OR. + & iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD .OR. + & iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1.0 + endif +c +c --- estimate the fuel used by this technology and model year +c + fulbmy = fulbmytot * evtecfrc(i) +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch, detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, tecfrc(i), hpval, + & adjems, adjtime, evemsfac, + & tpltmp, stradj(idxyr), popcty, modfrc(idxyr), + & ndays, tank(i), actadj(idxyr), rfmode(i), fulbmy, + & tfull(i), tmetal(i), hlen(i), hdia(i), hmetal(i), + & nlen(i), ndia(i), slen(i), sdia(i), vlen(i), + & vdia(i), hsstart(i), diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), fipin ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + popbmy = popcty * modfrc(idxyr) * evtchfrc(idxevtch,i) + actbmy = actadj(idxyr) * popcty * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch,i) * adjtime +c +c --- call routine to write evap by-model-year output --- +c + if ( levbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,fipin,subcur,asccod,hplev, + & evtecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & RMISS,RMISS,RMISS,RMISS,2) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap technology type ---- +c + 90 continue +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popcty * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popcty + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popcty + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + 60 continue +c +c --- update variables for storing EPS2 AMS data --- +c + do 11 i=1,MXPOL + if( emsday(i) .GT. 0. ) emsams(idxfip,i) = + & emsams(idxfip,i) + emsday(i) + 11 continue + namsrc = namsrc + 1 +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +cc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c --- call routine to write the output to the data file --- +c + call wrtdat(jerr,fipin,subcur,asccod,hplev,poptot,acttot, + & fulcsm,faclod(idxact),hpval,fracretro,unitsretro,emsday) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipin, asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipin, asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,11X,A,/,10X,A,4X,A,4X,F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/prcnat.f b/NONROAD/NR08a/SOURCE/prcnat.f new file mode 100644 index 0000000..2ae64e7 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prcnat.f @@ -0,0 +1,943 @@ +c**** PRCNAT +c + subroutine prcnat(ierr,icurec,asccod,idxsta,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the processing for the nation to state allocation +c of populations and the application of all of the emission factors +c and seasonality factors. +c Argument descriptions: +c Outputs: +c ierr I error code +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c idxsta I index of the state +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/20/97 --gmw-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 10/11/01 rgiannelli force getgrw even in base year +c 06/28/04 --dfk-- added evap processing +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/30/05 -cimulus- added model-year loop before state loop +c to initialize values that depend on model year +c but not on state code, improving performance +c 07/30/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/30/05 -cimulus- cleaned up code for consistency, in terms of +c whitespace and commenting +c 07/30/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/30/05 -cimulus- removed redundant thisfc variable +c 07/30/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 07/30/05 -cimulus- corrected deterioration cap parameter passed +c to clcevems; pass evdetcap instead of detcap +c 04/20/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c 03/15/12 --gwilson-- Put in check to make sure tech fractions +c are foundfor this model year +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 icurec + character*10 asccod + integer*4 idxsta + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndasc I returns the best match of an SCC code in an array +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the exhaust technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndasc + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +c real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c --- general purpose --- +c + integer*4 jerr, i, j, idxasc + character*5 subcur + real*4 zeroems(MXPOL) + real*4 missems(MXPOL) + real*4 hpmid, hplev, hpval + real*4 denful + logical*4 luse + integer*4 idxact, idxgrw + real*4 grwtmp + integer*4 nyrlif, idxyr, iyr + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 adjems(MXPOL,MXDAYS), adjtime + real*4 tplfac, tpltmp + integer*4 ndays + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) + real*4 emsday(MXPOL) + real*4 emsbmy(MXPOL) + real*4 popbmy + real*4 actbmy + real*4 fulbmy + real*4 fulcsm +c +c --- national level --- +c + real*4 popus +c +c --- state level --- +c + integer*4 idx + real*4 popsta(NSTATE), grwsta(NSTATE) +c +c --- exhaust tech --- +c + integer*4 idxtch(MXAGYR) + character*10 tecnam(MXTECH) + real*4 tecfrc(MXTECH) + real*4 emsfac(MXAGYR,MXPOL,MXTECH) + real*4 bsfc(MXAGYR,MXTECH) + integer*4 idxunt(MXPOL,MXTECH) + real*4 adetcf(MXPOL,MXTECH) + real*4 bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + real*4 poptot + real*4 acttot + real*4 strtot + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's population +c +c --- evap tech --- +c + integer*4 idxevtch(MXAGYR) + character*10 evtecnam(MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 fulbmytot + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + integer*4 idxref, idxall + character*10 tname + character*9 rfmode(MXAGYR,MXEVTECH) + real*4 tank(MXAGYR,MXEVTECH) + real*4 tfull(MXAGYR,MXEVTECH) + real*4 tmetal(MXAGYR,MXEVTECH) + real*4 hlen(MXAGYR,MXEVTECH) + real*4 hdia(MXAGYR,MXEVTECH) + real*4 hmetal(MXAGYR,MXEVTECH) + real*4 hsstart(MXAGYR,MXEVTECH) + real*4 nlen(MXAGYR,MXEVTECH) + real*4 ndia(MXAGYR,MXEVTECH) + real*4 slen(MXAGYR,MXEVTECH) + real*4 sdia(MXAGYR,MXEVTECH) + real*4 vlen(MXAGYR,MXEVTECH) + real*4 vdia(MXAGYR,MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 diufracbmy(MXAGYR,5,MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the error code --- +c + ierr = IFAIL +c +c --- initialize variables that do not change throughout +c the life of the subroutine --- +c + subcur = ' ' + zeroems = 0. + missems = RMISS +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do i = 2, MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) then + hplev = hpclev(i) + endif + end do + endif + hpval = avghpc(icurec) +c +c --- if the population is zero, just write zero records and return --- +c + popus = popeqp(icurec) + if( popus .LE. 0. ) then + do i = 1, NSTATE + if( lstacd(i) ) then + call wrtdat(jerr,statcd(i),subcur,asccod,hplev, + & 0.,0.,0.,0.,0.,0.,0.,zeroems) + if( jerr .NE. ISUCES ) goto 9999 + endif + end do + ierr = ISUCES + goto 9999 + endif +c +c --- initialize the population arrays to zero --- +c + do i = 1, NSTATE + popsta(i) = 0. + end do +c +c --- if this is a national record, call routine to +c calculate the populations in each state based on +c national to state allocation --- +c + if( idxsta .LE. 0 ) then +c +c --- get the allocation coefficients for this SCC code, +c if not found, error --- +c + idxasc = fndasc( asccod, ascalo, nalorc ) + if( idxasc .LE. 0 ) goto 7000 +c +c --- call routine to calculate the populations in each +c state based on national to state allocation --- +c + nnatrc = nnatrc + 1 + call alosta(jerr,popsta,grwsta,icurec, + & popus,idxasc,luse,growth) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- if this is a state record, just assign all population to +c this state --- +c + else + popsta(idxsta) = popeqp(icurec) + grwsta(idxsta) = 1. + nstarc(idxsta) = nstarc(idxsta) + 1 + endif +c +c --- call routine to find the number of exhaust tech types +c for this piece of equipment and tech year --- +c + if( fndtch(asccod,hpval,itchyr) .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any exhaust technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + if( fndevtch(asccod,hpval,itchyr) .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- find the fuel density, used for fuel consumption calc --- +c + denful = 1. + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c --- pre-calculate values that depend on model year +c but that do not depend on state code --- +c + do iyr = iepyr - MXAGYR + 1, iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --- call routine to find the exhaust technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxtch(idxyr) = fndtch(asccod,hpval,tchmdyr) +c +c --- check that there is data for this year --- +c + if( idxtch(idxyr) .EQ. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) + & 'WARNING: Could ','not find any exhaust technology ', + & 'fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A,10X,A)',ERR=9999) + & 'SCC code','Average HP','Year' + write(IOWMSG,'(10X,A,7X,F7.1,14X,I4)',ERR=9999) + & asccod,hpval,tchmdyr + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c + do i = 1, ntech(idxtch(idxyr)) + tecnam(i) = tectyp(idxtch(idxyr),i) + tecfrc(i) = tchfrc(idxtch(idxyr),i) + end do +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type and model year --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch(idxyr)), tecfrc, + & tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- call routine to find the evap technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxevtch(idxyr) = fndevtch(asccod,hpval,tchmdyr) +c + do i = 1, nevtech(idxevtch(idxyr)) + evtecnam(i) = evtectyp(idxevtch(idxyr),i) + evtecfrc(i) = evtchfrc(idxevtch(idxyr),i) +c +c --- set up refueling, hose and tank data --- +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(idxyr,i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(idxyr,i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(idxyr,i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(idxyr,i) = tnkful(idxref) + tmetal(idxyr,i) = tnkmtl(idxref) + hlen(idxyr,i) = hoslen(idxref) + hdia(idxyr,i) = hosdia(idxref) + hmetal(idxyr,i) = hosmtl(idxref) + hsstart(idxyr,i)= hssph(idxref) + nlen(idxyr,i) = ncklen(idxref) + ndia(idxyr,i) = nckdia(idxref) + slen(idxyr,i) = srlen(idxref) + sdia(idxyr,i) = srdia(idxref) + vlen(idxyr,i) = vntlen(idxref) + vdia(idxyr,i) = vntdia(idxref) + do j = 1, 5 + diufracbmy(idxyr,j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(idxyr,i) = ' ' + tank(idxyr,i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i), tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c +c --- next evap technology type --- +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch(idxyr)), + & evtecfrc, tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- next model year --- +c + end do +c +c --- loop over states --- +c + do idx = 1, NSTATE +c +c --- skip if this state is not requested, or if doing national +c record and state has specific records skip it --- +c + if( .NOT. lstacd(idx) ) then + cycle + endif + if( idx .LE. 0 .AND. lstlev(idx) ) then + cycle + endif +c +c --- if population for this state is zero, just write a zero record +c and go to next state --- +c + if( popsta(idx) .LE. 0 ) then + call wrtdat(jerr,statcd(idx),subcur,asccod,hplev, + & 0.,0.,0.,0.,0.,0.,0.,zeroems) + if( jerr .NE. ISUCES ) goto 9999 + cycle + endif +c +c --- initialize daily emissions to zero --- +c + do i = 1, MXPOL + emsday(i) = 0. + end do +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, statcd(idx), daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, statcd(idx), daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, statcd(idx) ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( statcd(idx), asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, statcd(idx), avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write missing records, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'State','SCC','HP range', + & statcd(idx),asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + call wrtdat(jerr,statcd(idx),subcur,asccod,hplev, + & RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,missems) + if( jerr .NE. ISUCES ) goto 9999 + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwtmp, ipopyr(icurec), + & ipopyr(icurec)+1, statcd(idx), indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 + grwsta(idx) = grwtmp +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), iactun(idxact), + & faclod(idxact), actage(idxact), grwsta(idx) ) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popsta(idx), modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, statcd(idx), + & indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0. + acttot = 0. + strtot = 0. + fulcsm = 0. + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity, and starts totals to zero --- +c + evpoptot = 0. + evacttot = 0. + evstrtot = 0. +c +c --- loop over model years --- +c + do iyr = iepyr - nyrlif + 1, iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip if the model year fraction is zero (sometimes +c happens for the first year in the distribution) --- +c + if( modfrc(idxyr) .LE. 0. ) then + cycle + endif +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) --- +c + fulbmytot = 0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- loop over exhaust technology types --- +c + do i = 1, ntech(idxtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( tchfrc(idxtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this model year and tech type --- +c + popbmy = popsta(idx) * modfrc(idxyr) + & * tchfrc(idxtch(idxyr),i) +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, + & tectyp(idxtch(idxyr),i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, + & tectyp(idxtch(idxyr),i) ) + if( jerr .NE. ISUCES ) goto 9999 + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr,emsday, emsbmy, + & idxyr, i, idxtch(idxyr), detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tchfrc(idxtch(idxyr),i), + & hpval, denful, bsfc(idxyr,i), idxact, adjems, + & adjtime, emsfac, tpltmp, stradj(idxyr), + & popsta(idx), modfrc(idxyr), ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 + +c +c --- calculate the contribution from this model year and tech type --- +c + actbmy = actadj(idxyr) * popsta(idx) * modfrc(idxyr) + & * tplful * tchfrc(idxtch(idxyr),i) * adjtime + fulbmy = tplful * popsta(idx) * actadj(idxyr) + & * modfrc(idxyr) * tchfrc(idxtch(idxyr),i) + & * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total by-model-year fuel consumption +c (value used in evap calculations below) --- +c + fulbmytot = fulbmytot + fulbmy +c +c --- call routine to write by-model-year output --- +c + if ( lbmyfl ) then + call wrtbmy(jerr,statcd(idx),subcur,asccod,hplev, + & tectyp(idxtch(idxyr),i),iyr,popbmy,emsbmy, + & fulbmy,actbmy,faclod(idxact),hpval, + & fracretrobmy,unitsretrobmy,1) ! 1=exhaust + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tectyp(idxtch(idxyr),i),popbmy, + & actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust technology type --- +c + end do +c +c --- sum population, activity, and starts --- +c + poptot = poptot + popsta(idx) * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popsta(idx) + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popsta(idx) + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- loop over evap technology types --- +c + do i = 1, nevtech(idxevtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( evtchfrc(idxevtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- estimate the fuel used by this technology and model year --- +c + fulbmy = fulbmytot * evtchfrc(idxevtch(idxyr),i) +c +c --- setup diurnal fraction array for clcevems (only need +c current tech type for clcevems) --- +c + do j = 1, 5 + diufrac(j,i) = diufracbmy(idxyr,j,i) + end do +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch(idxyr), detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, + & evtchfrc(idxevtch(idxyr),i), hpval, adjems, + & adjtime, evemsfac, tpltmp, stradj(idxyr), + & popsta(idx), modfrc(idxyr), ndays, tank(idxyr,i), + & actadj(idxyr), rfmode(idxyr,i), fulbmy, + & tfull(idxyr,i), tmetal(idxyr,i), hlen(idxyr,i), + & hdia(idxyr,i), hmetal(idxyr,i), nlen(idxyr,i), + & ndia(idxyr,i), slen(idxyr,i), sdia(idxyr,i), + & vlen(idxyr,i), vdia(idxyr,i), hsstart(idxyr,i), + & diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), statcd(idx) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + popbmy = popsta(idx) * modfrc(idxyr) + & * evtchfrc(idxevtch(idxyr),i) + actbmy = actadj(idxyr) * popsta(idx) * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch(idxyr),i) * adjtime +c +c --- call routine to write by-model-year output --- +c + if ( lbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,statcd(idx),subcur,asccod,hplev, + & evtectyp(idxevtch(idxyr),i),iyr,popbmy,emsbmy, + & fulbmy,actbmy,RMISS,RMISS,RMISS,RMISS,2) ! 2=evap + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtectyp(idxevtch(idxyr),i),popbmy, + & actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap technology type --- +c + end do +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popsta(idx) * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popsta(idx) + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popsta(idx) + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + end do +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +ccc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c --- call routine to write the output to the data file --- +c + call wrtdat(jerr,statcd(idx),subcur,asccod,hplev,poptot,acttot, + & fulcsm,faclod(idxact),hpval,fracretro,unitsretro,emsday) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- next state -- +c + end do +c +c --- all states processed, return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & statcd(idx), asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & statcd(idx), asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,11X,A,/,10X,A,4X,A,4X,F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/prcsta.f b/NONROAD/NR08a/SOURCE/prcsta.f new file mode 100644 index 0000000..48cd479 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prcsta.f @@ -0,0 +1,1034 @@ +C**** PRCSTA +c + subroutine prcsta(ierr,emsams,icurec,asccod,idxsta,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the processing for the state to county allocation +c of populations and the application of all of the emission factors +c and seasonality factors. +c Argument descriptions: +c Outputs: +c ierr I error code +c emsams R emissions for each county +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c idxsta I index of the state in arrays +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/20/97 --gmw-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 10/11/01 rgiannelli force getgrw even in base year +c 06/28/04 --dfk-- added evap processing +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/29/05 -cimulus- separated main processing to calculate +c emissions on state level and then allocate to +c county level using the allocation fractions, +c instead of calculating emissions for each +c county, improving performance significantly +c 07/29/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/29/05 -cimulus- cleaned up code for consistency, in terms of +c whitespace and commenting +c 07/29/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/29/05 -cimulus- removed redundant thisfc variable +c 07/29/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 07/30/05 -cimulus- corrected deterioration cap parameter passed +c to clcevems; pass evdetcap instead of detcap +c 04/20/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 emsams(NCNTY,MXPOL) + integer*4 icurec + character*10 asccod + integer*4 idxsta + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndasc I returns the best match of an SCC code in an array +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the exhaust technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndasc + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +c real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c --- general purpose --- +c + integer*4 jerr, i, j, idxasc + character*5 subcur + real*4 zeroems(MXPOL) + real*4 missems(MXPOL) + real*4 hpmid, hplev, hpval + real*4 denful + logical*4 luse + integer*4 idxact, idxgrw + integer*4 nyrlif, idxyr, iyr + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 adjems(MXPOL,MXDAYS), adjtime + real*4 tplfac, tpltmp + integer*4 ndays + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) + real*4 emsday(MXPOL) + real*4 emsbmy(MXPOL) + real*4 popbmy + real*4 actbmy + real*4 fulbmy + real*4 fulcsm +c +c --- state level --- +c + character*5 fipsta + real*4 popsta, grwsta +c +c --- county level --- +c + integer*4 ibegj, iendj + integer*4 idxfip + real*4 emsdaycty(MXPOL) + real*4 popcty(NCNTY), grwcty(NCNTY) + real*4 popctyfrac + real*4 poptotcty + real*4 acttotcty + real*4 fulcsmcty + real*4 fracretrocty + real*4 unitsretrocty +c +c --- exhaust tech --- +c + integer*4 idxtch(MXAGYR) + character*10 tecnam(MXTECH) + real*4 tecfrc(MXTECH) + real*4 emsfac(MXAGYR,MXPOL,MXTECH) + real*4 bsfc(MXAGYR,MXTECH) + integer*4 idxunt(MXPOL,MXTECH) + real*4 adetcf(MXPOL,MXTECH) + real*4 bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + real*4 exemsbmy(MXAGYR,MXTECH,MXPOL) + real*4 expopbmy(MXAGYR,MXTECH) + real*4 exactbmy(MXAGYR,MXTECH) + real*4 exfulbmy(MXAGYR,MXTECH) + real*4 poptot + real*4 acttot + real*4 strtot + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's and tech type's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's and tech type's population + real*4 exfracretrobmy(MXAGYR,MXTECH) ! fraction retrofitted for all model years' and tech types' populations + real*4 exunitsretrobmy(MXAGYR,MXTECH) ! number of units retrofitted for all model years' and tech types' populations +c +c --- evap tech --- +c + integer*4 idxevtch(MXAGYR) + character*10 evtecnam(MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 evemsbmy(MXAGYR,MXEVTECH,MXPOL) + real*4 evpopbmy(MXAGYR,MXEVTECH) + real*4 evactbmy(MXAGYR,MXEVTECH) + real*4 evfulbmy(MXAGYR,MXEVTECH) + real*4 fulbmytot + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + integer*4 idxref, idxall + character*10 tname + character*9 rfmode(MXEVTECH) + real*4 tank(MXEVTECH) + real*4 tfull(MXEVTECH) + real*4 tmetal(MXEVTECH) + real*4 hlen(MXEVTECH) + real*4 hdia(MXEVTECH) + real*4 hmetal(MXEVTECH) + real*4 hsstart(MXEVTECH) + real*4 nlen(MXEVTECH) + real*4 ndia(MXEVTECH) + real*4 slen(MXEVTECH) + real*4 sdia(MXEVTECH) + real*4 vlen(MXEVTECH) + real*4 vdia(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize the error code --- +c + ierr = IFAIL +c +c --- initialize variables that do not change throughout +c the life of the subroutine --- +c + fipsta = regncd(icurec)(1:5) + subcur = ' ' + nstarc(idxsta) = nstarc(idxsta) + 1 + zeroems = 0. + missems = RMISS +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do i = 2, MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) then + hplev = hpclev(i) + endif + end do + endif + hpval = avghpc(icurec) +c +c --- set the loop indexes for number of counties --- +c + if(idxsta .GT. 0 .AND. lstacd(idxsta))then + ibegj = idxcty(idxsta) + iendj = idxcty(idxsta+1) - 1 + else + ibegj = 1 + iendj = NCNTY + endif +c +c --- if the population is zero, just write zero records and return --- +c + popsta = popeqp(icurec) + if( popsta .LE. 0. ) then + do i = ibegj, iendj + if( lfipcd(i) ) then + call wrtdat(jerr,fipcod(i),subcur,asccod,hplev, + & 0.,0.,0.,0.,0.,0.,0.,zeroems) + if( jerr .NE. ISUCES ) goto 9999 + endif + end do + ierr = ISUCES + goto 9999 + endif +c +c --- get the allocation coefficients for this SCC code, +c if not found, error --- +c + idxasc = fndasc( asccod, ascalo, nalorc ) + if( idxasc .LE. 0 ) goto 7000 +c +c --- initialize the population arrays to zero --- +c + do i = 1, NCNTY + popcty(i) = 0. + end do +c +c --- call routine to calculate the populations in each +c county based on state to county allocation --- +c + call alocty(jerr,popcty,grwcty,icurec, + & popsta,idxsta,idxasc,luse,growth) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- call routine to find the number of exhaust tech types +c for this piece of equipment and tech year --- +c + if( fndtch(asccod,hpval,itchyr) .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any exhaust technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + if( fndevtch(asccod,hpval,itchyr) .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- find the fuel density, used for fuel consumption calc --- +c + denful = 1. + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c -------------------------------- +c --- state-level calculations --- +c -------------------------------- +c +c --- initialize daily emissions to zero --- +c + do i = 1, MXPOL + emsday(i) = 0. + end do +c +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, fipsta, daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, fipsta, daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, fipsta ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( fipsta, asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, fipsta, avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write missing records, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'State','SCC','HP range', + & fipsta,asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + do i = ibegj, iendj + if( lfipcd(i) ) then + call wrtdat(jerr,fipcod(i),subcur,asccod,hplev, + & RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,RMISS,missems) + if( jerr .NE. ISUCES ) goto 9999 + endif + end do + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwsta, ipopyr(icurec), + & ipopyr(icurec)+1, fipsta, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 + grwcty = grwsta +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), iactun(idxact), + & faclod(idxact), actage(idxact), grwsta ) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popsta, modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, fipsta, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0. + acttot = 0. + strtot = 0. + fulcsm = 0. + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity, and starts totals to zero --- +c + evpoptot = 0. + evacttot = 0. + evstrtot = 0. +c +c --- loop over model years --- +c + do iyr = iepyr - nyrlif + 1, iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip if the model year fraction is zero (sometimes +c happens for the first year in the distribution) --- +c + if( modfrc(idxyr) .LE. 0. ) then + cycle + endif +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) --- +c + fulbmytot = 0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- call routine to find the exhaust technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxtch(idxyr) = fndtch(asccod,hpval,tchmdyr) +c + do i = 1, ntech(idxtch(idxyr)) + tecnam(i) = tectyp(idxtch(idxyr),i) + tecfrc(i) = tchfrc(idxtch(idxyr),i) + end do +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type and model year --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch(idxyr)), tecfrc, + & tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- loop over exhaust technology types --- +c + do i = 1, ntech(idxtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( tchfrc(idxtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this model year and tech type --- +c + popbmy = popsta * modfrc(idxyr) * tchfrc(idxtch(idxyr),i) + expopbmy(idxyr,i) = popbmy +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, tecnam(i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, tecnam(i) ) + if( jerr .NE. ISUCES ) goto 9999 + exfracretrobmy(idxyr,i) = fracretrobmy + exunitsretrobmy(idxyr,i) = unitsretrobmy + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr, emsday, emsbmy, + & idxyr, i, idxtch(idxyr), detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tchfrc(idxtch(idxyr),i), + & hpval, denful, bsfc(idxyr,i), idxact, adjems, adjtime, + & emsfac, tpltmp, stradj(idxyr), popsta, modfrc(idxyr), + & ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 + do j = 1, MXPOL + exemsbmy(idxyr,i,j) = emsbmy(j) + end do +c +c --- calculate the contribution from this model year and tech type --- +c + actbmy = actadj(idxyr) * popsta * modfrc(idxyr) + & * tplful * tchfrc(idxtch(idxyr),i) * adjtime + exactbmy(idxyr,i) = actbmy + fulbmy = tplful * popsta * actadj(idxyr) * modfrc(idxyr) + & * tchfrc(idxtch(idxyr),i) * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime + exfulbmy(idxyr,i) = fulbmy +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total by-model-year fuel consumption +c (value used in evap calculations below) --- +c + fulbmytot = fulbmytot + fulbmy +c +c --- next exhaust technology type --- +c + end do +c +c --- sum population, activity, and starts --- +c + poptot = poptot + popsta * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- call routine to find the evap technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxevtch(idxyr) = fndevtch(asccod,hpval,tchmdyr) +c + do i = 1, nevtech(idxevtch(idxyr)) +c + evtecnam(i) = evtectyp(idxevtch(idxyr),i) + evtecfrc(i) = evtchfrc(idxevtch(idxyr),i) +c +c --- set up refueling, hose and tank data --- +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(i) = tnkful(idxref) + tmetal(i) = tnkmtl(idxref) + hlen(i) = hoslen(idxref) + hdia(i) = hosdia(idxref) + hmetal(i) = hosmtl(idxref) + hsstart(i)= hssph(idxref) + nlen(i) = ncklen(idxref) + ndia(i) = nckdia(idxref) + slen(i) = srlen(idxref) + sdia(i) = srdia(idxref) + vlen(i) = vntlen(idxref) + vdia(i) = vntdia(idxref) + do j=1,5 + diufrac(j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(i) = ' ' + tank(i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i),tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch(idxyr)), + & evtecfrc, tchmdyr, idxyr, icurec ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- loop over evap technology types --- +c + do i = 1, nevtech(idxevtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( evtchfrc(idxevtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- initialize the bmy array --- +c + emsbmy = 0. +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- estimate the fuel used by this technology and model year --- +c + fulbmy = fulbmytot * evtecfrc(i) + evfulbmy(idxyr,i) = fulbmy +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch(idxyr), detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, evtecfrc(i), hpval, + & adjems, adjtime, evemsfac, + & tpltmp, stradj(idxyr), popsta, modfrc(idxyr), + & ndays, tank(i), actadj(idxyr), rfmode(i), fulbmy, + & tfull(i), tmetal(i), hlen(i), hdia(i), hmetal(i), + & nlen(i), ndia(i), slen(i), sdia(i), vlen(i), + & vdia(i), hsstart(i), diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), fipsta ) + if( jerr .NE. ISUCES ) goto 9999 + do j = 1, MXPOL + evemsbmy(idxyr,i,j) = emsbmy(j) + end do +c +c --- calculate the contribution from this tech type --- +c + popbmy = popsta * modfrc(idxyr) + & * evtchfrc(idxevtch(idxyr),i) + evpopbmy(idxyr,i) = popbmy + actbmy = actadj(idxyr) * popsta * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch(idxyr),i) * adjtime + evactbmy(idxyr,i) = actbmy +c +c --- next evap technology type --- +c + end do +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popsta * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popsta + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + end do +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +ccc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c ----------------------------------------------------------------- +c --- allocate the state-level calculations to the county level --- +c ----------------------------------------------------------------- +c +c --- loop over counties --- +c + do idxfip = ibegj, iendj +c +c --- if the county was not requested, skip to the next county --- +c + if( .NOT. lfipcd(idxfip) ) then + cycle + endif +c +c --- if the population for this county is zero, just write +c a zero record and skip to the next county --- +c + if( popcty(idxfip) .LE. 0 ) then + call wrtdat(ierr,fipcod(idxfip),subcur,asccod,hplev, + & 0.,0.,0.,0.,0.,0.,0.,zeroems) + if( jerr .NE. ISUCES ) then + goto 9999 + endif + cycle + endif +c +c --- calculate population fraction for the county --- +c + popctyfrac = popcty(idxfip) / popsta +c +c --- loop over model years --- +c + do iyr = iepyr - nyrlif + 1, iepyr +c +c --- compute relative index, backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- if the fraction for this model year is zero (sometimes +c happens for the first year in the distribution), skip to +c the next model year --- +c + if( modfrc(idxyr) .LE. 0. ) then + cycle + endif +c +c CIM_NOTDONE: Convert *bmy variables (popbmy, emsbmy, etc.) used below +c to have a model-year dimension; this will require modifying +c the code in the state-level processing to populate them +c correctly as well +c +c --- loop over exhaust tech types --- +c + do i= 1, ntech(idxtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( tchfrc(idxtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- allocate the exhaust by-model-year state-level +c values to the county level --- +c + popbmy = expopbmy(idxyr,i) * popctyfrac + actbmy = exactbmy(idxyr,i) * popctyfrac + fulbmy = exfulbmy(idxyr,i) * popctyfrac + fracretrobmy = exfracretrobmy(idxyr,i) ! fraction retrofitted same for state and county level + unitsretrobmy = exunitsretrobmy(idxyr,i) * popctyfrac + do j = 1, MXPOL + emsbmy(j) = exemsbmy(idxyr,i,j) * popctyfrac + end do +c +c --- write exhaust by-model-year output --- +c + if( lbmyfl ) then + call wrtbmy(jerr,fipcod(idxfip),subcur,asccod,hplev, + & tectyp(idxtch(idxyr),i),iyr,popbmy,emsbmy, + & fulbmy,actbmy,faclod(idxact),hpval,fracretrobmy, + & unitsretrobmy,1) ! 1=exhaust + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tectyp(idxtch(idxyr),i),popbmy, + & actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust tech type --- +c + end do +c +c --- loop over evap tech types --- +c + do i= 1, nevtech(idxevtch(idxyr)) +c +c --- skip over unused technology types --- +c + if( evtchfrc(idxevtch(idxyr),i) .LE. 0. ) then + cycle + endif +c +c --- allocate the evap by-model-year state-level +c values to the county level --- +c + popbmy = evpopbmy(idxyr,i) * popctyfrac + actbmy = evactbmy(idxyr,i) * popctyfrac + fulbmy = evfulbmy(idxyr,i) * popctyfrac + do j = 1, MXPOL + emsbmy(j) = evemsbmy(idxyr,i,j) * popctyfrac + end do +c +c --- write evap by-model-year output --- +c + if ( levbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,fipcod(idxfip),subcur,asccod,hplev, + & evtectyp(idxevtch(idxyr),i),iyr,popbmy,emsbmy, + & fulbmy,actbmy,RMISS,RMISS,RMISS,RMISS,2) ! 2=evap + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c +c --- add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtectyp(idxevtch(idxyr),i),popbmy, + & actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap tech type --- +c + end do +c +c --- next model year --- +c + end do +c +c --- allocate the total state-level values to the county level --- +c + poptotcty = poptot * popctyfrac + acttotcty = acttot * popctyfrac + fulcsmcty = fulcsm * popctyfrac + fracretrocty = fracretro ! fraction retrofitted same for state and county level + unitsretrocty = unitsretro * popctyfrac + do i = 1, MXPOL + emsdaycty(i) = emsday(i) * popctyfrac + end do +c +c --- write the data to the output data file --- +c + call wrtdat(jerr,fipcod(idxfip),subcur,asccod,hplev, + & poptotcty,acttotcty,fulcsmcty,faclod(idxact),hpval, + & fracretrocty,unitsretrocty,emsdaycty) + if( jerr .NE. ISUCES ) then + goto 9999 + endif +c +c --- update variables for storing EPS2 AMS data --- +c + do i = 1, MXPOL + if( emsdaycty(i) .GT. 0. ) then + emsams(idxfip,i) = emsams(idxfip,i) + emsdaycty(i) + endif + end do + namsrc = namsrc + 1 +c +c --- next county --- +c + end do +c +c --- all counties processed, return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & fipsta, asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'State SCC HP range', + & fipsta, asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,11X,A,/,10X,A,4X,A,4X,F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/prcsub.f b/NONROAD/NR08a/SOURCE/prcsub.f new file mode 100644 index 0000000..3e2d4d9 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prcsub.f @@ -0,0 +1,829 @@ +c**** PRCSUB +c + subroutine prcsub(ierr,emsams,icurec,asccod,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the prcessing for the county to subregion allocation +c of populations and the application of all of the emission factors +c and seasonality factors. +c Argument descriptions: +c Outputs: +c ierr I error code +c emsams R emissions for each county +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/20/97 --gmw-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 10/11/01 rgiannelli force getgrw even in base year +c 05/13/04 --dfk-- added evap processing +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/30/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/30/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/30/05 -cimulus- removed redundant thisfc variable +c 07/30/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 08/01/05 -cimulus- removed unused poptmp variable +c 04/20/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE +c + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 emsams(NCNTY,MXPOL) + integer*4 icurec + character*10 asccod + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of a string in array of strings +c fndasc I returns the best match of an SCC code in an array +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndchr + integer*4 fndasc + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +c real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) +c + character*10 tecnam(MXTECH) + character*5 subcur, fipin + integer*4 jerr, i, idxasc, idxfip, j + integer*4 idxact, idxgrw, nyrlif, idxyr, iyr + integer*4 idxtch, ndays, idxreg + integer*4 idxunt(MXPOL,MXTECH), idxref, idxall + real*4 popsub, grwsub, grwtmp + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 emsfac(MXAGYR,MXPOL,MXTECH), emsday(MXPOL) + real*4 fulcsm, hplev, bsfc(MXAGYR,MXTECH) + real*4 tplfac, tpltmp, poptot, acttot, strtot + real*4 hpval, adjems(MXPOL,MXDAYS),adjtime + real*4 hpmid, denful, tecfrc(MXTECH) + real*4 popbmy, actbmy, fulbmy, emsbmy(MXPOL) + real*4 adetcf(MXPOL,MXTECH), bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + logical*4 luse + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's population +c + character*10 evtecnam(MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + character*10 tname + character*9 rfmode(MXEVTECH) + real*4 tank(MXEVTECH) + real*4 tfull(MXEVTECH) + real*4 tmetal(MXEVTECH) + real*4 hlen(MXEVTECH) + real*4 hdia(MXEVTECH) + real*4 hmetal(MXEVTECH) + real*4 nlen(MXEVTECH) + real*4 ndia(MXEVTECH) + real*4 slen(MXEVTECH) + real*4 sdia(MXEVTECH) + real*4 vlen(MXEVTECH) + real*4 vdia(MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) + real*4 hsstart(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 fulbmytot + integer*4 idxevtch + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize the error code --- +c + ierr = IFAIL + fipin = regncd(icurec)(1:5) +c +c --- get the index of this county ---- +c + idxfip = fndchr( fipin, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) then + ierr = ISKIP + goto 9999 + endif + nctyrc(idxfip) = nctyrc(idxfip) + 1 +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do 10 i=2,MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) + & hplev = hpclev(i) + 10 continue + endif + hpval = avghpc(icurec) +c +c --- initialize the emissions to zero --- +c + do 20 i=1,MXPOL + emsday(i) = 0. + 20 continue +c +c ---- get the allocation coefficients for this SCC code, +c if not found, write a missing record and return ---- +c + idxasc = fndasc( asccod, ascalo, nalorc ) + if( idxasc .LE. 0 ) goto 7000 +c +c --- loop over the regions, and find the county for this +c subcounty --- +c + idxreg = 0 + do 30 i=1,nregin + if( fipin .EQ. reglst(i)(1:5) ) idxreg = i + 30 continue + if( idxreg .LE. 0 ) then + ierr = ISKIP + goto 9999 + endif + subcur = reglst(idxreg)(6:10) + if( subcur .EQ. ' ' ) then + ierr = ISKIP + goto 9999 + endif +c +c ---- call routine to calculate the populations in each +c county based on state to county allocation --- +c + call alosub(jerr,popsub,grwsub,reglst(idxreg)(6:10), + & icurec,ipopyr(icurec),popeqp(icurec),idxfip, + & idxasc,luse,growth) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- if population for this county is zero, just write a zero record +c and rerturn to get the next record --- +c + if( popsub .LE. 0 ) then + call wrtdat(jerr,fipin,subcur,asccod,hplev,0.,0., + & 0.,0.,0.,0.,0.,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- call routine to find the number of exhaust tech types +c for this piece of equipment and tech year --- +c + idxtch = fndtch(asccod,hpval,itchyr) + if( idxtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + idxevtch = fndevtch(asccod,hpval,itchyr) + if( idxevtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- finf the fuel density, used for fuel consumption calc --- +c + denful = 1.0 + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, fipin, daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, fipin, daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, fipin ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( fipin, asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, fipin, avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write missing records, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'County','SCC','HP range', + & fipin,asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + do j = 1, MXPOL + if(j.lt.IDXDIU.or.j.gt.IDXRLS) emsday(j) = RMISS + end do + call wrtdat(jerr,fipin,subcur,asccod,hplev,RMISS,RMISS, + & RMISS,RMISS,RMISS,RMISS,RMISS,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwtmp, ipopyr(icurec), + & ipopyr(icurec)+1, fipin, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 + grwsub = grwtmp +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), + & iactun(idxact), faclod(idxact), + & actage(idxact), grwsub ) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popsub, modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, fipin, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0.0 + acttot = 0.0 + strtot = 0.0 + fulcsm = 0.0 + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity and starts totals to zero +c + evpoptot = 0.0 + evacttot = 0.0 + evstrtot = 0.0 +c +c --- loop over model years ---- +c + do 60 iyr=iepyr-nyrlif+1,iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip it the model year fraction is zero (sometimes happens for +c the first year in the distribution) +c + if( modfrc(idxyr) .LE. 0.0 ) goto 60 +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) +c + fulbmytot=0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- call routine to find the exhaust technology index for this +c piece of equipment and model year --- +c +c if the model year is greater than the tech year, use the tech year +c + idxtch = fndtch(asccod,hpval,tchmdyr) +c + do 70 i=1,ntech(idxtch) + tecnam(i) = tectyp(idxtch,i) + tecfrc(i) = tchfrc(idxtch,i) + 70 continue +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch),tecfrc, + & tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c ---- loop over exhaust technology types --- +c + do 80 i=1,ntech(idxtch) +c +c ---- skip over unused technology types +c + if( tchfrc(idxtch,i) .LE. 0. ) goto 80 +c +c --- initialize the bmy array +c + emsbmy = 0.0 +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this tech type --- +c + popbmy = popsub * modfrc(idxyr) * tchfrc(idxtch,i) +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, tecnam(i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, tecnam(i) ) + if( jerr .NE. ISUCES ) goto 9999 + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr, emsday, emsbmy, + & idxyr, i, idxtch, detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tecfrc(i), hpval, denful, + & bsfc(idxyr,i), idxact, adjems, adjtime, emsfac, + & tpltmp, stradj(idxyr), popsub, modfrc(idxyr), + & ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this model year and tech type --- + +c + actbmy = actadj(idxyr) * popsub * modfrc(idxyr) + & * tplful * tchfrc(idxtch,i) * adjtime + fulbmy = tplful * popsub * actadj(idxyr) * modfrc(idxyr) + & * tchfrc(idxtch,i) * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total bmy fuel consumption --- +c (value used in evap calculations below) +c + fulbmytot = fulbmytot + fulbmy +c +c --- call routine to write exhaust by-model-year output --- +c + if( lbmyfl ) then + call wrtbmy(jerr,fipin,subcur,asccod,hplev, + & tecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & faclod(idxact),hpval,fracretrobmy, + & unitsretrobmy,1) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust technology type --- +c + 80 continue +c +c --- sum population, activity and starts --- +c + poptot = poptot + popsub * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popsub + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popsub + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- call routine to find the evap technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxevtch = fndevtch(asccod,hpval,tchmdyr) +c + do i=1,nevtech(idxevtch) +c + evtecnam(i) = evtectyp(idxevtch,i) + evtecfrc(i) = evtchfrc(idxevtch,i) +c +c --- set up refueling, hose and tank data --- +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(i) = tnkful(idxref) + tmetal(i) = tnkmtl(idxref) + hlen(i) = hoslen(idxref) + hdia(i) = hosdia(idxref) + hmetal(i) = hosmtl(idxref) + hsstart(i)= hssph(idxref) + nlen(i) = ncklen(idxref) + ndia(i) = nckdia(idxref) + slen(i) = srlen(idxref) + sdia(i) = srdia(idxref) + vlen(i) = vntlen(idxref) + vdia(i) = vntdia(idxref) + do j=1,5 + diufrac(j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(i) = ' ' + tank(i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i),tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch), + & evtecfrc, tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- loop over evap technology types --- +c + do 90 i=1,nevtech(idxevtch) +c +c --- skip over unused technology types --- +c + if( evtchfrc(idxevtch,i) .LE. 0. ) goto 90 +c +c --- initialize the bmy array --- +c + emsbmy = 0.0 +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- estimate the fuel used by this technology and model year +c + fulbmy = fulbmytot * evtecfrc(i) +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch, detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, evtecfrc(i), hpval, + & adjems, adjtime, evemsfac, + & tpltmp, stradj(idxyr), popsub, modfrc(idxyr), + & ndays, tank(i), actadj(idxyr), rfmode(i), fulbmy, + & tfull(i), tmetal(i), hlen(i), hdia(i), hmetal(i), + & nlen(i), ndia(i), slen(i), sdia(i), vlen(i), + & vdia(i), hsstart(i), diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), fipin ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + popbmy = popsub * modfrc(idxyr) * evtchfrc(idxevtch,i) + actbmy = actadj(idxyr) * popsub * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch,i) * adjtime +c +c --- call routine to write evap by-model-year output --- +c + if ( levbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,fipin,subcur,asccod,hplev, + & evtecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & RMISS,RMISS,RMISS,RMISS,2) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap technology type ---- +c + 90 continue +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popsub * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popsub + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popsub + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + 60 continue +c +c --- update variables for storing EPS2 AMS data --- +c + do 11 i=1,MXPOL + if( emsday(i) .GT. 0. ) emsams(idxfip,i) = + & emsams(idxfip,i) + emsday(i) + 11 continue + namsrc = namsrc + 1 +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +cc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c --- call routine to write the output to the data file --- +c + call wrtdat(jerr,fipin,subcur,asccod,hplev,poptot,acttot, + & fulcsm,faclod(idxact),hpval,fracretro,unitsretro,emsday) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Could not find any ', + & 'allocation coefficients for SCC code ',asccod + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipin, asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipin, asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,8X,A,11X,A,/,10X,A,4X,A,4X,A10,2X, + & F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/prcus.f b/NONROAD/NR08a/SOURCE/prcus.f new file mode 100644 index 0000000..de4666a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/prcus.f @@ -0,0 +1,775 @@ +c**** PRCUS +c + subroutine prcus(ierr,icurec,asccod,growth) +c +c----------------------------------------------------------------------- +c +c This routine does the processing for the national record, producing +c output which is the estimates for the entire nation. No allocation +c is performed. +c Argument descriptions: +c Outputs: +c ierr I error code +c Inputs: +c icurec I record number of current record +c asccod C SCC code of current record +c growth R growth value (-9 means not yet calulated) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/27/98 --gwilson-- original developnent +c 11/04/99 --mmj-- modified HP bin selection; now based on +c HP range midpoint +c 02/10/00 mjimenez tank volume specified in spillage file +c 07/03/01 charvey puts lpg/cng fulcsm back in. +c 08/03/01 -3 charvey adds fuel consump to bmy output. +c 08/31/01 -4 charvey/bgiannelli remove unused declarations. +c 05/13/04 --dfk-- added evap processing +c 10/11/01 rgiannelli force getgrw even in base year +c 06/15/04 --dfk-- added optional daily temperature emission adjustments +c 07/23/04 charvey fixes growth calc to handle different pop input years. +c 11/15/04 --dfk-- added rec-marine 3-hose calc +c 02/09/05 --dfk-- corrected problem with evap not using the right +c tech group, removed obsolete evap population code, +c optimized code +c 02/24/05 -cimulus- added activity parameter to wrtbmy calls +c 02/25/05 -cimulus- added load factor and HP average parameters +c to wrtdat and wrtbmy calls +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/03/05 --dfk-- separated the time period adjustment from the +c emission adjustment due to the way diesel SOX +c is handled in clcems. +c 03/15/05 -cimulus- replaced episode year with growth year +c for growth related logic +c 03/16/05 -cimulus- replaced episode year with technology year +c for technology related logic +c 04/06/05 -cimulus- updated scrappage methodolody: removed modscp +c and modpop which are no longer used; changed +c the year range passed to grwfac (see comment +c below); tweaked the parameters to the modyr +c call; replaced grwclc with agedist +c 05/20/05 -cimulus- added fraction and units retrofitted +c parameters to wrtdat and wrtbmy calls +c 05/20/05 -cimulus- filter retrofit records, by SCC and HP, then +c by model year, and then by tech type +c 05/23/05 -cimulus- calculate the fraction and units retrofitted +c and retrofit emission effects for the +c by-model-year iteration +c 05/23/05 -cimulus- calculate the units and fraction retrofitted +c for the SCC-HP iteration +c 07/15/05 -cimulus- removed obsolete tecin and iexev parameters +c from fndact calls +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c lodfac stores initial found in faclod and then +c is compared back against faclod, and faclod +c values are read from file, rather than being +c calculated at runtime +c 07/30/05 -cimulus- simplified find-activity, get-growth, and +c model-year-age-distribution handling now that +c fndact no longer depends on tech type +c 07/30/05 -cimulus- removed unused rfmode and fulcsm parameters +c from clcems call +c 07/30/05 -cimulus- removed redundant thisfc variable +c 07/30/05 -cimulus- changed size of rfmode and tank, which are +c evap related, from MXTECH to MXEVTECH +c 07/30/05 -cimulus- pass min(model year, tech year) instead of +c model year to emfclc and evemfclc, so that +c they limit searches by the tech year +c 04/20/06 --epa-- fixes all Daily Temp/RVP month/season/year. +c fully replaced dailyf with daymthf. +c 09/18/06 --epa-- add E10 hose & tank permeation adj factors +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdalo.inc' + include 'nonrdgrw.inc' + include 'nonrdact.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*10 asccod + real*4 growth +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndact I returns the index of record in activity arrays +c fndgxf I returns the index of the record in growth Xref arrays +c fndrfm I returns the index of the refueling mode +c fndtch I returns the index of the technology type +c fndevtch I returns the index of the evap technology type +c dailyf R returns a month/day/hour adjustment factor +c + integer*4 fndact + integer*4 fndgxf + integer*4 fndrfm + integer*4 fndtch + integer*4 fndevtch +cc real*4 dailyf +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 tchmdyr ! model year used for looking up tech type related data (minimum of model year and tech year) +c + character*10 tecnam(MXTECH) + character*5 fipus, subcur + integer*4 jerr, i, icurec, j + integer*4 idxact, idxgrw, nyrlif, idxyr, iyr + integer*4 idxtch, ndays + integer*4 idxunt(MXPOL,MXTECH), idxref, idxall + real*4 popus, grwus, grwtmp + real*4 yryrfrcscrp(MXAGYR) ! year-to-year fraction scrapped by age + real*4 modfrc(MXAGYR), actadj(MXAGYR) + real*4 detage(MXAGYR), stradj(MXAGYR) + real*4 emsfac(MXAGYR,MXPOL,MXTECH), emsday(MXPOL) + real*4 fulcsm, hplev, bsfc(MXAGYR,MXTECH) + real*4 tplfac, tpltmp, poptot, acttot, strtot + real*4 hpval, adjems(MXPOL,MXDAYS),adjtime, hpmid + real*4 denful, tecfrc(MXTECH) + real*4 popbmy, actbmy, fulbmy, emsbmy(MXPOL) + real*4 adetcf(MXPOL,MXTECH), bdetcf(MXPOL,MXTECH) + real*4 detcap(MXPOL,MXTECH) + real*4 fracretro ! fraction retrofitted for the entire SCC-HP population + real*4 unitsretro ! number of units retrofitted for the entire SCC-HP population + real*4 fracretrobmy ! fraction retrofitted for a single model year's population + real*4 unitsretrobmy ! number of units retrofitted for a single model year's population +c + character*10 evtecnam(MXEVTECH) + real*4 aevdetcf(MXPOL,MXEVTECH) + real*4 bevdetcf(MXPOL,MXEVTECH) + real*4 evtecfrc(MXEVTECH) + real*4 evdetcap(MXPOL,MXEVTECH) + real*4 evpoptot + real*4 evacttot + real*4 evstrtot + character*10 tname + character*9 rfmode(MXEVTECH) + real*4 tank(MXEVTECH) + real*4 tfull(MXEVTECH) + real*4 tmetal(MXEVTECH) + real*4 hlen(MXEVTECH) + real*4 hdia(MXEVTECH) + real*4 hmetal(MXEVTECH) + real*4 hsstart(MXEVTECH) + real*4 diufrac(5,MXEVTECH) + real*4 nlen(MXEVTECH) + real*4 ndia(MXEVTECH) + real*4 slen(MXEVTECH) + real*4 sdia(MXEVTECH) + real*4 vlen(MXEVTECH) + real*4 vdia(MXEVTECH) + real*4 tnke10fac(MXEVTECH) + real*4 hose10fac(MXEVTECH) + real*4 ncke10fac(MXEVTECH) + real*4 sre10fac(MXEVTECH) + real*4 vnte10fac(MXEVTECH) + real*4 fulbmytot + integer*4 idxevtch + integer*4 idxevunt(MXPOL,MXEVTECH) + real*4 evemsfac(MXAGYR,MXPOL,MXEVTECH) +c + real*4 daymthfac(MXDAYS), mthf, dayf, tplful +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize the error code --- +c + ierr = IFAIL + subcur = ' ' + fipus = '00000' +c +c --- find HP level for this HP category --- +c + hpmid = (hprang(1,icurec)+hprang(2,icurec)) / 2. + if( hpmid .LE. hpclev(1) ) then + hplev = hpclev(1) + else if( hpmid .GT. hpclev(MXHPC) ) then + hplev = 9999 + else + hplev = -9. + do 10 i=2,MXHPC + if( hplev .LT. 0. .AND. hpmid .LT. hpclev(i) ) + & hplev = hpclev(i) + 10 continue + endif + hpval = avghpc(icurec) +c +c --- initialize daily emissions to zero --- +c + do 30 i=1,MXPOL + emsday(i) = 0.0 + 30 continue +c +c --- if the population is zero, just write the records and return --- +c + if( popeqp(icurec) .LE. 0. ) then + call wrtdat(jerr,fipus,subcur,asccod,hplev,0.,0., + & 0.,0.,0.,0.,0.,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- initialize the population ---- +c + popus = popeqp(icurec) + grwus = 1.0 +c +c --- call routine to find the number of exhaust tech types +c for this piece of equipment and tech year --- +c + idxtch = fndtch(asccod,hpval,itchyr) + if( idxtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any exhaust technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- call routine to find the number of evap tech types +c for this piece of equipment and tech year --- +c + idxevtch = fndevtch(asccod,hpval,itchyr) + if( idxevtch .LE. 0 ) then + write(IOWMSG,'(/,1X,3A,1X,F7.1)',ERR=9999) 'WARNING: Could ', + & 'not find any evap technology fractions for equipment: ' + write(IOWMSG,'(10X,A,10X,A)',ERR=9999) 'SCC code','Average HP' + write(IOWMSG,'(10X,A,7X,F7.1)',ERR=9999) asccod,hpval + write(IOWMSG,'(8X,A)',ERR=9999) 'Skipping...' + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISKIP + goto 9999 + endif +c +c --- find the fuel density, used for fuel consumption calc --- +c + denful = 1.0 + if( ifuel .EQ. IDXGS2 .OR. ifuel .EQ. IDXGS4 ) then + denful = DENGAS + else if( ifuel .EQ. IDXCNG ) then + denful = DENCNG + else if( ifuel .EQ. IDXLPG ) then + denful = DENLPG + else if( ifuel .EQ. IDXDSL ) then + denful = DENDSL + endif +c +c----------------------------------------------------------------------- +c Add monthly activity weighting for daily loop: +c----------------------------------------------------------------------- +c + call daymthf(asccod, fipus, daymthfac, mthf, dayf, ndays) +c +c --- set the time period adjustment factor: Total vs Typical Day --- +c + if( ismtyp .EQ. IDXTOT ) then + adjtime=1.0 + else + adjtime=1.0/float(ndays) + endif +c + if(ldayfl) then + tplfac = dayf + else + tplfac = mthf * dayf + endif + tplful = mthf * dayf +c +c --- call routine to calculate the adjustment factors for the +c emission factors for this equipment type --- +c + call emsadj( adjems, asccod, fipus, daymthfac ) +c +c --- call routine to get the monthly, daily, and hourly adjustment --- +c +cc tplfac = dailyf( ndays, asccod, fipus ) +c +c --- call the routine to find the growth factor indicator in the +c cross reference arrays --- +c + if( .NOT. lgrwfl ) goto 7003 + idxgrw = fndgxf( fipus, asccod, avghpc(icurec) ) + if( idxgrw .LE. 0 ) goto 7001 +c +c --- find the activity data for the state, SCC, and average HP --- +c + idxact = fndact( asccod, fipus, avghpc(icurec) ) +c +c --- if no activity data found, log a warning, +c write missing records, and return --- +c + if( idxact .LE. 0 ) then + write(IOWMSG,9000,ERR=9999) + & 'WARNING: Could not find any activity data for: ', + & 'FIPS','SCC','HP range', + & fipus,asccod,hprang(1,icurec),hprang(2,icurec) + call chkwrn(jerr,IDXWAC) + if( jerr .NE. ISUCES ) goto 9999 + do j = 1, MXPOL + if(j.lt.IDXDIU.or.j.gt.IDXRLS) emsday(j) = RMISS + end do + call wrtdat(jerr,fipus,subcur,asccod,hplev,RMISS,RMISS, + & RMISS,RMISS,RMISS,RMISS,RMISS,emsday) + if( jerr .NE. ISUCES ) goto 9999 + ierr = ISUCES + goto 9999 + endif +c +c --- call routine to get the growth factor data from the file --- +c + call getgrw( jerr, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the growth factor for the state +c get growth factor from ipopyr to ipopyr+1, since this is used +c only for the scrptime call in modyr, which uses the growth +c factor at the base-population year to extrapolate a full +c sales/scrappage history --- +c + call grwfac( jerr, grwtmp, ipopyr(icurec), + & ipopyr(icurec)+1, fipus, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 + grwus = grwtmp +c +c --- call routine to calculate the initial model year distribution +c fractions (among other model-year related calculations) --- +c + call modyr( yryrfrcscrp, modfrc, stradj, actadj, nyrlif, + & detage, usehrs(icurec), discod(icurec), + & starts(idxact), actlev(idxact), + & iactun(idxact), faclod(idxact), + & actage(idxact), grwus ) +c +c --- call routine to calculate the grown model year distribution +c fractions and possibly the backward-grown population (if +c growth year less than population year) --- +c + call agedist( jerr, popus, modfrc, ipopyr(icurec), + & igryr, nyrlif, yryrfrcscrp, fipus, indgrx(idxgrw) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set exhaust population, activity, starts, fuel consumption, +c fraction retrofitted, and units retrofitted totals to zero --- +c + poptot = 0.0 + acttot = 0.0 + strtot = 0.0 + fulcsm = 0.0 + fracretro = 0. + unitsretro = 0. +c +c --- filter retrofit records to those that apply to the SCC and HP --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 1, asccod, hpval, 0, ' ' ) ! model year and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- set evap population, activity and starts totals to zero +c + evpoptot = 0.0 + evacttot = 0.0 + evstrtot = 0.0 +c +c --- loop over model years ---- +c + do 60 iyr=iepyr-nyrlif+1,iepyr +c +c --- compute relative index -- backwards from absolute year loop --- +c + idxyr = iepyr - iyr + 1 +c +c --- skip it the model year fraction is zero (sometimes happens for +c the first year in the distribution) +c + if( modfrc(idxyr) .LE. 0.0 ) goto 60 +c +c --- initialize total bmy fuel consumption to zero +c (value is used in evap calculations below) +c + fulbmytot=0. +c +c --- if the model year is greater than the tech year, use the tech +c year for tech type related searches that involve model year --- +c + tchmdyr = min(iyr, itchyr) +c +c --------- Exhaust -------- +c +c --- call routine to find the exhaust technology index for this +c piece of equipment and model year --- +c +c if the model year is greater than the tech year, use the tech year +c + idxtch = fndtch(asccod,hpval,tchmdyr) +c + do 70 i=1,ntech(idxtch) + tecnam(i) = tectyp(idxtch,i) + tecfrc(i) = tchfrc(idxtch,i) + 70 continue +c +c --- call routine to calculate the exhaust emission factors for this +c equipment type and model year --- +c + call emfclc( jerr, emsfac, bsfc, idxunt, adetcf, bdetcf, + & detcap, asccod, tecnam, ntech(idxtch),tecfrc, + & tchmdyr, idxyr, icurec) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- filter retrofit records to those that apply to the model year --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 2, ' ', 0., iyr, ' ' ) ! SCC, HP, and tech type ignored + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c ---- loop over exhaust technology types --- +c + do 80 i=1,ntech(idxtch) +c +c ---- skip over unused technology types +c + if( tchfrc(idxtch,i) .LE. 0. ) goto 80 +c +c --- initialize the bmy array +c + emsbmy=0.0 +c +c --- initialize total bmy fraction retrofitted +c and units retrofitted --- +c + fracretrobmy = 0. + unitsretrobmy = 0. +c +c --- calculate the population for this tech type --- +c + popbmy = popus * modfrc(idxyr) * tchfrc(idxtch,i) +c +c --- filter retrofit records to those that apply to the tech type, +c and calculate the fraction and units retrofitted and retrofit +c emission effects --- +c + if( lrtrftfl ) then + call fndrtrft( jerr, 3, ' ', 0., 0, tecnam(i) ) ! SCC, HP, and model year ignored + if( jerr .NE. ISUCES ) goto 9999 + + call clcrtrft( jerr, fracretrobmy, unitsretrobmy, + & popbmy, asccod, hpval, iyr, tecnam(i) ) + if( jerr .NE. ISUCES ) goto 9999 + unitsretro = unitsretro + unitsretrobmy + endif +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- fill emissions arrays --- +c + call clcems (jerr, emsday, emsbmy, + & idxyr, i, idxtch, detage(idxyr), detcap, + & adetcf, bdetcf, idxunt, tecfrc(i), hpval, denful, + & bsfc(idxyr,i), idxact, adjems, adjtime, emsfac, + & tpltmp, stradj(idxyr), popus, modfrc(idxyr), + & ndays, actadj(idxyr) ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this model year and tech type --- +c + actbmy = actadj(idxyr) * popus * modfrc(idxyr) + & * tplful * tchfrc(idxtch,i) * adjtime + fulbmy = tplful * popus * actadj(idxyr) * modfrc(idxyr) + & * tchfrc(idxtch,i) * (hpval * faclod(idxact) + & * bsfc(idxyr,i) / denful ) * adjtime +c +c --- add to total fuel consumption --- +c + fulcsm = fulcsm + fulbmy +c +c --- update total bmy fuel consumption --- +c (value used in evap calculations below) +c + fulbmytot = fulbmytot + fulbmy +c +c --- call routine to write exhaust by-model-year output --- +c + if( lbmyfl ) then + call wrtbmy(jerr,fipus,subcur,asccod,hplev, + & tecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & faclod(idxact),hpval,fracretrobmy, + & unitsretrobmy,1) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,tecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next exhaust technology type --- +c + 80 continue +c +c --- sum population, activity and starts --- +c + poptot = poptot + popus * modfrc(idxyr) + acttot = acttot + actadj(idxyr) * popus + & * modfrc(idxyr) * tplful * adjtime + strtot = strtot + stradj(idxyr) * popus + & * modfrc(idxyr) * tplful * adjtime +c +c --------- Evap -------- +c +c (Must loop through evap calculations for non-gas equipment since +c spillage occurs for all fuels.) +c +c --- call routine to find the evap technology index for this piece +c of equipment and model year (model year limited by tech year) --- +c + idxevtch = fndevtch(asccod,hpval,tchmdyr) +c + do i = 1, nevtech(idxevtch) +c + evtecnam(i) = evtectyp(idxevtch,i) + evtecfrc(i) = evtchfrc(idxevtch,i) +c +c --- set up refueling, hose and tank data --- +c + if ( lfacfl(IDXSPL) ) then + idxall = fndrfm( asccod, hpval, TECDEF ) + j=IDXSPL-IDXDIU+2-3 + tname='E'//evtecnam(i)(j:j) + idxref = fndrfm( asccod, hpval, tname ) + if ( idxref .EQ. 0 ) idxref = idxall + if ( idxref .GT. 0 ) then + rfmode(i) = modspl(idxref) + if ( untspl(idxref) .EQ. GALLON ) then + tank(i) = volspl(idxref) + elseif ( untspl(idxref) .EQ. GALHP ) then + tank(i) = MIN( volspl(idxref)*hpval, TNKMAX ) + endif + tfull(i) = tnkful(idxref) + tmetal(i) = tnkmtl(idxref) + hlen(i) = hoslen(idxref) + hdia(i) = hosdia(idxref) + hmetal(i) = hosmtl(idxref) + hsstart(i)= hssph(idxref) + nlen(i) = ncklen(idxref) + ndia(i) = nckdia(idxref) + slen(i) = srlen(idxref) + sdia(i) = srdia(idxref) + vlen(i) = vntlen(idxref) + vdia(i) = vntdia(idxref) + do j=1,5 + diufrac(j,i)=diufrc(j,idxref) + end do + tnke10fac(i) = tnke10(idxref) + hose10fac(i) = hose10(idxref) + ncke10fac(i) = ncke10(idxref) + sre10fac(i) = sre10(idxref) + vnte10fac(i) = vnte10(idxref) + else + rfmode(i) = ' ' + tank(i) = -9. + write(IOWMSG,'(/,1X,2A,F6.1,2(1X,A))',ERR=9999) + & 'WARNING: No Spillage data found for: ', + & asccod, hpval, evtecnam(i),tname + call chkwrn(jerr,IDXWEM) + if( jerr .NE. ISUCES ) goto 9999 + endif + endif +c + end do +c +c --- call routine to calculate the evap emission factors for this +c equipment type and model year --- +c + call evemfclc( jerr, evemsfac, idxevunt, aevdetcf, bevdetcf, + & evdetcap, asccod, evtecnam, nevtech(idxevtch), + & evtecfrc, tchmdyr, idxyr, icurec ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- loop over evap technology types --- +c + do 90 i=1,nevtech(idxevtch) +c +c --- skip over unused technology types +c + if( evtchfrc(idxevtch,i) .LE. 0. ) goto 90 +c +c --- initialize the bmy array +c + emsbmy = 0.0 +c +c --- set the local variable for temporal adjustment factor --- +c + if( iactun(idxact) .EQ. IDXHRY + & .OR. iactun(idxact) .EQ. IDXGLY ) then + tpltmp = tplfac + else if( iactun(idxact) .EQ. IDXHRD + & .OR. iactun(idxact) .EQ. IDXGLD ) then + tpltmp = 1. + endif +c +c --- estimate the fuel used by this technology and model year +c + fulbmy = fulbmytot * evtecfrc(i) +c +c --- fill emissions arrays --- +c + call clcevems (jerr, asccod, emsday, emsbmy, + & idxyr, i, idxevtch, detage(idxyr), evdetcap, + & aevdetcf, bevdetcf, idxevunt, evtecfrc(i), hpval, + & adjems, adjtime, evemsfac, + & tpltmp, stradj(idxyr), popus, modfrc(idxyr), + & ndays, tank(i), actadj(idxyr), rfmode(i), fulbmy, + & tfull(i), tmetal(i), hlen(i), hdia(i), hmetal(i), + & nlen(i), ndia(i), slen(i), sdia(i), vlen(i), + & vdia(i), hsstart(i), diufrac, + & tnke10fac(i), hose10fac(i), ncke10fac(i), + & sre10fac(i), vnte10fac(i), fipus ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the contribution from this tech type --- +c + popbmy = popus * modfrc(idxyr) * evtchfrc(idxevtch,i) + actbmy = actadj(idxyr) * popus * modfrc(idxyr) + & * tplful * evtchfrc(idxevtch,i) * adjtime +c +c --- call routine to write evap by-model-year output --- +c + if ( levbmyfl ) then +c pass RMISS for load factor, HP average, fraction +c retrofitted, and units retrofitted, as these do not +c apply to evap by-model-year output + call wrtbmy(jerr,fipus,subcur,asccod,hplev, + & evtecnam(i),iyr,popbmy,emsbmy,fulbmy,actbmy, + & RMISS,RMISS,RMISS,RMISS,2) + if( jerr .NE. ISUCES ) goto 9999 + endif +c +c --- call routine to add to totals for SI report --- +c + if( lsifl ) then + call sitot(jerr,evtecnam(i),popbmy,actbmy,fulbmy,emsbmy) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + endif +c +c --- next evap technology type --- +c + 90 continue +c +c --- sum population, activity and starts --- +c + evpoptot = evpoptot + popus * modfrc(idxyr) + evacttot = evacttot + actadj(idxyr) * popus + & * modfrc(idxyr) * tplful * adjtime + evstrtot = evstrtot + stradj(idxyr) * popus + & * modfrc(idxyr) * tplful * adjtime +c +c --- next model year --- +c + 60 continue +c +c************************************************************ +c NOTE: Fix to alleviate some confusion about fuel +c consumption in the reports. LPG and CNG fuel +c consumption means something different. +c CNG is currently CUBIC FEET not Gallons due to DENCNG. +c************************************************************ +c +cc if( ifuel .EQ. IDXLPG .OR. ifuel .EQ. IDXCNG ) fulcsm = 0. +c +c --- calculate the fraction retrofitted --- +c + fracretro = unitsretro / poptot +c +c --- call routine to write the output to the data file --- +c + call wrtdat(jerr,fipus,subcur,asccod,hplev,poptot,acttot, + & fulcsm,faclod(idxact),hpval,fracretro,unitsretro,emsday) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- return to the calling routine --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWSTD,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipus, asccod,hprang(1,icurec),hprang(2,icurec) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find ', + & 'match in growth indicator cross reference for: ' + write(IOWMSG,'(10X,A,/,10X,A5,3X,A10,6X,F6.1,2X,F6.1)',ERR=9999) + & 'County SCC HP range', + & fipus, asccod,hprang(1,icurec),hprang(2,icurec) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWSTD,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Could not find the ', + & '/GROWTH FILES/ packet of options file.' + write(IOWMSG,'(9X,2A)',ERR=9999) 'This packet is required ', + & 'for future year projections or backcasting. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(/,1X,A,/,10X,A,6X,A,8X,A,11X,A,/,10X,A,4X,A,4X,A10,2X, + & F6.1,1X,F6.1) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/rdact.f b/NONROAD/NR08a/SOURCE/rdact.f new file mode 100644 index 0000000..ba55f13 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdact.f @@ -0,0 +1,434 @@ +C**** RDACT +c + subroutine rdact( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the activity file and stores the data in common +c block to be used by the EPA Nonroad program +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 02/10/00 mjimenez removed tank volume, file format changed +c 10/31/01 charvey add lftjst to agenam reading +c 12/11/01 charvey finishes fix for multiple alt activity inputs +c 05/20/04 --dfk-- added evap tech type input +c 04/05/05 --cimulus-- default percent of new activity to 100.0 +c and allow up to MXUSE values instead of +c MXUSE - 1 +c 05/18/05 --cimulus-- pass true for new chkasc parameter +c 07/11/05 --cimulus-- reverted back to a single technology type +c 07/13/05 --cimulus-- tech type is no longer used, but the files +c will still contain the tech-type column, +c so just skip over those characters +c 07/20/05 --cimulus-- commented variable that was only used +c in commented code +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdact.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c chkasc L returns true if SCC code is needed for current run +c + integer*4 strmin + logical*4 chkasc +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*20 keywrd, keyin + character*40 eqptmp + character*10 asctmp, unitmp, acttmp, subtmp, agetmp +c character*10 tectmp + character*10 tmpstr(MXAGE) + integer*4 idigit, iend, irec, i, jerr, idxtmp + integer*4 ncount, ibeg, j + real*4 hpcmin, hpcmax, lodtmp +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + nactrc = 0 +c +c --- open the file ---- +c + open(IORACT,file=actfl,ERR=7006,status='UNKNOWN') + rewind(IORACT) +c +c ---- find the /ACTIVITY/ keyword ---- +c + keywrd = '/ACTIVITY/' + call fndkey( jerr, IORACT, keywrd ) + if( jerr .NE. ISUCES ) goto 7004 +c +c --- read a record as a character string --- +c + 111 continue + read(IORACT,8000,ERR=7000,END=7005) line + call spinit() + irec = irec + 1 +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- make sure the SCC code is needed --- +c + asctmp = line(1:10) + if( .NOT. chkasc( asctmp, .TRUE. ) ) goto 111 +c +c --- parse the character string ---- +c + eqptmp = line(12:51) + subtmp = line(52:56) +c tech type is no longer used, but the files will still contain +c the tech-type column, so just skip over those characters +c tectmp = line(57:66) + read(line(67:71),'(F5.0)',ERR=7001) hpcmin + read(line(72:76),'(F5.0)',ERR=7001) hpcmax + read(line(77:81),'(F5.0)',ERR=7001) lodtmp +cc tank volume removed from activity read(line(82:86),'(F5.0)',ERR=7001) tnktmp + call lftjst( subtmp ) + call low2up( subtmp ) +c tech type is no longer used, but the files will still contain +c the tech-type column, so just skip over those characters +c call lftjst( tectmp ) +c call low2up( tectmp ) +c +c --- check the units string --- +c + unitmp = line(87:96) + call lftjst( unitmp ) + call low2up( unitmp ) + if( (unitmp .EQ. KEYHRD .OR. unitmp .EQ. KEYGLD) .AND. + & ismtyp .NE. IDXTYP) goto 7002 + if( unitmp .EQ. KEYHRY ) then + idxtmp = IDXHRY + else if( unitmp .EQ. KEYHRD ) then + idxtmp = IDXHRD + else if( unitmp .EQ. KEYGLY ) then + idxtmp = IDXGLD + else if( unitmp .EQ. KEYGLD ) then + idxtmp = IDXGLD + else + goto 7007 + endif +c +c --- get activity value --- +c + acttmp = ' ' + idigit = 1 + iend = 106 + do 10 i=97,iend + if(line(i:i) .NE. ',' .AND. line(i:i) .NE. ' ') then + acttmp(idigit:idigit) = line(i:i) + idigit = idigit + 1 + endif + 10 continue + call rgtjst( acttmp ) +c +c --- get activity vs age curve identifier --- +c + agetmp = line(107:116) + call lftjst( agetmp ) + call low2up( agetmp ) +c +c --- get starts value ---- +c +c strtmp = ' ' +c idigit = 1 +c iend = 106 +c do 20 i=97,iend +c if(line(i:i) .NE. ',' ) then +c strtmp(idigit:idigit) = line(i:i) +c idigit = idigit + 1 +c endif +c 20 continue +c call rgtjst( strtmp ) +c +c --- put data in common arrays --- +c + nactrc = nactrc + 1 + if( nactrc .GT. MXACTR ) goto 7003 + ascact(nactrc) = asctmp + subact(nactrc) = subtmp +c tech type is no longer used, but the files will still contain +c the tech-type column, so just skip over those characters +c tecact(nactrc) = tectmp + hpcact(1,nactrc) = hpcmin + hpcact(2,nactrc) = hpcmax + faclod(nactrc) = lodtmp + iactun(nactrc) = idxtmp +c removed volume from activity file tnkvol(nactrc) = tnktmp + read(acttmp,'(F10.0)',ERR=7001) actlev(nactrc) +c read(strtmp,'(F15.0)',ERR=7001) starts(nactrc) + starts(nactrc) = 0. + actage(nactrc) = agetmp +c +c --- get next record --- +c + goto 111 +c +c --- read and store the %useful life vs % of new activity data --- +c + 222 continue +c +c --- initialize the new % activity values --- +c + ncount = 0 + nagenm = 0 +c + do 30 j=1,MXUSE + agebin(j) = 2.5 + do 40 i=1,MXAGE + agepct(i,j) = 100.0 ! any bin values beyond end of activity curve from file are all new activity + 40 continue + 30 continue +c +c --- call routine to find the /AGE ADJUSTMENT/ keyword ---- +c + keywrd = '/AGE ADJUSTMENT/' + call fndkey(jerr, IORACT, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 444 + endif + if( jerr .NE. ISUCES ) goto 7008 +c +c --- read the labels --- +c + read(IORACT,8000,ERR=7009,END=444) line + do 50 i=1,MXAGE + ibeg = (i-1)*10 + 1 + if( line(ibeg:ibeg+9) .NE. ' ' ) then + nagenm = nagenm + 1 + agenam(nagenm) = line(ibeg:ibeg+9) + call lftjst( agenam(nagenm) ) + call low2up( agenam(nagenm) ) + endif + 50 continue +c +c --- read a record as a character string --- +c + 333 continue + read(IORACT,8000,ERR=7009,END=444) line + call spinit() + irec = irec + 1 +c +c --- search for the end of the packet --- +c + keyin = line(1:10) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 444 +c +c --- increment record count and finish if gone past maximum --- +c + ncount = ncount + 1 + if( ncount .GT. MXUSE ) goto 444 +c +c --- read the data and store it in common arrays --- +c + read(line,8001,ERR=7010) agebin(ncount), + & (tmpstr(i),i=1,nagenm) +ccc +cc write(IOWMSG,'(1X,I3,1X,I3,1X,3A)',ERR=9999) +cc & ncount,i,tmpstr(1),tmpstr(2),tmpstr(3) +ccc + do 60 i=1,nagenm + if( tmpstr(i) .NE. ' ' ) then + read(tmpstr(i),'(F10.0)',ERR=7010) agepct(i,ncount) + else + agepct(i,ncount) = 100.0 + endif +ccc +cc write(IOWMSG,'(1X,I3,A,I2,1X,2A,F8.2,1X,F8.2)',ERR=9999) +cc & ncount,' agenam ',i,agenam(i),':', +cc & agebin(ncount),agepct(i,ncount) +ccc + 60 continue + call spinit() +c +c --- make sure the file is ordered correctly --- +c + if( ncount .GT. 1 ) then + if( agebin(ncount) .LT. agebin(ncount-1) ) goto 7011 + endif +c +c --- read the next record --- +c + goto 333 +c +c --- finished reading file, close it and return --- +c + 444 continue + close(IORACT) + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading activity file: ',actfl(:strmin(actfl)), + & ' at record: ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading activity file: ',actfl(:strmin(actfl)), + & ' at record: ',irec + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A,I6,/,9X,A,/,A)',ERR=9999) + & 'ERROR: Reading activity file: ', + & actfl(:strmin(actfl)),' at record: ',irec, + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,I6,A,/,A)',ERR=9999) + & 'ERROR: Reading activity file: ', + & actfl(:strmin(actfl)),' at record: ',irec, + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Invalid units type --> ',line(87:96), + & ' <-- found in activity file: ',actfl(:strmin(actfl)) + write(IOWSTD,'(9X,4A)',ERR=9999) 'Cannot have daily units when ', + & 'doing a ',SUMTOT,' simulation.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Invalid units type --> ',line(87:96), + & ' <-- found in activity file: ',actfl(:strmin(actfl)) + write(IOWMSG,'(9X,4A)',ERR=9999) 'Cannot have daily units when ', + & 'doing a ',SUMTOT,' simulation.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Number of ', + & 'records in activity file ',actfl(:strmin(actfl)), + & ' exceeds max: ',MXACTR + write(IOWMSG,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Number of ', + & 'records in activity file ',actfl(:strmin(actfl)), + & ' exceeds max: ',MXACTR + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of activity data file ', + & actfl(:strmin(actfl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of activity data file ', + & actfl(:strmin(actfl)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'activity data file ',actfl(:strmin(actfl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'activity data file ',actfl(:strmin(actfl)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & actfl(:strmin(actfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & actfl(:strmin(actfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A,5X,A)',ERR=9999) + & 'ERROR: Invalid units type --> ',line(87:96), + & ' <-- specified in activity file.', + & 'Source: ',asctmp,eqptmp + write(IOWMSG,'(/,1X,3A,/,9X,2A,5X,A)',ERR=9999) + & 'ERROR: Invalid units type --> ',line(87:96), + & ' <-- specified in activity file.', + & 'Source: ',asctmp,eqptmp + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Reading activity file: ', actfl(:strmin(actfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Reading activity file: ', actfl(:strmin(actfl)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of activity file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of activity file.' + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of activity file.', + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of activity file.', + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,3A,/,9X,A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & ' packet','of activity file is not ordered correctly.' + write(IOWMSG,'(/,1X,3A,/,9X,A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & ' packet','of activity file is not ordered correctly.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(F10.0,10A10) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdalo.f b/NONROAD/NR08a/SOURCE/rdalo.f new file mode 100644 index 0000000..3b682c3 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdalo.f @@ -0,0 +1,278 @@ +C**** RDALO +c + subroutine rdalo( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the regression coefficients for the spatial allocation data +c to be used by the EPA nonroad model. Since the data is not region +c dependent, it is read one time and stored in global arrays. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 05/18/05 --cimulus-- pass true for new chkasc parameter +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdalo.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of string in array of strings +c chkasc L returns true if SCC code is needed for current run +c + integer*4 strmin + integer*4 fndchr + logical*4 chkasc +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*20 keywrd, keyin + character*10 asctmp, indtmp(MXCOEF) + integer*4 jerr, irec, istr, idxunq, i + real*4 coftmp(MXCOEF), sumcoef +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + nalorc = 0 +c +c --- open the file --- +c + open(IORALO,file=alofl,ERR=7007,status='UNKNOWN') + rewind(IORALO) +c +c --- call routine to find the /ALLOC XREF/ keyword --- +c + keywrd = '/ALLOC XREF/' + call fndkey( jerr, IORALO, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + read(IORALO,8000,ERR=7001,END=7002) line + irec = irec + 1 + call spinit() +c +c --- check for /END/ keyword --- +c + keyin = line(:20) + call low2up( keyin ) + call lftjst( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- check to make sure this SCC will need to be used +c (could be a global code), if not skip it and the next +c line ---- +c + asctmp = line(1:10) + if( .NOT. chkasc( asctmp, .TRUE. ) ) then + read(IORALO,8000,ERR=7001,END=7002) line + goto 111 + endif +c +c --- parse the line and load all of the data ---- +c + istr = 1 + sumcoef = 0. + do 10 i=1,MXCOEF + istr = istr + 10 + if( line(istr:istr+9 ) .EQ. ' ' ) goto 333 + read(line(istr:istr+9),'(F10.0)',ERR=7003) coftmp(i) + sumcoef = sumcoef + coftmp(i) + 10 continue +c +c ---- check to make sure the coefficients add to 1 ---- +c + 333 continue + if ( ABS(sumcoef-1.0) .GT. 0.001 ) goto 7008 +c +c --- read the next line which should be the same SCC but has +c the indicator codes --- +c + read(IORALO,8000,ERR=7001,END=7002) line + irec = irec + 1 +c +c --- make sure the SCC code is the same ---- +c + if( line(1:10) .NE. asctmp ) goto 7004 +c +c --- get the indicator codes and left justify --- +c + istr = 1 + do 20 i=1,MXCOEF + istr = istr + 10 + indtmp(i) = line(istr:istr+9) + call lftjst( indtmp(i) ) + 20 continue +c +c --- load the data into global arrays ---- +c + nalorc = nalorc + 1 + if( nalorc .GT. MXALO ) goto 7005 + ascalo(nalorc) = asctmp + do 30 i=1,MXCOEF + coeffs(nalorc,i) = coftmp(i) + indcod(nalorc,i) = indtmp(i)(1:3) +c +c --- add codes to unique list of codes --- +c + idxunq = fndchr( indtmp(i)(1:3), 3, alocod, nalocd ) + if( idxunq .LE. 0 ) then + nalocd = nalocd + 1 + if( nalocd .GT. MXCODE ) goto 7006 + alocod(nalocd) = indtmp(i)(1:3) + endif + 30 continue +c +c --- get the next record --- +c + goto 111 +c +c --- finished reading file, close it and return --- +c + 222 continue + close(IORALO) + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of allocation file ', + & alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of allocation file ', + & alofl(:strmin(alofl)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,4A,I5)',ERR=9999) 'ERROR: Reading file ', + & 'containing allocation regression coefficients ', + & alofl(:strmin(alofl)),' at record ',irec + write(IOWMSG,'(/,1X,4A,I5)',ERR=9999) 'ERROR: Reading file ', + & 'containing allocation regression coefficients ', + & alofl(:strmin(alofl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'allocation file ',alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'allocation file ',alofl(:strmin(alofl)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,A,/,9X,3A,I5,/,9X,2A)',ERR=9999) + & 'ERROR: Reading allocation regression coefficients ', + & 'in file ', alofl(:strmin(alofl)),' at record ',irec, + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,/,9X,3A,I5,/,9X,2A)',ERR=9999) + & 'ERROR: Reading allocation regression coefficients ', + & 'in file ', alofl(:strmin(alofl)),' at record ',irec, + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,A,/,9X,2A,/,9X,4A)',ERR=9999) + & 'ERROR: Mismatch of SCC codes', + & 'in file containing regression coefficients ', + & alofl(:strmin(alofl)),'Codes: ',asctmp,' ',line(1:10) + write(IOWMSG,'(/,1X,A,/,9X,2A,/,9X,4A)',ERR=9999) + & 'ERROR: Mismatch of SCC codes', + & 'in file containing regression coefficients ', + & alofl(:strmin(alofl)),'Codes: ',asctmp,' ',line(1:10) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,A,I6,/,9X,2A)',ERR=9999) + & 'ERROR: Number of SCC codes exceeds max: ', MXALO, + & 'in spatial allocation cross reference file: ', + & alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,A,I6,/,9X,2A)',ERR=9999) + & 'ERROR: Number of SCC codes exceeds max: ', MXALO, + & 'in spatial allocation cross reference file: ', + & alofl(:strmin(alofl)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,A,I6,/,9X,2A)',ERR=9999) + & 'ERROR: Number of unique indicator codes exceeds max ', + & MXCODE,'in file containing regression coefficents ', + & alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,A,I6,/,9X,2A)',ERR=9999) + & 'ERROR: Number of unique indicator codes exceeds max ', + & MXCODE,'in file containing regression coefficents ', + & alofl(:strmin(alofl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & alofl(:strmin(alofl)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Spatial indicator ', + & 'coefficients for SCC code: ', asctmp, + & ' do not add to 1.' + write(IOWSTD,'(10X,2A)',ERR=9999) 'Check file: ', + & alofl(:strmin(alofl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Spatial indicator ', + & 'coefficients for SCC code: ', asctmp, + & ' do not add to 1.' + write(IOWMSG,'(10X,2A)',ERR=9999) 'Check file: ', + & alofl(:strmin(alofl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdalt.f b/NONROAD/NR08a/SOURCE/rdalt.f new file mode 100644 index 0000000..7842882 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdalt.f @@ -0,0 +1,202 @@ +C**** RDALT +c + subroutine rdalt( ierr, iounit, fname ) +c +c----------------------------------------------------------------------- +c +c reads the alternate scrappage curves and stores the data in +c common to be used by the EPA Nonroad model. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c iounit I unit number of file to read +c fname C name of file to be read +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/25/97 --gwilson-- original development +c 04/05/05 --cimulus-- default percent scrapped to 100.0 and +c allow up to MXSCRP values instead of +c MXSCRP - 1 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(MXSTR) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*20 keywrd, keytmp + character*10 tmpstr(MXALT) + integer*4 irec, jerr, ncount, ibeg, i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + ncount = 0 + naltnm = 0 +c +c --- initialize the scrappage values --- +c + do 10 j=1,MXSCRP + altbin(j) = 2.5 + do 20 i=1,MXALT + altpct(i,j) = 100.0 ! any bin values beyond end of scrappage curve from file are fully scrapped + 20 continue + 10 continue +c +c --- call routine to find the /ALTERNATE SCRAPPAGE/ keyword ---- +c + keywrd = '/ALTERNATE SCRAPPAGE' + call fndkey(jerr, iounit, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 9999 + endif + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read the labels --- +c + read(iounit,8000,ERR=7001,END=222) line + do 30 i=1,MXALT + ibeg = (i-1)*10 + 1 + if( line(ibeg:ibeg+9) .NE. ' ' ) then + naltnm = naltnm + 1 + altnam(naltnm) = line(ibeg:ibeg+9) + call low2up( altnam(naltnm) ) + endif + 30 continue +c +c --- read a record as a character string --- +c + 111 continue + read(iounit,8000,ERR=7001,END=222) line + call spinit() + irec = irec + 1 +c +c --- search for the end of the packet --- +c + keytmp = line(1:10) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) goto 222 +c +c --- increment record count and finish if gone past maximum --- +c + ncount = ncount + 1 + if( ncount .GT. MXSCRP ) goto 222 +c +c --- read the data and store it in common arrays --- +c + read(line,8001,ERR=7002) altbin(ncount), + & (tmpstr(i),i=1,naltnm) + do 40 i=1,naltnm + if( tmpstr(i) .NE. ' ' ) then + read(tmpstr,'(F10.0)',ERR=7002) altpct(i,ncount) + else + altpct(i,ncount) = 100.0 + endif + 40 continue + call spinit() +c +c --- make sure the file is ordered correctly --- +c + if( ncount .GT. 1 ) then + if( altbin(ncount) .LT. altbin(ncount-1) ) goto 7003 + endif +c +c --- read the next record --- +c + goto 111 +c +c --- finished reading file --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,9000,ERR=9999) 'ERROR: Reading growth file: ', + & fname(:strmin(fname)) + write(IOWMSG,9000,ERR=9999) 'ERROR: Reading growth file: ', + & fname(:strmin(fname)) + goto 9999 +c + 7001 continue + write(IOWSTD,9000,ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),'/ packet of growth file.' + write(IOWMSG,9000,ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),'/ packet of growth file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),'/ packet of growth file.', + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),'/ packet of growth file.', + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & '/ packet','of growth file is not ordered correctly.' + write(IOWMSG,'(/,1X,3A,/,9X,A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & '/ packet','of growth file is not ordered correctly.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(F10.0,10A10) + 9000 format(/,1X,3A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdbsfc.f b/NONROAD/NR08a/SOURCE/rdbsfc.f new file mode 100644 index 0000000..d19ae8b --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdbsfc.f @@ -0,0 +1,109 @@ +C**** RDBSFC.F +c + subroutine rdbsfc( ierr ) +c +c----------------------------------------------------------------------- +c +c Description: +c This routine reads the BSFC files. This file is in the +c same format as the emission factors file. +c Arguments: +c Outputs +c ierr I error code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 08/10/97 --gwilson-- original development (taken from rdefls.f) +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) fname + integer*4 jerr + logical*4 lcheck +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + ierr = IFAIL +c +c --- open emission factor files ---- +c + fname = bsffl + inquire(file=bsffl,exist=lcheck) + if( .NOT. lcheck ) goto 7000 + open(unit=IORBSF,file=bsffl,ERR=7001,status='UNKNOWN') + rewind(IORBSF) +c +c --- call routine to get all exhaust factors --- +c + call rdemfc( jerr, ascbsf, tecbsf, bsfpcb, bsfpce, + & ibsfun, iyrbsf, bsffac, 0, nbsffc, + & IORBSF, bsffl, 0, 'BSFC') + if( jerr .NE. ISUCES ) goto 9999 +c +c --- set error code and exit --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Input file not found ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Input file not found ', fname(:strmin(fname)) + goto 9999 +c +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fname(:strmin(fname)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(1X,5A) +c +c----------------------------------------------------------------------- +c Exit point: +c----------------------------------------------------------------------- +c + 9999 continue + end diff --git a/NONROAD/NR08a/SOURCE/rdday.f b/NONROAD/NR08a/SOURCE/rdday.f new file mode 100644 index 0000000..b049b01 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdday.f @@ -0,0 +1,255 @@ +C**** rdday +c + subroutine rdday( ierr, iounit, fname ) +c +c----------------------------------------------------------------------- +c +c reads the daily temperatures (max, min, avg) and fuel RVP values +c and stores the data in common to be used by the EPA Nonroad model. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c iounit I unit number of file to read +c fname C name of file to be read +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/15/04 --dfk-- original development +c 06/25/04 --dfk-- added daily RVP +c 09/22/04 --dfk-- added MXDAYS and MXFIPS +c 01/21/05 --dfk-- added trap to catch files with no data +c 02/03/05 --dfk-- changed code so that all years have 365 days +c (data for Feb 29 will be ignored) +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(MXSTR) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(3*MXSTR) line + character*20 keywrd, keytmp + character*4 typtmp + integer*4 irec, jerr, ncount, i + real*4 valtmp(31) + integer*4 numday(12) + integer*4 fiptmp, jday, jtype, month +c + data numday/0,31,59,90,120,151,181,212,243,273,304,334/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + ncount = 0 +c +c --- initialize the temperature and RVP values to those input +c in the /OPTIONS/ packet --- +c + do fiptmp=0,MXFIPS + do i=1,MXDAYS + daytmp(i,1,fiptmp) = tempmx + daytmp(i,2,fiptmp) = tempmn + daytmp(i,3,fiptmp) = amtemp + dayrvp(i, fiptmp) = fulrvp + end do + end do +c +c --- call routine to find the /DAYTEMPRVP/ keyword ---- +c + keywrd = '/DAYTEMPRVP/' + call fndkey(jerr, iounit, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 9999 + endif + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + read(iounit,8000,ERR=7001,END=222) line + call spinit() + irec = irec + 1 +c +c --- search for the end of the packet --- +c + keytmp = line(1:10) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) goto 222 +c +c --- determine fips region --- +c + read(line(1:2),*,ERR=7002) fiptmp + if(fiptmp.lt.0.or.fiptmp.gt.MXFIPS) goto 7002 +c +c --- determine type of data (tmax, tmin, tavg or RVP) +c + typtmp=line(7:10) + call lftjst( typtmp ) + call low2up( typtmp ) +c + if(typtmp.eq.'TMAX') then + jtype=1 + else if (typtmp.eq.'TMIN') then + jtype=2 + else if (typtmp.eq.'TAVG') then + jtype=3 + else if (typtmp.eq.'RVP') then + jtype=4 + else + goto 7002 + end if +c +c --- determine month --- +c + read(line(12:13),*,ERR=7002) month +c +c --- read data values --- +c + read(line(14:199),*,ERR=7002) valtmp +c +c --- place data into arrays --- +c --- Note: per EPA, all years have 365 days. This code ensures +c that Feb 29, even if available in the file, will be ignored. +c + do i=1,31 + if(valtmp(i).le.-99.) cycle + jday=i+numday(month) + if(jtype.le.3) then + daytmp(jday,jtype,fiptmp)=valtmp(i) + else + dayrvp(jday,fiptmp)=valtmp(i) + endif + end do +c + call spinit() +c + ncount = ncount + 1 +c +c --- read the next record --- +c + goto 111 +c +c --- finished reading file --- +c + 222 continue +c +c --- check that some data was read +c + if(ncount.eq.0) goto 7004 +c +c --- validate temperatures (Max>=Min, Max>=Ambient, Min<=Ambient) +c + do fiptmp=0,MXFIPS + do i=1,MXDAYS + if(daytmp(i,1,fiptmp).lt.daytmp(i,2,fiptmp) .or. + * daytmp(i,1,fiptmp).lt.daytmp(i,3,fiptmp) .or. + * daytmp(i,3,fiptmp).lt.daytmp(i,2,fiptmp)) goto 7003 + end do + end do +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + &'ERROR: Reading daily temp/RVP file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + &'ERROR: Reading daily temp/RVP file ',fname(:strmin(fname)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1x,4A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.', + & 'Invalid temperatures found (MaxAmbient).',' Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1x,4A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.', + & 'Invalid temperatures found (MaxAmbient).',' Line read: ',line(:strmin(line)) +c + 7003 continue + write(IOWSTD,'(/,1x,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.', + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1x,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of daily temp/RVP file.', + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + &' packet of daily temp/RVP file contains no data or', + &' incorrect number of values.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + &' packet of daily temp/RVP file contains no data or', + &' incorrect number of values.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + + + + + diff --git a/NONROAD/NR08a/SOURCE/rddetr.f b/NONROAD/NR08a/SOURCE/rddetr.f new file mode 100644 index 0000000..9855ae5 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rddetr.f @@ -0,0 +1,209 @@ +C**** RDDETR +c + subroutine rddetr( ierr, idxpol ) +c +c----------------------------------------------------------------------- +c +c Reads the deterioration factors file and stores the data +c in a common block to be used by the NONROAD program. The +c values in the file are the coefficients to the deterioration +c equation: +c DF = 1 + A * (age)^b +c +c Argument declaration. +c Inputs: +c idxpol I the pollutant index to fill +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/18/96 --jlf-- developed from rdemfc +c 09/20/97 --gwilson-- added the CAP/NOCAP flag +c 04/27/98 --gwilson-- completely reworked for new type of data +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 idxpol +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line + character*(MXSTR) fname + character*20 keywrd, keyin + character*10 tectmp, poltmp + integer*4 iounit, irec, jerr +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + ndtfac(idxpol) = 0 + iounit = IORDAC+idxpol + fname = detfl(idxpol) +c +c ---- find the /DETFAC/ keyword ---- +c + keywrd = '/DETFAC/' + call fndkey( jerr, iounit, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(iounit,8000,ERR=7001,END=7004) line +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- bump up the counter and check for array overflow ---- +c + ndtfac(idxpol) = ndtfac(idxpol) + 1 + if( ndtfac(idxpol) .GT. MXDTFC ) goto 7002 +c +c --- load the data into the arrays --- +c + tectmp = line(1:10) + call lftjst( tectmp ) + call low2up( tectmp ) + tecdet(ndtfac(idxpol),idxpol) = tectmp + read(line(21:30),'(F10.0)',ERR=7003) detavl(ndtfac(idxpol),idxpol) + read(line(31:40),'(F10.0)',ERR=7003) detbvl(ndtfac(idxpol),idxpol) + read(line(41:50),'(F10.0)',ERR=7003) capdet(ndtfac(idxpol),idxpol) + poltmp = line(51:60) + call lftjst( poltmp ) + call low2up( poltmp ) +c +c --- check for the correct pollutant name --- +c + if( poltmp .NE. amspol(idxpol) ) goto 7005 +c +c --- get the next record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), ' packet', + & 'of deterioration factors file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), ' packet', + & 'of deterioration factors file ', + & fname(:strmin(fname)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading deterioration factor file ', + & fname(:strmin(fname)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading deterioration factor file ', + & fname(:strmin(fname)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of deterioration factors exceed max ', + & MXDTFC,'in file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of deterioration factors exceed max ', + & MXDTFC,'in file ', fname(:strmin(fname)) +c + 7003 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading deterioration factor file ', + & fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading deterioration factor file ', + & fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached', + & 'reading deterioration factors file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached', + & 'reading deterioration factors file ',fname(:strmin(fname)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Invalid pollutant ', + & 'name in deterioration file: ',fname(:strmin(fname)) + write(IOWSTD,'(10X,3A,I4)') 'Read pollutant: ', + & poltmp(:strmin(poltmp)),' at record: ',irec + write(IOWSTD,'(10X,2A)') 'Looking for pollutant: ', + & amspol(idxpol)(:strmin(amspol(idxpol))) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Invalid pollutant ', + & 'name in deterioration file: ',fname(:strmin(fname)) + write(IOWMSG,'(10X,3A,I4)') 'Read pollutant: ', + & poltmp(:strmin(poltmp)),' at record: ',irec + write(IOWMSG,'(10X,2A)') 'Looking for pollutant: ', + & amspol(idxpol)(:strmin(amspol(idxpol))) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdefls.f b/NONROAD/NR08a/SOURCE/rdefls.f new file mode 100644 index 0000000..de2f9b8 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdefls.f @@ -0,0 +1,228 @@ +C**** RDEFLS.F +c + subroutine rdefls( ierr ) +c +c----------------------------------------------------------------------- +c +c Description: +c This routine reads the emission factors files for each of +c the pollutants. It accomplishes this by successive calls +c to the RDEMFC and RDDETR routines. +c Arguments: +c Outputs +c ierr I error code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/10/95 --gmw-- original development +c 07/19/96 --jlf-- added deterioration rates and changed so that +c files are opened here to conserve file handles +c 05/11/04 --dfk-- updated to include expanded evap +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) fname + integer*4 idxpol, jerr, i + logical*4 lcheck +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + ierr = IFAIL +c +c --- open emission factor files ---- +c + do 10 idxpol=1,MXPOL + if( lfacfl(idxpol) ) then + fname = facfl(idxpol) + inquire(file=facfl(idxpol),exist=lcheck) + if( .NOT. lcheck ) goto 7007 + open(unit=IORFAC+idxpol,file=facfl(idxpol),ERR=7009, + & status='UNKNOWN') + rewind(IORFAC+idxpol) + endif + 10 continue +c +c --- call routine to get all exhaust factors --- +c + do 20 idxpol=IDXTHC,IDXCRA + do 25 i=1,MXEMFC + exhfac(i,idxpol) = RMISS + 25 continue + if( lfacfl(idxpol) ) then + call rdemfc( jerr, ascexh, tecexh, exhpcb, exhpce, + & iexhun, iyrexh, exhfac, IDXTHC, nexhfc, + & IORFAC+idxpol, facfl(idxpol), idxpol, amspol(idxpol) ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + endif + 20 continue +c +c --- call routine to get all evaporative factors --- +c + do 30 idxpol=IDXDIU,IDXRLS + do 35 i=1,MXEMFC + evpfac(i,idxpol) = RMISS + 35 continue + if( lfacfl(idxpol) ) then + if ( idxpol .EQ. IDXSPL ) then + call rdspil( jerr, + & IORFAC+idxpol, facfl(idxpol) ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + else + call rdevemfc( jerr, ascevp, tecevp, evhpcb, evhpce, + & ievpun, iyrevp, evpfac, IDXTHC, nevpfc, + & IORFAC+idxpol, facfl(idxpol), idxpol, amspol(idxpol) ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + endif + endif + 30 continue +c +c --- make sure that HOT SOAK units are grams/start ---- +c + do 40 i=1,nevpfc(IDXSOK) + if( evpfac(i,IDXSOK) .GT. 0 ) then + if( ievpun(i,IDXSOK) .NE. IDXGST ) goto 7000 + endif + 40 continue +cgmwc +cgmwc --- call routine to get all start exhaust factors --- +cgmwc +cgmw do 50 idxpol=IDSTHC,IDSPM +cgmw do 55 i=1,MXEMFC +cgmw strfac(i,idxpol) = RMISS +cgmw 55 continue +cgmw if( lfacfl(idxpol) ) then +cgmw call rdemfc( jerr, ascstr, tecstr, sthpcb, sthpce, +cgmw & istrun, iyrstr, strfac, IDSTHC, nstrfc, +cgmw & IORFAC+idxpol, facfl(idxpol), idxpol, amspol(idxpol) ) +cgmw if( jerr .NE. ISUCES ) goto 9999 +cgmw call spinit() +cgmw endif +cgmwc +cgmwc --- make sure that units are grams/start ---- +cgmwc +cgmw do 60 i=1,nstrfc +cgmw if( strfac(i,idxpol) .GT. 0 ) then +cgmw if( istrun(i,idxpol) .NE. IDXGST ) goto 7002 +cgmw endif +cgmw 60 continue +cgmw 50 continue +c +c ---- now close these files and open the deterioration factors files ---- +c + do 70 idxpol=1,MXPOL + if( lfacfl(idxpol) ) close(IORFAC+idxpol) + if( ldetfl(idxpol) ) then + fname = detfl(idxpol) + inquire(file=detfl(idxpol),exist=lcheck) + if( .NOT. lcheck ) goto 7007 + open(unit=IORDAC+idxpol,file=detfl(idxpol),ERR=7009, + & status='UNKNOWN') + rewind(IORDAC+idxpol) + endif + 70 continue +c +c --- call routine to get all deterioration factor data --- +c + do 80 idxpol=1,MXPOL + if( ldetfl(idxpol) ) then + call rddetr( jerr, idxpol ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() + close(IORDAC+idxpol) + endif + 80 continue +c +c --- set error code and exit --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Units code for HOT SOAKS must be G/START', + & 'in emission factors file ', + & facfl(IDXSOK)(:strmin(facfl(IDXSOK))) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Units code for HOT SOAKS must be G/START', + & 'in emission factors file ', + & facfl(IDXSOK)(:strmin(facfl(IDXSOK))) + goto 9999 +c +cgmw 7002 continue +cgmw write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) +cgmw & 'ERROR: Units code must be G/START for ', +cgmw & polnam(idxpol)(:strmin(polnam(idxpol))), +cgmw & 'in emission factors file ', +cgmw & facfl(idxpol)(:strmin(facfl(idxpol))) +cgmw write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) +cgmw & 'ERROR: Units code must be G/START for ', +cgmw & polnam(idxpol)(:strmin(polnam(idxpol))), +cgmw & 'in emission factors file ', +cgmw & facfl(idxpol)(:strmin(facfl(idxpol))) +c + 7007 continue + write(IOWSTD,9003,ERR=9999) 'ERROR: Input file not found ', + & fname(:strmin(fname)) + write(IOWMSG,9003,ERR=9999) 'ERROR: Input file not found ', + & fname(:strmin(fname)) + goto 9999 +c +c + 7009 continue + write(IOWSTD,9003,ERR=9999) 'ERROR: Opening file ', + & fname(:strmin(fname)) + write(IOWMSG,9003,ERR=9999) 'ERROR: Opening file ', + & fname(:strmin(fname)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(1X,5A) + 9003 format(/,1X,A,A,/) +c +c----------------------------------------------------------------------- +c Exit point: +c----------------------------------------------------------------------- +c + 9999 continue + end diff --git a/NONROAD/NR08a/SOURCE/rdemfc.f b/NONROAD/NR08a/SOURCE/rdemfc.f new file mode 100644 index 0000000..0f5e1c2 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdemfc.f @@ -0,0 +1,354 @@ +C**** RDEMFC +c + subroutine rdemfc( ierr, ascar, tecar, arhpcb, arhpce, + & iarhun, iaryr, facar, ifrst, nfacar, + & iounit, fname, idxpol, polin ) +c +c----------------------------------------------------------------------- +c +c reads the exhaust emisisons factors file and stores the data in common +c block to be used by the NONROAD program. +c +c Argument declaration. +c Inputs: +c iounit I unit number of file to read +c fname I file name of file to read +c idxpol I the pollutant index to fill +c polin C pollutant name to use +c Outputs: +c ierr I error flag +c ascar C array of SCC code to fill +c tecar C array of tech id codes to fill +c arhpcb I array of beginning horsepower categories to fill +c arhpce I array of ending horsepower categories to fill +c iarhun I array of units for conversion to fill +c iaryr I array of years to fill +c facar I array of emission factors fo fill +c ifrst I first value of second index for iarhun and facar +c nfacar I number of factors in the arrays +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/95 --djk-- original development +c 03/03/96 --jlf-- fix for crankcase & adding dummy restlos & runloss +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; arhpcb, hptmpb, arhpce, and hptmpe +c values are read from file, rather than +c being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*10 ascar(MXEMFC) + character*10 tecar(MXEMFC) + real*4 arhpcb(MXEMFC) + real*4 arhpce(MXEMFC) + integer*4 iaryr(MXEMFC) + integer*4 ifrst + integer*4 iarhun(MXEMFC,ifrst:*) + real*4 facar(MXEMFC,ifrst:*) + integer*4 iounit + character*(*) fname + integer*4 idxpol + integer*4 nfacar + character*4 polin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c fndchr I returns the index of string in array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line + character*20 keywrd, keyin + character*10 asctmp, untkey(MXEMCV) + character*10 tectmp, tecsav(MXTECH) + character*10 poltmp + integer*4 irec, i, iyrtmp, idxunt, istrt, ntch + integer*4 itch, ifac, iuntmp, jerr + real*4 emftmp(100), hptmpb, hptmpe +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 +c +c --- put units keywords and conversion factors into local arrays --- +c + do 10 i=1,MXEMCV + untkey(i) = 'xxxxxxxxxx' + 10 continue + untkey(IDXGHR) = KEYGHR + untkey(IDXGHP) = KEYGHP + untkey(IDXGAL) = KEYGAL + untkey(IDXTNK) = KEYTNK + untkey(IDXGDY) = KEYGDY + untkey(IDXGST) = KEYGST + untkey(IDXMLT) = KEYMLT +c +c ---- find the /EMSFAC/ keyword ---- +c + keywrd = '/EMSFAC/' + call fndkey( jerr, iounit, keywrd ) + if( jerr .NE. ISUCES ) goto 7007 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(iounit,8000,ERR=7000,END=7008) line + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- if this is a new code, get the tech types --- +c + if( line(6:15) .NE. ' ' ) then + ntch = 0 + asctmp = line(6:15) + read(line(21:25),'(F5.0)',ERR=7004) hptmpb + read(line(26:30),'(F5.0)',ERR=7004) hptmpe + istrt = 35 + 333 continue + tectmp = line(istrt:istrt+9) + if( tectmp .EQ. ' ' ) then + if( iounit .EQ. IORBSF ) then + goto 444 + else + goto 7005 + endif + endif + call lftjst( tectmp ) + call low2up( tectmp ) + if( line(istrt:istrt+9) .EQ. ' ' ) goto 333 + idxunt = fndchr( tectmp, 10, untkey, MXEMCV ) + if( idxunt .GT. 0 ) goto 444 +c +c --- add tech type to array --- +c + ntch = ntch + 1 + if( ntch .GT. MXTECH ) goto 7003 + tecsav(ntch) = tectmp + istrt = istrt + 10 + goto 333 +c +c ---- found the units field, store it and read the pollutant code --- +c + 444 continue + if( idxpol .EQ. IDXCRA .AND. idxunt .NE. IDXMLT ) goto 7009 + iuntmp = idxunt + istrt = istrt + 10 + poltmp = line(istrt:istrt+9) + call lftjst( poltmp ) + call low2up( poltmp ) + if( poltmp .NE. polin ) goto 7006 +c +c ---- line contains emissions factor data ---- +c + else +c +c ---- read the year --- +c + read(line(1:5),'(I5)',ERR=7004) iyrtmp + istrt = 35 +c +c --- read the data --- +c + do 20 itch = 1,ntch + read(line(istrt:istrt+9),'(F10.0)',ERR=7004) emftmp(itch) + istrt = istrt + 10 + 20 continue +c +c --- find the index into arrays for line of data --- +c + + do 30 itch = 1,ntch + do 40 ifac=nfacar,1,-1 + if( ascar(ifac) .EQ. asctmp .AND. + & iaryr(ifac) .EQ. iyrtmp .AND. + & arhpcb(ifac) .EQ. hptmpb .AND. ! floating-point comparison for equality okay; arhpcb and hptmpb values are read from file, rather than being calculated at runtime + & arhpce(ifac) .EQ. hptmpe .AND. ! floating-point comparison for equality okay; arhpce and hptmpe values are read from file, rather than being calculated at runtime + & tecar(ifac) .EQ. tecsav(itch) ) then + facar(ifac,idxpol) = emftmp(itch) + iarhun(ifac,idxpol) = iuntmp + goto 30 + endif + 40 continue +c +c --- not found, add it to list ---- +c + nfacar = nfacar + 1 + if( nfacar .GT. MXEMFC ) goto 7002 + ascar(nfacar) = asctmp + iaryr(nfacar) = iyrtmp + arhpcb(nfacar) = hptmpb + arhpce(nfacar) = hptmpe + tecar(nfacar) = tecsav(itch) + facar(nfacar,idxpol) = emftmp(itch) + iarhun(nfacar,idxpol) = iuntmp + 30 continue + endif +c +c --- get the next record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXEMFC,'in file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXEMFC,'in file ', fname(:strmin(fname)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of technology types exceeds max: ', + & MXTECH, 'for emission factors in file ', + & fname(:strmin(fname)) + write(IOWSTD,'(9X,2A)',ERR=9999) 'Make sure that the units ', + & 'field is included and is in the correct columns.' + write(IOWSTD,'(1X,A,/,A)') 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of technology types exceeds max: ', + & MXTECH, 'for emission factors in file ', + & fname(:strmin(fname)) + write(IOWMSG,'(9X,2A)',ERR=9999) 'Make sure that the units ', + & 'field is included and is in the correct columns.' + write(IOWMSG,'(1X,A,/,A)') 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type or units type', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type or units type', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,2A,/,9X,4A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid pollutant code ', + & poltmp(:strmin(poltmp)),'for ',polin(:strmin(polin)), + & ' emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,4A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid pollutant code ', + & poltmp(:strmin(poltmp)),'for ',polin(:strmin(polin)), + & ' emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Crankcase emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Crankcase emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdevemfc.f b/NONROAD/NR08a/SOURCE/rdevemfc.f new file mode 100644 index 0000000..345e1d5 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdevemfc.f @@ -0,0 +1,383 @@ +C**** RDEVEMFC +c + subroutine rdevemfc( ierr, ascar, tecar, arhpcb, arhpce, + & iarhun, iaryr, facar, ifrst, nfacar, + & iounit, fname, idxpol, polin ) +c +c----------------------------------------------------------------------- +c +c reads the evap emisisons factors file and stores the data in common +c block to be used by the NONROAD program. Since each evap species +c can have its own tech group, each species is treated individually. +c +c Argument declaration. +c Inputs: +c iounit I unit number of file to read +c fname I file name of file to read +c idxpol I the pollutant index to fill +c polin C pollutant name to use +c Outputs: +c ierr I error flag +c ascar C array of SCC code to fill +c tecar C array of tech id codes to fill +c arhpcb I array of beginning horsepower categories to fill +c arhpce I array of ending horsepower categories to fill +c iarhun I array of units for conversion to fill +c iaryr I array of years to fill +c facar I array of emission factors fo fill +c ifrst I first value of second index for iarhun and facar +c nfacar I number of factors in the arrays +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/18/04 --dfk-- original development (from RDEMFC) +c 10/13/04 --dfk-- added code to handle tank/hose permeation +c units of g/m2/day +c 11/16/04 --dfk-- modified to handle 13 character tech names +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; arhpcb, hptmpb, arhpce, and hptmpe +c values are read from file, rather than +c being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 ifrst + character*10 ascar(MXEMFC,ifrst:*) + character*10 tecar(MXEMFC,ifrst:*) + real*4 arhpcb(MXEMFC,ifrst:*) + real*4 arhpce(MXEMFC,ifrst:*) + integer*4 iaryr(MXEMFC,ifrst:*) + integer*4 iarhun(MXEMFC,ifrst:*) + real*4 facar(MXEMFC,ifrst:*) + integer*4 iounit + character*(*) fname + integer*4 idxpol + integer*4 nfacar(ifrst:*) + character*4 polin +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c fndchr I returns the index of string in array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line + character*20 keywrd, keyin + character*10 asctmp, untkey(MXEMCV) + character*10 tectmp, tecsav(MXTECH) + character*10 poltmp + integer*4 irec, i, iyrtmp, idxunt, istrt, ntch + integer*4 itch, ifac, iuntmp, jerr + real*4 emftmp(100), hptmpb, hptmpe +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 +c +c --- put units keywords and conversion factors into local arrays --- +c + do 10 i=1,MXEMCV + untkey(i) = 'xxxxxxxxxx' + 10 continue + untkey(IDXGHR) = KEYGHR + untkey(IDXGHP) = KEYGHP + untkey(IDXGAL) = KEYGAL + untkey(IDXTNK) = KEYTNK + untkey(IDXGDY) = KEYGDY + untkey(IDXGST) = KEYGST + untkey(IDXMLT) = KEYMLT + untkey(IDXGMD) = KEYGMD +c +c ---- find the /EMSFAC/ keyword ---- +c + keywrd = '/EMSFAC/' + call fndkey( jerr, iounit, keywrd ) + if( jerr .NE. ISUCES ) goto 7007 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(iounit,8000,ERR=7000,END=7008) line + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- if this is a new code, get the tech types --- +c + if( line(6:15) .NE. ' ' ) then + ntch = 0 + asctmp = line(6:15) + read(line(21:25),'(F5.0)',ERR=7004) hptmpb + read(line(26:30),'(F5.0)',ERR=7004) hptmpe + istrt = 35 + 333 continue + tectmp = line(istrt:istrt+9) + if( tectmp .EQ. ' ' ) then + if( iounit .EQ. IORBSF ) then + goto 444 + else + goto 7005 + endif + endif + call lftjst( tectmp ) + call low2up( tectmp ) + if( line(istrt:istrt+9) .EQ. ' ' ) goto 333 + idxunt = fndchr( tectmp, 10, untkey, MXEMCV ) + if( idxunt .GT. 0 ) goto 444 +c +c --- add tech type to array --- +c + ntch = ntch + 1 + if( ntch .GT. MXTECH ) goto 7003 + tecsav(ntch) = tectmp + istrt = istrt + 10 + goto 333 +c +c ---- found the units field, store it and read the pollutant code --- +c + 444 continue + if( idxpol .EQ. IDXDIU .AND. idxunt .NE. IDXMLT ) goto 7009 + if( idxpol .EQ. IDXTKP .AND. idxunt .NE. IDXGMD ) goto 7010 + if( idxpol .GE. IDXHOS .AND. idxpol .LE. IDXVNT + & .AND. idxunt .NE. IDXGMD ) goto 7011 + iuntmp = idxunt + istrt = istrt + 10 + poltmp = line(istrt:istrt+9) + call lftjst( poltmp ) + call low2up( poltmp ) + if( poltmp .NE. polin ) goto 7006 +c +c ---- line contains emissions factor data ---- +c + else +c +c ---- read the year --- +c + read(line(1:5),'(I5)',ERR=7004) iyrtmp + istrt = 35 +c +c --- read the data --- +c + do 20 itch = 1,ntch + read(line(istrt:istrt+9),'(F10.0)',ERR=7004) emftmp(itch) + istrt = istrt + 10 + 20 continue +c +c --- find the index into arrays for line of data --- +c + + do 30 itch = 1,ntch + do 40 ifac=1,nfacar(idxpol) + if( ascar(ifac,idxpol) .EQ. asctmp .AND. + & iaryr(ifac,idxpol) .EQ. iyrtmp .AND. + & arhpcb(ifac,idxpol) .EQ. hptmpb .AND. ! floating-point comparison for equality okay; arhpcb and hptmpb values are read from file, rather than being calculated at runtime + & arhpce(ifac,idxpol) .EQ. hptmpe .AND. ! floating-point comparison for equality okay; arhpce and hptmpe values are read from file, rather than being calculated at runtime + & tecar(ifac,idxpol) .EQ. tecsav(itch) ) then + facar(ifac,idxpol) = emftmp(itch) + iarhun(ifac,idxpol) = iuntmp + goto 30 + endif + 40 continue +c +c --- not found, add it to list ---- +c + nfacar(idxpol) = nfacar(idxpol) + 1 + if( nfacar(idxpol) .GT. MXEMFC ) goto 7002 + ascar(nfacar(idxpol),idxpol) = asctmp + iaryr(nfacar(idxpol),idxpol) = iyrtmp + arhpcb(nfacar(idxpol),idxpol) = hptmpb + arhpce(nfacar(idxpol),idxpol) = hptmpe + tecar(nfacar(idxpol),idxpol) = tecsav(itch) + facar(nfacar(idxpol),idxpol) = emftmp(itch) + iarhun(nfacar(idxpol),idxpol) = iuntmp + 30 continue + endif +c +c --- get the next record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXEMFC,'in file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXEMFC,'in file ', fname(:strmin(fname)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of technology types exceeds max: ', + & MXTECH, 'for emission factors in file ', + & fname(:strmin(fname)) + write(IOWSTD,'(9X,2A)',ERR=9999) 'Make sure that the units ', + & 'field is included and is in the correct columns.' + write(IOWSTD,'(1X,A,/,A)') 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of technology types exceeds max: ', + & MXTECH, 'for emission factors in file ', + & fname(:strmin(fname)) + write(IOWMSG,'(9X,2A)',ERR=9999) 'Make sure that the units ', + & 'field is included and is in the correct columns.' + write(IOWMSG,'(1X,A,/,A)') 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type or units type', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type or units type', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,2A,/,9X,4A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid pollutant code ', + & poltmp(:strmin(poltmp)),'for ',polin(:strmin(polin)), + & ' emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,4A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid pollutant code ', + & poltmp(:strmin(poltmp)),'for ',polin(:strmin(polin)), + & ' emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Diurnal emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Diurnal emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Tank Permeation emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Tank Permeation emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Hose Permeation emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Units for Hose Permeation emission factor must be ', + & untkey(IDXMLT)(:strmin(untkey(IDXMLT))), + & 'Check emission factor file: ',fname(:strmin(fname)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdevtech.f b/NONROAD/NR08a/SOURCE/rdevtech.f new file mode 100644 index 0000000..d7adca0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdevtech.f @@ -0,0 +1,334 @@ +C**** RDEVTECH +c + subroutine rdevtech( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the evap technology fractions by equipment type for each +c model year. +c +c Argument declaration. +c Inputs: +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 10May04 --dfk-- original development (from RDTECH) +c 20Jul05 --cimulus-- commented out usage of ichk +c 20Jul05 --cimulus-- floating-point comparison for equality +c okay; evtchhpb, hptmpb, evtchhpe, and +c hptmpe values are read from file, rather +c than being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line + character*20 keywrd, keyin + character*10 asctmp + character*10 tectmp,tecsav(MXEVTECH) + integer*4 irec, iyrtmp, istrt, ntch, itch, ifac, jerr +c integer*4 ichk + real*4 tchtmp(MXEVTECH), hptmpb, hptmpe + real*4 sumtec +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + nevtchcd = 0 +c +c --- open the file --- +c + open(IOREVTCH,file=evtchfl,ERR=7008,status='UNKNOWN') + rewind(IOREVTCH) +c +c ---- find the /EVAP TECH FRAC/ keyword ---- +c + keywrd = '/EVAP TECH FRAC/' + call fndkey( jerr, IOREVTCH, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 9999 + endif + if( jerr .NE. ISUCES ) goto 7006 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(IOREVTCH,8000,ERR=7000,END=7007) line + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- if this is a new SCC code, get the tech types --- +c + if( line(6:15) .NE. ' ' ) then + ntch = 0 + asctmp = line(6:15) + read(line(21:25),'(F5.0)',ERR=7004) hptmpb + read(line(26:30),'(F5.0)',ERR=7004) hptmpe + istrt = 35 + 333 continue + tectmp = line(istrt:istrt+9) + if( tectmp .EQ. ' ' ) goto 444 + call lftjst( tectmp ) + call low2up( tectmp ) +c +c ---- an evap tech group consists of an E followed by 8 numbers. +c each number corresponds to a tech group name for each evap +c species, as follows: +c +c 12345678 +c E00000000 +c +c E: Evap Tech Group +c 1: Diurnal +c 2: Tank Permeation +c 3: Hose Permeation (applies to non-rec-marine hose and 3 rec-marine hoses) +c 4: Hot Soak +c 5: Displacement +c 6: Spillage +c 7: Running Loss +c 8: Resting Loss +c +c the tech type name format for each evap species is En, where n=0-9 +c + if(tectmp(1:1).ne.'E' .or. + & strmin(tectmp).ne.9) goto 7005 +c read(tectmp(2:8),*,ERR=7005) ichk +c +c --- add tech type to array --- +c + ntch = ntch + 1 + if( ntch .GT. MXEVTECH ) goto 7003 + tecsav(ntch) = tectmp + istrt = istrt + 10 + goto 333 +c + 444 continue + if( ntch .LE. 0) goto 7005 +c +c ---- line contains technology fractions data -- +c + else +c +c ---- read the year --- +c + read(line(1:5),'(I5)',ERR=7004) iyrtmp + istrt = 35 + do 20 itch = 1,ntch +c +c --- read the data --- +c + read(line(istrt:istrt+9),'(F10.0)',ERR=7004) tchtmp(itch) +c +c --- find the index into arrays for line of data --- +c + do 30 ifac=1,nevtchcd + if( ascevtch(ifac) .EQ. asctmp .AND. + & iyrevtch(ifac) .EQ. iyrtmp .AND. + & evtchhpb(ifac) .EQ. hptmpb .AND. ! floating-point comparison for equality okay; evtchhpb and hptmpb values are read from file, rather than being calculated at runtime + & evtchhpe(ifac) .EQ. hptmpe) then ! floating-point comparison for equality okay; evtchhpe and hptmpe values are read from file, rather than being calculated at runtime + evtchfrc(ifac,itch) = tchtmp(itch) + evtectyp(ifac,itch) = tecsav(itch) + istrt = istrt + 10 + goto 20 + endif + 30 continue +c +c --- not found, add it to list ---- +c + nevtchcd = nevtchcd + 1 + if( nevtchcd .GT. MXEVTECD ) goto 7002 + ascevtch(nevtchcd) = asctmp + iyrevtch(nevtchcd) = iyrtmp + evtchhpb(nevtchcd) = hptmpb + evtchhpe(nevtchcd) = hptmpe + nevtech(nevtchcd) = ntch + evtectyp(nevtchcd,itch) = tecsav(itch) + evtchfrc(nevtchcd,itch) = tchtmp(itch) + istrt = istrt + 10 + 20 continue + endif +c +c --- get the next record --- +c + goto 111 +c +c --- entire file read, close it --- +c + 222 continue + close(IOREVTCH) +c +c --- renormalize the technology fractions to make sure they add to +c one, write warning if more than 5% error --- + + do 40 ntch = 1, nevtchcd +c + sumtec = 0. +c + do 50 itch = 1, nevtech(ntch) + sumtec = sumtec + evtchfrc(ntch,itch) + 50 continue +c + if ( ABS(sumtec-1.0) .GT. 0.002 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'WARNING: Evap Technology ', + & 'fractions do not add to 1. Renormalizing...' + write(IOWMSG,'(12X,4(A,3X))') 'Equipment', ' HP range', + & ' Year', 'Original Sum' + write(IOWMSG,'(12X,A,2(3X,F5.0),3X,I4,3X,F6.4)') + & ascevtch(ntch), evtchhpb(ntch), evtchhpe(ntch), + & iyrevtch(ntch), sumtec + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + endif + do 45 itch = 1,nevtech(ntch) + if( sumtec .GT. 0. ) + & evtchfrc(ntch,itch) = evtchfrc(ntch,itch) / sumtec + 45 continue + 40 continue +c +c --- return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading evap technology fraction file ', + & evtchfl(:strmin(evtchfl)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading evap technology fraction file ', + & evtchfl(:strmin(evtchfl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'evap technology fractions in file ', + & evtchfl(:strmin(evtchfl)), + & 'exceeds max ',MXEVTECD + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'evap technology fractions in file ', + & evtchfl(:strmin(evtchfl)), + & 'exceeds max ',MXEVTECD + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'evap technology types in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'exceeds max ', MXEVTECH + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'evap technology types in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'exceeds max ', MXEVTECH + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'evap technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'evap technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid evap technology type', + & 'in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid evap technology type', + & 'in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'Line read: ',line(:strmin(line)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & ' packet','of evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & keywrd(:strmin(keywrd)), + & ' packet','of evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'evap technology fractions file ', evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'evap technology fractions file ', evtchfl(:strmin(evtchfl)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & evtchfl(:strmin(evtchfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdevtech_moves.f b/NONROAD/NR08a/SOURCE/rdevtech_moves.f new file mode 100644 index 0000000..82a1a77 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdevtech_moves.f @@ -0,0 +1,337 @@ +**** RDEVTECH_MOVES +c + subroutine rdevtech_moves( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the evap technology fractions by equipment type for each +c model year. +c This version os for the file format generated by the MOVES GUI. +c +c Argument declaration. +c Inputs: +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 03/15/12 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line1, line2 + character*20 keywrd, keyin + character*10 asctmp + character*10 tectmp + integer*4 irec, iyrtmp, istrt, ntch, itch, ifac, jerr + integer*4 ntchtot, i + real*4 tecval, hptmpb, hptmpe + real*4 sumtec +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + nevtchcd = 0 +c +c --- open the file --- +c + open(IOREVTCH,file=evtchfl,ERR=7008,status='UNKNOWN') + rewind(IOREVTCH) +c +c ---- find the /EVAP TECH FRAC/ keyword ---- +c + keywrd = '/MOVES EVAP TECH FRAC/' + call fndkey( jerr, IOREVTCH, keywrd ) + if( jerr .NE. ISUCES ) then + ierr = ISKIP + goto 9999 + endif +c +c --- read two lines, one identification, the other data --- +c + ntchtot = 1 + 111 continue + irec = irec + 1 + read(IOREVTCH,8000,ERR=7000,END=7007) line1 +c +c --- look for /END/ keyword --- +c + keyin = line1(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c + read(IOREVTCH,8000,ERR=7000,END=7007) line2 + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line1(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- skip if this is not an identifier record --- +c + if( line1(6:15) .EQ. ' ' ) goto 111 +c +c --- parse the identification line --- +c + asctmp = line1(6:15) + read(line1(21:25),'(F5.0)',ERR=7004) hptmpb + read(line1(26:30),'(F5.0)',ERR=7004) hptmpe + tectmp = line1(35:44) + call lftjst( tectmp ) + call low2up( tectmp ) +c +c ---- an evap tech group consists of an E followed by 8 numbers. +c each number corresponds to a tech group name for each evap +c species, as follows: +c +c 12345678 +c E00000000 +c +c E: Evap Tech Group +c 1: Diurnal +c 2: Tank Permeation +c 3: Hose Permeation (applies to non-rec-marine hose and 3 rec-marine hoses) +c 4: Hot Soak +c 5: Displacement +c 6: Spillage +c 7: Running Loss +c 8: Resting Loss +c +c the tech type name format for each evap species is En, where n=0-9 +c + if(tectmp(1:1).ne.'E' .or. + & strmin(tectmp).ne.9) goto 7005 +c read(tectmp(2:8),*,ERR=7005) ichk +c +c --- parse the data record --- +c + read(line2(1:5),'(I5)',ERR=7004) iyrtmp + read(line2(35:44),'(F10.0)',ERR=7004) tecval +c +c --- find the index into arrays for this equipment --- +c + do ifac=1,nevtchcd + if( ascevtch(ifac) .EQ. asctmp .AND. + & iyrevtch(ifac) .EQ. iyrtmp .AND. + & evtchhpb(ifac) .EQ. hptmpb .AND. + & evtchhpe(ifac) .EQ. hptmpe) then + do i=1,nevtech(ifac) +c +c --- skip if already in list (different year) --- +c + if( tectmp .EQ. evtectyp(ifac,i) ) then + evtchfrc(ifac,i) = tecval + goto 111 + endif + enddo +c +c --- new tech type for this equipment, add to arrays --- +c + nevtech(ifac) = nevtech(ifac) + 1 + if( nevtech(ifac) .GT. MXEVTECH ) goto 7003 + evtectyp(ifac,nevtech(ifac)) = tectmp + evtchfrc(ifac,nevtech(ifac)) = tecval + goto 111 + endif + enddo +c +c --- not found, add it to list ---- +c + nevtchcd = nevtchcd + 1 + if( nevtchcd .GT. MXTECD ) goto 7002 + ascevtch(nevtchcd) = asctmp + iyrevtch(nevtchcd) = iyrtmp + evtchhpb(nevtchcd) = hptmpb + evtchhpe(nevtchcd) = hptmpe + nevtech(nevtchcd) = 1 + evtectyp(nevtchcd,1) = tectmp + evtchfrc(nevtchcd,1) = tecval +c +c --- get next record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + close(IOREVTCH) +c +c --- renormalize the technology fractions to make sure they add to +c one, write warning if more than 5% error --- + + do 40 ntch = 1, nevtchcd +c + sumtec = 0. +c + do 50 itch = 1, nevtech(ntch) + sumtec = sumtec + evtchfrc(ntch,itch) + 50 continue +c + if ( ABS(sumtec-1.0) .GT. 0.002 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'WARNING: Evap Technology ', + & 'fractions do not add to 1. Renormalizing...' + write(IOWMSG,'(12X,4(A,3X))') 'Equipment', ' HP range', + & ' Year', 'Original Sum' + write(IOWMSG,'(12X,A,2(3X,F5.0),3X,I4,3X,F6.4)') + & ascevtch(ntch), evtchhpb(ntch), evtchhpe(ntch), + & iyrevtch(ntch), sumtec + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + endif + do 45 itch = 1,nevtech(ntch) + if( sumtec .GT. 0. ) + & evtchfrc(ntch,itch) = evtchfrc(ntch,itch) / sumtec + 45 continue + 40 continue +c +c --- return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading evap technology fraction file ', + & evtchfl(:strmin(evtchfl)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading evap technology fraction file ', + & evtchfl(:strmin(evtchfl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'evap technology fractions in file ', + & evtchfl(:strmin(evtchfl)), + & 'exceeds max ',MXEVTECD + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'evap technology fractions in file ', + & evtchfl(:strmin(evtchfl)), + & 'exceeds max ',MXEVTECD + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'evap technology types in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'exceeds max ', MXEVTECH + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'evap technology types in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'exceeds max ', MXEVTECH + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'evap technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line1(:strmin(line1)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'evap technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line1(:strmin(line1)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid evap technology type', + & 'in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'Line read: ',line1(:strmin(line1)) + write(IOWMSG,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid evap technology type', + & 'in evap technology fractions file ', + & evtchfl(:strmin(evtchfl)),'Line read: ',line1(:strmin(line1)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & ' packet','of evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & keywrd(:strmin(keywrd)), + & ' packet','of evap technology fractions file ', + & evtchfl(:strmin(evtchfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'evap technology fractions file ', evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'evap technology fractions file ', evtchfl(:strmin(evtchfl)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & evtchfl(:strmin(evtchfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & evtchfl(:strmin(evtchfl)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line2(:strmin(line2)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',evtchfl(:strmin(evtchfl)), + & 'Line read: ',line2(:strmin(line2)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdfips.f b/NONROAD/NR08a/SOURCE/rdfips.f new file mode 100644 index 0000000..e4eb2cc --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdfips.f @@ -0,0 +1,238 @@ +C**** RDFIPS +c + subroutine rdfips( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the FIPS.DAT file or equivalent as specified by the user in +c the option file +c +c Argument description. +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 04/22/05 --cimulus-- original development +c 05/13/05 --cimulus-- added handling to ignore information +c outside of a delimited block of data lines +c 05/16/05 --cimulus-- increased size of strings in cntynm to 50 +c 05/16/05 --cimulus-- end execution on state-not-found error +c 05/16/05 --cimulus-- log error if packet delimiter not found +c 07/11/05 --cimulus-- allow 4-digit FIPS codes, adding leading +c zero; error if less than 4 digits +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strlen + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- + character*(MXSTR) line + character*20 keywrd, keytmp + integer*4 jerr, i, ctread + integer*4 yrstrt, yrend, stidx, ctyidx + character*50 tname + character*5 tfips +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c Reset global variables relating to county names and counts + ctread = 0 + do 10 i=0, NSTATE+1 + idxcty(i) = 0 + 10 continue + do 20 i=1, NSTATE + nconty(i) = 0 + 20 continue + idxcty(NSTATE+1) = 1 + nmcnty = 0 +c +c Set default value in fipsfl if none was specified + if( .NOT. lfipsfl ) then + fipsfl = 'DATA/ALLOCATE/FIPS.DAT' + lfipsfl = .TRUE. + endif +c +c Open the FIPS.DAT file + open(IOFIPS,file=fipsfl,ERR=7000,status='UNKNOWN') + rewind(IOFIPS) +c +c Call routine to find the /FIPS/ keyword +c + keywrd = '/FIPS/' + call fndkey(jerr, IOFIPS, keywrd ) + if( jerr .NE. ISUCES ) goto 7001 +c +c Start of loop reading each record + 100 continue +c +c Read a record as a character string + read(IOFIPS,8000,ERR=7002,END=999) line + call spinit() + ctread = ctread + 1 +c +c Search for the end of the packet + keytmp = line(1:10) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) goto 999 +c +c Parse the line of text into the field values + yrstrt = 0 + yrend = 0 + tfips = '00000' + tname = '00000' + read(line,8001,err=9999) tfips, yrstrt, yrend, tname +c +c Skip counties with blank FIPS or names + call lftjst( tfips ) + call lftjst( tname ) + if( (tfips(1:1) .EQ. ' ') .OR. (tname(1:1) .EQ. ' ')) goto 100 +c +c Add leading zero to 4-digit FIPS codes; minimum 4 digits + if( strlen(tfips) .EQ. 4 ) then + tfips = '0'//tfips + else if( strlen(tfips) .LT. 4 ) then + goto 7003 + endif +c +c Check year span for the county, skipping counties not present in the evaluation year + if( ((yrstrt .GT. 0) .AND. (yrstrt .GT. iepyr)) + & .OR. + & ((yrend .GT. 0) .AND. (yrend .LT. iepyr))) goto 100 +c +c Find the state + stidx = 0 + do 110 i=1,NSTATE + if( statcd(i)(1:2) .EQ. tfips(1:2) ) then + stidx = i + goto 115 + endif + 110 continue + 115 continue +c +c If state not found, log error and return + if( stidx .LE. 0 ) then + goto 7004 + endif +c +c The state has been found (in stidx), now store the county information + nmcnty = nmcnty + 1 + ctyidx = nmcnty + nconty(stidx) = nconty(stidx) + 1 + if( idxcty(stidx) .LE. 0 ) idxcty(stidx) = ctyidx + cntynm(ctyidx) = tname + fipcod(ctyidx) = tfips +c +c Get the next record + goto 100 +c +c All records have been read + 999 continue + close(IOFIPS) + idxcty(NSTATE+1) = 1 + nmcnty +c write(IOWSTD,'(/,1X,A,I,A,I)',ERR=9999) +c & 'Counties Read:',ctread,' Good: ',nmcnty +c +c --- set error flag to success ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fipsfl(:strmin(fipsfl)) + if ( lmsgfl ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file: ', + & fipsfl(:strmin(fipsfl)) + endif + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Reading FIPS file ', + & fipsfl(:strmin(fipsfl)) + if ( lmsgfl ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Reading FIPS file ', + & fipsfl(:strmin(fipsfl)) + endif + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of FIPS file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of FIPS file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid FIPS (',tfips(:strmin(tfips)), + & '); must be at least 4 digits' + if ( lmsgfl ) then + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid FIPS (',tfips(:strmin(tfips)), + & '); must be at least 4 digits' + endif + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Unknown state for county FIPS: ', + & tfips(:strmin(tfips)) + if ( lmsgfl ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Unknown state for county FIPS: ', + & tfips(:strmin(tfips)) + endif +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(A5,I5,I5,1X,A50) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdgrow.f b/NONROAD/NR08a/SOURCE/rdgrow.f new file mode 100644 index 0000000..9083d81 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdgrow.f @@ -0,0 +1,382 @@ +C**** RDGROW +c + subroutine rdgrow( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the growth indicator data and writes it to a scratch file. +c All of the data is read and written to a direct access scratch file. +c The data is then sorted based on indicator code and year and +c rewritten to the scratch file in the sorted order. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 04/24/17 --dbc-- increased MXGREC for MOVES2014b +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdgrw.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in an array of strings +c + integer*4 strlen + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local paramneters: +c----------------------------------------------------------------------- +c +c MXGREC I maximum number of records in a state file +c + integer*4 MXGREC +c + parameter( MXGREC = 55000 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line, fname, scrnam + character*20 keywrd, keytmp + character*14 srtkey(MXGREC) + character*5 fiptmp + character*5 yrtmp + character*4 indtmp + integer*4 idxrec(MXGREC), jerr, nrecs, irec, idxfip, i + logical*4 lexist, lscrap +c +c----------------------------------------------------------------------- +c Data statements: +c----------------------------------------------------------------------- +c + data scrnam /'grwdir.txt'/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + nrecs = 0 + lscrap = .FALSE. +c +c --- look for the packet ---- +c + keywrd = '/GROWTH FILES/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7000 + if( jerr .EQ. IEOF ) then + lgrwfl = .FALSE. + ierr = ISUCES + goto 9999 + endif + lgrwfl = .TRUE. +c +c --- open the file that will be used for the data ---- +c + open(file=grwfl,unit=IOSGRW,ERR=7006,status='UNKNOWN') +c +c --- open the direct access file ---- +c + open(file=scrnam,unit=IOSDIR,form='FORMATTED',status='UNKNOWN', + & access='DIRECT',RECL=MXSTR,ERR=7005) +c +c -- echo to message file --- +c + write(IOWMSG,9002,ERR=9999) + write(IOWMSG,9003,ERR=9999) '*** Growth Indicator Files ***' + write(IOWMSG,9002,ERR=9999) +c +c --- read a filename and open the file --- +c + 111 continue + read(IORUSR,8000,ERR=7004,END=7004) keytmp, fname + call spinit() + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 444 + if( strlen(fname) .LE. 0 ) goto 111 + call lftjst( fname ) + write(IOWMSG,9004,ERR=9999) ' ',fname(:strmin(fname)) + inquire(file=fname,exist=lexist) + if( .NOT. lexist ) goto 7002 + open(file=fname,unit=IORGRW,ERR=7003,status='UNKNOWN') +c +c --- call routine to read the growth cross reference data --- +c + call rdgxrf( jerr, IORGRW, fname ) + if( jerr .NE. ISUCES ) goto 9999 + call spinit() +c +c --- call routine to find the /GROWTH/ keyword ---- +c + keywrd = '/GROWTH/' + call fndkey( jerr, IORGRW, keywrd ) + if( jerr .NE. ISUCES ) goto 7011 +c +c --- read a record as a character string --- +c + 222 continue + read(IORGRW,8001,ERR=7001,END=333) line + call spinit() + irec = irec + 1 + keytmp = line(1:20) + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 333 +c +c --- get the data from the line and add to the array of +c sort keys ---- +c + fiptmp = line(1:5) + yrtmp = line(11:15) + indtmp = line(17:20) +c +c --- if county is not requested, skip it --- +c + if( fiptmp .NE. '00000' ) then + if( fiptmp(3:5) .EQ. '000' ) then + idxfip = fndchr( fiptmp, 5, statcd, NSTATE ) + if( idxfip .LE. 0 ) goto 222 + if( .NOT. lstacd(idxfip) ) goto 222 + else + idxfip = fndchr( fiptmp, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 222 + if( .NOT. lfipcd(idxfip) ) goto 222 + endif + endif +c +c --- load the data into sort key array --- +c + nrecs = nrecs + 1 + if( nrecs .GT. MXGREC ) goto 7007 + srtkey(nrecs) = indtmp//fiptmp//yrtmp +c +c --- write the data record to direct access file ---- +c + write(IOSDIR,'(A)',ERR=7008,REC=nrecs) line +c +c --- get the next record --- +c + goto 222 +c +c --- read all of the records for this file, call routine to sort +c the keys --- +c + 333 continue + if( nrecs .GT. 0 ) then + call chrsrt( srtkey, 14, nrecs, idxrec ) + call spinit() + else + ierr = IEOF + goto 9999 + endif +c +c --- loop over the records and write the each record to +c the sorted scratch file ---- +c + do 10 i=1,nrecs + read(IOSDIR,8001,ERR=7009,REC=idxrec(i)) line + call spinit() + write(IOSGRW,'(A)',ERR=7010) line + 10 continue +c +c --- call routine to read the scrappage curve bins, if they exist in +c this file --- +c + call rdscrp( jerr, IORGRW, fname ) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 + if( jerr .EQ. ISUCES ) lscrap = .TRUE. + call spinit() +c +c --- call routine to read the alternate scrappage curves --- +c + call rdalt( jerr, IORGRW, fname) + if( jerr .NE. ISUCES .AND. jerr .NE. ISKIP ) goto 9999 +c +c --- get the next allocation file ---- +c + close(IORGRW) + goto 111 +c +c --- processed all of the files, make sure last record has +c a different FIPS code --- +c + 444 continue + line(1:10) = KEYEND + inquire(unit=IOSGRW,name=fname) + write(IOSGRW,'(A)',ERR=7010) line + rewind(IOSGRW) +c +c --- close the direct acces file, and delete it --- +c + close(IOSDIR,status='DELETE') +c +c --- check to make sure the scrappage curve was found --- +c + if( .NOT. lscrap ) goto 7012 + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading growth indicator file ', + & fname(:strmin(fname)),'at record ',irec + write(IOWMSG,'(/,1X,2A,/,9X,A,I10)',ERR=9999) + & 'ERROR: Reading growth indicator file ', + & fname(:strmin(fname)),'at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Cannot find growth file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Cannot find growth file ',fname(:strmin(fname)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Opening growth file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Opening growth file ',fname(:strmin(fname)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Cannot open direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Cannot open direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted growth indicators ', + & grwfl(:strmin(grwfl)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted growth indicators ', + & grwfl(:strmin(grwfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,3A,I10)',ERR=9999) 'ERROR: Number of ', + & 'growth allocation indicator records', + & ' exceeds max ',MXGREC + write(IOWMSG,'(/,1X,3A,I10)',ERR=9999) 'ERROR: Number of ', + & 'growth allocation indicator records', + & ' exceeds max ',MXGREC + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Writing direct-access file ', + & 'used for sorting ',scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Writing direct-access file ', + & 'used for sorting ',scrnam(:strmin(scrnam)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Reading direct-access file ', + & 'used for sorting ',scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Reading direct-access file ', + & 'used for sorting ',scrnam(:strmin(scrnam)) + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Writing scratch file used ', + & 'for growth allocation indicators ', + & scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Writing scratch file used ', + & 'for growth allocation indicators ', + & scrnam(:strmin(scrnam)) + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the growth file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the growth file ', + & fname(:strmin(fname)) + goto 9999 +c + 7012 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Cannot find ', + & '/SCRAPPAGE/ packet in any of the growth files.' + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Cannot find ', + & '/SCRAPPAGE/ packet in any of the growth files.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A20,A) + 8001 format(A) + 9001 format(A) + 9002 format(1X,A) + 9003 format(T20,A) + 9004 format(T10,A,T30,:,':',A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdgxrf.f b/NONROAD/NR08a/SOURCE/rdgxrf.f new file mode 100644 index 0000000..f7249fc --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdgxrf.f @@ -0,0 +1,169 @@ +C**** RDGXRF +c + subroutine rdgxrf( ierr, iounit, fname ) +c +c----------------------------------------------------------------------- +c +c reads the growth indicator cross reference data and stores it in +c global arrays to be accessed by the Nonroad model. The data is +c in separate files by state. It reads the data specified by the +c unit number and filename on the argument list. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c iounit I unit number of file to read +c fname C file name of file to read +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdgrw.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(*) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*20 keywrd, keytmp + character*10 asctmp, tectmp + character*5 statmp + character*4 indtmp + integer*4 irec, jerr + real*4 hplow, hphi +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + rewind(iounit) +c +c --- call routine to find the /INDICATORS/ packet ---- +c + keywrd = '/INDICATORS/' + call fndkey( jerr, iounit, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + read(iounit,8000,ERR=7001,END=7001) line + irec = irec + 1 +c +c --- look for the /END/ keyword ---- +c + keytmp = line(1:10) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) goto 222 +c +c --- read the indicator other data and store in arrays ---- +c + asctmp = line(12:21) + statmp = line(1:5) + indtmp = line(7:10) + call lftjst( indtmp ) + read(line(23:27),'(F5.0)',ERR=7001) hplow + read(line(28:32),'(F5.0)',ERR=7001) hphi + tectmp = line(34:43) + call lftjst( tectmp ) +c +c --- add the data to the global arrays ---- +c + nrcgrx = nrcgrx + 1 + if( nrcgrx .GT. MXGXRF ) goto 7003 + fipgrx(nrcgrx) = statmp + ascgrx(nrcgrx) = asctmp + hpgrx(nrcgrx,1) = hplow + hpgrx(nrcgrx,2) = hphi + tecgrx(nrcgrx) = tectmp + indgrx(nrcgrx) = indtmp +c +c --- get the next record --- +c + goto 111 +c +c --- finished reading file --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of growth file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of growth file ', + & fname(:strmin(fname)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,4A,/,9X,A,I8)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file ', + & fname(:strmin(fname)),'at record ',irec + write(IOWMSG,'(/,1X,4A,/,9X,A,I8)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file ', + & fname(:strmin(fname)),'at record ',irec + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A,I8)',ERR=9999) + & 'ERROR: Number of records in ', + & keywrd(:strmin(keywrd)),' packet','of growth file ', + & fname(:strmin(fname)),' exceeds max ',MXGXRF + write(IOWMSG,'(/,1X,3A,/,9X,3A,I8)',ERR=9999) + & 'ERROR: Number of records in ', + & keywrd(:strmin(keywrd)),' packet','of growth file ', + & fname(:strmin(fname)),' exceeds max ',MXGXRF + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdind.f b/NONROAD/NR08a/SOURCE/rdind.f new file mode 100644 index 0000000..d465ded --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdind.f @@ -0,0 +1,355 @@ +C**** RDIND +c + subroutine rdind( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the spatial indicator data and writes it to a scratch file. +c All of the data is read and written to a direct access scratch file. +c The data is then sorted on the indicator code and year and +c rewritten to the target file in sorted order. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdalo.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in an array of strings +c + integer*4 strlen + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local paramneters: +c----------------------------------------------------------------------- +c +c MXIREC I maximum number of records in a state file +c + integer*4 MXIREC +c + parameter( MXIREC = 100000 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line, fname, scrnam, last + character*20 keytmp, keywrd, keyin + character*17 srtkey(MXIREC) + character*5 fiptmp, subtmp + character*4 yrtmp + character*3 indtmp + integer*4 idxrec(MXIREC), jerr, nrecs, irec, idxfip, i + integer*4 idxcod + logical*4 lexist +c +c----------------------------------------------------------------------- +c Data statements: +c----------------------------------------------------------------------- +c + data scrnam /'alodir.txt'/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + nrecs = 0 + last = ' ' + keywrd = '/ALLOC FILES/' +c +c --- look for the packet ---- +c + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- open the file that will be used for the data ---- +c + open(file=indfl,unit=IOSIND,ERR=7006,status='UNKNOWN') +c +c --- open the direct access file ---- +c + open(file=scrnam,unit=IOSDIR,form='FORMATTED',status='UNKNOWN', + & access='DIRECT',RECL=MXSTR,ERR=7005) +c +c -- echo to message file --- +c + write(IOWMSG,9002,ERR=9999) + write(IOWMSG,9003,ERR=9999) '*** Spatial Allocation Files ***' + write(IOWMSG,9002,ERR=9999) +c +c --- read a filename and open the file --- +c + 111 continue + read(IORUSR,8000,ERR=7004,END=7004) keytmp, fname + call low2up( keytmp ) + call lftjst( keytmp ) + if( keytmp .EQ. KEYEND ) goto 333 + if( strlen(fname) .LE. 0 ) goto 111 + call lftjst( fname ) + write(IOWMSG,9004,ERR=9999) ' ',fname(:strmin(fname)) + inquire(file=fname,exist=lexist) + if( .NOT. lexist ) goto 7002 + open(file=fname,unit=IORIND,ERR=7003,status='UNKNOWN') +c +c ---- find the /INDICATORS/ keyword ---- +c + keywrd = '/INDICATORS/' + call fndkey( jerr, IORIND, keywrd ) + if( jerr .NE. ISUCES ) goto 7011 +c +c --- read a record as a character string --- +c + 222 continue + read(IORIND,8001,ERR=7001,END=7012) line + irec = irec + 1 + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 111 + last = line +c +c --- get the data from the line and add to the array of +c sort keys ---- +c + indtmp = line(1:3) + fiptmp = line(6:10) + subtmp = line(11:15) + yrtmp = line(16:20) +c +c --- left justify and convert to upper case where necessary --- +c + call lftjst( fiptmp ) + call lftjst( subtmp ) + call low2up( subtmp ) +c +c --- if county is not requested, skip it --- +c + if( fiptmp .EQ. '00000' ) then + if( reglvl .NE. NATION .AND. reglvl .NE. STATE ) goto 222 + else if( fiptmp(3:5) .EQ. '000' ) then + idxfip = fndchr( fiptmp, 5, statcd, NSTATE ) + if( idxfip .LE. 0 ) goto 222 + if( .NOT. lstacd(idxfip) ) goto 222 + else + idxfip = fndchr( fiptmp, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 222 + if( .NOT. lfipcd(idxfip) ) goto 222 + endif +c +c --- if this code is not in list of codes used, skip it --- +c + idxcod = fndchr( indtmp, 3, alocod, nalocd ) + if( idxcod .LE. 0 ) goto 222 +c +c --- load the data into sort key array --- +c + nrecs = nrecs + 1 + if( nrecs .GT. MXIREC ) goto 7007 + srtkey(nrecs) = indtmp//fiptmp//subtmp//yrtmp +c +c --- write the data record to direct access file ---- +c + write(IOSDIR,9001,ERR=7008,REC=nrecs) line +c +c --- get the next record --- +c + goto 222 +c +c --- read all of the records for this file, call routine to sort +c the keys --- +c + 333 continue + if( nrecs .GT. 0 ) then + call chrsrt( srtkey, 17, nrecs, idxrec ) + call spinit() + endif +c +c --- loop over the records and write the each record to +c the sorted scratch file ---- +c + do 10 i=1,nrecs + read(IOSDIR,8001,ERR=7009,REC=idxrec(i)) line + write(IOSIND,9001,ERR=7010) line + 10 continue +c +c --- get the next allocation file ---- +c + close(IORIND) +c +c --- processed all of the files, make sure last record has +c a different FIPS code --- +c + 444 continue + last(6:10) = 'xxxxx' + write(IOSIND,9001,ERR=7010) last + rewind(IOSIND) +c +c --- close the direct acces file, and delete it --- +c + close(IOSDIR,status='DELETE') + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,2A,/,9X,A,I8)',ERR=9999) + & 'ERROR: Reading spatial indicator file ', + & fname(:strmin(fname)),'at record ',irec + write(IOWMSG,'(/,1X,2A,/,9X,A,I8)',ERR=9999) + & 'ERROR: Reading spatial indicator file ', + & fname(:strmin(fname)),'at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot find spatial', + & ' allocation file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot find spatial', + & ' allocation file ',fname(:strmin(fname)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) + & 'ERROR: Opening ownership allocation file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) + & 'ERROR: Opening ownership allocation file ', + & fname(:strmin(fname)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of options file.' + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open ', + & 'direct-acces file used for sorting ',scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open ', + & 'direct-acces file used for sorting ',scrnam(:strmin(scrnam)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted spatial indicators ', + & indfl(:strmin(indfl)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted spatial indicators ', + & indfl(:strmin(indfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,2A,I8)',ERR=9999) 'ERROR: Number of ', + & 'allocation indicator records excceds max: ',MXIREC + write(IOWMSG,'(/,1X,2A,I8)',ERR=9999) 'ERROR: Number of ', + & 'allocation indicator records excceds max: ',MXIREC + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Writing ', + & 'direct-access file used for sorting ',scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Writing ', + & 'direct-access file used for sorting ',scrnam(:strmin(scrnam)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & 'direct-access file used for sorting ',scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & 'direct-access file used for sorting ',scrnam(:strmin(scrnam)) + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Writing scratch ', + & 'file used for spatial allocation indicators ', + & indfl(:strmin(indfl)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Writing scratch ', + & 'file used for spatial allocation indicators ', + & indfl(:strmin(indfl)) + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the allocation file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of the allocation file ', + & fname(:strmin(fname)) + goto 9999 +c + 7012 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'allocation file ',fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'allocation file ',fname(:strmin(fname)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A20,A) + 8001 format(A) + 9001 format(A) + 9002 format(1X,A) + 9003 format(T20,A) + 9004 format(T10,A,T30,:,':',A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdnropt.f b/NONROAD/NR08a/SOURCE/rdnropt.f new file mode 100644 index 0000000..374d894 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdnropt.f @@ -0,0 +1,438 @@ +C**** RDNROPT +c + subroutine rdnropt( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the options /OPTIONS/ packet used in the NONROAD program +c +c Argument description. +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 03/21/97 --gwilson-- origiginal development +c 08/30/01 --charvey-- fixes RVP valid max from 14 to 16. +c 06/17/04 --charvey-- adds marine diesel sulfur input. +c 07/15/05 --cimulus-- removed commercial marine related handling +c 07/20/05 --cimulus-- removed unused variable +c 09/21/06 --epa-- add ethanol mkt share; vol% inputs for +c permeation effects +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 line + character*20 keywrd + character*10 respons + integer*4 i, jerr, irec +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- find the OPTIONS packet ---- +c + keywrd = '/OPTIONS/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7001 +c +c --- read the title records ---- +c + title1 = ' ' + title2 = ' ' + irec = 1 + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + title1 = line(21:) + call lftjst( title1 ) + do 10 i=1,strmin(title1) + if( title1(i:i) .EQ. '"' ) title1(i:i) = ' ' + 10 continue + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + title2 = line(21:) + call lftjst( title2 ) + do 20 i=1,strmin(title1) + if( title2(i:i) .EQ. '"' ) title2(i:i) = ' ' + 20 continue +c +c --- get the fuel RVP value --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) fulrvp +c +c --- check for valid range --- +c + if( fulrvp .LT. 6.0 .OR. fulrvp .GT. 16.0 ) goto 7007 + call spinit() + irec = irec + 1 +c +c --- get the fuel oxygen weight percent --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) oxypct + if( oxypct .LT. 0. .OR. oxypct .GT. 5. ) goto 7008 + call spinit() + irec = irec + 1 +c +c --- get the sulfur content for gasoline engines --- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) soxgas + if( soxgas .LT. 0. .OR. soxgas .GT. 0.5 ) goto 7009 + call spinit() + irec = irec + 1 +c +c --- get sulfur content for land-based diesel engines --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) soxdsl + if( soxdsl .LT. 0. .OR. soxdsl .GT. 0.5 ) goto 7010 + call spinit() + irec = irec + 1 +c +c --- get sulfur content for marine diesel engines --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + soxdsm = soxdsl + read(line(1:6),8000,ERR=7000) respons + call low2up(respons) + if(respons(1:6) .EQ. 'MARINE') then + read(line(21:30),8002,ERR=7002) soxdsm + if( soxdsm .LT. 0. .OR. soxdsm .GT. 0.5 ) goto 7010 + call spinit() + irec = irec + 1 +c +c --- go ahead to next line; else assume current line is CNG/LPG --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + endif +c +c --- get the sulfur content for CNG/LPG engines --- +c + read(line(21:30),8002,ERR=7002) soxcng + if( soxcng .LT. 0. .OR. soxcng .GT. 0.5 ) goto 7011 + call spinit() + irec = irec + 1 +c +c --- get the minimum daily temperature --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) tempmn + if( tempmn .LT. -40. .OR. tempmn .GT. 120. ) goto 7012 + call spinit() + irec = irec + 1 +c +c --- get the maximum daily temperature --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) tempmx + if( tempmx .LT. -40. .OR. tempmx .GT. 120. ) goto 7013 + call spinit() + irec = irec + 1 +c +c --- get the representative daily ambient temperature --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + read(line(21:30),8002,ERR=7002) amtemp + call spinit() + irec = irec + 1 +c +c --- check that average is between min and max --- +c + if( amtemp .LT. tempmn .OR. amtemp .GT. tempmx ) goto 7006 +c +c --- get the reponse to the altitude flag --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + respons = line(21:30) + call lftjst( respons ) + call low2up( respons ) + if( respons(1:5) .EQ. FLAGHI ) then + lhigh = .TRUE. + irejn = 2 + else if( respons(1:5) .EQ. FLAGLO ) then + irejn = 1 + lhigh = .FALSE. + else + goto 7004 + endif +c +c --- get the reponse to the RFG flag --- +c NOTE: eliminated by gwilson (09/01/97) ---- +c +cgwilson read(IORUSR,8000,ERR=7000,END=7003) line +cgwilson call spinit() +cgwilson respons = line(21:30) +cgwilson call lftjst( respons ) +cgwilson call low2up( respons ) +cgwilson if( respons(1:5) .EQ. FLAGYES ) then +cgwilson lrfg = .TRUE. +cgwilson else if( respons(1:5) .EQ. FLAGNO ) then +cgwilson lrfg = .FALSE. +cgwilson else +cgwilson goto 7005 +cgwilson endif + lrfg = .FALSE. +c +c --- get Ethanol market share and volume percent --- +c + read(IORUSR,8000,ERR=7000,END=7003) line + call spinit() + ethmkt = 0.0 + ethvpct = 0.0 + read(line(1:4),8000,ERR=7000) respons + call low2up(respons) + if(respons(1:4) .EQ. 'ETOH') then + read(line(21:30),8002,ERR=7002) ethmkt + if( ethmkt .LT. 0. .OR. ethmkt .GT. 100. ) goto 7014 + call spinit() + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7003) line + read(line(21:30),8002,ERR=7002) ethvpct + if( ethvpct .LT. 0. .OR. ethvpct .GT. 100. ) goto 7015 + call spinit() + if( ABS(ethvpct * 0.35 * 0.01 * ethmkt - oxypct) .GT. 0.1 ) then + write(IOWSTD,'(/,1X,2A,3F7.2,/)',ERR=9999) + & 'WARNING: Oxygen content mismatch ', + & 'with Ethanol Blend Mkt Share & Vol %: ', + & oxypct, ethmkt, ethvpct + write(IOWMSG,'(/,1X,2A,3F7.2,/)',ERR=9999) + & 'WARNING: Oxygen content mismatch ', + & 'with Ethanol Blend Mkt Share & Vol %: ', + & oxypct, ethmkt, ethvpct + endif + endif +c +c --- set error flag to success ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,2A,I5,/,9X,3A)',ERR=9999) 'ERROR: Reading ', + & 'numeric data field at record ',irec,'of the ', + & keywrd(:strmin(keywrd)),' packet of options file' + write(IOWSTD,'(9X,2A)',ERR=9999) + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,I5,/,9X,3A)',ERR=9999) 'ERROR: Reading ', + & 'numeric data field at record ',irec,'of the ', + & keywrd(:strmin(keywrd)),' packet of options file' + write(IOWMSG,'(9X,2A)',ERR=9999) + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response ', + & 'to the altitude flag -> ',line(21:30),'<-' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) FLAGHI + write(IOWSTD,'(15X,A)',ERR=9999) FLAGLO + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response ', + & 'to the altitude flag -> ',line(21:30),'<-' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) FLAGHI + write(IOWMSG,'(15X,A)',ERR=9999) FLAGLO + goto 9999 +c +cgwilson 7005 continue +cgwilson write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response ', +cgwilson & 'to the RFG flag -> ',line(21:30),'<-' +cgwilson write(IOWSTD,'(10X,A)',ERR=9999) 'Valid responses are: ' +cgwilson write(IOWSTD,'(15X,A)',ERR=9999) FLAGYES +cgwilson write(IOWSTD,'(15X,A)',ERR=9999) FLAGNO +cgwilson write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response ', +cgwilson & 'to the RFG flag -> ',line(21:30),'<-' +cgwilson write(IOWMSG,'(10X,A)',ERR=9999) 'Valid responses are: ' +cgwilson write(IOWMSG,'(15X,A)',ERR=9999) FLAGYES +cgwilson write(IOWMSG,'(15X,A)',ERR=9999) FLAGNO +cgwilson goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Average temperature ', + & 'must be between minimum and maximum temperatures.' + write(IOWSTD,'(10X,A,F10.2)') 'Minimum temperature: ',tempmn + write(IOWSTD,'(10X,A,F10.2)') 'Maximum temperature: ',tempmx + write(IOWSTD,'(10X,A,F10.2)') 'Average temperature: ',amtemp + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Average temperature ', + & 'must be between minimum and maximum temperatures.' + write(IOWMSG,'(10X,A,F10.2)') 'Minimum temperature: ',tempmn + write(IOWMSG,'(10X,A,F10.2)') 'Maximum temperature: ',tempmx + write(IOWMSG,'(10X,A,F10.2)') 'Average temperature: ',amtemp + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Fuel RVP value: ',fulrvp + write(IOWSTD,'(9X,3A)') 'Valid range is: 6 to 16' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Fuel RVP value: ',fulrvp + write(IOWMSG,'(9X,3A)') 'Valid range is: 6 to 16' + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Oxygen weight % value: ',oxypct + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 5' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Oxygen weight % value: ',oxypct + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 5' + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Gasoline sulfur % value: ',soxgas + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 0.5' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Gasoline sulfur % value: ',soxgas + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 0.5' + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,A,2F6.1)',ERR=9999) + & 'ERROR: Invalid Diesel sulfur % value: ', + & soxdsl,soxdsm + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 0.5' + write(IOWMSG,'(/,1X,A,2F6.1)',ERR=9999) + & 'ERROR: Invalid Diesel sulfur % value: ', + & soxdsl,soxdsm + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 0.5' + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid CNG/LPG sulfur % value: ',soxcng + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 0.5' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid CNG/LPG sulfur % value: ',soxcng + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 0.5' + goto 9999 +c + 7012 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Minimum temperature value: ',tempmn + write(IOWSTD,'(9X,3A)') 'Valid range is: -40 to 120' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Minimum temperature value: ',tempmn + write(IOWMSG,'(9X,3A)') 'Valid range is: -40 to 120' + goto 9999 +c + 7013 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Maximum temperature value: ',tempmx + write(IOWSTD,'(9X,3A)') 'Valid range is: -40 to 120' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Maximum temperature value: ',tempmx + write(IOWMSG,'(9X,3A)') 'Valid range is: -40 to 120' + goto 9999 +c + 7014 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Ethanol Mkt Share % value: ', + & ethmkt + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 100' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Ethanol Mkt Share % value: ', + & ethmkt + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 100' + goto 9999 +c + 7015 continue + write(IOWSTD,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Ethanol Blend Vol % value: ', + & ethvpct + write(IOWSTD,'(9X,3A)') 'Valid range is: 0 to 100' + write(IOWMSG,'(/,1X,A,F6.1)',ERR=9999) + & 'ERROR: Invalid Ethanol Blend Vol % value: ', + & ethvpct + write(IOWMSG,'(9X,3A)') 'Valid range is: 0 to 100' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8002 format(F10.0) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdnrper.f b/NONROAD/NR08a/SOURCE/rdnrper.f new file mode 100644 index 0000000..3cc433a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdnrper.f @@ -0,0 +1,494 @@ +C**** RDNRPER +c + subroutine rdnrper( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the /PERIOD/ packet used in the NONROAD program +c +c Argument description. +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 03/29/97 --gwilson-- original development +c 03/15/05 --cimulus-- added growth year +c 03/15/05 --cimulus-- added technology year +c 03/16/05 --cimulus-- added error if technology year +c greater than episode year +c 05/16/05 -cimulus- integrated year-range validation parameters: +c MINYEAR and MAXYEAR +c 05/27/05 -cimulus- increment warning count for growth and tech +c year warnings +c 05/27/05 -cimulus- removed unnecessary warning message from +c tech year error section +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 line + character*20 keywrd, keyin + integer*4 irec, jerr, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- find the PERIOD packet ---- +c + keywrd = '/PERIOD/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7001 +c +c --- get the period type --- +c + irec = 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + keyin = line(21:30) + call lftjst( keyin ) + call low2up( keyin ) +c + iprtyp = 0 + if( keyin(:10) .EQ. PERANN ) iprtyp = IDXANN + if( keyin(:10) .EQ. PERMTH ) iprtyp = IDXMTH + if( keyin(:10) .EQ. PERSES ) iprtyp = IDXSES + if( iprtyp .EQ. 0 ) goto 7003 +c +c --- get type of sum to calculate --- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + keyin = line(21:35) + call lftjst( keyin ) + call low2up( keyin ) +c + ismtyp = 0 + if( keyin(:15) .EQ. SUMTYP ) ismtyp = IDXTYP + if( keyin(:15) .EQ. SUMTOT ) ismtyp = IDXTOT + if( ismtyp .EQ. 0 ) goto 7008 + if( ismtyp .EQ. IDXTOT ) then + ldays(IDXWKD) = .TRUE. + ldays(IDXWKE) = .TRUE. + endif +c +c --- if doing annual inventory, set all month and day flags to on --- +c + if( iprtyp .EQ. IDXANN ) then + do 10 i=1,12 + lmonth(i) = .TRUE. + 10 continue + endif +c +c --- always need to read the episode year ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + read(line(21:30),8001,ERR=7004,END=7002) iepyr + call spinit() +c +c --- adjust the year to be 4 digits, assume less than 50 +c means 21st century --- +c + if( iepyr .LT. 100 ) then + if( iepyr .GT. 50 ) then + iepyr = iepyr + 1900 + else + iepyr = iepyr + 2000 + endif + endif + if( iepyr .LT. MINYEAR .OR. iepyr .GT. MAXYEAR ) goto 7009 +c +c --- if doing a seasonal, read the season specification ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + if( iprtyp .EQ. IDXSES ) then + keyin = line(21:30) + call lftjst( keyin ) + call low2up( keyin ) +c + iseasn = 0 + if( keyin .EQ. SESWTR ) iseasn = IDXWTR + if( keyin .EQ. SESSPR ) iseasn = IDXSPR + if( keyin .EQ. SESSUM ) iseasn = IDXSUM + if( keyin .EQ. SESFAL ) iseasn = IDXFAL + if( iseasn .EQ. 0 ) goto 7005 +c +c --- set the say of year flags and day of week flags for this season --- +c + do 30 i=1,12 + if( idseas(i) .EQ. iseasn ) lmonth(i) = .TRUE. + 30 continue + endif +c +c --- if doing a monthly or daily, read the month specification ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + if( iprtyp .EQ. IDXMTH .OR. lrfg ) then + keyin = line(21:30) + call lftjst( keyin ) + call low2up( keyin ) +c + imonth = 0 + if( keyin .EQ. MONJAN ) imonth = IDXJAN + if( keyin .EQ. MONFEB ) imonth = IDXFEB + if( keyin .EQ. MONMAR ) imonth = IDXMAR + if( keyin .EQ. MONAPR ) imonth = IDXAPR + if( keyin .EQ. MONMAY ) imonth = IDXMAY + if( keyin .EQ. MONJUN ) imonth = IDXJUN + if( keyin .EQ. MONJUL ) imonth = IDXJUL + if( keyin .EQ. MONAUG ) imonth = IDXAUG + if( keyin .EQ. MONSEP ) imonth = IDXSEP + if( keyin .EQ. MONOCT ) imonth = IDXOCT + if( keyin .EQ. MONNOV ) imonth = IDXNOV + if( keyin .EQ. MONDEC ) imonth = IDXDEC + if( imonth .EQ. 0 ) goto 7006 +c +c --- set the flag for this month to on --- +c + lmonth(imonth) = .TRUE. + if( ismtyp .EQ. IDXTOT ) then + ldays(IDXWKD) = .TRUE. + ldays(IDXWKE) = .TRUE. + endif + endif +c +c --- if doing a monthly or daily, read the month specification ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + if( ismtyp .EQ. IDXTYP ) then + keyin = line(21:30) + call lftjst( keyin ) + call low2up( keyin ) +c + iday = 0 + if( keyin .EQ. WEEKDY ) iday = IDXWKD + if( keyin .EQ. WEEKDS ) iday = IDXWKD + if( keyin .EQ. WEEKND ) iday = IDXWKE + if( iday .EQ. 0 ) goto 7007 +c +c --- set the flag for this month to on --- +c + ldays(iday) = .TRUE. + endif +c +c --- always need to read the growth year (although value may +c be blank, in which case it defaults to episode year) ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + keyin = line(21:30) + call lftjst( keyin ) + if( keyin(1:1) .EQ. ' ' ) then ! if blank + igryr = iepyr + else + read(keyin(:10),8001,ERR=7004,END=7002) igryr + endif + call spinit() +c +c --- adjust the growth year to be 4 digits, assume less than 50 +c means 21st century --- +c + if( igryr .LT. 100 ) then + if( igryr .GT. 50 ) then + igryr = igryr + 1900 + else + igryr = igryr + 2000 + endif + endif + if( igryr .LT. MINYEAR .OR. igryr .GT. MAXYEAR ) goto 7010 +c +c --- warn if growth year does not match episode year --- +c + if( igryr .NE. iepyr ) then + write(IOWMSG,8002,ERR=9999) + & 'WARNING: Growth year does not match episode year: ', + & 'Episode Year','Growth Year',iepyr,igryr + nwarn = nwarn + 1 + endif +c +c --- always need to read the technology year (although value may +c be blank, in which case it defaults to episode year) ---- +c + irec = irec + 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + keyin = line(21:30) + call lftjst( keyin ) + if( keyin(1:1) .EQ. ' ' ) then ! if blank + itchyr = iepyr + else + read(keyin(:10),8001,ERR=7004,END=7002) itchyr + endif + call spinit() +c +c --- adjust the technology year to be 4 digits, assume less than 50 +c means 21st century --- +c + if( itchyr .LT. 100 ) then + if( itchyr .GT. 50 ) then + itchyr = itchyr + 1900 + else + itchyr = itchyr + 2000 + endif + endif + if( itchyr .LT. MINYEAR .OR. itchyr .GT. MAXYEAR ) goto 7011 +c +c --- error if technology year greater than episode year --- +c + if( itchyr .GT. iepyr ) goto 7012 +c +c --- warn if technology year does not match episode year --- +c + if( itchyr .NE. iepyr ) then + write(IOWMSG,8002,ERR=9999) + & 'WARNING: Technology year does not match episode year: ', + & 'Episode Year','Technology Year',iepyr,itchyr + nwarn = nwarn + 1 + endif +c +c --- set error flag to success ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'period type flag: -->',line(21:30),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) PERANN + write(IOWSTD,'(15X,A)',ERR=9999) PERMTH + write(IOWSTD,'(15X,A)',ERR=9999) PERSES + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'period type flag: -->',line(21:30),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) PERANN + write(IOWMSG,'(15X,A)',ERR=9999) PERMTH + write(IOWMSG,'(15X,A)',ERR=9999) PERSES + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,I5,/,9X,3A)',ERR=9999) 'ERROR: Reading ', + & 'numeric data field at record ',irec,'of the ', + & keywrd(:strmin(keywrd)),' packet of options file' + write(IOWMSG,'(/,1X,2A,I5,/,9X,3A)',ERR=9999) 'ERROR: Reading ', + & 'numeric data field at record ',irec,'of the ', + & keywrd(:strmin(keywrd)),' packet of options file' + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'season flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) SESWTR + write(IOWSTD,'(15X,A)',ERR=9999) SESSPR + write(IOWSTD,'(15X,A)',ERR=9999) SESSUM + write(IOWSTD,'(15X,A)',ERR=9999) SESFAL + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'season flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) SESWTR + write(IOWMSG,'(15X,A)',ERR=9999) SESSPR + write(IOWMSG,'(15X,A)',ERR=9999) SESSUM + write(IOWMSG,'(15X,A)',ERR=9999) SESFAL + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'month of year flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) MONJAN + write(IOWSTD,'(15X,A)',ERR=9999) MONFEB + write(IOWSTD,'(15X,A)',ERR=9999) MONMAR + write(IOWSTD,'(15X,A)',ERR=9999) MONAPR + write(IOWSTD,'(15X,A)',ERR=9999) MONMAY + write(IOWSTD,'(15X,A)',ERR=9999) MONJUN + write(IOWSTD,'(15X,A)',ERR=9999) MONJUL + write(IOWSTD,'(15X,A)',ERR=9999) MONAUG + write(IOWSTD,'(15X,A)',ERR=9999) MONSEP + write(IOWSTD,'(15X,A)',ERR=9999) MONOCT + write(IOWSTD,'(15X,A)',ERR=9999) MONNOV + write(IOWSTD,'(15X,A)',ERR=9999) MONDEC + if( lrfg ) write(IOWSTD,'(/,5X,3A)',ERR=9999) 'Note: The month ', + & 'of year is a required input when the RFG ', + & 'flag is specified.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'month of year flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) MONJAN + write(IOWMSG,'(15X,A)',ERR=9999) MONFEB + write(IOWMSG,'(15X,A)',ERR=9999) MONMAR + write(IOWMSG,'(15X,A)',ERR=9999) MONAPR + write(IOWMSG,'(15X,A)',ERR=9999) MONMAY + write(IOWMSG,'(15X,A)',ERR=9999) MONJUN + write(IOWMSG,'(15X,A)',ERR=9999) MONJUL + write(IOWMSG,'(15X,A)',ERR=9999) MONAUG + write(IOWMSG,'(15X,A)',ERR=9999) MONSEP + write(IOWMSG,'(15X,A)',ERR=9999) MONOCT + write(IOWMSG,'(15X,A)',ERR=9999) MONNOV + write(IOWMSG,'(15X,A)',ERR=9999) MONDEC + if( lrfg ) write(IOWMSG,'(/,5X,3A)',ERR=9999) 'Note: The month ', + & 'of year is a required input when the RFG ', + & 'flag is specified.' + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'day of week flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) WEEKDY + write(IOWSTD,'(15X,A)',ERR=9999) WEEKDS + write(IOWSTD,'(15X,A)',ERR=9999) WEEKND + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'day of week flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) WEEKDY + write(IOWMSG,'(15X,A)',ERR=9999) WEEKDS + write(IOWMSG,'(15X,A)',ERR=9999) WEEKND + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'type of sum flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) SUMTYP + write(IOWSTD,'(15X,A)',ERR=9999) SUMTOT + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Invalid response to ', + & 'type of sum flag: -->',keyin(:strmin(keyin)),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Valid responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) SUMTYP + write(IOWMSG,'(15X,A)',ERR=9999) SUMTOT + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid episode year value ',iepyr + write(IOWSTD,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + write(IOWMSG,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid episode year value ',iepyr + write(IOWMSG,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid growth year value ',igryr + write(IOWSTD,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + write(IOWMSG,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid growth year value ',igryr + write(IOWMSG,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid technology year value ',itchyr + write(IOWSTD,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + write(IOWMSG,'(/,1X,A,I6)',ERR=9999) + & 'ERROR: Invalid technology year value ',itchyr + write(IOWMSG,'(9X,A,I4,A,I4)') 'Valid range is: ', + & MINYEAR,' to ',MAXYEAR + goto 9999 +c + 7012 continue + write(IOWSTD,8003,ERR=9999) + & 'ERROR: Invalid technology year; cannot be', + & ' greater than episode year', + & 'Episode Year','Technology Year',iepyr,itchyr + write(IOWMSG,8003,ERR=9999) + & 'ERROR: Invalid technology year; cannot be', + & ' greater than episode year', + & 'Episode Year','Technology Year',iepyr,itchyr + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(I10) + 8002 format(/,1X,A,/,T10,A,T30,A,/,T10,I4,T30,I4) + 8003 format(/,1X,A,A,/,T10,A,T30,A,/,T10,I4,T30,I4) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdnrreg.f b/NONROAD/NR08a/SOURCE/rdnrreg.f new file mode 100644 index 0000000..b3bb0e0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdnrreg.f @@ -0,0 +1,278 @@ +**** RDNRREG +c + subroutine rdnrreg( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the /REGION/ packet of the options file for the NONROAD program +c +c Argument description. +c +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 04/21/97 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns index of string in array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 line + character*20 keywrd, keyin + character*10 regin + character*5 fipin + integer*4 idxfip, jerr, irec, i + logical*4 lfound +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- look for /REGION/ packet --- +c + keywrd = '/REGION/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .NE. ISUCES ) goto 7001 +c +c --- read and check the region level flag --- +c + irec = 1 + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + reglvl = line(21:30) + call low2up( reglvl ) + call lftjst( reglvl ) + lfound = .FALSE. + if( reglvl .EQ. USTOT ) lfound = .TRUE. + if( reglvl .EQ. NATION ) lfound = .TRUE. + if( reglvl .EQ. STATE ) lfound = .TRUE. + if( reglvl .EQ. COUNTY ) lfound = .TRUE. + if( reglvl .EQ. SUBCTY ) lfound = .TRUE. + if( .NOT. lfound ) goto 7003 +c +c --- make sure that proper region is set for EPS2 AMS file --- +c + if( lamsfl ) then + if( reglvl .EQ. NATION .OR. reglvl .EQ. STATE .OR. + & reglvl .EQ. USTOT ) then + write(IOWMSG,'(/,1X,3A,/)',ERR=9999) 'WARNING: Cannot ', + & 'produce EPS2 AMS file with region level ',reglvl + nwarn = nwarn + 1 + lamsfl = .FALSE. + endif + endif +c +c -- check for /END/ keyword --- +c + 111 continue + if( reglvl .NE. USTOT .AND. reglvl .NE. NATION ) then + read(IORUSR,8000,ERR=7000,END=7002) line + call spinit() + keyin = line(1:19) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 + regin = line(21:30) + call lftjst( regin ) + nregin = nregin + 1 + if( nregin .GT. MXSUBC ) goto 7007 + reglst(nregin) = regin + regcty(nregin) = regin(1:5)//' ' + endif +c +c --- if the region level is national, then finshed with packet --- +c + if( reglvl .EQ. USTOT ) goto 222 +c +c -- if the region level is type NATION then this should be +c all states --- +c + if( reglvl .EQ. NATION ) then + do 10 i=1,NSTATE + lstacd(i) = .TRUE. + 10 continue + goto 222 + endif +c +c --- if code is national, then check for state level --- +c + fipin = regin(1:5) + if( fipin .EQ. '00000' ) then + if( reglvl .NE. USTOT .AND. reglvl .NE. STATE ) goto 7004 + do 20 i=1,NSTATE + lstacd(i) = .TRUE. + 20 continue +c +c --- check if code is a state code --- +c + else + idxfip = fndchr( fipin, 5, statcd, NSTATE ) + if( idxfip .GT. 0 ) then + if( reglvl .EQ. STATE ) then + lstacd(idxfip) = .TRUE. + else if( reglvl .EQ. COUNTY ) then + lstacd(idxfip) = .TRUE. + do 30 i=idxcty(idxfip),idxcty(idxfip+1)-1 + lfipcd(i) = .TRUE. + 30 continue + else + goto 7004 + endif +c +c --- check if code is a county code --- +c + else + if( reglvl .NE. COUNTY .AND. reglvl .NE. SUBCTY ) goto 7008 + idxfip = fndchr( fipin, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 7006 + lfipcd(idxfip) = .TRUE. + idxfip = fndchr( fipin(1:2)//'000', 5, statcd, NSTATE ) + if( idxfip .GT. 0 ) lstacd(idxfip) = .TRUE. + endif + endif + goto 111 +c +c --- set error flag to success ---- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,A,I5,3A)',ERR=9999) 'ERROR: Reading record', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: This program requires the ', + & keywrd(:strmin( keywrd )),' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,A,/9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,5A)',ERR=9999) 'ERROR: Invalid response to ', + & 'region level flag in /REGION/ packet: -->', + & line(21:30),'<--' + write(IOWSTD,'(9X,A)',ERR=9999) 'Acceptable responses are: ' + write(IOWSTD,'(15X,A)',ERR=9999) USTOT + write(IOWSTD,'(15X,A)',ERR=9999) NATION + write(IOWSTD,'(15X,A)',ERR=9999) STATE + write(IOWSTD,'(15X,A)',ERR=9999) COUNTY + write(IOWSTD,'(15X,A)',ERR=9999) SUBCTY + write(IOWMSG,'(/,1X,5A)',ERR=9999) 'ERROR: Invalid response to ', + & 'region level flag in /REGION/ packet: -->', + & line(21:30),'<--' + write(IOWMSG,'(9X,A)',ERR=9999) 'Acceptable responses are: ' + write(IOWMSG,'(15X,A)',ERR=9999) USTOT + write(IOWMSG,'(15X,A)',ERR=9999) NATION + write(IOWMSG,'(15X,A)',ERR=9999) STATE + write(IOWMSG,'(15X,A)',ERR=9999) COUNTY + write(IOWMSG,'(15X,A)',ERR=9999) SUBCTY + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,5A)',ERR=9999) 'ERROR: In ', + & keywrd(:strmin(keywrd)),' packet.','Cannot supply ', + & 'global FIPS code ',fipin(:strmin(fipin)), + & ' with region level ',reglvl(:strmin(reglvl)) + write(IOWMSG,'(/,1X,3A,/,9X,5A)',ERR=9999) 'ERROR: In ', + & keywrd(:strmin(keywrd)),' packet.','Cannot supply ', + & 'global FIPS code ',fipin(:strmin(fipin)), + & ' with region level ',reglvl(:strmin(reglvl)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,7A)',ERR=9999) 'ERROR: FIPS code ', + & 'supplied in ',keywrd(:strmin(keywrd)),' packet is invalid.', + & ' -->',fipin(:strmin(fipin)),'<--' + write(IOWMSG,'(/,1X,7A)',ERR=9999) 'ERROR: FIPS code ', + & 'supplied in ',keywrd(:strmin(keywrd)),' packet is invalid.', + & ' -->',fipin(:strmin(fipin)),'<--' + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Number of regions in ',keywrd(:strmin(keywrd)), + & ' packet exceeds max ',MXSUBC + write(IOWMSG,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Number of regions in ',keywrd(:strmin(keywrd)), + & ' packet exceeds max ',MXSUBC + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,7A)',ERR=9999) 'ERROR: State FIPS code ', + & 'supplied in ',keywrd(:strmin(keywrd)),' packet is invalid.', + & ' -->',fipin(:strmin(fipin)),'<--' + write(IOWMSG,'(/,1X,7A)',ERR=9999) 'ERROR: State FIPS code ', + & 'supplied in ',keywrd(:strmin(keywrd)),' packet is invalid.', + & ' -->',fipin(:strmin(fipin)),'<--' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdnrsrc.f b/NONROAD/NR08a/SOURCE/rdnrsrc.f new file mode 100644 index 0000000..eb36568 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdnrsrc.f @@ -0,0 +1,191 @@ +C**** RDNRSRC +c + subroutine rdnrsrc( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the /SOURCE CATEGORY/ packet used in the NONROAD program +c +c Argument description. +c +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 04/21/97 --gwilson-- original development +c 07/15/05 --cimulus-- removed 2-digit SCC global matches +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 line + character*20 keywrd, keyin + character*10 ascin + integer*4 irec, jerr, i + logical*4 lmatch +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + lascal = .FALSE. +c +c --- look for /SOURCE CATEGORY/ packet --- +c + keywrd = '/SOURCE CATEGORY/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7000 +c +c --- if packet was not found, flag all source categories --- +c + if( jerr .EQ. IEOF ) then + do 10 i=1,NEQNAM + lascat(i) = .TRUE. + 10 continue + lascal = .TRUE. + goto 222 + endif +c +c --- if packet was found, read the data --- +c + irec = 0 + 111 continue + irec = irec + 1 + read(IORUSR,8000,ERR=7001,END=7002) line + lmatch = .FALSE. +c +c -- check for /END/ keyword --- +c + keyin = line(1:19) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 + ascin = line(21:30) + call lftjst( ascin ) +c +c --- loop over all equipment codes to find codes that match this one --- +c + do 20 i=1,NEQNAM +c +c --- first look for exact match --- +c + if( ascin .EQ. eqpcod(i) ) then + lascat(i) = .TRUE. + lmatch = .TRUE. + goto 111 + endif +c +c --- look for various levels of global codes --- +c + if( ascin(5:10) .EQ. '000000' ) then + if( ascin(1:4) .EQ. eqpcod(i)(1:4) ) then + lascat(i) = .TRUE. + lmatch = .TRUE. + endif + else if( ascin(8:10) .EQ. '000' ) then + if( ascin(1:7) .EQ. eqpcod(i)(1:7) ) then + lascat(i) = .TRUE. + lmatch = .TRUE. + endif + endif + 20 continue +c +c ---- if no match was found, then exit with error --- +c + if( .NOT. lmatch ) goto 7003 + goto 111 +c +c --- set error flag to success ---- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,A,I4,3A)',ERR=9999) 'ERROR: Reading record ', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,A,I4,3A)',ERR=9999) 'ERROR: Reading record ', + & irec,' of the ',keywrd(:strmin(keywrd)), + & ' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) + & 'ERROR: Equipment code found in ', + & keywrd(:strmin(keywrd)),' packet', + & 'of the options file is invalid: -->', + & ascin(:strmin(ascin)),'<--' + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) + & 'ERROR: Equipment code found in ', + & keywrd(:strmin(keywrd)),' packet', + & 'of the options file is invalid: -->', + & ascin(:strmin(ascin)),'<--' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdpop.f b/NONROAD/NR08a/SOURCE/rdpop.f new file mode 100644 index 0000000..5175b1d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdpop.f @@ -0,0 +1,446 @@ +C**** RDPOP +c + subroutine rdpop( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the base year population file and creates a new file with +c just the populations needed for this run. Each population file is +c opened and the data is read from the file. A direct access +c scratch file is written with just the data matching common block +c variables. A string array is created with the information +c needed to sort the data. This array is used to create a file of +c sorted data. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 07/21/96 --jlf-- changing format of population file +c 04/20/97 gwilson revised for BETA version +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdreg.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in an array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local paramneters: +c----------------------------------------------------------------------- +c +c MXPREC I maximum number of records in a state file +c + integer*4 MXPREC +c + parameter( MXPREC = 60000 ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(2*MXSTR) line + character*(MXSTR) fname, scrnam + character*30 srtkey(MXPREC) + character*20 keywrd, keyin + character*10 asctmp + character*5 fiptmp, subtmp, hptmp, hpmntmp, hpmxtmp + character*5 hpavtmp + character*4 yrtmp + integer*4 idxrec(MXPREC), irec, nrecs, idxfip, idxeqp + integer*4 jerr, ifile, i + real*4 hpmin, hpmax, hpavg + logical*4 lfound +c +c----------------------------------------------------------------------- +c Data statements: +c----------------------------------------------------------------------- +c + data scrnam /'popdir.txt'/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + nrecs = 0 +c +c --- open the file that will be used for the sorted population data ---- +c + open(file=spopfl,unit=IOSPOP,ERR=7004,status='UNKNOWN') + endfile(IOSPOP) + rewind(IOSPOP) +c +c --- open the direct access file ---- +c + open(file=scrnam,unit=IOSDIR,form='FORMATTED',status='UNKNOWN', + & access='DIRECT',RECL=2*MXSTR,ERR=7003) +c +c --- loop over all of the population files ---- +c + do 10 ifile=1,npopfl + open(file=popfl(ifile),unit=IORPOP,ERR=7001,status='UNKNOWN') +c +c ---- find the /POPULATION/ keywoed ---- +c + keywrd = '/POPULATION/' + call fndkey( jerr, IORPOP, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read the file ---- +c + 111 continue + read(IORPOP,8001,ERR=7002,END=7009) line + call spinit() + irec = irec + 1 +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- parse the line and load all of the data ---- +c + asctmp = line(18:27) + fiptmp = line(1:5) + subtmp = line(7:11) + yrtmp = line(13:16) + hpmntmp = line(70:74) + read(hpmntmp,'(F5.0)',ERR=7011) hpmin + hpmxtmp = line(76:80) + read(hpmxtmp,'(F5.0)',ERR=7011) hpmax + hpavtmp = line(82:86) +c +c --- left justify and convert to upper case where necessary --- +c + if( hpavtmp .EQ. ' ' ) then + hpavg = (hpmin+hpmax)/2. + else + read(hpavtmp,'(F5.0)',ERR=7002) hpavg + endif + if( hpavg .LT. hpmin .OR. hpavg .GT. hpmax ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'WARNING: Average HP is', + & ' outside the horsepower range.' + write(IOWMSG,'(5X,2(A,10X),A)',ERR=9999) 'Min. HP','Max. HP', + & 'Avg. HP' + write(IOWMSG,'(5X,2(I5,12X),I5)',ERR=9999) INT(hpmin), + & INT(hpmax), INT(hpavg) + write(IOWMSG,'(11X,3A)',ERR=9999) 'Skipping record with ', + & 'SCC code: ',asctmp + call chkwrn(jerr,IDXWPP) + if( jerr .NE. ISUCES ) goto 9999 + goto 111 + endif +c +c --- left justify and convert to upper case where necessary --- +c + call lftjst( fiptmp ) + call lftjst( subtmp ) + call low2up( subtmp ) + call rgtjst( hpmntmp ) + call rgtjst( hpmxtmp ) +c +c --- check to make sure HP categories match the internal defaults ---- +c + lfound = .FALSE. + if( INT(hpmin) .EQ. 0 .AND. INT(hpmax) .EQ. + & INT(hpclev(1)) ) then + lfound = .TRUE. + else if( INT(hpmin) .EQ. INT(hpclev(MXHPC)) ) then + lfound = .TRUE. + else + do 20 i=1,MXHPC-1 + if( INT(hpmin) .EQ. INT(hpclev(i)) .AND. + & INT(hpmax) .EQ. INT(hpclev(i+1)) ) lfound = .TRUE. + 20 continue + endif + if( .NOT. lfound ) goto 7010 +c +c --- if national estimates and not doing national inventory, skip it --- +c + if( fiptmp(1:5) .EQ. '00000' ) then + if( reglvl .EQ. COUNTY .AND. reglvl .NE. SUBCTY ) goto 111 + endif +c +c --- if doing a US total run and this is not a national record, skip it ---- +c + if( reglvl .EQ. USTOT .AND. fiptmp(1:5) .NE. '00000' ) goto 111 +c +c --- if sub-county estimates, check if we need this county --- +c + if( reglvl .EQ. SUBCTY ) then + idxfip = fndchr( fiptmp, 5, fipcod, NCNTY ) + if( idxfip .EQ. 0 ) goto 111 + if( .NOT. lfipcd(idxfip) ) goto 111 + endif +c +c --- if state estimates, check that we need this state --- +c + if( fiptmp(1:2) .NE. '00' ) then + if( fiptmp(3:5) .EQ. '000' ) then + idxfip = fndchr( fiptmp, 5, statcd, NSTATE ) + if( idxfip .LE. 0 ) goto 111 + if( .NOT. lstacd(idxfip) ) goto 111 +c +c --- if county estimates --- +c + else + idxfip = fndchr( fiptmp, 5, fipcod, NCNTY ) + if( idxfip .LE. 0 ) goto 111 + if( .NOT. lfipcd(idxfip) ) goto 111 + endif + endif +c +c --- if equipment type is not requested, skip it --- +c + idxeqp = fndchr( asctmp, 10, eqpcod, NEQNAM ) + if( idxeqp .LE. 0 ) then + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'WARNING: Invalid SCC ', + & 'code read from population file: ', + & popfl(ifile)(:strmin(popfl(ifile))) + write(IOWMSG,'(11X,3A)',ERR=9999) 'Skipping record with ', + & 'SCC code: ',asctmp + call chkwrn(jerr,IDXWPP) + if( jerr .NE. ISUCES ) goto 9999 + goto 111 + endif + if( .NOT. lascat(idxeqp) ) goto 111 +c +c --- load the data into sort key array --- +c + ntotrc = ntotrc + 1 + nrecs = nrecs + 1 + if( nrecs .GT. MXPREC ) goto 7005 + write(hptmp,'(I5)') nint(hpavg) + srtkey(nrecs) = asctmp//hptmp//fiptmp//subtmp//yrtmp +c +c --- write the data record to direct access file ---- +c + write(IOSDIR,'(A)',ERR=7006,REC=nrecs) line +c +c --- get the next record --- +c + goto 111 +c +c --- read the next file --- +c + 222 continue + close(IORPOP) +c +c --- read all of the records for this file, call routine to sort +c the keys --- +c + 10 continue +c +c --- read all of the records for this file, call routine to sort +c the keys --- +c + if( nrecs .GT. 0 ) then + call chrsrt( srtkey, 30, nrecs, idxrec ) + call spinit() + else + ierr = IEOF + goto 9999 + endif +c +c --- loop over the records and write each record to +c the sorted scratch file ---- +c + do 30 i=1,nrecs + read(IOSDIR,'(A)',ERR=7007,REC=idxrec(i)) line + call spinit() + write(IOSPOP,'(A)',ERR=7008) line + 30 continue +c +c --- close the direct access file, and delete it --- +c + close(IOSDIR,status='DELETE') +c +c --- processed all of the files, write the end keyword --- +c + line = ' ' + line(18:27) = KEYEND + write(IOSPOP,'(A)',ERR=7008) line + rewind(IOSPOP) + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),'packet of population file ', + & popfl(ifile)(:strmin(popfl(ifile))) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),'packet of population file ', + & popfl(ifile)(:strmin(popfl(ifile))) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Opening population ', + & 'file ',popfl(ifile)(:strmin(popfl(ifile))) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Opening population ', + & 'file ',popfl(ifile)(:strmin(popfl(ifile))) + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Reading ', + & 'population file ',fname(:strmin(fname)), + & ' at record ',irec + write(IOWMSG,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Reading ', + & 'population file ',fname(:strmin(fname)), + & ' at record ',irec + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Cannot open ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted populations ',spopfl(:strmin(spopfl)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot open scratch ', + & 'file used for sorted populations ',spopfl(:strmin(spopfl)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,2A,I10)',ERR=9999) 'ERROR: Number of ', + & 'population records excceds max ',MXPREC + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'Reduce the number of ', + & 'population files or population records.' + write(IOWMSG,'(/,1X,2A,I10)',ERR=9999) 'ERROR: Number of ', + & 'population records excceds max ',MXPREC + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'Reduce the number of ', + & 'population files or population records.' + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Writing ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Writing ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & 'direct-access file used for sorting ', + & scrnam(:strmin(scrnam)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Writing scratch ', + & 'file used for sorted populations ', + & spopfl(:strmin(spopfl)) + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Writing scratch ', + & 'file used for sorted populations ', + & spopfl(:strmin(spopfl)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,A,/9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'population file ',popfl(ifile)(:strmin(popfl(ifile))) + write(IOWMSG,'(/,1X,A,/9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'population file ',popfl(ifile)(:strmin(popfl(ifile))) + goto 9999 +c + 7010 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: HP range in ', + & 'population file does not match internal default ranges.' + write(IOWSTD,'(10X,3A)',ERR=9999) ' County ',' SCC ', + & ' HP Range ' + write(IOWSTD,'(12X,A5,3X,A10,5X,I6,I6)') fiptmp, asctmp, + & INT(hpmin), INT(hpmax) + write(IOWSTD,'(/,12X,A)') 'Valid ranges are: ' + write(IOWSTD,'(16X,I4,A,I4)') 0, ' -- ',INT(hpclev(1)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: HP range in ', + & 'population file does not match internal default ranges.' + write(IOWMSG,'(10X,3A)',ERR=9999) ' County ',' SCC ', + & ' HP Range ' + write(IOWMSG,'(12X,A5,3X,A10,5X,I6,I6)') fiptmp, asctmp, + & INT(hpmin), INT(hpmax) + write(IOWMSG,'(/,12X,A)') 'Valid ranges are: ' + write(IOWMSG,'(16X,I4,A,I4)') 0, ' -- ',INT(hpclev(1)) + do 50 i=1,MXHPC-1 + write(IOWSTD,'(16X,I4,A,I4)') INT(hpclev(i)), ' -- ', + & INT(hpclev(i+1)) + write(IOWMSG,'(16X,I4,A,I4)') INT(hpclev(i)), ' -- ', + & INT(hpclev(i+1)) + 50 continue + write(IOWSTD,'(16X,A,I4)') ' > ',INT(hpclev(MXHPC)) + write(IOWMSG,'(16X,A,I4)') ' > ',INT(hpclev(MXHPC)) + goto 9999 +c + 7011 continue + write(IOWSTD,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Reading ', + & 'HP range from population file ',fname(:strmin(fname)), + & ' at record ',irec + write(IOWSTD,'(10X,A,/,A)',ERR=9999) 'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,4A,I10)',ERR=9999) 'ERROR: Reading ', + & 'HP range from population file ',fname(:strmin(fname)), + & ' at record ',irec + write(IOWMSG,'(10X,A,/,A)',ERR=9999) 'Line read: ', + & line(:strmin(line)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8001 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdrgndf.f b/NONROAD/NR08a/SOURCE/rdrgndf.f new file mode 100644 index 0000000..250c68a --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdrgndf.f @@ -0,0 +1,200 @@ +C**** RDRGNDF +c + subroutine rdrgndf( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the region definition. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/22/97 --mmj-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of a string in an array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(200) line + character*20 keywrd, keyin + character*5 sttmp, rgdtmp + integer*4 irec, jerr, i, idxreg +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + nregcd = 0 +c +c --- open the file --- +c + open(IORREG,file=regfl,ERR=7005,status='UNKNOWN') + rewind(IORREG) +c +c --- initialize states per region counter --- +c + do 10 i=1,MXREGN + isttcnt(i) = 0 + 10 continue +c +c --- call routine to find the /REGIONS/ packet ---- +c + keywrd = '/REGIONS/' + call fndkey( jerr, IORREG, keywrd ) + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(IORREG,8000,ERR=7001,END=7002) line + call spinit() +c +c --- check for the end keyword --- +c + keyin = line(1:10) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- parse the line --- +c + rgdtmp = line(1:5) + call low2up( rgdtmp ) + call lftjst( rgdtmp ) + idxreg = fndchr( rgdtmp, 5, rgdfcd, nregcd ) + if( idxreg .LE. 0 ) then + nregcd = nregcd + 1 + if( nregcd .GT. MXREGN ) goto 7003 + rgdfcd(nregcd) = rgdtmp + idxreg = nregcd + endif +c +c --- check number of maximum region definitions --- +c + sttmp = line(46:50) + isttcnt(idxreg) = isttcnt(idxreg) + 1 + if ( isttcnt(idxreg) .GT. MXREGN ) goto 7004 + rgstt(idxreg,isttcnt(idxreg)) = sttmp +c +c --- get the next record --- +c + goto 111 +c +c --- finished reading file, close it and return --- +c + 222 continue + close(IORREG) + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)),' packet', + & 'of region definition file ', regfl(:strmin(regfl)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)),' packet', + & 'of region definition file ', regfl(:strmin(regfl)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1x,3A,I5)',ERR=9999) + & 'ERROR: Reading region definition file: ', + & regfl(:strmin(regfl)),' at record: ',irec + write(IOWMSG,'(/,1x,3A,I5)',ERR=9999) + & 'ERROR: Reading region definition file: ', + & regfl(:strmin(regfl)),' at record: ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'region definition file: ',regfl(:strmin(regfl)) + write(IOWMSG,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'region definition file: ',regfl(:strmin(regfl)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A,I5)',ERR=9999) + & 'ERROR: Number of regions in ',keywrd(:strmin(keywrd)), + & ' packet','of regions definition file: ',regfl(:strmin(regfl)), + & ' exceeds max: ',MXREGN + write(IOWMSG,'(/,1X,3A,/,9X,3A,I5)',ERR=9999) + & 'ERROR: Number of regions in ',keywrd(:strmin(keywrd)), + & ' packet','of regions definition file: ',regfl(:strmin(regfl)), + & ' exceeds max: ',MXREGN + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,/,9X,3A,I5)',ERR=9999) + & 'ERROR: Number of states for region ',rgdfcd(idxreg), + & 'in region definition file: ',regfl(:strmin(regfl)), + & ' exceeds max: ',MXREGN + write(IOWMSG,'(/,1X,2A,/,9X,3A,I5)',ERR=9999) + & 'ERROR: Number of states for region ',rgdfcd(idxreg), + & 'in region definition file: ',regfl(:strmin(regfl)), + & ' exceeds max: ',MXREGN + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & regfl(:strmin(regfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & regfl(:strmin(regfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdrtrft.f b/NONROAD/NR08a/SOURCE/rdrtrft.f new file mode 100644 index 0000000..ded680d --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdrtrft.f @@ -0,0 +1,710 @@ +C**** RDRTRFT +c + subroutine rdrtrft( ierr ) +c +c----------------------------------------------------------------------- +c +c If necessary, reads the retrofit input file, into the global +c arrays of retrofit parameters. +c +c Skips any records that would have no effect due to retrofit-year +c or model-year range (i.e., if evaluation year < retrofit year +c start or evaluation year < model year start), or SCC (i.e., if +c SCC not requested for the model run. Assumes the global iepyr +c variable has been set to be able to do this. +c +c Executes field level, record level, and record-set level +c validation on the retrofit input. If an error condition occurs, +c writes an error message to standard out and the message file, and +c returns IFAIL. If a warning condition occurs, writes a warning +c message to standard out and the message file. +c +c Argument declaration +c Outputs: +c ierr I error flag +c Inputs: +c (none) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/26/05 -cimulus- original development +c 05/27/05 -cimulus- more specific floating point format +c specifications +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c fndchr I returns the index of string in array of strings +c chkasc L returns true if SCC code is needed for current run +c vldrtrftscc L returns true if valid retrofit scc +c vldrtrfttchtyp L returns true if valid retrofit tech type +c vldrtrfthp L returns true if valid retrofit HP +c cnthpcat I returns count of HP categories defined by HP range +c vldrtrftrecs L returns true if valid retrofit record-set +c + integer*4 strmin + integer*4 fndchr + logical*4 chkasc + logical*4 vldrtrftscc + logical*4 vldrtrfttchtyp + logical*4 vldrtrfthp + integer*4 cnthpcat + logical*4 vldrtrftrecs +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*300 errprefix ! common prefix for error messages + character*300 wrnprefix ! common prefix for warning messages + logical*4 didopenfile + character*20 keywrd + character*20 keytmp + integer*4 jerr + logical*4 done + integer*4 irec + character*100 line + character*20 fldnm ! field name for error messages + integer*4 ryst + integer*4 ryen + integer*4 myst + integer*4 myen + character*10 scc + character*10 techtype + real*4 hpmn + real*4 hpmx + real*4 annualfracorn + real*4 effect + character*10 pollutant + integer*4 plltntidx + integer*4 id + real*4 hp ! HP for error messages + character*20 hpnm ! HP name for error messages + integer*4 yr1 ! year 1 for error messages + integer*4 yr2 ! year 2 for error messages + character*20 yrnm1 ! year name 1 for error messages + character*20 yrnm2 ! year name 2 for error messages + integer*4 mnyr ! minimum year for error messages + integer*4 mxyr ! maximum year for error messages + logical*4 shouldskip + character*500 skipreason +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- common prefixes for messages --- +c + write(errprefix,'(3A)',ERR=9999) + & 'ERROR: Reading retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)),' at record: ' + write(wrnprefix,'(3A)',ERR=9999) + & 'WARNING: Reading retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)),' at record: ' +c +c --- initialize retrofit variables --- +c + call initrtrft() +c +c --- skip if there is no retrofit file --- +c + didopenfile = .FALSE. + if( .NOT. lrtrftfl ) then + goto 999 ! go to successful end + endif +c +c --- open the retrofit input file --- +c + open(IORTRFT,file=rtrftfl,ERR=7000,status='UNKNOWN') + rewind(IORTRFT) + didopenfile = .TRUE. +c +c --- call routine to find the /RETROFIT/ keyword --- +c + keywrd = '/RETROFIT/' + call fndkey(jerr, IORTRFT, keywrd ) + if( jerr .NE. ISUCES ) goto 7001 +c +c --- read each retrofit record from the packet --- +c + done = .FALSE. + irec = 0 + do while ( .NOT. done ) +c +c --- read record as a character string --- +c + irec = irec + 1 + read(IORTRFT,'(A)',ERR=7002,END=7003) line + call spinit() +c +c --- look for /END/ keyword --- +c + keytmp = line(1:strmin(KEYEND)) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) then + done = .TRUE. + cycle + endif +c +c --- check for maximum records exceeded --- +c + if( irec .GT. MXRTRFT ) then + goto 7015 + endif +c +c --- parse the character string into the retrofit fields --- +c + fldnm = 'Retrofit Year Start' + read(line(1:4),'(I4)',ERR=7004) ryst +c + fldnm = 'Retrofit Year End' + read(line(6:9),'(I4)',ERR=7004) ryen +c + fldnm = 'Model Year Start' + read(line(11:14),'(I4)',ERR=7004) myst +c + fldnm = 'Model Year End' + read(line(16:19),'(I4)',ERR=7004) myen +c + fldnm = 'SCC' + scc = line(21:30) + call lftjst(scc) + call low2up(scc) +c + fldnm = 'Tech Type' + techtype = line(32:41) + call lftjst(techtype) + call low2up(techtype) +c + fldnm = 'Minimum HP' + read(line(43:47),'(F5.0)',ERR=7004) hpmn +c + fldnm = 'Maximum HP' + read(line(48:52),'(F5.0)',ERR=7004) hpmx +c + fldnm = 'Annual Fraction or N' + read(line(54:71),'(F18.0)',ERR=7004) annualfracorn +c + fldnm = 'Effectiveness' + read(line(73:78),'(F6.0)',ERR=7004) effect +c + fldnm = 'Pollutant' + pollutant = line(80:89) + call lftjst(pollutant) + call low2up(pollutant) +c + fldnm = 'ID' + read(line(91:95),'(I5)',ERR=7004) id +c +c --- validate retrofit year start --- +c + if( ryst .LT. MINRTRFTYEAR .OR. ryst .GT. MAXRTRFTYEAR ) then + yrnm1 = 'retrofit year start' + yr1 = ryst + mnyr = MINRTRFTYEAR + mxyr = MAXRTRFTYEAR + goto 7005 + endif +c +c --- validate retrofit year end --- +c + if( ryen .LT. MINRTRFTYEAR .OR. ryen .GT. MAXRTRFTYEAR ) then + yrnm1 = 'retrofit year end' + yr1 = ryen + mnyr = MINRTRFTYEAR + mxyr = MAXRTRFTYEAR + goto 7005 + endif +c +c --- validate retrofit year range --- +c + if( ryst .GT. ryen ) then + yrnm1 = 'retrofit year start' + yr1 = ryst + yrnm2 = 'retrofit year end' + yr2 = ryen + goto 7006 + endif +c +c --- validate model year start --- +c + if( myst .LT. MINRTRFTMDLYEAR + & .OR. myst .GT. MAXRTRFTMDLYEAR ) then + yrnm1 = 'model year start' + yr1 = myst + mnyr = MINRTRFTMDLYEAR + mxyr = MAXRTRFTMDLYEAR + goto 7005 + endif +c +c --- validate model year end --- +c + if( myen .LT. MINRTRFTMDLYEAR + & .OR. myen .GT. MAXRTRFTMDLYEAR ) then + yrnm1 = 'model year end' + yr1 = myen + mnyr = MINRTRFTMDLYEAR + mxyr = MAXRTRFTMDLYEAR + goto 7005 + endif +c +c --- validate model year range --- +c + if( myst .GT. myen ) then + yrnm1 = 'model year start' + yr1 = myst + yrnm2 = 'model year end' + yr2 = myen + goto 7006 + endif +c +c --- validate SCC --- +c + if( .NOT. vldrtrftscc(scc) ) then + goto 7007 + endif +c +c --- validate tech type --- +c + if( .NOT. vldrtrfttchtyp(techtype) ) then + goto 7008 + endif +c +c --- validate minimum HP (non-inclusive) --- +c + if( .NOT. vldrtrfthp(hpmn) ) then + hp = hpmn + hpnm = 'minimum HP' + goto 7009 + endif +c +c --- validate maximum HP (inclusive) --- +c + if( .NOT. vldrtrfthp(hpmx) ) then + hp = hpmx + hpnm = 'maximum HP' + goto 7009 + endif +c +c --- validate HP range --- +c + if( hpmn .GE. hpmx ) then + goto 7010 + endif +c +c --- validate annual fraction or N --- +c + if( annualfracorn < 0. ) then + goto 7011 + endif +c +c --- validate effectiveness --- +c + if( effect .LT. 0. .OR. effect .GT. 1. ) then + goto 7012 + endif +c +c --- validate pollutant --- +c + plltntidx = fndchr(pollutant, 10, rtrftplltnt, NRTRFTPLLTNT) + if( plltntidx .EQ. 0 ) then + goto 7013 + endif +c +c --- validate ID --- +c + if( id .LE. 0 ) then + goto 7014 + endif +c +c --- skip records that would have no effect (evaluation year +c < retrofit year start, evaluation year < model year start, +c or SCC not requested for this run) --- +c + shouldskip = .FALSE. + if( iepyr .LT. ryst ) then + shouldskip = .TRUE. + write(skipreason,'(2(A,I4))',ERR=9999) + & 'Skipping retrofit record: Evaluation year ', + & iepyr,' less than retrofit year start ',ryst + else if( iepyr .LT. myst ) then + shouldskip = .TRUE. + write(skipreason,'(2(A,I4))',ERR=9999) + & 'Skipping retrofit record: Evaluation year ', + & iepyr,' less than model year start ',myst + else if( scc .NE. RTRFTSCCALL + & .AND. .NOT. chkasc(scc, .TRUE.) ) then + shouldskip = .TRUE. + write(skipreason,'(3A)',ERR=9999) + & 'Skipping retrofit record: SCC ', + & scc(:strmin(scc)),' not requested for this run' + endif +c +c --- if skipping the record --- +c + if( shouldskip ) then +c +c --- log a warning --- +c + write(IOWSTD,8100,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & skipreason(:strmin(skipreason)) + if( lmsgfl ) then + write(IOWMSG,8100,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & skipreason(:strmin(skipreason)) + endif +c +c --- else not skipping the record --- +c + else +c +c --- if retrofitting N units instead of a fraction and the +c retrofit affects more than one retrofit year, model +c year, SCC (i.e., "ALL", 4-digit or 7-digit global), +c tech type (i.e., "ALL"), and/or HP category, +c log a warning --- +c + if( annualfracorn .GT. 1. + & .AND. ( ryst .NE. ryen .OR. myst .NE. myen + & .OR. scc .EQ. RTRFTSCCALL + & .OR. scc(5:10) .EQ. '000000' + & .OR. scc(8:10) .EQ. '000' + & .OR. techtype .EQ. RTRFTTCHTYPALL + & .OR. cnthpcat(hpmn, hpmx) .GT. 1 ) ) then + write(IOWSTD,8102,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & 'N units retrofitted for more than one ', + & 'retrofit year, model year, SCC, ', + & 'tech type, and/or HP category' + if( lmsgfl ) then + write(IOWMSG,8102,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & 'N units retrofitted for more than one ', + & 'retrofit year, model year, SCC, ', + & 'tech type, and/or HP category' + endif + endif +c +c --- increment count of retrofit records and +c populate new index in the retrofit-record arrays --- +c + rtrftcount = rtrftcount + 1 + rtrftrec(rtrftcount) = irec + rtrftryst(rtrftcount) = ryst + rtrftryen(rtrftcount) = ryen + rtrftmyst(rtrftcount) = myst + rtrftmyen(rtrftcount) = myen + rtrftscc(rtrftcount) = scc + rtrfttechtype(rtrftcount) = techtype + rtrfthpmn(rtrftcount) = hpmn + rtrfthpmx(rtrftcount) = hpmx + rtrftannualfracorn(rtrftcount) = annualfracorn + rtrfteffect(rtrftcount) = effect + rtrftpollutant(rtrftcount) = pollutant + rtrftplltntidx(rtrftcount) = plltntidx + rtrftid(rtrftcount) = id + endif + end do +c +c --- if no retrofit records read, log warning and exit successfully --- +c + if( rtrftcount .EQ. 0 ) then + write(IOWSTD,8101,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & 'No retrofit records read' + if( lmsgfl ) then + write(IOWMSG,8101,ERR=9999) + & wrnprefix(:strmin(wrnprefix)),irec, + & 'No retrofit records read' + endif + goto 999 ! go to successful end + endif +c +c --- record-set-level validation --- +c + if( .NOT. vldrtrftrecs() ) then + goto 9999 ! go to end without success + endif +c +c --- sort the record-set --- +c + call srtrtrft(2, 1, rtrftcount) +c +c --- set error code to sucess and return --- +c + 999 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,8000,ERR=9999) + & 'ERROR: Opening retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)) + if( lmsgfl ) then + write(IOWMSG,8000,ERR=9999) + & 'ERROR: Opening retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)) + endif + goto 9999 +c + 7001 continue + write(IOWSTD,8001,ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)),' packet of retrofit data file ', + & rtrftfl(:strmin(rtrftfl)) + if( lmsgfl ) then + write(IOWMSG,8001,ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of retrofit data file ', + & rtrftfl(:strmin(rtrftfl)) + endif + goto 9999 +c + 7002 continue + write(IOWSTD,8002,ERR=9999) + & errprefix(:strmin(errprefix)),irec + if( lmsgfl ) then + write(IOWMSG,8002,ERR=9999) + & errprefix(:strmin(errprefix)),irec + endif + goto 9999 +c + 7003 continue + write(IOWSTD,8003,ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'retrofit data file ',rtrftfl(:strmin(rtrftfl)) + if( lmsgfl ) then + write(IOWMSG,8003,ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'retrofit data file ',rtrftfl(:strmin(rtrftfl)) + endif + goto 9999 +c + 7004 continue + write(IOWSTD,8004,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Field: ',fldnm(:strmin(fldnm)), + & 'Line read: ',line(:strmin(line)) + if( lmsgfl ) then + write(IOWMSG,8004,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Field: ',fldnm(:strmin(fldnm)), + & 'Line read: ',line(:strmin(line)) + endif + goto 9999 +c + 7005 continue + write(IOWSTD,8005,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',yrnm1(:strmin(yrnm1)),' value ',yr1, + & 'Valid range is: ',mnyr,' to ',mxyr + if( lmsgfl ) then + write(IOWMSG,8005,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',yrnm1(:strmin(yrnm1)),' value ',yr1, + & 'Valid range is: ',mnyr,' to ',mxyr + endif + goto 9999 +c + 7006 continue + write(IOWSTD,8006,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',yrnm1(:strmin(yrnm1)),' value ',yr1, + & 'Must be less than or equal to ', + & yrnm2(:strmin(yrnm2)),' value ',yr2 + if( lmsgfl ) then + write(IOWMSG,8006,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',yrnm1(:strmin(yrnm1)),' value ',yr1, + & 'Must be less than or equal to ', + & yrnm2(:strmin(yrnm2)),' value ',yr2 + endif + goto 9999 +c + 7007 continue + write(IOWSTD,8007,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid SCC value ',scc(:strmin(scc)), + & 'Unknown SCC' + if( lmsgfl ) then + write(IOWMSG,8007,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid SCC value ',scc(:strmin(scc)), + & 'Unknown SCC' + endif + goto 9999 +c + 7008 continue + write(IOWSTD,8008,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid tech type value ', + & techtype(:strmin(techtype)), + & 'Unknown tech type' + if( lmsgfl ) then + write(IOWMSG,8008,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid tech type value ', + & techtype(:strmin(techtype)), + & 'Unknown tech type' + endif + goto 9999 +c + 7009 continue + write(IOWSTD,8009,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',hpnm(:strmin(hpnm)),' value ',hp, + & 'Unknown HP level' + if( lmsgfl ) then + write(IOWMSG,8009,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ',hpnm(:strmin(hpnm)),' value ',hp, + & 'Unknown HP level' + endif + goto 9999 +c + 7010 continue + write(IOWSTD,8010,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid minimum HP value ',hpmn, + & 'Must be less than maximum HP value ',hpmx + if( lmsgfl ) then + write(IOWMSG,8010,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid minimum HP value ',hpmn, + & 'Must be less than maximum HP value ',hpmx + endif + goto 9999 +c + 7011 continue + write(IOWSTD,8011,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid annual fraction or N value ', + & annualfracorn, + & 'Must be greater than or equal to 0' + if( lmsgfl ) then + write(IOWMSG,8011,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid annual fraction or N value ', + & annualfracorn, + & 'Must be greater than or equal to 0' + endif + goto 9999 +c + 7012 continue + write(IOWSTD,8012,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid effectiveness value ',effect, + & 'Must be between 0 and 1' + if( lmsgfl ) then + write(IOWMSG,8012,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid effectiveness value ',effect, + & 'Must be between 0 and 1' + endif + goto 9999 +c + 7013 continue + write(IOWSTD,8013,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid pollutant value ', + & pollutant(:strmin(pollutant)), + & 'Not a valid retrofit pollutant' + if( lmsgfl ) then + write(IOWMSG,8013,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid pollutant value ', + & pollutant(:strmin(pollutant)), + & 'Not a valid retrofit pollutant' + endif + goto 9999 +c + 7014 continue + write(IOWSTD,8014,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ID value ',id, + & 'Must be greater than 0' + if( lmsgfl ) then + write(IOWMSG,8014,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Invalid ID value ',id, + & 'Must be greater than 0' + endif + goto 9999 +c + 7015 continue + write(IOWSTD,8015,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Maximum retrofit record count of ', + & MXRTRFT,' exceeded' + if( lmsgfl ) then + write(IOWMSG,8015,ERR=9999) + & errprefix(:strmin(errprefix)),irec, + & 'Maximum retrofit record count of ', + & MXRTRFT,' exceeded' + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(/,1X,2A) + 8001 format(/,1X,4A) + 8002 format(/,1X,A,I6) + 8003 format(/,1X,4A) + 8004 format(/,1X,A,I6,/,6X,2A,/,6X,2A) + 8005 format(/,1X,A,I6,/,6X,3A,I4,/,6X,A,I4,A,I4) + 8006 format(/,1X,A,I6,/,6X,3A,I4,/,6X,3A,I4) + 8007 format(/,1X,A,I6,/,6X,2A,/,6X,A) + 8008 format(/,1X,A,I6,/,6X,2A,/,6X,A) + 8009 format(/,1X,A,I6,/,6X,3A,F5.0,/,6X,A) + 8010 format(/,1X,A,I6,/,6X,A,F5.0,/,6X,A,F5.0) + 8011 format(/,1X,A,I6,/,6X,A,F18.3,/,6X,A) + 8012 format(/,1X,A,I6,/,6X,A,F6.3,/,6X,A) + 8013 format(/,1X,A,I6,/,6X,2A,/,6X,A) + 8014 format(/,1X,A,I6,/,6X,A,I5,/,6X,A) + 8015 format(/,1X,A,I6,/,6X,A,I5,A) + 8100 format(/,1X,A,I6,/,6X,A,/) + 8101 format(/,1X,A,I6,/,6X,3A,/) + 8102 format(/,1X,A,I6,/,6X,3A,/) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + if( didopenfile ) then + close(IORTRFT) + endif + return + end diff --git a/NONROAD/NR08a/SOURCE/rdscrp.f b/NONROAD/NR08a/SOURCE/rdscrp.f new file mode 100644 index 0000000..40e0aa5 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdscrp.f @@ -0,0 +1,177 @@ +C**** RDSCRP +c + subroutine rdscrp( ierr, iounit, fname ) +c +c----------------------------------------------------------------------- +c +c reads the discretized scrappage curve and stores the data in +c common to be used by the EPA Nonroad model. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c iounit I unit number of file to read +c fname C name of file to be read +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/25/95 --gmw-- original development +c 04/05/05 --cimulus-- default percent scrapped to 100.0 and +c allow up to MXSCRP values instead of +c MXSCRP - 1 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(MXSTR) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line + character*20 keywrd, keytmp + integer*4 irec, jerr, ncount, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 1 + ncount = 0 +c +c --- initialize the scrappage values --- +c + do 10 i=1,MXSCRP + scpbin(i) = 2.5 + scppct(i) = 100.0 ! any bin values beyond end of scrappage curve from file are fully scrapped + 10 continue +c +c --- call routine to find the /SCRAPPAGE/ keyword ---- +c + keywrd = '/SCRAPPAGE/' + call fndkey(jerr, iounit, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 9999 + endif + if( jerr .NE. ISUCES ) goto 7000 +c +c --- read a record as a character string --- +c + 111 continue + read(iounit,8000,ERR=7001,END=222) line + call spinit() + irec = irec + 1 +c +c --- search for the end of the packet --- +c + keytmp = line(1:10) + call lftjst( keytmp ) + call low2up( keytmp ) + if( keytmp .EQ. KEYEND ) goto 222 +c +c --- increment record count and finish if gone past maximum --- +c + ncount = ncount + 1 + if( ncount .GT. MXSCRP ) goto 222 +c +c --- read the data and store it in common arrays --- +c + read(line,8001,ERR=7002) scpbin(ncount), scppct(ncount) + call spinit() +c +c --- make sure the file is ordered correctly --- +c + if( ncount .GT. 1 ) then + if( scpbin(ncount) .LT. scpbin(ncount-1) ) goto 7003 + endif +c +c --- read the next record --- +c + goto 111 +c +c --- finished reading file --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Reading growth file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Reading growth file ', + & fname(:strmin(fname)) + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1x,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file.', + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1x,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of growth file.', + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & ' packet of growth file is not ordered correctly.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Data in ',keywrd(:strmin(keywrd)), + & ' packet of growth file is not ordered correctly.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) + 8001 format(2F10.0) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdseas.f b/NONROAD/NR08a/SOURCE/rdseas.f new file mode 100644 index 0000000..49827c7 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdseas.f @@ -0,0 +1,280 @@ +C**** RDSEAS +c + subroutine rdseas( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the seasonality file and stores the data in common +c to be used by the NONROAD program. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 12/06/95 --djk-- modified for epaoffroad +c 07/20/96 --jlf-- added subregion code for hourly and daily +c temporal factors +c 03/04/97 --gwilson-- removed the hourly values +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdtpl.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(3*MXSTR) line + character*(MXSTR) keywrd + character*10 asctmp + character*5 sbrtmp + integer*4 irec, jerr, i + real*4 valtmp(MXHOUR), summth, sumday +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + ntplmn = 0 + ntplcd = 0 +c +c --- open the file --- +c + open(IORSES,file=sesfl,ERR=7002,status='UNKNOWN') + rewind(IORSES) +c +c --- find /MONTHLY/ keyword ---- +c + keywrd = '/MONTHLY/' + call fndkey( jerr, IORSES, keywrd ) + if( jerr .EQ. IRDERR ) goto 9999 + if( jerr .NE. ISUCES ) then + write(IOWMSG,'(/,1X,4A)') 'WARNING: Could not find ', + & keywrd(:strmin(keywrd)),' packet of seasonality file ', + & sesfl(:strmin(sesfl)) + write(IOWMSG,'(11X,3A)') 'Default values will be used for ', + & 'all equipment.' + nwarn = nwarn + 1 + goto 222 + endif +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(IORSES,8000,ERR=7001,END=222)line + call spinit() +c +c --- check for /END/ keyword --- +c + keywrd = line + call lftjst( keywrd ) + call low2up( keywrd ) + if( keywrd(:5) .EQ. KEYEND ) goto 222 +c +c --- parse the character string ---- +c + sbrtmp = line(1:5) + asctmp = line(7:16) + read(line,'(51X,12F10.0)',ERR=7003) (valtmp(i),i=1,MXMTH) +c +c --- renormalize the monthly factors to make sure they add to +c one, write warning if more than 5% error --- + + summth = 0. + do 50 i=1,MXMTH + summth = summth + valtmp(i) + 50 continue + if( ABS(summth-1.0) .GT. 0.05 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'WARNING: Monthly ', + & 'seasonality factors do not add to 1. Renormalizing...' + write(IOWMSG,'(12X,3(A,3X))') 'Region','Equipment', + & 'Original Sum' + write(IOWMSG,'(13X,A,3X,A,4X,F8.4)') sbrtmp, asctmp, summth + call chkwrn(jerr,IDXWSE) + if( jerr .NE. ISUCES ) goto 9999 + endif + do 60 i=1,MXMTH + if( summth .GT. 0. ) valtmp(i) = valtmp(i) / summth + 60 continue +c +c --- increment monthly array counter and initialize --- +c + ntplmn = ntplmn + 1 + if( ntplmn .GT. MXTASC ) goto 7004 + asctpm(ntplmn) = asctmp + sbrtpm(ntplmn) = sbrtmp + do 10 i=1,MXMTH + mthfac(i,ntplmn) = valtmp(i) + 10 continue +c +c --- get next record --- +c + goto 111 +c +c --- find the /DAILY/ packet ---- +c + 222 continue + keywrd = '/DAILY/' + call fndkey( jerr, IORSES, keywrd ) + if( jerr .EQ. IRDERR ) goto 9999 + if( jerr .NE. ISUCES ) then + write(IOWMSG,'(/,1X,4A)') 'WARNING: Could not find ', + & keywrd(:strmin(keywrd)),' packet of seasonality file ', + & sesfl(:strmin(sesfl)) + write(IOWMSG,'(11X,3A)') 'Default values will be used for ', + & 'all equipment.' + nwarn = nwarn + 1 + goto 444 + endif +c +c --- read a record as a character string --- +c + 333 continue + irec = irec + 1 + read(IORSES,8000,ERR=7001,END=444) line + call spinit() +c +c --- check for /END/ keyword --- +c + keywrd = line + call lftjst( keywrd ) + call low2up( keywrd ) + if( keywrd(:5) .EQ. KEYEND ) goto 444 +c +c --- parse the character string ---- +c + sbrtmp = line(1:5) + asctmp = line(7:16) + read(line,'(51X,2F10.0)',ERR=7003) (valtmp(i),i=1,MXDAY) + ntplcd = ntplcd + 1 + if( ntplcd .GT. MXTASC ) goto 7004 + asctpl(ntplcd) = asctmp + sbrtpl(ntplcd) = sbrtmp +c +c --- renormalize the daily factors to make sure they add to +c one, write warning if more than 5% error --- +c + sumday = 5.0*valtmp(IDXWKD) + 2.0*valtmp(IDXWKE) + if( ABS(sumday-1.0) .GT. 0.05 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'WARNING: Daily ', + & 'seasonality factors do not add to 1. Renormalizing...' + write(IOWMSG,'(11X,3(A,3X))') 'Region','Equipment', + & 'Original Sum (5*weekday + 2*weekend)' + write(IOWMSG,'(12X,A,3X,A,4X,F8.4)') sbrtmp, asctmp, sumday + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + endif + if( sumday .GT. 0. ) then + valtmp(IDXWKD) = valtmp(IDXWKD) / sumday + valtmp(IDXWKE) = valtmp(IDXWKE) / sumday + endif +c +c --- put into global array --- +c + do 20 i=1,MXDAY + dayfac(i,ntplcd) = valtmp(i) + 20 continue +c +c --- get next record --- +c + goto 333 +c +c --- store default values ---- +c + 444 continue + do 30 i=1,MXMTH + defmth(i) = 1.0/12.0 + 30 continue +c + do 40 i=1,MXDAY + defday(i) = 1./7. + 40 continue +c +c --- close the file --- +c + close(IORSES) + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7001 continue + write(IOWSTD,'(/,1X,3A,I10)',ERR=9999) + & 'ERROR: Reading seasonality file ', + & sesfl(:strmin(sesfl)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I10)',ERR=9999) + & 'ERROR: Reading seasonality file ', + & sesfl(:strmin(sesfl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & sesfl(:strmin(sesfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & sesfl(:strmin(sesfl)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,I10,/,9X,2A)',ERR=9999) + & 'ERROR: Reading seasonality file ', + & sesfl(:strmin(sesfl)),' at record ',irec, + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,I10,/,9X,2A)',ERR=9999) + & 'ERROR: Reading seasonality file ', + & sesfl(:strmin(sesfl)),' at record ',irec, + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,A,I10)',ERR=9999) + & 'ERROR: Number of seasonality records exceeds max ',MXTASC + write(IOWMSG,'(/,1X,A,I10)',ERR=9999) + & 'ERROR: Number of seasonality records exceeds max ',MXTASC + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdspil.f b/NONROAD/NR08a/SOURCE/rdspil.f new file mode 100644 index 0000000..8b0fdc5 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdspil.f @@ -0,0 +1,311 @@ +C**** RDSPIL +c + subroutine rdspil( ierr, + & iounit, fname ) +c +c----------------------------------------------------------------------- +c +c reads the spillage, tank permeation, hose permeation, and hot soak +c starts per hour values and stores the data in common block to be +c used by the NONROAD program. +c +c Argument declaration. +c Inputs: +c iounit I unit number of file to read +c fname I file name of file to read +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 02/10/00 mjimenez added units and tank volume fields +c 05/28/04 -dfk- added tank and hose permeation fields +c 06/17/04 -dfk- added dirunal fraction fields +c 11/15/04 -dfk- separated rec-marine into special section in +c order to read 3 hose permeation data +c 09/21/06 --epa-- added Base E10 permeation adj inputs. Ctl all = 2.0. +c and init rdsplar. (why wasn't this a compile error?) +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + integer*4 iounit + character*(*) fname +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c fndchr I returns the index of string in array of strings +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(5*MXSTR) line + character*20 keywrd, keyin + character*10 tectmp, unitmp + character*9 modtmp + character*6 indtmp + integer*4 irec + integer*4 jerr + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + nsplar = 0 +c +c ---- zero out non-overlapping hose permeation arrays +c + hoslen=0. + hosdia=0. + hosmtl=0. + ncklen=0. + nckdia=0. + srlen= 0. + srdia= 0. + vntlen=0. + vntdia=0. + tnke10 = 1.0 + hose10 = 1.0 + ncke10 = 1.0 + sre10 = 1.0 + vnte10 = 1.0 + +c +c ---- find the /EMSFAC/ keyword for non-rec marine data ---- +c + keywrd = '/EMSFAC/' + call fndkey( jerr, iounit, keywrd ) + if( jerr .NE. ISUCES ) goto 7007 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(iounit,8000,ERR=7000,END=7008) line + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- parse data fields --- +c + nsplar = nsplar + 1 + if ( nsplar .GT. MXSPL) goto 7002 + ascspl(nsplar) = line(1:10) +c + modtmp = line(54:62) + call lftjst( modtmp ) + call low2up( modtmp ) + if ( modtmp .NE. PUMP .AND. modtmp .NE. CNTR ) goto 7003 + modspl(nsplar) = modtmp + + indtmp = line(64:67) + call lftjst( indtmp ) + call low2up( indtmp ) + if ( indtmp .NE. TNKTYP .AND. indtmp .NE. HP ) goto 7006 + indspl(nsplar) = indtmp +c + read(line(69:73),'(F5.0)',ERR=7004) splpcb(nsplar) + read(line(74:78),'(F5.0)',ERR=7004) splpce(nsplar) +c + tectmp = line(79:88) + if( tectmp .EQ. ' ' ) goto 7005 + call lftjst( tectmp ) + call low2up( tectmp ) + tecspl(nsplar) = tectmp +c + unitmp = line(90:99) + call lftjst( unitmp ) + call low2up( unitmp ) + if(unitmp .NE. 'GALLONS' .AND. unitmp .NE. 'GAL/HP') goto 7009 + untspl(nsplar) = unitmp +c --- tank + read(line(103:112),'(F10.0)',ERR=7004) volspl(nsplar) + read(line(113:120),'(F 8.0)',ERR=7004) tnkful(nsplar) + read(line(121:130),'(F10.0)',ERR=7004) tnkmtl(nsplar) +c --- non-rec-marine hose + read(line(131:140),'(F10.0)',ERR=7004) hoslen(nsplar) + read(line(141:150),'(F10.0)',ERR=7004) hosdia(nsplar) + read(line(151:160),'(F10.0)',ERR=7004) hosmtl(nsplar) +c --- rec-marine fill neck (assumed to be 100% non-metal) + read(line(161:170),'(F10.0)',ERR=7004) ncklen(nsplar) + read(line(171:180),'(F10.0)',ERR=7004) nckdia(nsplar) +c --- rec-marine supply/return (assumed to be 100% non-metal) + read(line(181:190),'(F10.0)',ERR=7004) srlen(nsplar) + read(line(191:200),'(F10.0)',ERR=7004) srdia(nsplar) +c --- rec-marine vent (assumed to be 100% non-metal) + read(line(201:210),'(F10.0)',ERR=7004) vntlen(nsplar) + read(line(211:220),'(F10.0)',ERR=7004) vntdia(nsplar) +c --- hot soak + read(line(221:230),'(F10.0)',ERR=7004) hssph(nsplar) +c --- diurnal + read(line(231:280),'(5F10.0)',ERR=7004) + & (diufrc(i,nsplar),i=1,5) +c +c --- Ethanol (E10) base case adjustment factors. +c --- Other code adjusts these to any other ethanol percentage. + read(line(281:290),'(F10.0)',ERR=7004) tnke10(nsplar) + if( tnke10(nsplar) .EQ. 0. ) tnke10(nsplar) = 1.0 + read(line(291:300),'(F10.0)',ERR=7004) hose10(nsplar) + if( hose10(nsplar) .EQ. 0. ) hose10(nsplar) = 1.0 + read(line(301:310),'(F10.0)',ERR=7004) ncke10(nsplar) + if( ncke10(nsplar) .EQ. 0. ) ncke10(nsplar) = 1.0 + read(line(311:320),'(F10.0)',ERR=7004) sre10(nsplar) + if( sre10(nsplar) .EQ. 0. ) sre10(nsplar) = 1.0 + read(line(321:330),'(F10.0)',ERR=7004) vnte10(nsplar) + if( vnte10(nsplar) .EQ. 0. ) vnte10(nsplar) = 1.0 +c +c --- get the next non-rec marine record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXSPL,'in file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,I8,/,9X,2A)',ERR=9999) + & 'ERROR: Number of distinct emission factors exceed max ', + & MXSPL,'in file ', fname(:strmin(fname)) + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid refueling mode specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid refueling mode specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Reading emission factor file ', + & fname(:strmin(fname)),'Line read: ', + & line(:strmin(line)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type ', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or invalid tech type ', + & 'in emissions factors file ',fname(:strmin(fname)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid range indicator specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid range indicator specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Cannot find ', + & keywrd(:strmin(keywrd)), + & ' packet of emission factors file ', + & fname(:strmin(fname)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & 'emission factors file ', fname(:strmin(fname)) + goto 9999 +c + + 7009 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid units specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Invalid units specified in ', + & fname(:strmin(fname)), 'Line read: ', + & line(:strmin(line)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdstg2.f b/NONROAD/NR08a/SOURCE/rdstg2.f new file mode 100644 index 0000000..5fe0381 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdstg2.f @@ -0,0 +1,136 @@ +C**** RDSTG2 +c + subroutine rdstg2( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the /STAGE II/ packet used in the NONROAD program +c +c Argument description. +c +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 12/14/98 --mjimenez-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*20 keywrd + integer*4 jerr +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- look for /STAGE II/ packet --- +c + keywrd = '/STAGE II/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7000 +c +c --- if packet was not found, then no stage II control to be applied --- +c + if( jerr .EQ. IEOF ) then + stg2fac = 1.0 + goto 222 + endif +c +c --- if packet was found, read the data --- +c + read(IORUSR,8000,ERR=7001,END=7002) stg2fac + if( stg2fac .LT. 0. .OR. stg2fac .GT. 100.0 ) goto 7003 + stg2fac = 1.0 - (stg2fac / 100.0) +c +c --- set error flag to success ---- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)), + & ' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)), + & ' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ', + & keywrd(:strmin(keywrd)),' packet of options file.' + write(IOWSTD,'(10X,A)',ERR=9999) 'Valid values are: 0.0 to 100.0' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ', + & keywrd(:strmin(keywrd)),' packet of options file.' + write(IOWMSG,'(10X,A)',ERR=9999) 'Valid values are: 0.0 to 100.0' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(20x,F7.0) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdsulf.f b/NONROAD/NR08a/SOURCE/rdsulf.f new file mode 100644 index 0000000..c868a80 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdsulf.f @@ -0,0 +1,220 @@ +C**** RDSULF +c + subroutine rdsulf( ierr ) +c +c----------------------------------------------------------------------- +c +c reads the /PM BASE SULFUR/ packet used in the NONROAD program +c +c Argument description. +c +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 10/30/01 --charvey-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(MXSTR) line + character*20 keywrd + integer*4 jerr, itec + character*10 tmptec + real*4 tmpalt, tmpcnv +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- initialize base sulfur arrays. +c can't do in INTADJ because that comes after RDSULF. --- +c + do 10 itec = 1,MXSULF + sultec(itec) = ' ' + sulalt(itec) = -1.0 + sulcnv(itec) = -1.0 + 10 continue +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- look for /PM BASE SULFUR/ packet --- +c + keywrd = '/PM BASE SULFUR/' + call fndkey( jerr, IORUSR, keywrd ) + if( jerr .EQ. IRDERR ) goto 7000 +c +c --- if packet was not found, then no special cert sulfur to apply --- +c + if( jerr .EQ. IEOF ) then + goto 222 + endif +c +c --- if packet was found, read until /END/ keyword found --- +c + numalt = 0 + 111 continue + read(IORUSR,8000,ERR=7001,END=7002) line + read(line(1:10),'(A10)',ERR=7001,END=7002) tmptec +c +c --- look for /END/ keyword --- +c + call lftjst( tmptec ) + call low2up( tmptec ) + if( tmptec .EQ. KEYEND ) goto 222 +c +c --- incrament counter and check for overflow ---- +c + numalt = numalt + 1 + if( numalt .GT. MXSULF ) goto 7005 +c +c --- read rest of record and store in global arrays --- +c + sultec(numalt) = tmptec + read(line(11:20),'(F10.0)',ERR=7001,END=7002) tmpalt + if( line(11:20) .NE. ' ' ) then + if( tmpalt .LT. 0. .OR. tmpalt .GT. 1.00 ) goto 7003 + sulalt(numalt) = tmpalt + else + sulalt(numalt) = RMISS + write(IOWMSG,'(/,1X,4A)') 'WARNING: Blank value read in ', + & keywrd(:strmin(keywrd)),' packet of options file. ' + write(IOWMSG,'(11X,4A,F7.5)') + & 'Default base (cert) sulfur ', + & 'will be used for tech type: ', + & tmptec(:strmin(tmptec)), + & ' = ', SWTDSL + nwarn = nwarn + 1 + endif +c + read(line(21:30),'(F10.0)',ERR=7001,END=7002) tmpcnv + if( line(21:30) .NE. ' ' ) then + if( tmpcnv .LT. 0. .OR. tmpcnv .GT. 1.00 ) goto 7004 + sulcnv(numalt) = tmpcnv + else + sulcnv(numalt) = RMISS + write(IOWMSG,'(/,1X,4A)') 'WARNING: Blank value read in ', + & keywrd(:strmin(keywrd)),' packet of options file. ' + write(IOWMSG,'(11X,4A,F7.5)') + & 'Default sulfate conversion ', + & 'will be used for tech type: ', + & tmptec(:strmin(tmptec)), + & ' = ', SFCDSL + nwarn = nwarn + 1 + endif +c +c --- get next record --- +c + goto 111 +c +c --- set error flag to success ---- +c + 222 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + write(IOWMSG,'(/,1X,4A)',ERR=9999) 'ERROR: Reading the ', + & 'options file while searching for the ', + & keywrd(:strmin(keywrd)),' packet.' + goto 9999 +c + 7001 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,3A)',ERR=9999) 'ERROR: Reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + write(IOWMSG,'(/,1X,A,/,9X,2A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached reading ', + & keywrd(:strmin(keywrd)),' packet of the options file.' + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWSTD,'(10X,A)',ERR=9999) + & 'Valid values for Sulfur content are: 0.0 to 1.0' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(10X,A)',ERR=9999) + & 'Valid values for Sulfur content are: 0.0 to 1.0' + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWSTD,'(10X,A)',ERR=9999) + & 'Valid values for Sulfur conversion are: 0.0 to 1.0' + write(IOWMSG,'(/,1X,3A)',ERR=9999) + & 'ERROR: Invalid value found in ',keywrd(:strmin(keywrd)), + & ' packet of options file.' + write(IOWMSG,'(10X,A)',ERR=9999) + & 'Valid values for Sulfur conversion are: 0.0 to 1.0' + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Number of records in ',keywrd(:strmin(keywrd)), + & ' packet of options file exceeds max:',MXSULF + write(IOWMSG,'(/,1X,3A,I5)',ERR=9999) + & 'ERROR: Number of records in ',keywrd(:strmin(keywrd)), + & ' packet of options file exceeds max:',MXSULF + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdtech.f b/NONROAD/NR08a/SOURCE/rdtech.f new file mode 100644 index 0000000..ce0122c --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdtech.f @@ -0,0 +1,305 @@ +C**** RDTECH +c + subroutine rdtech( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the technology fractions by equipment type for each +c model year. +c +c Argument declaration. +c Inputs: +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/22/96 --jlf-- original development +c 07/20/05 --cimulus-- floating-point comparison for equality +c okay; tchhpb, hptmpb, tchhpe, and hptmpe +c values are read from file, rather than +c being calculated at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line + character*20 keywrd, keyin + character*10 asctmp + character*10 tectmp, tecsav(MXTECH) + integer*4 irec, iyrtmp, istrt, ntch, itch, ifac, jerr + real*4 tchtmp(MXTECH), hptmpb, hptmpe + real*4 sumtec +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + ntchcd = 0 +c +c --- open the file --- +c + open(IORTCH,file=tchfl,ERR=7008,status='UNKNOWN') + rewind(IORTCH) +c +c ---- find the /TECH FRAC/ keyword ---- +c + keywrd = '/TECH FRAC/' + call fndkey( jerr, IORTCH, keywrd ) + if( jerr .EQ. IEOF ) then + ierr = ISKIP + goto 9999 + endif + if( jerr .NE. ISUCES ) goto 7006 +c +c --- read a record as a character string --- +c + 111 continue + irec = irec + 1 + read(IORTCH,8000,ERR=7000,END=7007) line + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- if this is a new code, get the tech types --- +c + if( line(6:15) .NE. ' ' ) then + ntch = 0 + asctmp = line(6:15) + read(line(21:25),'(F5.0)',ERR=7004) hptmpb + read(line(26:30),'(F5.0)',ERR=7004) hptmpe + istrt = 35 + 333 continue + tectmp = line(istrt:istrt+9) + if( tectmp .EQ. ' ' ) goto 444 + call lftjst( tectmp ) + call low2up( tectmp ) +c +c --- add tech type to array --- +c + ntch = ntch + 1 + if( ntch .GT. MXTECH ) goto 7003 + tecsav(ntch) = tectmp + istrt = istrt + 10 + goto 333 +c +c + 444 continue + if( ntch .LE. 0) goto 7005 +c +c ---- line contains technology fractions data -- +c + else +c +c ---- read the year --- +c + read(line(1:5),'(I5)',ERR=7004) iyrtmp + istrt = 35 + do 20 itch = 1,ntch +c +c --- read the data --- +c + read(line(istrt:istrt+9),'(F10.0)',ERR=7004) tchtmp(itch) +c +c --- find the index into arrays for line of data --- +c + do 30 ifac=1,ntchcd + if( asctch(ifac) .EQ. asctmp .AND. + & iyrtch(ifac) .EQ. iyrtmp .AND. + & tchhpb(ifac) .EQ. hptmpb .AND. ! floating-point comparison for equality okay; tchhpb and hptmpb values are read from file, rather than being calculated at runtime + & tchhpe(ifac) .EQ. hptmpe) then ! floating-point comparison for equality okay; tchhpe and hptmpe values are read from file, rather than being calculated at runtime + tchfrc(ifac,itch) = tchtmp(itch) + tectyp(ifac,itch) = tecsav(itch) + istrt = istrt + 10 + goto 20 + endif + 30 continue +c +c --- not found, add it to list ---- +c + ntchcd = ntchcd + 1 + if( ntchcd .GT. MXTECD ) goto 7002 + asctch(ntchcd) = asctmp + iyrtch(ntchcd) = iyrtmp + tchhpb(ntchcd) = hptmpb + tchhpe(ntchcd) = hptmpe + ntech(ntchcd) = ntch + tectyp(ntchcd,itch) = tecsav(itch) + tchfrc(ntchcd,itch) = tchtmp(itch) + istrt = istrt + 10 + 20 continue + endif +c +c --- get the next record --- +c + goto 111 +c +c --- entire file read, close it --- +c + 222 continue + close(IORTCH) +c +c --- renormalize the technology fractions to make sure they add to +c one, write warning if more than 5% error --- + + do 40 ntch = 1, ntchcd +c + sumtec = 0. +c + do 50 itch = 1, ntech(ntch) + sumtec = sumtec + tchfrc(ntch,itch) + 50 continue +c + if ( ABS(sumtec-1.0) .GT. 0.002 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'WARNING: Technology ', + & 'fractions do not add to 1. Renormalizing...' + write(IOWMSG,'(12X,4(A,3X))') 'Equipment', ' HP range', + & ' Year', 'Original Sum' + write(IOWMSG,'(12X,A,2(3X,F5.0),3X,I4,3X,F6.4)') + & asctch(ntch), tchhpb(ntch), tchhpe(ntch), + & iyrtch(ntch), sumtec + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + endif + do 45 itch = 1,ntech(ntch) + if( sumtec .GT. 0. ) + & tchfrc(ntch,itch) = tchfrc(ntch,itch) / sumtec + 45 continue + 40 continue +c +c --- return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading technology fraction file ', + & tchfl(:strmin(tchfl)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading technology fraction file ', + & tchfl(:strmin(tchfl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'technology fractions in file ', tchfl(:strmin(tchfl)), + & 'exceeds max ',MXTECD + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'technology fractions in file ', tchfl(:strmin(tchfl)), + & 'exceeds max ',MXTECD + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'technology types in technology fractions file ', + & tchfl(:strmin(tchfl)),'exceeds max ', MXTECH + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'technology types in technology fractions file ', + & tchfl(:strmin(tchfl)),'exceeds max ', MXTECH + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line(:strmin(line)) + goto 9999 +c + 7005 continue + write(IOWSTD,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid technology type','in technology fractions file ', + & tchfl(:strmin(tchfl)),'Line read: ',line(:strmin(line)) + write(IOWMSG,'(/,1X,2A,/,9X,2A,/,9X,2A)',ERR=9999) + & 'ERROR: Missing or ', + & 'invalid technology type','in technology fractions file ', + & tchfl(:strmin(tchfl)),'Line read: ',line(:strmin(line)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & ' packet','of technology fractions file ', + & tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & keywrd(:strmin(keywrd)), + & ' packet','of technology fractions file ', + & tchfl(:strmin(tchfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'technology fractions file ', tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'technology fractions file ', tchfl(:strmin(tchfl)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & tchfl(:strmin(tchfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rdtech_moves.f b/NONROAD/NR08a/SOURCE/rdtech_moves.f new file mode 100644 index 0000000..133604e --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rdtech_moves.f @@ -0,0 +1,298 @@ +c**** RDTECH_MOVES +c + subroutine rdtech_moves( ierr ) +c +c----------------------------------------------------------------------- +c +c Reads the technology fractions by equipment type for each +c model year. +c This version os for the file format generated by the MOVES GUI. +c +c Argument declaration. +c Inputs: +c Outputs: +c ierr I error flag +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 03/15/12 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the actual length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*(4*MXSTR) line1, line2 + character*20 keywrd, keyin + character*10 asctmp + character*10 tectmp + integer*4 irec, iyrtmp, istrt, ntch, itch, ifac, jerr + integer*4 ntchtot, i + real*4 tecval, hptmpb, hptmpe + real*4 sumtec +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + irec = 0 + ntchcd = 0 +c +c --- open the file --- +c + open(IORTCH,file=tchfl,ERR=7008,status='UNKNOWN') + rewind(IORTCH) +c +c ---- find the /TECH FRAC/ keyword ---- +c + keywrd = '/MOVES TECH FRAC/' + call fndkey( jerr, IORTCH, keywrd ) + if( jerr .NE. ISUCES ) then + ierr = ISKIP + goto 9999 + endif +c +c --- read two lines, one identification, the other data --- +c + ntchtot = 1 + 111 continue + irec = irec + 1 + read(IORTCH,8000,ERR=7000,END=7007) line1 +c +c --- look for /END/ keyword --- +c + keyin = line1(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c + read(IORTCH,8000,ERR=7000,END=7007) line2 + call spinit() +c +c --- look for /END/ keyword --- +c + keyin = line1(1:20) + call lftjst( keyin ) + call low2up( keyin ) + if( keyin .EQ. KEYEND ) goto 222 +c +c --- skip if this is not an identifier record --- +c + if( line1(6:15) .EQ. ' ' ) goto 111 +c +c --- parse the identification line --- +c + asctmp = line1(6:15) + read(line1(21:25),'(F5.0)',ERR=7004) hptmpb + read(line1(26:30),'(F5.0)',ERR=7004) hptmpe + tectmp = line1(35:44) + call lftjst( tectmp ) + call low2up( tectmp ) +c +c --- parse the data record --- +c + read(line2(1:5),'(I5)',ERR=7004) iyrtmp + read(line2(35:44),'(F10.0)',ERR=7004) tecval +c +c --- find the index into arrays for this equipment --- +c + do ifac=1,ntchcd + if( asctch(ifac) .EQ. asctmp .AND. + & iyrtch(ifac) .EQ. iyrtmp .AND. + & tchhpb(ifac) .EQ. hptmpb .AND. + & tchhpe(ifac) .EQ. hptmpe) then + do i=1,ntech(ifac) +c +c --- skip if already in list (different year) --- +c + if( tectmp .EQ. tectyp(ifac,i) ) then + tchfrc(ifac,i) = tecval + goto 111 + endif + enddo +c +c --- new tech type for this equipment, add to arrays --- +c + ntech(ifac) = ntech(ifac) + 1 + if( ntech(ifac) .GT. MXTECH ) goto 7003 + tectyp(ifac,ntech(ifac)) = tectmp + tchfrc(ifac,ntech(ifac)) = tecval + goto 111 + endif + enddo +c +c --- not found, add it to list ---- +c + ntchcd = ntchcd + 1 + if( ntchcd .GT. MXTECD ) goto 7002 + asctch(ntchcd) = asctmp + iyrtch(ntchcd) = iyrtmp + tchhpb(ntchcd) = hptmpb + tchhpe(ntchcd) = hptmpe + ntech(ntchcd) = 1 + tectyp(ntchcd,1) = tectmp + tchfrc(ntchcd,1) = tecval +c +c --- get next record --- +c + goto 111 +c +c --- entire file read --- +c + 222 continue + close(IORTCH) +c +c --- renormalize the technology fractions to make sure they add to +c one, write warning if more than 5% error --- + + do 40 ntch = 1, ntchcd +c + sumtec = 0. +c + do 50 itch = 1, ntech(ntch) + sumtec = sumtec + tchfrc(ntch,itch) + 50 continue +c + if ( ABS(sumtec-1.0) .GT. 0.002 ) then + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'WARNING: Technology ', + & 'fractions do not add to 1. Renormalizing...' + write(IOWMSG,'(12X,4(A,3X))') 'Equipment', ' HP range', + & ' Year', 'Original Sum' + write(IOWMSG,'(12X,A,2(3X,F5.0),3X,I4,3X,F6.4)') + & asctch(ntch), tchhpb(ntch), tchhpe(ntch), + & iyrtch(ntch), sumtec + call chkwrn(jerr,IDXWTC) + if( jerr .NE. ISUCES ) goto 9999 + endif + do 45 itch = 1,ntech(ntch) + if( sumtec .GT. 0. ) + & tchfrc(ntch,itch) = tchfrc(ntch,itch) / sumtec + 45 continue + 40 continue +c +c --- return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading technology fraction file ', + & tchfl(:strmin(tchfl)),' at record ',irec + write(IOWMSG,'(/,1X,3A,I6)',ERR=9999) + & 'ERROR: Reading technology fraction file ', + & tchfl(:strmin(tchfl)),' at record ',irec + goto 9999 +c + 7002 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'technology fractions in file ', tchfl(:strmin(tchfl)), + & 'exceeds max ',MXTECD + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) + & 'ERROR: Number of distinct ', + & 'technology fractions in file ', tchfl(:strmin(tchfl)), + & 'exceeds max ',MXTECD + goto 9999 +c + 7003 continue + write(IOWSTD,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'technology types in technology fractions file ', + & tchfl(:strmin(tchfl)),'exceeds max ', MXTECH + write(IOWMSG,'(/,1X,3A,/,9X,A,I5)',ERR=9999) 'ERROR: Number of ', + & 'technology types in technology fractions file ', + & tchfl(:strmin(tchfl)),'exceeds max ', MXTECH + goto 9999 +c + 7004 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line1(:strmin(line1)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line1(:strmin(line1)) + goto 9999 +c + 7006 continue + write(IOWSTD,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & ' packet','of technology fractions file ', + & tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,3A,/,9X,3A)',ERR=9999) + & 'ERROR: Cannot find ', keywrd(:strmin(keywrd)), + & keywrd(:strmin(keywrd)), + & ' packet','of technology fractions file ', + & tchfl(:strmin(tchfl)) + goto 9999 +c + 7007 continue + write(IOWSTD,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'technology fractions file ', tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,A,/,9X,3A)',ERR=9999) + & 'ERROR: Unexpected end-of-file reached','reading ', + & 'technology fractions file ', tchfl(:strmin(tchfl)) + goto 9999 +c + 7008 continue + write(IOWSTD,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & tchfl(:strmin(tchfl)) + write(IOWMSG,'(/,1X,2A)',ERR=9999) 'ERROR: Opening file ', + & tchfl(:strmin(tchfl)) + goto 9999 +c + 7009 continue + write(IOWSTD,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line2(:strmin(line2)) + write(IOWMSG,'(/,1X,3A,/,9X,2A)',ERR=9999) 'ERROR: Reading ', + & 'technology fractions file ',tchfl(:strmin(tchfl)), + & 'Line read: ',line2(:strmin(line2)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/readme.txt b/NONROAD/NR08a/SOURCE/readme.txt new file mode 100644 index 0000000..a5e04a4 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/readme.txt @@ -0,0 +1,3 @@ +To compile: Install gfortran, then open a DOS box, +CD to this directory, and type "make" at the command line. +make will find makefile and gfortran then compiles all of the code. \ No newline at end of file diff --git a/NONROAD/NR08a/SOURCE/rgtjst.f b/NONROAD/NR08a/SOURCE/rgtjst.f new file mode 100644 index 0000000..8426181 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rgtjst.f @@ -0,0 +1,89 @@ +C**** RGTJST +c + subroutine rgtjst( string ) +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine right justifies a string, .ie. removes the trailing +c blanks. +c +c Arguments: +c +c Inputs/Outputs: (the string argument serves as both input and +c output) +c string C string to left justify +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + character*(*) string +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strlen I returns the actual length of a string +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c BLANK C blank character +c + character*1 BLANK + parameter(BLANK=' ') +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c ibeg I last non-blank character of string +c + integer*4 iend, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- already left justified so just return ---- +c + if( string(LEN(string):LEN(string)) .NE. BLANK ) goto 9999 +c +c ---- find last non-blank character --- +c + iend = strlen ( string ) + if( iend .LT. 1 ) goto 9999 +c +c ---- move all characters to end --- +c + do 10 i=LEN(string),LEN(string)-iend+1,-1 + string(i:i) = string(i-LEN(string)+iend:i-LEN(string)+iend) + 10 continue +c +c ---- blank out leftmost characters --- +c + do 20 i=1,LEN(string)-iend + string(i:i) = BLANK + 20 continue + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/rtrftengovrlp.f b/NONROAD/NR08a/SOURCE/rtrftengovrlp.f new file mode 100644 index 0000000..ef9a987 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/rtrftengovrlp.f @@ -0,0 +1,110 @@ +C**** RTRFTENGOVRLP +c + logical*4 function rtrftengovrlp( a, b ) +c +c----------------------------------------------------------------------- +c +c Determines whether or not the sets of engines for two retrofit +c records overlap. +c +c Return value: +c .TRUE. = the two sets of engines overlap +c .FALSE. = the two sets of engines do not overlap +c +c Argument declaration +c Inputs: +c a I index of first retrofit record to compare +c b I index of second retrofit record to compare +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/25/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 a + integer*4 b +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume sets of engines do not overlap --- +c + rtrftengovrlp = .FALSE. +c +c --- if the SCC ranges do not overlap, return false --- +c + if( rtrftscc(a) .NE. RTRFTSCCALL .AND. + & rtrftscc(b) .NE. RTRFTSCCALL .AND. + & rtrftscc(a) .NE. rtrftscc(b) ) then ! if neither is all-inclusive and they are not equal +c +c --- ensure that neither SCC is a global +c that contains the other --- +c + if( ( rtrftscc(a)(5:10) .EQ. '000000' .OR. + & rtrftscc(b)(5:10) .EQ. '000000' ) ) then ! if either is a 4-digit global + if( rtrftscc(a)(1:4) .NE. rtrftscc(b)(1:4) ) then + goto 9999 ! engines do not overlap; return false + endif + else if( ( rtrftscc(a)(8:10) .EQ. '000' .OR. + & rtrftscc(b)(8:10) .EQ. '000' ) ) then ! else if either is a 7-digit global + if( rtrftscc(a)(1:7) .NE. rtrftscc(b)(1:7) ) then + goto 9999 ! engines do not overlap; return false + endif + else ! else neither is a global SCC + goto 9999 ! engines do not overlap; return false + endif + endif +c +c --- if the tech type ranges do not overlap, return false --- +c + if( rtrfttechtype(a) .NE. RTRFTTCHTYPALL .AND. + & rtrfttechtype(b) .NE. RTRFTTCHTYPALL .AND. + & rtrfttechtype(a) .NE. rtrfttechtype(b) ) then ! if neither is all-inclusive and they are not equal + goto 9999 ! engines do not overlap; return false + endif +c +c --- if the HP ranges do not overlap, return false --- +c + if( rtrfthpmx(a) .LE. rtrfthpmn(b) .OR. + & rtrfthpmx(b) .LE. rtrfthpmn(a) ) then ! use <= instead of < because minimum HP values are non-inclusive + goto 9999 ! engines do not overlap; return false + endif +c +c --- if this point is reached, the engines must +c overlap, so return true --- +c + rtrftengovrlp = .TRUE. + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/scrptime.f b/NONROAD/NR08a/SOURCE/scrptime.f new file mode 100644 index 0000000..962cb18 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/scrptime.f @@ -0,0 +1,212 @@ +C**** SCRPTIME +c + subroutine scrptime( ierr, yryrfrcscrp, nyrlif, mdyrfrc, + & mdlfhrs, ldfctr, acthpy, scrpnam, popgrwfac ) +c +c--------------------------------------------------------------------- +c +c This is based on ScrapDir.doc and scrap-2.xls (ScrpTime +c worksheet). +c +c Calculates the number of years in lifetime (full scrappage +c time), the year-to-year fraction scrapped by age, and the +c model-year fractions by age (age distribution) for the first +c full scrappage year. +c +c NOTE: Uses a single activity in hours per year value (acthpy), +c since the alternate-activity-curve functionality is not actually +c being used. To use an alternate activity curve, actadj would +c have to be passed in and the calculation of the frcmlusd values +c would have to be modified. +c +c Argument declaration +c Outputs: +c ierr I error indicator flag +c yryrfrcscrp R year-to-year fraction scrapped by age +c nyrlif I number of years in the lifetime +c (first year of full scrappage) +c mdyrfrc R model-year fractions by age (age +c distribution) for first full-scrappage year +c Inputs: +c mdlfhrs R median life (hours at full load) +c ldfctr R load factor +c acthpy R activity in hours per year +c scrpnam C name of the scrappage curve to use +c popgrwfac R population growth factor +c +c--------------------------------------------------------------------- +c LOG: +c--------------------------------------------------------------------- +c +c 03/23/05 -cimulus- original development based on +c ScrapDir.doc and scrap-2.xls +c 04/06/05 -cimulus- changed yryrfrcscrp, nyrlif, and mdyrfrc +c from local variables to output parameters; +c changed fullscrpyr to nyrlif; integrated +c getscrp for efficiency, so that fndscrp +c doesn't search for the scrappage curve +c in every call +c 04/30/05 -cimulus- removed debug output +c 05/02/05 -cimulus- added decimal to real number to correct +c compiler error +c 05/12/05 -cimulus- ensure that nyrlif is set when first +c year of full scrappage is MXAGYR; moved +c initialization of initsales to right +c before usage +c +c +c--------------------------------------------------------------------- +c Include files: +c--------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdeqp.inc' +c +c--------------------------------------------------------------------- +c Argument declarations: +c--------------------------------------------------------------------- +c + integer*4 ierr + real*4 yryrfrcscrp(MXAGYR) + integer*4 nyrlif + real*4 mdyrfrc(MXAGYR) + real*4 mdlfhrs + real*4 ldfctr + real*4 acthpy + character*10 scrpnam + real*4 popgrwfac +c +c--------------------------------------------------------------------- +c External functions: +c--------------------------------------------------------------------- +c +c fndscrp R returns the percent scrapped for the +c fraction of median life used +c + real*4 fndscrp +c +c--------------------------------------------------------------------- +c Local variables: +c--------------------------------------------------------------------- +c + integer*4 jerr + real*4 mdlfyrs ! median life in years + real*4 mdlfupy ! median life used per year + real*4 scrpbin(MXSCRP) ! array of scrappage bin values + real*4 scrppct(MXSCRP) ! percent of equipment left in each bin + integer*4 iage ! engine-age year iterator + real*4 frcmlusd(MXAGYR) ! fraction of median life used by age + real*4 pctscrp(MXAGYR) ! percent scrapped by age + real*4 yrfrcscrp(MXAGYR) ! fraction scrapped by age + real*4 salesgrwfac ! sales growth factor + real*4 initsales ! initial sales in the base year + integer*4 isaleyr ! sales year iterator + real*4 sales(MXAGYR) ! sales by sales year + real*4 survunits(MXAGYR) ! relative number of surviving units by age for first full-scrappage year + real*4 srvunttot ! total surviving units for first full-scrappage year +c +c--------------------------------------------------------------------- +c Entry point: +c--------------------------------------------------------------------- +c + ierr = IFAIL +c +c --- calculate the median life in years --- +c + mdlfyrs = min(real(int(MXAGYR / 2.)), mdlfhrs / ldfctr / acthpy) +c +c --- calculate the median life used per year --- +c + mdlfupy = 1. / mdlfyrs +c +c --- determine which scrappage curve to use --- +c + call getscrp( jerr, scrpbin, scrppct, scrpnam ) + if( jerr .NE. ISUCES ) goto 9999 +c +c --- calculate the first year of full scrappage, while populating +c the various utility arrays indexed by age --- +c + frcmlusd(1) = 0. + pctscrp(1) = 0. + yrfrcscrp(1) = 0. + yryrfrcscrp(1) = 0. + nyrlif = 0 + do iage=2,MXAGYR + frcmlusd(iage) = (iage - 1) * mdlfupy + pctscrp(iage) = fndscrp(frcmlusd(iage), scrpbin, scrppct) + yrfrcscrp(iage) = (pctscrp(iage) - pctscrp(iage - 1)) / 100. + if( pctscrp(iage - 1) .GE. 100. ) then + if( nyrlif .EQ. 0 ) then + nyrlif = iage - 1 + endif + yryrfrcscrp(iage) = 0. + else + yryrfrcscrp(iage) = 100. * + & yrfrcscrp(iage) / (100. - pctscrp(iage - 1)) + endif + end do + if( pctscrp(iage - 1) .GE. 100. ) then + if( nyrlif .EQ. 0 ) then + nyrlif = iage - 1 + endif + endif +c +c --- calculate sales growth factor --- +c + salesgrwfac = popgrwfac / (((-1.4306 * popgrwfac) * mdlfyrs) + & + (-0.24 * popgrwfac) + 1.0) +c +c --- calculate the sales by sales year --- +c + initsales = 1000. ! arbitrary initial sales + do isaleyr=1,MXAGYR + sales(isaleyr) = initsales + + & (initsales * salesgrwfac * (isaleyr - 1)) + end do +c +c --- calculate the relative number of units surviving by age +c for the first full-scrappage year --- +c + srvunttot = 0. + do iage=1,MXAGYR + if( iage .LE. nyrlif ) then + survunits(iage) = sales(nyrlif - iage + 1) + & * (1. - pctscrp(iage) / 100.) + else + survunits(iage) = 0. + endif + srvunttot = srvunttot + survunits(iage) + end do +c +c --- divide each relative number of units surviving by the sum of +c all values to yield the initial model-year fractions --- +c + do iage=1,MXAGYR + mdyrfrc(iage) = survunits(iage) / srvunttot + end do +c +c --- set error code to sucess and return --- +c + ierr = ISUCES + goto 9999 +c +c--------------------------------------------------------------------- +c Error messages: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Format statements: +c--------------------------------------------------------------------- +c +c +c--------------------------------------------------------------------- +c Return point: +c--------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/sitot.f b/NONROAD/NR08a/SOURCE/sitot.f new file mode 100644 index 0000000..af991ae --- /dev/null +++ b/NONROAD/NR08a/SOURCE/sitot.f @@ -0,0 +1,140 @@ +C**** SITOT +c + subroutine sitot( ierr, tecin, popin, actin, fuelin, emsin ) +c +c----------------------------------------------------------------------- +c +c adds the values for the current tech type to the totals +c arrays for the SI report +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c tecin C technology type name +c popin R population +c actin R activity (hours) +c fuelin R fuel consumption +c emiss R array of emissions (tons) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/27/98 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*10 tecin + real*4 popin + real*4 actin + real*4 fuelin + real*4 emsin(MXPOL) +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fndchr I returns the index of a string in an array of strings +c + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idxtch, i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- find the index of tech type in the SI array, if it +c is not found then don't use this data --- +c + idxtch = fndchr( tecin, 10, sitech, MXITCH ) + if( idxtch .LE. 0 ) then + ierr = ISKIP + goto 9999 + endif +c +c --- make sure the index is within acceptable range --- +c + if( indxsi(idxtch) .GT. MXOTCH ) goto 7000 +c +c --- add the population totals to arrays --- +c + if( popin .GE. 0. ) then + popsi(indxsi(idxtch)) = popsi(indxsi(idxtch)) + popin + endif +c +c --- add the activity totals to arrays --- +c + if( actin .GE. 0. ) then + actsi(indxsi(idxtch)) = actsi(indxsi(idxtch)) + actin + endif +c +c --- add the fuel consumption to arrays --- +c + if( fuelin .GE. 0. ) then + fuelsi(indxsi(idxtch)) = fuelsi(indxsi(idxtch)) + fuelin + endif +c +c --- add the emissions totals to arrays --- +c + do 10 i=1,MXPOL + if( emsin(i) .GE. 0. ) then + emissi(indxsi(idxtch),i) = emissi(indxsi(idxtch),i)+emsin(i) + endif + 10 continue +c +c --- all is well, set error code and return --- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,2A)') + & 'ERROR: Internal program inconsistency. ', + & 'Index of tech type for SI report is out of valid range. ' + write(IOWMSG,'(/,1X,2A)') + & 'ERROR: Internal program inconsistency. ', + & 'Index of tech type for SI report is out of valid range. ' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/spinit.f b/NONROAD/NR08a/SOURCE/spinit.f new file mode 100644 index 0000000..213ecc3 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/spinit.f @@ -0,0 +1,37 @@ +C**** SPINIT() +c + subroutine spinit() +c +c----------------------------------------------------------------------- +c +c displays a little "clock" thing to measure progress. +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +cgwilson icall = MOD(icall+1,8) +cgwilson write(IOWSTD,9000,ERR=9999) spin(icall) +cgwilson call flush(IOWSTD) +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format('+','Initializing ...',A) +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/srtrtrft.f b/NONROAD/NR08a/SOURCE/srtrtrft.f new file mode 100644 index 0000000..8683a46 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/srtrtrft.f @@ -0,0 +1,116 @@ +C**** SRTRTRFT +c + recursive subroutine srtrtrft( cmprtype, startindex, stopindex ) +c +c----------------------------------------------------------------------- +c +c Sorts the retrofit-record arrays based on the comparison done in +c cmprrtrft() (the comparison done depends on cmprtype), using a +c quick-sort algorithm. +c +c Argument declaration +c Outputs: +c (none) +c Inputs: +c cmprtype I comparison type, passed to cmprrtrft() (see +c comments in cmprrtrft() for details) +c startindex I start index into retrofit-record arrays +c of the current partition to be sorted +c stopindex I stop index into retrofit-record arrays +c of the current partition to be sorted +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/24/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 cmprtype + integer*4 startindex + integer*4 stopindex +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c cmprrtrft I compares two retrofit records +c (< 0 if a < b, 0 if a = b, > 0 if a > b) +c + integer*4 cmprrtrft +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 l + integer*4 r +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c + if( stopindex - startindex .GT. 1 ) then + l = startindex + 1 + r = stopindex + + do while ( l .LT. r ) + do while ( l .LE. stopindex ) + if( cmprrtrft(cmprtype, l, startindex) .LE. 0 ) then + l = l + 1 + else + exit + endif + end do + do while ( r .GT. startindex ) + if( cmprrtrft(cmprtype, r, startindex) .GE. 0 ) then + r = r - 1 + else + exit + endif + end do + + if( l .LT. r ) then + call swaprtrft(l, r) + else + call swaprtrft(startindex, r) + endif + end do + + call srtrtrft(cmprtype, startindex, r - 1) + call srtrtrft(cmprtype, r + 1, stopindex) + else if( stopindex - startindex .EQ. 1 ) then + if( cmprrtrft(cmprtype, startindex, stopindex) .GT. 0 ) then + call swaprtrft(stopindex, startindex) + endif + endif +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/strlen.f b/NONROAD/NR08a/SOURCE/strlen.f new file mode 100644 index 0000000..39c83f1 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/strlen.f @@ -0,0 +1,79 @@ +C**** STRLEN version 1.0 strlen.f 1.5 5/20/92 +c + function strlen( + & string ) +c + IMPLICIT NONE +c + integer*4 strlen +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine returns the actual length of a string, i.e. with no +c trailing blanks. +c +c Arguments: +c +c Inputs: +c string C string for determining length +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 11/10/91 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*(*) string +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c BLANK C blank character +c + character*1 BLANK + parameter( BLANK=' ' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idclar + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize length to zero ---- +c + idclar = len( string ) + strlen = 0 +c +c ---- check from end of string to beginning for non-blank ---- +c + do 10 i=idclar,1,-1 + if( string(i:i) .NE. BLANK ) then +c +c ---- non-blank character found, return length ---- +c + strlen = i + goto 9999 + endif + 10 continue +c +c ---- string must be all blank, return the zero length ---- +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/strmin.f b/NONROAD/NR08a/SOURCE/strmin.f new file mode 100644 index 0000000..5d8e6eb --- /dev/null +++ b/NONROAD/NR08a/SOURCE/strmin.f @@ -0,0 +1,81 @@ +C**** STRMIN +c + function strmin( + & string ) +c + IMPLICIT NONE +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c +c Description: +c +c This routine returns the actual length of a string, i.e. with no +c trailing blanks. This version never returns a zero. +c +c Arguments: +c +c Inputs: +c string C string for determining length +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 04/20/97 -gmw- Original development +c +c----------------------------------------------------------------------- +c Argument declaration: +c----------------------------------------------------------------------- +c + character*(*) string +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c BLANK C blank character +c + character*1 BLANK + parameter( BLANK=' ' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 idclar + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c ---- initialize length to zero ---- +c + idclar = LEN( string ) + strmin = 0 +c +c ---- check from end of string to beginning for non-blank ---- +c + do 10 i=idclar,1,-1 + if( string(i:i) .NE. BLANK ) then +c +c ---- non-blank character found, return length ---- +c + strmin = i + goto 9999 + endif + 10 continue +c +c ---- string must be all blank, return the length of 1 ---- +c + strmin = 1 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/swaprtrft.f b/NONROAD/NR08a/SOURCE/swaprtrft.f new file mode 100644 index 0000000..9041db0 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/swaprtrft.f @@ -0,0 +1,133 @@ +C**** SWAPRTRFT +c + subroutine swaprtrft( a, b ) +c +c----------------------------------------------------------------------- +c +c This routine swaps two retrofit records. +c +c Argument declaration +c Outputs: +c (none) +c Inputs: +c a I index of first retrofit record to be swapped +c b I index of second retrofit record to be swapped +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/24/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 a + integer*4 b +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 rec + integer*4 ryst + integer*4 ryen + integer*4 myst + integer*4 myen + character*10 scc + character*10 techtype + real*4 hpmn + real*4 hpmx + real*4 annualfracorn + real*4 effect + character*10 pollutant + integer*4 plltntidx + integer*4 id +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- store a in temp variables --- +c + rec = rtrftrec(a) + ryst = rtrftryst(a) + ryen = rtrftryen(a) + myst = rtrftmyst(a) + myen = rtrftmyen(a) + scc = rtrftscc(a) + techtype = rtrfttechtype(a) + hpmn = rtrfthpmn(a) + hpmx = rtrfthpmx(a) + annualfracorn = rtrftannualfracorn(a) + effect = rtrfteffect(a) + pollutant = rtrftpollutant(a) + plltntidx = rtrftplltntidx(a) + id = rtrftid(a) +c +c --- set a to b --- +c + rtrftrec(a) = rtrftrec(b) + rtrftryst(a) = rtrftryst(b) + rtrftryen(a) = rtrftryen(b) + rtrftmyst(a) = rtrftmyst(b) + rtrftmyen(a) = rtrftmyen(b) + rtrftscc(a) = rtrftscc(b) + rtrfttechtype(a) = rtrfttechtype(b) + rtrfthpmn(a) = rtrfthpmn(b) + rtrfthpmx(a) = rtrfthpmx(b) + rtrftannualfracorn(a) = rtrftannualfracorn(b) + rtrfteffect(a) = rtrfteffect(b) + rtrftpollutant(a) = rtrftpollutant(b) + rtrftplltntidx(a) = rtrftplltntidx(b) + rtrftid(a) = rtrftid(b) +c +c --- set b to original a --- +c + rtrftrec(b) = rec + rtrftryst(b) = ryst + rtrftryen(b) = ryen + rtrftmyst(b) = myst + rtrftmyen(b) = myen + rtrftscc(b) = scc + rtrfttechtype(b) = techtype + rtrfthpmn(b) = hpmn + rtrfthpmx(b) = hpmx + rtrftannualfracorn(b) = annualfracorn + rtrfteffect(b) = effect + rtrftpollutant(b) = pollutant + rtrftplltntidx(b) = plltntidx + rtrftid(b) = id +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/unitcf.f b/NONROAD/NR08a/SOURCE/unitcf.f new file mode 100644 index 0000000..fc08079 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/unitcf.f @@ -0,0 +1,80 @@ +C****UNITCF +c + function unitcf(index,hpavg,indlod,densit,bsfc) +c + IMPLICIT NONE +c + real*4 unitcf +c +c----------------------------------------------------------------------- +c +c This function returns the unit conversion factor for the +c corresponding unit index. Used by subroutine emfclc. +c Argument description: +c Input: +c index I index specifiying unit to be converted +c hpavg R average HP for equipment +c indlod I index of equipment type in acticity arrays +c densit R density of fuel +c bsfc R BSFC of equipment +c Output: +c unitcf R conversion factor +c +c---------------------------------------------------------------------- +c LOG: +c---------------------------------------------------------------------- +c 03/05/96 --djk-- original development +c 07/19/96 --jlf-- removed old writes +c---------------------------------------------------------------------- +c Include files: +c---------------------------------------------------------------------- +c + include 'nonrdprm.inc' + include 'nonrdefc.inc' + include 'nonrdact.inc' +c +c---------------------------------------------------------------------- +c Argument declaration: +c---------------------------------------------------------------------- +c + integer*4 index + integer*4 indlod + real*4 hpavg + real*4 densit + real*4 bsfc +c +c---------------------------------------------------------------------- +c Local variables: +c---------------------------------------------------------------------- +c + real*4 cvttmp +c +c---------------------------------------------------------------------- +c Entry point: +c---------------------------------------------------------------------- +c + cvttmp = 1.0 +c + if( index .EQ. IDXGHP ) then + cvttmp = hpavg * faclod(indlod) + else if( index .EQ. IDXGAL ) then + if( iactun(indlod) .EQ. IDXGLY .OR. + & iactun(indlod) .EQ. IDXGLD ) then + cvttmp = 1.0 + else + if( densit .EQ. 0. ) then + cvttmp = 0. + else + cvttmp = ( bsfc * faclod(indlod) * hpavg ) / densit + endif + endif + else if( index .EQ. IDXGDY ) then + cvttmp = FACGDY + endif + if( index .EQ. IDXMLT ) cvttmp = 1.0 +c +c --- return conversion factor --- +c + unitcf = cvttmp + return + end diff --git a/NONROAD/NR08a/SOURCE/vldrtrfthp.f b/NONROAD/NR08a/SOURCE/vldrtrfthp.f new file mode 100644 index 0000000..94458b6 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/vldrtrfthp.f @@ -0,0 +1,89 @@ +C**** VLDRTRFTHP +c + logical*4 function vldrtrfthp( hp ) +c +c----------------------------------------------------------------------- +c +c Validates the HP to ensure it is valid for a retrofit +c specification. The HP is only valid if it found in the hpclev +c array, if it is 0 (required for minimum HP when range is 0 to 1), +c or if it is 9999 (required for maximum HP when range is > 3000). +c +c Return value: +c .TRUE. = HP is valid +c .FALSE. = HP is not valid +c +c Argument declaration +c Inputs: +c hp R HP to validate +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/05 -cimulus- original development +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c hp values are read from file and must be 0, +c 9999, or one of the values in hpclev, which +c are hard-coded, rather than being calculated +c at runtime +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + real*4 hp +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume not valid +c + vldrtrfthp = .FALSE. +c +c --- if the HP is found in the array of HP levels, +c 0, or 9999, return true --- +c + if( hp .EQ. 0. .OR. hp .EQ. 9999. ) then ! floating-point comparison for equality okay; hp values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + vldrtrfthp = .TRUE. + else + do i = 1, MXHPC + if( hp .EQ. hpclev(i) ) then ! floating-point comparison for equality okay; hp values are read from file and must be 0, 9999, or one of the values in hpclev, which are hard-coded, rather than being calculated at runtime + vldrtrfthp = .TRUE. + exit + endif + end do + endif +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/vldrtrftrecs.f b/NONROAD/NR08a/SOURCE/vldrtrftrecs.f new file mode 100644 index 0000000..63534cd --- /dev/null +++ b/NONROAD/NR08a/SOURCE/vldrtrftrecs.f @@ -0,0 +1,432 @@ +C**** VLDRTRFTRECS +c + logical*4 function vldrtrftrecs() +c +c----------------------------------------------------------------------- +c +c Validates the entire retrofit record-set to ensure that there are +c no conflicts among the records. Some issues are only warning +c conditions, in which case a warning message is logged and +c validation continues. However, as soon as an error condition +c occurs, an error message is logged and the function returns false. +c +c Return value: +c .TRUE. = retrofit records are valid +c .FALSE. = retrofit records are not valid +c +c Argument declaration +c Inputs: +c (none) +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/26/05 -cimulus- original development +c 05/31/05 -cimulus- changed expctplltntidx to integer +c 05/31/05 -cimulus- compare fracretro to expctfracretro with a +c tolerance instead of direct comparison +c 06/02/05 -cimulus- more specific floating point format +c specifications +c 07/20/05 -cimulus- floating-point comparison for equality okay; +c rtrfteffect and plltnteffect values are read +c from file, which are hard-coded, rather than +c being calculated at runtime, and must be +c exactly the same +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c rtrftengovrlp L returns true if sets of engines overlap for two retrofit records +c strmin I returns the actual length of a string (minimum of 1) +c + logical*4 rtrftengovrlp + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*300 errprefix ! common prefix for error messages + character*300 wrnprefix ! common prefix for warning messages + integer*4 errlbl + integer*4 i, j, k, tmp + integer*4 rtrftidstidx(MXRTRFT) ! index into the retrofit-record + ! arrays of the start of each + ! retrofit ID (assumes arrays + ! sorted by ID, then pollutant) + integer*4 rtrftidstcount ! number of retrofit-ID start indexes + integer*4 prevrtrftid ! previous retrofit ID + integer*4 currtrftid ! current retrofit ID + integer*4 rtrftididxst ! first index into retrofit-record arrays + ! for current retrofit ID + integer*4 rtrftididxen ! last index into retrofit-record arrays + ! for current retrofit ID + integer*4 plltntidx ! index into rtrftplltnt + real*4 fracretro ! fraction retrofitted + integer*4 plltntinstcnt ! number of instances of a given + ! ID-pollutant combination with + ! overlapping engines + logical*4 plltntdidwrn(NRTRFTPLLTNT) ! whether or not did warning + ! for duplicate pollutant + real*4 plltntfracretro(NRTRFTPLLTNT) ! sum of fraction + ! retrofitted for a given + ! ID-pollutant combination + ! with overlapping engines + real*4 plltnteffect(NRTRFTPLLTNT) ! reduction effect for + ! a given ID-pollutant + ! combination with + ! overlapping engines + integer*4 expctplltntidx ! index into rtrftplltnt for pollutant + ! used to determine expected fraction + ! retrofitted + real*4 expctfracretro ! expected fraction retrofitted +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume not valid --- +c + vldrtrftrecs = .FALSE. +c +c --- common prefixes for messages --- +c + write(errprefix,'(2A)',ERR=9999) + & 'ERROR: Reading retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)) + write(wrnprefix,'(2A)',ERR=9999) + & 'WARNING: Reading retrofit data file: ', + & rtrftfl(:strmin(rtrftfl)) +c +c --- sort the record-set --- +c + call srtrtrft(1, 1, rtrftcount) +c +c --- find retrofit ID start indexes --- +c + rtrftidstcount = 0 + prevrtrftid = 0 ! default to invalid value for retrofit ID + do i = 1, rtrftcount + currtrftid = rtrftid(i) +c +c --- handle change in retrofit ID --- +c + if( currtrftid .NE. prevrtrftid ) then ! if retrofit ID changed + rtrftidstcount = rtrftidstcount + 1 + rtrftidstidx(rtrftidstcount) = i + endif +c + prevrtrftid = currtrftid + end do +c +c --- validate each group of records with the same retrofit ID --- +c + do i = 1, rtrftidstcount +c +c --- determine the range of retrofit-record indexes +c for the current retrofit ID --- +c + rtrftididxst = rtrftidstidx(i) + if( i .EQ. rtrftidstcount ) then ! if last start index +c +c --- end index is highest retrofit-record index --- +c + rtrftididxen = rtrftcount +c + else ! else not last start index +c +c --- end index is one less than next start index --- +c + rtrftididxen = rtrftidstidx(i + 1) - 1 +c + endif +c +c --- skip the retrofit if it only has one record --- +c + if( rtrftididxst .EQ. rtrftididxen ) then + cycle + endif +c +c --- validate each retrofit record against +c the other records with the same ID --- +c + plltntdidwrn = .FALSE. + do j = rtrftididxst, rtrftididxen +c +c --- clear fraction-retrofitted-sum and +c pollutant-effect tracking variables --- +c + plltntinstcnt = 0 + plltntfracretro = 0. + plltnteffect = -1. ! set to invalid value to flag that + ! the first effect value not found yet +c + do k = rtrftididxst, rtrftididxen +c +c --- skip record if sets of engines do not overlap --- +c + if( .NOT. rtrftengovrlp(j, k) ) then + cycle + endif +c +c --- make sure the retrofit year range is the same --- +c + if( rtrftryst(k) .NE. rtrftryst(j) .OR. + & rtrftryen(k) .NE. rtrftryen(j) ) then + errlbl = 7000 + goto 6999 + endif +c +c --- make sure the model year range is the same --- +c + if( rtrftmyst(k) .NE. rtrftmyst(j) .OR. + & rtrftmyen(k) .NE. rtrftmyen(j) ) then + errlbl = 7001 + goto 6999 + endif +c +c --- get the retrofit pollutant index +c and fraction retrofitted --- +c + plltntidx = rtrftplltntidx(k) + fracretro = rtrftannualfracorn(k) +c +c --- add the fraction retrofitted for the pollutant --- +c + plltntfracretro(plltntidx) = + & plltntfracretro(plltntidx) + fracretro +c +c --- make sure reduction effect is always the same +c for a given pollutant within the retrofit --- +c + if( plltnteffect(plltntidx) .LT. 0. ) then ! if first time pollutant encountered for this retrofit ID + plltnteffect(plltntidx) = rtrfteffect(k) ! set the expected reduction effect for this pollutant + else ! else pollutant already found for this retrofit ID + if( rtrfteffect(k) .NE. + & plltnteffect(plltntidx) ) then ! floating-point comparison for equality okay; rtrfteffect and plltnteffect values are read from file, which are hard-coded, rather than being calculated at runtime, and must be exactly the same + errlbl = 7002 + goto 6999 + endif + endif +c +c --- if a given pollutant appears more than one time +c within the retrofit, log a warning --- +c + if( plltntidx .EQ. rtrftplltntidx(j) ) then + plltntinstcnt = plltntinstcnt + 1 +c +c --- only log warning if not already logged for +c this retrofit ID and pollutant --- +c + if( plltntinstcnt .GT. 1 .AND. + & .NOT. plltntdidwrn(plltntidx) ) then + plltntdidwrn(plltntidx) = .TRUE. + write(IOWSTD,8100,ERR=9999) + & wrnprefix(:strmin(wrnprefix)), + & 'Pollutant ',rtrftpollutant(j) + & (:strmin(rtrftpollutant(j))), + & ' appears more than once', + & ' for retrofit ID ',rtrftid(j) + if( lmsgfl ) then + write(IOWMSG,8100,ERR=9999) + & wrnprefix(:strmin(wrnprefix)), + & 'Pollutant ',rtrftpollutant(j) + & (:strmin(rtrftpollutant(j))), + & ' appears more than once', + & ' for retrofit ID ',rtrftid(j) + endif + endif + endif + end do +c +c --- make sure the sum of fraction retrofitted is the +c same for each pollutant within the retrofit --- +c + expctplltntidx = 0 + expctfracretro = 0. + do k = 1, NRTRFTPLLTNT + fracretro = plltntfracretro(k) + if( fracretro .GT. 0. ) then + if( expctfracretro .GT. 0. ) then +c +c --- if fraction retrofitted values not the same +c within a certain tolerance, log error and return --- +c + if( abs(fracretro - expctfracretro) + & .GT. 0.0049 ) then + goto 7003 + endif + else + expctplltntidx = k + expctfracretro = fracretro + endif + endif + end do +c + end do +c + end do +c +c --- set result to sucess and return --- +c + 999 continue + vldrtrftrecs = .TRUE. + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 6999 continue +c +c --- order records by record number for error messages +c that output the details of two records --- +c + if( rtrftrec(j) .GT. rtrftrec(k) ) then + tmp = j + j = k + k = tmp + endif + if( errlbl .EQ. 7000 ) then + goto 7000 + else if( errlbl .EQ. 7001 ) then + goto 7001 + else if( errlbl .EQ. 7002 ) then + goto 7002 + else + goto 9999 + endif +c + 7000 continue + write(IOWSTD,8000,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different retrofit year range for same retrofit ID ', + & 'and overlapping engines','Record','Retro ID','SCC', + & 'Tech Type','Min HP','Max HP','RY Start','RY End', + & rtrftrec(j),rtrftid(j),rtrftscc(j),rtrfttechtype(j), + & rtrfthpmn(j),rtrfthpmx(j),rtrftryst(j),rtrftryen(j), + & rtrftrec(k),rtrftid(k),rtrftscc(k),rtrfttechtype(k), + & rtrfthpmn(k),rtrfthpmx(k),rtrftryst(k),rtrftryen(k) + if( lmsgfl ) then + write(IOWMSG,8000,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different retrofit year range for same retrofit ID ', + & 'and overlapping engines','Record','Retro ID','SCC', + & 'Tech Type','Min HP','Max HP','RY Start','RY End', + & rtrftrec(j),rtrftid(j),rtrftscc(j),rtrfttechtype(j), + & rtrfthpmn(j),rtrfthpmx(j),rtrftryst(j),rtrftryen(j), + & rtrftrec(k),rtrftid(k),rtrftscc(k),rtrfttechtype(k), + & rtrfthpmn(k),rtrfthpmx(k),rtrftryst(k),rtrftryen(k) + endif + goto 9999 +c + 7001 continue + write(IOWSTD,8001,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different model year range for same retrofit ID ', + & 'and overlapping engines','Record','Retro ID','SCC', + & 'Tech Type','Min HP','Max HP','MY Start','MY End', + & rtrftrec(j),rtrftid(j),rtrftscc(j),rtrfttechtype(j), + & rtrfthpmn(j),rtrfthpmx(j),rtrftmyst(j),rtrftmyen(j), + & rtrftrec(k),rtrftid(k),rtrftscc(k),rtrfttechtype(k), + & rtrfthpmn(k),rtrfthpmx(k),rtrftmyst(k),rtrftmyen(k) + if( lmsgfl ) then + write(IOWMSG,8001,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different model year range for same retrofit ID ', + & 'and overlapping engines','Record','Retro ID','SCC', + & 'Tech Type','Min HP','Max HP','MY Start','MY End', + & rtrftrec(j),rtrftid(j),rtrftscc(j),rtrfttechtype(j), + & rtrfthpmn(j),rtrfthpmx(j),rtrftmyst(j),rtrftmyen(j), + & rtrftrec(k),rtrftid(k),rtrftscc(k),rtrfttechtype(k), + & rtrfthpmn(k),rtrfthpmx(k),rtrftmyst(k),rtrftmyen(k) + endif + goto 9999 +c + 7002 continue + write(IOWSTD,8002,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different effectiveness for same retrofit ID, ', + & 'pollutant, and overlapping engines','Record', + & 'Retro ID','Pollutant','SCC','Tech Type', + & 'Min HP','Max HP','Effectiveness', + & rtrftrec(j),rtrftid(j),rtrftpollutant(j),rtrftscc(j), + & rtrfttechtype(j),rtrfthpmn(j),rtrfthpmx(j), + & rtrfteffect(j), + & rtrftrec(k),rtrftid(k),rtrftpollutant(k),rtrftscc(k), + & rtrfttechtype(k),rtrfthpmn(k),rtrfthpmx(k), + & rtrfteffect(k) + if( lmsgfl ) then + write(IOWMSG,8002,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Different effectiveness for same retrofit ID, ', + & 'pollutant, and overlapping engines','Record', + & 'Retro ID','Pollutant','SCC','Tech Type', + & 'Min HP','Max HP','Effectiveness', + & rtrftrec(j),rtrftid(j),rtrftpollutant(j),rtrftscc(j), + & rtrfttechtype(j),rtrfthpmn(j),rtrfthpmx(j), + & rtrfteffect(j), + & rtrftrec(k),rtrftid(k),rtrftpollutant(k),rtrftscc(k), + & rtrfttechtype(k),rtrfthpmn(k),rtrfthpmx(k), + & rtrfteffect(k) + endif + goto 9999 +c + 7003 continue + write(IOWSTD,8003,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Sum of fraction-or-N retrofitted per pollutant ', + & 'not the same for for retrofit ID ',rtrftid(j), + & 'Pollutant','Frac-or-N Retro', + & rtrftplltnt(expctplltntidx), + & plltntfracretro(expctplltntidx), + & rtrftplltnt(k),plltntfracretro(k) + if( lmsgfl ) then + write(IOWMSG,8003,ERR=9999) + & errprefix(:strmin(errprefix)), + & 'Sum of fraction-or-N retrofitted per pollutant ', + & 'not the same for for retrofit ID ',rtrftid(j), + & 'Pollutant','Frac-or-N Retro', + & rtrftplltnt(expctplltntidx), + & plltntfracretro(expctplltntidx), + & rtrftplltnt(k),plltntfracretro(k) + endif + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 8000 format(/,1X,A,/,6X,2A,/,11X,A,2X,A,2X,A,9X,A,3X,A,2X,A,2X,A, + &2X,A,2(/,11X,I6,2X,I8,2X,A,2X,A,2X,F6.0,2X,F6.0,2X,I8,2X,I6)) + 8001 format(/,1X,A,/,6X,2A,/,11X,A,2X,A,2X,A,9X,A,3X,A,2X,A,2X,A, + &2X,A,2(/,11X,I6,2X,I8,2X,A,2X,A,2X,F6.0,2X,F6.0,2X,I8,2X,I6)) + 8002 format(/,1X,A,/,6X,2A,/,11X,A,2X,A,2X,A,3X,A,9X,A,3X,A,2X,A, + &2X,A,2(/,11X,I6,2X,I8,2X,A,2X,A,2X,A,2X,F6.0,2X,F6.0,2X,F13.3)) + 8003 format(/,1X,A,/,6X,2A,I5,/,11X,A,3X,A,2(/,11X,A,2X,F15.3)) + 8100 format(/,1X,A,/,6X,4A,I5,/) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/vldrtrftscc.f b/NONROAD/NR08a/SOURCE/vldrtrftscc.f new file mode 100644 index 0000000..1667053 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/vldrtrftscc.f @@ -0,0 +1,79 @@ +C**** VLDRTRFTSCC +c + logical*4 function vldrtrftscc( scc ) +c +c----------------------------------------------------------------------- +c +c Validates the SCC to ensure it is valid for a retrofit +c specification. The SCC is only valid if it is RTRFTSCCALL, or +c matches something in the eqpcod array (whether exactly or as +c a global). +c +c Return value: +c .TRUE. = SCC is valid +c .FALSE. = SCC is not valid +c +c Argument declaration +c Inputs: +c scc C SCC to validate +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 scc +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c chkasc L returns true if SCC code is needed for current run +c + logical*4 chkasc +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume not valid +c + vldrtrftscc = .FALSE. +c +c --- if the SCC is RTRFTSCCALL or matches an SCC in eqpcod (whether a +c specific or a global match), return true --- +c + if( scc .EQ. RTRFTSCCALL .OR. chkasc(scc, .FALSE.) ) then + vldrtrftscc = .TRUE. + endif +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/vldrtrfttchtyp.f b/NONROAD/NR08a/SOURCE/vldrtrfttchtyp.f new file mode 100644 index 0000000..f95dc89 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/vldrtrfttchtyp.f @@ -0,0 +1,80 @@ +C**** VLDRTRFTTCHTYP +c + logical*4 function vldrtrfttchtyp( techtype ) +c +c----------------------------------------------------------------------- +c +c Validates the tech type to ensure it is valid for a retrofit +c specification. The tech type is only valid if it is +c RTRFTTCHTYPALL, or found in the tecdet array for THC exhaust, +c which will always be loaded by NONROAD. +c +c Return value: +c .TRUE. = tech type is valid +c .FALSE. = tech type is not valid +c +c Argument declaration +c Inputs: +c techtype C tech type to validate +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 05/19/05 -cimulus- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdrtrft.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + character*10 techtype +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c fnddet I returns the index in the deterioration factor arrays +c + integer*4 fnddet +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- assume not valid +c + vldrtrfttchtyp = .FALSE. +c +c --- if the tech type is RTRFTTCHTYPALL or matches a tech type in +c tecdet for THC exhaust, return true --- +c + if( techtype .EQ. RTRFTTCHTYPALL + & .OR. fnddet(IDXTHC, techtype) .GT. 0 ) then + vldrtrfttchtyp = .TRUE. + endif +c +c --- return --- +c + goto 9999 +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/wadeeq.f b/NONROAD/NR08a/SOURCE/wadeeq.f new file mode 100644 index 0000000..37fa529 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wadeeq.f @@ -0,0 +1,73 @@ + REAL FUNCTION WADEEQ(FrcFul,TnkSiz,RVP,MinTmp,MaxTmp) +C +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 2004 -dfk- original development +c 7/18/05 -epa- fix AdjMax glitch that would yield tiny negative or +c positive VapGen due to floating point calcs when +c MaxTmp equals MinTmp, as when both are set to 40F. +c +c----------------------------------------------------------------------- +c + IMPLICIT NONE +C + REAL FrcFul ! Fraction of tank full of fuel + REAL TnkSiz ! Tanks size, gallons + REAL RVP ! Fuel RVP, psi + REAL MinTmp ! Minimum temperature, F + REAL MaxTmp ! Maximum temperature, F + REAL VapSpc ! Vapor space + REAL AdjMax ! Adjusted maximum temperature + REAL VapPrs ! Vapor pressure + REAL PctEvp ! Percent evap + REAL DMinTp + REAL DMaxTp + REAL IntPrs ! Initial pressure + REAL FinPrs ! Final pressure + REAL FlDens ! Fuel Density + REAL MolWt ! Molecular weight + REAL VapGen ! Generated vapor (in g/day) +C + VapSpc=((1. - FrcFul) * TnkSiz + 0.15 * TnkSiz) / 7.841 +C + if( MaxTmp .GT. MinTmp) then + AdjMax = (MaxTmp - MinTmp) * 0.992 + MinTmp +C + VapPrs=1.0223 * RVP + (0.0119 * 3. * RVP) / (1. - 0.0368 * RVP) +C + PctEvp=66.401 - 12.718 * VapPrs + 1.3067 * VapPrs ** 2 - + & 0.077934 * VapPrs ** 3 + 0.0018407 * VapPrs ** 4 +C + DMinTp=PctEvp + ((262. / ((PctEvp / 6.) + 560.)) - 0.0113) * + & (100. - MinTmp) +C + DMaxTp=PctEvp + ((262. / ((PctEvp / 6.) + 560.)) - 0.0113) * + & (100. - AdjMax) +C + IntPrs=14.697 - 0.53089 * DMinTp + 0.0077215 * DMinTp ** 2 - + & 0.000055631 * DMinTp ** 3 + 0.0000001769 * DMinTp ** 4 +C + FinPrs=14.697 - 0.53089 * DMaxTp + 0.0077215 * DMaxTp ** 2 - + & 0.000055631 * DMaxTp ** 3 + 0.0000001769 * DMaxTp ** 4 +C + FlDens=6.386 - 0.0186 * RVP +C + MolWt=(73.23 - 1.274 * RVP) + (((MinTmp + AdjMax) / 2.) - 60.) + & * 0.059 +C + VapGen=VapSpc * 454. * FlDens * (520. / (690. - 4. * MolWt)) * + & ((IntPrs / (14.7 - IntPrs) + FinPrs / (14.7 - FinPrs)) / 2.) * + & (((14.7 - IntPrs) / (MinTmp + 460.)) - ((14.7 - FinPrs) / + & (AdjMax + 460.))) +C + else + VapGen = 0. + end if +c + WADEEQ=VapGen ! g/day +c WADEEQ=VapGen/ TnkSiz ! g/gal +C + RETURN + END diff --git a/NONROAD/NR08a/SOURCE/wrtams.f b/NONROAD/NR08a/SOURCE/wrtams.f new file mode 100644 index 0000000..788c1e6 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtams.f @@ -0,0 +1,161 @@ +C**** WRTAMS +c + subroutine wrtams( ierr, emsams, asccod ) +c +c----------------------------------------------------------------------- +c +c writes the records for the EPS2 AMS file +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c emsams R array of emissions +c asccod C SCC code +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/01/97 --gmw-- original development +c 06/14/04 --dfk-- commented out resting loss +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' + include 'nonrdreg.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + real*4 emsams(NCNTY,MXPOL) + character*10 asccod +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*5 isbrg + integer*4 idxfip, i + real*4 crtpol +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + isbrg = ' ' +c +c --- loop over counties --- +c + do 10 idxfip=1,NCNTY + if( .NOT. lfipcd(idxfip) ) goto 10 +c +c --- HC species --- +c + crtpol = emsams(idxfip,IDXTHC) + emsams(idxfip,IDXCRA) + + & emsams(idxfip,IDXDIU) + emsams(idxfip,IDXDIS) + + & emsams(idxfip,IDXSPL) + emsams(idxfip,IDXRLS) +c & emsams(idxfip,IDXRST) + crtpol = crtpol * cvtams + if( crtpol .GT. 0. ) write(IOWAMS,9000) itype, irefyr, + & ibasyr, inetyp, fipcod(idxfip), + & isbrg, asccod(1:4), asccod, iperod, + & ibegdt, ienddt, ISCTHC, crtpol, + & ' ',(-9,i=1,36) +c +c --- NOx species --- +c + crtpol = emsams(idxfip,IDXNOX) + crtpol = crtpol * cvtams + if( crtpol .GT. 0. ) write(IOWAMS,9000,ERR=7000) itype, irefyr, + & ibasyr, inetyp, fipcod(idxfip), + & isbrg, asccod(1:4), asccod, iperod, + & ibegdt, ienddt, ISCNOX, crtpol, + & ' ',(-9,i=1,36) +c +c --- CO species --- +c + crtpol = emsams(idxfip,IDXCO) + crtpol = crtpol * cvtams + if( crtpol .GT. 0. ) write(IOWAMS,9000,ERR=7000) itype, irefyr, + & ibasyr, inetyp, fipcod(idxfip), + & isbrg, asccod(1:4), asccod, iperod, + & ibegdt, ienddt, ISCCO, crtpol, + & ' ',(-9,i=1,36) +c +c --- SOx species --- +c + crtpol = emsams(idxfip,IDXSOX) + crtpol = crtpol * cvtams + if( crtpol .GT. 0. ) write(IOWAMS,9000,ERR=7000) itype, irefyr, + & ibasyr, inetyp, fipcod(idxfip), + & isbrg, asccod(1:4), asccod, iperod, + & ibegdt, ienddt, ISCSOX, crtpol, + & ' ',(-9,i=1,36) +c +c --- HC species --- +c + crtpol = emsams(idxfip,IDXPM) + crtpol = crtpol * cvtams + if( crtpol .GT. 0. ) write(IOWAMS,9000,ERR=7000) itype, irefyr, + & ibasyr, inetyp, fipcod(idxfip), + & isbrg, asccod(1:4), asccod, iperod, + & ibegdt, ienddt, ISCPM, crtpol, + & ' ',(-9,i=1,36) +c +c --- set error code to succes and return ---- +c + 10 continue + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the EPS2 AMS file ', + & amsfl(:strmin(amsfl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the EPS2 AMS file ', + & amsfl(:strmin(amsfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(A1,I2,1X,I2,A2,A5,1X,A5,1X,A4,1X,A10,1X,A2,1X,I8,1X,I8, + & 1X,I5,1X,E10.4,1X,A3,3(1X,I5),1X,I3,1X,28(I5,1X),5(1X,I10)) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/wrtbmy.f b/NONROAD/NR08a/SOURCE/wrtbmy.f new file mode 100644 index 0000000..75b9be2 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtbmy.f @@ -0,0 +1,280 @@ +C**** WRTBMY +c + subroutine wrtbmy( ierr, fipin, subin, ascin, hpin, tecin, iyrin, + & popin, emiss, fulin, actin, ldfcin, hpavin, + & fracretro, unitsretro, iexev ) +c +c----------------------------------------------------------------------- +c +c writes one data record to the output by-model-year data file which will be read by +c the reporting utility. +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c fipin C FIPS code +c subin C subregion code +c ascin C SCC code +c hpin R HP category +c tecin C technology type name +c iyrin I model year +c popin R population +c emiss R array of emissions +c fulin R fuel consumption +c actin R activity +c ldfcin R load factor (exhaust only) +c hpavin R HP average (exhaust only) +c fracretro R fraction of population that was retrofitted +c (exhaust only; also ignored if not running +c retrofit functionality) +c unitsretro R number of units that were retrofitted (exhaust +c only; also ignored if not running retrofit +c functionality) +c iexev I switch between exhaust and evap output +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/20/98 --mmj-- original development (started w/wrtdat) +c 10/19/98 --mmj-- included spillage emissions as separate entry +c 08/03/01 -1 charvey adds fuel consumption output +c 06/04/04 -dfk-- modified to output exhaust and evap separatly +c due to introduction of evap techs +c 11/15/04 -dfk-- changed to add 3-hose rec-marine and +c non-rec-marine hose into generic hose +c 02/24/05 -cimulus- added activity (new parameter and output) +c 02/25/05 -cimulus- added ldfcin and hpavin (new parameters +c and output for exhaust only) +c 03/08/05 -cimulus- changed the order of the output of the +c columns to be consistent with the OUT file +c and the postprocessors +c 05/20/05 -cimulus- output new retrofit fields, if running +c retrofit functionality +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*5 fipin + character*5 subin + character*10 ascin + character*10 tecin + real*4 hpin + integer*4 iyrin + real*4 popin + real*4 emiss(MXPOL) + real*4 fulin + real*4 actin + real*4 ldfcin + real*4 hpavin + real*4 fracretro + real*4 unitsretro + integer iexev +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c COMMA C parameter for the comma character +c + character*1 COMMA +c + parameter( COMMA = ',' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*400 line + integer*4 ilen, i + integer*4 io,ib,ie + character*(MXSTR) iofl + real*4 tmpemis(IDXRLS) +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + line = ' ' +c +c --- set up temporary emission array, adding all hose permeations together +c + tmpemis=0. +c + do i=IDXTHC,IDXRLS + if(i.ge.IDXHOS.and.i.le.IDXVNT) then + tmpemis(IDXHOS)=tmpemis(IDXHOS)+emiss(i) + else + tmpemis(i)=emiss(i) + endif + end do +c +c --- set loop parameters and I/O depending on exhaust/evap +c + if(iexev.eq.1) then + ib=IDXTHC + ie=IDXCRA + io=IOWBMY + iofl=bmyfl + else +c ib=IDXDIU +c ie=IDXRLS + io=IOWEVBMY + iofl=evbmyfl + endif +c +c --- write the data to line --- +c + write(line,9000,ERR=7000) fipin, COMMA, + & subin, COMMA, + & ascin, COMMA, + & INT(hpin), COMMA, + & tecin, COMMA, + & iyrin, COMMA, + & popin +c +c --- calculate SPILLAGE as a function of REFUELING --- +c +c if( emiss(IDXSPL) .GT. 0. ) then +c if( emiss(IDXDIS) .GT. 0. ) then +c emiss(IDXDIS) = emiss(IDXDIS) + emiss(IDXSPL) +c else +c emiss(IDXDIS) = emiss(IDXSPL) +c endif +c endif +c + if(iexev.eq.1) then + do 10 i=ib,ie + if(i.ge.IDXNCK.and.i.le.IDXVNT) goto10 ! skip rec-marine, they're included in hose + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(i) + 10 continue + else + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXSOK) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXDIU) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXDIS) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXSPL) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXRLS) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXTKP) + ilen = strmin(line) + 1 + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(IDXHOS) + endif +c +c do 20 i=IDXRLS,IDXRLS +c ilen = strmin(line) + 1 +c write(line(ilen:),9001,ERR=7000) COMMA,emiss(i) +c 20 continue +c + ilen = strmin(line) + 1 + if( fulin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, fulin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + + ilen = strmin(line) + 1 + if( actin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, actin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + + if(iexev.eq.1) then ! if exhaust + ilen = strmin(line) + 1 + if( ldfcin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, ldfcin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + + ilen = strmin(line) + 1 + if( hpavin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, hpavin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + + if( lrtrftfl ) then + ilen = strmin(line) + 1 + if( fracretro .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, fracretro + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + + ilen = strmin(line) + 1 + if( unitsretro .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, unitsretro + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + endif + endif + +c --- write the entire line to output file --- +c + write(io,'(2A)',ERR=7000) line(:strmin(line)), COMMA +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the by-model-year file ', + & iofl(:strmin(iofl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the by-model-year file ', + & iofl(:strmin(iofl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(6A,I5,3A,I4,A,E15.8) + 9001 format(A,E15.8) + 9002 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/wrtdat.f b/NONROAD/NR08a/SOURCE/wrtdat.f new file mode 100644 index 0000000..65f14cb --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtdat.f @@ -0,0 +1,249 @@ +C**** WRTDAT +c + subroutine wrtdat( ierr, fipin, subin, ascin, hpin, popin, actin, + & fulin, ldfcin, hpavin, fracretro, unitsretro, + & emiss ) +c +c----------------------------------------------------------------------- +c +c writes one data record to the data file which will be read by +c the reporting utility. +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c fipin C FIPS code +c subin C subregion code +c ascin C SCC code +c hpin R HP category +c popin R population +c actin R activity +c fulin R fuel consumption +c ldfcin R load factor +c hpavin R HP average +c fracretro R fraction of population that was retrofitted +c (ignored if not running retrofit functionality) +c unitsretro R number of units that were retrofitted (ignored +c if not running retrofit functionality) +c emiss R array of emissions +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 06/01/97 --gmw-- original development +c 05/21/98 --gwilson-- temporarily writes zeros for RESTINGLOSS, +c RUNNINGLOSS, and HOTSOAK automatically +c 10/19/98 --mjimenez-- included spillage emissions as separate +c entry +c 09/21/04 --dfk-- changed order of emission output +c 11/15/04 --dfk-- changed to add 3-hose rec-marine and +c non-rec-marine hose into generic hose +c 02/25/05 -cimulus- added ldfcin and hpavin (new parameters +c and output) +c 03/08/05 -cimulus- changed the order of the output of the +c columns to be consistent with the BMX +c and BMV files and the postprocessors +c 05/20/05 -cimulus- output new retrofit fields, if running +c retrofit functionality +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr + character*5 fipin + character*5 subin + character*10 ascin + real*4 hpin + real*4 popin + real*4 actin + real*4 fulin + real*4 ldfcin + real*4 hpavin + real*4 fracretro + real*4 unitsretro + real*4 emiss(MXPOL) +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c COMMA C parameter for the comma character +c + character*1 COMMA +c + parameter( COMMA = ',' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*400 line + integer*4 ilen, i, j + integer*4 order(IDXRLS) + real*4 tmpemis(IDXRLS) +c data order/1,2,3,4,5,6,7,11,8,12,13,14,9,10/ + data order/1,2,3,4,5,6,7,14,8,15,16,17,9,10,11,12,13/ +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + line = ' ' +COLDc +COLDc --- automatically set RESTINGLOSS, RUNNINGLOSS, and HOTSOAK +COLDc to zero ---- +COLDc +COLD emiss(IDXSOK) = 0. +COLD emiss(IDXRLS) = 0. +COLD emiss(IDXRST) = 0. +c +c --- set up temporary emission array, adding all hose permeations together +c + tmpemis=0. +c + do j=IDXTHC,IDXRLS + if(j.ge.IDXHOS.and.j.le.IDXVNT) then + tmpemis(IDXHOS)=tmpemis(IDXHOS)+emiss(j) + else + tmpemis(j)=emiss(j) + end if + end do +c +c --- write the key identifiers --- +c + write(line,9000,ERR=7000) fipin, COMMA, subin, COMMA, + & ascin, COMMA, INT(hpin) + ilen = strmin(line) + 1 + if( popin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, popin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif +c +c --- calculate SPILLAGE as a function of REFUELING --- +c +c if( emiss(IDXSPL) .GT. 0. ) then +c if( emiss(IDXDIS) .GT. 0. ) then +c emiss(IDXDIS) = emiss(IDXDIS) + emiss(IDXSPL) +c else +c emiss(IDXDIS) = emiss(IDXSPL) +c endif +c endif + do 10 j=IDXTHC,IDXRLS + i = order(j) + if(i.ge.IDXNCK.and.i.le.IDXVNT) cycle ! skip rec-marine, they're included in hose + ilen = strmin(line) + 1 + if( tmpemis(i) .GE. 0. ) then + write(line(ilen:),9001,ERR=7000) COMMA,tmpemis(i) + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + 10 continue +c do 20 i=IDXRLS,IDXRLS +c ilen = strmin(line) + 1 +c if( emiss(i) .GE. 0. ) then +c write(line(ilen:),9001,ERR=7000) COMMA,emiss(i) +c else +c write(line(ilen:),9002,ERR=7000) COMMA +c endif +c 20 continue + ilen = strmin(line) + 1 + if( fulin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, fulin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + ilen = strmin(line) + 1 + if( actin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, actin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + ilen = strmin(line) + 1 + if( ldfcin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, ldfcin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + ilen = strmin(line) + 1 + if( hpavin .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, hpavin + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + if( lrtrftfl ) then + ilen = strmin(line) + 1 + if( fracretro .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, fracretro + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + ilen = strmin(line) + 1 + if( unitsretro .GE. 0 ) then + write(line(ilen:),9001,ERR=7000) COMMA, unitsretro + else + write(line(ilen:),9002,ERR=7000) COMMA + endif + endif +c +c --- write the entire line to output file --- +c + write(IOWDAT,'(2A)',ERR=7000) line(:strmin(line)), COMMA +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the output data file ', + & datfl(:strmin(datfl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the output data file ', + & datfl(:strmin(datfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(6A,I5,A) + 9001 format(A,E15.8) + 9002 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/wrthdr.f b/NONROAD/NR08a/SOURCE/wrthdr.f new file mode 100644 index 0000000..6db813c --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrthdr.f @@ -0,0 +1,292 @@ +C**** WRTHDR +c + subroutine wrthdr( ierr ) +c +c----------------------------------------------------------------------- +c +c Writes the header data of the data file which will be read by +c the reporting utility. +c +c Argument declaration. +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/93 --gmw-- original development +c 10/19/98 --mjimenez -- included spillage emissions as separate +c entry +c 05/11/04 --dfk-- added tank and hose permeation +c 09/21/04 --dfk-- changed order of emission output +c 09/22/04 --dfk-- changed SOx to SO2 per NR04 +c 01/11/05 --dfk-- removed duplicate entries in month selection section +c 02/25/05 -cimulus- added LF and HPAvg +c 02/25/05 -cimulus- added spacing to header row to facilitate +c viewing in a text editor, changed 'County' +c to 'Cnty', and changed 'SubRegion' to 'SubR' +c 03/08/05 -cimulus- changed 'RuningLoss' to 'RunLoss' +c changed the order of the output of the +c fields to be consistent with the BMX +c and BMV files and the postprocessors +c 05/19/05 -cimulus- output new retrofit fields, if running +c retrofit functionality; changed 'Fuel-Cons.' +c to 'FuelCons.' and 'Displacmnt' to +c 'Displacement' for consistency with the +c by-model-year output files; made sure the +c first row output has correct number of fields +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (minimum of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c COMMA C parameter for the comma character +c COMMA C parameter for the quote character +c + character*1 COMMA + character*1 QUOTE +c + parameter( COMMA = ',' ) + parameter( QUOTE = '"' ) +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + character*80 perstr + character*40 cdate + character*15 unitmp + character*15 namesp(MXPOL), name(11) + integer*4 ilen, idum, i + real*4 rdum(MXPOL) + integer*4 order(IDXRLS) +c data order/1,2,3,4,5,6,7,11,8,12,13,14,9,10/ + data order/1,2,3,4,5,6,7,14,8,15,16,17,9,10,11,12,13/ + integer*4 tmpend +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- initialize dummy array --- +c + do 10 i=1,MXPOL + rdum(i) = 0. + 10 continue + idum = 0 +c +c --- call routine to get the data and time --- +c + call getime( cdate ) +c +c --- write a record to drive the type of data to come --- +c + if( lrtrftfl ) then ! if running retrofit functionality + tmpend = 7 + else + tmpend = 5 + endif + write(IOWDAT,9000,ERR=7000) ' ', COMMA, ' ', COMMA, + & ' ', COMMA, idum, COMMA, + & (rdum(i), COMMA,i=IDXTHC,IDXHOS), + & (rdum(i), COMMA,i=IDXSOK,IDXRLS), + & (rdum(1), COMMA,i=1,tmpend) +c +c --- write the version number and date and time --- +c + write(IOWDAT,'(100(:A))',ERR=7000) QUOTE, PROGNM, QUOTE + write(IOWDAT,'(100(:A))',ERR=7000) QUOTE, VERSON, QUOTE + write(IOWDAT,'(100(:A))',ERR=7000) QUOTE, cdate(:strmin(cdate)), + & QUOTE +c +c --- write the titles --- +c + write(IOWDAT,'(3A)',ERR=7000) QUOTE, title1(:strmin(title1)),QUOTE + write(IOWDAT,'(3A)',ERR=7000) QUOTE, title2(:strmin(title2)),QUOTE +c +c --- write the name of options file used --- +c + write(IOWDAT,'(2A)',ERR=7000) 'Options file used: ', + & sysfl(:strmin(sysfl)) +c +c --- build the period string from the user specified parameters --- +c + if( ismtyp .EQ. IDXTOT ) then + perstr = 'Total for ' + else if( ismtyp .EQ. IDXTYP ) then + if( iday .EQ. IDXWKD ) then + perstr = 'Typical weekday for ' + else if( iday .EQ. IDXWKE ) then + perstr = 'Typical weekend day for ' + endif + unitmp = 'Tons/Day' + endif +c +c --- add part of string that tells which time period was done --- +c + ilen = strmin(perstr) + 2 + if( iprtyp .EQ. IDXANN ) then + if( ismtyp .EQ. IDXTOT ) unitmp = 'Tons/Year' + write(perstr(ilen:),'(A,I4)') 'year: ',iepyr + else if( iprtyp .EQ. IDXSES ) then + if( ismtyp .EQ. IDXTOT ) unitmp = 'Tons/Season' + if( iseasn .EQ. IDXWTR ) then + write(perstr(ilen:),'(A,I4)') 'Winter Season, ',iepyr + else if( iseasn .EQ. IDXSPR ) then + write(perstr(ilen:),'(A,I4)') 'Spring Season, ',iepyr + else if( iseasn .EQ. IDXSUM ) then + write(perstr(ilen:),'(A,I4)') 'Summer Season, ',iepyr + else if( iseasn .EQ. IDXFAL ) then + write(perstr(ilen:),'(A,I4)') 'Fall Season, ',iepyr + endif + else if( iprtyp .EQ. IDXMTH) then + if( ismtyp .EQ. IDXTOT ) unitmp = 'Tons/Month' + if( imonth .EQ. IDXJAN ) then + write(perstr(ilen:),'(A,I4)') 'January, ',iepyr + else if( imonth .EQ. IDXFEB ) then + write(perstr(ilen:),'(A,I4)') 'February, ',iepyr + else if( imonth .EQ. IDXMAR ) then + write(perstr(ilen:),'(A,I4)') 'March, ',iepyr + else if( imonth .EQ. IDXAPR ) then + write(perstr(ilen:),'(A,I4)') 'April, ',iepyr + else if( imonth .EQ. IDXMAY ) then + write(perstr(ilen:),'(A,I4)') 'May, ',iepyr + else if( imonth .EQ. IDXJUN ) then + write(perstr(ilen:),'(A,I4)') 'June, ',iepyr + else if( imonth .EQ. IDXJUL ) then + write(perstr(ilen:),'(A,I4)') 'July, ',iepyr + else if( imonth .EQ. IDXAUG ) then + write(perstr(ilen:),'(A,I4)') 'August, ',iepyr + else if( imonth .EQ. IDXSEP ) then + write(perstr(ilen:),'(A,I4)') 'September, ',iepyr + else if( imonth .EQ. IDXOCT ) then + write(perstr(ilen:),'(A,I4)') 'October, ',iepyr + else if( imonth .EQ. IDXNOV ) then + write(perstr(ilen:),'(A,I4)') 'November, ',iepyr + else if( imonth .EQ. IDXDEC ) then + write(perstr(ilen:),'(A,I4)') 'December, ',iepyr + endif + endif +c +c --- write the period string to the output file --- +c + write(IOWDAT,'(3A)',ERR=7000) QUOTE, perstr(:strmin(perstr)),QUOTE +c +c --- write the period string to the output file --- +c + write(IOWDAT,'(3A)',ERR=7000) QUOTE, unitmp(:strmin(unitmp)),QUOTE +c +c --- intialize the field name strings ---- +c + name(1) = 'Cnty' + name(2) = 'SubR' + name(3) = 'SCC' + name(4) = 'HP' + name(5) = 'Population' + name(6) = 'FuelCons.' + name(7) = 'Activity' + name(8) = 'LF' + name(9) = 'HPAvg' + name(10) = 'FracRetro' + name(11) = 'UnitsRetro' +c +c --- names of species --- +c + namesp(IDXTHC) = 'THC-Exhaust' + namesp(IDXNOX) = 'NOx-Exhaust' + namesp(IDXCO) = 'CO-Exhaust' + namesp(IDXPM) = 'PM-Exhaust' + namesp(IDXCRA) = 'Crankcase' + namesp(IDXDIU) = 'Diurnal' + namesp(IDXDIS) = 'Displacement' + namesp(IDXSPL) = 'Spillage' + namesp(IDXSOK) = 'Hot-Soaks' + namesp(IDXTKP) = 'TankPerm' + namesp(IDXHOS) = 'HosePerm' + namesp(IDXRLS) = 'RunLoss' +c namesp(IDXRST) = 'RestngLoss' + namesp(IDXSOX) = 'SO2-Exhaust' + namesp(IDXCO2) = 'CO2-Exhaust' + namesp(IDSTHC) = 'THC-Starts' + namesp(IDSNOX) = 'NOx-Starts' + namesp(IDSCO) = 'CO-Starts' + namesp(IDSPM) = 'PM-Starts' + namesp(IDSSOX) = 'SO2-Starts' + namesp(IDSCO2) = 'CO2-Starts' +c +c --- write the lines with species names and units --- +c + + if( lrtrftfl ) then ! if running retrofit functionality + tmpend = 11 + else + tmpend = 9 + endif + write(IOWDAT,9001,ERR=7000) + & (name(i),COMMA,i=1,5), + & (namesp(order(i)),COMMA,i=IDXTHC,IDXRLS-3), + & (name(i),COMMA,i=6,tmpend) +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the output data file ', + & datfl(:strmin(datfl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the output data file ', + & datfl(:strmin(datfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(6A,I5,A,30(:,F3.0,A)) + 9001 format(A5,A,A5,A,A10,A,A5,A,100(:A15,A)) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end + diff --git a/NONROAD/NR08a/SOURCE/wrtmsg.f b/NONROAD/NR08a/SOURCE/wrtmsg.f new file mode 100644 index 0000000..3f77133 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtmsg.f @@ -0,0 +1,242 @@ +C**** WRTMSG +c + subroutine wrtmsg( ierr ) +c +c----------------------------------------------------------------------- +c +c echos the input parameters to the message file +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/97 --gmw-- original development +c 09/22/04 --dfk-- added rec marine diesel sulfur +c 03/15/05 --cimulus-- added growth year +c 03/15/05 --cimulus-- added technology year +c 09/20/06 --epa-- added ethanol blend mkt share & volume percent +c 01/24/07 --epa-- add mthnam(IDXDEC) = MONDEC +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdact.inc' + include 'nonrdalo.inc' + include 'nonrdefc.inc' + include 'nonrdeqp.inc' + include 'nonrdgrw.inc' + include 'nonrdreg.inc' + include 'nonrdtpl.inc' + include 'nonrdusr.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (min of 1) +c fndchr I returns the index of a string in an array of strings +c + integer*4 strmin + integer*4 fndchr +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c + character*40 name, pernam(IDXSES), sumnam(IDXTOT), mthnam(12) + character*40 sesnam(4), daynam(2) + integer*4 i, idx +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL +c +c --- echo the /OPTIONS/ packet parameters --- +c + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9000,ERR=7000) '*** Scenario Specific Parameters ***' + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9001,ERR=7000) 'First Title line', + & title1(:strmin(title1)) + write(IOWMSG,9001,ERR=7000) 'Second Title line', + & title2(:strmin(title2)) + write(IOWMSG,9002,ERR=7000) 'Fuel RVP (psi)',fulrvp + write(IOWMSG,9002,ERR=7000) 'Fuel Oxygen weight %',oxypct + write(IOWMSG,9004,ERR=7000) 'Gasoline Sulfur %',soxgas + write(IOWMSG,9004,ERR=7000) 'Diesel Sulfur %',soxdsl + write(IOWMSG,9004,ERR=7000) 'Marine Diesel Sulfur %',soxdsm + write(IOWMSG,9004,ERR=7000) 'LPG/CNG Sulfur %',soxcng + write(IOWMSG,9002,ERR=7000) 'Minimum Temperature',tempmn + write(IOWMSG,9002,ERR=7000) 'Maximum Temperature',tempmx + write(IOWMSG,9002,ERR=7000) 'Average Ambient Temp',amtemp + if( lhigh ) then + write(IOWMSG,9001,ERR=7000) 'Altitude of region',FLAGHI + else + write(IOWMSG,9001,ERR=7000) 'Altitude of region',FLAGLO + endif + write(IOWMSG,9002,ERR=7000) 'Stage II Control %',100 - stg2fac*100 + write(IOWMSG,9002,ERR=7000) 'EtOH Blend % Mkt',ethmkt + write(IOWMSG,9002,ERR=7000) 'EtOH Vol %',ethvpct +c +c --- echo the /PERIOD/ packet parameters --- +c + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9000,ERR=7000) '*** Period Parameters ***' + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9003,ERR=7000) 'Year of Inventory',iepyr + pernam(IDXANN) = PERANN + pernam(IDXSES) = PERSES + pernam(IDXMTH) = PERMTH + write(IOWMSG,9001,ERR=7000) 'Inventory for', + & pernam(iprtyp)(:strmin(pernam(iprtyp)))//' period' + sumnam(IDXTYP) = SUMTYP + sumnam(IDXTOT) = SUMTOT + write(IOWMSG,9001,ERR=7000) 'Emissions summed for', + & sumnam(ismtyp)(:strmin(sumnam(ismtyp))) + if( iprtyp .EQ. IDXSES ) then + sesnam(IDXWTR) = SESWTR + sesnam(IDXSPR) = SESSPR + sesnam(IDXSUM) = SESSUM + sesnam(IDXFAL) = SESFAL + write(IOWMSG,9001,ERR=7000) 'Season', + & sesnam(iseasn)(:strmin(sesnam(iseasn))) + else if( iprtyp .EQ. IDXMTH ) then + mthnam(IDXJAN) = MONJAN + mthnam(IDXFEB) = MONFEB + mthnam(IDXMAR) = MONMAR + mthnam(IDXAPR) = MONAPR + mthnam(IDXMAY) = MONMAY + mthnam(IDXJUN) = MONJUN + mthnam(IDXJUL) = MONJUL + mthnam(IDXAUG) = MONAUG + mthnam(IDXSEP) = MONSEP + mthnam(IDXOCT) = MONOCT + mthnam(IDXNOV) = MONNOV + mthnam(IDXDEC) = MONDEC + write(IOWMSG,9001,ERR=7000) 'Month', + & mthnam(imonth)(:strmin(mthnam(imonth))) + endif + daynam(IDXWKD) = WEEKDY + daynam(IDXWKE) = WEEKND + if( ismtyp .EQ. IDXTYP ) then + write(IOWMSG,9001,ERR=7000) 'Day of week', + & daynam(iday)(:strmin(daynam(iday))) + endif + write(IOWMSG,9003,ERR=7000) 'Year of Growth Calc',igryr + write(IOWMSG,9003,ERR=7000) 'Year of Tech Sel',itchyr +c +c --- echo the /REGION/ packet parameters --- +c + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9000,ERR=7000) '*** Region of Interest ***' + write(IOWMSG,9000,ERR=7000) + if( reglvl .EQ. NATION ) then + write(IOWMSG,9001,ERR=7000) 'Region level', + & ' State-level estimates' + write(IOWMSG,9001,ERR=7000) 'States of Interest', + & 'All 50 states' + else if( reglvl .EQ. STATE ) then + write(IOWMSG,9001,ERR=7000) 'Region level', + & ' State-level estimates' + if( reglst(1) .EQ. '00000' ) then + write(IOWMSG,9001,ERR=7000) 'States of Interest', + & 'All 50 states' + else + write(IOWMSG,9001,ERR=7000) 'States of Interest' + do 10 i=1,NSTATE + if( lstacd(i) ) write(IOWMSG,9001,ERR=7000) ' ', + & statcd(i),' - ',statnm(i)(:strmin(statnm(i))) + 10 continue + endif + else if( reglvl .EQ. COUNTY ) then + write(IOWMSG,9001,ERR=7000) 'Region level', + & ' County-level estimates' + write(IOWMSG,9001,ERR=7000) 'Counties of Interest' + do 20 i=1,NCNTY + if( lfipcd(i) ) then + name = ' ' + idx = fndchr( fipcod(i)(1:2)//'000', 5, statcd, NSTATE) + if( idx .GT. 0 ) name = ', '//statnm(idx) + write(IOWMSG,9001,ERR=7000) ' ',fipcod(i), + & ' - ',cntynm(i)(:strmin(cntynm(i))),name(:strmin(name)) + endif + 20 continue + else if( reglvl .EQ. SUBCTY ) then + write(IOWMSG,9001,ERR=7000) 'Region level', + & ' Sub-County-level estimates' + write(IOWMSG,9001,ERR=7000) 'Areas of Interest' + do 30 i=1,nregin + write(IOWMSG,9001,ERR=7000) ' ', + & reglst(i)(:strmin(reglst(i))) + 30 continue + endif +c +c --- echo the /SOURCE CATEGORY/ packet parameters --- +c + write(IOWMSG,9000,ERR=7000) + write(IOWMSG,9000,ERR=7000) '*** Equipment Types ***' + write(IOWMSG,9000,ERR=7000) + if( lascal ) then + write(IOWMSG,9001,ERR=7000) 'All equipment types.' + else + write(IOWMSG,9001,ERR=7000) 'SCC codes Selected' + do 40 i=1,NEQNAM + if( lascat(i) ) write(IOWMSG,9001,ERR=7000) ' ',eqpcod(i) + 40 continue + endif +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(1X,2A)',ERR=9999) 'ERROR: Writing output ', + & 'message file.' + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(T20,A) + 9001 format(T10,A,T30,:,':',7A) + 9002 format(T10,A,T30,:,':',F6.2) + 9003 format(T10,A,T30,:,':',I4) + 9004 format(T10,A,T30,:,':',F8.4) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/wrtsi.f b/NONROAD/NR08a/SOURCE/wrtsi.f new file mode 100644 index 0000000..5d968a4 --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtsi.f @@ -0,0 +1,102 @@ +C**** WRTSI +c + subroutine wrtsi( ierr ) +c +c----------------------------------------------------------------------- +c +c writes one data record to the data file which will be read by +c the reporting utility. +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 07/27/98 --gwilson-- original development +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c +c strmin I returns the length of a string (min of 1) +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local parameters: +c----------------------------------------------------------------------- +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 i +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + write(IOWSI,9000,ERR=7000) (popsi(i),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (actsi(i),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (fuelsi(i),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXTHC),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXCRA),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXDIU),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXDIS),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (0.0,i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXNOX),i=1,MXOTCH) + write(IOWSI,9000,ERR=7000) (emissi(i,IDXCO),i=1,MXOTCH) +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the SI report file ', + & sifl(:strmin(sifl)) + write(IOWMSG,'(/,1X,3A)') + & 'ERROR: Writing to the SI report file ', + & sifl(:strmin(sifl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(E12.6,100(:,",",E12.6)) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NONROAD/NR08a/SOURCE/wrtsum.f b/NONROAD/NR08a/SOURCE/wrtsum.f new file mode 100644 index 0000000..0a39cee --- /dev/null +++ b/NONROAD/NR08a/SOURCE/wrtsum.f @@ -0,0 +1,117 @@ +C**** WRTSUM +c + subroutine wrtsum( ierr ) +c +c----------------------------------------------------------------------- +c +c Writes the summary of population records processed. +c +c Argument description: +c Outputs: +c ierr I error flag +c Inputs: +c +c----------------------------------------------------------------------- +c LOG: +c----------------------------------------------------------------------- +c +c 09/01/97 --gwilson-- original development +c 05/16/05 --cimulus-- increased size of strings in cntynm to 50 +c +c----------------------------------------------------------------------- +c Include files: +c----------------------------------------------------------------------- +c + IMPLICIT NONE + + include 'nonrdprm.inc' + include 'nonrdio.inc' + include 'nonrdreg.inc' + include 'nonrdeqp.inc' +c +c----------------------------------------------------------------------- +c Argument declarations: +c----------------------------------------------------------------------- +c + integer*4 ierr +c +c----------------------------------------------------------------------- +c External functions: +c----------------------------------------------------------------------- +c + integer*4 strmin +c +c----------------------------------------------------------------------- +c Local variables: +c----------------------------------------------------------------------- +c + integer*4 ibegj, iendj, i, j +c +c----------------------------------------------------------------------- +c Entry point: +c----------------------------------------------------------------------- +c +c --- set error flag --- +c + ierr = IFAIL + write(IOWMSG,'(/,A,/)',ERR=7000) + & ' **** Number of Population Records Found ****' +c +c --- if natinal records used echo such --- +c + if( nnatrc .GT. 0 ) then + write(IOWMSG,'(20X,3A,T45,A,I5)',ERR=7000) 'Entire U.S.',' ', + & 'National Record',':',nnatrc + endif +c +c --- loop over the states --- +c + do 10 i=1,NSTATE + if( lstacd(i) .AND. lstlev(i) ) then + write(IOWMSG,'(20X,3A,T77,A,I5)',ERR=7000) statcd(i),' ', + & statnm(i),':',nstarc(i) + ibegj = idxcty(i) + if( i .LT. NSTATE ) then + iendj = idxcty(i+1) - 1 + else + iendj = NCNTY + endif + do 20 j=ibegj,iendj + if( lfipcd(j) .AND. lctlev(j) ) then + write(IOWMSG,'(20X,3A,T77,A,I5)',ERR=7000) + & fipcod(j),' ',cntynm(j),':',nctyrc(j) + endif + 20 continue + endif + 10 continue +c +c --- set error code to succes and return ---- +c + ierr = ISUCES + goto 9999 +c +c----------------------------------------------------------------------- +c Error messages: +c----------------------------------------------------------------------- +c + 7000 continue + write(IOWSTD,'(/,1X,3A)') + & 'ERROR: Writing to the message data file ', + & datfl(:strmin(datfl)) + goto 9999 +c +c----------------------------------------------------------------------- +c Format statements: +c----------------------------------------------------------------------- +c + 9000 format(6A,I5,A) + 9001 format(A,E15.8) + 9002 format(A) +c +c----------------------------------------------------------------------- +c Return point: +c----------------------------------------------------------------------- +c + 9999 continue + return + end diff --git a/NonroadTableFilter.csv b/NonroadTableFilter.csv new file mode 100644 index 0000000..9200401 --- /dev/null +++ b/NonroadTableFilter.csv @@ -0,0 +1,39 @@ +#tableName,"yearColumnName,","monthColumnName,","zoneColumnName,","countyColumnName,","stateColumnName,","pollutantColumnName,","processColumnName,","dayColumnName,","hourColumnName,","hourDayIDColumnName,","pollutantProcessIDColumnName,","sourceUseTypeColumnName,","fuelTypeColumnName,","fuelSubTypeIDColumnName,","monthGroupIDColumnName,","sectorIDColumnName,","equipmentTypeIDColumnName,",isUserInputColumnName + nragecategory ,,,,,,,,,,,,,,,,,, + nratratio ,,,,,,pollutantID,processID,,,,,,,fuelSubTypeID,,,, + nrbaseyearequippopulation ,,,,,,,,,,,,,,,,,, + nrcrankcaseemissionrate ,,,,,,,,,,,,,,,,,, + nrdayallocation ,,,,,,,,,,,,,,,,,, + nrdeterioration ,,,,,,,,,,,,,,,,,, + nrdioxinemissionrate ,,,,,,pollutantID,processID,,,,,,fuelTypeID,,,,, + nremissionrate ,,,,,,,,,,,,,,,,,, + nrengtechfraction ,,,,,,,,,,,,,,,,,, + nrequipmenttype ,,,,,,,,,,,,,,,,,, + nrevapemissionrate ,,,,,,,,,,,,,,,,,, + nrfuelsupply ,,,,,,,,,,,,,,,monthGroupID,,, + nrfueltype ,,,,,,,,,,,,,,,,,, + nrfuelsubtype ,,,,,,,,,,,,,,,,,, + nrgrowthindex ,,,,,,,,,,,,,,,,,, + nrgrowthpattern ,,,,,,,,,,,,,,,,,, + nrgrowthpatternfinder ,,,,,,,,,,,,,,,,,, + nrhcspeciation ,,,,,,pollutantID,processID,,,,,,,fuelSubTypeID,,,, + nrhourallocation ,,,,,,,,,,,,,,,,,, + nrhourallocpattern ,,,,,,,,,,,,,,,,,, + nrhourpatternfinder ,,,,,,,,,,,,,,,,,, + nrhpcategory ,,,,,,,,,,,,,,,,,, + nrhprangebin ,,,,,,,,,,,,,,,,,, + nrintegratedspecies ,,,,,,pollutantID,,,,,,,,,,,, + nrmetalemissionrate ,,,,,,pollutantID,processID,,,,,,fuelTypeID,,,,, + nrmethanethcratio ,,,,,,,processID,,,,,,,fuelSubTypeID,,,, + nrmonthallocation ,,,,,,,,,,,,,,,,,, + nrpahgasratio ,,,,,,pollutantID,processID,,,,,,fuelTypeID,,,,, + nrpahparticleratio ,,,,,,pollutantID,processID,,,,,,fuelTypeID,,,,, + nrretrofitfactors,,,,,,,,,,,,,,,,,, + nrscc ,,,,,,,,,,,,,,,,,, + nrscrappagecurve ,,,,,,,,,,,,,,,,,, + nrsourceusetype ,,,,,,,,,,,,,,,,,, + nrstatesurrogate ,,,,,,,,,,,,,,,,,, + nrsurrogate ,,,,,,,,,,,,,,,,,, + nrusmonthallocation ,,,,,,,,,,,,,,,,,, + processgroupid ,,,,,,,,,,,,,,,,,, + nrsulfuradjustment ,,,,,,,,,,,,,,,,,, diff --git a/WorkerConfiguration.txt b/WorkerConfiguration.txt new file mode 100644 index 0000000..5e59529 --- /dev/null +++ b/WorkerConfiguration.txt @@ -0,0 +1,12 @@ +workFolderPath = WorkerFolder +workerDatabaseName = MOVESWorker +computerIDPath = +workerServerName = localhost +sharedDistributedFolderPath = SharedWork +concurrentStatements = 1 +nonroadApplicationPath = NONROAD\NR08a\nonroad.exe +nonroadWorkingFolderPath = NONROAD\NR08a +calculatorApplicationPath = calc\go\externalcalculatorgo64.exe +workerDebug = False +mysqlUserName = moves +mysqlPassword = 744EF51E4F93167816578A645279E592D2B4D8A76AD450DF6463 diff --git a/WorkerFolder/.gitignore b/WorkerFolder/.gitignore new file mode 100644 index 0000000..86d0cb2 --- /dev/null +++ b/WorkerFolder/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore \ No newline at end of file diff --git a/amazon/build.xml b/amazon/build.xml new file mode 100644 index 0000000..dc9434b --- /dev/null +++ b/amazon/build.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/amazon/libs/aws-java-sdk-1.1.4.jar b/amazon/libs/aws-java-sdk-1.1.4.jar new file mode 100644 index 0000000..f7f7a1e Binary files /dev/null and b/amazon/libs/aws-java-sdk-1.1.4.jar differ diff --git a/amazon/libs/commons-codec-1.3.jar b/amazon/libs/commons-codec-1.3.jar new file mode 100644 index 0000000..957b675 Binary files /dev/null and b/amazon/libs/commons-codec-1.3.jar differ diff --git a/amazon/libs/commons-httpclient-3.0.1.jar b/amazon/libs/commons-httpclient-3.0.1.jar new file mode 100644 index 0000000..cfc777c Binary files /dev/null and b/amazon/libs/commons-httpclient-3.0.1.jar differ diff --git a/amazon/libs/commons-logging-1.1.1.jar b/amazon/libs/commons-logging-1.1.1.jar new file mode 100644 index 0000000..8758a96 Binary files /dev/null and b/amazon/libs/commons-logging-1.1.1.jar differ diff --git a/amazon/libs/jackson-core-asl-1.4.3.jar b/amazon/libs/jackson-core-asl-1.4.3.jar new file mode 100644 index 0000000..1bc6032 Binary files /dev/null and b/amazon/libs/jackson-core-asl-1.4.3.jar differ diff --git a/amazon/libs/mail-1.4.3.jar b/amazon/libs/mail-1.4.3.jar new file mode 100644 index 0000000..dd003ff Binary files /dev/null and b/amazon/libs/mail-1.4.3.jar differ diff --git a/amazon/libs/stax-1.2.0.jar b/amazon/libs/stax-1.2.0.jar new file mode 100644 index 0000000..0df112a Binary files /dev/null and b/amazon/libs/stax-1.2.0.jar differ diff --git a/amazon/libs/stax-api-1.0.1.jar b/amazon/libs/stax-api-1.0.1.jar new file mode 100644 index 0000000..d9a1665 Binary files /dev/null and b/amazon/libs/stax-api-1.0.1.jar differ diff --git a/amazon/movesamazon.jar b/amazon/movesamazon.jar new file mode 100644 index 0000000..678d53e Binary files /dev/null and b/amazon/movesamazon.jar differ diff --git a/amazon/setenv.bat b/amazon/setenv.bat new file mode 100644 index 0000000..5f92699 --- /dev/null +++ b/amazon/setenv.bat @@ -0,0 +1,5 @@ +@echo off +set ANT_HOME=..\ant +set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_79 +set CLASSPATH= +set PATH=%JAVA_HOME%\bin;%ANT_HOME%\bin;%PATH% diff --git a/amazon/statuscallback.cmd b/amazon/statuscallback.cmd new file mode 100644 index 0000000..e930af4 --- /dev/null +++ b/amazon/statuscallback.cmd @@ -0,0 +1,6 @@ +set >statusenv.txt +del statustemp.txt +del statuslog_before.txt +echo %MOVES_STATUS% >statustemp.txt +ren statuslog.txt statuslog_before.txt +copy statuslog_before.txt+statustemp.txt statuslog.txt diff --git a/amazon/tests.cmd b/amazon/tests.cmd new file mode 100644 index 0000000..95cc35e --- /dev/null +++ b/amazon/tests.cmd @@ -0,0 +1,54 @@ +echo off +rem s3 parameters: +rem -------------------------- +rem login accesskey secretkey +rem logout +rem +rem put bucket nameinbucket file +rem Note: put creates the bucket if it does not exist and does not transfer +rem if already exists. +rem get bucket nameinbucket file +rem Note: get does not transfer data if already exists. +rem delete bucket nameinbucket +rem Note: delete reports warnings if the bucket or the named object do not exist. +rem list bucket +rem +rem job parameters: +rem -------------------------- +rem createqueue queue timeoutminutes +rem listqueues +rem addstatus queue status +rem getstatus queue command +rem Execute with MOVES_STATUS environment variable. +rem getjob queue command +rem Execute with environment variables: +rem MOVES_JOBID +rem MOVES_DATABASEBUCKET +rem MOVES_DATABASENAME +rem MOVES_CODEBUCKET +rem MOVES_CODENAME +rem MOVES_JOBBUCKET +rem MOVES_JOBNAME +rem MOVES_STATUSQUEUE +rem completejob queue jobid +rem addjob jobqueue statusqueue +rem databasebucket database +rem codebucket code +rem jobbucket job + +call ant -Dcmd="login accesskey ACCESSKEY secretkey SECRETKEY" s3 + +call ant -Dcmd="list bucket moves-experiment-1" s3 +call ant -Dcmd="createqueue queue epa-moves-jobs timeoutminutes 1440" job +call ant -Dcmd="createqueue queue epa-moves-stats timeoutminutes 10" job + +call ant -Dcmd="listqueues" job + +rem call ant -Dcmd="addstatus queue epa-moves-stats status \"This is a full message One\"" job +rem call ant -Dcmd="addstatus queue epa-moves-stats status \"This is a full message Two\"" job +rem call ant -Dcmd="addstatus queue epa-moves-stats status \"This is a full message Three\"" job +rem call ant -Dcmd="addstatus queue epa-moves-stats status \"This is a full message Four\"" job + +rem call ant -Dcmd="getstatus queue epa-moves-stats command statuscallback.cmd" job + +rem call ant -Dcmd="logout" s3 diff --git a/ant/INSTALL b/ant/INSTALL new file mode 100644 index 0000000..83c1167 --- /dev/null +++ b/ant/INSTALL @@ -0,0 +1,2 @@ +For installation instructions see the manual in the docs subdirectory +or online at . diff --git a/ant/KEYS b/ant/KEYS new file mode 100644 index 0000000..5c819fb --- /dev/null +++ b/ant/KEYS @@ -0,0 +1,831 @@ +This file contains the PGP keys of various developers. + +Users: pgp < KEYS + gpg --import KEYS +Developers: + pgp -kxa and append it to this file. + (pgpk -ll && pgpk -xa ) >> this file. + (gpg --list-sigs + && gpg --armor --export ) >> this file. + +Type Bits/KeyID Date User ID +pub 1024/FEECAAED 1998/11/11 Stefan Bodewig + Stefan Bodewig + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: 2.6.3i + +mQCNAzZJoiMAAAEEAMzhUxTOC20Nprp6K4nLTiARt+EXii/dovNWWcfzZcYXi/lX +r3zpUTTZxlKQpd4RaHjFmGgoOraZE4jCRFARVcFJgYmGUKpcWJZO7YKL36WUizTM ++dyB2ycOtzlty1W5VmRL3FGqo67pKA9F/QHg3NSu9hY1W9xPPK7Kq3f+7KrtAAUR +tCBTdGVmYW4gQm9kZXdpZyA8Ym9kZXdpZ0Bib3N0LmRlPokAlQIFEDZSrGXHcgyK +jiW9zQEBshEEAMlG4qVjKp4/agdJG56M6izx9oaKecFLXHQJrFUy3w2PvZHFYtXc +osXKorX6bPrE8uB57MxbY2WapKeVRodlG0+j39vAf501duK8q2rktfWt9Cl4JjJ4 +DbWhSWfV1ci62u2gCxwYQe22F9Wh+vhOR5NK9RTbSKhupdlFsnrk/i7xiQCVAwUQ +NkmiI67Kq3f+7KrtAQGdxQQAlcFOzSv7G6M4uGbgvw7IGgrhx7rawtIyv9hLXgVC +7ua9xaZV8G0Fl9gh8RnbdcZ4R/aT+KIiAFaslfZ3t6hlC4MTbnAJqvdS/NO98ZkJ +YvnzZSKHflAbd5gyE7IVxBC9/xRlF/Wls5sYNwb6RjoRCaOjxN/y3WCLa3Va101v +zNy0I1N0ZWZhbiBCb2Rld2lnIDxib2Rld2lnQGFwYWNoZS5vcmc+iQCVAwUQOxIo +BK7Kq3f+7KrtAQGn6gP/SBACdHakA4H//otpyESSrk4PmyOaYF0Kyok43Gee2mT+ +m9+jZ3jLcC0oav6iH+otL/lhk9t/JDM8LjD2kAkdWWoIvvuPyCx97gOzojIo0Ve2 +1wuxJTF/VIjwyOtE8FzE7p4tkc6EubVpeZkV9Pq9HFRBCUcyKJDLnF4tbstScLU= +=OBLe +-----END PGP PUBLIC KEY BLOCK----- + + +pub 1024D/51898504 2001-05-29 Conor MacNeill +sig 3 51898504 2001-05-29 Conor MacNeill +sig 5F6B8B72 2002-01-11 Stefan Bodewig +uid Conor MacNeill +sig 3 51898504 2001-05-29 Conor MacNeill +sig 5F6B8B72 2002-01-11 Stefan Bodewig +sub 1024g/D1ECBA5D 2001-05-29 +sig 51898504 2001-05-29 Conor MacNeill + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBDsTqygRBACiZckNdclTlQFonLaIKBFGhMy0KKByw0x8XA4iwdbCXuF6xNIc +HIFHajJ74AHchQ4d8xtomBy6b8yvFgWVeaZensvn69BlLeqGdyeJRzfPt6TgRnzZ +2eWhb0HXdG3JwxL/2BabDhHfs4YJOrgB/vhRFQku6oCMRiBPtJj2werD6wCg0/zp +jacYTw6+CR+sVvneCNyySFED/R3j10c4RnR8djgv1jKT8CKPuHYraupI9INEe+I6 +7qWjtJ02GzvMO6TElAtUsf4aysu45GgwkwEBnuG6mYb3Pq0V2c5tJc2A3Tj3DrdR +i3HUNwurbus76I0sPyyENPu12QPeC6mvWLEsxVJ9o0hRKFayGvYUmrwWK9UFLjvp +p9cXBACDHgLn7MAVLqUdYhRrUj/M+GOUpvBikEgoJJrEUmb5X4+++dffMh5HBIO4 +5LA11qEKuM2xnKqOilP7NLYXz1Fe0ocqv0jsHB4SprFTTai7ma31uwuRQvCQXVv1 +yJ5CLqYda64h/UA2kmmR2dfopmvDogYEMz/HU5voozxe7BEI7bQhQ29ub3IgTWFj +TmVpbGwgPGNvbm9yQGFwYWNoZS5vcmc+iFcEExECABcFAjsTqygFCwcKAwQDFQMC +AxYCAQIXgAAKCRCBBGRPUYmFBDgIAKCZztXqKhK6kXOnoGy7opCNmWU0lwCgsPDa +4m+ruW3ch0rfbqtR75S52R+IRgQQEQIABgUCPD6eTgAKCRCiEVrhX2uLcqCcAKCr +1Wylqju9YjBi5Twej9ze69JFBQCeOaMgo6yjnkcV3PnVInLlaMwPr5q0LUNvbm9y +IE1hY05laWxsIDxjb25vckBjb3J0ZXhlYnVzaW5lc3MuY29tLmF1PohXBBMRAgAX +BQI7E6xMBQsHCgMEAxUDAgMWAgECF4AACgkQgQRkT1GJhQTY0ACgmZmKheHzjPJs +5hybpyvnvEiPYqYAn2+ryxdtz8XyOMExGRmHNlhG7svsiEYEEBECAAYFAjw+nlUA +CgkQohFa4V9ri3JYYACg1WN+NCptfKVP1mbrIa+0ajztsiIAnAn+m70iwRRFZCxr +jcULoY5SjyTLuQENBDsTqy0QBACfsCxJ6iCtgX8zjlVtMsMfDqu72x5sYatWKn8c +u+4Oj5mi0x6azZIhwCa+K3ihLVOyG1mCRnzztGTIxWYRhq3TESIVOfgm+NgLGrmA +XUTFyCT+21TExLCpuVZKmUHsWXLxDtfQ1diPeQpiQ8+Fvb/4jLGFjFIrQ2VjtFQn +kumkSwADBgP9H0bF4hdMuVEcSJ9imxSoJshcOOA3Vd2+YiCTZhBygWM49wY5jNos +/DArIjNCE53IlOu/UtHB2jqkSqjF0soGYsUjeCWouiTP9hLuMKPjnqj9ryJPTDKz +nTCZ4TuB5CtzrKTlWLmPCPpFsGqe4KjMeKg/mqGqjPKl97xgStK9N9GIRgQYEQIA +BgUCOxOrLQAKCRCBBGRPUYmFBMM6AJsF3FFyZGEmbt9aGG1W/u0oI9mcLgCfQyJ+ +aalbspazea4J9zgi59SSwOM= +=cBdR +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024R/697ECEDD 2000-04-06 Henri Gomez +sig 697ECEDD 2000-04-06 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQCNAzjsydwAAAEEAMpwFU/ci3/wR3ryCGp9Exr+Rx/hTQ7hWAJcVw8ejlBXlT4T +yITlRUs0HGfRWxME2J55PuXXsIEPZzjfozNtvOyq8WlLlJ7iaiyWxVRoPJ25sSEj +C9etm6wjj4E66ZgzuElZkm1m69uEsCHPPNuz1oQ/g1O+SmIVxIYirlxpfs7dAAUR +tBxIZW5yaSBHb21leiA8aGdvbWV6QHNsaWIuZnI+iQCVAwUQOOzJ3IYirlxpfs7d +AQFQyQQAj0D9G0hEL7SQGaSCkkoXwvamQw42N8+tNm+jfWHWdE4HAiVlhJmI2GyD +sdcXVAcR8R7ILIRB5AY7a3bF+qMk0r+vO6oR878RKKn9AvtaAIOnrh6tr0tiPwf5 +XDUMySxIWJEF3SmJAy9Lq3bAl5GMzZCFHiS0NW2gtWgmr/u1RuM= +=6l+I +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024R/397DCAD5 2002-07-03 Henri Gomez +sig 397DCAD5 2002-07-03 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQCNAz0i0UUAAAEEALXePN6IHne0W96YRMnR+4EXB6402QY5f8ZLcnSUZUH55Fb1 +qcZGBc3WRKlPiUvwBD+eVYgCpNSXF/H+oV1mawxNJN5XwqBEpfYmY8MRIPcqa61h +bJc3LBSm1qNf05G5Cwxeed+OgVm0r1HBy6DAgDHAqNlkC8DZ/BVgqMA5fcrVAAUR +tCpIZW5yaSBHb21leiA8aGdvbWV6QHVzZXJzLnNvdXJjZWZvcmdlLm5ldD6JAJUD +BRA9ItFFFWCowDl9ytUBASNyA/458T84LUVhqq6Y9fPBAfcFMWY2kehuDWsQEXkO +46XoK+AnFZCkKuyDLqPHchVUO5pK/gZYsDK/xJkfh3u4FTDTsecb9wFmIeyayVIN +SI8o6l8EZzDX/PGwqEwzxHrbQkIgIktNn5ApIoazvdBpbkQfNj1vr2wWoMYPLAWM +8xzecA== +=UmZ8 +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/307A10A5 2002-07-18 Henri Gomez +sig 3 307A10A5 2002-07-18 Henri Gomez +sub 2048g/862B8F70 2002-07-18 +sig 307A10A5 2002-07-18 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBD02vbERBAC1v8fR6gjERpaz4UMfdy0hRVWCPSbOdF+Swm/IenjVzErco6zb +MTa13umUNrDPBy/tTWiCCZrOnqi7fgDzWqPEqrXJjKAFVLEWE6MmKylPPEPG1/bm +idkNGERSAZduvhKv777PzvEJJ/8eGe3wy/O8NbgIjCPtr4UklwCZS8cFuwCg8oMO +UdT8qZRtzdxdAyu1m5fUb+MD/3IKJYWXsdtb6iBphCU4f/BoyjVC9EZJ1ywLuiVM +siKbuaDUaXU9nWcbNKv+fx8uZ1NaadpfLokqqhnWcpnSiqw8HNR7SwsF1D33rkXK +O4FSuVss/tIoqGdWFcJyPkP4yP5shxqR335narVw2vDa0+BiWkALbA2qVsSIdZDB +LeFZA/47AMBS0U2BRk2rQT8LmMuFl7mR+wNBM4n7FUGdxsGn3TcYd4pXTNrEQPrV +YNdooKlikgGk4hgFnIFX09Spmimqgq0goFue81rttVdZZ4uep8dTghY6gwmvcOxX +jATbhWStBhdu9B35kzfHc+1QihD5Z94u4uyWIVBIzikcdiY8LbQqSGVucmkgR29t +ZXogPGhnb21lekB1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+iFcEExECABcFAj02vbEF +CwcKAwQDFQMCAxYCAQIXgAAKCRAZMdaEMHoQpYijAKCCP68ndU/kTXR9XAKLvibC +3S8+1QCfUFQYte3Jo+MHKaWjsu9JGptRzo+5Ag0EPTa93RAIAKlsRJ5gOGTFsmaR +W9k6MIh4c/MCy7J7HUxT5xTdHROa+3zUh+FAE/JaOx9ZtZtH863DFHA8cP4L+tpi +PjBT6g2E94dwGcuH/OiSSCT4JSBukbGbOuLLdmFXqUl8+4gsL90Xal67FtNLwyLG +1n7geLir0byD+OT7VLA5w+6G0NOpJEveV/FIa2qLgdRZ8vz73ybgMh18hBUrUmro +jncp0rln2VU7VCH1C2aClKm7kK4mGAjIFIzKbguK+kM3b8NDHmXKpT6syyCtIM3h +prkV1TUCAFqLI32aSdlTN79lpeA2zDga9k4/4X/RDHsFpRN2neRFGTNUtuUgYpQQ +E5zWBmMAAwUH/RiGxyeBsad923IwE1+GAjxFl2tqF9xWk0J6yTnSK4nfhYAE9evV +jwDEok9jRl4ILCcXx6YN/d/lWNuSbARKHz/3hLiTouPpwd3SSJ8is2x9PgpJz5JX +cD0y1SkbPLvs3jH3ZmdcxZpuAmJeI/typqFKK5pWP44oXIH+XH/8nWDtmLEBkgKQ +/ATQWenMTmZ6MIJ6aWKWGkO9QS6iYRz3PPPGQ1O8W02CeprM2wBtlb8J1Z3RxNhM +rZcg/1Qi3V3D1HI4zw6tAFmDeBb8J4PaBQzqlhzx2EBTbfwNPhV8AlPvpxHEeGGn +v+O1yhZr33SnyZdINNoNDn+owVMdmkobe9GIRgQYEQIABgUCPTa93QAKCRAZMdaE +MHoQpRsTAJ4qst3MhLm48fBAEnzuzi/BIKr+AgCfYaCB/AvPoncQbHc8BcNGRimR +P9A= +=hQhz +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/EDF62C35 2002-04-10 Magesh Umasankar +sig 3 EDF62C35 2002-04-10 Magesh Umasankar +sig 3 5F6B8B72 2003-03-07 Stefan Bodewig +sub 1024g/B5FFC53F 2002-04-10 +sig EDF62C35 2002-04-10 Magesh Umasankar + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBDy0ebgRBADuKIKD8PuJ4wKEV1h2AprwJjxCRx8vn48XNwfLZuvhw8cpArtK +rZwhoGPPUPEEXgtTNerlKq4VwpAwcnvRz7oC/7aWkUbcR2sAyhfe2scohwPgw7Xv ++isWC0NDPdrxvXG/PUOG/cnELunr51ymybBqBxUd2gMhYIxPo67D+YPYLwCgwcZp +yc/6kJa116ESWHrti342GD8D/1srpnRs9CiS1DQF1uZ1wW4vzj4VD61tKsjdWD8D +V573R22iMDLSj4oMB536WxUH7snz8XsAKm/peqJ6G9m0smtmWA1ago5yzQj70WqF +xzWBhHn2I/YfAQ8pb2s9q1lClj8elnCxT65L27ydBAZteejb2VqjtQ6iGy86PUT2 +wRUvBADZmoV1eIZJEM5NnxBv1EtvRYZtIQEzZ8dO2A1LOS7qlVr8IypljNPLGhzX +VHNvVsjC9QMUSWeBsDedvQHQ3hJpIMnTI32XE1V4gX06gfVTZdhf2fLTtwnsHZp0 +oumqshGDVRhNJJdDYLikxWOxOfkNveKEqJFvtuBR+ZqqluQKebQlTWFnZXNoIFVt +YXNhbmthciA8dW1hZ2VzaEBhcGFjaGUub3JnPohXBBMRAgAXBQI8tHm4BQsHCgME +AxUDAgMWAgECF4AACgkQ76Pnee32LDWSRwCfeASWXvpdt7bSFPMtszU/7uPEktsA +n23mYUN5WKJA1ZreW+0CcZ2ESnOviEYEExECAAYFAj5ogYgACgkQohFa4V9ri3IW +YACgsxGig0PL0M86rJsA/IpXjBdg3ysAoJzsoUZ/7s2BxDfzF/FRTVIzS+TMuQEN +BDy0eb8QBACBVb9YDJRp9Irzmq71Jf9FIPw+4g/cWpF3t/Eb7eSzMcOvTAXyNIWz +aaOjHre7lFctHfq8ls/6gR7uqajiAnfQcfTcu7pp+F5KsU0Embt83SFzZ3aoJwET +mB/LqUyrrGDiue3lU+flJO7UmcsRvtk0+BDkyCeB9HgfdpXbBLCyuwADBQP+PNxX +4e1tg3ZJo/xNEnD2Re3HjmQRrr0RYJLUGjgQrAEONSgowx3IW8/JssmNJVjnYm0q +jSKsb8rergCFJhPNZ8Dd/k00pKcrq+IN6j7WTYLqPce87zrGAZUtmDwDSp5mxy5E +xWJJxsgBPk4YBQLzJt21A3BgK/i24Sze2VLbaZuIRgQYEQIABgUCPLR5vwAKCRDv +o+d57fYsNa8xAJ4mLfonZbd64+YY9rfvhIh3Vsl3AACeLPPKtma2K6XCfhTBEDnj +hzSr4vo= +=lBfF +-----END PGP PUBLIC KEY BLOCK----- +pub 1024D/265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 265B4C63 2003-12-06 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 5F6B8B72 2003-12-12 Stefan Bodewig +uid Antoine Levy-Lambert (Apache Ant Committer) +sig 3 265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 5F6B8B72 2003-12-12 Stefan Bodewig +sub 1024g/A3060393 2003-08-18 +sig 265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.2 (MingW32) + +mQGiBD9AzmcRBACMqgb7IFvC/nLxw7mUAgHENeZXY3JOQJ8wVBevIbbMEeFvzHE2 +diFydqUXocPexduYr0ahkf033WvWdAiNqDLfVW/HFOsc1TpjbHkqPUHtJ62Ya5tg +nH4UGN9BYZfMbfVDOSz41lYwmfK5HYgpZN/sBQBSKf2qgoFB+LxYaae8YwCgrWlu +fYhf7fkKbbdSf3BGS67ggNkD/0VvkXkw1SEnPaqrkKGkPKomCTb2auGxcYYI3/rP +1m+SGRf0gE1NtocmIEitiR6WvfKUjoMAXSCp5KdnUXmO9rwzkM002KCA7K5CY+e/ +2bLDuiQ3rNiD4mFfG6M+UnmZ+GMFba1p9Cp4PqLNLsCHz67t7hEsscTZQ8mZ9xKM ++GCsA/9P+XFM7JDn9MLhYab9qo1CkceBkthUP6jWGjuAZ00elmBCkpkzNv5aIzss +xih2GpaU/tmcMjw8FGp0dTwzqdpmbZBLjunRnuBTir4m4l5G9rwl4JbfK1PVqk4a +VKkh9W7/yqBcEfNcsfJO9cqaQ+PzcnCoDiD9UHEBYzUhrCKwhLRCQW50b2luZSBM +ZXZ5LUxhbWJlcnQgKEFwYWNoZSBBbnQgQ29tbWl0dGVyKSA8YW50b2luZUBhbnRi +dWlsZC5jb20+iFsEExECABsFAj9AzmcGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ +hhTWqyZbTGMnOgCeJV2gI+1CIxMR7dcIhXjPkiusreIAn2SGOsPS0o89l0EIVuc9 +J2F03aB+iEYEExECAAYFAj/ZwioACgkQohFa4V9ri3J8CACgiGlh+td0BAnJPq19 +ovEQR2DJ02MAoLP203EF+BLPpykeTcGp8UEWmeGQtEBBbnRvaW5lIExldnktTGFt +YmVydCAoQXBhY2hlIEFudCBDb21taXR0ZXIpIDxhbnRvaW5lQGFwYWNoZS5vcmc+ +iF4EExECAB4FAj/SSwYCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQhhTWqyZb +TGOh/QCfbrSoipMlizyGT6c8BOPEd9zzfi0AnRRTqTDzXzsGk4CG/BJME9CCm7Ts +iEYEExECAAYFAj/ZwiMACgkQohFa4V9ri3IOVACgh2QHS1+cVjvM4eLjls1bJwWi +o5IAoLtAszHrwHS5qrhvr2rtnlyyyV2guQENBD9AzmkQBACNpBfqi2PweozCtxoX +PqzKdRDKqCw7TOrDR6lbP3z/ov/1SN5Vc0XqNzBSGqwBcmGWtneABkX7n4uzJrC5 +wvX/TZ/DkMvypPyeNVMu+/ZMlzdbx06OUDKr6Fy/NtaI7cN1rw+Igyv22Q8ilhhg +s/5Rdj84EtJkWQjVRml6wXSAZwADBwP/TqyhOC4sA5YrePYGH8i46h0SU9dXjfEF +JijC8vXZ+BNQHQVK3fjEXedZL8Zvvp1bsMu7Muz9SMnqygM1unp2NGxLRd/9315p +Qh0VStYKn0xq13ybOKr0Gsyx5yyl3Nzlu/1qAR0es/zN4jV7/IQi3R2GOvezcpHX +mkbsYiZAhu2IRgQYEQIABgUCP0DOaQAKCRCGFNarJltMYxcsAKCSJJUABlXYnLBj +b+WtmAzu0JjZNACdFJ4KIATJDK/5ajFq5+irOpodoHc= +=UomR +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/5F6B8B72 2001-05-28 +uid Stefan Bodewig +sig 3 5F6B8B72 2001-05-28 Stefan Bodewig +sig 51898504 2002-01-11 Conor MacNeill +sig 3 F88341D9 2003-03-17 Lars Eilebrecht +sig 3 2261D073 2003-03-17 Astrid Kessler (Kess) +sig 21D0A71B 2003-03-17 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 75A67692 2003-03-18 Erik Abele +sig B3B2A12C 2003-05-20 ct magazine CERTIFICATE +sig 3 8103A37E 2003-04-04 Andre Malo +sig 3 5F6B8B72 2001-05-28 Stefan Bodewig +sig D6298F01 2003-04-27 Paulo Henrique Gaspar Jorge +sig 0CAA68B4 2004-11-11 Patrick Rentsch +sig 2FE28BCF 2005-07-01 Harald Wilhelm (HAWI) +sig 5793498F 2005-07-21 Tim Ellison +sig E4136392 2005-07-21 Noel J. Bergman +sig 8408F755 2005-07-21 Christian Geisert +sig 2 FC243F3C 2005-07-20 Henk P. Penning +sig 3 EC140B81 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 EE65E321 2005-07-20 Martin Kraemer +sig 3 A99F75DD 2005-07-21 Rodent of Unusual Size +sig 3 3642CB4B 2005-07-20 Martin Kraemer +sig 3 302DA568 2005-07-21 Rodent of Unusual Size (DSA) +sig 3 2C312D2F 2005-07-21 Rodent of Unusual Size +sig 3 CC78C893 2005-07-22 Rich Bowen +sig 3 E2D774DF 2005-07-22 Sylvain Wallez +sig 3 E04F9A89 2005-07-22 Roy T. Fielding +sig 3 015AFC8A 2005-07-22 Bertrand Delacretaz +sig 3 87315C31 2005-07-23 Raphaël Luta +sig 3 E41EDC7E 2005-07-24 Carsten Ziegeler +sig 3 F39B3750 2005-07-24 Colm MacCarthaigh +sig 1CD4861F 2005-07-25 Eran Chinthaka +sig EA1BA38D 2005-07-25 Ajith Harshana Ranabahu (Made at Apachecon 2005) +sig 333E4E84 2005-07-26 Chathura Kamalanath Herath (Apachecon Europe 2005) +sig 152924AF 2005-07-29 Sander Temme +sig 3 9C85222B 2005-07-24 Henning Schmiedehausen +sig 3 9978AF86 2005-07-25 [User ID not found] +sig 3 2A623F72 2005-07-25 [User ID not found] +sig 3 F8EA2967 2005-07-26 [User ID not found] +sig 3 C152431A 2005-07-27 Steve Loughran +sig DE885DD3 2005-11-25 Sander Striker +sig CE419C8F 2007-01-05 Upayavira +sig E222DE4F 2007-05-02 Mathias Herberts +sig 911203E4 2007-05-02 [User ID not found] +sig F12F6072 2007-05-05 [User ID not found] +sig 3 990ED4AA 2007-05-02 Knut Anders Hatlen +sig 3 311A3DE5 2007-05-05 Ruediger Pluem +sig 3 88817402 2007-05-06 Thomas Vandahl +sig 5F298824 2007-05-06 Simon Pepping +sig 4CEED75F 2007-05-06 Nick Burch +sig 4358C584 2007-05-06 Vincent Hennebert +sig 0B7E6CFA 2007-05-06 Sami Siren +sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) +sig 40581837 2007-05-08 Nick Kew +uid Stefan Bodewig +sig 3 5F6B8B72 2003-03-07 Stefan Bodewig +sig 3 F88341D9 2003-03-17 Lars Eilebrecht +sig 3 2261D073 2003-03-17 Astrid Kessler (Kess) +sig 21D0A71B 2003-03-17 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 75A67692 2003-03-18 Erik Abele +sig B3B2A12C 2003-05-20 ct magazine CERTIFICATE +sig 3 8103A37E 2003-04-04 Andre Malo +sig 51898504 2005-06-21 Conor MacNeill +sig 0CAA68B4 2004-11-11 Patrick Rentsch +sig 2FE28BCF 2005-07-01 Harald Wilhelm (HAWI) +sig 5793498F 2005-07-21 Tim Ellison +sig 8408F755 2005-07-21 Christian Geisert +sig 3 EC140B81 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 EE65E321 2005-07-20 Martin Kraemer +sig 3 A99F75DD 2005-07-21 Rodent of Unusual Size +sig 3 3642CB4B 2005-07-20 Martin Kraemer +sig 3 302DA568 2005-07-21 Rodent of Unusual Size (DSA) +sig 3 2C312D2F 2005-07-21 Rodent of Unusual Size +sig 3 CC78C893 2005-07-22 Rich Bowen +sig 3 E2D774DF 2005-07-22 Sylvain Wallez +sig 3 E04F9A89 2005-07-22 Roy T. Fielding +sig 3 87315C31 2005-07-23 Raphaël Luta +sig 3 E41EDC7E 2005-07-24 Carsten Ziegeler +sig 3 F39B3750 2005-07-24 Colm MacCarthaigh +sig 1CD4861F 2005-07-25 Eran Chinthaka +sig EA1BA38D 2005-07-25 Ajith Harshana Ranabahu (Made at Apachecon 2005) +sig 333E4E84 2005-07-26 Chathura Kamalanath Herath (Apachecon Europe 2005) +sig 152924AF 2005-07-29 Sander Temme +sig 3 9C85222B 2005-07-24 Henning Schmiedehausen +sig 3 9978AF86 2005-07-25 [User ID not found] +sig 3 2A623F72 2005-07-25 [User ID not found] +sig 3 F8EA2967 2005-07-26 [User ID not found] +sig 3 C152431A 2005-07-27 Steve Loughran +sig DE885DD3 2005-11-25 Sander Striker +sig E222DE4F 2007-05-02 Mathias Herberts +sig 911203E4 2007-05-02 [User ID not found] +sig F12F6072 2007-05-05 [User ID not found] +sig 3 990ED4AA 2007-05-02 Knut Anders Hatlen +sig 3 311A3DE5 2007-05-05 Ruediger Pluem +sig 3 88817402 2007-05-06 Thomas Vandahl +sig 4CEED75F 2007-05-06 Nick Burch +sig 4358C584 2007-05-06 Vincent Hennebert +sig 0B7E6CFA 2007-05-06 Sami Siren +sig 3 DE8884A0 2007-05-07 Xavier Hanin +sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) +sig 40581837 2007-05-08 Nick Kew +uid Stefan Bodewig +sig 3 5F6B8B72 2005-05-31 Stefan Bodewig +sig 51898504 2005-06-21 Conor MacNeill +sig 2FE28BCF 2005-07-01 Harald Wilhelm (HAWI) +sig 5793498F 2005-07-21 Tim Ellison +sig 3 EC140B81 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 EE65E321 2005-07-20 Martin Kraemer +sig 3 A99F75DD 2005-07-21 Rodent of Unusual Size +sig 3 21D0A71B 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 3642CB4B 2005-07-20 Martin Kraemer +sig 3 302DA568 2005-07-21 Rodent of Unusual Size (DSA) +sig 3 2C312D2F 2005-07-21 Rodent of Unusual Size +sig 3 CC78C893 2005-07-22 Rich Bowen +sig 3 E2D774DF 2005-07-22 Sylvain Wallez +sig 3 E04F9A89 2005-07-22 Roy T. Fielding +sig 3 87315C31 2005-07-23 Raphaël Luta +sig 3 E41EDC7E 2005-07-24 Carsten Ziegeler +sig 3 F39B3750 2005-07-24 Colm MacCarthaigh +sig 1CD4861F 2005-07-25 Eran Chinthaka +sig EA1BA38D 2005-07-25 Ajith Harshana Ranabahu (Made at Apachecon 2005) +sig 333E4E84 2005-07-26 Chathura Kamalanath Herath (Apachecon Europe 2005) +sig 152924AF 2005-07-29 Sander Temme +sig 3 9C85222B 2005-07-24 Henning Schmiedehausen +sig 3 9978AF86 2005-07-25 [User ID not found] +sig 3 2A623F72 2005-07-25 [User ID not found] +sig 3 F8EA2967 2005-07-26 [User ID not found] +sig 3 C152431A 2005-07-27 Steve Loughran +sig DE885DD3 2005-11-25 Sander Striker +sig E222DE4F 2007-05-02 Mathias Herberts +sig 911203E4 2007-05-02 [User ID not found] +sig F12F6072 2007-05-05 [User ID not found] +sig 3 990ED4AA 2007-05-02 Knut Anders Hatlen +sig 3 311A3DE5 2007-05-05 Ruediger Pluem +sig 3 88817402 2007-05-06 Thomas Vandahl +sig 4CEED75F 2007-05-06 Nick Burch +sig 4358C584 2007-05-06 Vincent Hennebert +sig 0B7E6CFA 2007-05-06 Sami Siren +sig 3 01530235 2007-05-02 Luc Maisonobe (SpaceRoots) +sig 40581837 2007-05-08 Nick Kew +sub 1024g/24774157 2001-05-28 +sig 5F6B8B72 2001-05-28 Stefan Bodewig + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.2 (GNU/Linux) + +mQGiBDsSIk4RBADSCj6rUjV64tYCGT1DYKYR7GthyWpNdGHSYLbETBcDatAe1dzQ +5NsCgfrlybfyeY+y1lxr3T9bqf6zJWDw/718wff96qmmv1qzexSYtmIrj+h53V82 +EXwWOFuYMJisuxdT940iQzosm3GOv4MJdEg3oI2SgfEyRQQ6vO4Ob5rHDwCg5taZ +nrHOrXx2dIGHxpxRZ0SUl30D/jmtttFjYOQ3LBMriikz5mh2sK3ZnoSRF4o5O0zW +Ve6e2SFXOEjVjImKsH6KCbdQNelrAdgiyOoXClyQKsQ27pncbdWo6bO0E3POJZVm +XaeW7iudHVr63rU5PViXObIQrdQl0D59j5brKj4vdlTyUw8kaHPvbKPDEOwvZq4Y +LJQ5BACA1YilTeXRJqwFsNlpcxCHwlULD4QUVP496prQWf1B7Z6g0KvLGrQsO0Vn +Jcn+fEqukysTJixSXCPebosltd4RalJIupVYkp4w6MJ7biaDAlLuNhDcI/AiXTmV +dXUedVXIaM8I3Ne23gucwbAyc0Hvb+3cSAKRhl/azFQhuHBvlrQjU3RlZmFuIEJv +ZGV3aWcgPGJvZGV3aWdAYXBhY2hlLm9yZz6IYgQTEQIAGgULBwoDBAMVAwIDFgIB +AheAAhkBBQI7EiJPABIHZUdQRwABAQkQohFa4V9ri3KPOACfdr6cV41veYBlBHiV +FxfLcX7x5OEAniK4u3g2jpNQH3E0ROubdj/RO+RTiEYEEBECAAYFAjw+1Y8ACgkQ +gQRkT1GJhQSdkgCeM6RDHUF/E334TtiLPgw7GpmNJSkAoNCLQCW/9VHrV+ZHsodn +XUnaD4dIiJkEEwECAAYFAj513wwACgkQPo+38viDQdknZAPlHNiMnR+LUavo2yOY +iJT+W9+8+qNs2grYDZ+WSYujaWT2NJrUCYXQRM6gKDyFlkcJvHI9lF2yYMkVetll +ZVN1TJkeEdtbHncNHcdq+ZUQR0NkFKTF9d1K7UI2rfWxt1y6a13TcUjpJXzbtw/O +XX9EZSI6QQt4rSFlvci9J3mIRgQTEQIABgUCPnXawQAKCRDu0eo5ImHQc0W4AJ9v +uq4wlkc6TmmmZPF/gZVLluHcTgCeItrnvzyS11xkIETk6v4b7K4gaiiIPwMFED51 +qhr9b4jGIdCnGxECRAUAoOaVZW5CdZ9oYr3PwI/i8RJN+JfJAKCmd/XIlYOCpa9Q +c4C855pM8NFw6YhGBBARAgAGBQI+d6QQAAoJEBU/oM11pnaSL+sAn1DTHmbhITeE +w0ZSgyBLQw2ZhcM5AJ0ZrRBbZ9lbgHXBKOJQiLpWBj4XsYhGBBARAgAGBQI+yi6W +AAoJENvSRfyzsqEsF/AAoNXq7Cp/0AwEmWvhoTjmtY6eVYB5AKCMFhBUdYWNXVya +lPTq8ThswNUnr4hGBBMRAgAGBQI+jc4sAAoJEMppOXSBA6N+kUoAn1Nj6YqarQg0 +sL2KrFsQROM3A6fSAKCyl40SpfVJSO33fYuPci9dHp+QCIhXBBMRAgAXBQI7EiJO +BQsHCgMEAxUDAgMWAgECF4AACgkQohFa4V9ri3IsngCfbIpJDWj6UgXY7rBH8To1 +2BgB+RIAn3jw72WJzplAtShVTmuMlRFS+FUNiEYEEBECAAYFAj6sazwACgkQqywx +6dYpjwFkeQCeOkJrnO5r2hWDhX4ACPPLObZvXLIAnR0VHAgkEH1W/t7B4zdDYdBB +Zrd5iEYEEBECAAYFAkGS8mMACgkQ5BNhMwyqaLQs9ACgio5zJcieYLppigvSYLBf +ubUVrXUAnRKZJ6MACpH6fpoz2vkc2dh69tbSiEYEEBECAAYFAkLFMoEACgkQm/Ij +RS/ii88aCQCfd1cIawDqpkYU86f3JEjcN85ntFcAni0m8WR6s+bkh3fd+EIrSRsr +u3uQiEYEEBECAAYFAkLfRQIACgkQQeoJoFeTSY8XxQCdFd+XEWqyDkCx37gaIQAG +4dHpwiUAoOZ/K5OHyTJCNFaBUDtpCh7hL8TPiEYEEBECAAYFAkLfkncACgkQAQVm +vOQTY5L3SgCgiEi5/1vYvJrKoAdl0hRWU57ieUIAn2n08BQfMZJQ439aNW/CnIK8 +jPBPiEYEEBECAAYFAkLgNdAACgkQc84u+4QI91XdNQCgoBB1ebohIflinAPlvI37 +pFHuu0MAoJ4yMtbKZMaq0xIBnxV9c5uu99tGiEYEEhECAAYFAkLerWMACgkQi5Yp +Q/wkPzxD7ACgqKnyeb/fjVS8vov4FePxeLju4msAn1SCGaiF9gEf+qIaZUnjcT7J +DJ96iJwEEwECAAYFAkLerG8ACgkQMaY9luwUC4Ea9gP/WON+0xIWOvWP7mKkg/+X +0ukW+mbjE426qKtG/B0vNrTKpElmz8ttR+oajqbg20LazoEUuA9ZXjLPfsdWA+vF +kxgV6qIdtxYPMamPm7ytEBOmgMowYXUftGteqM5fxLlceHiwdUlynG2fmtMqvPnd +2OCezSFRx3W6nvAiIjoLZpCInAQTAQIABgUCQt7H0wAKCRA34/Rf7mXjIcAUA/4n +DlQbnToSSDOZkFj1CoGL8TjsVgzrO3r3S3x38uQQTFAE/AGBY4mtHgNcYmiJaC2h +N1Y+mlEGu/80Rjv185ZfJsFEerU6Y/9tRJJ1So9AAe5AmvGpD9ysXae5geB+k+ep +IMSuf9WMeTRUCbQs9ufGZLV5a8jqstv+btcrzNaY9oicBBMBAgAGBQJC32x4AAoJ +EJrNPMCpn3XdRBkD/iNi0Y6A3afDG9ZL/K4JrOPgHUFWC/DgAEBme4AY62agUsT0 +uXlz+Mu1Ps2E0t26ejScuVMMvqpXg7iJ2+3yKzsnX0ySEXW6/696XEpe3TFn1iVO +mMElPKxakn3t/jr6SDepo9jqD5P5CJR4GsDsG3iKIisWdDf81ZXpf86y7A5eiEYE +ExECAAYFAkLeuuUACgkQMsnkzjZCy0vmSQCdHGC6jOEVo96yyospTq7bL+EEeioA +oNMKIZy5qFLXXZbSNvsj7mDRg2c8iEYEExECAAYFAkLfbHoACgkQUI6uxTAtpWhY +hQCaAvqVBsTX5s4c+sTOo06BNMdzHIUAoIwpThAKq936Szy/3Gfv8K3gs5NOiEYE +ExECAAYFAkLfbHwACgkQ3bpkuiwxLS9z8ACfYeocOK4J204xwbXgEdUJQyvHK2UA +oKz2AF1I2b8Ebu7vTUZLNFV1QMtwiEYEExECAAYFAkLgyTgACgkQXP03+sx4yJNb +EgCfRcj6QKHVHQtYVXdCYKUbrj97wAoAnimqV15cvz1siDjUK9K/aTskGwajiEYE +ExECAAYFAkLg7MsACgkQybWm7OLXdN8UoQCdFfqef8My1xhn6mLd9WTLLaIewTQA +nRXGh/Af4hVG0KwtZcJEA464nCoJiEYEExECAAYFAkLg7TwACgkQW5aAEOBPmol+ +JwCeLxZjKNisjgP4AxV5BCKR+5SU9NoAoIwPF/7B2NmGNR0t3EZze8wpNhQ0iEYE +ExECAAYFAkLg7V8ACgkQN/aP9QFa/IqerACfafKJi4s8LYV2JxNfQKHgmRXzeIIA +oNBHOzukDCdxIvmYJfamItnCP45giEYEExECAAYFAkLiYm8ACgkQbZiNF4cxXDH8 +HwCgq8P29CwMX7PKhRmY3T32APsOaMEAnjdd/WvzVBFtTcJFWkH6iF4L8EQpiEYE +ExECAAYFAkLjVb4ACgkQEy5J1OQe3H56DACcDPfWLO5cDkeKFCvIP8mc4p4KkfkA +oJITROldIRxXqUiML1oTJxieuHJfiEYEExECAAYFAkLjZNoACgkQdcqio/ObN1CI +tACgsJhqBxeZTaSrRVNk3aj6ciAJrgEAoIxPXYTvIpnWBr4/WMbN0jpV0TGEiEYE +EBECAAYFAkLkbxIACgkQjON2uBzUhh/gZQCbBpIqkCEuIbd6tqChz3PzcIGiZbgA +njluBFHl4l1/NHtP9fEYCgl8nbCviEYEEBECAAYFAkLkkr4ACgkQBJE0Quobo42f ++QCgjtO6EOdDRiruCi6gKvwM1a2eRwcAn0XUELm5AZezL5E0rEfIM2FBiMi5iEYE +EBECAAYFAkLlwh0ACgkQYRlqLjM+ToS9pwCfUEgO834XY/clWzkw/VLBfe7MLZQA +mwdz0nleOHYWFBrnYgEz53d4MxUPiEYEEBECAAYFAkLqY/QACgkQsr68QBUpJK/o +MQCfc7M9KpApCWW7eE22PlLoN1sPK+4AoJdwE8TsDM2Pmehk9K+uHIx6FoRviEYE +ExECAAYFAkLj7WcACgkQMoZOQZyFIitClACfWpH0+V/N6vuucWZ7bsMm2BcmM3oA +n3fF5qqovlog4/PcgvKCToNEF8uWiEYEExECAAYFAkLlELcACgkQUnkvr5l4r4YU +ZwCgg7vJpDpUXnuNvgc5RHgG7UYhRQYAoIEKHsrswh6XzVn5yQRkfjdB/A0OiEYE +ExECAAYFAkLlEaQACgkQa3OhBipiP3JA4QCffb8NgQssOQXaVR0dSwPCeU2nQPUA +n15EAjykVZsUi2tZWqEM08SNOKI9iEYEExECAAYFAkLmmWIACgkQaOuMdvjqKWd7 +AQCbBpwyitQ77kd9KIT6y95Im1vmWt8AnAnkNTBctVtMfwddYTG+xLkaOllOiEYE +ExECAAYFAkLnYVAACgkQbpR1lMFSQxqIRACffQqUXTgOa4hyHYQBUwrlGEqmWt4A +nRMXVGhd47loS27MmiEiWwDlkNjJiEYEEBECAAYFAkOHn54ACgkQZjW2wN6IXdOr +9gCgh2fn26W0DSL5WZATvvQkwZeJNiMAnR6+0AlUK8uFSFIVhl+RZMnY+XFwiEYE +EBECAAYFAkWdnk0ACgkQIYJJVs5BnI/0SgCeKCw39INy9ISFunlAojYgSInHfokA +n2vU8q4JNjg13qNeclZN9kmN9mbWiEYEEBECAAYFAkY44sMACgkQFUWz/uIi3k+q +vACffppBpoY82MEvDV7c4/6cjw544CQAoJAPCdZA/LRqICJm0iFbDrwhsSb6iEYE +EBECAAYFAkY4558ACgkQY9CtrpESA+QrAACglRB/VdEmovbyWdMDmsTdyw4kha4A +n0uKwZeKHfBR3cC2s7MvqqmMoz9jiEUEEBECAAYFAkY8kyoACgkQmHDv8/EvYHIk +CgCYgXQZTJ8VmHwSX3pXOxnMhp7mbACeIPXwcPvmfP709nfgQ8/GpT2z9ISIRgQT +EQIABgUCRjkasQAKCRDh4fKwmQ7UqhZKAJ9iraDBstzeXPMtst3x+ZXdLQm7cgCf +WDDgaQOa8CoM5/+7WCtkyasP6BiIRgQTEQIABgUCRjxQRwAKCRBMBCgYMRo95eP4 +AKCuEQU6fjPy/cPEiqhGH23J2YEr7gCfS8vBTEU4sRbOomTEuINPxb96OZmIRgQT +EQIABgUCRj2gkgAKCRAuuUaCiIF0AgOBAJ0bJmFzA9WkG5FmfaP4ieG9+SCbXACg +w+2wcOA/B94LKRtjhJT6j6zSiDmIRgQQEQIABgUCRj4VvwAKCRA+Km/CXymIJIvc +AJ9QSE4mCQldVnpbYwLTCk+xHDqhcQCggT9P3/rHIzIvv1tJ+A1ZJPvXOcqIRgQQ +EQIABgUCRj3WeAAKCRD1wmAWTO7XXwpbAJ4mr2IxFtx0ppkefxx0l0TJ6cFkrQCd +EFbc+aMxRKhK9SCAWi3mq1UqEWiIRgQQEQIABgUCRj31AAAKCRCgctTQQ1jFhByK +AJ9SIielTuD3StxPQpBkAkYP6Ld88ACgg1oPX9ryJA7YuhMD7byXQsETzD+IRgQQ +EQIABgUCRj4FxQAKCRACpaYFC35s+k/GAJ9/VDyw2vNzk1xjcu/QZCa3gGI2zgCf +eG8klJ78bAGknzxBlK3XtmoNqASISgQQEQIACgUCRjj3hAMFAzwACgkQc92MFgFT +AjVJogCeL+3FTTVR5snJx9qbGQsgv23ZaT0An2Hy1CcXVklcYBF7LbnbAgbe1Hpf +iEYEEBECAAYFAkZAtkMACgkQbQvHOkBYGDePegCbBe6rmz9/kYDV7w5pvwnugVsv +biEAniTfLW7NW8z1SRBWf6lMH3clGAs8tCBTdGVmYW4gQm9kZXdpZyA8Ym9kZXdp +Z0Bib3N0LmRlPohfBBMRAgAXBQI7EjmBBQsHCgMEAxUDAgMWAgECF4AAEgkQohFa +4V9ri3IHZUdQRwABAcm6AKDaA//SYJv2pcXwGBC89OSzGvxy3gCg1kx6qu6zJKaW +aE1L9oFqVc65OUSIRgQQEQIABgUCPD7VlQAKCRCBBGRPUYmFBNCzAJ9tv7tNS6Nw +aOZQ8cR0pGslJGKtuQCgpttMmhhRrUwyVuEXc+dKX7rdQMKImQQTAQIABgUCPnXf +DwAKCRA+j7fy+INB2Vm6A+IDxiYtMvd/mad+7hRoKXvD5AddB1SwnvQdJe0ewStF +BYZxZdNOLXdkVngCwAJziPGZcQmocEHVMrN+Mxe+3OX0PEZ+3KOOsAUi+fTov2xv +f8EWKgX9d0li9iEytVA4M0c52a3bPTC0Kki/KAY3m8oNvAmTwWB9dBSooFFDMIhG +BBMRAgAGBQI+ddrHAAoJEO7R6jkiYdBzruYAnAzvTrvDQNvoAoaDQJ+o/ydqMA8Z +AJwNEOQDHsz+6ynbMPoQmKmUqfEISIg/AwUQPnWqIf1viMYh0KcbEQIkpwCeInf4 +o3C5Ykh/xBodVImrp2Cvcy8AoMn3me5p4Sl2rm2tjVxTJZt2sUr7iEYEEBECAAYF +Aj53pBoACgkQFT+gzXWmdpIpGgCgiTARP6Cf+JKOxUaVFr0L9DC5oUcAoIxF7D5m +OVK/AFcp1cxNk3BLtdq3iEYEEBECAAYFAj7KLjIACgkQ29JF/LOyoSwAbACglNp7 +V2Pw4U575IuooM677bZf8pwAn2U2TcHj7PYprU+qYRkyJ3pa7FyyiEYEExECAAYF +Aj6NzjUACgkQymk5dIEDo35YPwCeJIU/monN96nP4jJjAuflEXMbemUAoJXq7oVC +YuOCqWr/T3VW0DM3W+dniEYEEBECAAYFAkGS8+sACgkQ5BNhMwyqaLQ2RwCeMcDf +4bb+OMjRUJwAk2LHN9th42QAn03fVqMUZEVmOrVXfWILpjXNLMDIiEYEEBECAAYF +AkLFMoYACgkQm/IjRS/ii8/gpQCffXXRCeZf1Vv5ih70yE2ZXg0r/rsAoJYKsdx0 +K5aqfoEzyiBCj5I46JvhiGoEMBECACoFAkLhOBAjHSBUaGlzIHdhcyBhIGpvYiBh +ZGRyZXNzIGFuZCBJIHF1aXQACgkQohFa4V9ri3LxGACgiQ+wlaa9iMOue5DuhtyL +PMSmuiIAoIkrciYFOf3VBBD0HLWfGVWUqxzRiEYEEBECAAYFAkLfRQwACgkQQeoJ +oFeTSY/ndgCfUEQl4Rc5nnu3G4ZX3o4OywbF7DEAn3Htv1s/on+ei+1mmS6Z/Pdw +gM7viJwEEwECAAYFAkLerHEACgkQMaY9luwUC4F1JAP/epJYDZX4flU0sa8AlFtS +ROY/O6g3iVq5zeYm1WD3e0xOOYTXlkIntkYFhqbBzZQ3pFYfWmbhzCW/Tc0RigAC +dmroEELrwyrfLIHvsnUTF7C5AL6SuFQZqG6qoMjtHFd6KDMos2sDEZ3VXDG1buW+ +hpHY9rWRJKPzb/SgSetTCeuInAQTAQIABgUCQt7H2QAKCRA34/Rf7mXjIaxmBACi +YCwxZLtxnaRfwSOBkASqmnS8oBdyIKvTad9dLE3CziNgEW+AdfE76vQskeDxL3ZV +QubhKWiaM4B7YU2nYxk4INVpok1qht9bN1Psy+TS3SvpPKqq8Ri8xc4ZPDwdcCcC +JiXLy5iR5tx3iBsnHRM5+LMIJg+LiOqd/ZnBsggjjYicBBMBAgAGBQJC32x5AAoJ +EJrNPMCpn3XdrMQD/3vFtnKssqT6mB7NOZ08Tcw+cC5e9gAVr5Y33X+ZgPe7BJd6 +uPNt+I97FDdVJOnNtTZSvnkQZ/C79Yoci0yZAAoHYlzRb4tXguLy4UDBjj3BlvPs +COKJZrKn7bxvtoTbeHgjHmneiIwCuyzSoA1hAYxiPliDrwuVCQTudHDVxjl1iEYE +ExECAAYFAkLeuu0ACgkQMsnkzjZCy0sSYACfX2gis4g5jep0HjKABAk31byHU0QA +oI5294fLHOeIHKLCIdvKm+7gVLn+iEYEExECAAYFAkLfbHsACgkQUI6uxTAtpWg6 +BwCfVQtdTRbNPgQGFqGQSUlBJ459xfYAoLKhj68YUwZB5VgIeIorpqt9bWR2iEYE +ExECAAYFAkLfbH0ACgkQ3bpkuiwxLS94SQCghB4+5RwGR0ZOyy2xUA4e6ImO6ZQA +oIjkWwYRd1Vp9SQoJW5OdSquYSctiEYEExECAAYFAkLgyTsACgkQXP03+sx4yJOs +AACeKo39hTRNVVyvj5y9ohT9Ye3/C+MAn27aEKrGgxNbwq50qGxFE+p36j7fiEYE +ExECAAYFAkLg7MwACgkQybWm7OLXdN8i0ACgs+aW41FnchB0K/OUdB3t0Lg4i5IA +oM+l0PyxS3XJsAwI+JbCm0aR3VA8iEYEExECAAYFAkLg7UAACgkQW5aAEOBPmokb +qACcC3in6U+mqjSwb67rB5zTY0ThYucAoI4V7qe0XHTDUwwWOgRo/NzR7k1OiEYE +ExECAAYFAkLiYm8ACgkQbZiNF4cxXDGcDgCgi5CrpyZ1Dcu0IKML05Ffvw8lPhYA +n0nL0BczEo9RpNVYg2ytJ+YtjKUFiEYEExECAAYFAkLjVcAACgkQEy5J1OQe3H7q +9gCfV5xTyo5SD7G62VSUbjYfeqcuxXwAoKAuchsMkavYWCt0jBhgLuTJkFqUiEYE +ExECAAYFAkLjZNsACgkQdcqio/ObN1AdZACgpUgi5qnnDUpVXhTsJUoo4U485sYA +oOXmMbhyaOMH9g9ndYFm5aHPMbf9iEYEEBECAAYFAkLkbxQACgkQjON2uBzUhh9S +cwCgqFELgIdNWky221EuFgjKzgEG5WoAn3cBZbE+PMFhAZyUhQIl2hHEbVJIiEYE +EBECAAYFAkLkkscACgkQBJE0Quobo43EoQCfRCtbvMHoTGmS7dmZ3sRyAj4W7WoA +oJDfouy1wZ5tSMJT+XBm5oFtwSUSiEYEEBECAAYFAkLlwiAACgkQYRlqLjM+ToRA +HwCbBxMHNYyvbYmAb1kTEt8ydF660oYAn3zsrmZawTXrjvbPE/VpC+/7wpzpiEYE +EBECAAYFAkLqY/gACgkQsr68QBUpJK8VgwCfaCR45JtzFnz0v4jCuooqaFGgH80A +n2BcoE/psLPTECGRDKE4v7JNADnCiEYEExECAAYFAkLj7WoACgkQMoZOQZyFIisb +BgCeJjAXLGfz5ahDdgozqDYrbOzxWG8Ani7hFwwxHFAIe42+OsL6xweRD46fiEYE +ExECAAYFAkLlELcACgkQUnkvr5l4r4ZbzQCeMBjFzDvBIFmK5VNIvvcK3ejdDPwA +oLzg1ytKCg3A0OebfMX9nr5iQOxwiEYEExECAAYFAkLlEaUACgkQa3OhBipiP3Je +vgCeJGjwezorOSri8IWxMJqTt3tOzkEAoMNZCTo3AmcKICFhtdttgcuOZNWAiEYE +ExECAAYFAkLmmWIACgkQaOuMdvjqKWfg8QCfdYdGhkb7pBqgFhGn3uJ50+sY/QgA +n1PdZCfRtVgdk/JVv35F7fJp5a1CiEYEExECAAYFAkLnYVcACgkQbpR1lMFSQxoJ +ggCfQ7Du5ZKb7ooJj6CF+ne77nxVuYgAnjLF1tZ19A1n+hPaT4A2nmfnW2tRiEYE +EBECAAYFAkOHn54ACgkQZjW2wN6IXdPfvgCfRhYzSFLrXLaM7hTa3iHktsQE1iUA +n01MLep3eEdd3+VNPojrE8FlV+odiEYEEBECAAYFAkOHn54ACgkQZjW2wN6IXdOr +9gCgh2fn26W0DSL5WZATvvQkwZeJNiMAnR6+0AlUK8uFSFIVhl+RZMnY+XFwtCpT +dGVmYW4gQm9kZXdpZyA8c3RlZmFuLmJvZGV3aWdAZnJlZW5ldC5kZT6IXAQTEQIA +HAUCPmiBXAIbAwQLBwMCAxUCAwMWAgECHgECF4AACgkQohFa4V9ri3JPKACfXhFO +r4gMMIQwEGvUb6J/X4asuzIAnje2H9T1r/jSVi1NbIEtQfbpmyQXiJkEEwECAAYF +Aj513w8ACgkQPo+38viDQdmGkgPnUYJfHlDrQ2jYJWuPDve9n4pV9OvyIllKyLdf +ULjsLWXw4Jm+fMQJgWr2GEov1ZYIyS2+rGDZpbz/vxaBVbgqM8TPdiXzxwU8AFq4 +k+Em4fKXR58ByLSJjvLLza61spNHJennEUFp3tTpEsr4bNuuaoRYhtiKzTqNuoC+ +0x+IRgQTEQIABgUCPnXaxwAKCRDu0eo5ImHQc5lcAJ9FOoAL4uHMuqHXrrxsEVPJ +vEJ2/ACggaOR62EziUqcqpdm/1Zy3P4T22iIPwMFED51qjj9b4jGIdCnGxECWssA +oKnkR63bWGCFDB5YJtfZJ+nQq3TAAKD1bzG/kITQpIHsT2vCY1yBmlWbBYhGBBAR +AgAGBQI+d6QaAAoJEBU/oM11pnaS+9IAn0kFlXAzOhhu4r5fglMVuw5bTAd0AKCt +YRX2ESU/+tsE8vuXWtsMCGeI5YhGBBARAgAGBQI+yi67AAoJENvSRfyzsqEsSccA +oKqG39X2y6xoQa56nviF5iCj/oTFAJwLKx9GyKEUbSM9f/IQ7AsZPhHT54hGBBMR +AgAGBQI+jc41AAoJEMppOXSBA6N+xYgAn1HbGamcXTDYSFjn3U5ik2vQa8nuAKC/ +uUM01gsdn+71EiAkmrjlH6H9MIhGBBARAgAGBQJCuAqrAAoJEIEEZE9RiYUE0MUA +n3cWFVW03CDuMuA7TSUqTf/eWARWAKC/GjQnPZ0+g7NbDw68ZSY3k8WuuohGBBAR +AgAGBQJBkvP5AAoJEOQTYTMMqmi0GIQAn1mpdHz/wV++rSU2Qn7R32slfNdpAKDJ +PqpnmcN4MUmk90yZEeHAdJmrhIhGBBARAgAGBQJCxTKGAAoJEJvyI0Uv4ovP3YUA +n1z8L1EnLdIYttWrT1zs0E89Lz4BAJ4sFzcSq2NO3OZsEQfh9F6CrUe3UohGBBAR +AgAGBQJC30UMAAoJEEHqCaBXk0mPIUgAoOF/OCzco+n/3sGJ57m0+aqGLOwjAJ9b +C86B2hRvkaZlGm/ne3TzCgFGnohGBBARAgAGBQJC4DXTAAoJEHPOLvuECPdVsEoA +n2hq8w0JUtfJpu3SmMUkFZLBFm3+AJ48pxmjHXjoBJGpokXw4i9Cfb56BoibBBMB +AgAGBQJC3qxxAAoJEDGmPZbsFAuBGDUD93nHzcDWR6AuDxDvaDp1xR8oJZHojeZ9 +sWSRQffiNJKF07vvdjGbygqiWbQmtTM9qBnAxEiBpSpJemBhvGTKivPkb9H88KQe +2jqowDO3IJorIVMT+eUFB+4pn5c+kFLD/IhG7ohZ2rBIc47L62FFuD19esxvMcVe +lrBFq67ZV4KInAQTAQIABgUCQt7H2QAKCRA34/Rf7mXjIY9vBADqrguzlNOJFkWv +EkgdVXCCH2TP3OUuPZ9JQtbJfbkg1nn1hCnMITapNJlEE3yyjB7kEpBkmUtyKv3V +SwODspfis/ps6zJRIne/2R5xqtT38Hf/sYucoMZUceipFAoCLYOqkKJKwTpYM040 +1dUpuxp1y8Lq5N0SDtTW9fKMNs9jioicBBMBAgAGBQJC32x5AAoJEJrNPMCpn3Xd +ek0EANLj3wh2FCukydsfSzqgjFDpkVjiBxbTtCep86flaLMrF3H0idckGCjMUf/J +ostBsjwCpL2VlCtvhwl5ZgIzm8luceHupq2iC5hvUN0IjKuIXMLbZP7DE+Lfcvw8 +2nKt8JNPpjosXiMhysQZms2XfuNP6f/Ey8J5jaB2Z2JCYWJBiEYEExECAAYFAkLe +uu0ACgkQMsnkzjZCy0vBrgCglfCttIxFGqVTLTq/nhPnRFMHX9YAoM4Z05oTuPFx +GWS4RzxCzCb3vpsAiEYEExECAAYFAkLfbHsACgkQUI6uxTAtpWgipACfTBzbyb7V +c0jr2FZDiXJFUSBCoEYAnR+ySWmedkcJWESStqRstD8T72mOiEYEExECAAYFAkLf +bH0ACgkQ3bpkuiwxLS/5RACgm88lpYDxy0bYF9/ubFbvqCw6i9YAnjrQoOLRBtQ4 +QmIPR+T/9HReOeSciEYEExECAAYFAkLgyTwACgkQXP03+sx4yJNXxQCffoccUBWO +51YIEM0mbsqpnKHtawoAn2xTiDgo3TjtbRJskADuw+QnATQLiEYEExECAAYFAkLg +7MwACgkQybWm7OLXdN8bPwCfeKtfQWKm8i+KuFJTIoMTvAN65QQAn2A9G1wtEN4V +zg6HfnTvtgus32rRiEYEExECAAYFAkLg7UAACgkQW5aAEOBPmonAkwCfeF3l1lE2 +WijQF0BmPMfqvkyA2UcAnRQzuc7PWyP0nydGoJvfEUHByVs7iEYEExECAAYFAkLi +Ym8ACgkQbZiNF4cxXDEC6gCgqICh/djzt1i6uadJAOztZc/zxl0AnjR1OaM2JxR+ +wqK3loSTEKX1uOpBiEYEExECAAYFAkLjVcAACgkQEy5J1OQe3H7rRwCeJWLmLyPz +pg3nr65j7AxqGRJeDfUAnRT2Oa85dAM02wgdYlj3FejPuNFziEYEExECAAYFAkLj +ZNsACgkQdcqio/ObN1DA+gCeOaeMarEJDPbZjaN3y/Pf5PB/Cv0AoMGPjPSTGt/i +HJ2aArfyd0ME/R52iEYEEBECAAYFAkLkbxQACgkQjON2uBzUhh+lnQCfVbPGF5UW +lzFbxK+xKmY2DbKXb5wAnjpoAxffSRO1PZlQUHgWlS+NaeCziEYEEBECAAYFAkLk +kscACgkQBJE0Quobo40fbACgo9YCJXu5Hpoc/SVp3rHCYmTuEMYAoIt2q6rPL/Jb +bkikbRqausEnFstziEYEEBECAAYFAkLlwiAACgkQYRlqLjM+ToRP8wCeOVAIpaG+ +q9G7uJgVCyDZ0JbjjfIAoJgg+NrBfhNeOBuu5mS1PSGDztQ+iEYEEBECAAYFAkLq +Y/gACgkQsr68QBUpJK8HfwCfWgNlYNLBWmn/nejlx0m6NstT2CsAnRdhsusv6Rbc +KNoVUudxGG4Xm3nGiEYEExECAAYFAkLj7WoACgkQMoZOQZyFIiv6jQCeMior8Tg4 +msrRc+FfXfj5Uln03d4An3RTaHKU+Sv4SgEecXlW0RYlVa6eiEYEExECAAYFAkLl +ELcACgkQUnkvr5l4r4ZC9gCbB5X0rL/DtpGptiNO12DdTQqzsMMAoOWpJFg3W7zA +r7alVjqlx0t1vS4KiEYEExECAAYFAkLlEaUACgkQa3OhBipiP3LYawCgiuQqhVay +7FE8e05Za69seQwF4CYAnAxBVNyvXu/1aeAuSi3iC6tywvFoiEYEExECAAYFAkLm +mWIACgkQaOuMdvjqKWfdbQCdHfDneYM+nWXT/oYOqohamLvk8iQAn1LLJhkLiCMO +a9/biF24zKt+MjaHiEYEExECAAYFAkLnYVcACgkQbpR1lMFSQxog0ACgp/m7d/Nd +NP0w605VyrJWCdogeG8An2E+FpFBQgyvJaD6klzDRNNYLc71iEYEEBECAAYFAkOH +n54ACgkQZjW2wN6IXdNgDgCfUVMGJZV/D1QEdnwrTkRmMb37KR4AnRLDWMsKtq4q +KXQjYbmuLNdHa1EQiEYEEBECAAYFAkY44sgACgkQFUWz/uIi3k8H/ACgmKEdToiB +aw1wAMXXKjj+8PTU880AnjTWDVjV2fZnj8iXaOK7MTx01gMRiEYEEBECAAYFAkY4 +56IACgkQY9CtrpESA+QXcACcCFtUvEcmTT5ezAsMsWPbRJAqtwoAnjFdqKAoBDkP +r85/VI89GhfttMRdiEYEEBECAAYFAkY8kyoACgkQmHDv8/EvYHLdewCgo42arxjK +Fiq+lp9b11fuTqvimDkAn1KOSLRaqubUBhfEBgZzx9kh6wh/iEYEExECAAYFAkY5 +GrkACgkQ4eHysJkO1KqIOgCdHwUD/IZcQB3qA/QCiKjIwePp7QoAoIB2fFdQH95L +A33wSR5XBI+mIEsbiEYEExECAAYFAkY8UEcACgkQTAQoGDEaPeX5dgCfY6TPlbpJ +psrKKtQaMXfSWv0E/xUAoIGqw9ZHnQ7y9wbSUMuSnW25b7rdiEYEExECAAYFAkY9 +oJIACgkQLrlGgoiBdAJMWQCgirz2diHoCbFyrBAV5iKWgP4Ua/QAnjWVrS+SKzUl +QgMzcU07zHDlVs1kiEYEEBECAAYFAkY91ngACgkQ9cJgFkzu119zGQCcCwwCeGu9 +A1U9Amz8/nKxBModdnsAoIavFQWLkVD3egS5YEarD/Edwx9UiEYEEBECAAYFAkY9 +9QUACgkQoHLU0ENYxYRKfgCeMfNpqkkRohgWFz/f2EhGbmfR2X0An2UBeqbP5hBK +okpD9xyF0pst2FIZiEYEEBECAAYFAkY+BcUACgkQAqWmBQt+bPrGDwCfUQUaIJ4j +UL7sFQOojnGU+mzpYHkAn1xSgTyDWKkT9C0JVhw5SEPnfLFjiEYEExECAAYFAkY/ +BjEACgkQA/aMvd6IhKCNuwCgvN28t3l3yYAMxkMUuL3LA8uTikEAoK3bfHFYDA1K +Plb648YsvpHQgRvoiEoEEBECAAoFAkY494cDBQM8AAoJEHPdjBYBUwI1PekAnR36 +SmoXYYegiEUSKxHCjHQnnYnbAJ9zmdCCloaaDIyqh2qr5x2jJscjHYhGBBARAgAG +BQJGQLZMAAoJEG0LxzpAWBg3YX4An2XrLaazjvwgpUwVEj9KCHAq9FYBAJ4khHqE +JHjpBjQioqGQfL2Z/NqI9rQkU3RlZmFuIEJvZGV3aWcgPHN0ZWZhbkBzYW1hZmxv +c3QuZGU+iF4EExECAB4FAkKcaeUCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ +ohFa4V9ri3LJLQCfV5FgLLtMydvd3RmvmG2p/ma9VfQAoN2/T3rXbOnm6kGaIh0a +KXJG2zi6iEYEEBECAAYFAkK4CqsACgkQgQRkT1GJhQT9FQCgjx9G+0vk8pVdbgbm +HGJ1iG/0Sc8Anib0UzD51jY1c/glTr1cyUx+KJeZiEYEEBECAAYFAkLFMoYACgkQ +m/IjRS/ii894qgCgl0WVnRowVW49yARZd5L4d8RdoLIAnA9x+/Zm1Q0TTMaRgKxU +NYakBc5XiEYEEBECAAYFAkLfRQwACgkQQeoJoFeTSY8x0ACfSH5IypIhLhcVIc57 +IIQEPG7AVpwAoKE9JFkgd4lHqSyA6FoYRrQyEuRUiJwEEwECAAYFAkLerHEACgkQ +MaY9luwUC4HmzgQAgBRaRChEzt2R24zJz6IAAja+hGQkMcxkyF610slkLOvFXB+e +MFDgOMpN3BqXx9qYAMWI2h3o0yUbwyrxqzxpSh4AmRcuPsB86Ne6VvSdWipNrFFp +U+u7Jw1XTLp/4vFsQ/cs9vfXF0eogsT3z9hyDBKm7MViWlyE6O3a1kozt+WInAQT +AQIABgUCQt7H2QAKCRA34/Rf7mXjIUWsBADPcH5/bASLBc0EUGwDvpZfN3/JIvvg +OAJ4+g10OMUZgpVMamoS9QY8cXkIRPkKJqtSHmwya9Ent+FwdINye286/4vUJhMB +KpwyX1laG79VII8vtY8xK5WQYZvIZwiPsz561ii5NJ+/L8yeUa51Wk01fjlua+K3 +VWfOsimB7aVUqIicBBMBAgAGBQJC32x5AAoJEJrNPMCpn3XdBw0D/Aww/tRUFPDz +z3virn9myTju2HK3o+CRdSPxm7Nhx98V4DmbEb+lieNTP6L8SS2K6VakANmBfxsc +ILsK3+JT5PuLKRXWm4LoiStHdvymQLZy7IyM3WHKGNNSChk98ZD8CAxKzRUpsV+m +yglHj3BTR2GenQwRxRXGFU7HaP8GwHumiEYEExECAAYFAkLesLIACgkQ/W+IxiHQ +pxt9FACgwsbD2ZLCiHL4+7Wx0BMJvj1efg8AoOz6K1AoCL0yFpyA/M0VgwRuAAl2 +iEYEExECAAYFAkLeuu0ACgkQMsnkzjZCy0v3dgCcDOwUCEIKiwNKgO+UdhIxxV0C +mVgAoKO4mgDR8SEXPzcNfY/AsTW1iUSeiEYEExECAAYFAkLfbHsACgkQUI6uxTAt +pWiMdwCbBdB465uDdtRMHa5oUvTxykC9inYAoI5brNhsrgs2n4G/SR1YQQ64XpZJ +iEYEExECAAYFAkLfbH0ACgkQ3bpkuiwxLS+zFgCguq0FOmY0kuoFZ8LMLrWqgcH8 +Lb8AoL9pjBiX9oZ2FWjTaleViBQLsnJjiEYEExECAAYFAkLgyTsACgkQXP03+sx4 +yJPU5QCfXWzNh6MCOaA+oRkpwA4SNnSnwa0AoODvVrRYkcy6gtU4AgLG4oKsviQ4 +iEYEExECAAYFAkLg7MwACgkQybWm7OLXdN9daQCfS98lHuxlHg6jM3d1i1mrXJX+ +67kAnjnpwPZ4cioBwEnhCv2V0FwwwVtLiEYEExECAAYFAkLg7UAACgkQW5aAEOBP +momzVQCeMJwH3AP67VLN/h7vZzZ/Gq/9kOcAn3ulvpPch43e4WVp2B3ZwpAGZDjH +iEYEExECAAYFAkLiYm8ACgkQbZiNF4cxXDHs0ACgp5PkqNAJ5uJCw8JfrKx7yAe2 ++owAoKkTgTeTHhBl0Jvhmp9lUrfp702fiEYEExECAAYFAkLjVcAACgkQEy5J1OQe +3H5UdACgkwJX4TxcBz15waPuSETqKcDUJ7EAoIdrx0vVUWUbeSPYrDQ2jX9W4gkJ +iEYEExECAAYFAkLjZNsACgkQdcqio/ObN1CvVwCghC4u8psbS8XcGH3X1d3cXet5 +ldsAoI4GlJUKhV48eZl50bIMuEunEvcriEYEEBECAAYFAkLkbxQACgkQjON2uBzU +hh+f7ACfSVRzFcAcBw/Dzdw0KvIRxLpp/LcAn1UEl6KDWNj++OCvvJOpSzvJzh+h +iEYEEBECAAYFAkLkkscACgkQBJE0Quobo42/qgCdGfgKBg2HtdtsEQDmACmspfX/ +XtEAninraJZejWfkZvzSmxSRj+n2MsCLiEYEEBECAAYFAkLlwiAACgkQYRlqLjM+ +ToQ3ewCeNJd+3C2XEsXz7dzO/2jj4FRqWucAn3ImhMp87hw3yEA/77V62W9ptPjX +iEYEEBECAAYFAkLqY/gACgkQsr68QBUpJK8ELACcDPCKrV0JP0wYkIuhcqvxx5uf +87wAoOWrWVfBfq+41UYU9UifhWlbGkA4iEYEExECAAYFAkLj7WoACgkQMoZOQZyF +IisLsgCcDpYy9vvn1UNAUikbxUr0vn0rtygAnicbDoW8gnd6N66sGlXmORRYvhZv +iEYEExECAAYFAkLlELcACgkQUnkvr5l4r4b9DgCdEoP1BJwfyAKKox8yqAYrwjGA +7a0An1WNyAykR22yzX1gUgxEVgk6R17YiEYEExECAAYFAkLlEaUACgkQa3OhBipi +P3KhgQCgxIE3sM7ek45gpCPUa2IxeOmvR+MAniT4eG5k8pnH8ERp+tIdGvTM9Zim +iEYEExECAAYFAkLmmWIACgkQaOuMdvjqKWd5RACfcOBFgIEVDMX9FHdc6MoGA0Hn +QIEAniTx0m5OthI9dTZYzRjdc3cM0R7kiEYEExECAAYFAkLnYVcACgkQbpR1lMFS +QxpDnwCgoEDPudHU5LSQ2g3fIFThgSkYkiIAoJE/YHbQ2nNJvbNiBwKpLZNJnNFP +iEYEEBECAAYFAkOHn54ACgkQZjW2wN6IXdObrwCgozJ5+BqZ2YY1hUu4jdCyF4MZ +uT8An2KHYyhec0myETse/XSeNRoNP1cViEYEEBECAAYFAkY44sgACgkQFUWz/uIi +3k85zwCgmiFCnYskmq4bv/8xFZ+u8vav7MwAnA1KG9S9mnNUdRRwfVxOH03/z1dS +iEYEEBECAAYFAkY456IACgkQY9CtrpESA+RZVQCaA4XNHYo1Lz5jiiC5F+nxuYO9 +w7oAnj7Dq41vmCHOfk/anlTMx8n5tqKbiEYEEBECAAYFAkY8kyoACgkQmHDv8/Ev +YHLZyQCgnOw2eyc14GgeCJosAdnchjBVAvEAoIrThShMNcuPldXTTd5GWC+D/zP7 +iEYEExECAAYFAkY5GrkACgkQ4eHysJkO1Kr1WACfQYxyw8hpkeesSpShd6latfow +JoMAn0EftKm1VmkiGlUtQwoPMlK9rcTniEYEExECAAYFAkY8UEcACgkQTAQoGDEa +PeVTtQCgnsBMALHH4/VX08bMBegS+szY/KwAn1v95Bu8zyNnUo1icxmD0GDwGtLJ +iEYEExECAAYFAkY9oJIACgkQLrlGgoiBdAI8UQCgrvZIkH71Zkq1WW/RyvDGs4br +focAn2OYLkjs/eih+XSdufOXJucD8k+ZiEYEEBECAAYFAkY91ngACgkQ9cJgFkzu +119OMgCeP2bzn7HsQoCEEbqERINfw/W54ioAn03CofXSxZD45Q98iMPzQnNS9P67 +iEYEEBECAAYFAkY99QUACgkQoHLU0ENYxYSZgQCdEz2ZSJLKtRJwGLU00m/7R6V8 +TVAAn3f5t42kx3SZY0VxiO1AbFR5y9J1iEYEEBECAAYFAkY+BcUACgkQAqWmBQt+ +bPokJwCdHhswezSELVyxIMrqYcltJwaaVa0AnA4+rZtTAilwO3+M1dUdLt9I61Hg +iEoEEBECAAoFAkY494cDBQM8AAoJEHPdjBYBUwI1fdkAniPtNsi5EqpnSZTAVX1R +PY6E/6QQAJ4yZcsKLd/D0vBbaHZYgnzb6p+lSIhGBBARAgAGBQJGQLZMAAoJEG0L +xzpAWBg3H1cAn20um0ttFdRJZ7kAQKH7JotMo286AJ93s7aw0CK4fvwZFyCaOyBd +DcvoFbQoU3RlZmFuIEJvZGV3aWcgPHN0ZWZhbi5ib2Rld2lnQGVwb3N0LmRlPoh3 +BDARAgA3BQJCxUrqMB0gSSBubyBsb25nZXIgaGF2ZSBhY2Nlc3MgdG8gdGhhdCBl +bWFpbCBhZGRyZXNzLgAKCRCiEVrhX2uLctbvAJ0RzqF0KvT3hrwsb5yFN347MbF8 +VQCdHcW+24byy/frsqeTTJsyek4z/iGIRgQQEQIABgUCPnekGgAKCRAVP6DNdaZ2 +kvV7AJ45J7uU65+FzeZ9Nezt5K+oQK3z2gCfRUz5iBAdt91WnfZgTse3o3oY9/SI +mQQTAQIABgUCPnXfDwAKCRA+j7fy+INB2Q/tA+Y9lc+LubrBGIuh+xOUcJsGtH56 +FahJKoKYdCM3UMZG1qYYTpfxBswi20P40un65PHyP8TSwZR0+daSTLp/C3V/cBh6 +gCAJc28+h7CwLqZmfcUx0Sjq8lzjcWaGxR+6Y626e8Y0Gdd0zwZIIn5EFL8BIyNG +sQIXXb/XjHCDLIhXBBMRAgAXBQI8Pto2BQsHCgMEAxUDAgMWAgECF4AACgkQohFa +4V9ri3Kz/gCg0PlCER3JUjKkG8JQe/lIJoApx38AoMW2G1lOuMX54RiWS08tG0j3 +ON4TiEYEExECAAYFAj6NzjUACgkQymk5dIEDo36MAgCghwB4Igq3ZAE+cC2GdSTg +OGWYzsUAoIDQjP1m61cZvaX6nyzuGEXf5j0viEYEExECAAYFAj512scACgkQ7tHq +OSJh0HOLzgCdF128HK4Oh2XkpoJJ2l7qT1piQuoAmgL+53bxfQzjvwqWZpxVWNv4 ++rMEiD8DBRA+daou/W+IxiHQpxsRAnoPAJ9/3XwtGKAVTIS9iPTgLXayjzsk1QCf +RE0XD4/X9JH0yv8lCY7MlWGXB2uIRgQQEQIABgUCQsUyhgAKCRCb8iNFL+KLz7Bn +AJ9G99bo3IGgCnuhL0gtEc1iHYZuGwCdFgazWFJoYrisbGb9+arGP4O+oja5AQ0E +OxIiVBAEAM1SlkvEK5MrMnW0ybtv9eMCG89gqIvd2gBnpcAsF0sX+dCaWHWNy5HL +3dBak/G3BJ8+NzAksfL5Srm0LVKcfVjBiG+IsbUoSyeJQGuhSZXYcnIc/3Z8Ujcs ++TfFurG8uHU1cWnNK5aMYwDrqxmp4Ru0zLYHw4tHBBKF0cgFaCsjAAMFA/49aSZu +DaatppSaBOzCt7wIYCsGBxX5ZibrJqr0gLUbhXU9eaWzCawOWwCvpQN0lTjoYVkw +iLZaYUkdqsSQgHAU3jjKlIuaIRXApEkTb8Jg7R/vNAdwXoZRLBCjZPGd5qGtnIez +sZ2+lxFx+bRieUL8fUInemXwWl8e23PMisgm+IhOBBgRAgAGBQI7EiJUABIJEKIR +WuFfa4tyB2VHUEcAAQENMgCgnc22kj8TfjktU6u4SUUqud25ZZcAn0B2b0zPjKjG +uiwdKSnkFbNcFS3g +=1whY +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/C152431A 2005-07-18 [expires: 2010-07-17] +uid Steve Loughran +sig 3 C152431A 2005-07-18 Steve Loughran +sig 2 FC243F3C 2005-07-20 Henk P. Penning +sig 3 302DA568 2005-07-21 Rodent of Unusual Size (DSA) +sig 3 2C312D2F 2005-07-21 Rodent of Unusual Size +sig 3 E04F9A89 2005-07-22 Roy T. Fielding +sig 8103A37E 2005-07-20 Andre Malo +sig 5793498F 2005-07-21 Tim Ellison +sig E4136392 2005-07-21 Noel J. Bergman +sig 1CD4861F 2005-07-25 Eran Chinthaka +sig EA1BA38D 2005-07-25 Ajith Harshana Ranabahu (Made at Apachecon 2005) +sig 3 21D0A71B 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 3642CB4B 2005-07-20 Martin Kraemer +sig 3 2261D073 2005-07-20 Astrid Kessler (Kess) +sig 3 E2D774DF 2005-07-22 Sylvain Wallez +sig 3 015AFC8A 2005-07-22 Bertrand Delacretaz +sig 3 E41EDC7E 2005-07-24 Carsten Ziegeler +sig 3 F39B3750 2005-07-24 Colm MacCarthaigh +sig 3 9C85222B 2005-07-24 Henning Schmiedehausen +sig 3 9978AF86 2005-07-25 Christoph Probst +sig 3 2A623F72 2005-07-25 Christoph Probst +sig 3 F8EA2967 2005-07-26 Brian McCallister +sig 3 A99F75DD 2005-07-21 Rodent of Unusual Size +sig 3 EC140B81 2005-07-20 Dirk-Willem van Gulik (http://www.anywi.com/ - Senior partner) +sig 3 EE65E321 2005-07-20 Martin Kraemer +sig 152924AF 2005-07-29 Sander Temme +sig 3 87315C31 2005-07-23 Raphaël Luta +sub 2048g/59066D7B 2005-07-18 [expires: 2010-07-17] +sig C152431A 2005-07-18 Steve Loughran + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.2 (GNU/Linux) + +mQGiBELb2+oRBADhgEV29jhAMg4dFJN9fjeIjN7+J0Lj3rcLBWc5RTlM33DTOCFM +BCIE9B/RXJuVhGgi7fUuB+WsHz7XMgZRn+5nqIKGecIxwEUtZCfwsaV6Id3abt30 +wccyYDTSV95gQie+bbwWF44ao7n/CaR1WUU/Nx5b26nY2EzOrQcgP1qYEwCgynnc +NU1N3zd1cIYr5hQVqvdazKsEAMbYAm5WsjBlLBrolxs/smx4vxZYJaA3gUqTz9WY +D08rDsotVIMoosYF0b4b3WxcePJ68N1pkF3U+zo8bIZJThT91nAfMh29ZAcSyRqg +Mkd25OcrrjykeF7OavuFSwhvYoDdlwsvkuijHY3weXyhpjvzi+GzvZoONo3zSl4g +aWncA/4vu6k7XZUZ6B9DbJLJ4Xqq8uhD7uT4417uCQdozIWgKE4ThM2WffhV2IgY +W6IXg+o6AqY1qiMLSYYdeRsVkQ/GVss+sR++cbsO5ijDGfvlWPfGxIcA+P+alAwf +KY9M45IB8E92DUDru6ImrDHMeOrlDNPRusxRyZ4SiSJYNcgBtLQiU3RldmUgTG91 +Z2hyYW4gPHN0ZXZlbEBhcGFjaGUub3JnPohhBBMRAgAhBQJC29vqBQkJZgGABgsJ +CAcDAgMVAgMDFgIBAh4BAheAAAoJEG6UdZTBUkMaZugAnjJVyMa1FYEm/9811Whm +K06kGzXbAJ4rgRTBOcuyVbmbOAeYCgqloOxky4hGBBIRAgAGBQJC3rlGAAoJEIuW +KUP8JD88RewAn3LmpnmnLlYnlQW7+byITmKLO9gwAKCi0GGQz0QUq9tFG4YeF7Rp +UCl8ZIhGBBMRAgAGBQJC32y8AAoJEFCOrsUwLaVof1cAoLX3ROO9ufH+QXYlBuy6 +HA5SgofAAJ9aON/jC3WmrxT9Lz/DlIBKVI9TZohGBBMRAgAGBQJC32zBAAoJEN26 +ZLosMS0vCycAnjFhGc63FoWHwzpfVoocrBm8yQTHAJ47Kle1Tr+fBnlkYsAg0xY6 +12VZ9YhGBBMRAgAGBQJC4PEqAAoJEFuWgBDgT5qJY6IAnj2jxdReXh3eBRr+easP +bboH9Lu0AKCSoT0Gt+pM+G7XM8vQbZjsyjDhrohMBBARAgAMBQJC3t+3BYMJYv2z +AAoJEMppOXSBA6N+4VAAnRfGDGvU4qDop0EdApmHCExFDHFDAJ9/3xZDnJjEeSGr +l2JyOPJfbv/k0YhMBBARAgAMBQJC30/tBYMJYo19AAoJEEHqCaBXk0mPRKwAoI0M +FDyhr2PON57N4614Po16a9ZNAJ0SGKJtMOIxgoDHSf6SYuFy+8sBLYhMBBARAgAM +BQJC35MFBYMJYkplAAoJEAEFZrzkE2OSgcsAnjKv4POPmFUYhDGH+GCcxSyM9LPo +AJ0TPnoLf74lUroWD5+rlhTPD9eMHYhMBBARAgAMBQJC5HvtBYMJXWF9AAoJEIzj +drgc1IYfdCAAoIKybYLGd4yGE8NcrvnGaPSXx6NXAJ4zrIPA9tQu23tOHarZxSqg +7AWGh4hMBBARAgAMBQJC5JCBBYMJXUzpAAoJEASRNELqG6ONWZsAniJvvMiDR61N +rV5Y7xx/3/id/ekWAJ9MNUUQAXTES1dkywQVHVp6C8QFvohMBBMRAgAMBQJC3rR1 +BYMJYyj1AAoJEP1viMYh0Kcb26oAn2JuF355Lq6PIEvnhEr+SA3noxS8AJ9msBXz +nHsORsz8mB4WZ4DMAYEH0YhMBBMRAgAMBQJC3rvoBYMJYyGCAAoJEDLJ5M42QstL +Cu0An2vCOimm9iyRJekvlh7IcsrXVDksAJ9S1iVXBgyRuWBkbcuRk9OLs/TnwohM +BBMRAgAMBQJC3twlBYMJYwFFAAoJEO7R6jkiYdBz3gkAn3b48pHpjPG5DCbfp0oT +/WN9IqYlAJ47CLk2xg7e8N53WTmYfL+F/c/ZrohMBBMRAgAMBQJC4O0jBYMJYPBH +AAoJEMm1puzi13Tf+KgAnjviBj4kvC9ABiWR70t4BU3y8kgJAJ9qmj71qWjrek/L +Cb3+fAmlASx82IhMBBMRAgAMBQJC4O20BYMJYO+2AAoJEDf2j/UBWvyKJywAnjSC +smaB18utPgHthVW0qDQ+DDmNAJ9a64uKqcDI7u1cDEbi3nL5ELztCohMBBMRAgAM +BQJC41snBYMJXoJDAAoJEBMuSdTkHtx+SyUAn19MjVdnPdxKdiXjpMRWwOs5fhTL +AJ9AGh+TvyOt877cfLVaywPK+GhN0ohMBBMRAgAMBQJC42UQBYMJXnhaAAoJEHXK +oqPzmzdQe9gAoL7BugDd1NniX/ZNqs0aD7Y1uUfhAJ0b4p34ZYPWFg1CyUduwYlx +MAOqo4hMBBMRAgAMBQJC4+3gBYMJXe+KAAoJEDKGTkGchSIrHl8An0ERlWCCDHYy +0jlbsVcQ4FOS9qe6AJ4sLF02AltG01bK1kpvnKXxHFVYoIhMBBMRAgAMBQJC5RDw +BYMJXMx6AAoJEFJ5L6+ZeK+GWEkAoIl+GM1cgJosSMsMG0NqXog9yqeKAJ9aJ0Xr +j7JP5abRyjROroIUCUcc4ohMBBMRAgAMBQJC5RHdBYMJXMuNAAoJEGtzoQYqYj9y +IawAn3TzgRnJPfl4gg2kwIlJtD/a4ql5AJ43+Bbg3EWh2RVaLB7QpA1pAsRFB4hM +BBMRAgAMBQJC5pnVBYMJW0OVAAoJEGjrjHb46ilnWz8An1WpumoYARq3Le1VG0vu +SkQcdg8SAJ488MHNQRq2fyQFk9uIstWriQfa7YicBBMBAgAGBQJC32y2AAoJEJrN +PMCpn3Xdsl0D/j7J+/vobH/4+pmWCWv3okqBbbd9PH/NJTC3B7KU+p8bFdIIZWYh +n9SPXRdLoUlbKnqYw6+x0Ktn/9oWqwTM2b1bOHoMEUy/hPDM1ZK2gGDU11BFbfC4 +zkXowbq2xCHLyaQXqj5Wju01PT/wj8bw5A0E2rzv2iUA2ilXJE1vQdx+iKIEEwEC +AAwFAkLerQ0FgwljMF0ACgkQMaY9luwUC4H6jAP+L3lvntIdecj0QlnD4gTkdLn+ +nbOPT0G9MPSjA3ML9Bqeoh/uD2TeHS0dqb67DpIzhKV/zu6vrOhsXHXNiCjR4lxR +YHBg0PoxLJkggpjdAduk5vcM2ZgRJZQojsQ9CunxnmA/YCRCEEUPFeKj/5p1aFGm +uPsl2zwggHxbdOBY1maIogQTAQIADAUCQt7IywWDCWMUnwAKCRA34/Rf7mXjITNS +A/9YB8srHD2WbpZy5P/cN6WjPshYgx0lVFOifFdXgD4AUzgJ3VmtH1NI0Rkgadcw +8PdJYAynH/Hdz4PJ8wIEkmMFEe6TKB3BCjCGY8+Ti6R/VrlkizIGL0HzAUzNc+g2 +D1NI8725Idx+XNSOSBcOBZ3mwPVo1k67X1rF8BoYAeo8TohMBBARAgAMBQJC6mYn +BYMJV3dDAAoJELK+vEAVKSSv8BwAniQzr7l/ihVvAhvNUnpJzFWfr6tfAJ93Mama +D+Fz4kgEVjnO5j8MrM6JtIhMBBMRAgAMBQJC4mNBBYMJX3opAAoJEG2YjReHMVwx +Pr4AmQGWlApW3C1VbkuRgVs8pj6/ejXqAKC1z3D5mMpj83yyejnBjxDjXTLsUbkC +DQRC29vxEAgA05PNdXcVOSTsYuizTCbdBU9i3qUBkAyqPmDE6hkWI+7fnr8KAUUo +UghWwhxqBngpv48o3mE+bC+l/cTH+DuHIOsszpSK5ydufyitXi7piYk4RS+UNbyl +b4BU5qGodwWwXC9wKBIjXL5rK2KjKh4Ovh0WogtZ1fwc5NzQkjcfbner9WsAmjtd +nmVV2vZhJdDlxf3BBM9ai2R2IRvfhF61QFZcr2ehqAdsiDix8p0ugpC/oQS8h8pg +GQebz7aNeSjh/Vb3dsdo8CaLvHp1nM5aVCDRqoCfoeKUbRfwwwKxtc1cyYzOHD1f +KG9BuvtL4y4JQ/gDCsQVKdAAoiktu8Ks9wADBQf/fGkVYIh7w0+8xSIvez1DKirX +rl1J3XNvOYIa1qlBk65hllXnFXeXqoOLQpvygcwNRfil3AGcpwzwlNloem3ozjnt +IFvYJYzB6q4SMl1/a5uLrcc2frq8tbG0RhU+ZEhWR6sIEOBQhkKZ9LZbJ1tK9buJ +M0meaIt5gVLAVbI5vf+2Lvmlv0+E/a4Zn2exl1RcBYATNZT1gC55m0z5PMzG6Bc4 +tOAhPEo3WpfNjIrFeXcB0ksk4mfDIWKlA0mc8A+faKSSMdiDpeU4H4uZy5pE/hVv +2VyE3Ej5PoA3DajRzgQ69YlojTYnfnPyJErCBZhtZXTtRY7aDm9/xBT7FZ06RIhM +BBgRAgAMBQJC29vxBQkJZgGAAAoJEG6UdZTBUkMakjEAoINKV6yLAdbBhXhvMsqK +0N6XOghJAJ4mSgdwgv+sIOaPKQqCm+PL2M0lPw== +=4TlI +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/AA0077B0 2006-06-13 +uid Kev Jackson (apache key) +sig 3 AA0077B0 2006-06-13 Kev Jackson (apache key) +sub 2048g/8A6DD738 2006-06-13 +sig AA0077B0 2006-06-13 Kev Jackson (apache key) + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.1 (Darwin) + +mQGiBESOfuoRBADiCLjvY8EG8cDrfNvPaVJr1/8d8GDoLjBCeJWl50M7j1IQDB+r +rzBPXOzhoqiNRbZMkpjv8ofa5hVOQitVS4B69FA07RbuiQNTKg142h8ogtJeAI1g +eXuTZtmGE47TOpj7FMG8bHOmoJdQMkzUsdOhEAyqRu4noknuuIKgsE1kYwCgnhaH +9KBlpKaRG7Bb2BH6da+wmKUEAIaBeZ1aSQodUzDqnGjCd4hZbpzjyWg7O5BylNhK +ogMY95BvwFRD8WFdSvhvH9VKBtSuNqg/6gIkqAljRRESVxL4QrzlYSqF513kK1ds +lUTmqU9Dvaf7dkH+MYnkPVTP5tMZVCT7HEt4F6HcqlaZKlz5jsu3R53KBx6XZATc +SEGbA/wOournJ64We8sXTJGHFupvSLBy3nh68mPLaplzTnH2al1DLBnoF2giC32v +ZGG+e12kWE+fyyQ3pdAIRHgVjZ/ckPmcmxnVcYrhzbgV99fo2+JRh2SVrLrmvw+G +CKiUtNHn0HS1klBKSj+3ML1AQQlbyfrcVSf0Fefug51BqoqU+rQqS2V2IEphY2tz +b24gKGFwYWNoZSBrZXkpIDxrZXZqQGFwYWNoZS5vcmc+iF4EExECAB4FAkSOfuoC +GwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQoL/5PaoAd7BnTACff9f8Y2RFB7O7 +Wjncyb1XbEwJB/gAninrR0isW9jGx49GmSnQCjtO9k34uQINBESOfzMQCACP+GP2 +x2nE2JxjUUjj16ftOxUivbL8L9ksplx41n7yeRvu+RzOXcjlonuld0LYxprNsHGv +mbAoZj93QozHQIMfC2kfnia+hxCcBPMbev9RPCqgogpb90BtV0f9HGyWXs2QTgWG +R2hyjq/RpwtA3obSXw3pb1CnXW4stV65WAdd72KDc66wRR1gmjxKQx6b1dGcC+E4 +HyOgu2CDtr1ULPeI5U4BA4y8FLgDfYwkxp6vj5ViegGP7GlMa3bSgNRGsYX7VwgZ +pmI8WY4B5k3/Pyv2Toe6/5zTmKH8WlyZd00ede/tbFTqQLg+EylAcWJ8c3asood+ +SjCwTuD8l8a0wpO3AAMHB/9GXkbBUE8cbMTaS4yj7UL5iWRVhSPo9IzMSrzaXmZN +8ykX96ud35BCEfmYgty3USMk90Rs/PbwB4Mh3h1ZTXqRWcfOXzJ8kMabm2RANyf2 +H2DvGKoFPtpX/9I13vo9qRLRHVRENNg+3JCa1ii8cq7h8bWvTT0VxX/rOG0cl8nO +XkHTUARR19cGPf6XkHEcl+u1pAxIJGqY/gVowjyFGZs+RXFl/q/Vrgu+lvvxmryd +yEdeGdsBvQ9M0KKr98w1RiJnDUkSqI711xwlVk14Uu6Xke0oB3bbpe4UxD52avAC +yEzYY7vbpe6XS2+dOcZxWE3eur6SfsucAkj4Ib72mchhiEkEGBECAAkFAkSOfzMC +GwwACgkQoL/5PaoAd7BQAwCeJFb9yZvOWfdf73A7t2MvPXn1y6kAnRquMmA5eVdh +HbAUXWyYuT2OHOSD +=F2q3 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/ant/LICENSE b/ant/LICENSE new file mode 100644 index 0000000..cdf6ff8 --- /dev/null +++ b/ant/LICENSE @@ -0,0 +1,272 @@ +/* + * Apache License + * Version 2.0, January 2004 + * http://www.apache.org/licenses/ + * + * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + * + * 1. Definitions. + * + * "License" shall mean the terms and conditions for use, reproduction, + * and distribution as defined by Sections 1 through 9 of this document. + * + * "Licensor" shall mean the copyright owner or entity authorized by + * the copyright owner that is granting the License. + * + * "Legal Entity" shall mean the union of the acting entity and all + * other entities that control, are controlled by, or are under common + * control with that entity. For the purposes of this definition, + * "control" means (i) the power, direct or indirect, to cause the + * direction or management of such entity, whether by contract or + * otherwise, or (ii) ownership of fifty percent (50%) or more of the + * outstanding shares, or (iii) beneficial ownership of such entity. + * + * "You" (or "Your") shall mean an individual or Legal Entity + * exercising permissions granted by this License. + * + * "Source" form shall mean the preferred form for making modifications, + * including but not limited to software source code, documentation + * source, and configuration files. + * + * "Object" form shall mean any form resulting from mechanical + * transformation or translation of a Source form, including but + * not limited to compiled object code, generated documentation, + * and conversions to other media types. + * + * "Work" shall mean the work of authorship, whether in Source or + * Object form, made available under the License, as indicated by a + * copyright notice that is included in or attached to the work + * (an example is provided in the Appendix below). + * + * "Derivative Works" shall mean any work, whether in Source or Object + * form, that is based on (or derived from) the Work and for which the + * editorial revisions, annotations, elaborations, or other modifications + * represent, as a whole, an original work of authorship. For the purposes + * of this License, Derivative Works shall not include works that remain + * separable from, or merely link (or bind by name) to the interfaces of, + * the Work and Derivative Works thereof. + * + * "Contribution" shall mean any work of authorship, including + * the original version of the Work and any modifications or additions + * to that Work or Derivative Works thereof, that is intentionally + * submitted to Licensor for inclusion in the Work by the copyright owner + * or by an individual or Legal Entity authorized to submit on behalf of + * the copyright owner. For the purposes of this definition, "submitted" + * means any form of electronic, verbal, or written communication sent + * to the Licensor or its representatives, including but not limited to + * communication on electronic mailing lists, source code control systems, + * and issue tracking systems that are managed by, or on behalf of, the + * Licensor for the purpose of discussing and improving the Work, but + * excluding communication that is conspicuously marked or otherwise + * designated in writing by the copyright owner as "Not a Contribution." + * + * "Contributor" shall mean Licensor and any individual or Legal Entity + * on behalf of whom a Contribution has been received by Licensor and + * subsequently incorporated within the Work. + * + * 2. Grant of Copyright License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * copyright license to reproduce, prepare Derivative Works of, + * publicly display, publicly perform, sublicense, and distribute the + * Work and such Derivative Works in Source or Object form. + * + * 3. Grant of Patent License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * (except as stated in this section) patent license to make, have made, + * use, offer to sell, sell, import, and otherwise transfer the Work, + * where such license applies only to those patent claims licensable + * by such Contributor that are necessarily infringed by their + * Contribution(s) alone or by combination of their Contribution(s) + * with the Work to which such Contribution(s) was submitted. If You + * institute patent litigation against any entity (including a + * cross-claim or counterclaim in a lawsuit) alleging that the Work + * or a Contribution incorporated within the Work constitutes direct + * or contributory patent infringement, then any patent licenses + * granted to You under this License for that Work shall terminate + * as of the date such litigation is filed. + * + * 4. Redistribution. You may reproduce and distribute copies of the + * Work or Derivative Works thereof in any medium, with or without + * modifications, and in Source or Object form, provided that You + * meet the following conditions: + * + * (a) You must give any other recipients of the Work or + * Derivative Works a copy of this License; and + * + * (b) You must cause any modified files to carry prominent notices + * stating that You changed the files; and + * + * (c) You must retain, in the Source form of any Derivative Works + * that You distribute, all copyright, patent, trademark, and + * attribution notices from the Source form of the Work, + * excluding those notices that do not pertain to any part of + * the Derivative Works; and + * + * (d) If the Work includes a "NOTICE" text file as part of its + * distribution, then any Derivative Works that You distribute must + * include a readable copy of the attribution notices contained + * within such NOTICE file, excluding those notices that do not + * pertain to any part of the Derivative Works, in at least one + * of the following places: within a NOTICE text file distributed + * as part of the Derivative Works; within the Source form or + * documentation, if provided along with the Derivative Works; or, + * within a display generated by the Derivative Works, if and + * wherever such third-party notices normally appear. The contents + * of the NOTICE file are for informational purposes only and + * do not modify the License. You may add Your own attribution + * notices within Derivative Works that You distribute, alongside + * or as an addendum to the NOTICE text from the Work, provided + * that such additional attribution notices cannot be construed + * as modifying the License. + * + * You may add Your own copyright statement to Your modifications and + * may provide additional or different license terms and conditions + * for use, reproduction, or distribution of Your modifications, or + * for any such Derivative Works as a whole, provided Your use, + * reproduction, and distribution of the Work otherwise complies with + * the conditions stated in this License. + * + * 5. Submission of Contributions. Unless You explicitly state otherwise, + * any Contribution intentionally submitted for inclusion in the Work + * by You to the Licensor shall be under the terms and conditions of + * this License, without any additional terms or conditions. + * Notwithstanding the above, nothing herein shall supersede or modify + * the terms of any separate license agreement you may have executed + * with Licensor regarding such Contributions. + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor, + * except as required for reasonable and customary use in describing the + * origin of the Work and reproducing the content of the NOTICE file. + * + * 7. Disclaimer of Warranty. Unless required by applicable law or + * agreed to in writing, Licensor provides the Work (and each + * Contributor provides its Contributions) on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied, including, without limitation, any warranties or conditions + * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + * PARTICULAR PURPOSE. You are solely responsible for determining the + * appropriateness of using or redistributing the Work and assume any + * risks associated with Your exercise of permissions under this License. + * + * 8. Limitation of Liability. In no event and under no legal theory, + * whether in tort (including negligence), contract, or otherwise, + * unless required by applicable law (such as deliberate and grossly + * negligent acts) or agreed to in writing, shall any Contributor be + * liable to You for damages, including any direct, indirect, special, + * incidental, or consequential damages of any character arising as a + * result of this License or out of the use or inability to use the + * Work (including but not limited to damages for loss of goodwill, + * work stoppage, computer failure or malfunction, or any and all + * other commercial damages or losses), even if such Contributor + * has been advised of the possibility of such damages. + * + * 9. Accepting Warranty or Additional Liability. While redistributing + * the Work or Derivative Works thereof, You may choose to offer, + * and charge a fee for, acceptance of support, warranty, indemnity, + * or other liability obligations and/or rights consistent with this + * License. However, in accepting such obligations, You may act only + * on Your own behalf and on Your sole responsibility, not on behalf + * of any other Contributor, and only if You agree to indemnify, + * defend, and hold each Contributor harmless for any liability + * incurred by, or claims asserted against, such Contributor by reason + * of your accepting any such warranty or additional liability. + * + * END OF TERMS AND CONDITIONS + * + * APPENDIX: How to apply the Apache License to your work. + * + * To apply the Apache License to your work, attach the following + * boilerplate notice, with the fields enclosed by brackets "[]" + * replaced with your own identifying information. (Don't include + * the brackets!) The text should be enclosed in the appropriate + * comment syntax for the file format. We also recommend that a + * file or class name and description of purpose be included on the + * same "printed page" as the copyright notice for easier + * identification within third-party archives. + * + * Copyright [yyyy] [name of copyright owner] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +W3C® SOFTWARE NOTICE AND LICENSE +http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 + +This work (and included software, documentation such as READMEs, or other +related items) is being provided by the copyright holders under the following +license. By obtaining, using and/or copying this work, you (the licensee) agree +that you have read, understood, and will comply with the following terms and +conditions. + +Permission to copy, modify, and distribute this software and its documentation, +with or without modification, for any purpose and without fee or royalty is +hereby granted, provided that you include the following on ALL copies of the +software and documentation or portions thereof, including modifications: + + 1. The full text of this NOTICE in a location viewable to users of the + redistributed or derivative work. + 2. Any pre-existing intellectual property disclaimers, notices, or terms + and conditions. If none exist, the W3C Software Short Notice should be + included (hypertext is preferred, text is permitted) within the body + of any redistributed or derivative code. + 3. Notice of any changes or modifications to the files, including the date + changes were made. (We recommend you provide URIs to the location from + which the code is derived.) + +THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE +NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT +THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY +PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. + +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION. + +The name and trademarks of copyright holders may NOT be used in advertising or +publicity pertaining to the software without specific, written prior permission. +Title to copyright in this software and any associated documentation will at +all times remain with copyright holders. + +____________________________________ + +This formulation of W3C's notice and license became active on December 31 2002. +This version removes the copyright ownership notice such that this license can +be used with materials other than those owned by the W3C, reflects that ERCIM +is now a host of the W3C, includes references to this specific dated version of +the license, and removes the ambiguous grant of "use". Otherwise, this version +is the same as the previous version and is written so as to preserve the Free +Software Foundation's assessment of GPL compatibility and OSI's certification +under the Open Source Definition. Please see our Copyright FAQ for common +questions about using materials from our site, including specific terms and +conditions for packages like libwww, Amaya, and Jigsaw. Other questions about +this notice can be directed to site-policy@w3.org. + +Joseph Reagle + +This license came from: http://www.megginson.com/SAX/copying.html + However please note future versions of SAX may be covered + under http://saxproject.org/?selected=pd + +SAX2 is Free! + +I hereby abandon any property rights to SAX 2.0 (the Simple API for +XML), and release all of the SAX 2.0 source code, compiled code, and +documentation contained in this distribution into the Public Domain. +SAX comes with NO WARRANTY or guarantee of fitness for any +purpose. + +David Megginson, david@megginson.com +2000-05-05 diff --git a/ant/NOTICE b/ant/NOTICE new file mode 100644 index 0000000..4c88cc6 --- /dev/null +++ b/ant/NOTICE @@ -0,0 +1,26 @@ + ========================================================================= + == NOTICE file corresponding to the section 4 d of == + == the Apache License, Version 2.0, == + == in this case for the Apache Ant distribution. == + ========================================================================= + + Apache Ant + Copyright 1999-2008 The Apache Software Foundation + + This product includes software developed by + The Apache Software Foundation (http://www.apache.org/). + + This product includes also software developed by : + - the W3C consortium (http://www.w3c.org) , + - the SAX project (http://www.saxproject.org) + + The task is based on code Copyright (c) 2002, Landmark + Graphics Corp that has been kindly donated to the Apache Software + Foundation. + + Portions of this software were originally based on the following: + - software copyright (c) 1999, IBM Corporation., http://www.ibm.com. + - software copyright (c) 1999, Sun Microsystems., http://www.sun.com. + - voluntary contributions made by Paul Eng on behalf of the + Apache Software Foundation that were originally developed at iClick, Inc., + software copyright (c) 1999. diff --git a/ant/README b/ant/README new file mode 100644 index 0000000..9510941 --- /dev/null +++ b/ant/README @@ -0,0 +1,97 @@ + + A N T + + + What is it? + ----------- + + Ant is a Java based build tool. In theory it is kind of like "make" + without makes wrinkles and with the full portability of pure java code. + + + Why? + ---- + + Why another build tool when there is already make, gnumake, nmake, jam, + and others? Because all of those tools have limitations that its original + author couldn't live with when developing software across multiple platforms. + + Make-like tools are inherently shell based. They evaluate a set of + dependencies and then execute commands not unlike what you would issue on a + shell. This means that you can easily extend these tools by using or writing + any program for the OS that you are working on. However, this also means that + you limit yourself to the OS, or at least the OS type such as Unix, that you + are working on. + + Makefiles are inherently evil as well. Anybody who has worked on them for any + time has run into the dreaded tab problem. "Is my command not executing + because I have a space in front of my tab!!!" said the original author of Ant + way too many times. Tools like Jam took care of this to a great degree, but + still use yet another format to use and remember. + + Ant is different. Instead a model where it is extended with shell based + commands, it is extended using Java classes. Instead of writing shell + commands, the configuration files are XML based calling out a target tree + where various tasks get executed. Each task is run by an object which + implements a particular Task interface. + + Granted, this removes some of the expressive power that is inherent by being + able to construct a shell command such as `find . -name foo -exec rm {}` but + it gives you the ability to be cross platform. To work anywhere and + everywhere. And hey, if you really need to execute a shell command, Ant has + an exec rule that allows different commands to be executed based on the OS + that it is executing on. + + The Latest Version + ------------------ + + Details of the latest version can be found on the Apache Ant + Project web site . + + + Documentation + ------------- + + Documentation is available in HTML format, in the docs/ directory. + For information about building and installing Ant, see + docs/manual/index.html + + + Licensing + --------- + + This software is licensed under the terms you may find in the file + named "LICENSE" in this directory. + + This distribution includes cryptographic software. The country in + which you currently reside may have restrictions on the import, + possession, use, and/or re-export to another country, of + encryption software. BEFORE using any encryption software, please + check your country's laws, regulations and policies concerning the + import, possession, or use, and re-export of encryption software, to + see if this is permitted. See for more + information. + + The U.S. Government Department of Commerce, Bureau of Industry and + Security (BIS), has classified this software as Export Commodity + Control Number (ECCN) 5D002.C.1, which includes information security + software using or performing cryptographic functions with asymmetric + algorithms. The form and manner of this Apache Software Foundation + distribution makes it eligible for export under the License Exception + ENC Technology Software Unrestricted (TSU) exception (see the BIS + Export Administration Regulations, Section 740.13) for both object + code and source code. + + The following provides more details on the included cryptographic + software: + + For the SSH family of tasks ( and ) Ant requires the + JSch library as well as the + Java Cryptography extensions + . Ant does not + include these libraries itself, but is designed to use them. + + Thanks for using Ant. + + The Apache Ant Project + diff --git a/ant/WHATSNEW b/ant/WHATSNEW new file mode 100644 index 0000000..5afe773 --- /dev/null +++ b/ant/WHATSNEW @@ -0,0 +1,3937 @@ +Changes from Ant 1.7.0 TO current Ant 1.7.1 version +============================================= + +Changes that could break older environments: +------------------------------------------- + +* String resources only have properties single expanded. If you relied on + resources being expanded more than once, it no longer happens. + Bugzilla report 42277. + +* A String resource's encoding attribute was only taken into account when + set from the resource's OutputStream; the InputStream provided the String's + binary content according to the platform's default encoding. Behavior has + been modified to encode outgoing (InputStream) content as well as encoding + incoming (OutputStream) content. + +* with fork now returns gives -1 instead of 0 as result when failonerror + is false and some exception (including timeout) occurs. Br 42377. + +* ant-type attribute has been marked as deprecated and a warning has been + issued if it is encountered in the build file. + +* FileUtils.createTempFile now actually creates the file. + The TempFile task still does not create the file by default, can be instructed + to do so however using a new parameter. + Bugzilla report 33969. + +Fixed bugs: +----------- + +* The default logger was failing to print complete stack traces for exceptions + other than BuildException, thus omitting often important diagnostic + information. Bugzilla 43398. + +* Error in FTP task + Bugzilla report 41724 + +* Regression: Locator fails with URI encoding problem when spaces in path + Bugzilla report 42222 + +* Regression in Locator: running Ant off a network share does not work: + message "URI has authority component" appears + Bugzilla report 42275 + +* Improvements in AntClassLoader Speed. + Bugzilla report 42259 + +* Error in handling of some permissions, most notably the AllPermission on + jdk 1.5 + Bugzilla report 41776 + +* Replace task summary output incorrect. + Bugzilla report 41544 + +* Dependset crashes ant when timestamp on files change during Dependset + execution. + Bugzilla report 41284 + +* Bug in org.apache.tools.ant.types.resources.comparators.Date + Bugzilla report 41411 + +* in Ant 1.7.0 could throw NPE if no was defined. + Bugzilla report 41422. + +* In Ant 1.7.0, in does not by default include only + **/*.java as the documentation claims and earlier revisions did. + Bugzilla report 41264. + +* SPI support in jar was broken. + Bugzilla report 41201. + +* jsch-0.1.30 causes SCP task to hang + Bugzilla report 41090. + +* Target from imported file listed twice in projecthelp. + Bugzilla report 41226. + +* task double-expands properties if expandproperties is true, + and expands properties if expandproperties is false. + Bugzilla report 41204. + +* Rolling back Bugzilla 32927 (set a default description for a javadoc tag + if not set) as it caused a BC problem. + Bugzilla report 41268. + +* forks properly and so memory settings are picked up. + Bug report 41280. + +* Regression: NPE was thrown when using against a + (third-party instantiated) fileset with null Project reference. + +* Strip out all -J arguments to non forking rmic adapters, specifically + the Sun and Weblogic compilers. + Bug report 41349 + +* Synchonization issues in PropertyHelper. Bugzilla 41353. + +* did not append. Bugzilla 41399. + +* -autoproxy turns Java1.5+ automatic proxy support on. Bugzilla 41904 + +* Handle null result of system getProperty(). Bugzilla 42334. + +* Regression: concat fixlastline="true" should not have applied to + nested text, but did in Ant 1.7.0. Bugzilla 42369. + +* Regression: ant.version was not passed down in , . + This worked in Ant 1.6.5, but not in 1.7.0. + ant.core.lib (added in 1.7.0) was also not being propagated. + Bugzilla bug 42263 + +* Regression: bzip2 task created corrupted output files for some inputs. + Bugzilla bug 41596. + +* Regression: with did not work. + Bugzilla 42735. + +* ant script, cd may output to stdout. + Bugzilla 42739. + +* Modified selector doesn't update the cache if only one file has changed. + Bugzilla 42802. + +* Regression: Path subclasses that overrode list() stopped working in + resourceCollection contexts in Ant 1.7.0. Bugzilla 42967. + +* War task failed with "No WEB-INF/web.xml file was added" when called + a second time. Bugzilla 43121. + +* FilterMapper could throw an NPE. + Bugzilla 43292. + +* Regession nested macrodefs with elements could cause StackOverFlow. + Bugzilla 43324. + +* task couldn't differentiate between "no resources specified" and "no resources + matched." Bugzilla report 43799. + +* Some changes to broke third party tasks that extend it (like + Apache Cactus' Ant task). The changes have been modified so that + subclases should now work again - without any changes to the + subclass. + +Other changes: +-------------- + +* Various small optimizations speed up common tasks such as on large + filesets, reducing both I/O and CPU usage. + +* Profiling logger has been added with basic profiling capabilities. + +* + + + + +

Class

+ + + + + +
+ +

Tests

+ + + + + + + + + +
+ + + + + + + + + + + + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + + + + + + + Unit Test Classes: <xsl:value-of select="$name"/> + + + + + + + + + +
+

+ + <none> +

+
+ +

Classes

+ + + + + + + +
+ +
+ + +
+ + + + + + + All Unit Test Classes + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + / + .html + + + + + + + + + + + + + All Unit Test Packages + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + <none> + + + + + + + + + + Unit Test Results: Summary + + + + + + open('allclasses-frame.html','classListFrame') + +

Summary

+ + + + + + + + + + + + + + + + + Error + Failure + Pass + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+ +

Packages

+ + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + +
+ + <none> + + + + +
+ + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + + +

Classes

+

+ + + + + +
+

+
+ + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + +

Unit Test Results

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + + Name + Tests + Errors + Failures + Time(s) + Time Stamp + Host + + + + + + + Name + Status + Type + Time(s) + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + + + + + + + + + + Error + Failure + TableRowColor + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + +

+ + + + + + + +
+ + + + + + + + + + + + +
+ +
+ + + + + + + + + + + diff --git a/ant/etc/junit-frames.xsl b/ant/etc/junit-frames.xsl new file mode 100644 index 0000000..9ea322a --- /dev/null +++ b/ant/etc/junit-frames.xsl @@ -0,0 +1,877 @@ + + + + + + + + +Unit Test Results. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <xsl:value-of select="$TITLE"/> + + + + + + + + + <h2>Frame Alert</h2> + <p> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </p> + + + + + + + +body { + font:normal 68% verdana,arial,helvetica; + color:#000000; +} +table tr td, table tr th { + font-size: 68%; +} +table.details tr th{ + font-weight: bold; + text-align:left; + background:#a6caf0; +} +table.details tr td{ + background:#eeeee0; +} + +p { + line-height:1.5em; + margin-top:0.5em; margin-bottom:1.0em; +} +h1 { + margin: 0px 0px 5px; font: 165% verdana,arial,helvetica +} +h2 { + margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica +} +h3 { + margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica +} +h4 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +h5 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +h6 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +.Error { + font-weight:bold; color:red; +} +.Failure { + font-weight:bold; color:purple; +} +.Properties { + text-align:right; +} + + + + + + + + + + All Failures + + + All Errors + + + All Tests + + + + + Unit Test Results: <xsl:value-of select="$title"/> + + + + + + open('allclasses-frame.html','classListFrame') + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + +
+ + + + + + + . + + + Unit Test Results: <xsl:value-of select="$class.name"/> + + + + + + + + +

Class

+ + + + + +
+ + + +

Failures

+
+ +

Errors

+
+ +

Tests

+
+
+ + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + +
+ + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + + + + + + + Unit Test Classes: <xsl:value-of select="$name"/> + + + + + + + + + +
+

+ + <none> +

+
+ +

Classes

+ + + + + + + +
+ +
+ + +
+ + + + + + + All Unit Test Classes + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + / + _.html + + + + + + + + + + + + + All Unit Test Packages + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + <none> + + + + + + + + + + Unit Test Results: Summary + + + + + + open('allclasses-frame.html','classListFrame') + +

Summary

+ + + + + + + + + + + + + + + + + Error + Failure + Pass + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+ +

Packages

+ + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + +
+ + <none> + + + + +
+ + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + + +

Classes

+

+ + + + + +
+

+
+ + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + +

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + + Name + Tests + Errors + Failures + Time(s) + Time Stamp + Host + + + + + + + + + Class + + Name + Status + Type + Time(s) + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Error + Failure + TableRowColor + + + + + + + + + + + + + + + + + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + +

+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/ant/etc/junit-noframes.xsl b/ant/etc/junit-noframes.xsl new file mode 100644 index 0000000..f0ab964 --- /dev/null +++ b/ant/etc/junit-noframes.xsl @@ -0,0 +1,467 @@ + + + + + + +Unit Test Results. + + + + + + <xsl:value-of select="$TITLE"/> + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + + +
+ + + + + + + + +

Packages

+ Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers. + + + + + + + + + + + + + + + + + Failure + Error + + + + + + + + + + + +
+ + + +
+
+ + + + + + + + + + + + +

Package

+ + + + + + +
+ Back to top +

+

+ + + + + + + + +

TestCase

+ + + + + + + + + + +
+ +

+ + Back to top + + + + +

Summary

+ + + + + + + + + + + + + + + + + Failure + Error + + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+
+ + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + +

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + Name + Tests + Errors + Failures + Time(s) + + + + + + + Name + Tests + Errors + Failures + Time(s) + Time Stamp + Host + + + + + + + Name + Status + Type + Time(s) + + + + + + + + + + + Failure + Error + + + + + + + + + + + + + + + + + + + + + + + Error + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + + +

+ + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/ant/etc/log.xsl b/ant/etc/log.xsl new file mode 100644 index 0000000..5040993 --- /dev/null +++ b/ant/etc/log.xsl @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + + + Apache Ant +
+ + + +

+ + + + + +
+ + + + + + failed + complete + + + + + + + + + + + + + +
Build FailedBuild CompleteTotal Time:
+ +
+ See the stacktrace. +
+
+ + + + + +
ant.file
ant.version
java.version
os.name
+ +

Build events

+ + + + + + + +
targettaskmessage
+

+ + + +

Error details

+ + +
+
+
+ +

+
+ + + + + + + a + b + + + [ ] + + + + + + +
diff --git a/ant/etc/maudit-frames.xsl b/ant/etc/maudit-frames.xsl new file mode 100644 index 0000000..257c0c8 --- /dev/null +++ b/ant/etc/maudit-frames.xsl @@ -0,0 +1,503 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + Audit Results. + + + + + + + + + <H2>Frame Alert</H2> + <P> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </P> + + + + + + + + .bannercell { + border: 0px; + padding: 0px; + } + body { + margin-left: 10; + margin-right: 10; + font:normal 80% arial,helvetica,sanserif; + background-color:#FFFFFF; + color:#000000; + } + .a td { + background: #efefef; + } + .b td { + background: #fff; + } + th, td { + text-align: left; + vertical-align: top; + } + th { + font-weight:bold; + background: #ccc; + color: black; + } + table, th, td { + font-size:100%; + border: none + } + table.log tr td, tr th { + + } + h2 { + font-weight:bold; + font-size:140%; + margin-bottom: 5; + } + h3 { + font-size:100%; + font-weight:bold; + background: #525D76; + color: white; + text-decoration: none; + padding: 5px; + margin-right: 2px; + margin-left: 2px; + margin-bottom: 0; + } + + + + + + + + + + + + + + +

Class .

+ + + + +
+ +

Violations

+ + + + + +
+ + + +
+ + + + + + + + + + + + + + + + +
+

+
+ +

Classes

+ + + + +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + + / + .html + + + + + + + + + + + + + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

Summary

+ + + + + + + + + + + +
Audited classesReported classesViolations
+ + + + +
+ Note: Rules checked have originated from style guidelines suggested by the language designers, + experience from the Java development community and insite experience. Violations are generally + reported with a reference to the Java Language Specifications (JLS x.x.x) + and Metamata Audit rules (x.x). + Please consult these documents for additional information about violations. +

+ Rules checked also enforce adherence to Sun Java coding guidelines in use at Jakarta. +

+ One should note that these violations do not necessary underline errors but should be used + as an indication for possible errors. As always, use your best judgment and review + them carefully, it might save you hours of debugging. +

+ +

Packages

+ + + + + + + + + + +
+ + + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + +

Classes

+ + + + + +
+
+ + + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + +

Source Code Audit

Designed for use with Webgain QA/Metamata Audit and Ant.
+
+
+ + + + + + + + + + Name + Violations + + + + + + + Line + Message + + + + + + + + + + + + + + + + + + + + + + + + + a + b + + + + + diff --git a/ant/etc/mmetrics-frames.xsl b/ant/etc/mmetrics-frames.xsl new file mode 100644 index 0000000..8b4643a --- /dev/null +++ b/ant/etc/mmetrics-frames.xsl @@ -0,0 +1,1026 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + Metrics Results. + + + + + + + + + <H2>Frame Alert</H2> + <P> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </P> + + + + + + + + + + + +

Metrics Reference

+V(G) | +LOC | +DIT | +NOA | +NRM | +NLM | +WMC | +RFC | +DAC | +FANOUT | +CBO | +LCOM | +NOC + + +

Cyclomatic Complexity - V(G)

+This metric was introduced in the 1970s to measure the amount of control +flow complexity or branching complexity in a module such as a +subroutine. It gives the number of paths that may be taken through the +code, and was initially developed to give some measure of the cost of +producing a test case for the module by executing each path. +

+Methods with a high cyclomatic complexity tend to be more difficult to +understand and maintain. In general the more complex the methods of an +application, the more difficult it will be to test it, and this will adversely +affect its reliability. +

+V(G) is a measure of the control flow complexity of a method or +constructor. It counts the number of branches in the body of the method, +defined as: +

    +
  • while statements;
  • +
  • if statements;
  • +
  • for statements.
  • +
+ +The metric can also be configured to count each case of a switch +statement as well. + +
+

Lines of Code - LOC

+ +This is perhaps the simplest of all the metrics to define and compute. +Counting lines has a long history as a software metric dating from before +the rise of structured programming, and it is still in widespread use today. +The size of a method affects the ease with which it can be understood, its +reusability and its maintainability. There are a variety of ways that the size +can be calculated. These include counting all the lines of code, the number +of statements, the blank lines of code, the lines of commentary, and the +lines consisting only of syntax such as block delimiters. +

+This metric can also be used for sizing other constructs as well, for +example, the overall size of a Java class or package can be measured by +counting the number of source lines it consists of. +

+LOC can be used to determine the size of a compilation unit (source file), +class or interface, method, constructor, or field. It can be configured to +ignore: +

    +
  • blank lines;
  • +
  • lines consisting only of comments;
  • +
  • lines consisting only of opening and closing braces.
  • +
+ +
+

Depth of Inheritance Hierarchy - DIT

+ +This metric calculates how far down the inheritance hierarchy a class is +declared. In Java all classes have java.lang.Object as their ultimate +superclass, which is defined to have a depth of 1. So a class that +immediately extends java.lang.Object has a metric value of 2; any of its +subclasses will have a value of 3, and so on. +

+A class that is deep within the tree inherits more methods and state +variables, thereby increasing its complexity and making it difficult to +predict its behavior. It can be harder to understand a system with many +inheritance layers. +

+DIT is defined for classes and interfaces: +

    +
  • all interface types have a depth of 1;
  • +
  • the class java.lang.Object has a depth of 1;
  • +
  • all other classes have a depth of 1 + the depth of their super class.
  • +
+ +
+

Number of Attributes - NOA

+ +The number of distinct state variables in a class serves as one measure of +its complexity. The more state a class represents the more difficult it is to +maintain invariants for it. It also hinders comprehensibility and reuse. +

+In Java, state can be exposed to subclasses through protected fields, which +entails that the subclass also be aware of and maintain any invariants. This +interference with the class's data encapsulation can be a source of defects +and hidden dependencies between the state variables. +

+NOA is defined for classes and interfaces. It counts the number of fields +declared in the class or interface. + + +

Number of Remote Methods - NRM

+ +NRM is defined for classes. A remote method call is defined as an +invocation of a method that is not declared in any of: +
    +
  • the class itself;
  • +
  • a class or interface that the class extends or implements;
  • +
  • a class or method that extends the class.
  • +
+ +The value is the count of all the remote method calls in all of the methods +and constructors of the class. + +
+

Number of Local Methods - NLM

+ +NLM is defined for classes and interfaces. A local method is defined as a +method that is declared in the class or interface. NLM can be configured to +include the local methods of all of the class's superclasses. Methods with +public, protected, package and private visibility can be independently +counted by setting configuration parameters. + +
+

Weighted Methods per Class - WMC

+ +If the number of methods in a class can be determined during the design +and modeling phase of a project, it can be used as a predictor of how +much time and effort is needed to develop, debug and maintain it. This +metric can be further refined by incorporating a weighting for the +complexity of each method. The usual weighting is given by the cyclomatic +complexity of the method. +

+The subclasses of a class inherit all of its public and protected methods, +and possibly its package methods as well, so the number of methods a +class has directly impacts the complexity of its subclasses. Classes with +large numbers of methods are often specific to a particular application, +reducing the ability to reuse them. +

+The definition of WMC is based upon NLM, and it provides the same +configuration parameters for counting inherited methods and of varying +visibility. The main difference is that NLM always counts each method as 1, +whereas WMC will weight each method. There are two weighting schemes: +

    +
  • V(G) the cyclomatic complexity of the method is used as its weight. + Methods from class files are given a V(G) of 1.
  • +
  • the arity, or the number of parameters of the method are used to + determine the weight.
  • +
+ +
+

Response For Class - RFC

+ +The response set of a class is the set of all methods that can be invoked as +a result of a message sent to an object of the class. This includes methods +in the class's inheritance hierarchy and methods that can be invoked on +other objects. The Response For Class metric is defined to be size of the +response set for the class. A class which provides a larger response set is +considered to be more complex than one with a smaller response set. +

+One reason for this is that if a method call on a class can result in a large +number of different method calls on the target and other classes, then it +can be harder to test the behavior of the class and debug problems. It will +typically require a deeper understanding of the potential interactions that +objects of the class can have with the rest of the system. +

+RFC is defined as the sum of NLM and NRM for the class. The local methods +include all of the public, protected, package and private methods, but not +methods declared only in a superclass. + + +

Data Abstraction Coupling - DAC

+ +DAC is defined for classes and interfaces. It counts the number of reference +types that are used in the field declarations of the class or interface. The +component types of arrays are also counted. Any field with a type that is +either a supertype or a subtype of the class is not counted. + + +

Fan Out - FANOUT

+ +FANOUT is defined for classes and interfaces, constructors and methods. It +counts the number of reference types that are used in: +
    +
  • field declarations;
  • +
  • formal parameters and return types;
  • +
  • throws declarations;
  • +
  • local variables.
  • +
+ +The component types of arrays are also counted. Any type that is either a +supertype or a subtype of the class is not counted. + +
+

Coupling Between Objects - CBO

+ +When one object or class uses another object or class they are said to be +coupled. One major source of coupling is that between a superclass and a +subclass. A coupling is also introduced when a method or field in another +class is accessed, or when an object of another class is passed into or out +of a method invocation. Coupling Between Objects is a measure of the +non-inheritance coupling between two objects. +

+A high value of coupling reduces the modularity of the class and makes +reuse more difficult. The more independent a class is the more likely it is +that it will be possible to reuse it in another part of the system. When a +class is coupled to another class it becomes sensitive to changes in that +class, thereby making maintenance for difficult. In addition, a class that is +overly dependent on other classes can be difficult to understand and test in +isolation. +

+CBO is defined for classes and interfaces, constructors and methods. It +counts the number of reference types that are used in: +

    +
  • field declarations
  • +
  • formal parameters and return types
  • +
  • throws declarations
  • +
  • local variables
  • +
+ +It also counts: +
    +
  • types from which field and method selections are made
  • +
+ +The component types of arrays are also counted. Any type that is either a +supertype or a subtype of the class is not counted. + +
+

Lack of Cohesion Of Methods - LCOM

+ +The cohesion of a class is the degree to which its methods are related to +each other. It is determined by examining the pattern of state variable +accesses within the set of methods. If all the methods access the same state +variables then they have high cohesion; if they access disjoint sets of +variables then the cohesion is low. An extreme example of low cohesion +would be if none of the methods accessed any of the state variables. + +If a class exhibits low method cohesion it indicates that the design of the +class has probably been partitioned incorrectly, and could benefit by being +split into more classes with individually higher cohesion. On the other +hand, a high value of cohesion (a low lack of cohesion) implies that the +class is well designed. A cohesive class will tend to provide a high degree +of encapsulation, whereas a lack of cohesion decreases encapsulation and +increases complexity. +

+Another form of cohesion that is useful for Java programs is cohesion +between nested and enclosing classes. A nested class that has very low +cohesion with its enclosing class would probably better designed as a peer +class rather than a nested class. +

+LCOM is defined for classes. Operationally, LCOM takes each pair of +methods in the class and determines the set of fields they each access. If +they have disjoint sets of field accesses increase the count P by one. If they +share at least one field access then increase Q by one. After considering +each pair of methods, +LCOM = (P > Q) ? (P - Q) : 0 +

+Indirect access to fields via local methods can be considered by setting a +metric configuration parameter. + + +

Number Of Classes - NOC

+ +The overall size of the system can be estimated by calculating the number +of classes it contains. A large system with more classes is more complex +than a smaller one because the number of potential interactions between +objects is higher. This reduces the comprehensibility of the system which +in turn makes it harder to test, debug and maintain. +

+If the number of classes in the system can be projected during the initial +design phase of the project it can serve as a base for estimating the total +effort and cost of developing, debugging and maintaining the system. +

+The NOC metric can also usefully be applied at the package and class level +as well as the total system. +

+NOCL is defined for class and interfaces. It counts the number of classes or +interfaces that are declared. This is usually 1, but nested class declarations +will increase this number. + + + + + + + .bannercell { + border: 0px; + padding: 0px; + } + body { + margin-left: 10; + margin-right: 10; + font:normal 80% arial,helvetica,sanserif; + background-color:#FFFFFF; + color:#000000; + } + .a td { + background: #efefef; + } + .b td { + background: #fff; + } + th, td { + text-align: left; + vertical-align: top; + } + th { + font-weight:bold; + background: #ccc; + color: black; + } + table, th, td { + font-size:100%; + border: none + } + table.log tr td, tr th { + + } + h2 { + font-weight:bold; + font-size:140%; + margin-bottom: 5; + } + h3 { + font-size:100%; + font-weight:bold; + background: #525D76; + color: white; + text-decoration: none; + padding: 5px; + margin-right: 2px; + margin-left: 2px; + margin-bottom: 0; + } + .Error { + font-weight:bold; color:red; + } + + + + + + + + + + + + + + + + +

Class .

+ + + +
+ +

Methods

+ + + +
+ + + + +
+ + + + + + + + + + + + + + + +
+

+
+ +

Classes

+ + + + + + + + +
+ +
+ + +
+ + + + + + + + + + + +

Classes

+ + + + + +
+ + +
+ + + + + + +
+ + + / + + .html + + + + + + + + + + + + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

Summary

+ + + + + + + + + + + + + + + + + +
V(G)LOCDITNOANRMNLMWMCRFCDACFANOUTCBOLCOMNOCL
+ + + + +
+ Note: Metrics evaluate the quality of software by analyzing the program source and quantifying + various kind of complexity. Complexity is a common source of problems and defects in software. + High complexity makes it more difficult to develop, understand, maintain, extend, test and debug + a program. +

+ The primary use of metrics is to focus your attention on those parts of code that potentially are + complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial + actions. + For additional information about metrics and their meaning, please consult + Metamata Metrics manual. +

+ +

Packages

+ + + + + + +
+ + + + +
+ + + + + + + + + + + +

Package

+ + + + +
+ + + + + +
+ Note: Metrics evaluate the quality of software by analyzing the program source and quantifying + various kind of complexity. Complexity is a common source of problems and defects in software. + High complexity makes it more difficult to develop, understand, maintain, extend, test and debug + a program. +

+ The primary use of metrics is to focus your attention on those parts of code that potentially are + complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial + actions. + For additional information about metrics and their meaning, please consult + Metamata Metrics manual. +

+ + + +

Classes

+ + + + + + +
+
+ + + + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + +

Source Code Metrics

Designed for use with Webgain QA/Metamata Metrics and Ant.
+
+
+ + + + + + + + + Name + V(G) + LOC + DIT + NOA + NRM + NLM + WMC + RFC + DAC + FANOUT + CBO + LCOM + NOCL + + + + + + + Name + V(G) + LOC + FANOUT + CBO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a + b + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Error + + + + +
+ diff --git a/ant/etc/tagdiff.xsl b/ant/etc/tagdiff.xsl new file mode 100644 index 0000000..5d430a7 --- /dev/null +++ b/ant/etc/tagdiff.xsl @@ -0,0 +1,179 @@ + + + + + + + + + + + + + + + + + + + + + + <xsl:value-of select="$title"/> + + + +

+ +

+ Tagdiff between and + +

Designed for use with Ant.

+
+ + + + + +
+ New Files | + Modified Files | + Removed Files +
+ + + New Files + New + + + + + Modified Files + Modified + + + + + + Removed Files + Removed + + +
+ + + +
+ + + + + + + + + + - entries + + (back to top) + + + + + + + +
    + +
+ + + + + + + + + + + + + + + + + + + + mailto: + + + + + + +
  • + + / + + + + + + + + /?rev=&content-type=text/x-cvsweb-markup + + + /?r1=&r2=&diff_format=h + + ( --> ) + + +
  • +
    + + + + + + +
    diff --git a/ant/fetch.xml b/ant/fetch.xml new file mode 100644 index 0000000..b3417fe --- /dev/null +++ b/ant/fetch.xml @@ -0,0 +1,233 @@ + + + + + + + + This build file downloads JAR files that optional Ant tasks use, + and installs them in a location that is accessible the next time Ant runs. + + You can choose three locations, by going -Ddest=LOCATION on the command line + -Ddest=user user lib dir ${user.home}/.ant/lib + -Ddest=system ant lib dir ${ant.home}/lib --Default-- + -Ddest=optional optional dir ${ant.home}/lib/optional (for Ant developers) + + You may also need to set proxy settings. On Java1.5, Ant tries to get + this from the OS, unless you use the -noproxy option. + + Proxies can be configured manually setting the JVM proxy values in the + ANT_OPTS environment variable. + + For example, to set the proxy up in the tcsh shell, the command would be + something like: + + For csh/tcsh: + setenv ANT_OPTS "-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080" + For bash: + export ANT_OPTS="-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080" + For Windows, set the environment variable in the appropriate dialog box + and open a new console. or, by hand + set ANT_OPTS = -Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080 + + + + + + + + + + + + + + + + + + + + + + + + + Unknown destination : ${dest} + Downloading to ${dest.dir} + + + + + + + + + + + + Unknown archive @{archive} -no property @{archive}.version defined. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ant/get-m2.xml b/ant/get-m2.xml new file mode 100644 index 0000000..4111e81 --- /dev/null +++ b/ant/get-m2.xml @@ -0,0 +1,121 @@ + + + + + + + + This build file downloads the Maven2 Ant tasks, + and installs them in the location specified by the m2.dest.dir property. + + You may need to set proxy settings. On Java1.5, Ant tries to get + this from the OS, unless you use the -noproxy option. + + Proxies can be configured manually setting the JVM proxy values in the + ANT_OPTS environment variable. + + For example, to set the proxy up in the tcsh shell, the command would be + something like: + + For csh/tcsh: + setenv ANT_OPTS "-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080" + For bash: + export ANT_OPTS="-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080" + For Windows, set the environment variable in the appropriate dialog box + and open a new console. or, by hand + set ANT_OPTS = -Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080 + + + + + + + + + + + + $${@{property}} not specified + + + + + + + + + + + + + + + + + + + Downloading to ${m2.dest.dir} + + + + + + + + + + + + + + + + + + Failed to verify the downloaded file ${m2.antlib.url}" against the checksum + coded into libraries.properties. + The local copy has been deleted, for security reasons + + + + + + + + + + diff --git a/ant/lib/README b/ant/lib/README new file mode 100644 index 0000000..7ebe030 --- /dev/null +++ b/ant/lib/README @@ -0,0 +1,16 @@ +Please refer to the Ant manual under Installing Ant / Library +Dependencies for a list of the jar requirements for various optional +tasks and features. + +This directory contains xercesImpl.jar from the 2.9.0 release of +Apache Xerces. For more information or newer releases see +. Xerces is provided under the +same license as Apache Ant itself, see the file LICENSE.txt. For +additional Xerces specific notes see the file NOTICE.xerces. + +It also contains xml-apis.jar, an Apache-controlled collection of +standard classes from the 1.3.04 release of the Apache XML-Commons +release. For more information or newer releases see +. See the files LICENSE.dom and +LICENSE.sax for the terms of distribution. + diff --git a/ant/lib/ant-1.7.1.pom b/ant/lib/ant-1.7.1.pom new file mode 100644 index 0000000..52e59f0 --- /dev/null +++ b/ant/lib/ant-1.7.1.pom @@ -0,0 +1,232 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant + 1.7.1 + org.apache.tools.ant + Apache Ant + + + org.apache.ant + ant-launcher + 1.7.1 + compile + + + + xerces + xercesImpl + 2.9.0 + true + runtime + + + + xml-apis + xml-apis + 1.3.04 + true + compile + + + + + ../../../../target/ant/.build.timestamp.properties + + + + org.apache.maven.plugins + maven-jar-plugin + + + + maven-antrun-plugin + + + create-timestamp-file + generate-resources + + run + + + + + + + + + + + + delete-timestamp-file + clean + + run + + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/** + org/apache/tools/ant/filters/util/JavaClassHelper* + org/apache/tools/ant/types/optional/** + org/apache/tools/ant/types/resolver/** + org/apache/tools/ant/util/depend/** + org/apache/tools/ant/util/optional/** + org/apache/tools/ant/util/Script* + org/apache/tools/ant/listener/Log4jListener* + org/apache/tools/ant/listener/CommonsLoggingListener* + org/apache/tools/ant/util/regexp/JakartaRegexp* + org/apache/tools/ant/util/regexp/JakartaOro* + org/apache/tools/ant/util/regexp/Jdk14Regexp* + org/apache/tools/ant/taskdefs/email/MimeMailer* + org/apache/tools/ant/launch/** + + + org/apache/tools/ant/taskdefs/optional/** + org/apache/tools/ant/filters/util/JavaClassHelper* + org/apache/tools/ant/types/optional/** + org/apache/tools/ant/types/resolver/** + org/apache/tools/ant/util/depend/** + org/apache/tools/ant/util/optional/** + org/apache/tools/ant/util/Script* + org/apache/tools/ant/listener/Log4jListener* + org/apache/tools/ant/listener/CommonsLoggingListener* + org/apache/tools/ant/util/regexp/JakartaRegexp* + org/apache/tools/ant/util/regexp/JakartaOro* + org/apache/tools/ant/util/regexp/Jdk14Regexp* + org/apache/tools/ant/taskdefs/email/MimeMailer* + org/apache/tools/ant/launch/** + org/apache/tools/ant/taskdefs/StyleTest* + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + ant.home + ${env.ANT_HOME} + + + build.tests + ../../../../target/ant/testcases + + + build.tests.value + ../../../../target/ant/testcases + + + offline + true + + + root + ../../../.. + + + + + + org.apache.maven.plugins + maven-surefire-report-plugin + + + + + ../../../../src/main + true + + org/apache/tools/ant/taskdefs/default.properties + org/apache/tools/ant/types/default.properties + org/apache/tools/ant/taskdefs/default.properties + org/apache/tools/ant/types/conditions/antlib.xml + org/apache/tools/ant/defaultManifest.mf + org/apache/tools/ant/version.txt + + + + ../../../../src/resources + true + + **/antlib.xml + + + + ../../../../docs + false + + images/ant_logo_large.gif + + + + + + ../../../../src/etc/testcases + true + + + ../../../../src/main + true + + **/*.java + + + + ../../../../src/main + ../../../../src/tests/junit + ../../../../target/ant/classes + ../../../../target/ant/testcases + ../../../../target/ant + + diff --git a/ant/lib/ant-1.7.1.pom.md5 b/ant/lib/ant-1.7.1.pom.md5 new file mode 100644 index 0000000..0074a5c --- /dev/null +++ b/ant/lib/ant-1.7.1.pom.md5 @@ -0,0 +1 @@ +a208b1e195d99c65e4e2ab9e9886f2b6 diff --git a/ant/lib/ant-1.7.1.pom.sha1 b/ant/lib/ant-1.7.1.pom.sha1 new file mode 100644 index 0000000..c9924d2 --- /dev/null +++ b/ant/lib/ant-1.7.1.pom.sha1 @@ -0,0 +1 @@ +b7ffdc772faa065c36a292a9db0242f19241cc50 diff --git a/ant/lib/ant-antlr-1.7.1.pom b/ant/lib/ant-antlr-1.7.1.pom new file mode 100644 index 0000000..6038969 --- /dev/null +++ b/ant/lib/ant-antlr-1.7.1.pom @@ -0,0 +1,75 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-antlr + 1.7.1 + antlr specific task. + The implementation forks a java process, therefore the antlr jar file is only needed at runtime + + + org.apache.ant + ant + 1.7.1 + true + compile + + + + antlr + antlr + 2.7.2 + true + runtime + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/ANTLR* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-antlr-1.7.1.pom.md5 b/ant/lib/ant-antlr-1.7.1.pom.md5 new file mode 100644 index 0000000..c873272 --- /dev/null +++ b/ant/lib/ant-antlr-1.7.1.pom.md5 @@ -0,0 +1 @@ +4b1ccb2c3e07b276c3d982fc9cacc15a diff --git a/ant/lib/ant-antlr-1.7.1.pom.sha1 b/ant/lib/ant-antlr-1.7.1.pom.sha1 new file mode 100644 index 0000000..190ed9a --- /dev/null +++ b/ant/lib/ant-antlr-1.7.1.pom.sha1 @@ -0,0 +1 @@ +2a48c365a39c663284825772a2a29644f572f885 diff --git a/ant/lib/ant-antlr.jar b/ant/lib/ant-antlr.jar new file mode 100644 index 0000000..e6ac589 Binary files /dev/null and b/ant/lib/ant-antlr.jar differ diff --git a/ant/lib/ant-apache-bcel-1.7.1.pom b/ant/lib/ant-apache-bcel-1.7.1.pom new file mode 100644 index 0000000..b53ee03 --- /dev/null +++ b/ant/lib/ant-apache-bcel-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-bcel + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + bcel + bcel + 5.1 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/tfilters/util/JavaClassHelper* + org/apache/tools/ant/tutil/depend/bcel/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-apache-bcel-1.7.1.pom.md5 b/ant/lib/ant-apache-bcel-1.7.1.pom.md5 new file mode 100644 index 0000000..6d7421c --- /dev/null +++ b/ant/lib/ant-apache-bcel-1.7.1.pom.md5 @@ -0,0 +1 @@ +0a58dceff027bb7d8d9efedcc33bf192 diff --git a/ant/lib/ant-apache-bcel-1.7.1.pom.sha1 b/ant/lib/ant-apache-bcel-1.7.1.pom.sha1 new file mode 100644 index 0000000..5586942 --- /dev/null +++ b/ant/lib/ant-apache-bcel-1.7.1.pom.sha1 @@ -0,0 +1 @@ +dfaed4fce5cb82dab208be04e51cd8008501c890 diff --git a/ant/lib/ant-apache-bcel.jar b/ant/lib/ant-apache-bcel.jar new file mode 100644 index 0000000..6821049 Binary files /dev/null and b/ant/lib/ant-apache-bcel.jar differ diff --git a/ant/lib/ant-apache-bsf-1.7.1.pom b/ant/lib/ant-apache-bsf-1.7.1.pom new file mode 100644 index 0000000..0d5f5da --- /dev/null +++ b/ant/lib/ant-apache-bsf-1.7.1.pom @@ -0,0 +1,74 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-bsf + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + bsf + bsf + 2.4.0 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/Script* + org/apache/tools/ant/taskdefs/optional/script/** + org/apache/tools/ant/types/optional/*Script* + org/apache/tools/ant/util/Script* + org/apache/tools/ant/util/optional/Script* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-apache-bsf-1.7.1.pom.md5 b/ant/lib/ant-apache-bsf-1.7.1.pom.md5 new file mode 100644 index 0000000..dc1a6ec --- /dev/null +++ b/ant/lib/ant-apache-bsf-1.7.1.pom.md5 @@ -0,0 +1 @@ +e5344fb630163f994d50325b14fa0ce5 diff --git a/ant/lib/ant-apache-bsf-1.7.1.pom.sha1 b/ant/lib/ant-apache-bsf-1.7.1.pom.sha1 new file mode 100644 index 0000000..7713ff9 --- /dev/null +++ b/ant/lib/ant-apache-bsf-1.7.1.pom.sha1 @@ -0,0 +1 @@ +a387f054ef353bf9ab5c530d8816b1f34cb7c10b diff --git a/ant/lib/ant-apache-bsf.jar b/ant/lib/ant-apache-bsf.jar new file mode 100644 index 0000000..1b0daf9 Binary files /dev/null and b/ant/lib/ant-apache-bsf.jar differ diff --git a/ant/lib/ant-apache-log4j-1.7.1.pom b/ant/lib/ant-apache-log4j-1.7.1.pom new file mode 100644 index 0000000..b761a87 --- /dev/null +++ b/ant/lib/ant-apache-log4j-1.7.1.pom @@ -0,0 +1,69 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-log4j + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + log4j + log4j + 1.2.13 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/listener/Log4jListener* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-apache-log4j-1.7.1.pom.md5 b/ant/lib/ant-apache-log4j-1.7.1.pom.md5 new file mode 100644 index 0000000..9bcf277 --- /dev/null +++ b/ant/lib/ant-apache-log4j-1.7.1.pom.md5 @@ -0,0 +1 @@ +32ed57789ef71ad156412eeac6c21964 diff --git a/ant/lib/ant-apache-log4j-1.7.1.pom.sha1 b/ant/lib/ant-apache-log4j-1.7.1.pom.sha1 new file mode 100644 index 0000000..431e829 --- /dev/null +++ b/ant/lib/ant-apache-log4j-1.7.1.pom.sha1 @@ -0,0 +1 @@ +1f6d8ab0fc52d866acf2703f2163ed958ab0916d diff --git a/ant/lib/ant-apache-log4j.jar b/ant/lib/ant-apache-log4j.jar new file mode 100644 index 0000000..32de4b0 Binary files /dev/null and b/ant/lib/ant-apache-log4j.jar differ diff --git a/ant/lib/ant-apache-oro-1.7.1.pom b/ant/lib/ant-apache-oro-1.7.1.pom new file mode 100644 index 0000000..bb97bad --- /dev/null +++ b/ant/lib/ant-apache-oro-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-oro + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + oro + oro + 2.0.8 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/util/regexp/JakartaOro* + org/apache/tools/ant/taskdefs/optional/perforce/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-apache-oro-1.7.1.pom.md5 b/ant/lib/ant-apache-oro-1.7.1.pom.md5 new file mode 100644 index 0000000..5902790 --- /dev/null +++ b/ant/lib/ant-apache-oro-1.7.1.pom.md5 @@ -0,0 +1 @@ +c1fc980a06016b98845d7ffb1c042d37 diff --git a/ant/lib/ant-apache-oro-1.7.1.pom.sha1 b/ant/lib/ant-apache-oro-1.7.1.pom.sha1 new file mode 100644 index 0000000..c00e5d1 --- /dev/null +++ b/ant/lib/ant-apache-oro-1.7.1.pom.sha1 @@ -0,0 +1 @@ +28eae4a1d35594b5efc17c9baabbf7e169542aa2 diff --git a/ant/lib/ant-apache-oro.jar b/ant/lib/ant-apache-oro.jar new file mode 100644 index 0000000..a0a2435 Binary files /dev/null and b/ant/lib/ant-apache-oro.jar differ diff --git a/ant/lib/ant-apache-regexp-1.7.1.pom b/ant/lib/ant-apache-regexp-1.7.1.pom new file mode 100644 index 0000000..5d7468a --- /dev/null +++ b/ant/lib/ant-apache-regexp-1.7.1.pom @@ -0,0 +1,70 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-regexp + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + regexp + regexp + 1.3 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/util/regexp/JakartaRegexp* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + + diff --git a/ant/lib/ant-apache-regexp-1.7.1.pom.md5 b/ant/lib/ant-apache-regexp-1.7.1.pom.md5 new file mode 100644 index 0000000..9ccaf20 --- /dev/null +++ b/ant/lib/ant-apache-regexp-1.7.1.pom.md5 @@ -0,0 +1 @@ +d61181fff29c8e64188a9401187fb663 diff --git a/ant/lib/ant-apache-regexp-1.7.1.pom.sha1 b/ant/lib/ant-apache-regexp-1.7.1.pom.sha1 new file mode 100644 index 0000000..498945f --- /dev/null +++ b/ant/lib/ant-apache-regexp-1.7.1.pom.sha1 @@ -0,0 +1 @@ +6025c8c5f37bfe5f9ec826d30d16d2756de8fcb2 diff --git a/ant/lib/ant-apache-regexp.jar b/ant/lib/ant-apache-regexp.jar new file mode 100644 index 0000000..2214d89 Binary files /dev/null and b/ant/lib/ant-apache-regexp.jar differ diff --git a/ant/lib/ant-apache-resolver-1.7.1.pom b/ant/lib/ant-apache-resolver-1.7.1.pom new file mode 100644 index 0000000..59c7094 --- /dev/null +++ b/ant/lib/ant-apache-resolver-1.7.1.pom @@ -0,0 +1,69 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-apache-resolver + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + xml-resolver + xml-resolver + 1.1 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/types/resolver/** + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-apache-resolver-1.7.1.pom.md5 b/ant/lib/ant-apache-resolver-1.7.1.pom.md5 new file mode 100644 index 0000000..71f6d54 --- /dev/null +++ b/ant/lib/ant-apache-resolver-1.7.1.pom.md5 @@ -0,0 +1 @@ +8ce4b2c2037bbd14a51958882c05bc68 diff --git a/ant/lib/ant-apache-resolver-1.7.1.pom.sha1 b/ant/lib/ant-apache-resolver-1.7.1.pom.sha1 new file mode 100644 index 0000000..70a8a32 --- /dev/null +++ b/ant/lib/ant-apache-resolver-1.7.1.pom.sha1 @@ -0,0 +1 @@ +f0c4d0e0797d7548dbbbf7b86ab19a6b2cd028de diff --git a/ant/lib/ant-apache-resolver.jar b/ant/lib/ant-apache-resolver.jar new file mode 100644 index 0000000..54388ed Binary files /dev/null and b/ant/lib/ant-apache-resolver.jar differ diff --git a/ant/lib/ant-commons-logging-1.7.1.pom b/ant/lib/ant-commons-logging-1.7.1.pom new file mode 100644 index 0000000..0a557dc --- /dev/null +++ b/ant/lib/ant-commons-logging-1.7.1.pom @@ -0,0 +1,70 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-commons-logging + 1.7.1 + Ant Listener based on commons-logging + + + org.apache.ant + ant + 1.7.1 + compile + + + commons-logging + commons-logging-api + 1.0.4 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/tlistener/CommonsLoggingListener* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-commons-logging-1.7.1.pom.md5 b/ant/lib/ant-commons-logging-1.7.1.pom.md5 new file mode 100644 index 0000000..73a1656 --- /dev/null +++ b/ant/lib/ant-commons-logging-1.7.1.pom.md5 @@ -0,0 +1 @@ +b08bfbe19043fcd27f6797731598db67 diff --git a/ant/lib/ant-commons-logging-1.7.1.pom.sha1 b/ant/lib/ant-commons-logging-1.7.1.pom.sha1 new file mode 100644 index 0000000..c8f30d4 --- /dev/null +++ b/ant/lib/ant-commons-logging-1.7.1.pom.sha1 @@ -0,0 +1 @@ +78ad9c0ffc872131b79e571c740a479d4ca630f8 diff --git a/ant/lib/ant-commons-logging.jar b/ant/lib/ant-commons-logging.jar new file mode 100644 index 0000000..f2eaa8a Binary files /dev/null and b/ant/lib/ant-commons-logging.jar differ diff --git a/ant/lib/ant-commons-net-1.7.1.pom b/ant/lib/ant-commons-net-1.7.1.pom new file mode 100644 index 0000000..a4a6c87 --- /dev/null +++ b/ant/lib/ant-commons-net-1.7.1.pom @@ -0,0 +1,72 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-commons-net + 1.7.1 + ftp, rexec and telnet tasks + + + org.apache.ant + ant + 1.7.1 + compile + + + commons-net + commons-net + 1.4.0 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/net/FTP* + org/apache/tools/ant/taskdefs/optional/net/RExec* + org/apache/tools/ant/taskdefs/optional/net/TelnetTask* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-commons-net-1.7.1.pom.md5 b/ant/lib/ant-commons-net-1.7.1.pom.md5 new file mode 100644 index 0000000..c18596a --- /dev/null +++ b/ant/lib/ant-commons-net-1.7.1.pom.md5 @@ -0,0 +1 @@ +23c5bbb59dbce6bd0425e561d0b3fea7 diff --git a/ant/lib/ant-commons-net-1.7.1.pom.sha1 b/ant/lib/ant-commons-net-1.7.1.pom.sha1 new file mode 100644 index 0000000..61cbd5b --- /dev/null +++ b/ant/lib/ant-commons-net-1.7.1.pom.sha1 @@ -0,0 +1 @@ +07cfb88e14db53e8bec212daf6380421ad465915 diff --git a/ant/lib/ant-commons-net.jar b/ant/lib/ant-commons-net.jar new file mode 100644 index 0000000..0208417 Binary files /dev/null and b/ant/lib/ant-commons-net.jar differ diff --git a/ant/lib/ant-jai-1.7.1.pom b/ant/lib/ant-jai-1.7.1.pom new file mode 100644 index 0000000..5d80cc0 --- /dev/null +++ b/ant/lib/ant-jai-1.7.1.pom @@ -0,0 +1,81 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-jai + 1.7.1 + image task and corresponding types. + jai (Java Advanced Imaging) is not available in public Maven repositories, therefore the dependencies are included with a scope provided + the download URL is http://java.sun.com/products/java-media/jai/ + + + + org.apache.ant + ant + 1.7.1 + compile + + + javax.media + jai-core + 1.1.2_01 + provided + + + jai + jai-codec + 1.1.2.1 + provided + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/image/* + org/apache/tools/ant/types/optional/image/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-jai-1.7.1.pom.md5 b/ant/lib/ant-jai-1.7.1.pom.md5 new file mode 100644 index 0000000..5a46f17 --- /dev/null +++ b/ant/lib/ant-jai-1.7.1.pom.md5 @@ -0,0 +1 @@ +1d33944c2b7bac052a63a27cd0cf7280 diff --git a/ant/lib/ant-jai-1.7.1.pom.sha1 b/ant/lib/ant-jai-1.7.1.pom.sha1 new file mode 100644 index 0000000..1de0621 --- /dev/null +++ b/ant/lib/ant-jai-1.7.1.pom.sha1 @@ -0,0 +1 @@ +1eecd08ac103de05689b1a878fdb42f836f190f6 diff --git a/ant/lib/ant-jai.jar b/ant/lib/ant-jai.jar new file mode 100644 index 0000000..4ce81f0 Binary files /dev/null and b/ant/lib/ant-jai.jar differ diff --git a/ant/lib/ant-javamail-1.7.1.pom b/ant/lib/ant-javamail-1.7.1.pom new file mode 100644 index 0000000..16d68aa --- /dev/null +++ b/ant/lib/ant-javamail-1.7.1.pom @@ -0,0 +1,78 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-javamail + 1.7.1 + implementation of the mail task based on javamail. + Required to send emails to SMTP servers using user/password combinations + or to send mail over SSL + + + org.apache.ant + ant + 1.7.1 + compile + + + javax.mail + mail + 1.4 + compile + + + javax.activation + activation + 1.1 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/email/MimeMailer* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-javamail-1.7.1.pom.md5 b/ant/lib/ant-javamail-1.7.1.pom.md5 new file mode 100644 index 0000000..a9aa1bc --- /dev/null +++ b/ant/lib/ant-javamail-1.7.1.pom.md5 @@ -0,0 +1 @@ +6e08b13c6e2cdfcdffb50edb9eaf96d3 diff --git a/ant/lib/ant-javamail-1.7.1.pom.sha1 b/ant/lib/ant-javamail-1.7.1.pom.sha1 new file mode 100644 index 0000000..e54bf8c --- /dev/null +++ b/ant/lib/ant-javamail-1.7.1.pom.sha1 @@ -0,0 +1 @@ +60721a3ae471b4d5ec6c83847e17c3bf638aa9b0 diff --git a/ant/lib/ant-javamail.jar b/ant/lib/ant-javamail.jar new file mode 100644 index 0000000..1d8a3eb Binary files /dev/null and b/ant/lib/ant-javamail.jar differ diff --git a/ant/lib/ant-jdepend-1.7.1.pom b/ant/lib/ant-jdepend-1.7.1.pom new file mode 100644 index 0000000..2e68944 --- /dev/null +++ b/ant/lib/ant-jdepend-1.7.1.pom @@ -0,0 +1,72 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-jdepend + 1.7.1 + task jdepend invoking the jdepend parser. There is also a version 2.9.1 of the + jdepend parser available on the maven repository + + + org.apache.ant + ant + 1.7.1 + compile + + + jdepend + jdepend + 2.7 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/jdepend/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-jdepend-1.7.1.pom.md5 b/ant/lib/ant-jdepend-1.7.1.pom.md5 new file mode 100644 index 0000000..ae8b74a --- /dev/null +++ b/ant/lib/ant-jdepend-1.7.1.pom.md5 @@ -0,0 +1 @@ +292ab73489b4d1e4c3acc2804003f446 diff --git a/ant/lib/ant-jdepend-1.7.1.pom.sha1 b/ant/lib/ant-jdepend-1.7.1.pom.sha1 new file mode 100644 index 0000000..c507e85 --- /dev/null +++ b/ant/lib/ant-jdepend-1.7.1.pom.sha1 @@ -0,0 +1 @@ +86fa561fbbfab1f4ab5797ea954ca8cf43cfcb6c diff --git a/ant/lib/ant-jdepend.jar b/ant/lib/ant-jdepend.jar new file mode 100644 index 0000000..4e7d2be Binary files /dev/null and b/ant/lib/ant-jdepend.jar differ diff --git a/ant/lib/ant-jmf-1.7.1.pom b/ant/lib/ant-jmf-1.7.1.pom new file mode 100644 index 0000000..37b3da5 --- /dev/null +++ b/ant/lib/ant-jmf-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-jmf + 1.7.1 + contains the sound task and a soundplayer listener + download the dependency from http://java.sun.com/products/java-media/jmf/ + + + org.apache.ant + ant + 1.7.1 + compile + + + javax.media + jmf + 2.1.1e + provided + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/sound/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-jmf-1.7.1.pom.md5 b/ant/lib/ant-jmf-1.7.1.pom.md5 new file mode 100644 index 0000000..10d5998 --- /dev/null +++ b/ant/lib/ant-jmf-1.7.1.pom.md5 @@ -0,0 +1 @@ +681ba200dec81b07025c027927f7800b diff --git a/ant/lib/ant-jmf-1.7.1.pom.sha1 b/ant/lib/ant-jmf-1.7.1.pom.sha1 new file mode 100644 index 0000000..8f49712 --- /dev/null +++ b/ant/lib/ant-jmf-1.7.1.pom.sha1 @@ -0,0 +1 @@ +f753c151a678f08ee66073914a5fefc9417bedb1 diff --git a/ant/lib/ant-jmf.jar b/ant/lib/ant-jmf.jar new file mode 100644 index 0000000..536d507 Binary files /dev/null and b/ant/lib/ant-jmf.jar differ diff --git a/ant/lib/ant-jsch-1.7.1.pom b/ant/lib/ant-jsch-1.7.1.pom new file mode 100644 index 0000000..3f338c9 --- /dev/null +++ b/ant/lib/ant-jsch-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-jsch + 1.7.1 + contains the sshexec and scp tasks + jsch 0.1.29 might not be available from maven + + + org.apache.ant + ant + 1.7.1 + compile + + + com.jcraft + jsch + 0.1.29 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/ssh/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-jsch-1.7.1.pom.md5 b/ant/lib/ant-jsch-1.7.1.pom.md5 new file mode 100644 index 0000000..6245aaa --- /dev/null +++ b/ant/lib/ant-jsch-1.7.1.pom.md5 @@ -0,0 +1 @@ +71db1461c9f47cfed368e8fc64aeb5ee diff --git a/ant/lib/ant-jsch-1.7.1.pom.sha1 b/ant/lib/ant-jsch-1.7.1.pom.sha1 new file mode 100644 index 0000000..25e10f3 --- /dev/null +++ b/ant/lib/ant-jsch-1.7.1.pom.sha1 @@ -0,0 +1 @@ +87a64988d6d161002562991053b577b49061fcd7 diff --git a/ant/lib/ant-jsch.jar b/ant/lib/ant-jsch.jar new file mode 100644 index 0000000..394fdef Binary files /dev/null and b/ant/lib/ant-jsch.jar differ diff --git a/ant/lib/ant-junit-1.7.1.pom b/ant/lib/ant-junit-1.7.1.pom new file mode 100644 index 0000000..7471af5 --- /dev/null +++ b/ant/lib/ant-junit-1.7.1.pom @@ -0,0 +1,94 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-junit + 1.7.1 + contains the junit and junirreport tasks + + + org.apache.ant + ant + 1.7.1 + compile + + + junit + junit + 3.8.2 + compile + + + + + + maven-antrun-plugin + + + create-timestamp-file + generate-resources + + run + + + + + + + + + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/junit/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-junit-1.7.1.pom.md5 b/ant/lib/ant-junit-1.7.1.pom.md5 new file mode 100644 index 0000000..a13b60b --- /dev/null +++ b/ant/lib/ant-junit-1.7.1.pom.md5 @@ -0,0 +1 @@ +e21a7908ac57080c977e5b766dbb9629 diff --git a/ant/lib/ant-junit-1.7.1.pom.sha1 b/ant/lib/ant-junit-1.7.1.pom.sha1 new file mode 100644 index 0000000..22fac8a --- /dev/null +++ b/ant/lib/ant-junit-1.7.1.pom.sha1 @@ -0,0 +1 @@ +e1b5b19595390fbf91f8fa5f372225616d234e13 diff --git a/ant/lib/ant-junit.jar b/ant/lib/ant-junit.jar new file mode 100644 index 0000000..063cce4 Binary files /dev/null and b/ant/lib/ant-junit.jar differ diff --git a/ant/lib/ant-launcher-1.7.1.pom b/ant/lib/ant-launcher-1.7.1.pom new file mode 100644 index 0000000..49b985a --- /dev/null +++ b/ant/lib/ant-launcher-1.7.1.pom @@ -0,0 +1,57 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-launcher + 1.7.1 + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/launch/*.java + + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/ant-launcher/classes + ../../../../target/ant-launcher/testcases + ../../../../target/ant-launcher + + diff --git a/ant/lib/ant-launcher-1.7.1.pom.md5 b/ant/lib/ant-launcher-1.7.1.pom.md5 new file mode 100644 index 0000000..8b294f5 --- /dev/null +++ b/ant/lib/ant-launcher-1.7.1.pom.md5 @@ -0,0 +1 @@ +81417beff363a573fcd3db75f7482ef7 diff --git a/ant/lib/ant-launcher-1.7.1.pom.sha1 b/ant/lib/ant-launcher-1.7.1.pom.sha1 new file mode 100644 index 0000000..3951a69 --- /dev/null +++ b/ant/lib/ant-launcher-1.7.1.pom.sha1 @@ -0,0 +1 @@ +05d6ac6979b89f1f82b0a6df723e60d158c8095b diff --git a/ant/lib/ant-launcher.jar b/ant/lib/ant-launcher.jar new file mode 100644 index 0000000..7c8f849 Binary files /dev/null and b/ant/lib/ant-launcher.jar differ diff --git a/ant/lib/ant-netrexx-1.7.1.pom b/ant/lib/ant-netrexx-1.7.1.pom new file mode 100644 index 0000000..eaa3572 --- /dev/null +++ b/ant/lib/ant-netrexx-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-netrexx + 1.7.1 + NetRexxC task + dependency can be downloaded from http://www.ibm.com/software/awdtools/netrexx/download.html + + + org.apache.ant + ant + 1.7.1 + compile + + + com.ibm.netrexx + netrexx + 2.0.5 + provided + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/NetRexxC* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-netrexx-1.7.1.pom.md5 b/ant/lib/ant-netrexx-1.7.1.pom.md5 new file mode 100644 index 0000000..22ee3b8 --- /dev/null +++ b/ant/lib/ant-netrexx-1.7.1.pom.md5 @@ -0,0 +1 @@ +11ee2604e317648ed8693a38a74cf943 diff --git a/ant/lib/ant-netrexx-1.7.1.pom.sha1 b/ant/lib/ant-netrexx-1.7.1.pom.sha1 new file mode 100644 index 0000000..b5727c1 --- /dev/null +++ b/ant/lib/ant-netrexx-1.7.1.pom.sha1 @@ -0,0 +1 @@ +4952ec4f69a22abbb2f137c1314a5009fb2b9c77 diff --git a/ant/lib/ant-netrexx.jar b/ant/lib/ant-netrexx.jar new file mode 100644 index 0000000..9f368ac Binary files /dev/null and b/ant/lib/ant-netrexx.jar differ diff --git a/ant/lib/ant-nodeps-1.7.1.pom b/ant/lib/ant-nodeps-1.7.1.pom new file mode 100644 index 0000000..1adfd06 --- /dev/null +++ b/ant/lib/ant-nodeps-1.7.1.pom @@ -0,0 +1,120 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-nodeps + 1.7.1 + contains all the optional tasks and types which do not have particular dependencies + + + org.apache.ant + ant + 1.7.1 + compile + + + + xerces + xercesImpl + 2.9.0 + true + runtime + + + + xml-apis + xml-apis + 1.3.04 + true + compile + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/taskdefs/optional/** + org/apache/tools/ant/types/optional/** + org/apache/tools/ant/util/depend/* + org/apache/tools/ant/util/optional/** + org/apache/tools/ant/util/java15/** + org/apache/tools/ant/util/regexp/Jdk14Regexp* + + + org/apache/tools/ant/taskdefs/optional/TraXLiaison* + org/apache/tools/ant/taskdefs/optional/junit/** + org/apache/tools/ant/taskdefs/optional/perforce/** + org/apache/tools/ant/taskdefs/optional/Script* + org/apache/tools/ant/taskdefs/optional/script/** + org/apache/tools/ant/util/optional/Script* + org/apache/tools/ant/types/optional/*Script* + org/apache/tools/ant/taskdefs/optional/StyleBook* + org/apache/tools/ant/taskdefs/optional/NetRexxC* + org/apache/tools/ant/taskdefs/optional/ejb/Ejbc* + org/apache/tools/ant/taskdefs/optional/ejb/DDCreator* + org/apache/tools/ant/taskdefs/optional/ejb/WLRun* + org/apache/tools/ant/taskdefs/optional/ejb/WLStop* + org/apache/tools/ant/taskdefs/optional/net/Telnet* + org/apache/tools/ant/taskdefs/optional/net/FTP* + org/apache/tools/ant/taskdefs/optional/net/RExec* + org/apache/tools/ant/taskdefs/optional/scm/AntStarTeam* + org/apache/tools/ant/taskdefs/optional/starteam/* + org/apache/tools/ant/taskdefs/optional/ANTLR* + org/apache/tools/ant/taskdefs/optional/sound/* + org/apache/tools/ant/taskdefs/optional/image/* + org/apache/tools/ant/types/optional/image/* + org/apache/tools/ant/taskdefs/optional/jdepend/* + org/apache/tools/ant/taskdefs/optional/splash/* + org/apache/tools/ant/taskdefs/optional/ssh/* + + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/ant-nodeps/classes + ../../../../target/ant-nodeps/testcases + ../../../../target/ant-nodeps + + diff --git a/ant/lib/ant-nodeps-1.7.1.pom.md5 b/ant/lib/ant-nodeps-1.7.1.pom.md5 new file mode 100644 index 0000000..321bddd --- /dev/null +++ b/ant/lib/ant-nodeps-1.7.1.pom.md5 @@ -0,0 +1 @@ +64267d0da6b5cb97dd52fc1893cd5b14 diff --git a/ant/lib/ant-nodeps-1.7.1.pom.sha1 b/ant/lib/ant-nodeps-1.7.1.pom.sha1 new file mode 100644 index 0000000..a931f2c --- /dev/null +++ b/ant/lib/ant-nodeps-1.7.1.pom.sha1 @@ -0,0 +1 @@ +a016a28acd8c6b2549a1a26110a4526d02f2ef1d diff --git a/ant/lib/ant-nodeps.jar b/ant/lib/ant-nodeps.jar new file mode 100644 index 0000000..98b5518 Binary files /dev/null and b/ant/lib/ant-nodeps.jar differ diff --git a/ant/lib/ant-parent-1.7.1.pom b/ant/lib/ant-parent-1.7.1.pom new file mode 100644 index 0000000..f05c81d --- /dev/null +++ b/ant/lib/ant-parent-1.7.1.pom @@ -0,0 +1,111 @@ + + + + + 4.0.0 + org.apache.ant + ant-parent + 1.7.1 + pom + master POM + Apache Ant + http://ant.apache.org/ + 2000 + + Apache Software Foundation + + + + + dummy + Dummy to avoid accidental deploys + + + + + scm:svn:http://svn.apache.org/repos/asf/ant/core/trunk + scm:svn:https://svn.apache.org/repos/asf/jant/core/trunk + http://svn.apache.org/repos/asf/ant/core/trunk + + + + Ant Developers List + dev-subscribe@ant.apache.org + dev-unsubscribe@ant.apache.org + dev@ant.apache.org + http://mail-archives.apache.org/mod_mbox/ant-dev + + + Ant Users List + user-subscribe@ant.apache.org + user-unsubscribe@ant.apache.org + user@ant.apache.org + http://mail-archives.apache.org/mod_mbox/ant-user + + + + bugzilla + http://issues.apache.org/bugzilla/ + + + ant + ant-antlr + ant-apache-bcel + ant-apache-bsf + ant-apache-log4j + ant-apache-oro + ant-apache-regexp + ant-apache-resolver + ant-commons-logging + ant-commons-net + ant-jai + ant-javamail + ant-jdepend + ant-jmf + ant-jsch + ant-junit + ant-launcher + ant-netrexx + ant-nodeps + ant-starteam + ant-stylebook + ant-swing + ant-testutil + ant-trax + ant-weblogic + + + + junit + junit + 3.8.2 + test + + + + ../../../src/main + ../../../src/testcases + ../../../target/classes + ../../../target/testcases + + diff --git a/ant/lib/ant-parent-1.7.1.pom.md5 b/ant/lib/ant-parent-1.7.1.pom.md5 new file mode 100644 index 0000000..79cfc59 --- /dev/null +++ b/ant/lib/ant-parent-1.7.1.pom.md5 @@ -0,0 +1 @@ +ae9dcc49c2bbfe405a95b6edc5d2b488 diff --git a/ant/lib/ant-parent-1.7.1.pom.sha1 b/ant/lib/ant-parent-1.7.1.pom.sha1 new file mode 100644 index 0000000..2ec14ed --- /dev/null +++ b/ant/lib/ant-parent-1.7.1.pom.sha1 @@ -0,0 +1 @@ +a6059057a4a8aed8f1326c4e0b19fe8414fc43fc diff --git a/ant/lib/ant-starteam-1.7.1.pom b/ant/lib/ant-starteam-1.7.1.pom new file mode 100644 index 0000000..194cf98 --- /dev/null +++ b/ant/lib/ant-starteam-1.7.1.pom @@ -0,0 +1,71 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-starteam + Starteam SDK tasks + + + org.apache.ant + ant + 1.7.1 + compile + + + com.starteam + starteam-sdk + 5.2 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/scm/AntStarTeam* + org/apache/tools/ant//taskdefs/optional/scm/starteam/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-starteam-1.7.1.pom.md5 b/ant/lib/ant-starteam-1.7.1.pom.md5 new file mode 100644 index 0000000..17e6961 --- /dev/null +++ b/ant/lib/ant-starteam-1.7.1.pom.md5 @@ -0,0 +1 @@ +a4505d9c0c9326474624e85591e7819e diff --git a/ant/lib/ant-starteam-1.7.1.pom.sha1 b/ant/lib/ant-starteam-1.7.1.pom.sha1 new file mode 100644 index 0000000..8fa8bde --- /dev/null +++ b/ant/lib/ant-starteam-1.7.1.pom.sha1 @@ -0,0 +1 @@ +15f4af4a72a85b1032742dc877eb5aa19b31edca diff --git a/ant/lib/ant-starteam.jar b/ant/lib/ant-starteam.jar new file mode 100644 index 0000000..ffd7104 Binary files /dev/null and b/ant/lib/ant-starteam.jar differ diff --git a/ant/lib/ant-stylebook-1.7.1.pom b/ant/lib/ant-stylebook-1.7.1.pom new file mode 100644 index 0000000..dafb235 --- /dev/null +++ b/ant/lib/ant-stylebook-1.7.1.pom @@ -0,0 +1,72 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-stylebook + 1.7.1 + executes the Apache Stylebook document generator. Deprecated since Ant 1.7 + + + org.apache.ant + ant + 1.7.1 + compile + + + stylebook + stylebook + 1.0-b2 + provided + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/StyleBook* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + + diff --git a/ant/lib/ant-stylebook-1.7.1.pom.md5 b/ant/lib/ant-stylebook-1.7.1.pom.md5 new file mode 100644 index 0000000..1bc2cf0 --- /dev/null +++ b/ant/lib/ant-stylebook-1.7.1.pom.md5 @@ -0,0 +1 @@ +a80523032d5592efcc8cf9e5f3e74470 diff --git a/ant/lib/ant-stylebook-1.7.1.pom.sha1 b/ant/lib/ant-stylebook-1.7.1.pom.sha1 new file mode 100644 index 0000000..e87105c --- /dev/null +++ b/ant/lib/ant-stylebook-1.7.1.pom.sha1 @@ -0,0 +1 @@ +16b7d2366c52dbcee08ea09f6ff56882fa151535 diff --git a/ant/lib/ant-stylebook.jar b/ant/lib/ant-stylebook.jar new file mode 100644 index 0000000..e78ed49 Binary files /dev/null and b/ant/lib/ant-stylebook.jar differ diff --git a/ant/lib/ant-swing-1.7.1.pom b/ant/lib/ant-swing-1.7.1.pom new file mode 100644 index 0000000..94bc531 --- /dev/null +++ b/ant/lib/ant-swing-1.7.1.pom @@ -0,0 +1,66 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-swing + 1.7.1 + a listener and a splash task based on Swing + + + org.apache.ant + ant + 1.7.1 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/splash/* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + + diff --git a/ant/lib/ant-swing-1.7.1.pom.md5 b/ant/lib/ant-swing-1.7.1.pom.md5 new file mode 100644 index 0000000..a3983f0 --- /dev/null +++ b/ant/lib/ant-swing-1.7.1.pom.md5 @@ -0,0 +1 @@ +346fc63cedbf35af15ae6fa1d74580f3 diff --git a/ant/lib/ant-swing-1.7.1.pom.sha1 b/ant/lib/ant-swing-1.7.1.pom.sha1 new file mode 100644 index 0000000..86e88ec --- /dev/null +++ b/ant/lib/ant-swing-1.7.1.pom.sha1 @@ -0,0 +1 @@ +33d4afec59c4a2031988df7a48fd1e87c5015079 diff --git a/ant/lib/ant-swing.jar b/ant/lib/ant-swing.jar new file mode 100644 index 0000000..641c5e9 Binary files /dev/null and b/ant/lib/ant-swing.jar differ diff --git a/ant/lib/ant-testutil-1.7.1.pom b/ant/lib/ant-testutil-1.7.1.pom new file mode 100644 index 0000000..9e4c78c --- /dev/null +++ b/ant/lib/ant-testutil-1.7.1.pom @@ -0,0 +1,68 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-testutil + 1.7.1 + test utility classes + + + org.apache.ant + ant + 1.7.1 + compile + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant/BuildFileTest* + org/apache/tools/ant/util/regexp/RegexpMatcherTest* + org/apache/tools/ant/util/regexp/RegexpTest* + org/apache/tools/ant/taskdefs/optional/AbstractXSLTLiaisonTest* + org/apache/tools/ant/types/AbstractFileSetTest* + + + + + ../../../../src/tests/junit + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId} + + + diff --git a/ant/lib/ant-testutil-1.7.1.pom.md5 b/ant/lib/ant-testutil-1.7.1.pom.md5 new file mode 100644 index 0000000..62070c6 --- /dev/null +++ b/ant/lib/ant-testutil-1.7.1.pom.md5 @@ -0,0 +1 @@ +410aa89c29a149ac1a85582fabef1978 diff --git a/ant/lib/ant-testutil-1.7.1.pom.sha1 b/ant/lib/ant-testutil-1.7.1.pom.sha1 new file mode 100644 index 0000000..d26b214 --- /dev/null +++ b/ant/lib/ant-testutil-1.7.1.pom.sha1 @@ -0,0 +1 @@ +055505341f4a44637204493dc44e79feae86427e diff --git a/ant/lib/ant-testutil.jar b/ant/lib/ant-testutil.jar new file mode 100644 index 0000000..10f5230 Binary files /dev/null and b/ant/lib/ant-testutil.jar differ diff --git a/ant/lib/ant-trax-1.7.1.pom b/ant/lib/ant-trax-1.7.1.pom new file mode 100644 index 0000000..3bb3177 --- /dev/null +++ b/ant/lib/ant-trax-1.7.1.pom @@ -0,0 +1,94 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-trax + 1.7.1 + contains particularly one class necessary for the execution of the xslt task + + + org.apache.ant + ant + 1.7.1 + compile + + + + xerces + xercesImpl + 2.9.0 + true + runtime + + + + xml-apis + xml-apis + 1.3.04 + true + compile + + + + xalan + xalan + 2.7.0 + true + runtime + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/TraXLiaison* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-trax-1.7.1.pom.md5 b/ant/lib/ant-trax-1.7.1.pom.md5 new file mode 100644 index 0000000..35246b9 --- /dev/null +++ b/ant/lib/ant-trax-1.7.1.pom.md5 @@ -0,0 +1 @@ +bd33b178769134141fefd7f1020da857 diff --git a/ant/lib/ant-trax-1.7.1.pom.sha1 b/ant/lib/ant-trax-1.7.1.pom.sha1 new file mode 100644 index 0000000..29065ed --- /dev/null +++ b/ant/lib/ant-trax-1.7.1.pom.sha1 @@ -0,0 +1 @@ +c534ce340e4e275a34cef26e4952f052db74d452 diff --git a/ant/lib/ant-trax.jar b/ant/lib/ant-trax.jar new file mode 100644 index 0000000..7c4d564 Binary files /dev/null and b/ant/lib/ant-trax.jar differ diff --git a/ant/lib/ant-weblogic-1.7.1.pom b/ant/lib/ant-weblogic-1.7.1.pom new file mode 100644 index 0000000..bd61b7f --- /dev/null +++ b/ant/lib/ant-weblogic-1.7.1.pom @@ -0,0 +1,79 @@ + + + + + + org.apache.ant + ant-parent + ../pom.xml + 1.7.1 + + 4.0.0 + org.apache.ant + ant-weblogic + 1.7.1 + + + org.apache.ant + ant + 1.7.1 + compile + + + com.bea + weblogicclasses + 5.1 + provided + + + com.bea + weblogic + 8.1.3.0 + provided + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.2 + 1.2 + + org/apache/tools/ant//taskdefs/optional/ejb/Ejbc* + org/apache/tools/ant//taskdefs/optional/ejb/DDCreator* + org/apache/tools/ant//taskdefs/optional/ejb/WLRun* + org/apache/tools/ant//taskdefs/optional/ejb/WLStop* + + + + + ../../../../src/main + ../../../../src/testcases + ../../../../target/${project.artifactId}/classes + ../../../../target/${project.artifactId}/testcases + ../../../../target/${project.artifactId} + + diff --git a/ant/lib/ant-weblogic-1.7.1.pom.md5 b/ant/lib/ant-weblogic-1.7.1.pom.md5 new file mode 100644 index 0000000..95e623d --- /dev/null +++ b/ant/lib/ant-weblogic-1.7.1.pom.md5 @@ -0,0 +1 @@ +da1cfe45c969423efa0e94347dbef3d0 diff --git a/ant/lib/ant-weblogic-1.7.1.pom.sha1 b/ant/lib/ant-weblogic-1.7.1.pom.sha1 new file mode 100644 index 0000000..f4e195d --- /dev/null +++ b/ant/lib/ant-weblogic-1.7.1.pom.sha1 @@ -0,0 +1 @@ +3903fa5ed6e6528772e99d9a955f4fd05b4558a9 diff --git a/ant/lib/ant-weblogic.jar b/ant/lib/ant-weblogic.jar new file mode 100644 index 0000000..aa7d318 Binary files /dev/null and b/ant/lib/ant-weblogic.jar differ diff --git a/ant/lib/ant.jar b/ant/lib/ant.jar new file mode 100644 index 0000000..7047177 Binary files /dev/null and b/ant/lib/ant.jar differ diff --git a/ant/lib/libraries.properties b/ant/lib/libraries.properties new file mode 100644 index 0000000..651cc47 --- /dev/null +++ b/ant/lib/libraries.properties @@ -0,0 +1,62 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#this file declares the libraries for use in +#a given release of the components + +#if you change this, change the checksum to match +m2.version=2.0.4 +m2.url=http://ibiblio.org/maven2/ +m2.artifact-name=maven-artifact-ant +m2.jar.name=${m2.artifact-name}-${m2.version}-dep.jar +#this is the URL of the antlib library, that is pulled down for everything else. +m2.antlib.url=${m2.url}/org/apache/maven/${m2.artifact-name}/${m2.version}/${m2.jar.name} +#this is the sha1 checksum of the artifact +m2.sha1.checksum=4e7ddfdb91600e9b59bb965ff8eef2f06015df50 + + +#versions of different libraries. Please keep in alphabetical order, except +#when a specific dependency forces them to be out-of-order +antlr.version=2.7.2 +bcel.version=5.1 +bsf.version=2.4.0 +bsh.version=2.0b4 +bsh-core.version=${bsh.version} +commons-net.version=1.4.0 +commons-logging.version=1.0.4 +commons-logging-api.version=${commons-logging.version} +jdepend.version=2.7 +jruby.version=0.8.3 +junit.version=3.8.2 +jsch.version=0.1.29 +jython.version=2.1 +log4j.version=1.2.13 +#js is the javascript implementation of the rhino project +js.version=1.6R3 +oro.version=2.0.8 +regexp.version=1.3 +which.version=1.0 +xerces.version=2.9.0 +xercesImpl.version=${xerces.version} +#should be in sync w/ xerces, but not in the maven repository +#xmlParserAPIs.version=${xerces.version} +#xmlParserAPIs.version=2.6.1 +xml-apis.version=1.3.04 +xalan.version=2.7.0 +xml-resolver.version=1.1 + +#paired +jacl.version=1.2.6 +tcljava.version=${jacl.version} diff --git a/ant/lib/xercesImpl.jar b/ant/lib/xercesImpl.jar new file mode 100644 index 0000000..e0a4c2e Binary files /dev/null and b/ant/lib/xercesImpl.jar differ diff --git a/ant/lib/xml-apis.jar b/ant/lib/xml-apis.jar new file mode 100644 index 0000000..d42c0ea Binary files /dev/null and b/ant/lib/xml-apis.jar differ diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..f79ddc3 --- /dev/null +++ b/build.xml @@ -0,0 +1,1092 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MOVES
    ]]>
    + + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + maxworkers = ${maxworkers} + + + + + + Launching a worker... + + + + + + + + + + + + + + + + + Worker finished. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MySQL is already running and will not be automatically shutdown by this instance. + + + Starting mysqld... + + + + + + + + + + + + + Confirmed MySQL started because its socket has been found. + + + + + + + + Stopping mysqld via the mysqladmin tool... + + + + + + + Workers and mysql have been shutdown. + + + Workers have been shutdown, but not MySQL since it was already running. + + + + + + + + + MySQL is already running. + + + Starting mysqld... + + + + + + + + + + + + + Confirmed MySQL started because its socket has been found. + + + + + + Stopping mysqld via the mysqladmin tool... + + + + + + + MySQL has been shutdown. + + + + + + + + + + + + + + + + + MySQL is already running and will not be automatically shutdown by this instance. + + + Starting mysqld... + + + + + + + + + + + + + Confirmed MySQL started because its socket has been found. + + + + Launching the master... + + + + + + + + Master finished. + + + + Stopping mysqld via the mysqladmin tool... + + + + + + + Master and mysql have been shutdown. + + + Master has been shutdown, but not MySQL since it was already running. + + + + + ERROR: A runspec was not provided. Use -Drunspec=somefile.mrs + + + + + + + + + + + + + + + + + + + + + + MySQL is already running and will not be automatically shutdown by this instance. + + + Starting mysqld... + + + + + + + + + + + + + Confirmed MySQL started because its socket has been found. + + + + Launching the master, which will launch a worker... + + + + + + + + Master and 1 worker finished. + + + + Stopping mysqld via the mysqladmin tool... + + + + + + + Master and mysql have been shutdown. + + + Master has been shutdown, but not MySQL since it was already running. + + + + + ERROR: A runspec was not provided. Use -Drunspec=somefile.mrs + + + + + + + + + + + + + + + + + + + MySQL is already running and will not be automatically shutdown by this instance. + + + Starting mysqld... + + + + + + + + + + + + + Confirmed MySQL started because its socket has been found. + + + + Launching the master... + + + + + + + Master finished. + + + + Stopping mysqld via the mysqladmin tool... + + + + + + + Master and mysql have been shutdown. + + + Master has been shutdown, but not MySQL since it was already running. + + + + + ERROR: A pdspec was not provided. Use -Dpdspec=somefile.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ERROR: A runspec was not provided. Use -Drunspec=somefile.mrs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/calc/go/src/configuration/configuration.go b/calc/go/src/configuration/configuration.go new file mode 100644 index 0000000..b3b071e --- /dev/null +++ b/calc/go/src/configuration/configuration.go @@ -0,0 +1,26 @@ +package configuration + +import ( + "fmt" +) + +type Configuration struct { + isReady bool + maximumMemory int64 +} + +var Singleton Configuration + +func init() { + // Nothing to do here +} + +func (c Configuration) Setup() { + fmt.Println("Reading the global configuration values...") + c.isReady = false + c.maximumMemory = 1024*1024*1024 // 1GB + c.maximumMemory *= 4 // 4GB + + // TODO + fmt.Println("Done reading the global configuration values.") +} diff --git a/calc/go/src/externalcalculatorgo.go b/calc/go/src/externalcalculatorgo.go new file mode 100644 index 0000000..ac39f23 --- /dev/null +++ b/calc/go/src/externalcalculatorgo.go @@ -0,0 +1,209 @@ +package main + +import ( + "fmt" + "configuration" + "time" + "globalevents" + "mwo" + "hcspeciation" + "nrhcspeciation" + "nrairtoxics" + "runtime" +) + +func main() { + start := time.Now() + var memory runtime.MemStats + var maxMemory uint64 + + fmt.Println("ExternalCalculatorGo starting...") + configuration.Singleton.Setup() + + mwo.ReadModules() + + mwoReadCount := 0 + + mwoInternalCount := 0 + maxMWOInternalCount := 0 + + mwoWriteCount := 0 + maxMWOWriteCount := 0 + + mwoReadCount++ // Ensure main will not exit until the external file has been read + + blockMemoryScaleFactor := 1.0 + + needsDetailOutput := mwo.NeedsModule("outputfulldetail") + fmt.Println("needsDetailOutput",needsDetailOutput) + + needsHCSpeciation := mwo.NeedsModule("HCSpeciationCalculator") + fmt.Println("needsHCSpeciation",needsHCSpeciation) + if(needsHCSpeciation) { + blockMemoryScaleFactor += 1.0 + } + + needsNRHCSpeciation := mwo.NeedsModule("NRHCSpeciationCalculator") + fmt.Println("needsNRHCSpeciation",needsNRHCSpeciation) + if(needsNRHCSpeciation) { + blockMemoryScaleFactor += 1.0 + } + + needsNRAirToxics := mwo.NeedsModule("NRAirToxicsCalculator") + fmt.Println("needsNRAirToxics",needsNRAirToxics) + if(needsNRAirToxics) { + blockMemoryScaleFactor += 4.0 + } + + needsNRNonHAPTOG := mwo.NeedsModule("nrNonHAPTOG") // a special case within NRAirToxicsCalculator + fmt.Println("needsNRNonHAPTOG",needsNRNonHAPTOG) + if(needsNRNonHAPTOG) { + blockMemoryScaleFactor += 1.0 + } + + if(mwo.NeedsModule("FuelSubType")) { + blockMemoryScaleFactor *= 1.25 + } + howManyBlocksAllowed := (int)(2000 / blockMemoryScaleFactor) + if(howManyBlocksAllowed < 100) { + howManyBlocksAllowed = 100 + } + fmt.Println("howManyBlocksAllowed",howManyBlocksAllowed) + mwo.AddBlockPermissions(howManyBlocksAllowed) + + inputBlocks := make(chan *mwo.MWOBlock,2000) + mwo.StartReading("movesworkeroutput",inputBlocks) + writeBlocks := make(chan *mwo.MWOBlock,1000) + + // Start all chained calculators to reading their inputs + if(needsHCSpeciation) { + hcspeciation.StartSetup() + } + if(needsNRHCSpeciation) { + nrhcspeciation.StartSetup() + } + if(needsNRAirToxics) { + nrairtoxics.StartSetup() + } + // other chained calculators should start their setup here + + // Finish all asynchronous setup + if(needsHCSpeciation) { + hcspeciation.FinishSetup() + } + if(needsNRHCSpeciation) { + nrhcspeciation.FinishSetup() + } + if(needsNRAirToxics) { + nrairtoxics.FinishSetup() + } + // other chained calculators should finish their setup here + + runtime.ReadMemStats(&memory) + if maxMemory < memory.Alloc { + maxMemory = memory.Alloc + } + fmt.Printf("Memory: current=%v\n",memory.Alloc) + + // Add chained calculators with small non-blocking channels between each. Use 100 blocks per channel. + // Be sure to spin up several go routines for each chained calculator. + // Doing so will ensure that if one calculator is a bottleneck, it will at least run + // concurrently with itself. + preCalculatorChannel := inputBlocks + postCalculatorChannel := make(chan *mwo.MWOBlock,100) + + if(needsHCSpeciation) { + if(postCalculatorChannel == nil) { + postCalculatorChannel = make(chan *mwo.MWOBlock,100) + } + hcspeciation.StartCalculating(2,preCalculatorChannel,postCalculatorChannel) + preCalculatorChannel = postCalculatorChannel // tell the next stage to use this one's output as it's input + postCalculatorChannel = nil // Consume the channel so the next stage makes a new output channel + } + if(needsNRHCSpeciation) { + if(postCalculatorChannel == nil) { + postCalculatorChannel = make(chan *mwo.MWOBlock,100) + } + nrhcspeciation.StartCalculating(2,preCalculatorChannel,postCalculatorChannel) + preCalculatorChannel = postCalculatorChannel // tell the next stage to use this one's output as it's input + postCalculatorChannel = nil // Consume the channel so the next stage makes a new output channel + } + if(needsNRAirToxics) { + if(postCalculatorChannel == nil) { + postCalculatorChannel = make(chan *mwo.MWOBlock,100) + } + nrairtoxics.StartCalculating(2,preCalculatorChannel,postCalculatorChannel) + preCalculatorChannel = postCalculatorChannel // tell the next stage to use this one's output as it's input + postCalculatorChannel = nil // Consume the channel so the next stage makes a new output channel + } + if(needsNRNonHAPTOG) { + if(postCalculatorChannel == nil) { + postCalculatorChannel = make(chan *mwo.MWOBlock,100) + } + nrairtoxics.StartCalculatingNonHAPTOG(2,preCalculatorChannel,postCalculatorChannel) + preCalculatorChannel = postCalculatorChannel // tell the next stage to use this one's output as it's input + postCalculatorChannel = nil // Consume the channel so the next stage makes a new output channel + } + // remember to update the EndOfChain call to use the output from the last chained calculator + + // Finish the chained calculators and write blocks to disk. + mwo.EndOfChain(preCalculatorChannel,writeBlocks) // Read from the last chained calculator's output channel, now stored in preCalculatorChannel + mwo.StartWriting("newmovesworkeroutput",writeBlocks,needsDetailOutput) + + runtime.ReadMemStats(&memory) + if maxMemory < memory.Alloc { + maxMemory = memory.Alloc + } + fmt.Printf("Memory: current=%v\n",memory.Alloc) + + eventCount := 0 + var event string + for { + event = <- globalevents.Events + eventCount++ + //fmt.Println("Event: ",event) + if event == globalevents.MWOReadEnd { + mwoReadCount-- + runtime.ReadMemStats(&memory) + if maxMemory < memory.Alloc { + maxMemory = memory.Alloc + } + } else if event == globalevents.MWOBlockBegin { + mwoInternalCount++ + if mwoInternalCount > maxMWOInternalCount { + maxMWOInternalCount = mwoInternalCount + } + } else if event == globalevents.MWOBlockEnd { + mwoInternalCount-- + } else if event == globalevents.MWOWriteBegin { + mwoWriteCount++ + if mwoWriteCount > maxMWOWriteCount { + maxMWOWriteCount = mwoWriteCount + } + } else if event == globalevents.MWOWriteEnd { + mwoWriteCount-- + } + if mwoReadCount <= 0 && mwoInternalCount <= 0 && mwoWriteCount <= 0 { + runtime.ReadMemStats(&memory) + if maxMemory < memory.Alloc { + maxMemory = memory.Alloc + } + fmt.Println("End conditions detected.") + break + } + } + mwo.FinishWriting() + fmt.Printf("ExternalCalculatorGo done with %d events.\n",eventCount) + fmt.Printf("maxMWOInternalCount=%d, maxMWOWriteCount=%d\n",maxMWOInternalCount,maxMWOWriteCount) + globalevents.PrintCounts() + + runtime.ReadMemStats(&memory) + if maxMemory < memory.Alloc { + maxMemory = memory.Alloc + } + fmt.Printf("Memory: max=%v, current=%v\n",maxMemory,memory.Alloc) + + end := time.Now() + delta := end.Sub(start) + fmt.Printf("externalcalculatorgo took this amount of time: %s\n", delta) +} diff --git a/calc/go/src/globalevents/globalevents.go b/calc/go/src/globalevents/globalevents.go new file mode 100644 index 0000000..148f9b5 --- /dev/null +++ b/calc/go/src/globalevents/globalevents.go @@ -0,0 +1,45 @@ +package globalevents + +import ( + "fmt" + "sync/atomic" +) + +// Added after reading the last data from the MOVESWorkerOutput file +const MWOReadEnd = "MWOReadEnd" +var MWOReadEndCount int32 + +// Added before and after a block is to be processed internally +const MWOBlockBegin, MWOBlockEnd = "MWOBlockBegin", "MWOBlockEnd" +var MWOBlockBeginCount, MWOBlockEndCount int32 + +// Added before and after a block is to be written to the new MOVESWorkerOutput file +const MWOWriteBegin, MWOWriteEnd = "MWOWriteBegin", "MWOWriteEnd" +var MWOWriteBeginCount, MWOWriteEndCount int32 + +var Events chan string // buffered asynchronous channel + +func init() { + Events = make(chan string,1000) + Events <- "EventsStarted" +} + +func Send(message string) { + if message == MWOReadEnd { + atomic.AddInt32(&MWOReadEndCount,1) + } else if message == MWOBlockBegin { + atomic.AddInt32(&MWOBlockBeginCount,1) + } else if message == MWOBlockEnd { + atomic.AddInt32(&MWOBlockEndCount,1) + } else if message == MWOWriteBegin { + atomic.AddInt32(&MWOWriteBeginCount,1) + } else if message == MWOWriteEnd { + atomic.AddInt32(&MWOWriteEndCount,1) + } + Events <- message +} + +func PrintCounts() { + fmt.Printf("MWOReadEnds: %d,MWOBlockBegins: %d,MWOBlockEnds: %d,MWOWriteBegins: %d,MWOWriteEnds: %d\n",MWOReadEndCount,MWOBlockBeginCount,MWOBlockEndCount,MWOWriteBeginCount,MWOWriteEndCount) +} + diff --git a/calc/go/src/hcspeciation/hcspeciation.go b/calc/go/src/hcspeciation/hcspeciation.go new file mode 100644 index 0000000..8fd5c79 --- /dev/null +++ b/calc/go/src/hcspeciation/hcspeciation.go @@ -0,0 +1,426 @@ +package hcspeciation + +import ( + "fmt" + "mwo" + "parse" +) + +/** + * @algorithm + * @owner HC Speciation Calculator + * @calculator +**/ + +type THCPollutantProcessMappedModelYearKey struct { + polProcessID, modelYearID int +} + +type THCPollutantProcessMappedModelYearDetail struct { + modelYearGroupID, fuelMYGroupID, IMModelYearGroupID int +} + +var THCPollutantProcessMappedModelYear map[THCPollutantProcessMappedModelYearKey]*THCPollutantProcessMappedModelYearDetail + +type methaneTHCRatioKey struct { + processID, fuelTypeID, sourceTypeID, modelYearGroupID, ageGroupID int +} + +type methaneTHCRatioDetail struct { + CH4THCRatio, CH4THCRatioCV float64 +} + +var methaneTHCRatio map[methaneTHCRatioKey]*methaneTHCRatioDetail + +type HCPollutantProcessMappedModelYearKey struct { + polProcessID, modelYearID int +} + +type HCPollutantProcessMappedModelYearDetail struct { + modelYearGroupID, fuelMYGroupID, IMModelYearGroupID int +} + +var HCPollutantProcessMappedModelYear map[HCPollutantProcessMappedModelYearKey]*HCPollutantProcessMappedModelYearDetail + +type HCPollutantProcessModelYearKey struct { + polProcessID, modelYearID int +} + +type HCPollutantProcessModelYearDetail struct { + modelYearGroupID, fuelMYGroupID, IMModelYearGroupID int +} + +var HCPollutantProcessModelYear map[HCPollutantProcessModelYearKey]*HCPollutantProcessModelYearDetail + +type HCSpeciationKey struct { + polProcessID, fuelMYGroupID, fuelSubTypeID, etohThreshID, oxyThreshID int +} + +type HCSpeciationDetail struct { + speciationConstant, oxySpeciation float64 +} + +var HCSpeciation map[HCSpeciationKey]*HCSpeciationDetail + +func init() { + THCPollutantProcessMappedModelYear = make(map[THCPollutantProcessMappedModelYearKey]*THCPollutantProcessMappedModelYearDetail) + methaneTHCRatio = make(map[methaneTHCRatioKey]*methaneTHCRatioDetail) + HCPollutantProcessMappedModelYear = make(map[HCPollutantProcessMappedModelYearKey]*HCPollutantProcessMappedModelYearDetail) + HCPollutantProcessModelYear = make(map[HCPollutantProcessModelYearKey]*HCPollutantProcessModelYearDetail) + HCSpeciation = make(map[HCSpeciationKey]*HCSpeciationDetail) +} + +func StartSetup() { + /* + Assign oxyThreshID + select * from movesdb20140731.oxythreshname; + oxyThreshID|oxyThreshName + 0 |ETOHVolume > 0.0 OR (MTBEVolume = 0.0 and ETBEVolume = 0.0 and TAMEVolume = 0.0) + 1 |ETOHVolume <= 0.0 and (MTBEVolume > 0.0 or ETBEVolume > 0.0 or TAMEVolume > 0.0) + */ + for _, f := range mwo.FuelFormulations { + if f.ETOHVolume > 0 || (f.MTBEVolume == 0 && f.ETBEVolume == 0 && f.TAMEVolume == 0) { + f.OxyThreshID = 0 + } else if f.ETOHVolume <= 0 && (f.MTBEVolume > 0 || f.ETBEVolume > 0 || f.TAMEVolume > 0) { + f.OxyThreshID = 1 + } else { + f.OxyThreshID = 0 + } + f.ETOHThreshID = 0 + } + + // hcETOHBin + parse.ReadAndParseFile("hcetohbin", func(parts []string) { + // etohThreshID etohThreshLow etohThreshHigh etohNominalValue + if len(parts) < 4 { + return + } + //fmt.Println("ETOHBin:",parts) + etohThreshID := parse.GetInt(parts[0]) + etohThreshLow := parse.GetFloat(parts[1]) + etohThreshHigh := parse.GetFloat(parts[2]) + //etohNominalValue := parse.GetFloat(parts[3]) + + for _, f := range mwo.FuelFormulations { + /* + @algorithm Assign etohThreshID to each fuel formulation. + etohThreshLow <= ETOHVolume < etohThreshHigh + */ + if etohThreshLow <= f.ETOHVolume && f.ETOHVolume < etohThreshHigh { + f.ETOHThreshID = etohThreshID + } + } + }) + + // THCPollutantProcessMappedModelYear + parse.ReadAndParseFile("thcpollutantprocessmappedmodelyear", func(parts []string) { + // polProcessID, modelYearID + // modelYearGroupID, fuelMYGroupID, IMModelYearGroupID + if len(parts) < 5 { + return + } + k := THCPollutantProcessMappedModelYearKey{parse.GetInt(parts[0]),parse.GetInt(parts[1])} + v := new(THCPollutantProcessMappedModelYearDetail) + v.modelYearGroupID = parse.GetInt(parts[2]) + v.fuelMYGroupID = parse.GetInt(parts[3]) + v.IMModelYearGroupID = parse.GetInt(parts[4]) + THCPollutantProcessMappedModelYear[k] = v + }) + + // methaneTHCRatio + parse.ReadAndParseFile("methanethcratio", func(parts []string) { + // processID, fuelTypeID, sourceTypeID, modelYearGroupID, ageGroupID + // CH4THCRatio, CH4THCRatioCV + if len(parts) < 7 { + return + } + k := methaneTHCRatioKey{parse.GetInt(parts[0]),parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetInt(parts[4])} + v := new(methaneTHCRatioDetail) + v.CH4THCRatio = parse.GetFloat(parts[5]) + v.CH4THCRatioCV = parse.GetFloat(parts[6]) + methaneTHCRatio[k] = v + }) + + // HCPollutantProcessMappedModelYear + parse.ReadAndParseFile("hcpollutantprocessmappedmodelyear", func(parts []string) { + // polProcessID, modelYearID + // modelYearGroupID, fuelMYGroupID, IMModelYearGroupID + if len(parts) < 5 { + return + } + k := HCPollutantProcessMappedModelYearKey{parse.GetInt(parts[0]),parse.GetInt(parts[1])} + v := new(HCPollutantProcessMappedModelYearDetail) + v.modelYearGroupID = parse.GetInt(parts[2]) + v.fuelMYGroupID = parse.GetInt(parts[3]) + v.IMModelYearGroupID = parse.GetInt(parts[4]) + HCPollutantProcessMappedModelYear[k] = v + }) + + // HCPollutantProcessModelYear + parse.ReadAndParseFile("hcpollutantprocessmodelyear", func(parts []string) { + // polProcessID, modelYearID + // modelYearGroupID, fuelMYGroupID, IMModelYearGroupID + if len(parts) < 5 { + return + } + k := HCPollutantProcessModelYearKey{parse.GetInt(parts[0]),parse.GetInt(parts[1])} + v := new(HCPollutantProcessModelYearDetail) + v.modelYearGroupID = parse.GetInt(parts[2]) + v.fuelMYGroupID = parse.GetInt(parts[3]) + v.IMModelYearGroupID = parse.GetInt(parts[4]) + HCPollutantProcessModelYear[k] = v + }) + + // HCSpeciation + parse.ReadAndParseFile("hcspeciation", func(parts []string) { + // polProcessID, fuelMYGroupID, fuelSubTypeID, etohThreshID, oxyThreshID, + // speciationConstant, oxySpeciation + if len(parts) < 7 { + return + } + k := HCSpeciationKey{parse.GetInt(parts[0]),parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetInt(parts[4])} + v := new(HCSpeciationDetail) + v.speciationConstant = parse.GetFloat(parts[5]) + v.oxySpeciation = parse.GetFloat(parts[6]) + if HCSpeciation[k] != nil { + fmt.Println("HCSpeciation[",k,"] already populated with ",HCSpeciation[k]," instead of ",v) + } + HCSpeciation[k] = v + }) +} + +func FinishSetup() { + // There are no asynchronous reads, so nothing to do here. + + // Done + fmt.Println("HCSpeciation finished reading setup files.") +} + +func StartCalculating(howManyThreads int, inputBlocks chan *mwo.MWOBlock, outputBlocks chan *mwo.MWOBlock) { + for i := 0; i= 2001) { + /* + @algorithm NMOG (80) = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)). + @condition When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, NMOG = 0. + @condition NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001). + @input FuelFormulation + @input HCSpeciation + @input PollutantProcessModelYear + */ + ppid = 80*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + if totalOxygenate < 0 { + emissions[80] = mwo.NewEmissionScaled(e,0) + } else { + ppmy := HCPollutantProcessModelYear[HCPollutantProcessModelYearKey{ppid, fb.Key.ModelYearID}] + if ppmy != nil { + hcs := HCSpeciation[HCSpeciationKey{ppid,ppmy.fuelMYGroupID,e.FuelSubTypeID,ff.ETOHThreshID,ff.OxyThreshID}] + if hcs != nil { + factor := hcs.speciationConstant + hcs.oxySpeciation * ff.VolToWtPercentOxy * totalOxygenate + emissions[80] = mwo.NewEmissionScaled(emissions[79],factor) + } else { + emissions[80] = mwo.NewEmissionScaled(e,0) + } + } + } + } + /* + @algorithm VOC (87) = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)). + @condition When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, VOC = 0. + @condition NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001). + @input FuelFormulation + @input HCSpeciation + @input PollutantProcessModelYear + */ + ppid = 87*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + if totalOxygenate < 0 { + emissions[87] = mwo.NewEmissionScaled(e,0) + } else { + ppmy := HCPollutantProcessMappedModelYear[HCPollutantProcessMappedModelYearKey{ppid, fb.Key.ModelYearID}] + if ppmy != nil { + hcs := HCSpeciation[HCSpeciationKey{ppid,ppmy.fuelMYGroupID,e.FuelSubTypeID,ff.ETOHThreshID,ff.OxyThreshID}] + if hcs != nil { + factor := hcs.speciationConstant + hcs.oxySpeciation * ff.VolToWtPercentOxy * totalOxygenate + emissions[87] = mwo.NewEmissionScaled(emissions[79],factor) + } else { + emissions[87] = mwo.NewEmissionScaled(e,0) + } + } + } + } + } + } + + /* + @algorithm Calculate altNMHC (10079) from altTHC (10001) using E10's ratios. + altNMHC (pollutant 10079) = altTHC (10001) * (1-CH4THCRatio[E10 fuel subtype]). + @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. + @input methaneTHCRatio + @input PollutantProcessModelYear + */ + if (e.FuelSubTypeID == 50 || e.FuelSubTypeID == 51 || e.FuelSubTypeID == 52) && fb.Key.PollutantID == 10001 && + (fb.Key.ProcessID == 1 || fb.Key.ProcessID == 2) && fb.Key.FuelTypeID == 5 && fb.Key.ModelYearID >= 2001 && + thcPPMY != nil { + ethanolR := methaneTHCRatio[methaneTHCRatioKey{fb.Key.ProcessID, 1, fb.Key.SourceTypeID, thcPPMY.modelYearGroupID, fb.Key.AgeGroupID}] + if ethanolR != nil { + ppid = 79*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + emissions[10079] = mwo.NewEmissionScaled(e,1-ethanolR.CH4THCRatio) + } + + /* + @algorithm Calculate NMOG from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol. + This is done by joining to HCSpeciation using E10's values rather than the current fuel formulation's values. + NMOG = altNMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)). + @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. + @input FuelFormulation + @input HCSpeciation + @input PollutantProcessModelYear + */ + ppid = 80*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + if totalOxygenate < 0 { + emissions[80] = mwo.NewEmissionScaled(e,0) + } else { + ppmy := HCPollutantProcessModelYear[HCPollutantProcessModelYearKey{ppid, fb.Key.ModelYearID}] + if ppmy != nil { + hcs := HCSpeciation[HCSpeciationKey{ppid,ppmy.fuelMYGroupID,12,3,0}] + if hcs != nil { + factor := hcs.speciationConstant + hcs.oxySpeciation * ff.VolToWtPercentOxy * totalOxygenate + emissions[80] = mwo.NewEmissionScaled(emissions[10079],factor) + } else { + emissions[80] = mwo.NewEmissionScaled(e,0) + } + } + } + } + /* + @algorithm Calculate VOC from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol. + This is done by joining to HCSpeciation using E10's values rather than the current fuel formulation's values. + VOC = altNMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)). + @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. + @input FuelFormulation + @input HCSpeciation + @input PollutantProcessModelYear + */ + ppid = 87*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + if totalOxygenate < 0 { + emissions[87] = mwo.NewEmissionScaled(e,0) + } else { + ppmy := HCPollutantProcessMappedModelYear[HCPollutantProcessMappedModelYearKey{ppid, fb.Key.ModelYearID}] + if ppmy != nil { + hcs := HCSpeciation[HCSpeciationKey{ppid,ppmy.fuelMYGroupID,12,3,0}] + if hcs != nil { + factor := hcs.speciationConstant + hcs.oxySpeciation * ff.VolToWtPercentOxy * totalOxygenate + emissions[87] = mwo.NewEmissionScaled(emissions[10079],factor) + } else { + emissions[87] = mwo.NewEmissionScaled(e,0) + } + } + } + } + } + } + + // @algorithm TOG (86) = NMOG (80) + Methane (5) + ppid = 86*100 + fb.Key.ProcessID + if(mwo.NeededPolProcessIDs[ppid]) { + tog := mwo.NewEmissionSum(emissions[80],emissions[5]) + if tog != nil { + emissions[86] = tog + } + } + + for pollutantID, e := range emissions { + if e == nil { + continue + } + // Make a FuelBlock for the pollutant if one doesn't already exist. + // Copy everything in the key and change the key's pollutantID. + nfb := innerFuelBlocks[pollutantID] + if nfb == nil { + nfb = mwo.NewFuelBlock(fb) + nfb.Key.PollutantID = pollutantID + nfb.Key.PolProcessID = pollutantID * 100 + nfb.Key.ProcessID + innerFuelBlocks[pollutantID] = nfb + } + // Add the emissions to the fuel block. + nfb.AddEmission(e) + } + } + // Add new values to the list of new fuel blocks + for _, nfb := range innerFuelBlocks { + if nfb.NeedsGFRE { + // Apply any GeneralFuelRatio[Expression] at the fuel formulation level + // No GFRE is used by the HCSpeciation calculator. + } + if newFuelBlocks == nil { + newFuelBlocks = make([]*mwo.FuelBlock,0,cap(b.FuelBlocks)) + } + newFuelBlocks = append(newFuelBlocks,nfb) + } + } + // Add new fuel blocks to the main block + if newFuelBlocks != nil { + for _, nfb := range newFuelBlocks { + b.AddFuelBlock(nfb) + } + } + + outputBlocks <- b + } +} diff --git a/calc/go/src/mwo/mwo.go b/calc/go/src/mwo/mwo.go new file mode 100644 index 0000000..0bce3a4 --- /dev/null +++ b/calc/go/src/mwo/mwo.go @@ -0,0 +1,443 @@ +package mwo + +import ( + "globalevents" + "os" + "bufio" + "strconv" + "fmt" + "sync/atomic" +) + +var NeededPolProcessIDs map[int]bool +var NeededModules map[string]bool + +var FuelSupply map[FuelSupplyKey][]*FuelSupplyDetail +var NRFuelSupply map[FuelSupplyKey][]*FuelSupplyDetail +var defaultEmissionsPerFuelBlock int + +var FuelTypes map[int]*FuelType +var FuelSubTypes map[int]*FuelSubType +var FuelFormulations map[int]*FuelFormulation + +var NRFuelTypes map[int]*FuelType +var NRFuelSubTypes map[int]*FuelSubType + +var AgeGroups map[int]int // keyed by AgeID, value is AgeGroupID + +type FuelSupplyKey struct { + CountyID, YearID, MonthID, FuelTypeID int +} + +type FuelSupplyDetail struct { + FuelSubTypeID, FuelFormulationID int + MarketShare float64 + + FuelFormulation *FuelFormulation +} + +type FuelType struct { + FuelTypeID int + HumidityCorrectionCoeff, FuelDensity float64 + SubjectToEvapCalculations bool +} + +type FuelSubType struct { + FuelSubTypeID, FuelTypeID int + FuelSubtypePetroleumFraction, FuelSubtypeFossilFraction, CarbonContent, OxidationFraction, EnergyContent float64 + + FuelType *FuelType +} + +type FuelFormulation struct { + FuelFormulationID, FuelSubTypeID int + RVP, SulfurLevel float64 + ETOHVolume, MTBEVolume, ETBEVolume, TAMEVolume float64 + AromaticContent, OlefinContent, BenzeneContent float64 + E200, E300 float64 + VolToWtPercentOxy, BioDieselEsterVolume, CetaneIndex, PAHContent float64 + T50, T90 float64 + + FuelTypeID int + FuelSubType *FuelSubType + + // HCSpeciation calculator + ETOHThreshID int + OxyThreshID int +} + +type NRSCCDetail struct { + SCC string + NREquipTypeID, FuelTypeID int +} + +var NRSCC map[string]*NRSCCDetail + +type NRHPCategoryKey struct { + HPID, EngTechID int +} + +var NRHPCategory map[NRHPCategoryKey]uint8 + +type MWOKey struct { + YearID, MonthID, DayID, HourID, StateID, CountyID, ZoneID, LinkID, RoadTypeID int + SourceTypeID, RegClassID, FuelTypeID, ModelYearID int + SCC string + EngTechID, SectorID, HPID int + PollutantID, ProcessID int + + // Derived values often used for lookups + PolProcessID, HourDayID, AgeID, AgeGroupID int +} + +type MWOEmission struct { + FuelSubTypeID, FuelFormulationID int + EmissionQuant, EmissionRate float64 +} + +type FuelSubTypeBlock struct { + TotalEmissionQuant, TotalEmissionRate float64 +} + +type FuelBlock struct { + TotalEmissionQuant, TotalEmissionRate float64 + Key MWOKey + HasBeenWritten, NeedsGFRE bool + Emissions []*MWOEmission + TotalsByFuelSubType map[int]*FuelSubTypeBlock +} + +type MWOBlock struct { + FuelBlocks []*FuelBlock +} + +var outputFile *os.File +var outputWriter *bufio.Writer +var linesWritten int32 +var emissionBlocksConsidered int32 +var fuelBlocksConsidered int32 +var mwoBlocksConsidered int32 + +var detailOutputFile *os.File +var detailOutputWriter *bufio.Writer +var detailLinesWritten int32 + +var mwoPermissions chan int + +func init() { + NeededPolProcessIDs = make(map[int]bool) + NeededModules = make(map[string]bool) + + FuelSupply = make(map[FuelSupplyKey][]*FuelSupplyDetail) + NRFuelSupply = make(map[FuelSupplyKey][]*FuelSupplyDetail) + defaultEmissionsPerFuelBlock = 20 + + FuelTypes = make(map[int]*FuelType) + FuelSubTypes = make(map[int]*FuelSubType) + FuelFormulations = make(map[int]*FuelFormulation) + + NRFuelTypes = make(map[int]*FuelType) + NRFuelSubTypes = make(map[int]*FuelSubType) + + AgeGroups = make(map[int]int) // keyed by AgeID, value is AgeGroupID + + NRSCC = make(map[string]*NRSCCDetail) + + NRHPCategory = make(map[NRHPCategoryKey]uint8) + + mwoPermissions = make(chan int,10000) +} + +func AddBlockPermissions(howManyBlocks int) { + if(howManyBlocks > cap(mwoPermissions)) { + howManyBlocks = cap(mwoPermissions) + } + for i:=0; i= 10000 { // Skip pseudo-pollutants + continue + } + */ + if detailOutputFile != nil { // If full detailed logging is required at the fuel formulation level... + /* + 0,1: MOVESRunID,iterationID, + 2,3,4,5: yearID,monthID,dayID,hourID, + 6,7,8,9: stateID,countyID,zoneID,linkID, + 10,11: pollutantID,processID, + 12,13: sourceTypeID,regClassID, + 14,15: fuelTypeID,modelYearID, + 16,17: roadTypeID,SCC, + 18,19,20: engTechID,sectorID,hpID, + 21,22: emissionQuant,emissionRate + 23,24: fuelSubTypeID, fuelFormulationID + */ + for _, e := range fb.Emissions { + line := "0\t0\t" + + strconv.Itoa(fb.Key.YearID) + "\t" + strconv.Itoa(fb.Key.MonthID) + "\t" + strconv.Itoa(fb.Key.DayID) + "\t" + strconv.Itoa(fb.Key.HourID) + "\t" + + strconv.Itoa(fb.Key.StateID) + "\t" + strconv.Itoa(fb.Key.CountyID) + "\t" + strconv.Itoa(fb.Key.ZoneID) + "\t" + strconv.Itoa(fb.Key.LinkID) + "\t" + + strconv.Itoa(fb.Key.PollutantID) + "\t" + strconv.Itoa(fb.Key.ProcessID) + "\t" + strconv.Itoa(fb.Key.SourceTypeID) + "\t" + strconv.Itoa(fb.Key.RegClassID) + "\t" + + strconv.Itoa(fb.Key.FuelTypeID) + "\t" + strconv.Itoa(fb.Key.ModelYearID) + "\t" + strconv.Itoa(fb.Key.RoadTypeID) + "\t" + fb.Key.SCC + "\t" + + strconv.Itoa(fb.Key.EngTechID) + "\t" + strconv.Itoa(fb.Key.SectorID) + "\t" + strconv.Itoa(fb.Key.HPID) + "\t" + + strconv.FormatFloat(e.EmissionQuant,'e',-1,64) + "\t" + strconv.FormatFloat(e.EmissionRate,'e',-1,64) + "\t" + + strconv.Itoa(e.FuelSubTypeID) + "\t" + strconv.Itoa(e.FuelFormulationID) + "\n" + detailOutputFile.WriteString(line) + atomic.AddInt32(&detailLinesWritten,1) + } + } + // Write anything not already written. + // Always write data when it needs to be split by fuel subtype. Do this because input + // data is by fuel type only, not fuel subtype, so even the fuel subtype split is new + // information that should be written. + if !fb.HasBeenWritten || fb.TotalsByFuelSubType != nil { + /* + 0,1: MOVESRunID,iterationID, + 2,3,4,5: yearID,monthID,dayID,hourID, + 6,7,8,9: stateID,countyID,zoneID,linkID, + 10,11: pollutantID,processID, + 12,13: sourceTypeID,regClassID, + 14,15: fuelTypeID,modelYearID, + 16,17: roadTypeID,SCC, + 18,19,20: engTechID,sectorID,hpID, + 21,22: emissionQuant,emissionRate + [23: fuelSubTypeID] + */ + linePrefix := "0\t0\t" + + strconv.Itoa(fb.Key.YearID) + "\t" + strconv.Itoa(fb.Key.MonthID) + "\t" + strconv.Itoa(fb.Key.DayID) + "\t" + strconv.Itoa(fb.Key.HourID) + "\t" + + strconv.Itoa(fb.Key.StateID) + "\t" + strconv.Itoa(fb.Key.CountyID) + "\t" + strconv.Itoa(fb.Key.ZoneID) + "\t" + strconv.Itoa(fb.Key.LinkID) + "\t" + + strconv.Itoa(fb.Key.PollutantID) + "\t" + strconv.Itoa(fb.Key.ProcessID) + "\t" + strconv.Itoa(fb.Key.SourceTypeID) + "\t" + strconv.Itoa(fb.Key.RegClassID) + "\t" + + strconv.Itoa(fb.Key.FuelTypeID) + "\t" + strconv.Itoa(fb.Key.ModelYearID) + "\t" + strconv.Itoa(fb.Key.RoadTypeID) + "\t" + fb.Key.SCC + "\t" + + strconv.Itoa(fb.Key.EngTechID) + "\t" + strconv.Itoa(fb.Key.SectorID) + "\t" + strconv.Itoa(fb.Key.HPID) + "\t" + if fb.TotalsByFuelSubType != nil { + for fuelSubTypeID, fst := range fb.TotalsByFuelSubType { + line := linePrefix + + strconv.FormatFloat(fst.TotalEmissionQuant,'e',-1,64) + "\t" + strconv.FormatFloat(fst.TotalEmissionRate,'e',-1,64) + "\t" + + strconv.Itoa(fuelSubTypeID) + "\n" + outputFile.WriteString(line) + atomic.AddInt32(&linesWritten,1) + } + } else { + line := linePrefix + + strconv.FormatFloat(fb.TotalEmissionQuant,'e',-1,64) + "\t" + strconv.FormatFloat(fb.TotalEmissionRate,'e',-1,64) + "\n" + outputFile.WriteString(line) + atomic.AddInt32(&linesWritten,1) + } + } + } + b.Recycle() + globalevents.Send(globalevents.MWOWriteEnd) + } +} + +func NeedsModule(moduleName string) bool { + return NeededModules[moduleName] +} diff --git a/calc/go/src/mwo/mworeader.go b/calc/go/src/mwo/mworeader.go new file mode 100644 index 0000000..6336f46 --- /dev/null +++ b/calc/go/src/mwo/mworeader.go @@ -0,0 +1,512 @@ +package mwo + +import ( + "bufio" + "io" + "os" + "globalevents" + "fmt" + "strings" + "parse" +) + +func ReadModules() { + parse.ReadAndParseFile("extmodules", func(parts []string) { + // moduleName + if len(parts) < 1 { + return + } + moduleName := parse.GetString(parts[0]) + NeededModules[moduleName] = true + fmt.Println("Needs module",moduleName) + }) +} + +func StartReading(fileName string, mwoBlocks chan *MWOBlock) { + // Read the fuel supply information and supporting data + readSupportTables() + readFuelTables() + readFuelSupply() + + go func() { + // Read the MOVESWorkerOutput information, splitting each entry + // by the fuel supply market share. + readMOVESWorkerOutput(fileName, mwoBlocks) + }() +} + +func readSupportTables() { + parse.ReadAndParseFile("extagecategory", func(parts []string) { + // ageID ageGroupID + if len(parts) < 2 { + return + } + ageID := parse.GetInt(parts[0]) + ageGroupID := parse.GetInt(parts[1]) + AgeGroups[ageID] = ageGroupID + }) + + parse.ReadAndParseFile("extpollutantprocess", func(parts []string) { + // polProcessID + if len(parts) < 1 { + return + } + polProcessID := parse.GetInt(parts[0]) + NeededPolProcessIDs[polProcessID] = true + }) + + if _, err := os.Stat("extnrscc"); err == nil { + parse.ReadAndParseFile("extnrscc", func(parts []string) { + // SCC, NREquipTypeID, fuelTypeID + if len(parts) < 3 { + return + } + e := new(NRSCCDetail) + e.SCC = parse.GetString(parts[0]) + e.NREquipTypeID = parse.GetInt(parts[1]) + e.FuelTypeID = parse.GetInt(parts[2]) + NRSCC[e.SCC] = e + }) + } + + if _, err := os.Stat("extnrhpcategory"); err == nil { + parse.ReadAndParseFile("extnrhpcategory", func(parts []string) { + // nrhprangebinid, engtechid, nrhpcategory + if len(parts) < 3 { + return + } + e := NRHPCategoryKey{parse.GetInt(parts[0]),parse.GetInt(parts[1])} + hpCategory := parse.GetString(parts[2])[0] + NRHPCategory[e] = hpCategory + }) + } + + +} + +func readFuelTables() { + if _, err := os.Stat("extfueltype"); err == nil { + parse.ReadAndParseFile("extfueltype", func(parts []string) { + // fuelTypeID, humidityCorrectionCoeff, fuelDensity, subjectToEvapCalculations + if len(parts) < 4 { + return + } + e := new(FuelType) + e.FuelTypeID = parse.GetInt(parts[0]) + e.HumidityCorrectionCoeff = parse.GetFloat(parts[1]) + e.FuelDensity = parse.GetFloat(parts[2]) + e.SubjectToEvapCalculations = parse.GetBool(parts[3]) + FuelTypes[e.FuelTypeID] = e + }) + } + + if _, err := os.Stat("extnrfueltype"); err == nil { + parse.ReadAndParseFile("extnrfueltype", func(parts []string) { + // fuelTypeID, humidityCorrectionCoeff, fuelDensity, subjectToEvapCalculations + if len(parts) < 4 { + return + } + e := new(FuelType) + e.FuelTypeID = parse.GetInt(parts[0]) + e.HumidityCorrectionCoeff = parse.GetFloat(parts[1]) + e.FuelDensity = parse.GetFloat(parts[2]) + e.SubjectToEvapCalculations = parse.GetBool(parts[3]) + NRFuelTypes[e.FuelTypeID] = e + }) + } + + if _, err := os.Stat("extfuelsubtype"); err == nil { + parse.ReadAndParseFile("extfuelsubtype", func(parts []string) { + // fuelSubtypeID, fuelTypeID, fuelSubtypePetroleumFraction, fuelSubtypeFossilFraction, + // carbonContent, oxidationFraction, energyContent + if len(parts) < 7 { + return + } + e := new(FuelSubType) + e.FuelSubTypeID = parse.GetInt(parts[0]) + e.FuelTypeID = parse.GetInt(parts[1]) + e.FuelSubtypePetroleumFraction = parse.GetFloat(parts[2]) + e.FuelSubtypeFossilFraction = parse.GetFloat(parts[3]) + e.CarbonContent = parse.GetFloat(parts[4]) + e.OxidationFraction = parse.GetFloat(parts[5]) + e.EnergyContent = parse.GetFloat(parts[6]) + + e.FuelType = FuelTypes[e.FuelTypeID] + FuelSubTypes[e.FuelSubTypeID] = e + }) + } + + if _, err := os.Stat("extnrfuelsubtype"); err == nil { + parse.ReadAndParseFile("extnrfuelsubtype", func(parts []string) { + // fuelSubtypeID, fuelTypeID, fuelSubtypePetroleumFraction, fuelSubtypeFossilFraction, + // carbonContent, oxidationFraction, energyContent + if len(parts) < 7 { + return + } + e := new(FuelSubType) + e.FuelSubTypeID = parse.GetInt(parts[0]) + e.FuelTypeID = parse.GetInt(parts[1]) + e.FuelSubtypePetroleumFraction = parse.GetFloat(parts[2]) + e.FuelSubtypeFossilFraction = parse.GetFloat(parts[3]) + e.CarbonContent = parse.GetFloat(parts[4]) + e.OxidationFraction = parse.GetFloat(parts[5]) + e.EnergyContent = parse.GetFloat(parts[6]) + + e.FuelType = NRFuelTypes[e.FuelTypeID] + if e.FuelType == nil { + e.FuelType = FuelTypes[e.FuelTypeID] + } + NRFuelSubTypes[e.FuelSubTypeID] = e + }) + } + + if _, err := os.Stat("extfuelformulation"); err == nil { + parse.ReadAndParseFile("extfuelformulation", func(parts []string) { + // 0,1: fuelFormulationID, fuelSubtypeID, + // 2,3: RVP, sulfurLevel, + // 4-7: ETOHVolume, MTBEVolume, ETBEVolume, TAMEVolume, + // 8-10: aromaticContent, olefinContent, benzeneContent, + // 11,12: e200, e300, + // 13-16: volToWtPercentOxy, BioDieselEsterVolume, CetaneIndex, PAHContent, + // 17,18: T50, T90 + if len(parts) < 19 { + return + } + e := new(FuelFormulation) + + e.FuelFormulationID = parse.GetInt(parts[0]) + e.FuelSubTypeID = parse.GetInt(parts[1]) + e.RVP = parse.GetFloat(parts[2]) + e.SulfurLevel = parse.GetFloat(parts[3]) + e.ETOHVolume = parse.GetFloat(parts[4]) + e.MTBEVolume = parse.GetFloat(parts[5]) + e.ETBEVolume = parse.GetFloat(parts[6]) + e.TAMEVolume = parse.GetFloat(parts[7]) + e.AromaticContent = parse.GetFloat(parts[8]) + e.OlefinContent = parse.GetFloat(parts[9]) + e.BenzeneContent = parse.GetFloat(parts[10]) + e.E200 = parse.GetFloat(parts[11]) + e.E300 = parse.GetFloat(parts[12]) + e.VolToWtPercentOxy = parse.GetFloat(parts[13]) + e.BioDieselEsterVolume = parse.GetFloat(parts[14]) + e.CetaneIndex = parse.GetFloat(parts[15]) + e.PAHContent = parse.GetFloat(parts[16]) + e.T50 = parse.GetFloat(parts[17]) + e.T90 = parse.GetFloat(parts[18]) + + e.FuelSubType = FuelSubTypes[e.FuelSubTypeID] + if e.FuelSubType != nil { + e.FuelTypeID = e.FuelSubType.FuelTypeID + } + FuelFormulations[e.FuelFormulationID] = e + //fmt.Println("FuelFormulation:",e) + }) + } + + if _, err := os.Stat("extnrfuelformulation"); err == nil { + parse.ReadAndParseFile("extnrfuelformulation", func(parts []string) { + // 0,1: fuelFormulationID, fuelSubtypeID, + // 2,3: RVP, sulfurLevel, + // 4-7: ETOHVolume, MTBEVolume, ETBEVolume, TAMEVolume, + // 8-10: aromaticContent, olefinContent, benzeneContent, + // 11,12: e200, e300, + // 13-16: volToWtPercentOxy, BioDieselEsterVolume, CetaneIndex, PAHContent, + // 17,18: T50, T90 + if len(parts) < 19 { + return + } + fuelFormulationID := parse.GetInt(parts[0]) + if FuelFormulations[fuelFormulationID] != nil { + // The fuel formulation has already been loaded, so skip it. + return + } + + e := new(FuelFormulation) + + e.FuelFormulationID = fuelFormulationID + e.FuelSubTypeID = parse.GetInt(parts[1]) + e.RVP = parse.GetFloat(parts[2]) + e.SulfurLevel = parse.GetFloat(parts[3]) + e.ETOHVolume = parse.GetFloat(parts[4]) + e.MTBEVolume = parse.GetFloat(parts[5]) + e.ETBEVolume = parse.GetFloat(parts[6]) + e.TAMEVolume = parse.GetFloat(parts[7]) + e.AromaticContent = parse.GetFloat(parts[8]) + e.OlefinContent = parse.GetFloat(parts[9]) + e.BenzeneContent = parse.GetFloat(parts[10]) + e.E200 = parse.GetFloat(parts[11]) + e.E300 = parse.GetFloat(parts[12]) + e.VolToWtPercentOxy = parse.GetFloat(parts[13]) + e.BioDieselEsterVolume = parse.GetFloat(parts[14]) + e.CetaneIndex = parse.GetFloat(parts[15]) + e.PAHContent = parse.GetFloat(parts[16]) + e.T50 = parse.GetFloat(parts[17]) + e.T90 = parse.GetFloat(parts[18]) + + e.FuelSubType = NRFuelSubTypes[e.FuelSubTypeID] + if e.FuelSubType == nil { + e.FuelSubType = FuelSubTypes[e.FuelSubTypeID] + } + if e.FuelSubType != nil { + e.FuelTypeID = e.FuelSubType.FuelTypeID + } + FuelFormulations[e.FuelFormulationID] = e + //fmt.Println("FuelFormulation:",e) + }) + } + + fmt.Printf("Loaded %d fuel types, %d fuel subtypes, %d fuelformulations\n",len(FuelTypes), len(FuelSubTypes), len(FuelFormulations)) +} + +func readFuelSupply() { + /* Format: + countyID yearID monthID fuelTypeID fuelSubTypeID fuelFormulationID marketShare + + cache select ##context.iterLocation.countyRecordID##, ##context.year##, ##context.monthID##, + fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare + into outfile '##ExtFuelSupply##' + from year + inner join fuelSupply fs on (fs.fuelYearID=year.fuelYearID) + inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID) + inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID) + inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) + where yearID = ##context.year## + and fs.fuelRegionID = ##context.fuelRegionID## + and moay.monthID = ##context.monthID## + and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##); + + cache select ##context.iterLocation.countyRecordID##, ##context.year##, ##context.monthID##, + fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare + into outfile '##ExtNRFuelSupply##' + from nrFuelSupply fs + inner join monthOfAnyYear m using (monthGroupID) + inner join nrFuelYearRange fy using (fuelYearRangeID) + inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID) + inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) + where fs.countyID = ##context.iterLocation.countyRecordID## + and m.monthID = ##context.monthID## + and fy.nrFuelStartYear <= ##context.year## + and fy.nrFuelEndYear >= ##context.year## + and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##); + */ + maxEntriesPerFuel := 0 + + if _, err := os.Stat("extfuelsupply"); err == nil { + parse.ReadAndParseFile("extfuelsupply", func(parts []string) { + if len(parts) < 7 { + return + } + // [countyID yearID monthID fuelTypeID] = [fuelSubTypeID fuelFormulationID marketShare] + key := FuelSupplyKey{parse.GetInt(parts[0]),parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3])} + value := new(FuelSupplyDetail) + value.FuelSubTypeID = parse.GetInt(parts[4]) + value.FuelFormulationID = parse.GetInt(parts[5]) + value.MarketShare = parse.GetFloat(parts[6]) + value.FuelFormulation = FuelFormulations[value.FuelFormulationID] + //fmt.Println("FuelSupplyDetail:",value) + if value.FuelFormulation == nil { + return + } + + values := FuelSupply[key] + if values == nil { + values = make([]*FuelSupplyDetail,0,100) + } + values = append(values,value) + FuelSupply[key] = values + if len(values) > maxEntriesPerFuel { + maxEntriesPerFuel = len(values) + } + }) + } + + if _, err := os.Stat("extnrfuelsupply"); err == nil { + parse.ReadAndParseFile("extnrfuelsupply", func(parts []string) { + if len(parts) < 7 { + return + } + // [countyID yearID monthID fuelTypeID] = [fuelSubTypeID fuelFormulationID marketShare] + key := FuelSupplyKey{parse.GetInt(parts[0]),parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3])} + value := new(FuelSupplyDetail) + value.FuelSubTypeID = parse.GetInt(parts[4]) + value.FuelFormulationID = parse.GetInt(parts[5]) + value.MarketShare = parse.GetFloat(parts[6]) + value.FuelFormulation = FuelFormulations[value.FuelFormulationID] + //fmt.Println("FuelSupplyDetail:",value) + if value.FuelFormulation == nil { + return + } + + values := NRFuelSupply[key] + if values == nil { + values = make([]*FuelSupplyDetail,0,100) + } + values = append(values,value) + NRFuelSupply[key] = values + if len(values) > maxEntriesPerFuel { + maxEntriesPerFuel = len(values) + } + }) + } + + if maxEntriesPerFuel > 0 { + defaultEmissionsPerFuelBlock = maxEntriesPerFuel + } + + fmt.Printf("Loaded %d fuel supply entries, %d Nonroad fuel supply entries, maxEntriesPerFuel = %d\n", len(FuelSupply), len(NRFuelSupply), maxEntriesPerFuel) +} + +func readMOVESWorkerOutput(fileName string, mwoBlocks chan *MWOBlock) { + defer globalevents.Send(globalevents.MWOReadEnd) + + totalLinesRead := 0 + totalLineSetsRead := 0 + + const linesPerSet = 25 // was 100 + const lineSetCount = 100 + + lines := make(chan []string,lineSetCount) + linesReturn := make(chan []string,lineSetCount) + parseTokens := make(chan int,lineSetCount) + parseTokensSent := 0 + + for i:=0; i 0 { + totalLinesRead++ + + if currentLineSet == nil { + currentLineSet = <- linesReturn + // Clear all items from the array + currentLineSet = currentLineSet[0:0] + } + currentLineSet = append(currentLineSet,inputString) + if len(currentLineSet) >= linesPerSet { + parseTokensSent++ + lines <- currentLineSet + currentLineSet = nil + totalLineSetsRead++ + } + // Drain the parse responses but don't wait for parsing + for parseTokensSent > 0 { + select { + case <- parseTokens : + parseTokensSent-- + default: + break + } + } + } + } + if currentLineSet != nil && len(currentLineSet) > 0 { + parseTokensSent++ + lines <- currentLineSet + currentLineSet = nil + totalLineSetsRead++ + } + close(lines) + // Wait for all parsing to complete + for parseTokensSent > 0 { + <- parseTokens + parseTokensSent-- + } + close(linesReturn) + close(parseTokens) + + fmt.Printf("MOVESWorkerOutput had %d lines, parsed as %d sets.\n",totalLinesRead,totalLineSetsRead) +} + +func parseLines(lines chan []string, linesReturn chan []string, mwoBlocks chan *MWOBlock, parseTokens chan int) { + for { + ls, ok := <- lines // get a line set + if !ok { + break + } + b := New() // get a blank mwoBlock + for _, line := range ls { + /* + 0,1: MOVESRunID,iterationID, + 2,3,4,5: yearID,monthID,dayID,hourID, + 6,7,8,9: stateID,countyID,zoneID,linkID, + 10,11: pollutantID,processID, + 12,13: sourceTypeID,regClassID, + 14,15: fuelTypeID,modelYearID, + 16,17: roadTypeID,SCC, + 18,19,20: engTechID,sectorID,hpID, + 21,22: emissionQuant,emissionRate + */ + parts := strings.Split(line,"\t") + if parts == nil || len(parts) < 23 { + continue + } + // fmt.Println(line) + fb := b.Add() + fb.Key.YearID = parse.GetInt(parts[2]) + fb.Key.MonthID = parse.GetInt(parts[3]) + fb.Key.DayID = parse.GetInt(parts[4]) + fb.Key.HourID = parse.GetInt(parts[5]) + fb.Key.StateID = parse.GetInt(parts[6]) + fb.Key.CountyID = parse.GetInt(parts[7]) + fb.Key.ZoneID = parse.GetInt(parts[8]) + fb.Key.LinkID = parse.GetInt(parts[9]) + fb.Key.RoadTypeID = parse.GetInt(parts[16]) + fb.Key.SourceTypeID = parse.GetInt(parts[12]) + fb.Key.RegClassID = parse.GetInt(parts[13]) + fb.Key.FuelTypeID = parse.GetInt(parts[14]) + fb.Key.ModelYearID = parse.GetInt(parts[15]) + fb.Key.SCC = parse.GetString(parts[17]) + fb.Key.EngTechID = parse.GetInt(parts[18]) + fb.Key.SectorID = parse.GetInt(parts[19]) + fb.Key.HPID = parse.GetInt(parts[20]) + fb.Key.PollutantID = parse.GetInt(parts[10]) + fb.Key.ProcessID = parse.GetInt(parts[11]) + fb.Key.CalcIDs() + fb.SetAsInput() + + emissionQuant := parse.GetFloat(parts[21]) + emissionRate := parse.GetFloat(parts[22]) + + if fb.Key.SectorID > 0 { // if Nonroad, then split using Nonroad fuel supply... + fsDetail := NRFuelSupply[FuelSupplyKey{fb.Key.CountyID, fb.Key.YearID, fb.Key.MonthID, fb.Key.FuelTypeID}] + if fsDetail == nil { + continue + } + for _, fsd := range fsDetail { + fb.Add(fsd.FuelSubTypeID,fsd.FuelFormulationID,emissionQuant*fsd.MarketShare,emissionRate*fsd.MarketShare) + } + } else { // if onroad, split using onroad fuel supply... + fsDetail := FuelSupply[FuelSupplyKey{fb.Key.CountyID, fb.Key.YearID, fb.Key.MonthID, fb.Key.FuelTypeID}] + if fsDetail == nil { + continue + } + for _, fsd := range fsDetail { + fb.Add(fsd.FuelSubTypeID,fsd.FuelFormulationID,emissionQuant*fsd.MarketShare,emissionRate*fsd.MarketShare) + } + } + } + globalevents.Send(globalevents.MWOBlockBegin) + mwoBlocks <- b // queue the newly parsed block + linesReturn <- ls // recycle the line set + parseTokens <- 1 // signal parsing is complete for one line set + } +} diff --git a/calc/go/src/nrairtoxics/nrairtoxics.go b/calc/go/src/nrairtoxics/nrairtoxics.go new file mode 100644 index 0000000..4e3ceac --- /dev/null +++ b/calc/go/src/nrairtoxics/nrairtoxics.go @@ -0,0 +1,479 @@ +package nrairtoxics + +import ( + "fmt" + "os" + "mwo" + "parse" +) + +/** + * @algorithm + * @owner Nonroad Air toxics Calculator + * @calculator +**/ + +type NRATRatioKey struct { + processID, engTechID, fuelSubTypeID int + nrHPCategory uint8 +} + +type NRATRatioDetail struct { + pollutantID, polProcessID int + atRatio float64 +} + +var NRATRatio map[NRATRatioKey][]*NRATRatioDetail +var NRATRatioProcesses map[int]bool + +type NRProcFuelEngHPKey struct { + processID, fuelTypeID, engTechID int + nrHPCategory uint8 +} + +type NRProcFuelEngHPDetail struct { + pollutantID, polProcessID int + atRatio float64 +} + +var NRPAHGasRatio map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail +var NRPAHGasRatioProcesses map[int]bool + +var NRPAHParticleRatio map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail +var NRPAHParticleRatioProcesses map[int]bool + +var NRDioxinEmissionRate map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail +var NRDioxinEmissionRateProcesses map[int]bool + +var NRMetalEmissionRate map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail +var NRMetalEmissionRateProcesses map[int]bool + +var NRIntegratedSpecies map[int]bool // keyed by pollutantID, data is true when pollutantID must be subtracted from NMOG (80) to make NonHAPTOG (88) + +func init() { + NRATRatio = make(map[NRATRatioKey][]*NRATRatioDetail) + NRATRatioProcesses = make(map[int]bool) + + NRPAHGasRatio = make(map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail) + NRPAHGasRatioProcesses = make(map[int]bool) + + NRPAHParticleRatio = make(map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail) + NRPAHParticleRatioProcesses = make(map[int]bool) + + NRDioxinEmissionRate = make(map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail) + NRDioxinEmissionRateProcesses = make(map[int]bool) + + NRMetalEmissionRate = make(map[NRProcFuelEngHPKey][]*NRProcFuelEngHPDetail) + NRMetalEmissionRateProcesses = make(map[int]bool) + + NRIntegratedSpecies = make(map[int]bool) +} + +func StartSetup() { + // NRATRatio + if _, err := os.Stat("nratratio"); err == nil { + parse.ReadAndParseFile("nratratio", func(parts []string) { + // pollutantID, processID, engTechID, fuelSubtypeID, nrHPCategory, atRatio + if len(parts) < 6 { + return + } + k := NRATRatioKey{parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetString(parts[4])[0]} + v := new(NRATRatioDetail) + v.pollutantID = parse.GetInt(parts[0]) + v.polProcessID = v.pollutantID * 100 + k.processID + v.atRatio = parse.GetFloat(parts[5]) + + values := NRATRatio[k] + if values == nil { + values = make([]*NRATRatioDetail,0,20) + } + values = append(values,v) + NRATRatio[k] = values + + NRATRatioProcesses[k.processID] = true + }) + } + fmt.Printf("Sizes: NRATRatio: %d, NRATRatioProcesses: %d\n",len(NRATRatio),len(NRATRatioProcesses)) + + // NRPAHGasRatio + if _, err := os.Stat("nrpahgasratio"); err == nil { + parse.ReadAndParseFile("nrpahgasratio", func(parts []string) { + // pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, atratio + if len(parts) < 6 { + return + } + k := NRProcFuelEngHPKey{parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetString(parts[4])[0]} + v := new(NRProcFuelEngHPDetail) + v.pollutantID = parse.GetInt(parts[0]) + v.polProcessID = v.pollutantID * 100 + k.processID + v.atRatio = parse.GetFloat(parts[5]) + + values := NRPAHGasRatio[k] + if values == nil { + values = make([]*NRProcFuelEngHPDetail,0,20) + } + values = append(values,v) + NRPAHGasRatio[k] = values + + NRPAHGasRatioProcesses[k.processID] = true + }) + } + fmt.Printf("Sizes: NRPAHGasRatio: %d, NRPAHGasRatioProcesses: %d\n",len(NRPAHGasRatio),len(NRPAHGasRatioProcesses)) + + // NRPAHParticleRatio + if _, err := os.Stat("nrpahparticleratio"); err == nil { + parse.ReadAndParseFile("nrpahparticleratio", func(parts []string) { + // pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, atratio + if len(parts) < 6 { + return + } + k := NRProcFuelEngHPKey{parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetString(parts[4])[0]} + v := new(NRProcFuelEngHPDetail) + v.pollutantID = parse.GetInt(parts[0]) + v.polProcessID = v.pollutantID * 100 + k.processID + v.atRatio = parse.GetFloat(parts[5]) + + values := NRPAHParticleRatio[k] + if values == nil { + values = make([]*NRProcFuelEngHPDetail,0,20) + } + values = append(values,v) + NRPAHParticleRatio[k] = values + + NRPAHParticleRatioProcesses[k.processID] = true + }) + } + fmt.Printf("Sizes: NRPAHParticleRatio: %d, NRPAHParticleRatioProcesses: %d\n",len(NRPAHParticleRatio),len(NRPAHParticleRatioProcesses)) + + // NRDioxinEmissionRate + if _, err := os.Stat("nrdioxinemissionrate"); err == nil { + parse.ReadAndParseFile("nrdioxinemissionrate", func(parts []string) { + // pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, meanBaseRate + if len(parts) < 6 { + return + } + k := NRProcFuelEngHPKey{parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetString(parts[4])[0]} + v := new(NRProcFuelEngHPDetail) + v.pollutantID = parse.GetInt(parts[0]) + v.polProcessID = v.pollutantID * 100 + k.processID + v.atRatio = parse.GetFloat(parts[5]) + + values := NRDioxinEmissionRate[k] + if values == nil { + values = make([]*NRProcFuelEngHPDetail,0,20) + } + values = append(values,v) + NRDioxinEmissionRate[k] = values + + NRDioxinEmissionRateProcesses[k.processID] = true + }) + } + fmt.Printf("Sizes: NRDioxinEmissionRate: %d, NRDioxinEmissionRateProcesses: %d\n",len(NRDioxinEmissionRate),len(NRDioxinEmissionRateProcesses)) + + // NRMetalEmissionRate + if _, err := os.Stat("nrmetalemissionrate"); err == nil { + parse.ReadAndParseFile("nrmetalemissionrate", func(parts []string) { + // pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, meanBaseRate + if len(parts) < 6 { + return + } + k := NRProcFuelEngHPKey{parse.GetInt(parts[1]),parse.GetInt(parts[2]),parse.GetInt(parts[3]),parse.GetString(parts[4])[0]} + v := new(NRProcFuelEngHPDetail) + v.pollutantID = parse.GetInt(parts[0]) + v.polProcessID = v.pollutantID * 100 + k.processID + v.atRatio = parse.GetFloat(parts[5]) + + values := NRMetalEmissionRate[k] + if values == nil { + values = make([]*NRProcFuelEngHPDetail,0,20) + } + values = append(values,v) + NRMetalEmissionRate[k] = values + + NRMetalEmissionRateProcesses[k.processID] = true + }) + } + fmt.Printf("Sizes: NRMetalEmissionRate: %d, NRMetalEmissionRateProcesses: %d\n",len(NRMetalEmissionRate),len(NRMetalEmissionRateProcesses)) + + // NRIntegratedSpecies + if _, err := os.Stat("nrintegratedspecies"); err == nil { + parse.ReadAndParseFile("nrintegratedspecies", func(parts []string) { + // pollutantID + if len(parts) < 1 { + return + } + pollutantID := parse.GetInt(parts[0]) + NRIntegratedSpecies[pollutantID] = true + }) + } + fmt.Printf("Sizes: NRIntegratedSpecies: %d\n",len(NRIntegratedSpecies)) +} + +func FinishSetup() { + // There are no asynchronous reads, so nothing to do here. + + // Done + fmt.Println("NRAirToxics finished reading setup files.") +} + +func StartCalculating(howManyThreads int, inputBlocks chan *mwo.MWOBlock, outputBlocks chan *mwo.MWOBlock) { + for i := 0; i 0 { + parts := strings.Split(inputString,"\t") + if parts != nil { + parseFunc(parts) + } + } + } + //fmt.Println("Done reading from file: ",fileName) +} diff --git a/database/AVFTImporter.sql b/database/AVFTImporter.sql new file mode 100644 index 0000000..89beec9 --- /dev/null +++ b/database/AVFTImporter.sql @@ -0,0 +1,50 @@ +-- Author Wesley Faler +-- Author Don Smith +-- Version 2011-08-17 + +drop procedure if exists spCheckAVFTImporter; + +BeginBlock +create procedure spCheckAVFTImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + insert into importTempMessages (message) + select concat('ERROR: source type ',sourceTypeID,', model year ',modelYearID,', fuel engine fraction is more than 1.0, being ',round(sum(fuelEngFraction),4)) + from avft + group by sourceTypeID, modelYearID + having round(sum(fuelEngFraction),4) > 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: source type ',sourceTypeID,', model year ',modelYearID,', fuel ',fuelTypeID,', engine ',engTechID,', fuel engine fraction is less than 0.0, being ',round(fuelEngFraction,4)) + from avft + where round(fuelEngFraction,4) < 0.0000; + + insert into importTempMessages (message) + select concat('WARNING: source type ',sourceTypeID,', model year ',modelYearID,', fuel engine fraction is not 1.0 but instead ',round(sum(fuelEngFraction),4)) + from avft + group by sourceTypeID, modelYearID + having round(sum(fuelEngFraction),4) < 1.0000 and round(sum(fuelEngFraction),4) > 0.0000; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckAVFTImporter(); +drop procedure if exists spCheckAVFTImporter; diff --git a/database/ActivityCalculator.sql b/database/ActivityCalculator.sql new file mode 100644 index 0000000..c07584a --- /dev/null +++ b/database/ActivityCalculator.sql @@ -0,0 +1,885 @@ +-- Version 2014-05-19 +-- Author Wesley Faler + +-- @algorithm +-- @owner Activity Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.link##; +TRUNCATE TABLE link; + +##create.sourceUseType##; +TRUNCATE TABLE sourceUseType; + +##create.runSpecSourceType##; +TRUNCATE TABLE runSpecSourceType; + +##create.runSpecSourceFuelType##; +TRUNCATE TABLE runSpecSourceFuelType; + +-- The sections are listed here according to Activty Type, not alphabetically +-- Section SourceHours +##create.SourceHours##; +TRUNCATE TABLE SourceHours; +-- End Section SourceHours + +-- Section ExtendedIdleHours +##create.extendedIdleHours##; +TRUNCATE TABLE extendedIdleHours; +-- End Section ExtendedIdleHours + +-- Section hotellingHours +##create.hotellingHours##; +TRUNCATE TABLE hotellingHours; + +##create.hotellingActivityDistribution##; +TRUNCATE TABLE hotellingActivityDistribution; +-- End Section hotellingHours + +-- Section SHO +##create.SHO##; +TRUNCATE TABLE SHO; +-- End Section SHO + +-- Section SHP +##create.SHP##; +TRUNCATE TABLE SHP; +-- End Section SHP + +-- Section Population + +-- Section NonProjectDomain +##create.sourceTypeAgePopulation##; +TRUNCATE TABLE sourceTypeAgePopulation; + +##create.fractionWithinHPMSVType##; +TRUNCATE TABLE fractionWithinHPMSVType; + +##create.analysisYearVMT##; +TRUNCATE TABLE analysisYearVMT; + +##create.roadTypeDistribution##; +TRUNCATE TABLE roadTypeDistribution; + +##create.zoneRoadType##; +TRUNCATE TABLE zoneRoadType; +-- End Section NonProjectDomain + +-- Section ProjectDomain +##create.offNetworkLink##; +TRUNCATE TABLE offNetworkLink; + +##create.linkSourceTypeHour##; +TRUNCATE TABLE linkSourceTypeHour; + +##create.sourceTypeAgeDistribution##; +TRUNCATE TABLE sourceTypeAgeDistribution; +-- End Section ProjectDomain + +-- End Section Population + +-- Section Starts +##create.Starts##; +TRUNCATE TABLE Starts; +-- End Section Starts + +create table if not exists sourceTypeFuelFraction ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + fuelFraction double not null, + primary key (sourceTypeID, modelYearID, fuelTypeID), + key (modelYearID, sourceTypeID, fuelTypeID), + key (modelYearID, fuelTypeID, sourceTypeID) +); +truncate table sourceTypeFuelFraction; + +-- Section WithRegClassID +##create.RegClassSourceTypeFraction##; +TRUNCATE TABLE RegClassSourceTypeFraction; +-- End Section WithRegClassID + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +SELECT * +INTO OUTFILE '##HourDay##' +FROM HourDay; + +-- Select all links in the current zone. This is required population calculations in Project domain. +-- Link is further filtered where needed. +SELECT * +INTO OUTFILE '##link##' +FROM link +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT * +INTO OUTFILE '##sourceUseType##' +FROM sourceUseType; + +SELECT * +INTO OUTFILE '##runSpecSourceType##' +FROM runSpecSourceType; + +SELECT * +INTO OUTFILE '##runSpecSourceFuelType##' +FROM runSpecSourceFuelType; + +-- Section SourceHours +SELECT SourceHours.* +INTO OUTFILE '##SourceHours##' +FROM SourceHours +INNER JOIN RunSpecMonth USING (monthID) +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; +-- End Section SourceHours + +-- Section ExtendedIdleHours +SELECT extendedIdleHours.* +INTO OUTFILE '##ExtendedIdleHours##' +FROM extendedIdleHours +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section ExtendedIdleHours + +-- Section hotellingHours +SELECT hotellingHours.* +INTO OUTFILE '##hotellingHours##' +FROM hotellingHours +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; + +cache select * +into outfile '##hotellingActivityDistribution##' +from hotellingActivityDistribution +where opModeID <> 200 +and beginModelYearID <= ##context.year## +and endModelYearID >= ##context.year## - 30; +-- End Section hotellingHours + +-- Section SHO +SELECT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO +INNER JOIN RunSpecMonth USING (monthID) +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; +-- End Section SHO + +-- Section SHP +SELECT SHP.* +INTO OUTFILE '##SHP##' +FROM SHP +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section SHP + +-- Section Population + +-- Section NonProjectDomain +cache SELECT * +INTO OUTFILE '##sourceTypeAgePopulation##' +FROM sourceTypeAgePopulation +WHERE yearID = ##context.year##; + +cache SELECT * +INTO OUTFILE '##fractionWithinHPMSVType##' +FROM fractionWithinHPMSVType +WHERE yearID = ##context.year##; + +cache SELECT * +INTO OUTFILE '##analysisYearVMT##' +FROM analysisYearVMT +WHERE yearID = ##context.year##; + +cache SELECT * +INTO OUTFILE '##roadTypeDistribution##' +FROM roadTypeDistribution; + +-- Population requires roads that do not have separate ramps. +cache select zoneID, + case when roadTypeID=8 then 2 + when roadTypeID=9 then 4 + else roadTypeID + end as roadTypeID, + sum(SHOAllocFactor) as SHOAllocFactor +into outfile '##zoneRoadType##' +from zoneRoadType +where zoneID=##context.iterLocation.zoneRecordID## +group by case when roadTypeID=8 then 2 + when roadTypeID=9 then 4 + else roadTypeID +end; +-- End Section NonProjectDomain + +-- Section ProjectDomain +cache SELECT * +INTO OUTFILE '##offNetworkLink##' +FROM offNetworkLink; + +cache SELECT linkSourceTypeHour.* +INTO OUTFILE '##linkSourceTypeHour##' +FROM linkSourceTypeHour +INNER JOIN link on (link.linkID = linkSourceTypeHour.linkID) +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT sourceTypeAgeDistribution.* +INTO OUTFILE '##sourceTypeAgeDistribution##' +FROM sourceTypeAgeDistribution +INNER JOIN RunSpecSourceType using (sourceTypeID) +WHERE yearID = ##context.year##; +-- End Section ProjectDomain + +-- End Section Population + +-- Section Starts +SELECT Starts.* INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section Starts + +-- Section createSourceTypeFuelFraction +drop table if exists sourceTypeFuelFraction; +drop table if exists sourceTypeFuelFractionTemp; +drop table if exists sourceTypeFuelFractionTotal; + +create table if not exists sourceTypeFuelFraction ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + fuelFraction double not null, + primary key (sourceTypeID, modelYearID, fuelTypeID), + key (modelYearID, sourceTypeID, fuelTypeID), + key (modelYearID, fuelTypeID, sourceTypeID) +); + +create table sourceTypeFuelFractionTemp ( + sourceTypeModelYearID int not null, + fuelTypeID smallint not null, + tempFuelFraction double, + primary key (sourceTypeModelYearID, fuelTypeID), + key (fuelTypeID, sourceTypeModelYearID) +); + +create table sourceTypeFuelFractionTotal ( + sourceTypeModelYearID int not null, + tempTotal double, + sourceTypeID smallint null, + modelYearID smallint null, + primary key (sourceTypeModelYearID) +); + +-- Section UseSampleVehiclePopulation +insert into sourceTypeFuelFractionTemp (sourceTypeModelYearID, fuelTypeID, tempFuelFraction) +select sourceTypeModelYearID, fuelTypeID, sum(stmyFraction) as tempFuelFraction +from sampleVehiclePopulation +group by sourceTypeModelYearID, fuelTypeID +order by null; +-- End Section UseSampleVehiclePopulation + +-- Section UseFuelUsageFraction +insert into sourceTypeFuelFractionTemp (sourceTypeModelYearID, fuelTypeID, tempFuelFraction) +select sourceTypeModelYearID, fuelSupplyFuelTypeID as fuelTypeID, + sum(stmyFraction*usageFraction) as tempFuelFraction +from sampleVehiclePopulation svp +inner join fuelUsageFraction fuf on ( + fuf.sourceBinFuelTypeID = svp.fuelTypeID +) +where fuf.countyID = ##context.iterLocation.countyRecordID## +and fuf.fuelYearID = ##context.fuelYearID## +and fuf.modelYearGroupID = 0 +group by sourceTypeModelYearID, fuelSupplyFuelTypeID +order by null; +-- End Section UseFuelUsageFraction + +insert into sourceTypeFuelFractionTotal (sourceTypeModelYearID, tempTotal) +select sourceTypeModelYearID, sum(stmyFraction) as tempTotal +from sampleVehiclePopulation +group by sourceTypeModelYearID +order by null; + +update sourceTypeFuelFractionTotal, sourceTypeModelYear set sourceTypeFuelFractionTotal.sourceTypeID=sourceTypeModelYear.sourceTypeID, + sourceTypeFuelFractionTotal.modelYearID=sourceTypeModelYear.modelYearID +where sourceTypeModelYear.sourceTypeModelYearID=sourceTypeFuelFractionTotal.sourceTypeModelYearID; + +insert into sourceTypeFuelFraction (sourceTypeID, modelYearID, fuelTypeID, fuelFraction) +select t.sourceTypeID, t.modelYearID, r.fuelTypeID, + case when tempTotal > 0 then tempFuelFraction / tempTotal + else 0 end as fuelFraction +from sourceTypeFuelFractionTemp r +inner join sourceTypeFuelFractionTotal t on (t.sourceTypeModelYearID=r.sourceTypeModelYearID) +inner join runSpecSourceFuelType rs on (rs.sourceTypeID=t.sourceTypeID and rs.fuelTypeID=r.fuelTypeID); + +drop table if exists sourceTypeFuelFractionTemp; +drop table if exists sourceTypeFuelFractionTotal; +-- End Section createSourceTypeFuelFraction + +-- Section UseSampleVehiclePopulation +cache SELECT * +INTO OUTFILE '##sourceTypeFuelFraction##' +FROM sourceTypeFuelFraction; +-- End Section UseSampleVehiclePopulation + +-- Section UseFuelUsageFraction +cache(countyID=##context.iterLocation.countyRecordID##,fuelYearID=##context.fuelYearID##) SELECT * +INTO OUTFILE '##sourceTypeFuelFraction##' +FROM sourceTypeFuelFraction; +-- End Section UseFuelUsageFraction + +-- Section WithRegClassID +cache select * +into outfile '##RegClassSourceTypeFraction##' +from RegClassSourceTypeFraction +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section WithRegClassID + +-- End Section Extract Data + +-- Section Local Data Removal +--TRUNCATE XXXXXX; +-- End Section Local Data Removal + +-- Section Processing + +-- 2, "sourcehours", "Source Hours" +-- 3, "extidle", "Extended Idle Hours" +-- 4, "sho", "Source Hours Operating" +-- 5, "shp", "Source Hours Parked" +-- 6, "population", "Population" +-- 7, "starts", "Starts" +-- 13, "hotellingAux", "Hotelling Diesel Aux" +-- 14, "hotellingElectric", "Hotelling Battery or AC" +-- 15, "hotellingOff", "Hotelling All Engines Off" + +-- Section SourceHours +-- 2, "sourcehours", "Source Hours" + +-- Section WithRegClassID +-- @algorithm sourceHours = sourceHours[sourceTypeID,hourDayID,monthID,yearID,ageID,linkID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + l.roadTypeID as roadTypeID, + NULL as SCC, + 2 as activityTypeID, + (sourceHours*stff.fuelFraction*stf.regClassFraction) as activity +from SourceHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join Link l on (l.linkID=s.linkID) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + l.roadTypeID as roadTypeID, + NULL as SCC, + 2 as activityTypeID, + (sourceHours*stff.fuelFraction) as activity +from SourceHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join Link l on (l.linkID=s.linkID); +-- End Section NoRegClassID + +-- End Section SourceHours + +-- Section ExtendedIdleHours +-- 3, "extidle", "Extended Idle Hours" + +-- Section WithRegClassID +-- @algorithm extendedIdleHours = extendedIdleHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 3 as activityTypeID, + (extendedIdleHours*stff.fuelFraction*stf.regClassFraction) as activity +from extendedIdleHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 3 as activityTypeID, + (extendedIdleHours*stff.fuelFraction) as activity +from extendedIdleHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)); +-- End Section NoRegClassID + +-- End Section ExtendedIdleHours + +-- Section SHO +-- 4, "sho", "Source Hours Operating" + +-- Section WithRegClassID +-- @algorithm sho = sho[sourceTypeID,hourDayID,monthID,yearID,ageID,linkID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + l.roadTypeID as roadTypeID, + NULL as SCC, + 4 as activityTypeID, + (SHO*stff.fuelFraction*stf.regClassFraction) as activity +from SHO s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join Link l on (l.linkID=s.linkID) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + l.roadTypeID as roadTypeID, + NULL as SCC, + 4 as activityTypeID, + (SHO*stff.fuelFraction) as activity +from SHO s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join Link l on (l.linkID=s.linkID); +-- End Section NoRegClassID + +-- End Section SHO + +-- Section SHP +-- 5, "shp", "Source Hours Parked" + +-- Section WithRegClassID +-- @algorithm shp = shp[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 5 as activityTypeID, + (SHP*stff.fuelFraction*stf.regClassFraction) as activity +from SHP s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 5 as activityTypeID, + (SHP*stff.fuelFraction) as activity +from SHP s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)); +-- End Section NoRegClassID + +-- End Section SHP + +-- Section Population +-- 6, "population", "Population" (Zone level) + +-- Section NonProjectDomain +drop table if exists fractionBySourceTypeTemp; + +-- @algorithm sutFraction[sourceTypeID] = sum(roadTypeVMTFraction * shoAllocFactor)/sum(roadTypeVMTFraction) +-- @condition Non-Project domain +create table fractionBySourceTypeTemp +select sut.sourceTypeID, sum(rtd.roadTypeVMTFraction*zrt.shoAllocFactor)/sum(rtd.roadTypeVMTFraction) as sutFraction +from sourceUseType sut +inner join roadTypeDistribution rtd on (rtd.sourceTypeID=sut.sourceTypeID) +inner join zoneRoadType zrt on (zrt.roadTypeID=rtd.roadTypeID and zrt.zoneID=##context.iterLocation.zoneRecordID##) +group by sut.sourceTypeID +order by null; + +drop table if exists sourceTypeTempPopulation; + +-- @algorithm tempPopulation = sourceTypeAgePopulation[yearID,sourceTypeID,ageID] * sutFraction[sourceTypeID] +-- @condition Non-Project domain +create table sourceTypeTempPopulation +select t.sourceTypeID, stap.ageID, (population*sutFraction) as population, l.linkID +from fractionBySourceTypeTemp t +inner join sourceTypeAgePopulation stap on (stap.sourceTypeID=t.sourceTypeID) +inner join runSpecSourceType rsst on (rsst.sourceTypeID=stap.sourceTypeID) +inner join link l on (l.roadTypeID=1); + +-- Section WithRegClassID +-- @algorithm population = tempPopulation*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +-- @condition Non-Project domain +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, + s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-s.ageID) as modelYearID, + 1 as roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (s.population*stff.fuelFraction*stf.regClassFraction) as activity +from sourceTypeTempPopulation s +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(##context.year##-s.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + s.linkID, + s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-s.ageID) as modelYearID, + 1 as roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (s.population*stff.fuelFraction) as activity +from sourceTypeTempPopulation s +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(##context.year##-s.ageID)); +-- End Section NoRegClassID + +-- End Section NonProjectDomain + +-- Section ProjectDomain + +-- Section WithRegClassID +-- @algorithm population on off-network link = vehiclePopulation*ageFraction[yearID,sourceTypeID,ageID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +-- @condition Project domain +-- @condition Offnetwork link +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + l.linkID, + onl.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-stad.ageID) as modelYearID, + 1 as roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (onl.vehiclePopulation*stad.ageFraction*stff.fuelFraction*stf.regClassFraction) as activity +from link l +inner join offNetworkLink onl using (zoneID) +inner join sourceTypeAgeDistribution stad on (stad.sourceTypeID=onl.sourceTypeID) +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=stad.sourceTypeID and stff.modelYearID=(##context.year##-stad.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +) +and l.roadTypeID = 1 +where l.zoneID = ##context.iterLocation.zoneRecordID##; + +-- @algorithm population on roadways = linkVolume[linkID]*sourceTypeHourFraction[linkID,sourceTypeID]*ageFraction[yearID,sourceTypeID,ageID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +-- @condition Project domain +-- @condition On roadways +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + l.linkID, + lsth.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-stad.ageID) as modelYearID, + roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (l.linkVolume*lsth.sourceTypeHourFraction*stad.ageFraction*stff.fuelFraction*stf.regClassFraction) as activity +from link l +inner join linkSourceTypeHour lsth on (lsth.linkID=l.linkID) +inner join sourceTypeAgeDistribution stad on (stad.sourceTypeID=lsth.sourceTypeID) +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=stad.sourceTypeID and stff.modelYearID=(##context.year##-stad.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +) +where l.roadTypeID<>1; +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + l.linkID, + onl.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-stad.ageID) as modelYearID, + 1 as roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (onl.vehiclePopulation*stad.ageFraction*stff.fuelFraction) as activity +from link l +inner join offNetworkLink onl using (zoneID) +inner join sourceTypeAgeDistribution stad on (stad.sourceTypeID=onl.sourceTypeID) +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=stad.sourceTypeID and stff.modelYearID=(##context.year##-stad.ageID)) +where l.zoneID = ##context.iterLocation.zoneRecordID## +and l.roadTypeID = 1; + +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select ##context.year##, 0 as monthID, 0 as dayID, 0 as hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + l.linkID, + lsth.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (##context.year##-stad.ageID) as modelYearID, + roadTypeID, + NULL as SCC, + 6 as activityTypeID, + (l.linkVolume*lsth.sourceTypeHourFraction*stad.ageFraction*stff.fuelFraction) as activity +from link l +inner join linkSourceTypeHour lsth on (lsth.linkID=l.linkID) +inner join sourceTypeAgeDistribution stad on (stad.sourceTypeID=lsth.sourceTypeID) +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=stad.sourceTypeID and stff.modelYearID=(##context.year##-stad.ageID)) +where l.roadTypeID<>1; +-- End Section NoRegClassID + +-- End Section ProjectDomain + +-- End Section Population + +-- Section Starts +-- 7, "starts", "Starts" + +-- Section WithRegClassID +-- @algorithm starts = starts[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID] +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID## as linkID, + s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 7 as activityTypeID, + (starts*stff.fuelFraction*stf.regClassFraction) as activity +from Starts s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID +); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID## as linkID, + s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + 7 as activityTypeID, + (starts*stff.fuelFraction) as activity +from Starts s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)); +-- End Section NoRegClassID + +-- End Section Starts + +-- Section hotellingHours +-- 13, "hotellingAux", "Hotelling Diesel Aux" +-- 14, "hotellingElectric", "Hotelling Battery or AC" +-- 15, "hotellingOff", "Hotelling All Engines Off" + +-- Section WithRegClassID +-- @algorithm hotellingAux hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=201,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]. +-- hotellingElectric hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=203,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]. +-- hotellingOff hours = hotellingHours[sourceTypeID,hourDayID,monthID,yearID,ageID,zoneID]*opModeFraction[opModeID=204,modelYearID]*fuelFraction[sourceTypeID,modelYearID,fuelTypeID]*regClassFraction[fuelTypeID,modelYearID,sourceTypeID,regClassID]. +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, stf.regClassID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + case when opModeID=201 then 13 + when opModeID=203 then 14 + when opModeID=204 then 15 + else 8 end as activityTypeID, + (hotellingHours*opModeFraction*stff.fuelFraction*stf.regClassFraction) as activity +from hotellingHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = stff.sourceTypeID + and stf.fuelTypeID = stff.fuelTypeID + and stf.modelYearID = stff.modelYearID) +inner join hotellingActivityDistribution ha on ( + ha.beginModelYearID <= stf.modelYearID + and ha.endModelYearID >= stf.modelYearID + and ha.opModeID in (201,203,204)); +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into ##ActivityTable## (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, SCC, + activityTypeID, activity) +select s.yearID, s.monthID, h.dayID, h.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + zoneID, + ##context.iterLocation.linkRecordID## linkID, s.sourceTypeID, + stff.fuelTypeID as fuelTypeID, + (s.yearID-s.ageID) as modelYearID, + ##context.iterLocation.roadTypeRecordID## as roadTypeID, + NULL as SCC, + case when opModeID=201 then 13 + when opModeID=203 then 14 + when opModeID=204 then 15 + else 8 end as activityTypeID, + (hotellingHours*opModeFraction*stff.fuelFraction) as activity +from hotellingHours s +inner join HourDay h on h.hourDayID=s.hourDayID +inner join sourceTypeFuelFraction stff on (stff.sourceTypeID=s.sourceTypeID and stff.modelYearID=(s.yearID-s.ageID)) +inner join hotellingActivityDistribution ha on ( + ha.beginModelYearID <= stff.modelYearID + and ha.endModelYearID >= stff.modelYearID + and ha.opModeID in (201,203,204)); +-- End Section NoRegClassID + +-- End Section hotellingHours + +-- End Section Processing + +-- Section Cleanup +drop table if exists sourceTypeFuelFraction; +drop table if exists fractionBySourceTypeTemp; +drop table if exists sourceTypeTempPopulation; +-- End Section Cleanup diff --git a/database/AdjustStarts.sql b/database/AdjustStarts.sql new file mode 100644 index 0000000..999d769 --- /dev/null +++ b/database/AdjustStarts.sql @@ -0,0 +1,140 @@ +-- Adjust the distribution within the Starts table using +-- user-supplied adjustments by month, hour, sourcetype, and day. +-- Author Wesley Faler +-- Version 2013-12-12 + +drop procedure if exists spAdjustStarts; + +BeginBlock +create procedure spAdjustStarts() +begin + declare targetZoneID int default ##zoneID##; + declare targetYearID int default ##yearID##; + declare howMany int default 0; + + -- startsHourFraction + set howMany=0; + select count(*) into howMany from startsHourFraction where zoneID=targetZoneID; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + alter table Starts add column dayID smallint not null default 0; + alter table Starts add column hourID smallint not null default 0; + + drop table if exists startsTemp; + + create table startsTemp like Starts; + alter table startsTemp drop primary key; + + update Starts set dayID=mod(hourDayID,10), hourID=floor(hourDayID/10); + + insert into startsTemp (hourDayID,hourID,dayID,monthID,yearID,ageID,zoneID,sourceTypeID,starts) + select 0 as hourDayID,0 as hourID,dayID,monthID,yearID,ageID,zoneID,sourceTypeID, + sum(starts) as starts + from Starts + where yearID = targetYearID and zoneID = targetZoneID + group by monthID,yearID,ageID,zoneID,sourceTypeID,dayID + order by null; + + delete from starts where yearID = targetYearID and zoneID = targetZoneID; + + insert into Starts (hourDayID,monthID,yearID,ageID,zoneID,sourceTypeID,starts) + select (o.hourID*10+o.dayID) as hourDayID,s.monthID,s.yearID,s.ageID,s.zoneID,s.sourceTypeID, + s.starts*o.allocationFraction as starts + from startsTemp s + inner join startsHourFraction o using (zoneID,dayID); + + drop table startsTemp; + + alter table Starts drop column dayID; + alter table Starts drop column hourID; + end if; + + -- startsSourceTypeFraction + set howMany=0; + select count(*) into howMany from startsSourceTypeFraction; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + drop table if exists startsTemp; + + create table startsTemp like Starts; + alter table startsTemp drop primary key; + + insert into startsTemp (hourDayID,monthID,yearID,ageID,zoneID,sourceTypeID,starts) + select hourDayID,monthID,yearID,ageID,zoneID,0 as sourceTypeID, + sum(starts) as starts + from Starts + where yearID = targetYearID and zoneID = targetZoneID + group by hourDayID,monthID,yearID,ageID,zoneID + order by null; + + delete from starts where yearID = targetYearID and zoneID = targetZoneID; + + insert into Starts (hourDayID,monthID,yearID,ageID,zoneID,sourceTypeID,starts) + select s.hourDayID,s.monthID,s.yearID,s.ageID,s.zoneID,o.sourceTypeID, + s.starts*o.allocationFraction as starts + from startsTemp s, startsSourceTypeFraction o; + + drop table startsTemp; + end if; + + -- startsPerDay + set howMany=0; + select count(*) into howMany from startsPerDay where zoneID=targetZoneID and yearID=targetYearID; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + alter table Starts add column dayID smallint not null default 0; + alter table Starts add column hourID smallint not null default 0; + + drop table if exists startsTemp; + + create table startsTemp like startsPerDay; + alter table startsTemp drop primary key; + + update startsPerDay, dayOfAnyWeek + set startsPerDay = startsPerDay * noOfRealDays + where startsPerDay.dayID = dayOfAnyWeek.dayID + and startsPerDay.yearID = targetYearID and startsPerDay.zoneID = targetZoneID; + + update Starts set dayID=mod(hourDayID,10), hourID=floor(hourDayID/10) + where zoneID = targetZoneID and yearID = targetYearID; + + insert into startsTemp (yearID,zoneID,dayID,startsPerDay) + select yearID,zoneID,dayID, sum(starts) as startsPerDay + from Starts + where yearID = targetYearID and zoneID = targetZoneID + group by yearID,zoneID,dayID; + + drop table if exists startsTempRatio; + + create table startsTempRatio like startsPerDay; + + insert into startsTempRatio (yearID,zoneID,dayID,startsPerDay) + select a.yearID,a.zoneID,a.dayID, + case when a.startsPerDay > 0 then (b.startsPerDay/a.startsPerDay) + else 0 end as startsPerDay + from startsTemp a + inner join startsPerDay b using (yearID,zoneID,dayID); + + update Starts, startsTempRatio + set Starts.starts = Starts.starts * startsTempRatio.startsPerDay + where Starts.yearID = startsTempRatio.yearID + and Starts.zoneID = startsTempRatio.zoneID + and Starts.dayID = startsTempRatio.dayID; + + drop table startsTemp; + drop table startsTempRatio; + + alter table Starts drop column dayID; + alter table Starts drop column hourID; + end if; + + -- startsMonthAdjust + update Starts, startsMonthAdjust + set starts = starts * monthAdjustment + where Starts.monthID = startsMonthAdjust.monthID + and Starts.yearID = targetYearID and Starts.zoneID = targetZoneID; +end +EndBlock + +call spAdjustStarts(); +drop procedure if exists spAdjustStarts; diff --git a/database/AgeDistributionImporter.sql b/database/AgeDistributionImporter.sql new file mode 100644 index 0000000..5bd64e7 --- /dev/null +++ b/database/AgeDistributionImporter.sql @@ -0,0 +1,69 @@ +-- Author Wesley Faler +-- Version 2013-11-20 + +-- Mark any years in SourceTypeAgeDistribution as base years in the Year table + +drop table if exists tempNewYear; + +create table if not exists tempNewYear ( + yearID smallint(6) not null default '0', + primary key (yearID) +); + +insert into tempNewYear (yearID) +select distinct yearID +from SourceTypeAgeDistribution; + +drop table if exists tempYear; + +create table if not exists tempYear ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +create table if not exists year ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +insert into tempYear (yearID, isBaseYear, fuelYearID) +select y.yearID, 'Y' as isBaseYear, y.fuelYearID +from tempNewYear ny +inner join ##defaultDatabase##.year y on (y.yearID=ny.yearID); + +-- insert ignore into year (yearID, isBaseYear, fuelYearID) +-- select yearID, isBaseYear, fuelYearID +-- from tempYear + +update year, tempNewYear set year.isBaseYear='Y' +where year.yearID=tempNewYear.yearID; + +drop table if exists tempYear; +drop table if exists tempNewYear; + +-- Complain about any years outside of MOVES's range +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage +from SourceTypeAgeDistribution +where yearID < 1990 or yearID > 2050; + +-- Ensure distributions sum to 1.0 for all sourceTypeID, yearID combinations. +drop table if exists tempNotUnity; + +create table tempNotUnity +select sourceTypeID, yearID, sum(ageFraction) as sumAgeFraction +from SourceTypeAgeDistribution +group by sourceTypeID, yearID +having round(sum(ageFraction),4) <> 1.0000; + +insert into importTempMessages (message) +select concat('ERROR: Source ',sourceTypeID,', year ',yearID,' ageFraction sum is not 1.0 but instead ',round(sumAgeFraction,4)) +from tempNotUnity; + +drop table if exists tempNotUnity; diff --git a/database/AirToxicsCalculator.sql b/database/AirToxicsCalculator.sql new file mode 100644 index 0000000..e6daffd --- /dev/null +++ b/database/AirToxicsCalculator.sql @@ -0,0 +1,730 @@ +-- Author Wesley Faler +-- Author Ed Campbell +-- Version 2015-04-07 + +-- @algorithm +-- @owner Air toxics Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +drop table if exists ATMonthGroup; +create table if not exists ATMonthGroup ( + monthID smallint(6) NOT NULL DEFAULT '0', + monthGroupID smallint(6) NOT NULL DEFAULT '0', + key (monthID, monthGroupID), + key (monthGroupID, monthID) +) Engine=MEMORY; + +-- Section UseMinorHAPRatio +-- minorHAPRatio has fuelSubtypeID in the execution database, but the version +-- submitted to the calculator has been joined to the fuel supply and weighted +-- by the fuel formulation market share. + +CREATE TABLE minorHAPRatio ( + processID smallint(6) NOT NULL, + outputPollutantID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL, + monthID smallint(6) NOT NULL, + atRatio double DEFAULT NULL, + KEY (processID,fuelTypeID,modelYearID,monthID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; +-- End Section UseMinorHAPRatio + +-- Section UsePAHGasRatio +CREATE TABLE pahGasRatio ( + processID smallint(6) NOT NULL, + outputPollutantID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL DEFAULT '0', + atRatio double DEFAULT NULL, + KEY (processID,fuelTypeID,modelYearID) +); +-- End Section UsePAHGasRatio + +-- Section UsePAHParticleRatio +CREATE TABLE pahParticleRatio ( + processID smallint(6) NOT NULL, + outputPollutantID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL DEFAULT '0', + atRatio double DEFAULT NULL, + KEY (processID,fuelTypeID,modelYearID) +); +-- End Section UsePAHParticleRatio + +-- Section UseATRatioGas1 +drop table if exists ATRatioGas1ChainedTo; + +CREATE TABLE IF NOT EXISTS ATRatioGas1ChainedTo ( + outputPolProcessID int not null, + outputPollutantID smallint not null, + outputProcessID smallint not null, + inputPolProcessID int not null, + inputPollutantID smallint not null, + inputProcessID smallint not null, + index InputChainedToIndex ( + inputPollutantID, + inputProcessID + ), + index InputChainedToProcessIndex ( + inputProcessID + ), + index OutputChainedToPolProcessIndex ( + outputPolProcessID + ), + index InputOutputChainedToIndex ( + outputPolProcessID, + inputPolProcessID + ), + index InputOutputChainedToIndex2 ( + inputPolProcessID, + outputPolProcessID + ), + key ( + inputPollutantID, + inputProcessID, + inputPolProcessID, + outputPolProcessID + ) +) Engine=MEMORY; + +CREATE TABLE IF NOT EXISTS ATRatio ( + fuelTypeID smallint(6) NOT NULL, + fuelFormulationID smallint(6) NOT NULL, + polProcessID int NOT NULL, + minModelYearID smallint(6) NOT NULL, + maxModelYearID smallint(6) NOT NULL, + ageID smallint(6) NOT NULL, + monthID smallint(6) NOT NULL, + atRatio double DEFAULT NULL, + modelYearID smallint(6) NOT NULL, + PRIMARY KEY (fuelTypeID,fuelFormulationID,polProcessID,minModelYearID,maxModelYearID,ageID,monthID), + KEY atratio_key1 (fuelFormulationID,polProcessID,minModelYearID), + KEY atratio_key2 (polProcessID,fuelTypeID,monthID,minModelYearID,ageID,maxModelYearID,fuelFormulationID), + KEY atratio_key3 (polProcessID,fuelTypeID,monthID,modelYearID,minModelYearID,maxModelYearID,fuelFormulationID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +TRUNCATE TABLE ATRatio; + +CREATE TABLE IF NOT EXISTS AT1FuelSupply ( + countyID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + fuelFormulationID smallint(6) NOT NULL, + marketShare double default NULL, + yearID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + KEY (monthID,fuelTypeID,fuelFormulationID,marketShare) +) Engine=MEMORY; + +TRUNCATE TABLE AT1FuelSupply; + +CREATE TABLE IF NOT EXISTS AT1PollutantProcessModelYear ( + polProcessID int NOT NULL default '0', + modelYearID smallint(6) NOT NULL default '0', + fuelMYGroupID int(11) default NULL, + key (polProcessID), + key (modelYearID), + key (fuelMYGroupID), + key (polProcessID, modelYearID, fuelMYGroupID) +) Engine=MEMORY; + +TRUNCATE TABLE AT1PollutantProcessModelYear; + +-- End Section UseATRatioGas1 + +-- Section UseATRatioGas2 +drop table if exists ATRatioGas2ChainedTo; + +CREATE TABLE IF NOT EXISTS ATRatioGas2ChainedTo ( + outputPolProcessID int not null, + outputPollutantID smallint not null, + outputProcessID smallint not null, + inputPolProcessID int not null, + inputPollutantID smallint not null, + inputProcessID smallint not null, + index InputChainedToIndex ( + inputPollutantID, + inputProcessID + ), + index InputChainedToProcessIndex ( + inputProcessID + ), + index OutputChainedToPolProcessIndex ( + outputPolProcessID + ), + index InputOutputChainedToIndex ( + outputPolProcessID, + inputPolProcessID + ), + index InputOutputChainedToIndex2 ( + inputPolProcessID, + outputPolProcessID + ), + key ( + inputPollutantID, + inputProcessID, + inputPolProcessID, + outputPolProcessID + ) +) Engine=MEMORY; + +##create.ATRatioGas2##; +TRUNCATE TABLE ATRatioGas2; + +CREATE TABLE IF NOT EXISTS AT2FuelSupply ( + fuelRegionID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + marketShare float default NULL, + yearID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + KEY (countyID,yearID,monthID,fuelTypeID,fuelSubtypeID), + KEY (countyID,yearID,monthID,fuelSubtypeID) +) Engine=MEMORY; + +TRUNCATE TABLE AT2FuelSupply; +-- End Section UseATRatioGas2 + +-- Section UseATRatioNonGas +drop table if exists ATRatioNonGasChainedTo; + +CREATE TABLE IF NOT EXISTS ATRatioNonGasChainedTo ( + outputPolProcessID int not null, + outputPollutantID smallint not null, + outputProcessID smallint not null, + inputPolProcessID int not null, + inputPollutantID smallint not null, + inputProcessID smallint not null, + index InputChainedToIndex ( + inputPollutantID, + inputProcessID + ), + index InputChainedToProcessIndex ( + inputProcessID + ), + index OutputChainedToPolProcessIndex ( + outputPolProcessID + ), + index InputOutputChainedToIndex ( + outputPolProcessID, + inputPolProcessID + ), + index InputOutputChainedToIndex2 ( + inputPolProcessID, + outputPolProcessID + ), + key ( + inputPollutantID, + inputProcessID, + inputPolProcessID, + outputPolProcessID + ) +) Engine=MEMORY; + +CREATE TABLE ATRatioNonGas ( + polProcessID int NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL DEFAULT '0', + ATRatio double DEFAULT NULL, + PRIMARY KEY (polProcessID,sourceTypeID,fuelSubtypeID,modelYearID), + KEY (polProcessID,sourceTypeID,modelYearID,fuelSubtypeID) +); + +TRUNCATE TABLE ATRatioNonGas; + +CREATE TABLE IF NOT EXISTS ATNonGasFuelSupply ( + countyID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + fuelFormulationID smallint(6) NOT NULL, + marketShare float default NULL, + yearID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + KEY (countyID,yearID,monthID,fuelTypeID,fuelSubtypeID), + KEY (countyID,yearID,monthID,fuelSubtypeID) +); + +TRUNCATE TABLE ATNonGasFuelSupply; +-- End Section UseATRatioNonGas + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT monthID, monthGroupID +INTO OUTFILE '##ATMonthGroup##' +FROM monthOfAnyYear +WHERE (##context.monthID## <= 0 OR monthID = ##context.monthID##); + +-- Section UseMinorHAPRatio + +-- minorHAPRatio has fuelSubtypeID in the execution database, but the version +-- submitted to the calculator has been joined to the fuel supply and weighted +-- by the fuel formulation market share. + +cache select ppa.processID, ppa.pollutantID as outputPollutantID, fuelTypeID, modelYearID, monthID, sum(atRatio*marketShare) as atRatio +into outfile '##minorHAPRatio##' +from minorHAPRatio r +inner join pollutantProcessAssoc ppa using (polProcessID) +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +inner join fuelFormulation ff using (fuelSubtypeID) +inner join fuelSupply fs on ( + fs.fuelRegionID=##context.fuelRegionID## + and fuelYearID=(select fuelYearID from year where yearID=##context.year##) + and fs.fuelFormulationID=ff.fuelFormulationID +) +inner join monthOfAnyYear m on ( + m.monthGroupID=fs.monthGroupID + and (##context.monthID## <= 0 OR monthID = ##context.monthID##) +) +where polProcessID in (##outputMinorHAPRatio##) +group by ppa.polProcessID, fuelTypeID, modelYearID, monthID; +-- End Section UseMinorHAPRatio + +-- Section UsePAHGasRatio +cache select ppa.processID, ppa.pollutantID as outputPollutantID, fuelTypeID, modelYearID, atRatio +into outfile '##pahGasRatio##' +from pahGasRatio r +inner join pollutantProcessAssoc ppa using (polProcessID) +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +where polProcessID in (##outputPAHGasRatio##); +-- End Section UsePAHGasRatio + +-- Section UsePAHParticleRatio +cache select ppa.processID, ppa.pollutantID as outputPollutantID, fuelTypeID, modelYearID, atRatio +into outfile '##pahParticleRatio##' +from pahParticleRatio r +inner join pollutantProcessAssoc ppa using (polProcessID) +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +where polProcessID in (##outputPAHParticleRatio##); +-- End Section UsePAHParticleRatio + +-- Section UseATRatioGas1 +cache SELECT DISTINCT + ATRatio.fuelTypeID, + ATRatio.fuelFormulationID, + ATRatio.polProcessID, + MYRMAP(ATRatio.minModelYearID) as minModelYearID, + MYRMAP(ATRatio.maxModelYearID) as maxModelYearID, + ATRatio.ageID, + MonthOfAnyYear.monthID, + ATRatio.atRatio, + (##context.year## - ATRatio.ageID) as modelYearID +INTO OUTFILE '##ATRatio##' +FROM ATRatio +INNER JOIN FuelSupply ON (FuelSupply.fuelFormulationID = ATRatio.fuelFormulationID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN RunSpecMonthGroup ON (RunSpecMonthGroup.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = RunSpecMonthGroup.monthGroupID) +WHERE polProcessID in (##outputATRatioGas1##) +AND fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND minModelYearID <= MYMAP(##context.year## - ATRatio.ageID) +AND maxModelYearID >= MYMAP(##context.year## - ATRatio.ageID); + +-- AND minModelYearID <= ##context.year## + +cache SELECT * +INTO OUTFILE '##ATRatioGas1ChainedTo##' +FROM RunSpecChainedTo +WHERE outputPolProcessID in (##outputATRatioGas1##); + +cache SELECT ##context.iterLocation.countyRecordID## as countyID, MonthOfAnyYear.monthID, FuelSupply.fuelFormulationID, FuelSupply.marketShare, Year.yearID, FuelSubtype.fuelTypeID +INTO OUTFILE '##AT1FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND (##context.monthID## <= 0 OR RunSpecMonth.monthID = ##context.monthID##); + +cache SELECT polProcessID, modelYearID, fuelMYGroupID INTO OUTFILE '##AT1PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##inputATRatioGas1##); + +-- End Section UseATRatioGas1 + +-- Section UseATRatioGas2 +cache SELECT * +INTO OUTFILE '##ATRatioGas2##' +FROM ATRatioGas2 +WHERE polProcessID in (##outputATRatioGas2##); + +cache SELECT * +INTO OUTFILE '##ATRatioGas2ChainedTo##' +FROM RunSpecChainedTo +WHERE outputPolProcessID in (##outputATRatioGas2##); + +cache SELECT ##context.iterLocation.countyRecordID## as countyID, MonthOfAnyYear.monthID, FuelSubtype.fuelSubtypeID, FuelSupply.marketShare, Year.yearID, FuelSubtype.fuelTypeID +INTO OUTFILE '##AT2FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND (##context.monthID## <= 0 OR RunSpecMonth.monthID = ##context.monthID##); +-- End Section UseATRatioGas2 + +-- Section UseATRatioNonGas +cache SELECT r.polProcessID, r.sourceTypeID, r.fuelSubtypeID, my.modelYearID, r.ATRatio +INTO OUTFILE '##ATRatioNonGas##' +FROM ATRatioNonGas r +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +WHERE polProcessID in (##outputATRatioNonGas##); + +cache SELECT * +INTO OUTFILE '##ATRatioNonGasChainedTo##' +FROM RunSpecChainedTo +WHERE outputPolProcessID in (##outputATRatioNonGas##); + +cache SELECT ##context.iterLocation.countyRecordID## as countyID, MonthOfAnyYear.monthID, FuelSupply.fuelFormulationID, FuelSupply.marketShare, Year.yearID, FuelSubtype.fuelTypeID, FuelSubtype.fuelSubtypeID +INTO OUTFILE '##ATNonGasFuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND (##context.monthID## <= 0 OR RunSpecMonth.monthID = ##context.monthID##); +-- End Section UseATRatioNonGas + +-- End Section Extract Data + +-- Section Processing + +-- @algorithm create AirToxicsMOVESWorkerOutputTemp table +drop table if exists AirToxicsMOVESWorkerOutputTemp; +create table if not exists AirToxicsMOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant double NULL, + emissionRate double NULL, + key (yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) +); + +CREATE INDEX MOVESWorkerOutput_A3 ON MOVESWorkerOutput ( + pollutantID asc, + processID asc, + sourceTypeID asc, + yearID asc, + monthID asc, + fuelTypeID asc +); + +-- Section UseMinorHAPRatio + +-- @algorithm minor HAP emissions[outputPollutantID] = VOC (87) * ATRatio +insert into AirToxicsMOVESWorkerOutputTemp ( + monthID, modelYearID, yearID, fuelTypeID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + mwo.monthID, mwo.modelYearID, mwo.yearID, mwo.fuelTypeID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, + mwo.zoneID, mwo.linkID, r.outputPollutantID, mwo.processID, mwo.sourceTypeID, mwo.regClassID, mwo.roadTypeID, mwo.SCC, + r.atRatio*emissionQuant, r.atRatio*emissionRate +from MOVESWorkerOutput mwo +inner join minorHAPRatio r on ( + r.processID = mwo.processID + and mwo.pollutantID = 87 + and r.fuelTypeID = mwo.fuelTypeID + and r.modelYearID = mwo.modelYearID + and r.monthID = mwo.monthID +); + +-- End Section UseMinorHAPRatio + +-- Section UsePAHGasRatio + +-- @algorithm PAH gas emissions[outputPollutantID] = VOC (87) * ATRatio +insert into AirToxicsMOVESWorkerOutputTemp ( + monthID, modelYearID, yearID, fuelTypeID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + mwo.monthID, mwo.modelYearID, mwo.yearID, mwo.fuelTypeID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, + mwo.zoneID, mwo.linkID, r.outputPollutantID, mwo.processID, mwo.sourceTypeID, mwo.regClassID, mwo.roadTypeID, mwo.SCC, + r.atRatio*emissionQuant, r.atRatio*emissionRate +from MOVESWorkerOutput mwo +inner join pahGasRatio r on ( + r.processID = mwo.processID + and mwo.pollutantID = 87 + and r.fuelTypeID = mwo.fuelTypeID + and r.modelYearID = mwo.modelYearID +); + +-- End Section UsePAHGasRatio + +-- Section UsePAHParticleRatio + +-- @algorithm PAH particle emissions[outputPollutantID] = VOC (87) * ATRatio +insert into AirToxicsMOVESWorkerOutputTemp ( + monthID, modelYearID, yearID, fuelTypeID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + mwo.monthID, mwo.modelYearID, mwo.yearID, mwo.fuelTypeID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, + mwo.zoneID, mwo.linkID, r.outputPollutantID, mwo.processID, mwo.sourceTypeID, mwo.regClassID, mwo.roadTypeID, mwo.SCC, + r.atRatio*emissionQuant, r.atRatio*emissionRate +from MOVESWorkerOutput mwo +inner join pahParticleRatio r on ( + r.processID = mwo.processID + and mwo.pollutantID = 111 + and r.fuelTypeID = mwo.fuelTypeID + and r.modelYearID = mwo.modelYearID +); + +-- End Section UsePAHParticleRatio + +-- Section UseATRatioGas1 + +-- @algorithm emissions[outputPollutantID] = emissions[inputPollutantID] * marketShare * ATRatio +-- @input FuelSupply +-- @input PollutantProcessAssoc +insert into AirToxicsMOVESWorkerOutputTemp ( + monthID, modelYearID, yearID, fuelTypeID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + mwo.monthID, mwo.modelYearID, mwo.yearID, mwo.fuelTypeID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, + mwo.zoneID, mwo.linkID, ct.outputPollutantID, ct.outputProcessID, mwo.sourceTypeID, mwo.regClassID, mwo.roadTypeID, mwo.SCC, + r.ATRatio*fs.marketShare*emissionQuant, r.ATRatio*fs.marketShare*emissionRate +from MOVESWorkerOutput mwo +inner join ATRatioGas1ChainedTo ct on ( + ct.inputPollutantID=mwo.pollutantID + and ct.inputProcessID=mwo.processID) +inner join ATRatio r on ( + r.minModelYearID <= mwo.modelYearID and r.maxModelYearID >= mwo.modelYearID + and r.modelYearID = mwo.modelYearID + and r.fuelTypeID=mwo.fuelTypeID + and r.polProcessID=ct.outputPolProcessID + and r.monthID = mwo.monthID + ) +inner join AT1FuelSupply fs on ( + fs.monthID = mwo.monthID + and fs.fuelTypeID = mwo.fuelTypeID + and fs.fuelFormulationID = r.fuelFormulationID +); + +-- End Section UseATRatioGas1 + +-- Section UseATRatioGas2 +create index ATRatioGas2ChainedTo_A1 on ATRatioGas2ChainedTo ( + inputPollutantID asc, + inputProcessID asc, + outputPolProcessID asc +); + +-- create index AT2FuelSupply_A1 on AT2FuelSupply ( +-- yearID asc, +-- monthID asc, +-- fuelSubtypeID asc, +-- countyID asc, +-- fuelTypeID asc +-- ); + +-- insert into AirToxicsMOVESWorkerOutputTemp ( +-- yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, +-- sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate) +-- select +-- mwo.yearID, mwo.monthID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, mwo.linkID, +-- ct.outputPollutantID, +-- ct.outputProcessID, +-- mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, mwo.roadTypeID, mwo.SCC, +-- r.ATRatio*fs.marketShare*emissionQuant, r.ATRatio*fs.marketShare*emissionRate +-- from MOVESWorkerOutput mwo +-- inner join ATRatioGas2ChainedTo ct on ( +-- ct.inputPollutantID=mwo.pollutantID +-- and ct.inputProcessID=mwo.processID) +-- inner join ATRatioGas2 r on ( +-- r.polProcessID=ct.outputPolProcessID +-- and r.sourceTypeID=mwo.sourceTypeID) +-- inner join AT2FuelSupply fs on ( +-- fs.yearID = mwo.yearID +-- and fs.monthID = mwo.monthID +-- and fs.fuelSubtypeID = r.fuelSubtypeID +-- and fs.countyID = # # context.iterLocation . countyRecordID # # +-- and fs.fuelTypeID = mwo.fuelTypeID); + +alter table ATRatioGas2ChainedTo add key (inputPollutantID, inputProcessID, outputPolProcessID, outputPollutantID, outputProcessID); +analyze table ATRatioGas2ChainedTo; + +alter table ATRatioGas2 add key (polProcessID, sourceTypeID, fuelSubtypeID, ATRatio); +alter table ATRatioGas2 add key (sourceTypeID, fuelSubtypeID, polProcessID, ATRatio); +alter table ATRatioGas2 add key (fuelSubtypeID, polProcessID, sourceTypeID, ATRatio); +alter table ATRatioGas2 add key (polProcessID, fuelSubtypeID, sourceTypeID, ATRatio); +alter table ATRatioGas2 add key (sourceTypeID, polProcessID, fuelSubtypeID, ATRatio); +alter table ATRatioGas2 add key (fuelSubtypeID, sourceTypeID, polProcessID, ATRatio); +analyze table ATRatioGas2; + +alter table AT2FuelSupply drop key countyID; +alter table AT2FuelSupply drop key countyID_2; +alter table AT2FuelSupply add key (yearID,monthID,countyID,fuelTypeID,fuelSubtypeID, marketShare); +analyze table AT2FuelSupply; + +drop table if exists AT2FuelSupplyRatioGas2; + +-- @algorithm marketShareATRatio[outputPollutantID] = marketShare * ATRatio +-- @input FuelSupply +-- @input PollutantProcessAssoc +create table AT2FuelSupplyRatioGas2 +select ct.inputPollutantID, ct.inputProcessID, r.polProcessID, r.sourceTypeID, + fs.yearID, fs.monthID, fs.fuelTypeID, fs.marketShare*r.ATRatio as marketShareATRatio, + ct.outputPollutantID, + ct.outputProcessID +from ATRatioGas2 r +inner join AT2FuelSupply fs on ( + fs.countyID = ##context.iterLocation.countyRecordID## + and fs.fuelSubtypeID = r.fuelSubtypeID) +inner join ATRatioGas2ChainedTo ct on ( + r.polProcessID=ct.outputPolProcessID); + +alter table AT2FuelSupplyRatioGas2 add key (inputPollutantID, inputProcessID, fuelTypeID, sourceTypeID, yearID, monthID, outputPollutantID, outputProcessID, marketShareATRatio); +analyze table AT2FuelSupplyRatioGas2; + +-- @algorithm emissions[outputPollutantID] = emissions[inputPollutantID] * marketShareATRatio[outputPollutantID] +insert into AirToxicsMOVESWorkerOutputTemp ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate) +select + mwo.yearID, mwo.monthID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, mwo.linkID, + r.outputPollutantID, + r.outputProcessID, + mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, mwo.roadTypeID, mwo.SCC, + r.marketShareATRatio*emissionQuant, r.marketShareATRatio*emissionRate +from MOVESWorkerOutput mwo +inner join AT2FuelSupplyRatioGas2 r on ( + r.inputPollutantID=mwo.pollutantID + and r.inputProcessID=mwo.processID + and r.sourceTypeID=mwo.sourceTypeID + and r.yearID = mwo.yearID + and r.monthID = mwo.monthID + and r.fuelTypeID = mwo.fuelTypeID); +-- End Section UseATRatioGas2 + +-- Section UseATRatioNonGas +CREATE INDEX ATRatioNonGasChainedTo_A1 ON ATRatioNonGasChainedTo ( + inputPollutantID asc, + inputProcessID asc, + outputPolProcessID asc +); + +CREATE INDEX ATNonGasFuelSupply_A1 ON ATNonGasFuelSupply ( + yearID asc, + monthID asc, + fuelSubtypeID asc, + countyID asc, + fuelTypeID asc +); + +-- @algorithm emissions[outputPollutantID] = emissions[inputPollutantID] * marketShare * ATRatio +-- @input FuelSupply +-- @input PollutantProcessAssoc +insert into AirToxicsMOVESWorkerOutputTemp ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate) +select + mwo.yearID, mwo.monthID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, mwo.linkID, + ct.outputPollutantID, + ct.outputProcessID, + mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, mwo.roadTypeID, mwo.SCC, + r.ATRatio*fs.marketShare*emissionQuant, r.ATRatio*fs.marketShare*emissionRate +from MOVESWorkerOutput mwo +inner join ATRatioNonGasChainedTo ct on ( + ct.inputPollutantID=mwo.pollutantID + and ct.inputProcessID=mwo.processID) +inner join ATRatioNonGas r on ( + r.polProcessID=ct.outputPolProcessID + and r.sourceTypeID=mwo.sourceTypeID + and r.modelYearID=mwo.modelYearID) +inner join ATNonGasFuelSupply fs on ( + fs.yearID = mwo.yearID + and fs.monthID = mwo.monthID + and fs.fuelSubtypeID = r.fuelSubtypeID + and fs.countyID = ##context.iterLocation.countyRecordID## + and fs.fuelTypeID = mwo.fuelTypeID); + +-- End Section UseATRatioNonGas + +-- insert into MOVESWorkerOutput ( +-- yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID, +-- sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate) +-- select +-- yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID, +-- sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC, +-- sum(emissionQuant) as emissionQuant, sum(emissionRate) as emissionRate +-- from AirToxicsMOVESWorkerOutputTemp +-- group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC +-- order by null + +-- @algorithm Add emisions in AirToxicsMOVESWorkerOutputTemp to MOVESWorkerOutput +insert into MOVESWorkerOutput ( + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate) +select + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC, + emissionQuant,emissionRate +from AirToxicsMOVESWorkerOutputTemp; + +alter table MOVESWorkerOutput drop index MOVESWorkerOutput_A3; + +-- End Section Processing + +-- Section Cleanup +drop table if exists AirToxicsMOVESWorkerOutputTemp; +drop table if exists ATRatioGas1ChainedTo; +drop table if exists ATRatioGas2ChainedTo; +drop table if exists ATRatioNonGasChainedTo; +drop table if exists ATMonthGroup; +drop table if exists AT2FuelSupplyRatioGas2; +-- End Section Cleanup diff --git a/database/AirToxicsDistanceCalculator.sql b/database/AirToxicsDistanceCalculator.sql new file mode 100644 index 0000000..f48d599 --- /dev/null +++ b/database/AirToxicsDistanceCalculator.sql @@ -0,0 +1,316 @@ +-- Author Wesley Faler +-- Version 2013-09-15 + +-- @notused + +-- Section Create Remote Tables for Extracted Data +##create.County##; +TRUNCATE TABLE County; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +##create.SHO##; +TRUNCATE TABLE SHO; + +-- Section UseDioxinEmissionRate +CREATE TABLE dioxinemissionrate ( + processID smallint(6) NOT NULL, + pollutantID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL, + meanBaseRate double DEFAULT NULL, + PRIMARY KEY (fuelTypeID,modelYearID,processID,pollutantID) +); + +truncate table dioxinEmissionRate; +-- End Section UseDioxinEmissionRate + +-- Section UseMetalEmissionRate +CREATE TABLE metalemissionrate ( + processID smallint(6) NOT NULL, + pollutantID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL, + meanBaseRate double DEFAULT NULL, + PRIMARY KEY (sourceTypeID,fuelTypeID,modelYearID,processID,pollutantID) +); + +truncate table metalEmissionRate; +-- End Section UseMetalEmissionRate + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO, RunSpecMonth, RunSpecDay, RunSpecHour, HourDay +WHERE yearID = ##context.year## +AND SHO.linkID = ##context.iterLocation.linkRecordID## +AND SHO.monthID=RunSpecMonth.monthID +AND SHO.hourDayID = HourDay.hourDayID +AND HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +-- Section UseDioxinEmissionRate + +-- native distance units are miles +-- native mass units are grams +-- native energy units are kilojoules + +cache select ppa.processID, ppa.pollutantID, r.fuelTypeID, modelYearID, + meanBaseRate * ( + case units when 'g/mile' then 1.0 + when 'g/km' then 1.609344 + when 'TEQ/mile' then 1.0 + when 'TEQ/km' then 1.609344 + else 1.0 + end + ) as meanBaseRate +into outfile '##dioxinEmissionRate##' +from dioxinEmissionRate r +inner join pollutantProcessAssoc ppa using (polProcessID) +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +where polProcessID in (##outputDioxinEmissionRate##); +-- End Section UseDioxinEmissionRate + +-- Section UseMetalEmissionRate + +-- native distance units are miles +-- native mass units are grams +-- native energy units are kilojoules + +cache select ppa.processID, ppa.pollutantID, r.fuelTypeID, r.sourceTypeID, modelYearID, + meanBaseRate * ( + case units when 'g/mile' then 1.0 + when 'g/km' then 1.609344 + when 'TEQ/mile' then 1.0 + when 'TEQ/km' then 1.609344 + else 1.0 + end + ) as meanBaseRate +into outfile '##metalEmissionRate##' +from metalEmissionRate r +inner join RunSpecSourceFuelType rs on ( + rs.sourceTypeID = r.sourceTypeID + and rs.fuelTypeID = r.fuelTypeID) +inner join pollutantProcessAssoc ppa using (polProcessID) +inner join modelYear my on ( + MYMAP(modelYearID) >= round(modelYearGroupID/10000,0) + and MYMAP(modelYearID) <= mod(modelYearGroupID,10000) + and modelYearID <= ##context.year## + and modelYearID >= ##context.year## - 30 +) +where polProcessID in (##outputMetalEmissionRate##); +-- End Section UseMetalEmissionRate + +-- End Section Extract Data +-- +-- Section Processing +-- + +drop table if exists ATActivityOutput; +create table ATActivityOutput like MOVESWorkerActivityOutput; + +-- +-- Calculate the distance +-- +DROP TABLE IF EXISTS SBD2; +DROP TABLE IF EXISTS SVTD2; +DROP TABLE IF EXISTS SVTD3; +DROP TABLE IF EXISTS DistFracts; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS Link2; +DROP TABLE IF EXISTS SHO3; + +CREATE TABLE SBD2 ( + sourceTypeModelYearID INTEGER, + fuelTypeID SMALLINT, + fuelTypeActivityFraction FLOAT); +INSERT INTO SBD2 ( + sourceTypeModelYearID,fuelTypeID,fuelTypeActivityFraction ) + SELECT sbd.sourceTypeModelYearID,sb.fuelTypeID, + sum(sbd.sourceBinActivityFraction) + FROM sourceBinDistribution AS sbd INNER JOIN SourceBin AS sb + USING (sourceBinID) + GROUP BY sourceTypeModelYearID, fuelTypeID; +CREATE INDEX index1 ON SBD2 (sourceTypeModelYearID, fuelTypeID); + +CREATE TABLE DistFracts + SELECT stmy.sourceTypeModelYearID, stmy.sourceTypeID, stmy.modelYearID, sbd.fuelTypeID, + sbd.fuelTypeActivityFraction + FROM SourceTypeModelYear AS stmy INNER JOIN SBD2 AS sbd USING (sourceTypeModelYearID); + +CREATE TABLE SHO2 ( + yearID SMALLINT, + monthID SMALLINT, + dayID SMALLINT, + hourID SMALLINT, + modelYearID SMALLINT, + linkID INTEGER, + sourceTypeID SMALLINT, + distance FLOAT); +INSERT INTO SHO2 + SELECT sho.yearID, sho.monthID, hd.dayID, hd.hourID, (sho.yearID - sho.ageID), + sho.linkID, sho.sourceTypeID, sho.distance + FROM SHO AS sho INNER JOIN HourDay AS hd USING (hourDayID); + +CREATE TABLE Link2 + SELECT link.*, c.stateID + FROM Link AS link INNER JOIN County AS c USING (countyID); + +CREATE INDEX index1 ON SHO2 (linkID); +CREATE TABLE SHO3 + SELECT sho.*, link.stateID, link.countyID, link.zoneID, link.roadTypeID + FROM SHO2 AS sho INNER JOIN Link2 AS link USING (linkID); + +CREATE INDEX index1 ON SHO3 (sourceTypeID, modelYearID, roadTypeID); + +INSERT INTO ATActivityOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + activityTypeID, + activity) +SELECT + sho.yearID, + sho.monthID, + sho.dayID, + sho.hourID, + sho.stateID, + sho.countyID, + sho.zoneID, + sho.linkID, + sho.sourceTypeID, + df.fuelTypeID, + sho.modelYearID, + sho.roadTypeID, + 1, + (sho.distance * df.fuelTypeActivityFraction) as activity +FROM DistFracts AS df INNER JOIN SHO3 AS sho USING (sourceTypeID, modelYearID); + +-- Section UseDioxinEmissionRate +insert into MOVESWorkerOutput ( + processID, pollutantID, + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + emissionQuant) +select + r.processID, r.pollutantID, + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,sourceTypeID,a.fuelTypeID,a.modelYearID,roadTypeID,SCC, + (activity*meanBaseRate) as emissionQuant +from ATActivityOutput a +inner join dioxinEmissionRate r on ( + r.fuelTypeID = a.fuelTypeID + and r.modelYearID = a.modelYearID +); +-- End Section UseDioxinEmissionRate + +-- Section UseMetalEmissionRate +insert into MOVESWorkerOutput ( + processID, pollutantID, + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + emissionQuant) +select + r.processID, r.pollutantID, + yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,a.sourceTypeID,a.fuelTypeID,a.modelYearID,roadTypeID,SCC, + (activity*meanBaseRate) as emissionQuant +from ATActivityOutput a +inner join metalEmissionRate r on ( + r.sourceTypeID = a.sourceTypeID + and r.fuelTypeID = a.fuelTypeID + and r.modelYearID = a.modelYearID +); +-- End Section UseMetalEmissionRate + +-- End Section Processing + +-- Section Cleanup +drop table if exists ATActivityOutput; +DROP TABLE IF EXISTS SBD2; +DROP TABLE IF EXISTS SVTD2; +DROP TABLE IF EXISTS SVTD3; +DROP TABLE IF EXISTS DistFracts; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS Link2; +DROP TABLE IF EXISTS SHO3; +-- End Section Cleanup diff --git a/database/AverageSpeedDistributionImporter.sql b/database/AverageSpeedDistributionImporter.sql new file mode 100644 index 0000000..ad39a34 --- /dev/null +++ b/database/AverageSpeedDistributionImporter.sql @@ -0,0 +1,16 @@ +-- Version 2008-10-28 + +-- Ensure distributions sum to 1.0 for all sourceTypeID, roadTypeID, hourDayID combinations. +drop table if exists tempNotUnity; + +create table tempNotUnity +select sourceTypeID, roadTypeID, hourDayID, sum(avgSpeedFraction) as sumAvgSpeedFraction +from avgSpeedDistribution +group by sourceTypeID, roadTypeID, hourDayID +having round(sum(avgSpeedFraction),4) <> 1.0000; + +insert into importTempMessages (message) +select concat('ERROR: Source ',sourceTypeID,', road ',roadTypeID,', hour/day ',hourDayID,' avgSpeedFraction sum is not 1.0 but instead ',round(sumAvgSpeedFraction,4)) +from tempNotUnity; + +drop table if exists tempNotUnity; diff --git a/database/BaseRateCalculator.sql b/database/BaseRateCalculator.sql new file mode 100644 index 0000000..97e8a52 --- /dev/null +++ b/database/BaseRateCalculator.sql @@ -0,0 +1,1522 @@ +-- Directly calculate rates. +-- Version 2015-01-01 +-- Author Wesley Faler + +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.BaseRateByAge##; +TRUNCATE BaseRateByAge; + +##create.BaseRate##; +TRUNCATE BaseRate; + +##create.County##; +TRUNCATE TABLE County; + +CREATE TABLE EmissionRateAdjustmentWorker +( + polProcessID int(11) not null, + sourceTypeID smallint(6) not null, + regClassID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + EmissionRateAdjustment double null default NULL, + primary key (polProcessID, sourceTypeID, fuelTypeID, regClassID, modelYearID) +); +TRUNCATE EmissionRateAdjustmentWorker; + +##create.FuelType##; +TRUNCATE TABLE FuelType; + +create table if not exists LocalFuelSupply ( + fuelTypeID smallint not null, + fuelSubtypeID smallint not null, + fuelFormulationID smallint not null, + marketShare double not null, + fuelSubtypePetroleumFraction double null, + fuelSubtypeFossilFraction double null, + primary key (fuelFormulationID), + key (fuelTypeID, fuelSubtypeID, fuelFormulationID, marketShare), + key (fuelFormulationID) +); +TRUNCATE TABLE LocalFuelSupply; + +##create.generalFuelRatio##; +TRUNCATE TABLE generalFuelRatio; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunspecModelYearAge##; +TRUNCATE TABLE RunspecModelYearAge; + +##create.RunSpecSourceFuelType##; +TRUNCATE TABLE RunSpecSourceFuelType; + +-- Section Process1_2 +##create.criteriaRatio##; +TRUNCATE criteriaRatio; + +##create.altCriteriaRatio##; +TRUNCATE altCriteriaRatio; +-- End Section Process1_2 + +-- Section Process2 +##create.StartTempAdjustment##; +TRUNCATE TABLE StartTempAdjustment; +-- End Section Process2 + +##create.TemperatureAdjustment##; +TRUNCATE TABLE TemperatureAdjustment; + +-- Section GetActivity +create table if not exists universalActivity ( + hourDayID smallint not null, + modelYearID smallint not null, + sourceTypeID smallint not null, + activity double, + primary key (sourceTypeID, hourDayID, modelYearID), + key (hourDayID, modelYearID) +); + +truncate table universalActivity; + +##create.RunSpecHourDay##; +TRUNCATE TABLE RunSpecHourDay; + +##create.RunSpecSourceType##; +TRUNCATE TABLE RunSpecSourceType; + +-- End Section GetActivity + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +create table if not exists zoneACFactor ( + hourID smallint(6) NOT NULL DEFAULT 0, + sourceTypeID smallint(6) NOT NULL DEFAULT 0, + modelYearID smallint(6) NOT NULL DEFAULT 0, + ACFactor double NOT NULL DEFAULT 0, + primary key (hourID, sourceTypeID, modelYearID) +); +TRUNCATE zoneACFactor; + +-- Section AggregateSMFR +create table if not exists smfrSBDSummary ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + regClassID smallint not null, + sbdTotal double not null, + primary key (sourceTypeID, modelYearID, fuelTypeID, regClassID), + key (modelYearID, sourceTypeID, fuelTypeID, regClassID) +); + +truncate smfrSBDSummary; +-- End Section AggregateSMFR + +-- Section Process91 +-- Section AdjustAPUEmissionRate +create table if not exists apuEmissionRateFraction ( + modelYearID smallint not null, + hourFractionAdjust double not null, + primary key (modelYearID) +); +-- End Section AdjustAPUEmissionRate +-- End Section Process91 + + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +-- @algorithm Create EmissionRateAdjustment by modelyear. +-- @output EmissionRateAdjustmentWorker +cache SELECT + era.polProcessID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + emissionRateAdjustment +INTO OUTFILE '##EmissionRateAdjustmentWorker##' +FROM EmissionRateAdjustment era +INNER JOIN pollutantprocessassoc USING (polprocessID) +INNER JOIN modelyear +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID >= ##context.year##-30 +AND modelYearID <= ##context.year## +AND endmodelYearID >= modelYearID +AND beginmodelYearID <= modelYearID; + +-- Section Inventory + +cache(linkID=##context.iterLocation.linkRecordID##) SELECT br.* INTO OUTFILE '##BaseRateByAge##' +FROM BaseRateByAge_##context.iterProcess.databaseKey##_##context.year## br +INNER JOIN ageCategory ac on (ac.ageGroupID = br.ageGroupID) +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND ageID = ##context.year## - modelYearID +AND roadTypeID = ##context.iterLocation.roadTypeRecordID##; + +cache(linkID=##context.iterLocation.linkRecordID##) SELECT * INTO OUTFILE '##BaseRate##' +FROM BaseRate_##context.iterProcess.databaseKey##_##context.year## br +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND roadTypeID = ##context.iterLocation.roadTypeRecordID##; +-- End Section Inventory + +-- Section Rates +-- Section NotProject +cache(linkID=##context.iterLocation.linkRecordID##) SELECT br.* INTO OUTFILE '##BaseRateByAge##' +FROM BaseRateByAge_##context.iterProcess.databaseKey##_##context.year## br +INNER JOIN ageCategory ac on (ac.ageGroupID = br.ageGroupID) +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND ageID = ##context.year## - modelYearID +AND roadTypeID = ##context.iterLocation.roadTypeRecordID## +AND avgSpeedBinID = mod(##context.iterLocation.linkRecordID##,100); + +cache(linkID=##context.iterLocation.linkRecordID##) SELECT * INTO OUTFILE '##BaseRate##' +FROM BaseRate_##context.iterProcess.databaseKey##_##context.year## br +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND roadTypeID = ##context.iterLocation.roadTypeRecordID## +AND avgSpeedBinID = mod(##context.iterLocation.linkRecordID##,100); +-- End Section NotProject + +-- Section Project +cache(linkID=##context.iterLocation.linkRecordID##) SELECT br.* INTO OUTFILE '##BaseRateByAge##' +FROM BaseRateByAge_##context.iterProcess.databaseKey##_##context.year## br +INNER JOIN ageCategory ac on (ac.ageGroupID = br.ageGroupID) +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND ageID = ##context.year## - modelYearID +AND roadTypeID = ##context.iterLocation.roadTypeRecordID##; + +cache(linkID=##context.iterLocation.linkRecordID##) SELECT * INTO OUTFILE '##BaseRate##' +FROM BaseRate_##context.iterProcess.databaseKey##_##context.year## br +WHERE processID = ##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND roadTypeID = ##context.iterLocation.roadTypeRecordID##; +-- End Section Project +-- End Section Rates + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +-- Section Process1_2 +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##criteriaRatio##' +FROM criteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); + +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##altCriteriaRatio##' +FROM altCriteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); +-- End Section Process1_2 + +cache SELECT * INTO OUTFILE '##FuelType##' +FROM FuelType +WHERE fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache select fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare, + fst.fuelSubtypePetroleumFraction, fst.fuelSubtypeFossilFraction +into outfile '##LocalFuelSupply##' +from year +inner join fuelSupply fs on (fs.fuelYearID=year.fuelYearID) +inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID) +inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID) +inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) +where yearID = ##context.year## +and fs.fuelRegionID = ##context.fuelRegionID## +and moay.monthID = ##context.monthID## +and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache select gfr.* into outfile '##generalFuelRatio##' +from generalFuelRatio gfr +where polProcessID in (##pollutantProcessIDs##) +and minModelYearID <= ##context.year## +and maxModelYearID >= ##context.year##-30 +and fuelFormulationID in ( + select ff.fuelFormulationID + from year + inner join fuelSupply fs on (fs.fuelYearID=year.fuelYearID) + inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID) + inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID) + inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) + where yearID = ##context.year## + and fs.fuelRegionID = ##context.fuelRegionID## + and moay.monthID = ##context.monthID## + and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##) +); + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey## +AND polProcessID IN (##pollutantProcessIDs##); + +cache select * into outfile '##RunspecModelYearAge##' +from RunspecModelYearAge +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30 +and yearID = ##context.year##; + +cache select * into outfile '##RunSpecSourceFuelType##' +from RunSpecSourceFuelType; + +-- Section Process2 +cache SELECT StartTempAdjustment.* INTO OUTFILE '##StartTempAdjustment##' +FROM StartTempAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##) +AND fuelTypeID in (##macro.csv.all.fuelTypeID##); +-- End Section Process2 + +cache SELECT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##) +AND fuelTypeID in (##macro.csv.all.fuelTypeID##); + +SELECT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND ZoneMonthHour.monthID = ##context.monthID## +AND ZoneMonthHour.hourID in (##macro.csv.all.hourID##); + +-- @algorithm ACFactor[hourID,sourceTypeID,modelYearID]=LEAST(GREATEST(ACActivityTermA+heatIndex*(ACActivityTermB+ACActivityTermC*heatIndex),0),1.0)*ACPenetrationFraction*functioningACFraction. +-- @output zoneACFactor +-- @input ZoneMonthHour +-- @input SourceTypeAge +cache SELECT zmh.hourID, sta.sourceTypeID, modelYearID, + LEAST(GREATEST(ACActivityTermA+heatIndex*(ACActivityTermB+ACActivityTermC*heatIndex),0),1.0)*ACPenetrationFraction*functioningACFraction as ACFactor + INTO OUTFILE '##zoneACFactor##' +FROM ZoneMonthHour zmh +INNER JOIN MonthOfAnyYear may ON (may.monthID = zmh.monthID) +INNER JOIN MonthGroupHour mgh ON (mgh.monthGroupID = may.monthGroupID AND mgh.hourID = zmh.hourID) +INNER JOIN SourceTypeModelYear stmy +INNER JOIN SourceTypeAge sta ON ( + sta.sourceTypeID = stmy.sourceTypeID AND + sta.ageID = ##context.year## - stmy.modelYearID) +WHERE zmh.zoneID = ##context.iterLocation.zoneRecordID## +and zmh.monthID = ##context.monthID## +and sta.sourceTypeID in (##macro.csv.all.sourceTypeID##); + +-- Section GetActivity +-- Extract activity at the Month context. + +-- Section Process1_9_10 + +-- @algorithm activity=SHO +-- @condition Running Exhaust, Brakewear, Tirewear +select SHO.hourDayID, ##context.year##-ageID as modelYearID, sourceTypeID, + SHO as activity + into outfile '##universalActivity##' +from SHO +inner join RunSpecHourDay using (hourDayID) +where monthID = ##context.monthID## +and yearID = ##context.year## +and linkID = ##context.iterLocation.linkRecordID##; +-- End Section Process1_9_10 + +-- Section Process2 + +-- @algorithm activity=starts +-- @condition Starts +select Starts.hourDayID, ##context.year##-ageID as modelYearID, sourceTypeID, starts as activity + into outfile '##universalActivity##' +from Starts +inner join RunSpecHourDay using (hourDayID) +where monthID = ##context.monthID## +and yearID = ##context.year## +and zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section Process2 + +-- Section Process90 + +-- @algorithm activity=extendedIdleHours +-- @condition Extended Idle Exhaust +select ExtendedIdleHours.hourDayID, ##context.year##-ageID as modelYearID, sourceTypeID, extendedIdleHours as activity + into outfile '##universalActivity##' +from ExtendedIdleHours +inner join RunSpecHourDay using (hourDayID) +where monthID = ##context.monthID## +and yearID = ##context.year## +and zoneID = ##context.iterLocation.zoneRecordID## +and sourceTypeID=62; +-- End Section Process90 + +-- Section Process91 + +-- @algorithm activity=hotellingHours +-- @condition Auxiliary Power Exhaust +select HotellingHours.hourDayID, ##context.year##-ageID as modelYearID, sourceTypeID, hotellingHours as activity + into outfile '##universalActivity##' +from HotellingHours +inner join RunSpecHourDay using (hourDayID) +where monthID = ##context.monthID## +and yearID = ##context.year## +and zoneID = ##context.iterLocation.zoneRecordID## +and sourceTypeID=62; + +-- Section AdjustAPUEmissionRate + +-- @algorithm hourFractionAdjust=1.0/opModeFraction[opModeID=201]. +-- @input hotellingActivityDistribution +-- @output apuEmissionRateFraction +-- @condition Auxiliary Power Exhaust +cache select modelYearID, case when opModeFraction <= 0 then 0.0 else (1.0/opModeFraction) end as hourFractionAdjust + into outfile '##apuEmissionRateFraction##' +from hotellingActivityDistribution +inner join RunspecModelYearAge on ( + beginModelYearID <= modelYearID + and endModelYearID >= modelYearID) +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30 +and yearID = ##context.year## +and opModeID = 201; + +-- End Section AdjustAPUEmissionRate +-- End Section Process91 + +cache select * into outfile '##RunSpecHourDay##' +from RunSpecHourDay; + +cache select * into outfile '##RunSpecSourceType##' +from RunSpecSourceType; + +-- End Section GetActivity + +-- Section AggregateSMFR +cache select round(SourceBinDistribution.sourceTypeModelYearID/10000,0) as sourceTypeID, + mod(SourceBinDistribution.sourceTypeModelYearID,10000) as modelYearID, + SourceBin.fuelTypeID, regClassID, + sum(sourceBinActivityFraction) as sbdTotal +into outfile '##smfrSBDSummary##' +from sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##sbdPolProcessID##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID +group by SourceBinDistribution.sourceTypeModelYearID, SourceBin.fuelTypeID, regClassID +order by null; +-- End Section AggregateSMFR + +-- End Section Extract Data + +-- Section Processing + +alter table FuelType add key speed1 (fuelTypeID, humidityCorrectionCoeff); +analyze table FuelType; + +alter table ZoneMonthHour add key speed1 (hourID, monthID, zoneID, temperature, specificHumidity, heatIndex); +analyze table ZoneMonthHour; + +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT, + key (processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID) +); + +-- @algorithm Disaggregate IMCoverage records, expanding model year ranges into individual model years. +-- IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01. +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- Add columns +drop table if exists tempBaseRateOutput; +create table tempBaseRateOutput like BaseRateOutput; +alter table tempBaseRateOutput add column meanBaseRateIM float default '0'; +alter table tempBaseRateOutput add column emissionRateIM float default '0'; + +alter table tempBaseRateOutput add column opModeID smallint not null default '0'; +alter table tempBaseRateOutput add column generalFraction float not null default '0'; +alter table tempBaseRateOutput add column generalFractionRate float not null default '0'; + +alter table tempBaseRateOutput add column meanBaseRateACAdj float default '0'; +alter table tempBaseRateOutput add column meanBaseRateIMACAdj float default '0'; +alter table tempBaseRateOutput add column emissionRateACAdj float default '0'; +alter table tempBaseRateOutput add column emissionRateIMACAdj float default '0'; + +-- @algorithm Add age-based rates +insert into tempBaseRateOutput (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, meanBaseRateIM, + emissionRate, emissionRateIM, + meanBaseRateACAdj, meanBaseRateIMACAdj, + emissionRateACAdj, emissionRateIMACAdj) +select 0, 0, + ##context.iterLocation.zoneRecordID##, + br.sourceTypeID, br.roadTypeID, br.avgSpeedBinID, br.hourDayID, br.pollutantID, br.processID, + br.modelYearID, + ##context.year##, ##context.monthID##, + fuelTypeID, + br.regClassID, + br.opModeID, br.opModeFraction, br.opModeFractionRate, + br.meanBaseRate, br.meanBaseRateIM, + br.emissionRate, br.emissionRateIM, + br.meanBaseRateACAdj, br.meanBaseRateIMACAdj, + br.emissionRateACAdj, br.emissionRateIMACAdj +from BaseRateByAge br +inner join AgeCategory ac on (ac.ageGroupID = br.ageGroupID) +inner join RunspecModelYearAge mya on ( + mya.yearID = ##context.year## + and mya.modelYearID = br.modelYearID + and mya.ageID = ac.ageID); + +-- @algorithm Add rates that don't depend upon age +insert into tempBaseRateOutput (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, meanBaseRateIM, + emissionRate, emissionRateIM, + meanBaseRateACAdj, meanBaseRateIMACAdj, + emissionRateACAdj, emissionRateIMACAdj) +select 0, 0, + ##context.iterLocation.zoneRecordID##, + br.sourceTypeID, br.roadTypeID, br.avgSpeedBinID, br.hourDayID, br.pollutantID, br.processID, + br.modelYearID, + ##context.year##, ##context.monthID##, + br.fuelTypeID, + br.regClassID, + br.opModeID, br.opModeFraction, br.opModeFractionRate, + br.meanBaseRate, br.meanBaseRateIM, + br.emissionRate, br.emissionRateIM, + br.meanBaseRateACAdj, br.meanBaseRateIMACAdj, + br.emissionRateACAdj, br.emissionRateIMACAdj +from BaseRate br; + +-- Section AdjustAPUEmissionRate +insert ignore into apuEmissionRateFraction (modelYearID, hourFractionAdjust) +select modelYearID, 0 from RunspecModelYearAge; + +-- @algorithm APU hourly rates have already been scaled by the APU operating mode (201) fraction. +-- This works well for inventory, but not so for rate by APU operating hour. +-- To compensate, emission rates must be divided by the opModeFraction for opMode 201. +-- hourFractionAdjust is 1/opModeFraction with a safeguard for a fraction of 0. +-- @condition APU process hourly rates +update tempBaseRateOutput, apuEmissionRateFraction + set emissionRate = emissionRate * hourFractionAdjust, + emissionRateIM = emissionRateIM * hourFractionAdjust, + emissionRateACAdj = emissionRateACAdj * hourFractionAdjust, + emissionRateIMACAdj = emissionRateIMACAdj * hourFractionAdjust +where apuEmissionRateFraction.modelYearID = tempBaseRateOutput.modelYearID +and tempBaseRateOutput.processID = 91; +-- End Section AdjustAPUEmissionRate + +-- Add fuel formulation, hour, and polProcess +drop table if exists BaseRateOutputWithFuel; +create table BaseRateOutputWithFuel like BaseRateOutput; +alter table BaseRateOutputWithFuel add column meanBaseRateIM float default '0'; +alter table BaseRateOutputWithFuel add column emissionRateIM float default '0'; +alter table BaseRateOutputWithFuel add column opModeID smallint not null default '0'; +alter table BaseRateOutputWithFuel add column generalFraction float not null default '0'; +alter table BaseRateOutputWithFuel add column generalFractionRate float not null default '0'; +alter table BaseRateOutputWithFuel add column fuelFormulationID smallint not null default '0'; +alter table BaseRateOutputWithFuel add column fuelSubtypeID smallint not null default '0'; +alter table BaseRateOutputWithFuel add column polProcessID int not null default '0'; +alter table BaseRateOutputWithFuel add column fuelMarketShare double not null default '0'; +alter table BaseRateOutputWithFuel add column hourID smallint not null default '0'; +alter table BaseRateOutputWithFuel add column dayID smallint not null default '0'; + +alter table BaseRateOutputWithFuel add column meanBaseRateACAdj float default '0'; +alter table BaseRateOutputWithFuel add column meanBaseRateIMACAdj float default '0'; +alter table BaseRateOutputWithFuel add column emissionRateACAdj float default '0'; +alter table BaseRateOutputWithFuel add column emissionRateIMACAdj float default '0'; + +analyze table BaseRateOutputWithFuel; + +-- @algorithm Obtain fuel market share. +insert into BaseRateOutputWithFuel (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, hourID, dayID, + pollutantID, processID, + polProcessID, + modelYearID, + yearID, monthID, + fuelTypeID, + fuelSubtypeID, + fuelFormulationID, + fuelMarketShare, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, meanBaseRateIM, + emissionRate, emissionRateIM, + meanBaseRateACAdj, meanBaseRateIMACAdj, + emissionRateACAdj, emissionRateIMACAdj) +select + movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, floor(hourDayID/10) as hourID, mod(hourDayID,10) as dayID, + pollutantID, processID, + (pollutantID * 100 + processID) as polProcessID, + modelYearID, + yearID, monthID, + fs.fuelTypeID, + fs.fuelSubtypeID, + fs.fuelFormulationID, + fs.marketShare as fuelMarketShare, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, meanBaseRateIM, + emissionRate, emissionRateIM, + meanBaseRateACAdj, meanBaseRateIMACAdj, + emissionRateACAdj, emissionRateIMACAdj +from tempBaseRateOutput tbro +inner join LocalFuelSupply fs on (fs.fuelTypeID=tbro.fuelTypeID); + +-- create table step1 select * from BaseRateOutputWithFuel; + +-- Section Process2 +alter table BaseRateOutputWithFuel add column temperature float null; +alter table BaseRateOutputWithFuel add column specificHumidity float null; +alter table BaseRateOutputWithFuel add column K float null; +alter table BaseRateOutputWithFuel add column heatIndex float null; + +-- Note: Uncomment the following line to disable starts additive temperature adjustment. +-- update BaseRateOutputWithFuel set generalFraction = 0, generalFractionRate = 0; + +-- @algorithm Calculate humidity adjustment factor K. +-- K = 1.0 - ((greatest(21.0, least(specificHumidity, 124.0))) - 75.0) * humidityCorrectionCoeff +-- @condition Start Exhaust (2). +update BaseRateOutputWithFuel, ZoneMonthHour, FuelType +set BaseRateOutputWithFuel.temperature = ZoneMonthHour.temperature, + BaseRateOutputWithFuel.specificHumidity = ZoneMonthHour.specificHumidity, + BaseRateOutputWithFuel.K = 1.0 - ((greatest(21.0, least(ZoneMonthHour.specificHumidity, 124.0))) - 75.0) * FuelType.humidityCorrectionCoeff, + BaseRateOutputWithFuel.heatIndex = ZoneMonthHour.heatIndex +where BaseRateOutputWithFuel.zoneID = ZoneMonthHour.zoneID +and BaseRateOutputWithFuel.monthID = ZoneMonthHour.monthID +and BaseRateOutputWithFuel.hourID = ZoneMonthHour.hourID +and BaseRateOutputWithFuel.fuelTypeID = FuelType.fuelTypeID; + +-- @algorithm Do Start Temperature adjustments by opModeID. PM uses multiplicative factors. +-- Everything else uses additive factors. +-- The additive part needs to be weighted by opModeFraction (stored in generalFraction). Being a rate, sourceBinActivityFraction +-- is not required for the weighting since activity would have been weighted similarly. +-- For polProcessIDs (11202,11802): rate = rate*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC. +-- For all other polProcessIDs with startTempEquationType of 'LOG': rate = rate + generalFraction * (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC). +-- For all other polProcessIDs with startTempEquationType of 'POLY': rate = rate + generalFraction * ((LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC))). +-- @condition Start Exhaust (2) process. +update BaseRateOutputWithFuel, StartTempAdjustment, PollutantProcessMappedModelYear +set + meanBaseRate = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + meanBaseRate*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + meanBaseRate + generalFraction * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + meanBaseRateIM = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + meanBaseRateIM*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + meanBaseRateIM + generalFraction * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + emissionRate = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + emissionRate*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + emissionRate + generalFractionRate * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + emissionRateIM = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + emissionRateIM*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + emissionRateIM + generalFractionRate * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + meanBaseRateACAdj = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + meanBaseRateACAdj*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + meanBaseRateACAdj + generalFraction * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + meanBaseRateIMACAdj = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + meanBaseRateIMACAdj*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + meanBaseRateIMACAdj + generalFraction * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + emissionRateACAdj = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + emissionRateACAdj*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + emissionRateACAdj + generalFractionRate * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END, + emissionRateIMACAdj = + CASE WHEN BaseRateOutputWithFuel.polProcessID in (11202,11802) THEN + emissionRateIMACAdj*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ELSE + emissionRateIMACAdj + generalFractionRate * + CASE WHEN startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END + END +where BaseRateOutputWithFuel.polProcessID=StartTempAdjustment.polProcessID +and BaseRateOutputWithFuel.fuelTypeID=StartTempAdjustment.fuelTypeID +and BaseRateOutputWithFuel.opModeID=StartTempAdjustment.opModeID +and BaseRateOutputWithFuel.modelYearID=PollutantProcessMappedModelYear.modelYearID +and StartTempAdjustment.polProcessID=PollutantProcessMappedModelYear.polProcessID +and StartTempAdjustment.modelYearGroupID=PollutantProcessMappedModelYear.modelYearGroupID; +-- End Section Process2 + +-- @algorithm Apply the County's GPAFract to the general fuel adjustment. +-- fuelEffectRatio=ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)) +update GeneralFuelRatio, County +set fuelEffectRatio=ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)); + +-- Apply GeneralFuelRatio to BaseRateOutputWithFuel +alter table generalFuelRatio add key (fuelTypeID, fuelFormulationID, sourceTypeID, polProcessID); + +-- @algorithm Apply GeneralFuelRatio to BaseRateOutputWithFuel. rate = rate * fuelEffectRatio. +-- fuelEffectRatio is the GPA-weighted GeneralFuelRatio. +update BaseRateOutputWithFuel, GeneralFuelRatio +set meanBaseRate=meanBaseRate*fuelEffectRatio, meanBaseRateIM=meanBaseRateIM*fuelEffectRatio, + emissionRate=emissionRate*fuelEffectRatio, emissionRateIM=emissionRateIM*fuelEffectRatio, + meanBaseRateACAdj=meanBaseRateACAdj*fuelEffectRatio, meanBaseRateIMACAdj=meanBaseRateIMACAdj*fuelEffectRatio, + emissionRateACAdj=emissionRateACAdj*fuelEffectRatio, emissionRateIMACAdj=emissionRateIMACAdj*fuelEffectRatio +where GeneralFuelRatio.fuelTypeID = BaseRateOutputWithFuel.fuelTypeID +and GeneralFuelRatio.fuelFormulationID = BaseRateOutputWithFuel.fuelFormulationID +and GeneralFuelRatio.polProcessID = BaseRateOutputWithFuel.polProcessID +and GeneralFuelRatio.minModelYearID <= BaseRateOutputWithFuel.modelYearID +and GeneralFuelRatio.maxModelYearID >= BaseRateOutputWithFuel.modelYearID +and GeneralFuelRatio.minAgeID <= BaseRateOutputWithFuel.yearID - BaseRateOutputWithFuel.modelYearID +and GeneralFuelRatio.maxAgeID >= BaseRateOutputWithFuel.yearID - BaseRateOutputWithFuel.modelYearID +and GeneralFuelRatio.sourceTypeID = BaseRateOutputWithFuel.sourceTypeID; + +-- create table step2 select * from BaseRateOutputWithFuel; + +-- Section Process1_2 +-- @algorithm Apply the County's GPAFract to the criteriaRatio fuel adjustment. +-- criteria ratio = ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1)) +-- @condition Running Exhaust (1) and Start Exhaust (2). +update CriteriaRatio, County +set ratio=ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1)); + +alter table CriteriaRatio add key speed1 (fuelTypeID,fuelFormulationID,polProcessID,sourceTypeID,modelYearID,ageID); +analyze table CriteriaRatio; + +-- @algorithm Apply CriteriaRatio to BaseRateOutputWithFuel. +-- rate = rate * criteria ratio[fuelTypeID,fuelFormulationID,polProcessID,sourceTypeID,modelYearID,ageID] +-- @condition Running Exhaust (1) and Start Exhaust (2). +update BaseRateOutputWithFuel, CriteriaRatio +set meanBaseRate=meanBaseRate*ratio, meanBaseRateIM=meanBaseRateIM*ratio, + emissionRate=emissionRate*ratio, emissionRateIM=emissionRateIM*ratio, + meanBaseRateACAdj=meanBaseRateACAdj*ratio, meanBaseRateIMACAdj=meanBaseRateIMACAdj*ratio, + emissionRateACAdj=emissionRateACAdj*ratio, emissionRateIMACAdj=emissionRateIMACAdj*ratio +where CriteriaRatio.fuelTypeID = BaseRateOutputWithFuel.fuelTypeID +and CriteriaRatio.fuelFormulationID = BaseRateOutputWithFuel.fuelFormulationID +and CriteriaRatio.polProcessID = BaseRateOutputWithFuel.polProcessID +and CriteriaRatio.sourceTypeID = BaseRateOutputWithFuel.sourceTypeID +and CriteriaRatio.modelYearID = BaseRateOutputWithFuel.modelYearID +and CriteriaRatio.ageID = BaseRateOutputWithFuel.yearID - BaseRateOutputWithFuel.modelYearID; + +-- create table step3 select * from BaseRateOutputWithFuel; + +-- End Section Process1_2 + +-- Apply temperature effects +-- Section NotProcess2 +alter table BaseRateOutputWithFuel add column temperature float null; +alter table BaseRateOutputWithFuel add column specificHumidity float null; +alter table BaseRateOutputWithFuel add column K float null; +alter table BaseRateOutputWithFuel add column heatIndex float null; + +-- @algorithm Calculate humidity adjustment factor K. +-- K = 1.0 - ((greatest(21.0, least(specificHumidity, 124.0))) - 75.0) * humidityCorrectionCoeff +-- @condition Not Start Exhaust (2). +update BaseRateOutputWithFuel, ZoneMonthHour, FuelType +set BaseRateOutputWithFuel.temperature = ZoneMonthHour.temperature, + BaseRateOutputWithFuel.specificHumidity = ZoneMonthHour.specificHumidity, + BaseRateOutputWithFuel.K = 1.0 - ((greatest(21.0, least(ZoneMonthHour.specificHumidity, 124.0))) - 75.0) * FuelType.humidityCorrectionCoeff, + BaseRateOutputWithFuel.heatIndex = ZoneMonthHour.heatIndex +where BaseRateOutputWithFuel.zoneID = ZoneMonthHour.zoneID +and BaseRateOutputWithFuel.monthID = ZoneMonthHour.monthID +and BaseRateOutputWithFuel.hourID = ZoneMonthHour.hourID +and BaseRateOutputWithFuel.fuelTypeID = FuelType.fuelTypeID; + +-- create table step4 select * from BaseRateOutputWithFuel; + +-- End Section NotProcess2 + +-- @algorithm Apply temperature adjustment. +-- For processes (1,2) and pollutants (118,112): rate=rate*exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)). +-- For all others: rate=rate*((1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB))*if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0)). +-- @input TemperatureAdjustment +-- @output BaseRateOutputWithFuel +-- @condition Testing +update BaseRateOutputWithFuel, TemperatureAdjustment +set + meanBaseRate=meanBaseRate* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + meanBaseRateIM=meanBaseRateIM* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + emissionRate=emissionRate* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + emissionRateIM=emissionRateIM* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + meanBaseRateACAdj=meanBaseRateACAdj* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + meanBaseRateIMACAdj=meanBaseRateIMACAdj* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + emissionRateACAdj=emissionRateACAdj* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end, + emissionRateIMACAdj=emissionRateIMACAdj* + case when (processID in (1,2) and pollutantID in (118,112) and modelYearID between minModelYearID and maxModelYearID) then + exp((case when temperature <= 72.0 then tempAdjustTermA*(72.0-temperature) else 0 end)) + else + (1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB)) + *if(BaseRateOutputWithFuel.processID in (1,90,91),if(BaseRateOutputWithFuel.pollutantID=3,K,1.0),1.0) + end +where BaseRateOutputWithFuel.polProcessID = TemperatureAdjustment.polProcessID +and BaseRateOutputWithFuel.fuelTypeID = TemperatureAdjustment.fuelTypeID +and modelYearID between TemperatureAdjustment.minModelYearID and TemperatureAdjustment.maxModelYearID; + +-- create table step5_BaseRateOutputWithFuel select * from BaseRateOutputWithFuel + +-- Section NotProcess2 +-- Apply Air Conditioning to BaseRateOutputWithFuel +-- Build the AC update in two steps. First set the zoneACFactor (hour, source, modelyear). +-- Then multiply the factor by the full AC adjustment addition (i.e. fullACAdjustment-1). +-- When all done, change the emissions for any non-zero factor. +update BaseRateOutputWithFuel set generalFraction = 0, generalFractionRate = 0; + +-- @algorithm generalFraction = ACFactor[hourID,sourceTypeID,modelYearID]. +-- @condition Not Start Exhaust (2). +-- @input zoneACFactor +-- @output BaseRateOutputWithFuel +update BaseRateOutputWithFuel, zoneACFactor +set generalFraction = ACFactor +where BaseRateOutputWithFuel.hourID = zoneACFactor.hourID +and BaseRateOutputWithFuel.sourceTypeID = zoneACFactor.sourceTypeID +and BaseRateOutputWithFuel.modelYearID = zoneACFactor.modelYearID; + +-- @algorithm meanBaseRate = meanBaseRate + (meanBaseRateACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). +-- meanBaseRateIM = meanBaseRateIM + (meanBaseRateIMACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). +-- emissionRate = emissionRate + (emissionRateACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). +-- emissionRateIM = emissionRateIM + (emissionRateIMACAdj * generalFraction[hourID,sourceTypeID,modelYearID]). +-- @condition Not Start Exhaust (2). +update BaseRateOutputWithFuel +set meanBaseRate = meanBaseRate + (meanBaseRateACAdj*generalFraction), + meanBaseRateIM = meanBaseRateIM + (meanBaseRateIMACAdj*generalFraction), + emissionRate = emissionRate + (emissionRateACAdj*generalFraction), + emissionRateIM = emissionRateIM + (emissionRateIMACAdj*generalFraction) +where generalFraction <> 0; + +-- create table step6_BaseRateOutputWithFuel select * from BaseRateOutputWithFuel + +-- End Section NotProcess2 + +-- @algorithm Apply I/M programs to BaseRateOutputWithFuel. +-- meanBaseRate=meanBaseRateIM*IMAdjustFract + meanBaseRate*(1-IMAdjustFract). +-- emissionRate=emissionRateIM*IMAdjustFract + emissionRate*(1-IMAdjustFract). +-- @input IMCoverageMergedUngrouped +-- @output BaseRateOutputWithFuel +update BaseRateOutputWithFuel, IMCoverageMergedUngrouped +set + meanBaseRate=GREATEST(meanBaseRateIM*IMAdjustFract + meanBaseRate*(1.0-IMAdjustFract),0.0), + emissionRate=GREATEST(emissionRateIM*IMAdjustFract + emissionRate*(1.0-IMAdjustFract),0.0) +where BaseRateOutputWithFuel.processID = IMCoverageMergedUngrouped.processID + and BaseRateOutputWithFuel.pollutantID = IMCoverageMergedUngrouped.pollutantID + and BaseRateOutputWithFuel.modelYearID = IMCoverageMergedUngrouped.modelYearID + and BaseRateOutputWithFuel.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and BaseRateOutputWithFuel.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +-- create table step8 select * from BaseRateOutputWithFuel; + +-- Section Process1_2 +-- Handle E85 THC that is created from E10's RVP instead of E85's RVP. + +-- @algorithm Handle E85 THC that is created from E10's RVP instead of E85's RVP. +-- Weight the fuel effect ratio by the county's GPA fraction +-- alt criteria ratio=ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1)) +-- @condition Running Exhaust (1) and Start Exhaust (2). +-- @input County +-- @output altCriteriaRatio +update altCriteriaRatio, County +set ratio=ifnull(ratio,1)+GPAFract*(ifnull(ratioGPA,1)-ifnull(ratio,1)); + +-- @algorithm Determine the scaling effect of E10-RVP-based fuel effects to E85-RVP-based fuel effects. +-- alt criteria ratio = alt criteria ratio / criteria ratio. +-- @condition Running Exhaust (1) and Start Exhaust (2). +-- @input criteriaRatio +-- @output altCriteriaRatio +update altCriteriaRatio, criteriaRatio +set altCriteriaRatio.ratio = case when criteriaRatio.ratio > 0 then altCriteriaRatio.ratio / criteriaRatio.ratio else 0 end +where altCriteriaRatio.fuelTypeID = criteriaRatio.fuelTypeID +and altCriteriaRatio.fuelFormulationID = criteriaRatio.fuelFormulationID +and altCriteriaRatio.polProcessID = criteriaRatio.polProcessID +and altCriteriaRatio.sourceTypeID = criteriaRatio.sourceTypeID +and altCriteriaRatio.modelYearID = criteriaRatio.modelYearID +and altCriteriaRatio.ageID = criteriaRatio.ageID; + +alter table altCriteriaRatio add key speed1 (fuelTypeID,fuelFormulationID,polProcessID,sourceTypeID,modelYearID,ageID); +analyze table altCriteriaRatio; + +-- @algorithm Make THC records from the E10 RVP by using the E85-based THC. +-- The output pollutant is 10001. +-- rate for pollutant 10001 = rate * alt criteria ratio. +-- @condition Running Exhaust (1) and Start Exhaust (2). +insert into BaseRateOutputWithFuel (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, hourID, dayID, + pollutantID, processID, + polProcessID, + modelYearID, + yearID, monthID, + fuelTypeID, + fuelSubtypeID, + fuelFormulationID, + fuelMarketShare, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, + emissionRate) +select b.movesRunID, b.iterationID, + b.zoneID, + b.sourceTypeID, b.roadTypeID, b.avgSpeedBinID, b.hourDayID, b.hourID, b.dayID, + (10000 + b.pollutantID) as pollutantID, b.processID, + ((10000 + b.pollutantID)*100 + b.processID) as polProcessID, + b.modelYearID, + b.yearID, b.monthID, + b.fuelTypeID, + b.fuelSubtypeID, + b.fuelFormulationID, + b.fuelMarketShare, + b.regClassID, + b.opModeID, b.generalFraction, b.generalFractionRate, + meanBaseRate*ratio, + emissionRate*ratio +from BaseRateOutputWithFuel b +inner join altCriteriaRatio a on ( + b.fuelTypeID = a.fuelTypeID + and b.fuelFormulationID = a.fuelFormulationID + and b.polProcessID = a.polProcessID + and b.sourceTypeID = a.sourceTypeID + and b.modelYearID = a.modelYearID + and a.ageID = b.yearID - b.modelYearID) +where b.fuelSubtypeID in (51,52) +and b.modelYearID >= 2001; + +-- End Section Process1_2 + +-- Section EmissionRateAdjustment + +-- @algorithm emissionRate=emissionRate*EmissionRateAdjustment, +-- meanbaserate=meanbaserate*EmissionRateAdjustment +update BaseRateOutputWithFuel, EmissionRateAdjustmentWorker +set + emissionRate=emissionRate*EmissionRateAdjustment, + meanbaserate=meanbaserate*EmissionRateAdjustment +where BaseRateOutputWithFuel.polprocessID = EmissionRateAdjustmentWorker.polprocessID + and BaseRateOutputWithFuel.sourceTypeID = EmissionRateAdjustmentWorker.sourceTypeID + and BaseRateOutputWithFuel.fuelTypeID = EmissionRateAdjustmentWorker.fuelTypeID + and BaseRateOutputWithFuel.regClassID = EmissionRateAdjustmentWorker.regClassID + and BaseRateOutputWithFuel.modelYearID = EmissionRateAdjustmentWorker.modelYearID; + +-- End Section EmissionRateAdjustment + +-- Section Chain92 +-- Do Petroleum Energy (92) + +-- @algorithm Petroleum Energy (92) = Total Energy Consumption (91) * fuelSubtypePetroleumFraction. +insert into BaseRateOutputWithFuel (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, hourID, dayID, + pollutantID, processID, + polProcessID, + modelYearID, + yearID, monthID, + fuelTypeID, + fuelSubtypeID, + fuelFormulationID, + fuelMarketShare, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, + emissionRate) +select b.movesRunID, b.iterationID, + b.zoneID, + b.sourceTypeID, b.roadTypeID, b.avgSpeedBinID, b.hourDayID, b.hourID, b.dayID, + 92 as pollutantID, b.processID, + (92*100 + b.processID) as polProcessID, + b.modelYearID, + b.yearID, b.monthID, + b.fuelTypeID, + b.fuelSubtypeID, + b.fuelFormulationID, + b.fuelMarketShare, + b.regClassID, + b.opModeID, b.generalFraction, b.generalFractionRate, + meanBaseRate*fs.fuelSubtypePetroleumFraction, + emissionRate*fs.fuelSubtypePetroleumFraction +from BaseRateOutputWithFuel b +inner join LocalFuelSupply fs using (fuelFormulationID) +where b.pollutantID=91; +-- End Section Chain92 + +-- Section Chain93 +-- Do Fossil Energy (93) + +-- @algorithm Fossil Energy (93) = Total Energy Consumption (91) * fuelSubtypeFossilFraction. +insert into BaseRateOutputWithFuel (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, hourID, dayID, + pollutantID, processID, + polProcessID, + modelYearID, + yearID, monthID, + fuelTypeID, + fuelSubtypeID, + fuelFormulationID, + fuelMarketShare, + regClassID, + opModeID, generalFraction, generalFractionRate, + meanBaseRate, + emissionRate) +select b.movesRunID, b.iterationID, + b.zoneID, + b.sourceTypeID, b.roadTypeID, b.avgSpeedBinID, b.hourDayID, b.hourID, b.dayID, + 93 as pollutantID, b.processID, + (93*100 + b.processID) as polProcessID, + b.modelYearID, + b.yearID, b.monthID, + b.fuelTypeID, + b.fuelSubtypeID, + b.fuelFormulationID, + b.fuelMarketShare, + b.regClassID, + b.opModeID, b.generalFraction, b.generalFractionRate, + meanBaseRate*fs.fuelSubtypeFossilFraction, + emissionRate*fs.fuelSubtypeFossilFraction +from BaseRateOutputWithFuel b +inner join LocalFuelSupply fs using (fuelFormulationID) +where b.pollutantID=91; +-- End Section Chain93 + +alter table BaseRateOutputWithFuel add key ( + sourceTypeID, avgSpeedBinID, hourDayID, + pollutantID, + modelYearID, + fuelTypeID, + regClassID); + +analyze table BaseRateOutputWithFuel; + +-- @algorithm Remove fuel formulation and opModeID from BaseRateOutputWithFuel, filling BaseRateOutput. +-- Note: This top-level calculator executes at the Month level. That means there will be exactly one +-- distinct value in each of these columns: +-- processID, stateID, countyID, zoneID, linkID, roadtypeID, yearID, monthID. +-- As such, these columns do not need to be indexed or included in a GROUP BY. +insert into BaseRateOutput (movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, + pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + meanBaseRate, + emissionRate) +select + movesRunID, iterationID, + zoneID, + sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, + pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + sum(fuelMarketShare*meanBaseRate) as meanBaseRate, + sum(fuelMarketShare*emissionRate) as emissionRate +from BaseRateOutputWithFuel +group by + sourceTypeID, avgSpeedBinID, hourDayID, + pollutantID, + modelYearID, + fuelTypeID, + regClassID; + +-- Section GetActivity +-- @algorithm Ensure all activity slots have data. Use a default value of 0 +-- when not provided by the input table. +insert ignore into universalActivity (hourDayID, modelYearID, sourceTypeID, activity) +select hourDayID, modelYearID, sourceTypeID, 0 +from RunSpecHourDay, RunSpecModelyearAge, RunSpecSourceType; +-- End Section GetActivity + +-- Section AggregateSMFR +drop table if exists activityTotal; +drop table if exists activityDetail; + +create table if not exists activityDetail ( + hourDayID smallint not null, + modelYearID smallint not null, + sourceTypeID smallint not null, + fuelTypeID smallint not null, + regClassID smallint not null, + activity double, + activityRates double, + primary key (sourceTypeID, hourDayID, modelYearID, fuelTypeID, regClassID), + key (hourDayID, modelYearID, fuelTypeID, regClassID) +); + +insert into activityDetail(hourDayID,modelYearID,sourceTypeID,fuelTypeID,regClassID,activity,activityRates) +select u.hourDayID,u.modelYearID,u.sourceTypeID,fuelTypeID,regClassID, + sum(activity*sbdTotal) as activity, + sum(activity*sbdTotal) as activityRates +from smfrSBDSummary s +inner join universalActivity u using (sourceTypeID, modelYearID) +group by u.sourceTypeID, u.hourDayID, u.modelYearID, fuelTypeID, regClassID +order by null; + +-- Section AdjustAPUEmissionRate + +-- @algorithm When aggregating APU emission rates to remove source type, model year, fuel type, or regclass, +-- the activity used to weight the rates must be adjusted. The input activity includes extended idling +-- and instead must be restricted to just hours spent using a diesel APU. This is a model year-based effect. +update activityDetail, apuEmissionRateFraction + set activityRates = activityRates * hourFractionAdjust +where apuEmissionRateFraction.modelYearID = activityDetail.modelYearID; +-- End Section AdjustAPUEmissionRate + +create table activityTotal ( + hourDayID smallint not null, + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + regClassID smallint not null, + activityTotal double, + activityRatesTotal double, + primary key (hourDayID, modelYearID, sourceTypeID, fuelTypeID, regClassID), + key (hourDayID, sourceTypeID, modelYearID, fuelTypeID, regClassID) +); + +insert into activityTotal (hourDayID,sourceTypeID,modelYearID,fuelTypeID,regClassID,activityTotal,activityRatesTotal) +select hourDayID + ##activityTotalSelect## + , sum(activity) as activityTotal + , sum(activityRates) as activityRatesTotal +from activityDetail u +group by hourDayID + ##activityTotalGroup## +order by null; + +drop table if exists activityWeight; + +create table if not exists activityWeight ( + hourDayID smallint not null, + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + regClassID smallint not null, + smfrFraction double, + smfrRatesFraction double, + primary key (sourceTypeID, hourDayID, modelYearID, fuelTypeID, regClassID), + key (modelYearID, sourceTypeID, hourDayID, fuelTypeID, regClassID), + key (hourDayID, sourceTypeID, modelYearID, fuelTypeID, regClassID) +); + +-- @algorithm When aggregating rates to remove source type, model year, fuel type, or regclass, calculate an activity distribution. +-- smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] = activity[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] / activityTotal[aggregated] +insert into activityWeight (hourDayID,sourceTypeID,modelYearID,fuelTypeID,regClassID,smfrFraction,smfrRatesFraction) +select u.hourDayID, u.sourceTypeID, u.modelYearID, u.fuelTypeID, u.regClassID, + case when activityTotal > 0 then activity/activityTotal else 0.0 end as smfrFraction, + case when activityRatesTotal > 0 then activityRates/activityRatesTotal else 0.0 end as smfrRatesFraction +from activityDetail u +inner join activityTotal t using (hourDayID + ##activityWeightJoin## +); + +-- Section AdjustEmissionRateOnly +-- @algorithm When aggregating rates to remove source type, model year, fuel type, or regclass, weight emissions by the activity distribution. +-- BaseRateOutput = BaseRateOutput * smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] +update BaseRateOutput, activityWeight +set + emissionRate=emissionRate*smfrRatesFraction +where BaseRateOutput.modelYearID = activityWeight.modelYearID + and BaseRateOutput.sourceTypeID = activityWeight.sourceTypeID + and BaseRateOutput.hourDayID = activityWeight.hourDayID + and BaseRateOutput.fuelTypeID = activityWeight.fuelTypeID + and BaseRateOutput.regClassID = activityWeight.regClassID; +-- End Section AdjustEmissionRateOnly + +-- Section AdjustMeanBaseRateAndEmissionRate +-- @algorithm When aggregating rates to remove source type, model year, fuel type, or regclass, weight emissions by the activity distribution. +-- BaseRateOutput = BaseRateOutput * smfrFraction[sourceTypeID,modelYearID,hourDayID,fuelTypeID,regClassID] +update BaseRateOutput, activityWeight +set + meanBaseRate=meanBaseRate*smfrFraction, + emissionRate=emissionRate*smfrRatesFraction +where BaseRateOutput.modelYearID = activityWeight.modelYearID + and BaseRateOutput.sourceTypeID = activityWeight.sourceTypeID + and BaseRateOutput.hourDayID = activityWeight.hourDayID + and BaseRateOutput.fuelTypeID = activityWeight.fuelTypeID + and BaseRateOutput.regClassID = activityWeight.regClassID; +-- End Section AdjustMeanBaseRateAndEmissionRate + +-- End Section AggregateSMFR + +-- Section ApplyActivity + +-- @algorithm When creating an inventory or certain rates, convert BaseRateOutput to an inventory. +-- BaseRateOutput.meanBaseRate = BaseRateOutput.meanBaseRate * activity[processID,hourDayID,modelYearID,sourceTypeID(,month,year,location)] +update BaseRateOutput, universalActivity +set + meanBaseRate=meanBaseRate*activity +where BaseRateOutput.processID = ##context.iterProcess.databaseKey## + and BaseRateOutput.hourDayID = universalActivity.hourDayID + and BaseRateOutput.modelYearID = universalActivity.modelYearID + and BaseRateOutput.sourceTypeID = universalActivity.sourceTypeID; + +-- End Section ApplyActivity + +-- @algorithm Populate MOVESWorkerOutput from BaseRateOutput. +insert into MOVESWorkerOutput (movesRunID, iterationID, + zoneID, linkID, countyID, stateID, + sourceTypeID, SCC, roadTypeID, + hourID, dayID, + pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + emissionQuant, + emissionRate) +select movesRunID, iterationID, + zoneID, + ##context.iterLocation.linkRecordID## as linkID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.stateRecordID## as stateID, + sourceTypeID, SCC, roadTypeID, + floor(hourDayID/10) as hourID, mod(hourDayID,10) as dayID, + pollutantID, processID, + modelYearID, + yearID, monthID, + fuelTypeID, + regClassID, + meanBaseRate as emissionQuant, + emissionRate +from BaseRateOutput; + +-- End Section Processing + +-- Section Cleanup +drop table if exists tempBaseRateOutput; +drop table if exists BaseRateOutputWithFuel; +drop table if exists IMCoverageMergedUngrouped; +drop table if exists zoneACFactor; +drop table if exists LocalFuelSupply; +drop table if exists modelYearWeight; +drop table if exists vmtByMYRoadHourFraction; +drop table if exists activityTotal; +drop table if exists activityWeight; +drop table if exists apuEmissionRateFraction; + +drop table if exists step1; +drop table if exists step2; +drop table if exists step3; +drop table if exists step4; +drop table if exists step5; +drop table if exists step6; +drop table if exists step7; +drop table if exists step8; + +-- End Section Cleanup + +-- Section Final Cleanup + +-- Remove any debugging pollutants. +delete from MOVESWorkerOutput where pollutantID >= 10000; +delete from BaseRateOutput where pollutantID >= 10000; + +-- Section HasChainedCalculators +-- @algorithm When chained calculators are used, data must be moved back from MOVESWorkerOutput. +-- avgSpeedBinID must be recovered in this process. +-- @condition Chained calculators are present. + +-- @algorithm Remove entries from BaseRateOutput. These will be reinserted later along with +-- the results from chained calculators. +-- @condition Chained calculators are present. +truncate table BaseRateOutput; + +-- Section Rates +-- Section NotProject +-- @algorithm Populate BaseRateOutput from MOVESWorkerOutput. +-- @condition Non-Project domain rates chained calculators are present. +insert into BaseRateOutput(MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + avgSpeedBinID, + monthID, + hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + meanBaseRate,emissionRate) +select MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + mod(linkID,100) as avgSpeedBinID, + monthID, + (hourID*10 + dayID) as hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + emissionQuant as meanBaseRate,emissionRate +from MOVESWorkerOutput; +-- End Section NotProject + +-- Section Project +-- @algorithm Populate BaseRateOutput from MOVESWorkerOutput. avgSpeedBinID is always 0 in project mode. +-- @condition Project domain rates chained calculators are present. +insert into BaseRateOutput(MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + avgSpeedBinID, + monthID, + hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + meanBaseRate,emissionRate) +select MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + 0 as avgSpeedBinID, + monthID, + (hourID*10 + dayID) as hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + emissionQuant as meanBaseRate,emissionRate +from MOVESWorkerOutput; +-- End Section Project +-- End Section Rates + +-- Section Inventory +-- @algorithm Populate BaseRateOutput from MOVESWorkerOutput. avgSpeedBinID is always 0 in inventory mode. +-- @condition Inventory chained calculators are present. +insert into BaseRateOutput(MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + avgSpeedBinID, + monthID, + hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + meanBaseRate,emissionRate) +select MOVESRunID,iterationID, + zoneID,linkID,sourceTypeID,SCC,roadTypeID, + 0 as avgSpeedBinID, + monthID, + (hourID*10 + dayID) as hourDayID, + pollutantID,processID,modelYearID,yearID,fuelTypeID,regClassID, + emissionQuant as meanBaseRate,emissionRate +from MOVESWorkerOutput; +-- End Section Inventory +-- End Section HasChainedCalculators + +-- Section HasNoChainedCalculators +update BaseRateOutput set linkID=##context.iterLocation.linkRecordID## +where linkID is null or linkID=0; +-- End Section HasNoChainedCalculators + +-- End Section Final Cleanup diff --git a/database/BasicPM25Calculator.sql b/database/BasicPM25Calculator.sql new file mode 100644 index 0000000..32188a4 --- /dev/null +++ b/database/BasicPM25Calculator.sql @@ -0,0 +1,739 @@ +-- Version 2013-09-15 +-- Wesley Faler +-- Ed Campbell +-- Gwo Shyu/EPA 2008-07-025 - Added PM2.5 fuel adjustment +-- Supported special section names: +-- HasManyOpModes +-- HasOneOpMode +-- EmissionRateByAgeRates +-- EmissionRateRates +-- SourceHoursOperatingActivity +-- SourceHoursActivity +-- StartsActivity +-- ApplyTemperatureAdjustment +-- ApplyLinearTemperatureAdjustment +-- NoTemperatureAdjustment + +-- @notused + +-- Section Create Remote Tables for Extracted Data +##create.AgeCategory##; +TRUNCATE TABLE AgeCategory; + +##create.County##; +TRUNCATE TABLE County; + +##create.generalFuelRatio##; +TRUNCATE TABLE generalFuelRatio; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.Zone##; +TRUNCATE TABLE Zone; + +##create.Pollutant##; +TRUNCATE TABLE Pollutant; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +-- Section EmissionRateRates +##create.EmissionRate##; +TRUNCATE TABLE EmissionRate; +-- End Section EmissionRateRates + +-- Section EmissionRateByAgeRates +##create.EmissionRateByAge##; +TRUNCATE TABLE EmissionRateByAge; +-- End Section EmissionRateByAgeRates + +##create.Year##; +TRUNCATE TABLE Year; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +-- Section HasManyOpModes +##create.OpModeDistribution##; +TRUNCATE TABLE OpModeDistribution; +-- End Section HasManyOpModes + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.PollutantProcessAssoc##; +TRUNCATE TABLE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE TABLE PollutantProcessModelYear; + +-- Section SourceHoursOperatingActivity +##create.SHO##; +TRUNCATE TABLE SHO; +-- End Section SourceHoursOperatingActivity + +-- Section SourceHoursActivity +##create.SourceHours##; +TRUNCATE TABLE SourceHours; +-- End Section SourceHoursActivity + +-- Section StartsActivity +##create.Starts##; +TRUNCATE TABLE Starts; +-- End Section StartsActivity + +-- Section ApplyTemperatureAdjustment +##create.TemperatureAdjustment##; +TRUNCATE TABLE TemperatureAdjustment; + +##create.ZoneMonthHour##; +TRUNCATE TABLE ZoneMonthHour; +-- End Section ApplyTemperatureAdjustment + +-- Section ApplyLinearTemperatureAdjustment +##create.TemperatureAdjustment##; +TRUNCATE TABLE TemperatureAdjustment; + +##create.ZoneMonthHour##; +TRUNCATE TABLE ZoneMonthHour; +-- End Section ApplyLinearTemperatureAdjustment + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +drop table if exists tempFuelFormulation; +create table if not exists tempFuelFormulation ( + fuelFormulationID int not null primary key +); +insert into tempFuelFormulation (fuelFormulationID) +SELECT distinct fuelFormulationID +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +SELECT gfr.* INTO OUTFILE '##generalFuelRatio##' +FROM generalFuelRatio gfr +INNER JOIN tempFuelFormulation tff on tff.fuelFormulationID = gfr.fuelFormulationID +WHERE polProcessID IN (##pollutantProcessIDs##) +AND minModelYearID <= ##context.year##; + +drop table tempFuelFormulation; + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT MonthOfAnyYear.* +INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +-- Section HasManyOpModes +cache SELECT * +INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType, RunSpecHourDay +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID +AND RunSpecHourDay.hourDayID = OpModeDistribution.hourDayID; +-- End Section HasManyOpModes + +cache SELECT * +INTO OUTFILE '##Pollutant##' +FROM Pollutant; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +-- Section EmissionRateRates +cache SELECT DISTINCT EmissionRate.* +INTO OUTFILE '##EmissionRate##' +FROM EmissionRate, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE EmissionRate.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRate.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRate.SourceBinID = SourceBinDistribution.SourceBinID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; +-- End Section EmissionRateRates + +-- Section EmissionRateByAgeRates +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.SourceBinID = SourceBinDistribution.SourceBinID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; +-- End Section EmissionRateByAgeRates + +cache SELECT * INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT * +INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * +INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +-- Section SourceHoursOperatingActivity +SELECT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO +INNER JOIN RunSpecMonth USING (monthID) +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; +-- End Section SourceHoursOperatingActivity + +-- Section SourceHoursActivity +SELECT SourceHours.* +INTO OUTFILE '##SourceHours##' +FROM SourceHours +INNER JOIN RunSpecMonth USING (monthID) +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; +-- End Section SourceHoursActivity + +-- Section StartsActivity +SELECT Starts.* INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section StartsActivity + +-- Section ApplyTemperatureAdjustment +cache SELECT DISTINCT TemperatureAdjustment.* +INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType USING (fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ZoneMonthHour.* +INTO OUTFILE '##ZoneMonthHour##' +FROM RunSpecMonth +INNER JOIN RunSpecHour +INNER JOIN ZoneMonthHour ON (ZoneMonthHour.monthID = RunSpecMonth.monthID AND ZoneMonthHour.hourID = RunSpecHour.hourID) +WHERE zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section ApplyTemperatureAdjustment + +-- Section ApplyLinearTemperatureAdjustment +cache SELECT DISTINCT TemperatureAdjustment.* +INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType USING (fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ZoneMonthHour.* +INTO OUTFILE '##ZoneMonthHour##' +FROM RunSpecMonth +INNER JOIN RunSpecHour +INNER JOIN ZoneMonthHour ON (ZoneMonthHour.monthID = RunSpecMonth.monthID AND ZoneMonthHour.hourID = RunSpecHour.hourID) +WHERE zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section ApplyLinearTemperatureAdjustment + +-- End Section Extract Data + +-- Section Local Data Removal +--TRUNCATE XXXXXX; +-- End Section Local Data Removal + +-- Section Processing + +-- ----------------------------------------------------- +-- BRPMC Step 1: Weight emission rates by operating mode +-- ----------------------------------------------------- + +drop table if exists OpModeWeightedEmissionRateTemp; +create table OpModeWeightedEmissionRateTemp ( + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + sourceBinID bigint(20) not null, + ageGroupID smallint(6) not null, + polProcessID int not null, + opModeWeightedMeanBaseRate float +); + + +-- Section EmissionRateByAgeRates +-- Section HasOneOpMode +insert into OpModeWeightedEmissionRateTemp (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeWeightedMeanBaseRate) +select distinct hd.hourDayID, stmy.sourceTypeID, er.sourceBinID, er.ageGroupID, sbd.polProcessID, +meanBaseRate as opModeWeightedMeanBaseRate +from HourDay hd +inner join EmissionRateByAge er +inner join SourceBinDistribution sbd on (sbd.polProcessID=er.polProcessID +and sbd.sourceBinID=er.sourceBinID) +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.modelYearID=##context.year##-ageID); +-- End Section HasOneOpMode + +-- Section HasManyOpModes +insert into OpModeWeightedEmissionRateTemp (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeWeightedMeanBaseRate) +select distinct omd.hourDayID, omd.sourceTypeID, er.sourceBinID, er.ageGroupID, omd.polProcessID, +(opModeFraction * meanBaseRate) as opModeWeightedMeanBaseRate +from OpModeDistribution omd +inner join EmissionRateByAge er using (polProcessID, opModeID) +inner join SourceBinDistribution sbd on (sbd.polProcessID=er.polProcessID +and sbd.sourceBinID=er.sourceBinID) +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.sourceTypeID=omd.sourceTypeID +and stmy.modelYearID=##context.year##-ageID); +-- End Section HasManyOpModes +-- End Section EmissionRateByAgeRates + +-- Section EmissionRateRates +-- Section HasOneOpMode +insert into OpModeWeightedEmissionRateTemp (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeWeightedMeanBaseRate) +select distinct hd.hourDayID, stmy.sourceTypeID, er.sourceBinID, acat.ageGroupID, sbd.polProcessID, +(meanBaseRate) as opModeWeightedMeanBaseRate +from HourDay hd +inner join EmissionRate er +inner join SourceBinDistribution sbd on (sbd.polProcessID=er.polProcessID +and sbd.sourceBinID=er.sourceBinID) +inner join AgeCategory acat +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.modelYearID=##context.year##-ageID); +-- End Section HasOneOpMode + +-- Section HasManyOpModes +insert into OpModeWeightedEmissionRateTemp (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeWeightedMeanBaseRate) +select distinct omd.hourDayID, omd.sourceTypeID, er.sourceBinID, acat.ageGroupID, omd.polProcessID, +(opModeFraction * meanBaseRate) as opModeWeightedMeanBaseRate +from OpModeDistribution omd +inner join EmissionRate er using (polProcessID, opModeID) +inner join SourceBinDistribution sbd on (sbd.polProcessID=er.polProcessID +and sbd.sourceBinID=er.sourceBinID) +inner join AgeCategory acat +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.sourceTypeID=omd.sourceTypeID +and stmy.modelYearID=##context.year##-ageID); +-- End Section HasManyOpModes +-- End Section EmissionRateRates + +drop table if exists OpModeWeightedEmissionRate; +create table OpModeWeightedEmissionRate ( + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + sourceBinID bigint(20) not null, + ageGroupID smallint(6) not null, + polProcessID int not null, + opModeWeightedMeanBaseRate float, + primary key (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID), + index (hourDayID), + index (sourceTypeID), + index (sourceBinID), + index (ageGroupID), + index (polProcessID) +); + +insert into OpModeWeightedEmissionRate (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeWeightedMeanBaseRate) +select hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, sum(opModeWeightedMeanBaseRate) +from OpModeWeightedEmissionRateTemp +group by hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID +order by null; + +-- -------------------------------------------------------------- +-- BRPMC Step 2: Weight Emission Rates by Source Bin +-- -------------------------------------------------------------- +drop table if exists FullyWeightedEmissionRate; +create table FullyWeightedEmissionRate ( + yearID smallint(6) not null, + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + fullyWeightedMeanBaseRate float, + ageID smallint(6) not null +); + +insert into FullyWeightedEmissionRate (yearID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, fullyWeightedMeanBaseRate, ageID) +select ##context.year## as yearID, omer.hourDayID, omer.sourceTypeID, sb.fuelTypeID, stmy.modelYearID, omer.polProcessID, +sum(sourceBinActivityFraction*opModeWeightedMeanBaseRate) as fullyWeightedMeanBaseRate, +acat.ageID +from OpModeWeightedEmissionRate omer +inner join SourceBinDistribution sbd on (sbd.sourceBinID=omer.sourceBinID and sbd.polProcessID=omer.polProcessID) +inner join AgeCategory acat on (acat.ageGroupID=omer.ageGroupID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.sourceTypeID=omer.sourceTypeID and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID and ppmy.modelYearID=stmy.modelYearID) +inner join SourceBin sb on (sb.sourceBinID=sbd.sourceBinID and sb.modelYearGroupID=ppmy.modelYearGroupID) +group by omer.hourDayID, omer.sourceTypeID, sb.fuelTypeID, stmy.modelYearID, omer.polProcessID, acat.ageID +order by null; + +create index ixFullyWeightedEmissionRate1 on FullyWeightedEmissionRate ( + hourDayID asc, + yearID asc, + ageID asc, + sourceTypeID asc +); + +-- -------------------------------------------------------------- +-- BRPMC Step 3: Multiply Emission Rates by Activity +-- -------------------------------------------------------------- +drop table if exists UnadjustedEmissionResults; +create table UnadjustedEmissionResults ( + yearID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + unadjustedEmissionQuant float +); + +-- Section SourceHoursOperatingActivity +insert ignore into UnadjustedEmissionResults (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, unadjustedEmissionQuant) +select f.yearID, sho.monthID, f.hourDayID, f.sourceTypeID, f.fuelTypeID, f.modelYearID, f.polProcessID, +(fullyWeightedMeanBaseRate*sho.SHO) as unadjustedEmissionQuant +from FullyWeightedEmissionRate f +inner join sho using (hourDayID, yearID, ageID, sourceTypeID); +-- End Section SourceHoursOperatingActivity + +-- Section SourceHoursActivity +insert into UnadjustedEmissionResults (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, unadjustedEmissionQuant) +select f.yearID, SourceHours.monthID, f.hourDayID, f.sourceTypeID, f.fuelTypeID, f.modelYearID, f.polProcessID, +(fullyWeightedMeanBaseRate*SourceHours.sourceHours) as unadjustedEmissionQuant +from FullyWeightedEmissionRate f +inner join SourceHours using (hourDayID, yearID, ageID, sourceTypeID); +-- End Section SourceHoursActivity + +-- Section StartsActivity +insert into UnadjustedEmissionResults (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, unadjustedEmissionQuant) +select f.yearID, Starts.monthID, f.hourDayID, f.sourceTypeID, f.fuelTypeID, f.modelYearID, f.polProcessID, +(fullyWeightedMeanBaseRate*Starts.starts) as unadjustedEmissionQuant +from FullyWeightedEmissionRate f +inner join Starts using (hourDayID, yearID, ageID, sourceTypeID); +-- End Section StartsActivity + +create index ixUnadjustedEmissionResults1 on UnadjustedEmissionResults ( + yearID asc, + monthID asc, + sourceTypeID asc, + fuelTypeID asc, + modelYearID asc, + polProcessID asc +); + +-- -------------------------------------------------------------- +-- BRPMC Step 4: Weight emission rates by fuel adjustment +-- -------------------------------------------------------------- +-- +-- BRPMC 4-a: Combine GPA and non GPA fuel adjustment factors +-- + +-- +-- BRPMC 4-b: Aggregate county fuel adjustments to fuel type +-- +DROP TABLE IF EXISTS FuelSupplyWithFuelType; +CREATE TABLE FuelSupplyWithFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + marketShare FLOAT +); + +CREATE INDEX FuelSupplyWithFuelType1 ON FuelSupplyWithFuelType +( + fuelFormulationID ASC +); + +INSERT INTO FuelSupplyWithFuelType +SELECT ##context.iterLocation.countyRecordID## as countyID, yearID, may.monthID, fs.fuelFormulationID, fst.fuelTypeID, fs.marketShare +FROM FuelSupply fs +INNER JOIN FuelFormulation ff ON ff.fuelFormulationID = fs.fuelFormulationID +INNER JOIN FuelSubType fst ON fst.fuelSubTypeID = ff.fuelSubTypeID +INNER JOIN MonthOfAnyYear may ON fs.monthGroupID = may.monthGroupID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +WHERE y.yearID = ##context.year##; + +DROP TABLE IF EXISTS FuelSupplyAdjustment; +CREATE TABLE FuelSupplyAdjustment ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKFuelSupplyAdjustment ON FuelSupplyAdjustment +( + yearID ASC, + monthID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + polProcessID ASC +); + +ALTER TABLE `generalfuelratio` ADD INDEX `idx_2fuelFormulationID`(`fuelFormulationID`), + ADD INDEX `idx_3sourceTypeID`(`sourceTypeID`), ADD INDEX `idx_4fuelTypeID`(`fuelTypeID`); + + +INSERT INTO FuelSupplyAdjustment (countyID, yearID, monthID, polProcessID, modelYearID, + sourceTypeID, fuelTypeID, fuelAdjustment) +SELECT c.countyID, fsft.yearID, fsft.monthID, ppmy.polProcessID, ppmy.modelYearID, + rst.sourceTypeID, fsft.fuelTypeID, + SUM((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) +FROM County c +INNER JOIN PollutantProcessModelYear ppmy +INNER JOIN FuelSupplyWithFuelType fsft +INNER JOIN RunSpecSourceType rst +LEFT OUTER JOIN generalFuelRatio gfr on ( + gfr.fuelFormulationID = fsft.fuelFormulationID + and gfr.polProcessID = ppmy.polProcessID + and gfr.minModelYearID <= ppmy.modelYearID + and gfr.maxModelYearID >= ppmy.modelYearID + and gfr.minAgeID <= ##context.year## - ppmy.modelYearID + and gfr.maxAgeID >= ##context.year## - ppmy.modelYearID + and gfr.sourceTypeID = rst.sourceTypeID +) +GROUP BY c.countyID, fsft.yearID, fsft.monthID, ppmy.polProcessID, ppmy.modelYearID, + rst.sourceTypeID, fsft.fuelTypeID +ORDER BY modelYearID ASC; + +-- +-- BRPMC 4-c: Apply fuel adjustment to weighted emission rates +-- + +drop table if exists FuelAdjustedEmissionRate; +create table FuelAdjustedEmissionRate ( + yearID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + unadjustedEmissionQuant float +); + +insert into FuelAdjustedEmissionRate (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, unadjustedEmissionQuant) +select distinct u.yearID, u.monthID, u.hourDayID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID, +coalesce((f.fuelAdjustment * u.unadjustedEmissionQuant), u.unadjustedEmissionQuant) as unadjustedEmissionQuant +from UnadjustedEmissionResults u +inner join FuelSupplyAdjustment f using (yearID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID); + +create index ixFuelAdjustedEmissionRate1 on FuelAdjustedEmissionRate ( + hourDayID asc, + monthID asc, + polProcessID asc, + fuelTypeID +); + +create index ixFuelAdjustedEmissionRate2 on FuelAdjustedEmissionRate ( + hourDayID asc +); + +-- -------------------------------------------------------------- +-- BRPMC Step 5: Apply Temperature Adjustment +-- -------------------------------------------------------------- +drop table if exists AdjustedEmissionResults; +create table AdjustedEmissionResults ( + yearID smallint(6) not null, + monthID smallint(6) not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + emissionQuant float +); + + +-- Section ApplyLinearTemperatureAdjustment +insert into AdjustedEmissionResults (yearID, monthID, dayID, hourID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, emissionQuant) +select u.yearID, u.monthID, hd.dayID, hd.hourID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID, +coalesce( +unadjustedEmissionQuant*(1.0+ +(CASE WHEN temperature <= 72.0 THEN (temperature-75.0)*(tempAdjustTermA+tempAdjustTermB*(temperature-75.0)) ELSE 0 END)), unadjustedEmissionQuant) as emissionQuant +from FuelAdjustedEmissionRate u +inner join HourDay hd using (hourDayID) +inner join ZoneMonthHour zmh on (zmh.monthID=u.monthID and zmh.hourID=hd.hourID) +left outer join TemperatureAdjustment ta on (ta.polProcessID=u.polProcessID and ta.fuelTypeID=u.fuelTypeID); +-- End Section ApplyLinearTemperatureAdjustment + +-- Section ApplyTemperatureAdjustment +insert into AdjustedEmissionResults (yearID, monthID, dayID, hourID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, emissionQuant) +select u.yearID, u.monthID, hd.dayID, hd.hourID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID, +coalesce( +unadjustedEmissionQuant*exp((CASE WHEN temperature <= 72.0 AND modelYearID between minModelYearID and maxModelYearID + THEN tempAdjustTermA*(72.0-temperature) ELSE 0 END)), unadjustedEmissionQuant) as emissionQuant +from FuelAdjustedEmissionRate u +inner join HourDay hd using (hourDayID) +inner join ZoneMonthHour zmh on (zmh.monthID=u.monthID and zmh.hourID=hd.hourID) +left outer join TemperatureAdjustment ta on ( + ta.polProcessID=u.polProcessID + and ta.fuelTypeID=u.fuelTypeID + and u.modelYearID between ta.minModelYearID and ta.maxModelYearID); +-- End Section ApplyTemperatureAdjustment + +-- Section NoTemperatureAdjustment +insert into AdjustedEmissionResults (yearID, monthID, dayID, hourID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, emissionQuant) +select u.yearID, u.monthID, hd.dayID, hd.hourID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID, +unadjustedEmissionQuant as emissionQuant +from FuelAdjustedEmissionRate u +inner join HourDay hd using (hourDayID); +-- End Section NoTemperatureAdjustment + +create index ixAdjustedEmissionResults1 on AdjustedEmissionResults ( + polProcessID asc +); + +-- ------------------------------------------------------------------------------- +-- BRPMC Step 6: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID +-- ------------------------------------------------------------------------------- +insert into MOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, +pollutantID, processID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, emissionQuant) +select a.yearID, a.monthID, a.dayID, a.hourID, +##context.iterLocation.stateRecordID## as stateID, +##context.iterLocation.countyRecordID## as countyID, +##context.iterLocation.zoneRecordID## as zoneID, +##context.iterLocation.linkRecordID## as linkID, +ppa.pollutantID, ppa.processID, +a.sourceTypeID, a.fuelTypeID, a.modelYearID, l.roadTypeID, a.emissionQuant +from AdjustedEmissionResults a +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=a.polProcessID) +inner join Link l; + +alter table FullyWeightedEmissionRate drop index ixFullyWeightedEmissionRate1; +alter table FuelAdjustedEmissionRate drop index ixFuelAdjustedEmissionRate1; +alter table FuelAdjustedEmissionRate drop index ixFuelAdjustedEmissionRate2; +alter table AdjustedEmissionResults drop index ixAdjustedEmissionResults1; +alter table UnadjustedEmissionResults drop index ixUnadjustedEmissionResults1; + +-- End Section Processing + +-- Section Cleanup +drop table if exists OpModeWeightedEmissionRateTemp; +drop table if exists OpModeWeightedEmissionRate; +drop table if exists FullyWeightedEmissionRate; +drop table if exists UnadjustedEmissionResults; +drop table if exists AdjustedEmissionResults; +drop table if exists FuelAdjustedEmissionRate; +-- End Section Cleanup diff --git a/database/BasicStartPM25Calculator.sql b/database/BasicStartPM25Calculator.sql new file mode 100644 index 0000000..47733a9 --- /dev/null +++ b/database/BasicStartPM25Calculator.sql @@ -0,0 +1,472 @@ +-- Version 2013-09-15 +-- Wesley Faler +-- David Brzezinski (EPA) + +-- @notused + +-- Special section names invoked by BasicStartPMEmissionCalculator.java: +-- HasManyOpModes +-- EmissionRateByAgeRate +-- StartsActivity +-- ApplyTemperatureAdjustment + +-- Section Create Remote Tables for Extracted Data +##create.AgeCategory##; +TRUNCATE TABLE AgeCategory; + +##create.County##; +TRUNCATE TABLE County; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.Zone##; +TRUNCATE TABLE Zone; + +##create.Pollutant##; +TRUNCATE TABLE Pollutant; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +-- Section EmissionRateByAgeRates +##create.EmissionRateByAge##; +TRUNCATE TABLE EmissionRateByAge; +-- End Section EmissionRateByAgeRates + +-- Section HasManyOpModes +##create.OpModeDistribution##; +TRUNCATE TABLE OpModeDistribution; +-- End Section HasManyOpModes + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.PollutantProcessAssoc##; +TRUNCATE TABLE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE TABLE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +-- Section StartsActivity +##create.Starts##; +TRUNCATE TABLE Starts; +-- End Section StartsActivity + +-- Section ApplyTemperatureAdjustment +##create.ModelYearGroup##; +TRUNCATE TABLE ModelYearGroup; + +##create.TemperatureAdjustment##; +TRUNCATE TABLE TemperatureAdjustment; + +##create.StartTempAdjustment##; +TRUNCATE TABLE StartTempAdjustment; + +##create.ZoneMonthHour##; +TRUNCATE TABLE ZoneMonthHour; +-- End Section ApplyTemperatureAdjustment + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +-- Section HasManyOpModes +SELECT * +INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType, RunSpecHourDay +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID +AND RunSpecHourDay.hourDayID = OpModeDistribution.hourDayID; +-- End Section HasManyOpModes + +cache SELECT * +INTO OUTFILE '##Pollutant##' +FROM Pollutant; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +-- Section EmissionRateByAgeRates +SELECT DISTINCT EmissionRateByAge.* +INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.SourceBinID = SourceBinDistribution.SourceBinID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; +-- End Section EmissionRateByAgeRates + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT * +INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * +INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +-- Section StartsActivity +SELECT Starts.* INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section StartsActivity + +-- Section ApplyTemperatureAdjustment +cache SELECT DISTINCT ModelYearGroup.* +INTO OUTFILE '##ModelYearGroup##' +FROM ModelYearGroup; + +cache SELECT DISTINCT TemperatureAdjustment.* +INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType USING (fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT StartTempAdjustment.* +INTO OUTFILE '##StartTempAdjustment##' +FROM StartTempAdjustment +INNER JOIN RunSpecSourceFuelType USING (fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ZoneMonthHour.* +INTO OUTFILE '##ZoneMonthHour##' +FROM RunSpecMonth +INNER JOIN RunSpecHour +INNER JOIN ZoneMonthHour ON (ZoneMonthHour.monthID = RunSpecMonth.monthID AND ZoneMonthHour.hourID = RunSpecHour.hourID) +WHERE zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section ApplyTemperatureAdjustment + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Local Data Removal +--TRUNCATE XXXXXX; +-- End Section Local Data Removal + +-- Section Processing + +-- -------------------------------------------------------------- +-- Step 1: Weight emission rates by operating mode +-- -------------------------------------------------------------- +drop table if exists OpModeWeightedEmissionRateTemp; +create table OpModeWeightedEmissionRateTemp ( + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + sourceBinID bigint(20) not null, + ageGroupID smallint(6) not null, + polProcessID int not null, + opModeID smallint(6) not null, + opModeWeightedMeanBaseRate float +); + +-- Section EmissionRateByAgeRates + +-- Section HasManyOpModes +insert into OpModeWeightedEmissionRateTemp (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeID, opModeWeightedMeanBaseRate) +select distinct omd.hourDayID, omd.sourceTypeID, er.sourceBinID, er.ageGroupID, omd.polProcessID, omd.opModeID, +(opModeFraction * meanBaseRate) as opModeWeightedMeanBaseRate +from OpModeDistribution omd +inner join EmissionRateByAge er using (polProcessID, opModeID) +inner join SourceBinDistribution sbd on ( + sbd.polProcessID=er.polProcessID and sbd.sourceBinID=er.sourceBinID) +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.sourceTypeID=omd.sourceTypeID +and stmy.modelYearID=##context.year##-ageID); +-- End Section HasManyOpModes +-- End Section EmissionRateByAgeRates + +drop table if exists OpModeWeightedEmissionRate; +create table OpModeWeightedEmissionRate ( + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + sourceBinID bigint(20) not null, + ageGroupID smallint(6) not null, + polProcessID int not null, + opModeID smallint(6) not null, + opModeWeightedMeanBaseRate float, + primary key (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeID), + index (hourDayID), + index (sourceTypeID), + index (sourceBinID), + index (ageGroupID), + index (polProcessID), + index (opModeID) +); + +insert into OpModeWeightedEmissionRate (hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeID, opModeWeightedMeanBaseRate) +select hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeID, sum(opModeWeightedMeanBaseRate) +from OpModeWeightedEmissionRateTemp +group by hourDayID, sourceTypeID, sourceBinID, ageGroupID, polProcessID, opModeID +order by null; + +-- -------------------------------------------------------------- +-- Step 2: Weight Emission Rates by Source Bin +-- -------------------------------------------------------------- +drop table if exists FullyWeightedEmissionRate; +create table FullyWeightedEmissionRate ( + yearID smallint(6) not null, + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + fullyWeightedMeanBaseRate float, + ageID smallint(6) not null, + opModeID smallint(6) not null, + primary key (yearID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, opModeID), + index (yearID), + index (hourDayID), + index (sourceTypeID), + index (fuelTypeID), + index (modelYearID), + index (polProcessID), + index (ageID), + index (opModeID) +); + +insert into FullyWeightedEmissionRate (yearID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, fullyWeightedMeanBaseRate, ageID, opModeID) +select ##context.year## as yearID, omer.hourDayID, omer.sourceTypeID, sb.fuelTypeID, stmy.modelYearID, omer.polProcessID, +sum(sourceBinActivityFraction*opModeWeightedMeanBaseRate) as fullyWeightedMeanBaseRate, +acat.ageID, omer.opModeID +from OpModeWeightedEmissionRate omer +inner join SourceBinDistribution sbd on (sbd.sourceBinID=omer.sourceBinID and sbd.polProcessID=omer.polProcessID) +inner join AgeCategory acat on (acat.ageGroupID=omer.ageGroupID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID +and stmy.sourceTypeID=omer.sourceTypeID and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID and ppmy.modelYearID=stmy.modelYearID) +inner join SourceBin sb on (sb.sourceBinID=sbd.sourceBinID and sb.modelYearGroupID=ppmy.modelYearGroupID) +group by omer.hourDayID, omer.sourceTypeID, sb.fuelTypeID, stmy.modelYearID, omer.polProcessID, acat.ageID +order by null; + +-- -------------------------------------------------------------- +-- Step 3: Multiply Emission Rates by Activity +-- -------------------------------------------------------------- +drop table if exists UnadjustedEmissionResults; +create table UnadjustedEmissionResults ( + yearID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + opModeID smallint(6) not null, + unadjustedEmissionQuant float, + primary key (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, opModeID), + index (yearID), + index (monthID), + index (hourDayID), + index (sourceTypeID), + index (fuelTypeID), + index (modelYearID), + index (polProcessID), + index (opModeID) +); + +-- Section StartsActivity +insert into UnadjustedEmissionResults (yearID, monthID, hourDayID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, opModeID, unadjustedEmissionQuant) +select f.yearID, Starts.monthID, f.hourDayID, f.sourceTypeID, f.fuelTypeID, f.modelYearID, f.polProcessID, f.opModeID, +(fullyWeightedMeanBaseRate*Starts.starts) as unadjustedEmissionQuant +from FullyWeightedEmissionRate f +inner join Starts using (hourDayID, yearID, ageID, sourceTypeID); +-- End Section StartsActivity + +-- -------------------------------------------------------------- +-- Step 4: Apply Temperature Adjustment +-- -------------------------------------------------------------- +drop table if exists AdjustedEmissionResults; +create table AdjustedEmissionResults ( + yearID smallint(6) not null, + monthID smallint(6) not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint(6) not null, + polProcessID int not null, + emissionQuant float, + primary key (yearID, monthID, dayID, hourID, sourceTypeID, fuelTypeID, modelYearID, polProcessID), + index (yearID), + index (monthID), + index (dayID), + index (hourID), + index (sourceTypeID), + index (fuelTypeID), + index (modelYearID), + index (polProcessID) +); + +-- Section ApplyTemperatureAdjustment +insert into AdjustedEmissionResults (yearID, monthID, dayID, hourID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, emissionQuant) +select u.yearID, u.monthID, hd.dayID, hd.hourID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID, +sum(coalesce( + unadjustedEmissionQuant*tempAdjustTermB*exp(tempAdjustTermA*(72.0-least(temperature,72)))+tempAdjustTermC + ,unadjustedEmissionQuant)) as emissionQuant +from UnadjustedEmissionResults u +inner join HourDay hd using (hourDayID) +inner join ZoneMonthHour zmh on (zmh.monthID=u.monthID and zmh.hourID=hd.hourID) +inner join PollutantProcessMappedModelYear ppmy on (ppmy.polProcessId=u.polProcessID and ppmy.modelYearID=u.modelYearID) +left outer join StartTempAdjustment ta on ( + ta.polProcessID=u.polProcessID + and ta.fuelTypeID=u.fuelTypeID + and ta.opModeID=u.opModeID + and ta.modelYearGroupID=ppmy.modelYearGroupID +) +group by u.yearID, u.monthID, hd.dayID, hd.hourID, u.sourceTypeID, u.fuelTypeID, u.modelYearID, u.polProcessID +order by null; +-- End Section ApplyTemperatureAdjustment + +-- -------------------------------------------------------------- +-- Step 5: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID +-- -------------------------------------------------------------- +insert into MOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, +pollutantID, processID, sourceTypeID, fuelTypeID, modelYearID, roadTypeID, emissionQuant) +select a.yearID, a.monthID, a.dayID, a.hourID, +##context.iterLocation.stateRecordID## as stateID, +##context.iterLocation.countyRecordID## as countyID, +##context.iterLocation.zoneRecordID## as zoneID, +##context.iterLocation.linkRecordID## as linkID, +ppa.pollutantID, ppa.processID, +a.sourceTypeID, a.fuelTypeID, a.modelYearID, l.roadTypeID, a.emissionQuant +from AdjustedEmissionResults a +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=a.polProcessID) +inner join Link l; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup +drop table if exists OpModeWeightedEmissionRateTemp; +drop table if exists OpModeWeightedEmissionRate; +drop table if exists FullyWeightedEmissionRate; +drop table if exists UnadjustedEmissionResults; +drop table if exists AdjustedEmissionResults; +drop table if exists oneCountyYearGeneralFuelRatio; +-- End Section Cleanup diff --git a/database/CH4ExtendedIdleCalculator.sql b/database/CH4ExtendedIdleCalculator.sql new file mode 100644 index 0000000..acf7409 --- /dev/null +++ b/database/CH4ExtendedIdleCalculator.sql @@ -0,0 +1,526 @@ +-- Version 2013-09-15 +-- Author Wesley Faler +-- Purpose: Calculate methane emissions during extended idle + +-- Section Create Remote Tables for Extracted Data + +##create.RunSpecYear##; +TRUNCATE RunSpecYear; + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.FullACAdjustment##; +TRUNCATE FullACAdjustment; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.RegulatoryClass##; +TRUNCATE RegulatoryClass; + +##create.sho##; +TRUNCATE sho; + +##create.ExtendedIdleHours##; +TRUNCATE ExtendedIdleHours; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE + EmissionRateByAge.opModeID = 200 + AND RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID + AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID + AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID + AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID + AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID + AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + + +SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND y.yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## + AND Year.yearID = ##context.year##; + +SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +SELECT faca.* INTO OUTFILE '##FullACAdjustment##' +FROM FullACAdjustment faca +INNER JOIN RunSpecSourceType rsst ON (rsst.sourceTypeID=faca.sourceTypeID) +INNER JOIN RunSpecPollutantProcess rspp ON (rspp.polProcessID=faca.polProcessID); + +SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID AND HourDay.hourID = RunSpecHour.hourID; + +SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +SELECT Link.* INTO OUTFILE '##Link##' +FROM Link +WHERE roadTypeID = 1 AND + zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour INNER JOIN RunSpecHour USING (hourID); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND OpModeDistribution.opModeID = 200 + AND linkID = (##context.iterLocation.linkRecordID##) + AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT * INTO OUTFILE '##RegulatoryClass##' +FROM RegulatoryClass; + +SELECT * INTO OUTFILE '##SHO##' +FROM SHO +WHERE linkID = (##context.iterLocation.linkRecordID##) + AND yearID = ##context.year##; + +SELECT * INTO OUTFILE '##ExtendedIdleHours##' +FROM ExtendedIdleHours +WHERE yearID = ##context.year## + AND zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = TemperatureAdjustment.fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT RunSpecYear.* INTO OUTFILE '##RunSpecYear##' +FROM RunSpecYear; + +SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecMonth,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND RunSpecMonth.monthID = ZoneMonthHour.monthID +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Processing + +-- SourceBin-Weighted Weight Emission Rates + +DROP TABLE IF EXISTS EmissionRateByAge2; + +CREATE TABLE IF NOT EXISTS EmissionRateByAge2( + sourceBinID bigint(20) NOT NULL, + polProcessID int NOT NULL, + opModeID smallint NOT NULL, + ageGroupID smallint NOT NULL, + modelYearID smallint NOT NULL, + fuelTypeID smallint NOT NULL, + sourceTypeID smallint NOT NULL, + meanBaseRate float NULL, + sourceBinActivityFraction float NULL, + PRIMARY KEY (sourceBinID, polProcessID, opModeID, ageGroupID, modelYearID, fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE EmissionRateByAge2; + +INSERT IGNORE INTO EmissionRateByAge2 (sourceBinID, polProcessID, opModeID, ageGroupID, meanBaseRate, + modelYearID, fuelTypeID, sourceTypeID, sourceBinActivityFraction) +SELECT DISTINCT er.sourceBinID, er.polProcessID, er.opModeID, er.ageGroupID, er.meanBaseRate, + stmy.modelYearID, sb.fuelTypeID, stmy.sourceTypeID, sbd.sourceBinActivityFraction +FROM EmissionRateByAge er, SourceBin sb, RunSpecSourceFuelType rsft, SourceBinDistribution sbd, SourceTypeModelYear stmy +WHERE + er.opModeID = 200 + AND er.sourceBinID = sb.sourceBinID + AND sb.fuelTypeID = rsft.fuelTypeID + AND er.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceBinID = sb.sourceBinID + AND sbd.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID +; + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + sourceBinID BIGINT(20) NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + + +CREATE UNIQUE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + sourceBinID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + ageGroupID ASC +); +ANALYZE TABLE SBWeightedEmissionRate; + +INSERT INTO SBWeightedEmissionRate (sourceBinID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, ageGroupID, meanBaseRate) +SELECT er.sourceBinID, er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, er.ageGroupID, + SUM(er.sourceBinActivityFraction * er.meanBaseRate) AS meanBaseRate +FROM EmissionRateByAge2 er +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, er.ageGroupID +order by null; + + +-- FLUSH TABLES; + +-- Multiply Emission Rates by Activity + +DROP TABLE IF EXISTS EIH2; +CREATE TABLE EIH2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + hourID SMALLINT, + dayID SMALLINT, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + extendedIdleHours FLOAT +); + +CREATE UNIQUE INDEX XPKEIH2 ON EIH2 ( + zoneID ASC, + monthID ASC, + hourDayID ASC, + yearID ASC, + ageID ASC, + ageGroupID ASC, + sourceTypeID ASC); + +ANALYZE TABLE EIH2; + +-- FLUSH TABLES; + +truncate table EIH2; + + +INSERT INTO EIH2 (zoneID, monthID, hourDayID, hourID, dayID, yearID, ageID, ageGroupID, sourceTypeID, extendedIdleHours) +SELECT eih.zoneID, eih.monthID, eih.hourDayID, hrdy.hourID, hrdy.dayID, eih.yearID, eih.ageID, ac.ageGroupID, eih.sourceTypeID, eih.extendedIdleHours +FROM extendedIdleHours eih +INNER JOIN hourday hrdy ON (hrdy.hourDayID=eih.hourDayID) +INNER JOIN ageCategory ac ON (eih.ageID=ac.ageID) +; + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS EmissionResultsWithTime; +CREATE TABLE EmissionResultsWithTime ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResultsWithTime ON EmissionResultsWithTime ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC, + ageGroupID ASC +); +ANALYZE TABLE EmissionResultsWithTime; + +-- ------------------------------ + +INSERT INTO EmissionResultsWithTime (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, ageGroupID, emissionQuant) +SELECT waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, eih.zoneID, eih.monthID, + eih.hourID, eih.dayID, eih.yearID, eih.ageID, waer.ageGroupID, + (waer.meanBaseRate * eih.extendedIdleHours) AS emissionQuant +FROM SBWeightedEmissionRate waer, EIH2 eih +WHERE eih.sourceTypeID=waer.sourceTypeID AND eih.ageGroupID=waer.ageGroupID + AND eih.ageID = eih.yearID - waer.modelYearID +; + +-- Multiply Emission Rates for the year + + +DROP TABLE IF EXISTS EmissionResults; +CREATE TABLE EmissionResults ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResults ON EmissionResults ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE EmissionResults; + + + +INSERT INTO EmissionResults (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, erwt.zoneID, erwt.monthID, + erwt.hourID, erwt.dayID, erwt.yearID, erwt.ageID, + SUM(erwt.emissionQuant) AS emissionQuant +FROM EmissionResultsWithTime erwt INNER JOIN RunSpecYear ry USING (yearID) +GROUP BY erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, + erwt.zoneID, erwt.monthID, erwt.hourID, erwt.dayID, erwt.yearID +order by null; + +-- Convert Results to Structure of MOVESWorkerOutput by sourceTypeID + +TRUNCATE MOVESWorkerOutput; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, pollutantID, + processID, sourceTypeID, fuelTypeID, modelYearID, SCC, emissionQuant) +SELECT ##context.iterLocation.stateRecordID## AS stateID, + ##context.iterLocation.countyRecordID## AS countyID, aer.zoneID, lnk.linkID, lnk.roadTypeID, + aer.yearID, aer.monthID, aer.dayID, aer.hourID, ppa.pollutantID, ppa.processID, aer.sourceTypeID, + aer.fuelTypeID, aer.modelYearID, NULL AS SCC, aer.emissionQuant AS emissionQuant +FROM EmissionResults aer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = aer.polProcessID) +INNER JOIN Link lnk ON (lnk.zoneID=aer.zoneID) +WHERE lnk.roadTypeID=1 +order by null; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS EIH2; +DROP TABLE IF EXISTS EmissionRateByAge2; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS EmissionResults; +drop table if exists oneCountyYearGeneralFuelRatio; +-- End Section Cleanup diff --git a/database/CH4N2ORunningStartCalculator.sql b/database/CH4N2ORunningStartCalculator.sql new file mode 100644 index 0000000..889d502 --- /dev/null +++ b/database/CH4N2ORunningStartCalculator.sql @@ -0,0 +1,471 @@ +-- Version 2013-09-15 + +-- Section Create Remote Tables for Extracted Data +drop table if exists AdjustFuelSupply; +create table AdjustFuelSupply ( + monthID integer not null, + fuelTypeID integer not null, + fuelFormulationID integer not null, + marketShare double null, + + key (monthID, fuelTypeID, fuelFormulationID), + key (monthID, fuelFormulationID, fuelTypeID), + key (fuelTypeID, fuelFormulationID, monthID), + key (fuelTypeID, monthID, fuelFormulationID), + key (fuelFormulationID, monthID, fuelTypeID), + key (fuelFormulationID, fuelTypeID, monthID) +) Engine=MEMORY; +truncate table AdjustFuelSupply; + +##memory.create.County##; +TRUNCATE TABLE County; + +##memory.create.HourDay##; +TRUNCATE TABLE HourDay; + +##memory.create.Link##; +TRUNCATE TABLE Link; + +##memory.create.Zone##; +TRUNCATE TABLE Zone; + +##memory.create.Pollutant##; +TRUNCATE TABLE Pollutant; + +##memory.create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +##create.EmissionRate##; +TRUNCATE TABLE EmissionRate; + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##memory.create.PollutantProcessAssoc##; +TRUNCATE TABLE PollutantProcessAssoc; + +-- Section Running Exhaust + +##create.SHO##; +TRUNCATE TABLE SHO; + +-- End Section Running Exhaust + +-- Section Start Exhaust + +##create.Starts##; +TRUNCATE TABLE Starts; + +-- End Section Start Exhaust + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT MonthOfAnyYear.monthID, FuelSubtype.fuelTypeID, FuelSupply.fuelFormulationID, marketShare +INTO OUTFILE '##AdjustFuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +WHERE FuelSupply.fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND MonthOfAnyYear.monthID = ##context.monthID##; + +SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * +INTO OUTFILE '##Pollutant##' +FROM Pollutant; + +-- SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '??SourceBinDistribution??' +-- FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE polProcessID IN (??pollutantProcessIDs??) +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND SourceTypeModelYear.modelYearID >= ??context.year?? - 30 +-- AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +-- AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +-- AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +-- SELECT DISTINCT SourceBin.* +-- INTO OUTFILE '??SourceBin??' +-- FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE polProcessID IN (??pollutantProcessIDs??) +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +-- AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +-- AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +-- SELECT DISTINCT EmissionRate.* +-- INTO OUTFILE '??EmissionRate??' +-- FROM EmissionRate, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE EmissionRate.polProcessID IN (??pollutantProcessIDs??) +-- AND EmissionRate.polProcessID = SourceBinDistribution.polProcessID +-- AND EmissionRate.SourceBinID = SourceBinDistribution.SourceBinID +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +-- AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +-- AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT EmissionRate.* INTO OUTFILE '##EmissionRate##' +FROM EmissionRate +WHERE EmissionRate.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRate.sourceBinID in (##macro.csv.all.sourceBinID##); + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear +WHERE SourceTypeModelYear.sourceTypeID in (##macro.csv.all.sourceTypeID##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay +WHERE hourDayID in (##macro.csv.all.hourDayID##); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +-- Section Running Exhaust + +SELECT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID## +AND monthID = ##context.monthID##; + +-- End Section Running Exhaust + +-- Section Start Exhaust + +SELECT Starts.* +INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +-- End Section Start Exhaust + +-- End Section Extract Data +-- +-- Section Processing + +drop table if exists MOVESWorkerOutputTemp; +create table if not exists MOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant FLOAT NULL +); + + +-- +-- Section Running Exhaust +-- +-- Calculate the Running Emissions +-- This Section originally contained a single SQL statement joining 14 tables +-- It was rewritten 10/1/2004 as a series of equivalent statements to improve performance. +-- + +DROP TABLE IF EXISTS SHO2 ; +DROP TABLE IF EXISTS Link2 ; +DROP TABLE IF EXISTS SHO3 ; +DROP TABLE IF EXISTS EmissionRate2 ; +DROP TABLE IF EXISTS SourceBinDistribution2 ; +DROP TABLE IF EXISTS SourceBinDistribution3 ; +DROP TABLE IF EXISTS EmissionRate3 ; +DROP TABLE IF EXISTS WorkerOutputBySourceType ; +CREATE TABLE SHO2 ( + yearID SMALLINT, + monthID SMALLINT, + hourID SMALLINT, + dayID SMALLINT, + linkID INTEGER, + sourceTypeID SMALLINT, + modelYearID SMALLINT, + SHO FLOAT) ; +INSERT INTO SHO2 + SELECT sho.yearID, sho.monthID, hd.hourID, hd.dayID, sho.linkID, + sho.sourceTypeID, (sho.yearID - sho.ageID), sho.SHO + FROM SHO AS sho INNER JOIN HourDay AS hd USING(hourDayID); +CREATE TABLE Link2 ( + stateID SMALLINT, + countyID INTEGER, + zoneID INTEGER, + linkID INTEGER, + roadTypeID SMALLINT) Engine=MEMORY; +INSERT INTO Link2 + SELECT c.stateID, l.countyID, l.zoneID, l.linkID, l.roadTypeID + FROM County AS c INNER JOIN Link AS l USING (countyID); +CREATE TABLE SHO3 + SELECT sho.*, l.stateID, l.countyID, l.zoneID, l.roadTypeID + FROM SHO2 AS sho INNER JOIN Link2 AS l USING(linkID) ; +CREATE TABLE EmissionRate2 + SELECT er.*, ppa.pollutantID, ppa.processID + FROM EmissionRate AS er INNER JOIN PollutantProcessAssoc AS ppa + USING (polProcessID) + WHERE ppa.pollutantID = 6 AND er.opModeID = 300; +CREATE TABLE SourceBinDistribution2 + SELECT sbd.*, sb.fuelTypeID + FROM SourceBinDistribution AS sbd INNER JOIN SourceBin AS sb USING (sourceBinID); +CREATE TABLE SourceBinDistribution3 + SELECT sbd.*, stmy.sourceTypeID, stmy.modelYearID + FROM SourceBinDistribution2 AS sbd INNER JOIN SourceTypeModelYear AS stmy + USING (sourceTypeModelYearID); +CREATE INDEX index1 ON EmissionRate2 (polProcessID, sourceBinID); +CREATE INDEX index1 ON SourceBinDistribution3 (polProcessID, sourceBinID); +CREATE TABLE EmissionRate3 ( + sourceTypeID SMALLINT, + fuelTypeID SMALLINT, + modelYearID SMALLINT, + sourceTypeModelYearID INTEGER, + pollutantID SMALLINT, + processID SMALLINT, + sbafXmbr FLOAT ); +INSERT INTO EmissionRate3 + SELECT sbd.sourceTypeID, sbd.fuelTypeID, sbd.modelYearID, sbd.sourceTypeModelYearID, + er.pollutantID, er.processID, + sum(sbd.sourceBinActivityFraction * er.meanBaseRate) AS sbafXmbr + FROM SourceBinDistribution3 AS sbd INNER JOIN EmissionRate2 AS er + USING (polProcessID, sourceBinID) + GROUP BY sbd.sourceTypeModelYearID, sbd.fuelTypeID, er.pollutantID, er.processID; +CREATE INDEX index1 ON SHO3 (sourceTypeID, modelYearID); +CREATE INDEX index1 ON EmissionRate3 (sourceTypeID, modelYearID); +CREATE TABLE WorkerOutputBySourceType + SELECT sho.*, er.fuelTypeID, er.pollutantID, er.processID, + er.sourceTypeModelYearID, er.sbafXmbr + FROM SHO3 AS sho INNER JOIN EmissionRate3 AS er + USING (sourceTypeID, modelYearID); +CREATE INDEX index1 ON WorkerOutputBySourceType (sourceTypeModelYearID, fuelTypeID); + +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + wobst.yearID, + wobst.monthID, + wobst.dayID, + wobst.hourID, + wobst.stateID, + wobst.countyID, + wobst.zoneID, + wobst.linkID, + wobst.pollutantID, + wobst.processID, + wobst.sourceTypeID, + wobst.fuelTypeID, + wobst.modelYearID, + wobst.roadTypeID, + (wobst.sbafXmbr * wobst.sho) +FROM + WorkerOutputBySourceType AS wobst; + +-- End Section Running Exhaust + +-- +-- Section Start Exhaust +-- +-- +-- Calculate the Start Emissions +-- + +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + st.yearID, + st.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + z.zoneID, + l.linkID, + ppa.pollutantID, + ppa.processID, + st.sourceTypeID, + sb.fuelTypeID, + stmy.modelYearID, + l.roadTypeID, + sum(sbd.sourceBinActivityFraction * st.starts * er.meanBaseRate) +FROM + SourceBinDistribution sbd, + starts st, + emissionRate er, + county c, + zone z, + link l, + PollutantProcessAssoc ppa, + EmissionProcess ep, + hourDay hd, + sourceTypeModelYear stmy, + sourceBin sb +WHERE + sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID AND + sbd.polProcessID = ppa.polProcessID AND + sbd.polProcessID = er.polProcessID AND + sbd.sourceBinID = er.sourceBinID AND + sbd.sourceBinID = sb.sourceBinID AND + st.hourDayID = hd.hourDayID AND + st.ageID = (st.yearID - stmy.modelYearID) AND + st.zoneID = z.zoneID AND + st.zoneID = l.zoneID AND + st.sourceTypeID = stmy.sourceTypeID AND + er.sourceBinID = sb.sourceBinID AND + er.polProcessID = ppa.polProcessID AND + er.opModeID = 100 AND + c.countyID = l.countyID AND + c.countyID = z.countyID AND + z.zoneID = l.zoneID AND + ppa.pollutantID = 6 AND + ppa.processID = ep.processID AND + sbd.sourceBinID = sb.sourceBinID +GROUP BY + st.yearID, + st.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + z.zoneID, + l.linkID, + ppa.pollutantID, + ppa.processID, + st.sourceTypeID, + sb.fuelTypeID, + stmy.modelYearID, + l.roadTypeID; + +-- End Section Start Exhaust + +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +FROM MOVESWorkerOutputTemp; + +-- End Section Processing + +-- Section Cleanup +drop table if exists MOVESWorkerOutputTemp; +DROP TABLE IF EXISTS SHO2 ; +DROP TABLE IF EXISTS Link2 ; +DROP TABLE IF EXISTS SHO3 ; +DROP TABLE IF EXISTS EmissionRate2 ; +DROP TABLE IF EXISTS SourceBinDistribution2 ; +DROP TABLE IF EXISTS SourceBinDistribution3 ; +DROP TABLE IF EXISTS EmissionRate3 ; +DROP TABLE IF EXISTS WorkerOutputBySourceType ; +-- End Section Cleanup diff --git a/database/CH4N2OWTPCalculator.sql b/database/CH4N2OWTPCalculator.sql new file mode 100644 index 0000000..cfb31f5 --- /dev/null +++ b/database/CH4N2OWTPCalculator.sql @@ -0,0 +1,208 @@ +-- Version 2013-09-14 + +-- Section Create Remote Tables for Extracted Data +CREATE TABLE IF NOT EXISTS WTPMonthofAnyYearCH4N2O ( + monthID SMALLINT NOT NULL, + monthName CHAR(10) NULL, + noOfDays SMALLINT NULL, + monthGroupID SMALLINT NOT NULL, + UNIQUE INDEX XPKWTPMonthofAnyYear ( + monthID ASC) +); +TRUNCATE TABLE WTPMonthofAnyYearCH4N2O; + +DROP TABLE IF EXISTS WTPFactorByFuelTypeCH4N2O; +CREATE TABLE IF NOT EXISTS WTPFactorByFuelTypeCH4N2O ( + countyID INTEGER, + yearID SMALLINT, + monthGroupID SMALLINT, + pollutantID SMALLINT, + fuelTypeID SMALLINT, + WTPFactor FLOAT, + WTPFactorCV FLOAT, + UNIQUE INDEX XPKWTPFactor ( + countyID, yearID, monthGroupID, pollutantID, fuelTypeID ) +); +TRUNCATE TABLE WTPFactorByFuelTypeCH4N2O; +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +CREATE TABLE IF NOT EXISTS GREETWellToPumpBoundsCH4N2O ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + minYearID SMALLINT, + maxYearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpBoundsCH4N2O ( + pollutantID, fuelSubTypeID ) +); +CREATE TABLE IF NOT EXISTS GREETWellToPumpLoCH4N2O ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpLoCH4N2O ( + pollutantID, fuelSubTypeID ) +); +CREATE TABLE IF NOT EXISTS GREETWellToPumpHiCH4N2O ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpHiCH4N2O ( + pollutantID, fuelSubTypeID ) +); + +DROP TABLE IF EXISTS WTPFactorCH4N2O; +CREATE TABLE IF NOT EXISTS WTPFactorCH4N2O ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + WTPFactor FLOAT, + WTPFactorV FLOAT, + UNIQUE INDEX XPKWTPFactorCH4N2O ( + pollutantID, fuelSubTypeID, yearID ) +); + +DROP TABLE IF EXISTS WTPFactorByFuelTypeCH4N2O; +CREATE TABLE IF NOT EXISTS WTPFactorByFuelTypeCH4N2O ( + countyID INTEGER, + yearID SMALLINT, + monthGroupID SMALLINT, + pollutantID SMALLINT, + fuelTypeID SMALLINT, + WTPFactor FLOAT, + WTPFactorCV FLOAT, + UNIQUE INDEX XPKWTPFactorCH4N2O ( + countyID, yearID, monthGroupID, pollutantID, fuelTypeID ) +); + +TRUNCATE GREETWellToPumpBoundsCH4N2O; + +INSERT INTO GREETWellToPumpBoundsCH4N2O ( +pollutantID,fuelSubTypeID,minYearID,maxYearID ) +SELECT pollutantID,fuelSubTypeID,MIN(yearID),MAX(yearID) +FROM GREETWellToPump +WHERE pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID, fuelSubTypeID; + +TRUNCATE GREETWellToPumpLoCH4N2O; + +INSERT INTO GREETWellToPumpLoCH4N2O (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,minYearID +FROM GREETWellToPumpBoundsCH4N2O +WHERE minYearID >= ##context.year## +GROUP BY pollutantID,fuelSubTypeID; + +INSERT IGNORE INTO GREETWellToPumpLoCH4N2O (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,MAX(yearID) +FROM GREETWellToPump +WHERE yearID <= ##context.year## AND +pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID,fuelSubTypeID; + +TRUNCATE GREETWellToPumpHiCH4N2O; + +INSERT INTO GREETWellToPumpHiCH4N2O (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,maxYearID +FROM GREETWellToPumpBoundsCH4N2O +WHERE maxYearID <= ##context.year## +GROUP BY pollutantID,fuelSubTypeID; + +INSERT IGNORE INTO GREETWellToPumpHiCH4N2O (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,MIN(yearID) +FROM GREETWellToPump +WHERE yearID > ##context.year## AND +pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID,fuelSubTypeID; + +INSERT INTO WTPFactorCH4N2O ( +pollutantID,fuelSubTypeID,yearID,WTPFactor, WTPFactorV) +SELECT wtpflb.pollutantID,wtpflb.fuelSubTypeID, ##context.year##, +wtpflo.emissionRate + +(wtpfhi.emissionRate - wtpflo.emissionRate) * +((##context.year## - wtpflo.yearID)/IF(wtpfhi.yearID<>wtpflo.yearID,wtpfhi.yearID-wtpflo.yearID,1)), +null +FROM GREETWellToPump wtpflo,GREETWellToPumpLoCH4N2O wtpflb, +GREETWellToPump wtpfhi,GREETWellToPumpHiCH4N2O wtpfhb +WHERE +wtpflb.pollutantID = wtpfhb.pollutantID AND +wtpflb.fuelSubTypeID = wtpfhb.fuelSubTypeID AND +wtpflb.pollutantID = wtpflo.pollutantID AND +wtpflb.fuelSubTypeID = wtpflo.fuelSubTypeID AND +wtpflb.yearID = wtpflo.yearID AND +wtpfhb.pollutantID = wtpfhi.pollutantID AND +wtpfhb.fuelSubTypeID = wtpfhi.fuelSubTypeID AND +wtpfhb.yearID = wtpfhi.yearID; + +INSERT INTO WTPFactorByFuelTypeCH4N2O ( +countyID, yearID, monthGroupID, pollutantID, fuelTypeID, WTPFactor, WTPFactorCV) +SELECT +##context.iterLocation.countyRecordID## as countyID, y.yearID, fs.monthGroupID, wf.pollutantID, +fst.fuelTypeID, SUM(wf.WTPFactor * fs.marketShare), null +FROM +FuelSubtype fst, FuelFormulation ff, FuelSupply fs, Year y, WTPFactorCH4N2O wf +WHERE +fst.fuelSubTypeID = wf.fuelSubTypeID AND +ff.fuelSubTypeID = fst.fuelSubtypeID AND +fs.fuelFormulationID = ff.fuelFormulationID AND +fs.fuelYearID = y.fuelYearID AND +y.yearID = wf.yearID AND +fs.fuelRegionID = ##context.fuelRegionID## +GROUP BY +fs.fuelRegionID,y.yearID,fs.monthGroupID,wf.pollutantID,fst.fuelTypeID; + +SELECT * INTO OUTFILE '##WTPFactorByFuelTypeCH4N2O##' +FROM WTPFactorByFuelTypeCH4N2O; + +SELECT * INTO OUTFILE '##WTPMonthOfAnyYearCH4N2O##' +FROM MonthOfAnyYear; +-- End Section Extract Data + +-- Section Local Data Removal +TRUNCATE GREETWellToPumpBoundsCH4N2O; +TRUNCATE GREETWellToPumpLoCH4N2O; +TRUNCATE GREETWellToPumpHiCH4N2O; +TRUNCATE WTPFactorCH4N2O; +TRUNCATE WTPFactorByFuelTypeCH4N2O; +-- End Section Local Data Removal + +-- Section Processing +DROP TABLE IF EXISTS MOVESOutputTemp; + +CREATE TABLE MOVESOutputTemp +SELECT + mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID,wfft.pollutantID,99 AS processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant * wfft.WTPFactor) AS emissionQuant +FROM + MOVESWorkerOutput mwo, WTPFactorByFuelTypeCH4N2O wfft, WTPMonthOfAnyYearCH4N2O may +WHERE + wfft.countyID = mwo.countyID AND + wfft.yearID = mwo.yearID AND + may.monthID = mwo.monthID AND + wfft.monthGroupID = may.monthGroupID AND + mwo.pollutantID = 91 AND + mwo.fuelTypeID = wfft.fuelTypeID AND + mwo.processID <> 99 +GROUP BY + mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID,wfft.pollutantID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, + mwo.SCC; + +INSERT INTO MOVESWorkerOutput ( + yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant) +SELECT + yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant +FROM + MOVESOutputTemp; +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS MOVESOutputTemp; +-- End Section Cleanup diff --git a/database/CO2AERunningStartExtendedIdleCalculator.sql b/database/CO2AERunningStartExtendedIdleCalculator.sql new file mode 100644 index 0000000..9038511 --- /dev/null +++ b/database/CO2AERunningStartExtendedIdleCalculator.sql @@ -0,0 +1,212 @@ +-- Version 2014-05-31 +-- Purpose: Calculate Atmospheric CO2 and CO2 Equivalent for +-- Running, Start, and Extended Idel Exhaust emissions +-- Gwo Shyu, EPA +-- Wesley Faler + +-- Section Create Remote Tables for Extracted Data +DROP TABLE IF EXISTS CO2EqPollutant; +CREATE TABLE IF NOT EXISTS CO2EqPollutant( + pollutantID SMALLINT NOT NULL, + pollutantName CHAR(50) NULL, + energyOrMass CHAR(6) NULL, + globalWarmingPotential SMALLINT NULL, + PRIMARY KEY (pollutantID) +); +TRUNCATE TABLE CO2EqPollutant; + +DROP TABLE IF EXISTS CO2MonthofAnyYear; +CREATE TABLE IF NOT EXISTS CO2MonthofAnyYear ( + monthID SMALLINT NOT NULL, + monthName CHAR(10) NULL, + noOfDays SMALLINT NULL, + monthGroupID SMALLINT NOT NULL, + PRIMARY KEY (monthID) +); +TRUNCATE TABLE CO2MonthofAnyYear; + +-- DROP TABLE IF EXISTS GWTPCO2FactorByFuelType; +-- CREATE TABLE IF NOT EXISTS GWTPCO2FactorByFuelType ( +-- countyID INTEGER NOT NULL, +-- yearID SMALLINT NOT NULL, +-- monthGroupID SMALLINT NOT NULL, +-- pollutantID SMALLINT NOT NULL, +-- fuelTypeID SMALLINT NOT NULL, +-- sumCO2EmissionRate FLOAT, +-- PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +-- ); +-- TRUNCATE TABLE GWTPCO2FactorByFuelType; + +DROP TABLE IF EXISTS CarbonOxidationByFuelType; +CREATE TABLE IF NOT EXISTS CarbonOxidationByFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sumcarbonContent FLOAT, + sumoxidationFraction FLOAT, + PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +); +TRUNCATE TABLE CarbonOxidationByFuelType; +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- DROP TABLE IF EXISTS GWTPCO2FactorByFuelType; +-- CREATE TABLE IF NOT EXISTS GWTPCO2FactorByFuelType ( +-- countyID INTEGER NOT NULL, +-- yearID SMALLINT NOT NULL, +-- monthGroupID SMALLINT NOT NULL, +-- pollutantID SMALLINT NOT NULL, +-- fuelTypeID SMALLINT NOT NULL, +-- sumCO2EmissionRate FLOAT, +-- PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +-- ); + +-- SubSection Task 122 step 1a: Calculate atmospheric CO2 from total energy for running exhaust +DROP TABLE IF EXISTS CarbonOxidationByFuelType; +CREATE TABLE IF NOT EXISTS CarbonOxidationByFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sumcarbonContent FLOAT, + sumoxidationFraction FLOAT, + PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +); + +-- @algorithm sumCarbonContent[countyID,yearID,monthGroupID,pollutantID,fuelTypeID]=sum(marketShare * carbonContent). +-- sumOxidationFraction[countyID,yearID,monthGroupID,pollutantID,fuelTypeID]=sum(marketShare * oxidationFraction). +INSERT INTO CarbonOxidationByFuelType ( + countyID, + yearID, + monthGroupID, + pollutantID, + fuelTypeID, + sumcarbonContent, + sumoxidationFraction) +SELECT + ##context.iterLocation.countyRecordID## as countyID, y.yearID, fs.monthGroupID, + ##atmoshpericCO2pollutantID## AS pollutantID, fst.fuelTypeID, + Sum(fs.marketShare*fst.carbonContent) AS sumcarbonContent, + Sum(fs.marketShare*fst.oxidationFraction) AS sumoxidationFraction +FROM FuelSupply fs +INNER JOIN FuelFormulation ff ON ff.fuelFormulationID = fs.fuelFormulationID +INNER JOIN FuelSubtype fst ON fst.fuelSubtypeID = ff.fuelSubtypeID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +WHERE y.yearID = ##context.year## +AND fs.fuelRegionID = ##context.fuelRegionID## +GROUP BY fs.fuelRegionID, y.yearID, fs.monthGroupID, fst.fuelTypeID; +-- FLUSH TABLES; + +SELECT * INTO OUTFILE '##CarbonOxidationByFuelType##' +FROM CarbonOxidationByFuelType; +-- FLUSH TABLES; +-- End SubSection Task 122 step 1a + +SELECT pollutantID,pollutantName,energyOrMass,globalWarmingPotential +INTO OUTFILE '##CO2EqPollutant##' FROM Pollutant where globalWarmingPotential is not null and globalWarmingPotential > 0; + +SELECT * INTO OUTFILE '##CO2MonthofAnyYear##' FROM MonthOfAnyYear; +-- FLUSH TABLES; +-- End Section Extract Data + +-- Section Local Data Removal +-- TRUNCATE GWTPCO2FactorByFuelType; + +-- TRUNCATE CarbonOxidationByFuelType; + +-- End Section Local Data Removal + +-- Section Processing + +-- SubSection Task 122 step 1a: Calculate atmospheric CO2 from total energy from +-- running, start, and Extended Idle exhaust +DROP TABLE IF EXISTS MOVESOutputCO2Temp1a; +-- 7/31/2007 Gwo added "coft.monthgroupid=may.monthgroupid AND" in WHERE clause + +-- @algorithm Atmosphereic CO2 = sum(Total Energy Consumption * sumCarbonContent * sumOxidationFraction * (44/12)). +CREATE TABLE MOVESOutputCO2Temp1a +SELECT + mwo.MOVESRunID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID,##atmoshpericCO2pollutantID## AS pollutantID,mwo.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant * coft.sumcarbonContent * coft.sumoxidationFraction * (44/12)) AS emissionQuant, + SUM(mwo.emissionRate * coft.sumcarbonContent * coft.sumoxidationFraction * (44/12)) AS emissionRate +FROM + MOVESWorkerOutput mwo, CarbonOxidationByFuelType coft, CO2MonthofAnyYear may +WHERE + coft.countyID = mwo.countyID AND + coft.yearID = mwo.yearID AND + coft.monthgroupid=may.monthgroupid AND + may.monthID = mwo.monthID AND + coft.fuelTypeID = mwo.fuelTypeID AND + mwo.pollutantID = ##totalEnergyConsumptionID## AND + ##CO2Step1AprocessIDs## +GROUP BY + mwo.MOVESRunID,mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, mwo.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, + mwo.SCC; +-- FLUSH TABLES; +-- End of SubSection Task 122 step 1a: + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate) +SELECT + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate +FROM MOVESOutputCO2Temp1a; +ANALYZE TABLE MOVESWorkerOutput; +-- FLUSH TABLES; + +-- SubSection Task 122 step 2: Calculate Equivalent CO2 from CO2, Methane, and N2O +DROP TABLE IF EXISTS MOVESOutputCO2Temp2; + +-- @algorithm Equivalent CO2 = sum(emissions[polutant=CO2 or Methane or N2O] * globalWarmingPotential). +CREATE TABLE MOVESOutputCO2Temp2 +SELECT + mwo.MOVESRunID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID,##equivalentCO2pollutantID## AS pollutantID,mwo.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant * pol.globalWarmingPotential) AS emissionQuant, + SUM(mwo.emissionRate * pol.globalWarmingPotential) AS emissionRate +FROM + MOVESWorkerOutput mwo INNER JOIN CO2EqPollutant pol on mwo.pollutantID = pol.pollutantID +WHERE mwo.pollutantID IN (##CO2Step2pollutantIDs##) AND ##CO2Step2processIDs## +GROUP BY + mwo.MOVESRunID,mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, mwo.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, mwo.SCC; +-- FLUSH TABLES; +-- End of SubSection Task 122 step 2: + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate) +SELECT + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate +FROM MOVESOutputCO2Temp2; +ANALYZE TABLE MOVESWorkerOutput; +-- FLUSH TABLES; + + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS MOVESOutputCO2Temp1a; +DROP TABLE IF EXISTS MOVESOutputCO2Temp2; + +-- End Section Cleanup diff --git a/database/CO2AtmosphericWTPCalculator.sql b/database/CO2AtmosphericWTPCalculator.sql new file mode 100644 index 0000000..bd3673f --- /dev/null +++ b/database/CO2AtmosphericWTPCalculator.sql @@ -0,0 +1,124 @@ +-- Version 2013-09-14 +-- Purpose: Calculate Atmospheric CO2 emission from Well-To-Pump +-- Modified 2007-07-31 to fix the error of CO2 calculation +-- Gwo Shyu, EPA + +-- Section Create Remote Tables for Extracted Data +DROP TABLE IF EXISTS WTPCO2MonthofAnyYear; +CREATE TABLE IF NOT EXISTS WTPCO2MonthofAnyYear ( + monthID SMALLINT NOT NULL, + monthName CHAR(10) NULL, + noOfDays SMALLINT NULL, + monthGroupID SMALLINT NOT NULL, + PRIMARY KEY (monthID) +); +TRUNCATE TABLE WTPCO2MonthofAnyYear; + +DROP TABLE IF EXISTS GWTPCO2FactorByFuelType; +CREATE TABLE IF NOT EXISTS GWTPCO2FactorByFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sumCO2EmissionRate FLOAT, + PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +); +TRUNCATE TABLE GWTPCO2FactorByFuelType; +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +DROP TABLE IF EXISTS GWTPCO2FactorByFuelType; +CREATE TABLE IF NOT EXISTS GWTPCO2FactorByFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sumCO2EmissionRate FLOAT, + PRIMARY KEY (countyID, yearID, monthGroupID, pollutantID, fuelTypeID) +); + +INSERT INTO GWTPCO2FactorByFuelType ( + countyID, + yearID, + monthGroupID, + pollutantID, + fuelTypeID, + sumCO2EmissionRate) +SELECT ##context.iterLocation.countyRecordID## as countyID, y.yearID, fs.monthGroupID, + ##atmoshpericCO2pollutantID## AS pollutantID, fst.fuelTypeID, + Sum(fs.marketShare*gwtp.emissionRate) AS sumCO2EmissionRate +FROM (FuelSupply fs +INNER JOIN FuelFormulation ff ON ff.fuelFormulationID = fs.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN greetwelltopump gwtp ON gwtp.fuelSubtypeID = ff.fuelSubtypeID +AND y.yearID = gwtp.yearID) +INNER JOIN fuelsubtype fst ON fst.fuelSubTypeID=ff.fuelSubTypeID +WHERE gwtp.pollutantID = ##atmoshpericCO2pollutantID## +AND y.yearID = ##context.year## +AND fs.fuelRegionID = ##context.fuelRegionID## +GROUP BY fs.fuelRegionID, y.yearID, fs.monthGroupID, fst.fuelTypeID +LIMIT 10; +-- FLUSH TABLES; + +SELECT * INTO OUTFILE '##GWTPCO2FactorByFuelType##' FROM GWTPCO2FactorByFuelType; +-- FLUSH TABLES; + +SELECT * INTO OUTFILE '##WTPCO2MonthofAnyYear##' FROM MonthOfAnyYear; +-- FLUSH TABLES; +-- End Section Extract Data + +-- Section Local Data Removal +TRUNCATE GWTPCO2FactorByFuelType; +-- End Section Local Data Removal + +-- Section Processing +-- ** SubSection Task 122 step 1b: Calculate atmospheric CO2 from Well-to-Pump +DROP TABLE IF EXISTS MOVESOutputTemp1b; +-- 7/31/2007 Gwo added "gwtp.monthGroupid=may.monthGroupid AND" in WHERE clause +CREATE TABLE MOVESOutputTemp1b +SELECT + mwo.MOVESRunID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID, ##atmoshpericCO2pollutantID## AS pollutantID, ##Well-To-PumpID## AS processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant * gwtp.sumCO2EmissionRate) AS emissionQuant +FROM + MOVESWorkerOutput mwo, GWTPCO2FactorByFuelType gwtp, WTPCO2MonthofAnyYear may +WHERE + gwtp.countyID = mwo.countyID AND + gwtp.yearID = mwo.yearID AND + gwtp.monthGroupid=may.monthGroupid AND + may.monthID = mwo.monthID AND + mwo.pollutantID = ##totalEnergyConsumptionID## AND + (mwo.processID = ##RunningExhaustID## OR + mwo.processID = ##StartExhaustID## OR + mwo.processID = ##ExtendedIdleExhaustID##) AND + gwtp.fuelTypeID = mwo.fuelTypeID +GROUP BY + mwo.MOVESRunID,mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID,mwo.pollutantID, mwo.processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, + mwo.SCC; +-- FLUSH TABLES; +-- ** End of SubSection Task 122 step 1b: + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant) +SELECT + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant +FROM MOVESOutputTemp1b; +ANALYZE TABLE MOVESWorkerOutput; +-- FLUSH TABLES; + +-- End Section Processing + +-- Section Cleanup +-- DROP TABLE IF EXISTS MOVESOutputTemp1b; +-- End Section Cleanup diff --git a/database/CO2EqivalentWTPCalculator.sql b/database/CO2EqivalentWTPCalculator.sql new file mode 100644 index 0000000..419ad33 --- /dev/null +++ b/database/CO2EqivalentWTPCalculator.sql @@ -0,0 +1,65 @@ +-- Version 2008-01-21 +-- Purpose: Calculate CO2 Equivalent for Well-Tp-Pump +-- Gwo Shyu, EPA + +-- Section Create Remote Tables for Extracted Data +DROP TABLE IF EXISTS CO2EqWTPStep2Pollutant; +CREATE TABLE IF NOT EXISTS CO2EqWTPStep2Pollutant( + pollutantID SMALLINT NOT NULL, + pollutantName CHAR(50) NULL, + energyOrMass CHAR(6) NULL, + globalWarmingPotential SMALLINT NULL, + PRIMARY KEY (pollutantID) +); +TRUNCATE TABLE CO2EqWTPStep2Pollutant; +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +SELECT * INTO OUTFILE '##CO2EqWTPStep2Pollutant##' FROM Pollutant; +-- FLUSH TABLES; +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing +-- SubSection Task 122 step 2 for WTP: Calculate Equivalent CO2 from +-- CO2, Methane, and N2O for WTP +-- MOVESWorkerOutput mwo INNER JOIN CO2EqWTPStep2Pollutant pol on mwo.pollutantID = pol.pollutantID + +DROP TABLE IF EXISTS MOVESOutputCO2Temp2eq; +CREATE TABLE MOVESOutputCO2Temp2eq +SELECT + mwo.MOVESRunID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID,##CO2EqpollutantID## AS pollutantID,mwo.processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant * pol.globalWarmingPotential) AS emissionQuant +FROM + MOVESWorkerOutput mwo INNER JOIN CO2EqWTPStep2Pollutant pol on mwo.pollutantID = pol.pollutantID +WHERE mwo.pollutantID IN (##CO2Step2EqpollutantIDs##) AND ##CO2Step2EqprocessIDs## +GROUP BY + mwo.MOVESRunID,mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID,mwo.pollutantID, mwo.processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, mwo.SCC; +-- FLUSH TABLES; +-- End of SubSection Task 122 step 2 for WTP: + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant) +SELECT + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant +FROM MOVESOutputCO2Temp2eq; +ANALYZE TABLE MOVESWorkerOutput; +-- FLUSH TABLES; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS MOVESOutputCO2Temp2eq; +-- End Section Cleanup diff --git a/database/CheckMOVESDefault.sql b/database/CheckMOVESDefault.sql new file mode 100644 index 0000000..648b763 --- /dev/null +++ b/database/CheckMOVESDefault.sql @@ -0,0 +1,15 @@ +/* +Checks for the MOVESDefault schema. +*/ +SELECT + stateID, + stateName +FROM State +LIMIT 1; + +SELECT + countyID, + countyName, + stateID +FROM County +LIMIT 1; diff --git a/database/ConversionScripts/Convert2010A_CDM_PDM.sql b/database/ConversionScripts/Convert2010A_CDM_PDM.sql new file mode 100644 index 0000000..fef442b --- /dev/null +++ b/database/ConversionScripts/Convert2010A_CDM_PDM.sql @@ -0,0 +1,182 @@ +-- -------------------------------------------------------------------------------------- +-- Convert a MOVES2010A CDM or PDM database to 2010B format. +-- No changes are made to the original input database. +-- Run this script in the context of a new database. +-- Populate ##defaultdb## with the name of the default database. +-- Populate ##inputdb## with the name of the original 2010A CDM or PDM database. +-- +-- Author Wesley Faler +-- Version 2011-10-31 +-- -------------------------------------------------------------------------------------- + +-- Provide tables not present in a 2010A database +create table if not exists avft like ##defaultdb##.avft; +create table if not exists sccRoadTypeDistribution like ##defaultdb##.sccRoadTypeDistribution; + +-- Copy tables in a 2010A database +create table if not exists avgSpeedDistribution like ##inputdb##.avgSpeedDistribution; +create table if not exists county like ##inputdb##.county; +create table if not exists countyYear like ##inputdb##.countyYear; +create table if not exists dayVMTFraction like ##inputdb##.dayVMTFraction; +create table if not exists driveScheduleSecondLink like ##inputdb##.driveScheduleSecondLink; +create table if not exists fuelFormulation like ##inputdb##.fuelFormulation; +create table if not exists fuelSupply like ##inputdb##.fuelSupply; +create table if not exists hourVMTFraction like ##inputdb##.hourVMTFraction; +create table if not exists hpmsVTypeYear like ##inputdb##.hpmsVTypeYear; +create table if not exists IMCoverage like ##inputdb##.IMCoverage; +create table if not exists link like ##inputdb##.link; +create table if not exists linkSourceTypeHour like ##inputdb##.linkSourceTypeHour; +create table if not exists monthVMTFraction like ##inputdb##.monthVMTFraction; +create table if not exists offNetworkLink like ##inputdb##.offNetworkLink; +create table if not exists opModeDistribution like ##inputdb##.opModeDistribution; +create table if not exists roadType like ##inputdb##.roadType; +create table if not exists roadTypeDistribution like ##inputdb##.roadTypeDistribution; +create table if not exists sourceTypeAgeDistribution like ##inputdb##.sourceTypeAgeDistribution; +create table if not exists sourceTypeYear like ##inputdb##.sourceTypeYear; +create table if not exists state like ##inputdb##.state; +create table if not exists year like ##inputdb##.year; +create table if not exists zone like ##inputdb##.zone; +create table if not exists zoneMonthHour like ##inputdb##.zoneMonthHour; +create table if not exists zoneRoadType like ##inputdb##.zoneRoadType; + +-- Provide tables that are needed in 2010B but may not have been in the 2010A database +create table if not exists avgSpeedDistribution like ##defaultdb##.avgSpeedDistribution; +create table if not exists county like ##defaultdb##.county; +create table if not exists countyYear like ##defaultdb##.countyYear; +create table if not exists dayVMTFraction like ##defaultdb##.dayVMTFraction; +create table if not exists driveScheduleSecondLink like ##defaultdb##.driveScheduleSecondLink; +create table if not exists fuelFormulation like ##defaultdb##.fuelFormulation; +create table if not exists fuelSupply like ##defaultdb##.fuelSupply; +create table if not exists hourVMTFraction like ##defaultdb##.hourVMTFraction; +create table if not exists hpmsVTypeYear like ##defaultdb##.hpmsVTypeYear; +create table if not exists IMCoverage like ##defaultdb##.IMCoverage; +create table if not exists link like ##defaultdb##.link; +create table if not exists linkSourceTypeHour like ##defaultdb##.linkSourceTypeHour; +create table if not exists monthVMTFraction like ##defaultdb##.monthVMTFraction; +create table if not exists offNetworkLink like ##defaultdb##.offNetworkLink; +create table if not exists opModeDistribution like ##defaultdb##.opModeDistribution; +create table if not exists roadType like ##defaultdb##.roadType; +create table if not exists roadTypeDistribution like ##defaultdb##.roadTypeDistribution; +create table if not exists sourceTypeAgeDistribution like ##defaultdb##.sourceTypeAgeDistribution; +create table if not exists sourceTypeYear like ##defaultdb##.sourceTypeYear; +create table if not exists state like ##defaultdb##.state; +create table if not exists year like ##defaultdb##.year; +create table if not exists zone like ##defaultdb##.zone; +create table if not exists zoneMonthHour like ##defaultdb##.zoneMonthHour; +create table if not exists zoneRoadType like ##defaultdb##.zoneRoadType; + +-- Copy data from the input database. +-- Errors here are ignored by the scripting engine and occur when a table +-- is not present in the input database. +insert ignore into avgSpeedDistribution select * from ##inputdb##.avgSpeedDistribution; +insert ignore into county select * from ##inputdb##.county; +insert ignore into countyYear select * from ##inputdb##.countyYear; +insert ignore into dayVMTFraction select * from ##inputdb##.dayVMTFraction; +insert ignore into driveScheduleSecondLink select * from ##inputdb##.driveScheduleSecondLink; +insert ignore into fuelFormulation select * from ##inputdb##.fuelFormulation; +insert ignore into fuelSupply select * from ##inputdb##.fuelSupply; +insert ignore into hourVMTFraction select * from ##inputdb##.hourVMTFraction; +insert ignore into hpmsVTypeYear select * from ##inputdb##.hpmsVTypeYear; +insert ignore into IMCoverage select * from ##inputdb##.IMCoverage; +insert ignore into link select * from ##inputdb##.link; +insert ignore into linkSourceTypeHour select * from ##inputdb##.linkSourceTypeHour; +insert ignore into monthVMTFraction select * from ##inputdb##.monthVMTFraction; +insert ignore into offNetworkLink select * from ##inputdb##.offNetworkLink; +insert ignore into opModeDistribution select * from ##inputdb##.opModeDistribution; +insert ignore into roadType select * from ##inputdb##.roadType; +insert ignore into roadTypeDistribution select * from ##inputdb##.roadTypeDistribution; +insert ignore into sourceTypeAgeDistribution select * from ##inputdb##.sourceTypeAgeDistribution; +insert ignore into sourceTypeYear select * from ##inputdb##.sourceTypeYear; +insert ignore into state select * from ##inputdb##.state; +insert ignore into year select * from ##inputdb##.year; +insert ignore into zone select * from ##inputdb##.zone; +insert ignore into zoneMonthHour select * from ##inputdb##.zoneMonthHour; + +insert ignore into roadType select * from ##defaultdb##.roadType; + +insert ignore into zoneRoadType (zoneID, roadTypeID, SHOAllocFactor) +select zoneID, roadTypeID, 1 as SHOAllocFactor +from zone, ##defaultdb##.roadType +where roadTypeID <> 1; + +drop table if exists zoneTemp; + +create table zoneTemp +select roadTypeID, sum(SHOAllocFactor) as sumSHOAllocFactor +from ZoneRoadType zrt +inner join Zone z using (zoneID) +group by roadTypeID; + +update ZoneRoadType, zoneTemp, Zone set +SHOAllocFactor=(case when (sumSHOAllocFactor is null or sumSHOAllocFactor <= 0) then 1 else (SHOAllocFactor/sumSHOAllocFactor) end) +where ZoneRoadType.zoneID=Zone.zoneID +and ZoneRoadType.roadTypeID=zoneTemp.roadTypeID; + +drop table if exists zoneTemp; + +-- Bring the fuelFormulation table up to 2010B +alter table fuelFormulation add column T50 float default null; +alter table fuelFormulation add column T90 float default null; + +update fuelFormulation set T50 = 2.0408163 * (147.91 - e200) +where e200 is not null and e200 > 0 +and (T50 is null or T50 <= 0); + +update fuelFormulation set T90 = 4.5454545 * (155.47 - e300) +where e300 is not null and e300 > 0 +and (T90 is null or T90 <= 0); + +update fuelFormulation set e200 = 147.91-(T50/2.0408163) +where T50 is not null and T50 > 0 +and (e200 is null or e200 <= 0); + +update fuelFormulation set e300 = 155.47-(T90/4.5454545) +where T90 is not null and T90 > 0 +and (e300 is null or e300 <= 0); + +-- fix the default fuelformulationid = 10 + +drop table if exists temp; +create table temp like fuelformulation; +insert into temp select * from ##defaultdb##.fuelformulation where fuelformulationid = 98; +update temp set fuelformulationid = 10 where fuelformulationid = 98; +replace into fuelformulation select * from temp where fuelformulationid = 10; + +drop table if exists temp; + +-- Check for warning or error messages +drop procedure if exists spConvert2010ACDMPDM; + +BeginBlock +create procedure spConvert2010ACDMPDM() +begin + declare howMany int default 0; + declare isCustomDomain int default 0; + + set howMany=0; + select count(*) into howMany from County where stateID=99; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isCustomDomain=1; + end if; + + if(isCustomDomain > 0) then + set howMany=0; + select count(*) into howMany + from county + inner join zone using (countyID) + inner join sccRoadTypeDistribution using (zoneID) + where stateID=99; + set howMany=ifnull(howMany,0); + if(howMany <= 0) then + insert into convertTempMessages (message) + select concat('WARNING: custom county ',countyID,' requires data in the sccRoadTypeDistribution table to obtain SCC results.') + from county + where stateID=99; + end if; + end if; +end +EndBlock + +call spConvert2010ACDMPDM(); +drop procedure if exists spConvert2010ACDMPDM; diff --git a/database/ConversionScripts/Convert2010B_CDM_PDM.sql b/database/ConversionScripts/Convert2010B_CDM_PDM.sql new file mode 100644 index 0000000..acd38f1 --- /dev/null +++ b/database/ConversionScripts/Convert2010B_CDM_PDM.sql @@ -0,0 +1,260 @@ +-- -------------------------------------------------------------------------------------- +-- Convert a MOVES2010B CDM or PDM database to MOVES2014 format. +-- No changes are made to the original input database. +-- Run this script in the context of a new database. +-- Populate ##defaultdb## with the name of the default database. +-- Populate ##inputdb## with the name of the original 2010B CDM or PDM database. +-- +-- Author Wesley Faler +-- Version 2014-07-23 +-- -------------------------------------------------------------------------------------- + +-- Copy tables in a 2010B database +create table if not exists avft like ##inputdb##.avft; +create table if not exists avgSpeedDistribution like ##inputdb##.avgSpeedDistribution; +create table if not exists county like ##inputdb##.county; +create table if not exists countyYear like ##inputdb##.countyYear; +create table if not exists dayVMTFraction like ##inputdb##.dayVMTFraction; +create table if not exists driveScheduleSecondLink like ##inputdb##.driveScheduleSecondLink; +create table if not exists fuelFormulation like ##inputdb##.fuelFormulation; +create table if not exists fuelSupply like ##inputdb##.fuelSupply; +create table if not exists hourVMTFraction like ##inputdb##.hourVMTFraction; +create table if not exists hpmsVTypeYear like ##inputdb##.hpmsVTypeYear; +create table if not exists IMCoverage like ##inputdb##.IMCoverage; +create table if not exists link like ##inputdb##.link; +create table if not exists linkSourceTypeHour like ##inputdb##.linkSourceTypeHour; +create table if not exists monthVMTFraction like ##inputdb##.monthVMTFraction; +create table if not exists offNetworkLink like ##inputdb##.offNetworkLink; +create table if not exists opModeDistribution like ##inputdb##.opModeDistribution; +create table if not exists roadType like ##inputdb##.roadType; +create table if not exists roadTypeDistribution like ##inputdb##.roadTypeDistribution; +-- create table if not exists sccRoadTypeDistribution like ##inputdb##.sccRoadTypeDistribution +create table if not exists sourceTypeAgeDistribution like ##inputdb##.sourceTypeAgeDistribution; +create table if not exists sourceTypeYear like ##inputdb##.sourceTypeYear; +create table if not exists state like ##inputdb##.state; +create table if not exists year like ##inputdb##.year; +create table if not exists zone like ##inputdb##.zone; +create table if not exists zoneMonthHour like ##inputdb##.zoneMonthHour; +create table if not exists zoneRoadType like ##inputdb##.zoneRoadType; + +-- Provide tables that are needed in MOVES2014 but may not have been in the 2010B database +create table if not exists avft like ##defaultdb##.avft; +create table if not exists avgSpeedDistribution like ##defaultdb##.avgSpeedDistribution; +create table if not exists county like ##defaultdb##.county; +create table if not exists countyYear like ##defaultdb##.countyYear; +create table if not exists dayVMTFraction like ##defaultdb##.dayVMTFraction; +create table if not exists driveScheduleSecondLink like ##defaultdb##.driveScheduleSecondLink; +create table if not exists fuelFormulation like ##defaultdb##.fuelFormulation; +create table if not exists fuelSupply like ##defaultdb##.fuelSupply; +create table if not exists fuelusagefraction like ##defaultdb##.fuelusagefraction; +create table if not exists hotellingactivitydistribution like ##defaultdb##.hotellingactivitydistribution; +create table if not exists hotellinghours like ##defaultdb##.hotellinghours; +create table if not exists hourVMTFraction like ##defaultdb##.hourVMTFraction; +create table if not exists hpmsVTypeYear like ##defaultdb##.hpmsVTypeYear; +create table if not exists IMCoverage like ##defaultdb##.IMCoverage; +create table if not exists importstartsopmodedistribution like ##defaultdb##.importstartsopmodedistribution; +create table if not exists link like ##defaultdb##.link; +create table if not exists linkSourceTypeHour like ##defaultdb##.linkSourceTypeHour; +create table if not exists monthVMTFraction like ##defaultdb##.monthVMTFraction; +create table if not exists offNetworkLink like ##defaultdb##.offNetworkLink; +create table if not exists onroadretrofit like ##defaultdb##.onroadretrofit; +create table if not exists opModeDistribution like ##defaultdb##.opModeDistribution; +create table if not exists regioncounty like ##defaultdb##.regioncounty; +create table if not exists roadType like ##defaultdb##.roadType; +create table if not exists roadTypeDistribution like ##defaultdb##.roadTypeDistribution; +-- create table if not exists sccRoadTypeDistribution like ##defaultdb##.sccRoadTypeDistribution +create table if not exists sourceTypeAgeDistribution like ##defaultdb##.sourceTypeAgeDistribution; +create table if not exists sourceTypeYear like ##defaultdb##.sourceTypeYear; +create table if not exists starts like ##defaultdb##.starts; +create table if not exists startshourfraction like ##defaultdb##.startshourfraction; +create table if not exists startsmonthadjust like ##defaultdb##.startsmonthadjust; +create table if not exists startsperday like ##defaultdb##.startsperday; +create table if not exists startssourcetypefraction like ##defaultdb##.startssourcetypefraction; +create table if not exists state like ##defaultdb##.state; +create table if not exists year like ##defaultdb##.year; +create table if not exists zone like ##defaultdb##.zone; +create table if not exists zoneMonthHour like ##defaultdb##.zoneMonthHour; +create table if not exists zoneRoadType like ##defaultdb##.zoneRoadType; + +-- Copy data from the input database. +-- Errors here are ignored by the scripting engine and occur when a table +-- is not present in the input database. +insert ignore into avft select * from ##inputdb##.avft; +insert ignore into avgSpeedDistribution select * from ##inputdb##.avgSpeedDistribution; +insert ignore into county select * from ##inputdb##.county; +insert ignore into countyYear select * from ##inputdb##.countyYear; +insert ignore into dayVMTFraction select * from ##inputdb##.dayVMTFraction; +insert ignore into driveScheduleSecondLink select * from ##inputdb##.driveScheduleSecondLink; +insert ignore into fuelFormulation select * from ##inputdb##.fuelFormulation; +insert ignore into fuelSupply select * from ##inputdb##.fuelSupply; +insert ignore into fuelusagefraction select * from ##inputdb##.fuelusagefraction; +insert ignore into hotellingactivitydistribution select * from ##inputdb##.hotellingactivitydistribution; +insert ignore into hotellinghours select * from ##inputdb##.hotellinghours; +insert ignore into hourVMTFraction select * from ##inputdb##.hourVMTFraction; +insert ignore into hpmsVTypeYear select * from ##inputdb##.hpmsVTypeYear; +insert ignore into IMCoverage select * from ##inputdb##.IMCoverage; +insert ignore into importstartsopmodedistribution select * from ##inputdb##.importstartsopmodedistribution; +insert ignore into link select * from ##inputdb##.link; +insert ignore into linkSourceTypeHour select * from ##inputdb##.linkSourceTypeHour; +insert ignore into monthVMTFraction select * from ##inputdb##.monthVMTFraction; +insert ignore into offNetworkLink select * from ##inputdb##.offNetworkLink; +insert ignore into onroadretrofit select * from ##inputdb##.onroadretrofit; +insert ignore into opModeDistribution select * from ##inputdb##.opModeDistribution; +insert ignore into regioncounty select * from ##inputdb##.regioncounty; +insert ignore into roadType select * from ##inputdb##.roadType; +insert ignore into roadTypeDistribution select * from ##inputdb##.roadTypeDistribution; +-- insert ignore into sccRoadTypeDistribution select * from ##inputdb##.sccRoadTypeDistribution +insert ignore into sourceTypeAgeDistribution select * from ##inputdb##.sourceTypeAgeDistribution; +insert ignore into sourceTypeYear select * from ##inputdb##.sourceTypeYear; +insert ignore into starts select * from ##inputdb##.starts; +insert ignore into startshourfraction select * from ##inputdb##.startshourfraction; +insert ignore into startsmonthadjust select * from ##inputdb##.startsmonthadjust; +insert ignore into startsperday select * from ##inputdb##.startsperday; +insert ignore into startssourcetypefraction select * from ##inputdb##.startssourcetypefraction; +insert ignore into state select * from ##inputdb##.state; +insert ignore into year select * from ##inputdb##.year; +insert ignore into zone select * from ##inputdb##.zone; +insert ignore into zoneMonthHour select * from ##inputdb##.zoneMonthHour; +insert ignore into zoneRoadType select * from ##inputdb##.zoneRoadType; + +-- Upgrade offnetworkLink to allow for zoneID +alter table offNetworkLink add column zoneID integer not null default '0'; +alter table offNetworkLink drop primary key; +alter table offNetworkLink add primary key (zoneID, sourceTypeID); +alter table offNetworkLink add key (sourceTypeID, zoneID); + +-- Use the first zone. +update offNetworkLink, Zone set offnetworkLink.zoneID = zone.zoneID +where zone.zoneID = (select min(zoneID) from Zone); + +-- Fuelregionid must correspond to the region in regioncounty. +alter table fuelsupply change countyid fuelRegionID integer default 0; + +update fuelsupply f, ##defaultdb##.regioncounty r +set f.fuelregionid=r.regionid +where f.fuelregionid=r.countyid +and r.regionCodeID=1; + +-- Remove baseYearOffNetVMT from hpmsvtypeyear +alter table hpmsvtypeyear drop baseYearOffNetVMT; + +-- Add missing fields to roadtype +alter table roadtype add ( + isAffectedByOnroad tinyint(1) DEFAULT '1', + isAffectedByNonroad tinyint(1) DEFAULT '0', + shouldDisplay tinyint(1) DEFAULT '1' +); + +-- Adjust HPMS VMT according to 2007+ HPMS categories +drop table if exists hpmsVTypeSum; +create table hpmsVTypeSum ( + yearID smallint not null default '0' primary key, + sumOriginal double not null default '0', + sumAdjusted double not null default '0', + sumRatio double not null default '0' +); + +insert into hpmsVTypeSum(yearID,sumOriginal,sumAdjusted,sumRatio) +select yearID, + sum(HPMSBaseYearVMT) as sumOriginal, + sum(HPMSBaseYearVMT * + case + when HPMSVTypeID = 10 then 1 + when HPMSVTypeID = 20 then 1 + when HPMSVTypeID = 30 then 1 + when HPMSVTypeID = 40 then 1 + when HPMSVTypeID = 50 then 1 + when HPMSVTypeID = 60 then 1 + else 1 + end + ) as sumAdjusted, + 1.0 as sumRatio +from hpmsVTypeYear +group by yearID; + +update hpmsVTypeSum set sumRatio = case when sumAdjusted <= 0 then 1.0 else sumOriginal/sumAdjusted end; + +drop table if exists tempHPMSVTypeYear; +create table tempHPMSVTypeYear like hpmsVTypeYear; +insert into tempHPMSVTypeYear select * from hpmsVTypeYear; +truncate table hpmsVTypeYear; + +alter table tempHPMSVTypeYear add newHPMSVTypeID smallint not null default '0'; +update tempHPMSVTypeYear set newHPMSVTypeID = case when HPMSVTypeID in (20,30) then 25 else HPMSVTypeID end; + +insert into hpmsVTypeYear (HPMSVTypeID,yearID,VMTGrowthFactor,HPMSBaseYearVMT) +select newHPMSVTypeID, h.yearID, avg(VMTGrowthFactor) as VMTGrowthFactor, + sum(HPMSBaseYearVMT*sumRatio* + case + when HPMSVTypeID = 10 then 1 + when HPMSVTypeID = 20 then 1 + when HPMSVTypeID = 30 then 1 + when HPMSVTypeID = 40 then 1 + when HPMSVTypeID = 50 then 1 + when HPMSVTypeID = 60 then 1 + else 1 + end + ) as HPMSBaseYearVMT +from tempHPMSVTypeYear h +inner join hpmsVTypeSum s using (yearID) +group by yearID, newHPMSVTypeID +order by null; + +drop table if exists hpmsVTypeSum; +drop table if exists tempHPMSVTypeYear; + +-- Check for warning or error messages +drop procedure if exists spConvert2010BCDMPDM; + +BeginBlock +create procedure spConvert2010BCDMPDM() +begin + declare howMany int default 0; + declare isCustomDomain int default 0; + declare howManyLeapYear int default 0; + declare howManyNonLeapYear int default 0; + + -- Remove the leap year data from the month VMT fraction table. + set howManyLeapYear=0; + select count(*) into howManyLeapYear from monthVMTFraction where isLeapYear='Y'; + set howManyLeapYear=ifnull(howManyLeapYear,0); + + set howManyNonLeapYear=0; + select count(*) into howManyNonLeapYear from monthVMTFraction where isLeapYear<>'Y'; + set howManyNonLeapYear=ifnull(howManyNonLeapYear,0); + + if(howManyLeapYear > 0 and howManyNonLeapYear > 0) then + -- Has Both -> Keep Non-Leap Year + delete from monthvmtfraction where isleapyear='Y'; + insert into convertTempMessages (message) values ('INFO: Keeping only Non-Leap Year monthVMTFraction entries and deleteing Leap Year monthVMTFraction entires. If your MOVES2010b monthVMTFraction table contains entries for a Leap Year, they should be re-imported in MOVES2014.'); + end if; + if(howManyLeapYear > 0 and howManyNonLeapYear <= 0) then + -- Has only Leap Year -> Keep Leap Year data + delete from monthvmtfraction where isleapyear='N'; + insert into convertTempMessages (message) values ('INFO: Using Leap Year monthVMTFraction entries for all years.'); + end if; + if(howManyLeapYear <= 0 and howManyNonLeapYear > 0) then + -- Has only non-Leap Year data -> Keep Non-Leap Year data + delete from monthvmtfraction where isleapyear='Y'; + insert into convertTempMessages (message) values ('INFO: Using Non-Leap Year monthVMTFraction entries for all years.'); + end if; + alter table monthvmtfraction drop isleapyear; + + -- Handle custom domains/generic counties + set howMany=0; + select count(*) into howMany from County where stateID=99; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isCustomDomain=1; + end if; + + if(isCustomDomain > 0) then + insert ignore into regionCounty (regionID,countyID,regionCodeID,fuelYearID) + select 100000000 as regionID, countyID, 1 as regionCodeID, fuelYearID + from county, year; + end if; +end +EndBlock + +call spConvert2010BCDMPDM(); +drop procedure if exists spConvert2010BCDMPDM; diff --git a/database/ConversionScripts/Convert2014_CDM_PDM.sql b/database/ConversionScripts/Convert2014_CDM_PDM.sql new file mode 100644 index 0000000..7355ede --- /dev/null +++ b/database/ConversionScripts/Convert2014_CDM_PDM.sql @@ -0,0 +1,116 @@ +-- -------------------------------------------------------------------------------------- +-- Convert a MOVES2014 CDM or PDM database to MOVES2014A format. +-- No changes are made to the original input database. +-- Run this script in the context of a new database. +-- Populate ##defaultdb## with the name of the default database. +-- Populate ##inputdb## with the name of the original 2014 CDM or PDM database. +-- +-- Author Wesley Faler +-- Version 2015-05-21 +-- -------------------------------------------------------------------------------------- + +-- Copy tables in a 2014 database +create table if not exists avft like ##inputdb##.avft; +create table if not exists avgspeeddistribution like ##inputdb##.avgspeeddistribution; +create table if not exists county like ##inputdb##.county; +create table if not exists countyyear like ##inputdb##.countyyear; +create table if not exists dayvmtfraction like ##inputdb##.dayvmtfraction; +create table if not exists driveschedulesecondlink like ##inputdb##.driveschedulesecondlink; +create table if not exists fuelformulation like ##inputdb##.fuelformulation; +create table if not exists fuelsupply like ##inputdb##.fuelsupply; +create table if not exists fuelusagefraction like ##inputdb##.fuelusagefraction; +create table if not exists hotellingactivitydistribution like ##inputdb##.hotellingactivitydistribution; +create table if not exists hotellinghours like ##inputdb##.hotellinghours; +create table if not exists hourvmtfraction like ##inputdb##.hourvmtfraction; +create table if not exists hpmsvtypeyear like ##inputdb##.hpmsvtypeyear; +create table if not exists imcoverage like ##inputdb##.imcoverage; +create table if not exists importstartsopmodedistribution like ##inputdb##.importstartsopmodedistribution; +create table if not exists link like ##inputdb##.link; +create table if not exists linksourcetypehour like ##inputdb##.linksourcetypehour; +create table if not exists monthvmtfraction like ##inputdb##.monthvmtfraction; +create table if not exists offnetworklink like ##inputdb##.offnetworklink; +create table if not exists onroadretrofit like ##inputdb##.onroadretrofit; +create table if not exists opmodedistribution like ##inputdb##.opmodedistribution; +create table if not exists regioncounty like ##inputdb##.regioncounty; +create table if not exists roadtype like ##inputdb##.roadtype; +create table if not exists roadtypedistribution like ##inputdb##.roadtypedistribution; +create table if not exists sourcetypeagedistribution like ##inputdb##.sourcetypeagedistribution; +create table if not exists sourcetypeyear like ##inputdb##.sourcetypeyear; +create table if not exists starts like ##inputdb##.starts; +create table if not exists startshourfraction like ##inputdb##.startshourfraction; +create table if not exists startsmonthadjust like ##inputdb##.startsmonthadjust; +create table if not exists startsperday like ##inputdb##.startsperday; +create table if not exists startssourcetypefraction like ##inputdb##.startssourcetypefraction; +create table if not exists state like ##inputdb##.state; +create table if not exists year like ##inputdb##.year; +create table if not exists zone like ##inputdb##.zone; +create table if not exists zonemonthhour like ##inputdb##.zonemonthhour; +create table if not exists zoneroadtype like ##inputdb##.zoneroadtype; + +-- Provide tables that are needed in MOVES2014A but may not have been in the 2014 database +create table if not exists HPMSVTypeDay like ##defaultdb##.HPMSVTypeDay; +create table if not exists SourceTypeDayVMT like ##defaultdb##.SourceTypeDayVMT; +create table if not exists SourceTypeYearVMT like ##defaultdb##.SourceTypeYearVMT; +create table if not exists nrfuelsupply like ##inputdb##.nrfuelsupply; + +-- Copy data from the input database. +-- Errors here are ignored by the scripting engine and occur when a table +-- is not present in the input database. +insert ignore into avft select * from ##inputdb##.avft; +insert ignore into avgspeeddistribution select * from ##inputdb##.avgspeeddistribution; +insert ignore into county select * from ##inputdb##.county; +insert ignore into countyyear select * from ##inputdb##.countyyear; +insert ignore into dayvmtfraction select * from ##inputdb##.dayvmtfraction; +insert ignore into driveschedulesecondlink select * from ##inputdb##.driveschedulesecondlink; +insert ignore into fuelformulation select * from ##inputdb##.fuelformulation; +insert ignore into fuelsupply select * from ##inputdb##.fuelsupply; +insert ignore into fuelusagefraction select * from ##inputdb##.fuelusagefraction; +insert ignore into hotellingactivitydistribution select * from ##inputdb##.hotellingactivitydistribution; +insert ignore into hotellinghours select * from ##inputdb##.hotellinghours; +insert ignore into hourvmtfraction select * from ##inputdb##.hourvmtfraction; +insert ignore into hpmsvtypeyear select * from ##inputdb##.hpmsvtypeyear; +insert ignore into imcoverage select * from ##inputdb##.imcoverage; +insert ignore into importstartsopmodedistribution select * from ##inputdb##.importstartsopmodedistribution; +insert ignore into link select * from ##inputdb##.link; +insert ignore into linksourcetypehour select * from ##inputdb##.linksourcetypehour; +insert ignore into monthvmtfraction select * from ##inputdb##.monthvmtfraction; +insert ignore into offnetworklink select * from ##inputdb##.offnetworklink; +insert ignore into onroadretrofit select * from ##inputdb##.onroadretrofit; +insert ignore into opmodedistribution select * from ##inputdb##.opmodedistribution; +insert ignore into regioncounty select * from ##inputdb##.regioncounty; +insert ignore into roadtype select * from ##inputdb##.roadtype; +insert ignore into roadtypedistribution select * from ##inputdb##.roadtypedistribution; +insert ignore into sourcetypeagedistribution select * from ##inputdb##.sourcetypeagedistribution; +insert ignore into sourcetypeyear select * from ##inputdb##.sourcetypeyear; +insert ignore into starts select * from ##inputdb##.starts; +insert ignore into startshourfraction select * from ##inputdb##.startshourfraction; +insert ignore into startsmonthadjust select * from ##inputdb##.startsmonthadjust; +insert ignore into startsperday select * from ##inputdb##.startsperday; +insert ignore into startssourcetypefraction select * from ##inputdb##.startssourcetypefraction; +insert ignore into state select * from ##inputdb##.state; +insert ignore into year select * from ##inputdb##.year; +insert ignore into zone select * from ##inputdb##.zone; +insert ignore into zonemonthhour select * from ##inputdb##.zonemonthhour; +insert ignore into zoneroadtype select * from ##inputdb##.zoneroadtype; + +insert ignore into HPMSVTypeDay select * from ##inputdb##.HPMSVTypeDay; +insert ignore into SourceTypeDayVMT select * from ##inputdb##.SourceTypeDayVMT; +insert ignore into SourceTypeYearVMT select * from ##inputdb##.SourceTypeYearVMT; +insert ignore into nrfuelsupply select * from ##inputdb##.nrfuelsupply; + + +-- Check for warning or error messages +drop procedure if exists spConvert2014CDMPDM; + +BeginBlock +create procedure spConvert2014CDMPDM() +begin + declare howMany int default 0; + declare isCustomDomain int default 0; + + -- No actions are needed here +end +EndBlock + +call spConvert2014CDMPDM(); +drop procedure if exists spConvert2014CDMPDM; diff --git a/database/CrankcaseEmissionCalculator.sql b/database/CrankcaseEmissionCalculator.sql new file mode 100644 index 0000000..f956b9d --- /dev/null +++ b/database/CrankcaseEmissionCalculator.sql @@ -0,0 +1,352 @@ +-- Author Wesley Faler +-- Version 2013-09-23 + +-- @algorithm +-- @owner Crankcase Emission Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data +CREATE TABLE IF NOT EXISTS ##prefix##CrankcaseEmissionRatio ( + polProcessID int NOT NULL, + minModelYearID smallint(6) NOT NULL, + maxModelYearID smallint(6) NOT NULL, + sourceTypeID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + crankcaseRatio float NOT NULL, + crankcaseRatioCV float DEFAULT NULL, + primary key (polProcessID, minModelYearID, maxModelYearID, sourceTypeID, fuelTypeID) +); +TRUNCATE TABLE ##prefix##CrankcaseEmissionRatio; + +CREATE TABLE IF NOT EXISTS ##prefix##CrankcasePollutantProcessAssoc ( + polProcessID int NOT NULL, + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + isAffectedByExhaustIM CHAR(1) NOT NULL DEFAULT "N", + isAffectedByEvapIM CHAR(1) NOT NULL DEFAULT "N", + PRIMARY KEY (polProcessID), + KEY (processID), + KEY (pollutantID) +); +TRUNCATE TABLE ##prefix##CrankcasePollutantProcessAssoc; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- Section PM +cache select c.polProcessID, + MYRMAP(c.minModelYearID) as minModelYearID, + MYRMAP(c.maxModelYearID) as maxModelYearID, + c.sourceTypeID, + c.fuelTypeID, + c.crankcaseRatio, + c.crankcaseRatioCV +into outfile '##PMCrankcaseEmissionRatio##' +from PollutantProcessAssoc ppa +inner join CrankcaseEmissionRatio c on (c.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=c.sourceTypeID and r.fuelTypeID=c.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID = ##outputProcessID## +and ( + (c.minModelYearID >= MYMAP(##context.year## - 30) and c.minModelYearID <= MYMAP(##context.year##)) + or + (c.maxModelYearID >= MYMAP(##context.year## - 30) and c.maxModelYearID <= MYMAP(##context.year##)) + or + (c.minModelYearID < MYMAP(##context.year## - 30) and c.maxModelYearID > MYMAP(##context.year##)) +); + +cache select distinct ppa.polProcessID, ppa.processID, ppa.pollutantID, ppa.isAffectedByExhaustIM, ppa.isAffectedByEvapIM +into outfile '##PMCrankcasePollutantProcessAssoc##' +from PollutantProcessAssoc ppa +inner join CrankcaseEmissionRatio c on (c.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=c.sourceTypeID and r.fuelTypeID=c.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID = ##outputProcessID## +and ( + (c.minModelYearID >= MYMAP(##context.year## - 30) and c.minModelYearID <= MYMAP(##context.year##)) + or + (c.maxModelYearID >= MYMAP(##context.year## - 30) and c.maxModelYearID <= MYMAP(##context.year##)) + or + (c.minModelYearID < MYMAP(##context.year## - 30) and c.maxModelYearID > MYMAP(##context.year##)) +); +-- End Section PM + +-- Section NonPM +cache select c.polProcessID, + MYRMAP(c.minModelYearID) as minModelYearID, + MYRMAP(c.maxModelYearID) as maxModelYearID, + c.sourceTypeID, + c.fuelTypeID, + c.crankcaseRatio, + c.crankcaseRatioCV +into outfile '##NonPMCrankcaseEmissionRatio##' +from PollutantProcessAssoc ppa +inner join CrankcaseEmissionRatio c on (c.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=c.sourceTypeID and r.fuelTypeID=c.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID = ##outputProcessID## +and ( + (c.minModelYearID >= MYMAP(##context.year## - 30) and c.minModelYearID <= MYMAP(##context.year##)) + or + (c.maxModelYearID >= MYMAP(##context.year## - 30) and c.maxModelYearID <= MYMAP(##context.year##)) + or + (c.minModelYearID < MYMAP(##context.year## - 30) and c.maxModelYearID > MYMAP(##context.year##)) +); + +cache select distinct ppa.polProcessID, ppa.processID, ppa.pollutantID, ppa.isAffectedByExhaustIM, ppa.isAffectedByEvapIM +into outfile '##NonPMCrankcasePollutantProcessAssoc##' +from PollutantProcessAssoc ppa +inner join CrankcaseEmissionRatio c on (c.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=c.sourceTypeID and r.fuelTypeID=c.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID = ##outputProcessID## +and ( + (c.minModelYearID >= MYMAP(##context.year## - 30) and c.minModelYearID <= MYMAP(##context.year##)) + or + (c.maxModelYearID >= MYMAP(##context.year## - 30) and c.maxModelYearID <= MYMAP(##context.year##)) + or + (c.minModelYearID < MYMAP(##context.year## - 30) and c.maxModelYearID > MYMAP(##context.year##)) +); +-- End Section NonPM + +-- End Section Extract Data + +-- Section Processing + +drop table if exists ##prefix##CrankcaseMOVESWorkerOutputTemp; +create table if not exists ##prefix##CrankcaseMOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL, + + index (fuelTypeID), + index (sourceTypeID), + index (roadTypeID), + index (zoneID) +); + +CREATE INDEX ##prefix##MOVESWorkerOutput_New2 ON MOVESWorkerOutput ( + pollutantID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + processID ASC +); +CREATE INDEX ##prefix##CrankcasePollutantProcessAssoc_New1 ON ##prefix##CrankcasePollutantProcessAssoc ( + pollutantID ASC, + polProcessID ASC, + processID ASC +); +CREATE INDEX ##prefix##CrankcaseEmissionRatio_New1 ON ##prefix##CrankcaseEmissionRatio ( + polProcessID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + minModelYearID ASC, + maxModelYearID ASC +); + +-- @algorithm crankcase emissions[output pollutantID,processID,modelYearID,sourceTypeID,fuelTypeID] = emissions[input pollutantID,processID,modelYearID,sourceTypeID,fuelTypeID] * +-- crankcaseRatio[output pollutantID,input polluantID,processID,modelYearID,sourceTypeID,fuelTypeID] +insert into ##prefix##CrankcaseMOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + ppa.pollutantID, + ppa.processID, + r.sourceTypeID, + mwo.regClassID, + r.fuelTypeID, + mwo.modelYearID, + roadTypeID, + SCC, + (emissionQuant * crankcaseRatio) as emissionQuant, + (emissionRate * crankcaseRatio) as emissionRate +from MOVESWorkerOutput mwo +inner join ##prefix##CrankcasePollutantProcessAssoc ppa on (ppa.pollutantID=mwo.pollutantID) +inner join ##prefix##CrankcaseEmissionRatio r on ( + r.polProcessID=ppa.polProcessID + and r.sourceTypeID=mwo.sourceTypeID + and r.fuelTypeID=mwo.fuelTypeID + and r.minModelYearID <= mwo.modelYearID + and r.maxModelYearID >= mwo.modelYearID + ) +where ((mwo.processID=1 and ppa.processID=15) + or (mwo.processID=2 and ppa.processID=16) + or (mwo.processID=90 and ppa.processID=17)) + and mwo.pollutantID in (##pollutantIDs##); + +insert into MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate +from ##prefix##CrankcaseMOVESWorkerOutputTemp; + +-- Section SulfatePM10 +truncate table ##prefix##CrankcaseMOVESWorkerOutputTemp; +insert into ##prefix##CrankcaseMOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + 105 as pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate +from MOVESWorkerOutput +where pollutantID=115 +and processID in (15,16,17); + +insert into MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate +from ##prefix##CrankcaseMOVESWorkerOutputTemp; +-- End Section SulfatePM10 + +alter table MOVESWorkerOutput drop index ##prefix##MOVESWorkerOutput_New2; +alter table ##prefix##CrankcasePollutantProcessAssoc drop index ##prefix##CrankcasePollutantProcessAssoc_New1; +alter table ##prefix##CrankcaseEmissionRatio drop index ##prefix##CrankcaseEmissionRatio_New1; + +-- End Section Processing + +-- Section Cleanup +drop table if exists ##prefix##CrankcaseMOVESWorkerOutputTemp; +drop table if exists ##prefix##CrankcasePollutantProcessAssoc; +-- End Section Cleanup diff --git a/database/CreateAuditLogTables.sql b/database/CreateAuditLogTables.sql new file mode 100644 index 0000000..18950f6 --- /dev/null +++ b/database/CreateAuditLogTables.sql @@ -0,0 +1,11 @@ +-- Version 2008-05-22 +-- Create tables for tracking imports and database changes. + +create table if not exists auditLog ( + whenHappened datetime not null, + importerName varchar(100) not null, + briefDescription varchar(100) null, + fullDescription varchar(4096) null, + key logByDate (whenHappened), + key logByImporter (importerName) +); diff --git a/database/CreateDefault.sql b/database/CreateDefault.sql new file mode 100644 index 0000000..ee94eb9 --- /dev/null +++ b/database/CreateDefault.sql @@ -0,0 +1,3019 @@ +-- Author Wesley Faler +-- Author Harvey Michaels +-- Author ahuang +-- Author Ed Glover +-- Version 2015-04-30 + + +CREATE TABLE AgeCategory ( + ageID SMALLINT NOT NULL, + ageGroupID SMALLINT, + ageCategoryName CHAR(50) NULL, + key (ageGroupID, ageID), + key (ageID, ageGroupID) +); + +CREATE UNIQUE INDEX XPKAgeCategory ON AgeCategory +( + ageID ASC +); + +CREATE TABLE AgeGroup ( + ageGroupID SMALLINT NOT NULL, + ageGroupName CHAR(50) +); + +CREATE UNIQUE INDEX XPKAgeGroup ON AgeGroup +( + ageGroupID ASC +); + +CREATE TABLE ATBaseEmissions +( + polProcessID int NOT NULL default '0', + monthGroupID int(11) NOT NULL default '0', + atBaseEmissions float NOT NULL default '0', + dataSourceID smallint(6) NULL default NULL, + primary key (polProcessID, monthGroupID) +); + +create table ATRatio ( + fuelTypeID int not null, + fuelFormulationID int not null, + polProcessID int not null, + minModelYearID int not null, + maxModelYearID int not null, + ageID int not null, + monthGroupID int not null, + atRatio double null, + PRIMARY KEY (fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, ageID, monthGroupID), + key atratio_key1 (fuelFormulationID, polProcessID, minModelYearID), + key atratio_key2 (polProcessID, fuelTypeID, monthGroupID, minModelYearID, ageID, maxModelYearID, fuelFormulationID) +); + +CREATE TABLE ATRatioGas2 +( + polProcessID int NOT NULL default '0', + sourceTypeID smallint(6) NOT NULL default '0', + fuelSubtypeID smallint(6) default NULL, + ATRatio float default NULL, + ATRatioCV float default NULL +); + +CREATE UNIQUE INDEX XPKATRatioGas2 ON ATRatioGas2 +( + polProcessID, + sourceTypeID, + fuelSubtypeID +); + +CREATE TABLE ATRatioNonGas +( + polProcessID int NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + ATRatio double DEFAULT NULL, + ATRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (polProcessID,sourceTypeID,fuelSubtypeID,modelYearGroupID) +); + +CREATE TABLE AverageTankGasoline ( + zoneID int(11) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + fuelYearID int NOT NULL, + monthGroupID smallint(6) NOT NULL, + ETOHVolume float default NULL, + RVP float NULL, + isUserInput char(1) NOT NULL default 'N', + PRIMARY KEY (zoneID,fuelTypeID,fuelYearID,monthGroupID), + index(isUserInput) +); + +CREATE TABLE AverageTankTemperature ( + tankTemperatureGroupID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + averageTankTemperature FLOAT, + averageTankTemperatureCV FLOAT +); + +CREATE UNIQUE INDEX XPKAverageTankTemperature ON AverageTankTemperature ( + tankTemperatureGroupID ASC, + zoneID ASC, + monthID ASC, + hourDayID ASC, + opModeID ASC +); + +create table avft ( + sourceTypeID smallint(6) not null, + modelYearID smallint unsigned not null, + fuelTypeID smallint(6) not null, + engTechID smallint not null, + fuelEngFraction double not null, + primary key (sourceTypeID, modelYearID, fuelTypeID, engTechID), + key (sourceTypeID), + key (modelYearID), + key (fuelTypeID), + key (engTechID) +); + +CREATE TABLE AvgSpeedBin ( + avgSpeedBinID SMALLINT NOT NULL, + avgBinSpeed FLOAT NULL, + avgSpeedBinDesc CHAR(50) NULL, + opModeIDTirewear SMALLINT(6) NULL default NULL, + opModeIDRunning SMALLINT(6) NULL default NULL +); + +CREATE UNIQUE INDEX XPKAvgSpeedBin ON AvgSpeedBin +( + avgSpeedBinID ASC +); + +CREATE TABLE AvgSpeedDistribution ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + avgSpeedBinID SMALLINT NOT NULL, + avgSpeedFraction FLOAT NULL +); + +ALTER TABLE AvgSpeedDistribution ADD ( + KEY (sourceTypeID), + KEY (roadTypeID), + KEY (hourDayID), + KEY (avgSpeedBinID) +); + +CREATE UNIQUE INDEX XPKAvgSpeedDistribution ON AvgSpeedDistribution +( + sourceTypeID ASC, + roadTypeID ASC, + hourDayID ASC, + avgSpeedBinID ASC +); + +create table BaseFuel +( + calculationEngine varchar(100) not null, + fuelTypeID smallint(6) not null, + modelYearGroupID int(11) not null default '0', + fuelFormulationID smallint(6) not null, + description varchar(255) not null default '', + dataSourceID smallint(6) not null, + primary key (calculationEngine, fuelTypeID, modelYearGroupID) +); + +CREATE TABLE ColdSoakInitialHourFraction ( + sourceTypeID smallint(6) NOT NULL, + zoneID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + hourDayID smallint(6) NOT NULL, + initialHourDayID smallint(6) NOT NULL, + coldSoakInitialHourFraction float NOT NULL, + isUserInput char(1) NOT NULL default 'N', + PRIMARY KEY (sourceTypeID,zoneID,monthID,hourDayID,initialHourDayID), + index (isUserInput) +); + +CREATE TABLE ColdSoakTankTemperature ( + zoneID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + hourID smallint(6) NOT NULL, + coldSoakTankTemperature float NOT NULL, + PRIMARY KEY (zoneID,monthID,hourID) +); + +CREATE TABLE ComplexModelParameterName +( + cmpID smallint(6) NOT NULL default '0' primary key, + cmpName char(25), + cmpExpression varchar(500) not null +); + +CREATE TABLE ComplexModelParameters +( + polProcessID int NOT NULL default '0', + fuelModelID smallint(6) NOT NULL default '0', + cmpID smallint(6) NOT NULL default '0', + coeff1 float NULL default NULL, + coeff2 float NULL default NULL, + coeff3 float NULL default NULL, + dataSourceID smallint(6) NULL default NULL, + primary key (polProcessID, fuelModelID, cmpID) +); + +CREATE TABLE County ( + countyID INTEGER NOT NULL, + stateID SMALLINT NOT NULL, + countyName CHAR(50) NULL, + altitude CHAR(1) NULL, + GPAFract FLOAT NULL, + barometricPressure FLOAT NULL, + barometricPressureCV FLOAT NULL, + key (countyID, stateID), + key (stateID, countyID) +); + +CREATE UNIQUE INDEX XPKCounty ON County +( + countyID ASC +); + +CREATE TABLE CountyYear ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + refuelingVaporProgramAdjust FLOAT NOT NULL DEFAULT 0.0, + refuelingSpillProgramAdjust FLOAT NOT NULL DEFAULT 0.0, + key (yearID, countyID) +); + +ALTER TABLE CountyYear ADD ( + KEY (countyID), + KEY (yearID) +); + +CREATE UNIQUE INDEX XPKCountyYear ON CountyYear +( + countyID ASC, + yearID ASC +); + +CREATE TABLE CrankcaseEmissionRatio ( + polProcessID int NOT NULL, + minModelYearID smallint(6) NOT NULL, + maxModelYearID smallint(6) NOT NULL, + sourceTypeID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + crankcaseRatio float NOT NULL, + crankcaseRatioCV float NULL, + primary key (polProcessID, minModelYearID, maxModelYearID, sourceTypeID, fuelTypeID) +); + +create table criteriaRatio ( + fuelTypeID int not null, + fuelFormulationID int not null, + polProcessID int not null, + pollutantID int not null, + processID int not null, + sourceTypeID int not null, + modelYearID int not null, + ageID int not null, + ratio double null, + ratioGPA double null, + ratioNoSulfur double null, + key crFuelFormulation (polProcessID, fuelFormulationID), + key crCommon (polProcessID, modelYearID, ageID) +); + +CREATE TABLE CumTVVCoeffs ( + regClassID smallint(6) NOT NULL, + modelYearGroupID int(11) NOT NULL, + ageGroupID smallint(6) NOT NULL, + polProcessID int NOT NULL, + tvvTermA float NULL, + tvvTermB float NULL, + tvvTermC float NULL, + tvvTermACV float NULL, + tvvTermBCV float NULL, + tvvTermCCV float NULL, + tvvTermAIM float NULL, + tvvTermBIM float NULL, + tvvTermCIM float NULL, + tvvTermAIMCV float NULL, + tvvTermBIMCV float NULL, + tvvTermCIMCV float NULL, + backPurgeFactor double, + averageCanisterCapacity double, + tvvEquation varchar(4096) not null default '', + leakEquation varchar(4096) not null default '', + leakFraction double, + tankSize double, + tankFillFraction double, + leakFractionIM double, + PRIMARY KEY (regClassID,modelYearGroupID,ageGroupID,polProcessID) +); + +CREATE TABLE DataSource ( + dataSourceId SMALLINT NOT NULL, + Author CHAR(25) NULL, + Date DATE NULL, + Sponsor CHAR(30) NULL, + DocumentId CHAR(150) NULL, + QualityLevel CHAR(1) NULL +); + +CREATE UNIQUE INDEX XPKDataSou ON DataSource +( + dataSourceId ASC +); + + +CREATE TABLE DayOfAnyWeek ( + dayID SMALLINT NOT NULL, + dayName CHAR(10) NULL, + noOfRealDays FLOAT NOT NULL DEFAULT 1.0 +); + +CREATE UNIQUE INDEX XPKDayOfAnyWeek ON DayOfAnyWeek +( + dayID ASC +); + + +CREATE TABLE DayVMTFraction ( + sourceTypeID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + dayVMTFraction FLOAT NULL +); + +ALTER TABLE DayVMTFraction ADD ( + KEY (sourceTypeID), + KEY (monthID), + KEY (roadTypeID), + KEY (dayID) +); + +CREATE UNIQUE INDEX XPKDayVMTFraction ON DayVMTFraction +( + sourceTypeID ASC, + monthID ASC, + roadTypeID ASC, + dayID ASC +); + +CREATE TABLE dioxinemissionrate ( + polProcessID int NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + units char(30) DEFAULT NULL, + meanBaseRate double DEFAULT NULL, + meanBaseRateCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID), + UNIQUE KEY XPKDioxinEmissionRate (polProcessID,fuelTypeID,modelYearGroupID) +); + +CREATE TABLE DriveSchedule ( + driveScheduleID SMALLINT NOT NULL, + averageSpeed FLOAT NOT NULL, + driveScheduleName CHARACTER(50) NULL +); + +CREATE UNIQUE INDEX XPKDriveSchedule ON DriveSchedule +( + driveScheduleID ASC +); + + +CREATE TABLE DriveScheduleAssoc ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + isRamp CHAR(1) NOT NULL, + driveScheduleID SMALLINT NOT NULL +); + +ALTER TABLE DriveScheduleAssoc ADD ( + KEY (sourceTypeID), + KEY (roadTypeID), + KEY (isRamp), + KEY (driveScheduleID) +); + +CREATE UNIQUE INDEX XPKDriveScheduleAssoc ON DriveScheduleAssoc +( + sourceTypeID ASC, + roadTypeID ASC, + isRamp ASC, + driveScheduleID ASC +); + + +CREATE TABLE DriveScheduleSecond ( + driveScheduleID SMALLINT NOT NULL, + second SMALLINT NOT NULL, + speed FLOAT NULL +); + +ALTER TABLE DriveScheduleSecond ADD ( + KEY (driveScheduleID), + KEY (second) +); + +CREATE UNIQUE INDEX XPKDriveScheduleSecond ON DriveScheduleSecond +( + driveScheduleID ASC, + second ASC +); + +create table driveScheduleSecondLink ( + linkID integer not null, + secondID smallint not null, + speed float null, + grade float not null default 0.0, + primary key (linkID, secondID), + key (secondID, linkID) +); + +create table e10FuelProperties ( + fuelRegionID int not null, + fuelYearID int not null, + monthGroupID smallint not null, + RVP double null, + sulfurLevel double null, + ETOHVolume double null, + MTBEVolume double null, + ETBEVolume double null, + TAMEVolume double null, + aromaticContent double null, + olefinContent double null, + benzeneContent double null, + e200 double null, + e300 double null, + BioDieselEsterVolume double null, + CetaneIndex double null, + PAHContent double null, + T50 double null, + T90 double null, + primary key (fuelRegionID, fuelYearID, monthGroupID) +); + +CREATE TABLE EmissionProcess ( + processID SMALLINT NOT NULL, + processName CHAR(50) NULL, + SCCProcID CHAR(1) NULL, + occursOnRealRoads CHAR(1) DEFAULT "Y" NOT NULL, + shortName VARCHAR(50) NULL, + processDisplayGroupID smallint(6) unsigned DEFAULT NULL, + isAffectedByOnroad tinyint(1) DEFAULT '1', + isAffectedByNonroad tinyint(1) DEFAULT '0' +); + +CREATE UNIQUE INDEX XPKEmissionProcess ON EmissionProcess +( + processID ASC +); + + +CREATE TABLE EmissionRate ( + sourceBinID BIGINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT NULL, + meanBaseRateCV FLOAT NULL, + meanBaseRateIM FLOAT NULL, + meanBaseRateIMCV FLOAT NULL, + dataSourceId SMALLINT NULL +); + +ALTER TABLE EmissionRate ADD ( + KEY (sourceBinID), + KEY (polProcessID), + KEY (opModeID) +); + +CREATE UNIQUE INDEX XPKEmissionRate ON EmissionRate +( + sourceBinID ASC, + polProcessID ASC, + opModeID ASC +); + +CREATE TABLE EmissionRateAdjustment +( + polProcessID int(11) not null, + sourceTypeID smallint(6) not null, + regClassID smallint(6) not null, + fuelTypeID smallint(6) not null, + beginModelYearID smallint(6) not null, + endModelYearID smallint(6) not null, + emissionRateAdjustment double null default NULL, + dataSourceID smallint(6) NULL default NULL, + primary key (polProcessID, sourceTypeID, fuelTypeID, regClassID, beginModelYearID, endModelYearID), + key (polProcessID, beginModelYearID, endModelYearID) +); + +CREATE TABLE EmissionRateByAge ( + sourceBinID BIGINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + meanBaseRate FLOAT NULL, + meanBaseRateCV FLOAT NULL, + meanBaseRateIM FLOAT NULL, + meanBaseRateIMCV FLOAT NULL, + dataSourceId SMALLINT NULL +); + +ALTER TABLE EmissionRateByAge ADD ( + KEY (sourceBinID), + KEY (polProcessID), + KEY (opModeID), + KEY (ageGroupID) +); + +CREATE UNIQUE INDEX XPKEmissionRateByAge ON EmissionRateByAge +( + sourceBinID ASC, + polProcessID ASC, + opModeID ASC, + ageGroupID ASC +); + +CREATE TABLE EngineSize ( + engSizeID SMALLINT NOT NULL, + engSizeName CHARACTER(50) NULL +); + +CREATE UNIQUE INDEX XPKEngineSize ON EngineSize +( + engSizeID ASC +); + +CREATE TABLE enginetech ( + engTechID smallint(6) NOT NULL DEFAULT '0', + tierID smallint(6) DEFAULT '99', + strokes smallint(6) DEFAULT '99', + engTechName char(50) DEFAULT NULL, + engTechDesc char(80) DEFAULT NULL, + PRIMARY KEY (engTechID) +); + +CREATE TABLE ETOHBin +( + etohThreshID smallint(6) NOT NULL default '0' primary key, + etohThreshLow float NULL default NULL, + etohThreshHigh float NULL default NULL, + etohNominalValue float NULL default NULL +); + +create table evapTemperatureAdjustment ( + processID smallint(6) not null, + tempAdjustTerm3 double not null default 0, + tempAdjustTerm2 double not null default 0, + tempAdjustTerm1 double not null default 0, + tempAdjustConstant double not null default 0, + primary key (processID) +); + +create table evapRVPTemperatureAdjustment ( + processID smallint(6) not null, + fuelTypeID smallint(6) not null, + RVP double not null, + adjustTerm3 double not null default 0, + adjustTerm2 double not null default 0, + adjustTerm1 double not null default 0, + adjustConstant double not null default 0, + primary key (processID, fuelTypeID, RVP), + key (RVP, processID, fuelTypeID), + key (RVP, fuelTypeID, processID) +); + +CREATE TABLE ExtendedIdleHours ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + extendedIdleHours FLOAT NULL, + extendedIdleHoursCV FLOAT NULL +); + +ALTER TABLE ExtendedIdleHours ADD ( + KEY (sourceTypeID), + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (zoneID) +); + +CREATE UNIQUE INDEX XPKExtendedIdleHours ON ExtendedIdleHours +( + sourceTypeID ASC, + hourDayID ASC, + monthID ASC, + yearID ASC, + ageID ASC, + zoneID ASC +); + +CREATE TABLE FuelEngTechAssoc ( + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + engTechID SMALLINT NOT NULL, + category CHAR(50) NOT NULL, + categoryDisplayOrder SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKFuelEngTechAssoc ON FuelEngTechAssoc +( + sourceTypeID ASC, + fuelTypeID ASC, + engTechID ASC +); + +CREATE TABLE FuelFormulation ( + fuelFormulationID SMALLINT NOT NULL PRIMARY KEY, + fuelSubtypeID SMALLINT NOT NULL, + RVP FLOAT NULL, + sulfurLevel FLOAT NULL, + ETOHVolume FLOAT NULL, + MTBEVolume FLOAT NULL, + ETBEVolume FLOAT NULL, + TAMEVolume FLOAT NULL, + aromaticContent FLOAT NULL, + olefinContent FLOAT NULL, + benzeneContent FLOAT NULL, + e200 FLOAT NULL, + e300 FLOAT NULL, + volToWtPercentOxy FLOAT NULL, + BioDieselEsterVolume float DEFAULT NULL, + CetaneIndex float DEFAULT NULL, + PAHContent float DEFAULT NULL, + T50 float DEFAULT NULL, + T90 float DEFAULT NULL, + key (fuelSubTypeID, fuelFormulationID) +); + +CREATE TABLE FuelModelName +( + fuelModelID smallint(6) NOT NULL default '0' primary key, + fuelModelName varchar(50) not null, + fuelModelAbbreviation varchar(10) not null, + calculationEngines varchar(200) not null default '' +); + +CREATE TABLE FuelModelWtFactor +( + fuelModelID smallint(6) NOT NULL default '0', + modelYearGroupID int(11) NOT NULL default '0', + ageID smallint(6) NOT NULL default '0', + fuelModelWtFactor float NULL default NULL, + dataSourceID smallint(6) NULL default NULL, + primary key (fuelModelID, modelYearGroupID, ageID) +); + +CREATE TABLE FuelParameterName +( + fuelParameterID smallint(6) NOT NULL default '0' primary key, + fuelParameterName varchar(25) NOT NULL default '', + fuelParameterUnits varchar(20) NOT NULL default '', + fuelParameterExpression varchar(500) NOT NULL default '' +); + +CREATE TABLE FuelSubtype ( + fuelSubtypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelSubtypeDesc CHAR(50) NULL, + fuelSubtypePetroleumFraction FLOAT NULL, + fuelSubtypePetroleumFractionCV FLOAT NULL, + fuelSubtypeFossilFraction FLOAT NULL, + fuelSubtypeFossilFractionCV FLOAT NULL, + carbonContent FLOAT NULL, + oxidationFraction FLOAT NULL, + carbonContentCV FLOAT NULL, + oxidationFractionCV FLOAT NULL, + energyContent FLOAT NULL, + key (fuelTypeID, fuelSubtypeID) +); + +CREATE UNIQUE INDEX XPKFuelSubtype ON FuelSubtype +( + fuelSubtypeID ASC +); + + +CREATE TABLE FuelSupply ( + fuelRegionID INTEGER NOT NULL, + fuelYearID INT NOT NULL, + monthGroupID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + marketShare FLOAT NULL, + marketShareCV FLOAT NULL +); + +ALTER TABLE FuelSupply ADD ( + KEY (fuelRegionID), + KEY (fuelYearID), + KEY (monthGroupID), + KEY (fuelFormulationID) +); + +CREATE UNIQUE INDEX XPKFuelSupply ON FuelSupply +( + fuelRegionID ASC, + fuelyearID ASC, + monthGroupID ASC, + fuelFormulationID ASC +); + +CREATE TABLE FuelSupplyYear ( + fuelYearID INT NOT NULL PRIMARY KEY +); + +CREATE TABLE FuelType ( + fuelTypeID SMALLINT NOT NULL, + defaultFormulationID SMALLINT NOT NULL, + fuelTypeDesc CHAR(50) NULL, + humidityCorrectionCoeff FLOAT NULL, + humidityCorrectionCoeffCV FLOAT NULL, + fuelDensity FLOAT NULL, + subjectToEvapCalculations CHAR(1) NOT NULL DEFAULT 'N' +); + +CREATE UNIQUE INDEX XPKFuelType ON FuelType +( + fuelTypeID ASC +); + +ALTER TABLE FuelType ADD ( + KEY (subjectToEvapCalculations, fuelTypeID) +); + +create table fuelUsageFraction ( + countyID int(11) not null, + fuelYearID int not null, + modelYearGroupID int(11) not null, + sourceBinFuelTypeID smallint(6) not null, + fuelSupplyFuelTypeID smallint(6) not null, + usageFraction double, + primary key (countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID) +); + +create table fuelWizardFactors ( + adjustedParameter varchar(4) not null, + minLevel double not null, + maxLevel double not null, + functionType varchar(4) not null, + monthGroupID smallint(6) not null, + fuelTypeID smallint(6) not null, + RVP_factor double null, + sulf_factor double null, + ETOH_factor double null, + arom_factor double null, + olef_factor double null, + benz_factor double null, + e200_factor double null, + e300_factor double null, + T50_factor double null, + T90_factor double null, + units varchar(6) null, + dataSourceId smallint(6) null, + primary key (fuelTypeID, monthGroupID, adjustedParameter, minLevel, maxLevel, functionType) +); + +CREATE TABLE FullACAdjustment ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + fullACAdjustment FLOAT NULL, + fullACAdjustmentCV FLOAT NULL +); + +ALTER TABLE FullACAdjustment ADD ( + KEY (sourceTypeID), + KEY (polProcessID), + KEY (opModeID) +); + +CREATE UNIQUE INDEX XPKFullACAdjustment ON FullACAdjustment +( + sourceTypeID ASC, + polProcessID ASC, + opModeID ASC +); + +create table generalFuelRatio ( + fuelTypeID int not null, + fuelFormulationID int not null, + polProcessID int not null, + pollutantID int not null, + processID int not null, + minModelYearID int not null default '1960', + maxModelYearID int not null default '2050', + minAgeID int not null default '0', + maxAgeID int not null default '30', + sourceTypeID int not null, + fuelEffectRatio double not null default '0', + fuelEffectRatioGPA double not null default '0' +); + +create table generalFuelRatioExpression ( + fuelTypeID int not null, + polProcessID int not null, + minModelYearID int not null default '1960', + maxModelYearID int not null default '2050', + minAgeID int not null default '0', + maxAgeID int not null default '30', + sourceTypeID int not null default '0', + fuelEffectRatioExpression varchar(32000) not null default '', + fuelEffectRatioGPAExpression varchar(32000) not null default '' +); + +CREATE TABLE GREETManfAndDisposal ( + GREETVehicleType SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + EmissionStage CHAR(4) NOT NULL, + emissionPerVehicle FLOAT NULL +); + +ALTER TABLE GREETManfAndDisposal ADD ( + KEY (GREETVehicleType), + KEY (modelYearID), + KEY (pollutantID), + KEY (emissionStage) +); + +CREATE UNIQUE INDEX XPKGREETManfAndDisposal ON GREETManfAndDisposal +( + GREETVehicleType ASC, + modelYearID DESC, + pollutantID ASC, + EmissionStage ASC +); + + +CREATE TABLE GREETWellToPump ( + yearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + fuelSubtypeID SMALLINT NOT NULL, + emissionRate FLOAT NULL, + emissionRateUncertainty FLOAT NULL +); + +ALTER TABLE GREETWellToPump ADD ( + KEY (yearID), + KEY (pollutantID), + KEY (fuelSubtypeID) +); + +CREATE UNIQUE INDEX XPKGREETWellToPump ON GREETWellToPump +( + yearID ASC, + pollutantID ASC, + fuelSubtypeID ASC +); + + +CREATE TABLE Grid ( + gridID INTEGER NOT NULL +); + +CREATE UNIQUE INDEX XPKGrid ON Grid +( + gridID ASC +); + + +CREATE TABLE GridZoneAssoc ( + zoneID INTEGER NOT NULL, + gridID INTEGER NOT NULL, + gridAllocFactor FLOAT NULL +); + +ALTER TABLE GridZoneAssoc ADD ( + KEY (zoneID), + KEY (gridID) +); + +CREATE UNIQUE INDEX XPKGridZoneAssoc ON GridZoneAssoc +( + zoneID ASC, + gridID ASC +); + +CREATE TABLE HCPermeationCoeff +( + polProcessID int NOT NULL default '0', + etohThreshID smallint(6) NOT NULL default '0', + fuelMYGroupID int(11) NOT NULL default '0', + fuelAdjustment float NULL default NULL, + fuelAdjustmentGPA float NULL default NULL, + dataSourceID smallint(6) NULL default NULL, + primary key (polProcessID, etohThreshID, fuelMYGroupID) +); + +CREATE TABLE HCSpeciation ( + polProcessID int, + fuelMYGroupID int(11), + fuelSubtypeID smallint(6), + etohThreshID smallint(6), + oxyThreshID smallint(6), + speciationConstant float, + oxySpeciation float, + PRIMARY KEY (polProcessID, fuelMYGroupID, fuelSubtypeID, etohThreshID, oxyThreshID) +); + +create table hotellingActivityDistribution ( + beginModelYearID smallint(6) not null, + endModelYearID smallint(6) not null, + opModeID smallint(6) not null, + opModeFraction float not null, + primary key (beginModelYearID, endModelYearID, opModeID) +); + +create table hotellingCalendarYear ( + yearID smallint not null, + hotellingRate double not null, + primary key (yearID) +); + +CREATE TABLE hotellingHours ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hotellingHours DOUBLE NULL, + primary key (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID), + key (sourceTypeID), + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (zoneID) +); + +CREATE TABLE HourDay ( + hourDayID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + key (dayID, hourID, hourDayID), + key (hourID, dayID, hourDayID), + key (hourDayID, dayID, hourID), + key (hourDayID, hourID, dayID) +); + +ALTER TABLE HourDay ADD ( + KEY (dayID), + KEY (hourID) +); + +CREATE UNIQUE INDEX XPKHourDay ON HourDay +( + hourDayID ASC +); + + +CREATE TABLE HourOfAnyDay ( + hourID SMALLINT NOT NULL, + hourName CHAR(50) NULL +); + +CREATE UNIQUE INDEX XPKHourOfAnyDay ON HourOfAnyDay +( + hourID ASC +); + + +CREATE TABLE HourVMTFraction ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + hourVMTFraction FLOAT NULL +); + +ALTER TABLE HourVMTFraction ADD ( + KEY (sourceTypeID), + KEY (roadTypeID), + KEY (dayID), + KEY (hourID) +); + +CREATE UNIQUE INDEX XPKHourVMTFraction ON HourVMTFraction +( + sourceTypeID ASC, + roadTypeID ASC, + dayID ASC, + hourID ASC +); + + +CREATE TABLE HPMSVtype ( + HPMSVtypeID SMALLINT NOT NULL, + HPMSVtypeName CHARACTER(50) NULL +); + +CREATE UNIQUE INDEX XPKHPMSVtype ON HPMSVtype +( + HPMSVtypeID ASC +); + +create table HPMSVtypeDay ( + yearID smallint not null, + monthID smallint not null, + dayID smallint not null, + HPMSVtypeID smallint not null, + VMT double not null, + primary key (yearID, monthID, dayID, HPMSVtypeID), + key (HPMSVtypeID, yearID, monthID, dayID) +); + +CREATE TABLE HPMSVtypeYear ( + HPMSVtypeID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + VMTGrowthFactor FLOAT NULL, + HPMSBaseYearVMT FLOAT NULL, + key (yearID, HPMSVtypeID) +); + +ALTER TABLE HPMSVtypeYear ADD ( + KEY (HPMSVtypeID), + KEY (yearID) +); + +CREATE UNIQUE INDEX XPKHPMSVtypeYear ON HPMSVtypeYear +( + HPMSVtypeID ASC, + yearID ASC +); + +CREATE TABLE IMCoverage ( + polProcessID int NOT NULL, + stateID INT, + countyID INT NOT NULL, + yearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + IMProgramID SMALLINT NOT NULL, + inspectFreq smallint(6) NULL, + testStandardsID smallint NULL, + begModelYearID SMALLINT, + endModelYearID SMALLINT, + useIMyn CHAR(1) NOT NULL DEFAULT 'Y', + complianceFactor FLOAT DEFAULT NULL +); + +CREATE UNIQUE INDEX XPKIMCoverage ON IMCoverage +( + polProcessID ASC, + countyID ASC, + yearID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + IMProgramID ASC +); + +CREATE TABLE IMFactor +( + polProcessID int NOT NULL, + inspectFreq smallint(6) NOT NULL, + testStandardsID smallint(6) NOT NULL, + sourceTypeID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + IMModelYearGroupID int(8) NOT NULL, + ageGroupID smallint(6) NOT NULL, + IMFactor float NOT NULL +); + +CREATE UNIQUE INDEX XPKIMFactor ON IMFactor +( + polProcessID ASC, + inspectFreq ASC, + testStandardsID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + IMModelYearGroupID ASC, + ageGroupID ASC +); + +CREATE TABLE imInspectFreq +( + inspectFreq smallint(6) NOT NULL primary key, + inspectFreqDesc char(50) DEFAULT NULL +); + +CREATE TABLE IMModelYearGroup ( + IMModelYearGroupID int(8) NOT NULL, + IMModelYearGroupDesc char(40) NOT NULL +); + +CREATE UNIQUE INDEX XPKIMModelYearGroup ON IMModelYearGroup +( + IMModelYearGroupID ASC +); + +CREATE TABLE IMTestStandards +( + testStandardsID smallint(6) NOT NULL, + testStandardsDesc char(50) NOT NULL, + shortName varchar(50) default NULL +); + +CREATE UNIQUE INDEX XPKIMTestStandards ON IMTestStandards +( + testStandardsID ASC +); + + +CREATE TABLE importStartsOpModeDistribution ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + linkID INTEGER NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + opModeFraction FLOAT NULL, + opModeFractionCV FLOAT NULL, + primary key (sourceTypeID, hourDayID, linkID, polProcessID, opModeID), + KEY (sourceTypeID), + KEY (hourDayID), + KEY (linkID), + KEY (polProcessID), + KEY (opModeID) +); + +create table integratedSpeciesSet ( + mechanismID smallint(6) not null, + integratedSpeciesSetID smallint(6) not null, + pollutantID smallint(6) not null, + useISSyn varchar(2) null, + primary key (mechanismID, integratedSpeciesSetID, pollutantID) +); + +create table integratedSpeciesSetName ( + integratedSpeciesSetID smallint(6) not null, + integratedSpeciesSetName varchar(40) null, + primary key (integratedSpeciesSetID), + key (integratedSpeciesSetName) +); + +CREATE TABLE Link ( + linkID INTEGER NOT NULL, + countyID INTEGER NOT NULL, + zoneID INTEGER NULL, + roadTypeID SMALLINT NOT NULL, + linkLength FLOAT NULL, + linkVolume FLOAT NULL, + linkAvgSpeed float null, + linkDescription varchar(50) null, + linkAvgGrade float null +); + +ALTER TABLE Link ADD ( + KEY (countyID), + KEY (zoneID), + KEY (roadTypeID) +); + +CREATE UNIQUE INDEX XPKLink ON Link +( + linkID ASC +); + + +CREATE TABLE LinkAverageSpeed ( + linkID INTEGER NOT NULL, + averageSpeed FLOAT NULL +); + +CREATE UNIQUE INDEX XPKLinkAverageSpeed ON LinkAverageSpeed +( + linkID ASC +); + + +CREATE TABLE LinkHourVMTFraction ( + linkID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + VMTFraction FLOAT NULL +); + +ALTER TABLE LinkHourVMTFraction ADD ( + KEY (linkID), + KEY (monthID), + KEY (sourceTypeID), + KEY (dayID), + KEY (hourID) +); + +CREATE UNIQUE INDEX XPKLinkHourVMTFraction ON LinkHourVMTFraction +( + linkID ASC, + monthID ASC, + sourceTypeID ASC, + dayID ASC, + hourID ASC +); + +create table linkSourceTypeHour ( + linkID integer not null, + sourceTypeID smallint not null, + sourceTypeHourFraction float null, + primary key (linkID, sourceTypeID), + key (sourceTypeID, linkID) +); + +create table lumpedSpeciesName ( + lumpedSpeciesID smallint(6) not null, + lumpedSpeciesName varchar(20) null, + primary key (lumpedSpeciesID), + key (lumpedSpeciesName) +); + +create table M6SulfurCoeff ( + pollutantID int not null, + minModelYearID int not null, + maxModelYearID int not null, + minSulfur double not null, + sulfurLongCoeff double, + sulfurIRFactor double, + maxIRFactorSulfur double, + key(pollutantID, minModelYearID, maxModelYearID) +); + +CREATE TABLE MeanFuelParameters +( + polProcessID int NOT NULL default '0', + fuelTypeID smallint(6) NOT NULL default '0' , + modelYearGroupID int(11) NOT NULL default '0', + fuelParameterID smallint(6) NOT NULL default '0', + baseValue float NULL default NULL, + centeringValue float NULL default NULL, + stdDevValue float NULL default NULL, + dataSourceID smallint(6) NULL default NULL, + primary key (polProcessID, fuelTypeID, modelYearGroupID, fuelParameterID) +); + +create table mechanismName ( + mechanismID smallint(6) not null, + mechanismName varchar(40) null, + primary key (mechanismID), + key (mechanismName) +); + +CREATE TABLE metalemissionrate ( + polProcessID int NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + units char(20) DEFAULT NULL, + meanBaseRate double DEFAULT NULL, + meanBaseRateCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (polProcessID,fuelTypeID,sourceTypeID,modelYearGroupID), + UNIQUE KEY XPKMetalEmissionRate (polProcessID,fuelTypeID,sourceTypeID,modelYearGroupID) +); + +CREATE TABLE methaneTHCRatio ( + processID smallint(6) NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + ageGroupID smallint(6) NOT NULL DEFAULT '0', + CH4THCRatio double DEFAULT NULL, + CH4THCRatioCV double DEFAULT NULL, + PRIMARY KEY (processID,fuelTypeID,sourceTypeID,modelYearGroupID,ageGroupID) +); + +CREATE TABLE minorhapratio ( + polProcessID int NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + atRatio double DEFAULT NULL, + atRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (fuelTypeID,fuelSubtypeID,polProcessID,modelYearGroupID), + UNIQUE KEY XPKMinorHAPRatio (fuelTypeID,fuelSubtypeID,polProcessID,modelYearGroupID) +); + +CREATE TABLE ModelYear ( + modelYearID SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKModelYear ON ModelYear +( + modelYearID ASC +); + +CREATE TABLE ModelYearGroup ( + modelYearGroupID INTEGER NOT NULL, + shortModYrGroupID SMALLINT NULL, + modelYearGroupName CHARACTER(50) NULL, + modelYearGroupStartYear SMALLINT(6) DEFAULT NULL, + modelYearGroupEndYear SMALLINT(6) DEFAULT NULL, + PRIMARY KEY (modelYearGroupID) +); + +CREATE TABLE FuelModelYearGroup ( + fuelMYGroupID INT NOT NULL, + fuelMYGroupName CHAR(100) NULL, + fuelMYGroupFunction CHAR(200) NULL, + maxSulfurLevel FLOAT NULL, + maxSulfurLevelCV FLOAT NULL, + maxSulfurLevelGPA FLOAT NULL, + maxSulfurLevelGPACV FLOAT NULL +); + +CREATE UNIQUE INDEX XPKFuelModelYearGroup ON FuelModelYearGroup +( + fuelMYGroupID ASC +); + + +create table modelYearCutPoints ( + cutPointName varchar(100) not null, + modelYearID smallint(6) not null, + primary key (cutPointName) +); + +create table modelYearMapping ( + startUserModelYear smallint(6) not null, + endUserModelYear smallint(6) not null, + startStandardModelYear smallint(6) not null, + endStandardModelYear smallint(6) not null, + primary key (startUserModelYear, endUserModelYear) +); + +CREATE TABLE MonthGroupHour ( + monthGroupID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACActivityTermA FLOAT NULL, + ACActivityTermACV FLOAT NULL, + ACActivityTermB FLOAT NULL, + ACActivityTermBCV FLOAT NULL, + ACActivityTermC FLOAT NULL, + ACActivityTermCCV FLOAT NULL, + key (hourID, monthGroupID) +); + +ALTER TABLE MonthGroupHour ADD ( + KEY (monthGroupID), + KEY (hourID) +); + +CREATE UNIQUE INDEX XPKMonthGroupHour ON MonthGroupHour +( + monthGroupID ASC, + hourID ASC +); + + +CREATE TABLE MonthGroupOfAnyYear ( + monthGroupID SMALLINT NOT NULL, + monthGroupName CHAR(50) NULL +); + +CREATE UNIQUE INDEX XPKMonthGroupOfAnyYear ON MonthGroupOfAnyYear +( + monthGroupID ASC +); + + +CREATE TABLE MonthofAnyYear ( + monthID SMALLINT NOT NULL, + monthName CHAR(10) NULL, + noOfDays SMALLINT NULL, + monthGroupID SMALLINT NOT NULL, + key (monthGroupID, monthID), + key (monthID, monthGroupID) +); + +ALTER TABLE MonthofAnyYear ADD ( + KEY (monthGroupID) +); + +CREATE UNIQUE INDEX XPKMonthofAnyYear ON MonthofAnyYear +( + monthID ASC +); + + +CREATE TABLE MonthVMTFraction ( + sourceTypeID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + monthVMTFraction FLOAT NULL +); + +ALTER TABLE MonthVMTFraction ADD ( + KEY (sourceTypeID), + KEY (monthID) +); + +CREATE UNIQUE INDEX XPKMonthVMTFraction ON MonthVMTFraction +( + sourceTypeID ASC, + monthID ASC +); + +CREATE TABLE NONO2Ratio ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT(6) NOT NULL, + fuelTypeID SMALLINT(6) NOT NULL, + modelYearGroupID INT(11) NOT NULL, + NOxRatio float NULL, + NOxRatioCV float NULL, + dataSourceId smallint(6) NULL, + PRIMARY KEY (polProcessID, sourceTypeID, fueltypeID, modelYearGroupID) +); + +CREATE UNIQUE INDEX XPKNONO2Ratio ON NONO2Ratio +( + polProcessID ASC, + sourceTypeID ASC, + fueltypeID ASC, + modelYearGroupID ASC +); + +CREATE TABLE nrAgeCategory( + ageID SMALLINT(6) NOT NULL, + ageCategoryName CHAR(50) DEFAULT NULL, + PRIMARY KEY (ageID), + UNIQUE INDEX XPKNRAgeCategory (ageID) +); + +CREATE TABLE nratratio ( + pollutantID smallint(6) NOT NULL, + processID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + atRatio double DEFAULT NULL, + atRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processID,engTechID,fuelSubtypeID,nrHPCategory) +); + +CREATE TABLE nrBaseYearEquipPopulation( + sourceTypeID SMALLINT(6) NOT NULL, + stateID SMALLINT(6) NOT NULL, + population FLOAT DEFAULT NULL, + NRBaseYearID SMALLINT(6) NOT NULL, + PRIMARY KEY (sourceTypeID, stateID), + UNIQUE INDEX XPKNRBaseYearEquipPopulation (sourceTypeID, stateID) +); + +CREATE TABLE nrCrankcaseEmissionRate ( + polProcessID int NOT NULL, + SCC char(10) NOT NULL, + hpMin smallint(6) NOT NULL, + hpMax smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + meanBaseRate float DEFAULT NULL, + units varchar(12) DEFAULT NULL, + dataSourceID smallint(6) NOT NULL, + PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID), + INDEX INDEX1 (polProcessID), + INDEX XPFnrCrankCaseEmissionRatio (polProcessID), + UNIQUE INDEX XPKNRProcessEmissionRate (polProcessID) +); + +CREATE TABLE nrDayAllocation( + scc CHAR(10) NOT NULL, + dayID SMALLINT(6) NOT NULL, + dayFraction FLOAT NOT NULL, + PRIMARY KEY (scc, dayID) +); + +CREATE TABLE nrDeterioration( + polProcessID int NOT NULL, + engTechID SMALLINT(6) NOT NULL, + DFCoefficient FLOAT DEFAULT NULL, + DFAgeExponent FLOAT DEFAULT NULL, + emissionCap SMALLINT(6) NOT NULL, + PRIMARY KEY (polProcessID, engTechID), + UNIQUE INDEX XPKNRDeterioration (polProcessID, engTechID) +); + +CREATE TABLE nrdioxinemissionrate ( + pollutantID smallint(6) NOT NULL, + processID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + engtechID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + units char(30) DEFAULT NULL, + meanBaseRate double DEFAULT NULL, + meanBaseRateCV double DEFAULT NULL, + dataSourceID smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processID,fuelTypeID,engtechID,nrHPCategory) +); + +CREATE TABLE nrEmissionRate ( + polProcessID int NOT NULL, + SCC char(10) NOT NULL, + hpMin smallint(6) NOT NULL, + hpMax smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + meanBaseRate float DEFAULT NULL, + units varchar(12) DEFAULT NULL, + dataSourceID smallint(6) NOT NULL, + PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID) +); + +CREATE TABLE nrEngtechFraction ( + SCC char(10) NOT NULL, + hpMin smallint(6) NOT NULL, + hpMax smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + processGroupID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + NREngTechFraction float DEFAULT NULL, + PRIMARY KEY (SCC,hpMin,hpMax,modelYearID,processGroupID,engTechID) +); + +CREATE TABLE nrEquipmentType( + NREquipTypeID SMALLINT(6) NOT NULL, + description CHAR(40) DEFAULT NULL, + sectorID SMALLINT(6) NOT NULL, + useDefaultScrappage CHAR(1) DEFAULT NULL, + surrogateID SMALLINT(6) DEFAULT NULL, + PRIMARY KEY (NREquipTypeID), + UNIQUE INDEX XPKNREquipmentType (NREquipTypeID) +); + +CREATE TABLE nrEvapEmissionRate ( + polProcessID int NOT NULL, + SCC char(10) NOT NULL, + hpMin smallint(6) NOT NULL, + hpMax smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + meanBaseRate float DEFAULT NULL, + units varchar(12) DEFAULT NULL, + dataSourceID smallint(6) NOT NULL, + PRIMARY KEY (polProcessID,SCC,hpMin,hpMax,modelYearID,engTechID) +); + +CREATE TABLE nrFuelSupply ( + fuelRegionID int(11) NOT NULL DEFAULT '0', + fuelYearID int(11) NOT NULL DEFAULT '0', + monthGroupID smallint(6) NOT NULL DEFAULT '0', + fuelFormulationID smallint(6) NOT NULL DEFAULT '0', + marketShare float DEFAULT NULL, + marketShareCV float DEFAULT NULL, + PRIMARY KEY (fuelRegionID,fuelFormulationID,monthGroupID,fuelYearID), + KEY countyID (fuelRegionID), + KEY yearID (fuelYearID), + KEY monthGroupID (monthGroupID), + KEY fuelSubtypeID (fuelFormulationID) +); + +CREATE TABLE nrFuelType( + fuelTypeID SMALLINT(6) NOT NULL DEFAULT 0, + defaultFormulationID SMALLINT(6) NOT NULL DEFAULT 0, + fuelTypeDesc CHAR(50) DEFAULT NULL, + humidityCorrectionCoeff FLOAT DEFAULT NULL, + humidityCorrectionCoeffCV FLOAT DEFAULT NULL, + fuelDensity FLOAT DEFAULT NULL, + subjectToEvapCalculations CHAR(1) NOT NULL DEFAULT 'N', + PRIMARY KEY (fuelTypeID) +); + +CREATE TABLE nrFuelSubtype ( + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeDesc char(50) DEFAULT NULL, + fuelSubtypePetroleumFraction float DEFAULT NULL, + fuelSubtypePetroleumFractionCV float DEFAULT NULL, + fuelSubtypeFossilFraction float DEFAULT NULL, + fuelSubtypeFossilFractionCV float DEFAULT NULL, + carbonContent float DEFAULT NULL, + oxidationFraction float DEFAULT NULL, + carbonContentCV float DEFAULT NULL, + oxidationFractionCV float DEFAULT NULL, + energyContent float DEFAULT NULL, + PRIMARY KEY (fuelSubtypeID), + KEY fuelTypeID (fuelTypeID,fuelSubtypeID) +); + +CREATE TABLE nrGrowthIndex( + growthPatternID SMALLINT(6) NOT NULL, + yearID SMALLINT(6) NOT NULL, + growthIndex SMALLINT(6) DEFAULT NULL, + PRIMARY KEY (growthPatternID, yearID), + UNIQUE INDEX XPKNRGrowthIndex (growthPatternID, yearID) +); + +CREATE TABLE nrGrowthPattern( + growthPatternID SMALLINT(6) NOT NULL, + description CHAR(80) DEFAULT NULL, + PRIMARY KEY (growthPatternID), + UNIQUE INDEX XPKNRGrowthPattern (growthPatternID) +); + +CREATE TABLE nrGrowthPatternFinder( + SCC CHAR(10) NOT NULL, + stateID SMALLINT(6) NOT NULL, + growthPatternID SMALLINT(6) NOT NULL, + PRIMARY KEY (SCC, stateID), + UNIQUE INDEX XPKNRGrowthPatternFinder (SCC, stateID) +); + +CREATE TABLE nrhcspeciation ( + pollutantID smallint(6) NOT NULL, + processID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + speciationConstant double DEFAULT NULL, + speciationConstantCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processID,engTechID,fuelSubtypeID,nrHPCategory) +); + +CREATE TABLE nrHourAllocation( + NRHourAllocPatternID SMALLINT(6) NOT NULL, + hourID SMALLINT(6) NOT NULL, + hourFraction FLOAT NOT NULL, + PRIMARY KEY (NRHourAllocPatternID, hourID), + UNIQUE INDEX XPKNRHourAllocation (NRHourAllocPatternID, hourID) +); + +CREATE TABLE nrHourAllocPattern( + NRHourAllocPatternID SMALLINT(6) NOT NULL, + description CHAR(255) NOT NULL, + PRIMARY KEY (NRHourAllocPatternID), + UNIQUE INDEX XPKNRHourAllocPattern (NRHourAllocPatternID) +); + +CREATE TABLE nrHourPatternFinder( + NREquipTypeID SMALLINT(6) NOT NULL, + NRHourAllocPatternID SMALLINT(6) DEFAULT NULL, + PRIMARY KEY (NREquipTypeID), + UNIQUE INDEX XPKNRHourPatternFinder (NREquipTypeID) +); + +CREATE TABLE nrhpcategory ( + nrhprangebinid smallint(6) NOT NULL, + engtechid smallint(6) NOT NULL, + nrhpcategory char(1) DEFAULT NULL, + PRIMARY KEY (nrhprangebinid,engtechid) +); + +CREATE TABLE nrHPRangeBin( + NRHPRangeBinID SMALLINT(6) NOT NULL, + binName CHAR(20) DEFAULT NULL, + hpMin SMALLINT(6) DEFAULT NULL, + hpMax SMALLINT(6) DEFAULT NULL, + engSizeID SMALLINT(6) NOT NULL, + PRIMARY KEY (NRHPRangeBinID), + UNIQUE INDEX XPKNRHPRangeBin (NRHPRangeBinID) +); + +CREATE TABLE nrintegratedspecies ( + pollutantID smallint(6) NOT NULL, + PRIMARY KEY (pollutantID) +); + +CREATE TABLE nrmetalemissionrate ( + pollutantID smallint(6) NOT NULL, + processID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + units char(12) DEFAULT NULL, + meanBaseRate double DEFAULT NULL, + meanBaseRateCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processID,fuelTypeID,engTechID,nrHPCategory) +); + +CREATE TABLE nrmethanethcratio ( + processID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + CH4THCRatio double DEFAULT NULL, + CH4THCRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (processID,fuelSubtypeID,engTechID,nrHPCategory) +); + +CREATE TABLE nrMonthAllocation( + SCC CHAR(10) NOT NULL, + stateID SMALLINT(6) NOT NULL, + monthID SMALLINT(6) NOT NULL, + monthFraction FLOAT NOT NULL, + PRIMARY KEY (SCC, stateID, monthID) +); + +CREATE TABLE nrpahgasratio ( + pollutantID smallint(6) NOT NULL, + processid smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + atratio double DEFAULT NULL, + atratioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processid,fuelTypeID,engTechID,nrHPCategory) +); + +CREATE TABLE nrpahparticleratio ( + pollutantID smallint(6) NOT NULL, + processid smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + nrHPCategory char(1) NOT NULL, + atratio double DEFAULT NULL, + atratioCV double DEFAULT NULL, + datasourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (pollutantID,processid,fuelTypeID,engTechID,nrHPCategory) +); + +CREATE TABLE nrRetrofitFactors ( + retrofitStartYear smallint(6) NOT NULL, + retrofitEndYear smallint(6) NOT NULL, + StartModelYear smallint(6) NOT NULL, + EndModelYear smallint(6) NOT NULL, + SCC char(10) NOT NULL, + engTechID smallint(6) NOT NULL, + hpMin smallint(6) NOT NULL, + hpMax smallint(6) NOT NULL, + pollutantID smallint(6) NOT NULL, + retrofitID smallint(6) NOT NULL, + annualFractionRetrofit float DEFAULT NULL, + retrofitEffectiveFraction float DEFAULT NULL, + PRIMARY KEY (SCC,engTechID,hpMin,hpMax,pollutantID,retrofitID) +); + +CREATE TABLE nrSCC( + SCC CHAR(10) NOT NULL, + NREquipTypeID SMALLINT(6) NOT NULL, + description CHAR(40) DEFAULT NULL, + fuelTypeID SMALLINT(6) NOT NULL, + PRIMARY KEY (SCC), + UNIQUE INDEX XPKNRSCC (SCC) +); + +CREATE TABLE nrScrappageCurve( + NREquipTypeID SMALLINT(6) NOT NULL, + fractionLifeused FLOAT NOT NULL, + percentageScrapped FLOAT DEFAULT NULL, + PRIMARY KEY (NREquipTypeID, fractionLifeused), + UNIQUE INDEX XPKNRScrappageCurve (NREquipTypeID, fractionLifeused) +); + +CREATE TABLE nrSourceUseType ( + sourceTypeID smallint(6) NOT NULL, + SCC char(10) NOT NULL, + NRHPRangeBinID smallint(6) NOT NULL, + medianLifeFullLoad float DEFAULT NULL, + hoursUsedPerYear float DEFAULT NULL, + loadFactor float DEFAULT NULL, + hpAvg float DEFAULT NULL, + isPumpFilled char(1) DEFAULT NULL, + tankUnits char(7) DEFAULT NULL, + tankSize float DEFAULT NULL, + tankFillFrac float DEFAULT NULL, + tankMetalFrac float DEFAULT NULL, + hoseLength float DEFAULT NULL, + hoseDiameter float DEFAULT NULL, + hoseMetalFrac float DEFAULT NULL, + marineFillNeckHoseLength float DEFAULT NULL, + marineFillNeckHoseDiameter float DEFAULT NULL, + marineSupplyHoseLength float DEFAULT NULL, + marineSupplyHoseDiameter float DEFAULT NULL, + marineVentHoseLength float DEFAULT NULL, + marineVentHoseDiameter float DEFAULT NULL, + hotSoaksPerSHO float DEFAULT NULL, + nonInstMarineTankFrac float DEFAULT NULL, + marineInstPlasticTankTrailFrac float NOT NULL, + marineInstPlasticTankWaterFrac float DEFAULT NULL, + marineInstMetalTankTrailerFrac float DEFAULT NULL, + marineInstMetalTankWaterFrac float DEFAULT NULL, + e10TankPermeationAdjFac float DEFAULT NULL, + e10HosePermeationAdjFac float DEFAULT NULL, + e10MarineFillNeckPermAdjFac float DEFAULT NULL, + e10MarineSupplyHosePermAdjFac float DEFAULT NULL, + e10MarineVentHosePermAdjFac float DEFAULT NULL, + PRIMARY KEY (sourceTypeID), + UNIQUE KEY XPKNRSourceUseType (sourceTypeID) +); + +CREATE TABLE nrStateSurrogate( + surrogateID SMALLINT(6) NOT NULL DEFAULT 0, + stateID SMALLINT(6) NOT NULL DEFAULT 0, + countyID INT(11) NOT NULL DEFAULT 0, + surrogateQuant FLOAT NOT NULL DEFAULT 0, + surrogateYearID SMALLINT(6) NOT NULL DEFAULT 2002, + PRIMARY KEY (surrogateID, stateID, countyID, surrogateYearID) +); + +CREATE TABLE nrSulfurAdjustment ( + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + PMBaseSulfur float NOT NULL, + sulfatePMConversionFactor float NOT NULL, + PRIMARY KEY (fuelTypeID,engTechID), + UNIQUE KEY XPKNRSulfurAdjustment (fuelTypeID,engTechID) +); + +CREATE TABLE nrSurrogate( + surrogateID SMALLINT(6) NOT NULL, + description CHAR(255) DEFAULT NULL, + surrogateAbbr CHAR(3) DEFAULT NULL, + PRIMARY KEY (surrogateID), + UNIQUE INDEX XPKNRSurrogate (surrogateID) +); + +CREATE TABLE nrUSMonthAllocation( + SCC CHAR(10) NOT NULL, + stateID SMALLINT(6) NOT NULL, + monthID SMALLINT(6) NOT NULL, + monthFraction FLOAT NOT NULL, + PRIMARY KEY (SCC, stateID, monthID) +); + +create table offNetworkLink ( + sourceTypeID smallint not null, + vehiclePopulation float null, + startFraction float null, + extendedIdleFraction float null, + parkedVehicleFraction float null, + zoneID integer not null default '0', + primary key (zoneID, sourceTypeID), + key (sourceTypeID, zoneID) +); + +CREATE TABLE OMDGPolProcessRepresented ( + polProcessID int not null, + representingPolProcessID int not null, + primary key (polProcessID), + key (representingPolProcessID) +); + +create table onRoadRetrofit ( + pollutantID smallint(6) not null, + processID smallint(6) not null, + fuelTypeID smallint(6) not null, + sourceTypeID smallint(6) not null, + retrofitYearID smallint(6) not null, + beginModelYearID smallint(6) not null, + endModelYearID smallint(6) not null, + cumFractionRetrofit double not null default 0, + retrofitEffectiveFraction double not null default 0, + primary key (pollutantID, processID, fuelTypeID, sourceTypeID, retrofitYearID, beginModelYearID, endModelYearID), + key (retrofitYearID) +); + +CREATE TABLE OperatingMode ( + opModeID SMALLINT NOT NULL, + opModeName CHARACTER(50) NULL, + VSPLower FLOAT NULL, + VSPUpper FLOAT NULL, + speedLower FLOAT NULL, + speedUpper FLOAT NULL, + brakeRate1Sec FLOAT NULL, + brakeRate3Sec FLOAT NULL, + minSoakTime SMALLINT NULL, + maxSoakTime SMALLINT NULL +); + +CREATE UNIQUE INDEX XPKOperatingMode ON OperatingMode +( + opModeID ASC +); + + +CREATE TABLE OpModeDistribution ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + linkID INTEGER NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + opModeFraction FLOAT NULL, + opModeFractionCV FLOAT NULL +); + +ALTER TABLE OpModeDistribution ADD ( + KEY (sourceTypeID), + KEY (hourDayID), + KEY (linkID), + KEY (polProcessID), + KEY (opModeID) +); + +CREATE UNIQUE INDEX XPKOpModeDistribution ON OpModeDistribution +( + sourceTypeID ASC, + hourDayID ASC, + linkID ASC, + polProcessID ASC, + opModeID ASC +); + + +CREATE TABLE OpModePolProcAssoc ( + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + key (opModeID, polProcessID) +); + +ALTER TABLE OpModePolProcAssoc ADD ( + KEY (polProcessID), + KEY (opModeID) +); + +CREATE UNIQUE INDEX XPKOpModePolProcAssoc ON OpModePolProcAssoc +( + polProcessID ASC, + opModeID ASC +); + +CREATE TABLE OxyThreshName +( + oxyThreshID smallint(6) NOT NULL default '0' primary key, + oxyThreshName CHAR(100) NULL default NULL +); + +CREATE TABLE pahGasRatio ( + polProcessID int NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + atRatio double DEFAULT NULL, + atRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID), + UNIQUE KEY XPKPAHGasRatio (polProcessID,fuelTypeID,modelYearGroupID) +); + +CREATE TABLE pahParticleRatio ( + polProcessID int NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID int(11) NOT NULL DEFAULT '0', + atRatio double DEFAULT NULL, + atRatioCV double DEFAULT NULL, + dataSourceId smallint(6) DEFAULT NULL, + PRIMARY KEY (polProcessID,fuelTypeID,modelYearGroupID), + UNIQUE KEY XPKPAParticleHRatio (polProcessID,fuelTypeID,modelYearGroupID) +); + +CREATE TABLE PM10EmissionRatio ( + polProcessID int NOT NULL, + sourceTypeID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + minModelYearID smallint(6) NOT NULL, + maxModelYearID smallint(6) NOT NULL, + PM10PM25Ratio float NOT NULL, + PM10PM25RatioCV float NULL +); + +CREATE UNIQUE INDEX XPKPM10EmissionRatio ON PM10EmissionRatio +( + polProcessID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + minModelYearID ASC, + maxModelYearID ASC +); + +create table PMSpeciation ( + processID smallint not null, + inputPollutantID smallint not null, + sourceTypeID smallint not null, + fuelTypeID smallint not null, + minModelYearID smallint not null, + maxModelYearID smallint not null, + outputPollutantID smallint not null, + pmSpeciationFraction double not null, + primary key (processID, inputPollutantID, sourceTypeID, fuelTypeID, minModelYearID, maxModelYearID, outputPollutantID) +); + +CREATE TABLE Pollutant ( + pollutantID SMALLINT NOT NULL, + pollutantName CHAR(50) NULL, + energyOrMass CHAR(6) NULL, + GlobalWarmingPotential SMALLINT NULL, + NEIPollutantCode CHAR(10) NULL, + pollutantDisplayGroupID SMALLINT NULL, + shortName VARCHAR(50) NULL, + isAffectedByOnroad tinyint(1) DEFAULT '1', + isAffectedByNonroad tinyint(1) DEFAULT '0', + primary key (pollutantID) +); + +CREATE TABLE PollutantProcessAssoc ( + polProcessID int NOT NULL, + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + isAffectedByExhaustIM CHAR(1) NOT NULL DEFAULT "N", + isAffectedByEvapIM CHAR(1) NOT NULL DEFAULT "N", + chainedto1 int NULL DEFAULT NULL, + chainedto2 int NULL DEFAULT NULL, + isAffectedByOnroad TINYINT(1) NOT NULL DEFAULT 1, + isAffectedByNonroad TINYINT(1) NOT NULL DEFAULT 0, + nrChainedTo1 int NULL DEFAULT NULL, + nrChainedTo2 int NULL DEFAULT NULL, + key (processID, pollutantID, polProcessID), + key (pollutantID, processID, polProcessID), + key (polProcessID, processID, pollutantID), + key (polProcessID, pollutantID, processID) +); + +ALTER TABLE PollutantProcessAssoc ADD ( + KEY (processID), + KEY (pollutantID) +); + +CREATE UNIQUE INDEX XPKPollutantProcessAssoc ON PollutantProcessAssoc +( + polProcessID ASC +); + +CREATE TABLE PollutantProcessModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (modelYearID, polProcessID) +); + +ALTER TABLE PollutantProcessModelYear ADD ( + KEY (polProcessID), + KEY (modelYearID) +); +CREATE UNIQUE INDEX XPKPollutantProcessModelYear ON PollutantProcessModelYear +( + polProcessID ASC, + modelYearID ASC +); + +CREATE TABLE processDisplayGroup( + processDisplayGroupID SMALLINT(6) NOT NULL, + processDisplayGroupName CHAR(50) NOT NULL, + displayAsGroup CHAR(1) NOT NULL, + PRIMARY KEY (processDisplayGroupID), + UNIQUE INDEX XPKProcessDisplayGroup (processDisplayGroupID) +); + +CREATE TABLE processGroupID( + processGroupID SMALLINT(6) NOT NULL, + processGroupName CHAR(15) NOT NULL, + PRIMARY KEY (processGroupID) +); + +CREATE TABLE RefuelingFactors ( + fuelTypeID SMALLINT NOT NULL PRIMARY KEY, + defaultFormulationID SMALLINT NULL, + vaporTermA FLOAT NOT NULL DEFAULT 0, + vaporTermB FLOAT NOT NULL DEFAULT 0, + vaporTermC FLOAT NOT NULL DEFAULT 0, + vaporTermD FLOAT NOT NULL DEFAULT 0, + vaporTermE FLOAT NOT NULL DEFAULT 0, + vaporTermF FLOAT NOT NULL DEFAULT 0, + vaporLowTLimit FLOAT NOT NULL DEFAULT 0, + vaporHighTLimit FLOAT NOT NULL DEFAULT 0, + tankTDiffLimit FLOAT NOT NULL DEFAULT 0, + minimumRefuelingVaporLoss FLOAT NOT NULL DEFAULT 0, + refuelingSpillRate FLOAT NOT NULL DEFAULT 0, + refuelingSpillRateCV FLOAT NOT NULL DEFAULT 0, + displacedVaporRateCV FLOAT NOT NULL DEFAULT 0 +); + +CREATE UNIQUE INDEX XPKRefuelingFactors ON RefuelingFactors +( + fuelTypeID ASC +); + +CREATE TABLE RegulatoryClass ( + regClassID SMALLINT NOT NULL PRIMARY KEY, + regClassName CHAR(25) NULL , + regClassDesc CHAR(100) NULL + ); +CREATE UNIQUE INDEX XPKRegulatoryClass ON RegulatoryClass +( + regClassID ASC +); + +create table region ( + regionID int not null, + VV smallint(6), + WW smallint(6), + XX smallint(6), + YY smallint(6), + ZZ smallint(6), + description varchar(150), + primary key (regionID) +); + +create table regionCode ( + regionCodeID int not null, + regionCodeDescription varchar(200) not null default '', + primary key (regionCodeID) +); + +create table regionCounty ( + regionID int not null, + countyID int not null, + regionCodeID int not null, + fuelYearID int not null, + primary key (regionID, countyID, regionCodeID, fuelYearID), + key (countyID, fuelYearID, regionCodeID, regionID) +); + +CREATE TABLE RetrofitInputAssociations ( + listName varchar(20) not null, + commonName varchar(50) not null, + primary key (listName, commonName), + idealName varchar(50) not null +); + +CREATE UNIQUE INDEX XPKRetrofitInputAssociations on RetrofitInputAssociations +( + listName ASC, + commonName ASC +); + +CREATE TABLE RoadOpmodeDistribution ( + sourceTypeID SMALLINT(6) NOT NULL, + opModeID SMALLINT(6) NOT NULL, + roadTypeID SMALLINT(6) NOT NULL, + isRamp CHAR(1) NOT NULL DEFAULT 'Y', + avgSpeedBinID SMALLINT(6) NOT NULL, + primary key (sourceTypeID, opModeID, roadTypeID, isRamp, avgSpeedBinID), + opModeFraction FLOAT NOT NULL DEFAULT 0.0, + opModeFractionCV FLOAT NOT NULL DEFAULT 0.0 +); + +CREATE UNIQUE INDEX XPKRoadOpModeDistribution on RoadOpmodeDistribution +( + sourceTypeID ASC, + opModeID ASC, + roadTypeID ASC, + isRamp ASC, + avgSpeedBinID ASC +); + +CREATE TABLE RoadType ( + roadTypeID SMALLINT NOT NULL, + roadDesc CHAR(50) NULL, + rampFraction FLOAT NULL, + isAffectedByOnroad TINYINT(1) DEFAULT 1, + isAffectedByNonroad TINYINT(1) DEFAULT 0, + shouldDisplay TINYINT(1) DEFAULT 1, + primary key (roadTypeID) +); + +CREATE TABLE RoadTypeDistribution ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + roadTypeVMTFraction FLOAT NULL, + key (roadTypeID, sourceTypeID) +); + +ALTER TABLE RoadTypeDistribution ADD ( + KEY (sourceTypeID), + KEY (roadTypeID) +); + +CREATE UNIQUE INDEX XPKRoadTypeDistribution ON RoadTypeDistribution +( + sourceTypeID ASC, + roadTypeID ASC +); + +CREATE TABLE SampleVehicleDay ( + vehID INTEGER NOT NULL, + dayID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKSampleVehicle ON SampleVehicleDay +( + vehID ASC, + dayID ASC +); + +create table sampleVehicleSoaking ( + soakDayID smallint not null, + sourceTypeID smallint not null, + dayID smallint not null, + hourID smallint not null, + soakFraction double, + primary key (soakDayID, sourceTypeID, dayID, hourID) +); + +create table sampleVehicleSoakingDay ( + soakDayID smallint not null, + sourceTypeID smallint not null, + dayID smallint not null, + F double, + primary key (soakDayID, sourceTypeID, dayID) +); + +create table sampleVehicleSoakingDayBasis ( + soakDayID smallint not null, + dayID smallint not null, + F double, + primary key (soakDayID, dayID) +); + +create table sampleVehicleSoakingDayUsed ( + soakDayID smallint not null, + sourceTypeID smallint not null, + dayID smallint not null, + F double, + primary key (soakDayID, sourceTypeID, dayID) +); + +create table sampleVehicleSoakingDayBasisUsed ( + soakDayID smallint not null, + dayID smallint not null, + F double, + primary key (soakDayID, dayID) +); + +CREATE TABLE SampleVehicleTrip ( + vehID INTEGER NOT NULL, + dayID SMALLINT NOT NULL, + tripID SMALLINT NOT NULL, + hourID SMALLINT NULL, + priorTripID SMALLINT NULL, + keyOnTime INT NULL, + keyOffTime INT NOT NULL +); + +CREATE UNIQUE INDEX XPKSampleVehicleTrip ON SampleVehicleTrip +( + vehID ASC, + dayID ASC, + tripID ASC +); + +ALTER TABLE SampleVehicleTrip ADD ( + KEY (vehID), + KEY (dayID), + KEY (tripID) +); + +CREATE TABLE sampleVehiclePopulation ( + sourceTypeModelYearID int(10) unsigned NOT NULL, + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + modelYearID smallint(6) NOT NULL DEFAULT '0', + fuelTypeID smallint(5) unsigned NOT NULL, + engTechID smallint(6) NOT NULL, + regClassID smallint(5) unsigned NOT NULL, + stmyFuelEngFraction double NOT NULL, + stmyFraction double NOT NULL, + PRIMARY KEY (sourceTypeModelYearID,fuelTypeID,engTechID,regClassID), + key stmyft (sourceTypeID, modelYearID, fuelTypeID) +); + +CREATE TABLE scc ( + SCC char(10) NOT NULL DEFAULT '', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + sourceTypeID smallint(6) NOT NULL DEFAULT '0', + roadTypeID smallint(6) NOT NULL DEFAULT '0', + processID smallint(6) NOT NULL DEFAULT '0', + PRIMARY KEY (SCC), + KEY fuelTypeID (fuelTypeID), + KEY sourceTypeID (sourceTypeID), + KEY roadTypeID (roadTypeID), + KEY processID (processID) +); + +CREATE TABLE Sector ( + sectorID smallint(6) NOT NULL, + description char(40) DEFAULT NULL, + PRIMARY KEY (sectorID), + UNIQUE KEY XPKSector (sectorID) +); + +CREATE TABLE SHO ( + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + linkID INTEGER NOT NULL, + sourceTypeID SMALLINT NOT NULL, + SHO FLOAT NULL, + SHOCV FLOAT NULL, + distance FLOAT NULL, + key (linkID, yearID) +); + +ALTER TABLE SHO ADD ( + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (linkID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKSHO ON SHO +( + hourDayID ASC, + monthID ASC, + yearID ASC, + ageID ASC, + linkID ASC, + sourceTypeID ASC +); + +CREATE TABLE SizeWeightFraction ( + sourceTypeModelYearID INTEGER NOT NULL, + fuelTypeID SMALLINT NOT NULL, + engTechID SMALLINT NOT NULL, + engSizeID SMALLINT NOT NULL, + weightClassID SMALLINT NOT NULL, + sizeWeightFraction FLOAT NULL +); + +ALTER TABLE SizeWeightFraction ADD ( + KEY (sourceTypeModelyearID), + KEY (fuelTypeID), + KEY (engTechID), + KEY (engSizeID), + KEY (weightClassID) +); + +CREATE UNIQUE INDEX XPKSizeWeightFraction ON SizeWeightFraction +( + sourceTypeModelYearID ASC, + fuelTypeID ASC, + engTechID ASC, + engSizeID ASC, + weightClassID ASC +); + +CREATE TABLE SoakActivityFraction ( + sourceTypeID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + soakActivityFraction FLOAT, + soakActivityFractionCV FLOAT +); + +CREATE UNIQUE INDEX XPKSoakActivityFraction ON SoakActivityFraction ( + sourceTypeID ASC, + zoneID ASC, + monthID ASC, + hourDayID ASC, + opModeID ASC +); + +CREATE TABLE SourceBin ( + sourceBinID BIGINT NOT NULL, + engSizeID SMALLINT NULL, + fuelTypeID SMALLINT NOT NULL, + engTechID SMALLINT NOT NULL, + regClassID SMALLINT NULL, + modelYearGroupID INTEGER NULL, + weightClassID SMALLINT NULL, + key (sourceBinID, fuelTypeID, modelYearGroupID), + key (sourceBinID, modelYearGroupID, fuelTypeID), + key (fuelTypeID, modelYearGroupID, sourceBinID), + key (fuelTypeID, sourceBinID, modelYearGroupID), + key (modelYearGroupID, fuelTypeID, sourceBinID), + key (modelYearGroupID, sourceBinID, fuelTypeID) +); + +ALTER TABLE SourceBin ADD ( + KEY (fuelTypeID), + KEY (modelYearGroupID) +); + +CREATE UNIQUE INDEX XPKSourceBin ON SourceBin +( + sourceBinID ASC +); + + +CREATE TABLE SourceBinDistribution ( + sourceTypeModelYearID INTEGER NOT NULL, + polProcessID int NOT NULL, + sourceBinID BIGINT NOT NULL, + sourceBinActivityFraction FLOAT NULL, + sourceBinActivityFractionCV FLOAT NULL +); + +ALTER TABLE SourceBinDistribution ADD ( + KEY (sourceTypeModelYearID), + KEY (polProcessID), + KEY (sourceBinID) +); + +CREATE UNIQUE INDEX XPKSourceBinDistribution ON SourceBinDistribution +( + sourceTypeModelYearID ASC, + polProcessID ASC, + sourceBinID ASC +); + +CREATE TABLE SourceHours ( + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + linkID INTEGER NOT NULL, + sourceTypeID SMALLINT NOT NULL, + sourceHours FLOAT NULL, + sourceHoursCV FLOAT NULL +); + +ALTER TABLE SourceHours ADD ( + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (linkID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKSourceHours ON SourceHours +( + hourDayID ASC, + monthID ASC, + yearID ASC, + ageID ASC, + linkID ASC, + sourceTypeID ASC +); + +CREATE TABLE SourceTypeAge ( + ageID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + survivalRate FLOAT NULL, + relativeMAR FLOAT NULL, + functioningACFraction FLOAT NULL, + functioningACFractionCV FLOAT NULL, + key (sourceTypeID, ageID) +); + +ALTER TABLE SourceTypeAge ADD ( + KEY (ageID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKSourceTypeAge ON SourceTypeAge +( + ageID ASC, + sourceTypeID ASC +); + + +CREATE TABLE SourceTypeAgeDistribution ( + sourceTypeID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + ageFraction FLOAT NULL +); + +ALTER TABLE SourceTypeAgeDistribution ADD ( + KEY (sourceTypeID), + KEY (yearID), + KEY (ageID) +); + +CREATE UNIQUE INDEX XPKSourceTypeAgeDistribution ON SourceTypeAgeDistribution +( + sourceTypeID ASC, + yearID ASC, + ageID ASC +); + +create table SourceTypeDayVMT ( + yearID smallint not null, + monthID smallint not null, + dayID smallint not null, + sourceTypeID smallint not null, + VMT double not null, + primary key (yearID, monthID, dayID, sourceTypeID), + key (sourceTypeID, yearID, monthID, dayID) +); + +CREATE TABLE SourceTypeHour ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + idleSHOFactor FLOAT NULL, + hotellingdist DOUBLE DEFAULT NULL, + primary key (sourceTypeID, hourDayID), + key (hourDayID, sourceTypeID) +); + + +CREATE TABLE SourceTypeModelYear ( + sourceTypeModelYearID INTEGER NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + ACPenetrationFraction FLOAT NULL, + ACPenetrationFractionCV FLOAT NULL, + key (sourceTypeModelYearID, modelYearID, sourceTypeID), + key (sourceTypeModelYearID, sourceTypeID, modelYearID), + key (sourceTypeID, modelYearID, sourceTypeModelYearID), + key (modelYearID, sourceTypeID, sourceTypeModelYearID) +); + +ALTER TABLE SourceTypeModelYear ADD ( + KEY (modelYearID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKSourceTypeModelYear ON SourceTypeModelYear +( + sourceTypeModelYearID ASC +); + +CREATE TABLE SourceTypeModelYearGroup ( + sourceTypeID SMALLINT NOT NULL, + modelYearGroupID INTEGER NOT NULL, + tankTemperatureGroupID SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKSourceTypeModelYearGroup ON SourceTypeModelYearGroup ( + sourceTypeID ASC, + modelYearGroupID ASC +); + +CREATE TABLE SourceTypePolProcess ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + isSizeWeightReqd CHAR(1) NULL, + isRegClassReqd CHAR(1) NULL, + isMYGroupReqd CHAR(1) NULL, + key (polProcessId, sourceTypeID) +); + +ALTER TABLE SourceTypePolProcess ADD ( + KEY (sourceTypeID), + KEY (polProcessID) +); + +CREATE UNIQUE INDEX XPKSourceTypePolProcess ON SourceTypePolProcess +( + sourceTypeID ASC, + polProcessID ASC +); + +CREATE TABLE SourceTypeTechAdjustment ( + processID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + refuelingTechAdjustment FLOAT NOT NULL DEFAULT 0.0 +); + +ALTER TABLE SourceTypeTechAdjustment ADD ( + KEY (processID), + KEY (sourceTypeID), + KEY (modelYearID) +); + +CREATE UNIQUE INDEX XPKSourceTypeTechAdjustment ON SourceTypeTechAdjustment +( + processID ASC, + sourceTypeID ASC, + modelYearID ASC +); + +CREATE TABLE SourceTypeYear ( + yearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + salesGrowthFactor FLOAT NULL, + sourceTypePopulation FLOAT NULL, + migrationRate FLOAT NULL, + key (sourceTypeID, yearID) +); + +ALTER TABLE SourceTypeYear ADD ( + KEY (yearID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKSourceTypeYear ON SourceTypeYear +( + yearID ASC, + sourceTypeID ASC +); + +create table SourceTypeYearVMT ( + yearID smallint not null, + sourceTypeID smallint not null, + VMT double not null, + primary key (yearID, sourceTypeID), + key (sourceTypeID, yearID) +); + +CREATE TABLE SourceUseType ( + sourceTypeID SMALLINT NOT NULL, + HPMSVtypeID SMALLINT NOT NULL, + sourceTypeName CHAR(50) NULL, + + key (sourceTypeID, HPMSVtypeID), + key (HPMSVtypeID, sourceTypeID) +); + +ALTER TABLE SourceUseType ADD ( + KEY (HPMSVtypeID) +); + +CREATE UNIQUE INDEX XPKSourceUseType ON SourceUseType +( + sourceTypeID ASC +); + +create table sourceUseTypePhysics ( + sourceTypeID smallint not null, + beginModelYearID smallint not null, + endModelYearID smallint not null, + + rollingTermA float DEFAULT NULL, + rotatingTermB float DEFAULT NULL, + dragTermC float DEFAULT NULL, + sourceMass float DEFAULT NULL, + fixedMassFactor float DEFAULT NULL, + + primary key (sourceTypeID, beginModelYearID, endModelYearID), + key (beginModelYearID, endModelYearID, sourceTypeID) +); + +CREATE TABLE Starts ( + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + sourceTypeID SMALLINT NOT NULL, + starts FLOAT NULL, + startsCV FLOAT NULL +); + +ALTER TABLE Starts ADD ( + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (zoneID), + KEY (sourceTypeID) +); + +CREATE UNIQUE INDEX XPKStarts ON Starts +( + hourDayID ASC, + monthID ASC, + yearID ASC, + ageID ASC, + zoneID ASC, + sourceTypeID ASC +); + +create table startsHourFraction ( + zoneID int not null, + dayID smallint not null, + hourID smallint not null, + allocationFraction double not null, + primary key (zoneID, dayID, hourID) +); + +create table startsMonthAdjust ( + monthID smallint not null, + monthAdjustment double not null, + primary key (monthID) +); + +create table startsPerDay ( + zoneID int not null, + dayID smallint not null, + yearID smallint not null, + startsPerDay double not null, + primary key (zoneID, dayID, yearID), + key (yearID, zoneID, dayID) +); + +CREATE TABLE StartsPerVehicle ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + startsPerVehicle FLOAT NULL, + startsPerVehicleCV FLOAT NULL, + key (hourDayID, sourceTypeID) +); + +CREATE UNIQUE INDEX XPKStartsPerVehicle ON StartsPerVehicle +( + sourceTypeID ASC, + hourDayID ASC +); + +ALTER TABLE StartsPerVehicle ADD ( + KEY (sourceTypeID), + KEY (hourDayID) +); + +create table startsSourceTypeFraction ( + sourceTypeID smallint not null, + allocationFraction double not null, + primary key (sourceTypeID) +); + +CREATE TABLE StartTempAdjustment ( + fuelTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearGroupID INTEGER NOT NULL, + opModeID SMALLINT NOT NULL, + startTempEquationType VARCHAR(4) NULL, + tempAdjustTermA FLOAT NULL, + tempAdjustTermACV FLOAT NULL, + tempAdjustTermB FLOAT NULL, + tempAdjustTermBCV FLOAT NULL, + tempAdjustTermC FLOAT NULL, + tempAdjustTermCCV FLOAT NULL +); + +CREATE UNIQUE INDEX XPKStartTempAdjustment ON StartTempAdjustment +( + fuelTypeID ASC, + polProcessID ASC, + modelYearGroupID ASC, + opModeID ASC +); + +ALTER TABLE StartTempAdjustment ADD ( + KEY (fuelTypeID), + KEY (polProcessID), + KEY (modelYearGroupID), + KEY (opModeID) +); + +CREATE TABLE State ( + stateID SMALLINT NOT NULL, + stateName CHAR(25) NULL, + stateAbbr CHAR(2) NULL +); + +CREATE UNIQUE INDEX XPKState ON State +( + stateID ASC +); + +CREATE TABLE SulfateEmissionRate ( + polProcessID int NOT NULL, + fuelTypeID SMALLINT(6) NOT NULL, + modelYearGroupID INT(11) NOT NULL, + meanBaseRate float NULL, + meanBaseRateCV float NULL, + dataSourceId SMALLINT(6), + PRIMARY KEY (polProcessID, fueltypeID, modelYearGroupID) +); + +CREATE UNIQUE INDEX XPKSulfateEmissionRate ON SulfateEmissionRate +( + polProcessID ASC, + fueltypeID ASC, + modelYearGroupID ASC +); + +create table SulfateFractions ( + processID smallint not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + minModelYearID smallint not null, + maxModelYearID smallint not null, + SulfatenonECPMFraction double not null, + H2OnonECPMFraction double not null, + BaseFuelSulfurLevel double not null, + BaseFuelSulfateFraction double not null, + dataSourceID smallint(6) NOT NULL DEFAULT '0', + primary key (processID, fuelTypeID, sourceTypeID, minModelYearID, maxModelYearID), + key (processID, sourceTypeID, fuelTypeID, minModelYearID, maxModelYearID), + key (processID, minModelYearID, maxModelYearID, fuelTypeID, sourceTypeID), + key (processID, minModelYearID, maxModelYearID, sourceTypeID, fuelTypeID) +); + +CREATE TABLE SulfurBase ( + modelYearGroupID int(11) NOT NULL default '0' primary key, + sulfurBase float NULL default NULL, + sulfurBasis float NULL default '30.0', + sulfurGPAMax float NULL default '330.0' +); + +create table sulfurCapAmount ( + fuelTypeID int not null primary key, + sulfurCap double +); + +CREATE TABLE SulfurModelCoeff ( + processID smallint(6), + pollutantID smallint(6), + M6emitterID smallint(6), + sourceTypeID smallint(6), + fuelMYGroupID INT(8), + sulfurFunctionID smallint(6), + sulfurCoeff float, + lowSulfurCoeff double, + PRIMARY KEY (processID, pollutantID, M6emitterID, sourceTypeID, fuelMYGroupID) +); + +CREATE TABLE SulfurModelName ( + M6EmitterID smallint(6), + sulfurFunctionID smallint(6), + M6emitterName CHAR(10), + sulfurFunctionName CHAR(10), + PRIMARY KEY (M6EmitterID, sulfurFunctionID) +); + +CREATE TABLE TankVaporGenCoeffs ( + ethanolLevelID smallint(6) NOT NULL, + altitude char(1) NOT NULL, + tvgTermA float NULL, + tvgTermB float NULL, + tvgTermC float NULL, + PRIMARY KEY (ethanolLevelID,altitude) +); + +CREATE TABLE TankTemperatureGroup ( + tankTemperatureGroupID SMALLINT NOT NULL, + tankTemperatureGroupName CHAR(50) +); + +CREATE UNIQUE INDEX XPKTankTemperatureGroup ON TankTemperatureGroup ( + tankTemperatureGroupID ASC +); + +CREATE TABLE TankTemperatureRise ( + tankTemperatureGroupID SMALLINT NOT NULL, + tankTemperatureRiseTermA FLOAT, + tankTemperatureRiseTermACV FLOAT, + tankTemperatureRiseTermB FLOAT, + tankTemperatureRiseTermBCV FLOAT +); + +CREATE UNIQUE INDEX XPKTankTemperatureRise ON TankTemperatureRise ( + tankTemperatureGroupID ASC +); + +CREATE TABLE TemperatureAdjustment ( + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + minModelYearID SMALLINT NOT NULL DEFAULT '1960', + maxModelYearID SMALLINT NOT NULL DEFAULT '2050', + tempAdjustTermA FLOAT NULL, + tempAdjustTermACV FLOAT NULL, + tempAdjustTermB FLOAT NULL, + tempAdjustTermBCV FLOAT NULL, + tempAdjustTermC FLOAT NULL, + tempAdjustTermCCV FLOAT NULL, + key (fuelTypeID, polProcessID, minModelYearID, maxModelYearID) +); + +ALTER TABLE TemperatureAdjustment ADD ( + KEY (polProcessID), + KEY (fuelTypeID), + KEY (minModelYearID, maxModelYearID) +); + +CREATE UNIQUE INDEX XPKTemperatureAdjustment ON TemperatureAdjustment +( + polProcessID ASC, + fuelTypeID ASC, + minModelYearID ASC, + maxModelYearID ASC +); + +create table temperatureFactorExpression ( + processID smallint not null, + pollutantID smallint not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + minModelYearID smallint not null, + maxModelYearID smallint not null, + tempCorrectionExpression varchar(5000), + primary key (processID, pollutantID, fuelTypeID, sourceTypeID, minModelYearID, maxModelYearID) +); + +CREATE TABLE TemperatureProfileID ( + temperatureProfileID BIGINT NOT NULL PRIMARY KEY, + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + key (zoneID, monthID, temperatureProfileID), + key (monthID, zoneID, temperatureProfileID) +); + +create table togSpeciation ( + fuelSubtypeID smallint(6) not null, + regClassID smallint(6) not null, + processID smallint(6) not null, + modelYearGroupID int not null, + togSpeciationProfileID varchar(10) not null default '0', + primary key (fuelSubTypeID, regClassID, processID, modelYearGroupID) +); + +create table TOGSpeciationProfile ( + mechanismID smallint(6) not null, + TOGSpeciationProfileID varchar(10) not null default '0', + integratedSpeciesSetID smallint(6) not null, + pollutantID smallint(6) not null, + lumpedSpeciesName varchar(20) null, + TOGSpeciationDivisor double null, + TOGSpeciationMassFraction double null, + primary key (mechanismID, TOGspeciationProfileID, integratedSpeciesSetID, pollutantID, lumpedSpeciesName) +); + +create table TOGSpeciationProfileName ( + TOGSpeciationProfileID varchar(10) not null default '0', + TOGSpeciationProfileName varchar(100) null, + dataSourceId int null, + primary key (TOGspeciationProfileID), + key (TOGSpeciationProfileName) +); + +CREATE TABLE WeightClass ( + weightClassID SMALLINT NOT NULL, + weightClassName CHAR(50) NULL, + midpointWeight FLOAT NULL +); + +CREATE UNIQUE INDEX XPKWeightClass ON WeightClass +( + weightClassID ASC +); + + +CREATE TABLE Year ( + yearID SMALLINT NOT NULL, + isBaseYear CHAR(1) NULL, + fuelYearID int NOT NULL DEFAULT '0' +); + +ALTER TABLE Year ADD ( + KEY (isBaseYear) +); + +CREATE UNIQUE INDEX XPKYear ON Year +( + yearID ASC +); + + +CREATE TABLE Zone ( + zoneID INTEGER NOT NULL, + countyID INTEGER NOT NULL, + idleAllocFactor DOUBLE NULL, + startAllocFactor DOUBLE NULL, + SHPAllocFactor DOUBLE NULL, + key (zoneID, countyID), + key (countyID, zoneID) +); + +ALTER TABLE Zone ADD ( + KEY (countyID) +); + +CREATE UNIQUE INDEX XPKZone ON Zone +( + zoneID ASC +); + +CREATE TABLE ZoneMonthHour ( + monthID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hourID SMALLINT NOT NULL, + temperature FLOAT NULL, + temperatureCV FLOAT NULL, + relHumidity FLOAT NULL, + heatIndex FLOAT NULL, + specificHumidity FLOAT NULL, + relativeHumidityCV FLOAT NULL +); + +ALTER TABLE ZoneMonthHour ADD ( + KEY (monthID), + KEY (zoneID), + KEY (hourID) +); + +CREATE UNIQUE INDEX XPKZoneMonthHour ON ZoneMonthHour +( + monthID ASC, + zoneID ASC, + hourID ASC +); + + +CREATE TABLE ZoneRoadType ( + zoneID INTEGER NOT NULL, + roadTypeID SMALLINT NOT NULL, + SHOAllocFactor DOUBLE NULL, + key (roadTypeID, zoneID) +); + +ALTER TABLE ZoneRoadType ADD ( + KEY (zoneID), + KEY (roadTypeID) +); + +CREATE UNIQUE INDEX XPKZoneRoadType ON ZoneRoadType +( + zoneID ASC, + roadTypeID ASC +); diff --git a/database/CreateExecution.sql b/database/CreateExecution.sql new file mode 100644 index 0000000..3109b74 --- /dev/null +++ b/database/CreateExecution.sql @@ -0,0 +1,380 @@ +-- Author Wesley Faler +-- Version 2014-09-17 + +drop table if exists hotellingFuelUsingActivity; + +create table hotellingFuelUsingActivity ( + beginModelYearID smallint(6) not null, + endModelYearID smallint(6) not null, + fractionSpentConsumingFuel double not null, + primary key (beginModelYearID, endModelYearID) +); + +drop table if exists hotellingNonExtendedIdleActivity; + +create table hotellingNonExtendedIdleActivity ( + beginModelYearID smallint(6) not null, + endModelYearID smallint(6) not null, + fractionSpentNotExtendedIdling double not null, + primary key (beginModelYearID, endModelYearID) +); + +drop table if exists hotellingHoursUsingFuel; + +CREATE TABLE hotellingHoursUsingFuel ( + sourceTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hotellingHoursUsingFuel DOUBLE NULL, + primary key (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID), + key (sourceTypeID), + KEY (hourDayID), + KEY (monthID), + KEY (yearID), + KEY (ageID), + KEY (zoneID) +); + +-- ************************************************************************************* +-- The following tables are used in joins for calculations to filter the number of items +-- used in the calculations. +-- ************************************************************************************* + +drop table if exists RunSpecSourceType; + +CREATE TABLE IF NOT EXISTS RunSpecSourceType ( + sourceTypeID SMALLINT NOT NULL, + UNIQUE INDEX NdxSourceTypeID ( + sourceTypeID ASC) +); + +TRUNCATE TABLE RunSpecSourceType; + +drop table if exists RunSpecRoadType; + +CREATE TABLE IF NOT EXISTS RunSpecRoadType ( + roadTypeID SMALLINT NOT NULL, + UNIQUE INDEX NdxRoadTypeID ( + roadTypeID ASC) +); + +TRUNCATE TABLE RunSpecRoadType; + +drop table if exists RunSpecMonth; + +CREATE TABLE IF NOT EXISTS RunSpecMonth ( + monthID SMALLINT NOT NULL, + UNIQUE INDEX NdxMonthID ( + monthID ASC) +); + +TRUNCATE TABLE RunSpecMonth; + +drop table if exists RunSpecDay; + +CREATE TABLE IF NOT EXISTS RunSpecDay ( + dayID SMALLINT NOT NULL, + UNIQUE INDEX NdxDayID ( + dayID ASC) +); + +TRUNCATE TABLE RunSpecDay; + +drop table if exists RunSpecHour; + +CREATE TABLE IF NOT EXISTS RunSpecHour ( + hourID SMALLINT NOT NULL, + UNIQUE INDEX NdxHourID ( + hourID ASC) +); + +TRUNCATE TABLE RunSpecHour; + +drop table if exists RunSpecMonthGroup; + +CREATE TABLE IF NOT EXISTS RunSpecMonthGroup ( + monthGroupID SMALLINT NOT NULL, + UNIQUE INDEX NdxMonthGroupID ( + monthGroupID ASC) +); + +TRUNCATE TABLE RunSpecMonthGroup; + +drop table if exists RunSpecYear; + +CREATE TABLE IF NOT EXISTS RunSpecYear ( + yearID SMALLINT NOT NULL, + UNIQUE INDEX NdxHourID ( + yearID ASC) +); + +TRUNCATE TABLE RunSpecYear; + +drop table if exists RunSpecModelYearAge; + +CREATE TABLE IF NOT EXISTS RunSpecModelYearAge ( + yearID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + + primary key (modelYearID, ageID, yearID), + key (yearID, modelYearID, ageID), + key (ageID, modelYearID) +); + +TRUNCATE TABLE RunSpecModelYearAge; + +drop table if exists RunSpecModelYearAgeGroup; + +CREATE TABLE IF NOT EXISTS RunSpecModelYearAgeGroup ( + yearID smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + ageGroupID smallint(6) NOT NULL, + PRIMARY KEY (modelYearID,ageGroupID,yearID), + KEY yearID (yearID,modelYearID,ageGroupID), + KEY yearID2 (yearID,ageGroupID,modelYearID), + KEY ageID (ageGroupID,modelYearID,yearID) +); + +TRUNCATE TABLE RunSpecModelYearAgeGroup; + +drop table if exists RunSpecModelYear; + +CREATE TABLE IF NOT EXISTS RunSpecModelYear ( + modelYearID SMALLINT NOT NULL primary key +); + +TRUNCATE TABLE RunSpecModelYear; + +drop table if exists RunSpecSourceFuelType; + +CREATE TABLE IF NOT EXISTS RunSpecSourceFuelType ( + sourceTypeID SMALLINT NOT NULL, + fuelTypeID TINYINT NOT NULL, + UNIQUE INDEX NdxSourceFuelTypeID ( + sourceTypeID, fuelTypeID), + unique key (fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE RunSpecSourceFuelType; + +drop table if exists RunSpecHourDay; + +CREATE TABLE IF NOT EXISTS RunSpecHourDay ( + hourDayID SMALLINT NOT NULL, + UNIQUE INDEX NdxHourDayID ( + hourDayID ASC) +); + +TRUNCATE TABLE RunSpecHourDay; + +drop table if exists RunSpecState; + +CREATE TABLE IF NOT EXISTS RunSpecState ( + stateID SMALLINT NOT NULL, + UNIQUE INDEX NdxState ( + stateID ASC) +); + +TRUNCATE TABLE RunSpecState; + +drop table if exists RunSpecCounty; + +CREATE TABLE IF NOT EXISTS RunSpecCounty ( + countyID INTEGER NOT NULL, + UNIQUE INDEX NDXCounty ( + countyID ASC) +); + +TRUNCATE TABLE RunSpecCounty; + +drop table if exists RunSpecFuelRegion; + +CREATE TABLE IF NOT EXISTS RunSpecFuelRegion ( + fuelRegionID INTEGER NOT NULL, + UNIQUE INDEX NDXFuelRegion ( + fuelRegionID ASC) +); + +TRUNCATE TABLE RunSpecFuelRegion; + +drop table if exists RunSpecZone; + +CREATE TABLE IF NOT EXISTS RunSpecZone ( + zoneID INTEGER NOT NULL, + UNIQUE INDEX NdxZone ( + zoneID ASC) +); + +TRUNCATE TABLE RunSpecZone; + +drop table if exists RunSpecLink; + +CREATE TABLE IF NOT EXISTS RunSpecLink ( + linkID INTEGER NOT NULL, + UNIQUE INDEX NdxLink ( + linkID ASC) +); + +TRUNCATE TABLE RunSpecLink; + +drop table if exists RunSpecPollutant; + +CREATE TABLE IF NOT EXISTS RunSpecPollutant ( + pollutantID SMALLINT NOT NULL, + UNIQUE INDEX NdxPollutant ( + pollutantID ASC) +); + +TRUNCATE TABLE RunSpecPollutant; + +drop table if exists RunSpecProcess; + +CREATE TABLE IF NOT EXISTS RunSpecProcess ( + processID SMALLINT NOT NULL, + UNIQUE INDEX NdxProcess ( + processID ASC) +); + +TRUNCATE TABLE RunSpecProcess; + +drop table if exists RunSpecPollutantProcess; + +CREATE TABLE IF NOT EXISTS RunSpecPollutantProcess ( + polProcessID int NOT NULL, + UNIQUE INDEX NdxPolProcess ( + polProcessID ASC) +); + +TRUNCATE TABLE RunSpecPollutantProcess; + +drop table if exists RunSpecChainedTo; + +CREATE TABLE IF NOT EXISTS RunSpecChainedTo ( + outputPolProcessID int not null, + outputPollutantID smallint not null, + outputProcessID smallint not null, + inputPolProcessID int not null, + inputPollutantID smallint not null, + inputProcessID smallint not null, + index InputChainedToIndex ( + inputPollutantID, + inputProcessID + ), + index InputChainedToProcessIndex ( + inputProcessID + ), + index OutputChainedToPolProcessIndex ( + outputPolProcessID + ), + index InputOutputChainedToIndex ( + outputPolProcessID, + inputPolProcessID + ), + index InputOutputChainedToIndex2 ( + inputPolProcessID, + outputPolProcessID + ) +); + +TRUNCATE TABLE RunSpecChainedTo; + +drop table if exists RunSpecSectorFuelType; + +CREATE TABLE IF NOT EXISTS RunSpecSectorFuelType ( + sectorID SMALLINT NOT NULL, + fuelTypeID TINYINT NOT NULL, + UNIQUE INDEX NdxSectorFuelTypeID ( + sectorID, fuelTypeID), + unique key (fuelTypeID, sectorID) +); + +TRUNCATE TABLE RunSpecSectorFuelType; + +drop table if exists RunSpecSector; + +CREATE TABLE IF NOT EXISTS RunSpecSector ( + sectorID SMALLINT NOT NULL, + UNIQUE INDEX NdxSectorID ( + sectorID ASC) +); + +TRUNCATE TABLE RunSpecSector; + +drop table if exists RunSpecNonRoadModelYearAge; + +CREATE TABLE IF NOT EXISTS RunSpecNonRoadModelYearAge ( + yearID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + + primary key (modelYearID, ageID, yearID), + key (yearID, modelYearID, ageID), + key (ageID, modelYearID) +); + +TRUNCATE TABLE RunSpecNonRoadModelYearAge; + +drop table if exists RunSpecNonRoadModelYear; + +CREATE TABLE IF NOT EXISTS RunSpecNonRoadModelYear ( + modelYearID SMALLINT NOT NULL primary key +); + +TRUNCATE TABLE RunSpecNonRoadModelYear; + +drop table if exists RunSpecNonRoadChainedTo; + +CREATE TABLE IF NOT EXISTS RunSpecNonRoadChainedTo ( + outputPolProcessID int not null, + outputPollutantID smallint not null, + outputProcessID smallint not null, + inputPolProcessID int not null, + inputPollutantID smallint not null, + inputProcessID smallint not null, + index InputChainedToIndex ( + inputPollutantID, + inputProcessID + ), + index InputChainedToProcessIndex ( + inputProcessID + ), + index OutputChainedToPolProcessIndex ( + outputPolProcessID + ), + index InputOutputChainedToIndex ( + outputPolProcessID, + inputPolProcessID + ), + index InputOutputChainedToIndex2 ( + inputPolProcessID, + outputPolProcessID + ) +); + +TRUNCATE TABLE RunSpecNonRoadChainedTo; + +-- Example: If a 1995 Euro car should be treated as a 1991 US car, +-- then the 1991 PollutantProcessModelYear should be used for the +-- the 1995 modelyear. So, use reverse model year mapping so the +-- modelYearID in PollutantProcessMappedModelYear maps older +-- model year groups to a newer model year. + +drop table if exists PollutantProcessMappedModelYear; + +CREATE TABLE IF NOT EXISTS PollutantProcessMappedModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (modelYearID, polProcessID), + key (polProcessID), + key (modelYearID), + primary key (polProcessID, modelYearID) +); + +TRUNCATE TABLE PollutantProcessMappedModelYear; diff --git a/database/CreateExecutionRates.sql b/database/CreateExecutionRates.sql new file mode 100644 index 0000000..b5feb72 --- /dev/null +++ b/database/CreateExecutionRates.sql @@ -0,0 +1,176 @@ +-- Author Wesley Faler +-- Version 2014-09-17 + +drop table if exists RatesOpModeDistribution; + +CREATE TABLE IF NOT EXISTS RatesOpModeDistribution ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + avgSpeedBinID SMALLINT NOT NULL DEFAULT '0', + hourDayID SMALLINT NOT NULL DEFAULT '0', + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + opModeFraction FLOAT NULL, + opModeFractionCV FLOAT NULL, + avgBinSpeed FLOAT NULL, + avgSpeedFraction float not null default '0', + + PRIMARY KEY (sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, polProcessID, opModeID), + KEY (sourceTypeID), + KEY (roadTypeID), + KEY (avgSpeedBinID), + KEY (hourDayID), + KEY (polProcessID), + KEY (opModeID) +); + +-- key speed2 (roadTypeID,hourDayID,sourceTypeID,polProcessID,opModeID,avgSpeedBinID) + +TRUNCATE TABLE RatesOpModeDistribution; + +drop table if exists SBWeightedEmissionRateByAge; + +CREATE TABLE IF NOT EXISTS SBWeightedEmissionRateByAge ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + + meanBaseRate FLOAT NULL, + meanBaseRateIM FLOAT NULL, + meanBaseRateACAdj FLOAT NULL, + meanBaseRateIMACAdj FLOAT NULL, + sumSBD DOUBLE NULL, + sumSBDRaw DOUBLE NULL, + unique key (sourceTypeID, polProcessID, opModeID, modelYearID, fuelTypeID, ageGroupID, regClassID) +); + +TRUNCATE TABLE SBWeightedEmissionRateByAge; + +drop table if exists SBWeightedEmissionRate; + +CREATE TABLE IF NOT EXISTS SBWeightedEmissionRate ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + + meanBaseRate FLOAT NULL, + meanBaseRateIM FLOAT NULL, + meanBaseRateACAdj FLOAT NULL, + meanBaseRateIMACAdj FLOAT NULL, + sumSBD DOUBLE NULL, + sumSBDRaw DOUBLE NULL, + unique key (sourceTypeID, polProcessID, opModeID, modelYearID, fuelTypeID, regClassID) +); + +TRUNCATE TABLE SBWeightedEmissionRate; + +drop table if exists SBWeightedDistanceRate; + +CREATE TABLE IF NOT EXISTS SBWeightedDistanceRate ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + avgSpeedBinID smallint not null, + + meanBaseRate FLOAT NULL, + meanBaseRateIM FLOAT NULL, + meanBaseRateACAdj FLOAT NULL, + meanBaseRateIMACAdj FLOAT NULL, + sumSBD DOUBLE NULL, + sumSBDRaw DOUBLE NULL, + primary key (sourceTypeID, polProcessID, modelYearID, fuelTypeID, regClassID, avgSpeedBinID) +); + +TRUNCATE TABLE SBWeightedDistanceRate; + +drop table if exists distanceEmissionRate; + +create table if not exists distanceEmissionRate ( + polProcessID int not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + modelYearID smallint not null, + avgSpeedBinID smallint not null, + ratePerMile double not null, + ratePerSHO double not null, + primary key (sourceTypeID, polProcessID, modelYearID, fuelTypeID, avgSpeedBinID) +); + +-- regClassID smallint not null, +-- primary key (sourceTypeID, polProcessID, modelYearID, fuelTypeID, regClassID, avgSpeedBinID) + +truncate table distanceEmissionRate; + +drop table if exists BaseRateByAge; + +CREATE TABLE IF NOT EXISTS BaseRateByAge ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + avgSpeedBinID SMALLINT NOT NULL DEFAULT '0', + hourDayID SMALLINT NOT NULL DEFAULT '0', + polProcessID int NOT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + + meanBaseRate FLOAT NULL, + meanBaseRateIM FLOAT NULL, + emissionRate FLOAT NULL, + emissionRateIM FLOAT NULL, + + meanBaseRateACAdj FLOAT NULL, + meanBaseRateIMACAdj FLOAT NULL, + emissionRateACAdj FLOAT NULL, + emissionRateIMACAdj FLOAT NULL, + + opModeFraction FLOAT NULL, + opModeFractionRate FLOAT NULL, + PRIMARY KEY (sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, polProcessID, modelYearID, fuelTypeID, ageGroupID, regClassID, opModeID) +); + +TRUNCATE TABLE BaseRateByAge; + +drop table if exists BaseRate; + +CREATE TABLE IF NOT EXISTS BaseRate ( + sourceTypeID SMALLINT NOT NULL, + roadTypeID SMALLINT NOT NULL, + avgSpeedBinID SMALLINT NOT NULL DEFAULT '0', + hourDayID SMALLINT NOT NULL DEFAULT '0', + polProcessID int NOT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + + meanBaseRate FLOAT NULL, + meanBaseRateIM FLOAT NULL, + emissionRate FLOAT NULL, + emissionRateIM FLOAT NULL, + + meanBaseRateACAdj FLOAT NULL, + meanBaseRateIMACAdj FLOAT NULL, + emissionRateACAdj FLOAT NULL, + emissionRateIMACAdj FLOAT NULL, + + opModeFraction FLOAT NULL, + opModeFractionRate FLOAT NULL, + PRIMARY KEY (sourceTypeID, roadTypeID, avgSpeedBinID, hourDayID, polProcessID, modelYearID, fuelTypeID, regClassID, opModeID) +); + +TRUNCATE TABLE BaseRate; diff --git a/database/CreateIndexesGenerator1.sql b/database/CreateIndexesGenerator1.sql new file mode 100644 index 0000000..f8541cd --- /dev/null +++ b/database/CreateIndexesGenerator1.sql @@ -0,0 +1,3 @@ +ALTER TABLE Generator1 ADD ( + PRIMARY KEY(StateID, CountyID, ZoneID, LinkID, Time, VType) +); diff --git a/database/CreateIndexesInputData3.sql b/database/CreateIndexesInputData3.sql new file mode 100644 index 0000000..5362e23 --- /dev/null +++ b/database/CreateIndexesInputData3.sql @@ -0,0 +1,3 @@ +ALTER TABLE InputData3 ADD ( + PRIMARY KEY(VType, PollutantID, ProcessID) +); diff --git a/database/CreateNRDefault.sql b/database/CreateNRDefault.sql new file mode 100644 index 0000000..65048b0 --- /dev/null +++ b/database/CreateNRDefault.sql @@ -0,0 +1,314 @@ +-- Author Wesley Faler +-- Author Don Smith +-- Version 2013-04-15 + +CREATE TABLE NRAgeCategory ( + ageID smallint(6) NOT NULL, + ageCategoryName char(50) DEFAULT NULL, + PRIMARY KEY (ageID), + UNIQUE KEY XPKNRAgeCategory (ageID) +); + +CREATE TABLE NRBaseYearEquipPopulation ( + sourceTypeID smallint(6) NOT NULL, + stateID smallint(6) NOT NULL, + population float DEFAULT NULL, + NRBaseYearID smallint(6) NOT NULL, + PRIMARY KEY (sourceTypeID,stateID), + UNIQUE KEY XPKNRBaseYearEquipPopulation (sourceTypeID,stateID) +); + +CREATE TABLE NRCrankCaseEmissionRatio ( + sourceTypeID smallint(6) NOT NULL, + polProcessID int NOT NULL, + sourceBinID bigint(20) NOT NULL, + NRProcessMeanBaseRate float DEFAULT NULL, + NRProcessMeanBaseRateCV float DEFAULT NULL, + dataSourceId smallint(6) NOT NULL, + PRIMARY KEY (sourceTypeID,polProcessID,sourceBinID), + UNIQUE KEY XPKNRProcessEmissionRate (sourceTypeID,polProcessID,sourceBinID), + KEY INDEX1 (sourceTypeID,polProcessID,sourceBinID), + KEY XPFnrCrankCaseEmissionRatio (sourceTypeID,polProcessID,sourceBinID) +); + +CREATE TABLE NRDayAllocation ( + NREquipTypeID smallint(6) NOT NULL, + dayID smallint(6) NOT NULL, + dayFraction float NOT NULL, + PRIMARY KEY (NREquipTypeID,dayID), + UNIQUE KEY XPKNRDayAllocation (NREquipTypeID,dayID) +); + +CREATE TABLE NRDeterioration ( + polProcessID int NOT NULL, + engTechID smallint(6) NOT NULL, + DFCoefficient float DEFAULT NULL, + DFAgeExponent float DEFAULT NULL, + emissionCap smallint(6) NOT NULL, + PRIMARY KEY (polProcessID,engTechID), + UNIQUE KEY XPKNRDeterioration (polProcessID,engTechID) +); + +CREATE TABLE NREngTechFraction ( + sourceTypeID smallint(6) NOT NULL, + modelYearID smallint(6) NOT NULL, + processID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + NREngTechFraction float NOT NULL, + PRIMARY KEY (sourceTypeID,modelYearID,processID,engTechID), + UNIQUE KEY XPKNREngTechFraction (sourceTypeID,modelYearID,processID,engTechID) +); + +CREATE TABLE NREquipmentType ( + NREquipTypeID smallint(6) NOT NULL, + description char(40) DEFAULT NULL, + sectorID smallint(6) NOT NULL, + useDefaultScrappage char(1) DEFAULT NULL, + surrogateID smallint(6) DEFAULT NULL, + PRIMARY KEY (NREquipTypeID), + UNIQUE KEY XPKNREquipmentType (NREquipTypeID) +); + +CREATE TABLE NREvapEmissionRate ( + sourceTypeID smallint(6) NOT NULL, + polProcessID int NOT NULL, + sourceBinID bigint(20) NOT NULL, + NRProcessMeanBaseRate float DEFAULT NULL, + NRProcessMeanBaseRateCV float DEFAULT NULL, + dataSourceId smallint(6) NOT NULL, + PRIMARY KEY (sourceTypeID,polProcessID,sourceBinID), + UNIQUE KEY XPKNRProcessEmissionRate (sourceTypeID,polProcessID,sourceBinID), + KEY INDEX1 (sourceTypeID,polProcessID,sourceBinID), + KEY XPFnrEvapEmissionRate (sourceTypeID,polProcessID,sourceBinID) +); + +CREATE TABLE NRExhaustEmissionRate ( + sourceTypeID smallint(6) NOT NULL, + polProcessID int NOT NULL, + sourceBinID bigint(20) NOT NULL, + NRProcessMeanBaseRate float DEFAULT NULL, + NRProcessMeanBaseRateCV float DEFAULT NULL, + dataSourceId smallint(6) NOT NULL, + PRIMARY KEY (sourceTypeID,polProcessID,sourceBinID), + UNIQUE KEY XPKNRExhaustEmissionRate (sourceTypeID,polProcessID,sourceBinID) +); + +CREATE TABLE NRFuelOxyAdjustment ( + strokes tinyint(4) NOT NULL, + polProcessID int NOT NULL, + fuelTypeID smallint(6) NOT NULL, + NRFuelOxyAdjust float DEFAULT NULL, + PRIMARY KEY (strokes,polProcessID,fuelTypeID), + UNIQUE KEY XPKNRFuelOxyAdjustment (strokes,polProcessID,fuelTypeID) +); + +CREATE TABLE NRGrowthIndex ( + growthPatternID smallint(6) NOT NULL, + yearID smallint(6) NOT NULL, + growthIndex smallint(6) DEFAULT NULL, + PRIMARY KEY (growthPatternID,yearID), + UNIQUE KEY XPKNRGrowthIndex (growthPatternID,yearID) +); + +CREATE TABLE NRGrowthPattern ( + growthPatternID smallint(6) NOT NULL, + description char(80) DEFAULT NULL, + PRIMARY KEY (growthPatternID), + UNIQUE KEY XPKNRGrowthPattern (growthPatternID) +); + +CREATE TABLE NRGrowthPatternFinder ( + SCC char(10) NOT NULL, + stateID smallint(6) NOT NULL, + growthPatternID smallint(6) NOT NULL, + PRIMARY KEY (SCC,stateID), + UNIQUE KEY XPKNRGrowthPatternFinder (SCC,stateID) +); + +CREATE TABLE NRHourAllocation ( + NRHourAllocPatternID smallint(6) NOT NULL, + hourID smallint(6) NOT NULL, + hourFraction float NOT NULL, + PRIMARY KEY (NRHourAllocPatternID,hourID), + UNIQUE KEY XPKNRHourAllocation (NRHourAllocPatternID,hourID) +); + +CREATE TABLE NRHourAllocPattern ( + NRHourAllocPatternID smallint(6) NOT NULL, + description char(255) NOT NULL, + PRIMARY KEY (NRHourAllocPatternID), + UNIQUE KEY XPKNRHourAllocPattern (NRHourAllocPatternID) +); + +CREATE TABLE NRHourPatternFinder ( + NREquipTypeID smallint(6) NOT NULL, + NRHourAllocPatternID smallint(6) DEFAULT NULL, + PRIMARY KEY (NREquipTypeID), + UNIQUE KEY XPKNRHourPatternFinder (NREquipTypeID) +); + +CREATE TABLE NRHPRangeBin ( + NRHPRangeBinID smallint(6) NOT NULL, + binName char(20) DEFAULT NULL, + hpMin smallint(6) DEFAULT NULL, + hpMax smallint(6) DEFAULT NULL, + engSizeID smallint(6) NOT NULL, + PRIMARY KEY (NRHPRangeBinID), + UNIQUE KEY XPKNRHPRangeBin (NRHPRangeBinID) +); + +CREATE TABLE NRMonthAllocation ( + NREquipTypeID smallint(6) NOT NULL, + stateID smallint(6) NOT NULL, + monthID smallint(6) NOT NULL, + monthFraction float NOT NULL, + PRIMARY KEY (NREquipTypeID,stateID,monthID), + UNIQUE KEY XPKNRMonthAllocation (NREquipTypeID,stateID,monthID) +); + +CREATE TABLE NRPollutantProcessModelYear ( + polProcessID int NOT NULL, + modelYearID smallint(6) NOT NULL, + modelYearGroupID int(11) NOT NULL, + PRIMARY KEY (polProcessID,modelYearID), + UNIQUE KEY XPKNRPollutantProcessModelYear (polProcessID,modelYearID) +); + +CREATE TABLE NRProcessEmissionRate ( + sourceTypeID smallint(6) NOT NULL, + polProcessID int NOT NULL, + sourceBinID bigint(20) NOT NULL, + NRProcessMeanBaseRate float DEFAULT NULL, + NRProcessMeanBaseRateCV float DEFAULT NULL, + dataSourceId smallint(6) NOT NULL, + PRIMARY KEY (sourceTypeID,polProcessID,sourceBinID), + UNIQUE KEY XPKNRProcessEmissionRate (sourceTypeID,polProcessID,sourceBinID) +); + +CREATE TABLE NRSCC ( + SCC char(10) NOT NULL, + NREquipTypeID smallint(6) NOT NULL, + strokes tinyint(4) DEFAULT NULL, + description char(40) DEFAULT NULL, + fuelTypeID smallint(6) NOT NULL, + PRIMARY KEY (SCC), + UNIQUE KEY XPKNRSCC (SCC) +); + +CREATE TABLE NRScrappageCurve ( + NREquipTypeID smallint(6) NOT NULL, + fractionLifeused float NOT NULL, + percentageScrapped float DEFAULT NULL, + PRIMARY KEY (NREquipTypeID,fractionLifeused), + UNIQUE KEY XPKNRScrappageCurve (NREquipTypeID,fractionLifeused) +); + +CREATE TABLE NRSourceBin ( + sourceBinID bigint(20) NOT NULL, + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + engTechID smallint(6) NOT NULL DEFAULT '0', + modelYearGroupID smallint(5) unsigned NOT NULL, + engSizeID smallint(6) unsigned NOT NULL, + PRIMARY KEY (sourceBinID), + KEY Index_srcbin (fuelTypeID,engTechID,engSizeID) +); + +CREATE TABLE NRSourceUseType ( + sourceTypeID smallint(6) NOT NULL, + SCC char(10) NOT NULL, + NRHPRangeBinID smallint(6) NOT NULL, + medianLifeFullLoad float DEFAULT NULL, + hoursUsedPerYear float DEFAULT NULL, + loadFactor float DEFAULT NULL, + hpAvg float DEFAULT NULL, + isPumpFilled char(1) DEFAULT NULL, + tankSize float DEFAULT NULL, + tankFillFrac float DEFAULT NULL, + tankMetalFrac float DEFAULT NULL, + hoseLength float DEFAULT NULL, + hoseDiameter float DEFAULT NULL, + hoseMetalFrac float DEFAULT NULL, + marineFillNeckHoseLength float DEFAULT NULL, + marineFillNeckHoseDiameter float DEFAULT NULL, + marineSupplyHoseLength float DEFAULT NULL, + marineSupplyHoseDiameter float DEFAULT NULL, + marineVentHoseLength float DEFAULT NULL, + marineVentHoseDiameter float DEFAULT NULL, + hotSoaksPerSHO float DEFAULT NULL, + nonInstMarineTankFrac float DEFAULT NULL, + marineInstPlasticTankTrailFrac float NOT NULL, + marineInstPlasticTankWaterFrac float DEFAULT NULL, + marineInstMetalTankTrailerFrac float DEFAULT NULL, + marineInstMetalTankWaterFrac float DEFAULT NULL, + e10TankPermeationAdjFac float DEFAULT NULL, + e10HosePermeationAdjFac float DEFAULT NULL, + e10MarineFillNeckPermAdjFac float DEFAULT NULL, + e10MarineSupplyHosePermAdjFac float DEFAULT NULL, + e10MarineVentHosePermAdjFac float DEFAULT NULL, + PRIMARY KEY (sourceTypeID), + UNIQUE KEY XPKNRSourceUseType (sourceTypeID) +); + +CREATE TABLE NRStateSurrogateTotal ( + surrogateID smallint(6) NOT NULL, + stateID smallint(6) NOT NULL, + surrogateQuant float NOT NULL, + surrogateYearID smallint(6) DEFAULT NULL, + PRIMARY KEY (surrogateID,stateID), + UNIQUE KEY XPKNRStateSurrogateTotal (surrogateID,stateID) +); + +CREATE TABLE NRSulfurAdjustment ( + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + PMBaseSulfur float NOT NULL, + sulfatePMConversionFactor float NOT NULL, + PRIMARY KEY (fuelTypeID,engTechID), + UNIQUE KEY XPKNRSulfurAdjustment (fuelTypeID,engTechID) +); + +CREATE TABLE NRSurrogate ( + surrogateID smallint(6) NOT NULL, + description char(255) DEFAULT NULL, + PRIMARY KEY (surrogateID), + UNIQUE KEY XPKNRSurrogate (surrogateID) +); + +CREATE TABLE NRTemperatureAdjustment ( + strokes tinyint(4) NOT NULL, + polProcessID int NOT NULL, + fuelTypeID smallint(6) NOT NULL, + NRTemperatureAdjustGT75 float DEFAULT NULL, + NRTemperatureAdjustLT75 float DEFAULT NULL, + PRIMARY KEY (strokes,polProcessID,fuelTypeID), + UNIQUE KEY XPKNRTemperatureAdjustment (strokes,polProcessID,fuelTypeID) +); + +CREATE TABLE NRTransientAdjustFactor ( + NREquipTypeID smallint(6) NOT NULL, + NRHPRangeBinID smallint(6) NOT NULL, + polProcessID int NOT NULL, + fuelTypeID smallint(6) NOT NULL, + engTechID smallint(6) NOT NULL, + NRTransientAdjustFactor float NOT NULL, + PRIMARY KEY (NREquipTypeID,NRHPRangeBinID,polProcessID,fuelTypeID,engTechID), + UNIQUE KEY XPKNRTransientAdjustFactor (NREquipTypeID,NRHPRangeBinID,polProcessID,fuelTypeID,engTechID) +); + +CREATE TABLE NRYear ( + yearID SMALLINT NOT NULL, + isBaseYear CHAR(1) NULL, + fuelYearID smallint NOT NULL DEFAULT '0', + primary key (yearID), + key (isBaseYear) +); + +CREATE TABLE NRZoneAllocation ( + surrogateID smallint(6) NOT NULL, + stateID smallint(6) NOT NULL, + zoneID int(11) NOT NULL, + surrogateQuant float NOT NULL, + PRIMARY KEY (surrogateID,stateID,zoneID), + UNIQUE KEY XPKNRZoneAllocation (surrogateID,stateID,zoneID) +); + diff --git a/database/CreateOutput.sql b/database/CreateOutput.sql new file mode 100644 index 0000000..e83bac7 --- /dev/null +++ b/database/CreateOutput.sql @@ -0,0 +1,477 @@ +/* + Version 2015-03-16 + -- MOVESRun table structure modified by Mitch Cumberworth per Task 206 + -- Foreign keys removed by Wesley Faler Oct. 2007 to speedup Master-side INSERTs + -- Output and activity primary keys and unique keys removed by Wesley Faler Jan. 2008 to speedup Master-side INSERTs + -- MOVESRun table structure modified by Gwo Shyu per Task 812 "MOVES performance Improvement ...": + (1) Added a new table ActivityType + (2) Structure of MOVESActivityOutput and MOVESOutput were modified - fields changed, and no primary key nor indexes + -- MOVESRun table structure modified by Wes Faler per Task 902 to add Domain information + -- MOVESOutput table structure modified by MJimenez 29Feb2012 add engTechID and sectorID for NONROAD + -- MOVESActivityOutput table structure modified by MJimenez 29Feb2012 add engTechID and sectorID for NONROAD + -- Merged Michele's changes with the changes done by Wes etc. +*/ +/* Creates tables in the MOVESOutput Database */ +DROP TABLE IF EXISTS MOVESOutput; +DROP TABLE IF EXISTS MOVESActivityOutput; +DROP TABLE IF EXISTS MOVESRun; +DROP TABLE IF EXISTS MOVESError; +DROP TABLE IF EXISTS MOVESEventLog; +DROP TABLE IF EXISTS MOVESWorkersUsed; +DROP TABLE IF EXISTS ActivityType; +DROP TABLE IF EXISTS MOVESTablesUsed; +DROP TABLE IF EXISTS RatePerDistance; +DROP TABLE IF EXISTS RatePerVehicle; +DROP TABLE IF EXISTS RatePerProfile; +DROP TABLE IF EXISTS StartsPerVehicle; +DROP TABLE IF EXISTS RatePerStart; +DROP TABLE IF EXISTS RatePerHour; + +CREATE TABLE MOVESEventLog ( + EventRecordID INT UNSIGNED NOT NULL, + MOVESRunID SMALLINT UNSIGNED NOT NULL, + PRIMARY KEY (EventRecordID, MOVESRunID), + EventName CHAR(255) NOT NULL, + WhenStarted INT UNSIGNED NOT NULL, + WhenStopped INT UNSIGNED NULL, + Duration INT UNSIGNED NULL +); + +-- *********************************************************************************** +-- *********************************************************************************** +-- MOVESOutput table. Stores one row for each combination +-- of dimension field values, which includes pollutant. +-- +-- Note that dimension fields will never be null but they +-- may hold a default value that indicates an "all" selection. +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE MOVESOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + iterationID SMALLINT UNSIGNED NULL DEFAULT 1, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- stateID, locationID, zoneID, and linkID can all be default +-- in the case where the user selected "Nation" as the +-- geographic granularity for the output. +-- linkID and/or zoneID will be default otherwise if "County" +-- level granularity was selected depending upon scale. +-- locationID will be default otherwise if "State" level +-- granularity was selected. +-- ****************************************************** + stateID SMALLINT UNSIGNED NULL DEFAULT NULL, + countyID INTEGER UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + fuelSubTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- roadTypeID is not redundant with linkID in the cases where +-- the user wants road type as a dimension but does not want +-- geographic detail to the link/zone (or perhaps even to +-- the County) level. +-- ****************************************************** + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- SCC holds both OnRoad and OffRoad SCC codes and may be +-- all 0's (zeroes) to represent "all" SCC codes at once. +-- ****************************************************** + SCC CHAR(10) NULL DEFAULT NULL, +-- ****************************************************** +-- OffRoad keys +-- ****************************************************** + engTechID SMALLINT UNSIGNED NULL DEFAULT NULL, + sectorID SMALLINT UNSIGNED NULL DEFAULT NULL, + hpID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- The emission* columns are the actual values produced, +-- not dimensions to the data. These will be NULL if the +-- user chose not to generate them. +-- ****************************************************** + emissionQuant FLOAT NULL DEFAULT NULL, + emissionQuantMean FLOAT NULL DEFAULT NULL, + emissionQuantSigma FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE MOVESRun ( + MOVESRunID SMALLINT UNSIGNED NOT NULL auto_increment, +-- ****************************************************** +-- outputTimePeriod has values 'Hour', 'Day', 'Month', or 'Year' +-- ****************************************************** + outputTimePeriod CHAR(5) NULL DEFAULT NULL, + timeUnits CHAR(5) NULL DEFAULT NULL, + distanceUnits CHAR(5) NULL DEFAULT NULL, + massUnits CHAR(5) NULL DEFAULT NULL, + energyUnits CHAR(5) NULL DEFAULT NULL, +-- ****************************************************** +-- runSpecFileName can be null if the user has not saved +-- their runspec prior to launching the simulation. +-- ****************************************************** + runSpecFileName VARCHAR(500) NULL DEFAULT NULL, + runSpecDescription TEXT NULL, + runSpecFileDateTime DATETIME NULL DEFAULT NULL, + runDateTime DATETIME NULL DEFAULT NULL, +-- ****************************************************** +-- scale has values 'MACRO', 'MESO', 'MICRO' +-- ****************************************************** + scale CHAR(5) NULL DEFAULT NULL, + minutesDuration FLOAT NULL DEFAULT NULL, + defaultDatabaseUsed VARCHAR(200) NULL DEFAULT NULL, + masterVersion VARCHAR(100) NULL DEFAULT NULL, + masterComputerID VARCHAR(255) NULL DEFAULT NULL, + masterIDNumber VARCHAR(255) NULL DEFAULT NULL, +-- ****************************************************** +-- domain has values 'NATIONAL', 'SINGLE', 'PROJECT' +-- ****************************************************** + domain CHAR(10) NULL DEFAULT 'NATIONAL', + domainCountyID INTEGER UNSIGNED NULL DEFAULT NULL, + domainCountyName VARCHAR(50) NULL DEFAULT NULL, + domainDatabaseServer VARCHAR(100) NULL DEFAULT NULL, + domainDatabaseName VARCHAR(200) NULL DEFAULT NULL, + + expectedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL, + retrievedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL, + + models VARCHAR(40) NOT NULL DEFAULT 'onroad', + + PRIMARY KEY (MOVESRunID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE MOVESError ( + MOVESErrorID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + stateID SMALLINT UNSIGNED NULL DEFAULT NULL, + countyID INTEGER UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + errorMessage VARCHAR(255) NOT NULL, + PRIMARY KEY (MOVESErrorID), + KEY IX_MOVES_ERROR_ID (MOVESErrorID), + KEY IX_MOVES_RUN_ID (MOVESRunID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- MOVESActivityOutput table. Used for "Additional Outputs" which are not +-- pollutant dependent such as distance. +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE MOVESActivityOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + iterationID SMALLINT UNSIGNED NULL DEFAULT 1, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- stateID, locationID, zoneID, and linkID can all be default +-- in the case where the user selected "Nation" as the +-- geographic granularity for the output. +-- linkID and/or zoneID will be default otherwise if "County" +-- level granularity was selected depending upon scale. +-- locationID will be default otherwise if "State" level +-- granularity was selected. +-- ****************************************************** + stateID SMALLINT UNSIGNED NULL DEFAULT NULL, + countyID INTEGER UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- roadTypeID is not redundant with linkID in the cases where +-- the user wants road type as a dimension but does not want +-- geographic detail to the link/zone (or perhaps even to +-- the County) level. +-- ****************************************************** + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, +-- ****************************************************** +-- SCC holds both OnRoad and OffRoad SCC codes and may be +-- all 0's (zeroes) to represent "all" SCC codes at once. +-- ****************************************************** + SCC CHAR(10) NULL DEFAULT NULL, + engTechID SMALLINT UNSIGNED NULL DEFAULT NULL, + sectorID SMALLINT UNSIGNED NULL DEFAULT NULL, + hpID SMALLINT UNSIGNED NULL DEFAULT NULL, + activityTypeID SMALLINT NOT NULL, + activity FLOAT NULL DEFAULT NULL, + activityMean FLOAT NULL DEFAULT NULL, + activitySigma FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE ActivityType ( + activityTypeID SMALLINT UNSIGNED NOT NULL, + activityType CHAR(20) NOT NULL, + activityTypeDesc CHAR(50) NULL DEFAULT NULL, + PRIMARY KEY (activityTypeID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- add records +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (1, "distance", "Distance traveled"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (2, "sourcehours", "Source Hours"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (3, "extidle", "Extended Idle Hours"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (4, "sho", "Source Hours Operating"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (5, "shp", "Source Hours Parked"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (6, "population", "Population"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (7, "starts", "Starts"); +-- INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +-- VALUES (8, "hotelling", "Hotelling Hours") +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (9, "avghp", "Average Horsepower"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (10, "retrofrac", "Fraction Retrofitted"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (11, "retrocnt", "Number Units Retrofitted"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (12, "loadfactor", "Load Factor"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (13, "hotellingAux", "Hotelling Diesel Aux"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (14, "hotellingElectric", "Hotelling Battery or AC"); +INSERT IGNORE INTO ActivityType (activityTypeID, activityType, activityTypeDesc) +VALUES (15, "hotellingOff", "Hotelling All Engines Off"); + + + +CREATE TABLE MOVESWorkersUsed ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + workerVersion VARCHAR(100) NOT NULL, + workerComputerID VARCHAR(255) NOT NULL, + workerID VARCHAR(255) NOT NULL DEFAULT '', + bundleCount INTEGER UNSIGNED NOT NULL DEFAULT '0', + failedBundleCount INTEGER UNSIGNED NOT NULL DEFAULT '0', + PRIMARY KEY (MOVESRunID, workerVersion, workerComputerID, workerID) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE bundleTracking ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + -- 'M' for master, 'W' for worker + hostType char(1) not null default ' ', + loopableClassName varchar(200) not null default '', + + -- worker fields will be blank ('') for tasks done on a master + workerVersion VARCHAR(100) NOT NULL, + workerComputerID VARCHAR(255) NOT NULL, + workerID VARCHAR(255) NOT NULL DEFAULT '', + -- bundleNumber will be 0 for tasks done on a master, even if the task is done on behalf of a calculator + bundleNumber int not null default '0', + -- isCleanUp is set to 'N' for bundles done on a worker + isCleanUp char(1) not null default 'N', + + iterationID smallint unsigned null default null, + processID smallint unsigned null default null, + roadTypeID smallint unsigned null default null, + linkID integer unsigned null default null, + zoneID integer unsigned null default null, + countyID integer unsigned null default null, + stateID smallint unsigned null default null, + yearID smallint unsigned null default null, + monthID smallint unsigned null default null, + dayID smallint unsigned null default null, + hourID smallint unsigned null default null, + executionGranularity varchar(10) null default null, + executionPriority smallint unsigned null, + + durationSeconds FLOAT NULL DEFAULT NULL, + + -- There is no primary key in this table, but the following KEY is + -- useful when searching for performance bottlenecks. + KEY (MOVESRunID, hostType, loopableClassName) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE MOVESTablesUsed ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + databaseServer VARCHAR(100) NOT NULL DEFAULT '', + databaseName VARCHAR(200) NOT NULL, + tableName VARCHAR(200) NOT NULL, + dataFileSize INTEGER UNSIGNED NULL DEFAULT NULL, + dataFileModificationDate DATETIME NULL DEFAULT NULL, + tableUseSequence INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + PRIMARY KEY (MOVESRunID, databaseServer, databaseName, tableName), + KEY (MOVESRunID, tableUseSequence) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- RatePerDistance table +-- Includes emissions for the processes: Running exhaust, tire wear, brake wear, +-- crankcase, and refueling +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE RatePerDistance ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + avgSpeedBinID SMALLINT NULL DEFAULT NULL, + temperature FLOAT NULL DEFAULT NULL, + relHumidity FLOAT NULL DEFAULT NULL, + ratePerDistance FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- RatePerVehicle table +-- Includes emissions for processes: Start exhaust, start crankcase, permeation, +-- liquid leaks, and extended idle +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE RatePerVehicle ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + temperature FLOAT NULL DEFAULT NULL, + relHumidity FLOAT NULL DEFAULT NULL, + ratePerVehicle FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- RatePerProfile table +-- Includes emissions from vapor venting process +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE RatePerProfile ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + temperatureProfileID BIGINT NULL DEFAULT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + temperature FLOAT NULL DEFAULT NULL, + relHumidity FLOAT NULL DEFAULT NULL, + ratePerVehicle FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- StartsPerVehicle table. Starts per existing vehicle, even if the vehicle did not start. +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE StartsPerVehicle ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + startsPerVehicle FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- RatePerStart table. Emissions per start. +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE RatePerStart ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + temperature FLOAT NULL DEFAULT NULL, + relHumidity FLOAT NULL DEFAULT NULL, + ratePerStart FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +-- *********************************************************************************** +-- *********************************************************************************** +-- RatePerHour table +-- Includes emissions for the processes: Extended Idle (90), APU (91) +-- *********************************************************************************** +-- *********************************************************************************** +-- No PK nor indexes +CREATE TABLE RatePerHour ( + MOVESScenarioID VARCHAR(40) NOT NULL DEFAULT '', + MOVESRunID SMALLINT UNSIGNED NOT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + temperature FLOAT NULL DEFAULT NULL, + relHumidity FLOAT NULL DEFAULT NULL, + ratePerHour FLOAT NULL DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; diff --git a/database/CreateOutputRates.sql b/database/CreateOutputRates.sql new file mode 100644 index 0000000..e4cb69c --- /dev/null +++ b/database/CreateOutputRates.sql @@ -0,0 +1,41 @@ +/* + Version 2013-10-23 + Author Wesley Faler +*/ +DROP TABLE IF EXISTS BaseRateOutput; +DROP TABLE IF EXISTS BaseRateUnits; + +CREATE TABLE IF NOT EXISTS BaseRateUnits ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + + meanBaseRateUnitsNumerator varchar(50) null default '', + meanBaseRateUnitsDenominator varchar(50) null default '', + emissionBaseRateUnitsNumerator varchar(50) null default '', + emissionBaseRateUnitsDenominator varchar(50) null default '' +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + +CREATE TABLE IF NOT EXISTS BaseRateOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + iterationID SMALLINT UNSIGNED NULL DEFAULT 1, + + zoneID INTEGER NOT NULL DEFAULT '0', + linkID INTEGER NOT NULL DEFAULT '0', + sourceTypeID SMALLINT NOT NULL DEFAULT '0', + SCC CHAR(10) NOT NULL DEFAULT '', + roadTypeID SMALLINT NOT NULL DEFAULT '0', + avgSpeedBinID SMALLINT NOT NULL DEFAULT '0', + monthID SMALLINT NOT NULL DEFAULT '0', + hourDayID SMALLINT NOT NULL DEFAULT '0', + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT NOT NULL DEFAULT '0', + yearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL DEFAULT '0', + regClassID SMALLINT NOT NULL DEFAULT '0', + + meanBaseRate FLOAT NULL, + emissionRate FLOAT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; diff --git a/database/CreateTableGenerator1.sql b/database/CreateTableGenerator1.sql new file mode 100644 index 0000000..1b2f1b7 --- /dev/null +++ b/database/CreateTableGenerator1.sql @@ -0,0 +1,9 @@ +CREATE TABLE Generator1 ( + StateID INTEGER UNSIGNED NOT NULL, + CountyID INTEGER UNSIGNED NOT NULL, + ZoneID INTEGER UNSIGNED NOT NULL, + LinkID INTEGER UNSIGNED NOT NULL, + Time DATETIME NOT NULL, + VType INTEGER UNSIGNED NOT NULL, + ActivityPerHour FLOAT +); diff --git a/database/CreateTableInputData3.sql b/database/CreateTableInputData3.sql new file mode 100644 index 0000000..606953e --- /dev/null +++ b/database/CreateTableInputData3.sql @@ -0,0 +1,6 @@ +CREATE TABLE InputData3 ( + VType INTEGER UNSIGNED NOT NULL, + PollutantID INTEGER UNSIGNED NOT NULL, + ProcessID INTEGER UNSIGNED NOT NULL, + AmountPerActivity FLOAT +); diff --git a/database/CreateWorker.sql b/database/CreateWorker.sql new file mode 100644 index 0000000..f228978 --- /dev/null +++ b/database/CreateWorker.sql @@ -0,0 +1,142 @@ +-- Create the MOVESWorker database and schema. +-- Author Wesley Faler +-- Version 2015-03-16 + +DROP TABLE IF EXISTS MOVESOutput; +DROP TABLE IF EXISTS MOVESWorkerOutput; +DROP TABLE IF EXISTS MOVESWorkerActivityOutput; + +-- *********************************************************************************** +-- *********************************************************************************** +-- MOVESOutput table. Stores one row for each combination +-- of dimension field values, which includes pollutant. +-- +-- Note that dimension fields will never be null but they +-- may hold a default value that indicates an "all" selection. +-- *********************************************************************************** +-- *********************************************************************************** +CREATE TABLE IF NOT EXISTS MOVESWorkerOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- stateID, locationID, zoneID, and linkID can all be default + -- in the case where the user selected "Nation" as the + -- geographic granularity for the output. + -- linkID and/or zoneID will be default otherwise if "County" + -- level granularity was selected depending upon scale. + -- locationID will be default otherwise if "State" level + -- granularity was selected. + -- ****************************************************** + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + fuelSubTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- roadTypeID is not redundant with linkID in the cases where + -- the user wants road type as a dimension but does not want + -- geographic detail to the link/zone (or perhaps even to + -- the County) level. + -- ****************************************************** + roadTypeID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- SCC holds both OnRoad and OffRoad SCC codes and may be + -- all 0's (zeroes) to represent "all" SCC codes at once. + -- ****************************************************** + SCC CHAR(10) NULL, + + -- ****************************************************** + -- OffRoad keys + -- ****************************************************** + engTechID SMALLINT UNSIGNED NULL DEFAULT NULL, + sectorID SMALLINT UNSIGNED NULL DEFAULT NULL, + hpID SMALLINT UNSIGNED NULL DEFAULT NULL, + + -- ****************************************************** + -- The emission columns are the actual values produced, + -- not dimensions to the data. These will be NULL if the + -- user chose not to generate them. + -- ****************************************************** + + -- Pollutant [mass,energy,moles,etc] in the time period and region. + -- Reflects mixture of I/M and non-I/M vehicles. + emissionQuant FLOAT NULL, + + -- Pollutant [mass,energy,moles,etc] per activity unit such + -- as distance, start, and idle hour. + -- Reflects mixture of I/M and non-I/M vehicles. + emissionRate FLOAT NULL +); + +TRUNCATE TABLE MOVESWorkerOutput; + +CREATE TABLE IF NOT EXISTS MOVESWorkerActivityOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- stateID, locationID, zoneID, and linkID can all be default + -- in the case where the user selected "Nation" as the + -- geographic granularity for the output. + -- linkID and/or zoneID will be default otherwise if "County" + -- level granularity was selected depending upon scale. + -- locationID will be default otherwise if "State" level + -- granularity was selected. + -- ****************************************************** + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- roadTypeID is not redundant with linkID in the cases where + -- the user wants road type as a dimension but does not want + -- geographic detail to the link/zone (or perhaps even to + -- the County) level. + -- ****************************************************** + roadTypeID SMALLINT UNSIGNED NULL, + + -- ****************************************************** + -- SCC holds both OnRoad and OffRoad SCC codes and may be + -- all 0's (zeroes) to represent "all" SCC codes at once. + -- ****************************************************** + SCC CHAR(10) NULL, + + -- ****************************************************** + -- OffRoad keys + -- ****************************************************** + engTechID SMALLINT UNSIGNED NULL DEFAULT NULL, + sectorID SMALLINT UNSIGNED NULL DEFAULT NULL, + hpID SMALLINT UNSIGNED NULL DEFAULT NULL, + + activityTypeID SMALLINT NOT NULL, + activity FLOAT NULL DEFAULT NULL +); + +TRUNCATE TABLE MOVESWorkerActivityOutput; diff --git a/database/CreateWorkerRates.sql b/database/CreateWorkerRates.sql new file mode 100644 index 0000000..1e06ebd --- /dev/null +++ b/database/CreateWorkerRates.sql @@ -0,0 +1,34 @@ +/* + Version 2013-10-23 + Author Wesley Faler +*/ +DROP TABLE IF EXISTS BaseRateOutput; + +CREATE TABLE IF NOT EXISTS BaseRateOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + iterationID SMALLINT UNSIGNED NULL DEFAULT 1, + + zoneID INTEGER NOT NULL DEFAULT '0', + linkID INTEGER NOT NULL DEFAULT '0', + sourceTypeID SMALLINT NOT NULL DEFAULT '0', + SCC CHAR(10) NOT NULL DEFAULT '', + roadTypeID SMALLINT NOT NULL DEFAULT '0', + avgSpeedBinID SMALLINT NOT NULL DEFAULT '0', + monthID SMALLINT NOT NULL DEFAULT '0', + hourDayID SMALLINT NOT NULL DEFAULT '0', + pollutantID SMALLINT UNSIGNED NULL DEFAULT NULL, + processID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT NOT NULL DEFAULT '0', + yearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL DEFAULT '0', + regClassID SMALLINT NOT NULL DEFAULT '0', + + -- Pollutant [mass,energy,moles,etc] in the time period and region. + -- Reflects mixture of I/M and non-I/M vehicles. + meanBaseRate FLOAT NULL, + + -- Pollutant [mass,energy,moles,etc] per activity unit such + -- as distance, start, and idle hour. + -- Reflects mixture of I/M and non-I/M vehicles. + emissionRate FLOAT NULL +); diff --git a/database/CriteriaAndPMAuxiliaryPowerCalculator.sql b/database/CriteriaAndPMAuxiliaryPowerCalculator.sql new file mode 100644 index 0000000..1ff3935 --- /dev/null +++ b/database/CriteriaAndPMAuxiliaryPowerCalculator.sql @@ -0,0 +1,781 @@ +-- Version 2013-09-15 +-- Author Wes Faler +-- Author Ed Glover + +-- Section Create Remote Tables for Extracted Data + +##create.RunSpecYear##; +TRUNCATE RunSpecYear; + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.EmissionRate##; +TRUNCATE EmissionRate; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.FullACAdjustment##; +TRUNCATE FullACAdjustment; + +##create.hotellingActivityDistribution##; +TRUNCATE hotellingActivityDistribution; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.ModelYear## +TRUNCATE ModelYear; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.hotellingHours##; +TRUNCATE hotellingHours; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT * INTO OUTFILE '##EmissionRate##' +FROM EmissionRate +WHERE opModeID >= 201 and opModeID <= 299 + AND EmissionRate.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID + AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID + AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID + AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID + AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID + AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND EmissionRateByAge.opModeID >= 201 and EmissionRateByAge.opModeID <= 299 + AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +SELECT faca.* INTO OUTFILE '##FullACAdjustment##' +FROM FullACAdjustment faca +INNER JOIN RunSpecSourceType rsst ON (rsst.sourceTypeID=faca.sourceTypeID) +INNER JOIN RunSpecPollutantProcess rspp ON (rspp.polProcessID=faca.polProcessID) +where rspp.polProcessID in (##pollutantProcessIDs##); + +cache select * into outfile '##hotellingActivityDistribution##' +from hotellingActivityDistribution +where (beginModelYearID <= ##context.year## - 30 and endModelYearID >= ##context.year## - 30) +or (beginModelYearID <= ##context.year## and endModelYearID >= ##context.year##) +or (beginModelYearID >= ##context.year## - 30 and endModelYearID <= ##context.year##); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID AND HourDay.hourID = RunSpecHour.hourID; + +SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link +WHERE roadTypeID = 1 AND + zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT * INTO OUTFILE '##ModelYear##' +FROM ModelYear; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour INNER JOIN RunSpecHour USING (hourID); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##hotellingHours##' +FROM hotellingHours +WHERE yearID = ##context.year## + AND zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +SELECT DISTINCT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = TemperatureAdjustment.fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT RunSpecYear.* INTO OUTFILE '##RunSpecYear##' +FROM RunSpecYear; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecMonth,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND RunSpecMonth.monthID = ZoneMonthHour.monthID +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Processing + +-- CEIC-1: Calculate Temperature and NOx Humidity Adjustments + + +DROP TABLE IF EXISTS tappaft; +CREATE TABLE tappaft ( + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + minModelYearID INT NOT NULL, + maxModelYearID INT NOT NULL, + humidityCorrectionCoeff FLOAT NULL, + tempAdjustTermA FLOAT NULL, + tempAdjustTermB FLOAT NULL +); + +CREATE UNIQUE INDEX XPKtappaft ON tappaft +( + polProcessID ASC, + fuelTypeID ASC, + minModelYearID ASC, + maxModelYearID ASC +); + +ANALYZE TABLE tappaft; + +INSERT INTO tappaft(polProcessID, fuelTypeID, minModelYearID, maxModelYearID, humidityCorrectionCoeff, tempAdjustTermA, tempAdjustTermB) +SELECT ta.polProcessID, ta.fuelTypeID, ta.minModelYearID, ta.maxModelYearID, ft.humidityCorrectionCoeff, ta.tempAdjustTermA, + ta.tempAdjustTermB +FROM TemperatureAdjustment ta +INNER JOIN fueltype ft ON (ta.fueltypeID = ft.fueltypeID); + + +DROP TABLE IF EXISTS METADjustment; +CREATE TABLE METAdjustment ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + minModelYearID INT NOT NULL, + maxModelYearID INT NOT NULL, + temperatureAdjustment FLOAT NULL, + K Float NULL, + temperature Float NULL, + tempAdjustTermA Float NULL, + tempAdjustTermB Float NULL, + specificHumidity Float NULL, + humidityCorrectionCoeff Float NULL +); + +CREATE UNIQUE INDEX XPKMETAdjustment ON METAdjustment +( + polProcessID ASC, + modelYearID ASC, + fuelTypeID ASC, + monthID ASC, + hourID ASC +); + +ANALYZE TABLE METADjustment; + +INSERT INTO METAdjustment(zoneID, monthID, hourID ,polProcessID, fuelTypeID, modelYearID, minModelYearID, maxModelYearID, + temperatureAdjustment, K, temperature, tempAdjustTermA, tempAdjustTermB, specificHumidity, humidityCorrectionCoeff) +SELECT zmh.zoneID, zmh.monthID, zmh.hourID, ta.polProcessID, ta.fuelTypeID, my.modelyearid, ta.minModelYearID, ta.maxModelYearID, + ((zmh.temperature - 75.0) * ta.tempAdjustTermA) AS temperatureAdjustment, + (GREATEST(21.0, LEAST(zmh.specificHumidity, 124.0))) AS K, + zmh.temperature, ta.tempAdjustTermA, ta.tempAdjustTermB, zmh.specificHumidity, ta.humidityCorrectionCoeff +FROM ZoneMonthHour zmh +INNER JOIN tappaft ta +JOIN modelyear my +WHERE zmh.zoneID = ##context.iterLocation.zoneRecordID## + AND MOD(ta.polProcessID,100) = 91 + AND my.modelYearID between minModelYearID and maxModelYearID; + +update METAdjustment set temperatureAdjustment = 1.0 + tempAdjustTermB * (temperature - 75.0) * (temperature - 75.0) + temperatureAdjustment; +update METAdjustment set K = 1.0 - (K - 75.0) * humidityCorrectionCoeff; + +-- flush tables; + +DROP TABLE IF EXISTS tappaft; + +-- CEIC 2 : caculate AC Adjustment Factor + +-- CEIC 2-a: Calculate AC On Fraction + +DROP TABLE IF EXISTS ACOnFraction; +CREATE TABLE ACOnFraction ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT, + ACActivityTermB FLOAT, + ACActivityTermC FLOAT, + heatIndex FLOAT +); + +CREATE UNIQUE INDEX XPKACOnFraction ON ACOnFraction +( + zoneID ASC, + monthID ASC, + hourID ASC +); + +ANALYZE TABLE ACOnFraction; + +INSERT INTO ACOnFraction(zoneID, monthID, hourID, ACOnFraction, ACActivityTermB, ACActivityTermC, heatIndex) +SELECT zmh.zoneID, zmh.monthID, zmh.hourID, + mgh.ACActivityTermA AS ACOnFraction, mgh.ACActivityTermB, mgh.ACActivityTermC, zmh.heatIndex +FROM ZoneMonthHour zmh +INNER JOIN MonthOfAnyYear may ON (may.monthID = zmh.monthID) +INNER JOIN MonthGroupHour mgh ON (mgh.monthGroupID = may.monthGroupID AND mgh.hourID = zmh.hourID); + +-- FLUSH TABLES; + +update ACOnFraction set ACOnFraction = ACOnFraction + (heatIndex * ACActivityTermB) + (ACActivityTermC * heatIndex * heatIndex); +update ACOnFraction set ACOnFraction = IF(ACOnFraction > 1.0, 1.0, ACOnFraction); +update ACOnFraction set ACOnFraction = IF(ACOnFraction < 0.0, 0.0, ACOnFraction); + +-- FLUSH TABLES; + +-- CREC 2-b: Calculate AC Activity Fraction + +DROP TABLE IF EXISTS temp1; +CREATE TABLE temp1 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT +); + +CREATE UNIQUE INDEX XPKtemp1 ON temp1 ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC +); + +INSERT INTO temp1 (zoneID, yearID, monthID, hourID, ACOnFraction) +SELECT acof.zoneID, ry.yearID, acof.monthID, acof.hourID, acof.ACOnFraction +FROM ACOnFraction acof +INNER JOIN RunSpecYear ry +WHERE ry.yearID = ##context.year##; + +DROP TABLE IF EXISTS temp2; +CREATE TABLE temp2 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + ACOnFraction FLOAT, + ACPenetrationFraction FLOAT, + ageID SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKtemp2 ON temp2 ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC, + modelYearID ASC, + sourceTypeID ASC +); + + +INSERT INTO temp2 (zoneID, yearID, monthID, hourID, modelYearID, sourceTypeID, ACOnFraction, ACPenetrationFraction, ageID) +SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, stmy.modelYearID, stmy.sourceTypeID, acof.ACOnFraction, stmy.ACPenetrationFraction, + (acof.yearID - stmy.modelYearID) AS ageID +FROM temp1 acof +INNER JOIN SourceTypeModelYear stmy; + +-- !!! Gwo Shyu 11/4/2009 the follwoing lines should equal the above. +-- INSERT INTO temp2 (zoneID, yearID, monthID, hourID, modelYearID, sourceTypeID, ACOnFraction, ACPenetrationFraction, ageID) +-- SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, stmy.modelYearID, stmy.sourceTypeID, acof.ACOnFraction, stmy.ACPenetrationFraction, +-- (acof.yearID - stmy.modelYearID) AS ageID +-- FROM temp1 acof, SourceTypeModelYear stmy; + +DROP TABLE IF EXISTS ACActivityFraction; +CREATE TABLE ACActivityFraction ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ACActivityFraction FLOAT +); + +CREATE UNIQUE INDEX XPKACActivityFraction ON ACActivityFraction ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC, + sourceTypeID ASC, + modelYearID ASC +); +ANALYZE TABLE ACActivityFraction; + +INSERT INTO ACActivityFraction (zoneID, yearID, monthID, hourID, sourceTypeID, modelYearID, ACActivityFraction) +SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, acof.sourceTypeID, acof.modelYearID, + (acof.ACOnFraction * acof.ACPenetrationFraction * sta.functioningACFraction) AS ACActivityFraction +FROM temp2 acof +INNER JOIN SourceTypeAge sta ON (sta.sourceTypeID = acof.sourceTypeID AND sta.ageID=acof.ageID) +order by null; + +-- FLUSH TABLES; + +-- CEIC 2-c: Calculate AC Adjustment Factor + +DROP TABLE IF EXISTS ACAdjustment; +CREATE TABLE ACAdjustment ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + ACAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKACAdjustment ON ACAdjustment ( + sourceTypeID ASC, + polProcessID ASC, + modelYearID ASC, + monthID ASC, + hourID ASC +); +ANALYZE TABLE ACAdjustment; + +insert ignore into fullACAdjustment (sourceTypeID, polProcessID, opModeID, fullACAdjustment) +select distinct sourceTypeID, polProcessID, 201, 1.0 +from runSpecSourceFuelType, pollutantProcessAssoc +where (chainedTo1 is null or pollutantID in (118)); + +INSERT INTO ACAdjustment (zoneID,monthID,hourID,sourceTypeID,modelYearID,polProcessID,ACAdjustment) +SELECT acaf.zoneID, acaf.monthID, acaf.hourID, + acaf.sourceTypeID, acaf.modelYearID, faca.polProcessID, + (((faca.fullACAdjustment - 1.0) * acaf.ACActivityFraction) + 1.0) AS ACAdjustment +FROM ACActivityFraction acaf +INNER JOIN FullACAdjustment faca ON (acaf.sourceTypeID=faca.sourceTypeID + and faca.opModeID=201 AND MOD(faca.polProcessID,100)=91) +order by null; +-- FLUSH TABLES; + +-- CEIC-3: SourceBin-Weighted Weight Emission Rates + +DROP TABLE IF EXISTS EmissionRate2; + +CREATE TABLE IF NOT EXISTS EmissionRate2( + sourceBinID bigint(20) NOT NULL, + polProcessID int NOT NULL, + opModeID smallint NOT NULL, + modelYearID smallint NOT NULL, + fuelTypeID smallint NOT NULL, + sourceTypeID smallint NOT NULL, + meanBaseRate float NULL, + sourceBinActivityFraction float NULL, + opModeFraction float not null, + PRIMARY KEY (sourceBinID, polProcessID, opModeID, modelYearID, fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE EmissionRate2; + +INSERT IGNORE INTO EmissionRate2 (sourceBinID, polProcessID, opModeID, meanBaseRate, + modelYearID, fuelTypeID, sourceTypeID, sourceBinActivityFraction, opModeFraction) +SELECT DISTINCT er.sourceBinID, er.polProcessID, er.opModeID, er.meanBaseRate, + stmy.modelYearID, sb.fuelTypeID, stmy.sourceTypeID, sbd.sourceBinActivityFraction, hac.opModeFraction +FROM EmissionRate er, SourceBin sb, RunSpecSourceFuelType rsft, SourceBinDistribution sbd, SourceTypeModelYear stmy, + hotellingActivityDistribution hac +WHERE + er.sourceBinID = sb.sourceBinID + AND sb.fuelTypeID = rsft.fuelTypeID + AND er.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceBinID = sb.sourceBinID + AND sbd.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID + AND stmy.modelYearID <= ##context.year## + AND stmy.modelYearID >= ##context.year## - 30 + AND hac.beginModelYearID <= stmy.modelYearID + AND hac.endModelYearID >= stmy.modelYearID + AND hac.opModeID = er.opModeID +; + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + sourceBinID BIGINT(20) NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + +CREATE UNIQUE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC +); +ANALYZE TABLE SBWeightedEmissionRate; + +INSERT INTO SBWeightedEmissionRate (sourceBinID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, meanBaseRate) +SELECT er.sourceBinID, er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, + SUM(er.sourceBinActivityFraction * er.meanBaseRate * er.opModeFraction) AS meanBaseRate +FROM EmissionRate2 er +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID +order by null; + +-- FLUSH TABLES; + +-- CEIC-4: Apply Adjustment Factors to Emission Rates + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +CREATE TABLE WeightedAndAdjustedEmissionRate ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + +-- CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate ON WeightedAndAdjustedEmissionRate ( +-- modelYearID ASC, +-- zoneID ASC, +-- monthID ASC, +-- hourID ASC, +-- sourceTypeID ASC +-- ); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate ON WeightedAndAdjustedEmissionRate ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC +); + +CREATE INDEX XPKWeightedAndAdjustedEmissionRate_A1 ON WeightedAndAdjustedEmissionRate ( + zoneID ASC, + monthID ASC, + hourID ASC, + sourceTypeID ASC, + modelYearID ASC +); + +ANALYZE TABLE WeightedAndAdjustedEmissionRate; + +CREATE TABLE IF NOT EXISTS CriteriaAndPMAuxiliaryPowerEmissions ( someValue int not null primary key ); + + +-- 11/4/2009 by Gwo S. - Changed from "LEFT JOIN ACAdjustment" to "INNER JOIN ACAdjustment" +-- because modelYearIDs with ageIDs > 31 need to be dropped. +-- This is to prevent from null in the later tables. +-- 04/30/2013 by Ed G. - modelYearID added to METAadjustment table. + +INSERT INTO WeightedAndAdjustedEmissionRate (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, hourID, meanBaseRate) +SELECT er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, + ##context.iterLocation.zoneRecordID## as zoneID, aca.monthID, aca.hourID, + (er.meanBaseRate * aca.ACAdjustment * meta.temperatureAdjustment * IF(ppa.pollutantID=3,meta.K,1.0)) AS meanBaseRate +FROM SBWeightedEmissionRate er +INNER JOIN pollutantprocessassoc ppa ON (ppa.polProcessID=er.polProcessID) +INNER JOIN ACAdjustment aca ON (aca.sourceTypeID=er.sourceTypeID AND aca.polProcessID=er.polProcessID AND aca.modelYearID=er.modelYearID) +LEFT JOIN METAdjustment meta ON (meta.polProcessID=er.polProcessID AND meta.fuelTypeID=er.fuelTypeID AND meta.modelYearID=er.modelYearID + AND meta.monthID=aca.monthID AND meta.hourID=aca.hourID) +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, aca.monthID, aca.hourID +order by null; + +-- meta.zoneID has already been locked down to the context's zone, same with ACAdjustment's zone + +-- Apply humidity effects for NOx (pollutant/process 391) +-- update WeightedAndAdjustedEmissionRate, ZoneMonthHour, FuelType +-- set meanBaseRate=(1.0 - (GREATEST(21.0,LEAST(specificHumidity,124.0))-75.0)*humidityCorrectionCoeff)*meanBaseRate +-- where WeightedAndAdjustedEmissionRate.polProcessID=391 +-- and WeightedAndAdjustedEmissionRate.zoneID=ZoneMonthHour.zoneID +-- and WeightedAndAdjustedEmissionRate.monthID=ZoneMonthHour.monthID +-- and WeightedAndAdjustedEmissionRate.hourID=ZoneMonthHour.hourID +-- and WeightedAndAdjustedEmissionRate.fuelTypeID=FuelType.fuelTypeID; + + +-- FLUSH TABLES; + +-- CEIC-5: Multiply Emission Rates by Activity + +DROP TABLE IF EXISTS HH2; +CREATE TABLE HH2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + hourID SMALLINT, + dayID SMALLINT, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + hotellingHours FLOAT +); + +CREATE UNIQUE INDEX XPKHH2 ON HH2 ( + ageID ASC, + yearID ASC, + zoneID ASC, + monthID ASC, + hourDayID ASC, + sourceTypeID ASC); + +ANALYZE TABLE HH2; + +-- FLUSH TABLES; + +truncate table HH2; + + +INSERT INTO HH2 (zoneID, monthID, hourDayID, hourID, dayID, yearID, ageID, sourceTypeID, hotellingHours) +SELECT hh.zoneID, hh.monthID, hh.hourDayID, hrdy.hourID, hrdy.dayID, hh.yearID, hh.ageID, hh.sourceTypeID, hh.hotellingHours +FROM hotellingHours hh +INNER JOIN hourday hrdy ON (hrdy.hourDayID=hh.hourDayID); + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS AdjustedEmissionResults; +CREATE TABLE AdjustedEmissionResults ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKAdjustedEmissionResults ON AdjustedEmissionResults ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE AdjustedEmissionResults; + +INSERT INTO AdjustedEmissionResults (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, waer.zoneID, waer.monthID, + waer.hourID, hh.dayID, hh.yearID, hh.ageID, + (waer.meanBaseRate * hh.hotellingHours) AS emissionQuant +FROM WeightedAndAdjustedEmissionRate waer +INNER JOIN HH2 hh ON (hh.zoneID=waer.zoneID AND hh.monthID=waer.monthID + AND hh.hourID=waer.hourID AND hh.sourceTypeID=waer.sourceTypeID) +INNER JOIN RunSpecYear ry on (hh.yearID=ry.yearID) +WHERE hh.ageID = hh.yearID - waer.modelYearID +GROUP BY waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, + hh.zoneID, hh.monthID, hh.hourID, hh.dayID, yearID +order by null; +-- FLUSH TABLES; + +-- CEIC-6: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID + +DROP TABLE IF EXISTS MOVESWorkerOutputTmp216; +TRUNCATE MOVESWorkerOutput; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, pollutantID, + processID, sourceTypeID, fuelTypeID, modelYearID, SCC, emissionQuant) +SELECT ##context.iterLocation.stateRecordID## AS stateID, + ##context.iterLocation.countyRecordID## AS countyID, aer.zoneID, lnk.linkID, lnk.roadTypeID, + aer.yearID, aer.monthID, aer.dayID, aer.hourID, ppa.pollutantID, ppa.processID, aer.sourceTypeID, + aer.fuelTypeID, aer.modelYearID, NULL AS SCC, aer.emissionQuant AS emissionQuant +FROM AdjustedEmissionResults aer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = aer.polProcessID) +INNER JOIN Link lnk ON (lnk.zoneID=aer.zoneID) +WHERE lnk.roadTypeID=1 +order by null; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS HH2; +DROP TABLE IF EXISTS temp1; +DROP TABLE IF EXISTS temp2; +DROP TABLE IF EXISTS tmp216; +DROP TABLE IF EXISTS tappaft; +DROP TABLE IF EXISTS EmissionRate2; +DROP TABLE IF EXISTS METADjustment; +DROP TABLE IF EXISTS ACOnFraction; +DROP TABLE IF EXISTS ACActivityFraction; +DROP TABLE IF EXISTS ACAdjustment; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +DROP TABLE IF EXISTS MOVESWorkerOutputTmp216; +DROP TABLE IF EXISTS adjustedemissionresults; +drop table if exists oneCountyYearGeneralFuelRatio; +drop table if exists CriteriaAndPMAuxiliaryPowerEmissions; +-- End Section Cleanup + diff --git a/database/CriteriaAndPMExtendedIdleEmissionCalculator.sql b/database/CriteriaAndPMExtendedIdleEmissionCalculator.sql new file mode 100644 index 0000000..6c2dc87 --- /dev/null +++ b/database/CriteriaAndPMExtendedIdleEmissionCalculator.sql @@ -0,0 +1,773 @@ +-- Version 2013-09-15 +-- Author Wes Faler +-- Author Ed Glover +-- Author Gwo Shyu, EPA + +-- Section Create Remote Tables for Extracted Data + +##create.RunSpecYear##; +TRUNCATE RunSpecYear; + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.EmissionRate##; +TRUNCATE EmissionRate; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.FullACAdjustment##; +TRUNCATE FullACAdjustment; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.ModelYear##; +TRUNCATE ModelYear; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.ExtendedIdleHours##; +TRUNCATE ExtendedIdleHours; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +SELECT * INTO OUTFILE '##EmissionRate##' +FROM EmissionRate +WHERE opModeID = 200 + AND EmissionRate.polProcessID IN (##pollutantProcessIDs##); + +SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID + AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID + AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID + AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID + AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID + AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## + AND Year.yearID = ##context.year##; + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +SELECT faca.* INTO OUTFILE '##FullACAdjustment##' +FROM FullACAdjustment faca +INNER JOIN RunSpecSourceType rsst ON (rsst.sourceTypeID=faca.sourceTypeID) +INNER JOIN RunSpecPollutantProcess rspp ON (rspp.polProcessID=faca.polProcessID) +where rspp.polProcessID in (##pollutantProcessIDs##); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID AND HourDay.hourID = RunSpecHour.hourID; + +SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link +WHERE roadTypeID = 1 AND + zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT * INTO OUTFILE '##ModelYear##' +FROM ModelYear; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour INNER JOIN RunSpecHour USING (hourID); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +SELECT * INTO OUTFILE '##ExtendedIdleHours##' +FROM ExtendedIdleHours +WHERE yearID = ##context.year## + AND zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +SELECT DISTINCT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = TemperatureAdjustment.fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT RunSpecYear.* INTO OUTFILE '##RunSpecYear##' +FROM RunSpecYear; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecMonth,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND RunSpecMonth.monthID = ZoneMonthHour.monthID +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Processing + +-- CEIC-1: Calculate Temperature and NOx Humidity Adjustments + + +DROP TABLE IF EXISTS tappaft; +CREATE TABLE tappaft ( + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + minModelYearID INT NOT NULL, + maxModelYearID INT NOT NULL, + humidityCorrectionCoeff FLOAT NULL, + tempAdjustTermA FLOAT NULL, + tempAdjustTermB FLOAT NULL +); + +CREATE UNIQUE INDEX XPKtappaft ON tappaft +( + polProcessID ASC, + fuelTypeID ASC, + minModelYearID ASC, + maxModelYearID ASC +); + +ANALYZE TABLE tappaft; + +INSERT INTO tappaft(polProcessID, fuelTypeID, minModelYearID, maxModelYearID, humidityCorrectionCoeff, tempAdjustTermA, tempAdjustTermB) +SELECT ta.polProcessID, ta.fuelTypeID, ta.minModelYearID, ta.maxModelYearID, ft.humidityCorrectionCoeff, ta.tempAdjustTermA, + ta.tempAdjustTermB +FROM TemperatureAdjustment ta +INNER JOIN fueltype ft ON (ta.fueltypeID = ft.fueltypeID); + +DROP TABLE IF EXISTS METADjustment; +CREATE TABLE METAdjustment ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + minModelYearID INT NOT NULL, + maxModelYearID INT NOT NULL, + temperatureAdjustment FLOAT NULL, + K Float NULL, + temperature Float NULL, + tempAdjustTermA Float NULL, + tempAdjustTermB Float NULL, + specificHumidity Float NULL, + humidityCorrectionCoeff Float NULL +); + +CREATE UNIQUE INDEX XPKMETAdjustment ON METAdjustment +( + polProcessID ASC, + modelYearID ASC, + fuelTypeID ASC, + monthID ASC, + hourID ASC +); + +ANALYZE TABLE METADjustment; + +INSERT INTO METAdjustment(zoneID, monthID, hourID ,polProcessID, fuelTypeID, modelYearID, minModelYearID, maxModelYearID, + temperatureAdjustment, K, temperature, tempAdjustTermA, tempAdjustTermB, specificHumidity, humidityCorrectionCoeff) +SELECT zmh.zoneID, zmh.monthID, zmh.hourID, ta.polProcessID, ta.fuelTypeID, my.modelyearid, ta.minModelYearID, ta.maxModelYearID, + ((zmh.temperature - 75.0) * ta.tempAdjustTermA) AS temperatureAdjustment, + (GREATEST(21.0, LEAST(zmh.specificHumidity, 124.0))) AS K, + zmh.temperature, ta.tempAdjustTermA, ta.tempAdjustTermB, zmh.specificHumidity, ta.humidityCorrectionCoeff +FROM ZoneMonthHour zmh +INNER JOIN tappaft ta +JOIN modelyear my +WHERE zmh.zoneID = ##context.iterLocation.zoneRecordID## + AND MOD(ta.polProcessID,100) = 90 + AND my.modelYearID between minModelYearID and maxModelYearID; + +update METAdjustment set temperatureAdjustment = 1.0 + tempAdjustTermB * (temperature - 75.0) * (temperature - 75.0) + temperatureAdjustment; +update METAdjustment set K = 1.0 - (K - 75.0) * humidityCorrectionCoeff; + +-- flush tables; + +DROP TABLE IF EXISTS tappaft; + +-- CEIC 2 : caculate AC Adjustment Factor + +-- CEIC 2-a: Calculate AC On Fraction + +DROP TABLE IF EXISTS ACOnFraction; +CREATE TABLE ACOnFraction ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT, + ACActivityTermB FLOAT, + ACActivityTermC FLOAT, + heatIndex FLOAT +); + +CREATE UNIQUE INDEX XPKACOnFraction ON ACOnFraction +( + zoneID ASC, + monthID ASC, + hourID ASC +); + +ANALYZE TABLE ACOnFraction; + +INSERT INTO ACOnFraction(zoneID, monthID, hourID, ACOnFraction, ACActivityTermB, ACActivityTermC, heatIndex) +SELECT zmh.zoneID, zmh.monthID, zmh.hourID, + mgh.ACActivityTermA AS ACOnFraction, mgh.ACActivityTermB, mgh.ACActivityTermC, zmh.heatIndex +FROM ZoneMonthHour zmh +INNER JOIN MonthOfAnyYear may ON (may.monthID = zmh.monthID) +INNER JOIN MonthGroupHour mgh ON (mgh.monthGroupID = may.monthGroupID AND mgh.hourID = zmh.hourID); + +-- FLUSH TABLES; + +update ACOnFraction set ACOnFraction = ACOnFraction + (heatIndex * ACActivityTermB) + (ACActivityTermC * heatIndex * heatIndex); +update ACOnFraction set ACOnFraction = IF(ACOnFraction > 1.0, 1.0, ACOnFraction); +update ACOnFraction set ACOnFraction = IF(ACOnFraction < 0.0, 0.0, ACOnFraction); + +-- FLUSH TABLES; + +-- CREC 2-b: Calculate AC Activity Fraction + +DROP TABLE IF EXISTS temp1; +CREATE TABLE temp1 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT +); + +CREATE UNIQUE INDEX XPKtemp1 ON temp1 ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC +); + +INSERT INTO temp1 (zoneID, yearID, monthID, hourID, ACOnFraction) +SELECT acof.zoneID, ry.yearID, acof.monthID, acof.hourID, acof.ACOnFraction +FROM ACOnFraction acof +INNER JOIN RunSpecYear ry +WHERE ry.yearID = ##context.year##; + +DROP TABLE IF EXISTS temp2; +CREATE TABLE temp2 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + ACOnFraction FLOAT, + ACPenetrationFraction FLOAT, + ageID SMALLINT NOT NULL +); + +CREATE UNIQUE INDEX XPKtemp2 ON temp2 ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC, + modelYearID ASC, + sourceTypeID ASC +); + + +INSERT INTO temp2 (zoneID, yearID, monthID, hourID, modelYearID, sourceTypeID, ACOnFraction, ACPenetrationFraction, ageID) +SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, stmy.modelYearID, stmy.sourceTypeID, acof.ACOnFraction, stmy.ACPenetrationFraction, + (acof.yearID - stmy.modelYearID) AS ageID +FROM temp1 acof +INNER JOIN SourceTypeModelYear stmy; + +-- !!! Gwo Shyu 11/4/2009 the follwoing lines should equal the above. +-- INSERT INTO temp2 (zoneID, yearID, monthID, hourID, modelYearID, sourceTypeID, ACOnFraction, ACPenetrationFraction, ageID) +-- SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, stmy.modelYearID, stmy.sourceTypeID, acof.ACOnFraction, stmy.ACPenetrationFraction, +-- (acof.yearID - stmy.modelYearID) AS ageID +-- FROM temp1 acof, SourceTypeModelYear stmy; + +DROP TABLE IF EXISTS ACActivityFraction; +CREATE TABLE ACActivityFraction ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ACActivityFraction FLOAT +); + +CREATE UNIQUE INDEX XPKACActivityFraction ON ACActivityFraction ( + zoneID ASC, + yearID ASC, + monthID ASC, + hourID ASC, + sourceTypeID ASC, + modelYearID ASC +); +ANALYZE TABLE ACActivityFraction; + +INSERT INTO ACActivityFraction (zoneID, yearID, monthID, hourID, sourceTypeID, modelYearID, ACActivityFraction) +SELECT acof.zoneID, acof.yearID, acof.monthID, acof.hourID, acof.sourceTypeID, acof.modelYearID, + (acof.ACOnFraction * acof.ACPenetrationFraction * sta.functioningACFraction) AS ACActivityFraction +FROM temp2 acof +INNER JOIN SourceTypeAge sta ON (sta.sourceTypeID = acof.sourceTypeID AND sta.ageID=acof.ageID) +order by null; + +-- FLUSH TABLES; + +-- CEIC 2-c: Calculate AC Adjustment Factor + +DROP TABLE IF EXISTS ACAdjustment; +CREATE TABLE ACAdjustment ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + ACAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKACAdjustment ON ACAdjustment ( + sourceTypeID ASC, + polProcessID ASC, + modelYearID ASC, + monthID ASC, + hourID ASC +); +ANALYZE TABLE ACAdjustment; + +insert ignore into fullACAdjustment (sourceTypeID, polProcessID, opModeID, fullACAdjustment) +select distinct sourceTypeID, polProcessID, 200, 1.0 +from runSpecSourceFuelType, pollutantProcessAssoc +where (chainedTo1 is null or pollutantID in (118)); + +INSERT INTO ACAdjustment (zoneID,monthID,hourID,sourceTypeID,modelYearID,polProcessID,ACAdjustment) +SELECT acaf.zoneID, acaf.monthID, acaf.hourID, + acaf.sourceTypeID, acaf.modelYearID, faca.polProcessID, + (((faca.fullACAdjustment - 1.0) * acaf.ACActivityFraction) + 1.0) AS ACAdjustment +FROM ACActivityFraction acaf +INNER JOIN FullACAdjustment faca ON (acaf.sourceTypeID=faca.sourceTypeID + and faca.opModeID=200 AND MOD(faca.polProcessID,100)=90) +order by null; +-- FLUSH TABLES; + +-- CEIC-3: SourceBin-Weighted Weight Emission Rates + +DROP TABLE IF EXISTS EmissionRate2; + +CREATE TABLE IF NOT EXISTS EmissionRate2( + sourceBinID bigint(20) NOT NULL, + polProcessID int NOT NULL, + opModeID smallint NOT NULL, + modelYearID smallint NOT NULL, + fuelTypeID smallint NOT NULL, + sourceTypeID smallint NOT NULL, + meanBaseRate float NULL, + sourceBinActivityFraction float NULL, + PRIMARY KEY (sourceBinID, polProcessID, opModeID, modelYearID, fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE EmissionRate2; + +INSERT IGNORE INTO EmissionRate2 (sourceBinID, polProcessID, opModeID, meanBaseRate, + modelYearID, fuelTypeID, sourceTypeID, sourceBinActivityFraction) +SELECT DISTINCT er.sourceBinID, er.polProcessID, er.opModeID, er.meanBaseRate, + stmy.modelYearID, sb.fuelTypeID, stmy.sourceTypeID, sbd.sourceBinActivityFraction +FROM EmissionRate er, SourceBin sb, RunSpecSourceFuelType rsft, SourceBinDistribution sbd, SourceTypeModelYear stmy +WHERE + er.opModeID = 200 + AND er.sourceBinID = sb.sourceBinID + AND sb.fuelTypeID = rsft.fuelTypeID + AND er.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceBinID = sb.sourceBinID + AND sbd.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID + AND stmy.modelYearID <= ##context.year## +; + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + sourceBinID BIGINT(20) NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + +CREATE UNIQUE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC +); +ANALYZE TABLE SBWeightedEmissionRate; + +INSERT INTO SBWeightedEmissionRate (sourceBinID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, meanBaseRate) +SELECT er.sourceBinID, er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, + SUM(er.sourceBinActivityFraction * er.meanBaseRate) AS meanBaseRate +FROM EmissionRate2 er +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID +order by null; + +-- FLUSH TABLES; + +-- CEIC-4: Apply Adjustment Factors to Emission Rates + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +CREATE TABLE WeightedAndAdjustedEmissionRate ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + +-- CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate ON WeightedAndAdjustedEmissionRate ( +-- modelYearID ASC, +-- zoneID ASC, +-- monthID ASC, +-- hourID ASC, +-- sourceTypeID ASC +-- ); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate ON WeightedAndAdjustedEmissionRate ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC +); + +CREATE INDEX XPKWeightedAndAdjustedEmissionRate_A1 ON WeightedAndAdjustedEmissionRate ( + zoneID ASC, + monthID ASC, + hourID ASC, + sourceTypeID ASC, + modelYearID ASC +); + +ANALYZE TABLE WeightedAndAdjustedEmissionRate; + +CREATE TABLE IF NOT EXISTS CriteriaAndPMExtendedIdleEmissions ( someValue int not null primary key ); + +-- 11/4/2009 by Gwo S. - Changed from "LEFT JOIN ACAdjustment" to "INNER JOIN ACAdjustment" +-- because modelYearIDs with ageIDs > 31 need to be dropped. +-- This is to prevent from null in the later tables. +-- 04/30/2013 by Ed G. - modelYearID added to METAadjustment table. + +INSERT INTO WeightedAndAdjustedEmissionRate (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, hourID, meanBaseRate) +SELECT er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, + ##context.iterLocation.zoneRecordID## as zoneID, aca.monthID, aca.hourID, + (er.meanBaseRate * aca.ACAdjustment * meta.temperatureAdjustment * IF(ppa.pollutantID=3,meta.K,1.0)) AS meanBaseRate +FROM SBWeightedEmissionRate er +INNER JOIN pollutantprocessassoc ppa ON (ppa.polProcessID=er.polProcessID) +INNER JOIN ACAdjustment aca ON (aca.sourceTypeID=er.sourceTypeID AND aca.polProcessID=er.polProcessID AND aca.modelYearID=er.modelYearID) +LEFT JOIN METAdjustment meta ON (meta.polProcessID=er.polProcessID AND meta.fuelTypeID=er.fuelTypeID AND meta.modelYearID=er.modelYearID + AND meta.monthID=aca.monthID AND meta.hourID=aca.hourID) +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, aca.monthID, aca.hourID +order by null; + +-- meta.zoneID has already been locked down to the context's zone, same with ACAdjustment's zone + +-- Apply humidity effects for NOx (pollutant/process 390) +-- update WeightedAndAdjustedEmissionRate, ZoneMonthHour, FuelType +-- set meanBaseRate=(1.0 - (GREATEST(21.0,LEAST(specificHumidity,124.0))-75.0)*humidityCorrectionCoeff)*meanBaseRate +-- where WeightedAndAdjustedEmissionRate.polProcessID=390 +-- and WeightedAndAdjustedEmissionRate.zoneID=ZoneMonthHour.zoneID +-- and WeightedAndAdjustedEmissionRate.monthID=ZoneMonthHour.monthID +-- and WeightedAndAdjustedEmissionRate.hourID=ZoneMonthHour.hourID +-- and WeightedAndAdjustedEmissionRate.fuelTypeID=FuelType.fuelTypeID; + + +-- FLUSH TABLES; + +-- CEIC-5: Multiply Emission Rates by Activity + +DROP TABLE IF EXISTS EIH2; +CREATE TABLE EIH2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + hourID SMALLINT, + dayID SMALLINT, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + extendedIdleHours FLOAT +); + +CREATE UNIQUE INDEX XPKEIH2 ON EIH2 ( + ageID ASC, + yearID ASC, + zoneID ASC, + monthID ASC, + hourDayID ASC, + sourceTypeID ASC); + +ANALYZE TABLE EIH2; + +-- FLUSH TABLES; + +truncate table EIH2; + + +INSERT INTO EIH2 (zoneID, monthID, hourDayID, hourID, dayID, yearID, ageID, sourceTypeID, extendedIdleHours) +SELECT eih.zoneID, eih.monthID, eih.hourDayID, hrdy.hourID, hrdy.dayID, eih.yearID, eih.ageID, eih.sourceTypeID, eih.extendedIdleHours +FROM extendedIdleHours eih +INNER JOIN hourday hrdy ON (hrdy.hourDayID=eih.hourDayID); + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS AdjustedEmissionResults; +CREATE TABLE AdjustedEmissionResults ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKAdjustedEmissionResults ON AdjustedEmissionResults ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE AdjustedEmissionResults; + +INSERT INTO AdjustedEmissionResults (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, waer.zoneID, waer.monthID, + waer.hourID, eih.dayID, eih.yearID, eih.ageID, + (waer.meanBaseRate * eih.extendedIdleHours) AS emissionQuant +FROM WeightedAndAdjustedEmissionRate waer +INNER JOIN EIH2 eih ON (eih.zoneID=waer.zoneID AND eih.monthID=waer.monthID + AND eih.hourID=waer.hourID AND eih.sourceTypeID=waer.sourceTypeID) +INNER JOIN RunSpecYear ry on (eih.yearID=ry.yearID) +WHERE eih.ageID = eih.yearID - waer.modelYearID +GROUP BY waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, + eih.zoneID, eih.monthID, eih.hourID, eih.dayID, yearID +order by null; +-- FLUSH TABLES; + +-- CEIC-6: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID + +DROP TABLE IF EXISTS MOVESWorkerOutputTmp216; +TRUNCATE MOVESWorkerOutput; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, pollutantID, + processID, sourceTypeID, fuelTypeID, modelYearID, SCC, emissionQuant) +SELECT ##context.iterLocation.stateRecordID## AS stateID, + ##context.iterLocation.countyRecordID## AS countyID, aer.zoneID, lnk.linkID, lnk.roadTypeID, + aer.yearID, aer.monthID, aer.dayID, aer.hourID, ppa.pollutantID, ppa.processID, aer.sourceTypeID, + aer.fuelTypeID, aer.modelYearID, NULL AS SCC, aer.emissionQuant AS emissionQuant +FROM AdjustedEmissionResults aer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = aer.polProcessID) +INNER JOIN Link lnk ON (lnk.zoneID=aer.zoneID) +WHERE lnk.roadTypeID=1 +order by null; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS EIH2; +DROP TABLE IF EXISTS temp1; +DROP TABLE IF EXISTS temp2; +DROP TABLE IF EXISTS tmp216; +DROP TABLE IF EXISTS tappaft; +DROP TABLE IF EXISTS EmissionRate2; +DROP TABLE IF EXISTS METADjustment; +DROP TABLE IF EXISTS ACOnFraction; +DROP TABLE IF EXISTS ACActivityFraction; +DROP TABLE IF EXISTS ACAdjustment; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +DROP TABLE IF EXISTS MOVESWorkerOutputTmp216; +DROP TABLE IF EXISTS adjustedemissionresults; +drop table if exists oneCountyYearGeneralFuelRatio; +drop table if exists CriteriaAndPMExtendedIdleEmissions; +-- End Section Cleanup + diff --git a/database/CriteriaRunningCalculator.sql b/database/CriteriaRunningCalculator.sql new file mode 100644 index 0000000..f56d529 --- /dev/null +++ b/database/CriteriaRunningCalculator.sql @@ -0,0 +1,1176 @@ +-- Version 2013-11-19 +-- Author Wesley Faler +-- Author Ed Glover, EPA +-- Author epa - Mitch C. (performance rewrites) +-- Author epa - ahuang (Bug 431 - Modified CREC 8 to disable humidity effects for pollutants other than +-- NOx. Add Temporary table WeightedAndAdjustedEmissionRate_TEMP1 +-- and WeightedAndAdjustedEmissionRate_TEMP2). +-- Data extraction into SHO and steps 5,6,and 7b modified by EPA-Mitch C +-- in attempt to fix bug 205 +-- Step 4d join condition to Link fixed by EPA Mitch C and Gwo S. + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.criteriaRatio##; +TRUNCATE criteriaRatio; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.FullACAdjustment##; +TRUNCATE FullACAdjustment; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.ModelYear##; +TRUNCATE ModelYear; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.sho##; +TRUNCATE sho; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##criteriaRatio##' +FROM criteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); + +-- SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '??EmissionRateByAge??' +-- FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +-- AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +-- AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +-- AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +-- AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +-- AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND SourceTypeModelYear.modelYearID >= ??context.year?? - 30 +-- AND EmissionRateByAge.polProcessID IN (??pollutantProcessIDs??); + +-- Section FirstBundle +drop table if exists CriteriaRunningEmissionRateByAge; + +create table CriteriaRunningEmissionRateByAge +SELECT EmissionRateByAge.* +FROM EmissionRateByAge +WHERE EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.sourceBinID in (##macro.csv.all.sourceBinID##); +-- End Section FirstBundle + +cache SELECT CriteriaRunningEmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' FROM CriteriaRunningEmissionRateByAge; + +SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +INNER JOIN MonthOfAnyYear moy ON moy.monthGroupID = rsmg.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND moy.monthID = ##context.monthID## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN MonthOfAnyYear moy ON (moy.monthGroupID = RunSpecMonthGroup.monthGroupID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND moy.monthID = ##context.monthID##; + +cache SELECT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +WHERE fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache SELECT faca.* INTO OUTFILE '##FullACAdjustment##' +FROM FullACAdjustment faca +WHERE faca.sourceTypeID in (##macro.csv.all.sourceTypeID##) +AND faca.polProcessID in (##macro.csv.all.polProcessID##); + +cache SELECT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay +WHERE hourDayID in (##macro.csv.all.hourDayID##); + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##ModelYear##' +FROM ModelYear; + +SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour +INNER JOIN MonthOfAnyYear moy ON (moy.monthGroupID = MonthGroupHour.monthGroupID) +WHERE moy.monthID = ##context.monthID## +AND MonthGroupHour.hourID in (##macro.csv.all.hourID##); + +SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE MonthOfAnyYear.monthID = ##context.monthID##; + +cache SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND sourceTypeID in (##macro.csv.all.sourceTypeID##); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +SELECT * INTO OUTFILE '##SHO##' +FROM SHO +WHERE linkID = ##context.iterLocation.linkRecordID## +AND monthID = ##context.monthID## +AND yearID = ##context.year##; + +-- SELECT DISTINCT SourceBin.* INTO OUTFILE '??SourceBin??' +-- FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE polProcessID IN (??pollutantProcessIDs??) +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +-- AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +-- AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +-- SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '??SourceBinDistribution??' +-- FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE polProcessID IN (??pollutantProcessIDs??) +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND SourceTypeModelYear.modelYearID >= ??context.year?? - 30 +-- AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +-- AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +-- AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, SourceTypeModelYear +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge +WHERE SourceTypeAge.sourceTypeID in (##macro.csv.all.sourceTypeID##); + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear +WHERE SourceTypeModelYear.sourceTypeID in (##macro.csv.all.sourceTypeID##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##) +AND fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND ZoneMonthHour.monthID = ##context.monthID## +AND ZoneMonthHour.hourID in (##macro.csv.all.hourID##); + +-- End Section Extract Data + +-- Section Processing + +-- +-- CREC 1-a: Complete I/M adjustment fraction information +-- +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT +); + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + processID ASC, + pollutantID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- +-- CREC 2-a: Combine GPA and non GPA fuel adjustment factors +-- +DROP TABLE IF EXISTS CountyFuelAdjustment; +CREATE TABLE CountyFuelAdjustment ( + countyID INTEGER NOT NULL, + polProcessID int NOT NULL, + modelYearID INTEGER NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE INDEX CountyFuelAdjustment1 ON CountyFuelAdjustment +( + polProcessID ASC, + modelYearID ASC +); + +CREATE INDEX CountyFuelAdjustment2 ON CountyFuelAdjustment +( + fuelFormulationID ASC +); + +INSERT INTO CountyFuelAdjustment +SELECT countyID, polProcessID, modelYearID, sourceTypeID, +fuelFormulationID, ratio+GPAFract*(ratioGPA-ratio) +FROM criteriaRatio +INNER JOIN County c; + +-- +-- CREC 2-b: Aggregate county fuel adjustments to fuel type +-- +DROP TABLE IF EXISTS FuelSupplyWithFuelType; +CREATE TABLE FuelSupplyWithFuelType ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + marketShare FLOAT +); + +CREATE INDEX FuelSupplyWithFuelType1 ON FuelSupplyWithFuelType +( + fuelFormulationID ASC +); + +INSERT INTO FuelSupplyWithFuelType +SELECT ##context.iterLocation.countyRecordID## as countyID, yearID, monthID, fs.fuelFormulationID, fuelTypeID, marketShare +FROM FuelSupply fs +INNER JOIN FuelFormulation ff ON ff.fuelFormulationID = fs.fuelFormulationID +INNER JOIN FuelSubType fst ON fst.fuelSubTypeID = ff.fuelSubTypeID +INNER JOIN MonthOfAnyYear may ON fs.monthGroupID = may.monthGroupID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +WHERE y.yearID = ##context.year##; + +DROP TABLE IF EXISTS FuelSupplyAdjustment; +CREATE TABLE FuelSupplyAdjustment ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKFuelSupplyAdjustment ON FuelSupplyAdjustment +( + countyID ASC, + yearID ASC, + monthID ASC, + polProcessID ASC, + modelYearID ASC, + sourceTypeID ASC, + fuelTypeID ASC +); + +INSERT INTO FuelSupplyAdjustment +SELECT cfa.countyID, yearID, monthID, cfa.polProcessID, cfa.modelYearID, + sourceTypeID, fuelTypeID, SUM(fuelAdjustment*marketShare) +FROM CountyFuelAdjustment cfa +INNER JOIN FuelSupplyWithFuelType fsft ON ( + fsft.fuelFormulationID = cfa.fuelFormulationID) +GROUP BY cfa.countyID, yearID, monthID, cfa.polProcessID, cfa.modelYearID, + sourceTypeID, fuelTypeID ORDER BY modelYearID ASC; +-- Note no need to join fsft and cfa on countyID since both tables already filtered to 1 county +-- +-- CREC 3: Calculate temperature adjustment factors +-- +DROP TABLE IF EXISTS METADjustment; +CREATE TABLE METAdjustment ( + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + minModelYearID INT NOT NULL, + maxModelYearID INT NOT NULL, + temperatureAdjustment FLOAT +); + +CREATE INDEX METAdjustment1 ON METAdjustment +( + zoneID ASC, + monthID ASC, + hourID ASC, + modelYearID ASC, + polProcessID ASC +); + +INSERT INTO METAdjustment (zoneID, monthID, hourID, polProcessID, fuelTypeID, modelYearID, minModelYearID, maxModelYearID, + temperatureAdjustment) +SELECT zoneID, monthID, hourID, ta.polProcessID, fuelTypeID, my.modelYearID, ta.minModelYearID, ta.maxModelYearID, +1.0 + (temperature-75)*(tempAdjustTermA + (temperature-75)*tempAdjustTermB) +FROM ZoneMonthHour zmh +INNER JOIN TemperatureAdjustment ta +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = ta.polProcessID) +JOIN modelyear my +WHERE zmh.zoneID = ##context.iterLocation.zoneRecordID## +AND ppa.processID = 1 +AND my.modelyearid between ta.minModelYearID and ta.maxModelYearID; + +-- +-- CREC 4-a: Calculate AC On Fraction +-- +DROP TABLE IF EXISTS ACOnFraction; +CREATE TABLE ACOnFraction ( + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT +); + +CREATE UNIQUE INDEX XPKACOnFraction ON ACOnFraction +( + zoneID ASC, + monthID ASC, + hourID ASC +); + +-- LEAST(GREATEST(ACActivityTermA+heatIndex*(ACActivityTermB+ACActivityTermC*heatIndex),0),1.0,0.0) + +INSERT INTO ACOnFraction +SELECT + zoneID, zmh.monthID, zmh.hourID, + LEAST(GREATEST(ACActivityTermA+heatIndex*(ACActivityTermB+ACActivityTermC*heatIndex),0),1.0) as ACOnFraction +FROM ZoneMonthHour zmh +INNER JOIN MonthOfAnyYear may ON (may.monthID = zmh.monthID) +INNER JOIN MonthGroupHour mgh ON (mgh.monthGroupID = may.monthGroupID +AND mgh.hourID = zmh.hourID); + +-- +-- CREC 4-b: Calculate AC Activity Fraction +-- +DROP TABLE IF EXISTS ACActivityFraction; +CREATE TABLE ACActivityFraction ( + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ACActivityFraction FLOAT +); + +CREATE INDEX ACActivityFraction1 ON ACActivityFraction ( + hourID ASC +); +CREATE INDEX ACActivityFraction2 ON ACActivityFraction ( + sourceTypeID ASC +); + + +INSERT INTO ACActivityFraction +SELECT zoneID, monthID, hourID, sta.sourceTypeID, modelYearID, +ACOnFraction*ACPenetrationFraction*functioningACFraction +FROM ACOnFraction acof +INNER JOIN SourceTypeModelYear stmy +INNER JOIN SourceTypeAge sta ON ( +sta.sourceTypeID = stmy.sourceTypeID AND +sta.ageID = ##context.year## - stmy.modelYearID); + +-- +-- CREC 4-c: Weight FullACAdjustment Factors by Operating Mode +-- +DROP TABLE IF EXISTS WeightedFullACAdjustment; +CREATE TABLE WeightedFullACAdjustment ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + linkID INTEGER NOT NULL, + hourDayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + weightedFullACAdjustment FLOAT +); + +CREATE INDEX WeightedFullACAdjustment1 ON WeightedFullACAdjustment ( + hourDayID +); +CREATE INDEX WeightedFullACAdjustment2 ON WeightedFullACAdjustment ( + sourceTypeID +); + +/* +INSERT INTO WeightedFullACAdjustment +SELECT omd.sourceTypeID, omd.polProcessID, linkID, hourDayID, + SUM(fullACAdjustment*opModeFraction) +FROM OpModeDistribution omd +INNER JOIN FullACAdjustment faca ON (faca.sourceTypeID=omd.sourceTypeID +AND faca.polProcessID=omd.polProcessID AND faca.opModeID=omd.opModeID +AND faca.opModeID < 1000) +GROUP BY omd.sourceTypeID, omd.polProcessID, linkID, hourDayID +ORDER BY NULL +*/ + +INSERT INTO WeightedFullACAdjustment +SELECT omd.sourceTypeID, omd.polProcessID, linkID, hourDayID, omd.opModeID, + fullACAdjustment +FROM OpModeDistribution omd +INNER JOIN FullACAdjustment faca ON (faca.sourceTypeID=omd.sourceTypeID +AND faca.polProcessID=omd.polProcessID AND faca.opModeID=omd.opModeID); + +-- +-- CREC 4-d: Calculate AC Adjustment Factor +-- +DROP TABLE IF EXISTS ACAdjustment; +CREATE TABLE ACAdjustment ( + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + ACAdjustment FLOAT +); + +CREATE INDEX ACAdjustment1 ON ACAdjustment ( + zoneID ASC, + monthID ASC, + hourID ASC, + polProcessID ASC, + opModeID ASC +); + +-- Following statement formerly ordered results by modelYearID descending +-- this seems unnecessary and was removed +INSERT INTO ACAdjustment +SELECT acaf.zoneID, monthID, hd.hourID, hd.dayID, +acaf.sourceTypeID, modelYearID, polProcessID, opModeID, + 1+((weightedFullACAdjustment-1)*ACActivityFraction) +FROM ACActivityFraction acaf +INNER JOIN Link l ON (acaf.zoneID=l.zoneID) +INNER JOIN HourDay hd ON (hd.hourID=acaf.hourID) +INNER JOIN WeightedFullACAdjustment wfaca ON ( +wfaca.sourceTypeID = acaf.sourceTypeID AND +wfaca.linkID = l.linkID AND +wfaca.hourDayID = hd.hourDayID); + +-- +-- CREC-5: Weight emission rates by source bin +-- +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + zoneID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + polProcessID ASC, + sourceTypeID ASC, + opModeID ASC +); + +INSERT INTO SBWeightedEmissionRate +SELECT ##context.iterLocation.zoneRecordID## as zoneID, ##context.year## as yearID, + erim.polProcessID, sourceTypeID, (##context.year##-age.ageID) as modelYearID, sb.fuelTypeID, erim.opModeID, + SUM(sourceBinActivityFraction*meanBaseRate), SUM(sourceBinActivityFraction*meanBaseRateIM) +FROM EmissionRateByAge erim +INNER JOIN AgeCategory age ON (age.ageGroupID=erim.ageGroupID) +INNER JOIN SourceTypeModelYear stmy ON (stmy.modelYearID=##context.year##-age.ageID) +INNER JOIN SourceBinDistribution sbd ON (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID +AND sbd.polProcessID=erim.polProcessID AND sbd.sourceBinID=erim.sourceBinID) +INNER JOIN SourceBin sb ON (sbd.sourceBinID=sb.sourceBinID) +GROUP BY erim.polProcessID, sourceTypeID, age.ageID, sb.fuelTypeID, erim.opModeID +ORDER BY NULL; + +-- +-- CREC-6: Weight emission rates by operating mode +-- +DROP TABLE IF EXISTS FullyWeightedEmissionRate; +CREATE TABLE FullyWeightedEmissionRate ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT, + opModeFraction FLOAT +); + +CREATE UNIQUE INDEX XPKFullyWeightedEmissionRate ON FullyWeightedEmissionRate ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + hourDayID ASC, + opModeID ASC +); + +CREATE INDEX OPModeDistributionSpecial ON OpModeDistribution ( + polProcessID ASC, + sourceTypeID ASC, + opModeID ASC +); + +INSERT INTO FullyWeightedEmissionRate +SELECT linkID, yearID, sbwer.polProcessID, sbwer.sourceTypeID, modelYearID, fuelTypeID, hourDayID, opModeID, + meanBaseRate, meanBaseRateIM, opModeFraction +FROM SBWeightedEmissionRate sbwer +INNER JOIN OpModeDistribution omd + USING(polProcessID, sourceTypeID, opModeID); + +-- +-- CREC-7-a: Combine Temperature and AC Adjustment Factors +-- +DROP TABLE IF EXISTS TempAndACAdjustment; +CREATE TABLE TempAndACAdjustment ( + zoneID INTEGER NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + tempAndACAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKTempAndACAdjustment ON TempAndACAdjustment ( + zoneID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + opModeID ASC, + tempAndACAdjustment +); + +INSERT INTO TempAndACAdjustment +SELECT ma.zoneID, ma.polProcessID, sourceTypeID, aca.modelYearID, + fuelTypeID, ma.monthID, ma.hourID, aca.dayID, aca.opModeID, + temperatureAdjustment*ACAdjustment +FROM METAdjustment ma +INNER JOIN ACAdjustment aca ON ( +aca.zoneID=ma.zoneID AND +aca.monthID=ma.monthID AND +aca.hourID=ma.hourID AND +aca.polProcessID=ma.polProcessID AND +aca.modelYearID=ma.modelYearID); + +-- +-- CREC 7-b: Apply fuel adjustment to fully weighted emission rates +-- +DROP TABLE IF EXISTS FuelAdjustedRate; +CREATE TABLE FuelAdjustedRate ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + fuelAdjustedRate FLOAT, + fuelAdjustedRateIM FLOAT, + opModeFraction FLOAT +); + +CREATE UNIQUE INDEX XPKFuelAdjustedRate ON FuelAdjustedRate ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + monthID ASC, + hourDayID ASC, + opModeID ASC +); + +CREATE INDEX XPKFullyWeightedEmissionRate2 ON FullyWeightedEmissionRate ( + sourceTypeID ASC, + yearID ASC, + polProcessID ASC, + modelYearID ASC, + fuelTypeID ASC, + opModeID ASC +); + +CREATE INDEX XPKFuelSupplyAdjustment2 ON FuelSupplyAdjustment ( + sourceTypeID ASC, + yearID ASC, + polProcessID ASC, + modelYearID ASC, + fuelTypeID ASC +); + +ANALYZE TABLE FullyWeightedEmissionRate; +ANALYZE TABLE FuelSupplyAdjustment; + +INSERT INTO FuelAdjustedRate +SELECT linkID, fwer.yearID, fwer.polProcessID, fwer.sourceTypeID, fwer.modelYearID, + fwer.fuelTypeID, m.monthID, fwer.hourDayID, fwer.opModeID, + meanBaseRate * ifnull(fuelAdjustment,1.0), + meanBaseRateIM * ifnull(fuelAdjustment,1.0), + opModeFraction +FROM +MonthOfAnyYear m +INNER JOIN FullyWeightedEmissionRate fwer +LEFT OUTER JOIN FuelSupplyAdjustment fsa ON ( + fsa.yearID = fwer.yearID AND + fsa.polProcessID = fwer.polProcessID AND + fsa.modelYearID = fwer.modelYearID AND + fsa.sourceTypeID = fwer.sourceTypeID AND + fsa.fuelTypeID = fwer.fuelTypeID AND + fsa.monthID = m.monthID +); + +-- +-- CREC 7-c: Apply temperature and AC adjustment to fuel-adjusted emission rate. +-- +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +CREATE TABLE WeightedAndAdjustedEmissionRate ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate ON WeightedAndAdjustedEmissionRate ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + hourID ASC, + dayID ASC, + monthID ASC +); + +CREATE INDEX XPKFuelAdjustedRate2 ON FuelAdjustedRate ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + monthID ASC +); + +ANALYZE TABLE FuelAdjustedRate; +ANALYZE TABLE Link; +ANALYZE TABLE HourDay; +ANALYZE TABLE TempAndACAdjustment; + +INSERT INTO WeightedAndAdjustedEmissionRate +SELECT l.linkID, yearID, taca.polProcessID, taca.sourceTypeID, taca.modelYearID, + taca.fuelTypeID, taca.hourID, taca.dayID, taca.monthID, + sum(fuelAdjustedRate*tempAndACAdjustment*opModeFraction), + sum(fuelAdjustedRateIM*tempAndACAdjustment*opModeFraction) +FROM FuelAdjustedRate far +INNER JOIN Link l ON (l.linkID=far.linkID) +INNER JOIN HourDay hd ON (hd.hourDayID=far.hourDayID) +INNER JOIN TempAndACAdjustment taca ON ( + taca.zoneID=l.zoneID AND + taca.polProcessID=far.polProcessID AND + taca.sourceTypeID=far.sourceTypeID AND + taca.modelYearID=far.modelYearID AND + taca.fuelTypeID=far.fuelTypeID AND + taca.monthID=far.monthID AND + taca.dayID=hd.dayID AND + taca.hourID=hd.hourID AND + taca.opModeID=far.opModeID) +group by l.linkID, yearID, taca.polProcessID, taca.sourceTypeID, taca.modelYearID, + taca.fuelTypeID, taca.hourID, taca.dayID, taca.monthID +order by null; + +-- +-- CREC 8: Calculate and Apply Humidity Correction Factor to NOx Emissions +-- + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2_TEMP1; +CREATE TABLE WeightedAndAdjustedEmissionRate2_TEMP1 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate2_TEMP1 ON WeightedAndAdjustedEmissionRate2_TEMP1 ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + monthID ASC, + dayID ASC, + hourID ASC +); + +ANALYZE TABLE WeightedAndAdjustedEmissionRate; +ANALYZE TABLE Link; +ANALYZE TABLE ZoneMonthHour; +ANALYZE TABLE FuelType; + +INSERT INTO WeightedAndAdjustedEmissionRate2_TEMP1 +SELECT l.linkID, yearID, polProcessID, sourceTypeID, waer.fuelTypeID, modelYearID, waer.monthID, dayID, + waer.hourID, + (1.0 - (GREATEST(21.0,LEAST(specificHumidity,124.0))-75.0)*humidityCorrectionCoeff)*meanBaseRate, + (1.0 - (GREATEST(21.0,LEAST(specificHumidity,124.0))-75.0)*humidityCorrectionCoeff)*meanBaseRateIM +FROM WeightedAndAdjustedEmissionRate waer +INNER JOIN Link l ON (l.linkID=waer.linkID) +INNER JOIN ZoneMonthHour zmh ON ( +zmh.monthID=waer.monthID AND +zmh.zoneID=l.zoneID AND +zmh.hourID=waer.hourID) AND +polprocessid = 301 +INNER JOIN FuelType ft ON (ft.fuelTypeID=waer.fuelTypeID); + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2_TEMP2; +CREATE TABLE WeightedAndAdjustedEmissionRate2_TEMP2 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate_TEMP2 ON WeightedAndAdjustedEmissionRate2_TEMP2 ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + monthID ASC, + dayID ASC, + hourID ASC +); + +INSERT INTO WeightedAndAdjustedEmissionRate2_TEMP2 +SELECT linkID, yearID, polProcessID, sourceTypeID, fuelTypeID, + modelYearID, monthID, dayID, hourID, meanBaseRate, meanBaseRateIM +FROM WeightedAndAdjustedEmissionRate +WHERE polProcessID != 301; + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2; +CREATE TABLE WeightedAndAdjustedEmissionRate2 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate2 ON WeightedAndAdjustedEmissionRate2 ( + linkID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + monthID ASC, + dayID ASC, + hourID ASC +); + +INSERT INTO WeightedAndAdjustedEmissionRate2 +(SELECT * FROM WeightedAndAdjustedEmissionRate2_TEMP1) +UNION +(SELECT * FROM WeightedAndAdjustedEmissionRate2_TEMP2); + +-- +-- CREC 9: Multiply fully weighted and adjusted emission rates by source hour operating (SHO) +-- activity to generate inventory. +-- +DROP TABLE IF EXISTS SHO2; +CREATE TABLE SHO2 ( + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + SCC CHAR(10), + SHO FLOAT NULL +); +CREATE INDEX XPKSHO2 ON SHO2 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); +ANALYZE TABLE sho; + +INSERT INTO SHO2 SELECT +yearID, monthID, hd.dayID, hd.hourID, sourceTypeID, +yearID - ageID AS modelYearID, NULL AS SCC, SHO +FROM SHO sho +INNER JOIN HourDay hd ON (hd.hourDayID=sho.hourDayID); + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate3; +CREATE TABLE WeightedAndAdjustedEmissionRate3 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate31 ON WeightedAndAdjustedEmissionRate3 ( + linkID ASC, + yearID ASC, + pollutantID ASC, + processID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + monthID ASC, + dayID ASC, + hourID ASC +); + +INSERT INTO WeightedAndAdjustedEmissionRate3 +SELECT linkID, yearID, pollutantID, processID, sourceTypeID, fuelTypeID, + modelYearID, monthID, dayID, hourID, meanBaseRate, meanBaseRateIM +FROM WeightedAndAdjustedEmissionRate2 waer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID=waer.polProcessID); + +DROP TABLE IF EXISTS SHO3; +CREATE TABLE SHO3 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + SCC CHAR(10), + emissionQuant FLOAT NULL, + emissionQuantIM FLOAT NULL +); +CREATE INDEX XPKSHO3 ON SHO3 ( + linkID asc, + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc, + pollutantID asc, + processID asc, + fuelTypeID asc +); + +CREATE INDEX XPKSHO22 ON SHO2 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); + +CREATE INDEX XPKWeightedAndAdjustedEmissionRate32 ON WeightedAndAdjustedEmissionRate3 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); + +ANALYZE TABLE SHO2; + +INSERT INTO SHO3 +SELECT linkID, sho2.yearID, sho2.monthID, sho2.dayID, sho2.hourID, + sho2.sourceTypeID, sho2.modelYearID, pollutantID, processID, fuelTypeID, + scc, + sho * meanBaseRate AS emissionQuant, + sho * meanBaseRateIM AS emissionQuantIM +FROM SHO2 sho2 +INNER JOIN WeightedAndAdjustedEmissionRate3 waer ON ( + waer.yearID=sho2.yearID AND + waer.monthID=sho2.monthID AND + waer.dayID=sho2.dayID AND + waer.hourID=sho2.hourID AND + waer.sourceTypeID=sho2.sourceTypeID AND + waer.modelYearID=sho2.modelYearID); + +alter table MOVESWorkerOutput add emissionQuantIM float null; + +ANALYZE TABLE sho3; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, + pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, SCC, emissionQuant, emissionQuantIM) +SELECT ##context.iterLocation.stateRecordID##, ##context.iterLocation.countyRecordID##, + l.zoneID, l.linkID, l.roadTypeID, yearID, monthID, dayID, hourID, + pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, SCC, emissionQuant, emissionQuantIM +FROM SHO3 sho3 +INNER JOIN Link l ON (l.linkID = sho3.linkID); + +-- Apply IM +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS ACActivityFraction; +DROP TABLE IF EXISTS ACAdjustment; +DROP TABLE IF EXISTS ACOnFraction; +DROP TABLE IF EXISTS CountyFuelAdjustment; +DROP TABLE IF EXISTS EmissionRateWithIM; +DROP TABLE IF EXISTS FuelAdjustedRate; +DROP TABLE IF EXISTS FuelSupplyAdjustment; +DROP TABLE IF EXISTS FuelSupplyWithFuelType; +DROP TABLE IF EXISTS FullyWeightedEmissionRate; +drop table if exists IMCoverageMergedUngrouped; +DROP TABLE IF EXISTS METAdjustment; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS SHO3; +DROP TABLE IF EXISTS TempAndACAdjustment; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2_TEMP1; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate2_TEMP2; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate3; +DROP TABLE IF EXISTS WeightedFullACAdjustment; +-- End Section Cleanup diff --git a/database/CriteriaStartCalculator.sql b/database/CriteriaStartCalculator.sql new file mode 100644 index 0000000..730ee66 --- /dev/null +++ b/database/CriteriaStartCalculator.sql @@ -0,0 +1,782 @@ +-- Version 2013-09-15 +-- Author Ed Glover +-- Author Wesley Faler +-- Author Ed Campbell +-- Add deterioration to HC,CO and NOx for starts - Gwo Shyu, EPA, 11/12/2008 +-- Modified to add exponential start temperature equation - Ed Glover & David Hawkins 3/26/2013 + +-- Section Create Remote Tables for Extracted Data +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.criteriaRatio##; +TRUNCATE criteriaRatio; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.StartTempAdjustment##; +TRUNCATE TABLE StartTempAdjustment; + +##create.Starts##; +TRUNCATE TABLE Starts; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##criteriaRatio##' +FROM criteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +INNER JOIN MonthOfAnyYear ON MonthOfAnyYear.monthGroupID = rsmg.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +AND MonthOfAnyYear.monthID = ##context.monthID## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND MonthOfAnyYear.monthID = ##context.monthID##; + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE MonthOfAnyYear.monthID = ##context.monthID##; + +SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +SELECT Starts.* INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND monthID = ##context.monthID## +AND zoneID = ##context.iterLocation.zoneRecordID##; + +SELECT StartTempAdjustment.* INTO OUTFILE '##StartTempAdjustment##' +FROM StartTempAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##); + +SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND ZoneMonthHour.monthID = ##context.monthID## +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +-- End Section Extract Data +-- +-- Section Processing + +-- +-- CSEC 1-a Complete I/M adjustment fraction information +-- +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT +); + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + processID ASC, + pollutantID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- +-- CSEC 2-a: Combine GPA and non GPA fuel adjustment factors. +-- + +DROP TABLE IF EXISTS CountyFuelAdjustment; +CREATE TABLE CountyFuelAdjustment ( + fuelRegionID INTEGER NOT NULL, + polProcessID int NOT NULL, + modelYearID INTEGER NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKCountyFuelAdjustment ON CountyFuelAdjustment +( + fuelRegionID ASC, + polProcessID ASC, + modelYearID ASC, + sourceTypeID ASC, + fuelFormulationID ASC +); + +CREATE INDEX CountyFuelAdjustment1 ON CountyFuelAdjustment +( + polProcessID ASC, + modelYearID ASC +); + +CREATE INDEX CountyFuelAdjustment2 ON CountyFuelAdjustment +( + fuelFormulationID ASC +); + +INSERT INTO CountyFuelAdjustment ( + fuelRegionID, polProcessID, modelYearID, sourceTypeID, fuelFormulationID, fuelAdjustment) +SELECT + ##context.fuelRegionID##, + ppa.polProcessID, + stmy.modelYearID, + stmy.sourceTypeID, + ff. fuelFormulationID, + ifnull(ratio,1) + GPAFract * (ifnull(ratioGPA,1)-ifnull(ratio,1)) +FROM County c +inner join PollutantProcessAssoc ppa +inner join FuelFormulation ff +inner join SourceTypeModelYear stmy +LEFT OUTER JOIN criteriaRatio fa ON (fa.polProcessID = ppa.polProcessID + and fa.fuelFormulationID = ff.fuelFormulationID + and fa.sourceTypeID = stmy.sourceTypeID + and fa.modelYearID = stmy.modelYearID +) +WHERE ppa.polProcessID IN (##pollutantProcessIDs##) +AND c.countyID = ##context.iterLocation.countyRecordID## +; + + +-- +-- CSEC 2-b: Aggregate county fuel adjustments to fuel type +-- + +DROP TABLE IF EXISTS CountyFuelAdjustmentWithFuelType; +CREATE TABLE CountyFuelAdjustmentWithFuelType ( + fuelRegionID INTEGER NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelFormulationID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKCountyFuelAdjustmentWithFuelType ON CountyFuelAdjustmentWithFuelType +( + fuelRegionID ASC, + polProcessID ASC, + modelYearID ASC, + sourceTypeID ASC, + fuelFormulationID ASC, + fuelTypeID ASC +); + +INSERT INTO CountyFuelAdjustmentWithFuelType ( + fuelRegionID, polProcessID, modelYearID, sourceTypeID, + fuelFormulationID, fuelTypeID, fuelAdjustment) +SELECT + fuelRegionID, cfa.polProcessID, cfa.modelYearID, sourceTypeID, + cfa.fuelFormulationID, fuelTypeID, fuelAdjustment +FROM CountyFuelAdjustment cfa +INNER JOIN FuelFormulation ff ON (ff.fuelFormulationID = cfa.fuelFormulationID) +INNER JOIN FuelSubType fst ON (fst.fuelSubtypeID = ff.fuelSubtypeID); + +DROP TABLE IF EXISTS FuelSupplyAdjustment; +CREATE TABLE FuelSupplyAdjustment ( + yearID SMALLINT NOT NULL, + countyID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKFuelSupplyAdjustment ON FuelSupplyAdjustment ( + yearID ASC, + countyID ASC, + monthID ASC, + polProcessID ASC, + modelYearID ASC, + sourceTypeID ASC, + fuelTypeID ASC +); + +INSERT INTO FuelSupplyAdjustment ( + yearID, countyID, monthID, polProcessID, modelYearID, + sourceTypeID, fuelTypeID, fuelAdjustment) +SELECT + yearID, ##context.iterLocation.countyRecordID## as countyID, monthID, cfa.polProcessID, cfa.modelYearID, + cfa.sourceTypeID, cfa.fuelTypeID, SUM(fuelAdjustment * marketShare) +FROM CountyFuelAdjustmentWithFuelType cfa +INNER JOIN Year y +INNER JOIN MonthOfAnyYear may +INNER JOIN FuelSupply fs ON ( + fs.fuelRegionID = cfa.fuelRegionID + AND fs.fuelYearID = y.fuelYearID + AND fs.monthGroupID = may.monthGroupID + AND fs.fuelFormulationID = cfa.fuelFormulationID) +WHERE y.YearID = ##context.year## +GROUP BY yearID, cfa.fuelRegionID, monthID, cfa.polProcessID, + cfa.modelYearID, cfa.sourceTypeID, cfa.fuelTypeID +ORDER BY NULL; + +-- +-- CSEC-3 Calculate temperature adjustment factors. +-- +DROP TABLE IF EXISTS METStartAdjustment; +CREATE TABLE METStartAdjustment ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + temperatureAdjustment FLOAT +); + + +INSERT INTO METStartAdjustment ( + zoneID, monthID, hourID, polProcessID, modelYearID, + fuelTypeID, opModeID, temperatureAdjustment) +SELECT + zmh.zoneID, + zmh.monthID, + zmh.hourID, + sta.polProcessID, + ppmy.modelYearID, + sta.fuelTypeID, + sta.opModeID, + CASE + WHEN sta.startTempEquationType = 'LOG' THEN + (tempAdjustTermB*exp(tempAdjustTermA*(LEAST(temperature,75)-75))+ tempAdjustTermC) + WHEN sta.startTempEquationType = 'POLY' THEN + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * + (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + ELSE + (LEAST(temperature,75)-75) * (tempAdjustTermA+(LEAST(temperature,75)-75) * + (tempAdjustTermB+(LEAST(temperature,75)-75) * tempAdjustTermC)) + END AS temperatureAdjustment +FROM StartTempAdjustment sta +INNER JOIN PollutantProcessMappedModelYear ppmy ON ( + ppmy.polProcessID = sta.polProcessID + AND ppmy.modelYearGroupID = sta.modelYearGroupID) +INNER JOIN ZoneMonthHour zmh +WHERE zmh.zoneID = ##context.iterLocation.zoneRecordID##; + +-- +-- CSEC-4: Apply Start Temperature Adjustment to Emission Rates +-- + +DROP TABLE IF EXISTS EmissionRatesWithIMAndTemp; +CREATE TABLE EmissionRatesWithIMAndTemp ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceBinID BIGINT NOT NULL, + opModeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE INDEX METStartAdjustment_New1 ON METStartAdjustment ( + polProcessID ASC, + modelYearID ASC, + opModeID ASC, + fuelTypeID ASC, + zoneID asc, + monthID asc, + hourID asc, + temperatureAdjustment asc +); +CREATE INDEX EmissionRateByAge_New1 ON EmissionRateByAge ( + sourceBinID ASC, + ageGroupID ASC, + polProcessID asc, + opModeID ASC, + meanBaseRate asc, + meanBaseRateIM +); +CREATE INDEX SourceBin_New1 ON SourceBin ( + sourceBinID ASC, + fuelTypeID ASC +); +CREATE INDEX AgeCategory_New1 ON AgeCategory ( + ageGroupID asc, + ageID asc +); + +-- Note: Below, add "0*" to make the expressions ".. + 0*msa.temperatureAdjustment" to disable starts addititive temperature adjustment. +INSERT INTO EmissionRatesWithIMAndTemp ( + zoneID, monthID, hourID, yearID, polProcessID, modelYearID, + sourceBinID, opModeID, fuelTypeID, meanBaseRate, meanBaseRateIM ) +SELECT + msa.zoneID, msa.monthID, msa.hourID, ##context.year## as yearID, msa.polProcessID, + msa.modelYearID, erim.sourceBinID, msa.opModeID, msa.fuelTypeID, + (erim.meanBaseRate + msa.temperatureAdjustment) AS meanBaseRate, + (erim.meanBaseRateIM + msa.temperatureAdjustment) AS meanBaseRateIM +FROM SourceBin sb +INNER JOIN EmissionRateByAge erim ON (erim.sourceBinID=sb.sourceBinID) +INNER JOIN AgeCategory age ON (age.ageGroupID=erim.ageGroupID) +INNER JOIN METStartAdjustment msa ON (msa.polProcessID=erim.polProcessID + AND msa.modelYearID=##context.year##-age.ageID + AND msa.opModeID=erim.opModeID + AND msa.fuelTypeID=sb.fuelTypeID); + +-- +-- CSEC-5: Weight Emission Rates by Source Bin. +-- +DROP TABLE IF EXISTS METSourceBinEmissionRates; +CREATE TABLE METSourceBinEmissionRates ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE INDEX EmissionRatesWithIMAndTemp3 ON EmissionRatesWithIMAndTemp ( + polProcessID ASC, + sourceBinID ASC, + modelYearID ASC +); +CREATE INDEX sourceTypeModelYearID_1 ON sourcetypemodelyear ( + sourceTypeModelYearID ASC, + modelYearID ASC +); +analyze table SourceBinDistribution; + +INSERT INTO METSourceBinEmissionRates ( + zoneID, monthID, hourID, yearID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, opModeID, + meanBaseRate, meanBaseRateIM) +SELECT + er.zoneID, er.monthID, er.hourID, er.yearID, er.polProcessID, + stmy.sourceTypeID, stmy.modelYearID, er.fuelTypeID, er.opModeID, + sum(meanBaseRate*sourceBinActivityFraction) AS meanBaseRate, + sum(meanBaseRateIM*sourceBinActivityFraction) AS meanBaseRateIM +FROM EmissionRatesWithIMAndTemp er, SourceBinDistribution sbd, SourceTypeModelYear stmy +WHERE er.polProcessID=sbd.polProcessID AND + er.sourceBinID=sbd.sourceBinID AND + sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID AND + er.modelYearID=stmy.modelYearID +GROUP BY zoneID, monthID, hourID, yearID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, opModeID +ORDER BY NULL; + +ALTER TABLE METSourceBinEmissionRates ADD INDEX metsourcebinemissionrates1 ( + hourID, sourceTypeID, polProcessID, opModeID); + +-- +-- CSEC-6 Weight temperature-adjusted emission rates by operating mode. +-- +DROP TABLE IF EXISTS ActivityWeightedEmissionRate; +CREATE TABLE ActivityWeightedEmissionRate ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +INSERT INTO ActivityWeightedEmissionRate ( + zoneID, yearID, monthID, dayID, hourID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, meanBaseRate, meanBaseRateIM ) +SELECT + zoneID, ##context.year##, monthID, hd.dayID, msber.hourID, msber.polProcessID, + msber.sourceTypeID, modelYearID, fuelTypeID, + SUM(meanBaseRate * opModeFraction), + SUM(meanBaseRateIM * opModeFraction) +FROM METSourceBinEmissionRates msber +INNER JOIN HourDay hd ON (hd.hourID = msber.hourID) +INNER JOIN OpModeDistribution omd ON ( + omd.sourceTypeID = msber.sourceTypeID + AND omd.hourDayID = hd.hourDayID + AND omd.polProcessID = msber.polProcessID + AND omd.opModeID = msber.opModeID) +GROUP BY zoneID, yearID, monthID, hd.dayID, msber.hourID, msber.polProcessID, + msber.sourceTypeID, modelYearID, fuelTypeID +ORDER BY NULL; + +CREATE UNIQUE INDEX XPKActivityWeightedEmissionRate ON ActivityWeightedEmissionRate ( + yearID ASC, + monthID ASC, + polProcessID ASC, + modelYearID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + zoneID ASC, + dayID ASC, + hourID ASC +); + +-- +-- CSEC-7: Apply fuel adjustment factor +-- + +DROP TABLE IF EXISTS ActivityWeightedEmissionRate2; +CREATE TABLE ActivityWeightedEmissionRate2 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +INSERT INTO ActivityWeightedEmissionRate2 ( + zoneID, yearID, monthID, dayID, hourID, polProcessID, + sourceTypeID , modelYearID, fuelTypeID, meanBaseRate, meanBaseRateIM) +SELECT + awer.zoneID, awer.yearID, awer.monthID, dayID, hourID, awer.polProcessID, + awer.sourceTypeID, awer.modelYearID, awer.fuelTypeID, + meanBaseRate * fuelAdjustment, + meanBaseRateIM * fuelAdjustment +FROM ActivityWeightedEmissionRate awer +INNER JOIN FuelSupplyAdjustment fsa ON ( + fsa.yearID = awer.yearID AND fsa.monthID = awer.monthID + AND fsa.polProcessID = awer.polProcessID AND fsa.modelYearID = awer.modelYearID + AND fsa.sourceTypeID = awer.sourceTypeID AND fsa.fuelTypeID = awer.fuelTypeID) +INNER JOIN Zone z ON (z.countyID = fsa.countyID AND z.zoneID = awer.zoneID); + +CREATE UNIQUE INDEX XPKActivityWeightedEmissionRate ON ActivityWeightedEmissionRate2 ( + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + polProcessID ASC +); + +-- +-- CSEC-8: Multiply emission rates by start activity to generate inventory. +-- +-- Make version of Starts table that is optimized to subsequent steps + +DROP TABLE IF EXISTS Starts2; +CREATE TABLE Starts2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + starts FLOAT +); + +INSERT INTO Starts2 (zoneID, monthID, hourID, dayID, yearID, + sourceTypeID, modelYearID, starts) +SELECT zoneID, monthID, hourID, dayID, yearID, sourceTypeID, + (##context.year## - ageID) AS modelYearID, starts +FROM Starts INNER JOIN HourDay ON (Starts.hourDayID= HourDay.hourDayID); + +CREATE UNIQUE INDEX XPKStarts2 ON Starts2 ( + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + sourceTypeID ASC, + modelYearID ASC +); + +alter table MOVESWorkerOutput add emissionQuantIM float null default 0.0; + +-- alter table MOVESWorkerOutput add emissionQuantIM float null; + +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, + hourID, pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, + SCC, emissionQuant, emissionQuantIM) +SELECT + ##context.iterLocation.stateRecordID##, + ##context.iterLocation.countyRecordID##, + s.zoneID, + ##context.iterLocation.linkRecordID##, + 1 AS roadTypeID, + s.yearID, s.monthID, s.dayID, s.hourID, pollutantID, processID, + s.sourceTypeID, s.modelYearID, fuelTypeID, NULL AS SCC, + (meanBaseRate * starts) AS emissionQuant, + (meanBaseRateIM * starts) AS emissionQuant +FROM Starts2 s, ActivityWeightedEmissionRate2 awer, PollutantProcessAssoc ppa +WHERE + s.zoneID=awer.zoneID AND + s.monthID=awer.monthID AND + s.hourID=awer.hourID AND + s.dayID=awer.dayID AND + s.yearID=awer.yearID AND + s.sourceTypeID=awer.sourceTypeID AND + s.modelYearID=awer.modelYearID AND + awer.polProcessID=ppa.polProcessID; + +-- Apply IM +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +flush tables; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS ActivityWeightedEmissionRate; +DROP TABLE IF EXISTS ActivityWeightedEmissionRate2; +DROP TABLE IF EXISTS CountyFuelAdjustment; +DROP TABLE IF EXISTS CountyFuelAdjustmentWithFuelType; +DROP TABLE IF EXISTS EmissionRatesWithIM; +DROP TABLE IF EXISTS EmissionRatesWithIMAndTemp; +DROP TABLE IF EXISTS FuelSupplyAdjustment; +drop table if exists IMCoverageMergedUngrouped; +drop table if exists IMCoverageMerged; +DROP TABLE IF EXISTS IMAdjustment; +DROP TABLE IF EXISTS IMAdjustmentWithSourceBin; +DROP TABLE IF EXISTS MetSourceBinEmissionRates; +DROP TABLE IF EXISTS MetStartAdjustment; +DROP TABLE IF EXISTS Starts2; +-- End Section Cleanup + + diff --git a/database/DefaultData.sql b/database/DefaultData.sql new file mode 100644 index 0000000..1779a4b --- /dev/null +++ b/database/DefaultData.sql @@ -0,0 +1,36 @@ +USE MOVESDefault; + +INSERT INTO TestAlpha VALUES (100, 1000); +INSERT INTO TestAlpha VALUES (101, 1001); +INSERT INTO TestAlpha VALUES (102, 1002); +INSERT INTO TestAlpha VALUES (103, 1003); +INSERT INTO TestAlpha VALUES (104, 1004); +INSERT INTO TestAlpha VALUES (105, 1005); + +INSERT INTO TestBeta VALUES (200, 3000); +INSERT INTO TestBeta VALUES (201, 3001); +INSERT INTO TestBeta VALUES (202, 3002); +INSERT INTO TestBeta VALUES (203, 3003); +INSERT INTO TestBeta VALUES (204, 3004); +INSERT INTO TestBeta VALUES (205, 3005); + +INSERT INTO TestCharlie VALUES (300, 2000); +INSERT INTO TestCharlie VALUES (301, 2001); +INSERT INTO TestCharlie VALUES (302, 2002); +INSERT INTO TestCharlie VALUES (303, 2003); +INSERT INTO TestCharlie VALUES (304, 2004); +INSERT INTO TestCharlie VALUES (305, 2005); + +INSERT INTO TestGamma VALUES (400, 0); +INSERT INTO TestGamma VALUES (401, 1); +INSERT INTO TestGamma VALUES (402, 2); +INSERT INTO TestGamma VALUES (403, 3); +INSERT INTO TestGamma VALUES (404, 4); +INSERT INTO TestGamma VALUES (405, 5); + +INSERT INTO TestFoxtrot VALUES (500, 4000); +INSERT INTO TestFoxtrot VALUES (501, 4001); +INSERT INTO TestFoxtrot VALUES (502, 4002); +INSERT INTO TestFoxtrot VALUES (503, 4003); +INSERT INTO TestFoxtrot VALUES (504, 4004); +INSERT INTO TestFoxtrot VALUES (505, 4005); diff --git a/database/DistanceCalculator.sql b/database/DistanceCalculator.sql new file mode 100644 index 0000000..7acef83 --- /dev/null +++ b/database/DistanceCalculator.sql @@ -0,0 +1,186 @@ +-- Version 2014-06-10 + +-- @algorithm +-- @owner Distance Calculator + +-- Section Create Remote Tables for Extracted Data +##create.County##; +TRUNCATE TABLE County; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +##create.SHO##; +TRUNCATE TABLE SHO; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +SELECT DISTINCT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO, RunSpecMonth, RunSpecDay, RunSpecHour, HourDay +WHERE yearID = ##context.year## +AND SHO.linkID = ##context.iterLocation.linkRecordID## +AND SHO.monthID=RunSpecMonth.monthID +AND SHO.hourDayID = HourDay.hourDayID +AND HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +-- End Section Extract Data +-- +-- Section Processing +-- + +TRUNCATE MOVESWorkerActivityOutput; +-- +-- Calculate the distance +-- +DROP TABLE IF EXISTS SBD2; +DROP TABLE IF EXISTS SVTD2; +DROP TABLE IF EXISTS SVTD3; +DROP TABLE IF EXISTS DistFracts; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS Link2; +DROP TABLE IF EXISTS SHO3; + +-- @algorithm fuelTypeActivityFraction[sourceTypeID,modelYearID,regClassID,fuelTypeID] = sum(sourceBinActivityFraction[processID=1,pollutantID=any,sourceBinID[fuelTypeID,engTechID,regClassID,modelYearGroupID,engSizeID]]). +CREATE TABLE SBD2 ( + sourceTypeModelYearID INTEGER, + regClassID SMALLINT, + fuelTypeID SMALLINT, + fuelTypeActivityFraction FLOAT); +INSERT INTO SBD2 ( + sourceTypeModelYearID,regClassID,fuelTypeID,fuelTypeActivityFraction ) + SELECT sbd.sourceTypeModelYearID,sb.regClassID,sb.fuelTypeID, + sum(sbd.sourceBinActivityFraction) + FROM sourceBinDistribution AS sbd INNER JOIN SourceBin AS sb + USING (sourceBinID) + GROUP BY sourceTypeModelYearID, regClassID, fuelTypeID; +CREATE INDEX index1 ON SBD2 (sourceTypeModelYearID, fuelTypeID); + +-- @algorithm Add sourceTypeModelYearID to fuelTypeActivityFraction's dimensions. +CREATE TABLE DistFracts + SELECT stmy.sourceTypeModelYearID, stmy.sourceTypeID, sbd.regClassID, stmy.modelYearID, sbd.fuelTypeID, + sbd.fuelTypeActivityFraction + FROM SourceTypeModelYear AS stmy INNER JOIN SBD2 AS sbd USING (sourceTypeModelYearID); + +-- @algorithm Add modelYearID to SHO's dimensions. +CREATE TABLE SHO2 ( + yearID SMALLINT, + monthID SMALLINT, + dayID SMALLINT, + hourID SMALLINT, + modelYearID SMALLINT, + linkID INTEGER, + sourceTypeID SMALLINT, + distance FLOAT); +INSERT INTO SHO2 + SELECT sho.yearID, sho.monthID, hd.dayID, hd.hourID, (sho.yearID - sho.ageID), + sho.linkID, sho.sourceTypeID, sho.distance + FROM SHO AS sho INNER JOIN HourDay AS hd USING (hourDayID); + +CREATE TABLE Link2 + SELECT link.*, c.stateID + FROM Link AS link INNER JOIN County AS c USING (countyID); + +CREATE INDEX index1 ON SHO2 (linkID); +CREATE TABLE SHO3 + SELECT sho.*, link.stateID, link.countyID, link.zoneID, link.roadTypeID + FROM SHO2 AS sho INNER JOIN Link2 AS link USING (linkID); + +CREATE INDEX index1 ON SHO3 (sourceTypeID, modelYearID, roadTypeID); + +-- @algorithm distance = distance[sourceTypeID,yearID,monthID,hourDayID,ageID,linkID]*fuelTypeActivityFraction. +INSERT INTO MOVESWorkerActivityOutput ( + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + regClassID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID, + activityTypeID, + activity) +SELECT + sho.yearID,sho.monthID,sho.dayID,sho.hourID, + sho.stateID,sho.countyID,sho.zoneID,sho.linkID, + df.regClassID,sho.sourceTypeID,df.fuelTypeID,sho.modelYearID, + sho.roadTypeID, + 1, + (sho.distance * df.fuelTypeActivityFraction) as activity +FROM DistFracts AS df +INNER JOIN SHO3 AS sho USING (sourceTypeID, modelYearID); + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS SBD2; +DROP TABLE IF EXISTS SVTD2; +DROP TABLE IF EXISTS SVTD3; +DROP TABLE IF EXISTS DistFracts; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS Link2; +DROP TABLE IF EXISTS SHO3; +-- End Section Cleanup diff --git a/database/EnergyConsumptionCalculator.sql b/database/EnergyConsumptionCalculator.sql new file mode 100644 index 0000000..a99f64b --- /dev/null +++ b/database/EnergyConsumptionCalculator.sql @@ -0,0 +1,2091 @@ +-- Version 2013-09-15 +-- Two SQL statements at lines 828-862 optimized per consultant recommendations + +-- @algorithm +-- @owner Energy Consumption Calculator + +-- Section Create Remote Tables for Extracted Data + +##create.County##; +TRUNCATE TABLE County; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +##create.EmissionRate##; +TRUNCATE TABLE EmissionRate; + +##create.FuelFormulation##; +TRUNCATE TABLE FuelFormulation; + +##create.FuelSubtype##; +TRUNCATE TABLE FuelSubtype; + +##create.FuelSupply##; +TRUNCATE TABLE FuelSupply; + +##create.FullACAdjustment##; +TRUNCATE TABLE FullACAdjustment; + +##create.generalFuelRatio##; +TRUNCATE TABLE generalFuelRatio; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.ModelYear##; +TRUNCATE ModelYear; + +##create.MonthGroupHour##; +TRUNCATE TABLE MonthGroupHour; + +##create.MonthofAnyYear##; +TRUNCATE TABLE MonthofAnyYear; + +##create.OpModeDistribution##; +TRUNCATE TABLE OpModeDistribution; + +##create.Pollutant##; +TRUNCATE TABLE Pollutant; + +##create.PollutantProcessAssoc##; +TRUNCATE TABLE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE TABLE PollutantProcessModelYear; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE TABLE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TABLE TemperatureAdjustment; + +##create.Year##; +TRUNCATE TABLE Year; + +##create.Zone##; +TRUNCATE TABLE Zone; + +##create.ZoneMonthHour##; +TRUNCATE TABLE ZoneMonthHour; + +-- Section Running Exhaust +##create.SHO##; +TRUNCATE TABLE SHO; +-- End Section Running Exhaust +-- Section Start Exhaust +##create.Starts##; +TRUNCATE TABLE Starts; +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +##create.ExtendedIdleHours##; +TRUNCATE TABLE ExtendedIdleHours; +-- End Section Extended Idle Exhaust +-- Section Auxiliary Power Exhaust +##create.hotellingHours##; +TRUNCATE TABLE hotellingHours; + +-- @input HotellingActivityDistribution +##create.hotellingActivityDistribution##; +TRUNCATE TABLE hotellingActivityDistribution; + +##create.RunSpecHourDay##; +TRUNCATE TABLE RunSpecHourDay; + +create table if not exists hotellingOperatingMode ( + opModeID smallint(6) not null, + primary key (opModeID) +); +-- End Section Auxiliary Power Exhaust +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##ModelYear##' +FROM ModelYear; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +-- @input FuelSupply +-- @input MonthOfAnyYear +-- @input Year +-- @input RunSpecMonthGroup +drop table if exists tempFuelFormulation; +create table if not exists tempFuelFormulation ( + fuelFormulationID int not null primary key +); +insert into tempFuelFormulation (fuelFormulationID) +SELECT distinct fuelFormulationID +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +and MonthOfAnyYear.monthID = ##context.monthID##; + +SELECT gfr.* INTO OUTFILE '##generalFuelRatio##' +FROM generalFuelRatio gfr +INNER JOIN tempFuelFormulation tff on tff.fuelFormulationID = gfr.fuelFormulationID +WHERE polProcessID IN (##pollutantProcessIDs##) +AND minModelYearID <= ##context.year##; + +drop table tempFuelFormulation; + +cache SELECT MonthOfAnyYear.* +INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE MonthOfAnyYear.monthID = ##context.monthID##; + +cache SELECT DISTINCT MonthGroupHour.* +INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour, RunSpecMonthGroup, RunSpecHour, MonthOfAnyYear +WHERE RunSpecMonthGroup.monthGroupID = MonthGroupHour.monthGroupID +AND MonthGroupHour.hourID = RunSpecHour.hourID +AND MonthOfAnyYear.monthGroupID = RunSpecMonthGroup.monthGroupID +AND MonthOfAnyYear.monthID = ##context.monthID##; + +cache SELECT * +INTO OUTFILE '##Pollutant##' +FROM Pollutant; + +cache SELECT DISTINCT ZoneMonthHour.* +INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND ZoneMonthHour.monthID = ##context.monthID## +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +cache SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +SELECT * +INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT TemperatureAdjustment.* +INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * +INTO OUTFILE '##FullACAdjustment##' +FROM FullACAdjustment, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND RunSpecSourceType.sourceTypeID = FullACAdjustment.sourceTypeID; + +cache SELECT DISTINCT EmissionRate.* +INTO OUTFILE '##EmissionRate##' +FROM EmissionRate, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRate.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRate.sourceBinID = SourceBin.sourceBinID +AND EmissionRate.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRate.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +INNER JOIN MonthOfAnyYear ON MonthOfAnyYear.monthGroupID = rsmg.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +AND MonthOfAnyYear.monthID = ##context.monthID## +GROUP BY ff.FuelFormulationID; + +cache SELECT FuelSupply.* +INTO OUTFILE '##FuelSupply##' +FROM FuelSupply, RunSpecMonthGroup, Year, MonthOfAnyYear +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND FuelSupply.fuelYearID = Year.fuelYearID +AND FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID +AND MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID +AND MonthOfAnyYear.monthID = ##context.monthID##; + +cache SELECT * +INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +cache SELECT * +INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * +INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeAge.* +INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT Year.* +INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +-- Section Running Exhaust +SELECT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO +WHERE yearID = ##context.year## +AND monthID = ##context.monthID## +AND linkID = ##context.iterLocation.linkRecordID##; +-- End Section Running Exhaust + +-- Section Start Exhaust +SELECT Starts.* +INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND monthID = ##context.monthID## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section Start Exhaust + +-- Section Extended Idle Exhaust +SELECT ExtendedIdleHours.* +INTO OUTFILE '##ExtendedIdleHours##' +FROM ExtendedIdleHours +WHERE yearID = ##context.year## +AND monthID = ##context.monthID## +AND zoneID = ##context.iterLocation.zoneRecordID##; +-- End Section Extended Idle Exhaust + +-- Section Auxiliary Power Exhaust +SELECT hotellingHours.* +INTO OUTFILE '##hotellingHours##' +FROM hotellingHours +WHERE yearID = ##context.year## +AND monthID = ##context.monthID## +AND zoneID = ##context.iterLocation.zoneRecordID##; + +cache select * into outfile '##hotellingActivityDistribution##' +from hotellingActivityDistribution +where (beginModelYearID <= ##context.year## - 30 and endModelYearID >= ##context.year## - 30) +or (beginModelYearID <= ##context.year## and endModelYearID >= ##context.year##) +or (beginModelYearID >= ##context.year## - 30 and endModelYearID <= ##context.year##); + +cache select * into outfile '##RunSpecHourDay##' +from RunSpecHourDay; + +cache select opModeID into outfile '##hotellingOperatingMode##' +from operatingMode +where opModeID >= 201 and opModeID <= 299; +-- End Section Auxiliary Power Exhaust + +-- End Section Extract Data + +-- Section Local Data Removal +-- (common code here) +-- Section Running Exhaust +-- End Section Running Exhaust +-- Section Start Exhaust +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +-- End Section Extended Idle Exhaust +-- Section Auxiliary Power Exhaust +-- End Section Auxiliary Power Exhaust +-- End Section Local Data Removal + +-- Section Processing + +-- Add default OpModeDistribution entries if needed +-- Section Fossil Energy Without OpModeDistribution +-- Section Running Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9301, ##FossilEnergyOpModeID##, 1, 0 FROM SHO; +-- End Section Running Exhaust +-- Section Start Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9302, ##FossilEnergyOpModeID##, 1, 0 FROM Starts; +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9390, ##FossilEnergyOpModeID##, 1, 0 FROM ExtendedIdleHours; +-- End Section Extended Idle Exhaust +-- Section Auxiliary Power Exhaust +INSERT IGNORE INTO FullACAdjustment (sourceTypeID,polProcessID,opModeID,fullACAdjustment,fullACAdjustmentCV) +select 62,9391,opModeID,1,null from hotellingOperatingMode; +-- End Section Auxiliary Power Exhaust +-- End Section Fossil Energy Without OpModeDistribution + +-- Section Petroleum Energy Without OpModeDistribution +-- Section Running Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9201, ##PetroleumEnergyOpModeID##, 1, 0 FROM SHO; +-- End Section Running Exhaust +-- Section Start Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9202, ##PetroleumEnergyOpModeID##, 1, 0 FROM Starts; +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9290, ##PetroleumEnergyOpModeID##, 1, 0 FROM ExtendedIdleHours; +-- End Section Extended Idle Exhaust +-- Section Auxiliary Power Exhaust +INSERT IGNORE INTO FullACAdjustment (sourceTypeID,polProcessID,opModeID,fullACAdjustment,fullACAdjustmentCV) +select 62,9291,opModeID,1,null from hotellingOperatingMode; +-- End Section Auxiliary Power Exhaust +-- End Section Petroleum Energy Without OpModeDistribution + +-- Section Total Energy Without OpModeDistribution +-- Section Running Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9101, ##TotalEnergyOpModeID##, 1, 0 FROM SHO; +-- End Section Running Exhaust +-- Section Start Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9102, ##TotalEnergyOpModeID##, 1, 0 FROM Starts; +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +INSERT IGNORE INTO OpModeDistribution ( sourceTypeID,hourDayID,linkID,polProcessID,opModeID,opModeFraction,opModeFractionCV) +SELECT DISTINCT sourceTypeID, hourDayID, ##context.iterLocation.linkRecordID##, 9190, ##TotalEnergyOpModeID##, 1, 0 FROM ExtendedIdleHours; +-- End Section Extended Idle Exhaust +-- Section Auxiliary Power Exhaust +INSERT IGNORE INTO FullACAdjustment (sourceTypeID,polProcessID,opModeID,fullACAdjustment,fullACAdjustmentCV) +select 62,9191,opModeID,1,null from hotellingOperatingMode; +-- End Section Auxiliary Power Exhaust + +-- End Section Total Energy Without OpModeDistribution + +ANALYZE TABLE OpModeDistribution; + +-- Section Petroleum Energy +-- @algorithm Create PetroleumFraction table. +-- petroleumFraction(countyID, yearID, monthGroupID, fuelTypeID) = sum(marketShare * fuelSubtypePetroleumFraction) +CREATE TABLE IF NOT EXISTS PetroleumFraction ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + petroleumFraction FLOAT NULL, + petroleumFractionV FLOAT NULL, + INDEX XPKPetroleumFraction ( + countyID, yearID, monthGroupID, fuelTypeID) +); + +TRUNCATE PetroleumFraction; + +INSERT INTO PetroleumFraction ( + countyID, + yearID, + monthGroupID, + fuelTypeID, + petroleumFraction, + petroleumFractionV ) +SELECT + ##context.iterLocation.countyRecordID## as countyID, + y.yearID, + fs.monthGroupID, + fst.fuelTypeID, + SUM(fs.marketShare * fst.fuelSubtypePetroleumFraction), + null +FROM + FuelSupply fs, + FuelFormulation ff, + Year y, + FuelSubType fst +WHERE + ff.fuelFormulationID = fs.fuelFormulationID AND + fst.fuelSubTypeID = ff.fuelSubTypeID AND + fs.fuelYearID = y.fuelYearID AND + y.yearID = ##context.year## +GROUP BY + fs.fuelRegionID, + y.yearID, + fs.monthGroupID, + fst.fuelTypeID; + +ANALYZE TABLE PetroleumFraction; + +-- End Section Petroleum Energy + +-- Section Fossil Fuel Energy +-- @algorithm Create FossilFraction table. +-- fossilFraction(countyID, yearID, monthGroupID, fuelTypeID) = sum(marketShare * fuelSubtypeFossilFraction) +CREATE TABLE IF NOT EXISTS FossilFraction ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fossilFraction FLOAT NULL, + fossilFractionV FLOAT NULL, + INDEX XPKFossilFraction ( + countyID, yearID, monthGroupID, fuelTypeID) +); + +TRUNCATE FossilFraction; + +INSERT INTO FossilFraction ( + countyID, + yearID, + monthGroupID, + fuelTypeID, + fossilFraction, + fossilFractionV) +SELECT + ##context.iterLocation.countyRecordID## as countyID, + y.yearID, + fs.monthGroupID, + fst.fuelTypeID, + SUM(fs.marketShare * fst.fuelSubtypeFossilFraction), + null +FROM + FuelSupply fs, + FuelFormulation ff, + Year y, + FuelSubType fst +WHERE + ff.fuelFormulationID = fs.fuelFormulationID AND + fst.fuelSubTypeID = ff.fuelSubTypeID AND + y.fuelYearID = fs.fuelYearID AND + y.yearID = ##context.year## +GROUP BY + fs.fuelRegionID, + y.yearID, + fs.monthGroupID, + fst.fuelTypeID; + +ANALYZE TABLE FossilFraction; + +-- End Section Fossil Fuel Energy + +-- +-- ECCP-1b: Convert Age to Model Year For Analysis Year +-- +-- ModelYearID = YearID - AgeID (or AgeID = YearID - ModelYearID, where YearID = analysisYear) +-- Can't find anything to do here, yet. +-- + +-- +-- ECCP-2: Calculate adjustments +-- +-- Note: Adjustments are multiplicative, with a value of 1.0 meaning no effect +-- +-- ECCP-2a: Calculate air conditioning adjustment (for analysisYear) +-- + +-- Preliminary calculation (1): ACOnFraction +-- @algorithm ACOnFraction(monthID,zoneID,hourID) = ACActivityTermA+zmh.heatIndex*(mgh.ACActivityTermB+mgh.ACActivityTermC*zmh.heatIndex) +-- @condition 0 <= ACOnFraction <= 1 +CREATE TABLE IF NOT EXISTS ACOnFraction ( + monthID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hourID SMALLINT NOT NULL, + ACOnFraction FLOAT NULL, + INDEX XPKACOnFraction (monthID, zoneID, hourID) +); + +TRUNCATE ACOnFraction; +INSERT INTO ACOnFraction ( + monthID, + zoneID, + hourID, + ACOnFraction) +SELECT + zmh.monthID, + zmh.zoneID, + mgh.hourID, + (ACActivityTermA+zmh.heatIndex*(mgh.ACActivityTermB+mgh.ACActivityTermC*zmh.heatIndex)) +FROM + ZoneMonthHour zmh, + MonthOfAnyYear may, + MonthGroupHour mgh +WHERE + may.monthID = zmh.monthID AND + mgh.monthGroupID = may.monthGroupID AND + mgh.hourID = zmh.hourID; + +ANALYZE TABLE ACOnFraction; + +UPDATE ACOnFraction SET ACOnFraction = 1 WHERE ACOnFraction > 1; +UPDATE ACOnFraction SET ACOnFraction = 0 WHERE ACOnFraction < 0; + +-- Preliminary calculation (2): ACActivityFraction +-- @algorithm ACActivityFraction(sourceTypeID,modelYearID,monthID,zoneID,hourID)=ACOnFraction * ACPenetrationFraction * FunctioningACFraction +CREATE TABLE IF NOT EXISTS ACActivityFraction ( + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hourID SMALLINT NOT NULL, + ACActivityFraction FLOAT NULL, + INDEX XPKACActivityFraction (sourceTypeID, modelYearID, monthID, zoneID, hourID) +); + +TRUNCATE ACActivityFraction; +INSERT INTO ACActivityFraction ( + sourceTypeID, + modelYearID, + monthID, + zoneID, + hourID, + ACActivityFraction) +SELECT + stmy.sourceTypeID, + stmy.modelYearID, + af.monthID, + af.zoneID, + af.hourID, + ACOnFraction * ACPenetrationFraction * FunctioningACFraction +FROM + ACOnFraction af, + SourceTypeModelYear stmy, + SourceTypeAge sta +WHERE + sta.sourceTypeID = stmy.sourceTypeID AND + sta.ageID = ##context.year## - stmy.modelYearID AND + stmy.modelYearID <= ##context.year## AND + stmy.modelYearID >= ##context.year## - 30; + + +ANALYZE TABLE ACActivityFraction; + +-- ACAdjustment +DROP TABLE IF EXISTS ACAdjustment; +CREATE TABLE ACAdjustment ( + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + opModeID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hourID SMALLINT NOT NULL, + ACAdjustment FLOAT NULL +); + +-- Insert default FullACAdjustment records in case some were omitted on the Master +-- @algorithm Add default fullACAdjustments of 1.0 for any missing value. fullACAdjustment(sourceTypeID,polProcessID,opModeID)=1. +-- @condition Only for missing fullACAdjustment entries. +INSERT IGNORE INTO FullACAdjustment ( + sourceTypeID,polProcessID,opModeID,fullACAdjustment,fullACAdjustmentCV) +SELECT + omd.sourceTypeID, + omd.polProcessID, + omd.opModeID, + 1, + null +FROM + OpModeDistribution omd; + +ANALYZE TABLE FullACAdjustment; + +-- @algorithm ACAdjustment(sourceTypeID,modelYearID,polProcessID,opModeID,monthID,zoneID,hourID)=1+((FullACAdjustment-1)*ACActivityFraction) +TRUNCATE ACAdjustment; +INSERT INTO ACAdjustment ( + sourceTypeID, + modelYearID, + polProcessID, + opModeID, + monthID, + zoneID, + hourID, + ACAdjustment) +SELECT + aaf.sourceTypeID, + aaf.modelYearID, + faa.polProcessID, + faa.opModeID, + aaf.monthID, + aaf.zoneID, + aaf.hourID, + 1+((FullACAdjustment-1)*ACActivityFraction) +FROM + FullACAdjustment faa, + ACActivityFraction aaf +WHERE + faa.sourceTypeID = aaf.sourceTypeID + AND aaf.modelYearID <= ##context.year##; + +create index XPKACAdjustment on ACAdjustment ( + sourceTypeID asc, + modelYearID asc, + polProcessID asc, + opModeID asc, + hourID asc +); + +-- +-- ECCP-2b: Calculate temperature adjustment +-- + +CREATE TABLE IF NOT EXISTS TempAdjustmentByType ( + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + zoneID INTEGER NOT NULL, + hourID SMALLINT NOT NULL, + tempAdjustment FLOAT NULL, + tempAdjustmentV FLOAT NULL +); + +-- @algorithm tempAdjustment(polProcessID,fuelTypeID,monthID,zoneID,hourID) = 1 + (temperature - 75) * (tempAdjustTermA + (temperature - 75) * tempAdjustTermB) +TRUNCATE TempAdjustmentByType; +INSERT INTO TempAdjustmentByType ( + polProcessID, + fuelTypeID, + modelYearID, + monthID, + zoneID, + hourID, + tempAdjustment, + tempAdjustmentV ) +SELECT + ta.polProcessID, + ta.fuelTypeID, + my.modelYearID, + zmh.monthID, + zmh.zoneID, + zmh.hourID, + 1 + (zmh.temperature - 75) * (ta.tempAdjustTermA + (zmh.temperature - 75) * ta.tempAdjustTermB), + null +FROM + TemperatureAdjustment ta, + ZoneMonthHour zmh, + ModelYear my +WHERE + my.modelyearid between ta.minModelYearID and ta.maxModelYearID; + +create index XPKTempAdjustmentByType on TempAdjustmentByType ( + fuelTypeID asc, + modelYearID asc, + hourID asc, + monthID asc, + polProcessID asc, + zoneID asc +); + +-- +-- ECCP-2c: Calculate fuel adjustment +-- + +-- +-- ECCP-3a: Aggregate Base Emission Rates to Source Type/Fuel Type/Model Year/Operating Mode level +-- + +CREATE TABLE IF NOT EXISTS MeanBaseRateByType ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + MeanBaseRateByType FLOAT NULL +); + +TRUNCATE TABLE MeanBaseRateByType; + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +-- @algorithm MeanBaseRateByType(sourceTypeID,polProcessID,modelYearID,fuelTypeID,opModeID)=sum(sourceBinActivityFraction * meanBaseRate) +INSERT INTO MeanBaseRateByType ( + sourceTypeID, + polProcessID, + modelYearID, + fuelTypeID, + opModeID, + MeanBaseRateByType) +SELECT + stmy.sourceTypeID, + er.polProcessID, + stmy.modelYearID, + sb.fuelTypeID, + er.opModeID, + SUM(sbd.SourceBinActivityFraction * er.MeanBaseRate) +FROM + EmissionRate er, + PollutantProcessModelYear ppmy, + SourceBin sb, + SourceBinDistribution sbd, + SourceTypeModelYear stmy +WHERE + ppmy.modelYearGroupID = sb.modelYearGroupID AND + ppmy.modelYearID = stmy.modelYearID AND + er.polProcessID = ppmy.polProcessID AND + er.polProcessID = sbd.polProcessID AND + ppmy.polProcessID = sbd.polProcessID AND + er.sourceBinID = sb.sourceBinID AND + er.sourceBinID = sbd.sourceBinID AND + sb.sourceBinID = sbd.sourceBinID AND + sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID AND + stmy.modelYearID <= ##context.year## AND + stmy.sourceTypeID = ##loop.sourceTypeID## +GROUP BY + er.polProcessID, + stmy.modelYearID, + sb.fuelTypeID, + er.opModeID; + +--GROUP BY +-- stmy.sourceTypeID, + +end loop ##loop.sourceTypeID##; + +create index XPKMeanBaseRateByType on MeanBaseRateByType ( + sourceTypeID asc, + polProcessID asc, + opModeID asc +); + + +-- +-- ECCP-3b: Aggregate emission rates to SourceType level, Apply A/C adjustment +-- + +CREATE TABLE IF NOT EXISTS SourceTypeEnergy ( + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + zoneID INTEGER NOT NULL, + linkID INTEGER NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeEnergy FLOAT NULL +); + +TRUNCATE TABLE SourceTypeEnergy; + +-- This SQL Statement Rewritten As Series of Simpler Statements to Improve Performance +-- INSERT INTO SourceTypeEnergy ( +-- sourceTypeID, +-- polProcessID, +-- zoneID, +-- linkID, +-- modelYearID, +-- monthID, +-- hourDayID, +-- fuelTypeID, +-- sourceTypeEnergy) +-- SELECT STRAIGHT_JOIN +-- aca.sourceTypeID, +-- aca.polProcessID, +-- omd.linkID, +-- aca.modelYearID, +-- aca.monthID, +-- hd.hourDayID, +-- mbrt.fuelTypeID, +-- SUM(omd.opModeFraction * mbrt.MeanBaseRateByType * aca.ACAdjustment) +-- FROM +-- HourDay hd, +-- ACAdjustment aca, +-- MeanBaseRateByType mbrt, +-- OpModeDistribution omd +-- WHERE +-- hd.hourDayID = omd.hourDayID AND +-- aca.hourID = hd.hourID AND +-- aca.modelYearID = mbrt.modelYearID AND +-- aca.opModeID = mbrt.opModeID AND +-- aca.opModeID = omd.opModeID AND +-- mbrt.opModeID = omd.opModeID AND +-- aca.polProcessID = mbrt.polProcessID AND +-- aca.polProcessID = omd.polProcessID AND +-- mbrt.polProcessID = omd.polProcessID AND +-- aca.sourceTypeID = mbrt.sourceTypeID AND +-- aca.sourceTypeID = omd.sourceTypeID AND +-- mbrt.sourceTypeID = omd.sourceTypeID +-- GROUP BY +-- hd.hourDayID, +-- aca.monthID, +-- aca.zoneID, +-- aca.polProcessID, +-- aca.sourceTypeID, +-- aca.modelYearID, +-- mbrt.fuelTypeID, +-- omd.linkID + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +DROP TABLE IF EXISTS OMD2; +DROP TABLE IF EXISTS OMDMBR; + +-- @algorithm Add hourID to opModeDistribution. +CREATE TABLE OMD2 + SELECT omd.*, hd.hourID + FROM OpModeDistribution AS omd INNER JOIN HourDay AS hd USING (hourDayID) + WHERE omd.sourceTypeID=##loop.sourceTypeID##; +CREATE INDEX index1 ON OMD2 + (polProcessID, opModeID); + +-- @algorithm Combine meanBaseRateByType keys with opModeFraction keys. +-- @condition all processes except Auxiliary Power Exhaust +CREATE TABLE OMDMBR + SELECT mbrt.sourceTypeID, mbrt.modelYearID, mbrt.polProcessID, mbrt.opModeID, + mbrt.fuelTypeID, omd.hourDayID, omd.hourID, omd.linkID, + omd.opModeFraction, mbrt.meanBaseRateByType + FROM OMD2 AS omd INNER JOIN MeanBaseRateByType AS mbrt + USING (polProcessID, opModeID) + WHERE mbrt.sourceTypeID=##loop.sourceTypeID##; + +CREATE INDEX index1 ON OMDMBR (modelYearID, polProcessID, opModeID, hourID); + +-- Section Auxiliary Power Exhaust +CREATE UNIQUE INDEX index2 ON OMDMBR (sourceTypeID, modelYearID, polProcessID, opModeID, fuelTypeID, hourDayID, hourID, linkID); + +-- @algorithm Combine meanBaseRateByType keys with opModeFraction keys. +-- @condition for Auxiliary Power Exhaust process +insert ignore into OMDMBR (sourceTypeID, modelYearID, polProcessID, opModeID, + fuelTypeID, hourDayID, hourID, linkID, + opModeFraction, meanBaseRateByType) +select mbrt.sourceTypeID, mbrt.modelYearID, mbrt.polProcessID, mbrt.opModeID, + mbrt.fuelTypeID, rshd.hourDayID, hd.hourID, + ##context.iterLocation.linkRecordID## as linkID, + hac.opModeFraction, mbrt.meanBaseRateByType +from hotellingActivityDistribution hac + inner join MeanBaseRateByType mbrt on ( + mbrt.opModeID = hac.opModeID + and hac.beginModelYearID <= mbrt.modelYearID + and hac.endModelYearID >= mbrt.modelYearID), + RunSpecHourDay rshd inner join HourDay hd using (hourDayID) +where mbrt.sourceTypeID=##loop.sourceTypeID## +and 62=##loop.sourceTypeID##; +-- End Section Auxiliary Power Exhaust + +-- @algorithm sourceTypeEnergy(sourceTypeID,modelYearID,polProcessID,monthID,zoneID,fuelTypeID,linkID,hourDayID) = sum(opModeFraction * meanBaseRateByType * ACAdjustment) +INSERT INTO SourceTypeEnergy ( + sourceTypeID, + modelYearID, + polProcessID, + monthID, + zoneID, + fuelTypeID, + linkID, + hourDayID, + sourceTypeEnergy) +SELECT + aca.sourceTypeID, + aca.modelYearID, + aca.polProcessID, + aca.monthID, + aca.zoneID, + omdmbr.fuelTypeID, + omdmbr.linkID, + omdmbr.hourDayID, + SUM(omdmbr.opModeFraction * omdmbr.MeanBaseRateByType * aca.ACAdjustment) +FROM + OMDMBR AS omdmbr INNER JOIN ACAdjustment AS aca + USING (modelYearID, polProcessID, opModeID, hourID) +WHERE + aca.sourceTypeID = ##loop.sourceTypeID## +GROUP BY + omdmbr.modelYearID, + omdmbr.polProcessID, + omdmbr.hourDayID, + omdmbr.fuelTypeID, + omdmbr.linkID, + aca.monthID, + aca.zoneID + ORDER BY NULL; + +end loop ##loop.sourceTypeID##; + +create index XPKSourceTypeEnergy on SourceTypeEnergy ( + sourceTypeID asc, + polProcessID asc, + zoneID asc, + linkID asc, + modelYearID asc, + monthID asc, + hourDayID asc, + fuelTypeID asc +); + +create index XPKSourceTypeEnergy2 on SourceTypeEnergy ( + fuelTypeID asc, + hourDayID asc, + linkID asc, + modelYearID asc, + monthID asc, + polProcessID asc, + zoneID asc, + sourceTypeID asc +); + + +-- +-- End of Rewritten Statement +-- +ANALYZE TABLE SourceTypeEnergy; + +CREATE TABLE IF NOT EXISTS MOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant FLOAT NULL +); + +-- Section Running Exhaust +-- +-- ECCP-3c: Calculate running energy consumption +-- + +TRUNCATE MOVESWorkerOutputTemp; + +-- +-- Calculate the Total Energy +-- + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +-- @algorithm totalEnergy(yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID) = SUM(SHO * sourceTypeEnergy * TempAdjustment) +-- @condition for sourceType output +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + sho.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.sourceTypeID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID, + SUM(sho.sho * ste.sourceTypeEnergy * tat.TempAdjustment ) +FROM + County c, + EmissionProcess ep, + HourDay hd, + Link l, + MonthOfAnyYear may, + PollutantProcessAssoc ppa, + SHO sho, + SourceTypeEnergy ste, + SourceTypeModelYear stmy, + TempAdjustmentByType tat +WHERE + c.countyID = l.countyID AND + ste.fuelTypeID = tat.fuelTypeID AND + hd.hourDayID = sho.hourDayID AND + hd.hourDayID = ste.hourDayID AND + sho.hourDayID = ste.hourDayID AND + hd.hourID = tat.hourID AND + l.linkID = sho.linkID AND + l.linkID = ste.linkID AND + sho.linkID = ste.linkID AND + (sho.yearID - sho.ageID) = ste.modelYearID AND + (sho.yearID - sho.ageID) = stmy.modelYearID AND + ste.modelYearID = stmy.modelYearID AND + ste.modelYearID = tat.modelYearID AND + may.monthID = sho.monthID AND + may.monthID = ste.monthID AND + may.monthID = tat.monthID AND + sho.monthID = ste.monthID AND + sho.monthID = tat.monthID AND + ste.monthID = tat.monthID AND + ppa.polProcessID = ste.polProcessID AND + ppa.polProcessID = tat.polProcessID AND + ste.polProcessID = tat.polProcessID AND + ep.processID = ppa.processID AND + l.zoneID = ste.zoneID AND + l.zoneID = tat.zoneID AND + ste.zoneID = tat.zoneID AND + sho.sourceTypeID = ##loop.sourceTypeID## AND + stmy.sourceTypeID = ##loop.sourceTypeID## AND + ste.sourceTypeID = ##loop.sourceTypeID## +GROUP BY + sho.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID; + +-- sho.sourceTypeID = ste.sourceTypeID AND +-- sho.sourceTypeID = stmy.sourceTypeID AND +-- ste.sourceTypeID = stmy.sourceTypeID AND + +-- ppa.processID, +-- ste.sourceTypeID, +-- ste.fuelTypeID, + +end loop ##loop.sourceTypeID##; + +ANALYZE TABLE MOVESWorkerOutputTemp; + +-- Section Total Energy +-- +-- Copy temporary results for Total Energy to final table. We are done for total energy. +-- + +-- @algorithm emissionQuant[totalEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +FROM + MOVESWorkerOutputTemp; + +-- End Section Total Energy + +-- Section Petroleum Energy +-- +-- Calculate Petroleum Energy +-- + +-- @algorithm emissionQuant[petroleumEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy * petroleumFraction +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 92, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * pf.petroleumFraction +FROM + MOVESWorkerOutputTemp mwot, + PetroleumFraction pf, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + pf.countyID = mwot.countyID AND + pf.yearID = mwot.yearID AND + pf.monthGroupID = may.monthGroupID AND + pf.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 1; + +-- End Section Petroleum Energy + +-- Section Fossil Fuel Energy +-- +-- Calculate Fossil Energy +-- + +-- @algorithm emissionQuant[fossilEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy * fossilFraction +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 93, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * ff.fossilFraction +FROM + MOVESWorkerOutputTemp mwot, + FossilFraction ff, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + ff.countyID = mwot.countyID AND + ff.yearID = mwot.yearID AND + ff.monthGroupID = may.monthGroupID AND + ff.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 1; +-- End Section Fossil Fuel Energy +-- End Section Running Exhaust + +ANALYZE TABLE MOVESWorkerOutput; + +-- Section Start Exhaust +-- +-- ECCP-4: Calculate start energy consumption +-- + +TRUNCATE MOVESWorkerOutputTemp; + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +-- @algorithm totalEnergy(yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID) = SUM(starts * sourceTypeEnergy * TempAdjustment) +-- @condition for sourceType output +-- @condition for Starts process +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + s.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.sourceTypeID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID, + SUM(s.starts * ste.sourceTypeEnergy * tat.TempAdjustment) +FROM + County c, + EmissionProcess ep, + HourDay hd, + Link l, + MonthOfAnyYear may, + PollutantProcessAssoc ppa, + Starts s, + SourceTypeEnergy ste, + SourceTypeModelYear stmy, + TempAdjustmentByType tat +WHERE + c.countyID = l.countyID AND + ste.fuelTypeID = tat.fuelTypeID AND + hd.hourDayID = ste.hourDayID AND + hd.hourDayID = s.hourDayID AND + ste.hourDayID = s.hourDayID AND + hd.hourID = tat.hourID AND + l.linkID = ste.linkID AND + ste.modelYearID = stmy.modelYearID AND + ste.modelYearID = (s.yearID - s.ageID) AND + stmy.modelYearID = (s.yearID - s.ageID) AND + ste.modelYearID = tat.modelYearID AND + may.monthID = ste.monthID AND + may.monthID = s.monthID AND + may.monthID = tat.monthID AND + ste.monthID = s.monthID AND + ste.monthID = tat.monthID AND + s.monthID = tat.monthID AND + ppa.polProcessID = ste.polProcessID AND + ppa.polProcessID = tat.polProcessID AND + ste.polProcessID = tat.polProcessID AND + ep.processID = ppa.processID AND + ste.sourceTypeID = ##loop.sourceTypeID## AND + stmy.sourceTypeID = ##loop.sourceTypeID## AND + s.sourceTypeID = ##loop.sourceTypeID## AND + l.zoneID = ste.zoneID AND + l.zoneID = s.zoneID AND + l.zoneID = tat.zoneID AND + ste.zoneID = s.zoneID AND + ste.zoneID = tat.zoneID AND + s.zoneID = tat.zoneID +GROUP BY + s.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID; + +-- ste.sourceTypeID = stmy.sourceTypeID AND +-- ste.sourceTypeID = s.sourceTypeID AND +-- stmy.sourceTypeID = s.sourceTypeID AND + +-- ppa.processID, +-- ste.sourceTypeID, +-- ste.fuelTypeID, + +end loop ##loop.sourceTypeID##; + +-- Section Total Energy +-- +-- Copy temporary results for Total Energy to final table. We are done for total energy. +-- + +-- @algorithm emissionQuant[totalEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy +-- @condition for Starts process +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +FROM + MOVESWorkerOutputTemp; +-- End Section Total Energy + +-- Section Petroleum Energy +-- +-- Calculate Petroleum Energy +-- + +-- @algorithm emissionQuant[petroleumEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy * petroleumFraction +-- @condition for Starts process +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 92, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * pf.petroleumFraction +FROM + MOVESWorkerOutputTemp mwot, + PetroleumFraction pf, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + pf.countyID = mwot.countyID AND + pf.yearID = mwot.yearID AND + pf.monthGroupID = may.monthGroupID AND + pf.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 2; +-- End Section Petroleum Energy + +-- Section Fossil Fuel Energy +-- +-- Calculate Fossil Energy +-- + +-- @algorithm emissionQuant[fossilEnergy](yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC) = totalEnergy * fossilFraction +-- @condition for Starts process +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 93, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * ff.fossilFraction +FROM + MOVESWorkerOutputTemp mwot, + FossilFraction ff, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + ff.countyID = mwot.countyID AND + ff.yearID = mwot.yearID AND + ff.monthGroupID = may.monthGroupID AND + ff.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 2; +-- End Section Fossil Fuel Energy +-- End Section Start Exhaust + +-- Section Extended Idle Exhaust +-- +-- ECCP-5: Calculate extended idle energy consumption +-- + +TRUNCATE MOVESWorkerOutputTemp; + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + eih.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.sourceTypeID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID, + SUM(eih.extendedIdleHours * ste.sourceTypeEnergy * tat.TempAdjustment) +FROM + County c, + EmissionProcess ep, + ExtendedIdleHours eih, + HourDay hd, + Link l, + MonthOfAnyYear may, + PollutantProcessAssoc ppa, + SourceTypeEnergy ste, + SourceTypeModelYear stmy, + TempAdjustmentByType tat +WHERE + c.countyID = l.countyID AND + ste.fuelTypeID = tat.fuelTypeID AND + eih.hourDayID = hd.hourDayID AND + eih.hourDayID = ste.hourDayID AND + hd.hourDayID = ste.hourDayID AND + hd.hourID = tat.hourID AND + l.linkID = ste.linkID AND + (eih.yearID - eih.ageID) = ste.modelYearID AND + (eih.yearID - eih.ageID) = stmy.modelYearID AND + ste.modelYearID = stmy.modelYearID AND + ste.modelYearID = tat.modelYearID AND + eih.monthID = may.monthID AND + eih.monthID = ste.monthID AND + eih.monthID = tat.monthID AND + may.monthID = ste.monthID AND + may.monthID = tat.monthID AND + ste.monthID = tat.monthID AND + ppa.polProcessID = ste.polProcessID AND + ppa.polProcessID = tat.polProcessID AND + ste.polProcessID = tat.polProcessID AND + ep.processID = ppa.processID AND + eih.sourceTypeID = ##loop.sourceTypeID## AND + ste.sourceTypeID = ##loop.sourceTypeID## AND + stmy.sourceTypeID = ##loop.sourceTypeID## AND + eih.zoneID = l.zoneID AND + eih.zoneID = ste.zoneID AND + eih.zoneID = tat.zoneID AND + l.zoneID = ste.zoneID AND + l.zoneID = tat.zoneID AND + ste.zoneID = tat.zoneID +GROUP BY + eih.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID; + +-- eih.sourceTypeID = ste.sourceTypeID AND +-- eih.sourceTypeID = stmy.sourceTypeID AND +-- ste.sourceTypeID = stmy.sourceTypeID AND + +-- ppa.processID, +-- ste.sourceTypeID, +-- ste.fuelTypeID, + +end loop ##loop.sourceTypeID##; + +-- Section Total Energy +-- +-- Copy temporary results for Total Energy to final table. We are done for total energy. +-- + +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +FROM + MOVESWorkerOutputTemp; +-- End Section Total Energy + +-- Section Petroleum Energy +-- +-- Calculate Petroleum Energy +-- +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 92, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * pf.petroleumFraction +FROM + MOVESWorkerOutputTemp mwot, + PetroleumFraction pf, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + pf.countyID = mwot.countyID AND + pf.yearID = mwot.yearID AND + pf.monthGroupID = may.monthGroupID AND + pf.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 90; +-- End Section Petroleum Energy + +-- Section Fossil Fuel Energy +-- +-- Calculate Fossil Energy +-- +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 93, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * ff.fossilFraction +FROM + MOVESWorkerOutputTemp mwot, + FossilFraction ff, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + ff.countyID = mwot.countyID AND + ff.yearID = mwot.yearID AND + ff.monthGroupID = may.monthGroupID AND + ff.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 90; +-- End Section Fossil Fuel Energy +-- End Section Extended Idle Exhaust + +-- Section Auxiliary Power Exhaust +-- +-- ECCP-5: Calculate extended idle energy consumption +-- + +TRUNCATE MOVESWorkerOutputTemp; + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType where sourceTypeID=62; + +INSERT INTO MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + eih.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.sourceTypeID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID, + SUM(eih.hotellingHours * ste.sourceTypeEnergy * tat.TempAdjustment) +FROM + County c, + EmissionProcess ep, + hotellingHours eih, + HourDay hd, + Link l, + MonthOfAnyYear may, + PollutantProcessAssoc ppa, + SourceTypeEnergy ste, + SourceTypeModelYear stmy, + TempAdjustmentByType tat +WHERE + c.countyID = l.countyID AND + ste.fuelTypeID = tat.fuelTypeID AND + eih.hourDayID = hd.hourDayID AND + eih.hourDayID = ste.hourDayID AND + hd.hourDayID = ste.hourDayID AND + hd.hourID = tat.hourID AND + l.linkID = ste.linkID AND + (eih.yearID - eih.ageID) = ste.modelYearID AND + (eih.yearID - eih.ageID) = stmy.modelYearID AND + ste.modelYearID = stmy.modelYearID AND + ste.modelYearID = tat.modelYearID AND + eih.monthID = may.monthID AND + eih.monthID = ste.monthID AND + eih.monthID = tat.monthID AND + may.monthID = ste.monthID AND + may.monthID = tat.monthID AND + ste.monthID = tat.monthID AND + ppa.polProcessID = ste.polProcessID AND + ppa.polProcessID = tat.polProcessID AND + ste.polProcessID = tat.polProcessID AND + ep.processID = ppa.processID AND + eih.sourceTypeID = ##loop.sourceTypeID## AND + ste.sourceTypeID = ##loop.sourceTypeID## AND + stmy.sourceTypeID = ##loop.sourceTypeID## AND + eih.zoneID = l.zoneID AND + eih.zoneID = ste.zoneID AND + eih.zoneID = tat.zoneID AND + l.zoneID = ste.zoneID AND + l.zoneID = tat.zoneID AND + ste.zoneID = tat.zoneID +GROUP BY + eih.yearID, + ste.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + ste.zoneID, + ste.linkID, + ppa.pollutantID, + ppa.processID, + ste.fuelTypeID, + ste.modelYearID, + l.roadTypeID; + +-- eih.sourceTypeID = ste.sourceTypeID AND +-- eih.sourceTypeID = stmy.sourceTypeID AND +-- ste.sourceTypeID = stmy.sourceTypeID AND + +-- ppa.processID, +-- ste.sourceTypeID, +-- ste.fuelTypeID, + +end loop ##loop.sourceTypeID##; + +-- Section Total Energy +-- +-- Copy temporary results for Total Energy to final table. We are done for total energy. +-- + +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +FROM + MOVESWorkerOutputTemp; +-- End Section Total Energy + +-- Section Petroleum Energy +-- +-- Calculate Petroleum Energy +-- +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 92, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * pf.petroleumFraction +FROM + MOVESWorkerOutputTemp mwot, + PetroleumFraction pf, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + pf.countyID = mwot.countyID AND + pf.yearID = mwot.yearID AND + pf.monthGroupID = may.monthGroupID AND + pf.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 91; +-- End Section Petroleum Energy + +-- Section Fossil Fuel Energy +-- +-- Calculate Fossil Energy +-- +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +SELECT + mwot.yearID, + mwot.monthID, + mwot.dayID, + mwot.hourID, + mwot.stateID, + mwot.countyID, + mwot.zoneID, + mwot.linkID, + 93, + mwot.processID, + mwot.sourceTypeID, + mwot.fuelTypeID, + mwot.modelYearID, + mwot.roadTypeID, + mwot.SCC, + mwot.emissionQuant * ff.fossilFraction +FROM + MOVESWorkerOutputTemp mwot, + FossilFraction ff, + MonthOfAnyYear may +WHERE + may.monthID = mwot.monthID AND + ff.countyID = mwot.countyID AND + ff.yearID = mwot.yearID AND + ff.monthGroupID = may.monthGroupID AND + ff.fuelTypeID = mwot.fuelTypeID AND + mwot.processID = 91; +-- End Section Fossil Fuel Energy +-- End Section Auxiliary Power Exhaust + +ANALYZE TABLE MOVESWorkerOutput; + +alter table SourceTypeEnergy drop index XPKSourceTypeEnergy; +alter table SourceTypeEnergy drop index XPKSourceTypeEnergy2; +alter table ACAdjustment drop index XPKACAdjustment; +alter table MeanBaseRateByType drop index XPKMeanBaseRateByType; +alter table TempAdjustmentByType drop index XPKTempAdjustmentByType; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS ACOnFraction; +DROP TABLE IF EXISTS ACActivityFraction; +DROP TABLE IF EXISTS ACAdjustment; +DROP TABLE IF EXISTS SourceTypeEnergy; +DROP TABLE IF EXISTS OMD2; +DROP TABLE IF EXISTS OMDMBR; +DROP TABLE IF EXISTS MeanBaseRateByType; +DROP TABLE IF EXISTS FuelAdjustmentByType; +DROP TABLE IF EXISTS TempAdjustmentByType; +DROP TABLE IF EXISTS MOVESWorkerOutputTemp; +-- Section Fossil Fuel Energy +DROP TABLE IF EXISTS FossilFraction; +-- End Section Fossil Fuel Energy +-- Section Petroleum Energy +DROP TABLE IF EXISTS PetroleumFraction; +-- End Section Petroleum Energy +-- Section Running Exhaust +-- End Section Running Exhaust +-- Section Start Exhaust +-- End Section Start Exhaust +-- Section Extended Idle Exhaust +-- End Section Extended Idle Exhaust +-- End Section Cleanup diff --git a/database/EvaporativePermeationCalculator.sql b/database/EvaporativePermeationCalculator.sql new file mode 100644 index 0000000..93cff68 --- /dev/null +++ b/database/EvaporativePermeationCalculator.sql @@ -0,0 +1,646 @@ +-- Author Wesley Faler +-- Author Ed Campbell +-- Version 2014-04-28 + +-- @algorithm +-- @owner Evaporative Permeation Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.AverageTankTemperature##; +TRUNCATE AverageTankTemperature; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.ETOHBin##; +TRUNCATE ETOHBin; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.HCPermeationCoeff##; +TRUNCATE HCPermeationCoeff; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.Link##; +TRUNCATE Link; + +##create.ModelYear##; +TRUNCATE ModelYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceHours##; +TRUNCATE SourceHours; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.SourceTypeModelYearGroup##; +TRUNCATE SourceTypeModelYearGroup; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +-- Section WithRegClassID +##create.RegClassSourceTypeFraction##; +TRUNCATE TABLE RegClassSourceTypeFraction; +-- End Section WithRegClassID + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Extracting Data'; + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##AverageTankTemperature##' FROM AverageTankTemperature +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##ETOHBin##' +FROM ETOHBin; + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID=FuelSupply.monthGroupID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND monthID = ##context.monthID##; + +cache SELECT DISTINCT FuelSubType.* INTO OUTFILE '##FuelSubType##' +FROM FuelSubType +INNER JOIN RunSpecFuelType ON (RunSpecFuelType.fuelTypeID = FuelSubType.fuelTypeID); + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##HCPermeationCoeff##' +FROM HCPermeationCoeff +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##ModelYear##' +FROM ModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM RunSpecFuelType +INNER JOIN SourceBin ON (SourceBin.fuelTypeID = RunSpecFuelType.fuelTypeID); + +cache SELECT * INTO OUTFILE '##SourceHours##' FROM SourceHours +WHERE monthID = ##context.monthID## +AND yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeModelYearGroup.* INTO OUTFILE '##SourceTypeModelYearGroup##' +FROM SourceTypeModelYearGroup,RunSpecSourceType +WHERE SourceTypeModelYearGroup.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT DISTINCT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +INNER JOIN RunSpecFuelType ON (RunSpecFuelType.fuelTypeID = TemperatureAdjustment.fuelTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +-- Section WithRegClassID +cache select * +into outfile '##RegClassSourceTypeFraction##' +from RegClassSourceTypeFraction +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section WithRegClassID + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'End Extracting Data'; + +-- End Section Extract Data + +-- Section Processing + +-- Create tables needed for processing +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); + +DROP TABLE IF EXISTS SourceBinDistributionByAge; +CREATE TABLE SourceBinDistributionByAge ( + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceBinID BIGINT NOT NULL, + sourceBinActivityFraction FLOAT +); + +CREATE UNIQUE INDEX XPKSourceBinDistributionByAge ON SourceBinDistributionByAge ( + sourceTypeID ASC, + modelYearID ASC, + ageGroupID ASC, + polProcessID ASC, + sourceBinID ASC +); + +DROP TABLE IF EXISTS SBWeightedPermeationRate; +CREATE TABLE SBWeightedPermeationRate ( + zoneID BIGINT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + +CREATE UNIQUE INDEX XPKSBWeightedPermeationRate ON SBWeightedPermeationRate ( + zoneID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + regClassID ASC, + modelYearID ASC, + fuelTypeID ASC +); + +DROP TABLE IF EXISTS TemperatureAdjustByOpMode; +CREATE TABLE TemperatureAdjustByOpMode ( + zoneID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + tankTemperatureGroupID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + temperatureAdjustByOpMode FLOAT +); + +DROP TABLE IF EXISTS WeightedTemperatureAdjust; +CREATE TABLE WeightedTemperatureAdjust ( + linkID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + tankTemperatureGroupID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + weightedTemperatureAdjust FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedTemperatureAdjust ON WeightedTemperatureAdjust ( + linkID ASC, + monthID ASC, + hourDayID ASC, + tankTemperatureGroupID ASC, + sourceTypeID ASC, + polProcessID ASC, + fuelTypeID ASC, + modelYearID ASC +); + +DROP TABLE IF EXISTS WeightedFuelAdjustment; +CREATE TABLE WeightedFuelAdjustment ( + countyID INTEGER NOT NULL, + fuelYearID SMALLINT NOT NULL, + monthGroupID SMALLINT NOT NULL, + polProcessID int NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + weightedFuelAdjustment FLOAT +); + +CREATE UNIQUE INDEX XPKWeightedFuelAdjustment ON WeightedFuelAdjustment ( + countyID ASC, + fuelYearID ASC, + monthGroupID ASC, + polProcessID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +DROP TABLE IF EXISTS FuelAdjustedEmissionRate; +CREATE TABLE FuelAdjustedEmissionRate ( + zoneID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustedEmissionRate FLOAT +); + +CREATE UNIQUE INDEX XPKFuelAdjustedEmissionRate ON FuelAdjustedEmissionRate ( + zoneID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + regClassID ASC, + modelYearID ASC, + fuelTypeID ASC +); + +DROP TABLE IF EXISTS FuelAdjustedEmissionQuant; +CREATE TABLE FuelAdjustedEmissionQuant ( + linkID INTEGER NOT NULL, + hourDayID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + regClassID SMALLINT NOT NULL, + polProcessID int NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelAdjustedEmissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKFuelAdjustedEmissionQuant ON FuelAdjustedEmissionQuant ( + linkID ASC, + hourDayID ASC, + monthID ASC, + yearID ASC, + modelYearID ASC, + sourceTypeID ASC, + regClassID ASC, + polProcessID ASC, + fuelTypeID ASC +); + +update FuelFormulation set ETOHVolume=0 where ETOHVolume is null; + +loop ##loop.sourceTypeID##; +select sourceTypeID from RunSpecSourceType; + +-- +-- PC-1: Weight Emission Rates by Source Bin +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-1a: Weight Emission Rates by Source Bin'; + +TRUNCATE SourceBinDistributionByAge; + +-- @algorithm Add ageGroupID to SourceBinDistribution.sourceBinActivityFraction using model year and the calendar year. +INSERT INTO SourceBinDistributionByAge (sourceTypeID, modelYearID, ageGroupID, + polProcessID, sourceBinID, sourceBinActivityFraction) +SELECT sourceTypeID, modelYearID, ageGroupID, polProcessID, + sourceBinID, sourceBinActivityFraction +FROM SourceBinDistribution sbd +INNER JOIN SourceTypeModelYear stmy ON (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID) +INNER JOIN AgeCategory ac ON (ac.ageID = ##context.year## - modelYearID) +WHERE sourceTypeID = ##loop.sourceTypeID##; + +ANALYZE TABLE SourceBinDistributionByAge; + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-1b: Weight Emission Rates by Source Bin'; + +TRUNCATE SBWeightedPermeationRate; + +-- Section WithRegClassID + +-- @algorithm SBWeightedPermeationRate.meanBaseRate = sourceBinActivityFraction * EmissionRateByAge.meanBaseRate * regClassFraction +INSERT INTO SBWeightedPermeationRate (zoneID, yearID, polProcessID, sourceTypeID, regClassID, + modelYearID, fuelTypeID, meanBaseRate) +SELECT ##context.iterLocation.zoneRecordID##, ##context.year## AS yearID, sbda.polProcessID, + sbda.sourceTypeID, stf.regClassID, sbda.modelYearID, sb.fuelTypeID, + SUM(sourceBinActivityFraction*meanBaseRate*stf.regClassFraction) AS meanBaseRate +FROM SourceBinDistributionByAge sbda +INNER JOIN EmissionRateByAge era ON (era.sourceBinID=sbda.sourceBinID AND + era.polProcessID=sbda.polProcessID AND era.ageGroupID=sbda.ageGroupID) +INNER JOIN SourceBin sb ON (sb.sourceBinID=era.sourceBinID) +inner join RegClassSourceTypeFraction stf on ( + stf.sourceTypeID = sbda.sourceTypeID + and stf.fuelTypeID = sb.fuelTypeID + and stf.modelYearID = sbda.modelYearID) +WHERE sbda.sourceTypeID = ##loop.sourceTypeID## +GROUP BY sbda.polProcessID, sbda.sourceTypeID, stf.regClassID, sbda.modelYearID, sb.fuelTypeID +order by null; +-- End Section WithRegClassID + +-- Section NoRegClassID +INSERT INTO SBWeightedPermeationRate (zoneID, yearID, polProcessID, sourceTypeID, regClassID, + modelYearID, fuelTypeID, meanBaseRate) +SELECT ##context.iterLocation.zoneRecordID##, ##context.year## AS yearID, sbda.polProcessID, + sbda.sourceTypeID, 0 as regClassID, modelYearID, sb.fuelTypeID, + SUM(sourceBinActivityFraction*meanBaseRate) AS meanBaseRate +FROM SourceBinDistributionByAge sbda +INNER JOIN EmissionRateByAge era ON (era.sourceBinID=sbda.sourceBinID AND + era.polProcessID=sbda.polProcessID AND era.ageGroupID=sbda.ageGroupID) +INNER JOIN SourceBin sb ON (sb.sourceBinID=era.sourceBinID) +WHERE sbda.sourceTypeID = ##loop.sourceTypeID## +GROUP BY sbda.polProcessID, sbda.sourceTypeID, modelYearID, sb.fuelTypeID +order by null; +-- End Section NoRegClassID + +ANALYZE TABLE SBWeightedPermeationRate; + +-- +-- PC-2: Calculate weighted temperature adjustment +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-2a: Calculate weighted temperature adjustment'; + +TRUNCATE TemperatureAdjustByOpMode; + +-- @algorithm temperatureAdjustByOpMode = tempAdjustTermA*EXP(tempAdjustTermB*averageTankTemperature) +INSERT INTO TemperatureAdjustByOpMode ( + zoneID, monthID, hourDayID, tankTemperatureGroupID, opModeID, polProcessID, + fuelTypeID, temperatureAdjustByOpMode, + modelYearID ) +SELECT zoneID, monthID, hourDayID, tankTemperatureGroupID, opModeID, polProcessID, fuelTypeID, + tempAdjustTermA*EXP(tempAdjustTermB*averageTankTemperature) AS temperatureAdjustByOpMode, + modelYearID +FROM AverageTankTemperature +INNER JOIN TemperatureAdjustment +INNER JOIN ModelYear my on (modelYearID between minModelYearID and maxModelYearID); + +create index ixTemperatureAdjustByOpMode1 on TemperatureAdjustByOpMode ( + hourDayID asc, + polProcessID asc, + opModeID asc, + zoneID asc, + modelYearID asc +); + + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-2b: Calculate weighted temperature adjustment'; + +TRUNCATE WeightedTemperatureAdjust; + +-- @algorithm weightedTemperatureAdjust = sum(temperatureAdjustByOpMode * opModeFraction) across all operating modes. +INSERT INTO WeightedTemperatureAdjust ( + linkID, monthID, hourDayID, tankTemperatureGroupID, sourceTypeID, + polProcessID, fuelTypeID, modelYearID, weightedTemperatureAdjust) +SELECT omd.linkID, monthID, taom.hourDayID, tankTemperatureGroupID, + sourceTypeID, taom.polProcessID, fuelTypeID, modelYearID, + SUM(temperatureAdjustByOpMode*opModeFraction) AS weightedTemperatureAdjust +FROM TemperatureAdjustByOpMode taom +INNER JOIN OpModeDistribution omd ON (omd.hourDayID=taom.hourDayID AND + omd.polProcessID=taom.polProcessID AND taom.opModeID=omd.opModeID) +INNER JOIN Link l ON (l.linkID=omd.linkID AND l.zoneID=taom.zoneID) +WHERE sourceTypeID = ##loop.sourceTypeID## +GROUP BY omd.linkID, monthID, taom.hourDayID, tankTemperatureGroupID, + sourceTypeID, taom.polProcessID, fuelTypeID, modelYearID +ORDER BY NULL; + +ANALYZE TABLE WeightedTemperatureAdjust; + +-- +-- PC-3: Calculate weighted fuel adjustment +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-3: Calculate weighted fuel adjustment'; + +TRUNCATE WeightedFuelAdjustment; + +-- INSERT INTO WeightedFuelAdjustment ( +-- countyID, fuelYearID, monthGroupID, polProcessID, modelYearID, fuelTypeID, +-- sourceTypeID, weightedFuelAdjustment) +-- SELECT countyID, fs.fuelYearID, monthGroupID, fa.polProcessID, modelYearID, fst.fuelTypeID, +-- sourceTypeID, SUM(marketShare*fuelAdjustment) AS weightedFuelAdjustment +-- FROM FuelAdjustment fa +-- INNER JOIN PollutantProcessModelYear ppmy ON (ppmy.polProcessID=fa.polProcessID AND +-- ppmy.fuelMYGroupID=fa.fuelMYGroupid) +-- INNER JOIN FuelSupply fs ON (fs.fuelFormulationID=fa.fuelFormulationID) +-- INNER JOIN Year y ON (y.fuelYearID=fs.fuelYearID) +-- INNER JOIN FuelFormulation ff ON (ff.fuelFormulationID=fs.fuelFormulationID) +-- INNER JOIN FuelSubType fst ON (fst.fuelSubTypeID=ff.fuelSubTypeID) +-- WHERE y.yearID=??context.year?? +-- AND sourceTypeID = ##loop.sourceTypeID## +-- GROUP BY countyID, fs.fuelYearID, monthGroupID, fa.polProcessID, modelYearID, fst.fuelTypeID, +-- sourceTypeID +-- ORDER BY NULL + +-- @algorithm weightedFuelAdjustment = sum(marketShare*(fuelAdjustment+GPAFract*(fuelAdjustmentGPA-fuelAdjustment))) across fuel formulations in the fuel supply. +INSERT INTO WeightedFuelAdjustment ( + countyID, fuelYearID, monthGroupID, polProcessID, modelYearID, fuelTypeID, + sourceTypeID, weightedFuelAdjustment) +SELECT c.countyID, fs.fuelYearID, fs.monthGroupID, fa.polProcessID, ppmy.modelYearID, fst.fuelTypeID, + ##loop.sourceTypeID## as sourceTypeID, + SUM(marketShare*(fuelAdjustment+GPAFract*(fuelAdjustmentGPA-fuelAdjustment))) AS weightedFuelAdjustment +FROM FuelSupply fs +INNER JOIN County c +INNER JOIN HCPermeationCoeff fa +INNER JOIN PollutantProcessMappedModelYear ppmy ON (ppmy.polProcessID=fa.polProcessID + AND ppmy.fuelMYGroupID=fa.fuelMYGroupid) +INNER JOIN Year y ON (y.fuelYearID=fs.fuelYearID) +INNER JOIN FuelFormulation ff ON (ff.fuelFormulationID=fs.fuelFormulationID) +INNER JOIN ETOHBin ebin ON (ebin.etohThreshID=fa.etohThreshID + AND etohThreshLow <= ff.ETOHVolume AND ff.ETOHVolume < etohThreshHigh) +INNER JOIN FuelSubType fst ON (fst.fuelSubTypeID=ff.fuelSubTypeID) +WHERE y.yearID=##context.year## +AND fs.fuelRegionID = ##context.fuelRegionID## +GROUP BY c.countyID, fs.fuelYearID, fs.monthGroupID, fa.polProcessID, ppmy.modelYearID, fst.fuelTypeID, sourceTypeID +ORDER BY NULL; + +--AND sourceTypeID = ##loop.sourceTypeID## -- sourceTypeID is not in any of the new tables + +ANALYZE TABLE WeightedFuelAdjustment; + +-- +-- PC-4: Calculate Fuel Adjusted Mean Base Rate +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-4: Calculate Fuel Adjusted Mean Base Rate'; + +TRUNCATE FuelAdjustedEmissionRate; + +-- @algorithm fuelAdjustedEmissionRate = SBWeightedPermeationRate.meanBaseRate * weightedFuelAdjustment +INSERT INTO FuelAdjustedEmissionRate (zoneID, yearID, polProcessID, + sourceTypeID, regClassID, modelYearID, fuelTypeID, fuelAdjustedEmissionRate) +SELECT zoneID, sbwpr.yearID, sbwpr.polProcessID, sbwpr.sourceTypeID, sbwpr.regClassID, + sbwpr.modelYearID, sbwpr.fuelTypeID, meanBaseRate*weightedFuelAdjustment +FROM SBWeightedPermeationRate sbwpr +INNER JOIN WeightedFuelAdjustment wfa ON (wfa.polProcessID=sbwpr.polProcessID AND + wfa.modelYearID=sbwpr.modelYearID AND wfa.sourceTypeID=sbwpr.sourceTypeID AND + wfa.fuelTypeID=sbwpr.fuelTypeID) +INNER JOIN Year y ON (y.yearID=sbwpr.yearID AND y.fuelYearID=wfa.fuelYearID) +WHERE sbwpr.sourceTypeID = ##loop.sourceTypeID##; + +ANALYZE TABLE FuelAdjustedEmissionRate; + +-- +-- PC-5: Calculate fuel adjusted emissionQuant +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-5: Calculate fuel adjusted emissionQuant'; + +TRUNCATE FuelAdjustedEmissionQuant; + +-- @algorithm fuelAdjustedEmissionQuant = fuelAdjustedEmissionRate * sourceHours +INSERT INTO FuelAdjustedEmissionQuant ( + linkID, hourDayID, monthID, yearID, modelYearID, + sourceTypeID, regClassID, polProcessID, fuelTypeID, fuelAdjustedEmissionQuant) +SELECT sh.linkID, sh.hourDayID, sh.monthID, fambr.yearID, + fambr.modelYearID, fambr.sourceTypeID, fambr.regClassID, fambr.polProcessID, fambr.fuelTypeID, + fuelAdjustedEmissionRate*sourceHours AS fuelAdjustedEmissionQuant +FROM SourceHours sh +INNER JOIN FuelAdjustedEmissionRate fambr ON (fambr.yearID=sh.yearID + AND fambr.modelYearID=sh.yearID-sh.ageID AND fambr.sourceTypeID=sh.sourceTypeID) +INNER JOIN Link l ON (l.linkID=sh.linkID AND l.zoneID=fambr.zoneID) +WHERE sh.yearID=##context.year## +AND fambr.sourceTypeID = ##loop.sourceTypeID##; + +ANALYZE TABLE FuelAdjustedEmissionQuant; + +-- +-- PC-6: Calculate EmissionQuant with Temperature Adjustment +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'PC-6: Calculate EmissionQuant with Temperature Adjustment'; + +-- @algorithm emissionQuant = weightedTemperatureAdjust * fuelAdjustedEmissionQuant +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, + pollutantID, processID, sourceTypeID, regClassID, modelYearID, fuelTypeID, SCC, emissionQuant) +SELECT stateID, l.countyID, l.zoneID, faeq.linkID, roadTypeID, yearID, faeq.monthID, dayID, hourID, pollutantID, + processID, faeq.sourceTypeID, faeq.regClassID, faeq.modelYearID, faeq.fuelTypeID, NULL AS SCC, + weightedTemperatureAdjust*fuelAdjustedEmissionQuant AS emissionQuant +FROM FuelAdjustedEmissionQuant faeq +INNER JOIN WeightedTemperatureAdjust wta ON ( + wta.linkID=faeq.linkID AND wta.hourDayID=faeq.hourDayID AND + wta.monthID=faeq.monthID AND wta.sourceTypeID=faeq.sourceTypeID AND + wta.polProcessID=faeq.polProcessID AND wta.fuelTypeID=faeq.fuelTypeID AND + wta.modelYearID=faeq.modelYearID) +INNER JOIN PollutantProcessAssoc ppa ON ( + ppa.polProcessID=faeq.polProcessID) +INNER JOIN PollutantProcessModelYear ppmy ON ( + ppmy.polProcessID=ppa.polProcessID AND + ppmy.modelYearID=faeq.modelYearID) +INNER JOIN SourceTypeModelYearGroup stmyg ON ( + stmyg.sourceTypeID=faeq.sourceTypeID AND + stmyg.modelYearGroupID=ppmy.modelYearGroupID AND + stmyg.tankTemperatureGroupID=wta.tankTemperatureGroupID) +INNER JOIN HourDay hd ON (hd.hourDayID=faeq.hourDayID) +INNER JOIN Link l ON (l.linkID=faeq.linkID) +INNER JOIN County c ON (c.countyID=l.countyID) +WHERE faeq.sourceTypeID = ##loop.sourceTypeID##; + +end loop ##loop.sourceTypeID##; + +alter table TemperatureAdjustByOpMode drop index ixTemperatureAdjustByOpMode1; + +-- End Section Processing +-- Section Cleanup +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Section Cleanup'; + +DROP TABLE IF EXISTS FuelAdjustedEmissionQuant; +DROP TABLE IF EXISTS FuelAdjustedEmissionRate; +DROP TABLE IF EXISTS SBWeightedPermeationRate; +DROP TABLE IF EXISTS SourceBinDistributionByAge; +DROP TABLE IF EXISTS TemperatureAdjustByOpMode; +DROP TABLE IF EXISTS WeightedFuelAdjustment; +DROP TABLE IF EXISTS WeightedTemperatureAdjust; +-- End Section Cleanup diff --git a/database/FillExecution.sql b/database/FillExecution.sql new file mode 100644 index 0000000..4066a8a --- /dev/null +++ b/database/FillExecution.sql @@ -0,0 +1,151 @@ +-- Create utility tables in the MOVESExecution database. +-- Author Harvey Michaels +-- Author Wesley Faler +-- Version 2014-06-25 + +-- -------------------------------------------------------------------- +-- Fill the set of regions used by the runspec +-- -------------------------------------------------------------------- +insert into runSpecFuelRegion (fuelRegionID) +select distinct regionID as fuelRegionID +from regionCounty +inner join runSpecCounty using (countyID) +where regionCodeID=1; + +-- -------------------------------------------------------------------- +-- Add indexes and extra columns needed for runtime but not in the default database. +-- -------------------------------------------------------------------- +alter table OpModeDistribution add key (linkID, polProcessID, sourceTypeID); + +-- -------------------------------------------------------------------- +-- Filter any disabled mechanism and speciation profile data +-- -------------------------------------------------------------------- +delete from mechanismName +where not exists ( + select * + from runSpecPollutant + inner join pollutant using (pollutantID) + inner join pollutantDisplayGroup using (pollutantDisplayGroupID) + where pollutantDisplayGroupName='Mechanisms' + and pollutantID = 1000 + ((mechanismID-1) * 500) +); + +delete from integratedSpeciesSet where useISSyn<>'Y'; + +delete from integratedSpeciesSet +where not exists ( + select * from mechanismName + where mechanismName.mechanismID = integratedSpeciesSet.mechanismID); + +delete from integratedSpeciesSetName +where not exists ( + select * from integratedSpeciesSet + where integratedSpeciesSet.integratedSpeciesSetID = integratedSpeciesSetName.integratedSpeciesSetID); + +-- Remove TOGSpeciationProfile entries that use inactive integratedSpeciesSet entries. +-- Keep any TOGSpeciationProfile entries that are not tied to any integratedSpeciesSet. +delete from TOGSpeciationProfile +where integratedSpeciesSetID <> 0 +and not exists ( + select * from integratedSpeciesSet + where integratedSpeciesSet.integratedSpeciesSetID = TOGSpeciationProfile.integratedSpeciesSetID); + +delete from lumpedSpeciesName +where not exists ( + select * from TOGSpeciationProfile + where TOGSpeciationProfile.lumpedSpeciesName = lumpedSpeciesName.lumpedSpeciesName); + +delete from togSpeciation +where not exists ( + select * from TOGSpeciationProfile + where TOGSpeciationProfile.togSpeciationProfileID = togSpeciation.togSpeciationProfileID); + +-- Expand togSpeciationProfile entries that use wildcard togSpeciationPofileID=0 +drop table if exists TOGTemp; +create table TOGTemp +select distinct mechanismID, TOGspeciationProfileID, pollutantID, lumpedSpeciesName +from togSpeciationProfile; + +alter table TOGTemp add unique key (mechanismID, TOGspeciationProfileID, pollutantID, lumpedSpeciesName); + +insert ignore into TOGSpeciationProfile (mechanismID, TOGspeciationProfileID, integratedSpeciesSetID, + pollutantID, lumpedSpeciesName, + TOGSpeciationDivisor, TOGSpeciationMassFraction) +select distinct tsp.mechanismID, ts.TOGspeciationProfileID, tsp.integratedSpeciesSetID, + tsp.pollutantID, tsp.lumpedSpeciesName, + tsp.TOGSpeciationDivisor, tsp.TOGSpeciationMassFraction +from togSpeciationProfile tsp, togSpeciation ts +where tsp.togSpeciationProfileID='0' +and not exists ( + select * + from TOGTemp t + where t.mechanismID=tsp.mechanismID + and t.TOGspeciationProfileID=ts.TOGspeciationProfileID + and t.pollutantID=tsp.pollutantID + and t.lumpedSpeciesName=tsp.lumpedSpeciesName +); + +drop table if exists TOGTemp; + +-- Delete any wildcard togSpeciationProfile entries after expansion +delete from togSpeciationProfile where togSpeciationProfileID='0'; + +-- Delete any togSpeciationProfile entries for integratedSpeciesSetID=0 +-- that are represented by a non-zero integratedSpeciesSetID. +drop table if exists TOGTemp; +create table TOGTemp +select distinct mechanismID, TOGspeciationProfileID, pollutantID, lumpedSpeciesName +from togSpeciationProfile +where integratedSpeciesSetID<>0; + +alter table TOGTemp add unique key (mechanismID, TOGspeciationProfileID, pollutantID, lumpedSpeciesName); + +delete from togSpeciationProfile +where integratedSpeciesSetID=0 +and exists ( + select * + from TOGTemp t + where t.mechanismID=togSpeciationProfile.mechanismID + and t.TOGspeciationProfileID=togSpeciationProfile.TOGspeciationProfileID + and t.pollutantID=togSpeciationProfile.pollutantID + and t.lumpedSpeciesName=togSpeciationProfile.lumpedSpeciesName +); + +drop table if exists TOGTemp; + +-- Remove unused TOG profile names +delete from TOGSpeciationProfileName +where not exists ( + select * from TOGSpeciationProfile + where TOGSpeciationProfile.togSpeciationProfileID = TOGSpeciationProfileName.togSpeciationProfileID); + +-- Decode the togSpeciation.modelYearGroupID +alter table togSpeciation add minModelYearID smallint not null default 0; +alter table togSpeciation add maxModelYearID smallint not null default 0; + +update togSpeciation set minModelYearID = floor(modelYearGroupID/10000), + maxModelYearID = mod(modelYearGroupID,10000) +where minModelYearID=0 or maxModelYearID=0; + +-- -------------------------------------------------------------------- +-- Provide average speed distributions for ramp road types. +-- These are needed when providing separate rates for ramps. +-- -------------------------------------------------------------------- +-- Copy Rural Restricted Access (2) into Rural Ramps (8) +insert into avgSpeedDistribution (sourceTypeID, roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction) +select sourceTypeID, 8 as roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction +from avgSpeedDistribution +where roadTypeID=2; + +-- Copy Urban Restricted Access (4) into Urban Ramps (9) +insert into avgSpeedDistribution (sourceTypeID, roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction) +select sourceTypeID, 9 as roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction +from avgSpeedDistribution +where roadTypeID=4; + +-- -------------------------------------------------------------------- +-- Provide a place for THC E85/E10 fuel adjustments. These are special cases +-- to match E10. These ratios are made with E85 fuel properties except +-- using an E10 RVP. +-- -------------------------------------------------------------------- +create table altCriteriaRatio like criteriaRatio; diff --git a/database/FuelSupplyImporter.sql b/database/FuelSupplyImporter.sql new file mode 100644 index 0000000..67b278e --- /dev/null +++ b/database/FuelSupplyImporter.sql @@ -0,0 +1,447 @@ +-- FuelSupplyImporter.sql - script to check import errors for the +-- tables: AVFT, fuelFormulation, fuelSupply, and fuelUsageFraction. +-- Author Wesley Faler +-- Version 2015-09-15 + +drop procedure if exists spCheckFuelSupplyImporter; + +BeginBlock +create procedure spCheckFuelSupplyImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure, allowing data from the default database + -- Mode 2 is run to check overall success/failure, requiring no data from the default database + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + declare defaultFuelCount int default 0; + declare avftFuelCount int default 0; + + -- Scale 0 is national + -- Scale 1 is single county + -- Scale 2 is project domain + -- Scale 3 is Nonroad + declare scale int default ##scale##; + + -- useFuelUsageFraction 0 when the fuelUsageFraction table is not used in the model + declare useFuelUsageFraction int default ##USE_FUELUSAGEFRACTION##; + + if(mode = 0) then + -- Create any new fuel years and associate them to the required years + drop table if exists tempNewFuelYear; + + if(scale = 3) then + create table tempNewFuelYear + select distinct fuelYearID + from nrFuelSupply fs + left outer join ##defaultDatabase##.fuelSupplyYear fsy using (fuelYearID) + where fsy.fuelYearID is null; + else + create table tempNewFuelYear + select distinct fuelYearID + from fuelSupply fs + left outer join ##defaultDatabase##.fuelSupplyYear fsy using (fuelYearID) + where fsy.fuelYearID is null; + end if; + + drop table if exists fuelSupplyYear; + + create table if not exists fuelSupplyYear ( + fuelYearID smallint(6) not null default '0', + primary key (fuelYearID) + ); + + insert ignore into fuelSupplyYear (fuelYearID) + select fuelYearID from tempNewFuelYear; + + drop table if exists tempYear; + + create table if not exists tempYear ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) + ); + + create table if not exists year ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) + ); + + insert into tempYear (yearID, isBaseYear, fuelYearID) + select yearID, isBaseYear, nfy.fuelYearID + from tempNewFuelYear nfy + inner join ##defaultDatabase##.year y on (y.yearID=nfy.fuelYearID); + +-- insert ignore into year (yearID, isBaseYear, fuelYearID) +-- select yearID, isBaseYear, fuelYearID +-- from tempYear + + update year, tempYear set year.fuelYearID=tempYear.fuelYearID + where year.yearID=tempYear.yearID; + + drop table if exists tempYear; + drop table if exists tempNewFuelYear; + end if; + + -- Complain about any years outside of MOVES's range + if(scale = 3) then + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel Year ',fuelYearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage + from nrFuelSupply + where fuelYearID < 1990 or fuelYearID > 2050 + and marketShare > 0; + else + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel Year ',fuelYearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage + from fuelSupply + where fuelYearID < 1990 or fuelYearID > 2050 + and marketShare > 0; + end if; + + if(mode = 0) then + if(scale = 3) then + -- Remove records with zero market shares + delete from nrFuelSupply where marketShare < 0.0001; + else + -- Remove records with zero market shares + delete from fuelSupply where marketShare < 0.0001; + end if; + end if; + + -- Complain about unknown fuel formulations + if(scale = 3) then + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel formulation ',fuelFormulationID,' is unknown') as message + from nrFuelSupply + where fuelFormulationID not in ( + select fuelFormulationID + from fuelFormulation + union + select fuelFormulationID + from ##defaultDatabase##.fuelFormulation + ) + and marketShare > 0; + else + if(mode = 2 or scale in (1,2)) then + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel formulation ',fuelFormulationID,' is unknown') as message + from fuelSupply + where fuelFormulationID not in ( + select fuelFormulationID + from fuelFormulation + ) + and marketShare > 0; + else + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel formulation ',fuelFormulationID,' is unknown') as message + from fuelSupply + where fuelFormulationID not in ( + select fuelFormulationID + from fuelFormulation + union + select fuelFormulationID + from ##defaultDatabase##.fuelFormulation + ) + and marketShare > 0; + end if; + end if; + + -- Correct fuelFormulation.fuelSubtypeID for gasoline and ethanol fuels + -- Note: RFG (sub type 11) and conventional gasoline (sub type 10) cannot be distinguished by ETOHVolume, so anything with + -- ----- a low ETOHVolume and not already assigned as RFG is assigned to conventional gasoline. + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 10 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 10 and ETOHVolume < 0.10 and fuelSubtypeID <> 11 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 12 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 12 and ETOHVolume >= 9 and ETOHVolume < 12.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 13 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 13 and ETOHVolume >= 6 and ETOHVolume < 9 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 14 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 14 and ETOHVolume >= 0.10 and ETOHVolume < 6 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 15 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 15 and ETOHVolume >= 12.5 and ETOHVolume < 17.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 51 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 51 and ETOHVolume >= 70.5 and ETOHVolume <= 100 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 52 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 52 and ETOHVolume >= 50.5 and ETOHVolume < 70.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' changed fuelSubtypeID from ',fuelSubtypeID, ' to 18 based on ETOHVolume') as message + from fuelFormulation where fuelSubtypeID <> 18 and ETOHVolume >= 17.5 and ETOHVolume < 50.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + update fuelFormulation set fuelSubtypeID = 10 where fuelSubtypeID <> 10 and ETOHVolume < 0.10 and fuelSubtypeID <> 11 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 12 where fuelSubtypeID <> 12 and ETOHVolume >= 9 and ETOHVolume < 12.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 13 where fuelSubtypeID <> 13 and ETOHVolume >= 6 and ETOHVolume < 9 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 14 where fuelSubtypeID <> 14 and ETOHVolume >= 0.10 and ETOHVolume < 6 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 15 where fuelSubtypeID <> 15 and ETOHVolume >= 12.5 and ETOHVolume < 17.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 51 where fuelSubtypeID <> 51 and ETOHVolume >= 70.5 and ETOHVolume <= 100 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 52 where fuelSubtypeID <> 52 and ETOHVolume >= 50.5 and ETOHVolume < 70.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + update fuelFormulation set fuelSubtypeID = 18 where fuelSubtypeID <> 18 and ETOHVolume >= 17.5 and ETOHVolume < 50.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18); + + -- Complain about fuel types that were imported but won't be used + if(scale = 3) then + insert into importTempMessages (message) + select distinct concat('Warning: Fuel type ',fuelTypeID,' is imported but will not be used') as message + from nrFuelSupply fs + inner join ##defaultDatabase##.fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + where fuelTypeID not in (##fuelTypeIDs##) + union + select distinct concat('Warning: Fuel type ',fuelTypeID,' is imported but will not be used') as message + from nrFuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + where fuelTypeID not in (##fuelTypeIDs##); + else + if(mode = 2 or scale in (1,2)) then + insert into importTempMessages (message) + select distinct concat('Warning: Fuel type ',fuelTypeID,' is imported but will not be used') as message + from fuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + where fuelTypeID not in (##fuelTypeIDs##); + else + insert into importTempMessages (message) + select distinct concat('Warning: Fuel type ',fuelTypeID,' is imported but will not be used') as message + from fuelSupply fs + inner join ##defaultDatabase##.fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + where fuelTypeID not in (##fuelTypeIDs##) + union + select distinct concat('Warning: Fuel type ',fuelTypeID,' is imported but will not be used') as message + from fuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + where fuelTypeID not in (##fuelTypeIDs##); + end if; + end if; + + -- Complain about fixable gaps in T50/T90/E200/E300 data + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' is using calculated E200') as message + from fuelFormulation where T50 is not null and T50 > 0 and (e200 is null or e200 <= 0) + and fuelSubtypeID not in (30); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' is using calculated E300') as message + from fuelFormulation where T90 is not null and T90 > 0 and (e300 is null or e300 <= 0) + and fuelSubtypeID not in (30); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' is using calculated T50') as message + from fuelFormulation where e200 is not null and e200 > 0 and (T50 is null or T50 <= 0) + and fuelSubtypeID not in (30); + + insert into importTempMessages (message) + select distinct concat('Warning: Fuel formulation ',fuelFormulationID,' is using calculated T90') as message + from fuelFormulation where e300 is not null and e300 > 0 and (T90 is null or T90 <= 0) + and fuelSubtypeID not in (30); + + -- Complain about unfixable gaps in T50/T90/E200/E300 data + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel formulation ',fuelFormulationID,' is missing both E200 and T50') as message + from fuelFormulation where (T50 is null or T50 <= 0) and (e200 is null or e200 <= 0) + and fuelSubtypeID not in (20,21,22,23,24,30,40,90); + + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel formulation ',fuelFormulationID,' is missing both E300 and T90') as message + from fuelFormulation where (T90 is null or T90 <= 0) and (e300 is null or e300 <= 0) + and fuelSubtypeID not in (20,21,22,23,24,30,40,90); + + -- Fill gaps in T50/T90/E200/E300 data + update fuelFormulation set T50 = 2.0408163 * (147.91 - e200) where e200 is not null and e200 > 0 and (T50 is null or T50 <= 0); + update fuelFormulation set T90 = 4.5454545 * (155.47 - e300) where e300 is not null and e300 > 0 and (T90 is null or T90 <= 0); + update fuelFormulation set e200 = 147.91-(T50/2.0408163) where T50 is not null and T50 > 0 and (e200 is null or e200 <= 0); + update fuelFormulation set e300 = 155.47-(T90/4.5454545) where T90 is not null and T90 > 0 and (e300 is null or e300 <= 0); + + -- Ensure market shares sum to 1.0 for all fuel types, year, month, counties. + drop table if exists tempFuelSupplyNotUnity; + + drop table if exists tempFuelSupplyUnion; + + if(scale = 3) then + create table tempFuelSupplyUnion + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, marketShare, fuelFormulationID + from nrFuelSupply fs + inner join ##defaultDatabase##.fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + union + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, marketShare, fuelFormulationID + from nrFuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID); + else + if(mode = 2 or scale in (1,2)) then + create table tempFuelSupplyUnion + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, marketShare, fuelFormulationID + from fuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID); + else + create table tempFuelSupplyUnion + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, marketShare, fuelFormulationID + from fuelSupply fs + inner join ##defaultDatabase##.fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID) + union + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, marketShare, fuelFormulationID + from fuelSupply fs + inner join fuelFormulation ff using (fuelFormulationID) + inner join ##defaultDatabase##.fuelSubType fst using (fuelSubTypeID); + end if; + end if; + + create table tempFuelSupplyNotUnity + select fuelTypeID, fuelRegionID, fuelYearID, monthGroupID, sum(marketShare) as sumMarketShare + from tempFuelSupplyUnion fs + group by fuelTypeID, fuelRegionID, fuelYearID, monthGroupID + having round(sum(marketShare),4) <> 1.0000; + + drop table if exists tempFuelSupplyUnion; + + insert into importTempMessages (message) + select concat('ERROR: Region ',fuelRegionID,', year ',fuelYearID,', month ',monthGroupID,', fuel type ',fuelTypeID,' market share is not 1.0 but instead ',round(sumMarketShare,4)) + from tempFuelSupplyNotUnity; + + drop table if exists tempFuelSupplyNotUnity; + + if(scale < 3 and useFuelUsageFraction > 0) then + -- ----------------------------------------------------------------------------------------------------- + -- Check fuelUsageFraction table + -- ----------------------------------------------------------------------------------------------------- + + -- Complain about any years outside of MOVES's range + insert into importTempMessages (message) + select distinct concat('ERROR: Fuel Year ',fuelYearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage + from fuelUsageFraction + where fuelYearID < 1990 or fuelYearID > 2050 + and usageFraction > 0; + + -- if(mode = 0) then + -- -- Remove records with zero usage + -- delete from fuelUsageFraction where usageFraction < 0.0001; + -- end if; + + -- Ensure usage fractions sum to 1.0 for all counties, fuel years, model year groups, and sourcebin fuel types. + drop table if exists tempFuelUsageFractionNotUnity; + + drop table if exists tempFuelUsageFractionNotUnity; + + create table tempFuelUsageFractionNotUnity + select countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, sum(usageFraction) as sumUsageFraction + from fuelUsageFraction + group by countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID + having round(sum(usageFraction),4) <> 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: County ',countyID,', year ',fuelYearID,', model year group ',modelYearGroupID,', source fuel type ',sourceBinFuelTypeID,' usage fraction is not 1.0 but instead ',round(sumUsageFraction,4)) + from tempFuelUsageFractionNotUnity; + + drop table if exists tempFuelUsageFractionNotUnity; + end if; + + -- Check AVFT + if(scale < 3) then + set howMany=0; + select count(*) into howMany from avft; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + insert into importTempMessages (message) + select concat('ERROR: source type ',sourceTypeID,', model year ',modelYearID,', fuel engine fraction is more than 1.0, being ',round(sum(fuelEngFraction),4)) + from avft + group by sourceTypeID, modelYearID + having round(sum(fuelEngFraction),4) > 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: source type ',sourceTypeID,', model year ',modelYearID,', fuel ',fuelTypeID,', engine ',engTechID,', fuel engine fraction is less than 0.0, being ',round(fuelEngFraction,4)) + from avft + where round(fuelEngFraction,4) < 0.0000; + + insert into importTempMessages (message) + select concat('Warning: source type ',sourceTypeID,', model year ',modelYearID,', fuel engine fraction is not 1.0 but instead ',round(sum(fuelEngFraction),4)) + from avft + group by sourceTypeID, modelYearID + having round(sum(fuelEngFraction),4) < 1.0000 and round(sum(fuelEngFraction),4) > 0.0000; + + insert into importTempMessages (message) + select distinct concat('ERROR: Imported AVFT is missing source type ',sourceTypeID, ', model year ',modelYearID,', fuel ',fuelTypeID) as message + from ( + select distinct sourceTypeID, modelYearID, fuelTypeID + from ##defaultDatabase##.sampleVehiclePopulation + where sourceTypeID in (##sourceTypeIDs##) + ) t1 + left outer join avft using (sourceTypeID, modelYearID, fuelTypeID) + where avft.sourceTypeID is null + and avft.modelYearID is null + and avft.fuelTypeID is null + and t1.sourceTypeID in (##sourceTypeIDs##) + and t1.modelYearID in ( + select distinct modelYearID + from ##defaultDatabase##.modelYear, + ##defaultDatabase##.year + where yearID in (##yearIDs##) + and modelYearID >= yearID - 30 + and modelYearID <= yearID + ) + order by t1.sourceTypeID, t1.modelYearID, t1.fuelTypeID; + + insert into importTempMessages (message) + select distinct concat('Warning: No emission rates exist for AVFT source type ',sourceTypeID, ', model year ',modelYearID,', fuel ',fuelTypeID) as message + from avft + left outer join ( + select distinct sourceTypeID, modelYearID, fuelTypeID + from ##defaultDatabase##.sampleVehiclePopulation + where sourceTypeID in (##sourceTypeIDs##) + ) t1 using (sourceTypeID, modelYearID, fuelTypeID) + where t1.sourceTypeID is null + and t1.modelYearID is null + and t1.fuelTypeID is null + and avft.sourceTypeID in (##sourceTypeIDs##) + and avft.modelYearID in ( + select distinct modelYearID + from ##defaultDatabase##.modelYear, + ##defaultDatabase##.year + where yearID in (##yearIDs##) + and modelYearID >= yearID - 30 + and modelYearID <= yearID + ) + order by avft.sourceTypeID, avft.modelYearID, avft.fuelTypeID; + end if; + end if; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckFuelSupplyImporter(); +drop procedure if exists spCheckFuelSupplyImporter; diff --git a/database/GenericCalculator.sql b/database/GenericCalculator.sql new file mode 100644 index 0000000..bb17b3c --- /dev/null +++ b/database/GenericCalculator.sql @@ -0,0 +1,252 @@ +-- Version 2013-09-15 + +-- Section Create Remote Tables for Extracted Data +##create.AgeCategory##; +TRUNCATE TABLE AgeCategory; + +##create.County##; +TRUNCATE TABLE County; + +##create.HourDay##; +TRUNCATE TABLE HourDay; + +##create.Link##; +TRUNCATE TABLE Link; + +##create.Zone##; +TRUNCATE TABLE Zone; + +##create.Pollutant##; +TRUNCATE TABLE Pollutant; + +##create.EmissionProcess##; +TRUNCATE TABLE EmissionProcess; + +##create.EmissionRateByAge##; +TRUNCATE TABLE EmissionRateByAge; + +##create.OpModeDistribution##; +TRUNCATE TABLE OpModeDistribution; + +##create.SourceBin##; +TRUNCATE TABLE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE TABLE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE TABLE SourceTypeModelYear; + +##create.PollutantProcessAssoc##; +TRUNCATE TABLE PollutantProcessAssoc; + +-- Section Running Exhaust + +##create.SHO##; +TRUNCATE TABLE SHO; + +-- End Section Running Exhaust + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT Link.* +INTO OUTFILE '##Link##' +FROM Link +WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * +INTO OUTFILE '##EmissionProcess##' +FROM EmissionProcess +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * +INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * +INTO OUTFILE '##Pollutant##' +FROM Pollutant; + +cache SELECT DISTINCT SourceBinDistribution.* +INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBin.* +INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT EmissionRateByAge.* +INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.SourceBinID = SourceBinDistribution.SourceBinID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeModelYear.* +INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year##; + +cache SELECT DISTINCT HourDay.* +INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT * +INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +-- Section Running Exhaust + +SELECT SHO.* +INTO OUTFILE '##SHO##' +FROM SHO +WHERE yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; + +-- End Section Running Exhaust + +-- End Section Extract Data +-- +-- Section Processing +-- +-- Section Running Exhaust + +-- +-- Calculate the Running Emissions +-- + +INSERT INTO MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + emissionQuant) +SELECT + sho.yearID, + sho.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + z.zoneID, + sho.linkID, + ppa.pollutantID, + ppa.processID, + sho.sourceTypeID, + sb.fuelTypeID, + stmy.modelYearID, + l.roadTypeID, + sum(sbd.sourceBinActivityFraction * sho.sho * era.meanBaseRate * omd.opModeFraction) +FROM + SHO sho, + AgeCategory ac, + SourceBinDistribution sbd, + emissionRateByAge era, + county c, + zone z, + link l, + PollutantProcessAssoc ppa, + EmissionProcess ep, + hourDay hd, + sourceTypeModelYear stmy, + sourceBin sb, + OpModeDistribution omd +WHERE + sho.ageID = ac.ageID AND + ac.ageGroupID = era.ageGroupID AND + c.countyID = l.countyID AND + c.countyID = z.countyID AND + l.countyID = z.countyID AND + hd.hourDayID = omd.hourDayID AND + hd.hourDayID = sho.hourDayID AND + omd.hourDayID = sho.hourDayID AND + omd.isUserInput = sho.isUserInput AND + omd.isUserInput = sbd.isUserInput AND + sho.isUserInput = sbd.isUserInput AND + l.linkID = omd.linkID AND + l.linkID = sho.linkID AND + omd.linkID = sho.linkID AND + (sho.yearID - sho.ageID) = stmy.modelYearID AND + era.opModeID = omd.opModeID AND + era.polProcessID = omd.polProcessID AND + era.polProcessID = ppa.polProcessID AND + era.polProcessID = sbd.polProcessID AND + omd.polProcessID = ppa.polProcessID AND + omd.polProcessID = sbd.polProcessID AND + ppa.polProcessID = sbd.polProcessID AND + ep.processID = ppa.processID AND + era.sourceBinID = sb.sourceBinID AND + era.sourceBinID = sbd.sourceBinID AND + sb.sourceBinID = sbd.sourceBinID AND + omd.sourceTypeID = sho.sourceTypeID AND + omd.sourceTypeID = stmy.sourceTypeID AND + sho.sourceTypeID = stmy.sourceTypeID AND + sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID AND + l.zoneID = z.zoneID AND + ppa.pollutantID IN (##pollutantIDs##) +GROUP BY + sho.yearID, + sho.monthID, + hd.dayID, + hd.hourID, + c.stateID, + c.countyID, + z.zoneID, + sho.linkID, + ppa.pollutantID, + ppa.processID, + sho.sourceTypeID, + sb.fuelTypeID, + stmy.modelYearID, + l.roadTypeID; + +-- End Section Running Exhaust + +-- End Section Processing diff --git a/database/HCSpeciationCalculator.sql b/database/HCSpeciationCalculator.sql new file mode 100644 index 0000000..5d63aeb --- /dev/null +++ b/database/HCSpeciationCalculator.sql @@ -0,0 +1,983 @@ +-- Version 2014-12-11 +-- Wes Faler + +-- @algorithm +-- @owner HC Speciation Calculator +-- @calculator +-- @fileNotUsed + +-- Section Create Remote Tables for Extracted Data + +-- Section OldCode +drop table if exists extagecategory; +create table extagecategory ( + ageID smallint(6) NOT NULL DEFAULT '0', + ageGroupID smallint(6) NOT NULL DEFAULT '0', + PRIMARY KEY (ageID), + KEY ageGroupID (ageGroupID,ageID), + KEY ageID (ageID,ageGroupID) +); + +drop table if exists extfuelsupply; +create table extfuelsupply ( + countyID smallint not null, + yearID smallint not null, + monthID smallint not null, + fuelTypeID smallint not null, + fuelSubTypeID smallint not null, + fuelFormulationID int not null, + marketShare double not null +); + +drop table if exists extfueltype; +create table extfueltype ( + fuelTypeID SMALLINT NOT NULL, + humidityCorrectionCoeff FLOAT NULL, + fuelDensity FLOAT NULL, + subjectToEvapCalculations CHAR(1) NOT NULL DEFAULT 'N' +); + +drop table if exists extfuelsubtype; +create table extfuelsubtype ( + fuelSubtypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + fuelSubtypePetroleumFraction FLOAT NULL, + fuelSubtypeFossilFraction FLOAT NULL, + carbonContent FLOAT NULL, + oxidationFraction FLOAT NULL, + energyContent FLOAT NULL, + key (fuelTypeID, fuelSubtypeID) +); + +drop table if exists extfuelformulation; +create table extfuelformulation ( + fuelFormulationID SMALLINT NOT NULL PRIMARY KEY, + fuelSubtypeID SMALLINT NOT NULL, + RVP FLOAT NULL, + sulfurLevel FLOAT NULL, + ETOHVolume FLOAT NULL, + MTBEVolume FLOAT NULL, + ETBEVolume FLOAT NULL, + TAMEVolume FLOAT NULL, + aromaticContent FLOAT NULL, + olefinContent FLOAT NULL, + benzeneContent FLOAT NULL, + e200 FLOAT NULL, + e300 FLOAT NULL, + volToWtPercentOxy FLOAT NULL, + BioDieselEsterVolume float DEFAULT NULL, + CetaneIndex float DEFAULT NULL, + PAHContent float DEFAULT NULL, + T50 float DEFAULT NULL, + T90 float DEFAULT NULL, + key (fuelSubTypeID, fuelFormulationID) +); + +-- End Section OldCode + +drop table if exists HCAgeCategory; +CREATE TABLE HCAgeCategory ( + ageID smallint(6) NOT NULL DEFAULT '0', + ageGroupID smallint(6) NOT NULL DEFAULT '0', + ageCategoryName char(50) DEFAULT NULL, + PRIMARY KEY (ageID), + KEY ageGroupID (ageGroupID,ageID), + KEY ageID (ageID,ageGroupID) +); + +drop table if exists HCETOHBin; +CREATE TABLE IF NOT EXISTS HCETOHBin ( + etohThreshID smallint(6) NOT NULL DEFAULT '0', + etohThreshLow float DEFAULT NULL, + etohThreshHigh float DEFAULT NULL, + etohNominalValue float DEFAULT NULL, + PRIMARY KEY (etohThreshID), + key (etohThreshLow, etohThreshHigh, etohThreshID) +); + +drop table if exists HCFuelSupply; +CREATE TABLE IF NOT EXISTS HCFuelSupply ( + countyID int(11) NOT NULL, + monthID smallint(6) NOT NULL, + fuelFormulationID smallint(6) NOT NULL, + marketShare float default NULL, + yearID smallint(6) NOT NULL, + fuelTypeID smallint(6) NOT NULL, + fuelSubtypeID smallint(6) NOT NULL, + KEY (countyID,yearID,monthID,fuelTypeID,fuelSubtypeID,fuelFormulationID) +); +TRUNCATE TABLE HCFuelSupply; + +drop table if exists HCFuelFormulation; +CREATE TABLE IF NOT EXISTS HCFuelFormulation ( + fuelFormulationID SMALLINT NOT NULL PRIMARY KEY, + fuelSubtypeID SMALLINT NOT NULL, + RVP FLOAT NULL, + sulfurLevel FLOAT NULL, + ETOHVolume FLOAT NULL, + MTBEVolume FLOAT NULL, + ETBEVolume FLOAT NULL, + TAMEVolume FLOAT NULL, + aromaticContent FLOAT NULL, + olefinContent FLOAT NULL, + benzeneContent FLOAT NULL, + e200 FLOAT NULL, + e300 FLOAT NULL, + volToWtPercentOxy FLOAT NULL, + BioDieselEsterVolume float DEFAULT NULL, + CetaneIndex float DEFAULT NULL, + PAHContent float DEFAULT NULL, + oxyThreshID int null, + key (fuelFormulationID, fuelSubtypeID, oxyThreshID), + key (fuelSubtypeID, fuelFormulationID, oxyThreshID), + key (fuelSubtypeID, oxyThreshID, fuelFormulationID), + key (oxyThreshID, fuelSubtypeID, fuelFormulationID) +); +TRUNCATE TABLE HCFuelFormulation; + +drop table if exists HCOxyThreshName; +CREATE TABLE IF NOT EXISTS HCOxyThreshName +( + oxyThreshID smallint(6) NOT NULL default '0' primary key +); +TRUNCATE TABLE HCOxyThreshName; + +drop table if exists HCspeciation; +##create.HCspeciation##; +TRUNCATE TABLE HCspeciation; + +drop table if exists HCPollutantProcessModelYear; +CREATE TABLE IF NOT EXISTS HCPollutantProcessModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (polProcessID), + key (modelYearID), + key (fuelMYGroupID), + key (polProcessID, modelYearID, fuelMYGroupID) +); +truncate table HCPollutantProcessModelYear; + +drop table if exists HCPollutantProcessMappedModelYear; +CREATE TABLE IF NOT EXISTS HCPollutantProcessMappedModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (polProcessID), + key (modelYearID), + key (fuelMYGroupID), + key (polProcessID, modelYearID, fuelMYGroupID) +); +truncate table HCPollutantProcessMappedModelYear; + +drop table if exists THCPollutantProcessModelYear; +CREATE TABLE IF NOT EXISTS THCPollutantProcessModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (polProcessID), + key (modelYearID), + key (fuelMYGroupID), + key (polProcessID, modelYearID, fuelMYGroupID) +); +truncate table THCPollutantProcessModelYear; + +drop table if exists THCPollutantProcessMappedModelYear; +CREATE TABLE IF NOT EXISTS THCPollutantProcessMappedModelYear ( + polProcessID int NOT NULL , + modelYearID SMALLINT NOT NULL , + modelYearGroupID INT NOT NULL , + fuelMYGroupID INTEGER NULL, + IMModelYearGroupID INTEGER NULL, + key (polProcessID), + key (modelYearID), + key (fuelMYGroupID), + key (polProcessID, modelYearID, fuelMYGroupID) +); +truncate table THCPollutantProcessMappedModelYear; + +drop table if exists HCPollutantProcessAssoc; +CREATE TABLE IF NOT EXISTS HCPollutantProcessAssoc ( + polProcessID int NOT NULL, + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + isAffectedByExhaustIM CHAR(1) NOT NULL DEFAULT "N", + isAffectedByEvapIM CHAR(1) NOT NULL DEFAULT "N", + chainedto1 int NULL DEFAULT NULL, + chainedto2 int NULL DEFAULT NULL, + key (processID), + key (pollutantID), + key (polProcessID), + key (polProcessID, processID, pollutantID), + key (pollutantID, processID, polProcessID) +); +truncate table HCPollutantProcessAssoc; + +##create.methaneTHCRatio##; +TRUNCATE TABLE methaneTHCRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- Section OldCode +cache select ageID, ageGroupID +into outfile '##extagecategory##' +from AgeCategory; + +cache select ##context.iterLocation.countyRecordID##, ##context.year##, ##context.monthID##, + fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare +into outfile '##extfuelsupply##' +from year +inner join fuelSupply fs on (fs.fuelYearID=year.fuelYearID) +inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID) +inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID) +inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) +where yearID = ##context.year## +and fs.fuelRegionID = ##context.fuelRegionID## +and moay.monthID = ##context.monthID## +and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache select fuelTypeID, humidityCorrectionCoeff, fuelDensity, subjectToEvapCalculations +into outfile '##extfueltype##' +from fuelType; + +cache select fuelSubtypeID, fuelTypeID, fuelSubtypePetroleumFraction, fuelSubtypeFossilFraction, + carbonContent, oxidationFraction, energyContent +into outfile '##extfuelsubtype##' +from fuelSubtype; + +cache select distinct + FuelFormulation.fuelFormulationID, + FuelFormulation.fuelSubtypeID, + ifnull(FuelFormulation.RVP,0), + ifnull(FuelFormulation.sulfurLevel,0), + ifnull(FuelFormulation.ETOHVolume,0), + ifnull(FuelFormulation.MTBEVolume,0), + ifnull(FuelFormulation.ETBEVolume,0), + ifnull(FuelFormulation.TAMEVolume,0), + ifnull(FuelFormulation.aromaticContent,0), + ifnull(FuelFormulation.olefinContent,0), + ifnull(FuelFormulation.benzeneContent,0), + ifnull(FuelFormulation.e200,0), + ifnull(FuelFormulation.e300,0), + ifnull(FuelFormulation.volToWtPercentOxy,0), + ifnull(FuelFormulation.BioDieselEsterVolume,0), + ifnull(FuelFormulation.CetaneIndex,0), + ifnull(FuelFormulation.PAHContent,0), + ifnull(FuelFormulation.T50,0), + ifnull(FuelFormulation.T90,0) +INTO OUTFILE '##extfuelformulation##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND MonthOfAnyYear.monthID = ##context.monthID## +AND FuelSubtype.fuelTypeID in (##macro.csv.all.fuelTypeID##); + +-- End Section OldCode + +-- ----------------------------- + + +cache SELECT * +INTO OUTFILE '##HCAgeCategory##' +FROM AgeCategory; + +cache SELECT * +INTO OUTFILE '##HCETOHBin##' +FROM ETOHBin; + +cache SELECT oxyThreshID +INTO OUTFILE '##HCOxyThreshName##' +FROM OxyThreshName; + +cache SELECT ##context.iterLocation.countyRecordID## as countyID, MonthOfAnyYear.monthID, FuelSupply.fuelFormulationID, FuelSupply.marketShare, Year.yearID, FuelSubtype.fuelTypeID, FuelSubtype.fuelSubtypeID +INTO OUTFILE '##HCFuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +cache SELECT polProcessID, modelYearID, modelYearGroupID, fuelMYGroupID, IMModelYearGroupID +INTO OUTFILE '##HCPollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##hcPolProcessIDs##); + +cache SELECT polProcessID, modelYearID, modelYearGroupID, fuelMYGroupID, IMModelYearGroupID +INTO OUTFILE '##HCPollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##hcPolProcessIDs##); + +cache SELECT ppmy.polProcessID, ppmy.modelYearID, ppmy.modelYearGroupID, ppmy.fuelMYGroupID, ppmy.IMModelYearGroupID +INTO OUTFILE '##THCPollutantProcessModelYear##' +FROM PollutantProcessModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa using (polProcessID) +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND pollutantID = 1; + +cache SELECT ppmy.polProcessID, ppmy.modelYearID, ppmy.modelYearGroupID, ppmy.fuelMYGroupID, ppmy.IMModelYearGroupID +INTO OUTFILE '##THCPollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa using (polProcessID) +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND pollutantID = 1; + +cache select HCSpeciation.* +into outfile '##HCspeciation##' +from HCSpeciation +where polProcessID in (##hcPolProcessIDs##); + +cache select polProcessID,processID,pollutantID,isAffectedByExhaustIM,isAffectedByEvapIM,chainedto1,chainedto2 +into outfile '##HCPollutantProcessAssoc##' +from PollutantProcessAssoc +where polProcessID in (##hcPolProcessIDs##) +or pollutantID = 1; + +cache SELECT DISTINCT + FuelFormulation.fuelFormulationID, + FuelFormulation.fuelSubtypeID, + ifnull(FuelFormulation.RVP,0), + ifnull(FuelFormulation.sulfurLevel,0), + ifnull(FuelFormulation.ETOHVolume,0), + ifnull(FuelFormulation.MTBEVolume,0), + ifnull(FuelFormulation.ETBEVolume,0), + ifnull(FuelFormulation.TAMEVolume,0), + ifnull(FuelFormulation.aromaticContent,0), + ifnull(FuelFormulation.olefinContent,0), + ifnull(FuelFormulation.benzeneContent,0), + ifnull(FuelFormulation.e200,0), + ifnull(FuelFormulation.e300,0), + ifnull(FuelFormulation.volToWtPercentOxy,0), + ifnull(FuelFormulation.BioDieselEsterVolume,0), + ifnull(FuelFormulation.CetaneIndex,0), + ifnull(FuelFormulation.PAHContent,0), + 0 as oxyThreshID +INTO OUTFILE '##HCFuelFormulation##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +INNER JOIN FuelFormulation ON (FuelFormulation.fuelFormulationID = FuelSupply.fuelFormulationID) +INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = FuelFormulation.fuelSubtypeID) +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID) +INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +cache select methaneTHCRatio.* +into outfile '##methaneTHCRatio##' +from methaneTHCRatio +where processID in (##hcProcessIDs##); + +-- End Section Extract Data + +-- Section Processing + +starttimer savemwo; +savemwo; +starttimer HCSpeciationCalculator; + +update HCFuelFormulation set oxyThreshID = ( +##oxyThreshCase## +); + +alter table HCFuelFormulation add etohThreshID smallint(6) NULL default '0'; + +-- @algorithm Assign etohThreshID to each fuel formulation. +-- etohThreshLow <= ETOHVolume < etohThreshHigh +update HCFuelFormulation, HCETOHBin set HCFuelFormulation.etohThreshID = HCETOHBin.etohThreshID +where etohThreshLow <= ETOHVolume and ETOHVolume < etohThreshHigh; + +-- alter table MOVESWorkerOutput add key HCPollutantID (pollutantID); + +-- @algorithm Fill in missing HCSpeciation entries so that joins to the table are valid. +-- Use speciationConstant of 0 and oxySpeciation of 0 for missing entries. +insert ignore into HCSpeciation (polProcessID, fuelMYGroupID, fuelSubtypeID, etohThreshID, oxyThreshID, speciationConstant, oxySpeciation) +select distinct ppmy.polProcessID, ppmy.fuelMYGroupID, fs.fuelSubtypeID, etohThreshID, oxyThreshID, 0.0 as speciationConstant, 0.0 as oxySpeciation +from HCPollutantProcessModelYear ppmy, +HCFuelSupply fs, +HCETOHBin, +HCOxyThreshName; + +drop table if exists HCWorkerOutput; +CREATE TABLE IF NOT EXISTS HCWorkerOutput ( + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + fuelSubtypeID SMALLINT UNSIGNED NULL, + fuelFormulationID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + regClassID SMALLINT UNSIGNED NULL, + emissionQuant FLOAT NULL, + emissionRate FLOAT NULL, + + key (yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID) +); +truncate table HCWorkerOutput; + +drop table if exists HCWorkerOutputAll; + +-- @algorithm HCWorkerOutputAll holds all data generated by HC speciation, plus THC data used for Methane and NMHC. +-- It is for quick lookups, avoiding long scans of MOVESWorkerOutput. Data is first placed into HCWorkerOutput +-- then copied to both MOVESWorkerOutput and to HCWorkerOutputAll. +CREATE TABLE IF NOT EXISTS HCWorkerOutputAll ( + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + fuelSubtypeID SMALLINT UNSIGNED NULL, + fuelFormulationID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + regClassID SMALLINT UNSIGNED NULL, + emissionQuant FLOAT NULL, + emissionRate FLOAT NULL, + + key (pollutantID), + key (pollutantID, processID), + key ( + pollutantID asc, + fuelTypeID asc, + countyID asc, + yearID asc, + monthID asc, + modelYearID asc, + processID asc) +); +truncate table HCWorkerOutputAll; + +-- CREATE INDEX MOVESWorkerOutput_A2 ON MOVESWorkerOutput ( +-- pollutantID asc, +-- fuelTypeID asc, +-- countyID asc, +-- yearID asc, +-- monthID asc, +-- modelYearID asc, +-- processID asc +-- ); + +CREATE INDEX HCFuelSupply_A1 ON HCFuelSupply ( + fuelTypeID asc, + countyID asc, + yearID asc, + monthID asc, + fuelFormulationID asc +); + +CREATE INDEX HCspeciation_A1 ON HCspeciation ( + oxyThreshID asc, + fuelSubtypeID asc, + etohThreshID asc, + polProcessID asc, + fuelMYGroupID asc +); + +CREATE INDEX HCETOHBin_A1 ON HCETOHBin ( + etohThreshID asc, + etohThreshLow asc, + etohThreshHigh asc +); + +CREATE INDEX HCPollutantProcessAssoc_A1 ON HCPollutantProcessAssoc ( + processID asc, + polProcessID asc, + pollutantID asc +); + +create index HCFuelFormulation_A1 on HCFuelFormulation ( + fuelFormulationID asc, + fuelSubtypeID asc +); + +-- @algorithm Extract THC (1) and altTHC (10001) into HCWorkerOutputAll to make tables faster to search +insert into HCWorkerOutputAll ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant, + regClassID,emissionRate, + fuelFormulationID,fuelSubtypeID +) +select MOVESRunID,iterationID,mwo.yearID,mwo.monthID,dayID,hourID,stateID,mwo.countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,mwo.fuelTypeID,modelYearID,roadTypeID,SCC,marketShare*emissionQuant, + regClassID,marketShare*emissionRate, + fuelFormulationID,fuelSubtypeID +from MOVESWorkerOutput mwo +inner join HCFuelSupply fs using (countyID, monthID, fuelTypeID, yearID) +where pollutantID in (1, 10001); + +-- Section Methane +truncate HCWorkerOutput; + +-- @algorithm methane = THC * CH4THCRatio +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant, + emissionRate, + regClassID,fuelFormulationID,fuelSubtypeID +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + 5 as pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + (emissionQuant * CH4THCRatio) as emissionQuant, + (emissionRate * CH4THCRatio) as emissionRate, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID +from HCWorkerOutputAll mwo +inner join HCAgeCategory acat on (mwo.modelYearID=##context.year##-acat.ageID) +inner join HCPollutantProcessAssoc ppa on ( + ppa.processID=mwo.processID + and ppa.pollutantID=1) +inner join THCPollutantProcessMappedModelYear ppmy on ( + ppmy.polProcessID=ppa.polProcessID + and ppmy.modelYearID=mwo.modelYearID) +inner join methaneTHCRatio r on ( + r.processID = mwo.processID + and r.fuelTypeID = mwo.fuelTypeID + and r.sourceTypeID = mwo.sourceTypeID + and r.modelYearGroupID = ppmy.modelYearGroupID + and r.ageGroupID = acat.ageGroupID) +where mwo.pollutantID = 1 +and mwo.processID in (##methaneProcessIDs##); + +-- Move values back into MOVESWorkerOutput +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + sum(emissionQuant),sum(emissionRate) +from HCWorkerOutput +where emissionQuant >= 0 +group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID; + +insert into HCWorkerOutputAll ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +from HCWorkerOutput +where emissionQuant >= 0; +-- End Section Methane + +-- Section NMHC +truncate HCWorkerOutput; + +-- @algorithm NMHC = THC * (1-CH4THCRatio) +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant, + emissionRate, + regClassID,fuelFormulationID,fuelSubtypeID +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + 79 as pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + (emissionQuant * (1-CH4THCRatio)) as emissionQuant, + (emissionRate * (1-CH4THCRatio)) as emissionRate, + regClassID,fuelFormulationID,fuelSubtypeID +from HCWorkerOutputAll mwo +inner join HCAgeCategory acat on (mwo.modelYearID=##context.year##-acat.ageID) +inner join HCPollutantProcessAssoc ppa on ( + ppa.processID=mwo.processID + and ppa.pollutantID=1) +inner join THCPollutantProcessMappedModelYear ppmy on ( + ppmy.polProcessID=ppa.polProcessID + and ppmy.modelYearID=mwo.modelYearID) +inner join methaneTHCRatio r on ( + r.processID = mwo.processID + and r.fuelTypeID = mwo.fuelTypeID + and r.sourceTypeID = mwo.sourceTypeID + and r.modelYearGroupID = ppmy.modelYearGroupID + and r.ageGroupID = acat.ageGroupID) +where mwo.pollutantID = 1 +and mwo.processID in (##nmhcProcessIDs##); + +-- and not (mwo.processID in (1,2) and mwo.fuelTypeID=5 +-- and mwo.fuelSubtypeID in (??e85E70FuelSubtypeIDs??) and mwo.modelYearID >= 2001) + +-- @algorithm Calculate altNMHC (10079) from altTHC (10001) using E10's ratios. +-- altNMHC (pollutant 10079) = altTHC (10001) * (1-CH4THCRatio[E10 fuel subtype]). +-- @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant, + emissionRate, + regClassID,fuelFormulationID,fuelSubtypeID +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + 10079 as pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + (emissionQuant * (1-CH4THCRatio)) as emissionQuant, + (emissionRate * (1-CH4THCRatio)) as emissionRate, + regClassID,fuelFormulationID,fuelSubtypeID +from HCWorkerOutputAll mwo +inner join HCAgeCategory acat on (mwo.modelYearID=##context.year##-acat.ageID) +inner join HCPollutantProcessAssoc ppa on ( + ppa.processID=mwo.processID + and ppa.pollutantID=1) +inner join THCPollutantProcessMappedModelYear ppmy on ( + ppmy.polProcessID=ppa.polProcessID + and ppmy.modelYearID=mwo.modelYearID) +inner join methaneTHCRatio r on ( + r.processID = mwo.processID + and r.fuelTypeID = 1 + and r.sourceTypeID = mwo.sourceTypeID + and r.modelYearGroupID = ppmy.modelYearGroupID + and r.ageGroupID = acat.ageGroupID) +where mwo.pollutantID = 10001 +and mwo.processID in (##nmhcProcessIDs##) +and (mwo.processID in (1,2) and mwo.fuelTypeID=5 + and mwo.fuelSubtypeID in (##e85E70FuelSubtypeIDs##) and mwo.modelYearID >= 2001); + +-- Move values back into MOVESWorkerOutput +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + sum(emissionQuant),sum(emissionRate) +from HCWorkerOutput +where emissionQuant >= 0 +group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID; + +insert into HCWorkerOutputAll ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +from HCWorkerOutput +where emissionQuant >= 0; +-- End Section NMHC + +-- Section NMOG +truncate HCWorkerOutput; + +-- @algorithm NMOG = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)). +-- @condition When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, NMOG = 0. +-- @condition NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001). +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + regClassID,fuelFormulationID,fuelSubtypeID, + emissionQuant,emissionRate +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + ppa.pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID, + emissionQuant*( + (case when (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0 then + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)) + else 0 end) + ) as emissionQuant, + emissionRate*( + (case when (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0 then + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)) + else 0 end) + ) as emissionRate +from HCWorkerOutputAll mwo +inner join HCFuelFormulation ff on (ff.fuelFormulationID=mwo.fuelFormulationID) +inner join HCspeciation hcs on (hcs.oxyThreshID=ff.oxyThreshID and hcs.fuelSubtypeID=ff.fuelSubtypeID and hcs.etohThreshID=ff.etohThreshID) +inner join HCPollutantProcessModelYear ppmy on (ppmy.polProcessID=hcs.polProcessID + and ppmy.modelYearID=mwo.modelYearID and ppmy.fuelMYGroupID=hcs.fuelMYGroupID) +inner join HCPollutantProcessAssoc ppa on (ppa.processID=mwo.processID + and ppa.polProcessID=ppmy.polProcessID + and ppa.processID in (##nmogProcessIDs##) + and ppa.pollutantID = 80) +where mwo.pollutantID = 79 +and not (mwo.processID in (1,2) and mwo.fuelTypeID=5 + and mwo.fuelSubtypeID in (##e85E70FuelSubtypeIDs##) and mwo.modelYearID >= 2001); + +-- @algorithm Calculate NMOG from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol. +-- This is done by joining to HCSpeciation using E10's values rather than the current fuel formulation's values. +-- NMOG = altNMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)). +-- @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + regClassID,fuelFormulationID,fuelSubtypeID, + emissionQuant,emissionRate +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + ppa.pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID, + emissionQuant*( + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)) + ) as emissionQuant, + emissionRate*( + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)) + ) as emissionRate +from HCWorkerOutputAll mwo +inner join HCFuelFormulation ff on (ff.fuelFormulationID=mwo.fuelFormulationID) +inner join HCspeciation hcs on (hcs.oxyThreshID=0 and hcs.fuelSubtypeID=12 and hcs.etohThreshID=3) +inner join HCPollutantProcessModelYear ppmy on (ppmy.polProcessID=hcs.polProcessID + and ppmy.modelYearID=mwo.modelYearID and ppmy.fuelMYGroupID=hcs.fuelMYGroupID) +inner join HCPollutantProcessAssoc ppa on (ppa.processID=mwo.processID + and ppa.polProcessID=ppmy.polProcessID + and ppa.processID in (##nmogProcessIDs##) + and ppa.pollutantID = 80) +where mwo.pollutantID = 10079 +and (mwo.processID in (1,2) and mwo.fuelTypeID=5 + and mwo.fuelSubtypeID in (##e85E70FuelSubtypeIDs##) and mwo.modelYearID >= 2001); + +-- Move values back into MOVESWorkerOutput +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + sum(emissionQuant),sum(emissionRate) +from HCWorkerOutput +where emissionQuant >= 0 +group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID; + +insert into HCWorkerOutputAll ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate, + fuelFormulationID,fuelSubtypeID +from HCWorkerOutput +where emissionQuant >= 0; +-- End Section NMOG + +-- Section VOC +truncate HCWorkerOutput; + +-- @algorithm VOC = NMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)). +-- @condition When (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0. Otherwise, VOC = 0. +-- @condition NOT (Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001). +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + regClassID,fuelFormulationID,fuelSubtypeID, + emissionQuant,emissionRate +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + ppa.pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID, + emissionQuant*( + (case when (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0 then + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)) + else 0 end) + ) as emissionQuant, + emissionRate*( + (case when (MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume) >= 0 then + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+ETOHVolume)) + else 0 end) + ) as emissionRate +from HCWorkerOutputAll mwo +inner join HCFuelFormulation ff on (ff.fuelFormulationID=mwo.fuelFormulationID) +inner join HCspeciation hcs on (hcs.oxyThreshID=ff.oxyThreshID and hcs.fuelSubtypeID=ff.fuelSubtypeID and hcs.etohThreshID=ff.etohThreshID) +inner join HCPollutantProcessMappedModelYear ppmy on (ppmy.polProcessID=hcs.polProcessID + and ppmy.modelYearID=mwo.modelYearID and ppmy.fuelMYGroupID=hcs.fuelMYGroupID) +inner join HCPollutantProcessAssoc ppa on (ppa.processID=mwo.processID + and ppa.polProcessID=ppmy.polProcessID + and ppa.processID in (##vocProcessIDs##) + and ppa.pollutantID = 87) +where mwo.pollutantID = 79 +and not (mwo.processID in (1,2) and mwo.fuelTypeID=5 + and mwo.fuelSubtypeID in (##e85E70FuelSubtypeIDs##) and mwo.modelYearID >= 2001); + +-- @algorithm Calculate VOC from altNMHC (10079) that originates from altTHC (10001). Use E10's factors even though the fuel is Ethanol. +-- This is done by joining to HCSpeciation using E10's values rather than the current fuel formulation's values. +-- VOC = altNMHC*(speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)). +-- @condition Running Exhaust, Start Exhaust, Ethanol fuel type, E70 and E85 fuel subtypes, Model years >= 2001. +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + regClassID,fuelFormulationID,fuelSubtypeID, + emissionQuant,emissionRate +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + ppa.pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID, + emissionQuant*( + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)) + ) as emissionQuant, + emissionRate*( + (speciationConstant + oxySpeciation* volToWtPercentOxy*(MTBEVolume+ETBEVolume+TAMEVolume+10)) + ) as emissionRate +from HCWorkerOutputAll mwo +inner join HCFuelFormulation ff on (ff.fuelFormulationID=mwo.fuelFormulationID) +inner join HCspeciation hcs on (hcs.oxyThreshID=0 and hcs.fuelSubtypeID=12 and hcs.etohThreshID=3) +inner join HCPollutantProcessMappedModelYear ppmy on (ppmy.polProcessID=hcs.polProcessID + and ppmy.modelYearID=mwo.modelYearID and ppmy.fuelMYGroupID=hcs.fuelMYGroupID) +inner join HCPollutantProcessAssoc ppa on (ppa.processID=mwo.processID + and ppa.polProcessID=ppmy.polProcessID + and ppa.processID in (##vocProcessIDs##) + and ppa.pollutantID = 87) +where mwo.pollutantID = 10079 +and (mwo.processID in (1,2) and mwo.fuelTypeID=5 + and mwo.fuelSubtypeID in (##e85E70FuelSubtypeIDs##) and mwo.modelYearID >= 2001); + +-- Move values back into MOVESWorkerOutput +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + sum(emissionQuant),sum(emissionRate) +from HCWorkerOutput +where emissionQuant >= 0 +group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID; + +-- VOC is not an input to further HC speciation calculations. +-- If so, uncomment the following. +-- insert into HCWorkerOutputAll ( +-- MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, +-- processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, +-- emissionQuant,emissionRate, +-- fuelFormulationID,fuelSubtypeID +-- ) +-- select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, +-- processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, +-- emissionQuant,emissionRate, +-- fuelFormulationID,fuelSubtypeID +-- from HCWorkerOutput +-- where emissionQuant >= 0 + +-- End Section VOC + +-- Section TOG +truncate HCWorkerOutput; +-- @algorithm TOG=NMOG+Methane +insert into HCWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC, + regClassID,fuelFormulationID,fuelSubtypeID, + emissionQuant,emissionRate +) +select mwo.MOVESRunID,mwo.iterationID,mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + ppa.pollutantID, + mwo.processID,mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID,mwo.SCC, + mwo.regClassID,mwo.fuelFormulationID,mwo.fuelSubtypeID, + emissionQuant,emissionRate +from HCWorkerOutputAll mwo +inner join HCPollutantProcessAssoc ppa on (ppa.processID=mwo.processID + and ppa.processID in (##togProcessIDs##) + and ppa.pollutantID = 86) +where mwo.pollutantID in (80,5); + +-- Move values back into MOVESWorkerOutput +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, + sum(emissionQuant),sum(emissionRate) +from HCWorkerOutput +where emissionQuant >= 0 +group by yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,regClassID; + +-- TOG values aren't needed by subsequent steps. +-- If they are needed, uncomment the following. +-- insert into HCWorkerOutputAll ( +-- MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, +-- processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, +-- emissionQuant,emissionRate, +-- fuelFormulationID,fuelSubtypeID +-- ) +-- select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, +-- processID,sourceTypeID,fuelTypeID,modelYearID,roadTypeID,SCC,regClassID, +-- emissionQuant,emissionRate, +-- fuelFormulationID,fuelSubtypeID +-- from HCWorkerOutput +-- where emissionQuant >= 0 + +-- End Section TOG + +-- alter table MOVESWorkerOutput drop key HCPollutantID; +-- alter table MOVESWorkerOutput drop index MOVESWorkerOutput_A2; + +alter table HCFuelSupply drop index HCFuelSupply_A1; +alter table HCspeciation drop index HCspeciation_A1; +alter table HCETOHBin drop index HCETOHBin_A1; +alter table HCPollutantProcessAssoc drop index HCPollutantProcessAssoc_A1; +alter table HCFuelFormulation drop index HCFuelFormulation_A1; + +starttimer savemwo2; +savemwo2; +starttimer HCSpeciationCalculator; + +-- End Section Processing + +-- Section Cleanup +drop table if exists HCWorkerOutput; +drop table if exists HCWorkerOutputAll; +-- End Section Cleanup + +-- Section Final Cleanup +-- End Section Final Cleanup diff --git a/database/HotellingImporter.sql b/database/HotellingImporter.sql new file mode 100644 index 0000000..1ac82a6 --- /dev/null +++ b/database/HotellingImporter.sql @@ -0,0 +1,127 @@ +-- Author Wesley Faler +-- Version 2014-01-11 + +drop procedure if exists spCheckHotellingImporter; + +BeginBlock +create procedure spCheckHotellingImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + -- Scale 0 is national + -- Scale 1 is single county + -- Scale 2 is project domain + declare scale int default ##scale##; + + -- Rate 0 is Inventory + -- Rate 1 is Rates + declare rate int default ##rate##; + + -- Complain about an empty table in project domain + if(scale = 2 and (90 in (##processIDs##) or 91 in (##processIDs##))) then + set howMany=0; + select count(*) into howMany from hotellingActivityDistribution; + set howMany=ifnull(howMany,0); + if(howMany <= 0) then + insert into importTempMessages (message) values ('ERROR: hotellingActivityDistribution must be provided.'); + end if; + end if; + + -- Complain about invalid operating modes + insert into importTempMessages (message) + select distinct concat('ERROR: Unknown opModeID (',opModeID,'). Hotelling operating modes are 200-299.') as errorMessage + from hotellingActivityDistribution + where opModeID < 200 || opModeID > 299; + + -- Complain if any model year ranges are inverted + insert into importTempMessages (message) + select distinct concat('ERROR: BeginModelYearID (',beginModelYearID,') must be <= EndModelYearID (',endModelYearID,')') as errorMessage + from hotellingActivityDistribution + where beginModelYearID > endModelYearID; + + -- Complain about entries with negative fractions + insert into importTempMessages (message) + select concat('ERROR: opModeFraction is less than zero (',opModeFraction,') for model years ',beginModelYearID,' to ',endModelYearID) as errorMessage + from hotellingActivityDistribution + where opModeFraction < 0; + + -- Complain about entries with fractions greater than 1 + insert into importTempMessages (message) + select concat('ERROR: opModeFraction is greater than 1 (',round(opModeFraction,4),') for model years ',beginModelYearID,' to ',endModelYearID) as errorMessage + from hotellingActivityDistribution + where round(opModeFraction,4) > 1; + + -- Expand to full set of model years + drop table if exists tempYear; + create table if not exists tempYear ( + year int not null primary key + ); + + insert into tempYear(year) values(1960),(1961),(1962),(1963),(1964),(1965),(1966),(1967) + ,(1968),(1969),(1970),(1971),(1972),(1973),(1974),(1975),(1976),(1977) + ,(1978),(1979),(1980),(1981),(1982),(1983),(1984),(1985),(1986),(1987) + ,(1988),(1989),(1990),(1991),(1992),(1993),(1994),(1995),(1996),(1997) + ,(1998),(1999),(2000),(2001),(2002),(2003),(2004),(2005),(2006),(2007) + ,(2008),(2009),(2010),(2011),(2012),(2013),(2014),(2015),(2016),(2017) + ,(2018),(2019),(2020),(2021),(2022),(2023),(2024),(2025),(2026),(2027) + ,(2028),(2029),(2030),(2031),(2032),(2033),(2034),(2035),(2036),(2037) + ,(2038),(2039),(2040),(2041),(2042),(2043),(2044),(2045),(2046),(2047) + ,(2048),(2049),(2050) + ; + + drop table if exists tempHotellingActivityDistribution; + create table if not exists tempHotellingActivityDistribution ( + modelYearID smallint(6) not null, + opModeID smallint(6) not null, + opModeFraction float not null, + key (modelYearID, opModeID), + key (opModeID, modelYearID) + ); + + insert into tempHotellingActivityDistribution (modelYearID, opModeID, opModeFraction) + select year, opModeID, opModeFraction + from hotellingActivityDistribution, tempYear + where beginModelYearID <= year + and endModelYearID >= year; + + -- Complain about model years that appear more than once + insert into importTempMessages (message) + select distinct concat('ERROR: Model year ',modelYearID,' appears more than once (',count(*),')') as errorMessage + from tempHotellingActivityDistribution + group by modelYearID, opModeID + having count(*) > 1; + + -- Complain about model years with distributions that don't sum to exactly 1.0000 + insert into importTempMessages (message) + select concat('ERROR: total opModeFraction for model year ',modelYearID,' should be 1 but instead ',round(sum(opModeFraction),4)) as errorMessage + from tempHotellingActivityDistribution + group by modelYearID + having round(sum(opModeFraction),4) <> 1.0000; + + -- Cleanup + drop table if exists tempYear; + drop table if exists tempHotellingActivityDistribution; + + -- Check final status + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckHotellingImporter(); +drop procedure if exists spCheckHotellingImporter; diff --git a/database/IMCoverageImporter.sql b/database/IMCoverageImporter.sql new file mode 100644 index 0000000..604aa13 --- /dev/null +++ b/database/IMCoverageImporter.sql @@ -0,0 +1,174 @@ +-- Author Wesley Faler +-- Version 2013-04-15 + +drop procedure if exists spCheckIMImporter; + +BeginBlock +create procedure spCheckIMImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure for national domain + -- Mode 2 is run to check overall success/failure for county and project domains + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; +-- declare defaultRecordCount int default 0; + + update IMCoverage set useIMyn='Y' where useIMyn='y'; + + drop table if exists tempSourceFuelType; + create table if not exists tempSourceFuelType ( + sourceTypeID smallint not null, + fuelTypeID smallint not null, + primary key (sourceTypeID, fuelTypeID), + key (fuelTypeID, sourceTypeID) + ); + insert into tempSourceFuelType (sourceTypeID, fuelTypeID) + select sourceTypeID, fuelTypeID + from ##defaultDatabase##.sourceUseType, + ##defaultDatabase##.fuelType + where (sourceTypeID*100 + fuelTypeID) in (##sourceFuelTypeIDs##); + + drop table if exists tempModelYear; + create table if not exists tempModelYear ( + modelYearID smallint not null primary key + ); + + insert into tempModelYear(modelYearID) values(1960),(1961),(1962),(1963),(1964),(1965),(1966),(1967) + ,(1968),(1969),(1970),(1971),(1972),(1973),(1974),(1975),(1976),(1977),(1978),(1979),(1980),(1981),(1982),(1983),(1984),(1985),(1986),(1987) + ,(1988),(1989),(1990),(1991),(1992),(1993),(1994),(1995),(1996),(1997),(1998),(1999),(2000),(2001),(2002),(2003),(2004),(2005),(2006),(2007) + ,(2008),(2009),(2010),(2011),(2012),(2013),(2014),(2015),(2016),(2017),(2018),(2019),(2020),(2021),(2022),(2023),(2024),(2025),(2026),(2027) + ,(2028),(2029),(2030),(2031),(2032),(2033),(2034),(2035),(2036),(2037),(2038),(2039),(2040),(2041),(2042),(2043),(2044),(2045),(2046),(2047) + ,(2048),(2049),(2050); + + drop table if exists expandedImportRecords; + create table if not exists expandedImportRecords ( + polProcessID int not null, + countyID int not null, + yearID smallint not null, + sourceTypeID smallint not null, + fuelTypeID smallint not null, + modelYearID smallint not null, + key (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) + ); + +-- select count(*) into defaultRecordCount +-- from ##defaultDatabase##.IMCoverage +-- inner join tempSourceFuelType using (sourceTypeID, fuelTypeID) +-- where countyID in (##countyIDs##) and yearID in (##yearIDs##) and polProcessID in (##polProcessIDs##); +-- +-- if(defaultRecordCount > 0) then +-- -- Expand the imported records regardless of active/inactive +-- truncate table expandedImportRecords; +-- insert into expandedImportRecords (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) +-- select distinct imc.polProcessID, imc.countyID, imc.yearID, imc.sourceTypeID, imc.fuelTypeID, tempModelYear.modelYearID +-- from IMCoverage imc +-- inner join tempModelYear on (begModelYearID <= modelYearID and modelYearID <= endModelYearID) +-- inner join tempSourceFuelType using (sourceTypeID, fuelTypeID) +-- where countyID in (##countyIDs##) and yearID in (##yearIDs##) and polProcessID in (##polProcessIDs##); +-- +-- drop table if exists expandedDefaultRecords; +-- create table if not exists expandedDefaultRecords ( +-- polProcessID int not null, +-- countyID int not null, +-- yearID smallint not null, +-- sourceTypeID smallint not null, +-- fuelTypeID smallint not null, +-- modelYearID smallint not null, +-- key (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) +-- ); +-- insert into expandedDefaultRecords (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) +-- select distinct imc.polProcessID, imc.countyID, imc.yearID, imc.sourceTypeID, imc.fuelTypeID, tempModelYear.modelYearID +-- from ##defaultDatabase##.IMCoverage imc +-- inner join tempModelYear on (begModelYearID <= modelYearID and modelYearID <= endModelYearID) +-- inner join tempSourceFuelType using (sourceTypeID, fuelTypeID) +-- where countyID in (##countyIDs##) and yearID in (##yearIDs##) and polProcessID in (##polProcessIDs##); +-- +-- -- If any of the default records has no corresponding imported record, isOk=0 +-- set howMany = 0; +-- select d.polProcessID into howMany +-- from expandedDefaultRecords d +-- left outer join expandedImportRecords i using (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) +-- where i.polProcessID is null +-- limit 1; +-- if(howMany > 0) then +-- set isOk = 0; +-- insert into importTempMessages (message) values ('ERROR: Imported data does not yet cover all of the default cases'); +-- end if; +-- end if; + + -- Complain about imported active records that overlap + -- Expand the imported active records + truncate table expandedImportRecords; + insert into expandedImportRecords (polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID) + select imc.polProcessID, imc.countyID, imc.yearID, imc.sourceTypeID, imc.fuelTypeID, tempModelYear.modelYearID + from IMCoverage imc + inner join tempModelYear on (begModelYearID <= modelYearID and modelYearID <= endModelYearID) + inner join tempSourceFuelType using (sourceTypeID, fuelTypeID) + where countyID in (##countyIDs##) and yearID in (##yearIDs##) and polProcessID in (##polProcessIDs##) + and imc.useIMyn='Y'; + + insert into importTempMessages (message) + select concat('ERROR: Duplicate active program for pol/proc ',polProcessID,' in county ',countyID,', year ',yearID,' for source type ',sourceTypeID,', fuel ',fuelTypeID,', model year ',modelYearID) as errorMessage + from expandedImportRecords + group by polProcessID, countyID, yearID, sourceTypeID, fuelTypeID, modelYearID + having count(*) > 1; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: Duplicate active program%'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Complain about any years outside of MOVES's range + insert into importTempMessages (message) + select distinct concat('ERROR: Year ',yearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage + from imCoverage + where yearID < 1990 or yearID > 2050; + + -- Complain about evap/exhaust process and test mismatches + insert into importTempMessages (message) + select distinct concat('ERROR: Pollutant/Process ',imc.polProcessID,' cannot use test standard ',imc.testStandardsID,' (',ts.testStandardsDesc,')') as errorMessage + from IMCoverage imc + inner join ##defaultDatabase##.IMTestStandards ts using (testStandardsID) + inner join ##defaultDatabase##.PollutantProcessAssoc ppa using (polProcessID) + inner join ##defaultDatabase##.Pollutant using (pollutantID) + inner join ##defaultDatabase##.EmissionProcess using (processID) + where (left(testStandardsDesc,4)='Evap' and isAffectedByEvapIM<>'Y') + or (left(testStandardsDesc,4)<>'Evap' and isAffectedByExhaustIM<>'Y'); + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like '% cannot use test standard %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- For county and project domains, the IMCoverage table cannot be empty. + if(mode = 2 and isOk=1) then + set howMany=0; + select count(*) into howMany from IMCoverage; + set howMany=ifnull(howMany,0); + if(howMany <= 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode >= 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; + + drop table if exists tempSourceFuelType; + drop table if exists tempModelYear; + drop table if exists expandedImportRecords; + drop table if exists expandedDefaultRecords; +end +EndBlock + +call spCheckIMImporter(); +drop procedure if exists spCheckIMImporter; diff --git a/database/LinksImporter.sql b/database/LinksImporter.sql new file mode 100644 index 0000000..57deb9b --- /dev/null +++ b/database/LinksImporter.sql @@ -0,0 +1,110 @@ +-- Version 2012-02-18 +-- Author Wesley Faler + +drop procedure if exists spCheckLinkImporter; + +BeginBlock +create procedure spCheckLinkImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + -- Check for missing road types + insert into importTempMessages (message) + select concat('ERROR: Link ',linkID,' is missing its roadTypeID') as errorMessage + from link + where (roadTypeID is null or roadTypeID <= 0) + order by linkID; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: Link % is missing its roadTypeID'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Check for negative average speeds + insert into importTempMessages (message) + select concat('ERROR: Link ',linkID,' average speed (',linkAvgSpeed,') cannot be negative') as errorMessage + from link + where (linkAvgSpeed < 0) + order by linkID; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: Link % average speed (%) cannot be negative'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Remind users that drive schedules will override any link average speed or grade + insert into importTempMessages (message) + select concat('INFO: Link ',linkID,' will obtain average speed and grade from its driving schedule') as errorMessage + from link + where linkID in (select distinct linkID from driveScheduleSecondLink) + order by linkID; + + -- Note missing data + insert into importTempMessages (message) + select concat('ERROR: Link ',linkID,' is missing average speed, operating modes, and/or a drive schedule') as errorMessage + from link + where linkAvgSpeed is null + and linkID not in (select distinct linkID from opModeDistribution) + and linkID not in (select distinct linkID from driveScheduleSecondLink) + order by linkID; + + insert into importTempMessages (message) + select concat('ERROR: Link ',linkID,' is missing average speed but has operating mode data') as errorMessage + from link + where linkAvgSpeed is null + and linkID in (select distinct linkID from opModeDistribution) + and linkID not in (select distinct linkID from driveScheduleSecondLink) + order by linkID; + + insert into importTempMessages (message) + select concat('ERROR: Link ',linkID,' is missing average grade and cannot interpolate a drive schedule') as errorMessage + from link + where linkAvgSpeed is not null and linkAvgGrade is null + and linkID not in (select distinct linkID from opModeDistribution) + and linkID not in (select distinct linkID from driveScheduleSecondLink) + order by linkID; + + insert into importTempMessages (message) + select distinct concat('ERROR: Zone ',zoneID,' is missing Off-Network data') as errorMessage + from link + where roadTypeID = 1 + and zoneID not in (select distinct zoneID from offNetworkLink) + order by zoneID; + + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,' has more than 1 off-network link') as message + from link + where roadTypeID = 1 + group by zoneID + having count(*) > 1; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: Link %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckLinkImporter(); +drop procedure if exists spCheckLinkImporter; diff --git a/database/LiquidLeakingCalculator.sql b/database/LiquidLeakingCalculator.sql new file mode 100644 index 0000000..3561890 --- /dev/null +++ b/database/LiquidLeakingCalculator.sql @@ -0,0 +1,419 @@ +-- Version 2014-04-28 +-- Author Wesley Faler + +-- @algorithm +-- @owner Liquid Leaking Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunSpecHourDay##; +TRUNCATE RunSpecHourDay; + +##create.RunSpecMonth##; +TRUNCATE RunSpecMonth; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceHours##; +TRUNCATE SourceHours; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +-- Section WithRegClassID +##create.RegClassSourceTypeFraction##; +TRUNCATE TABLE RegClassSourceTypeFraction; +-- End Section WithRegClassID + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Extracting Data'; + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +-- @algorithm Filter emissionRateByAge to only operating modes 150, 151, and 300. +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.opModeID IN (150, 151, 300); + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE monthID = ##context.monthID##; + +-- @algorithm Filter OpModeDistribution to only operating modes 150, 151, and 300. +cache(monthID=##context.monthID##) SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID +AND opModeID IN (150, 151, 300); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunSpecMonth##' +FROM RunSpecMonth +WHERE monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##RunSpecHourDay##' +FROM RunSpecHourDay; + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT * INTO OUTFILE '##SourceHours##' FROM SourceHours +WHERE monthID = ##context.monthID## +AND yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +-- Section WithRegClassID +cache select * +into outfile '##RegClassSourceTypeFraction##' +from RegClassSourceTypeFraction +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section WithRegClassID + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'End Extracting Data'; + +-- End Section Extract Data + +-- Section Processing + +-- Create tables needed for processing +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); + +-- +-- LL-1: Complete I/M adjustment fraction information (like CREC 1-a) +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'LL-1'; +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT +); + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + processID ASC, + pollutantID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +-- @algorithm Disaggregate IMCoverage records, expanding model year ranges into individual model years. +-- IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01. +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- +-- LL-8: Calculate Adjusted MeanBaseRates +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'LL-8'; +drop table if exists WeightedMeanBaseRate; + +create table WeightedMeanBaseRate ( + polProcessID int not null, + sourceTypeID smallint(6) not null, + regClassID smallint(6) not null, + fuelTypeID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + modelYearID smallint(6) not null, + opModeID smallint(6) not null, + weightedMeanBaseRate float not null, + weightedMeanBaseRateIM float not null, + primary key (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, modelYearID, opModeID) +); + +-- Now for all operating modes (formerly only for hot soaking and operating) +-- Section WithRegClassID + +-- @algorithm weightedMeanBaseRate = sourceBinActivityFraction * meanBaseRate. +-- weightedMeanBaseRateIM = sourceBinActivityFraction * meanBaseRateIM. +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select er.polProcessID, stmy.sourceTypeID, sb.regClassID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID, + sum(sourceBinActivityFraction*meanBaseRate) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*meanBaseRateIM) as weightedMeanBaseRateIM +from EmissionRateByAge er +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceBin sb on (sb.sourceBinID=er.sourceBinID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join SourceBinDistribution sbd on (sbd.sourceBinID=sb.sourceBinID + and sbd.polProcessID=er.polProcessID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID + and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +inner join RunSpecSourceType rsst on (rsst.sourceTypeID=stmy.sourceTypeID) +inner join RunSpecMonth rsm +inner join RunSpecHourDay rshd +where er.polProcessID in (##pollutantProcessIDs##) +group by er.polProcessID, stmy.sourceTypeID, sb.regClassID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID +order by null; +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select er.polProcessID, stmy.sourceTypeID, 0 as regClassID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID, + sum(sourceBinActivityFraction*meanBaseRate) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*meanBaseRateIM) as weightedMeanBaseRateIM +from EmissionRateByAge er +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceBin sb on (sb.sourceBinID=er.sourceBinID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join SourceBinDistribution sbd on (sbd.sourceBinID=sb.sourceBinID + and sbd.polProcessID=er.polProcessID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID + and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +inner join RunSpecSourceType rsst on (rsst.sourceTypeID=stmy.sourceTypeID) +inner join RunSpecMonth rsm +inner join RunSpecHourDay rshd +where er.polProcessID in (##pollutantProcessIDs##) +group by er.polProcessID, stmy.sourceTypeID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID +order by null; +-- End Section NoRegClassID + +analyze table WeightedMeanBaseRate; + +alter table MOVESWorkerOutput add emissionQuantIM float null; + +-- +-- LL-9: Calculate MOVESWorkerOutput by Source Type +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'LL-9 without SCC'; + +-- @algorithm emissionQuant = weightedMeanBaseRate * sourceHours * opModeFraction. +-- emissionQuantIM = weightedMeanBaseRateIM * sourceHours * opModeFraction. +insert into MOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID, SCC, emissionQuant, emissionQuantIM) +select ##context.year## as yearID, w.monthID, hd.dayID, hd.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID## as linkID, + ppa.pollutantID, ppa.processID, w.sourceTypeID, w.regClassID, w.fuelTypeID, w.modelYearID, + l.roadTypeID, null as SCC, + (weightedMeanBaseRate*sourceHours*opModeFraction) as emissionQuant, + (weightedMeanBaseRateIM*sourceHours*opModeFraction) as emissionQuantIM +from WeightedMeanBaseRate w +inner join SourceHours sh on (sh.hourDayID=w.hourDayID and sh.monthID=w.monthID + and sh.yearID=##context.year## and sh.ageID=##context.year##-w.modelYearID + and sh.linkID=##context.iterLocation.linkRecordID## and sh.sourceTypeID=w.sourceTypeID) +inner join OpModeDistribution omd on (omd.sourceTypeID=sh.sourceTypeID + and omd.hourDayID=w.hourDayID and omd.linkID=##context.iterLocation.linkRecordID## + and omd.polProcessID=w.polProcessID and omd.opModeID=w.opModeID) +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=omd.polProcessID) +inner join Link l on (l.linkID=##context.iterLocation.linkRecordID##) +inner join HourDay hd on (hd.hourDayID=omd.hourDayID); + +-- Apply IM + +-- @algorithm Apply I/M programs. +-- emissionQuant=emissionQuantIM*IMAdjustFract + emissionQuant*(1-IMAdjustFract). +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing +-- Section Cleanup +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Section Cleanup'; + +drop table if exists WeightedMeanBaseRate; +drop table if exists IMCoverageMergedUngrouped; +-- End Section Cleanup diff --git a/database/MultidayTankVaporVentingCalculator.sql b/database/MultidayTankVaporVentingCalculator.sql new file mode 100644 index 0000000..a6f08a1 --- /dev/null +++ b/database/MultidayTankVaporVentingCalculator.sql @@ -0,0 +1,2066 @@ +-- Author Wesley Faler +-- Author David Hawkins +-- Version 2014-06-24 + +-- @algorithm +-- @owner Tank Vapor Venting Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.AverageTankGasoline##; +TRUNCATE AverageTankGasoline; + +##create.AverageTankTemperature##; +TRUNCATE AverageTankTemperature; + +##create.ColdSoakInitialHourFraction##; +TRUNCATE ColdSoakInitialHourFraction; + +##create.ColdSoakTankTemperature##; +TRUNCATE ColdSoakTankTemperature; + +##create.County##; +TRUNCATE County; + +##create.CumTVVCoeffs##; +TRUNCATE CumTVVCoeffs; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.evapTemperatureAdjustment##; +TRUNCATE evapTemperatureAdjustment; + +##create.evapRVPTemperatureAdjustment##; +TRUNCATE evapRVPTemperatureAdjustment; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunSpecDay##; +TRUNCATE RunSpecDay; + +##create.RunSpecHourDay##; +TRUNCATE RunSpecHourDay; + +##create.RunSpecMonth##; +TRUNCATE RunSpecMonth; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.sampleVehicleSoaking##; +TRUNCATE sampleVehicleSoaking; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceHours##; +TRUNCATE SourceHours; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.SourceTypeModelYearGroup##; +TRUNCATE SourceTypeModelYearGroup; + +create table if not exists stmyTVVCoeffs ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + tankSize double DEFAULT NULL, + tankFillFraction double DEFAULT NULL, + PRIMARY KEY (sourceTypeID,modelYearID,fuelTypeID,polProcessID) +); +truncate stmyTVVCoeffs; + +create table if not exists stmyTVVEquations ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + regClassID smallint not null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + regClassFractionOfSourceTypeModelYearFuel double not null, + tvvEquation varchar(100) NOT NULL DEFAULT '', + leakEquation varchar(100) NOT NULL DEFAULT '', + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + tankSize double DEFAULT NULL, + tankFillFraction double DEFAULT NULL, + PRIMARY KEY (sourceTypeID,modelYearID,fuelTypeID,polProcessID,regClassID,tvvEquation,leakEquation) +); +truncate stmyTVVEquations; + +##create.TankVaporGenCoeffs##; +TRUNCATE TankVaporGenCoeffs; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +-- Section WithRegClassID +##create.RegClassSourceTypeFraction##; +TRUNCATE TABLE RegClassSourceTypeFraction; +-- End Section WithRegClassID + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Extracting Data'; + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT AverageTankGasoline.* INTO OUTFILE '##AverageTankGasoline##' +FROM AverageTankGasoline +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = AverageTankGasoline.monthGroupID) +INNER JOIN Year ON (Year.yearID = ##context.year##) +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND AverageTankGasoline.fuelYearID = Year.fuelYearID +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##AverageTankTemperature##' FROM AverageTankTemperature +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##ColdSoakInitialHourFraction##' FROM ColdSoakInitialHourFraction +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##ColdSoakTankTemperature##' FROM ColdSoakTankTemperature +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT DISTINCT CumTVVCoeffs.* INTO OUTFILE '##CumTVVCoeffs##' +FROM CumTVVCoeffs, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE SourceBinDistribution.polProcessID IN (##pollutantProcessIDs##) +AND CumTVVCoeffs.polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID +AND SourceBin.regClassID = CumTVVCoeffs.regClassID; + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.opModeID IN (150, 300); + +cache select * into outfile '##evapTemperatureAdjustment##' +from evapTemperatureAdjustment +where processID=12; + +cache select * into outfile '##evapRVPTemperatureAdjustment##' +from evapRVPTemperatureAdjustment +where processID=12 +and fuelTypeID in (1,5); + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE monthID = ##context.monthID##; + +cache(monthID=##context.monthID##) SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID +AND opModeID IN (150, 151, 300); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunSpecMonth##' +FROM RunSpecMonth +WHERE monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##RunSpecDay##' +FROM RunSpecDay; + +cache SELECT * INTO OUTFILE '##RunSpecHourDay##' +FROM RunSpecHourDay; + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT * INTO OUTFILE '##SourceHours##' FROM SourceHours +WHERE monthID = ##context.monthID## +AND yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeModelYearGroup.* INTO OUTFILE '##SourceTypeModelYearGroup##' +FROM SourceTypeModelYearGroup,RunSpecSourceType +WHERE SourceTypeModelYearGroup.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT * INTO OUTFILE '##TankVaporGenCoeffs##' FROM TankVaporGenCoeffs; + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'End Extracting Data'; + +-- Section NewTVVYear +drop table if exists regClassFractionOfSTMY##context.year##; + +create table regClassFractionOfSTMY##context.year## ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + regClassID smallint not null, + regClassFractionOfSourceTypeModelYearFuel double not null, + primary key (sourceTypeID, modelYearID, fuelTypeID, regClassID) +); + +insert into regClassFractionOfSTMY##context.year## (sourceTypeID, modelYearID, fuelTypeID, regClassID, regClassFractionOfSourceTypeModelYearFuel) +select sourceTypeID, modelYearID, fuelTypeID, regClassID, sum(stmyFraction) as regClassFractionOfSourceTypeModelYearFuel +from SampleVehiclePopulation svp +where sourceTypeID in (##macro.csv.all.sourceTypeID##) +and modelYearID in (##macro.csv.all.modelYearID##) +group by sourceTypeModelYearID, fuelTypeID, regClassID +having sum(stmyFraction) > 0; + +drop table if exists stmyTVVEquations##context.year##; + +create table stmyTVVEquations##context.year## ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + regClassID smallint not null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + regClassFractionOfSourceTypeModelYearFuel double not null, + tvvEquation varchar(100) NOT NULL DEFAULT '', + leakEquation varchar(100) NOT NULL DEFAULT '', + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + tankSize double DEFAULT NULL, + tankFillFraction double DEFAULT NULL, + PRIMARY KEY (sourceTypeID,modelYearID,fuelTypeID,polProcessID,regClassID,tvvEquation,leakEquation) +); + +insert into stmyTVVEquations##context.year## (sourceTypeID, modelYearID, fuelTypeID, polProcessID, regClassID, + backPurgeFactor, averageCanisterCapacity, regClassFractionOfSourceTypeModelYearFuel, + tvvEquation, leakEquation, leakFraction, leakFractionIM, tankSize, tankFillFraction) +select rf.sourceTypeID, rf.modelYearID, rf.fuelTypeID, + c.polProcessID, c.regClassID, + sum(backPurgeFactor*regClassFractionOfSourceTypeModelYearFuel) as backPurgeFactor, + sum(averageCanisterCapacity*regClassFractionOfSourceTypeModelYearFuel) as averageCanisterCapacity, + sum(regClassFractionOfSourceTypeModelYearFuel) as regClassFractionOfSourceTypeModelYearFuel, + c.tvvEquation, + c.leakEquation, + sum(leakFraction*regClassFractionOfSourceTypeModelYearFuel) as leakFraction, + sum(leakFractionIM*regClassFractionOfSourceTypeModelYearFuel) as leakFractionIM, + sum(tankSize*regClassFractionOfSourceTypeModelYearFuel) as tankSize, + sum(tankFillFraction*regClassFractionOfSourceTypeModelYearFuel) as tankFillFraction +from cumTVVCoeffs c +inner join pollutantProcessMappedModelYear ppmy on ( + ppmy.polProcessID = c.polProcessID + and ppmy.modelYearGroupID = c.modelYearGroupID) +inner join ageCategory a on ( + a.ageGroupID = c.ageGroupID) +inner join regClassFractionOfSTMY##context.year## rf on ( + rf.modelYearID = ppmy.modelYearID + and rf.regClassID = c.regClassID) +where ppmy.modelYearID = ##context.year## - a.ageID +and c.polProcessID in (##pollutantProcessIDs##) +group by rf.sourceTypeID, rf.modelYearID, rf.fuelTypeID, + c.polProcessID, c.regClassID, + c.tvvEquation, + c.leakEquation; + +drop table if exists stmyTVVCoeffs##context.year##; + +create table stmyTVVCoeffs##context.year## ( + sourceTypeID smallint not null, + modelYearID smallint not null, + fuelTypeID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + tankSize double DEFAULT NULL, + tankFillFraction double DEFAULT NULL, + PRIMARY KEY (sourceTypeID,modelYearID,fuelTypeID,polProcessID) +); + +insert into stmyTVVCoeffs##context.year## (sourceTypeID, modelYearID, fuelTypeID, polProcessID, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tankSize, tankFillFraction) +select sourceTypeID, modelYearID, fuelTypeID, polProcessID, + sum(backPurgeFactor), + sum(averageCanisterCapacity), + sum(leakFraction), + sum(leakFractionIM), + sum(tankSize), + sum(tankFillFraction) +from stmyTVVEquations##context.year## +group by sourceTypeiD, modelYearID, fuelTypeID, polProcessID; +-- End Section NewTVVYear + +cache(yearID=##context.year##) select * into outfile '##stmyTVVEquations##' from stmyTVVEquations##context.year##; +cache(yearID=##context.year##) select * into outfile '##stmyTVVCoeffs##' from stmyTVVCoeffs##context.year##; + +-- Section FirstBundle + +-- Section FillSampleVehicleSoaking + +-- Fill sampleVehicleSoaking +truncate sampleVehicleSoaking; + +-- Get total vehicle counts +drop table if exists sampleVehicleCount; + +create table sampleVehicleCount ( + dayID smallint not null, + sourceTypeID smallint not null, + totalVehicles int not null, + primary key (dayID, sourceTypeID), + unique key (sourceTypeID, dayID) +); + +-- @algorithm totalVehicles = count(dayID, sourceTypeID) from sampleVehicleDay. +-- @condition First bundle only. +insert into sampleVehicleCount (dayID, sourceTypeID, totalVehicles) +select svd.dayID, sourceTypeID, count(*) +from sampleVehicleDay svd +group by svd.dayID, sourceTypeID +order by null; + +-- Count vehicles that never started +drop table if exists sampleVehicleNeverStarted; + +create table sampleVehicleNeverStarted ( + dayID smallint not null, + sourceTypeID smallint not null, + vehiclesNeverStarted int not null, + fractionNeverStarted double, + primary key (dayID, sourceTypeID), + unique key (sourceTypeID, dayID) +); + +-- @algorithm vehiclesNeverStarted = count(dayID, sourceTypeID) from sampleVehicleDay without any corresponding entry in sampleVehicleTrip. +-- @condition First bundle only. +insert into sampleVehicleNeverStarted (dayID, sourceTypeID, vehiclesNeverStarted) +select svd.dayID, sourceTypeID, count(*) +from sampleVehicleDay svd +left outer join sampleVehicleTrip svt using (vehID, dayID) +where svt.vehID is null and svt.dayID is null +group by svd.dayID, sourceTypeID +order by null; + +-- @algorithm fractionNeverStarted[dayID,sourceTypeID] = vehiclesNeverStarted/totalVehicles. +-- @condition First bundle only. +update sampleVehicleNeverStarted, sampleVehicleCount + set fractionNeverStarted=case when totalVehicles <= 0 then 0 else vehiclesNeverStarted*1.0/totalVehicles end +where sampleVehicleNeverStarted.dayID = sampleVehicleCount.dayID +and sampleVehicleNeverStarted.sourceTypeID = sampleVehicleCount.sourceTypeID; + +-- Count vehicles by when they started +drop table if exists sampleVehicleFirstStart; + +create table sampleVehicleFirstStart ( + vehID int not null, + dayID smallint not null, + sourceTypeID smallint not null, + hourID smallint not null, + primary key (dayID, sourceTypeID, hourID, vehID), + unique key (sourceTypeID, dayID, hourID, vehID) +); + +-- @algorithm hour of first start[vehID,dayID,sourceTypeID] = min(SampleVehicleTrip.hourID). +-- @condition First bundle only. +insert into sampleVehicleFirstStart (vehID, dayID, sourceTypeID, hourID) +select svd.vehID, svd.dayID, svd.sourceTypeID, min(svt.hourID) +from sampleVehicleDay svd +inner join sampleVehicleTrip svt using (vehID, dayID) +where svt.keyontime is not null +group by svd.vehID, svd.dayID +order by null; + +drop table if exists sampleVehicleSoakTemp; + +create table sampleVehicleSoakTemp ( + dayID smallint not null, + sourceTypeID smallint not null, + hourID smallint not null, + vehiclesFirstStarted int not null, + primary key (dayID, sourceTypeID, hourID), + unique key (sourceTypeID, dayID, hourID) +); + +-- @algorithm In each day and hour, count the number of vehicles that start for the first time. +-- vehiclesFirstStarted[dayID,sourceTypeID,hourID] = count(dayID,sourceTypeID,hourID) by hour of first start. +-- @condition First bundle only. +insert into sampleVehicleSoakTemp (dayID, sourceTypeID, hourID, vehiclesFirstStarted) +select dayID, sourceTypeID, hourID, count(*) as vehiclesFirstStarted +from sampleVehicleFirstStart +group by dayID, sourceTypeID, hourID +order by null; + +drop table if exists sampleVehicleSoakTemp2; + +create table sampleVehicleSoakTemp2 ( + dayID smallint not null, + sourceTypeID smallint not null, + hourID smallint not null, + totalVehiclesStarted int not null, + primary key (dayID, sourceTypeID, hourID), + unique key (sourceTypeID, dayID, hourID) +); + +-- @algorithm In each day and hour, sum the number of vehicles that have started up to then. +-- totalVehiclesStarted[dayID,sourceTypeID,hourID]=sum(vehiclesFirstStarted) for all hours up to hourID. +-- @condition First bundle only. +insert into sampleVehicleSoakTemp2 (dayID, sourceTypeID, hourID, totalVehiclesStarted) +select s.dayID, s.sourceTypeID, h.hourID, sum(vehiclesFirstStarted) as totalVehiclesStarted +from sampleVehicleSoakTemp s, hourOfAnyDay h +where s.hourID <= h.hourID +group by s.dayID, s.sourceTypeID, h.hourID +order by null; + +truncate sampleVehicleSoaking; + +-- @algorithm Obtain the fraction of vehicles soaking, awaiting their first start, for each day and hour. +-- soakFraction[soakDayID=0,sourceTypeID,dayID,hourID]=(totalVehicles-totalVehiclesStarted)/totalVehicles. +-- @condition First bundle only. +insert into sampleVehicleSoaking (soakDayID, sourceTypeID, dayID, hourID, soakFraction) +select 0, st.sourceTypeID, st.dayID, st.hourID, + case when totalVehicles <= 0 then 0 + else (totalVehicles - totalVehiclesStarted)*1.0/totalVehicles end as soakFraction +from sampleVehicleSoakTemp2 st +inner join sampleVehicleCount c using (dayID, sourceTypeID); + +-- @algorithm Assume a default soakFraction of 1 for any day and hour that has no vehicles started previously. +-- @condition First bundle only. +insert ignore into sampleVehicleSoaking (soakDayID, sourceTypeID, dayID, hourID, soakFraction) +select distinct 0, s.sourceTypeID, s.dayID, h.hourID, 1.0 as soakFraction +from sampleVehicleSoakTemp s, hourOfAnyDay h; + +drop table if exists sampleVehicleSoakingF; + +create table if not exists sampleVehicleSoakingF ( + soakDayID smallint not null, + sourceTypeID smallint not null, + dayID smallint not null, + F double, + GammaFn1 double, + GammaFn double, + NextF double, + P1 double, + P24 double, + primary key (soakDayID, sourceTypeID, dayID) +); + +-- SampleVehicleSoaking Day 1 + +-- @algorithm dayF[soakDayID=1,sourceTypeID,dayID]=soakFraction[soakDayID=0,sourceTypeID,dayID,hourID=24] +-- @condition First bundle only. +insert ignore into sampleVehicleSoakingDay (soakDayID, sourceTypeID, dayID, F) +select 1, sourceTypeID, dayID, soakFraction as F +from sampleVehicleSoaking +where soakDayID=0 +and hourID=24; + +-- @algorithm soakF[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID]. +-- GammaFn1[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID]. +-- GammaFn[soakDayID=1,sourceTypeID,dayID]=dayF[soakDayID=1,sourceTypeID,dayID]. +-- @condition First bundle only. +insert into sampleVehicleSoakingF (soakDayID, sourceTypeID, dayID, F, GammaFn1, GammaFn) +select soakDayID, sourceTypeID, dayID, F, F as GammaFn1, F as GammaFn +from sampleVehicleSoakingDay +where soakDayID=1; + +-- SampleVehicleSoaking Day 2 + +-- @algorithm dayF[soakDayID=2,sourceTypeID,dayID]=greatest(dayF[soakDayID=1,sourceTypeID,dayID], basisF[soakDayID=2,dayID]). +-- @condition First bundle only. +insert ignore into sampleVehicleSoakingDay (soakDayID, sourceTypeID, dayID, F) +select 2, d.sourceTypeID, d.dayID, if(b.F0; + +drop table if exists sampleVehicleSoakingDH; + +create table sampleVehicleSoakingDH ( + sourceTypeID smallint not null, + dayID smallint not null, + hourID smallint not null, + DFraction double, + primary key (sourceTypeID, dayID, hourID) +); + +-- @algorithm Precalc[h] = (D[0,h]-D[0,24]) / (D[0,1]-D[0,24]) because it is used in P[n,1 < h < 24] +-- @condition First bundle only. +insert into sampleVehicleSoakingDH (sourceTypeID, dayID, hourID, DFraction) +select d1.sourceTypeID, d1.dayID, d.hourID, + case when (d1.soakFraction-d24.soakFraction) <= 0 then 0 + else (d.soakFraction-d24.soakFraction)/(d1.soakFraction-d24.soakFraction) end +from sampleVehicleSoaking as d +inner join sampleVehicleSoaking as d1 using (sourceTypeID, dayID) +inner join sampleVehicleSoaking as d24 using (sourceTypeID, dayID) +where d.soakDayID=0 +and d1.soakDayID=0 and d1.hourID=1 +and d24.soakDayID=0 and d24.hourID=24 +and d.hourID > 1 and d.hourID < 24; + +-- @algorithm Store P[n,1] for each day alongside P[n,24] since they are used together +-- @condition First bundle only. +update sampleVehicleSoakingF, sampleVehicleSoakingProportion set P1=P +where sampleVehicleSoakingProportion.soakDayID=sampleVehicleSoakingF.soakDayID +and sampleVehicleSoakingProportion.dayID=sampleVehicleSoakingF.dayID +and sampleVehicleSoakingProportion.sourceTypeID=sampleVehicleSoakingF.sourceTypeID +and sampleVehicleSoakingProportion.hourID=1; + +update sampleVehicleSoakingF, sampleVehicleSoakingProportion set P24=P +where sampleVehicleSoakingProportion.soakDayID=sampleVehicleSoakingF.soakDayID +and sampleVehicleSoakingProportion.dayID=sampleVehicleSoakingF.dayID +and sampleVehicleSoakingProportion.sourceTypeID=sampleVehicleSoakingF.sourceTypeID +and sampleVehicleSoakingProportion.hourID=24; + +-- @algorithm P[n,h]=Precalc[h]*(P[n,1]-P[n,24]) + P[n,24] for 1 <= n <= 5, 1 < h < 24 +-- @condition First bundle only. +insert into sampleVehicleSoakingProportion (soakDayID, sourceTypeID, dayID, hourID, P) +select p1.soakDayID, p1.sourceTypeID, p1.dayID, dh.hourID, DFraction*(p1.P-p24.P) + p24.P +from sampleVehicleSoakingDH dh +inner join sampleVehicleSoakingProportion p1 using (sourceTypeID,dayID) +inner join sampleVehicleSoakingProportion p24 using (soakDayID,sourceTypeID,dayID) +where p1.hourID=1 +and p24.hourID=24; + +-- @algorithm D[n,h] = D[n,1]*P[n,h] for 1 <= n <= 5, 1 < h < 24 +-- @condition First bundle only. +insert ignore into sampleVehicleSoaking (soakDayID, sourceTypeID, dayID, hourID, soakFraction) +select p.soakDayID, p.sourceTypeID, p.dayID, p.hourID, s.soakFraction * p.P +from sampleVehicleSoakingProportion p +inner join sampleVehicleSoaking s using (soakDayID, sourceTypeID, dayID) +where s.hourID=1; + +-- End Section FillSampleVehicleSoaking + +-- End Section FirstBundle + +cache select * into outfile '##sampleVehicleSoaking##' from sampleVehicleSoaking; + +cache SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND ZoneMonthHour.monthID = ##context.monthID## +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +-- Section WithRegClassID +cache select * +into outfile '##RegClassSourceTypeFraction##' +from RegClassSourceTypeFraction +where modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section WithRegClassID + +-- End Section Extract Data + +-- Section Processing + +-- @algorithm Index by hourID to speedup later joins. +-- @input ColdSoakTankTemperature +alter table ColdSoakTankTemperature add key speed1 (hourID); +analyze table ColdSoakTankTemperature; + +-- Create tables needed for processing +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); + +-- @algorithm Include soakDayID in ColdSoakInitialHourFraction. +-- @input ColdSoakInitialHourFraction +alter table ColdSoakInitialHourFraction add column soakDayID smallint not null default 1; +alter table coldSoakInitialHourFraction drop primary key; +alter table coldSoakInitialHourFraction add primary key (sourceTypeID,zoneID,monthID,hourDayID,initialHourDayID,soakDayID); + +-- +-- TVV-1: Complete I/M adjustment fraction information (like CREC 1-a) +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-1'; +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT +); + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + processID ASC, + pollutantID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +-- @algorithm Disaggregate IMCoverage records, expanding model year ranges into individual model years. +-- IMAdjustFract[processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID]=IMFactor*complianceFactor*0.01. +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessMappedModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- +-- TVV-2: Determine Hour of Peak Cold Soak Tank Temperature +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-2'; +drop table if exists PeakHourOfColdSoak; + +--zoneID int not null, NOTE: since calc is at year level, there is only 1 zone +create table PeakHourOfColdSoak ( +monthID smallint(6) not null, +peakHourID smallint(6) not null, +primary key (monthID), +index (peakHourID) +); + +-- @algorithm Compute peakHourID by monthID. The maximum value of the expression is found. This finds the maximum temperature and the earliest time of day +-- in which the temperature occurs, storing both as a single number. +insert into PeakHourOfColdSoak (monthID, peakHourID) +select monthID, +999-mod(max(round(coldSoakTankTemperature,2)*100000+(999-hourID)),1000) as peakHourID +from ColdSoakTankTemperature +group by monthID +order by null; + +analyze table PeakHourOfColdSoak; + +-- +-- TVV-3: Calculate TankVaporGenerated (TVG) by Ethanol Level +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-3'; +drop table if exists TankVaporGenerated; + +-- Section DebugTankVaporGenerated +drop table if exists DebugTankVaporGenerated; + +create table DebugTankVaporGenerated ( + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + ethanolLevelID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + tankVaporGenerated float null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + primary key (hourDayID, initialHourDayID, ethanolLevelID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +insert into DebugTankVaporGenerated (hourDayID, initialHourDayID, ethanolLevelID, + monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + tankVaporGenerated, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +select ihf.hourDayID, ihf.initialHourDayID, coeffs.ethanolLevelID, + ihf.monthID, ihf.sourceTypeID, avggas.fuelTypeID, + stmycoeffs.modelYearID, stmycoeffs.polProcessID, + case when t1.coldSoakTankTemperature >= t2.coldSoakTankTemperature then 0.0 + else + (stmycoeffs.tankSize*(1-stmycoeffs.tankFillFraction))*(tvgTermA*exp(tvgTermB*RVP)*(exp(tvgTermC*t2.coldSoakTankTemperature)-exp(tvgTermC*t1.coldSoakTankTemperature))) + end as tankVaporGenerated, + stmycoeffs.backPurgeFactor, stmycoeffs.averageCanisterCapacity, stmycoeffs.leakFraction, stmycoeffs.leakFractionIM +from ColdSoakInitialHourFraction ihf +inner join HourDay hd on (hd.hourDayID = ihf.hourDayID) +inner join HourDay ihd on (ihd.hourDayID = ihf.initialHourDayID) +inner join PeakHourOfColdSoak ph on (ihf.monthID = ph.monthID) +inner join ColdSoakTankTemperature t2 on (ihf.monthID = t2.monthID and hd.hourID = t2.hourID) +inner join ColdSoakTankTemperature t1 on (ihf.monthID = t1.monthID and ihd.hourID = t1.hourID) +inner join Zone on (ihf.zoneID = Zone.zoneID) +inner join County on (Zone.countyID = County.countyID) +inner join TankVaporGenCoeffs coeffs on (County.altitude = coeffs.altitude) +inner join MonthOfAnyYear m on (ihf.monthID = m.monthID) +inner join AverageTankGasoline avggas on (m.monthGroupID = avggas.monthGroupID) +inner join stmyTVVCoeffs stmycoeffs on ( + stmycoeffs.sourceTypeID = ihf.sourceTypeID + and stmycoeffs.fuelTypeID = avggas.fuelTypeID +) +where ihf.hourDayID <> ihf.initialHourDayID + and hd.hourID <= ph.peakHourID + and ihf.coldSoakInitialHourFraction > 0; + +analyze table DebugTankVaporGenerated; + +-- End Section DebugTankVaporGenerated + +drop table if exists TankVaporGeneratedHighAndLow; + +create table TankVaporGeneratedHighAndLow ( + altitudeFlag varchar(1) not null, + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + ethanolLevelID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + tankVaporGenerated float null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + primary key (altitudeFlag, hourDayID, initialHourDayID, ethanolLevelID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +-- @algorithm Calculate tankVaporGenerated for high and low altitudes. +-- The time spans t1 (based upon ColdSoakInitialHourFraction.initialHourDayID) to t2 (based upon ColdSoakInitialHourFraction.hourDayID). +-- tankVaporGenerated[high and low altitudes] = (tankSize*(1-tankFillFraction))*(tvgTermA*exp(tvgTermB*RVP)*(exp(tvgTermC*t2.coldSoakTankTemperature)-exp(tvgTermC*t1.coldSoakTankTemperature))) +-- @condition t1.coldSoakTankTemperature < t2.coldSoakTankTemperature, 0 otherwise. +insert into TankVaporGeneratedHighAndLow (altitudeFlag, hourDayID, initialHourDayID, ethanolLevelID, + monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + tankVaporGenerated, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +select coeffs.altitude, ihf.hourDayID, ihf.initialHourDayID, coeffs.ethanolLevelID, + ihf.monthID, ihf.sourceTypeID, avggas.fuelTypeID, + stmycoeffs.modelYearID, stmycoeffs.polProcessID, + case when t1.coldSoakTankTemperature >= t2.coldSoakTankTemperature then 0.0 + else + (stmycoeffs.tankSize*(1-stmycoeffs.tankFillFraction))*(tvgTermA*exp(tvgTermB*RVP)*(exp(tvgTermC*t2.coldSoakTankTemperature)-exp(tvgTermC*t1.coldSoakTankTemperature))) + end as tankVaporGenerated, + stmycoeffs.backPurgeFactor, stmycoeffs.averageCanisterCapacity, stmycoeffs.leakFraction, stmycoeffs.leakFractionIM +from TankVaporGenCoeffs coeffs, ColdSoakInitialHourFraction ihf +inner join HourDay hd on (hd.hourDayID = ihf.hourDayID) +inner join HourDay ihd on (ihd.hourDayID = ihf.initialHourDayID) +inner join PeakHourOfColdSoak ph on (ihf.monthID = ph.monthID) +inner join ColdSoakTankTemperature t2 on (ihf.monthID = t2.monthID and hd.hourID = t2.hourID) +inner join ColdSoakTankTemperature t1 on (ihf.monthID = t1.monthID and ihd.hourID = t1.hourID) +inner join MonthOfAnyYear m on (ihf.monthID = m.monthID) +inner join AverageTankGasoline avggas on (m.monthGroupID = avggas.monthGroupID) +inner join stmyTVVCoeffs stmycoeffs on ( + stmycoeffs.sourceTypeID = ihf.sourceTypeID + and stmycoeffs.fuelTypeID = avggas.fuelTypeID +) +where (ihf.hourDayID <> ihf.initialHourDayID or (hd.hourID=1 and ihd.hourID=1 and hd.dayID=ihd.dayID)) + and hd.hourID <= ph.peakHourID + and ihf.coldSoakInitialHourFraction > 0; + +analyze table TankVaporGeneratedHighAndLow; + +drop table if exists TankVaporGenerated; + +create table TankVaporGenerated ( + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + ethanolLevelID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + tankVaporGenerated float null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + primary key (hourDayID, initialHourDayID, ethanolLevelID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +-- @algorithm Interpolate tankVaporGenerated based upon the county's barometric pressure. +-- Don't allow negative values. +-- Low altitude is based upon Wayne County, Michigan (26163) with a barometric pressure of 29.069. +-- High altitude is based upon Denver County, Colorado (8031) with a barometric pressure of 24.087. +-- tankVaporGenerated = greatest(((barometricPressure - 29.069) / (24.087 - 29.069)) * (high.tankVaporGenerated - low.tankVaporGenerated) + low.tankVaporGenerated,0). +insert into TankVaporGenerated (hourDayID, initialHourDayID, ethanolLevelID, + monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + tankVaporGenerated, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +select low.hourDayID, low.initialHourDayID, low.ethanolLevelID, + low.monthID, low.sourceTypeID, low.fuelTypeID, + low.modelYearID, low.polProcessID, + greatest(((c.barometricPressure - 29.069) / (24.087 - 29.069)) * (high.tankVaporGenerated - low.tankVaporGenerated) + low.tankVaporGenerated,0) as tankVaporGenerated, + low.backPurgeFactor, low.averageCanisterCapacity, low.leakFraction, low.leakFractionIM +from County c, +TankVaporGeneratedHighAndLow low +inner join TankVaporGeneratedHighAndLow high using (hourDayID, initialHourDayID, ethanolLevelID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +where low.altitudeFlag='L' +and high.altitudeFlag='H'; + + +analyze table TankVaporGenerated; + +-- +-- TVV-4: Calculate Ethanol-weighted TVG +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-4'; +drop table if exists EthanolWeightedTVG; + +create table EthanolWeightedTVGTemp ( + hourDayID smallint(6) not null, + hourID smallint(6) not null, + dayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + ethanolWeightedTVG float null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + primary key (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID), + key (hourID, dayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +-- @algorithm Calculated the ethanol weighted TVG using tankVaporGenerated for E10 fuel (t10) and that of E0 fuel (t0). +-- ethanolWeightedTVG=(t10.tankVaporGenerated*(least(10.0,ETOHVolume)/10.0)+t0.tankVaporGenerated*(1.0-least(10.0,ETOHVolume)/10.0)). +insert into EthanolWeightedTVGTemp (hourDayID, hourID, dayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + ethanolWeightedTVG, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +select t0.hourDayID, floor(t0.hourDayID/10) as hourID, mod(t0.hourDayID,10) as dayID, + t0.initialHourDayID, t0.monthID, t0.sourceTypeiD, t0.fuelTypeID, + t0.modelYearID, t0.polProcessID, + (t10.tankVaporGenerated*(least(10.0,ETOHVolume)/10.0)+t0.tankVaporGenerated*(1.0-least(10.0,ETOHVolume)/10.0)) as ethanolWeightedTVG, + t0.backPurgeFactor, t0.averageCanisterCapacity, t0.leakFraction, t0.leakFractionIM +from TankVaporGenerated t0 +inner join TankVaporGenerated t10 on (t0.hourDayID=t10.hourDayID and t0.initialHourDayID=t10.initialHourDayID + and t0.monthID=t10.monthID and t0.sourceTypeID=t10.sourceTypeID + and t0.fuelTypeID=t10.fuelTypeID + and t0.modelYearID=t10.modelYearID + and t0.polProcessID=t10.polProcessID) +inner join MonthOfAnyYear m on (t10.monthID = m.monthID) +inner join AverageTankGasoline avggas on (m.monthGroupID = avggas.monthGroupID + and t10.fuelTypeID=avggas.fuelTypeID) +where t0.ethanolLevelID = 0 +and t10.ethanolLevelID = 10; + +analyze table EthanolWeightedTVGTemp; + +create table EthanolWeightedTVG ( + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + ethanolWeightedTVG float null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + primary key (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +-- @algorithm Until now, ethanolWeightedTVG has been a cummulative total. +-- Convert it to an hourly increment by subtracting the total of the previous hour. +-- ethanolWeightedTVG[hourID]=ethanolWeightedTVG[hourID]-ethanolWeightedTVG[hourID-1]. +insert into EthanolWeightedTVG (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + ethanolWeightedTVG, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +select h.hourDayID, h.initialHourDayID, h.monthID, h.sourceTypeID, h.fuelTypeID, + h.modelYearID, h.polProcessID, + greatest(0,h.ethanolWeightedTVG - coalesce(hm1.ethanolWeightedTVG,0)) as ethanolWeightedTVG, + h.backPurgeFactor, h.averageCanisterCapacity, h.leakFraction, h.leakFractionIM +from EthanolWeightedTVGTemp h +left outer join EthanolWeightedTVGTemp hm1 on ( + h.hourID-1 = hm1.hourID + and h.dayID = hm1.dayID + and h.initialHourDayID = hm1.initialHourDayID + and h.monthID = hm1.monthID + and h.sourceTypeID = hm1.sourceTypeID + and h.fuelTypeID = hm1.fuelTypeID + and h.modelYearID = hm1.modelYearID + and h.polProcessID = hm1.polProcessID +); + +analyze table EthanolWeightedTVG; + +drop table if exists TVG; + +create table TVG ( + soakDayID smallint(6) not null, + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + modelYearID smallint not null, + polProcessID int NOT NULL DEFAULT '0', + TVGdaily float null, + Xn double null, + backPurgeFactor double DEFAULT NULL, + averageCanisterCapacity double DEFAULT NULL, + leakFraction double DEFAULT NULL, + leakFractionIM double DEFAULT NULL, + tvgSum1H double default null, + tvgSumH24 double default null, + primary key (sourceTypeID, modelYearID, fuelTypeID, polProcessID, soakDayID, hourDayID, initialHourDayID, monthID) +); + +drop table if exists tvgSumIH; +drop table if exists tvgSumI24; +drop table if exists tvgSum1H; +drop table if exists tvgSumH24; + +-- Sum of TVG hourly from initial hour I to hour H +create table tvgSumIH ( + hourDayID smallint(6) not null default '0', + initialHourDayID smallint(6) not null default '0', + monthID smallint(6) not null default '0', + sourceTypeID smallint(6) not null default '0', + fuelTypeID smallint(6) not null default '0', + modelYearID smallint(6) not null default '0', + polProcessID int not null default '0', + tvgSum double, + primary key (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID) +); + +-- Sum of TVG hourly from initial hour I to the last hour of the day +create table tvgSumI24 like tvgSumIH; + +-- Sum of TVG hourly from the first hour of the day to hour H +create table tvgSum1H like tvgSumIH; + +-- Sum of TVG hourly from after hour H to the last hour of the day +create table tvgSumH24 like tvgSumIH; + +-- @algorithm tvgSumIH = Sum of TVG hourly from initial hour I to hour H +insert into tvgSumIH (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, tvgSum) +select e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID, + sum(e2.ethanolWeightedTVG) as tvgSum +from EthanolWeightedTVG as e +inner join hourDay as hd on (hd.hourDayID = e.hourDayID) +inner join hourDay as ihd on (ihd.hourDayID = e.initialHourDayID) +inner join hourDay as ahd on (ahd.dayID = hd.dayID and ahd.hourID >= ihd.hourID and ahd.hourID <= hd.hourID) +inner join EthanolWeightedTVG e2 on (e2.hourDayID = ahd.hourDayID and e2.initialHourDayID = e.initialHourDayID +and e2.monthID = e.monthID and e2.sourceTypeID = e.sourceTypeID and e2.fuelTypeID = e.fuelTypeID and e2.modelYearID = e.modelYearID and e2.polProcessID = e.polProcessID) +where hd.hourID >= ihd.hourID +group by e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID; + +insert into tvgSumIH (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, tvgSum) +select e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID, + 0 as tvgSum +from EthanolWeightedTVG as e +inner join hourDay as hd on (hd.hourDayID = e.hourDayID) +inner join hourDay as ihd on (ihd.hourDayID = e.initialHourDayID) +where hd.hourID < ihd.hourID +group by e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID; + +-- @algorithm tvgSumI24 = Sum of TVG hourly from initial hour I to the last hour of the day +insert into tvgSumI24 (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, tvgSum) +select e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID, + sum(e2.ethanolWeightedTVG) as tvgSum +from EthanolWeightedTVG as e +inner join hourDay as hd on (hd.hourDayID = e.hourDayID) +inner join hourDay as ihd on (ihd.hourDayID = e.initialHourDayID) +inner join hourDay as ahd on (ahd.dayID = hd.dayID and ahd.hourID >= ihd.hourID and ahd.hourID <= 24) +inner join EthanolWeightedTVG e2 on (e2.hourDayID = ahd.hourDayID and e2.initialHourDayID = e.initialHourDayID +and e2.monthID = e.monthID and e2.sourceTypeID = e.sourceTypeID and e2.fuelTypeID = e.fuelTypeID and e2.modelYearID = e.modelYearID and e2.polProcessID = e.polProcessID) +group by e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID; + +-- @algorithm tvgSum1H = Sum of TVG hourly from the first hour of the day to hour H +insert into tvgSum1H (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, tvgSum) +select e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID, + sum(e2.ethanolWeightedTVG) as tvgSum +from EthanolWeightedTVG as e +inner join hourDay as hd on (hd.hourDayID = e.hourDayID) +inner join hourDay as ihd on (ihd.hourDayID = e.initialHourDayID) +inner join hourDay as ahd on (ahd.dayID = hd.dayID and ahd.hourID >= 1 and ahd.hourID <= hd.hourID) +inner join hourDay as hd1 on (hd1.dayID = hd.dayID and hd1.hourID = 1) +inner join EthanolWeightedTVG e2 on (e2.hourDayID = ahd.hourDayID and e2.initialHourDayID = hd1.hourDayID +and e2.monthID = e.monthID and e2.sourceTypeID = e.sourceTypeID and e2.fuelTypeID = e.fuelTypeID and e2.modelYearID = e.modelYearID and e2.polProcessID = e.polProcessID) +group by e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID; + +-- @algorithm tvgSumH24 = Sum of TVG hourly from after hour H to the last hour of the day +insert into tvgSumH24 (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, modelYearID, polProcessID, tvgSum) +select e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID, + sum(e2.ethanolWeightedTVG) as tvgSum +from EthanolWeightedTVG as e +inner join hourDay as hd on (hd.hourDayID = e.hourDayID) +inner join hourDay as ihd on (ihd.hourDayID = e.initialHourDayID) +inner join hourDay as ahd on (ahd.dayID = hd.dayID and ahd.hourID > hd.hourID and ahd.hourID <= 24) +inner join EthanolWeightedTVG e2 on (e2.hourDayID = ahd.hourDayID and e2.initialHourDayID = e.initialHourDayID +and e2.monthID = e.monthID and e2.sourceTypeID = e.sourceTypeID and e2.fuelTypeID = e.fuelTypeID and e2.modelYearID = e.modelYearID and e2.polProcessID = e.polProcessID) +group by e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, e.modelYearID, e.polProcessID; + +-- Fill the first soaking day (soakDayID=1) +-- Soak Day 1, including X0 (TVGDaily) + +-- @algorithm TVGdaily[soakDayID=1] = tvgSumIH. +-- Xn[soakDayID=1] = tvgSumIH. +insert into TVG (soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + TVGdaily, Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tvgSum1H, tvgSumH24) +select 1 as soakDayID, e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, + e.modelYearID, e.polProcessID, + sih.tvgSum as TVGdaily, + sih.tvgSum as Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, + s1h.tvgSum as tvgSum1H, + coalesce(sh24.tvgSum,0) as tvgSumH24 +from EthanolWeightedTVG e +inner join tvgSum1H s1h on (s1h.hourDayID = e.hourDayID and s1h.initialHourDayID = e.initialHourDayID and s1h.monthID = e.monthID and s1h.sourceTypeID = e.sourceTypeID and s1h.fuelTypeID = e.fuelTypeID and s1h.modelYearID = e.modelYearID and s1h.polProcessID = e.polProcessID) +inner join tvgSumIH sih on (sih.hourDayID = e.hourDayID and sih.initialHourDayID = e.initialHourDayID and sih.monthID = e.monthID and sih.sourceTypeID = e.sourceTypeID and sih.fuelTypeID = e.fuelTypeID and sih.modelYearID = e.modelYearID and sih.polProcessID = e.polProcessID) +left outer join tvgSumH24 sh24 on (sh24.hourDayID = e.hourDayID and sh24.initialHourDayID = e.initialHourDayID and sh24.monthID = e.monthID and sh24.sourceTypeID = e.sourceTypeID and sh24.fuelTypeID = e.fuelTypeID and sh24.modelYearID = e.modelYearID and sh24.polProcessID = e.polProcessID); + +-- inner join tvgSumH24 sh24 on (sh24.hourDayID = e.hourDayID and sh24.initialHourDayID = e.initialHourDayID and sh24.monthID = e.monthID and sh24.sourceTypeID = e.sourceTypeID and sh24.fuelTypeID = e.fuelTypeID and sh24.modelYearID = e.modelYearID and sh24.polProcessID = e.polProcessID) + +-- Soak Day 2 + +-- @algorithm TVGdaily[soakDayID=2] = TVGdaily[soakDayID=1]. +-- Xn[soakDayID=2] = ((1-backPurgeFactor)*least(tvgSumI24,averageCanisterCapacity))+tvgSum1H. +insert into TVG (soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + TVGdaily, Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tvgSum1H, tvgSumH24) +select 2 as soakDayID, e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, + e.modelYearID, e.polProcessID, + TVGdaily as TVGdaily, + (((1-backPurgeFactor)*least(si24.tvgSum,averageCanisterCapacity))+tvgSum1H) as Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tvgSum1H, tvgSumH24 +from TVG e +inner join tvgSumI24 si24 on (si24.hourDayID = e.hourDayID and si24.initialHourDayID = e.initialHourDayID and si24.monthID = e.monthID and si24.sourceTypeID = e.sourceTypeID and si24.fuelTypeID = e.fuelTypeID and si24.modelYearID = e.modelYearID and si24.polProcessID = e.polProcessID) +where soakDayID=2-1; + +-- Fill all subsequent soak days +loop ##loop.soakDayID##; +select distinct soakDayID from sampleVehicleSoaking where soakDayID > 2 order by soakDayID; + +-- insert into TVG (soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, +-- modelYearID, polProcessID, +-- TVGdaily, Xn, +-- backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +-- select ##loop.soakDayID## as soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, +-- modelYearID, polProcessID, +-- TVGdaily as TVGdaily, +-- Xn, +-- backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM +-- from TVG +-- where soakDayID=##loop.soakDayID##-1 + +-- insert into TVG (soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, +-- modelYearID, polProcessID, +-- TVGdaily, Xn, +-- backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM) +-- select ##loop.soakDayID## as soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, +-- modelYearID, polProcessID, +-- TVGdaily as TVGdaily, +-- (((1-backPurgeFactor)*least(Xn,averageCanisterCapacity))+TVGdaily) as Xn, +-- backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM +-- from TVG +-- where soakDayID=##loop.soakDayID##-1 + +-- @algorithm TVGdaily[soakDayID>2] = TVGdaily[soakDayID-1]. +-- Xn[soakDayID>2] = ((1-backPurgeFactor)*least(Xn[soakDayID-1] + tvgSumH24,averageCanisterCapacity))+tvgSum1H. +insert into TVG (soakDayID, hourDayID, initialHourDayID, monthID, sourceTypeID, fuelTypeID, + modelYearID, polProcessID, + TVGdaily, Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tvgSum1H, tvgSumH24) +select ##loop.soakDayID## as soakDayID, e.hourDayID, e.initialHourDayID, e.monthID, e.sourceTypeID, e.fuelTypeID, + e.modelYearID, e.polProcessID, + TVGdaily as TVGdaily, + (((1-backPurgeFactor)*least(Xn + tvgSumH24,averageCanisterCapacity))+tvgSum1H) as Xn, + backPurgeFactor, averageCanisterCapacity, leakFraction, leakFractionIM, tvgSum1H, tvgSumH24 +from TVG e +where soakDayID=##loop.soakDayID##-1; + +end loop ##loop.soakDayID##; + +-- +-- TVV-5: Calculate Cummulative Tank Vapor Vented (TVV) +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-5'; +drop table if exists CummulativeTankVaporVented; + +create table CummulativeTankVaporVented ( + soakDayID smallint(6) not null, + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + tankVaporVented float null, + tankVaporVentedIM float null, + hourDayID smallint(6) not null, + priorHourID smallint(6) not null, + primary key (soakDayID, regClassID, ageID, polProcessID, dayID, hourID, initialHourDayID, monthID, sourceTypeID, fuelTypeID), + index (priorHourID) +); + +-- @algorithm Include leaking using database-driven TVV and Leak equations. +-- tankVaporVented = (1-leakFraction)*(TVV equation) + leakFraction*(Leak equation). +-- tankVaporVentedIM = (1-leakFractionIM)*(TVV equation) + leakFractionIM*(Leak equation). +insert into CummulativeTankVaporVented (soakDayID, regClassID, ageID, polProcessID, dayID, hourID, initialHourDayID, + monthID, sourceTypeID, fuelTypeID, tankVaporVented, tankVaporVentedIM, + hourDayID, priorHourID) +select t.soakDayID, coeffs.regClassID, acat.ageID, coeffs.polProcessID, hd.dayID, hd.hourID, t.initialHourDayID, + t.monthID, t.sourceTypeID, t.fuelTypeID, + regClassFractionOfSourceTypeModelYearFuel*greatest(0.0, + (1.0-coeffs.leakFraction)*(##tvvEquations##) + + (coeffs.leakFraction)*(##leakEquations##) + ) as tankVaporVented, + regClassFractionOfSourceTypeModelYearFuel*greatest(0.0, + (1.0-coalesce(coeffs.leakFractionIM,coeffs.leakFraction))*(##tvvEquations##) + + coalesce(coeffs.leakFractionIM,coeffs.leakFraction)*(##leakEquations##) + ) as tankVaporVentedIM, + t.hourDayID, + mod(hd.hourID-1-1+24,24)+1 +from stmyTVVEquations coeffs +inner join TVG t on ( + t.sourceTypeID=coeffs.sourceTypeID + and t.modelYearID=coeffs.modelYearID + and t.fuelTypeID=coeffs.fuelTypeID + and t.polProcessID=coeffs.polProcessID) +inner join AgeCategory acat on (acat.ageID = ##context.year## - coeffs.modelYearID) +inner join HourDay hd on (hd.hourDayID = t.hourDayID); + +analyze table CummulativeTankVaporVented; + +-- +-- TVV-6: Calculate Unweighted Hourly TVV Emission by Regulatory Class and Vehicle Age +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-6'; +drop table if exists UnweightedHourlyTVV; + +create table UnweightedHourlyTVV ( + zoneID int(11) not null default ##context.iterLocation.zoneRecordID##, + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + soakDayID smallint(6) not null, + unweightedHourlyTVV float null, + unweightedHourlyTVVIM float null, + index (sourceTypeID, zoneID, monthID, hourDayID, initialHourDayID, fuelTypeID, soakDayID), + index (soakDayID, sourceTypeID, zoneID, monthID, hourDayID, initialHourDayID, fuelTypeID) +); + +-- @algorithm unweightedHourlyTVV = tankVaporVented[hourID] - tankVaporVented[hourID-1]. +-- unweightedHourlyTVVIM = tankVaporVentedIM[hourID] - tankVaporVentedIM[hourID-1]. +-- @condition only when coldSoakTankTemperature[hourID] > coldSoakTankTemperature[hourID-1], 0 otherwise. +insert into UnweightedHourlyTVV (soakDayID, regClassID, ageID, polProcessID, hourDayID, initialHourDayID, + monthID, sourceTypeID, fuelTypeID, unweightedHourlyTVV, unweightedHourlyTVVIM) +select ctv1.soakDayID, ctv1.regClassID, ctv1.ageID, ctv1.polProcessID, ctv1.hourDayID, ctv1.initialHourDayID, + ctv1.monthID, ctv1.sourceTypeID, ctv1.fuelTypeID, + case when (ctt1.coldSoakTankTemperature <= ctt2.coldSoakTankTemperature) then + 0.0 + else greatest(0,(ctv1.tankVaporVented-coalesce(ctv2.tankVaporVented,0.0))) + end + as unweightedHourlyTVV, + case when (ctt1.coldSoakTankTemperature <= ctt2.coldSoakTankTemperature) then + 0.0 + else greatest(0,(ctv1.tankVaporVentedIM-coalesce(ctv2.tankVaporVentedIM,0.0))) + end + as unweightedHourlyTVVIM +from CummulativeTankVaporVented ctv1 +left join CummulativeTankVaporVented ctv2 on ( + ctv1.soakDayID = ctv2.soakDayID + and ctv1.regClassID = ctv2.regClassID and ctv1.ageID = ctv2.ageID + and ctv1.polProcessID = ctv2.polProcessID and ctv1.initialHourDayID = ctv2.initialHourDayID + and ctv1.monthID = ctv2.monthID and ctv1.sourceTypeID = ctv2.sourceTypeID + and ctv1.fuelTypeID = ctv2.fuelTypeID + and ctv1.priorHourID = ctv2.hourID + and ctv1.dayID = ctv2.dayID) +left join coldsoaktanktemperature ctt1 on ( + ctt1.hourID = ctv1.HourID and + ctt1.monthID = ctv1.monthID) +left join coldsoaktanktemperature ctt2 on ( + ctt2.hourID = ctv1.priorHourID and + ctt2.monthID = ctv1.monthID); + +analyze table UnweightedHourlyTVV; + +-- +-- TVV-7: Calculate Weighted Hourly TVV Across Initial/Current pair +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-7'; + +-- @algorithm Add coldSoakInitialHourFraction entries for soaking days beyond the first day +insert into coldSoakInitialHourFraction (soakDayID, sourceTypeID, zoneID, monthID, + hourDayID, + initialHourDayID, + coldSoakInitialHourFraction) +select s.soakDayID, s.sourceTypeID, ##context.iterLocation.zoneRecordID## as zoneID, ##context.monthID## as monthID, + hd.hourDayID, + ihd.hourDayID as initialHourDayID, + soakFraction as coldSoakInitialHourFraction +from sampleVehicleSoaking s +inner join HourDay hd on (hd.hourID=s.hourID and hd.dayID=s.dayID) +inner join HourDay ihd on (ihd.hourID=1 and ihd.dayID=s.dayID) +where s.soakDayID > 1; + +drop table if exists HourlyTVV; + +create table HourlyTVV ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + hourlyTVV float null, + hourlyTVVIM float null, + primary key (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID) +); + +-- Handle hourDayIDs <= the peak hour +drop table if exists HourlyTVVTemp; + +create table HourlyTVVTemp ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + soakDayID smallint not null, + hourlyTVV float null, + hourlyTVVIM float null, + index (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, soakDayID) +); + +-- @algorithm hourlyTVV = unweightedHourlyTVV * coldSoakInitialHourFraction. +-- hourlyTVVIM = unweightedHourlyTVVIM * coldSoakInitialHourFraction. +insert into HourlyTVVTemp (soakDayID, regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, + hourlyTVV, hourlyTVVIM) +select uhtvv.soakDayID, uhtvv.regClassID, uhtvv.ageID, uhtvv.polProcessID, uhtvv.hourDayID, uhtvv.monthID, uhtvv.sourceTypeID, uhtvv.fuelTypeID, + (unweightedHourlyTVV*coldSoakInitialHourFraction) as hourlyTVV, + (unweightedHourlyTVVIM*coldSoakInitialHourFraction) as hourlyTVVIM +from UnweightedHourlyTVV uhtvv +inner join ColdSoakInitialHourFraction ihf on ( + uhtvv.soakDayID = ihf.soakDayID + and uhtvv.sourceTypeID = ihf.sourceTypeID + and uhtvv.zoneID = ihf.zoneID and uhtvv.monthID = ihf.monthID + and uhtvv.hourDayID = ihf.hourDayID and uhtvv.initialHourDayID = ihf.initialHourDayID); + +-- @algorithm hourlyTVV = sum(hourlyTVV). +-- hourlyTVVIM = sum(hourlyTVVIM). +insert into HourlyTVV (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, + sum(hourlyTVV) as hourlyTVV, + sum(hourlyTVVIM) as hourlyTVVIM +from HourlyTVVTemp +group by regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID +order by null; + +-- Handle hourDayIDs > the peak hour +drop table if exists CopyOfHourlyTVV; +create table CopyOfHourlyTVV ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + hourlyTVV float null, + hourlyTVVIM float null, + primary key (regClassID, ageID, polProcessID, dayID, hourID, monthID, sourceTypeID, fuelTypeID) +); +insert into CopyOfHourlyTVV (regClassID, ageID, polProcessID, dayID, hourID, + monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select regClassID, ageID, polProcessID, dayID, hourID, + monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM +from HourlyTVV +inner join HourDay on (HourDay.hourDayID=HourlyTVV.hourDayID); + +-- @algorithm Reduce TVV emissions for hours past the hour with the peak temperature. +-- hourlyTVV(with and without I/M) = hourlyTVV(with and without I/M) * +-- (0 when >= 5 hours past the peak, 0.0005 when >= 4 hours, 0.0040 when >= 3 hours, 0.0100 when >= 2 hours, +-- 0.0200 when >= 1 hour, 1.0 otherwise). +insert into HourlyTVV (regClassID, ageID, polProcessID, hourDayID, monthID, + sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select htvv.regClassID, htvv.ageID, htvv.polProcessID, hd.hourDayID, htvv.monthID, htvv.sourceTypeID, htvv.fuelTypeID, + hourlyTVV * case + when (hd.hourID-ph.peakHourID) >= 4 then 0.0005 + when (hd.hourID-ph.peakHourID) >= 3 then 0.0040 + when (hd.hourID-ph.peakHourID) >= 2 then 0.0100 + when (hd.hourID-ph.peakHourID) >= 1 then 0.0200 + end as hourlyTVV, + hourlyTVVIM * case + when (hd.hourID-ph.peakHourID) >= 4 then 0.0005 + when (hd.hourID-ph.peakHourID) >= 3 then 0.0040 + when (hd.hourID-ph.peakHourID) >= 2 then 0.0100 + when (hd.hourID-ph.peakHourID) >= 1 then 0.0200 + end as hourlyTVVIM +from CopyOfHourlyTVV htvv +inner join PeakHourOfColdSoak ph on (htvv.monthID = ph.monthID and htvv.hourID = ph.peakHourID) +inner join HourDay hd on ( + hd.hourID > ph.peakHourID + and hd.hourID < ph.peakHourID + 5 + and hd.dayID = htvv.dayID +); + +analyze table HourlyTVV; + +-- TVV-8: Calculate I/M-Adjusted MeanBaseRates +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-8'; +drop table if exists WeightedMeanBaseRate; + +create table WeightedMeanBaseRate ( + polProcessID int not null, + sourceTypeID smallint(6) not null, + regClassID smallint(6) not null, + fuelTypeID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + modelYearID smallint(6) not null, + opModeID smallint(6) not null, + weightedMeanBaseRate float not null, + weightedMeanBaseRateIM float not null, + tempAdjustment float null, + rvpAdjustment float null, + unadjustedWeightedMeanBaseRate float null, + primary key (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, modelYearID, opModeID) +); + +-- For cold soak mode (opModeID=151) +-- Section WithRegClassID + +-- @algorithm THC rate[opModeID=151 cold soak]=sum(sourceBinActivityFraction * hourlyTVV). +-- THC I/M rate[opModeID=151 cold soak]=sum(sourceBinActivityFraction * hourlyTVVIM). +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select htvv.polProcessID, htvv.sourceTypeID, sb.regClassID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID, 151 as opModeID, + sum(sourceBinActivityFraction*hourlyTVV) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*hourlyTVVIM) as weightedMeanBaseRateIM +from HourlyTVV htvv +inner join SourceTypeModelYear stmy on (stmy.modelYearID=##context.year##-htvv.ageID + and stmy.sourceTypeID=htvv.sourceTypeID) +inner join SourceBinDistribution sbd on (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID + and sbd.polProcessID=htvv.polProcessID) +inner join SourceBin sb on (sb.sourceBinID=sbd.sourceBinID and sb.fuelTypeID=htvv.fuelTypeID + and sb.regClassID=htvv.regClassID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +group by htvv.polProcessID, htvv.sourceTypeID, sb.regClassID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID +order by null; +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select htvv.polProcessID, htvv.sourceTypeID, 0 as regClassID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID, 151 as opModeID, + sum(sourceBinActivityFraction*hourlyTVV) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*hourlyTVVIM) as weightedMeanBaseRateIM +from HourlyTVV htvv +inner join SourceTypeModelYear stmy on (stmy.modelYearID=##context.year##-htvv.ageID + and stmy.sourceTypeID=htvv.sourceTypeID) +inner join SourceBinDistribution sbd on (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID + and sbd.polProcessID=htvv.polProcessID) +inner join SourceBin sb on (sb.sourceBinID=sbd.sourceBinID and sb.fuelTypeID=htvv.fuelTypeID + and sb.regClassID=htvv.regClassID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +group by htvv.polProcessID, htvv.sourceTypeID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID +order by null; +-- End Section NoRegClassID + +-- For operating and hot soak modes (opModeIDs 300 and 150) +alter table averageTankGasoline + add column adjustTerm3 double not null default 0, + add column adjustTerm2 double not null default 0, + add column adjustTerm1 double not null default 0, + add column adjustConstant double not null default 0; + +drop table if exists evapRVPTemperatureAdjustmentSummary; + +-- @algorithm Find bounds on RVP-based operating and hot soak adjustments (opModeIDs 300 and 150). +create table evapRVPTemperatureAdjustmentSummary +select processID, fuelTypeID, min(RVP) as minRVP, max(RVP) as maxRVP +from evapRVPTemperatureAdjustment +group by processID, fuelTypeID; + +alter table evapRVPTemperatureAdjustmentSummary add key (processID, fuelTypeID); + +insert ignore into evapRVPTemperatureAdjustment (processID, fuelTypeID, RVP, adjustTerm3, adjustTerm2, adjustTerm1, adjustConstant) +select adj.processID, adj.fuelTypeID, -1 as RVP, adj.adjustTerm3, adj.adjustTerm2, adj.adjustTerm1, adj.adjustConstant +from evapRVPTemperatureAdjustment adj +inner join evapRVPTemperatureAdjustmentSummary sadj on ( + sadj.processID=adj.processID + and sadj.fuelTypeID=adj.fuelTypeID + and sadj.minRVP=adj.RVP); + +insert ignore into evapRVPTemperatureAdjustment (processID, fuelTypeID, RVP, adjustTerm3, adjustTerm2, adjustTerm1, adjustConstant) +select adj.processID, adj.fuelTypeID, 1000 as RVP, adj.adjustTerm3, adj.adjustTerm2, adj.adjustTerm1, adj.adjustConstant +from evapRVPTemperatureAdjustment adj +inner join evapRVPTemperatureAdjustmentSummary sadj on ( + sadj.processID=adj.processID + and sadj.fuelTypeID=adj.fuelTypeID + and sadj.maxRVP=adj.RVP); + +drop table if exists tempATG; +create table tempATG like averageTankGasoline; +insert into tempATG select * from averageTankGasoline; +truncate averageTankGasoline; + +-- @algorithm Linearly interpolate RVP adjustment terms for each entry in averageTankGasoline, where lowAdj is the evapRVPTemperatureAdjustment +-- record such that lowAdj.RVP <= averageTankGasoline.RVP and highAdj is similar with highAdj.RVP > averageTankGasoline.RVP. +-- adjustTerm3 = lowAdj.adjustTerm3 + (highAdj.adjustTerm3 - lowAdj.adjustTerm3)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)). +-- adjustTerm2 = lowAdj.adjustTerm2 + (highAdj.adjustTerm2 - lowAdj.adjustTerm2)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP). +-- adjustTerm1 = lowAdj.adjustTerm1 + (highAdj.adjustTerm1 - lowAdj.adjustTerm1)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP). +-- adjustConstant = lowAdj.adjustConstant + (highAdj.adjustConstant - lowAdj.adjustConstant)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP). +insert ignore into averageTankGasoline (zoneID, fuelYearID, monthGroupID, ETOHVolume, RVP, fuelTypeID, isUserInput, + adjustTerm3, adjustTerm2, adjustTerm1, adjustConstant) +select atg.zoneID, atg.fuelYearID, atg.monthGroupID, atg.ETOHVolume, atg.RVP, atg.fuelTypeID, atg.isUserInput, + (lowAdj.adjustTerm3 + (highAdj.adjustTerm3 - lowAdj.adjustTerm3)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)) as adjustTerm3, + (lowAdj.adjustTerm2 + (highAdj.adjustTerm2 - lowAdj.adjustTerm2)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)) as adjustTerm2, + (lowAdj.adjustTerm1 + (highAdj.adjustTerm1 - lowAdj.adjustTerm1)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)) as adjustTerm1, + (lowAdj.adjustConstant + (highAdj.adjustConstant - lowAdj.adjustConstant)/(highAdj.RVP - lowAdj.RVP) * (atg.RVP - lowAdj.RVP)) as adjustConstant +from tempATG atg +inner join evapRVPTemperatureAdjustment lowAdj on (lowAdj.RVP <= atg.RVP and lowAdj.processID=12 and lowAdj.fuelTypeID=atg.fuelTypeID) +inner join evapRVPTemperatureAdjustment highAdj on (highAdj.RVP > atg.RVP and highAdj.processID=12 and highAdj.fuelTypeID=atg.fuelTypeID) +where lowAdj.RVP = (select max(RVP) from evapRVPTemperatureAdjustment lowAdj2 where lowAdj2.RVP <= atg.RVP and lowAdj2.processID=12 and lowAdj2.fuelTypeID=atg.fuelTypeID) +and highAdj.RVP = (select min(RVP) from evapRVPTemperatureAdjustment highAdj2 where highAdj2.RVP > atg.RVP and highAdj2.processID=12 and highAdj2.fuelTypeID=atg.fuelTypeID); + +-- Section WithRegClassID + +-- @algorithm Adjust hot soak (opModeID 150) and running (opModeID 300) by temperature and RVP effects. +-- tempAdjustment[opModeID=300]= +-- (tempAdjustTerm3*power(greatest(temperature,40.0),3) +-- + tempAdjustTerm2*power(greatest(temperature,40.0),2) +-- + tempAdjustTerm1*greatest(temperature,40.0) +-- + tempAdjustConstant). +-- tempAdjustment[opModeID=150]=1. +-- rvpAdjustment[opModeID=300]=1 for temperature < 40F, otherwise for temperature >= 40F: +-- (adjustTerm3*power(temperature,3) +-- + adjustTerm2*power(temperature,2) +-- + adjustTerm1*temperature +-- + adjustConstant). +-- rvpAdjustment[opModeID=150]=1. +-- weightedMeanBaseRate=sum(sourceBinActivityFraction*meanBaseRate)*rvpAdjustment*tempAdjustment. +-- weightedMeanBaseRateIM=sum(sourceBinActivityFraction*meanBaseRateIM)*rvpAdjustment*tempAdjustment. +-- @condition Only Gasoline (1) and Ethanol (5) fuel types, all others have no adjustments in this step. +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM, + tempAdjustment, rvpAdjustment, unadjustedWeightedMeanBaseRate) +select er.polProcessID, stmy.sourceTypeID, sb.regClassID, sb.fuelTypeID, zmh.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID, + sum(sourceBinActivityFraction*meanBaseRate) + * case when (er.opModeID=300 and sb.fuelTypeID in(1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + * case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end + as weightedMeanBaseRate, + sum(sourceBinActivityFraction*meanBaseRateIM) + * case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + * case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end + as weightedMeanBaseRateIM, + case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + else 1.0 + end as tempAdjustment, + case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end as rvpAdjustment, + sum(sourceBinActivityFraction*meanBaseRate) as unadjustedWeightedMeanBaseRate +from EmissionRateByAge er +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceBin sb on (sb.sourceBinID=er.sourceBinID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join SourceBinDistribution sbd on (sbd.sourceBinID=sb.sourceBinID + and sbd.polProcessID=er.polProcessID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID + and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +inner join RunSpecSourceType rsst on (rsst.sourceTypeID=stmy.sourceTypeID) +inner join RunSpecHourDay rshd +inner join HourDay hd on (hd.hourDayID = rshd.hourDayID) +inner join ZoneMonthHour zmh on (zmh.hourID = hd.hourID) +inner join averageTankGasoline atg on (atg.fuelTypeID = FuelType.fuelTypeID) +inner join evapTemperatureAdjustment eta +where er.polProcessID in (##pollutantProcessIDs##) +and opModeID in (150, 300) +group by er.polProcessID, stmy.sourceTypeID, sb.regClassID, sb.fuelTypeID, zmh.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID +order by null; +-- End Section WithRegClassID + +-- Section NoRegClassID +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, regClassID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM, + tempAdjustment, rvpAdjustment, unadjustedWeightedMeanBaseRate) +select er.polProcessID, stmy.sourceTypeID, 0 as regClassID, sb.fuelTypeID, zmh.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID, + sum(sourceBinActivityFraction*meanBaseRate) + * case when (er.opModeID=300 and sb.fuelTypeID in(1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + * case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end + as weightedMeanBaseRate, + sum(sourceBinActivityFraction*meanBaseRateIM) + * case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + * case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end + as weightedMeanBaseRateIM, + case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + (eta.tempAdjustTerm3*power(greatest(zmh.temperature,40.0),3) + + eta.tempAdjustTerm2*power(greatest(zmh.temperature,40.0),2) + + eta.tempAdjustTerm1*greatest(zmh.temperature,40.0) + + eta.tempAdjustConstant) + else 1.0 + end as tempAdjustment, + case when (er.opModeID=300 and sb.fuelTypeID in (1,5)) then + case when zmh.temperature >= 40.0 then + (atg.adjustTerm3*power(zmh.temperature,3) + + atg.adjustTerm2*power(zmh.temperature,2) + + atg.adjustTerm1*zmh.temperature + + atg.adjustConstant) + else 1.0 + end + else 1.0 + end as rvpAdjustment, + sum(sourceBinActivityFraction*meanBaseRate) as unadjustedWeightedMeanBaseRate +from EmissionRateByAge er +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceBin sb on (sb.sourceBinID=er.sourceBinID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join SourceBinDistribution sbd on (sbd.sourceBinID=sb.sourceBinID + and sbd.polProcessID=er.polProcessID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID + and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +inner join RunSpecSourceType rsst on (rsst.sourceTypeID=stmy.sourceTypeID) +inner join RunSpecHourDay rshd +inner join HourDay hd on (hd.hourDayID = rshd.hourDayID) +inner join ZoneMonthHour zmh on (zmh.hourID = hd.hourID) +inner join averageTankGasoline atg on (atg.fuelTypeID = FuelType.fuelTypeID) +inner join evapTemperatureAdjustment eta +where er.polProcessID in (##pollutantProcessIDs##) +and opModeID in (150, 300) +group by er.polProcessID, stmy.sourceTypeID, sb.fuelTypeID, zmh.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID +order by null; +-- End Section NoRegClassID + +analyze table WeightedMeanBaseRate; + +alter table MOVESWorkerOutput add emissionQuantIM float null; + +-- Section Debug +-- Keep debug information by operating mode +drop table if exists DebugTVVMOVESWorkerOutput; + +create table DebugTVVMOVESWorkerOutput like MOVESWorkerOutput; +alter table DebugTVVMOVESWorkerOutput add column opModeID smallint(6) null; + +insert into DebugTVVMOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID, SCC, emissionQuant, emissionQuantIM, opModeID) +select ##context.year## as yearID, w.monthID, hd.dayID, hd.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID## as linkID, + ppa.pollutantID, ppa.processID, w.sourceTypeID, w.regClassID, w.fuelTypeID, w.modelYearID, + ##context.iterLocation.roadTypeRecordID##, null as SCC, + (weightedMeanBaseRate*sourceHours*opModeFraction) as emissionQuant, + (weightedMeanBaseRateIM*sourceHours*opModeFraction) as emissionQuantIM, + omd.opModeID +from WeightedMeanBaseRate w +inner join SourceHours sh on (sh.hourDayID=w.hourDayID and sh.monthID=w.monthID + and sh.ageID=##context.year##-w.modelYearID + and sh.sourceTypeID=w.sourceTypeID) +inner join OpModeDistribution omd on (omd.sourceTypeID=sh.sourceTypeID + and omd.hourDayID=w.hourDayID + and omd.polProcessID=w.polProcessID and omd.opModeID=w.opModeID) +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=omd.polProcessID) +inner join HourDay hd on (hd.hourDayID=omd.hourDayID); +-- End Section Debug + +alter table WeightedMeanBaseRate add key speed1 (sourceTypeID, hourDayID, polProcessID, opModeID); +analyze table WeightedMeanBaseRate; + +alter table SourceHours add key speed1 (hourDayID, monthID, sourceTypeID, ageID); +analyze table SourceHours; + +-- +-- TVV-9: Calculate MOVESWorkerOutput by Source Type +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-9 without SCC'; + +-- @algorithm Combine cold soaking (opModeID=151), hot soaking (150), and running (300) evaporative emissions. +-- THC=weightedMeanBaseRate*sourceHours*opModeFraction. +-- THC I/M=weightedMeanBaseRateIM*sourceHours*opModeFraction. +insert into MOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, + zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID, SCC, emissionQuant, emissionQuantIM) +select ##context.year## as yearID, w.monthID, hd.dayID, hd.hourID, + ##context.iterLocation.stateRecordID## as stateID, + ##context.iterLocation.countyRecordID## as countyID, + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID## as linkID, + ppa.pollutantID, ppa.processID, w.sourceTypeID, w.regClassID, w.fuelTypeID, w.modelYearID, + ##context.iterLocation.roadTypeRecordID##, null as SCC, + (weightedMeanBaseRate*sourceHours*opModeFraction) as emissionQuant, + (weightedMeanBaseRateIM*sourceHours*opModeFraction) as emissionQuantIM +from WeightedMeanBaseRate w +inner join SourceHours sh on (sh.hourDayID=w.hourDayID and sh.monthID=w.monthID + and sh.ageID=##context.year##-w.modelYearID + and sh.sourceTypeID=w.sourceTypeID) +inner join OpModeDistribution omd on (omd.sourceTypeID=sh.sourceTypeID + and omd.hourDayID=w.hourDayID + and omd.polProcessID=w.polProcessID and omd.opModeID=w.opModeID) +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=omd.polProcessID) +inner join HourDay hd on (hd.hourDayID=omd.hourDayID); + +-- @algorithm Apply I/M programs to the aggregat combination of cold soak, hot soaking, and running evap. +-- THC=THC I/M*IMAdjustFract + THC*(1-IMAdjustFract). +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing +-- Section Cleanup +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Section Cleanup'; + +drop table if exists PeakHourOfColdSoak; +drop table if exists DebugTankVaporGenerated; +drop table if exists TankVaporGeneratedHighAndLow; +drop table if exists TankVaporGenerated; +drop table if exists EthanolWeightedTVG; +drop table if exists CummulativeTankVaporVented; +drop table if exists UnWeightedHourlyTVV; +drop table if exists HourlyTVV; +drop table if exists WeightedMeanBaseRate; +drop table if exists IMCoverageMergedUngrouped; +drop table if exists CopyOfHourlyTVV; +drop table if exists TVG; +drop table if exists evapRVPTemperatureAdjustmentSummary; +drop table if exists tempATG; +drop table if exists HourlyTVVTemp; + +drop table if exists tvgSumIH; +drop table if exists tvgSumI24; +drop table if exists tvgSum1H; +drop table if exists tvgSumH24; + +drop table if exists DebugTVVMOVESWorkerOutput; +-- End Section Cleanup diff --git a/database/NH3AuxiliaryPowerCalculator.sql b/database/NH3AuxiliaryPowerCalculator.sql new file mode 100644 index 0000000..2b7c6cb --- /dev/null +++ b/database/NH3AuxiliaryPowerCalculator.sql @@ -0,0 +1,454 @@ +-- Version 2013-09-15 +-- Author Wesley Faler +-- Purpose: Add calculation of ammonia (NH3) Pollutant Auxiliary Power Exhaust emissions to MOVES2010 + +-- Section Create Remote Tables for Extracted Data + +##create.RunSpecYear##; +TRUNCATE RunSpecYear; + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.hotellingActivityDistribution##; +TRUNCATE hotellingActivityDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.hotellingHours##; +TRUNCATE hotellingHours; + +##create.RunSpecSourceFuelType##; +TRUNCATE RunSpecSourceFuelType; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE + EmissionRateByAge.opModeID >= 201 and EmissionRateByAge.opModeID <= 299 + AND RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID + AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID + AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID + AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID + AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID + AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link +WHERE roadTypeID = 1 AND + zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour INNER JOIN RunSpecHour USING (hourID); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +cache select * into outfile '##hotellingActivityDistribution##' +from hotellingActivityDistribution +where (beginModelYearID <= ##context.year## - 30 and endModelYearID >= ##context.year## - 30) +or (beginModelYearID <= ##context.year## and endModelYearID >= ##context.year##) +or (beginModelYearID >= ##context.year## - 30 and endModelYearID <= ##context.year##); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##hotellingHours##' +FROM hotellingHours +WHERE yearID = ##context.year## + AND zoneID = ##context.iterLocation.zoneRecordID##; + +cache select * into outfile '##RunSpecSourceFuelType##' +from RunSpecSourceFuelType; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT RunSpecYear.* INTO OUTFILE '##RunSpecYear##' +FROM RunSpecYear; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Processing + +-- NH3EIC-1: SourceBin-Weighted Weight Emission Rates + +DROP TABLE IF EXISTS EmissionRateByAge2; + +CREATE TABLE IF NOT EXISTS EmissionRateByAge2( + sourceBinID bigint(20) NOT NULL, + polProcessID int NOT NULL, + opModeID smallint NOT NULL, + ageGroupID smallint NOT NULL, + modelYearID smallint NOT NULL, + fuelTypeID smallint NOT NULL, + sourceTypeID smallint NOT NULL, + meanBaseRate float NULL, + sourceBinActivityFraction float NULL, + opModeFraction float not null, + PRIMARY KEY (sourceBinID, polProcessID, opModeID, ageGroupID, modelYearID, fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE EmissionRateByAge2; + +INSERT IGNORE INTO EmissionRateByAge2 (sourceBinID, polProcessID, opModeID, ageGroupID, meanBaseRate, + modelYearID, fuelTypeID, sourceTypeID, sourceBinActivityFraction, opModeFraction) +SELECT DISTINCT er.sourceBinID, er.polProcessID, er.opModeID, er.ageGroupID, er.meanBaseRate, + stmy.modelYearID, sb.fuelTypeID, stmy.sourceTypeID, sbd.sourceBinActivityFraction, hac.opModeFraction +FROM EmissionRateByAge er, SourceBin sb, RunSpecSourceFuelType rsft, SourceBinDistribution sbd, SourceTypeModelYear stmy, + hotellingActivityDistribution hac +WHERE + er.sourceBinID = sb.sourceBinID + AND sb.fuelTypeID = rsft.fuelTypeID + AND er.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceBinID = sb.sourceBinID + AND sbd.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID + AND hac.beginModelYearID <= stmy.modelYearID + AND hac.endModelYearID >= stmy.modelYearID + AND hac.opModeID = er.opModeID +; + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + sourceBinID BIGINT(20) NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + + +CREATE UNIQUE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + sourceBinID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + ageGroupID ASC +); +ANALYZE TABLE SBWeightedEmissionRate; + +INSERT INTO SBWeightedEmissionRate (sourceBinID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, ageGroupID, meanBaseRate) +SELECT er.sourceBinID, er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, er.ageGroupID, + SUM(er.sourceBinActivityFraction * er.meanBaseRate * er.opModeFraction) AS meanBaseRate +FROM EmissionRateByAge2 er +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, er.ageGroupID +order by null; + + +-- FLUSH TABLES; + +-- NH3EIC-2: Multiply Emission Rates by Activity + +DROP TABLE IF EXISTS HH2; +CREATE TABLE HH2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + hourID SMALLINT, + dayID SMALLINT, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + hotellingHours FLOAT +); + +CREATE UNIQUE INDEX XPKHH2 ON HH2 ( + zoneID ASC, + monthID ASC, + hourDayID ASC, + yearID ASC, + ageID ASC, + ageGroupID ASC, + sourceTypeID ASC); + +ANALYZE TABLE HH2; + +-- FLUSH TABLES; + +truncate table HH2; + + +INSERT INTO HH2 (zoneID, monthID, hourDayID, hourID, dayID, yearID, ageID, ageGroupID, sourceTypeID, hotellingHours) +SELECT hh.zoneID, hh.monthID, hh.hourDayID, hrdy.hourID, hrdy.dayID, hh.yearID, hh.ageID, ac.ageGroupID, hh.sourceTypeID, hh.hotellingHours +FROM hotellingHours hh +INNER JOIN hourday hrdy ON (hrdy.hourDayID=hh.hourDayID) +INNER JOIN ageCategory ac ON (hh.ageID=ac.ageID) +; + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS EmissionResultsWithTime; +CREATE TABLE EmissionResultsWithTime ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + ageGroupID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResultsWithTime ON EmissionResultsWithTime ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC, + ageGroupID ASC +); +ANALYZE TABLE EmissionResultsWithTime; + +-- ------------------------------ + +INSERT INTO EmissionResultsWithTime (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, ageGroupID, emissionQuant) +SELECT waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, hh.zoneID, hh.monthID, + hh.hourID, hh.dayID, hh.yearID, hh.ageID, waer.ageGroupID, + (waer.meanBaseRate * hh.hotellingHours) AS emissionQuant +FROM SBWeightedEmissionRate waer, HH2 hh +WHERE hh.sourceTypeID=waer.sourceTypeID AND hh.ageGroupID=waer.ageGroupID + AND hh.ageID = hh.yearID - waer.modelYearID +; + +-- NH3EIC-3: Multiply Emission Rates for the year + + +DROP TABLE IF EXISTS EmissionResults; +CREATE TABLE EmissionResults ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResults ON EmissionResults ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE EmissionResults; + +INSERT INTO EmissionResults (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, erwt.zoneID, erwt.monthID, + erwt.hourID, erwt.dayID, erwt.yearID, erwt.ageID, + SUM(erwt.emissionQuant) AS emissionQuant +FROM EmissionResultsWithTime erwt INNER JOIN RunSpecYear ry USING (yearID) +GROUP BY erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, + erwt.zoneID, erwt.monthID, erwt.hourID, erwt.dayID, erwt.yearID +order by null; + +-- NH3EIC-4: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID + +TRUNCATE MOVESWorkerOutput; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, pollutantID, + processID, sourceTypeID, fuelTypeID, modelYearID, SCC, emissionQuant) +SELECT ##context.iterLocation.stateRecordID## AS stateID, + ##context.iterLocation.countyRecordID## AS countyID, aer.zoneID, lnk.linkID, lnk.roadTypeID, + aer.yearID, aer.monthID, aer.dayID, aer.hourID, ppa.pollutantID, ppa.processID, aer.sourceTypeID, + aer.fuelTypeID, aer.modelYearID, NULL AS SCC, aer.emissionQuant AS emissionQuant +FROM EmissionResults aer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = aer.polProcessID) +INNER JOIN Link lnk ON (lnk.zoneID=aer.zoneID) +WHERE lnk.roadTypeID=1 +order by null; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS HH2; +DROP TABLE IF EXISTS EmissionRateByAge2; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS EmissionResults; +drop table if exists oneCountyYearGeneralFuelRatio; +-- End Section Cleanup diff --git a/database/NH3ExtendedIdleEmissionCalculator.sql b/database/NH3ExtendedIdleEmissionCalculator.sql new file mode 100644 index 0000000..49c0a84 --- /dev/null +++ b/database/NH3ExtendedIdleEmissionCalculator.sql @@ -0,0 +1,449 @@ +-- Version 2013-09-15 +-- Author Don Smith +-- Author Gwo Ching Shyu, EPA +-- Author Wesley Faler +-- Purpose: Add calculation of ammonia (NH3) Pollutant Extended Idle Exhaust emissions to MOVES2010 +-- (Data extraction into ExtendedIdleHours) +-- Kept the updates for Task 915 by Wesley Faler, added generalFuelRatio support + +-- Section Create Remote Tables for Extracted Data + +##create.RunSpecYear##; +TRUNCATE RunSpecYear; + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.EmissionRate##; +TRUNCATE EmissionRate; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.ExtendedIdleHours##; +TRUNCATE ExtendedIdleHours; + +##create.RunSpecSourceFuelType##; +TRUNCATE RunSpecSourceFuelType; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +drop table if exists oneCountyYearGeneralFuelRatio; +create table if not exists oneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate oneCountyYearGeneralFuelRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT DISTINCT EmissionRate.* INTO OUTFILE '##EmissionRate##' +FROM EmissionRate, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE + EmissionRate.opModeID = 200 + AND RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID + AND EmissionRate.polProcessID = SourceBinDistribution.polProcessID + AND EmissionRate.sourceBinID = SourceBin.sourceBinID + AND EmissionRate.sourceBinID = SourceBinDistribution.sourceBinID + AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID + AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND EmissionRate.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link +WHERE roadTypeID = 1 AND + zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour INNER JOIN RunSpecHour USING (hourID); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +cache SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND OpModeDistribution.opModeID = 200 + AND linkID = (##context.iterLocation.linkRecordID##) + AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##ExtendedIdleHours##' +FROM ExtendedIdleHours +WHERE yearID = ##context.year## + AND zoneID = ##context.iterLocation.zoneRecordID##; + +cache select * into outfile '##RunSpecSourceFuelType##' +from RunSpecSourceFuelType; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) + AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 + AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID + AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID + AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge,RunSpecSourceType +WHERE SourceTypeAge.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID + AND SourceTypeModelYear.modelYearID <= ##context.year## + AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT RunSpecYear.* INTO OUTFILE '##RunSpecYear##' +FROM RunSpecYear; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##oneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.polProcessID in (##pollutantProcessIDs##) + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- End Section Extract Data + +-- Section Processing + +-- NH3EIC-1: SourceBin-Weighted Weight Emission Rates + +DROP TABLE IF EXISTS EmissionRate2; + +CREATE TABLE IF NOT EXISTS EmissionRate2( + sourceBinID bigint(20) NOT NULL, + polProcessID int NOT NULL, + opModeID smallint NOT NULL, + modelYearID smallint NOT NULL, + fuelTypeID smallint NOT NULL, + sourceTypeID smallint NOT NULL, + meanBaseRate float NULL, + sourceBinActivityFraction float NULL, + PRIMARY KEY (sourceBinID, polProcessID, opModeID, modelYearID, fuelTypeID, sourceTypeID) +); + +TRUNCATE TABLE EmissionRate2; + +INSERT IGNORE INTO EmissionRate2 (sourceBinID, polProcessID, opModeID, meanBaseRate, + modelYearID, fuelTypeID, sourceTypeID, sourceBinActivityFraction) +SELECT DISTINCT er.sourceBinID, er.polProcessID, er.opModeID, er.meanBaseRate, + stmy.modelYearID, sb.fuelTypeID, stmy.sourceTypeID, sbd.sourceBinActivityFraction +FROM EmissionRate er, SourceBin sb, RunSpecSourceFuelType rsft, SourceBinDistribution sbd, SourceTypeModelYear stmy +WHERE + er.opModeID = 200 + AND er.sourceBinID = sb.sourceBinID + AND sb.fuelTypeID = rsft.fuelTypeID + AND er.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceBinID = sb.sourceBinID + AND sbd.polProcessID IN (##pollutantProcessIDs##) + AND sbd.sourceTypeModelYearID = stmy.sourceTypeModelYearID +; + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + sourceBinID BIGINT(20) NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT +); + + +CREATE UNIQUE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + sourceBinID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC +); +ANALYZE TABLE SBWeightedEmissionRate; + +INSERT INTO SBWeightedEmissionRate (sourceBinID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, meanBaseRate) +SELECT er.sourceBinID, er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID, + SUM(er.sourceBinActivityFraction * er.meanBaseRate) AS meanBaseRate +FROM EmissionRate2 er +GROUP BY er.polProcessID, er.sourceTypeID, er.modelYearID, er.fuelTypeID +order by null; + + +-- FLUSH TABLES; + +-- NH3EIC-2: Multiply Emission Rates by Activity + +DROP TABLE IF EXISTS EIH2; +CREATE TABLE EIH2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + hourID SMALLINT, + dayID SMALLINT, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + extendedIdleHours FLOAT +); + +CREATE UNIQUE INDEX XPKEIH2 ON EIH2 ( + zoneID ASC, + monthID ASC, + hourDayID ASC, + yearID ASC, + ageID ASC, + sourceTypeID ASC); + +ANALYZE TABLE EIH2; + +-- FLUSH TABLES; + +truncate table EIH2; + + +INSERT INTO EIH2 (zoneID, monthID, hourDayID, hourID, dayID, yearID, ageID, sourceTypeID, extendedIdleHours) +SELECT eih.zoneID, eih.monthID, eih.hourDayID, hrdy.hourID, hrdy.dayID, eih.yearID, eih.ageID, eih.sourceTypeID, eih.extendedIdleHours +FROM extendedIdleHours eih +INNER JOIN hourday hrdy ON (hrdy.hourDayID=eih.hourDayID) +; + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS EmissionResultsWithTime; +CREATE TABLE EmissionResultsWithTime ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResultsWithTime ON EmissionResultsWithTime ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE EmissionResultsWithTime; + +-- ------------------------------ + +INSERT INTO EmissionResultsWithTime (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT waer.polProcessID, waer.sourceTypeID, waer.modelYearID, waer.fuelTypeID, eih.zoneID, eih.monthID, + eih.hourID, eih.dayID, eih.yearID, eih.ageID, + (waer.meanBaseRate * eih.extendedIdleHours) AS emissionQuant +FROM SBWeightedEmissionRate waer, EIH2 eih +WHERE eih.sourceTypeID=waer.sourceTypeID AND eih.ageID = eih.yearID - waer.modelYearID +; + +-- NH3EIC-3: Multiply Emission Rates for the year + + +DROP TABLE IF EXISTS EmissionResults; +CREATE TABLE EmissionResults ( + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + ageID SMALLINT NOT NULL, + emissionQuant FLOAT +); + +CREATE UNIQUE INDEX XPKEmissionResults ON EmissionResults ( + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + ageID ASC +); +ANALYZE TABLE EmissionResults; + +INSERT INTO EmissionResults (polProcessID, sourceTypeID, modelYearID, fuelTypeID, zoneID, monthID, + hourID, dayID, yearID, ageID, emissionQuant) +SELECT erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, erwt.zoneID, erwt.monthID, + erwt.hourID, erwt.dayID, erwt.yearID, erwt.ageID, + SUM(erwt.emissionQuant) AS emissionQuant +FROM EmissionResultsWithTime erwt INNER JOIN RunSpecYear ry USING (yearID) +GROUP BY erwt.polProcessID, erwt.sourceTypeID, erwt.modelYearID, erwt.fuelTypeID, + erwt.zoneID, erwt.monthID, erwt.hourID, erwt.dayID, erwt.yearID +order by null; + +-- NH3EIC-4: Convert Results to Structure of MOVESWorkerOutput by sourceTypeID + +TRUNCATE MOVESWorkerOutput; +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, pollutantID, + processID, sourceTypeID, fuelTypeID, modelYearID, SCC, emissionQuant) +SELECT ##context.iterLocation.stateRecordID## AS stateID, + ##context.iterLocation.countyRecordID## AS countyID, aer.zoneID, lnk.linkID, lnk.roadTypeID, + aer.yearID, aer.monthID, aer.dayID, aer.hourID, ppa.pollutantID, ppa.processID, aer.sourceTypeID, + aer.fuelTypeID, aer.modelYearID, NULL AS SCC, aer.emissionQuant AS emissionQuant +FROM EmissionResults aer +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID = aer.polProcessID) +INNER JOIN Link lnk ON (lnk.zoneID=aer.zoneID) +WHERE lnk.roadTypeID=1 +order by null; + +update MOVESWorkerOutput, oneCountyYearGeneralFuelRatio set emissionQuant=emissionQuant*fuelEffectRatio +where oneCountyYearGeneralFuelRatio.fuelTypeID = MOVESWorkerOutput.fuelTypeID +and oneCountyYearGeneralFuelRatio.sourceTypeID = MOVESWorkerOutput.sourceTypeID +and oneCountyYearGeneralFuelRatio.monthID = MOVESWorkerOutput.monthID +and oneCountyYearGeneralFuelRatio.pollutantID = MOVESWorkerOutput.pollutantID +and oneCountyYearGeneralFuelRatio.processID = MOVESWorkerOutput.processID +and oneCountyYearGeneralFuelRatio.modelYearID = MOVESWorkerOutput.modelYearID +and oneCountyYearGeneralFuelRatio.yearID = MOVESWorkerOutput.yearID; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS EIH2; +-- DROP TABLE IF EXISTS tmp216; +DROP TABLE IF EXISTS EmissionRate2; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS EmissionResults; +drop table if exists oneCountyYearGeneralFuelRatio; +-- End Section Cleanup + diff --git a/database/NH3RunningCalculator.sql b/database/NH3RunningCalculator.sql new file mode 100644 index 0000000..77a692d --- /dev/null +++ b/database/NH3RunningCalculator.sql @@ -0,0 +1,703 @@ +-- Version 2013-09-15 +-- Authors: Gwo S. and Wes F. +-- The Ammonia calculator shall not have the ability to calculate fuel formulation effects, +-- temperature effects, AC on effects or humidity effects. + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.criteriaRatio##; +TRUNCATE criteriaRatio; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthGroupHour##; +TRUNCATE MonthGroupHour; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunspecHour##; +TRUNCATE RunspecHour; + +##create.RunspecMonth##; +TRUNCATE RunspecMonth; + +##create.sho##; +TRUNCATE sho; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeAge##; +TRUNCATE SourceTypeAge; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.TemperatureAdjustment##; +TRUNCATE TemperatureAdjustment; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##criteriaRatio##' +FROM criteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); + +-- SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '??EmissionRateByAge??' +-- FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +-- WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +-- AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +-- AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +-- AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +-- AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +-- AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +-- AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +-- AND SourceTypeModelYear.modelYearID <= ??context.year?? +-- AND EmissionRateByAge.polProcessID IN (??pollutantProcessIDs??); + +cache SELECT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge +WHERE EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.sourceBinID in (##macro.csv.all.sourceBinID##); + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year## +AND FuelSupply.monthGroupID in (##macro.csv.all.monthGroupID##); + +cache SELECT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +WHERE fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache SELECT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay +WHERE hourDayID in (##macro.csv.all.hourDayID##); + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT MonthGroupHour.* INTO OUTFILE '##MonthGroupHour##' +FROM MonthGroupHour +WHERE hourID in (##macro.csv.all.hourID##); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE MonthOfAnyYear.monthID in (##macro.csv.all.monthID##); + +cache SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunspecHour##' FROM RunspecHour; + +cache SELECT * INTO OUTFILE '##RunspecMonth##' FROM RunspecMonth; + +SELECT * INTO OUTFILE '##SHO##' +FROM SHO +WHERE linkID = ##context.iterLocation.linkRecordID## +AND yearID = ##context.year##; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeAge.* INTO OUTFILE '##SourceTypeAge##' +FROM SourceTypeAge +WHERE SourceTypeAge.sourceTypeID in (##macro.csv.all.sourceTypeID##); + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear +WHERE SourceTypeModelYear.sourceTypeID in (##macro.csv.all.sourceTypeID##) +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT TemperatureAdjustment.* INTO OUTFILE '##TemperatureAdjustment##' +FROM TemperatureAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##) +AND fuelTypeID in (##macro.csv.all.fuelTypeID##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +-- End Section Extract Data + +-- Section Processing + +-- +-- NH3REC 1: Complete I/M adjustment fraction information +-- +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + polProcessID int NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT, + weightFactor FLOAT +); + +-- CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +-- ( +-- polProcessID ASC, +-- pollutantID ASC, +-- processID ASC, +-- modelYearID ASC, +-- fuelTypeID ASC, +-- sourceTypeID ASC +-- ); + +INSERT INTO IMCoverageMergedUngrouped ( + polProcessID, pollutantID, processID, modelYearID, + fuelTypeID,sourceTypeID,IMAdjustFract,weightFactor) +SELECT + ppmy.polProcessID, + 0, + 0, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract, + sum(complianceFactor) as weightFactor +FROM +PollutantProcessMappedModelYear ppmy +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppmy.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ##context.year##-ageID + AND imc.endModelYearID >= ##context.year##-ageID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppmy.polProcessID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +UPDATE IMCoverageMergedUngrouped, pollutantprocessassoc +SET IMCoverageMergedUngrouped.pollutantID=pollutantprocessassoc.pollutantID, + IMCoverageMergedUngrouped.processID=pollutantprocessassoc.processID +WHERE IMCoverageMergedUngrouped.polProcessID=pollutantprocessassoc.polProcessID +; + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + polProcessID ASC, + pollutantID ASC, + processID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + + + +-- +-- NH3REC-2: Weight emission rates by source bin +-- + +DROP TABLE IF EXISTS SourceBinEmissionRates0; +CREATE TABLE SourceBinEmissionRates0 ( + zoneID INT NOT NULL, + linkID INT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +ALTER TABLE SourceBinEmissionRates0 ADD INDEX SourceBinEmissionRates0 ( + zoneID, linkID, yearID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, opModeID); + +INSERT INTO SourceBinEmissionRates0 ( + zoneID, linkID, yearID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, opModeID, + meanBaseRate, meanBaseRateIM) +SELECT + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.iterLocation.linkRecordID##, + ##context.year## as yearID, + er.polProcessID, + stmy.sourceTypeID, stmy.modelYearID, sb.fuelTypeID, er.opModeID, + sum(meanBaseRate*sourceBinActivityFraction) AS meanBaseRate, + sum(meanBaseRateIM*sourceBinActivityFraction) AS meanBaseRateIM +FROM EmissionRateByAge er +INNER JOIN AgeCategory age ON (age.ageGroupID=er.ageGroupID) +INNER JOIN SourceTypeModelYear stmy ON (stmy.modelYearID=##context.year##-age.ageID) +INNER JOIN SourceBinDistribution sbd ON (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID + AND sbd.polProcessID=er.polProcessID AND sbd.sourceBinID=er.sourceBinID) +INNER JOIN SourceBin sb ON (sbd.sourceBinID=sb.sourceBinID) +GROUP BY er.polProcessID, stmy.sourceTypeID, stmy.modelYearID, sb.fuelTypeID, er.opModeID +ORDER BY NULL; + + +DROP TABLE IF EXISTS SBWeightedEmissionRate; +CREATE TABLE SBWeightedEmissionRate ( + zoneID INTEGER NOT NULL, + linkID INTEGER NOT NULL, + monthID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE INDEX XPKSBWeightedEmissionRate ON SBWeightedEmissionRate ( + zoneID ASC, + linkID ASC, + monthID ASC, + yearID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + opModeID ASC +); + +INSERT INTO SBWeightedEmissionRate( + zoneID, + linkID, + monthID, + yearID, + polProcessID, + sourceTypeID, + modelYearID, + fuelTypeID, + opModeID, + meanBaseRate, + meanBaseRateIM +) +SELECT + er.zoneID, + er.linkID, + rm.monthID, + er.yearID, + er.polProcessID, + er.sourceTypeID, + er.modelYearID, + er.fuelTypeID, + er.opModeID, + er.meanBaseRate, + er.meanBaseRateIM +FROM SourceBinEmissionRates0 er, RunspecMonth rm +ORDER BY NULL; + +-- +-- NH3REC-3: Weight emission rates by operating mode +-- +DROP TABLE IF EXISTS FullyWeightedEmissionRate; +CREATE TABLE FullyWeightedEmissionRate ( + zoneID INTEGER NOT NULL, + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + hourDayID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKFullyWeightedEmissionRate ON FullyWeightedEmissionRate ( + zoneID ASC, + linkID ASC, + yearID ASC, + monthID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC, + hourDayID ASC +); + +CREATE INDEX OPModeDistributionSpecial ON OpModeDistribution ( + polProcessID ASC, + sourceTypeID ASC, + linkID ASC, + opModeID ASC +); + +INSERT INTO FullyWeightedEmissionRate( + zoneID, + linkID, + yearID, + monthID, + dayID, + hourID, + polProcessID, + sourceTypeID, + modelYearID, + fuelTypeID, + hourDayID, + meanBaseRate, + meanBaseRateIM +) +SELECT sbwer.zoneID, sbwer.linkID, sbwer.yearID, sbwer.monthID, + 0, 0, + sbwer.polProcessID, sbwer.sourceTypeID, sbwer.modelYearID, sbwer.fuelTypeID, + omd.hourDayID, + SUM(opModeFraction*meanBaseRate), + SUM(opModeFraction*meanBaseRateIM) +FROM SBWeightedEmissionRate sbwer +INNER JOIN OpModeDistribution omd + USING(polProcessID, sourceTypeID, linkID, opModeID) +GROUP BY zoneID, linkID, yearID, monthID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, hourDayID; + +UPDATE FullyWeightedEmissionRate, HourDay +SET FullyWeightedEmissionRate.dayID=HourDay.dayID, + FullyWeightedEmissionRate.hourID=HourDay.hourID +WHERE FullyWeightedEmissionRate.hourDayID=HourDay.hourDayID; + +ANALYZE TABLE Link; +ANALYZE TABLE HourDay; + +-- +-- NH3REC 4: Multiply fully weighted and adjusted emission rates by source hour operating (SHO) +-- activity to generate inventory. +-- +DROP TABLE IF EXISTS SHO2; +CREATE TABLE SHO2 ( + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + SCC CHAR(10), + SHO FLOAT NULL +); +CREATE INDEX XPKSHO2 ON SHO2 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); +ANALYZE TABLE sho; + +INSERT INTO SHO2 SELECT +yearID, monthID, hd.dayID, hd.hourID, sourceTypeID, +yearID - ageID AS modelYearID, NULL AS SCC, SHO +FROM SHO sho +INNER JOIN HourDay hd ON (hd.hourDayID=sho.hourDayID); + +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate3; +CREATE TABLE WeightedAndAdjustedEmissionRate3 ( + zoneID INTEGER NOT NULL, + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + + +CREATE UNIQUE INDEX XPKWeightedAndAdjustedEmissionRate31 ON WeightedAndAdjustedEmissionRate3 ( + zoneID ASC, + linkID ASC, + yearID ASC, + pollutantID ASC, + processID ASC, + sourceTypeID ASC, + fuelTypeID ASC, + modelYearID ASC, + monthID ASC, + dayID ASC, + hourID ASC +); + +INSERT INTO WeightedAndAdjustedEmissionRate3( + zoneID, + linkID, + yearID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + monthID, + dayID, + hourID, + meanBaseRate, + meanBaseRateIM +) +SELECT fwer.zoneID, fwer.linkID, fwer.yearID, ppa.pollutantID, ppa.processID, + fwer.sourceTypeID, fwer.fuelTypeID, + fwer.modelYearID, fwer.monthID, hd.dayID, hd.hourID, + fwer.meanBaseRate, fwer.meanBaseRateIM +FROM FullyWeightedEmissionRate fwer +INNER JOIN HourDay hd ON (hd.hourDayID = fwer.hourDayID) +INNER JOIN PollutantProcessAssoc ppa ON (ppa.polProcessID=fwer.polProcessID); + + +DROP TABLE IF EXISTS SHO3; +CREATE TABLE SHO3 ( + linkID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + SCC CHAR(10), + emissionQuant FLOAT NULL, + emissionQuantIM FLOAT NULL +); +CREATE INDEX XPKSHO3 ON SHO3 ( + linkID asc, + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc, + pollutantID asc, + processID asc, + fuelTypeID asc +); + +CREATE INDEX XPKSHO22 ON SHO2 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); + +CREATE INDEX XPKWeightedAndAdjustedEmissionRate32 ON WeightedAndAdjustedEmissionRate3 ( + yearID asc, + monthID asc, + dayID asc, + hourID asc, + sourceTypeID asc, + modelYearID asc +); + +ANALYZE TABLE SHO2; + +INSERT INTO SHO3 +SELECT linkID, sho2.yearID, sho2.monthID, sho2.dayID, sho2.hourID, +sho2.sourceTypeID, sho2.modelYearID, pollutantID, processID, fuelTypeID, +scc, sho * meanBaseRate AS emissionQuant, sho * meanBaseRateIM AS emissionQuantIM +FROM SHO2 sho2 +INNER JOIN WeightedAndAdjustedEmissionRate3 waer ON ( +waer.yearID=sho2.yearID AND +waer.monthID=sho2.monthID AND +waer.dayID=sho2.dayID AND +waer.hourID=sho2.hourID AND +waer.sourceTypeID=sho2.sourceTypeID AND +waer.modelYearID=sho2.modelYearID); + + + +alter table MOVESWorkerOutput add emissionQuantIM float null; + +ANALYZE TABLE sho3; +INSERT INTO MOVESWorkerOutput ( +stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, hourID, +pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, SCC, emissionQuant, emissionQuantIM) +SELECT ##context.iterLocation.stateRecordID##, ##context.iterLocation.countyRecordID##, +l.zoneID, l.linkID, l.roadTypeID, yearID, monthID, dayID, hourID, +pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, SCC, emissionQuant, emissionQuantIM +FROM SHO3 sho3 INNER JOIN Link l ON (l.linkID = sho3.linkID); + +-- Apply IM +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS CountyFuelAdjustment; +DROP TABLE IF EXISTS FuelAdjustedRate; +DROP TABLE IF EXISTS FuelSupplyAdjustment; +DROP TABLE IF EXISTS FuelSupplyWithFuelType; +DROP TABLE IF EXISTS FullyWeightedEmissionRate; +drop table if exists IMCoverageMergedUngrouped; +DROP TABLE IF EXISTS IMAdjustment; +DROP TABLE IF EXISTS IMAdjustmentWithSourceBin; +DROP TABLE IF EXISTS SourceBinEmissionRates0; +DROP TABLE IF EXISTS SBWeightedEmissionRate; +DROP TABLE IF EXISTS SHO2; +DROP TABLE IF EXISTS SHO3; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate; +DROP TABLE IF EXISTS WeightedAndAdjustedEmissionRate3; +FLUSH TABLES; +-- End Section Cleanup diff --git a/database/NH3StartCalculator.sql b/database/NH3StartCalculator.sql new file mode 100644 index 0000000..de7b35e --- /dev/null +++ b/database/NH3StartCalculator.sql @@ -0,0 +1,535 @@ +-- Version 2013-09-15 +-- Authors: Gwo S. and Wes F. +-- The Ammonia (NH3) calculator shall not have the ability to calculate fuel formulation effects, +-- temperature effects, AC on effects or humidity effects. + +-- Section Create Remote Tables for Extracted Data +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.County##; +TRUNCATE County; + +##create.criteriaRatio##; +TRUNCATE criteriaRatio; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelFormulation##; +TRUNCATE FuelFormulation; + +##create.FuelSubType##; +TRUNCATE FuelSubType; + +##create.FuelSupply##; +TRUNCATE FuelSupply; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.PollutantProcessMappedModelYear##; +TRUNCATE PollutantProcessMappedModelYear; + +##create.RunspecHour##; +TRUNCATE RunspecHour; + +##create.RunspecMonth##; +TRUNCATE RunspecMonth; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.StartTempAdjustment##; +TRUNCATE TABLE StartTempAdjustment; + +##create.Starts##; +TRUNCATE TABLE Starts; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +##create.ZoneMonthHour##; +TRUNCATE ZoneMonthHour; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT fuelTypeID, + fuelFormulationID, + polProcessID, + pollutantID, + processID, + sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + ageID, + ratio, + ratioGPA, + ratioNoSulfur +INTO OUTFILE '##criteriaRatio##' +FROM criteriaRatio +WHERE polProcessID IN (##pollutantProcessIDs##) +AND modelYearID = MYMAP(##context.year## - ageID); + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##); + +cache SELECT ff.* INTO OUTFILE '##FuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##FuelSubtype##' +FROM FuelSubtype; + +cache SELECT FuelSupply.* INTO OUTFILE '##FuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT MonthOfAnyYear.* INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear,RunSpecMonth +WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID; + +cache SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID; + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##PollutantProcessMappedModelYear##' +FROM PollutantProcessMappedModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunspecHour##' FROM RunspecHour; + +cache SELECT * INTO OUTFILE '##RunspecMonth##' FROM RunspecMonth; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT Starts.* INTO OUTFILE '##Starts##' +FROM Starts +WHERE yearID = ##context.year## +AND zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT StartTempAdjustment.* INTO OUTFILE '##StartTempAdjustment##' +FROM StartTempAdjustment +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +cache SELECT DISTINCT ZoneMonthHour.* INTO OUTFILE '##ZoneMonthHour##' +FROM ZoneMonthHour,RunSpecMonth,RunSpecHour +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND RunSpecMonth.monthID = ZoneMonthHour.monthID +AND RunSpecHour.hourID = ZoneMonthHour.hourID; + +-- End Section Extract Data +-- +-- Section Processing + +-- +-- NH3SEC 1: Complete I/M adjustment fraction information +-- +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + polProcessID int NOT NULL, + pollutantID SMALLINT NOT NULL, + processID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT, + weightFactor FLOAT +); + + +INSERT INTO IMCoverageMergedUngrouped ( + polProcessID, pollutantID, processID, modelYearID, + fuelTypeID,sourceTypeID,IMAdjustFract,weightFactor) +SELECT + ppmy.polProcessID, + 0, + 0, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract, + sum(complianceFactor) as weightFactor +FROM +PollutantProcessMappedModelYear ppmy +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppmy.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ##context.year##-ageID + AND imc.endModelYearID >= ##context.year##-ageID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppmy.polProcessID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +UPDATE IMCoverageMergedUngrouped, pollutantprocessassoc +SET IMCoverageMergedUngrouped.pollutantID=pollutantprocessassoc.pollutantID, + IMCoverageMergedUngrouped.processID=pollutantprocessassoc.processID +WHERE IMCoverageMergedUngrouped.polProcessID=pollutantprocessassoc.polProcessID +; + + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + polProcessID ASC, + pollutantID ASC, + processID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +-- +-- NH3SEC-2: Weight Emission Rates by Source Bin. +-- + +DROP TABLE IF EXISTS SourceBinEmissionRates0; +CREATE TABLE SourceBinEmissionRates0 ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +ALTER TABLE SourceBinEmissionRates0 ADD INDEX SourceBinEmissionRates0 ( + zoneID, yearID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, opModeID); + +INSERT INTO SourceBinEmissionRates0 ( + zoneID, yearID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, opModeID, + meanBaseRate, meanBaseRateIM) +SELECT + ##context.iterLocation.zoneRecordID## as zoneID, + ##context.year## as yearID, + er.polProcessID, + stmy.sourceTypeID, stmy.modelYearID, sb.fuelTypeID, er.opModeID, + sum(meanBaseRate*sourceBinActivityFraction) AS meanBaseRate, + sum(meanBaseRateIM*sourceBinActivityFraction) AS meanBaseRateIM +FROM EmissionRateByAge er +INNER JOIN AgeCategory age ON (age.ageGroupID=er.ageGroupID) +INNER JOIN SourceTypeModelYear stmy ON (stmy.modelYearID=##context.year##-age.ageID) +INNER JOIN SourceBinDistribution sbd ON (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID + AND sbd.polProcessID=er.polProcessID AND sbd.sourceBinID=er.sourceBinID) +INNER JOIN SourceBin sb ON (sbd.sourceBinID=sb.sourceBinID) +GROUP BY er.polProcessID, stmy.sourceTypeID, stmy.modelYearID, sb.fuelTypeID, er.opModeID +ORDER BY NULL; + + +DROP TABLE IF EXISTS SourceBinEmissionRates; +CREATE TABLE SourceBinEmissionRates ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + opModeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +ALTER TABLE SourceBinEmissionRates ADD INDEX SourceBinEmissionRates1 ( + zoneID, monthID, hourID, yearID, polProcessID, sourceTypeID, modelYearID, fuelTypeID, opModeID); + +INSERT INTO SourceBinEmissionRates ( + zoneID, monthID, hourID, yearID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, opModeID, + meanBaseRate, meanBaseRateIM) +SELECT + er.zoneID, + rm.monthID, + rh.hourID, + er.yearID, + er.polProcessID, + er.sourceTypeID, + er.modelYearID, + er.fuelTypeID, + er.opModeID, + er.meanBaseRate, + er.meanBaseRateIM +FROM SourceBinEmissionRates0 er, RunspecMonth rm, RunspecHour rh +ORDER BY NULL; + + +-- +-- NH3SEC-3: Weight adjusted emission rates by operating mode. +-- +DROP TABLE IF EXISTS ActivityWeightedEmissionRate; +CREATE TABLE ActivityWeightedEmissionRate ( + zoneID INT NOT NULL, + yearID SMALLINT NOT NULL, + monthID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + polProcessID int NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + meanBaseRate FLOAT, + meanBaseRateIM FLOAT +); + +CREATE UNIQUE INDEX XPKActivityWeightedEmissionRate ON ActivityWeightedEmissionRate ( + zoneID ASC, + yearID ASC, + monthID ASC, + dayID ASC, + hourID ASC, + polProcessID ASC, + sourceTypeID ASC, + modelYearID ASC, + fuelTypeID ASC +); + +INSERT INTO ActivityWeightedEmissionRate ( + zoneID, yearID, monthID, dayID, hourID, polProcessID, + sourceTypeID, modelYearID, fuelTypeID, meanBaseRate, meanBaseRateIM ) +SELECT + zoneID, ##context.year##, monthID, hd.dayID, msber.hourID, msber.polProcessID, + msber.sourceTypeID, modelYearID, fuelTypeID, + SUM(meanBaseRate * opModeFraction), SUM(meanBaseRateIM * opModeFraction) +FROM SourceBinEmissionRates msber +INNER JOIN HourDay hd ON (hd.hourID = msber.hourID) +INNER JOIN OpModeDistribution omd ON ( +omd.sourceTypeID = msber.sourceTypeID +AND omd.hourDayID = hd.hourDayID +AND omd.polProcessID = msber.polProcessID +AND omd.opModeID = msber.opModeID) +GROUP BY zoneID, yearID, monthID, hd.dayID, msber.hourID, msber.polProcessID, +msber.sourceTypeID, modelYearID, fuelTypeID +ORDER BY NULL; + +-- +-- NH3SEC-4: Multiply emission rates by start activity to generate inventory. +-- +-- Make version of Starts table that is optimized to subsequent steps + +DROP TABLE IF EXISTS Starts2; +CREATE TABLE Starts2 ( + zoneID INT NOT NULL, + monthID SMALLINT NOT NULL, + hourID SMALLINT NOT NULL, + dayID SMALLINT NOT NULL, + yearID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + starts FLOAT +); + +CREATE UNIQUE INDEX XPKStarts2 ON Starts2 ( + zoneID ASC, + monthID ASC, + hourID ASC, + dayID ASC, + yearID ASC, + sourceTypeID ASC, + modelYearID ASC +); + +INSERT INTO Starts2 (zoneID, monthID, hourID, dayID, yearID, + sourceTypeID, modelYearID, starts) +SELECT zoneID, monthID, hourID, dayID, yearID, sourceTypeID, + (##context.year## - ageID) AS modelYearID, starts +FROM Starts INNER JOIN HourDay ON (Starts.hourDayID= HourDay.hourDayID); + +alter table MOVESWorkerOutput add emissionQuantIM float null default 0.0; + +INSERT INTO MOVESWorkerOutput ( + stateID, countyID, zoneID, linkID, roadTypeID, yearID, monthID, dayID, + hourID, pollutantID, processID, sourceTypeID, modelYearID, fuelTypeID, + SCC, emissionQuant, emissionQuantIM) +SELECT + ##context.iterLocation.stateRecordID##, + ##context.iterLocation.countyRecordID##, + s.zoneID, + ##context.iterLocation.linkRecordID##, + 1 AS roadTypeID, + s.yearID, s.monthID, s.dayID, s.hourID, pollutantID, processID, + s.sourceTypeID, s.modelYearID, fuelTypeID, NULL AS SCC, + (meanBaseRate * starts) AS emissionQuant, + (meanBaseRateIM * starts) AS emissionQuantIM +FROM Starts2 s, ActivityWeightedEmissionRate awer, PollutantProcessAssoc ppa +WHERE + s.zoneID=awer.zoneID AND + s.monthID=awer.monthID AND + s.hourID=awer.hourID AND + s.dayID=awer.dayID AND + s.yearID=awer.yearID AND + s.sourceTypeID=awer.sourceTypeID AND + s.modelYearID=awer.modelYearID AND + awer.polProcessID=ppa.polProcessID; + +-- Apply IM +update MOVESWorkerOutput, IMCoverageMergedUngrouped +set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS ActivityWeightedEmissionRate; +DROP TABLE IF EXISTS CountyFuelAdjustment; +DROP TABLE IF EXISTS CountyFuelAdjustmentWithFuelType; +DROP TABLE IF EXISTS EmissionRatesWithIM; +DROP TABLE IF EXISTS FuelSupplyAdjustment; +drop table if exists IMCoverageMergedUngrouped; +drop table if exists IMCoverageMerged; +DROP TABLE IF EXISTS IMAdjustment; +DROP TABLE IF EXISTS IMAdjustmentWithSourceBin; +DROP TABLE IF EXISTS SourceBinEmissionRates0; +DROP TABLE IF EXISTS SourceBinEmissionRates; +DROP TABLE IF EXISTS Starts2; +FLUSH TABLES; +-- End Section Cleanup + diff --git a/database/NO2Calculator.sql b/database/NO2Calculator.sql new file mode 100644 index 0000000..d425e59 --- /dev/null +++ b/database/NO2Calculator.sql @@ -0,0 +1,156 @@ +-- Version 2014-05-20 + +-- @algorithm +-- @owner NO2 Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data +DROP TABLE IF EXISTS NO2CopyOfSourceUseType; +CREATE TABLE NO2CopyOfSourceUseType ( + sourceTypeID smallint(6) +); + +DROP TABLE IF EXISTS NO2CopyOfPPA; +CREATE TABLE NO2CopyOfPPA ( + polProcessID int, + processID smallint(6), + pollutantID smallint(6) +); + +DROP TABLE IF EXISTS NO2CopyOfPPMY; +CREATE TABLE NO2CopyOfPPMY ( + polProcessID int, + modelYearID smallint(6), + modelYearGroupID int(11), + fuelMYGroupID int(11) +); + +DROP TABLE IF EXISTS NO2CopyOfFuelType; +CREATE TABLE NO2CopyOfFuelType ( + fuelTypeID smallint(6) +); + +DROP TABLE IF EXISTS NO2CopyOfNONO2Ratio; +CREATE TABLE NO2CopyOfNONO2Ratio ( + polProcessID int, + sourceTypeID smallint(6), + fuelTypeID smallint(6), + modelYearGroupID int(11), + NOxRatio float, + NOxRatioCV float, + dataSourceId smallint(6) +); +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT distinct sourceTypeID INTO OUTFILE '##NO2CopyOfSourceUseType##' + FROM SourceUseType; + +cache SELECT distinct fuelTypeID INTO OUTFILE '##NO2CopyOfFuelType##' + FROM FuelType; + +cache SELECT polProcessID,sourceTypeID,fuelTypeID,modelYearGroupID,NOxRatio,NOxRatioCV,dataSourceId +INTO OUTFILE '##NO2CopyOfNONO2Ratio##' FROM NONO2Ratio +WHERE polProcessID IN (3301, 3302, 3390, 3391); + +cache SELECT polProcessID,processID,pollutantID +INTO OUTFILE '##NO2CopyOfPPA##' FROM pollutantprocessassoc +WHERE processID=##context.iterProcess.databaseKey## +AND pollutantID=33; + +cache SELECT polProcessID,modelYearID,modelYearGroupID,fuelMYGroupID +INTO OUTFILE '##NO2CopyOfPPMY##' FROM pollutantprocessmappedmodelyear +WHERE polProcessID IN (3301, 3302, 3390, 3391) +and modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing +DROP TABLE IF EXISTS NO2Calculation1; +CREATE TABLE NO2Calculation1 ( + polProcessID int, + processID smallint(6), + pollutantID smallint(6), + sourceTypeID smallint(6), + fuelTypeID smallint(6), + modelYearID smallint(6), + NOxRatio float +); + +-- @algorithm To simplify future table joins, add dimensions to NOxRatio. +INSERT INTO NO2Calculation1 ( + polProcessID, + processID, + pollutantID, + sourceTypeID, + fuelTypeID, + modelYearID, + NOxRatio ) +SELECT + nnr.polProcessID, + ppa.processID, + ppa.pollutantID, + nnr.sourceTypeID, + nnr.fuelTypeID, + ppmy.modelYearID, + nnr.NOxRatio +FROM NO2CopyOfNONO2Ratio nnr + INNER JOIN NO2CopyOfPPA ppa ON nnr.polProcessID = ppa.polProcessID + INNER JOIN NO2CopyOfSourceUseType ns ON nnr.sourceTypeID = ns.sourceTypeID + INNER JOIN NO2CopyOfPPMY ppmy ON nnr.modelYearGroupID = ppmy.modelYearGroupID + AND ppa.polProcessID = ppmy.polProcessID; + +create index index1 on NO2Calculation1 (processID, sourceTypeID, pollutantID, modelYearID, fuelTypeID); + +CREATE INDEX NO2Calculation1_New1 ON NO2Calculation1 ( + fuelTypeID ASC, + modelyearID ASC, + sourceTypeID ASC +); + +DROP TABLE IF EXISTS NO2MOVESOutputTemp1; + +-- @algorithm emissionQuant = NOxRatio * Oxides of Nitrogen (3). +CREATE TABLE NO2MOVESOutputTemp1 +SELECT + mwo.MOVESRunID, mwo.iterationID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, + mwo.linkID, noc.pollutantID, noc.processID, + noc.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, + mwo.roadTypeID, mwo.SCC, + mwo.emissionQuant as NOx, + noc.NOxRatio, + (noc.NOxRatio * mwo.emissionQuant) as emissionQuant, + (noc.NOxRatio * mwo.emissionRate) as emissionRate +FROM + MOVESWorkerOutput mwo, NO2Calculation1 noc +WHERE + mwo.fuelTypeID = noc.fuelTypeID AND + mwo.modelyearID = noc.modelyearID AND + mwo.sourceTypeID = noc.sourceTypeID AND + mwo.pollutantID = 3 AND + mwo.processID = ##context.iterProcess.databaseKey##; + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate) +SELECT + MOVESRunID,iterationID, yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate +FROM NO2MOVESOutputTemp1; +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS NO2CopyOfSourceUseType; +DROP TABLE IF EXISTS NO2MOVESOutputTemp1; +DROP TABLE IF EXISTS NO2Calculation1; +DROP TABLE IF EXISTS NO2CopyOfNONO2Ratio; +DROP TABLE IF EXISTS NO2CopyOfFuelType; +DROP TABLE IF EXISTS NO2CopyOfPPA; +DROP TABLE IF EXISTS NO2CopyOfPPMY; +-- End Section Cleanup diff --git a/database/NOCalculator.sql b/database/NOCalculator.sql new file mode 100644 index 0000000..feee1e1 --- /dev/null +++ b/database/NOCalculator.sql @@ -0,0 +1,168 @@ +-- Author Wesley Faler +-- Author Ed Glover EPA +-- Version 2014-08-20 + +-- @algorithm +-- @owner NO Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data +DROP TABLE IF EXISTS NOCopyOfSourceUseType; +CREATE TABLE NOCopyOfSourceUseType ( + sourceTypeID smallint(6) +); + +DROP TABLE IF EXISTS NOCopyOfPPA; +CREATE TABLE NOCopyOfPPA ( + polProcessID int, + processID smallint(6), + pollutantID smallint(6) +); + +DROP TABLE IF EXISTS NOCopyOfPPMY; +CREATE TABLE NOCopyOfPPMY ( + polProcessID int, + modelYearID smallint(6), + modelYearGroupID int(11), + fuelMYGroupID int(11) +); + +DROP TABLE IF EXISTS NOCopyOfFuelType; +CREATE TABLE NOCopyOfFuelType ( + fuelTypeID smallint(6) +); + +DROP TABLE IF EXISTS NOCopyOfNONO2Ratio; +CREATE TABLE NOCopyOfNONO2Ratio ( + polProcessID int, + sourceTypeID smallint(6), + fuelTypeID smallint(6), + modelYearGroupID int(11), + NOxRatio float, + NOxRatioCV float, + dataSourceId smallint(6) +); +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT distinct sourceTypeID INTO OUTFILE '##NOCopyOfSourceUseType##' + FROM SourceUseType; + +cache SELECT distinct fuelTypeID INTO OUTFILE '##NOCopyOfFuelType##' + FROM FuelType; + +cache SELECT polProcessID,sourceTypeID,fuelTypeID,modelYearGroupID,NOxRatio,NOxRatioCV,dataSourceId +INTO OUTFILE '##NOCopyOfNONO2Ratio##' FROM NONO2Ratio +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT polProcessID,processID,pollutantID +INTO OUTFILE '##NOCopyOfPPA##' FROM pollutantprocessassoc +WHERE processID=##context.iterProcess.databaseKey## +AND pollutantID in (##pollutantIDs##); + +cache SELECT polProcessID,modelYearID,modelYearGroupID,fuelMYGroupID +INTO OUTFILE '##NOCopyOfPPMY##' FROM pollutantprocessmappedmodelyear +WHERE polProcessID IN (##pollutantProcessIDs##) +and modelYearID <= ##context.year## +and modelYearID >= ##context.year## - 30; +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing +DROP TABLE IF EXISTS NOCalculation1; + +CREATE TABLE NOCalculation1 ( + polProcessID int, + processID smallint(6), + pollutantID smallint(6), + sourceTypeID smallint(6), + fuelTypeID smallint(6), + modelYearID smallint(6), + NOxRatio float +); + +-- @algorithm To simplify future table joins, add dimensions to NOxRatio. +INSERT INTO NOCalculation1 ( + polProcessID, + processID, + pollutantID, + sourceTypeID, + fuelTypeID, + modelYearID, + NOxRatio ) +SELECT + nnr.polProcessID, + ppa.processID, + ppa.pollutantID, + nnr.sourceTypeID, + nnr.fuelTypeID, + ppmy.modelYearID, + nnr.NOxRatio +FROM NOCopyOfNONO2Ratio nnr + INNER JOIN NOCopyOfPPA ppa ON nnr.polProcessID = ppa.polProcessID + INNER JOIN NOCopyOfSourceUseType ns ON nnr.sourceTypeID = ns.sourceTypeID + INNER JOIN NOCopyOfPPMY ppmy ON nnr.modelYearGroupID = ppmy.modelYearGroupID + AND ppa.polProcessID = ppmy.polProcessID; + +create index index1 on NOCalculation1 (processID, sourceTypeID, pollutantID, modelYearID, fuelTypeID); + +CREATE INDEX MOVESWorkerOutput_New1 ON MOVESWorkerOutput ( + fuelTypeID ASC, + modelyearID ASC, + sourceTypeID ASC, + pollutantID ASC, + processID ASC +); +CREATE INDEX NOCalculation1_New1 ON NOCalculation1 ( + fuelTypeID ASC, + modelyearID ASC, + sourceTypeID ASC +); + +DROP TABLE IF EXISTS NOMOVESOutputTemp1; + +-- @algorithm emissionQuant = NOxRatio * Oxides of Nitrogen (3). +CREATE TABLE NOMOVESOutputTemp1 +SELECT + mwo.MOVESRunID, mwo.iterationID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, + mwo.linkID, noc.pollutantID, noc.processID, + noc.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, + mwo.roadTypeID, mwo.SCC, + mwo.emissionQuant as NOx, + noc.NOxRatio, + (noc.NOxRatio * mwo.emissionQuant) as emissionQuant, + (noc.NOxRatio * mwo.emissionRate) as emissionRate +FROM + MOVESWorkerOutput mwo, NOCalculation1 noc +WHERE + mwo.fuelTypeID = noc.fuelTypeID AND + mwo.modelyearID = noc.modelyearID AND + mwo.sourceTypeID = noc.sourceTypeID AND + mwo.pollutantID = 3 AND + mwo.processID = ##context.iterProcess.databaseKey##; + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate) +SELECT + MOVESRunID,iterationID, yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate +FROM NOMOVESOutputTemp1; + +alter table MOVESWorkerOutput drop index MOVESWorkerOutput_New1; +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS NOCopyOfSourceUseType; +DROP TABLE IF EXISTS NOMOVESOutputTemp1; +DROP TABLE IF EXISTS NOCalculation1; +DROP TABLE IF EXISTS NOCopyOfNONO2Ratio; +DROP TABLE IF EXISTS NOCopyOfFuelType; +DROP TABLE IF EXISTS NOCopyOfPPA; +DROP TABLE IF EXISTS NOCopyOfPPMY; +-- End Section Cleanup diff --git a/database/NRAirToxicsCalculator.sql b/database/NRAirToxicsCalculator.sql new file mode 100644 index 0000000..34fb0b0 --- /dev/null +++ b/database/NRAirToxicsCalculator.sql @@ -0,0 +1,86 @@ +-- Author Wesley Faler +-- Version 2015-04-07 + +-- @algorithm +-- @owner Nonroad Air toxics Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.nrATRatio##; +TRUNCATE nrATRatio; + +##create.nrDioxinEmissionRate##; +TRUNCATE nrDioxinEmissionRate; + +##create.nrIntegratedSpecies##; +TRUNCATE nrIntegratedSpecies; + +##create.nrMetalEmissionRate##; +TRUNCATE nrMetalEmissionRate; + +##create.nrPAHGasRatio##; +TRUNCATE nrPAHGasRatio; + +##create.nrPAHParticleRatio##; +TRUNCATE nrPAHParticleRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- Section UsenrATRatio +cache select pollutantID, processID, engTechID, fuelSubtypeID, nrHPCategory, atRatio +into outfile '##nratratio##' +from nrATRatio +where (pollutantID*100+processID) in (##outputnrATRatio##); +-- End Section UsenrATRatio + +-- Section UsenrDioxinEmissionRate +cache select pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, meanBaseRate +into outfile '##nrdioxinemissionrate##' +from nrDioxinEmissionRate +where (pollutantID*100+processID) in (##outputnrDioxinEmissionRate##); +-- End Section UsenrDioxinEmissionRate + +-- Section UseNonHAPTOG +cache select pollutantID +into outfile '##nrintegratedspecies##' +from nrIntegratedSpecies; +-- End Section UseNonHAPTOG + +-- Section UsenrMetalEmissionRate +cache select pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, meanBaseRate +into outfile '##nrmetalemissionrate##' +from nrMetalEmissionRate +where (pollutantID*100+processID) in (##outputnrMetalEmissionRate##); +-- End Section UsenrMetalEmissionRate + +-- Section UsenrPAHGasRatio +cache select pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, atratio +into outfile '##nrpahgasratio##' +from nrPAHGasRatio +where (pollutantID*100+processID) in (##outputnrPAHGasRatio##); +-- End Section UsenrPAHGasRatio + +-- Section UsenrPAHParticleRatio +cache select pollutantID, processID, fuelTypeID, engTechID, nrHPCategory, atratio +into outfile '##nrpahparticleratio##' +from nrPAHParticleRatio +where (pollutantID*100+processID) in (##outputnrPAHParticleRatio##); +-- End Section UsenrPAHParticleRatio + +-- End Section Extract Data + +-- Section Processing + +-- All processing logic is done in the external calculator. + +-- End Section Processing + +-- Section Cleanup + +-- End Section Cleanup + +-- Section Final Cleanup +-- End Section Final Cleanup diff --git a/database/NRHCSpeciationCalculator.sql b/database/NRHCSpeciationCalculator.sql new file mode 100644 index 0000000..fe43e73 --- /dev/null +++ b/database/NRHCSpeciationCalculator.sql @@ -0,0 +1,45 @@ +-- Author Wesley Faler +-- Version 2015-02-07 + +-- @algorithm +-- @owner Nonroad HC Speciation Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.nrHCSpeciation##; +TRUNCATE TABLE nrHCSpeciation; + +##create.nrMethaneTHCRatio##; +TRUNCATE TABLE nrMethaneTHCRatio; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache select pollutantID,processID,engTechID,fuelSubtypeID,nrHPCategory,speciationConstant +into outfile '##nrhcspeciation##' +from nrHCSpeciation +where (pollutantID*100+processID) in (##hcPolProcessIDs##); + +cache select processID,engTechID,fuelSubtypeID,nrHPCategory,CH4THCRatio +into outfile '##nrMethaneTHCRatio##' +from nrMethaneTHCRatio +where processID in (##hcProcessIDs##) +and fuelSubTypeID in (##macro.csv.all.nrFuelSubTypeID##); + +-- End Section Extract Data + +-- Section Processing + +-- All processing logic is done in the external calculator. + +-- End Section Processing + +-- Section Cleanup +drop table if exists HCETOHBin; +drop table if exists nrHCSpeciation; +-- End Section Cleanup + +-- Section Final Cleanup +-- End Section Final Cleanup diff --git a/database/NonroadCalculator.sql b/database/NonroadCalculator.sql new file mode 100644 index 0000000..0813610 --- /dev/null +++ b/database/NonroadCalculator.sql @@ -0,0 +1,43 @@ +-- Nonroad calculator script. +-- Author Wesley Faler +-- Version 2015-04-07 + +-- @algorithm +-- @owner Nonroad Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +##create.nrequipmenttype##; +TRUNCATE TABLE nrequipmenttype; + +##create.nrscc##; +TRUNCATE TABLE nrscc; + +##create.engineTech##; +TRUNCATE TABLE engineTech; + +##create.nrsourceusetype##; +TRUNCATE TABLE nrsourceusetype; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing + +nonroad monthToRealDayFactor=##NRmonthToRealDayFactor## ##NRPolProcessIDs##; + +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS nrequipmenttype; +DROP TABLE IF EXISTS nrscc; +DROP TABLE IF EXISTS enginetech; +DROP TABLE IF EXISTS nrsourceusetype; +-- End Section Cleanup diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment.sql b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment.sql new file mode 100644 index 0000000..3bba50d --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment.sql @@ -0,0 +1,156 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per operating hour by equipment type +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_OperatingHour_by_Equipment +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index100'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index100 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get hours of activity +drop table if exists hours; +create table hours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + fuelTypeID, + modelYearID, + engTechID, + hpID, + activity as hours +from movesactivityoutput +where activitytypeid = 2; + +create index index1 on hours (MOVESRunID,yearID,monthID,dayID,stateID,countyID); +create index index2 on hours (SCC); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + + +-- Get inventories by equipment type +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); + + +-- Get hours by equipment type +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + sum(hours) as hours +from hours +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_OperatingHour_by_Equipment; +create table EmissionFactors_per_OperatingHour_by_Equipment +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hours, + IF(b2.hours != 0, b1.emissionQuant / b2.hours, NULL) as emissionRate, + 'g/hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid); + +drop table if exists temp1; +drop table if exists temp2; +drop table if exists hours; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment_and_Horsepower.sql b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment_and_Horsepower.sql new file mode 100644 index 0000000..60bc6ce --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_Equipment_and_Horsepower.sql @@ -0,0 +1,163 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per operating hour by equipment type +-- and horsepower class +-- +-- MOVES-Nonroad Output Guidance: +-- SCC and HP class must be selected and present in the results. +-- This script will run faster if model year and engine tech +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_operatinghour_by_Equipment_and_Horsepower +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index102'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index102 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,hpID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get hours of activity +drop table if exists hours; +create table hours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + fuelTypeID, + modelYearID, + engTechID, + hpID, + activity as hours +from movesactivityoutput +where activitytypeid = 2; + +create index index1 on hours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID); +create index index2 on hours (SCC); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + + +-- Get inventories by equipment type and hpID +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); +create index index3 on temp1 (hpID); + +-- Get hours by equipment type and hpID +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + sum(hours) as hours +from hours +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_operatinghour_by_Equipment_and_Horsepower; +create table EmissionFactors_per_operatinghour_by_Equipment_and_Horsepower +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.hpID, + h.binName as hpBin, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hours, + IF(b2.hours != 0, b1.emissionQuant / b2.hours, NULL) as emissionRate, + 'g/hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.hpID=b2.hpID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid) +left join ##defaultdb##.nrhprangebin h on (b1.hpID = h.NRHPRangeBinID); + +drop table if exists hours; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_SCC.sql b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_SCC.sql new file mode 100644 index 0000000..14aea34 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_OperatingHour_by_SCC.sql @@ -0,0 +1,146 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per operating hour by SCC +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_operatinghour_by_SCC +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index101'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index101 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get hours of activity +drop table if exists hours; +create table hours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + fuelTypeID, + modelYearID, + engTechID, + hpID, + activity as hours +from movesactivityoutput +where activitytypeid = 2; + +create index index1 on hours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + + +-- Get inventories by SCC +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); +create index index2 on temp1 (scc); + + +-- Get hours by SCC +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + sum(hours) as hours +from hours +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_operatinghour_by_SCC; +create table EmissionFactors_per_operatinghour_by_SCC +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.scc, + s.description as sccDescription, + s.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hours, + IF(b2.hours != 0, b1.emissionQuant / b2.hours, NULL) as emissionRate, + 'g/hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC)) +left join ##defaultdb##.nrscc s on (b1.scc=s.scc); + +drop table if exists hours; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment.sql b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment.sql new file mode 100644 index 0000000..5e3c234 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment.sql @@ -0,0 +1,152 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per vehicle by equipment type +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_Vehicle_by_Equipment +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index100'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index100 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get vehicle population +drop table if exists population; +create table population +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as population +from movesactivityoutput +where activitytypeid = 6; + +create index index1 on population (scc); + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by equipment type +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); + + +-- Get population by equipment type +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + sum(population) as population +from population +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_Vehicle_by_Equipment; +create table EmissionFactors_per_Vehicle_by_Equipment +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.population, + IF(b2.population != 0, b1.emissionQuant / b2.population, NULL) as emissionRate, + concat('g/vehicle per ',@timeUnits) as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid); + +drop table if exists population; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower.sql b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower.sql new file mode 100644 index 0000000..1ae4786 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower.sql @@ -0,0 +1,159 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per vehicle by equipment type and horsepower class +-- +-- MOVES-Nonroad Output Guidance: +-- SCC and HP class must be selected and present in the results. +-- This script will run faster if model year and engine tech +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index102'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index102 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,hpID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get vehicle population +drop table if exists population; +create table population +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as population +from movesactivityoutput +where activitytypeid = 6; + +create index index1 on population (scc); + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by equipment type and hpID +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); +create index index3 on temp1 (hpID); + + +-- Get population by equipment type and hpID +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + sum(population) as population +from population +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower; +create table EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.hpID, + h.binName as hpBin, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.population, + IF(b2.population != 0, b1.emissionQuant / b2.population, NULL) as emissionRate, + concat('g/vehicle per ',@timeUnits) as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.hpID=b2.hpID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid) +left join ##defaultdb##.nrhprangebin h on (b1.hpID = h.NRHPRangeBinID); + +drop table if exists temp1; +drop table if exists temp2; +drop table if exists population; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_SCC.sql b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_SCC.sql new file mode 100644 index 0000000..b139900 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_Vehicle_by_SCC.sql @@ -0,0 +1,143 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per vehicle by SCC +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_Vehicle_by_SCC +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index101'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index101 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Get vehicle population +drop table if exists population; +create table population +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as population +from movesactivityoutput +where activitytypeid = 6; + +create index index1 on population (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by SCC +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Get population by SCC +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + sum(population) as population +from population +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_Vehicle_by_SCC; +create table EmissionFactors_per_Vehicle_by_SCC +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.scc, + s.description as sccDescription, + s.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.population, + IF(b2.population != 0, b1.emissionQuant / b2.population, NULL) as emissionRate, + concat('g/vehicle per ',@timeUnits) as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC)) +left join ##defaultdb##.nrscc s on (b1.scc=s.scc); + +drop table if exists temp1; +drop table if exists temp2; +drop table if exists population; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment.sql b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment.sql new file mode 100644 index 0000000..3da7df5 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment.sql @@ -0,0 +1,245 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per horsepower-hour by equipment type +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_hphr_by_Equipment +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( movesrunid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index100'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index100 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Calculate total horsepower*hours*loadfactor before any aggregation occurs +-- Select all of the rows where the activity column represents source hours and +-- merge them with all of the rows where the activity column represents the average horsepower and +-- merge them with all of the rows where the activity column represents the load factor +drop table if exists sourceHours; +create table sourceHours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as sourceHours +from movesactivityoutput +where activitytypeid = 2; + +drop table if exists horsepower; +create table horsepower +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as avgHorsepower +from movesactivityoutput +where activitytypeid = 9; + +drop table if exists loadfactor; +create table loadfactor +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as loadFactor +from movesactivityoutput +where activitytypeid = 12; + +create index index1 on sourceHours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on horsepower (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on loadfactor (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +-- Note: b1.col = b2.col OR b1.col IS NULL AND b2.col IS NULL is used instead of just a simple +-- USING() command because USING() doesn't work if there are NULLs +-- Additionally, JOIN followed by ALTER is used instead of a single statement with multiple joins +-- because if the tables are very large, the separate statements are much faster +drop table if exists hphr; +create table hphr +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.SCC, + b1.modelYearID, + b1.engTechID, + b1.hpID, + b1.sourceHours, + b2.avgHorsepower +from sourceHours b1 +join horsepower b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC) AND + (b1.modelYearID=b2.modelYearID OR b1.modelYearID IS NULL AND b2.modelYearID IS NULL) AND + (b1.engTechID=b2.engTechID OR b1.engTechID IS NULL AND b2.engTechID IS NULL) AND + (b1.hpID=b2.hpID OR b1.hpID IS NULL AND b2.hpID IS NULL)); + +create index index1 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +alter table hphr add loadFactor double, add hpHours double; +update hphr b1, loadFactor b3 +set b1.loadFactor = b3.loadFactor, + b1.hpHours = avgHorsepower * sourceHours * b3.loadFactor + where ((b1.MOVESRunID=b3.MOVESRunID) AND + (b1.yearID=b3.yearID) AND + (b1.monthID=b3.monthID) AND + (b1.dayID=b3.dayID) AND + (b1.stateID=b3.stateID OR b1.stateID IS NULL AND b3.stateID IS NULL) AND + (b1.countyID=b3.countyID OR b1.countyID IS NULL AND b3.countyID IS NULL) AND + (b1.SCC=b3.SCC) AND + (b1.modelYearID=b3.modelYearID OR b1.modelYearID IS NULL AND b3.modelYearID IS NULL) AND + (b1.engTechID=b3.engTechID OR b1.engTechID IS NULL AND b3.engTechID IS NULL) AND + (b1.hpID=b3.hpID OR b1.hpID IS NULL AND b3.hpID IS NULL)); + +create index index2 on hphr (scc); + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by equipment type +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); + + +-- Get horsepower-hours by equipment type +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + n.fuelTypeID, + sum(hpHours) as hpHours +from hphr +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_hphr_by_Equipment; +create table EmissionFactors_per_hphr_by_Equipment +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hpHours, + IF(b2.hpHours != 0, b1.emissionQuant / b2.hpHours, NULL) as emissionRate, + 'g/hp-hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid); + +drop table if exists sourceHours; +drop table if exists horsepower; +drop table if exists loadfactor; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists hphr; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment_and_Horsepower.sql b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment_and_Horsepower.sql new file mode 100644 index 0000000..b6389ee --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_Equipment_and_Horsepower.sql @@ -0,0 +1,253 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per horsepower-hour by equipment type +-- and horsepower class +-- +-- MOVES-Nonroad Output Guidance: +-- SCC and HP class must be selected and present in the results. +-- This script will run faster if model year and engine tech +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_hphr_by_Equipment_and_Horsepower +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index102'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index102 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,hpID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Calculate total horsepower*hours*loadfactor before any aggregation occurs +-- Select all of the rows where the activity column represents source hours and +-- merge them with all of the rows where the activity column represents the average horsepower and +-- merge them with all of the rows where the activity column represents the load factor +drop table if exists sourceHours; +create table sourceHours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as sourceHours +from movesactivityoutput +where activitytypeid = 2; + +drop table if exists horsepower; +create table horsepower +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as avgHorsepower +from movesactivityoutput +where activitytypeid = 9; + +drop table if exists loadfactor; +create table loadfactor +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as loadFactor +from movesactivityoutput +where activitytypeid = 12; + +create index index1 on sourceHours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on horsepower (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on loadfactor (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +-- Note: b1.col = b2.col OR b1.col IS NULL AND b2.col IS NULL is used instead of just a simple +-- USING() command because USING() doesn't work if there are NULLs +-- Additionally, JOIN followed by ALTER is used instead of a single statement with multiple joins +-- because if the tables are very large, the separate statements are much faster +drop table if exists hphr; +create table hphr +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.SCC, + b1.modelYearID, + b1.engTechID, + b1.hpID, + b1.sourceHours, + b2.avgHorsepower +from sourceHours b1 +join horsepower b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC) AND + (b1.modelYearID=b2.modelYearID OR b1.modelYearID IS NULL AND b2.modelYearID IS NULL) AND + (b1.engTechID=b2.engTechID OR b1.engTechID IS NULL AND b2.engTechID IS NULL) AND + (b1.hpID=b2.hpID)); + +create index index1 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +alter table hphr add loadFactor double, add hpHours double; +update hphr b1, loadFactor b3 +set b1.loadFactor = b3.loadFactor, + b1.hpHours = avgHorsepower * sourceHours * b3.loadFactor + where ((b1.MOVESRunID=b3.MOVESRunID) AND + (b1.yearID=b3.yearID) AND + (b1.monthID=b3.monthID) AND + (b1.dayID=b3.dayID) AND + (b1.stateID=b3.stateID OR b1.stateID IS NULL AND b3.stateID IS NULL) AND + (b1.countyID=b3.countyID OR b1.countyID IS NULL AND b3.countyID IS NULL) AND + (b1.SCC=b3.SCC) AND + (b1.modelYearID=b3.modelYearID OR b1.modelYearID IS NULL AND b3.modelYearID IS NULL) AND + (b1.engTechID=b3.engTechID OR b1.engTechID IS NULL AND b3.engTechID IS NULL) AND + (b1.hpID=b3.hpID)); + +create index index2 on hphr (scc); + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by equipment type and hpID +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); +create index index2 on temp1 (nrEquipTypeID); +create index index3 on temp1 (hpID); + + +-- Get horsepower-hours by equipment type and hpID +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + nrEquipTypeID, + hpID, + n.fuelTypeID, + sum(hpHours) as hpHours +from hphr +left join ##defaultdb##.nrscc n using (scc) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,n.fuelTypeID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,nrEquipTypeID,hpID,fuelTypeID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_hphr_by_Equipment_and_Horsepower; +create table EmissionFactors_per_hphr_by_Equipment_and_Horsepower +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + e.description as equipDescription, + b1.hpID, + h.binName as hpBin, + b1.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hpHours, + IF(b2.hpHours != 0, b1.emissionQuant / b2.hpHours, NULL) as emissionRate, + 'g/hp-hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.nrEquipTypeID=b2.nrEquipTypeID) AND + (b1.hpID=b2.hpID) AND + (b1.fuelTypeID=b2.fuelTypeID)) +left join ##defaultdb##.nrequipmenttype e on (b1.nrequiptypeid = e.nrequiptypeid) +left join ##defaultdb##.nrhprangebin h on (b1.hpID = h.NRHPRangeBinID); + +drop table if exists sourceHours; +drop table if exists loadfactor; +drop table if exists horsepower; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists hphr; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC.sql b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC.sql new file mode 100644 index 0000000..4f5eeb6 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC.sql @@ -0,0 +1,237 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per horsepower-hour by SCC +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. This script +-- will run faster if model year, engine tech, and HP class +-- are not selected, and if there is only one sector, year, +-- month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_hphr_by_SCC +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index101'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index101 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Calculate total horsepower*hours*loadfactor before any aggregation occurs +-- Select all of the rows where the activity column represents source hours and +-- merge them with all of the rows where the activity column represents the average horsepower and +-- merge them with all of the rows where the activity column represents the load factor +drop table if exists sourceHours; +create table sourceHours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as sourceHours +from movesactivityoutput +where activitytypeid = 2; + +drop table if exists horsepower; +create table horsepower +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as avgHorsepower +from movesactivityoutput +where activitytypeid = 9; + +drop table if exists loadfactor; +create table loadfactor +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as loadFactor +from movesactivityoutput +where activitytypeid = 12; + +create index index1 on sourceHours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on horsepower (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on loadfactor (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +-- Note: b1.col = b2.col OR b1.col IS NULL AND b2.col IS NULL is used instead of just a simple +-- USING() command because USING() doesn't work if there are NULLs +-- Additionally, JOIN followed by ALTER is used instead of a single statement with multiple joins +-- because if the tables are very large, the separate statements are much faster +drop table if exists hphr; +create table hphr +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.SCC, + b1.modelYearID, + b1.engTechID, + b1.hpID, + b1.sourceHours, + b2.avgHorsepower +from sourceHours b1 +join horsepower b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC) AND + (b1.modelYearID=b2.modelYearID OR b1.modelYearID IS NULL AND b2.modelYearID IS NULL) AND + (b1.engTechID=b2.engTechID OR b1.engTechID IS NULL AND b2.engTechID IS NULL) AND + (b1.hpID=b2.hpID OR b1.hpID IS NULL AND b2.hpID IS NULL)); + +create index index1 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +alter table hphr add loadFactor double, add hpHours double; +update hphr b1, loadFactor b3 +set b1.loadFactor = b3.loadFactor, + b1.hpHours = avgHorsepower * sourceHours * b3.loadFactor + where ((b1.MOVESRunID=b3.MOVESRunID) AND + (b1.yearID=b3.yearID) AND + (b1.monthID=b3.monthID) AND + (b1.dayID=b3.dayID) AND + (b1.stateID=b3.stateID OR b1.stateID IS NULL AND b3.stateID IS NULL) AND + (b1.countyID=b3.countyID OR b1.countyID IS NULL AND b3.countyID IS NULL) AND + (b1.SCC=b3.SCC) AND + (b1.modelYearID=b3.modelYearID OR b1.modelYearID IS NULL AND b3.modelYearID IS NULL) AND + (b1.engTechID=b3.engTechID OR b1.engTechID IS NULL AND b3.engTechID IS NULL) AND + (b1.hpID=b3.hpID OR b1.hpID IS NULL AND b3.hpID IS NULL)); + +create index index2 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by SCC +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + pollutantID, + processID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc,pollutantID,processID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); +create index index2 on temp1 (scc); + + +-- Get horsepower-hours by SCC +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + scc, + sum(hpHours) as hpHours +from hphr +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,scc); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_hphr_by_SCC; +create table EmissionFactors_per_hphr_by_SCC +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.scc, + s.description as sccDescription, + s.fuelTypeID, + b1.pollutantID, + b1.processID, + b1.emissionQuant, + b2.hpHours, + IF(b2.hpHours != 0, b1.emissionQuant / b2.hpHours, NULL) as emissionRate, + 'g/hp-hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC)) +left join ##defaultdb##.nrscc s on (b1.scc=s.scc); + +drop table if exists sourceHours; +drop table if exists horsepower; +drop table if exists loadfactor; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists hphr; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC_and_ModelYear.sql b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC_and_ModelYear.sql new file mode 100644 index 0000000..ec7a4d1 --- /dev/null +++ b/database/NonroadProcessingScripts/EmissionFactors_per_hphr_by_SCC_and_ModelYear.sql @@ -0,0 +1,250 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emission factors in grams per horsepower-hour by SCC, horsepower class, +-- and model year +-- +-- MOVES-Nonroad Output Guidance: +-- SCC, HP class, and model year must be selected and present in the +-- results. This script will run faster if engine tech is not selected. +-- It is strongly recommended to only have one sector and fuel type per +-- output database when running this script. Additionally, this script +-- will run faster if there is only one year, month, and day in the output. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- EmissionFactors_per_hphr_by_SCC_and_ModelYear +-- +-- WARNING: +-- This script may take a long time to complete depending on +-- the size of the output database. A confirmation notice will +-- alert you when this action has completed. + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index103'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index103 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,pollutantID,processID,modelYearID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index10'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index10 on movesactivityoutput ( activitytypeid )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get time units +set @timeUnits := (select timeUnits from movesrun limit 1); + +-- Calculate total horsepower*hours*loadfactor before any aggregation occurs +-- Select all of the rows where the activity column represents source hours and +-- merge them with all of the rows where the activity column represents the average horsepower and +-- merge them with all of the rows where the activity column represents the load factor +drop table if exists sourceHours; +create table sourceHours +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as sourceHours +from movesactivityoutput +where activitytypeid = 2; + +drop table if exists horsepower; +create table horsepower +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as avgHorsepower +from movesactivityoutput +where activitytypeid = 9; + +drop table if exists loadfactor; +create table loadfactor +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + modelYearID, + engTechID, + hpID, + activity as loadFactor +from movesactivityoutput +where activitytypeid = 12; + +create index index1 on sourceHours (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on horsepower (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); +create index index1 on loadfactor (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +-- Note: b1.col = b2.col OR b1.col IS NULL AND b2.col IS NULL is used instead of just a simple +-- USING() command because USING() doesn't work if there are NULLs +-- Additionally, JOIN followed by ALTER is used instead of a single statement with multiple joins +-- because if the tables are very large, the separate statements are faster +drop table if exists hphr; +create table hphr +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.SCC, + b1.modelYearID, + b1.engTechID, + b1.hpID, + b1.sourceHours, + b2.avgHorsepower +from sourceHours b1 +join horsepower b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC) AND + (b1.modelYearID=b2.modelYearID) AND + (b1.engTechID=b2.engTechID OR b1.engTechID IS NULL AND b2.engTechID IS NULL) AND + (b1.hpID=b2.hpID)); + +create index index1 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,modelYearID,engTechID,hpID); + +alter table hphr add loadFactor double, add hpHours double; +update hphr b1, loadfactor b3 +set b1.loadFactor = b3.loadFactor, + b1.hpHours = avgHorsepower * sourceHours * b3.loadFactor + where ((b1.MOVESRunID=b3.MOVESRunID) AND + (b1.yearID=b3.yearID) AND + (b1.monthID=b3.monthID) AND + (b1.dayID=b3.dayID) AND + (b1.stateID=b3.stateID OR b1.stateID IS NULL AND b3.stateID IS NULL) AND + (b1.countyID=b3.countyID OR b1.countyID IS NULL AND b3.countyID IS NULL) AND + (b1.SCC=b3.SCC) AND + (b1.modelYearID=b3.modelYearID) AND + (b1.engTechID=b3.engTechID OR b1.engTechID IS NULL AND b3.engTechID IS NULL) AND + (b1.hpID=b3.hpID)); + +create index index2 on hphr (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,modelYearID); + + +-- Set up unit conversions table +drop table if exists units; +create table units (fromUnit char(5), factor double, description text); +insert into units values +('ton', 907185, 'From U.S. tons to grams'), +('lb', 453.592, 'From lbm to grams'), +('kg', 1000, 'From kg to grams'), +('g', 1, 'From grams to grams'); + +-- Get inventories by SCC and hpID +drop table if exists temp1; +create table temp1 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + hpID, + pollutantID, + processID, + modelYearID, + units.factor * sum(emissionQuant) as emissionQuant +from movesoutput m +left join movesrun using (movesrunid) +left join units on (movesrun.massUnits = units.fromUnit) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,pollutantID,processID,modelYearID; + +create index index1 on temp1 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,modelYearID); +create index index2 on temp1 (SCC); +create index index3 on temp1 (hpID); + + +-- Get horsepower-hours by SCC and hpID +drop table if exists temp2; +create table temp2 +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + SCC, + hpID, + modelYearID, + sum(hpHours) as hpHours +from hphr +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,modelYearID; + +create index index1 on temp2 (MOVESRunID,yearID,monthID,dayID,stateID,countyID,SCC,hpID,modelYearID); + + +-- Join temp1 and temp2 and calculate the emission rate for the resulting output table +drop table if exists EmissionFactors_per_hphr_by_SCC_and_ModelYear; +create table EmissionFactors_per_hphr_by_SCC_and_ModelYear +select + b1.MOVESRunID, + b1.yearID, + b1.monthID, + b1.dayID, + b1.stateID, + b1.countyID, + b1.SCC, + s.description as sccDescription, + s.fuelTypeID, + b1.hpID, + h.binName as hpBin, + b1.pollutantID, + b1.processID, + b1.modelYearID, + b1.emissionQuant, + b2.hpHours, + IF(b2.hpHours != 0, b1.emissionQuant / b2.hpHours, NULL) as emissionRate, + 'g/hp-hr' as emissionRateUnits +from temp1 b1 +inner join temp2 b2 + on ((b1.MOVESRunID=b2.MOVESRunID) AND + (b1.yearID=b2.yearID) AND + (b1.monthID=b2.monthID) AND + (b1.dayID=b2.dayID) AND + (b1.stateID=b2.stateID OR b1.stateID IS NULL AND b2.stateID IS NULL) AND + (b1.countyID=b2.countyID OR b1.countyID IS NULL AND b2.countyID IS NULL) AND + (b1.SCC=b2.SCC) AND + (b1.hpID=b2.hpID) AND + (b1.modelYearID=b2.modelYearID)) +left join ##defaultdb##.nrscc s on (b1.scc=s.scc) +left join ##defaultdb##.nrhprangebin h on (b1.hpID=h.NRHPRangeBinID); + +drop table if exists sourceHours; +drop table if exists loadfactor; +drop table if exists horsepower; +drop table if exists temp1; +drop table if exists temp2; +drop table if exists hphr; +drop table if exists units; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_County_FuelType_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_County_FuelType_Pollutant.sql new file mode 100644 index 0000000..e205991 --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_County_FuelType_Pollutant.sql @@ -0,0 +1,41 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by county, fuel type, and pollutant +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_County_FuelType_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index3'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index3 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,fueltypeID,fuelSubTypeID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Select inventory +drop table if exists Inventory_by_County_FuelType_Pollutant; +create table Inventory_by_County_FuelType_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + fueltypeID, + fuelSubTypeID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeunits, + massunits +from movesoutput +left join movesrun USING (movesrunid) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,fueltypeID,fuelSubTypeID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_County_and_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_County_and_Pollutant.sql new file mode 100644 index 0000000..980e2dd --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_County_and_Pollutant.sql @@ -0,0 +1,39 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by county and pollutant +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_County_and_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index5'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index5 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Select inventory +drop table if exists Inventory_by_County_and_Pollutant; +create table Inventory_by_County_and_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeunits, + massunits +from movesoutput +left join movesrun USING (movesrunid) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_EquipmentType_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_EquipmentType_Pollutant.sql new file mode 100644 index 0000000..27207a4 --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_EquipmentType_Pollutant.sql @@ -0,0 +1,52 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by equipment type and pollutant +-- +-- MOVES-Nonroad Output Guidance: +-- SCC must be selected and present in the results. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_EquipmentType_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index3'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index3 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,fuelTypeID,fuelSubTypeID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get inventories by equipment type and hpID +drop table if exists Inventory_by_EquipmentType_Pollutant; +create table Inventory_by_EquipmentType_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + e.description as equipDescription, + fuelTypeID, + fuelSubTypeID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeUnits, + massUnits +from movesoutput m +left join movesrun using (movesrunid) +left join ##defaultdb##.nrscc n using (scc) +left join ##defaultdb##.nrequipmenttype e using (nrequiptypeid) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,e.description,fuelTypeID,fuelSubTypeID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_Equipment_Horsepower_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_Equipment_Horsepower_Pollutant.sql new file mode 100644 index 0000000..24f2c41 --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_Equipment_Horsepower_Pollutant.sql @@ -0,0 +1,55 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by equipment type, horsepower, and pollutant +-- +-- MOVES-Nonroad Output Guidance: +-- SCC and HP class must be selected and present in the results. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_Equipment_Horsepower_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index3'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index3 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,fuelTypeID,fuelSubTypeID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Get inventories by equipment type and hpID +drop table if exists Inventory_by_Equipment_Horsepower_Pollutant; +create table Inventory_by_Equipment_Horsepower_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + e.description as equipDescription, + hpID, + h.binName as hpBin, + fuelTypeID, + fuelSubTypeID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeUnits, + massUnits +from movesoutput m +left join movesrun using (movesrunid) +left join ##defaultdb##.nrscc n using (scc) +left join ##defaultdb##.nrequipmenttype e using (nrequiptypeid) +left join ##defaultdb##.nrhprangebin h on (m.hpID = h.NRHPRangeBinID) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,e.description,hpID,fuelTypeID,fuelSubTypeID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_Sector_Horsepower_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_Sector_Horsepower_Pollutant.sql new file mode 100644 index 0000000..5c75582 --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_Sector_Horsepower_Pollutant.sql @@ -0,0 +1,55 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by sector, horsepower, and pollutant +-- +-- MOVES-Nonroad Output Guidance: +-- SCC and HP class must be selected and present in the results. +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_Sector_Horsepower_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesoutput ( scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index3'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index3 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,fuelTypeID,fuelSubTypeID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + + +-- Get inventories by equipment type and hpID +drop table if exists Inventory_by_Sector_Horsepower_Pollutant; +create table Inventory_by_Sector_Horsepower_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + hpID, + h.binName as hpBin, + fuelTypeID, + fuelSubTypeID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeUnits, + massUnits +from movesoutput m +left join movesrun using (movesrunid) +left join ##defaultdb##.nrscc n using (scc) +left join ##defaultdb##.nrequipmenttype e using (nrequiptypeid) +left join ##defaultdb##.nrhprangebin h on (m.hpID = h.NRHPRangeBinID) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,hpID,fuelTypeID,fuelSubTypeID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Inventory_by_Sector_SCC_Pollutant.sql b/database/NonroadProcessingScripts/Inventory_by_Sector_SCC_Pollutant.sql new file mode 100644 index 0000000..685fb80 --- /dev/null +++ b/database/NonroadProcessingScripts/Inventory_by_Sector_SCC_Pollutant.sql @@ -0,0 +1,43 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Emissions inventory by sector, SCC, and pollutant +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Inventory_by_Sector_SCC_Pollutant + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index1'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index1 on movesoutput ( MOVESRunID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesoutput' and index_name = 'index4'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index4 on movesoutput ( MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,scc,fuelTypeID,fuelSubTypeID,pollutantID,processID )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + + +-- Get inventories by SCC +drop table if exists Inventory_by_Sector_SCC_Pollutant; +create table Inventory_by_Sector_SCC_Pollutant +select + MOVESRunID, + yearID, + monthID, + dayID, + stateID, + countyID, + sectorID, + scc, + fuelTypeID, + fuelSubTypeID, + pollutantID, + processID, + sum(emissionQuant) as emissionQuant, + timeUnits, + massUnits +from movesoutput m +left join movesrun using (movesrunid) +group by MOVESRunID,yearID,monthID,dayID,stateID,countyID,sectorID,scc,fuelTypeID,fuelSubTypeID,pollutantID,processID; \ No newline at end of file diff --git a/database/NonroadProcessingScripts/Population_by_Sector_and_SCC.sql b/database/NonroadProcessingScripts/Population_by_Sector_and_SCC.sql new file mode 100644 index 0000000..778d913 --- /dev/null +++ b/database/NonroadProcessingScripts/Population_by_Sector_and_SCC.sql @@ -0,0 +1,34 @@ +-- Nonroad Post Processing Script (updated 7/26/2018): +-- Inventory population by sector and SCC +-- +-- When prompted to save, specify one of the following file types: .xlsx, .xls, or .txt +-- The raw output of this script is also stored in the output database in a table called: +-- Population_by_Sector_and_SCC + +flush tables; + +-- Set up indexing +set @exist := (select count(*) from information_schema.statistics where table_schema = DATABASE() and table_name = 'movesactivityoutput' and index_name = 'index2'); +set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index index2 on movesactivityoutput ( MOVESRunID,yearID,monthID,dayID,countyID,fuelTypeID,sectorID,scc )'); +PREPARE stmt FROM @sqlstmt; +EXECUTE stmt; + +-- Select population information +drop table if exists Population_by_Sector_and_SCC; +create table Population_by_Sector_and_SCC +select + MOVESRunID, + yearID, + monthID, + dayID, + countyID, + fuelTypeID, + sectorID, + scc, + sum(activity) as population, + timeunits, + massunits +from movesactivityoutput +left join movesrun USING (movesrunid) +where activitytypeid = 6 +group by MOVESRunID,yearID,monthID,dayID,countyID,fuelTypeID,sectorID,scc; \ No newline at end of file diff --git a/database/OnRoadRetrofitImporter.sql b/database/OnRoadRetrofitImporter.sql new file mode 100644 index 0000000..df48b46 --- /dev/null +++ b/database/OnRoadRetrofitImporter.sql @@ -0,0 +1,74 @@ +-- Author Wesley Faler +-- Version 2012-10-01 + +drop procedure if exists spCheckOnRoadRetrofitImporter; + +BeginBlock +create procedure spCheckOnRoadRetrofitImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure for national domain + -- Mode 2 is run to check overall success/failure for county and project domains + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + -- The beginModelYearID must be earlier or the same as the retrofitYearID. If not, an ERROR message shall appear and the tab header shall show a red X. + insert into importTempMessages (message) + select distinct concat('ERROR: beginModelYearID ',beginModelYearID,' must be the same or before the calendar year ',retrofitYearID) as errorMessage + from onRoadRetrofit + where beginModelYearID > retrofitYearID; + + -- The endModelYearID must be earlier or the same as the retrofitYearID. If not, an ERROR message shall appear and the tab header shall show a red X. + insert into importTempMessages (message) + select distinct concat('ERROR: endModelYearID ',endModelYearID,' must be the same or before the calendar year ',retrofitYearID) as errorMessage + from onRoadRetrofit + where endModelYearID > retrofitYearID; + + -- The endModelYearID must be the same or after the beginModelYearID. If not, an ERROR message shall appear and the tab header shall show a red X. + insert into importTempMessages (message) + select distinct concat('ERROR: endModelYearID ',endModelYearID,' must be the same or before beginModelYearID ',beginModelYearID) as errorMessage + from onRoadRetrofit + where endModelYearID < beginModelYearID; + + -- The new input is cumFractionRetrofit and is the total retrofit coverage at a given calendar year. It cannot be greater than 1.0 or less than 0.0. If it is, an ERROR message shall appear and the tab header shall show a red X. + insert into importTempMessages (message) + select distinct concat('ERROR: cumFractionRetrofit (',round(cumFractionRetrofit,4),') must be less than or equal to 1.0000') as errorMessage + from onRoadRetrofit + where round(cumFractionRetrofit,4) > 1.0000; + + insert into importTempMessages (message) + select distinct concat('ERROR: cumFractionRetrofit (',round(cumFractionRetrofit,4),') must be greater than or equal to 0.0000') as errorMessage + from onRoadRetrofit + where round(cumFractionRetrofit,4) < 0.0000; + + -- The retrofitEffectiveFraction must not be greater than 1. If it is, an ERROR message shall appear and the tab header shall show a red X. + insert into importTempMessages (message) + select distinct concat('ERROR: retrofitEffectiveFraction (',round(retrofitEffectiveFraction,4),') must be less than or equal to 1.0000') as errorMessage + from onRoadRetrofit + where round(retrofitEffectiveFraction,4) > 1.0000; + + -- The retrofitEffectiveFraction can be less than 0 (i.e. negative). If it is, a NOTE message shall appear stating that the retrofit program will result in increased emissions. + insert into importTempMessages (message) + select distinct concat('NOTE: retrofitEffectiveFraction (',round(retrofitEffectiveFraction,4),') will increase emissions') as errorMessage + from onRoadRetrofit + where round(retrofitEffectiveFraction,4) < 0.0000; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR:%'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode >= 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckOnRoadRetrofitImporter(); +drop procedure if exists spCheckOnRoadRetrofitImporter; diff --git a/database/OpModeDistributionImporter.sql b/database/OpModeDistributionImporter.sql new file mode 100644 index 0000000..91d3d34 --- /dev/null +++ b/database/OpModeDistributionImporter.sql @@ -0,0 +1,36 @@ +-- Author Wesley Faler +-- Version 2013-11-12 + +drop procedure if exists spCheckOpModeDistributionImporter; + +BeginBlock +create procedure spCheckOpModeDistributionImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure, allowing data from the default database + -- Mode 2 is run to check overall success/failure, requiring no data from the default database + declare mode int default ##mode##; + + -- Scale 0 is national + -- Scale 1 is single county + -- Scale 2 is project domain + declare scale int default ##scale##; + + declare howMany int default 0; + + -- opModeDistribution + set howMany=0; + select count(*) into howMany from opModeDistribution; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + insert into importTempMessages (message) + select concat('ERROR: Source type ',sourceTypeID,', hourDayID ',hourDayID,', link ',linkID,', polProcessID ',polProcessID,' opmodeFraction is not 1.0 but instead ',round(sum(opModeFraction),4)) + from opModeDistribution + group by sourceTypeID, hourDayID, linkID, polProcessID + having round(sum(opModeFraction),4) <> 1.0000; + end if; +end +EndBlock + +call spCheckOpModeDistributionImporter(); +drop procedure if exists spCheckOpModeDistributionImporter; diff --git a/database/OutputProcessingScripts/CO_CAL3QHC_EF.sql b/database/OutputProcessingScripts/CO_CAL3QHC_EF.sql new file mode 100644 index 0000000..3d4fb46 --- /dev/null +++ b/database/OutputProcessingScripts/CO_CAL3QHC_EF.sql @@ -0,0 +1,70 @@ +-- This MySQL script produces emission rates for CO for use in the CAL3QHC air quality model +-- +-- For free-flow links (i.e., where the average speed is greater than 0 mph) +-- emission factors will be generated as grams per vehicle-mile +-- +-- For queue links (i.e., where the average speed is 0 mph) +-- emission factors will be generated as grams per vehicle-hour +-- +-- The MySQL table produced in the output database is called: CO_EmissionFactors +-- +-- Users should consult Section 2 of EPA's "Using MOVES in Project-Level Carbon Monoxide Analyses" +-- for guidance on filling out the MOVES RunSpec and importing the appropriate inputs +-- + +FLUSH TABLES; +SELECT CURRENT_TIME; + +Drop table if exists CO_EmissionFactorsT; +Create table CO_EmissionFactorsT +Select a.movesRunId, + a.yearId, + a.monthId, + a.dayId, + a.hourId, + a.linkId, + 'CO' as pollutant, + sum(a.emissionQuant) as co +From MovesOutput as a +Group by a.movesRunId, + a.yearId, + a.linkId; + + +Alter table CO_EmissionFactorsT add column distance real; +Alter table CO_EmissionFactorsT add column population real; +Alter table CO_EmissionFactorsT add column GramsPerVehMile real; +Alter table CO_EmissionFactorsT add column GramsPerVehHour real; + + +Update CO_EmissionFactorsT as a set distance = (select sum(b.activity) + from movesActivityOutput as b + where a.movesRunId = b.movesRunId + and a.yearId = b.yearId + and a.linkId = b.linkId + and b.activityTypeId = 1); + +Update CO_EmissionFactorsT as a set population = (select sum(b.activity) + from movesActivityOutput as b + where a.movesRunId = b.movesRunId + and a.yearId = b.yearId + and a.linkId = b.linkId + and b.activityTypeId = 6); + +Update CO_EmissionFactorsT set GramsPerVehMile = CO / Distance where Distance > 0.0; +Update CO_EmissionFactorsT set GramsPerVehHour = CO / Population where Distance <= 0.0; + +Drop table if exists CO_EmissionFactors; +Create table CO_EmissionFactors +Select movesRunId, + yearId, + monthId, + dayId, + hourId, + linkId, + pollutant, + GramsPerVehMile, + GramsPerVehHour +From CO_EmissionFactorsT; + +Drop table if exists CO_EmissionFactorsT; diff --git a/database/OutputProcessingScripts/CO_Grams_Per_Hour.sql b/database/OutputProcessingScripts/CO_Grams_Per_Hour.sql new file mode 100644 index 0000000..e55a8b4 --- /dev/null +++ b/database/OutputProcessingScripts/CO_Grams_Per_Hour.sql @@ -0,0 +1,28 @@ +-- This MySQL script produces emission rates for CO as grams per hour for each defined link +-- +-- The MySQL table produced in the output database is called: CO_Grams_Per_Hour +-- +-- Users should consult Section 2 of EPA's "Using MOVES in Project-Level Carbon Monoxide Analyses" +-- for guidance on filling out the MOVES RunSpec and importing the appropriate inputs +-- + +FLUSH TABLES; +SELECT CURRENT_TIME; + +Drop table if exists CO_Grams_Per_Hour; +Create table CO_Grams_Per_Hour +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total CO' as pollutant, + sum(emissionQuant) as gramsPerHour +From movesOutput +where pollutantId in (2) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; + diff --git a/database/OutputProcessingScripts/CO_Grams_Per_Veh_Mile.sql b/database/OutputProcessingScripts/CO_Grams_Per_Veh_Mile.sql new file mode 100644 index 0000000..a1ff84a --- /dev/null +++ b/database/OutputProcessingScripts/CO_Grams_Per_Veh_Mile.sql @@ -0,0 +1,27 @@ +-- This MySQL script produces emission rates for CO as grams per vehicle-mile for each defined link +-- +-- The MySQL table produced in the output database is called: CO_Grams_Per_Veh_Mile +-- +-- Users should consult Section 2 of EPA's document "Using MOVES in Project-Level Carbon Monoxide Analyses" +-- for guidance on filling out the MOVES RunSpec and importing the appropriate inputs +-- + +FLUSH TABLES; +SELECT CURRENT_TIME; + +Drop table if exists CO_Grams_Per_Veh_Mile; +Create table CO_Grams_Per_Veh_Mile +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total CO' as pollutant, + sum(rateperdistance) as GramsPerVehMile +From rateperdistance +where pollutantId in (2) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; diff --git a/database/OutputProcessingScripts/DecodedMovesOutput.sql b/database/OutputProcessingScripts/DecodedMovesOutput.sql new file mode 100644 index 0000000..b8a2c41 --- /dev/null +++ b/database/OutputProcessingScripts/DecodedMovesOutput.sql @@ -0,0 +1,206 @@ +-- MOVES Post-Processing MySQL Script +-- Decodes most key fields of MOVESOutput and MOVESActivityOutput Tables +-- Creating tables DecodedMOVESOutput and DecodedMOVESActivityOutput +-- that contain the additional descriptive character fields. +-- This version written 9/22/2005 +-- This version rewritten 2/12/2015 to include additional fields. +-- Updated 5/20/2015 to restore output for activity. +-- Updated 9/10/2015 to add fuelsubtype. + +-- +-- +-- uses text replacement of MOVES where ##defaultdb## is replaced with the Current Default Database, +-- to serve as a source of the relevant category tables listing legal values. updated 6/20/2014 + +-- +-- +-- decodeMOVESoutput.sql + +FLUSH TABLES; +SELECT CURRENT_TIME; + +-- +-- Make DecodedMOVESActivityOutput +-- + +drop table if exists decodedmovesactivityoutput; +CREATE TABLE IF NOT EXISTS decodedMOVESActivityOutput +select MovesRunId, + iterationId, + yearId, + monthId, + dayId, + cast(' ' as char( 10)) as dayName, + hourId, + stateId, + cast(' ' as char( 2)) as stateAbbr, + countyId, + cast(' ' as char( 45)) as countyName, + zoneId, + linkId, + sourceTypeId, + cast(' ' as char( 30)) as sourceTypeName, + regClassId, + cast(' ' as char(100)) as regClassName, + fuelTypeId, + cast(' ' as char( 30)) as fuelTypeDesc, + modelYearId, + roadTypeId, + cast(' ' as char( 25)) as roadDesc, + SCC, + engTechId, + cast(' ' as char( 50)) as engTechName, + sectorId, + cast(' ' as char( 40)) as sectorDesc, + hpId, + activityTypeId, + cast(' ' as char( 50)) as activityTypeDesc, + activity, + activityMean, + activitySigma +from movesActivityOutput; + +update DecodedMOVESActivityOutput as a set dayName = (select b.dayName + from ##defaultdb##.dayOfAnyWeek as b + where a.dayId = b.dayId); + +update DecodedMOVESActivityOutput as a set stateABBR = (select b.stateAbbr + from ##defaultdb##.state as b + where a.stateId = b.stateId); + +update DecodedMOVESActivityOutput as a set countyName = (select b.countyName + from ##defaultdb##.county as b + where a.countyId = b.countyId); + +update DecodedMOVESActivityOutput as a set sourceTypeName = (select b.sourceTypeName + from ##defaultdb##.sourceUseType as b + where a.sourceTypeId = b.sourceTypeId); + +update DecodedMOVESActivityOutput as a set regClassName = (select b.regClassName + from ##defaultdb##.regulatoryClass as b + where a.regClassId = b.regClassId); + +update DecodedMOVESActivityOutput as a set fuelTypeDesc = (select b.fuelTypeDesc + from ##defaultdb##.fuelType as b + where a.fuelTypeId = b.fuelTypeId); + + +update DecodedMOVESActivityOutput as a set roadDesc = (select b.roadDesc + from ##defaultdb##.roadType as b + where a.roadTypeId = b.roadTypeId); + +update DecodedMOVESActivityOutput as a set engTechName = (select b.engTechName + from ##defaultdb##.engineTech as b + where a.engTechId = b.engTechId); + +update DecodedMOVESActivityOutput as a set sectorDesc = (select b.description + from ##defaultdb##.sector as b + where a.sectorId = b.sectorId); + +update DecodedMOVESActivityOutput as a set activityTypeDesc + = (select b.activityTypeDesc + from .activityType as b + where a.activityTypeId = b.activityTypeId); + +-- select * from DecodedMOVESActivityOutput; + + + +-- +-- Make DecodedMOVESOutput table +-- + +drop table if exists decodedMOVESoutput; +CREATE TABLE IF NOT EXISTS decodedMOVESoutput +select MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + cast(' ' as char(10)) as dayName, + hourID, + stateID, + cast(' ' as char( 2)) as stateABBR, + countyID, + cast(' ' as char( 45)) as countyName, + zoneID, + linkID, + pollutantID, + cast(' ' as char( 50)) as pollutantName, + processID, + cast(' ' as char( 50)) as processName, + sourceTypeID, + cast(' ' as char( 30)) as sourceTypeName, + regClassId, + cast(' ' as char(100)) as regClassName, + fuelTypeID, + cast(' ' as char( 30)) as fuelTypeDesc, + fuelSubTypeId, + cast(' ' as char(50)) as fuelSubTypeDesc, + modelYearID, + roadTypeID, + cast(' ' as char( 25)) as roadDesc, + SCC, + engTechId, + cast(' ' as char( 50)) as engTechName, + sectorId, + cast(' ' as char( 40)) as sectorDesc, + hpId, + emissionQuant, + emissionQuantMean, + emissionQuantSigma +from movesOutput; + +update DecodedMOVESOutput as a set dayName = (select b.dayName + from ##defaultdb##.dayOfAnyWeek as b + where a.dayId = b.dayId); + +update DecodedMOVESOutput as a set stateABBR = (select b.stateAbbr + from ##defaultdb##.state as b + where a.stateId = b.stateId); + +update DecodedMOVESOutput as a set countyName = (select b.countyName + from ##defaultdb##.county as b + where a.countyId = b.countyId); + +update DecodedMOVESOutput as a set pollutantName = (select b.pollutantName + from ##defaultdb##.pollutant as b + where a.pollutantId = b.pollutantId); + +update DecodedMOVESOutput as a set processName = (select b.processName + from ##defaultdb##.emissionProcess as b + where a.processId = b.processId); + +update DecodedMOVESOutput as a set sourceTypeName = (select b.sourceTypeName + from ##defaultdb##.sourceUseType as b + where a.sourceTypeId = b.sourceTypeId); + +update DecodedMOVESOutput as a set regClassName = (select b.regClassName + from ##defaultdb##.regulatoryClass as b + where a.regClassId = b.regClassId); + +update DecodedMOVESOutput as a set fuelTypeDesc = (select b.fuelTypeDesc + from ##defaultdb##.fuelType as b + where a.fuelTypeId = b.fuelTypeId); + +update DecodedMOVESOutput as a set fuelSubtypeDesc =(select b.fuelSubTypeDesc + from ##defaultdb##.fuelsubtype as b + where a.fuelSubtypeId = b.fuelSubTypeId); + +update DecodedMOVESOutput as a set roadDesc = (select b.roadDesc + from ##defaultdb##.roadType as b + where a.roadTypeId = b.roadTypeId); + +update DecodedMOVESOutput as a set engTechName = (select b.engTechName + from ##defaultdb##.engineTech as b + where a.engTechId = b.engTechId); + +update DecodedMOVESOutput as a set sectorDesc = (select b.description + from ##defaultdb##.sector as b + where a.sectorId = b.sectorId); + + + +-- select * from DecodedMOVESOutput; + +FLUSH TABLES; \ No newline at end of file diff --git a/database/OutputProcessingScripts/EmissionRates.sql b/database/OutputProcessingScripts/EmissionRates.sql new file mode 100644 index 0000000..4f3f669 --- /dev/null +++ b/database/OutputProcessingScripts/EmissionRates.sql @@ -0,0 +1,402 @@ +-- This MySQL script produces an output table which reports your +-- onroad emission results in units of mass per distance. This is done +-- by joining the activity table with the inventory output results. +-- Version 20091191 djb. +-- Updated 20150602 kjr. +-- The MySQL table produced is called: MovesRates +-- This script requires that users check the "Distance Traveled" +-- check box General Output panel of the MOVES graphical user +-- interface. Users must also select +-- the Inventory calculation type in the Scale panel. +-- ************************************************************** +-- Only onroad emission rates will be calculated. (No Nonroad) +-- The user *must* select Distance Traveled. +-- The user *must* select Inventory calculation type. +-- ************************************************************** +-- +-- +-- +-- create outputTemp from movesOutput, +-- create activityTemp from movesActivityOutput, +-- +-- update to zero 15 fields of outputTemp, +-- update to zero 15 fields of activityTemp, +-- +-- create distanceTemp SUM from ActivityTemp, +-- +-- insert SUM into ActivityTemp from distanceTemp (roadType = 0 ) +-- " " " " " " (roadType = 1 ) +-- +-- add master key to outputTemp, +-- add master key to ActivityTemp, +-- +-- join into movesRates from outputTemp, +-- activityTemp, +-- using master key, +-- and activityType = 1 +-- (with rate calculation) +-- +-- drop table outputTemp, +-- drop table activityTemp, +-- drop DistanceTemp. +-- +-- + +FLUSH TABLES ; + +-- Create the table to hold the calculation results. +DROP TABLE IF EXISTS MOVESRates; +CREATE TABLE `MOVESRates` ( + `MasterKey` char(60) default NULL, + `MOVESRunID` smallint(5) unsigned NOT NULL, -- mas key + `iterationID` smallint(5) unsigned default '1', -- mas key + `yearID` smallint(5) unsigned default NULL, -- mas key + `monthID` smallint(5) unsigned default NULL, -- mas key + `dayID` smallint(5) unsigned default NULL, -- mas key + `hourID` smallint(5) unsigned default NULL, -- mas key + `stateID` smallint(5) unsigned default NULL, -- mas key + `countyID` int(10) unsigned default NULL, -- mas key + `zoneID` int(10) unsigned default NULL, -- mas key + `linkID` int(10) unsigned default NULL, -- mas key + `pollutantID` smallint(5) unsigned default NULL, + `processID` smallint(5) unsigned default NULL, + `sourceTypeID` smallint(5) unsigned default NULL, -- mas key + `regClassId` smallint(5) unsigned default NULL, -- mas key + `fuelTypeID` smallint(5) unsigned default NULL, -- mas key + `modelYearID` smallint(5) unsigned default NULL, -- mas key + `roadTypeID` smallint(5) unsigned default NULL, -- mas key + `SCC` char(10) default NULL, -- mas key + `emissionQuant` double default NULL, + `activityTypeID` smallint(6) NOT NULL, + `activity` double default NULL, + `emissionRate` double default NULL, + `massUnits` char(5) default NULL, + `distanceUnits` char(5) default NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1 + ; + +-- Check to see that there is activity output in the table. + +-- Create copies of the results tables. +drop table if exists outputtemp ; +create table outputtemp select * from movesoutput ; + + +drop table if exists activitytemp ; +create table activitytemp select * from movesactivityoutput; + + + +-- Eliminate any NULL values. NULL values prevent joining of the tables. +update outputtemp set movesrunid =0 where isnull(movesrunid) ; +update outputtemp set iterationID =0 where isnull(iterationID) ; +update outputtemp set yearID =0 where isnull(yearID) ; +update outputtemp set monthID =0 where isnull(monthID) ; +update outputtemp set dayID =0 where isnull(dayID) ; +update outputtemp set hourID =0 where isnull(hourID) ; +update outputtemp set stateID =0 where isnull(stateID) ; +update outputtemp set countyID =0 where isnull(countyID) ; +update outputtemp set zoneID =0 where isnull(zoneID) ; +update outputtemp set linkID =0 where isnull(linkID) ; +update outputtemp set sourceTypeID=0 where isnull(sourceTypeID) ; +update outputtemp set regClassId =0 where isnull(regClassId ) ; +update outputtemp set fuelTypeID =0 where isnull(fuelTypeID) ; +update outputtemp set modelYearID =0 where isnull(modelYearID) ; +update outputtemp set roadTypeID =0 where isnull(roadTypeID) ; +update outputtemp set SCC =0 where isnull(SCC) ; + +update activitytemp set movesrunid =0 where isnull(movesrunid) ; +update activitytemp set iterationID =0 where isnull(iterationID) ; +update activitytemp set yearID =0 where isnull(yearID) ; +update activitytemp set monthID =0 where isnull(monthID) ; +update activitytemp set dayID =0 where isnull(dayID) ; +update activitytemp set hourID =0 where isnull(hourID) ; +update activitytemp set stateID =0 where isnull(stateID) ; +update activitytemp set countyID =0 where isnull(countyID) ; +update activitytemp set zoneID =0 where isnull(zoneID) ; +update activitytemp set linkID =0 where isnull(linkID) ; +update activitytemp set sourceTypeID=0 where isnull(sourceTypeID) ; +update activitytemp set regClassId =0 where isnull(regClassId ) ; +update activitytemp set fuelTypeID =0 where isnull(fuelTypeID) ; +update activitytemp set modelYearID =0 where isnull(modelYearID) ; +update activitytemp set roadTypeID =0 where isnull(roadTypeID) ; +update activitytemp set SCC =0 where isnull(SCC) ; +update activitytemp set SCC =0 where SCC="NOTHING" ; + +-- Alter the SCC values to eliminate the text suffix. +update outputtemp set scc=concat(mid(SCC,1,9),"0"); +update activitytemp set scc=concat(mid(SCC,1,9),"0"); + +-- Create a table with the distance summed over road type. +drop table if exists distancetemp; +create table distancetemp +select + a.MOVESRunID, + a.iterationID, + a.yearID, + a.monthID, + + a.dayID, + a.hourID, + a.stateID, + a.countyID, + + a.zoneID, + a.linkID, + a.sourceTypeID, + a.regClassId, + + a.fuelTypeID, + a.modelYearID, + concat(mid(a.SCC,1,7),"000") as SCC, + a.activityTypeID, + + sum(a.activity) as activitysum + +from activitytemp as a +group by + a.MOVESRunID, + a.iterationID, + a.yearID, + a.monthID, + + a.dayID, + a.hourID, + a.stateID, + a.countyID, + + a.zoneID, + a.linkID, + a.sourceTypeID, + a.regClassId, + + a.fuelTypeID, + a.modelYearID, + concat(mid(a.SCC,1,7),"000"), + a.activityTypeID; + + +-- Set the distance for RoadTypeID=1 to be the distance sum. +-- SCC case: RoadTypeID=1 and SCC=SCC with 00 road type. +-- Records without SCC will also be added, but will not match +-- with the emission output records and will be ignored. + + +-- Updated for MOVES 2014: +-- (for user having selected SCC output): +-- include roadtypeId, +-- and used New SCC definition. + +insert into activitytemp ( + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + activityTypeID, + activity, + activityMean, + activitySigma ) +select + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + 1 as roadTypeID, -- for MOVES 2014 SCC now includes roadTypeId + concat(mid(SCC,1,6),'0100') as SCC, -- for MOVES 2014 (new) SCC + activityTypeID, + activitysum as activity, + 0.0 as activityMean, + 0.0 as activitySigma +from distancetemp; + + +-- Set the distance for RoadTypeID=1 to be the distance sum. +-- Source type case: RoadTypeID=1 and SCC='00'. +-- Where SCC is not selected + +insert into activitytemp ( + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + activityTypeID, + activity, + activityMean, + activitySigma ) +select + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + 1 as roadTypeID, + '00' as SCC, -- MOVES 2014 uses '00' for no SCC usage + activityTypeID, + activitysum as activity, + 0.0 as activityMean, + 0.0 as activitySigma +from distancetemp; + + +-- Add master keys to each table for joining. +alter table outputtemp add MasterKey char(60) default null ; +update outputtemp set MasterKey=concat_ws(",", + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + roadTypeID, + mid(SCC,1,8) ); + + + +CREATE INDEX index1 ON outputtemp (MasterKey) ; + +alter table activitytemp add MasterKey char(60) default null ; +update activitytemp set MasterKey=concat_ws(",", + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + roadTypeID, + mid(SCC,1,8) ); + +CREATE INDEX index1 ON activitytemp (MasterKey) ; + + +-- Join the tables. +truncate movesrates; +insert into movesrates ( + MasterKey, + MOVESRunID, + iterationID, + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassId, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + activityTypeID, + activity, + emissionRate ) +select + a.MasterKey, + a.MOVESRunID, + a.iterationID, + a.yearID, + a.monthID, + a.dayID, + a.hourID, + a.stateID, + a.countyID, + a.zoneID, + a.linkID, + a.pollutantID, + a.processID, + a.sourceTypeID, + a.regClassId, + a.fuelTypeID, + a.modelYearID, + a.roadTypeID, + a.SCC, + a.emissionQuant, + b.activityTypeID, + b.activity, + (a.emissionquant/b.activity) as emissionRate +from + outputtemp as a, + activitytemp as b +where + a.MasterKey = b.MasterKey +and b.activityTypeID = 1; + + + + +-- Eliminate the temporary tables. +drop table outputtemp ; +drop table activitytemp ; +drop table distancetemp ; + +-- Add the units to the table. +update movesrates, movesrun set + movesrates.distanceunits=movesrun.distanceunits, + movesrates.massunits=movesrun.massunits +where + movesrates.movesrunid=movesrun.movesrunid; + +FLUSH TABLES; \ No newline at end of file diff --git a/database/OutputProcessingScripts/PM10_Grams_Per_Hour.sql b/database/OutputProcessingScripts/PM10_Grams_Per_Hour.sql new file mode 100644 index 0000000..e0a9dd1 --- /dev/null +++ b/database/OutputProcessingScripts/PM10_Grams_Per_Hour.sql @@ -0,0 +1,29 @@ +-- This MySQL script produces emission rates for PM10 as grams per hour for each defined link +-- +-- The MySQL table produced in the output database is called: pm10_Grams_Per_Hour +-- +-- Users should consult Section 4 of EPA's "Transportation Conformity Guidance for Quantitative Hot-spot +-- Analyses in PM2.5 and PM10 Nonattainment and Maintenance Areas" for guidance on filling out +-- the MOVES RunSpec and importing the appropriate inputs +-- + +FLUSH TABLES; +SELECT CURRENT_TIME; + +Drop table if exists pm10_Grams_Per_Hour; +Create table pm10_Grams_Per_Hour +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total PM10' as pollutant, + sum(emissionQuant) as gramsPerHour +From movesOutput +where pollutantId in (100,106,107) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; + diff --git a/database/OutputProcessingScripts/PM10_Grams_Per_Veh_Mile.sql b/database/OutputProcessingScripts/PM10_Grams_Per_Veh_Mile.sql new file mode 100644 index 0000000..21afd19 --- /dev/null +++ b/database/OutputProcessingScripts/PM10_Grams_Per_Veh_Mile.sql @@ -0,0 +1,27 @@ +-- This MySQL script produces emission rates for PM10 as grams per vehicle-mile for each defined link +-- +-- The MySQL table produced in the output database is called: pm10_Grams_Per_veh_Mile +-- +-- Users should consult Section 4 of EPA's "Transportation Conformity Guidance for Quantitative Hot-spot +-- Analyses in PM2.5 and PM10 Nonattainment and Maintenance Areas" for guidance on filling out +-- the MOVES RunSpec and importing the appropriate inputs +-- + +Drop table if exists pm10_grams_per_veh_mile; +Create table pm10_grams_per_veh_mile +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total PM10' as pollutant, + sum(rateperdistance) as GramsPerVehMile +From rateperdistance +where pollutantId in (100,106,107) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; + + diff --git a/database/OutputProcessingScripts/PM25_Grams_Per_Hour.sql b/database/OutputProcessingScripts/PM25_Grams_Per_Hour.sql new file mode 100644 index 0000000..e323b3b --- /dev/null +++ b/database/OutputProcessingScripts/PM25_Grams_Per_Hour.sql @@ -0,0 +1,26 @@ +-- This MySQL script produces emission rates for PM2.5 as grams per hour for each defined link +-- +-- The MySQL table produced in the output database is called: pm25_Grams_Per_Hour +-- +-- Users should consult Section 4 of EPA's "Transportation Conformity Guidance for Quantitative Hot-spot +-- Analyses in PM2.5 and PM10 Nonattainment and Maintenance Areas" for guidance on filling out +-- the MOVES RunSpec and importing the appropriate inputs +-- + +Drop table if exists pm25_grams_per_hour; +Create table pm25_grams_per_hour +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total PM2.5' as pollutantId, + sum(emissionQuant) as GramsPerHour +From movesOutput +where pollutantId in (110,116,117) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; + diff --git a/database/OutputProcessingScripts/PM25_Grams_Per_Veh_Mile.sql b/database/OutputProcessingScripts/PM25_Grams_Per_Veh_Mile.sql new file mode 100644 index 0000000..38bf429 --- /dev/null +++ b/database/OutputProcessingScripts/PM25_Grams_Per_Veh_Mile.sql @@ -0,0 +1,28 @@ +-- This MySQL script produces emission rates for PM2.5 as grams per vehicle-mile for each defined link +-- +-- The MySQL table produced in the output database is called: pm25_Grams_Per_Veh_Mile +-- +-- Users should consult Section 4 of EPA's "Transportation Conformity Guidance for Quantitative Hot-spot +-- Analyses in PM2.5 and PM10 Nonattainment and Maintenance Areas" for guidance on filling out +-- the MOVES RunSpec and importing the appropriate inputs +-- + + +Drop table if exists pm25_Grams_Per_Veh_Mile; +Create table pm25_Grams_Per_Veh_Mile +Select movesRunId, + yearId, + monthId, + hourId, + linkId, + 'Total PM2.5' as pollutant, + sum(rateperdistance) as GramsPerVehMile +From rateperdistance +where pollutantId in (110,116,117) +Group by movesRunId, + yearId, + monthId, + hourId, + linkId; + + diff --git a/database/OutputProcessingScripts/TabbedOutput.sql b/database/OutputProcessingScripts/TabbedOutput.sql new file mode 100644 index 0000000..cb35f56 --- /dev/null +++ b/database/OutputProcessingScripts/TabbedOutput.sql @@ -0,0 +1,104 @@ +-- This MySQL script produces tab-delimited output suitable for reading into an +-- EXCEL Spreadsheet from the MOVES MySQL database output tables. +-- 2008-07-07 changed "distance" to the more general "activity" in the activity output table. +-- 2009-07-14 removed MOVESOutputRowID from the script. +-- 2009-12-17 fixed file output names so that the script can be run multiple times +-- 2015-02-06 eliminated use of temporary table +-- 2015-09-10 added fuelsubtype +-- Three separate text files are produced. They are: +-- MovesOutputyyyymmddhhmmss.txt +-- MovesActivityOutputyyyymmddhhmmss.txt +-- MovesRunyyyymmddhhmmss.txt + +-- These correspond directly to the similarily named MOVES output tables. + +-- The script does not write out the MovesError Table. + +-- +-- +-- general: + +FLUSH TABLES; + +set @datetime = concat( mid(curdate(),1,4), + mid(curdate(),6,2), + mid(curdate(),9,2), + mid(curtime(),1,2), + mid(curtime(),4,2), + mid(curtime(),7,2) ); + +-- create 'MovesOutputyyyymmddhhmmss.txt': + +SET @sql_text = + CONCAT ( +"select 'MOVESRunID', 'IterationId', 'YearID', 'MonthID', 'DayID', + 'HourID', 'StateID', 'CountyID', 'ZoneID', 'LinkID', + 'PollutantID', 'ProcessID', 'SourceTypeID', 'regClassId', 'FuelTypeID', + 'fuelSubtypeid', + 'ModelYearID', 'RoadTypeID', 'SCC', 'engTechId', 'sectorId', + 'hpId', 'EmissionQuant', 'EmissionQuantMean', 'EmissionQuantSigma'" +" UNION ", +" SELECT movesoutput.*", +" INTO OUTFILE ", "'MovesOutput", + @datetime, + ".txt'", + " FIELDS TERMINATED BY '\t'", + " LINES TERMINATED BY '\r\n'" + " from movesoutput;" ); + + +PREPARE s1 FROM @sql_text; +EXECUTE s1; +DROP PREPARE s1; + + +-- create 'MovesActivityOutputyyyymmddhhmmss.txt': + +SET @sql_text = + CONCAT ( +"select 'MOVESRunID', 'IterationId', 'YearID', 'MonthID', 'DayID', + 'HourID', 'StateID', 'CountyID', 'ZoneID', 'LinkID', + 'SourceTypeID', 'regClassId', 'FuelTypeID', 'ModelYearID', 'RoadTypeID', + 'SCC', 'engTechId', 'sectorId', 'hpId', 'ActivityTypeId', + 'Activity', 'ActivityMean', 'ActivitySigma'" +" UNION ", +" SELECT *", +" INTO OUTFILE ", "'MovesActivityOutput", + @datetime, + " .txt'", + " FIELDS TERMINATED BY '\t'", + " LINES TERMINATED BY '\r\n'" + " from movesactivityoutput;" ); + + +PREPARE s1 FROM @sql_text; +EXECUTE s1; +DROP PREPARE s1; + + +-- create 'MovesRunyyyymmddhhmmss.txt': + +SET @sql_text = + CONCAT ( +"select 'MOVESRunID', 'outputTimePeriod', 'timeUnits', 'distanceUnits', + 'massUnits', 'energyUnits', 'runSpecFileName', 'runSpecDescription', + 'runSpecFileDateTime', 'runDateTime', 'scale', 'minutesDuration', + 'defaultDatabasrUsed', 'masterVersion', 'masterComputerId', 'masterIdNumber', + 'domain', 'domainCountryId', 'domainCountryName', 'domainDatabaseServer', + 'domainDataBaseName', 'expectedDONEfiles', 'retrievedDONEfiles', 'models'" +" UNION ", +" SELECT movesrun.*", +" INTO OUTFILE ", "'MovesRun", + @datetime, + " .txt'", + " FIELDS TERMINATED BY '\t'", + " LINES TERMINATED BY '\r\n'" + " from movesrun;" ); + + +PREPARE s1 FROM @sql_text; +EXECUTE s1; +DROP PREPARE s1; + + +FLUSH TABLES; \ No newline at end of file diff --git a/database/PM10BrakeTireCalculator.sql b/database/PM10BrakeTireCalculator.sql new file mode 100644 index 0000000..95d642c --- /dev/null +++ b/database/PM10BrakeTireCalculator.sql @@ -0,0 +1,116 @@ +-- Author Wesley Faler +-- Version 2013-09-23 + +-- @algorithm +-- @owner PM10 Brake Tire Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data +##create.PM10EmissionRatio##; +TRUNCATE TABLE PM10EmissionRatio; + +CREATE TABLE IF NOT EXISTS PM10PollutantProcessAssoc ( + polProcessID int NOT NULL, + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + isAffectedByExhaustIM CHAR(1) NOT NULL DEFAULT 'N', + isAffectedByEvapIM CHAR(1) NOT NULL DEFAULT 'N', + PRIMARY KEY (polProcessID, processID, pollutantID), + KEY (processID, pollutantID, polProcessID), + KEY (pollutantID, processID, polProcessID) +); +TRUNCATE TABLE PM10PollutantProcessAssoc; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache select p.* into outfile '##PM10EmissionRatio##' +from PollutantProcessAssoc ppa +inner join PM10EmissionRatio p on (p.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=p.sourceTypeID and r.fuelTypeID=p.fuelTypeID) +where ppa.pollutantID in (106,107) +and ppa.processID in (##context.iterProcess.databaseKey##); + +cache select distinct ppa.polProcessID, ppa.processID, ppa.pollutantID, ppa.isAffectedByExhaustIM, ppa.isAffectedByEvapIM +into outfile '##PM10PollutantProcessAssoc##' +from PollutantProcessAssoc ppa +inner join PM10EmissionRatio p on (p.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=p.sourceTypeID and r.fuelTypeID=p.fuelTypeID) +where ppa.pollutantID in (106,107) +and ppa.processID in (##context.iterProcess.databaseKey##); + +-- End Section Extract Data + +-- Section Processing + +drop table if exists PM10BrakeTireMOVESWorkerOutputTemp; +create table if not exists PM10BrakeTireMOVESWorkerOutputTemp ( + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL +); + +-- @algorithm PM10 Brakewear (106) = PM2.5 Brakewear (116) * PM10PM25Ratio. +-- PM10 Tirewear (107) = PM2.5 Tirewear (117) * PM10PM25Ratio. +insert into PM10BrakeTireMOVESWorkerOutputTemp ( + MOVESRunID, iterationID, + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, + pollutantID, + processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + MOVESRunID, iterationID, + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, + ppa.pollutantID as pollutantID, + mwo.processID, mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, modelYearID, roadTypeID, SCC, + (emissionQuant * PM10PM25Ratio) as emissionQuant, + (emissionRate * PM10PM25Ratio) as emissionRate +from MOVESWorkerOutput mwo +inner join PM10PollutantProcessAssoc ppa on (ppa.processID=mwo.processID) +inner join PM10EmissionRatio r on ( + r.polProcessID=ppa.polProcessID + and r.sourceTypeID=mwo.sourceTypeID + and r.fuelTypeID=mwo.fuelTypeID + and r.minModelYearID <= mwo.modelYearID + and r.maxModelYearID >= mwo.modelYearID) +where ((mwo.pollutantID=116 and ppa.pollutantID=106) + or (mwo.pollutantID=117 and ppa.pollutantID=107)); + +insert into MOVESWorkerOutput ( + MOVESRunID, iterationID, + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, + pollutantID, + processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + emissionQuant, emissionRate) +select + MOVESRunID, iterationID, + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, + pollutantID, + processID, sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, + emissionQuant, emissionRate +from PM10BrakeTireMOVESWorkerOutputTemp; + +-- End Section Processing + +-- Section Cleanup +drop table if exists PM10BrakeTireMOVESWorkerOutputTemp; +drop table if exists PM10PollutantProcessAssoc; +-- End Section Cleanup diff --git a/database/PM10EmissionCalculator.sql b/database/PM10EmissionCalculator.sql new file mode 100644 index 0000000..7fa6c0d --- /dev/null +++ b/database/PM10EmissionCalculator.sql @@ -0,0 +1,172 @@ +-- Author Wesley Faler +-- Version 2013-09-23 + +-- @algorithm +-- @owner PM10 Emission Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data +##create.PM10EmissionRatio##; +TRUNCATE TABLE PM10EmissionRatio; + +CREATE TABLE IF NOT EXISTS PM10PollutantProcessAssoc ( + polProcessID int NOT NULL, + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + isAffectedByExhaustIM CHAR(1) NOT NULL DEFAULT 'N', + isAffectedByEvapIM CHAR(1) NOT NULL DEFAULT 'N', + PRIMARY KEY (polProcessID, processID, pollutantID), + KEY (processID, pollutantID, polProcessID), + KEY (pollutantID, processID, polProcessID) +); +TRUNCATE TABLE PM10PollutantProcessAssoc; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache select p.* into outfile '##PM10EmissionRatio##' +from PollutantProcessAssoc ppa +inner join PM10EmissionRatio p on (p.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=p.sourceTypeID and r.fuelTypeID=p.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID in (##context.iterProcess.databaseKey##, 15, 16, 17); + +cache select distinct ppa.polProcessID, ppa.processID, ppa.pollutantID, ppa.isAffectedByExhaustIM, ppa.isAffectedByEvapIM +into outfile '##PM10PollutantProcessAssoc##' +from PollutantProcessAssoc ppa +inner join PM10EmissionRatio p on (p.polProcessID=ppa.polProcessID) +inner join RunSpecSourceFuelType r on (r.sourceTypeID=p.sourceTypeID and r.fuelTypeID=p.fuelTypeID) +where ppa.pollutantID in (##pollutantIDs##) +and ppa.processID in (##context.iterProcess.databaseKey##, 15, 16, 17); + +-- End Section Extract Data + +-- Section Processing + +drop table if exists PM10MOVESWorkerOutputTemp; +create table if not exists PM10MOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL, + + index (fuelTypeID), + index (sourceTypeID), + index (roadTypeID), + index (zoneID) +); + +-- @algorithm PM10 Total = PM2.5 Total * PM10PM25Ratio. +insert into PM10MOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + ppa.pollutantID, + ppa.processID, + r.sourceTypeID, + regClassID, + r.fuelTypeID, + modelYearID, + roadTypeID, + SCC, + (emissionQuant * PM10PM25Ratio) as emissionQuant, + (emissionRate * PM10PM25Ratio) as emissionRate +from MOVESWorkerOutput mwo +inner join PM10PollutantProcessAssoc ppa on (ppa.processID=mwo.processID) +inner join PM10EmissionRatio r on ( + r.polProcessID=ppa.polProcessID + and r.sourceTypeID=mwo.sourceTypeID + and r.fuelTypeID=mwo.fuelTypeID + and r.minModelYearID <= mwo.modelYearID + and r.maxModelYearID >= mwo.modelYearID) +where ((mwo.pollutantID=112 and ppa.pollutantID=102) + or (mwo.pollutantID=111 and ppa.pollutantID=101) + or (mwo.pollutantID=110 and ppa.pollutantID=100) + or (mwo.pollutantID=115 and ppa.pollutantID=105 and mwo.processID in (1,2,90,91)) + ) + and mwo.pollutantID in (##sourcePollutantIDs##); + +insert into MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + regClassID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant, + emissionRate +from PM10MOVESWorkerOutputTemp; + +-- End Section Processing + +-- Section Cleanup +drop table if exists PM10MOVESWorkerOutputTemp; +drop table if exists PM10PollutantProcessAssoc; +-- End Section Cleanup diff --git a/database/PMTotalExhaustCalculator.sql b/database/PMTotalExhaustCalculator.sql new file mode 100644 index 0000000..42dcd4e --- /dev/null +++ b/database/PMTotalExhaustCalculator.sql @@ -0,0 +1,155 @@ +-- Version 2008-03-29 + +-- Section Create Remote Tables for Extracted Data + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- End Section Extract Data + +-- Section Processing + +drop table if exists PMTotalMOVESWorkerOutputTemp; +create table if not exists PMTotalMOVESWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant FLOAT NULL +); + +-- Section PM10Total + +insert into PMTotalMOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + 100 as pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +from MOVESWorkerOutput mwo +where mwo.pollutantID in (101,102,105); + +-- End Section PM10Total + +-- Section PM25Total + +insert into PMTotalMOVESWorkerOutputTemp ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + 110 as pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +from MOVESWorkerOutput mwo +where mwo.pollutantID in (111,112,115); + +-- End Section PM25Total + +insert into MOVESWorkerOutput ( + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant) +select + yearID, + monthID, + dayID, + hourID, + stateID, + countyID, + zoneID, + linkID, + pollutantID, + processID, + sourceTypeID, + fuelTypeID, + modelYearID, + roadTypeID, + SCC, + emissionQuant +from PMTotalMOVESWorkerOutputTemp; + +-- End Section Processing + +-- Section Cleanup +drop table if exists PMTotalMOVESWorkerOutputTemp; +-- End Section Cleanup diff --git a/database/PreAggDAY.sql b/database/PreAggDAY.sql new file mode 100644 index 0000000..ecd4070 --- /dev/null +++ b/database/PreAggDAY.sql @@ -0,0 +1,406 @@ +/* *********************************************************************************************************************** +-- MySQL Script file to aggregate the separate hours of the day +-- out of the MOVESExecution database +-- after input databases have been merged by the InputDataManager +-- and before any MasterLoopable objects are executed. +-- An attempt is made to weight some aggregations by activity. +-- +-- Author Wesley Faler +-- Author Gwo Shyu +-- Version 2014-04-24 +-- Change history: +-- Modified by Gwo Shyu, March 26, 2008 to fix the errors of duplicate entry and table existing + *********************************************************************************************************************** */ +DROP TABLE IF EXISTS HourWeighting1; +DROP TABLE IF EXISTS HourWeighting2; +DROP TABLE IF EXISTS HourWeighting3; +DROP TABLE IF EXISTS HourWeighting4; +DROP TABLE IF EXISTS OldHourDay; +DROP TABLE IF EXISTS OldAvgSpeedDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution2; +DROP TABLE IF EXISTS OldSourceTypeHour; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS AggMonthGroupHour; +DROP TABLE IF EXISTS OldSampleVehicleTrip; +DROP TABLE IF EXISTS OldStartsPerVehicle; +DROP TABLE IF EXISTS OldSoakActivityFraction; +DROP TABLE IF EXISTS OldAverageTankTemperature; + +-- +-- Create HourWeighting1 to be used to weight hourly activity +-- by sourceTypeID, dayID, and RoadtypeID. +-- HourVMTFraction itself could be used, except that it will be modified later +-- +-- SELECT "Making HourWeighting1" AS MARKER_POINT; +CREATE Table HourWeighting1 + SELECT sourceTypeID, roadTypeID, dayID, hourID, hourVMTFraction as actFract + FROM HourVMTFraction; +CREATE UNIQUE INDEX index1 ON HourWeighting1 (sourceTypeID, roadTypeID, dayID, hourID); + +-- +-- Create HourWeighting2 to be used to weight hourly activity by +-- sourceTypeID, and dayID +-- +-- SELECT "Making HourWeighting2" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE TABLE HourWeighting2 ( + sourceTypeID SMALLINT, + dayID SMALLINT, + hourID SMALLINT, + actFract FLOAT); +INSERT INTO HourWeighting2 (sourceTypeID, dayID, hourID, actFract) + SELECT hvmtf.sourceTypeID, dayID, hourID, + ((sum(hourVMTFraction*roadTypeVMTFraction))/sum(roadTypeVMTFraction)) as actFract + FROM HourVMTFraction AS hvmtf INNER JOIN RoadTypeDistribution USING (sourceTypeID, roadTypeID) + GROUP BY hvmtf.sourceTypeID, dayID, hourID; +CREATE UNIQUE INDEX index1 ON HourWeighting2 (sourceTypeID, dayID, hourID); + +-- +-- Create HourWeighting3 to be used to weight hourly activity +-- when no keys (besides hourID) are shared with HourVMTFraction +-- +-- SELECT "Making HourWeighting3" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE Table HourWeighting3 ( + hourID SMALLINT, + actFract FLOAT); +INSERT INTO HourWeighting3 + SELECT hourID, avg(actFract) as actFract + FROM HourWeighting2 + WHERE sourceTypeID=21 + GROUP BY hourID; +CREATE UNIQUE INDEX index1 ON HourWeighting3 (hourID); + +-- Create HourWeighting4 to be used to weight hourly activity +-- when only dayID (besides hourID) is shared with HourVMTFraction +-- +SELECT "Making HourWeighting4" AS MARKER_POINT; +CREATE Table HourWeighting4 ( + dayID SMALLINT, + hourID SMALLINT, + actFract FLOAT); +INSERT INTO HourWeighting4 + SELECT dayID, hourID, actFract + FROM HourWeighting2 WHERE sourceTypeID=21; +CREATE UNIQUE INDEX index1 ON HourWeighting4 (dayID, hourID); + +-- +-- HourOfAnyDay Table +-- +-- SELECT "Making HourOfAnyDay" AS MARKER_POINT; +TRUNCATE HourOfAnyDay; +INSERT INTO HourOfAnyDay (hourID, hourName) + VALUES (0, "Entire Day"); + +FLUSH TABLE HourOfAnyDay; + +-- +-- HourDay Table (save old version as it is needed later) +-- +-- SELECT "Making HourDay" AS MARKER_POINT; +CREATE Table OldHourDay SELECT * from HourDay; +CREATE UNIQUE INDEX index1 ON OldHourDay(hourDayID); +TRUNCATE HourDay; +INSERT INTO HourDay (hourDayID, dayID, hourID) + SELECT dayID AS hourDayID, dayID, 0 AS hourID + FROM DayOfAnyWeek; +CREATE UNIQUE INDEX index1 ON HourDay (hourDayID); +FLUSH TABLE HourDay; +-- +-- HourVMTFraction Table +-- +-- SELECT "Making HourVMTFraction" AS MARKER_POINT; +TRUNCATE HourVMTFraction; +REPLACE INTO HourVMTFraction (sourceTypeID, roadTypeID, dayID, hourID, hourVMTFraction) + SELECT sourceTypeID, roadTypeID, dayID, 0 AS hourID, 1.0 AS hourVMTFraction + FROM HourWeighting1 + GROUP BY sourceTypeID, roadTypeID, dayID; +CREATE UNIQUE INDEX index1 ON HourVMTFraction (sourceTypeID, roadTypeID, dayID); +FLUSH TABLE HourVMTFraction; + +-- +-- AvgSpeedDistribution Table +-- +-- SELECT "Making AvgSpeedDistribution" AS MARKER_POINT; +CREATE TABLE OldAvgSpeedDistribution + SELECT sourceTypeID, roadTypeID, dayID, hourID, avgSpeedBinID, avgSpeedFraction + FROM AvgSpeedDistribution INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE AvgSpeedDistribution; +INSERT INTO AvgSpeedDistribution + (sourceTypeID, roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction) + SELECT asd.sourceTypeID, asd.roadTypeID, asd.dayID AS hourDayID, asd.avgSpeedBinID, + ((sum(asd.avgSpeedFraction*hw.actFract))/sum(hw.actFract)) AS avgSpeedFraction + FROM OldAvgSpeedDistribution AS asd INNER JOIN HourWeighting1 AS hw + USING (sourceTypeID, roadTypeID, dayID, hourID) + GROUP BY sourceTypeID, roadTypeID, asd.dayID, avgSpeedBinID; +CREATE UNIQUE INDEX index1 ON AvgSpeedDistribution + (sourceTypeID, roadTypeID, hourDayID, avgSpeedBinID); +FLUSH TABLE AvgSpeedDistribution; + +-- +-- OpModeDistribution +-- +-- SELECT "Making OpModeDistribution" AS MARKER_POINT; +CREATE Table OldOpModeDistribution + SELECT omd.*, Link.roadTypeID + FROM OpModeDistribution AS omd INNER JOIN Link USING (linkID); +CREATE Table OldOpModeDistribution2 + SELECT omd.*, OldHourDay.dayID,OldHourDay.hourID + FROM OldOpModeDistribution AS omd INNER JOIN OldHourDay USING (hourDayID); +CREATE UNIQUE INDEX index1 ON OldOpModeDistribution2 (sourceTypeID, roadTypeID, dayID, hourID); +TRUNCATE OpModeDistribution; +INSERT INTO OpModeDistribution (sourceTypeID, hourDayID, linkID, polProcessID, opModeID, + opModeFraction, opModeFractionCV, isUserInput) + SELECT omd.sourceTypeID, omd.dayID AS hourDayID, omd.linkID, omd.polProcessID, omd.opModeID, + (SUM(omd.opModeFraction * hw.actFract)/SUM(hw.actFract)) AS opModeFraction, + NULL AS opModeFractionCV, "Y" AS isUserInput + FROM OldOpModeDistribution2 AS omd INNER JOIN HourWeighting1 AS hw + USING (sourceTypeID, roadTypeID, dayID, hourID ) + GROUP BY omd.sourceTypeID, omd.dayID, omd.linkID, omd.polProcessID, omd.opModeID; +FLUSH TABLE OpModeDistribution; + +-- +-- SourceTypeHour Table +-- +-- Note: idleSHOFactors are to be summed, not averaged. +-- SELECT "Making SourceTypeHour" AS MARKER_POINT; +CREATE TABLE OldSourceTypeHour + SELECT sourceTypeID, dayID, hourID, idleSHOFactor, hotellingDist + FROM SourceTypeHour INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE SourceTypeHour; +INSERT INTO SourceTypeHour + (sourceTypeID, hourDayID, idleSHOFactor, hotellingDist) + SELECT sth.sourceTypeID, sth.dayID AS hourDayID, + sum(sth.idleSHOFactor) AS idleSHOFactor, sum(sth.hotellingDist) as hotellingDist + FROM OldSourceTypeHour AS sth + GROUP BY sourceTypeID, sth.dayID; +CREATE UNIQUE INDEX index1 ON SourceTypeHour (sourceTypeID, hourDayID); +FLUSH TABLE SourceTypeHour; + +-- +-- SHO +-- +-- SELECT "Making SHO" AS MARKER_POINT; +CREATE TABLE OldSHO + SELECT SHO.*, dayID, hourID + FROM SHO INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index10 ON OldSHO (dayID, monthID, yearID, ageID, linkID, sourceTypeID); +TRUNCATE SHO; +INSERT INTO SHO (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, SHO, SHOCV, distance, isUserInput) + SELECT dayID AS hourDayID, monthID, yearID, ageID,linkID, sourceTypeID, + sum(SHO) AS SHO, NULL AS SHOCV, sum(distance) AS distance, "Y" AS isUserInput + FROM OldSHO + GROUP BY dayID, monthID, yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SHO; + +-- +-- SourceHours +-- +-- SELECT "Making SourceHours" AS MARKER_POINT; +CREATE TABLE OldSourceHours + SELECT SourceHours.*, dayID, hourID + FROM SourceHours INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index10 ON OldSourceHours (dayID, monthID, yearID, ageID, linkID, sourceTypeID); +TRUNCATE SourceHours; +INSERT INTO SourceHours (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, sourceHours, sourceHoursCV, isUserInput) + SELECT dayID AS hourDayID, monthID, yearID, ageID,linkID, sourceTypeID, + sum(sourceHours) AS sourceHours, NULL AS sourceHoursCV,"Y" AS isUserInput + FROM OldSourceHours + GROUP BY dayID, monthID, yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SourceHours; + +-- +-- Starts +-- +-- SELECT "Making Starts" AS MARKER_POINT; +CREATE TABLE OldStarts + SELECT Starts.*, dayID, hourID + FROM Starts INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index11 ON OldStarts (dayID, monthID, yearID, ageID, zoneID, sourceTypeID); +TRUNCATE Starts; +INSERT INTO Starts (hourDayID, monthID, yearID, ageID, zoneID, + sourceTypeID, starts, startsCV, isUserInput) + SELECT dayID AS hourDayID, monthID, yearID, ageID, zoneID, sourceTypeID, + sum(starts) AS starts, NULL AS startsCV, "Y" AS isUserInput + FROM OldStarts + GROUP BY dayID, monthID, yearID, ageID, zoneID, sourceTypeID; +FLUSH TABLE Starts; + +-- +-- ExtendedIdleHours +-- +-- SELECT "Making ExtendedIdleHours" AS MARKER_POINT; +CREATE TABLE OldExtendedIdleHours + SELECT ExtendedIdleHours.*, dayID, hourID + FROM ExtendedIdleHours INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index12 ON OldExtendedIdleHours (sourceTypeID, dayID, monthID, yearID, ageID, zoneID); +TRUNCATE ExtendedIdleHours; +INSERT INTO ExtendedIdleHours (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID, + extendedIdleHours, extendedIdleHoursCV, isUserInput) + SELECT sourceTypeID, dayID AS hourDayID, monthID, yearID, ageID, zoneID, + sum(extendedIdleHours) AS extendedIdleHours, NULL AS extendedIdleHoursCV, "Y" AS isUserInput + FROM OldExtendedIdleHours + GROUP BY sourceTypeID, dayID, monthID, yearID, ageID, zoneID; +FLUSH TABLE ExtendedIdleHours; + +-- +-- ZoneMonthHour +-- +-- SELECT "Making ZoneMonthHour" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE TABLE AggZoneMonthHour ( + monthID SMALLINT, + zoneID INTEGER, + temperature FLOAT, + relHumidity FLOAT); +INSERT INTO AggZoneMonthHour (monthID,zoneID,temperature,relHumidity) + SELECT monthID, zoneID, + (sum(temperature*actFract)/sum(actFract)) AS temperature, + (sum(relHumidity*actFract)/sum(actFract)) AS relHumidity + FROM ZoneMonthHour INNER JOIN HourWeighting3 USING (hourID) + GROUP BY monthID, zoneID; +TRUNCATE ZoneMonthHour; +REPLACE INTO ZoneMonthHour (monthID, zoneID, hourID, temperature, temperatureCV, + relHumidity, relativeHumidityCV, heatIndex, specificHumidity) + SELECT monthID, zoneID, 0 AS hourID, temperature, + NULL AS temperatureCV, relHumidity, NULL AS relativeHumidityCV, + 0.0 as heatIndex, 0.0 as specificHumidity + FROM AggZoneMonthHour; +FLUSH TABLE ZoneMonthHour; + +-- +-- MonthGroupHour +-- +-- SELECT "Making MonthGroupHour" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE TABLE AggMonthGroupHour ( + monthGroupID SMALLINT, + ACActivityTermA FLOAT, + ACActivityTermB FLOAT, + ACActivityTermC FLOAT); +INSERT INTO AggMonthGroupHour (monthGroupID,ACActivityTermA,ACActivityTermB,ACActivityTermC) + SELECT monthGroupID, + (sum(ACActivityTermA*actFract)/sum(actFract)) AS ACActivityTermA, + (sum(ACActivityTermB*actFract)/sum(actFract)) AS ACActivityTermB, + (sum(ACActivityTermC*actFract)/sum(actFract)) AS ACActivityTermC + FROM MonthGroupHour INNER JOIN HourWeighting3 USING (hourID) + GROUP BY monthGroupID; +TRUNCATE MonthGroupHour; +REPLACE INTO MonthGroupHour (monthGroupID, hourID, + ACActivityTermA, ACActivityTermACV, + ACActivityTermB, ACActivityTermBCV, + ACActivityTermC, ACActivityTermCCV + ) + SELECT monthGroupID, 0 AS hourID, + ACActivityTermA, NULL AS ACActivityTermACV, + ACActivityTermB, NULL AS ACActivityTermBCV, + ACActivityTermC, NULL AS ACActivityTermCCV + FROM AggMonthGroupHour; +FLUSH TABLE MonthGroupHour; + +-- +-- SampleVehicleTrip +-- +-- SELECT "Making SampleVehicleTrip" AS MARKER_POINT; +CREATE TABLE OldSampleVehicleTrip + SELECT * + FROM SampleVehicleTrip; +-- *************************** +-- SELECT SampleVehicleTrip.*, dayID +-- FROM SampleVehicleTrip INNER JOIN OldHourDay USING (hourDayID); +-- *************************** + +TRUNCATE SampleVehicleTrip; +INSERT INTO SampleVehicleTrip (vehID, tripID, dayID, hourID, priorTripID, + keyOnTime, keyOffTime) + SELECT vehID, tripID, dayID, 0 as hourID, priorTripID, keyOnTime, keyOffTime + FROM OldSampleVehicleTrip; +-- *************************** +-- SELECT vehID, tripID, dayID AS hourDayID, priorTripID, keyOnTime, keyOffTime +-- FROM OldSampleVehicleTrip; +-- *************************** +FLUSH TABLE SampleVehicleTrip; + +-- +-- StartsPerVehicle +-- +-- SELECT "Making StartsPerVehicle" AS MARKER_POINT; +CREATE TABLE OldStartsPerVehicle + SELECT StartsPerVehicle.*, dayID + FROM StartsPerVehicle INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE StartsPerVehicle; +INSERT INTO StartsPerVehicle (sourceTypeID, hourDayID, + startsPerVehicle, startsPerVehicleCV) + SELECT sourceTypeID, dayID AS hourDayID, sum(startsPerVehicle) as startsPerVehicle, + NULL AS startsPerVehicleCV + FROM OldStartsPerVehicle GROUP BY sourceTypeID, hourDayID; +FLUSH TABLE StartsPerVehicle; + +-- +-- AverageTankTemperature +-- +-- SELECT "Making AverageTankTemperature" AS MARKER_POINT; +CREATE TABLE OldAverageTankTemperature + SELECT tankTemperatureGroupID, zoneID, monthID, hourID, dayID, opModeID, averageTankTemperature + FROM AverageTankTemperature INNER JOIN OldHourDay USING(hourDayID); +TRUNCATE AverageTankTemperature; +INSERT INTO AverageTankTemperature (tankTemperatureGroupID, zoneID, monthID, + hourDayID, opModeID, averageTankTemperature, averageTankTemperatureCV, isUserInput) + SELECT tankTemperatureGroupID, zoneID, monthID, oatt.dayID AS hourDayID, opModeID, + sum(averageTankTemperature*actFract) AS averageTankTemperature, + NULL AS averageTankTemperatureCV, 'Y' AS isUserInput + FROM OldAverageTankTemperature AS oatt INNER JOIN HourWeighting4 USING(dayID, hourID) + GROUP BY tankTemperatureGroupID, zoneID, monthID, oatt.dayID, opModeID ; +FLUSH TABLE AverageTankTemperature; + +-- +-- SoakActivityFraction +-- +-- SELECT "Making SoakActivityFraction" AS MARKER_POINT; +CREATE TABLE OldSoakActivityFraction + SELECT sourceTypeID, zoneID, monthID, hourID, dayID, opModeID, soakActivityFraction + FROM SoakActivityFraction INNER JOIN OldHourDay USING(hourDayID); +TRUNCATE SoakActivityFraction; +INSERT INTO SoakActivityFraction (sourceTypeID, zoneID, monthID, + hourDayID, opModeID, soakActivityFraction, soakActivityFractionCV, isUserInput) + SELECT osaf.sourceTypeID, zoneID, monthID, osaf.dayID AS hourDayID, opModeID, + sum(soakActivityFraction*actFract) AS soakActivityFraction, + NULL AS soakActivityFractionCV, 'Y' AS isUserInput + FROM OldSoakActivityFraction AS osaf INNER JOIN HourWeighting2 USING(sourceTypeID, dayID, hourID) + GROUP BY osaf.sourceTypeID, zoneID, monthID, osaf.dayID, opModeID ; +FLUSH TABLE SoakActivityFraction; + +-- +-- Drop any New Tables Created +-- + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS HourWeighting1; +DROP TABLE IF EXISTS HourWeighting2; +DROP TABLE IF EXISTS HourWeighting3; +DROP TABLE IF EXISTS HourWeighting4; +DROP TABLE IF EXISTS OldHourDay; +DROP TABLE IF EXISTS OldAvgSpeedDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution2; +DROP TABLE IF EXISTS OldSourceTypeHour; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS AggMonthGroupHour; +DROP TABLE IF EXISTS OldSampleVehicleTrip; +DROP TABLE IF EXISTS OldStartsPerVehicle; +DROP TABLE IF EXISTS OldSoakActivityFraction; +DROP TABLE IF EXISTS OldAverageTankTemperature; + +-- FLUSH TABLES; diff --git a/database/PreAggMONTH.sql b/database/PreAggMONTH.sql new file mode 100644 index 0000000..c312542 --- /dev/null +++ b/database/PreAggMONTH.sql @@ -0,0 +1,476 @@ +/* *********************************************************************************************************************** +-- MySQL Script file to aggregate the DAY level database to the MONTH level +-- performed on the MOVESExecution database +-- after merging of input databases by the InputDataManager +-- and before any MasterLoopable objects are executed. +-- An attempt is made to weight some aggregations by activity. +-- +-- Author Wesley Faler +-- Author Gwo Shyu +-- Author Mitch Cumberworth +-- Version 2015-06-03 +-- Written By Mitch Cumberworth, April, 2004 +-- Change history: +-- Updated by Mitch Cumberworth, July, 2005 for Task 208 +-- Updated by Mitch Cumberworth, November, 2005 for Task 210 +-- Modified by Cimulus, January, 2005 for Task 210 +-- Modified by Gwo Shyu, March 26, 2008 to fix the errors of duplicate entry and table existing + *********************************************************************************************************************** */ + +DROP TABLE IF EXISTS DayWeighting1; +DROP TABLE IF EXISTS DayWeighting1Sum; +DROP TABLE IF EXISTS DayWeighting1Normalized; +DROP TABLE IF EXISTS DayWeighting2; +DROP TABLE IF EXISTS DayWeighting2Normalized; +DROP TABLE IF EXISTS DayWeighting3; +DROP TABLE IF EXISTS DayWeighting3Normalized; +DROP TABLE IF EXISTS OldHourDay; +DROP TABLE IF EXISTS AggDayVMTFraction; +DROP TABLE IF EXISTS AggSourceTypeDayVMT; +DROP TABLE IF EXISTS AggHPMSVTypeDay; +DROP TABLE IF EXISTS OldAvgSpeedDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution2; +DROP TABLE IF EXISTS OldSourceTypeHour; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS OldSampleVehicleSoakingDay; +DROP TABLE IF EXISTS OldSampleVehicleTrip; +DROP TABLE IF EXISTS OldSampleVehicleDay; +DROP TABLE IF EXISTS OldStartsPerVehicle; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; + +-- +-- Create DayWeighting1 to be used to weight daily activity +-- by sourceTypeID and RoadtypeID. +-- +-- Note: will not sum to unity if all days not included +-- SELECT "Making DayWeighting1" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE DayWeighting1 ( + sourceTypeID SMALLINT, + roadTypeID SMALLINT, + dayID SMALLINT, + actFract FLOAT); +INSERT INTO DayWeighting1 +SELECT day.sourceTypeID, roadTypeID, day.dayID, +((sum(dayVMTFraction*noOfRealDays*monthVMTFraction))/sum(monthVMTFraction)) as actFract +FROM DayVMTFraction AS day +INNER JOIN DayOfAnyWeek dow ON dow.dayID = day.dayID +INNER JOIN MonthVMTFraction month ON month.sourceTypeID = day.sourceTypeID +AND month.monthID = day.monthID +GROUP BY day.sourceTypeID,roadTypeID,day.dayID; + + +CREATE UNIQUE INDEX index1 ON DayWeighting1 (sourceTypeID, roadTypeID, dayID); + +create table DayWeighting1Sum ( + sourceTypeID smallint not null, + roadTypeID smallint not null, + actFractSum double, + primary key (sourceTypeID, roadTypeID), + key (roadTypeID, sourceTypeID) +); + +insert into DayWeighting1Sum (sourceTypeID, roadTypeID, actFractSum) +select sourceTypeID, roadTypeID, sum(actFract) as actFractSum +from DayWeighting1 +group by sourceTypeID, roadTypeID; + +create table DayWeighting1Normalized ( + sourceTypeID smallint not null, + roadTypeID smallint not null, + dayID smallint not null, + actFract double, + primary key (sourceTypeID, roadTypeID, dayID) +); + +insert into DayWeighting1Normalized (sourceTypeID, roadTypeID, dayID, actFract) +select dw.sourceTypeID, dw.roadTypeID, dw.dayID, + case when ds.actFractSum > 0 then (dw.actFract / ds.actFractSum) else 0.0 end as actFract +from DayWeighting1 dw +inner join DayWeighting1Sum ds using (sourceTypeID, roadTypeID); + +-- +-- Create DayWeighting2 to be used to weight daily activity by sourceTypeID only +-- +-- Note: will not sum to unity if all days not included +-- SELECT "Making DayWeighting2" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE DayWeighting2 ( + sourceTypeID SMALLINT, + dayID SMALLINT, + actFract FLOAT); +INSERT INTO DayWeighting2 + SELECT dw.sourceTypeID, dayID, + (sum(actFract*roadTypeVMTFraction)/sum(roadTypeVMTFraction)) as actFract + FROM DayWeighting1 AS dw INNER JOIN RoadTypeDistribution USING (sourceTypeID, roadTypeID) + GROUP BY dw.sourceTypeID, dayID; +CREATE UNIQUE INDEX index1 ON DayWeighting2 (sourceTypeID, dayID); + +-- +-- Create DayWeighting2Normalized to be used to weight daily activity by sourceTypeID only +-- +-- Note: will not sum to unity if all days not included +-- SELECT "Making DayWeighting2Normalized" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE DayWeighting2Normalized ( + sourceTypeID SMALLINT, + dayID SMALLINT, + actFract FLOAT); +INSERT INTO DayWeighting2Normalized + SELECT dw.sourceTypeID, dayID, + (sum(actFract*roadTypeVMTFraction)/sum(roadTypeVMTFraction)) as actFract + FROM DayWeighting1Normalized AS dw INNER JOIN RoadTypeDistribution USING (sourceTypeID, roadTypeID) + GROUP BY dw.sourceTypeID, dayID; +CREATE UNIQUE INDEX index1 ON DayWeighting2Normalized (sourceTypeID, dayID); + +-- +-- Create DayWeighting3 to be used to weight daily activity when only dayID field present +-- +-- Note: will not sum to unity if all days not included +SELECT "Making DayWeighting3" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE DayWeighting3 ( + dayID SMALLINT, + actFract FLOAT); +INSERT INTO DayWeighting3 + SELECT dayID, actFract FROM DayWeighting2 WHERE sourceTypeID=21; +CREATE UNIQUE INDEX index1 ON DayWeighting3 (dayID); + +-- +-- Create DayWeighting3Normalized to be used to weight daily activity when only dayID field present +-- +-- Note: will not sum to unity if all days not included +SELECT "Making DayWeighting3Normalized" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE DayWeighting3Normalized ( + dayID SMALLINT, + actFract FLOAT); +INSERT INTO DayWeighting3Normalized + SELECT dayID, actFract FROM DayWeighting2Normalized WHERE sourceTypeID=21; +CREATE UNIQUE INDEX index1 ON DayWeighting3Normalized (dayID); + +-- +-- DayOfAnyWeek Table +-- +-- SELECT "Making DayOfAnyWeek" AS MARKER_POINT; +TRUNCATE DayOfAnyWeek; +INSERT INTO DayOfAnyWeek (dayID, dayName, noOfRealDays) + VALUES (0, "Whole Week", 7); +FLUSH TABLE DayOfAnyWeek; + +-- +-- HourDay Table (save old version as it is needed later) +-- +-- SELECT "Making HourDay" AS MARKER_POINT; +CREATE TABLE OldHourDay SELECT * from HourDay; +CREATE UNIQUE INDEX index2 ON OldHourDay(hourDayID); +TRUNCATE HourDay; +INSERT INTO HourDay (hourDayID, dayID, hourID) + VALUES (0,0,0); +FLUSH TABLE HourDay; + +-- +-- HourVMTFraction Table +-- +-- Already has index from DAY script. +-- SELECT "Making HourVMTFraction" AS MARKER_POINT; +TRUNCATE HourVMTFraction; +REPLACE INTO HourVMTFraction (sourceTypeID, roadTypeID, dayID, hourID, hourVMTFraction) + SELECT sourceTypeID, roadTypeID, 0 AS dayID, 0 AS hourID, 1.0 AS hourVMTFraction + FROM DayWeighting1 + GROUP BY sourceTypeID, roadTypeID; +FLUSH TABLE HourVMTFraction; + +-- +-- DayVMTFraction Table +-- +-- SELECT "Making DayVMTFraction" AS MARKER_POINT; +CREATE TABLE AggDayVMTFraction + SELECT sourceTypeID, monthID, roadTypeID + FROM DayVMTFraction + GROUP BY sourceTypeID, monthID, roadTypeID; +TRUNCATE DayVMTFraction; +REPLACE INTO DayVMTFraction (sourceTypeID, monthID, roadTypeID, dayID, dayVMTFraction) + SELECT sourceTypeID, monthID, roadTypeID, 0 AS dayID, 1.0 AS dayVMTFraction + FROM AggDayVMTFraction; +FLUSH TABLE DayVMTFraction; + +-- +-- SourceTypeDayVMT Table +-- +-- SELECT "Making SourceTypeDayVMT" AS MARKER_POINT; +CREATE TABLE AggSourceTypeDayVMT + SELECT yearID, monthID, 0 as dayID, sourceTypeID, sum(VMT*actFract) as VMT + FROM SourceTypeDayVMT + INNER JOIN DayWeighting2Normalized USING (sourceTypeID, dayID) + GROUP BY yearID, monthID, sourceTypeID; +TRUNCATE SourceTypeDayVMT; +REPLACE INTO SourceTypeDayVMT (yearID, monthID, dayID, sourceTypeID, VMT) + SELECT yearID, monthID, dayID, sourceTypeID, VMT + FROM AggSourceTypeDayVMT; +FLUSH TABLE SourceTypeDayVMT; + +-- +-- HPMSVTypeDay Table +-- +-- SELECT "Making HPMSVTypeDay" AS MARKER_POINT; +CREATE TABLE AggHPMSVTypeDay + SELECT yearID, monthID, 0 as dayID, hpmsVTypeID, sum(VMT*actFract) as VMT + FROM HPMSVTypeDay + INNER JOIN DayWeighting3Normalized USING (dayID) + GROUP BY yearID, monthID, hpmsVTypeID; +TRUNCATE HPMSVTypeDay; +REPLACE INTO HPMSVTypeDay (yearID, monthID, dayID, hpmsVTypeID, VMT) + SELECT yearID, monthID, dayID, hpmsVTypeID, VMT + FROM AggHPMSVTypeDay; +FLUSH TABLE HPMSVTypeDay; + +-- +-- AvgSpeedDistribution Table +-- +-- Table index already created in DAY aggregation +-- SELECT "Making AvgSpeedDistribution" AS MARKER_POINT; +CREATE TABLE OldAvgSpeedDistribution + SELECT sourceTypeID, roadTypeID, dayID, avgSpeedBinID, avgSpeedFraction + FROM AvgSpeedDistribution INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE AvgSpeedDistribution; +REPLACE INTO AvgSpeedDistribution + (sourceTypeID, roadTypeID, hourDayID, avgSpeedBinID, avgSpeedFraction) + SELECT asd.sourceTypeID, asd.roadTypeID, 0 AS hourDayID, asd.avgSpeedBinID, + (sum(asd.avgSpeedFraction*dw.actFract)/sum(dw.actFract)) AS avgSpeedFraction + FROM OldAvgSpeedDistribution AS asd INNER JOIN DayWeighting1 AS dw + USING (sourceTypeID, roadTypeID, dayID) + GROUP BY sourceTypeID, roadTypeID, avgSpeedBinID; +FLUSH TABLE AvgSpeedDistribution; + +-- +-- OpModeDistribution +-- +-- SELECT "Making OpModeDistribution" AS MARKER_POINT; +CREATE Table OldOpModeDistribution + SELECT omd.*, Link.roadTypeID + FROM OpModeDistribution AS omd INNER JOIN Link USING (linkID); +CREATE Table OldOpModeDistribution2 + SELECT omd.*, OldHourDay.dayID + FROM OldOpModeDistribution AS omd INNER JOIN OldHourDay USING (hourDayID); +CREATE UNIQUE INDEX index1 ON OldOpModeDistribution2 (sourceTypeID, roadTypeID, dayID); +TRUNCATE OpModeDistribution; +REPLACE INTO OpModeDistribution (sourceTypeID, hourDayID, linkID, polProcessID, opModeID, + opModeFraction, opModeFractionCV, isUserInput) + SELECT omd.sourceTypeID, 0 AS hourDayID, omd.linkID, omd.polProcessID, omd.opModeID, + (SUM(omd.opModeFraction * dw.actFract)/SUM(dw.actFract)) AS opModeFraction, + NULL AS opModeFractionCV, "Y" AS isUserInput + FROM OldOpModeDistribution2 AS omd INNER JOIN DayWeighting1 AS dw + USING (sourceTypeID, roadTypeID, dayID ) + GROUP BY omd.sourceTypeID, omd.linkID, omd.polProcessID, omd.opModeID; +FLUSH TABLE OpModeDistribution; + +-- +-- SourceTypeHour Table +-- +-- Table index already created in DAY aggregation +-- SELECT "Making SourceTypeHour" AS MARKER_POINT; +CREATE TABLE OldSourceTypeHour + SELECT sourceTypeID, dayID, idleSHOFactor, hotellingDist + FROM SourceTypeHour INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE SourceTypeHour; +REPLACE INTO SourceTypeHour + (sourceTypeID, hourDayID, idleSHOFactor, hotellingDist) + SELECT sth.sourceTypeID, 0 AS hourDayID, + (sum(sth.idleSHOFactor*dw.actFract)/sum(dw.actFract)) AS idleSHOFactor, + (sum(sth.hotellingDist*dw.actFract)/sum(dw.actFract)) AS hotellingDist + FROM OldSourceTypeHour AS sth INNER JOIN DayWeighting2 AS dw + USING (sourceTypeID, dayID) + GROUP BY sourceTypeID; +FLUSH TABLE SourceTypeHour; + +-- +-- SHO +-- +-- SELECT "Making SHO" AS MARKER_POINT; +CREATE TABLE OldSHO + SELECT SHO.*, dayID + FROM SHO INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index1 ON OldSHO (monthID, yearID, ageID, linkID, sourceTypeID); +TRUNCATE SHO; +REPLACE INTO SHO (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, SHO, SHOCV, distance, isUserInput) + SELECT 0 AS hourDayID, monthID, yearID, ageID, linkID, sourceTypeID, + sum(SHO) AS SHO, NULL AS SHOCV, sum(distance) AS distance, "Y" AS isUserInput + FROM OldSHO + GROUP BY monthID, yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SHO; + +-- +-- SourceHours +-- +-- SELECT "Making SourceHours" AS MARKER_POINT; +CREATE TABLE OldSourceHours + SELECT SourceHours.*, dayID + FROM SourceHours INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index1 ON OldSourceHours (monthID, yearID, ageID, linkID, sourceTypeID); +TRUNCATE SourceHours; +REPLACE INTO SourceHours (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, sourceHours, sourceHoursCV, isUserInput) + SELECT 0 AS hourDayID, monthID, yearID, ageID, linkID, sourceTypeID, + sum(sourceHours) AS sourceHours, NULL AS sourceHoursCV, "Y" AS isUserInput + FROM OldSourceHours + GROUP BY monthID, yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SourceHours; + +-- +-- Starts +-- +-- SELECT "Making Starts" AS MARKER_POINT; +CREATE TABLE OldStarts + SELECT Starts.*, dayID + FROM Starts INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index1 ON OldStarts (monthID, yearID, ageID, zoneID, sourceTypeID); +TRUNCATE Starts; +REPLACE INTO Starts (hourDayID, monthID, yearID, ageID, zoneID, + sourceTypeID, starts, startsCV, isUserInput) + SELECT 0 AS hourDayID, monthID, yearID, ageID, zoneID, sourceTypeID, + sum(starts) AS starts, NULL AS startsCV, "Y" AS isUserInput + FROM OldStarts + GROUP BY monthID, yearID, ageID, zoneID, sourceTypeID; +FLUSH TABLE Starts; + +-- +-- ExtendedIdleHours +-- +-- SELECT "Making ExtendedIdleHours" AS MARKER_POINT; +CREATE TABLE OldExtendedIdleHours + SELECT ExtendedIdleHours.*, dayID + FROM ExtendedIdleHours INNER JOIN OldHourDay USING(hourDayID); +CREATE INDEX index1 ON OldExtendedIdleHours (sourceTypeID, monthID, yearID, ageID, zoneID); +TRUNCATE ExtendedIdleHours; +REPLACE INTO ExtendedIdleHours (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID, + extendedIdleHours, extendedIdleHoursCV, isUserInput) + SELECT sourceTypeID, 0 AS hourDayID, monthID, yearID, ageID, zoneID, + sum(extendedIdleHours) AS extendedIdleHours, NULL AS extendedIdleHoursCV, "Y" AS isUserInput + FROM OldExtendedIdleHours + GROUP BY sourceTypeID, monthID, yearID, ageID, zoneID; +FLUSH TABLE ExtendedIdleHours; + +-- +-- SampleVehicleSoakingDay +-- +-- SELECT "Making SampleVehicleSoakingDay" AS MARKER_POINT; +CREATE TABLE OldSampleVehicleSoakingDay SELECT * FROM SampleVehicleSoakingDay; +TRUNCATE SampleVehicleSoakingDay; +REPLACE INTO SampleVehicleSoakingDay (soakDayID, sourceTypeID, dayID, F) + SELECT soakDayID, sourceTypeID, 0 as dayID, sum(F* (CASE WHEN dayID=5 THEN 5 ELSE 2 END))/sum(CASE WHEN dayID=5 THEN 5 ELSE 2 END) + FROM OldSampleVehicleSoakingDay + GROUP BY soakDayID, sourceTypeID + ORDER BY NULL; +FLUSH TABLE SampleVehicleSoakingDay; + +-- +-- SampleVehicleTrip +-- +-- SELECT "Making SampleVehicleTrip" AS MARKER_POINT; +CREATE TABLE OldSampleVehicleTrip SELECT * FROM SampleVehicleTrip; +TRUNCATE SampleVehicleTrip; +REPLACE INTO SampleVehicleTrip (vehID, tripID, dayID, hourID, priorTripID, + keyOnTime, keyOffTime) + SELECT vehID, tripID, 0 AS dayID, 0 as hourID, priorTripID, keyOnTime, keyOffTime + FROM OldSampleVehicleTrip; +FLUSH TABLE SampleVehicleTrip; + +-- +-- SampleVehicleDay +-- +-- SELECT "Making SampleVehicleDay" AS MARKER_POINT; +CREATE TABLE OldSampleVehicleDay SELECT * FROM SampleVehicleDay; +TRUNCATE SampleVehicleDay; +REPLACE INTO SampleVehicleDay (vehID, dayID, sourceTypeID) + SELECT vehID, 0 AS dayID, sourceTypeID + FROM OldSampleVehicleDay; +FLUSH TABLE SampleVehicleDay; + +-- +-- StartsPerVehicle +-- +-- SELECT "Making StartsPerVehicle" AS MARKER_POINT; +CREATE TABLE OldStartsPerVehicle SELECT * FROM StartsPerVehicle ; +TRUNCATE StartsPerVehicle; +REPLACE INTO StartsPerVehicle (sourceTypeID, hourDayID, + startsPerVehicle, startsPerVehicleCV) + SELECT sourceTypeID, 0 AS hourDayID, sum(startsPerVehicle) as startsPerVehicle, + NULL AS startsPerVehicleCV + FROM OldStartsPerVehicle GROUP BY sourceTypeID; +FLUSH TABLE StartsPerVehicle; + +-- +-- AverageTankTemperature +-- +-- SELECT "Making AverageTankTemperature" AS MARKER_POINT; +CREATE TABLE OldAverageTankTemperature + SELECT tankTemperatureGroupID, zoneID, monthID, dayID, opModeID, averageTankTemperature + FROM AverageTankTemperature INNER JOIN OldHourDay USING (hourDayID); +TRUNCATE AverageTankTemperature; +REPLACE INTO AverageTankTemperature (tankTemperatureGroupID, zoneID, monthID, + hourDayID, opModeID, averageTankTemperature, averageTankTemperatureCV, isUserInput) + SELECT tankTemperatureGroupID, zoneID, monthID, 0 AS hourDayID, opModeID, + sum(averageTankTemperature*actFract) AS averageTankTemperature, + NULL AS averageTankTemperatureCV, 'Y' AS isUserInput + FROM OldAverageTankTemperature AS oatt INNER JOIN DayWeighting3 USING(dayID) + GROUP BY tankTemperatureGroupID, zoneID, monthID, opModeID ; +FLUSH TABLE AverageTankTemperature; + +-- +-- SoakActivityFraction +-- +-- SELECT "Making SoakActivityFraction" AS MARKER_POINT; +CREATE TABLE OldSoakActivityFraction + SELECT sourceTypeID, zoneID, monthID, dayID, opModeID, soakActivityFraction + FROM SoakActivityFraction INNER JOIN OldHourDay USING(hourDayID); +TRUNCATE SoakActivityFraction; +REPLACE INTO SoakActivityFraction (sourceTypeID, zoneID, monthID, + hourDayID, opModeID, soakActivityFraction, soakActivityFractionCV, isUserInput) + SELECT osaf.sourceTypeID, zoneID, monthID, 0 AS hourDayID, opModeID, + sum(soakActivityFraction*actFract) AS soakActivityFraction, + NULL AS soakActivityFractionCV, 'Y' AS isUserInput + FROM OldSoakActivityFraction AS osaf INNER JOIN DayWeighting2 USING(sourceTypeID, dayID) + GROUP BY osaf.sourceTypeID, zoneID, monthID, opModeID ; +FLUSH TABLE SoakActivityFraction; + +-- +-- Drop any New Tables Created +-- + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS DayWeighting1; +DROP TABLE IF EXISTS DayWeighting1Sum; +DROP TABLE IF EXISTS DayWeighting1Normalized; +DROP TABLE IF EXISTS DayWeighting2; +DROP TABLE IF EXISTS DayWeighting2Normalized; +DROP TABLE IF EXISTS DayWeighting3; +DROP TABLE IF EXISTS DayWeighting3Normalized; +DROP TABLE IF EXISTS OldHourDay; +DROP TABLE IF EXISTS AggDayVMTFraction; +DROP TABLE IF EXISTS AggSourceTypeDayVMT; +DROP TABLE IF EXISTS AggHPMSVTypeDay; +DROP TABLE IF EXISTS OldAvgSpeedDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS OldOpModeDistribution2; +DROP TABLE IF EXISTS OldSourceTypeHour; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS OldSampleVehicleSoakingDay; +DROP TABLE IF EXISTS OldSampleVehicleTrip; +DROP TABLE IF EXISTS OldSampleVehicleDay; +DROP TABLE IF EXISTS OldStartsPerVehicle; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; + +-- FLUSH TABLES; + diff --git a/database/PreAggNATION.sql b/database/PreAggNATION.sql new file mode 100644 index 0000000..c63d28a --- /dev/null +++ b/database/PreAggNATION.sql @@ -0,0 +1,704 @@ +/* *********************************************************************************************************************** +-- MySQL Script file to pre-aggregate the county level database to the National Level +-- (but preserving the roadtype (Link) distinctions which exist within counties.) +-- An attempt is made to weight some aggregations by activity. +-- These weightings assume that all states and counties are included +-- +-- Author Wesley Faler +-- Author Mitch Cumberworth +-- Author Gwo Shyu +-- Version 2015-04-19 +-- *********************************************************************************************************************** */ + + +DROP TABLE IF EXISTS SurrogateActivity; +DROP TABLE IF EXISTS OldCounty; +DROP TABLE IF EXISTS OldYear; +DROP TABLE IF EXISTS OldLink; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS AggZoneRoadType; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS AggNRFuelSupply; +DROP TABLE IF EXISTS OldIMCoverage; +DROP TABLE IF EXISTS AggSHO; +DROP TABLE IF EXISTS AggSourceHours; +DROP TABLE IF EXISTS AggStarts; +DROP TABLE IF EXISTS AggExtendedIdleHours; +DROP TABLE IF EXISTS AggAverageTankTemperature; +DROP TABLE IF EXISTS AggSoakActivityFraction; +DROP TABLE IF EXISTS AggFuelUsageFraction; + +-- Since "Nation" does not include the Virgin Islands or +-- Puerto Rico, remove their information from State, County, Zone +-- and all Nonroad tables as well. +delete from zone +using state +inner join county on (county.stateID=state.stateID) +inner join zone on (zone.countyID=county.countyID) +where state.stateID in (72,78); + +delete from nrBaseYearEquipPopulation where stateID in (72,78); +delete from nrGrowthPatternFinder where stateID in (72,78); +delete from nrMonthAllocation where stateID in (72,78); +delete from nrStateSurrogate where stateID in (72,78); + +delete from county +using state +inner join county on (county.stateID=state.stateID) +where state.stateID in (72,78); + +delete from state +where state.stateID in (72,78); + + +-- +-- FLUSH TABLES; +-- +-- Create a table to be used for activity-weighting by zone or county +-- +-- SELECT "Making SurrogateActivity" AS MARKER_POINT; + +create table SurrogateActivity ( + zoneID int not null, + countyID int not null, + actFract double not null, + primary key (zoneID, countyID), + key (countyID, zoneID) +); + +insert into SurrogateActivity (zoneID, countyID, actFract) + SELECT zoneID, countyID, startAllocFactor as actFract from Zone; + +-- +-- SurrogateStateActivity Table +-- +-- SELECT "Making SurrogateStateActivity" AS MARKER_POINT; +drop table if exists SurrogateStateActivityTotal; +create table SurrogateStateActivityTotal +select sum(actFract) as nationalActivityFraction +from SurrogateActivity; + +drop table if exists SurrogateStateActivity; +create table SurrogateStateActivity ( + stateID int not null, + actFract double not null, + primary key (stateID) +); + +insert into SurrogateStateActivity (stateID, actFract) +select c.stateID, + case when nationalActivityFraction <= 0 then 0 + else sum(actFract)/nationalActivityFraction + end as actFract +from SurrogateActivity sa +inner join County c using (countyID) +inner join SurrogateStateActivityTotal t +where t.nationalActivityFraction > 0 +group by c.stateID; + +-- +-- SurrogateCountyActivity Table +-- +-- SELECT "Making SurrogateCountyActivity" AS MARKER_POINT; +drop table if exists SurrogateCountyActivity; +create table SurrogateCountyActivity ( + countyID int not null, + actFract double not null, + primary key (countyID) +); + +insert into SurrogateCountyActivity (countyID, actFract) +select countyID, + case when nationalActivityFraction <= 0 then 0 + else sum(actFract)/nationalActivityFraction + end as actFract +from SurrogateActivity sa +inner join SurrogateStateActivityTotal t +where t.nationalActivityFraction > 0 +group by countyID; + +-- +-- SurrogateRegionActivity Table +-- +-- SELECT "Making SurrogateRegionActivity" AS MARKER_POINT; +drop table if exists SurrogateRegionActivity; +create table SurrogateRegionActivity ( + fuelRegionID int not null, + fuelYearID int not null, + actFract double not null, + primary key (fuelRegionID, fuelYearID) +); + +insert into SurrogateRegionActivity (fuelRegionID, fuelYearID, actFract) +select regionID as fuelRegionID, fuelYearID, sum(actFract) +from SurrogateActivity +inner join RegionCounty using (countyID) +where regionCodeID=1 +group by regionID, fuelYearID; + +drop table if exists SurrogateRegionActivityTotal; +create table SurrogateRegionActivityTotal ( + fuelYearID int not null primary key, + actFractTotal double not null +); +insert into SurrogateRegionActivityTotal (fuelYearID, actFractTotal) +select fuelYearID, sum(actFract) +from SurrogateRegionActivity +group by fuelYearID; + +update SurrogateRegionActivity, SurrogateRegionActivityTotal +set actFract = actFract/actFractTotal +where SurrogateRegionActivity.fuelYearID = SurrogateRegionActivityTotal.fuelYearID; + +-- +-- State Table +-- +-- SELECT "Making State" AS MARKER_POINT; +TRUNCATE State; +INSERT INTO State (stateID, stateName, stateAbbr) + VALUES (0, "Nation", "US"); +FLUSH TABLE State; + +-- +-- County Table +-- +-- SELECT "Making County" AS MARKER_POINT; +CREATE TABLE OldCounty SELECT * FROM County; +TRUNCATE County; +INSERT INTO County (countyID, stateID, countyName, altitude, GPAFract, + barometricPressure, barometricPressureCV) + SELECT 0, 0, "Nation", "L", SUM(GPAFract*ActFract) AS GPAFract, + SUM(barometricPressure*ActFract) AS barometricPressure, NULL AS barometricPressureCV + FROM OldCounty INNER JOIN SurrogateActivity USING (countyID); +FLUSH TABLE County; + +-- +-- CountyYear Table +-- +-- SELECT "Making CountyYear" AS MARKER_POINT; +CREATE TABLE OldYear SELECT DISTINCT yearID from CountyYear; +TRUNCATE CountyYear; +REPLACE INTO CountyYear (countyID, yearID) + SELECT 0 AS countyID, yearID + FROM OldYear; +FLUSH TABLE CountyYear; + +-- +-- Zone Table +-- +-- SELECT "Making Zone" AS MARKER_POINT; +TRUNCATE Zone; +INSERT INTO Zone (zoneID, countyID, startAllocFactor, idleAllocFactor, SHPAllocFactor) + VALUES (0, 0, 1.0, 1.0, 1.0); +FLUSH TABLE Zone; + +-- +-- Link Table +-- +-- SELECT "Making Link" AS MARKER_POINT; +CREATE Table OldLink + SELECT * from Link; +TRUNCATE Link; +INSERT INTO Link (linkID, countyID, zoneID, roadTypeID, + linkLength,linkVolume, linkAvgSpeed, linkDescription, linkAvgGrade) + SELECT roadTypeID AS linkID,0 as countyID, 0 AS zoneID, roadTypeID as roadTypeID, + NULL AS linkLength, NULL AS linkVolume, SUM(linkAvgSpeed * actFract) AS linkAvgSpeed, + NULL AS linkDescription, + SUM(linkAvgGrade * actFract) AS linkAvgGrade + FROM OldLink INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY roadTypeID; +FLUSH TABLE Link; + +-- +-- ZoneMonthHour +-- +-- SELECT "Making ZoneMonthHour" AS MARKER_POINT; +CREATE Table AggZoneMonthHour ( + monthID SMALLINT, + hourID SMALLINT, + temperature FLOAT, + relHumidity FLOAT); +INSERT INTO AggZoneMonthHour + SELECT monthID, hourID, sum(temperature*actFract) as temperature, + sum(relHumidity*actFract) AS relHumidity + FROM ZoneMonthHour INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY monthID, hourID; +CREATE UNIQUE INDEX index1 ON AggZoneMonthHour (monthID, hourID); +TRUNCATE ZoneMonthHour; +REPLACE INTO ZoneMonthHour (monthID, zoneID, hourID, temperature, temperatureCV, + relHumidity, relativeHumidityCV, heatIndex, specificHumidity) + SELECT monthID, 0 AS zoneID, hourID, temperature, + NULL AS temperatureCV, relHumidity, NULL AS relativeHumidityCV, + 0.0 as heatIndex, 0.0 as specificHumidity + FROM AggZoneMonthHour + GROUP BY monthID, hourID; +FLUSH TABLE ZoneMonthHour; + +-- +-- OpModeDistribution +-- +-- SELECT "Making OpModeDistribution" AS MARKER_POINT; +CREATE Table OldOpModeDistribution + SELECT omd.*, link.roadTypeID, link.zoneID + FROM OpModeDistribution AS omd INNER JOIN OldLink as link USING (linkID); +TRUNCATE OpModeDistribution; +INSERT INTO OpModeDistribution (sourceTypeID, hourDayID, linkID, polProcessID, opModeID, + opModeFraction, opModeFractionCV, isUserInput) + SELECT sourceTypeID, hourDayID, roadTypeID AS linkID, polProcessID, opModeID, + SUM(opModeFraction * actFract) AS opModeFraction, NULL AS opModeFractionCV, + "Y" AS isUserInput + FROM OldOpModeDistribution INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY sourceTypeID, hourDayID, roadTypeID, polProcessID, opModeID; +FLUSH TABLE OpModeDistribution; + +-- +-- ZoneRoadType +-- +-- SELECT "Making ZoneRoadType" AS MARKER_POINT; +CREATE TABLE AggZoneRoadType ( + roadTypeID SMALLINT, + SHOAllocFactor double); +INSERT INTO AggZoneRoadType + SELECT roadTypeID, sum(1.0000000000000 * SHOAllocFactor) AS SHOAllocFactor + FROM ZoneRoadType + GROUP BY roadTypeID ; +TRUNCATE ZoneRoadType; +REPLACE INTO ZoneRoadType (zoneID, roadTypeID, SHOAllocFactor) + SELECT 0 AS zoneID, roadTypeID, SHOAllocFactor + FROM AggZoneRoadType; +FLUSH TABLE ZoneRoadType; + +-- +-- Fuel Supply +-- +-- Note: algorithm is specific to particular default values used. +-- SELECT "Making FuelSupply" AS MARKER_POINT; +-- Creating table explicitly to control column types and avoid significance problems +CREATE TABLE AggFuelSupply ( + fuelYearID SMALLINT, + monthGroupID SMALLINT, + fuelFormulationID SMALLINT, + haveFract double); +INSERT INTO AggFuelSupply + SELECT FuelSupply.fuelYearID, monthGroupID,fuelFormulationID, + sum(marketShare*actFract) as haveFract + FROM FuelSupply + INNER JOIN SurrogateRegionActivity USING (fuelRegionID,fuelYearID) + GROUP BY fuelYearID, monthGroupID, fuelFormulationID; +TRUNCATE FuelSupply; +REPLACE INTO FuelSupply (fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + marketShare, marketShareCV) + SELECT 0 AS fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + haveFract AS marketShare, + NULL AS marketShareCV + FROM AggFuelSupply; +FLUSH TABLE FuelSupply; + +-- +-- Nonroad Fuel Supply +-- +-- Note: algorithm is specific to particular default values used. +-- SELECT "Making NRFuelSupply" AS MARKER_POINT; +-- Creating table explicitly to control column types and avoid significance problems +CREATE TABLE AggNRFuelSupply ( + fuelYearID SMALLINT, + monthGroupID SMALLINT, + fuelFormulationID SMALLINT, + haveFract double); +INSERT INTO AggNRFuelSupply + SELECT NRFuelSupply.fuelYearID, monthGroupID,fuelFormulationID, + sum(marketShare*actFract) as haveFract + FROM NRFuelSupply + INNER JOIN SurrogateRegionActivity USING (fuelRegionID,fuelYearID) + GROUP BY fuelYearID, monthGroupID, fuelFormulationID; +TRUNCATE NRFuelSupply; +REPLACE INTO NRFuelSupply (fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + marketShare, marketShareCV) + SELECT 0 AS fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + haveFract AS marketShare, + NULL AS marketShareCV + FROM AggNRFuelSupply; +FLUSH TABLE NRFuelSupply; + +TRUNCATE Region; +insert into Region (regionID, description) values (0,'Aggregated Nation'); + +TRUNCATE RegionCounty; +insert into RegionCounty (regionID, countyID, regionCodeID, fuelYearID) +select distinct 0 as regionID, 0 as countyID, 1 as regionCodeID, fuelYearID +from fuelSupply; + +insert into RegionCounty (regionID, countyID, regionCodeID, fuelYearID) +select distinct 0 as regionID, 0 as countyID, 2 as regionCodeID, fuelYearID +from fuelSupply; + +-- +-- Fuel Usage +-- +-- SELECT "Making FuelUsageFraction" AS MARKER_POINT; +-- Creating table explicitly to control column types and avoid significance problems +CREATE TABLE AggFuelUsageFraction ( + fuelYearID SMALLINT, + modelYearGroupID int, + sourceBinFuelTypeID smallint, + fuelSupplyFuelTypeID smallint, + usageFraction double +); +INSERT INTO AggFuelUsageFraction + SELECT f.fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + sum(usageFraction*actFract) as usageFraction + FROM FuelUsageFraction AS f INNER JOIN SurrogateActivity USING(countyID) + GROUP BY fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID; +TRUNCATE FuelUsageFraction; +REPLACE INTO FuelUsageFraction (countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + usageFraction) + SELECT 0 AS countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + least(usageFraction,1) + FROM AggFuelUsageFraction; +FLUSH TABLE FuelUsageFraction; + +-- +-- IMCoverage +-- +-- SELECT "Making IMCoverage Table" AS MARKER_POINT; +CREATE TABLE OldIMCoverage SELECT * FROM IMCoverage WHERE useIMyn = 'Y'; +CREATE INDEX OldIMCoverageIndex1 ON OldIMCoverage (countyID); +TRUNCATE IMCoverage; +-- When aggregated, IM programs may overlap. This is better than extending model years +-- or forcing all to a particular IMFactor entry. The overlap is handled within each +-- calculator. +DROP TABLE IMCoverage; +CREATE TABLE IMCoverage ( + stateID int(11) default NULL, + countyID int(11) NOT NULL, + yearID smallint(6) NOT NULL, + polProcessID int NOT NULL, + fuelTypeID smallint(6) NOT NULL, + sourceTypeID smallint(6) NOT NULL, + IMProgramID smallint(6) NOT NULL default '0', + inspectFreq smallint(6) default NULL, + testStandardsID smallint(6) default NULL, + begModelYearID smallint(4) default NULL, + endModelYearID smallint(4) default NULL, + useIMyn char(1) NOT NULL default 'Y', + complianceFactor float default NULL, + KEY XPKIMCoverage (polProcessID,countyID,yearID,sourceTypeID,fuelTypeID,IMProgramID) +); + +-- Add back all of the old IMCoverage records, but use the pseudo county's ID +INSERT INTO IMCoverage (stateID, countyID, yearID, polProcessID, fuelTypeID, + sourceTypeID, IMProgramID, inspectFreq, testStandardsID, + begModelYearID, endModelYearID, useIMyn, + complianceFactor) +SELECT 0 as stateID, 0 as countyID, yearID, polProcessID, fuelTypeID, + sourceTypeID, IMProgramID, inspectFreq, testStandardsID, + begModelYearID, endModelYearID, useIMyn, + (complianceFactor*actFract) as complianceFactor +FROM OldIMCoverage +INNER JOIN SurrogateActivity USING(countyID); + +-- +-- SHO +-- +-- SELECT "Making SHO" AS MARKER_POINT; + +CREATE TABLE AggSHO ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + roadTypeID SMALLINT, + sourceTypeID SMALLINT, + SHO double, + distance double); +INSERT INTO AggSHO + SELECT hourDayID, monthID, yearID, ageID, roadTypeID, sourceTypeID, + sum(SHO) AS SHO, sum(distance) AS distance + FROM SHO INNER JOIN OldLink USING(linkID) + GROUP BY hourDayID, monthID, yearID, ageID, roadTypeID, sourceTypeID; +TRUNCATE SHO; +INSERT INTO SHO (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, SHO, SHOCV, distance, isUserInput) + SELECT hourDayID, monthID, yearID, ageID, roadTypeID AS linkID, + sourceTypeID, SHO, NULL AS SHOCV, distance, "Y" AS isUserInput + FROM AggSHO; +FLUSH TABLE SHO; + +-- +-- SourceHours +-- +-- SELECT "Making SourceHours" AS MARKER_POINT; + +CREATE TABLE AggSourceHours ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + roadTypeID SMALLINT, + sourceTypeID SMALLINT, + sourceHours double); +INSERT INTO AggSourceHours + SELECT hourDayID, monthID, yearID, ageID, roadTypeID, sourceTypeID, + sum(sourceHours) AS sourceHours + FROM SourceHours INNER JOIN OldLink USING(linkID) + GROUP BY hourDayID, monthID, yearID, ageID, roadTypeID, sourceTypeID; +TRUNCATE SourceHours; +INSERT INTO SourceHours (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, sourceHours, sourceHoursCV,isUserInput) + SELECT hourDayID, monthID, yearID, ageID, roadTypeID AS linkID, + sourceTypeID, sourceHours, NULL AS sourceHoursCV, "Y" AS isUserInput + FROM AggSourceHours; +FLUSH TABLE SourceHours; + +-- +-- Starts +-- +-- SELECT "Making Starts" AS MARKER_POINT; +CREATE TABLE AggStarts ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + sourceTypeID SMALLINT, + starts double); +INSERT INTO AggStarts + SELECT hourDayID, monthID, yearID, ageID, sourceTypeID, + sum(starts) AS starts + FROM Starts + GROUP BY hourDayID, monthID, yearID, ageID, sourceTypeID; +TRUNCATE Starts; +REPLACE INTO Starts (hourDayID, monthID, yearID, ageID, zoneID, + sourceTypeID, starts, startsCV, isUserInput) + SELECT hourDayID, monthID, yearID, ageID, 0 AS zoneID, + sourceTypeID, starts, NULL AS startsCV, "Y" AS isUserInput + FROM AggStarts; +FLUSH TABLE Starts; + +-- +-- ExtendedIdleHours +-- +-- SELECT "Making ExtendedIdleHours" AS MARKER_POINT; +CREATE TABLE AggExtendedIdleHours ( + sourceTypeID SMALLINT, + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + extendedIdleHours double); +INSERT INTO AggExtendedIdleHours + SELECT sourceTypeID, hourDayID, monthID, yearID, ageID, + sum(extendedIdleHours) AS extendedIdleHours + FROM ExtendedIdleHours + GROUP BY sourceTypeID, hourDayID, monthID, yearID, ageID; +TRUNCATE ExtendedIdleHours; +REPLACE INTO ExtendedIdleHours (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID, + extendedIdleHours, extendedIdleHoursCV, isUserInput) + SELECT sourceTypeID, hourDayID, monthID, yearID, ageID, 0 AS zoneID, + extendedIdleHours, NULL AS extendedIdleHoursCV, "Y" AS isUserInput + FROM AggExtendedIdleHours; +FLUSH TABLE ExtendedIdleHours; + +-- +-- AverageTankTemperature +-- +-- SELECT "Making AverageTankTemperature" AS MARKER_POINT; +CREATE Table AggAverageTankTemperature ( + tankTemperatureGroupID SMALLINT, + monthID SMALLINT, + hourDayID SMALLINT, + opModeID SMALLINT, + averageTankTemperature FLOAT); +INSERT INTO AggAverageTankTemperature + SELECT tankTemperatureGroupID, monthID, hourDayID, opModeID, + sum(averageTankTemperature*actFract) as averageTankTemperature + FROM AverageTankTemperature INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY tankTemperatureGroupID, monthID, hourDayID, opModeID; + + +TRUNCATE AverageTankTemperature; +REPLACE INTO AverageTankTemperature (tankTemperatureGroupID, zoneID, + monthID, hourDayID, opModeID, averageTankTemperature, averageTankTemperatureCV, + isUserInput) + SELECT tankTemperatureGroupID, 0 AS zoneID, monthID, hourDayID, opModeID, + averageTankTemperature, NULL AS averageTankTemperatureCV, 'Y' AS isUserInput + FROM AggAverageTankTemperature; +FLUSH TABLE AverageTankTemperature; + +-- +-- SoakActivityFraction +-- +-- SELECT "Making SoakActivityFraction" AS MARKER_POINT; +CREATE Table AggSoakActivityFraction ( + sourceTypeID SMALLINT, + monthID SMALLINT, + hourDayID SMALLINT, + opModeID SMALLINT, + soakActivityFraction double); +INSERT INTO AggSoakActivityFraction + SELECT sourceTypeID, monthID, hourDayID, opModeID, + sum(soakActivityFraction*actFract) as soakActivityFraction + FROM SoakActivityFraction INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY sourceTypeID, monthID, hourDayID, opModeID; +TRUNCATE SoakActivityFraction; +REPLACE INTO SoakActivityFraction (sourceTypeID, zoneID, + monthID, hourDayID, opModeID, soakActivityFraction, soakActivityFractionCV, isUserInput) + SELECT sourceTypeID, 0 AS zoneID, monthID, hourDayID, opModeID, + soakActivityFraction, NULL AS soakActivityFractionCV, 'Y' AS isUserInput + FROM AggSoakActivityFraction; +FLUSH TABLE SoakActivityFraction; + +-- +-- ColdSoakTankTemperature +-- +-- SELECT "Making ColdSoakTankTemperature" AS MARKER_POINT; +CREATE Table AggColdSoakTankTemperature ( + monthID SMALLINT, + hourID SMALLINT, + coldSoakTankTemperature FLOAT); +INSERT INTO AggColdSoakTankTemperature + SELECT monthID, hourID, sum(coldSoakTankTemperature*actFract) as coldSoakTankTemperature + FROM ColdSoakTankTemperature INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY monthID, hourID; +CREATE UNIQUE INDEX index1 ON AggColdSoakTankTemperature (monthID, hourID); +TRUNCATE ColdSoakTankTemperature; +REPLACE INTO ColdSoakTankTemperature (monthID, zoneID, hourID, coldSoakTankTemperature) + SELECT monthID, 0 AS zoneID, hourID, coldSoakTankTemperature + FROM AggColdSoakTankTemperature + GROUP BY monthID, hourID; +FLUSH TABLE ColdSoakTankTemperature; + +-- +-- ColdSoakInitialHourFraction +-- +-- SELECT "Making ColdSoakInitialHourFraction" AS MARKER_POINT; +CREATE Table AggColdSoakInitialHourFraction ( + sourceTypeID SMALLINT, + monthID SMALLINT, + hourDayID SMALLINT, + initialHourDayID SMALLINT, + coldSoakInitialHourFraction FLOAT); +INSERT INTO AggColdSoakInitialHourFraction + SELECT sourceTypeID, monthID, hourDayID, initialHourDayID, sum(coldSoakInitialHourFraction*actFract) as coldSoakInitialHourFraction + FROM ColdSoakInitialHourFraction INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY sourceTypeID, monthID, hourDayID, initialHourDayID; +CREATE UNIQUE INDEX index1 ON AggColdSoakInitialHourFraction (sourceTypeID, monthID, hourDayID, initialHourDayID); +TRUNCATE ColdSoakInitialHourFraction; +REPLACE INTO ColdSoakInitialHourFraction (sourceTypeID, monthID, zoneID, hourDayID, initialHourDayID, + coldSoakInitialHourFraction, isUserInput) + SELECT sourceTypeID, monthID, 0 AS zoneID, hourDayID, initialHourDayID, coldSoakInitialHourFraction, + 'Y' as isUserInput + FROM AggColdSoakInitialHourFraction + GROUP BY sourceTypeID, monthID, hourDayID, initialHourDayID; +FLUSH TABLE ColdSoakInitialHourFraction; + +-- +-- AverageTankGasoline +-- +-- SELECT "Making AverageTankGasoline" AS MARKER_POINT; +CREATE Table AggAverageTankGasoline ( + fuelTypeID SMALLINT, + fuelYearID SMALLINT, + monthGroupID SMALLINT, + ETOHVolume FLOAT, + RVP FLOAT); +INSERT INTO AggAverageTankGasoline + SELECT fuelTypeID, fuelYearID, monthGroupID, + sum(ETOHVolume*actFract) as ETOHVolume, + sum(RVP*actFract) as RVP + FROM AverageTankGasoline INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY fuelTypeID, fuelYearID, monthGroupID; +CREATE UNIQUE INDEX index1 ON AggAverageTankGasoline (fuelTypeID, fuelYearID, monthGroupID); +TRUNCATE AverageTankGasoline; +REPLACE INTO AverageTankGasoline (zoneID, fuelTypeID, fuelYearID, monthGroupID, ETOHVolume, RVP, isUserInput) + SELECT 0 AS zoneID, fuelTypeID, fuelYearID, monthGroupID, ETOHVolume, RVP, 'Y' as isUserInput + FROM AggAverageTankGasoline + GROUP BY fuelTypeID, fuelYearID, monthGroupID; +FLUSH TABLE AverageTankGasoline; + +-- +-- nrBaseYearEquipPopulation Table +-- +-- SELECT "Making nrBaseYearEquipPopulation" AS MARKER_POINT; +DROP TABLE IF EXISTS OldnrBaseYearEquipPopulation; +CREATE Table OldnrBaseYearEquipPopulation + SELECT * from nrBaseYearEquipPopulation; +TRUNCATE nrBaseYearEquipPopulation; +INSERT INTO nrBaseYearEquipPopulation (sourceTypeID, stateID, population, NRBaseYearID) + SELECT sourceTypeID, 0 as stateID, sum(population) as population, NRBaseYearID + FROM OldnrBaseYearEquipPopulation + GROUP BY sourceTypeID, NRBaseYearID; +FLUSH TABLE nrBaseYearEquipPopulation; + +-- +-- nrGrowthPatternFinder Table +-- +-- SELECT "Making nrGrowthPatternFinder" AS MARKER_POINT; +DROP TABLE IF EXISTS OldnrGrowthPatternFinder; +CREATE Table OldnrGrowthPatternFinder + SELECT * from nrGrowthPatternFinder; +TRUNCATE nrGrowthPatternFinder; +INSERT INTO nrGrowthPatternFinder (SCC, stateID, growthPatternID) + select SCC, 0 as stateID, min(growthPatternID) as growthPatternID + from OldnrGrowthPatternFinder + group by SCC; +FLUSH TABLE nrGrowthPatternFinder; + +-- +-- nrMonthAllocation Table +-- +-- SELECT "Making nrMonthAllocation" AS MARKER_POINT; +TRUNCATE nrMonthAllocation; +INSERT INTO nrMonthAllocation (SCC, stateID, monthID, monthFraction) + select SCC, stateID, monthID, monthFraction + from nrUSMonthAllocation + where stateID=0; +FLUSH TABLE nrMonthAllocation; + +-- +-- nrStateSurrogate Table +-- +-- SELECT "Making nrStateSurrogate" AS MARKER_POINT; +DROP TABLE IF EXISTS OldnrStateSurrogate; +CREATE Table OldnrStateSurrogate + SELECT * from nrStateSurrogate; +TRUNCATE nrStateSurrogate; +INSERT INTO nrStateSurrogate (surrogateID,stateID,countyID,surrogatequant,surrogateYearID) + select surrogateID, 0 as stateID, 0 as countyID, sum(surrogatequant) as surrogatequant,surrogateYearID + from OldnrStateSurrogate + where stateID > 0 and countyID > 0 + and mod(countyID,1000) > 0 + group by surrogateID, surrogateYearID; +FLUSH TABLE nrStateSurrogate; + +-- +-- Drop any New Tables Created +-- +-- DROP TABLE IF EXISTS SurrogateActivity; +DROP TABLE IF EXISTS OldCounty; +DROP TABLE IF EXISTS OldYear; +DROP TABLE IF EXISTS OldLink; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS AggZoneRoadType; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS OldIMCoverage; +DROP TABLE IF EXISTS AggSHO; +DROP TABLE IF EXISTS AggSourceHours; +DROP TABLE IF EXISTS AggStarts; +DROP TABLE IF EXISTS AggExtendedIdleHours; +DROP TABLE IF EXISTS AggAverageTankTemperature; +DROP TABLE IF EXISTS AggSoakActivityFraction; +DROP TABLE IF EXISTS AggFuelUsageFraction; + +drop table if exists SurrogateStateActivityTotal; +drop table if exists SurrogateStateActivity; +drop table if exists SurrogateCountyActivity; +DROP TABLE IF EXISTS OldnrBaseYearEquipPopulation; +DROP TABLE IF EXISTS OldnrGrowthPatternFinder; +DROP TABLE IF EXISTS OldnrFuelSupply; +DROP TABLE IF EXISTS OldnrStateSurrogate; + +-- FLUSH TABLES; + + diff --git a/database/PreAggSTATE.sql b/database/PreAggSTATE.sql new file mode 100644 index 0000000..ab84f23 --- /dev/null +++ b/database/PreAggSTATE.sql @@ -0,0 +1,569 @@ +/* *********************************************************************************************************************** +-- MySQL Script preaggregate the MOVESExecution database +-- to the STATE level after merging of user input databases by InputDataManager +-- and before any MasterLoopable objects are executed. +-- An attempt is made to weight some aggregations by activity. +-- Two tables involved have missing data default data handling. +-- +-- Author Mitch Cumberworth +-- Author Gwo Shyu +-- Author Wesley Faler +-- Version 2015-04-22 +-- *********************************************************************************************************************** */ + +-- FLUSH TABLES; + +DROP TABLE IF EXISTS SurrogateActivity; +DROP TABLE IF EXISTS OldCounty; +DROP TABLE IF EXISTS OldLink; +DROP TABLE IF EXISTS OldZone; +DROP TABLE IF EXISTS AggZone; +DROP TABLE IF EXISTS OldYear; +DROP TABLE IF EXISTS OldZoneMonthHour; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS AggZoneRoadType; +DROP TABLE IF EXISTS OldFuelSupply; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS OldIMCoverage; +DROP TABLE IF EXISTS AggSHO; +DROP TABLE IF EXISTS AggSourceHours; +DROP TABLE IF EXISTS AggStarts; +DROP TABLE IF EXISTS AggExtendedIdleHours; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; +DROP TABLE IF EXISTS OldFuelUsageFraction; +DROP TABLE IF EXISTS AggFuelUsageFraction; + +-- +-- Create a table to be used for activity-weighting by county or zone +-- +-- Note that activity factors for a state must sum to unity. +-- First make a version of Zone that includes stateID + +-- SELECT "Making SurrogateActivity Table" AS MARKER_POINT; + +CREATE TABLE OldZone + SELECT zoneID, County.countyID, stateID, startAllocFactor, idleAllocFactor, SHPAllocFactor + FROM Zone INNER JOIN County USING (countyID); +CREATE UNIQUE INDEX index1 ON OldZone (zoneID); +CREATE INDEX index2 ON OldZone (countyID); + +-- Now we can aggregate the Zone table by stateID +CREATE TABLE AggZone ( + zoneID INTEGER, + startAllocFactor FLOAT, + idleAllocFactor FLOAT, + SHPAllocFactor FLOAT, + stateID SMALLINT ); +INSERT INTO AggZone + SELECT stateID*10000 AS zoneID, + sum(startAllocFactor) AS startAllocFactor, sum(idleAllocFactor) AS idleAllocFactor, + sum(SHPAllocFactor) AS SHPAllocFactor, stateID + FROM OldZone GROUP BY stateID; +CREATE UNIQUE INDEX index1 ON AggZone (stateID); + +-- Finally we can make the table we want +CREATE Table SurrogateActivity ( + zoneID INTEGER, + countyID INTEGER, + actFract FLOAT, + primary key (zoneID, countyID), + key (countyID) ); +INSERT INTO SurrogateActivity + SELECT oz.zoneID, oz.countyID, + (ROUND(oz.startAllocFactor,6)/ROUND(az.startAllocFactor,6)) AS actFract + FROM OldZone as oz INNER JOIN AggZone as az USING(stateID); +CREATE UNIQUE INDEX index1 ON SurrogateActivity (zoneID); +CREATE INDEX index2 ON SurrogateActivity (countyID); + +-- +-- SurrogateRegionActivity Table +-- +-- SELECT "Making SurrogateRegionActivity" AS MARKER_POINT; +drop table if exists SurrogateRegionActivity; +create table SurrogateRegionActivity ( + stateID int not null, + fuelRegionID int not null, + fuelYearID int not null, + actFract double not null, + primary key (stateID, fuelYearID, fuelRegionID) +); + +insert into SurrogateRegionActivity (stateID, fuelRegionID, fuelYearID, actFract) +select stateID, regionID as fuelRegionID, fuelYearID, sum(actFract) +from SurrogateActivity +inner join RegionCounty using (countyID) +inner join County using (countyID) +where regionCodeID=1 +group by stateID, regionID, fuelYearID; + +drop table if exists SurrogateRegionActivityTotal; +create table SurrogateRegionActivityTotal ( + stateID int not null, + fuelYearID int not null, + actFractTotal double not null, + primary key (stateID, fuelYearID) +); +insert into SurrogateRegionActivityTotal (stateID, fuelYearID, actFractTotal) +select stateID, fuelYearID, sum(actFract) +from SurrogateRegionActivity +group by stateID, fuelYearID; + +update SurrogateRegionActivity, SurrogateRegionActivityTotal +set actFract = actFract/actFractTotal +where SurrogateRegionActivity.fuelYearID = SurrogateRegionActivityTotal.fuelYearID +and SurrogateRegionActivity.stateID = SurrogateRegionActivityTotal.stateID; + +-- +-- State Table - No changes required +-- + +-- +-- County Table +-- +-- SELECT "Making Aggregate County and Zone Tables" AS MARKER_POINT; +CREATE TABLE OldCounty SELECT County.*, stateName + FROM County INNER JOIN State USING (stateID); +TRUNCATE County; +INSERT INTO County (countyID, stateID, countyName, altitude, GPAFract, + barometricPressure, barometricPressureCV) + SELECT stateID*1000 AS countyID, stateID, + stateName AS countyName, "L" AS altitude, sum(GPAFract*actFract) AS GPAFract, + sum(barometricPressure*actFract) AS barometricPressure, NULL AS barometricPressureCV + FROM OldCounty INNER JOIN SurrogateActivity USING (countyID) + GROUP BY stateID; +FLUSH TABLE County; + +-- +-- CountyYear Table +-- +CREATE TABLE OldYear SELECT DISTINCT yearID from CountyYear; +TRUNCATE CountyYear; +INSERT INTO CountyYear (countyID, yearID) + SELECT countyID, yearID + FROM County, OldYear; +FLUSH TABLE CountyYear; + +-- +-- Zone Table +-- +TRUNCATE Zone; +INSERT INTO Zone (zoneID, countyID, startAllocFactor, idleAllocFactor, SHPAllocFactor) + SELECT zoneID, stateID*1000 AS countyID, startAllocFactor, idleAllocFactor, SHPAllocFactor + FROM AggZone; +FLUSH TABLE Zone; + +-- +-- Link Table +-- +-- SELECT "Making Aggregate Link Table"AS MARKER_POINT; +CREATE Table OldLink + SELECT Link.*, stateID + FROM Link INNER JOIN OldZone USING(zoneID); +CREATE UNIQUE INDEX index1 ON OldLink (linkID); +TRUNCATE Link; +INSERT INTO Link (linkID, countyID, zoneID, roadTypeID, + linkLength,linkVolume, linkAvgSpeed, linkDescription, linkAvgGrade) + SELECT (stateID*100000+roadTypeID) AS linkID, + stateID*1000 AS countyID, + stateID*10000 AS zoneID, + roadTypeID as roadTypeID, + NULL AS linkLength, NULL AS linkVolume, + SUM(linkAvgSpeed * actFract) AS linkAvgSpeed, + NULL as linkDescription, + SUM(linkAvgGrade * actFract) AS linkAvgGrade + FROM OldLink INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY stateID, roadTypeID; +FLUSH TABLE Link; + + +-- +-- ZoneMonthHour +-- +-- SELECT "Making Aggregate ZoneMonthHour Table" AS MARKER_POINT; +CREATE Table OldZoneMonthHour + SELECT monthID, stateID, zmh.zoneid, hourID, temperature, relhumidity + FROM ZoneMonthHour AS zmh INNER JOIN OldZone USING (zoneID); +TRUNCATE ZoneMonthHour; +INSERT INTO ZoneMonthHour (monthID, zoneID, hourID, temperature, temperatureCV, + relHumidity, relativeHumidityCV, heatIndex, specificHumidity) + SELECT monthID, stateID*10000 AS zoneID, hourID, + sum(temperature*actFract) AS temperature, NULL AS temperatureCV, + sum(relHumidity*actFract) AS relHumidity, NULL AS relativeHumidityCV, + 0.0 as heatIndex, 0.0 AS specificHumidity + FROM OldZoneMonthHour INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY monthID, hourID, stateID; +FLUSH TABLE ZoneMonthHour; + +-- +-- OpModeDistribution +-- +-- SELECT "Making Aggregate OpModeDistribution Table" AS MARKER_POINT; +CREATE Table OldOpModeDistribution + SELECT omd.*, link.roadTypeID, link.stateID, link.zoneID + FROM OpModeDistribution AS omd INNER JOIN OldLink as link USING (linkID); +TRUNCATE OpModeDistribution; +INSERT INTO OpModeDistribution (sourceTypeID, hourDayID,linkID, polProcessID, opModeID, + opModeFraction, opModeFractionCV, isUserInput) + SELECT sourceTypeID, hourDayID, + (stateID*100000+roadTypeID) AS linkID, polProcessID, opModeID, + SUM(opModeFraction * actFract) AS opModeFraction, NULL AS opModeFractionCV, + "Y" AS isUserInput + FROM OldOpModeDistribution INNER JOIN SurrogateActivity USING (zoneID) + GROUP BY sourceTypeID, hourDayID, stateID, roadTypeID, polProcessID, opModeID; +FLUSH TABLE OpModeDistribution; + +-- +-- ZoneRoadType +-- +-- SELECT "Making Aggregate ZoneRoadType Table" AS MARKER_POINT; +CREATE TABLE AggZoneRoadType ( + zoneID INTEGER, + roadTypeID SMALLINT, + SHOAllocFactor double); +INSERT INTO AggZoneRoadType + SELECT (stateID*10000) AS zoneID, roadTypeID, + sum(SHOAllocFactor) AS SHOAllocFactor + FROM ZoneRoadType INNER JOIN OldZone USING(zoneID) + GROUP BY stateID, roadTypeID ; +TRUNCATE ZoneRoadType; +INSERT INTO ZoneRoadType (zoneID, roadTypeID, SHOAllocFactor) + SELECT * FROM AggZoneRoadType; +FLUSH TABLE ZoneRoadType; + +-- +-- Fuel Supply +-- +-- Note: algorithm is specific to particular default values used. +-- SELECT "Making Aggregate FuelSupply Table" AS MARKER_POINT; +CREATE TABLE OldFuelSupply + SELECT distinct fs.*, stateID + FROM FuelSupply AS fs + INNER JOIN RegionCounty ON (regionID=fuelRegionID and regionCodeID=1 and RegionCounty.fuelYearID=fs.fuelYearID) + INNER JOIN OldCounty USING(countyID); +-- Creating table explicitly to control column type and avoid significance problem +CREATE TABLE AggFuelSupply ( + stateID SMALLINT, + fuelYearID SMALLINT, + monthGroupID SMALLINT, + fuelFormulationID SMALLINT, + haveFract DOUBLE); +INSERT INTO AggFuelSupply + SELECT stateID, fs.fuelYearID, monthGroupID,fuelFormulationID, + sum(marketShare*actFract) as haveFract + FROM OldFuelSupply AS fs + INNER JOIN SurrogateRegionActivity USING (stateID,fuelRegionID,fuelYearID) + GROUP BY stateID, fs.fuelYearID, monthGroupID, fuelFormulationID; +TRUNCATE FuelSupply; +INSERT INTO FuelSupply (fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + marketShare, marketShareCV) + SELECT stateID AS fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + haveFract AS marketShare, + NULL AS marketShareCV + FROM AggFuelSupply; +FLUSH TABLE FuelSupply; + +truncate Region; +insert into Region (regionID,description) +select distinct stateID, 'State region' +from AggFuelSupply; + +truncate RegionCounty; +insert into RegionCounty (regionID, countyID, regionCodeID, fuelYearID) +select distinct fuelRegionID as regionID, fuelRegionID*1000 as countyID, 1 as regionCodeID, fuelYearID +from fuelSupply; + +insert into RegionCounty (regionID, countyID, regionCodeID, fuelYearID) +select distinct fuelRegionID as regionID, fuelRegionID*1000 as countyID, 2 as regionCodeID, fuelYearID +from fuelSupply; + +-- +-- Fuel Usage +-- +-- SELECT "Making Aggregate FuelUsageFraction Table" AS MARKER_POINT; +CREATE TABLE OldFuelUsageFraction + SELECT f.*, stateID + FROM FuelUsageFraction AS f INNER JOIN OldCounty USING(countyID) ; +-- Creating table explicitly to control column type and avoid significance problem +CREATE TABLE AggFuelUsageFraction ( + stateID SMALLINT, + fuelYearID SMALLINT, + modelYearGroupID int, + sourceBinFuelTypeID smallint, + fuelSupplyFuelTypeID smallint, + usageFraction double +); +INSERT INTO AggFuelUsageFraction + SELECT stateID, f.fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + sum(usageFraction*actFract) as usageFraction + FROM OldFuelUsageFraction AS f INNER JOIN SurrogateActivity USING(countyID) + GROUP BY stateID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID; +TRUNCATE FuelUsageFraction; +INSERT INTO FuelUsageFraction (countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + usageFraction) + SELECT (stateID*1000) AS countyID, fuelYearID, modelYearGroupID, sourceBinFuelTypeID, fuelSupplyFuelTypeID, + least(usageFraction,1.0) + FROM AggFuelUsageFraction; +FLUSH TABLE FuelUsageFraction; + +-- +-- IMCoverage +-- +-- SELECT "Making IMCoverage Table" AS MARKER_POINT; +CREATE TABLE OldIMCoverage SELECT * FROM IMCoverage WHERE useIMyn = 'Y'; +CREATE INDEX OldIMCoverageIndex1 ON OldIMCoverage (countyID); +TRUNCATE IMCoverage; +-- When aggregated, IM programs may overlap. This is better than extending model years +-- or forcing all to a particular IMFactor entry. The overlap is handled within each +-- calculator. +DROP TABLE IMCoverage; +CREATE TABLE IMCoverage ( + stateID int(11) default NULL, + countyID int(11) NOT NULL, + yearID smallint(6) NOT NULL, + polProcessID int NOT NULL, + fuelTypeID smallint(6) NOT NULL, + sourceTypeID smallint(6) NOT NULL, + IMProgramID smallint(6) NOT NULL default '0', + inspectFreq smallint(6) default NULL, + testStandardsID smallint(6) default NULL, + begModelYearID smallint(4) default NULL, + endModelYearID smallint(4) default NULL, + useIMyn char(1) NOT NULL default 'N', + complianceFactor float default NULL, + KEY XPKIMCoverage (polProcessID,countyID,yearID,sourceTypeID,fuelTypeID,IMProgramID) +); + +-- Add back all of the old IMCoverage records, but use the pseudo county's ID +INSERT INTO IMCoverage (stateID, countyID, yearID, polProcessID, fuelTypeID, + sourceTypeID, IMProgramID, inspectFreq, testStandardsID, + begModelYearID, endModelYearID, useIMyn, + complianceFactor) +SELECT stateID, (stateID*1000) as countyID, yearID, polProcessID, fuelTypeID, + sourceTypeID, IMProgramID, inspectFreq, testStandardsID, + begModelYearID, endModelYearID, useIMyn, + (complianceFactor*actFract) as complianceFactor +FROM OldIMCoverage +INNER JOIN SurrogateActivity USING(countyID); + +-- +-- SHO +-- +-- SELECT "Making Aggregate SHO Table" AS MARKER_POINT; +CREATE TABLE AggSHO ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + stateID SMALLINT, + roadTypeID SMALLINT, + sourceTypeID SMALLINT, + SHO FLOAT, + distance FLOAT); +INSERT INTO AggSHO + SELECT hourDayID, monthID, yearID, ageID, stateID, roadTypeID, sourceTypeID, + sum(SHO) AS SHO, sum(distance) AS distance + FROM SHO INNER JOIN OldLink USING(linkID) + GROUP BY hourDayID, monthID, yearID, ageID, stateID, roadTypeID, sourceTypeID; +TRUNCATE SHO; +INSERT INTO SHO (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, SHO, SHOCV, distance, isUserInput) + SELECT hourDayID, monthID, yearID, ageID, + (stateID*100000+roadTypeID) AS linkID, + sourceTypeID, SHO, NULL AS SHOCV, distance, "Y" AS isUserInput + FROM AggSHO; +FLUSH TABLE SHO; + +-- +-- SourceHours +-- +-- SELECT "Making Aggregate SourceHours Table" AS MARKER_POINT; +CREATE TABLE AggSourceHours ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + stateID SMALLINT, + roadTypeID SMALLINT, + sourceTypeID SMALLINT, + sourceHours FLOAT); +INSERT INTO AggSourceHours + SELECT hourDayID, monthID, yearID, ageID, stateID, roadTypeID, sourceTypeID, + sum(sourceHours) AS sourceHours + FROM SourceHours INNER JOIN OldLink USING(linkID) + GROUP BY hourDayID, monthID, yearID, ageID, stateID, roadTypeID, sourceTypeID; +TRUNCATE SourceHours; +INSERT INTO SourceHours (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, sourceHours, sourceHoursCV,isUserInput) + SELECT hourDayID, monthID, yearID, ageID, + (stateID*100000+roadTypeID) AS linkID, + sourceTypeID, sourceHours, NULL AS sourceHoursCV,"Y" AS isUserInput + FROM AggSourceHours; +FLUSH TABLE SourceHours; + + +-- +-- Starts +-- +-- SELECT "Making Aggregate Starts Table" AS MARKER_POINT; +CREATE TABLE AggStarts ( + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + stateID SMALLINT, + sourceTypeID SMALLINT, + starts FLOAT + ); +INSERT INTO AggStarts + SELECT hourDayID, monthID, yearID, ageID, stateID, sourceTypeID, + sum(starts) AS starts + FROM Starts INNER JOIN OldZone USING (zoneID) + GROUP BY hourDayID, monthID, yearID, ageID, stateID, sourceTypeID; +TRUNCATE Starts; +INSERT INTO Starts (hourDayID, monthID, yearID, ageID, zoneID, + sourceTypeID, starts, startsCV, isUserInput) + SELECT hourDayID, monthID, yearID, ageID, + (stateID*10000) AS zoneID, + sourceTypeID, starts, NULL AS startsCV, "Y" AS isUserInput + FROM AggStarts; +FLUSH TABLE Starts; + +-- +-- ExtendedIdleHours +-- +-- SELECT "Making Aggregate ExtendedIdleHours Table" AS MARKER_POINT; +CREATE TABLE AggExtendedIdleHours ( + sourceTypeID SMALLINT, + hourDayID SMALLINT, + monthID SMALLINT, + yearID SMALLINT, + ageID SMALLINT, + stateID SMALLINT, + extendedIdleHours FLOAT); +INSERT INTO AggExtendedIdleHours + SELECT sourceTypeID, hourDayID, monthID, yearID, ageID, stateID, + sum(extendedIdleHours) AS extendedIdleHours + FROM ExtendedIdleHours INNER JOIN OldZone USING(zoneID) + GROUP BY sourceTypeID, hourDayID, monthID, yearID, ageID, stateID; +TRUNCATE ExtendedIdleHours; +INSERT INTO ExtendedIdleHours (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID, + extendedIdleHours, extendedIdleHoursCV, isUserInput) + SELECT sourceTypeID, hourDayID, monthID, yearID, ageID, + (stateID*10000) AS zoneID, + extendedIdleHours, NULL AS extendedIdleHoursCV, "Y" AS isUserInput + FROM AggExtendedIdleHours; +FLUSH TABLE ExtendedIdleHours; + +-- +-- AverageTankTemperature +-- +-- SELECT "Making AverageTankTemperature Table" AS MARKER_POINT; +CREATE Table OldAverageTankTemperature + SELECT tankTemperatureGroupID, stateID, monthID, att.zoneid, hourDayID, + opModeID, averageTankTemperature + FROM AverageTankTemperature AS att INNER JOIN OldZone USING (zoneID); +TRUNCATE AverageTankTemperature; +INSERT INTO AverageTankTemperature (tankTemperatureGroupID, zoneID, monthID, hourDayID, + opModeID, averageTankTemperature, averageTankTemperatureCV, isUserInput) + SELECT tankTemperatureGroupID, stateID*10000 AS zoneID, monthID, hourDayID, opModeID, + sum(averageTankTemperature*actFract) AS averageTankTemperature, + NULL AS averageTankTemperatureCV, 'Y' AS isUserInput + FROM OldAverageTankTemperature INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY tankTemperatureGroupID, stateID, monthID, hourdayID, opModeID; +FLUSH TABLE AverageTankTemperature; + +-- +-- SoakActivityFraction +-- +-- SELECT "Making SoakActivityFraction" AS MARKER_POINT; +CREATE Table OldSoakActivityFraction + SELECT sourceTypeID, stateID, saf.zoneID, monthID, hourDayID, opModeID, soakActivityFraction + FROM SoakActivityFraction AS saf INNER JOIN OldZone USING (zoneID); +TRUNCATE SoakActivityFraction; +INSERT INTO SoakActivityFraction (sourceTypeID, zoneID, monthID, hourDayID, opModeID, + soakActivityFraction, soakActivityFractionCV, isUserInput) + SELECT sourceTypeID, stateID*10000 AS zoneID, monthID, hourDayID, opModeID, + sum(soakActivityFraction*actFract) AS soakActivityFraction, NULL AS soakActivityFractionCV, + 'Y' AS isUserInput + FROM OldSoakActivityFraction INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY sourceTypeID, stateID, monthID, hourDayID, opModeID; +FLUSH TABLE SoakActivityFraction; + +-- +-- ColdSoakTankTemperature +-- +-- SELECT "Making Aggregate ColdSoakTankTemperature Table" AS MARKER_POINT; +CREATE Table OldColdSoakTankTemperature + SELECT monthID, stateID, cstt.zoneid, hourID, coldSoakTankTemperature + FROM ColdSoakTankTemperature AS cstt INNER JOIN OldZone USING (zoneID); +TRUNCATE ColdSoakTankTemperature; +INSERT INTO ColdSoakTankTemperature (monthID, zoneID, hourID, coldSoakTankTemperature) + SELECT monthID, stateID*10000 AS zoneID, hourID, + sum(coldSoakTankTemperature*actFract) AS coldSoakTankTemperature + FROM OldColdSoakTankTemperature INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY monthID, hourID, stateID; +FLUSH TABLE ColdSoakTankTemperature; + +-- +-- ColdSoakInitialHourFraction +-- +-- SELECT "Making ColdSoakInitialHourFraction" AS MARKER_POINT; +CREATE Table OldColdSoakInitialHourFraction + SELECT sourceTypeID, monthID, stateID, old.zoneid, hourDayID, initialHourDayID, coldSoakInitialHourFraction + FROM ColdSoakInitialHourFraction AS old INNER JOIN OldZone USING (zoneID); +TRUNCATE ColdSoakInitialHourFraction; +INSERT INTO ColdSoakInitialHourFraction (sourceTypeID, monthID, zoneID, hourDayID, initialHourDayID, + coldSoakInitialHourFraction, isUserInput) + SELECT sourceTypeID, monthID, stateID*10000 AS zoneID, hourDayID, initialHourDayID, + sum(coldSoakInitialHourFraction*actFract) AS coldSoakInitialHourFraction, + 'Y' as isUserInput + FROM OldColdSoakInitialHourFraction INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY sourceTypeID, monthID, stateID, hourDayID, initialHourDayID; +FLUSH TABLE ColdSoakInitialHourFraction; + +-- +-- AverageTankGasoline +-- +-- SELECT "Making AverageTankGasoline" AS MARKER_POINT; +CREATE Table OldAverageTankGasoline + SELECT stateID, old.zoneid, fuelTypeID, fuelYearID, monthGroupID, ETOHVolume, RVP + FROM AverageTankGasoline AS old INNER JOIN OldZone USING (zoneID); +TRUNCATE AverageTankGasoline; +INSERT INTO AverageTankGasoline (zoneID, fuelTypeID, fuelYearID, monthGroupID, ETOHVolume, RVP, isUserInput) + SELECT stateID*10000 AS zoneID, fuelTypeID, fuelYearID, monthGroupID, + sum(ETOHVolume*actFract) AS ETOHVolume, + sum(RVP*actFract) AS RVP, + 'Y' as isUserInput + FROM OldAverageTankGasoline INNER JOIN SurrogateActivity USING(zoneID) + GROUP BY stateID, fuelTypeID, fuelYearID, monthGroupID; +FLUSH TABLE AverageTankGasoline; + + +-- +-- Drop any New Tables Created +-- +-- SELECT "Dropping Temporary Tables"; +-- DROP TABLE IF EXISTS SurrogateActivity; + +DROP TABLE IF EXISTS OldCounty; +DROP TABLE IF EXISTS OldLink; +DROP TABLE IF EXISTS OldZone; +DROP TABLE IF EXISTS AggZone; +DROP TABLE IF EXISTS OldYear; +DROP TABLE IF EXISTS OldZoneMonthHour; +DROP TABLE IF EXISTS OldOpModeDistribution; +DROP TABLE IF EXISTS AggZoneRoadType; +DROP TABLE IF EXISTS OldFuelSupply; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS OldIMCoverage; +DROP TABLE IF EXISTS AggSHO; +DROP TABLE IF EXISTS AggSourceHours; +DROP TABLE IF EXISTS AggStarts; +DROP TABLE IF EXISTS AggExtendedIdleHours; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; +DROP TABLE IF EXISTS OldFuelUsageFraction; +DROP TABLE IF EXISTS AggFuelUsageFraction; + +-- FLUSH TABLES; diff --git a/database/PreAggYEAR.sql b/database/PreAggYEAR.sql new file mode 100644 index 0000000..c864789 --- /dev/null +++ b/database/PreAggYEAR.sql @@ -0,0 +1,391 @@ +/* *********************************************************************************************************************** +-- MySQL Script file to preaggregate the MOVESExecution database +-- from the MONTH level database to the YEAR level +-- An attempt is made to weight some aggregations by activity. +-- +-- Version 2015-05-20 +-- +-- Written By Mitch Cumberworth, April, 2004 +-- Change history: +-- Corrected By Mitch Cumberworth, June 24, 2004 +-- Fuel Supply calculation fixed by Mitch Cumberworth, October 28, 2004 +-- MonthGroupHour calculation fixed by Mitch Cumberworth, December 2, 2004 +-- Adapted by Mitch Cumberworth, June, 2005 for Task 207 +-- Adapted by Mitch Cumberworth, July, 2005 for Task 208 +-- Adapted by Mitch Cumberworth, November, 2005 for Task 210 +-- Modified by Cimulus, January, 2005 for Task 210 +-- Modified by wfaler, Dec, 2007 for Task 804, changed "Entire Year" to "Whole Year" in order to fit within 10 characters +-- Modified by Gwo Shyu, March 26, 2008 to fix the errors of duplicate entry and table existing +-- Modified by Wes Faler, June 15, 2009 for Task 912 Fuel Adjustments +-- *********************************************************************************************************************** */ + +DROP TABLE IF EXISTS MonthWeighting; +DROP TABLE IF EXISTS MonthGroupWeighting; +DROP TABLE IF EXISTS AggDayVMTFraction; +DROP TABLE IF EXISTS AggMonthVMTFraction; +DROP TABLE IF EXISTS AggSourceTypeDayVMT; +DROP TABLE IF EXISTS AggHPMSVTypeDay; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS AggMonthGroupHour; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; +drop table if exists AggATBaseEmissions; +drop table if exists AggATRatio; + +-- +-- Create MonthWeightings to be used to weight monthly activity +-- +-- Note: these weightings will not sum to unity if all months are not included +-- SELECT "Making MonthWeighting" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE MonthWeighting ( + monthID SMALLINT, + actFract FLOAT); +INSERT INTO MonthWeighting + SELECT monthID, monthVMTFraction AS actFract + FROM MonthVMTFraction + WHERE sourceTypeID=21; +CREATE UNIQUE INDEX index1 ON MonthWeighting (monthID); + +-- SELECT "Making MonthGroupWeighting" AS MARKER_POINT; +-- Create table explicitly to control column types and avoid significance problems +CREATE TABLE MonthGroupWeighting ( + monthGroupID SMALLINT, + actFract FLOAT); +INSERT INTO MonthGroupWeighting + SELECT monthGroupID, SUM(monthVMTFraction) AS actFract + FROM MonthVMTFraction INNER JOIN MonthOfAnyYear USING (monthID) + WHERE sourceTypeID=21 + GROUP BY monthGroupID; +CREATE UNIQUE INDEX index1 ON MonthGroupWeighting (monthGroupID); + +-- +-- MonthOfAnyYear Table +-- +-- SELECT "Making MonthOfAnyYear" AS MARKER_POINT; +TRUNCATE MonthOfAnyYear; +INSERT INTO MonthOfAnyYear (monthID, monthName, noOfDays, monthGroupID) + VALUES (0, "Whole Year", 365, 0); +FLUSH TABLE MonthOfAnyYear; + +-- +-- MonthGroupOfAnyYear Table +-- +-- SELECT "Making MonthGroupOfAnyYear" AS MARKER_POINT; +TRUNCATE MonthGroupOfAnyYear; +INSERT INTO MonthGroupOfAnyYear (monthGroupID, monthGroupName) + VALUES (0, "Whole Year"); +FLUSH TABLE MonthGroupOfAnyYear; + +-- +-- DayVMTFraction Table +-- +-- SELECT "Making DayVMTFraction" AS MARKER_POINT; +CREATE TABLE AggDayVMTFraction + SELECT sourceTypeID, roadTypeID + FROM DayVMTFraction + GROUP BY sourceTypeID, roadTypeID; +TRUNCATE DayVMTFraction; +REPLACE INTO DayVMTFraction (sourceTypeID, monthID, roadTypeID, dayID, dayVMTFraction) + SELECT sourceTypeID, 0 AS monthID, roadTypeID, 0 AS dayID, 1.0 AS dayVMTFraction + FROM AggDayVMTFraction; +FLUSH TABLE DayVMTFraction; + +-- +-- MonthVMTFraction Table +-- +-- SELECT "Making MonthVMTFraction" AS MARKER_POINT; +CREATE TABLE AggMonthVMTFraction + SELECT sourceTypeID + FROM MonthVMTFraction + GROUP BY sourceTypeID; +TRUNCATE MonthVMTFraction; +REPLACE INTO MonthVMTFraction (sourceTypeID, monthID, monthVMTFraction) + SELECT sourceTypeID, 0 AS monthID, 1.0 AS monthVMTFraction + FROM AggMonthVMTFraction; +FLUSH TABLE MonthVMTFraction; + +-- +-- SourceTypeDayVMT Table +-- +-- SELECT "Making SourceTypeDayVMT" AS MARKER_POINT; +CREATE TABLE AggSourceTypeDayVMT + SELECT yearID, 0 as monthID, 0 as dayID, sourceTypeID, sum(VMT*actFract) as VMT + FROM SourceTypeDayVMT + INNER JOIN MonthWeighting USING (monthID) + GROUP BY yearID, sourceTypeID; +TRUNCATE SourceTypeDayVMT; +REPLACE INTO SourceTypeDayVMT (yearID, monthID, dayID, sourceTypeID, VMT) + SELECT yearID, monthID, dayID, sourceTypeID, VMT + FROM AggSourceTypeDayVMT; +FLUSH TABLE SourceTypeDayVMT; + +-- +-- HPMSVTypeDay Table +-- +-- SELECT "Making HPMSVTypeDay" AS MARKER_POINT; +CREATE TABLE AggHPMSVTypeDay + SELECT yearID, 0 as monthID, 0 as dayID, hpmsVTypeID, sum(VMT*actFract) as VMT + FROM HPMSVTypeDay + INNER JOIN MonthWeighting USING (monthID) + GROUP BY yearID, hpmsVTypeID; +TRUNCATE HPMSVTypeDay; +REPLACE INTO HPMSVTypeDay (yearID, monthID, dayID, hpmsVTypeID, VMT) + SELECT yearID, monthID, dayID, hpmsVTypeID, VMT + FROM AggHPMSVTypeDay; +FLUSH TABLE HPMSVTypeDay; + +-- +-- SHO +-- +-- SELECT "Making SHO" AS MARKER_POINT; +CREATE TABLE OldSHO + SELECT monthID, yearID, ageID, linkID, sourceTypeID, SHO, distance + FROM SHO ; +CREATE INDEX index1 ON OldSHO (yearID, ageID, linkID, sourceTypeID); +TRUNCATE SHO; +REPLACE INTO SHO (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, SHO, SHOCV, distance, isUserInput) + SELECT 0 AS hourDayID, 0 AS monthID, yearID, ageID, linkID, sourceTypeID, + sum(SHO) AS SHO, NULL AS SHOCV, sum(distance) AS distance, "Y" AS isUserInput + FROM OldSHO + GROUP BY yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SHO; + +-- +-- SourceHours +-- +-- SELECT "Making SourceHours" AS MARKER_POINT; +CREATE TABLE OldSourceHours + SELECT monthID, yearID, ageID, linkID, sourceTypeID, sourceHours + FROM SourceHours ; +CREATE INDEX index1 ON OldSourceHours (yearID, ageID, linkID, sourceTypeID); +TRUNCATE SourceHours; +REPLACE INTO SourceHours (hourDayID, monthID, yearID, ageID, linkID, + sourceTypeID, sourceHours, sourceHoursCV, isUserInput) + SELECT 0 AS hourDayID, 0 AS monthID, yearID, ageID, linkID, sourceTypeID, + sum(sourceHours) AS sourceHours, NULL AS sourceHoursCV, "Y" AS isUserInput + FROM OldSourceHours + GROUP BY yearID, ageID, linkID, sourceTypeID; +FLUSH TABLE SourceHours; + +-- +-- Starts +-- +-- SELECT "Making Starts" AS MARKER_POINT; +CREATE TABLE OldStarts + SELECT monthID, yearID, ageID, zoneID, sourceTypeID, starts + FROM Starts ; +CREATE INDEX index1 ON OldStarts (yearID, ageID, zoneID, sourceTypeID); +TRUNCATE Starts; +REPLACE INTO Starts (hourDayID, monthID, yearID, ageID, zoneID, + sourceTypeID, starts, startsCV, isUserInput) + SELECT 0 AS hourDayID, 0 AS monthID, yearID, ageID, zoneID, sourceTypeID, + sum(starts) AS starts, NULL AS startsCV, "Y" AS isUserInput + FROM OldStarts + GROUP BY yearID, ageID, zoneID, sourceTypeID; +FLUSH TABLE Starts; + +-- +-- ExtendedIdleHours +-- +-- SELECT "Making ExtendedIdleHours" AS MARKER_POINT; +CREATE TABLE OldExtendedIdleHours + SELECT sourceTypeID, monthID, yearID, ageID, zoneID, extendedIdleHours + FROM ExtendedIdleHours ; +CREATE INDEX index1 ON OldExtendedIdleHours (sourceTypeID, yearID, ageID, zoneID); +TRUNCATE ExtendedIdleHours; +REPLACE INTO ExtendedIdleHours (sourceTypeID, hourDayID, monthID, yearID, ageID, zoneID, + extendedIdleHours, extendedIdleHoursCV, isUserInput) + SELECT sourceTypeID, 0 AS hourDayID, 0 AS monthID, yearID, ageID, zoneID, + sum(extendedIdleHours) AS extendedIdleHours, NULL AS extendedIdleHoursCV, "Y" AS isUserInput + FROM OldExtendedIdleHours + GROUP BY sourceTypeID, yearID, ageID, zoneID; + +FLUSH TABLE ExtendedIdleHours; + +-- +-- ZoneMonthHour +-- +-- SELECT "Making ZoneMonthHour" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE TABLE AggZoneMonthHour ( + zoneID INTEGER, + temperature FLOAT, + relHumidity FLOAT); +INSERT INTO AggZoneMonthHour (zoneID,temperature,relHumidity) + SELECT zoneID, + (sum(temperature*actFract)/sum(actFract)) AS temperature, + (sum(relHumidity*actFract)/sum(actFract)) AS relHumidity + FROM ZoneMonthHour INNER JOIN MonthWeighting USING (monthID) + GROUP BY zoneID; +TRUNCATE ZoneMonthHour; +REPLACE INTO ZoneMonthHour (monthID, zoneID, hourID, temperature, temperatureCV, + relHumidity, relativeHumidityCV, heatIndex, specificHumidity) + SELECT 0 AS monthID, zoneID, 0 AS hourID, temperature, + NULL AS temperatureCV, relHumidity, NULL AS relativeHumidityCV, + 0.0 AS heatIndex, 0.0 AS specificHumidity + FROM AggZoneMonthHour; + +FLUSH TABLE ZoneMonthHour; + +-- +-- MonthGroupHour +-- +-- SELECT "Making MonthGroupHour" AS MARKER_POINT; +-- Explicit Creation of Intermediate File Found necessary to avoid significance problems +CREATE TABLE AggMonthGroupHour ( + ACActivityTermA FLOAT, + ACActivityTermB FLOAT, + ACActivityTermC FLOAT); +INSERT INTO AggMonthGroupHour (ACActivityTermA,ACActivityTermB,ACActivityTermC) + SELECT + (sum(ACActivityTermA*actFract)/sum(actFract)) AS ACActivityTermA, + (sum(ACActivityTermB*actFract)/sum(actFract)) AS ACActivityTermB, + (sum(ACActivityTermC*actFract)/sum(actFract)) AS ACActivityTermC + FROM MonthGroupHour AS mgh INNER JOIN MonthGroupWeighting USING (monthGroupID); +TRUNCATE MonthGroupHour; +REPLACE INTO MonthGroupHour (monthGroupID, hourID, + ACActivityTermA, ACActivityTermACV, + ACActivityTermB, ACActivityTermBCV, + ACActivityTermC, ACActivityTermCCV + ) + SELECT 0 AS monthGroupID, 0 AS hourID, + ACActivityTermA, NULL AS ACActivityTermACV, + ACActivityTermB, NULL AS ACActivityTermBCV, + ACActivityTermC, NULL AS ACActivityTermCCV + FROM AggMonthGroupHour; + +FLUSH TABLE MonthGroupHour; + +create table AggATRatio ( + fuelTypeID int not null, + fuelFormulationID int not null, + polProcessID int not null, + minModelYearID int not null, + maxModelYearID int not null, + ageID int not null, + atRatio double null +); +insert into AggATRatio (fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, ageID, + atRatio) +select fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, ageID, + (sum(atRatio*actFract)/sum(actFract)) as atRatio +from atRatio +inner join MonthGroupWeighting using (monthGroupID) +group by fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, ageID; +truncate atRatio; +insert into atRatio (fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, + ageID, monthGroupID, atRatio) +select fuelTypeID, fuelFormulationID, polProcessID, minModelYearID, maxModelYearID, + ageID, 0 as monthGroupID, atRatio +from AggATRatio; + +CREATE TABLE AggATBaseEmissions +( + polProcessID int NOT NULL default '0', + atBaseEmissions float NOT NULL default '0', + primary key (polProcessID) +); +insert into AggATBaseEmissions (polProcessID, atBaseEmissions) +select polProcessID, (sum(atBaseEmissions*actFract)/sum(actFract)) as atBaseEmissions +from ATBaseEmissions +inner join MonthGroupWeighting using (monthGroupID) +group by polProcessID; +truncate ATBaseEmissions; +insert into ATBaseEmissions (polProcessID, monthGroupID, atBaseEmissions, dataSourceID) +select polProcessID, 0 as monthGroupID, atBaseEmissions, 0 as dataSourceID +from AggATBaseEmissions; + +-- +-- Fuel Supply +-- +-- Note: algorithm is specific to particular default values used. +-- SELECT "Making Aggregate FuelSupply Table" AS MARKER_POINT; +-- Creating table explicitly to control column type and avoid significance problem +CREATE TABLE AggFuelSupply ( + fuelRegionID INTEGER, + fuelYearID SMALLINT, + fuelFormulationID SMALLINT, + haveFract FLOAT, + fractDontHave FLOAT); +INSERT INTO AggFuelSupply + SELECT fuelRegionID, fuelYearID, fuelFormulationID, + (sum(marketShare*actFract)/sum(actFract)) as haveFract, + (1.0 - SUM(actFract)) AS fractDontHave + FROM FuelSupply INNER JOIN MonthGroupWeighting USING(monthGroupID) + GROUP BY fuelRegionID, fuelYearID, fuelFormulationID; +TRUNCATE FuelSupply; +REPLACE INTO FuelSupply (fuelRegionID, fuelYearID, monthGroupID, fuelFormulationID, + marketShare, marketShareCV) + SELECT fuelRegionID, fuelYearID, 0 AS monthGroupID, fuelFormulationID, + ((1.0-fractDontHave)*haveFract) AS marketShare, + NULL AS marketShareCV + FROM AggFuelSupply; + +FLUSH TABLE FuelSupply; + +-- +-- AverageTankTemperature +-- +-- SELECT "Making AverageTankTemperature" AS MARKER_POINT; +CREATE TABLE OldAverageTankTemperature + SELECT tankTemperatureGroupID, zoneID, monthID, hourDayID, opModeID, averageTankTemperature + FROM AverageTankTemperature; +TRUNCATE AverageTankTemperature; +REPLACE INTO AverageTankTemperature (tankTemperatureGroupID, zoneID, monthID, + hourDayID, opModeID, averageTankTemperature, averageTankTemperatureCV, isUserInput) + SELECT tankTemperatureGroupID, zoneID, 0 AS monthID, 0 AS hourDayID, opModeID, + sum(averageTankTemperature*actFract) AS averageTankTemperature, + NULL AS averageTankTemperatureCV, 'Y' AS isUserInput + FROM OldAverageTankTemperature AS oatt INNER JOIN monthWeighting USING(monthID) + GROUP BY tankTemperatureGroupID, zoneID, opModeID ; + +FLUSH TABLE AverageTankTemperature; + +-- +-- SoakActivityFraction +-- +-- SELECT "Making SoakActivityFraction" AS MARKER_POINT; +CREATE TABLE OldSoakActivityFraction + SELECT sourceTypeID, zoneID, monthID, hourDayID, opModeID, soakActivityFraction + FROM SoakActivityFraction; +TRUNCATE SoakActivityFraction; +REPLACE INTO SoakActivityFraction (sourceTypeID, zoneID, monthID, + hourDayID, opModeID, soakActivityFraction, soakActivityFractionCV, isUserInput) + SELECT sourceTypeID, zoneID, 0 AS monthID, 0 AS hourDayID, opModeID, + sum(soakActivityFraction*actFract) AS soakActivityFraction, + NULL AS soakActivityFractionCV, 'Y' AS isUserInput + FROM OldSoakActivityFraction INNER JOIN monthWeighting USING(monthID) + GROUP BY sourceTypeID, zoneID, opModeID ; + +FLUSH TABLE SoakActivityFraction; + +-- +-- Drop any New Tables Created +-- +-- FLUSH TABLES; + +DROP TABLE IF EXISTS MonthWeighting; +DROP TABLE IF EXISTS MonthGroupWeighting; +DROP TABLE IF EXISTS AggDayVMTFraction; +DROP TABLE IF EXISTS AggMonthVMTFraction; +DROP TABLE IF EXISTS AggSourceTypeDayVMT; +DROP TABLE IF EXISTS AggHPMSVTypeDay; +DROP TABLE IF EXISTS OldSHO; +DROP TABLE IF EXISTS OldSourceHours; +DROP TABLE IF EXISTS OldStarts; +DROP TABLE IF EXISTS OldExtendedIdleHours; +DROP TABLE IF EXISTS AggZoneMonthHour; +DROP TABLE IF EXISTS AggMonthGroupHour; +DROP TABLE IF EXISTS AggFuelSupply; +DROP TABLE IF EXISTS OldAverageTankTemperature; +DROP TABLE IF EXISTS OldSoakActivityFraction; + +-- FLUSH TABLES; + diff --git a/database/RateOfProgressStrategy.sql b/database/RateOfProgressStrategy.sql new file mode 100644 index 0000000..825f0c3 --- /dev/null +++ b/database/RateOfProgressStrategy.sql @@ -0,0 +1,571 @@ +-- Remove effects of the Clean Air Act by propagating 1993 emission rates into the future. +-- Most rates are left untouched, instead population information is altered future vehicles +-- use the model year groups that include 1993, thus tieing them to 1993 emissions. +-- +-- Author Wesley Faler +-- Version 2014-07-24 + +drop procedure if exists spDoRateOfProgress; + +BeginBlock +create procedure spDoRateOfProgress() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + declare cutPoint int default 1993; + declare cutPointFuelYear int default 1990; + declare fuelYearToReplace int default 1990; + + select modelYearID into cutPoint + from modelYearCutPoints + where cutPointName='RateOfProgress'; + + set cutPoint=ifnull(cutPoint,1993); + + select fuelYearID into cutPointFuelYear + from year + where yearID=(select max(yearID) from year where yearID <= cutPoint); + + set cutPointFuelYear=ifnull(cutPointFuelYear,1990); + + -- Update the calendar year's fuel year. This has a required ripple effect + -- upon the FuelSupply and FuelUsageFraction tables. + update year set fuelYearID=cutPointFuelYear where yearID > cutPoint; + + drop table if exists tempModelYear; + create table if not exists tempModelYear ( + modelYearID smallint not null primary key + ); + + insert into tempModelYear(modelYearID) values(1960),(1961),(1962),(1963),(1964),(1965),(1966),(1967) + ,(1968),(1969),(1970),(1971),(1972),(1973),(1974),(1975),(1976),(1977),(1978),(1979),(1980),(1981),(1982),(1983),(1984),(1985),(1986),(1987) + ,(1988),(1989),(1990),(1991),(1992),(1993),(1994),(1995),(1996),(1997),(1998),(1999),(2000),(2001),(2002),(2003),(2004),(2005),(2006),(2007) + ,(2008),(2009),(2010),(2011),(2012),(2013),(2014),(2015),(2016),(2017),(2018),(2019),(2020),(2021),(2022),(2023),(2024),(2025),(2026),(2027) + ,(2028),(2029),(2030),(2031),(2032),(2033),(2034),(2035),(2036),(2037),(2038),(2039),(2040),(2041),(2042),(2043),(2044),(2045),(2046),(2047) + ,(2048),(2049),(2050); + + -- Decode model year groups + -- single years represent single years, unless it is 1972 which represents 1960-1972 + -- 0 represents 1960-2050 + drop table if exists tempModelYearGroupDecode; + create table tempModelYearGroupDecode ( + modelYearGroupID int(11) not null primary key, + modelYearGroupName char(50) default null, + minModelYearID smallint(6) default null, + maxModelYearID smallint(6) default null, + cutoffFlag smallint(6) default null + ); + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select modelYearGroupID, modelYearGroupName from modelYearGroup; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'baseFuel' from baseFuel; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'cumTVVCoeffs' from cumTVVCoeffs; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'fuelModelWtFactor' from fuelModelWtFactor; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'meanFuelParameters' from meanFuelParameters; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'noNO2Ratio' from noNO2Ratio; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'pollutantProcessModelYear' from pollutantProcessModelYear; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'sourceBin' from sourceBin; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'sourceTypeModelYearGroup' from sourceTypeModelYearGroup; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'startTempAdjustment' from startTempAdjustment; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'sulfateEmissionRate' from sulfateEmissionRate; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'sulfurBase' from sulfurBase; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct fuelMYGroupID, 'sulfurModelCoeff' from sulfurModelCoeff; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct fuelMYGroupID, 'hcPermeationCoeff' from hcPermeationCoeff; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct fuelMYGroupID, 'hcSpeciation' from hcSpeciation; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'dioxinemissionrate' from dioxinemissionrate; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'metalemissionrate' from metalemissionrate; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'methanethcratio' from methanethcratio; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'minorhapratio' from minorhapratio; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'pahgasratio' from pahgasratio; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'pahparticleratio' from pahparticleratio; + + insert ignore into tempModelYearGroupDecode (modelYearGroupID, modelYearGroupName) + select distinct modelYearGroupID, 'atrationongas' from atrationongas; + + + update tempModelYearGroupDecode set minModelYearID=1960, maxModelYearID=2050 + where minModelYearID is null and maxModelYearID is null + and modelYearGroupID=0; + + update tempModelYearGroupDecode set minModelYearID=1960, maxModelYearID=1972 + where minModelYearID is null and maxModelYearID is null + and modelYearGroupID=1972; + + update tempModelYearGroupDecode set minModelYearID=modelYearGroupID, maxModelYearID=modelYearGroupID + where minModelYearID is null and maxModelYearID is null + and modelYearGroupID < 9999 and modelYearGroupID > 1960; + + update tempModelYearGroupDecode set minModelYearID=round(modelYearGroupID/10000,0), maxModelYearID=mod(modelYearGroupID,10000) + where minModelYearID is null and maxModelYearID is null + and modelYearGroupID > 9999; + + update tempModelYearGroupDecode set cutoffFlag=0 where cutoffFlag is null and minModelYearID <= cutPoint and maxModelYearID >= cutPoint; + update tempModelYearGroupDecode set cutoffFlag= -1 where cutoffFlag is null and maxModelYearID < cutPoint; + update tempModelYearGroupDecode set cutoffFlag= +1 where cutoffFlag is null and minModelYearID > cutPoint; + + -- baseFuel + drop table if exists tempBaseFuel; + create table tempBaseFuel + select b.calculationEngine, b.fuelTypeID, b.fuelFormulationID, b.description, b.dataSourceID + from baseFuel b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update baseFuel, tempBaseFuel, tempModelYearGroupDecode + set baseFuel.fuelFormulationID = tempBaseFuel.fuelFormulationID, baseFuel.description = tempBaseFuel.description, baseFuel.dataSourceID = tempBaseFuel.dataSourceID + where baseFuel.calculationEngine = tempBaseFuel.calculationEngine + and baseFuel.fuelTypeID = tempBaseFuel.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = baseFuel.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempBaseFuel; + insert into tempMessages (message) values ('Updated baseFuel table'); + + -- crankcaseEmissionRatio + drop table if exists tempCrankcaseEmissionRatio; + create table tempCrankcaseEmissionRatio + select b.polProcessID, b.sourceTypeID, b.fuelTypeID, b.crankcaseRatio, b.crankcaseRatioCV + from crankcaseEmissionRatio b + where minModelYearID <= cutPoint + and maxModelYearID >= cutPoint; + + update crankcaseEmissionRatio, tempCrankcaseEmissionRatio + set crankcaseEmissionRatio.crankcaseRatio=tempCrankcaseEmissionRatio.crankcaseRatio, crankcaseEmissionRatio.crankcaseRatioCV=tempCrankcaseEmissionRatio.crankcaseRatioCV + where crankcaseEmissionRatio.polProcessID=tempCrankcaseEmissionRatio.polProcessID and crankcaseEmissionRatio.sourceTypeID=tempCrankcaseEmissionRatio.sourceTypeID and crankcaseEmissionRatio.fuelTypeID=tempCrankcaseEmissionRatio.fuelTypeID + and crankcaseEmissionRatio.minModelYearID > cutPoint; + drop table if exists tempCrankcaseEmissionRatio; + insert into tempMessages (message) values ('Updated crankcaseEmissionRatio table'); + + -- cumTVVCoeffs + drop table if exists tempcumtvvcoeffs; + create table tempcumtvvcoeffs + select b.regClassID, b.ageGroupID, b.polProcessID, b.tvvTermA, b.tvvTermB, b.tvvTermC, b.tvvTermACV, b.tvvTermBCV, b.tvvTermCCV, b.tvvTermAIM, b.tvvTermBIM, b.tvvTermCIM, b.tvvTermAIMCV, b.tvvTermBIMCV, b.tvvTermCIMCV, b.backPurgeFactor, b.averageCanisterCapacity, b.tvvEquation, b.leakEquation, b.leakFraction, b.tankSize, b.tankFillFraction + from cumtvvcoeffs b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update cumtvvcoeffs, tempcumtvvcoeffs, tempModelYearGroupDecode + set cumtvvcoeffs.tvvTermA=tempcumtvvcoeffs.tvvTermA, cumtvvcoeffs.tvvTermB=tempcumtvvcoeffs.tvvTermB, cumtvvcoeffs.tvvTermC=tempcumtvvcoeffs.tvvTermC, cumtvvcoeffs.tvvTermACV=tempcumtvvcoeffs.tvvTermACV, cumtvvcoeffs.tvvTermBCV=tempcumtvvcoeffs.tvvTermBCV, cumtvvcoeffs.tvvTermCCV=tempcumtvvcoeffs.tvvTermCCV, cumtvvcoeffs.tvvTermAIM=tempcumtvvcoeffs.tvvTermAIM, cumtvvcoeffs.tvvTermBIM=tempcumtvvcoeffs.tvvTermBIM, cumtvvcoeffs.tvvTermCIM=tempcumtvvcoeffs.tvvTermCIM, cumtvvcoeffs.tvvTermAIMCV=tempcumtvvcoeffs.tvvTermAIMCV, cumtvvcoeffs.tvvTermBIMCV=tempcumtvvcoeffs.tvvTermBIMCV, cumtvvcoeffs.tvvTermCIMCV=tempcumtvvcoeffs.tvvTermCIMCV, cumtvvcoeffs.backPurgeFactor=tempcumtvvcoeffs.backPurgeFactor, cumtvvcoeffs.averageCanisterCapacity=tempcumtvvcoeffs.averageCanisterCapacity, cumtvvcoeffs.tvvEquation=tempcumtvvcoeffs.tvvEquation, cumtvvcoeffs.leakEquation=tempcumtvvcoeffs.leakEquation, cumtvvcoeffs.leakFraction=tempcumtvvcoeffs.leakFraction, cumtvvcoeffs.tankSize=tempcumtvvcoeffs.tankSize, cumtvvcoeffs.tankFillFraction=tempcumtvvcoeffs.tankFillFraction + where cumtvvcoeffs.regClassID=tempcumtvvcoeffs.regClassID + and cumtvvcoeffs.ageGroupID=tempcumtvvcoeffs.ageGroupID + and cumtvvcoeffs.polProcessID=tempcumtvvcoeffs.polProcessID + and tempModelYearGroupDecode.modelYearGroupID = cumtvvcoeffs.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempcumtvvcoeffs; + insert into tempMessages (message) values ('Updated cumTVVCoeffs table'); + + -- fuelModelWtFactor + drop table if exists tempFuelModelWtFactor; + create table tempFuelModelWtFactor + select b.fuelModelID, b.ageID, b.fuelModelWtFactor, b.dataSourceID + from fuelModelWtFactor b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update fuelModelWtFactor, tempFuelModelWtFactor, tempModelYearGroupDecode + set fuelModelWtFactor.fuelModelWtFactor = tempFuelModelWtFactor.fuelModelWtFactor, fuelModelWtFactor.dataSourceID = tempFuelModelWtFactor.dataSourceID + where fuelModelWtFactor.fuelModelID = tempFuelModelWtFactor.fuelModelID + and fuelModelWtFactor.ageID = tempFuelModelWtFactor.ageID + and tempModelYearGroupDecode.modelYearGroupID = fuelModelWtFactor.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempFuelModelWtFactor; + insert into tempMessages (message) values ('Updated fuelModelWtFactor table'); + + -- fuelSupply + select min(fuelYearID) into fuelYearToReplace from fuelSupply where fuelYearID >= cutPointFuelYear; + set fuelYearToReplace=ifnull(fuelYearToReplace,1990); + delete from fuelSupply where fuelYearID > fuelYearToReplace; + update fuelSupply set fuelYearID=cutPointFuelYear where fuelYearID=fuelYearToReplace; + + -- fuelUsageFraction + select min(fuelYearID) into fuelYearToReplace from fuelUsageFraction where fuelYearID >= cutPointFuelYear; + set fuelYearToReplace=ifnull(fuelYearToReplace,1990); + delete from fuelUsageFraction where fuelYearID > fuelYearToReplace; + update fuelUsageFraction set fuelYearID=cutPointFuelYear where fuelYearID=fuelYearToReplace; + + -- generalFuelRatioExpression + -- Delete anything that starts after cutPoint. + delete from generalFuelRatioExpression where minModelYearID > cutPoint; + + -- Anything that applies prior to cutPoint should go unchanged. + -- Anything that applies to cutPoint should apply to all years afterwards. This is safe + -- to do as any equation that used to begin after cutPoint was deleted above. + update generalFuelRatioExpression set maxModelYearID=2050 + where minModelYearID <= cutPoint and maxModelYearID >= cutPoint and maxModelYearID < 2050; + + insert into tempMessages (message) values ('Updated generalFuelRatioExpression table'); + + -- meanFuelParameters + drop table if exists tempMeanFuelParameters; + create table tempMeanFuelParameters + select b.polProcessID, b.fuelTypeID, b.fuelParameterID, b.baseValue, b.centeringValue, b.stdDevValue, b.dataSourceID + from meanFuelParameters b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update meanFuelParameters, tempMeanFuelParameters, tempModelYearGroupDecode + set meanFuelParameters.baseValue=tempMeanFuelParameters.baseValue, meanFuelParameters.centeringValue=tempMeanFuelParameters.centeringValue, meanFuelParameters.stdDevValue=tempMeanFuelParameters.stdDevValue, meanFuelParameters.dataSourceID=tempMeanFuelParameters.dataSourceID + where meanFuelParameters.polProcessID=tempMeanFuelParameters.polProcessID and meanFuelParameters.fuelTypeID=tempMeanFuelParameters.fuelTypeID and meanFuelParameters.fuelParameterID=tempMeanFuelParameters.fuelParameterID + and tempModelYearGroupDecode.modelYearGroupID = meanFuelParameters.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempMeanFuelParameters; + insert into tempMessages (message) values ('Updated meanFuelParameters table'); + + -- noNO2Ratio + drop table if exists tempNoNO2Ratio; + create table tempNoNO2Ratio + select b.polProcessID, b.sourceTypeID, b.fuelTypeID, b.NOxRatio, b.NOxRatioCV, b.dataSourceID + from noNO2Ratio b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update noNO2Ratio, tempNoNO2Ratio, tempModelYearGroupDecode + set noNO2Ratio.NOxRatio=tempNoNO2Ratio.NOxRatio, noNO2Ratio.NOxRatioCV=tempNoNO2Ratio.NOxRatioCV, noNO2Ratio.dataSourceID=tempNoNO2Ratio.dataSourceID + where noNO2Ratio.polProcessID=tempNoNO2Ratio.polProcessID and noNO2Ratio.sourceTypeID=tempNoNO2Ratio.sourceTypeID and noNO2Ratio.fuelTypeID=tempNoNO2Ratio.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = noNO2Ratio.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempNoNO2Ratio; + insert into tempMessages (message) values ('Updated noNO2Ratio table'); + + -- PollutantProcessModelYear + drop table if exists tempPollutantProcessModelYear; + create table tempPollutantProcessModelYear + select polProcessID, modelYearGroupID, fuelMYGroupID, IMModelYearGroupID + from pollutantProcessModelYear + where modelYearID = cutPoint; + + update pollutantProcessModelYear, tempPollutantProcessModelYear + set pollutantProcessModelYear.modelYearGroupID = tempPollutantProcessModelYear.modelYearGroupID, + pollutantProcessModelYear.fuelMYGroupID = tempPollutantProcessModelYear.fuelMYGroupID, + pollutantProcessModelYear.IMModelYearGroupID = tempPollutantProcessModelYear.IMModelYearGroupID + where pollutantProcessModelYear.polProcessID = tempPollutantProcessModelYear.polProcessID + and pollutantProcessModelYear.modelYearID > cutPoint; + drop table if exists tempPollutantProcessModelYear; + insert into tempMessages (message) values ('Updated pollutantProcessModelYear table'); + + -- sourceTypeModelYear + drop table if exists tempSourceTypeModelYear; + create table tempSourceTypeModelYear + select b.sourceTypeID, b.ACPenetrationFraction, b.ACPenetrationFractionCV + from sourceTypeModelYear b + where modelYearID=cutPoint; + + update sourceTypeModelYear, tempSourceTypeModelYear + set sourceTypeModelYear.ACPenetrationFraction=tempSourceTypeModelYear.ACPenetrationFraction, sourceTypeModelYear.ACPenetrationFractionCV=tempSourceTypeModelYear.ACPenetrationFractionCV + where sourceTypeModelYear.sourceTypeID=tempSourceTypeModelYear.sourceTypeID + and sourceTypeModelYear.modelYearID > cutPoint; + drop table if exists tempSourceTypeModelYear; + insert into tempMessages (message) values ('Updated sourceTypeModelYear table'); + + -- sourceTypeModelYearGroup + drop table if exists tempSourceTypeModelYearGroup; + create table tempSourceTypeModelYearGroup + select b.sourceTypeID, b.tankTemperatureGroupID + from sourceTypeModelYearGroup b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update sourceTypeModelYearGroup, tempSourceTypeModelYearGroup, tempModelYearGroupDecode + set sourceTypeModelYearGroup.tankTemperatureGroupID=tempSourceTypeModelYearGroup.tankTemperatureGroupID + where sourceTypeModelYearGroup.sourceTypeID=tempSourceTypeModelYearGroup.sourceTypeID + and tempModelYearGroupDecode.modelYearGroupID = sourceTypeModelYearGroup.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempSourceTypeModelYearGroup; + insert into tempMessages (message) values ('Updated sourceTypeModelYearGroup table'); + + -- SourceTypeTechAdjustment + drop table if exists tempSourceTypeTechAdjustment; + create table tempSourceTypeTechAdjustment + select processID, sourceTypeID, refuelingTechAdjustment + from sourceTypeTechAdjustment + where modelYearID=cutPoint; + + update sourceTypeTechAdjustment, tempSourceTypeTechAdjustment + set sourceTypeTechAdjustment.refuelingTechAdjustment = tempSourceTypeTechAdjustment.refuelingTechAdjustment + where sourceTypeTechAdjustment.processID = tempSourceTypeTechAdjustment.processID + and sourceTypeTechAdjustment.sourceTypeID = tempSourceTypeTechAdjustment.sourceTypeID + and sourceTypeTechAdjustment.modelYearID > cutPoint; + drop table if exists tempSourceTypeTechAdjustment; + insert into tempMessages (message) values ('Updated sourceTypeTechAdjustment table'); + + -- startTempAdjustment + drop table if exists tempStartTempAdjustment; + create table tempStartTempAdjustment + select b.fuelTypeID, b.polProcessID, b.opModeID, b.tempAdjustTermA, b.tempAdjustTermACV, b.tempAdjustTermB, b.tempAdjustTermBCV, b.tempAdjustTermC, b.tempAdjustTermCCV + from startTempAdjustment b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update startTempAdjustment, tempStartTempAdjustment, tempModelYearGroupDecode + set startTempAdjustment.tempAdjustTermA=tempStartTempAdjustment.tempAdjustTermA, startTempAdjustment.tempAdjustTermACV=tempStartTempAdjustment.tempAdjustTermACV, startTempAdjustment.tempAdjustTermB=tempStartTempAdjustment.tempAdjustTermB, startTempAdjustment.tempAdjustTermBCV=tempStartTempAdjustment.tempAdjustTermBCV, startTempAdjustment.tempAdjustTermC=tempStartTempAdjustment.tempAdjustTermC, startTempAdjustment.tempAdjustTermCCV=tempStartTempAdjustment.tempAdjustTermCCV + where startTempAdjustment.fuelTypeID=tempStartTempAdjustment.fuelTypeID and startTempAdjustment.polProcessID=tempStartTempAdjustment.polProcessID and startTempAdjustment.opModeID=tempStartTempAdjustment.opModeID + and tempModelYearGroupDecode.modelYearGroupID = startTempAdjustment.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempStartTempAdjustment; + insert into tempMessages (message) values ('Updated startTempAdjustment table'); + + -- sulfateEmissionRate + drop table if exists tempSulfateEmissionRate; + create table tempSulfateEmissionRate + select b.polProcessID, b.fuelTypeID, b.meanBaseRate, b.meanBaseRateCV, b.dataSourceID + from sulfateEmissionRate b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update sulfateEmissionRate, tempSulfateEmissionRate, tempModelYearGroupDecode + set sulfateEmissionRate.meanBaseRate=tempSulfateEmissionRate.meanBaseRate, sulfateEmissionRate.meanBaseRateCV=tempSulfateEmissionRate.meanBaseRateCV, sulfateEmissionRate.dataSourceID=tempSulfateEmissionRate.dataSourceID + where sulfateEmissionRate.polProcessID=tempSulfateEmissionRate.polProcessID and sulfateEmissionRate.fuelTypeID=tempSulfateEmissionRate.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = sulfateEmissionRate.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempSulfateEmissionRate; + insert into tempMessages (message) values ('Updated sulfateEmissionRate table'); + + -- sulfurBase + drop table if exists tempSulfurBase; + create table tempSulfurBase + select b.sulfurBase, b.sulfurBasis, b.sulfurGPAMax + from sulfurBase b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update sulfurBase, tempSulfurBase, tempModelYearGroupDecode + set sulfurBase.sulfurBase=tempSulfurBase.sulfurBase, sulfurBase.sulfurBasis=tempSulfurBase.sulfurBasis, sulfurBase.sulfurGPAMax=tempSulfurBase.sulfurGPAMax + where + tempModelYearGroupDecode.modelYearGroupID = sulfurBase.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempSulfurBase; + insert into tempMessages (message) values ('Updated sulfurBase table'); + + -- sulfurModelCoeff + drop table if exists tempSulfurModelCoeff; + create table tempSulfurModelCoeff + select b.processID, b.pollutantID, b.M6emitterID, b.sourceTypeID, b.sulfurFunctionID, b.sulfurCoeff, b.lowSulfurCoeff + from sulfurModelCoeff b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.fuelMYGroupID and d.cutoffFlag=0); + + update sulfurModelCoeff, tempSulfurModelCoeff, tempModelYearGroupDecode + set sulfurModelCoeff.sulfurCoeff=tempSulfurModelCoeff.sulfurCoeff, sulfurModelCoeff.lowSulfurCoeff=tempSulfurModelCoeff.lowSulfurCoeff, sulfurModelCoeff.sulfurFunctionID=tempSulfurModelCoeff.sulfurFunctionID + where sulfurModelCoeff.processID=tempSulfurModelCoeff.processID + and sulfurModelCoeff.pollutantID=tempSulfurModelCoeff.pollutantID + and sulfurModelCoeff.M6emitterID=tempSulfurModelCoeff.M6emitterID + and sulfurModelCoeff.sourceTypeID=tempSulfurModelCoeff.sourceTypeID + and tempModelYearGroupDecode.modelYearGroupID = sulfurModelCoeff.fuelMYGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempSulfurModelCoeff; + insert into tempMessages (message) values ('Updated sulfurModelCoeff table'); + + -- hcPermeationCoeff + drop table if exists temphcPermeationCoeff; + create table temphcPermeationCoeff + select polProcessID, etohThreshID, fuelAdjustment, fuelAdjustmentGPA, dataSourceID + from hcPermeationCoeff b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.fuelMYGroupID and d.cutoffFlag=0); + + update hcPermeationCoeff, temphcPermeationCoeff, tempModelYearGroupDecode + set hcPermeationCoeff.fuelAdjustment=temphcPermeationCoeff.fuelAdjustment, + hcPermeationCoeff.fuelAdjustmentGPA=temphcPermeationCoeff.fuelAdjustmentGPA, + hcPermeationCoeff.dataSourceID=temphcPermeationCoeff.dataSourceID + where hcPermeationCoeff.polProcessID=temphcPermeationCoeff.polProcessID + and hcPermeationCoeff.etohThreshID=temphcPermeationCoeff.etohThreshID + and tempModelYearGroupDecode.modelYearGroupID = hcPermeationCoeff.fuelMYGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists temphcPermeationCoeff; + insert into tempMessages (message) values ('Updated hcPermeationCoeff table'); + + -- hcSpeciation + drop table if exists temphcSpeciation; + create table temphcSpeciation + select polProcessID, fuelSubtypeID, etohThreshID, oxyThreshID, speciationConstant, oxySpeciation + from hcSpeciation b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.fuelMYGroupID and d.cutoffFlag=0); + + update hcSpeciation, temphcSpeciation, tempModelYearGroupDecode + set hcSpeciation.speciationConstant=temphcSpeciation.speciationConstant, + hcSpeciation.oxySpeciation=temphcSpeciation.oxySpeciation + where hcSpeciation.polProcessID=temphcSpeciation.polProcessID + and hcSpeciation.fuelSubtypeID=temphcSpeciation.fuelSubtypeID + and hcSpeciation.etohThreshID=temphcSpeciation.etohThreshID + and hcSpeciation.oxyThreshID=temphcSpeciation.oxyThreshID + and tempModelYearGroupDecode.modelYearGroupID = hcSpeciation.fuelMYGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists temphcSpeciation; + insert into tempMessages (message) values ('Updated hcSpeciation table'); + + -- dioxinemissionrate + drop table if exists tempdioxinemissionrate; + create table tempdioxinemissionrate + select b.polProcessID, b.fuelTypeID, b.units, b.meanBaseRate, b.meanBaseRateCV, b.dataSourceId + from dioxinemissionrate b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update dioxinemissionrate, tempdioxinemissionrate, tempModelYearGroupDecode + set dioxinemissionrate.units=tempdioxinemissionrate.units, dioxinemissionrate.meanBaseRate=tempdioxinemissionrate.meanBaseRate, dioxinemissionrate.meanBaseRateCV=tempdioxinemissionrate.meanBaseRateCV, dioxinemissionrate.dataSourceId=tempdioxinemissionrate.dataSourceId + where dioxinemissionrate.polProcessID=tempdioxinemissionrate.polProcessID + and dioxinemissionrate.fuelTypeID=tempdioxinemissionrate.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = dioxinemissionrate.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempdioxinemissionrate; + insert into tempMessages (message) values ('Updated dioxinemissionrate table'); + + -- metalemissionrate + drop table if exists tempmetalemissionrate; + create table tempmetalemissionrate + select b.polProcessID, b.fuelTypeID, b.sourceTypeID, b.units, b.meanBaseRate, b.meanBaseRateCV, b.dataSourceId + from metalemissionrate b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update metalemissionrate, tempmetalemissionrate, tempModelYearGroupDecode + set metalemissionrate.units=tempmetalemissionrate.units, metalemissionrate.meanBaseRate=tempmetalemissionrate.meanBaseRate, metalemissionrate.meanBaseRateCV=tempmetalemissionrate.meanBaseRateCV, metalemissionrate.dataSourceId=tempmetalemissionrate.dataSourceId + where metalemissionrate.polProcessID=tempmetalemissionrate.polProcessID + and metalemissionrate.fuelTypeID=tempmetalemissionrate.fuelTypeID + and metalemissionrate.sourceTypeID=tempmetalemissionrate.sourceTypeID + and tempModelYearGroupDecode.modelYearGroupID = metalemissionrate.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempmetalemissionrate; + insert into tempMessages (message) values ('Updated metalemissionrate table'); + + -- methanethcratio + drop table if exists tempmethanethcratio; + create table tempmethanethcratio + select b.processID, b.fuelTypeID, b.sourceTypeID, b.ageGroupID, b.CH4THCRatio, b.CH4THCRatioCV + from methanethcratio b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update methanethcratio, tempmethanethcratio, tempModelYearGroupDecode + set methanethcratio.CH4THCRatio=tempmethanethcratio.CH4THCRatio, methanethcratio.CH4THCRatioCV=tempmethanethcratio.CH4THCRatioCV + where methanethcratio.processID=tempmethanethcratio.processID + and methanethcratio.fuelTypeID=tempmethanethcratio.fuelTypeID + and methanethcratio.sourceTypeID=tempmethanethcratio.sourceTypeID + and methanethcratio.ageGroupID=tempmethanethcratio.ageGroupID + and tempModelYearGroupDecode.modelYearGroupID = methanethcratio.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempmethanethcratio; + insert into tempMessages (message) values ('Updated methanethcratio table'); + + -- minorhapratio + drop table if exists tempminorhapratio; + create table tempminorhapratio + select b.polProcessID, b.fuelTypeID, b.fuelSubtypeID, b.atRatio, b.atRatioCV, b.dataSourceId + from minorhapratio b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update minorhapratio, tempminorhapratio, tempModelYearGroupDecode + set minorhapratio.atRatio=tempminorhapratio.atRatio, minorhapratio.atRatioCV=tempminorhapratio.atRatioCV, minorhapratio.dataSourceId=tempminorhapratio.dataSourceId + where minorhapratio.polProcessID=tempminorhapratio.polProcessID + and minorhapratio.fuelTypeID=tempminorhapratio.fuelTypeID + and minorhapratio.fuelSubtypeID=tempminorhapratio.fuelSubtypeID + and tempModelYearGroupDecode.modelYearGroupID = minorhapratio.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempminorhapratio; + insert into tempMessages (message) values ('Updated minorhapratio table'); + + -- pahgasratio + drop table if exists temppahgasratio; + create table temppahgasratio + select b.polProcessID, b.fuelTypeID, b.atRatio, b.atRatioCV, b.dataSourceId + from pahgasratio b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update pahgasratio, temppahgasratio, tempModelYearGroupDecode + set pahgasratio.atRatio=temppahgasratio.atRatio, pahgasratio.atRatioCV=temppahgasratio.atRatioCV, pahgasratio.dataSourceId=temppahgasratio.dataSourceId + where pahgasratio.polProcessID=temppahgasratio.polProcessID + and pahgasratio.fuelTypeID=temppahgasratio.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = pahgasratio.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists temppahgasratio; + insert into tempMessages (message) values ('Updated pahgasratio table'); + + -- pahparticleratio + drop table if exists temppahparticleratio; + create table temppahparticleratio + select b.polProcessID, b.fuelTypeID, b.atRatio, b.atRatioCV, b.dataSourceId + from pahparticleratio b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update pahparticleratio, temppahparticleratio, tempModelYearGroupDecode + set pahparticleratio.atRatio=temppahparticleratio.atRatio, pahparticleratio.atRatioCV=temppahparticleratio.atRatioCV, pahparticleratio.dataSourceId=temppahparticleratio.dataSourceId + where pahparticleratio.polProcessID=temppahparticleratio.polProcessID + and pahparticleratio.fuelTypeID=temppahparticleratio.fuelTypeID + and tempModelYearGroupDecode.modelYearGroupID = pahparticleratio.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists temppahparticleratio; + insert into tempMessages (message) values ('Updated pahparticleratio table'); + + -- atrationongas + drop table if exists tempatrationongas; + create table tempatrationongas + select b.polProcessID, b.sourceTypeID, b.fuelSubtypeID, b.ATRatio, b.ATRatioCV, b.dataSourceId + from atrationongas b + inner join tempModelYearGroupDecode d on (d.modelYearGroupID=b.modelYearGroupID and d.cutoffFlag=0); + + update atrationongas, tempatrationongas, tempModelYearGroupDecode + set atrationongas.atRatio=tempatrationongas.atRatio, atrationongas.atRatioCV=tempatrationongas.atRatioCV, atrationongas.dataSourceId=tempatrationongas.dataSourceId + where atrationongas.polProcessID=tempatrationongas.polProcessID + and atrationongas.sourceTypeID=tempatrationongas.sourceTypeID + and atrationongas.fuelSubtypeID=tempatrationongas.fuelSubtypeID + and tempModelYearGroupDecode.modelYearGroupID = atrationongas.modelYearGroupID + and tempModelYearGroupDecode.cutoffFlag = 1; + drop table if exists tempatrationongas; + insert into tempMessages (message) values ('Updated atrationongas table'); + + + + + drop table if exists tempModelYear; + -- drop table if exists tempModelYearGroupDecode; +end +EndBlock + +drop procedure if exists spCheckRateOfProgressIMPrograms; + +BeginBlock +create procedure spCheckRateOfProgressIMPrograms() +begin + -- Insert messages beginning with WARNING: or ERROR: to notify the user + -- of IM programs that do not make sense if the Clean Air Act had not + -- been enacted. + -- insert into tempMessages (message) values ('WARNING: This is a test RoP warning'); + -- insert into tempMessages (message) values ('ERROR: This is a test RoP error'); + + insert into tempMessages (message) values ('Checked IM programs for Rate of Progress suitability'); +end +EndBlock + +call spDoRateOfProgress(); +drop procedure if exists spDoRateOfProgress; + +call spCheckRateOfProgressIMPrograms(); +drop procedure if exists spCheckRateOfProgressIMPrograms; diff --git a/database/RatePostProcessor.sql b/database/RatePostProcessor.sql new file mode 100644 index 0000000..8c8d47f --- /dev/null +++ b/database/RatePostProcessor.sql @@ -0,0 +1,258 @@ +-- Populate RatePerDistance, RatePerVehicle, RatePerProfile. +-- Run from an output database. +-- +-- Expected replacement parameters: +-- ##mainDatabase## Ideally will be MOVESExecution, but could be a fully filled default database +-- ##runID## +-- ##scenarioID## +-- ##isProjectDomain## 1 or 0 +-- ##isSCC## 1 or 0 +-- +-- Author Wesley Faler +-- Version 2014-02-13 + +drop procedure if exists spRatePostProcessor; + +BeginBlock +create procedure spRatePostProcessor() +begin + -- There will be no NULL columns in MOVESOutput or MOVESActivityOutput. All NULL values + -- have been replaced with 0's to facilitate joining. + + -- Create a temporary table, good for exactly one type of activity and tuned to the needs + -- of joins for the rate tables. + + -- Populate RatePerDistance + -- First, get just the distance activity into its own indexed table + drop table if exists TempActivityOutput; + create table TempActivityOutput ( + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT '', + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + activity FLOAT NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + key (yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID) + ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + + insert into TempActivityOutput ( + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + activity, + zoneID) + select yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + activity, + zoneID + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=1; + + analyze table TempActivityOutput; + + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerDistance (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + pollutantID, processID, + avgSpeedBinID,temperature, relHumidity, + ratePerDistance) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.linkID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.roadTypeID, + o.pollutantID, o.processID, + if(##isProjectDomain##>0,0,mod(o.linkID,100)) as avgSpeedBinID, + z.temperature, z.relHumidity, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerDistance + from MOVESOutput as o + inner join TempActivityOutput as a using ( + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=a.monthID + and z.hourID=a.hourID + ) + where o.MOVESRunID=##runID## + and (o.processID in (1,9,10,15,18,19) + or (o.processID in (11,12,13) and o.roadTypeID<>1)); + + -- Populate RatePerVehicle + -- First, get just the population into its own indexed table + drop table if exists TempActivityOutput; + create table TempActivityOutput ( + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + activity FLOAT NULL DEFAULT NULL, + key (zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + + if(##isProjectDomain##>0) then + -- Project population is by link and needs to be aggregated to a single zone-level population. + insert into TempActivityOutput ( + zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity) + select zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + sum(activity) + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=6 + and roadTypeID=1 + group by zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID; + else + -- Non-Project domains generate a single population entry per zone/month/day/hour and don't need to be aggregated. + insert into TempActivityOutput ( + zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity) + select distinct zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=6; + end if; + + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerVehicle (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + zoneID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + pollutantID, processID, + temperature, + ratePerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.zoneID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.pollutantID, o.processID, + z.temperature, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerVehicle + from MOVESOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=o.monthID + and z.hourID=o.hourID + ) + where o.MOVESRunID=##runID## + and (o.processID in (2,16,17,90,91) + or (o.processID in (11,13,18,19) and o.roadTypeID=1)); + + -- Now the inventory can be efficiently joined with the indexed activity + insert into StartsPerVehicle (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + zoneID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + startsPerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.zoneID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + case when a.activity > 0 then (o.activity / a.activity) + else null + end as startsPerVehicle + from MOVESActivityOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + where o.MOVESRunID=##runID## + and o.activityTypeID = 7; + +-- Cannot make Project starts as "rate per started vehicle" because the sourceTypeID/SCC connection is many-to-many +-- and cannot be done for the SCC portion of rates. In addition, this would make Project report rates differently +-- than other scales, which report starts as "rate per existing vehicle". +-- if(##isProjectDomain##>0) then +-- update RatePerVehicle, ##mainDatabase##.offNetworkLink +-- set ratePerVehicle = case when startFraction > 0 then (ratePerVehicle / startFraction) else 0 end +-- where MOVESRunID=##runID## +-- and processID = 2 +-- and RatePerVehicle.sourceTypeID = ##mainDatabase##.offNetworkLink.sourceTypeID; +-- end if; + + -- Populate RatePerProfile + -- Use the population activity from the prior step, already stored in TempActivityOutput + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerProfile (MOVESScenarioID, MOVESRunID, + temperatureProfileID, + yearID, dayID, hourID, + pollutantID, processID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + temperature, + ratePerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + t.temperatureProfileID, + o.yearID, o.dayID, o.hourID, + o.pollutantID, o.processID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + z.temperature, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerVehicle + from MOVESOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=o.monthID + and z.hourID=o.hourID + ) + inner join ##mainDatabase##.TemperatureProfileID as t on ( + t.zoneID=a.zoneID + and t.monthID=o.monthID + ) + where o.MOVESRunID=##runID## + and o.processID=12 and o.roadTypeID=1; + + -- Done + drop table if exists TempActivityOutput; +end +EndBlock + +call spRatePostProcessor(); +drop procedure if exists spRatePostProcessor; diff --git a/database/RatePostProcessorRatesFirst.sql b/database/RatePostProcessorRatesFirst.sql new file mode 100644 index 0000000..5cd9458 --- /dev/null +++ b/database/RatePostProcessorRatesFirst.sql @@ -0,0 +1,344 @@ +-- Populate RatePerDistance, RatePerVehicle, RatePerProfile, RatePerStart, +-- StartsPerVehicle, and RatePerHour. +-- Run from an output database that was created using Rates First methods. +-- +-- Expected replacement parameters: +-- ##mainDatabase## Ideally will be MOVESExecution, but could be a fully filled default database +-- ##runID## +-- ##scenarioID## +-- ##isProjectDomain## 1 or 0 +-- +-- Author Wesley Faler +-- Version 2014-08-20 + +drop procedure if exists spRatePostProcessor; + +BeginBlock +create procedure spRatePostProcessor() +begin + -- There will be no NULL columns in MOVESOutput or MOVESActivityOutput. All NULL values + -- have been replaced with 0's to facilitate joining. + + -- Create a temporary table, good for exactly one type of activity and tuned to the needs + -- of joins for the rate tables. + + if(##isProjectDomain##>0) then + -- Convert project emission rate from mass/time to mass/distance. + -- Being rates without an average speed bin, they were not converted to + -- distance basis previously. + -- Links with 0 average speed should get 0 emissions per distance. + update BaseRateOutput, MOVESExecution.link + set emissionRate = case when linkAvgSpeed > 0 then emissionRate / linkAvgSpeed else null end + where BaseRateOutput.movesRunID = ##runID## + and BaseRateOutput.linkID = MOVESExecution.link.linkID + and processID in (1,9,10,15,18,19); + end if; + + -- Populate RatePerDistance + insert into RatePerDistance (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + pollutantID, processID, + avgSpeedBinID, + temperature, relHumidity, + ratePerDistance) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, mod(o.hourDayID,10) as dayID, floor(o.hourDayID/10) as hourID, + o.linkID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.roadTypeID, + o.pollutantID, o.processID, + o.avgSpeedBinID, + z.temperature, z.relHumidity, + o.emissionRate as ratePerDistance + from BaseRateOutput as o + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=o.zoneID + and z.monthID=o.monthID + and z.hourID=floor(o.hourDayID/10) + ) + where o.MOVESRunID=##runID## + and (o.processID in (1,9,10,15) + or (o.processID in (11,12,13,18,19) and o.roadTypeID<>1)); + + -- Populate RatePerDistance for processes that don't fill BaseRateOutput + -- First, get just the distance activity into its own indexed table + drop table if exists TempActivityOutput; + create table TempActivityOutput ( + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + monthID SMALLINT UNSIGNED NULL DEFAULT NULL, + dayID SMALLINT UNSIGNED NULL DEFAULT NULL, + hourID SMALLINT UNSIGNED NULL DEFAULT NULL, + linkID INTEGER UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT '', + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + roadTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + activity FLOAT NULL DEFAULT NULL, + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + key (yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID) + ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + + insert into TempActivityOutput ( + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + activity, + zoneID) + select yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + activity, + zoneID + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=1; + + analyze table TempActivityOutput; + + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerDistance (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + pollutantID, processID, + avgSpeedBinID, + temperature, relHumidity, + ratePerDistance) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.linkID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.roadTypeID, + o.pollutantID, o.processID, + if(##isProjectDomain##>0,0,mod(o.linkID,100)) as avgSpeedBinID, + z.temperature, z.relHumidity, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerDistance + from MOVESOutput as o + inner join TempActivityOutput as a using ( + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, + roadTypeID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=a.monthID + and z.hourID=a.hourID + ) + where o.MOVESRunID=##runID## + and (o.processID in (11,12,13) and o.roadTypeID<>1); + + -- Populate RatePerHour + insert into RatePerHour (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + linkID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + roadTypeID, + pollutantID, processID, + temperature, relHumidity, + ratePerHour) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, mod(o.hourDayID,10) as dayID, floor(o.hourDayID/10) as hourID, + o.linkID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.roadTypeID, + o.pollutantID, o.processID, + z.temperature, z.relHumidity, + o.emissionRate as ratePerHour + from BaseRateOutput o + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=o.zoneID + and z.monthID=o.monthID + and z.hourID=floor(o.hourDayID/10) + ) + where MOVESRunID=##runID## + and processID in (17,90,91); + + -- Populate RatePerStart + -- Skip for Project mode. + if(##isProjectDomain##<=0) then + insert into RatePerStart (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + zoneID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + pollutantID, processID, + temperature, relHumidity, + ratePerStart) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, mod(o.hourDayID,10) as dayID, floor(o.hourDayID/10) as hourID, + o.zoneID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.pollutantID, o.processID, + z.temperature, z.relHumidity, + o.emissionRate as ratePerStart + from BaseRateOutput as o + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=o.zoneID + and z.monthID=o.monthID + and z.hourID=floor(o.hourDayID/10) + ) + where o.MOVESRunID=##runID## + and o.processID in (2,16); + end if; + + -- Populate RatePerVehicle + -- First, get just the population into its own indexed table + drop table if exists TempActivityOutput; + create table TempActivityOutput ( + zoneID INTEGER UNSIGNED NULL DEFAULT NULL, + yearID SMALLINT UNSIGNED NULL DEFAULT NULL, + sourceTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + regClassID SMALLINT UNSIGNED NULL DEFAULT NULL, + SCC CHAR(10) NULL DEFAULT NULL, + fuelTypeID SMALLINT UNSIGNED NULL DEFAULT NULL, + modelYearID SMALLINT UNSIGNED NULL DEFAULT NULL, + activity FLOAT NULL DEFAULT NULL, + key (zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DELAY_KEY_WRITE=1; + + if(##isProjectDomain##>0) then + -- Project population is by link and needs to be aggregated to a single zone-level population. + insert into TempActivityOutput ( + zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity) + select zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + sum(activity) + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=6 + and roadTypeID=1 + group by zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID; + else + -- Non-Project domains generate a single population entry per zone/month/day/hour and don't need to be aggregated. + insert into TempActivityOutput ( + zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity) + select distinct zoneID, + yearID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + activity + from MOVESActivityOutput + where MOVESRunID = ##runID## + and activityTypeID=6; + end if; + + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerVehicle (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + zoneID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + pollutantID, processID, + temperature, relHumidity, + ratePerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.zoneID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + o.pollutantID, o.processID, + z.temperature, z.relHumidity, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerVehicle + from MOVESOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=o.monthID + and z.hourID=o.hourID + ) + where o.MOVESRunID=##runID## + and (o.processID in (2,16,17,90,91) + or (o.processID in (11,13,18,19) and o.roadTypeID=1)); + + -- Populate StartsPerVehicle. + -- Skip for Project mode. + if(##isProjectDomain##<=0) then + insert into StartsPerVehicle (MOVESScenarioID, MOVESRunID, + yearID, monthID, dayID, hourID, + zoneID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + startsPerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + o.yearID, o.monthID, o.dayID, o.hourID, + o.zoneID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + case when a.activity > 0 then (o.activity / a.activity) + else null + end as startsPerVehicle + from MOVESActivityOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + where o.MOVESRunID=##runID## + and o.activityTypeID = 7; + end if; + + -- Populate RatePerProfile + -- Use the population activity from the prior step, already stored in TempActivityOutput + -- Now the inventory can be efficiently joined with the indexed activity + insert into RatePerProfile (MOVESScenarioID, MOVESRunID, + temperatureProfileID, + yearID, dayID, hourID, + pollutantID, processID, + sourceTypeID, regClassID, SCC, fuelTypeID, modelYearID, + temperature, relHumidity, + ratePerVehicle) + select '##scenarioID##' as MOVESScenarioID, ##runID## as MOVESRunID, + t.temperatureProfileID, + o.yearID, o.dayID, o.hourID, + o.pollutantID, o.processID, + o.sourceTypeID, o.regClassID, o.SCC, o.fuelTypeID, o.modelYearID, + z.temperature, z.relHumidity, + case when a.activity > 0 then (o.emissionQuant / a.activity) + else null + end as ratePerVehicle + from MOVESOutput as o + inner join TempActivityOutput as a using ( + zoneID, + yearID, + sourceTypeID, regClassID, fuelTypeID, modelYearID) + inner join ##mainDatabase##.ZoneMonthHour as z on ( + z.zoneID=a.zoneID + and z.monthID=o.monthID + and z.hourID=o.hourID + ) + inner join ##mainDatabase##.TemperatureProfileID as t on ( + t.zoneID=a.zoneID + and t.monthID=o.monthID + ) + where o.MOVESRunID=##runID## + and o.processID=12 and o.roadTypeID=1; + + -- Done + drop table if exists TempActivityOutput; +end +EndBlock + +call spRatePostProcessor(); +drop procedure if exists spRatePostProcessor; diff --git a/database/RefuelingLossCalculator.sql b/database/RefuelingLossCalculator.sql new file mode 100644 index 0000000..6bf91f1 --- /dev/null +++ b/database/RefuelingLossCalculator.sql @@ -0,0 +1,543 @@ +-- Version 2014-10-14 +-- Author Wesley Faler +-- Supported special section names: +-- RefuelingDisplacementVaporLoss +-- RefuelingSpillageLoss + +-- @algorithm +-- @owner Refueling Loss Calculator +-- @calculator + +-- Supported special variable names: +-- ##refuelingDisplacement.pollutantIDs## +-- ##refuelingSpillage.pollutantIDs## +-- ##refuelingProcessIDs## + +-- Section Create Remote Tables for Extracted Data +##create.RefuelingFactors##; +TRUNCATE TABLE RefuelingFactors; + +##create.SourceTypeTechAdjustment##; +TRUNCATE TABLE SourceTypeTechAdjustment; + +drop table if exists RefuelingFuelType; +create table RefuelingFuelType ( + fuelTypeID SMALLINT NOT NULL, + defaultFormulationID SMALLINT NOT NULL, + fuelTypeDesc CHAR(50) NULL, + humidityCorrectionCoeff FLOAT NULL, + humidityCorrectionCoeffCV FLOAT NULL, + energyContent FLOAT NULL, + fuelDensity FLOAT NULL, + monthID SMALLINT NOT NULL, + unique index XPKRefuelingFuelType (fuelTypeID, monthID), + key (monthID, fuelTypeID) +); +truncate table RefuelingFuelType; + +drop table if exists RefuelingRunSpecHour; +create table RefuelingRunSpecHour ( + hourID smallint(6) not null, + unique index XPKRefuelingRunSpecHour ( hourID ) +); +truncate table RefuelingRunSpecHour; + +drop table if exists RefuelingRunSpecMonth; +create table RefuelingRunSpecMonth ( + monthID smallint(6) not null, + unique index XPKRefuelingRunSpecMonth ( monthID ) +); +truncate table RefuelingRunSpecMonth; + +drop table if exists RefuelingCountyYear; +create table RefuelingCountyYear ( + countyID INTEGER NOT NULL, + yearID SMALLINT NOT NULL, + refuelingVaporProgramAdjust FLOAT NOT NULL DEFAULT 0.0, + refuelingSpillProgramAdjust FLOAT NOT NULL DEFAULT 0.0 +); +truncate table RefuelingCountyYear; + +-- Section RefuelingDisplacementVaporLoss +drop table if exists RefuelingDisplacementPollutant; +create table RefuelingDisplacementPollutant ( + pollutantID smallint(6) not null, + unique index XPKRefuelingDisplacementPollutant (pollutantID) +); +truncate table RefuelingDisplacementPollutant; +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +drop table if exists RefuelingSpillagePollutant; +create table RefuelingSpillagePollutant ( + pollutantID smallint(6) not null, + unique index XPKRefuelingSpillagePollutant (pollutantID) +); +truncate table RefuelingSpillagePollutant; +-- End Section RefuelingSpillageLoss + +drop table if exists refuelingFuelFormulation; +CREATE TABLE refuelingFuelFormulation ( + fuelFormulationID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + RVP float DEFAULT NULL, + sulfurLevel float NOT NULL DEFAULT '30', + ETOHVolume float DEFAULT NULL, + MTBEVolume float DEFAULT NULL, + ETBEVolume float DEFAULT NULL, + TAMEVolume float DEFAULT NULL, + aromaticContent float DEFAULT NULL, + olefinContent float DEFAULT NULL, + benzeneContent float DEFAULT NULL, + e200 float DEFAULT NULL, + e300 float DEFAULT NULL, + volToWtPercentOxy float DEFAULT NULL, + BioDieselEsterVolume float DEFAULT NULL, + CetaneIndex float DEFAULT NULL, + PAHContent float DEFAULT NULL, + T50 float DEFAULT NULL, + T90 float DEFAULT NULL, + PRIMARY KEY (fuelFormulationID) +); +truncate table refuelingFuelFormulation; + +drop table if exists refuelingFuelSubtype; +CREATE TABLE refuelingFuelSubtype ( + fuelSubtypeID smallint(6) NOT NULL DEFAULT '0', + fuelTypeID smallint(6) NOT NULL DEFAULT '0', + fuelSubtypeDesc char(50) DEFAULT NULL, + fuelSubtypePetroleumFraction float DEFAULT NULL, + fuelSubtypePetroleumFractionCV float DEFAULT NULL, + fuelSubtypeFossilFraction float DEFAULT NULL, + fuelSubtypeFossilFractionCV float DEFAULT NULL, + carbonContent float DEFAULT NULL, + oxidationFraction float DEFAULT NULL, + carbonContentCV float DEFAULT NULL, + oxidationFractionCV float DEFAULT NULL, + energyContent float DEFAULT NULL, + PRIMARY KEY (fuelSubtypeID), + KEY fuelTypeID (fuelTypeID,fuelSubtypeID) +); +truncate table refuelingFuelSubtype; + +drop table if exists refuelingFuelSupply; +CREATE TABLE refuelingFuelSupply ( + fuelRegionID int(11) NOT NULL DEFAULT '0', + fuelYearID int(11) NOT NULL DEFAULT '0', + monthGroupID smallint(6) NOT NULL DEFAULT '0', + fuelFormulationID smallint(6) NOT NULL DEFAULT '0', + marketShare float DEFAULT NULL, + marketShareCV float DEFAULT NULL, + PRIMARY KEY (fuelRegionID,fuelFormulationID,monthGroupID,fuelYearID), + KEY countyID (fuelRegionID), + KEY yearID (fuelYearID), + KEY monthGroupID (monthGroupID), + KEY fuelSubtypeID (fuelFormulationID) +); +truncate table refuelingFuelSupply; + +drop table if exists refuelingMonthOfAnyYear; +CREATE TABLE refuelingMonthOfAnyYear ( + monthID smallint(6) NOT NULL DEFAULT '0', + monthName char(10) DEFAULT NULL, + noOfDays smallint(6) DEFAULT NULL, + monthGroupID smallint(6) NOT NULL DEFAULT '0', + PRIMARY KEY (monthID), + KEY monthGroupID (monthGroupID), + KEY monthGroupID_2 (monthGroupID,monthID), + KEY monthID (monthID,monthGroupID) +); +truncate table refuelingMonthOfAnyYear; + +drop table if exists refuelingZoneMonthHour; +CREATE TABLE refuelingZoneMonthHour ( + monthID smallint(6) NOT NULL DEFAULT '0', + zoneID int(11) NOT NULL DEFAULT '0', + hourID smallint(6) NOT NULL DEFAULT '0', + temperature float DEFAULT NULL, + temperatureCV float DEFAULT NULL, + relHumidity float DEFAULT NULL, + heatIndex float DEFAULT NULL, + specificHumidity float DEFAULT NULL, + relativeHumidityCV float DEFAULT NULL, + PRIMARY KEY (hourID,monthID,zoneID), + KEY monthID (monthID), + KEY zoneID (zoneID), + KEY hourID (hourID) +); +truncate table refuelingZoneMonthHour; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +cache SELECT * INTO OUTFILE '##RefuelingFactors##' +FROM RefuelingFactors; + +-- @algorithm energyContent = sum(marketShare * energyContent) across all the fuel supply. +cache SELECT ft.fuelTypeID, defaultFormulationID, fuelTypeDesc, humidityCorrectionCoeff, humidityCorrectionCoeffCV, + sum(marketShare*energyContent) as energyContent, fuelDensity, rsm.monthID +INTO OUTFILE '##RefuelingFuelType##' +FROM FuelType ft +inner join fuelSubtype fst on (fst.fuelTypeID=ft.fuelTypeID) +inner join fuelFormulation ff on (ff.fuelSubtypeID=fst.fuelSubtypeID) +inner join fuelSupply fs on ( + fs.fuelRegionID=##context.fuelRegionID## + and fs.fuelFormulationID=ff.fuelFormulationID) +inner join year y on ( + y.yearID=##context.year## + and y.fuelYearID=fs.fuelYearID) +inner join monthOfAnyYear m on (m.monthGroupID=fs.monthGroupID) +inner join runspecMonth rsm on (rsm.monthID=m.monthID) +WHERE energyContent is not null +AND energyContent > 0 +AND fuelDensity is not null +AND fuelDensity > 0 +group by ft.fuelTypeID, rsm.monthID; + +cache SELECT + processID, sourceTypeID, + MYRMAP(modelYearID) as modelYearID, + refuelingTechAdjustment +INTO OUTFILE '##SourceTypeTechAdjustment##' +FROM SourceTypeTechAdjustment +WHERE processID IN (##refuelingProcessIDs##) +AND modelYearID <= MYMAP(##context.year##) +AND modelYearID >= MYMAP(##context.year## - 30); + +cache SELECT * INTO OUTFILE '##RefuelingRunSpecHour##' +FROM RunSpecHour; + +cache SELECT * INTO OUTFILE '##RefuelingRunSpecMonth##' +FROM RunSpecMonth; + +cache SELECT * INTO OUTFILE '##RefuelingCountyYear##' +FROM CountyYear +WHERE countyID=##context.iterLocation.countyRecordID## +AND yearID=##context.year##; + +-- Section RefuelingDisplacementVaporLoss +cache SELECT pollutantID INTO OUTFILE '##RefuelingDisplacementPollutant##' +FROM Pollutant +WHERE pollutantID in (##refuelingDisplacement.pollutantIDs##); +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +cache SELECT pollutantID INTO OUTFILE '##RefuelingSpillagePollutant##' +FROM Pollutant +WHERE pollutantID in (##refuelingSpillage.pollutantIDs##); +-- End Section RefuelingSpillageLoss + +cache SELECT ff.* INTO OUTFILE '##RefuelingFuelFormulation##' +FROM FuelFormulation ff +INNER JOIN FuelSupply fs ON fs.fuelFormulationID = ff.fuelFormulationID +INNER JOIN Year y ON y.fuelYearID = fs.fuelYearID +INNER JOIN RunSpecMonthGroup rsmg ON rsmg.monthGroupID = fs.monthGroupID +WHERE fuelRegionID = ##context.fuelRegionID## AND +yearID = ##context.year## +GROUP BY ff.FuelFormulationID ORDER BY NULL; + +cache SELECT * INTO OUTFILE '##RefuelingFuelSubtype##' +FROM FuelSubtype; + +cache SELECT FuelSupply.* INTO OUTFILE '##RefuelingFuelSupply##' +FROM FuelSupply +INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID) +INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID) +WHERE fuelRegionID = ##context.fuelRegionID## +AND yearID = ##context.year##; + +cache SELECT MonthOfAnyYear.* +INTO OUTFILE '##RefuelingMonthOfAnyYear##' +FROM MonthOfAnyYear; + +cache SELECT ZoneMonthHour.* +INTO OUTFILE '##RefuelingZoneMonthHour##' +FROM RunSpecMonth +INNER JOIN RunSpecHour +INNER JOIN ZoneMonthHour ON (ZoneMonthHour.monthID = RunSpecMonth.monthID AND ZoneMonthHour.hourID = RunSpecHour.hourID) +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +-- End Section Extract Data + +-- Section Local Data Removal +--TRUNCATE XXXXXX; +-- Section RefuelingDisplacementVaporLoss +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +-- End Section RefuelingSpillageLoss +-- End Section Local Data Removal + +-- Section Processing + +-- Section RefuelingDisplacementVaporLoss +-- -------------------------------------------------------------- +-- REFEC-1: Determine the refueling temperatures +-- -------------------------------------------------------------- + +-- @algorithm Determine the refueling temperatures +drop table if exists RefuelingTemp; + +create table RefuelingTemp ( + monthID smallint(6) not null, + hourID smallint(6) not null, + fuelTypeID smallint(6) not null, + + refuelingTemperature float not null default 0.0, + tankTemperatureDif float not null default 0.0, + displacedVaporRate float not null default 0.0, + + key(monthID), + key(hourID), + key(fuelTypeID), + unique index XPKRefuelingTemp (monthID,hourID,fuelTypeID) +); + +-- @algorithm refuelingTemperature = temperature subject to lower bound of vaporLowLimit and upper bound of vaporHighLimit. +insert into RefuelingTemp (monthID, hourID, fuelTypeID, refuelingTemperature) +select monthID, hourID, fuelTypeID, + case + when temperature <= vaporLowTLimit then vaporLowTLimit + when temperature >= vaporHighTLimit then vaporHighTLimit + else temperature + end as refuelingTemperature +from RefuelingZoneMonthHour, RefuelingFactors; + +analyze table RefuelingTemp; + +-- @algorithm tankTemperatureDif = ((vaporTermE*refuelingTemperature) + vaporTermF) subject to lower bound of 0 and upper bound of tankDiffLimit. +update RefuelingTemp, RefuelingFactors +set RefuelingTemp.tankTemperatureDif = + case + when ((vaporTermE*refuelingTemperature) + vaporTermF) >= tankTDiffLimit then tankTDiffLimit + when ((vaporTermE*refuelingTemperature) + vaporTermF) <= 0.0 then 0.0 + else ((vaporTermE*refuelingTemperature) + vaporTermF) + end +where RefuelingFactors.fuelTypeID=RefuelingTemp.fuelTypeID; + +-- -------------------------------------------------------------- +-- REFEC-2: Determine the unadjusted refueling displacement vapor loss rate +-- -------------------------------------------------------------- + +-- @algorithm Determine the unadjusted refueling displacement vapor loss rate +drop table if exists RefuelingAverageRVP; + +create table RefuelingAverageRVP ( + monthID smallint(6) not null, + fuelTypeID smallint(6) not null, + averageRVP float not null, + key(monthID), + key(fuelTypeID), + unique index XPKRefuelingAverageRVP (monthID, fuelTypeID) +); + +-- @algorithm averageRVP = sum(RVP * marketShare) across fuel formulations. +insert into RefuelingAverageRVP (monthID, fuelTypeID, averageRVP) +select monthID, fuelTypeID, coalesce(sum(rvp*marketShare),0.0) as averageRVP +from RefuelingFuelSupply +inner join RefuelingFuelFormulation on RefuelingFuelFormulation.fuelFormulationID=RefuelingFuelSupply.fuelFormulationID +inner join RefuelingMonthOfAnyYear on RefuelingMonthOfAnyYear.monthGroupID=RefuelingFuelSupply.monthGroupID +inner join RefuelingFuelSubtype on RefuelingFuelSubtype.fuelSubtypeID=RefuelingFuelFormulation.fuelSubtypeID +group by monthID, fuelTypeID; + +analyze table RefuelingAverageRVP; + +-- @algorithm Provide default averageRVP of 0. +insert ignore into RefuelingAverageRVP (monthID, fuelTypeID, averageRVP) +select monthID, fuelTypeID, 0.0 as averageRVP +from RefuelingFactors, RefuelingMonthOfAnyYear; + +analyze table RefuelingAverageRVP; + +-- @algorithm displacedVaporRate = exp(vaporTermA + vaporTermB * tankTemperatureDif + vaporTermC * refuelingTemperature + vaporTermD * averageRVP) +update RefuelingTemp, RefuelingFactors, RefuelingAverageRVP +set displacedVaporRate = exp(vaporTermA + + vaporTermB * tankTemperatureDif + + vaporTermC * refuelingTemperature + + vaporTermD * averageRVP) +where RefuelingFactors.fuelTypeID=RefuelingTemp.fuelTypeID +and RefuelingAverageRVP.fuelTypeID=RefuelingTemp.fuelTypeID +and RefuelingAverageRVP.monthID=RefuelingTemp.monthID; + +-- @algorithm Limit displacedVaporRate to no less than minimumRefuelingVaporLoss. +update RefuelingTemp, RefuelingFactors +set displacedVaporRate = case when minimumRefuelingVaporLoss <= -1 then 0 else minimumRefuelingVaporLoss end +where RefuelingFactors.fuelTypeID=RefuelingTemp.fuelTypeID +and (displacedVaporRate < minimumRefuelingVaporLoss or minimumRefuelingVaporLoss <= -1); + +-- -------------------------------------------------------------- +-- REFEC-3: Technology adjustment of the refueling displacement vapor loss rate +-- REFEC-4: Program adjustment of the refueling displacement vapor loss rate +-- -------------------------------------------------------------- +drop table if exists RefuelingDisplacement; +create table RefuelingDisplacement ( + fuelTypeID smallint(6) not null, + sourceTypeID smallint(6) not null, + modelYearID smallint(6) not null, + monthID smallint(6) not null, + hourID smallint(6) not null, + + adjustedVaporRate float not null default 0.0, + + key(fuelTypeID), + key(sourceTypeID), + key(modelYearID), + key(monthID), + key(hourID), + unique index XPKRefuelingDisplacement (fuelTypeID, sourceTypeID, modelYearID, monthID, hourID) +); + +-- @algorithm Technology and Program adjustment of the refueling displacement vapor loss rate. +-- adjustedVaporRate = (1.0-refuelingVaporProgramAdjust)*((1.0-refuelingTechAdjustment)*displacedVaporRate). +-- @condition Refueling Displacement Vapor Loss (18). +insert into RefuelingDisplacement (fuelTypeID, sourceTypeID, modelYearID, monthID, hourID, adjustedVaporRate) +select fuelTypeID, sourceTypeID, modelYearID, monthID, hourID, + (1.0-refuelingVaporProgramAdjust)*((1.0-refuelingTechAdjustment)*displacedVaporRate) as adjustedVaporRate +from RefuelingCountyYear, SourceTypeTechAdjustment, RefuelingTemp +where SourceTypeTechAdjustment.processID=18; + +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +-- -------------------------------------------------------------- +-- REFEC-5: Technology adjustment of the refueling spillage rate +-- REFEC-6: Program adjustment of the refueling spillage rate +-- -------------------------------------------------------------- +drop table if exists RefuelingSpillage; +create table RefuelingSpillage ( + fuelTypeID smallint(6) not null, + sourceTypeID smallint(6) not null, + modelYearID smallint(6) not null, + + adjustedSpillRate float not null default 0.0, + + key(fuelTypeID), + key(sourceTypeID), + key(modelYearID), + unique index XPKRefuelingSpillage (fuelTypeID, sourceTypeID, modelYearID) +); + +-- @algorithm Technology and Program adjustment of the refueling spillage rate. +-- adjustedSpillRate = (1.0-refuelingSpillProgramAdjust)*((1.0-refuelingTechAdjustment)*refuelingSpillRate). +-- @condition Refueling Spillage Loss (19). +insert into RefuelingSpillage (fuelTypeID, sourceTypeID, modelYearID, adjustedSpillRate) +select fuelTypeID, sourceTypeID, modelYearID, + (1.0-refuelingSpillProgramAdjust)*((1.0-refuelingTechAdjustment)*refuelingSpillRate) as adjustedSpillRate +from RefuelingCountyYear, SourceTypeTechAdjustment, RefuelingFactors +where SourceTypeTechAdjustment.processID=19; + +-- End Section RefuelingSpillageLoss + +-- -------------------------------------------------------------- +-- REFEC-7: Calculate total fuel consumption from Total Energy +-- REFEC-8: Refueling loss emission results +-- -------------------------------------------------------------- +drop table if exists RefuelingWorkerOutputTemp; +create table RefuelingWorkerOutputTemp ( + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL +); + +-- Section RefuelingDisplacementVaporLoss +truncate RefuelingWorkerOutputTemp; + +-- @algorithm emissions = (adjustedVaporRate * Total Energy Consumption (91)) / (energyContent * fuelDensity). +-- @condition Refueling Displacement Vapor Loss (18). +insert into RefuelingWorkerOutputTemp ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +) +select + mwo.yearID, mwo.monthID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, mwo.linkID, 0 as pollutantID, 18 as processID, + mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, mwo.roadTypeID, + null as SCC, + (adjustedVaporRate * mwo.emissionQuant / (energyContent * fuelDensity)) as emissionQuant, + (adjustedVaporRate * mwo.emissionRate / (energyContent * fuelDensity)) as emissionRate +from MOVESWorkerOutput mwo +inner join RefuelingFuelType rft on (rft.fuelTypeID=mwo.fuelTypeID and rft.monthID=mwo.monthID) +inner join RefuelingDisplacement rd on ( + rd.fuelTypeID=rft.fuelTypeID and rd.sourceTypeID=mwo.sourceTypeID and rd.modelYearID=mwo.modelYearID + and rd.monthID=mwo.monthID and rd.hourID=mwo.hourID) +where mwo.processID in (1,2,90,91) +and mwo.pollutantID=91; + +insert into MOVESWorkerOutput ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +) +select + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, rdp.pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +from RefuelingWorkerOutputTemp, RefuelingDisplacementPollutant rdp; +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +truncate RefuelingWorkerOutputTemp; + +-- @algorithm emissions = (adjustedSpillRate * Total Energy Consumption (91)) / (energyContent * fuelDensity). +-- @condition Refueling Spillage Loss (19). +insert into RefuelingWorkerOutputTemp ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +) +select + mwo.yearID, mwo.monthID, mwo.dayID, mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, mwo.linkID, 0 as pollutantID, 19 as processID, + mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, mwo.roadTypeID, + null as SCC, + (adjustedSpillRate * mwo.emissionQuant / (energyContent * fuelDensity)) as emissionQuant, + (adjustedSpillRate * mwo.emissionRate / (energyContent * fuelDensity)) as emissionRate +from MOVESWorkerOutput mwo +inner join RefuelingFuelType rft on (rft.fuelTypeID=mwo.fuelTypeID and rft.monthID=mwo.monthID) +inner join RefuelingSpillage rs on ( + rs.fuelTypeID=rft.fuelTypeID and rs.sourceTypeID=mwo.sourceTypeID and rs.modelYearID=mwo.modelYearID) +where mwo.processID in (1,2,90,91) +and mwo.pollutantID=91; + +insert into MOVESWorkerOutput ( + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +) +select + yearID, monthID, dayID, hourID, stateID, countyID, zoneID, linkID, rsp.pollutantID, processID, + sourceTypeID, regClassID, fuelTypeID, modelYearID, roadTypeID, SCC, emissionQuant, emissionRate +from RefuelingWorkerOutputTemp, RefuelingSpillagePollutant rsp; +-- End Section RefuelingSpillageLoss + +-- End Section Processing + +-- Section Cleanup +drop table if exists RefuelingRunSpecHour; +drop table if exists RefuelingRunSpecMonth; +drop table if exists RefuelingCountyYear; +drop table if exists RefuelingFuelType; + +-- Section RefuelingDisplacementVaporLoss +drop table if exists RefuelingTemp; +drop table if exists RefuelingAverageRVP; +drop table if exists RefuelingDisplacement; +drop table if exists RefuelingDisplacementPollutant; +-- End Section RefuelingDisplacementVaporLoss + +-- Section RefuelingSpillageLoss +drop table if exists RefuelingSpillage; +drop table if exists RefuelingSpillagePollutant; +-- End Section RefuelingSpillageLoss + +drop table if exists RefuelingWorkerOutputTemp; +-- End Section Cleanup diff --git a/database/RoadTypeDistributionImporter.sql b/database/RoadTypeDistributionImporter.sql new file mode 100644 index 0000000..377e7ed --- /dev/null +++ b/database/RoadTypeDistributionImporter.sql @@ -0,0 +1,16 @@ +-- Version 2008-10-28 + +-- Ensure distributions sum to 1.0 for all sourceTypeID combinations. +drop table if exists tempNotUnity; + +create table tempNotUnity +select sourceTypeID, sum(roadTypeVMTFraction) as sumRoadTypeVMTFraction +from roadTypeDistribution +group by sourceTypeID +having round(sum(roadTypeVMTFraction),4) <> 1.0000; + +insert into importTempMessages (message) +select concat('ERROR: Source ',sourceTypeID,' roadTypeVMTFraction sum is not 1.0 but instead ',round(sumRoadTypeVMTFraction,4)) +from tempNotUnity; + +drop table if exists tempNotUnity; diff --git a/database/SO2Calculator.sql b/database/SO2Calculator.sql new file mode 100644 index 0000000..4aca8ae --- /dev/null +++ b/database/SO2Calculator.sql @@ -0,0 +1,312 @@ +-- Version 2014-05-31 + +-- @algorithm +-- @owner SO2 Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +drop table if exists so2RunSpecModelYear; +create table if not exists so2RunSpecModelYear ( + modelYearID smallint not null primary key +); +truncate so2RunSpecModelYear; + +drop table if exists so2PMOneCountyYearGeneralFuelRatio; +create table if not exists so2PMOneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate so2PMOneCountyYearGeneralFuelRatio; + +DROP TABLE IF EXISTS SO2CopyOfMonthOfAnyYear; +CREATE TABLE SO2CopyOfMonthOfAnyYear ( + monthID smallint(6), + monthGroupID smallint(6) +); + +DROP TABLE IF EXISTS SO2CopyOfPPA; +CREATE TABLE SO2CopyOfPPA ( + polProcessID int, + processID SMALLINT(6), + pollutantID SMALLINT(6) +); + +DROP TABLE IF EXISTS SO2CopyOfYear; +CREATE TABLE SO2CopyOfYear ( + yearID SMALLINT(6), + isBaseYear CHAR(1), + fuelYearID SMALLINT(6) +); + +DROP TABLE IF EXISTS SO2CopyOfFuelFormulation; +CREATE TABLE SO2CopyOfFuelFormulation ( + fuelFormulationID SMALLINT(6), + fuelSubtypeID SMALLINT(6), + sulfurLevel FLOAT, + primary key (fuelFormulationID), + key (fuelFormulationID, fuelSubtypeID), + key (fuelSubtypeID, fuelFormulationID) +); + +DROP TABLE IF EXISTS SO2CopyOfFuelSupply; +CREATE TABLE SO2CopyOfFuelSupply ( + fuelRegionID int(11), + fuelYearID smallint(6), + monthGroupID smallint(6), + fuelFormulationID smallint(6), + marketShare float, + marketShareCV float +); + +DROP TABLE IF EXISTS SO2CopyOfFuelType; +CREATE TABLE SO2CopyOfFuelType ( + fuelTypeID SMALLINT(6), + primary key (fuelTypeID) +); + +DROP TABLE IF EXISTS SO2CopyOfFuelSubType; +CREATE TABLE SO2CopyOfFuelSubType ( + fuelSubTypeID SMALLINT(6), + fuelTypeID SMALLINT(6), + energyContent FLOAT, + primary key (fuelSubTypeID), + key (fuelTypeID, fuelSubTypeID), + key (fuelSubTypeID, fuelTypeID) +); + +DROP TABLE IF EXISTS CopyOfSO2EmissionRate; +CREATE TABLE CopyOfSO2EmissionRate ( + polProcessID int, + fuelTypeID smallint(6), + modelYearGroupID int(11), + meanBaseRate float, + meanBaseRateCV float, + dataSourceId smallint(6) +); + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache select * + into outfile '##so2RunSpecModelYear##' +from RunSpecModelYear; + +cache select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##so2PMOneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.pollutantID = 31 + and gfr.processID = ##context.iterProcess.databaseKey## + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID; + +cache SELECT MonthOfAnyYear.monthID, + MonthOfAnyYear.monthGroupID +INTO OUTFILE '##SO2CopyOfMonthOfAnyYear##' +FROM MonthOfAnyYear INNER JOIN runspecmonth +ON MonthOfAnyYear.monthID = runspecmonth.monthID; + +cache SELECT yearID, isBaseYear, fuelYearID INTO OUTFILE '##SO2CopyOfYear##' FROM Year WHERE YearID = ##context.year##; + +cache SELECT fuelFormulationID, + fuelSubTypeID, + sulfurLevel +INTO OUTFILE '##SO2CopyOfFuelFormulation##' +FROM FuelFormulation; + +cache SELECT FuelSupply.* INTO OUTFILE '##SO2CopyOfFuelSupply##' + FROM FuelSupply + INNER JOIN Year ON FuelSupply.fuelYearID = Year.fuelYearID + AND Year.yearID = ##context.year## + WHERE fuelRegionID = ##context.fuelRegionID##; + +cache SELECT fuelTypeID INTO OUTFILE '##SO2CopyOfFuelType##' + FROM FuelType; + +cache SELECT fuelSubTypeID, fuelTypeID, energyContent INTO OUTFILE '##SO2CopyOfFuelSubType##' + FROM FuelSubType; + +cache SELECT * INTO OUTFILE '##CopyOfSO2EmissionRate##' FROM SulfateEmissionRate + WHERE polProcessID IN (3101, 3102, 3190, 3191); + +cache SELECT polProcessID,processID,pollutantID +INTO OUTFILE '##SO2CopyOfPPA##' FROM pollutantprocessassoc +WHERE processID=##context.iterProcess.databaseKey## +AND pollutantID=31; + +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing + +DROP TABLE IF EXISTS SO2FuelCalculation1; +CREATE TABLE SO2FuelCalculation1 ( + countyID INT(11), + yearID SMALLINT(6), + monthGroupID SMALLINT(6), + fuelTypeID SMALLINT(6), + energyContent FLOAT, + WsulfurLevel FLOAT +); + +-- @algorithm energyContent = sum(marketShare * energyContent) across the fuel supply. +-- WsulfurLevel = sum(marketShare * sulfurLevel) across the fuel supply. +INSERT INTO SO2FuelCalculation1 ( + countyID, + yearID, + monthGroupID, + fuelTypeID, + energyContent, + WsulfurLevel ) +SELECT + ##context.iterLocation.countyRecordID## as countyID, + y.yearID, + fs.monthGroupID, + ft.fuelTypeID, + sum(fs.marketShare * fst.energyContent) as energyContent, + sum(fs.marketShare * ff.sulfurLevel) as WsulfurLevel +FROM SO2CopyOfFuelSupply fs + INNER JOIN SO2CopyOfFuelFormulation ff ON fs.fuelFormulationID = ff.fuelFormulationID + INNER JOIN SO2CopyOfFuelSubType fst ON fst.fuelSubTypeID = ff.fuelSubTypeID + INNER JOIN SO2CopyOfFuelType ft ON fst.fuelTypeID = ft.fuelTypeID + INNER JOIN SO2CopyOfYear y ON y.fuelYearID = fs.fuelYearID +GROUP BY fs.fuelRegionID, y.yearID, fs.monthGroupID, fst.fuelTypeID; + +create index index1 on SO2FuelCalculation1 (countyID, yearID, monthGroupID, fuelTypeID); + +DROP TABLE IF EXISTS SO2FuelCalculation2; +CREATE TABLE SO2FuelCalculation2 ( + polProcessID int, + processID SMALLINT(6), + pollutantID SMALLINT(6), + fuelTypeID SMALLINT(6), + modelYearID SMALLINT(6), + meanBaseRate FLOAT +); + +alter table CopyOfSO2EmissionRate add column minModelYearID smallint null; +alter table CopyOfSO2EmissionRate add column maxModelYearID smallint null; + +update CopyOfSO2EmissionRate set + minModelYearID = floor(modelYearGroupID / 10000), + maxModelYearID = mod(modelYearGroupID, 10000); + +INSERT INTO SO2FuelCalculation2 ( + polProcessID, + processID, + pollutantID, + fuelTypeID, + modelYearID, + meanBaseRate ) +SELECT + ser.polProcessID, + ppa.processID, + ppa.pollutantID, + ser.fuelTypeID, + rsmy.modelYearID, + ser.meanBaseRate +FROM CopyOfSO2EmissionRate ser + INNER JOIN SO2CopyOfPPA ppa ON ser.polProcessID = ppa.polProcessID + INNER JOIN so2RunSpecModelYear rsmy ON ( + rsmy.modelYearID >= ser.minModelYearID + and rsmy.modelYearID <= ser.maxModelYearID + ); + +create index index1 on SO2FuelCalculation2 (processID, pollutantID, modelYearID, fuelTypeID); + +DROP TABLE IF EXISTS SO2MOVESOutputTemp1; + +-- @algorithm SO2 (31) = (meanBaseRate * WsulfurLevel * Total Energy Consumption (91)) / energyContent. +CREATE TABLE SO2MOVESOutputTemp1 +SELECT + mwo.MOVESRunID, mwo.iterationID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID, mwo.stateID, mwo.countyID, mwo.zoneID, + mwo.linkID, fc2.pollutantID, fc2.processID, + mwo.sourceTypeID, mwo.regClassID, mwo.fuelTypeID, mwo.modelYearID, + mwo.roadTypeID, mwo.SCC, + mwo.emissionQuant as energy, + mwo.emissionRate as energyRate, + fc1.WsulfurLevel, + fc1.energyContent, + fc2.meanBaseRate, + ( (fc2.meanBaseRate * fc1.WsulfurLevel * mwo.emissionQuant ) / fc1.energyContent ) as emissionQuant, + ( (fc2.meanBaseRate * fc1.WsulfurLevel * mwo.emissionRate ) / fc1.energyContent ) as emissionRate +FROM + MOVESWorkerOutput mwo, SO2fuelcalculation1 fc1, SO2fuelcalculation2 fc2, SO2copyOfMonthOfAnyYear may +WHERE + mwo.countyID = fc1.countyID AND + mwo.yearID = fc1.yearID AND + mwo.monthID = may.monthID AND + fc1.monthGroupID = may.monthGroupID AND + mwo.fuelTypeID = fc1.fuelTypeID AND + mwo.fuelTypeID = fc2.fuelTypeID AND + mwo.modelyearID = fc2.modelyearID AND + mwo.pollutantID = 91 AND + mwo.processID = ##context.iterProcess.databaseKey##; + +-- @algorithm Apply general fuel effects. +-- emissionQuant = emissionQuant * fuelEffectRatio. +update SO2MOVESOutputTemp1, so2PMOneCountyYearGeneralFuelRatio set + emissionQuant=emissionQuant*fuelEffectRatio, + emissionRate =emissionRate *fuelEffectRatio +where so2PMOneCountyYearGeneralFuelRatio.fuelTypeID = SO2MOVESOutputTemp1.fuelTypeID +and so2PMOneCountyYearGeneralFuelRatio.sourceTypeID = SO2MOVESOutputTemp1.sourceTypeID +and so2PMOneCountyYearGeneralFuelRatio.monthID = SO2MOVESOutputTemp1.monthID +and so2PMOneCountyYearGeneralFuelRatio.pollutantID = SO2MOVESOutputTemp1.pollutantID +and so2PMOneCountyYearGeneralFuelRatio.processID = SO2MOVESOutputTemp1.processID +and so2PMOneCountyYearGeneralFuelRatio.modelYearID = SO2MOVESOutputTemp1.modelYearID +and so2PMOneCountyYearGeneralFuelRatio.yearID = SO2MOVESOutputTemp1.yearID; + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate) +SELECT + MOVESRunID,iterationID, yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant,emissionRate +FROM SO2MOVESOutputTemp1; + +-- End Section Processing + +-- Section Cleanup + +DROP TABLE IF EXISTS SO2MOVESOutputTemp1; +DROP TABLE IF EXISTS SO2FuelCalculation1; +DROP TABLE IF EXISTS SO2FuelCalculation2; +DROP TABLE IF EXISTS SO2CopyOfMonthOfAnyYear; +DROP TABLE IF EXISTS SO2CopyOfPPA; +DROP TABLE IF EXISTS SO2CopyOfYear; +DROP TABLE IF EXISTS SO2CopyOfFuelFormulation; +DROP TABLE IF EXISTS SO2CopyOfFuelSupply; +DROP TABLE IF EXISTS SO2CopyOfFuelType; +DROP TABLE IF EXISTS SO2CopyOfFuelSubType; +DROP TABLE IF EXISTS CopyOfSO2EmissionRate; +DROP TABLE IF EXISTS so2RunSpecModelYear; + +-- End Section Cleanup diff --git a/database/Setup/CreateMOVESUser.sql b/database/Setup/CreateMOVESUser.sql new file mode 100644 index 0000000..8ef7d39 --- /dev/null +++ b/database/Setup/CreateMOVESUser.sql @@ -0,0 +1,9 @@ +FLUSH TABLES; +DROP USER 'moves'@'localhost'; +DROP USER 'moves'@'127.0.0.1'; +CREATE USER 'moves'@'localhost' IDENTIFIED BY 'moves'; +CREATE USER 'moves'@'127.0.0.1' IDENTIFIED BY 'moves'; +GRANT ALTER, ALTER ROUTINE, CREATE, CREATE TABLESPACE, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, DELETE, DROP, EVENT, EXECUTE, FILE, GRANT OPTION, INDEX, INSERT, LOCK TABLES, PROCESS, REFERENCES, RELOAD, SELECT, SHOW DATABASES, SHOW VIEW, SHUTDOWN, TRIGGER, UPDATE ON *.* TO 'moves'@'localhost'; +GRANT ALTER, ALTER ROUTINE, CREATE, CREATE TABLESPACE, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, DELETE, DROP, EVENT, EXECUTE, FILE, GRANT OPTION, INDEX, INSERT, LOCK TABLES, PROCESS, REFERENCES, RELOAD, SELECT, SHOW DATABASES, SHOW VIEW, SHUTDOWN, TRIGGER, UPDATE ON *.* TO 'moves'@'127.0.0.1'; +FLUSH PRIVILEGES; +FLUSH TABLES; diff --git a/database/Setup/SetupDatabase.bat b/database/Setup/SetupDatabase.bat new file mode 100644 index 0000000..75d7679 --- /dev/null +++ b/database/Setup/SetupDatabase.bat @@ -0,0 +1,2 @@ +mysql -uroot -pmoves --force < CreateMOVESUser.sql +mysql -uroot -pmoves < movesdb20181022.sql diff --git a/database/Setup/movesdb20181022.zip b/database/Setup/movesdb20181022.zip new file mode 100644 index 0000000..fbbac80 Binary files /dev/null and b/database/Setup/movesdb20181022.zip differ diff --git a/database/SourceTypePopulationImporter.sql b/database/SourceTypePopulationImporter.sql new file mode 100644 index 0000000..77d28cc --- /dev/null +++ b/database/SourceTypePopulationImporter.sql @@ -0,0 +1,64 @@ +-- Author Wesley Faler +-- Version 2013-11-20 + +-- Mark any years in SourceTypeYear as base years in the Year table + +drop table if exists tempNewYear; + +create table if not exists tempNewYear ( + yearID smallint(6) not null default '0', + primary key (yearID) +); + +insert into tempNewYear (yearID) +select distinct yearID +from SourceTypeYear; + +-- Add 0 population entries for source types not imported +insert ignore into SourceTypeYear (yearID, sourceTypeID, salesGrowthFactor, sourceTypePopulation, migrationRate) +select yearID, sourceTypeID, 0, 0, 0 +from tempNewYear, +##defaultDatabase##.sourceUseType; + +drop table if exists tempYear; + +create table if not exists tempYear ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +create table if not exists year ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +insert into tempYear (yearID, isBaseYear, fuelYearID) +select y.yearID, 'Y' as isBaseYear, y.fuelYearID +from tempNewYear ny +inner join ##defaultDatabase##.year y on (y.yearID=ny.yearID); + +-- insert ignore into year (yearID, isBaseYear, fuelYearID) +-- select yearID, isBaseYear, fuelYearID +-- from tempYear + +update year, tempNewYear set year.isBaseYear='Y' +where year.yearID=tempNewYear.yearID; + +drop table if exists tempYear; +drop table if exists tempNewYear; + +-- Set salesGrowthFactor and migrationRate to 0 instead of NULL +update SourceTypeYear set salesGrowthFactor=0 where salesGrowthFactor is null; +update SourceTypeYear set migrationRate=0 where migrationRate is null; + +-- Complain about any years outside of MOVES's range +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' is outside the range of 1990-2050 and cannot be used') as errorMessage +from SourceTypeYear +where yearID < 1990 or yearID > 2050; diff --git a/database/StartsImporter.sql b/database/StartsImporter.sql new file mode 100644 index 0000000..a65d30f --- /dev/null +++ b/database/StartsImporter.sql @@ -0,0 +1,71 @@ +-- Author Wesley Faler +-- Version 2013-11-25 + +drop procedure if exists spCheckStartsImporter; + +BeginBlock +create procedure spCheckStartsImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure, allowing data from the default database + -- Mode 2 is run to check overall success/failure, requiring no data from the default database + declare mode int default ##mode##; + + -- Scale 0 is national + -- Scale 1 is single county + -- Scale 2 is project domain + declare scale int default ##scale##; + + declare howMany int default 0; + + -- startsHourFraction + set howMany=0; + select count(*) into howMany from startsHourFraction; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,', day ',dayID,' allocation fraction is not 1.0 but instead ',round(sum(allocationFraction),4)) + from startsHourFraction + group by zoneID, dayID + having round(sum(allocationFraction),4) <> 1.0000; + end if; + + -- startsSourceTypeFraction + set howMany=0; + select count(*) into howMany from startsSourceTypeFraction; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + insert into importTempMessages (message) + select concat('ERROR: startsSourceTypeFraction total allocation fraction is not 1.0 but instead ',round(sum(allocationFraction),4)) + from startsSourceTypeFraction + having round(sum(allocationFraction),4) <> 1.0000; + end if; + + -- startsPerDay + -- Nothing to check that is not already checked by the importer core logic + + -- startsMonthAdjust + -- Nothing to check that is not already checked by the importer core logic + + -- importStartsOpModeDistribution + set howMany=0; + select count(*) into howMany from importStartsOpModeDistribution; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + insert into importTempMessages (message) + select concat('ERROR: Source type ',sourceTypeID,', hourDayID ',hourDayID,', link ',linkID,', polProcessID ',polProcessID,' opmodeFraction is not 1.0 but instead ',round(sum(opModeFraction),4)) + from importStartsOpModeDistribution + group by sourceTypeID, hourDayID, linkID, polProcessID + having round(sum(opModeFraction),4) <> 1.0000; + end if; + + -- Complain about non-start pol/process entries in importStartsOpModeDistribution + insert into importTempMessages (message) + select distinct concat('ERROR: polProcessID ',polProcessID,' is not a Start Exhaust entry') + from importStartsOpModeDistribution + where mod(polProcessID,10)<>2; +end +EndBlock + +call spCheckStartsImporter(); +drop procedure if exists spCheckStartsImporter; diff --git a/database/SulfatePMCalculator.sql b/database/SulfatePMCalculator.sql new file mode 100644 index 0000000..a0e3e41 --- /dev/null +++ b/database/SulfatePMCalculator.sql @@ -0,0 +1,444 @@ +-- PM2.5 speciation calculator +-- Author Wesley Faler +-- Version 2014-07-15 + +-- @algorithm +-- @owner Sulfate PM Calculator +-- @calculator + +-- Section Create Remote Tables for Extracted Data + +drop table if exists crankcaseSplit; +create table if not exists crankcaseSplit ( + processID smallint not null, + pollutantID smallint not null, + sourceTypeID smallint not null, + fuelTypeID smallint not null, + minModelYearID smallint not null, + maxModelYearID smallint not null, + crankcaseRatio double not null, + primary key (pollutantID, sourceTypeID, fuelTypeID, minModelYearID, maxModelYearID, processID) +); +truncate table crankcaseSplit; + +drop table if exists sPMOneCountyYearGeneralFuelRatio; +create table if not exists sPMOneCountyYearGeneralFuelRatio ( + fuelTypeID int not null, + sourceTypeID int not null, + monthID int not null, + pollutantID int not null, + processID int not null, + modelYearID int not null, + yearID int not null, + fuelEffectRatio double not null default '0', + primary key (fuelTypeID, sourceTypeID, monthID, pollutantID, modelYearID, yearID) +); +truncate table sPMOneCountyYearGeneralFuelRatio; + +drop table if exists oneCountyYearSulfateFractions; +create table if not exists oneCountyYearSulfateFractions ( + processID smallint not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + monthID smallint not null, + modelYearID smallint not null, + SulfateNonECPMFraction double not null default '0', + H2ONonECPMFraction double not null default '0', + UnadjustedSulfatenonECPMFraction double not null default '0', + UnadjustedH2ONonECPMFraction double not null default '0', + primary key (processID, fuelTypeID, sourceTypeID, monthID, modelYearID) +); +truncate table oneCountyYearSulfateFractions; + +drop table if exists oneZoneYearTemperatureFactor; +create table if not exists oneZoneYearTemperatureFactor ( + zoneID int not null, + monthID smallint not null, + hourID smallint not null, + processID smallint not null, + pollutantID smallint not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + minModelYearID smallint not null, + maxModelYearID smallint not null, + correctionFactor double not null, + primary key (zoneID, monthID, hourID, processID, pollutantID, fuelTypeID, sourceTypeID, minModelYearID, maxModelYearID) +); +truncate table oneZoneYearTemperatureFactor; + +##create.PMSpeciation##; +TRUNCATE TABLE PMSpeciation; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +-- @algorithm Get fuel effects for NonECNonSO4PM (120). +cache select gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID, + sum((ifnull(fuelEffectRatio,1)+GPAFract*(ifnull(fuelEffectRatioGPA,1)-ifnull(fuelEffectRatio,1)))*marketShare) as fuelEffectRatio + INTO OUTFILE '##sPMOneCountyYearGeneralFuelRatio##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join generalFuelRatio gfr on (gfr.fuelFormulationID = fs.fuelFormulationID + and gfr.pollutantID in (120) + and gfr.processID = ##context.iterProcess.databaseKey## + and gfr.minModelYearID <= mya.modelYearID + and gfr.maxModelYearID >= mya.modelYearID + and gfr.minAgeID <= mya.ageID + and gfr.maxAgeID >= mya.ageID + and gfr.fuelTypeID = rssf.fuelTypeID + and gfr.sourceTypeID = rssf.sourceTypeID) +group by gfr.fuelTypeID, gfr.sourceTypeID, may.monthID, gfr.pollutantID, gfr.processID, mya.modelYearID, mya.yearID +; + +-- @algorithm Calculate adjusted SulfateNonECPMFraction and H2ONonECPMFraction +-- using the sulfurLevel of available fuel formulations. Weight each adjusted fraction +-- by formulation market share. +cache select + sf.processID, + sf.fuelTypeID, + sf.sourceTypeID, + may.monthID, + mya.modelYearID, + sum(fs.marketShare * SulfatenonECPMFraction * (1 + BaseFuelSulfateFraction * ((coalesce(ff.sulfurLevel,0) / sf.BaseFuelSulfurLevel) - 1))) as SulfatenonECPMFraction, + sum(fs.marketShare * H2ONonECPMFraction * (1 + BaseFuelSulfateFraction * ((coalesce(ff.sulfurLevel,0) / sf.BaseFuelSulfurLevel) - 1))) as H2ONonECPMFraction, + SulfatenonECPMFraction as UnadjustedSulfatenonECPMFraction, + H2ONonECPMFraction as UnadjustedH2ONonECPMFraction + INTO OUTFILE '##oneCountyYearSulfateFractions##' +from RunSpecMonthGroup rsmg +inner join RunSpecModelYearAge mya on (mya.yearID = ##context.year##) +inner join County c on (c.countyID = ##context.iterLocation.countyRecordID##) +inner join Year y on (y.yearID = mya.yearID) +inner join FuelSupply fs on (fs.fuelRegionID = ##context.fuelRegionID## + and fs.fuelYearID = y.fuelYearID + and fs.monthGroupID = rsmg.monthGroupID) +inner join MonthOfAnyYear may on (may.monthGroupID = fs.monthGroupID) +inner join RunSpecSourceFuelType rssf +inner join FuelFormulation ff on (ff.fuelFormulationID = fs.fuelFormulationID) +inner join FuelSubtype fst on ( + fst.fuelSubtypeID = ff.fuelSubtypeID + and fst.fuelTypeID = rssf.fuelTypeID) +inner join sulfateFractions sf on ( + sf.minModelYearID <= mya.modelYearID + and sf.maxModelYearID >= mya.modelYearID + and sf.fuelTypeID = rssf.fuelTypeID + and sf.sourceTypeID = rssf.sourceTypeID) +group by + sf.processID, + sf.fuelTypeID, + sf.sourceTypeID, + may.monthID, + mya.modelYearID +order by null; + +-- @algorithm Collect speciation data. +cache select * + into outfile '##PMSpeciation##' +from PMSpeciation +where processID in (##primaryAndCrankcaseProcessIDs##) +and (outputPollutantID*100+processID) in (##polProcessIDs##); + +-- @algorithm Create temperature effects for Sulfate (115), H2O (aersol) (119), and NonECNonSO4PM (120). +cache select zoneID, monthID, hourID, processID, pollutantID, fuelTypeID, sourceTypeID, minModelYearID, maxModelYearID, + ##context.temperatureFactorExpression## + as correctionFactor + INTO OUTFILE '##oneZoneYearTemperatureFactor##' +from zoneMonthHour zmh, temperatureFactorExpression tfe +where zmh.zoneID = ##context.iterLocation.zoneRecordID## +and tfe.minModelYearID <= ##context.year## +and tfe.maxModelYearID >= ##context.year## - 30 +and tfe.processID = ##context.iterProcess.databaseKey## +and tfe.pollutantID in (115, 119, 120); + +-- @algorithm Create crankcase split fractions for EC (112), Sulfate (115), H2O (aersol) (119), and NonECNonSO4PM (120). +-- The query must account for the lack of NonECNonSO4PM in the Pollutant table. +cache select processID, floor(r.polProcessID/100) as pollutantID, sourceTypeID, fuelTypeID, + minModelYearID, maxModelYearID, crankcaseRatio + INTO OUTFILE '##crankcaseSplit##' +from crankcaseEmissionRatio r, emissionProcess ep +where ep.processID in (##primaryAndCrankcaseProcessIDs##) +and r.polProcessID in (112*100 + ep.processID, 115*100 + ep.processID, 119*100 + ep.processID, 120*100 + ep.processID); + +-- End Section Extract Data + +-- Section Local Data Removal +-- End Section Local Data Removal + +-- Section Processing + +-- @algorithm +drop table if exists spmOutput; +create table spmOutput like MOVESWorkerOutput; + +-- @algorithm Copy unadjusted EC (112) so it can be adjusted. +insert into spmOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate +from MOVESWorkerOutput mwo +where pollutantID=112; + +-- @algorithm Remove unadjusted EC. The adjusted EC will be added later. +delete from MOVESWorkerOutput where pollutantID=112; + +-- @algorithm +drop table if exists spmSplit1; +create table spmSplit1 ( + processID smallint not null, + fuelTypeID smallint not null, + sourceTypeID smallint not null, + monthID smallint not null, + modelYearID smallint not null, + outputPollutantID smallint, + conversionFraction double not null, + primary key (processID, fuelTypeID, sourceTypeID, monthID, modelYearID, outputPollutantID) +); + +-- @algorithm Specify the split to make sulfate (115) from NonECPM (118). Sulfate = NonECPM * SulfateNonECPMFraction. +insert into spmSplit1 (processID, fuelTypeID, sourceTypeID, monthID, modelYearID, outputPollutantID, conversionFraction) +select processID, fuelTypeID, sourceTypeID, monthID, modelYearID, 115 as outputPollutantID, + SulfateNonECPMFraction as conversionFraction +from oneCountyYearSulfateFractions; + +-- @algorithm Specify the split to make H2O (aerosol) (119) from NonECPM (118). H2O = NonECPM * H2ONonECPMFraction. +insert into spmSplit1 (processID, fuelTypeID, sourceTypeID, monthID, modelYearID, outputPollutantID, conversionFraction) +select processID, fuelTypeID, sourceTypeID, monthID, modelYearID, 119 as outputPollutantID, + H2ONonECPMFraction as conversionFraction +from oneCountyYearSulfateFractions; + +-- @algorithm Specify the split to make NonECNonSO4PM (120) from NonECPM (118). NonECNonSO4PM = NonECPM * (1 - UnadjustedH2ONonECPMFraction - UnadjustedSulfateNonECPMFraction). +insert into spmSplit1 (processID, fuelTypeID, sourceTypeID, monthID, modelYearID, outputPollutantID, conversionFraction) +select processID, fuelTypeID, sourceTypeID, monthID, modelYearID, 120 as outputPollutantID, + greatest(1-UnadjustedH2ONonECPMFraction-UnadjustedSulfateNonECPMFraction,0) as conversionFraction +from oneCountyYearSulfateFractions; + +-- @algorithm Apply the splits, making Sulfate (115), H2O (aerosol) (119), and NonECNonSO4PM (120) from NonECPM (118). +insert into spmOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select mwo.MOVESRunID,mwo.iterationID, + mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + s.outputPollutantID as pollutantID,mwo.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + mwo.engTechID,mwo.sectorID,mwo.hpID, + mwo.emissionQuant*s.conversionFraction as emissionQuant, + mwo.emissionRate *s.conversionFraction as emissionRate +from MOVESWorkerOutput mwo +inner join spmSplit1 s on ( + s.processID = mwo.processID + and s.fuelTypeID = mwo.fuelTypeID + and s.sourceTypeID = mwo.sourceTypeID + and s.monthID = mwo.monthID + and s.modelYearID = mwo.modelYearID) +where pollutantID=118; + +-- @algorithm Apply fuel effects. Only NonECNonSO4PM (120) is affected. +update spmOutput, sPMOneCountyYearGeneralFuelRatio set + emissionQuant=emissionQuant*fuelEffectRatio, + emissionRate =emissionRate *fuelEffectRatio +where sPMOneCountyYearGeneralFuelRatio.fuelTypeID = spmOutput.fuelTypeID +and sPMOneCountyYearGeneralFuelRatio.sourceTypeID = spmOutput.sourceTypeID +and sPMOneCountyYearGeneralFuelRatio.monthID = spmOutput.monthID +and sPMOneCountyYearGeneralFuelRatio.pollutantID = spmOutput.pollutantID +and sPMOneCountyYearGeneralFuelRatio.processID = spmOutput.processID +and sPMOneCountyYearGeneralFuelRatio.modelYearID = spmOutput.modelYearID +and sPMOneCountyYearGeneralFuelRatio.yearID = spmOutput.yearID; + +-- @algorithm Apply temperature effects to Sulfate, H2O (aersol), and NonECNonSO4PM. +update spmOutput, oneZoneYearTemperatureFactor set + emissionQuant=emissionQuant*correctionFactor, + emissionRate =emissionRate *correctionFactor +where spmOutput.zoneID = oneZoneYearTemperatureFactor.zoneID +and spmOutput.monthID = oneZoneYearTemperatureFactor.monthID +and spmOutput.hourID = oneZoneYearTemperatureFactor.hourID +and spmOutput.processID = oneZoneYearTemperatureFactor.processID +and spmOutput.pollutantID = oneZoneYearTemperatureFactor.pollutantID +and spmOutput.fuelTypeID = oneZoneYearTemperatureFactor.fuelTypeID +and spmOutput.sourceTypeID = oneZoneYearTemperatureFactor.sourceTypeID +and spmOutput.modelYearID >= oneZoneYearTemperatureFactor.minModelYearID +and spmOutput.modelYearID <= oneZoneYearTemperatureFactor.maxModelYearID; + +-- @algorithm +drop table if exists spmOutput2; +create table spmOutput2 like spmOutput; +alter table spmOutput2 add key polproc (pollutantID, processID); +alter table spmOutput2 add key procpol (processID, pollutantID); + +-- @algorithm Split EC, Sulfate, H2O (aersol), and NonECNonSO4PM by crankcase effects. +insert into spmOutput2(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select mwo.MOVESRunID,mwo.iterationID, + mwo.yearID,mwo.monthID,mwo.dayID,mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID, + s.pollutantID as pollutantID,s.processID, + mwo.sourceTypeID,mwo.regClassID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + mwo.engTechID,mwo.sectorID,mwo.hpID, + mwo.emissionQuant*s.crankcaseRatio as emissionQuant, + mwo.emissionRate *s.crankcaseRatio as emissionRate +from spmOutput mwo +inner join crankcaseSplit s on ( + s.pollutantID = mwo.pollutantID + and s.fuelTypeID = mwo.fuelTypeID + and s.sourceTypeID = mwo.sourceTypeID + and s.minModelYearID <= mwo.modelYearID + and s.maxModelYearID >= mwo.modelYearID); + +-- Section MakePM2.5Total +-- @algorithm Sum EC, NonECNonSO4PM, Sulfate, and H2O (aerosol) to make Total PM 2.5 (110) +insert into MOVESWorkerOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + 110 as pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + sum(emissionQuant), + sum(emissionRate) +from spmOutput2 +where pollutantID in (112,120,115,119) +and processID in (##primaryAndCrankcaseProcessIDsForPM25Total##) +group by + processID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID; +-- End Section MakePM2.5Total + +-- @algorithm Copy EC, Sulfate, H2O to the output. +insert into MOVESWorkerOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate +from spmOutput2 +where pollutantID in (112,115,119); + +-- Note: To get NonECNonSO4PM in the output for debugging purposes, add 120 to the +-- list of pollutantIDs above. + +-- @algorithm Remove unadjusted NonECPM (118). +delete from MOVESWorkerOutput where pollutantID=118 and processID in (##primaryAndCrankcaseProcessIDs##); + +-- @algorithm Sum the adjusted NonECNonSO4PM, Sulfate, and H2O (aerosol) to make the adjusted NonECPM (118). +insert into MOVESWorkerOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + 118 as pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + sum(emissionQuant), + sum(emissionRate) +from spmOutput2 +where pollutantID in (120,115,119) +and processID in (##primaryAndCrankcaseProcessIDs##) +group by + processID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID; + +-- @algorithm Speciate the remaining pollutants. species output = pmSpeciationFraction * species input +insert into MOVESWorkerOutput(MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select spm.MOVESRunID,spm.iterationID, + spm.yearID,spm.monthID,spm.dayID,spm.hourID, + spm.stateID,spm.countyID,spm.zoneID,spm.linkID, + ps.outputPollutantID as pollutantID, spm.processID, + spm.sourceTypeID,spm.regClassID,spm.fuelTypeID,spm.modelYearID, + spm.roadTypeID,spm.SCC, + spm.engTechID,spm.sectorID,spm.hpID, + spm.emissionQuant * ps.pmSpeciationFraction as emissionQuant, + spm.emissionRate * ps.pmSpeciationFraction as emissionRate +from spmOutput2 spm +inner join PMSpeciation ps on ( + ps.processID = spm.processID + and ps.inputPollutantID = spm.pollutantID + and ps.sourceTypeID = spm.sourceTypeID + and ps.fuelTypeID = spm.fuelTypeID + and ps.minModelYearID <= spm.modelYearID + and ps.maxModelYearID >= spm.modelYearID +); + +-- End Section Processing + +-- Section Cleanup + +drop table if exists crankcaseSplit; +drop table if exists sPMOneCountyYearGeneralFuelRatio; +drop table if exists oneCountyYearSulfateFractions; +drop table if exists spmOutput; +drop table if exists spmOutput2; +drop table if exists spmSplit1; + +-- End Section Cleanup diff --git a/database/SulfurModel.sql b/database/SulfurModel.sql new file mode 100644 index 0000000..53c62a4 --- /dev/null +++ b/database/SulfurModel.sql @@ -0,0 +1,586 @@ +-- Sulfur Model +-- version 2012-05-01 +-- authors Wesely Faler, Ed Campbell + +-- subst ##sulfurInputTable## tempSulfurIR; +-- subst ##sulfurOutputTable## tempSulfurOR; + +-- This is the form of the input table, named in ##sulfurInputTable## +-- drop table if exists ##sulfurInputTable##; +-- create table if not exists ##sulfurInputTable## ( +-- fuelTypeID int not null, +-- fuelFormulationID int not null, +-- baseFuelFormulationID int not null, +-- polProcessID int not null, +-- pollutantID int not null, +-- processID int not null, +-- modelYearGroupID int not null, +-- minModelYearID int not null, +-- maxModelYearID int not null, +-- ageID int not null, +-- ratioNoSulfur double +-- ); + +-- This is the form of the output table, named in ##sulfurOutputTable## +-- drop table if exists ##sulfurOutputTable##; +-- create table if not exists ##sulfurOutputTable## ( +-- fuelTypeID int not null, +-- fuelFormulationID int not null, +-- polProcessID int not null, +-- pollutantID int not null, +-- processID int not null, +-- sourceTypeID int not null, +-- modelYearID int not null, +-- ageID int not null, +-- ratio double null, +-- ratioGPA double null, +-- ratioNoSulfur double null +-- ); + +drop table if exists tempSulfurCalcs1; +create table if not exists tempSulfurCalcs1 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfShortTarget double, + sulfShort30 double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs2; +create table if not exists tempSulfurCalcs2 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3; +create table if not exists tempSulfurCalcs3 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3High; +create table if not exists tempSulfurCalcs3High ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3Normal; +create table if not exists tempSulfurCalcs3Normal ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs4; +create table if not exists tempSulfurCalcs4 ( + fuelTypeID int, + fuelFormulationID int, + modelYearID int, + ratioNoSulfur double, + pollutantID int, + polProcessID int, + processID int, + sourceTypeID int, + ageID int, + baseFuelFormulationID int, + sulfAdj3 double, + GPAsulfAdj3 double, + sulfAdj3Normal double, + sulfAdjHigh double, + GPASulfadjNormal double, + GPASulfadjHigh double, + minSulfAdjust double, + sulfurLevel double, + lowSulfurCoeff double, + sulfurBasis double +); + +-- LEFT JOINs should be used with M6SulfurCoeff, using a default value of 1.0 for sulfurLongCoeff +-- if a record is not found. + +drop table if exists tempYear; +create table if not exists tempYear ( + year int not null primary key +); + +insert into tempYear(year) values(1960),(1961),(1962),(1963),(1964),(1965),(1966),(1967) + ,(1968),(1969),(1970),(1971),(1972),(1973),(1974),(1975),(1976),(1977) + ,(1978),(1979),(1980),(1981),(1982),(1983),(1984),(1985),(1986),(1987) + ,(1988),(1989),(1990),(1991),(1992),(1993),(1994),(1995),(1996),(1997) + ,(1998),(1999),(2000),(2001),(2002),(2003),(2004),(2005),(2006),(2007) + ,(2008),(2009),(2010),(2011),(2012),(2013),(2014),(2015),(2016),(2017) + ,(2018),(2019),(2020),(2021),(2022),(2023),(2024),(2025),(2026),(2027) + ,(2028),(2029),(2030),(2031),(2032),(2033),(2034),(2035),(2036),(2037) + ,(2038),(2039),(2040),(2041),(2042),(2043),(2044),(2045),(2046),(2047) + ,(2048),(2049),(2050) +; + +drop table if exists tempSulfurBaseLookup; +create table if not exists tempSulfurBaseLookup ( + sulfurBasis int not null, + modelYearID int not null, + sulfurGPAMax float, + sulfurBase float +); + +drop table if exists tempSulfurCoeffLookup; +create table if not exists tempSulfurCoeffLookup ( + sulfurCoeff float, + processID smallint, + pollutantID smallint, + M6EmitterID smallint, + sourceTypeID smallint, + modelYearID int not null, + sulfurFunctionName char(10), + sulfurFunctionID smallint, + lowSulfurCoeff double +); + +insert into tempSulfurBaseLookup (sulfurBasis, modelYearID, sulfurGPAMax, sulfurBase) +select distinct sulfurBasis, Year, sulfurGPAMax, sulfurBase +from tempYear +inner join sulfurBase on tempYear.year >= + CASE round(sulfurBase.modelYearGroupID / 10000,0) WHEN 0 THEN 1960 ELSE round(sulfurBase.modelYearGroupID / 10000,0) END + and tempYear.year <= mod(sulfurBase.modelYearGroupID,10000) +inner join RunSpecModelYear on RunSpecModelYear.modelYearID = tempYear.year +; + +alter table tempSulfurBaseLookup add key idxAll(sulfurBasis, modelYearID); +alter table tempSulfurBaseLookup add key idxAll2(modelYearID, sulfurBasis); + +insert into tempSulfurCoeffLookup (sulfurCoeff, processID, pollutantID, M6EmitterID, + sourceTypeID, modelYearID, sulfurFunctionName, sulfurFunctionID, lowSulfurCoeff +) +select sulfurCoeff, processID, pollutantID, sulfurModelCoeff.M6EmitterID, + sulfurModelCoeff.sourceTypeID, year, sulfurFunctionName, sulfurModelCoeff.sulfurFunctionID, sulfurModelCoeff.lowSulfurCoeff +from tempYear +inner join sulfurModelCoeff on tempYear.year >= + CASE round(sulfurModelCoeff.fuelMyGroupID / 10000,0) WHEN 0 THEN 1960 ELSE round(sulfurModelCoeff.fuelMyGroupID / 10000,0) END + and tempYear.year <= mod(sulfurModelCoeff.fuelMyGroupID,10000) +inner join RunSpecModelYear on RunSpecModelYear.modelYearID = tempYear.year +inner join sulfurModelname on sulfurModelCoeff.M6EmitterID = sulfurModelname.M6EmitterID + and sulfurModelCoeff.sulfurFunctionID = sulfurModelname.sulfurFunctionID +inner join RunSpecSourceType rsst on rsst.sourceTypeID = sulfurModelCoeff.sourceTypeID +; + +alter table tempSulfurCoeffLookup add key(processID, pollutantID, modelYearID); + +insert into tempSulfurCalcs1 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + sulfShortTarget, sulfShort30, lowSulfurCoeff +) +select + IR.fuelTypeID, IR.baseFuelFormulationID, IR.fuelFormulationID, IR.polProcessID, IR.pollutantID, IR.processID, + rsmya.modelYearID, IR.ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + CASE sulfurFunctionName WHEN 'log-log' THEN + CASE WHEN sulfurLevel > 0 THEN exp(sulfurCoeff * LN(sulfurLevel)) ELSE 0 END + ELSE + exp(sulfurCoeff * sulfurLevel) + END as sulfShortTarget, + CASE sulfurFunctionName WHEN 'log-log' THEN + exp(sulfurCoeff * LN(sulfurBasis)) + ELSE + exp(sulfurCoeff * sulfurBasis) + END as sulfShort30, + lowSulfurCoeff +from ##sulfurInputTable## IR +inner join tempSulfurCoeffLookup on + IR.processID = tempSulfurCoeffLookup.processID and IR.pollutantID = tempSulfurCoeffLookup.pollutantID +inner join fuelFormulation on IR.fuelFormulationID = fuelFormulation.fuelFormulationID +inner join tempSulfurBaseLookup on tempSulfurCoeffLookup.modelYearID = tempSulfurBaseLookup.modelYearID + and IR.minModelYearID <= tempSulfurBaseLookup.modelYearID + and IR.maxModelYearID >= tempSulfurBaseLookup.modelYearID +inner join RunSpecModelYearAge rsmya on rsmya.modelYearID = MYMAP(tempSulfurBaseLookup.modelYearID) + and rsmya.ageID = IR.ageID +; + +alter table tempSulfurCalcs1 add key(pollutantID, modelYearID, fuelTypeID); + +insert into tempSulfurCalcs2 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, lowSulfurCoeff +) +select + SC1.fuelTypeID, baseFuelFormulationID, SC1.fuelFormulationID, SC1.polProcessID, SC1.pollutantID, SC1.processID, + SC1.modelYearID, ageID, SC1.m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + CASE WHEN sulfurIRFactor is null THEN + 0 + ELSE + CASE WHEN sulfurLevel <= maxIRFactorSulfur THEN + sulfurIRFactor + ELSE + 0 + END + END as + sulfurIRFactor, + sulfShortTarget, sulfShort30, + (sulfShortTarget - sulfShort30) / sulfShort30 as SulfShortAdj, + ((sulfShortTarget - sulfShort30) / sulfShort30) * ifnull(sulfurLongCoeff,1.0) as sulfAdj2, + CASE WHEN (maxIRFactorSulfur is null or maxIRFactorSulfur <= 0) THEN -- or sulfurLevel < 30 + 0 + WHEN sulfurLevel <= maxIRFactorSulfur THEN -- was <= maxIRFactorSulfur + exp(sulfurCoeff * ln(maxIRFactorSulfur)) + ELSE + CASE WHEN sulfurLevel > 0 THEN exp(sulfurCoeff * ln(sulfurLevel)) ELSE 0 END + END as SulfIRR, + + CASE WHEN sulfurLongCoeff is null THEN + 1.0 + ELSE + sulfurLongCoeff + END as + sulfurLongCoeff, + lowSulfurCoeff +from tempSulfurCalcs1 SC1 +left join M6SulfurCoeff on + SC1.pollutantID = M6SulfurCoeff.pollutantID and + SC1.modelYearID >= M6SulfurCoeff.minModelYearID and + SC1.modelYearID <= M6SulfurCoeff.maxModelYearID +inner join sulfurCapAmount on SC1.fuelTypeID = sulfurCapAmount.fuelTypeID +; + +-- 2010A: +-- (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.85 else 0.50 end) + +-- Revised internal: +-- (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.40 else 0.40 end) + +update tempSulfurCalcs2, tempSulfurBaseLookup set minSulfAdjust= + (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.85 else 0.50 end) +where tempSulfurBaseLookup.modelYearID=tempSulfurCalcs2.modelYearID; + +insert into tempSulfurCalcs3 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +) +select + SC2.fuelTypeID, baseFuelFormulationID, SC2.fuelFormulationID, SC2.polProcessID, SC2.pollutantID, SC2.processID, + SC2.modelYearID, ageID, SC2.m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + ((sulfIRR - sulfShort30) / sulfShort30) as sulfMax, + CASE WHEN 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) <= minSulfAdjust THEN + minSulfAdjust + ELSE + 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) + END as sulfAdj3, + CASE WHEN (ModelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and ModelYearID <= ##cutoff.sulfurModelGPAPhaseInEnd## and sulfurLevel >= 0) THEN + ((case when (SC2.pollutantID=3 and SC2.m6emitterID=2) then 0.60 else 1.0 end)*exp(sulfurCoeff * ln(sulfurGPAMax))) + ELSE + 0 + END as sulfGPA1, + CASE WHEN (ModelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and ModelYearID <= ##cutoff.sulfurModelGPAPhaseInStart## and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + (exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30 + ELSE + 0 + END as ssulfGPA, + CASE WHEN (ModelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and ModelYearID <= ##cutoff.sulfurModelGPAPhaseInEnd## and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + ((exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30) + * sulfurLongCoeff + ELSE + 0 + END as sulfGPA, + CASE WHEN (ModelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and ModelYearID <= ##cutoff.sulfurModelGPAPhaseInEnd## and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + 1.0 + (sulfurIRFactor * (((exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30) + * sulfurLongCoeff) + (1.0 - sulfurIRFactor) * sulfAdj2) + ELSE + CASE WHEN 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) <= minSulfAdjust THEN + minSulfAdjust + ELSE + 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) + END + END as GPASulfadj, + minSulfAdjust, + lowSulfurCoeff +from tempSulfurCalcs2 SC2 +; + +alter table tempSulfurCalcs3 add key(m6emitterID); + +insert into tempSulfurCalcs3High (fuelTypeID, fuelFormulationID, baseFuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj,minSulfAdjust,lowSulfurCoeff) +select + fuelTypeID, fuelFormulationID, baseFuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +from tempSulfurCalcs3 where m6emitterID = 2 +; + +insert into tempSulfurCalcs3Normal (fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff) +select + fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +from tempSulfurCalcs3 where m6emitterID = 1 +; + +alter table tempSulfurCalcs3High add key(fuelFormulationID, polProcessID, sourceTypeID, ageID, modelYearID); +alter table tempSulfurCalcs3Normal add key(fuelFormulationID, polProcessID, sourceTypeID, ageID, modelYearID); + +insert into tempSulfurCalcs4 (fuelTypeID, fuelFormulationID, modelYearID, ratioNoSulfur, pollutantID, + polProcessID, processID, sourceTypeID, ageID, baseFuelFormulationID, sulfAdj3, + GPAsulfAdj3, sulfAdj3Normal, sulfAdjHigh, GPASulfadjNormal, GPASulfadjHigh, minSulfAdjust, lowSulfurCoeff, sulfurLevel, sulfurBasis) +select + tempSulfurCalcs3High.fuelTypeID, tempSulfurCalcs3High.fuelFormulationID, tempSulfurCalcs3High.modelYearID, tempSulfurCalcs3High.ratioNoSulfur, + tempSulfurCalcs3High.pollutantID, tempSulfurCalcs3High.polProcessID, tempSulfurCalcs3High.processID, tempSulfurCalcs3High.sourceTypeID, + tempSulfurCalcs3High.ageID, tempSulfurCalcs3High.baseFuelFormulationID, + (1 - 0.5) * tempSulfurCalcs3Normal.sulfAdj3 + 0.5 * tempSulfurCalcs3High.sulfAdj3 as sulfAdj3, + (1 - 0.5) * tempSulfurCalcs3Normal.GPASulfadj + 0.5 * tempSulfurCalcs3High.GPASulfadj as GPAsulfAdj3, + tempSulfurCalcs3Normal.sulfAdj3 as sulfAdj3Normal, + tempSulfurCalcs3High.sulfAdj3 as sulfAdjHigh, + tempSulfurCalcs3Normal.GPASulfadj as GPASulfadjNormal, + tempSulfurCalcs3High.GPASulfadj as GPASulfadjHigh, + tempSulfurCalcs3Normal.minSulfAdjust as minSulfAdjust, + tempSulfurCalcs3Normal.lowSulfurCoeff as lowSulfurCoeff, + tempSulfurCalcs3Normal.sulfurLevel as sulfurLevel, + tempSulfurCalcs3Normal.sulfurBasis as sulfurBasis +from tempSulfurCalcs3High +inner join tempSulfurCalcs3Normal on tempSulfurCalcs3High.fuelFormulationID = tempSulfurCalcs3Normal.fuelFormulationID and + tempSulfurCalcs3High.polProcessID = tempSulfurCalcs3Normal.polProcessID and + tempSulfurCalcs3High.modelYearID = tempSulfurCalcs3Normal.modelYearID and + tempSulfurCalcs3High.ageID = tempSulfurCalcs3Normal.ageID and + tempSulfurCalcs3High.sourceTypeID = tempSulfurCalcs3Normal.sourceTypeID; + +alter table tempSulfurCalcs4 add key (fuelFormulationID, modelYearID, polProcessID, sourceTypeID, ageID); + +insert ignore into ##sulfurOutputTable## (fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, +sourceTypeID, modelYearID, ageID, ratio, ratioGPA, ratioNoSulfur) +select + target.fuelTypeID, target.fuelFormulationID, target.polProcessID, target.pollutantID, + target.processID, target.sourceTypeID, target.modelYearID, target.ageID, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID > ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END as fuelAdjustment, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID > ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1,3) THEN + greatest(target.sulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END * + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and target.modelYearID <= ##cutoff.sulfurModelGPAPhaseInEnd## and (target.GPAsulfAdj3/ base.sulfAdj3) > 1.0) THEN + greatest(target.GPAsulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END as fuelAdjustmentGPA, + target.ratioNoSulfur +from tempSulfurCalcs4 target +inner join tempSulfurCalcs4 base on base.fuelFormulationID = target.baseFuelFormulationID + and base.modelYearID = target.modelYearID + and base.polProcessID = target.polProcessID + and base.sourceTypeID = target.sourceTypeID + and base.ageID = target.ageID +; + +drop table if exists debugSulfurOutputTable; + +create table debugSulfurOutputTable +select + target.fuelTypeID, target.fuelFormulationID, target.polProcessID, target.pollutantID, + target.processID, target.sourceTypeID, target.modelYearID, target.ageID, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID > ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END as fuelAdjustment, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID > ##cutoff.sulfurModelTHCNOxEnd## and target.pollutantID in (1,3) THEN + greatest(target.sulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END * + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelGPAPhaseInStart## and target.modelYearID <= ##cutoff.sulfurModelGPAPhaseInEnd## and (target.GPAsulfAdj3/ base.sulfAdj3) > 1.0) THEN + greatest(target.GPAsulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END as fuelAdjustmentGPA, + target.ratioNoSulfur, + target.lowSulfurCoeff as target_lowSulfurCoeff, + target.sulfurLevel as target_sulfurLevel, + target.ratioNoSulfur as target_ratioNoSulfur, + target.sulfAdj3 as target_sulfAdj3, + base.sulfAdj3 as base_sulfAdj3, + target.minSulfAdjust as target_minSulfAdjust, + target.sulfurBasis as target_sulfurBasis +from tempSulfurCalcs4 target +inner join tempSulfurCalcs4 base on base.fuelFormulationID = target.baseFuelFormulationID + and base.modelYearID = target.modelYearID + and base.polProcessID = target.polProcessID + and base.sourceTypeID = target.sourceTypeID + and base.ageID = target.ageID +; diff --git a/database/SulfurModelROP.sql b/database/SulfurModelROP.sql new file mode 100644 index 0000000..688a413 --- /dev/null +++ b/database/SulfurModelROP.sql @@ -0,0 +1,590 @@ +-- Sulfur Model +-- version 2012-08-01 +-- authors Wesely Faler, Ed Campbell + +-- subst ##sulfurInputTable## tempSulfurIR; +-- subst ##sulfurOutputTable## tempSulfurOR; + +-- This is the form of the input table, named in ##sulfurInputTable## +-- drop table if exists ##sulfurInputTable##; +-- create table if not exists ##sulfurInputTable## ( +-- fuelTypeID int not null, +-- fuelFormulationID int not null, +-- baseFuelFormulationID int not null, +-- polProcessID int not null, +-- pollutantID int not null, +-- processID int not null, +-- modelYearGroupID int not null, +-- minModelYearID int not null, +-- maxModelYearID int not null, +-- ageID int not null, +-- ratioNoSulfur double +-- ); + +-- This is the form of the output table, named in ##sulfurOutputTable## +-- drop table if exists ##sulfurOutputTable##; +-- create table if not exists ##sulfurOutputTable## ( +-- fuelTypeID int not null, +-- fuelFormulationID int not null, +-- polProcessID int not null, +-- pollutantID int not null, +-- processID int not null, +-- sourceTypeID int not null, +-- modelYearID int not null, +-- ageID int not null, +-- ratio double null, +-- ratioGPA double null, +-- ratioNoSulfur double null +-- ); + +drop table if exists tempSulfurCalcs1; +create table if not exists tempSulfurCalcs1 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfShortTarget double, + sulfShort30 double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs2; +create table if not exists tempSulfurCalcs2 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3; +create table if not exists tempSulfurCalcs3 ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + m6emitterID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3High; +create table if not exists tempSulfurCalcs3High ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs3Normal; +create table if not exists tempSulfurCalcs3Normal ( + fuelTypeID int, + baseFuelFormulationID int, + fuelFormulationID int, + polProcessID int, + pollutantID int, + processID int, + modelYearID int, + ageID int, + sourceTypeID int, + sulfurCoeff double, + sulfurLevel double, + sulfurBasis double, + ratioNoSulfur double, + sulfurGPAMax float, + sulfurIRFactor double, + sulfShortTarget double, + sulfShort30 double, + SulfShortAdj double, + sulfAdj2 double, + SulfIRR double, + sulfurLongCoeff double, + sulfMax double, + sulfAdj3 double, + sulfGPA1 double, + ssulfGPA double, + sulfGPA double, + GPASulfadj double, + minSulfAdjust double, + lowSulfurCoeff double +); + +drop table if exists tempSulfurCalcs4; +create table if not exists tempSulfurCalcs4 ( + fuelTypeID int, + fuelFormulationID int, + modelYearID int, + ratioNoSulfur double, + pollutantID int, + polProcessID int, + processID int, + sourceTypeID int, + ageID int, + baseFuelFormulationID int, + sulfAdj3 double, + GPAsulfAdj3 double, + sulfAdj3Normal double, + sulfAdjHigh double, + GPASulfadjNormal double, + GPASulfadjHigh double, + minSulfAdjust double, + sulfurLevel double, + lowSulfurCoeff double, + sulfurBasis double +); + +-- LEFT JOINs should be used with M6SulfurCoeff, using a default value of 1.0 for sulfurLongCoeff +-- if a record is not found. + +drop table if exists tempYear; +create table if not exists tempYear ( + year int not null primary key +); + +insert into tempYear(year) values(1960),(1961),(1962),(1963),(1964),(1965),(1966),(1967) + ,(1968),(1969),(1970),(1971),(1972),(1973),(1974),(1975),(1976),(1977) + ,(1978),(1979),(1980),(1981),(1982),(1983),(1984),(1985),(1986),(1987) + ,(1988),(1989),(1990),(1991),(1992),(1993),(1994),(1995),(1996),(1997) + ,(1998),(1999),(2000),(2001),(2002),(2003),(2004),(2005),(2006),(2007) + ,(2008),(2009),(2010),(2011),(2012),(2013),(2014),(2015),(2016),(2017) + ,(2018),(2019),(2020),(2021),(2022),(2023),(2024),(2025),(2026),(2027) + ,(2028),(2029),(2030),(2031),(2032),(2033),(2034),(2035),(2036),(2037) + ,(2038),(2039),(2040),(2041),(2042),(2043),(2044),(2045),(2046),(2047) + ,(2048),(2049),(2050) +; + +drop table if exists tempSulfurBaseLookup; +create table if not exists tempSulfurBaseLookup ( + sulfurBasis int not null, + modelYearID int not null, + sulfurGPAMax float, + sulfurBase float +); + +drop table if exists tempSulfurCoeffLookup; +create table if not exists tempSulfurCoeffLookup ( + sulfurCoeff float, + processID smallint, + pollutantID smallint, + M6EmitterID smallint, + sourceTypeID smallint, + modelYearID int not null, + sulfurFunctionName char(10), + sulfurFunctionID smallint, + lowSulfurCoeff double +); + +insert into tempSulfurBaseLookup (sulfurBasis, modelYearID, sulfurGPAMax, sulfurBase) +select distinct sulfurBasis, Year, sulfurGPAMax, sulfurBase +from tempYear +inner join sulfurBase on tempYear.year >= + CASE round(sulfurBase.modelYearGroupID / 10000,0) WHEN 0 THEN 1960 ELSE round(sulfurBase.modelYearGroupID / 10000,0) END + and tempYear.year <= mod(sulfurBase.modelYearGroupID,10000) +inner join RunSpecModelYear on RunSpecModelYear.modelYearID = tempYear.year +; + +alter table tempSulfurBaseLookup add key idxAll(sulfurBasis, modelYearID); +alter table tempSulfurBaseLookup add key idxAll2(modelYearID, sulfurBasis); + +insert into tempSulfurCoeffLookup (sulfurCoeff, processID, pollutantID, M6EmitterID, + sourceTypeID, modelYearID, sulfurFunctionName, sulfurFunctionID, lowSulfurCoeff +) +select sulfurCoeff, processID, pollutantID, sulfurModelCoeff.M6EmitterID, + sulfurModelCoeff.sourceTypeID, year, sulfurFunctionName, sulfurModelCoeff.sulfurFunctionID, sulfurModelCoeff.lowSulfurCoeff +from tempYear +inner join sulfurModelCoeff on tempYear.year >= + CASE round(sulfurModelCoeff.fuelMyGroupID / 10000,0) WHEN 0 THEN 1960 ELSE round(sulfurModelCoeff.fuelMyGroupID / 10000,0) END + and tempYear.year <= mod(sulfurModelCoeff.fuelMyGroupID,10000) +inner join RunSpecModelYear on RunSpecModelYear.modelYearID = tempYear.year +inner join sulfurModelname on sulfurModelCoeff.M6EmitterID = sulfurModelname.M6EmitterID + and sulfurModelCoeff.sulfurFunctionID = sulfurModelname.sulfurFunctionID +inner join RunSpecSourceType rsst on rsst.sourceTypeID = sulfurModelCoeff.sourceTypeID +; + +alter table tempSulfurCoeffLookup add key(processID, pollutantID, modelYearID); + +insert into tempSulfurCalcs1 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + sulfShortTarget, sulfShort30, lowSulfurCoeff +) +select + IR.fuelTypeID, IR.baseFuelFormulationID, IR.fuelFormulationID, IR.polProcessID, IR.pollutantID, IR.processID, + tempSulfurBaseLookup.modelYearID, IR.ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + CASE sulfurFunctionName WHEN 'log-log' THEN + CASE WHEN sulfurLevel > 0 THEN exp(sulfurCoeff * LN(sulfurLevel)) ELSE 0 END + ELSE + exp(sulfurCoeff * sulfurLevel) + END as sulfShortTarget, + CASE sulfurFunctionName WHEN 'log-log' THEN + exp(sulfurCoeff * LN(sulfurBasis)) + ELSE + exp(sulfurCoeff * sulfurBasis) + END as sulfShort30, + lowSulfurCoeff +from ##sulfurInputTable## IR +inner join tempSulfurCoeffLookup on + IR.processID = tempSulfurCoeffLookup.processID and IR.pollutantID = tempSulfurCoeffLookup.pollutantID +inner join fuelFormulation on IR.fuelFormulationID = fuelFormulation.fuelFormulationID +inner join tempSulfurBaseLookup on tempSulfurCoeffLookup.modelYearID = tempSulfurBaseLookup.modelYearID + and IR.minModelYearID <= tempSulfurBaseLookup.modelYearID + and IR.maxModelYearID >= tempSulfurBaseLookup.modelYearID +inner join RunSpecModelYearAge rsmya on rsmya.modelYearID = tempSulfurBaseLookup.modelYearID + and rsmya.ageID = IR.ageID +; + +alter table tempSulfurCalcs1 add key(pollutantID, modelYearID, fuelTypeID); + +delete from M6SulfurCoeff where minModelYearID > ##cutoff.RateOfProgress##; +update M6SulfurCoeff set maxModelYearID=2050 +where minModelYearID <= ##cutoff.RateOfProgress## and maxModelYearID >= ##cutoff.RateOfProgress## and maxModelYearID < 2050; + +insert into tempSulfurCalcs2 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, lowSulfurCoeff +) +select + SC1.fuelTypeID, baseFuelFormulationID, SC1.fuelFormulationID, SC1.polProcessID, SC1.pollutantID, SC1.processID, + SC1.modelYearID, ageID, SC1.m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, + CASE WHEN sulfurIRFactor is null THEN + 0 + ELSE + CASE WHEN sulfurLevel <= maxIRFactorSulfur THEN + sulfurIRFactor + ELSE + 0 + END + END as + sulfurIRFactor, + sulfShortTarget, sulfShort30, + (sulfShortTarget - sulfShort30) / sulfShort30 as SulfShortAdj, + ((sulfShortTarget - sulfShort30) / sulfShort30) * ifnull(sulfurLongCoeff,1.0) as sulfAdj2, + CASE WHEN (maxIRFactorSulfur is null or maxIRFactorSulfur <= 0) THEN -- or sulfurLevel < 30 + 0 + WHEN sulfurLevel <= maxIRFactorSulfur THEN -- was <= maxIRFactorSulfur + exp(sulfurCoeff * ln(maxIRFactorSulfur)) + ELSE + CASE WHEN sulfurLevel > 0 THEN exp(sulfurCoeff * ln(sulfurLevel)) ELSE 0 END + END as SulfIRR, + + CASE WHEN sulfurLongCoeff is null THEN + 1.0 + ELSE + sulfurLongCoeff + END as + sulfurLongCoeff, + lowSulfurCoeff +from tempSulfurCalcs1 SC1 +left join M6SulfurCoeff on + SC1.pollutantID = M6SulfurCoeff.pollutantID and + SC1.modelYearID >= M6SulfurCoeff.minModelYearID and + SC1.modelYearID <= M6SulfurCoeff.maxModelYearID +inner join sulfurCapAmount on SC1.fuelTypeID = sulfurCapAmount.fuelTypeID +; + +-- 2010A: +-- (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.85 else 0.50 end) + +-- Revised internal: +-- (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.40 else 0.40 end) + +update tempSulfurCalcs2, tempSulfurBaseLookup set minSulfAdjust= + (case when (tempSulfurBaseLookup.sulfurBase <= 30) then 0.85 else 0.50 end) +where tempSulfurBaseLookup.modelYearID=tempSulfurCalcs2.modelYearID; + +insert into tempSulfurCalcs3 (fuelTypeID, baseFuelFormulationID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +) +select + SC2.fuelTypeID, baseFuelFormulationID, SC2.fuelFormulationID, SC2.polProcessID, SC2.pollutantID, SC2.processID, + SC2.modelYearID, ageID, SC2.m6emitterID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + ((sulfIRR - sulfShort30) / sulfShort30) as sulfMax, + CASE WHEN 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) <= minSulfAdjust THEN + minSulfAdjust + ELSE + 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) + END as sulfAdj3, + CASE WHEN (ModelYearID in (-2004,-2005,-2006) and sulfurLevel >= 0) THEN + ((case when (SC2.pollutantID=3 and SC2.m6emitterID=2) then 0.60 else 1.0 end)*exp(sulfurCoeff * ln(sulfurGPAMax))) + ELSE + 0 + END as sulfGPA1, + CASE WHEN (ModelYearID in (-2004,-2005,-2006) and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + (exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30 + ELSE + 0 + END as ssulfGPA, + CASE WHEN (ModelYearID in (-2004,-2005,-2006) and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + ((exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30) + * sulfurLongCoeff + ELSE + 0 + END as sulfGPA, + CASE WHEN (ModelYearID in (-2004,-2005,-2006) and sulfurLevel >= 0) THEN + -- NOx high emitters get sulfGPA1*0.6 and sulfShort30*0.6, which cancel and make no difference in the ratio here + 1.0 + (sulfurIRFactor * (((exp(sulfurCoeff * ln(sulfurGPAMax)) - sulfShort30) / sulfShort30) + * sulfurLongCoeff) + (1.0 - sulfurIRFactor) * sulfAdj2) + ELSE + CASE WHEN 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) <= minSulfAdjust THEN + minSulfAdjust + ELSE + 1.0 + (sulfurIRFactor * ((sulfIRR - sulfShort30) / sulfShort30) + + (1.0 - sulfurIRFactor) * sulfAdj2) + END + END as GPASulfadj, + minSulfAdjust, + lowSulfurCoeff +from tempSulfurCalcs2 SC2 +; + +alter table tempSulfurCalcs3 add key(m6emitterID); + +insert into tempSulfurCalcs3High (fuelTypeID, fuelFormulationID, baseFuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj,minSulfAdjust,lowSulfurCoeff) +select + fuelTypeID, fuelFormulationID, baseFuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +from tempSulfurCalcs3 where m6emitterID = 2 +; + +insert into tempSulfurCalcs3Normal (fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff) +select + fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, + modelYearID, ageID, sourceTypeID, + sulfurCoeff, sulfurLevel, sulfurBasis, ratioNoSulfur, sulfurGPAMax, sulfurIRFactor, + sulfShortTarget, sulfShort30, SulfShortAdj, sulfAdj2, SulfIRR, sulfurLongCoeff, + sulfMax, sulfAdj3, sulfGPA1, ssulfGPA, sulfGPA, GPASulfadj, minSulfAdjust, lowSulfurCoeff +from tempSulfurCalcs3 where m6emitterID = 1 +; + +alter table tempSulfurCalcs3High add key(fuelFormulationID, polProcessID, sourceTypeID, ageID, modelYearID); +alter table tempSulfurCalcs3Normal add key(fuelFormulationID, polProcessID, sourceTypeID, ageID, modelYearID); + +insert into tempSulfurCalcs4 (fuelTypeID, fuelFormulationID, modelYearID, ratioNoSulfur, pollutantID, + polProcessID, processID, sourceTypeID, ageID, baseFuelFormulationID, sulfAdj3, + GPAsulfAdj3, sulfAdj3Normal, sulfAdjHigh, GPASulfadjNormal, GPASulfadjHigh, minSulfAdjust, lowSulfurCoeff, sulfurLevel, sulfurBasis) +select + tempSulfurCalcs3High.fuelTypeID, tempSulfurCalcs3High.fuelFormulationID, tempSulfurCalcs3High.modelYearID, tempSulfurCalcs3High.ratioNoSulfur, + tempSulfurCalcs3High.pollutantID, tempSulfurCalcs3High.polProcessID, tempSulfurCalcs3High.processID, tempSulfurCalcs3High.sourceTypeID, + tempSulfurCalcs3High.ageID, tempSulfurCalcs3High.baseFuelFormulationID, + (1 - 0.5) * tempSulfurCalcs3Normal.sulfAdj3 + 0.5 * tempSulfurCalcs3High.sulfAdj3 as sulfAdj3, + (1 - 0.5) * tempSulfurCalcs3Normal.GPASulfadj + 0.5 * tempSulfurCalcs3High.GPASulfadj as GPAsulfAdj3, + tempSulfurCalcs3Normal.sulfAdj3 as sulfAdj3Normal, + tempSulfurCalcs3High.sulfAdj3 as sulfAdjHigh, + tempSulfurCalcs3Normal.GPASulfadj as GPASulfadjNormal, + tempSulfurCalcs3High.GPASulfadj as GPASulfadjHigh, + tempSulfurCalcs3Normal.minSulfAdjust as minSulfAdjust, + tempSulfurCalcs3Normal.lowSulfurCoeff as lowSulfurCoeff, + tempSulfurCalcs3Normal.sulfurLevel as sulfurLevel, + tempSulfurCalcs3Normal.sulfurBasis as sulfurBasis +from tempSulfurCalcs3High +inner join tempSulfurCalcs3Normal on tempSulfurCalcs3High.fuelFormulationID = tempSulfurCalcs3Normal.fuelFormulationID and + tempSulfurCalcs3High.polProcessID = tempSulfurCalcs3Normal.polProcessID and + tempSulfurCalcs3High.modelYearID = tempSulfurCalcs3Normal.modelYearID and + tempSulfurCalcs3High.ageID = tempSulfurCalcs3Normal.ageID and + tempSulfurCalcs3High.sourceTypeID = tempSulfurCalcs3Normal.sourceTypeID; + +alter table tempSulfurCalcs4 add key (fuelFormulationID, modelYearID, polProcessID, sourceTypeID, ageID); + +insert ignore into ##sulfurOutputTable## (fuelTypeID, fuelFormulationID, polProcessID, pollutantID, processID, +sourceTypeID, modelYearID, ageID, ratio, ratioGPA, ratioNoSulfur) +select + target.fuelTypeID, target.fuelFormulationID, target.polProcessID, target.pollutantID, + target.processID, target.sourceTypeID, target.modelYearID, target.ageID, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= 12003 and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID >= 12004 and target.pollutantID in (1, 3) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END as fuelAdjustment, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= 12003 and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID >= 12004 and target.pollutantID in (1,3) THEN + greatest(target.sulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END * + CASE WHEN (target.modelYearID IN (-2004,-2005,-2006) and (target.GPAsulfAdj3/ base.sulfAdj3) > 1.0) THEN + greatest(target.GPAsulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END as fuelAdjustmentGPA, + target.ratioNoSulfur +from tempSulfurCalcs4 target +inner join tempSulfurCalcs4 base on base.fuelFormulationID = target.baseFuelFormulationID + and base.modelYearID = target.modelYearID + and base.polProcessID = target.polProcessID + and base.sourceTypeID = target.sourceTypeID + and base.ageID = target.ageID +; + +drop table if exists debugSulfurOutputTable; + +create table debugSulfurOutputTable +select + target.fuelTypeID, target.fuelFormulationID, target.polProcessID, target.pollutantID, + target.processID, target.sourceTypeID, target.modelYearID, target.ageID, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= 12003 and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID >= 12004 and target.pollutantID in (1, 3) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END as fuelAdjustment, + CASE WHEN (target.lowSulfurCoeff is not null and target.sulfurLevel <= 30 and target.sulfurBasis=30) THEN + greatest(1.0-target.lowSulfurCoeff*(30.0-target.sulfurLevel),0) * target.RatioNoSulfur + ELSE + CASE WHEN (target.modelYearID >= ##cutoff.sulfurModelTHCNOxStart## and target.modelYearID <= 12003 and target.pollutantID in (1, 3)) + or (target.modelYearID >= ##cutoff.sulfurModelCOStart## and target.pollutantID = 2) THEN + greatest(target.sulfAdj3 / base.sulfAdj3, target.minSulfAdjust) * target.RatioNoSulfur + ELSE + CASE WHEN target.modelYearID >= 12004 and target.pollutantID in (1,3) THEN + greatest(target.sulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END + END + END * + CASE WHEN (target.modelYearID IN (-2004,-2005,-2006) and (target.GPAsulfAdj3/ base.sulfAdj3) > 1.0) THEN + greatest(target.GPAsulfAdj3/ base.sulfAdj3, target.minSulfAdjust) + ELSE + 1.0 + END as fuelAdjustmentGPA, + target.ratioNoSulfur, + target.lowSulfurCoeff as target_lowSulfurCoeff, + target.sulfurLevel as target_sulfurLevel, + target.ratioNoSulfur as target_ratioNoSulfur, + target.sulfAdj3 as target_sulfAdj3, + base.sulfAdj3 as base_sulfAdj3, + target.minSulfAdjust as target_minSulfAdjust, + target.sulfurBasis as target_sulfurBasis +from tempSulfurCalcs4 target +inner join tempSulfurCalcs4 base on base.fuelFormulationID = target.baseFuelFormulationID + and base.modelYearID = target.modelYearID + and base.polProcessID = target.polProcessID + and base.sourceTypeID = target.sourceTypeID + and base.ageID = target.ageID +; diff --git a/database/TOGSpeciationCalculator.sql b/database/TOGSpeciationCalculator.sql new file mode 100644 index 0000000..ec32f3c --- /dev/null +++ b/database/TOGSpeciationCalculator.sql @@ -0,0 +1,385 @@ +-- TOG Speciation calculator +-- Version 2015-07-15 +-- Author Wes Faler + +-- @algorithm +-- @owner TOG Speciation Calculator + +-- Section Create Remote Tables for Extracted Data + +##create.integratedSpeciesSet##; +TRUNCATE TABLE integratedSpeciesSet; + +##create.lumpedSpeciesName##; +TRUNCATE TABLE lumpedSpeciesName; + +##create.togSpeciation##; +TRUNCATE TABLE togSpeciation; + +##create.TOGSpeciationProfile##; +TRUNCATE TABLE TOGSpeciationProfile; + +drop table if exists togSpeciationCountyYear; +create table if not exists togSpeciationCountyYear ( + mechanismID smallint not null default 0, + integratedSpeciesSetID smallint not null default 0, + countyID int not null default 0, + monthID smallint not null default 0, + yearID smallint not null default 0, + inProcessID smallint not null default 0, + inPollutantID smallint not null default 0, + fuelTypeID smallint not null default 0, + minModelYearID smallint not null default 0, + maxModelYearID smallint not null default 0, + regClassID smallint not null default 0, + outPollutantID smallint not null default 0, + factor double not null default 0, + primary key (mechanismID, integratedSpeciesSetID, + countyID, monthID, yearID, inProcessID, inPollutantID, + fuelTypeID, minModelYearID, maxModelYearID, regClassID, outPollutantID) +); +TRUNCATE TABLE togSpeciationCountyYear; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data + +cache select integratedSpeciesSet.* +into outfile '##integratedSpeciesSet##' +from integratedSpeciesSet +where mechanismID in (##mechanismIDs##); + +cache select lumpedSpeciesName.* +into outfile '##lumpedSpeciesName##' +from lumpedSpeciesName; + +cache select togSpeciation.* +into outfile '##togSpeciation##' +from togSpeciation +where processID in (##context.allCurrentProcesses##); + +cache select distinct tsp.* +into outfile '##TOGSpeciationProfile##' +from TOGSpeciationProfile tsp +inner join togSpeciation ts on ( + ts.togSpeciationProfileID = tsp.togSpeciationProfileID + and ts.processID in (##context.allCurrentProcesses##)) +where mechanismID in (##mechanismIDs##) +and (integratedSpeciesSetID = 0 or integratedSpeciesSetID in ( + select distinct integratedSpeciesSetID + from integratedSpeciesSet + where mechanismID in (##mechanismIDs##))); + +cache select mechanismID, integratedSpeciesSetID, + ##context.iterLocation.countyRecordID## as countyID, monthID, yearID, + ts.processID as inProcessID, tsp.pollutantID as inPollutantID, + fst.fuelTypeID, + ts.minModelYearID, ts.maxModelYearID, + ts.regClassID, + 1000+(tsp.mechanismID-1)*500+lsn.lumpedSpeciesID as outPollutantID, + sum(fs.marketShare*tsp.TOGSpeciationMassFraction/tsp.TOGSpeciationDivisor) as factor +into outfile '##togSpeciationCountyYear##' +from togSpeciation ts +inner join togSpeciationProfile tsp on (tsp.togSpeciationProfileID=ts.togSpeciationProfileID) +inner join lumpedSpeciesName lsn on (lsn.lumpedSpeciesName=tsp.lumpedSpeciesName) +inner join fuelFormulation ff on (ff.fuelSubtypeID=ts.fuelSubtypeID) +inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID) +inner join fuelSupply fs on (fs.fuelFormulationID=ff.fuelFormulationID) +inner join monthOfAnyYear may on (may.monthGroupID=fs.monthGroupID) +inner join year y on (y.fuelYearID=fs.fuelYearID) +where tsp.mechanismID in (##mechanismIDs##) +and y.yearID=##context.year## +and fs.fuelRegionID=##context.fuelRegionID## +and ts.minModelYearID <= ##context.year## +and ts.maxModelYearID >= ##context.year##-30 +and ts.processID in (##context.allCurrentProcesses##) +group by + mechanismID, integratedSpeciesSetID, + monthID, yearID, + ts.processID, tsp.pollutantID, + fst.fuelTypeID, ts.minModelYearID, ts.maxModelYearID, ts.regClassID, + lsn.lumpedSpeciesID; + +-- End Section Extract Data + +-- Section Processing + +-- @algorithm +drop table if exists TOGWorkerOutput; +CREATE TABLE IF NOT EXISTS TOGWorkerOutput ( + mechanismID SMALLINT NOT NULL DEFAULT 0, + integratedSpeciesSetID SMALLINT NOT NULL DEFAULT 0, + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + engTechID SMALLINT UNSIGNED NULL, + sectorID SMALLINT UNSIGNED NULL, + hpID SMALLINT UNSIGNED NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL +); +truncate table TOGWorkerOutput; + +-- @algorithm Add NMOG (80) to the set of chained input pollutants. +insert ignore into integratedSpeciesSet (mechanismID, integratedSpeciesSetID, pollutantID, useISSyn) +select distinct mechanismID, integratedSpeciesSetID, 80 as pollutantID, 'Y' as useISSyn +from integratedSpeciesSet +where pollutantID <> 80; + +-- @algorithm Index integratedSpeciesSet by pollutantID to increase speed. +alter table integratedSpeciesSet add key ISS_pollutantID (pollutantID); + +-- @algorithm Find the subset of records that are actually needed. +-- These include NMOG (80) and anything listed in integratedSpeciesSet. +insert into TOGWorkerOutput ( + mechanismID,integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select 0 as mechanismID, 0 as integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate +from MOVESWorkerOutput +where pollutantID in ( + select distinct pollutantID from integratedSpeciesSet +); + +-- @algorithm Convert integrated species to negative NonHapTOG (88) entries +-- and NMOG (80) values to positive NonHAPTOG (88) entries. When summed, +-- this will complete the integration. +insert into TOGWorkerOutput ( + mechanismID,integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select iss.mechanismID, iss.integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + 88 as pollutantID, + processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + case + when two.pollutantID=80 then emissionQuant + else -emissionQuant + end as emissionQuant, + case + when two.pollutantID=80 then emissionRate + else -emissionRate + end as emissionRate +from TOGWorkerOutput two +inner join integratedSpeciesSet iss using (pollutantID) +where two.mechanismID = 0 and two.integratedSpeciesSetID = 0; + +-- @algorithm +drop table if exists TOGWorkerOutputIntegrated; +CREATE TABLE IF NOT EXISTS TOGWorkerOutputIntegrated ( + mechanismID SMALLINT NOT NULL DEFAULT 0, + integratedSpeciesSetID SMALLINT NOT NULL DEFAULT 0, + MOVESRunID SMALLINT UNSIGNED NOT NULL DEFAULT 0, + iterationID SMALLINT UNSIGNED DEFAULT 1, + yearID SMALLINT UNSIGNED NULL, + monthID SMALLINT UNSIGNED NULL, + dayID SMALLINT UNSIGNED NULL, + hourID SMALLINT UNSIGNED NULL, + stateID SMALLINT UNSIGNED NULL, + countyID INTEGER UNSIGNED NULL, + zoneID INTEGER UNSIGNED NULL, + linkID INTEGER UNSIGNED NULL, + pollutantID SMALLINT UNSIGNED NULL, + processID SMALLINT UNSIGNED NULL, + sourceTypeID SMALLINT UNSIGNED NULL, + regClassID SMALLINT UNSIGNED NULL, + fuelTypeID SMALLINT UNSIGNED NULL, + modelYearID SMALLINT UNSIGNED NULL, + roadTypeID SMALLINT UNSIGNED NULL, + SCC CHAR(10) NULL, + engTechID SMALLINT UNSIGNED NULL, + sectorID SMALLINT UNSIGNED NULL, + hpID SMALLINT UNSIGNED NULL, + emissionQuant DOUBLE NULL, + emissionRate DOUBLE NULL, + + key (mechanismID, integratedSpeciesSetID, pollutantID) +); +truncate table TOGWorkerOutputIntegrated; + +-- @algorithm Sum the NonHAPTOG (88) records, reducing record count +-- and completing the species integration. +insert into TOGWorkerOutputIntegrated (mechanismID, integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select mechanismID, integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + greatest(sum(emissionQuant),0) as emissionQuant, + greatest(sum(emissionRate),0) as emissionRate +from TOGWorkerOutput +where mechanismID <> 0 +group by mechanismID, integratedSpeciesSetID, + MOVESRunID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC +order by null; + +-- engTechID,sectorID,hpID + +-- @algorithm Copy NonHAPTOG (88) entries into MOVESWorkerOutput. +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate,engTechID,sectorID,hpID +) +select MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate,engTechID,sectorID,hpID +from TOGWorkerOutputIntegrated +where pollutantID=88 and integratedSpeciesSetID>0 +and mechanismID = (select min(mechanismID) from TOGWorkerOutputIntegrated where mechanismID>0); + +-- @algorithm Index togSpeciationProfile by pollutantID to increase speed. +alter table togSpeciationProfile add key TSP_pollutantID (pollutantID); + +-- @algorithm +drop table if exists togSpeciationPollutants; + +create table if not exists togSpeciationPollutants ( + mechanismID smallint not null, + pollutantID smallint not null, + primary key (pollutantID, mechanismID) +); + +-- @algorithm Get the set of distinct pollutants that are needed for speciation input. +insert into togSpeciationPollutants (mechanismID, pollutantID) +select distinct mechanismID, pollutantID from togSpeciationProfile; + +-- @algorithm Find the subset of records that are needed for speciation input. +-- These are the pollutants listed in the togSpeciationProfile table. +insert into TOGWorkerOutputIntegrated ( + mechanismID,integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate) +select mechanismID, 0 as integratedSpeciesSetID, + MOVESRunID,iterationID, + yearID,monthID,dayID,hourID, + stateID,countyID,zoneID,linkID, + mwo.pollutantID,processID, + sourceTypeID,regClassID,fuelTypeID,modelYearID, + roadTypeID,SCC, + engTechID,sectorID,hpID, + emissionQuant,emissionRate +from MOVESWorkerOutput mwo +inner join togSpeciationPollutants tsp on (tsp.pollutantID = mwo.pollutantID); + +-- @algorithm Speciate NonHAPTOG (88) and anything else listed as an input in togSpeciationProfile. + +create table togTemp like MOVESWorkerOutput; + +alter table togTemp add key speed1 ( + yearID,monthID,dayID,hourID,linkID, + pollutantID, + processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC, + engTechID,sectorID,hpID +); + +insert into togTemp (MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate,engTechID,sectorID,hpID) +select a.MOVESRunID,a.iterationID,a.yearID,a.monthID,a.dayID,a.hourID,a.stateID,a.countyID,a.zoneID,a.linkID, + b.outPollutantID as pollutantID, + a.processID,a.sourceTypeID,a.regClassID,a.fuelTypeID,a.modelYearID,a.roadTypeID,a.SCC, + emissionQuant*factor as emissionQuant, + emissionRate*factor as emissionRate, + a.engTechID,a.sectorID,a.hpID +from TOGWorkerOutputIntegrated a +inner join togSpeciationCountyYear b on ( + a.mechanismID = b.mechanismID + and a.integratedSpeciesSetID = b.integratedSpeciesSetID + and a.countyID = b.countyID + and a.monthID = b.monthID + and a.yearID = b.yearID + and a.processID = b.inProcessID + and a.pollutantID = b.inPollutantID + and a.fuelTypeID = b.fuelTypeID + and a.modelYearID >= b.minModelYearID + and a.modelYearID <= b.maxModelYearID + and (a.regClassID = b.regClassID or b.regClassID=0)); + +insert into MOVESWorkerOutput ( + MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID, + processID,sourceTypeID,regClassID,fuelTypeID,modelYearID,roadTypeID,SCC,emissionQuant,emissionRate,engTechID,sectorID,hpID +) +select a.MOVESRunID,a.iterationID,a.yearID,a.monthID,a.dayID,a.hourID,a.stateID,a.countyID,a.zoneID,a.linkID, + pollutantID, + a.processID,a.sourceTypeID,a.regClassID,a.fuelTypeID,a.modelYearID,a.roadTypeID,a.SCC, + sum(emissionQuant) as emissionQuant, + sum(emissionRate) as emissionRate, + a.engTechID,a.sectorID,a.hpID +from togTemp a +group by a.yearID,a.monthID,a.dayID,a.hourID,a.linkID, + pollutantID, + a.processID,a.sourceTypeID,a.regClassID,a.fuelTypeID,a.modelYearID,a.roadTypeID,a.SCC +order by null; + +-- a.engTechID,a.sectorID,a.hpID + +-- End Section Processing + +-- Section Cleanup +drop table if exists TOGWorkerOutput; +drop table if exists TOGWorkerOutputIntegrated; +drop table if exists togSpeciationCountyYear; +-- End Section Cleanup + +-- Section Final Cleanup +-- End Section Final Cleanup diff --git a/database/TankVaporVentingCalculator.sql b/database/TankVaporVentingCalculator.sql new file mode 100644 index 0000000..633a63b --- /dev/null +++ b/database/TankVaporVentingCalculator.sql @@ -0,0 +1,740 @@ +-- Version 2013-09-15 +-- Author Wesley Faler + +-- @algorithm +-- @owner Single-day Tank Vapor Venting Calculator +-- @notused + +-- Section Create Remote Tables for Extracted Data + +##create.AgeCategory##; +TRUNCATE AgeCategory; + +##create.AverageTankGasoline##; +TRUNCATE AverageTankGasoline; + +##create.AverageTankTemperature##; +TRUNCATE AverageTankTemperature; + +##create.ColdSoakInitialHourFraction##; +TRUNCATE ColdSoakInitialHourFraction; + +##create.ColdSoakTankTemperature##; +TRUNCATE ColdSoakTankTemperature; + +##create.County##; +TRUNCATE County; + +##create.CumTVVCoeffs##; +TRUNCATE CumTVVCoeffs; + +##create.EmissionRateByAge##; +TRUNCATE EmissionRateByAge; + +##create.FuelType##; +TRUNCATE FuelType; + +##create.HourDay##; +TRUNCATE HourDay; + +##create.IMCoverage##; +TRUNCATE IMCoverage; + +##create.IMFactor##; +TRUNCATE IMFactor; + +##create.Link##; +TRUNCATE Link; + +##create.MonthOfAnyYear##; +TRUNCATE MonthOfAnyYear; + +##create.OpModeDistribution##; +TRUNCATE OpModeDistribution; + +##create.PollutantProcessAssoc##; +TRUNCATE PollutantProcessAssoc; + +##create.PollutantProcessModelYear##; +TRUNCATE PollutantProcessModelYear; + +##create.RunSpecDay##; +TRUNCATE RunSpecDay; + +##create.RunSpecHourDay##; +TRUNCATE RunSpecHourDay; + +##create.RunSpecMonth##; +TRUNCATE RunSpecMonth; + +##create.RunSpecSourceType##; +TRUNCATE RunSpecSourceType; + +##create.SourceBin##; +TRUNCATE SourceBin; + +##create.SourceBinDistribution##; +TRUNCATE SourceBinDistribution; + +##create.SourceHours##; +TRUNCATE SourceHours; + +##create.SourceTypeModelYear##; +TRUNCATE SourceTypeModelYear; + +##create.SourceTypeModelYearGroup##; +TRUNCATE SourceTypeModelYearGroup; + +##create.TankVaporGenCoeffs##; +TRUNCATE TankVaporGenCoeffs; + +##create.Year##; +TRUNCATE Year; + +##create.Zone##; +TRUNCATE Zone; + +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Extracting Data'; + +cache SELECT * INTO OUTFILE '##AgeCategory##' +FROM AgeCategory; + +cache SELECT AverageTankGasoline.* INTO OUTFILE '##AverageTankGasoline##' +FROM AverageTankGasoline +INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = AverageTankGasoline.monthGroupID) +INNER JOIN Year ON (Year.yearID = ##context.year##) +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND AverageTankGasoline.fuelYearID = Year.fuelYearID +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##AverageTankTemperature##' FROM AverageTankTemperature +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##ColdSoakInitialHourFraction##' FROM ColdSoakInitialHourFraction +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##ColdSoakTankTemperature##' FROM ColdSoakTankTemperature +WHERE zoneID = ##context.iterLocation.zoneRecordID## +AND monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##County##' +FROM County +WHERE countyID = ##context.iterLocation.countyRecordID##; + +cache SELECT DISTINCT CumTVVCoeffs.* INTO OUTFILE '##CumTVVCoeffs##' +FROM CumTVVCoeffs, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE SourceBinDistribution.polProcessID IN (##pollutantProcessIDs##) +AND CumTVVCoeffs.polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID +AND SourceBin.regClassID = CumTVVCoeffs.regClassID; + +cache SELECT DISTINCT EmissionRateByAge.* INTO OUTFILE '##EmissionRateByAge##' +FROM EmissionRateByAge, SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE RunSpecSourceFuelType.fuelTypeID = SourceBin.fuelTypeID +AND EmissionRateByAge.polProcessID = SourceBinDistribution.polProcessID +AND EmissionRateByAge.sourceBinID = SourceBin.sourceBinID +AND EmissionRateByAge.sourceBinID = SourceBinDistribution.sourceBinID +AND SourceBin.sourceBinID = SourceBinDistribution.sourceBinID +AND RunSpecSourceFuelType.sourceTypeID = SourceTypeModelYear.sourceTypeID +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND EmissionRateByAge.polProcessID IN (##pollutantProcessIDs##) +AND EmissionRateByAge.opModeID IN (150, 300); + +cache SELECT DISTINCT FuelType.* INTO OUTFILE '##FuelType##' +FROM FuelType +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = FuelType.fuelTypeID); + +cache SELECT DISTINCT HourDay.* INTO OUTFILE '##HourDay##' +FROM HourDay,RunSpecHour,RunSpecDay +WHERE HourDay.dayID = RunSpecDay.dayID +AND HourDay.hourID = RunSpecHour.hourID; + +cache SELECT DISTINCT IMCoverage.* INTO OUTFILE '##IMCoverage##' +FROM IMCoverage +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMCoverage.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMCoverage.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##) +AND countyID = ##context.iterLocation.countyRecordID## +AND yearID = ##context.year## +AND useIMyn = 'Y'; + +cache SELECT DISTINCT IMFactor.* INTO OUTFILE '##IMFactor##' +FROM IMFactor +INNER JOIN RunSpecSourceFuelType ON (RunSpecSourceFuelType.fuelTypeID = IMFactor.fuelTypeID + and RunSpecSourceFuelType.sourceTypeID = IMFactor.sourceTypeID) +WHERE polProcessID IN (##pollutantProcessIDs##); + +cache SELECT Link.* INTO OUTFILE '##Link##' +FROM Link WHERE linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT * INTO OUTFILE '##MonthOfAnyYear##' +FROM MonthOfAnyYear +WHERE monthID = ##context.monthID##; + +cache(monthID=##context.monthID##) SELECT OpModeDistribution.* INTO OUTFILE '##OpModeDistribution##' +FROM OpModeDistribution, RunSpecSourceType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND linkID = ##context.iterLocation.linkRecordID## +AND RunSpecSourceType.sourceTypeID = OpModeDistribution.sourceTypeID +AND opModeID IN (150, 151, 300); + +cache SELECT * INTO OUTFILE '##PollutantProcessAssoc##' +FROM PollutantProcessAssoc +WHERE processID=##context.iterProcess.databaseKey##; + +cache SELECT * INTO OUTFILE '##PollutantProcessModelYear##' +FROM PollutantProcessModelYear +WHERE modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30 +AND polProcessID IN (##pollutantProcessIDs##); + +cache SELECT * INTO OUTFILE '##RunSpecMonth##' +FROM RunSpecMonth +WHERE monthID = ##context.monthID##; + +cache SELECT * INTO OUTFILE '##RunSpecDay##' +FROM RunSpecDay; + +cache SELECT * INTO OUTFILE '##RunSpecHourDay##' +FROM RunSpecHourDay; + +cache SELECT * INTO OUTFILE '##RunSpecSourceType##' +FROM RunSpecSourceType; + +cache SELECT DISTINCT SourceBin.* INTO OUTFILE '##SourceBin##' +FROM SourceBinDistribution, SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT DISTINCT SourceBinDistribution.* INTO OUTFILE '##SourceBinDistribution##' +FROM sourceBinDistributionFuelUsage_##context.iterProcess.databaseKey##_##context.iterLocation.countyRecordID##_##context.year## as SourceBinDistribution, +SourceTypeModelYear, SourceBin, RunSpecSourceFuelType +WHERE polProcessID IN (##pollutantProcessIDs##) +AND SourceBinDistribution.sourceTypeModelYearID = SourceTypeModelYear.sourceTypeModelYearID +AND SourceTypeModelYear.modelYearID <= ##context.year## +AND SourceTypeModelYear.modelYearID >= ##context.year## - 30 +AND SourceTypeModelYear.sourceTypeID = RunSpecSourceFuelType.sourceTypeID +AND SourceBinDistribution.SourceBinID = SourceBin.SourceBinID +AND SourceBin.fuelTypeID = RunSpecSourceFuelType.fuelTypeID; + +cache SELECT * INTO OUTFILE '##SourceHours##' FROM SourceHours +WHERE monthID = ##context.monthID## +AND yearID = ##context.year## +AND linkID = ##context.iterLocation.linkRecordID##; + +cache SELECT SourceTypeModelYear.* INTO OUTFILE '##SourceTypeModelYear##' +FROM SourceTypeModelYear,RunSpecSourceType +WHERE SourceTypeModelYear.sourceTypeID = RunSpecSourceType.sourceTypeID +AND modelYearID <= ##context.year## +AND modelYearID >= ##context.year## - 30; + +cache SELECT SourceTypeModelYearGroup.* INTO OUTFILE '##SourceTypeModelYearGroup##' +FROM SourceTypeModelYearGroup,RunSpecSourceType +WHERE SourceTypeModelYearGroup.sourceTypeID = RunSpecSourceType.sourceTypeID; + +cache SELECT * INTO OUTFILE '##TankVaporGenCoeffs##' FROM TankVaporGenCoeffs; + +cache SELECT Year.* INTO OUTFILE '##Year##' +FROM Year +WHERE yearID = ##context.year##; + +cache SELECT * INTO OUTFILE '##Zone##' +FROM Zone +WHERE zoneID = ##context.iterLocation.zoneRecordID##; + +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'End Extracting Data'; + +-- End Section Extract Data + +-- Section Processing + +alter table ColdSoakTankTemperature add key speed1 (hourID); +analyze table ColdSoakTankTemperature; + +-- Create tables needed for processing +-- CREATE TABLE IF NOT EXISTS EventLog (eventRowID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (eventRowID), eventTime DATETIME, eventName VARCHAR(120)); + +-- +-- TVV-1: Complete I/M adjustment fraction information (like CREC 1-a) +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-1'; +DROP TABLE IF EXISTS IMCoverageMergedUngrouped; +CREATE TABLE IMCoverageMergedUngrouped ( + processID SMALLINT NOT NULL, + pollutantID SMALLINT NOT NULL, + modelYearID SMALLINT NOT NULL, + fuelTypeID SMALLINT NOT NULL, + sourceTypeID SMALLINT NOT NULL, + IMAdjustFract FLOAT +); + +CREATE INDEX XPKIMCoverageMergedUngrouped ON IMCoverageMergedUngrouped +( + processID ASC, + pollutantID ASC, + modelYearID ASC, + fuelTypeID ASC, + sourceTypeID ASC +); + +INSERT INTO IMCoverageMergedUngrouped ( + processID,pollutantID,modelYearID,fuelTypeID,sourceTypeID,IMAdjustFract) +SELECT + ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID, + sum(IMFactor*complianceFactor*.01) AS IMAdjustFract +FROM PollutantProcessModelYear ppmy +INNER JOIN PollutantProcessAssoc ppa on (ppa.polProcessID=ppmy.polProcessID) +INNER JOIN IMFactor imf ON ( + imf.polProcessID = ppa.polProcessID + AND imf.IMModelYearGroupID = ppmy.IMModelYearGroupID) +INNER JOIN AgeCategory ac ON ( + ac.ageGroupID = imf.ageGroupID) +INNER JOIN IMCoverage imc ON ( + imc.polProcessID = imf.polProcessID + AND imc.inspectFreq = imf.inspectFreq + AND imc.testStandardsID = imf.testStandardsID + AND imc.sourceTypeID = imf.sourceTypeID + AND imc.fuelTypeID = imf.fuelTypeID + AND imc.begModelYearID <= ppmy.modelYearID + AND imc.endModelYearID >= ppmy.modelYearID) +WHERE imc.countyID = ##context.iterLocation.countyRecordID## +AND imc.yearID = ##context.year## +AND ppmy.modelYearID = ##context.year##-ageID +AND ppmy.polProcessID IN (##pollutantProcessIDs##) +GROUP BY ppa.processID, + ppa.pollutantID, + ppmy.modelYearID, + imf.fuelTypeID, + imc.sourceTypeID; + +-- +-- TVV-2: Determine Hour of Peak Cold Soak Tank Temperature +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-2'; +drop table if exists PeakHourOfColdSoak; + +--zoneID int not null, NOTE: since calc is at year level, there is only 1 zone +create table PeakHourOfColdSoak ( +monthID smallint(6) not null, +peakHourID smallint(6) not null, +primary key (monthID), +index (peakHourID) +); + +insert into PeakHourOfColdSoak (monthID, peakHourID) +select monthID, +999-mod(max(round(coldSoakTankTemperature,2)*100000+(999-hourID)),1000) as peakHourID +from ColdSoakTankTemperature +group by monthID +order by null; + +analyze table PeakHourOfColdSoak; + +-- +-- TVV-3: Calculate TankVaporGenerated (TVG) by Ethanol Level +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-3'; +drop table if exists TankVaporGenerated; + +create table TankVaporGenerated ( + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + ethanolLevelID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelYearID smallint(6) not null, + fuelTypeID smallint(6) not null, + tankVaporGenerated float null, + primary key (hourDayID, initialHourDayID, ethanolLevelID, monthID, sourceTypeID, fuelYearID, fuelTypeID) +); + +-- NOTE: "k" is set to 1.0 in the calculation below +insert into TankVaporGenerated (hourDayID, initialHourDayID, ethanolLevelID, +monthID, sourceTypeID, fuelYearID, fuelTypeID, tankVaporGenerated) +select ihf.hourDayID, ihf.initialHourDayID, coeffs.ethanolLevelID, +ihf.monthID, ihf.sourceTypeID, avggas.fuelYearID, avggas.fuelTypeID, +case when t1.coldSoakTankTemperature >= t2.coldSoakTankTemperature then 0.0 +else +1.0*(tvgTermA*exp(tvgTermB*RVP)*(exp(tvgTermC*t2.coldSoakTankTemperature)-exp(tvgTermC*t1.coldSoakTankTemperature))) +end as tankVaporGenerated +from ColdSoakInitialHourFraction ihf +inner join HourDay hd on (hd.hourDayID = ihf.hourDayID) +inner join HourDay ihd on (ihd.hourDayID = ihf.initialHourDayID) +inner join PeakHourOfColdSoak ph on (ihf.monthID = ph.monthID) +inner join ColdSoakTankTemperature t2 on (ihf.monthID = t2.monthID and hd.hourID = t2.hourID) +inner join ColdSoakTankTemperature t1 on (ihf.monthID = t1.monthID and ihd.hourID = t1.hourID) +inner join Zone on (ihf.zoneID = Zone.zoneID) +inner join County on (Zone.countyID = County.countyID) +inner join TankVaporGenCoeffs coeffs on (County.altitude = coeffs.altitude) +inner join MonthOfAnyYear m on (ihf.monthID = m.monthID) +inner join AverageTankGasoline avggas on (m.monthGroupID = avggas.monthGroupID) +where ihf.hourDayID <> ihf.initialHourDayID +and hd.hourID <= ph.peakHourID +and ihf.coldSoakInitialHourFraction > 0; + +analyze table TankVaporGenerated; + +-- +-- TVV-4: Calculate Ethanol-weighted TVG +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-4'; +drop table if exists EthanolWeightedTVG; + +create table EthanolWeightedTVG ( + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelYearID smallint(6) not null, + fuelTypeID smallint(6) not null, + ethanolWeightedTVG float null, + primary key (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelYearID, fuelTypeID) +); + +insert into EthanolWeightedTVG (hourDayID, initialHourDayID, monthID, sourceTypeID, fuelYearID, fuelTypeID, ethanolWeightedTVG) +select t0.hourDayID, t0.initialHourDayID, t0.monthID, t0.sourceTypeiD, t0.fuelYearID, t0.fuelTypeID, +(t10.tankVaporGenerated*(least(10.0,ETOHVolume)/10.0) ++t0.tankVaporGenerated*(1.0-least(10.0,ETOHVolume)/10.0)) as ethanolWeightedTVG +from TankVaporGenerated t0 +inner join TankVaporGenerated t10 on (t0.hourDayID=t10.hourDayID and t0.initialHourDayID=t10.initialHourDayID +and t0.monthID=t10.monthID and t0.sourceTypeID=t10.sourceTypeID and t0.fuelYearID=t10.fuelYearID +and t0.fuelTypeID=t10.fuelTypeID) +inner join MonthOfAnyYear m on (t10.monthID = m.monthID) +inner join AverageTankGasoline avggas on (m.monthGroupID = avggas.monthGroupID and t10.fuelYearID = avggas.fuelYearID +and t10.fuelTypeID=avggas.fuelTypeID) +where t0.ethanolLevelID = 0 +and t10.ethanolLevelID = 10; + +analyze table EthanolWeightedTVG; + +-- +-- TVV-5: Calculate Cummulative Tank Vapor Vented (TVV) +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-5'; +drop table if exists CummulativeTankVaporVented; + +create table CummulativeTankVaporVented ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + tankVaporVented float null, + tankVaporVentedIM float null, + hourDayID smallint(6) not null, + priorHourID smallint(6) not null, + primary key (regClassID, ageID, polProcessID, dayID, hourID, initialHourDayID, monthID, sourceTypeID, fuelTypeID), + index (priorHourID) +); + +insert into CummulativeTankVaporVented (regClassID, ageID, polProcessID, dayID, hourID, initialHourDayID, +monthID, sourceTypeID, fuelTypeID, tankVaporVented, tankVaporVentedIM, +hourDayID, priorHourID) +select coeffs.regClassID, acat.ageID, coeffs.polProcessID, hd.dayID, hd.hourID, ew.initialHourDayID, +ew.monthID, ew.sourceTypeID, ew.fuelTypeID, +greatest(tvvTermA+ethanolWeightedTVG*(tvvTermB+tvvTermC*ethanolWeightedTVG),0.0) as tankVaporVented, +greatest(tvvTermAIM+ethanolWeightedTVG*(tvvTermBIM+tvvTermCIM*ethanolWeightedTVG),0.0) as tankVaporVentedIM, +ew.hourDayID, +mod(hd.hourID-1-1+24,24)+1 +from CumTVVCoeffs coeffs +inner join AgeCategory acat on (coeffs.ageGroupID = acat.ageGroupID) +inner join PollutantProcessModelYear ppmy +on (coeffs.polProcessID=ppmy.polProcessID and coeffs.modelYearGroupID = ppmy.modelYearGroupID) +inner join EthanolWeightedTVG ew +inner join HourDay hd on (hd.hourDayID = ew.hourDayID) +inner join Year y on (y.fuelYearID = ew.fuelYearID) +where coeffs.polProcessID in (##pollutantProcessIDs##) +and acat.ageID = y.yearID - ppmy.modelYearID; + +analyze table CummulativeTankVaporVented; + +-- +-- TVV-6: Calculate Unweighted Hourly TVV Emission by Regulatory Class and Vehicle Age +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-6'; +drop table if exists UnweightedHourlyTVV; + +create table UnweightedHourlyTVV ( + zoneID int(11) not null default ##context.iterLocation.zoneRecordID##, + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + initialHourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + unweightedHourlyTVV float null, + unweightedHourlyTVVIM float null, + index (sourceTypeID, zoneID, monthID, hourDayID, initialHourDayID, fuelTypeID) +); + +insert into UnweightedHourlyTVV (regClassID, ageID, polProcessID, hourDayID, initialHourDayID, +monthID, sourceTypeID, fuelTypeID, unweightedHourlyTVV, unweightedHourlyTVVIM) +select ctv1.regClassID, ctv1.ageID, ctv1.polProcessID, ctv1.hourDayID, ctv1.initialHourDayID, +ctv1.monthID, ctv1.sourceTypeID, ctv1.fuelTypeID, +greatest(ctv1.tankVaporVented-coalesce(ctv2.tankVaporVented,0.0),0.0) as unweightedHourlyTVV, +greatest(ctv1.tankVaporVentedIM-coalesce(ctv2.tankVaporVentedIM,0.0),0.0) as unweightedHourlyTVVIM +from CummulativeTankVaporVented ctv1 left join CummulativeTankVaporVented ctv2 +on (ctv1.regClassID = ctv2.regClassID and ctv1.ageID = ctv2.ageID +and ctv1.polProcessID = ctv2.polProcessID and ctv1.initialHourDayID = ctv2.initialHourDayID +and ctv1.monthID = ctv2.monthID and ctv1.sourceTypeID = ctv2.sourceTypeID +and ctv1.fuelTypeID = ctv2.fuelTypeID +and ctv1.priorHourID = ctv2.hourID +and ctv1.dayID = ctv2.dayID); + +analyze table UnweightedHourlyTVV; + +-- +-- TVV-7: Calculate Weighted Hourly TVV Across Initial/Current pair +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-7'; +drop table if exists HourlyTVV; + +create table HourlyTVV ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + hourlyTVV float null, + hourlyTVVIM float null, + primary key (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID) +); + +-- Handle hourDayIDs <= the peak hour +drop table if exists HourlyTVVTemp; + +create table HourlyTVVTemp ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + hourDayID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + hourlyTVV float null, + hourlyTVVIM float null, + index (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID) +); + +insert into HourlyTVVTemp (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, +hourlyTVV, hourlyTVVIM) +select uhtvv.regClassID, uhtvv.ageID, uhtvv.polProcessID, uhtvv.hourDayID, uhtvv.monthID, uhtvv.sourceTypeID, uhtvv.fuelTypeID, +(unweightedHourlyTVV*coldSoakInitialHourFraction) as hourlyTVV, +(unweightedHourlyTVVIM*coldSoakInitialHourFraction) as hourlyTVVIM +from UnweightedHourlyTVV uhtvv +inner join ColdSoakInitialHourFraction ihf on (uhtvv.sourceTypeID = ihf.sourceTypeID +and uhtvv.zoneID = ihf.zoneID and uhtvv.monthID = ihf.monthID +and uhtvv.hourDayID = ihf.hourDayID and uhtvv.initialHourDayID = ihf.initialHourDayID); + +insert into HourlyTVV (regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID, +sum(hourlyTVV) as hourlyTVV, +sum(hourlyTVVIM) as hourlyTVVIM +from HourlyTVVTemp +group by regClassID, ageID, polProcessID, hourDayID, monthID, sourceTypeID, fuelTypeID +order by null; + +drop table if exists HourlyTVVTemp; + +-- Handle hourDayIDs > the peak hour +drop table if exists CopyOfHourlyTVV; +create table CopyOfHourlyTVV ( + regClassID smallint(6) not null, + ageID smallint(6) not null, + polProcessID int not null, + dayID smallint(6) not null, + hourID smallint(6) not null, + monthID smallint(6) not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + hourlyTVV float null, + hourlyTVVIM float null, + primary key (regClassID, ageID, polProcessID, dayID, hourID, monthID, sourceTypeID, fuelTypeID) +); +insert into CopyOfHourlyTVV (regClassID, ageID, polProcessID, dayID, hourID, +monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select regClassID, ageID, polProcessID, dayID, hourID, +monthID, sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM +from HourlyTVV +inner join HourDay on (HourDay.hourDayID=HourlyTVV.hourDayID); + +insert into HourlyTVV (regClassID, ageID, polProcessID, hourDayID, monthID, +sourceTypeID, fuelTypeID, hourlyTVV, hourlyTVVIM) +select htvv.regClassID, htvv.ageID, htvv.polProcessID, hd.hourDayID, htvv.monthID, htvv.sourceTypeID, htvv.fuelTypeID, +hourlyTVV * case + when (hd.hourID-ph.peakHourID) >= 4 then 0.0005 + when (hd.hourID-ph.peakHourID) >= 3 then 0.0040 + when (hd.hourID-ph.peakHourID) >= 2 then 0.0100 + when (hd.hourID-ph.peakHourID) >= 1 then 0.0200 + end as hourlyTVV, +hourlyTVVIM * case + when (hd.hourID-ph.peakHourID) >= 4 then 0.0005 + when (hd.hourID-ph.peakHourID) >= 3 then 0.0040 + when (hd.hourID-ph.peakHourID) >= 2 then 0.0100 + when (hd.hourID-ph.peakHourID) >= 1 then 0.0200 + end as hourlyTVVIM +from CopyOfHourlyTVV htvv +inner join PeakHourOfColdSoak ph on (htvv.monthID = ph.monthID and htvv.hourID = ph.peakHourID) +inner join HourDay hd on ( + hd.hourID > ph.peakHourID + and hd.hourID < ph.peakHourID + 5 + and hd.dayID = htvv.dayID +); + +analyze table HourlyTVV; + +-- TVV-8: Calculate I/M-Adjusted MeanBaseRates +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-8'; +drop table if exists WeightedMeanBaseRate; + +create table WeightedMeanBaseRate ( + polProcessID int not null, + sourceTypeID smallint(6) not null, + fuelTypeID smallint(6) not null, + monthID smallint(6) not null, + hourDayID smallint(6) not null, + modelYearID smallint(6) not null, + opModeID smallint(6) not null, + weightedMeanBaseRate float not null, + weightedMeanBaseRateIM float not null, + primary key (polProcessID, sourceTypeID, fuelTypeID, monthID, hourDayID, modelYearID, opModeID) +); + +-- For cold soak mode (opModeID=151) +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select htvv.polProcessID, htvv.sourceTypeID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID, 151 as opModeID, + sum(sourceBinActivityFraction*hourlyTVV) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*hourlyTVVIM) as weightedMeanBaseRateIM +from HourlyTVV htvv +inner join SourceTypeModelYear stmy on (stmy.modelYearID=##context.year##-htvv.ageID + and stmy.sourceTypeID=htvv.sourceTypeID) +inner join SourceBinDistribution sbd on (sbd.sourceTypeModelYearID=stmy.sourceTypeModelYearID + and sbd.polProcessID=htvv.polProcessID) +inner join SourceBin sb on (sb.sourceBinID=sbd.sourceBinID and sb.fuelTypeID=htvv.fuelTypeID + and sb.regClassID=htvv.regClassID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +group by htvv.polProcessID, htvv.sourceTypeID, sb.fuelTypeID, htvv.monthID, htvv.hourDayID, + stmy.modelYearID +order by null; + +-- For operating and hot soak modes (opModeIDs 300 and 150) +insert into WeightedMeanBaseRate (polProcessID, sourceTypeID, fuelTypeID, monthID, hourDayID, + modelYearID, opModeID, weightedMeanBaseRate, weightedMeanBaseRateIM) +select er.polProcessID, stmy.sourceTypeID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID, + sum(sourceBinActivityFraction*meanBaseRate) as weightedMeanBaseRate, + sum(sourceBinActivityFraction*meanBaseRateIM) as weightedMeanBaseRateIM +from EmissionRateByAge er +inner join AgeCategory acat on (acat.ageGroupID=er.ageGroupID) +inner join SourceBin sb on (sb.sourceBinID=er.sourceBinID) +inner join FuelType on (FuelType.fuelTypeID = sb.fuelTypeID and subjectToEvapCalculations = 'Y') +inner join SourceBinDistribution sbd on (sbd.sourceBinID=sb.sourceBinID + and sbd.polProcessID=er.polProcessID) +inner join SourceTypeModelYear stmy on (stmy.sourceTypeModelYearID=sbd.sourceTypeModelYearID + and stmy.modelYearID=##context.year##-acat.ageID) +inner join PollutantProcessModelYear ppmy on (ppmy.polProcessID=sbd.polProcessID + and ppmy.modelYearID=stmy.modelYearID and ppmy.modelYearGroupID=sb.modelYearGroupID) +inner join RunSpecSourceType rsst on (rsst.sourceTypeID=stmy.sourceTypeID) +inner join RunSpecMonth rsm +inner join RunSpecHourDay rshd +where er.polProcessID in (##pollutantProcessIDs##) +and opModeID in (150, 300) +group by er.polProcessID, stmy.sourceTypeID, sb.fuelTypeID, rsm.monthID, rshd.hourDayID, + stmy.modelYearID, er.opModeID +order by null; + +-- analyze table WeightedMeanBaseRate; + +alter table MOVESWorkerOutput add emissionQuantIM float null; + +alter table WeightedMeanBaseRate add key speed1 (sourceTypeID, hourDayID, polProcessID, opModeID); +analyze table WeightedMeanBaseRate; + +alter table SourceHours add key speed1 (hourDayID, monthID, sourceTypeID, ageID); +analyze table SourceHours; + +-- +-- TVV-9: Calculate MOVESWorkerOutput by Source Type +-- +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'TVV-9 without SCC'; +insert into MOVESWorkerOutput (yearID, monthID, dayID, hourID, stateID, countyID, +zoneID, linkID, pollutantID, processID, sourceTypeID, fuelTypeID, modelYearID, +roadTypeID, SCC, emissionQuant, emissionQuantIM) +select ##context.year## as yearID, w.monthID, hd.dayID, hd.hourID, +##context.iterLocation.stateRecordID## as stateID, +##context.iterLocation.countyRecordID## as countyID, +##context.iterLocation.zoneRecordID## as zoneID, +##context.iterLocation.linkRecordID## as linkID, +ppa.pollutantID, ppa.processID, w.sourceTypeID, w.fuelTypeID, w.modelYearID, +##context.iterLocation.roadTypeRecordID##, null as SCC, +(weightedMeanBaseRate*sourceHours*opModeFraction) as emissionQuant, +(weightedMeanBaseRateIM*sourceHours*opModeFraction) as emissionQuantIM +from WeightedMeanBaseRate w +inner join SourceHours sh on (sh.hourDayID=w.hourDayID and sh.monthID=w.monthID +and sh.yearID=##context.year## and sh.ageID=##context.year##-w.modelYearID +and sh.linkID=##context.iterLocation.linkRecordID## and sh.sourceTypeID=w.sourceTypeID) +inner join OpModeDistribution omd on (omd.sourceTypeID=sh.sourceTypeID +and omd.hourDayID=w.hourDayID and omd.linkID=##context.iterLocation.linkRecordID## +and omd.polProcessID=w.polProcessID and omd.opModeID=w.opModeID) +inner join PollutantProcessAssoc ppa on (ppa.polProcessID=omd.polProcessID) +inner join HourDay hd on (hd.hourDayID=omd.hourDayID); + +-- Apply IM +update MOVESWorkerOutput, IMCoverageMergedUngrouped set emissionQuant=GREATEST(emissionQuantIM*IMAdjustFract + emissionQuant*(1.0-IMAdjustFract),0.0) +where MOVESWorkerOutput.processID = IMCoverageMergedUngrouped.processID + and MOVESWorkerOutput.pollutantID = IMCoverageMergedUngrouped.pollutantID + and MOVESWorkerOutput.modelYearID = IMCoverageMergedUngrouped.modelYearID + and MOVESWorkerOutput.fuelTypeID = IMCoverageMergedUngrouped.fuelTypeID + and MOVESWorkerOutput.sourceTypeID = IMCoverageMergedUngrouped.sourceTypeID; + +alter table MOVESWorkerOutput drop emissionQuantIM; + +-- End Section Processing +-- Section Cleanup +-- INSERT INTO EventLog (eventTime, eventName) SELECT NOW(), 'Section Cleanup'; + +drop table if exists PeakHourOfColdSoak; +drop table if exists TankVaporGenerated; +drop table if exists EthanolWeightedTVG; +drop table if exists CummulativeTankVaporVented; +drop table if exists UnWeightedHourlyTVV; +drop table if exists HourlyTVV; +drop table if exists WeightedMeanBaseRate; +drop table if exists IMCoverageMergedUngrouped; +drop table if exists CopyOfHourlyTVV; +-- End Section Cleanup diff --git a/database/UpdateExecution.sql b/database/UpdateExecution.sql new file mode 100644 index 0000000..98f6d2c --- /dev/null +++ b/database/UpdateExecution.sql @@ -0,0 +1,85 @@ +-- Update utility tables in the MOVESExecution database. +-- Author Wesley Faler +-- Version 2013-09-30 + +-- -------------------------------------------------------------------- +-- Create RegClassSourceTypeFraction +-- -------------------------------------------------------------------- +drop table if exists runspecSourceTypeModelYearID; +create table if not exists runspecSourceTypeModelYearID ( + sourceTypeModelYearID int not null primary key +); + +insert into runspecSourceTypeModelYearID (sourceTypeModelYearID) +select sourceTypeID*10000 + modelYearID +from runspecSourceType, runspecModelYear; + +drop table if exists tempRegClassSourceTypeTotal; +create table if not exists tempRegClassSourceTypeTotal ( + fuelTypeID smallint not null, + modelYearID smallint not null, + sourceTypeID smallint not null, + total double not null default 0, + primary key (fuelTypeID, modelYearID, sourceTypeID) +); + +insert into tempRegClassSourceTypeTotal (sourceTypeID, modelYearID, fuelTypeID, total) +select floor(svp.sourceTypeModelYearID/10000) as sourceTypeID, + mod(svp.sourceTypeModelYearID,10000) as modelYearID, + svp.fuelTypeID, + sum(svp.stmyFraction) as stmyfueltotal +from sampleVehiclePopulation svp +inner join runspecSourceTypeModelYearID using (sourceTypeModelYearID) +group by svp.sourceTypeModelYearID, svp.fuelTypeID +having sum(svp.stmyFraction) > 0; + +drop table if exists tempRegClassSourceTypeFraction; +create table if not exists tempRegClassSourceTypeFraction ( + fuelTypeID smallint not null, + modelYearID smallint not null, + sourceTypeID smallint not null, + regClassID smallint not null, + regTotal double not null default 0, + primary key (fuelTypeID, modelYearID, sourceTypeID, regClassID) +); + +insert into tempRegClassSourceTypeFraction(sourceTypeID, modelYearID, fuelTypeID, regClassID, regTotal) +select floor(svp.sourceTypeModelYearID/10000) as sourceTypeID, + mod(svp.sourceTypeModelYearID,10000) as modelYearID, + svp.fuelTypeID, + svp.regClassID, + sum(svp.stmyFraction) as regTotal +from sampleVehiclePopulation svp +inner join runspecSourceTypeModelYearID using (sourceTypeModelYearID) +group by svp.sourceTypeModelYearID, svp.fuelTypeID, svp.regClassID +having sum(svp.stmyFraction) > 0; + +drop table if exists RegClassSourceTypeFraction; +create table if not exists RegClassSourceTypeFraction ( + fuelTypeID smallint not null, + modelYearID smallint not null, + sourceTypeID smallint not null, + regClassID smallint not null, + regClassFraction double not null default 0, + primary key (fuelTypeID, modelYearID, sourceTypeID, regClassID), + key (fuelTypeID), + key (fuelTypeID, sourceTypeID), + key (modelYearID, fuelTypeID, sourceTypeID), + key (modelYearID), + key (sourceTypeID, modelYearID, fuelTypeID) +); + +-- regClassFraction is fraction of a [source,fuel,modelyear] that a regclass covers. +insert into RegClassSourceTypeFraction (fuelTypeID, modelYearID, sourceTypeID, regClassID, regClassFraction) +select tst.fuelTypeID, tst.modelYearID, tst.sourceTypeID, tst.regClassID, regTotal/t.total +from tempRegClassSourceTypeFraction tst +inner join tempRegClassSourceTypeTotal t on (t.fuelTypeID=tst.fuelTypeID + and t.modelYearID=tst.modelYearID + and t.sourceTypeID=tst.sourceTypeID) +inner join runSpecSourceFuelType rs on (rs.sourceTypeID=tst.sourceTypeID and rs.fuelTypeID=tst.fuelTypeID); + +drop table if exists tempRegClassSourceTypeFraction; +drop table if exists tempRegClassSourceTypeTotal; +-- -------------------------------------------------------------------- +-- Done Creating RegClassSourceTypeFraction +-- -------------------------------------------------------------------- diff --git a/database/UpdateOutputWorkersUsed.sql b/database/UpdateOutputWorkersUsed.sql new file mode 100644 index 0000000..f429981 --- /dev/null +++ b/database/UpdateOutputWorkersUsed.sql @@ -0,0 +1,21 @@ +-- Version 2006-08-05 +-- Updates pre-Task 220 output databases to be Task 220-compliant + +ALTER TABLE MOVESRun + ADD COLUMN minutesDuration FLOAT NOT NULL DEFAULT 0, + ADD COLUMN defaultDatabaseUsed VARCHAR(200) NULL, + ADD COLUMN masterVersionDate CHAR(10) NULL, + ADD COLUMN masterComputerID VARCHAR(20) NULL +; + +CREATE TABLE MOVESWorkersUsed ( + MOVESRunID SMALLINT UNSIGNED NOT NULL, + workerVersion CHAR(10) NOT NULL, + workerComputerID VARCHAR(20) NOT NULL, + workerID VARCHAR(10), + + PRIMARY KEY (MOVESRunID, workerVersion, workerComputerID, workerID), + + bundleCount INTEGER UNSIGNED NOT NULL DEFAULT 0, + failedBundleCount INTEGER UNSIGNED NOT NULL DEFAULT 0 +); diff --git a/database/VehicleTypeVMTImporter.sql b/database/VehicleTypeVMTImporter.sql new file mode 100644 index 0000000..3e61207 --- /dev/null +++ b/database/VehicleTypeVMTImporter.sql @@ -0,0 +1,138 @@ +-- Author Wesley Faler +-- Version 2015-05-19 + +-- Mark any years in hpmsVTypeYear as base years in the Year table + +drop table if exists tempNewYear; + +create table if not exists tempNewYear ( + yearID smallint(6) not null default '0', + primary key (yearID) +); + +insert into tempNewYear (yearID) +select distinct yearID +from hpmsVTypeYear; + +drop table if exists tempYear; + +create table if not exists tempYear ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +create table if not exists year ( + yearID smallint(6) not null default '0', + isBaseYear char(1) default null, + fuelYearID smallint(6) not null default '0', + primary key (yearID), + key isBaseYear (isBaseYear) +); + +insert into tempYear (yearID, isBaseYear, fuelYearID) +select y.yearID, 'Y' as isBaseYear, y.fuelYearID +from tempNewYear ny +inner join ##defaultDatabase##.year y on (y.yearID=ny.yearID); + +-- insert ignore into year (yearID, isBaseYear, fuelYearID) +-- select yearID, isBaseYear, fuelYearID +-- from tempYear + +update year, tempNewYear set year.isBaseYear='Y' +where year.yearID=tempNewYear.yearID; + +drop table if exists tempYear; +drop table if exists tempNewYear; + +-- Set VMTGrowthFactor to 0 instead of NULL +update HPMSVTypeYear set VMTGrowthFactor=0 where VMTGrowthFactor is null; + +-- Complain about any years outside of MOVES's range +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' in HPMSVTypeYear is outside the range of 1990-2050 and cannot be used') as errorMessage +from hpmsVTypeYear +where yearID < 1990 or yearID > 2050; + +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' in HPMSVtypeDay is outside the range of 1990-2050 and cannot be used') as errorMessage +from HPMSVtypeDay +where yearID < 1990 or yearID > 2050; + +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' in SourceTypeYearVMT is outside the range of 1990-2050 and cannot be used') as errorMessage +from SourceTypeYearVMT +where yearID < 1990 or yearID > 2050; + +insert into importTempMessages (message) +select distinct concat('ERROR: Year ',yearID,' in SourceTypeDayVMT is outside the range of 1990-2050 and cannot be used') as errorMessage +from SourceTypeDayVMT +where yearID < 1990 or yearID > 2050; + +-- MonthVMTFraction +-- Fill with 0's for entries that were not imported +insert ignore into monthVMTFraction (sourceTypeID, monthID, monthVMTFraction) +select sourceTypeID, monthID, 0.0 +from ##defaultDatabase##.sourceUseType, ##defaultDatabase##.monthOfAnyYear +where (select count(*) from monthVMTFraction where monthVMTFraction > 0) > 0; + +-- Check sum to 1 +insert into importTempMessages (message) +select distinct concat('ERROR: Source type ',sourceTypeID,' monthVMTFraction is greater than 1.0') as errorMessage +from monthVMTFraction +group by sourceTypeID +having round(sum(monthVMTFraction),4)>1.0000; + +-- For non-zero fractions supplied, make sure they sum to 1 +insert into importTempMessages (message) +select distinct concat('Warning: Source type ',sourceTypeID,' monthVMTFraction is less than 1.0') as errorMessage +from monthVMTFraction +group by sourceTypeID +having round(sum(monthVMTFraction),4)<1.0000 and sum(monthVMTFraction)>0.0000; + + +-- DayVMTFraction +-- Fill with 0's for entries that were not imported +insert ignore into dayVMTFraction (sourceTypeID, monthID, roadTypeID, dayID, dayVMTFraction) +select sourceTypeID, monthID, roadTypeID, dayID, 0.0 +from ##defaultDatabase##.sourceUseType, ##defaultDatabase##.monthOfAnyYear, + ##defaultDatabase##.roadType, ##defaultDatabase##.dayOfAnyWeek +where (select count(*) from dayVMTFraction where dayVMTFraction > 0) > 0; + +-- Check sum to 1 +insert into importTempMessages (message) +select distinct concat('ERROR: Source type ',sourceTypeID,', month ',monthID,', road type ',roadTypeID,' dayVMTFraction is greater than 1.0') as errorMessage +from dayVMTFraction +group by sourceTypeID, monthID, roadTypeID +having round(sum(dayVMTFraction),4)>1.0000; + +-- For non-zero fractions supplied, make sure they sum to 1 +insert into importTempMessages (message) +select distinct concat('Warning: Source type ',sourceTypeID,', month ',monthID,', road type ',roadTypeID,' dayVMTFraction is less than 1.0') as errorMessage +from dayVMTFraction +group by sourceTypeID, monthID, roadTypeID +having round(sum(dayVMTFraction),4)<1.0000 and sum(dayVMTFraction)>0.0000; + + +-- HourVMTFraction +-- Fill with 0's for entries that were not imported +insert ignore into hourVMTFraction (sourceTypeID, roadTypeID, dayID, hourID, hourVMTFraction) +select sourceTypeID, roadTypeID, dayID, hourID, 0.0 +from ##defaultDatabase##.sourceUseType, ##defaultDatabase##.roadType, ##defaultDatabase##.hourDay +where (select count(*) from hourVMTFraction where hourVMTFraction > 0) > 0; + +-- Check sum to 1 +insert into importTempMessages (message) +select distinct concat('ERROR: Source type ',sourceTypeID,', day ',dayID,', road type ',roadTypeID,' hourVMTFraction is greater than 1.0') as errorMessage +from hourVMTFraction +group by sourceTypeID, dayID, roadTypeID +having round(sum(hourVMTFraction),4)>1.0000; + +-- For non-zero fractions supplied, make sure they sum to 1 +insert into importTempMessages (message) +select distinct concat('Warning: Source type ',sourceTypeID,', day ',dayID,', road type ',roadTypeID,' hourVMTFraction is less than 1.0') as errorMessage +from hourVMTFraction +group by sourceTypeID, dayID, roadTypeID +having round(sum(hourVMTFraction),4)<1.0000 and sum(hourVMTFraction)>0.0000; diff --git a/database/WellToPumpCalculator.sql b/database/WellToPumpCalculator.sql new file mode 100644 index 0000000..55fdeb7 --- /dev/null +++ b/database/WellToPumpCalculator.sql @@ -0,0 +1,209 @@ +-- Version 2013-09-15 + +-- @notused + +-- Section Create Remote Tables for Extracted Data +CREATE TABLE IF NOT EXISTS WTPMonthofAnyYear ( + monthID SMALLINT NOT NULL, + monthName CHAR(10) NULL, + noOfDays SMALLINT NULL, + monthGroupID SMALLINT NOT NULL, + UNIQUE INDEX XPKWTPMonthofAnyYear ( + monthID ASC) +); +TRUNCATE TABLE WTPMonthofAnyYear; + +DROP TABLE IF EXISTS WTPFactorByFuelType; +CREATE TABLE IF NOT EXISTS WTPFactorByFuelType ( + countyID INTEGER, + yearID SMALLINT, + monthGroupID SMALLINT, + pollutantID SMALLINT, + fuelTypeID SMALLINT, + WTPFactor FLOAT, + WTPFactorCV FLOAT, + UNIQUE INDEX XPKWTPFactor ( + countyID, yearID, monthGroupID, pollutantID, fuelTypeID ) +); +TRUNCATE TABLE WTPFactorByFuelType; +-- End Section Create Remote Tables for Extracted Data + +-- Section Extract Data +CREATE TABLE IF NOT EXISTS GREETWellToPumpBounds ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + minYearID SMALLINT, + maxYearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpBounds ( + pollutantID, fuelSubTypeID ) +); +CREATE TABLE IF NOT EXISTS GREETWellToPumpLo ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpLo ( + pollutantID, fuelSubTypeID ) +); +CREATE TABLE IF NOT EXISTS GREETWellToPumpHi ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + UNIQUE INDEX XPKGREETWellToPumpHi ( + pollutantID, fuelSubTypeID ) +); + +DROP TABLE IF EXISTS WTPFactor; +CREATE TABLE IF NOT EXISTS WTPFactor ( + pollutantID SMALLINT, + fuelSubTypeID SMALLINT, + yearID SMALLINT, + WTPFactor FLOAT, + WTPFactorV FLOAT, + UNIQUE INDEX XPKWTPFactor ( + pollutantID, fuelSubTypeID, yearID ) +); + +DROP TABLE IF EXISTS WTPFactorByFuelType; +CREATE TABLE IF NOT EXISTS WTPFactorByFuelType ( + countyID INTEGER, + yearID SMALLINT, + monthGroupID SMALLINT, + pollutantID SMALLINT, + fuelTypeID SMALLINT, + WTPFactor FLOAT, + WTPFactorCV FLOAT, + UNIQUE INDEX XPKWTPFactor ( + countyID, yearID, monthGroupID, pollutantID, fuelTypeID ) +); + +TRUNCATE GREETWellToPumpBounds; + +INSERT INTO GREETWellToPumpBounds ( +pollutantID,fuelSubTypeID,minYearID,maxYearID ) +SELECT pollutantID,fuelSubTypeID,MIN(yearID),MAX(yearID) +FROM GREETWellToPump +WHERE pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID, fuelSubTypeID; + +TRUNCATE GREETWellToPumpLo; + +INSERT INTO GREETWellToPumpLo (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,minYearID +FROM GREETWellToPumpBounds +WHERE minYearID >= ##context.year## +GROUP BY pollutantID,fuelSubTypeID; + +INSERT IGNORE INTO GREETWellToPumpLo (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,MAX(yearID) +FROM GREETWellToPump +WHERE yearID <= ##context.year## AND +pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID,fuelSubTypeID; + +TRUNCATE GREETWellToPumpHi; +INSERT INTO GREETWellToPumpHi (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,maxYearID +FROM GREETWellToPumpBounds +WHERE maxYearID <= ##context.year## +GROUP BY pollutantID,fuelSubTypeID; + +INSERT IGNORE INTO GREETWellToPumpHi (pollutantID,fuelSubTypeID,yearID ) +SELECT pollutantID,fuelSubTypeID,MIN(yearID) +FROM GREETWellToPump +WHERE yearID > ##context.year## AND +pollutantID IN ( ##pollutantIDs## ) +GROUP BY pollutantID,fuelSubTypeID; + +INSERT INTO WTPFactor ( +pollutantID,fuelSubTypeID,yearID,WTPFactor, WTPFactorV) +SELECT wtpflb.pollutantID,wtpflb.fuelSubTypeID, ##context.year##, +wtpflo.emissionRate + +(wtpfhi.emissionRate - wtpflo.emissionRate) * +((##context.year## - wtpflo.yearID)/IF(wtpfhi.yearID<>wtpflo.yearID,wtpfhi.yearID-wtpflo.yearID,1)), +null +FROM GREETWellToPump wtpflo,GREETWellToPumpLo wtpflb, +GREETWellToPump wtpfhi,GREETWellToPumpHi wtpfhb +WHERE +wtpflb.pollutantID = wtpfhb.pollutantID AND +wtpflb.fuelSubTypeID = wtpfhb.fuelSubTypeID AND +wtpflb.pollutantID = wtpflo.pollutantID AND +wtpflb.fuelSubTypeID = wtpflo.fuelSubTypeID AND +wtpflb.yearID = wtpflo.yearID AND +wtpfhb.pollutantID = wtpfhi.pollutantID AND +wtpfhb.fuelSubTypeID = wtpfhi.fuelSubTypeID AND +wtpfhb.yearID = wtpfhi.yearID; + +INSERT INTO WTPFactorByFuelType ( +countyID,yearID,monthGroupID,pollutantID,fuelTypeID,WTPFactor,WTPFactorCV) +SELECT +##context.iterLocation.countyRecordID## as countyID,y.yearID,fs.monthGroupID, +wf.pollutantID,fst.fuelTypeID,SUM(wf.WTPFactor * fs.marketShare), null +FROM +FuelSubtype fst, FuelFormulation ff, Year y, FuelSupply fs, WTPFactor wf +WHERE +fs.fuelYearID = y.fuelYearID AND +y.yearID = wf.yearID AND +fs.fuelRegionID = ##context.fuelRegionID## AND +fs.fuelFormulationID = ff.fuelFormulationID AND +ff.fuelSubTypeID = wf.fuelSubTypeID AND +ff.fuelSubTypeID = fst.fuelSubtypeID +GROUP BY +fs.fuelRegionID,y.yearID,fs.monthGroupID,wf.pollutantID,fst.fuelTypeID; + +SELECT * INTO OUTFILE '##WTPFactorByFuelType##' +FROM WTPFactorByFuelType; + +SELECT * INTO OUTFILE '##WTPMonthOfAnyYear##' +FROM MonthOfAnyYear; +-- End Section Extract Data + +-- Section Local Data Removal +TRUNCATE GREETWellToPumpBounds; +TRUNCATE GREETWellToPumpLo; +TRUNCATE GREETWellToPumpHi; +TRUNCATE WTPFactor; +TRUNCATE WTPFactorByFuelType; +-- End Section Local Data Removal + +-- Section Processing +DROP TABLE IF EXISTS MOVESOutputTemp; + +CREATE TABLE MOVESOutputTemp +SELECT + mwo.MOVESRunID, mwo.yearID, mwo.monthID, mwo.dayID, + mwo.hourID,mwo.stateID,mwo.countyID,mwo.zoneID, + mwo.linkID,wfft.pollutantID,99 AS processID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID, + mwo.roadTypeID,mwo.SCC, + SUM(mwo.emissionQuant) * wfft.WTPFactor AS emissionQuant +FROM + MOVESWorkerOutput mwo, WTPFactorByFuelType wfft, WTPMonthOfAnyYear may +WHERE + wfft.countyID = mwo.countyID AND + wfft.yearID = mwo.yearID AND + may.monthID = mwo.monthID AND + wfft.monthGroupID = may.monthGroupID AND + mwo.pollutantID = 91 AND + mwo.fuelTypeID = wfft.fuelTypeID AND + mwo.processID <> 99 +GROUP BY + mwo.MOVESRunID,mwo.yearID,mwo.monthID,mwo.dayID, mwo.hourID, + mwo.stateID,mwo.countyID,mwo.zoneID,mwo.linkID,wfft.pollutantID, + mwo.sourceTypeID,mwo.fuelTypeID,mwo.modelYearID,mwo.roadTypeID, + mwo.SCC; + +INSERT INTO MOVESWorkerOutput ( + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant) +SELECT + MOVESRunID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID, + linkID,pollutantID,processID,sourceTypeID,fuelTypeID,modelYearID, + roadTypeID,SCC,emissionQuant +FROM + MOVESOutputTemp; +-- End Section Processing + +-- Section Cleanup +DROP TABLE IF EXISTS MOVESOutputTemp; +-- End Section Cleanup diff --git a/database/ZoneImporter.sql b/database/ZoneImporter.sql new file mode 100644 index 0000000..76e60fe --- /dev/null +++ b/database/ZoneImporter.sql @@ -0,0 +1,164 @@ +-- Author Wesley Faler +-- Author Don Smith +-- Version 2014-04-08 + +drop procedure if exists spCheckZoneImporter; + +BeginBlock +create procedure spCheckZoneImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + -- Scale 0 is national + -- Scale 1 is single county + -- Scale 2 is project domain + declare scale int default ##scale##; + + -- Rate 0 is Inventory + -- Rate 1 is Rates + declare rate int default ##rate##; + + declare desiredAllocFactor double default 1; + declare howManyZones int default 0; + + -- Build links for imported zones but not for the Project domain (scale=2) + if(scale <> 2) then + delete from Link; + + insert ignore into Link (linkID, countyID, zoneID, roadTypeID) + select (z.zoneID*10 + roadTypeID) as linkID, z.countyID, z.zoneID, roadTypeID + from ##defaultDatabase##.roadType, Zone z; + end if; + + -- Complain if alloc factors are not 1.0. + set howManyZones=0; + select count(*) into howManyZones from Zone z inner join County c on c.countyID=z.countyID; + set howManyZones=ifnull(howManyZones,0); + if(howManyZones > 0) then + set desiredAllocFactor = 1.0; + else + insert into importTempMessages (message) + select concat('ERROR: No Zones imported for County ',countyID) as errorMessage + from County; + end if; + + insert into importTempMessages (message) + select concat('ERROR: Zone startAllocFactor is not ',round(desiredAllocFactor,4),' but instead ',round(sum(startAllocFactor),4)) as errorMessage + from Zone + having round(sum(startAllocFactor),4) <> round(desiredAllocFactor,4); + + insert into importTempMessages (message) + select concat('ERROR: Zone idleAllocFactor is not ',round(desiredAllocFactor,4),' but instead ',round(sum(idleAllocFactor),4)) as errorMessage + from Zone + having round(sum(idleAllocFactor),4) <> round(desiredAllocFactor,4); + + insert into importTempMessages (message) + select concat('ERROR: Zone SHPAllocFactor is not ',round(desiredAllocFactor,4),' but instead ',round(sum(SHPAllocFactor),4)) as errorMessage + from Zone + having round(sum(SHPAllocFactor),4) <> round(desiredAllocFactor,4); + + insert into importTempMessages (message) + select concat('ERROR: Road type ',roadTypeID,' SHOAllocFactor is not ',round(desiredAllocFactor,4),' but instead ',round(sum(SHOAllocFactor),4)) as errorMessage + from ZoneRoadType + group by roadTypeID + having round(sum(SHOAllocFactor),4) <> round(desiredAllocFactor,4); + + -- Complain if sums exceed 1.0000 + insert into importTempMessages (message) + select concat('ERROR: Zone startAllocFactor exceeds 1.0, being instead ',round(sum(startAllocFactor),4)) as errorMessage + from Zone + having round(sum(startAllocFactor),4) > 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone idleAllocFactor exceeds 1.0, being instead ',round(sum(idleAllocFactor),4)) as errorMessage + from Zone + having round(sum(idleAllocFactor),4) > 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone SHPAllocFactor exceeds 1.0, being instead ',round(sum(SHPAllocFactor),4)) as errorMessage + from Zone + having round(sum(SHPAllocFactor),4) > 1.0000; + + insert into importTempMessages (message) + select concat('ERROR: Road type ',roadTypeID,' SHOAllocFactor exceeds 1.0, being instead ',round(sum(SHOAllocFactor),4)) as errorMessage + from ZoneRoadType + group by roadTypeID + having round(sum(SHOAllocFactor),4) > 1.0000; + + -- Complain if sums are 0.0 or less + insert into importTempMessages (message) + select concat('ERROR: Zone startAllocFactor should not be zero, being instead ',round(sum(startAllocFactor),4)) as errorMessage + from Zone + having round(sum(startAllocFactor),4) <= 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone idleAllocFactor should not be zero, being instead ',round(sum(idleAllocFactor),4)) as errorMessage + from Zone + having round(sum(idleAllocFactor),4) <= 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone SHPAllocFactor should not be zero, being instead ',round(sum(SHPAllocFactor),4)) as errorMessage + from Zone + having round(sum(SHPAllocFactor),4) <= 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Road type ',roadTypeID,' SHOAllocFactor should not be zero, being instead ',round(sum(SHOAllocFactor),4)) as errorMessage + from ZoneRoadType + group by roadTypeID + having round(sum(SHOAllocFactor),4) <= 0.0000; + + -- Complain about negative allocation factors + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,' startAllocFactor is negative, being ',round(startAllocFactor,4)) as errorMessage + from Zone + where round(startAllocFactor,4) < 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,' idleAllocFactor is negative, being ',round(idleAllocFactor,4)) as errorMessage + from Zone + where round(idleAllocFactor,4) < 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,' SHPAllocFactor is negative, being ',round(SHPAllocFactor,4)) as errorMessage + from Zone + where round(SHPAllocFactor,4) < 0.0000; + + insert into importTempMessages (message) + select concat('ERROR: Zone ',zoneID,' Road type ',roadTypeID,' SHOAllocFactor is negative, being ',round(SHOAllocFactor,4)) as errorMessage + from ZoneRoadType + where round(SHOAllocFactor,4) < 0.0000; + + -- ZoneRoadType table should not be empty + insert into importTempMessages (message) + select concat('ERROR: ZoneRoadType references ',zrtZoneCount,' zones but should reference ',zoneCount,' instead') as errorMessage + from ( + select (select count(*) from zone) as zoneCount, + (select count(distinct zoneID) + from zoneRoadType + inner join zone using (zoneID)) as zrtZoneCount + ) T + where zoneCount <> zrtZoneCount; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: %'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; + +end +EndBlock + +call spCheckZoneImporter(); +drop procedure if exists spCheckZoneImporter; diff --git a/database/ZoneRoadTypeImporter.sql b/database/ZoneRoadTypeImporter.sql new file mode 100644 index 0000000..ce466cc --- /dev/null +++ b/database/ZoneRoadTypeImporter.sql @@ -0,0 +1,38 @@ +-- Author Wesley Faler +-- Version 2009-12-05 + +drop procedure if exists spCheckZoneRoadTypeImporter; + +BeginBlock +create procedure spCheckZoneRoadTypeImporter() +begin + -- Mode 0 is run after importing + -- Mode 1 is run to check overall success/failure + declare mode int default ##mode##; + declare isOk int default 1; + declare howMany int default 0; + + insert into importTempMessages (message) + select concat('ERROR: Road type ',roadTypeID,' SHOAllocFactor is not 1.0 but instead ',round(sum(SHOAllocFactor),4)) as errorMessage + from ZoneRoadType + group by roadTypeID + having round(sum(SHOAllocFactor),4) <> 1.0000; + + if(isOk=1) then + set howMany=0; + select count(*) into howMany from importTempMessages where message like 'ERROR: Road type%'; + set howMany=ifnull(howMany,0); + if(howMany > 0) then + set isOk=0; + end if; + end if; + + -- Insert 'NOT_READY' or 'OK' to indicate iconic success + if(mode = 1) then + insert into importTempMessages (message) values (case when isOk=1 then 'OK' else 'NOT_READY' end); + end if; +end +EndBlock + +call spCheckZoneRoadTypeImporter(); +drop procedure if exists spCheckZoneRoadTypeImporter; diff --git a/gov/epa/otaq/gis/api/GISException.java b/gov/epa/otaq/gis/api/GISException.java new file mode 100644 index 0000000..ae37cfa --- /dev/null +++ b/gov/epa/otaq/gis/api/GISException.java @@ -0,0 +1,64 @@ +/************************************************************************************************** + * @(#)GISException.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +/** + * Exception class for GIS-related issues + * + * @author Wesley Faler + * @version 2008-05-03 +**/ +public class GISException extends Exception { + /** + * Constructs a new exception with null as its detail message. + **/ + public GISException() { + super(); + } + + /** + * Constructs a new exception with the specified detail message. The cause is not initialized, + * and may subsequently be initialized by a call to Throwable.initCause(java.lang.Throwable). + * @param message the detail message. The detail message is saved for later retrieval by the + * Throwable.getMessage() method. + **/ + public GISException(String message) { + super(message); + } + + /** + * Constructs a new exception with the specified detail message and cause. + * Note that the detail message associated with cause is not automatically incorporated in this + * exception's detail message. + * @param message the detail message which is saved for later retrieval by the + * getMessage() method. + * @param cause the cause (which is saved for later retrieval by the Throwable.getCause() + * method). A null value is permitted, and indicates that the cause is nonexistent or unknown. + **/ + public GISException(String message, Throwable cause) { + super(message,cause); + } + + /** + * Constructs a new exception with the specified cause and a detail message from the cause, + * if provided. This constructor is useful for exceptions that are little more than + * wrappers for other throwables (for example, PrivilegedActionException). + * @param cause the cause (which is saved for later retrieval by the Throwable.getCause() + * method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.) + **/ + public GISException(Throwable cause) { + super(cause); + } + + /** + * Obtain human readable text + * @return human readable error message + **/ + public String toString() { + return getMessage(); + } +} diff --git a/gov/epa/otaq/gis/api/GeoToolsTest.java b/gov/epa/otaq/gis/api/GeoToolsTest.java new file mode 100644 index 0000000..914408e --- /dev/null +++ b/gov/epa/otaq/gis/api/GeoToolsTest.java @@ -0,0 +1,736 @@ +/************************************************************************************************** + * @(#)GeoToolsTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +import junit.framework.*; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.Rectangle; +import java.awt.image.BufferedImage; +import java.awt.RenderingHints; +import java.io.*; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.*; + +import javax.imageio.ImageIO; +//import javax.units.SI; + +//import org.geotools.catalog.*; +//import org.geotools.catalog.defaults.*; +import org.opengis.feature.simple.*; +import org.opengis.feature.type.*; + +import org.geotools.factory.*; +import org.geotools.data.*; +import org.geotools.data.shapefile.*; +import org.geotools.feature.*; +import org.geotools.geometry.jts.*; +import org.geotools.map.*; +import org.geotools.renderer.GTRenderer; +import org.geotools.renderer.lite.StreamingRenderer; +import org.geotools.referencing.crs.DefaultGeographicCRS; +import org.geotools.referencing.operation.*; +import org.geotools.referencing.factory.*; +import org.geotools.filter.*; +import org.opengis.referencing.*; +import org.opengis.referencing.crs.*; +import org.opengis.referencing.cs.*; +import org.opengis.referencing.operation.*; +import org.opengis.parameter.*; +import org.geotools.styling.*; +import com.vividsolutions.jts.geom.*; + +/* +import org.geotools.catalog.GeoResource; +import org.geotools.catalog.Service; +import org.geotools.catalog.defaults.DefaultServiceFinder; +import org.geotools.data.FeatureSource; +import org.geotools.data.postgis.PostgisDataStoreFactory; +import org.geotools.data.shapefile.ShapefileDataStoreFactory; +import org.geotools.data.wfs.WFSDataStoreFactory; +import org.geotools.demo.mappane.MapViewer; +import org.geotools.feature.AttributeType; +import org.geotools.feature.AttributeTypeFactory; +import org.geotools.feature.SimpleFeature; +import org.geotools.feature.FeatureCollection; +import org.geotools.feature.FeatureCollections; +import org.geotools.feature.FeatureType; +import org.geotools.feature.FeatureTypes; +import org.geotools.feature.GeometryAttributeType; +import org.geotools.feature.IllegalAttributeException; +import org.geotools.feature.SchemaException; +import org.geotools.geometry.jts.ReferencedEnvelope; +import org.geotools.map.DefaultMapLayer; +import org.geotools.map.MapLayer; +import org.geotools.referencing.FactoryFinder; +import org.geotools.referencing.crs.DefaultGeographicCRS; +import org.geotools.referencing.factory.FactoryGroup; +import org.geotools.referencing.operation.DefaultMathTransformFactory; +import org.geotools.referencing.operation.DefiningConversion; +import org.geotools.styling.Graphic; +import org.geotools.styling.Mark; +import org.geotools.styling.SLDParser; +import org.geotools.styling.Style; +import org.geotools.styling.StyleBuilder; +import org.geotools.styling.StyleFactory; +import org.geotools.styling.StyleFactoryFinder; +import org.geotools.styling.Symbolizer; +import org.opengis.parameter.ParameterValueGroup; +import org.opengis.referencing.FactoryException; +import org.opengis.referencing.IdentifiedObject; +import org.opengis.referencing.NoSuchIdentifierException; +import org.opengis.referencing.crs.CoordinateReferenceSystem; +import org.opengis.referencing.cs.AxisDirection; +import org.opengis.referencing.cs.CSFactory; +import org.opengis.referencing.cs.CartesianCS; +import org.opengis.referencing.cs.CoordinateSystemAxis; +import org.opengis.referencing.operation.Conversion; + +import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.Envelope; +import com.vividsolutions.jts.geom.GeometryFactory; +import com.vividsolutions.jts.geom.Point; + +import java.awt.Color; +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +import org.geotools.catalog.Catalog; +import org.geotools.catalog.GeoResource; +import org.geotools.catalog.Service; +import org.geotools.catalog.defaults.DefaultCatalog; +import org.geotools.catalog.defaults.DefaultServiceFinder; +import org.geotools.data.FeatureSource; +import org.geotools.data.memory.MemoryDataStore; +import org.geotools.data.postgis.PostgisDataStoreFactory; +import org.geotools.data.shapefile.ShapefileDataStoreFactory; +import org.geotools.data.wfs.WFSDataStoreFactory; +import org.geotools.demo.mappane.MapViewer; +import org.geotools.feature.AttributeType; +import org.geotools.feature.AttributeTypeFactory; +import org.geotools.feature.SimpleFeature; +import org.geotools.feature.FeatureType; +import org.geotools.feature.FeatureTypes; +import org.geotools.feature.GeometryAttributeType; +import org.geotools.feature.IllegalAttributeException; +import org.geotools.feature.SchemaException; +import org.geotools.styling.Graphic; +import org.geotools.styling.Mark; +import org.geotools.styling.SLDParser; +import org.geotools.styling.Style; +import org.geotools.styling.StyleBuilder; +import org.geotools.styling.StyleFactory; +import org.geotools.styling.StyleFactoryFinder; +import org.geotools.styling.Symbolizer; + +import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.GeometryFactory; +import com.vividsolutions.jts.geom.Point; +*/ + +/** + * This class tests the interface to GeoTools + * + * @author Wesley Faler + * @version 2009-04-15 +**/ +public class GeoToolsTest extends TestCase { + /** + * Filter a set of shapes/features selecting only the states or counties desired. + **/ + static class StateCountyFilter { + protected int stateAttributeIndex = -1; + protected int countyAttributeIndex = -1; + + protected TreeSet acceptableStateCountyValues = new TreeSet(); + protected FeatureSource fs = null; + protected boolean filterByCounty = true; + + public StateCountyFilter(FeatureSource fsToUse, + boolean filterByCountyToUse) { + fs = fsToUse; + filterByCounty = filterByCountyToUse; + try { + SimpleFeatureType schema = null; + List attributeTypes = null; + FeatureCollection features = fs.getFeatures(); + Iterator fi = features.iterator(); + try { + if(fi.hasNext()) { + SimpleFeature feature = (SimpleFeature) fi.next(); + schema = feature.getFeatureType(); + attributeTypes = schema.getTypes(); + } + } finally { + features.close(fi); + } + int index = 0; + for(Iterator i=attributeTypes.iterator();i.hasNext();index++) { + String name = i.next().getName().toString(); + if(name.equalsIgnoreCase("STATE")) { + stateAttributeIndex = index; + } else if(filterByCounty && name.equalsIgnoreCase("COUNTY")) { + countyAttributeIndex = index; + } + } + } catch(Exception e) { + System.out.println(e.toString()); + e.printStackTrace(); + } + } + + public void allow(String value) { + if(!filterByCounty && value.length() > 2) { + value = value.substring(0,2); + } + acceptableStateCountyValues.add(value); + } + + public FeatureCollection filter() { + FeatureCollection results = + FeatureCollections.newCollection(); + try { + FeatureCollection features = fs.getFeatures(); + Iterator fi = features.iterator(); + try { + while(fi.hasNext()) { + SimpleFeature feature = (SimpleFeature) fi.next(); + if(contains(feature)) { + results.add(feature); + } + } + } finally { + features.close(fi); + } + } catch(Exception e) { + /** + * @recur + * @nonissue + **/ + System.out.println(e.toString()); + e.printStackTrace(); + } + return results; + } + + public boolean contains(SimpleFeature feature) { + String state = "", county = ""; + if(stateAttributeIndex >= 0) { + state = feature.getAttribute(stateAttributeIndex).toString().trim(); + } + if(countyAttributeIndex >= 0) { + county = feature.getAttribute(countyAttributeIndex).toString().trim(); + } + return acceptableStateCountyValues.contains(state+county); + } + } + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public GeoToolsTest(String name) { + super(name); + } + + /** + * Create a URL file a file name + * @param target name of a file + * @return URL to the passed file or null if the file doesn't exist + **/ + public static URL acquireURL(String target) { + File targetFile = new File(target); + if(targetFile.exists()) { + try { + return targetFile.toURI().toURL(); + } catch (MalformedURLException e) { + // Nothing to do here + } + } + return null; + /* + try { + return new URL(target); + } catch (MalformedURLException e) { + return null; + } + */ + } + + /** + * Helper function to copy a file to destination file. + * @param sourceFilePath The file to copy. + * @param destinationFilePath The destination File to copy the file to. + * @param overWrite Indicates if the destination should be overwritten. + * @return True if copied. + **/ + public static boolean copyFile(File sourceFilePath, File destinationFilePath, + boolean overWrite) { + FileInputStream fileIn = null; + FileOutputStream fileOut = null; + byte[] buffer = new byte[4096]; + try { + if(destinationFilePath.exists() && !overWrite) { + return false; + } + fileIn = new FileInputStream(sourceFilePath); + destinationFilePath.delete(); + destinationFilePath.createNewFile(); + fileOut = new FileOutputStream(destinationFilePath); + int howManyRead = 0; + while((howManyRead = fileIn.read(buffer)) > 0) { + fileOut.write(buffer,0,howManyRead); + } + } catch(Exception e) { + return false; + } finally { + if(fileOut != null) { + try { + fileOut.close(); + } catch(Exception e) { + // Nothing to do here + } + fileOut = null; + } + if(fileIn != null) { + try { + fileIn.close(); + } catch(Exception e) { + // Nothing to do here + } + fileIn = null; + } + } + return true; + } + + /** + * Copy a file of the form "test_basename.ext" to "basename.ext", deleting + * any destination file that may already exist. + * @param pathName path and file name of the base file. + **/ + boolean copyTestFile(String pathName) { + File destinationFile = new File(pathName); + File testFile = new File(destinationFile.getParentFile(),"test_" + destinationFile.getName()); + if(destinationFile.exists()) { + destinationFile.delete(); + } + + return copyFile(testFile,destinationFile,true); + } + + /** + * Generate an image file with state outlines, some county outlines, and a colored county. + **/ + public void testStatesWithCounties() throws Exception { + final String countyShapeFileName = "libs/geotools/co99_d00.shp"; + final String stateShapeFileName = "libs/geotools/st99_d00.shp"; + + String pathName = countyShapeFileName; + URL countyShape = acquireURL(pathName); + assertNotNull("could not find county shapefile " + pathName,countyShape); + String filepart = pathName.substring(0, pathName.lastIndexOf(".")); + pathName = filepart + ".sld"; + assertTrue("Unable to copy test SLD " + pathName,copyTestFile(pathName)); + URL countySLD = acquireURL( pathName ); + assertNotNull("could not find county sld " + pathName); + + pathName = stateShapeFileName; + URL stateShape = acquireURL(pathName); + assertNotNull("could not find state shapefile " + pathName,stateShape); + filepart = pathName.substring(0, pathName.lastIndexOf(".")); + pathName = filepart + ".sld"; + assertTrue("Unable to copy test SLD " + pathName,copyTestFile(pathName)); + URL stateSLD = acquireURL(pathName); + assertNotNull("could not find state sld " + pathName); + + try { + MapContext context = new DefaultMapContext(DefaultGeographicCRS.WGS84); + + ShapefileDataStore countyDataSource = new ShapefileDataStore(countyShape); + FeatureSource countyFeatureSource = + countyDataSource.getFeatureSource(); + + StyleFactory styleFactory = CommonFactoryFinder.getStyleFactory(null); + SLDParser styleReader = new SLDParser(styleFactory,countySLD); + org.geotools.styling.Style[] countyStyles = styleReader.readXML(); + + ShapefileDataStore stateDataSource = new ShapefileDataStore(stateShape); + FeatureSource stateFeatureSource = + stateDataSource.getFeatureSource(); + + styleReader = new SLDParser(styleFactory,stateSLD); + org.geotools.styling.Style[] stateStyles = styleReader.readXML(); + + StateCountyFilter stateFilter = new StateCountyFilter(stateFeatureSource,false); + StateCountyFilter countyFilter = new StateCountyFilter(countyFeatureSource,true); + + stateFilter.allow("26161"); + countyFilter.allow("26161"); + countyFilter.allow("26065"); + countyFilter.allow("26093"); + countyFilter.allow("26125"); + countyFilter.allow("26163"); + /* + stateFilter.allow("17"); + stateFilter.allow("18161"); + countyFilter.allow("18161"); + */ + + context.addLayer(stateFilter.filter(),stateStyles[0]); + context.addLayer(countyFilter.filter(),countyStyles[0]); + + ReferencedEnvelope layerBounds = context.getLayerBounds(); + //System.out.println("layerBounds=" + layerBounds); + ReferencedEnvelope usaEnvelope = new ReferencedEnvelope(-179.0,-60,17,72, DefaultGeographicCRS.WGS84); + ReferencedEnvelope displayEnvelope = layerBounds; + // Clip displayEnvelope so it is always displayable within the USA boundaries + displayEnvelope = new ReferencedEnvelope(displayEnvelope.intersection(usaEnvelope),DefaultGeographicCRS.WGS84); + // Ensure there is a border so that labels can always be drawn + displayEnvelope.expandBy(displayEnvelope.getWidth()*0.05,displayEnvelope.getHeight()*0.025); + + GTRenderer renderer = new StreamingRenderer(); + //renderImage(context,renderer,displayEnvelope,"png","testdata/gisBasics.png"); + renderImage(context,renderer,displayEnvelope,"jpg","testdata/gisStatesAndCounties.jpg"); + //GIF doesn't work, so use JPG renderImage(context,renderer,displayEnvelope,"gif","testdata/gisBasics.gif"); + } catch(Exception e) { + System.out.println(e.toString()); + e.printStackTrace(); + throw e; + //fail("Unable to test"); + } + } + + /** + * Generate an image with just counties. + **/ + public void testBasics() throws Exception { + final String SHAPEFILENAME = "libs/geotools/co99_d00.shp"; + + String pathname = SHAPEFILENAME; + URL shape = acquireURL( pathname ); + assertNotNull("could not find shapefile " + pathname,shape); + String filepart = pathname.substring(0, pathname.lastIndexOf(".")); + URL sld = acquireURL( filepart+".sld" ); + assertNotNull("could not find sld " + filepart + ".sld"); + try { + ShapefileDataStore ds = new ShapefileDataStore(shape); + + FeatureSource fs = ds.getFeatureSource(); + com.vividsolutions.jts.geom.Envelope env = fs.getBounds(); + assertNotNull("env was null",env); + /** @nonissue **/ + System.out.println("loadAndTest.env=" + env.toString()); + + /* + FeatureType schema = null; + AttributeType[] attributeTypes = null; + FeatureCollection features = fs.getFeatures(); + assertNotNull("features was null",features); + Iterator fi = features.iterator(); + try { + for(int count=0;count<5 && fi.hasNext();count++) { + SimpleFeature feature = (SimpleFeature) fi.next(); + if(schema == null) { + schema = feature.getFeatureType(); + //System.out.println("schema.getTypeName()=\"" + schema.getTypeName() + "\""); + attributeTypes = schema.getAttributeTypes(); + } + // Print features and their attributes, used for debugging + S ystem.out.println("SimpleFeature: " + feature.getID()); + int attributeCount = feature.getNumberOfAttributes(); + for(int ai=1;ai filteredFeatures = filter.filter(); + context.addLayer(filteredFeatures,style[0]); + ReferencedEnvelope layerBounds = context.getLayerBounds(); + ReferencedEnvelope displayEnvelope = layerBounds; + // Clip displayEnvelope so it is always displayable within the USA boundaries + if(displayEnvelope != usaEnvelope) { + displayEnvelope = new ReferencedEnvelope(displayEnvelope.intersection(usaEnvelope),DefaultGeographicCRS.WGS84); + // Ensure there is a border so that labels can always be drawn + displayEnvelope.expandBy(displayEnvelope.getWidth()*0.05,displayEnvelope.getHeight()*0.025); + } + GTRenderer renderer = new StreamingRenderer(); + //renderImage(context,renderer,displayEnvelope,"png","testdata/gisBasics.png"); + renderImage(context,renderer,displayEnvelope,"jpg","testdata/gisBasics.jpg"); + //GIF doesn't work, so use JPG renderImage(context,renderer,displayEnvelope,"gif","testdata/gisBasics.gif"); + } catch(Exception e) { + System.out.println(e.toString()); + e.printStackTrace(); + throw e; + //fail("Unable to test"); + } + } + + /** + * Create an image from a GIS map and store it to disk. + * @param context a GIS map of state, counties, or both. context has already been filtered and styled. + * @param renderer the Renderer that will do the actual display + * @param envelope the area to be displayed + * @param imageType "png" or "jpg" + * @param imageFileName name of the image file to be created, including the file extension + **/ + public void renderImage(MapContext context, GTRenderer renderer, Envelope envelope, + String imageType, String imageFileName) { + final int w = 1024; + final int h = 768; + BufferedImage image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB); + Graphics2D g = image.createGraphics(); + try{ + g.setColor(Color.white); + g.fillRect(0,0,w,h); + + renderer.setContext(context); + + /* Do not antialias as this would complicate manual recoloring of generated images + RenderingHints hints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON ); + renderer.setJava2DHints(hints); + */ + + Map rendererParams = new HashMap(); + rendererParams.put("optimizedDataLoadingEnabled",new Boolean(true)); + renderer.setRendererHints(rendererParams); + + renderer.paint(g, new Rectangle(0,0,w,h), envelope); + + //Color[] spectrum = generateFireSpectrum(256); + Color[] spectrum = generateGraySpectrum(256); + int spectrumWidth = 30; + drawVerticalSpectrum(g,spectrum,50,w-spectrumWidth-2,spectrumWidth,256*2); + //ImageIO.write(image, "png", new File("testdata/gtdemo-image.png")); + ImageIO.write(image, imageType, new File(imageFileName)); + } catch (IOException ioex) { + System.err.println("IO Exception on image file write: "+ ioex); + ioex.printStackTrace(); + } catch(Exception e) { + System.err.println("Exception: " + e); + e.printStackTrace(); + } catch(Error e) { + System.err.println("Error: " + e); + e.printStackTrace(); + } finally { + g.dispose(); + } + } + + /** + * Display a spectrum vertically + * @param g canvas to draw upon + * @param spectrum array of Color objects to be drawn + * @param top topmost row to draw on the canvas, these are the last entries in the spectrum + * @param left leftmost column of the spectrum display + * @param width number of columns on the canvas + * @param height number of rows on the canvas for the whole spectrum. + **/ + public static void drawVerticalSpectrum(Graphics2D g, Color[] spectrum, + int top, int left, int width, int height) { + double dy = (double)height / (double)(spectrum.length); + double y = top; + for(int i=spectrum.length-1;i>=0;i--,y+=dy) { + g.setColor(spectrum[i]); + g.fillRect(left,(int)y,width,1+(int)dy); + } + } + + /** + * Generate the Red/Green/Blue values for a color given a Hue/Saturation/Value. + * From http://en.wikipedia.org/wiki/HSV_color_space#From_HSV_to_RGB + * @param hsv input HSV values, [0] is H, [1] S, and [2] V. + * @param rgb output RGB values, [0] is R, [1] G, and [2] B. + **/ + public static void convertHSVtoRGB(float[] hsv,float[] rgb) { + while(hsv[0] >= 1) { + hsv[0] -= 1; + } + while(hsv[0] < 0) { + hsv[0] += 1; + } + int hi = ((int)(hsv[0]*360/60)) % 6; + float f = (float)((hsv[0]*360/60) - hi); + float p = (float)(hsv[2]*(1.0-hsv[1])); + float q = (float)(hsv[2]*(1.0-f*hsv[1])); + float t = (float)(hsv[2]*(1.0-(1.0-f)*hsv[1])); + + switch(hi) { + case 0: + rgb[0] = hsv[2]; rgb[1] = t; rgb[2] = p; + break; + case 1: + rgb[0] = q; rgb[1] = hsv[2]; rgb[2] = p; + break; + case 2: + rgb[0] = p; rgb[1] = hsv[2]; rgb[2] = t; + break; + case 3: + rgb[0] = p; rgb[1] = q; rgb[2] = hsv[2]; + break; + case 4: + rgb[0] = t; rgb[1] = p; rgb[2] = hsv[2]; + break; + case 5: + rgb[0] = hsv[2]; rgb[1] = p; rgb[2] = q; + break; + } + } + + /** + * Create a popular color palette known as the "fire palette". Taken from + * http://vis.iu.edu/Publications/Storm.pdf, figure 5, page 7. The lower + * portion of the spectrum is dropped for aesthetic reasons. + * @param howManyBins the number of different colors desired. + * @return an array of Color objects spaced evenly through the spectrum. The + * lowest entry has the "coolest" color. + **/ + public static Color[] generateFireSpectrum(int howManyBins) { + Color[] spectrum = new Color[howManyBins]; + float[] hsv = new float[3]; + float[] rgb = new float[3]; + final double skippedSection = 0.125; + final double usedSection = 1.0-skippedSection; + for(int i=0;i 0); + //ImageUtility.print(image); + } +} diff --git a/gov/epa/otaq/gis/api/ImageUtility.java b/gov/epa/otaq/gis/api/ImageUtility.java new file mode 100644 index 0000000..c0c4692 --- /dev/null +++ b/gov/epa/otaq/gis/api/ImageUtility.java @@ -0,0 +1,179 @@ +/************************************************************************************************** + * @(#)ImageUtility.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +import java.awt.*; +import java.awt.image.BufferedImage; +import java.awt.RenderingHints; +import java.awt.geom.AffineTransform; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import java.io.*; + +import javax.imageio.ImageIO; +//import javax.units.SI; + +import java.awt.print.*; +import javax.print.*; +import javax.print.attribute.*; +import javax.print.attribute.standard.*; + +/** + * Utilities for images, including saving to files, printing, and display. + * + * @author Wesley Faler + * @version 2009-04-15 +**/ +public class ImageUtility { + /** + * Create a JPG format image file + * @param image map image from the render() routine + * @param fileName name and path of the image to create, including the ".jpg" extension + * @throws IOException if unable to write the image + **/ + public static void saveJPG(BufferedImage image, String fileName) throws IOException { + ImageIO.write(image, "jpg", new File(fileName)); + } + + /** + * Create a PNG format image file + * @param image map image from the render() routine + * @param fileName name and path of the image to create, including the ".png" extension + * @throws IOException if unable to write the image + **/ + public static void savePNG(BufferedImage image, String fileName) throws IOException { + ImageIO.write(image, "png", new File(fileName)); + } + + /** Utility class for image print jobs **/ + static class ImagePrinter implements Printable { + BufferedImage image; + + public ImagePrinter(BufferedImage imageToUse) { + image = imageToUse; + } + + public int print(Graphics g, PageFormat pageFormat, int pageIndex) { + if(pageIndex > 0) { + return Printable.NO_SUCH_PAGE; + } + Graphics2D g2d = (Graphics2D)g; + + //Set us to the upper left corner + g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); + AffineTransform at = new AffineTransform(); + at.translate(0,0); + + //We need to scale the image properly so that it fits on one page. + double xScale = pageFormat.getImageableWidth() / image.getWidth(); + double yScale = pageFormat.getImageableHeight() / image.getHeight(); + // Maintain the aspect ratio by taking the min of those 2 factors and + // using it to scale both dimensions. + double aspectScale = Math.min(xScale,yScale); + at.scale(aspectScale,aspectScale); + + g2d.drawRenderedImage(image,at); + return Printable.PAGE_EXISTS; + } + } + + /** + * Print an image + * @param image image to be printed + **/ + public static void print(BufferedImage image) throws Exception { + ImagePrinter printable = new ImagePrinter(image); + PrinterJob printJob = PrinterJob.getPrinterJob(); + printJob.setPrintable(printable); + if(printJob.printDialog()) { + printJob.print(); + } + } + + /** Utility class for displaying an image **/ + public static class ImagePanel extends JPanel { + public BufferedImage image; + public Dimension preferredSize; + public Dimension imageSize; + + public ImagePanel(BufferedImage imageToUse) { + setup(imageToUse,null); + setupMouseScrolling(); + } + + public ImagePanel(BufferedImage imageToUse, Dimension preferredSizeToUse) { + setup(imageToUse,preferredSizeToUse); + setupMouseScrolling(); + } + + void setupMouseScrolling() { + MouseInputAdapter mouse = new MouseInputAdapter() { + int dx, dy; + + public void mouseDragged(MouseEvent e) { + Container c = getParent(); + if(c instanceof JViewport) { + JViewport jv = (JViewport)c; + Point p = jv.getViewPosition(); + int nx = p.x - (e.getX() - dx); + int ny = p.y - (e.getY() - dy); + int maxX = getWidth() - jv.getWidth(); + int maxY = getHeight() - jv.getHeight(); + if(nx < 0) { + nx = 0; + } else if(nx > maxX) { + nx = maxX; + } + if(ny < 0) { + ny = 0; + } else if(ny > maxY) { + ny = maxY; + } + jv.setViewPosition(new Point(nx,ny)); + } + } + + public void mousePressed(MouseEvent e) { + setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR)); + dx = e.getX(); + dy = e.getY(); + } + + public void mouseReleased(MouseEvent e) { + setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); + } + }; + + addMouseMotionListener(mouse); + addMouseListener(mouse); + } + + public void setup(BufferedImage imageToUse, Dimension preferredSizeToUse) { + image = imageToUse; + if(image != null) { + if(preferredSizeToUse != null) { + preferredSize = preferredSizeToUse; + } else { + preferredSize = new Dimension(image.getWidth(),image.getHeight()); + } + setPreferredSize(preferredSize); + imageSize = new Dimension(image.getWidth(),image.getHeight()); + } + } + + public void paintComponent(Graphics graphics) { + super.paintComponent(graphics); + if(image != null) { + if(imageSize == null) { + imageSize = new Dimension(image.getWidth(),image.getHeight()); + } + graphics.drawImage(image,0,0,(int)imageSize.getWidth(),(int)imageSize.getHeight(),null); + } + } + } +} diff --git a/gov/epa/otaq/gis/api/Scale.java b/gov/epa/otaq/gis/api/Scale.java new file mode 100644 index 0000000..e9ce1b1 --- /dev/null +++ b/gov/epa/otaq/gis/api/Scale.java @@ -0,0 +1,413 @@ +/************************************************************************************************** + * @(#)Scale.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.FontMetrics; +import java.awt.geom.Rectangle2D; +import java.text.*; + +/** + * Hold the coloration bins for a rendered image. Each bin, or range of data values, + * is represented by a center point, a color, an optional text label, and (except + * for the highest bin) a maximum value.
    + * Two constructors are provided. A convenience constructor creates a linear gradient + * while a simpler constructor does only basic initialization. When using the basic + * constructor, the user must:
    + *
      + *
    • fill binCenters with the displayable value for each bin. binCenters is not + * used when correlating colors and bins but is used when generating display text.
    • + *
    • fill binMaximums with the maximum, inclusive, value of each bin. The highest + * bin does not have a binMaximums entry, thus there are only binCount-1 of these entries.
    • + *
    • fill binColors with Color objects for each bin.
    • + *
    • optionally create and fill binLabels with a String for each bin. If binLabels is + * left null then labels will be created automatically upon the first lookup of value to + * Color. If not null, then entries will be displayed as set with null entries shown as + * blank strings.
    • + *
    + * + * @author Wesley Faler + * @version 2008-05-03 +**/ +public class Scale { + /** true if the user's Min/Max should be used as centers of the lower and upper bins **/ + private static final boolean binsShowMinMax = false; + /** enumeration for the popular color palette known as "Fire" **/ + public static final int PALETTE_FIRE = 1; + /** enumeration for a gray-scale palette **/ + public static final int PALETTE_GRAY = 2; + + /** number of bins **/ + public int binCount = 0; + /** center point of each bin, binCount of these exist **/ + public double[] binCenters = null; + /** + * maximum bounds for each bin, binCount-1 of these exist. + * binMaximums[0] is the maximum value, inclusive, of the lowest bin. + **/ + public double[] binMaximums = null; + /** Color of each bin, binCount of these exist **/ + public Color[] binColors = null; + /** + * Text for each bin, binCount of these exist. If left null, labels will + * created automatically. If not null but entries are null then blank ("") + * text will be used. + **/ + public String[] binLabels = null; + + /** hex-notation of each bin color, binCount of these exist **/ + String[] binColorsHex = null; + + /** + * Basic constructor. The user must completely fill in binCenters, + * binMaximums, binColors, and optionally binLabels before using this Scale + * object to render a map. + * @param binCountToUse number of bins + **/ + public Scale(int binCountToUse) { + binCount = binCountToUse; + binCenters = new double[binCount]; + if(binCount == 1) { + binMaximums = new double[1]; + } else { + binMaximums = new double[binCount-1]; + } + binColors = new Color[binCount]; + binLabels = null; + } + + /** + * Convenience Constructor that generates a linear gradient + * @param binCountToUse number of bins + * @param minValue minimum data value to be represented + * @param maxValue maximum data value to be represented + * @param whichPalette one of the Scale.PALETTE_xxxxx enumerations + * @param useLabels true if label text should be displayed + **/ + public Scale(int binCountToUse,double minValue,double maxValue,int whichPalette, + boolean useLabels) { + if(minValue > maxValue) { + double t = minValue; + minValue = maxValue; + maxValue = t; + } + binCount = binCountToUse; + switch(whichPalette) { + default: + case PALETTE_FIRE: + binColors = generateFireSpectrum(binCount); + break; + case PALETTE_GRAY: + binColors = generateGraySpectrum(binCount); + break; + } + // Create binCenters and binMaximums + binCenters = new double[binCount]; + if(binCount == 1) { + binMaximums = new double[1]; + binMaximums[0] = maxValue; + binCenters[0] = (maxValue + minValue) / 2.0; + } else { + binMaximums = new double[binCount-1]; + if(binsShowMinMax) { + double step = (maxValue - minValue) / (double)(binCount-1); + double halfStep = step/2.0; + for(int i=0;i=0;i--,y+=dy) { + g.setColor(binColors[i]); + g.fillRect(left,(int)y,width,1+(int)dy); + if(y>=nextLabelY) { + Rectangle2D bounds = metrics.getStringBounds(binLabels[i],g); + nextLabelY = y + bounds.getHeight()*1.5; + g.setColor(Color.black); + g.drawString(binLabels[i],left-(int)(bounds.getWidth()+0.5)-2,(int)(y+bounds.getHeight())); + } + } + } + + /** + * Determine which bin a value falls within. + * @param value value to use + * @param binMaximums upper bounds of each bin + * @return 0-based index of the bin containing value. Always >= 0. + * Will be binMaximum.length if outside the upper value of binMaximums. + **/ + public static int binarySearch(double value,double[] binMaximums) { + if(binMaximums.length == 1) { + if(value <= binMaximums[0]) { + return 0; + } + return 1; + } else if(binMaximums.length == 2) { + if(value <= binMaximums[0]) { + return 0; + } else if(value <= binMaximums[1]) { + return 1; + } + return 2; + } + if(value > binMaximums[binMaximums.length-1]) { + return binMaximums.length; + } + int lowerIndex = 0, upperIndex = binMaximums.length-1; + int centerIndex; + while(true) { + centerIndex = (int)((upperIndex + lowerIndex) / 2); + if(centerIndex == lowerIndex) { + return upperIndex; + } else if(centerIndex == upperIndex) { + return lowerIndex; + } else if(value <= binMaximums[lowerIndex]) { + return lowerIndex; + } else if(value > binMaximums[upperIndex]) { + return upperIndex+1; + } else if(value <= binMaximums[centerIndex]) { + upperIndex = centerIndex; + } else { + lowerIndex = centerIndex; + } + } + } + + /** + * Create a popular color palette known as the "fire palette". Taken from + * http://vis.iu.edu/Publications/Storm.pdf, figure 5, page 7. The lower + * 12.5% (1/8th) of the spectrum is dropped for aesthetic reasons. + * @param howManyBins the number of different colors desired. + * @return an array of Color objects spaced evenly through the spectrum. The + * lowest entry has the "coolest" color. + **/ + public static Color[] generateFireSpectrum(int howManyBins) { + Color[] spectrum = new Color[howManyBins]; + float[] hsv = new float[3]; + float[] rgb = new float[3]; + final double skippedSection = 0.125; + final double usedSection = 1.0-skippedSection; + for(int i=0;i= 1) { + hsv[0] -= 1; + } + while(hsv[0] < 0) { + hsv[0] += 1; + } + int hi = ((int)(hsv[0]*360/60)) % 6; + float f = (float)((hsv[0]*360/60) - hi); + float p = (float)(hsv[2]*(1.0-hsv[1])); + float q = (float)(hsv[2]*(1.0-f*hsv[1])); + float t = (float)(hsv[2]*(1.0-(1.0-f)*hsv[1])); + + switch(hi) { + case 0: + rgb[0] = hsv[2]; rgb[1] = t; rgb[2] = p; + break; + case 1: + rgb[0] = q; rgb[1] = hsv[2]; rgb[2] = p; + break; + case 2: + rgb[0] = p; rgb[1] = hsv[2]; rgb[2] = t; + break; + case 3: + rgb[0] = p; rgb[1] = q; rgb[2] = hsv[2]; + break; + case 4: + rgb[0] = t; rgb[1] = p; rgb[2] = hsv[2]; + break; + case 5: + rgb[0] = hsv[2]; rgb[1] = p; rgb[2] = q; + break; + } + } + + /** + * Generate the hexadecimal text format for a Color + * @param c Color to be examined + * @return hexadecimal string in the format ABCDEF + **/ + public static String toHex(Color c) { + String r = "0" + Integer.toHexString(c.getRed()); + String g = "0" + Integer.toHexString(c.getGreen()); + String b = "0" + Integer.toHexString(c.getBlue()); + + return r.substring(r.length()-2) + + g.substring(g.length()-2) + + b.substring(b.length()-2); + } +} diff --git a/gov/epa/otaq/gis/api/StateCountyMapGUI.java b/gov/epa/otaq/gis/api/StateCountyMapGUI.java new file mode 100644 index 0000000..a828974 --- /dev/null +++ b/gov/epa/otaq/gis/api/StateCountyMapGUI.java @@ -0,0 +1,775 @@ +/************************************************************************************************** + * @(#)StateCountyMapGUI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +import java.awt.*; +import java.awt.event.*; +import java.awt.image.BufferedImage; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import java.io.*; +import java.util.*; +import java.text.*; + +import gov.epa.otaq.moves.common.ExtendedComboBox; +import gov.epa.otaq.moves.common.WindowStateHandler; + +/** + * GUI for creating and displaying State and County maps + * + * @author Wesley Faler + * @author Tim Hull + * @version 2011-09-10 + * Changed to use new ExtendedComboBox +**/ +public class StateCountyMapGUI extends JDialog implements ActionListener /*, ListSelectionListener */ { + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** Database connection **/ + Connection db; + /** Name of the database **/ + String databaseName; + + /** Panel for the Database options **/ + JPanel dbPanel; + /** "Cancel" button on dbPanel **/ + JButton dbCancelButton; + /** "Next" button on dbPanel **/ + JButton dbNextButton; + /** Table listing on dbPanel **/ + ExtendedComboBox dbTableList; + /** FIPS column listing on dbPanel **/ + ExtendedComboBox dbFIPSList; + /** Value column listing on dbPanel **/ + ExtendedComboBox dbValueList; + + /** Panel for the Rendering options **/ + JPanel renderPanel; + /** "Cancel" button on renderPanel **/ + JButton renderCancelButton; + /** "Back" button on renderPanel **/ + JButton renderBackButton; + /** "Next" button on renderPanel **/ + JButton renderNextButton; + /** Number of color bins on renderPanel **/ + JTextField renderBinCount; + /** Minimum data value on renderPanel **/ + JTextField renderMinValue; + /** Maximum data value on renderPanel **/ + JTextField renderMaxValue; + /** Show Legend Colors checkbox on renderPanel **/ + JCheckBox renderShowColors; + /** Show Legend text checkbox on renderPanel **/ + JCheckBox renderShowText; + /** Show Labels checkbox on renderPanel **/ + JCheckBox renderShowLabels; + /** Color Selection on renderPanel **/ + ExtendedComboBox renderColorList; + + /** Panel for the Map display **/ + JPanel mapPanel; + /** "Done" button on mapPanel **/ + JButton mapDoneButton; + /** "Back" button on mapPanel **/ + JButton mapBackButton; + /** "SaveJPG" button on mapPanel **/ + JButton mapSaveJPGButton; + /** "Print" button on mapPanel **/ + JButton mapPrintButton; + /** Image display on mapPanel **/ + ImageUtility.ImagePanel mapImageDisplay; + /** Buttons panel on mapPanel **/ + JPanel mapButtonsPanel; + + /** Map renderer **/ + StateCountyMapRenderer renderer = null; + /** Scale **/ + Scale legend = null; + /** Map Image **/ + BufferedImage image = null; + + /** + * Constructs the main panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + **/ + public StateCountyMapGUI(JFrame parent, Connection dbToUse, String databaseNameToUse) { + super(parent, "Generate State/County Map"); + frame = parent; + db = dbToUse; + databaseName = databaseNameToUse; + + getContentPane().setLayout(new BorderLayout()); + createPanels(); + getContentPane().add(dbPanel, BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + assessSituation(); + setSize(820,600); + pack(); + setModal(true); + (new WindowStateHandler(this)).setPositionAndStartTracking(); + setVisible(true); //show(); + } + + /** Create all controls and panels **/ + void createPanels() { + createDbPanel(); + createRenderPanel(); + createMapPanel(); + } + + /** Create the dbPanel and its child controls **/ + void createDbPanel() { + dbPanel = new JPanel(); + + // Create controls + dbCancelButton = createButton("Cancel"); + dbNextButton = createButton("Next >"); + dbTableList = createComboBox("dbTableList",false); + dbFIPSList = createComboBox("dbFIPSList",false); + dbValueList = createComboBox("dbValueList",false); + JLabel dbNameLabel = new JLabel("Database: " + databaseName,SwingConstants.LEFT); + JLabel tableLabel = new JLabel("Table:",SwingConstants.LEFT); + JLabel fipsLabel = new JLabel("State or County FIPS Column:",SwingConstants.LEFT); + JLabel dataLabel = new JLabel("Data Column:",SwingConstants.LEFT); + + // Get list of tables + dbTableList.addItem(""); + String sql = "SHOW TABLES FROM " + databaseName; + PreparedStatement statement = null; + ResultSet rs = null; + try { + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + while(rs.next()) { + String t = rs.getString(1); + dbTableList.addItem(t); + } + } catch(Exception e) { + System.out.println("Unable to load tables in StateCountyMapGUI using " + sql); + System.out.println(e); + e.printStackTrace(); + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + + // Arrange controls + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new BoxLayout(buttonPanel,BoxLayout.X_AXIS)); + buttonPanel.add(dbCancelButton); + buttonPanel.add(Box.createHorizontalGlue()); + buttonPanel.add(dbNextButton); + + dbPanel.setLayout(new BoxLayout(dbPanel,BoxLayout.Y_AXIS)); + dbPanel.add(createRow1(dbNameLabel)); + dbPanel.add(createRow1(tableLabel)); + dbPanel.add(createRow1(dbTableList)); + dbPanel.add(createRow1(fipsLabel)); + dbPanel.add(createRow1(dbFIPSList)); + dbPanel.add(createRow1(dataLabel)); + dbPanel.add(createRow1(dbValueList)); + dbPanel.add(buttonPanel); + } + + /** Create the renderPanel and its child controls **/ + void createRenderPanel() { + renderPanel = new JPanel(); + + // Create controls + renderCancelButton = createButton("Cancel"); + renderBackButton = createButton("< Back"); + renderNextButton = createButton("Next >"); + renderColorList = createComboBox("renderColorList",false); + renderBinCount = createTextField("renderBinCount",5); + renderMinValue = createTextField("renderMinValue",10); + renderMaxValue = createTextField("renderMaxValue",10); + renderShowColors = new JCheckBox("Show legend colors"); + renderShowColors.addActionListener(this); + renderShowText = new JCheckBox("Show legend text"); + renderShowText.addActionListener(this); + renderShowLabels = new JCheckBox("Show FIPS codes"); + renderShowLabels.addActionListener(this); + JLabel colorLabel = new JLabel("Colors:",SwingConstants.LEFT); + JLabel binCountLabel = new JLabel("Number of colors:",SwingConstants.LEFT); + JLabel minLabel = new JLabel("Minimum Data Value:",SwingConstants.LEFT); + JLabel maxLabel = new JLabel("Maximum Data Value:",SwingConstants.LEFT); + + renderColorList.addItem("Full Color"); + renderColorList.addItem("Grayscale"); + renderColorList.setSelectedItem("Full Color"); + + renderShowColors.setSelected(true); + renderShowText.setSelected(true); + renderShowLabels.setSelected(true); + renderBinCount.setText("16"); + + // Arrange controls + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new BoxLayout(buttonPanel,BoxLayout.X_AXIS)); + buttonPanel.add(renderBackButton); + buttonPanel.add(Box.createHorizontalGlue()); + buttonPanel.add(renderCancelButton); + buttonPanel.add(Box.createHorizontalGlue()); + buttonPanel.add(renderNextButton); + + renderPanel.setLayout(new BoxLayout(renderPanel,BoxLayout.Y_AXIS)); + renderPanel.add(createRow1(colorLabel)); + renderPanel.add(createRow1(renderColorList)); + renderPanel.add(createRow1(renderShowLabels)); + renderPanel.add(createRow1(renderShowColors)); + renderPanel.add(createRow1(renderShowText)); + renderPanel.add(createRow2(binCountLabel,renderBinCount)); + renderPanel.add(createRow2(minLabel,renderMinValue)); + renderPanel.add(createRow2(maxLabel,renderMaxValue)); + renderPanel.add(buttonPanel); + } + + /** Create the mapPanel and its child controls **/ + void createMapPanel() { + mapPanel = new JPanel(); + + // Create controls + mapBackButton = createButton("< Back"); + mapSaveJPGButton = createButton("Save JPG..."); + mapPrintButton = createButton("Print"); + mapDoneButton = createButton("Done"); + + // Arrange controls + mapButtonsPanel = new JPanel(); + mapButtonsPanel.setLayout(new BoxLayout(mapButtonsPanel,BoxLayout.X_AXIS)); + mapButtonsPanel.add(mapBackButton); + mapButtonsPanel.add(Box.createHorizontalGlue()); + mapButtonsPanel.add(mapSaveJPGButton); + mapButtonsPanel.add(Box.createHorizontalGlue()); + mapButtonsPanel.add(mapPrintButton); + mapButtonsPanel.add(Box.createHorizontalGlue()); + mapButtonsPanel.add(mapDoneButton); + + mapPanel.setLayout(new BoxLayout(mapPanel,BoxLayout.Y_AXIS)); + // The image and supported scroll area will be added by applyImageToMapPanel() + mapPanel.add(mapButtonsPanel); + } + + /** Finish the mapPanel by using the current image **/ + void applyImageToMapPanel() { + if(mapImageDisplay == null) { + mapImageDisplay = new ImageUtility.ImagePanel(image); + mapPanel.removeAll(); + JScrollPane scroller = new JScrollPane(); + scroller.add(mapImageDisplay); + scroller.setViewportView(mapImageDisplay); + scroller.setPreferredSize(new Dimension(700,525)); + mapPanel.add(scroller); + mapPanel.add(mapButtonsPanel); + } else { + mapImageDisplay.image = image; + } + } + + /** + * Utility routine to create a button + * @param text text to show on the button + * @return a new button already connected with this as the ActionListener + **/ + JButton createButton(String text) { + JButton result = new JButton(text); + result.addActionListener(this); + return result; + } + + /** + * Utility routine to create a combobox + * @param controlName Value passed to JComboBox.setName, used for automated tests + * @param isEditable true if the text in the combobox can be edited, false for a + * dropdown list only + * @return a new combobox already connected with this as the listener + **/ + ExtendedComboBox createComboBox(String controlName, boolean isEditable) { + ExtendedComboBox result = new ExtendedComboBox(); + Dimension d = result.getPreferredSize(); + result.setPreferredSize(new Dimension(150, d.height)); + result.setPopupWidth(result.getPreferredSize().width); + result.setName(controlName); + result.addActionListener(this); + result.setEditable(isEditable); + result.setSelectedIndex(-1); + return result; + } + + /** + * Utility routine to create a text field + * @param controlName Value passed to JTextField.setName, used for automated tests + * @param numberOfCharacters number of characters to display + * @return a new text field + **/ + JTextField createTextField(String controlName, int numberOfCharacters) { + JTextField result = new JTextField(numberOfCharacters); + result.setName(controlName); + result.setColumns(numberOfCharacters); + return result; + } + + /** + * Utility routine to create a panel with left aligned control(s). + * @param control a control to add to the panel + * @return a panel with left aligned control(s) + **/ + JPanel createRow1(JComponent control) { + JPanel p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(control); + p.add(Box.createHorizontalGlue()); + return p; + } + + /** + * Utility routine to create a panel with left aligned control(s). + * @param control1 a control to add to the panel + * @param control2 a control to add to the panel + * @return a panel with left aligned control(s) + **/ + JPanel createRow2(JComponent control1,JComponent control2) { + JPanel p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(control1); + p.add(control2); + p.add(Box.createHorizontalGlue()); + return p; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == dbCancelButton) { + dispose(); + } else if(e.getSource() == dbNextButton) { + handleDbNextButton(); + } else if(e.getSource() == dbTableList) { + handleDbTableList(); + } else if(e.getSource() == dbFIPSList) { + assessSituation(); + } else if(e.getSource() == dbValueList) { + assessSituation(); + } else if(e.getSource() == renderCancelButton) { + dispose(); + } else if(e.getSource() == renderBackButton) { + handleRenderBackButton(); + } else if(e.getSource() == renderNextButton) { + handleRenderNextButton(); + //} else if(e.getSource() == renderPreviewButton) { + // handleRenderPreviewButton(); + } else if(e.getSource() == renderShowColors) { + assessSituation(); + } else if(e.getSource() == mapDoneButton) { + dispose(); + } else if(e.getSource() == mapBackButton) { + handleMapBackButton(); + } else if(e.getSource() == mapSaveJPGButton) { + handleMapSaveJPGButton(); + } else if(e.getSource() == mapPrintButton) { + handleMapPrintButton(); + } + } + + /** Handle a change to dbTableList **/ + void handleDbTableList() { + dbFIPSList.removeAllItems(); + dbValueList.removeAllItems(); + String t = (String)dbTableList.getSelectedItem(); + if(t == null || t.length() <= 0) { + assessSituation(); + return; + } + // Obtain list of columns and store to dbFIPSList and dbValueList + String sql = "select * from " + t + " limit 1"; + PreparedStatement statement = null; + ResultSet rs = null; + try { + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + ResultSetMetaData rsmd = rs.getMetaData(); + int count = rsmd.getColumnCount(); + dbFIPSList.addItem(""); + dbValueList.addItem(""); + String fipsStateColumn = null; + String fipsCountyColumn = null; + for(int i=1;i<=count;i++) { + String name = rsmd.getColumnName(i); + dbFIPSList.addItem(name); + dbValueList.addItem(name); + if(name.equalsIgnoreCase("county") || name.equalsIgnoreCase("countyID")) { + fipsCountyColumn = name; + } else if(name.equalsIgnoreCase("state") || name.equalsIgnoreCase("stateID")) { + fipsStateColumn = name; + } + } + String fipsDefaultColumn = fipsStateColumn; + if(fipsCountyColumn != null) { + fipsDefaultColumn = fipsCountyColumn; + } + if(fipsDefaultColumn != null) { + dbFIPSList.setSelectedItem(fipsDefaultColumn); + } + } catch(Exception e) { + System.out.println("Unable to load columns in StateCountyMapGUI using " + sql); + System.out.println(e); + e.printStackTrace(); + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + assessSituation(); + } + + /** + * Check a table for duplicate entries, throwing a GISException if a duplicate is found. + * @param table name of the table to extract data from + * @param fipsColumn name of the column with a state or county FIPS code + **/ + void checkForDuplicateEntries(String table, String fipsColumn) throws Exception { + String sql = "select " + fipsColumn + ", count(*)" + + " from " + table + + " group by " + fipsColumn + + " having count(*) > 1" + + " limit 3"; + PreparedStatement statement = null; + ResultSet rs = null; + try { + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + int countFound = 0; + String examples = ""; + while(rs.next()) { + String fips = rs.getString(1); + if(fips == null || fips.length() <= 0) { + continue; + } + if(examples.length() > 0) { + examples += ","; + } + examples += fips; + countFound++; + } + if(countFound == 1) { + String t= "There was a duplicate FIPS code found: " + examples; + throw new GISException(t); + } else if(countFound > 0) { + String t = "There were duplicate FIPS code entries found." + + " Examples found: " + examples; + throw new GISException(t); + } + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** Handle the dbNextButton **/ + void handleDbNextButton() { + assessSituation(); + if(!dbNextButton.isEnabled()) { + return; + } + try { + String table = (String)dbTableList.getSelectedItem(); + String fipsColumn = (String)dbFIPSList.getSelectedItem(); + String valueColumn = (String)dbValueList.getSelectedItem(); + String sql = "select " + fipsColumn + ", sum(" + valueColumn + ") as " + valueColumn + + " from " + table + + " group by " + fipsColumn; + //checkForDuplicateEntries(table,fipsColumn); + renderer = null; // allows garbage collection to occur + legend = null; + if(image != null) { + image = null; + applyImageToMapPanel(); + } + renderer = new StateCountyMapRenderer(); + renderer.addFromSQL(db,sql,fipsColumn,valueColumn); + renderMinValue.setText("" + renderer.getMinimumValue()); + renderMaxValue.setText("" + renderer.getMaximumValue()); + assessSituation(); + } catch(Exception e) { + /** + * @issue Can't load map: [message] + * @explain MOVES was unable to read the data for your map. This could be due to a + * database irregularity or an non-numeric value within your data. + **/ + e.printStackTrace(); + JOptionPane.showMessageDialog(frame, + "Can't load map: " + e, + "State/County Map", + JOptionPane.ERROR_MESSAGE); + renderer = null; + return; + } + getContentPane().removeAll(); + getContentPane().add(renderPanel, BorderLayout.CENTER); + pack(); + } + + /** Handle the renderBackButton **/ + void handleRenderBackButton() { + assessSituation(); + getContentPane().removeAll(); + getContentPane().add(dbPanel, BorderLayout.CENTER); + pack(); + } + + /** Handle the renderNextButton **/ + void handleRenderNextButton() { + assessSituation(); + if(!renderNextButton.isEnabled()) { + return; + } + try { + double minValue = Double.parseDouble(renderMinValue.getText()); + double maxValue = Double.parseDouble(renderMaxValue.getText()); + int binCount = Integer.parseInt(renderBinCount.getText()); + if(binCount < 1) { + /** + * @issue There must be at least 1 data bin + * @explain When prompted for how many colors to divide the map data into, provide + * a number of at least 1. + **/ + JOptionPane.showMessageDialog(frame, + "There must be at least 1 data bin", + "State/County Map", + JOptionPane.ERROR_MESSAGE); + return; + } + int whichPalette = Scale.PALETTE_FIRE; + String paletteText = (String)renderColorList.getSelectedItem(); + if(paletteText.equalsIgnoreCase("Grayscale")) { + whichPalette = Scale.PALETTE_GRAY; + } + legend = new Scale(binCount,minValue,maxValue,whichPalette, + renderShowText.isSelected() && renderShowColors.isSelected()); + try { + image = renderer.render(legend, renderShowColors.isSelected(), + renderShowLabels.isSelected()); + } catch(Exception e) { + /** + * @issue Can't create image: [message] + * @explain MOVES is unable to generate a map image. Try making your map window + * smaller, as some older graphics cards do not have the memory for high resolution + * images. Also, ensure that all files in your MOVES installation are not read-only, + * as the map making routines require write-access to their region definition files + * within the lib folder. + **/ + e.printStackTrace(); + JOptionPane.showMessageDialog(frame, + "Can't create image: " + e, + "State/County Map", + JOptionPane.ERROR_MESSAGE); + return; + } + applyImageToMapPanel(); + assessSituation(); + } catch(Exception e) { + // Nothing to do here + return; + } + getContentPane().removeAll(); + getContentPane().add(mapPanel, BorderLayout.CENTER); + pack(); + //setSize(820,600); + } + + /** Handle the mapBackButton **/ + void handleMapBackButton() { + assessSituation(); + getContentPane().removeAll(); + getContentPane().add(renderPanel, BorderLayout.CENTER); + pack(); + } + + /** Handle the mapSaveJPGButton **/ + void handleMapSaveJPGButton() { + if(image == null) { + return; + } + FileDialog fd = new FileDialog(frame, "Save File", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + if((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + if(!filePath.toLowerCase().endsWith(".jpg")) { + if(filePath.endsWith(".")) { + filePath += "jpg"; + } else { + filePath += ".jpg"; + } + } + try { + ImageUtility.saveJPG(image,filePath); + } catch(Exception e) { + /** + * @issue Can't save image: [message] + * @explain MOVES is unable to save the map image. The [message] will contain + * more detail, but double check the path you selected for storing the image. + * If there is not enough room for the image or if there is a typo in the path, the + * image cannot be saved. + **/ + JOptionPane.showMessageDialog(frame, + "Can't save image: " + e, + "State/County Map", + JOptionPane.ERROR_MESSAGE); + } + } + + /** Handle the mapPrintButton **/ + void handleMapPrintButton() { + if(image == null) { + return; + } + try { + ImageUtility.print(image); + } catch(Exception e) { + /** + * @issue Can't print image: [message] + * @explain MOVES is unable to print the map image. The [message] will contain more + * detail, but try checking your printer settings. Some printer drivers cannot print + * large images at high resolution. + **/ + JOptionPane.showMessageDialog(frame, + "Can't print image: " + e, + "State/County Map", + JOptionPane.ERROR_MESSAGE); + } + } + + /** Update control states based on current data **/ + void assessSituation() { + // dbPanel + String fipsColumn = null; + String valueColumn = null; + if(dbFIPSList != null && dbValueList != null) { + fipsColumn = (String)dbFIPSList.getSelectedItem(); + valueColumn = (String)dbValueList.getSelectedItem(); + } + if(dbNextButton != null) { + dbNextButton.setEnabled(fipsColumn != null && fipsColumn.length() > 0 + && valueColumn != null && valueColumn.length() > 0); + } + + // renderPanel + if(renderNextButton != null) { + boolean renderIsOK = false; + if(renderBinCount != null && renderMinValue != null && renderMaxValue != null) { + renderIsOK = true; + // Check number of bins + String countText = renderBinCount.getText(); + if(countText == null) { + renderIsOK = false; + } else { + try { + int count = Integer.parseInt(countText); + if(count < 1) { + renderIsOK = false; + } + } catch(Exception e) { + renderIsOK = false; + } + } + // Check min value + if(renderIsOK) { + String valueText = renderMinValue.getText(); + if(valueText == null) { + renderIsOK = false; + } else { + try { + Double.parseDouble(valueText); + } catch(Exception e) { + renderIsOK = false; + } + } + } + // Check max value + if(renderIsOK) { + String valueText = renderMaxValue.getText(); + if(valueText == null) { + renderIsOK = false; + } else { + try { + Double.parseDouble(valueText); + } catch(Exception e) { + renderIsOK = false; + } + } + } + } + renderNextButton.setEnabled(renderIsOK); + } + if(renderShowColors != null && renderShowText != null) { + if(renderShowColors.isSelected()) { + renderShowText.setEnabled(true); + } else { + renderShowText.setEnabled(false); + //renderShowText.setSelected(false); + } + } + + // mapPanel + if(mapSaveJPGButton != null && mapPrintButton != null) { + mapSaveJPGButton.setEnabled(image != null); + mapPrintButton.setEnabled(image != null); + } + } +} diff --git a/gov/epa/otaq/gis/api/StateCountyMapRenderer.java b/gov/epa/otaq/gis/api/StateCountyMapRenderer.java new file mode 100644 index 0000000..464218e --- /dev/null +++ b/gov/epa/otaq/gis/api/StateCountyMapRenderer.java @@ -0,0 +1,696 @@ +/************************************************************************************************** + * @(#)StateCountyMapRenderer.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.gis.api; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.Rectangle; +import java.awt.image.BufferedImage; +import java.awt.RenderingHints; +import java.io.*; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.*; +import java.sql.*; + +import javax.imageio.ImageIO; +//import javax.units.SI; + +//import org.geotools.catalog.*; +//import org.geotools.catalog.defaults.*; +import org.opengis.feature.simple.*; +import org.opengis.feature.type.*; + +import org.geotools.factory.*; +import org.geotools.data.*; +import org.geotools.data.shapefile.*; +import org.geotools.feature.*; +import org.geotools.geometry.jts.*; +import org.geotools.map.*; +import org.geotools.renderer.GTRenderer; +import org.geotools.renderer.lite.StreamingRenderer; +import org.geotools.referencing.crs.DefaultGeographicCRS; +import org.geotools.referencing.operation.*; +import org.geotools.referencing.factory.*; +import org.geotools.filter.*; +import org.opengis.referencing.*; +import org.opengis.referencing.crs.*; +import org.opengis.referencing.cs.*; +import org.opengis.referencing.operation.*; +import org.opengis.parameter.*; +import org.geotools.styling.*; +import com.vividsolutions.jts.geom.*; + +/** + * Generate an image for a state and/or county map of the USA. + * The calling pattern is:
    + *
      + *
    • instanitate a StateCountyMapRenderer
    • + *
    • call add(fipsCode,value) or addOutlineOnly(fipsCode) for each + * state and/or county to be shown. State outlines are automatically + * shown for each county added.
    • + *
    • Optionally, the addFromSQL(...) function can be used to retrieve data + * from a table and call add(...) and addOutlineOnly(...) with the information.
    • + *
    • create and fillin a Scale object. The getMinimumValue() and + * getMaximumValue() routines can be used to get the range to apply + * to the Scale. The Scale object provides the mapping between data value + * and color.
    • + *
    • call the render(...) function to create an image of the map. + * When calling render(...), the Scale must always be provided but it doesn't + * have to be drawn or its text displayed.
    • + *
    • Handle any exceptions, especially GISException objects, that are thrown + * by the called functions. GISException's toString() function is especially + * suited to giving a human-readable message.
    • + *
    + * + * @author Wesley Faler + * @version 2009-04-15 +**/ +public class StateCountyMapRenderer { + /** Shape files **/ + static final String[] shapeFiles = { + "libs/geotools/st99_d00.shp", // states not including Virgin Islands + "libs/geotools/co78_d00.shp", // counties not including Virgin Islands + "libs/geotools/co99_d00.shp" // counties in Virgin Islands + }; + /** FeatureSource objects derived from the shape files **/ + static ArrayList > featureSources = null; + /** GeoTools renderer **/ + static GTRenderer renderer = null; + /** StyleFactory shared across all instances **/ + static StyleFactory styleFactory = null; + + /** County shape file **/ + static final String countyShapeFileName = "libs/geotools/co99_d00.shp"; + /** State shape file **/ + static final String stateShapeFileName = "libs/geotools/st99_d00.shp"; + /** + * Display boundary for the USA. The extreme western islands of Alaska + * are clipped by this boundary but this makes the display much easier. + **/ + static final ReferencedEnvelope usaEnvelope = + new ReferencedEnvelope(-179.0,0,-10,72, DefaultGeographicCRS.WGS84); +// new ReferencedEnvelope(-179.0,-60,17,72, DefaultGeographicCRS.WGS84); + + /** GIS map **/ + MapContext context = null; + /** Filters to extract states/counties from the feature sources **/ + ArrayList filters = new ArrayList(); + /** flag indicating if there is a minimum or maximum value yet **/ + boolean hasMinimumAndMaximum = false; + /** minimum value **/ + double minimumValue = 0; + /** maximum value **/ + double maximumValue = 0; + /** values of states and/or counties. keyed by FIPS code String, data is Double **/ + TreeMap values = new TreeMap(); + + /** + * Constructor + * @throws Exception upon any sort of missing file + **/ + public StateCountyMapRenderer() throws Exception { + // Force reclaimation of memory immediately so that the application we launch has as + // much memory to do its work as possible + Runtime.getRuntime().runFinalization(); + Runtime.getRuntime().gc(); + Runtime.getRuntime().runFinalization(); + Runtime.getRuntime().gc(); + + if(featureSources == null) { + // Load all feature sources + featureSources = new ArrayList >(); + for(int i=0;i source = dataStore.getFeatureSource(); + featureSources.add(source); + } + } + + context = new DefaultMapContext(DefaultGeographicCRS.WGS84); + + int index = 0; + for(Iterator > i=featureSources.iterator();i.hasNext();index++) { + FeatureSource source = (FeatureSource)i.next(); + filters.add(new StateCountyFilter(source,false,shapeFiles[index])); + filters.add(new StateCountyFilter(source,true,shapeFiles[index])); + } + } + + /** + * Obtain the minimum value in the data + * @return the minimum value successfully passed to the add() routine + **/ + public double getMinimumValue() { + return minimumValue; + } + + /** + * Obtain the maximum value in the data + * @return the maximum value successfully passed to the add() routine + **/ + public double getMaximumValue() { + return maximumValue; + } + + /** + * Add a state or county's data to the display + * @param stateOrCountyFIPS state FIPS code (2 digits) or a county FIPS code (5 digits + * which includes the 2 digit state FIPS code) + * @param value data value for the state or county + * @throws GISException if the FIPS code is not properly formatted or if a duplicate entry + * is attempted + **/ + public void add(String stateOrCountyFIPS, double value) throws GISException { + if(stateOrCountyFIPS.length() == 4 || stateOrCountyFIPS.length() == 1) { + // 1 or 4 characters is most likely in need of a leading zero. + // The Shape files store FIPS with leading zeros but databases store + // them as integers and drop the leading zeros. + stateOrCountyFIPS = "0" + stateOrCountyFIPS; + } + if(values.containsKey(stateOrCountyFIPS)) { + throw new GISException("Duplicate entry: " + stateOrCountyFIPS); + } + + for(Iterator i=filters.iterator();i.hasNext();) { + StateCountyFilter filter = (StateCountyFilter)i.next(); + filter.allow(stateOrCountyFIPS); + } + //stateFilter.allow(stateOrCountyFIPS); + //countyFilter.allow(stateOrCountyFIPS); + + values.put(stateOrCountyFIPS,new Double(value)); + + if(!hasMinimumAndMaximum) { + hasMinimumAndMaximum = true; + minimumValue = value; + maximumValue = value; + } else { + if(value < minimumValue) { + minimumValue = value; + } + if(value > maximumValue) { + maximumValue = value; + } + } + } + + /** + * Add a state or county's outline to the display + * @param stateOrCountyFIPS state FIPS code (2 digits) or a county FIPS code (5 digits + * which includes the 2 digit state FIPS code) + * @throws GISException if the FIPS code is not properly formatted + **/ + public void addOutlineOnly(String stateOrCountyFIPS) throws GISException { + if(stateOrCountyFIPS.length() == 4 || stateOrCountyFIPS.length() == 1) { + // 1 or 4 characters is most likely in need of a leading zero. + // The Shape files store FIPS with leading zeros but databases store + // them as integers and drop the leading zeros. + stateOrCountyFIPS = "0" + stateOrCountyFIPS; + } + for(Iterator i=filters.iterator();i.hasNext();) { + StateCountyFilter filter = (StateCountyFilter)i.next(); + filter.allow(stateOrCountyFIPS); + } + //stateFilter.allow(stateOrCountyFIPS); + //countyFilter.allow(stateOrCountyFIPS); + } + + /** + * Add values from a database query. null values are added as outline only. + * @param db database connection to use + * @param sql SQL query containing at least a column with a FIPS code (state or county) + * and a numeric value column. + * @param fipsColumn name of the column with a state or county FIPS code + * @param valueColumn name of the column with a nullable numeric value + * @throws SQLException upon a connection or query error + * @throws GISException if any of the FIPS codes are not properly formatted + **/ + public void addFromSQL(Connection db, String sql, String fipsColumn, String valueColumn) + throws SQLException, GISException { + PreparedStatement statement = null; + ResultSet rs = null; + try { + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + while(rs.next()) { + String fips = rs.getString(fipsColumn); + double value = rs.getDouble(valueColumn); + if(rs.wasNull()) { + addOutlineOnly(fips); + } else { + add(fips,value); + } + } + } catch(SQLException e) { + throw e; + } catch(GISException e) { + throw e; + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** + * Generate an image of the data + * @param legend Coloration and text to display explaining the map. + * When filled with blank bin labels, no text will be generated. + * @param shouldDrawLegend true if the legend should be displayed + * @param shouldDrawLabels true if labels on states or counties should be displayed + * @return an image of the map + **/ + public BufferedImage render(Scale legend, boolean shouldDrawLegend, + boolean shouldDrawLabels) throws Exception { + if(styleFactory == null) { + //styleFactory = StyleFactoryFinder.createStyleFactory(); + styleFactory = CommonFactoryFinder.getStyleFactory(null); + } + + for(Iterator i=filters.iterator();i.hasNext();) { + StateCountyFilter filter = (StateCountyFilter)i.next(); + FeatureCollection features = filter.filter(); + if(features == null) { + continue; + } + URL sld = acquireURL(generateSLD(filter.isStateLevel(), filter, legend, + filter.shapeFileName, shouldDrawLabels)); + SLDParser styleReader = new SLDParser(styleFactory,sld); + org.geotools.styling.Style[] styles = styleReader.readXML(); + context.addLayer(features,styles[0]); + } + + ReferencedEnvelope layerBounds = context.getLayerBounds(); + //System.out.println("layerBounds=" + layerBounds); + ReferencedEnvelope usaEnvelope = new ReferencedEnvelope(-179.0,-60,17,72, DefaultGeographicCRS.WGS84); + ReferencedEnvelope displayEnvelope = layerBounds; + // Clip displayEnvelope so it is always displayable within the USA boundaries + displayEnvelope = new ReferencedEnvelope(displayEnvelope.intersection(usaEnvelope),DefaultGeographicCRS.WGS84); + + final int imageWidth = 1024; + final int imageHeight = 768; + final int spectrumWidth = 25; + final int legendWidth = spectrumWidth+2+60; + + // Ensure there is a border so that labels can always be drawn + Rectangle mapViewport = new Rectangle(5,5,imageWidth-5-legendWidth-5,imageHeight-5-5); + double xScale = (double)mapViewport.getWidth() / (double)displayEnvelope.getWidth(); + double yScale = (double)mapViewport.getHeight() / (double)displayEnvelope.getHeight(); + double minScale = Math.min(xScale,yScale); + int newWidth = (int)(mapViewport.getWidth() * minScale / xScale); + int newHeight = (int)(mapViewport.getHeight() * minScale / yScale); + mapViewport.setBounds((int)mapViewport.getMinX(),(int)mapViewport.getMinY(),newWidth,newHeight); + + if(renderer == null) { + renderer = new StreamingRenderer(); + } + + BufferedImage image = new BufferedImage(imageWidth, imageHeight, BufferedImage.TYPE_INT_RGB); + Graphics2D g = image.createGraphics(); + try{ + g.setColor(Color.white); + g.fillRect(0,0,imageWidth,imageHeight); + + renderer.setContext(context); + + /* Do not antialias as this would complicate manual recoloring of generated images + RenderingHints hints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, + RenderingHints.VALUE_ANTIALIAS_ON ); + renderer.setJava2DHints(hints); + */ + + Map rendererParams = new HashMap(); + rendererParams.put("optimizedDataLoadingEnabled",new Boolean(true)); + renderer.setRendererHints(rendererParams); + + renderer.paint(g, mapViewport/*new Rectangle(0,0,imageWidth,imageHeight)*/, displayEnvelope); + + if(shouldDrawLegend) { + legend.drawVerticalSpectrum(g,50,imageWidth-spectrumWidth-2,spectrumWidth,256*2); + } + } finally { + g.dispose(); + } + + return image; + } + + /** + * Filter a set of shapes/features selecting only the states or counties desired. + **/ + static class StateCountyFilter { + protected int stateAttributeIndex = -1; + protected int countyAttributeIndex = -1; + + protected TreeSet acceptableStateCountyValues = new TreeSet(); + protected FeatureSource fs = null; + protected boolean filterByCounty = true; + + public String shapeFileName; + + public StateCountyFilter(FeatureSource fsToUse, + boolean filterByCountyToUse, String shapeFileNameToUse) { + fs = fsToUse; + /* + if(shapeFileNameToUse.indexOf("78") > 0) { + FeatureType schema = null; + AttributeType[] attributeTypes = null; + FeatureCollection features = null; + Iterator fi = null; + try { + features = fs.getFeatures(); + fi = features.iterator(); + for(int count=0;count<5 && fi.hasNext();count++) { + SimpleFeature feature = (SimpleFeature) fi.next(); + if(schema == null) { + schema = feature.getFeatureType(); + S ystem.out.println("schema.getTypeName()=\"" + schema.getTypeName() + "\""); + attributeTypes = schema.getAttributeTypes(); + } + // Print features and their attributes, used for debugging + S ystem.out.println("SimpleFeature: " + feature.getID()); + int attributeCount = feature.getNumberOfAttributes(); + for(int ai=1;ai attributeTypes = null; + FeatureCollection features = fs.getFeatures(); + Iterator fi = features.iterator(); + try { + if(fi.hasNext()) { + SimpleFeature feature = (SimpleFeature) fi.next(); + schema = feature.getFeatureType(); + attributeTypes = schema.getTypes(); + } + } finally { + features.close(fi); + } + int index = 0; + for(Iterator i=attributeTypes.iterator();i.hasNext();index++) { + String name = i.next().getName().toString(); + if(name.equalsIgnoreCase("STATE")) { + stateAttributeIndex = index; + } else if(filterByCounty && name.equalsIgnoreCase("COUNTY")) { + countyAttributeIndex = index; + } + } + } catch(Exception e) { + /** + * @issue Unable to setup state/county filter: [message] + * @explain MOVES is unable to process the state/county map definition files. + * Check for an incomplete install and that all files in your MOVES installation + * are not read-only. + **/ + System.out.println("Unable to setup state/county filter: " + e.toString()); + e.printStackTrace(); + } + } + + public boolean isStateLevel() { + return !filterByCounty; + } + + public boolean isCountyLevel() { + return filterByCounty; + } + + public TreeSet getAcceptedEntries() { + return acceptableStateCountyValues; + } + + public void allow(String value) throws GISException { + if(!filterByCounty && value.length() > 2) { + value = value.substring(0,2); + } + // Check for general validity + try { + Integer.parseInt(value); + } catch(Exception e) { + throw new GISException("Invalid FIPS code format: " + value); + } + if(filterByCounty) { + // Check for County validity + if(value.length() != 2 && value.length() != 5) { + throw new GISException("Invalid county FIPS code format: " + value); + } + if(value.length() == 5) { + acceptableStateCountyValues.add(value); + } + } else { + // Check for State validity + if(value.length() != 2) { + throw new GISException("Invalid state FIPS code format: " + value); + } + acceptableStateCountyValues.add(value); + } + } + + public FeatureCollection filter() { + if(stateAttributeIndex < 0 + || (filterByCounty && countyAttributeIndex < 0)) { + return null; + } + FeatureCollection results = + FeatureCollections.newCollection(); + boolean foundAny = false; + try { + FeatureCollection features = fs.getFeatures(); + Iterator fi = features.iterator(); + try { + while(fi.hasNext()) { + SimpleFeature feature = (SimpleFeature) fi.next(); + if(contains(feature)) { + results.add(feature); + foundAny = true; + } + } + } finally { + features.close(fi); + } + } catch(Exception e) { + /** + * @issue Unable to filter feature collection: [message] + * @explain MOVES is unable to process the state/county map definition files. + * Check for an incomplete install and that all files in your MOVES installation + * are not read-only. + **/ + System.out.println("Unable to filter feature collection: " + e.toString()); + e.printStackTrace(); + } + if(foundAny) { + return results; + } else { + return null; + } + } + + public boolean contains(SimpleFeature feature) { + String state = "", county = ""; + if(stateAttributeIndex >= 0) { + state = feature.getAttribute(stateAttributeIndex).toString().trim(); + } + if(countyAttributeIndex >= 0) { + county = feature.getAttribute(countyAttributeIndex).toString().trim(); + } + return acceptableStateCountyValues.contains(state+county); + } + } + + /** + * Create a URL file a file name + * @param target name of a file + * @return URL to the passed file, throws an exception if the file doesn't exist + **/ + public static URL acquireURL(String target) throws GISException { + File targetFile = new File(target); + if(targetFile.exists()) { + try { + return targetFile.toURI().toURL(); + } catch (MalformedURLException e) { + throw new GISException("Malformated URL exception finding file " + target); + } + } + throw new GISException("Critical file missing: " + target); + } + + /** + * Generate a SLD file describing the colors and text for each rendered state or county. + * @param isStateLevel true if state-level styles are being generated + * @param filter state or county filter + * @param legend Coloration and text to display explaining the map + * @param shapeFileName name and path of the shape file being used. The SLD file is + * created with the same name but .SLD extension in the same folder. + * @param shouldDrawLabels true if labels on states or counties should be displayed + * @return the name of the SLD file including path + * @throws IOException upon file operation errors + **/ + String generateSLD(boolean isStateLevel, StateCountyFilter filter, Scale legend, + String shapeFileName, boolean shouldDrawLabels) throws IOException { + String sldFileName = shapeFileName.substring(0, shapeFileName.lastIndexOf(".")) + ".sld"; + File sldFile = new File(sldFileName); + PrintWriter writer = null; + TreeSet displayedItems = filter.getAcceptedEntries(); + //String name = isStateLevel?"st99_d00":"co99_d00"; + int index = shapeFileName.lastIndexOf("."); + String name = shapeFileName.substring(0,index); + index = name.lastIndexOf("/"); + name = name.substring(index+1); + try { + writer = new PrintWriter(new BufferedWriter(new java.io.FileWriter(sldFile),64*1024)); + writer.print( + "\n" + + "\n" + + " \n" + + " " + name + "\n" + + " \n" + + " " + name + "\n" + + " 1\n" + + " \n" + + " " + name + "\n" + + " \n" + + " \n" + + " \n" + + " #000000\n" + + " 1\n" + + " \n" + + " \n" + + " #FFFFFF\n" + + " \n" + + " \n" + + " \n"); + + // Iterate over each displayedItem, generating a rule for it + // The rule will be skipped if there is no data for the item as the default rule + // will ensure an empty outline is presented. + // The rule will always include STATE and will include COUNTY if !isStateLevel + for(Iterator i=displayedItems.iterator();i.hasNext();) { + String itemFIPS = (String)i.next(); + if(itemFIPS.length() <= 0) { + continue; + } + if(!values.containsKey(itemFIPS)) { + // Skip entries that will show but with an outline only since the default + // governs their display. + continue; + } + + String stateFIPS = itemFIPS; + if(stateFIPS.length() > 2) { + stateFIPS = stateFIPS.substring(0,2); + } + String countyFIPS = itemFIPS; + if(countyFIPS.length() >= 5) { + countyFIPS = countyFIPS.substring(2); // skip 2-digit state FIPS + } else { + countyFIPS = ""; + } + if(!isStateLevel && countyFIPS.length() <= 0) { + continue; + } + + writer.print("\n" + + " \n"); + + if(isStateLevel) { + // State-only filter + writer.print( + " \n" + + " STATE\n" + + " " + stateFIPS + "\n" + + " \n"); + } else { + // State and County filter + writer.print(" \n" + + " \n" + + " STATE\n" + + " " + stateFIPS + "\n" + + " \n" + + " \n" + + " COUNTY\n" + + " " + countyFIPS + "\n" + + " \n" + + " \n"); + } + + Double value = (Double)values.get(itemFIPS); + int binIndex = legend.getIndex(value.doubleValue()); + String colorHex = legend.getColorHex(binIndex); + + writer.print(" \n" + + " \n" + + " \n" + + " #000000\n" + + " 1\n" + + " \n" + + " \n" + + " #" + colorHex + "\n" + + " \n" + + " \n"); + writer.print(" \n" + + " \n" + + " \n" + + " normal\n" + + " \n" + + " yes\n" + + " \n"); + writer.print("\n"); + } + + writer.print( + " \n" + + " \n" + + " \n" + + "\n"); + + return sldFileName; + } finally { + if(writer != null) { + try { + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + writer = null; + } + } + } +} diff --git a/gov/epa/otaq/moves/common/BundleManifest.java b/gov/epa/otaq/moves/common/BundleManifest.java new file mode 100644 index 0000000..5fa9d5e --- /dev/null +++ b/gov/epa/otaq/moves/common/BundleManifest.java @@ -0,0 +1,641 @@ +/************************************************************************************************** + * @(#)BundleManifest.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import java.io.*; +import java.util.*; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * A file listing details for each bundle exchanged between masters and workers. + * The file is an XML format with all data under a <bundlemanifest> tag. + * + * @author Wesley Faler + * @version 2014-10-13 +**/ +public class BundleManifest { + /** controls event recording to the bundleTracking table **/ + private static final boolean shouldRecordEvents = true; + /** Name used by all manifest files **/ + public static final String MANIFEST_FILE_NAME = "BundleManifest.xml"; + + public static class MasterFragment { + public String outputTimePeriod = ""; + public String timeUnits = ""; + public String distanceUnits = ""; + public String massUnits = ""; + public String energyUnits = ""; + public String runSpecFileName = ""; + public String runSpecDescription = ""; + public String runSpecFileDateTime = ""; + public String runDateTime = ""; + public String model = "onroad"; + public String scale = ""; + public String defaultDatabaseUsed = ""; + public String masterVersionDate = ""; + public String masterComputerID = ""; + public String masterIDNumber = ""; + public String domain = ""; + public int domainCountyID = 0; + public String domainCountyName = ""; + public String domainDatabaseServer = ""; + public String domainDatabaseName = ""; + public int expectedDONEFiles = 0; + public String outputDatabaseName = ""; + + public void copyFrom(MasterFragment other) { + outputTimePeriod = other.outputTimePeriod; + timeUnits = other.timeUnits; + distanceUnits = other.distanceUnits; + massUnits = other.massUnits; + energyUnits = other.energyUnits; + runSpecFileName = other.runSpecFileName; + runSpecDescription = other.runSpecDescription; + runSpecFileDateTime = other.runSpecFileDateTime; + runDateTime = other.runDateTime; + model = other.model; + scale = other.scale; + defaultDatabaseUsed = other.defaultDatabaseUsed; + masterVersionDate = other.masterVersionDate; + masterComputerID = other.masterComputerID; + masterIDNumber = other.masterIDNumber; + domain = other.domain; + domainCountyID = other.domainCountyID; + domainCountyName = other.domainCountyName; + domainDatabaseServer = other.domainDatabaseServer; + domainDatabaseName = other.domainDatabaseName; + expectedDONEFiles = other.expectedDONEFiles; + outputDatabaseName = other.outputDatabaseName; + } + } + + public static class DurationFragment { + public String loopableName = null; + public double durationSeconds = 0; + + public DurationFragment() { + } + + public DurationFragment(String loopableNameToUse, double durationSecondsToUse) { + loopableName = loopableNameToUse; + durationSeconds = durationSecondsToUse; + } + } + + /** Details needed to create an entry in the output database's MOVESRun table **/ + public MasterFragment masterFragment = new MasterFragment(); + + /** List of tables to retrieve from workers and take to the master **/ + public TreeSetIgnoreCase tablesToRetrieve = new TreeSetIgnoreCase(); + /** Machine-readable context information, suitable for use with MasterLoopContext **/ + public String context = ""; + /** Human-readable context information **/ + public String contextForHumans = ""; + /** Name of the bundle file **/ + public String bundleName = ""; + /** When returned from a worker, the version of the worker code **/ + public String workerVersion = ""; + /** When returned from a worker, the computer ID of the worker **/ + public String workerComputerID = ""; + /** When returned from a worker, the worker ID **/ + public String workerID = ""; + /** When sent or returned from a worker, the sequence number of the bundle **/ + public int bundleNumber = 0; + /** When returned from a worker, the duration of the task on the worker **/ + public float durationSeconds = 0; + /** When returned from a worker that provides details, the duration of each part of a task on the worker **/ + public ArrayList durationFragments = new ArrayList(); + /** + * The computer ID of the master that should process the DONE files. When blank, the + * computer ID of the originating master (stored in masterFragment.masterComputerID) + * is used. + **/ + public String destinationMasterComputerID = ""; + /** + * The unique ID of the master that should process the DONE files. When blank, the + * unique ID of the originating master (stored in masterFragment.masterIDNumber) + * is used. + **/ + public String destinationMasterIDNumber = ""; + + + /** + * Constructor + **/ + public BundleManifest() { + } + + /** + * Copy from another MasterFragment + * @param other another MasterFragment + **/ + public void copyFrom(MasterFragment other) { + masterFragment.copyFrom(other); + } + + /** + * Copy to another MasterFragment + * @param other another MasterFragment + **/ + public void copyTo(MasterFragment other) { + other.copyFrom(masterFragment); + } + + /** + * Write this manifest into a folder, overwriting any manifest file that already exists there. + * @param folder folder to receive the new manifest file. + * @throws IOException if anything goes wrong + * @return true the file was written + **/ + public boolean writeToFolder(File folder) throws IOException { + if(destinationMasterComputerID == null || destinationMasterComputerID.length() <= 0) { + destinationMasterComputerID = masterFragment.masterComputerID; + } + if(destinationMasterIDNumber == null || destinationMasterIDNumber.length() <= 0) { + destinationMasterIDNumber = masterFragment.masterIDNumber; + } + + File mf = new File(folder,MANIFEST_FILE_NAME); + if(mf.exists()) { + mf.delete(); + } + PrintWriter writer = null; + try { + writer = new PrintWriter(new BufferedWriter(new FileWriter(mf),32768)); + writer.println(""); + writer.println("\t" + context + ""); + writer.println("\t" + contextForHumans + ""); + writer.println("\t" + bundleName + ""); + for(Iterator i=tablesToRetrieve.iterator();i.hasNext();) { + String t = (String)i.next(); + writer.println("\t" + t + ""); + } + writer.println("\t" + workerVersion + ""); + writer.println("\t" + workerComputerID + ""); + writer.println("\t" + workerID + ""); + writer.println("\t" + bundleNumber + ""); + writer.println("\t" + durationSeconds + ""); + writer.println("\t" + destinationMasterComputerID + ""); + writer.println("\t" + destinationMasterIDNumber + ""); + + writer.println("\t" + masterFragment.outputTimePeriod + ""); + writer.println("\t" + masterFragment.timeUnits + ""); + writer.println("\t" + masterFragment.distanceUnits + ""); + writer.println("\t" + masterFragment.massUnits + ""); + writer.println("\t" + masterFragment.energyUnits + ""); + writer.println("\t" + masterFragment.runSpecFileName + ""); + writer.println("\t"); + writer.println("\t" + masterFragment.runSpecFileDateTime + ""); + writer.println("\t" + masterFragment.runDateTime + ""); + writer.println("\t" + masterFragment.model + ""); + writer.println("\t" + masterFragment.scale + ""); + writer.println("\t" + masterFragment.defaultDatabaseUsed + ""); + writer.println("\t" + masterFragment.masterVersionDate + ""); + writer.println("\t" + masterFragment.masterComputerID + ""); + writer.println("\t" + masterFragment.masterIDNumber + ""); + writer.println("\t" + masterFragment.domain + ""); + writer.println("\t" + masterFragment.domainCountyID + ""); + writer.println("\t" + masterFragment.domainCountyName + ""); + writer.println("\t" + masterFragment.domainDatabaseServer + ""); + writer.println("\t" + masterFragment.domainDatabaseName + ""); + writer.println("\t" + masterFragment.expectedDONEFiles + ""); + writer.println("\t" + masterFragment.outputDatabaseName + ""); + + writer.println("\t"); + for(DurationFragment df : durationFragments) { + writer.println("\t\t"); + writer.println("\t\t\t" + df.loopableName + ""); + writer.println("\t\t\t" + df.durationSeconds + ""); + writer.println("\t\t"); + } + writer.println("\t"); + + writer.println(""); + } finally { + if(writer != null) { + try { + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return true; + } + + /** + * Obtain the manifest File object + * @param folder folder to be hold the file + * @return a File object for the manifest + **/ + public File getManifestFile(File folder) { + return new File(folder,MANIFEST_FILE_NAME); + } + + /** + * Determine if a folder contains a manifest file + * @param folder folder to be scanned + * @throws IOException if anything goes wrong + * @return true if the folder contains a manifest file + **/ + public boolean containsManifest(File folder) throws IOException { + return getManifestFile(folder).exists(); + } + + /** + * Read a manifest from folder + * @param folder folder holding a manifest file + * @throws Exception if anything goes wrong + * @return true if the file was read + **/ + public boolean readFromFolder(File folder) throws Exception { + File mf = getManifestFile(folder); + if(!mf.exists()) { + return false; + } + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + dbf.setNamespaceAware(true); + try { + DocumentBuilder db = dbf.newDocumentBuilder(); + db.setErrorHandler(new XMLErrorHandler()); + Document doc = db.parse(mf); + // Verify that this is a bundle manifest xml file + Node rootNode = doc.getFirstChild(); + if(!(rootNode != null && rootNode.getNodeName().equalsIgnoreCase("bundlemanifest"))) { + /** @explain The manifest file is corrupt. **/ + Logger.log(LogMessageCategory.ERROR, "Invalid Bundle Manifest XML file."); + return false; + } + // Handle each "sub-node" under the main tag, these are immediate child nodes + for(Node subNode = rootNode.getFirstChild(); subNode != null; subNode = subNode.getNextSibling()) { + String nodeName = subNode.getNodeName(); + if(nodeName.equalsIgnoreCase("machinecontext")) { + context = getText(subNode); + } else if(nodeName.equalsIgnoreCase("humancontext")) { + contextForHumans = getText(subNode); + } else if(nodeName.equalsIgnoreCase("bundlename")) { + bundleName = getText(subNode); + } else if(nodeName.equalsIgnoreCase("retrievetable")) { + String t = getText(subNode); + if(t != null && t.length() > 0) { + tablesToRetrieve.add(t); + } + } else if(nodeName.equalsIgnoreCase("workerVersion")) { + workerVersion = getText(subNode); + } else if(nodeName.equalsIgnoreCase("workerComputerID")) { + workerComputerID = getText(subNode); + } else if(nodeName.equalsIgnoreCase("workerID")) { + workerID = getText(subNode); + } else if(nodeName.equalsIgnoreCase("bundleNumber")) { + bundleNumber = getInt(subNode); + } else if(nodeName.equalsIgnoreCase("durationSeconds")) { + durationSeconds = getFloat(subNode); + } else if(nodeName.equalsIgnoreCase("destinationMasterComputerID")) { + destinationMasterComputerID = getText(subNode); + } else if(nodeName.equalsIgnoreCase("destinationMasterIDNumber")) { + destinationMasterIDNumber = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_outputTimePeriod")) { + masterFragment.outputTimePeriod = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_timeUnits")) { + masterFragment.timeUnits = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_distanceUnits")) { + masterFragment.distanceUnits = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_massUnits")) { + masterFragment.massUnits = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_energyUnits")) { + masterFragment.energyUnits = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_runSpecFileName")) { + masterFragment.runSpecFileName = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_runSpecDescription")) { + masterFragment.runSpecDescription = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_runSpecFileDateTime")) { + masterFragment.runSpecFileDateTime = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_runDateTime")) { + masterFragment.runDateTime = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_model")) { + masterFragment.model = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_scale")) { + masterFragment.scale = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_defaultDatabaseUsed")) { + masterFragment.defaultDatabaseUsed = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_masterVersionDate")) { + masterFragment.masterVersionDate = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_masterComputerID")) { + masterFragment.masterComputerID = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_masterIDNumber")) { + masterFragment.masterIDNumber = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_domain")) { + masterFragment.domain = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_domainCountyID")) { + masterFragment.domainCountyID = getInt(subNode); + } else if(nodeName.equalsIgnoreCase("master_domainCountyName")) { + masterFragment.domainCountyName = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_domainDatabaseServer")) { + masterFragment.domainDatabaseServer = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_domainDatabaseName")) { + masterFragment.domainDatabaseName = getText(subNode); + } else if(nodeName.equalsIgnoreCase("master_expectedDONEFiles")) { + masterFragment.expectedDONEFiles = getInt(subNode); + } else if(nodeName.equalsIgnoreCase("master_outputDatabaseName")) { + masterFragment.outputDatabaseName = getText(subNode); + } else if(nodeName.equalsIgnoreCase("durations")) { + for(Node subNode2 = subNode.getFirstChild(); subNode2 != null; subNode2 = subNode2.getNextSibling()) { + String nodeName2 = subNode2.getNodeName(); + if(nodeName2.equalsIgnoreCase("durationfragment")) { + DurationFragment df = new DurationFragment(); + for(Node subNode3 = subNode2.getFirstChild(); subNode3 != null; subNode3 = subNode3.getNextSibling()) { + String nodeName3 = subNode3.getNodeName(); + if(nodeName3.equalsIgnoreCase("loopablename")) { + df.loopableName = getText(subNode3); + } else if(nodeName3.equalsIgnoreCase("duration")) { + df.durationSeconds = getFloat(subNode3); + } + } + if(df.loopableName != null && df.loopableName.length() > 0) { + durationFragments.add(df); + } + } + } + } + } + } finally { + // Nothing to do here + } + return true; + } + + /** + * Get text within a node. + * @param node XML node of the form text + * @return text within the node + **/ + private static String getText(Node node) { + Node childNode = node.getFirstChild(); + for(Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE || child.getNodeType() == Node.CDATA_SECTION_NODE) { + return StringUtilities.safeGetString(childNode.getNodeValue()); + } + } + return ""; + } + + /** + * Get the float within a node. + * @param node XML node of the form text + * @return float within the node + **/ + private static float getFloat(Node node) { + String t = getText(node); + if(t != null && t.length() > 0) { + try { + return (float)Double.parseDouble(t); + } catch(Exception e) { + // Nothing to do here + } + } + return 0; + } + + /** + * Get the integer within a node. + * @param node XML node of the form text + * @return integer within the node + **/ + private static int getInt(Node node) { + String t = getText(node); + if(t != null && t.length() > 0) { + try { + return Integer.parseInt(t); + } catch(Exception e) { + // Nothing to do here + } + } + return 0; + } + + /** + * Internal class used to handle errors. + **/ + public static class XMLErrorHandler implements ErrorHandler { + /** + * Returns a string describing parse exception details + * @param spe The SAX Parse Exception that occurred. + **/ + private String getParseExceptionInfo(SAXParseException spe) { + String systemId = spe.getSystemId(); + if (systemId == null) { + systemId = "null"; + } + String info = "URI=" + systemId + + " Line=" + spe.getLineNumber() + + ": " + spe.getMessage(); + return info; + } + + /** + * Log SAX parser warning. + * @param spe The SAX Parse Exception that occurred. + **/ + public void warning(SAXParseException spe) throws SAXException { + /** + * @issue Warning: [SAX XML parser exception] + * @explain The RunSpec file is corrupt, likely due to a typo. + **/ + Logger.log(LogMessageCategory.WARNING, "Warning: " + getParseExceptionInfo(spe)); + } + + /** + * Log SAX parser error. + * @param spe The SAX Parse Exception that occurred. + **/ + public void error(SAXParseException spe) throws SAXException { + String message = "Error: " + getParseExceptionInfo(spe); + throw new SAXException(message); + } + + /** + * Log SAX parser fatal error. + * @param spe The SAX Parse Exception that occurred. + **/ + public void fatalError(SAXParseException spe) throws SAXException { + String message = "Fatal Error: " + getParseExceptionInfo(spe); + throw new SAXException(message); + } + } + + public static class ContextHolder { + public int iterationID; + public int processID; + public int roadTypeRecordID; + public int linkRecordID; + public int zoneRecordID; + public int countyRecordID; + public int stateRecordID; + public int year; + public int monthID; + public int dayID; + public int hourID; + public String executionGranularity = ""; + public int executionPriority; + public boolean isCleanUp = false; + public String loopableClassName = ""; + + /** + * Fill this context from the machine-readable context within a BundleManifest + * @param context the machine-readable context within a BundleManifest + **/ + public void fromBundleManifestContext(String context) { + String[] parts = context.split("\\|"); + if(parts == null || parts.length <= 0) { + return; + } + for(int i=0;i 0) { + ch.loopableClassName = simplifyLoopableName(":" + loopableName).substring(1); + } + + String sql = ""; + try { + sql = "insert into bundleTracking (MOVESRunID, hostType, loopableClassName, workerVersion, workerComputerID, workerID," + + " bundleNumber, isCleanUp," + + " iterationID, processID, roadTypeID, linkID," + + " zoneID, countyID, stateID," + + " yearID, monthID, dayID, hourID," + + " executionGranularity, executionPriority, durationSeconds)" + + " values (" + runID + + ", " + (isMaster? "'M'":"'W'") + + ", " + DatabaseUtilities.escapeSQL(StringUtilities.substring(ch.loopableClassName,0,200),true) + + ", " + DatabaseUtilities.escapeSQL(StringUtilities.substring(workerVersion,0,100),true) + + ", " + DatabaseUtilities.escapeSQL(StringUtilities.substring(workerComputerID,0,20),true) + + ", " + DatabaseUtilities.escapeSQL(StringUtilities.substring(workerID,0,10),true) + + ", " + (isMaster? 0:bundleNumber) + + ", " + ((isMaster && ch.isCleanUp)?"'Y'":"'N'") + + ", " + ch.iterationID + + ", " + ch.processID + + ", " + ch.roadTypeRecordID + + ", " + ch.linkRecordID + + ", " + ch.zoneRecordID + + ", " + ch.countyRecordID + + ", " + ch.stateRecordID + + ", " + ch.year + + ", " + ch.monthID + + ", " + ch.dayID + + ", " + ch.hourID + + ", " + DatabaseUtilities.escapeSQL(StringUtilities.substring(ch.executionGranularity,0,10),true) + + ", " + ch.executionPriority + + ", " + duration + + ")"; + SQLRunner.executeSQL(outputDB,sql); + } catch(Exception e) { + Logger.logSqlError(e,"Cannot record event",sql); + } + } +} diff --git a/gov/epa/otaq/moves/common/CellFile.java b/gov/epa/otaq/moves/common/CellFile.java new file mode 100644 index 0000000..85f8158 --- /dev/null +++ b/gov/epa/otaq/moves/common/CellFile.java @@ -0,0 +1,62 @@ +/************************************************************************************************** + * @(#)CellFile.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.io.*; + +/** + * Utilities for reading and writing to XLS, XLSX, CSV, or tabbed text file under a unified API. + * + * @author Wesley Faler + * @version 2009-04-20 +**/ +public class CellFile { + /** Type flag for CSV files **/ + public static final int CSV = 1; + /** Type flag for XLS files **/ + public static final int XLS = 2; + /** Type flag for XLSX files **/ + public static final int XLSX = 3; + /** Type flag for Tabbed Text files **/ + public static final int TABBED_TEXT = 4; + + /** + * Obtain the type of a file based on its extension. + * @param file File to be examined + * @return type of the file (CSV, XLS, XLSX, TABBED_TEXT) + **/ + public static int getFileType(File file) { + return getFileType(file.getName()); + } + + /** + * Obtain the type of a file based on its extension. + * @param fileName name of the file, including extension + * @return type of the file (CSV, XLS, XLSX, TABBED_TEXT) + **/ + public static int getFileType(String fileName) { + String fileExtension = FileUtilities.getFileExtension(fileName,false); + if(fileExtension.equalsIgnoreCase("XLSX")) { + return XLSX; + } else if(fileExtension.equalsIgnoreCase("XLS")) { + return XLS; + } else if(fileExtension.equalsIgnoreCase("CSV")) { + return CSV; + } else { + return TABBED_TEXT; + } + } + + /** + * True if a file type (XLSX, XLS, CSV, TABBED_TEXT) contains worksheets as XLSX and XLS + * file do. + * @param fileType one of the file types (XLSX, XLS, CSV, TABBED_TEXT) + * @return true if the file type contains worksheets + **/ + public static boolean formatAllowsWorksheets(int fileType) { + return fileType == XLSX || fileType == XLS; + } +} diff --git a/gov/epa/otaq/moves/common/CellFileReader.java b/gov/epa/otaq/moves/common/CellFileReader.java new file mode 100644 index 0000000..f9ff98c --- /dev/null +++ b/gov/epa/otaq/moves/common/CellFileReader.java @@ -0,0 +1,623 @@ +/************************************************************************************************** + * @(#)CellFileReader.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; +import java.util.TimeZone; +import java.text.SimpleDateFormat; +import org.apache.poi.ss.usermodel.*; + +/** + * Read XLSX, XLS, CSV, or tabbed text files. + * + * @author Wesley Faler + * @version 2015-06-09 +**/ +public class CellFileReader { + /** Time zone for converting date/time cells, set on first use **/ + private static TimeZone gmtZone = null; + /** Date format for converting date/time cells, set of first use **/ + private static SimpleDateFormat format = null; + + /** File to read from **/ + File file; + /** Type of the file, from CellFile.CSV, .XLS, .XLSX, .TABBED_TEXT **/ + int fileType = 0; + /** InputStream for XLS/XLSX files **/ + InputStream inputStream = null; + /** Workbook for XLS files **/ + Workbook workbook = null; + /** Workbook for XLS files **/ + Sheet sheet = null; + /** column index, zero based **/ + int columnIndex = 0; + /** maximum column index read, zero based. Used for end of data checking in XLS files. **/ + int maxColumnIndex = 0; + /** row index, zero based **/ + int rowIndex = 0; + /** For XLS files, the object holding the cells in the current row **/ + Row row = null; + /** Current line for CSV and tabbed text files **/ + String currentLine = ""; + /** String parts of the current line for CSV and tabbed text files **/ + ArrayList parts = null; + /** Reader for CSV and tabbed text files **/ + BufferedReader reader = null; + /** For XLS files, the 0-based index of the first column **/ + int firstColumn = 0; + /** For XLS files, the 0-based index of the last column **/ + int lastColumn = 0; + /** For XLS files, the 0-based index of the first row **/ + int firstRow = 0; + /** For XLS files, the 0-based index of the last row **/ + int lastRow = 0; + /** Number of consecutive blank lines in an XLS file **/ + int consecutiveBlankLineCount = 0; + /** + * Array of maps, indexed by the column index. Each map is keyed by the phrase + * that indicates a wildcard, and its data is a TreeSet of Objects that represent + * those values. + **/ + TreeMapIgnoreCase[] wildcardDefinitions = new TreeMapIgnoreCase[100]; + + static class WildcardIterator { + // Values will never be empty + public TreeSet values; + public Iterator iterator; + public int index; + public String value; + + public WildcardIterator(TreeSet valuesToUse) { + values = valuesToUse; + iterator = values.iterator(); + index = 0; + value = iterator.next().toString(); + } + } + + /** + * Values of objects on a line that has wildcards. Holds normal objects for + * cell values (String, Integer, Double) and WildcardIterator objects. + **/ + Object[] lineWithWildcards = new Object[100]; + /** True if any wildcard values were found on the line **/ + boolean hasWildcardValuesOnLine = false; + /** True when wildcard data is being returned instead of real file data **/ + boolean isReadingFromWildcards = false; + + /** + * Constructor + * @param fileToUse file to read from + * @param tabToUse for XLS files, the name of the worksheet within the file + * @throws Exception if unable to open the file + **/ + public CellFileReader(File fileToUse, String tabToUse) throws Exception { + file = fileToUse; + fileType = CellFile.getFileType(file); + if(!file.exists()) { + throw new IOException("File does not exist: " + file.getName()); + } + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + inputStream = new FileInputStream(file); + workbook = WorkbookFactory.create(inputStream); + + sheet = null; + if(tabToUse == null || tabToUse.length() <= 0) { + sheet = workbook.getSheetAt(0); + } else { + int howManySheets = workbook.getNumberOfSheets(); + for(int i=0;i= parts.size()) + || ((fileType == CellFile.XLS || fileType == CellFile.XLSX) + && (columnIndex > lastColumn || rowIndex > lastRow))) { + return ""; + } + } + try { + String result = ""; + + if(isReadingFromWildcards) { + result = getDataFromWildcardLine(); + } else if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + Cell cell = getCell(columnIndex,rowIndex); + result = getContents(cell); + } else { + result = (String)parts.get(columnIndex); + } + if(result == null) { + result = ""; + } + result = checkWildcard(result); + columnIndex++; + return result; + } finally { + maxColumnIndex = Math.max(columnIndex,maxColumnIndex); + } + } + + /** + * Read the contents of the next cell on the current line. null + * is returned if there are no more cells for CSV or tabbed text files. + * @return the Integer contents of the next cell or null if blank + * @throws Exception if anything goes wrong, which may happen if the cell + * contains something other than an integer + **/ + public Integer readIntegerCell() throws Exception { + // If no more data on the current CSV or tabbed text line, then return null + if(!isReadingFromWildcards) { + if(((fileType == CellFile.CSV || fileType == CellFile.TABBED_TEXT) + && columnIndex >= parts.size()) + || ((fileType == CellFile.XLS || fileType == CellFile.XLSX) + && (columnIndex > lastColumn || rowIndex > lastRow))) { + return null; + } + } + try { + String contents = null; + + if(isReadingFromWildcards) { + contents = getDataFromWildcardLine(); + } else if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + Cell cell = getCell(columnIndex,rowIndex); + contents = getContents(cell); + } else { + contents = ((String)parts.get(columnIndex)).trim(); + } + + contents = checkWildcard(contents); + columnIndex++; + if(contents == null || contents.length() <= 0) { + return null; + } + return new Integer((int)Double.parseDouble(contents)); + } finally { + maxColumnIndex = Math.max(columnIndex,maxColumnIndex); + } + } + + /** + * Read the contents of the next cell on the current line. null + * is returned if there are no more cells for CSV or tabbed text files. + * @return the Integer contents of the next cell or null if blank + * @throws Exception if anything goes wrong, which may happen if the cell + * contains something other than a double + **/ + public Double readDoubleCell() throws Exception { + // If no more data on the current CSV or tabbed text line, then return null + if(!isReadingFromWildcards) { + if(((fileType == CellFile.CSV || fileType == CellFile.TABBED_TEXT) + && columnIndex >= parts.size()) + || ((fileType == CellFile.XLS || fileType == CellFile.XLSX) + && (columnIndex > lastColumn || rowIndex > lastRow))) { + return null; + } + } + try { + String contents = null; + + if(isReadingFromWildcards) { + contents = getDataFromWildcardLine(); + } else if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + Cell cell = getCell(columnIndex,rowIndex); + contents = getContents(cell); + } else { + contents = ((String)parts.get(columnIndex)).trim(); + } + + contents = checkWildcard(contents); + columnIndex++; + if(contents == null || contents.length() <= 0) { + return null; + } + return new Double(Double.parseDouble(contents)); + } finally { + maxColumnIndex = Math.max(columnIndex,maxColumnIndex); + } + } + + /** + * Advance the cursor in the current row. + **/ + public void skipCell() { + columnIndex++; + maxColumnIndex = Math.max(columnIndex,maxColumnIndex); + } + + /** + * Backup to the previous cell on the current row. + **/ + public void backupOneCell() { + if(columnIndex > 0) { + columnIndex--; + } + } + + /** + * Advance to the start of the next row. + * @throws Exception if anything goes wrong + **/ + public void endRow() throws Exception { + if(hasWildcardValuesOnLine || isReadingFromWildcards) { + hasWildcardValuesOnLine = false; + isReadingFromWildcards = nextWildcardLine(); + if(isReadingFromWildcards) { + columnIndex = 0; + return; + } + } + + rowIndex++; + clearLineValues(); + columnIndex = 0; + currentLine = null; + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + row = null; + if(rowIndex > 65000) { + throw new IOException("XLS/XLSX row limit reached, not all data was read."); + } + if(rowIndex > lastRow) { + currentLine = null; + } else { + currentLine = ""; + row = sheet.getRow(rowIndex); + if(row != null) { + // Build currentLine + firstColumn = Math.min(firstColumn,row.getFirstCellNum()); + lastColumn = Math.max(lastColumn,row.getLastCellNum()); + + int maxColumnToCheck = Math.max(maxColumnIndex,10); + maxColumnToCheck = Math.min(maxColumnIndex,lastColumn); + for(int c=0;c<=maxColumnToCheck;c++) { + Cell cell = row.getCell(c); + if(cell != null) { + try { + String result = getContents(cell); + if(result != null) { + currentLine += result; + } + } catch(Exception e) { + Logger.log(LogMessageCategory.INFO,"Error reading cell " + (c+1) + " in row " + rowIndex); + throw e; + } + } + } + } + // If currentLine is blank and too many rows previously had been blank + // (not just skipped due to comments), then set currentLine to null + // so it will flagged as the end of data. + //System.out.println("currentLine=\""+currentLine+"\""); + if(currentLine.length() > 0) { + consecutiveBlankLineCount = 0; + } else { + consecutiveBlankLineCount++; + if(consecutiveBlankLineCount >= 10) { + currentLine = null; + } + } + } + } else { + currentLine = reader.readLine(); + parts = StringUtilities.splitCSVremovingQuotes(currentLine==null?"":currentLine, + fileType==CellFile.CSV?',':'\t'); + } + } + + /** + * Check the current line's data, skipping blank lines or comment lines. + * Comment lines start with "//" (Java/C++ style), "--" (MySQL style), or "#". + * @return true if the line is blank or a comment line. + **/ + public boolean shouldSkipLine() { + if(currentLine == null) { + return true; + } + String t = currentLine.trim(); + return t.length() == 0 || t.startsWith("//") || t.startsWith("--") || t.startsWith("#"); + } + + /** + * Test for end of data condition. + * @return true if there are no more data lines in the file + **/ + public boolean isEndOfData() { + return currentLine == null; + } + + /** Close the file **/ + public void close() { + clearLineValues(); + if(reader != null) { + try { + reader.close(); + } catch(Exception e) { + // Nothing to do here + } + reader = null; + } + sheet = null; + if(workbook != null) { + // The workbook does not have a close method + workbook = null; + } + if(inputStream != null) { + try { + inputStream.close(); + } catch(Exception e) { + // Nothing to do here + } + inputStream = null; + } + } + + /** + * Get the contents of a cell or null if the cell is empty or blank + * or just spaces. + * @param c data to be examined + * @return text in the cell if the cell is not empty and not all spaces, + * or null. Never zero length and never all spaces. + * @throws IllegalStateException if unable to read a cell value + **/ + private static String getContents(Cell c) throws IllegalStateException { + if(c == null) { + return null; + } + String contents = null; + Date date = null; + switch(c.getCellType()) { + case Cell.CELL_TYPE_BLANK: + return null; + case Cell.CELL_TYPE_BOOLEAN: + return c.getBooleanCellValue()? "1":"0"; + case Cell.CELL_TYPE_ERROR: + return null; + case Cell.CELL_TYPE_FORMULA: + try { + if(DateUtil.isCellDateFormatted(c)) { + date = c.getDateCellValue(); + } + } catch(Exception e) { + date = null; + } + if(date == null) { + try { + contents = c.getStringCellValue(); + } catch(Exception e) { + try { + return "" + c.getNumericCellValue(); + } catch(Exception e2) { + return null; + } + } + } + break; + case Cell.CELL_TYPE_NUMERIC: + if(DateUtil.isCellDateFormatted(c)) { + date = c.getDateCellValue(); + } else { + return "" + c.getNumericCellValue(); + } + case Cell.CELL_TYPE_STRING: + contents = c.getStringCellValue(); + break; + default: + return null; + } + if(date != null) { + if(gmtZone == null) { + gmtZone = TimeZone.getTimeZone("GMT"); + format = new SimpleDateFormat("M/d/yyyy"); + format.setTimeZone(gmtZone); + } + return format.format(date); + } + + if(contents != null) { + if(contents.length() <= 0) { + contents = null; + } else { + contents = contents.trim(); + if(contents.length() <= 0) { + contents = null; + } + } + } + return contents; + } + + /** + * Obtain the 1-based line number of the current row. + * @return the 1-based line number of the current row + **/ + public int getLineNumber() { + return rowIndex+1; + } +} diff --git a/gov/epa/otaq/moves/common/CellFileToMySQLImporter.java b/gov/epa/otaq/moves/common/CellFileToMySQLImporter.java new file mode 100644 index 0000000..560c2f3 --- /dev/null +++ b/gov/epa/otaq/moves/common/CellFileToMySQLImporter.java @@ -0,0 +1,252 @@ +/************************************************************************************************** + * @(#)CellFileToMySQLImporter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.sql.*; +import java.io.*; +import gov.epa.otaq.moves.common.*; + +/** + * Read CSV/XLS/XLSX files into MySQL tables, reformatting column names + * to comply with MySQL rules and learning data types for the columns. + * + * @author Wesley Faler + * @version 2012-11-05 +**/ +public class CellFileToMySQLImporter { + /** + * Convert a SAS-style column or table name to a MySQL-compliant name. + * @param rawName column or table name to be converted + * @return name suitable for use as a column or table name + **/ + public static String getCompliantName(String rawName) { + return rawName.replace('.','_').replace(' ','_'); + } + + public boolean doImport(Connection db, ArrayList messages, + CellFileReader reader, String tableName) throws Exception { + String sql = ""; + // Get rid of the table in the database if it already exists + tableName = getCompliantName(tableName); + sql = "drop table if exists " + tableName; + SQLRunner.executeSQL(db,sql); + + boolean success = true; + File tempFile = new File("CellFileToMySQLImporterTemp.txt"); + if(tempFile.exists()) { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + if(tempFile.exists()) { + throw new SQLException("Unable to delete temporary file used by doImport"); + } + } + + BufferedWriter tempWriter = null; + // Find the column headers. They should be the first non-blank, non-skippable + // row in the file. + while(!reader.isEndOfData() && reader.shouldSkipLine()) { + reader.endRow(); + } + if(reader.isEndOfData()) { + messages.add("ERROR: No header row found for table " + tableName); + return false; + } + ArrayList columnNames = new ArrayList(); + ArrayList columnNamesInFile = new ArrayList(); + ArrayList sqlColumnIndexByFileIndexInt = new ArrayList(); + ArrayList fileColumnIndexBySQLIndexInt = new ArrayList(); + + int consecutiveBlankColumnCount = 0; + while(true) { + String t = reader.readStringCell(); + if(t == null) { + break; + } + t = t.trim(); + if(t.length() <= 0) { + sqlColumnIndexByFileIndexInt.add(new Integer(-1)); + columnNamesInFile.add(""); + consecutiveBlankColumnCount++; + if(consecutiveBlankColumnCount >= 10) { + break; + } + } else { + sqlColumnIndexByFileIndexInt.add(new Integer(columnNames.size())); + fileColumnIndexBySQLIndexInt.add(new Integer(columnNamesInFile.size())); + + t = getCompliantName(t); + columnNamesInFile.add(t); + columnNames.add(t); + + consecutiveBlankColumnCount = 0; + } + } + reader.endRow(); // move past the header row + + int[] dataTypes = new int[columnNames.size()]; // 0:unknown, 1:string, 2:int, 3:double + int[] stringLengths = new int[columnNames.size()]; // max length of string columns + int[] sqlColumnIndexByFileIndex = new int[columnNamesInFile.size()]; + int[] fileColumnIndexBySQLIndex = new int[dataTypes.length]; + for(int i=0;i stringLengths[si]) { + stringLengths[si] = rowData[si].length(); + } + rowObjects[si] = rowData[si]; + break; + case 2: // int + rowData[si] = StringUtilities.safeGetString(reader.readStringCell()); + rowObjects[si] = rowData[si]; + // If any decimal points or scientific notation show up, then flag the cell as double + if(rowData[si].indexOf('.') >= 0 || rowData[si].indexOf('e') > 0) { + dataTypes[si] = 3; // double + } + break; + case 3: // double + rowData[si] = StringUtilities.safeGetString(reader.readStringCell()); + rowObjects[si] = rowData[si]; + break; + } + } + reader.endRow(); + // Write each line to a text file, separating each field by \t and ending + // each line with \n. This makes the file compatible with MySQL's + // LOAD DATA INFILE default settings. + for(int i=0;i 0) { + tempWriter.write("\t"); + } + if(rowData[i] != null) { + tempWriter.write(rowData[i]); + } else { + tempWriter.write("\\N"); + } + } + tempWriter.write("\n"); + } + if(success) { + // Close the writer to the temporary file + tempWriter.close(); + + // Create the data table + String columnNamesText = ""; + sql = ""; + for(int i=0;i 0) { + columnNamesText += ","; + } + columnNamesText += cn; + + if(sql.length() > 0) { + sql += ", "; + } + sql += cn + " "; + switch(dataTypes[i]) { + default: + case 0: // Unknown + break; // this should not happen + case 1: // string + sql += "varchar(" + stringLengths[i] + ") null"; + break; + case 2: // int + sql += "int null"; + break; + case 3: // double + sql += "double null"; + break; + } + } + sql = "create table if not exists " + tableName + "( " + sql + " )"; + SQLRunner.executeSQL(db,sql); + + // Truncate the table + sql = "truncate table " + tableName; + SQLRunner.executeSQL(db,sql); + + // Load the data + sql = "LOAD DATA INFILE '" + + tempFile.getCanonicalPath().replace('\\','/') + "' REPLACE INTO TABLE " + + tableName + " (" + columnNamesText + ")"; + SQLRunner.executeSQL(db,sql); + // After the import, analyze the table for performance reasons + sql = "analyze table " + tableName; + SQLRunner.executeSQL(db,sql); + } + } finally { + query.onFinally(); + if(tempWriter != null) { + try { + tempWriter.close(); + } catch(Exception e) { + // Nothing to do here + } + tempWriter = null; + } + if(tempFile != null && tempFile.exists()) { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return success; + } +} diff --git a/gov/epa/otaq/moves/common/CellFileWriter.java b/gov/epa/otaq/moves/common/CellFileWriter.java new file mode 100644 index 0000000..38755f7 --- /dev/null +++ b/gov/epa/otaq/moves/common/CellFileWriter.java @@ -0,0 +1,409 @@ +/************************************************************************************************** + * @(#)CellFileWriter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.io.*; +import java.sql.*; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.hssf.usermodel.*; +import org.apache.poi.xssf.usermodel.*; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; + +/** + * Encapsulates writing to an XLSX, XLS, CSV, or tabbed text file under a unified API. + * + * @author Wesley Faler + * @version 2013-11-10 +**/ +public class CellFileWriter { + /** File to written into **/ + File file; + /** Type of the file **/ + int fileType = 0; + /** Writer for CSV and tabbed text files **/ + PrintWriter writer = null; + /** Current line for CSV and tabbed text files **/ + String currentLine = ""; + /** Workbook for XLS files **/ + Workbook workbook = null; + /** Sheet for XLS files **/ + Sheet sheet = null; + /** Row for XLS files **/ + Row row = null; + /** Creation helper used when filling XLS/XLSX cells **/ + CreationHelper xlsCreateHelper = null; + /** column index, zero based **/ + int columnIndex = 0; + /** row index, zero based **/ + int rowIndex = 0; + + /** + * Constructor + * @param fileToUse file to be written into + * @param firstTabName if the file is an XLS file, the name of the first worksheet + * otherwise ignored. + * @throws Exception if unable to open the file + **/ + public CellFileWriter(File fileToUse, String firstTabName) throws Exception { + file = fileToUse; + fileType = CellFile.getFileType(file); + if(file.exists()) { + FileUtilities.deleteFileWithRetry(file); + if(file.exists()) { + throw new IOException("Unable to delete existing file: " + file.getName()); + } + } + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + if(fileType == CellFile.XLS) { + workbook = new HSSFWorkbook(); + } else if(fileType == CellFile.XLSX) { + workbook = new SXSSFWorkbook(100); + } + xlsCreateHelper = workbook.getCreationHelper(); + sheet = workbook.createSheet(firstTabName); + } else { + writer = new PrintWriter(new BufferedWriter(new FileWriter(file))); + } + } + + /** + * Obtain the file type + * @return the file type, one of the CSV, XLS, or TABBED_TEXT constants + **/ + public int getFileType() { + return fileType; + } + + /** + * Ensure that the row object exists + * @throws Exception if unable to create a new row should one be needed + **/ + private void ensureRowExists() throws Exception { + if(row == null) { + row = sheet.createRow(rowIndex); + if(row == null) { + throw new Exception("Unable to create XLS/XLSX row " + rowIndex); + } + } + } + + /** + * Create an XLS/XLSX cell. + * @param columnIndexToUse 0-based column index to be used + * @return a new Cell in the current row + * @throws Exception if unable to create a new Cell or if unable to create a new + * row should one be needed + **/ + private Cell createCell(int columnIndexToUse) throws Exception { + ensureRowExists(); + Cell cell = row.createCell(columnIndexToUse); + if(cell == null) { + throw new Exception("Unable to create XLS/XLSX cell: row=" + + rowIndex + ", col=" + columnIndexToUse); + } + return cell; + } + + /** + * Write a value to the file and advance the cell position in the current row. + * The specific type of the cell is infered by the type of the value (Integer, Double, + * String, or other that converts to a String via .toString()). + * @param value value to be written. Must be an Integer, Double, String, or convertable + * to String via a call to toString(). If null, the current cell is merely skipped. + * @throws Exception if anything goes wrong + **/ + public void writeCell(Object value) throws Exception { + if(value == null) { + skipCell(); + } else if(value instanceof Integer) { + writeIntCell(((Integer)value).intValue()); + } else if(value instanceof Double) { + writeDoubleCell(((Double)value).doubleValue()); + } else if(value instanceof String) { + writeTextCell((String)value); + } else { + writeTextCell(value.toString()); + } + } + + /** + * Write a textual value to the file and advance the cell position in the current row. + * @param value value to be written + * @throws Exception if anything goes wrong + **/ + public void writeTextCell(String value) throws Exception { + if(value == null) { + value = ""; + } + if(value.length() <= 0) { + skipCell(); + return; + } + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + if(value.length() > 0) { + createCell(columnIndex).setCellValue( + xlsCreateHelper.createRichTextString(value)); + } + } else if(fileType == CellFile.CSV) { + if(columnIndex > 0) { + currentLine += ","; + } + currentLine += "\""; + currentLine += value; + currentLine += "\""; + } else { + if(columnIndex > 0) { + currentLine += "\t"; + } + currentLine += value; + } + columnIndex++; + } + + /** + * Write an integer value to the file and advance the cell position in the current row. + * @param value value to be written + * @throws Exception if anything goes wrong + **/ + public void writeIntCell(int value) throws Exception { + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + createCell(columnIndex).setCellValue(value); + } else if(fileType == CellFile.CSV) { + if(columnIndex > 0) { + currentLine += ","; + } + currentLine += value; + } else { + if(columnIndex > 0) { + currentLine += "\t"; + } + currentLine += value; + } + columnIndex++; + } + + /** + * Write a double value to the file and advance the cell position in the current row. + * @param value value to be written + * @throws Exception if anything goes wrong + **/ + public void writeDoubleCell(double value) throws Exception { + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + createCell(columnIndex).setCellValue(value); + } else if(fileType == CellFile.CSV) { + if(columnIndex > 0) { + currentLine += ","; + } + currentLine += value; + } else { + if(columnIndex > 0) { + currentLine += "\t"; + } + currentLine += value; + } + columnIndex++; + } + + /** + * Advance the cursor in the current row. + **/ + public void skipCell() { + columnIndex++; + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + // Nothing to do here + } else if(fileType == CellFile.CSV) { + currentLine += ","; + } else { + currentLine += "\t"; + } + } + + /** + * Advance to the start of the next row. + * @throws Exception if anything goes wrong + **/ + public void endRow() throws Exception { + rowIndex++; + columnIndex = 0; + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + row = null; + if(fileType == CellFile.XLS && rowIndex > 65000) { + //throw new IOException("XLS/XLSX row limit reached, not all data was written."); + throw new IOException("XLS row limit reached, not all data was written."); + } + } else { + writer.println(currentLine); + currentLine = ""; + } + } + + /** + * Start a new tab within the file if XLS, otherwise a new file with a + * name of the form "originalFileName_tabName.ext". + * @param tabName name of the new data tab or file. + * @throws Exception if anything goes wrong + **/ + public void startTab(String tabName) throws Exception { + flush(); + if(fileType == CellFile.XLS || fileType == CellFile.XLSX) { + sheet = null; + row = null; + sheet = workbook.createSheet(tabName); + } else { + writer.close(); + writer = null; + String tabFileName = FileUtilities.getBaseFileName(file) + + "_" + tabName + FileUtilities.getFileExtension(file,true); + File tabFile = new File(file.getParentFile(),tabFileName); + if(tabFile.exists()) { + FileUtilities.deleteFileWithRetry(tabFile); + if(tabFile.exists()) { + throw new IOException("Unable to delete existing file: " + tabFile.getName()); + } + } + writer = new PrintWriter(new BufferedWriter(new FileWriter(tabFile))); + } + columnIndex = 0; + rowIndex = 0; + currentLine = ""; + } + + /** + * Flush all data, moving to the beginning of a new row on the current tab. + * If the current row does not have any data, no new row will be started. + **/ + public void flush() { + if(writer != null) { + try { + if(currentLine.length() > 0) { + writer.println(currentLine); + currentLine = ""; + } + writer.flush(); + } catch(Exception e) { + // Nothing to do here + } + } + if(columnIndex > 0) { + columnIndex = 0; + rowIndex++; + row = null; + } + currentLine = ""; + } + + /** Flush all data and close the file **/ + public void close() { + flush(); + if(writer != null) { + try { + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + writer = null; + } + sheet = null; + if(workbook != null) { + FileOutputStream output = null; + try { + output = new FileOutputStream(file); + workbook.write(output); + } catch(Exception e) { + // Nothing to do here + } finally { + if(output != null) { + try { + output.close(); + } catch(Exception e) { + // Nothing to do here + } + } + output = null; + if(fileType == CellFile.XLSX) { + ((SXSSFWorkbook)workbook).dispose(); + } + } + workbook = null; + } + } + + /** + * Execute an SQL query and write its results to the file in table form. + * @param db Database to query + * @param sql statement to be executed + * @param filter optional filter to determine record inclusion + * @return number of rows of data, not including the header row, written + * @throws Exception if anything goes wrong + **/ + public int writeSQLResults(Connection db, String sql, ISQLFilter filter) throws Exception { + int[] dataTypes = null; // -1:not used, 0:getString(), 1:getInt, 2:getFloat, 3:getDouble + SQLRunner.Query query = new SQLRunner.Query(); + int rowsWritten = 0; + try { + //query.open(db,sql); + query.openLargeResultSet(db,sql); + // Get meta data about each column and output the column names + ResultSetMetaData metaData = query.rs.getMetaData(); + if(filter != null && !filter.onOpen(metaData)) { + return rowsWritten; + } + int columnCount = metaData.getColumnCount(); + dataTypes = new int[columnCount]; // default to 0 using getString() + for(int i=0;i= 0) { + writeTextCell(metaData.getColumnName(i+1)); + } + } + endRow(); + // Output data from each record + while(query.rs.next()) { + if(filter != null && !filter.canUseRow(query.rs)) { + continue; + } + for(int i=0;i 0) { + return true; + } + } + return false; + } + + /** + * Opens a JDBC connection object to the specified database. + * @throws ClassNotFoundException If there was an error loading the database driver class. + * @throws SQLException If there was a database error opening the connection. + * @return The database connection + **/ + public Connection openConnection() throws ClassNotFoundException, SQLException { + return openConnection(true); + } + + /** + * Opens a JDBC connection object to the specified database. + * @param useDatabaseName true if the database name should be required, false if a generic connection + * to the server should be extablished (useful for creating databases). + * @throws ClassNotFoundException If there was an error loading the database driver class. + * @throws SQLException If there was a database error opening the connection. + * @return The database connection + **/ + public Connection openConnection(boolean useDatabaseName) throws ClassNotFoundException, SQLException { + readPortConfiguration(); + + // If the user name is blank, try using the user/password + // provided via a configuration file. + if(userName == null || userName.length() <= 0) { + userName = userProvidedUserName; + password = userProvidedPassword; + } + + try { + //String driverNameToUse = "org.gjt.mm.mysql.Driver"; + String driverNameToUse = "com.mysql.jdbc.Driver"; + + if(driverName != null && driverName.length() > 0) { + driverNameToUse = driverName; + } + // load the driver + Class.forName(driverNameToUse); + // open the connection + String connectionString = "jdbc:mysql://" + serverName; + if(MySQLPort > 0) { + connectionString += ":" + MySQLPort; + } + if(useDatabaseName) { + connectionString += "/" + databaseName; + } else { + connectionString += "/"; + } + + Connection result = DriverManager.getConnection(connectionString, userName, password); + DatabaseUtilities.isLocal(result); + return result; + } catch (ClassNotFoundException exception) { + // Could not find the database driver + errorMessage = "load driver: " + exception.toString(); + + throw exception; + } catch (SQLException exception) { + // Could not connect to the database + errorMessage = "getConnection: " + exception.toString(); + + throw exception; + } + } + + /** + * Opens a JDBC connection object to the specified database. Returns null instead of throwing + * an exception if the open attempt fails . + * @return The database connection or null on error. + **/ + public Connection openConnectionOrNull() { + return openConnectionOrNull(true); + } + + /** + * Opens a JDBC connection object to the specified database. Returns null instead of throwing + * an exception if the open attempt fails . + * @param useDatabaseName true if the database name should be required, false if a generic connection + * to the server should be extablished (useful for creating databases). + * @return The database connection or null on error. + **/ + public Connection openConnectionOrNull(boolean useDatabaseName) { + try { + return openConnection(useDatabaseName); + } catch (Exception exception) { + return null; + } + } + + /** + * Safely create a database, including running a script if the database did not + * already exist. + * @param scriptFileName The name of a script file (of SQL commands) to execute. + * May be null. + * @return NOT_CREATED, EXISTS, or CREATED. + **/ + public int safeCreateDatabase(String scriptFileName) { + int result = safeCreateDatabaseCore(scriptFileName); + if(scriptFileName != null) { + String lowercaseScriptFileName = scriptFileName.toLowerCase(); + if(lowercaseScriptFileName.indexOf("createoutput.sql") >= 0) { + if(result == CREATED) { + Connection db = openConnectionOrNull(); + if(db != null) { + if(!CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + try { + SQLRunner.executeSQL(db,"alter table MOVESOutput drop fuelSubTypeID"); + } catch(Exception e) { + // Nothing to do here. + // This exception will occur when MOVESOutput does not already contain + // the fuelSubTypeID column. The net result is the desired state of + // a MOVESOutput table without the column, so don't complain. + } + } + try { + DatabaseUtilities.executeScript(db,new File("database/CreateOutputRates.sql")); + } catch(Exception e) { + Logger.logError(e, "Create database, "+databaseName+", from script failed."); + } finally { + DatabaseUtilities.closeConnection(db); + } + } + } + } + } + return result; + } + + /** + * Safely create a database, including running a script if the database did not + * already exist. + * @param scriptFileName The name of a script file (of SQL commands) to execute. + * May be null. + * @return NOT_CREATED, EXISTS, or CREATED. + **/ + int safeCreateDatabaseCore(String scriptFileName) { + int result = NOT_CREATED; + if(databaseName == null || databaseName.length() == 0) { + return result; + } + Connection db = openConnectionOrNull(); + if(null == db) { + // Maybe the database doesn't exist, so try just the server + String oldDatabaseName = databaseName; + databaseName = new String(""); + db = openConnectionOrNull(); + databaseName = oldDatabaseName; + if(null == db) { + // There is no way to connect to the server, so there is nothing else to be done. + return result; + } + try { + // Create the database + SQLRunner.executeSQL(db,"CREATE DATABASE " + databaseName); + // Use the database + SQLRunner.executeSQL(db,"USE " + databaseName); + if(scriptFileName != null) { + // Run the script + DatabaseUtilities.executeScript(db,new File(scriptFileName)); + } + result = CREATED; + } catch(Exception e) { + /** + * @issue Create database, [databaseName], from script failed. + * @explain An attempt to create a database using a script file failed. Most + * likely there is a syntax error in the script file itself. See the SQL + * exception printed along with this message for details. + **/ + Logger.logError(e, "Create database, "+databaseName+", from script failed."); + DatabaseUtilities.closeConnection(db); + return result; + } + } else { + result = EXISTS; + } + DatabaseUtilities.closeConnection(db); + return result; + } + + /** + * Overrides Object.equals() to provide a real equality test. + * @param other The object to test for equality against. + * @return True if equal. + **/ + public boolean equals(Object other) { + if(!(other instanceof DatabaseSelection)) { + return false; + } + return compareTo(other) == 0; + } + + /** + * Overrides Object.clone() method, to provide a "deep copy". + **/ + public Object clone() { + DatabaseSelection newCopy = new DatabaseSelection(); + // using 'this' keyword for emphasis, though technically not necessary + newCopy.serverName = new String(this.serverName); + newCopy.databaseName = new String(this.databaseName); + newCopy.userName = new String(this.userName); + newCopy.password = new String(this.password); + newCopy.driverName = new String(this.driverName); + newCopy.description = new String(this.description); + return newCopy; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another DatabaseSelection object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof DatabaseSelection) { + DatabaseSelection otherSelection = (DatabaseSelection)other; + int result = serverName.compareTo(otherSelection.serverName); + if(result == 0) { + result = databaseName.compareTo(otherSelection.databaseName); + } + if(result == 0) { + result = userName.compareTo(otherSelection.userName); + } + if(result == 0) { + result = password.compareTo(otherSelection.password); + } + return result; + } else { + throw new ClassCastException(); + } + } + + /** + * Returns a String representation of this object. Added for debugging. + * @return The String representation. + **/ + public String toString() { + //return serverName + "/" + databaseName + "/" + userName + "/" + password; + return serverName + " / " + databaseName + " / " + description; + } + + /** + * Opens a "simple" database connection, that is guaranteed to work by using known, good + * input params. By not specifying any database name to connect to, this allows a database + * connection, but any subsequent sql statements should first select a database to work in. + * @return A Connection object, or null if JDBC is not available. + **/ + public static Connection openKnownWorkingConnection() { + DatabaseSelection db = new DatabaseSelection(); + db.serverName = "localhost"; + db.databaseName = ""; + db.userName = DatabaseSelection.SERVER_USER_NAME; + db.password = DatabaseSelection.SERVER_PASSWORD; + return db.openConnectionOrNull(); + } + + /** + * Read the MySQL.txt file, if it exists, looking for the port number on a single line + * by itself. + **/ + private static void readPortConfiguration() { + if(hasReadPortConfiguration) { + return; + } + hasReadPortConfiguration = true; + try { + ArrayList lines = FileUtilities.readLines(new File("MySQL.txt")); + if(lines == null) { + return; + } + for(Iterator i=lines.iterator();i.hasNext();) { + try { + int t = Integer.parseInt(i.next().trim()); + if(t > 0) { + MySQLPort = t; + return; + } + } catch(Exception e) { + // Nothing to do here, it may be a comment or blank line + } + } + } catch(Exception e) { + // Nothing to do here + } + } +} diff --git a/gov/epa/otaq/moves/common/DatabaseSelectionTest.java b/gov/epa/otaq/moves/common/DatabaseSelectionTest.java new file mode 100644 index 0000000..6ee7873 --- /dev/null +++ b/gov/epa/otaq/moves/common/DatabaseSelectionTest.java @@ -0,0 +1,50 @@ +/************************************************************************************************** + * @(#)DatabaseSelectionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the DatabaseSelection class + * + * @author Cimulus + * @version 2003-02-06 +**/ +public class DatabaseSelectionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DatabaseSelectionTest(String name) { + super(name); + } + + /** Implements the test case(s). **/ + public void testCase() { + // Verify that a default database connection can be opened, using hardcoded test values + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = "localhost"; + dbSelection.databaseName = ""; + dbSelection.userName = ""; + dbSelection.password = ""; + Connection c = dbSelection.openConnectionOrNull(); + assertTrue("errorMessage = " + dbSelection.errorMessage, c != null); + assertNotNull(c); + // Close db resources + try { + c.close(); + } catch(SQLException e) { + // + } + } + + /** Tests openKnownWorkingConnection() **/ + public void testKnownWorkingConnection() { + assertNotNull(DatabaseSelection.openKnownWorkingConnection()); + } +} diff --git a/gov/epa/otaq/moves/common/DatabaseUtilities.java b/gov/epa/otaq/moves/common/DatabaseUtilities.java new file mode 100644 index 0000000..d70f75b --- /dev/null +++ b/gov/epa/otaq/moves/common/DatabaseUtilities.java @@ -0,0 +1,990 @@ +/************************************************************************************************** + * @(#)DatabaseUtilities.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; +import java.sql.*; +import java.util.*; + +/** + * This static class provides support for working with SQL Scripts and performing general-purpose + * operations on a database and its contents. + * + * @author Wes Faler + * @author Mitch C. (Minor mod for task 18 item 169) + * @version 2014-09-17 +**/ +public class DatabaseUtilities { + /** + * Default argument version of the method below. + * @param sql The text to be escaped. + * @return The escaped text. + **/ + public static String escapeSQL(String sql) { + return escapeSQL(sql, true); + } + + /** + * Escapes a string so that it can be used in the SQL statement as apposed to being passed as a + * parameter. This may be done for efficiency but it is more often done for SQL terms such as + * table, column, and export file names that cannot be passed as parameters. This routine was + * written to work with MySql. Unfortuantely, there isn't another Java supported way to escape + * SQL text in a database agnostic fashion. + * @param sql The text to be escaped. + * @param addOuterQuotes Flag indicating if result should be returned in quotes. + * @return The escaped text. + **/ + public static String escapeSQL(String sql, boolean addOuterQuotes) { + if(sql.indexOf('\'') < 0 && sql.indexOf('\\') < 0) { + return addOuterQuotes? "'" + sql + "'" : sql; + } + + String result = ""; + char iterCharacter; + + for(int i = 0; i < sql.length(); i++) { + iterCharacter = sql.charAt(i); + + switch (iterCharacter) { + // Escape ' to \' + case '\'': + result += "\\\'"; + break; + // Escape \ to \\ + case '\\': + result += "\\\\"; + break; + default: + result += iterCharacter; + break; + } + } + + return addOuterQuotes ? "'" + result + "'" : result; + } + + /** + * Simple method to close a database connection. This catches and logs database errors. + * @param db The database connection to close. + **/ + public static void closeConnection(Connection db) { + if(db != null) { + try { + db.close(); + } catch (SQLException exception) { + /** + * @issue Close database connection failed + * @explain MOVES was unable to close its connection to a database. Most likely this + * is due to the database server itself no longer being available, in which case there + * are more pressing issues with the database server than with MOVES. + **/ + Logger.logError(exception, "Close database connection failed"); + } + } + } + + /** + * Copies a ResultSet's rows to a destination table using the specified Connection. + * Does not close the ResultSet object when finished. + * @param rs An opened ResultSet object + * @param db An opened Connection object containing the destination table. + * @param tableName The name of the destination table. + * @throws SQLException from any of java.sql operations. + **/ + public static void copyResultSetToTable(ResultSet rs, Connection db, String tableName) + throws SQLException { + // Build the INSERT statement using the column names + String sql = "INSERT INTO " + tableName + " ("; + String valuesClause = ") VALUES ("; + ResultSetMetaData metaData = rs.getMetaData(); + int columnCount = 0; + for(int i = 0; i < metaData.getColumnCount(); i++) { + if(i != 0) { + sql += ","; + valuesClause += ","; + } + sql += metaData.getColumnName(i + 1); + valuesClause += "?"; + columnCount++; + } + sql += (valuesClause + ")"); + PreparedStatement statement = db.prepareStatement(sql); + // Iterate through all rows + while(rs.next()) { + statement.clearParameters(); + for(int i = 0; i < columnCount; i++) { + statement.setObject(i + 1, rs.getObject(i + 1)); + } + // Add this row to the destination table + SQLRunner.execute(statement,sql); + } + statement.close(); + } + + /** + * Executes an SQL script on the specified database. + * This currently doesn't handle multiple statements per line. + * @param database The target database to execute the script in. + * @param scriptFile The script file to execute. + * @throws FileNotFoundException If the script file can not be found. + * @throws IOException If there is a file I/O error. + * @throws SQLException If there is a database error. + **/ + public static void executeScript(Connection database, File scriptFile) + throws FileNotFoundException, IOException, SQLException { + executeScript(database,scriptFile,null); + } + + /** + * Executes an SQL script on the specified database. + * This currently doesn't handle multiple statements per line. + * @param database The target database to execute the script in. + * @param scriptFile The script file to execute. + * @param replacements Substitution text for each command. Each command in the script + * is searched for matches against this map and updated values replaced into the command + * before execution. May be null or empty. + * @throws FileNotFoundException If the script file can not be found. + * @throws IOException If there is a file I/O error. + * @throws SQLException If there is a database error. + **/ + public static void executeScript(Connection database, File scriptFile, + TreeMapIgnoreCase replacements) + throws FileNotFoundException, IOException, SQLException { + executeScript(database,scriptFile,replacements,false); + } + + /** + * Executes an SQL script on the specified database. + * This currently doesn't handle multiple statements per line. + * @param database The target database to execute the script in. + * @param scriptFile The script file to execute. + * @param replacements Substitution text for each command. Each command in the script + * is searched for matches against this map and updated values replaced into the command + * before execution. May be null or empty. + * @param ignoreSQLExceptions when true, SQL errors do not stop execution. + * @throws FileNotFoundException If the script file can not be found. + * @throws IOException If there is a file I/O error. + * @throws SQLException If there is a database error. + **/ + public static void executeScript(Connection database, File scriptFile, + TreeMapIgnoreCase replacements, boolean ignoreSQLExceptions) + throws FileNotFoundException, IOException, SQLException { + final String eol = System.getProperty("line.separator"); + BufferedReader sqlReader = new BufferedReader(new FileReader(scriptFile)); + String currentSQLStatement = ""; + try { + boolean isInBlock = false; + + while(true) { + String entireSQLStatement = null; + String iterLine = sqlReader.readLine(); + if(iterLine == null) { + break; + } + + iterLine = trimSQLEOLComment(iterLine); + if(isInBlock) { + if(iterLine.equalsIgnoreCase("EndBlock")) { + isInBlock = false; + iterLine = ""; + entireSQLStatement = currentSQLStatement; + } else { + currentSQLStatement += iterLine + "\n"; + continue; + } + } else if(iterLine.equalsIgnoreCase("BeginBlock")) { + isInBlock = true; + currentSQLStatement = ""; + continue; + } else { + currentSQLStatement += iterLine; + entireSQLStatement = getCompleteSQLStatement(currentSQLStatement); + } + if(entireSQLStatement != null) { + if(replacements != null && replacements.size() > 0) { + entireSQLStatement = + StringUtilities.doReplacements(entireSQLStatement,replacements); + } + if(ignoreSQLExceptions) { + try { + SQLRunner.executeSQL(database, entireSQLStatement); + } catch(Exception e) { + // Nothing to do here + } + } else { + SQLRunner.executeSQL(database, entireSQLStatement); + } + currentSQLStatement = ""; + } else { +// currentSQLStatement += eol; + currentSQLStatement += " "; + } + } + } catch(SQLException e) { + /** + * @issue Failed to execute script: [currentSQLStatement] + * @explain While executing the statements within a SQL script file, MOVES found + * an error with a statement. + **/ + Logger.log(LogMessageCategory.INFO,"Failed to execute script: " + currentSQLStatement); + throw e; + } finally { + sqlReader.close(); + } + if(currentSQLStatement.trim().length() > 0) { + /** + * @issue Script [scriptFileName] has unexecuted SQL at the end: [sql] + * @explain All statements in a script must end with a semicolon (;). + **/ + Logger.log(LogMessageCategory.ERROR,"Script " + scriptFile.getName() + + " has unexecuted SQL at the end: " + currentSQLStatement); + } + } + + /** + * Gets a completed SQL statement from the given text block. The statement must be terminated + * by a single ';' character. This doesn't handle multiple statements within the same text + * block. It can potentially fail if using a database system where ';' isn't an SQL terminator + * or if the line is in the middle of a multi-line quoted string. + * @param text The source SQL line. + * @return The entire SQL statement without the terminating character. + **/ + public static String getCompleteSQLStatement(String text) { + for (int i = text.length() - 1; i >= 0; i--) { + char iterChar = text.charAt(i); + + if(iterChar == ';') { + return text.substring(0, i); + } else if(!Character.isWhitespace(iterChar)) { + return null; + } + } + + return null; + } + + + /** + * Trims end-of-line style comments ("--") from SQL statements. This makes the output + * produced by the SQLRunner more readable while allowing section comments to be added to the + * SQl script. In-line comments (i.e. start with "/*") are not removed and can be used to + * record information in the output produced by SQLRunner. + * @param text The source SQL line. + * @return The SQL up to the start of an End-of-Line comment. + **/ + static String trimSQLEOLComment(String text) { + boolean startComment = false; + for (int i = 0; iis an error if the table is not + * present in the destination database. It is an optional error if the table is not present + * in the source database. This allows partial databases to be imported easier. + * @param source The database to get data from. + * @param destination The database to write data to + * @param tableName The table name to copy over. + * @throws SQLException If an SQL error occurs. + * @throws IOException If an IO error occurs while working with a temporary data file. + * @return true if the files were copied, false if they could not be because they don't + * exist on locally reachable paths + **/ + public static boolean copyTableFiles(Connection source, Connection destination, + String tableName) throws SQLException, IOException { + if(!isLocal(source) || !isLocal(destination)) { + return false; + } + String sourceDatabaseName = source.getCatalog(); + String destinationDatabaseName = destination.getCatalog(); + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + try { + // Get the data directory + String dataFolderName = null; + sql = "SHOW VARIABLES"; + query.open(source,sql); + while(query.rs.next()) { + String name = query.rs.getString("Variable_name"); + if(name != null && name.equalsIgnoreCase("datadir")) { + dataFolderName = query.rs.getString("Value"); + break; + } + } + query.close(); + + if(dataFolderName == null || dataFolderName.length() <= 0) { + throw new SQLException("Unable to find datadir variable using SHOW VARIABLES"); + } + File dataFolder = new File(dataFolderName); + if(!dataFolder.exists()) { + // If the folder doesn't exist, we can't do a local copy. Return without exception. + return false; + } + File sourceFolder = new File(dataFolder,sourceDatabaseName); + File destFolder = new File(dataFolder,destinationDatabaseName); + if(!sourceFolder.exists() || !destFolder.exists()) { + // If the folders don't exist, we can't do a local copy. Return without exception. + return false; + } + File sourceFRM = new File(sourceFolder,tableName + ".frm"); + File destFRM = new File(destFolder,sourceFRM.getName()); + + File sourceMYD = new File(sourceFolder,tableName + ".MYD"); + File destMYD = new File(destFolder,sourceMYD.getName()); + + File sourceMYI = new File(sourceFolder,tableName + ".MYI"); + File destMYI = new File(destFolder,sourceMYI.getName()); + + if(!sourceFRM.exists() || !sourceMYD.exists() || !sourceMYI.exists()) { + // If the source files don't exist, we can't do a local copy. Return without exception. + return false; + } + + sql = "drop table " + tableName; + SQLRunner.executeSQL(destination,sql); + + sql = "flush tables"; + SQLRunner.executeSQL(destination,sql); + + sql = "flush tables"; + SQLRunner.executeSQL(source,sql); + + if(!FileUtilities.copyFile(sourceMYI,destMYI,true)) { + throw new IOException("Unable to copy " + sourceMYI.getCanonicalPath() + + " to " + destMYI.getCanonicalPath()); + } + if(!FileUtilities.copyFile(sourceMYD,destMYD,true)) { + throw new IOException("Unable to copy " + sourceMYD.getCanonicalPath() + + " to " + destMYD.getCanonicalPath()); + } + if(!FileUtilities.copyFile(sourceFRM,destFRM,true)) { + throw new IOException("Unable to copy " + sourceFRM.getCanonicalPath() + + " to " + destFRM.getCanonicalPath()); + } + /** + * @issue Copied table file [sourceDatabaseName]/[tableName] to [destinationDatabaseName] + * @explain For speed sake, MOVES copied the MySQL files associated with a table directly + * instead of performing an INSERT..SELECT operation. This is informational only. + **/ + Logger.log(LogMessageCategory.INFO,"Copied table file " + sourceDatabaseName + "/" + + tableName + " to " + destinationDatabaseName); + return true; + } finally { + query.onFinally(); + } + } + + /** + * Copies a table from one database to another. It is an error if the table is not + * present in the destination database. It is an optional error if the table is not present + * in the source database. This allows partial databases to be imported easier. + * If uniquely keyed record is already present in the destination database table + * new record is IGNOREd. This was default behavior in MySQL 3.23.49 + * and was made explicit in this method to accomodate upgrade to MySQL 4.0.21 + * @param source The database to get data from. + * @param destination The database to write data to + * @param tableName The table name to copy over. + * @param whereClause The where clause to filter the rows of the source table with. + * @param isErrorIfNotInSource true if a SQLException should be thrown if the table + * does not exist in the source database + * @return true if any data was copied, may be false if there were no errors but no data was + * copied from the source. + * @throws SQLException If an SQL error occurs. + * @throws IOException If an IO error occurs while working with a temporary data file. + **/ + public static boolean copyTable(Connection source, Connection destination, + String tableName, String whereClause, boolean isErrorIfNotInSource) + throws SQLException, IOException { + String sourceDatabaseName = source.getCatalog(); + String destinationDatabaseName = destination.getCatalog(); + String sql = ""; + String columns=""; + sql = "SELECT * FROM " + tableName + " LIMIT 0"; + boolean isExtractingFromSource = true; + boolean canDoWholeTableCopy = false; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(destination,sql); + ResultSetMetaData metaData = query.rs.getMetaData(); + int columnCount = metaData.getColumnCount(); + for(int i=1; i<= columnCount; i++) { + if(i == 1) { + columns = metaData.getColumnName(1); + } else { + columns += "," + metaData.getColumnName(i); + } + } + query.close(); + + // If there is no whereClause and the destination table is empty, + // it can be totally replaced with the source table's files. + if(tableName.equalsIgnoreCase("SampleVehiclePopulation")) { + if(whereClause == null || whereClause.length() <= 0) { + sql = "select count(*) from " + tableName; + int count = (int)SQLRunner.executeScalar(destination,sql); + if(count <= 0) { + canDoWholeTableCopy = true; + } + } + } + + if(areSameServer(source,destination)) { + // setup so that if the following SQL fails, an error report will get made, + // since it is an error for the table not to exist in the destination database. + isExtractingFromSource = false; + + sql = "select count(*) from " + tableName; + int sourceCount = (int)SQLRunner.executeScalar(source,sql); + // If we're here, it means the source table does exist. + if(sourceCount > 0) { + if(canDoWholeTableCopy) { + if(copyTableFiles(source,destination,tableName)) { + return true; + } + // If unable to copy the files, then fall back to native SQL + } + sql = "INSERT IGNORE INTO " + destinationDatabaseName + "." + tableName + + "(" + columns + ") SELECT " + columns + " FROM " + + tableName; + if(whereClause.length() > 0) { + sql += " WHERE " + whereClause; + } + int rowsAffected = SQLRunner.executeSQL(source,sql); + return rowsAffected > 0; + } + } else { + query.close(); + // Do a server-to-server INSERT IGNORE INTO + return moveDataServerToServer(source,destination,tableName,whereClause,query,columns,columnCount,"INSERT IGNORE INTO"); + } + } catch(SQLException e) { + if(isErrorIfNotInSource) { + Logger.logSqlError(e, "Copy table, "+tableName+", from source database failed.", + sql); + throw e; + } else if(!isExtractingFromSource || e.getMessage().indexOf("doesn't exist") < 0) { + Logger.logSqlError(e, "Copy table, "+tableName+", to destination database failed.", + sql); + throw e; + } + } catch(IOException e) { + if(isErrorIfNotInSource) { + Logger.logSqlError(e, "Copy table, "+tableName+", from source database failed.", + sql); + throw e; + } else if(!isExtractingFromSource || e.getMessage().indexOf("doesn't exist") < 0) { + Logger.logSqlError(e, "Copy table, "+tableName+", to destination database failed.", + sql); + throw e; + } + } finally { + query.onFinally(); + } + return false; + } + + /** + * Copies a table from one database to another. It is an error if the table is not + * present in the destination database. It is an optional error if the table is not present + * in the source database. This allows partial databases to be imported easier. + * If uniquely keyed record is already present in the destination database table, + * the existing destination record will be replaced. + * @param source The database to get data from. + * @param destination The database to write data to + * @param tableName The table name to copy over. + * @param whereClause The where clause to filter the rows of the source table with. + * @param isErrorIfNotInSource true if a SQLException should be thrown if the table + * does not exist in the source database + * @throws SQLException If an SQL error occurs. + * @throws IOException If an IO error occurs while working with a temporary data file. + **/ + public static void replaceIntoTable(Connection source, Connection destination, + String tableName, String whereClause, boolean isErrorIfNotInSource) + throws SQLException, IOException { + String sourceDatabaseName = source.getCatalog(); + String destinationDatabaseName = destination.getCatalog(); + //File transferFile = new File("DatabaseUtilities_copyTable.temp"); + String sql; + String columns=""; + sql = "SELECT * FROM " + tableName + " LIMIT 0"; + boolean isExtractingFromSource = true; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(destination,sql); + ResultSetMetaData metaData = query.rs.getMetaData(); + int columnCount = metaData.getColumnCount(); + for(int i=1; i<= columnCount; i++) { + if(i == 1) { + columns = metaData.getColumnName(1); + } else { + columns += "," + metaData.getColumnName(i); + } + } + query.close(); + + if(areSameServer(source,destination)) { + // setup so that if the following SQL fails, an error report will get made, + // since it is an error for the table not to exist in the destination database. + isExtractingFromSource = false; + + sql = "REPLACE INTO " + destinationDatabaseName + "." + tableName + + "(" + columns + ") SELECT " + columns + " FROM " + + tableName; + if(whereClause.length() > 0) { + sql += " WHERE " + whereClause; + } + SQLRunner.executeSQL(source,sql); + } else { + query.close(); + // Do a server-to-server REPLACE INTO + moveDataServerToServer(source,destination,tableName,whereClause,query,columns,columnCount,"REPLACE INTO"); + } + } catch(SQLException e) { + if(isErrorIfNotInSource) { + Logger.logSqlError(e, "Replace into table, "+tableName + +", from source database failed.", + sql); + throw e; + } else if(!isExtractingFromSource || e.getMessage().indexOf("doesn't exist") < 0) { + Logger.logSqlError(e, "Replace into table, "+tableName + +", to destination database failed.", + sql); + throw e; + } + } finally { + query.onFinally(); + } + } + + /** + * Copies a table from one server to another. + * @param source The database to get data from. + * @param destination The database to write data to + * @param tableName The table name to copy over. + * @param whereClause The where clause to filter the rows of the source table with. + * @param query query object to be used + * @param columns comma separated list of columns to be transfered + * @param columnCount number of columns to be transfered + * @param sqlBase "REPLACE INTO" or "INSERT INTO" or "INSERT IGNORE INTO" clause without table or column names + * @return true if any data was transferred, false if there is no data even if no errors occurred + * @throws SQLException If an SQL error occurs. + **/ + public static boolean moveDataServerToServer(Connection source, Connection destination, + String tableName, String whereClause, + SQLRunner.Query query, + String columns, + int columnCount, + String sqlBase) throws SQLException, IOException { + sqlBase += " " + tableName + "(" + columns + ") VALUES "; + String sql = "SELECT COUNT(*) FROM " + tableName; + if(whereClause.length() > 0) { + sql += " WHERE " + whereClause; + } + int sourceRowCount = (int)SQLRunner.executeScalar(source,sql); + if(sourceRowCount <= 0) { + return false; // nothing to do, no data to transfer + } + + sql = "SELECT " + columns + " FROM " + tableName; + if(whereClause.length() > 0) { + sql += " WHERE " + whereClause; + } + boolean isLargeResultSet = false; + if(sourceRowCount <= 100000) { // estimated to fit in 50MB at 500 bytes/record + query.open(source,sql); + } else { + isLargeResultSet = true; + query.openLargeResultSet(source,sql); + } + String sqlBatch = ""; + int i, batchCount = 0; + String s, line; + while(query.rs.next()) { + if(sqlBatch.length() > 0) { + line = ",("; + } else { + line = "("; + } + for(i=1;i<=columnCount;i++) { + s = query.rs.getString(i); + if(query.rs.wasNull()) { + if(i == 1) { + line += "null"; + } else { + line += ",null"; + } + } else { + s = DatabaseUtilities.escapeSQL(s,false); + if(i == 1) { + line += "'" + s + "'"; + } else { + line += ",'" + s + "'"; + } + } + } + line += ")"; + sqlBatch += line; + if(sqlBatch.length() >= 50000) { + sql = sqlBase + sqlBatch; + //System.out.println(sql); + SQLRunner.executeSQL(destination,sql); + sqlBatch = ""; + batchCount++; + } + } + if(sqlBatch.length() > 0) { + sql = sqlBase + sqlBatch; + //System.out.println(sql); + SQLRunner.executeSQL(destination,sql); + sqlBatch = ""; + batchCount++; + } + if(isLargeResultSet) { + Logger.log(LogMessageCategory.INFO,"Server-to-Server copy of " + tableName + " used a large result set."); + } + if(batchCount > 1) { + Logger.log(LogMessageCategory.INFO,"Server-to-Server copy of " + tableName + " took " + batchCount + " batches."); + } + return true; + } + + /** + * Drops all the tables in the target database. + * @param targetDB The database to drop the tables in. + **/ + public static void dropAllTables(Connection targetDB) { + String sql = null; + SQLRunner.Query query = new SQLRunner.Query(); + try { + sql = "SHOW TABLES"; + query.open(targetDB,sql); + TreeSet tableNames = new TreeSet(); + while(query.rs.next()) { + tableNames.add(query.rs.getString(1)); + } + query.close(); + + for(Iterator iterTableNames=tableNames.iterator();iterTableNames.hasNext();) { + try { + String tableName = (String)iterTableNames.next(); + //Logger.log(LogMessageCategory.DEBUG,"Dropping execution database table " + tableName); + + //sql = "FLUSH TABLE " + tableName; + //SQLRunner.executeSQL(targetDB,sql); + + sql = "DROP TABLE IF EXISTS " + tableName; + SQLRunner.executeSQL(targetDB,sql); + + //sql = "FLUSH TABLE " + tableName; + //SQLRunner.executeSQL(targetDB,sql); + } catch (SQLException e) { + Logger.logError(e, "DROP TABLE failed using: " + sql); + } + } + } catch (SQLException e) { + query.onException(e,"dropAllTables() failed", sql); + } finally { + query.onFinally(); + } + } + + /** + * Peform the equivalent of an INSERT IGNORE INTO table (col1,col2) SELECT col1,col2... + * statement. + * @param useTemporaryFile true if SELECT INTO OUTFILE/LOAD DATA INFILE statements should + * be used. Normally left to true unless a specific test shows the file usage to be slower. + * @param db database to perform the work within + * @param destinationTableName table to INSERT IGNORE INTO + * @param destinationColumns names, without parenthesis, of columns to fill + * @param selectStatement complete SELECT statement including GROUP BY and ORDER BY clauses + * (if needed) + * @throws SQLException upon any SQL or File error. File exceptions are translated into + * SQL exceptions + **/ + public static void insertSelect(boolean useTemporaryFile, Connection db, + String destinationTableName,String destinationColumns, + String selectStatement) throws SQLException { + if(!isLocal(db)) { + useTemporaryFile = false; + } + File tempFile = new File("insertSelectTemp.txt"); + if(tempFile.exists()) { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + if(tempFile.exists()) { + throw new SQLException("Unable to delete temporary file used by insertSelect"); + } + } + String t = selectStatement.toUpperCase(); + int fromLocation = t.indexOf("FROM "); + if(fromLocation < 0) { + throw new SQLException("Unable to find FROM clause in statement: " + selectStatement); + } + try { + if(useTemporaryFile) { + String filePathSQL = " INTO OUTFILE '" + + tempFile.getCanonicalPath().replace('\\','/') + "' "; + String selectWithOutfile = selectStatement.substring(0,fromLocation) + + filePathSQL + + selectStatement.substring(fromLocation); + String loadStatement = "LOAD DATA INFILE '" + + tempFile.getCanonicalPath().replace('\\','/') + "' IGNORE INTO TABLE" + + " " + destinationTableName + "(" + destinationColumns + ")"; + SQLRunner.executeSQL(db,selectWithOutfile); + SQLRunner.executeSQL(db,loadStatement); + } else { + String sql = "INSERT IGNORE INTO " + destinationTableName + "(" + + destinationColumns + ") " + selectStatement; + SQLRunner.executeSQL(db,sql); + } + } catch(IOException e) { + throw new SQLException(e.toString()); + } finally { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + tempFile = null; + } + } + + /** + * Obtain a set of numbers from a query. + * @param db database to be used + * @param sql statement to be used. the first column must be an integer, with null values + * being treated as 0. + * @return a set of distinct values found, never null but maybe empty + * @throws SQLException if anything goes wrong + **/ + public static TreeSet getIntegerSet(Connection db, String sql) throws SQLException { + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + TreeSet results = new TreeSet(); + while(query.rs.next()) { + results.add(new Integer(query.rs.getInt(1))); + } + return results; + } finally { + query.onFinally(); + } + } + + /** + * Check a server name to determine if it is a local server. + * @param serverName name to be tested + * @return true if the name references a local computer + **/ + public static boolean isLocal(String serverName) { + if(serverName == null) { + serverName = ""; + } else { + serverName = serverName.trim(); + } + return serverName == null || serverName.length() <= 0 + || serverName.equals("127.0.0.1") + || serverName.equalsIgnoreCase("localhost") + || serverName.toLowerCase().startsWith("localhost:"); + } + + /** + * Check the server for a connection to determine if it is a local server. + * @param db connection to be tested + * @return true if the connection references a local computer + **/ + public static boolean isLocal(Connection db) { + try { + String serverName = getServer(db); + return isLocal(serverName); + } catch(SQLException e) { + Logger.logError(e,"Unable to check locality of database server"); + return false; + } + } + + /** + * Determine if two connections actually reference the same server. + * Some copying algorithms require this. + * @param a a Connection to be checked + * @param b a Connection to be checked + * @return true if the connections reference the same server. Always true if both reference + * the local server, even if one does so via "127.0.0.1" and another via "localhost". + **/ + public static boolean areSameServer(Connection a, Connection b) { + try { + String aServerName = getServer(a); + String bServerName = getServer(b); + if(isLocal(aServerName) && isLocal(bServerName)) { + // Two local references always match if they have different wording + return true; + } + return aServerName.equalsIgnoreCase(bServerName); + } catch(SQLException e) { + Logger.logError(e,"Unable to check database servers for equality"); + return false; // return false so more cautious algorithms will be used. + } + } + + /** + * Obtain the name of the server that the a connection references. + * @param db connection to be checked + * @return the server name, never null or empty + * @throws SQLException if anything goes wrong + **/ + public static String getServer(Connection db) throws SQLException { + DatabaseMetaData metaData = db.getMetaData(); + String url = metaData.getURL(); + //System.out.println(url); + int index = url.indexOf("://"); + if(index < 0) { + throw new SQLException("Malformed connection string, lacks \"://\" clause"); + } + String serverName = url.substring(index+3); + index = serverName.indexOf('/'); + if(index == 0) { + serverName = ""; + } else if(index > 0) { + serverName = serverName.substring(0,index); + // Remove any port designator, such as in "localhost:3306" + index = serverName.indexOf(':'); + if(index > 0) { + serverName = serverName.substring(0,index); + } + } + //System.out.println("serverName \"" + serverName + "\" isLocal=" + isLocal(serverName)); + return serverName; + } + + /** + * Execute a script that is designed to convert a database. This involves three databases: + * the output database being created, the input database that must be converted, and a + * default database that supplies missing data. The script is run in the context of the output + * database. The input database's name is given in the ##inputdb## tag and the default database + * as ##defaultdb## in the script. + * @param scriptFile script to be executed + * @param outputDatabase output database to be created, may already exist + * @param inputDatabase database to be converted + * @param defaultDatabase database providing missing data + * @param messages feedback, if any, from the script are added to the end of this list. + * @throws FileNotFoundException when the script file cannot be found + * @throws IOException when the script file cannot be read + * @throws SQLException when a database cannot be accessed or created + **/ + public static void executeConversionScript(File scriptFile, DatabaseSelection outputDatabase, + DatabaseSelection inputDatabase, DatabaseSelection defaultDatabase, ArrayList messages) + throws FileNotFoundException, IOException, SQLException { + Connection outputDB = null; + Connection tempDB = null; + SQLRunner.Query query = new SQLRunner.Query(); + try { + if(outputDatabase.safeCreateDatabase(null) == DatabaseSelection.NOT_CREATED) { + throw new SQLException("Unable to create or find the output database " + outputDatabase.databaseName); + } + outputDB = outputDatabase.openConnectionOrNull(); + if(outputDB == null) { + throw new SQLException("Unable to connect to output database " + outputDatabase.databaseName); + } + + tempDB = inputDatabase.openConnectionOrNull(); + if(tempDB == null) { + throw new SQLException("Unable to connect to input database " + inputDatabase.databaseName); + } + closeConnection(tempDB); + tempDB = null; + + tempDB = defaultDatabase.openConnectionOrNull(); + if(tempDB == null) { + throw new SQLException("Unable to connect to default database " + defaultDatabase.databaseName); + } + closeConnection(tempDB); + tempDB = null; + + String sql = "create table if not exists convertTempMessages " + + "( message varchar(1000) not null )"; + SQLRunner.executeSQL(outputDB,sql); + sql = "truncate table convertTempMessages"; + SQLRunner.executeSQL(outputDB,sql); + + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + replacements.put("##inputdb##",inputDatabase.databaseName); + replacements.put("##defaultdb##",defaultDatabase.databaseName); + executeScript(outputDB,scriptFile,replacements,true); + + if(messages != null) { + // Retrieve the results from convertTempMessages + sql = "select message from convertTempMessages"; + query.open(outputDB,sql); + TreeSetIgnoreCase messagesAlreadySeen = new TreeSetIgnoreCase(); + while(query.rs.next()) { + String m = query.rs.getString(1); + if(m != null && m.length() > 0) { + if(!messagesAlreadySeen.contains(m)) { + messagesAlreadySeen.add(m); + messages.add(m); + } + } + } + query.close(); + } + } catch(FileNotFoundException e) { + throw e; + } catch(IOException e) { + throw e; + } catch(SQLException e) { + throw e; + } finally { + query.onFinally(); + if(outputDB != null) { + closeConnection(outputDB); + outputDB = null; + } + if(tempDB != null) { + closeConnection(tempDB); + tempDB = null; + } + } + } +} diff --git a/gov/epa/otaq/moves/common/DatabaseUtilitiesTest.java b/gov/epa/otaq/moves/common/DatabaseUtilitiesTest.java new file mode 100644 index 0000000..172c778 --- /dev/null +++ b/gov/epa/otaq/moves/common/DatabaseUtilitiesTest.java @@ -0,0 +1,82 @@ +/************************************************************************************************** + * @(#)DatabaseUtilitiesTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the DatabaseUtilities class + * + * @author Cimulus + * @version 2003-05-27 +**/ +public class DatabaseUtilitiesTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DatabaseUtilitiesTest(String name) { + super(name); + } + + /** + * Tests executeSQL() + * @throws Exception from executeSQL() + **/ + public void testMerge() throws Exception { + Connection db = DatabaseSelection.openKnownWorkingConnection(); + assertNotNull(db); + String sql = "CREATE DATABASE IF NOT EXISTS JunitTest"; + SQLRunner.executeSQL(db, sql); + } + + /** + * Tests copyResultSetToTable() + * @throws SQLException from copyResultSetToTable() + **/ + public void testCopyResultSetToTable() throws SQLException { + Connection db = DatabaseSelection.openKnownWorkingConnection(); + assertNotNull(db); + String[] setupSQL = { + "CREATE DATABASE IF NOT EXISTS JUnitTest", + "USE JUnitTest", + "CREATE TABLE IF NOT EXISTS TestA (ColumnA INT, ColumnB INT)", + "CREATE TABLE IF NOT EXISTS TestB (ColumnA INT, ColumnB INT)", + "DELETE FROM TestA", + "DELETE FROM TestB", + "INSERT INTO TestA VALUES (10, 10)", + "INSERT INTO TestA VALUES (20, 20)", + "INSERT INTO TestA VALUES (100, 100)", + "INSERT INTO TestA VALUES (200, 200)" + }; + for(int i = 0; i < setupSQL.length; i++) { + SQLRunner.executeSQL(db, setupSQL[i]); + } + + String sql = "SELECT * FROM TestA WHERE ColumnA >= 100"; + PreparedStatement statement = db.prepareStatement(sql); + ResultSet rs = statement.executeQuery(); + DatabaseUtilities.copyResultSetToTable(rs, db, "TestB"); + rs.close(); + statement.close(); + sql = "SELECT COUNT(*) FROM TestB WHERE ColumnA >= 100"; + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + int resultCount = 0; + if(rs.next()) { + resultCount = rs.getInt(1); + } + assertTrue(resultCount == 2); + + sql = "DROP TABLE IF EXISTS TestA"; + SQLRunner.executeSQL(db, sql); + sql = "DROP TABLE IF EXISTS TestB"; + SQLRunner.executeSQL(db, sql); + db.close(); + } +} diff --git a/gov/epa/otaq/moves/common/DistributedIDBroker.java b/gov/epa/otaq/moves/common/DistributedIDBroker.java new file mode 100644 index 0000000..ee7493d --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedIDBroker.java @@ -0,0 +1,115 @@ +/************************************************************************************************** + * @(#)DistributedIDBroker.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; + +/** + * Obtains unique IDs used to identify individual processes within a distributed system. The MOVES + * system coordinates the activity of its many, distributed processes by creating and renaming + * temporary files in shared folders. The DistributedIDBroker uses the unique filename created by + * the File.createTempFile() method to extract a unique ID for a process. The process uses this ID + * in naming the files that it creates. + * + * @author Cimulus + * @version 2006-08-06 +**/ +public class DistributedIDBroker { + /** Const value for a master id prefix. **/ + public static final String PREFIX_MASTER_ID = "MSTR"; + /** Const value for a worker id prefix. **/ + public static final String PREFIX_WORKER_ID = "WRKR"; + /** Const value for an id suffix. **/ + public static final String SUFFIX_ID = ".ID"; + + /** + * Acquires an ID that is unique across the distributed processing system. Uses the File + * class's createTempFile() method to create a uniquely named file within a shared folder and + * returns the numeric portion of the created file's name as the process ID. + * @param idPrefix Specifies the type of ID desired. Either PREFIX_MASTER_ID or + * PREFIX_WORKER_ID + * @param computerID Identifier of the computer. This is a permanent ID, whereas + * the id generated herein is a temporary ID valid only for the duration of the run. + * @param sharedDistributedFolderPath The shared folder that the distributed processing + * system works off of. + * @throws IOException from any File operations. + * @return The newly acquired ID. + **/ + public static String acquireID(String idPrefix, + String computerID, + File sharedDistributedFolderPath) throws IOException { + if(computerID == null || computerID.length() == 0) { + computerID = "NoComputerID"; + } + String suffix = "_" + computerID + SUFFIX_ID; + File idTemporaryFile = File.createTempFile( + idPrefix, suffix, sharedDistributedFolderPath); + + String temporaryName = idTemporaryFile.getName(); + idTemporaryFile.deleteOnExit(); + + // Strip the prefix and suffix. + return temporaryName.substring(idPrefix.length() + , temporaryName.length() - suffix.length()); + } + + /** + * Gets the "ID" file for a worker or master. The ID file reserves an ID for a a process. The + * time stamp on the worker's ID file is also used as a heartbeat mechanism so that dead workers + * can be detected. + * @param idPrefix The type of ID. Either PREFIX_MASTER_ID or PREFIX_WORKER_ID. + * @param id The system ID. + * @param computerID Identifier of the computer. This is a permanent ID, whereas + * the id parameter is a temporary ID valid only for the duration of the run. + * @param sharedDistributedFolderPath The path of the folder used to coordinate the distributed + * computing system. + * @return The path of the ID file. + **/ + public static File getIDFilePath(String idPrefix, String id, String computerID, + File sharedDistributedFolderPath) { + if(computerID == null || computerID.length() == 0) { + computerID = "NoComputerID"; + } + return new File(sharedDistributedFolderPath, + idPrefix + id + "_" + computerID + SUFFIX_ID); + } + + /** + * Gets a FilenameFilter that will identify all Worker ID files. + * @return The FilenameFilter instance. + **/ + public static FilenameFilter getWorkerIDFilenameFilter() { + return new WildCardFileNameFilter(PREFIX_WORKER_ID + "*" + SUFFIX_ID); + } + + /** + * Gets the system ID from a file path. Simply strips the prefix and suffix from the name. + * @param srcFilePath The source file path. + * @return The resulting file path. This will be null if the file name is invalid. + **/ + public static String getIDFromFile(File srcFilePath) { + String fileName = srcFilePath.getName(); + + String prefixString = PREFIX_WORKER_ID; + int prefixIDIndex = fileName.indexOf(prefixString); + if(prefixIDIndex < 0) { + prefixString = PREFIX_MASTER_ID; + prefixIDIndex = fileName.indexOf(prefixString); + } + int underscoreIndex = fileName.indexOf("_"); + int suffixIDIndex = fileName.indexOf(SUFFIX_ID); + + if((prefixIDIndex < 0) || (suffixIDIndex < 0) + || (underscoreIndex < 0) || (underscoreIndex > suffixIDIndex)) { + return null; + } + + return fileName.substring(prefixIDIndex + prefixString.length(), underscoreIndex); + } +} diff --git a/gov/epa/otaq/moves/common/DistributedIDBrokerTest.java b/gov/epa/otaq/moves/common/DistributedIDBrokerTest.java new file mode 100644 index 0000000..803b1dd --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedIDBrokerTest.java @@ -0,0 +1,76 @@ +/************************************************************************************************** + * @(#)DistributedIDBrokerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import junit.framework.*; + +/** + * Test Case for the DistributedIDBroker class + * + * @author Cimulus + * @version 2006-07-24 +**/ +public class DistributedIDBrokerTest extends TestCase { + /** The number of test worker IDs to create. **/ + static int MAX_WORKER_IDS = 10; + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DistributedIDBrokerTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + * @throws IOException From any of the file operations. + **/ + public void testCase() throws IOException { + File testDir = new File("testdata"); + // Create some worker IDs + String[] testID = new String[MAX_WORKER_IDS]; + + File[] workerFileArray = testDir.listFiles(DistributedIDBroker.getWorkerIDFilenameFilter()); + // Count of worker files not owned by this test. + int unownedWorkerFileCount = workerFileArray.length; + + for(int i = 0; i < MAX_WORKER_IDS; i++) { + testID[i] = DistributedIDBroker.acquireID(DistributedIDBroker.PREFIX_WORKER_ID, + "Computer",testDir); + assertTrue("Invalid ID.", testID[i].length() > 0); + } + + // verify some worker ID files were created, not master files + File workerFile = null; + String workerID = ""; + for(int i = 0; i < MAX_WORKER_IDS; i++) { + workerFile = DistributedIDBroker.getIDFilePath(DistributedIDBroker.PREFIX_WORKER_ID, + testID[i], "Computer", testDir); + // ok to use File.exists() here + assertTrue("A worker file doesn't exist.", workerFile.exists()); + // verify the worker ID + workerID = DistributedIDBroker.getIDFromFile(workerFile); + assertTrue("ID doesn't match.", testID[i].equals(workerID)); + workerFile = DistributedIDBroker.getIDFilePath(DistributedIDBroker.PREFIX_MASTER_ID, + testID[i], "Computer", testDir); + // ok to use File.exists() here + assertTrue("A master file was created.", !workerFile.exists()); + } + + // test the worker file filter + WildCardFileNameFilter workerFileFilter = + (WildCardFileNameFilter)DistributedIDBroker.getWorkerIDFilenameFilter(); + assertTrue("Invalid filter.", workerFileFilter.nameFilter.length() > 0); + workerFileArray = testDir.listFiles(workerFileFilter); + assertEquals("Invalid number of worker files found." + , MAX_WORKER_IDS + unownedWorkerFileCount, workerFileArray.length); + // No need to cleanup the test files, they are all created as temporary files that get + // deleted when the app exits + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFileName.java b/gov/epa/otaq/moves/common/DistributedWorkFileName.java new file mode 100644 index 0000000..6be211d --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFileName.java @@ -0,0 +1,232 @@ +/************************************************************************************************** + * @(#)DistributedWorkFileName.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.File; +import java.io.FilenameFilter; +import java.util.*; + +/** + * Identifies a file containing a bundle of work for a distributed processing system. The MOVES + * system bundles units of work into JAR files for processing by workers in a distributed work + * environment. The Distributed Work File Name uniquely identifies the bundle of work, the + * Master process responsible for seeing the work done, the worker currently working on it, and + * the current processing state of the work. The DistributedWorkFileName class contains methods for + * generating a distributed work file's name and for returning filters that can be used to search + * for a work file. + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class DistributedWorkFileName { + /** + * The Master ID (the process responsible for the bundle of work). + **/ + public String mid; + + /** + * The Queue ID (the bundle of work). + **/ + public String qid; + + /** The purpose of the work unit **/ + public DistributedWorkFilePurpose purpose = DistributedWorkFilePurpose.CALCULATOR; + + /** + * The processing state of the work unit. + **/ + public DistributedWorkFileState state; + + /** + * The ID of the worker that is processing this bundle of work. Only valid when state is + * DistributedWorkFileState.IN_PROGRESS + **/ + public String wid; + + /** Utility class for the combination of purpose and state **/ + static class PurposeStateCombination { + DistributedWorkFilePurpose purpose; + DistributedWorkFileState state; + String combinedText; + } + /** PurposeStateCombination objects keyed by their combined text **/ + static TreeMapIgnoreCase combinations = new TreeMapIgnoreCase(); + + /** + * Creates a DistributedWorkFileName object from a source file name. + * @param sourceFileName The source file name to use + * @return The resulting parsed name object. This will be null if the source name was + * not correctly formatted. + **/ + static public DistributedWorkFileName createFrom(String sourceFileName) { + final int minStringSections = 3; + final int maxStringSections = 4; + + String sections[] = new String[maxStringSections]; + int currentIndex = 0; + for (int i = 0; i < maxStringSections; i++) { + if(currentIndex >= 0) { + int nextDelimiterIndex = sourceFileName.indexOf('_', currentIndex); + + if(nextDelimiterIndex < 0) { + sections[i] = sourceFileName.substring(currentIndex); + currentIndex = nextDelimiterIndex; + } else { + sections[i] = sourceFileName.substring(currentIndex, nextDelimiterIndex); + currentIndex = nextDelimiterIndex + 1; + } + } + } + DistributedWorkFileName result = new DistributedWorkFileName(); + result.mid = sections[0]; + result.qid = sections[1]; + result.state = DistributedWorkFileState.getByDescription(sections[2]); + if(result.state != null) { + // Since the state matched exactly, this implies the calculator purpose since it is not + // written into the file name. + result.purpose = DistributedWorkFilePurpose.CALCULATOR; + } else { // Decode the combined purpose and state + synchronized(combinations) { + if(combinations.size() == 0) { // Fill with all combinations if not already filled + for(Iterator i=DistributedWorkFilePurpose.allPurposes.iterator();i.hasNext();) { + DistributedWorkFilePurpose p = i.next(); + for(Iterator j=DistributedWorkFileState.allStates.iterator();j.hasNext();) { + PurposeStateCombination c = new PurposeStateCombination(); + c.state = j.next(); + c.purpose = p; + if(c.purpose == DistributedWorkFilePurpose.CALCULATOR) { + c.combinedText = c.state.toString(); + } else { + c.combinedText = c.purpose.toString() + c.state.toString(); + } + combinations.put(c.combinedText,c); + } + } + } + if(sections[2] != null && sections[2].length() > 0) { + PurposeStateCombination c = (PurposeStateCombination)combinations.get(sections[2]); + if(c != null) { + result.purpose = c.purpose; + result.state = c.state; + } + } + } + } + result.wid = sections[3]; + + if(result.isValid()) { + return result; + } else { + return null; + } + } + + /** + * Builds a variant of the given file path using the specified distributed processing state. + * @param sourcePath The original file path. + * @param newState The new state to change the work item to. + * @return The modified file path. + **/ + static public File alterFilePathState(File sourcePath, DistributedWorkFileState newState) { + DistributedWorkFileName workFileName = createFrom(sourcePath.getName()); + if(workFileName == null) { + return null; + } + workFileName.state = newState; + return new File(sourcePath.getParent(), workFileName.toString()); + } + + /** + * Builds a FileNameFilter object that will find files with the specified elements. + * @param mid The Master ID query string. '*' are treated as wildcards. + * @param qid The work item queue ID query string. '*' are treated as wildcards. + * @param state The work item state. null is treated as a wild card. + * @param wid The worker ID query string. '*' are treated as wildcards. + * @return The FileNameFilter object. + **/ + static public FilenameFilter buildFileNameFilter(String mid, String qid, + DistributedWorkFileState state, String wid) { + return buildFileNameFilter(mid,qid,null,state,wid); + } + + /** + * Builds a FileNameFilter object that will find files with the specified elements. + * @param mid The Master ID query string. '*' are treated as wildcards. + * @param qid The work item queue ID query string. '*' are treated as wildcards. + * @param purpose The work item purpose. null is treated as a wild card. + * @param state The work item state. null is treated as a wild card. + * @param wid The worker ID query string. '*' are treated as wildcards. + * @return The FileNameFilter object. + **/ + static public FilenameFilter buildFileNameFilter(String mid, String qid, + DistributedWorkFilePurpose purpose, DistributedWorkFileState state, String wid) { + // Build the filter remembering that calculator purposes are never expressed in the file name, only assumed. + String filterText = mid + "_" + qid + "_"; + if(purpose == null && state == null) { + filterText += "*"; + } else if(purpose == null && state != null) { // purpose is null but state is not null + filterText += "*" + state.toString(); + } else if(purpose != null && state == null) { // purpose is not null but state is + if(purpose == DistributedWorkFilePurpose.CALCULATOR) { + filterText += "*"; + } else { + filterText += purpose.toString() + "*"; + } + } else { // neither purpose nor state is null + if(purpose == DistributedWorkFilePurpose.CALCULATOR) { + filterText += state.toString(); + } else { + filterText += purpose.toString() + state.toString(); + } + } + if(state == DistributedWorkFileState.IN_PROGRESS) { + filterText += "_" + wid; + } + return new WildCardFileNameFilter(filterText); + } + + /** + * Default Constructor. Constructs blank object. + **/ + public DistributedWorkFileName() { + } + + /** + * Determines if this is a valid work file name. + * @return Indicates if this is a valid file name. + **/ + public boolean isValid() { + if((mid == null) || (mid.length() < 1)) { + return false; + } + if((qid == null) || (qid.length() < 1)) { + return false; + } + if(purpose == null) { + return false; + } + if(state == null) { + return false; + } + // wid must be used in the state IN_PROGRESS and only in this state. + if((state == DistributedWorkFileState.IN_PROGRESS) == (wid == null)) { + return false; + } + return true; + } + + /** + * Gets the complete textual file name + * @return The complete textual file name + **/ + public String toString() { + return mid + "_" + qid + "_" + + (purpose == DistributedWorkFilePurpose.CALCULATOR? "" : purpose.toString()) + + state.toString() + + ((state == DistributedWorkFileState.IN_PROGRESS) ? ("_" + wid) : ("")); + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFileNameTest.java b/gov/epa/otaq/moves/common/DistributedWorkFileNameTest.java new file mode 100644 index 0000000..6a860bf --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFileNameTest.java @@ -0,0 +1,117 @@ +/************************************************************************************************** + * @(#)DistributedWorkFileNameTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.File; +import java.io.FilenameFilter; +import junit.framework.*; + +/** + * Test Case for the DistributedWorkFileName class + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class DistributedWorkFileNameTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DistributedWorkFileNameTest(String name) { + super(name); + } + + /** Test parsing of file names **/ + public void testParsing() { + DistributedWorkFileName workFileName; + + assertNull(DistributedWorkFileName.createFrom("8781_1_TODO_42001")); + assertNull(DistributedWorkFileName.createFrom("8781_1_BAD")); + assertNull(DistributedWorkFileName.createFrom("8781_1_DONE_42001")); + assertNull(DistributedWorkFileName.createFrom("8781_1__DONE")); + assertNull(DistributedWorkFileName.createFrom("gibberish")); + assertNull(DistributedWorkFileName.createFrom("8781_1_TODO_42001_")); + assertNull(DistributedWorkFileName.createFrom("8781_1_TODO42001")); + + workFileName = DistributedWorkFileName.createFrom("8781_1_TODO"); + assertNotNull(workFileName); + identityFilterTest(workFileName); + assertEquals(workFileName.mid.compareTo("8781"), 0); + assertEquals(workFileName.qid.compareTo("1"), 0); + assertEquals(workFileName.purpose,DistributedWorkFilePurpose.CALCULATOR); + assertEquals(workFileName.state, DistributedWorkFileState.TODO); + assertNull(workFileName.wid); + + FilenameFilter filter = DistributedWorkFileName.buildFileNameFilter( + workFileName.mid, workFileName.qid, workFileName.purpose, workFileName.state, "*"); + assertTrue(filter.accept(null, workFileName.toString())); + + workFileName = DistributedWorkFileName.createFrom("8781_1_InProgress_223"); + assertNotNull(workFileName); + identityFilterTest(workFileName); + assertEquals(workFileName.mid.compareTo("8781"), 0); + assertEquals(workFileName.qid.compareTo("1"), 0); + assertEquals(workFileName.purpose,DistributedWorkFilePurpose.CALCULATOR); + assertEquals(workFileName.state, DistributedWorkFileState.IN_PROGRESS); + assertEquals(workFileName.wid.compareTo("223"), 0); + + workFileName = DistributedWorkFileName.createFrom("8781_1_GenInProgress_223"); + assertNotNull(workFileName); + identityFilterTest(workFileName); + assertEquals(workFileName.mid.compareTo("8781"), 0); + assertEquals(workFileName.qid.compareTo("1"), 0); + assertEquals(workFileName.purpose,DistributedWorkFilePurpose.GENERATOR); + assertEquals(workFileName.state, DistributedWorkFileState.IN_PROGRESS); + assertEquals(workFileName.wid.compareTo("223"), 0); + + workFileName = DistributedWorkFileName.createFrom("8781_1_GenTODO"); + assertNotNull(workFileName); + identityFilterTest(workFileName); + assertEquals(workFileName.mid.compareTo("8781"), 0); + assertEquals(workFileName.qid.compareTo("1"), 0); + assertEquals(workFileName.purpose,DistributedWorkFilePurpose.GENERATOR); + assertEquals(workFileName.state, DistributedWorkFileState.TODO); + assertNull(workFileName.wid); + } + + /** + * Asserts that a filter built around a file name will accept itself. + * @param testName The parsed name to test. + **/ + public void identityFilterTest(DistributedWorkFileName testName) { + FilenameFilter filter = DistributedWorkFileName.buildFileNameFilter( + testName.mid, testName.qid, testName.purpose, testName.state, testName.wid); + assertTrue(filter.accept(null, testName.toString())); + } + + /** Tests isValid() **/ + public void testIsValid() { + DistributedWorkFileName workFileName = new DistributedWorkFileName(); + assertTrue(!(workFileName.isValid())); + workFileName = DistributedWorkFileName.createFrom("8781_1_TODO"); + assertTrue(workFileName.isValid()); + workFileName.mid = null; + assertTrue(!(workFileName.isValid())); + + workFileName = DistributedWorkFileName.createFrom("8781_1_InProgress_42001"); + assertNotNull(workFileName); + assertTrue(workFileName.isValid()); + workFileName.mid = null; + assertTrue(!(workFileName.isValid())); + } + + /** Tests alterFilePathState() **/ + public void testAlterFilePathState() { + DistributedWorkFileName workFileName = + DistributedWorkFileName.createFrom("8781_1_TODO"); + File testFile = new File(workFileName.toString()); + File alteredFile = DistributedWorkFileName.alterFilePathState(testFile, + DistributedWorkFileState.DONE); + assertNotNull(alteredFile); + assertEquals(alteredFile.getName().compareTo("8781_1_DONE"), 0); + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFilePurpose.java b/gov/epa/otaq/moves/common/DistributedWorkFilePurpose.java new file mode 100644 index 0000000..d98c820 --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFilePurpose.java @@ -0,0 +1,71 @@ +/************************************************************************************************** + * @(#)DistributedWorkFilePurpose.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; + +/** + * This class, which acts like a "typesafe enum", describes the purposes for distributed work files. + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class DistributedWorkFilePurpose { + /** The number of types supported by this class. **/ + public static final int NUM_TYPES = 2; + /** Enumerated type (as static instance) for the Calculator purpose. **/ + public static final DistributedWorkFilePurpose CALCULATOR + = new DistributedWorkFilePurpose("Calc"); + /** Enumerated type (as static instance) for the Generator purpose. **/ + public static final DistributedWorkFilePurpose GENERATOR + = new DistributedWorkFilePurpose("Gen"); + /** All purpose instances **/ + public static ArrayList allPurposes; + + /** The textual description of the type. **/ + private String description; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param descriptionToUse Textual description of the type. + **/ + private DistributedWorkFilePurpose(String descriptionToUse) { + description = descriptionToUse; + if(allPurposes == null) { + allPurposes = new ArrayList(); + } + allPurposes.add(this); + } + + /** + * Provides the textual description of the type. + * + * @return The textual description of the type. + **/ + public String toString() { + return description; + } + + /** + * Gets the static DistributedWorkFilePurpose instance by description, or returns null if + * not found. + * @param description The description to check. + * @return The corresponding DistributedWorkFilePurpose object, or null if not found. + **/ + public static DistributedWorkFilePurpose getByDescription(String description) { + if(description != null) { + if(description.compareTo(DistributedWorkFilePurpose.CALCULATOR.toString()) == 0) { + return DistributedWorkFilePurpose.CALCULATOR; + } else if(description.compareTo(DistributedWorkFilePurpose.GENERATOR.toString()) == 0) { + return DistributedWorkFilePurpose.GENERATOR; + } + } + return null; + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFilePurposeTest.java b/gov/epa/otaq/moves/common/DistributedWorkFilePurposeTest.java new file mode 100644 index 0000000..703c32d --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFilePurposeTest.java @@ -0,0 +1,32 @@ +/************************************************************************************************** + * @(#)DistributedWorkFilePurposeTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the DistributedWorkFilePurpose class + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class DistributedWorkFilePurposeTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DistributedWorkFilePurposeTest(String name) { + super(name); + } + + /** Various tests on DistributedWorkFilePurpose **/ + public void testDistributedWorkFilePurpose() { + assertNotNull(DistributedWorkFilePurpose.getByDescription("Gen")); + assertNotNull(DistributedWorkFilePurpose.getByDescription("Calc")); + assertNull(DistributedWorkFilePurpose.getByDescription("This doesn't exist.")); + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFileState.java b/gov/epa/otaq/moves/common/DistributedWorkFileState.java new file mode 100644 index 0000000..2ea53ae --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFileState.java @@ -0,0 +1,82 @@ +/************************************************************************************************** + * @(#)DistributedWorkFileState.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; + +/** + * This class, which acts like a "typesafe enum", describes the states that distributed work files + * can exist in. + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class DistributedWorkFileState { + /** The number of types supported by this class. **/ + public static final int NUM_TYPES = 4; + /** Enumerated type (as static instance) for the TEMP state. **/ + public static final DistributedWorkFileState TEMP + = new DistributedWorkFileState("TEMP"); + /** Enumerated type (as static instance) for the TODO state. **/ + public static final DistributedWorkFileState TODO + = new DistributedWorkFileState("TODO"); + /** Enumerated type (as static instance) for the IN_PROGRESS state. **/ + public static final DistributedWorkFileState IN_PROGRESS + = new DistributedWorkFileState("InProgress"); + /** Enumerated type (as static instance) for the DONE state. **/ + public static final DistributedWorkFileState DONE + = new DistributedWorkFileState("DONE"); + /** All state instances **/ + public static ArrayList allStates; + + /** The textual description of the type. **/ + private String description; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param descriptionToUse Textual description of the type. + **/ + private DistributedWorkFileState(String descriptionToUse) { + description = descriptionToUse; + if(allStates == null) { + allStates = new ArrayList(); + } + allStates.add(this); + } + + /** + * Provides the textual description of the type. + * + * @return The textual description of the type. + **/ + public String toString() { + return description; + } + + /** + * Gets the static DistributedWorkFileState instance by description, or returns null if + * not found. + * @param description The description to check. + * @return The corresponding DistributedWorkFileState object, or null if not found. + **/ + public static DistributedWorkFileState getByDescription(String description) { + if(description != null) { + if(description.compareTo(DistributedWorkFileState.TEMP.toString()) == 0) { + return DistributedWorkFileState.TEMP; + } else if(description.compareTo(DistributedWorkFileState.TODO.toString()) == 0) { + return DistributedWorkFileState.TODO; + } else if(description.compareTo(DistributedWorkFileState.IN_PROGRESS.toString()) == 0) { + return DistributedWorkFileState.IN_PROGRESS; + } else if(description.compareTo(DistributedWorkFileState.DONE.toString()) == 0) { + return DistributedWorkFileState.DONE; + } + } + return null; + } +} diff --git a/gov/epa/otaq/moves/common/DistributedWorkFileStateTest.java b/gov/epa/otaq/moves/common/DistributedWorkFileStateTest.java new file mode 100644 index 0000000..49ffcca --- /dev/null +++ b/gov/epa/otaq/moves/common/DistributedWorkFileStateTest.java @@ -0,0 +1,34 @@ +/************************************************************************************************** + * @(#)DistributedWorkFileStateTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the DistributedWorkFileState class + * + * @author Cimulus + * @version 2003-02-06 +**/ +public class DistributedWorkFileStateTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DistributedWorkFileStateTest(String name) { + super(name); + } + + /** Various test on DistributedWorkFileState **/ + public void testDistributedWorkFileState() { + assertNotNull(DistributedWorkFileState.getByDescription("TEMP")); + assertNotNull(DistributedWorkFileState.getByDescription("TODO")); + assertNotNull(DistributedWorkFileState.getByDescription("InProgress")); + assertNotNull(DistributedWorkFileState.getByDescription("DONE")); + assertNull(DistributedWorkFileState.getByDescription("This doesn't exist.")); + } +} diff --git a/gov/epa/otaq/moves/common/EPATableColumn.java b/gov/epa/otaq/moves/common/EPATableColumn.java new file mode 100644 index 0000000..242e2c5 --- /dev/null +++ b/gov/epa/otaq/moves/common/EPATableColumn.java @@ -0,0 +1,87 @@ +/************************************************************************************************** + * @(#)EPATableColumn.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.lang.*; +import java.io.*; +import java.sql.*; +import javax.swing.table.*; +import java.awt.*; + +/** + * This class provides a generic table structure that can handle generic memory handling of data + * as well as display on GUI screens. + * + * @author Cimulus + * @version 2004-09-30 +**/ +public class EPATableColumn extends TableColumn { + /** Indicates whether the column is Read/Write **/ + public boolean isEditable = true ; + /** Color to display behind text in this column **/ + private Color backgroundColor = new Color( 255 , 255 , 255 ) ; + + /** + * This constructor allows you to define an EPATableColumn + * Sets a default model index of 0, default width of 75, a null renderer and a null editor. + **/ + public EPATableColumn() { + super() ; + } + + /** + * This constructor allows you to define an EPATableColumn + * Sets a default width of 75, a null renderer and a null editor. + * @param modelIndex The Column index within a TableModel + **/ + public EPATableColumn(int modelIndex) { + super( modelIndex ) ; + } + + /** + * This constructor allows you to define an EPATableColumn + * Sets a null renderer and a null editor. + * @param modelIndex The Column index within a TableModel + * @param width The width in pixels for this Column + **/ + public EPATableColumn(int modelIndex, int width) { + super( modelIndex, width ) ; + } + + /** + * This constructor allows you to define an EPATableColumn + * @param modelIndex The Column index within a TableModel + * @param width The width in pixels for this Column + * @param cellRenderer The TableCellRenderer to use for the column + * @param cellEditor The TableCellEditor to use for the column + **/ + public EPATableColumn(int modelIndex, int width, TableCellRenderer cellRenderer, + TableCellEditor cellEditor) { + super( modelIndex , width , cellRenderer , cellEditor ) ; + } + + /** + * This constructor gets the Background Color + * @return Returns the background Color + **/ + public Color getBackgroundColor() { + return backgroundColor ; + } + + /** + * This constructor sets the Background Color + * @param obColor An object. The method will be ignored if the object is null or not of type Color + **/ + public void setBackgroundColor( Object obColor ) { + if ( obColor != null ) { + if ( obColor instanceof Color ) { + backgroundColor = ( Color ) obColor ; + } + } + } +} diff --git a/gov/epa/otaq/moves/common/EPATableModel.java b/gov/epa/otaq/moves/common/EPATableModel.java new file mode 100644 index 0000000..1bbafe1 --- /dev/null +++ b/gov/epa/otaq/moves/common/EPATableModel.java @@ -0,0 +1,1233 @@ +/************************************************************************************************** + * @(#)EPATableModel.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.lang.*; +import java.io.*; +import java.math.*; +import java.sql.*; +import javax.swing.table.*; + +/** + * This class provides a generic table structure that can handle generic memory handling of data + * as well as display on GUI screens. + * + * @author Wes Faler + * @version 2009-02-22 +**/ +public class EPATableModel extends DefaultTableModel { + + public String errorText = "" ; + private int numRowsActive = 0 ; + public static Connection dbConnection = null ; + public String sqlThatFilledMemory = "" ; + public String debugText = "" ; + + public static boolean debug = false ; + public static long debugTime = 0 ; + + /** + * This constructor allows you to define an EPATableModel with no columns + **/ + public EPATableModel() { + clearData() ; + } + + /** + * This constructor allows you to define an EPATableModel and list of columns + * @param columns A list of columns, separated by the | character + **/ + public EPATableModel( String columns ) { + addColumns( columns ) ; + clearData() ; + } + + /** + * This method returns a new EPATableModel with the exact + * same Column structure. No data is copied over. + * @return A new EPATableModel with the exact same Column structure. + **/ + public EPATableModel copyStructure() { + int x ; + String colName ; + EPATableModel newModel = new EPATableModel() ; + + for ( x = 0 ; x < getColumnCount() ; x++ ) { + colName = getColumnName( x ) ; + if ( colName == null ) { + continue ; + } + newModel.addColumn( colName ) ; + } + + return newModel ; + } + + /** + * This static method sets the Connection if it is null + * @param con A Database Connection + **/ + public static void setDbConnectionIfNull( Connection con ) { + if ( con != null && dbConnection == null ) { + dbConnection = con ; + } + } + + + /** + * @return This method returns the value of numRowsActive + **/ + public int getNumRows() { + return numRowsActive ; + } + + + /** + * @return This method returns the value of numRowsActive + **/ + public int getNumRowsActive() { + return numRowsActive ; + } + + + /** + * This method sets the value of numRowsActive + * @param x The new value of numRowsActive + **/ + public void setNumRowsActive( int x ) { + int y ; + x = x < 0 ? 0 : x ; + numRowsActive = x ; + if ( getRowCount() < numRowsActive ) { + y = getRowCount() < 100 ? 100 : (int) ( getRowCount() * 1.5 ) ; + y = y < numRowsActive ? numRowsActive : y ; + setRowCount( y ) ; + } + } + + + /** + * This method adds columns to the EPATableModel + * @param columns A list of columns, separated by the | character + **/ + public void addColumns( String columns ) { + String[] cols; + String colName; + int x , num ; + + if ( columns == null ) { + return ; + } + + StringTokenizer tok = new StringTokenizer( columns , "|" ) ; + num = tok.countTokens() ; + + for ( x = 0 ; x < num ; x++ ) { + colName = tok.nextToken() ; + colName = colName.trim() ; + if ( colName.length() == 0 ) { + continue ; + } + + addColumn( colName ) ; + } + } + + /** + * This method clears any data in the table. + **/ + public void clearData() { + int rowCount ; + + sqlThatFilledMemory = "" ; + setNumRowsActive( 0 ) ; + + rowCount = getRowCount() ; + rowCount = rowCount == 0 ? 100 : rowCount ; + + // These commands will clear the memory + setRowCount( 0 ) ; + setRowCount( rowCount ) ; + } + + /** + * This method retrieves the column index of the column name specified in the parameter. + * @param colName The name of the Column being searched for. The search is case insensitive. + * @return The index value of the Column within the Column List. + * The method returns -1 if the Column Name is not found. + **/ + public int getColumnIndex( String colName ) { + int x ; + String col ; + + for ( x = 0 ; x < getColumnCount() ; x++ ) { + col = getColumnName( x ) ; + if ( col == null ) { + continue ; + } + if ( col.equalsIgnoreCase( colName ) == true ) { + return x ; + } + } + + return -1 ; + } + + /** + * This method retrieves a string that describes the columns in the table + * @return A string with a text representation of the columns in the table. + **/ + public String getDefinition() { + StringBuffer sb = new StringBuffer( 5000 ) ; + int x ; + String newLine = System.getProperty( "line.separator" ) ; + String colName ; + + sb.append( "Table Definition" ) ; + sb.append( newLine ) ; + + for ( x = 0 ; x < getColumnCount() ; x++ ) { + colName = getColumnName( x ) ; + sb.append( x ) ; + sb.append( ": " ) ; + sb.append( colName ) ; + sb.append( newLine ) ; + } + + sb.append( newLine ) ; + + return sb.toString() ; + } + + /** + * This method writes a file that describes the data in the table + * @param fileName The File Name that the file will be written to + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataRows( String fileName ) { + return printDataRows( fileName , 0 , getNumRowsActive() ) ; + } + + /** + * This method writes a file that describes the data in the table + * @param fileName The File Name that the file will be written to + * @param startRow The first row to print + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataRows( String fileName , int startRow ) { + return printDataRows( fileName , startRow , getNumRows() ) ; + } + + /** + * This method writes a file that describes the data in the table + * @param fileName The File Name that the file will be written to + * @param startRow The first row to print + * @param endRow The last row to print + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataRows( String fileName , int startRow , int endRow ) { + String s = getPrintDataRows( startRow , endRow ) ; + return FileUtilities.writeFileContents( fileName , s ) ; + } + + /** + * This method retrieves a string that describes the columns in the table + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataRows() { + return getPrintDataRows( 0 , getNumRowsActive() ) ; + } + + /** + * This method retrieves a string that describes the columns in the table + * @param startRow The first row to print + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataRows( int startRow ) { + return getPrintDataRows( startRow , getNumRowsActive() ) ; + } + + /** + * This method retrieves a string that describes the data in the table + * @param startRow The first row to print + * @param endRow The last row to print + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataRows( int startRow , int endRow ) { + StringBuffer sb = new StringBuffer( 20000 ) ; + int x , r , col , colLength = 0 , countLength ; + String newLine = System.getProperty( "line.separator" ) ; + String colName , stringCount , s ; + Object ob ; + + startRow = startRow < 0 ? 0 : startRow ; + endRow = endRow > getNumRowsActive() ? getNumRowsActive() : endRow ; + endRow = endRow < startRow ? startRow : endRow ; + + sb.append( "Table Definition NumRows: " ) ; + sb.append( getNumRowsActive() ) ; + sb.append( newLine ) ; + + for ( x = 0 ; x < getColumnCount() ; x++ ) { + colName = getColumnName( x ) ; + if ( colName.length() > colLength ) { + colLength = colName.length() ; + } + } + + s = "" + getColumnCount() ; + countLength = s.length() ; + + for ( r = startRow ; r < endRow ; r++ ) { + sb.append( "Row " ) ; + sb.append( ( r + 1 ) ) ; + sb.append( ": " ) ; + sb.append( newLine ) ; + for ( x = 0 ; x < getColumnCount() ; x++ ) { + colName = getColumnName( x ) ; + s = "" + x ; + sb.append( x ) ; + for ( col = s.length() ; col <= countLength ; col++ ) { + sb.append( ' ' ) ; + } + + sb.append( colName ) ; + + for ( col = colName.length() ; col < colLength ; col++ ) { + sb.append( ' ' ) ; + } + + sb.append( " : " ) ; + ob = getValueAt( r , x ) ; + if ( ob == null ) { + sb.append( "(null)" ) ; + } else { + sb.append( getString( r , x ) ) ; + } + sb.append( newLine ) ; + } + sb.append( " " + newLine ) ; + } + + sb.append( newLine ) ; + + return sb.toString() ; + } + + + + /** + * This method writes a file with the data in a tabular format + * @param fileName The File Name that the file will be written to + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataTable( String fileName ) { + return printDataTable( fileName , 0 , getNumRowsActive() ) ; + } + + /** + * This method writes a file with the data in a tabular format + * @param fileName The File Name that the file will be written to + * @param startRow The first row to print + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataTable( String fileName , int startRow ) { + return printDataTable( fileName , startRow , getNumRows() ) ; + } + + /** + * This method writes a file with the data in a tabular format + * @param fileName The File Name that the file will be written to + * @param startRow The first row to print + * @param endRow The last row to print + * @return true if the file was written successfully, false if not. + **/ + public boolean printDataTable( String fileName , int startRow , int endRow ) { + String s = getPrintDataTable( startRow , endRow ) ; + return FileUtilities.writeFileContents( fileName , s ) ; + } + + /** + * This method retrieves a string of the data in a tabular format + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataTable() { + return getPrintDataTable( 0 , getNumRowsActive() ) ; + } + + /** + * This method retrieves a string of the data in a tabular format + * @param startRow The first row to print + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataTable( int startRow ) { + return getPrintDataTable( startRow , getNumRowsActive() ) ; + } + + /** + * This method retrieves a string of the data in a tabular format + * @param startRow The first row to print + * @param endRow The last row to print + * @return A string with a text representation of the data in the table. + **/ + public String getPrintDataTable( int startRow , int endRow ) { + StringBuffer sb = new StringBuffer( 20000 ) ; + int x , r , col , colLength = 0 , countLength ; + String newLine = System.getProperty( "line.separator" ) ; + String colName , stringCount , s ; + Object ob ; + + startRow = startRow < 0 ? 0 : startRow ; + endRow = endRow > getNumRowsActive() ? getNumRowsActive() : endRow ; + endRow = endRow < startRow ? startRow : endRow ; + + for ( x = 0 ; x < getColumnCount() ; x++ ) { + if ( x > 0 ) { + sb.append( "\t" ) ; + } + sb.append( getColumnName( x ) ) ; + } + sb.append( newLine ) ; + + for ( r = startRow ; r < endRow ; r++ ) { + for ( x = 0 ; x < getColumnCount() ; x++ ) { + if ( x > 0 ) { + sb.append( "\t" ) ; + } + ob = getValueAt( r , x ) ; + if ( ob == null ) { + sb.append( "(null)" ) ; + } else { + sb.append( getString( r , x ) ) ; + } + } + sb.append( newLine ) ; + } + + sb.append( newLine ) ; + + return sb.toString() ; + } + + + /** + * This method prints a debug string with timings + * @param txt The text of the message to display + * @return Returns a long integer representing the System.currentTimeMillis() of this call + * The user can use this to calculate timings of operations between calls to the method. + **/ + public static long dbg( String txt ) { + return dbg( txt , debugTime ) ; + } + + /** + * This method prints a debug string with timings + * @param txt The text of the message to display + * @param lastTime A long integer representing milliseconds from a previous call. + * This value is used to calculate the difference in timing for the output. + * @return Returns a long integer representing the System.currentTimeMillis() of this call + * The user can use this to calculate timings of operations between calls to the method. + **/ + public static long dbg( String txt , long lastTime ) { + long li = 0 ; + double d = 0.0 ; + + li = System.currentTimeMillis() ; + + if ( debug == false ) { + return li ; + } + + if ( lastTime == 0 ) { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG,txt); + debugTime = li ; + return debugTime ; + } + + debugTime = li ; + + d = ( ( double ) li - lastTime ) / 1000.0 ; + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, "(" + d + " seconds) " + txt ) ; + + return debugTime ; + } + + /** + * This method fills the table with the data retrieved from the SQL call. + * This method will use the static class member variable 'dbConnection'. + * @param sql A String that contains the SQL Select Call + * @return A return code indicating the success of the transaction.
    + * Return 0 = Successful
    + * Return -1 = SQL Error
    + * Return -2 = Parameter Error
    + * Return 100 = No rows found.
    + **/ + public int sqlSelect( String sql ) { + return sqlSelect( dbConnection , sql , false ) ; + } + + /** + * This method fills the table with the data retrieved from the SQL call. + * This method will NOT add columns to the TableModel + * @param con An SQL Connection object reference + * @param sql A String that contains the SQL Select Call + * @return A return code indicating the success of the transaction.
    + * Return 0 = Successful
    + * Return -1 = SQL Error
    + * Return -2 = Parameter Error
    + * Return 100 = No rows found.
    + **/ + public int sqlSelect( Connection con , String sql ) { + return sqlSelect( con , sql , false ) ; + } + + /** + * This method fills the table with the data retrieved from the SQL call. + * This method will use the static class member variable 'dbConnection'. + * @param sql A String that contains the SQL Select Call + * @param addColumns A boolean - if true, add Column Names from the ResultSet into the Table. + * @return A return code indicating the success of the transaction.
    + * Return 0 = Successful
    + * Return -1 = SQL Error
    + * Return -2 = Parameter Error
    + * Return 100 = No rows found.
    + **/ + public int sqlSelect( String sql , boolean addColumns ) { + return sqlSelect( dbConnection , sql , addColumns ) ; + } + + /** + * This method fills the table with the data retrieved from the SQL call. + * @param con An SQL Connection object reference + * @param sql A String that contains the SQL Select Call + * @param addColumns A boolean - if true, add Column Names from the ResultSet into the Table. + * @return A return code indicating the success of the transaction.
    + * Return 0 = Successful
    + * Return -1 = SQL Error
    + * Return -2 = Parameter Error
    + * Return 100 = No rows found.
    + **/ + public int sqlSelect( Connection con , String sql , boolean addColumns ) { + int numRows = 0 ; + int row = 0 ; + ResultSetMetaData rsmd ; + int col , numCols ; + String colName ; + int tableColumn ; + Float f ; + + errorText = "" ; + debugText = "" ; + + clearData() ; + + if ( con == null ) { + errorText = "Connection parameter is null" ; + return -2 ; + } + if ( sql == null ) { + errorText = "Sql parameter is null" ; + return -2 ; + } + if ( sql.length() == 0 ) { + errorText = "SQL Statement is blank" ; + return -2 ; + } + + try { + sqlThatFilledMemory = sql ; + + PreparedStatement statement = con.prepareStatement(sql); + if ( statement == null ) { + errorText = "SQL Error: " + sql ; + return -1 ; + } + + ResultSet results = SQLRunner.executeQuery(statement,sql); + if ( results == null ) { + errorText = "SQL Error: " + sql ; + return -1 ; + } + + rsmd = results.getMetaData() ; + numCols = getColumnCount() ; + + if ( numCols == 0 ) { + addColumns = true ; + } + + int[] colRef = new int[ 500 ] ; + + for ( col = 1 ; col <= rsmd.getColumnCount() ; col++ ) { + colName = rsmd.getColumnName( col ) ; + + colRef[ col ] = getColumnIndex( colName ) ; + if ( addColumns == true && colRef[ col ] == -1 ) { + addColumn( colName ) ; + colRef[ col ] = getColumnIndex( colName ) ; + } + } + + while( results.next() ) { + numRows++ ; + setNumRowsActive( numRows ) ; + + for ( col = 1 ; col <= rsmd.getColumnCount() ; col++ ) { + tableColumn = colRef[ col ] ; + if ( tableColumn == -1 ) { + continue ; + } + + setValueAt( results.getObject( col ) , row , tableColumn ) ; +/* + switch( rsmd.getColumnType( col ) ) { + case Types.BIT: + break ; +// case Types.BOOLEAN: // Not available until Java 1.4 - add it once upgraded +// break ; + case Types.CHAR: + case Types.VARCHAR: + case Types.LONGVARCHAR: + setValueAt( results.getString( col ) , row , tableColumn ) ; + break ; + case Types.DATE: + break ; + case Types.NUMERIC: + setValueAt( results.getObject( col ) , row , tableColumn ) ; + break ; + case Types.REAL: + setValueAt( results.getObject( col ) , row , tableColumn ) ; + break ; + case Types.DECIMAL: + setValueAt( results.getObject( col ) , row , tableColumn ) ; + break ; + case Types.DOUBLE: + setValueAt( new Double( results.getDouble( col ) ) , row , tableColumn ) ; + break ; + case Types.FLOAT: + setValueAt( new Float( results.getFloat( col ) ) , row , tableColumn ) ; + break ; + case Types.BIGINT: + setValueAt( BigInteger.valueOf( results.getLong( col ) ) , row , tableColumn ) ; + break ; + case Types.INTEGER: + setValueAt( new Integer( results.getInt( col ) ) , row , tableColumn ) ; + break ; + case Types.SMALLINT: + setValueAt( new Short( results.getShort( col ) ) , row , tableColumn ) ; + break ; + case Types.TIME: + break ; + case Types.TIMESTAMP: + break ; + case Types.TINYINT: + break ; + default: + setValueAt( results.getObject( col ) , row , tableColumn ) ; + break ; + } + */ + } + row++ ; + } + results.close(); + statement.close(); + + setNumRowsActive( numRows ) ; + + return numRows > 0 ? 0 : 100 ; + } catch( Exception ex ) { + errorText = "SQL Error: " + sql ; + Logger.logSqlError(ex,"Table model unable to select",sql); + return -1 ; + } + } + + /** + * This method returns the object stored at the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The object reference of the stored value. If there are bad parameters passed, + * or the object stored in the cell is null, a null will be returned. This method + * will not throw an exception. + **/ + public Object getObject( int row , int columnIndex ) { + if ( row < 0 || row >= getNumRowsActive() ) { + return null ; + } + if ( columnIndex < 0 || columnIndex >= getColumnCount() ) { + return null ; + } + + return getValueAt( row , columnIndex ) ; + } + + /** + * This method returns the object stored at the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return The object reference of the stored value. If there are bad parameters passed, + * or the object stored in the cell is null, a null will be returned. This method + * will not throw an exception. + **/ + public Object getObject( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getObject( row , index ) ; + } + + /** + * This method returns a String for the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return A string representation of the value. + **/ + public String getString( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getString( row , index ) ; + } + + /** + * This method returns a String for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return A string representation of the value. + **/ + public String getString( int row , int columnIndex ) { + Object ob ; + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return "" ; + } + + if ( ob instanceof String ) { + return ( String ) ob ; + } + if ( ob instanceof Float ) { + Float f = ( Float ) ob ; + return FloatConversion.toString( f.floatValue() , 6 ) ; + } + + return ob.toString() ; + } catch( Exception ex ) { + return "" ; + } + } + + /** + * This method returns an int representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return The integer representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public int getInt( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getInt( row , index ) ; + } + + /** + * This method returns an int representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The integer representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public int getInt( int row , int columnIndex ) { + Object ob ; Integer i ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return 0 ; + } + + if ( ob instanceof Integer ) { + i = ( Integer ) ob ; + return i.intValue() ; + } + + String s = ob.toString() ; + i = new Integer( s ) ; + return i.intValue() ; + } catch( Exception ex ) { + return 0 ; + } + } + + /** + * This method returns an long representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return The long integer representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public long getLong( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getLong( row , index ) ; + } + + + /** + * This method returns an long int representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The long integer representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public long getLong( int row , int columnIndex ) { + Object ob ; BigInteger bi ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return 0 ; + } + + if ( ob instanceof BigInteger ) { + bi = ( BigInteger ) ob ; + return bi.longValue() ; + } + + String s = ob.toString() ; + bi = new BigInteger( s ) ; + return bi.longValue() ; + } catch( Exception ex ) { + return ( long ) 0 ; + } + } + + /** + * This method returns a float representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return The float representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public float getFloat( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getFloat( row , index ) ; + } + + /** + * This method returns a float representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The float representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public float getFloat( int row , int columnIndex ) { + Object ob ; Float f ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return ( float ) 0.0 ; + } + + if ( ob instanceof Float ) { + f = ( Float ) ob ; + return f.floatValue() ; + } + + String s = ob.toString() ; + f = new Float( s ) ; + return f.floatValue() ; + } catch( Exception ex ) { + return ( float ) 0.0 ; + } + } + + /** + * This method returns a double representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The float representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public double getDouble( int row , int columnIndex ) { + Object ob ; Double d ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return 0.0 ; + } + + if ( ob instanceof Double ) { + d = ( Double ) ob ; + return d.doubleValue() ; + } + + String s = ob.toString() ; + d = new Double( s ) ; + return d.doubleValue() ; + } catch( Exception ex ) { + return 0.0 ; + } + } + + /** + * This method returns a double representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The float representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public BigDecimal getDecimal( int row , int columnIndex ) { + Object ob ; BigDecimal bd ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return new BigDecimal( 0.0 ) ; + } + + if ( ob instanceof BigDecimal ) { + bd = ( BigDecimal ) ob ; + return bd ; + } + + String s = ob.toString() ; + bd = new BigDecimal( s ) ; + return bd ; + } catch( Exception ex ) { + return new BigDecimal( 0.0 ) ; + } + } + + /** + * This method returns a short representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnName The column name from which the value is returned. The columnName is + * case insensitive. + * @return The short representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public short getShort( int row , String columnName ) { + int index = getColumnIndex( columnName ) ; + return getShort( row , index ) ; + } + + /** + * This method returns a short representation for the row and column specified + * @param row The row from which the value is returned. + * @param columnIndex The numeric column index from which the value is returned. + * @return The short representation of the value. If there are bad parameters passed, + * or the object stored in the cell is null, the value 0 will be returned. This method + * will not throw an exception. + **/ + public short getShort( int row , int columnIndex ) { + Object ob ; Short si ; + + try { + ob = getObject( row , columnIndex ) ; + if ( ob == null ) { + return 0 ; + } + + if ( ob instanceof Short ) { + si = ( Short ) ob ; + return si.shortValue() ; + } + + String s = ob.toString() ; + si = new Short( s ) ; + return si.shortValue() ; + } catch( Exception ex ) { + return 0 ; + } + } + + /** + * This method returns a boolean if the parameters for row and column + * represent a valid row/column value for the table. + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + * @return A boolean of true if the row/column is valid, false if it is not. + * This method will not throw an exception. + **/ + public boolean isValidRowColumn( int row , int columnIndex ) { + return row < 0 || columnIndex < 0 || columnIndex >= getColumnCount() ? false : true ; + } + + /** + * This method sets a cell value for an integer value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnName The name of the column (case insensitive) + **/ + public void setValue( int value , int row , String columnName ) { + setValue( value , row , getColumnIndex( columnName ) ) ; + } + + /** + * This method sets a cell value for an integer value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + **/ + public void setValue( int value , int row , int columnIndex ) { + try { + if ( isValidRowColumn( row , columnIndex ) == false ) { + return ; + } + + Integer i = new Integer( value ) ; + setValueAt( i , row , columnIndex ) ; + } catch( Exception ex ) { + } + } + + /** + * This method sets a cell value for an short value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnName The name of the column (case insensitive) + **/ + public void setValue( short value , int row , String columnName ) { + setValue( value , row , getColumnIndex( columnName ) ) ; + } + + /** + * This method sets a cell value for an short value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + **/ + public void setValue( short value , int row , int columnIndex ) { + try { + if ( isValidRowColumn( row , columnIndex ) == false ) { + return ; + } + + Short si = new Short( value ) ; + setValueAt( si , row , columnIndex ) ; + } catch( Exception ex ) { + } + } + + /** + * This method sets a cell value for an float value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnName The name of the column (case insensitive) + **/ + public void setValue( float value , int row , String columnName ) { + setValue( value , row , getColumnIndex( columnName ) ) ; + } + + /** + * This method sets a cell value for an float value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + **/ + public void setValue( float value , int row , int columnIndex ) { + try { + if ( isValidRowColumn( row , columnIndex ) == false ) { + return ; + } + + Float f = new Float( value ) ; + setValueAt( f , row , columnIndex ) ; + } catch( Exception ex ) { + } + } + + /** + * This method sets a cell value for a string value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnName The name of the column (case insensitive) + **/ + public void setValue( String value , int row , String columnName ) { + setValue( value , row , getColumnIndex( columnName ) ) ; + } + + /** + * This method sets a cell value for an string value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + **/ + public void setValue( String value , int row , int columnIndex ) { + try { + if ( isValidRowColumn( row , columnIndex ) == false ) { + return ; + } + + setValueAt( value , row , columnIndex ) ; + } catch( Exception ex ) { + } + } + + /** + * This method sets a cell value for an object value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnName The name of the column (case insensitive) + **/ + public void setValue( Object value , int row , String columnName ) { + setValue( value , row , getColumnIndex( columnName ) ) ; + } + + /** + * This method sets a cell value for an object value. + * @param value The value to be stored + * @param row The row for the cell + * @param columnIndex The numeric column index for the cell + **/ + public void setValue( Object value , int row , int columnIndex ) { + try { + if ( isValidRowColumn( row , columnIndex ) == false ) { + return ; + } + + setValueAt( value , row , columnIndex ) ; + } catch( Exception ex ) { + } + } + + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnName The name of the column (case insensitive) + * @return The row number of the record found, or -1 if not found. + **/ + public int find( int value , String columnName ) { + return find( value , getColumnIndex( columnName ) , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnName The name of the column (case insensitive) + * @param startRow The row with which to begin the search + * @return The row number of the record found, or -1 if not found. + **/ + public int find( int value , String columnName , int startRow ) { + return find( value , getColumnIndex( columnName ) , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnIndex The numeric column index for the cell + * @return The row number of the record found, or -1 if not found. + **/ + public int find( int value , int columnIndex ) { + return find( value , columnIndex , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnIndex The numeric column index for the cell + * @param startRow The row with which to begin the search + * @return The row number of the record found, or -1 if not found. + **/ + public int find( int value , int columnIndex , int startRow ) { + try { + if ( startRow < 0 ) { + startRow = 0 ; + } + + if ( isValidRowColumn( startRow , columnIndex ) == false ) { + return -1 ; + } + + for ( int row = startRow ; row < getNumRowsActive() ; row++ ) { + if ( getInt( row , columnIndex ) == value ) { + return row ; + } + } + + return -1 ; + } catch( Exception ex ) { + return -1 ; + } + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnName The name of the column (case insensitive) + * @return The row number of the record found, or -1 if not found. + **/ + public int find( String value , String columnName ) { + return find( value , getColumnIndex( columnName ) , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnName The name of the column (case insensitive) + * @param startRow The row with which to begin the search + * @return The row number of the record found, or -1 if not found. + **/ + public int find( String value , String columnName , int startRow ) { + return find( value , getColumnIndex( columnName ) , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnIndex The numeric column index for the cell + * @return The row number of the record found, or -1 if not found. + **/ + public int find( String value , int columnIndex ) { + return find( value , columnIndex , 0 ) ; + } + + /** + * This method finds the row within a specific column for a specific value + * @param value The value to be found + * @param columnIndex The numeric column index for the cell + * @param startRow The row with which to begin the search + * @return The row number of the record found, or -1 if not found. + **/ + public int find( String value , int columnIndex , int startRow ) { + try { + if ( startRow < 0 ) { + startRow = 0 ; + } + + if ( isValidRowColumn( startRow , columnIndex ) == false ) { + return -1 ; + } + + for ( int row = startRow ; row < getNumRows() ; row++ ) { + if ( value.equals( getString( row , columnIndex ) ) ) { + return row ; + } + } + + return -1 ; + } catch( Exception ex ) { + return -1 ; + } + } +} diff --git a/gov/epa/otaq/moves/common/EPATableModelTest.java b/gov/epa/otaq/moves/common/EPATableModelTest.java new file mode 100644 index 0000000..9857adf --- /dev/null +++ b/gov/epa/otaq/moves/common/EPATableModelTest.java @@ -0,0 +1,173 @@ +/************************************************************************************************** + * @(#)EPATableModelTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * This class tests the EPATableModel class + * + * @author Cimulus + * @version 2004-04-25 +**/ +public class EPATableModelTest extends TestCase { + DatabaseSelection dbSelection = new DatabaseSelection(); + Connection con = null ; + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EPATableModelTest(String name) { + super(name); + + dbSelection.serverName = "localhost"; + dbSelection.databaseName = "MOVESDefault" ; + dbSelection.userName = ""; + dbSelection.password = ""; + con = dbSelection.openConnectionOrNull(); + + EPATableModel.dbConnection = con ; + } + + /** Implements the test case(s). **/ + public void testCase() { + int rc = 0 ; + + if ( rc == 0 ) { + return ; + } + + System.out.println( "EPATableModelTest" ) ; + + if ( con == null ) { + System.out.println( "Connection is null" ) ; + } + + EPATableModel epaTable = + new EPATableModel( "SourceTypeID | FuelTypeID | EngineTechID | Year | Value " ); + EPATableModel epaSourceUseType = new EPATableModel( + "SourceTypeID | HPMSVTypeID | sourcetypename | rollingterma | rotatingtermb | " + + "dragtermc | sourcemass " ); + + System.out.println( "" ) ; + System.out.println( epaTable.getDefinition() ) ; + + epaTable.setNumRowsActive( 4 ) ; +// epaTable.numRowsActive = 204 ; + epaTable.setValueAt( new Integer( 11 ) , 0 , 0 ) ; + epaTable.setValueAt( new Integer( 12 ) , 0 , 1 ) ; + epaTable.setValueAt( new Integer( 13 ) , 0 , 2 ) ; + epaTable.setValueAt( "Mark" , 0 , 4 ) ; + epaTable.setValueAt( new Integer( 44 ) , 1 , 0 ) ; + epaTable.setValueAt( new Integer( 55 ) , 1 , 1 ) ; + epaTable.setValueAt( new Integer( 66 ) , 1 , 2 ) ; + epaTable.setValueAt( "Andrew" , 2 , 4 ) ; + + System.out.println( "\nData\n" ) ; + System.out.println( epaTable.getPrintDataRows() ) ; + + epaTable.clearData() ; + epaTable.setNumRowsActive( 2 ) ; + epaTable.setValueAt( new Integer( 144 ) , 1 , 0 ) ; + epaTable.setValueAt( new Integer( 155 ) , 1 , 1 ) ; + epaTable.setValueAt( new Integer( 166 ) , 1 , 2 ) ; + epaTable.setValueAt( "Rolfes" , 1 , 4 ) ; + System.out.println( "\nData after Clear\n" ) ; + System.out.println( epaTable.getPrintDataRows() ) ; + + rc = epaSourceUseType.sqlSelect( con , "select * from sourceusetype" ) ; + System.out.println( "\nData from SQL rc =" + rc + "\n" ) ; + System.out.println( epaSourceUseType.getPrintDataRows() ) ; + + rc = epaSourceUseType.sqlSelect( "select sourcemass , dragtermc , rotatingtermb , " + + " rollingterma , SourceTypeID , HPMSVTypeID , sourcetypename from sourceusetype" ); + System.out.println( "\nData from SQL diff order rc =" + rc + " " + + epaSourceUseType.errorText + "\n" ) ; + System.out.println( epaSourceUseType.getPrintDataRows() ) ; + + EPATableModel epaPollutant = new EPATableModel(); + rc = epaPollutant.sqlSelect( "select * from pollutant" ) ; + System.out.println( "\nData from Pollutant SQL " + rc + "\n" ) ; + System.out.println( epaPollutant.getPrintDataRows() ) ; + } + + /** Implements the test case(s). **/ + public void testCase2() { + int rc = 0 ; + + if ( rc == 0 ) { + return ; + } + + System.out.println( "EPATableModelTest 2" ) ; + + EPATableModel epaPollutant = new EPATableModel(); + rc = epaPollutant.sqlSelect( "select * from pollutant" , true ) ; + System.out.println( "\nData from Pollutant SQL " + rc + "\n" ) ; + System.out.println( epaPollutant.getPrintDataRows() ) ; + +// System.out.println( epaTable.getDefinition() ) ; + } + + /** Implements the test case(s). **/ + public void testCase3() { + int rc = 0 ; +/* + System.out.println( "\n\nEPATableModelTest 3" ) ; + + EPATableModel epaSourceUseType = new EPATableModel( + "SourceTypeID | HPMSVTypeID | sourcetypename | rollingterma | rotatingtermb | dragtermc | sourcemass " ); + + + rc = epaSourceUseType.sqlSelect( "select sourcemass , dragtermc , rotatingtermb , " + + " rollingterma , SourceTypeID , HPMSVTypeID , sourcetypename from sourceusetype" ); + + System.out.println( "\nData from SQL diff order rc =" + rc + " " + + epaSourceUseType.errorText + "\n" ) ; + System.out.println( epaSourceUseType.getPrintDataRows() ) ; + + System.out.println( "\n********\n" ) ; + + rc = epaSourceUseType.sqlSelect( "select * from sourceusetype" ); + System.out.println( "\nData from SQL rc =" + rc + " " + + epaSourceUseType.errorText + "\n" ) ; + System.out.println( epaSourceUseType.getPrintDataRows() ) ; +*/ + } + + /** Implements the test case(s). **/ + public void testCase4() { + int rc = 0 ; + String sql ; + + EPATableModel tableSourceUseType = new EPATableModel() ; + EPATableModel tableYear = new EPATableModel() ; + EPATableModel tableFuelEngTechAssoc = new EPATableModel( + "SourceTypeId | FuelTypeId | EngTechId | Category | YearData " ) ; + + rc = tableSourceUseType.sqlSelect( "select * from sourceusetype" ) ; + + System.out.println( tableSourceUseType.getDefinition() ) ; + System.out.println( tableSourceUseType.getPrintDataRows() ) ; + + rc = tableYear.sqlSelect( "select * from year where yearid >= 2000" ) ; + + sql= "SELECT " + + " (sourcetypeid*1000000)+(categoryDisplayOrder*10000)+(fueltypeid*100)+engtechid " + + " AS Sorter, sourceTypeID, categoryDisplayOrder, category, " + + " fuelengtechassoc.fuelTypeID, fuelengtechassoc.engTechID " + + " FROM fuelengtechassoc where sourcetypeid = 21 ORDER BY 1 " ; + + rc = tableFuelEngTechAssoc.sqlSelect( sql ) ; + + System.out.println( tableYear.getPrintDataRows() ) ; + System.out.println( tableSourceUseType.getPrintDataRows() ) ; + System.out.println( tableFuelEngTechAssoc.getPrintDataRows() ) ; + } +} diff --git a/gov/epa/otaq/moves/common/ExtendedComboBox.java b/gov/epa/otaq/moves/common/ExtendedComboBox.java new file mode 100644 index 0000000..d7f2d85 --- /dev/null +++ b/gov/epa/otaq/moves/common/ExtendedComboBox.java @@ -0,0 +1,135 @@ +/** + * Combobox subclass, capable of displaying text in preferred size. + * Source code ref : http://forum.java.sun.com/thread.jsp?forum=57&thread=121540 + * @author Tim Hull + * @author Wesley Faler + * @version 2011-09-10 +**/ +package gov.epa.otaq.moves.common; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.plaf.metal.MetalComboBoxUI; +import javax.swing.plaf.basic.BasicComboBoxRenderer; +import javax.swing.plaf.basic.*; + +public class ExtendedComboBox extends JComboBox { + // Width of the popup + protected int popupWidth = 0; + + // Flag used to determine if the actions was performed by the user + boolean isUserAction = false; + + // Flag used to determine if an ActionEvent is already being fired + boolean firingActionEvent = false; + + + /** + * Constructor which sets the ExtendedComboBox in the super class + **/ + public ExtendedComboBox() { + setUI(new ExtendedComboBoxUI()); + } + + /** + * Fires action events. + **/ + protected void fireActionEvent() { + + // Fire the action event if it is a user action + if (isUserAction && !firingActionEvent) { + firingActionEvent = true; + super.fireActionEvent(); + firingActionEvent = false; + } + // Clear user action flag if we don't have focus + if(!isFocusOwner() && !getEditor().getEditorComponent().isFocusOwner()) + isUserAction = false; + } + + /** + * Sets the pop up width + * @param width width of the popup + **/ + public void setPopupWidth(int width) { + popupWidth = width; + } + + /** + * Gets the size of the pop up + * @return Dimension width and height + **/ + public Dimension getPopupSize() { + Dimension size = getSize(); + if(popupWidth < 1) { + popupWidth = size.width; + } + return new Dimension(popupWidth, size.height); + } + + public class ExtendedComboBoxUI extends MetalComboBoxUI { + /** + * Creates the focus listener + * @return FocusListener, focus listener for combobox. + **/ + protected FocusListener createFocusListener() { + return new FocusHandler() { + /** + * Handles the focus lost event for the combobox. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + super.focusLost(e); + // Clear user action flag if we haven't already + isUserAction = false; + } + + /** + * Handles the focus gained event for the combobox. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + // Set user action flag + isUserAction = true; + super.focusGained(e); + } + + }; + } + + /** + * Creates the combobox + * @return ComboPopUp, combobox after setting the preferred size. + **/ + protected ComboPopup createPopup() { + BasicComboPopup popup = new BasicComboPopup(comboBox) { + /** + * Show the extended combobox + **/ + public void show() { + Dimension popupSize = ((ExtendedComboBox) comboBox).getPopupSize(); + popupSize.setSize(popupSize.width, + getPopupHeightForRowCount(comboBox.getMaximumRowCount())); + Rectangle popupBounds = computePopupBounds(0, + comboBox.getBounds().height, popupSize.width, popupSize.height); + scroller.setMaximumSize(popupBounds.getSize()); + scroller.setPreferredSize(popupBounds.getSize()); + scroller.setMinimumSize(popupBounds.getSize()); + list.invalidate(); + int selectedIndex = comboBox.getSelectedIndex(); + if (selectedIndex == -1) { + list.clearSelection(); + } else { + list.setSelectedIndex(selectedIndex); + } + list.ensureIndexIsVisible(list.getSelectedIndex()); + setLightWeightPopupEnabled(comboBox.isLightWeightPopupEnabled()); + show(comboBox, popupBounds.x, popupBounds.y); + } + }; + popup.getAccessibleContext().setAccessibleParent(comboBox); + return popup; + } + } +} diff --git a/gov/epa/otaq/moves/common/FileTimeUtility.java b/gov/epa/otaq/moves/common/FileTimeUtility.java new file mode 100644 index 0000000..88d7862 --- /dev/null +++ b/gov/epa/otaq/moves/common/FileTimeUtility.java @@ -0,0 +1,54 @@ + /* + * FileTimeUtility + */ +package gov.epa.otaq.moves.common; + +import java.util.Calendar; +import java.util.Date; + +/** +* This class contains a static method which converts +* a file's last modification date-time as available to Java +* to a String form suitable for display +* @author Mitch Cumberworth +* @version 10/24/2005 +**/ + +public class FileTimeUtility { + + /** + * Method to convert the file time as provided by Java's File + * class to a String form suitable for display, analogous to + * standard string form used by MySQL (yyyy-mm-dd hh:mm:ss) + * + * Warning: May not work on Non-Windows systems as O'Reilly instructs that + * the long type value returned by the File.lastModified() method + * "should be used for comparison with other file times only and not + * interpreted as any paricular time format". On the other hand + * this method uses only non-deprecated java methods to interpret the value + * + * @param fileTimeAsLong the file date-time as available from File.lastModified() + * @return a String displaying the date and time in format yyyy-mm-dd hh:mm:ss + **/ + + public static String convertFileTimeToString (long fileTimeAsLong) { + + Date date = new Date(fileTimeAsLong); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + + int intMonth = (calendar.get(Calendar.MONTH)); + String mm = (new Integer(intMonth+1)).toString(); + int intDay = (calendar.get(Calendar.DAY_OF_MONTH)); + String dd = (new Integer(intDay)).toString(); + int intYear = (calendar.get(Calendar.YEAR)); + String yyyy = (new Integer (intYear)).toString(); + int intHour = (calendar.get(Calendar.HOUR_OF_DAY)); + String hh = (new Integer(intHour)).toString(); + int intMin = (calendar.get(Calendar.MINUTE)); + String min = (new Integer(intMin)).toString(); + int intSec = (calendar.get(Calendar.SECOND)); + String ss = (new Integer(intSec)).toString(); + return yyyy + "-" + mm + "-" + dd + " " + hh + ":" + min + ":" + ss; + } +} diff --git a/gov/epa/otaq/moves/common/FileUtilities.java b/gov/epa/otaq/moves/common/FileUtilities.java new file mode 100644 index 0000000..0c8cae2 --- /dev/null +++ b/gov/epa/otaq/moves/common/FileUtilities.java @@ -0,0 +1,883 @@ +/************************************************************************************************** + * @(#)FileUtilities.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.sql.*; +import java.util.LinkedList; +import java.util.ArrayList; +import java.util.StringTokenizer; + +/** + * This static class provides various general purpose file-related functionality. + * + * @author Wesley Faler + * @author EPA (Mitch C.) + * @version 2010-12-18 +**/ +public class FileUtilities { + /** + * Some file operations must be retried to work around a Java runtime quirk where + * some stream objects' close() methods don't immediately release file system resources. + * This is the standard maximum retry count. + **/ + static final int FILE_SYSTEM_STANDARD_RETRY_COUNT = 10; + /** + * Some file operations must be retried to work around a Java runtime quirk where + * some stream objects' close() methods don't immediately release file system resources. + * This is the standard sleep time in between retries. + **/ + static final int FILE_SYSTEM_STANDARD_RETRY_SLEEP_MS = 1000; + + /** + * Helper function to copy a file to destination directory, since Java.io.File doesn't + * provide a copy file function. + * @param sourceFilePath The file to copy. + * @param destinationFolder The destination folder to copy the file to. + * @return True on success. Will fail if the file already exists in the destination folder. + **/ + public static boolean copyFileToFolder(File sourceFilePath, File destinationFolder) { + BufferedInputStream fileIn = null; + BufferedOutputStream fileOut = null; + + try { + int bufferSize = 256*1024; + byte[] buffer = new byte[bufferSize]; + + fileIn = new BufferedInputStream(new FileInputStream(sourceFilePath),bufferSize); + File destinationFile = new File(destinationFolder, sourceFilePath.getName()); + if(destinationFile.exists()) { + throw new IOException("File already exists in the destination folder."); + } + // destinationFile.createNewFile(); + fileOut = + new BufferedOutputStream(new FileOutputStream(destinationFile),bufferSize); + int length; + while((length = fileIn.read(buffer)) >= 0) { + if(length > 0) { + fileOut.write(buffer,0,length); + } + } + } catch(Exception e) { + return false; + } finally { + if(fileIn != null) { + try { + fileIn.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(fileOut != null) { + try { + fileOut.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + + return true; + } + + /** + * Helper function to copy a file to destination file. + * @param sourceFilePath The file to copy. + * @param destinationFilePath The destination File to copy the file to. + * @param overWrite Indicates if the destination should be overwritten. + * @return True if copied. + **/ + public static boolean copyFile(File sourceFilePath, File destinationFilePath, + boolean overWrite) { + BufferedInputStream fileIn = null; + BufferedOutputStream fileOut = null; + try { + if(destinationFilePath.exists() && !overWrite) { + return false; + } + + int bufferSize = 256*1024; + byte[] buffer = new byte[bufferSize]; + + fileIn = new BufferedInputStream(new FileInputStream(sourceFilePath),bufferSize); + destinationFilePath.delete(); + // destinationFilePath.createNewFile(); + fileOut = + new BufferedOutputStream(new FileOutputStream(destinationFilePath),bufferSize); + int length; + while((length = fileIn.read(buffer)) >= 0) { + if(length > 0) { + fileOut.write(buffer,0,length); + } + } + } catch(Exception e) { + //Logger.logError(e,"Unable to copy file " + sourceFilePath.getName()); + return false; + } finally { + if(fileIn != null) { + try { + fileIn.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(fileOut != null) { + try { + fileOut.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + + return true; + } + + /** + * Compares two text files (eol differences don't matter), though case does matter. + * @param referenceFilePath String indicating the file, with path, to compare against. + * @param testFilePath String indicating the file, with path, to compare to. + * @return True if both files are the same. + **/ + public static boolean compareTextFiles(String referenceFilePath, String testFilePath) { + boolean isSame = false; + try { + LineNumberReader testFileReader = new LineNumberReader( + new FileReader(testFilePath), 16384); + LineNumberReader referenceFileReader = new LineNumberReader( + new FileReader(referenceFilePath), 16384); + // compare each line in both files, the loop terminates on the first difference + isSame = true; + while(true) { + // these strings will be null when the EOF is reached + String nextTestFilePathLine = testFileReader.readLine(); + String nextReferenceFileLine = referenceFileReader.readLine(); + // if both files have reached EOF, terminate the loop + if((nextTestFilePathLine == null) && (nextReferenceFileLine == null)) { + break; + } + // if one file reaches EOF, terminate the loop + if((nextTestFilePathLine == null) || (nextReferenceFileLine == null)) { + isSame = false; + break; + } + // now it is safe to use String.equals(), both objects are non-NULL + if(!nextTestFilePathLine.equals(nextReferenceFileLine)) { + isSame = false; + break; + } + } + testFileReader.close(); + referenceFileReader.close(); + } catch(Exception e) { + isSame = false; +// Logger.logError(e,"File compare "+referenceFilePath+" to "+testFilePath+" failed."); + } + return isSame; + } + + /** + * Utility function to compare two file paths, without regards to case, + * and without regards to slash style (i.e '/' == '\\'). + * This is necessary since java.util.RegExp is not available to versions before 1.4. + * @param reference The filename to compare to. This string can use single char + * wildcards ('?' char). + * @param testFilePath The filename to test. + * @return true if the two file paths are the same. + **/ + public static boolean compareFilePath(String reference, String testFilePath) { + // return if the two path strings are of different lengths + if(reference.length() != testFilePath.length()) { + return false; + } + // iterator through each char, run the comparisons, stops at the first real difference + char refChar; + char testChar; + for(int i = 0; i < reference.length(); i++) { + // check for wildcard + refChar = Character.toLowerCase(reference.charAt(i)); + if(refChar == '?') { + continue; + } + testChar = Character.toLowerCase(testFilePath.charAt(i)); + // case-insensitive comparison + if(testChar != refChar) { + // if different, check for slashes + if((testChar == '\\' || testChar == '/') + && (refChar == '\\' || refChar == '/')) { + // both chars are some type of slash, and thus "equal" + continue; + } + // the chars are not both slashes, and are different so return fail + return false; + } + } + // passed all tests, so return success + return true; + } + + /** + * Verifies that a file specified by the abstract pathname exists. This would also catch + * the case where the abstract pathname is for a directory, not a valid file. This function + * basically wraps a call to File.isFile() and returns a simple boolean without throwing any + * exceptions. + * @param f The File representing the abstract pathname to check. + * @return Boolean true if the file exists and can be read. + **/ + public static boolean fileExists(File f) { + boolean result = false; + try { + result = f.isFile(); + } catch(SecurityException e) { + // read access to the file was denied by a possible SecurityManager for this app +// Logger.logError(e, "Test for file exists failed on "+f.getName()); + result = false; + } + return result; + } + + /** + * Tries to open an InputStream for the specified file with retries if it fails, and waits + * in between failed attempts. This will throw an exception if the final open attempt fails. + * @param file The File on which to create an InputStream. + * @throws FileNotFoundException An exception thrown from the FileInputStream constructor. + * Only rethrown once all retries have expired. + * @return An FileInputStream object. This won't be null. + **/ + public static FileInputStream openFileInputStreamWithRetry(File file) + throws FileNotFoundException { + for(int i = 0; i < FILE_SYSTEM_STANDARD_RETRY_COUNT; i++) { + try { + FileInputStream result = new FileInputStream(file); + + if(i > 0) { + Logger.log(LogMessageCategory.INFO, + "openFileInputStreamWithRetry succeeded on retry " + i); + } + + return result; + } catch (FileNotFoundException notFoundException) { + // If this is the last retry, rethrow the exception. + if(i == FILE_SYSTEM_STANDARD_RETRY_COUNT - 1) { + throw notFoundException; + } + + try { + Thread.sleep(FILE_SYSTEM_STANDARD_RETRY_SLEEP_MS); + } catch(InterruptedException interruptedException) { + throw notFoundException; + } + } + } + + throw new UnsupportedOperationException("Code should never reach here"); + } + + /** + * Helper function to execute a SQL query and write the results into a Tab Separated Value + * file, including a header row with column names. The heading row will be written even + * if there are no data rows. + * @param db a Connection to the database to be queried + * @param sql the statement to run. + * @param outputFile the file to be generated. Will be overwritten, not appended to, + * @throws SQLException on error from any of the database operations. + * @throws IOException on error from any of the file operations + **/ + public static void exportSQLResultsToFile(Connection db,String sql,File outputFile) + throws IOException, SQLException { + BufferedWriter writer = + new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outputFile))); + + PreparedStatement statement; + ResultSet results; + + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + // Write the header row + ResultSetMetaData meta = results.getMetaData(); + int numColumns = meta.getColumnCount(); + for(int i=1;i<=numColumns;i++) { + if(i>1) { + writer.write("\t"); + } + writer.write(meta.getColumnName(i)); + } + writer.newLine(); + // Write the data rows + String nextValue = ""; + while(results.next()) { + for(int i=1;i<=numColumns;i++) { + if(i>1) { + writer.write("\t"); + } + nextValue = results.getString(i); + writer.write(nextValue != null ? nextValue : ""); + } + writer.newLine(); + } + // Done + results.close(); + statement.close(); + writer.close(); + } + + /** + * Searches for text in a file between the start and end tags. If the start tag is found, + * then all text including the end tag is returned. If the end tag is not found, then all + * all text after the start tag is returned. The start tag is not included as part of the + * resulting string. + * @param inFile The File to search in. + * @param startTag A String indicating the text that would preceed the desired text "area". + * @param endTag A String that delineates the end of the text "area" to return. This param + * can be null, if an end tag is not required. + * @return If the start tag is round, then the resulting text is returned as a String. + **/ + public static String findTextInFile(File inFile, String startTag, String endTag) { + String returnText = ""; + try { + StringBuffer buffer = new StringBuffer(16384); + BufferedReader br = new BufferedReader(new FileReader(inFile), 16384); + int i; + while((i = br.read()) != -1) { + buffer = buffer.append((char)i); + } + String lowerString = buffer.toString().toLowerCase(); + String errorTagStart = startTag.toLowerCase(); + String errorTagEnd = endTag != null ? endTag.toLowerCase() : null; + int errorIndexStart = lowerString.indexOf(errorTagStart); + int errorIndexEnd = errorTagEnd != null ? + lowerString.indexOf(errorTagEnd, errorIndexStart) : -1; + if(errorIndexStart > -1) { + if(errorIndexEnd > -1) { + // The error text will include the end tag as part of the message, but + // not the start tag + if(errorIndexStart + errorTagStart.length() < (buffer.length() + 1)) { + if(errorIndexEnd + errorTagEnd.length() < (buffer.length() + 1)) { + errorIndexEnd += errorTagEnd.length(); + } + returnText = buffer.toString().substring( + errorIndexStart + errorTagStart.length(), errorIndexEnd); + } + } else { + if(errorIndexStart + errorTagStart.length() < (buffer.length() + 1)) { + // End tag not found so return everything after the start tag + returnText = buffer.toString().substring( + errorIndexStart + errorTagStart.length()); + } + } + if(returnText.length() == 0) { + returnText = "error found, but no message was specified."; + } + } + br.close(); + } catch(Exception e) { +// Logger.logError(e, "Find text between '"+startTag+"' and '"+endTag+"' failed for file, "+ +// inFile.getName()); + } + return returnText; + } + + /** + * Attempts to delete a file. If the delete attempt fails, this waits and retries. This + * is frequently necessary since some stream objects' close() methods don't release + * underlying file system resources immediately as expected. + * @param fileToDelete The target file path to delete. + * @return Was the delete attempt successful. + **/ + public static boolean deleteFileWithRetry(File fileToDelete) { + for(int i = 0; i < FILE_SYSTEM_STANDARD_RETRY_COUNT; i++) { + if(i > 0) { + try { + Thread.sleep(FILE_SYSTEM_STANDARD_RETRY_SLEEP_MS); + } catch(InterruptedException exception) { + return false; + } + } + + if(!fileToDelete.exists() || fileToDelete.delete()) { + if(i > 0) { + Logger.log(LogMessageCategory.INFO, + "deleteFileWithRetry succeeded on retry " + i); + } + return true; + } + } + + return false; + } + + /** + * Attempts to rename a file. If the rename attempt fails, this waits and retries. This + * is frequently necessary since some stream objects' close() methods don't release + * underlying file system resources immediately as expected. + * @param source The source file path. + * @param destination The destination file path. + * @return Was the rename attempt successful. + **/ + public static boolean renameFileWithRetry(File source, File destination) { + for(int i = 0; i < FILE_SYSTEM_STANDARD_RETRY_COUNT; i++) { + if(i > 0) { + try { + Thread.sleep(FILE_SYSTEM_STANDARD_RETRY_SLEEP_MS); + } catch(InterruptedException exception) { + return false; + } + } + + if(!source.exists()) { + return false; + } + if(source.renameTo(destination)) { + if(i > 0) { + Logger.log(LogMessageCategory.INFO, + "renameFileWithRetry succeeded on retry " + i); + } + return true; + } + } + + return false; + } + + /** + * Gets a file extension. + * @param f A File object. + * @param includeDot Indicates whether the dot should be part of the returned String. + * @return The file extension. + **/ + public static String getFileExtension(File f, boolean includeDot) { + return getFileExtension(f.getName(),includeDot); + } + + /** + * Gets a file extension. + * @param fileName name of a file, including extension + * @param includeDot Indicates whether the dot should be part of the returned String. + * @return The file extension. + **/ + public static String getFileExtension(String fileName, boolean includeDot) { + int dotIndex = fileName.lastIndexOf("."); + if(dotIndex > -1) { + if(includeDot && (dotIndex == (fileName.length() - 1))) { + return "."; + } + return fileName.substring(dotIndex + (includeDot ? 0 : 1)); + } + return ""; + } + + /** + * Adds SQL statements to a linked list, one statement at a time. + * @param sqlScriptFilePath Indicates the path and name of the source SQL script file. + * @param toList A linked list with the SQL statements added. + * @return True on success. + **/ + public static boolean appendSQLScriptToList(String sqlScriptFilePath, + LinkedList toList) { + final String eol = System.getProperty("line.separator"); + String sql; + BufferedReader br = null; + try { + br = new BufferedReader(new FileReader(sqlScriptFilePath), 16384); + int state = 0; + String statement = null; + while(br.ready()) { + String line = br.readLine(); + if(line == null) { + break; + } + line = line.trim(); + if(line.length() <= 0) { + continue; + } + switch(state) { + case 0: // Waiting for SQL statement to start + if(line.startsWith("--")) { + toList.add(line); + continue; + } else if(line.endsWith(";")) { + toList.add(line); + continue; + } else { + statement = line; + state = 1; + } + break; + case 1: // Waiting for SQL statement to terminate + statement += eol; + statement += line; + + if(line.startsWith("--")) { + statement += eol; + continue; + } else if(line.endsWith(";")) { + toList.add(statement); + statement = null; + state = 0; + } + break; + } + } + if(statement != null) { + toList.add(statement); + } + return true; + } catch(Exception e) { + /** + * @issue Parse file, '[sqlScriptFilePath]', for SQL statements failed. + * @explain While reading a file of SQL statements, MOVES encountered an error. + **/ + Logger.logError(e,"Parse file, '"+sqlScriptFilePath+"', for SQL statements failed."); + return false; + } finally { + if(br != null) { + try { + br.close(); + } catch(Exception e) { + // Nothing can be done here + } + br = null; + } + } + } + + /** + * Creates a new temporary folder with the given name prefix. + * @param parentFolder The path to the parent folder to create the directory in. null is + * acceptable (will use system temporary directory) + * @param namePrefix The naming prefix of the temporary folder. This is required. + * @return The path to the new temporary folder. This will be null on error. + **/ + public static File createTemporaryFolder(File parentFolder, String namePrefix) { + return TemporaryFileManager.createTemporaryFolder(parentFolder,namePrefix); + } + + /** + * Deletes the contents (non-recursive) of a temporary folder and then deletes the folder + * itself. This currently does NOT recursively delete sub-directories. Errors messages are + * logged but exceptions aren't thrown. + * @param targetFolder The folder to be deleted. + * @return Was the folder successfully immediately deleted. + **/ + public static boolean deleteTemporaryFolder(File targetFolder) { + return TemporaryFileManager.deleteTemporaryFolder(targetFolder); + } + + /** + * Gets the canonical path name of a file. If that fails, return the name of the file + * without throwing an IOException. + * @param file The target file. + * @return The canonical path name or file path name + **/ + public static String safeGetPath(File file) { + try { + return file.getCanonicalPath(); + } catch (IOException exception) { + return file.getPath(); + } + } + + /** + * Appends text data and an EOL sequence to the specified file. + * @param targetFile The file to append to. + * @param text The text to append. An EOL is added in addition to this text. + * @throws IOException If a file I/O error occurs. + **/ + public static void appendLine(File targetFile, String text) throws IOException { + final String eol = System.getProperty("line.separator"); + + FileWriter fileWriter = new FileWriter(targetFile.getPath(), true); + try { + fileWriter.write(text + eol); + } finally { + fileWriter.close(); + } + } + + /** + * Gets the name of a file with any extension stripped of. + * @param file The file to get the base name of. + * @return The base name of the file with any extension stripped. + **/ + public static String getBaseFileName(File file) { + String baseName = file.getName(); + int dotIndex = baseName.lastIndexOf("."); + if(dotIndex > -1) { + return baseName.substring(0, dotIndex); + } else { + return baseName; + } + } + + /** + * Reads an entire file to a String. + * @param file The file to read. + * @return The file contents as a String. + * @throws FileNotFoundException If the given file wasn't found. + * @throws IOException If there was an error reading the file. + **/ + public static String readEntireFile(File file) throws FileNotFoundException, IOException { + char[] characterBuffer = new char[(int) file.length()]; + FileReader fileReader = new FileReader(file); + try { + fileReader.read(characterBuffer); + } finally { + fileReader.close(); + } + return new String(characterBuffer); + } + + /** + * Reads an entire file into an ArrayList of String objects, one for each line. + * @param file The file to read. + * @return The file contents as an ArrayList of String objects, one for each line. + * @throws FileNotFoundException If the given file wasn't found. + * @throws IOException If there was an error reading the file. + **/ + public static ArrayList readLines(File file) throws FileNotFoundException, IOException { + ArrayList lines = new ArrayList(); + BufferedReader reader = new BufferedReader(new FileReader(file), 65536); + try { + String line = null; + while((line = reader.readLine()) != null) { + lines.add(line); + } + } finally { + reader.close(); + } + return lines; + } + + /** + * Reads an entire file to a StringBuffer. + * @param fileName The file to read. + * @return The file contents as a StringBuffer, or null if the file was not found or + * could not be read for any reason. + **/ + public static StringBuffer readFileContents( String fileName ) { + if ( fileName.length() == 0 ) { + return null ; + } + + String fileLine = ""; + String fileString = ""; + StringBuffer fileData = new StringBuffer() ; + int fileLength ; + + try { + // If this file exists, write it into the mobile input file + + File userFile = new File( fileName ) ; + + if ( userFile == null ) { + return null ; + } + + if ( userFile.exists() == false ) { + return null ; + } + + if ( userFile.length() == 0 ) { + return null ; + } + + fileLength = ( int ) userFile.length() ; + fileData.ensureCapacity( fileLength + 10 ) ; + + BufferedReader fileCommandReader = new BufferedReader( + new InputStreamReader(new FileInputStream(userFile))); + + // Read Lines of User Input file + fileLine = fileCommandReader.readLine(); + while ( fileLine != null) { + fileData.append( fileLine ) ; + fileData.append( "\n" ) ; + fileLine = fileCommandReader.readLine(); + } + fileCommandReader.close(); + + return fileData ; + + } catch( IOException ex ) { + } + + return null ; + } + + + /** + * Writes an entire string to a file. + * @param fileName The filename (passed as a String) to write. + * @param data The data (passed as a String) to write to the file. + * @return Returns boolean 'true' if successful, 'false' if not. + **/ + public static boolean writeFileContents( String fileName , String data ) { + if ( fileName.length() == 0 || data.length() == 0 ) { + return false ; + } + + String fileLine = ""; + String newLine = System.getProperty( "line.separator" ) ; + String fileString = ""; + int fileLength ; + StringTokenizer stk = new StringTokenizer( data , "\r\n" ) ; + FileWriter fw = null; + + try { + fw = new FileWriter( fileName , false ) ; + if ( fw == null ) { + return false ; + } + while ( stk.hasMoreTokens() == true ) { + fw.write( stk.nextToken() ) ; + fw.write( newLine ) ; + } + return true ; + } catch( IOException ex ) { + // Nothing to do here + } finally { + if(fw != null) { + try { + fw.close(); + } catch(Exception e) { + // Nothing to do here + } + fw = null; + } + } + + return false; + } + + + /** + * Appends an entire string to a file. The method will create the file if it does not exist. + * @param fileName The filename (passed as a String) to write. + * @param data The data (passed as a String) to write to the file. + * @return Returns boolean 'true' if successful, 'false' if not. + **/ + public static boolean appendFileContents( String fileName , String data ) { + if ( fileName.length() == 0 || data.length() == 0 ) { + return false ; + } + + String fileLine = ""; + String newLine = System.getProperty( "line.separator" ) ; + String fileString = ""; + StringBuffer fileData = new StringBuffer() ; + int fileLength ; + StringTokenizer stk = new StringTokenizer( data , "\r\n" ) ; + + try { + FileWriter fw = new FileWriter( fileName , true ) ; + if ( fw == null ) { + return false ; + } + + while ( stk.hasMoreTokens() == true ) { + fw.write( stk.nextToken() ) ; + fw.write( newLine ) ; + } + + fw.close() ; + + return true ; + + } catch( IOException ex ) { + } + + return false ; + } + /** + * Helper function to extract a block of leading comments from a MySQL script file. + * Considers this block of comments to extend from the beginning of the file + * up to the first non-comment, non-blank line. It will be empty if first line + * is not blank and not a comment. + * comment lines begin with "#" or "-- ". + * "/*" comment syntax, which is imperfectly implemented by MySQL, is not supported. + * + * @param sourceFilePath the script file + * @return Object[] the block of leading comments + **/ + public static Object[] extractInitialCommentBlock(File sourceFilePath) { + ArrayList header = new ArrayList(); + FileReader fr = null; + BufferedReader br = null; + if(sourceFilePath.exists() && sourceFilePath.canRead()) { + try { + fr = new FileReader(sourceFilePath); + br = new BufferedReader (fr); + while (br.ready()) { + String nextLine = br.readLine(); + if ((nextLine.startsWith("#")) || (nextLine.startsWith("-- ")) + || (nextLine.trim().length() == 0)) { + header.add(nextLine); + } else { + break; + } + } + } catch(Exception e) { + // nothing can be done here + } finally { + try { + br.close(); + fr.close(); + } catch (Exception e) { + // nothing can be done here + } + } + return header.toArray(); + } else { + return null; + } + } + + private static class FileWithDate { + File f; + long lastModified; + } + + /** + * Sort an array of files by date/time of their creation, putting the earliest creation dates + * (ie farthest in the past) at the beginning of the list. + * @param files files to be sorted + **/ + public static void sortByDate(File[] files) { + if(files == null || files.length <= 1) { + return; + } + try { + FileWithDate[] details = new FileWithDate[files.length]; + for(int i=0;i b.lastModified) { + details[i-1] = b; + details[i] = a; + done = false; + } + } + } + // Save the results + for(int i=0;i sqlLines = new LinkedList(); + boolean result = + FileUtilities.appendSQLScriptToList("testdata/appendSQLScriptToList.sql", + sqlLines); + assertTrue("Failed to read Test.sql",result); + + int lineNumber = 1; + for(Iterator i=sqlLines.iterator();i.hasNext();) { + String sql = (String)i.next(); + System.out.println(lineNumber + ": " + sql); + lineNumber++; + } + + assertTrue("Invalid number of parsed lines.",sqlLines.size() == 4); + } +} diff --git a/gov/epa/otaq/moves/common/FloatConversion.java b/gov/epa/otaq/moves/common/FloatConversion.java new file mode 100644 index 0000000..f34ac97 --- /dev/null +++ b/gov/epa/otaq/moves/common/FloatConversion.java @@ -0,0 +1,350 @@ +/************************************************************************************************** + * @(#)FloatConversion.java + * + * + * + *************************************************************************************************/ + +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; +import java.math.*; +import java.text.*; + +/** + * This static class provides various general purpose float conversion utilities + * The term "scale" refers to the number of places after the decimal point. + * + * @author Cimulus + * @version 2004-05-05 +**/ + +public class FloatConversion { + + /** + * Determines if a string value is in a valid float format. + * @param s The string to be evaluated. + * @return Returns true if the string is a valid float, false if not. + * This method will not throw an exception. + **/ + public static boolean isFloat( String s ) { + try { + float f = Float.parseFloat( s ) ; + return true ; + } catch( Exception ex ) { + return false ; + } + } + + /** + * The FloatConversion class supports scales values between 0 and 6. + * This method takes an integer and returns a compliant value between 0 and 6. + * @param scale The scale that you want to validate. + * @return Returns 0 if the scale is less than 0, 6 if the scale is greater than 6, + * or returns the scale parameter passed if it is between 0 and 6. + * This method will not throw an exception. + **/ + public static int getValidScale( int scale ) { + scale = scale < 0 ? 0 : scale ; + scale = scale > 6 ? 6 : scale ; + return scale ; + } + + /** + * Converts a String to a float with the specified scale. + * @param s The string to be evaluated. + * @param scale The desired scale. + * @return Returns a float representation of the String with the specified scale. + * The method returns 0.0 if the string parameter is not a valid float. + * This method will not throw an exception. + **/ + public static float toFloat( String s , int scale ) { + BigDecimal de ; + + try { + de = toBigDecimal( s , scale ) ; + return de.floatValue() ; + + } catch( Exception ex ) { + return 0.0F ; + } + + } + + /** + * Rounds a float value with the specified scale. + * @param f The float to be evaluated. + * @param scale The desired scale. + * @return Returns a float representation of the float with the specified scale. + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static float toFloat( float f , int scale ) { + BigDecimal de = toBigDecimal( f , scale ) ; + return de.floatValue() ; + } + + + /** + * Converts a String to a BigDecimal with the specified scale. + * @param s The string to be evaluated. + * @param scale The desired scale. + * @return Returns a BigDecimal representation of the String with the specified scale. + * The method returns 0.0 if the string parameter is not a valid number. + * This method will not throw an exception. + **/ + public static BigDecimal toBigDecimal( String s , int scale ) { + BigDecimal de , de2 ; + + try { + scale = getValidScale( scale ) ; + de = new BigDecimal( s ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + return de2 ; + + } catch( Exception ex ) { + return new BigDecimal( 0.0F ) ; + } + } + + /** + * Converts a String to a BigDecimal with the specified scale. + * @param f The float to be evaluated. + * @param scale The desired scale. + * @return Returns a BigDecimal representation of the float with the specified scale. + * The method returns 0.0 if the string parameter is not a valid number. + * This method will not throw an exception. + **/ + public static BigDecimal toBigDecimal( float f , int scale ) { + String s = "" , stringFloat ; + BigDecimal de , de2 ; + long li ; + double mult = 0.0 , mult2 = 0.0 ; + float f2 ; + StringBuffer sb = new StringBuffer( 100 ) ; + int x , pos , posE , posEP , numDecimals = 0 ; + char lastChar , nextChar ; + + try { + scale = getValidScale( scale ) ; + stringFloat = Float.toString( f ) ; + + pos = stringFloat.indexOf( '.' ) ; + posE = stringFloat.indexOf( "E-" ) ; + posEP = stringFloat.indexOf( "E+" ) ; + + if ( pos > 0 && posE > 0 ) { + s = stringFloat.substring( posE + 2 ) ; + numDecimals = Integer.parseInt( s ) ; + + if ( f < 0.0F ) { + sb.append( "-" ) ; + } + sb.append( "0." ) ; + + for ( x = 1 ; x < numDecimals ; x++ ) { + sb.append( "0" ) ; + } + + sb.append( stringFloat.charAt( pos - 1 ) ) ; + sb.append( stringFloat.substring( pos + 1 , posE ) ) ; + stringFloat = sb.toString() ; + + de = new BigDecimal( sb.toString() ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + + return de2 ; + } + + + // No decimal point in the string + if ( pos == -1 ) { + de = new BigDecimal( stringFloat ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + return de2 ; + } + + numDecimals = stringFloat.length() - pos - 1 ; + if ( numDecimals <= scale ) { + de = new BigDecimal( stringFloat ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + return de2 ; + } + + sb.append( stringFloat.substring( 0 , pos + scale + 1 ) ) ; + + lastChar = stringFloat.charAt( pos + scale ) ; + nextChar = stringFloat.charAt( pos + scale + 1 ) ; + + if ( nextChar <= '4' ) { + de = new BigDecimal( sb.toString() ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + return de2 ; + } + + for ( x = pos + scale ; x >= 0 ; x-- ) { + lastChar = stringFloat.charAt( x ) ; + + if ( lastChar == '.' ) { + x-- ; + lastChar = stringFloat.charAt( x ) ; + } + + if ( lastChar == '-' ) { + sb.insert( 1 , '1' ) ; + break ; + } + + if ( lastChar != '9' ) { + sb.setCharAt( x , ( char ) ( lastChar + 1 ) ) ; + break ; + } + + if ( lastChar == '9' ) { + sb.setCharAt( x , '0' ) ; + } + + if ( x == 0 ) { + sb.insert( 0 , '1' ) ; + break ; + } + } + + de = new BigDecimal( sb.toString() ) ; + de2 = de.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + + return de2 ; + } catch( Exception exc ) { + Logger.log(LogMessageCategory.INFO, "\tFloatConversion.toBigDecimal " + f + " ; scale = " + scale + " ; s = " + s + "\nException:" + exc.getMessage() ) ; + return new BigDecimal( "0" ) ; + } + } + + /** + * Converts a float value to a String with the specified scale. + * @param f The float to be evaluated. + * @param scale The desired scale. + * @return Returns a String representation of the float with the specified scale. + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static String toString( float f , int scale ) { + BigDecimal de = toBigDecimal( f , scale ) ; + return de.toString() ; + } + + /** + * Converts an Object value to a String with the specified scale. + * @param ob The object to be evaluated. + * @param scale The desired scale. + * @return Returns a String representation of the float with the specified scale. + * If the object is a float, then it converts the value as a float. If the object is + * null, then a zero value is converted, with the specified scale. For any other object, + * the value is first converted to a String, and then the String will be converted to a + * float, if possible and formatted with the specified scale, or 0.0 will be formatted, if the + * String is not a valid numeric. + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static String toString( Object ob , int scale ) { + Float fl ; + float f ; + + try { + if ( ob instanceof Float ) { + fl = ( Float ) ob ; + return toString( fl.floatValue() , scale ) ; + } + + if ( ob == null ) { + return toString( 0.0F , scale ) ; + } + + f = Float.parseFloat( ob.toString() ) ; + return toString( f , scale ) ; + + } catch( Exception ex ) { + return toString( 0.0F , scale ) ; + } + + } + + + /** + * Converts a float value to a String with the specified scale, as a percentage. + * @param f The float to be evaluated. + * @param scale The desired scale. + * @return Returns a String representation of the float with the specified scale, as a + * percentage. For example, if "0.9245" is the float and the scale is 2, then the return + * value would be "92.45%". + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static String toStringAsPct( float f , int scale ) { + scale = getValidScale( scale ) ; + BigDecimal bd = toBigDecimal( f , scale + 2 ) , bd100 = new BigDecimal( "100" ) ; + BigDecimal bd2 = bd.multiply( bd100 ) ; + BigDecimal bd3 = bd2.setScale( scale , BigDecimal.ROUND_HALF_UP ) ; + + return bd3.toString() + "%" ; + } + + /** + * Converts an Object value to a String with the specified scale, as a percentage. + * @param ob The object to be evaluated. + * @param scale The desired scale. + * @return Returns a String representation of the float with the specified scale, as a + * percentage. For example, if "0.9245" is the float and the scale is 2, then the return + * value would be "92.45%".
    + * If the object is a float, then it converts the value as a float. If the object is + * null, then a zero value is converted, with the specified scale. For any other object, + * the value is first converted to a String, and then the String will be converted to a + * float, if possible and formatted with the specified scale, or 0.0 will be formatted, if the + * String is not a valid numeric. + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static String toStringAsPct( Object ob , int scale ) { + Float fl ; + float f ; + + try { + scale = getValidScale( scale ) ; + + if ( ob instanceof Float ) { + fl = ( Float ) ob ; + return toStringAsPct( fl.floatValue() , scale ) ; + } + + if ( ob == null ) { + return toString( 0.0F , scale ) + "%" ; + } + + f = Float.parseFloat( ob.toString() ) ; + return toStringAsPct( f , scale ) ; + + } catch( Exception ex ) { + return toString( 0.0F , scale ) + "%" ; + } + } + + /** + * Compares two floats and returns whether they are equal when rounded to the specified scale. + * @param f1 The first float to be evaluated. + * @param f2 The first float to be evaluated. + * @param scale The desired scale. + * @return Returns a boolean true if the floats are equal when rounded to the same scale, + * or false if they are not. + * The method rounds as needed. + * This method will not throw an exception. + **/ + public static boolean isEqual( float f1 , float f2 , int scale ) { + String s1 = toString( f1 , scale ) ; + String s2 = toString( f2 , scale ) ; + return s1.equals( s2 ) ; + } + +} // end of FloatConversion class + + diff --git a/gov/epa/otaq/moves/common/FloatConversionTest.java b/gov/epa/otaq/moves/common/FloatConversionTest.java new file mode 100644 index 0000000..95dad8a --- /dev/null +++ b/gov/epa/otaq/moves/common/FloatConversionTest.java @@ -0,0 +1,423 @@ +/************************************************************************************************** + * @(#)FloatConversionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import junit.framework.*; +import java.util.*; +import java.math.*; +import java.text.*; + +/** + * Test Case for the FloatConversion class + * + * @author Cimulus + * @version 2004-05-03 +**/ +public class FloatConversionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public FloatConversionTest(String name) { + super(name); + + System.out.println( "FloatConversionTest Constructor" ) ; + } + + /** + * Tests the FloatConversion routines + **/ + public void testFloatConversion() { + float f = 0.0F ; + String s = "" ; + String expected = "" , message ; + int scale , x ; + boolean debug = true ; + + + System.out.println( "Running Float Tests" ) ; + + scale = 6 ; + f = 63.4F ; + s = FloatConversion.toString( f , scale ) ; + expected = "63.400000" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 6.34F ; + s = FloatConversion.toString( f , scale ) ; + expected = "6.340000" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.634000" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.063400" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.006340" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.000634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000634" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000063" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + + f = 0.00000634F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000006" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000002F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000000" ; + if ( debug == true ) System.out.println( message ) ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00000049F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000000" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000005F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000001" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00000051F ; + s = FloatConversion.toString( f , scale ) ; + expected = "0.000001" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + scale = 2 ; + + f = 87.645F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.65" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 87.6499999F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.65" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + + f = 87.6449F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.64" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 87.64499F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.64" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + + f = 87.65000F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.65" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 87.4F ; + s = FloatConversion.toString( f , scale ) ; + expected = "87.40" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 63.4F; + expected = "63" ; + for ( x = -2 ; x <= 10 ; x++ ) { + scale = x ; + s = FloatConversion.toString( f , scale ) ; + if ( x <= 0 ) { + expected = "63" ; + } + if ( x == 1 ) { + expected = expected + ".4" ; + } + if ( x > 1 && x <= 6 ) { + expected = expected + "0" ; + } + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + } + } + + + /** + * Tests the FloatConversion Percentage routines + **/ + public void testFloatConversionPct() { + float f = 0.0F ; + String s = "" ; + String expected = "" , message ; + int scale , x ; + boolean debug = true ; + + + System.out.println( "Running Float Tests" ) ; + + scale = 4 ; + f = 63.4F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "6340.0000%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 6.34F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "634.0000%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "63.4000%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "6.3400%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.6340%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.000634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0634%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0063%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + + f = 0.00000634F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0006%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000002F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0000%" ; + if ( debug == true ) System.out.println( message ) ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00000049F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0000%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.0000005F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0001%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.00000051F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "0.0001%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + scale = 2 ; + + f = 0.8764999F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "87.65%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.876449F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "87.64%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.8764499F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "87.64%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + + f = 0.8765000F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "87.65%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.874F ; + s = FloatConversion.toStringAsPct( f , scale ) ; + expected = "87.40%" ; + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected ) ) ; + + f = 0.634F; + expected = "63" ; + for ( x = -2 ; x <= 10 ; x++ ) { + scale = x ; + s = FloatConversion.toStringAsPct( f , scale ) ; + if ( x <= 0 ) { + expected = "63" ; + } + if ( x == 1 ) { + expected = expected + ".4" ; + } + if ( x > 1 && x <= 6 ) { + expected = expected + "0" ; + } + message = "f=" + f + " scale=" + scale + " ; return=" + s + " ; expected=" + expected + "%" ; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , s.equals( expected + "%" ) ) ; + + } + } + + + /** + * Tests the FloatConversion Percentage routines + **/ + public void testFloatScale() { + int x , y , z ; + String message ; + + for ( x = -1 ; x <= 10 ; x++ ) { + y = FloatConversion.getValidScale( x ) ; + z = x < 0 ? 0 : x ; + z = z > 6 ? 6 : z ; + + message = "x = " + x + " Return: " + y + " Expected: " + z ; + assertTrue( "Failure on FloatScale: " + message , y == z ) ; + } + } + + /** + * Tests the FloatConversion String routines + **/ + public void testFloatConversionString() { + float f = 0.0F ; + String s = "" , floatString , converted ; + String expected = "" , message ; + int scale , x ; + boolean debug = true ; + + System.out.println( "Running Float String Tests" ) ; + + scale = 4 ; + + s = "63.400000" ; + f = FloatConversion.toFloat( s , scale ) ; + expected = "63.4" ; + floatString = f + "" ; + converted = FloatConversion.toString( f , scale ) ; + message = "s=" + s + " scale=" + scale + " ; return=" + f + " ; expected=" + expected + " ; converted=" + converted; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , floatString.equals( expected ) ) ; + + s = "63.12344" ; + f = FloatConversion.toFloat( s , scale ) ; + expected = "63.1234" ; + floatString = f + "" ; + converted = FloatConversion.toString( f , scale ) ; + message = "s=" + s + " scale=" + scale + " ; return=" + f + " ; expected=" + expected + " ; converted=" + converted; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , floatString.equals( expected ) ) ; + + + s = "63.12345" ; + f = FloatConversion.toFloat( s , scale ) ; + expected = "63.1235" ; + floatString = f + "" ; + converted = FloatConversion.toString( f , scale ) ; + message = "s=" + s + " scale=" + scale + " ; return=" + f + " ; expected=" + expected + " ; converted=" + converted; + if ( debug == true ) System.out.println( message ) ; + assertTrue( "Failure: " + message , floatString.equals( expected ) ) ; + + } + + +} // end of FloatConversionTest class + diff --git a/gov/epa/otaq/moves/common/ISQLFilter.java b/gov/epa/otaq/moves/common/ISQLFilter.java new file mode 100644 index 0000000..52e22d4 --- /dev/null +++ b/gov/epa/otaq/moves/common/ISQLFilter.java @@ -0,0 +1,36 @@ +/************************************************************************************************** + * @(#)ISQLFilter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; + +/** + * Interface for callback objects providing filtering functions during another object's + * walk of a ResultSet. + * + * @author wgfaler + * @version 2008-05-22 +**/ +public interface ISQLFilter { + /** + * Called after a query has been opened to determine if it should be used at all. + * @param metaData column names and types for the results + * @return true if the results should be iterated, calling canUseRow for each. + **/ + boolean onOpen(ResultSetMetaData metaData) throws Exception; + + /** + * Called before each row to determine its use. + * @param rs results positioned on the current row + * @return ture if the row should be used, false if it should be ignored + **/ + boolean canUseRow(ResultSet rs) throws Exception; + + /** + * Called after the query has been completed, either successfully, with an + * error, or because onOpen returned false. + **/ + void onClose(); +} diff --git a/gov/epa/otaq/moves/common/InstanceCounter.java b/gov/epa/otaq/moves/common/InstanceCounter.java new file mode 100644 index 0000000..1762e90 --- /dev/null +++ b/gov/epa/otaq/moves/common/InstanceCounter.java @@ -0,0 +1,132 @@ +/************************************************************************************************** + * @(#)InstanceCounter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.net.*; +import java.util.*; + + +/** + * Determine this program's instance information on its machine. This is used + * when multiple workers or masters on the same machine must access a central + * database server with unique, but repeatable, database names. + * + * Each instance gets its own TCP/IP socket starting with BASE_FLAG_PORT. A socket + * is used because, unlike a file, it is guaranteed to be removed by the operating + * system regardless of how the JVM exits. A master that launches a worker in + * the same JVM will use the same instance number for both the master and worker. + * + * @author Wesley Faler + * @version 2010-07-12 +**/ +public class InstanceCounter { + /** TCP/IP port used on the socket designating a running process **/ + private static final int BASE_FLAG_PORT = 13133; + /** Mutex for instance checking **/ + private static Integer mutex = new Integer(13133); + /** 1-based instance identifier. A value of 0 indicates it has not been set. **/ + private static int instanceID = 0; + /** TCP/IP socket used to indicate the instance's presence **/ + private static ServerSocket instanceSocket = null; + /** Depth counter for designating a running instance's presense **/ + private static int instanceSocketCount = 0; + /** Name of the machine, suitable for use as part of a database name **/ + private static String machineName = "NoComputerID"; + + /** Acquire an instance identifier if not already acquired **/ + public static void setup() { + synchronized(mutex) { + if(instanceID > 0) { + return; + } + if(instanceSocketCount == 0) { + for(int i=0;i<8192;i++) { + try { + instanceSocket = new ServerSocket(BASE_FLAG_PORT+i); + instanceID = 1 + i; + break; + } catch(Exception e) { + // Nothing to do here. This will happen as we probe for an + // available instance ID. + } finally { + if(instanceID <= 0 && instanceSocket != null) { + try { + instanceSocket.close(); + } catch(Exception e) { + // Nothing to do here + } + instanceSocket = null; + } + } + } + if(instanceID > 0) { + try { + machineName = InetAddress.getLocalHost().getHostName(); + } catch(UnknownHostException e) { + machineName = "NoComputerID"; + } + char[] c = machineName.toCharArray(); + machineName = ""; + for(int i=0;i 0) { + return instanceID; + } + setup(); + return instanceID; + } + } + + /** + * Obtain a unique but repeatable database name for this machine + * @param purpose prefix used to designate the purpose of the database, such + * as "MOVESExecution" or "MOVESWorker". + * @return a unique but repeatable database name for this machine + **/ + public static synchronized String getDB(String purpose) { + synchronized(mutex) { + getInstanceID(); + return purpose + instanceID + machineName; + } + } +} diff --git a/gov/epa/otaq/moves/common/JARUtilities.java b/gov/epa/otaq/moves/common/JARUtilities.java new file mode 100644 index 0000000..285734d --- /dev/null +++ b/gov/epa/otaq/moves/common/JARUtilities.java @@ -0,0 +1,200 @@ +/************************************************************************************************** + * @(#)JARUtilities.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.FileNotFoundException; +import java.io.InputStream; +import java.io.IOException; +import java.util.LinkedList; +import java.util.ListIterator; +import java.util.jar.JarEntry; +import java.util.jar.JarInputStream; +import java.util.jar.JarOutputStream; + +/** + * This static class provides convenient JAR related functionality through a small layer + * of code on top of the Java API. + * + * @author Wesley Faler + * @version 2010-10-11 +**/ +public class JARUtilities { + /** + * Internal function used to take several temporary files, JAR them into one single + * JAR file. Path information is not stored in the JAR file. + * @param targetJarPath The file path to store the target JAR file at + * @param sourceFilePaths An collection of File objects indicating which files to JAR. + * @throws FileNotFoundException From some java.io operations. + * @throws IOException From some java.io operations. + **/ + static public void jarFiles(File targetJarPath, LinkedList sourceFilePaths) + throws FileNotFoundException, IOException { + if(targetJarPath.exists()) { + FileUtilities.deleteFileWithRetry(targetJarPath); + } + for(int i=10;i>=0;i--) { + try { + jarFilesCore(targetJarPath,sourceFilePaths); + if(targetJarPath.exists()) { + break; + } + } catch(FileNotFoundException e) { + throw e; + } catch(IOException e) { + if(i == 0) { + throw e; + } else { + try { + Thread.sleep(15*1000); + } catch(Exception ex) { + // Nothing to do here + } + } + } + } + } + + /** + * Internal function used to take several temporary files, JAR them into one single + * JAR file. Path information is not stored in the JAR file. + * @param targetJarPath The file path to store the target JAR file at + * @param sourceFilePaths An collection of File objects indicating which files to JAR. + * @throws FileNotFoundException From some java.io operations. + * @throws IOException From some java.io operations. + **/ + static void jarFilesCore(File targetJarPath, LinkedList sourceFilePaths) + throws FileNotFoundException, IOException { + JarOutputStream jarStream = null; + boolean isInEntry = false; + BufferedInputStream inputStream = null; + byte[] xferBuffer = new byte[1024*128]; + try { + jarStream = new JarOutputStream(new FileOutputStream(targetJarPath.getCanonicalPath())); + + ListIterator sourceFilePathIterator = sourceFilePaths.listIterator(); + while (sourceFilePathIterator.hasNext()) { + File iterFilePath = (File)sourceFilePathIterator.next(); + + JarEntry jarEntry = new JarEntry(iterFilePath.getName()); + inputStream = new BufferedInputStream(new FileInputStream(iterFilePath)); + + jarStream.putNextEntry(jarEntry); + isInEntry = true; + + int iterByteCount; + while ((iterByteCount = inputStream.read(xferBuffer)) > 0) { + jarStream.write(xferBuffer, 0, iterByteCount); + } + + inputStream.close(); + inputStream = null; + + jarStream.closeEntry(); + isInEntry = false; + } + } finally { + if(jarStream != null) { + if(isInEntry) { + try { + jarStream.closeEntry(); + } catch(Exception e) { + // Nothing to do here + } + isInEntry = false; + } + jarStream.close(); + jarStream = null; + } + if(inputStream != null) { + try { + inputStream.close(); + } catch(Exception e) { + // Nothing to do here + } + inputStream = null; + } + } + } + + /** + * Unjars a JAR file to the designated target folder. Doesn't handle path information. + * @param targetFolderPath The folder path to un jar the files to. + * @param srcJarFilePath The jar file to open. + * @return A list of all the paths that were extracted. All elements are File objects. + * @throws FileNotFoundException From some java.io operations. + * @throws IOException From some java.io operations. + **/ + static public LinkedList unJarFileToFolder(File targetFolderPath, File srcJarFilePath) + throws FileNotFoundException, IOException { + LinkedList fileList = new LinkedList(); + + byte[] xferBuffer = new byte[1024*128]; + FileInputStream fileInputStream = null; + BufferedInputStream bufferedInputStream = null; + JarInputStream jarInputStream = null; + FileOutputStream targetFileStream = null; + try { + fileInputStream = FileUtilities.openFileInputStreamWithRetry(srcJarFilePath); + bufferedInputStream = new BufferedInputStream(fileInputStream); + jarInputStream = new JarInputStream(bufferedInputStream); + + JarEntry jarEntry; + + while((jarEntry = jarInputStream.getNextJarEntry()) != null) { + File targetFilePath = new File(targetFolderPath, jarEntry.getName()); + fileList.addLast(targetFilePath); + targetFileStream = new FileOutputStream(targetFilePath); + + int iterByteCount; + while ((iterByteCount = jarInputStream.read(xferBuffer)) > 0) { + targetFileStream.write(xferBuffer, 0, iterByteCount); + } + targetFileStream.close(); + targetFileStream = null; + } + } finally { + if(targetFileStream != null) { + try { + targetFileStream.close(); + } catch(Exception e) { + // Nothing to do here + } + targetFileStream = null; + } + if(jarInputStream != null) { + try { + jarInputStream.close(); + } catch(Exception e) { + // Nothing to do here + } + jarInputStream = null; + } + if(bufferedInputStream != null) { + try { + bufferedInputStream.close(); + } catch(Exception e) { + // Nothing to do here + } + bufferedInputStream = null; + } + if(fileInputStream != null) { + try { + fileInputStream.close(); + } catch(Exception e) { + // Nothing to do here + } + fileInputStream = null; + } + } + + return fileList; + } +} diff --git a/gov/epa/otaq/moves/common/JARUtilitiesTest.java b/gov/epa/otaq/moves/common/JARUtilitiesTest.java new file mode 100644 index 0000000..ed30571 --- /dev/null +++ b/gov/epa/otaq/moves/common/JARUtilitiesTest.java @@ -0,0 +1,73 @@ +/************************************************************************************************** + * @(#)JARUtilitiesTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; +import junit.framework.*; + +/** + * Test Case for the JARUtilities class + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class JARUtilitiesTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public JARUtilitiesTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + * @throws IOException From any of the file operations. + **/ + public void testCase() throws IOException { +// CIM: NOT DONE +/* // ensure the test input files don't exist + File testFile = null; + for(int i = 0; i < 4; i++) { + testFile = new File("./OutputDB.sql." + i); + testFile.delete(); + } + // create some test files + LinkedList sourceFilePaths = new LinkedList(); + File destFile = null; + for(int i = 0; i < 4; i++) { + testFile = new File("./OutputDB.sql"); + if(!testFile.exists()) { + FileUtilities.copyFile(new File("database/OutputDB.sql"), new File(".")); + } + destFile = new File("./OutputDB.sql." + i); + assertTrue("renameTo() returns false.", testFile.renameTo(destFile)); + sourceFilePaths.addLast(destFile); + } + // add to jar + File jarFile = new File("./junittest.jar"); + JARUtilities.jarFiles(jarFile, sourceFilePaths); + // verify that the jar file exists + assertTrue("jarFile doesn't exist.", jarFile.exists()); + // delete the input files + for(int i = 0; i < 4; i++) { + testFile = new File("./OutputDB.sql." + i); + testFile.delete(); + } + // unjar the files, verify outputs, cleanup files + File targetPath = new File("./testdata"); + JARUtilities.unJarFileToFolder(targetPath, jarFile); + for(int i = 0; i < 4; i++) { + testFile = new File("./testdata/OutputDB.sql." + i); + assertTrue(testFile.getPath() + " doesn't exist.", testFile.exists()); + testFile.delete(); + } + jarFile.delete(); +*/ + } +} diff --git a/gov/epa/otaq/moves/common/JListWithToolTips.java b/gov/epa/otaq/moves/common/JListWithToolTips.java new file mode 100644 index 0000000..1c05426 --- /dev/null +++ b/gov/epa/otaq/moves/common/JListWithToolTips.java @@ -0,0 +1,85 @@ +/************************************************************************************************** + * @(#)JListWithToolTips.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.util.Vector; + +/** + * Class like JList but that automatically provides ToolTip support. + * + * @author Wesley Faler + * @version 2011-09-10 +**/ +public class JListWithToolTips extends JList { + /** common point used for locations where no tooltip is needed **/ + static Point zeroPoint = new Point(0,0); + + /** Constructs a JList with an empty model. **/ + public JListWithToolTips() { + ToolTipManager.sharedInstance().registerComponent(this); + } + + /** + * Constructs a JList that displays the elements in the specified, non-null model. + * @param dataModel the data model for this list + **/ + public JListWithToolTips(ListModel dataModel) { + super(dataModel); + ToolTipManager.sharedInstance().registerComponent(this); + } + + /** + * Constructs a JList that displays the elements in the specified array. + * @param listData the array of Objects to be loaded into the data model + **/ + public JListWithToolTips(T[] listData) { + super(listData); + ToolTipManager.sharedInstance().registerComponent(this); + } + + /** + * Constructs a JList that displays the elements in the specified Vector. + * @param listData the Vector to be loaded into the data model + **/ + public JListWithToolTips(Vector listData) { + super(listData); + ToolTipManager.sharedInstance().registerComponent(this); + } + + /** + * Obtain the tooltip text for the data under the mouse. + * @param e mouse location + * @return tooltip text from toString() of Object under the mouse + **/ + public String getToolTipText(MouseEvent e) { + int row = locationToIndex(e.getPoint()); + if(row >= 0 && row < getModel().getSize()) { + T item = getModel().getElementAt(row); + if(item != null) { + return item.toString(); + } + } + return ""; + } + + /** + * Obtain the preferred location to display tooltip text + * @param e mouse location + * @return starting location on screen to display tooltip text + **/ + public Point getToolTipLocation(MouseEvent e) { + int row = locationToIndex(e.getPoint()); + if(row >= 0 && row < getModel().getSize()) { + return indexToLocation(row); + } else { + return zeroPoint; + } + } +} diff --git a/gov/epa/otaq/moves/common/LogHandler.java b/gov/epa/otaq/moves/common/LogHandler.java new file mode 100644 index 0000000..48a5c43 --- /dev/null +++ b/gov/epa/otaq/moves/common/LogHandler.java @@ -0,0 +1,28 @@ +/************************************************************************************************** + * @(#)LogHandler.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +/** + * Interface for a Log Handler. A Log Handler logs the messages generated by an application. There + * may be multiple Log Handlers for each application and each Log Handler may log messages in + * different ways. For example, the Log Handler for a GUI application may pop up a dialog box + * asking the user to confirm the message while the Log Handler for a command-line utility may + * simply write the message to System.out. Each message also has an assigned message category that + * may be used in determining how the message is logged. See the LogMessageCategory class for a + * description of the defined categories. Typical ways of logging messages include writing them to + * a file or System.out, displaying them individually in confirmation boxes or together in a + * "message log," or writing them to a database table. + * + * @author Cimulus + * @version 2003-08-27 +**/ +public interface LogHandler { + /** + * Logs the message to some medium based on the type. + * @param category The category of the log message. + * @param message The String to get logged. + **/ + public void handleLog(LogMessageCategory category, String message); +} diff --git a/gov/epa/otaq/moves/common/LogMessageCategory.java b/gov/epa/otaq/moves/common/LogMessageCategory.java new file mode 100644 index 0000000..e118158 --- /dev/null +++ b/gov/epa/otaq/moves/common/LogMessageCategory.java @@ -0,0 +1,120 @@ +/************************************************************************************************** + * @(#)LogMessageCategory.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.Iterator; +import java.util.LinkedList; + +/** + * This class, which acts like a "typesafe enum", is used to specify the category of a message + * being logged using the Logger and LogHandler classes. In general, the message category indicates + * the severity of the message and it may be used in determining how the message is handled. DEBUG + * and INFO messages, for example, may simply be logged to a file while WARNING and ERROR messages + * may require user acknowledgement. The RUN_ERROR category is a special category used only by the + * Logger class to demark WARNING and ERROR messages that occur during a simulation run. Its use + * circumvents the normal behavior of some Log Handlers to prompt the user for acknowledgement of + * messages in these categories. + * + * @author Wesley Faler + * @version 2009-04-04 +**/ +public class LogMessageCategory implements Comparable { + /** A list of all the possible message categories. **/ + static LinkedList allCategories = new LinkedList(); + + /** Value to indicate a message used during programming only. **/ + public static final LogMessageCategory DEBUG = + new LogMessageCategory("DEBUG", 0); + /** Value to indicate an informational message. **/ + public static final LogMessageCategory INFO = + new LogMessageCategory("INFO", 1); + /** + * Value to indicate that the program has done something unexpected, it probably can + * continue to run, but most likely will continue to have unexpected behavior. + **/ + public static final LogMessageCategory WARNING = + new LogMessageCategory("WARNING", 2); + /** Value to indicate an error, the program cannot continue to run. **/ + public static final LogMessageCategory ERROR = + new LogMessageCategory("ERROR", 3); + /** + * Value used only by the Logger class to indicate that a WARNING or ERROR message has occurred + * during a simulation run. This category supresses the normal prompting for user + * acknowledgement by some Log Handlers. + **/ + public static final LogMessageCategory RUN_ERROR = + new LogMessageCategory("RUN_ERROR", 4); + + /** The textual description of the type. **/ + String description; + + /** The numeric severity level for this type. Higher values indicate a higher severity. **/ + int severityLevel; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param description The textual description of the type. + * @param severityLevel The numeric severity level. Higher values indicate a higher severity. + **/ + private LogMessageCategory(String description, int severityLevel) { + this.description = description; + this.severityLevel = severityLevel; + + allCategories.add(this); + } + + /** + * Provides the textual description of the type. + * + * @return The textual description of the type. + **/ + public String toString() { + return description; + } + + /** + * Gets the numeric severity level for this type. Higher values indicate a higher severity. + * + * @return The numeric severity level. + **/ + public int getSeverityLevel() { + return severityLevel; + } + + /** + * Compares two LogMessageCategory objects by severity level. More severe > less severe. + * + * @param object Another LogMessageCategory object to compare against. + * @return A value > 0 if this is more severe than the other object. + * A value < 0 if this is less severe. Exactly 0 if the two objects + * are the same severity level. + **/ + public int compareTo(Object object) { + LogMessageCategory other = (LogMessageCategory) object; + return severityLevel - other.severityLevel; + } + + /** + * Gets a LogMessageCategory type by name. + * @param name The text name that matches a specific log message category + * @return The LogMessageCategory object. This will be null if the given name couldn't + * be matched. + **/ + public static LogMessageCategory getCategoryByName(String name) { + for(Iterator i = allCategories.iterator(); i.hasNext(); ) { + LogMessageCategory category = (LogMessageCategory)i.next(); + + if(category.description.compareToIgnoreCase(name) == 0) { + return category; + } + } + + return null; + } +} diff --git a/gov/epa/otaq/moves/common/Logger.java b/gov/epa/otaq/moves/common/Logger.java new file mode 100644 index 0000000..166c018 --- /dev/null +++ b/gov/epa/otaq/moves/common/Logger.java @@ -0,0 +1,148 @@ +/************************************************************************************************** + * @(#)Logger.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; +import java.text.SimpleDateFormat; + +/** + * Centralized facility for logging application messages. Applications call the static methods of + * this class to log messages and register objects that can handle logged messages. An application + * can register multiple objects to handle logged messages. Each object must implement the + * LogHandler interface. Messages are logged to System.out in addition to the LogHandlers. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2010-09-29 + * @version 2009-08-14 +**/ +public class Logger { + /** True if logging to a file is allowed **/ + public static boolean shouldLogToFile = true; + /** Writer for the log file, unbuffered **/ + private static PrintWriter logWriter = null; + + /** + * Promote WARNING and ERROR message categories to RUN_ERRORs before passing them to the log + * handler objects. This is done to indicate that a simulation run is being performed and log + * handlers should not prompt the user to confirm logged messages. + **/ + public static boolean shouldPromoteErrorLevel = false; + + /** list of objects that implement LogHandler **/ + static LinkedList logHandlerList = new LinkedList(); + + /** + * Adds the specified object as a "known" LogHandler, by adding it to the + * LogHandler list. When anything calls the static method Log, then the actual + * work is performed by all of the signed-up handlers. + * @param handler the object that implements LogHandler. + **/ + public static void addLogHandler(LogHandler handler) { + synchronized (logHandlerList) { + if (!logHandlerList.contains(handler)) { + logHandlerList.add(handler); + } + } + } + + /** + * Removes the specified object as a "known" LogHandler, by removing it from the + * LogHandler list. + * @param handler the object that implements LogHandler. + **/ + public static void removeLogHandler(LogHandler handler) { + synchronized (logHandlerList) { + logHandlerList.remove(handler); + } + } + + /** + * Calls the list of LogHandler objects, otherwise just outputs the message to standard out. + * @param category type of the message. The values come from static final objects of + * the LogMessageCategory class. + * @param message the String to get logged. + **/ + public static void log(LogMessageCategory category, String message) { + if(shouldPromoteErrorLevel && (category == LogMessageCategory.WARNING + || category == LogMessageCategory.ERROR)) { + category = LogMessageCategory.RUN_ERROR; + } + + String timeStamp = (new SimpleDateFormat()).format(new java.util.Date()); + String logText = timeStamp + " " + category.toString() + ": " + message; + + synchronized(logHandlerList) { + Iterator i = logHandlerList.iterator(); + // display message on standard output + System.out.println(logText); + System.out.flush(); + + if(shouldLogToFile) { + try { + if(logWriter == null) { + // Open "moveslog.txt" for appending with a 1024 byte buffer that is flushed often. + logWriter = new PrintWriter(new BufferedWriter(new FileWriter(new File("moveslog.txt"),true),1024),true); + } + logWriter.println(logText); + logWriter.flush(); + } catch(Exception e) { + // Nothing to do here + } catch(Error e) { + // Nothing to do here + } catch(Throwable e) { + // Nothing to do here + } + } + + // dispatch message to any registered LogHandlers + for(;i.hasNext();) { + LogHandler handler = (LogHandler)i.next(); + handler.handleLog(category, message); + } + } + } + + /** + * Writes an exception's stack trace and error message to the logging mechanism. + * @param category The log message category to log at. + * @param e Exception object to get the info from. + **/ + public static void logException(LogMessageCategory category, Exception e) { + final String eol = System.getProperty("line.separator"); + + ByteArrayOutputStream exceptionTraceBuffer = new ByteArrayOutputStream(); + e.printStackTrace(new PrintStream(exceptionTraceBuffer)); + + String message = exceptionTraceBuffer.toString() + eol + e.getMessage(); + + log(category, message); + } + + /** + * Logs an exception with an associated error message. + * @param exception The exception object that was thrown. + * @param errorMessage The message describing where the error occurred. + **/ + public static void logError(Exception exception, String errorMessage) { + logException(LogMessageCategory.DEBUG, exception); + log(LogMessageCategory.ERROR, errorMessage); + } + + /** + * Logs an SQL exception along with an error message and SQL string. + * @param exception The exception object that was thrown. + * @param errorMessage The message describing where the error occurred. + * @param sql The SQL associated with the exception. + **/ + public static void logSqlError(Exception exception, String errorMessage, String sql) { + final String eol = System.getProperty("line.separator"); + String sqlErrorMessage = errorMessage + eol + "SQL: " + sql; + logError(exception, sqlErrorMessage); + } +} diff --git a/gov/epa/otaq/moves/common/MOVESDatabaseType.java b/gov/epa/otaq/moves/common/MOVESDatabaseType.java new file mode 100644 index 0000000..fbedbb1 --- /dev/null +++ b/gov/epa/otaq/moves/common/MOVESDatabaseType.java @@ -0,0 +1,92 @@ +/************************************************************************************************** + * @(#)MOVESDatabaseType.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +/** + * This class, which acts like a "typesafe enum", defines the three database types that are + * frequently accessed by MOVES objects. These types are the Default, Execution, and Output + * Databases. The Default Database contains configuration and the initial input data for MOVES. + * It is used primarily by GUI objects and as the main source of input data to a simulation run. + * The Execution Database is a temporary, execution-time, database initially created from a + * selected subset of data in the Default and user-specified Input databases. This database is + * primarily used by the MOVES Generators and Calculators. The Output Database contains MOVES + * data in the final, "published," MOVES Output Table format. This database is populated by + * OutputProcessor and processed by the IntegratedPostProcessors. + * + * @author Wesley Faler + * @version 2012-11-07 +**/ +public class MOVESDatabaseType { + /** The number of types, should be one more than the max index used by the static objects. **/ + public static int NUM_TYPES = 3; + + /** An array of all the existing type objects. **/ + private static MOVESDatabaseType[] allTypes = new MOVESDatabaseType[NUM_TYPES]; + + /** Enumerated type (as static instance) for a DEFAULT MOVES database. **/ + public static final MOVESDatabaseType DEFAULT = new MOVESDatabaseType(0, "Default"); + /** Enumerated type (as static instance) for a EXECUTION MOVES database. **/ + public static final MOVESDatabaseType EXECUTION = new MOVESDatabaseType(1, "Execution"); + /** Enumerated type (as static instance) for a OUTPUT MOVES database. **/ + public static final MOVESDatabaseType OUTPUT = new MOVESDatabaseType(2, "Output"); + + // /** Enumerated type (as static instance) for a NONROAD DEFAULT MOVES database. **/ + //public static final MOVESDatabaseType NRDEFAULT = new MOVESDatabaseType(3, "NRDefault"); + + /** A unique index that is less than NUM_TYPES. This can be used as an array index. **/ + private int index; + /** A description of this type **/ + private String description; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param index A unique index that is less than NUM_TYPES. This can be used as an array index. + * @param description A description of this type + **/ + private MOVESDatabaseType(int index, String description) { + this.index = index; + this.description = description; + if(!CompilationFlags.USE_NONROAD) { + NUM_TYPES = 3; + } + if(CompilationFlags.USE_NONROAD || index < 3) { + allTypes[index] = this; + } + } + + /** + * Provides an array index. Unique and less than NUM_TYPES. + * + * @return The unique array index. + **/ + public int getIndex() { + return index; + } + + /** + * Provides an description of this type. + * + * @return A description of this type. + **/ + public String toString() { + return description; + } + + /** + * Gets the object type from a numeric index. + * @param index The numeric index + * @return The typesafe MOVESDatabaseType. + **/ + static public MOVESDatabaseType getByIndex(int index) { + if(CompilationFlags.USE_NONROAD || index != 3) { + return allTypes[index]; + } + return null; + } +} diff --git a/gov/epa/otaq/moves/common/MOVESThread.java b/gov/epa/otaq/moves/common/MOVESThread.java new file mode 100644 index 0000000..dbc14e2 --- /dev/null +++ b/gov/epa/otaq/moves/common/MOVESThread.java @@ -0,0 +1,289 @@ +/************************************************************************************************** + * @(#)MOVESThread.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.Iterator; +import java.util.LinkedList; + +/** + * Implements the basic functionality needed to manage the threads instantiated by a MOVES Master + * or Worker. A static member variable is used to keep track of all the threads started by an + * application. + * + * @author Wesley Faler + * @version 2009-04-04 +**/ +public abstract class MOVESThread extends Thread { + /** Contains all currently running MOVESThread instances. **/ + static LinkedList activeThreads = new LinkedList(); + + /** This flag signals this thread to exit. This directly affects only one thread. **/ + volatile boolean signaledToExit = false; + /** While this count is greater than 0, this thread should pause operations **/ + volatile int suspendCount = 0; + + /** + * Used exclusively for allowing a parent thread to track exceptions that occur in child + * threads. + **/ + MOVESThread parent = null; + + /** + * Count of the number of exceptions caught in the MOVESThread class. This is inteneded for + * JUnit test case assertion purposes. Under release execution this will be ignored. + * This includes exceptions from child threads that have were passed this as a parent + * parameter in the constructor. + **/ + int exceptionCount = 0; + + /** + * This returns if the thread is signaled to exit. + * This is safer than reading the instance variable directly since this value is modified + * across threads and current Java implementations don't reliably support the volatile + * modifier. + * @return Is this thread signaled to exit? + **/ + public synchronized boolean isSignaledToExit() { + return signaledToExit; + } + + /** + * This returns the thread's suspend count. + * This is safer than reading the instance variable directly since this value is modified + * across threads and current Java implementations don't reliably support the volatile + * modifier. + * @return The thread's suspend count. + **/ + synchronized int getSuspendCount() { + return suspendCount; + } + + /** + * Gets the number of exceptions caught in this class. This count doesn't include exceptions + * caught in parent or child classes. This is intended for JUnit purposes only. + * @return The exception count. + **/ + public int getExceptionCount() { + return exceptionCount; + } + + /** + * Signals all instances of MOVESThread to terminate and then returns immediately without + * any wait. + **/ + public static void signalAllToTerminate() { + LinkedList tempThreads = new LinkedList(); + synchronized (activeThreads) { + tempThreads.addAll(activeThreads); + } + + Iterator threadIterator = tempThreads.iterator(); + + while (threadIterator.hasNext()) { + MOVESThread iterThread = (MOVESThread)threadIterator.next(); + iterThread.signalToTerminate(); + } + } + + /** + * Invokes signalAllToTerminate and waits until all threads have actually exited. + * @throws InterruptedException This will be thrown if the running thread is interrupted + * while waiting. + **/ + public static void signalAllToTerminateAndWait() throws InterruptedException { + signalAllToTerminate(); + + synchronized (activeThreads) { + while (activeThreads.size() > 0) { + activeThreads.wait(); + } + } + } + + /** + * Basic constructor. + **/ + public MOVESThread() { + + } + + /** + * Basic constructor. + * @param name The name of the thread. + **/ + public MOVESThread(String name) { + super(name); + } + + /** + * Basic constructor. + * @param parent The parent thread. Used for exception count tracking purposes. + * @param name The name of the thread. + **/ + public MOVESThread(MOVESThread parent, String name) { + super(name); + + this.parent = parent; + } + + /** Signals this thread to terminate and then returns immediately without waiting. **/ + public synchronized void signalToTerminate() { + signaledToExit = true; + + notifyAll(); + interrupt(); + } + + /** + * Signals this thread to terminate and then waits for the termination to complete. + * @throws InterruptedException This will be thrown if the running thread is interrupted + * while waiting. + **/ + public void signalToTerminateAndWait() throws InterruptedException { + signalToTerminate(); + + join(); + } + + /** + * Increments the suspend count so that this thread will be signaled to pause operations. + * The pause will occur at the thread's convenience; typically when no locks are held. + **/ + public synchronized void signalToSuspend() { + suspendCount++; + notifyAll(); + } + + /** + * Decrements the suspend count. When equal to zero, the thread will continue execution + * from a signalToSuspend() operation. It is illegal to call this when already zero. + **/ + public synchronized void signalToResume() { + // JDK 1.4 + // assert suspendCount > 0; + if (suspendCount < 1) { + /** @nonissue **/ + throw new IllegalStateException("Thread is already resumed"); + } + + suspendCount--; + notifyAll(); + } + + /** + * The thread function. This is a very simple method that polls for termination conditions and + * calls threadIterationGo and threadIterationWait. + **/ + public final void run() { + Logger.log(LogMessageCategory.INFO,"Thread starting for "+getClass()+"."); + System.out.flush(); + synchronized (activeThreads) { + activeThreads.add(this); + activeThreads.notifyAll(); + } + + try { + if (startupInThread()) { + while (!isSignaledToExit()) { + try { + if (!threadIterationGo()) { + break; + } + + threadIterationWait(); + } catch (InterruptedException exception) { + + } + + try { + waitForPause(); + } catch (InterruptedException exception) { + + } + } + } + } catch (Exception e) { + incrementExceptionCount(); + /** + * @issue Thread startup failed for [className]. + * @explain MOVES is unable to begin an internal thread. + **/ + Logger.logError(e,"Thread startup failed for "+getClass()+"."); + } + + try { + /** + * @issue Thread shutdown starting for [className]. + * @explain MOVES is beginning a clean shutdown of an internal thread. + **/ + Logger.log(LogMessageCategory.INFO,"Thread shutdown starting for "+getClass()+"."); + System.out.flush(); + shutdownInThread(); + } catch (Exception e) { + incrementExceptionCount(); + /** + * @issue Thread shutdown failed for [className]. + * @explain MOVES was unable to cleanly stop an internal thread. + **/ + Logger.logError(e,"Thread shutdown failed for "+getClass()+"."); + } + + synchronized (activeThreads) { + activeThreads.remove(this); + activeThreads.notifyAll(); + } + Logger.log(LogMessageCategory.INFO,"Thread shutdown complete for "+getClass()+"."); + System.out.flush(); + } + + /** + * Waits for the thread to be resumed if it is currently paused. If not paused, this + * will simply return immediately. + * @throws InterruptedException This is thrown if the thread is interrupted. + **/ + public final synchronized void waitForPause() throws InterruptedException { + while (!isSignaledToExit() && (suspendCount > 0)) { + wait(); + } + } + + /** + * Increments the exception count for this thread and any ancestors. + **/ + void incrementExceptionCount() { + exceptionCount++; + + if(parent != null) { + parent.incrementExceptionCount(); + } + } + + /** + * This performs one-time startup activities prior to threaded operation. + * @return Should the thread continue to run + **/ + abstract protected boolean startupInThread(); + + /** This performs one-time shutdown activities after threaded operation. **/ + abstract protected void shutdownInThread(); + + /** + * This performs one iteration of thread functionality. Upon return, the MOVESThread + * will automatically check for termination conditions + * @return Should the thread continue to run + * @throws InterruptedException This is typically thrown when a sleep() or wait() call + * is interrupted. + **/ + abstract protected boolean threadIterationGo() throws InterruptedException; + + /** + * Called directly after threadIterationGo. Subclasses typically implement a simple sleep + * operation here. + * @throws InterruptedException This is typically thrown when a sleep() call is interrupted. + **/ + abstract protected void threadIterationWait() throws InterruptedException; +} diff --git a/gov/epa/otaq/moves/common/MOVESThreadTest.java b/gov/epa/otaq/moves/common/MOVESThreadTest.java new file mode 100644 index 0000000..a93d192 --- /dev/null +++ b/gov/epa/otaq/moves/common/MOVESThreadTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)MOVESThreadTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the MOVESThread class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class MOVESThreadTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MOVESThreadTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/common/Model.java b/gov/epa/otaq/moves/common/Model.java new file mode 100644 index 0000000..7fa22ba --- /dev/null +++ b/gov/epa/otaq/moves/common/Model.java @@ -0,0 +1,96 @@ +package gov.epa.otaq.moves.common; + +/** + * This class, which acts like a "typesafe enum", describes the model at which a + * simulation can be run at. + * + * A model has a name and an id. The nth model's id 2**(n-1). This is to ensure + * that only the id's nth bit (from right) is one, while others are all zeros. + * By taking bitwise OR for all the chosen models's ids, we can easily to determine + * what models are included, thus make the detection easier. + * + * With the new feature ENUM from Java 1.5, this is not necessary anymore. But still + * keep this style to match other old code. And this can show for example, the use of + * private constructors. + * + * @author Jizhen (Jason) Zhao at IE, UNC-CH + * @version $Revision$ $Date$ + * @since 2011-11-29 +**/ + +public class Model { + + /** Array of model IDs **/ + private static final int [] MODEL_IDS = { + 1, + 1<<1, + 1<<2 + }; + + /** Array of model names **/ + private static final String [] MODEL_NAMES = { + "ONROAD", + "NONROAD", + "Model3" + }; + + /** The list of all Model instances **/ + static TreeMapIgnoreCase allInstances = new TreeMapIgnoreCase(); + + /** Enumerated type (as static instance) for a model value. **/ + public static final Model ONROAD = new Model(MODEL_NAMES[0], MODEL_IDS[0]); + + /** Enumerated type (as static instance) for a model value. **/ + public static final Model NONROAD = new Model(MODEL_NAMES[1], MODEL_IDS[1]); + + /** Enumerated type (as static instance) for a model value. **/ + public static final Model MODEL3 = new Model(MODEL_NAMES[2], MODEL_IDS[2]); + + /** The textual description of the type. **/ + private String name; + + /** The integer id of the type **/ + private int id; + + /** + * Constructor, but private, and as such this class can not be instantiated except + * by the static types defined above. + * + * @param name - Textual description of the type. + **/ + private Model(String description, int id) { + this.name = description; + this.id = id; + allInstances.put(description,this); + } + + /** + * Provides the textual description of the type. + * + * @return name - The textual description of the type. + **/ + public String toString() { + return name; + } + + /** + * Gets the constant type based on a text name. + * + * @param name The textual description of the type + * @return The constant type. This will be null if the given name wasn't found. + **/ + public static Model getByName(String name) { + return (Model)allInstances.get(name); + } + + /** + * Gets the id of this type. + * + * @return id - int. + **/ + public int getId() { + return id; + } + +} + diff --git a/gov/epa/otaq/moves/common/ModelDomain.java b/gov/epa/otaq/moves/common/ModelDomain.java new file mode 100644 index 0000000..27d2e44 --- /dev/null +++ b/gov/epa/otaq/moves/common/ModelDomain.java @@ -0,0 +1,68 @@ +/************************************************************************************************** + * @(#)ModelDomain.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.Iterator; +import java.util.LinkedList; + +/** + * This class, which acts like a "typesafe enum", describes the geographic scale at which a + * simulation can be run at. For macro-scale, the simulation produces inventory results. + * Mesoscale lookup provides emission rates instead of inventory results. + * + * Typesafe enumeration for model domain. The national allocation domain requires that each + * county be a fraction of some larger national number with allocation factors used to + * apportion activity. Single county domain implies a singel county is being run with allocation + * factors of unity. Project implies a detailed link-level vehicle model. + * + * @author wfaler + * @version 2008-11-08 +**/ +public class ModelDomain { + /** The list of all ModelDomain instances **/ + static TreeMapIgnoreCase allInstances = new TreeMapIgnoreCase(); + + /** Enumerated type (as static instance) for a model domain value. **/ + public static final ModelDomain NATIONAL_ALLOCATION = new ModelDomain("NATIONAL"); + /** Enumerated type (as static instance) for a model domain value. **/ + public static final ModelDomain SINGLE_COUNTY = new ModelDomain("SINGLE"); + /** Enumerated type (as static instance) for a model domain value. **/ + public static final ModelDomain PROJECT = new ModelDomain("PROJECT"); + + /** The textual description of the type. **/ + private String description; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param descriptionToUse Textual description of the type. + **/ + private ModelDomain(String descriptionToUse) { + description = descriptionToUse; + allInstances.put(description,this); + } + + /** + * Provides the textual description of the type. + * + * @return The textual description of the type. + **/ + public String toString() { + return description; + } + + /** + * Gets the constant type based on a text name. + * + * @param name The name of the type + * @return The constant type. This will be null if the given name wasn't found. + **/ + public static ModelDomain getByName(String name) { + return (ModelDomain)allInstances.get(name); + } +} diff --git a/gov/epa/otaq/moves/common/ModelScale.java b/gov/epa/otaq/moves/common/ModelScale.java new file mode 100644 index 0000000..6909662 --- /dev/null +++ b/gov/epa/otaq/moves/common/ModelScale.java @@ -0,0 +1,90 @@ +/************************************************************************************************** + * @(#)ModelScale.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.Iterator; +import java.util.LinkedList; + +/** + * This class, which acts like a "typesafe enum", describes the geographic scale at which a + * simulation can be run at. For macro-scale, the simulation produces inventory results. + * Mesoscale lookup provides emission rates instead of inventory results. + * + * @author Wesley Faler + * @version 2009-12-02 +**/ +public class ModelScale { + /** The list of all ModelScale instances **/ + static LinkedList allInstances = new LinkedList(); + + /** Enumerated type (as static instance) for a model scale value. **/ + public static final ModelScale MACROSCALE = new ModelScale("Inv", 60 * 60); + + // Enumerated type (as static instance) for a model scale value. + //public static final ModelScale MESOSCALE = new ModelScale("MESO", 60 * 60); + + /** Enumerated type (as static instance) for a model scale value. **/ + public static final ModelScale MESOSCALE_LOOKUP = new ModelScale("Rates", 60 * 60); + + // Enumerated type (as static instance) for a model scale value. + //public static final ModelScale MICROSCALE = new ModelScale("MICRO", 15 * 60); + + /** The textual description of the type. **/ + private String description; + + /** The size of the block of time that the model is run at in seconds. **/ + private int timeIncrementSeconds; + + /** + * Constructor, but private, and as such this class can not be instatiated except + * by the static types defined above. + * + * @param description Textual description of the type. + * @param timeIncrementSeconds The size of the block of time that the model is run at in + * seconds. + **/ + private ModelScale(String description, int timeIncrementSeconds) { + this.description = description; + this.timeIncrementSeconds = timeIncrementSeconds; + allInstances.add(this); + } + + /** + * Provides the textual description of the type. + * + * @return The textual description of the type. + **/ + public String toString() { + return description; + } + + /** + * Provides the size of the block of time that the model is run at in seconds. + * + * @return The size of the block of time that the model is run at in seconds. + **/ + public int getTimeIncrementSeconds() { + return timeIncrementSeconds; + } + + /** + * Gets the constant type based on a text name. + * + * @param name The name of the type + * @return The constant type. This will be null if the given name wasn't found. + **/ + public static ModelScale getByName(String name) { + for(Iterator instanceIter = allInstances.iterator(); instanceIter.hasNext();) { + ModelScale iterScale = (ModelScale)instanceIter.next(); + if (iterScale.description.compareToIgnoreCase(name) == 0) { + return iterScale; + } + } + + return null; + } +} diff --git a/gov/epa/otaq/moves/common/ModelScaleTest.java b/gov/epa/otaq/moves/common/ModelScaleTest.java new file mode 100644 index 0000000..e011874 --- /dev/null +++ b/gov/epa/otaq/moves/common/ModelScaleTest.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)ModelScaleTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the ModelScale class + * + * @author wfaler + * @version 2008-11-08 +**/ +public class ModelScaleTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public ModelScaleTest(String name) { + super(name); + } + + /** Implements the test case(s). **/ + public void testCase() { + ModelScale testModelScale; + // Verify against the static instances + testModelScale = ModelScale.getByName(ModelScale.MACROSCALE.toString()); + assertEquals(testModelScale.toString().compareToIgnoreCase( + ModelScale.MACROSCALE.toString()), 0); + testModelScale = ModelScale.getByName(ModelScale.MESOSCALE_LOOKUP.toString()); + assertEquals(testModelScale.toString().compareToIgnoreCase( + ModelScale.MESOSCALE_LOOKUP.toString()), 0); + // Verify invalid + assertNull(ModelScale.getByName(" ")); + } +} diff --git a/gov/epa/otaq/moves/common/Models.java b/gov/epa/otaq/moves/common/Models.java new file mode 100644 index 0000000..233c058 --- /dev/null +++ b/gov/epa/otaq/moves/common/Models.java @@ -0,0 +1,217 @@ +package gov.epa.otaq.moves.common; + +import java.util.ArrayList; +import java.util.List; + +/** + * This class, is a container for Model object. It also provides a ENUM for model + * combinations and a static method to evaluate the model combinations, since we + * need to check what is the combination of the chosen models, in addition to the + * individual models, when multiple models allowed to be chosen. + * + * @author Jizhen (Jason) Zhao at IE, UNC-CH + * @version $Revision$ $Date$ + * @since 2013-06-12 +**/ +public class Models { + /** Enumerate model combinations. M0 means no model, M1 means only model 1, M123 means models 1, 2 and 3 exist. **/ + public enum ModelCombination { + M0, M1, M2, M12, M3, M13, M23, M123; + public static ModelCombination get(int i) { + return values()[i]; + } + }; + + /** The list to hold the Model objects. */ + private List modelList; + + /** + * Default constructor. Create a new Model list. + **/ + public Models() { + modelList = new ArrayList(); + } + + /** + * Constructor for a default model. + * @param model default model to be used. + **/ + public Models(Model model) { + modelList = new ArrayList(); + modelList.add(model); + } + + /** + * Copy constructor. + * @param models of type Models + **/ + public Models( Models models) { + this.modelList = models.getModelList(); + } + + /** + * Utility method to evaluate what Model combination in the models of type Models. + * @param models of type Models + **/ + public static final ModelCombination evaluateModels( Models models) { + if (models == null) { + return ModelCombination.M0; + } + int result = 0; + for ( Model model : models.getModelList()) { + result |= model.getId(); + } + return ModelCombination.get(result); + } + + /** + * Check the list of models for a specific model. + * @param model model to be searched + * @return true if model is within the model list + **/ + public boolean contains(Model model) { + for(Model m : modelList) { + if(m.getId() == model.getId()) { + return true; + } + } + return false; + } + + /** + * Check for any overlap between the list of models + * and those in a ModelCombination. + * @param mc flags indicating a combination of models + * @return true if any model in the input is present + * in the list of models. + **/ + public boolean containsAny(ModelCombination mc) { + int existingBits = 0; + for(Model m : modelList) { + existingBits |= m.getId(); + } + return (existingBits & mc.ordinal()) > 0; + } + + /** + * Getter for field modelList. + * @return modelList of List. + */ + public List getModelList() { + return modelList; + } + + /** + * Getter for field modelList. + * @return modelList of List. + */ + public void clear() { + modelList.clear(); + } + + /** + * Setter for field modelList. + * @param modelList of List + */ + public void setModelList(List modelList) { + this.modelList = modelList; + } + + /** + * A convenient method - Get the model at position index. + * @param index of int + * @return Model + */ + public Model get(int index) { + return modelList.get(index); + } + + /** + * A convenient method - add a model to the container. + * @param model of type Model + */ + public void add(Model model) { + if (model==null) { + return; + } + if(!modelList.contains(model)) { + modelList.add(model); + } + } + + /** + * Print model combination in a Models object. + */ + private static void printCombination(final Models models) { + ModelCombination com = Models.evaluateModels(models); + switch (com) { + case M0: + System.out.println("Model 1 2 3"); + System.out.println("Exist 0 0 0"); + break; + case M1: + System.out.println("Model 1 2 3"); + System.out.println("Exist x 0 0"); + break; + case M2: + System.out.println("Model 1 2 3"); + System.out.println("Exist 0 x 0"); + break; + case M3: + System.out.println("Model 1 2 3"); + System.out.println("Exist 0 0 x"); + break; + case M12: + System.out.println("Model 1 2 3"); + System.out.println("Exist x x 0"); + break; + case M13: + System.out.println("Model 1 2 3"); + System.out.println("Exist x 0 x"); + break; + case M23: + System.out.println("Model 1 2 3"); + System.out.println("Exist 0 x x"); + break; + case M123: + System.out.println("Model 1 2 3"); + System.out.println("Exist x x x"); + } + System.out.println(); + } + /** + * Main - simple test method + * + */ + public static void main( String [] args) { + Models models = new Models(); + Models.printCombination(models); + models.add(Model.getByName("ONROAD")); + Models.printCombination(models); + models.add(Model.getByName("NONROAD")); + Models.printCombination(models); + models.add(Model.getByName("MODEL3")); + Models.printCombination(models); + + models = new Models(); + models.add(Model.getByName("ONROAD")); + models.add(Model.getByName("MODEL3")); + Models.printCombination(models); + + models = new Models(); + models.add(Model.getByName("NONROAD")); + models.add(Model.getByName("MODEL3")); + Models.printCombination(models); + + models = new Models(); + models.add(Model.getByName("MODEL3")); + Models.printCombination(models); + + models = new Models(models); + Models.printCombination(models); + + models = new Models(); + models.add(Model.getByName("MODEL_NOT_Exist")); + Models.printCombination(models); + } +} diff --git a/gov/epa/otaq/moves/common/OffRoadSCCListProducer.java b/gov/epa/otaq/moves/common/OffRoadSCCListProducer.java new file mode 100644 index 0000000..9528fde --- /dev/null +++ b/gov/epa/otaq/moves/common/OffRoadSCCListProducer.java @@ -0,0 +1,30 @@ +/************************************************************************************************** + * @(#)OffRoadSCCListProducer.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.TreeSet; +import gov.epa.otaq.moves.common.OffRoadVehicleSelection; + +/** + * This utility class takes an OffRoadVehicleSelection object, obtains the relevant SCC codes, + * and adds them to a specified set. + * + * @author Cimulus + * @version 2003-01-24 +**/ +public class OffRoadSCCListProducer { + /** + * Given an OffRoadVehicleSelection, this obtains the relevant SCC codes and adds them + * to the target collection. The target collection is currently a set which avoids any + * duplicates. + * @param targetSCCs SCC objects. + * @param offRoadVehicleSelection OffRoadVehicleSelection. + **/ + public static void appendSCCCodes(TreeSet targetSCCs, + OffRoadVehicleSelection offRoadVehicleSelection) { + } +} diff --git a/gov/epa/otaq/moves/common/OffRoadSCCListProducerTest.java b/gov/epa/otaq/moves/common/OffRoadSCCListProducerTest.java new file mode 100644 index 0000000..4127d99 --- /dev/null +++ b/gov/epa/otaq/moves/common/OffRoadSCCListProducerTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)OffRoadSCCListProducerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the OffRoadSCCListProducer class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class OffRoadSCCListProducerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public OffRoadSCCListProducerTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/common/OffRoadVehicleSelection.java b/gov/epa/otaq/moves/common/OffRoadVehicleSelection.java new file mode 100644 index 0000000..cfaec61 --- /dev/null +++ b/gov/epa/otaq/moves/common/OffRoadVehicleSelection.java @@ -0,0 +1,80 @@ +/************************************************************************************************** + * @(#)OffRoadVehicleSelection.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +/** + * This class contains a single user selected fuel ID/sector ID combination that describes + * a set of off road SCCs. + * + * @author Wesley Faler + * @version 2011-09-10 +**/ +public class OffRoadVehicleSelection implements Comparable { + /** Identifies a fuel. **/ + public int fuelTypeID; + /** Fuel description from database, used for toString() purposes **/ + public String fuelTypeDesc = ""; + + /** Identifies a sector. **/ + public int sectorID; + /** sector name from database, used for toString() purposes **/ + public String sectorName = ""; + + /** Default constructor **/ + public OffRoadVehicleSelection() { + } + + /** + * Checks if this instance has valid settings. + * @return True if valid. + **/ + public boolean isValid() { + // Currently, this just ensures that all ID members are non-null and non-empty. + // Could also add database validation if necessary. + return (fuelTypeID != 0 && sectorID != 0); + } + + /** + * Comparison routine used to sort these objects. + * Compares Fuel IDs first then sector IDs, ignoring case. + * @param otherObject another OffRoadVehicleSelection to compare to + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object otherObject) { + OffRoadVehicleSelection otherSelection = (OffRoadVehicleSelection)otherObject; + if(otherSelection==null) { + return +1; + } + int result = fuelTypeDesc.compareToIgnoreCase(otherSelection.fuelTypeDesc); + if(result == 0) { + result = sectorName.compareToIgnoreCase(otherSelection.sectorName); + } + return result; + } + + /** + * Returns whether two objects are equal. + * @param otherObject Another OffRoadVehicleSelection object. + * @return true if the objects are equal, false if they are not. + **/ + public boolean equals(Object otherObject) { + return compareTo(otherObject)==0; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + if(isValid()) { + return fuelTypeDesc + " - " + sectorName; + } else { + return "(invalid entry)"; + } + } +} diff --git a/gov/epa/otaq/moves/common/OffRoadVehicleSelectionTest.java b/gov/epa/otaq/moves/common/OffRoadVehicleSelectionTest.java new file mode 100644 index 0000000..a6df44a --- /dev/null +++ b/gov/epa/otaq/moves/common/OffRoadVehicleSelectionTest.java @@ -0,0 +1,62 @@ +/************************************************************************************************** + * @(#)OffRoadVehicleSelectionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the OffRoadVehicleSelection class + * + * @author Wesley Faler + * @version 2010-01-18 +**/ +public class OffRoadVehicleSelectionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public OffRoadVehicleSelectionTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + **/ + public void testOffRoadVehicleSelection() { + // Test the isValid() function + OffRoadVehicleSelection test = new OffRoadVehicleSelection(); + assertTrue(!test.isValid()); + test.fuelTypeID = 0; + test.fuelTypeDesc = ""; + test.sectorID = 0; + test.sectorName = ""; + assertTrue(!test.isValid()); + // Currently OffRoadVehicleSelection doesn't validate against the database, so these + // settings should be valid. + test.fuelTypeID = 2; + test.fuelTypeDesc = "Diesel"; + test.sectorID = 6; + test.sectorName = "Sector 6"; + assertTrue(test.isValid()); + + // Test compareTo() + OffRoadVehicleSelection test2 = new OffRoadVehicleSelection(); + test2.fuelTypeID = 1; + test2.fuelTypeDesc = "Gasoline"; + test2.sectorID = 6; + test2.sectorName = "Sector 6"; + assertTrue(test2.compareTo(test) < 0); + assertTrue(test.compareTo(test2) > 0); + test.fuelTypeID = test2.fuelTypeID; + test.fuelTypeDesc = test2.fuelTypeDesc; + test.sectorID = test2.sectorID; + test.sectorName = test2.sectorName; + assertTrue(test.compareTo(test2) == 0); + assertTrue(test2.compareTo(test) == 0); + } +} diff --git a/gov/epa/otaq/moves/common/OnRoadVehicleSelection.java b/gov/epa/otaq/moves/common/OnRoadVehicleSelection.java new file mode 100644 index 0000000..1fafcc0 --- /dev/null +++ b/gov/epa/otaq/moves/common/OnRoadVehicleSelection.java @@ -0,0 +1,80 @@ +/************************************************************************************************** + * @(#)OnRoadVehicleSelection.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +/** + * This class contains a user selected fuel ID/category/MOVES Type combination that describe + * a set of on road vehicles. + * + * @author Wesley Faler + * @version 2011-09-10 +**/ +public class OnRoadVehicleSelection implements Comparable { + /** Identifies a fuel. **/ + public int fuelTypeID; + /** Fuel description from database, used for toString() purposes **/ + public String fuelTypeDesc = ""; + + /** Identifies a MOVES Source Use Type. **/ + public int sourceTypeID; + /** Source Use Type name from database, used for toString() purposes **/ + public String sourceTypeName = ""; + + /** Default constructor **/ + public OnRoadVehicleSelection() { + } + + /** + * Checks if this instance has valid settings. + * @return True if valid. + **/ + public boolean isValid() { + // Currently, this just ensures that all ID members are non-null and non-empty. + // Could also add database validation if necessary. + return (fuelTypeID != 0 && sourceTypeID != 0); + } + + /** + * Comparison routine used to sort these objects. + * Compares Fuel IDs first then Category IDs, then MOVES Type IDs, ignoring case. + * @param other another OnRoadVehicleSelection to compare to + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + OnRoadVehicleSelection otherSelection = (OnRoadVehicleSelection)other; + if(other == null) { + return +1; + } + int result = StringUtilities.safeGetString(fuelTypeDesc).compareToIgnoreCase(StringUtilities.safeGetString(otherSelection.fuelTypeDesc)); + if(result == 0) { + result = StringUtilities.safeGetString(sourceTypeName).compareToIgnoreCase(StringUtilities.safeGetString(otherSelection.sourceTypeName)); + } + return result; + } + + /** + * Returns whether two objects are equal. + * @param other Another OnRoadVehicleSelection object. + * @return true if the objects are equal, false if they are not. + **/ + public boolean equals(Object other) { + return compareTo(other)==0; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + if(isValid()) { + return fuelTypeDesc + " - " + sourceTypeName; + } else { + return "(invalid entry)"; + } + } +} diff --git a/gov/epa/otaq/moves/common/OnRoadVehicleSelectionTest.java b/gov/epa/otaq/moves/common/OnRoadVehicleSelectionTest.java new file mode 100644 index 0000000..dde14c8 --- /dev/null +++ b/gov/epa/otaq/moves/common/OnRoadVehicleSelectionTest.java @@ -0,0 +1,62 @@ +/************************************************************************************************** + * @(#)OnRoadVehicleSelectionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the OnRoadVehicleSelection class + * + * @author Cimulus + * @version 2003-04-25 +**/ +public class OnRoadVehicleSelectionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public OnRoadVehicleSelectionTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + **/ + public void testOnRoadVehicleSelection() { + // Test the isValid() function + OnRoadVehicleSelection test = new OnRoadVehicleSelection(); + assertTrue(!test.isValid()); + test.fuelTypeID = 0; + test.fuelTypeDesc = ""; + test.sourceTypeID = 0; + test.sourceTypeName = ""; + assertTrue(!test.isValid()); + // Currently OnRoadVehicleSelection doesn't validate against the database, so these + // settings should be valid. + test.fuelTypeID = 100; + test.fuelTypeDesc = "Fuel BBB"; + test.sourceTypeID = 200; + test.sourceTypeName = "SourceUseType YYY"; + assertTrue(test.isValid()); + + // Test compareTo() + OnRoadVehicleSelection test2 = new OnRoadVehicleSelection(); + test2.fuelTypeID = 99; + test2.fuelTypeDesc = "Fuel AAA"; + test2.sourceTypeID = 199; + test2.sourceTypeName = "SourceUseType XXX"; + assertTrue(test2.compareTo(test) < 0); + assertTrue(test.compareTo(test2) > 0); + test.fuelTypeID = test2.fuelTypeID; + test.fuelTypeDesc = test2.fuelTypeDesc; + test.sourceTypeID = test2.sourceTypeID; + test.sourceTypeName = test2.sourceTypeName; + assertTrue(test.compareTo(test2) == 0); + assertTrue(test2.compareTo(test) == 0); + } +} diff --git a/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelection.java b/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelection.java new file mode 100644 index 0000000..a9c2dae --- /dev/null +++ b/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelection.java @@ -0,0 +1,106 @@ +/************************************************************************************************** + * @(#)OutputEmissionsBreakdownSelection.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +/** + * This represents the checkboxes in the Output Emissions Breakdown GUI panel. + * + * @author Wesley Faler + * @version 2015-03-16 +**/ +public class OutputEmissionsBreakdownSelection { + /** modelYear portion of output emissions. **/ + public boolean modelYear; + + /** fuelType portion of output emissions. **/ + public boolean fuelType; + + /** fuelSubType portion of output emissions. **/ + public boolean fuelSubType; + + /** emissionProcess portion of output emissions. **/ + public boolean emissionProcess; + + /** onRoadOffRoad portion of output emissions. **/ + public boolean onRoadOffRoad; + + /** roadType portion of output emissions. **/ + public boolean roadType; + + /** source use type portion of output emissions. **/ + public boolean sourceUseType; + + /** movesVehicleType portion of output emissions. **/ + public boolean movesVehicleType; + + /** on road scc portion of output emissions. **/ + public boolean onRoadSCC; + + /** sector portion of NonRoad output emissions. **/ + public boolean sector; + + /** engine tech ID portion of NonRoad output emissions **/ + public boolean engTechID; + + /** hpClass portion of output emissions. **/ + public boolean hpClass; + + /** regulatory class of onroad output emissions **/ + public boolean regClassID; + + /** estimateUncertainty portion of output emissions. **/ + public boolean estimateUncertainty; + + /** Number of iterations to include in uncertainty estimate. **/ + public int numberOfIterations; + + /** Keep sample data used in estimating uncertainty **/ + public boolean keepSampledData; + + /** Keep output of each iteration **/ + public boolean keepIterations; + + + /** Default constructor **/ + public OutputEmissionsBreakdownSelection() { + } + + /** + * Corrects invalid combinations of options. For example, if on/off road is + * false, then all on road and off road booleans must be set to false. + **/ + public void adjustForStrictlyOperativeValues() { + } + + /** + * Overrides Object.equals(). + * @param other The other OutputEmissionsBreakdownSelection to check. + * @return True if equal. + **/ + public boolean equals(Object other) { + if(other instanceof OutputEmissionsBreakdownSelection) { + OutputEmissionsBreakdownSelection otherSelection = + (OutputEmissionsBreakdownSelection)other; + return this.modelYear == otherSelection.modelYear && + this.fuelType == otherSelection.fuelType && + this.fuelSubType == otherSelection.fuelSubType && + this.emissionProcess == otherSelection.emissionProcess && + this.onRoadOffRoad == otherSelection.onRoadOffRoad && + this.roadType == otherSelection.roadType && + this.sourceUseType == otherSelection.sourceUseType && + this.movesVehicleType == otherSelection.movesVehicleType && + this.onRoadSCC == otherSelection.onRoadSCC && + this.sector == otherSelection.sector && + this.engTechID == otherSelection.engTechID && + this.hpClass == otherSelection.hpClass && + this.estimateUncertainty == otherSelection.estimateUncertainty && + this.regClassID == otherSelection.regClassID; + } else { + throw new ClassCastException(); + } + } +} diff --git a/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelectionTest.java b/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelectionTest.java new file mode 100644 index 0000000..cb899e7 --- /dev/null +++ b/gov/epa/otaq/moves/common/OutputEmissionsBreakdownSelectionTest.java @@ -0,0 +1,36 @@ +/************************************************************************************************** + * @(#)OutputEmissionsBreakdownSelectionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the OutputEmissionsBreakdownSelection class + * + * @author Cimulus + * @version 2003-02-05 +**/ +public class OutputEmissionsBreakdownSelectionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public OutputEmissionsBreakdownSelectionTest(String name) { + super(name); + } + + /** Test equals() **/ + public void testEquals() { + OutputEmissionsBreakdownSelection first = new OutputEmissionsBreakdownSelection(); + OutputEmissionsBreakdownSelection second = new OutputEmissionsBreakdownSelection(); + assertEquals(first, second); + first.modelYear = true; + assertTrue(!first.equals(second)); + second.modelYear = true; + assertEquals(first, second); + } +} diff --git a/gov/epa/otaq/moves/common/ParallelSQLRunner.java b/gov/epa/otaq/moves/common/ParallelSQLRunner.java new file mode 100644 index 0000000..677f6a2 --- /dev/null +++ b/gov/epa/otaq/moves/common/ParallelSQLRunner.java @@ -0,0 +1,351 @@ +/************************************************************************************************** + * @(#)ParallelSQLRunner.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.sql.*; +import java.util.*; +import java.util.concurrent.*; +import gov.epa.otaq.moves.common.graph.*; +import gov.epa.otaq.moves.common.graph.sql.*; + +/** + * Execute multiple SQL statements in parallel, using the graph classes and a thread pool. + * + * @author Wesley Faler + * @version 2010-05-24 +**/ +public class ParallelSQLRunner { + /** source of database connections **/ + DatabaseSelection dbSelection; + /** maximum number of SQL statements to be run concurrently **/ + int maximumConcurrentStatements; + /** queue of exceptions experienced by executing threads **/ + ArrayList exceptions = new ArrayList(); + /** True if there were ever queued exceptions, even if they have been handled **/ + boolean hadExceptions = false; + /** Statement graph **/ + GraphHolder graph = null; + /** Current scheduler for the graph, if any **/ + GraphScheduler scheduler = null; + /** Open connections, ready to be used **/ + ArrayList connections = new ArrayList(); + /** Thread pool service **/ + ExecutorService sqlExecutor = null; + /** Currently running tasks **/ + ArrayList tasks = new ArrayList(); + + public static class ConcurrencyStatistics { + public int count = 0; + public int maxCount = 0; + + public int totalCount = 0; + public int observations = 0; + + public synchronized void statementStarting() { + count++; + if(count > maxCount) { + maxCount = count; + } + totalCount += count; + observations++; + } + + public synchronized void statementDone() { + count--; + } + + public void print() { + Logger.log(LogMessageCategory.INFO,"Statements done: " + observations); + if(observations > 0) { + Logger.log(LogMessageCategory.INFO,"Avg. Concurrent Statements: " + ((double)totalCount)/((double)observations)); + } + Logger.log(LogMessageCategory.INFO,"Max. Concurrent Statements: " + maxCount); + } + } + + public ConcurrencyStatistics stats = new ConcurrencyStatistics(); + + static class SQLTask implements Runnable { + ParallelSQLRunner owner; + + public SQLTask(ParallelSQLRunner ownerToUse) { + owner = ownerToUse; + } + + public void run() { + INode node = null; + Connection db = null; + boolean hasOpenStatement = false; + String sql = ""; + try { + try { + while(true) { + synchronized(owner.exceptions) { + if(owner.hadExceptions) { + return; + } + } + node = owner.scheduler.getNextNodeToDo(null,node); + if(node == null) { // If there is nothing more to do, then quit + return; + } + synchronized(owner.exceptions) { + if(owner.hadExceptions) { + return; + } + } + if(node instanceof SQLNode) { + sql = node.toString(); + db = owner.checkOutConnection(); + owner.stats.statementStarting(); + hasOpenStatement = true; +//System.out.println("Running: " + sql); + SQLRunner.executeSQL(db,sql); + hasOpenStatement = false; + owner.stats.statementDone(); + owner.checkInConnection(db); db = null; + } + } + } catch(Exception e) { +// e.printStackTrace(); + synchronized(owner.exceptions) { + owner.exceptions.add(e); + owner.hadExceptions = true; + System.out.println(e.getMessage()); + System.out.println("ERROR executing: " + sql); + } + return; + } + } finally { + if(hasOpenStatement) { + hasOpenStatement = false; + owner.stats.statementDone(); + } + if(db != null) { + owner.checkInConnection(db); db = null; + } + synchronized(owner.tasks) { + owner.tasks.remove(this); + } + synchronized(owner) { + owner.notifyAll(); + } + } + } + } + + /** + * Constructor + * @dbSelectionToUse source of database connections + * @maximumConcurrentStatementsToUse maximum number of SQL statements to be run concurrently, defaults to 2 if <= 0 + **/ + public ParallelSQLRunner(DatabaseSelection dbSelectionToUse, int maximumConcurrentStatementsToUse) { + dbSelection = dbSelectionToUse; + maximumConcurrentStatements = maximumConcurrentStatementsToUse; + if(maximumConcurrentStatements <= 0) { + maximumConcurrentStatements = 2; + } + } + + /** + * Clear any pending SQL statements + **/ + public void clear() { + graph = null; + scheduler = null; + } + + /** + * Add a SQL statement to the graph, executing the statements + * if enough have been accumulated. + * @param sql statement to be added + * @throws Exception if any statement has a problem + **/ + public void add(String sql) throws Exception { + if(graph == null) { + graph = new GraphHolder(); + } + SQLNode node = new SQLNode(graph.linearTail,sql); + try { + graph.add(node); + } catch(NullPointerException e) { + System.out.println(sql); + throw e; + } + if(graph.nodeCount >= 50) { + execute(); + } + } + + /** + * Executes the graph, waiting for completion. + * @throws Exception if any statement has a problem + **/ + public void execute() throws Exception { + throwQueuedException(); + if(graph == null) { + return; + } +//System.out.println("PSR.execute creating debug"); +//graph.generateGraphVizFile(new File("testdata/graph/Worker.dot"),false); +//graph.generateGraphVizFile(new File("testdata/graph/WorkerLinear.dot"),true); +//System.out.println("PSR.execute #1 building scheduler"); + scheduler = new GraphScheduler(graph); + hadExceptions = false; + exceptions.clear(); + tasks.clear(); + + // Ensure we have database connections already pooled + synchronized(connections) { + while(connections.size() < maximumConcurrentStatements) { +//System.out.println("PSR.execute #2 adding connection"); + checkInConnection(checkOutConnectionCore()); + } + } + + // Create the thread pool + if(sqlExecutor == null) { + sqlExecutor = Executors.newFixedThreadPool(maximumConcurrentStatements); + } + + // Initiate the thread pool + for(int i=0;i i=tasks.iterator();i.hasNext();) { + sqlExecutor.execute(i.next()); + } + } + while(true) { +//System.out.println("PSR.execute #3 waiting"); + wait(100); + synchronized(tasks) { + if(tasks.isEmpty()) { + break; + } + } + } + } + // Throw any exceptions that happened on child threads + try { + throwQueuedException(); + } catch(Exception e) { + internalClose(); + throw e; + } + + // Start clean with the next set of add'd statements + graph = null; + scheduler = null; +//System.out.println("PSR.execute #Done"); + } + + /** + * Close all connections and statements without waiting for completion of all queued statements, though + * any statements in progress will be waited upon. + * @throws Exception if any statement has a problem + **/ + public void close() throws Exception { + internalClose(); + throwQueuedException(); + } + + /** Called to totally stop any processing and close all database connections. **/ + public void onFinally() { + internalClose(); + } + + /** + * Stop all processing and close all database connections. + **/ + private void internalClose() { +//System.out.println("PSR.internalClose #1"); + // Stop the thread pool + if(sqlExecutor != null) { + sqlExecutor.shutdown(); + try { + if(!sqlExecutor.awaitTermination(60,TimeUnit.SECONDS)) { + sqlExecutor.shutdownNow(); + sqlExecutor.awaitTermination(30,TimeUnit.SECONDS); + } + } catch(InterruptedException e) { + // Nothing to do here + } + sqlExecutor = null; + } + + // Close all database connections + synchronized(connections) { + for(Iterator i=connections.iterator();i.hasNext();) { + Connection db = i.next(); + DatabaseUtilities.closeConnection(db); + } + connections.clear(); + } + + // There are no more users of the graph or scheduler, so get rid of them. + graph = null; + scheduler = null; +//System.out.println("PSR.internalClose #Done"); + } + + /** + * Throw the first queued exception, if any. + * @throws the first queued exception, if any. + **/ + private void throwQueuedException() throws Exception { + synchronized(exceptions) { + if(!exceptions.isEmpty()) { + Exception e = exceptions.remove(0); + throw e; + } + } + } + + /** + * Open a connection to the database, recycling a previously open connection if possible. + * @throws Exception if unable to obtain a database connection + **/ + public Connection checkOutConnection() throws Exception { + synchronized(connections) { + if(connections.size() > 0) { + return connections.remove(0); + } + } + return checkOutConnectionCore(); + } + + /** + * Open a connection to the database, recycling a previously open connection if possible. + * @throws Exception if unable to obtain a database connection + **/ + private Connection checkOutConnectionCore() throws Exception { + Connection db = dbSelection.openConnection(); + if(db == null) { + throw new SQLException("Did not get connection from DatabaseSelection.openConnection"); + } + return db; + } + + /** + * Return an open connection to the pool of available connections. + * @param db connection to be returned + **/ + public void checkInConnection(Connection db) { + if(db != null) { + synchronized(connections) { + connections.add(db); + } + } + } +} diff --git a/gov/epa/otaq/moves/common/PasswordChecker.java b/gov/epa/otaq/moves/common/PasswordChecker.java new file mode 100644 index 0000000..ace9a3e --- /dev/null +++ b/gov/epa/otaq/moves/common/PasswordChecker.java @@ -0,0 +1,178 @@ +/************************************************************************************************** + * @(#)PasswordChecker.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import javax.xml.bind.DatatypeConverter; +import java.security.MessageDigest; +import java.nio.charset.Charset; + +/** + * Encode and decode user-supplied passwords. + * + * @author Wesley Faler + * @version 2013-11-17 +**/ +public class PasswordChecker { + /** + * Encode a password. + * @param userName account that will use the password + * @param password text to be encoded, may be blank + * @return text of the encoded password, never blank, never null + **/ + public static String encode(String userName, String password) { + // The final format is: + // + // The hash is made from the encoded password and salted user name. + // To recover, take last 32 characters from the combination and call them the hash. Use the remaining as the encoded password. + String encodedPassword = getHex("MO" + password + "VES"); + String hash = makeHash(userName,encodedPassword); + return shuffle(encodedPassword + hash,true); + } + + /** + * Recover a previously encoded password. + * @param userName account that will use the password + * @param encodedPassword password previously encoded with the encode() function + * @return the password or null if the encoded password is corrupt + **/ + public static String decode(String userName, String encodedPassword) { + if(encodedPassword == null || encodedPassword.length() <= 32) { + return null; + } + String fullText = shuffle(encodedPassword,false); + String hash = fullText.substring(fullText.length()-32); + String hexPassword = fullText.substring(0,fullText.length()-32); + String checkHash = makeHash(userName,hexPassword); + if(!checkHash.equals(hash)) { + return null; + } + String password = fromHex(hexPassword); + if(!password.startsWith("MO") || !password.endsWith("VES")) { + return null; + } + if(password.length() == 5) { + return ""; + } + return password.substring(2,password.length()-3); + } + + /** + * Shuffle the characters within a text string. + * @param text text to be altered + * @param isForward true to make altered text, false to recover original text + * @return shuffled text + **/ + public static String shuffle(String text, boolean isForward) { + // Based upon ideas from: + // http://www.codinghorror.com/blog/2007/12/the-danger-of-naivete.html + // http://stackoverflow.com/questions/2459264/why-is-fisher-yates-the-most-useful-shuffling-algorithm + if(text == null || text.length() <= 1) { + return text; + } + char[] c = text.toCharArray(); + // Get shuffle exchanges + int[] exchanges = new int[c.length-1]; + long state = c.length + 19; + long range = 1 << 31; + for(int i=c.length-1;i>0;i--) { + int n = (int)(state % (i+1)); + // Advance state using the glibc/GCC random number algorithm + // http://en.wikipedia.org/wiki/Linear_congruential_generator + state = (state*1103515245l+12345l) % range; + exchanges[c.length-1-i] = n; + } + if(isForward) { // Shuffle + for(int i=c.length-1;i>0;i--) { + int n = exchanges[c.length-1-i]; + char t = c[i]; + c[i] = c[n]; + c[n] = t; + } + } else { // Deshuffle + for(int i=1;i 32) { + return rawHash.substring(0,32); + } + while(rawHash.length() < 32) { + rawHash = "0" + rawHash; + } + return rawHash; + } + + /** + * Perform a one-way hash. + * @param userName input user name, salted in case the name is blank + * @param encodedPassword input encoded password, never blank or null + * @return hash text + **/ + private static String makeHashCore(String userName, String encodedPassword) { + if(encodedPassword == null || encodedPassword.length() <= 0) { + return ""; + } + // Salt the user name + String t = "epa" + userName + "MOVES"; + for(int i=0;i<3;i++) { + t = t + t.substring(i,5+i); + } + // Add the encoded password + t += encodedPassword; + // Make hex string from a MD5 hash of the UTF-8 text + byte[] tBytes = t.getBytes(Charset.forName("UTF-8")); + try { + MessageDigest digest = MessageDigest.getInstance("MD5"); + digest.update(tBytes,0,tBytes.length); + byte[] hashBytes = digest.digest(); + return DatatypeConverter.printHexBinary(hashBytes); + } catch(Exception e) { + return DatatypeConverter.printHexBinary(tBytes); + } + } + + /** + * Get hex representation of the text within a string. + * @param text text to be converted + * @return hexadecimal version of the UTF-8 bytes that make the string + **/ + private static String getHex(String text) { + byte[] tBytes = text.getBytes(Charset.forName("UTF-8")); + return DatatypeConverter.printHexBinary(tBytes); + } + + /** + * Get a string from the hex representation of its characters. + * @param hex hexadecimal version of the UTF-8 bytes that make the string + * @return the text or blank if something went wrong, never null + **/ + private static String fromHex(String hex) { + try { + byte[] tBytes = DatatypeConverter.parseHexBinary(hex); + if(tBytes == null) { + return ""; + } + return new String(tBytes,Charset.forName("UTF-8")); + } catch(Exception e) { + return ""; + } + } +} diff --git a/gov/epa/otaq/moves/common/PasswordCheckerTest.java b/gov/epa/otaq/moves/common/PasswordCheckerTest.java new file mode 100644 index 0000000..28ec2a9 --- /dev/null +++ b/gov/epa/otaq/moves/common/PasswordCheckerTest.java @@ -0,0 +1,59 @@ +/************************************************************************************************** + * @(#)PasswordCheckerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the PasswordChecker class + * + * @author Wesley Faler + * @version 2013-11-17 +**/ +public class PasswordCheckerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public PasswordCheckerTest(String name) { + super(name); + } + + /** + * Tests encode and decode + **/ + public void testEncodeAndDecode() { + String userName = "testuser"; + String password = "moves"; + + String encodedPassword = PasswordChecker.encode(userName,password); + System.out.println("encode(" + userName + "," + password + ")=" + encodedPassword); + String recoveredPassword = PasswordChecker.decode(userName,encodedPassword); + assertEquals("Did not recover password",password,recoveredPassword); + + recoveredPassword = PasswordChecker.decode(userName,"1448F5E74F43DD44A6A7EC6F50752542D419D3936A3E5C7F6063"); + assertNull("Corrupt password is not null",recoveredPassword); + + recoveredPassword = PasswordChecker.decode(userName + "AAA",encodedPassword); + assertNull("Corrupt user name not detected",recoveredPassword); + + // Test anonymous user + userName = ""; + password = ""; + encodedPassword = PasswordChecker.encode(userName,password); + System.out.println("encode(" + userName + "," + password + ")=" + encodedPassword); + recoveredPassword = PasswordChecker.decode(userName,encodedPassword); + assertEquals("Did not recover anonymous password",password,recoveredPassword); + + recoveredPassword = PasswordChecker.decode(userName,"113F4DF25E5C55EA70DC4253B84FC329405DC73564"); + assertNull("Corrupt anonymous password is not null",recoveredPassword); + + recoveredPassword = PasswordChecker.decode(userName + "AAA",encodedPassword); + assertNull("Corrupt anonymous user name not detected",recoveredPassword); + } +} diff --git a/gov/epa/otaq/moves/common/PerformanceProfiler.java b/gov/epa/otaq/moves/common/PerformanceProfiler.java new file mode 100644 index 0000000..2f0ecbb --- /dev/null +++ b/gov/epa/otaq/moves/common/PerformanceProfiler.java @@ -0,0 +1,122 @@ +/************************************************************************************************** + * @(#)PerformanceProfiler.java + * + * + * + *************************************************************************************************/ + +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.io.*; + +/** + * Static class to collect statistics on the execution times and frequencies for sections of code. + * The start() and stop() methods are called several times for different sections of code while the + * application is running. When the application is done, the writeProfiles() method is called to + * write the final statistics to a tab delimited file. The PerformanceProfiler is used by SQLRunner + * to collect statistics on SQL query execution times and frequencies. + * + * @author Wesley Faler + * @version 2009-04-04 +**/ +public class PerformanceProfiler { + /** flag controlling whether or not profiling actually happens **/ + static final boolean shouldDoProfiling = false; // true; + /** Cache of performance statistics **/ + static TreeMap statisticsMap = new TreeMap(); + + /** Performance Statistics **/ + static class Statistics { + /** Start of current timing function **/ + long startTime; + /** Accumulated execution time **/ + long totalTime; + /** Time to perform first execution **/ + long firstTime; + /** Number of times this statistic has been run **/ + long runCount = 0; + } + + /** Standard constructor. **/ + public PerformanceProfiler() { + } + + /** + * Starts execution timing + * @param stringID String identifier for the thing being profiled. + **/ + public static void start(String stringID) { + if(!shouldDoProfiling) { + return; + } + + Statistics stats = (Statistics) statisticsMap.get(stringID); + + if(stats == null) { + stats = new Statistics(); + stats.startTime = System.currentTimeMillis(); + statisticsMap.put(stringID, stats); + } else { + stats.startTime = System.currentTimeMillis(); + } + } + + /** + * Stops execution timing + * @param stringID stringID name for the thing being profiled. + **/ + public static void stop(String stringID) { + if(!shouldDoProfiling) { + return; + } + + Statistics stats = (Statistics) statisticsMap.get(stringID); + if(stats != null) { + long runTime = System.currentTimeMillis() - stats.startTime; + if(++stats.runCount == 1) { + stats.firstTime = runTime; + stats.totalTime = runTime; + } else { + stats.totalTime = stats.totalTime + runTime; + } + stats.startTime = 0; + statisticsMap.put(stringID, stats); + } + } + + /** + * Writes statistic profiles to system out + * @param filename Name of file to write profiles to. + **/ + public static void writeProfiles(String filename) { + if(!shouldDoProfiling) { + return; + } + + try { + File performanceProfilerPath = new File(filename); + + final String eol = System.getProperty("line.separator"); + Writer performanceProfilerWriter = new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(performanceProfilerPath))); + + performanceProfilerWriter.write("First Time\tRun Count\tTotal Time\tString ID" + eol); + for(Iterator i=statisticsMap.keySet().iterator();i.hasNext();) { + String stringID = (String)i.next(); + Statistics stats = (Statistics) statisticsMap.get(stringID); + performanceProfilerWriter.write(stats.firstTime+"\t"+stats.runCount+"\t"+ + stats.totalTime + "\t\""+stringID+"\"" + eol); + } + + performanceProfilerWriter.close(); + } catch(IOException e) { + /** + * @explain An error occured while writing database performance logs to a file. + * These logs are typically only used by developers to fine tune their logic, but + * could point to a problem with drive space. + **/ + Logger.logError(e,"Writing performance profiles to "+filename+" failed."); + } + } +} diff --git a/gov/epa/otaq/moves/common/PermutationCreator.java b/gov/epa/otaq/moves/common/PermutationCreator.java new file mode 100644 index 0000000..3d15bd8 --- /dev/null +++ b/gov/epa/otaq/moves/common/PermutationCreator.java @@ -0,0 +1,68 @@ +/************************************************************************************************** + * @(#)PermutationCreator.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; + +/** + * Iterate through all permutations of the elements in one or more dimensions. + * + * @author Wesley Faler + * @version 2010-09-25 +**/ +public class PermutationCreator { + /** Hold elements in a single dimension **/ + public interface IDimension { + int dimensionSize(); + void applyIndex(int index); + } + + /** All dimensions **/ + ArrayList dimensions = new ArrayList(); + /** Counters used during dimension iteration **/ + int[] counters; + + /** + * Add a dimension. + * @param d dimension to be added + **/ + public void add(IDimension d) { + dimensions.add(d); + } + + /** Set iteration to the starting item **/ + public void start() { + counters = new int[dimensions.size()]; + apply(); + } + + /** + * Advance to the next permutation. + * @return false if there was no next permutation. + **/ + public boolean next() { + int index = 0; + while(true) { + counters[index]++; + if(counters[index] >= dimensions.get(index).dimensionSize()) { + counters[index] = 0; + index++; + if(index >= counters.length) { + return false; + } + continue; + } + apply(); + return true; + } + } + + /** Set each dimension according to counters **/ + void apply() { + for(int i=0;i errors) { + String originalText = text; + + String result = ""; + int used = 0; + while(text.length() > 0) { + if(text.startsWith("\\sol") || text.startsWith("\\bol")) { + result += "^"; + used = 4; + } else if(text.startsWith("\\first")) { + result += "\\A"; + used = 6; + } else if(text.startsWith("\\space")) { + result += "\\x20"; + used = 6; + } else if(text.startsWith("\\eol")) { + result += "$(\\r\\n|\\n\\r|\\r|\\n)"; + used = 4; + } else if(text.startsWith("\\space")) { + result += "\\x20"; + used = 6; + } else if(text.startsWith("\\white")) { + result += "\\s*"; + used = 6; + } else if(text.startsWith("\\nonwhite")) { + result += "\\S*"; + used = 9; + } else if(text.startsWith("*")) { + result += ".*?"; + used = 1; + } else if(text.startsWith("\\*")) { + result += "\\*"; + used = 2; + } else if(text.startsWith("\\\\")) { + result += "\\\\"; + used = 2; + } else if(text.startsWith("\\x")) { + if(text.length() >= 5) { + try { + int code = Integer.parseInt(text.substring(2,5)); + if(code >= 0 && code <= 255) { + used = 5; + String hex = "00" + Integer.toHexString(code); + result += "\\x" + hex.substring(hex.length()-2,hex.length()); + } else if(errors != null) { + errors.add("\\x found with value " + code + " but should be >= 0 and <= 255"); + } + } catch(Exception e) { + if(errors != null) { + errors.add("\\x found without 3 following digits"); + } + } + } else { + if(errors != null) { + errors.add("\\x found without 3 following digits"); + } + used = 1; + } + } else if(text.startsWith("\\digits")) { + result += "\\d*"; + used = 7; + } else if(text.startsWith("\\digit")) { + result += "\\d"; + used = 6; + } else { + String hex = "00" + Integer.toHexString((int)(text.substring(0,1).toCharArray()[0])); + result += "\\x" + hex.substring(hex.length()-2,hex.length()); + used = 1; + } + text = text.substring(used); + } + /* + if(errors != null && errors.size() > 0) { + for(Iterator i=errors.iterator();i.hasNext();) { + System .out.println(i.next().toString()); + } + } + */ + //System.out.println("RegExBuilder.getRegEx(\"" + originalText + "\") = \"" + result + "\""); + return result; + } + + /** + * Create a compiled Pattern object + * @param regularExpression expression to be compiled + * @return a compiled regular expression + **/ + public static Pattern compile(String regularExpression) { + Pattern result = Pattern.compile(regularExpression, + Pattern.MULTILINE | Pattern.DOTALL | Pattern.CASE_INSENSITIVE); + return result; + } +} diff --git a/gov/epa/otaq/moves/common/SQLRunner.java b/gov/epa/otaq/moves/common/SQLRunner.java new file mode 100644 index 0000000..13c0db1 --- /dev/null +++ b/gov/epa/otaq/moves/common/SQLRunner.java @@ -0,0 +1,910 @@ +/************************************************************************************************** + * @(#)SQLRunner.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import java.util.*; + +/** + * Central location for performing SQL queries. SQLRunner uses the PerformanceProfiler to collect + * query execution time and frequency statistics. + * + * @author Wesley Faler + * @author EPA Mitch C. minor mod to add SQL exception trace printout + * @version 2015-09-11 +**/ +public class SQLRunner { + /** true to force use of InnoDB tables rather than MyISAM **/ + public static boolean allowInnoDB = false; + + /** Set of database connections that should use InnoDB tables **/ + private static TreeSet innodbConnections = new TreeSet(); + + /** Clear all InnoDB connections, causing all open connections to prefer MyISAM tables. **/ + public static void resetInnoDBConnections() { + innodbConnections.clear(); + } + + /** + * Flag a data connection as preferring InnoDB tables over MyISAM tables. + * @param db database connection + **/ + public static void addInnoDBConnection(Connection db) { + if(allowInnoDB) { + //System.out.println("INNODB: Adding db " + db.hashCode()); + innodbConnections.add(new Integer(db.hashCode())); + } + } + + /** + * Remove a database connection's preference for InnoDB tables. + * @param db database connection + **/ + public static void removeInnoDBConnection(Connection db) { + //System.out.println("INNODB: Removing db " + db.hashCode()); + innodbConnections.remove(new Integer(db.hashCode())); + } + + /** + * Check a database connection's preference for InnoDB or MyISAM tables. + * @param db database connection + * @return true if InnoDB tables should be used, false if MyISAM tables should be used. + **/ + public static boolean isInnoDBConnection(Connection db) { + if(!allowInnoDB) { + return false; + } + boolean result = innodbConnections.contains(new Integer(db.hashCode())); + if(result) { + //System.out.println("INNODB: Using db " + db.hashCode()); + } + return result; + } + + public static class Query { + /* Sample usage: + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + sql = .... + query.open(sql); + while(query.rs.next()) { + ... query.rs.getInt(...) + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + */ + public Statement statement = null; + public ResultSet rs = null; + public boolean isLargeResultSet = false; + + public Query() { + } + + public Query(boolean isLargeResultSetToUse) { + isLargeResultSet = isLargeResultSetToUse; + } + + public void open(Connection db, String sql) throws SQLException { + if(isLargeResultSet) { + openLargeResultSet(db,sql); + } else { + statement = db.createStatement(); + } + rs = SQLRunner.executeQuery(statement,sql); + } + + public void openLargeResultSet(Connection db, String sql) throws SQLException { + statement = db.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY); + statement.setFetchSize(Integer.MIN_VALUE); + rs = SQLRunner.executeQuery(statement,sql); + } + + public void onException(SQLException e, String text, String sql) { + /** @nonissue **/ + Logger.logError(e,text + "\n" + sql); + close(); + } + + public void close() { + if(rs != null) { + try { + rs.close(); + } catch(SQLException e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(SQLException e) { + // Nothing to do here + } + statement = null; + } + } + + public void onFinally() { + close(); + } + } + + /** Standard constructor. **/ + public SQLRunner() { + } + + /** + * Examine an exception and execute FLUSH TABLES if the exception appears that it would benefit + * from such + * @param db an open Connection object. + * @param error an exception thrown while executing SQL + * @param attemptNumber how many previous attempts at executing the SQL have been made + * @return true if FLUSH TABLES was performed and the offending SQL should be reattempted + **/ + private static boolean wouldFlushTablesHelp(Connection db,SQLException error,int attemptNumber) { + if(attemptNumber >= 1) { + /** + * @explain A database error was encountered and an automatic reattempt after issuing + * a FLUSH TABLES statement was done, but was ultimately unsuccessful. + **/ + Logger.log(LogMessageCategory.WARNING,"Too many retries of FLUSH TABLES, giving up."); + return false; + } + boolean shouldDoFlushTables = false; + String message = error.getMessage().toUpperCase(); + if(!shouldDoFlushTables && + (message.indexOf(".FRM") >= 0 || message.indexOf(".MYD") >= 0 + || message.indexOf(".MYI") >= 0 + || message.indexOf("READ ONLY") >= 0)) { + // Exception contains a file name, likely FLUSH TABLES will remove a lock on the file. + shouldDoFlushTables = true; + } + // Check more exception types here + // ..... + if(!shouldDoFlushTables) { + return false; + } + /** + * @explain A database error was encountered and an automatic reattempt after issuing + * a FLUSH TABLES statement is about to begin. + **/ + Logger.log(LogMessageCategory.DEBUG, + "SQL exeception might benefit from FLUSH TABLES: " + + error.getMessage()); + PreparedStatement statement = null; + try { + statement = db.prepareStatement("FLUSH TABLES"); + statement.executeUpdate(); + return true; + } catch(SQLException e) { + /** + * @explain While attempting to automatically recover from a database error issuing + * a FLUSH TABLES command, another error occurred. The database server software + * itself may be offline. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred while trying to recover using FLUSH TABLES: " + + e.getMessage()); + return false; + } finally { + if(statement != null) { + try { + statement.close(); + } catch(SQLException e) { + // Nothing can be done here + } + statement = null; + } + } + } + + /** + * Executes a prepared SQL statement and collects timing statistics + * @param statement Prepared SQL statement. + * @param sql Original SQL to the prepared statement for identifying timing statistics + * @return count of rows affected + * @throws SQLException Thrown by prepared statement executeUpdate() + **/ + public static int executeSQL(PreparedStatement statement, String sql) throws SQLException { + int attemptNumber = 0; + while(true) { + try { + PerformanceProfiler.start(sql); + return statement.executeUpdate(); + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + } + attemptNumber++; + } + } + + /** + * Executes a prepared SQL statement and collects timing statistics + * @param statement Prepared SQL statement. + * @param sql Original SQL to the prepared statement for identifying timing statistics + * @return SQL result set + * @throws SQLException Thrown by prepared statement executeQuery() + **/ + public static ResultSet executeQuery(PreparedStatement statement, String sql) + throws SQLException { + int attemptNumber = 0; + while(true) { + try { + PerformanceProfiler.start(sql); + return statement.executeQuery(); + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + } + attemptNumber++; + } + } + + /** + * Executes a prepared SQL statement and collects timing statistics + * @param statement Prepared SQL statement. + * @param sql Original SQL to the prepared statement for identifying timing statistics + * @return false if the statement failed + * @throws SQLException Thrown by prepared statement executeUpdate() + **/ + public static boolean execute(PreparedStatement statement, String sql) throws SQLException { + int attemptNumber = 0; + while(true) { + try { + PerformanceProfiler.start(sql); + return statement.execute(); + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + } + attemptNumber++; + } + } + + /** + * Executes an SQL statement on a database and collects timing statistics. + * @param db an open Connection object. + * @param sql the statement to run. + * @return count of rows affected + * @throws SQLException on error from any of the database operations. + **/ + public static int executeSQL(Connection db, String sql) throws SQLException { + String sqlLowerCase = sql.toLowerCase().trim(); + if(sqlLowerCase.startsWith("flush tables")) { + return 0; + } + if(sqlLowerCase.indexOf("select ") >= 0) { + /* + if(sqlLowerCase.startsWith("create table") && sqlLowerCase.indexOf(" like ") < 0) { + return executeCreateSelect(db,sql); + } else if(sqlLowerCase.startsWith("insert")) { + return executeInsertSelect(db,sql,0,true); + } + */ + } else if(sqlLowerCase.startsWith("create table") && sqlLowerCase.indexOf(" like ") < 0) { + String newSQL = addEngineAndFlags(sql,sqlLowerCase,isInnoDBConnection(db)); + if(newSQL != null) { + sql = newSQL; + sqlLowerCase = sql.toLowerCase().trim(); + } + } else if(sqlLowerCase.startsWith("delete from")) { + // After deleting many records, it is best to optimize and analyze + // the table. + return executeDelete(db,sql); + } + + if(db == null) { + return 0; + } + return executeSQLCore(db,sql); + } + + /** + * Executes an SQL statement on a database and collects timing statistics. + * @param db an open Connection object. + * @param sql the statement to run. + * @return the number of affected records + * @throws SQLException on error from any of the database operations. + **/ + public static int executeSQLCore(Connection db, String sql) throws SQLException { + if(db == null) { + //System.out.println(sql); + return 200000; + } + int attemptNumber = 0; + while(true) { + Statement statement = db.createStatement(); + try { + PerformanceProfiler.start(sql); + statement.execute(sql); + return statement.getUpdateCount(); + } catch(SQLException e) { + if(!wouldFlushTablesHelp(db,e,attemptNumber)) { + //System.out.println("SQL Failed: " + sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + statement.close(); + } + attemptNumber++; + } + } + + /** + * Executes SQL statement on a database, collects timing statistics, and returns a single + * ResultSet. + * @param db an open Connection object. + * @param sql the statement to run. + * @return The opened result set. This will never be null. + * @throws SQLException on error from any of the database operations. + **/ + public static ResultSet executeQuery(Connection db, String sql) throws SQLException { + Statement statement = db.createStatement(); + return executeQuery(statement,sql); + } + + /** + * Executes unprepared SQL statement, collects timing statistics, and returns a result set. + * @param statement an open and configured Statement object + * @param sql the statement to run. + * @return The opened result set. This will never be null. + * @throws SQLException on error from any of the database operations. + **/ + public static ResultSet executeQuery(Statement statement, String sql) throws SQLException { + int attemptNumber = 0; + while(true) { + try { + PerformanceProfiler.start(sql); + return statement.executeQuery(sql); + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); +// statement.close(); + } + attemptNumber++; + } + } + + /** + * Executes SQL statement on a database, collects timing statistics, and returns a double + * from the value of the first column of the first row, or 0 if no data is returned. + * @param db an open Connection object. + * @param sql the statement to run. + * @return The value of the first column in the first row of the results, or 0 if no rows. + * @throws SQLException on error from any of the database operations. + **/ + public static double executeScalar(Connection db, String sql) throws SQLException { + Statement statement = db.createStatement(); + return executeScalar(statement,sql); + } + + /** + * Executes unprepared SQL statement, collects timing statistics, and returns a double + * from the value of the first column of the first row, or 0 if no data is returned. + * @param statement an open and configured Statement object + * @param sql the statement to run. + * @return The value of the first column in the first row of the results, or 0 if no rows. + * @throws SQLException on error from any of the database operations. + **/ + public static double executeScalar(Statement statement, String sql) throws SQLException { + int attemptNumber = 0; + while(true) { + ResultSet rs = null; + try { + PerformanceProfiler.start(sql); + rs = statement.executeQuery(sql); + if(rs != null) { + if(rs.next()) { + return rs.getDouble(1); + } else { + return 0; + } + } else { + return 0; + } + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + statement.close(); + if(rs != null) { + rs.close(); + } + } + attemptNumber++; + } + } + + /** + * Executes SQL statement on a database, collects timing statistics, and returns a double + * from the value of the first column of the first row, or 0 if no data is returned. + * @param db an open Connection object. + * @param sql the statement to run. + * @return The value of the first column in the first row of the results, or 0 if no rows. + * @throws SQLException on error from any of the database operations. + **/ + public static String executeScalarString(Connection db, String sql) throws SQLException { + Statement statement = db.createStatement(); + return executeScalarString(statement,sql); + } + + /** + * Executes unprepared SQL statement, collects timing statistics, and returns a double + * from the value of the first column of the first row, or 0 if no data is returned. + * @param statement an open and configured Statement object + * @param sql the statement to run. + * @return The value of the first column in the first row of the results, or 0 if no rows. + * @throws SQLException on error from any of the database operations. + **/ + public static String executeScalarString(Statement statement, String sql) throws SQLException { + int attemptNumber = 0; + while(true) { + ResultSet rs = null; + try { + PerformanceProfiler.start(sql); + rs = statement.executeQuery(sql); + if(rs != null) { + if(rs.next()) { + return rs.getString(1); + } else { + return null; + } + } else { + return null; + } + } catch(SQLException e) { + if(!wouldFlushTablesHelp(statement.getConnection(),e,attemptNumber)) { + //System.out.println(sql); + throw e; + } + } finally { + PerformanceProfiler.stop(sql); + statement.close(); + if(rs != null) { + rs.close(); + } + } + attemptNumber++; + } + } + + /** + * Add an explicit ORDER BY clause to any SELECT statement containing a GROUP BY clause. + * Existing ORDER BY clauses are removed and replaced with the contents of the GROUP BY clause. + * This makes the resulting statement predictable in its sequence and compatible with + * INSERT..SELECT..LIMIT optimizations. + * Syntax examples: + * select * from alpha + * yields: null + * select * from alpha group by a, b + * yields: select * from alpha group by a, b order by a, b + * select * from alpha group by a, b limit 1,4 + * yields: select * from alpha group by a, b order by a, b limit 1,4 + * select * from alpha group by a, b order by a + * yields: select * from alpha group by a, b order by a, b + * select * from alpha group by a, b order by a limit 1,4 + * yields: select * from alpha group by a, b order by a, b limit 1,4 + * select * from alpha group by a, b having a+b>3 order by a limit 1,4 + * yields: select * from alpha group by a, b having a+b>3 order by a, b limit 1,4 + * @param sql sql to be examined, natural case + * @param sqlLowerCase lowercase version of SQL, used to improve performance + * @return modified sql statement (in its natural case) or null if no modifications were made + **/ + public static String addOrderToGroup(String sql, String sqlLowerCase) { + if(sqlLowerCase.indexOf("group by") < 0) { + return null; // no GROUP BY, so no changes + } + + sql = sql.trim(); + if(sql.endsWith(";")) { + while(sql.endsWith(";")) { + sql = sql.substring(0,sql.length()-1).trim(); + } + sqlLowerCase = sql.toLowerCase(); + } else { + sqlLowerCase = sqlLowerCase.trim(); + } + int groupByIndex = sqlLowerCase.indexOf("group by"); + if(groupByIndex < 0) { + return null; // no GROUP BY, so no changes + } + int orderByIndex = sqlLowerCase.indexOf("order by"); + int limitIndex = sqlLowerCase.indexOf("limit "); + String limitClause = ""; + if(limitIndex > groupByIndex) { + limitClause = sql.substring(limitIndex); + sql = sql.substring(0,limitIndex).trim(); + sqlLowerCase = sql.toLowerCase(); + } + if(orderByIndex > groupByIndex) { + sql = sql.substring(0,orderByIndex).trim(); + sqlLowerCase = sql.toLowerCase(); + } + String groupByClause = sql.substring(groupByIndex+8/*"group by".length()*/).trim(); + int havingIndex = groupByClause.toLowerCase().indexOf("having "); + if(havingIndex > 0) { + groupByClause = groupByClause.substring(0,havingIndex).trim(); + } + String orderByClause = " order by " + groupByClause; + if(limitClause.length() > 0) { + return sql + orderByClause + " " + limitClause; + } else { + return sql + orderByClause; + } + } + + /** + * Add "ENGINE=MyISAM" (or "ENGINE=InnoDB"), "DELAY_KEY_WRITE=1", and "CHARSET=latin1" clauses to + * a CREATE TABLE statement of the form "create table (xxx) ENGINE=MyISAM DELAY_KEY_WRITE=1". + * @param sql sql to be examined, natural case. + * @param sqlLowerCase lowercase version of SQL, used to improve performance. + * @param useInnoDB true to force InnoDB tables, false to use MyISAM. + * @return modified sql statement (in its natural case) or null if no modifications were made. + **/ + public static String addEngineAndFlags(String sql, String sqlLowerCase, boolean useInnoDB) { + sql = sql.trim(); + boolean hasSemicolon = sql.endsWith(";"); + if(hasSemicolon) { + while(sql.endsWith(";")) { + sql = sql.substring(0,sql.length()-1).trim(); + } + sqlLowerCase = sql.toLowerCase(); + } + boolean madeChanges = false; + if(useInnoDB && sqlLowerCase.indexOf("engine=myisam") >= 0) { + sql = StringUtilities.replace(sql,"ENGINE=MyISAM","ENGINE=InnoDB"); + madeChanges = true; + //System.out.println("INNODB: Changing MyISAM to InnoDB"); + } + if(sqlLowerCase.indexOf("engine=") < 0) { + if(useInnoDB) { + sql += " ENGINE=InnoDB"; + //System.out.println("INNODB: Adding ENGINE=InnoDB"); + } else { + sql += " ENGINE=MyISAM"; + } + madeChanges = true; + } + if(sqlLowerCase.indexOf("delay_key_write=") < 0) { + sql += " DELAY_KEY_WRITE=1"; + madeChanges = true; + } + if(sqlLowerCase.indexOf("charset=") < 0) { + sql += " CHARSET=latin1"; + madeChanges = true; + } + if(!madeChanges) { + return null; + } + if(hasSemicolon) { + sql += ";"; + } + return sql; + } + + /** + * Perform a DELETE FROM statement, including analyzing and optimizing the table + * if too many records were removed. + * @param db database to use + * @param sql DELETE FROM statement to perform + * @return the number of records deleted + * @throws SQLException if any statement goes wrong + **/ + public static int executeDelete(Connection db, String sql) throws SQLException { + int affectedRows = executeSQLCore(db,sql); + if(false && affectedRows >= 50000) { + sql = sql.trim(); + String sqlLowerCase = sql.toLowerCase().trim(); + // Extract the table name + String table = ""; + if(sqlLowerCase.startsWith("delete from")) { + int index = "delete from".length(); + // Skip leading whitespace + while(Character.isWhitespace(sql.charAt(index))) { + index++; + } + // Read the table name + while(index < sql.length() && !Character.isWhitespace(sql.charAt(index))) { + table += sql.charAt(index); + index++; + } + if(table.length() > 0) { + String triedSQL = ""; + try { + triedSQL = "optimize table " + table; + executeSQLCore(db,triedSQL); + triedSQL = "analyze table " + table; + executeSQLCore(db,triedSQL); + } catch(SQLException e) { + // Complain about these but do not stop the processing + Logger.log(LogMessageCategory.INFO, + "Unable to optimize table after DELETE using: " + triedSQL + + "\n based on original statement: " + sql); + } + } + } + } + return affectedRows; + } + + /** + * Perform an INSERT ... SELECT statement as a series of equivalent statements + * with LIMIT clauses. + * @param db database to use + * @param baseSQL INSERT ... SELECT statement to perform + * @return the number of records inserted + * @throws SQLException if any statement goes wrong + **/ + public static int executeInsertSelect(Connection db, String baseSQL) throws SQLException { + return executeInsertSelect(db,baseSQL,0,true); + } + + /** + * Perform an INSERT ... SELECT statement as a series of equivalent statements + * with LIMIT clauses. + * @param db database to use + * @param baseSQL INSERT ... SELECT statement to perform + * @param startRecord 0-based record to use within the SELECT statement + * @param reformatGroupBy true if addOrderToGroup() should be used + * @return the number of records inserted + * @throws SQLException if any statement goes wrong + **/ + public static int executeInsertSelect(Connection db, String baseSQL, + int startRecord, boolean reformatGroupBy) throws SQLException { + baseSQL = baseSQL.trim(); + while(baseSQL.endsWith(";")) { + baseSQL = baseSQL.substring(0,baseSQL.length()-1).trim(); + } + + if(reformatGroupBy) { + String newSQL = addOrderToGroup(baseSQL,baseSQL.toLowerCase()); + if(newSQL != null) { + baseSQL = newSQL; + } + } + + int totalRecordsAffected = 0; + int recordsToUse = 200000; + int limit = -1; + if(db == null) { + limit = (int)(2.5*recordsToUse); + } + while(limit<0 || totalRecordsAffected < limit) { + String sql = baseSQL + " limit " + startRecord + "," + recordsToUse; + //System.out.println("NEWSQL: " + sql); + int count = executeSQLCore(db,sql); + if(count > 0) { + totalRecordsAffected += count; + startRecord += count; + } + if(count < recordsToUse) { + break; + } + } + return totalRecordsAffected; + } + + /** + * Perform a CREATE ... SELECT statement as a CREATE ... SELECT ... LIMIT 0,1 + * statement followed by INSERT ... SELECT ... LIMIT ... statements. + * @param db database to use + * @param baseSQL CREATE ... SELECT statement to use + * @return the number of records placed into the table + * @throws SQLException if any statement goes wrong + **/ + public static int executeCreateSelect(Connection db, String baseSQL) throws SQLException { + baseSQL = baseSQL.trim(); + while(baseSQL.endsWith(";")) { + baseSQL = baseSQL.substring(0,baseSQL.length()-1).trim(); + } + String lowercaseBaseSQL = baseSQL.toLowerCase(); + + String newSQL = addOrderToGroup(baseSQL,lowercaseBaseSQL); + if(newSQL != null) { + baseSQL = newSQL; + lowercaseBaseSQL = baseSQL.toLowerCase(); + } + + if(lowercaseBaseSQL.indexOf("limit ") > 0) { + // Already contains a LIMIT clause + return executeSQLCore(db,baseSQL); + } + int totalRecordsAffected = 0; + String sql = baseSQL + " limit 0,1"; + //System.out.println("executeCreateSelect input: \"" + baseSQL + "\""); + //System.out.println("executeCreateSelect create: \"" + sql + "\""); + totalRecordsAffected = executeSQLCore(db,sql); + if(totalRecordsAffected >= 1) { + // Get the portion from the table name through the end of the statement + // Example syntax: + // create table m2 select monthid, monthname from monthofanyyear limit 0,1 + // create table if not exists m2 select monthid, monthname from monthofanyyear limit 0,1 + int index = lowercaseBaseSQL.indexOf("select") - 1; + // Skip leading space before the SELECT word + while(Character.isWhitespace(lowercaseBaseSQL.charAt(index))) { + index--; + } + // index is now at the last character of the table name + while(!Character.isWhitespace(lowercaseBaseSQL.charAt(index))) { + index--; + } + index++; + + sql = "insert into " + baseSQL.substring(index); + //System.out.println("executeCreateSelect insert: \"" + sql + "\""); + totalRecordsAffected += executeInsertSelect(db,sql,1,false); + } + return totalRecordsAffected; + } + + /** + * Produce a generic, pattern-centric, version of a statement. The resulting statement + * won't necessarily work but will remove natural variation, such as numeric and text + * literals. Case is also standardized to lower case and streaks of white space are + * clipped to one space. + * @param sql statement to be examined + * @return generisized statement, never null (unless sql itself was) + **/ + public static String toGeneric(String sql) { + if(sql == null) { + return null; + } + sql = sql.toLowerCase().trim(); + if(sql.length() <= 0) { + return ""; + } + int index = sql.indexOf("limit "); + if(index > 0) { + sql = sql.substring(0,index); + } + String result = ""; + int state = 0; + char[] sqlC = sql.toCharArray(); + char c; + String delimiters = "=<>!-+|&,./*()\\:;"; + for(int i=0;i= 0) { + // Delimiter, just stay in this state + result += c; + } else if(Character.isDigit(c)) { + state = 200; // parse and remove a number + result += "#"; + } else { // start of a word, so read until whitespace or a delimiter + result += c; + state = 300; + } + break; + case 100: // Skip a text string, looking for the ending ' and skipping '' + if(c == '\'') { + if(i+1= 0) { + // Delimiter, go back to the main state + result += c; + state = 0; + } else { + result += c; + // Stay in this state + } + break; + case 400: // Skip whitespace + if(Character.isWhitespace(c)) { + // Nothing to do + } else { + i--; + state = 0; + } + break; + } + } + return result.trim(); + } +} diff --git a/gov/epa/otaq/moves/common/ScriptTestSuite.java b/gov/epa/otaq/moves/common/ScriptTestSuite.java new file mode 100644 index 0000000..f02eea5 --- /dev/null +++ b/gov/epa/otaq/moves/common/ScriptTestSuite.java @@ -0,0 +1,214 @@ +/************************************************************************************************** + * @(#)ScriptTestSuite.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.File; +import java.lang.reflect.Constructor; +import java.util.*; + +import org.junit.runner.*; +import org.junit.runner.notification.*; +import junit.framework.*; +import abbot.Log; +import abbot.script.Script; +import junit.extensions.abbot.ScriptFixture; + +import static org.junit.Assert.*; + +/** + * Similar to Abbot's ScriptTestSuite, itself similar to TestSuite, except that it + * auto-generates a suite based on test scripts matching certain criteria. + * The directory given in the system property "abbot.testsuite.path" is scanned for + * XML files, each of which is expected to be an Abbot test script. +**/ +public class ScriptTestSuite extends TestSuite { + /** List of tests to be performed **/ + ArrayList tests = new ArrayList(); + /** List of file names (*.xml) corresponding to each of the tests to be performed **/ + ArrayList fileNames = new ArrayList(); + /** Directory to be scanned for test XML files **/ + File primaryDirectory; + + /** + * Constructs a suite of tests from all the scripts found in the + * directory specified by the system property "abbot.testsuite.path". + * The most common use for this constructor would be from an Ant 'junit' + * task, where the system property is defined for a given run. + * The suite will recurse directories if "abbot.testsuite.path.recurse" is + * set to true. + **/ + public ScriptTestSuite() { + super(ScriptFixture.class.getName()); + setup(System.getProperty("abbot.testsuite.path", + System.getProperty("user.dir")), + Boolean.getBoolean("abbot.testsuite.path.recurse")); + } + + /** + * Constructs a suite of tests from all the scripts found in the current + * directory. Does not recurse to subdirectories. The Class argument + * must be a subclass of junit.extensions.abbot.ScriptFixture. + **/ + public void setup() { + setup(System.getProperty("user.dir"), false); + } + + /** + * Constructs a suite of tests from all the scripts found in the given + * directory. Does not recurse to subdirectories. The Class argument + * must be a subclass of junit.extensions.abbot.ScriptFixture. + * @param dirname directory holding XML test scripts + **/ + public void setup(String dirname) { + setup(dirname, false); + } + + /** + * Constructs an ScriptTestSuite from all the scripts in the given + * directory, recursing if recurse is true. The Class argument + * must be a class derived from junit.extensions.abbot.ScriptFixture. + * @param dirname directory holding XML test scripts + * @param recurse true if subfolders under directory should be searched + **/ + public void setup(String dirname, boolean recurse) { + setup(findFilenames(dirname, recurse)); + primaryDirectory = new File(dirname); + if (!primaryDirectory.exists() || !primaryDirectory.isDirectory()) { + String msg = "Directory '" + dirname + "' did not exist" + + " when scanning for test scripts"; + tests.add(warningTest(msg)); + fileNames.add(msg); + } + } + + /** + * Constructs a suite of tests for each script given in the argument + * list, using the given class derived from ScriptFixture to wrap each + * script. + * @param filenames array of possible XML test files + **/ + public void setup(String[] filenames) { + primaryDirectory = new File(System.getProperty("user.dir")); + Log.debug("Loading with " + filenames.length + " files"); + for(int i=0;i < filenames.length;i++) { + File f = new File(filenames[i]); + // Filter for desired files only + if(!accept(f)) { + continue; + } + try { + ScriptFixture test = new ScriptFixture(f.getAbsolutePath()); + tests.add(test); + fileNames.add(f.getAbsolutePath()); + } catch(Throwable thr) { + Log.warn(thr); + String t = "Could not construct an instance of ScriptFixture"; + tests.add(warningTest(t)); + fileNames.add(t); + break; + } + } + if(tests.size() == 0) { + String t = "No scripts found"; + tests.add(warningTest(t)); + fileNames.add(t); + } + } + + /** + * Return whether to accept the given file. The default implementation + * omits common backup files. + * @param file possible XML test file + * @return true if the file can be used as a test script + **/ + public boolean accept(File file) { + String name = file.getName(); + boolean isXML = FileUtilities.getFileExtension(file,true).equalsIgnoreCase(".xml"); + return isXML && !name.startsWith(".#") + && !name.endsWith("~") + && !name.endsWith(".bak"); + } + + /** + * Returns a test which will fail and log a warning message. + * @param message message to be shown when the resulting Test is executed + * @return a Test object that will fail after showing the given message + **/ + private Test warningTest(final String message) { + return new TestCase("warning") { + protected void runTest() { + fail(message); + } + }; + } + + /** + * Add all test scripts in the given directory, optionally recursing to + * subdirectories. Returns a list of absolute paths. + * @param dir folder to be searched + * @param files list to be filled with file paths to be executed + * @return list of file paths to be executed. Is the same as the populated files + * parameter. + **/ + protected static ArrayList findTestScripts(File dir, ArrayList files, + boolean recurse) { + File[] flist = dir.listFiles(); + for(int i=0;flist != null && i < flist.length;i++) { + //Log.debug("Examining " + flist[i]); + if(flist[i].isDirectory()) { + if(recurse) { + findTestScripts(flist[i], files, recurse); + } + } else if(Script.isScript(flist[i])) { + String filename = flist[i].getAbsolutePath(); + if(!files.contains(filename)) { + Log.debug("Adding " + filename); + files.add(filename); + } + } + } + return files; + } + + /** + * Scan for test scripts and return an array of filenames for all scripts + * found. + * @param dirname directory to be scanned + * @param recurse true if subfolders under the directory should be searched + * @return array of file paths to be used + **/ + static String[] findFilenames(String dirname, boolean recurse) { + File dir = new File(dirname); + ArrayList list = new ArrayList(); + if(dir.exists() && dir.isDirectory()) { + findTestScripts(dir, list, recurse); + } + return (String[])list.toArray(new String[list.size()]); + } + + /** + * Execute all test cases + **/ + @org.junit.Test + public void runTests() { + System.out.println("Preparing to run " + tests.size() + " GUI tests"); + JUnitCore core = new JUnitCore(); + Iterator fi=fileNames.iterator(); + for(Iterator i=tests.iterator();i.hasNext() && fi.hasNext();) { + String fileName = fi.next(); + Result result = core.run(i.next()); + assertNotNull("No result object from test " + fileName,result); + List failures = result.getFailures(); + if(failures != null) { + for(Iterator j=failures.iterator();j.hasNext();) { + fail(j.next().toString()); + } + } + assertTrue("Got failure in GUI script " + fileName,result.wasSuccessful()); + } + } +} diff --git a/gov/epa/otaq/moves/common/StreamGobbler.java b/gov/epa/otaq/moves/common/StreamGobbler.java new file mode 100644 index 0000000..84dd41c --- /dev/null +++ b/gov/epa/otaq/moves/common/StreamGobbler.java @@ -0,0 +1,98 @@ +/************************************************************************************************** + * @(#)StreamGobbler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.IOException; +import java.io.OutputStream; +import java.io.PrintWriter; + +/** + * This class' purpose is to read the output streams from an exec'd process. The stream's data + * is thrown away, but this keeps the stream's buffer from filling and suspending the + * the exec'd process. + * + * @author Wes Faler based on Java Traps article by Michael Daconta + * @version 2009-03-16 +**/ +public class StreamGobbler extends Thread { + /** The InputStream to flush **/ + InputStream inputStream; + + /** A text description of the stream **/ + String streamDescription; + + /** The output stream to redirect data from inputStream to. **/ + OutputStream outputStream; + + /** + * Default Constructor + * @param inputStream The InputStream to read. + * @param streamDescription A text description of the stream + * @param outputStream The OutputStream to redirect data from inputStream to. + * This can be null if inputStream data should be discarded. + **/ + public StreamGobbler(InputStream inputStream, String streamDescription, + OutputStream outputStream) { + this.inputStream = inputStream; + this.streamDescription = streamDescription; + this.outputStream = outputStream; + } + + public void run() { + PrintWriter writer = null; + BufferedReader reader = null; + + try { + if(outputStream != null) { + writer = new PrintWriter(outputStream); + } else { + writer = null; + } + + InputStreamReader streamReader = new InputStreamReader(inputStream); + reader = new BufferedReader(streamReader); + + String line = null; + + while ((line = reader.readLine()) != null) { + if(writer != null) { + // Handle special case for Nonroad model since it outputs *so much* information + if(!line.equals("Initializing ...|") + && !line.equals("Initializing .../") + && !line.equals("Initializing ...-") + && !line.equals("Initializing ...\\")) { + writer.println(line); + } + } + } + } catch (IOException exception) { + /** + * @explain A separate program was started in order to handle part of the system + * processing but a connection to its inputs and outputs could not be made. + **/ + Logger.logError(exception,"Error handling I/O with launched process"); + } finally { + if(writer != null) { + try { + writer.flush(); + } catch(Exception e) { + // Nothing to do since it may be a non-issue + } + } + if(reader != null) { + try { + reader.close(); + } catch(Exception e) { + // Nothing to do since it may be a non-issue + } + } + } + } +} diff --git a/gov/epa/otaq/moves/common/StringComparatorIgnoreCase.java b/gov/epa/otaq/moves/common/StringComparatorIgnoreCase.java new file mode 100644 index 0000000..f7a2568 --- /dev/null +++ b/gov/epa/otaq/moves/common/StringComparatorIgnoreCase.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)StringComparatorIgnoreCase.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.Comparator; + +/** + * Compares Strings ignoring case. Useful for TreeSet and TreeMap objects keyed with + * String objects. + * + * @author Wesley Faler + * @version 2009-04-20 +**/ +public class StringComparatorIgnoreCase implements Comparator { + /** + * Compare to String objects ignoring case. + * @param s1 the first String to be compared. + * @param s2 the second String to be compared. + * @return a negative integer, zero, or a positive integer as the first + * argument is less than, equal to, or greater than the second. + **/ + public int compare(String s1,String s2) { + return s1.compareToIgnoreCase(s2); + } +} diff --git a/gov/epa/otaq/moves/common/StringComparatorIgnoreCaseTest.java b/gov/epa/otaq/moves/common/StringComparatorIgnoreCaseTest.java new file mode 100644 index 0000000..f714852 --- /dev/null +++ b/gov/epa/otaq/moves/common/StringComparatorIgnoreCaseTest.java @@ -0,0 +1,43 @@ +/************************************************************************************************** + * @(#)StringComparatorIgnoreCaseTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the StringComparatorIgnoreCaseTest class + * + * @author Cimulus + * @version 2004-01-14 +**/ +public class StringComparatorIgnoreCaseTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public StringComparatorIgnoreCaseTest(String name) { + super(name); + } + + /** + * Tests compare() + **/ + public void testCompare() { + StringComparatorIgnoreCase comparator = new StringComparatorIgnoreCase(); + + String s1 = "ABC"; + assertTrue("Case insensitive identity did not work",comparator.compare(s1,s1) == 0); + + String s2 = "abc"; + assertTrue("Case insensitive equality did not work",comparator.compare(s1,s2) == 0); + + String s3 = "xyz"; + assertTrue("Case insensitive ordering did not work",comparator.compare(s1,s3) < 0); + assertTrue("Case insensitive ordering did not work",comparator.compare(s3,s1) > 0); + } +} diff --git a/gov/epa/otaq/moves/common/StringUtilities.java b/gov/epa/otaq/moves/common/StringUtilities.java new file mode 100644 index 0000000..737bdc2 --- /dev/null +++ b/gov/epa/otaq/moves/common/StringUtilities.java @@ -0,0 +1,598 @@ +/************************************************************************************************** + * @(#)StringUtilities.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; + +/** + * Static class providing several general purpose methods for working with strings. + * + * @author Wesley Faler + * @version 2013-11-29 +**/ +public class StringUtilities { + /** + * Wraps a string at the specified length, with limited handling of embedded '\n' characters. + * @param inString The string to wrap. + * @param maxLineWidth The position to wrap at. + * @return The wrapped string. + **/ + public static String wrapString(String inString, int maxLineWidth) { + char[] bigText = inString.toCharArray(); + StringBuffer outBuffer = new StringBuffer(); + + int wordStart = 0, wordLength = 0; + int x = 0; + int i = 0; + int iMax = bigText.length; + boolean foundNewline; + boolean didReachEnd = false; + try { + while(true) { + foundNewline = false; + // Get next word + for(i=wordStart;i= maxLineWidth) && !foundNewline && !didReachEnd) { + x = 0; + outBuffer.append('\n'); + } + } else if(wordLength == maxLineWidth - x + 1 && bigText[i] == ' ') { + // Word ends with a space and without the space it would just fit + outBuffer.append(bigText, wordStart, wordLength-1); + x += wordLength - 1; + if((x >= maxLineWidth) && !didReachEnd) { + x = 0; + outBuffer.append('\n'); + } + } else if(wordLength == maxLineWidth - x + 1 && bigText[i] == '\n') { + // Word ends with a newline and without the newline it would just fit, + // so output the word and the newline + outBuffer.append(bigText, wordStart, wordLength); + } else if(wordLength >= maxLineWidth) { + // Word is too long anyway, so split it as many times as necessary + if(x > 0) { // if current line has character(s) + x = 0; + outBuffer.append('\n'); + } + i = 0; + while(i < wordLength) { + for(;x= maxLineWidth) { + x = 0; + if(bigText[wordStart+i-1] != '\n') { + outBuffer.append('\n'); + } + } + } + } else { // The word needs to be wrapped or split + // Move to the next line since all the data would still fit + x = 0; + outBuffer.append('\n'); + outBuffer.append(bigText, wordStart, wordLength); + x += wordLength; + if((x >= maxLineWidth) && !foundNewline && !didReachEnd) { + x = 0; + outBuffer.append('\n'); + } + } + if(foundNewline) { + x = 0; + } + if(didReachEnd) { + break; + } + wordStart += wordLength; + wordLength = 0; + } + } catch(Exception e) { + e.printStackTrace(); + /** @nonissue **/ + System.out.println("iMax = " + iMax + ", wordStart = " + wordStart + ", wordLength = " + + wordLength + ", x = " + x + ", i = " + i); + return inString; + } + return outBuffer.toString(); + } + + /** + * Ensures that null String objects are treated as empty strings. + * @param inString The input String object to check. + * @return Returns the input String if non-null, other returns an empty String object. + **/ + public static String safeGetString(String inString) { + if(inString != null) { + return inString; + } + return new String(""); + } + + /** + * Safely calls Object.toString(). + * @param inObject The input Object to check. + * @return Returns Object.toString() if non-null, other returns an empty String object. + **/ + public static String safeGetString(Object inObject) { + if(inObject != null) { + return inObject.toString(); + } + return new String(""); + } + + /** + * Compare two Strings, either of which may be null. + * @param left leftmost string to compare + * @param right rightmost string to compare + * @return Results of String.compareTo equivalent to left.compareTo(right) + **/ + public static int compare(String left, String right) { + return safeGetString(left).compareTo(safeGetString(right)); + } + + /** + * Gets a substring starting at a given index, tolerating null inputs and out of bound + * conditions. + * @param text text to be examined + * @param beginIndex 0-based index of the first character to be retrieved + * @return text.substring(beginIndex) unless text is null or beginIndex would be out + * of range, in which case an empty non-null String is returned. + **/ + public static String substring(String text, int beginIndex) { + if(text == null || beginIndex > text.length()) { + return ""; + } + return text.substring(beginIndex); + } + + /** + * Gets a substring starting at a given index, tolerating null inputs and out of bound + * conditions. + * @param text text to be examined + * @param beginIndex 0-based index of the first character to be retrieved + * @return text.substring(beginIndex) unless text is null or beginIndex would be out + * of range, in which case an empty non-null String is returned. + **/ + public static String substring(String text, int beginIndex, int endIndex) { + if(text == null || beginIndex > text.length()) { + return ""; + } + if(endIndex >= text.length()) { + return text.substring(beginIndex); + } + return text.substring(beginIndex,endIndex); + } + + /** + * Helper function to determine if a String is all whitespace. Used since String.trim() + * doesn't seem to trim out CRLF chars as the docs indicate. + * @param test The String to trim whitespace off of. + * @return true if the specified string is whitespace only. + **/ + public static boolean isWhitespace(String test) { + for(int i = 0; i < test.length(); i++) { + if(!Character.isWhitespace(test.charAt(i))) { + return false; + } + } + return true; + } + + /** + * Create a string that has leading zeros, such as those used with dates for months + * and day ("2003-04-26"). + * @param value value to represent as a string + * @param howManyDigits the maximum number of characters to be returned + * @return string that is howManyDigits long and filled with zeros on the left side + **/ + public static String getLeadingZeroPaddedString(int value,int howManyDigits) { + String result = "0000000"; + while(result.length() < howManyDigits) { + result += "0000000"; + } + result += value; + return result.substring(result.length()-howManyDigits); + } + + /** Utility string used for numeric padding **/ + static final String zeroPadding = "00000000000000000000"; // 20 zeros + //12345678901234567890 + // 1 2 + + /** Utility string used for space padding **/ + static final String spacePadding = " "; // 20 spaces + //12345678901234567890 + // 1 2 + + /** + * Place leading zeros on a number, making a specific field width + * @param number value to be converted and left padded with zeros + * @param length length to extend or clip the number and its zeros to + * @return text padded with zeros or clipped to be exactly length characters + **/ + public static String leftZeroPad(int number, int length) { + String text = "" + number; + if(text.length() == length) { + return text; + } else if(text.length() < length) { + String result = text; + while(result.length() < length) { + int lengthToAdd = length - result.length(); + if(lengthToAdd >= zeroPadding.length()) { + result = zeroPadding + result; + } else { + result = zeroPadding.substring(0,lengthToAdd) + result; + break; + } + } + return result; + } else { + return text.substring(0,length); + } + } + + /** + * Place leading spaces on a number, making a specific field width + * @param number value to be converted and left padded with spaces + * @param length length to extend or clip the number and its spaces to + * @return text padded with spaces or clipped to be exactly length characters + **/ + public static String leftSpacePad(int number, int length) { + String text = "" + number; + if(text.length() == length) { + return text; + } else if(text.length() < length) { + String result = text; + while(result.length() < length) { + int lengthToAdd = length - result.length(); + if(lengthToAdd >= spacePadding.length()) { + result = spacePadding + result; + } else { + result = spacePadding.substring(0,lengthToAdd) + result; + break; + } + } + return result; + } else { + return text.substring(0,length); + } + } + + /** + * Place trailing spaces on text, making a specific field width + * @param text value to be padded + * @param length length to extend or clip the text and its spaces to + * @return text padded with spaces or clipped to be exactly length characters + **/ + public static String rightSpacePad(String text, int length) { + if(text.length() == length) { + return text; + } else if(text.length() < length) { + String result = text; + while(result.length() < length) { + int lengthToAdd = length - result.length(); + if(lengthToAdd >= spacePadding.length()) { + result += spacePadding; + } else { + result += spacePadding.substring(0,lengthToAdd); + break; + } + } + return result; + } else { + return text.substring(0,length); + } + } + + /** + * Get the current date and time in a format suitable for embedding into file names. + * @return current date and time in format: yymmdd_hhMMss + **/ + public static String datetimeForFileName() { + Calendar c = Calendar.getInstance(); + return (leftZeroPad(c.get(Calendar.YEAR),4).substring(2)) + + leftZeroPad(c.get(Calendar.MONTH)+1,2) + + leftZeroPad(c.get(Calendar.DAY_OF_MONTH),2) + + "_" + + leftZeroPad(c.get(Calendar.HOUR_OF_DAY),2) + + leftZeroPad(c.get(Calendar.MINUTE),2) + + leftZeroPad(c.get(Calendar.SECOND),2); + } + + /** + * Replace placeholder text within a String with desired values. + * @param input text with replacable pieces + * @param replacements pairs of [original text, new text] Strings to be searched for + * and inserted into input, replacing the original text whereever found. + * @return String with placeholders replaced with their values. + **/ + public static String doReplacements(String input,TreeMapIgnoreCase replacements) { + String result = input; + String lowerCaseResult = input.toLowerCase(); + + boolean done = false; + while(!done) { + done = true; + Set keys = replacements.keySet(); + for(Iterator k=keys.iterator();k.hasNext();) { + String key = ((String)k.next()).toLowerCase(); + String value = (String)replacements.get(key); + + int index = lowerCaseResult.indexOf(key); + if(index >= 0) { + if(index > 0) { + result = result.substring(0,index) + + value + result.substring(index+key.length()); + lowerCaseResult = lowerCaseResult.substring(0,index) + + value + lowerCaseResult.substring(index+key.length()); + } else { + result = value + result.substring(index+key.length()); + lowerCaseResult = value + lowerCaseResult.substring(index+key.length()); + } + done = false; + } + } + } + return result; + } + + /** + * Replace all occurences of a substring within a String with a new substring. + * @param input text with replacable pieces + * @param searchFor substring to find + * @param replaceWith substring that should replace searchFor + * @return String with searchFor replaced with replaceWith + **/ + public static String replace(String input,String searchFor,String replaceWith) { + String result = input; + String lowerCaseResult = input.toLowerCase(); + String lowerCaseSearchFor = searchFor.toLowerCase(); + + boolean done = false; + while(!done) { + done = true; + int index = lowerCaseResult.indexOf(lowerCaseSearchFor); + if(index >= 0) { + if(index > 0) { + result = result.substring(0,index) + + replaceWith + result.substring(index+searchFor.length()); + lowerCaseResult = lowerCaseResult.substring(0,index) + + replaceWith + lowerCaseResult.substring(index+searchFor.length()); + } else { + result = replaceWith + result.substring(index+searchFor.length()); + lowerCaseResult = replaceWith + + lowerCaseResult.substring(index+searchFor.length()); + } + done = false; + } + } + return result; + } + + /** + * Find the comma-separated parts of a text string, removing embedded quotes if found. + * @param text comma-separated-values + * @param separator known delimiter, or 0 (not '0', but 0) if unknown + * @return list of values, may be empty but never null. + **/ + public static ArrayList splitCSVremovingQuotes(String text, char separator) { + boolean hasData = false; + StringBuffer builder = new StringBuffer(500); + ArrayList parts = new ArrayList(); + int state = 0, quoteStartIndex = -1, dataStartIndex = 0; + char[] chars = text.toCharArray(); + for(int i=0;i 0) { + parts.add(builder.toString()); + } + return parts; + } + + /** + * Determine if there is a separator character following a likely close quote in a CSV format. + * If there is no separator, then the quotation mark is likely not a close quote but rather part + * of the data. Separators must follow either immediately or may have any amount of whitespace. + * @param chars CSV data being examined + * @param currentIndex index of the close quote + * @param currentSeparator the separator character to find or 0 if unknown (as will occur in the + * first entry on a CSV line) + * @return true if there is a following separator, including the end of data, false otherwise. + **/ + private static boolean hasFollowingSeparator(char[] chars,int currentIndex,char currentSeparator) { + for(int i=currentIndex+1;i items) { + String result = ""; + for(Iterator i=items.iterator();i.hasNext();) { + if(result.length() > 0) { + result += ","; + } + result += i.next(); + } + return result; + } + + /** + * Create a comma separated list of values. + * @param items values to use + * @return comma separated list of values, empty if items is empty + **/ + public static String getCSVGeneric(TreeSet items) { + String result = ""; + for(Iterator i=items.iterator();i.hasNext();) { + if(result.length() > 0) { + result += ","; + } + result += i.next().toString(); + } + return result; + } +} diff --git a/gov/epa/otaq/moves/common/StringUtilitiesTest.java b/gov/epa/otaq/moves/common/StringUtilitiesTest.java new file mode 100644 index 0000000..3749738 --- /dev/null +++ b/gov/epa/otaq/moves/common/StringUtilitiesTest.java @@ -0,0 +1,209 @@ +/************************************************************************************************** + * @(#)StringUtilitiesTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import junit.framework.*; +import java.util.TreeMap; + +/** + * Test Case for the StringUtilities class + * + * @author wfaler + * @version 2008-12-10 +**/ +public class StringUtilitiesTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public StringUtilitiesTest(String name) { + super(name); + } + + /** Tests the wrapString function. **/ + public void testWrapString() { + String wrappedString; + + wrappedString = StringUtilities.wrapString( + "abcde fghi jkl mn o pqrstuvwxyz1234567890 !@#", 5); + assertTrue("Test 1 (with no dashes and no embedded newlines) failed.", + wrappedString.compareTo( + "abcde\nfghi \njkl \nmn o \npqrst\nuvwxy\nz1234\n56789\n0 !@#") == 0); + + wrappedString = StringUtilities.wrapString( + "abc-de fghi jkl mn o pqrstuvw-xyz1234567890 !@#", 5); + assertTrue("Test 2 (with dashes and no embedded newlines) failed.", + wrappedString.compareTo("abc-\nde \nfghi \njkl \nmn o " + + "\npqrst\nuvw-\nxyz12\n34567\n890 \n!@#") == 0); + + wrappedString = StringUtilities.wrapString("abc\nde fghijklmnop", 5); + assertTrue("Test 3 (with no dashes and one embedded newline) failed.", + wrappedString.compareTo("abc\nde \nfghij\nklmno\np") == 0); + + wrappedString = StringUtilities.wrapString("abcde\nf\ng\nhijk\nlmn\nop\nq\n", 5); + assertTrue("Test 4 (with no dashes and multiple embedded newlines) failed.", + wrappedString.compareTo("abcde\nf\ng\nhijk\nlmn\nop\nq\n") == 0); + } + + /** Tests the safeGetString function. **/ + public void testSafeGetString() { + String string1 = null; + assertTrue("Returned null, but should have returned \"\".", + StringUtilities.safeGetString(string1) != null); + assertTrue("Did not return \"\"." + , StringUtilities.safeGetString(string1).compareTo("") == 0); + + String string2 = "ABcd"; + assertTrue("Return value did not match in string, even though in string was non-null.", + StringUtilities.safeGetString(string2) == "ABcd"); + assertTrue("Return value did not match in string, even though in string was non-null.", + StringUtilities.safeGetString("EFG") == "EFG"); + assertTrue("Return value did not match in string, even though in string was non-null.", + StringUtilities.safeGetString("EFG").compareTo("EFG") == 0); + } + + /** Tests the safeGetString function when passing an Object as the input param. **/ + public void testSafeGetStringFromObject() { + // Test valid object + Integer testInteger = new Integer(42); + String result = StringUtilities.safeGetString(testInteger); + assertTrue(result.compareTo("42") == 0); + // Test null object + testInteger = null; + result = StringUtilities.safeGetString(testInteger); + assertTrue(result.compareTo("") == 0); + } + + /** Tests substring() **/ + public void testSubstring() { + assertTrue(StringUtilities.substring("abcdef",4).equals("ef")); + assertTrue(StringUtilities.substring("abcdef",40).equals("")); + assertTrue(StringUtilities.substring("abcdef",0,4).equals("abcd")); + assertTrue(StringUtilities.substring("abcdef",4,5).equals("e")); + assertTrue(StringUtilities.substring("abcdef",4,10).equals("ef")); + } + + /** Tests isWhitespace() **/ + public void testIsWhitespace() { + assertTrue(StringUtilities.isWhitespace("")); + assertTrue(StringUtilities.isWhitespace(" ")); + assertTrue(StringUtilities.isWhitespace(" \t\r\n")); + assertTrue(!StringUtilities.isWhitespace("x \t\r\n")); + assertTrue(!StringUtilities.isWhitespace("abcdedf ")); + assertTrue(!StringUtilities.isWhitespace("\t\r\ntest")); + } + + /** Tests getLeadingZeroPaddedString() **/ + public void testGetLeadingZeroPaddedString() { + assertTrue(StringUtilities.getLeadingZeroPaddedString(314,3).equals("314")); + assertTrue(StringUtilities.getLeadingZeroPaddedString(314,4).equals("0314")); + assertTrue(StringUtilities.getLeadingZeroPaddedString(314,5).equals("00314")); + assertTrue(StringUtilities.getLeadingZeroPaddedString(314,10).equals("0000000314")); + } + + /** Tests doReplacements() **/ + public void testDoReplacements() { + String input = "abc ##def## ghi ##jkl## mno"; + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + replacements.put("##def##","ONE"); + replacements.put("##JKL##","TWO"); + replacements.put("NOMATCH","333"); + + String expectedOutput = "abc ONE ghi TWO mno"; + String output = StringUtilities.doReplacements(input,replacements); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests replace() **/ + public void testReplace() { + String input = "abc ##def## ghi ##jkl## mno"; + String expectedOutput = "abc ONE ghi ##jkl## mno"; + String output = StringUtilities.replace(input,"##DEF##","ONE"); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests leftSpacePad **/ + public void testLeftSpacePad1() { + int input = 3; + String expectedOutput = "3"; + String output = StringUtilities.leftSpacePad(input,1); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests leftSpacePad **/ + public void testLeftSpacePad2() { + int input = 3; + String expectedOutput = " 3"; + String output = StringUtilities.leftSpacePad(input,2); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests leftSpacePad **/ + public void testLeftSpacePad3() { + int input = 3000; + String expectedOutput = "30"; + String output = StringUtilities.leftSpacePad(input,2); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests rightSpacePad **/ + public void testRightSpacePad1() { + String input = "test"; + String expectedOutput = "test "; + String output = StringUtilities.rightSpacePad(input,8); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests rightSpacePad **/ + public void testRightSpacePad2() { + String input = "test"; + String expectedOutput = "te"; + String output = StringUtilities.rightSpacePad(input,2); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests rightSpacePad **/ + public void testRightSpacePad3() { + String input = "test"; + String expectedOutput = "test"; + String output = StringUtilities.rightSpacePad(input,4); + assertTrue(output.equals(expectedOutput)); + } + + /** Tests stringToBoolean **/ + public void testStringToBoolean() { + assertTrue("Failed stringToBoolean(T)",StringUtilities.stringToBoolean("T")); + assertTrue("Failed stringToBoolean(True)",StringUtilities.stringToBoolean("True")); + assertTrue("Failed stringToBoolean(Y)",StringUtilities.stringToBoolean("Y")); + assertTrue("Failed stringToBoolean(Yes)",StringUtilities.stringToBoolean("Yes")); + assertTrue("Failed stringToBoolean(y)",StringUtilities.stringToBoolean("y")); + assertTrue("Failed stringToBoolean(1)",StringUtilities.stringToBoolean("1")); + assertTrue("Failed stringToBoolean(-)",StringUtilities.stringToBoolean("-1")); + + assertTrue("Failed stringToBoolean(null)",!StringUtilities.stringToBoolean(null)); + assertTrue("Failed stringToBoolean()",!StringUtilities.stringToBoolean("")); + assertTrue("Failed stringToBoolean( )",!StringUtilities.stringToBoolean(" ")); + assertTrue("Failed stringToBoolean(N)",!StringUtilities.stringToBoolean("N")); + assertTrue("Failed stringToBoolean(No)",!StringUtilities.stringToBoolean("No")); + assertTrue("Failed stringToBoolean(3)",!StringUtilities.stringToBoolean("3")); + assertTrue("Failed stringToBoolean(0)",!StringUtilities.stringToBoolean("0")); + } + + /** Tests isDigits **/ + public void testIsDigits() { + assertTrue("Failed isDigits(123)",StringUtilities.isDigits("123")); + assertTrue("Failed isDigits(ABC)",!StringUtilities.isDigits("ABC")); + assertTrue("Failed isDigits(\"\")",!StringUtilities.isDigits("")); + assertTrue("Failed isDigits(null)",!StringUtilities.isDigits(null)); + assertTrue("Failed isDigits(1 2 3)",!StringUtilities.isDigits("1 2 3")); + assertTrue("Failed isDigits(123 )",StringUtilities.isDigits("123 ")); + assertTrue("Failed isDigits( 123)",StringUtilities.isDigits(" 123")); + assertTrue("Failed isDigits( 123 )",StringUtilities.isDigits(" 123 ")); + assertTrue("Failed isDigits(123A)",!StringUtilities.isDigits("123A")); + } +} diff --git a/gov/epa/otaq/moves/common/TaggedSQLRunner.java b/gov/epa/otaq/moves/common/TaggedSQLRunner.java new file mode 100644 index 0000000..5548c28 --- /dev/null +++ b/gov/epa/otaq/moves/common/TaggedSQLRunner.java @@ -0,0 +1,442 @@ +/************************************************************************************************** + * @(#)TaggedSQLRunner.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.sql.*; +import java.util.*; +import java.util.concurrent.*; + +/** + * Execute multiple SQL statements in parallel using a thread pool. + * + * @author Wesley Faler + * @version 2014-07-23 +**/ +public class TaggedSQLRunner { + /** Source and sink for database connections **/ + public static interface ConnectionProvider { + /** + * Obtain a connection. + * @returns a Connection to be used or null upon error + **/ + public Connection checkOutConnection(); + + /** + * Return a connection. + * @param c Connection object to be returned, never null. + **/ + public void checkInConnection(Connection c); + } + + /** Execute an override instead of SQL **/ + public static interface OverrideHandler { + /** + * Attempt to do custom calculations instead of a SQL statement. + * @param db database connection + * @param sql sql statement + * @param data1 external data that may be meaningful to the override handler + * @param data2 external data that may be meaningful to the override handler + * @return true if the statement was handled, false to execute the SQL + * @throws Exception if anything goes wrong + **/ + public boolean onOverrideSQL(Connection db,String sql,Object data1,Object data2) throws Exception; + } + + static class StatementEntry { + String sql; + Object data1; + Object data2; + + StatementEntry(String sqlToUse, Object data1ToUse, Object data2ToUse) { + sql = sqlToUse; + data1 = data1ToUse; + data2 = data2ToUse; + } + } + + /** maximum number of connections to be used **/ + public int absoluteMaximumConnections = 4; + /** source of database connections **/ + ConnectionProvider connectionProvider; + /** handles optional overrides **/ + OverrideHandler overrideHandler; + /** queue of exceptions experienced by executing threads **/ + ArrayList exceptions = new ArrayList(); + /** True if there were ever queued exceptions, even if they have been handled **/ + boolean hadExceptions = false; + /** Open connections, ready to be used **/ + ArrayList connections = new ArrayList(); + /** Thread pool service **/ + ExecutorService sqlExecutor = null; + /** Currently running tasks **/ + ArrayList tasks = new ArrayList(); + /** All queued statements, keyed by context **/ + TreeMap> allStatements = new TreeMap>(); + /** All queued contexts **/ + TreeSet contexts = new TreeSet(); + /** true to override contexts and use the maximum number of contexts **/ + public boolean maximizeConcurrency = false; + + public static class ConcurrencyStatistics { + public int count = 0; + public int maxCount = 0; + + public int totalCount = 0; + public int observations = 0; + + public synchronized void statementStarting() { + count++; + if(count > maxCount) { + maxCount = count; + } + totalCount += count; + observations++; + } + + public synchronized void statementDone() { + count--; + } + + public void print() { + Logger.log(LogMessageCategory.INFO,"Statements done: " + observations); + if(observations > 0) { + Logger.log(LogMessageCategory.INFO,"Avg. Concurrent Statements: " + ((double)totalCount)/((double)observations)); + } + Logger.log(LogMessageCategory.INFO,"Max. Concurrent Statements: " + maxCount); + } + } + + public ConcurrencyStatistics stats = new ConcurrencyStatistics(); + + static class SQLTask implements Runnable { + TaggedSQLRunner owner; + String context; + + public SQLTask(TaggedSQLRunner ownerToUse, String contextToUse) { + owner = ownerToUse; + context = contextToUse; + } + + public void run() { + if(context == null) { + return; + } + Connection db = null; + boolean hasOpenStatement = false; + StatementEntry entry = null; + String sql = ""; + try { + try { + int howManyStatementsDone = 0; + int howManyStatementsTotal = -1; + while(true) { + if(db == null) { + db = owner.checkOutConnection(); + } + synchronized(owner.exceptions) { + if(owner.hadExceptions) { + return; + } + } + entry = null; + sql = ""; + synchronized(owner.allStatements) { + ArrayList queue = owner.allStatements.get(context); + if(queue != null && queue.size() > 0) { + if(howManyStatementsTotal < 0) { + howManyStatementsTotal = queue.size(); + } + entry = queue.get(0); + sql = entry.sql; + howManyStatementsDone++; + Logger.log(LogMessageCategory.INFO,"Running Statement: " + context + ": " + howManyStatementsDone + " of " + howManyStatementsTotal); + queue.remove(0); + } + } + if(entry == null || sql == null || sql.length() <= 0) { // If there is nothing more to do, then quit + return; + } + synchronized(owner.exceptions) { + if(owner.hadExceptions) { + return; + } + } + owner.stats.statementStarting(); + hasOpenStatement = true; + //Logger.log(LogMessageCategory.INFO,"Running: " + hashCode() + ": " + context + ": " + StringUtilities.substring(sql,0,100)); + if(owner.overrideHandler != null) { + if(owner.overrideHandler.onOverrideSQL(db,sql,entry.data1,entry.data2)) { + entry = null; + } + } + if(entry != null) { + SQLRunner.executeSQL(db,sql); + } + hasOpenStatement = false; + owner.stats.statementDone(); + } + } catch(Exception e) { +// e.printStackTrace(); + synchronized(owner.exceptions) { + owner.exceptions.add(e); + owner.hadExceptions = true; + Logger.log(LogMessageCategory.INFO,"" + hashCode() + ": " + context + ": " + e.getMessage()); + Logger.log(LogMessageCategory.INFO,"ERROR executing: " + hashCode() + ": " + context + ": " + sql); } + return; + } + } finally { + if(hasOpenStatement) { + hasOpenStatement = false; + owner.stats.statementDone(); + } + if(db != null) { + owner.checkInConnection(db); + db = null; + } + synchronized(owner.tasks) { + owner.tasks.remove(this); + } + synchronized(owner) { + owner.notifyAll(); + } + } + } + } + + /** + * Constructor + * @param connectionProviderToUse provide source and sink for connections + **/ + public TaggedSQLRunner(ConnectionProvider connectionProviderToUse, + OverrideHandler overrideHandlerToUse) { + connectionProvider = connectionProviderToUse; + overrideHandler = overrideHandlerToUse; + } + + /** + * Clear any pending SQL statements + **/ + public void clear() { + allStatements.clear(); + contexts.clear(); + } + + /** + * Add a SQL statement to the graph, executing the statements + * if enough have been accumulated. + * @param context logical context in which the statement should be enqueued + * @param sql statement to be added + * @throws Exception if any statement has a problem + **/ + public void add(String context, String sql) throws Exception { + add(context,sql,null,null); + } + + /** + * Add a SQL statement to the graph, executing the statements + * if enough have been accumulated. + * @param context logical context in which the statement should be enqueued + * @param sql statement to be added + * @param data1 external data that may be meaningful to the override handler + * @param data2 external data that may be meaningful to the override handler + * @throws Exception if any statement has a problem + **/ + public void add(String context, String sql, Object data1, Object data2) throws Exception { + if(maximizeConcurrency) { + context = "#MAX"; + } + if(context == null) { + context = "#ALL"; + } else { + context = context.toUpperCase(); + } + try { + contexts.add(context); + ArrayList queue = allStatements.get(context); + if(queue == null) { + queue = new ArrayList(); + allStatements.put(context,queue); + } + queue.add(new StatementEntry(sql,data1,data2)); + //Logger.log(LogMessageCategory.INFO,"Queued: " + context + ": " + StringUtilities.substring(sql,0,100)); + } catch(Exception e) { + Logger.log(LogMessageCategory.INFO,sql); + throw e; + } + } + + /** + * Executes the queued statements. + * @throws Exception if any statement has a problem + **/ + public void execute() throws Exception { + throwQueuedException(); + hadExceptions = false; + exceptions.clear(); + tasks.clear(); + if(contexts.size() <= 0 || allStatements.size() <= 0) { + return; + } + + int maximumConcurrentStatements = Math.min(contexts.size(),absoluteMaximumConnections); + if(maximizeConcurrency) { + maximumConcurrentStatements = absoluteMaximumConnections; + } + // Ensure we have database connections already pooled + synchronized(connections) { + while(connections.size() < maximumConcurrentStatements) { + checkInConnection(checkOutConnectionCore()); + } + } + + // Create the thread pool + if(sqlExecutor == null) { + sqlExecutor = Executors.newFixedThreadPool(maximumConcurrentStatements); + } + + // Initiate the thread pool + if(maximizeConcurrency) { + for(int i=0;i i=tasks.iterator();i.hasNext();) { + sqlExecutor.execute(i.next()); + } + } + while(true) { + wait(100); + synchronized(tasks) { + if(tasks.isEmpty()) { + break; + } + } + } + } + // Throw any exceptions that happened on child threads + try { + throwQueuedException(); + } catch(Exception e) { + internalClose(); + throw e; + } + + // Start clean with the next set of add'd statements + allStatements.clear(); + contexts.clear(); + } + + /** + * Close all connections and statements without waiting for completion of all queued statements, though + * any statements in progress will be waited upon. + * @throws Exception if any statement has a problem + **/ + public void close() throws Exception { + internalClose(); + throwQueuedException(); + } + + /** Called to totally stop any processing and close all database connections. **/ + public void onFinally() { + internalClose(); + } + + /** + * Stop all processing and close all database connections. + **/ + private void internalClose() { + // Stop the thread pool + if(sqlExecutor != null) { + sqlExecutor.shutdown(); + try { + if(!sqlExecutor.awaitTermination(60,TimeUnit.SECONDS)) { + sqlExecutor.shutdownNow(); + sqlExecutor.awaitTermination(30,TimeUnit.SECONDS); + } + } catch(InterruptedException e) { + // Nothing to do here + } + sqlExecutor = null; + } + + // Close all database connections + synchronized(connections) { + for(Iterator i=connections.iterator();i.hasNext();) { + Connection db = i.next(); + connectionProvider.checkInConnection(db); + } + connections.clear(); + } + + // Remove any statements + allStatements.clear(); + contexts.clear(); + } + + /** + * Throw the first queued exception, if any. + * @throws the first queued exception, if any. + **/ + private void throwQueuedException() throws Exception { + synchronized(exceptions) { + if(!exceptions.isEmpty()) { + Exception e = exceptions.remove(0); + throw e; + } + } + } + + /** + * Open a connection to the database, recycling a previously open connection if possible. + * @throws Exception if unable to obtain a database connection + **/ + public Connection checkOutConnection() throws Exception { + synchronized(connections) { + if(connections.size() > 0) { + return connections.remove(0); + } + } + return checkOutConnectionCore(); + } + + /** + * Open a connection to the database, recycling a previously open connection if possible. + * @throws Exception if unable to obtain a database connection + **/ + private Connection checkOutConnectionCore() throws Exception { + Connection db = connectionProvider.checkOutConnection(); + if(db == null) { + throw new SQLException("Did not get connection from DatabaseSelection.openConnection"); + } + return db; + } + + /** + * Return an open connection to the pool of available connections. + * @param db connection to be returned + **/ + public void checkInConnection(Connection db) { + if(db != null) { + synchronized(connections) { + connections.add(db); + } + } + } +} diff --git a/gov/epa/otaq/moves/common/TemporaryFileManager.java b/gov/epa/otaq/moves/common/TemporaryFileManager.java new file mode 100644 index 0000000..57d8ec9 --- /dev/null +++ b/gov/epa/otaq/moves/common/TemporaryFileManager.java @@ -0,0 +1,281 @@ +/************************************************************************************************** + * @(#)TemporaryFileManager.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; + +/** + * Create, destroy, and otherwise manage temporary files and folders. Use in place of + * File.createTempFile(). + * + * @author Wesley Faler + * @version 2009-09-06 +**/ +public class TemporaryFileManager { + /** Mutex used to synchronize access to variables **/ + private static Integer mutex = new Integer(42); + /** Folder to hold all temporary folders and files **/ + private static File workingFolder = null; + /** Number of file name collisions, used to add uniqueness to names **/ + private static long collisionCounter = 0; + + /** A folder to be deleted in the future **/ + private static class FolderToDelete { + public File folder; + public int attemptNumber = 0; + public long whenNextAttempt = 0; + + public FolderToDelete(File folderToUse) { + folder = folderToUse; + whenNextAttempt = 30*1000+System.currentTimeMillis(); + } + } + /** folders to be deleted in the future **/ + private static ArrayList foldersToDelete = new ArrayList(); + + /** + * Creates a new temporary folder with the given name prefix. + * @param parentFolder The path to the parent folder to create the directory in. null is + * acceptable (will use system temporary directory) + * @param namePrefix The naming prefix of the temporary folder. This is required. + * @return The path to the new temporary folder. This will be null on error. + **/ + public static File createTemporaryFolder(File parentFolder, String namePrefix) { + synchronized(mutex) { + setup(); + doDeletions(false); + + File folder = parentFolder == null? workingFolder : parentFolder; + Exception lastError = null; + boolean isFirst = true; + for(long attempt=0;attempt<100;attempt++) { + try { + String name = isFirst? namePrefix : (namePrefix + collisionCounter); + isFirst = false; + File f = new File(folder,name); + if(f.exists()) { + collisionCounter++; + attempt--; // this is not a failed attempt + continue; + } + if(f.mkdirs()) { + return f; + } + // This is a failed attempt since the folder did not exist but couldn't + // be created. + } catch(Exception e) { + lastError = e; + } + } + if(lastError != null) { + Logger.logError(lastError,"Unable to create temporary folder"); + } + return null; + } + } + + /** + * Deletes the contents (non-recursive) of a temporary folder and then deletes the folder + * itself. This currently does NOT recursively delete sub-directories. Errors messages are + * logged but exceptions aren't thrown. + * @param targetFolder The folder to be deleted. + * @return Was the folder successfully immediately deleted. + **/ + public static boolean deleteTemporaryFolder(File targetFolder) { + synchronized(mutex) { + setup(); + doDeletions(false); + + if(!deleteTemporaryFolderCore(targetFolder,false)) { + // Schedule the folder for deletion + foldersToDelete.add(new FolderToDelete(targetFolder)); + return false; + } + return true; + } + } + + /** + * Delete any files and folders schedule for deletion. Items that cannot be removed + * are scheduled for future deletion according to an escalating scale. Some virus checkers + * may be examining MOVES files long after MOVES has finished with the files, thus + * preventing deletion. Files and folders that take too long to be removed are set with + * Java's deleteOnExit() flag in a last hope of removing them. + * @param shouldForceDeletion true if anything not immediately deleted should be flagged + * for deletion upon exit of the JVM. This is set to true during shutdown of GUIs or + * engines. + **/ + public static void doDeletions(boolean shouldForceDeletion) { + synchronized(mutex) { + long now = System.currentTimeMillis(); + long next = 10*1000+now; + // Call deleteTemporaryFolderCore for each scheduled folder that has reached its + // scheduled time to be deleted. If shouldForDeletion is true, match every folder + // not just those whose time has arrived. + for(int i=0;i= 10) { + // If we've tried enough times, just mark the folder + // and move on. + deleteTemporaryFolderCore(f.folder,true); + f.folder = null; + } else { + f.whenNextAttempt = next; + } + } + } + if(f.folder == null) { // If the folder is no longer being tracked... + foldersToDelete.remove(i); + i--; + } + } + } + } + + /** + * Establish the working folder to be used if not already created. + **/ + private static void setup() { + setup(null); + } + + /** + * Establish the working folder to be used if not already created. + * @param baseFolder optional folder to hold the temporary folder, may be null + **/ + public static void setup(File baseFolder) { + synchronized(mutex) { + if(workingFolder != null) { + return; + } + String name = "MOVESTemporary"; + int attempt = 0; + File w = null; + for(;attempt<1000;attempt++) { + try { + if(attempt == 0) { + if(baseFolder == null) { + w = new File("MOVESTemporary"); + } else { + w = new File(baseFolder, "MOVESTemporary"); + } + } else { + if(baseFolder == null) { + w = new File("MOVESTemporary_" + attempt); + } else { + w = new File(baseFolder, "MOVESTemporary_" + attempt); + } + } + if(w.exists() && !w.isDirectory()) { + FileUtilities.deleteFileWithRetry(w); + if(w.exists()) { + if(attempt == 0) { + /** + * @issue MOVESTemporary found as a file but should be a folder. + * @explain MOVES uses a folder named MOVESTemporary. A file with that + * name was found and could not be removed. + **/ + Logger.log(LogMessageCategory.ERROR, + "MOVESTemporary found as a file but should be a folder."); + } + continue; + } + } + if(!w.exists()) { + w.mkdir(); + if(!w.exists()) { + if(attempt == 0) { + /** + * @issue Unable to create MOVESTemporary folder. + * @explain MOVES uses a folder named MOVESTemporary but was unable + * to create it. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to create MOVESTemporary folder."); + } + continue; + } + } + workingFolder = w; + /** + * @issue Folder for temporary files: [filepath] + * @explain MOVES uses many short-lived temporary files and folders during + * processing. This is their location. + **/ + Logger.log(LogMessageCategory.INFO,"Folder for temporary files: " + + workingFolder.getCanonicalPath()); + break; + } catch(Exception e) { + Logger.logError(e,"Error setting up temporary files, trying again."); + } + } + } + } + + /** + * Deletes the contents (non-recursive) of a temporary folder and then deletes the folder + * itself. This currently does NOT recursively delete sub-directories. Errors messages are + * not logged and exceptions aren't thrown. + * @param targetFolder The folder to be deleted. + * @param shouldDeleteOnExit true if anything that can't be deleted should be flagged as + * deleteOnExit(). + * @return Was the folder successfully immediately deleted. false will returned even if the + * folder was marked for deleteOnExit(). + **/ + private static boolean deleteTemporaryFolderCore(File targetFolder, + boolean shouldDeleteOnExit) { + synchronized(mutex) { + File[] folderContents = targetFolder.listFiles(); + + for (int i = 0; i < folderContents.length; i++) { + if(!folderContents[i].delete()) { + if(shouldDeleteOnExit) { + /** + * @issue Failed to delete file in temporary folder: [fileName] + * @explain MOVES is unable to remove the contents of a temporary folder. Most likely + * this is due to a file within the folder still being in use. Check that you have + * no MOVES files open. It is also possible that some slower virus checkers may retain + * connections to files longer than MOVES expects. + **/ + Logger.log(LogMessageCategory.WARNING, + "Failed to delete file in temporary folder: " + + FileUtilities.safeGetPath(folderContents[i])); + folderContents[i].deleteOnExit(); + } + } + } + + if(targetFolder.delete()) { + return true; + } else { + if(shouldDeleteOnExit) { + /** + * @issue Failed to delete temporary folder: [folder] + * @explain MOVES is unable to remove the contents of a temporary folder. Most likely + * this is due to a file within the folder still being in use. Check that you have + * no MOVES files open. It is also possible that some slower virus checkers may retain + * connections to files longer than MOVES expects. + **/ + Logger.log(LogMessageCategory.WARNING, + "Failed to delete temporary folder: " + + FileUtilities.safeGetPath(targetFolder)); + targetFolder.deleteOnExit(); + } + return false; + } + } + } +} diff --git a/gov/epa/otaq/moves/common/TimeSpan.java b/gov/epa/otaq/moves/common/TimeSpan.java new file mode 100644 index 0000000..c8d51f3 --- /dev/null +++ b/gov/epa/otaq/moves/common/TimeSpan.java @@ -0,0 +1,475 @@ +/************************************************************************************************** + * @(#)TimeSpan.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.master.runspec.OutputTimeStep; +import gov.epa.otaq.moves.master.framework.DatabaseConnectionManager; + +/** + * Specifies the time interval over which a simulation is run. A simulation can be run for + * particular years, particular months of a year, particular days of a week, and a range of hours + * during a day. For example, the simulation can be run for Monday through Friday, 6:00 AM to 10:00 + * AM in July and August of the years 2000 and 2003. It cannot be run for different hours on + * different days, or different days on different months, or different months on different years. + * So, for example, it is not possible to run a simulation for December of 2002 and January of 2003. + * This can only be accomplished by running the simulation more than once. + * + * @author Wesley Faler + * @author Bob G (Task 18 Item No 99) + * @version 2015-06-16 +**/ +public class TimeSpan { + /** + * Names to display for the hour names in the database. + * Arranged as pairs, with the first being hourName in the database + * and the second being the information to be displayed to users. + * Hours not listed here should just use the name from the database. + **/ + private static String[] standardizedHourNames = { + "Hour beginning at 12:00 midnight", "00:00 - 00:59", + "Hour beginning at 1:00 AM", "01:00 - 01:59", + "Hour beginning at 2:00 AM", "02:00 - 02:59", + "Hour beginning at 3:00 AM", "03:00 - 03:59", + "Hour beginning at 4:00 AM", "04:00 - 04:59", + "Hour beginning at 5:00 AM", "05:00 - 05:59", + "Hour beginning at 6:00 AM", "06:00 - 06:59", + "Hour beginning at 7:00 AM", "07:00 - 07:59", + "Hour beginning at 8:00 AM", "08:00 - 08:59", + "Hour beginning at 9:00 AM", "09:00 - 09:59", + "Hour beginning at 10:00 AM", "10:00 - 10:59", + "Hour beginning at 11:00 AM", "11:00 - 11:59", + "Hour beginning at 12:00 Noon", "12:00 - 12:59", + "Hour beginning at 1:00 PM", "13:00 - 13:59", + "Hour beginning at 2:00 PM", "14:00 - 14:59", + "Hour beginning at 3:00 PM", "15:00 - 15:59", + "Hour beginning at 4:00 PM", "16:00 - 16:59", + "Hour beginning at 5:00 PM", "17:00 - 17:59", + "Hour beginning at 6:00 PM", "18:00 - 18:59", + "Hour beginning at 7:00 PM", "19:00 - 19:59", + "Hour beginning at 8:00 PM", "20:00 - 20:59", + "Hour beginning at 9:00 PM", "21:00 - 21:59", + "Hour beginning at 10:00 PM", "22:00 - 22:59", + "Hour beginning at 11:00 PM", "23:00 - 23:59" + }; + + /** Describes a single entry from monthOfAnyYear **/ + public static class Month implements Comparable { + public int monthID; + public String name; + + public int compareTo(Object other) { + if(other instanceof Month) { + return monthID - ((Month)other).monthID; + } else { + return 1; + } + } + + public String toString() { + return name; + } + } + + /** Describes a single entry from dayOfAnyWeek **/ + public static class Day implements Comparable { + public int dayID; + public String name; + public float noOfRealDays; + + public int compareTo(Object other) { + if(other instanceof Day) { + return dayID - ((Day)other).dayID; + } else { + return 1; + } + } + + public String toString() { + return name; + } + } + + /** Describes a single entry from hourOfAnyDay **/ + public static class Hour implements Comparable { + public int hourID; + public String name; + + public Hour() { + } + + public Hour(int hourIDToUse, String nameToUse) { + hourID = hourIDToUse; + name = nameToUse; + } + + public void standardizeName() { + for(int i=0;i allMonths = new ArrayList(); + /** List of Day objects **/ + public static ArrayList allDays = new ArrayList(); + /** List of Hour objects **/ + public static ArrayList allHours = new ArrayList(); + /** Set of Integer objects for each year in the database **/ + public static TreeSet allYears = new TreeSet(); + + /** + * Check a year against the set in the database. + * @param yearID year to be evaluated + * @return true if yearID exists in the database + **/ + public static boolean isValidYear(int yearID) { + return allYears.contains(new Integer(yearID)); + } + + /** + * Get a month given its 0-based position. + * @param index0 0-based index + * @return a Month object or null if index0 is out of range + **/ + public static Month getMonthByIndex(int index0) { + if(index0 < 0 || index0 >= allMonths.size()) { + return null; + } + return (Month)allMonths.get(index0); + } + + /** + * Get a day given its 0-based position. + * @param index0 0-based index + * @return a Day object or null if index0 is out of range + **/ + public static Day getDayByIndex(int index0) { + if(index0 < 0 || index0 >= allDays.size()) { + return null; + } + return (Day)allDays.get(index0); + } + + /** + * Get an hour given its 0-based position. + * @param index0 0-based index + * @return an Hour object or null if index0 is out of range + **/ + public static Hour getHourByIndex(int index0) { + if(index0 < 0 || index0 >= allHours.size()) { + return null; + } + return (Hour)allHours.get(index0); + } + + /** + * Get a month given its ID. + * @param id ID of the month + * @return a Month object or null if ID is unknown + **/ + public static Month getMonthByID(int id) { + for(Iterator i=allMonths.iterator();i.hasNext();) { + Month m = (Month)i.next(); + if(m.monthID == id) { + return m; + } + } + return null; + } + + /** + * Get a day given its ID. + * @param id ID of the day + * @return a Day object or null if ID is unknown + **/ + public static Day getDayByID(int id) { + for(Iterator i=allDays.iterator();i.hasNext();) { + Day d = (Day)i.next(); + if(d.dayID == id) { + return d; + } + } + return null; + } + + /** + * Get an hour given its ID. + * @param id ID of the hour + * @return an Hour object or null if ID is unknown + **/ + public static Hour getHourByID(int id) { + for(Iterator i=allHours.iterator();i.hasNext();) { + Hour h = (Hour)i.next(); + if(h.hourID == id) { + return h; + } + } + return null; + } + + /** + * Return the status of the loaded time objects + * @return true if the time objects have been loaded + **/ + public static boolean isLoaded() { + return allMonths.size() > 0 && allDays.size() > 0 && allHours.size() > 0; + } + + /** Load the cache of time objects (months, days, hours) from the default database **/ + public static void loadTimeObjects() { + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + + try { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + + allMonths.clear(); + sql = "select monthID, monthName" + + " from monthOfAnyYear" + + " order by monthID"; + query.open(db,sql); + while(query.rs.next()) { + Month m = new Month(); + m.monthID = query.rs.getInt("monthID"); + m.name = query.rs.getString("monthName"); + allMonths.add(m); + } + query.close(); + + allDays.clear(); + sql = "select dayID, dayName, noOfRealDays" + + " from dayOfAnyWeek" + + " order by dayID"; + query.open(db,sql); + while(query.rs.next()) { + Day d = new Day(); + d.dayID = query.rs.getInt("dayID"); + d.name = query.rs.getString("dayName"); + d.noOfRealDays = query.rs.getFloat("noOfRealDays"); + allDays.add(d); + } + query.close(); + + allHours.clear(); + sql = "select hourID, hourName" + + " from hourOfAnyDay" + + " order by hourID"; + query.open(db,sql); + while(query.rs.next()) { + Hour h = new Hour(); + h.hourID = query.rs.getInt("hourID"); + h.name = query.rs.getString("hourName"); + h.standardizeName(); + allHours.add(h); + } + query.close(); + + allYears.clear(); + sql = "select yearID from year"; + query.open(db,sql); + while(query.rs.next()) { + Integer y = new Integer(query.rs.getInt(1)); + allYears.add(y); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to load time objects",sql); + } finally { + query.onFinally(); + } + } + + /** Aggregate Time Step **/ + public OutputTimeStep aggregateBy = OutputTimeStep.HOUR; + /** The beginning hourID of the day **/ + public int beginHourID = 0; + /** The ending hourID of the day **/ + public int endHourID = 0; + /** Integer objects holding the years selected.**/ + public TreeSet years = new TreeSet(); + /** Month objects holding the months selected **/ + public TreeSet months = new TreeSet(); + /** Day objects holding the days selected **/ + public TreeSet days = new TreeSet(); + + /** Default constructor **/ + public TimeSpan() { + // Nothing to do here + } + + /** + * Copy constructor. + * @param other another object to be copied, may be NULL. + **/ + public TimeSpan(TimeSpan other) { + if(other == null) { + return; + } + aggregateBy = other.aggregateBy; + beginHourID = other.beginHourID; + endHourID = other.endHourID; + years.addAll(other.years); + months.addAll(other.months); + days.addAll(other.days); + } + + /** + * Checks if all hours have been selected. + * @return If the timespan has all days selected + **/ + public boolean hasAllHours() { + if(allHours.size() <= 0) { + return false; + } + return ((Hour)allHours.get(allHours.size()-1)).hourID == endHourID + && ((Hour)allHours.get(0)).hourID == beginHourID; + } + + /** + * Checks if all days have been selected. + * @throws SQLException from any of java.sql operations. + * @return If the timespan has all days selected + **/ + public boolean hasAllDays(Connection db) throws SQLException { + float totalDays = 0; + for(Iterator i=days.iterator();i.hasNext();) { + Day d = (Day)i.next(); + totalDays += d.noOfRealDays; + } + return totalDays == 7.0; + } + + /** + * Checks if all months have been selected. + * @return If the timespan has all months selected + **/ + public boolean hasAllMonths() { + return allMonths.size() > 0 && months.size() == allMonths.size(); + } + + /** + * Checks if at least one hour has been selected. + * @return If an hour has been selected + **/ + public boolean hasHours() { + return (beginHourID > 0) && (endHourID > 0); + } + + /** + * Checks if the endHour is not before the beginHour. + * @return If an hour has been selected + **/ + public boolean hasendHourGTEbeginHour() { + return (endHourID>=beginHourID); + } + + /** + * Checks if at least one days has been selected. + * @return If a day has been selected + **/ + public boolean hasDays() { + return days.size() > 0; + } + + /** + * Checks if at least one month has been selected. + * @return If a month has been selected + **/ + public boolean hasMonths() { + return months.size() > 0; + } + + /** + * Get the number of selected years + * @return the number of selected years + **/ + public int getYearCount() { + return years.size(); + } + + /** + * Get the number of selected months + * @return the number of selected months + **/ + public int getMonthCount() { + return months.size(); + } + + /** + * Get the number of selected days + * @return the number of selected days + **/ + public int getDayCount() { + return days.size(); + } + + /** + * Get the number of selected hours + * @return the number of selected hours + **/ + public int getHourCount() { + if(beginHourID <= 0 || endHourID <= 0) { + return 0; + } + int count = 0; + for(Iterator i=allHours.iterator();i.hasNext();) { + Hour h = (Hour)i.next(); + if(h.hourID >= beginHourID && h.hourID <= endHourID) { + count++; + } + } + return count; + } + + /** + * Search the selected months for a given ID + * @param monthID ID to search for + * @return true if the ID is in the set of months to simulate + **/ + public boolean hasMonthID(int monthID) { + for(Iterator i=months.iterator();i.hasNext();) { + Month m = (Month)i.next(); + if(m.monthID == monthID) { + return true; + } + } + return false; + } + + /** + * Search the selected days for a given ID + * @param dayID ID to search for + * @return true if the ID is in the set of days to simulate + **/ + public boolean hasDayID(int dayID) { + for(Iterator i=days.iterator();i.hasNext();) { + Day d = (Day)i.next(); + if(d.dayID == dayID) { + return true; + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/common/TimeSpanTest.java b/gov/epa/otaq/moves/common/TimeSpanTest.java new file mode 100644 index 0000000..bbdcd0b --- /dev/null +++ b/gov/epa/otaq/moves/common/TimeSpanTest.java @@ -0,0 +1,81 @@ +/************************************************************************************************** + * @(#)TimeSpanTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import junit.framework.*; +import java.sql.*; +import java.util.*; + +/** + * Test Case for the TimeSpan class + * + * @author wgfaler + * @version 2009-02-09 +**/ +public class TimeSpanTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public TimeSpanTest(String name) { + super(name); + } + + /** General tests **/ + public void testTimeSpan() { + TimeSpan t = new TimeSpan(); + + Connection executionConnection = null; + try { + executionConnection = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + + TimeSpan.loadTimeObjects(); + + t.years.add(new Integer(2003)); + TimeSpan.Month m = TimeSpan.getMonthByIndex(11); + assertNotNull(m); + t.months.add(m); + + TimeSpan.Day d = TimeSpan.getDayByIndex(1); + assertNotNull(d); + t.days.add(d); + + t.beginHourID = 1; + t.endHourID = 24; + + assertTrue(t.hasMonths()); + assertTrue(t.hasDays()); + assertTrue(t.hasHours()); + + assertTrue(!t.hasAllMonths()); + assertTrue(!t.hasAllDays(executionConnection)); + assertTrue(t.hasAllHours()); + + for(Iterator i=TimeSpan.allDays.iterator();i.hasNext();) { + d = (TimeSpan.Day)i.next(); + t.days.add(d); + } + assertTrue(t.hasAllDays(executionConnection)); + + for(Iterator i=TimeSpan.allMonths.iterator();i.hasNext();) { + m = (TimeSpan.Month)i.next(); + t.months.add(m); + } + assertTrue(t.hasAllMonths()); + } catch (Exception e) { + // Nothing to do here + } finally { + if(executionConnection != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionConnection); + } + } + } +} diff --git a/gov/epa/otaq/moves/common/ToolTipHelper.java b/gov/epa/otaq/moves/common/ToolTipHelper.java new file mode 100644 index 0000000..370ee83 --- /dev/null +++ b/gov/epa/otaq/moves/common/ToolTipHelper.java @@ -0,0 +1,36 @@ +/************************************************************************************************** + * @(#)ToolTipHelper.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +/** + * Utility class for setting ToolTip support. + * + * @author Cimulus + * @version 2004-07-15 +**/ +public class ToolTipHelper { + /** + * Setup tooltip handling for a component. + * @param component affected Swing item + * @param toolTipText text to display for the item. null or "" if no tooltip should show + **/ + public static void add(JComponent component,String toolTipText) { + if(component == null) { + return; + } + if(toolTipText == null || toolTipText.length() <= 0) { + ToolTipManager.sharedInstance().unregisterComponent(component); + } else { + component.setToolTipText(toolTipText); + ToolTipManager.sharedInstance().registerComponent(component); + } + } +} diff --git a/gov/epa/otaq/moves/common/TooltipComboBoxRenderer.java b/gov/epa/otaq/moves/common/TooltipComboBoxRenderer.java new file mode 100644 index 0000000..c246104 --- /dev/null +++ b/gov/epa/otaq/moves/common/TooltipComboBoxRenderer.java @@ -0,0 +1,52 @@ +/** + * TooltipComboBoxRenderer class to show tooltip for the items in the comboBox. + * Source code reference : http://forum.java.sun.com/thread.jsp?forum=57&thread=195961 +**/ +package gov.epa.otaq.moves.common; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.plaf.metal.MetalComboBoxUI; +import javax.swing.plaf.basic.BasicComboBoxRenderer; +import javax.swing.plaf.basic.*; + +//public class TooltipComboBoxRenderer extends BasicComboBoxRenderer { + +public class TooltipComboBoxRenderer extends JLabel implements ListCellRenderer { + String[] _tipList = null; + + public TooltipComboBoxRenderer(String[] tipList){ + super(); + _tipList = tipList; + } + + /** + * Get the component which sets the tool tip for the highlighted item in the + * combo box. + * @param list contains the items + * @param value value of the item + * @param index 0-based index for component to find + * @param isSelected true if the cell is selected + * @param cellHasFocus true if the cell has the input focus + * @return Component after setting the tooltip + **/ + public Component getListCellRendererComponent( JList list,T value, + int index, boolean isSelected, boolean cellHasFocus) { + if (isSelected) { + setBackground(list.getSelectionBackground()); + setForeground(list.getSelectionForeground()); + if (index >= 0 && index < _tipList.length) { + list.setToolTipText(_tipList[index]); + } else if(index >= _tipList.length) { + list.setToolTipText(value.toString()); + } + } else { + setBackground(list.getBackground()); + setForeground(list.getForeground()); + } + setFont(list.getFont()); + setText((value == null) ? "" : value.toString()); + return this; + } +} diff --git a/gov/epa/otaq/moves/common/TreeMapIgnoreCase.java b/gov/epa/otaq/moves/common/TreeMapIgnoreCase.java new file mode 100644 index 0000000..7445dab --- /dev/null +++ b/gov/epa/otaq/moves/common/TreeMapIgnoreCase.java @@ -0,0 +1,21 @@ +/************************************************************************************************** + * @(#)TreeMapIgnoreCase.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.TreeMap; + +/** + * Version of TreeMap class specific to Strings as keys and without case sensitivity. + * + * @author Wesley Faler + * @version 2009-03-29 +**/ +public class TreeMapIgnoreCase extends TreeMap { + public TreeMapIgnoreCase() { + super(new StringComparatorIgnoreCase()); + } +} diff --git a/gov/epa/otaq/moves/common/TreeMapIgnoreCaseTest.java b/gov/epa/otaq/moves/common/TreeMapIgnoreCaseTest.java new file mode 100644 index 0000000..bd141c5 --- /dev/null +++ b/gov/epa/otaq/moves/common/TreeMapIgnoreCaseTest.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)TreeMapIgnoreCaseTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the TreeMapIgnoreCaseTest class + * + * @author Cimulus + * @version 2004-01-14 +**/ +public class TreeMapIgnoreCaseTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public TreeMapIgnoreCaseTest(String name) { + super(name); + } + + /** + * Tests case insensitive operations + **/ + public void testCaseInsensitivity() { + TreeMapIgnoreCase map = new TreeMapIgnoreCase(); + + String data1 = "DATA1"; + String data2 = "DATA2"; + + String s1 = "ABC"; + String s2 = "abc"; + + map.put(s1,data1); + assertTrue("Case insensitive get did not work",map.get(s2) == data1); + + map.put(s2,data2); + assertTrue("Case insensitive put did not work",map.size() == 1); + assertTrue("Case insensitive get did not work",map.get(s1) == data2); + } +} diff --git a/gov/epa/otaq/moves/common/TreeSetIgnoreCase.java b/gov/epa/otaq/moves/common/TreeSetIgnoreCase.java new file mode 100644 index 0000000..10146f6 --- /dev/null +++ b/gov/epa/otaq/moves/common/TreeSetIgnoreCase.java @@ -0,0 +1,21 @@ +/************************************************************************************************** + * @(#)TreeSetIgnoreCase.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.TreeSet; + +/** + * Version of TreeSet class specific to Strings as keys and without case sensitivity. + * + * @author Cimulus + * @version 2004-01-14 +**/ +public class TreeSetIgnoreCase extends TreeSet { + public TreeSetIgnoreCase() { + super(new StringComparatorIgnoreCase()); + } +} diff --git a/gov/epa/otaq/moves/common/TreeSetIgnoreCaseTest.java b/gov/epa/otaq/moves/common/TreeSetIgnoreCaseTest.java new file mode 100644 index 0000000..4405ac4 --- /dev/null +++ b/gov/epa/otaq/moves/common/TreeSetIgnoreCaseTest.java @@ -0,0 +1,42 @@ +/************************************************************************************************** + * @(#)TreeSetIgnoreCaseTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the TreeSetIgnoreCaseTest class + * + * @author Cimulus + * @version 2004-01-14 +**/ +public class TreeSetIgnoreCaseTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public TreeSetIgnoreCaseTest(String name) { + super(name); + } + + /** + * Tests case insensitive operations + **/ + public void testCaseInsensitivity() { + TreeSetIgnoreCase set = new TreeSetIgnoreCase(); + + String s1 = "ABC"; + String s2 = "abc"; + + set.add(s1); + assertTrue("Case insensitive contains did not work",set.contains(s2)); + + set.add(s2); + assertTrue("Case insensitive add did not work",set.size() == 1); + } +} diff --git a/gov/epa/otaq/moves/common/WildCardFileNameFilter.java b/gov/epa/otaq/moves/common/WildCardFileNameFilter.java new file mode 100644 index 0000000..8857741 --- /dev/null +++ b/gov/epa/otaq/moves/common/WildCardFileNameFilter.java @@ -0,0 +1,81 @@ +/************************************************************************************************** + * @(#)WildCardFileNameFilter.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.File; +import java.io.FilenameFilter; + +/** + * This class allows file name filtering with wild card strings. The search strings + * can contain '*' wildcard characters. + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class WildCardFileNameFilter implements FilenameFilter { + /** + * The filter string. This can contain special wildcard characters: '*' + **/ + String nameFilter; + + /** + * Checks if two strings are equal. Asterisk '*' characters in the filter string are treated + * as wildcards. + * @param filterString '*' characters ARE treated as wildcards. + * @param testString '*' characters are NOT treated as wildcards. + * @return True if the two strings are equal. + **/ + public static boolean doesFilterMatch(String filterString, String testString) { + int indexA = 0; + int indexB = 0; + + while (filterString.length() > indexA) { + if(filterString.charAt(indexA) == '*') { + for (; indexB <= testString.length(); indexB++) { + if(doesFilterMatch(filterString.substring(indexA + 1), + testString.substring(indexB))) { + return true; + } + } + + return false; + } else { + if(testString.length() <= indexB) { + return false; + } + + if (Character.toUpperCase(filterString.charAt(indexA)) == + Character.toUpperCase(testString.charAt(indexB))) { + indexA++; + indexB++; + } else { + return false; + } + } + } + + return (testString.length() <= indexB); + } + + /** + * Standard Constructor. + * @param filter The filter string. This can contain special wildcard characters: '*' + **/ + public WildCardFileNameFilter(String filter) { + nameFilter = filter; + } + + /** + * FilenameFilter implementation. + * @param directoryPath The directory of the file. (not used) + * @param fileName The file name to test against the pattern. + * @return True if the file name matches the pattern. + **/ + public boolean accept(File directoryPath, String fileName) { + return doesFilterMatch(nameFilter, fileName); + } +} diff --git a/gov/epa/otaq/moves/common/WildCardFileNameFilterTest.java b/gov/epa/otaq/moves/common/WildCardFileNameFilterTest.java new file mode 100644 index 0000000..ee3e0ae --- /dev/null +++ b/gov/epa/otaq/moves/common/WildCardFileNameFilterTest.java @@ -0,0 +1,41 @@ +/************************************************************************************************** + * @(#)WildCardFileNameFilterTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; + +/** + * Test Case for the WildCardFileNameFilter class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class WildCardFileNameFilterTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public WildCardFileNameFilterTest(String name) { + super(name); + } + + /** Test wildcard pattern matching **/ + public void testFiltering() { + assertTrue(WildCardFileNameFilter.doesFilterMatch("", "")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("*", "")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("*", "abcdefg")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("*cd*", "abcdefg")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("**cd*", "abcdefg")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("***cd*", "abcdefg")); + assertTrue(WildCardFileNameFilter.doesFilterMatch("a*bc**g", "abcdefg")); + + assertTrue(!WildCardFileNameFilter.doesFilterMatch("asdf", "")); + assertTrue(!WildCardFileNameFilter.doesFilterMatch("", "abcdefg")); + assertTrue(!WildCardFileNameFilter.doesFilterMatch("asdf", "abcdefg")); + assertTrue(!WildCardFileNameFilter.doesFilterMatch("asdf", "abcdefg")); + } +} diff --git a/gov/epa/otaq/moves/common/WildcardMatcher.java b/gov/epa/otaq/moves/common/WildcardMatcher.java new file mode 100644 index 0000000..cc1bfd6 --- /dev/null +++ b/gov/epa/otaq/moves/common/WildcardMatcher.java @@ -0,0 +1,101 @@ +/************************************************************************************************** + * @(#)WildcardMatcher.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.util.*; + +/** + * Match strings based on wildcards containing asterisks ('*'). + * + * @author Wesley Faler + * @version 2009-04-05 +**/ +public class WildcardMatcher { + /** + * Check a string for presence of wildcard characters that would merrit more expensive + * string comparisons. + * @param wildcardText string to be examined + * @return true if wildcards are present + **/ + public static boolean hasWildcards(String wildcardText) { + if(wildcardText == null) { + return false; + } + return wildcardText.indexOf('*') >= 0; + } + + /** + * Check a string to determine if it would match all values. Such cases can be handled + * very efficiently and don't require pattern matching. + * @param wildcardText string to be examined + * @return true if wildcardText contains a wildcard that would match every case + **/ + public static boolean wouldMatchEverything(String wildcardText) { + return wildcardText != null && wildcardText.equals("*"); + } + + /** + * Produce a set of entries that match a wildcard pattern. + * @param setToTrim set of all values to be examined. This set is not modified in any way. + * @param wildcardText text that may or may not contain wildcards. Any entries in setToTrim + * that match wildcardText will be present in the output set. + * @return a set of entries from setToTrim. If there were no matching entries, then null + * is returned. + **/ + public static TreeSet filter(TreeSet setToTrim, String wildcardText) { + TreeSet result = null; + for(Iterator i=setToTrim.iterator();i.hasNext();) { + Object o = (Object)i.next(); + if(o != null && doesFilterMatch(wildcardText,o.toString())) { + if(result == null) { + result = new TreeSet(); + } + result.add(o); + } + } + return result; + } + + /** + * Checks if two strings are equal. Asterisk '*' characters in the filter string are treated + * as wildcards. + * @param filterString '*' characters ARE treated as wildcards. + * @param testString '*' characters are NOT treated as wildcards. + * @return True if the two strings are equal. + **/ + public static boolean doesFilterMatch(String filterString, String testString) { + int indexA = 0; + int indexB = 0; + + while (filterString.length() > indexA) { + if(filterString.charAt(indexA) == '*') { + for (; indexB <= testString.length(); indexB++) { + if(doesFilterMatch(filterString.substring(indexA + 1), + testString.substring(indexB))) { + return true; + } + } + + return false; + } else { + if(testString.length() <= indexB) { + return false; + } + + if (Character.toUpperCase(filterString.charAt(indexA)) == + Character.toUpperCase(testString.charAt(indexB))) { + indexA++; + indexB++; + } else { + return false; + } + } + } + + return (testString.length() <= indexB); + } +} diff --git a/gov/epa/otaq/moves/common/WildcardMatcherTest.java b/gov/epa/otaq/moves/common/WildcardMatcherTest.java new file mode 100644 index 0000000..2258c91 --- /dev/null +++ b/gov/epa/otaq/moves/common/WildcardMatcherTest.java @@ -0,0 +1,103 @@ +/************************************************************************************************** + * @(#)WildcardMatcherTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import junit.framework.*; +import java.util.*; + +/** + * Test Case for the WildcardMatcher class + * + * @author Wesley Faler + * @version 2010-02-06 +**/ +public class WildcardMatcherTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public WildcardMatcherTest(String name) { + super(name); + } + + /** Test hasWildcards() **/ + public void testHasWildcards() { + assertTrue("Failed to find wildcard \"*\"",WildcardMatcher.hasWildcards("*")); + assertTrue("Failed to find wildcard \"3*\"",WildcardMatcher.hasWildcards("3*")); + assertTrue("Found wildcard in \"30\"",!WildcardMatcher.hasWildcards("30")); + assertTrue("Found wildcard in \"\"",!WildcardMatcher.hasWildcards("")); + } + + /** Test wouldMatchEverything() **/ + public void testWouldMatchEverything() { + assertTrue("Failed to find all match in \"*\"",WildcardMatcher.wouldMatchEverything("*")); + assertTrue("Found all match in \"3*\"",!WildcardMatcher.wouldMatchEverything("3*")); + assertTrue("Found all match in \"30\"",!WildcardMatcher.wouldMatchEverything("30")); + assertTrue("Found all match in \"\"",!WildcardMatcher.wouldMatchEverything("")); + } + + /** Test filter() **/ + public void testFilter() { + TreeSet numbers = new TreeSet(); + for(int i=10;i<=99;i++) { + numbers.add(new Integer(i)); + } + int sizeBeforeFilter = numbers.size(); + + TreeSet values = WildcardMatcher.filter(numbers,"*"); + assertEquals("\"*\" filtered set wrong size",numbers.size(),values.size()); + + values = WildcardMatcher.filter(numbers,"ABC"); + assertNull("Did not produce null set",values); + + values = WildcardMatcher.filter(numbers,"3*"); + assertEquals("\"3*\" filtered set wrong size",10,values.size()); + for(int i=30;i<=39;i++) { + Integer t = new Integer(i); + assertTrue("" + i + " not in \"3*\" filtered set",values.contains(t)); + } + } + + /** Test doesFilterMatch() **/ + public void testFiltering() { + assertTrue(WildcardMatcher.doesFilterMatch("", "")); + assertTrue(WildcardMatcher.doesFilterMatch("*", "")); + assertTrue(WildcardMatcher.doesFilterMatch("*", "abcdefg")); + assertTrue(WildcardMatcher.doesFilterMatch("*cd*", "abcdefg")); + assertTrue(WildcardMatcher.doesFilterMatch("**cd*", "abcdefg")); + assertTrue(WildcardMatcher.doesFilterMatch("***cd*", "abcdefg")); + assertTrue(WildcardMatcher.doesFilterMatch("a*bc**g", "abcdefg")); + + assertTrue(!WildcardMatcher.doesFilterMatch("asdf", "")); + assertTrue(!WildcardMatcher.doesFilterMatch("", "abcdefg")); + assertTrue(!WildcardMatcher.doesFilterMatch("asdf", "abcdefg")); + assertTrue(!WildcardMatcher.doesFilterMatch("asdf", "abcdefg")); + } + + /** Test doesFilterMatch() for use with generator bundles **/ + public void testGeneratorBundleNaming() { + // Ensure old workers won't find the generator bundles + assertTrue(WildcardMatcher.doesFilterMatch("*_*_TODO","M123_456_TODO")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_TODO","M123_456_DONE")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_TODO","M123_456_GenTODO")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_TODO","M123_456_GenDONE")); + + // Ensure new workers find the generator bundles + assertTrue(WildcardMatcher.doesFilterMatch("*_*_*TODO","M123_456_TODO")); + assertTrue(WildcardMatcher.doesFilterMatch("*_*_*TODO","M123_456_GenTODO")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_*TODO","M123_456_DONE")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_*TODO","M123_456_GenDONE")); + + // Ensure new masters find the generator bundles + assertTrue(WildcardMatcher.doesFilterMatch("*_*_GenDONE","M123_456_GenDONE")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_GenDONE","M123_456_GenTODO")); + assertTrue(WildcardMatcher.doesFilterMatch("*_*_DONE","M123_456_DONE")); + assertFalse(WildcardMatcher.doesFilterMatch("*_*_DONE","M123_456_GenDONE")); + assertTrue(WildcardMatcher.doesFilterMatch("*_*_*DONE","M123_456_DONE")); + assertTrue(WildcardMatcher.doesFilterMatch("*_*_*DONE","M123_456_GenDONE")); + } +} diff --git a/gov/epa/otaq/moves/common/WindowStateHandler.java b/gov/epa/otaq/moves/common/WindowStateHandler.java new file mode 100644 index 0000000..3377793 --- /dev/null +++ b/gov/epa/otaq/moves/common/WindowStateHandler.java @@ -0,0 +1,361 @@ +/************************************************************************************************** + * @(#)WindowStateHandler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import java.io.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; + +/** + * Store size and position of a window with the ability to restore + * a window's position and size. + * + * @author Wesley Faler + * @version 2009-04-05 +**/ +public class WindowStateHandler implements ComponentListener, WindowListener { + private static class WindowInformation { + public int x; + public int y; + public int width; + public int height; + + public WindowInformation() { + } + + public boolean parse(String line) { + String[] parts = line.split("\\,"); + if(parts == null || parts.length != 4) { + return false; + } + int tx, ty, twidth, theight; + try { + tx = Integer.parseInt(parts[0].trim()); + ty = Integer.parseInt(parts[1].trim()); + twidth = Integer.parseInt(parts[2].trim()); + theight = Integer.parseInt(parts[3].trim()); + } catch(Exception e) { + return false; + } + if(twidth < 0 || theight < 0) { + return false; + } + x = tx; + y = ty; + width = twidth; + height = theight; + return true; + } + + public String toString() { + return "" + x + "," + y + "," + width + "," + height; + } + } + + /** Name of the file holding information about sizes and locations **/ + public static String infoFileName = "MOVESWindows.txt"; + + /** Mutex to synchronize access from all windows to the information file **/ + private static Integer fileMutex = new Integer(90210); + + /** Window being controlled **/ + Window window = null; + /** Logical name of window **/ + String name = ""; + /** True after size and position tracking has began **/ + boolean isTracking = false; + /** True if the window being tracked is iconified **/ + boolean isIconified = false; + /** True if the window size is being tracked **/ + boolean shouldTrackSize = true; + /** Location on screen **/ + Point location = new Point(); + /** Size of window **/ + Dimension size = new Dimension(); + + /** + * Constructor + * @param windowToUse window being controlled + **/ + public WindowStateHandler(Window windowToUse) { + window = windowToUse; + name = window.getClass().getName(); + } + + /** + * Constructor + * @param windowToUse window being controlled + * @param nameToUse name to be used instead of the class name + **/ + public WindowStateHandler(Window windowToUse, String nameToUse) { + window = windowToUse; + name = nameToUse; + } + + /** + * Set the window's size and position, and begin tracking movements and resizing. + * @param defaultWidth default width to use if there is no stored position and size + * @param defaultHeight default height to use if there is no stored position and size + **/ + public void setSizePositionAndStartTracking(int defaultWidth, int defaultHeight) { + if(isTracking) { + return; + } + window.addComponentListener(this); + window.addWindowListener(this); + if(loadInformation()) { + window.setSize(size); + window.setLocation(location); + } else { + if(defaultWidth > 0 && defaultHeight > 0) { + window.setSize(defaultWidth,defaultHeight); + } + } + isTracking = true; + } + + /** + * Set the window's position but not size, and begin tracking movements. + **/ + public void setPositionAndStartTracking() { + if(isTracking) { + return; + } + shouldTrackSize = false; + window.addComponentListener(this); + window.addWindowListener(this); + if(loadInformation()) { + window.setLocation(location); + } + isTracking = true; + } + + /** + * Read the data file contents. + * @return a map, keyed by class name, with data being WindowInformation objects + **/ + private static TreeMap readDataFile() { + synchronized(fileMutex) { + try { + ArrayList lines = FileUtilities.readLines(new File(infoFileName)); + if(lines == null || lines.size() <= 0) { + return null; + } + TreeMap information = + new TreeMap(); + for(int i=0;i information) { + synchronized(fileMutex) { + String lines = ""; + Set keys = information.keySet(); + for(Iterator i=keys.iterator();i.hasNext();) { + String k = (String)i.next(); + WindowInformation info = (WindowInformation)information.get(k); + if(info == null) { + continue; + } + lines += k + "=" + info.toString() + "\r\n"; + } + FileUtilities.writeFileContents(infoFileName,lines); + } + } + + /** + * Read the window's size and location from the data file. + * @return true if the information was loaded, otherwise default values should be used. + **/ + private boolean loadInformation() { + synchronized(fileMutex) { + TreeMap information = readDataFile(); + if(information == null) { + return false; + } + WindowInformation info = (WindowInformation)information.get(name); + if(info == null) { + return false; + } + location.setLocation(info.x,info.y); + size.setSize(info.width,info.height); + //System.out.println("Loaded window data for " + name); + return true; + } + } + + /** + * Write the window's size and location to the data file. + **/ + private void saveInformation() { + synchronized(fileMutex) { + TreeMap information = readDataFile(); + if(information == null) { + information = new TreeMap(); + } + WindowInformation info = new WindowInformation(); + info.x = (int)location.getX(); + info.y = (int)location.getY(); + info.width = (int)size.getWidth(); + info.height = (int)size.getHeight(); + information.put(name,info); + writeDataFile(information); + //System.out.println("Saved window data for " + name); + } + } + + /** + * Get the window's current size and location. + **/ + private void getInformation() { + if(!isIconified) { + window.getLocation(location); + window.getSize(size); + //System.out.println("Captured information for " + name); + } + } + + /** + * Invoked when the component's size changes. + * @param e event + **/ + public void componentResized(ComponentEvent e) { + if(!isTracking) { + return; + } + getInformation(); + } + + /** + * Invoked when the component's position changes. + * @param e event + **/ + public void componentMoved(ComponentEvent e) { + if(!isTracking) { + return; + } + getInformation(); + } + + /** + * Invoked when the component has been made visible. + * @param e event + **/ + public void componentShown(ComponentEvent e) { + if(!isTracking) { + return; + } + getInformation(); + } + + /** + * Invoked when the component has been made invisible. + * @param e event + **/ + public void componentHidden(ComponentEvent e) { + // Nothing to do here + } + + /** + * Invoked when the Window is set to be the active Window. + * @param e event + **/ + public void windowActivated(WindowEvent e) { + // Nothing to do + } + + /** + * Invoked when a window has been closed as the result of calling dispose on the window. + * @param e event + **/ + public void windowClosed(WindowEvent e) { + if(!isTracking) { + return; + } + saveInformation(); + isTracking = false; + } + + /** + * Invoked when the user attempts to close the window from the window's system menu. + * @param e event + **/ + public void windowClosing(WindowEvent e) { + if(!isTracking) { + return; + } + saveInformation(); + isTracking = false; + } + + /** + * Invoked when a Window is no longer the active Window. + * @param e event + **/ + public void windowDeactivated(WindowEvent e) { + // Nothing to do + } + + /** + * Invoked when a window is changed from a minimized to a normal state. + * @param e event + **/ + public void windowDeiconified(WindowEvent e) { + isIconified = false; + } + + /** + * Invoked when a window is changed from a normal to a minimized state. + * @param e event + **/ + public void windowIconified(WindowEvent e) { + isIconified = true; + } + + /** + * Invoked the first time a window is made visible. + * @param e event + **/ + public void windowOpened(WindowEvent e) { + // Nothing to do + } +} diff --git a/gov/epa/otaq/moves/common/XLSReader.java b/gov/epa/otaq/moves/common/XLSReader.java new file mode 100644 index 0000000..a429346 --- /dev/null +++ b/gov/epa/otaq/moves/common/XLSReader.java @@ -0,0 +1,253 @@ +/************************************************************************************************** + * @(#)XLSReader.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common; + +import java.io.*; +import java.util.*; +import java.text.SimpleDateFormat; +import org.apache.poi.ss.usermodel.*; + +/** + * Utility for reading an XLS or XLSX file into memory. + * + * @author Wesley Faler + * @version 2009-04-20 +**/ +public class XLSReader { + private static TimeZone gmtZone = null; // set on first use + private static SimpleDateFormat format = null; // set on first use + + /** + * Retrieve a list of all the worksheet tabs within a workbook + * @param file XLS/Excel file to be read. + * @return ArrayList of String objects each naming a sheet and sequenced according + * sheet location within the workbook + **/ + public ArrayList getSheets(File file) throws Exception { + ArrayList result = new ArrayList(); + InputStream input = null; + Workbook workbook = null; + try { + input = new FileInputStream(file); + workbook = WorkbookFactory.create(input); + int howManySheets = workbook.getNumberOfSheets(); + for(int i=0;i 0) { + result.add(name); + } + } + } + } finally { + if(workbook != null) { + // Nothing to do here to close the work book + workbook = null; + } + if(input != null) { + try { + input.close(); + } catch(Exception e) { + // Nothing to do here + } + input = null; + } + } + return result; + } + + /** + * Read an XLS file into memory as a tab separated string with newlines. + * Automatically detects starting row and column. Also, detects end row + * (5 blank rows) and columns (10 blank columns). Skips blank lines without + * reporting them. Only the first worksheet is read. + * @param file XLS/Excel file to be read. + * @param sheetIndex 0-based index of the sheet to be read + * @return tab separated values with newlines at each end of line. + * The lines may be jagged, that is, they may differ in their number + * of columns. + * + **/ + public String read(File file, int sheetIndex) throws Exception { + StringBuffer buffer = new StringBuffer(100000); + InputStream input = null; + Workbook workbook = null; + + try { + input = new FileInputStream(file); + workbook = WorkbookFactory.create(input); + int howManySheets = workbook.getNumberOfSheets(); + if(sheetIndex < 0) { + sheetIndex = 0; + } + Sheet sheet = workbook.getSheetAt(sheetIndex); + // Find top-left cell + int top = 0, left = 0; + Cell cell; + String contents; + boolean found = false; + int firstRowNumber = sheet.getFirstRowNum(); + int lastRowNumber = sheet.getLastRowNum(); + short leftColumnNumber = 0; + Row row = null; + + for(int r=firstRowNumber;r row.getLastCellNum()) || c >= lastColumnWithData+20) { + if(rowHasData) { + buffer.append('\n'); + rowHasData = false; + } + lastColumnWithData = left; + c = left; + r++; + row = null; + } + if(row == null) { + row = sheet.getRow(r); + if(row == null) { + c = left; + r++; + } + } + if(r > lastRowNumber || r >= lastRowWithData+10) { + break; + } + if(row == null) { + continue; + } + if(c > row.getLastCellNum()) { + c = left; + r++; + row = null; + continue; + } + cell = row.getCell(c); + contents = getContents(cell); + if(contents != null) { + for(;lastColumnWithData seenNames = new TreeSet(); + + /** Node for Literal values **/ + public static class LiteralNode implements IExpressionNode { + public Value value = null; + + public LiteralNode(Value valueToUse) { + value = valueToUse; + } + + public LiteralNode(int valueToUse) { + value = new Value(valueToUse); + } + + public LiteralNode(double valueToUse) throws Exception { + value = new Value(valueToUse); + } + + public LiteralNode(String valueToUse) throws Exception { + if(valueToUse == null) { + valueToUse = ""; + } + if(valueToUse.length() > 0) { + try { + double t = Double.parseDouble(valueToUse); + value = new Value(t); + } catch(Exception e) { + // Nothing to do here + } + } + if(value == null) { + value = new Value(valueToUse); + } + } + + public LiteralNode(LiteralNode other) { + value = other.value; + } + + public Value evaluate(IVariableSource variables) throws Exception { + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + String t = value.toString(); + if(t.equalsIgnoreCase("Infinity") || t.equalsIgnoreCase("-Infinity")) { + throw new Exception("Infinite LiteralNode value"); + } + return t; + } + + public IExpressionNode deepCopy() throws Exception { + return new LiteralNode(this); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + return this; + } + } + + /** Node referencing a variable **/ + public static class VariableNode implements IExpressionNode { + //static boolean didOne = false; + public String variableName = ""; + + public VariableNode(String variableToUse) { + variableName = variableToUse; + } + + public Value evaluate(IVariableSource variables) throws Exception { + Value result = null; + if(variables != null) { + result = variables.getValue(variableName); + } + return result; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return variables.getExpressionText(variableName); + //return variableName; + } + + public IExpressionNode deepCopy() throws Exception { + return new VariableNode(variableName); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + /* + if(!Common.seenNames.contains(variableName)) { + Common.seenNames.add(variableName); + System.out.println("VariableName optimize for " + variableName); + } + boolean shouldLog = false; + if(!didOne || variableName.equalsIgnoreCase("fp_T50.center")) { + didOne = true; + shouldLog = true; + } + */ + if(optimizer.shouldRemainSymbolic(variableName)) { + return this; + } + IExpressionNode namedExpression = optimizer.getExpression(variableName); + if(namedExpression != null) { + //if(shouldLog) { + // System.out.println("VariableName.optimize found named expression for " + variableName); + //} + optimizer.changed(); + return optimizer.optimize(namedExpression); + } + Value v = optimizer.getVariableValue(variableName); + if(v != null) { + //if(shouldLog) { + // System.out.println("VariableName.optimize found value for " + variableName); + //} + optimizer.changed(); + return new Common.LiteralNode(v); + } + //if(shouldLog) { + // System.out.println("VariableName.optimize found nothing for " + variableName); + //} + return this; + } + } + + /** Node with a name, like a variable, but referencing an expression **/ + public static class NamedExpressionNode implements IExpressionNode { + //static boolean didOne = false; + public String name = ""; + public IExpressionNode expression = null; + + public NamedExpressionNode(String nameToUse, IExpressionNode expressionToUse) + throws Exception { + name = nameToUse; + expression = expressionToUse; + if(expression == null) { + throw new Exception("Syntax error: missing expression in named expression " + name); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + if(expression != null) { + return expression.evaluate(variables); + } else { + return null; + } + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return expression.getExpressionText(variables); + } + + public IExpressionNode deepCopy() throws Exception { + return new NamedExpressionNode(name,expression.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + /* + if(!Common.seenNames.contains(name)) { + Common.seenNames.add(name); + System.out.println("NamedExpressionNode optimize for " + name); + } + boolean shouldLog = false; + if(!didOne || name.equalsIgnoreCase("fm_1.cmp_34.coeff1")) { + didOne = true; + shouldLog = true; + } + */ + if(optimizer.shouldRemainSymbolic(name)) { + optimizer.changed(); + return new VariableNode(name); + } + //if(shouldLog) { + // System.out.println("NamedExpressionNode optimizing " + name); + //} + optimizer.changed(); + return optimizer.optimize(expression); + } + } + + /** If node **/ + public static class IfNode implements IExpressionNode { + public IExpressionNode condition = null; + public IExpressionNode trueValue = null; + public IExpressionNode falseValue = null; + + public IfNode(IExpressionNode conditionToUse,IExpressionNode trueValueToUse, + IExpressionNode falseValueToUse) throws Exception { + condition = conditionToUse; + trueValue = trueValueToUse; + falseValue = falseValueToUse; + if(condition == null) { + throw new Exception("Syntax error: missing condition in IF statement"); + } + if(trueValue == null) { + throw new Exception("Syntax error: missing true branch in IF statement"); + } + if(falseValue == null) { + throw new Exception("Syntax error: missing false branch in IF statement"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + Value ifValue = condition.evaluate(variables); + if(ifValue.getBoolean()) { + return trueValue.evaluate(variables); + } else { + return falseValue.evaluate(variables); + } + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "if(" + condition.getExpressionText(variables) + + "," + trueValue.getExpressionText(variables) + + "," + falseValue.getExpressionText(variables) + + ")"; + /* + return "(case when (" + condition.getExpressionText(variables) + + ") then (" + trueValue.getExpressionText(variables) + + ") else (" + falseValue.getExpressionText(variables) + + ") end)"; + */ + } + + public IExpressionNode deepCopy() throws Exception { + return new IfNode(condition.deepCopy(),trueValue.deepCopy(),falseValue.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + condition = optimizer.optimize(condition); + trueValue = optimizer.optimize(trueValue); + falseValue = optimizer.optimize(falseValue); + + // If the condition reduces to a literal value, then the only one branch + // can be in effect. + if(Optimizer.isLiteral(condition)) { + optimizer.changed(); + boolean isTrue = ((LiteralNode)condition).value.getBoolean(); + if(isTrue) { + return trueValue; + } else { + return falseValue; + } + } + return this; + } + } + + /** Addition node **/ + public static class AddNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + + public AddNode(IExpressionNode leftToUse,IExpressionNode rightToUse) throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in addition"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in addition"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + Value leftValue = left.evaluate(variables); + Value rightValue = right.evaluate(variables); + if(leftValue.isString() || rightValue.isString()) { + //return new Value(leftValue.toString() + rightValue.toString()); + value.set(leftValue.toString() + rightValue.toString()); + } else { + //return new Value(leftValue.getNumber() + rightValue.getNumber()); + value.set(leftValue.getNumber() + rightValue.getNumber()); + } + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + "+" + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new AddNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + boolean leftIsZero = Optimizer.isLiteral(left,0); + boolean rightIsZero = Optimizer.isLiteral(right,0); + if(leftIsZero && rightIsZero) { + optimizer.changed(); + return Optimizer.zero; + } + if(leftIsZero) { + optimizer.changed(); + return right; + } + if(rightIsZero) { + optimizer.changed(); + return left; + } + if(Optimizer.isLiteral(right)) { + // convert: "left + -number" into "left - number" + double v = ((LiteralNode)right).value.getNumber(); + if(v < 0) { + optimizer.changed(); + return new SubtractNode(left,new LiteralNode(-v)); + } + } + return this; + } + } + + /** Subtraction node **/ + public static class SubtractNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + + public SubtractNode(IExpressionNode leftToUse,IExpressionNode rightToUse) + throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in subtraction"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in subtraction"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(left.evaluate(variables).getNumber() + - right.evaluate(variables).getNumber()); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + "-" + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new SubtractNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + boolean leftIsZero = Optimizer.isLiteral(left,0); + boolean rightIsZero = Optimizer.isLiteral(right,0); + if(leftIsZero && rightIsZero) { + optimizer.changed(); + return Optimizer.zero; + } + if(leftIsZero) { + optimizer.changed(); + return new Common.NegativeNode(right); + } + if(rightIsZero) { + optimizer.changed(); + return left; + } + if(Optimizer.isLiteral(right)) { + // convert: "left - -number" into "left + number" + double v = ((LiteralNode)right).value.getNumber(); + if(v < 0) { + optimizer.changed(); + return new AddNode(left,new LiteralNode(-v)); + } + } + return this; + } + } + + /** Multiply node **/ + public static class MultiplyNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + boolean leftMightBeZero = true; + + public MultiplyNode(IExpressionNode leftToUse,IExpressionNode rightToUse) + throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in multiplication"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in multiplication"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + if(leftMightBeZero) { + double leftNumber = left.evaluate(variables).getNumber(); + if(leftNumber == 0.0) { + value.set(0.0); + } else { + double rightNumber = right.evaluate(variables).getNumber(); + if(rightNumber == 0.0) { + leftMightBeZero = false; + value.set(0.0); + } else { + value.set(leftNumber * rightNumber); + } + } + } else { + double rightNumber = right.evaluate(variables).getNumber(); + if(rightNumber == 0.0) { + value.set(0.0); + } else { + double leftNumber = left.evaluate(variables).getNumber(); + if(leftNumber == 0.0) { + leftMightBeZero = true; + value.set(0.0); + } else { + value.set(leftNumber * rightNumber); + } + } + } + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + "*" + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new MultiplyNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + boolean leftIsZero = Optimizer.isLiteral(left,0); + boolean rightIsZero = Optimizer.isLiteral(right,0); + if(leftIsZero || rightIsZero) { + optimizer.changed(); + return Optimizer.zero; + } + boolean leftIsOne = Optimizer.isLiteral(left,1); + boolean rightIsOne = Optimizer.isLiteral(right,1); + if(leftIsZero && rightIsZero) { + optimizer.changed(); + return Optimizer.one; + } + if(leftIsOne) { + optimizer.changed(); + return right; + } + if(rightIsOne) { + optimizer.changed(); + return left; + } + return this; + } + } + + /** Divide node **/ + public static class DivideNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + + public DivideNode(IExpressionNode leftToUse,IExpressionNode rightToUse) + throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in division"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in division"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + double leftNumber = left.evaluate(variables).getNumber(); + double rightNumber = right.evaluate(variables).getNumber(); + if(rightNumber == 0.0) { + if(leftNumber == 0.0) { + value.set(0.0); // 0/anything ==> 0 + } else { + throw new Exception("Divide by 0 (" + leftNumber + "/" + rightNumber + "): " + + right.getExpressionText(variables)); + } + } + value.set(leftNumber / rightNumber); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + "/" + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new DivideNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + IExpressionNode newRight = optimizer.optimize(right); + boolean rightIsZero = Optimizer.isLiteral(newRight,0); + + if(rightIsZero) { + System.out.println("Divide by 0: 0 from " + optimizer.getExpressionText(right)); + } + + right = newRight; + left = optimizer.optimize(left); + boolean leftIsZero = Optimizer.isLiteral(left,0); + if(leftIsZero || rightIsZero) { + optimizer.changed(); + return Optimizer.zero; + } + if(rightIsZero) { + optimizer.changed(); + return Optimizer.one; + } + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + if(Optimizer.isLiteral(right,1)) { + optimizer.changed(); + return left; + } + if(Optimizer.isLiteral(right,-1)) { + optimizer.changed(); + return new NegativeNode(left); + } + return this; + } + } + + /** Modulus node **/ + public static class ModulusNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + + public ModulusNode(IExpressionNode leftToUse,IExpressionNode rightToUse) + throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in modulus"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in modulus"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + int rightNumber = (int)right.evaluate(variables).getNumber(); + if(rightNumber == 0) { + throw new Exception("Modulus by 0"); + } + value.set((int)left.evaluate(variables).getNumber() % rightNumber); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + "%" + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new ModulusNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Negative node **/ + public static class NegativeNode implements IExpressionNode { + public IExpressionNode right = null; + Value value = new Value(); + + public NegativeNode(IExpressionNode rightToUse) throws Exception { + right = rightToUse; + if(right == null) { + throw new Exception("Syntax error: missing right side in negation"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(-right.evaluate(variables).getNumber()); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "-" + right.getExpressionText(variables); + } + + public IExpressionNode deepCopy() throws Exception { + return new NegativeNode(right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + right = optimizer.optimize(right); + if(right instanceof NegativeNode) { + optimizer.changed(); + return ((NegativeNode)right).right; + } + if(Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Exp node **/ + public static class ExpNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public ExpNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in exp"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + double innerValue = 0; + try { + innerValue = inner.evaluate(variables).getNumber(); + double exp = Math.exp(innerValue); + if(Double.isInfinite(exp)) { + exp = 1e+12; + } + value.set(exp); + return value; + } catch(Exception e) { + String message = e.getMessage() + + " in ExpNode, innerValue=" + innerValue + ", text=" + + inner.getExpressionText(variables); + throw new Exception(message); + } + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "exp(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new ExpNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner,0)) { + optimizer.changed(); + return Optimizer.one; + } + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Ln node **/ + public static class LnNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public LnNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in ln"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + double t = inner.evaluate(variables).getNumber(); + if(t <= 0) { + throw new Exception("Value out of range in ln(" + t + ")"); + } + value.set(Math.log(t)); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "ln(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new LnNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Sine node **/ + public static class SineNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public SineNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in sine"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(Math.sin(inner.evaluate(variables).getNumber())); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "sin(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new SineNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Cosine node **/ + public static class CosineNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public CosineNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in cosine"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(Math.cos(inner.evaluate(variables).getNumber())); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "cos(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new CosineNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Tangent node **/ + public static class TanNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public TanNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in tangent"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(Math.tan(inner.evaluate(variables).getNumber())); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "tan(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new TanNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Sqrt node **/ + public static class SqrtNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public SqrtNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in sqrt"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + double t = inner.evaluate(variables).getNumber(); + if( t < 0) { + throw new Exception("Sqrt of negative number (" + t + ")"); + } + value.set(Math.sqrt(t)); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "sqrt(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new SqrtNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Power node **/ + public static class PowNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + Value value = new Value(); + + public PowNode(IExpressionNode leftToUse,IExpressionNode rightToUse) throws Exception { + left = leftToUse; + right = rightToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in pow"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in pow"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + value.set(Math.pow(left.evaluate(variables).getNumber(), + right.evaluate(variables).getNumber())); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "pow(" + left.getExpressionText(variables) + + "," + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new PowNode(left.deepCopy(),right.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** Not node **/ + public static class NotNode implements IExpressionNode { + public IExpressionNode inner = null; + Value value = new Value(); + + public NotNode(IExpressionNode innerToUse) throws Exception { + inner = innerToUse; + if(inner == null) { + throw new Exception("Syntax error: missing value in NOT"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + boolean t = !inner.evaluate(variables).getBoolean(); + value.set(t?1:0); + return value; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "not(" + inner.getExpressionText(variables) + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new NotNode(inner.deepCopy()); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + inner = optimizer.optimize(inner); + if(Optimizer.isLiteral(inner)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } + + /** And node **/ + public static class AndNode implements IExpressionNode { + public ArrayList nodes = new ArrayList(); + + public void add(IExpressionNode n) { + nodes.add(n); + } + + public Value evaluate(IVariableSource variables) throws Exception { + boolean result = true; + for(Iterator i=nodes.iterator();i.hasNext();) { + result = result && i.next().evaluate(variables).getBoolean(); + if(!result) { + return Value.falseValue; + } + } + return Value.trueValue; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + /* + String result = "and("; + for(int i=0;i 0) { + result += ","; + } + result += nodes.get(i).getExpressionText(variables); + } + result += ")"; + */ + String result = "("; + for(int i=0;i 0) { + result += " and "; + } + result += "(" + nodes.get(i).getExpressionText(variables) + ")"; + } + result += ")"; + + return result; + } + + public IExpressionNode deepCopy() throws Exception { + AndNode result = new AndNode(); + for(Iterator i=nodes.iterator();i.hasNext();) { + result.add(i.next().deepCopy()); + } + return result; + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + ArrayList results = new ArrayList(); + for(Iterator i=nodes.iterator();i.hasNext();) { + IExpressionNode n = i.next(); + IExpressionNode r = optimizer.optimize(n); + +/* +if(Optimizer.isLiteral(r,0)) { + System.out.println("AND replacing node:" + n.toString() + " with " + r.toString()); + + if(n instanceof Common.LiteralNode) { + Common.LiteralNode l = (Common.LiteralNode)n; + System.out.println("l.value.isString=" + l.value.isString() + ", isNumber=" + l.value.isNumber()); + } + + r = Optimizer.zero; +} +*/ + + + if(Optimizer.isLiteral(r,0)) { + optimizer.changed(); + return Optimizer.zero; + } + + results.add(r); + } + nodes = results; + return this; + } + } + + /** Or node **/ + public static class OrNode implements IExpressionNode { + public ArrayList nodes = new ArrayList(); + + public void add(IExpressionNode n) { + nodes.add(n); + } + + public Value evaluate(IVariableSource variables) throws Exception { + boolean result = false; + for(Iterator i=nodes.iterator();i.hasNext();) { + result = result || i.next().evaluate(variables).getBoolean(); + if(result) { + return Value.trueValue; + } + } + return Value.falseValue; + } + + public String getExpressionText(IVariableSource variables) throws Exception { + /* + String result = "or("; + for(int i=0;i 0) { + result += ","; + } + result += nodes.get(i).getExpressionText(variables); + } + result += ")"; + */ + + String result = "("; + for(int i=0;i 0) { + result += " or "; + } + result += "(" + nodes.get(i).getExpressionText(variables) + ")"; + } + result += ")"; + return result; + } + + public IExpressionNode deepCopy() throws Exception { + OrNode result = new OrNode(); + for(Iterator i=nodes.iterator();i.hasNext();) { + result.add(i.next().deepCopy()); + } + return result; + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + ArrayList results = new ArrayList(); + for(Iterator i=nodes.iterator();i.hasNext();) { + IExpressionNode r = optimizer.optimize(i.next()); + if(Optimizer.isLiteral(r,1)) { + optimizer.changed(); + return Optimizer.one; + } + results.add(r); + } + nodes = results; + return this; + } + } + + /** Comparison node **/ + public static class ComparisonNode implements IExpressionNode { + public IExpressionNode left = null; + public IExpressionNode right = null; + public String comparison = ""; + + public ComparisonNode(IExpressionNode leftToUse,IExpressionNode rightToUse, + String comparisonToUse) throws Exception { + left = leftToUse; + right = rightToUse; + comparison = comparisonToUse; + if(left == null) { + throw new Exception("Syntax error: missing left side in comparison"); + } + if(right == null) { + throw new Exception("Syntax error: missing right side in comparison"); + } + } + + public Value evaluate(IVariableSource variables) throws Exception { + Value leftValue = left.evaluate(variables); + Value rightValue = right.evaluate(variables); + + if(comparison.equals("=") || comparison.equals("==")) { + if(leftValue.isString() && rightValue.isString()) { + if(leftValue.toString().equalsIgnoreCase(rightValue.toString())) { + return Value.trueValue; + } + } else if(leftValue.getNumber() == rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else if(comparison.equals("<>") || comparison.equals("!=")) { + if(leftValue.isString() && rightValue.isString()) { + if(!leftValue.toString().equalsIgnoreCase(rightValue.toString())) { + return Value.trueValue; + } + } else if(leftValue.getNumber() != rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else if(comparison.equals("<")) { + if(leftValue.isString() && rightValue.isString()) { + if(leftValue.toString().compareToIgnoreCase(rightValue.toString())<0) { + return Value.trueValue; + } + } else if(leftValue.getNumber() < rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else if(comparison.equals("<=")) { + if(leftValue.isString() && rightValue.isString()) { + if(leftValue.toString().compareToIgnoreCase(rightValue.toString())<=0) { + return Value.trueValue; + } + } else if(leftValue.getNumber() <= rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else if(comparison.equals(">")) { + if(leftValue.isString() && rightValue.isString()) { + if(leftValue.toString().compareToIgnoreCase(rightValue.toString())>0) { + return Value.trueValue; + } + } else if(leftValue.getNumber() > rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else if(comparison.equals(">=")) { + if(leftValue.isString() && rightValue.isString()) { + if(leftValue.toString().compareToIgnoreCase(rightValue.toString())>=0) { + return Value.trueValue; + } + } else if(leftValue.getNumber() >= rightValue.getNumber()) { + return Value.trueValue; + } + return Value.falseValue; + } else { + throw new Exception("Syntax error: unknown comparison operator " + comparison); + } + } + + public String getExpressionText(IVariableSource variables) throws Exception { + return "(" + left.getExpressionText(variables) + + comparison + right.getExpressionText(variables) + + ")"; + } + + public IExpressionNode deepCopy() throws Exception { + return new ComparisonNode(left.deepCopy(),right.deepCopy(),comparison); + } + + public IExpressionNode optimize(Optimizer optimizer) throws Exception { + left = optimizer.optimize(left); + right = optimizer.optimize(right); + if(Optimizer.isLiteral(left) && Optimizer.isLiteral(right)) { + optimizer.changed(); + return new LiteralNode(evaluate(null)); + } + return this; + } + } +} + diff --git a/gov/epa/otaq/moves/common/expression/ExpressionParser.java b/gov/epa/otaq/moves/common/expression/ExpressionParser.java new file mode 100644 index 0000000..ef6fddc --- /dev/null +++ b/gov/epa/otaq/moves/common/expression/ExpressionParser.java @@ -0,0 +1,269 @@ +/************************************************************************************************** + * @(#)ExpressionParser.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.expression; + +import java.util.*; +import gov.epa.otaq.moves.common.*; + + +/** + * Parse an expression generating an ExpressionNode that represents the expression. + * + * @author Wesley Faler + * @version 2009-05-23 +**/ +public class ExpressionParser { + /** Token representing the end of the expression **/ + Tokenizer.Token eofToken = new Tokenizer.Token("",0); + /** The most recently parsed token **/ + Tokenizer.Token currentToken = null; + /** The object responsible for generating the token stream **/ + Tokenizer tokenizer = null; + /** + * Holds changes to variable name prefixes. For instance, when used in a stencil-type + * method, an expression may reference "ff.mtbe" but should be applied to a specific + * instance and be rewritten as "ffbase.mtbe". In this case, the prefixes should have + * a key of "ff." and data of "ffbase.". + **/ + TreeMapIgnoreCase variablePrefixChanges = null; + + /** + * Compile an expression + * @param textToUse the expression + * @return an expression node, never null + * @throws Exception if anything is amiss in the expression + **/ + public IExpressionNode compile(String textToUse) throws Exception { + return compile(textToUse,(TreeMapIgnoreCase)null); + } + + /** + * Compile an expression + * @param textToUse the expression + * @param variablePrefixChangesToUse changes to variable name prefixes, may be null, + * must be pairs of original prefix and output prefix + * @return an expression node, never null + * @throws Exception if anything is amiss in the expression + **/ + public IExpressionNode compile(String textToUse, + String[] variablePrefixChangesToUse) throws Exception { + TreeMapIgnoreCase prefixes = null; + if(variablePrefixChangesToUse != null) { + prefixes = new TreeMapIgnoreCase(); + for(int i=0;i variableValues = new TreeMap(); + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public ExpressionParserTest(String name) { + super(name); + + variableValues.put("alpha",new Value(1)); + variableValues.put("beta",new Value(2)); + variableValues.put("gamma",new Value(3)); + } + + /** + * Get the value of a variable. + * @param name variable name + * @return value of the variable + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public Value getValue(String name) throws Exception { + if(!variableValues.containsKey(name)) { + throw new Exception("Unknown variable " + name); + } + return variableValues.get(name); + } + + /** + * Get the textual name of a variable or its textual expression if it is not a simple value. + * @param name variable name + * @return name of the variable or its expression if not a simple value + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public String getExpressionText(String name) throws Exception { + if(!variableValues.containsKey(name)) { + throw new Exception("Unknown variable " + name); + } + return name; + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile1() throws Exception { + check("1+2",3); + check("1 + 2",3); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile2() throws Exception { + check("alpha+beta*gamma",7); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile3() throws Exception { + check("(alpha+beta)*gamma",9); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile4() throws Exception { + check("1+2^3+4",13); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile5() throws Exception { + check("1+2^3*4",33); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile6() throws Exception { + check("1+(2-1+1)^3*4",33); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile7() throws Exception { + check("5*2^3-4",36); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile8() throws Exception { + check("if(2=0,3,5)",5); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile9() throws Exception { + check("2.0408163 * (147.91 - 0)",2.0408163 * (147.91 - 0)); + } + + /** + * Tests compile() via evaluating the resulting expression + * @throws Exception from compile() or evaluate() + **/ + public void testCompile10() throws Exception { + check("and(1<2,10<20)",1); + } + + /** + * Compile and execute an expression, using the default variables of course. + * @param expression expression to be evaluated + * @param expectedValue numeric value expected from the evaluation + * @throws Exception from compile() or evaluate() + **/ + private void check(String expression, double expectedValue) throws Exception { + ExpressionParser parser = new ExpressionParser(); + IExpressionNode root = parser.compile(expression); + assertNotNull("Expected result from expression compile of " + expression,root); + Value value = root.evaluate(this); + assertNotNull("Expected value from evaluate of " + expression,value); + double t = value.getNumber(); + assertEquals("Got wrong answer from " + expression,expectedValue,t); + } +} diff --git a/gov/epa/otaq/moves/common/expression/IExpressionNode.java b/gov/epa/otaq/moves/common/expression/IExpressionNode.java new file mode 100644 index 0000000..adfbf71 --- /dev/null +++ b/gov/epa/otaq/moves/common/expression/IExpressionNode.java @@ -0,0 +1,43 @@ +/************************************************************************************************** + * @(#)IExpressionNode.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.expression; + +/** + * Describes the operations of a node within an expression + * + * @author Wesley Faler + * @version 2009-04-22 +**/ +public interface IExpressionNode { + /** + * Evaluate the node. + * @param variables provider of dynamic values + * @return value of the expression + * @throws Exception if unable to find a variable or if its value cannot be located + **/ + public Value evaluate(IVariableSource variables) throws Exception; + + /** + * Get the textual expression for this node + * @return the textual expression for this node + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public String getExpressionText(IVariableSource variables) throws Exception; + + /** + * Create a copy of the node and any child nodes. + * @return a copy of the node + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public IExpressionNode deepCopy() throws Exception; + + /** + * Optimize the current node, returning itself or a more optimal node to be used instead. + * @param optimizer controller for the optimization process + * @return the current node or a more optimal node to be used instead + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public IExpressionNode optimize(Optimizer optimizer) throws Exception; +} diff --git a/gov/epa/otaq/moves/common/expression/IVariableSource.java b/gov/epa/otaq/moves/common/expression/IVariableSource.java new file mode 100644 index 0000000..ea6b224 --- /dev/null +++ b/gov/epa/otaq/moves/common/expression/IVariableSource.java @@ -0,0 +1,31 @@ +/************************************************************************************************** + * @(#)IVariableSource.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.expression; + +import java.util.*; + +/** + * A provider of values for evaluating an expression. + * + * @author Wesley Faler + * @version 2009-04-22 +**/ +public interface IVariableSource { + /** + * Get the value of a variable. + * @param name variable name + * @return value of the variable + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public Value getValue(String name) throws Exception; + + /** + * Get the textual name of a variable or its textual expression if it is not a simple value. + * @param name variable name + * @return name of the variable or its expression if not a simple value + * @throws Exception if unable to find the variable or if its value cannot be located + **/ + public String getExpressionText(String name) throws Exception; +} diff --git a/gov/epa/otaq/moves/common/expression/Optimizer.java b/gov/epa/otaq/moves/common/expression/Optimizer.java new file mode 100644 index 0000000..1734fde --- /dev/null +++ b/gov/epa/otaq/moves/common/expression/Optimizer.java @@ -0,0 +1,189 @@ +/************************************************************************************************** + * @(#)Optimizer.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.expression; + +import java.util.*; +import gov.epa.otaq.moves.common.*; + +/** + * Optimize an expression tree + * + * @author Wesley Faler + * @version 2009-06-16 +**/ +public class Optimizer { + /** Utility object for a constant value of 0.0 **/ + public static Common.LiteralNode zero = new Common.LiteralNode(0); + /** Utility object for a constant value of 1.0 **/ + public static Common.LiteralNode one = new Common.LiteralNode(1); + + /** + * Check a node against a literal value + * @param node node to be checked + * @param v value to be checked + * @return true if the node is a LiteralNode with a matching value + **/ + public static boolean isLiteral(IExpressionNode node, double v) { + if(node instanceof Common.LiteralNode) { + Common.LiteralNode l = (Common.LiteralNode)node; + if(l.value.getNumber() == v) { + return true; + } + } + return false; + } + + /** + * Check a node's type + * @param node node to be checked + * @return true if the node is a LiteralNode + **/ + public static boolean isLiteral(IExpressionNode node) { + if(node instanceof Common.LiteralNode) { + return true; + } + return false; + } + + public interface IOptimizerVariableSource { + /** + * Get the value of a variable and only a variable. + * @param name variable name + * @return value of the variable or null if the variable could not be found + **/ + public Value getVariableValue(String name); + + /** + * Get the expression behind a named expression. + * @param name expression name + * @return root of the expression or null if the expression could not be found + **/ + public IExpressionNode getExpression(String name); + } + + /** Provider of variable and expression details **/ + IOptimizerVariableSource source = null; + /** Count of the number of changes **/ + public int changeCounter = 0; + /** Prefixes for variables that should not be resolved into values **/ + String[] prefixesToKeep = null; + /** Aliases to be used during optimization, if any **/ + TreeMapIgnoreCase aliases = null; + /** Source used to obtain textual expressions **/ + IVariableSource textSource = null; + + /** + * Constructor + * @param sourceToUse Provider of variable and expression details + * @param prefixesToKeepToUse Prefixes for variables that should not be resolved into values + * @param aliasesToUse Aliases to be used during optimization, if any + **/ + public Optimizer(IOptimizerVariableSource sourceToUse, String[] prefixesToKeepToUse, + TreeMapIgnoreCase aliasesToUse) { + source = sourceToUse; + prefixesToKeep = prefixesToKeepToUse; + aliases = aliasesToUse; + if(source instanceof IVariableSource) { + textSource = (IVariableSource)source; + } + } + + /** Called by nodes to denote a change in their structure **/ + public void changed() { + changeCounter++; + } + + /** + * Get the unaliased name of a name + * @param name variable or expression name + * @return name to be used inplace of name + **/ + private String getFinalName(String name) { + if(aliases != null && aliases.containsKey(name)) { + return (String)aliases.get(name); + } + return name; + } + + /** + * Check a variable or expression to determine if it should be a symbolic + * term or converted to a literal. + * @param name variable or expression name + * @return true if the item should remain symbolic + **/ + public boolean shouldRemainSymbolic(String name) { + name = getFinalName(name); + for(int i=0;i tokens = new Stack(); + private char[] allText; + private int nextTextCursor = 0; + private String currentTokenText = ""; + private int state = 0; + private char quoteChar = 0; + + /** + * Constructor + * @param textToUse text to be tokenized + **/ + public Tokenizer(String textToUse) { + allText = textToUse.toCharArray(); + nextTextCursor = 0; + state = 0; + } + + /** + * Obtain the next Token or null if no more are to be found. + * Whitespace tokens are skipped and functions and variables are distinguished from + * one another. + * @return a Token or null if no more are available + * @throws Exception if a tokenizing error occurs + **/ + public Token getNextToken() throws Exception { + Token result = getNextTokenNoSpace(); + if(result != null) { + if(result.type == TOKEN_WORD) { + result.type = TOKEN_VARIABLE; + Token next = getNextTokenNoSpace(); + if(next != null) { + if(next.type == TOKEN_OPEN_PAREN) { + result.type = TOKEN_FUNCTION; + } else { + putBackToken(next); + } + } + } + } + return result; + } + + /** + * Obtain the next Token or null if no more are to be found. + * Whitespace tokens are skipped but functions and variables are not distinguished + * from one another. + * @return a Token or null if no more are available + * @throws Exception if a tokenizing error occurs + **/ + private Token getNextTokenNoSpace() throws Exception { + Token result = null; + while(result == null) { + if(tokens.size() > 0) { + result = tokens.pop(); + return result; + } + result = getNextTokenCore(); + if(result == null) { + return null; + } + if(result.type == TOKEN_WHITESPACE) { + result = null; + } + } + return result; + } + + /** Array of basic math operators **/ + private static String[] basicOperators = { + "+", "-", "*", "/", "^", "%" // % is integer Modulus + }; + /** Array of comparison operators, including some common aliases **/ + private static String[] comparisonOperators = { + "=", "==", // both = and == mean "is equal to" + "<>", "!=", // both <> and != mean "not equal to" + "<", "<=", ">", ">=" + }; + + /** + * Return true if a String is a supported mathematical or comparison operator. + * @param t String to be tested + * @return true if a character is a supported mathematical operator + **/ + public static boolean isOperator(String t) { + for(int i=0;i inputs = null; + /** Resources generated by the node **/ + private ArrayList outputs = null; + /** List of nodes that generate resources needed by this node **/ + private ArrayList predecessors = null; + /** List of nodes that need the resources generated by this node **/ + private ArrayList successors = null; + /** The node considered the linear predecessor of this node, may be null **/ + private INode linearPredecessor = null; + /** Text associated with the node **/ + private String nodeText = ""; + + /** Default constructor **/ + public BasicNodeImpl() { + // Nothing to do here + } + + /** + * Constructor + * @param linearPredecessorToUse The node considered the linear predecessor of this node, may be null + **/ + public BasicNodeImpl(INode linearPredecessorToUse) { + linearPredecessor = linearPredecessorToUse; + } + + /** + * Constructor + * @param linearPredecessorToUse The node considered the linear predecessor of this node, may be null + * @param nodeTextToUse text associated with the node + **/ + public BasicNodeImpl(INode linearPredecessorToUse, String nodeTextToUse) { + linearPredecessor = linearPredecessorToUse; + nodeText = nodeTextToUse; + } + + /** + * Obtain the resources that are required by the node. + * @return an Iterator to the set of IResource objects that are required + * by the node. Will be null if there are no inputs. + **/ + public Iterator getInputs() { + if(inputs != null) { + return inputs.iterator(); + } + return null; + } + + /** + * Add a resource to the set required by this node. + * @param r resource to add + **/ + public void addInput(IResource r) { + if(inputs == null) { + inputs = new ArrayList(); + } + inputs.add(r); + } + + /** + * Obtain the resources that are written to by the node. + * @return an Iterator to the set of IResource objects that are updated + * by the node. Will be null if there are no outputs. + **/ + public Iterator getOutputs() { + if(outputs != null) { + return outputs.iterator(); + } + return null; + } + + /** + * Add a resource to the set generated by this node. + * @param r resource to add + **/ + public void addOutput(IResource r) { + if(outputs == null) { + outputs = new ArrayList(); + } + outputs.add(r); + } + + /** + * Obtain the set of nodes that should be executed immediately prior + * to this node. + * @return a list of INode objects that generate a resource needed by + * the node. + **/ + public ArrayList getPredecessors() { + if(predecessors == null) { + predecessors = new ArrayList(); + } + return predecessors; + } + + /** + * Add a node to the set of nodes that should be executed immediately + * prior to this node. + * @param n node to be added + **/ + public void addPredecessors(INode n) { + if(predecessors == null) { + predecessors = new ArrayList(); + } + predecessors.add(n); + } + + /** + * Obtain the set of nodes that should be executed immediately after + * to this node. + * @return a list of INode objects that consume a resource created by + * the node. + **/ + public ArrayList getSuccessors() { + if(successors == null) { + successors = new ArrayList(); + } + return successors; + } + + /** + * Add a node to the set of nodes that should be executed immediately + * after this node. + * @param n node to be added + **/ + public void addSuccessor(INode n) { + if(successors == null) { + successors = new ArrayList(); + } + successors.add(n); + } + + /** + * Obtain the node that is considered the linear predecessor of this + * node. + * @return the INode that is the linear predecessor of this node + **/ + public INode getLinearPredecessor() { + return linearPredecessor; + } + + /** + * Set the node that is considered the linear predecessor of this node. + * @param n the INode that is the linear predecessor of this node, + * may be null + **/ + public void setLinearPredecessor(INode n) { + linearPredecessor = n; + } + + /** + * Override the standard mechanism to obtain a textual version of this object. + * @return If set, the nodeText, otherwise the class name + **/ + public String toString() { + if(nodeText != null && nodeText.length() > 0) { + return nodeText; + } + return "BasicNodeImpl"; + } +} diff --git a/gov/epa/otaq/moves/common/graph/BasicResourceImpl.java b/gov/epa/otaq/moves/common/graph/BasicResourceImpl.java new file mode 100644 index 0000000..6f7d69b --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/BasicResourceImpl.java @@ -0,0 +1,61 @@ +/************************************************************************************************** + * @(#)BasicResourceImpl.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +/** + * Provides a basic String-based implementation of IResource. + * + * @author Wesley Faler + * @version 2010-01-16 +**/ +public class BasicResourceImpl implements IResource { + /** Full path of the resource including end-delimiters **/ + private String resourcePath = "||"; + + /** + * Constructor that sets an empty resource. + **/ + public BasicResourceImpl() { + } + + /** + * Constructor that sets the resource path. + * @param r the pipe ('|') delimited resource path to be used + **/ + public BasicResourceImpl(String r) { + setResourcePath(r); + } + + /** + * Obtain the standardized URI-esque name of the resource. + * For example, if a table is written to by multiple nodes + * but their data does not overlap, they would use the table as their + * resource name but each add a separator and a description of the + * dataset they contribute. + * @return name of the resource with the pipe character ('|') + * at the beginning, end, and between each segment of the name. + **/ + public String getResourcePath() { + return resourcePath; + } + + /** + * Set the resource path. + * @param r the pipe ('|') delimited resource path to be used + **/ + public void setResourcePath(String r) { + if(r == null) { + r = ""; + } + r = r.trim(); + if(!r.startsWith("|")) { + r = "|" + r; + } + if(!r.endsWith("|")) { + r += "|"; + } + resourcePath = r; + } +} diff --git a/gov/epa/otaq/moves/common/graph/GraphHolder.java b/gov/epa/otaq/moves/common/graph/GraphHolder.java new file mode 100644 index 0000000..d11ad30 --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/GraphHolder.java @@ -0,0 +1,153 @@ +/************************************************************************************************** + * @(#)GraphHolder.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +import java.util.*; +import java.io.*; + +/** + * Container for a directed graph of nodes and resources. + * + * @author Wesley Faler + * @version 2010-01-16 +**/ +public class GraphHolder { + /** First node in the linear sequence **/ + public INode linearHead; + /** Last node in the linear sequence **/ + public INode linearTail; + /** Set of nodes that have no dependencies upon other nodes **/ + public ArrayList roots = new ArrayList(); + /** Number of nodes in the graph **/ + public int nodeCount = 0; + + /** + * Add a node to the linear list and place its location into the + * predecessor and successor lists of the existing nodes. The node + * should already be connected to its linear successor. + * @param n node to be added + **/ + public void add(INode n) { + nodeCount++; + if(linearHead == null) { + linearHead = n; + linearTail = n; + roots.add(n); + return; + } + INode candidate = linearTail; + linearTail = n; + while(candidate != null) { + if(GraphUtilities.areRelated(candidate,n)) { // If candidate produces what n needs... + candidate.getSuccessors().add(n); + n.getPredecessors().add(candidate); + } + candidate = candidate.getLinearPredecessor(); + } + if(n.getPredecessors().size() == 0) { + roots.add(n); + } + } + + /** + * Generate a file used to debug graphs. The GraphViz DOT language is used. + * @param gfile file to be populated with DOT-language commands + * @param showLinearSequence true if the nodes should be connected via successor/predecessor as well + * as via their linear sequence + * @throws Exception if anything goes wrong + **/ + public void generateGraphVizFile(File gfile, boolean showLinearSequence) throws Exception { + PrintWriter writer = null; + + try { + writer = new PrintWriter(new BufferedWriter(new FileWriter(gfile),65536)); + writer.println("digraph G {"); + writer.println("\tnode [shape=record];"); + // Write all items in the graph + for(INode cursor=linearTail;cursor != null;cursor = cursor.getLinearPredecessor()) { + // Nodes are written as DOT records + String inputsText = ""; + for(Iterator i=cursor.getInputs();i != null && i.hasNext();) { + IResource r = i.next(); + String path = getGraphVizText(r.getResourcePath()); + if(inputsText.length() > 0) { + inputsText += "|"; + } + inputsText += "i: " + path; + } + if(inputsText.length() == 0) { + inputsText = "i: (none)"; + } + + String outputsText = ""; + for(Iterator i=cursor.getOutputs();i != null && i.hasNext();) { + IResource r = i.next(); + String path = getGraphVizText(r.getResourcePath()); + if(outputsText.length() > 0) { + outputsText += "|"; + } + outputsText += "o: " + path; + } + if(outputsText.length() == 0) { + outputsText = "o: (none)"; + } + + // Write the node + String nodeText = getGraphVizText(cursor.toString()); + writer.println("\tnode" + cursor.hashCode() + " [shape=record, label=\"{" + inputsText + "|" + nodeText + "|" + outputsText + "}\"];"); + } + // Connect all items in the graph + for(INode cursor=linearTail;cursor != null;cursor = cursor.getLinearPredecessor()) { + String cursorName = "node" + cursor.hashCode(); + // Connect the cursor to each successor + for(Iterator i=cursor.getSuccessors().iterator();i.hasNext();) { + INode s = i.next(); + String sName = "node" + s.hashCode(); + writer.println("\t" + cursorName + " -> " + sName + ";"); + } + if(showLinearSequence) { + // Connect the cursor to its linear predecessor + if(cursor.getLinearPredecessor() != null) { + String pName = "node" + cursor.getLinearPredecessor().hashCode(); + writer.println("\t" + pName + " -> " + cursorName + " [style=dotted];"); + } + } + } + writer.println("}"); + } finally { + if(writer != null) { + try { + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + writer = null; + } + } + } + + /** + * Convert general text to that compatible with GraphViz DOT language label statement. + * Long text is truncated. + * @param text text to be converted + * @return text for use within a GraphViz DOT label statement + **/ + private static String getGraphVizText(String text) { + if(text == null) { + return ""; + } + text = text.trim(); + boolean wasTruncated = false; + if(text.length() > 50) { + text = text.substring(0,50); + wasTruncated = true; + } + text = text.replaceAll("\\|","\\\\|"); + if(wasTruncated) { + text += "..."; + } + return text; + } +} diff --git a/gov/epa/otaq/moves/common/graph/GraphScheduler.java b/gov/epa/otaq/moves/common/graph/GraphScheduler.java new file mode 100644 index 0000000..8bb8356 --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/GraphScheduler.java @@ -0,0 +1,112 @@ +/************************************************************************************************** + * @(#)GraphScheduler.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +import java.util.*; + +/** + * Container for a directed graph of nodes and resources. + * + * @author Wesley Faler + * @version 2010-01-16 +**/ +public class GraphScheduler { + /** The graph **/ + GraphHolder graph; + + /** Set of nodes that can be executed immediately **/ + ArrayList ready = new ArrayList(); + /** + * Set of nodes that are still be executed but do not yet have + * required predecessors completed. + **/ + ArrayList todo = new ArrayList(); + /** Set of nodes that have been fully executed **/ + ArrayList done = new ArrayList(); + + /** + * Constructor + * @param graphToUse the graph + **/ + public GraphScheduler(GraphHolder graphToUse) { + graph = graphToUse; + // Place all root items into the ready queue + for(Iterator i=graph.roots.iterator();i.hasNext();) { + ready.add(i.next()); + } + // Place all other nodes into the todo queue in reverse order + for(INode cursor=graph.linearTail;cursor!=null;cursor=cursor.getLinearPredecessor()) { + if(!ready.contains(cursor)) { + todo.add(0,cursor); + } + } + } + + /** + * Request a node to be executed and optionally mark a previous node as complete. + * @param contextID an optional identifier for the context within which the node will be + * executed, such as a thread ID. May be blank or null. Use of a context allows related + * nodes to be executed within related contexts, something intended to bring better cache + * usage and minimize resource swapping in underlying database and file systems. + * @param nodeJustCompleted a node that was completed by the execution context or null upon + * first calling this routine + * @return the next node to be executed, null if there are no more nodes + **/ + public synchronized INode getNextNodeToDo(String contextID, INode nodeJustCompleted) { + if(nodeJustCompleted != null) { + done.add(nodeJustCompleted); + // Check anything waiting for this completed node + boolean madeChanges = false; + for(Iterator i=nodeJustCompleted.getSuccessors().iterator();i.hasNext();) { + INode s = i.next(); + if(todo.contains(s) && !done.contains(s)) { + // If all of s's predecessors are done, put s into ready and remove from todo + boolean areAllDone = true; + for(Iterator j=s.getPredecessors().iterator();j.hasNext();) { + INode p = j.next(); + if(!done.contains(p)) { + areAllDone = false; + break; + } + } + if(areAllDone) { + todo.remove(s); + ready.add(s); + madeChanges = true; + } + } + } + if(madeChanges) { + notifyAll(); + } + // Try to do one of the node's successors + // This technique goes "depth-first" down a chain of related nodes in the hopes + // of getting good disk and RAM cache efficiency. + for(Iterator i=nodeJustCompleted.getSuccessors().iterator();i.hasNext();) { + INode s = i.next(); + if(ready.contains(s)) { + ready.remove(s); + notifyAll(); + return s; + } + } + } + // While there are no nodes ready yet still nodes that could become ready... + while(ready.size() <= 0 && todo.size() > 0) { + // ... wait for another thread to indicate there have been changes. + try { + wait(); + } catch(InterruptedException e) { + break; + } + } + // If there are nodes ready to be processed, grab the lead one and return. + if(ready.size() > 0) { + return ready.remove(0); + } + // Nothing to do and no reason to wait for more to do later. + return null; + } +} diff --git a/gov/epa/otaq/moves/common/graph/GraphTest.java b/gov/epa/otaq/moves/common/graph/GraphTest.java new file mode 100644 index 0000000..125adca --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/GraphTest.java @@ -0,0 +1,297 @@ +/************************************************************************************************** + * @(#)GraphTest.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +import junit.framework.*; +import java.util.*; +import java.io.*; + +/** + * Test Case for the graph classes + * + * @author Wesley Faler + * @version 2010-01-17 +**/ +public class GraphTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public GraphTest(String name) { + super(name); + } + + /** + * Tests GraphUtilities.areRelated() + **/ + public void testAreRelated1() { + BasicNodeImpl producer = new BasicNodeImpl(); + producer.addOutput(new BasicResourceImpl("sql|table1|subset1")); + producer.addOutput(new BasicResourceImpl("sql|table2|")); + + BasicNodeImpl consumer = new BasicNodeImpl(); + consumer.addInput(new BasicResourceImpl("sql|table1")); + + assertTrue("areRelated failed, expected a relation",GraphUtilities.areRelated(producer,consumer)); + } + + /** + * Tests GraphUtilities.areRelated() + **/ + public void testAreRelated2() { + BasicNodeImpl producer = new BasicNodeImpl(); + producer.addOutput(new BasicResourceImpl("sql|table2|subset1")); + producer.addOutput(new BasicResourceImpl("sql|table3|")); + + BasicNodeImpl consumer = new BasicNodeImpl(); + consumer.addInput(new BasicResourceImpl("sql|table1")); + consumer.addInput(new BasicResourceImpl("sql|t")); + consumer.addInput(new BasicResourceImpl("sql|table4")); + consumer.addInput(new BasicResourceImpl("file|somefile.txt")); + + assertTrue("areRelated failed, no relation expected",!GraphUtilities.areRelated(producer,consumer)); + } + + /** + * Tests GraphUtilities.areRelated() + **/ + public void testAreRelated3() { + BasicNodeImpl producer = new BasicNodeImpl(); + producer.addOutput(new BasicResourceImpl("sql|table2|")); + producer.addOutput(new BasicResourceImpl("sql|table1|")); + + BasicNodeImpl consumer = new BasicNodeImpl(); + consumer.addInput(new BasicResourceImpl("sql|TabLE1")); + + assertTrue("areRelated failed, expected a relation",GraphUtilities.areRelated(producer,consumer)); + } + + /** + * Tests GraphUtilities.areRelated() + **/ + public void testAreRelated4() { + BasicNodeImpl producer = new BasicNodeImpl(); + producer.addOutput(new BasicResourceImpl("sql|table1")); + producer.addOutput(new BasicResourceImpl("sql|table2|")); + + BasicNodeImpl consumer = new BasicNodeImpl(); + consumer.addInput(new BasicResourceImpl("sql|table1|SUBSet1")); + + assertTrue("areRelated failed, expected a relation",GraphUtilities.areRelated(producer,consumer)); + } + + /** + * Tests GraphUtilities.areRelated() + **/ + public void testAreRelated5() { + BasicNodeImpl producer = new BasicNodeImpl(); + producer.addOutput(new BasicResourceImpl("sql|table1|subset1")); + producer.addOutput(new BasicResourceImpl("sql|table2|")); + + BasicNodeImpl consumer = new BasicNodeImpl(); + consumer.addInput(new BasicResourceImpl("sql|table1|SUBSet2")); + + assertTrue("areRelated failed, no relation expected",!GraphUtilities.areRelated(producer,consumer)); + } + + /** + * Tests GraphHolder.add() + **/ + public void testGraphHolder1() { + assertNotNull("Did not get GraphHolder",buildAndTestGraph1()); + } + + /** + * Test graph visualization + * @throws Exception if anything goes wrong + **/ + public void testGraphViz1() throws Exception { + File folder = new File("testdata/graph"); + if(!folder.exists()) { + folder.mkdirs(); + } + assertTrue("Unable to create testdata/graph folder",folder.exists()); + + File gfile = new File(folder,"graph1.dot"); + if(gfile.exists()) { + gfile.delete(); + } + GraphHolder graph = buildAndTestGraph1(); + graph.generateGraphVizFile(gfile,false); + assertTrue("Did not create graph1.dot file",gfile.exists()); + + File gfileLinear = new File(folder,"graph1linear.dot"); + if(gfileLinear.exists()) { + gfileLinear.delete(); + } + graph.generateGraphVizFile(gfileLinear,true); + assertTrue("Did not create graph1linear.dot file",gfileLinear.exists()); + } + + /** + * Build a graph, testing for proper connectivity along the way. + * @return a graph which can be used for further testing + **/ + private GraphHolder buildAndTestGraph1() { + GraphHolder graph = new GraphHolder(); + + BasicNodeImpl b = new BasicNodeImpl(null,"b"); + b.addOutput(new BasicResourceImpl("sql|table1|subset2")); + graph.add(b); + assertEquals("Wrong number of root items",1,graph.roots.size()); + + BasicNodeImpl a = new BasicNodeImpl(b,"a"); + a.addOutput(new BasicResourceImpl("sql|table1|subset1")); + graph.add(a); + assertEquals("Wrong number of root items",2,graph.roots.size()); + + BasicNodeImpl c = new BasicNodeImpl(a,"c"); + c.addInput(new BasicResourceImpl("sql|table1")); + c.addOutput(new BasicResourceImpl("sql|table2")); + graph.add(c); + assertEquals("Wrong number of root items",2,graph.roots.size()); + assertEquals("c has wrong number of predecessors",2,c.getPredecessors().size()); + assertTrue("c does not use a as a predecessor",c.getPredecessors().contains(a)); + assertTrue("c does not use b as a predecessor",c.getPredecessors().contains(b)); + assertTrue("a does not use c as a successor",a.getSuccessors().contains(c)); + assertTrue("b does not use c as a successor",b.getSuccessors().contains(c)); + assertEquals("a has the wrong number of successors",1,a.getSuccessors().size()); + assertEquals("b has the wrong number of successors",1,b.getSuccessors().size()); + + BasicNodeImpl e = new BasicNodeImpl(c,"e"); + e.addOutput(new BasicResourceImpl("sql|table4")); + graph.add(e); + assertEquals("Wrong number of root items",3,graph.roots.size()); + + BasicNodeImpl d = new BasicNodeImpl(e,"d"); + d.addInput(new BasicResourceImpl("sql|table1|subset2")); + d.addOutput(new BasicResourceImpl("sql|table3")); + graph.add(d); + assertEquals("Wrong number of root items",3,graph.roots.size()); + assertEquals("d has wrong number of predecessors",1,d.getPredecessors().size()); + assertTrue("d does not use b as a predecessor",d.getPredecessors().contains(b)); + assertTrue("b does not use d as a successor",b.getSuccessors().contains(d)); + assertEquals("b has the wrong number of successors",2,b.getSuccessors().size()); + + assertEquals("graph has the wrong nodeCount",5,graph.nodeCount); + + return graph; + } + + /** + * Tests GraphScheduler + **/ + public void testGraphScheduler1() { + GraphHolder graph = buildAndTestGraph1(); + assertNotNull("Did not get GraphHolder",graph); + GraphScheduler scheduler = new GraphScheduler(graph); + + int howManyExecuted = 0; + INode previousNode = null; + TreeSet seenNodes = new TreeSet(); + ArrayList sequence = new ArrayList(); + while(true) { + INode n = scheduler.getNextNodeToDo(null,previousNode); + if(n == null) { + break; + } + howManyExecuted++; + assertFalse("Got too many nodes, expected exactly " + graph.nodeCount,howManyExecuted > graph.nodeCount); + Integer hash = new Integer(n.hashCode()); + assertFalse("Duplicate node scheduled",seenNodes.contains(hash)); + seenNodes.add(hash); + sequence.add(n); + previousNode = n; + System.out.println("testGraphScheduler1: execute node " + n.toString()); + } + assertEquals("Executed wrong number of nodes",graph.nodeCount,howManyExecuted); + + int aIndex = findIndexMandatory(sequence,"a"); + int bIndex = findIndexMandatory(sequence,"b"); + int cIndex = findIndexMandatory(sequence,"c"); + int dIndex = findIndexMandatory(sequence,"d"); + int eIndex = findIndexMandatory(sequence,"e"); + + assertTrue("a did not execute before c",aIndex < cIndex); + assertTrue("b did not execute before c",bIndex < cIndex); + assertTrue("b did not execute before d",bIndex < dIndex); + } + + /** + * Tests GraphScheduler + **/ + public void testGraphScheduler2() { + GraphHolder graph = buildAndTestGraph1(); + assertNotNull("Did not get GraphHolder",graph); + GraphScheduler scheduler = new GraphScheduler(graph); + + int howManyExecuted = 0; + TreeSet seenNodes = new TreeSet(); + ArrayList sequence = new ArrayList(); + String[] contexts = { "context1", "context2" }; + INode[] previousNodes = new INode[contexts.length]; + boolean[] contextDone = new boolean[contexts.length]; + int contextDoneCount = 0; + + for(int loopCount=0;loopCount < graph.nodeCount*10 && contextDoneCount < contexts.length;loopCount++) { + int contextIndex = loopCount % contexts.length; + if(contextDone[contextIndex]) { + continue; + } + INode n = scheduler.getNextNodeToDo(contexts[contextIndex],previousNodes[contextIndex]); + if(n == null) { + contextDone[contextIndex] = true; + contextDoneCount++; + continue; + } + howManyExecuted++; + assertFalse("Got too many nodes, expected exactly " + graph.nodeCount,howManyExecuted > graph.nodeCount); + Integer hash = new Integer(n.hashCode()); + assertFalse("Duplicate node scheduled",seenNodes.contains(hash)); + seenNodes.add(hash); + sequence.add(n); + System.out.println("testGraphScheduler2: context " + contextIndex + " execute node " + n.toString()); + previousNodes[contextIndex] = n; + } + assertEquals("Executed wrong number of nodes",graph.nodeCount,howManyExecuted); + + int aIndex = findIndexMandatory(sequence,"a"); + int bIndex = findIndexMandatory(sequence,"b"); + int cIndex = findIndexMandatory(sequence,"c"); + int dIndex = findIndexMandatory(sequence,"d"); + int eIndex = findIndexMandatory(sequence,"e"); + + assertTrue("a did not execute before c",aIndex < cIndex); + assertTrue("b did not execute before c",bIndex < cIndex); + assertTrue("b did not execute before d",bIndex < dIndex); + } + + /** + * Find a node within a list of nodes, asserting if the index is not found. + * @param nodes list of nodes to be searched + * @param nodeText text to be checked against INode.toString() on each node + * @return index within nodes or -1 if not found + **/ + private int findIndexMandatory(ArrayList nodes, String nodeText) { + int index = findIndex(nodes,nodeText); + assertTrue("Did not find node \"" + nodeText + "\"",index >= 0); + return index; + } + + /** + * Find a node within a list of nodes + * @param nodes list of nodes to be searched + * @param nodeText text to be checked against INode.toString() on each node + * @return index within nodes or -1 if not found + **/ + private int findIndex(ArrayList nodes, String nodeText) { + for(int i=0;i i=producer.getOutputs();i!=null && i.hasNext();) { + IResource r = i.next(); + if(isInInputs(r,consumer)) { + return true; + } + } + return false; + } + + /** + * Scan a node's inputs for a resource. A resource may be fully + * or partially specified as noted in the IResource documentation. + * @param r resource to be found + * @param n node to be scanned + * @return true if the resource is an input needed by the node. + **/ + public static boolean isInInputs(IResource r, INode n) { + return isInList(r,n.getInputs()); + } + + /** + * Scan a node's outputs for a resource. A resource may be fully + * or partially specified as noted in the IResource documentation. + * @param r resource to be found + * @param n node to be scanned + * @return true if the resource is an output populated by the node. + **/ + public static boolean isInOutputs(IResource r, INode n) { + return isInList(r,n.getOutputs()); + } + + /** + * Scan a list of resources for a given resource. Resources may be + * fully or partially specified as noted in the IResource documentation. + * @param r resource to be found + * @param resources set of resources to be scanned + * @return true if the resource is found in the set of scanned resources + **/ + public static boolean isInList(IResource r, Iterator resources) { + if(resources == null || r == null) { + return false; + } + // true if anything in resources startsWith(r) + // true if r startsWith(anything in resources) + String rPath = r.getResourcePath().toLowerCase(); + for(;resources.hasNext();) { + IResource candidate = resources.next(); + String candidatePath = candidate.getResourcePath().toLowerCase(); + if(candidatePath.startsWith(rPath) || rPath.startsWith(candidatePath)) { + return true; + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/common/graph/INode.java b/gov/epa/otaq/moves/common/graph/INode.java new file mode 100644 index 0000000..e457a04 --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/INode.java @@ -0,0 +1,56 @@ +/************************************************************************************************** + * @(#)INode.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +import java.util.*; + +/** + * Represent a node in a directed graph of nodes and resources. + * Nodes consume and populate resources. Nodes are also given + * a linear sequence that represents a known single-threaded + * execution sequence that would properly sequence the input/output + * dependencies. + * + * @author Wesley Faler + * @version 2010-01-16 +**/ +public interface INode { + /** + * Obtain the resources that are required by the node. + * @return an Iterator to the set of IResource objects that are required + * by the node. Will be null if there are no inputs. + **/ + Iterator getInputs(); + + /** + * Obtain the resources that are written to by the node. + * @return an Iterator to the set of IResource objects that are updated + * by the node. Will be null if there are no outputs. + **/ + Iterator getOutputs(); + + /** + * Obtain the set of nodes that should be executed immediately prior + * to this node. + * @return a list of INode objects that generate a resource needed by + * the node. + **/ + ArrayList getPredecessors(); + + /** + * Obtain the set of nodes that should be executed immediately after + * to this node. + * @return a list of INode objects that consume a resource created by + * the node. + **/ + ArrayList getSuccessors(); + + /** + * Obtain the node that is considered the linear predecessor of this + * node. + * @return the INode that is the linear predecessor of this node + **/ + INode getLinearPredecessor(); +} diff --git a/gov/epa/otaq/moves/common/graph/IResource.java b/gov/epa/otaq/moves/common/graph/IResource.java new file mode 100644 index 0000000..f12c847 --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/IResource.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)IResource.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph; + +/** + * Describe a resource that is read or written to by an INode. + * Resources have a naming convention that allows fragmented/partial + * usage. For instance, if a table is written to by multiple nodes + * but their data does not overlap, they would use the table as their + * resource name but each add a separator and a description of the + * dataset they contribute. + * + * @author Wesley Faler + * @version 2010-01-16 +**/ +public interface IResource { + /** + * Obtain the standardized URI-esque name of the resource. + * For example, if a table is written to by multiple nodes + * but their data does not overlap, they would use the table as their + * resource name but each add a separator and a description of the + * dataset they contribute. + * @return name of the resource with the pipe character ('|') + * at the beginning, end, and between each segment of the name. + **/ + String getResourcePath(); +} diff --git a/gov/epa/otaq/moves/common/graph/sql/SQLNode.java b/gov/epa/otaq/moves/common/graph/sql/SQLNode.java new file mode 100644 index 0000000..d0a6def --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/sql/SQLNode.java @@ -0,0 +1,610 @@ +/************************************************************************************************** + * @(#)SQLNode.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph.sql; + +import java.util.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.common.graph.*; + +/** + * Encapsulates a SQL statement and its required inputs and outputs. + * + * @author Wesley Faler + * @author Don Smith + * @version 2013-01-19 +**/ +public class SQLNode extends BasicNodeImpl { + /** + * Constructor + * @param linearPredecessorToUse The node considered the linear predecessor of this + * node, may be null + * @param nodeTextToUse text associated with the node + **/ + public SQLNode(INode linearPredecessorToUse, String nodeTextToUse) { + super(linearPredecessorToUse,nodeTextToUse); + parse(nodeTextToUse); + } + + /** Internal utility class to aid parsing **/ + class ParseContext { + public TreeSetIgnoreCase inputTables = new TreeSetIgnoreCase(); + public TreeSetIgnoreCase outputTables = new TreeSetIgnoreCase(); + + public String[] split(String sql) { + return standardizeAfterSplit(sql.split("\\s")); + } + + public String[] splitFront(String sql) { + return standardizeAfterSplit(sql.split("\\s",10)); + } + + public void addInputTable(String tableName) { + addInputTable(tableName,null); + } + + public void addInputTable(String tableName, String subset) { + String keyName = tableName; + if(subset != null) { + keyName += "|" + subset; + } + if(!inputTables.contains(keyName)) { + IResource t = createTableResource(tableName, subset); + addInput(t); + inputTables.add(keyName); + //System.out.println("input: \"" + keyName + "\""); + } + } + + public void addOutputTable(String tableName) { + addOutputTable(tableName,null); + } + + public void addOutputTable(String tableName, String subset) { + String keyName = tableName; + if(subset != null) { + keyName += "|" + subset; + } + if(!outputTables.contains(keyName)) { + IResource t = createTableResource(tableName, subset); + addOutput(t); + outputTables.add(keyName); + //System.out.println("output: \"" + keyName + "\""); + } + } + + public void addOutputFile(String fileName) { + IResource t = createFileResource(fileName); + addOutput(t); + } + + public void addInputFile(String fileName) { + IResource t = createFileResource(fileName); + addInput(t); + } + } + + /** + * Parse a SQL statement, setting input and output resources as needed. + * @param sql statement to be parsed + **/ + private void parse(String sql) { + sql = standardizeStatement(sql); + ParseContext context = new ParseContext(); + + if(sql.startsWith("create table")) { + parseCreateTable(sql,context); + } else if(sql.startsWith("drop table")) { + parseDropTable(sql,context); + } else if(sql.startsWith("alter table")) { + parseAlterTable(sql,context); + } else if(sql.startsWith("truncate")) { + parseTruncateTable(sql,context); + } else if(sql.startsWith("flush tables")) { + parseFlushTables(sql,context); + } else if(sql.startsWith("select")) { + parseSelect(sql,context); + } else if(sql.startsWith("cache")) { + parseSelect(sql,context); + } else if(sql.startsWith("analyze")) { + parseAnalyzeTable(sql,context); + } else if(sql.startsWith("delete")) { + parseDeleteTable(sql,context); + } else if(sql.startsWith("update")) { + parseUpdateTable(sql,context); + } else if(sql.startsWith("insert")) { + parseInsertIntoTable(sql,context); + } else if(sql.startsWith("create index")) { + parseCreateIndex(sql,context); + } else if(sql.startsWith("create unique index")) { + parseCreateIndex(sql,context); + } else if(sql.startsWith("load data infile")) { + parseLoadDataInFile(sql,context); + } else { + setAsUnknown(); + } + } + + /** + * Mark the current statement as an unknown type. This causes full synchronization + * before and after, safely degrading to standard synchronous operation. + **/ + private void setAsUnknown() { + addInput(new BasicResourceImpl("|sql|")); + addOutput(new BasicResourceImpl("|sql|")); + } + + /** + * Parse create table statements of the form: + * create table ( .... ) + * create table if not exists ( .... ) + * create table select .... + * create table if not exists select ... + * create table like + * create table if not exists like + * Versions that include an embedded SELECT statement also use the parseSelect() routine. + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseCreateTable(String sql, ParseContext context) { + int tableNameIndex = 2; + if(sql.startsWith("create table if not exists")) { + tableNameIndex = 5; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + context.addInputTable(tableName); + context.addOutputTable(tableName); + if(parts[tableNameIndex+1].equals("select")) { + int index = sql.indexOf(tableName) + tableName.length() + 1; + sql = sql.substring(index); + parseSelect(sql,context); + } else if(parts[tableNameIndex+1].equals("like")) { + context.addInputTable(parts[tableNameIndex+2]); + } + } + + /** + * Parse drop table statements of the form: + * drop table + * drop table if exists + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseDropTable(String sql, ParseContext context) { + int tableNameIndex = 2; + if(sql.startsWith("drop table if exists")) { + tableNameIndex = 4; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + addInput(new BasicResourceImpl("|sql|")); // require synchronization first + context.addInputTable(tableName); + // Model dropping a table as a form of output to the table. + // This should prevent the drop table from being executed + // concurrently with code that reads from the table. + context.addOutputTable(tableName); + } + + /** + * Parse delete table statements of the form: + * delete table + * delete table if exists + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseDeleteTable(String sql, ParseContext context) { + int tableNameIndex = 1; + if(sql.startsWith("delete from table")) { + tableNameIndex = 3; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + context.addInputTable(tableName); + context.addOutputTable(tableName); + } + + + /** + * Parse update table statements of the form: + * update + * update , , ... + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseUpdateTable(String sql, ParseContext context) { + int tableNameIndex = 1; + + boolean hasSeperator = false; + if(sql.indexOf(",") >= 0) { + hasSeperator = true; + } + + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + + do{ + String tableName = parts[tableNameIndex]; + context.addInputTable(tableName); + context.addOutputTable(tableName); + tableNameIndex++; + if(parts[tableNameIndex].equalsIgnoreCase(",")) { + tableNameIndex++; + } else { + hasSeperator=false; + } + } while(hasSeperator); + } + + /** + * Parse alter table statements of the form: + * alter table ..... + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseAlterTable(String sql, ParseContext context) { + int tableNameIndex = 1; + if(sql.startsWith("alter table")) { + tableNameIndex = 2; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + context.addInputTable(tableName); + context.addOutputTable(tableName); + } + + /** + * Parse analyze table statements of the form: + * analyze table ..... + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseAnalyzeTable(String sql, ParseContext context) { + int tableNameIndex = 1; + if(sql.startsWith("analyze table")) { + tableNameIndex = 2; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + context.addInputTable(tableName); + context.addOutputTable(tableName); + } + + /** + * Parse truncate table statements of the form: + * truncate table + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseTruncateTable(String sql, ParseContext context) { + int tableNameIndex = 1; + if(sql.startsWith("truncate table")) { + tableNameIndex = 2; + } + String[] parts = context.splitFront(sql); + if(parts.length <= tableNameIndex) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + String tableName = parts[tableNameIndex]; + addInput(new BasicResourceImpl("|sql|")); // require synchronization first + context.addInputTable(tableName); + context.addOutputTable(tableName); + } + + /** + * Parse flush table statements of the form: + * flush tables + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseFlushTables(String sql, ParseContext context) { + addInput(new BasicResourceImpl("|sql|")); + addOutput(new BasicResourceImpl("|sql|")); + } + + /** + * Parse select table statements of the form: + * select into outfile '' [columns] from .... + * select [columns] from .... + * (and more, including a mixture of inner join, left join, left outer join, and direct table names) + * select from table + * select from ... JOIN table + * select from ... ( skip ) (there might be commas in the middle) + * select from ... , table (but only if not within parenthesis, see prior rule) + * Quit if find WHERE, GROUP, ORDER, or LIMIT + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseSelect(String sql, ParseContext context) { + String[] parts = context.split(sql); + String tableJoinName = ""; + boolean hasFrom = false; + boolean ignore = false; + boolean done = false; + + for( int i=0; i ..... + * insert ignore into ..... + * insert replace into ..... + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseInsertIntoTable(String sql, ParseContext context) { + String[] parts = context.split(sql); + String tableName =""; + if(parts.length <= 1) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + for( int i=0; i into ..... + * @param sql standardized SQL to be examined + * @param context parsing context + **/ + private void parseLoadDataInFile(String sql, ParseContext context) { + String[] parts = context.split(sql); + if(parts.length <= 1) { + // There aren't enough clauses to decode + setAsUnknown(); + return; + } + for( int i=0; i finalReplacements = new ArrayList(); + if(sql.indexOf("'") >= 0) { + char[] c = sql.toCharArray(); + sql = ""; + int state = 0; + String replacement = ""; + for(int i=0;i' }; + for(int i=0;i= 0) { + sql = StringUtilities.replace(sql,""+specialCharacters[i],specialMarker); + sql = StringUtilities.replace(sql,specialMarker," "+specialCharacters[i]+" "); + } + } + + // Remove interior double spaces + sql = StringUtilities.replace(sql," "," "); + // Remove extra space and make it all lowercase + sql = sql.trim().toLowerCase(); + // Change out final replacements for string constants + for(int i=0;i= 0) { + parts[i] = parts[i].replace('\u00ff',' '); + } + } + } + return parts; + } + + /** + * Create a resource that represents a table. + * @param tableName table + * @return a resource representing the table and all subsets therein. + **/ + public static IResource createTableResource(String tableName) { + return createTableResource(tableName,null); + } + + /** + * Create a resource that represents a table and an optional subset of data therein. + * @param tableName table + * @param subset name given to the subset of data within the data, may be null or empty + * @return a resource representing the table and subset + **/ + public static IResource createTableResource(String tableName, String subset) { + String resourceName = "|sql|" + tableName.toLowerCase() + "|"; + if(subset != null && subset.length() > 0) { + resourceName += subset + "|"; + } + return new BasicResourceImpl(resourceName); + } + + /** + * Create a resource that represents a file. + * @param fileName file, may be a full path or relative just as long as all resources + * are referenced in the same manner + * @return a resource representing the file + **/ + public static IResource createFileResource(String fileName) { + String resourceName = "|file|" + fileName.toLowerCase() + "|"; + return new BasicResourceImpl(resourceName); + } +} diff --git a/gov/epa/otaq/moves/common/graph/sql/SQLNodeTest.java b/gov/epa/otaq/moves/common/graph/sql/SQLNodeTest.java new file mode 100644 index 0000000..ebf4387 --- /dev/null +++ b/gov/epa/otaq/moves/common/graph/sql/SQLNodeTest.java @@ -0,0 +1,541 @@ +/************************************************************************************************** + * @(#)SQLNodeTest.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.common.graph.sql; + +import gov.epa.otaq.moves.common.graph.*; +import junit.framework.*; +import java.util.*; +import java.io.*; + +/** + * Test Case for the SQLNode class and its parsing + * + * @author Wesley Faler + * @version 2010-04-19 +**/ +public class SQLNodeTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SQLNodeTest(String name) { + super(name); + } + + /** + * Tests SQL standardization + **/ + public void testStandardization() { + String inputSQL = "SeleCT A, B ,C, 'Hello' as D FROM testing where (A+(B*C))<3 or t>=7 and q='tes''ting, this (thing)'"; + String expectedSQL = "select a , b , c , 'hello' as d from testing where ( a + ( b * c ) ) < 3 or t > = 7 and q = 'tes''ting,\u00ffthis\u00ff(thing)'"; + String outputSQL = SQLNode.standardizeStatement(inputSQL); + if(!expectedSQL.equals(outputSQL)) { + System.out.println("Got standardized SQL: \"" + outputSQL + "\""); + System.out.println("Expected SQL: \"" + expectedSQL + "\""); + } + assertEquals("Did not standardize SQL",expectedSQL,outputSQL); + + // Test splitting + String[] parts = outputSQL.split("\\s"); + assertEquals("Last token is not the quoted text","'tes''ting,\u00ffthis\u00ff(thing)'",parts[parts.length-1]); + parts = SQLNode.standardizeAfterSplit(parts); + assertEquals("Did not restore spaces in quoted text","'tes''ting, this (thing)'",parts[parts.length-1]); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode1() { + String sql = "flush tables"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|" }); + hasOutputs(node,new String[] { "|sql|" }); + + sql = "\t\t\tflush \t \t\t \t TaBLes\t\n"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|" }); + hasOutputs(node,new String[] { "|sql|" }); + + sql = "\r\r\n\t\tflush \t \n\r \t TaBLes "; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|" }); + hasOutputs(node,new String[] { "|sql|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode2() { + String sql = "truncate table TestTableName"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|", "|sql|testtablename|" }); + hasOutputs(node,new String[] { "|sql|testtablename|" }); + + sql = "truncate TestTableName"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|", "|sql|testtablename|" }); + hasOutputs(node,new String[] { "|sql|testtablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode3() { + String sql = "drop table TestTableName"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|", "|sql|testtablename|" }); + hasOutputs(node,new String[] { "|sql|testtablename|" }); + + sql = "drop table if exists TestTableName"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|", "|sql|testtablename|" }); + hasOutputs(node,new String[] { "|sql|testtablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode4() { + String sql = "select * from ageCategory"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|agecategory|" }); + hasOutputs(node,null); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode5() { + String sql = "select * into outfile 'C:/tESt/DaTAFile.txt' from ageCategory"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|agecategory|" }); + hasOutputs(node,new String[] { "|file|c:/test/datafile.txt|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode6() { + String sql = "create table theTableName ( someColumn int not null primary key )"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "create table if not exists theTableName ( someColumn int not null primary key )"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode7() { + String sql = "create table theTableName select a, b, c from tableAlpha inner join beta on x=c"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|tablealpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "create table if not exists theTableName select a, b, c from tableAlpha inner join beta on x=c"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|tablealpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode8() { + String sql = "create table theTableName like someOtherTable"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|someothertable|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "create table if not exists theTableName like someOtherTable"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|someothertable|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode9() { + String sql = "insert into theTableName (A,B) values (1,2)"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert ignore into theTableName (A,B) values (1,2)"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert replace into theTableName (A,B) values (1,2)"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode10() { + String sql = "insert into theTableName (A,B) select X, Y from alpha, beta"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert into theTableName (selectA, selectionB, Cselect ) select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert into theTableName select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert ignore into theTableName select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert ignore into theTableName (selectA, selectionB, Cselect ) select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert ignore into theTableName select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert replace into theTableName select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert replace into theTableName (selectA, selectionB, Cselect ) select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "insert replace into theTableName select X, Y from alpha, beta"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|sql|alpha|", "|sql|beta|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode11() { + String sql = "analyze table theTableName"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode12() { + String sql = "delete from table theTableName"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "delete from table theTableName where x>2"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode13() { + String sql = "alter table theTableName add (\n\tkey (countyID),\n\tkey (yearID) )"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode14() { + String sql = "create index someIndexName on theTableName (\ncountyID, yearID)"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "create unique index someIndexName on theTableName (\ncountyID, yearID)"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode15() { + String sql = "LOAD DATA INFILE 'c:/testFile.txt' INTO TABLE theTableName FIELDS TERMINATED BY ',' IGNORE 1 LINES "; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|file|c:/testfile.txt|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "LOAD DATA INFILE 'c:/testFile.txt' IGNORE INTO TABLE theTableName FIELDS TERMINATED BY ',' IGNORE 1 LINES "; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|file|c:/testfile.txt|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + + sql = "LOAD DATA INFILE 'c:/testFile.txt' REPLACE INTO TABLE theTableName FIELDS TERMINATED BY ',' IGNORE 1 LINES "; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|thetablename|", "|file|c:/testfile.txt|" }); + hasOutputs(node,new String[] { "|sql|thetablename|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode16() { + String sql = "update someTable set A=3 where B<2"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|sometable|" }); + hasOutputs(node,new String[] { "|sql|sometable|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode17() { + String sql = "update someTable, someOtherTable set A=3 where B<2 and C=D"; + SQLNode node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|sometable|", "|sql|someothertable|" }); + hasOutputs(node,new String[] { "|sql|sometable|", "|sql|someothertable|" }); + + sql = "update someTable ,someOtherTable,gamma set A=3 where B<2 and C=D"; + node = new SQLNode(null,sql); + assertEquals("Did not store original SQL properly",sql,node.toString()); + hasInputs(node,new String[] { "|sql|sometable|", "|sql|someothertable|", "|sql|gamma|" }); + hasOutputs(node,new String[] { "|sql|sometable|", "|sql|someothertable|", "|sql|gamma|" }); + } + + /** + * Tests SQLNode and its parsing + **/ + public void testSQLNode18() { + String sql = "select * from someTable, someOtherTable where 4 i=node.getInputs();i!=null && i.hasNext();) { + String candidateText = i.next().getResourcePath().toLowerCase(); + boolean found = false; + if(inputNames != null) { + for(int j=0;j i=node.getOutputs();i!=null && i.hasNext();) { + String candidateText = i.next().getResourcePath().toLowerCase(); + boolean found = false; + if(outputNames != null) { + for(int j=0;j resources) { + if(resources != null && text != null && text.length() > 0) { + for(;resources.hasNext();) { + IResource candidate = resources.next(); + String candidatePath = candidate.getResourcePath().toLowerCase(); + if(candidatePath.equals(text)) { // be case-sensitive here, we want an exact match + return true; + } + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/installer/ConfigurationWriter.java b/gov/epa/otaq/moves/installer/ConfigurationWriter.java new file mode 100644 index 0000000..ee5e098 --- /dev/null +++ b/gov/epa/otaq/moves/installer/ConfigurationWriter.java @@ -0,0 +1,361 @@ +/************************************************************************************************** + * @(#)ConfigurationWriter.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.installer; + +import java.io.*; + +/** + * Modifies MOVES worker configuration file and MOVES configuration file. + * The installation and MySQL directories are added to the configuration files. + * + * @author Wesley Faler + * @version 2014-12-17 +**/ +public class ConfigurationWriter { + /** directory path to MySQL **/ + private String mySQLDirectory; + /** location of WorkerConfiguration.txt **/ + private String workerConfig; + /** location of MOVESConfiguration.txt **/ + private String movesConfig; + /** location of manyworkers.txt **/ + private String manyWorkersConfig; + /** location of maketodo.txt **/ + private String makeTodoConfig; + /** install directory **/ + private String installDirectory; + + /** + * Constructor + * @param mySQL Directory path of MySQL data directory + * @param worker Location of worker configuration file + * @param moves Location of MOVES configuration file + * @param installPath install directory + */ + public ConfigurationWriter(String mySQL, String worker, String moves, String installPath) { + mySQLDirectory = mySQL; + workerConfig = worker; + movesConfig = moves; + + manyWorkersConfig = worker; + try { + File f = new File(manyWorkersConfig); + f = new File(f.getParentFile(),"manyworkers.txt"); + manyWorkersConfig = f.getCanonicalPath(); + } catch(Exception e) { + System.out.println("Unable to create path to manyworkers.txt"); + } + + makeTodoConfig = worker; + try { + File f = new File(makeTodoConfig); + f = new File(f.getParentFile(),"maketodo.txt"); + makeTodoConfig = f.getCanonicalPath(); + } catch(Exception e) { + System.out.println("Unable to create path to maketodo.txt"); + } + + installDirectory = installPath; + } + + /** + * Search above the install directory for MOVESComputerID.txt, stopping if it cannot + * go further up the chain or if an exception occurs. By default, the MOVESComputerID.txt + * file in the install directory will be used. + * @param installDirectory directory MOVES is being installed into + * @return the full path and name of the MOVESComputerID.txt file to be used. + **/ + private String findComputerIDPath(String installDirectory) { + try { + File f = new File(installDirectory); + f = f.getParentFile(); // start searching one level above the installation directory + while(f != null && f.exists()) { + File candidate = new File(f,"MOVESComputerID.txt"); + if(candidate.exists()) { + return candidate.getCanonicalPath(); + } + f = f.getParentFile(); + } + } catch(Exception e) { + // Nothing to do here + } + // return the default if something went wrong or if nothing could be found + return installDirectory + "\\MOVESComputerID.txt"; + } + + /** + * Makes changes to MOVES and worker configuration files. MySQL data directory + * and location of worker configuration file added to the MOVES configuration file. + * The default installation directory is replaced by the actual installation directory + * in the worker configuration file. + **/ + public void write() { + try { + String computerIDPath = findComputerIDPath(installDirectory); + + // Create BufferedReader for reading the file + BufferedReader reader = new BufferedReader(new FileReader(movesConfig)); + String movesConfigOutput = ""; + String currentLine = reader.readLine(); + // check if reader.readLine() is null, if so the stream has ended + while(currentLine != null) { + currentLine = doMasterReplacements(currentLine); + if(currentLine.length() > 0) { + movesConfigOutput = movesConfigOutput + currentLine + "\r\n"; + } + currentLine = reader.readLine(); + } + + // Write changes to file system + BufferedWriter writer = new BufferedWriter(new FileWriter(movesConfig)); + writer.write(movesConfigOutput); + writer.close(); + + // WorkerConfiguration.txt changes + reader = new BufferedReader(new FileReader(workerConfig)); + String workerConfigOutput = ""; + currentLine = reader.readLine(); + while(currentLine != null) { + currentLine = doWorkerReplacements(currentLine); + if(currentLine.length() > 0) { + workerConfigOutput = workerConfigOutput + currentLine + "\r\n"; + } + currentLine = reader.readLine(); + } + writer = new BufferedWriter(new FileWriter(workerConfig)); + writer.write(workerConfigOutput); + writer.close(); + reader.close(); + + // manyworkers.txt changes + File manyWorkersFile = new File(manyWorkersConfig); + if(manyWorkersFile.exists()) { + reader = new BufferedReader(new FileReader(manyWorkersConfig)); + String manyWorkersConfigOutput = ""; + currentLine = reader.readLine(); + while(currentLine != null) { + currentLine = doWorkerReplacements(currentLine); + if(currentLine.length() > 0) { + manyWorkersConfigOutput = manyWorkersConfigOutput + currentLine + "\r\n"; + } + currentLine = reader.readLine(); + } + writer = new BufferedWriter(new FileWriter(manyWorkersConfig)); + writer.write(manyWorkersConfigOutput); + writer.close(); + reader.close(); + } + + // maketodo.txt changes + File makeTodoFile = new File(makeTodoConfig); + if(makeTodoFile.exists()) { + reader = new BufferedReader(new FileReader(makeTodoConfig)); + String makeTodoConfigOutput = ""; + currentLine = reader.readLine(); + while(currentLine != null) { + currentLine = doMasterReplacements(currentLine); + if(currentLine.length() > 0) { + makeTodoConfigOutput = makeTodoConfigOutput + currentLine + "\r\n"; + } + currentLine = reader.readLine(); + } + writer = new BufferedWriter(new FileWriter(makeTodoConfig)); + writer.write(makeTodoConfigOutput); + writer.close(); + reader.close(); + } + + // Locate Java + String javaNativeFolderName = "C:\\Program Files\\Java"; + String javaX86FolderName = "C:\\Program Files (x86)\\Java"; + File javaNativeFolder = new File(javaNativeFolderName); + File javaX86Folder = new File(javaX86FolderName); + String javaFolderName = javaNativeFolderName; + if(!javaNativeFolder.exists() && javaX86Folder.exists()) { + javaFolderName = javaX86FolderName; + } + + // Creating MOVES2014Home.txt to save MOVES install path. + FileWriter setMOVESHomeWriter = null; + try { + setMOVESHomeWriter = new FileWriter(javaFolderName + "/MOVES2014Home.txt"); + setMOVESHomeWriter.write(installDirectory); + } catch(Exception e) { + System.err.println(e.getMessage()); + } finally { + if(setMOVESHomeWriter != null) { + setMOVESHomeWriter.close(); + } + } + + // setenv.bat changes + String setEnvOutput = "@echo off\r\n" + + "set ANT_HOME=" + installDirectory + "\\Ant\r\n" + + "set JAVA_HOME=" + javaFolderName + "\\jdk1.7.0_45\r\n" + + "set JRE_HOME=" + javaFolderName + "\\jre7\r\n" + + "set CLASSPATH=\r\n"; + + setEnvOutput += "set CLASSPATH=%CLASSPATH%;" + installDirectory + "\\\r\n"; + + String[] jars = { + "jlfgr-1_0.jar", + "junit-4.5.jar", + "mysql-connector-java-5.1.17-bin.jar", + "jaxp-api.jar", + "xercesImpl.jar", + "xml-apis.jar", + "sax.jar", + "jakarta-regexp-1.3.jar", + "jai_core.jar", + "jai_codec.jar", + "commons-lang-2.2.jar", + "geotools\\gt-api-2.5.4.jar", + "geotools\\gt-coverage-2.5.4.jar", + "geotools\\gt-main-2.5.4.jar", + "geotools\\gt-render-2.5.4.jar", + "geotools\\gt-wfs-2.5.4.jar", + "geotools\\gt-wms-2.5.4.jar", + "geotools\\gt2-mappane-2.3.0.jar", + "geotools\\gt-referencing-2.5.4.jar", + "geotools\\jsr-275-1.0-beta-2.jar", + "geotools\\gt-shapefile-2.5.4.jar", + "geotools\\gt-shapefile-renderer-2.5.4.jar", + "geotools\\jts-1.9.jar", + "geotools\\geoapi-2.2-M1.jar", + "geotools\\gt-metadata-2.5.4.jar", + "abbot\\abbot.jar", + "abbot\\bsh-2.0b4.jar", + "abbot\\costello.jar", + "abbot\\gnu-regexp-1.1.0.jar", + "abbot\\jdom-1.0.jar", + "poi\\commons-codec-1.5.jar", + "poi\\commons-logging-1.1.jar", + "poi\\dom4j-1.6.1.jar", + "poi\\log4j-1.2.13.jar", + "poi\\poi-3.9-20121203.jar", + "poi\\poi-ooxml-3.9-20121203.jar", + "poi\\poi-ooxml-schemas-3.9-20121203.jar", + "poi\\stax-api-1.0.1.jar", + "poi\\xmlbeans-2.3.0.jar" + }; + + for(int i=0;i= 0) { + defaultDB = mySQLDirectory.substring(lastSlash + 1, mySQLDirectory.length()); + } else { + defaultDB = mySQLDirectory; + } + currentLine = "defaultDatabaseName = " + defaultDB; + } else if(currentLine.startsWith("sharedDistributedFolderPath")) { + currentLine = "sharedDistributedFolderPath = " + installDirectory + "\\SharedWork"; + } else if(currentLine.startsWith("masterFolderPath")) { + currentLine = "masterFolderPath = " + installDirectory; + } else if(currentLine.startsWith("nonroadExePath")) { + currentLine = "nonroadExePath = " + installDirectory + "\\NONROAD\\NR08a\\NONROAD.exe"; + } else if(currentLine.startsWith("GREETWTPApplication")) { + //currentLine = "GREETWTPApplication = " + installDirectory + + // "\\GREET\\GREETGUI.exe"; + currentLine = ""; // GREET is no longer supported, do not propagate settings + } else if(currentLine.startsWith("GREETManufactureApplication")) { + //currentLine = "GREETManufactureApplication = " + installDirectory + + // "\\GREET\\GREETMfgStub.exe"; + currentLine = ""; // GREET is no longer supported, do not propagate settings + } else if(currentLine.startsWith("GREETDirectory")) { + //currentLine = "GREETDirectory = " + installDirectory + + // "\\GREET"; + currentLine = ""; // GREET is no longer supported, do not propagate settings + } else if(currentLine.startsWith("computerIDPath")) { + //currentLine = "computerIDPath = " + computerIDPath; + // Skip this line, letting the system obtain a computer ID from the TCP/IP host name + currentLine = ""; + } + return currentLine; + } + + /** + * Update a configuration line in a worker file, such as WorkerConfiguration.txt + * or manyworkers.txt. + * @param currentLine text to be updated, never null + * @return updated line or the original line + **/ + String doWorkerReplacements(String currentLine) { + if(currentLine.startsWith("sharedDistributedFolderPath")) { + currentLine = "sharedDistributedFolderPath = " + installDirectory + "\\SharedWork"; + } else if(currentLine.startsWith("workFolderPath")) { + currentLine = "workFolderPath = " + installDirectory + "\\WorkerFolder"; + } else if(currentLine.startsWith("nonroadApplicationPath")) { + currentLine = "nonroadApplicationPath = " + installDirectory + "\\NONROAD\\NR08a\\NONROAD.exe"; + } else if(currentLine.startsWith("nonroadWorkingFolderPath")) { + currentLine = "nonroadWorkingFolderPath = " + installDirectory + "\\NONROAD\\NR08a"; + } else if(currentLine.startsWith("calculatorApplicationPath")) { + currentLine = "calculatorApplicationPath = " + installDirectory + "\\calc\\go\\externalcalculatorgo32.exe"; + } else if(currentLine.startsWith("computerIDPath")) { + //currentLine = "computerIDPath = " + computerIDPath; + // Skip this line, letting the system obtain a computer ID from the TCP/IP host name + currentLine = ""; + } + return currentLine; + } + + /** + * Tries to open an InputStream for the specified file with retries if it fails, and waits + * in between failed attempts. This will throw an exception if the final open attempt fails. + * @param f The File on which to create an InputStream. + * @throws IOException If the final open attempt fails. + * @return An InputStream object. + **/ + public static InputStream openFileInputStreamWithWait(File f) throws IOException { + // attempt to open the input stream, with 3 retries maximum + FileInputStream fs = null; + for(int i = 0; i < 3; i++) { + try { + fs = new FileInputStream(f); + } catch(Exception e) { + // If the third attempt fails, then throw an exception with the current stack + // trace info + if(i == 2) { + throw new IOException(); + } + } + if(fs == null) { + try { + java.lang.Thread.sleep(250); + } catch(InterruptedException e) { + // Nothing to do here + } + } + } + return fs; + } +} diff --git a/gov/epa/otaq/moves/installer/ExecuteScript.java b/gov/epa/otaq/moves/installer/ExecuteScript.java new file mode 100644 index 0000000..7f400ab --- /dev/null +++ b/gov/epa/otaq/moves/installer/ExecuteScript.java @@ -0,0 +1,79 @@ +/************************************************************************************************** + * @(#)ExecuteScript.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.installer; + +import java.awt.*; +import javax.swing.*; +import gov.epa.otaq.moves.common.*; +import java.sql.*; +import java.io.*; +import java.net.*; + +/** + * Executes a sql script. Used to execute MOVES update sql scripts. + * + * @author Wes Faler + * @version 2009-03-16 +**/ +public class ExecuteScript { + /** + * Entry point + * @param args command line arguments, consisting of the full path to a script file, + * followed by the database name. + **/ + public static void main(String[] args) { + // First get the sql script + String sqlScript = args[0]; + String dbName = args[1]; + + while(dbName.endsWith("/") || dbName.endsWith("\\")) { + dbName = dbName.substring(0,dbName.length()-1).trim(); + } + int slashIndex = dbName.lastIndexOf('/'); + int backSlashIndex = dbName.lastIndexOf('\\'); + int index = Math.max(slashIndex,backSlashIndex); + if(index >= 0) { + dbName = dbName.substring(index+1); + } + + Connection dbConnection = null; + File sql = new File(sqlScript); + + try { + // Create DB connection + DatabaseSelection db = new DatabaseSelection(); + // set database parameters + db.serverName= "localhost"; + db.databaseName = dbName; + + //JOptionPane.showMessageDialog(null,"Updating database " + dbName + // + " using script: " + sql.getCanonicalPath()); + + dbConnection = db.openConnection(); + // execute script + DatabaseUtilities.executeScript(dbConnection, sql); + } catch(Exception e) { + /** + * @issue Database update error: [*] + * @explain An error occurred while making database changes via an installer script. + **/ + System.err.println(e.getMessage()); + JOptionPane.showMessageDialog(null,"Database update error: " + e.getMessage()); + } catch(Error e) { + /** + * @issue Database update error: [*] + * @explain An error occurred while making database changes via an installer script. + **/ + System.err.println(e.getMessage()); + JOptionPane.showMessageDialog(null,"Database update error: " + e.getMessage()); + } finally { + if(dbConnection != null) { + DatabaseUtilities.closeConnection(dbConnection); + } + } + } +} diff --git a/gov/epa/otaq/moves/installer/InstallationConfig.java b/gov/epa/otaq/moves/installer/InstallationConfig.java new file mode 100644 index 0000000..de28dc9 --- /dev/null +++ b/gov/epa/otaq/moves/installer/InstallationConfig.java @@ -0,0 +1,35 @@ +/************************************************************************************************** + * @(#)InstallationConfig.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.installer; + +/** + * Sets up and modifies MOVES configuration file. + * Will be executed during the MOVES installation package + * + * @author Cimulus + * @version 2006-07-10 +**/ +public class InstallationConfig { + /** + * Entry point + * @param args Command line arguments consisting of:
      + *
    • path of MySQL data directory
    • + *
    • Location of worker configuration file
    • + *
    • Location of MOVES configuration file
    • + *
    • install directory
    • + *
    + **/ + public static void main(String[] args) { + // check if any arguments were passed to the appplication + if(args.length <= 0) { + System.err.println("Error: No arguments passed."); + return; + } + ConfigurationWriter writer = new ConfigurationWriter(args[0], args[1], args[2], args[3]); + writer.write(); + } +} diff --git a/gov/epa/otaq/moves/installer/InstallationWriter.java b/gov/epa/otaq/moves/installer/InstallationWriter.java new file mode 100644 index 0000000..9a2c490 --- /dev/null +++ b/gov/epa/otaq/moves/installer/InstallationWriter.java @@ -0,0 +1,123 @@ +/************************************************************************************************** + * @(#)InstallationWriter.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.installer; + +import java.io.*; + +/** + * Modifies existing installation package configuration files. + * + * @author Wesley Faler + * @version 2014-01-15 +**/ +public class InstallationWriter { + /** Build information for human display, such as date YYYY/MM/DD **/ + private String buildForHuman; + /** Build information for computer use, with spaces removed **/ + private String buildForComputer; + /** Date part of the database name in YYYYMMDD format **/ + private String dbVersion; + /** Directory with build.xml in it. Used to find files to modify. **/ + private String buildFileDir; + + /** + * Constructor + * @param build build version, likely MOVESWindow date in YYYYMMDD format but can also + * be wording such as "Draft 2009" + * @param db Date part of the database name in YYYYMMDD format + * @param baseDir Directory with build.xml in it. Used to find files to modify. + * @param dbDir Directory holding all databases. Must end with a backslash. + **/ + public InstallationWriter(String build, String db, String baseDir) { + dbVersion = db; + buildFileDir = baseDir; + + buildForComputer = build.replace(' ','_'); + buildForHuman = build; + if(build.length() == 8) { + boolean isDate = true; + for(int i=0;i") != -1) { + // mark where the tag ends + int index = currentLine.indexOf("") + 12; + currentLine = currentLine.substring(0, index) + buildForComputer + ""; + } else if(currentLine.indexOf("") != -1 && currentLine.indexOf(" "; + } + currentLine += "\r\n"; + installOutput += currentLine; + currentLine = installReader.readLine(); + } + installReader.close(); + // Save changes to file system + BufferedWriter installWriter = new BufferedWriter (new FileWriter (buildFileDir + + "/install.xml")); + installWriter.write(installOutput); + installWriter.close(); + // Overwrite C:\Program Files\MOVES{Build Date} in path_windows.txt + BufferedWriter pathWriter = new BufferedWriter (new FileWriter(buildFileDir + + "/installer/MOVESInstaller/InstallationPackage/path_windows.txt")); + pathWriter.write("C:\\Program Files\\" + buildForComputer + "\r\n"); + pathWriter.close(); + // Change version number in MOVESWindow.java + currentLine = windowReader.readLine(); + String windowOutput = ""; + while(currentLine != null) { + if(currentLine.indexOf("@version") != -1) { + int index = currentLine.indexOf("@version") + 8; + currentLine = currentLine.substring(0,index) + "\t " + buildForHuman; + } else if(currentLine.indexOf("public static final String MOVES_VERSION = ") + != -1) { + int index = + currentLine.indexOf("public static final String MOVES_VERSION = ") + + 43; + currentLine = currentLine.substring(0,index) + '"' + buildForHuman + '"' + ';'; + } + currentLine += "\r\n"; + windowOutput += currentLine; + currentLine = windowReader.readLine(); + } + windowReader.close(); + // Save file changes + BufferedWriter windowWriter = new BufferedWriter(new FileWriter(buildFileDir + + "/gov/epa/otaq/moves/master/gui/MOVESWindow.java")); + windowWriter.write(windowOutput); + windowWriter.close(); + } catch (FileNotFoundException e) { + System.err.println(e.getMessage()); + } catch (IOException e) { + System.err.println(e.getMessage()); + } + } +} diff --git a/gov/epa/otaq/moves/installer/MOVESInstallDeveloper.java b/gov/epa/otaq/moves/installer/MOVESInstallDeveloper.java new file mode 100644 index 0000000..3738df3 --- /dev/null +++ b/gov/epa/otaq/moves/installer/MOVESInstallDeveloper.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)MOVESInstallDeveloper.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.installer; + +/** + * Main class for developer installation creation application. + * + * @author Wesley Faler + * @version 2009-07-18 +**/ +public class MOVESInstallDeveloper { + /** + * Entry point + * @param args Command line arguments consisting of:
      + *
    • Build version, likely MOVESWindow date in YYYYMMDD format but can also + * be wording such as "Draft 2009"
    • + *
    • Date part of the database name in YYYYMMDD format
    • + *
    • Directory with build.xml in it. Used to find files to modify.
    • + *
    + **/ + public static void main(String[] args) { + InstallationWriter writer = new InstallationWriter(args[0],args[1],args[2]); + writer.write(); + } +} diff --git a/gov/epa/otaq/moves/master/commandline/DatabaseConverter.java b/gov/epa/otaq/moves/master/commandline/DatabaseConverter.java new file mode 100644 index 0000000..2373aba --- /dev/null +++ b/gov/epa/otaq/moves/master/commandline/DatabaseConverter.java @@ -0,0 +1,127 @@ +/************************************************************************************************** + * @(#)DatabaseConverter.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.commandline; + +import java.io.*; +import java.sql.*; +import java.util.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Batch mode conversion of databases. + * + * @author Wes Faler + * @version 2011-11-07 +**/ +public class DatabaseConverter { + /** Invokes the main application. **/ + public static void main(String[] args) { + Configuration.allowGUI = false; + + if(!SystemConfiguration.getTheSystemConfiguration().didLoad) { + System.exit(1); + } + + // Find command line arguments + String inputDatabaseName = ""; + String outputDatabaseName = ""; + String scriptName = ""; + for(int i=0;i messages = new ArrayList(); + try { + DatabaseUtilities.executeConversionScript(scriptFile,outputDatabase,inputDatabase,defaultDatabase,messages); + System.out.println("Conversion successful."); + } catch(Exception e) { + System.out.println("Conversion failed: " + e.getMessage()); + e.printStackTrace(); + System.exit(1); + } + for(Iterator i=messages.iterator();i.hasNext();) { + String message = i.next(); + System.out.println(message); + } + + System.exit(0); + } + + /** + * Get the data portion of an option of the form "-option=data". + * @param optionText full option text + * @return data portion of the option, never null but may be blank + **/ + static String getOptionData(String optionText) { + int index = optionText.indexOf('='); + if(index < 0) { + return ""; + } + return StringUtilities.substring(optionText,index+1).trim(); + } + + /** + * Locate a script file, looking first in the current working directory + * then in the database folder then in the database/ConversionScripts folder. + * @param name name of the file to be located + * @return the located file or null if the file does not exist + **/ + static File findFile(String name) { + File f = new File(name); + if(f.exists()) { + return f; + } + + f = new File("database",name); + if(f.exists()) { + return f; + } + + f = new File("database/ConversionScripts",name); + if(f.exists()) { + return f; + } + + return null; + } +} diff --git a/gov/epa/otaq/moves/master/commandline/MOVESCommandLine.java b/gov/epa/otaq/moves/master/commandline/MOVESCommandLine.java new file mode 100644 index 0000000..460552b --- /dev/null +++ b/gov/epa/otaq/moves/master/commandline/MOVESCommandLine.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)MOVESCommandLine.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.commandline; + + + +import java.io.*; +import java.sql.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Class for MovesCommandLine, contains main() which invokes Moves in a "batch" mode (no UI). + * + * @author Wes Faler + * @version 2010-07-05 +**/ +public class MOVESCommandLine { + /** Invokes the main application. **/ + public static void main(String[] args) { + Configuration.allowGUI = false; + + if(!SystemConfiguration.getTheSystemConfiguration().didLoad) { + System.exit(1); + } + + MOVESAPI theAPI = MOVESAPI.getTheAPI(); + theAPI.runApplication(args); + DatabaseConnectionManager.flushTables(); + /** @nonissue **/ + System.out.println("MOVESCommandLine after runApplication"); + System.out.flush(); + MOVESThread.signalAllToTerminate(); + System.exit(0); + } +} diff --git a/gov/epa/otaq/moves/master/commandline/SetLogin.java b/gov/epa/otaq/moves/master/commandline/SetLogin.java new file mode 100644 index 0000000..a352755 --- /dev/null +++ b/gov/epa/otaq/moves/master/commandline/SetLogin.java @@ -0,0 +1,90 @@ +/************************************************************************************************** + * @(#)SetLogin.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.commandline; + +import java.io.*; +import java.sql.*; +import java.util.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Apply MySQL login information to all configuration files. + * + * @author Wes Faler + * @version 2013-12-02 +**/ +public class SetLogin { + /** Invokes the main application. **/ + public static void main(String[] args) { + Configuration.allowGUI = false; + + if(!SystemConfiguration.getTheSystemConfiguration().didLoad) { + System.exit(1); + } + + // Find command line arguments + String userName = null, password = null; + for(int i=0;i + *
    + * All SQL is generated, once, at the start of an execution run. The resulting SQL + * is executed by the Workers or by the OutputProcessor after the calculated output + * of a worker has been imported into the output database and the IntegratedPostProcessors + * have been run.
    + *
    + * A word about aggregation concepts is essential to understanding this class. To aggregate a table T + * with detail columns A, B, and C and quantity column Q, one might use the following SQL: + *
    + * 	SELECT A, B, C, SUM(Q) As Q
    + * 	FROM T
    + * 	GROUP BY A, B, C
    + * 
    + * If detail C is not required, then the following SQL could be used: + *
    + * 	SELECT A, B, null AS C, SUM(Q) AS Q
    + * 	FROM T
    + * 	GROUP BY A, B
    + * 
    + * This form has the same column format as the original table T which is advantagous if the aggregated + * output needs to be intermixed (even temporarily) with unaggregated output. It also allows a single + * database schema to be used regardless of the aggregation options selected.
    + *
    + * If neither detail B nor C is required, then the SQL becomes: + *
    + * 	SELECT A, null AS B, null AS C, SUM(Q) AS Q
    + * 	FROM T
    + * 	GROUP BY A
    + * 
    + * Thus, the general rule for aggregation is to consider each detail column and contribute appropriately + * to the SELECT'd columns clause and to the GROUP BY clause.
    + *
    + * Seldom is a mere SELECT appropriate. In fact, the aggregated results in MOVES must end up back in the + * original table (hence the use of "null AS C" clauses) intermixed with results from other runs. + * To accomplish this, the general structure is revised to include a new temporary table T2 and filtering + * of T's data: + *
    + * 	CREATE TABLE T2 .....
    + *
    + * 	INSERT INTO T2 (A, B, C, Q)
    + * 	SELECT A, B, null AS C, SUM(Q) AS Q
    + * 	FROM T
    + * 	WHERE T.RunID = (desired subset of simulation runs in T)
    + * 	GROUP BY A, B
    + *
    + * 	DELETE FROM T
    + * 	WHERE T.RunID = (desired subset of simulation runs in T)
    + *
    + * 	INSERT INTO T (A, B, C, Q)
    + * 	SELECT A, B, C, Q
    + * 	FROM T2
    + *
    + * 	DROP TABLE T2
    + * 
    + * The need for the INSERT statement to name columns adds a third clause that the detail column examination + * must contribute to. The 3 common clauses are highlighted above. The generateBaseSQLForAggregation() + * method is responsible for building these common clauses, which are then assembled into specialized + * SQL for Worker, intermediate processing, and final processing by the generateSQLsForWorker(), + * generateSQLsForOutputProcessor(), and generateSQLsForFinalProcessing() methods respectively.
    + *
    + * The issue of inflating the daily output up to monthly numbers must also be considered during aggregation. + * SQL provides a convenient keyword for this: CASE. In general, CASE is used to change the value SELECT'd + * depending upon an expression. For example: + *
    + * 	SELECT C, CASE
    + * 			WHEN C = 2 THEN Q * 28 / 7
    + * 			WHEN C = 12 THEN Q * 31 / 7
    + * 			ELSE Q * 30 / 7
    + * 		  END AS Q
    + * 	FROM T
    + * 
    + * The above SQL will return a modified value of Q for each row by examining C in the row and performing + * different math for each value of C. Aggregating with this tool changes our SQL example to: + *
    + * 	SELECT A, B, null AS C, SUM(CASE
    + * 			WHEN C = 2 THEN Q * 28 / 7
    + * 			WHEN C = 12 THEN Q * 31 / 7
    + * 			ELSE Q * 30 / 7
    + * 		  END) AS Q
    + * 	FROM T
    + * 	GROUP BY A, B
    + * 
    + * Note that the "C" column used in the CASE statement is the "C" column from the table, not the null value + * labeled as "C" in the SELECT'd output.
    + *
    + * This technique is used in the SQL sent to Workers to inflate data to a value consistent with the + * number of days in each month. + * @author Wesley Faler + * @version 2015-07-16 +**/ +public class AggregationSQLGenerator { + /** true to display aggregation SQL statements. **/ + private static final boolean shouldDebug = false; + + /** true when Nonroad results can be aggregated, false during testing **/ + private static final boolean ENABLE_NONROAD_AGGREGATION = true; + + /** + * Partial SQL to create the WorkerOutputTemp table from an output table. + **/ + private String createSQL = "CREATE TABLE WorkerOutputTemp(" + + " MOVESRunID SMALLINT UNSIGNED NOT NULL," + + " iterationID SMALLINT UNSIGNED DEFAULT 1," + + " yearID SMALLINT UNSIGNED NULL," + + " monthID SMALLINT UNSIGNED NULL," + + " dayID SMALLINT UNSIGNED NULL," + + " hourID SMALLINT UNSIGNED NULL," + + " stateID SMALLINT UNSIGNED NULL," + + " countyID INTEGER UNSIGNED NULL," + + " zoneID INTEGER UNSIGNED NULL," + + " linkID INTEGER UNSIGNED NULL," + + " pollutantID SMALLINT UNSIGNED NULL," + + " roadTypeID SMALLINT UNSIGNED NULL," + + " processID SMALLINT UNSIGNED NULL," + + " fuelTypeID SMALLINT UNSIGNED NULL," + + " fuelSubTypeID SMALLINT UNSIGNED NULL," + + " modelYearID SMALLINT UNSIGNED NULL," + + " sourceTypeID SMALLINT UNSIGNED NULL," + + " regClassID SMALLINT UNSIGNED NULL," + + " SCC CHAR(10) NULL," + + " engTechID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " sectorID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " hpID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " emissionQuant FLOAT NULL," + + " emissionRate FLOAT NULL)"; + /** + * Partial SQL to create the WorkerOutputActivityTemp table from an output table. + **/ + private String createActivitySQL = "CREATE TABLE WorkerActivityOutputTemp(" + + " MOVESRunID SMALLINT UNSIGNED NOT NULL," + + " iterationID SMALLINT UNSIGNED DEFAULT 1," + + " yearID SMALLINT UNSIGNED NULL," + + " monthID SMALLINT UNSIGNED NULL," + + " dayID SMALLINT UNSIGNED NULL," + + " hourID SMALLINT UNSIGNED NULL," + + " stateID SMALLINT UNSIGNED NULL," + + " countyID INTEGER UNSIGNED NULL," + + " zoneID INTEGER UNSIGNED NULL," + + " linkID INTEGER UNSIGNED NULL," + + " roadTypeID SMALLINT UNSIGNED NULL," + + " fuelTypeID SMALLINT UNSIGNED NULL," + + " modelYearID SMALLINT UNSIGNED NULL," + + " sourceTypeID SMALLINT UNSIGNED NULL," + + " regClassID SMALLINT UNSIGNED NULL," + + " SCC CHAR(10) NULL," + + " engTechID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " sectorID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " hpID SMALLINT UNSIGNED NULL DEFAULT NULL," + + " activityTypeID SMALLINT NOT NULL," + + " activity FLOAT NULL" + + ") "; + + /** + * Partial SQL to create the WorkerBaseRateOutputTemp table from an output table. + **/ + private String createBaseRateOutputSQL = "CREATE TABLE WorkerBaseRateOutputTemp like BaseRateOutput"; + + /** + * SQL to insert into a worker's WorkerOutputTemp table from an output table. + **/ + private String workerInsertSQL; + + /** + * SQL to insert into master's WorkerOutputTemp table from an output table. + **/ + private String masterInsertSQL; + + /** + * SQL to select from a master's output table. Insert into WorkerOutputTemp uses this select statement. + **/ + private String masterSelectSQL; + + /** + * SQL to select from a worker's output table. Insert into WorkerOutputTemp uses this select statement. + **/ + private String workerSelectSQL; + + /** + * Group by segment of the SQL for select statement. + **/ + private String groupBy; + + /** + * SQL to insert into WorkerActivityOutputTemp table from an activity output table. + **/ + private String insertActivitySQL; + + /** + * SQL to select from an activity output table. Insert into WorkerActivityOutputTemp uses this + * select statement. + **/ + private String selectActivitySQL; + + /** + * Group by segment of the SQL for activity output select statement. + **/ + private String groupByActivity; + + /** Group by segment of the SQL for population activity output **/ + private String groupByActivitySpatialOnly = ""; + /** + * SQL to select population from an activity output table. Insert into + * WorkerActivityOutputTemp uses this select statement. + **/ + private String selectActivityNoScaleSQL = ""; + + /** + * SQL to insert into WorkerBaseRateOutputTemp table. + **/ + private String insertBaseRateOutputSQL; + + /** + * SQL to select from a BaseRateOutput table. Insert into WorkerBaseRateOutputTemp uses this + * select statement. + **/ + private String selectBaseRateOutputSQL; + + /** + * Group by segment of the SQL for BaseRateOutput select statement. + **/ + private String groupByBaseRateOutput; + + /** SQL executed by outputProcessor while processing worker files. **/ + public Vector outputProcessorSQLs = new Vector(); + + /** SQL statements to be executed by the worker. Each must end with a semicolon. **/ + public Vector workerSQLs = new Vector(); + + /** + * Final aggregation SQL statements, executed by OutputProcessor while + * doing final processing. + **/ + public Vector finalProcessSQLs = new Vector(); + + /** + * Output fields on a master, to insert values into output table from the temporary aggregated table. + **/ + private String masterOutputTableFields = "MOVESRunID," + +"iterationID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"pollutantID," + +"roadTypeID," + +"processID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +(CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT? "fuelSubTypeID," : "") + +"modelYearID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"emissionQuant"; + + /** + * Output fields on worker, to insert values into output table from the temporary aggregated table. + **/ + private String workerOutputTableFields = "MOVESRunID," + +"iterationID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"pollutantID," + +"roadTypeID," + +"processID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"fuelSubTypeID," + +"modelYearID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"emissionQuant," + +"emissionRate"; + + /** + * Activity Output fields, to insert values into activity output table from the + * temporary aggregated table. + **/ + private String outputActivityTableFields = "MOVESRunID," + +"iterationID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"roadTypeID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"modelYearID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"activityTypeID," + +"activity"; + + /** + * BaseRateOutput fields, to insert values into output table from the temporary aggregated table. + **/ + private String outputBaseRateOutputTableFields = "MOVESRunID," + +"iterationID," + +"zoneID," + +"linkID," + +"sourceTypeID," + +"SCC," + +"roadTypeID," + +"avgSpeedBinID," + +"monthID," + +"hourDayID," + +"pollutantID," + +"processID," + +"modelYearID," + +"yearID," + +"fuelTypeID," + +"regClassID," + +"meanBaseRate," + +"emissionRate"; + + /** + * Select statement for inserting values into a master Output table. Doesn't have FROM, WHERE, ORDER BY, + * GROUP BY. Just fields. + **/ + private String selectSQLForMasterOutput = "SELECT " + masterOutputTableFields; + + /** + * Select statement for inserting values into a worker Output table. Doesn't have FROM, WHERE, ORDER BY, + * GROUP BY. Just fields. + **/ + private String selectSQLForWorkerOutput = "SELECT " + workerOutputTableFields; + + /** + * Select statement for inserting values into Activity Output table. Doesn't have FROM, WHERE, + * ORDER BY, GROUP BY. Just fields. + **/ + private String selectSQLForActivityOutput = "SELECT " + outputActivityTableFields; + + /** + * Select statement for inserting values into BaseRateOutput table. Doesn't have FROM, WHERE, + * ORDER BY, GROUP BY. Just fields. + **/ + private String selectSQLForBaseRateOutput = "SELECT " + outputBaseRateOutputTableFields; + + /** The active run ID. This is significant in the output database. **/ + int activeRunID = 0; + + /** The active iteration ID. This is significant in the output database. **/ + int activeIterationID = 0; + + /** true after issues have already been reported **/ + boolean didReportIssues = false; + + /** true after report SQL has already been generated **/ + boolean didGenerateReportSQL = false; + + /** true when Nonroad activity outputs must be weighted before aggregation **/ + boolean nrNeedsActivityWeight = false; + + /** SQL statements that weight Nonroad activity output before aggregation **/ + ArrayList nrActivityWeightSQL = new ArrayList(); + + /** + * Default constructor + **/ + public AggregationSQLGenerator() { + + } + + /** + * Builds the aggregation SQL using data from the ExecutionRunSpec singleton. Typically, this + * method is called once and the aggregated result will be stored in an output table. + * @return false if fails + **/ + public boolean generateReportSQL() { + if(MOVESEngine.theInstance != null) { + activeRunID = MOVESEngine.theInstance.getActiveRunID(); + activeIterationID = MOVESEngine.theInstance.getActiveIterationID(); + } + if(didGenerateReportSQL) { + return true; + } + if(!validateAggregation()) { + return false; + } + if(!generateSQLsForWorker()) { + return false; + } + logSQL("Worker",workerSQLs); + + if(!generateSQLsForOutputProcessor()) { + return false; + } + logSQL("OutputProcessor",outputProcessorSQLs); + + if(!generateSQLsForFinalProcessing()) { + return false; + } + logSQL("Final",finalProcessSQLs); + + didGenerateReportSQL = true; + return true; + } + + /** + * Display aggregation SQL statements. + * @param purpose use of the SQL, such as "Worker" or "Final". + * @param statements SQL statements, never null, may be empty. + **/ + void logSQL(String purpose, Vector statements) { + if(!shouldDebug) { + return; + } + Logger.log(LogMessageCategory.DEBUG,"Aggregation statements for: " + purpose); + for(String sql : statements) { + if(sql.length() > 0) { + Logger.log(LogMessageCategory.DEBUG,sql); + } + } + Logger.log(LogMessageCategory.DEBUG,"End of aggregation statements for: " + purpose); + } + + /** + * Validates the RunSpec's output parameters before aggregation. + * @return false if there is any problem during validation + **/ + boolean validateAggregation() { + try { + // All the time periods required are present in the runspec. + OutputTimeStep outputTimeStep = + ExecutionRunSpec.theExecutionRunSpec.getOutputTimeStep(); + TimeSpan timeSpan = ExecutionRunSpec.theExecutionRunSpec.getTimeSpan(); + if(!ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD)) { + if(outputTimeStep.requiresAllHours()) { + if(!timeSpan.hasAllHours() && !didReportIssues) { + /** + * @explain Hour is not a desired output dimension yet aggregation is + * called for. When reporting results, be sure to include the fact that the + * totals do not include all hours. + **/ + Logger.log(LogMessageCategory.WARNING, + "Warning: RunSpec doesn't have all the Hours."); + } + } + } + Connection defaultDB = null; + try { + defaultDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + if(outputTimeStep.requiresAllDays()) { + if(!timeSpan.hasAllDays(defaultDB) && !didReportIssues) { + /** + * @explain Day is not a desired output dimension yet aggregation is + * called for. When reporting results, be sure to include the fact that the + * totals do not include all days. + **/ + Logger.log(LogMessageCategory.WARNING, + "Warning: RunSpec doesn't have all the Days."); + } + } + } catch(Exception e) { + /** + * @explain A database error was encountered while checking for aggregation + * suitability. + **/ + Logger.logError(e, "Failed to validate data for aggregation"); + return false; + } finally { + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDB); + defaultDB = null; + } + } + if(outputTimeStep.requiresAllMonths()) { + if(!timeSpan.hasAllMonths() && !didReportIssues) { + /** + * @explain Month is not a desired output dimension yet aggregation is + * called for. When reporting results, be sure to include the fact that the + * totals do not include all months. + **/ + Logger.log(LogMessageCategory.WARNING, + "Warning: RunSpec doesn't have all the Months."); + } + } + + // All the roadtypes required are present in the runspec. + Connection executionDatabase = null; + try { + executionDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + // Size comparision, is to make sure runspec has all the roadtypes. + if(!ExecutionRunSpec.theExecutionRunSpec. + getOutputEmissionsBreakdownSelection().roadType) { + int dbRoadTypeCount = 0; + String sql = "SELECT COUNT(*) FROM RoadType where shouldDisplay=1 and roadTypeID not in (1,100)"; + Models.ModelCombination mc = ExecutionRunSpec.getRunSpec().getModelCombination(); + switch (mc) { + case M1: + sql += " and isAffectedByOnroad is true"; + break; + case M2: + sql += " and isAffectedByNonroad is true"; + break; + default: + break; + } + ResultSet result = SQLRunner.executeQuery(executionDatabase, sql); + if(result.next()) { + dbRoadTypeCount = result.getInt(1); + } + result.close(); + + int runSpecRoadTypeCount = 0; + for(RoadType r : ExecutionRunSpec.theExecutionRunSpec.getRoadTypes()) { + if(r.roadTypeID == 1 || r.roadTypeID == 100 + || r.roadTypeID == 6 || r.roadTypeID == 7 + || r.roadTypeID == 8 || r.roadTypeID == 9) { + // Skip hidden roads, only counting road types + // that matter when aggregated (non-1, non-100) + // and that are shown to the user. + continue; + } + if(ExecutionRunSpec.theExecutionRunSpec.getModels().containsAny(r.mc)) { + runSpecRoadTypeCount++; + } + } + if(runSpecRoadTypeCount != dbRoadTypeCount && !didReportIssues) { + /** + * @explain RoadType is not a desired output dimension yet aggregation is + * called for. When reporting results, be sure to include the fact that the + * totals do not include all road types. + **/ + Logger.log(LogMessageCategory.WARNING, + "Warning: RunSpec doesn't have all the RoadTypes."); + } + } + } catch(Exception e) { + /** + * @explain A database error was encountered while checking for aggregation + * suitability. + **/ + Logger.logError(e, "Failed to validate data for aggregation"); + return false; + } finally { + if(executionDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + } + + // Can uncertainty estimation be performed. + OutputEmissionsBreakdownSelection outputEmissionsBreakdownSelection = + ExecutionRunSpec.theExecutionRunSpec.getOutputEmissionsBreakdownSelection(); + if(outputEmissionsBreakdownSelection.estimateUncertainty) { + TreeSet geographicSelections = + ExecutionRunSpec.theExecutionRunSpec.getGeographicSelections(); + GeographicSelectionType geoType = null; + Iterator i = geographicSelections.iterator(); + if(i.hasNext()) { + geoType = ((GeographicSelection) i.next()).type; + } + if(geoType != null) { + if(geoType == GeographicSelectionType.NATION + || geoType == GeographicSelectionType.STATE) { + if(!didReportIssues) { + /** + * @explain Uncertainty cannot be done for NATION or STATE aggregation. + **/ + Logger.log(LogMessageCategory.WARNING, + "Uncertainty cannot be estimated for aggregated data."); + return false; + } + } + } + } + return true; + } finally { + didReportIssues = true; + } + } + + /** + * Generates SQLs to be processed by worker, to aggregate worker output. + *

    + * NOTE: ALL SQL STATEMENTS CREATED FOR WORKERS *MUST* END WITH A SEMICOLON!!! + * This allows parsing of the SQL file by the worker when the statements + * are multiple lines long. + * @return false if there is any problem while generating SQLs. + **/ + boolean generateSQLsForWorker() { + if(!ENABLE_NONROAD_AGGREGATION + && ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD)) { + // Temporarily disable all aggregation for Nonroad runs. + return true; + } + + workerSQLs.add("starttimer GeneralAggregation;"); + + // When restricted road types are used with the flag to provide separate + // ramp output, the calculations are done on the restricted road type then + // must be converted to the pure/non-ramp roadTypeID values after all other + // calculations are done on the worker. + // This must be done after any SCCs are assigned since SCCs use the blended + // road type IDs. + if(ExecutionRunSpec.theExecutionRunSpec.shouldSeparateRamps()) { + String[] tables = { + "MOVESWorkerOutput", "MOVESWorkerActivityOutput", + (CompilationFlags.DO_RATES_FIRST? "BaseRateOutput":"") + }; + for(int i=0;i 6 " + + groupByActivity + ";"); + workerSQLs.add(insertActivitySQL + ") " + selectActivityNoScaleSQL + + " FROM MOVESWorkerActivityOutput " + + " WHERE activityTypeID=6 " + + groupByActivitySpatialOnly + ";"); + } else { + workerSQLs.add(insertActivitySQL + ") " + selectActivitySQL + + " FROM MOVESWorkerActivityOutput " + + groupByActivity + ";"); + } + + workerSQLs.add("TRUNCATE MOVESWorkerActivityOutput;"); + //workerSQLs.add("FLUSH TABLES;"); + String insertActivityOutputSQL = "INSERT INTO MOVESWorkerActivityOutput (" + + outputActivityTableFields + ") " + + selectSQLForActivityOutput + " FROM WorkerActivityOutputTemp;"; + workerSQLs.add(insertActivityOutputSQL+";"); + //workerSQLs.add("FLUSH TABLES;"); + workerSQLs.add("DROP TABLE IF EXISTS WorkerActivityOutputTemp;"); + // Update all MOVESWorkerActivityOutput key fields to non-NULL values + // This facilitates the overlay algorithm needed by the master. + String sql = "UPDATE MOVESWorkerActivityOutput SET "; + String[] affectedColumns = { + "yearID", "monthID", "dayID", "hourID", "stateID", "countyID", "zoneID", + "linkID", "sourceTypeID", "regClassID", "fuelTypeID", "modelYearID", "roadTypeID", + "engTechID", "sectorID", "hpID" + }; + for(int i=0;i 0) { + sql += ", "; + } + sql += affectedColumns[i] + "=coalesce(" + affectedColumns[i] + ",0)"; + } + sql += ", scc=coalesce(scc,'NOTHING');"; + workerSQLs.add(sql); + //workerSQLs.add("FLUSH TABLES;"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQL for Workers Activity"); + return false; + } + + workerSQLs.add("starttimer GeneralAggregation;"); + + // Aggregate base rates + if(CompilationFlags.DO_RATES_FIRST) { + try { + workerSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp;"); + workerSQLs.add(createBaseRateOutputSQL+";"); + workerSQLs.add(insertBaseRateOutputSQL + ") " + selectBaseRateOutputSQL + + " FROM BaseRateOutput " + + groupByBaseRateOutput + ";"); + workerSQLs.add("TRUNCATE BaseRateOutput;"); + //workerSQLs.add("FLUSH TABLES;"); + String insertBaseRateOutputSQL = "INSERT INTO BaseRateOutput (" + + outputBaseRateOutputTableFields + ") " + + selectSQLForBaseRateOutput + " FROM WorkerBaseRateOutputTemp;"; + workerSQLs.add(insertBaseRateOutputSQL+";"); + //workerSQLs.add("FLUSH TABLES;"); + workerSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp;"); + //workerSQLs.add("FLUSH TABLES;"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQL for Base Rate Output"); + return false; + } + } + + return true; + } + + /** + * This method generates the base SQL for the aggregation and populates createSQL, + * masterInsertSQL, workerInsertSQL, masterSelectSQL, and workerSelectSQL. + * @param isWorkerSQL true if the SQL is being created for use on the workers + * @return false if there is any problem creating the SQL + **/ + boolean generateBaseSQLForAggregation(boolean isWorkerSQL) { + boolean convertDays = false; + boolean convertWeeks = false; + masterInsertSQL = "INSERT INTO WorkerOutputTemp ( MOVESRunID, iterationID"; + workerInsertSQL = "INSERT INTO WorkerOutputTemp ( MOVESRunID, iterationID"; + masterSelectSQL = " SELECT MOVESRunID, iterationID"; + workerSelectSQL = " SELECT MOVESRunID, iterationID"; + groupBy = "GROUP BY MOVESRunID, iterationID"; + + insertActivitySQL = "INSERT INTO WorkerActivityOutputTemp ( MOVESRunID, iterationID"; + selectActivitySQL = " SELECT MOVESRunID, iterationID"; + groupByActivity = "GROUP BY MOVESRunID, iterationID"; + groupByActivitySpatialOnly = "GROUP BY MOVESRunID, iterationID"; + + insertBaseRateOutputSQL = "INSERT INTO WorkerBaseRateOutputTemp ( MOVESRunID, iterationID"; + selectBaseRateOutputSQL = " SELECT MOVESRunID, iterationID"; + groupByBaseRateOutput = "GROUP BY MOVESRunID, iterationID"; + + nrNeedsActivityWeight = false; + nrActivityWeightSQL.clear(); + TreeSetIgnoreCase nrActivitySummaryColumns = new TreeSetIgnoreCase(); + + try { + // Time period + masterInsertSQL += ", yearID, monthID, dayID, hourID"; + workerInsertSQL += ", yearID, monthID, dayID, hourID"; + insertActivitySQL += ", yearID, monthID, dayID, hourID"; + insertBaseRateOutputSQL += ", yearID, monthID, hourDayID"; + OutputTimeStep outputTimeStep = ExecutionRunSpec.theExecutionRunSpec.getOutputTimeStep(); + + groupByActivitySpatialOnly += ", yearID, monthID, dayID, hourID"; + if(outputTimeStep.requiresAllHours() && outputTimeStep.requiresAllDays() + && outputTimeStep.requiresAllMonths()) { + // Output results in years. + masterSelectSQL += ", yearID, null as monthID, null as dayID, null as hourID"; + workerSelectSQL += ", yearID, null as monthID, null as dayID, null as hourID"; + groupBy += ", yearID"; + convertWeeks = true; + selectActivitySQL += ", yearID, null as monthID, null as dayID, null as hourID"; + groupByActivity += ", yearID"; + selectBaseRateOutputSQL += ", yearID, 0 as monthID, 0 as hourDayID"; + groupByBaseRateOutput += ", yearID"; + + nrActivitySummaryColumns.add("yearID"); + nrNeedsActivityWeight = true; + } else if(outputTimeStep.requiresAllHours() && + outputTimeStep.requiresAllDays()) { + // Output results in months + masterSelectSQL += ", yearID, monthID, null as dayID, null as hourID"; + workerSelectSQL += ", yearID, monthID, null as dayID, null as hourID"; + groupBy += ", yearID, monthID"; + convertWeeks = true; + selectActivitySQL += ", yearID, monthID, null as dayID, null as hourID"; + groupByActivity += ", yearID, monthID"; + selectBaseRateOutputSQL += ", yearID, monthID, 0 as hourDayID"; + groupByBaseRateOutput += ", yearID, monthID"; + + nrActivitySummaryColumns.add("yearID"); + nrActivitySummaryColumns.add("monthID"); + nrNeedsActivityWeight = true; + } else if(outputTimeStep.requiresAllHours()) { + // Output results in days. + convertDays = outputTimeStep.usesClassicalDay(); + masterSelectSQL += ", yearID, monthID, dayID, null as hourID"; + workerSelectSQL += ", yearID, monthID, dayID, null as hourID"; + groupBy += ", yearID, monthID, dayID"; + selectActivitySQL += ", yearID, monthID, dayID, null as hourID"; + groupByActivity += ", yearID, monthID, dayID"; + + selectBaseRateOutputSQL += ", yearID, monthID, hourDayID"; + groupByBaseRateOutput += ", yearID, monthID, hourDayID"; + + nrActivitySummaryColumns.add("yearID"); + nrActivitySummaryColumns.add("monthID"); + nrActivitySummaryColumns.add("dayID"); + } else { + // Output results in hours. + convertDays = outputTimeStep.usesClassicalDay(); + masterSelectSQL += ", yearID, monthID, dayID, hourID"; + workerSelectSQL += ", yearID, monthID, dayID, hourID"; + groupBy += ", yearID, monthID, dayID, hourID"; + selectActivitySQL += ", yearID, monthID, dayID, hourID"; + groupByActivity += ", yearID, monthID, dayID, hourID"; + + selectBaseRateOutputSQL += ", yearID, monthID, hourDayID"; + groupByBaseRateOutput += ", yearID, monthID, hourDayID"; + + nrActivitySummaryColumns.add("yearID"); + nrActivitySummaryColumns.add("monthID"); + nrActivitySummaryColumns.add("dayID"); + //nrActivitySummaryColumns.add("hourID"); + } + + // PollutantID + masterInsertSQL += ", pollutantID"; + workerInsertSQL += ", pollutantID"; + masterSelectSQL += ", pollutantID"; + workerSelectSQL += ", pollutantID"; + groupBy += ", pollutantID"; + + // AvgSpeedBinID and PollutantID + insertBaseRateOutputSQL +=", avgSpeedBinID, pollutantID"; + selectBaseRateOutputSQL += ", avgSpeedBinID, pollutantID"; + groupByBaseRateOutput += ", avgSpeedBinID, pollutantID"; + + // activityTypeID + insertActivitySQL +=", activityTypeID"; + selectActivitySQL += ", activityTypeID"; + groupByActivity += ", activityTypeID"; + groupByActivitySpatialOnly += ", activityTypeID"; + nrActivitySummaryColumns.add("activityTypeID"); + + // Geographic detail + GeographicOutputDetailLevel geographicOutputDetail = ExecutionRunSpec.theExecutionRunSpec.getGeographicOutputDetailLevel(); + ModelScale scale = ExecutionRunSpec.theExecutionRunSpec.getModelScale(); + ModelDomain domain = ExecutionRunSpec.theExecutionRunSpec.getModelDomain(); + + /* + System .out.println("geographicOutputDetail=" + geographicOutputDetail.toString()); + System .out.println("scale=" + scale.toString()); + System .out.println("domain=" + domain.toString()); + */ + if(scale == null || scale == ModelScale.MACROSCALE) { + if(geographicOutputDetail == GeographicOutputDetailLevel.NATION) { + // This is ok + } else if(geographicOutputDetail == GeographicOutputDetailLevel.STATE) { + // This is ok + } else if(geographicOutputDetail == GeographicOutputDetailLevel.COUNTY) { + // This is ok + } else if(geographicOutputDetail == GeographicOutputDetailLevel.ZONE) { + // This is ok + } else { // Link detail + if(domain == ModelDomain.PROJECT) { + // This is ok + } else { + // Force this change. Macroscale, Non-Project cannot use the link level. + geographicOutputDetail = GeographicOutputDetailLevel.COUNTY; + } + } + } + + if(geographicOutputDetail == GeographicOutputDetailLevel.NATION) { + masterSelectSQL += ", null as stateID, null as countyID, null as zoneID, null as linkID"; + workerSelectSQL += ", null as stateID, null as countyID, null as zoneID, null as linkID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", null as stateID, null as countyID, null as zoneID, " + + "null as linkID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", 0 as zoneID, 0 as linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + + nrNeedsActivityWeight = true; + } else if(geographicOutputDetail == GeographicOutputDetailLevel.STATE) { + masterSelectSQL += ", stateID, null as countyID, null as zoneID, null as linkID"; + workerSelectSQL += ", stateID, null as countyID, null as zoneID, null as linkID"; + groupBy += ", stateID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, null as countyID, null as zoneID, null as linkID"; + groupByActivity += ", stateID"; + groupByActivitySpatialOnly += ", stateID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", 0 as zoneID, 0 as linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + + nrActivitySummaryColumns.add("stateID"); + nrNeedsActivityWeight = true; + } else if(geographicOutputDetail == GeographicOutputDetailLevel.COUNTY) { + masterSelectSQL += ", stateID, countyID, null as zoneID, null as linkID"; + workerSelectSQL += ", stateID, countyID, null as zoneID, null as linkID"; + groupBy += ", stateID, countyID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, countyID, null as zoneID, null as linkID"; + groupByActivity += ", stateID, countyID"; + groupByActivitySpatialOnly += ", stateID, countyID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", 0 as zoneID, 0 as linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + } else if(geographicOutputDetail == GeographicOutputDetailLevel.ZONE) { + // Zone is the lowest level of geographic detail that can be specified at the + // Macroscale level. However, at this level there is only one link of a given + // road type in a given zone. The linkID will be automatically included if and + // only if the road type is requested below. + if(scale == null || scale == ModelScale.MACROSCALE) { + masterSelectSQL += ", stateID, countyID, zoneID"; + workerSelectSQL += ", stateID, countyID, zoneID"; + groupBy += ", stateID, countyID, zoneID"; + masterInsertSQL += ", stateID, countyID, zoneID"; + workerInsertSQL += ", stateID, countyID, zoneID"; + selectActivitySQL += ", stateID, countyID, zoneID"; + groupByActivity += ", stateID, countyID, zoneID"; + groupByActivitySpatialOnly += ", stateID, countyID, zoneID"; + insertActivitySQL += ", stateID, countyID, zoneID"; + + selectBaseRateOutputSQL += ", zoneID"; + insertBaseRateOutputSQL += ", zoneID"; + groupByBaseRateOutput += ", zoneID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + nrActivitySummaryColumns.add("zoneID"); + } else { + masterSelectSQL += ", stateID, countyID, zoneID, null as linkID"; + workerSelectSQL += ", stateID, countyID, zoneID, null as linkID"; + groupBy += ", stateID, countyID, zoneID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, countyID, zoneID, null as linkID"; + groupByActivity += ", stateID, countyID, zoneID"; + groupByActivitySpatialOnly += ", stateID, countyID, zoneID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", zoneID, 0 as linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + groupByBaseRateOutput += ", zoneID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + nrActivitySummaryColumns.add("zoneID"); + } + } else { // Link detail + if(scale == null || scale == ModelScale.MACROSCALE) { + if(domain == ModelDomain.PROJECT) { + masterSelectSQL += ", stateID, countyID, zoneID, linkID"; + workerSelectSQL += ", stateID, countyID, zoneID, linkID"; + groupBy += ", stateID, countyID, zoneID, linkID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, countyID, zoneID, linkID"; + groupByActivity += ", stateID, countyID, zoneID, linkID"; + groupByActivitySpatialOnly += ", stateID, countyID, zoneID, linkID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", zoneID, linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + groupByBaseRateOutput += ", zoneID, linkID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + nrActivitySummaryColumns.add("zoneID"); + nrActivitySummaryColumns.add("linkID"); + } else { + // This should not happen + /** + * @issue The Link geographic output detail level is not allowed for Macroscale simulations. + * @explain An internal inconsistency within the RunSpec was detected. Macroscale, + * that is simulations involving inventory data, do not support link-level output. + **/ + Logger.log(LogMessageCategory.ERROR,"The Link geographic output detail " + + "level is not allowed for Macroscale simulations."); + // Provide some default behavior (County-level aggregation) + masterSelectSQL += ", stateID, countyID, null as zoneID, null as linkID"; + workerSelectSQL += ", stateID, countyID, null as zoneID, null as linkID"; + groupBy += ", stateID, countyID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, countyID, null as zoneID, null as linkID"; + groupByActivity += ", stateID, countyID"; + groupByActivitySpatialOnly += ", stateID, countyID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", zoneID, 0 as linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + groupByBaseRateOutput += ", zoneID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + } + } else { + masterSelectSQL += ", stateID, countyID, zoneID, linkID"; + workerSelectSQL += ", stateID, countyID, zoneID, linkID"; + groupBy += ", stateID, countyID, zoneID, linkID"; + masterInsertSQL += ", stateID, countyID, zoneID, linkID"; + workerInsertSQL += ", stateID, countyID, zoneID, linkID"; + selectActivitySQL += ", stateID, countyID, zoneID, linkID"; + groupByActivity += ", stateID, countyID, zoneID, linkID"; + groupByActivitySpatialOnly += ", stateID, countyID, zoneID, linkID"; + insertActivitySQL += ", stateID, countyID, zoneID, linkID"; + + selectBaseRateOutputSQL += ", zoneID, linkID"; + insertBaseRateOutputSQL += ", zoneID, linkID"; + groupByBaseRateOutput += ", zoneID, linkID"; + + nrActivitySummaryColumns.add("stateID"); + nrActivitySummaryColumns.add("countyID"); + nrActivitySummaryColumns.add("zoneID"); + nrActivitySummaryColumns.add("linkID"); + } + } + + // Emission Breakdown selections + OutputEmissionsBreakdownSelection outputEmissionsBreakdownSelection = + ExecutionRunSpec.theExecutionRunSpec.getOutputEmissionsBreakdownSelection(); + //System.out.println("outputEmissionsBreakdownSelection.roadType=" + outputEmissionsBreakdownSelection.roadType); + + if(scale == null || scale == ModelScale.MACROSCALE) { + // Handle Macroscale, roadTypeID, and linkID. Specifically, at the + // Macroscale level, knowing roadTypeID and zoneID, implies knowing + // the linkID. + if(!outputEmissionsBreakdownSelection.roadType) { + // Road type is not desired + if(geographicOutputDetail == GeographicOutputDetailLevel.ZONE) { + // Road type is not desired but the zone is selected, the linkID is + // unknown and not already present in the SQL statements + masterSelectSQL += ", null as linkID, null as roadTypeID"; + workerSelectSQL += ", null as linkID, null as roadTypeID"; + masterInsertSQL += ", linkID, roadTypeID"; + workerInsertSQL += ", linkID, roadTypeID"; + selectActivitySQL += ", null as linkID, null as roadTypeID"; + insertActivitySQL += ", linkID, roadTypeID"; + + selectBaseRateOutputSQL += ", 0 as linkID, 0 as roadTypeID"; + insertBaseRateOutputSQL += ", linkID, roadTypeID"; + } else { + // Road type is not desired and zone is unknown, so linkID + // is unknown and already present in the SQL statements + masterSelectSQL += ", null as roadTypeID"; + workerSelectSQL += ", null as roadTypeID"; + masterInsertSQL += ", roadTypeID"; + workerInsertSQL += ", roadTypeID"; + selectActivitySQL += ", null as roadTypeID"; + insertActivitySQL += ", roadTypeID"; + + selectBaseRateOutputSQL += ", 0 as roadTypeID"; + insertBaseRateOutputSQL += ", roadTypeID"; + } + } else { + // Road type is desired + if(geographicOutputDetail == GeographicOutputDetailLevel.ZONE) { + // Road type and zone are known, so linkID is known + // and not already present in the SQL statements + masterSelectSQL += ", linkID, roadTypeID"; + workerSelectSQL += ", linkID, roadTypeID"; + groupBy += ", linkID, roadTypeID"; + masterInsertSQL += ", linkID, roadTypeID"; + workerInsertSQL += ", linkID, roadTypeID"; + selectActivitySQL += ", linkID, roadTypeID"; + groupByActivity += ", linkID, roadTypeID"; + groupByActivitySpatialOnly += ", linkID, roadTypeID"; + insertActivitySQL += ", linkID, roadTypeID"; + + selectBaseRateOutputSQL += ", linkID, roadTypeID"; + insertBaseRateOutputSQL += ", linkID, roadTypeID"; + groupByBaseRateOutput += ", linkID, roadTypeID"; + + nrActivitySummaryColumns.add("linkID"); + //nrActivitySummaryColumns.add("roadTypeID"); + } else { + // Road type is desired, but the zone is unknown, so linkID is unknown + // and already present in the SQL statements + masterSelectSQL += ", roadTypeID"; + workerSelectSQL += ", roadTypeID"; + groupBy += ", roadTypeID"; + masterInsertSQL += ", roadTypeID"; + workerInsertSQL += ", roadTypeID"; + selectActivitySQL += ", roadTypeID"; + groupByActivity += ", roadTypeID"; + groupByActivitySpatialOnly += ", roadTypeID"; + insertActivitySQL += ", roadTypeID"; + + selectBaseRateOutputSQL += ", roadTypeID"; + insertBaseRateOutputSQL += ", roadTypeID"; + groupByBaseRateOutput += ", roadTypeID"; + + //nrActivitySummaryColumns.add("roadTypeID"); + } + } + } else { // All other scales can assume linkID is already in the SQL statements + masterInsertSQL += ", roadTypeID"; + workerInsertSQL += ", roadTypeID"; + insertActivitySQL += ", roadTypeID"; + + if(!outputEmissionsBreakdownSelection.roadType) { + masterSelectSQL += ", null as roadTypeID"; + workerSelectSQL += ", null as roadTypeID"; + selectActivitySQL += ", null as roadTypeID"; + + selectBaseRateOutputSQL += ", 0 as roadTypeID"; + insertBaseRateOutputSQL += ", roadTypeID"; + } else { + masterSelectSQL += ", roadTypeID"; + workerSelectSQL += ", roadTypeID"; + groupBy += ", roadTypeID"; + selectActivitySQL += ", roadTypeID"; + groupByActivity += ", roadTypeID"; + groupByActivitySpatialOnly += ", roadTypeID"; + + selectBaseRateOutputSQL += ", roadTypeID"; + insertBaseRateOutputSQL += ", roadTypeID"; + groupByBaseRateOutput += ", roadTypeID"; + } + } + + // Process ID + masterInsertSQL += ", processID"; + workerInsertSQL += ", processID"; + insertBaseRateOutputSQL += ", processID"; + if(!outputEmissionsBreakdownSelection.emissionProcess) { + masterSelectSQL += ", null as processID"; + workerSelectSQL += ", null as processID"; + } else { + masterSelectSQL += ", processID"; + workerSelectSQL += ", processID"; + groupBy += ", processID"; + } + // Base rates always include the process + selectBaseRateOutputSQL += ", processID"; + groupByBaseRateOutput += ", processID"; + + // Fuel Type ID + masterInsertSQL += ", fuelTypeID"; + workerInsertSQL += ", fuelTypeID"; + insertActivitySQL += ", fuelTypeID"; + insertBaseRateOutputSQL += ", fuelTypeID"; + if(!outputEmissionsBreakdownSelection.fuelType) { + masterSelectSQL += ", null as fuelTypeID"; + workerSelectSQL += ", null as fuelTypeID"; + selectActivitySQL += ", null as fuelTypeID"; + selectBaseRateOutputSQL += ", 0 as fuelTypeID"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", fuelTypeID"; + workerSelectSQL += ", fuelTypeID"; + groupBy += ", fuelTypeID"; + selectActivitySQL += ", fuelTypeID"; + groupByActivity += ", fuelTypeID"; + groupByActivitySpatialOnly += ", fuelTypeID"; + selectBaseRateOutputSQL += ", fuelTypeID"; + groupByBaseRateOutput += ", fuelTypeID"; + + nrActivitySummaryColumns.add("fuelTypeID"); + } + + if(CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + // Fuel SubType ID + masterInsertSQL += ", fuelSubTypeID"; + workerInsertSQL += ", fuelSubTypeID"; + //insertActivitySQL += ", fuelSubTypeID"; + //insertBaseRateOutputSQL += ", fuelSubTypeID"; + if(!outputEmissionsBreakdownSelection.fuelSubType) { + masterSelectSQL += ", null as fuelSubTypeID"; + workerSelectSQL += ", null as fuelSubTypeID"; + //selectActivitySQL += ", null as fuelSubTypeID"; + //selectBaseRateOutputSQL += ", 0 as fuelSubTypeID"; + // nrNeedsActivityWeight = true; Not needed. + } else { + masterSelectSQL += ", fuelSubTypeID"; + workerSelectSQL += ", fuelSubTypeID"; + groupBy += ", fuelSubTypeID"; + //selectActivitySQL += ", fuelSubTypeID"; + //groupByActivity += ", fuelSubTypeID"; + //groupByActivitySpatialOnly += ", fuelSubTypeID"; + //selectBaseRateOutputSQL += ", fuelSubTypeID"; + //groupByBaseRateOutput += ", fuelSubTypeID"; + + //nrActivitySummaryColumns.add("fuelSubTypeID"); Not needed. + } + } + + // Model year ID + masterInsertSQL += ", modelYearID"; + workerInsertSQL += ", modelYearID"; + insertActivitySQL += ", modelYearID"; + insertBaseRateOutputSQL += ", modelYearID"; + if(!outputEmissionsBreakdownSelection.modelYear) { + masterSelectSQL += ", null as modelYearID"; + workerSelectSQL += ", null as modelYearID"; + selectActivitySQL += ", null as modelYearID"; + selectBaseRateOutputSQL += ", 0 as modelYearID"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", modelYearID"; + workerSelectSQL += ", modelYearID"; + groupBy += ", modelYearID"; + selectActivitySQL += ", modelYearID"; + groupByActivity += ", modelYearID"; + groupByActivitySpatialOnly += ", modelYearID"; + selectBaseRateOutputSQL += ", modelYearID"; + groupByBaseRateOutput += ", modelYearID"; + + nrActivitySummaryColumns.add("modelYearID"); + } + + // Source Type ID + masterInsertSQL += ", sourceTypeID"; + workerInsertSQL += ", sourceTypeID"; + insertActivitySQL += ", sourceTypeID"; + insertBaseRateOutputSQL += ", sourceTypeID"; + if(!outputEmissionsBreakdownSelection.sourceUseType) { + masterSelectSQL += ", null as sourceTypeID"; + workerSelectSQL += ", null as sourceTypeID"; + selectActivitySQL += ", null as sourceTypeID"; + selectBaseRateOutputSQL += ", 0 as sourceTypeID"; + } else { + masterSelectSQL += ", sourceTypeID"; + workerSelectSQL += ", sourceTypeID"; + groupBy += ", sourceTypeID"; + selectActivitySQL += ", sourceTypeID"; + groupByActivity += ", sourceTypeID"; + groupByActivitySpatialOnly += ", sourceTypeID"; + selectBaseRateOutputSQL += ", sourceTypeID"; + groupByBaseRateOutput += ", sourceTypeID"; + } + + // Regulatory Class ID + masterInsertSQL += ", regClassID"; + workerInsertSQL += ", regClassID"; + insertActivitySQL += ", regClassID"; + insertBaseRateOutputSQL += ", regClassID"; + if(!outputEmissionsBreakdownSelection.regClassID) { + masterSelectSQL += ", null as regClassID"; + workerSelectSQL += ", null as regClassID"; + selectActivitySQL += ", null as regClassID"; + } else { + masterSelectSQL += ", regClassID"; + workerSelectSQL += ", regClassID"; + groupBy += ", regClassID"; + selectActivitySQL += ", regClassID"; + groupByActivity += ", regClassID"; + groupByActivitySpatialOnly += ", regClassID"; + } + // Reg. class is not always included in base rates + if(!outputEmissionsBreakdownSelection.regClassID) { + selectBaseRateOutputSQL += ", 0 as regClassID"; + } else { + selectBaseRateOutputSQL += ", regClassID"; + groupByBaseRateOutput += ", regClassID"; + } + + // SCC + masterInsertSQL += ", SCC"; + workerInsertSQL += ", SCC"; + insertActivitySQL +=", SCC"; + insertBaseRateOutputSQL += ", SCC"; + if(!outputEmissionsBreakdownSelection.onRoadSCC) { + masterSelectSQL += ", null as SCC"; + workerSelectSQL += ", null as SCC"; + selectActivitySQL += ", null as SCC"; + selectBaseRateOutputSQL += ", '' as SCC"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", SCC"; + workerSelectSQL += ", SCC"; + groupBy += ", SCC"; + selectActivitySQL += ", SCC"; + groupByActivity += ", SCC"; + groupByActivitySpatialOnly += ", SCC"; + selectBaseRateOutputSQL += ", SCC"; + groupByBaseRateOutput += ", SCC"; + + nrActivitySummaryColumns.add("SCC"); + } + + // engTechID + masterInsertSQL += ", engTechID"; + workerInsertSQL += ", engTechID"; + insertActivitySQL +=", engTechID"; + if(!ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD) + || !outputEmissionsBreakdownSelection.engTechID) { + masterSelectSQL += ", null as engTechID"; + workerSelectSQL += ", null as engTechID"; + selectActivitySQL += ", null as engTechID"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", engTechID"; + workerSelectSQL += ", engTechID"; + groupBy += ", engTechID"; + selectActivitySQL += ", engTechID"; + groupByActivity += ", engTechID"; + groupByActivitySpatialOnly += ", engTechID"; + + nrActivitySummaryColumns.add("engTechID"); + } + + // sectorID + masterInsertSQL += ", sectorID"; + workerInsertSQL += ", sectorID"; + insertActivitySQL +=", sectorID"; + if(!ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD) + || !outputEmissionsBreakdownSelection.sector) { + masterSelectSQL += ", null as sectorID"; + workerSelectSQL += ", null as sectorID"; + selectActivitySQL += ", null as sectorID"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", sectorID"; + workerSelectSQL += ", sectorID"; + groupBy += ", sectorID"; + selectActivitySQL += ", sectorID"; + groupByActivity += ", sectorID"; + groupByActivitySpatialOnly += ", sectorID"; + + nrActivitySummaryColumns.add("sectorID"); + } + + // hpID + masterInsertSQL += ", hpID"; + workerInsertSQL += ", hpID"; + insertActivitySQL +=", hpID"; + if(!ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD) + || !outputEmissionsBreakdownSelection.hpClass) { + masterSelectSQL += ", null as hpID"; + workerSelectSQL += ", null as hpID"; + selectActivitySQL += ", null as hpID"; + + nrNeedsActivityWeight = true; + } else { + masterSelectSQL += ", hpID"; + workerSelectSQL += ", hpID"; + groupBy += ", hpID"; + selectActivitySQL += ", hpID"; + groupByActivity += ", hpID"; + groupByActivitySpatialOnly += ", hpID"; + + nrActivitySummaryColumns.add("hpID"); + } + + // Summed emission quantity and associated uncertainty values. If the output time period + // excludes the day of the week, multiply the day's results by the average number of + // times that the day occurs in the month to get a total results for the month. + masterInsertSQL += ", emissionQuant"; + workerInsertSQL += ", emissionQuant, emissionRate"; + insertActivitySQL += ", activity"; + + insertBaseRateOutputSQL += ", meanBaseRate, emissionRate"; + + selectActivityNoScaleSQL = selectActivitySQL.replace("SELECT MOVESRunID,","SELECT DISTINCT MOVESRunID,") + ", SUM(activity) AS activity"; + + if(ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD)) { + // Nonroad runs natively with classical 24-hour days and is restricted + // to such in the GUI. Therefore, no time aggregation should be done for Nonroad. + masterSelectSQL += ", SUM(emissionQuant) AS emissionQuant"; + workerSelectSQL += ", SUM(emissionQuant) AS emissionQuant, SUM(emissionRate) as emissionRate"; + selectActivitySQL += ", SUM(activity) AS activity"; + + // If outputEmissionsBreakdownSelection.hpClass is off and + // load factor is not output and retroFrac is not output, then force nrNeedsActivityWeight=false + // because nothing would be output that needs to be weighted. + + // If things that could need weighting (load factor and retroFrac are always created) + // must be weighted, then make the SQL for doing so. + if(nrNeedsActivityWeight) { + String keyColumnNames = ""; + for(String c : nrActivitySummaryColumns) { + if(keyColumnNames.length() > 0) { + keyColumnNames += ","; + } + keyColumnNames += c; + } + String[] detailMatchColumns = { + "SCC","modelYearID","engTechID","sectorID","hpID","fuelTypeID", + "yearID","monthID","dayID","stateID","countyID" + }; + String updateWhere = ""; + String detailKey = ""; + String detailSelect = ""; + for(int i=0;i 0) { + detailKey += ","; + detailSelect += ","; + updateWhere += " and "; + } + detailKey += c; + detailSelect += "a." + c; + updateWhere += "MOVESWorkerActivityOutput." + c + "=nrActivityWeightDetail." + c; + } + + nrActivityWeightSQL.add("drop table if exists nrActivityWeightSummary;"); + nrActivityWeightSQL.add("drop table if exists nrActivityWeightDetail;"); + nrActivityWeightSQL.add("create table nrActivityWeightSummary like MOVESWorkerActivityOutput;"); + nrActivityWeightSQL.add("alter table nrActivityWeightSummary add primary key (" + keyColumnNames + ");"); + nrActivityWeightSQL.add("insert into nrActivityWeightSummary (" + keyColumnNames + ",activity)" + + " select " + keyColumnNames + ",sum(activity) as activity" + + " from MOVESWorkerActivityOutput where activityTypeID=2" // weight by source hours (activity type 2) + + " group by " + keyColumnNames + + " order by null;"); + nrActivityWeightSQL.add("create table nrActivityWeightDetail like MOVESWorkerActivityOutput;"); + nrActivityWeightSQL.add("alter table nrActivityWeightDetail add primary key (" + detailKey + ");"); + nrActivityWeightSQL.add("insert into nrActivityWeightDetail(" + detailKey + ",activity,activityTypeID)" + + " select " + detailSelect + "," + + " case when s.activity>0 then a.activity/s.activity else 0.0 end as activity,2 as activityTypeID" + + " from MOVESWorkerActivityOutput a" + + " inner join nrActivityWeightSummary s using (" + keyColumnNames + ")" + + " where a.activityTypeID=2;"); // weight by source hours (activity type 2) + nrActivityWeightSQL.add("update MOVESWorkerActivityOutput, nrActivityWeightDetail set MOVESWorkerActivityOutput.activity=nrActivityWeightDetail.activity*MOVESWorkerActivityOutput.activity" + + " where " + updateWhere + + " and MOVESWorkerActivityOutput.activityTypeID in (9,10,12);"); // avgHP, retroFrac, LF load factor + nrActivityWeightSQL.add("drop table if exists nrActivityWeightSummary;"); + nrActivityWeightSQL.add("drop table if exists nrActivityWeightDetail;"); + } + } else if(convertWeeks && isWorkerSQL) { + // Only scale to monthly in one place (on the worker) + // in the calculation pipeline + WeeksInMonthHelper weekHelper = new WeeksInMonthHelper(); + /* + String daysPerMonthClause = + weekHelper.getDaysPerMonthSQLClause("yearID","monthID","dayID"); + masterSelectSQL += ", SUM(emissionQuant*" + daysPerMonthClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionQuant*" + daysPerMonthClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionRate*" + daysPerMonthClause + + ") AS emissionRate"; + selectActivitySQL += ", SUM(activity*" + daysPerMonthClause + + ") AS activity"; + */ + String weeksPerMonthClause = + weekHelper.getWeeksPerMonthSQLClause("yearID","monthID"); + masterSelectSQL += ", SUM(emissionQuant*" + weeksPerMonthClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionQuant*" + weeksPerMonthClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionRate*" + weeksPerMonthClause + + ") AS emissionRate"; + selectActivitySQL += ", SUM(activity*" + weeksPerMonthClause + + ") AS activity"; + } else if(convertDays && isWorkerSQL) { + // Only scale to classical days in one place (on the worker) + // in the calculation pipeline + WeeksInMonthHelper weekHelper = new WeeksInMonthHelper(); + String portionOfWeekPerDayClause = + weekHelper.getPortionOfWeekPerDayClause("dayID"); + masterSelectSQL += ", SUM(emissionQuant*" + portionOfWeekPerDayClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionQuant*" + portionOfWeekPerDayClause + + ") AS emissionQuant"; + workerSelectSQL += ", SUM(emissionRate*" + portionOfWeekPerDayClause + + ") AS emissionRate"; + selectActivitySQL += ", SUM(activity*" + portionOfWeekPerDayClause + + ") AS activity"; + } else { + masterSelectSQL += ", SUM(emissionQuant) AS emissionQuant"; + workerSelectSQL += ", SUM(emissionQuant) AS emissionQuant, SUM(emissionRate) as emissionRate"; + selectActivitySQL += ", SUM(activity) AS activity"; + } + + selectBaseRateOutputSQL += ", SUM(meanBaseRate) as meanBaseRate, SUM(emissionRate) as emissionRate"; + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to create base SQL"); + return false; + } + + /* + System .out.println("masterSelectSQL=" + masterSelectSQL); + System .out.println("workerSelectSQL=" + workerSelectSQL); + System .out.println("groupBy=" + groupBy); + System .out.println("selectActivitySQL=" + selectActivitySQL); + System .out.println("selectActivityNoScaleSQL=" + selectActivityNoScaleSQL); + System .out.println("groupByActivity=" + groupByActivity); + System .out.println("groupByActivitySpatialOnly=" + groupByActivitySpatialOnly); + System .out.println("masterInsertSQL=" + masterInsertSQL); + System .out.println("workerInsertSQL=" + workerInsertSQL); + System .out.println("insertActivitySQL=" + insertActivitySQL); + if(isWorkerSQL) { + Logger .log(LogMessageCategory.INFO,"nrNeedsActivityWeight="+nrNeedsActivityWeight); + if(nrNeedsActivityWeight) { + Logger .log(LogMessageCategory.INFO,"nrActivityWeightSQL="); + for(String s : nrActivityWeightSQL) { + Logger.log(LogMessageCategory.INFO,s); + } + } + } + */ + + return true; + } + + /** + * Generates SQLs to be processed by OutputProcessor periodically while receiving data + * from workers. + * @return false if there is any problem while generating SQLs. + **/ + boolean generateSQLsForOutputProcessor() { + if(!generateBaseSQLForAggregation(false)) { + return false; + } + if(!ENABLE_NONROAD_AGGREGATION + && ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD)) { + // Temporarily disable all aggregation for Nonroad runs. + return true; + } + try { + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerOutputTemp"); + outputProcessorSQLs.add(createSQL); + outputProcessorSQLs.add(masterInsertSQL + ") " + masterSelectSQL + + " FROM " + ExecutionRunSpec.getEmissionOutputTable() + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " " + groupBy); + outputProcessorSQLs.add("OPTIMIZE TABLE " + ExecutionRunSpec.getEmissionOutputTable()); + outputProcessorSQLs.add("DELETE FROM " + ExecutionRunSpec.getEmissionOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + String insertOutputSQL = "INSERT INTO " + ExecutionRunSpec.getEmissionOutputTable() + + "(" + masterOutputTableFields + ") " + + selectSQLForMasterOutput + " FROM WorkerOutputTemp"; + outputProcessorSQLs.add(insertOutputSQL); + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for output processor"); + return false; + } + try { + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerActivityOutputTemp"); + outputProcessorSQLs.add(createActivitySQL); + + if(ExecutionRunSpec.getRunSpec().outputPopulation) { + outputProcessorSQLs.add(insertActivitySQL + ") " + selectActivitySQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " AND activityTypeID <> 6 " + groupByActivity); + outputProcessorSQLs.add(insertActivitySQL + ") " + selectActivityNoScaleSQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " AND activityTypeID = 6 " + groupByActivitySpatialOnly); + } else { + outputProcessorSQLs.add(insertActivitySQL + ") " + selectActivitySQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " " + groupByActivity); + } + + outputProcessorSQLs.add("DELETE FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + String insertActivityOutputSQL = "INSERT INTO " + + ExecutionRunSpec.getActivityOutputTable() + " (" + + outputActivityTableFields + ") " + + selectSQLForActivityOutput + " FROM WorkerActivityOutputTemp"; + outputProcessorSQLs.add(insertActivityOutputSQL); + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerActivityOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for output processor"); + return false; + } + + // Aggregation of BaseRateOutput is not possible without supporting + // population and activity data. + if(false && CompilationFlags.DO_RATES_FIRST) { +// if(CompilationFlags.DO_RATES_FIRST) { + try { + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp"); + outputProcessorSQLs.add(createBaseRateOutputSQL); + outputProcessorSQLs.add(insertBaseRateOutputSQL + ") " + selectBaseRateOutputSQL + + " FROM BaseRateOutput" + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " " + groupByBaseRateOutput); + outputProcessorSQLs.add("DELETE FROM BaseRateOutput" + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + outputProcessorSQLs.add("INSERT INTO BaseRateOutput (" + + outputBaseRateOutputTableFields + ") " + + selectSQLForBaseRateOutput + " FROM WorkerBaseRateOutputTemp"); + outputProcessorSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for output processor"); + return false; + } + } + + return true; + } + + /** + * Generates SQLs to be processed by output processor, after all other processing has been + * completed but before unit conversions have been done. + * @return false if there is any problem while generating SQLs. + **/ + boolean generateSQLsForFinalProcessing() { + if(!generateBaseSQLForAggregation(false)) { + return false; + } + if(!ENABLE_NONROAD_AGGREGATION + && ExecutionRunSpec.theExecutionRunSpec.getModels().contains(Model.NONROAD)) { + // Temporarily disable all aggregation for Nonroad runs. + return true; + } + try { + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerOutputTemp"); + finalProcessSQLs.add(createSQL); + finalProcessSQLs.add(masterInsertSQL + ") " + masterSelectSQL + + " FROM " + ExecutionRunSpec.getEmissionOutputTable() + + " WHERE MOVESRunID = " + activeRunID + " AND iterationID = " + + activeIterationID + " " + groupBy); + finalProcessSQLs.add("DELETE FROM " + ExecutionRunSpec.getEmissionOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + String insertOutputSQL = "INSERT INTO " + ExecutionRunSpec.getEmissionOutputTable() + + "(" + masterOutputTableFields + ") " + + selectSQLForMasterOutput + " FROM WorkerOutputTemp"; + finalProcessSQLs.add(insertOutputSQL); + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for final processing"); + return false; + } + try { + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerActivityOutputTemp"); + finalProcessSQLs.add(createActivitySQL); + + if(ExecutionRunSpec.getRunSpec().outputPopulation) { + finalProcessSQLs.add(insertActivitySQL + ") " + selectActivitySQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID + + " AND activityTypeID <> 6 " + groupByActivity); + finalProcessSQLs.add(insertActivitySQL + ") " + selectActivityNoScaleSQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID + + " AND activityTypeID = 6 " + groupByActivitySpatialOnly); + } else { + finalProcessSQLs.add(insertActivitySQL + ") " + selectActivitySQL + + " FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID + " " + groupByActivity); + } + + finalProcessSQLs.add("DELETE FROM " + ExecutionRunSpec.getActivityOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + String insertActivityOutputSQL = "INSERT INTO " + + ExecutionRunSpec.getActivityOutputTable() + " (" + + outputActivityTableFields + ") " + selectSQLForActivityOutput + + " FROM WorkerActivityOutputTemp"; + finalProcessSQLs.add(insertActivityOutputSQL); + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerActivityOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for final processing"); + return false; + } + + // Aggregation of BaseRateOutput is not possible without supporting + // population and activity data. + if(false && CompilationFlags.DO_RATES_FIRST) { + try { + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp"); + finalProcessSQLs.add(createBaseRateOutputSQL); + finalProcessSQLs.add(insertBaseRateOutputSQL + ") " + selectBaseRateOutputSQL + + " FROM BaseRateOutput" + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID + " " + groupByBaseRateOutput); + finalProcessSQLs.add("DELETE FROM BaseRateOutput" + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID); + finalProcessSQLs.add("INSERT INTO BaseRateOutput (" + + outputBaseRateOutputTableFields + ") " + selectSQLForBaseRateOutput + + " FROM WorkerBaseRateOutputTemp"); + finalProcessSQLs.add("DROP TABLE IF EXISTS WorkerBaseRateOutputTemp"); + } catch(Exception e) { + /** + * @explain A database error occurred while creating SQL statements for + * aggregating data. + **/ + Logger.logError(e, "Failed to generate SQLs for final processing"); + return false; + } + } + + return true; + } +} diff --git a/gov/epa/otaq/moves/master/framework/AggregationSQLGeneratorTest.java b/gov/epa/otaq/moves/master/framework/AggregationSQLGeneratorTest.java new file mode 100644 index 0000000..a75e422 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/AggregationSQLGeneratorTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)AggregationSQLGeneratorTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the AggregationSQLGenerator class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class AggregationSQLGeneratorTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public AggregationSQLGeneratorTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/BundleUtilities.java b/gov/epa/otaq/moves/master/framework/BundleUtilities.java new file mode 100644 index 0000000..928855b --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/BundleUtilities.java @@ -0,0 +1,503 @@ +/************************************************************************************************** + * @(#)BundleUtilities.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import java.sql.*; +import java.util.*; + +/** + * Utility functions for building bundles to be processed by workers. + * + * @author Wesley Faler + * @version 2014-10-07 +**/ +public class BundleUtilities { + /** true when tables should NOT be dropped in the MOVESWorker database **/ + public static final boolean debugTablesOnWorker = false; // true; + + /** cached CASE statement for use with the temperatureFactorExpression table **/ + static String temperatureFactorExpressionCache = null; + /** cache of fuel year IDs keyed by year ID **/ + static TreeMap fuelYearFromYearCache = null; + /** cache of fuel region IDs keyed by county ID **/ + static TreeMap fuelRegionFromCountyCache = null; + + /** Clear any cached data. Use before any run. **/ + public static void resetCachedData() { + temperatureFactorExpressionCache = null; + fuelYearFromYearCache = null; + fuelRegionFromCountyCache = null; + } + + /** Build and cache a CASE statement for use with the temperatureFactorExpression table **/ + private static void buildTemperatureExpressionCase() { + if(temperatureFactorExpressionCache != null) { + return; + } + Connection db = null; + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + ArrayList expressions = new ArrayList(); + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + sql = "select distinct tempCorrectionExpression from temperatureFactorExpression"; + query.open(db,sql); + while(query.rs.next()) { + String t = StringUtilities.safeGetString(query.rs.getString(1)); + if(t.length() > 0) { + expressions.add(t); + } + } + query.close(); + /* + (case + when tempCorrectionExpression='t1' then ( (temperature+4)*relHumidity ) + when 1=0 then 1 else 1 + end) + */ + temperatureFactorExpressionCache = "(case \n"; + for(int i=0;i(); + Connection db = null; + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + sql = "select yearID, fuelYearID from year"; + query.open(db,sql); + while(query.rs.next()) { + int year = query.rs.getInt(1); + int fuelYear = query.rs.getInt(2); + fuelYearFromYearCache.put(new Integer(year),new Integer(fuelYear)); + } + query.close(); + } catch(Exception e) { + Logger.logSqlError(e,"Unable to build year and fuel year relationship",sql); + } finally { + query.onFinally(); + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,db); + db = null; + } + } + } + + /** Populate the cache of regionID given countyID **/ + private static void buildRegionFromCountyCache() { + if(fuelRegionFromCountyCache != null) { + return; + } + fuelRegionFromCountyCache = new TreeMap(); + Connection db = null; + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + sql = "select countyID, regionID from regionCounty where regionCodeID=1"; + query.open(db,sql); + while(query.rs.next()) { + int county = query.rs.getInt(1); + int region = query.rs.getInt(2); + fuelRegionFromCountyCache.put(new Integer(county),new Integer(region)); + } + query.close(); + } catch(Exception e) { + Logger.logSqlError(e,"Unable to build county and region relationship",sql); + } finally { + query.onFinally(); + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,db); + db = null; + } + } + } + + /** + * Utility function to intelligently read large EmissionCalculator-centric SQL + * script files. The script files are divided into sections using SQL comments:
    + * + * + * + * + *
    -- Section Test
    -- SQL code here
    -- End Section Test

    + * The system accepts a set of sections of SQL that should be read from the file and + * otherwise processed (see the enabledSectionNames parameter). Sections may be + * nested within sections and may appear more than once within a script file. This + * allows sections of SQL pertinent to a pollutant to be turned on and off within + * sections that are pertinent to a process.
    + * As it is read, the SQL itself is examined for text replacements such as the + * current year and county.
    + * Once the SQL for the desired sections has been found and had textual replacements + * performed, it is examined and placed into the appropriate parts of the SQLForWorker + * object which is a major internal object of the EmissionCalculator class. + * @param context the current MasterLoopContext that is being handled. From this + * context, several standard text replacements are enabled, each replaced with the + * value of the Java expression of the same text: + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    TextDescription
    ##create.tablename##"CREATE TABLE IF NOT EXISTS tablename..." based on + * MOVESExecution database's schema
    ##context.year##yearID of the context's year
    ##context.monthID##database monthID of the context's month
    ##context.dayID##database dayID of the context's month
    ##context.hourID##database hourID of the context's hour
    ##context.iterLocation.stateRecordID##identifies the current State +
    ##context.iterLocation.countyRecordID##identifies the current County +
    ##context.iterLocation.zoneRecordID##identifies the current Zone
    ##context.iterLocation.linkRecordID##identifies the current Link
    ##context.iterLocation.roadTypeRecordID##identifies the current Road Type + *
    ##context.iterProcess.databaseKey##identifies the current + * EmissionProcess

    + * @param replacements additional textual replacements that should be made to the SQL + * statements in the file. Refer to StringUtilities.doReplacements(...) for more details. + * @param sqlScriptFilePath path and file name of the SQL script to be processed + * @param enabledSectionNames names of sections within the SQL script that should be + * handled. Lines in sections outside of these enabled ones are not processed and + * put into sqlForWorker. + * @param sqlForWorker a SQLforWorker object that should be populated with the SQL + * in the script file + * @param shouldSaveData true if data should be preserved on worker machines + * @param timerName optional name of the timer used for all commands, may be null but never empty + * @return true if the script file was found and parsed. This does not indicate that + * the SQL contained therein is valid in any way. + **/ + public static boolean readAndHandleScriptedCalculations(MasterLoopContext context, + TreeMapIgnoreCase replacements,String sqlScriptFilePath, + TreeSetIgnoreCase enabledSectionNames,SQLForWorker sqlForWorker, + boolean shouldSaveData, + String timerName) { + // Build the temperature adjustment CASE statement + buildTemperatureExpressionCase(); + buildFuelYearFromYearCache(); + buildRegionFromCountyCache(); + + // create a DefaultDataMaker object to include default values in the worker SQLs + DefaultDataMaker defaultDataMaker = new DefaultDataMaker(); + // Add standard replacement values + replacements.put("##context.year##",new Integer(context.year).toString()); + replacements.put("##context.monthID##",new Integer(context.monthID).toString()); + replacements.put("##context.dayID##",new Integer(context.dayID).toString()); + replacements.put("##context.hourID##",new Integer(context.hourID).toString()); + replacements.put("##context.iterLocation.stateRecordID##", + new Integer(context.iterLocation.stateRecordID).toString()); + replacements.put("##context.iterLocation.countyRecordID##", + new Integer(context.iterLocation.countyRecordID).toString()); + replacements.put("##context.iterLocation.zoneRecordID##", + new Integer(context.iterLocation.zoneRecordID).toString()); + replacements.put("##context.iterLocation.linkRecordID##", + new Integer(context.iterLocation.linkRecordID).toString()); + replacements.put("##context.iterLocation.roadTypeRecordID##", + new Integer(context.iterLocation.roadTypeRecordID).toString()); + String processID = new Integer(context.iterProcess.databaseKey).toString(); + replacements.put("##context.iterProcess.databaseKey##",processID); + replacements.put("##context.allCurrentProcesses##",context.getAllProcessesCSV()); + replacements.put("##context.temperatureFactorExpression##",StringUtilities.safeGetString(temperatureFactorExpressionCache)); + + OutputEmissionsBreakdownSelection outputEmissionsBreakdownSelection = + ExecutionRunSpec.theExecutionRunSpec.getOutputEmissionsBreakdownSelection(); + enabledSectionNames.add("WithRegClassID"); + + String tText = "0"; // a default that won't break SQL + Integer t = fuelRegionFromCountyCache.get(new Integer(context.iterLocation.countyRecordID)); + if(t != null) { + tText = t.toString(); + } + replacements.put("##context.fuelRegionID##",tText); + + tText = "" + context.year; // a default that won't break SQL + t = fuelYearFromYearCache.get(new Integer(context.year)); + if(t != null) { + tText = t.toString(); + } + replacements.put("##context.fuelYearID##",tText); + + /* + Logger.log(LogMessageCategory.INFO,"Begin context replacement values:"); + for(String k : replacements.keySet()) { + String v = (String)replacements.get(k); + if(v != null) { + Logger.log(LogMessageCategory.INFO,k + " = " + v); + } + } + Logger.log(LogMessageCategory.INFO,"End of context replacement values."); + */ + + // Add replacement values for the CREATE TABLE IF NOT EXISTS statements of the + // Execution database + Set tableNames = DatabaseConnectionManager.executionDatabaseCreateTableStatements.keySet(); + for(Iterator i =tableNames.iterator();i.hasNext();) { + String tableName = (String)i.next(); + String statement = DatabaseConnectionManager.getExecutionCreateTableStatement(tableName); + if(SQLRunner.allowInnoDB) { + statement = StringUtilities.replace(statement,"ENGINE=MyISAM","ENGINE=InnoDB"); + } + replacements.put("##create." + tableName + "##",statement); + + if(SQLRunner.allowInnoDB) { + statement = StringUtilities.replace(statement,"ENGINE=InnoDB","ENGINE=MEMORY"); + } else { + statement = StringUtilities.replace(statement,"ENGINE=MyISAM","ENGINE=MEMORY"); + } + replacements.put("##memory.create." + tableName + "##",statement); + } + + enabledSectionNames.add("Create Remote Tables for Extracted Data"); + enabledSectionNames.add("Extract Data"); + enabledSectionNames.add("Local Data Removal"); + enabledSectionNames.add("Processing"); + enabledSectionNames.add("Cleanup"); + enabledSectionNames.add("Final Cleanup"); + + enabledSectionNames.add("Process" + processID); + + if(ExecutionRunSpec.theExecutionRunSpec != null) { + if(ExecutionRunSpec.theExecutionRunSpec.getModelScale() == ModelScale.MESOSCALE_LOOKUP) { + enabledSectionNames.add("Rates"); + } else if(ExecutionRunSpec.theExecutionRunSpec.getModelScale() == ModelScale.MACROSCALE) { + enabledSectionNames.add("Inventory"); + } + } + + if(ExecutionRunSpec.theExecutionRunSpec != null) { + if(ExecutionRunSpec.theExecutionRunSpec.getOutputEmissionsBreakdownSelection(). + estimateUncertainty) { + enabledSectionNames.add("Uncertain"); + } else { + enabledSectionNames.add("Certain"); + } + } else { + enabledSectionNames.add("Certain"); + } + + // Read the file into memory, one comment or semi-colon terminated statement per String + LinkedList sqlFromFileRaw = new LinkedList(); + if(!FileUtilities.appendSQLScriptToList(sqlScriptFilePath, sqlFromFileRaw)) { + return false; + } + LinkedList sqlFromFile = new LinkedList(); + for(Iterator i=sqlFromFileRaw.iterator();i.hasNext();) { + String line = i.next(); + line = ExecutionRunSpec.theExecutionRunSpec.findAndConvertModelYearMapping(line); + SQLMacroExpander.expandAndAdd(line,sqlFromFile); + } + // Preprocess the SQL doing the prescribed replacements on enabled sections of statements + Stack sectionStatus = new Stack(); + sectionStatus.push(new Boolean(true)); + boolean isInEnabledSection = true; + + LinkedList replacedSQL = new LinkedList(); + for(Iterator i=sqlFromFile.iterator();i.hasNext();) { + String sql = (String)i.next(); + sql = sql.trim(); + if(sql.length() > 0) { + if(sql.startsWith("-- Section")) { + if(isInEnabledSection) { + String sectionName = sql.substring(10).trim(); + if(enabledSectionNames.contains(sectionName)) { + isInEnabledSection = true; + } else { + isInEnabledSection = false; + } + } + sectionStatus.push(new Boolean(isInEnabledSection)); + if(isInEnabledSection) { + replacedSQL.add(sql); + } + } else if(sql.startsWith("-- End Section")) { + if(isInEnabledSection) { + replacedSQL.add(sql); + } + sectionStatus.pop(); + isInEnabledSection = ((Boolean)sectionStatus.peek()).booleanValue(); + } else if(isInEnabledSection) { + replacedSQL.add(StringUtilities.doReplacements(sql,replacements)); + } + } + } + sqlFromFile = null; + + // Find and handle data in the sections. For example, in "Extract Data" section, + // the statements should go into sqlForWorker.dataExportSQL. They should also + // be examined for file references since those should be turned into "LOAD DATA" + // statements in sqlForWorker.processingSQL. The file names will also be table + // names that should be put into "DROP TABLE IF EXISTS" statements in + // sqlForWorker.cleanupSQL. + boolean isInRemoteTableCreationSection = false; + boolean isInExtractDataSection = false; + boolean isInLocalDataRemovalSection = false; + boolean isInProcessingSection = false; + boolean isInRemoteCleanupSection = false; + boolean isInRemoteFinalCleanupSection = false; + + for(Iterator i=replacedSQL.iterator();i.hasNext();) { + String sql = (String)i.next(); + if(sql.startsWith("-- Section Create Remote Tables for Extracted Data")) { + isInRemoteTableCreationSection = true; + if(!CompilationFlags.USE_WORKER_TIMING_DETAILS || timerName == null) { + continue; + } + sql = "starttimer " + timerName + ";"; + } else if(sql.startsWith("-- End Section Create Remote Tables for Extracted Data")) { + isInRemoteTableCreationSection = false; + continue; + } else if(sql.startsWith("-- Section Extract Data")) { + isInExtractDataSection = true; + continue; + } else if(sql.startsWith("-- End Section Extract Data")) { + isInExtractDataSection = false; + + defaultDataMaker.determineAllTablesToExtractAndCreate(); + LinkedList extraSQL = null; + + extraSQL = defaultDataMaker.getTableCreationSQL(); + if(!extraSQL.isEmpty()) { + for(Iterator j=extraSQL.iterator(); j.hasNext(); ){ + sql = (String)j.next(); + sql = StringUtilities.doReplacements(sql,replacements); + sqlForWorker.processingSQL.add(sql); + } + } + extraSQL = defaultDataMaker.getRemoteProcessingSQL(); + if(!extraSQL.isEmpty()) { + for(Iterator j=extraSQL.iterator(); j.hasNext(); ) { + sql = (String)j.next(); + sql = StringUtilities.doReplacements(sql,replacements); + sqlForWorker.processingSQL.add(sql); + } + } + extraSQL = defaultDataMaker.getRemoteCleanupSQL(); + if(!extraSQL.isEmpty()) { + for(Iterator j=extraSQL.iterator(); j.hasNext(); ) { + sql = (String)j.next(); + sql = StringUtilities.doReplacements(sql,replacements); + sqlForWorker.cleanupSQL.add(sql); + } + } + extraSQL = defaultDataMaker.getDataExtractionSQL(); + if(!extraSQL.isEmpty()) { + for(Iterator j=extraSQL.iterator(); j.hasNext(); ) { + sql = (String)j.next(); + sql = StringUtilities.doReplacements(sql,replacements); + SQLMacroExpander.expandAndAdd(sql,sqlForWorker.dataExportSQL); + //sqlForWorker.dataExportSQL.add(sql); + } + } + continue; + } else if(sql.startsWith("-- Section Local Data Removal")) { + isInLocalDataRemovalSection = true; + continue; + } else if(sql.startsWith("-- End Section Local Data Removal")) { + isInLocalDataRemovalSection = false; + continue; + } else if(sql.startsWith("-- Section Processing")) { + isInProcessingSection = true; + if(!CompilationFlags.USE_WORKER_TIMING_DETAILS || timerName == null) { + continue; + } + sql = "starttimer " + timerName + ";"; + } else if(sql.startsWith("-- End Section Processing")) { + isInProcessingSection = false; + continue; + } else if(sql.startsWith("-- Section Cleanup")) { + isInRemoteCleanupSection = true; + if(!CompilationFlags.USE_WORKER_TIMING_DETAILS || timerName == null) { + continue; + } + sql = "starttimer " + timerName + ";"; + } else if(sql.startsWith("-- End Section Cleanup")) { + isInRemoteCleanupSection = false; + continue; + } else if(sql.startsWith("-- Section Final Cleanup")) { + isInRemoteFinalCleanupSection = true; + continue; + } else if(sql.startsWith("-- End Section Final Cleanup")) { + isInRemoteFinalCleanupSection = false; + if(CompilationFlags.USE_WORKER_TIMING_DETAILS && timerName != null) { + sql = "starttimer " + timerName + ";"; + if(!BundleUtilities.debugTablesOnWorker && !shouldSaveData) { + sqlForWorker.cleanupSQL.add(sql); // put at the end so it will be at the beginning in the final file. + } + } + continue; + } + + if(isInRemoteTableCreationSection) { + sqlForWorker.processingSQL.add(sql); + } else if(isInExtractDataSection) { + int tableNameStart = sql.indexOf("##"); + if(tableNameStart >= 0) { + int tableNameEnd = sql.lastIndexOf("##"); + if(tableNameEnd >= 0) { + String tableName = sql.substring(tableNameStart+2,tableNameEnd); + defaultDataMaker.addTableExtractedByScript(tableName); + sqlForWorker.dataExportSQL.add(sql); + if(!BundleUtilities.debugTablesOnWorker && !shouldSaveData) { + sqlForWorker.cleanupSQL.add(0,"DROP TABLE IF EXISTS " + tableName); + } + sqlForWorker.processingSQL.add( + "LOAD DATA INFILE '##" + tableName + "##' INTO TABLE " + + tableName); + sqlForWorker.processingSQL.add("ANALYZE TABLE " + tableName); + } else { + sqlForWorker.dataExportSQL.add(sql); + } + } else { + sqlForWorker.dataExportSQL.add(sql); + } + } else if(isInLocalDataRemovalSection) { + sqlForWorker.localDataRemovalSQL.add(sql); + } else if(isInProcessingSection) { + sqlForWorker.processingSQL.add(sql); + } else if(isInRemoteCleanupSection) { + if(!BundleUtilities.debugTablesOnWorker && !shouldSaveData) { + sqlForWorker.processingSQL.add(sql); + } + } else if(isInRemoteFinalCleanupSection) { + if(!BundleUtilities.debugTablesOnWorker && !shouldSaveData) { + sqlForWorker.cleanupSQL.add(0,sql); + } + } + } + + return true; + } +} diff --git a/gov/epa/otaq/moves/master/framework/ControlStrategy.java b/gov/epa/otaq/moves/master/framework/ControlStrategy.java new file mode 100644 index 0000000..0ff489f --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ControlStrategy.java @@ -0,0 +1,33 @@ +/************************************************************************************************** + * @(#)ControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * The base class for all Control Strategies. Control Strategies perform work on the input to a + * simulation run. They often model some effect on the inputs such as a decrease or increase in + * population over time. "External" Control Strategies occur just outside the MOVES application. + * They are independent applications that the user invokes to bring data from foreign sources into + * the MOVES Input Database Schema. Another type of Control Strategy, Input Control Strategies, are + * invoked as input data is first being copied from the MOVES input databases to the execution + * databases. These strategies allow for more "intelligent" transfer of data than the simple + * criteria-filtered copying performed by the Input Data Manager. A third location where Control + * Strategies can be used is at the start of each execution of the Master Loop. These strategies, + * referred to as Internal Control Strategies, can make input changes that are sensitive to the + * loop's context. + * + * @author Cimulus + * @version 2004-04-21 +**/ +public abstract class ControlStrategy implements MasterLoopable { + /** + * Default constructor + **/ + public ControlStrategy() { + } + + +} diff --git a/gov/epa/otaq/moves/master/framework/DatabaseConnectionManager.java b/gov/epa/otaq/moves/master/framework/DatabaseConnectionManager.java new file mode 100644 index 0000000..340679a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/DatabaseConnectionManager.java @@ -0,0 +1,724 @@ +/************************************************************************************************** + * @(#)DatabaseConnectionManager.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import java.sql.*; +import java.util.*; + +/** + * Static utility class that implements database connection pooling. The DatabaseConnectionManager + * provides a central location for obtaining and releasing connections to frequently accessed + * databases. By implementing connection pooling, the DatabaseConnectionManager limits the number + * of simultaneous connections to a database while also minimizing the overhead associated with + * having individual objects open and close their own connections. A check-in/check-out system is + * used to share connections among MOVES objects. + *

    The DatabaseConnectionManager maintains a separate connection pool for each of the frequently + * accessed database types. It does not maintain connections for databases that are accessed + * infrequently or only by specific objects. The DatabaseConnectionManager maintains a seperate + * connection to each database just for GUI objects, since these objects run within a single thread + * and it is undesireable to have them wait on a connection from a connection pool.

    + *

    The DatabaseConnectionManager creates the connection pool and GUI connection for a database + * the first time a connection of that type is requested. If the database connection information is + * changed, the cleanup() method must be called to free-up any existing connections before a new + * connection can be checked-out.

    + *

    A timeout is tracked for each pooled database connection. If the connection has not been + * used within that timeout period, it is closed and a new one created in its place. This is + * done to prevent TCP/IP timeouts during periods of inactivity on long runs.

    + * + * @author Wesley Faler + * @version 2014-09-17 +**/ +public class DatabaseConnectionManager { + /** CREATE TABLE IF NOT EXISTS statements for all tables in the default database **/ + public static TreeMapIgnoreCase defaultDatabaseCreateTableStatements + = new TreeMapIgnoreCase(); + /** CREATE TABLE IF NOT EXISTS statements for all tables in the execution database **/ + public static TreeMapIgnoreCase executionDatabaseCreateTableStatements + = new TreeMapIgnoreCase(); + + /** The number of connections to create for a pool. **/ + static final int CONNECTION_POOL_SIZE = 10; + + /** The connection information for the user specified Output database. **/ + public static DatabaseSelection outputDatabaseSelection = new DatabaseSelection(); + + /** + * Connection information for an alternate input database other than + * the one read from the configuration file. + **/ + public static DatabaseSelection customInputDatabase = null; + + /** + * Internal class used to maintain a pool of connections for a given database type. + **/ + static class InternalConnectionPool { + /** + * The list of checked-in connections. These are available to be checked out. + **/ + LinkedList checkedInConnections = new LinkedList(); + /** + * The list of checked out connection objects. This list is used to detect invalid check-in + * attempts. + **/ + LinkedList checkedOutConnections = new LinkedList(); + /** + * The connection reserved exclusively for the GUI thread. This connection does not require + * a check out/check in and it use will not cause the client to block. + **/ + Connection guiConnection; + }; + + /** + * The connection pools for the different database types. + **/ + static InternalConnectionPool[] databasePools + = new InternalConnectionPool[MOVESDatabaseType.NUM_TYPES]; + + /** Maximum idle time for a Connection before it is discarded and recreated **/ + static final long CONNECTION_TIMEOUT_MILLIS = 4*60*1000; + + /** + * Tracks the future times for when each Connection should be discarded. + * Keyed by Connection, the data is a Long with the future time in milliseconds, + * already adjusted by CONNECTION_TIMEOUT_MILLIS. + * Note that a HashMap is used because TreeMap requires the compare() routine + * which Connection objects don't have. + **/ + static HashMap connectionTimeouts = new HashMap(101); + + /** + * Initializes all connections for a specified database type. Subsequent requests to initialize + * the connections are ignored unless the cleanup() method is called first. The initialize() + * method will create a new Execution Database when it receives the first Execution Database + * initialization request. This method gets the connection information for the Default and + * Execution Database Types from the System Configuration. The setOutputDatabase() method must + * be called to set the user specified connection information for the Output Database Type. + * Failed attempts to intialize the Default or Execution Database connections are logged as + * these are always an error. An attempt to initialize the Output Database may not be an error + * and is not logged. The output database is not required until the simulation run is started. + * The client object should check the return status of the initialize method and log an error + * if required. + * @param type The database type to initialize for. + * @return This will be false if there was an error during initialization. + **/ + public static boolean initialize(MOVESDatabaseType type) { + synchronized(type) { + boolean result = true; + + if(type == MOVESDatabaseType.EXECUTION) { + Logger.log(LogMessageCategory.INFO,"Initializing MOVESExecution connections..."); + } else if(type == MOVESDatabaseType.OUTPUT) { + Logger.log(LogMessageCategory.INFO,"Initializing output database connections..."); + } else if(type == MOVESDatabaseType.DEFAULT) { + Logger.log(LogMessageCategory.INFO,"Initializing default database connections..."); + } + + // If initializing the Execution Database connections, first create a new Execution + // Database. + if(type == MOVESDatabaseType.EXECUTION) { + //Logger.log(LogMessageCategory.DEBUG,"Creating MOVESExecution database"); + DatabaseSelection executionSelection = SystemConfiguration.getTheSystemConfiguration().databaseSelections[type.getIndex()]; + Connection knownConnection = executionSelection.openConnectionOrNull(false); + if(knownConnection == null) { + /** + * @explain An error occurred while creating the MOVESExecution database. + **/ + Logger.log(LogMessageCategory.ERROR, "Unable to open connection to execution server db"); + result = false; + } else { + String sql = ""; + try { + // Create and Use the MOVESExecution database + Logger.log(LogMessageCategory.INFO,"Creating the execution database..."); + SQLRunner.executeSQL(knownConnection, + "CREATE DATABASE IF NOT EXISTS " + executionSelection.databaseName); + SQLRunner.executeSQL(knownConnection,"USE " + executionSelection.databaseName); + SQLRunner.executeSQL(knownConnection,"FLUSH TABLES"); + Logger.log(LogMessageCategory.INFO,"Removing tables from the execution database..."); + DatabaseUtilities.dropAllTables(knownConnection); + + // Create all the tables contained in the default database + // and Truncate each of them as well + Logger.log(LogMessageCategory.INFO,"Creating empty tables in the execution database..."); + SQLRunner.addInnoDBConnection(knownConnection); + Set tableNames = defaultDatabaseCreateTableStatements.keySet(); + for(Iterator i=tableNames.iterator();i.hasNext();) { + String t = (String)i.next(); + sql = (String)defaultDatabaseCreateTableStatements.get(t); + if(SQLRunner.allowInnoDB) { + sql = StringUtilities.replace(sql,"ENGINE=MyISAM","ENGINE=InnoDB"); + //System.out.println(sql); + } + SQLRunner.executeSQL(knownConnection,sql); + + SQLRunner.executeSQL(knownConnection,"FLUSH TABLE " + t); + + sql = "TRUNCATE " + t; + SQLRunner.executeSQL(knownConnection,sql); + } + + // Finish creating the database + Logger.log(LogMessageCategory.INFO,"Finalizing the execution database..."); + SQLRunner.executeSQL(knownConnection,"FLUSH TABLES"); + DatabaseUtilities.executeScript(knownConnection, new File("database/CreateExecution.sql")); + if(CompilationFlags.DO_RATES_FIRST) { + DatabaseUtilities.executeScript(knownConnection, new File("database/CreateExecutionRates.sql")); + } + SQLRunner.executeSQL(knownConnection,"FLUSH TABLES"); + } catch(SQLException exception) { + /** + * @explain An error occurred while creating the MOVESExecution database. + **/ + Logger.logSqlError(exception,"Failed to run execution creation script",sql); + Logger.log(LogMessageCategory.DEBUG,"Example create statement: " + (String) + defaultDatabaseCreateTableStatements.get("agecategory")); + result = false; + } catch(Exception exception) { + /** + * @explain An error occurred while creating the MOVESExecution database. + **/ + Logger.logError(exception,"Failed to run execution creation script"); + result = false; + } finally { + SQLRunner.removeInnoDBConnection(knownConnection); + DatabaseUtilities.closeConnection(knownConnection); + } + } + } + + if(databasePools[type.getIndex()] != null) { + Logger.log(LogMessageCategory.INFO,"Database connections already established."); + return true; + } + + // Create the database connection pool object. + databasePools[type.getIndex()] = new InternalConnectionPool(); + InternalConnectionPool targetPool = databasePools[type.getIndex()]; + + // Open a pool of connections to the Output Database. + if(type == MOVESDatabaseType.OUTPUT) { + if(outputDatabaseSelection.databaseName.trim().length() != 0) { + // Initialize the GUI connection. + targetPool.guiConnection = outputDatabaseSelection.openConnectionOrNull(); + // Initialize the connection pool lists. + if(targetPool.guiConnection != null) { + setTimeout(targetPool.guiConnection); + try { + for(int j = 0; j < CONNECTION_POOL_SIZE; j++) { + Connection c = outputDatabaseSelection.openConnection(); + if(c != null) { + setTimeout(c); + targetPool.checkedInConnections.addLast(c); + } + } + result = true; + } catch (Exception exception) { + result = false; + } + } else { + result = false; + } + } else { + result = false; + } + } else { // Open a pool of connections to the Default or Execution databases. + DatabaseSelection sourceSelection = + SystemConfiguration.getTheSystemConfiguration().databaseSelections[type.getIndex()]; + if(type == MOVESDatabaseType.DEFAULT && customInputDatabase != null) { + sourceSelection = customInputDatabase; + } + + // Initialize the GUI connection. + targetPool.guiConnection = sourceSelection.openConnectionOrNull(); + setTimeout(targetPool.guiConnection); + + // Initialize the connection pool lists. + try { + for(int j = 0; j < CONNECTION_POOL_SIZE; j++) { + Connection c = sourceSelection.openConnection(); + if(c != null) { + setTimeout(c); + targetPool.checkedInConnections.addLast(c); + } + } + + if(type == MOVESDatabaseType.DEFAULT) { // || type == MOVESDatabaseType.NRDEFAULT) { + Logger.log(LogMessageCategory.INFO,"Reading default database table definitions..."); + learnCreateTableStatements(targetPool.guiConnection, + defaultDatabaseCreateTableStatements,false); + } else if(type == MOVESDatabaseType.EXECUTION) { + Logger.log(LogMessageCategory.INFO,"Reading execution database table definitions..."); + learnCreateTableStatements(targetPool.guiConnection, + executionDatabaseCreateTableStatements,true); + } + } catch (Exception exception) { + /** + * @explain An error occurred while establishing a connection to to the + * database server. + **/ + Logger.logError(exception, "Failed to open connection of type, " + type + "."); + result = false; + } + } + + if(!result) { + databasePools[type.getIndex()] = null; + } + + Logger.log(LogMessageCategory.INFO,"Done initializing database connections."); + + return result; + } + } + + /** + * Closes all internal connections for the specified type. This will ignore redundant + * invocations. Note that the current implementation does not drop the execution database + * when all the connections to the Execution Database have been closed. + * @param type The database type to initialize for. + **/ + public static void cleanup(MOVESDatabaseType type) { + InternalConnectionPool targetPool = databasePools[type.getIndex()]; + databasePools[type.getIndex()] = null; + if(targetPool == null) { + return; + } + + try { + for(Iterator i = targetPool.checkedInConnections.iterator(); i.hasNext(); ) { + Connection connection = (Connection) i.next(); + connection.close(); + removeTimeout(connection); + } + + for(Iterator i = targetPool.checkedOutConnections.iterator(); i.hasNext(); ) { + Connection connection = (Connection) i.next(); + connection.close(); + removeTimeout(connection); + } + + if(targetPool.guiConnection != null) { + targetPool.guiConnection.close(); + removeTimeout(targetPool.guiConnection); + } + } catch (SQLException exception) { + /** + * @issue Failed to close database connections for [*] + * @explain An error occurred while closing a connection to the database server. + **/ + Logger.logError(exception, "Failed to close database connections for " + type); + } + } + + /** + * Initializes all database types. This will ignore types that are already initialized. + * @return Returns true if initialization was completely successful. + **/ + public static boolean initializeAll() { + boolean result = true; + + for(int i = 0; i < MOVESDatabaseType.NUM_TYPES; i++) { + MOVESDatabaseType type = MOVESDatabaseType.getByIndex(i); + if(type != null) { + /* + if(!CompilationFlags.USE_NONROAD && type == MOVESDatabaseType.NRDEFAULT) { + continue; + } + */ + result = initialize(type) && result; + } + } + + return result; + } + + /** + * Cleans up all database types. This will ignore types that are already cleaned up. + **/ + public static void cleanupAll() { + for(int i = 0; i < MOVESDatabaseType.NUM_TYPES; i++) { + cleanup(MOVESDatabaseType.getByIndex(i)); + } + } + + /** + * Request a database connection from the shared connection pool. This will wait if one + * isn't currently available. Client code must check the connection back in when it + * is finished using it. + * @param type The type of database connection desired. + * @throws InterruptedException If the active thread is interrupted. + * @return The reserved database connection. + **/ + public static Connection checkOutConnection(MOVESDatabaseType type) + throws InterruptedException { + /* + if(!CompilationFlags.USE_NONROAD && type == MOVESDatabaseType.NRDEFAULT) { + return null; + } + */ + synchronized(type) { + if(!isInitialized(type)) { + initialize(type); + } + } + InternalConnectionPool targetPool = databasePools[type.getIndex()]; + if(targetPool == null) { + return null; + } + + Connection result; + LinkedList targetList = targetPool.checkedInConnections; + if(targetList == null) { + targetPool.checkedInConnections = new LinkedList(); + targetList = targetPool.checkedInConnections; + } + synchronized(targetList) { + while(targetList.size() == 0) { + targetList.wait(); + } + result = targetList.removeLast(); + } + result = checkTimeout(type,result); + targetList = targetPool.checkedOutConnections; + if(targetList == null) { + targetPool.checkedOutConnections = new LinkedList(); + targetList = targetPool.checkedOutConnections; + } + synchronized(targetList) { + targetList.addLast(result); + } + if(result != null && type == MOVESDatabaseType.EXECUTION) { + SQLRunner.addInnoDBConnection(result); + } + return result; + } + + /** + * Returns a connection back to the shared connection pool. + * @param type The type of database connection being returned. + * @param connection The database connection being returned. + * @throws IllegalArgumentException If the connection returned is not in the current list of + * checked-out connections. This can occur if the database connection pool has been "cleaned" + * since the connection was checked-out. + **/ + public static void checkInConnection(MOVESDatabaseType type, Connection connection) + throws IllegalArgumentException { + InternalConnectionPool targetPool = databasePools[type.getIndex()]; + if(targetPool == null) { + throw new IllegalArgumentException( + "Attempting to check-in a Connection to an uninitialized connection pool."); + } + + if(connection != null && type == MOVESDatabaseType.EXECUTION) { + SQLRunner.removeInnoDBConnection(connection); + } + + LinkedList targetList = targetPool.checkedOutConnections; + synchronized(targetList) { + if(!targetList.remove(connection)) { + throw new IllegalArgumentException( + "Attempting to check-in a Connection to the wrong list."); + } + } + setTimeout(connection); + targetList = targetPool.checkedInConnections; + synchronized(targetList) { + targetList.addLast(connection); + targetList.notifyAll(); + } + } + + /** + * Get the connection reserved exclusively for the GUI thread. No check-in/check-out is + * required. + * @param type The type of database connection desired. + * @return The reserved GUI connection. + **/ + public static Connection getGUIConnection(MOVESDatabaseType type) { + /* + if(!CompilationFlags.USE_NONROAD && type == MOVESDatabaseType.NRDEFAULT) { + return null; + } + */ + synchronized(type) { + if(!isInitialized(type)) { + initialize(type); + } + } + InternalConnectionPool targetPool = databasePools[type.getIndex()]; + targetPool.guiConnection = checkTimeout(type,targetPool.guiConnection); + setTimeout(targetPool.guiConnection); + return targetPool.guiConnection; + } + + /** + * Check the inactivity timeout for a database connection, discarding and recreating + * it if the timeout period has expired. The inactivity timeout is set as well. + * @param type The type of database connection desired. + * @param connection a database connection to be checked + * @return the database connection to actually be used + **/ + static Connection checkTimeout(MOVESDatabaseType type, Connection connection) { + synchronized(connectionTimeouts) { + Long timeout = null; + if(connection != null) { + timeout = (Long)connectionTimeouts.get(connection); + } + if(timeout == null || timeout.longValue() <= System.currentTimeMillis()) { + Connection newConnection = null; + try { + if(type == MOVESDatabaseType.OUTPUT) { + if(outputDatabaseSelection.databaseName.trim().length() != 0) { + newConnection = outputDatabaseSelection.openConnectionOrNull(); + } + } else { + newConnection = openPrivateConnection(type); + } + } catch(Exception e) { + /** + * @explain An error occurred while attempting to reconnect to the database + * server after detecting a prior connection had been idle for a long time. + **/ + Logger.logError(e,"Unable to open new connection for timed-out connection"); + } + if(newConnection != null) { + if(connection != null) { + DatabaseUtilities.closeConnection(connection); + connectionTimeouts.remove(connection); + } + connection = newConnection; + } + } + setTimeout(connection); + } + return connection; // not necessarily the same object we came in with + } + + /** + * Set the future inactivity timeout for a database connection. + * @param connection a database connection + **/ + static void setTimeout(Connection connection) { + if(connection != null) { + synchronized(connectionTimeouts) { + long timeout = System.currentTimeMillis() + CONNECTION_TIMEOUT_MILLIS; + connectionTimeouts.put(connection,new Long(timeout)); + } + } + } + + /** + * Remove timeout data for a given connection. Typically, this is done during + * a cleanup operation. + * @param connection a database connection + **/ + static void removeTimeout(Connection connection) { + if(connection != null) { + synchronized(connectionTimeouts) { + connectionTimeouts.remove(connection); + } + } + } + + /** + * Open a new database connection to be exclusively owned by the caller. + * No timeouts are checked for the returned Connection, so it should be used + * quickly then closed. + * @param type The type of database connection desired. + * @throws ClassNotFoundException If a JDBC driver class isn't found. + * @throws SQLException If there is an error opening the database connection. + * @return The newly created connection. + **/ + public static Connection openPrivateConnection(MOVESDatabaseType type) + throws ClassNotFoundException, SQLException { + if(type == MOVESDatabaseType.DEFAULT && customInputDatabase != null) { + return customInputDatabase.openConnection(); + } + return SystemConfiguration.getTheSystemConfiguration() + .databaseSelections[type.getIndex()].openConnection(); + } + + /** + * Check if the connection pool is initialized for the specified type. + * @param type The database type to check for. + * @return If the specified type initialized. + **/ + public static boolean isInitialized(MOVESDatabaseType type) { + synchronized(type) { + return databasePools[type.getIndex()] != null; + } + } + + /** + * Set the output database and database server name. + * @param serverName The output database server name. + * @param databaseName The output database name + **/ + public static void setOutputDatabase(String serverName, String databaseName) { + cleanup(MOVESDatabaseType.OUTPUT); + outputDatabaseSelection.serverName = serverName; + if(serverName == null || serverName.trim().length() == 0) { + outputDatabaseSelection.serverName = + SystemConfiguration.getTheSystemConfiguration().databaseSelections[ + MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + outputDatabaseSelection.databaseName = databaseName; + } + + /** Call learnCreateTableStatements() for the DEFAULT and EXECUTION databases **/ + public static void learnCreateTableStatementsForDefaultAndExecutionDatabases() { + Connection db = null; + MOVESDatabaseType type = null; + + try { + type = MOVESDatabaseType.DEFAULT; + db = checkOutConnection(type); + learnCreateTableStatements(db,defaultDatabaseCreateTableStatements,false); + checkInConnection(type,db); + db = null; + + /* NonRoad is part of the default database and is no longer separate + if(CompilationFlags.USE_NONROAD) { + type = MOVESDatabaseType.NRDEFAULT; + db = checkOutConnection(type); + learnCreateTableStatements(db,defaultDatabaseCreateTableStatements,false); + checkInConnection(type,db); + db = null; + } + */ + + type = MOVESDatabaseType.EXECUTION; + db = checkOutConnection(type); + learnCreateTableStatements(db,executionDatabaseCreateTableStatements,true); + checkInConnection(type,db); + db = null; + } catch(Exception e) { + /** @nonissue **/ + Logger.logException(LogMessageCategory.ERROR,e); + } finally { + if(db != null) { + checkInConnection(type,db); + db = null; + } + } + } + + /** + * Obtain a "CREATE TABLE IF NOT EXISTS" statement for a table from the Execution database. + * @param tableName table to find + * @return SQL statement for creating the table + **/ + public static String getExecutionCreateTableStatement(String tableName) { + boolean shouldLog = false; + /* + if(tableName.equalsIgnoreCase("sourceTypeAgePopulation") + || tableName.equalsIgnoreCase("analysisYearVMT")) { + shouldLog = true; + } + */ + tableName = tableName.toLowerCase(); + String createStatement = (String)executionDatabaseCreateTableStatements.get(tableName); + if(createStatement != null && createStatement.length() > 0) { + if(shouldLog) { + Logger.log(LogMessageCategory.INFO,tableName + " : " + createStatement); + } + return createStatement; + } + createStatement = ""; + + Connection db = null; + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + + try { + db = checkOutConnection(MOVESDatabaseType.EXECUTION); + sql = "SHOW CREATE TABLE " + tableName; + query.open(db,sql); + if(query.rs.next()) { + createStatement = StringUtilities.replace(query.rs.getString(2), + "CREATE TABLE `","CREATE TABLE IF NOT EXISTS `") + ";"; + executionDatabaseCreateTableStatements.put(tableName,createStatement); + } else { + Logger.log(LogMessageCategory.ERROR,"Unable to get CREATE TABLE for " + tableName); + } + query.close(); + } catch(Exception e) { + /** @nonissue **/ + Logger.logException(LogMessageCategory.ERROR,e); + } finally { + query.onFinally(); + if(db != null) { + checkInConnection(MOVESDatabaseType.EXECUTION,db); + db = null; + } + } + if(shouldLog) { + Logger.log(LogMessageCategory.INFO,tableName + " : " + createStatement); + } + return createStatement; + } + + /** + * Examine a database and generate a collection of "CREATE TABLE IF NOT EXISTS" + * statements that represent each table in the database. + * @param db Connection to the database to be examined. + * @param statements existing TreeMap that should hold table names and their + * "CREATE TABLE IF NOT EXISTS" statements. + * @param useInnoDB true to force the InnoDB database engine, false to use the default engine. + **/ + public static void learnCreateTableStatements(Connection db,TreeMapIgnoreCase statements,boolean useInnoDB) { + //statements.clear(); + + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + try { + TreeSet tableNames = new TreeSet(); + sql = "SHOW TABLES"; + query.open(db,sql); + while(query.rs.next()) { + tableNames.add(query.rs.getString(1)); + } + query.close(); + + for(Iterator i=tableNames.iterator();i.hasNext();) { + String t = (String)i.next(); + sql = "SHOW CREATE TABLE " + t; + query.open(db,sql); + if(query.rs.next()) { + String createStatement = StringUtilities.replace(query.rs.getString(2), + "CREATE TABLE `","CREATE TABLE IF NOT EXISTS `") + ";"; + t = t.toLowerCase(); + if(SQLRunner.allowInnoDB && useInnoDB) { + createStatement = StringUtilities.replace(createStatement,"ENGINE=MyISAM","ENGINE=InnoDB"); + } + + statements.put(t,createStatement); + //System.out.println("Learned create table for " + t); + } + query.close(); + } + } catch(Exception e) { + Logger.logSqlError(e,"Unable to learn Create Table statements",sql); + } finally { + query.onFinally(); + } + } + + /** Issue a FLUSH TABLES command to MySQL **/ + public static void flushTables() { + try { + Connection db = getGUIConnection(MOVESDatabaseType.DEFAULT); + if(db != null) { + SQLRunner.executeSQL(db,"FLUSH TABLES"); + } + } catch(Exception e) { + // Nothing to do here + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/DatabaseConnectionManagerTest.java b/gov/epa/otaq/moves/master/framework/DatabaseConnectionManagerTest.java new file mode 100644 index 0000000..dcd2606 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/DatabaseConnectionManagerTest.java @@ -0,0 +1,171 @@ +/************************************************************************************************** + * @(#)DatabaseConnectionManagerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.sql.*; +import junit.framework.*; +import java.io.*; + +/** + * Test Case for the DatabaseConnectionManager class + * + * @author Wesley Faler + * @version 2012-11-07 +**/ +public class DatabaseConnectionManagerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public DatabaseConnectionManagerTest(String name) { + super(name); + } + + /** + * Deletes databases such as MOVESExecution and MOVESWorker to test the ability to create + * these on the fly. + * @throws SQLException If a database error occurs. + **/ + static public void deleteNonNecessaryDatabases() throws SQLException { + Connection connection = DatabaseSelection.openKnownWorkingConnection(); + assertNotNull(connection); + try { + if(!DatabaseConnectionManager.isInitialized(MOVESDatabaseType.EXECUTION)) { + SQLRunner.executeSQL(connection, "DROP DATABASE IF EXISTS MOVESExecution"); + } + SQLRunner.executeSQL(connection, "DROP DATABASE IF EXISTS MOVESWorker"); + } finally { + connection.close(); + } + } + + /** + * Implements the test case(s). + * @throws ClassNotFoundException If a JDBC driver failed to load. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException from any of the various db operations. + **/ + public void testCase() throws ClassNotFoundException, InterruptedException, SQLException { + createTestDatabases(); + DatabaseConnectionManager.setOutputDatabase(null,"JUnitTestOUTPUT"); + assertTrue(DatabaseConnectionManager.initializeAll()); + + performTestOnTypes(MOVESDatabaseType.DEFAULT, + MOVESDatabaseType.EXECUTION, MOVESDatabaseType.OUTPUT); + performTestOnTypes(MOVESDatabaseType.EXECUTION, + MOVESDatabaseType.DEFAULT, MOVESDatabaseType.OUTPUT); + + /* + performTestOnTypes(MOVESDatabaseType.NRDEFAULT, + MOVESDatabaseType.EXECUTION, MOVESDatabaseType.OUTPUT); + performTestOnTypes(MOVESDatabaseType.EXECUTION, + MOVESDatabaseType.NRDEFAULT, MOVESDatabaseType.OUTPUT); + + performTestOnTypes(MOVESDatabaseType.DEFAULT, + MOVESDatabaseType.NRDEFAULT, MOVESDatabaseType.OUTPUT); + performTestOnTypes(MOVESDatabaseType.NRDEFAULT, + MOVESDatabaseType.DEFAULT, MOVESDatabaseType.EXECUTION); + */ + } + + /** + * Does the actual test with the specified database types. + * @param testType The database type to test. + * @param otherType1 A type not equivalent to testType. + * @param otherType2 Another type not equivalent to testType. + * @throws ClassNotFoundException If a JDBC driver failed to load. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If an SQL error occurs. + **/ + void performTestOnTypes(MOVESDatabaseType testType, + MOVESDatabaseType otherType1, MOVESDatabaseType otherType2) + throws ClassNotFoundException, InterruptedException, SQLException { + assertTrue(DatabaseConnectionManager.initialize(testType)); + + Connection testConnection = DatabaseConnectionManager.getGUIConnection(testType); + assertNotNull(testConnection); + testConnection = DatabaseConnectionManager.openPrivateConnection(testType); + assertNotNull(testConnection); + testConnection.close(); + testConnection = DatabaseConnectionManager.checkOutConnection(testType); + assertNotNull(testConnection); + + try { + try { + // Using the wrong type on checkin should cause an exception. + DatabaseConnectionManager.checkInConnection(otherType1, testConnection); + fail("Checking in connection with wrong type should have caused exception"); + } catch (IllegalArgumentException exception) { + // Expected + } + + try { + DatabaseConnectionManager.checkInConnection(otherType2, testConnection); + fail("Checking in connection with wrong type should have caused exception"); + } catch (IllegalArgumentException exception) { + // Expected + } + } finally { + DatabaseConnectionManager.checkInConnection(testType, testConnection); + } + } + + /** + * Safely ensures that some number of test databases exist, such that this test class can + * always be run. + * @throws SQLException If a database error occurred. + **/ + public static void createTestDatabases() throws SQLException { + final String[] testDatabaseNames = { + "JUnitTestDEFAULT", + "JUnitTestEXECUTION", + "JUnitTestOUTPUT" + //"JUnitTestNRDEFAULT" + }; + + Connection connection = DatabaseSelection.openKnownWorkingConnection(); + assertNotNull(connection); + try { + for(int i = 0; i < testDatabaseNames.length; i++) { + String sql = "CREATE DATABASE IF NOT EXISTS " + testDatabaseNames[i]; + SQLRunner.executeSQL(connection, sql); + } + } finally { + connection.close(); + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = "localhost"; + dbSelection.databaseName = "JUnitTestOUTPUT"; + Connection db = null; + try { + db = dbSelection.openConnectionOrNull(); + assertNotNull(db); + DatabaseUtilities.executeScript(db,new File("database/CreateOutput.sql")); + } catch(Exception e) { + Logger.logError(e,"Creating sample output database failed."); + DatabaseUtilities.closeConnection(db); + db = null; + fail("Got exception trying to create sample output database " + e.getMessage()); + } finally { + if(db != null) { + DatabaseUtilities.closeConnection(db); + } + } + } + + /** Utility function for test cases to setup the output database **/ + public static void setupOutputDatabase() { + try { + createTestDatabases(); + } catch(Exception e) { + fail("An exception occured while trying to create test databases: " + e.toString()); + } + DatabaseConnectionManager.setOutputDatabase("localhost","JUnitTestOUTPUT"); + } +} diff --git a/gov/epa/otaq/moves/master/framework/DefaultDataMaker.java b/gov/epa/otaq/moves/master/framework/DefaultDataMaker.java new file mode 100644 index 0000000..2b0fdea --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/DefaultDataMaker.java @@ -0,0 +1,628 @@ +/************************************************************************************************ + * @(#)DefaultDataMaker.java + * + ***********************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; +import java.sql.*; +import java.io.*; +import gov.epa.otaq.moves.common.*; + +/** + * An instance of this class is created by a calculator. It is used to insert + * default values into the tables for the worker. + * It identifies the tables extracted by an SQL script, and the additional + * tables to be extracted. + * + * @author Wesley Faler + * @author EPA - Mitch C + * @version 2015-06-16 +**/ +public class DefaultDataMaker { + /** a TreeSetIgnoreCase of the tables extracted by the script of a calculator **/ + TreeSetIgnoreCase tablesExtractedByScript = new TreeSetIgnoreCase(); + /** a TreeSetIgnoreCase of the tables to be extracted by the script of a calculator &*/ + TreeSetIgnoreCase tablesToBeExtracted = new TreeSetIgnoreCase(); + + /** + * Add default data to the execution database. This is useful for things such + * as the FuelSupply table which is used by WTP calculators on the master-side + * yet must have default data present. + **/ + public static void addDefaultDataToExecutionDatabase() { + boolean needsNonRoad = ExecutionRunSpec.getRunSpec().models.contains(Model.NONROAD); + + Connection executionDatabase = null; + try { + executionDatabase = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + } catch(Exception e) { + /** + * @explain A connection to the MOVESExecution database could not be established but + * was needed in order to create default fuel supply information. + **/ + Logger.logError(e,"Unable to get the Execution Database connection needed for running" + + " DefaultDataMaker."); + return; + } + + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + // Fix any misaligned fuelSubtypeIDs in gasoline and ethanol fuels + String[] formulationFixes = { + "update fuelFormulation set fuelSubtypeID = 10 where fuelSubtypeID <> 10 and ETOHVolume < 0.10 and fuelSubtypeID <> 11 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 12 where fuelSubtypeID <> 12 and ETOHVolume >= 9 and ETOHVolume < 12.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 13 where fuelSubtypeID <> 13 and ETOHVolume >= 6 and ETOHVolume < 9 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 14 where fuelSubtypeID <> 14 and ETOHVolume >= 0.10 and ETOHVolume < 6 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 15 where fuelSubtypeID <> 15 and ETOHVolume >= 12.5 and ETOHVolume < 17.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 51 where fuelSubtypeID <> 51 and ETOHVolume >= 70.5 and ETOHVolume <= 100 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 52 where fuelSubtypeID <> 52 and ETOHVolume >= 50.5 and ETOHVolume < 70.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)", + "update fuelFormulation set fuelSubtypeID = 18 where fuelSubtypeID <> 18 and ETOHVolume >= 17.5 and ETOHVolume < 50.5 and fuelSubtypeID in (10,11,12,13,14,15,51,52,18)" + }; + for(int i=0;i 0 and (T50 is null or T50 <= 0)", + "update fuelFormulation set T90 = 4.5454545 * (155.47 - e300) where e300 is not null and e300 > 0 and (T90 is null or T90 <= 0)", + "update fuelFormulation set e200 = 147.91-(T50/2.0408163) where T50 is not null and T50 > 0 and (e200 is null or e200 <= 0)", + "update fuelFormulation set e300 = 155.47-(T90/4.5454545) where T90 is not null and T90 > 0 and (e300 is null or e300 <= 0)" + /* + "update nrFuelFormulation set T50 = 2.0408163 * (147.91 - e200) where e200 is not null and e200 > 0 and (T50 is null or T50 <= 0)", + "update nrFuelFormulation set T90 = 4.5454545 * (155.47 - e300) where e300 is not null and e300 > 0 and (T90 is null or T90 <= 0)", + "update nrFuelFormulation set e200 = 147.91-(T50/2.0408163) where T50 is not null and T50 > 0 and (e200 is null or e200 <= 0)", + "update nrFuelFormulation set e300 = 155.47-(T90/4.5454545) where T90 is not null and T90 > 0 and (e300 is null or e300 <= 0)" + */ + }; + for(int i=0;i defaultFuelMessages = new TreeSet(); + boolean[] isNonroadTables = { false, true }; + String[] fuelSupplyTables = { "FuelSupply", "NRFuelSupply" }; + String[] fuelTypeTables = { "FuelType", "NRFuelType" }; + String[] fuelSubTypeTables = { "FuelSubtype", "NRFuelSubtype" }; + for(int i=0;i 9 " + // give no warning about default formulation for Electricity + "ORDER BY nfs.fuelRegionID, nfs.fuelYearID, nfs.monthGroupID, fuelTypeDesc"; + query.open(executionDatabase,sql); + while(query.rs.next()) { + int regionID = query.rs.getInt(1); + int fuelYearID = query.rs.getInt(2); + int monthGroupID = query.rs.getInt(3); + int defaultFormulationID = query.rs.getInt(4); + String fuelTypeDescription = query.rs.getString(5); + String message = "WARNING: Using default formulation " + defaultFormulationID + + " for " + fuelTypeDescription + + " in region " + regionID + + ", fuel year " + fuelYearID + + ", month group " + monthGroupID + + " in the " + fuelSupplyTables[i] + " table."; + if(!defaultFuelMessages.contains(message)) { + defaultFuelMessages.add(message); + Logger.log(LogMessageCategory.WARNING,message); + } + } + query.close(); + } + + /* + //use default values for the fuel adjustment field if no record is found in the + //FuelAdjustment table for a given pollutant-process-modelYearGroup, sourceTypeID, and + //fuelFormulationID. + sql = "INSERT INTO FuelAdjustment (" + + " polProcessID," + + " fuelMYGroupID," + + " sourceTypeID," + + " fuelFormulationID," + + " fuelAdjustment," + + " fuelAdjustmentCV," + + " fuelAdjustmentGPA," + + " fuelAdjustmentGPACV)" + + " SELECT" + + " rspp.polProcessID," + + " fmyg.fuelMYGroupID," + + " rssft.sourceTypeID," + + " ff.fuelFormulationID," + + " 1, 0, 1, 0" + + " FROM RunSpecPollutantProcess rspp" + + " INNER JOIN FuelModelYearGroup fmyg" + + " INNER JOIN RunSpecSourceFuelType rssft" + + " INNER JOIN FuelSubType fst ON fst.fuelTypeID = rssft.fuelTypeID" + + " INNER JOIN FuelFormulation ff ON ff.fuelSubTypeID = fst.fuelSubTypeID" + + " LEFT JOIN FuelAdjustment fa ON (fa.polProcessID = rspp.polProcessID" + + " AND fa.fuelMYGroupID = fmyg.fuelMYGroupID" + + " AND fa.sourceTypeID = rssft.sourceTypeID" + + " AND fa.fuelFormulationID = ff.fuelFormulationID)" + + " WHERE fa.polProcessID IS NULL"; + + SQLRunner.executeSQL(executionDatabase,sql); + + sql = "ANALYZE TABLE FuelAdjustment"; + SQLRunner.executeSQL(executionDatabase,sql); + */ + + sql = "insert ignore into countyYear (" + + " countyID, yearID, refuelingVaporProgramAdjust, refuelingSpillProgramAdjust)" + + " select countyID, yearID, 0.0, 0.0" + + " from runSpecCounty, runSpecYear"; + SQLRunner.executeSQL(executionDatabase,sql); + + sql = "insert into TemperatureProfileID (temperatureProfileID, zoneID, monthID)" + + " select distinct (zoneID*10000)+(monthID*100) as temperatureProfileID, zoneID, monthID" + + " from zoneMonthHour" + + " where not exists (" + + " select *" + + " from TemperatureProfileID" + + " where TemperatureProfileID.zoneID=zoneMonthHour.zoneID" + + " and TemperatureProfileID.monthID=zoneMonthHour.monthID)"; + SQLRunner.executeSQL(executionDatabase,sql); + + sql = "create table if not exists NRModelYear like modelYear"; + SQLRunner.executeSQL(executionDatabase,sql); + for(int i=1940;i<2050;i++) { + sql = "insert ignore into NRModelYear (modelYearID) values (" + i + ")"; + SQLRunner.executeSQL(executionDatabase,sql); + } + } catch(SQLException e) { + /** + * @explain An error occurred while creating default records. + **/ + Logger.logError(e,"Unable to create default data"); + } finally { + query.onFinally(); + } + + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + + /** + * Obtain SQL to change any NULL-valued columns into 0-valued columns in the fuelFormulation table. + **/ + public static String getFuelFormulationNullsSQL() { + String[] columnNames = { "RVP","sulfurLevel","ETOHVolume","MTBEVolume","ETBEVolume", + "TAMEVolume","aromaticContent","olefinContent","benzeneContent","e200","e300", + "volToWtPercentOxy","BioDieselEsterVolume","CetaneIndex","PAHContent","T50","T90" + }; + String sql = "update fuelFormulation set "; + for(int i=0;i 0) { + sql += ","; + } + sql += columnNames[i] + "=ifnull(" + columnNames[i] + ",0)"; + } + return sql; + } + + /** + * Adds the tables extracted by the calculator script to tablesExtractedByScript + * @param tableName The name of the table to be added to the TreeSet + **/ + public void addTableExtractedByScript(String tableName) { + String t = tableName.toLowerCase(); + tablesExtractedByScript.add(t); + } + + /** + * Adds the tables to be extracted by the calculator script to the + * tablesToBeExtracted TreeSet. These tables are related and are identified + * by tablesExtractedByScript. + **/ + public void determineAllTablesToExtractAndCreate() { + if(tablesExtractedByScript.contains("TemperatureAdjustment")) { + tablesToBeExtracted.add("RunSpecSourceFuelType"); + tablesToBeExtracted.add("PollutantProcessAssoc"); + } + + // Disregard any tables already being handled by the script + for(Iterator i=tablesExtractedByScript.iterator();i.hasNext();) { + String tableName = (String)i.next(); + tablesToBeExtracted.remove(tableName); + } + } + + /** + * Creates a linked list of the SQLs which stores default data into the + * tables identified by a calculator + * @return the Linked List of the SQLs to store default values into + * the tables used in a calculator + **/ + public LinkedList getTableCreationSQL() { + LinkedList result = new LinkedList(); + String sql; + + for(Iterator i=tablesToBeExtracted.iterator();i.hasNext();) { + String tableName = (String)i.next(); + sql = (String)DatabaseConnectionManager.executionDatabaseCreateTableStatements.get(tableName); + result.add(sql); + sql = "TRUNCATE TABLE " + tableName + ";"; + result.add(sql); + } + + /* + // Give the total set of pollutant/process selections to the external calculator. Just + // the file is needed. It doesn't need to be loaded into a real table. + sql = (String)DatabaseConnectionManager.executionDatabaseCreateTableStatements.get("RunSpecPollutantProcess"); + sql = StringUtilities.replace(sql,"RunSpecPollutantProcess","extpollutantprocess"); + result.add(sql); + sql = "TRUNCATE TABLE extpollutantprocess;"; + result.add(sql); + */ + + return result; + } + + /** + * Creates a linked list of the SQLs to extract data from the + * tablesToBeExtracted TreeSet into output flat files + * @return the Linked List of the SQLs to extract data from the + * tablesToBeExtracted TreeSet into output flat files + **/ + public LinkedList getDataExtractionSQL() { + LinkedList result = new LinkedList(); + String sql; + + for(Iterator i=tablesToBeExtracted.iterator();i.hasNext();) { + String tableName = (String)i.next(); + sql = "SELECT * INTO OUTFILE '##" + tableName.toLowerCase() + "##' FROM " + tableName + ";"; + result.add(sql); + } + + String[] externalCalculatorStatements = { + // Give the total set of pollutant/process selections to the external calculator. Just + // the file is needed. It doesn't need to be loaded into a real table. + "cache SELECT * INTO OUTFILE '##extpollutantprocess##' FROM RunSpecPollutantProcess;", + + "cache select ageID, ageGroupID" + + " into outfile '##extagecategory##'" + + " from AgeCategory;", + + "cache select ##context.iterLocation.countyRecordID##, ##context.year##, ##context.monthID##, " + + " fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare" + + " into outfile '##extfuelsupply##'" + + " from year" + + " inner join fuelSupply fs on (fs.fuelYearID=year.fuelYearID)" + + " inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID)" + + " inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID)" + + " inner join fuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID)" + + " where yearID = ##context.year##" + + " and fs.fuelRegionID = ##context.fuelRegionID##" + + " and moay.monthID = ##context.monthID##" + + " and fst.fuelTypeID in (##macro.csv.all.fuelTypeID##);", + + "cache select ##context.iterLocation.countyRecordID##, ##context.year##, ##context.monthID##," + + " fst.fuelTypeID, fst.fuelSubTypeID, ff.fuelFormulationID, fs.marketShare" + + " into outfile '##extnrfuelsupply##'" + + " from year" + + " inner join nrFuelSupply fs on (fs.fuelYearID=year.fuelYearID)" + + " inner join monthOfAnyYear moay on (moay.monthGroupID=fs.monthGroupID)" + + " inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID)" + + " inner join nrFuelSubtype fst on (fst.fuelSubtypeID=ff.fuelSubtypeID)" + + " where yearID = ##context.year##" + + " and fs.fuelRegionID = ##context.fuelRegionID##" + + " and moay.monthID = ##context.monthID##" + + " and fst.fuelTypeID in (##macro.csv.all.nrFuelTypeID##);", + + "cache select fuelTypeID, humidityCorrectionCoeff, fuelDensity, subjectToEvapCalculations" + + " into outfile '##extfueltype##'" + + " from fuelType;", + + "cache select fuelTypeID, humidityCorrectionCoeff, fuelDensity, subjectToEvapCalculations" + + " into outfile '##extnrfueltype##'" + + " from nrFuelType;", + + "cache select fuelSubtypeID, fuelTypeID, fuelSubtypePetroleumFraction, fuelSubtypeFossilFraction," + + " carbonContent, oxidationFraction, energyContent" + + " into outfile '##extfuelsubtype##'" + + " from fuelSubtype;", + + "cache select fuelSubtypeID, fuelTypeID, fuelSubtypePetroleumFraction, fuelSubtypeFossilFraction," + + " carbonContent, oxidationFraction, energyContent" + + " into outfile '##extnrfuelsubtype##'" + + " from nrFuelSubtype;", + + "cache select distinct" + + " FuelFormulation.fuelFormulationID," + + " FuelFormulation.fuelSubtypeID," + + " ifnull(FuelFormulation.RVP,0)," + + " ifnull(FuelFormulation.sulfurLevel,0)," + + " ifnull(FuelFormulation.ETOHVolume,0)," + + " ifnull(FuelFormulation.MTBEVolume,0)," + + " ifnull(FuelFormulation.ETBEVolume,0)," + + " ifnull(FuelFormulation.TAMEVolume,0)," + + " ifnull(FuelFormulation.aromaticContent,0)," + + " ifnull(FuelFormulation.olefinContent,0)," + + " ifnull(FuelFormulation.benzeneContent,0)," + + " ifnull(FuelFormulation.e200,0)," + + " ifnull(FuelFormulation.e300,0)," + + " ifnull(FuelFormulation.volToWtPercentOxy,0)," + + " ifnull(FuelFormulation.BioDieselEsterVolume,0)," + + " ifnull(FuelFormulation.CetaneIndex,0)," + + " ifnull(FuelFormulation.PAHContent,0)," + + " ifnull(FuelFormulation.T50,0)," + + " ifnull(FuelFormulation.T90,0)" + + " INTO OUTFILE '##extfuelformulation##'" + + " FROM FuelFormulation" + + " WHERE FuelFormulation.FuelFormulationID IN (" + + " select distinct ff.fuelFormulationID" + + " FROM FuelSupply" + + " INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID)" + + " INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID)" + + " INNER JOIN FuelFormulation ff ON (ff.fuelFormulationID = FuelSupply.fuelFormulationID)" + + " INNER JOIN FuelSubtype ON (FuelSubtype.fuelSubtypeID = ff.fuelSubtypeID)" + + " INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID)" + + " INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID)" + + " WHERE fuelRegionID = ##context.fuelRegionID##" + + " AND yearID = ##context.year##" + + " AND MonthOfAnyYear.monthID = ##context.monthID##" + + " AND FuelSubtype.fuelTypeID in (##macro.csv.all.fuelTypeID##)" + + " );", + + "cache select distinct" + + " FuelFormulation.fuelFormulationID," + + " FuelFormulation.fuelSubtypeID," + + " ifnull(FuelFormulation.RVP,0)," + + " ifnull(FuelFormulation.sulfurLevel,0)," + + " ifnull(FuelFormulation.ETOHVolume,0)," + + " ifnull(FuelFormulation.MTBEVolume,0)," + + " ifnull(FuelFormulation.ETBEVolume,0)," + + " ifnull(FuelFormulation.TAMEVolume,0)," + + " ifnull(FuelFormulation.aromaticContent,0)," + + " ifnull(FuelFormulation.olefinContent,0)," + + " ifnull(FuelFormulation.benzeneContent,0)," + + " ifnull(FuelFormulation.e200,0)," + + " ifnull(FuelFormulation.e300,0)," + + " ifnull(FuelFormulation.volToWtPercentOxy,0)," + + " ifnull(FuelFormulation.BioDieselEsterVolume,0)," + + " ifnull(FuelFormulation.CetaneIndex,0)," + + " ifnull(FuelFormulation.PAHContent,0)," + + " ifnull(FuelFormulation.T50,0)," + + " ifnull(FuelFormulation.T90,0)" + + " INTO OUTFILE '##extnrfuelformulation##'" + + " FROM fuelFormulation as FuelFormulation" + + " WHERE FuelFormulation.FuelFormulationID IN (" + + " select distinct ff.fuelFormulationID" + + " FROM NRFuelSupply as FuelSupply" + + " INNER JOIN RunSpecMonthGroup ON (FuelSupply.monthGroupID = RunSpecMonthGroup.monthGroupID)" + + " INNER JOIN Year ON (FuelSupply.fuelYearID = Year.fuelYearID)" + + " INNER JOIN FuelFormulation ff ON (ff.fuelFormulationID = FuelSupply.fuelFormulationID)" + + " INNER JOIN NRFuelSubtype as FuelSubtype ON (FuelSubtype.fuelSubtypeID = ff.fuelSubtypeID)" + + " INNER JOIN MonthOfAnyYear ON (MonthOfAnyYear.monthGroupID = FuelSupply.monthGroupID)" + + " INNER JOIN RunSpecMonth ON (RunSpecMonth.monthID = MonthOfAnyYear.monthID)" + + " WHERE fuelRegionID = ##context.fuelRegionID##" + + " AND yearID = ##context.year##" + + " AND MonthOfAnyYear.monthID = ##context.monthID##" + + " AND FuelSubtype.fuelTypeID in (##macro.csv.all.nrFuelTypeID##)" + + " );", + + "cache select SCC, NREquipTypeID, fuelTypeID" + + " into outfile '##extnrscc##'" + + " from nrSCC;", + + "cache select nrhprangebinid, engtechid, nrhpcategory" + + " into outfile '##extnrhpcategory##'" + + " from nrHPCategory;" + }; + for(int i=0;i getRemoteProcessingSQL() { + LinkedList result = new LinkedList(); + String sql; + + // Do LOAD DATA INFILE statements first + for(Iterator i=tablesToBeExtracted.iterator(); i.hasNext();) { + String tableName = (String)i.next(); + tableName = tableName.toLowerCase(); + sql = "LOAD DATA INFILE '##" + tableName + "##' INTO TABLE " + + tableName + ";"; + result.add(sql); + + sql = "ANALYZE TABLE " + tableName + ";"; + result.add(sql); + } + + // use TempAdjustTermA, TempAdjustTermB and TempAdjustTermC values of 0.0 for a given + // pollutant/process and fueltype if no record is found in the TemperatureAdjustment + // table for a particular combination of these key values in the Temperature Adjustment + // table. + if(tablesExtractedByScript.contains("TemperatureAdjustment")) { + +// !!! Gwo Shyu - Start of Change, 04/09/2014 + + sql = "drop table if exists tmpsfppa;"; + result.add(sql); + sql = "create table tmpsfppa select * from RunSpecSourceFuelType, PollutantProcessAssoc;"; + result.add(sql); + sql = "alter table tmpsfppa add index NDXSTFTpolProcess (sourceTypeID,fuelTypeID, polProcessID);"; + result.add(sql); + sql = "alter table tmpsfppa add index NDXfuelTypepolProcess (fuelTypeID, polProcessID);"; + result.add(sql); + sql = "INSERT IGNORE INTO TemperatureAdjustment ( " + + "polProcessID, fuelTypeID, " + + "tempAdjustTermA, tempAdjustTermACV, " + + "tempAdjustTermB, tempAdjustTermBCV, " + + "tempAdjustTermC, tempAdjustTermCCV, " + + "minModelYearID, maxModelYearID ) " + +"SELECT DISTINCT " + + "polProcessID, fuelTypeID, " + + "0, 0, 0, 0, 0, 0, 1960, 2050 " + +"FROM " + + "tmpsfppa " + + "left outer join TemperatureAdjustment using (fuelTypeID, polProcessID) " + + "where TemperatureAdjustment.polProcessID is null;"; + +/* + sql = "INSERT IGNORE INTO TemperatureAdjustment ( " + + "polProcessID, fuelTypeID, " + + "tempAdjustTermA, tempAdjustTermACV, " + + "tempAdjustTermB, tempAdjustTermBCV, " + + "tempAdjustTermC, tempAdjustTermCCV, " + + "minModelYearID, maxModelYearID ) " + +"SELECT DISTINCT " + + "polProcessID, fuelTypeID, " + + "0, 0, 0, 0, 0, 0, 1960, 2050 " + +"FROM " + + "RunSpecSourceFuelType " + + "inner join PollutantProcessAssoc " + + "left outer join TemperatureAdjustment using (fuelTypeID, polProcessID) " + + "where TemperatureAdjustment.polProcessID is null;"; +*/ +// !!! End of change + + result.add(sql); + + sql = "ANALYZE TABLE TemperatureAdjustment;"; + result.add(sql); + } + + return result; + } + + /** + * Creates a linked list of the SQLs to remove tables extracted + * @return the Linked List of the SQLs to delete the tables extracted + **/ + public LinkedList getRemoteCleanupSQL() { + LinkedList result = new LinkedList(); + String sql; + for(Iterator i=tablesToBeExtracted.iterator(); i.hasNext();) { + String tableName = (String)i.next(); + sql = "DROP TABLE IF EXISTS " + tableName; + result.add(sql); + } + + sql = "DROP TABLE IF EXISTS extpollutantprocess;"; + result.add(sql); + + return result; + } + + /** + * Update the FuelFormulation table's volToWtPercentOxy field. + * @param db database to be used + * @throws SQLException if anything goes wrong + **/ + public static void calculateVolToWtPercentOxy(Connection db) throws SQLException { + String[] tableNames = { "fuelFormulation" }; // , "nrFuelFormulation" }; + for(int i=0;i 0 then" + + " (ETOHVolume*0.3653" + + " + MTBEVolume*0.1792" + + " + ETBEVolume*0.1537" + + " + TAMEVolume*0.1651) / (ETOHVolume+MTBEVolume+ETBEVolume+TAMEVolume)" + + " else 0" + + " end"; + SQLRunner.executeSQL(db,sql); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculator.java b/gov/epa/otaq/moves/master/framework/EmissionCalculator.java new file mode 100644 index 0000000..88a25b7 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculator.java @@ -0,0 +1,647 @@ +/************************************************************************************************** + * @(#)EmissionCalculator.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import java.sql.*; +import java.util.*; + +/** + * This takes data from the Core Model Input tables built by Generator objects and builds work + * bundles which contain processing logic and all relevant data. These work bundles are processed + * by a distributed worker system (class RemoteEmissionsCalculator). Supported processes use + * concrete subclasses of this class. + * + * This class supports the ability to "chain" one calculator off of another. This allows the + * chaining calculator's work and logic to go in the same bundle as the logic from the calculator + * being chained. + * + * @author Wesley Faler + * @version 2015-03-17 +**/ +public abstract class EmissionCalculator implements MasterLoopable, Comparable { + /** + * Calculators that should execute at the same time. SQL built for a distributed worker + * should be combined with the SQL from chained calculator objects so that the same worker + * processes both. This list can be recursive; chained calculators may have additional + * chained calculators themselves. + **/ + public LinkedList chainedCalculators = new LinkedList(); + + /** Used during iteration when building the list of export files. **/ + File currentExportFilePath = null; + + /** + * Used during iteration to control whether or not display of queries that should extract + * data but yield no output records should be done. This is reset before every call to + * doExecute(). + **/ + protected boolean shouldDisplayEmptyExtractedDataQueries = false; + + /** + * Default constructor + **/ + public EmissionCalculator() { + } + + /** + * Calls doExecute for this object and any chained calculators. Builds up a single block of + * SQL statements for a distributed worker and passes it to EmissionCalculatorOutboundBundler + * for bundling and distribution. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void executeLoop(MasterLoopContext context) { + // IDEA: this assumes that any chained calculators specify unique output table dump + // files (they should), however should add some logic to detect the condition where a + // table name is repeated throughout the list of chained calculators + + File temporaryFolderPath = null; + PrintWriter classNameFileWriter = null; + PrintWriter workerSQLFileWriter = null; + PrintWriter flagsFileWriter = null; + Connection executionDB = null; + BundleManifest manifest = null; + + try { + temporaryFolderPath = FileUtilities.createTemporaryFolder(null, "EmissionCalculatorTemp"); + if(temporaryFolderPath == null) { + return; + } + + // Open the classname.txt and worker.sql PrintWriters + File classNameFilePath = new File(temporaryFolderPath, "classname.txt"); + File workerSQLFilePath = new File(temporaryFolderPath, "worker.sql"); + File flagsFilePath = new File(temporaryFolderPath, "flags.txt"); + manifest = new BundleManifest(); + manifest.copyFrom(MOVESEngine.theInstance.masterFragment); + manifest.context = context.toBundleManifestContext(); + manifest.contextForHumans = context.toBundleManifestContextForHumans(); + manifest.tablesToRetrieve.add("MOVESWorkerOutput"); + manifest.tablesToRetrieve.add("MOVESWorkerActivityOutput"); + if(CompilationFlags.DO_RATES_FIRST) { + manifest.tablesToRetrieve.add("BaseRateOutput"); + } + manifest.bundleNumber = MOVESEngine.theInstance.bundler.getNextQueueIDCore(); + + try { + classNameFileWriter = new PrintWriter(new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(classNameFilePath)))); + workerSQLFileWriter = new PrintWriter(new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(workerSQLFilePath)))); + flagsFileWriter = new PrintWriter(new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(flagsFilePath)))); + } catch(FileNotFoundException e) { + /** + * @explain An error occurred while creating files to be bundled and sent to + * the workers. Check your permissions to the shared work folder (see the + * MOVESConfiguration.txt) file, ensuring there is space and sufficient rights + * to create files within it. + **/ + Logger.logError(e, "Create worker files failed."); + return; + } + + // Get db connection + try { + executionDB = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + } catch(Exception e) { + /** @explain Unable to obtain a connection to the MOVESExecution database. **/ + Logger.logError(e,"Failed to checkout the MOVES Execution database connection "+ + "needed to perform Emission Calculations."); + return; + } + + LinkedList tableDumpFilePaths = new LinkedList(); + + try { + addToManifestAndFiles(context, executionDB, manifest, temporaryFolderPath, tableDumpFilePaths); + } catch (FileNotFoundException e1) { + e1.printStackTrace(); + Logger.logError(e1, "Failed add files to file list and information to manifest."); + } + + // Invoke this calculator. This will recursively invoke chained calculators. + SQLForWorker masterSQLForWorker = new SQLForWorker(); + calculatorExecution(classNameFileWriter + , temporaryFolderPath, executionDB + , tableDumpFilePaths, context, masterSQLForWorker, false); + + // Add the processing logic to the "worker.sql" file + for(Iterator iter = masterSQLForWorker.processingSQL.iterator(); + iter.hasNext(); ) { + workerSQLFileWriter.println(iter.next().toString()); + } + if(!BundleUtilities.debugTablesOnWorker && !ExecutionRunSpec.shouldSaveData(this)) { + // Add the data cleanup logic to the "worker.sql" file + for(Iterator iter = masterSQLForWorker.cleanupSQL.iterator(); + iter.hasNext(); ) { + workerSQLFileWriter.println(iter.next().toString()); + } + } else { + flagsFileWriter.println("savedata"); + } + // Add aggregation SQLs to the "worker.sql" file + Vector workerSQLs = ExecutionRunSpec.theExecutionRunSpec.workerSQLs; + for(int i=0; i iter = masterSQLForWorker.localDataRemovalSQL.iterator(); + iter.hasNext(); ) { + String sql = iter.next().toString(); + try { + SQLRunner.executeSQL(executionDB,sql); + } catch(SQLException e) { + Logger.logSqlError(e, "Error removing generated data from the execution "+ + "database.", sql); + } + } + } finally { + if(classNameFileWriter != null) { + classNameFileWriter.close(); + } + if(workerSQLFileWriter != null) { + workerSQLFileWriter.close(); + } + if(flagsFileWriter != null) { + flagsFileWriter.close(); + } + if(temporaryFolderPath != null) { + FileUtilities.deleteTemporaryFolder(temporaryFolderPath); + } + if(executionDB != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDB); + } + } + } + + /** + * Handles the results from the main processing routine for a single calculator. + * @param classNameFileWriter An opened PrintWriter to "classname.txt" which is intended + * for future use where compiled Java .CLASS files are sent to workers for execution. + * @param temporaryFolderPath The path to store table dump files. + * @param executionDB An opened Connection to the Execution Database. + * @param tableDumpFilePaths Adds any table dump files (as File objects) to this LinkList. + * These are files that will get sent to the worker. + * @param context The MasterLoopContext that applies to this execution. + * @param masterSQLForWorker central set of SQL for the worker. Calculators should add + * to this object. + * @param isChained true if called as a chained calculator, false if a top-level calculator + **/ + void calculatorExecution( + PrintWriter classNameFileWriter, + File temporaryFolderPath, Connection executionDB, LinkedList tableDumpFilePaths, + MasterLoopContext context, SQLForWorker masterSQLForWorker, + boolean isChained) { + final String eol = System.getProperty("line.separator"); + // Get the sql for the worker + shouldDisplayEmptyExtractedDataQueries = false; + SQLForWorker sqlForWorker = doExecute(context); + if(sqlForWorker == null) { + // This is expected from calculators that skip looping levels, such as + // EnergyConsumptionCalculator that skips the link level for Starts and + // Extended Idle. + return; + } + + // Flatten the set of chained calculators, if any. + boolean hasChainedExternalCalculator = false; + if(!isChained) { + if(chainedCalculators.size() > 0) { + //System.out.println("Flattening the chain..."); + LinkedList flatChain = new LinkedList(); + flattenChain(flatChain); + // Now, no child calculator has a chainedCalculator list with anything in it, + // so we know each will only be called once and in the desired order. + chainedCalculators.clear(); + chainedCalculators.addAll(flatChain); + + for(Iterator i=chainedCalculators.iterator();i.hasNext();) { + if(i.next() instanceof EmissionCalculatorExternal) { + hasChainedExternalCalculator = true; + break; + } + } + /* + // Dump the chain + Logger.log(LogMessageCategory.INFO,"***Chain from:" + getClass().getName()); + for(Iterator i=chainedCalculators.iterator();i.hasNext();) { + Logger.log(LogMessageCategory.INFO,i.next().getClass().getName()); + } + Logger.log(LogMessageCategory.INFO,"***End of chain from:" + getClass().getName()); + */ + } + } + + + + String sql = ""; + // Generate any export files + for(Iterator iter = sqlForWorker.dataExportSQL.iterator(); iter.hasNext(); ) { + try { + sql = (String)iter.next(); + if(sql.startsWith("--")) { + continue; + } + currentExportFilePath = ExtractedDataCache.handle(executionDB,sql,temporaryFolderPath); + if(currentExportFilePath == null) { + // Replace filename.ext with a known path, this also sets the + // currentExportFilePath member + sql = performFilePathReplacements(sql, temporaryFolderPath); + // Generate the table dump and add the file to the export bundler + SQLRunner.executeSQL(executionDB,sql); + } + if(currentExportFilePath != null) { + if(!tableDumpFilePaths.contains(currentExportFilePath)) { + tableDumpFilePaths.add(currentExportFilePath); + } + if(shouldDisplayEmptyExtractedDataQueries && + currentExportFilePath.length() < 1) { + Logger.log(LogMessageCategory.INFO, "Generated empty file: " + + currentExportFilePath.getPath()+"."+eol+sql); + } + currentExportFilePath = null; + } + } catch(SQLException e) { + Logger.logSqlError(e,"An EmissionCalculator encountered an SQL exception while " + + "exporting data using: ", sql); + } catch(IOException e) { + Logger.logError(e,"An EmissionCalculator encountered an IO exception while " + + "exporting data to " + (currentExportFilePath==null?"(null)":currentExportFilePath.getPath())); + } + } + + // Add the local cleanup logic to the master set of SQL + for(Iterator iter = sqlForWorker.localDataRemovalSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + masterSQLForWorker.localDataRemovalSQL.add(sql); + } + + // Add the processing logic to the master set of SQL + if(this instanceof EmissionCalculatorExternal) { + masterSQLForWorker.processingSQL.add("externalcalculator " + getClass().getSimpleName() + ";"); + for(String extraModule : sqlForWorker.externalModules) { + masterSQLForWorker.processingSQL.add("externalcalculator " + extraModule + ";"); + } + if(CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + if(ExecutionRunSpec.getRunSpec().outputEmissionsBreakdownSelection.fuelSubType) { + masterSQLForWorker.processingSQL.add("externalcalculator FuelSubType;"); + } + } + } else { + for(Iterator iter = sqlForWorker.processingSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + masterSQLForWorker.processingSQL.add(sql); + } + if(CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + if(!isChained && !hasChainedExternalCalculator && ExecutionRunSpec.getRunSpec().outputEmissionsBreakdownSelection.fuelSubType) { + // The top-level calculator is requested to output by fuelSubType. + // The external calculator splits output by fuel type into fuel subtype. + // However, there is no reason that would cause the external calculator + // to be run. So, add a call to the external calculator just to do the + // fuel subtype split. + // Do this at the top-level so chained calculators can work with fuelSubTypeID. + // Doing so after chained calculators would force a linear split on all + // calculators, which may not be the case. + masterSQLForWorker.processingSQL.add("externalcalculator FuelSubType;"); + } + } + } + + // Add the data cleanup logic to the master set of SQL + for(Iterator iter = sqlForWorker.cleanupSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + // add the new cleanup SQL to the beginning of the master list, so as to + // create a stack-like effect wherein calculators processed first are + // cleaned up last. This allows subsequent calculators access to intermediate + // results. + masterSQLForWorker.cleanupSQL.add(0,sql); // add to the beginning + } + + // Add to the "classname.txt" file + // ... This is reserved for future use in a situation where we want to send .CLASS files + // to workers for execution. + // classNameFileWriter.println(getClass().getName()); + + sqlForWorker = null; + // Recursively invoke chained calculators + if(!isChained) { + context.resetChainedProcesses(); + for(Iterator calcIter = chainedCalculators.iterator(); + calcIter.hasNext(); ) { + EmissionCalculator emissionCalculator = (EmissionCalculator) calcIter.next(); + emissionCalculator.calculatorExecution(classNameFileWriter, + temporaryFolderPath, executionDB, tableDumpFilePaths, context, + masterSQLForWorker,true); + } + context.resetChainedProcesses(); + } + } + + /** + * Recursively generate a list of chained calculators without duplicates and such that each + * duplicated calculator runs at the latest, not earliest, location it can. Afterwards, + * chainedCalculators is empty. + * @param flatChain set of calculators without duplicates + **/ + void flattenChain(LinkedList flatChain) { + LinkedList callStack = new LinkedList(); + flattenChain(flatChain,callStack); + } + + /** + * Recursively generate a list of chained calculators without duplicates and such that each + * duplicated calculator runs at the latest, not earliest, location it can. Afterwards, + * chainedCalculators is empty. + * @param flatChain set of calculators without duplicates + * @param callStack sequence of calculators leading to the current invocation + * @return false if a circular reference was encountered + **/ + boolean flattenChain(LinkedList flatChain, + LinkedList callStack) { + //System.out.println("flattenChain " + getClass().getName()); + if(chainedCalculators == null || chainedCalculators.size() <= 0) { + //System.out.println("(nothing new for the flat chain)"); + return true; + } + if(callStack.contains(this)) { + // A circular reference has been found. Report it and quit. + Logger.log(LogMessageCategory.ERROR, + "Circular calculator chain found in " + getClass().getSimpleName()); + // Log the chain + Logger.log(LogMessageCategory.INFO,"Chain:"); + for(Iterator i=chainedCalculators.iterator();i.hasNext();) { + Logger.log(LogMessageCategory.INFO,i.next().getClass().getSimpleName()); + } + Logger.log(LogMessageCategory.INFO,getClass().getSimpleName()); + // Log the callstack + Logger.log(LogMessageCategory.INFO,"Callstack:"); + for(Iterator i=callStack.iterator();i.hasNext();) { + Logger.log(LogMessageCategory.INFO,i.next().getClass().getSimpleName()); + } + Logger.log(LogMessageCategory.INFO,getClass().getSimpleName()); + return false; + } + boolean result = true; + callStack.add(this); + for(int pass=0;pass<2;pass++) { + for(Iterator i=chainedCalculators.iterator();i.hasNext();) { + EmissionCalculator c = (EmissionCalculator)i.next(); + // In the first pass, consider only external calculator uses. + // In the second pass, consider only non-external calculator uses. + if(c instanceof EmissionCalculatorExternal) { + if(pass != 0) { + continue; + } + } else { + if(pass == 0) { + continue; + } + } + if(flatChain.contains(c)) { + flatChain.remove(c); + } + flatChain.add(c); + if(!c.flattenChain(flatChain,callStack)) { + result = false; + break; + } + } + } + callStack.remove(this); + return result; + } + + /** + * Builds a SQL statements for a distributed worker to execute. This is called by + * EmissionCalculator.executeLoop. Implementations of this method should contain uncertainty + * logic when UncertaintyParameters specifies that this mode is enabled. + * @param context The MasterLoopContext that applies to this execution. + * @return The resulting SQL lists as an SQLForWorker object. + **/ + public abstract SQLForWorker doExecute(MasterLoopContext context); + + /** + * Default implementation returns false. Subclasses that always use the same SQL can + * override this to return true for performance optimizations. + * @return Should return true if the derived class uses constant sql. + **/ + boolean usesConstantSQL() { + return false; + } + + /** + * Adds the specified calculator to the list of chained calculators. + * @param calculator The EmissionCalculator to add to the list. + **/ + public void chainCalculator(EmissionCalculator calculator) { + InterconnectionTracker.recordChain(calculator,this); + chainedCalculators.add(calculator); + } + + /** + * Detects file names encoded in a specific escape sequence: "####" + * This replaces the escape sequence with the full path on the worker system. + * @param originalLine The original line with potential escape sequences. + * @param temporaryFolderPath Indicates the temporary directory to use. + * @return The resulting line with all escape sequences replaced with full paths. + * @throws IOException If there is a file I/O error. + **/ + public String performFilePathReplacements(String originalLine, + File temporaryFolderPath) throws IOException { + while (true) { + final String escapeText = "##"; + + int firstEscapeTextIndex = originalLine.indexOf(escapeText); + if(firstEscapeTextIndex < 0) { + break; + } + int secondEscapeTextIndex = originalLine.indexOf(escapeText, + firstEscapeTextIndex + escapeText.length()); + if(secondEscapeTextIndex < 0) { + break; + } + + String fileName = originalLine.substring( + firstEscapeTextIndex + escapeText.length(), secondEscapeTextIndex); + fileName = fileName.toLowerCase(); // standardize on lower-case names + currentExportFilePath = new File(temporaryFolderPath, fileName); + // Replace backslashes with forward slashes for mysql + fileName = currentExportFilePath.getCanonicalPath().replace('\\', '/'); + originalLine = originalLine.substring(0, firstEscapeTextIndex) + fileName + + originalLine.substring(secondEscapeTextIndex + escapeText.length()); + } + + return originalLine; + } + + /** + * Utility function to intelligently read large EmissionCalculator-centric SQL + * script files. The script files are divided into sections using SQL comments:
    + * + * + * + * + *
    -- Section Test
    -- SQL code here
    -- End Section Test

    + * The system accepts a set of sections of SQL that should be read from the file and + * otherwise processed (see the enabledSectionNames parameter). Sections may be + * nested within sections and may appear more than once within a script file. This + * allows sections of SQL pertinent to a pollutant to be turned on and off within + * sections that are pertinent to a process.
    + * As it is read, the SQL itself is examined for text replacements such as the + * current year and county.
    + * Once the SQL for the desired sections has been found and had textual replacements + * performed, it is examined and placed into the appropriate parts of the SQLForWorker + * object which is a major internal object of the EmissionCalculator class. + * @param context the current MasterLoopContext that is being handled. From this + * context, several standard text replacements are enabled, each replaced with the + * value of the Java expression of the same text: + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    TextDescription
    ##create.tablename##"CREATE TABLE IF NOT EXISTS tablename..." based on + * MOVESExecution database's schema
    ##context.year##yearID of the context's year
    ##context.monthID##database monthID of the context's month
    ##context.dayID##database dayID of the context's month
    ##context.hourID##database hourID of the context's hour
    ##context.iterLocation.stateRecordID##identifies the current State +
    ##context.iterLocation.countyRecordID##identifies the current County +
    ##context.iterLocation.zoneRecordID##identifies the current Zone
    ##context.iterLocation.linkRecordID##identifies the current Link
    ##context.iterLocation.roadTypeRecordID##identifies the current Road Type + *
    ##context.iterProcess.databaseKey##identifies the current + * EmissionProcess

    + * @param replacements additional textual replacements that should be made to the SQL + * statements in the file. Refer to StringUtilities.doReplacements(...) for more details. + * @param sqlScriptFilePath path and file name of the SQL script to be processed + * @param enabledSectionNames names of sections within the SQL script that should be + * handled. Lines in sections outside of these enabled ones are not processed and + * put into sqlForWorker. + * @param sqlForWorker a SQLforWorker object that should be populated with the SQL + * in the script file + * @return true if the script file was found and parsed. This does not indicate that + * the SQL contained therein is valid in any way. + **/ + public boolean readAndHandleScriptedCalculations(MasterLoopContext context, + TreeMapIgnoreCase replacements,String sqlScriptFilePath, + TreeSetIgnoreCase enabledSectionNames,SQLForWorker sqlForWorker) { + boolean shouldSaveData = ExecutionRunSpec.shouldSaveData(EmissionCalculator.class); + return BundleUtilities.readAndHandleScriptedCalculations(context,replacements, + sqlScriptFilePath,enabledSectionNames, + sqlForWorker,shouldSaveData,getClass().getName()); + } + + /** + * Removes data from the execution database that was created by this object within executeLoop + * for the same context. This is only called after all other loopable objects that might use + * data created by executeLoop have had their executeLoop and cleanDataLoop functions called. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + /** + * Compares to instances of EmissionCalculator to test if they are in fact the same + * object. No deep comparison is done, only a test of the standard Java hash codes. + * This method is provided as a convenience for chained calculators that wish to + * use a Set to maintain a collection of unique EmissionCalculator objects. + * @param o The other EmissionCalculator object to compare to. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object o) { + EmissionCalculator other = (EmissionCalculator)o; + return hashCode() - other.hashCode(); + } + + /** + * Add files to be sent to a worker, especially for use with external + * models such as Nonroad's Fortran-based EXE. + * @param context the current iteration context + * @param executionDB the database the simulation is using + * @param manifest object to be sent to the worker describing the work bundle + * @param temporaryFolderPath location of temporary files for this bundle + * @param tableDumpFilePaths all files to be sent to the worker + **/ + public void addToManifestAndFiles(MasterLoopContext context, + Connection executionDB, BundleManifest manifest, + File temporaryFolderPath, List tableDumpFilePaths) + throws FileNotFoundException { + // Nothing to do here. + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorExternal.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorExternal.java new file mode 100644 index 0000000..bfbbbf6 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorExternal.java @@ -0,0 +1,18 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorExternal.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This interface is implemented by EmissionCalculator objects that reply upon the + * external calculator. + * + * @author Wesley Faler + * @version 2014-12-09 +**/ +public interface EmissionCalculatorExternal { + /** There are no methods required for this interface, its mere presense is sufficient **/ +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundler.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundler.java new file mode 100644 index 0000000..528a330 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundler.java @@ -0,0 +1,242 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorInboundUnbundler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; +import java.util.LinkedList; + +/** + * Unbundles JAR files containing units of work that have been completed by a worker. This thread + * is started by the MOVESEngine just after the Master Loop thread is started. It watches a shared + * folder for distributed work files that have been marked with a status of done. When it finds a + * file, it unbundles the file to a temporary folder and passes control to the OutputProcessor for + * final processing. + * + * @author Wesley Faler + * @version 2010-10-11 +**/ +public class EmissionCalculatorInboundUnbundler extends MOVESThread { + /** Information about the Calculator-level DONE files for a master **/ + public static class MasterDetails { + public BundleManifest fullManifest = null; + public int numberOfDONEFiles = 0; + } + + /** + * Obtain information about the Calculator-level DONE files for a master. + * @param pd specifies the master to be used and the location of potential DONE files + * @return a MasterDetails object with the manifest from the first calculator-level DONE + * file found for the master and a count of the number of calculator-level DONE files + * available. + * @throws IOException if unable to find the file location or to extract details + **/ + public static MasterDetails getDetails(PDSpec.PDSpecEntry pd) throws IOException { + MasterDetails details = new MasterDetails(); + details.fullManifest = new BundleManifest(); + + FilenameFilter doneFilter = DistributedWorkFileName.buildFileNameFilter( + pd.masterID, "*", DistributedWorkFilePurpose.CALCULATOR, DistributedWorkFileState.DONE, "*"); + File[] doneFiles = null; + File pickupFolder = new File(pd.pickupFolderName); + doneFiles = pickupFolder.listFiles(doneFilter); + if(doneFiles != null && doneFiles.length > 0) { + File doneFile = doneFiles[0]; + File temporaryFolder = FileUtilities.createTemporaryFolder(null, "DONEProcessing"); + try { + LinkedList fileList = JARUtilities.unJarFileToFolder(temporaryFolder, doneFile); + details.fullManifest.readFromFolder(temporaryFolder); + details.numberOfDONEFiles = doneFiles.length; + } catch (Exception exception) { + /** + * @explain An error occurred while processing the results (a .DONE file) returned + * by a worker. + **/ + Logger.logError(exception, "Failed to read manifest from DONE file"); + return null; + } finally { + FileUtilities.deleteTemporaryFolder(temporaryFolder); + } + } + return details; + } + + /** + * Obtain information about a Calculator-level DONE files for a master. + * @param pd specifies the master to be used and the location of potential DONE files + * @return a MasterDetails object with the manifest from the first calculator-level DONE + * file found for the master and a count of 1 calculator-level DONE files available. + * @throws IOException if unable to find the file location or to extract details + **/ + public static MasterDetails getDetails(File doneFile) throws IOException { + MasterDetails details = new MasterDetails(); + details.fullManifest = new BundleManifest(); + + File temporaryFolder = FileUtilities.createTemporaryFolder(null, "DONEProcessing"); + try { + LinkedList fileList = JARUtilities.unJarFileToFolder(temporaryFolder, doneFile); + details.fullManifest.readFromFolder(temporaryFolder); + details.numberOfDONEFiles = 1; + } catch (Exception exception) { + /** + * @explain An error occurred while processing the results (a .DONE file) returned + * by a worker. + **/ + Logger.logError(exception, "Failed to read manifest from DONE file"); + return null; + } finally { + FileUtilities.deleteTemporaryFolder(temporaryFolder); + } + + return details; + } + + /** The number of distributed work bundles that have been completely processed. **/ + public int processedWorkBundleCount = 0; + /** The number of iterations that have been completely processed. **/ + public int processedIterationCount = 0; + /** The number of bundles per iteration **/ + int bundlesPerIteration = -1; + /** true when the system should act as if all bundles were present **/ + public boolean shouldFinishImmediately = false; + /** alternate folder to use for locating DONE files **/ + public File pickupFolderOverride = null; + /** alternate ID to use within the distributed processing system. **/ + public String distributedMasterIDOverride = null; + + /** + * Constructor. + **/ + public EmissionCalculatorInboundUnbundler() { + OutputProcessor.getTheOutputProcessor().resetPostProcessors(); + } + + /** + * This performs one-time startup activities prior to threaded operation. + * @return Should the thread continue to run + **/ + protected boolean startupInThread() { + OutputProcessor.getTheOutputProcessor().prepareForEstimateUncertainty(); + return true; + } + + /** This performs one-time shutdown activities after threaded operation. **/ + protected void shutdownInThread() { + + } + + /** + * Watch for completed JAR files in a location specified by SystemConfiguration. When found, + * unbundle the results and pass the data on to OutputProcessor. + * @return Should the thread continue to run + **/ + public boolean threadIterationGo() { + Integer totalBundleCount = + MOVESEngine.theInstance.getHowManyOutboundBundlesWillBeCreated(); + if(totalBundleCount != null) { + if(bundlesPerIteration==-1) { + bundlesPerIteration = totalBundleCount.intValue()/ + ExecutionRunSpec.theExecutionRunSpec.getHowManyIterationsWillBePerformed(); + } + if(processedWorkBundleCount>0) { + if(processedWorkBundleCount>=bundlesPerIteration*(processedIterationCount+1)) { + int eventRecordID = MOVESEngine.logEventStart("Final Post Processing"); + OutputProcessor.getTheOutputProcessor().doFinalPostProcessingOnOutputDatabase(); + OutputProcessor.getTheOutputProcessor().performEstimateUncertainty(); + MOVESEngine.logEventStop(eventRecordID); + processedIterationCount++; + } + } + if(processedWorkBundleCount >= totalBundleCount.intValue()) { + OutputProcessor.getTheOutputProcessor().cleanUpAfterEstimateUncertainty(); + OutputProcessor.getTheOutputProcessor().saveCMITs(); + // All work bundles have been processed. This thread is complete. + Logger.log(LogMessageCategory.INFO,"Unbundler has detected completion conditions. Exiting."); + if(distributedMasterIDOverride == null) { + Logger.log(LogMessageCategory.INFO,"Generated bundles = " + totalBundleCount.intValue() + + " Retrieved bundles = " + processedWorkBundleCount); + } else { + Logger.log(LogMessageCategory.INFO," Retrieved bundles = " + processedWorkBundleCount + + " of " + totalBundleCount.intValue()); + } + return false; + } + } + + if(shouldFinishImmediately) { + MOVESEngine.theInstance.onReceivedBundle(); + processedWorkBundleCount++; + MOVESEngine.theInstance.onProcessedBundle(); + return true; + } + + // Scan for DONE files, only grabbing CALCULATOR DONE files if picking up DONE files for other masters. + FilenameFilter doneFilter = DistributedWorkFileName.buildFileNameFilter( + (distributedMasterIDOverride != null && distributedMasterIDOverride.length() > 0)? distributedMasterIDOverride : SystemConfiguration.getTheSystemConfiguration().distributedMasterID, + "*", pickupFolderOverride==null? null : DistributedWorkFilePurpose.CALCULATOR, DistributedWorkFileState.DONE, "*"); + File[] doneFiles = null; + if(pickupFolderOverride != null) { + doneFiles = pickupFolderOverride.listFiles(doneFilter); + } else { + doneFiles = SystemConfiguration.getTheSystemConfiguration().sharedDistributedFolderPath.listFiles(doneFilter); + } + if(doneFiles != null) { + for (int i = 0; i < doneFiles.length; i++) { + File doneFile = doneFiles[i]; + File temporaryFolder = FileUtilities.createTemporaryFolder(null, "DONEProcessing"); + try { + DistributedWorkFileName workFileName = DistributedWorkFileName.createFrom(doneFile.getName()); + boolean isCalculatorBundle = workFileName.purpose == DistributedWorkFilePurpose.CALCULATOR; + + if(isCalculatorBundle) { + MOVESEngine.theInstance.onReceivedBundle(); + } + LinkedList fileList = JARUtilities.unJarFileToFolder(temporaryFolder, doneFile); + int eventRecordID = MOVESEngine.logEventStart("Process File From Worker"); + OutputProcessor.getTheOutputProcessor().processWorkerFiles(temporaryFolder, fileList); + if(isCalculatorBundle) { + processedWorkBundleCount++; + } + doneFile.delete(); + MOVESEngine.logEventStop(eventRecordID); + if(isCalculatorBundle) { + MOVESEngine.theInstance.onProcessedBundle(); + } else if(pickupFolderOverride == null) { + BundleManifest manifest = new BundleManifest(); + if(manifest.containsManifest(temporaryFolder) && manifest.readFromFolder(temporaryFolder)) { + MasterLoopContext context = new MasterLoopContext(); + context.fromBundleManifestContext(manifest.context); + MOVESEngine.theInstance.loop.nonCalculatorBundleReceived(context); + } + } + } catch (Exception exception) { + /** + * @explain An error occurred while processing the results (a .DONE file) returned + * by a worker. + **/ + Logger.logError(exception, "Failed to process DONE file"); + } finally { + MOVESEngine.theInstance.notifyListeners(); + FileUtilities.deleteTemporaryFolder(temporaryFolder); + } + } + } + + return true; + } + + /** + * Called directly after threadIterationGo. Subclasses typically implement a simple sleep + * operation here. + * @throws InterruptedException This is typically thrown when a sleep() call is interrupted. + **/ + protected void threadIterationWait() throws InterruptedException { + sleep(shouldFinishImmediately?100:2000); + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundlerTest.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundlerTest.java new file mode 100644 index 0000000..7d9659d --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorInboundUnbundlerTest.java @@ -0,0 +1,63 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorInboundUnbundlerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.File; +import junit.framework.*; + +/** + * Test Case for the EmissionCalculatorInboundUnbundler class + * + * @author Cimulus + * @version 2003-09-24 +**/ +public class EmissionCalculatorInboundUnbundlerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EmissionCalculatorInboundUnbundlerTest(String name) { + super(name); + } + + /** + * Implements test case(s) + * @throws Exception If any error occurred during the test. + **/ + public void testUnbundler() throws Exception { + ExecutionRunSpecTest.setupExecutionRunSpec(); + + File testJarFilePath = new File("testdata/Done.jar"); + assertTrue("Test file isn't available.", testJarFilePath.isFile()); + + DistributedWorkFileName workFileName = new DistributedWorkFileName(); + workFileName.mid = SystemConfiguration.getTheSystemConfiguration().distributedMasterID; + workFileName.qid = "999"; + workFileName.state = DistributedWorkFileState.DONE; + + File doneFilePath = new File( + SystemConfiguration.getTheSystemConfiguration().sharedDistributedFolderPath, + workFileName.toString()); + assertTrue("DONE file already exists", !doneFilePath.exists()); + + FileUtilities.copyFile(testJarFilePath, doneFilePath, true); + try { + MOVESEngine.theInstance = new MOVESEngine(); + MOVESEngine.theInstance.bundler = new EmissionCalculatorOutboundBundler(); + MOVESEngine.theInstance.bundler.totalBundleCount = 1; + EmissionCalculatorInboundUnbundler unbundler = new EmissionCalculatorInboundUnbundler(); + MOVESEngine.theInstance.unbundler = unbundler; + + unbundler.threadIterationGo(); + + assertTrue("Done file wasn't consumed", !doneFilePath.isFile()); + } finally { + doneFilePath.delete(); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundler.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundler.java new file mode 100644 index 0000000..fba3202 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundler.java @@ -0,0 +1,196 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorOutboundBundler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.File; +import java.util.LinkedList; + +/** + * Bundles a unit of work to be processed by a worker into a JAR file. A unit of work consists of + * several files including exported data files, SQL scripts, and potentially Java class files. The + * files are created by an EmissionCalculator and stored in a temporary folder. The + * EmissionCalculatorOutboundBundler bundles these files into a single JAR file with a unique work + * file name. This JAR file is stored in a shared location that the distributed worker systems are + * watching. + * + * @author Wesley Faler + * @version 2010-10-17 +**/ +public class EmissionCalculatorOutboundBundler { + /** + * The queue ID assigned to the generated distributed work items. This simply needs to + * uniquely identify a distributed work item. Note that in order for the distributed work file + * name to be unique, there can be only one EmissionCalculatorOutboundBundler for each Master. + **/ + int queueID = 0; + + /** The current count of how many work bundle files this objects has created. **/ + int totalBundleCount = 0; + + /** + * Helper function to return the next queue ID. + * @return The next queue ID as String. + **/ + public String getNextQueueID() { + return new Integer(getNextQueueIDCore()).toString(); + } + + /** + * Helper function to return the next queue ID. + * @return The next queue ID as String. + **/ + public synchronized int getNextQueueIDCore() { + queueID++; + return queueID; + } + + /** + * Default constructor + **/ + public EmissionCalculatorOutboundBundler() { + } + + /** + * Takes the given list of files, bundles them into a JAR file and places the file in the + * shared path where the distributed worker systems will find it. This shared path is + * specified by SystemConfiguration. + * @param filePaths A list of File objects that specify which files need to be bundled. + **/ + public void bundleData(LinkedList filePaths) { + bundleData(filePaths,DistributedWorkFilePurpose.CALCULATOR,null); + } + + /** + * Takes the given list of files, bundles them into a JAR file and places the file in the + * shared path where the distributed worker systems will find it. This shared path is + * specified by SystemConfiguration. + * @param filePaths A list of File objects that specify which files need to be bundled. + * @param queueID bundle number, optional, may be null + **/ + public void bundleData(LinkedList filePaths, String queueID) { + bundleData(filePaths,DistributedWorkFilePurpose.CALCULATOR,queueID); + } + + /** + * Takes the given list of files, bundles them into a JAR file and places the file in the + * shared path where the distributed worker systems will find it. This shared path is + * specified by SystemConfiguration. + * @param filePaths A list of File objects that specify which files need to be bundled. + * @param purpose the payload type for the bundle + **/ + public void bundleData(LinkedList filePaths, DistributedWorkFilePurpose purpose) { + bundleData(filePaths,purpose,null); + } + + /** + * Takes the given list of files, bundles them into a JAR file and places the file in the + * shared path where the distributed worker systems will find it. This shared path is + * specified by SystemConfiguration. + * @param filePaths A list of File objects that specify which files need to be bundled. + * @param purpose the payload type for the bundle + * @param queueID bundle number, optional, may be null + **/ + public void bundleData(LinkedList filePaths, DistributedWorkFilePurpose purpose, + String queueID) { + if(purpose == null) { + purpose = DistributedWorkFilePurpose.CALCULATOR; + } + try { + if(queueID == null) { + queueID = getNextQueueID(); + } + + // Get the destination JAR filename + DistributedWorkFileName workFileName = new DistributedWorkFileName(); + workFileName.mid = SystemConfiguration.getTheSystemConfiguration().distributedMasterID; + workFileName.qid = queueID; + workFileName.purpose = purpose; + workFileName.state = DistributedWorkFileState.TEMP; + workFileName.wid = ""; + + // Create the JAR in the shared work path + File sharedWorkFilePath = new File( + SystemConfiguration.getTheSystemConfiguration().sharedDistributedFolderPath, + workFileName.toString()); + JARUtilities.jarFiles(sharedWorkFilePath, filePaths); + if(SystemConfiguration.getTheSystemConfiguration().saveTODOPath != null) { + if(!SystemConfiguration.getTheSystemConfiguration().saveTODOPath.exists()) { + SystemConfiguration.getTheSystemConfiguration().saveTODOPath.mkdirs(); + } + if(SystemConfiguration.getTheSystemConfiguration().saveTODOPath.exists()) { + File saveTemp = new File(SystemConfiguration.getTheSystemConfiguration().saveTODOPath,sharedWorkFilePath.getName()); + FileUtilities.copyFile(sharedWorkFilePath,saveTemp,true); + if(saveTemp.exists()) { + File todoSave = DistributedWorkFileName.alterFilePathState(saveTemp, + DistributedWorkFileState.TODO); + if(saveTemp.renameTo(todoSave)) { + Logger.log(LogMessageCategory.INFO,"Saved bundle file " + todoSave.getName()); + } else { + /** + * @issue Failed to rename saved file [*] + * @explain An error was encountered while attempting to preserve a bundle file. + **/ + Logger.log(LogMessageCategory.ERROR, "Failed to rename saved file " + saveTemp.getName()); + } + } else { + /** + * @issue Failed to save file [*] + * @explain An error was encountered while attempting to preserve a bundle file. + **/ + Logger.log(LogMessageCategory.ERROR, "Failed to save file " + saveTemp.getName()); + } + } + } + File todoWorkFilePath = DistributedWorkFileName.alterFilePathState(sharedWorkFilePath, + DistributedWorkFileState.TODO); + boolean didRename = false; + for(int renameCount=0;renameCount<5;renameCount++) { + FileUtilities.deleteFileWithRetry(todoWorkFilePath); + if(FileUtilities.renameFileWithRetry(sharedWorkFilePath,todoWorkFilePath)) { + didRename = true; + break; + } else { + try { + Thread.sleep(1000); + } catch(InterruptedException e) { + break; + } + } + } + if(didRename) { + if(!MOVESEngine.theInstance.isTODOOnly) { + //todoWorkFilePath.deleteOnExit(); + } + } else { + sharedWorkFilePath.deleteOnExit(); + /** + * @issue Failed to rename [*] to [*] + * @explain While creating a JAR file to be sent to the workers, an intermediate + * file could not be given its final name. Ensure no programs are accessing the + * temporary files as they are being created. + **/ + Logger.log(LogMessageCategory.ERROR + , "Failed to rename " + sharedWorkFilePath.getCanonicalPath() + + " to " + todoWorkFilePath.getCanonicalPath()); + } + + Logger.log(LogMessageCategory.INFO, "Created bundle " + queueID + " for workers to process"); + synchronized (this) { + totalBundleCount++; + MOVESEngine.theInstance.onGeneratedBundle(); + } + } catch(Exception e) { + /** + * @explain An error occurred while creating a JAR file to be sent to the workers. + * These are compressed files containing SQL, data, and control files. Check for + * available drive space. + **/ + Logger.logError(e,"Unable to JAR the worker input files."); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundlerTest.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundlerTest.java new file mode 100644 index 0000000..de52da1 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorOutboundBundlerTest.java @@ -0,0 +1,50 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorOutboundBundlerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import java.util.*; +import junit.framework.*; + +/** + * Test Case for the EmissionCalculatorOutboundBundler class + * + * @author Wesley Faler + * @version 2009-03-30 +**/ +public class EmissionCalculatorOutboundBundlerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EmissionCalculatorOutboundBundlerTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testCase() { + // Get the current count of TODO files in the shared path + FilenameFilter todoFilter = DistributedWorkFileName.buildFileNameFilter + ("*", "*", DistributedWorkFileState.TODO, "*"); + File[] fileArray = SystemConfiguration.getTheSystemConfiguration() + .sharedDistributedFolderPath.listFiles(todoFilter); + assertNotNull(fileArray); + int originalCount = fileArray.length; + LinkedList testFiles = new LinkedList(); + testFiles.add(new File("testdata/comparetextfiles1.txt")); + testFiles.add(new File("testdata/comparetextfiles2.txt")); + testFiles.add(new File("testdata/comparetextfiles3.txt")); + testFiles.add(new File("testdata/comparetextfiles4.txt")); + EmissionCalculatorOutboundBundler bundler = new EmissionCalculatorOutboundBundler(); + bundler.bundleData(testFiles); + // Verify that a new TODO has been created in the shared path + fileArray = SystemConfiguration.getTheSystemConfiguration() + .sharedDistributedFolderPath.listFiles(todoFilter); + assertTrue(fileArray.length == (originalCount + 1)); + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistration.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistration.java new file mode 100644 index 0000000..cd489ad --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistration.java @@ -0,0 +1,184 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorRegistration.java + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; + +/** + * An instance of this class represents a single registration of an EmissionCalculator object + * for an EmissionProcess/Pollutant combination. This class has static functionality that provides + * registration and find functionality. This is designed to facilitate EmissionCalculator chaining + * (see Overview for more details). + * + * @author Wesley Faler + * @author M. Cumberworth (bug fix in register method) + * @version 2013-11-27 +**/ +public class EmissionCalculatorRegistration implements Comparable { + /** The set of EmissionCalculatorRegistration objects. **/ + static TreeSet registeredCalculators + = new TreeSet(); + + /** The Pollutant that the registration is for **/ + public Pollutant pollutant; + /** The EmissionProcess that the registration is for **/ + public EmissionProcess process; + /** The EmissionCalculator that the registration is for **/ + public EmissionCalculator emissionCalculator; + + /** + * Clear the calculator registrations. This should be done before instantiating + * any EmissionCalculator-derived objects. + **/ + public static void reset() { + registeredCalculators.clear(); + } + + /** + * This will typically be called by concrete EmissionCalculator sub-classes in their + * constructors. + * @param targetPollutant The pollutant being registered for. + * @param targetProcess The EmissionProcess being registered for. + * @param targetCalculator The EmissionCalculator being registered. + **/ + public static void register(Pollutant targetPollutant, EmissionProcess targetProcess, + EmissionCalculator targetCalculator) { + if((targetPollutant != null) && (targetProcess != null)) { + EmissionCalculatorRegistration r = new EmissionCalculatorRegistration(); + r.pollutant = targetPollutant; + r.process = targetProcess; + r.emissionCalculator = targetCalculator; + registeredCalculators.add(r); + InterconnectionTracker.recordRegistration(r); + } + } + + /** + * Finds all EmissionCalculators that are registered for the specific Polluant/EmissionProcess + * combination. Returns a LinkedList of EmissionCalculator objects. This is typically called + * by other EmissionCalculator objects in their subscribeToMe methods for chaining purposes. + * @param targetPollutant The pollutant to search for EmissionCalculator's for. + * May not be null. + * @param targetProcess The emission process to search for EmissionCalculator's for. + * May not be null. + * @return A LinkedList of EmissionCalculator objects and is never null even if no + * matching calculators were found. + **/ + public static LinkedList find(Pollutant targetPollutant, + EmissionProcess targetProcess) { + LinkedList results = new LinkedList(); + if(targetProcess == null) { + return results; + } + for(Iterator i=registeredCalculators.iterator(); + i.hasNext();) { + EmissionCalculatorRegistration r = i.next(); + if(targetPollutant == r.pollutant + && (targetProcess == null || targetProcess == r.process)) { + results.add(r.emissionCalculator); + } + } + return results; + } + + /** + * Finds all EmissionCalculators that are registered for a specific Polluant + * Returns a LinkedList of EmissionCalculator objects. This is typically called + * by other EmissionCalculator objects in their subscribeToMe methods for chaining purposes. + * @param targetPollutant The pollutant to search for EmissionCalculator's for. + * May not be null. + * @return A LinkedList of EmissionCalculator objects and is never null even if no + * matching calculators were found. + **/ + public static LinkedList findPollutant(Pollutant targetPollutant) { + LinkedList results = new LinkedList(); + for(Iterator i=registeredCalculators.iterator(); + i.hasNext();) { + EmissionCalculatorRegistration r = i.next(); + if(targetPollutant == r.pollutant) { + results.add(r.emissionCalculator); + } + } + return results; + } + + /** + * Finds all EmissionCalculators that are registered for the specific Polluant but + * not for the specified EmissionProcess. This is useful when finding all calculators + * except those that produce Well-To-Pump emissions. + * Returns a LinkedList of EmissionCalculator objects. This is typically called + * by other EmissionCalculator objects in their subscribeToMe methods for chaining purposes. + * @param targetPollutant The pollutant to search for EmissionCalculator's for. + * May not be null. + * @param excludedProcess The emission process to search for EmissionCalculator's for. + * May be null, implying all processes match. + * @return A LinkedList of EmissionCalculator objects and is never null even if no + * matching calculators were found. + **/ + public static LinkedList findNotInProcess(Pollutant targetPollutant, + EmissionProcess excludedProcess) { + LinkedList results = new LinkedList(); + if(targetPollutant == null) { + return results; + } + + for(Iterator i=registeredCalculators.iterator(); + i.hasNext();) { + EmissionCalculatorRegistration r = i.next(); + if(targetPollutant == r.pollutant && (excludedProcess == null || excludedProcess != r.process)) { + results.add(r.emissionCalculator); + } + } + return results; + } + + /** + * Add a list of calculators to an existing set, taking care not to add duplicates. + * @param destinationSet list to be filled without duplicates + * @param sourceCalculators list of calculators, typically returned by one of the find routines + **/ + public static void merge(LinkedList destinationSet, + LinkedList sourceCalculators) { + if(destinationSet == null || sourceCalculators == null) { + return; + } + for(Iterator i=sourceCalculators.iterator();i.hasNext();) { + EmissionCalculator c = i.next(); + if(!destinationSet.contains(c)) { + destinationSet.add(c); + } + } + } + + /** + * Default constructor + **/ + public EmissionCalculatorRegistration() { + } + + /** + * This compares two EmissionCalculatorRegistration objects. This provides a consistent + * arbitrary ordering. + * + * @param o The Object to be compared. + * @return a negative integer, zero, or a positive integer as this object is less than, + * equal to, or greater than the specified object. + **/ + public int compareTo(Object o) { + EmissionCalculatorRegistration other = (EmissionCalculatorRegistration)o; + if(pollutant != other.pollutant) { + return pollutant.compareTo(other.pollutant); + } + if(process != other.process) { + return process.compareTo(other.process); + } + if(emissionCalculator != other.emissionCalculator) { + return emissionCalculator.hashCode() - other.emissionCalculator.hashCode(); + } + + return 0; + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistrationTest.java b/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistrationTest.java new file mode 100644 index 0000000..aac4896 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionCalculatorRegistrationTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)EmissionCalculatorRegistrationTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the EmissionCalculatorRegistration class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class EmissionCalculatorRegistrationTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EmissionCalculatorRegistrationTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionProcess.java b/gov/epa/otaq/moves/master/framework/EmissionProcess.java new file mode 100644 index 0000000..09fc84a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionProcess.java @@ -0,0 +1,173 @@ +/************************************************************************************************** + * @(#)EmissionProcess.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.Iterator; +import java.util.TreeSet; + +/** + * An Emission Process such as "Running Exhaust," "Start Exhaust," and "Extended Idle Exhaust". + * There is exactly one EmissionProcess object created for each Emission Process entry in the + * database. All references to an EmissionProcess object refer to this one instance. The static + * methods findByName(), findByID(), or getAllEmissionProcesses() are used to return a reference + * to a specific instance. + * + * @author Wesley Faler + * @version 2012-11-08 +**/ +public class EmissionProcess implements Comparable { + /** This is a set of all active EmissionProcess objects. **/ + static TreeSet allProcesses = new TreeSet(); + + /** + * Primary Key value used to indicate the exact database record that this object relates to. + **/ + public int databaseKey; + + /** The displayable name for the process **/ + public String processName; + + /** true if the process requires real roads, not just road types **/ + public boolean occursOnRealRoads = false; + + /** + * Pollutant objects that are associated with this process as defined in the + * PollutantProcessAssoc table. + **/ + public TreeSet associatedPollutants = new TreeSet(); + + /** True when OnRoad can calculate this pollutant **/ + public boolean isAffectedByOnroad; + + /** True when NonRoad can calculate this pollutant **/ + public boolean isAffectedByNonroad; + + /** + * Gets the EmissionProcess matching the specified name or textual ID. + * @param processName The name to search for. + * @return Returns the matching EmissionProcess, or null if not found. + **/ + public static EmissionProcess findByName(String processName) { + if(processName != null) { + for(Iterator iterProcess = allProcesses.iterator(); + iterProcess.hasNext();) { + EmissionProcess process = (EmissionProcess)iterProcess.next(); + if(process.processName.compareToIgnoreCase(processName) == 0 + || processName.equals(""+process.databaseKey)) { + return process; + } + } + } + return null; + } + + /** + * Gets the EmissionProcess matching the specified ID. + * @param processID The ID to search for. + * @return Returns the matching EmissionProcess, or null if not found. + **/ + public static EmissionProcess findByID(int processID) { + for(Iterator iterProcess = allProcesses.iterator(); + iterProcess.hasNext();) { + EmissionProcess process = (EmissionProcess)iterProcess.next(); + if(process.databaseKey == processID) { + return process; + } + } + return null; + } + + /** + * Gets an array of all loaded EmissionProcess objects. + * @return an array of EmissionProcess objects + **/ + public static Object[] getAllEmissionProcesses() { + return allProcesses.toArray(); + } + + /** + * Gets an array of all loaded EmissionProcess objects that match + * the required occursOnRealRoads value. + * @param occursOnRealRoads criteria to match against + * @return an array of EmissionProcess objects + **/ + public static Object[] getAllEmissionProcesses(boolean occursOnRealRoads) { + TreeSet matches = new TreeSet(); + for(Iterator i=allProcesses.iterator();i.hasNext();) { + EmissionProcess p = (EmissionProcess)i.next(); + if(p.occursOnRealRoads == occursOnRealRoads) { + matches.add(p); + } + } + return matches.toArray(); + } + + /** + * Clears the static list of Pollutant objects. + **/ + public static void clearAll() { + allProcesses.clear(); + } + + /** + * Default constructor + * @param key Sets databaseKey. + * @param name Sets processName. + * @param useRealRoads Sets occursOnRealRoads. Pass "Y" for true. + * @param isAffectedByOnroad True when OnRoad can calculate this pollutant + * @param isAffectedByNonroad True when NonRoad can calculate this pollutant + **/ + public EmissionProcess(int key, String name, String useRealRoads, + boolean isAffectedByOnroad, boolean isAffectedByNonroad) { + processName = name; + databaseKey = key; + occursOnRealRoads = useRealRoads != null && useRealRoads.equals("Y"); + this.isAffectedByOnroad = isAffectedByOnroad; + this.isAffectedByNonroad = isAffectedByNonroad; + if(!allProcesses.contains(this)) { + allProcesses.add(this); + } + } + + /** + * Comparable Interface Implementation. Used to order EmissionProcess objects for display. This + * method should never return 0 (equal) unless the objects compared are the same object. + * @param otherObject Another EmissionProcess object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object otherObject) { +/* if(processName == null) { + return -1; + } + EmissionProcess other = (EmissionProcess)otherObject; + if(other == null) { + return 1; + } + if(other.processName == null) { + return 1; + } + return processName.compareToIgnoreCase(other.processName); +*/ + EmissionProcess other = (EmissionProcess)otherObject; + if(databaseKey < other.databaseKey) { + return -1; + } else if (databaseKey > other.databaseKey) { + return 1; + } else { + return 0; + } + } + + /** + * Gets a textual representation of the object + * @return the process name + **/ + public String toString() { + return processName; + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionProcessTest.java b/gov/epa/otaq/moves/master/framework/EmissionProcessTest.java new file mode 100644 index 0000000..6919297 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionProcessTest.java @@ -0,0 +1,50 @@ +/************************************************************************************************** + * @(#)EmissionProcessTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the EmissionProcess class + * + * @author Wesley Faler + * @version 2012-11-08 +**/ +public class EmissionProcessTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EmissionProcessTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testProcess() { + int processInstanceCount = EmissionProcess.allProcesses.size(); + EmissionProcess p1 = new EmissionProcess(3001, "p1", "Y", true, true); + assertTrue(EmissionProcess.allProcesses.size() == processInstanceCount + 1); + processInstanceCount = EmissionProcess.allProcesses.size(); + EmissionProcess p2 = new EmissionProcess(3002, "p2", "Y", true, true); + assertTrue(EmissionProcess.allProcesses.size() == processInstanceCount + 1); + processInstanceCount = EmissionProcess.allProcesses.size(); + EmissionProcess p3 = new EmissionProcess(3003, "p3", "Y", true, true); + assertTrue(EmissionProcess.allProcesses.size() == processInstanceCount + 1); + + EmissionProcess firstTestProcess = EmissionProcess.findByName("this doesn't exist"); + assertNull(firstTestProcess); + firstTestProcess = EmissionProcess.findByName("p2"); + assertNotNull(firstTestProcess); + + EmissionProcess secondTestProcess = EmissionProcess.findByName("p3"); + assertTrue(firstTestProcess != secondTestProcess); + assertTrue(firstTestProcess.compareTo(secondTestProcess) != 0); + secondTestProcess = EmissionProcess.findByName("p2"); + assertTrue(firstTestProcess == secondTestProcess); + assertTrue(firstTestProcess.compareTo(secondTestProcess) == 0); + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionRatePreSelector.java b/gov/epa/otaq/moves/master/framework/EmissionRatePreSelector.java new file mode 100644 index 0000000..4ded12f --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionRatePreSelector.java @@ -0,0 +1,33 @@ +/************************************************************************************************** + * @(#)EmissionRatePreSelector.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.util.LinkedList; + +/** + * Prune EERDB using RunSpec parameters into temporary data store. + * EERDB is the Execution Emission Rate Database explained in TotalActivityGenerator + * + * @author Cimulus + * @version 2004-03-03 +**/ +public class EmissionRatePreSelector { + /** + * Default constructor + **/ + public EmissionRatePreSelector() { + } + + /** + * Prunes EERDB data according to parameters specified in an ExecutionRunSpec object and stores + * the resulting data in the specified file. + * @param filePath The destination file name and path. + **/ + public void pruneEERDB(String filePath) { + } +} diff --git a/gov/epa/otaq/moves/master/framework/EmissionRatePreSelectorTest.java b/gov/epa/otaq/moves/master/framework/EmissionRatePreSelectorTest.java new file mode 100644 index 0000000..4676c84 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/EmissionRatePreSelectorTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)EmissionRatePreSelectorTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the EmissionRatePreSelector class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class EmissionRatePreSelectorTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public EmissionRatePreSelectorTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/ExecutionLocation.java b/gov/epa/otaq/moves/master/framework/ExecutionLocation.java new file mode 100644 index 0000000..a1dfc87 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ExecutionLocation.java @@ -0,0 +1,88 @@ +/************************************************************************************************** + * @(#)ExecutionLocation.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * One of the locations for which the Master Loop is executed. Each Geographic Selection in the + * RunSpec translates to many Link "selections" that the Master Loop is executed for. This class + * identifies one of these selections. It maps directly to a Link record in the database and is + * created by the ExecutionLocationProducer just prior to executing a simulation run. + * + * @author Cimulus + * @version 2004-01-14 +**/ +public class ExecutionLocation implements Comparable { + /** The primary key value used to identify the represented road type record in the database **/ + public int roadTypeRecordID; + + /** The primary key value used to identify the represented Link record in the database. **/ + public int linkRecordID; + + /** + * The primary key value used to identify the Zone record in the database that owns + * the link. + **/ + public int zoneRecordID; + + /** + * The primary key value used to identify the County record in the database that owns + * the Zone. + **/ + public int countyRecordID; + + /** + * The primary key value used to identify the State record in the database that owns + * the County. + **/ + public int stateRecordID; + + /** + * Default constructor + **/ + public ExecutionLocation() { + } + + /** + * Returns a String representation of this object. Added for debugging. + * @return The String representation. + **/ + public String toString() { + return roadTypeRecordID+" - "+linkRecordID+" - "+zoneRecordID + +" - "+countyRecordID+" - "+stateRecordID; + } + + /** + * This compares two ExecutionLocation objects. This provides a consistent ordering with + * the following sort priority: + * 1) State + * 2) County + * 3) Zone + * 4) Link + * 5) Road Type + * + * At each level the ordering is arbitrary but consistent. + * + * @param object The Object to be compared. + * @return A signed integer where the sign (-, +, 0) indicates the relation between the objects. + **/ + public int compareTo(Object object) { + ExecutionLocation other = (ExecutionLocation)object; + if(stateRecordID != other.stateRecordID) { + return stateRecordID - other.stateRecordID; + } + if(countyRecordID != other.countyRecordID) { + return countyRecordID - other.countyRecordID; + } + if(zoneRecordID != other.zoneRecordID) { + return zoneRecordID - other.zoneRecordID; + } + if(linkRecordID != other.linkRecordID) { + return linkRecordID - other.linkRecordID; + } + return roadTypeRecordID - other.roadTypeRecordID; + } +} diff --git a/gov/epa/otaq/moves/master/framework/ExecutionLocationProducer.java b/gov/epa/otaq/moves/master/framework/ExecutionLocationProducer.java new file mode 100644 index 0000000..ef41c44 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ExecutionLocationProducer.java @@ -0,0 +1,365 @@ +/************************************************************************************************** + * @(#)ExecutionLocationProducer.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.Iterator; +import java.util.TreeSet; +import gov.epa.otaq.moves.master.runspec.*; +import java.sql.*; +import gov.epa.otaq.moves.common.*; + +/** + * Produces a list of ExecutionLocations from the GeographicSelections in the RunSpec. Each + * GeographicSelection identifies many individual locations over which the MasterLoop is executed. + * The ExecutionLocationProducer uses information from the GeographicSelections to construct SQL + * queries on the Link table. These queries return the individual link records that the + * list of ExecutionLocations is constructed from. + * + * @author Wesley Faler + * @version 2013-09-30 +**/ +public class ExecutionLocationProducer { + /** + * The collection of GeographicSelection objects to create the ExecutionLocation objects from + **/ + TreeSet geographicSelections; + /** + * The collection of RoadType objects that are used to filter the links + * retrieved from the database. May be null or empty to denote no restrictions. + **/ + TreeSet roadTypes; + /** + * SQL for appending to a WHERE clause that would limit the values of the roadType column. + * Of the format " AND (roadTypeID=1 OR roadTypeID=2)" so that it can be directly appended + * to SQL that already has a WHERE clause and an unambiguous column named "roadTypeID". + **/ + String roadTypesSQL; + /** Temporary connection to the default database. **/ + Connection db; + + /** ExecutionLocation objects to be looped over by MasterLoop **/ + TreeSet results; + + /** RunSpec providing the source for the locations **/ + RunSpec runSpec; + + /** True when the Nonroad road type is present. **/ + boolean hasNonroad = false; + /** True when any Non-Nonroad road type is present. **/ + boolean hasOnroad = false; + + /** + * Constructor. + * @param runSpecToUse RunSpec providing the source for the locations. + **/ + public ExecutionLocationProducer(RunSpec runSpecToUse) { + runSpec = runSpecToUse; + geographicSelections = runSpec.geographicSelections; + roadTypes = ExecutionRunSpec.theExecutionRunSpec.getRoadTypes(); + results = new TreeSet(); + db = null; + buildRoadTypesSQL(); + } + + /** + * Builds part of the SQL WHERE clause that limits the links returned to those matching the + * roadTypes selected in the runSpec. + **/ + void buildRoadTypesSQL() { + roadTypesSQL = new String(""); + if(roadTypes != null) { + boolean hasText = false; + for(Iterator i = roadTypes.iterator(); i.hasNext();) { + RoadType roadType = (RoadType)i.next(); + if(roadType.roadTypeID == 100) { + hasNonroad = true; + continue; + } else { + hasOnroad = true; + } + if(hasText) { + roadTypesSQL += " OR "; + } + hasText = true; + roadTypesSQL += "roadTypeID=" + roadType.roadTypeID; + } + if(hasText) { + roadTypesSQL = " AND (" + roadTypesSQL + ")"; + } + } + } + + /** + * Builds ExecutionLocation objects from the previously specified GeographicSelection objects + * and RoadType objects. + * @param targetDB The database to build the execution locations from. + * @throws InterruptedException If the active thread is interrupted. + * @return The collection of ExecutionLocation objects. + **/ + public TreeSet buildExecutionLocations(Connection targetDB) + throws InterruptedException { + if(runSpec.isCustomDomain()) { + db = targetDB; + try { + int countyID = runSpec.genericCounty.getCountyID(); + addCountyLocations(countyID); + } finally { + db = null; + } + /* + if(runSpec.scale == ModelScale.MESOSCALE_LOOKUP || runSpec.domain == ModelDomain.PROJECT) { + db = targetDB; + try { + int countyID = runSpec.genericCounty.getCountyID(); + addZoneLocations(countyID*10); + } finally { + db = null; + } + } else { + for(Iterator i = roadTypes.iterator(); i.hasNext();) { + RoadType roadType = (RoadType)i.next(); + int countyID = runSpec.genericCounty.getCountyID(); + addLinkLocation(runSpec.genericCounty.stateID,countyID,countyID*10, + countyID*100+roadType.roadTypeID,roadType.roadTypeID); + } + } + */ + } else { + db = targetDB; + try { + for(Iterator i = geographicSelections.iterator(); + i.hasNext();) { + GeographicSelection iterSelection = (GeographicSelection) i.next(); + buildExecutionLocations(iterSelection); + } + } finally { + db = null; + } + } + return results; + } + + /** + * Builds ExecutionLocations based on the scale of the GeographicSelection. + * @param sourceSelection The GeographicSelection objects to create the ExecutionLocation + * objects from. + **/ + void buildExecutionLocations(GeographicSelection sourceSelection) { + if(sourceSelection.type == GeographicSelectionType.LINK) { + addLinkLocations(sourceSelection.databaseKey); + } else if(sourceSelection.type == GeographicSelectionType.ZONE) { + addZoneLocations(sourceSelection.databaseKey); + } else if(sourceSelection.type == GeographicSelectionType.COUNTY) { + addCountyLocations(sourceSelection.databaseKey); + } else if(sourceSelection.type == GeographicSelectionType.STATE) { + addStateLocations(sourceSelection.databaseKey); + } else if(sourceSelection.type == GeographicSelectionType.NATION) { + addNationLocations(); + } + } + + /** + * Creates and adds an ExecutionLocation to the list. + * @param stateID The State ID to use. + * @param countyID The County ID to use. + * @param zoneID The Zone ID to use. + * @param linkID The Link ID to use. + * @param roadTypeID The Road Type ID to use. + **/ + void addLinkLocation(int stateID, int countyID, int zoneID, int linkID, int roadTypeID) { + //System.out.println("addLinkLocations: s=" + stateID + ", c=" + countyID + ", z=" + zoneID + ", l=" + linkID + ", r=" + roadTypeID); + ExecutionLocation location = new ExecutionLocation(); + location.stateRecordID = stateID; + location.countyRecordID = countyID; + location.zoneRecordID = zoneID; + location.linkRecordID = linkID; + location.roadTypeRecordID = roadTypeID; + results.add(location); + } + + /** + * Prepares an SQL statement to return the locations for a given link. + * @param linkID The Link ID to use + **/ + void addLinkLocations(int linkID) { + String sql = ""; + PreparedStatement statement = null; + try { + if(hasOnroad) { + sql = "SELECT County.stateID,County.countyID,Link.zoneID,Link.linkID,Link.roadTypeID " + + " FROM County, Link" + + " WHERE Link.linkID = ? " + + " AND County.countyID = Link.countyID"; + sql += roadTypesSQL; + statement = db.prepareStatement(sql); + statement.setInt(1,linkID); + addLocationsFromSQL(sql,statement); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Adding execution locations for link, "+linkID+", failed.", sql); + } + } + + /** + * Prepares an SQL statement to return the locations for a given zone. + * @param zoneID The Zone ID to use + **/ + void addZoneLocations(int zoneID) { + String sql = ""; + PreparedStatement statement = null; + try { + if(hasOnroad) { + sql = "SELECT County.stateID,County.countyID,Link.zoneID,Link.linkID,Link.roadTypeID " + + " FROM County, Link" + + " WHERE Link.zoneID = ? " + + " AND County.countyID = Link.countyID"; + sql += roadTypesSQL; + statement = db.prepareStatement(sql); + statement.setInt(1,zoneID); + addLocationsFromSQL(sql,statement); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Adding execution locations for zone, "+zoneID+", failed.", sql); + } + } + + /** + * Prepares an SQL statement to return the locations for a given county. + * @param countyID The County ID to use. + **/ + void addCountyLocations(int countyID) { + String sql = ""; + PreparedStatement statement = null; + try { + if(hasOnroad) { + sql = "SELECT County.stateID,County.countyID,Link.zoneID,Link.linkID,Link.roadTypeID " + + " FROM County, Link" + + " WHERE County.countyID = ?" + + " AND County.countyID = Link.countyID"; + sql += roadTypesSQL; + statement = db.prepareStatement(sql); + statement.setInt(1,countyID); + //System.out.println("addCountyLocations: countyID=" + countyID + ", sql=" + sql); + addLocationsFromSQL(sql,statement); + } + if(hasNonroad) { + sql = "SELECT County.stateID,County.countyID,County.countyID as zoneID,County.countyID as linkID,100 as roadTypeID " + + " FROM County" + + " WHERE County.countyID = ?"; + statement = db.prepareStatement(sql); + statement.setInt(1,countyID); + addLocationsFromSQL(sql,statement); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Adding execution locations for county, "+countyID+", failed.", + sql); + } + } + + /** + * Prepares an SQL statement to return the locations for a given state. + * @param stateID The State ID to use. + **/ + void addStateLocations(int stateID) { + String sql = ""; + PreparedStatement statement = null; + try { + if(hasOnroad) { + sql = "SELECT County.stateID,County.countyID,Link.zoneID,Link.linkID,Link.roadTypeID " + + " FROM County, Link" + + " WHERE County.stateID = ? " + + " AND County.countyID = Link.countyID"; + sql += roadTypesSQL; + statement = db.prepareStatement(sql); + statement.setInt(1,stateID); + //System.out.println("addStateLocations: stateID=" + stateID + ", sql=" + sql); + addLocationsFromSQL(sql,statement); + } + if(hasNonroad) { + sql = "SELECT County.stateID,County.countyID,County.countyID as zoneID,County.countyID as linkID,100 as roadTypeID " + + " FROM County" + + " WHERE County.stateID = ?"; + statement = db.prepareStatement(sql); + statement.setInt(1,stateID); + addLocationsFromSQL(sql,statement); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Adding execution locations for state, "+stateID+", failed.", + sql); + } + } + + /** + * Prepares an SQL statement to return the locations for the nation. + **/ + void addNationLocations() { + String sql = ""; + PreparedStatement statement = null; + try { + if(hasOnroad) { + sql = "SELECT State.stateID,County.countyID,Link.zoneID,Link.linkID,Link.roadTypeID " + + " FROM State, County, Link" + + " WHERE State.stateID = County.stateID " + + " AND County.countyID = Link.countyID"; + sql += roadTypesSQL; + statement = db.prepareStatement(sql); + //System.out.println("addNationLocation: sql=" + sql); + addLocationsFromSQL(sql,statement); + } + if(hasNonroad) { + sql = "SELECT County.stateID,County.countyID,County.countyID as zoneID,County.countyID as linkID,100 as roadTypeID " + + " FROM County"; + statement = db.prepareStatement(sql); + addLocationsFromSQL(sql,statement); + } + } catch(SQLException e) { + Logger.logSqlError(e,"Adding execution locations for the nation failed.", sql); + } + } + + /** + * Centralized routine for querying for links and adding them to the set of locations to + * be processed. + * @param sql SQL used to create the statement + * @param statement PreparedStatement that yields a list of links to be added to the result + * set. The columns should be stateID, countyID, zoneID, linkID, roadTypeID in that sequence, + * though the results don't have to be ORDER BY'd in any way. Statement is always closed + * by this routine. + **/ + void addLocationsFromSQL(String sql, PreparedStatement statement) { + ResultSet rs = null; + try { + rs = SQLRunner.executeQuery(statement,sql); + if(rs != null) { + while(rs.next()) { + addLinkLocation(rs.getInt(1),rs.getInt(2),rs.getInt(3), + rs.getInt(4),rs.getInt(5)); + } + } + } catch(SQLException e) { + Logger.logSqlError(e,"An SQL exception occurred while adding execution locations.", + sql); + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing can be done here. In fact, it may be a non-issue if + // rs isn't even open. + } + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing can be done here. In fact, it may be a non-issue if + // statement isn't even open. + } + } + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/ExecutionLocationTest.java b/gov/epa/otaq/moves/master/framework/ExecutionLocationTest.java new file mode 100644 index 0000000..342da84 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ExecutionLocationTest.java @@ -0,0 +1,71 @@ +/**************************************************************************************** + * @(#)ExecutionLocationTest.java + * + Last change: MC 17 Dec 2003 8:29 am + ***************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the ExecutionLocation class + * + * @author Mitch Cumberworth + * @version 2003-12-17 +**/ +public class ExecutionLocationTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public ExecutionLocationTest(String name) { + super(name); + } + + /** An array of nine ExecutionLocations is needed for this test **/ + ExecutionLocation[] execLocs = new ExecutionLocation[9]; + + /** JUnit "fixture". Create 9 ExecutionLocation objects needed by tests **/ + protected void setUp() { + execLocs[0] = createExecLoc(2,2,2,2); + execLocs[1] = createExecLoc(2,2,2,1); + execLocs[2] = createExecLoc(2,2,2,3); + execLocs[3] = createExecLoc(2,2,1,1); + execLocs[4] = createExecLoc(2,2,3,3); + execLocs[5] = createExecLoc(2,1,4,1); + execLocs[6] = createExecLoc(2,3,1,4); + execLocs[7] = createExecLoc(1,1,1,4); + execLocs[8] = createExecLoc(3,1,1,4); + } +/** makes and assigns value to an ExecutionLocation. + * ExecutionLocation does not have a constructor that does this. + * @param stateRecID the database primary key value for the state + * @param countyRecID the database primary key value for the county + * @param zoneRecID the database primary key value for the zone + * @param linkRecID the database primary key value for the link + * @return the ExecutionLocation object created + **/ + protected ExecutionLocation createExecLoc(int stateRecID, int countyRecID, + int zoneRecID, int linkRecID) { + ExecutionLocation eLoc = new ExecutionLocation(); + eLoc.stateRecordID = stateRecID; + eLoc.countyRecordID = countyRecID; + eLoc.zoneRecordID = zoneRecID; + eLoc.linkRecordID = linkRecID; + return eLoc; + } + + /** Implement test case(s) + * Compare first element of execLocs to every element, including itself + * Test that the integer returned, + * when converted to -1 (when negative) , 0 (when zero) , or +1 (when positive) , + * agrees with the corresponding element of expectedOutcomes. **/ + public void testExecLocCompareTo() { + int[] expectedOutcomes = {0, 1,-1, 1,-1, 1,-1, 1,-1} ; + for ( int i=0 ; i removeUnwantedDataOnWorkerSQLs; + /** SQLs used to adjust for retrofit effects **/ + public Vector retrofitSQLs; + /** SQLs used to perform output aggregation - processed in Worker. **/ + public Vector workerSQLs; + /** SQLs used to perform output aggregation - processed in outputProcessor. **/ + public Vector outputProcessorSQLs; + /** SQLs used to perform output aggregation - processed during final Processing. **/ + public Vector finalProcessSQLs; + /** List of SCC codes for selected off-road vehicles. **/ + TreeSet runQueueSCCs = new TreeSet(); + /** Object used to produce the list of locations the Master Loop will be executed for **/ + ExecutionLocationProducer locationProducer; + /** List of locations the Master Loop will be executed for. **/ + TreeSet executionLocations; + /** The collection of EmissionProcesses that are targeted for simulation. **/ + public TreeSet targetProcesses = new TreeSet(); + /** The collection of Pollutants that are targeted for simulation. **/ + TreeSet targetPollutants = new TreeSet(); + /** The collection of polProcessID Integer objects that are targeted for simulation. **/ + public TreeSet targetPollutantProcesses = new TreeSet(); + /** A collection of state IDs in ascending order. **/ + TreeSet states = new TreeSet(); + /** A collection of county IDs in ascending order. **/ + TreeSet counties = new TreeSet(); + /** A collection of zone IDs in ascending order. **/ + TreeSet zones = new TreeSet(); + /** A collection of link IDs in ascending order. **/ + TreeSet links = new TreeSet(); + /** + * PollutantProcessAssociation objects to be used in the actual simulation. Due to + * dependencies between calculators and pollutants/processes, this may not be the + * exact same set as modified by the user - it may have more entries. + **/ + public TreeSet pollutantProcessAssociations + = new TreeSet(); + /** A collection of years in ascending order. **/ + public TreeSet years = new TreeSet(); + /** A collection of fuel years in ascending order. **/ + public TreeSet fuelYears = new TreeSet(); + /** A collection of month IDs in ascending order. **/ + public TreeSet months = new TreeSet(); + /** A collection of month group IDs in ascending order. **/ + public TreeSet monthGroups = new TreeSet(); + /** A collection of day IDs in ascending order. **/ + public TreeSet days = new TreeSet(); + /** A collection of hour IDs in ascending order. **/ + public TreeSet hours = new TreeSet(); + /** A collection of hour day IDs in ascending order. **/ + TreeSet hourdays = new TreeSet(); + + /** source type IDs used in the simulation as Integer objects **/ + public TreeSet sourceTypes = new TreeSet(); + /** fuel type IDs used in the simulation as Integer objects **/ + public TreeSet fuelTypes = new TreeSet(); + + /** A collection of region IDs in ascending order. **/ + public TreeSet regions = new TreeSet(); + + /** sector IDs used in the simulation as Integer objects **/ + public TreeSet sectors = new TreeSet(); + + /** false if advanced performance features have disabled execution of calculators **/ + public boolean willRunCalculators = true; + + /** true after errors have been reported and data integrity checked **/ + boolean didCheckForIntegrity = false; + /** aggregation generator **/ + AggregationSQLGenerator aggregationSQLGenerator = null; + /** Internal override flag that when set to true forces worker databases to be kept **/ + boolean shouldKeepWorkerDatabases = false; + + /** + * Set of pollutants and processes that are calculated in way that results in records + * that can be aggregated by pollutant and process. + **/ + TreeSet pollutantProcessesNeedingAggregation + = new TreeSet(); + /** + * Set of pollutants that are calculated in way that results in records + * that can be aggregated by pollutant and process. + **/ + TreeSet pollutantsNeedingAggregation = new TreeSet(); + + // /** True if the warning about MOVES lacking all motorcycle information has been displayed. **/ + //boolean didWarnAboutMotorcycles = false; + + /** + * Translate user-space model years to standardized model years. + **/ + ModelYearMapper modelYearMapper = null; + + /** Set of roads to be used. Only filled when ramps should be separated **/ + TreeSet executionRoadTypes = null; + /** + * Road types to add in addition to what is given in the runspec. + * Only filled when ramps should be separated. + **/ + TreeSet extraRoadTypes = null; + + /** + * Constructor. + * @param runSpec The runspec being executed. + **/ + public ExecutionRunSpec(RunSpec runSpec) { + theExecutionRunSpec = this; + targetRunSpec = runSpec; + + willRunCalculators = shouldExecute(EmissionCalculator.class); + } + + /** + * Constructor for use as general utility for decoding RunSpec objects. + * @param runSpec The runspec being executed. + * @param justAUtility true if only being used for utilitarian reasons and should + * not establish itself as the ExecutionRunSpec singleton. + **/ + public ExecutionRunSpec(RunSpec runSpec, boolean justAUtility) { + targetRunSpec = runSpec; + if(!justAUtility) { + theExecutionRunSpec = this; + willRunCalculators = shouldExecute(EmissionCalculator.class); + } + } + + /** + * Performs several one time initialization operations. + * Must be called only before InputDataManager + * has copied data into the Execution database. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void initializeBeforeExecutionDatabase() throws InterruptedException { + int eventRecordID = MOVESEngine.logEventStart("initializeBeforeExecutionDatabase"); + Connection defaultDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + try { + BundleUtilities.resetCachedData(); + + for(Iterator + i = targetRunSpec.pollutantProcessAssociations.iterator(); i.hasNext();) { + PollutantProcessAssociation iterAssociation = i.next(); + targetProcesses.add(iterAssociation.emissionProcess); + targetPollutants.add(iterAssociation.pollutant); + targetPollutantProcesses.add(new Integer(iterAssociation.getDatabaseKey(defaultDB))); + pollutantProcessAssociations.add(iterAssociation); + } + flagRequiredPollutantProcesses(defaultDB); + addLumpedSpecies(defaultDB); + + buildExecutionTimeSpan(defaultDB,true); + + locationProducer = new ExecutionLocationProducer(targetRunSpec); + executionLocations = locationProducer.buildExecutionLocations(defaultDB); + extractLocationDetailsFromExecutionLocations(); + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,defaultDB); + defaultDB = null; + MOVESEngine.logEventStop(eventRecordID); + } + } + + /** + * Reload the execution locations from the MOVESExecution database after it has had the domain + * database merged into it. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void initializeLocationsAfterDomainDatabase() throws InterruptedException { + Connection executionDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + try { + locationProducer = new ExecutionLocationProducer(targetRunSpec); + executionLocations = locationProducer.buildExecutionLocations(executionDB); + extractLocationDetailsFromExecutionLocations(); + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,executionDB); + executionDB = null; + } + } + + /** + * Performs several one time initialization operations. + * Must be called only after InputDataManager + * has copied data into the Execution database's Year and regionCounty + * tables. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void initializeAfterShallowTables() throws InterruptedException { + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + Connection executionDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + try { + // Learn fuel years from the year table and the years in the runspec. + // The Year table has not been filtered, so use the years in the runspec + // for filters. + if(years.size() > 0) { + sql = ""; + for(Integer y : years) { + if(sql.length() > 0) { + sql += ","; + } + sql += y; + } + sql = "select distinct fuelYearID from year where yearID in (" + sql + ")"; + fuelYears.clear(); + query.open(executionDB,sql); + while(query.rs.next()) { + fuelYears.add(new Integer(query.rs.getInt(1))); + } + query.close(); + } + // Learn regions from the regionCounty table. This has already been filtered + // for the counties in the runspec. + regions.clear(); + regions.add(new Integer(0)); + sql = "select distinct regionID from regionCounty"; + query.open(executionDB,sql); + while(query.rs.next()) { + regions.add(new Integer(query.rs.getInt(1))); + } + query.close(); + // Learn month groups using the runspec months as a filter. + if(months.size() > 0) { + sql = ""; + for(Integer m : months) { + if(sql.length() > 0) { + sql += ","; + } + sql += m; + } + sql = "select distinct monthGroupID from monthOfAnyYear where monthID in (" + sql + ")"; + monthGroups.clear(); + query.open(executionDB,sql); + while(query.rs.next()) { + monthGroups.add(new Integer(query.rs.getInt(1))); + } + query.close(); + } + } catch(SQLException e) { + Logger.logSqlError(e,"Unable to query year and regionCounty tables",sql); + } finally { + query.onFinally(); + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,executionDB); + executionDB = null; + } + } + + /** + * Performs several one time initialization operations. + * Must be called only after InputDataManager + * has copied data into the Execution database. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void initializeAfterExecutionDatabase() throws InterruptedException { + int eventRecordID = MOVESEngine.logEventStart("initializeAfterExecutionDatabase"); + Connection executionDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + try { + addIndexes(executionDB); + + for (Iterator i = targetRunSpec.pollutantProcessAssociations.iterator(); i.hasNext();) { + PollutantProcessAssociation iterAssociation = (PollutantProcessAssociation) i.next(); + targetProcesses.add(iterAssociation.emissionProcess); + targetPollutants.add(iterAssociation.pollutant); + targetPollutantProcesses.add(new Integer(iterAssociation.getDatabaseKey(executionDB))); + pollutantProcessAssociations.add(iterAssociation); + } + flagRequiredPollutantProcesses(executionDB); + + buildExecutionTimeSpan(executionDB,false); + + buildNonLocationFilterTables(); + if(targetRunSpec.scale == ModelScale.MESOSCALE_LOOKUP + && targetRunSpec.domain != ModelDomain.PROJECT) { + createMesoscaleLookupLinks(executionDB); + } + + locationProducer = new ExecutionLocationProducer(targetRunSpec); + executionLocations = locationProducer.buildExecutionLocations(executionDB); + extractLocationDetailsFromExecutionLocations(); + + buildLocationFilterTables(); + runAdditionalSetupScript(executionDB); + + setupMacroExpander(executionDB); + ExtractedDataCache.clear(); + + modelYearMapper = new ModelYearMapper(); + String sql = ""; + try { + modelYearMapper.buildMappings(executionDB); + sql = "insert ignore into PollutantProcessMappedModelYear (polProcessID,modelYearID,modelYearGroupID,fuelMYGroupID,IMModelYearGroupID)" + + " select" + + " polProcessID," + + " MYRMAP(modelYearID) as modelYearID," + + " modelYearGroupID," + + " fuelMYGroupID," + + " IMModelYearGroupID" + + " from pollutantProcessModelYear"; + sql = modelYearMapper.findAndConvert(sql); + SQLRunner.executeSQL(executionDB,sql); + } catch(SQLException e) { + Logger.logError(e,"Unable to build model year mappings"); + } + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,executionDB); + executionDB = null; + MOVESEngine.logEventStop(eventRecordID); + } + } + + /** + * Performs several before iteration initialization operations. + * Must be called only after InputDataManager + * has copied data into the Execution database. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void initializeBeforeIteration() throws InterruptedException { + int eventRecordID = MOVESEngine.logEventStart("initializeBeforeIteration"); + boolean alreadyAdded = false; + if(aggregationSQLGenerator == null) { + aggregationSQLGenerator = new AggregationSQLGenerator(); + alreadyAdded = false; + } else { + alreadyAdded = true; + } + if(!aggregationSQLGenerator.generateReportSQL()) { + if(!didCheckForIntegrity) { + /** @explain An error occurred while creating aggregation SQL statements. **/ + Logger.log(LogMessageCategory.ERROR, "Problem while generating Report SQL"); + } + } else { + workerSQLs = aggregationSQLGenerator.workerSQLs; + + if(retrofitSQLs != null) { + OnRoadRetrofitStrategy t = new OnRoadRetrofitStrategy(); + if(this.shouldExecute(t.getClass())) { + if(workerSQLs == null) { + workerSQLs = retrofitSQLs; + } else if(!alreadyAdded) { + // Add at the beginning, pushing existing SQL down + workerSQLs.addAll(0,retrofitSQLs); + } + if(!alreadyAdded && shouldSaveData(t.getClass())) { + shouldKeepWorkerDatabases = true; + // NOTE: The following are in reverse order due to their need to + // be at the beginning of the SQL list + workerSQLs.add(0,"create table MOVESWorkerOutput_BeforeRetrofit" + + " select * from MOVESWorkerOutput;"); + workerSQLs.add(0,"drop table if exists MOVESWorkerOutput_BeforeRetrofit;"); + } + } + } + if(removeUnwantedDataOnWorkerSQLs != null) { + if(workerSQLs == null) { + workerSQLs = removeUnwantedDataOnWorkerSQLs; + } else if(!alreadyAdded) { + // Add at the beginning, pushing existing SQL down + // This ensures minimal table size before retrofit + workerSQLs.addAll(0,removeUnwantedDataOnWorkerSQLs); + } + } + outputProcessorSQLs = aggregationSQLGenerator.outputProcessorSQLs; + finalProcessSQLs = aggregationSQLGenerator.finalProcessSQLs; + } + + if(!didCheckForIntegrity) { + checkDataIntegrity(); + } + + MOVESEngine.logEventStop(eventRecordID); + + didCheckForIntegrity = true; + } + + /** + * Builds the TimeSpan used during execution. + * @param targetDB The database connection to build the TimeSpan selections from. + * @param useRunSpec true if the RunSpec's data should be used. Used only when reading + * from the default database. Set to false when reading from the Execution database + * after aggregation operations. + * @throws InterruptedException If the active thread is interrupted. + **/ + public void buildExecutionTimeSpan(Connection targetDB,boolean useRunSpec) + throws InterruptedException { + String sql = ""; + try { + ResultSet results; + + // Initialize years. This is always from the RunSpec. + for(Iterator y=targetRunSpec.timeSpan.years.iterator();y.hasNext();) { + years.add((Integer)y.next()); + } + // Build the months selections. MonthOfAnyYear is not filtered but it is aggregated. + // Thus, the RunSpec itself is used when reading from the default database. When + // reading from the execution database, if no pseudo-months have been created, then + // continue to use the RunSpec's data, otherwise just load what the database actually + // has. + months.clear(); + if(useRunSpec + || getTimeSpan().aggregateBy.compareTo(OutputTimeStep.YEAR) < 0) { + for(Iterator i=targetRunSpec.timeSpan.months.iterator();i.hasNext();) { + TimeSpan.Month m = (TimeSpan.Month)i.next(); + months.add(new Integer(m.monthID)); + } + } else { + // The "YEAR" aggregation option uses one or more pseudo-months, so + // just load these months now. + sql = "SELECT monthID FROM MonthOfAnyYear ORDER BY monthID"; + results = SQLRunner.executeQuery(targetDB,sql); + for(int i=0;results.next();i++) { + months.add(new Integer(results.getInt(1))); + } + results.close(); + } + // Build the days selections + days.clear(); + if(useRunSpec) { + for(Iterator i=targetRunSpec.timeSpan.days.iterator();i.hasNext();) { + TimeSpan.Day d = (TimeSpan.Day)i.next(); + days.add(new Integer(d.dayID)); + } + } else { + sql = "SELECT dayID FROM DayOfAnyWeek ORDER BY dayID"; + results = SQLRunner.executeQuery(targetDB,sql); + for(int i=0;results.next();i++) { + days.add(new Integer(results.getInt(1))); + } + results.close(); + } + // Build the hours selections. HourOfAnyDay is never filtered, so the RunSpec is + // always used unless time aggregation occurred. + hours.clear(); + boolean didAggregateHours = false; + ModelScale scale = getModelScale(); + if(ModelScale.MACROSCALE == scale || ModelScale.MESOSCALE_LOOKUP == scale) { + if(getTimeSpan().aggregateBy != OutputTimeStep.HOUR) { + didAggregateHours = true; + } + } + if(useRunSpec || !didAggregateHours) { + for(Iterator i=targetRunSpec.timeSpan.allHours.iterator();i.hasNext();) { + TimeSpan.Hour h = (TimeSpan.Hour)i.next(); + if(targetRunSpec.timeSpan.beginHourID <= h.hourID + && targetRunSpec.timeSpan.endHourID >= h.hourID) { + hours.add(new Integer(h.hourID)); + //System.out.println("Add runSpec hour " + h.hourID + " between " + targetRunSpec.timeSpan.beginHourID + " and " + targetRunSpec.timeSpan.endHourID); + } + } + } else { + sql = "SELECT hourID FROM HourOfAnyDay ORDER BY hourID"; + results = SQLRunner.executeQuery(targetDB,sql); + for(int i=0;results.next();i++) { + hours.add(new Integer(results.getInt(1))); + } + results.close(); + } + // Build HourDay selections. This is always from the database and based + // upon the hour and day IDs already gathered above. + sql=""; + for(Iterator h=hours.iterator();h.hasNext();) { + Integer hour = (Integer)h.next(); + for(Iterator d=days.iterator();d.hasNext();) { + Integer day = (Integer)d.next(); + if(sql.length()==0) { + sql = "SELECT hourDayID FROM HourDay WHERE "; + } else { + sql += " OR "; + } + sql += "(dayID=" + day + " AND hourID=" + hour + ")"; + } + results = SQLRunner.executeQuery(targetDB,sql); + hourdays.clear(); + for(int i=0;results.next();i++) { + hourdays.add(new Integer(results.getInt(1))); + } + results.close(); + } + } catch(SQLException e) { + Logger.logSqlError(e,"An SQL exception occurred while building the runspec filter "+ + "sets.", sql); + } + } + + /** + * Examine the pollutant/process selections, looking for other required selections. If one + * is found, add it but also arrange for its data to be deleted from the results since the + * user (nor any GUI logic) selected it. + * @param db database to use + **/ + void flagRequiredPollutantProcesses(Connection db) { + if(targetRunSpec.models.contains(Model.NONROAD)) { + // Nonroad has no silent pollutants/processes added for the user. + return; + } + + //removeUnwantedDataOnWorkerSQLs = null; + // Format of needs[] array: + // output pollutant, output process, required input pollutant, required input process + String[] needs = { + /* + "Primary PM10 - Elemental Carbon", "Crankcase Running Exhaust", + "Elemental Carbon", "Crankcase Running Exhaust", + "Elemental Carbon", "Crankcase Running Exhaust", + "Elemental Carbon", "Running Exhaust", + "Primary PM10 - Elemental Carbon", "Running Exhaust", + "Elemental Carbon", "Running Exhaust", + + "Primary PM10 - Elemental Carbon", "Crankcase Start Exhaust", + "Elemental Carbon", "Crankcase Start Exhaust", + "Elemental Carbon", "Crankcase Start Exhaust", + "Elemental Carbon", "Start Exhaust", + "Primary PM10 - Elemental Carbon", "Start Exhaust", + "Elemental Carbon", "Start Exhaust", + + "Primary PM10 - Elemental Carbon", "Crankcase Extended Idle Exhaust", + "Elemental Carbon", "Crankcase Extended Idle Exhaust", + "Elemental Carbon", "Crankcase Extended Idle Exhaust", + "Elemental Carbon", "Extended Idle Exhaust", + "Primary PM10 - Elemental Carbon", "Extended Idle Exhaust", + "Elemental Carbon", "Extended Idle Exhaust", + + "Primary PM10 - Organic Carbon", "Crankcase Running Exhaust", + "Organic Carbon", "Crankcase Running Exhaust", + "Organic Carbon", "Crankcase Running Exhaust", + "Organic Carbon", "Running Exhaust", + "Primary PM10 - Organic Carbon", "Running Exhaust", + "Organic Carbon", "Running Exhaust", + + "Primary PM10 - Organic Carbon", "Crankcase Start Exhaust", + "Organic Carbon", "Crankcase Start Exhaust", + "Organic Carbon", "Crankcase Start Exhaust", + "Organic Carbon", "Start Exhaust", + "Primary PM10 - Organic Carbon", "Start Exhaust", + "Organic Carbon", "Start Exhaust", + + "Primary PM10 - Organic Carbon", "Crankcase Extended Idle Exhaust", + "Organic Carbon", "Crankcase Extended Idle Exhaust", + "Organic Carbon", "Crankcase Extended Idle Exhaust", + "Organic Carbon", "Extended Idle Exhaust", + "Primary PM10 - Organic Carbon", "Extended Idle Exhaust", + "Organic Carbon", "Extended Idle Exhaust", + + "Primary PM10 - Sulfate Particulate", "Crankcase Running Exhaust", + "Sulfate Particulate", "Crankcase Running Exhaust", + "Sulfate Particulate", "Crankcase Running Exhaust", + "Sulfate Particulate", "Running Exhaust", + "Sulfate Particulate", "Running Exhaust", + "Total Energy Consumption", "Running Exhaust", + + "Primary PM10 - Sulfate Particulate", "Crankcase Start Exhaust", + "Sulfate Particulate", "Crankcase Start Exhaust", + "Sulfate Particulate", "Crankcase Start Exhaust", + "Sulfate Particulate", "Start Exhaust", + "Sulfate Particulate", "Start Exhaust", + "Total Energy Consumption", "Start Exhaust", + + "Primary PM10 - Sulfate Particulate", "Crankcase Extended Idle Exhaust", + "Sulfate Particulate", "Crankcase Extended Idle Exhaust", + "Sulfate Particulate", "Crankcase Extended Idle Exhaust", + "Sulfate Particulate", "Extended Idle Exhaust", + "Sulfate Particulate", "Extended Idle Exhaust", + "Total Energy Consumption", "Extended Idle Exhaust", + + "Primary PM10 - Sulfate Particulate", "Running Exhaust", + "Sulfate Particulate", "Running Exhaust", + "Primary PM10 - Sulfate Particulate", "Start Exhaust", + "Sulfate Particulate", "Start Exhaust", + "Primary PM10 - Sulfate Particulate", "Extended Idle Exhaust", + "Sulfate Particulate", "Extended Idle Exhaust", + */ + + "Total Gaseous Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Running Exhaust", + "Total Gaseous Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Start Exhaust", + "Total Gaseous Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Non-Methane Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Running Exhaust", + "Non-Methane Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Start Exhaust", + "Non-Methane Hydrocarbons", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Non-Methane Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Running Exhaust", + "Non-Methane Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Start Exhaust", + "Non-Methane Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Total Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Running Exhaust", + "Total Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Start Exhaust", + "Total Organic Gases", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Volatile Organic Compounds", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Running Exhaust", + "Volatile Organic Compounds", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Start Exhaust", + "Volatile Organic Compounds", "Refueling Displacement Vapor Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + + "Total Gaseous Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Running Exhaust", + "Total Gaseous Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Start Exhaust", + "Total Gaseous Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Non-Methane Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Running Exhaust", + "Non-Methane Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Start Exhaust", + "Non-Methane Hydrocarbons", "Refueling Spillage Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Non-Methane Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Running Exhaust", + "Non-Methane Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Start Exhaust", + "Non-Methane Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Total Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Running Exhaust", + "Total Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Start Exhaust", + "Total Organic Gases", "Refueling Spillage Loss", + "Total Energy Consumption", "Extended Idle Exhaust", + "Volatile Organic Compounds", "Refueling Spillage Loss", + "Total Energy Consumption", "Running Exhaust", + "Volatile Organic Compounds", "Refueling Spillage Loss", + "Total Energy Consumption", "Start Exhaust", + "Volatile Organic Compounds", "Refueling Spillage Loss", + "Total Energy Consumption", "Extended Idle Exhaust" + }; + boolean done = false; + while(!done) { + done = true; + for(int i=0;i mechanismPollutants = TOGSpeciationCalculator.getMechanismPollutants(db); + for(PollutantProcessAssociation ppa : targetRunSpec.pollutantProcessAssociations) { + if(!mechanismPollutants.contains(ppa.pollutant)) { + continue; + } + ArrayList mechanismProcesses = TOGSpeciationCalculator.getMechanismProcesses(db,ppa.pollutant); + if(!mechanismProcesses.contains(ppa.emissionProcess)) { + continue; + } + // Add NonHAPTOG (88). + Pollutant nonhapTOG = Pollutant.findByID(88); + if(nonhapTOG != null) { + PollutantProcessAssociation nht = PollutantProcessAssociation.createByID(88,ppa.emissionProcess.databaseKey); + if(nht != null && !ExecutionRunSpec.theExecutionRunSpec.doesHavePollutantAndProcess(nht.pollutant,nht.emissionProcess)) { + targetPollutantProcesses.add(new Integer(nht.getDatabaseKey(db))); + pollutantProcessAssociations.add(nht); + targetPollutants.add(nonhapTOG); + } + } + // Add lumped species + ArrayList lumpedSpecies = TOGSpeciationCalculator.getMechanismLumpedSpecies(db,ppa); + for(PollutantProcessAssociation r : lumpedSpecies) { + if(!ExecutionRunSpec.theExecutionRunSpec.doesHavePollutantAndProcess(r.pollutant,r.emissionProcess)) { + targetPollutantProcesses.add(new Integer(r.getDatabaseKey())); + pollutantProcessAssociations.add(r); + targetPollutants.add(r.pollutant); + } + } + } + } catch(Exception e) { + Logger.logError(e,"Unable to add lumped species to the internal set of pollutants"); + } + } + + /** + * Require a pollutant/process. If not already present, it will be flagged so that its results + * are removed at the end of calculations. + * @param db database to use + * @param pollutantName textual name of a pollutant that is required, may not be "" or null + * @param emissionProcessName textual name of an emission process that is required, may not + * be "" or null + * @return true if the pollutant/process was added and not already present, false if already + * present (either originally or as a result of other calls to require()). + **/ + public boolean require(Connection db, String pollutantName, String emissionProcessName) { + if(doesHavePollutantAndProcess(pollutantName,emissionProcessName)) { + return false; + } + Pollutant pollutant = Pollutant.findByName(pollutantName); + EmissionProcess emissionProcess = EmissionProcess.findByName(emissionProcessName); + if(pollutant == null || emissionProcess == null) { + /** + * @explain An internally required pollutant/process could not be found within + * the default database. If using a customized database, ensure that the named + * pollutant/process is properly represented within the database. + **/ + Logger.log(LogMessageCategory.ERROR,"Unknown, but required, pollutant/process: " + + pollutantName + "/" + emissionProcessName); + return false; + } + PollutantProcessAssociation ppa = PollutantProcessAssociation.createByName( + pollutantName, emissionProcessName); + targetProcesses.add(ppa.emissionProcess); + targetPollutants.add(ppa.pollutant); + targetPollutantProcesses.add(new Integer(ppa.getDatabaseKey(db))); + pollutantProcessAssociations.add(ppa); + Logger.log(LogMessageCategory.INFO,"Adding:(" + ppa.getDatabaseKey(db) + ") " + + pollutantName + "/" + emissionProcessName); + if(removeUnwantedDataOnWorkerSQLs == null) { + removeUnwantedDataOnWorkerSQLs = new Vector(); + } + String sql = "delete from MOVESWorkerOutput where pollutantID=" + ppa.pollutant.databaseKey + + " and processID=" + ppa.emissionProcess.databaseKey + ";"; + removeUnwantedDataOnWorkerSQLs.add(sql); + return true; + } + + /** + * Checks the pollutants and processes associated with the ExecutionRunSpec to see if the + * requested combination is selected. Wildcard-type functionality is obtained by passing + * "" or null for one of the two required names. + * @param pollutantName textual name of a pollutant to search for or "" or null to match any + * pollutant in the selected process + * @param emissionProcessName textual name of an emission process to search for or "" or null + * to match any process for the selected pollutant + * @return true if the requested combination or wildcard match is found, false if both + * parameters are "" or null + **/ + public boolean doesHavePollutantAndProcess(String pollutantName,String emissionProcessName) { + Pollutant pollutant = null; + if(pollutantName != null && pollutantName.length() > 0) { + pollutant = Pollutant.findByName(pollutantName); + if(pollutant == null) { + // The code gets here when there is a pollutantName (non-null and non-"") passed + // in but that pollutant can't be found in the database. + return false; + } + } + + EmissionProcess emissionProcess = null; + if(emissionProcessName != null && emissionProcessName.length() > 0) { + emissionProcess = EmissionProcess.findByName(emissionProcessName); + if(emissionProcess == null) { + // The code gets here when there is an emissionProcessName + // (non-null and non-"") passed/ in but that emission process can't + // be found in the database. + return false; + } + } + return doesHavePollutantAndProcess(pollutant,emissionProcess); + } + + /** + * Checks the pollutants and processes associated with the ExecutionRunSpec to see if the + * requested combination is selected. Wildcard-type functionality is obtained by passing + * "" or null for one of the two required names. + * @param pollutantID ID of a pollutant to search for or 0 to match any + * pollutant in the selected process + * @param emissionProcessID ID of an emission process to search for or 0 + * to match any process for the selected pollutant + * @return true if the requested combination or wildcard match is found, false if both + * parameters are 0 + **/ + public boolean doesHavePollutantAndProcess(int pollutantID,int emissionProcessID) { + Pollutant pollutant = null; + if(pollutantID > 0) { + pollutant = Pollutant.findByID(pollutantID); + if(pollutant == null) { + // The code gets here when there is a pollutantID (non-0) passed + // in but that pollutant can't be found in the database. + return false; + } + } + + EmissionProcess emissionProcess = null; + if(emissionProcessID > 0) { + emissionProcess = EmissionProcess.findByID(emissionProcessID); + if(emissionProcessID <= 0) { + // The code gets here when there is an emissionProcessID + // (non-0) passed in but that emission process can't + // be found in the database. + return false; + } + } + return doesHavePollutantAndProcess(pollutant,emissionProcess); + } + + /** + * Checks the pollutants and processes associated with the ExecutionRunSpec to see if the + * requested combination is selected. Wildcard-type functionality is obtained by passing + * null for one of the two required names. + * @param pollutant Pollutant to search for or null to match any pollutant in the + * selected process + * @param emissionProcess Emission process to search for null to match any process for the + * selected pollutant + * @return true if the requested combination or wildcard match is found, false if both + * parameters are null + **/ + public boolean doesHavePollutantAndProcess(Pollutant pollutant, + EmissionProcess emissionProcess) { + int neededMatches = 0; + if(pollutant != null) { + neededMatches++; + } + if(emissionProcess != null) { + neededMatches++; + } + + /** NR_IMP: differentiate based on model selection **/ + Models.ModelCombination mc = this.targetRunSpec.getModelCombination(); + if(pollutant == null && emissionProcess != null) { + if(targetProcesses.contains(emissionProcess)) { + /** NR_IMP: differentiate based on model selection **/ + switch ( mc) { + case M2: + for (Iterator i = pollutantProcessAssociations.iterator(); i.hasNext();) { + PollutantProcessAssociation a = (PollutantProcessAssociation)i.next(); + if(a.isAffectedByNonroad && emissionProcess != null && + emissionProcess.compareTo(a.emissionProcess) == 0) { + return true; + } + } + return false; + case M1: + default: + return true; + } + } + } + if(neededMatches > 0) { + for (Iterator i = pollutantProcessAssociations.iterator(); i.hasNext();) { + int matches = 0; + PollutantProcessAssociation a = (PollutantProcessAssociation)i.next(); + if(pollutant != null && + pollutant.compareTo(a.pollutant) == 0) { + matches++; + } + if(emissionProcess != null && + emissionProcess.compareTo(a.emissionProcess) == 0) { + switch ( mc) { + case M2: + if (a.isAffectedByNonroad) { + matches++; + } + break; + case M1: + default: + if (a.isAffectedByOnroad) { + matches++; + } + break; + } + } + if(matches == neededMatches) { + return true; + } + } + } + return false; + } + + /** + * Include a statement as part of the retrofit processing + * @param sql statement to execute before aggregation on the worker + **/ + public void addRetrofitSQL(String sql) { + if(retrofitSQLs == null) { + retrofitSQLs = new Vector(); + } + /* + boolean exists = false; + for(Iterator i=retrofitSQLs.iterator();i.hasNext();) { + String s = (String)i.next(); + if(s.equalsIgnoreCase(sql)) { + exists = true; + break; + } + } + if(exists) { + S ystem.out.println("OLD Retrofit SQL: " + sql); + } else { + S ystem.out.println("NEW Retrofit SQL: " + sql); + } + */ + retrofitSQLs.add(sql); + } + + /** + * Obtains the user's database input selection. + * @return A LinkList object. + **/ + public LinkedList getDatabaseSelectionInputSets() { + return targetRunSpec.databaseSelectionInputSets; + } + + /** + * Obtains the user's output emission breakdown selection. + * @return An OutputEmissionBreakdownSelection object. + **/ + public OutputEmissionsBreakdownSelection getOutputEmissionsBreakdownSelection() { + return targetRunSpec.outputEmissionsBreakdownSelection; + } + + /** + * Should MOVES output VMT Data? + * @return A bool value. + **/ + public boolean getOutputVMTData() { + return targetRunSpec.outputVMTData; + } + + /** + * Gets the user's output time step + * @return An OutputTimeStep object. + **/ + public OutputTimeStep getOutputTimeStep() { + return targetRunSpec.outputTimeStep; + } + + /** + * Gets the user's selected time span. + * @return A TimeSpan object. + **/ + public TimeSpan getTimeSpan() { + return targetRunSpec.timeSpan; + } + + /** + * Gets the user's roadtypes. + * @return The set of all road types to be used in the simulation. + **/ + public TreeSet getRoadTypes() { + if(shouldSeparateRamps() && extraRoadTypes == null) { + extraRoadTypes = new TreeSet(); + for(Iterator i = targetRunSpec.roadTypes.iterator(); i.hasNext();) { + RoadType roadType = (RoadType) i.next(); + // Provide Rural Restricted only Ramps (8) for Rural Restricted Access (2) roads + if(roadType.roadTypeID==2) { + RoadType newRoad = new RoadType(8,"Rural Restricted only Ramps",Models.ModelCombination.M1); + extraRoadTypes.add(newRoad); + } + // Provide Urban Restricted only Ramps (9) for Urban Restricted Access (4) roads + if(roadType.roadTypeID==4) { + RoadType newRoad = new RoadType(9,"Urban Restricted only Ramps",Models.ModelCombination.M1); + extraRoadTypes.add(newRoad); + } + } + } + if(extraRoadTypes != null && extraRoadTypes.size() > 0) { + if(executionRoadTypes == null) { + executionRoadTypes = new TreeSet(); + executionRoadTypes.addAll(extraRoadTypes); + executionRoadTypes.addAll(targetRunSpec.roadTypes); + } + return executionRoadTypes; + } + return targetRunSpec.roadTypes; + } + + /** + * Get the user's selection for geographic detail. + * @return A GeographicOutputDetailLevel object. + **/ + public GeographicOutputDetailLevel getGeographicOutputDetailLevel() { + return targetRunSpec.geographicOutputDetail; + } + + /** + * Get the user's selected models. + * @return A Models object + **/ + public Models getModels() { + return targetRunSpec.models; + } + + /** + * Get the user's selection for the model scale. + * @return A ModelScale object + **/ + public ModelScale getModelScale() { + return targetRunSpec.scale; + } + + /** + * Get the user's selection for the model domain. + * @return A ModelDomain object + **/ + public ModelDomain getModelDomain() { + return targetRunSpec.domain; + } + + /** + * Get the output factors. + * @return An OutputFactors object + **/ + public OutputFactors getOutputFactors() { + return targetRunSpec.outputFactors; + } + + /** + * Get the user's onroad vehicle selections. + * @return A TreeSet Object + **/ + public TreeSet getOnRoadVehicleSelections() { + return targetRunSpec.onRoadVehicleSelections; + } + + /** + * Get the user's nonroad vehicle selections. + * @return A TreeSet Object + **/ + public TreeSet getOffRoadVehicleSelections() { + return targetRunSpec.offRoadVehicleSelections; + } + + /** + * Get the user's geographic selections. + * @return A TreeSet Object + **/ + public TreeSet getGeographicSelections() { + return targetRunSpec.geographicSelections; + } + + /** + * Get the internalControlStrategies TreeMap from the current RunSpec + * @return a TreeMap of LinkedLists of InternalControlStrategies + **/ + public TreeMap > getInternalControlStrategies() { + return targetRunSpec.internalControlStrategies; + } + + /** Populate the states, counties, zones, and links members based upon executionLocations **/ + void extractLocationDetailsFromExecutionLocations() { + states.clear(); + counties.clear(); + zones.clear(); + links.clear(); + for(Iterator i=executionLocations.iterator();i.hasNext();) { + ExecutionLocation location = (ExecutionLocation)i.next(); + states.add(new Integer(location.stateRecordID)); + counties.add(new Integer(location.countyRecordID)); + zones.add(new Integer(location.zoneRecordID)); + links.add(new Integer(location.linkRecordID)); + } + } + + void buildVehicleSelections(Models.ModelCombination mc) throws SQLException { + /** NR_IMP: **/ + switch ( mc) { + case M1: + for(Iterator + i = targetRunSpec.onRoadVehicleSelections.iterator(); i.hasNext();) { + OnRoadVehicleSelection onRoadVehicleSelection = (OnRoadVehicleSelection) i.next(); + sourceTypes.add(new Integer(onRoadVehicleSelection.sourceTypeID)); + fuelTypes.add(new Integer(onRoadVehicleSelection.fuelTypeID)); + + //if(onRoadVehicleSelection.sourceTypeID == 11 && !didWarnAboutMotorcycles) { + // didWarnAboutMotorcycles = true; + // /** + // * @explain The draft version of MOVES 2009 does not include all pollutants for motorcycles. + // **/ + // Logger.log(LogMessageCategory.WARNING, + // "This version of MOVES does not include criteria pollutant and air toxics emission factors for motorcycles."); + //} + } + break; + case M2: + for(Iterator + i = targetRunSpec.offRoadVehicleSelections.iterator(); i.hasNext();) { + OffRoadVehicleSelection offRoadVehicleSelection = (OffRoadVehicleSelection) i.next(); + sectors.add(new Integer(offRoadVehicleSelection.sectorID)); + fuelTypes.add(new Integer(offRoadVehicleSelection.fuelTypeID)); + } + break; + case M12: + /** NR_IMP: later **/ + // sourceTypes and fuelTypes need be differentiated for nonroad and onroad + // only do one of the models at a time only for now + break; + default: // as M1 + for(Iterator + i = targetRunSpec.onRoadVehicleSelections.iterator(); i.hasNext();) { + OnRoadVehicleSelection onRoadVehicleSelection = (OnRoadVehicleSelection) i.next(); + sourceTypes.add(new Integer(onRoadVehicleSelection.sourceTypeID)); + fuelTypes.add(new Integer(onRoadVehicleSelection.fuelTypeID)); + + //if(onRoadVehicleSelection.sourceTypeID == 11 && !didWarnAboutMotorcycles) { + // didWarnAboutMotorcycles = true; + // /** + // * @explain The draft version of MOVES 2009 does not include all pollutants for motorcycles. + // **/ + // Logger.log(LogMessageCategory.WARNING, + // "This version of MOVES does not include criteria pollutant and air toxics emission factors for motorcycles."); + //} + } + break; + } + + } + + /** + * Builds filter tables used in queries to limit the items used in calculations. The tables + * built within do not reference location (state, county, zone, link) in any way. + * @throws InterruptedException If the active thread is interrupted. + **/ + void buildNonLocationFilterTables() throws InterruptedException { + String sql = ""; + PreparedStatement statement = null; + Connection defaultDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + Connection executionDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + try { + Models.ModelCombination mc = targetRunSpec.getModelCombination(); + + buildVehicleSelections(mc); + fillSourceTypes(executionDB,sourceTypes); + fillSectors(executionDB,sectors); + + // Build the fueltype selections + sql = "TRUNCATE RunSpecSourceFuelType"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecSourceFuelType (sourceTypeID, fuelTypeID) VALUES (?,?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator + i = targetRunSpec.onRoadVehicleSelections.iterator(); i.hasNext();) { + OnRoadVehicleSelection onRoadVehicleSelection = i.next(); + statement.setInt(1,onRoadVehicleSelection.sourceTypeID); + statement.setInt(2,onRoadVehicleSelection.fuelTypeID); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + sql = "TRUNCATE RunSpecSectorFuelType"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecSectorFuelType (sectorID, fuelTypeID) VALUES (?,?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator + i = targetRunSpec.offRoadVehicleSelections.iterator(); i.hasNext();) { + OffRoadVehicleSelection offRoadVehicleSelection = i.next(); + statement.setInt(1,offRoadVehicleSelection.sectorID); + statement.setInt(2,offRoadVehicleSelection.fuelTypeID); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + // Build the roadtype selections + sql = "TRUNCATE RunSpecRoadType"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT IGNORE INTO RunSpecRoadType (roadTypeID) VALUES (?)"; + final boolean addRamps = shouldSeparateRamps(); + statement = executionDB.prepareStatement(sql); + //for(Iterator i = targetRunSpec.roadTypes.iterator(); i.hasNext();) { + for(Iterator i = getRoadTypes().iterator(); i.hasNext();) { + /** NR_IMP: **/ + // if later we want to run both of the models at the same time + // we need to add which are for onroad/nonroad + RoadType roadType = (RoadType) i.next(); + statement.setInt(1,roadType.roadTypeID); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + // Copy SHOAllocFactor from blended road types to corresponding ramps. + // This is needed only when separating ramps in both Inventory and + // rate modes. + if(shouldSeparateRamps()) { + if(targetRunSpec.scale == ModelScale.MESOSCALE_LOOKUP) { + // Don't scale SHO by ramp fraction when making rates. Doing so + // could cause SHO to become zero and break our ability to aggregate + // rates over model year, source type, fuel, and regclass. + + sql = "insert ignore into zoneRoadType (zoneID, roadTypeID, SHOAllocFactor)" + + " select zoneID, case when z.roadTypeID=2 then 8 else 9 end, SHOAllocFactor" + + " from zoneRoadType z" + + " where z.roadTypeID in (2,4)"; + SQLRunner.executeSQL(executionDB,sql); + } else { + // Inventory aggregation does not rely upon non-zero activity. Therefore, + // scale SHO by rampFraction and 1-rampFraction. + + // Ramps get SHO scaled by rampFraction + sql = "insert ignore into zoneRoadType (zoneID, roadTypeID, SHOAllocFactor)" + + " select zoneID, case when z.roadTypeID=2 then 8 else 9 end, (rampFraction*SHOAllocFactor) as SHOAllocFactor" + + " from zoneRoadType z" + + " inner join roadType r using (roadTypeID)" + + " where z.roadTypeID in (2,4)"; + SQLRunner.executeSQL(executionDB,sql); + + // Regular roads get SHO scaled by (1-rampFraction) + sql = "update zoneRoadType, roadType set SHOAllocFactor=(1-rampFraction)*SHOAllocFactor" + + " where zoneRoadType.roadTypeID = roadType.roadTypeID" + + " and zoneRoadType.roadTypeID in (2,4)"; + SQLRunner.executeSQL(executionDB,sql); + } + } + + // Build the calendar year selections + fillYearsAndModelYears(executionDB,years); + + // Build the month selection + sql = "TRUNCATE RunSpecMonth"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecMonth (monthID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=months.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the month group selection + sql = "TRUNCATE RunSpecMonthGroup"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecMonthGroup (monthGroupID) " + + "SELECT DISTINCT monthGroupID FROM MonthOfAnyYear, RunSpecMonth " + + "WHERE MonthOfAnyYear.monthID = RunSpecMonth.monthID"; + SQLRunner.executeSQL(executionDB,sql); + // Build the days selections + sql = "TRUNCATE RunSpecDay"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecDay (dayID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=days.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the hours selections + sql = "TRUNCATE RunSpecHour"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecHour (hourID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=hours.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the hour day selections + sql = "TRUNCATE RunSpecHourDay"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecHourDay (HourDayID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=hourdays.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + // Build the processes selections + sql = "TRUNCATE RunSpecProcess"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecProcess (processID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator i = targetProcesses.iterator(); i.hasNext();) { + statement.setInt(1,((EmissionProcess)(i.next())).databaseKey); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the pollutants selections + sql = "TRUNCATE RunSpecPollutant"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecPollutant(pollutantID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator i = targetPollutants.iterator(); i.hasNext();) { + statement.setInt(1,((Pollutant)i.next()).databaseKey); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the pollutants processes selections + sql = "TRUNCATE RunSpecPollutantProcess"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecPollutantProcess(polProcessID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator i = targetPollutantProcesses.iterator(); i.hasNext();) { + statement.setInt(1,((Integer)(i.next())).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + // Build the states selections + sql = "TRUNCATE RunSpecState"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecState (stateID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=states.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the counties selections + sql = "TRUNCATE RunSpecCounty"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecCounty (countyID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=counties.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the zones selections + sql = "TRUNCATE RunSpecZone"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecZone (zoneID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=zones.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the links selections + sql = "TRUNCATE RunSpecLink"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecLink (linkID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=links.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + + // Build RunSpecChainedTo + /** NR_IMP: need to get this query for onroad based on new PollutantProcessAssoc **/ + sql = "TRUNCATE RunSpecChainedTo"; + SQLRunner.executeSQL(executionDB,sql); + sql = "insert into RunSpecChainedTo (" + + " outputPolProcessID, outputPollutantID, outputProcessID," + + " inputPolProcessID, inputPollutantID, inputProcessID)" + + " select ppa.polProcessID, ppa.pollutantID, ppa.processID," + + " ppaIn.polProcessID, ppaIn.pollutantID, ppaIn.processID" + + " from PollutantProcessAssoc ppa" + + " inner join PollutantProcessAssoc ppaIn " + + " on (ppaIn.polProcessID=ppa.chainedto1 or ppaIn.polProcessID=ppa.chainedto2)"; + SQLRunner.executeSQL(executionDB,sql); + + // Build RunSpecNonRoadChainedTo + /** NR_IMP: need to get this query for nonroad based on new PollutantProcessAssoc **/ + sql = "TRUNCATE RunSpecNonRoadChainedTo"; + SQLRunner.executeSQL(executionDB,sql); + sql = "insert into RunSpecNonRoadChainedTo (" + + " outputPolProcessID, outputPollutantID, outputProcessID," + + " inputPolProcessID, inputPollutantID, inputProcessID)" + + " select ppa.polProcessID, ppa.pollutantID, ppa.processID," + + " ppaIn.polProcessID, ppaIn.pollutantID, ppaIn.processID" + + " from PollutantProcessAssoc ppa" + + " inner join PollutantProcessAssoc ppaIn " + + " on (ppaIn.polProcessID=ppa.chainedto1 or ppaIn.polProcessID=ppa.chainedto2)"; + SQLRunner.executeSQL(executionDB,sql); + } catch(SQLException e) { + final String eol = System.getProperty("line.separator"); + Logger.logSqlError(e,"An SQL exception occurred while building the runspec filter "+ + "tables.", sql); + } finally { + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, defaultDB); + defaultDB = null; + } + if(executionDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION, executionDB); + executionDB = null; + } + } + } + + /** + * Builds location-centric filter tables used in queries to limit the items used + * in calculations. + * @throws InterruptedException If the active thread is interrupted. + **/ + void buildLocationFilterTables() throws InterruptedException { + String sql = ""; + PreparedStatement statement = null; + Connection defaultDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + Connection executionDB = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + try { + // Build the states selections + sql = "TRUNCATE RunSpecState"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecState (stateID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=states.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the counties selections + sql = "TRUNCATE RunSpecCounty"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecCounty (countyID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=counties.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the zones selections + sql = "TRUNCATE RunSpecZone"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecZone (zoneID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=zones.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + // Build the links selections + sql = "TRUNCATE RunSpecLink"; + SQLRunner.executeSQL(executionDB,sql); + sql = "INSERT INTO RunSpecLink (linkID) VALUES (?)"; + statement = executionDB.prepareStatement(sql); + for(Iterator iter=links.iterator();iter.hasNext();) { + statement.setInt(1,((Integer)iter.next()).intValue()); + SQLRunner.executeSQL(statement,sql); + } + statement.close(); + } catch(SQLException e) { + final String eol = System.getProperty("line.separator"); + Logger.logSqlError(e,"An SQL exception occurred while building the runspec filter "+ + "tables.", sql); + } finally { + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, defaultDB); + defaultDB = null; + } + if(executionDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION, + executionDB); + executionDB = null; + } + } + } + + /** + * Return the number of iterations to be performed. + * @return the number of iterations to be performed + **/ + int getHowManyIterationsWillBePerformed() { + if(targetRunSpec.outputEmissionsBreakdownSelection.estimateUncertainty) { + return targetRunSpec.outputEmissionsBreakdownSelection.numberOfIterations; + } + return 1; + } + + /** + * Return whether uncertainty is to be estimated. + * @return true if uncertainty is to be estimated. + **/ + boolean estimateUncertainty() { + return targetRunSpec.outputEmissionsBreakdownSelection.estimateUncertainty; + } + + /** + * Determine if a class is allowed to execute. The class as well as all of its + * superclasses are checked against classesNotToExecute. + * @param c Class of an object to be checked + * @return true if an object of class c is permitted to be instantiated and used + * within the simulation. + **/ + public static boolean shouldExecute(Class c) { + while(c != null) { + if(theExecutionRunSpec.targetRunSpec.classesNotToExecute.contains(c.getName())) { + return false; + } + c = c.getSuperclass(); + } + return true; + } + + /** + * Determine if an object should preserve its data during the simulation. The object's + * class and all of its superclasses are checked against classesToSaveData. + * @param o an object to be checked + * @return true if the object should save its data. + **/ + public static boolean shouldSaveData(Object o) { + return shouldSaveData(o.getClass()); + } + + /** + * Determine if a class of objects should preserve data during the simulation. The + * class and all of its superclasses are checked against classesToSaveData. + * @param c a class to be checked + * @return true if the object should save its data. + **/ + public static boolean shouldSaveData(Class c) { + while(c != null) { + String name = c.getName(); + //System.out.println("Checking save data: " + name); + if(theExecutionRunSpec.shouldKeepWorkerDatabases + && name.equalsIgnoreCase("gov.epa.otaq.moves.master.framework.EmissionCalculator")) { + //System.out.println("Saving worker data."); + return true; + } + if(theExecutionRunSpec.targetRunSpec.classesToSaveData.contains(name)) { + //System.out.println("Saving master data"); + return true; + } + c = c.getSuperclass(); + } + //System.out.println("Not saving data."); + return false; + } + + /** + * Check the RunSpec's shouldCopySavedGeneratorData flag. + * @return the RunSpec's shouldCopySavedGeneratorData flag + **/ + public static boolean shouldCopySavedGeneratorData() { + return theExecutionRunSpec.targetRunSpec.shouldCopySavedGeneratorData; + } + + /** + * Retrieve the RunSpec's generatorDatabase + * @return the RunSpec's generatorDatabase + **/ + public static DatabaseSelection getSavedGeneratorDatabase() { + return theExecutionRunSpec.targetRunSpec.generatorDatabase; + } + + /** + * Retrieve the RunSpec's classesToSaveData collection + * @return the RunSpec's classesToSaveData collection + **/ + public static TreeSetIgnoreCase getClassesToSaveData() { + return theExecutionRunSpec.targetRunSpec.classesToSaveData; + } + + /** + * Modify the set of links and their average speeds in order to process Mesoscale Lookup + * simulations. The current contents of the Link and LinkAverageSpeed tables are deleted + * and recreated. + * @param executionDB Execution database to be used + **/ + private void createMesoscaleLookupLinks(Connection executionDB) { + String sql = ""; + String[] statements = { + "delete from Link", + "insert into Link (linkID,countyID,zoneID,roadTypeID,linkLength,linkVolume)" + + " select ((zoneID*10+roadTypeID)*100) as linkID," + + " countyID, zoneID, roadTypeID," + + " null as linkLength,null as linkVolume" + + " from Zone," + + " RunSpecRoadType" + + " where roadTypeID=1", + "insert into Link (linkID,countyID,zoneID,roadTypeID,linkLength,linkVolume)" + + " select ((zoneID*10+roadTypeID)*100+avgSpeedBinID) as linkID," + + " countyID, zoneID, roadTypeID," + + " null as linkLength,null as linkVolume" + + " from Zone," + + " RunSpecRoadType," + + " AvgSpeedBin" + + " where roadTypeID<>1", + "delete from LinkAverageSpeed", + "insert into LinkAverageSpeed (linkID,averageSpeed)" + + " select ((zoneID*10+roadTypeID)*100) as linkID,0 as averageSpeed" + + " from Zone," + + " RunSpecRoadType" + + " where roadTypeID=1", + "insert into LinkAverageSpeed (linkID,averageSpeed)" + + " select ((zoneID*10+roadTypeID)*100+avgSpeedBinID) as linkID,avgBinSpeed" + + " from Zone," + + " RunSpecRoadType," + + " AvgSpeedBin" + + " where roadTypeID<>1" + }; + try { + for(int i=0;i'Electricity'" + + " and e.meanBaseRate <= 0" + + " limit 10", + /** + * @issue Warning: Some emission rates are zero for non-electric vehicles + * @explain A scan of the EmissionRate table has revealed suspicious emission + * rates. + **/ + "Some emission rates are zero for non-electric vehicles", + + "select sourceBin.sourceBinID" + + " from fuelType" + + " inner join sourceBin on sourceBin.fuelTypeID=fuelType.fuelTypeID" + + " inner join emissionRateByAge e on e.sourceBinID=sourceBin.sourceBinID" + + " where fuelTypeDesc<>'Electricity'" + + " and e.meanBaseRate <= 0" + + " limit 10", + /** + * @issue Warning: Some emission rates by age are zero for non-electric vehicles + * @explain A scan of the EmissionRateByAge table has revealed suspicious emission + * rates. + **/ + "Some emission rates by age are zero for non-electric vehicles" + }; + boolean result = true; + for(int i=0;i 0) { + /** @nonissue **/ + Logger.log(LogMessageCategory.WARNING,"Warning: " + text); + result = false; + } + } catch(Exception e) { + Logger.logError(e,"Unable to check missing emission rates: " + sql); + return false; + } + } + return result; + } + + /** + * Check if the final aggregation step should be performed. Consider the need to perform + * the aggregation based on calculator information about how pollutants are calculated, + * on user dimension choices such as removing emission process from the output, and the user's + * preference for allowing such an aggregation. + * @return true if final aggregation should be performed on the emission and activity output. + **/ + public boolean shouldDoFinalAggregation() { + // If the user flagged not to perform aggregation, then do not perform it even if needed. + if(targetRunSpec.doNotPerformFinalAggregation) { + Logger.log(LogMessageCategory.INFO,"Final aggregation has been disabled by the user."); + return false; + } + if(TOGSpeciationCalculator.needsFinalAggregation()) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done because TOG speciation was used."); + return true; + } + if(pollutantProcessesNeedingAggregation.size() > 0) { + // If any of these are in the simulation, aggregation is needed. + for(Iterator + i=pollutantProcessesNeedingAggregation.iterator();i.hasNext();) { + PollutantProcessAssociation ip = (PollutantProcessAssociation)i.next(); + if(targetPollutantProcesses.contains(new Integer(ip.getDatabaseKey()))) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec includes " + ip); + return true; + } + } + } + if(pollutantsNeedingAggregation.size() > 0) { + // If any of these are in the simulation, aggregation is needed. + for(Iterator i=pollutantsNeedingAggregation.iterator();i.hasNext();) { + Pollutant ip = (Pollutant)i.next(); + if(targetPollutants.contains(ip)) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec includes " + ip); + return true; + } + } + } + + // If the preaggregation time does not match the output time, then aggregation + // is needed. + if(targetRunSpec.timeSpan.aggregateBy != targetRunSpec.outputTimeStep) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec preaggregates by " + + targetRunSpec.timeSpan.aggregateBy + + " but the output is by " + targetRunSpec.outputTimeStep); + return true; + } + + /* Model year is aggregated on the worker, so master side aggregation is never needed + // No model year output + if(!targetRunSpec.outputEmissionsBreakdownSelection.modelYear) { + return true; + } + */ + /* Fuel type is aggregated on the worker, so master side aggregation is never needed + // No fuel type output (as long as more than one fuel type is to be output) + if(fuelTypes.size() > 1) { + if(!targetRunSpec.outputEmissionsBreakdownSelection.fuelType) { + return true; + } + } + */ + // No emission process output (as long as more than one emission process is to be output) + if(targetProcesses.size() > 1) { + if(!targetRunSpec.outputEmissionsBreakdownSelection.emissionProcess) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec includes " + targetProcesses.size() + + " processes but emission process is not desired in the output."); + return true; + } + } + + // If SCC is selected, Road Type and Source Use Type won't matter for aggregation. + // But, these are done on the workers anyway, so there's nothing special to be done + // for SCC. + + // No road type output (as long as more than one road type is to be output) + if(targetRunSpec.roadTypes.size() > 1) { + if(!targetRunSpec.outputEmissionsBreakdownSelection.roadType) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec includes " + targetRunSpec.roadTypes.size() + + " road types but road type is not desired in the output."); + return true; + } + } + + /* Source type is aggregated on the worker, so master side aggregation is never needed + // No source type output (as long as more than one source type is to be output) + if(sourceTypes.size() > 1) { + if(!targetRunSpec.outputEmissionsBreakdownSelection.sourceUseType) { + return true; + } + } + */ + + // Summarize the arity of the states, counties, and zones. + boolean hasMultipleStates = false; + boolean anyStateHasMultipleCounties = false; + boolean anyCountyHasMultipleZones = false; + ExecutionLocation priorLocation = null; + for(Iterator i=executionLocations.iterator();i.hasNext();) { + ExecutionLocation el = (ExecutionLocation)i.next(); + if(priorLocation == null) { + priorLocation = el; + continue; + } + // Locations are sorted by State, County, Zone, Link, and Road Type. + if(el.stateRecordID != priorLocation.stateRecordID) { + hasMultipleStates = true; + continue; + } + if(el.countyRecordID != priorLocation.countyRecordID) { + anyStateHasMultipleCounties = true; + continue; + } + if(el.zoneRecordID != priorLocation.zoneRecordID) { + anyCountyHasMultipleZones = true; + continue; + } + } + + /* + If the output aggregation is by nation, only aggregate if there is more than one + state, or if the state has more than one county, or if the county has more than + one zone. + */ + if(targetRunSpec.geographicOutputDetail == GeographicOutputDetailLevel.NATION) { + if(hasMultipleStates) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by Nation" + + " and there are multiple states in the output."); + return true; + } + if(anyStateHasMultipleCounties) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by Nation" + + " and there are multiple counties in the output."); + return true; + } + if(anyCountyHasMultipleZones) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by Nation" + + " and there are multiple zones in the output."); + return true; + } + } + + /* + If the output aggregation is by state, only aggregate if there is more than one + county in any state, or if any county has more than one zone. + */ + if(targetRunSpec.geographicOutputDetail == GeographicOutputDetailLevel.STATE) { + if(anyStateHasMultipleCounties) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by State" + + " and there are multiple counties in at least one of the states."); + return true; + } + if(anyCountyHasMultipleZones) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by State" + + " and there are multiple zones in at least one county."); + return true; + } + } + + /* + If the output aggregation is by county, only aggregate if there is more than one + zone in any county. + */ + if(targetRunSpec.geographicOutputDetail == GeographicOutputDetailLevel.COUNTY) { + if(anyCountyHasMultipleZones) { + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done" + + " because the runspec summarizes by County" + + " and there are multiple zones in at least one county."); + return true; + } + } + + // If the output aggregation is by zone or link, there is no required aggregation. + + // Nothing has been found that needs aggregation, but not all calculators have been enforcing + // the registration of items that would require aggregation. Thus, aggregation must occur + // by default just in case it is in fact needed. + Logger.log(LogMessageCategory.INFO,"Final aggregation is being done by default."); + return true; + /* + // If nothing needs aggregation, don't do it. + Logger.log(LogMessageCategory.INFO,"Final aggregation does not need to be done."); + return false; + */ + } + + /** + * Notes that a pollutant is calculated in a way that would benefit from aggregation. + * @param p Pollutant that would generate multiple records with identical human-read + * key fields without aggregation. + **/ + public static void pollutantNeedsAggregation(Pollutant p) { + if(p != null) { + theExecutionRunSpec.pollutantsNeedingAggregation.add(p); + } + } + + /** + * Notes that a pollutant/process is calculated in a way that would benefit from aggregation. + * @param p PollutantProcessAssociation that would generate multiple records with identical + * human-read key fields without aggregation. + **/ + public static void pollutantProcessNeedsAggregation(PollutantProcessAssociation p) { + if(p != null) { + theExecutionRunSpec.pollutantProcessesNeedingAggregation.add(p); + } + } + + /** + * Obtain the name of the output table to be used by the current runspec. + * @return the name of the table to hold emissions + **/ + public static String getEmissionOutputTable() { + return "MOVESOutput"; + } + + /** + * Obtain the name of the activity output table to be used by the current runspec. + * @return the name of the table to hold emissions + **/ + public static String getActivityOutputTable() { + return "MOVESActivityOutput"; + } + + /** + * Obtain the RunSpec attached to the current ExecutionRunSpec. + * @return the RunSpec attached to the current ExecutionRunSpec + **/ + public static RunSpec getRunSpec() { + return theExecutionRunSpec.targetRunSpec; + } + + /** + * Obtain the database that provides scale/domain-specific inputs, such as the + * County Domain database or Project level database. The database selection is + * only returned if a domain that requires it is selected and if the database + * selection has been filled out. + * @return a database to be used or null + **/ + public static DatabaseSelection getDomainInputDatabase() { + Models.ModelCombination mc = Models.evaluateModels(theExecutionRunSpec.targetRunSpec.models); + switch (mc) { + case M1: // ONROAD + if(theExecutionRunSpec.targetRunSpec.domain == ModelDomain.NATIONAL_ALLOCATION) { + return null; + } + DatabaseSelection db = theExecutionRunSpec.targetRunSpec.scaleInputDatabase; + if(db == null || db.databaseName == null || db.databaseName.length() <= 0) { + return null; + } + return db; + case M2: // NONROAD - TODO implment later + break; + default: + break; + } + return null; + } + + /** + * Populate RunSpecYear, RunSpecModelYearAge, RunSpecModelYear, RunSpecNonRoadModelYearAge, + * and RunSpecNonRoadModelYear. + * @param db database to be used + * @param years calendar years required + * @throws SQLException if anything goes wrong + **/ + public static void fillYearsAndModelYears(Connection db, TreeSet years) + throws SQLException { + TreeSet onRoadModelYears = new TreeSet(); + TreeSet offRoadModelYears = new TreeSet(); + String sql = "truncate RunSpecYear"; + SQLRunner.executeSQL(db,sql); + + sql = "truncate RunSpecModelYearAge"; + SQLRunner.executeSQL(db,sql); + + sql = "truncate RunSpecModelYearAgeGroup"; + SQLRunner.executeSQL(db,sql); + + sql = "truncate RunSpecModelYear"; + SQLRunner.executeSQL(db,sql); + + sql = "truncate RunSpecNonRoadModelYearAge"; + SQLRunner.executeSQL(db,sql); + + sql = "truncate RunSpecNonRoadModelYear"; + SQLRunner.executeSQL(db,sql); + + String yearSQL = ""; + for(Iterator i = years.iterator(); i.hasNext();) { + int year = i.next().intValue(); + if(yearSQL.length() > 0) { + yearSQL += ","; + } + yearSQL += "(" + year + ")"; + + // Do on road selections + for(int age=0;age<=30;age++) { // ages 0-30, inclusive + int modelYear = year - age; + Integer modelYearObject = new Integer(modelYear); + if(!onRoadModelYears.contains(modelYearObject)) { + onRoadModelYears.add(modelYearObject); + sql = "insert into RunSpecModelYear (modelYearID) values (" + modelYear + ")"; + SQLRunner.executeSQL(db,sql); + } + sql = "insert into RunSpecModelYearAge (yearID, modelYearID, ageID)" + + " values (" + year + "," + modelYear + "," + age + ")"; + SQLRunner.executeSQL(db,sql); + } + + // Do nonroad selections + for(int age=0;age<=50;age++) { // ages 0-50, inclusive + int modelYear = year - age; + Integer modelYearObject = new Integer(modelYear); + if(!offRoadModelYears.contains(modelYearObject)) { + offRoadModelYears.add(modelYearObject); + sql = "insert into RunSpecNonRoadModelYear (modelYearID) values (" + modelYear + ")"; + SQLRunner.executeSQL(db,sql); + } + sql = "insert into RunSpecNonRoadModelYearAge (yearID, modelYearID, ageID)" + + " values (" + year + "," + modelYear + "," + age + ")"; + SQLRunner.executeSQL(db,sql); + } + } + yearSQL = "insert into RunSpecYear (yearID) values " + yearSQL; + SQLRunner.executeSQL(db,yearSQL); + + sql = "insert into runSpecModelYearAgeGroup (yearID, modelYearID, ageGroupID)" + + " select yearID, modelYearID, ageGroupID" + + " from runSpecModelYearAge rsmya" + + " inner join ageCategory ac on (ac.ageID = rsmya.ageID)"; + SQLRunner.executeSQL(db,sql); + } + + /** + * Populate RunSpecSourceType + * @param db database to be used + * @param sourceTypes source types required + * @throws SQLException if anything goes wrong + **/ + public static void fillSourceTypes(Connection db, TreeSet sourceTypes) + throws SQLException { + String sql = "TRUNCATE RunSpecSourceType"; + SQLRunner.executeSQL(db,sql); + + for(Iterator i = sourceTypes.iterator(); i.hasNext();) { + sql = "insert into RunSpecSourceType (sourceTypeID) values (" + i.next() + ")"; + SQLRunner.executeSQL(db,sql); + } + } + + /** + * Populate RunSpecSector + * @param db database to be used + * @param sectors sectors required + * @throws SQLException if anything goes wrong + **/ + public static void fillSectors(Connection db, TreeSet sectors) + throws SQLException { + String sql = "TRUNCATE RunSpecSector"; + SQLRunner.executeSQL(db,sql); + + for(Iterator i = sectors.iterator(); i.hasNext();) { + sql = "insert into RunSpecSector (sectorID) values (" + i.next() + ")"; + SQLRunner.executeSQL(db,sql); + } + } + + /** + * Populate SQLMacroExpander with information from the execution database. + * @param db database to be used + **/ + public static void setupMacroExpander(Connection db) { + SQLMacroExpander.reset(); + String[] sets = { + "", "select sourceTypeID from RunSpecSourceType", + "", "select roadTypeID from RunSpecRoadType", + "", "select monthID from RunSpecMonth", + "", "select dayID from RunSpecDay", + "", "select hourID from RunSpecHour", + "", "select monthGroupID from RunSpecMonthGroup", + "", "select yearID from RunSpecYear", + "", "select modelYearID from RunSpecModelYear", + "mya.", "select yearID, modelYearID, ageID from RunSpecModelYearAge", + "sf.", "select sourceTypeID, fuelTypeID from RunSpecSourceFuelType", + "", "select hourDayID from RunSpecHourDay", + "", "select stateID from RunSpecState", + "", "select countyID from RunSpecCounty", + "", "select zoneID from RunSpecZone", + "", "select linkID from RunSpecLink", + "", "select pollutantID from RunSpecPollutant", + "", "select processID from RunSpecProcess", + "", "select polProcessID from RunSpecPollutantProcess", + "", "select distinct soakDayID from sampleVehicleSoaking", + "", "select distinct soakDayID as dayTwoPlusSoakDayID from sampleVehicleSoaking where soakDayID>1", + "hd.", "select HourDay.hourDayID as hourDayID, dayID, hourID" + + " from RunSpecHourDay" + + " inner join HourDay using (hourDayID)", + "ppa.", "select PollutantProcessAssoc.polProcessID as polProcessID, processID, pollutantID" + + " from RunSpecPollutantProcess" + + " inner join PollutantProcessAssoc using (polProcessID)", + "mg.", "select monthOfAnyYear.monthID as monthID, monthGroupID" + + " from RunSpecMonth" + + " inner join monthOfAnyYear using (monthID)" + }; + for(int i=0;i iterPollutantProcessAssociations = + pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + if(pollutantProcessAssociation.emissionProcess.databaseKey == 1) { // If it is the Running Exhaust process... + Pollutant p = pollutantProcessAssociation.pollutant; + PollutantDisplayGroup g = p.displayGroup; + if(g == null) { + g = PollutantDisplayGroup.findByPollutantID(p.databaseKey); + p.displayGroup = g; + } + if(g == null || !g.requiresDistance) { + return true; + } + } + } + return false; + } + + /** + * Checks for instantiated and enabled Rate of Progress + * @return true if the RunSpec requires rate of progress + **/ + public static boolean hasRateOfProgress() { + return theExecutionRunSpec.targetRunSpec.hasRateOfProgress(); + } + + /** + * Get the set of locations to be simulated. + * @return List of locations the Master Loop will be executed for. + **/ + public TreeSet getExecutionLocations() { + return executionLocations; + } + + /** + * Convert an expression that references user-space model years into + * standardized model years suitable for joining to effects tables. + * @param expression column or SQL expression that yields a user-space + * model year. + * @return an expression that yields a standardized model year. + **/ + public String convertToStandardModelYear(String expression) { + return modelYearMapper.convertToStandard(expression); + } + + /** + * Convert a SQL fragment that may or may not contain one or + * more references to the MYMAP pseudo function. Statements of + * the form MYMAP(expression) are converted to an expression + * that references stanardized model years. + * @param sqlLine SQL fragment that contains zero or more occurences + * of the MYMAP(expression) statement. + * @return SQL containing expressions that reference standardized + * model years. + **/ + public String findAndConvertModelYearMapping(String sqlLine) { + return modelYearMapper.findAndConvert(sqlLine); + } + + /** + * Used by emission rate mode to provide separate rates for ramps. + * Only rates-first, non-project runs are capable of producing separate output. + * @return true when ramps should have separate output. + **/ + public boolean shouldSeparateRamps() { + if(CompilationFlags.DO_RATES_FIRST && targetRunSpec.domain != ModelDomain.PROJECT) { + return targetRunSpec.shouldSeparateRamps; + } + return false; + } +} diff --git a/gov/epa/otaq/moves/master/framework/ExecutionRunSpecTest.java b/gov/epa/otaq/moves/master/framework/ExecutionRunSpecTest.java new file mode 100644 index 0000000..9b2733a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ExecutionRunSpecTest.java @@ -0,0 +1,108 @@ +/************************************************************************************************** + * @(#)ExecutionRunSpecTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.io.File; +import java.sql.*; +import java.util.Iterator; +import java.util.TreeSet; +import junit.framework.*; + +/** + * Test Case for the ExecutionRunSpec class + * + * @author Cimulus + * @version 2004-02-01 +**/ +public class ExecutionRunSpecTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public ExecutionRunSpecTest(String name) { + super(name); + } + + /** + * Implementes the test case(s). + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException From any of the database operations. + **/ + public void testInitialization() throws InterruptedException, SQLException { + setupExecutionRunSpec(); + + assertTrue("executionLocations is empty", + ExecutionRunSpec.theExecutionRunSpec.executionLocations.size() > 0); + assertTrue("targetProcesses is empty", + ExecutionRunSpec.theExecutionRunSpec.targetProcesses.size() > 0); + } + + /** + * Initializes the static ExecutionRunSpec instance with test data. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If a database error occurs. + **/ + static public void setupExecutionRunSpec() throws InterruptedException, SQLException { + assertTrue(SystemConfiguration.theSystemConfiguration.didLoad); + + DatabaseConnectionManagerTest.deleteNonNecessaryDatabases(); + DatabaseConnectionManagerTest.setupOutputDatabase(); + assertTrue(DatabaseConnectionManager.initializeAll()); + + RunSpec runSpec = new RunSpec(); + +// File sampleRunSpecFile = new File("testdata/SampleRunSpec.xml"); +// assertTrue(sampleRunSpecFile.isFile()); +// RunSpecXML streamer = new RunSpecXML(runSpec); +// streamer.load(sampleRunSpecFile); + + RunSpecTest.setSampleValues(runSpec); + + ExecutionRunSpec.theExecutionRunSpec = new ExecutionRunSpec(runSpec); + ExecutionRunSpec.theExecutionRunSpec.initializeBeforeExecutionDatabase(); + try { + InputDataManager.merge(); + } catch(Exception e) { + fail("Exception merging default into execution database"); + // Nothing can be done here + } + ExecutionRunSpec.theExecutionRunSpec.initializeAfterExecutionDatabase(); + + assertValidity(ExecutionRunSpec.theExecutionRunSpec); + } + + /** + * Asserts that the given ExecutionRunSpec has valid data. + * @param executionRunSpec The ExecutionRunSpec to test. + **/ + static void assertValidity(ExecutionRunSpec executionRunSpec) { + validateContainerContents(ExecutionRunSpec.theExecutionRunSpec.runQueueSCCs, SCC.class); + validateContainerContents(ExecutionRunSpec.theExecutionRunSpec.executionLocations + , ExecutionLocation.class); + validateContainerContents(ExecutionRunSpec.theExecutionRunSpec.targetProcesses + , EmissionProcess.class); + } + + /** + * Asserts that the given container contains no null objects and that all objects + * are of the specified class type. + * @param treeSet The container to test. + * @param requiredClass The class that the objects must be a type of. + **/ + static void validateContainerContents(TreeSet treeSet, Class requiredClass) { + assertNotNull(treeSet); + + for (Iterator i = treeSet.iterator(); i.hasNext();) { + Object object = i.next(); + + assertNotNull(object); + assertEquals(requiredClass, object.getClass()); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/ExtractedDataCache.java b/gov/epa/otaq/moves/master/framework/ExtractedDataCache.java new file mode 100644 index 0000000..dda229f --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ExtractedDataCache.java @@ -0,0 +1,143 @@ +/************************************************************************************************** + * @(#)ExtractedDataCache.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.sql.*; +import java.util.*; +import java.io.*; + +/** + * Cache data files extracted from the master to be sent to workers. + * + * @author Wesley Faler + * @version 2014-04-08 +**/ +public class ExtractedDataCache { + /** Mutex for guarding all shared data **/ + private static Integer mutex = new Integer(101110); + /** Folder holding all cached files **/ + private static File cacheFolder = null; + + static class CacheEntry { + public File file; + public String name; + } + + /** cached CacheEntry objects, keyed by lowercase SQL-based key **/ + private static TreeMap cachedFiles = new TreeMap(); + + /** Establish the folder to hold cache files and do any other required setup. **/ + public static void setup() { + synchronized(mutex) { + if(cacheFolder != null) { + return; + } + cacheFolder = FileUtilities.createTemporaryFolder(null,"ExtDataCache"); + } + } + + /** Remove all cached data **/ + public static void clear() { + synchronized(mutex) { + setup(); + Set keys = cachedFiles.keySet(); + for(Iterator i=keys.iterator();i.hasNext();) { + String key = i.next(); + CacheEntry ce = cachedFiles.get(key); + if(ce != null && ce.file != null) { + FileUtilities.deleteFileWithRetry(ce.file); + } + } + cachedFiles.clear(); + } + } + + /** + * Process a SQL statement that may contain cache directives. Example statements are: + * cache select * from SomeTable into outfile '##SomeTable##'; + * cache(year=##context.yearID##) select * from SomeTable into outfile '##SomeTable##'; + * The latter example actually has the context year changed before it gets to this point, making it + * something such as: + * cache(year=2010) select * from SomeTable into outfile '##SomeTable##'; + * The cache-clause, including its parameters, are part of the file cache key. + * @param db database to be used + * @param sql statement that may or may not contain cache directives + * @param temporaryFolder directory to hold any files copied from the cache + * @return a file in the temporary folder, copied from the cache. If there are no cache directives, + * null is returned. + * @throws SQLException if the SQL syntax is invalid + * @throws IOException if any issues arise copying files + **/ + public static File handle(Connection db,String sql,File temporaryFolder) throws SQLException, IOException { + if(!sql.startsWith("cache") && !sql.startsWith("CACHE") && !sql.startsWith("Cache")) { + return null; + } + // Convert the SQL statement into the cache key. + String cacheKey = sql.toLowerCase(); + CacheEntry ce = null; + synchronized(mutex) { + ce = cachedFiles.get(cacheKey); + } + // If the key is not found or we don't have a file... + if(ce == null) { + // Get the real SQL statement that is after the "cache[(....)]" clause. + sql = sql.substring(5); // get everything past the word "cache" + if(sql.startsWith("(")) { // If we find (, then skip to the matching ) and remove it all. + int index = sql.indexOf(')'); + if(index > 0) { + sql = sql.substring(index+1).trim(); + } + } + // Get the table name in the real SQL and replace it with the cacheFolder path and unique file name + int firstEscapeTextIndex = sql.indexOf("##"); + if(firstEscapeTextIndex < 0) { + return null; + } + int secondEscapeTextIndex = sql.indexOf("##",firstEscapeTextIndex + 2); + if(secondEscapeTextIndex < 0) { + return null; + } + ce = new CacheEntry(); + ce.name = sql.substring(firstEscapeTextIndex + 2, secondEscapeTextIndex).toLowerCase(); // standardize on lower-case names + while(true) { + ce.file = new File(cacheFolder,ce.name + "." + System.currentTimeMillis()); + if(!ce.file.exists()) { + break; + } + try { + Thread.sleep(3); + } catch(InterruptedException e) { + throw new IOException("Thread interrupted while creating unique name for cached file"); + } + } + // Replace backslashes with forward slashes for mysql + String fileName = ce.file.getCanonicalPath().replace('\\', '/'); + sql = sql.substring(0, firstEscapeTextIndex) + fileName + sql.substring(secondEscapeTextIndex + 2); + + // Execute the statement, generating the cached file + SQLRunner.executeSQL(db,sql); + + // Store the cache information + ce.file.deleteOnExit(); + synchronized(mutex) { + cachedFiles.put(cacheKey,ce); + } + } + if(ce == null || ce.file == null) { + return null; + } + File finalFile = new File(temporaryFolder,ce.name); + if(finalFile.exists()) { + FileUtilities.deleteFileWithRetry(finalFile); + } + if(!FileUtilities.copyFile(ce.file,finalFile,true)) { + throw new IOException("Unable to copy " + ce.file.getName() + " to " + finalFile.getName()); + } + return finalFile; + } +} diff --git a/gov/epa/otaq/moves/master/framework/GREETInterface.java b/gov/epa/otaq/moves/master/framework/GREETInterface.java new file mode 100644 index 0000000..d5c9941 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/GREETInterface.java @@ -0,0 +1,663 @@ +/************************************************************************************************** + * @(#)GREETInterface.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.io.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.sql.*; +import gov.epa.otaq.moves.common.StreamGobbler; + +/** + * The interface with GREET class to receive Well To Pump and + * Manufacture/Disposal files. An XML file is created when the + * "Update Well-To-Pump Rates" or "Update Manufacture and Disposal Rates" menu options + * are selected. The Well to Pump file from GREET is imported into the + * GREETWellToPump table, and the Manufacture and Disposal file is imported into + * the GREETManfAndDisposal table. + *
    + * Sample Well to Pump XML file (input file) + *
    + *	<MOVEStoGREET>
    + *		<WellToPump uncertainty="yes">
    + *			<Years>
    + *				<Year id="1999"/>
    + *				<Year id="2000"/>
    + *			</Years>
    + *			<FuelSubTypes>
    + *				<FuelSubType FuelType="Gasoline" description="Reformulated Gasoline (RFG)"/>
    + *				<FuelSubType FuelType="Gasoline" description="Conventional Diesel Fuel"/>
    + *				<FuelSubType FuelType="Diesel Fuel" description="Fischer-Troppes Diesel"/>
    + *			</FuelSubTypes>
    + *		</WellToPump>
    + *	</MOVEStoGREET>
    + * 
    + * + * Sample Manufacture and Disposal XML file (input file) + *
    + * 	<MOVEStoGREET>
    + *		<ManufactureAndDisposal uncertainty="no">
    + *			<Years>
    + *				<Year id="1999"/>
    + *				<Year id="2000"/>
    + *			</Years>
    + *			<ModelYears>
    + *				<ModelYear id="1969"/>
    + *				<ModelYear id="1970"/>
    + *                     ........
    + *				<ModelYear id="2000"/>
    + *			</ModelYears>
    + *			<FuelSubTypes>
    + *				<FuelSubType FuelType="Gasoline" description="Reformulated Gasoline (RFG)"/>
    + *				<FuelSubType FuelType="Gasoline" description="Conventional Diesel Fuel"/>
    + *				<FuelSubType FuelType="Diesel Fuel" description="Fischer-Troppes Diesel"/>
    + *			</FuelSubTypes>
    + *		</ManufactureAndDisposal>
    + * 	</MOVEStoGREET>
    + * 
    + * + * Sample Well to Pump Output Tab Separated file. The values are yearID, pollutantID, + * fuelSubTypeID, and emissionRate respectively. These values are then + * stored into the GREETWellToPump table. The last field if the GREETWellToPump + * table, emissionRateUncertainty will remain NULL. + *
    + *	1990	5	10	1476.89
    + *	1991	5	10	1477.63
    + *	1992	5	10	1478.37
    + *	1993	5	10	1479.11
    + *	1994	5	10	1479.86
    + *       ............
    + * 
    + * + * Sample Manufacture and Disposal Output Tab Separated file. The values are GREETVehicleType, modelYearID, + * pollutantID, emissionStage, and emissionPerVehicle respectively. These values are then + * stored into the GREETManfAndDisposal table. + *
    + *	1	1970	5	MANF	295.258
    + *	1	1970	5	CONS	295.258
    + *	1	1970	5	DISP	295.258
    + *	1	1971	5	MANF	295.408
    + *	1	1971	5	CONS	295.408
    + *       ............
    + * 
    + * + * There are three command line parameters for GREETWTPStub GREETMfgStub, + * the input file name, the output file name, and the errors file name. + * Typical command lines are as follows: + *
    + * GREETWTPStub.exe C:\WTPInput.xml C:\WTPOutput.dat C:\WTPErrors.txt
    + * GREETMfgStub.exe C:\MfgInput.xml C:\MfgOutput.dat C:\MfgErrors.txt
    + * 
    + * + * @author Wesley Faler + * @author EPA-elg + * @author EPA-Mitch C. + * @version 2009-03-30 +**/ +public class GREETInterface { + /** the current runspec to get the selected information **/ + RunSpec runspec; + + /** Integer modelYears calculated from calendar years and ages **/ + TreeSet modelYears = new TreeSet(); + + /** fuelTypeID Integers **/ + TreeSet fuelTypes = new TreeSet(); + + /** uncertainty as selectd by the user **/ + boolean doUncertainty = false; + String doUncertaintyText = "no"; + + /** name of database to store GreetWelltoPumpTable + * (and eventually GREETManfAndDisposal table) + * as input by user **/ + String userDatabaseName = null; + + /** a class for the information about fuels retrieved from the database tables **/ + class FuelInfo implements Comparable { + public String fuelTypeID; + public String fuelTypeDesc; + public String fuelSubTypeID; + public String fuelSubTypeDesc; + + public int compareTo(Object other) { + FuelInfo o = (FuelInfo)other; + if(!fuelTypeID.equals(o.fuelTypeID)) { + return fuelTypeID.compareTo(o.fuelTypeID); + } + if(!fuelTypeDesc.equalsIgnoreCase(o.fuelTypeDesc)) { + return fuelTypeDesc.compareTo(o.fuelTypeDesc); + } + if(!fuelSubTypeID.equals(o.fuelSubTypeID)) { + return fuelSubTypeID.compareTo(o.fuelSubTypeID); + } + if(!fuelSubTypeDesc.equalsIgnoreCase(o.fuelSubTypeDesc)) { + return fuelSubTypeDesc.compareTo(o.fuelSubTypeDesc); + } + return 0; + } + } + + /** FuelInfo objects retrievesd from the MOVESDefault database **/ + TreeSet fuels = new TreeSet(); + + /** Integer ageIDs retrieved from the MOVESDefault database **/ + TreeSet ageIDs = new TreeSet(); + + /** + * Constructor + * @param runspecToUse RunSpec object that should be examined for years, fuel types, + * and model years. + **/ + public GREETInterface(RunSpec runspecToUse) { + runspec = runspecToUse; + getYearAndFuelInfo(); + } + + /** + * Get Years and Fuel information. The fuelTypeID, fuelTypeDesc, fuelSubTypeID, + * and fuelSubTypeDesc fields are retrieved from the fuelType and fuelSubType + * tables, and stored into the fuels Treeset. The ageID from the ageCategory + * table is stored into the ageIDs Treeset. The ageIDs are then used to calculate the + * modelYears. + * @return true if the fields are retrieved successfully from the database, + * false otherwise. + **/ + public boolean getYearAndFuelInfo() { + for(Iterator i = runspec.onRoadVehicleSelections.iterator(); + i.hasNext();) { + OnRoadVehicleSelection onRoadVehicleSelection = (OnRoadVehicleSelection) i.next(); + fuelTypes.add(new Integer(onRoadVehicleSelection.fuelTypeID)); + } + String sql = "SELECT FuelType.fuelTypeID, fuelTypeDesc, " + + "fuelSubTypeID, fuelSubTypeDesc " + + "FROM FuelType, FuelSubType " + + "WHERE FuelType.fuelTypeID = FuelSubType.fuelTypeID "; + + String andClause = "AND FuelType.fuelTypeID IN ("; + String fuelTypesSQL = ""; + boolean isFirst = true; + for(Iterator i=fuelTypes.iterator();i.hasNext();) { + Integer fuelTypeID = (Integer)i.next(); + if(!isFirst) { + fuelTypesSQL += ","; + } + isFirst = false; + fuelTypesSQL += fuelTypeID; + } + andClause += fuelTypesSQL + ")"; + if (fuelTypesSQL != "") { + sql += andClause; + } + + Connection defaultDatabase = null; + try { + defaultDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + ResultSet result = SQLRunner.executeQuery(defaultDatabase, sql); + while(result.next()) { + FuelInfo fuel = new FuelInfo(); + fuel.fuelTypeID = result.getString("fuelTypeID"); + fuel.fuelTypeDesc = result.getString("fuelTypeDesc"); + fuel.fuelSubTypeID = result.getString("fuelSubTypeID"); + fuel.fuelSubTypeDesc = result.getString("fuelSubTypeDesc"); + fuels.add(fuel); + } + result.close(); + + sql = "SELECT ageID from AgeCategory;"; + result = SQLRunner.executeQuery(defaultDatabase, sql); + while(result.next()) { + ageIDs.add(new Integer(result.getInt("ageID"))); + } + result.close(); + } catch(Exception e) { + /** @nonissue **/ + Logger.logError(e,"Unable to get the Execution Database connection or SQL is wrong in" + + " GREET Interface."); + return false; + } finally { + if(defaultDatabase != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDatabase); + defaultDatabase = null; + } + } + + for(Iterator i = runspec.timeSpan.years.iterator(); i.hasNext(); ) { + Integer y = (Integer)i.next(); + for(Iterator j = ageIDs.iterator(); j.hasNext(); ){ + Integer a = (Integer)j.next(); + modelYears.add(new Integer(y.intValue() - a.intValue())); + } + } + return true; + } + + /** + * Interface with GREET for the purpose of getting updates emission rates + * for the Well-to-Pump process. This involves interacting with the user + * and the currently loaded RunSpec. The commandLineParameters is an array + * of String type variables. The input file name is assigned to the first + * element, the output file name is assigned to the second element, and the + * third element is assigned to the third element. The user is prompted for + * Uncertainty. Then the function importAndStoreGREETData is called to + * import the data and to store the data into the GREETWellToPump table. + * The execution file names for GREETWTPApplication application is + * obtained from the System Configuration file. + **/ + public void updateWellToPumpRates() { + // make sure runspec contains the input information that will be needed + if(runspec.timeSpan.years.isEmpty()) { + /** @nonissue **/ + JOptionPane.showMessageDialog(null, "RunSpec must specify at least one calendar year.", + "Runspec Calendar Years Error", JOptionPane.ERROR_MESSAGE); + return; + } + + if (fuelTypes.isEmpty()) { + /** @nonissue **/ + JOptionPane.showMessageDialog(null, "RunSpec must specify at least sourcetype-fueltype.", + "Runspec Fuels Error", JOptionPane.ERROR_MESSAGE); + return; + } + + String[] commandLineParameters = new String[3]; + //first parameter is the input file + File inputFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "WTPInput.xml"); + try { + commandLineParameters[0] = inputFile.getCanonicalPath(); + } catch (IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get input file"); + } + //second parameter is the output file + File outputFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "WTPOutput.dat"); + try { + commandLineParameters[1] = outputFile.getCanonicalPath(); + } catch (IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get output file"); + } + //third parameter is the error file + File errorsFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "WTPErrors.txt"); + try { + commandLineParameters[2] = errorsFile.getCanonicalPath(); + } catch(IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get error file"); + } + + // Ensure files we will write into don't already exist + try { + inputFile.delete(); + } catch(Exception e) { + // It is not an error if inputFile did not exist + } + try { + outputFile.delete(); + } catch(Exception e) { + // It is not an error if outputFile did not exist + } + try { + errorsFile.delete(); + } catch(Exception e) { + // It is not an error if errorsFile did not exist + } +// This is commented out for now in the model. +// promptForUncertainty(); + promptForDatabaseName(); + writeWellToPump(inputFile); + try { + runApplication(SystemConfiguration.getTheSystemConfiguration().GREETWTPApplication, + commandLineParameters, + SystemConfiguration.getTheSystemConfiguration().GREETDirectory); + } catch(IOException ioe) { + /** @nonissue **/ + Logger.logError(ioe,"Unable to process IO command"); + } catch(InterruptedException ie) { + /** @nonissue **/ + Logger.logError(ie,"runApplication failed"); + } + String createFields = "(yearID SMALLINT, pollutantID SMALLINT," + + "fuelSubTypeID SMALLINT, emissionRate FLOAT, emissionRateUncertainty FLOAT) "; + importAndStoreGREETData(inputFile, outputFile, errorsFile, "GREETWellToPump", createFields); + } + + /** + * Interface with GREET for the purpose of getting updates emission rates + * for the Manufacture and disposal process. This involves interacting with the user + * and the currently loaded RunSpec. The commandLineParameters is an array + * of String type variables. The input file name is assigned to the first + * element, the output file name is assigned to the second element, and the + * third element is assigned to the third element. The user is prompted for + * Uncertainty. Then the function importAndStoreGREETData is called to + * import the data and to store the data into the GREETManfAndDisposal table. + * The execution file names for GREETManufactureAndDisposal application is + * obtained from the System Configuration file. + **/ + public void updateManufactureDisposalRates() { + String[] commandLineParameters = new String[3]; + //first parameter is the input file + File inputFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "MfgInput.xml"); + try { + commandLineParameters[0] = inputFile.getCanonicalPath(); + } catch (IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get the input file"); + } + //second parameter is the output file + File outputFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "MfgOutput.dat"); + try { + commandLineParameters[1] = outputFile.getCanonicalPath(); + } catch (IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get the output file"); + } + //third parameter is the error file + File errorsFile = new File(SystemConfiguration.getTheSystemConfiguration().GREETDirectory, + "MfgErrors.txt"); + try { + commandLineParameters[2] = errorsFile.getCanonicalPath(); + } catch(IOException exception) { + /** @nonissue **/ + Logger.logError(exception,"Unable to get the error file"); + } + + // Ensure files we will write into don't already exist + try { + inputFile.delete(); + } catch(Exception e) { + // It is not an error if inputFile did not exist + } + try { + outputFile.delete(); + } catch(Exception e) { + // It is not an error if outputFile did not exist + } + try { + errorsFile.delete(); + } catch(Exception e) { + // It is not an error if errorsFile did not exist + } +// This is commented out for now in the model. +// promptForUncertainty(); + + writeManufactureDisposal(inputFile); + + try { + runApplication + (SystemConfiguration.getTheSystemConfiguration().GREETManufactureApplication, + commandLineParameters, + SystemConfiguration.getTheSystemConfiguration().GREETDirectory); + } catch(IOException ioe) { + /** @nonissue **/ + Logger.logError(ioe,"Unable to get the input, output, error files"); + } catch(InterruptedException ie) { + /** @nonissue **/ + Logger.logError(ie,"Execution of the GREET application failed"); + } + String createFields = "(GREETVehicleType SMALLINT," + + "modelYearID SMALLINT, pollutantID SMALLINT, " + + "EmissionStage CHAR(4), emissionPerVehicle FLOAT NULL)"; + importAndStoreGREETData(inputFile, outputFile, errorsFile, "GREETManfAndDisposal", createFields); + } + + /** + * Ask the user if uncertainty calculations are desired and set doUncertainty + * and doUncertaintyText accordingly. + **/ + void promptForUncertainty() { + int answer = JOptionPane.showConfirmDialog(null, + StringUtilities.wrapString( + "Do you want to handle uncertainty using Crystal Ball?",25), + "Uncertainty?",JOptionPane.YES_NO_OPTION); + if(answer == JOptionPane.YES_OPTION) { + doUncertainty = true; + doUncertaintyText = "yes"; + } else { + doUncertainty = false; + doUncertaintyText = "no"; + } + } + + /** + * Ask the user for the name of a database for the updated emission rates from GREET. + * Intent is that this will subsequently be used as a user input database to MOVES + **/ + void promptForDatabaseName() { + while(userDatabaseName == null || userDatabaseName.length() <= 0 || + userDatabaseName.startsWith(" ")) { + userDatabaseName = JOptionPane.showInputDialog( + StringUtilities.wrapString( + "Enter name of database for updated emission rates from GREET",25)); + } + } + + /** + * Synchronous method to execute a given application. + * @param applicationPath Path to the application to run + * @param commandLineParameters The command line parameters to pass to the application. + * @param workingDirectoryPath Path to the directory to use as the current working directory. + * be null. This is closed upon completion. + * @throws IOException If an IO operation fails. + * @throws InterruptedException If the active thread is interrupted. + **/ + void runApplication(File applicationPath, + String[] commandLineParameters, File workingDirectoryPath) + throws IOException, InterruptedException { + // Force reclaimation of memory immediately so that the application we launch has as + // much memory to do its work as possible + Runtime.getRuntime().runFinalization(); + Runtime.getRuntime().gc(); + try { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, "Run " + applicationPath.getName() + " in " + + workingDirectoryPath.getCanonicalPath()); + Logger.log(LogMessageCategory.DEBUG, "Command line = "); + for(int i = 0; i < commandLineParameters.length; i++) { + if(i > 0) { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, ", "); + } + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, commandLineParameters[i]); + } + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, "Command line = "); + String[] commandArray = new String[commandLineParameters.length + 1]; + commandArray[0] = applicationPath.getCanonicalPath(); + for(int i = 0; i < commandLineParameters.length; i++) { + commandArray[i + 1] = commandLineParameters[i]; + } + + Runtime runtime = Runtime.getRuntime(); + Process process = runtime.exec(commandArray, null, workingDirectoryPath); + + if(process != null) { + // Launch two StreamGobbler threads to keep the process's output stream buffers + // empty and prevent the process from hanging. + StreamGobbler errorGobbler = new StreamGobbler( + process.getErrorStream(), "ERROR", null); + + errorGobbler.start(); + + process.waitFor(); + errorGobbler.join(); + } + } finally { + } + } + + /** + * Import a GREET Well To Pump or a GREET Manufacture and Disposal + * file into a temporary table, and then replace into the GREETWellToPump, + * or GREETManfAndDisposal tables. + * @param inputFile The input file, either WTPInput.xml or MfgInput.xml. + * @param outputFile The output file, either WTPOutput.dat or MfgOutput.dat. + * @param errorsFile The errors file, WTPErros.txt. + * @param tableName The table name GREETWellToPump or GREETManfAndDisposal. + * @param createFields A string of fields of the GREETWellToPump or GREETManfAndDisposal + * to be used to create the temporary GREET table. + **/ + void importAndStoreGREETData(File inputFile, File outputFile, File errorsFile, + String tableName, String createFields) { + String sql; + Connection defaultDB = null; + PreparedStatement statement = null; + if(outputFile.length() != 0) { + try { + defaultDB = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + // input databases are not supported by DatabaseConnectionManager + // but we can use connection to MOVESDefault + // it is important, however, not to USE any other database + // or connection, which is returned to pool, is damaged + sql = "CREATE DATABASE IF NOT EXISTS " + userDatabaseName; + SQLRunner.executeSQL(defaultDB, sql); + String tableName2 = userDatabaseName.trim() + "." + tableName; + sql = "DROP TABLE IF EXISTS " + tableName2; + SQLRunner.executeSQL(defaultDB, sql); + sql = "CREATE TABLE IF NOT EXISTS " + tableName2 + createFields; + SQLRunner.executeSQL(defaultDB, sql); + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(outputFile.getCanonicalPath()) + + " INTO TABLE " + tableName2; + SQLRunner.executeSQL(defaultDB, sql); + String messageString = "GREET rates imported successfully into database " + userDatabaseName; + /** @nonissue **/ + JOptionPane.showMessageDialog(null, StringUtilities.wrapString(messageString, 35)); + } catch(Exception e) { + Logger.logError(e, "Storing into " + tableName + " failed."); + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, defaultDB); + } + } + if((outputFile.length() == 0) || (errorsFile.length() !=0)) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, "Error receiving file " + outputFile + + " from GREET"); + } + try { + //inputFile.delete(); + } catch(Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.WARNING, "Failed to delete the " + inputFile + " file"); + } + try { + //outputFile.delete(); + } catch(Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.WARNING, "Failed to delete the " + outputFile + " file"); + } + try { + //errorsFile.delete(); + } catch(Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.WARNING, "Failed to delete the " + errorsFile + " file"); + } + } + + /** + * Write the Well To Pump XML file + * @param inputFile file to be filled with XML + * @return true if file is written successfully, false if the XML is not + * created successfully + **/ + boolean writeWellToPump(File inputFile) { + PrintWriter printWriter = null; + try { + printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(new + FileOutputStream(inputFile)))); + } catch(Exception e) { + /** @nonissue **/ + Logger.logError(e,"Unable to save the Well To Pump XML file."); + return false; + } + printWriter.println(""); + printWriter.println("\t"); + printWriter.println("\t\t"); + + // we have yearID above from runspec, write a loop to print + for(Iterator i = runspec.timeSpan.years.iterator(); i.hasNext(); ) { + Integer y = (Integer)i.next(); + printWriter.println("\t\t\t"); + } + printWriter.println("\t\t"); + printWriter.println("\t\t"); + for(Iterator i=fuels.iterator();i.hasNext();) { + FuelInfo fi = (FuelInfo) i.next(); + printWriter.println("\t\t\t"); + } + printWriter.println("\t\t"); + printWriter.println("\t"); + printWriter.println(""); + printWriter.close(); + return true; + } + + /** + * Write the Manufacture and Disposal XML file + * @param inputFile file to be filled with XML + * @return true if file is written successfully, false if the XML is not + * created successfully + **/ + boolean writeManufactureDisposal(File inputFile) { + PrintWriter printWriter = null; + try { + printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter( + new FileOutputStream(inputFile)))); + } catch(Exception e) { + /** @nonissue **/ + Logger.logError(e,"Unable to save the Manufacture and Disposal XML file."); + return false; + } + printWriter.println(""); + printWriter.println("\t"); + // we have yearID above from runspec, write a loop to print + // and go back 30 years + printWriter.println("\t\t"); + for(Iterator i = runspec.timeSpan.years.iterator(); i.hasNext(); ) { + Integer y = (Integer)i.next(); + printWriter.println("\t\t\t"); + } + printWriter.println("\t\t"); + printWriter.println("\t\t"); + int n=0; + for(Iterator i = modelYears.iterator(); i.hasNext();) { + printWriter.println("\t\t\t"); + } + printWriter.println("\t\t"); + + printWriter.println("\t\t"); + for(Iterator i=fuels.iterator();i.hasNext();) { + FuelInfo fi = (FuelInfo) i.next(); + printWriter.println("\t\t\t"); + } + printWriter.println("\t\t"); + printWriter.println("\t"); + printWriter.println(""); + printWriter.close(); + return true; + } +} diff --git a/gov/epa/otaq/moves/master/framework/GREETInterfaceTest.java b/gov/epa/otaq/moves/master/framework/GREETInterfaceTest.java new file mode 100644 index 0000000..533cdcc --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/GREETInterfaceTest.java @@ -0,0 +1,172 @@ +/************************************************************************************************** + * @(#)GREETInterfaceTest.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.sql.*; +import java.io.*; +import java.util.*; +import junit.framework.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.implementation.general.*; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +/** + * Test Case for the GREETInterface class + * + * @author Wesley Faler + * @version 2012-11-08 +**/ +public class GREETInterfaceTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public GREETInterfaceTest(String name) { + super(name); + } + + /** sample runspec to test GREETInterface **/ + RunSpec runspec = new RunSpec(); + + /** + * Tests getYearAndFuelInfo() + **/ + public void testGetYearAndFuelInfo() { + runspec = new RunSpec(); + setSampleValues(runspec); + GREETInterface testgi = new GREETInterface(runspec); + } + + /** + * Tests updateWellToPumpRates() + **/ + public void testUpdateWellToPumpRates() { + } + + /** + * Tests updateManufactureDisposalRates() + **/ + public void testUpdateManufactureDisposalRates(RunSpec runspecToUse) { + } + + /** + * Tests WriteWellToPump() + **/ + public void testWriteWellToPump() { + } + + /** + * Tests WriteManufactureDisposal() + **/ + public void testWriteManufactureDisposal() { + } + + /** + * Populates the given RunSpec with a wide range of sample data. + * @param target RunSpec object that should be examined for years, fuel types, + * and model years. + **/ + static void setSampleValues(RunSpec target) { + TimeSpan.loadTimeObjects(); + + target.description = "Test Description"; + target.scale = ModelScale.MACROSCALE; + GeographicSelection testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.COUNTY; + testSelection.textDescription = "Cuyahoga"; + testSelection.databaseKey = 4004; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.COUNTY; + testSelection.textDescription = "Washtenaw"; + testSelection.databaseKey = 4005; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.STATE; + testSelection.textDescription = "Ohio"; + testSelection.databaseKey = 40011; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.STATE; + testSelection.textDescription = "Michigan"; + testSelection.databaseKey = 40010; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.LINK; + testSelection.textDescription = "Link 1"; + testSelection.databaseKey = 1001; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.ZONE; + testSelection.textDescription = "Zone 3"; + testSelection.databaseKey = 20003; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.ZONE; + testSelection.textDescription = "Zone 1"; + testSelection.databaseKey = 20006; + target.geographicSelections.add(testSelection); + testSelection = new GeographicSelection(); + testSelection.type = GeographicSelectionType.ZONE; + testSelection.textDescription = "Zone 2"; + testSelection.databaseKey = 20007; + target.geographicSelections.add(testSelection); + + // Must be careful to use text date values as opposed to millisecond times. Otherwise, a + // small amount of precision will be lost when converted to text and back and the equality + // assertion will fail. + TimeSpan testTimeSpan = new TimeSpan(); + testTimeSpan.years.add(new Integer(2001)); + TimeSpan.Month m = TimeSpan.getMonthByIndex(6); + testTimeSpan.months.add(m); + + for(Iterator i=TimeSpan.allDays.iterator();i.hasNext();) { + TimeSpan.Day d = (TimeSpan.Day)i.next(); + testTimeSpan.days.add(d); + } + testTimeSpan.beginHourID = 12; + testTimeSpan.endHourID = 16; + target.timeSpan = testTimeSpan; + + OnRoadVehicleSelection onRoadVehicleSelection = new OnRoadVehicleSelection(); + onRoadVehicleSelection.fuelTypeID = 1; + onRoadVehicleSelection.fuelTypeDesc = "Fuel BBB"; + + onRoadVehicleSelection.sourceTypeID = 200; + onRoadVehicleSelection.sourceTypeName = "SourceUseType YYY"; + target.onRoadVehicleSelections.add(onRoadVehicleSelection); + RoadType testRoadType = new RoadType(1,"Sample Road Type",Models.ModelCombination.M1); + target.roadTypes.add(testRoadType); + + PollutantProcessAssociation testAssociation = new PollutantProcessAssociation(); + testAssociation.pollutant = new Pollutant(91, "Total Energy Consumption", true, true); + testAssociation.emissionProcess = new EmissionProcess(1, "Running Exhaust", "Y", true, true); + target.pollutantProcessAssociations.add(testAssociation); + + DatabaseSelection testDatabaseSelection = new DatabaseSelection(); + testDatabaseSelection.serverName = "server 1"; + testDatabaseSelection.databaseName = "database 1"; + testDatabaseSelection.userName = DatabaseSelection.SERVER_USER_NAME; + testDatabaseSelection.password = DatabaseSelection.SERVER_PASSWORD; + target.databaseSelectionInputSets.add(testDatabaseSelection); + target.databaseSelectionInputSets.remove(testDatabaseSelection); + + target.geographicOutputDetail = GeographicOutputDetailLevel.STATE; + target.outputEmissionsBreakdownSelection.emissionProcess = false; + target.outputDatabase = new DatabaseSelection(); + target.outputDatabase.databaseName = "JUnitTestOUTPUT"; + target.outputDatabase.serverName = "localhost"; + target.outputTimeStep = OutputTimeStep.MONTH; + target.outputVMTData = true; + target.pmSize = 5; + target.outputFactors.timeFactorsSelected = true; + target.outputFactors.massFactorsSelected = true; + target.outputFactors.timeMeasurementSystem = TimeMeasurementSystem.SECONDS; + target.outputFactors.massMeasurementSystem = MassMeasurementSystem.KILOGRAMS; + } +} diff --git a/gov/epa/otaq/moves/master/framework/Generator.java b/gov/epa/otaq/moves/master/framework/Generator.java new file mode 100644 index 0000000..7b1b683 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/Generator.java @@ -0,0 +1,403 @@ +/************************************************************************************************** + * @(#)Generator.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.io.*; +import java.sql.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; + +/** + * Abstract base class for MOVES Generators. Generators fall between InternalControlStrategys and + * Calculators in the processing flow of MOVES data. Conceptually, they perform the "simulation" + * portion of a simulation run. They simulate, or model, the activity of vehicles over given + * time periods and locations. Generators perform calculations that cannot be easily divided up + * and passed on to worker threads for seperate processing. + * + * @author Wesley Faler + * @version 2014-10-14 +**/ +public abstract class Generator implements MasterLoopable { + /** The EmissionProcess that this Generator applies to **/ + EmissionProcess targetProcess; + + /** True if MasterLoopContext.beginCreatingDeferredBundles has been called **/ + boolean didCallBeginCreatingDeferredBundles = false; + /** Used during iteration when building the list of export files. **/ + File currentExportFilePath = null; + + /** + * Create a bundle for execution by a worker. Prior to calling this + * routine, the Generator should have called MasterLoopContext's + * beginCreatingDeferredBundles(). + * @param context The MasterLoopContext that applies to this execution. + * @param tableNamesToRetrieve set of CMIT tables to be returned to the master + **/ + public void buildBundle(MasterLoopContext context, String[] tableNamesToRetrieve) { + if(!didCallBeginCreatingDeferredBundles) { + didCallBeginCreatingDeferredBundles = true; + context.beginCreatingDeferredBundles(); + } + File temporaryFolderPath = null; + PrintWriter classNameFileWriter = null; + PrintWriter workerSQLFileWriter = null; + PrintWriter flagsFileWriter = null; + Connection executionDB = null; + BundleManifest manifest = null; + + try { + temporaryFolderPath = FileUtilities.createTemporaryFolder( + null, "GeneratorTemp"); + if(temporaryFolderPath == null) { + return; + } + + // Open the classname.txt and worker.sql PrintWriters + File classNameFilePath = new File(temporaryFolderPath, "classname.txt"); + File workerSQLFilePath = new File(temporaryFolderPath, "worker.sql"); + File flagsFilePath = new File(temporaryFolderPath, "flags.txt"); + manifest = new BundleManifest(); + manifest.copyFrom(MOVESEngine.theInstance.masterFragment); + manifest.context = context.toBundleManifestContext(); + manifest.contextForHumans = context.toBundleManifestContextForHumans(); + for(int i=0;i tableDumpFilePaths = new LinkedList(); + + // Invoke this calculator. This will recursively invoke chained calculators. + SQLForWorker masterSQLForWorker = new SQLForWorker(); + generatorExecution(classNameFileWriter + , temporaryFolderPath, executionDB + , tableDumpFilePaths, context, masterSQLForWorker); + + // Add the processing logic to the "worker.sql" file + for(Iterator iter = masterSQLForWorker.processingSQL.iterator(); + iter.hasNext(); ) { + workerSQLFileWriter.println(iter.next().toString()); + } + /* + if(!BundleUtilities.debugTablesOnWorker && !ExecutionRunSpec.shouldSaveData(this)) { + // Add the data cleanup logic to the "worker.sql" file + for(Iterator iter = masterSQLForWorker.cleanupSQL.iterator(); + iter.hasNext(); ) { + workerSQLFileWriter.println(iter.next().toString()); + } + } else { + flagsFileWriter.println("savedata"); + }*/ + + classNameFileWriter.close(); + classNameFileWriter = null; + workerSQLFileWriter.close(); + workerSQLFileWriter = null; + flagsFileWriter.close(); + flagsFileWriter = null; + + try { + manifest.writeToFolder(temporaryFolderPath); + } catch(IOException e) { + /** + * @explain An error occurred while creating the manifest file placed + * into bundles sent to workers. + **/ + Logger.logError(e, "Create manifest file failed."); + return; + } + + tableDumpFilePaths.add(classNameFilePath); + tableDumpFilePaths.add(workerSQLFilePath); + tableDumpFilePaths.add(flagsFilePath); + tableDumpFilePaths.add(manifest.getManifestFile(temporaryFolderPath)); + + MOVESEngine.theInstance.bundler.bundleData(tableDumpFilePaths,DistributedWorkFilePurpose.GENERATOR,""+manifest.bundleNumber); + MOVESEngine.theInstance.notifyListeners(); + + // Remove local data from the database now that it has been extracted and sent + // off to the workers + for(Iterator iter = masterSQLForWorker.localDataRemovalSQL.iterator(); + iter.hasNext(); ) { + String sql = iter.next().toString(); + try { + SQLRunner.executeSQL(executionDB,sql); + } catch(SQLException e) { + Logger.logSqlError(e, "Error removing generated data from the execution database.", sql); + } + } + } finally { + if(classNameFileWriter != null) { + classNameFileWriter.close(); + } + if(workerSQLFileWriter != null) { + workerSQLFileWriter.close(); + } + if(flagsFileWriter != null) { + flagsFileWriter.close(); + } + if(temporaryFolderPath != null) { + FileUtilities.deleteTemporaryFolder(temporaryFolderPath); + } + if(executionDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION, executionDB); + } + } + } + + /** + * Builds a SQL statements for a distributed worker to execute. This is called by + * EmissionCalculator.executeLoop. Implementations of this method should contain uncertainty + * logic when UncertaintyParameters specifies that this mode is enabled. + * @param context The MasterLoopContext that applies to this execution. + * @return The resulting SQL lists as an SQLForWorker object. + **/ + public SQLForWorker doExecute(MasterLoopContext context) { + return null; + } + + /** + * Detects file names encoded in a specific escape sequence: "####" + * This replaces the escape sequence with the full path on the worker system. + * @param originalLine The original line with potential escape sequences. + * @param temporaryFolderPath Indicates the temporary directory to use. + * @return The resulting line with all escape sequences replaced with full paths. + * @throws IOException If there is a file I/O error. + **/ + public String performFilePathReplacements(String originalLine, + File temporaryFolderPath) throws IOException { + while (true) { + final String escapeText = "##"; + + int firstEscapeTextIndex = originalLine.indexOf(escapeText); + if(firstEscapeTextIndex < 0) { + break; + } + int secondEscapeTextIndex = originalLine.indexOf(escapeText, + firstEscapeTextIndex + escapeText.length()); + if(secondEscapeTextIndex < 0) { + break; + } + + String fileName = originalLine.substring( + firstEscapeTextIndex + escapeText.length(), secondEscapeTextIndex); + currentExportFilePath = new File(temporaryFolderPath, fileName); + // Replace backslashes with forward slashes for mysql + fileName = currentExportFilePath.getCanonicalPath().replace('\\', '/'); + originalLine = originalLine.substring(0, firstEscapeTextIndex) + fileName + + originalLine.substring(secondEscapeTextIndex + escapeText.length()); + } + + return originalLine; + } + + /** + * Handles the results from the main processing routine for a single generator. + * @param classNameFileWriter An opened PrintWriter to "classname.txt" which is intended + * for future use where compiled Java .CLASS files are sent to workers for execution. + * @param temporaryFolderPath The path to store table dump files. + * @param executionDB An opened Connection to the Execution Database. + * @param tableDumpFilePaths Adds any table dump files (as File objects) to this LinkList. + * These are files that will get sent to the worker. + * @param context The MasterLoopContext that applies to this execution. + * @param masterSQLForWorker central set of SQL for the worker. Generators should add + * to this object. + **/ + void generatorExecution( + PrintWriter classNameFileWriter, + File temporaryFolderPath, Connection executionDB, LinkedList tableDumpFilePaths, + MasterLoopContext context, SQLForWorker masterSQLForWorker) { + final String eol = System.getProperty("line.separator"); + // Get the sql for the worker + boolean shouldDisplayEmptyExtractedDataQueries = false; + SQLForWorker sqlForWorker = doExecute(context); + if(sqlForWorker == null) { + // This is expected from calculators that skip looping levels, such as + // EnergyConsumptionCalculator that skips the link level for Starts and + // Extended Idle. + return; + } + + String sql = ""; + // Generate any export files + for(Iterator iter = sqlForWorker.dataExportSQL.iterator(); iter.hasNext(); ) { + try { + sql = (String)iter.next(); + if(sql.startsWith("--")) { + continue; + } + // Replace filename.ext with a known path, this also sets the + // currentExportFilePath member + sql = performFilePathReplacements(sql, temporaryFolderPath); + // Generate the table dump and add the file to the export bundler + SQLRunner.executeSQL(executionDB,sql); + if(currentExportFilePath != null) { + tableDumpFilePaths.add(currentExportFilePath); + if(shouldDisplayEmptyExtractedDataQueries && + currentExportFilePath.length() < 1) { + Logger.log(LogMessageCategory.INFO, "Generated empty file: " + + currentExportFilePath.getPath()+"."+eol+sql); + } + currentExportFilePath = null; + } + } catch(SQLException e) { + Logger.logSqlError(e,"A Generator encountered an SQL exception while " + + "exporting data using: ", sql); + } catch(IOException e) { + Logger.logError(e,"A Generator encountered an IO exception while " + + "exporting data to " + currentExportFilePath.getPath()); + } + } + + // Add the local cleanup logic to the master set of SQL + for(Iterator iter = sqlForWorker.localDataRemovalSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + masterSQLForWorker.localDataRemovalSQL.add(sql); + } + + // Add the processing logic to the master set of SQL + for(Iterator iter = sqlForWorker.processingSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + masterSQLForWorker.processingSQL.add(sql); + } + + // Add the data cleanup logic to the master set of SQL + for(Iterator iter = sqlForWorker.cleanupSQL.iterator(); iter.hasNext(); ) { + // Ensure only one semicolon terminates the sql statement, will get errors + // otherwise + sql = (String)iter.next(); + sql.trim(); + if(sql.startsWith("--")) { + continue; + } + if((sql.length() > 0) && (!StringUtilities.isWhitespace(sql))) { + // Ensure this statement ends with a semicolon + if(sql.charAt(sql.length()-1) != ';') { + sql += ';'; + } + } + // add the new cleanup SQL to the beginning of the master list, so as to + // create a stack-like effect wherein calculators processed first are + // cleaned up last. This allows subsequent calculators access to intermediate + // results. + masterSQLForWorker.cleanupSQL.add(0,sql); // add to the beginning + } + } + + /** + * Utility function to intelligently read large EmissionCalculator-centric SQL + * script files. The script files are divided into sections using SQL comments:
    + * + * + * + * + *
    -- Section Test
    -- SQL code here
    -- End Section Test

    + * The system accepts a set of sections of SQL that should be read from the file and + * otherwise processed (see the enabledSectionNames parameter). Sections may be + * nested within sections and may appear more than once within a script file. This + * allows sections of SQL pertinent to a pollutant to be turned on and off within + * sections that are pertinent to a process.
    + * As it is read, the SQL itself is examined for text replacements such as the + * current year and county.
    + * Once the SQL for the desired sections has been found and had textual replacements + * performed, it is examined and placed into the appropriate parts of the SQLForWorker + * object which is a major internal object of the EmissionCalculator class. + * @param context the current MasterLoopContext that is being handled. From this + * context, several standard text replacements are enabled, each replaced with the + * value of the Java expression of the same text: + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    TextDescription
    ##create.tablename##"CREATE TABLE IF NOT EXISTS tablename..." based on + * MOVESExecution database's schema
    ##context.year##yearID of the context's year
    ##context.monthID##database monthID of the context's month
    ##context.dayID##database dayID of the context's month
    ##context.hourID##database hourID of the context's hour
    ##context.iterLocation.stateRecordID##identifies the current State +
    ##context.iterLocation.countyRecordID##identifies the current County +
    ##context.iterLocation.zoneRecordID##identifies the current Zone
    ##context.iterLocation.linkRecordID##identifies the current Link
    ##context.iterLocation.roadTypeRecordID##identifies the current Road Type + *
    ##context.iterProcess.databaseKey##identifies the current + * EmissionProcess

    + * @param replacements additional textual replacements that should be made to the SQL + * statements in the file. Refer to StringUtilities.doReplacements(...) for more details. + * @param sqlScriptFilePath path and file name of the SQL script to be processed + * @param enabledSectionNames names of sections within the SQL script that should be + * handled. Lines in sections outside of these enabled ones are not processed and + * put into sqlForWorker. + * @param sqlForWorker a SQLforWorker object that should be populated with the SQL + * in the script file + * @return true if the script file was found and parsed. This does not indicate that + * the SQL contained therein is valid in any way. + **/ + public boolean readAndHandleScriptedCalculations(MasterLoopContext context, + TreeMapIgnoreCase replacements,String sqlScriptFilePath, + TreeSetIgnoreCase enabledSectionNames,SQLForWorker sqlForWorker) { + boolean shouldSaveData = ExecutionRunSpec.shouldSaveData(Generator.class); + return BundleUtilities.readAndHandleScriptedCalculations(context,replacements, + sqlScriptFilePath,enabledSectionNames, + sqlForWorker,shouldSaveData,getClass().getName()); + } +} diff --git a/gov/epa/otaq/moves/master/framework/GenericCalculatorBase.java b/gov/epa/otaq/moves/master/framework/GenericCalculatorBase.java new file mode 100644 index 0000000..88adebf --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/GenericCalculatorBase.java @@ -0,0 +1,386 @@ +/************************************************************************************************** + * @(#)GenericCalculatorBase.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.RunSpec; + +import java.util.*; +import java.sql.*; + +/** + * Base class for calculators that follow the basic pattern of activity*emissions. + *
    + * Derived classes should pay particular attention to the parameters passed to the constructor: + *
      + *
    • pollutantProcessIDsToUse array of polProcessID strings. These are all the items + * that any instance of this calculator can calculate. These will be filtered during execution + * to only those actually implied by the current RunSpec.
    • + *
    • granularityToUse the granularity (typically MasterLoopGranularity.YEAR) at + * which the calculator runs
    • + *
    • priorityAdjustmentToUse any offset from the MasterLoopPriority.EMISSION_CALCULATOR + * priority to run at, typically 0
    • + *
    • scriptFileNameToUse the name of the script file to use. This should include any + * subdirectory reference. If "" or null, then "database/GenericCalculator.sql" is used.
    • + *
    • additionalSectionNamesToUse names of non-standard script section names that should + * always be enabled for all supported pollutants and processes. If conditions need to be + * placed on which sections are enabled, use the alterReplacementsAndSections(...) routine.
    • + *
    + *
    + * A typical call to the constructor via super() in a derived class would look like:
    + *
    + * public SampleCalculator() {
    + * 	super(new String[]{ "101", "201" }, // HC Running Exhaust and CO Running Exhaust
    + * 		MasterLoopGranularity.YEAR,
    + * 		0, // no offset from the standard MasterLoopPriority.EMISSION_CALCULATOR
    + * 		null, // use default script
    + * 		new String[]{ "Special Section", "Second Special Section" }
    + * 	);
    + * }
    + * 
    + * Such a constructor call will: + *
      + *
    • register the calculator for HC Running Exhaust and CO Running Exhaust
    • + *
    • check the executing RunSpec and only subscribe at all if HC Running Exhaust + * or CO Running Exhaust are requested. If not, then no subscription will occur.
    • + *
    • maintain an internal set of processes and pollutants actually requested by the RunSpec that + * intersect with this instance's abilities. + *
    • subscribe the calculator at MasterLoopGranularity.YEAR granularity
    • + *
    • subscribe the calculator at MasterLoopPriority.EMISSION_CALCULATOR priority
    • + *
    + *
    + * During the looping phase, the intersected set of pollutants and processes is used to + * build the standard replacement strings ##pollutantProcessIDs## and ##pollutantIDs##. + * Also, these replacements are accompanied by several automatically enabled section names: + *
      + *
    • [process name] the human readable name of the current process. For example: + * Running Exhaust
    • + *
    • Process [process ID] the word "Process" followed by a space and the process ID. + * For example: Process 1
    • + *
    • [pollutant name] the human readable name of one of the pollutants supported for + * the current process. Each supported pollutant will get such a section. For example: + * CO
    • + *
    • Pollutant [pollutant ID] the word "Pollutant" followed by a space and the pollutant + * ID of one of the pollutants supported for the current process. Each supported pollutant will + * get such a section. For example: Pollutant 2
    • + *
    + *
    + * The above sections are in addition to any provided by the constructor call of course. + *
    + * Derived classes have the code-level opportunity to alter these replacements and section names + * by overrrding the alterReplacementsAndSections(...) routine. This routine is called immediately + * prior to executing the script file with the replacments and sections. Derived classes are + * free to add, modify, or delete entries from the replacements and section names in this + * routine. + * + * @author Wesley Faler + * @author Gwo Shyu, EPA (minor mods for Task 216) + * @version 2010-10-10 +**/ +public class GenericCalculatorBase extends EmissionCalculator { + /** class to track which pollutants are calculated by this calculator **/ + class Pollutants { + /** emission process the pollutants are related to **/ + EmissionProcess process; + /** comma-separated list of pollutant IDs, setup during subscribeToMe **/ + String pollutantIDs = ""; + /** comma-separated list of polProcessIDs, setup during subscribeToMe **/ + String pollutantProcessIDs = ""; + /** set of Pollutant objects, trimmed during subscribeToMe **/ + TreeSet pollutants = new TreeSet(); + } + + /** + * array of polProcessID strings passed to the constructor. These are all the items + * that any instance of this calculator can calculate. + **/ + String[] pollutantProcessIDs; + /** the granularity (typically MasterLoopGranularity.YEAR) at which the calculator runs **/ + MasterLoopGranularity granularity; + /** + * any offset from the MasterLoopPriority.EMISSION_CALCULATOR priority to run at, + * typically 0 + **/ + int priorityAdjustment; + /** the name of the script file to use. This should include any subdirectory reference **/ + String scriptFileName; + /** + * names of non-standard script section names that should always be enabled for all + * supported pollutants and processes. If conditions need to be placed on which sections + * are enabled, use the alterReplacementsAndSections(...) routine. + **/ + String[] additionalSectionNames; + /** Pollutants objects keyed by process **/ + TreeMap pollutantsByProcess = new TreeMap(); + + /** True during the first time a bundle is created **/ + boolean isFirstExecution = true; + + /** + * Constructor + * @param pollutantProcessIDsToUse array of polProcessID strings. These are all the items + * that any instance of this calculator can calculate. These will be filtered during execution + * to only those actually implied by the current RunSpec. + * @param granularityToUse the granularity (typically MasterLoopGranularity.YEAR) at + * which the calculator runs + * @param priorityAdjustmentToUse any offset from the MasterLoopPriority.EMISSION_CALCULATOR + * priority to run at, typically 0 + * @param scriptFileNameToUse the name of the script file to use. This should include any + * subdirectory reference. If "" or null, then "database/GenericCalculator.sql" is used. + * @param additionalSectionNamesToUse names of non-standard script section names that should + * always be enabled for all supported pollutants and processes. If conditions need to be + * placed on which sections are enabled, use the alterReplacementsAndSections(...) routine. + **/ + public GenericCalculatorBase(String[] pollutantProcessIDsToUse, + MasterLoopGranularity granularityToUse, + int priorityAdjustmentToUse, + String scriptFileNameToUse, + String[] additionalSectionNamesToUse) { + pollutantProcessIDs = pollutantProcessIDsToUse; + granularity = granularityToUse; + priorityAdjustment = priorityAdjustmentToUse; + scriptFileName = scriptFileNameToUse; + if(scriptFileName == null || scriptFileName.length() <= 0) { + scriptFileName = "database/GenericCalculator.sql"; + } + additionalSectionNames = additionalSectionNamesToUse; + + splitPollutantProcessIDs(); + doRegistration(); + } + + /** + * Interpret the pollutantProcessIDs array, finding the polluant IDs and + * process IDs, and building the pollutantsByProcess data structure + **/ + void splitPollutantProcessIDs() { + Connection executionDatabase = null; + try { + executionDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + } catch(Exception e) { + /** @explain A connection to the MOVESExecution database could not be established. **/ + Logger.logError(e,"Unable to get the Execution Database connection"); + return; + } + + for(int i=0;i i=pollutantsByProcess.keySet().iterator();i.hasNext();) { + Pollutants pollutants = (Pollutants)pollutantsByProcess.get(i.next()); + TreeSet usedPollutants = new TreeSet(); + for(Iterator j=pollutants.pollutants.iterator();j.hasNext();) { + Pollutant p = (Pollutant)j.next(); + if(ExecutionRunSpec.theExecutionRunSpec.doesHavePollutantAndProcess( + p,pollutants.process)) { + usedPollutants.add(p); + if(pollutants.pollutantIDs.length() > 0) { + pollutants.pollutantIDs += ","; + } + pollutants.pollutantIDs += p.databaseKey; + + PollutantProcessAssociation assoc = + PollutantProcessAssociation.createByID(p.databaseKey, + pollutants.process.databaseKey); + + if(pollutants.pollutantProcessIDs.length() > 0) { + pollutants.pollutantProcessIDs += ","; + } + pollutants.pollutantProcessIDs += assoc.getDatabaseKey(executionDatabase); + } + } + pollutants.pollutants = usedPollutants; + if(usedPollutants.size() > 0) { + targetLoop.subscribe(this, pollutants.process, granularity, + MasterLoopPriority.EMISSION_CALCULATOR+priorityAdjustment); + } + } + + if(executionDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + } + + /** + * This is an EmissionCalculator override that builds SQL statements for a distributed + * worker to execute. This is called by EmissionCalculator.executeLoop. + * @param context The MasterLoopContext that applies to this execution. + * @return The resulting sql lists as an SQLForWorker object. + **/ + public final SQLForWorker doExecute(MasterLoopContext context) { + Pollutants pollutants = (Pollutants)pollutantsByProcess.get(context.iterProcess); + + if(pollutants == null) { // If the context's process is not supported, then quit + return null; + } + + // Roadtype for start emissions is always 1. + if(context.iterProcess.processName.equalsIgnoreCase("Start Exhaust")) { + if(context.iterLocation.roadTypeRecordID != 1) { + return null; + } + } + + // Roadtype for Extended Idle Exhaust emissions is also always 1 (Task 216). + if(context.iterProcess.processName.equalsIgnoreCase("Extended Idle Exhaust")) { + if(context.iterLocation.roadTypeRecordID != 1) { + return null; + } + } + + // At this point, we know that a supported process is being asked for and since + // subscribeToMe has trimmed the set of pollutants to match those in the RunSpec, + // we can proceed without checking the RunSpec again. + + SQLForWorker sqlForWorker = new SQLForWorker(); + + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + TreeSetIgnoreCase enabledSectionNames = new TreeSetIgnoreCase(); + + replacements.put("##pollutantProcessIDs##",pollutants.pollutantProcessIDs); + replacements.put("##pollutantIDs##",pollutants.pollutantIDs); + + enabledSectionNames.add(pollutants.process.processName); + enabledSectionNames.add("Process " + pollutants.process.databaseKey); + + for(Iterator i=pollutants.pollutants.iterator();i.hasNext();) { + Pollutant p = (Pollutant)i.next(); + enabledSectionNames.add(p.pollutantName); + enabledSectionNames.add("Pollutant " + p.databaseKey); + } + + if(additionalSectionNames != null) { + for(int i=0;iWhen a worker claims a file for processing, it renames the file with an + * IN_PROGRESS status and periodically updates the file's last modified date. If the worker dies + * or looses its network connection, it stops updating the file's date. The Heartbeat Detection + * Thread checks the date on IN_PROGRESS files and renames them with a TO_DO status if the file + * has not been updated for a length of time. If the worker re-starts or gets it connection back, + * it will find that the files has been "reclaimed" by the Master. + * + * @author Wesley Faler + * @version 2017-08-30 +**/ +public class HeartbeatDetectionThread extends MOVESThread { + /** + * Local class that expresses both a file's time stamp and the last time that it + * was detected as changing. + **/ + class ObservedFileStamp { + /** + * The file's time stamp. Don't interpret this value since it is synchronized to + * a different system's clock. + **/ + long fileTimeStamp; + + /** + * The last time that a change in the file's time stamp was observed. + * Upon initial file detection, this is set to the current time. + **/ + Date lastObservedChange; + + /** + * The last time that a file was seen to exist. + * Upon initial file detection, this is set to the current time. + **/ + Date lastSeenToExist; + }; + + /** + * Const value for the length of time that the master will wait before considering a worker + * to be "dead" and reclaiming its work file. + **/ + static public final long WORKER_HEARTBEAT_TIMEOUT_MS = 10 * 60 * 1000; + + /** + * Maximum amount of time the master will let a worker go without having a Worker ID + * file before the master will consider the worker to be dead. + **/ + static public final long WORKER_NO_HEARTBEAT_FILE_TIMEOUT_MS = 10 * 60 * 1000; + + /** Minimum milliseconds allowed between attempts to start a worker if none are present **/ + static public final long MILLS_BETWEEN_WORKER_START_ATTEMPTS = 5 * 60 * 1000; + + /** Number of known active workers **/ + static int howManyActiveWorkers = 0; + + /** True if a new worker can be started whenever workers don't exist **/ + static public boolean isOKToLaunchWorker = true; + + /** + * The last polled state of the worker ID files. + * Maps from String (file name) to ObservedFileStamp (local class) + **/ + TreeMap workerPollResults = new TreeMap(); + + /** the time in milliseconds of the most recent attempt to start a Worker **/ + long lastWorkerStartAttemptTimeMillis = 0; + + /** true if a local worker is detected or has been created **/ + boolean hasLocalWorker = false; + + /** time at which the file scan is deemed to not have occurred frequently enough **/ + long fileScanTimeout = 0; + + /** true after any prior local worker IDs have been removed **/ + boolean didExamineLocalWorkerHistory = false; + + /** + * Standard constructor + **/ + public HeartbeatDetectionThread() { + } + + /** + * Performs thread start up code + * @return Should the thread continue to run + **/ + protected boolean startupInThread() { + return true; + } + + /** + * This performs one iteration of thread functionality. Upon return, the MOVESEngineThread + * will automatically check for termination conditions. + * @return Should the thread continue to run + **/ + protected boolean threadIterationGo() { + try { + threadIterationGoInternal(); + } catch(Exception e) { + /** @nonissue **/ + Logger.logException(LogMessageCategory.ERROR,e); + workerPollResults.clear(); + } catch(Error e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,e.toString()); + workerPollResults.clear(); + } + + return true; + } + + /** + * Called by theadIterationGo() to perform all real work. + **/ + protected void threadIterationGoInternal() { + if(!didExamineLocalWorkerHistory) { + didExamineLocalWorkerHistory = true; + if(!WorkerGUI.hasWorkerOnThisComputer()) { + // Since there is no currently running local worker, clear any + // prior local worker IDs. If there is running local worker, it + // will have already cleared the IDs and setup its own, which + // should not be cleared just yet. + WorkerConfiguration.clearPriorIDs(); + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread !hasWorkerOnThisComputer"); + } + } + + File[] workerIDFiles = SystemConfiguration.getTheSystemConfiguration(). + sharedDistributedFolderPath.listFiles( + DistributedIDBroker.getWorkerIDFilenameFilter()); + if(workerIDFiles == null) { + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread workerIDFiles==null"); + // If we couldn't get a listing, not even an empty listing, then don't + // check timeouts. We couldn't do anything about them anyway since + // the connection to the networked shared folder path is broken. + // Flag the date/time stamps memorized in the previous successful scan as + // valid for one more minute. After that, they should be wiped clean. + if(fileScanTimeout == 0) { + fileScanTimeout = System.currentTimeMillis() + (60*1000); + } + return; + } + //Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread workerIDFiles# "+workerIDFiles.length); + + if(workerIDFiles.length > 0) { // If there are worker heartbeat files found... + // If it has been too long since the last system scan, then reset + // all worker information as the date/time data is out of date. + if(fileScanTimeout > 0 && fileScanTimeout <= System.currentTimeMillis()) { + workerPollResults.clear(); + fileScanTimeout = 0; + } + } + + // First, do a check based on the heartbeat files that are actually present. + // If a dead worker is found at this point, then delete its heartbeat file + // as well as recover its "In Progress" files. + for(int i = 0; i < workerIDFiles.length; i++) { + String workerID = DistributedIDBroker.getIDFromFile(workerIDFiles[i]); + ObservedFileStamp fileStamp = (ObservedFileStamp)workerPollResults.get(workerID); + + if(fileStamp == null) { + fileStamp = new ObservedFileStamp(); + fileStamp.fileTimeStamp = workerIDFiles[i].lastModified(); + fileStamp.lastObservedChange = new Date(); + } else { + if(fileStamp.fileTimeStamp == workerIDFiles[i].lastModified()) { + // Time stamp hasn't changed. Has it been the same for longer than the time out? + Date currentTime = new Date(); + + if(currentTime.getTime() - fileStamp.lastObservedChange.getTime() > + WORKER_HEARTBEAT_TIMEOUT_MS) { + // This worker has timed out. + timeOutWorker(workerIDFiles[i]); + workerPollResults.remove(workerID); + fileStamp = null; + } + } else { + fileStamp.lastObservedChange = new Date(); + fileStamp.fileTimeStamp = workerIDFiles[i].lastModified(); + + //Logger.log(LogMessageCategory.DEBUG, "Observed file timestamp change on " + workerID); + } + } + + if(fileStamp != null) { + fileStamp.lastSeenToExist = new Date(); + workerPollResults.put(workerID, fileStamp); + } + } + + // Second, look again through our worker IDs. This covers workers that we knew + // about previously but that no longer have heartbeat files. If a dead worker + // is found here, then just recover its "In Progress" files (since it doesn't have + // a heartbeat file). + LinkedList workerIDsToRemove = new LinkedList(); + Set knownWorkerIDs = workerPollResults.keySet(); + for(Iterator i=knownWorkerIDs.iterator();i.hasNext();) { + String workerID = (String)i.next(); + ObservedFileStamp fileStamp = (ObservedFileStamp)workerPollResults.get(workerID); + if(fileStamp != null) { + Date currentTime = new Date(); + + if(currentTime.getTime() - fileStamp.lastObservedChange.getTime() > + WORKER_HEARTBEAT_TIMEOUT_MS + || + currentTime.getTime() - fileStamp.lastSeenToExist.getTime() > + WORKER_NO_HEARTBEAT_FILE_TIMEOUT_MS) { + // This worker has timed out. + /** + * @issue Detected dead worker: [*] + * @explain A worker computer has been unresponsive too long. Work assigned + * to that worker will be reclaimed, being made accessible to other workers. + **/ + Logger.log(LogMessageCategory.DEBUG, "Detected dead worker: " + workerID); + timeOutWorker(workerID); + // Remember which workers we've timed out. Removing them from + // workerPollResults right now would upset the Iterator being used. + workerIDsToRemove.add(workerID); + } + } + } + // Remove knowledge of workers that were timed out above. + for(ListIterator i=workerIDsToRemove.listIterator();i.hasNext();) { + String workerID = (String)i.next(); + workerPollResults.remove(workerID); + } + + // Start a worker if needed + if(isOKToLaunchWorker && + workerPollResults.size() <= 0 && MOVESEngine.theInstance != null + && MOVESEngine.theInstance.isRunning()) { + long now = System.currentTimeMillis(); + if(now - lastWorkerStartAttemptTimeMillis >= MILLS_BETWEEN_WORKER_START_ATTEMPTS) { + lastWorkerStartAttemptTimeMillis = now; + if(!hasLocalWorker) { + if(!WorkerGUI.hasWorkerOnThisComputer()) { + WorkerGUI.isStandAlone = false; + WorkerGUI.main(null); // may return without starting another process if + // a worker is already on the local computer. + } + hasLocalWorker = true; + } + } + } + + howManyActiveWorkers = workerPollResults.size(); + // A successful scan was performed, so do not flag the data with an expiration date. + fileScanTimeout = 0; + } + + /** + * Times out the specified worker. Reverts all temporary files it has reserved to the + * "TODO" pool. + * @param workerIDFile File object to the Worker's heartbeat file + **/ + void timeOutWorker(File workerIDFile) { + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread.timeOutWorker file "+workerIDFile.getName()); + String workerID = DistributedIDBroker.getIDFromFile(workerIDFile); + /** + * @issue Detected dead worker: [*] + * @explain A worker computer has been unresponsive too long. Work assigned + * to that worker will be reclaimed, being made accessible to other workers. + **/ + Logger.log(LogMessageCategory.DEBUG, "Detected dead worker: " + workerID); + + if(!workerIDFile.delete()) { + /** + * @issue Failed to delete ID file: [*] + * @explain A worker computer has been unresponsive too long but an error + * occurred while removing its ID file from the shared work folder. + **/ + Logger.log(LogMessageCategory.DEBUG, "Failed to delete ID file: " + workerIDFile.getName()); + } + + timeOutWorker(workerID); + } + + /** + * Times out the specified worker. Reverts all temporary files it has reserved to the + * "TODO" pool. + * @param workerID Unique identifier of the worker as taken from the Worker's heartbeat + * file's name + **/ + void timeOutWorker(String workerID) { + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread.timeOutWorker "+workerID); + + FilenameFilter fileNameFilter = DistributedWorkFileName.buildFileNameFilter + (SystemConfiguration.getTheSystemConfiguration().distributedMasterID, + "*", DistributedWorkFileState.IN_PROGRESS, workerID); + + File[] orphanedProgressFiles = SystemConfiguration.getTheSystemConfiguration(). + sharedDistributedFolderPath.listFiles(fileNameFilter); + + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread.timeOutWorker orphanedProgressFiles# "+orphanedProgressFiles.length); + + for(int i = 0; i < orphanedProgressFiles.length; i++) { + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread.timeOutWorker orphanedProgressFile "+orphanedProgressFiles[i].getName()); + DistributedWorkFileName parsedFileName = DistributedWorkFileName.createFrom( + orphanedProgressFiles[i].getName()); + + if(parsedFileName != null) { + parsedFileName.state = DistributedWorkFileState.TODO; + File newFilePath = new File(orphanedProgressFiles[i].getParent(), + parsedFileName.toString()); + if(!orphanedProgressFiles[i].renameTo(newFilePath)) { + /** + * @issue Failed to rename orphaned file: [*] + * @explain A file marked as in progress by a worker has been declared + * orphaned by a worker that terminated. An attempt to rename the file + * back to TODO has failed. + **/ + Logger.log(LogMessageCategory.DEBUG,"Failed to rename orphaned file: " + orphanedProgressFiles[i].getName()); + } else { + Logger.log(LogMessageCategory.INFO,"HeartbeatDetectionThread.timeOutWorker renamed orphaned file "+orphanedProgressFiles[i].getName()); + } + } else { + Logger.log(LogMessageCategory.DEBUG,"Failed to parse progress file name: " + orphanedProgressFiles[i].getName()); + } + } + } + + /** + * Called directly after ThreadIterationGo. Subclasses typically implement a simple wait + * operation here. + * @throws InterruptedException from use of java.lang.Thread.wait() + **/ + protected void threadIterationWait() throws InterruptedException { + if(workerPollResults.size() <= 1) { + sleep(5 * 1000); + } else { + sleep(20 * 1000); + } + } + + /** Performs all necessary shutdown **/ + protected void shutdownInThread() { + if(WorkerGUI.workerWindow!=null) { + Logger.log(LogMessageCategory.INFO,"Closing workerWindow in HeartbeatDetectionThread.shutdownInThread"); + System.out.flush(); + WorkerGUI.close(); + Logger.log(LogMessageCategory.INFO,"Closed workerWindow in HeartbeatDetectionThread.shutdownInThread"); + System.out.flush(); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/IExportDefaultHandler.java b/gov/epa/otaq/moves/master/framework/IExportDefaultHandler.java new file mode 100644 index 0000000..260167d --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/IExportDefaultHandler.java @@ -0,0 +1,27 @@ +/************************************************************************************************** + * @(#)IExportDefaultHandler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.awt.*; +import javax.swing.*; + +/** + * This interface is implemented by InternalControlStrategy objects that wish to provide + * export operations for default data. + * + * @author Wesley Faler + * @version 2009-10-31 +**/ +public interface IExportDefaultHandler { + /** + * Process a user's request to initiate an export default data operation. + * @param ownerWindow top-level window used as any file dialog owner + * @return true if the import request was handled, even if no data was exported. + * false if the export request should be handled by default logic instead. + **/ + boolean doExportDefault(Frame ownerWindow); +} diff --git a/gov/epa/otaq/moves/master/framework/IImportExportHandler.java b/gov/epa/otaq/moves/master/framework/IImportExportHandler.java new file mode 100644 index 0000000..6aa37e9 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/IImportExportHandler.java @@ -0,0 +1,35 @@ +/************************************************************************************************** + * @(#)IImportExportHandler.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.awt.*; +import javax.swing.*; + +/** + * This interface is implemented by InternalControlStrategy objects that wish to perform + * their own import and export operations. + * + * @author Wesley Faler + * @version 2007-10-07 +**/ +public interface IImportExportHandler { + /** + * Process a user's request to initiate an import operation. + * @param ownerWindow top-level window used as any file dialog owner + * @return true if the import request was handled, even if no data was imported. + * false if the import request should be handled by default logic instead. + **/ + boolean doImport(Frame ownerWindow); + + /** + * Process a user's request to initiate an export operation. + * @param ownerWindow top-level window used as any file dialog owner + * @return true if the import request was handled, even if no data was exported. + * false if the export request should be handled by default logic instead. + **/ + boolean doExport(Frame ownerWindow); +} diff --git a/gov/epa/otaq/moves/master/framework/InputDataManager.java b/gov/epa/otaq/moves/master/framework/InputDataManager.java new file mode 100644 index 0000000..9fba3de --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InputDataManager.java @@ -0,0 +1,4757 @@ +/************************************************************************************************** + * @(#)InputDataManager.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.io.*; +import java.util.*; +import java.sql.*; +import java.lang.*; + +/** + * Moves data from the pristine databases (National, County, and Emission Rate default) to + * temporary databases (Execution Location Database, Execution Emission Rate Database) used for a + * single simulation run . The InputDataManager uses the Execution RunSpec criteria to filter + * the data moved, there by reducing the size of the temporary databases and decreasing the run + * time. + * + * @author Wesley Faler + * @author Sarah Luo, ERG + * @author Don Smith + * @author Mitch C. + * @author Ed Glover William Aikman Mods for NO NO2 SO2 + * @author Tim Hull + * @version 2015-05-22 +**/ +public class InputDataManager { + /** When copying tables, indicates whether missing tables not in the source + * database are allowed and should not cause an error that causes the merge to fail. + **/ + static boolean allowMissingTables = true; + + /** Table-by-table filter settings **/ + public static String NONROAD_TABLE_FILTER_FILE_NAME = "NonroadTableFilter.csv"; + + /** Maximum length of SQL that any portion of a WHERE clause is allowed to be **/ + static final int MAX_SINGLE_CLAUSE_SQL_LENGTH = 7500; + + /** Random number generator for generating uncertainty values **/ + static Random uncertaintyGenerator = new Random(); + + /** Folder used for temporary uncertainty files **/ + static File temporaryFolderPath = null; + + /** Active merge session, if startMergeSession() has been used **/ + static MergeSession mergeSession = null; + + /** + * Validate that required tables are present. Does not check column names and types. + * This uses SchemaInspector. + * @param db The database connection to test. + * @return Boolean true if the specified database contains Default schema. + **/ + static public boolean isDefaultSchemaPresent(Connection db) { + String defaultDatabaseName , dbName ; + SystemConfiguration scfg = SystemConfiguration.theSystemConfiguration ; + + defaultDatabaseName = + scfg.databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName ; + + try { + dbName = db.getCatalog() ; + allowMissingTables = dbName.equalsIgnoreCase( defaultDatabaseName ) ? false : true ; + + return SchemaInspector.isMOVESSchemaPresent(db,false,allowMissingTables ); + } catch( Exception ex ) { + /* + System. out.println("Unable to check schema: " + ex.toString()); + ex.printStackTrace(); + */ + return false ; + } + } + + /** + * Validate that required tables are present. Does not check column names and types. + * This uses SchemaInspector. + * @param db The database connection to test. + * @return Boolean true if the specified database contains Default schema. + **/ + /* + static public boolean isNonRoadDefaultSchemaPresent(Connection db) { + if(!CompilationFlags.USE_NONROAD) { + return false; + } + String defaultDatabaseName , dbName ; + SystemConfiguration scfg = SystemConfiguration.theSystemConfiguration ; + + defaultDatabaseName = + scfg.databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName ; + + try { + dbName = db.getCatalog() ; + allowMissingTables = dbName.equalsIgnoreCase( defaultDatabaseName ) ? false : true ; + + return SchemaInspector.isNonRoadSchemaPresent(db,false,allowMissingTables ); + } catch( Exception ex ) { + //System. out.println("Unable to check schema: " + ex.toString()); + //ex.printStackTrace(); + return false ; + } + } + */ + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's TimeSpan year selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForYears(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.years.iterator(); + iter.hasNext(); ) { + Integer year = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += year.intValue(); + isFirst = false; + // Force each year to be in a separate clause so as to restrict data quantities + // moved in each query. This speeds up MySQL + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause for fuelYearIDs within the years of the current runspec. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForFuelYears(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.fuelYears.iterator(); + iter.hasNext(); ) { + Integer fuelYear = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += fuelYear.intValue(); + isFirst = false; + // Force each fuel year to be in a separate clause so as to restrict data quantities + // moved in each query. This speeds up MySQL + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a modelYearID WHERE clause based on the ExecutionRunSpec's TimeSpan year selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForModelYears(String columnName) { + // Because model years will overlap if done for each calendar year, they must + // be OR'd together in one big query. For calendar years 2010, 2012, and 2000: + // ( (modelYearID <= 2010 and modelYearID >= 1980) + // or (modelYearID <= 2012 and modelYearID >= 1982) + // or (modelYearID <= 2000 and modelYearID >= 1970) ) + // It is believed the above SQL will be smaller than explicitly listing all + // model years. + Vector sqls = new Vector(); + String sql = "("; + boolean hasData = false; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.years.iterator(); + iter.hasNext(); ) { + Integer year = (Integer)iter.next(); + if(hasData) { + sql += " or "; + } + sql += "(" + columnName + "<=" + year + " and " + columnName + ">=" + (year.intValue()-30) + ")"; + hasData = true; + } + if(hasData) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Check a table for presence of data. + * @param destination database connection + * @param tableName table to check + * @return true if there is any data present in the table + **/ + static boolean hasExistingData(Connection destination, String tableName) { + String sql = "select * from " + tableName + " limit 1"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(destination,sql); + return query.rs.next(); + } catch(Exception e) { + Logger.logError(e,"Unable to check for data in " + tableName + " with " + sql); + return false; + } finally { + query.onFinally(); + } + } + + /** + * Builds a WHERE clause based on (fuelRegionID, fuelYearID, monthGroupID) combinations + * that exist in the destination database's fuelSupply table. A clause is created + * for each countyID. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForFuelSupply(Connection destination) { + //System.out.println("buildSQLWhereClauseForFuelSupply..."); + /* + Example clause, one clause per fuelRegionID: + not (fuelRegionID=12345 and ( + (fuelYearID=2010 and monthGroupID in (1,2,3)) + or (fuelYearID=2011 and monthGroupID in (2,4)) + )) + */ + Vector sqls = new Vector(); + String searchSQL = "select distinct fuelRegionID, fuelYearID, monthGroupID" + + " from fuelSupply" + + " order by fuelRegionID, fuelYearID, monthGroupID"; + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + // If all counties have the same fuel years and month groups, a fast + // SQL statement can be used. + boolean hasData = false; + boolean allCountiesMatch = true; + + query.open(destination,searchSQL); + String priorFuelRegionID = ""; + String countyParameters = ""; + String referenceParameters = ""; + while(query.rs.next()) { + hasData = true; + String fuelRegionID = query.rs.getString("fuelRegionID"); + String fuelYearID = query.rs.getString("fuelYearID"); + String monthGroupID = query.rs.getString("monthGroupID"); + if(priorFuelRegionID.length() > 0 && !priorFuelRegionID.equals(fuelRegionID)) { + if(referenceParameters.length() <= 0) { + referenceParameters = countyParameters; + } else if(!referenceParameters.equals(countyParameters)) { + allCountiesMatch = false; + break; + } + countyParameters = ""; + } + priorFuelRegionID = fuelRegionID; + countyParameters += fuelYearID + "|" + monthGroupID + "-"; + } + query.close(); + if(!hasData) { + return sqls; + } + + priorFuelRegionID = ""; + query.open(destination,searchSQL); + String wholeClause = ""; + if(allCountiesMatch) { + TreeSet fuelRegionIDs = new TreeSet(); + TreeSet fuelYearIDs = new TreeSet(); + TreeSet monthGroupIDs = new TreeSet(); + while(query.rs.next()) { + fuelRegionIDs.add(query.rs.getString("fuelRegionID")); + fuelYearIDs.add(query.rs.getString("fuelYearID")); + monthGroupIDs.add(query.rs.getString("monthGroupID")); + } + wholeClause = "(not (fuelRegionID in (" + StringUtilities.getCSV(fuelRegionIDs) + ")" + + " and fuelYearID in (" + StringUtilities.getCSV(fuelYearIDs) + ")" + + " and monthGroupID in (" + StringUtilities.getCSV(monthGroupIDs) + ")))"; + } else { + String priorFuelYearID = ""; + String monthGroupIDs = ""; + String clause = ""; + while(query.rs.next()) { + String fuelRegionID = query.rs.getString("fuelRegionID"); + String fuelYearID = query.rs.getString("fuelYearID"); + String monthGroupID = query.rs.getString("monthGroupID"); + if(!fuelRegionID.equals(priorFuelRegionID)) { + if(clause.length() > 0) { + wholeClause = addToWhereClause(wholeClause,clause + monthGroupIDs + ")))"); + // sqls.add(clause + monthGroupIDs + ")))"); + // System.out.println(clause + monthGroupIDs + ")))"); + } + priorFuelRegionID = fuelRegionID; + priorFuelYearID = fuelYearID; + monthGroupIDs = monthGroupID; + clause = "not (fuelRegionID=" + fuelRegionID + " and (fuelYearID=" + fuelYearID + " and monthGroupID in ("; + } else if(!fuelYearID.equals(priorFuelYearID)) { + clause += monthGroupIDs + ")) or (fuelYearID=" + fuelYearID + " and monthGroupID in ("; + monthGroupIDs = monthGroupID; + priorFuelYearID = fuelYearID; + } else { + monthGroupIDs += "," + monthGroupID; + } + } + if(clause.length() > 0) { + wholeClause = addToWhereClause(wholeClause,clause + monthGroupIDs + ")))"); + // sqls.add(clause + monthGroupIDs + ")))"); + // System.out.println(clause + monthGroupIDs + ")))"); + } + } + sqls.add(wholeClause); + } catch(Exception e) { + Logger.logError(e,"Unable to build fuel supply clauses using: " + searchSQL); + } finally { + query.onFinally(); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's TimeSpan month selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForMonths(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.months.iterator(); + iter.hasNext(); ) { + Integer month = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += month.intValue(); + isFirst = false; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's TimeSpan day selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForDays(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.days.iterator(); + iter.hasNext(); ) { + Integer day = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += day.intValue(); + isFirst = false; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's TimeSpan hour selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForHours(String columnName) { + Vector sqls = new Vector(); + //TreeSet hours = new TreeSet(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.hours.iterator(); + iter.hasNext(); ) { + Integer hour = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += hour.intValue(); + isFirst = false; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's GeographicSelection link selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForLinks(String columnName) { + Vector sqls = new Vector(); + TreeSet linkIDs = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.executionLocations.iterator(); + iter.hasNext(); ) { + ExecutionLocation location = (ExecutionLocation)iter.next(); + linkIDs.add(new Integer(location.linkRecordID)); + } + String sql = ""; + boolean isFirst = true; + for(Iterator iter=linkIDs.iterator();iter.hasNext();) { + Integer id = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += id; + isFirst = false; + if(sql.length() >= MAX_SINGLE_CLAUSE_SQL_LENGTH) { + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + } + if(sql.length() > 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's GeographicSelection zone selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForZones(String columnName) { + Vector sqls = new Vector(); + TreeSet zoneIDs = new TreeSet(); + String sql = ""; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.executionLocations.iterator(); + iter.hasNext(); ) { + ExecutionLocation location = (ExecutionLocation)iter.next(); + zoneIDs.add(new Integer(location.zoneRecordID)); + } + boolean isFirst = true; + for(Iterator iter=zoneIDs.iterator();iter.hasNext();) { + Integer id = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += id; + isFirst = false; + if(sql.length() >= MAX_SINGLE_CLAUSE_SQL_LENGTH) { + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + } + if(sql.length() > 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's PollutantProcessAssociations + * pollutant selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForPollutants(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + + if(ExecutionRunSpec.theExecutionRunSpec.getOutputVMTData() + && !ExecutionRunSpec.theExecutionRunSpec.doesHaveDistancePollutantAndProcess()) { + // Add THC to the pollutants that we bring over + Pollutant p = Pollutant.findByID(1); + if(p != null) { + isFirst = false; + sql += columnName + " IN (" + p.databaseKey; + } + } + + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.pollutantProcessAssociations.iterator(); + iter.hasNext(); ) { + PollutantProcessAssociation selection = (PollutantProcessAssociation)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += selection.pollutant.databaseKey; + isFirst = false; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's PollutantProcessAssociations + * emission process selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForProcesses(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet processes = new TreeSet(); + boolean isFirst = true; + + if(ExecutionRunSpec.theExecutionRunSpec.getOutputVMTData() + && !ExecutionRunSpec.theExecutionRunSpec.doesHaveDistancePollutantAndProcess()) { + // Add Running Exhaust to the processes that we bring over + EmissionProcess p = EmissionProcess.findByID(1); + if(p != null) { + isFirst = false; + sql += columnName + " IN (" + p.databaseKey; + } + } + + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.pollutantProcessAssociations.iterator(); + iter.hasNext(); ) { + PollutantProcessAssociation selection = (PollutantProcessAssociation)iter.next(); + if(!processes.contains(selection.emissionProcess)) { + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += selection.emissionProcess.databaseKey; + isFirst = false; + processes.add(selection.emissionProcess); + } + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's GeographicSelection + * county selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForCounties(String columnName) { + Vector sqls = new Vector(); + TreeSet countyIDs = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.executionLocations.iterator(); + iter.hasNext(); ) { + ExecutionLocation location = (ExecutionLocation)iter.next(); + countyIDs.add(new Integer(location.countyRecordID)); + } + boolean isFirst = true;; + String sql = ""; + for(Iterator iter=countyIDs.iterator();iter.hasNext();) { + Integer id = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += id; + isFirst = false; + if(sql.length() >= MAX_SINGLE_CLAUSE_SQL_LENGTH) { + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + } + if(countyIDs.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the regions of ExecutionRunSpec's GeographicSelection + * county selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForRegions(String columnName) { + Vector sqls = new Vector(); + boolean isFirst = true;; + String sql = ""; + for(Iterator iter=ExecutionRunSpec.theExecutionRunSpec.regions.iterator();iter.hasNext();) { + Integer id = (Integer)iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += id; + isFirst = false; + if(sql.length() >= MAX_SINGLE_CLAUSE_SQL_LENGTH) { + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + } + if(ExecutionRunSpec.theExecutionRunSpec.regions.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's GeographicSelection + * state selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForStates(String columnName) { + Vector sqls = new Vector(); + TreeSet stateIDs = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.executionLocations.iterator(); + iter.hasNext(); ) { + ExecutionLocation location = (ExecutionLocation)iter.next(); + stateIDs.add(new Integer(location.stateRecordID)); + } + String sql = ""; + boolean isFirst = true; + for(Iterator iter=stateIDs.iterator();iter.hasNext();) { + Integer id = (Integer)iter.next(); + if(isFirst) { + sql = columnName + " IN ("; + } else { + sql += ","; + } + sql += id; + isFirst = false; + if(sql.length() >= MAX_SINGLE_CLAUSE_SQL_LENGTH) { + sql += ")"; + sqls.add(sql); + sql = new String(); + isFirst = true; + } + } + if(stateIDs.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the RunSpec's HourDayIDs + * selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForHourDayIDs(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + ResultSet results = null; + Connection defaultDB = null; + TreeSet hourDayIDs = new TreeSet(); + boolean isFirst = true; + try { + defaultDB = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + for(Iterator d = + ExecutionRunSpec.theExecutionRunSpec.days.iterator(); + d.hasNext(); ) { + Integer day = (Integer)d.next(); + for(Iterator h = + ExecutionRunSpec.theExecutionRunSpec.hours.iterator(); + h.hasNext(); ) { + Integer hour = (Integer)h.next(); + if(sql.length()==0) { + sql = "SELECT hourDayID FROM HourDay WHERE "; + } else { + sql += " OR "; + } + sql += "(dayID=" + day + " AND hourID=" + hour + ")"; + } + } + if(sql !="") { + results = SQLRunner.executeQuery(defaultDB,sql); + hourDayIDs.clear(); + while(results.next()) { + hourDayIDs.add(new Integer(results.getInt(1))); + } + sql = ""; + for(Iterator iter = hourDayIDs.iterator();iter.hasNext();) { + Integer hourDayIDInteger = (Integer) iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += hourDayIDInteger.intValue(); + isFirst = false; + } + } + } catch(Exception e) { + /** @explain A connection to the default database could not be established. **/ + Logger.logError(e,"Unable to get the Default Database connection in" + + " InputDataManager for HourDayIDs."); + return null; + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing can be done here + } + results = null; + } + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDB); + defaultDB = null; + } + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's Road Types + * selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForRoadTypes(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + boolean isFirst = true; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getRoadTypes().iterator(); + iter.hasNext(); ) { + RoadType roadTypeSelection = (RoadType)iter.next(); + Integer roadTypeInteger = new Integer(roadTypeSelection.roadTypeID); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += roadTypeInteger.intValue(); + isFirst = false; + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's Pollutant - Process + * selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForPollutantProcessIDs(String columnName) { + Vector sqls = new Vector(); + String sql = columnName + " < 0"; // always bring in representing pollutant/processes + boolean isFirst = true; + + if(ExecutionRunSpec.theExecutionRunSpec.getOutputVMTData() + && !ExecutionRunSpec.theExecutionRunSpec.doesHaveDistancePollutantAndProcess()) { + // Add THC/RunningExhaust to the pollutants that we bring over + isFirst = false; + sql += " OR " + columnName + " IN (101"; + } + + Connection defaultDB = null; + try { + defaultDB = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.pollutantProcessAssociations.iterator(); + iter.hasNext(); ) { + PollutantProcessAssociation selection = (PollutantProcessAssociation)iter.next(); + int polProcessID = selection.getDatabaseKey(defaultDB); + if(isFirst) { + sql += " OR " + columnName + " IN ("; + } else { + sql += ","; + } + sql += polProcessID; + + // NonECNonSO4PM (120) is silently made from NonECPM (118), so include 120 whenever 118 is needed. + if((int)(polProcessID / 100) == 118) { + int newValue = 120*100 + (polProcessID % 100); + sql += "," + newValue; + } + isFirst = false; + } + } catch(Exception e) { + /** @explain A connection to the default database could not be established. **/ + Logger.logError(e,"Unable to get the Default Database connection in" + + " InputDataManager for PollutantProcessIDs."); + return null; + } finally { + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDB); + defaultDB = null; + } + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's Source + * Use Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForSourceUseTypes(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet sourceTypes = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOnRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OnRoadVehicleSelection selection = (OnRoadVehicleSelection)iter.next(); + Integer sourceTypeInteger = new Integer(selection.sourceTypeID); + if(!sourceTypes.contains(sourceTypeInteger)) { + if(sourceTypes.size() == 0) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += sourceTypeInteger.intValue(); + sourceTypes.add(sourceTypeInteger); + } + } + if(sourceTypes.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's NonRoad Source Use Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForNonRoadSourceUseTypes(String columnName) { + Vector sqls = new Vector(); + // Find the source types that relate through NRSCC and NREquipmentType + // based upon fuel/sector combinations in the RunSpec. + String clauses = ""; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOffRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OffRoadVehicleSelection selection = iter.next(); + String t = "(et.sectorID=" + selection.sectorID + " and s.fuelTypeID=" + selection.fuelTypeID + ")"; + if(clauses.length() > 0) { + clauses += " or "; + } + clauses += t; + } + String sql = "select distinct sourceTypeID" + + " from NRSourceUseType sut" + + " inner join NRSCC s on (s.SCC=sut.SCC)" + + " inner join NREquipmentType et on (et.NREquipTypeID=s.NREquipTypeID)" + + " where (" + clauses + ")"; + Connection nrDefaultDatabase = null; + String resultSQL = ""; + boolean isFirst = true; + SQLRunner.Query query = new SQLRunner.Query(); + try { + nrDefaultDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + isFirst = true; + query.open(nrDefaultDatabase,sql); + while(query.rs.next()) { + if(isFirst) { + resultSQL += columnName + " IN ("; + } else { + resultSQL += ","; + } + resultSQL += query.rs.getString("sourceTypeID"); + isFirst = false; + } + query.close(); + } catch(Exception e) { + //do nothing + } finally { + query.onFinally(); + if(nrDefaultDatabase != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + nrDefaultDatabase); + nrDefaultDatabase = null; + } + } + if(!isFirst) { + resultSQL += ")"; + sqls.add(resultSQL); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's Source Fuel + * Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForFuelTypes(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet fuelTypes = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOnRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OnRoadVehicleSelection selection = (OnRoadVehicleSelection)iter.next(); + Integer fuelTypeInteger = new Integer(selection.fuelTypeID); + if(!fuelTypes.contains(fuelTypeInteger)) { + if(fuelTypes.size() == 0) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += fuelTypeInteger.intValue(); + fuelTypes.add(fuelTypeInteger); + } + } + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOffRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OffRoadVehicleSelection selection = iter.next(); + Integer fuelTypeInteger = new Integer(selection.fuelTypeID); + if(!fuelTypes.contains(fuelTypeInteger)) { + if(fuelTypes.size() == 0) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += fuelTypeInteger.intValue(); + fuelTypes.add(fuelTypeInteger); + } + } + if(fuelTypes.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's Source Fuel + * Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForNonroadFuelTypes(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet fuelTypes = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOffRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OffRoadVehicleSelection selection = iter.next(); + Integer fuelTypeInteger = new Integer(selection.fuelTypeID); + if(!fuelTypes.contains(fuelTypeInteger)) { + if(fuelTypes.size() == 0) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += fuelTypeInteger.intValue(); + fuelTypes.add(fuelTypeInteger); + } + } + if(fuelTypes.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's + * Month Group ID selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForMonthGroupIDs(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet monthGroupIDs = new TreeSet(); + Connection defaultDB = null; + ResultSet results = null; + boolean isFirst = true; + String monthIDs[] = new String[12]; + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + if(executionRunSpec.monthGroups.size() > 0) { + monthGroupIDs.addAll(executionRunSpec.monthGroups); + } else { + try { + defaultDB = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + monthGroupIDs.clear(); + sql = ""; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.months.iterator(); + iter.hasNext(); ) { + Integer month = (Integer)iter.next(); + sql = "SELECT DISTINCT monthGroupID FROM monthOfAnyYear WHERE " + + " monthID =" + month.intValue(); + results = SQLRunner.executeQuery(defaultDB, sql); + while (results.next()) { + monthGroupIDs.add(new Integer(results.getInt("monthGroupID"))); + } + } + } catch(Exception e) { + //do nothing + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing can be done here + } + results = null; + } + if(defaultDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDB); + defaultDB = null; + } + } + } + sql = ""; + isFirst = true; + for(Iterator iter = monthGroupIDs.iterator();iter.hasNext();) { + Integer monthGroupIDInteger = (Integer) iter.next(); + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += monthGroupIDInteger.intValue(); + isFirst = false; + } + + if(monthGroupIDs.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's + * Fuel Sub Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForFuelSubTypes(String columnName) { + Vector sqls = new Vector(); + Connection defaultDatabase = null; + String sql = ""; + boolean isFirst = true; + + // E85 air toxics requires E10 information (fuelsubtypeID=12) + boolean forceE10 = false; + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOnRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OnRoadVehicleSelection selection = (OnRoadVehicleSelection)iter.next(); + if(selection.fuelTypeID == 5) { + forceE10 = true; + break; + } + } + if(!forceE10) { + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOffRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OffRoadVehicleSelection selection = iter.next(); + if(selection.fuelTypeID == 5) { + forceE10 = true; + break; + } + } + } + + try { + defaultDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + sql = "SELECT DISTINCT fuelSubTypeID FROM FuelSubType"; + Vector fuelTypeClauses = buildSQLWhereClauseForFuelTypes("FuelTypeID"); + if(fuelTypeClauses.size() > 0) { + sql += " WHERE " + fuelTypeClauses.get(0); + } + isFirst = true; + ResultSet results = SQLRunner.executeQuery(defaultDatabase, sql); + sql = ""; + if(forceE10) { + isFirst = false; + sql += columnName + " IN (12"; + } + while(results.next()) { + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += results.getString("fuelSubTypeID"); + isFirst = false; + } + results.close(); + } catch(Exception e) { + //do nothing + } finally { + if(defaultDatabase != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDatabase); + defaultDatabase = null; + } + } + if(!isFirst) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's + * Nonroad Fuel Sub Type selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForNonroadFuelSubTypes(String columnName) { + Vector sqls = new Vector(); + Connection defaultDatabase = null; + String sql = ""; + boolean isFirst = true; + + try { + defaultDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + sql = "SELECT DISTINCT fuelSubTypeID FROM nrFuelSubType"; + Vector fuelTypeClauses = buildSQLWhereClauseForNonroadFuelTypes("FuelTypeID"); + if(fuelTypeClauses.size() > 0) { + sql += " WHERE " + fuelTypeClauses.get(0); + } + isFirst = true; + ResultSet results = SQLRunner.executeQuery(defaultDatabase, sql); + sql = ""; + while(results.next()) { + if(isFirst) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += results.getString("fuelSubTypeID"); + isFirst = false; + } + results.close(); + } catch(Exception e) { + //do nothing + } finally { + if(defaultDatabase != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + defaultDatabase); + defaultDatabase = null; + } + } + if(!isFirst) { + sql += ")"; + //Logger.log(LogMessageCategory.INFO,"buildSQLWhereClauseForNonroadFuelSubTypes=" + sql); + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's NonRoad sector selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForSectors(String columnName) { + Vector sqls = new Vector(); + String sql = ""; + TreeSet sectors = new TreeSet(); + for(Iterator iter = + ExecutionRunSpec.theExecutionRunSpec.getOffRoadVehicleSelections().iterator(); + iter.hasNext(); ) { + OffRoadVehicleSelection selection = iter.next(); + Integer sectorInteger = new Integer(selection.sectorID); + if(!sectors.contains(sectorInteger)) { + if(sectors.size() == 0) { + sql += columnName + " IN ("; + } else { + sql += ","; + } + sql += sectorInteger.intValue(); + sectors.add(sectorInteger); + } + } + if(sectors.size() != 0) { + sql += ")"; + sqls.add(sql); + } + return sqls; + } + + /** + * Builds a WHERE clause based on the ExecutionRunSpec's NonRoad sector selections. + * @param columnName The name of the column to use in the WHERE clause. As appropriate, + * this could also include a table name qualifier. + * @return Vector of String objects each with the SQL WHERE clause as String. + **/ + static Vector buildSQLWhereClauseForNonRoadEquipmentTypes(String columnName) { + Vector sqls = new Vector(); + Connection nrDefaultDatabase = null; + String resultSQL = ""; + String sql = ""; + boolean isFirst = true; + SQLRunner.Query query = new SQLRunner.Query(); + try { + nrDefaultDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.DEFAULT); + sql = "SELECT DISTINCT NREquipTypeID, surrogateID FROM NREquipmentType"; + Vector sectorClauses = buildSQLWhereClauseForSectors("sectorID"); + if(sectorClauses.size() > 0) { + sql += " WHERE " + sectorClauses.get(0); + } + isFirst = true; + query.open(nrDefaultDatabase,sql); + sql = ""; + TreeSet equipmentTypes = new TreeSet(); + TreeSet surrogateTypes = new TreeSet(); + String surrogateSQL = ""; + while(query.rs.next()) { + if(isFirst) { + resultSQL += columnName + " IN ("; + } else { + resultSQL += ","; + } + int equipmentTypeID = query.rs.getInt("NREquipTypeID"); + equipmentTypes.add(new Integer(equipmentTypeID)); + resultSQL += equipmentTypeID; + isFirst = false; + + int surrogateID = query.rs.getInt("surrogateID"); + if(surrogateID > 0) { + Integer ts = new Integer(surrogateID); + if(!equipmentTypes.contains(ts) && !surrogateTypes.contains(ts)) { + surrogateTypes.add(ts); + if(surrogateSQL.length() > 0) { + surrogateSQL += ","; + } + surrogateSQL += surrogateID; + } + } + } + query.close(); + + if(surrogateSQL.length() > 0) { + sql = "select distinct NREquipTypeID" + + " from NREquipmentType" + + " where NREquipTypeID in (" + surrogateSQL + ")"; + query.open(nrDefaultDatabase,sql); + while(query.rs.next()) { + int equipmentTypeID = query.rs.getInt("NREquipTypeID"); + Integer t = new Integer(equipmentTypeID); + if(!equipmentTypes.contains(t)) { + equipmentTypes.add(t); + resultSQL += "," + equipmentTypeID; + } + } + query.close(); + } + } catch(Exception e) { + //do nothing + } finally { + query.onFinally(); + if(nrDefaultDatabase != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, + nrDefaultDatabase); + nrDefaultDatabase = null; + } + } + if(!isFirst) { + resultSQL += ")"; + sqls.add(resultSQL); + } + return sqls; + } + + /** + * Default constructor + **/ + public InputDataManager() { + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from the default database to the execution + * database based on the ExecutionRunSpec. + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + **/ + public static void merge() throws InterruptedException, SQLException, IOException, Exception { + merge(ModelDomain.NATIONAL_ALLOCATION); + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from the NonRoad default database to the execution + * database based on the ExecutionRunSpec. + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + **/ + public static void mergeNonRoad() throws InterruptedException, SQLException, IOException, Exception { + if(CompilationFlags.USE_NONROAD) { + mergeNonRoad(ModelDomain.NATIONAL_ALLOCATION); + } + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from the default database to the execution + * database based on the ExecutionRunSpec. + * @param domain model domain, required since not all tables are needed for each domain. + * domain may be null, in which case it is treated as a national-level domain. + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + * @return true upon successful merge + **/ + public static boolean merge(ModelDomain domain) + throws InterruptedException, SQLException, IOException, Exception { + Connection inputConnection = null; + Connection executionConnection = null; + + try { + InputDataManager inputDataManager = new InputDataManager(); + inputConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.DEFAULT); + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + // Do not copy the default database's link table's contents when using + // the project domain. Doing so would cause unwanted links to be calculated. + boolean includeLinkTable = domain != ModelDomain.PROJECT; + // Single county and Project domains require the user to provide a complete fuel supply table + // in a domain-level database. As such, do not copy the fuel supply table for those domains. + boolean includeFuelSupply = domain != ModelDomain.SINGLE_COUNTY && domain != ModelDomain.PROJECT; + //System.out.println("merge(domain)"); + inputDataManager.merge(inputConnection, executionConnection, includeLinkTable, includeFuelSupply, true); + return true; + } catch (Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, + "Error while merging default database:" + e.toString()); + e.printStackTrace(); + return false; + } finally { + if (inputConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.DEFAULT, inputConnection); + inputConnection = null; + } + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from the NonRoad default database to the execution + * database based on the ExecutionRunSpec. + * @param domain model domain, required since not all tables are needed for each domain. + * domain may be null, in which case it is treated as a national-level domain. + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + * @return true upon successful merge + **/ + public static boolean mergeNonRoad(ModelDomain domain) + throws InterruptedException, SQLException, IOException, Exception { + if(!CompilationFlags.USE_NONROAD) { + return true; + } + Connection inputConnection = null; + Connection executionConnection = null; + + try { + InputDataManager inputDataManager = new InputDataManager(); + inputConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + executionConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + inputDataManager.mergeNonRoad(inputConnection, executionConnection, true); + return true; + } catch (Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, + "Error while merging default database:" + e.toString()); + e.printStackTrace(); + return false; + } finally { + if (inputConnection != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, inputConnection); + inputConnection = null; + } + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from an input database to the execution + * database based on the ExecutionRunSpec. + * @param userDatabase an input database selected by a user + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + * @return true upon a successful merge + **/ + public static boolean merge(DatabaseSelection userDatabase) throws InterruptedException, + SQLException, IOException, Exception { + //System.out.println("Merging from user supplied database"); + Connection inputConnection = null; + Connection executionConnection = null; + + try { + InputDataManager inputDataManager = new InputDataManager(); + inputConnection = userDatabase.openConnection(); + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + //System.out.println("merge(userDatabase)"); + inputDataManager.merge(inputConnection, executionConnection, true, true, false); + return true; + } catch (Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, + "Error while merging a user database:" + e.toString()); + /** + * @issue Unable to import database [*] + * @explain A database could not be merged into the MOVESExecution database. + * Check the database availability. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to import database " + userDatabase.databaseName); + e.printStackTrace(); + return false; + } finally { + if (inputConnection != null) { + inputConnection.close(); + } + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + /** + * Handles connection checkout/checkin and calls the next merge implementation which actually + * performs the merge. This moves a subset of data from an input database to the execution + * database based on the ExecutionRunSpec. + * @param userDatabase an input database selected by a user + * @throws InterruptedException If the active thread is interrupted + * @throws SQLException If any SQL errors occur. + * @throws IOException If there is an error during any temporary file operations + * @return true upon successful merge + **/ + public static boolean mergeNonRoad(DatabaseSelection userDatabase) throws InterruptedException, + SQLException, IOException, Exception { + //System.out.println("Merging from user supplied NonRoad database"); + Connection inputConnection = null; + Connection executionConnection = null; + + try { + InputDataManager inputDataManager = new InputDataManager(); + inputConnection = userDatabase.openConnection(); + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + //System.out.println("merge(userDatabase)"); + inputDataManager.mergeNonRoad(inputConnection, executionConnection, false); + return true; + } catch (Exception e) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, + "Error while merging a user database:" + e.toString()); + /** + * @issue Unable to import database [*] + * @explain A database could not be merged into the MOVESExecution database. + * Check the database availability. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to import database " + userDatabase.databaseName); + e.printStackTrace(); + return false; + } finally { + if (inputConnection != null) { + inputConnection.close(); + } + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + /** + * Make base tables used for generating input uncertainty in successive iterations. + **/ + public static void makeBaseUncertaintyInput() { + Connection executionConnection = null; + String[] commands = { + // CrankcaseEmissionRatio + "DROP TABLE IF EXISTS CrankcaseEmissionRatioSample", + "CREATE TABLE CrankcaseEmissionRatioSample SELECT polProcessID, minModelYearID, maxModelYearID," + + " sourceTypeID,fuelTypeID,COALESCE(crankcaseRatio,0) AS crankcaseRatio," + + " COALESCE(crankcaseRatioCV,0) as crankcaseRatioCV" + + " FROM CrankcaseEmissionRatio", + + // PM10EmissionRatio + "DROP TABLE IF EXISTS PM10EmissionRatioSample", + "CREATE TABLE PM10EmissionRatioSample SELECT polProcessID, " + + " sourceTypeID,fuelTypeID,COALESCE(PM10PM25Ratio,0) AS PM10PM25Ratio," + + " COALESCE(PM10PM25RatioCV,0) as PM10PM25RatioCV" + + " FROM PM10EmissionRatio", + + // EmissionRate + "DROP TABLE IF EXISTS EmissionRateSample", + "CREATE TABLE EmissionRateSample SELECT sourceBinID, polProcessID, opModeID," + + " COALESCE(meanBaseRate,0) AS meanBaseRate, COALESCE(meanBaseRateCV,0)" + + " AS meanBaseRateCV, COALESCE(meanBaseRateIM,0) AS meanBaseRateIM," + + " COALESCE(meanBaseRateIMCV,0) AS meanBaseRateIMCV, dataSourceID " + + " FROM EmissionRate", + + // EmissionRateByAge + "DROP TABLE IF EXISTS EmissionRateByAgeSample", + "CREATE TABLE EmissionRateByAgeSample SELECT sourceBinID, polProcessID, opModeID," + + " ageGroupID, COALESCE(meanBaseRate,0) AS meanBaseRate," + + " COALESCE(meanBaseRateCV,0) AS meanBaseRateCV, COALESCE(meanBaseRateIM,0)" + + " AS meanBaseRateIM, COALESCE(meanBaseRateIMCV,0) AS meanBaseRateIMCV," + + " dataSourceID" + + " FROM EmissionRateByAge", + + // SulfateEmissionRate + "DROP TABLE IF EXISTS SulfateEmissionRateSample", + "CREATE TABLE SulfateEmissionRateSample SELECT polProcessID, fuelTypeID, " + + "modelYearGroupID, COALESCE(meanBaseRate,0) AS meanBaseRate," + + " COALESCE(meanBaseRateCV,0) AS meanBaseRateCV, " + + " dataSourceId" + + " FROM SulfateEmissionRate", + + // NONO2Ratio + "DROP TABLE IF EXISTS NONO2RatioSample", + "CREATE TABLE NONO2RatioSample SELECT polProcessID, sourceTypeID, " + + " fuelTypeID, modelYearGroupID, COALESCE(NOxRatio,0) AS NOxRatio," + + " COALESCE(NOxRatioCV,0) AS NOxRatioCV, " + + " dataSourceId" + + " FROM NONO2Ratio", + + // methaneTHCRatio + "drop table if exists methaneTHCRatio", + "create table methaneTHCRatioSample" + + " select processID, fuelTypeID, sourceTypeID, modelYearGroupID, ageGroupID," + + " coalesce(CH4THCRatio,0) as CH4THCRatio, coalesce(CH4THCRatioCV,0) as CH4THCRatioCV" + + " from methaneTHCRatio", + + // CumTVVCoeffs + "drop table if exists CumTVVCoeffsSample", + "create table CumTVVCoeffsSample" + + " select regClassID, modelYearGroupID, ageGroupID, polProcessID," + + " coalesce(tvvTermA,0.0) as tvvTermA," + + " coalesce(tvvTermB,0.0) as tvvTermB," + + " coalesce(tvvTermC,0.0) as tvvTermC," + + " coalesce(tvvTermACV,0.0) as tvvTermACV," + + " coalesce(tvvTermBCV,0.0) as tvvTermBCV," + + " coalesce(tvvTermCCV,0.0) as tvvTermCCV," + + " coalesce(tvvTermAIM,0.0) as tvvTermAIM," + + " coalesce(tvvTermBIM,0.0) as tvvTermBIM," + + " coalesce(tvvTermCIM,0.0) as tvvTermCIM," + + " coalesce(tvvTermAIMCV,0.0) as tvvTermAIMCV," + + " coalesce(tvvTermBIMCV,0.0) as tvvTermBIMCV," + + " coalesce(tvvTermCIMCV,0.0) as tvvTermCIMCV" + + " from CumTVVCoeffs", + + // TemperatureAdjustment + "drop table if exists TemperatureAdjustmentSample", + "create table TemperatureAdjustmentSample" + + " select polProcessID, fuelTypeID," + + " coalesce(tempAdjustTermA,0.0) as tempAdjustTermA," + + " coalesce(tempAdjustTermB,0.0) as tempAdjustTermB," + + " coalesce(tempAdjustTermC,0.0) as tempAdjustTermC," + + " coalesce(tempAdjustTermACV,0.0) as tempAdjustTermACV," + + " coalesce(tempAdjustTermBCV,0.0) as tempAdjustTermBCV," + + " coalesce(tempAdjustTermCCV,0.0) as tempAdjustTermCCV" + + " from TemperatureAdjustment", + + // StartTempAdjustment + "drop table if exists StartTempAdjustmentSample", + "create table StartTempAdjustmentSample" + + " select polProcessID, fuelTypeID, opmodeID, modelYearGroupID," + + " coalesce(tempAdjustTermA,0.0) as tempAdjustTermA," + + " coalesce(tempAdjustTermB,0.0) as tempAdjustTermB," + + " coalesce(tempAdjustTermC,0.0) as tempAdjustTermC," + + " coalesce(tempAdjustTermACV,0.0) as tempAdjustTermACV," + + " coalesce(tempAdjustTermBCV,0.0) as tempAdjustTermBCV," + + " coalesce(tempAdjustTermCCV,0.0) as tempAdjustTermCCV" + + " from StartTempAdjustment", + + // FullACAdjustment + "drop table if exists FullACAdjustmentSample", + "create table FullACAdjustmentSample" + + " select sourceTypeID, polProcessID, opmodeID," + + " coalesce(fullACAdjustment,1.0) as fullACAdjustment," + + " coalesce(fullACAdjustmentCV,0.0) as fullACAdjustmentCV" + + " from FullACAdjustment", +/* + // FuelAdjustment + "drop table if exists FuelAdjustmentSample", + "create table FuelAdjustmentSample" + + " select polProcessID, sourceTypeID, fuelMYGroupID, fuelFormulationID," + + " coalesce(fuelAdjustment,1.0) as fuelAdjustment," + + " coalesce(fuelAdjustmentCV,0.0) as fuelAdjustmentCV," + + " coalesce(fuelAdjustmentGPA,1.0) as fuelAdjustmentGPA," + + " coalesce(fuelAdjustmentGPACV,0.0) as fuelAdjustmentGPACV" + + " from FuelAdjustment", +*/ + // RefuelingFactors + "drop table if exists RefuelingFactorsSample", + "create table RefuelingFactorsSample" + + " select fuelTypeID, defaultFormulationID," + + " vaporTermA, vaporTermB, vaporTermC, vaporTermD, vaporTermE, vaporTermF," + + " vaporLowTLimit, vaporHighTLimit, tankTDiffLimit," + + " minimumRefuelingVaporLoss, refuelingSpillRate, refuelingSpillRateCV," + + " displacedVaporRateCV" + + " from RefuelingFactors", + + // RoadOpmodeDistribution + "drop table if exists RoadOpmodeDistributionSample", + "create table RoadOpmodeDistributionSample" + + " select sourceTypeID, opModeID, roadTypeID, isRamp, avgSpeedBinID, " + + " opModeFraction, opModeFractionCV" + + " from RoadOpmodeDistribution" + }; + String sql = ""; + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + + for(int i=0;i 0) { + dataColumnIndexCopy = column+1; + } + } else { + tableWriter.write("\t"+columnValue); + } + } + //tableWriter.newLine(); + tableWriter.write("\n"); + } + + tableReader.close(); + tableReader = null; + tableWriter.close(); + tableWriter = null; + + SQLRunner.executeSQL(executionConnection, sqlPrepareDestination); + SQLRunner.executeSQL(executionConnection, "FLUSH TABLE " + sqlSelectFrom); + + fileName = randomizedTableFilePath.getCanonicalPath().replace('\\', '/'); + sql = "LOAD DATA INFILE '" + fileName + "' INTO TABLE " + sqlLoadDestination; + SQLRunner.executeSQL(executionConnection, sql); + } catch (Exception e) { + /** + * @issue Exception occurred on 'randomizeTableData' [*] using [*] + * @explain An error occurred while generating randomized data for uncertainty + * analysis. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'randomizeTableData' " + e + + " using " + sql); + e.printStackTrace(); + if (originalTableFilePath != null) { + String t = ""; + try { + t = originalTableFilePath.getCanonicalPath(); + } catch(Exception e2) { + // Nothing can be done here + } + originalTableFilePath = null; // don't delete, leave for debugging + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,t); + } + if (randomizedTableFilePath != null) { + String t = ""; + try { + t = randomizedTableFilePath.getCanonicalPath(); + } catch(Exception e2) { + // Nothing can be done here + } + randomizedTableFilePath = null; // don't delete, leave for debugging + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,t); + } + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + if (tableReader != null) { + try { + tableReader.close(); + } catch (IOException exception) { + Logger.logSqlError(exception,"Unable to process exported file contents", sql); + } + } + if (tableWriter != null) { + try { + tableWriter.close(); + } catch (IOException exception) { + Logger.logSqlError(exception,"Unable to process exported file contents", sql); + } + } + if (originalTableFilePath != null) { + originalTableFilePath.delete(); + } + if (randomizedTableFilePath != null) { + randomizedTableFilePath.delete(); + } + } + } + + /** + * Conditionally "preaggregates" Execution database depending on RunSpec + * perhaps combining all counties within states + * or perhaps combining all counties within nation + **/ + public static void preAggregateExecutionDB() { + File nationFile = null; + File stateFile = null; + File yearFile = null; + File monthFile = null; + File dayFile = null; + Connection executionConnection = null; + + ModelScale scale = ExecutionRunSpec.theExecutionRunSpec.getModelScale(); + if(ModelScale.MACROSCALE == scale || ModelScale.MESOSCALE_LOOKUP == scale) { + // Aggregate based on Geographic Selection Types + GeographicSelectionType geoType = null; + Iterator + i = ExecutionRunSpec.theExecutionRunSpec.getGeographicSelections().iterator(); + if (i.hasNext()) { + geoType = ((GeographicSelection) i.next()).type; + } + if (geoType == GeographicSelectionType.NATION){ + // run nation aggregation script; + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, + "Running script to preaggregate to NATION level"); + if (nationFile==null) { + nationFile = new File ("database/PreAggNATION.sql"); + } + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + DatabaseUtilities.executeScript(executionConnection,nationFile); + } catch (Exception e) { + /** + * @issue Exception occurred on 'PreAggNATION.sql' + * @explain An error occurred while aggregating data to the nation level + * before doing the simulation. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'PreAggNATION.sql'" + e); + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + }else if (geoType == GeographicSelectionType.STATE){ + // run state aggregation script; + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, + "Running script to preaggregate to STATE level"); + if (stateFile==null) { + stateFile = new File ("database/PreAggSTATE.sql"); + } + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + DatabaseUtilities.executeScript(executionConnection,stateFile); + } catch (Exception e) { + /** + * @issue Exception occurred on 'PreAggSTATE.sql' + * @explain An error occurred while aggregating data to the state level + * before doing the simulation. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'PreAggSTATE.sql'" + e); + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + // Aggregate based on TimeSpan aggregation selection. + TimeSpan timeSpan = ExecutionRunSpec.theExecutionRunSpec.getTimeSpan(); + if(timeSpan.aggregateBy != OutputTimeStep.HOUR) { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, + "Running script to preaggregate to DAY level"); + + if (dayFile==null) { + dayFile = new File ("database/PreAggDAY.sql"); + } + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + DatabaseUtilities.executeScript(executionConnection,dayFile); + } catch (Exception e) { + /** + * @issue Exception occurred on 'PreAggDAY.sql' + * @explain An error occurred while aggregating data to the day level + * before doing the simulation. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'PreAggDAY.sql'" + e); + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + + if(timeSpan.aggregateBy.compareTo(OutputTimeStep.MONTH)>=0) { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, + "Running script to preaggregate to MONTH level"); + if (monthFile==null) { + monthFile = new File ("database/PreAggMONTH.sql"); + } + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + DatabaseUtilities.executeScript(executionConnection,monthFile); + } catch (Exception e) { + /** + * @issue Exception occurred on 'PreAggMONTH.sql' + * @explain An error occurred while aggregating data to the month level + * before doing the simulation. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'PreAggMONTH.sql'" + e); + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + + if(timeSpan.aggregateBy.compareTo(OutputTimeStep.YEAR)>=0) { + /** @nonissue **/ + Logger.log(LogMessageCategory.DEBUG, + "Running script to preaggregate to YEAR level"); + if (yearFile==null) { + yearFile = new File ("database/PreAggYEAR.sql"); + } + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + DatabaseUtilities.executeScript(executionConnection,yearFile); + } catch (Exception e) { + /** + * @issue Exception occurred on 'PreAggYEAR.sql' + * @explain An error occurred while aggregating data to the year level + * before doing the simulation. + **/ + Logger.log(LogMessageCategory.ERROR, + "Exception occurred on 'PreAggYEAR.sql'" + e); + } finally { + if (executionConnection != null) { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.EXECUTION, executionConnection); + executionConnection = null; + } + } + } + } + } + } + /** + * Append a new clause onto a partially completed SQL WHERE clause. + * @param wholeWhereClause SQL WHERE clause (without the "WHERE" word) that has + * been previously built. + * @param textToAppend additional clause to be AND'd onto wholeWhereClause. Parenthesis + * are used to ensure embedded OR statements do not affect the logic. + * @return updated wholeWhereClause + **/ + static String addToWhereClause(String wholeWhereClause,String textToAppend) { + if(textToAppend != null && textToAppend.length() > 0) { + if(wholeWhereClause.length() > 0) { + wholeWhereClause = wholeWhereClause + " AND "; + } + wholeWhereClause = wholeWhereClause + "(" + textToAppend + ")"; + } + + return wholeWhereClause; + } + + /** + * Append a set of clauses to the master set of clauses but only if the passed set + * is not null and not empty. + * @param clauseSets Vector of Vector objects where each Vector holds String + * objects that are fragments of the total SQL WHERE clause + * @param clauses Vector of String objects with new fragments for one variable + **/ + void addToClauseSets(Vector< Vector > clauseSets,Vector clauses) { + if(clauses != null && clauses.size() > 0) { + clauseSets.add(clauses); + } + } + + /** + * Merge from a "default" database to an "execution" database. + * @param source The "default" database to get data from. + * @param destination The "execution" database to write data to. + * @param includeLinkTable true if the Link table should be included + * @param includeFuelSupply true if the fuelSupply table should be included + * @param isDefaultDatabase true if the source is a default database, false for user databases + * @throws SQLException If there is an error during any java.sql operations. + * @throws IOException If there is an error during any temporary file operations + **/ + public void merge(Connection source, Connection destination, boolean includeLinkTable, + boolean includeFuelSupply, boolean isDefaultDatabase) + throws SQLException, IOException, Exception { + //System.out.println("merge(includeFuelSupply=" + includeFuelSupply + ")"); + + // Validate source + + if(!isDefaultSchemaPresent(source)) { + throw new IllegalArgumentException("Source does not have default schema."); + } + + boolean includeEmissionRates = true; + if(isDefaultDatabase && CompilationFlags.USE_ONLY_USER_SUPPLIED_EMISSION_RATES) { + includeEmissionRates = false; + } + + boolean includeHotellingActivityDistribution = true; + if(isDefaultDatabase && ModelDomain.PROJECT == ExecutionRunSpec.getRunSpec().domain) { + includeHotellingActivityDistribution = false; + } + + Models models = ExecutionRunSpec.theExecutionRunSpec.getModels(); + Models.ModelCombination mc = Models.evaluateModels(models); + + DatabaseMetaData dmd ; + String tableTypes[] = new String[ 1 ] ; + ResultSet rs ; + String mdTableName = "" ; + + dmd = source.getMetaData() ; + tableTypes[ 0 ] = "TABLE" ; + + boolean includeIMCoverage = includeFuelSupply; + if(includeIMCoverage && isDefaultDatabase) { + // If there is already data in the destination IMCoverage table, do not import + // the default database's IMCoverage table. + if(DatabaseUtilities.getRowCount(destination,"IMCoverage") > 0) { + includeIMCoverage = false; + } + } + + boolean includeFuelUsageFraction = CompilationFlags.USE_FUELUSAGEFRACTION; + if(includeFuelUsageFraction && isDefaultDatabase) { + // If there is already data in the destination FuelUsageFraction table, do not import + // the default database's FuelUsageFraction table. + if(DatabaseUtilities.getRowCount(destination,"FuelUsageFraction") > 0) { + includeFuelUsageFraction = false; + } + } + + boolean includeSourceTypeAgeDistribution = !isDefaultDatabase || ModelDomain.SINGLE_COUNTY != ExecutionRunSpec.getRunSpec().domain; + boolean includeSourceTypeYear = !isDefaultDatabase || ModelDomain.SINGLE_COUNTY != ExecutionRunSpec.getRunSpec().domain; + + boolean includeHPMSVtypeYear = !isDefaultDatabase || ModelDomain.SINGLE_COUNTY != ExecutionRunSpec.getRunSpec().domain; + if(includeHPMSVtypeYear && isDefaultDatabase) { + // If there is already data in a destination table that supplies VMT, do not + // import the default database's HPMSVtypeYear table. + if(DatabaseUtilities.getRowCount(destination,"HPMSVtypeDay") > 0 + || DatabaseUtilities.getRowCount(destination,"SourceTypeDayVMT") > 0 + || DatabaseUtilities.getRowCount(destination,"SourceTypeYearVMT") > 0) { + includeHPMSVtypeYear = false; + } + } + + /** + * Inner class used to identify the tables and table rows to be copied from the "default" + * database to the "execution" database. This class allows table rows to be filtered by + * criteria specified in the Execution Runspec. Rows can be filtered by
    • year
    • + *
    • month
    • link
    • zone
    • county
    • state
    • pollutant, + *
    • emission process.
    • day
    • hour
    • hourDayID
    • + *
    • roadType
    • pollutantProcessID
    • sourceUseType
    • fuelType
    • + *
    • monthGroupID
    • , and
    • fuelSubType
    • . + *
    To filter rows by runspec criteria, place the + * table's column names for the criteria in the corresponding entries below. + *

    Note that some tables contain data that must not be filtered. Tables with + * population data for a base year must not be filtered by the analysis year as the base + * year data is needed to grow the table data to the analysis year. Tables that contain + * distribution data for an entire population must not be filtered by selected members of + * the population as the full population data will be needed in performing calculations. + * (The exception to this is "Fraction" tables, where a member's fractional value of the + * entire population has already been calculated).

    + **/ + + class TableToCopy { + /** name of the table **/ + public String tableName = null; + /** optional name of a column that refers to a year **/ + public String yearColumnName = null; + /** optional name of a column that refers to a monthID **/ + public String monthColumnName = null; + /** optional name of a column that refers to a linkID **/ + public String linkColumnName = null; + /** optional name of a column that refers to a zoneID **/ + public String zoneColumnName = null; + /** optional name of a column that refers to a countyID **/ + public String countyColumnName = null; + /** optional name of a column that refers to a stateID **/ + public String stateColumnName = null; + /** optional name of a column that refers to a pollutantID **/ + public String pollutantColumnName = null; + /** optional name of a column that refers to a processID **/ + public String processColumnName = null; + /** optional name of a column that refers to an hourID **/ + public String hourColumnName = null; + /** optional name of a column that refers to a dayID **/ + public String dayColumnName = null; + /** optional name of a column that refers to a hourDayID **/ + public String hourDayIDColumnName = null; + /** optional name of a column that refers to a road type **/ + public String roadTypeColumnName = null; + /** optional name of a column that refers to a pollutant process **/ + public String pollutantProcessIDColumnName = null; + /** optional name of a column that refers to a source type use **/ + public String sourceUseTypeColumnName = null; + /** optional name of a column that refers to a fuel type**/ + public String fuelTypeColumnName = null; + /** optional name of a column that refers to a fuel sub type**/ + public String fuelSubTypeIDColumnName = null; + /** optional name of a column that refers to a monthGroupID **/ + public String monthGroupIDColumnName = null; + /** + * optional name that identifies a column whose values indicate + * whether records were user inputs. + **/ + public String isUserInputColumnName = null; + + /** optional name of a column that refers to a fuel year **/ + public String fuelYearColumnName = null; + /** optional name of a column that refers to a region **/ + public String regionColumnName = null; + /** optional name of a column that refers to a model year **/ + public String modelYearColumnName = null; + + /** Constructor for filling all parameters **/ + public TableToCopy( + String tableNameToUse, + String yearColumnNameToUse, + String monthColumnNameToUse, + String linkColumnNameToUse, + String zoneColumnNameToUse, + String countyColumnNameToUse, + String stateColumnNameToUse, + String pollutantColumnNameToUse, + String processColumnNameToUse, + String dayColumnNameToUse, + String hourColumnNameToUse, + String hourDayIDColumnNameToUse, + String roadTypeColumnNameToUse, + String pollutantProcessIDColumnNameToUse, + String sourceUseTypeColumnNameToUse, + String fuelTypeColumnNameToUse, + String fuelSubTypeIDColumnNameToUse, + String monthGroupIDColumnNameToUse, + String isUserInputColumnNameToUse, + String fuelYearColumnNameToUse, + String regionColumnNameToUse, + String modelYearColumnNameToUse) { + tableName = tableNameToUse; + yearColumnName = yearColumnNameToUse; + monthColumnName = monthColumnNameToUse; + linkColumnName = linkColumnNameToUse; + zoneColumnName = zoneColumnNameToUse; + countyColumnName = countyColumnNameToUse; + stateColumnName = stateColumnNameToUse; + pollutantColumnName = pollutantColumnNameToUse; + processColumnName = processColumnNameToUse; + dayColumnName = dayColumnNameToUse; + hourColumnName = hourColumnNameToUse; + hourDayIDColumnName = hourDayIDColumnNameToUse; + roadTypeColumnName = roadTypeColumnNameToUse; + pollutantProcessIDColumnName = pollutantProcessIDColumnNameToUse; + sourceUseTypeColumnName = sourceUseTypeColumnNameToUse; + fuelTypeColumnName =fuelTypeColumnNameToUse; + fuelSubTypeIDColumnName = fuelSubTypeIDColumnNameToUse; + monthGroupIDColumnName = monthGroupIDColumnNameToUse; + isUserInputColumnName = isUserInputColumnNameToUse; + fuelYearColumnName = fuelYearColumnNameToUse; + regionColumnName = regionColumnNameToUse; + modelYearColumnName = modelYearColumnNameToUse; + } + + /** Constructor for filling most parameters **/ + public TableToCopy( + String tableNameToUse, + String yearColumnNameToUse, + String monthColumnNameToUse, + String linkColumnNameToUse, + String zoneColumnNameToUse, + String countyColumnNameToUse, + String stateColumnNameToUse, + String pollutantColumnNameToUse, + String processColumnNameToUse, + String dayColumnNameToUse, + String hourColumnNameToUse, + String hourDayIDColumnNameToUse, + String roadTypeColumnNameToUse, + String pollutantProcessIDColumnNameToUse, + String sourceUseTypeColumnNameToUse, + String fuelTypeColumnNameToUse, + String fuelSubTypeIDColumnNameToUse, + String monthGroupIDColumnNameToUse, + String isUserInputColumnNameToUse) { + tableName = tableNameToUse; + yearColumnName = yearColumnNameToUse; + monthColumnName = monthColumnNameToUse; + linkColumnName = linkColumnNameToUse; + zoneColumnName = zoneColumnNameToUse; + countyColumnName = countyColumnNameToUse; + stateColumnName = stateColumnNameToUse; + pollutantColumnName = pollutantColumnNameToUse; + processColumnName = processColumnNameToUse; + dayColumnName = dayColumnNameToUse; + hourColumnName = hourColumnNameToUse; + hourDayIDColumnName = hourDayIDColumnNameToUse; + roadTypeColumnName = roadTypeColumnNameToUse; + pollutantProcessIDColumnName = pollutantProcessIDColumnNameToUse; + sourceUseTypeColumnName = sourceUseTypeColumnNameToUse; + fuelTypeColumnName =fuelTypeColumnNameToUse; + fuelSubTypeIDColumnName = fuelSubTypeIDColumnNameToUse; + monthGroupIDColumnName = monthGroupIDColumnNameToUse; + isUserInputColumnName = isUserInputColumnNameToUse; + } + } + TableToCopy[] tablesAndFilterColumns = { + new TableToCopy("AgeCategory",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("AgeGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ATBaseEmissions",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,"monthGroupID",null), + new TableToCopy("ATRatio",null,null,null,null,null,null,null,null,null, + null,null,null,"polProcessID",null,"fuelTypeID",null,"monthGroupID",null), + new TableToCopy("ATRatioGas2",null,null,null,null,null,null,null,null,null, + null,null,null,"polProcessID","sourceTypeID",null,"fuelSubtypeID",null,null), + new TableToCopy("ATRatioNonGas",null,null,null,null,null,null,null,null,null, + null,null,null,"polProcessID","sourceTypeID",null,"fuelSubtypeID",null,null), + new TableToCopy("AverageTankGasoline",null,null,null,"zoneID",null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,"monthGroupID","isUserInput","fuelYearID",null,null), + new TableToCopy("AverageTankTemperature",null,"monthID",null,"zoneID",null,null,null, + null,null,null,"hourDayID",null,null,null,null,null,null,"isUserInput"), + new TableToCopy("AvgSpeedBin",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + // AvgSpeedDistribution cannot filter by roadTypeID or hourDayID because TotalActivityGenerator will + // not be able to calculate SourceHours properly. + new TableToCopy("AvgSpeedDistribution",null,null,null,null,null,null,null,null, + null,null,null/*"hourDayID"*/,null/*"roadTypeID"*/,null,"sourceTypeID",null,null,null,null), + new TableToCopy("AVFT",null,null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null/*"fuelTypeID"*/,null,null,null), + new TableToCopy("BaseFuel",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,null,null), + new TableToCopy("ColdSoakInitialHourFraction",null,"monthID",null,"zoneID",null,null,null,null, + null,null,"hourDayID",null,null,"sourceTypeID",null,null,null,"isUserInput"), + new TableToCopy("ColdSoakTankTemperature",null,"monthID",null,"zoneID",null,null,null,null, + null,"hourID",null,null,null,null,null,null,null,null), + new TableToCopy("ComplexModelParameterName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ComplexModelParameters",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("County", null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("County",null,null,null,null,"countyID","stateID",null,null, + null,null,null,null,null,null,null,null,null,null)), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("CountyYear", null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("CountyYear","yearID",null,null,null,"countyID",null,null,null, + null,null,null,null,null,null,null,null,null,null)), + + // CrankcaseEmissionRatio can't be filtered by polProcessID because PM needs + // NonECNonSO4PM which isn't shown on the GUI. + new TableToCopy("CrankcaseEmissionRatio", null, null, null, null, null, null, null, null, + null, null, null, null, null/*"polProcessID"*/, "sourceTypeID", "fuelTypeID", + null, null, null), + new TableToCopy("criteriaRatio",null,null,null,null,null,null,null,null, + null, null, null, null, "polProcessID", "sourceTypeID", "fuelTypeID", + null, null, null), + new TableToCopy("CumTVVCoeffs",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null), + new TableToCopy("DataSource",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("DayOfAnyWeek",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + // DayVMTFraction cannot filter by roadTypeID or TotalActivityGenerator will + // not be able to calculate SourceHours properly. + new TableToCopy("DayVMTFraction",null,"monthID",null,null,null,null,null,null, + "dayID",null,null,null/*"roadTypeID"*/,null,"sourceTypeID",null,null,null,null), + new TableToCopy("dioxinemissionrate", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", null, "fuelTypeID", + null, null, null), + new TableToCopy("DriveSchedule",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("DriveScheduleAssoc",null,null,null,null,null,null,null,null, + null,null,null,"roadTypeID",null,"sourceTypeID",null,null,null,null), + new TableToCopy("DriveScheduleSecond",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("driveScheduleSecondLink",null,null, null /*"linkID"*/,null,null,null,null, + null,null,null,null,null,null,null,null,null,null,null), + new TableToCopy("e10FuelProperties",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,"monthGroupID",null,"fuelYearID","fuelRegionID",null), + new TableToCopy("EmissionProcess",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,null,null,null,null,null), + + includeEmissionRates? + new TableToCopy("EmissionRate",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null) + : null, + includeEmissionRates? + new TableToCopy("EmissionRateByAge",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null) + : null, + + new TableToCopy("EmissionRateAdjustment",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID","sourceTypeID","fuelTypeID",null,null,null), + new TableToCopy("EngineSize",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("EngineTech",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ETOHBin",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("evapTemperatureAdjustment",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("evapRVPTemperatureAdjustment",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,null,"fuelTypeID",null,null,null), + new TableToCopy("ExtendedIdleHours","yearID","monthID",null,"zoneID",null,null,null, + null,null,null,"hourDayID",null,null,"sourceTypeID",null,null,null, + "isUserInput"), +// new TableToCopy("FuelAdjustment",null,null,null,null,null,null,null,null,null, +// null,null,null,"polProcessID","sourceTypeID",null,/*"fuelSubTypeID"*/ null,null,null), + // FuelEngTechAssoc not filtered because AVFT control strategy + // intends to make control strategy objects which can be used with all RunSpecs + new TableToCopy("FuelEngTechAssoc",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FuelFormulation",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FuelModelName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FuelModelWtFactor",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ComplexModelParameters",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FuelModelYearGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FuelParameterName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("FuelSubtype", null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("FuelSubtype",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,null,null)), + + includeFuelSupply? + new TableToCopy("FuelSupply",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,"monthGroupID",null,"fuelYearID","fuelRegionID",null) + : null, + + new TableToCopy("FuelSupplyYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null,"fuelYearID",null,null), + new TableToCopy("FuelType",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,null,null), + + includeFuelUsageFraction? + new TableToCopy("fuelUsageFraction",null,null,null,null,"countyID",null,null,null, + null,null,null,null,null,null,"sourceBinFuelTypeID",null,null,null,"fuelYearID",null,null) + : null, + + new TableToCopy("fuelWizardFactors",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("FullACAdjustment",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID","sourceTypeID",null,null,null,null), + new TableToCopy("generalFuelRatio",null,null,null,null,null,null,"pollutantID","processID", + null, null, null, null, "polProcessID", null, "fuelTypeID", null, null, null), + new TableToCopy("generalFuelRatioExpression",null,null,null,null,null,null,null,null, + null, null, null, null, "polProcessID", null, "fuelTypeID", null, null, null), + new TableToCopy("GreetManfAndDisposal",null,null,null,null,null,null,"pollutantID", + null,null,null,null,null,null,null,null ,null,null,null), + /* Contains "base year," or bounding, values for an analysis year so this table cannot + * be filtered by the year, it is filtered by pollutantID and fuelSubType */ + new TableToCopy("GreetWellToPump",null,null,null,null,null,null,"pollutantID",null, + null,null,null,null,null,null,null,"fuelSubTypeID",null,null), + new TableToCopy("Grid",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("GridZoneAssoc",null,null,null,"zoneID",null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("HCPermeationCoeff",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null), + new TableToCopy("HCSpeciation",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,"fuelSubtypeID",null,null), + + (CompilationFlags.ENABLE_AUXILIARY_POWER_EXHAUST && includeHotellingActivityDistribution)? + new TableToCopy("hotellingActivityDistribution",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null) + : null, + CompilationFlags.ENABLE_AUXILIARY_POWER_EXHAUST? + new TableToCopy("hotellingHours","yearID","monthID",null,"zoneID",null,null,null, + null,null,null,"hourDayID",null,null,"sourceTypeID",null,null,null, + "isUserInput") + : null, + + new TableToCopy("hotellingCalendarYear","yearID",null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + // HourDay cannot be filtered by hourID because TotalActivityGenerator requires all hours + new TableToCopy("HourDay",null,null,null,null,null,null,null,null, + "dayID",null/*"hourID"*/,null,null,null,null,null,null,null,null), + // HourOfAnyDay cannot be filtered by hourID because TotalActivityGenerator requires all hours + new TableToCopy("HourOfAnyDay",null,null,null,null,null,null,null,null, + null,null/*"hourID"*/,null,null,null,null,null,null,null,null), + /* HourVMTFraction cannot be filtered by sourceTypeID because info for + * type 21 is needed by PreAggDay.sql */ + // HourVMTFraction cannot filter by roadTypeID or hourID because TotalActivityGenerator will + // not be able to calculate SourceHours properly. + new TableToCopy("HourVMTFraction",null,null,null,null,null,null,null,null, + "dayID",null/*"hourID"*/,null,null/*"roadTypeID"*/,null,null,null,null,null,null), + new TableToCopy("HPMSVtype",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("HPMSVtypeDay","yearID","monthID",null,null,null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + + /* Contains "base year", or bounding, values for an analysis year so this table cannot + * be filtered by the selected runspec criteria. */ + includeHPMSVtypeYear? new TableToCopy("HPMSVtypeYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null) + : null, + + includeIMCoverage? + new TableToCopy("IMCoverage","yearID",null,null,null,"countyID","stateID",null,null, + null,null,null,null,"polProcessID","sourceTypeID","fuelTypeID",null,null,null) + : null, + + new TableToCopy("IMFactor",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID","sourceTypeID","fuelTypeID",null,null,null), + new TableToCopy("IMInspectFreq",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("IMModelYearGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("IMTestStandards",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ImportStartsOpModeDistribution",null,null,null /*"linkID"*/,null,null,null,null,null, + null,null,"hourDayID",null,"polProcessID","sourceTypeID",null,null,null, + "isUserInput"), + new TableToCopy("integratedSpeciesSet",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("integratedSpeciesSetName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + includeLinkTable? + new TableToCopy("Link",null,null,null,"zoneID","countyID",null,null,null, + null,null,null,"roadTypeID",null,null,null,null,null,null) + : null, + + new TableToCopy("LinkAverageSpeed",null,null,null /*"linkID"*/,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("LinkHourVMTFraction",null,"monthID", null /*"linkID"*/,null,null,null,null, + "dayID","hourID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("linkSourceTypeHour",null,null, null /*"linkID"*/,null,null,null,null, + null,null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("lumpedSpeciesName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("M6SulfurCoeff",null,null,null,null,null,null,"pollutantID", + null,null,null,null,null,null,null,null ,null,null,null), + new TableToCopy("MeanFuelParameters",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,"fuelTypeID",null,null,null), + new TableToCopy("mechanismName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("metalemissionrate", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", "sourceTypeID", "fuelTypeID", + null, null, null), + new TableToCopy("methaneTHCRatio",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,"sourceTypeID",null/*"fuelTypeID"*/,null,null,null), + new TableToCopy("minorhapratio", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", null, "fuelTypeID", + null, null, null), + new TableToCopy("ModelYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("modelYearCutPoints",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ModelYearGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("ModelYearMapping",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("MonthGroupHour",null,null,null,null,null,null,null,null, + null,"hourID",null,null,null,null,null,null,"monthGroupID",null), + new TableToCopy("MonthGroupOfAnyYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,"monthGroupID",null), + /* AggregationSQLGenerator needs MonthOfAnyYear to have all 12 months */ + new TableToCopy("MonthofAnyYear",null,null /*"monthID"*/,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + /* MonthVMTFraction cannot be filtered by sourceTypeID because info for + * type 21 is needed by PreAggYear.sql */ + new TableToCopy("MonthVMTFraction",null,"monthID",null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("NONO2Ratio",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID","sourceTypeID","fuelTypeID",null,null,null), + new TableToCopy("offNetworkLink",null,null,null,null,null,null,null, + null,null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("OMDGPolProcessRepresented",null,null,null,null,null,null,null,null, + null, null, null, null, "polProcessID", null, null, null, null, null), + new TableToCopy("onRoadRetrofit",null,null,null,null,null,null,"pollutantID", + "processID",null,null,null,null,null,"sourceTypeID","fuelTypeID",null,null,null), + new TableToCopy("OperatingMode",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("OpModeDistribution",null,null,null /*"linkID"*/,null,null,null,null,null, + null,null,"hourDayID",null,"polProcessID","sourceTypeID",null,null,null, + "isUserInput"), + new TableToCopy("OpModePolProcAssoc",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null), + new TableToCopy("OxyThreshName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("pahGasRatio", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", null, "fuelTypeID", + null, null, null), + new TableToCopy("pahParticleRatio", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", null, "fuelTypeID", + null, null, null), + new TableToCopy("PM10EmissionRatio", null, null, null, null, null, null, null, null, + null, null, null, null, "polProcessID", "sourceTypeID", "fuelTypeID", + null, null, null), + new TableToCopy("PMSpeciation", null, null, null, null, null, null, "outputPollutantID", "processID", + null, null, null, null, null, "sourceTypeID", "fuelTypeID", null, null, null), + new TableToCopy("PollutantDisplayGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("Pollutant", null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("Pollutant",null,null,null,null,null,null,"pollutantID",null, + null,null,null,null,null,null,null,null,null,null)), + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("PollutantProcessAssoc", null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("PollutantProcessAssoc",null,null,null,null,null,null,"pollutantID", + "processID",null,null,null,null,"polProcessID",null,null,null,null,null)), + + new TableToCopy("PollutantProcessModelYear",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,null), + new TableToCopy("RefuelingFactors", null, null, null, null, null, null, null, null, + null, null, null, null, null, null, "fuelTypeID", null, null, null), + new TableToCopy("RegulatoryClass",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("region",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null,null,"regionID",null), + new TableToCopy("regionCode",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("regionCounty",null,null,null,null,"countyID",null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("RetrofitInputAssociations",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("RoadOpmodeDistribution",null,null,null,null,null,null,null,null, + null,null,null,"roadTypeID",null,"sourceTypeID",null,null,null,null), + // RoadType cannot filter by roadTypeID or TotalActivityGenerator will + // not be able to calculate SourceHours properly. + new TableToCopy("RoadType",null,null,null,null,null,null,null,null, + null,null,null,null/*"roadTypeID"*/,null,null,null,null,null,null), + /* RoadTypeDistribution cannot be filtered by sourceTypeID because info for + * type 21 is needed by PreAggDay.sql */ + // RoadTypeDistribution cannot filter by roadTypeID or TotalActivityGenerator will + // not be able to calculate SourceHours properly. + // RoadTypeDistribution cannot filter by roadTypeID or ActivityCalculator will + // not be able to calculate population properly. + new TableToCopy("RoadTypeDistribution",null,null,null,null,null,null,null,null, + null,null,null,null/*"roadTypeID"*/,null,null,null,null,null,null), + new TableToCopy("SampleVehicleDay",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SampleVehicleSoaking",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SampleVehicleSoakingDay",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SampleVehicleSoakingDayUsed",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SampleVehicleSoakingDayBasis",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + new TableToCopy("SampleVehicleSoakingDayBasisUsed",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + new TableToCopy("SampleVehicleTrip",null,null,null,null,null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + + // Do not filter SampleVehiclePopulation by fuel type. Doing so breaks features that + // require this distribution even when not selected in the runspec. + new TableToCopy("SampleVehiclePopulation",null,null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null/*"fuelTypeID"*/,null,null,null,null,null,"modelYearID"), + + new TableToCopy("SCC",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("Sector",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("SHO","yearID","monthID",null /*"linkID"*/,null,null,null,null,null, + null,null,"hourDayID",null,null,"sourceTypeID",null,null,null,"isUserInput"), + // AVFT needs all of these fractions so it can move vehicles from one type + // of fuel to another. + new TableToCopy("SizeWeightFraction",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null/*"fuelTypeID"*/,null,null,null), + new TableToCopy("SoakActivityFraction",null,"monthID",null,"zoneID",null,null,null, + null,null,null,"hourDayID",null,null,null,null,null,null, + "isUserInput"), + new TableToCopy("SourceBin",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,null,null), + new TableToCopy("SourceBinDistribution",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,null,null,null,"isUserInput"), + new TableToCopy("SourceHours","yearID","monthID",null,null,null,null,null, + null,null,null,"hourDayID",null,null,"sourceTypeID",null,null,null, + "isUserInput"), + new TableToCopy("SourceTypeAge",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + /* Used in base year calculations so this table cannot be filtered */ + includeSourceTypeAgeDistribution? new TableToCopy("SourceTypeAgeDistribution",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null) + : null, + + new TableToCopy("SourceTypeDayVMT","yearID","monthID",null,null,null,null,null,null, + "dayID",null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SourceTypeHour",null,null,null,null,null,null,null,null, + null,null,"hourDayID",null,null,"sourceTypeID",null,null,null,null), + // Used in AVFTControlStrategy calculations, so do not use filter by sourceTypeID + new TableToCopy("SourceTypeModelYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null/*"sourceTypeID"*/,null,null,null,null,null,null,"modelYearID"), + new TableToCopy("SourceTypeModelYearGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SourceTypePolProcess",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID","sourceTypeID",null,null,null,null), + new TableToCopy("SourceTypeTechAdjustment", null, null, null, null, null, null, null, + "processID", null, null, null, null, null, "sourceTypeID", null, + null, null, null), + + // "SourceTypeYear" Used in base year calculations so this table cannot be filtered + // Also, sourceTypeID cannot be filtered in SourceTypeYear due to the need + // to calculate relativeMAR in TotalActivityGenerator, a calculation that needs + // data from all source use types. + includeSourceTypeYear? new TableToCopy("SourceTypeYear",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null) + : null, + + new TableToCopy("SourceTypeYearVMT","yearID",null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("SourceUseType",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("sourceUseTypePhysics",null,null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("Starts","yearID","monthID",null,"zoneID",null,null,null,null, + null,null,"hourDayID",null,null,null,null,null,null,"isUserInput"), + new TableToCopy("startsPerDay","yearID",null,null,"zoneID",null,null,null,null, + "dayID",null,null,null,null,null,null,null,null,null), + new TableToCopy("startsHourFraction",null,null,null,"zoneID",null,null,null,null, + "dayID","hourID",null,null,null,null,null,null,null,null), + new TableToCopy("startsSourceTypeFraction",null,null,null,null,null,null,null,null, + null,null,null,null,null,"sourceTypeID",null,null,null,null), + new TableToCopy("startsMonthAdjust",null,"monthID",null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("StartsPerVehicle",null,null,null,null,null,null,null,null, + null,null,"hourDayID",null,null,"sourceTypeID",null,null,null,null), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("State",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null) + : + new TableToCopy("State",null,null,null,null,null,"stateID",null,null, + null,null,null,null,null,null,null,null,null,null)), + + new TableToCopy("SulfateEmissionRate",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,"fuelTypeID",null,null,null), + new TableToCopy("SulfateFractions", null, null, null, null, null, null, null, "processID", + null, null, null, null, null, "sourceTypeID", "fuelTypeID", null, null, null), + new TableToCopy("SulfurBase",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("sulfurCapAmount",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,"fuelTypeID",null,null,null), + new TableToCopy("SulfurModelCoeff",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("SulfurModelName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("TankTemperatureGroup",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("TankTemperatureRise",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("TankVaporGenCoeffs",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("TemperatureAdjustment",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,"fuelTypeID",null,null,null), + new TableToCopy("temperatureFactorExpression", null, null, null, null, null, null, "pollutantID", "processID", + null, null, null, null, null, "sourceTypeID", "fuelTypeID", null, null, null), + new TableToCopy("TemperatureProfileID",null,"monthID",null,"zoneID",null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("togSpeciation",null,null,null,null,null,null,null,"processID", + null,null,null,null,null,null,null,"fuelSubtypeID",null,null), + new TableToCopy("TOGSpeciationProfile",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("TOGSpeciationProfileName",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + new TableToCopy("StartTempAdjustment",null,null,null,null,null,null,null,null, + null,null,null,null,"polProcessID",null,"fuelTypeID",null,null,null), + new TableToCopy("WeightClass",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + /* "Year" Contains "base year," or bounding, values for an analysis year so this table + * cannot be filtered by the selected runspec criteria. */ + new TableToCopy("Year",null,null,null,null,null,null,null,null, + null,null,null,null,null,null,null,null,null,null), + + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("Zone", null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("Zone",null,null,null,"zoneID","countyID",null,null,null, + null,null,null,null,null,null,null,null,null,null)), + ((mc == Models.ModelCombination.M2 || mc == Models.ModelCombination.M12) ? + new TableToCopy("ZoneMonthHour", null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null, null, null) + : + new TableToCopy("ZoneMonthHour",null,"monthID",null,"zoneID",null,null,null,null, + null,null/*"hourID"*/,null,null,null,null,null,null,null,null)), + + // ZoneRoadType cannot filter by roadTypeID or ActivityCalculator will + // not be able to calculate population properly. + // Also, the hotelling/extended idle algorithm requires data from the + // Rural Restricted road type even if it is not in the runspec. + new TableToCopy("ZoneRoadType",null,null,null,"zoneID",null,null,null,null, + null,null,null,null/*"roadTypeID"*/,null,null,null,null,null,null) + }; + TreeSetIgnoreCase tablesToFilter = new TreeSetIgnoreCase(); + boolean allowTablesToFilter = false; + if(mergeSession != null) { + String[] shallowTables = { + "Year", "regionCounty", + "MonthGroupOfAnyYear", "MonthOfAnyYear" + }; + for(int i=0;i 0) { + if(allowTablesToFilter && !tablesToFilter.contains(t.tableName)) { + continue; + } + if(!allowTablesToFilter && tablesToFilter.contains(t.tableName)) { + continue; + } + } + boolean shouldLog = false; // t.tableName.equalsIgnoreCase("IMCoverage"); + //shouldLog = t.tableName.equalsIgnoreCase("FuelSupply"); + if(shouldLog) { + Logger.log(LogMessageCategory.INFO,"InputDataManager transferring table " + t.tableName); + } + rs = dmd.getTables( null , "" , t.tableName , tableTypes ); + mdTableName = "" ; + if( rs != null) { + if (rs.next()) { + mdTableName = rs.getString(3) ; + } + rs.close() ; + } + + if ( mdTableName.length() == 0 && allowMissingTables == true ) { + continue ; + } + + if ( mdTableName.length() == 0 && allowMissingTables == false ) { + Exception ex = new Exception( + "The Table " + t.tableName + " does not exist in the " + + " source database " + source.getCatalog() + ". The merge is canceled." ); + throw ex ; + } + + Vector< Vector > clauseSets = new Vector< Vector >(); + + if(includeFuelSupply && t.tableName.equalsIgnoreCase("fuelSupply")) { + Vector fuelSupplyClauses = buildSQLWhereClauseForFuelSupply(destination); + if(fuelSupplyClauses.size() > 0) { + addToClauseSets(clauseSets,fuelSupplyClauses); + } + } + if(t.tableName.equalsIgnoreCase("hotellingActivityDistribution")) { + if(hasExistingData(destination,t.tableName)) { + continue; + } + } + if(t.yearColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForYears(t.yearColumnName)); + } + if(t.monthColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForMonths(t.monthColumnName)); + } + if(t.dayColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForDays(t.dayColumnName)); + } + if(t.hourColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForHours(t.hourColumnName)); + } + if(t.linkColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForLinks(t.linkColumnName)); + } + if(t.zoneColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForZones(t.zoneColumnName)); + } + if(t.countyColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForCounties(t.countyColumnName)); + } + if(t.stateColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForStates(t.stateColumnName)); + } + if(t.pollutantColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForPollutants(t.pollutantColumnName)); + } + if(t.processColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForProcesses(t.processColumnName)); + } + if(t.hourDayIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForHourDayIDs(t.hourDayIDColumnName)); + } + if(t.roadTypeColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForRoadTypes(t.roadTypeColumnName)); + } + if(t.pollutantProcessIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForPollutantProcessIDs(t.pollutantProcessIDColumnName)); + } + if(t.sourceUseTypeColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForSourceUseTypes(t.sourceUseTypeColumnName)); + } + if(t.fuelTypeColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForFuelTypes(t.fuelTypeColumnName)); + } + if(t.fuelSubTypeIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForFuelSubTypes(t.fuelSubTypeIDColumnName)); + } + if(t.monthGroupIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForMonthGroupIDs(t.monthGroupIDColumnName)); + } + if(t.fuelYearColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForFuelYears(t.fuelYearColumnName)); + } + if(t.regionColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForRegions(t.regionColumnName)); + } + if(t.modelYearColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForModelYears(t.modelYearColumnName)); + } + + if(clauseSets.size() <= 0) { +if(shouldLog) System.out.println("IDM No clause sets for " + t.tableName); + try { + copyTable(source,destination,t.tableName,"",t.isUserInputColumnName,isDefaultDatabase); + } catch( SQLException ex ) { + /** + * @explain A database error occurred while copying a table from one + * database to another. + **/ + Logger.logError(ex,"copyTable threw an SQLException" ) ; + throw ex ; + } catch( IOException ex ) { + /** + * @explain A file system error occurred while copying a table from one + * database to another. + **/ + Logger.logError(ex,"copyTable threw an IOException" ) ; + throw ex ; + } + } else { + // Issue a copyTable for each combination of entries within clauseSets + String log = "IDM " + clauseSets.size() + " clause sets for " + + t.tableName + " ("; + int [] counters = new int[clauseSets.size()]; + for(int j=0;j clauses = (Vector)clauseSets.get(j); + if(j > 0) { + log += ","; + } + log += clauses.size(); + } + log += ")"; + if(shouldLog) { + System.out.println(log); + } + + boolean done = false; + do { + String wholeWhereClause = ""; + for(int j=0;j clauses = (Vector)clauseSets.get(j); + String clause = (String)clauses.get(counters[j]); + wholeWhereClause = addToWhereClause(wholeWhereClause,clause); + } + + log = "\t\tdoing clause ("; + for(int j=0;j 0) { + log += ","; + } + log += counters[j]; + } + log += ") wholeWhereClause is " + wholeWhereClause.length() + " long"; + if(shouldLog) { + System.out.println(log); + } + + try { + if(shouldLog) { + System.out.println(wholeWhereClause); + } + copyTable(source,destination,t.tableName, + wholeWhereClause,t.isUserInputColumnName,isDefaultDatabase); + } catch( SQLException ex ) { + /** + * @explain A database error occurred while copying a table from one + * database to another. + **/ + Logger.logError(ex,"copyTable threw an SQLException" ) ; + throw ex ; + } catch( IOException ex ) { + /** + * @explain A file system error occurred while copying a table from one + * database to another. + **/ + Logger.logError(ex,"copyTable threw an IOException" ) ; + throw ex ; + } + + // Move to the next combination of clauses + int index = 0; + boolean doneIncrementing = false; + while(!doneIncrementing) { + doneIncrementing = true; + counters[index]++; + Vector clauses = (Vector)clauseSets.get(index); + if(counters[index] >= clauses.size()) { + doneIncrementing = false; + counters[index] = 0; + index++; + if(index >= clauseSets.size()) { + done = true; + doneIncrementing = true; + } + } + } + } while(!done); + } + // Update MySQL's statistics on the table + SQLRunner.executeSQL(destination,"ANALYZE TABLE " + t.tableName); + } + // Move data from staging tables to production tables. + if(CompilationFlags.DO_RATES_FIRST) { + String sql = "insert ignore into ratesOpModeDistribution (avgSpeedBinID, roadTypeID, " + + " sourceTypeID, hourDayID, polProcessID, opModeID, opModeFraction, opModeFractionCV)" + + " select 0 as avgSpeedBinID, 1 as roadTypeID, " + + " sourceTypeID, hourDayID, polProcessID, opModeID, opModeFraction, opModeFractionCV" + + " from importStartsOpModeDistribution"; + SQLRunner.executeSQL(destination,sql); + } else { + String sql = "insert ignore into opModeDistribution (sourceTypeID, hourDayID, linkID, polProcessID, opModeID, opModeFraction, opModeFractionCV)" + + " select sourceTypeID, hourDayID, linkID, polProcessID, opModeID, opModeFraction, opModeFractionCV" + + " from importStartsOpModeDistribution"; + SQLRunner.executeSQL(destination,sql); + } + + // Done + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO,"InputDataManager transferred all default tables."); + } + + /** + * Merge from a NonRoad "default" database to an "execution" database. + * @param source The NonRoad "default" database to get data from. + * @param destination The "execution" database to write data to. + * @param isDefaultDatabase true when the default database is the source. + * @throws SQLException If there is an error during any java.sql operations. + * @throws IOException If there is an error during any temporary file operations + **/ + public void mergeNonRoad(Connection source, Connection destination, + boolean isDefaultDatabase) + throws SQLException, IOException, Exception { + if (!CompilationFlags.USE_NONROAD) { + return; + } + + DatabaseMetaData dmd; + String tableTypes[] = new String[1]; + ResultSet rs; + String mdTableName = ""; + + dmd = source.getMetaData(); + tableTypes[0] = "TABLE"; + + boolean includeNRFuelSupply = true; + if(isDefaultDatabase) { + // If there is already data in the destination nrFuelSupply table, do not import + // the default database's nrFuelSupply table. + if(DatabaseUtilities.getRowCount(destination,"nrFuelSupply") > 0) { + includeNRFuelSupply = false; + } + } + + /** + * Inner class used to identify the tables and table rows to be copied + * from the "default" database to the "execution" database. This class + * allows table rows to be filtered by criteria specified in the + * Execution Runspec. Rows can be filtered by + *
      + *
    • year
    • + *
    • month
    • + *
    • link
    • + *
    • zone
    • + *
    • county
    • + *
    • state
    • + *
    • pollutant,
    • + *
    • emission process.
    • + *
    • day
    • + *
    • hour
    • + *
    • hourDayID
    • + *
    • roadType
    • + *
    • pollutantProcessID
    • + *
    • sourceUseType
    • + *
    • fuelType
    • + *
    • monthGroupID
    • , + *
    • fuelSubType
    • , and + *
    • sector
    • . + *
    + * To filter rows by runspec criteria, place the table's column names + * for the criteria in the corresponding entries below. + *

    + * Note that some tables contain data that must not be + * filtered. Tables with population data for a base year must not be + * filtered by the analysis year as the base year data is needed to grow + * the table data to the analysis year. Tables that contain distribution + * data for an entire population must not be filtered by selected + * members of the population as the full population data will be needed + * in performing calculations. (The exception to this is "Fraction" + * tables, where a member's fractional value of the entire population + * has already been calculated). + *

    + **/ + + class NRTableToCopy { + /** name of the table **/ + public String tableName = null; + /** optional name of a column that refers to a year **/ + public String yearColumnName = null; + /** optional name of a column that refers to a monthID **/ + public String monthColumnName = null; + /** optional name of a column that refers to a zoneID **/ + public String zoneColumnName = null; + /** optional name of a column that refers to a countyID **/ + public String countyColumnName = null; + /** optional name of a column that refers to a stateID **/ + public String stateColumnName = null; + /** optional name of a column that refers to a pollutantID **/ + public String pollutantColumnName = null; + /** optional name of a column that refers to a processID **/ + public String processColumnName = null; + /** optional name of a column that refers to an hourID **/ + public String hourColumnName = null; + /** optional name of a column that refers to a dayID **/ + public String dayColumnName = null; + /** optional name of a column that refers to a hourDayID **/ + public String hourDayIDColumnName = null; + /** optional name of a column that refers to a pollutant process **/ + public String pollutantProcessIDColumnName = null; + /** optional name of a column that refers to a source type use **/ + public String sourceUseTypeColumnName = null; + /** optional name of a column that refers to a fuel type **/ + public String fuelTypeColumnName = null; + /** optional name of a column that refers to a fuel sub type **/ + public String fuelSubTypeIDColumnName = null; + /** optional name of a column that refers to a monthGroupID **/ + public String monthGroupIDColumnName = null; + /** optional name of a column that refers to a sectorID **/ + public String sectorIDColumnName = null; + /** optional name of a column that refers to an equipment type ID **/ + public String equipmentTypeIDColumnName = null; + /** + * optional name that identifies a column whose values indicate + * whether records were user inputs. + **/ + public String isUserInputColumnName = null; + + /** Constructor for filling all parameters **/ + public NRTableToCopy(String tableNameToUse, + String yearColumnNameToUse, String monthColumnNameToUse, + String zoneColumnNameToUse, String countyColumnNameToUse, + String stateColumnNameToUse, + String pollutantColumnNameToUse, + String processColumnNameToUse, String dayColumnNameToUse, + String hourColumnNameToUse, + String hourDayIDColumnNameToUse, + String pollutantProcessIDColumnNameToUse, + String sourceUseTypeColumnNameToUse, + String fuelTypeColumnNameToUse, + String fuelSubTypeIDColumnNameToUse, + String monthGroupIDColumnNameToUse, + String sectorIDColumnNameToUse, + String equipmentTypeIDColumnNameToUse, + String isUserInputColumnNameToUse) { + tableName = tableNameToUse; + yearColumnName = yearColumnNameToUse; + monthColumnName = monthColumnNameToUse; + zoneColumnName = zoneColumnNameToUse; + countyColumnName = countyColumnNameToUse; + stateColumnName = stateColumnNameToUse; + pollutantColumnName = pollutantColumnNameToUse; + processColumnName = processColumnNameToUse; + dayColumnName = dayColumnNameToUse; + hourColumnName = hourColumnNameToUse; + hourDayIDColumnName = hourDayIDColumnNameToUse; + pollutantProcessIDColumnName = pollutantProcessIDColumnNameToUse; + sourceUseTypeColumnName = sourceUseTypeColumnNameToUse; + fuelTypeColumnName = fuelTypeColumnNameToUse; + fuelSubTypeIDColumnName = fuelSubTypeIDColumnNameToUse; + monthGroupIDColumnName = monthGroupIDColumnNameToUse; + sectorIDColumnName = sectorIDColumnNameToUse; + equipmentTypeIDColumnName = equipmentTypeIDColumnNameToUse; + isUserInputColumnName = isUserInputColumnNameToUse; + } + } + + NRTableToCopy[] tablesAndFilterColumns = { + new NRTableToCopy("NRAgeCategory", null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null, null), + new NRTableToCopy("nrATRatio", null, null, null, + null, null, "pollutantID", "processID", null, null, null, + null, null, null, "fuelSubTypeID", null, null, + null, null), + new NRTableToCopy("NRBaseYearEquipPopulation", null, null, + null, null, "stateID", null, null, null, null, null, + null, "sourceTypeID", null, null, null, null, null, + null), + new NRTableToCopy("nrcrankcaseemissionrate", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", "sourceTypeID", null, null, null, null, + null, null), + new NRTableToCopy("NRDayAllocation", null, null, null, null, + null, null, null, "dayID", null, null, null, null, + null, null, null, null, "NREquipTypeID", null), + new NRTableToCopy("NRDeterioration", null, null, null, null, + null, null, null, null, null, null, "polProcessID", + null, null, null, null, null, null, null), + new NRTableToCopy("NREngTechFraction", null, null, null, null, + null, null, "processID", null, null, null, null, + "sourceTypeID", null, null, null, null, null, null), + new NRTableToCopy("NREquipmentType", null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, "sectorID", "NREquipTypeID", null), + new NRTableToCopy("NREvapEmissionRate", null, null, null, null, + null, null, null, null, null, null, "polProcessID", + "sourceTypeID", null, null, null, null, null, null), + new NRTableToCopy("NRExhaustEmissionRate", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", "sourceTypeID", null, null, null, null, + null, null), + new NRTableToCopy("NRFuelOxyAdjustment", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", null, "fuelTypeID", null, null, null, + null, null), + new NRTableToCopy("NRGrowthIndex", "yearID", null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null, null), + new NRTableToCopy("NRGrowthPattern", null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null, null), + new NRTableToCopy("NRGrowthPatternFinder", null, null, null, + null, "stateID", null, null, null, null, null, null, + null, null, null, null, null, null, null), + new NRTableToCopy("nrHCSpeciation", null, null, null, + null, null, "pollutantID", "processID", null, null, null, + null, null, null, "fuelSubTypeID", null, null, + null, null), + new NRTableToCopy("NRHourAllocation", null, null, null, null, + null, null, null, null, "hourID", null, null, null, + null, null, null, null, null, null), + new NRTableToCopy("NRHourAllocPattern", null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null, null), + new NRTableToCopy("NRHourPatternFinder", null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null, "NREquipTypeID", null), + new NRTableToCopy("NRHPRangeBin", null, null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null), + new NRTableToCopy("nrMethaneTHCRatio", null, null, null, + null, null, null, "processID", null, null, null, + null, null, null, "fuelSubTypeID", null, null, + null, null), + new NRTableToCopy("NRMonthAllocation", null, "monthID", null, + null, "stateID", null, null, null, null, null, null, + null, null, null, null, null, "NREquipTypeID", null), + new NRTableToCopy("NRUSMonthAllocation", null, "monthID", null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, "NREquipTypeID", null), + new NRTableToCopy("NRPollutantProcessModelYear", null, null, + null, null, null, null, null, null, null, null, + "polProcessID", null, null, null, null, null, null, + null), + new NRTableToCopy("NRProcessEmissionRate", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", "sourceTypeID", null, null, null, null, + null, null), + new NRTableToCopy("NRSCC", null, null, null, null, null, null, + null, null, null, null, null, null, "fueltypeID", null, + null, null, "NREquipTypeID", null), + new NRTableToCopy("NRScrappageCurve", null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, "NREquipTypeID", null), + new NRTableToCopy("NRSourceBin", null, null, null, null, null, + null, null, null, null, null, null, null, "fueltypeID", + null, null, null, null, null), + new NRTableToCopy("NRSourceUseType", null, null, null, null, + null, null, null, null, null, null, null, + "sourcetypeID", null, null, null, null, null, null), + new NRTableToCopy("NRStateSurrogateTotal", null, null, null, + null, "stateID", null, null, null, null, null, null, + null, null, null, null, null, null, null), + new NRTableToCopy("NRSulfurAdjustment", null, null, null, null, + null, null, null, null, null, null, null, null, + "fueltypeID", null, null, null, null, null), + new NRTableToCopy("NRSurrogate", null, null, null, null, null, + null, null, null, null, null, null, null, null, null, + null, null, null, null), + new NRTableToCopy("NRTemperatureAdjustment", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", null, "fueltypeID", null, null, null, + null, null), + new NRTableToCopy("NRTransientAdjustFactor", null, null, null, + null, null, null, null, null, null, null, + "polProcessID", null, "fueltypeID", null, null, null, + "NREquipTypeID", null), + new NRTableToCopy("NRZoneAllocation", null, null, "zoneID", + null, "stateID", null, null, null, null, null, null, + null, null, null, null, null, null, null), + + }; + + // MUST be changed later + List listTableToCopy = new ArrayList(); + File tableFile = new File(NONROAD_TABLE_FILTER_FILE_NAME); + BufferedReader reader = new BufferedReader(new FileReader(tableFile)); + String line = null; + String[] cols = new String[19]; + while ((line = reader.readLine()) != null) { + if (line.trim().isEmpty() || line.trim().startsWith("#")) + continue; + line = line.trim(); + int start = 0; + int pos = line.indexOf(",", start); + int col = 0; + while (pos >= 0) { + cols[col++] = line.substring(start, pos).trim(); + start = pos + 1; + pos = line.indexOf(",", start); + } + cols[col++] = line.substring(start, line.length()).trim(); + if (col != 19) { + Logger.log(LogMessageCategory.ERROR, + "The row in NoroadTableFilter.csv is invalid: " + line); + continue; + } + if (cols[0] == null || cols[0].trim().isEmpty()) { + Logger.log(LogMessageCategory.ERROR, + "Table name must be non-empty: " + line); + continue; + } + listTableToCopy.add(new NRTableToCopy(cols[0].trim(), + (cols[1] == null || cols[1].trim().isEmpty()) ? null + : cols[1], (cols[2] == null || cols[2].trim() + .isEmpty()) ? null : cols[2], + (cols[3] == null || cols[3].trim().isEmpty()) ? null + : cols[3], (cols[4] == null || cols[4].trim() + .isEmpty()) ? null : cols[4], + (cols[5] == null || cols[5].trim().isEmpty()) ? null + : cols[5], (cols[6] == null || cols[6].trim() + .isEmpty()) ? null : cols[6], + (cols[7] == null || cols[7].trim().isEmpty()) ? null + : cols[7], (cols[8] == null || cols[8].trim() + .isEmpty()) ? null : cols[8], + (cols[9] == null || cols[9].trim().isEmpty()) ? null + : cols[9], (cols[10] == null || cols[10].trim() + .isEmpty()) ? null : cols[10], + (cols[11] == null || cols[11].trim().isEmpty()) ? null + : cols[11], (cols[12] == null || cols[12].trim() + .isEmpty()) ? null : cols[12], + (cols[13] == null || cols[13].trim().isEmpty()) ? null + : cols[13], (cols[14] == null || cols[14].trim() + .isEmpty()) ? null : cols[14], + (cols[15] == null || cols[15].trim().isEmpty()) ? null + : cols[15], (cols[16] == null || cols[16].trim() + .isEmpty()) ? null : cols[16], + (cols[17] == null || cols[17].trim().isEmpty()) ? null + : cols[17], (cols[18] == null || cols[18].trim() + .isEmpty()) ? null : cols[18])); + } + tablesAndFilterColumns = listTableToCopy.toArray(new NRTableToCopy[0]); + // end of MUST be changed later + reader.close(); + + for (int i = 0; i < tablesAndFilterColumns.length; i++) { + NRTableToCopy t = tablesAndFilterColumns[i]; + if (t == null) { // skip entries that are conditionally created + continue; + } + if(!includeNRFuelSupply && t.tableName.equalsIgnoreCase("nrFuelSupply")) { + continue; + } + boolean shouldLog = false; // t.tableName.equalsIgnoreCase("IMCoverage"); + if (shouldLog) + Logger.log(LogMessageCategory.INFO, + "InputDataManager transferring NonRoad table " + + t.tableName); + rs = dmd.getTables(null, "", t.tableName, tableTypes); + mdTableName = ""; + if (rs != null) { + if (rs.next()) { + mdTableName = rs.getString(3); + } + rs.close(); + } + + if (mdTableName.length() == 0 && allowMissingTables == true) { + continue; + } + + if (mdTableName.length() == 0 && allowMissingTables == false) { + Exception ex = new Exception("The Table " + t.tableName + + " does not exist in the " + " source database " + + source.getCatalog() + ". The merge is canceled."); + throw ex; + } + + Vector> clauseSets = new Vector>(); + + if (t.yearColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForYears(t.yearColumnName)); + } + if (t.monthColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForMonths(t.monthColumnName)); + } + if (t.dayColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForDays(t.dayColumnName)); + } + if (t.hourColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForHours(t.hourColumnName)); + } + if (t.zoneColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForZones(t.zoneColumnName)); + } + if (t.countyColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForCounties(t.countyColumnName)); + } + if (t.stateColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForStates(t.stateColumnName)); + } + if (t.pollutantColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForPollutants(t.pollutantColumnName)); + } + if (t.processColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForProcesses(t.processColumnName)); + } + if (t.hourDayIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForHourDayIDs(t.hourDayIDColumnName)); + } + if (t.pollutantProcessIDColumnName != null) { + addToClauseSets( + clauseSets, + buildSQLWhereClauseForPollutantProcessIDs(t.pollutantProcessIDColumnName)); + } + if (t.sourceUseTypeColumnName != null) { + addToClauseSets( + clauseSets, + buildSQLWhereClauseForNonRoadSourceUseTypes(t.sourceUseTypeColumnName)); + } + if (t.fuelTypeColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForNonroadFuelTypes(t.fuelTypeColumnName)); + } + if (t.fuelSubTypeIDColumnName != null) { + addToClauseSets( + clauseSets, + buildSQLWhereClauseForNonroadFuelSubTypes(t.fuelSubTypeIDColumnName)); + } + if (t.monthGroupIDColumnName != null) { + addToClauseSets( + clauseSets, + buildSQLWhereClauseForMonthGroupIDs(t.monthGroupIDColumnName)); + } + if (t.sectorIDColumnName != null) { + addToClauseSets(clauseSets, + buildSQLWhereClauseForSectors(t.sectorIDColumnName)); + } + if (t.equipmentTypeIDColumnName != null) { + addToClauseSets( + clauseSets, + buildSQLWhereClauseForNonRoadEquipmentTypes(t.equipmentTypeIDColumnName)); + } + + if (clauseSets.size() <= 0) { + if (shouldLog) + System.out.println("IDM No clause sets for " + t.tableName); + try { + copyTable(source, destination, t.tableName, "", + t.isUserInputColumnName,isDefaultDatabase); + } catch (SQLException ex) { + /** + * @explain A database error occurred while copying a table + * from one database to another. + **/ + Logger.logError(ex, "copyTable threw an SQLException"); + throw ex; + } catch (IOException ex) { + /** + * @explain A file system error occurred while copying a + * table from one database to another. + **/ + Logger.logError(ex, "copyTable threw an IOException"); + throw ex; + } + } else { + // Issue a copyTable for each combination of entries within + // clauseSets + String log = "IDM " + clauseSets.size() + " clause sets for " + + t.tableName + " ("; + int[] counters = new int[clauseSets.size()]; + for (int j = 0; j < clauseSets.size(); j++) { + counters[j] = 0; + Vector clauses = clauseSets.get(j); + if (j > 0) { + log += ","; + } + log += clauses.size(); + } + log += ")"; + if (shouldLog) + System.out.println(log); + + boolean done = false; + do { + String wholeWhereClause = ""; + for (int j = 0; j < clauseSets.size(); j++) { + Vector clauses = clauseSets.get(j); + String clause = clauses.get(counters[j]); + wholeWhereClause = addToWhereClause(wholeWhereClause, + clause); + } + + log = "\t\tdoing clause ("; + for (int j = 0; j < clauseSets.size(); j++) { + if (j > 0) { + log += ","; + } + log += counters[j]; + } + log += ") wholeWhereClause is " + wholeWhereClause.length() + + " long"; + if (shouldLog) + System.out.println(log); + + try { + if (shouldLog) + System.out.println(wholeWhereClause); + copyTable(source, destination, t.tableName, + wholeWhereClause, t.isUserInputColumnName,isDefaultDatabase); + } catch (SQLException ex) { + /** + * @explain A database error occurred while copying a + * table from one database to another. + **/ + Logger.logError(ex, "copyTable threw an SQLException"); + throw ex; + } catch (IOException ex) { + /** + * @explain A file system error occurred while copying a + * table from one database to another. + **/ + Logger.logError(ex, "copyTable threw an IOException"); + throw ex; + } + + // Move to the next combination of clauses + int index = 0; + boolean doneIncrementing = false; + while (!doneIncrementing) { + doneIncrementing = true; + counters[index]++; + Vector clauses = clauseSets.get(index); + if (counters[index] >= clauses.size()) { + doneIncrementing = false; + counters[index] = 0; + index++; + if (index >= clauseSets.size()) { + done = true; + doneIncrementing = true; + } + } + } + } while (!done); + } + // Update MySQL's statistics on the table + SQLRunner.executeSQL(destination, "ANALYZE TABLE " + t.tableName); + } + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO, + "InputDataManager transferred all NonRoad tables."); + } + + /** + * Copies a table from one database to another. Used internally by merge. + * It is not an error if the table is not present in the source database. + * It is an error if the table is not present in the destination database. + * This allows partial databases to be imported easier. + * @param source The database to get data from. + * @param destination The database to write data to + * @param tableName The table name to copy over. + * @param whereClause The where clause to filter the rows of the source table with. + * @param isUserInputColumnName Column name which is been populated as 'Y' if user inputs data. + * @param isDefaultDatabase true when the source database is the default database. + * This flag affects conversion of kilometers to miles. + * @throws SQLException If an SQL error occurs. + * @throws IOException If an IO error occurs while working with a temporary data file. + **/ + void copyTable(Connection source, Connection destination, String tableName, String whereClause, + String isUserInputColumnName, boolean isDefaultDatabase) throws SQLException, IOException { + String sqlConvertToMiles = ""; + String sqlConvertBackToKM = ""; + boolean needToConvertBackToKM = false; + try { + String updateSQL = "UPDATE " + tableName + " SET isUserInput=?"; + String alterTable = "ALTER TABLE " + tableName + " ADD ( " + + "isUserInput CHAR(1) NOT NULL DEFAULT 'N')"; + PreparedStatement updateStatement = source.prepareStatement(updateSQL); + String selectSQL = "SELECT * FROM " + tableName + " LIMIT 0"; + PreparedStatement selectSourceStatement = source.prepareStatement(selectSQL); + PreparedStatement selectDestinationStatement = destination.prepareStatement(selectSQL); + if(!isDefaultDatabase && CompilationFlags.USE_KILOMETERS_IN_USER_DATA) { + // Look for tables that contain distance or speed data + String[] columns = null; + if(tableName.equalsIgnoreCase("HPMSVtypeYear")) { + columns = new String[] { + "HPMSBaseYearVMT" + }; + } else if(tableName.equalsIgnoreCase("HPMSVtypeDay")) { + columns = new String[] { + "VMT" + }; + } else if(tableName.equalsIgnoreCase("SourceTypeYearVMT")) { + columns = new String[] { + "VMT" + }; + } else if(tableName.equalsIgnoreCase("SourceTypeDayVMT")) { + columns = new String[] { + "VMT" + }; + } else if(tableName.equalsIgnoreCase("Link")) { + columns = new String[] { + "linkLength", "linkAvgSpeed" + }; + } else if(tableName.equalsIgnoreCase("LinkAverageSpeed")) { + columns = new String[] { + "averageSpeed" + }; + } else if(tableName.equalsIgnoreCase("SHO")) { + columns = new String[] { + "distance" + }; + } else if(tableName.equalsIgnoreCase("DriveSchedule")) { + columns = new String[] { + "averageSpeed" + }; + } else if(tableName.equalsIgnoreCase("DriveScheduleSecond")) { + columns = new String[] { + "speed" + }; + } else if(tableName.equalsIgnoreCase("driveScheduleSecondLink")) { + columns = new String[] { + "speed" + }; + } + if(columns != null && columns.length > 0) { + String kmPerMile = "1.609344"; + sqlConvertToMiles = "update " + tableName + " set "; + sqlConvertBackToKM = "update " + tableName + " set "; + for(int i=0;i 0) { + sqlConvertToMiles += ", "; + sqlConvertBackToKM += ", "; + } + sqlConvertToMiles += columns[i] + "=" + columns[i] + "/" + kmPerMile; + sqlConvertBackToKM += columns[i] + "=" + columns[i] + "*" + kmPerMile; + } + } + } + if(sqlConvertToMiles.length() > 0) { + SQLRunner.executeSQL(source, sqlConvertToMiles); + needToConvertBackToKM = true; + // Now the user's database contains MILE data and needs to be changed back + // to KM basis ASAP. + } + if(isUserInputColumnName != null) { + ResultSet result = SQLRunner.executeQuery(selectSourceStatement, selectSQL); + + ResultSetMetaData metaData = result.getMetaData(); + boolean isUserInputColumn = false; + for(int i=1; i<=metaData.getColumnCount(); i++) { + if(metaData.getColumnName(i).equalsIgnoreCase("isUserInput")) { + isUserInputColumn = true; + } + } + if(!isUserInputColumn) { + SQLRunner.executeSQL(source, alterTable); + } + result.close(); + selectSourceStatement.close(); + result = SQLRunner.executeQuery(selectDestinationStatement, selectSQL); + metaData = result.getMetaData(); + isUserInputColumn = false; + for(int i=1; i<=metaData.getColumnCount(); i++) { + if(metaData.getColumnName(i).equalsIgnoreCase("isUserInput")) { + isUserInputColumn = true; + } + } + if(!isUserInputColumn) { + SQLRunner.executeSQL(destination, alterTable); + } + result.close(); + selectSourceStatement.close(); + updateStatement.setString(1, "Y"); + SQLRunner.execute(updateStatement, updateSQL); + } + updateStatement.close(); + boolean sourceHadCopiedData = + DatabaseUtilities.copyTable(source,destination,tableName,whereClause,false); + if(mergeSession != null && sourceHadCopiedData) { + mergeSession.add(source,tableName); + } + } catch( SQLException e ) { + /** + * @issue copyTable threw an SQLException while Copying table [*] from [*] to [*] + * @explain An error occurred while moving data withi a table into another database. + **/ + String s = "copyTable threw an SQLException while Copying table " + tableName + + " from " + source.getCatalog() + " to " + destination.getCatalog() ; + Logger.logError( e , s ) ; + throw e; + } finally { + if(needToConvertBackToKM && sqlConvertBackToKM.length() > 0) { + try { + SQLRunner.executeSQL(source, sqlConvertBackToKM); + } catch(SQLException e) { + String s = "copyTable threw an SQLException while converting miles to KM in table " + tableName + + " from " + source.getCatalog(); + Logger.logError( e , s ) ; + } + needToConvertBackToKM = false; + } + } + } // end of copyTable method + + /** Ensure each vehID and dayID combination gets a unique vehID. **/ + public static void createUniqueVehicleIDs() { + String[] statements = { + "alter table SampleVehicleDay add column originalVehID int null", + "alter table SampleVehicleTrip add column originalVehID int null", + "alter table SampleVehicleTrip add column isConverted int default 0", + "alter table SampleVehicleDay drop primary key", + "alter table SampleVehicleDay add index (vehID, dayID)", + "alter table SampleVehicleDay add column uniqueVehID int not null auto_increment" + + ", add primary key (uniqueVehID)", + "update SampleVehicleDay set originalVehID=vehID", + "update SampleVehicleTrip set originalVehID=vehID", + "update SampleVehicleTrip, SampleVehicleDay" + + " set SampleVehicleTrip.vehID=SampleVehicleDay.uniqueVehID," + + " SampleVehicleTrip.isConverted=1" + + " where SampleVehicleTrip.dayID=SampleVehicleDay.dayID" + + " and SampleVehicleTrip.vehID=SampleVehicleDay.vehID" + + " and SampleVehicleTrip.isConverted=0", + "update SampleVehicleDay set vehID=uniqueVehID", + "alter table SampleVehicleDay drop column uniqueVehID", + "alter table SampleVehicleDay drop column originalVehID", + "alter table SampleVehicleTrip drop column originalVehID", + "alter table SampleVehicleTrip drop column isConverted" + }; + String sql = ""; + + Connection executionConnection = null; + try { + executionConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.EXECUTION); + for(int i=0;i merges = new TreeSet(); + ArrayList orderedMerges = new ArrayList(); + ArrayList + connections = new ArrayList(); + TreeMap folderNameByServerName = new TreeMap(); + + boolean doShallowOnly = true; + boolean didShallowTables = false; + + public void add(Connection db, String tableName) { + MergeConnectionInformation info = getConnectionInformation(db); + if(info == null) { + return; + } + MergedTable mt = new MergedTable(); + mt.serverName = info.serverName; + mt.databaseName = info.databaseName; + mt.tableName = tableName; + if(merges.contains(mt)) { + return; + } + merges.add(mt); + orderedMerges.add(mt); + boolean gotToImportantStep = false; + try { + // Obtain the file's size and modification date + if(info.dataFolder != null && info.dataFolder.exists()) { + File sourceFolder = new File(info.dataFolder,info.databaseName); + File sourceMYD = new File(sourceFolder,tableName.toLowerCase() + ".MYD"); + if(sourceMYD.exists()) { + gotToImportantStep = true; + mt.dataFileSize = sourceMYD.length(); + mt.dataFileModified = sourceMYD.lastModified(); + } + } + } catch(Exception e) { + if(gotToImportantStep) { + /** + * @explain While details for the files used by a database table, an + * error occurred. + **/ + Logger.logError(e,"Unable to get file information for " + tableName + + " while tracking table usage."); + } + } + } + + private MergeConnectionInformation getConnectionInformation(Connection db) { + MergeConnectionInformation info = null; + for(Iterator i=connections.iterator();i.hasNext();) { + info = (MergeConnectionInformation)i.next(); + if(info.db == db) { + return info; + } + } + info = new MergeConnectionInformation(); + info.db = db; + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + try { + // Get database name and server name + info.databaseName = db.getCatalog(); + info.serverName = db.getMetaData().getURL(); + // Example URL: jdbc:mysql://localhost/proj20090125input + int startIndex = info.serverName.indexOf("//"); + if(startIndex >= 0) { + int endIndex = info.serverName.indexOf("/",startIndex+2); + if(endIndex >= 0) { + info.serverName = info.serverName.substring(startIndex+2,endIndex); + } + } + + // Get and validate the data folder for the database's server + String dataFolderName = (String)folderNameByServerName.get(info.serverName); + if(dataFolderName == null) { + sql = "SHOW VARIABLES"; + query.open(db,sql); + while(query.rs.next()) { + String name = query.rs.getString("Variable_name"); + if(name != null && name.equalsIgnoreCase("datadir")) { + dataFolderName = query.rs.getString("Value"); + break; + } + } + query.close(); + + if(dataFolderName == null || dataFolderName.length() <= 0) { + throw new SQLException("Unable to find datadir variable using SHOW VARIABLES"); + } + folderNameByServerName.put(info.serverName,dataFolderName); + } + File dataFolder = new File(dataFolderName); + if(!dataFolder.exists()) { + dataFolder = null; // this happens when working with remote servers + // throw new IOException("datadir (" + dataFolderName + ") does not exist"); + } + info.dataFolder = dataFolder; + + connections.add(info); + return info; + } catch(Exception e) { + /** + * @explain A database error occurred while gathering table details for auditing. + **/ + Logger.logError(e,"Unable to get database details for table tracking"); + return null; + } finally { + query.onFinally(); + } + } + } + + /** Begin tracking tables used within merges. **/ + public static void startMergeSession() { + mergeSession = new MergeSession(); + mergeSession.doShallowOnly = true; + mergeSession.didShallowTables = false; + } + + /** Authorize merging of deep tables after all key tables have been merged **/ + public static void advanceMergeSession() { + mergeSession.doShallowOnly = false; + mergeSession.didShallowTables = true; + } + + /** + * Store the information tracked during merges into the output database. + * @param runID MOVESRun.MOVESRunID to be used within MOVESTablesUsed.MOVESRunID. + **/ + public static void endMergeSession(int runID) { + if(mergeSession == null) { + return; + } + String sql = ""; + Connection outputDB = null; + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + if(outputDB == null) { + return; + } + for(Iterator i=mergeSession.orderedMerges.iterator();i.hasNext();) { + MergedTable mt = (MergedTable)i.next(); + sql = "insert into MOVESTablesUsed (MOVESRunID, databaseServer, databaseName," + + "tableName, dataFileSize, dataFileModificationDate) " + + " values (" + runID + + "," + DatabaseUtilities.escapeSQL(mt.serverName,true) + + "," + DatabaseUtilities.escapeSQL(mt.databaseName,true) + + "," + DatabaseUtilities.escapeSQL(mt.tableName,true) + + "," + (mt.dataFileSize > 0? (""+mt.dataFileSize) : "null") + + "," + (mt.dataFileModified != 0? DatabaseUtilities.escapeSQL( + FileTimeUtility.convertFileTimeToString(mt.dataFileModified), + true) : "null") + + ")"; + SQLRunner.executeSQL(outputDB,sql); + } + } catch(Exception e) { + Logger.logSqlError(e,"Unable to store table tracking details",sql); + } finally { + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + mergeSession = null; + } +} // end of InputDataManager class diff --git a/gov/epa/otaq/moves/master/framework/InputDataManagerTest.java b/gov/epa/otaq/moves/master/framework/InputDataManagerTest.java new file mode 100644 index 0000000..f27b79e --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InputDataManagerTest.java @@ -0,0 +1,132 @@ +/************************************************************************************************** + * @(#)InputDataManagerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.sql.*; +import junit.framework.*; +import java.util.Vector; + +/** + * Test Case for the InputDataManager class + * + * @author Cimulus + * @version 2004-09-30 +**/ +public class InputDataManagerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public InputDataManagerTest(String name) { + super(name); + } + + /** + * Prepares a sample ExecutionRunSpec for use in the various tests. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If a database error occurs. + **/ + protected void setUp() throws InterruptedException, SQLException { + // Setup an execution RunSpec with enough sample data to return non-empty sql + // strings below + ExecutionRunSpecTest.setupExecutionRunSpec(); + } + + /** Test the various buildWhereClause functions. **/ + public void testWhereClauses() { + // Verify each build function returns a non-empty string + Vector sqls = null; + + sqls = InputDataManager.buildSQLWhereClauseForYears("year"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForMonths("month"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForCounties("COUNTY"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForPollutants("POLLUTANT.PollutantID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForProcesses("Process.ProcessID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForPollutantProcessIDs("PolProcessID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForDays("day"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForHours("hour"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForRoadTypes("RoadTypeID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForFuelTypes("FuelTypeID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + + sqls = InputDataManager.buildSQLWhereClauseForSourceUseTypes("SourceTypeID"); + assertNotNull(sqls); + assertTrue(sqls.size() > 0); + } + + /** + * Tests merge() + * @throws Exception from merge(), in case of error. + **/ + public void testMerge() throws Exception { + InputDataManager.merge(); + + Connection executionConnection = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + try { + Statement statement = executionConnection.createStatement(); + try { + assertRecordsInTable(statement, "DayOfAnyWeek", 7); + } finally { + statement.close(); + } + } finally { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionConnection); + } + } + + /** + * Checks that a table contains the expected number of rows. + * @param statement A JDBC statement object connected to the target database. + * @param tableName The name of the table to test for. + * @param expectedRowCount The number of rows expected in the destination database. This is + * currently ignored since this will depend on the sample data in the source database. + * @throws SQLException If a SQL error occurs. + **/ + void assertRecordsInTable(Statement statement, String tableName, int expectedRowCount) + throws SQLException { + String sql = "SELECT COUNT(*) FROM " + tableName; + ResultSet rs = statement.executeQuery(sql); + try { + assertTrue("SELECT COUNT(*) returned no answer.", rs.next()); + int numRows = rs.getInt(1); + assertTrue(tableName + " has no rows.", numRows > 0); + } finally { + rs.close(); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/IntegratedPostProcessor.java b/gov/epa/otaq/moves/master/framework/IntegratedPostProcessor.java new file mode 100644 index 0000000..935abe6 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/IntegratedPostProcessor.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)IntegratedPostProcessor.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.sql.Connection; + +/** + * The base class for all classes that modify data as it is received from the distributed workers, + * before it is passed on to the final output processing and data aggregation logic. This class + * provides two methods: one that is performed each time a work bundle is received and one that is + * performed only after all the work bundles have been received. + * + * @author Cimulus + * @version 2006-11-30 +**/ +public abstract class IntegratedPostProcessor { + /** + * Default constructor + **/ + public IntegratedPostProcessor() { + } + + /** + * Process recently imported records in the database. The specifed database will only have + * newly imported records and won't have records from previous imports which have already + * been moved to the output database. The data is stored in the TemporaryOutputImport table. + * @param database a Connection to a database containing the TemporaryOutputImport table + **/ + public void execute(Connection database) { + } + + /** + * Process the MOVESOutput table in the output database. + * @param outputDatabase a Connection to the current output database + * @param executionDatabase a Connection to the current execution database + * @param isBeforeUnitConversion true if units have not yet been set to the user + * supplied values. false after units have been converted and other aggregations + * performed. + **/ + public void doFinalPostProcessingOnOutputDatabase(Connection outputDatabase, + Connection executionDatabase, boolean isBeforeUnitConversion) { + } +} diff --git a/gov/epa/otaq/moves/master/framework/InterconnectionTracker.java b/gov/epa/otaq/moves/master/framework/InterconnectionTracker.java new file mode 100644 index 0000000..7e262b1 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InterconnectionTracker.java @@ -0,0 +1,136 @@ +/************************************************************************************************** + * @(#)InterconnectionTracker.java + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.util.*; +import java.io.*; + +/** + * Record interconnections between MOVES' components. These interactions are dynamic, + * subject to compilation flags and user mode settings. As such, an automated method + * of recording these interactions is essential for accurate documentation. + * + * @author Wesley Faler + * @version 2013-11-29 +**/ +public class InterconnectionTracker { + /** Name of file to hold recorded tracking information **/ + private static final String trackingFileName = "CalculatorInfo.txt"; + + /** Tracking status **/ + private static boolean isTracking = false; + /** Writer for the tracking file **/ + private static PrintWriter writer = null; + + /** Begin tracking interconnections **/ + public static void startTracking() { + finishTracking(); + if(CompilationFlags.GENERATE_CALCULATOR_INFO_DOCUMENTATION) { + try { + writer = new PrintWriter(trackingFileName); + writer.println("// Registration\tOutputPollutantName\tOutputPollutantID\tProcessName\tProcessID\tModuleName"); + writer.println("// Subscribe\tModuleName\tProcessName\tProcessID\tGranularity\tPriority"); + writer.println("// Chain\tOutputModuleName\tInputModuleName"); + isTracking = true; + Logger.log(LogMessageCategory.INFO,"Started tracking interconnections"); + } catch(Exception e) { + Logger.logError(e,"Unable to write to " + trackingFileName); + } + } + } + + /** End tracking interconnections **/ + public static void finishTracking() { + if(writer != null) { + try { + writer.flush(); + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + writer = null; + } + isTracking = false; + } + + /** + * Record a calculator's registration of an output pollutant. + * @param r a successful registration + **/ + public static void recordRegistration(EmissionCalculatorRegistration r) { + if(!isTracking) { + return; + } + // Registration OutputPollutantName OutputPollutantID ProcessName ProcessID ModuleName + String line = "Registration" + + "\t" + r.pollutant.pollutantName + + "\t" + r.pollutant.databaseKey + + "\t" + r.process.processName + + "\t" + r.process.databaseKey + + "\t" + getModuleName(r.emissionCalculator); + writeLine(line); + } + + /** + * Record a subscription to the MasterLoop. + * @param loopable The target loopable to subscribe. + * @param process The process to subscribe it for. + * @param loopGranularity The granularity level to execute it at. + * @param priority The priority to execute it at relative to other loopable objects at the + * same granularity. + **/ + public static void recordSubscription(MasterLoopable loopable, EmissionProcess process, + MasterLoopGranularity loopGranularity, int priority) { + if(!isTracking) { + return; + } + // Subscribe ModuleName ProcessName ProcessID Granularity Priority + String line = "Subscribe" + + "\t" + getModuleName(loopable) + + "\t" + process.processName + + "\t" + process.databaseKey + + "\t" + loopGranularity.toString() + + "\t" + MasterLoopPriority.decode(priority); + writeLine(line); + } + + /** + * Record a calculator chaining its output to another calculator. + * @param output The calculator producing results that require results from a prior calculator. + * @param input The calculator that produces results that are then used to make the final output. + **/ + public static void recordChain(EmissionCalculator output, EmissionCalculator input) { + if(!isTracking) { + return; + } + // Chain OutputModuleName InputModuleName + String line = "Chain" + + "\t" + getModuleName(output) + + "\t" + getModuleName(input); + writeLine(line); + } + + /** + * Obtain the short name of an object's class. + * @param thing object to be examined + * @return class name without any package + **/ + private static String getModuleName(Object thing) { + return thing.getClass().getSimpleName(); + } + + /** + * Add one line to the tracking text file. + * @param line text to be appended. + **/ + private static void writeLine(String line) { + if(!isTracking || writer == null) { + return; + } + writer.println(line); + } +} diff --git a/gov/epa/otaq/moves/master/framework/InternalControlStrategy.java b/gov/epa/otaq/moves/master/framework/InternalControlStrategy.java new file mode 100644 index 0000000..9e457fb --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InternalControlStrategy.java @@ -0,0 +1,137 @@ +/************************************************************************************************** + * @(#)InternalControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; +import java.sql.*; +import javax.swing.JPanel; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * The base class for all Control Strategies that modify core input data at the start of a Master + * Loop iteration. Implements Comparable to facilitate TreeSet storage. Internal Control + * Strategies typically model conditions (or controls) affecting simulation inputs that change with + * changes in the Master Loop Context. They can add their own panel to the MOVES GUI to query the + * user for the condition parameters. + * + * @author Wesley Faler + * @version 2007-02-13 +**/ +public abstract class InternalControlStrategy extends ControlStrategy + implements MasterLoopable, Comparable { + /** GeographicSelection objects **/ + public TreeSet geographicSelections = new TreeSet(); + /** TimeSpan objects **/ + public TreeSet timeSpans = new TreeSet(); + /** OnRoadVehicleSelection objects **/ + TreeSet onRoadVehicleSelections = new TreeSet(); + /** OffRoadVehicleSelection objects **/ + TreeSet offRoadVehicleSelections = new TreeSet(); + /** description of the instance **/ + String description = new String(""); + + /** + * Gets the GUI detail panel object for the user to configure details specific to the + * derived subclass. + * @return The associated GUI JPanel for the derived subclass. + **/ + abstract public InternalControlStrategyPanel getDetailsPanel(); + + /** + * Creates XML representing this instance + * @return XML, ready to be inserted into a larger XML file under a suitable root. + * null if only tab-separated-values are supported. + **/ + abstract public String getXML(); + + /** + * Creates Tab-Separated-Value text representing this instance. + * @return text, ready to be inserted into a text file. null if only XML is supported. + **/ + abstract public String getTSV(); + + /** + * Read XML into this instance + * @param className name of the class used to instantiate this object + * @param root XML object under which the XML returned by getXML() has been stored + * @return true if the XML could be read successfully + **/ + abstract public boolean acceptXML(String className,Node root); + + /** + * Read Tab-Separated-Values into this instance + * @param className name of the class used to instantiate this object + * @param text tab-separated-values as returned by getTSV() + * @return true if the text could be read successfully + **/ + abstract public boolean acceptTSV(String className,String text); + + /** Cancel all user edits made since last save or load from XML **/ + public void cancelEdits() { + // Default is to do nothing + } + + /** + * Get a description of the object + * @return a description of the object, never null or "" + **/ + public String getDescription() { + if(description == null || description.length() <= 0) { + return "(default)"; + } + return description; + } + + /** + * Change the description + * @param newDescription new description. If null or "", getDescription() will + * return a default description. + **/ + public void setDescription(String newDescription) { + if(newDescription == null) { + description = ""; + } else { + description = newDescription; + } + } + + /** + * Returns the description of the object + * @return a description of the object, never null or "" + **/ + public String toString() { + return getDescription(); + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another InternalControlStrategy object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + String myDescription = getDescription(); + String otherDescription = ((InternalControlStrategy)other).getDescription(); + return myDescription.compareTo(otherDescription); + } + + /** + * Overrides Object.equals() to provide a real equality test. + * @param other The object to test for equality against. + * @return True if equal. + **/ + public boolean equals(Object other) { + if(!(other instanceof InternalControlStrategy)) { + return false; + } + return compareTo(other) == 0; + } +} diff --git a/gov/epa/otaq/moves/master/framework/InternalControlStrategyPanel.java b/gov/epa/otaq/moves/master/framework/InternalControlStrategyPanel.java new file mode 100644 index 0000000..9bbfbb3 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InternalControlStrategyPanel.java @@ -0,0 +1,105 @@ +/************************************************************************************************** + * @(#)InternalControlStrategiesPanel.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; +import java.sql.*; +import javax.swing.JPanel; +import gov.epa.otaq.moves.master.gui.*; +import gov.epa.otaq.moves.master.runspec.*; + + +/** + * The base class for all panels providing GUI access to instance data within + * InternalControlStrategy objects. + * + * @author Wesley Faler + * @version 2012-11-09 +**/ +public abstract class InternalControlStrategyPanel extends JPanel implements RunSpecEditor { +/** +* The name of the currentClassName that the ControlStrategiesPanel is currently controlling +**/ + String currentClassName = "" ; + + /** + * Push visual information into a RunSpec object. + * @param runspec The runspec to save the editor's values to. + **/ + public void saveToRunSpec(RunSpec runspec) { + } + + /** + * Retrieve information from a RunSpec object and push it to visual controls. + * @param runspec The runspec to load the editor's values from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + } + + /** + * Determine the status of a portion of the RunSpec. This status is used for displaying + * an icon to the user to let them know whether enough data is present to execute the RunSpec. + *
    + * The RunSpecEditor should make note of the new status in the section map, likely using + * it's name as the key. If stored by a previous call, a previously calculated + * status is in the map as well and will need to be removed prior to updating. + * + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec,TreeMap sections) { + return null ; + } + + /** + * Obtain an explanation for a recent called to calculateRunSpecSectionStatus that + * yielded anything other than total success. + * @return human-readable text explaining the current state. + **/ + public String explainRunSpecSectionStatus() { + return null; + } + + /** + * Place default values into a section of the RunSpec under control of this editor. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec,TreeMap sections) { + return null ; + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/framework/InternalControlStrategySimpleInstance.java b/gov/epa/otaq/moves/master/framework/InternalControlStrategySimpleInstance.java new file mode 100644 index 0000000..e4c5927 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InternalControlStrategySimpleInstance.java @@ -0,0 +1,19 @@ +/************************************************************************************************** + * @(#)InternalControlStrategySimpleInstance.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This interface is implemented by InternalControlStrategy objects that wish to limit the + * number of instances of their type to exactly 1 per RunSpec and to provide a simplified + * user interface without the object management operations required of full strategies. + * + * @author Wesley Faler + * @version 2009-10-05 +**/ +public interface InternalControlStrategySimpleInstance { + /** There are no methods required for this interface, its mere presense is sufficient **/ +} diff --git a/gov/epa/otaq/moves/master/framework/InternalControlStrategySingleInstanceOnly.java b/gov/epa/otaq/moves/master/framework/InternalControlStrategySingleInstanceOnly.java new file mode 100644 index 0000000..eac41fe --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InternalControlStrategySingleInstanceOnly.java @@ -0,0 +1,18 @@ +/************************************************************************************************** + * @(#)InternalControlStrategySingleInstanceOnly.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This interface is implemented by InternalControlStrategy objects that wish to limit the + * number of instances of their type to at most 1 per RunSpec. + * + * @author Cimulus + * @version 2004-04-25 +**/ +public interface InternalControlStrategySingleInstanceOnly { + /** There are no methods required for this interface, its mere presense is sufficient **/ +} diff --git a/gov/epa/otaq/moves/master/framework/InternalControlStrategyUseImporterOnly.java b/gov/epa/otaq/moves/master/framework/InternalControlStrategyUseImporterOnly.java new file mode 100644 index 0000000..dcea635 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/InternalControlStrategyUseImporterOnly.java @@ -0,0 +1,20 @@ +/************************************************************************************************** + * @(#)InternalControlStrategyUseImporterOnly.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This interface is implemented by InternalControlStrategy objects that wish to use + * the data importers for activation rather than a traditional navigation panel. Such + * InternalControlStrategy objects can never be part of a RunSpec as they are created + * dynamically at the start of a simulation based on presence of their table data. + * + * @author Wesley Faler + * @version 2011-08-06 +**/ +public interface InternalControlStrategyUseImporterOnly { + /** There are no methods required for this interface, its mere presense is sufficient **/ +} diff --git a/gov/epa/otaq/moves/master/framework/MOVESAPI.java b/gov/epa/otaq/moves/master/framework/MOVESAPI.java new file mode 100644 index 0000000..49c72cf --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MOVESAPI.java @@ -0,0 +1,1030 @@ +/************************************************************************************************** + * @(#)MOVESAPI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.importers.ImporterManager; +import java.io.*; +import java.text.SimpleDateFormat; +import java.util.*; +import java.net.*; +import java.sql.*; +import gov.epa.otaq.moves.worker.framework.WorkerConfiguration; + +/** + * This class provides the API for MOVES. + *

    + * API High-level process: + * + * + * + * + * + * + * + * + * + * + * + *
    + * + * 1) Fill in the runSpecFileList + *
    + * 2) Set the error level + *
    + * 3) Call runBatch() + *
    + *
    + * Command Line Arguments: + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    + * Argument + * + * Parameters + * + * Purpose or function + *
    + * -r + * + * RunSpec file name and path + * + * Specifies the location and name of a RunSpec file. If not using the "-rl" or "-i" + * arguments, then there should be at least one occurrence of "-r". + *
    + * -rl + * + * RunSpec list file name and path + * + * Specifies the location and name of a file that contains a list of RunSpec files to run. + * See "RunSpec List File Format" below. + *
    + * -i + * + * Importer XML file name and path + * + * Specifies the location and name of an importer XML file. A RunSpec is not needed + * to use this option as the importer file contains all required filters. + *
    + * -il + * + * Importer XML list file name and path + * + * Specifies the location and name of a file that contains a list of importer XML files to run. + * Similar to the -rl option. See "RunSpec List File Format" below. + *
    + * -noworker + * + * + * + * Prevents the master from automatically starting a local worker. + *
    + * -onlytodo or -maketodo + * + * + * + * Causes RunSpecs to generate TODO files but never to retrieve DONE files nor to cleanup + * TODO, DONE, or InProgress files upon exit. Implies -noworker. + *
    + * -p + * + * PDSpec XML file + * + * Pickup DONE files from other masters, storing them to databases named in the PDSpec. + * A GUI option can provide example PDSpec files. + *
    + *
    + * RunSpec List File Format: + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
    + * A RunSpec list file can have any valid name and extension but must specify the + * location and name of a single RunSpec per line. One example: + *
    + * + * test01.runspec + *
    + * myrunspec.xml + *
    + * c:\temp\myrunspec.xml + *
    + * This list file specifies three files, the first two (having implicit relative paths) + * are expected to be in the current directory. The third file is identified by an + * absolute path. + *
    + * + * @author Wesley Faler + * @author Sarah Luo + * @author Tim Hull + * @version 2014-01-23 +**/ +public class MOVESAPI implements MOVESEngineListener, MOVESEngine.CompletedListener { + /** The singleton. **/ + static MOVESAPI theAPI; + + /** Access method to the singleton. **/ + public static MOVESAPI getTheAPI() { + if(theAPI == null) { + theAPI = new MOVESAPI(); + } + return theAPI; + } + + /** TCP/IP port used on the socket designating a running master's presense **/ + private static final int MASTER_FLAG_PORT = 13131; + /** TCP/IP socket used to designate a running master's presense **/ + private static ServerSocket masterSocket = null; + /** Depth counter for designating a running master's presense **/ + private static int masterSocketCount = 0; + + /** Indicate that a running master is present on this computer **/ + public static void setupFlagForMaster() { + if(masterSocketCount == 0) { + try { + masterSocket = new ServerSocket(MASTER_FLAG_PORT); + } catch(Exception e) { + if(e.toString().indexOf("JVM_Bind") < 0) { + /** + * @explain The MOVES master program uses a TCP/IP socket to signal the fact that + * it is running, thus working to prevent duplicate executions on a single computer. + * MOVES was unable to create this socket, most likely due to an operating system + * firewall rule that does not trust the MOVES application. + **/ + Logger.logError(e,"Unable to setup flag for master's presence"); + } + } + } + masterSocketCount++; + } + + /** Remove the indication that a running master is present on this computer **/ + public static void shutdownFlagForMaster() { + masterSocketCount--; + if(masterSocketCount <= 0) { + if(masterSocket != null) { + try { + masterSocket.close(); + } catch(Exception e) { + // Nothing to do here + } + masterSocket = null; + } + InstanceCounter.shutdown(); // all master code eventually goes through this point during shutdown + } + } + + /** Determine if a running master is present on this computer **/ + public static boolean hasMasterOnThisComputer() { + ServerSocket s = null; + try { + s = new ServerSocket(MASTER_FLAG_PORT); + // If we got this far, there was no master already running + return false; + } catch(Exception e) { + // Nothing to do here, these are normal and expected if a master is running + return true; + } finally { + if(s != null) { + try { + s.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + + /** The active RunSpec. **/ + RunSpec runSpec; + /** + * The path of the file that is storing the active runSpec. This will be blank + * until the RunSpec is saved or loaded. + **/ + File runSpecFilePath; + + /** True when a PDSpec is being executed. **/ + boolean isExecutingPDSpec = false; + /** True when PDSpec execution should be halted. **/ + boolean shouldStopPDSpec = false; + + /** The list of File objects representing RunSpecs to run during batch mode. **/ + public LinkedList runSpecFileList = new LinkedList(); + /** The list of File objects representing importers to run during batch mode. **/ + public LinkedList importerFileList = new LinkedList(); + /** The list of File objects representing PDSpecs to run during batch mode. **/ + public LinkedList pdSpecFileList = new LinkedList(); + + /** PDSpec being iterated over, used when doing asychronous iteration **/ + private PDSpec iteratingPDSpec = null; + /** Index of the current entry within iteratingPDSpec, used when doing asychronous iteration **/ + private int pdSpecEntryIndex = 0; + + /** Constructor **/ + public MOVESAPI() { + MOVESEngine.theInstance = new MOVESEngine(); + runSpec = new RunSpec(); + // This class receives engine progress notifications + MOVESEngine.subscribeToProgress(this); + MOVESEngine.completedListeners.add(this); + } + + /** + * Invokes MOVES in either GUI mode or "batch" mode, based on command line arguments. + * @param commandLineArgs A String array containing the command line arguments. + **/ + public void runApplication(String commandLineArgs[]) { + try { + setupFlagForMaster(); + + boolean isError = false; + if(parseCommandLineArgs(commandLineArgs)) { + try { + runBatch(); + } catch (InterruptedException exception) { + /** @nonissue **/ + Logger.logException(LogMessageCategory.INFO, exception); + } + } else { + isError = true; + System.err.println("Invalid command line arg(s)"); + } + if(isError) { + // If there was an error, this function won't do much anyway, but end with + // some non-zero number that could be used by a batch script + /** @nonissue **/ + MOVESThread.signalAllToTerminate(); + System.exit(1); + } + } finally { + shutdownFlagForMaster(); + } + } + + /** + * Displays the command line options that are expected when in "batch" mode. + **/ + void showUsage() { + /** @nonissue **/ + System.out.println("command line options:"); + /** @nonissue **/ + System.out.println("\t-r [runspec path and name] A runspec file to use"); + /** @nonissue **/ + System.out.println("\t-rl [runspec list path] " + + "Path/name to a file containing RunSpec path/names"); + /** @nonissue **/ + System.out.println("\t-i [importer path and name] An importer to execute"); + /** @nonissue **/ + System.out.println("\t-il [importer list path] " + + "Path/name to a file containing importer path/names"); + /** @nonissue **/ + System.out.println("At least one runspec (via -r or -rl) or at least one importer (via -i or -il)"); + /** @nonissue **/ + System.out.println("must be specified."); + /** @nonissue **/ + System.out.println("\t-noworker " + + "Do not start a local worker"); + /** @nonissue **/ + System.out.println("\t-onlytodo " + + "Create TODO files but do not collect DONE files nor start a local worker"); + /** @nonissue **/ + System.out.println("\t-maketodo " + + "Same as -onlytodo"); + System.out.println("\t-p [PDSpec XML path and name] " + + "A PDSpec XML file to use"); + } + + /** + * Parses the command line, set internals flags indicating which files to save during batch + * mode. + * @param commandLineArgs A String array containing the command line arguments. + * @return True if successfully parsed. + **/ + boolean parseCommandLineArgs(String commandLineArgs[]) { + if(commandLineArgs.length == 0) { + showUsage(); + return false; + } + boolean argError = false; + for(int i = 0; i < commandLineArgs.length; i++) { + String arg = commandLineArgs[i]; + String lowerArg = arg.toLowerCase(); + if(lowerArg.equals("-r")) { + // The next argument should not be a command switch, expecting + // a runspec path and name + if((i < commandLineArgs.length - 1) && (commandLineArgs[i+1].charAt(0) != '-')) { + File file = new File(commandLineArgs[i+1]); + if(FileUtilities.fileExists(file)) { + runSpecFileList.add(file); + i++; + } else { + // This error will go directly to stdout since it involves parsing + // command line options + /** + * @issue The specified runspec file does not exist: [*] + * @explain A RunSpec file has been named on the MOVES + * command line but does not exist. + **/ + System.out.println("The specified runspec file does not exist: " + + commandLineArgs[i+1]); + argError = true; + } + } else { + argError = true; + } + } else if(lowerArg.equals("-rl")) { + // The next argument should not be a command switch, expecting + // a runspec listfile path and name + if((i < commandLineArgs.length - 1) && (commandLineArgs[i+1].charAt(0) != '-')) { + File runSpecListFile = new File(commandLineArgs[i+1]); + if(FileUtilities.fileExists(runSpecListFile)) { + argError = !addToRunSpecFileList(runSpecListFile); + i++; + } else { + // This error will go directly to stdout since it involves parsing + // command line options + /** + * @issue The specified runspec list file does not exist: [*] + * @explain A file listing other runspecs has been named on the MOVES + * command line but does not exist. + **/ + System.out.println("The specified runspec list file does not exist: " + + commandLineArgs[i+1]); + argError = true; + } + } else { + argError = true; + } + } else if(lowerArg.equals("-i")) { + // The next argument should not be a command switch, expecting + // an importer path and name + if((i < commandLineArgs.length - 1) && (commandLineArgs[i+1].charAt(0) != '-')) { + File file = new File(commandLineArgs[i+1]); + if(FileUtilities.fileExists(file)) { + importerFileList.add(file); + i++; + } else { + // This error will go directly to stdout since it involves parsing + // command line options + /** + * @issue The specified importer file does not exist: [*] + * @explain An importer XML file named on the MOVES command line does + * not exist. + **/ + System.out.println("The specified importer file does not exist: " + + commandLineArgs[i+1]); + argError = true; + } + } else { + argError = true; + } + } else if(lowerArg.equals("-il")) { + // The next argument should not be a command switch, expecting + // an importer listfile path and name + if((i < commandLineArgs.length - 1) && (commandLineArgs[i+1].charAt(0) != '-')) { + File importerListFile = new File(commandLineArgs[i+1]); + if(FileUtilities.fileExists(importerListFile)) { + argError = !addToImporterFileList(importerListFile); + i++; + } else { + // This error will go directly to stdout since it involves parsing + // command line options + /** + * @issue The specified importer list file does not exist: [*] + * @explain A file listing other importers has been named on the MOVES + * command line but does not exist. + **/ + System.out.println("The specified importer list file does not exist: " + + commandLineArgs[i+1]); + argError = true; + } + } else { + argError = true; + } + } else if(lowerArg.equals("-p")) { + // The next argument should not be a command switch, expecting + // a PDSpec XML file path and name + if((i < commandLineArgs.length - 1) && (commandLineArgs[i+1].charAt(0) != '-')) { + File file = new File(commandLineArgs[i+1]); + if(FileUtilities.fileExists(file)) { + pdSpecFileList.add(file); + i++; + } else { + // This error will go directly to stdout since it involves parsing + // command line options + /** + * @issue The specified importer file does not exist: [*] + * @explain An importer XML file named on the MOVES command line does + * not exist. + **/ + System.out.println("The specified PDSpec file does not exist: " + + commandLineArgs[i+1]); + argError = true; + } + } else { + argError = true; + } + } else if(lowerArg.equals("-noworker")) { + HeartbeatDetectionThread.isOKToLaunchWorker = false; + System.out.println("-noworker option found"); + } else if(lowerArg.equals("-onlytodo")) { + HeartbeatDetectionThread.isOKToLaunchWorker = false; + MOVESEngine.theInstance.isTODOOnly = true; + System.out.println("-onlytodo option found"); + } else if(lowerArg.equals("-maketodo")) { + HeartbeatDetectionThread.isOKToLaunchWorker = false; + MOVESEngine.theInstance.isTODOOnly = true; + System.out.println("-maketodo option found"); + } else if(lowerArg.startsWith("-workerconfig=") && lowerArg.length() > "-workerconfig=".length()) { + String alternateConfigurationFileName = arg.substring("-workerconfig=".length()); + WorkerConfiguration.CONFIGURATION_FILE_NAME = alternateConfigurationFileName; + WorkerConfiguration.priorIDFileName = ""; // don't do automatic ID cleanup if launched with an + // alternate configuration since this is likely a multiple + // worker situation on the same computer. + Logger.log(LogMessageCategory.INFO,"Using alternate worker configuration file: " + alternateConfigurationFileName); + } else { + // Encountered an unknown command line option + argError = true; + /** + * @issue Invalid command arg: [*] + * @explain A parameter passed to the MOVES command line is not recognized. + **/ + System.out.println("Invalid command arg: " + lowerArg); + return false; + } + } + if(argError) { + /** @nonissue **/ + System.out.println("Run without any arguments to display the usage."); + } + return !argError; + } + + /** + * Reads a list of RunSpec files from the specified path and adds to the RunSpecFileList. + * This function is expected to display its own errors since it's used during the parsing + * process. + * @param runSpecListFile A list file that contains the file path of one RunSpec per line. + * @return True on success, false if a single error encountered (such as one invalid RunSpec). + **/ + public boolean addToRunSpecFileList(File runSpecListFile) { + // The format should be one RunSpec per line, each RunSpec should have a valid path + try { + boolean isError = false; + LineNumberReader fileReader = new LineNumberReader( + new InputStreamReader(new FileInputStream(runSpecListFile))); + try { + String iterLine; + while ((iterLine = fileReader.readLine()) != null) { + iterLine = iterLine.trim(); + if(iterLine.length() > 0) { + File file = new File(iterLine); + if(FileUtilities.fileExists(file)) { + runSpecFileList.add(file); + } else { + /** + * @issue Error in the RunSpec list file: [*] doesn't exist + * @explain While using MOVES from the command line, an entry in the + * supplied file listing other RunSpec files references a RunSpec file + * that doesn not exist. + **/ + System.out.println("Error in the RunSpec list file: " + iterLine + + " doesn't exist"); + isError = true; + break; + } + } + } + } finally { + fileReader.close(); + } + + if(isError) { + return false; + } + } catch(IOException e) { + e.printStackTrace(); + return false; + } + return true; + } + + /** + * Reads a list of importer files from the specified path and adds to the importerFileList. + * This function is expected to display its own errors since it's used during the parsing + * process. + * @param importerListFile A list file that contains the file path of one importer XML per line. + * @return True on success, false if a single error encountered (such as one invalid importer XML file). + **/ + public boolean addToImporterFileList(File importerListFile) { + // The format should be one importer XML per line, each XML should have a valid path + try { + boolean isError = false; + LineNumberReader fileReader = new LineNumberReader( + new InputStreamReader(new FileInputStream(importerListFile))); + try { + String iterLine; + while ((iterLine = fileReader.readLine()) != null) { + iterLine = iterLine.trim(); + if(iterLine.length() > 0) { + File file = new File(iterLine); + if(FileUtilities.fileExists(file)) { + importerFileList.add(file); + } else { + /** + * @issue Error in the Importer list file: [*] doesn't exist + * @explain While using MOVES from the command line, an entry in the + * supplied file listing other Importer files references an importer file + * that does not exist. + **/ + System.out.println("Error in the Importer list file: " + iterLine + + " doesn't exist"); + isError = true; + break; + } + } + } + } finally { + fileReader.close(); + } + + if(isError) { + return false; + } + } catch(IOException e) { + e.printStackTrace(); + return false; + } + return true; + } + + /** + * Invokes MOVESEngine on each RunSpec in the batch list. + * @throws InterruptedException If the active thread was interrupted. + **/ + public void runBatch() throws InterruptedException { + for(Iterator i = pdSpecFileList.iterator(); i.hasNext(); ) { + File nextPDSpecFile = (File) i.next(); + String filePath = FileUtilities.safeGetPath(nextPDSpecFile); + Logger.log(LogMessageCategory.INFO, "API processing PDSpec file: " + filePath); + PDSpec pdSpec = new PDSpec(); + try { + if(!pdSpec.readXML(nextPDSpecFile)) { + Logger.log(LogMessageCategory.ERROR,"Unable to load PDSpec " + filePath); + continue; + } + } catch(Exception e) { + Logger.logError(e,"Unable to load PDSpec " + filePath); + continue; + } + runPDSpec(pdSpec); + } + for(Iterator i = importerFileList.iterator(); i.hasNext(); ) { + File nextImporterFile = (File) i.next(); + String filePath = FileUtilities.safeGetPath(nextImporterFile); + Logger.log(LogMessageCategory.INFO, "API processing Importer file: " + filePath); + ArrayList importerManagers = ImporterManager.fromXML(filePath); + if(importerManagers == null || importerManagers.size() <= 0) { + continue; + } + for(Iterator j=importerManagers.iterator();j.hasNext();) { + ImporterManager manager = (ImporterManager)j.next(); + ArrayList messages = new ArrayList(); + manager.doImport(messages); + for(Iterator k=messages.iterator();k.hasNext();) { + String message = (String)k.next(); + Logger.log(LogMessageCategory.INFO, message); + } + } + } + for(Iterator i = runSpecFileList.iterator(); i.hasNext(); ) { + File nextRunSpecFile = (File) i.next(); + //RunSpec now output by MOVESEngine + //Logger.log(LogMessageCategory.INFO, "API processing RunSpec: " + // + FileUtilities.safeGetPath(nextRunSpecFile)); + if(loadRunSpec(nextRunSpecFile, false)) { + startMOVESEngine(); + + // Wait for the engine to complete. + MOVESEngine.theInstance.join(); + } + } + } + + /** + * Access method to the member variable. + * @return The internal runSpec object.. + **/ + public RunSpec getRunSpec() { + return runSpec; + } + + /** + * Loads the active RunSpec object from the specified file name, and initializes + * database connections. + * @param newRunSpecFilePath Indicates which file to load. + * @param isGUIMode Boolean value indicates if the RunSpec is loaded from MOVES in GUI mode + * or in batch mode. If in GUI mode and the RunSpec's output database name is invalid, this + * function will log the error but will return successfully. This allows MOVESWindow to + * continue using the newly-loaded RunSpec object. If batch mode, this function will always + * try to "safely" create the specified output database. + * @return true on success. + **/ + public boolean loadRunSpec(File newRunSpecFilePath, boolean isGUIMode) { + RunSpec newRunSpec = new RunSpec(); + RunSpecXML runSpecXML = new RunSpecXML(newRunSpec); + if(!runSpecXML.load(newRunSpecFilePath)) { + return false; + } + + runSpecFilePath = newRunSpecFilePath; + runSpec = newRunSpec; + return true; + } + + /** + * Saves the internal RunSpec object to a file. + * @return True on success. + **/ + public boolean saveRunSpec() { + try { + // first check if the file can be written to (if it already exists) + boolean fileExists = FileUtilities.fileExists(runSpecFilePath); + if(fileExists && !runSpecFilePath.canWrite()) { + /** + * @issue RunSpec file error: [*] is read only, cannot save. + * @explain An existing RunSpec file is marked Read-Only and cannot be + * overwritten. Commonly, files pulled from CDs are set to Read-Only. + * Access the file properties and remove the Read-Only flag. + **/ + Logger.log(LogMessageCategory.ERROR, "RunSpec file error: " + + FileUtilities.safeGetPath(runSpecFilePath) + + " is read only, cannot save."); + return false; + } + RunSpecXML runSpecXML = new RunSpecXML(runSpec); + runSpecXML.save(runSpecFilePath); + return true; + } catch (Exception exception) { + /** + * @explain A RunSpec could not be saved. Check for rights to the folder + * to hold the file. + **/ + Logger.logError(exception, "Exception occurred writing runspec to " + runSpecFilePath + + "."); + return false; + } + } + + /** + * Sets the path and name of the internal RunSpec object. + * @param newFilePath The file path + **/ + public void setRunSpecFilePath(File newFilePath) { + runSpecFilePath = newFilePath; + } + + /** + * Gets the path and name of the internal RunSpec object. + * @return The file path + **/ + public File getRunSpecFilePath() { + return runSpecFilePath; + } + + /** + * Starts the MOVESEngine. + * @return true if the engine started executing the active RunSpec + **/ + public boolean startMOVESEngine() { + // NR_IMP: start differently based on model used. + // need to check the command line starting later too! + Models.ModelCombination mc = runSpec.getModelCombination(); + switch (mc) { + case M1: + return startMOVESEngineOnroad(); + case M2: + return startMOVESEngineNonroad(); + default: + return false; // not support yet for now + } + } + + /** + * Starts the MOVESEngine for Nonroad operations. + * @return true if the engine started executing the active RunSpec + **/ + private boolean startMOVESEngineNonroad() { + if(runSpec.domain != ModelDomain.NATIONAL_ALLOCATION) { + Logger.log(LogMessageCategory.ERROR,"NONROAD only supports NATIONAL domain/scale."); + return false; + } + + String fileName = "(unnamed)"; + if (getRunSpecFilePath() != null) { + fileName = FileUtilities.safeGetPath(runSpecFilePath); + } + try { + return MOVESEngine.theInstance.launch(runSpec,fileName); + } catch (Exception exception) { + /** + * @explain An error occurred while starting a simulation. The simulation has + * been stopped. + **/ + Logger.logError(exception, "Error launching RunSpec"); + } + return false; + } + + /** + * Starts the MOVESEngine for Onroad operations. + * @return true if the engine started executing the active RunSpec + **/ + private boolean startMOVESEngineOnroad() { + try { + if(runSpec.domain != ModelDomain.NATIONAL_ALLOCATION) { + // Check the runspec for completeness vs what a county-domain runspec should have + ArrayList messages = new ArrayList(); + int result = ImporterManager.isReadyForCountyDomain(runSpec,messages); + if(result < 0) { + // Log the error messages + for(Iterator i=messages.iterator();i.hasNext();) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,(String)i.next()); + } + return false; + } + + // Check the runspec's domain database for completeness + Connection db = null; + if(runSpec.scaleInputDatabase != null) { + db = runSpec.scaleInputDatabase.openConnectionOrNull(); + } + if(null == db) { + /** + * @issue Unable to open domain database + * @explain A database listed in the RunSpec could not be accessed. Check + * the database availability on your database server. + **/ + Logger.log(LogMessageCategory.ERROR,"Unable to open domain database."); + return false; + } + try { + messages.clear(); + result = ImporterManager.isCountyDomainDatabase(runSpec,messages,db,true); + if(result < 0) { + // Log the error messages + for(Iterator i=messages.iterator();i.hasNext();) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,(String)i.next()); + } + return false; + } + } finally { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + + String fileName = "(unnamed)"; + if (getRunSpecFilePath() != null) { + fileName = FileUtilities.safeGetPath(runSpecFilePath); + } + return MOVESEngine.theInstance.launch(runSpec,fileName); + } catch (Exception exception) { + /** + * @explain An error occurred while starting a simulation. The simulation has + * been stopped. + **/ + Logger.logError(exception, "Error launching RunSpec"); + } + return false; + } + + /** + * Check validity of folders in a PDSpec + * @return true if all entries are acceptable + **/ + private boolean checkPDSpec(PDSpec pdSpec) { + pdSpec.expandWildcards(); + + // Ensure each entry in pdSpec points to a valid directory + boolean allFoldersExist = true; + for(Iterator i=pdSpec.entries.iterator();i.hasNext();) { + PDSpec.PDSpecEntry entry = i.next(); + File f = new File(entry.pickupFolderName); + if(!f.exists() || !f.isDirectory()) { + Logger.log(LogMessageCategory.ERROR,"ERROR: PDSpec entry has invalid pickup folder: " + entry.pickupFolderName); + allFoldersExist = false; + } + } + if(!allFoldersExist) { + Logger.log(LogMessageCategory.ERROR,"ERROR: One or more pickup folders are invalid, no DONE files will be collected."); + return false; + } + return true; + } + + /** + * Called when the engine has completed, used to iterate to the next PDSpec entry. + * @param engine MOVESEngine instance that just finished + **/ + public void engineCompleted(MOVESEngine engine) { + synchronized(this) { + if(!isExecutingPDSpec || shouldStopPDSpec || iteratingPDSpec == null) { + return; + } + } + if(pdSpecEntryIndex < 0) { + pdSpecEntryIndex = 0; + } else { + pdSpecEntryIndex++; + } + if(pdSpecEntryIndex < iteratingPDSpec.entries.size()) { + PDSpec.PDSpecEntry entry = iteratingPDSpec.entries.get(pdSpecEntryIndex); + try { + MOVESEngine.theInstance.launch(entry,pdSpecEntryIndex == iteratingPDSpec.entries.size() - 1); + } catch(Exception e) { + Logger.logError(e,"Unable to start the next PDSpec entry"); + } + } + } + + /** + * Execute all entries in a PDSpec asynchronously + * @return true if processing was started + **/ + public boolean runPDSpecAsync(PDSpec pdSpec) { + try { + if(!checkPDSpec(pdSpec)) { + return false; + } + if(pdSpec.entries.size() <= 0) { + return false; // nothing to do, so don't even start. + } + + // Run each entry in pdSpec + isExecutingPDSpec = true; + shouldStopPDSpec = false; + iteratingPDSpec = pdSpec; + pdSpecEntryIndex = -1; + engineCompleted(MOVESEngine.theInstance); // start the first iteration + + return true; + } catch (Exception exception) { + /** + * @explain An error occurred while collecting DONE files. No further files will be collected. + **/ + Logger.logError(exception, "An error occurred while collecting DONE files. No further files will be collected."); + } + return false; + } + + /** + * Execute all entries in a PDSpec + * @return true if all entries were processed, even if they resulted in no DONE + * files being retrieved. + **/ + public boolean runPDSpec(PDSpec pdSpec) { + try { + if(!checkPDSpec(pdSpec)) { + return false; + } + + // Run each entry in pdSpec + isExecutingPDSpec = true; + shouldStopPDSpec = false; + for(int i=0;i -1) { + return baseName.substring(0, dotIndex); + } + return baseName; + } +} diff --git a/gov/epa/otaq/moves/master/framework/MOVESEngine.java b/gov/epa/otaq/moves/master/framework/MOVESEngine.java new file mode 100644 index 0000000..42a60b5 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MOVESEngine.java @@ -0,0 +1,1852 @@ +/************************************************************************************************** + * @(#)MOVESEngine.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.MasterLoop; +import gov.epa.otaq.moves.master.framework.MOVESEngineListener; +import gov.epa.otaq.moves.master.runspec.RunSpec; +import gov.epa.otaq.moves.master.gui.MOVESWindow; +import java.sql.*; +import java.util.*; +import java.io.*; +import java.text.SimpleDateFormat; + +/** + * This is a singleton object that encapsulates the entire execution of the simulation. This is + * either built into a stand alone console application or within a GUI application. + * + * This owns and launches a MasterLoop and a unbundler, both of which are threads. + * + * @author Wesley Faler + * @author Don Smith + * @author EPA (Mitch C.) + * @author Tim Hull + * @version 2014-09-17 +**/ +public class MOVESEngine implements LogHandler { + /** portion of total progress represented by startup activities **/ + public static double STARTUP_TOTAL_FRACTION = 0.20; + /** portion of total progress represented by bundle generation activities **/ + public static double GENERATED_FILES_TOTAL_FRACTION = 0.20; + /** portion of total progress represented by receipt and processing of worker results **/ + public static double PROCESSED_FILES_TOTAL_FRACTION = + 1.0 - GENERATED_FILES_TOTAL_FRACTION - STARTUP_TOTAL_FRACTION; + + /** Global pointer to the one and only MOVESEngine instance. **/ + public static MOVESEngine theInstance = null; + + public interface CompletedListener { + public void engineCompleted(MOVESEngine engine); + } + + /** List of MOVESEngineListener's that are subscribed to receive progress updates. **/ + static LinkedList progressListeners = + new LinkedList(); + + /** List of classes to notify after absolutely everything has been done with the engine. **/ + static LinkedList completedListeners = new LinkedList(); + + /** The loop launched by this engine **/ + MasterLoop loop = null; + + /** The object responsible for bundling data for the distributed workers. **/ + EmissionCalculatorOutboundBundler bundler = null; + + /** + * The object responsible for detecting work bundles that have been completed by the + * distributed workers. + **/ + EmissionCalculatorInboundUnbundler unbundler = null; + + /** Is this engine currently paused. **/ + boolean isPaused = false; + + /** True if only TODO files should be generated, without DONE files being retrieved or deleted. **/ + boolean isTODOOnly = false; + + /** Details needed for the MOVESRun table entry, needed in each TODO file so DONE files can be processed offline. **/ + BundleManifest.MasterFragment masterFragment = null; + + /** The active run ID. This is significant in the output database. **/ + int activeRunID; + + /** A thread for checking worker IDs to ensure workers are present and available **/ + HeartbeatDetectionThread heartbeatDetector = null; + + /** A thread for checking worker IDs to ensure workers are present and available **/ + MOVESEngineCompletionChecker checker = null; + + /** Starting time in milliseconds for the current simulation **/ + long startTimeMillis = 0; + + /** Next eventRecordID for the MOVESEventLog table. Reset upon each run. **/ + int nextEventRecordID = 1; + + /** eventRecordID (for use with logEventStop) for the entire simulation's time **/ + int wholeSimulationEventRecordID = 0; + + /** true while a run is being started and objects should not be deleted prematurely **/ + volatile boolean isLaunching = false; + + /** + * Internal class used to track the time required for one aspect of the simulation. + **/ + class TimeEstimator { + long startTimeMillis = 0; + long lastTimeMillis = 0; + long estimatedFinishTimeMillis = 0; + long actualFinishTimeMillis = 0; + + double fractionOfObservationsNeededForEstimate = 0.15; + + // Observations are milliseconds per bundle + long expectedObservationCount = 0; + long observationCount = 0; + double sumObservationsSquared = 0.0; + double sumObservations = 0.0; + + void setStartTime() { + startTimeMillis = System.currentTimeMillis(); + lastTimeMillis = startTimeMillis; + } + + void setExpectedObservationCount(long count) { + expectedObservationCount = count; + } + + void addObservation() { + if(startTimeMillis > 0 && lastTimeMillis > 0) { + long now = System.currentTimeMillis(); + long observation = now - lastTimeMillis; + lastTimeMillis = now; + + observationCount++; + sumObservations += observation; + sumObservationsSquared += observation * observation; + + if(observationCount >= expectedObservationCount + && expectedObservationCount > 0) { + actualFinishTimeMillis = now; + } + } + } + + long estimateFinishTime() { + if(actualFinishTimeMillis > 0) { + return actualFinishTimeMillis; + } + if(startTimeMillis <= 0 || expectedObservationCount <= 1) { + return estimatedFinishTimeMillis; + } + double fractionKnown = (double)observationCount / (double)expectedObservationCount; + // If not enough observations to trust extrapolation, then don't do anything + if(fractionKnown <= fractionOfObservationsNeededForEstimate) { + return estimatedFinishTimeMillis; + } + /* + Percentiles and standard deviation + (from http://www.spirxpert.com/expressing3.htm) + 0.1% -3.09 + 2.3% -2.00 + 5.0% -1.64 + 16.0% -1.00 + 50.0% 0.00 + 95.0% 1.64 + 97.7% 2.00 + 99.9% 3.09 + */ + final double desiredDeviations = 0.90; // Empirically determined + double mean = sumObservations / observationCount; + double standardDeviation = Math.sqrt( + (sumObservationsSquared - + ((sumObservations*sumObservations) / observationCount)) + / (observationCount - 1)); + double rate = mean + standardDeviation * desiredDeviations; + + estimatedFinishTimeMillis = (long)(lastTimeMillis + + rate * (expectedObservationCount - observationCount)); + return estimatedFinishTimeMillis; + } + + void resample() { + setStartTime(); + expectedObservationCount -= observationCount; + observationCount = 0; + sumObservationsSquared = 0.0; + sumObservations = 0.0; + } + } + + /** used to estimate the time required to perform generation on the master **/ + TimeEstimator generationEstimator = null; + /** used to estimate the time required to perform work on all the workers **/ + TimeEstimator workerEstimator = null; + /** used to estimate the time required to process bundles received back from workers **/ + TimeEstimator processingEstimator = null; + + /** Used when collecting DONE files created by a prior run **/ + public PDSpec.PDSpecEntry pdEntry = null; + /** True when the last PDSpecEntry in a PDSpec is being run **/ + public boolean isLastPDSpecEntry = false; + /** True when a module decides that the simulation should be stopped prematurely. **/ + public boolean shouldStopProcessing = false; + + /** Default constructor **/ + public MOVESEngine() { + /** @nonissue **/ + Logger.addLogHandler(this); + } + + /** + * Launches all necessary worker threads to process the simulation specified in runSpec. + * runSpec should not be modified until after the simulation has completed. + * @param entryToUse the master and folder to use for picking up DONE files + * @param isLastPDSpecEntry true when entryToUse is the last entry in a list of entries, used for GUI modes + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If there was a database error creating the run ID. + * @throws IOException If issues arise while examining DONE files. + **/ + public void launch(PDSpec.PDSpecEntry entryToUse, boolean isLastPDSpecEntryToUse) throws InterruptedException, SQLException, IOException { + shouldStopProcessing = false; + masterFragment = null; + pdEntry = entryToUse; + isLastPDSpecEntry = isLastPDSpecEntryToUse; + EmissionCalculatorInboundUnbundler.MasterDetails details = EmissionCalculatorInboundUnbundler.getDetails(entryToUse); + boolean shouldFinishQuickly = false; + if(details == null || details.fullManifest == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to obtain manifest information for master " + entryToUse.masterID); + shouldFinishQuickly = true; + } else if(details.numberOfDONEFiles <= 0) { + Logger.log(LogMessageCategory.INFO,"No DONE files were found for master " + entryToUse.masterID + " in directory " + entryToUse.pickupFolderName); + shouldFinishQuickly = true; + } + if(shouldFinishQuickly) { + if(isLastPDSpecEntry) { + for (Iterator i = progressListeners.iterator(); i.hasNext();) { + MOVESEngineListener iterListener = (MOVESEngineListener) i.next(); + iterListener.engineIsCompleting(this); + } + } + for(Iterator i=completedListeners.iterator();i.hasNext();) { + i.next().engineCompleted(this); + } + return; + } + + masterFragment = details.fullManifest.masterFragment; + + // Fill runSpec from the PDSpecEntry + RunSpec runSpec = new RunSpec(); + // fill output database selection by cloning the selection in pdEntry + runSpec.outputDatabase = (DatabaseSelection)pdEntry.outputDatabase.clone(); + ModelScale scale = ModelScale.getByName(masterFragment.scale); + if(scale != null) { + runSpec.scale = scale; + } + ModelDomain domain = ModelDomain.getByName(masterFragment.domain); + if(domain != null) { + runSpec.domain = domain; + } + runSpec.shouldTruncateMOVESActivityOutput = false; + runSpec.shouldTruncateMOVESOutput = false; + runSpec.shouldTruncateBaseRateOutput = false; + + launchCore(runSpec,"(unnamed)",new Integer(details.numberOfDONEFiles)); + } + + /** + * Launches all necessary worker threads to process the simulation specified in runSpec. + * runSpec should not be modified until after the simulation has completed. + * @param runSpec The RunSpec that specifies the simulation parameters. + * @param runSpecFileName The name (no path information) of the RunSpec. + * @return true if the simulation was successfully started, false otherwise + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If there was a database error creating the run ID. + **/ + public boolean launch(RunSpec runSpec, String runSpecFileName) + throws InterruptedException, SQLException { + shouldStopProcessing = false; + pdEntry = null; + masterFragment = null; + return launchCore(runSpec,runSpecFileName,null); + } + + /** + * Launches all necessary worker threads to process the simulation specified in runSpec. + * runSpec should not be modified until after the simulation has completed. + * @param runSpec The RunSpec that specifies the simulation parameters. + * @param runSpecFileName The name (no path information) of the RunSpec. + * @param numberOfDONEFiles optional number of DONE files expected, used when picking + * up DONE files from other masters. + * @return true if the simulation was successfully started, false otherwise + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If there was a database error creating the run ID. + **/ + private boolean launchCore(RunSpec runSpec, String runSpecFileName, Integer numberOfDONEFiles) + throws InterruptedException, SQLException { + shouldStopProcessing = false; + if(pdEntry == null) { + Logger.log(LogMessageCategory.INFO,"***Starting MOVES run***"); + Logger.log(LogMessageCategory.INFO,"Master Release: " + MOVESWindow.MOVES_VERSION); + Logger.log(LogMessageCategory.INFO,"Master Computer ID: " + + SystemConfiguration.getTheSystemConfiguration().computerID); + Logger.log(LogMessageCategory.INFO,"Master ID: " + + SystemConfiguration.getTheSystemConfiguration().distributedMasterID); + Logger.log(LogMessageCategory.INFO,"RunSpec: " + runSpecFileName ); + } else { + Logger.log(LogMessageCategory.INFO,"***Starting pickup of DONE files ***"); + Logger.log(LogMessageCategory.INFO,"Local Master Release: " + MOVESWindow.MOVES_VERSION); + Logger.log(LogMessageCategory.INFO,"Local Master Computer ID: " + + SystemConfiguration.getTheSystemConfiguration().computerID); + Logger.log(LogMessageCategory.INFO,"Local Master ID: " + + SystemConfiguration.getTheSystemConfiguration().distributedMasterID); + Logger.log(LogMessageCategory.INFO,"Picking up Master ID: " + pdEntry.masterID); + Logger.log(LogMessageCategory.INFO,"Picking up from: " + pdEntry.pickupFolderName); + Logger.log(LogMessageCategory.INFO,"Storing to: " + pdEntry.outputDatabase.toString()); + } + + isLaunching = true; + boolean shouldRestoreDatabase = false; + + try { + if(runSpec.hasAVFT()) { + /** + * @issue RunSpec includes data for Fueltypes and Technologies (AVFT) created with an older version of MOVES. This data must be converted to the new format or deleted from the RunSpec before MOVES will run successfully. + * @explain Try exporting your data then use the AVFT importer. + **/ + Logger.log(LogMessageCategory.ERROR, + "RunSpec includes data for Fueltypes and Technologies (AVFT) created with an older version of MOVES. This data must be converted to the new format or deleted from the RunSpec before MOVES will run successfully." ); + return false; + } + + if(runSpec.hasOnRoadRetrofit()) { + /** + * @issue RunSpec includes data for Retrofits created with an older version of MOVES. This data must be converted to the new format or deleted from the RunSpec before MOVES will run successfully. + * @explain Try exporting your data then use the OnRoad Retrofit importer. + **/ + Logger.log(LogMessageCategory.ERROR, + "RunSpec includes data for Retrofits created with an older version of MOVES. This data must be converted to the new format or deleted from the RunSpec before MOVES will run successfully." ); + return false; + } + + // Check databases, ensuring they exist + DatabaseSelection domainInputDatabase = runSpec.scaleInputDatabase; + if(domainInputDatabase != null && domainInputDatabase.hasDatabase()) { + Connection t = domainInputDatabase.openConnectionOrNull(); + if(t == null) { + /** + * @issue Unable to open domain database [*] + * @explain A database listed in the RunSpec could not be accessed. Check + * the database availability on your database server. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to open domain database " + domainInputDatabase.databaseName); + return false; + } + DatabaseUtilities.closeConnection(t); + } + if(runSpec.databaseSelectionInputSets.size() != 0) { + for(ListIterator i = + runSpec.databaseSelectionInputSets. + listIterator(runSpec.databaseSelectionInputSets.size()); + i.hasPrevious();) { + DatabaseSelection tempSelection = (DatabaseSelection)(i.previous()); + Connection t = tempSelection.openConnectionOrNull(); + if(t == null) { + /** + * @issue Unable to open user database [*] + * @explain A database listed in the RunSpec could not be accessed. Check + * the database availability on your database server. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to open user database " + tempSelection.databaseName); + return false; + } + DatabaseUtilities.closeConnection(t); + } + } + // Check the custom input database, especially for the correct schema + if(runSpec.inputDatabase != null && runSpec.inputDatabase.hasDatabase()) { + Connection t = runSpec.inputDatabase.openConnectionOrNull(); + if(t == null) { + /** + * @issue Custom input database cannot be found [*] + * @explain A database to be used as the primary input database to MOVES + * could not be located. + **/ + Logger.log(LogMessageCategory.ERROR, + "Custom input database cannot be found " + + runSpec.inputDatabase.databaseName); + return false; + } + boolean hasSchema = InputDataManager.isDefaultSchemaPresent(t); + DatabaseUtilities.closeConnection(t); + t = null; + if(!hasSchema) { + /** + * @issue Custom input database does not have the MOVES schema [*] + * @explain A database to be used as the primary input database to MOVES + * does not have the required tables. + **/ + Logger.log(LogMessageCategory.ERROR, + "Custom input database does not have the MOVES schema " + + runSpec.inputDatabase.databaseName); + return false; + } + shouldRestoreDatabase = true; + DatabaseConnectionManager.cleanup(MOVESDatabaseType.DEFAULT); + DatabaseConnectionManager.customInputDatabase = runSpec.inputDatabase; + DatabaseConnectionManager.initialize(MOVESDatabaseType.DEFAULT); + } + + nextEventRecordID = 1; + startTimeMillis = System.currentTimeMillis(); + + /** @nonissue **/ + Logger.shouldPromoteErrorLevel = true; + resetCompletionTimeEstimate(); + DatabaseConnectionManager.setOutputDatabase(runSpec.outputDatabase.serverName, + runSpec.outputDatabase.databaseName); + + String dbStatus = isOutputDatabaseNameValid( + DatabaseConnectionManager.outputDatabaseSelection); + if(dbStatus != null) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,dbStatus); + return false; + } + + dbStatus = createOutputDatabase(DatabaseConnectionManager.outputDatabaseSelection); + if(dbStatus != null) { + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR,dbStatus); + return false; + } + + clearSharedWorkFolder(); + + heartbeatDetector = new HeartbeatDetectionThread(); + if(pdEntry == null) { + heartbeatDetector.start(); + } + + isPaused = false; + activeRunID = 0; + + loop = new MasterLoop(); + if(pdEntry == null) { + bundler = new EmissionCalculatorOutboundBundler(); + } else { + bundler = null; + loop.howManyOutboundBundlesWillBeCreated = numberOfDONEFiles; + loop.startupFractionComplete = new Double(1.0); + } + unbundler = new EmissionCalculatorInboundUnbundler(); + if(pdEntry != null) { + unbundler.distributedMasterIDOverride = pdEntry.masterID; + unbundler.pickupFolderOverride = new File(pdEntry.pickupFolderName); + } + + DatabaseConnectionManager.initializeAll(); + PollutantProcessLoader.loadFromDatabase(); + TimeSpan.loadTimeObjects(); + if(masterFragment == null) { + masterFragment = new BundleManifest.MasterFragment(); + } + if(pdEntry == null) { + activeRunID = createOutputRunRecord(runSpec, runSpecFileName, masterFragment); // fills masterFragment + } else { + activeRunID = createOutputRunRecord(masterFragment, numberOfDONEFiles.intValue()); // reads masterFragment + } + wholeSimulationEventRecordID = logEventStart("Whole Simulation"); + ExecutionRunSpec.theExecutionRunSpec = new ExecutionRunSpec(runSpec); + + notifyListeners(); + + if(loop != null && pdEntry == null) { + loop.start(); + } + if(!isTODOOnly) { + unbundler.start(); + } + startCheckingCompletion(); + shouldRestoreDatabase = false; + } finally { + if(shouldRestoreDatabase) { + restoreDefaultDatabase(); + } + isLaunching = false; + } + return true; + } + + /** Validate the Output Database Name + * @param dbSelection the database selection. + * @return String null if valid, a message if not valid. + **/ + public static String isOutputDatabaseNameValid(DatabaseSelection dbSelection) { + String message = null; + if(dbSelection.databaseName.trim().length()==0) { + /** + * @issue The output database name can not be blank. + * @explain An output database name cannot be blank. + **/ + message = "The output database name can not be blank."; + return message; + } + + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + //default database cannot be accepted as an input selection + if ((defaultDB.databaseName).equalsIgnoreCase(dbSelection.databaseName)) { + /** + * @issue The default database cannot be used as an output database. + * @explain The output of a simulation should not be stored into a database + * that is used for input. + **/ + message = "The default database cannot be used as an output database."; + return message; + } + //execution database cannot be accepted as an input selection + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + if ((executionDB.databaseName).equalsIgnoreCase(dbSelection.databaseName)) { + /** + * @issue The execution database cannot be used as an output database. + * @explain The output of a simulation should not be stored into the temporary + * MOVESExecution database. + **/ + message = "The execution database cannot be used as an output database."; + return message; + } + //Worker database cannot be accepted as an input selection + if (dbSelection.databaseName.equalsIgnoreCase("MOVESWorker")) { + /** + * @issue MOVESWorker database cannot be used as an output database. + * @explain The output of a simulation should not be stored into the temporary + * MOVESWorker database. + **/ + message = "MOVESWorker database cannot be used as an output database."; + return message; + } + //MySQL database cannot be accepted as an input selection + if (dbSelection.databaseName.equalsIgnoreCase("MySQL")) { + /** + * @issue MySQL database cannot be used as an output database. + * @explain The output of a simulation should not be stored into the MySQL + * system database. + **/ + message = "MySQL database cannot be used as an ouput database."; + return message; + } + return message; + } + + /** + * Create the output database. + * @param dbSelection the database selection. + * @return String null if valid, a message if not valid. + **/ + public String createOutputDatabase(DatabaseSelection dbSelection) { + String message = null; + if(dbSelection.safeCreateDatabase("database/CreateOutput.sql") == DatabaseSelection.NOT_CREATED) { + /** + * @issue Could not create the Output Database. + * @explain An error occurred while creating an output database using the + * database/CreateOutput.sql script. + **/ + message = "Could not create the Output Database."; + } + return message; + } + + /** + * Update the MOVESRun table once the number of expected bundles is known. + * @param howManyExpected number of expected bundles + * @throws SQLException if anything goes wrong + * @throws InterruptedException if unable to obtain a database connection + **/ + public static void updateExpectedDoneFiles(int howManyExpected) throws SQLException, InterruptedException { + theInstance.masterFragment.expectedDONEFiles = howManyExpected; + + Connection outputConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + String sql = ""; + + try { + sql = "update MOVESRun set expectedDONEFiles=" + howManyExpected + + " where MOVESRunID=" + theInstance.activeRunID; + SQLRunner.executeSQL(outputConnection,sql); + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputConnection); + } + } + + /** + * Creates the output record for a simulation run. + * @param runSpec The RunSpec to provide parameters from. + * @param runSpecName The name of the RunSpec that is being run. + * @param masterFragment location to store data needed for TODO files + * @return The new run ID. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If a database error occurs. + **/ + static int createOutputRunRecord(RunSpec runSpec, String runSpecName, BundleManifest.MasterFragment masterFragment) + throws InterruptedException, SQLException { + masterFragment.outputDatabaseName = DatabaseConnectionManager.outputDatabaseSelection.databaseName; + Connection outputConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + Connection defaultConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + + try { + final String eol = System.getProperty("line.separator"); + + // Silently upgrade MOVESRun to include required columns + String[] upgradeStatements = { + "alter table MOVESRun add masterIDNumber VARCHAR(20) NULL DEFAULT NULL", + "alter table MOVESRun add expectedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL", + "alter table MOVESRun add retrievedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL", + "alter table MOVESRun add models VARCHAR(40) NOT NULL DEFAULT 'onroad'" + }; + for(int i=0;i 0) { + sql = "select countyName from County where countyID=" + countyID; + countyName = SQLRunner.executeScalarString(defaultConnection,sql); + } + } + if(runSpec.scaleInputDatabase != null) { + serverName = runSpec.scaleInputDatabase.serverName; + databaseName = runSpec.scaleInputDatabase.databaseName; + } + countyName = StringUtilities.substring(countyName,0,50); + serverName = StringUtilities.substring(serverName,0,100); + databaseName = StringUtilities.substring(databaseName,0,200); + + masterFragment.domainCountyID = countyID; + masterFragment.domainCountyName = countyName; + masterFragment.domainDatabaseServer = serverName; + masterFragment.domainDatabaseName = databaseName; + + sql = "update MOVESRun set domainCountyID=" + countyID + + ", domainCountyName=" + + DatabaseUtilities.escapeSQL(countyName,true) + + ", domainDatabaseServer=" + + DatabaseUtilities.escapeSQL(serverName,true) + + ", domainDatabaseName=" + + DatabaseUtilities.escapeSQL(databaseName,true) + + " where MOVESRunID=" + runID; + SQLRunner.executeSQL(outputConnection,sql); + } + + if(CompilationFlags.DO_RATES_FIRST) { + // pollutant.energyOrMass: "mass", "energy", "TEQ" + TreeMap pollutantUnits = new TreeMap(); + sql = "select pollutantID, energyOrMass from pollutant"; + query.open(defaultConnection,sql); + while(query.rs.next()) { + String pollutantID = query.rs.getString("pollutantID"); + String energyOrMass = query.rs.getString("energyOrMass"); + pollutantUnits.put(pollutantID,energyOrMass); + } + query.close(); + for(Iterator i=runSpec.pollutantProcessAssociations.iterator();i.hasNext();) { + PollutantProcessAssociation ppa = i.next(); + String pollutantID = "" + ppa.pollutant.databaseKey; + String energyOrMass = StringUtilities.safeGetString(pollutantUnits.get(pollutantID)); + if(energyOrMass.equalsIgnoreCase("mass")) { + energyOrMass = "g"; + } else if(energyOrMass.equalsIgnoreCase("energy")) { + energyOrMass = "KJ"; + } + String processUnits = "s"; + String activityUnits = "s"; + if(ppa.emissionProcess.databaseKey == 1) { + activityUnits = "mi"; + } else if(ppa.emissionProcess.databaseKey == 2) { + processUnits = "start"; + activityUnits = "start"; + } + sql = "insert into BaseRateUnits (" + + "MOVESRunID," + + "pollutantID," + + "processID," + + "meanBaseRateUnitsNumerator," + + "meanBaseRateUnitsDenominator," + + "emissionBaseRateUnitsNumerator," + + "emissionBaseRateUnitsDenominator) " + + "values (" + + runID + "," + + pollutantID + "," + + ppa.emissionProcess.databaseKey + "," + + DatabaseUtilities.escapeSQL(energyOrMass,true) + "," + + DatabaseUtilities.escapeSQL(processUnits,true) + "," + + DatabaseUtilities.escapeSQL(energyOrMass,true) + "," + + DatabaseUtilities.escapeSQL(activityUnits,true) + + ")"; + SQLRunner.executeSQL(outputConnection,sql); + } + } + + return runID; + } finally { + query.onFinally(); + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputConnection); + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, defaultConnection); + } + } + + /** + * Creates the output record for a simulation run. + * @param masterFragment provides data contained in the expected DONE files + * @param expectedDONEFiles number of DONE files to be processed + * @return The new run ID. + * @throws InterruptedException If the active thread is interrupted. + * @throws SQLException If a database error occurs. + **/ + static int createOutputRunRecord(BundleManifest.MasterFragment masterFragment, int expectedDONEFiles) + throws InterruptedException, SQLException { + masterFragment.outputDatabaseName = DatabaseConnectionManager.outputDatabaseSelection.databaseName; + Connection outputConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + Connection defaultConnection = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + + try { + final String eol = System.getProperty("line.separator"); + + // Silently upgrade MOVESRun to include required columns + String[] upgradeStatements = { + "alter table MOVESRun add masterIDNumber VARCHAR(20) NULL DEFAULT NULL", + "alter table MOVESRun add expectedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL", + "alter table MOVESRun add retrievedDONEFiles INTEGER UNSIGNED NULL DEFAULT NULL", + "alter table MOVESRun add models VARCHAR(40) NOT NULL DEFAULT 'onroad'" + /** NR_IMP: **/ + }; + for(int i=0;i 0) { + statement.setString(1,masterFragment.outputTimePeriod); + } else { + statement.setNull(1, java.sql.Types.VARCHAR); + } + if(masterFragment.timeUnits != null && masterFragment.timeUnits.length() > 0) { + statement.setString(2, masterFragment.timeUnits); + } else { + statement.setNull(2, java.sql.Types.VARCHAR); + } + + statement.setString(3,"mi"); + + statement.setString(4, "g"); + + statement.setString(5, "KJ"); + + statement.setString(6, masterFragment.runSpecFileName); + + if (masterFragment.runSpecDescription != null && masterFragment.runSpecDescription.length() > 0) { + // remove carriage returns and line feeds from description + // becuase they screw up importing into Excel + String desc = (masterFragment.runSpecDescription.replace('\r',' ')).replace('\n',' '); + statement.setString(7,desc); + } else { + statement.setString(7, " "); + } + + if(masterFragment.runSpecFileDateTime != null && masterFragment.runSpecFileDateTime.length() > 0) { + statement.setString(8,masterFragment.runSpecFileDateTime); + } else { + statement.setNull(8, java.sql.Types.VARCHAR); + } + + statement.setString(9, masterFragment.scale); + + if(masterFragment.defaultDatabaseUsed != null && masterFragment.defaultDatabaseUsed.length() > 0) { + statement.setString(10, masterFragment.defaultDatabaseUsed); + } else { + statement.setString(10, ""); + } + + statement.setString(11, StringUtilities.substring(masterFragment.masterVersionDate,0,10)); + + statement.setString(12, masterFragment.masterComputerID); + + statement.setString(13, masterFragment.domain); + + statement.setString(14, masterFragment.masterIDNumber); + + statement.setInt(15, expectedDONEFiles); + + statement.setString(16, masterFragment.model); + + SQLRunner.execute(statement,sql); + statement.close(); + statement = null; + + sql = "SELECT last_insert_id()"; + statement = outputConnection.prepareStatement(sql); + rs = SQLRunner.executeQuery(statement,sql); + rs.next(); + int runID = rs.getInt(1); + rs.close(); + rs = null; + + if(!masterFragment.domain.equalsIgnoreCase(ModelDomain.NATIONAL_ALLOCATION.toString())) { + String countyName = StringUtilities.substring(masterFragment.domainCountyName,0,50); + String serverName = StringUtilities.substring(masterFragment.domainDatabaseServer,0,100); + String databaseName = StringUtilities.substring(masterFragment.domainDatabaseName,0,200); + + sql = "update MOVESRun set domainCountyID=" + masterFragment.domainCountyID + + ", domainCountyName=" + + DatabaseUtilities.escapeSQL(countyName,true) + + ", domainDatabaseServer=" + + DatabaseUtilities.escapeSQL(serverName,true) + + ", domainDatabaseName=" + + DatabaseUtilities.escapeSQL(databaseName,true) + + " where MOVESRunID=" + runID; + SQLRunner.executeSQL(outputConnection,sql); + } + + return runID; + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } finally { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputConnection); + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, defaultConnection); + } + } + + /** + * Straight forward access method. + * @return The active run ID. This is significant in the output database. + **/ + public int getActiveRunID() { + return activeRunID; + } + + /** + * Get the active iteration id. + * @return The active run ID. This is significant in the output database. + **/ + public int getActiveIterationID() { + return (loop!=null && pdEntry == null)?loop.context.iterationID:0; + } + + /** + * Subscribe to progress notifications. + * @param listener The listener that should receive progress notifications. + **/ + public static void subscribeToProgress(MOVESEngineListener listener) { + synchronized(progressListeners) { + progressListeners.add(listener); + } + } + + /** + * Unsubscribe from progress notifications. + * @param listener The listener that should no longer receive progress notifications. + **/ + public static void unSubscribeFromProgress(MOVESEngineListener listener) { + synchronized(progressListeners) { + while (progressListeners.remove(listener)); + } + } + + /** + * Notifies all listeners of new engine status. + **/ + public synchronized void notifyListeners() { + for (Iterator i = progressListeners.iterator(); i.hasNext();) { + MOVESEngineListener iterListener = (MOVESEngineListener) i.next(); + + iterListener.engineProgressUpdate(this); + } + } + + /** + * Notifies all listeners that the engine is completing. + **/ + public synchronized void notifyListenersOfCompletion() { + if(isLaunching) { + return; + } + //Commented out to avoid superfluous messages in CLI run + //Logger.log(LogMessageCategory.INFO,"Notifying listeners of MOVES Engine completion"); + //System.out.flush(); + for (Iterator i = progressListeners.iterator(); i.hasNext();) { + MOVESEngineListener iterListener = (MOVESEngineListener) i.next(); + iterListener.engineIsCompleting(this); + } + loop = null; + bundler = null; + unbundler = null; + if(heartbeatDetector != null && pdEntry == null) { + try { + heartbeatDetector.signalToTerminate(); + heartbeatDetector.join(); + } catch(InterruptedException e) { + // Nothing to do here + } + heartbeatDetector = null; + } + if(checker != null) { + checker.signalToTerminate(); + // May be called from checker, do not join. + checker = null; + } + clearSharedWorkFolder(); + logEventStop(wholeSimulationEventRecordID); + finalizeEventLog(); + activeRunID = 0; + + /** @nonissue **/ + Logger.shouldPromoteErrorLevel = false; + for(Iterator i=completedListeners.iterator();i.hasNext();) { + i.next().engineCompleted(this); + } + } + + /** + * Thread to monitor engine's progress and signal listeners when a run is complete. + **/ + class MOVESEngineCompletionChecker extends Thread { + /** This flag signals this thread to exit. This directly affects only one thread. **/ + boolean signaledToExit = false; + + /** Runs the MOVESEngineCompletionChecker thread **/ + public final void run() { + while(MOVESEngine.theInstance != null + && MOVESEngine.theInstance.checkIsRunningAndNotifyListenersOfCompletion() + && !signaledToExit) { + try { + Thread.sleep(1000); + } catch(InterruptedException e) { + // Nothing to do here + } + } + // Flush all tables to disk when the run completes, making it safer to copy files + // from the output database. + Connection db = null; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + if(db != null) { + SQLRunner.executeSQL(db,"flush tables"); + } + } catch(Exception e) { + Logger.logException(LogMessageCategory.ERROR,e); + } finally { + if(db != null) { + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,db); + } catch(Exception e) { + // Nothing to do here + } + db = null; + } + } + Logger.log(LogMessageCategory.INFO,"MOVESEngineCompletionChecker is shutting down"); + Logger.log(LogMessageCategory.INFO,"***Finished MOVES run***"); + System.out.flush(); + } + + /** Signal the MOVESEngineCompletionChecker thread to terminate **/ + public void signalToTerminate() { + signaledToExit = true; + } + } + + /** + * Thread to monitor engine's progress and signal listeners when a run is complete. + **/ + synchronized void startCheckingCompletion() { + try { + checker = new MOVESEngineCompletionChecker(); + checker.start(); + } catch(Throwable e) { + // Nothing to do here + } + } + + /** + * Checks whether the engine is actively running and if not, notifies all + * listeners of this. + * @return This will be true if the engine is actively running. + **/ + public synchronized boolean checkIsRunningAndNotifyListenersOfCompletion() { + if(isLaunching) { + return true; + } + if(!isRunning()) { + notifyListenersOfCompletion(); + return false; + } else { + return true; + } + } + + /** + * Returns whether the engine is actively running or not. + * @return This will be true if the engine is actively running. + **/ + public synchronized boolean isRunning() { + return !shouldStopProcessing && ( + (pdEntry == null && loop != null && loop.isAlive()) + || (!isTODOOnly && unbundler != null && unbundler.isAlive()) + ); + } + + /** + * Gets the fraction of work that the engine has completed. + * @return A fraction value (0-1) indicating how much work the engine has completed. + **/ + public float getPercentCompleted() { + if(!isRunning()) { + return 0; + } + + double result = 0; + + Double startupFractionComplete = getStartupFractionComplete(); + if(startupFractionComplete == null) { + return (float)result; + } + + if(startupFractionComplete.doubleValue() > 1.0) { + result = STARTUP_TOTAL_FRACTION; + } else { + result += startupFractionComplete.doubleValue() * STARTUP_TOTAL_FRACTION; + } + + Integer totalBundleCount = getHowManyOutboundBundlesWillBeCreated(); + if(totalBundleCount == null) { + return (float)result; + } + + if(bundler != null) { + result += ((double)bundler.totalBundleCount) / totalBundleCount.intValue() + * GENERATED_FILES_TOTAL_FRACTION; + if(unbundler != null && !isTODOOnly) { + result += ((double)unbundler.processedWorkBundleCount) / totalBundleCount.intValue() + * PROCESSED_FILES_TOTAL_FRACTION; + } + } else { + if(unbundler != null && !isTODOOnly) { + result += ((double)unbundler.processedWorkBundleCount) / totalBundleCount.intValue(); + } + } + return (float)result; + } + + /** + * Waits for all worker threads to complete. This does not signal the workers to prematurely + * terminate. + * Will notify all listeners that the engine is done. + * @throws InterruptedException This will be thrown if the active thread is interrupted. + **/ + public void join() throws InterruptedException { + join(0); + } + + /** + * Waits for all worker threads to complete. This does not signal the workers to prematurely + * terminate. + * Will cleanup the execution database and notify all listeners if the engine is complete + * within the timeout period. + * @param millisecondWait The maximum number of milliseconds to wait. 0 means wait forever. + * @throws InterruptedException This will be thrown if the active thread is interrupted. + **/ + public void join(int millisecondWait) throws InterruptedException { + if(loop != null && pdEntry == null) { + loop.join(millisecondWait); + } + if(unbundler != null && !isTODOOnly) { + unbundler.join(millisecondWait); + } + if(heartbeatDetector != null && pdEntry == null) { + heartbeatDetector.signalToTerminate(); + heartbeatDetector.join(millisecondWait); + } + if(checker != null) { + checker.signalToTerminate(); + // May be called from checker, do not join. + checker = null; + } + if(!isRunning()) { + DatabaseConnectionManager.cleanup(MOVESDatabaseType.EXECUTION); + restoreDefaultDatabase(); + notifyListenersOfCompletion(); + } + } + + /** Undo the default database override from the RunSpec **/ + void restoreDefaultDatabase() { + if(DatabaseConnectionManager.customInputDatabase != null) { + DatabaseConnectionManager.cleanup(MOVESDatabaseType.DEFAULT); + DatabaseConnectionManager.customInputDatabase = null; + DatabaseConnectionManager.initialize(MOVESDatabaseType.DEFAULT); + } + } + + /** + * Signals all worker threads to terminate. Does NOT wait for completion. + **/ + public void signalToTerminate() throws InterruptedException { + if(loop != null && pdEntry == null) { + loop.signalToTerminate(); + } + if(unbundler != null) { + unbundler.signalToTerminate(); + } + if(heartbeatDetector != null && pdEntry == null) { + heartbeatDetector.signalToTerminate(); + } + if(checker != null) { + checker.signalToTerminate(); + // May be called from checker, do not join. + checker = null; + } + } + + /** + * Signals all worker threads to complete and waits for their completion. + * @throws InterruptedException This will be thrown if the active thread is interrupted. + **/ + public void cancel() throws InterruptedException { + signalToTerminate(); + join(); + } + + /** + * Pauses the engine. + **/ + public synchronized void pause() { + if(!isPaused) { + if(loop != null && pdEntry == null) { + loop.signalToSuspend(); + } + if(unbundler != null) { + unbundler.signalToSuspend(); + } + isPaused = true; + } + } + + /** + * Resumes the engine from a pause operation. + **/ + public synchronized void resume() { + if(isPaused) { + if(loop != null && pdEntry == null) { + loop.signalToResume(); + } + if(unbundler != null) { + unbundler.signalToResume(); + } + isPaused = false; + } + } + + /** + * Return the total number of work files the system will produce. + * @return The total number of work files that this system will have produced by the time it + * completes. This is null when this total isn't yet known. + **/ + Integer getHowManyOutboundBundlesWillBeCreated() { + if(loop != null) { + return loop.howManyOutboundBundlesWillBeCreated; + } else { + return null; + } + } + + /** + * Return the completion fraction within the startup phase of executing the model. + * @return null or a 0-1 (inclusive) number representing the progress through + * the setup activities of the model. This is null when not yet known. + **/ + Double getStartupFractionComplete() { + if(loop != null) { + synchronized(loop) { + return loop.startupFractionComplete; + } + } else { + return null; + } + } + + /** + * Return the number of work files that have been successfully unjarred and processed so far. + * @return the number of work files that have been successfully unjarred and processed so far. + * This value is 0 when the system is not running. + **/ + int getHowManyBundlesProcessedSoFar() { + if(unbundler != null && !isTODOOnly) { + return unbundler.processedWorkBundleCount; + } else { + return 0; + } + } + + /** + * Return the number of iterations that have been successfully completed so far. + * @return the number of iterations that have been successfully completed so far. + * This value is 0 when the system is not running. + **/ + int getHowManyIterationsProcessedSoFar() { + if(unbundler != null && !isTODOOnly) { + return unbundler.processedIterationCount; + } else { + return 0; + } + } + + /** + * Logs the message to some medium based on the type, MOVESEngine is only concerned with + * errors of type Logger.RUN_ERROR. + * @param logMessageCategory int value indicating the type of message. The values should come from + * the static Logger message-type variables. + * @param message the String to get logged. + **/ + public void handleLog(LogMessageCategory logMessageCategory, String message) { + if(logMessageCategory != LogMessageCategory.RUN_ERROR) { + return; + } + // Also, if one of the MOVESEngineThreads generated this error, it will be the current + // thread and thus, current county/month/year info can be determined (excluding the + // HeartbeatDetectionThread). + int pollutantID = -1; + int processID = -1; + int stateID = -1; + int countyID = -1; + int zoneID = -1; + int linkID = -1; + int yearID = -1; + int monthID = -1; + int dayID = -1; + int hourID = -1; + + Thread currentThread = Thread.currentThread(); + String currentThreadName = currentThread.getName(); + + synchronized(this) { + if(activeRunID != 0) { + logRunError(activeRunID, pollutantID, processID, stateID, countyID, + zoneID, linkID, yearID, monthID, dayID, hourID, message); + } + } + } + + /** + * Creates an MOVESError record from the inputs. The numeric inputs can be zero to indicate a + * high-level MOVESEngine error which would most likely occur at the very start or end of a + * run. + * @param runID The identifier assigned to this run + * @param pollutantID The pollutant being run + * @param processID The emission process being run + * @param stateID The state being run + * @param countyID The county being run + * @param zoneID The zone being run + * @param linkID The link being run + * @param yearID The year being run + * @param monthID The month being run + * @param dayID The day being run + * @param hourID The hour being run + * @param message The run message to be logged + **/ + void logRunError(int runID, int pollutantID, int processID, int stateID, int countyID, + int zoneID, int linkID, int yearID, int monthID, int dayID, int hourID, + String message) { + String sql = ""; + try { + Connection outputConnection = DatabaseConnectionManager.checkOutConnection + (MOVESDatabaseType.OUTPUT); + try { + sql = "INSERT INTO MOVESError (" + +"MOVESRunID, linkID, zoneID, countyID," + +"stateID, hourID, dayID, monthID, yearID, pollutantID," + +"processID, ErrorMessage) " + +"VALUES (" + +"?, ?, ?, ?," + +"?, ?, ?, ?, ?, ?," + +"?, ?)"; + PreparedStatement statement = outputConnection.prepareStatement(sql); + statement.setInt(1, runID); + if(linkID>=0) { + statement.setLong(2, linkID); + } else { + statement.setNull(2,java.sql.Types.INTEGER); + } + if(zoneID>=0) { + statement.setLong(3, zoneID); + } else { + statement.setNull(3,java.sql.Types.INTEGER); + } + if(countyID>=0) { + statement.setLong(4, countyID); + } else { + statement.setNull(4,java.sql.Types.INTEGER); + } + if(stateID>=0) { + statement.setInt(5, stateID); + } else { + statement.setNull(5,java.sql.Types.SMALLINT); + } + if(hourID>=0) { + statement.setInt(6, hourID); + } else { + statement.setNull(6, java.sql.Types.SMALLINT); + } + if(dayID>=0) { + statement.setInt(7, dayID); + } else { + statement.setNull(7,java.sql.Types.SMALLINT); + } + if(monthID>=0) { + statement.setInt(8, monthID); + } else { + statement.setNull(8,java.sql.Types.SMALLINT); + } + if(yearID>=0) { + statement.setInt(9, yearID); + } else { + statement.setNull(9,java.sql.Types.SMALLINT); + } + if(processID>=0) { + statement.setInt(10, pollutantID); + } else { + statement.setNull(10,java.sql.Types.SMALLINT); + } + if(processID>=0) { + statement.setInt(11, processID); + } else { + statement.setNull(11,java.sql.Types.SMALLINT); + } + // Truncate message length, if necessary + String timeStamp = (new SimpleDateFormat()).format(new java.util.Date()); + message = timeStamp + " " + message; + if(message.length() > 255) { + statement.setString(12, message.substring(0, 254)); + } else { + statement.setString(12, message); + } + SQLRunner.execute(statement,sql); + statement.close(); + } catch(SQLException e) { + Logger.logSqlError(e, "Unable to write error message to output database.", sql); + } finally { + DatabaseConnectionManager.checkInConnection + (MOVESDatabaseType.OUTPUT, outputConnection); + } + } catch(InterruptedException e) { + } + } + + /** + * Removes entries for this master only from the shared work folder. Removes + * TODO, InProgress, and DONE files. + **/ + void clearSharedWorkFolder() { + if(isTODOOnly) { + // Do not remove our files if running in TODO-only mode. + return; + } + FilenameFilter fileNameFilter = DistributedWorkFileName.buildFileNameFilter + (SystemConfiguration.getTheSystemConfiguration().distributedMasterID, + "*", null, "*"); + + File[] files = SystemConfiguration.getTheSystemConfiguration(). + sharedDistributedFolderPath.listFiles(fileNameFilter); + + for(int i=0;i neededClassNames = null; + + /** + * Set of MasterLoopable objects instantiated by performInstantiation(...). + * Each is keyed by its full package and class name. This collection exists only after + * performInstantiation(...) has been called. + **/ + private static TreeMap createdObjects = null; + + /** + * This code builds all Generator objects and the EmissionCalculator. This code understands all + * dependencies and builds the objects differently based on the simulation scale (i.e. macro, + * meso, micro). + * @param targetRunSpec Specifies simulation parameters which indicate which objects should + * be instantiated. + * @param targetLoop The MasterLoop that the Generator's and EmissionCalculator's should be + * instantiated for. + **/ + public static void performInstantiation(ExecutionRunSpec targetRunSpec,MasterLoop targetLoop) { + boolean isMesoscaleLookup = targetRunSpec.getModelScale() == ModelScale.MESOSCALE_LOOKUP; + boolean isProjectDomain = targetRunSpec.getModelDomain() == ModelDomain.PROJECT; + RunSpec runSpec = ExecutionRunSpec.getRunSpec(); + Models.ModelCombination mc = runSpec.getModelCombination(); + + if(isMesoscaleLookup) { + OutputProcessor.getTheOutputProcessor().integratedPostProcessors.add( + new MesoscaleLookupPostProcessor()); + } + neededClassNames = new TreeSet(); + EmissionCalculatorRegistration.reset(); + Pollutant equivalentCO2 = Pollutant.findByID(98); + Pollutant sulfatePM10 = Pollutant.findByID(105); + Pollutant sulfatePM25 = Pollutant.findByID(115); + Pollutant PM25OrganicCarbon = Pollutant.findByID(111); + Pollutant PM25ElementalCarbon = Pollutant.findByID(112); + Pollutant so2 = Pollutant.findByID(31); + Pollutant nO = Pollutant.findByID(32); + Pollutant nO2 = Pollutant.findByID(33); + Pollutant hono = Pollutant.findByID(34); + Pollutant nH3 = Pollutant.findByID(30); + + String equivCO2PolName = ((equivalentCO2==null)?"NonExistent":equivalentCO2.pollutantName); + String sulfatePM10Name = ((sulfatePM10==null)?"Non-Existent":sulfatePM10.pollutantName); + String sulfatePM25Name = ((sulfatePM25==null)?"Non-Existent":sulfatePM25.pollutantName); + String PM25OrganicCarbonName = ((PM25OrganicCarbon==null)?"NonExistant":PM25OrganicCarbon.pollutantName); + String PM25ElementalCarbonName = ((PM25ElementalCarbon==null)?"NonExistant":PM25ElementalCarbon.pollutantName); + String so2Name = ((so2==null)?"Non-Existent":so2.pollutantName); + String nOName = ((nO==null)?"Non-Existent":nO.pollutantName); + String nO2Name = ((nO2==null)?"Non-Existent":nO2.pollutantName); + String nH3Name = ((nH3==null)?"Non-Existent":nH3.pollutantName); + String honoName = ((hono==null)?"Non-Existent":hono.pollutantName); + + // Table of tuplets { pollutant name, emission process name, class name } + // Pollutant name or emission process name may be null, but noth both. + // Class name should never be null (though the system tolerates this, it is a + // nonsensical case). + String pollutantsProcessesAndNeeds[] = null; + String pollutantsProcessesAndNeedsOnroad[] = { + null, "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator", + null, "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + "Total Energy Consumption","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Fossil Fuel Energy Consumption","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Petroleum Energy Consumption","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Methane (CH4)", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Nitrous Oxide (N2O)", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CH4N2ORunningStartCalculator", + "Atmospheric CO2","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + equivCO2PolName,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + "Total Gaseous Hydrocarbons","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaRunningCalculator", + "Carbon Monoxide (CO)","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaRunningCalculator", + "Oxides of Nitrogen (NOx)","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaRunningCalculator", + "Composite - NonECPM","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.BasicRunningPMEmissionCalculator", + "Elemental Carbon","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.BasicRunningPMEmissionCalculator", + sulfatePM10Name,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + sulfatePM25Name,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Organic Carbon","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Elemental Carbon","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Composite - NonECPM","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary Exhaust PM2.5 - Total", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary PM10 - Elemental Carbon", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + so2Name,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SO2Calculator", + nOName,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + honoName,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + nO2Name,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NO2Calculator", + nH3Name,"Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NH3RunningCalculator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + null, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Total Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Fossil Fuel Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Petroleum Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Methane (CH4)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Nitrous Oxide (N2O)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CH4N2ORunningStartCalculator", + "Atmospheric CO2","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + equivCO2PolName,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + "Total Gaseous Hydrocarbons", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaStartCalculator", + "Carbon Monoxide (CO)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaStartCalculator", + "Oxides of Nitrogen (NOx)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaStartCalculator", + "Total Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Fossil Fuel Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Petroleum Energy Consumption","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Total Gaseous Hydrocarbons", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Carbon Monoxide (CO)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Oxides of Nitrogen (NOx)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Nitrous Oxide (N2O)", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Composite - NonECPM", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Composite - NonECPM", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.BasicStartPMEmissionCalculator", + "Elemental Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + "Elemental Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.BasicStartPMEmissionCalculator", + sulfatePM10Name,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + sulfatePM25Name,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Organic Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Elemental Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Composite - NonECPM", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary Exhaust PM2.5 - Total", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary PM10 - Elemental Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + so2Name,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SO2Calculator", + nOName,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + honoName,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + nO2Name,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NO2Calculator", + nH3Name, "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NH3StartCalculator", + nH3Name,"Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator", + null, "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator", + null, "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + "Total Gaseous Hydrocarbons","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMExtendedIdleEmissionCalculator", + "Carbon Monoxide (CO)","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMExtendedIdleEmissionCalculator", + "Oxides of Nitrogen (NOx)","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMExtendedIdleEmissionCalculator", + "Total Energy Consumption","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Fossil Fuel Energy Consumption","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Petroleum Energy Consumption","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Atmospheric CO2","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + equivCO2PolName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + "Composite - NonECPM","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMExtendedIdleEmissionCalculator", + PM25ElementalCarbonName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMExtendedIdleEmissionCalculator", + sulfatePM10Name,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + sulfatePM25Name,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + PM25OrganicCarbonName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + PM25ElementalCarbonName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Composite - NonECPM","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary Exhaust PM2.5 - Total", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary PM10 - Elemental Carbon", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Methane (CH4)", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + so2Name,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SO2Calculator", + nOName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + honoName,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + nO2Name,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NO2Calculator", + nH3Name,"Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NH3ExtendedIdleEmissionCalculator", +// "Nitrous Oxide (N2O)", "Extended Idle Exhaust", +//TODO "gov.epa.otaq.moves.master.implementation.ghg.CH4N2ORunningStartCalculator", + +// null, "Manufacture/Disposal", null + + /* !!! Gwo Shyu 12/03/2009 fix an error due to well-to-Pump does exists in MOVES for now: change starts here + "Total Energy Consumption","Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.WellToPumpProcessor", + "Fossil Fuel Energy Consumption","Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.WellToPumpProcessor", + "Petroleum Energy Consumption","Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.WellToPumpProcessor", + "Methane (CH4)", "Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.CH4N2OWTPCalculator", + "Nitrous Oxide (N2O)", "Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.CH4N2OWTPCalculator", + "Atmospheric CO2","Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AtmosphericWTPCalculator", + equivCO2PolName,"Well-to-Pump", + "gov.epa.otaq.moves.master.implementation.ghg.CO2EqivalentWTPCalculator", + + !!! Change ends + */ + + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.TankTemperatureGenerator", + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator", + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.EvaporativePermeationCalculator", + null, "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.TankTemperatureGenerator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.TankFuelGenerator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.TankVaporVentingCalculator", + null, "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.TankTemperatureGenerator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.TankFuelGenerator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.LiquidLeakingCalculator", + null, "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + + null, "Evap Non-Fuel Vapors", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Evap Non-Fuel Vapors", + "gov.epa.otaq.moves.master.implementation.ghg.TankTemperatureGenerator", + null, "Evap Non-Fuel Vapors", + "gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator", + null, "Evap Non-Fuel Vapors", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + null, "Evap Non-Fuel Vapors", + "gov.epa.otaq.moves.master.implementation.ghg.DummyCalculator", + + null, "Brakewear", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Brakewear", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Brakewear", + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator", + null, "Brakewear", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + "Primary PM2.5 - Brakewear Particulate", "Brakewear", + "gov.epa.otaq.moves.master.implementation.ghg.BasicBrakeWearPMEmissionCalculator", + "Primary PM10 - Brakewear Particulate", "Brakewear", + "gov.epa.otaq.moves.master.implementation.ghg.PM10BrakeTireCalculator", + + null, "Tirewear", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Tirewear", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Tirewear", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + "Primary PM2.5 - Tirewear Particulate", "Tirewear", + "gov.epa.otaq.moves.master.implementation.ghg.BasicTireWearPMEmissionCalculator", + "Primary PM2.5 - Tirewear Particulate", "Tirewear", + "gov.epa.otaq.moves.master.implementation.ghg.AverageSpeedOperatingModeDistributionGenerator", + "Primary PM10 - Tirewear Particulate", "Tirewear", + "gov.epa.otaq.moves.master.implementation.ghg.PM10BrakeTireCalculator", + + "Total Gaseous Hydrocarbons","Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.RefuelingLossCalculator", + null, "Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + "Total Gaseous Hydrocarbons","Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.RefuelingLossCalculator", + null, "Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.FuelEffectsGenerator", + + "Primary PM10 - Elemental Carbon", "Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM2.5 - Total", "Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "1","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "2","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "3","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "5","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "6","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "20","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "21","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "22","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "23","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "24","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "25","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "26","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "27","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "30","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "31","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "32","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "33","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "34","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "79","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "80","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "86","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "87","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "105","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "118","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "112","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "115","Crankcase Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + + "Primary PM10 - Elemental Carbon", "Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM2.5 - Total", "Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "1","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "2","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "3","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "5","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "6","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "20","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "21","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "22","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "23","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "24","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "25","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "26","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "27","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "30","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "31","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "32","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "33","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "34","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "79","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "80","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "86","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "87","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "105","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "118","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "112","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "115","Crankcase Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + + "Primary PM10 - Elemental Carbon", "Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM2.5 - Total", "Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "1","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "2","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "3","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "5","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "6","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "20","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "21","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "22","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "23","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "24","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "25","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "26","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "27","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "30","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "31","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "32","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "33","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "34","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "79","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "80","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "86","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "87","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "105","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "118","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "112","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "115","Crankcase Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + + // Air Toxics, grouped here because it is known that many more will be added soon + "Benzene", "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "1,3-Butadiene", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acetaldehyde", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acrolein", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Formaldehyde", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "1,3-Butadiene", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acetaldehyde", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acrolein", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Formaldehyde", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "1,3-Butadiene", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acetaldehyde", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acrolein", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Formaldehyde", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + + // HC Speciation + "Non-Methane Hydrocarbons","Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Evap Fuel Leaks", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Evap Fuel Vapor Venting", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Evap Permeation", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Extended Idle Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Refueling Displacement Vapor Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Refueling Spillage Loss", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Running Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Hydrocarbons","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Start Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + + // More air toxics + "1,2,3,4,6,7,8-Heptachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,4,6,7,8-Heptachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,4,7,8,9-Heptachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,4,7,8-Hexachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,4,7,8-Hexachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,6,7,8-Hexachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,6,7,8-Hexachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,7,8,9-Hexachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,7,8,9-Hexachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,7,8-Pentachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "1,2,3,7,8-Pentachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "2,3,4,6,7,8-Hexachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "2,3,4,7,8-Pentachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "2,3,7,8-Tetrachlorodibenzo-p-Dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "2,3,7,8-Tetrachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Arsenic Compounds","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Chromium 3+","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Chromium 6+","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Manganese Compounds","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Mercury Divalent Gaseous","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Mercury Elemental Gaseous","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Mercury Particulate","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Nickel Compounds","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Octachlorodibenzo-p-dioxin","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + "Octachlorodibenzofuran","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsDistanceCalculator", + + "2,2,4-Trimethylpentane","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Evap Fuel Leaks","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Evap Fuel Vapor Venting","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Evap Permeation","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Propionaldehyde","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene gas","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Styrene","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Refueling Displacement Vapor Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Refueling Spillage Loss","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Propionaldehyde","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene gas","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene particle","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Styrene","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "2,2,4-Trimethylpentane","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Propionaldehyde","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene gas","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene particle","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Styrene","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + + "2,2,4-Trimethylpentane","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "2,2,4-Trimethylpentane","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "2,2,4-Trimethylpentane","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Ethyl Benzene","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Ethyl Benzene","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Ethyl Benzene","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Hexane","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Hexane","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Hexane","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Propionaldehyde","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Propionaldehyde","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Propionaldehyde","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Styrene","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Styrene","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Styrene","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Toluene","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Toluene","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Toluene","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Xylene","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Xylene","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Xylene","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Acenaphthylene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Anthracene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benz(a)anthracene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(a)pyrene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(b)fluoranthene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(g,h,i)perylene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Benzo(k)fluoranthene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Chrysene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluorene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Indeno(1,2,3,c,d)pyrene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Phenanthrene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Pyrene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Naphthalene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Naphthalene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Naphthalene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene particle","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene particle","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene particle","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Dibenzo(a,h)anthracene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene gas","Crankcase Running Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene gas","Crankcase Start Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + "Fluoranthene gas","Crankcase Extended Idle Exhaust","gov.epa.otaq.moves.master.implementation.ghg.CrankcaseEmissionCalculatorNonPM", + + // Auxiliary Power Exhaust (91) process + null, "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + null, "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator", + null, "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator", + "Total Gaseous Hydrocarbons","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMAuxiliaryPowerCalculator", + "Carbon Monoxide (CO)","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMAuxiliaryPowerCalculator", + "Oxides of Nitrogen (NOx)","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMAuxiliaryPowerCalculator", + "Total Energy Consumption","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Fossil Fuel Energy Consumption","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Petroleum Energy Consumption","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.EnergyConsumptionCalculator", + "Atmospheric CO2","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + equivCO2PolName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CO2AERunningStartExtendedIdleCalculator", + "Composite - NonECPM","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMAuxiliaryPowerCalculator", + PM25ElementalCarbonName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.CriteriaAndPMAuxiliaryPowerCalculator", + sulfatePM10Name,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + sulfatePM25Name,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + PM25OrganicCarbonName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + PM25ElementalCarbonName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Composite - NonECPM","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary Exhaust PM2.5 - Total", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SulfatePMCalculator", + "Primary PM10 - Elemental Carbon", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary PM10 - Organic Carbon", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Primary Exhaust PM10 - Total", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.PM10EmissionCalculator", + "Methane (CH4)", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + so2Name,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.SO2Calculator", + nOName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + honoName,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NOCalculator", + nO2Name,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NO2Calculator", + nH3Name,"Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.NH3AuxiliaryPowerCalculator", + + "1,3-Butadiene", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acetaldehyde", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acrolein", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzene", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethanol", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Formaldehyde", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "MTBE", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene", "Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + + "Non-Methane Hydrocarbons","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Non-Methane Organic Gases","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Total Organic Gases","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + "Volatile Organic Compounds","Auxiliary Power Exhaust", + "gov.epa.otaq.moves.master.implementation.ghg.HCSpeciationCalculator", + + "2,2,4-Trimethylpentane","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Acenaphthylene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Anthracene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benz(a)anthracene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(a)pyrene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(b)fluoranthene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(g,h,i)perylene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Benzo(k)fluoranthene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Chrysene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Dibenzo(a,h)anthracene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Ethyl Benzene","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluoranthene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Fluorene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Hexane","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Indeno(1,2,3,c,d)pyrene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Naphthalene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Phenanthrene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Propionaldehyde","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Pyrene gas","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Styrene","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Toluene","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + "Xylene","Auxiliary Power Exhaust","gov.epa.otaq.moves.master.implementation.ghg.AirToxicsCalculator", + + // TOG Speciation Mechanisms + "CB05 Mechanism",null,"gov.epa.otaq.moves.master.implementation.ghg.TOGSpeciationCalculator", + "CB6CMAQ Mechanism",null,"gov.epa.otaq.moves.master.implementation.ghg.TOGSpeciationCalculator", + "SAPRC07T Mechanism",null,"gov.epa.otaq.moves.master.implementation.ghg.TOGSpeciationCalculator" + }; + + String pollutantsProcessesAndNeedsNonroad[] = { + /** NR_IMP: nonroad needed classes **/ + // the following is for NONROAD simulation + // for all pollutants and processes, use + // NonroadEmissionCalculator + // - since it invokes nonroad.exe to do the simulation + null, + null, + "gov.epa.otaq.moves.master.implementation.general.MeteorologyGenerator", + + null, "1", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "15", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "18", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "19", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "20", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "21", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "30", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "31", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "32", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "90", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + null, "99", "gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator", + + "5", null, "gov.epa.otaq.moves.master.implementation.ghg.NRHCSpeciationCalculator", + "79", null, "gov.epa.otaq.moves.master.implementation.ghg.NRHCSpeciationCalculator", + "80", null, "gov.epa.otaq.moves.master.implementation.ghg.NRHCSpeciationCalculator", + "86", null, "gov.epa.otaq.moves.master.implementation.ghg.NRHCSpeciationCalculator", + "87", null, "gov.epa.otaq.moves.master.implementation.ghg.NRHCSpeciationCalculator", + + "88", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + + "20", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "21", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "22", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "23", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "24", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "25", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "26", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "27", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "40", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "41", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "42", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "43", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "44", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "45", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "46", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "60", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "61", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "62", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "63", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "65", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "66", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "67", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "68", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "69", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "70", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "71", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "72", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "73", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "74", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "75", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "76", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "77", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "78", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "81", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "82", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "83", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "84", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "130", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "131", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "132", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "133", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "134", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "135", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "136", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "137", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "138", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "139", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "140", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "141", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "142", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "143", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "144", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "145", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "146", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "168", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "169", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "170", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "171", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "172", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "173", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "174", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "175", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "176", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "177", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "178", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "181", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "182", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "183", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "184", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator", + "185", null, "gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator" + }; + + switch (mc) { + case M1: + pollutantsProcessesAndNeeds = pollutantsProcessesAndNeedsOnroad; + + if(ExecutionRunSpec.theExecutionRunSpec.getOutputVMTData()){ + neededClassNames.add("gov.epa.otaq.moves.master.implementation.ghg.DistanceCalculator"); + neededClassNames.add("gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator"); + neededClassNames.add("gov.epa.otaq.moves.master.implementation.ghg.SourceBinDistributionGenerator"); + } + + if(runSpec.outputSHO || runSpec.outputSH || runSpec.outputSHP || runSpec.outputSHIdling + || runSpec.outputStarts || runSpec.outputPopulation) { + neededClassNames.add("gov.epa.otaq.moves.master.implementation.ghg.ActivityCalculator"); + } + break; + case M2: + pollutantsProcessesAndNeeds = pollutantsProcessesAndNeedsNonroad; + break; + default: + break; + } + + for(int i=0;i(); + TreeSet deferredClassNames = new TreeSet(); + + switch(mc) { + case M1: + if(isProjectDomain) { + if(neededClassNames.contains( + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator")) { + neededClassNames.remove( + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator"); + neededClassNames.add( + "gov.epa.otaq.moves.master.implementation.ghg.ProjectTAG"); + } + if(neededClassNames.contains( + "gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupTotalActivityGenerator")) { + neededClassNames.remove( + "gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupTotalActivityGenerator"); + neededClassNames.add( + "gov.epa.otaq.moves.master.implementation.ghg.ProjectTAG"); + } + if(neededClassNames.contains( + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator")) { + neededClassNames.remove( + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator"); + neededClassNames.add( + "gov.epa.otaq.moves.master.implementation.ghg.LinkOperatingModeDistributionGenerator"); + } + if(!CompilationFlags.DO_RATES_FIRST) { + neededClassNames.remove("gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator"); + } + //neededClassNames.remove("gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator"); + //neededClassNames.remove("gov.epa.otaq.moves.master.implementation.ghg.AverageSpeedOperatingModeDistributionGenerator"); + //neededClassNames.remove("gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupOperatingModeDistributionGenerator"); + } + if(isMesoscaleLookup) { + /* + if(neededClassNames.contains( + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator")) { + neededClassNames.remove( + "gov.epa.otaq.moves.master.implementation.ghg.TotalActivityGenerator"); + neededClassNames.add( + "gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupTotalActivityGenerator"); + } + */ + if(neededClassNames.contains( + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator")) { + neededClassNames.remove( + "gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator"); + neededClassNames.add( + "gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupOperatingModeDistributionGenerator"); + } + } + + if(CompilationFlags.DO_RATES_FIRST) { + TreeSet originalClassNames = new TreeSet(); + originalClassNames.addAll(neededClassNames); + neededClassNames.clear(); + String[] neededClasses = { + "gov.epa.otaq.moves.master.implementation.ghg.BaseRateCalculator", + "gov.epa.otaq.moves.master.implementation.ghg.BaseRateGenerator", + "gov.epa.otaq.moves.master.implementation.ghg.RatesOperatingModeDistributionGenerator" + }; + for(int i=0;i i=neededClassNames.iterator();i.hasNext();) { + String name = (String)i.next(); + if(!createdObjects.containsKey(name)) { + try { + Class c = Class.forName(name); + if(targetRunSpec.shouldExecute(c)) { + try { + Object object = c.newInstance(); + MasterLoopable loopable = (MasterLoopable)object; + createdObjects.put(name,loopable); + Logger.log(LogMessageCategory.INFO,"Class " + name + " has been instantiated."); + } catch(Exception e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator is unable to instantiate " + name); + } + } else { + Logger.log(LogMessageCategory.INFO,"Class " + name + " has been disabled by the user."); + } + } catch(ClassNotFoundException e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator could not find Java class " + name + " to instantiate"); + } + } + } + // Now, call subscribeToMe() for each of the MasterLoopable objects + Set objectNames = createdObjects.keySet(); + for(Iterator i=objectNames.iterator();i.hasNext();) { + String name = (String)i.next(); + MasterLoopable loopable = (MasterLoopable)createdObjects.get(name); + try { + int eventRecordID = + MOVESEngine.logEventStart("Subscribe " + loopable.getClass().getName()); + loopable.subscribeToMe(targetLoop); + MOVESEngine.logEventStop(eventRecordID); + } catch(Exception e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator is unable to subscribe " + name); + } + } + + // Call subscribeToMe() for each InternalControlStrategy as well + TreeMap > internalControlStrategies = + targetRunSpec.getInternalControlStrategies(); + internalControlStrategies = addAutomaticInternalControlStrategies(internalControlStrategies); + Set strategyClassNames = internalControlStrategies.keySet(); + for(Iterator i=strategyClassNames.iterator();i.hasNext();) { + String name = (String)i.next(); + LinkedList strategies = (LinkedList) + internalControlStrategies.get(name); + if(strategies != null) { + for(Iterator j=strategies.iterator();j.hasNext();) { + InternalControlStrategy strategy = (InternalControlStrategy)j.next(); + try { + int eventRecordID = + MOVESEngine.logEventStart( + "Subscribe " + strategy.getClass().getName()); + strategy.subscribeToMe(targetLoop); + MOVESEngine.logEventStop(eventRecordID); + } catch(Exception e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator is unable to subscribe " + name); + } + } + } + } + + switch(mc) { + case M1: + // If Onroad distance is needed, but Running Exhaust is not selected, then we must + // now add the TAG, the distance calculator, and the Running Exhaust process. + // This must be done after other signups so that nothing else gets run during + // Running Exhaust, which we're only adding because distance calculations + // require it. + if(!CompilationFlags.DO_RATES_FIRST && (ExecutionRunSpec.theExecutionRunSpec.getOutputVMTData() + && !targetRunSpec.doesHaveDistancePollutantAndProcess())) { + // Add Running Exhaust to the target runspec + EmissionProcess process = EmissionProcess.findByID(1); + if(process == null) { + Logger.log(LogMessageCategory.ERROR,"Cannot find Running Exhaust process needed for distance output."); + } + Pollutant pollutant = Pollutant.findByID(1); + if(pollutant == null) { + Logger.log(LogMessageCategory.ERROR,"Cannot find THC pollutant needed for distance output."); + } + PollutantProcessAssociation ppa = PollutantProcessAssociation.createByID(pollutant.databaseKey,process.databaseKey); + if(ppa == null) { + Logger.log(LogMessageCategory.ERROR,"Cannot find Running Exhaust/THC combination needed for distance output."); + } + if(process != null && pollutant != null && ppa != null) { + // Add required pollutant/process so that SBDG and Distance Calculator will successfully register and execute. + // Because they are added after all others though, no calculators will be instantiated for what we actually add here. + targetRunSpec.targetProcesses.add(process); + targetRunSpec.targetPollutants.add(pollutant); + targetRunSpec.targetPollutantProcesses.add(new Integer(ppa.getDatabaseKey())); + targetRunSpec.pollutantProcessAssociations.add(ppa); + + Connection executionDB = null; + try { + executionDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + String sql = "insert into RunspecPollutantProcess (polProcessID) values (" + ppa.getDatabaseKey() + ")"; + SQLRunner.executeSQL(executionDB,sql); + } catch(Exception e) { + Logger.logError(e,"Unable to add Running Exhaust/THC to RunspecPollutantProcess table, as needed for distance calculation."); + } finally { + if(executionDB != null) { + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,executionDB); + } catch(Exception e) { + // Nothing to do here + } + executionDB = null; + } + } + + // Instantiate all deferred items + TreeMap deferredCreatedObjects = new TreeMap(); + for(Iterator i=deferredClassNames.iterator();i.hasNext();) { + String name = (String)i.next(); + if(!createdObjects.containsKey(name)) { + try { + Class c = Class.forName(name); + if(targetRunSpec.shouldExecute(c)) { + try { + Object object = c.newInstance(); + MasterLoopable loopable = (MasterLoopable)object; + createdObjects.put(name,loopable); + deferredCreatedObjects.put(name,loopable); + } catch(Exception e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator is unable to instantiate " + name); + } + } + } catch(ClassNotFoundException e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator could not find Java class " + name + + " to instantiate"); + } + } + } + + // Call subscribe on all deferred items + Set tempObjectNames = deferredCreatedObjects.keySet(); + for(Iterator i=tempObjectNames.iterator();i.hasNext();) { + String name = (String)i.next(); + MasterLoopable loopable = (MasterLoopable)deferredCreatedObjects.get(name); + try { + int eventRecordID = + MOVESEngine.logEventStart("Subscribe " + loopable.getClass().getName()); + loopable.subscribeToMe(targetLoop); + MOVESEngine.logEventStop(eventRecordID); + } catch(Exception e) { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.logError(e, "MOVESInstantiator is unable to subscribe " + name); + } + } + } + } + break; + case M2: + // Nothing to do here + break; + } + } finally { + neededClassNames = null; + InterconnectionTracker.finishTracking(); + } + } + + /** + * Add any InternalControlStrategy objects that are implied by presence of table data. + * @param originals objects that exist in the RunSpec + * @return the collection of objects to be used at runtime. + **/ + static TreeMap > addAutomaticInternalControlStrategies( + TreeMap > originals) { + String avftClassName = "gov.epa.otaq.moves.master.implementation.ghg.internalcontrolstrategies.avft.AVFTControlStrategy"; + String retrofitClassName = "gov.epa.otaq.moves.master.implementation.ghg.internalcontrolstrategies.onroadretrofit.OnRoadRetrofitStrategy"; + + boolean hasAVFTData = false; + boolean shouldCreateAVFT = false; + boolean hasRetrofitData = false; + boolean shouldCreateRetrofit = false; + boolean hasAnyData = false; + boolean shouldCreateSomething = false; + + LinkedList s = originals.get(avftClassName); + if(s != null && s.size() > 0) { + hasAVFTData = true; + hasAnyData = true; + } + s = originals.get(retrofitClassName); + if(s != null && s.size() > 0) { + hasRetrofitData = true; + hasAnyData = true; + } + if(!hasAVFTData || !hasRetrofitData) { + Connection executionDB = null; + String sql = ""; + try { + executionDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + if(!hasAVFTData) { + sql = "select count(*) from avft"; + if(SQLRunner.executeScalar(executionDB,sql) >= 1) { + hasAVFTData = true; + hasAnyData = true; + shouldCreateAVFT = true; + shouldCreateSomething = true; + } + } + if(!hasRetrofitData) { + sql = "select count(*) from onRoadRetrofit"; + if(SQLRunner.executeScalar(executionDB,sql) >= 1) { + hasRetrofitData = true; + hasAnyData = true; + shouldCreateRetrofit = true; + shouldCreateSomething = true; + } + } + } catch(Exception e) { + Logger.logError(e,"Unable to check for existing strategy data using: " + sql); + } finally { + if(executionDB != null) { + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,executionDB); + } catch(Exception e) { + // Nothing to do here + } + executionDB = null; + } + } + } + if(!shouldCreateSomething) { + return originals; + } + // Copy the original collection + TreeMap > result = new TreeMap >(); + Set keys = originals.keySet(); + for(Iterator ki=keys.iterator();ki.hasNext();) { + String key = ki.next(); + LinkedList newList = new LinkedList(); + result.put(key,newList); + s = originals.get(key); + if(s != null) { + newList.addAll(s); + } + } + // Add AVFT data + if(shouldCreateAVFT) { + s = new LinkedList(); + s.add(new AVFTControlStrategy()); + result.put(avftClassName,s); + } + // Add Onroad Retrofit data + if(shouldCreateRetrofit) { + s = new LinkedList(); + s.add(new OnRoadRetrofitStrategy()); + result.put(retrofitClassName,s); + } + return result; + } + + /** + * This is used to indicate that another class is also required to be instantiated. + * @param name The full package and class name of a MasterLoopable-based + * class to be instantiated. + **/ + public static void alsoInstantiate(String name) { + if(neededClassNames != null) { + neededClassNames.add(name); + } else { + /** + * @explain An internal code issue has occurred while setting up code + * required for a simulation. + **/ + Logger.log(LogMessageCategory.ERROR, "Invalid timing on request to instantiate " + + name); + } + } + + /** + * This is used to indicate that another class is also required to be instantiated. + * @param name The full package and class name of a MasterLoopable-based + * class to be checked for instantiation. + **/ + public static MasterLoopable didInstantiate(String name) { + if(createdObjects != null) { + return (MasterLoopable)createdObjects.get(name); + } else { + /** + * @issue Invalid timing on request for instantiated object [name] + * @explain This internal error can occur if user-modified Java code calls + * MOVESInstantiator.didInstantiate() out of the proper sequence. + **/ + Logger.log(LogMessageCategory.ERROR, + "Invalid timing on request for instantiated object " + name); + return null; + } + } + + /** + * Resets all internal collections and data. Useful when reloading. + **/ + public static void reset() { + neededClassNames = null; + createdObjects = null; + InterconnectionTracker.finishTracking(); + } +} diff --git a/gov/epa/otaq/moves/master/framework/MOVESInstantiatorTest.java b/gov/epa/otaq/moves/master/framework/MOVESInstantiatorTest.java new file mode 100644 index 0000000..8f32f5e --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MOVESInstantiatorTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)MOVESInstantiatorTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the MOVESInstantiator class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class MOVESInstantiatorTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MOVESInstantiatorTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoop.java b/gov/epa/otaq/moves/master/framework/MasterLoop.java new file mode 100644 index 0000000..b30061d --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoop.java @@ -0,0 +1,1014 @@ +/************************************************************************************************** + * @(#)MasterLoop.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.sql.Connection; +import java.sql.SQLException; +import java.text.SimpleDateFormat; +import java.util.*; +import java.sql.ResultSet; + +/** + * Orchestrates the main functionality of the MOVES system. It runs the InputDataManager object + * and the InputControlStrategy objects to completion, then loops through the target locations and + * times and calls the InternalControlStrategy, Generator, and EmissionCalculator objects. + * + * @author Wesley Faler + * @author Sarah Luo, ERG + * @author Mitch C (Task 128) + * @version 2015-06-16 +**/ +public class MasterLoop extends MOVESThread { + /** + * Number of MasterLoopable threads to set loose on this Master Loop. + * Set this number lower to reduce cache contention in the database server. + **/ + private static final int NUM_LOOPABLE_THREADS = 1; // 8; + + /** + * Count of how many outbound bundles will be created by the subscribers to this loop. + * One "bundle" is created each time an EmissionCalculator's executeLoop() method is called. + * This will be null until the value is known. + **/ + public Integer howManyOutboundBundlesWillBeCreated = null; + + /** + * Completion fraction of startup activities. + **/ + public Double startupFractionComplete = null; + + /** The context that the MasterLoop is currently iterating at. **/ + public MasterLoopContext context = new MasterLoopContext(); + + /** + * This is a map from EmissionProcess objects to a sorted TreeSet of MasterLoopableSubscription + * objects. These subscription objects within are sorted in the desired order of execution + * already (see MasterLoopableSubscription's compareTo method). Hence, once the TreeSet is found + * appropriate to the current process, its members can be iterated over until the desired + * granularity is found then queued for processing in bunches according to their priority. + **/ + private TreeMap > subscriptions = + new TreeMap >(); + + /** + * A linked list of MasterLoopable objects ready to execute immediately. This collection + * is serviced by MasterLoopableThread objects. Synchronized against the MasterLoop. + **/ + private LinkedList readyToExecute = new LinkedList(); + + /** + * The number of MasterLoopable objects added to readyToExecute and not removed from + * completedExecution. Synchronized against the MasterLoop. + **/ + private int numLoopableCompletionsToWaitFor = 0; + + /** A collection of active MasterLoopableThread objects. **/ + private LinkedList loopableThreads = + new LinkedList(); + + /** + * The set of contexts, including an associated MasterLoopable object, that have created + * non-calculator bundles that must be processed before the assoicated loopable object + * is considered finished. + **/ + private LinkedList contextsWaitingForBundles = new LinkedList(); + + /** Determines if the loop for years (and down to months, days, and hours) gets run **/ + private boolean mustLoopOverYears = true; + /** Determines if the loop for months (and down to days and hours) gets run **/ + private boolean mustLoopOverMonths = true; + /** Determines if the loop for days (and down to hours) gets run **/ + private boolean mustLoopOverDays = true; + /** Determines if the loop for hours gets run **/ + private boolean mustLoopOverHours = true; + + /** true when trying to determine the value for howManyOutboundBundlesWillBeCreated **/ + private boolean isInBundleCountingMode = false; + /** internal counter used when determining howManyOutboundBundlesWillBeCreated **/ + private int bundleCount = 0; + /** true if startup had any failures, prevents the main thread from running **/ + private boolean startupFailed = false; + + /** + * Default constructor. + **/ + public MasterLoop() { + super("MasterLoop"); + } + + /** + * true when calling loopables only for the purpose of counting the number + * of bundles that will be generated. + * @return true if only counting bundles, false if requesting real work + **/ + public boolean isCountingBundles() { + return isInBundleCountingMode; + } + + /** + * Set the startupFractionComplete member variable and notify the MOVESEngine's listeners + * of the progress. + * @param fraction new value for startupFractionComplete + **/ + void setStartupFractionComplete(double fraction) { + synchronized(this) { + startupFractionComplete = new Double(fraction); + } + MOVESEngine.theInstance.notifyListeners(); + } + + /** + * This performs one-time startup activities prior to threaded operation, including merging + * databases (using InputDataManager) into the one execution database and then initializing + * ExecutionRunSpec data. + * @return Should the thread continue to run + **/ + protected boolean startupInThread() { + setStartupFractionComplete(0); + + double progress = 0; + final double fractionBeforeExecutionDatabase = 0.20; + final double fractionForAllMerges = 0.50; + final double fractionForPreAggregation = 0.20; + final double fractionAfterExecutionDatabase = 0.05; + final double fractionMisc = 0.05; + + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + + boolean retValueFinal = true; + startupFailed = true; // assume failure unless everything works + + try { + ExecutionRunSpec.theExecutionRunSpec.initializeBeforeExecutionDatabase(); + progress += fractionBeforeExecutionDatabase; + setStartupFractionComplete(progress); + + int eventRecordID = MOVESEngine.logEventStart("Create Execution Database"); + //first we go through all the databases that the user has selected + //in the reverse order and merge them with the Execution database + //so that the data in the latest selected input is merged with the + //Executiondatabase + LinkedList databaseSelectionInputSets = + ExecutionRunSpec.theExecutionRunSpec.getDatabaseSelectionInputSets(); + int howManyMerges = 1 + databaseSelectionInputSets.size(); + DatabaseSelection domainInputDatabase = executionRunSpec.getDomainInputDatabase(); + // Check databases, ensuring they exist + if(domainInputDatabase != null) { + Connection t = domainInputDatabase.openConnectionOrNull(); + if(t == null) { + /** + * @issue Unable to open domain database [*] + * @explain A database listed in the RunSpec could not be accessed. Check + * the database availability on your database server. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to open domain database " + domainInputDatabase.databaseName); + return false; + } + DatabaseUtilities.closeConnection(t); + } + if(databaseSelectionInputSets.size() != 0) { + for(ListIterator i = + databaseSelectionInputSets. + listIterator(databaseSelectionInputSets.size()); + i.hasPrevious();) { + DatabaseSelection tempSelection = (DatabaseSelection)(i.previous()); + Connection t = tempSelection.openConnectionOrNull(); + if(t == null) { + /** + * @issue Unable to open user database [*] + * @explain A database listed in the RunSpec could not be accessed. Check + * the database availability on your database server. + **/ + Logger.log(LogMessageCategory.ERROR, + "Unable to open user database " + tempSelection.databaseName); + return false; + } + DatabaseUtilities.closeConnection(t); + } + } + if(domainInputDatabase != null) { + howManyMerges++; + } + // Merge the databases + // Do a first pass copying only shallow data, such as years and regionCounty. + // This shallow data can be then mined to get secondary identifies to futher + // filter the rest of the data in the second pass. + InputDataManager.startMergeSession(); + howManyMerges *= 2; + for(int pass=0;pass<2 && retValueFinal;pass++) { + if(databaseSelectionInputSets.size() != 0) { + for(ListIterator i = + databaseSelectionInputSets. + listIterator(databaseSelectionInputSets.size()); + i.hasPrevious();) { + DatabaseSelection dbToMerge = (DatabaseSelection)i.previous(); + if(InputDataManager.merge(dbToMerge) == false) { + retValueFinal = false; + } + if(1==pass && InputDataManager.mergeNonRoad(dbToMerge) == false) { + retValueFinal = false; + } + progress += fractionForAllMerges / howManyMerges; + setStartupFractionComplete(progress); + } + } + if(domainInputDatabase != null) { + if(InputDataManager.merge(domainInputDatabase) == false){ + retValueFinal = false; + } + if(1==pass && InputDataManager.mergeNonRoad(domainInputDatabase) == false){ + retValueFinal = false; + } + // Custom domains used for Mesoscale may have their own custom links + // and these must be loaded once imported. Doing so will provide filters + // to InputDataManager and prevent it from loading all geographical data. + if(1==pass) { + if(retValueFinal && executionRunSpec.getRunSpec().isCustomDomain() + && executionRunSpec.getRunSpec().scale == ModelScale.MESOSCALE_LOOKUP) { + executionRunSpec.initializeLocationsAfterDomainDatabase(); + } + } + progress += fractionForAllMerges / howManyMerges; + setStartupFractionComplete(progress); + } + //next the default database is merged into the Execution database + if(InputDataManager.merge(ExecutionRunSpec.theExecutionRunSpec.getModelDomain()) == false){ + retValueFinal = false; + } + if(1==pass && InputDataManager.mergeNonRoad(ExecutionRunSpec.theExecutionRunSpec.getModelDomain()) == false){ + retValueFinal = false; + } + progress += fractionForAllMerges / howManyMerges; + setStartupFractionComplete(progress); + + if(0 == pass) { + InputDataManager.advanceMergeSession(); + executionRunSpec.initializeAfterShallowTables(); + } + } + InputDataManager.createUniqueVehicleIDs(); + + InputDataManager.endMergeSession(MOVESEngine.theInstance.getActiveRunID()); + MOVESEngine.logEventStop(eventRecordID); + + eventRecordID = MOVESEngine.logEventStart("Check VMT sources"); + //next, confirm there is at most one VMT source in the execution database + if(retValueFinal) { + if(howManyVMTSources() > 1) { + Logger.log(LogMessageCategory.ERROR, + "Too many VMT sources specified. Provide only one of HPMSVtypeYear, HPMSVtypeDay, SourceTypeYearVMT, and SourceTypeDayVMT."); + retValueFinal = false; + } + } + MOVESEngine.logEventStop(eventRecordID); + + eventRecordID = MOVESEngine.logEventStart("Preaggregate data"); + //next the Execution database is "preaggregated" if necessary + if(retValueFinal) { + InputDataManager.preAggregateExecutionDB(); + } + progress += fractionForPreAggregation; + setStartupFractionComplete(progress); + MOVESEngine.logEventStop(eventRecordID); + + // add runSpecXXXXX tables used to assist calculators doing data filtering + ExecutionRunSpec.theExecutionRunSpec.initializeAfterExecutionDatabase(); + progress += fractionAfterExecutionDatabase; + setStartupFractionComplete(progress); + + // add default data to the execution database + eventRecordID = MOVESEngine.logEventStart("Add default data"); + DefaultDataMaker.addDefaultDataToExecutionDatabase(); + MOVESEngine.logEventStop(eventRecordID); + + DatabaseConnectionManager.learnCreateTableStatementsForDefaultAndExecutionDatabases(); + if(retValueFinal) { + MOVESInstantiator.performInstantiation(ExecutionRunSpec.theExecutionRunSpec, this); + howManyOutboundBundlesWillBeCreated = new Integer(calcHowManyOutboundBundlesWillBeCreated()); + } else { + howManyOutboundBundlesWillBeCreated = new Integer(0); + } + context.totalBundles = this.howManyOutboundBundlesWillBeCreated; + MOVESEngine.updateExpectedDoneFiles(howManyOutboundBundlesWillBeCreated.intValue()); + progress += fractionMisc; + setStartupFractionComplete(progress); + } catch (Exception exception) { + /** + * @explain An error occurred during simulation setup. The simulation has failed + * and is ended. + **/ + Logger.logError(exception, "Master Loop startup failed."); + return false; + } + + for (int i = 0; i < NUM_LOOPABLE_THREADS; i++) { + MasterLoopableThread loopableThread = new MasterLoopableThread(this); + loopableThread.start(); + + loopableThreads.add(loopableThread); + } + + setStartupFractionComplete(1); + + if(retValueFinal) { + startupFailed = false; + } + return retValueFinal; + } + + /** + * Count the number of VMT tables that are populated in the execution database. + * @return the number of VMT tables that have any data, never less than 0. + **/ + int howManyVMTSources() { + String[] tables = { + "HPMSVtypeYear", "HPMSVtypeDay", "SourceTypeYearVMT", "SourceTypeDayVMT" + }; + int count = 0; + Connection db = null; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.EXECUTION); + for(int i=0;i 0) { + count++; + } + } + } catch(Exception e) { + Logger.logError(e,"Unable to check VMT sources"); + return 1000; + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.EXECUTION,db); + db = null; + } + } + return count; + } + + /** + * Performs the core looping work by calling all MasterLoopable objects in the proper + * sequence. + * @return Should the thread continue to run + * @throws InterruptedException This will be thrown if the current thread is interrupted. + **/ + protected boolean threadIterationGo() throws InterruptedException { + if(!isInBundleCountingMode) { + if(startupFailed || CompilationFlags.GENERATE_CALCULATOR_INFO_DOCUMENTATION) { + MOVESEngine.terminalErrorFound(); + return false; + } + MOVESEngine.theInstance.onStartedBundleGeneration(); + } + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + //Make copies of base tables used for uncertainty calculations + if(executionRunSpec.estimateUncertainty()) { + InputDataManager.makeBaseUncertaintyInput(); + } + + //Logger.log(LogMessageCategory.DEBUG,"Number of years: " + executionRunSpec.years.size()); + //Logger.log(LogMessageCategory.DEBUG,"Number of months: " + executionRunSpec.months.size()); + //Logger.log(LogMessageCategory.DEBUG,"Number of days: " + executionRunSpec.days.size()); + //Logger.log(LogMessageCategory.DEBUG,"Number of hours: " + executionRunSpec.hours.size()); + + // Perform main loop. Call all loopable objects. + synchronized (subscriptions) { + context.setRunID(MOVESEngine.theInstance.getActiveRunID()); + int numberOfIterations = executionRunSpec.getHowManyIterationsWillBePerformed(); + for(int iterationID=1;iterationID <= numberOfIterations;iterationID++) { + if(isSignaledToExit()) { + return false; + } + if(!isInBundleCountingMode) { + if(executionRunSpec.estimateUncertainty()) { + InputDataManager.simulateUncertaintyInInput(iterationID); + } + int processedIterationCount = MOVESEngine.theInstance.getHowManyIterationsProcessedSoFar(); + while(processedIterationCount1) { + Logger.log(LogMessageCategory.INFO,"Starting iteration "+iterationID + +" of "+numberOfIterations); + } + } + + // Start the next iteration. + context.setIteration(iterationID); + ExecutionRunSpec.theExecutionRunSpec.initializeBeforeIteration(); + Iterator processIter = + ExecutionRunSpec.theExecutionRunSpec.targetProcesses.iterator(); + while (processIter.hasNext()) { + if(isSignaledToExit()) { + return false; + } + EmissionProcess iterProcess = (EmissionProcess)processIter.next(); + waitForPause(); + loopThroughProcess(iterProcess); + } + } + } + if(!isInBundleCountingMode) { + MOVESEngine.theInstance.onDoneGeneratingBundles(); + } + return false; + } + + /** + * Loop through the specified emission process objects. + * @param emissionProcess The target emission process to loop through. + * @throws InterruptedException This will be thrown if the current thread is interrupted. + **/ + protected void loopThroughProcess(EmissionProcess emissionProcess) + throws InterruptedException { + if(!subscriptions.containsKey(emissionProcess)) { + // If no loopable objects are subscribed for this process, return. + return; + } + if(!ExecutionRunSpec.theExecutionRunSpec.willRunCalculators) { + // If there are no calculators, there can be no true bundles output but + // we increment bundleCount to give a general measure of progress. + if(isInBundleCountingMode) { + bundleCount++; + } + } + + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + + context.setProcess(emissionProcess); + //Logger.log(LogMessageCategory.INFO,"context.process=" + emissionProcess.databaseKey); + boolean hasHourSubscriptions = hasLoopables(MasterLoopGranularity.HOUR); + boolean hasDaySubscriptions = hasLoopables(MasterLoopGranularity.DAY); + boolean hasMonthSubscriptions = hasLoopables(MasterLoopGranularity.MONTH); + boolean hasYearSubscriptions = hasLoopables(MasterLoopGranularity.YEAR); + + mustLoopOverYears = false; + mustLoopOverMonths = false; + mustLoopOverDays = false; + mustLoopOverHours = false; + + if(hasHourSubscriptions) { + mustLoopOverYears = true; + mustLoopOverMonths = true; + mustLoopOverDays = true; + mustLoopOverHours = true; + } else if(hasDaySubscriptions) { + mustLoopOverYears = true; + mustLoopOverMonths = true; + mustLoopOverDays = true; + } else if(hasMonthSubscriptions) { + mustLoopOverYears = true; + mustLoopOverMonths = true; + } else if(hasYearSubscriptions) { + mustLoopOverYears = true; + } + + // Call all subscriptions set at process granularity. + notifyLoopablesOfLoopChange(MasterLoopGranularity.PROCESS, false); + + // Iterate through ExecutionLocation objects. + //Logger.log(LogMessageCategory.DEBUG,"Iterating through " + executionRunSpec.executionLocations.size() + " locations"); + for (Iterator executionLocationIter = + executionRunSpec.executionLocations.iterator(); + executionLocationIter.hasNext();) { + if(isSignaledToExit()) { + break; + } + ExecutionLocation iterLocation = (ExecutionLocation)executionLocationIter.next(); + loopThroughLocation(iterLocation); + } + notifyLoopablesOfLoopChange(MasterLoopGranularity.LINK, true); + notifyLoopablesOfLoopChange(MasterLoopGranularity.ZONE, true); + notifyLoopablesOfLoopChange(MasterLoopGranularity.COUNTY, true); + notifyLoopablesOfLoopChange(MasterLoopGranularity.STATE, true); + + notifyLoopablesOfLoopChange(MasterLoopGranularity.PROCESS, true); + } + + /** + * Loop through the specified location. + * @param location The target location to loop through. + * @throws InterruptedException This will be thrown if the current thread is interrupted. + **/ + protected void loopThroughLocation(ExecutionLocation location) throws InterruptedException { + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + boolean stateChanging = (context.iterLocation == null) || + (context.iterLocation.stateRecordID != location.stateRecordID); + boolean countyChanging = (context.iterLocation == null) || + (context.iterLocation.countyRecordID != location.countyRecordID); + boolean zoneChanging = (context.iterLocation == null) || + (context.iterLocation.zoneRecordID != location.zoneRecordID); + boolean linkChanging = (context.iterLocation == null) || + (context.iterLocation.linkRecordID != location.linkRecordID); + + if(context.iterLocation != null) { + if(linkChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.LINK, true); + } + if(zoneChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.ZONE, true); + } + if(countyChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.COUNTY, true); + } + if(stateChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.STATE, true); + } + } + + context.setLocation(location); + + if(stateChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.STATE, false); + } + if(countyChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.COUNTY, false); + } + if(zoneChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.ZONE, false); + } + if(linkChanging) { + notifyLoopablesOfLoopChange(MasterLoopGranularity.LINK, false); + } + + loopThroughTime(); + } + + /** + * Loop through the years, months, days, and hours (if need be). + * @throws InterruptedException This will be thrown if the current thread is interrupted. + **/ + protected void loopThroughTime() throws InterruptedException { + ExecutionRunSpec executionRunSpec = ExecutionRunSpec.theExecutionRunSpec; + + if(mustLoopOverYears) { + for(Iterator yearIter = executionRunSpec.years.iterator(); + yearIter.hasNext();) { + if(isSignaledToExit()) { + break; + } + context.resetTime(); + context.year = ((Integer)yearIter.next()).intValue(); + //Logger.log(LogMessageCategory.INFO,"context.year=" + context.year); + //Logger.log(LogMessageCategory.INFO,"context=" + context.toBundleManifestContextForHumans()); + notifyLoopablesOfLoopChange(MasterLoopGranularity.YEAR, false); + + if(mustLoopOverMonths) { + for(Iterator monthIter=executionRunSpec.months.iterator(); + monthIter.hasNext();) { + if(isSignaledToExit()) { + break; + } + context.monthID = ((Integer)monthIter.next()).intValue(); + //Logger.log(LogMessageCategory.INFO,"context.monthID=" + context.monthID); + //Logger.log(LogMessageCategory.INFO,"context=" + context.toBundleManifestContextForHumans()); + notifyLoopablesOfLoopChange(MasterLoopGranularity.MONTH, false); + + if(mustLoopOverDays) { + for(Iterator dayIter=executionRunSpec.days.iterator(); + dayIter.hasNext();) { + if(isSignaledToExit()) { + break; + } + context.dayID = ((Integer)dayIter.next()).intValue(); + notifyLoopablesOfLoopChange(MasterLoopGranularity.DAY, false); + + if(mustLoopOverHours) { + for(Iterator hourIter= + executionRunSpec.hours.iterator();hourIter.hasNext();) { + if(isSignaledToExit()) { + break; + } + context.hourID = ((Integer)hourIter.next()).intValue(); + notifyLoopablesOfLoopChange(MasterLoopGranularity.HOUR, + false); + notifyLoopablesOfLoopChange(MasterLoopGranularity.HOUR, + true); + } + } + notifyLoopablesOfLoopChange(MasterLoopGranularity.DAY, true); + } + } + notifyLoopablesOfLoopChange(MasterLoopGranularity.MONTH, true); + } + } + notifyLoopablesOfLoopChange(MasterLoopGranularity.YEAR, true); + } + } + } + + /** + * Called directly after threadIterationGo. Subclasses typically implement a simple sleep + * operation here. + * @throws InterruptedException This is typically thrown when a sleep() call is interrupted. + **/ + protected void threadIterationWait() throws InterruptedException { + sleep(5 * 1000); + } + + /** + * Registers the given loopable object to be executed during the specified conditions. + * + * @param loopable The target loopable to subscribe. + * @param process The process to subscribe it for. + * @param loopGranularity The granularity level to execute it at. + * @param priority The priority to execute it at relative to other loopable objects at the + * same granularity. + **/ + public void subscribe(MasterLoopable loopable, EmissionProcess process, + MasterLoopGranularity loopGranularity, int priority) { + if(loopable == null) { + return; + } + String loopableType = loopable.getClass().getName(); + if(process == null) { + Logger.log(LogMessageCategory.DEBUG,loopableType + " tried to subscribe to a null process"); + return; + } + Logger.log(LogMessageCategory.DEBUG,loopableType + " subscribed to " + process.processName + " at " + loopGranularity.toString() + "/" + priority); + InterconnectionTracker.recordSubscription(loopable,process,loopGranularity,priority); + MasterLoopableSubscription newSubscription = new MasterLoopableSubscription(); + newSubscription.loopable = loopable; + newSubscription.granularity = loopGranularity; + newSubscription.priority = priority; + + synchronized (subscriptions) { + TreeSet processSubscriptions; + if(subscriptions.containsKey(process)) { + processSubscriptions = subscriptions.get(process); + } else { + processSubscriptions = new TreeSet(); + subscriptions.put(process, processSubscriptions); + } + processSubscriptions.add(newSubscription); + } + } + + /** + * Unsigns up the specified loopable from all loop notifications. "loopable" may be + * subscribed for multiple notifications. + * + * @param loopable The loopable to unsubscribe from loop notifications. + **/ + public void completelyUnSubscribe(MasterLoopable loopable) { + synchronized (subscriptions) { + Iterator subscriptionSetIter = subscriptions.keySet().iterator(); + + while (subscriptionSetIter.hasNext()) { + TreeSet processSubscriptions = + (TreeSet) subscriptions.get(subscriptionSetIter.next()); + Iterator subscriptionIter = processSubscriptions.iterator(); + + while (subscriptionIter.hasNext()) { + MasterLoopableSubscription iterSubscription = + (MasterLoopableSubscription)subscriptionIter.next(); + if (iterSubscription.loopable == loopable) { + subscriptionIter.remove(); + } + } + + if (processSubscriptions.size() < 1) { + subscriptionSetIter.remove(); + } + } + } + } + + /** + * Record a non-calculator context that will be creating bundles. + * @param c the context which must include an associated MasterLoopable object + **/ + public synchronized void contextIsMakingBundles(MasterLoopContext c) { + if(c != null && c.loopable != null) { + contextsWaitingForBundles.add(c); + } + } + + /** + * Notification handler called after storing the payload of a non-calculator bundle. + * contextsWaitingForBundles is scanned, counts decremented, and when needed the + * assoicated loopable is set as complete. + * @param context context recovered from the bundle's manifest + **/ + public synchronized void nonCalculatorBundleReceived(MasterLoopContext context) { + // Find a matching context within contextsWaitingForBundles + boolean found = false; + for(Iterator i=contextsWaitingForBundles.iterator();i.hasNext();) { + MasterLoopContext c = i.next(); + if(c.doesMatch(context)) { + found = true; + synchronized(c) { + c.bundleCount--; + } + } + } + if(found) { + checkContextsWaitingForBundles(); + } + } + + /** + * Scan contextsWaitingForBundles, marking loopables as complete for any completed contexts. + **/ + public synchronized void checkContextsWaitingForBundles() { + LinkedList ready = null; + for(Iterator i=contextsWaitingForBundles.iterator();i.hasNext();) { + MasterLoopContext c = i.next(); + synchronized(c) { + if(!c.isCreatingBundles && c.bundleCount <= 0) { + if(ready == null) { + ready = new LinkedList(); + } + ready.add(c); + } + } + } + if(ready != null) { + for(Iterator i=ready.iterator();i.hasNext();) { + MasterLoopContext c = i.next(); + contextsWaitingForBundles.remove(c); + try { + loopableProcessingComplete(c.loopable); + } catch(InterruptedException e) { + return; + } + } + } + } + + /** + * Gets the next MasterLoopable that is ready for looping. This will wait until a loopable is + * available or the thread is interrupted. + * + * @throws InterruptedException if thread is interrupted while waiting + * @return The MasterLoopable object that is ready for processing. + **/ + public synchronized MasterLoopable getNextLoopableForProcessing() throws InterruptedException { + while(readyToExecute.size() < 1) { + wait(); + } + + MasterLoopable loopable = (MasterLoopable)readyToExecute.removeFirst(); + //System.out.println("*** STARTING " + loopable.getClass().getName()); + return loopable; + } + + /** + * Signals that the given loopable object has completed processing. + * + * @param loopable The MasterLoopable object that has completed processing. + **/ + public synchronized void loopableProcessingComplete(MasterLoopable loopable) + throws InterruptedException { + //System.out.println("*** COMPLETED " + loopable.getClass().getName()); + numLoopableCompletionsToWaitFor--; + notifyAll(); + } + + /** + * Queues the given loopable for processing. + * + * @param loopable The loopable to queue. + **/ + public synchronized void queueLoopableForProcessing(Integer priority, MasterLoopable loopable) { + if(isSignaledToExit()) { + return; + } + boolean shouldQueue = true; + if(loopable instanceof MasterLoopContext.IContextFilter) { + if(!((MasterLoopContext.IContextFilter)loopable).doesProcessContext(context)) { + shouldQueue = false; + } + } + if(shouldQueue) { + if(isInBundleCountingMode) { + if(!context.isCleanUp && loopable instanceof EmissionCalculator) { + bundleCount++; + } + } else { + readyToExecute.add(loopable); + numLoopableCompletionsToWaitFor++; + + notifyAll(); + } + } + } + + /** + * Waits until all the loopable objects that have been queued for processing have been + * processed. + * @throws InterruptedException Thrown if this thread is interrupted while waiting. + **/ + public synchronized void waitUntilLoopablesAreProcessed() throws InterruptedException { + if(!isInBundleCountingMode) { + while (numLoopableCompletionsToWaitFor > 0) { + wait(); + } + } + } + + /** + * Determines if notifyLoopablesOfLoopChange would actually notify anything. + * Depends upon the current EmissionProcess. + * @param loopChangeGranularity The granularity that the loop would changed at. + * @return true if there any subscribers at the level of granularity specified. + **/ + private boolean hasLoopables(MasterLoopGranularity loopChangeGranularity) + throws InterruptedException { + synchronized (subscriptions) { + context.setGranularity(loopChangeGranularity); + if(!subscriptions.containsKey(context.iterProcess)) { + return false; + } + TreeSet processSubscriptions = + subscriptions.get(context.iterProcess); + Iterator subscriptionIter = processSubscriptions.iterator(); + MasterLoopableSubscription iterSubscription = null; + // Skip past subscriptions that are set at too coarse a level. + while (subscriptionIter.hasNext()) { + iterSubscription = (MasterLoopableSubscription)subscriptionIter.next(); + if (iterSubscription.granularity.compareTo(loopChangeGranularity) >= 0) { + break; + } + } + if((iterSubscription != null) && + (iterSubscription.granularity == MasterLoopGranularity.MATCH_FINEST)) { + // Loopable's set to execute at MATCH_FINEST should only execute when other + // loopable objects have executed before them. + iterSubscription = null; + } + // Iterate over all subscriptions at the target granularity. + if(iterSubscription != null) { + if(iterSubscription.granularity.compareTo(loopChangeGranularity) == 0) { + return true; + } + } + } + return false; + } + + /** + * Checks the subscriptions for an EmissionProcess to ensure at least one of the + * objects is derived from EmissionCalculator. If not, there is no reason to do the + * generation for the EmissionProcess. This is useful in preventing incomplete calculation + * pipelines from performing work. It is primarily a safeguard, but can be exploited by + * calculators that realize they should combine several processes but only sign up for one + * (such as how Well-To-Pump requires Running, Start, and Extended Idle numbers). + * @param emissionProcess an EmissionProcess object to be checked + * @return true if at least one of the subscribers to an EmissionProcess is + * derived from EmissionCalculator + **/ + private boolean hasCalculators(EmissionProcess emissionProcess) { + synchronized (subscriptions) { + if(!subscriptions.containsKey(emissionProcess)) { + return false; + } + TreeSet processSubscriptions = + subscriptions.get(emissionProcess); + Iterator subscriptionIter = processSubscriptions.iterator(); + MasterLoopableSubscription iterSubscription = null; + + // Skip past subscriptions that are set at too coarse a level. + while (subscriptionIter.hasNext()) { + iterSubscription = (MasterLoopableSubscription)subscriptionIter.next(); + if(iterSubscription.loopable instanceof EmissionCalculator) { + return true; + } + } + } + + return false; + } + + /** + * Notifies all loopables of new loop state which is specified in context. + * Does not return until all affected loopables have completed. + * @param loopChangeGranularity The granularity that the loop has changed at. + * @param isCleanUp when true, each MasterLoopable's cleanDataLoop method should be called + * instead of the executeLoop method. Used to set context.isCleanUp. + * @throws InterruptedException Thrown if this thread is interrupted while waiting. + **/ + private void notifyLoopablesOfLoopChange(MasterLoopGranularity loopChangeGranularity, + boolean isCleanUp) throws InterruptedException { + synchronized (subscriptions) { + context.isCleanUp = isCleanUp; + context.setGranularity(loopChangeGranularity); + if(!subscriptions.containsKey(context.iterProcess)) { + return; + } + + TreeSet processSubscriptions = + subscriptions.get(context.iterProcess); + + Iterator subscriptionIter = processSubscriptions.iterator(); + MasterLoopableSubscription iterSubscription = null; + + // Skip past subscriptions that are set at too coarse a level. + while (subscriptionIter.hasNext()) { + iterSubscription = (MasterLoopableSubscription)subscriptionIter.next(); + if (iterSubscription.granularity.compareTo(loopChangeGranularity) >= 0) { + break; + } + } + + if((iterSubscription != null) && + (iterSubscription.granularity == MasterLoopGranularity.MATCH_FINEST)) { + // Loopable's set to execute at MATCH_FINEST should only execute when other + // loopable objects have executed before them. + iterSubscription = null; + } + + // Iterate over all subscriptions at the target granularity, stopping to + // wait for completion of high priority groups before proceeding. + // Note that the objects here are already sorted due to their inclusion in + // a TreeSet and due to MasterLoopableSubscription's compareTo method. + int previousPriorityGroup = -1; + while (iterSubscription != null) { + // If the current object's granularity does not match the desired granularity, + // then we've gone too far in the sorted list of subscriptions and can stop. + if (iterSubscription.granularity.compareTo(loopChangeGranularity) != 0) { + break; + } + + // If the priority of the last object queued is different than the current + // object's priority, then wait for the previously queued objects to complete. + if (previousPriorityGroup != -1 && + previousPriorityGroup != iterSubscription.priority) { + waitUntilLoopablesAreProcessed(); + } + + // Remember the priority of the current object about to be queued + previousPriorityGroup = iterSubscription.priority; + context.setExecutionPriority(previousPriorityGroup); + queueLoopableForProcessing(new Integer(iterSubscription.priority), + iterSubscription.loopable); + + // If there are more subscriptions in the list, then move on otherwise stop + // and wait for anything already queued to complete. + if (subscriptionIter.hasNext()) { + iterSubscription = (MasterLoopableSubscription)subscriptionIter.next(); + } else { + break; + } + } + waitUntilLoopablesAreProcessed(); + } + } + + /** This performs one-time shutdown activities after threaded operation. **/ + protected void shutdownInThread() { + // Ignore InterruptedExceptions. Continue until they've all quit. + while (true) { + try { + for (Iterator i = loopableThreads.iterator(); i.hasNext();) { + MasterLoopableThread iterThread = (MasterLoopableThread) i.next(); + iterThread.signalToTerminateAndWait(); + i.remove(); + } + return; + } catch (InterruptedException exception) { + // Nothing to do here + } + } + } + + /** + * Examine the subscriptions, granularities, and the ExecutionRunSpec to determine + * how many outbound bundles will be created. This can be used to determine the + * fraction of completed work. + * @return the number of outbound bundles that will be created + **/ + private int calcHowManyOutboundBundlesWillBeCreated() { + // Turn on the special flag that ensures our normal loop (in threadIterationGo) will just + // count the number of calls that would get made to executeLoop within EmissionCalculator + // objects. + isInBundleCountingMode = true; + // Reset the count (incremented by queueLoopableForProcessing when it queues an + // EmissionCalculator) + bundleCount = 0; + try { + // Do the normal looping over all subscriptions. Remember that the bundle counting + // mode is engaged, so this won't actually cause any calls to MasterLoopable objects + // to be made. + threadIterationGo(); + } catch(InterruptedException e) { + // Nothing to do here + } + // Turn off the bundle counting mode so that the normal looping with actually make + // calls to MasterLoopable objects when used next. + isInBundleCountingMode = false; + Logger.log(LogMessageCategory.INFO,bundleCount + " bundles will be used."); + return bundleCount; + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopContext.java b/gov/epa/otaq/moves/master/framework/MasterLoopContext.java new file mode 100644 index 0000000..3af6fa6 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopContext.java @@ -0,0 +1,431 @@ +/************************************************************************************************** + * @(#)MasterLoopContext.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; +import gov.epa.otaq.moves.common.StringUtilities; + +/** + * The current execution context for the MasterLoop. An object of this class keeps track of the + * current process, location, and calendar context of the MasterLoop. It also keeps track of the + * granularity and execution priority at which the loop is executing. The MasterLoopContext is + * passed to the MasterLoopables so that they can determine what context they are performing + * their calculations for. + * + * @author Wesley Faler + * @version 2013-04-29 +**/ +public class MasterLoopContext { + public static interface IContextFilter { + /** + * Examine a context for suitability. Used to override the natural execution hierarchy. + * @param context Context to be examined + * @return true if the context should be used by a MasterLoopable. + **/ + public boolean doesProcessContext(MasterLoopContext context); + } + + /** The ID of the current simulation run **/ + public int movesRunID; + + /** The pseudo-random uncertainty modeling iteration that the loop is iterating on. **/ + public int iterationID; + + /** The EmissionProcess that the loop is iterating on. **/ + public EmissionProcess iterProcess; + public ArrayList chainedProcesses = null; + + /** The location that the loop is iterating on. **/ + public ExecutionLocation iterLocation; + + /** The current year (4 digits) **/ + public int year; + + /** + * The database ID of the current month, NOT necessarily related to the traditional + * 1 through 12 numbering for months. + **/ + public int monthID; + + /** + * The database ID of the current day, NOT necessarily related to the traditional + * 1 through 31 (or 1 through 7) numbering for days (or days of the week). + **/ + public int dayID; + + /** + * The database ID of the current hour, NOT necessarily related to the traditional + * 0 through 23 numbering for hours of the day. + **/ + public int hourID; + + /** The granularity that the loop is iterating at. **/ + public MasterLoopGranularity executionGranularity; + + /** The loop execution priority that the loop is iterating at. **/ + public int executionPriority; + + /** + * Flag indicating whether this context is before data creation and processing (and hence + * should be passed to MasterLoopable.executeLoop) or afterwards (and should be passed to + * MasterLoopable.cleanDataLoop). + **/ + public boolean isCleanUp = false; + + /** The MasterLoop object that owns this context, may be null **/ + public MasterLoop owningLoop = null; + /** Current MasterLoopable object using this context **/ + public MasterLoopable loopable = null; + /** Name of loopable's underlying class. This is used when matching serialized contexts to objects **/ + public String loopableClassName = null; + /** true if the using MasterLoopable object has initiated asynchronous operation by creating bundles **/ + public boolean isDeferred = false; + /** The total number of bundles need to be created **/ + public int totalBundles = 0; + /** The number of bundles remaining to be retrieved **/ + public int bundleCount = 0; + /** true if bundles are still being created **/ + public boolean isCreatingBundles = false; + + /** Standard Constructor **/ + public MasterLoopContext() { + setProcess(null); + } + + /** + * Sets a new run iteration.. + * @param newIterationID The new iteration to use. + **/ + public synchronized void setIteration(int newIterationID) { + iterationID = newIterationID; + setProcess(null); + } + + /** + * Sets a new run id + * @param newRunID The new iteration to use. + **/ + public synchronized void setRunID(int newRunID) { + movesRunID = newRunID; + setProcess(null); + } + + /** + * Sets a new process. Clears all elements down the loop chain. + * @param emissionProcess The new EmissionProcess to use. + **/ + public synchronized void setProcess(EmissionProcess emissionProcess) { + iterProcess = emissionProcess; + setLocation(null); + } + + /** + * Sets a new location. Clears all elements down the loop chain. + * @param location The new location to use. + **/ + public synchronized void setLocation(ExecutionLocation location) { + iterLocation = location; + resetTime(); + } + + /** Clears current year, month, day, and hour settings. **/ + public synchronized void resetTime() { + year = -1; + monthID = -1; + dayID = -1; + hourID = -1; + } + + /** + * Sets a new granularity. Clears all elements down the loop chain. + * @param granularity The new granularity to use. + **/ + public synchronized void setGranularity(MasterLoopGranularity granularity) { + executionGranularity = granularity; + setExecutionPriority(0); + } + + /** + * Sets a new priority level. Clears all elements down the loop chain. + * @param priority The new priority level to use. + **/ + public synchronized void setExecutionPriority(int priority) { + executionPriority = priority; + } + + /** Clear any accumulated chained processes **/ + public synchronized void resetChainedProcesses() { + if(chainedProcesses != null) { + chainedProcesses.clear(); + } + } + + /** + * Accumulate a process other than the current iteration process due to chaining. + * @param p process being added due to a chained calculator, may be null in which + * case it will be ignored + **/ + public synchronized void addChainedProcess(EmissionProcess p) { + if(p == null) { + return; + } + if(chainedProcesses == null) { + chainedProcesses = new ArrayList(); + } + if(!chainedProcesses.contains(p)) { + chainedProcesses.add(p); + } + } + + /** + * Check a process' inclusion directly and via chained contexts + * @param p process to be checked + * @return true if p is directly or indirectly part of the context + **/ + public boolean hasProcess(EmissionProcess p) { + if(p.databaseKey == iterProcess.databaseKey) { + return true; + } + if(chainedProcesses != null) { + for(int i=0;i seen = new TreeSet(); + if(iterProcess != null) { + seen.add(new Integer(iterProcess.databaseKey)); + } + if(chainedProcesses != null) { + for(EmissionProcess p : chainedProcesses) { + seen.add(new Integer(p.databaseKey)); + } + } + if(seen.size() <= 0) { + return "0"; + } else { + String csv = ""; + for(Integer i : seen) { + if(csv.length() > 0) { + csv += ","; + } + csv += i; + } + return csv; + } + } + + /** + * Get a textual representation of the object. + * @return a human readable string for this object + **/ + public String toString() { + String result = "context: "; + result += iterProcess.toString() + "@" + iterLocation.toString(); + return result; + } + + /** Indicate that a generator will be creating bundles **/ + public synchronized void beginCreatingDeferredBundles() { + isCreatingBundles = true; + isDeferred = true; + bundleCount = 0; + if(loopable != null) { + loopableClassName = loopable.getClass().getCanonicalName(); + } + // Notify the MasterLoop + owningLoop.contextIsMakingBundles(this); + } + + /** Record the fact that a bundle was created **/ + public synchronized void addBundle() { + bundleCount++; + } + + /** + * Clone this context so that it can be used with a new MasterLoopable object + * @param a clone of this context + **/ + public MasterLoopContext copyForLoopable() { + MasterLoopContext clone = new MasterLoopContext(); + clone.movesRunID = movesRunID; + clone.iterationID = iterationID; + clone.iterProcess = iterProcess; + clone.iterLocation = iterLocation; + clone.year = year; + clone.monthID = monthID; + clone.dayID = dayID; + clone.hourID = hourID; + clone.executionGranularity = executionGranularity; + clone.executionPriority = executionPriority; + clone.isCleanUp = isCleanUp; + // Other fields intentionally omitted + return clone; + } + + /** + * Compare this object to a deserialized context recovered from a bundle. + * @param other a deserialized context, lacking anything but baseline information + * @param otherLoopableClassName the class name of the loopable assicated with the other context + * @return true if other context and loopable matches this context + **/ + public boolean doesMatch(MasterLoopContext other) { + return movesRunID == other.movesRunID + && iterationID == other.iterationID + && iterProcess.compareTo(other.iterProcess) == 0 + && iterLocation.compareTo(other.iterLocation) == 0 + && year == other.year + && monthID == other.monthID + && dayID == other.dayID + && hourID == other.hourID + && executionGranularity.compareTo(other.executionGranularity) == 0 + && executionPriority == other.executionPriority + && isCleanUp == other.isCleanUp + && loopableClassName.equals(other.loopableClassName); + } + + /** + * Convert this context into a format suitable for the machine-readable portion of a BundleManifest object. + * @return machine-readable context text for a BundleManifest + **/ + public String toBundleManifestContext() { + if(loopable != null) { + loopableClassName = loopable.getClass().getCanonicalName(); + } + String result = ""; + result += "|run:" + movesRunID; + result += "|iter:" + iterationID; + result += "|proc:" + (iterProcess == null? 0 : iterProcess.databaseKey); + result += "|road:" + (iterLocation == null? 0 : iterLocation.roadTypeRecordID); + result += "|link:" + (iterLocation == null? 0 : iterLocation.linkRecordID); + result += "|zone:" + (iterLocation == null? 0 : iterLocation.zoneRecordID); + result += "|cty:" + (iterLocation == null? 0 : iterLocation.countyRecordID); + result += "|st:" + (iterLocation == null? 0 : iterLocation.stateRecordID); + result += "|y:" + year; + result += "|m:" + monthID; + result += "|d:" + dayID; + result += "|h:" + hourID; + result += "|gran:" + executionGranularity.toString(); + result += "|pri:" + executionPriority; + result += "|ph:" + (isCleanUp?"clean":"exec"); + result += "|class:" + loopableClassName; + result += "|"; + return result; + } + + /** + * Convert this context into a format suitable for the human-readable portion of a BundleManifest object. + * @return human-readable context text for a BundleManifest + **/ + public String toBundleManifestContextForHumans() { + if(loopable != null) { + loopableClassName = loopable.getClass().getCanonicalName(); + } + String result = ""; + result += "Process: " + iterProcess.databaseKey + " " + iterProcess.processName; + result += "\nState: " + iterLocation.stateRecordID; + result += "\nCounty: " + iterLocation.countyRecordID; + result += "\nZone: " + iterLocation.zoneRecordID; + result += "\nLink: " + iterLocation.linkRecordID; + result += "\nRoad Type: " + iterLocation.roadTypeRecordID; + result += "\nYear: " + year; + result += "\nMonth: " + monthID; + result += "\nDay: " + dayID; + result += "\nHour: " + hourID; + result += "\nGranularity: " + executionGranularity.toString(); + result += "\nPriority: " + executionPriority; + result += "\nPhase: " + (isCleanUp?"clean":"exec"); + result += "\nModule: " + loopableClassName; + result += "\nIteration: " + iterationID; + result += "\nMovesRunID: " + movesRunID; + return result; + } + + /** + * Fill this context from the machine-readable context within a BundleManifest + * @param context the machine-readable context within a BundleManifest + **/ + public void fromBundleManifestContext(String context) { + if(iterLocation == null) { + iterLocation = new ExecutionLocation(); + } + if(executionGranularity == null) { + executionGranularity = MasterLoopGranularity.HOUR; + } + if(loopableClassName == null) { + loopableClassName = ""; + } + String[] parts = context.split("\\|"); + if(parts == null || parts.length <= 0) { + return; + } + for(int i=0;i coarser granularity. + * Coarse < Fine. By sorting in this order (which is counter to the granularityValue + * assigned to each object), the MasterLoop can sort its MasterLoopSubscriptions + * lowest-to-highest (the Java default in TreeSet objects) with the "lowest" being + * the coarsest, which is what is desired. + * @param object MasterLoopGranularity object to compare against. + * @return A value > 0 if this is of finer granularity than the other object. + * A value < 0 if this is of coarser granularity. Exactly 0 if the two objects + * are the same. + **/ + public int compareTo(Object object) { + MasterLoopGranularity other = (MasterLoopGranularity)object; + return other.granularityValue - granularityValue; + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopGranularityTest.java b/gov/epa/otaq/moves/master/framework/MasterLoopGranularityTest.java new file mode 100644 index 0000000..985ae82 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopGranularityTest.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)MasterLoopGranularityTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +//import gov.epa.otaq.moves.master.implementation.general.FuelGenerator; +import java.io.*; +import junit.framework.*; + +/** + * Test Case for the MasterLoopGranularity class + * + * @author Cimulus + * @version 2006-01-16 +**/ +public class MasterLoopGranularityTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MasterLoopGranularityTest(String name) { + super(name); + } + + /** + * Tests MasterLoopGranularity.compareTo + **/ + public void testCompareTo() { + assertEquals("HOUR > DAY", + getUnitInt(MasterLoopGranularity.HOUR.compareTo(MasterLoopGranularity.DAY)), 1); + assertEquals("DAY < HOUR", + getUnitInt(MasterLoopGranularity.DAY.compareTo(MasterLoopGranularity.HOUR)), -1); + assertEquals("COUNTY < DAY", + getUnitInt(MasterLoopGranularity.COUNTY.compareTo(MasterLoopGranularity.DAY)), -1); + } + + /** + * Extremely simple function that takes a signed int and divides it by the absolute + * value of itself. The result will be -1, 0, or 1. + * @param source The signed integer + * @return The result. Either -1, 0, or 1. + **/ + private int getUnitInt(int source) { + if (source > 0) { + return 1; + } else if (source < 0) { + return -1; + } else { + return 0; + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopPriority.java b/gov/epa/otaq/moves/master/framework/MasterLoopPriority.java new file mode 100644 index 0000000..85d5d20 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopPriority.java @@ -0,0 +1,67 @@ +/************************************************************************************************** + * @(#)MasterLoopPriority.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * The priority levels that a MasterLoopable can subscribe to. The priority level partially + * controls the sequence in which MasterLoopables are executed. Higher priority MasterLoopables are + * completed before lower priority MasterLoopables within the same loop granularity are + * started. The final sequence of execution is dependent on the MasterLoopables loop granularity. + * MasterLoopables that subscribe at higher granularities are executed before MasterLoopables that + * subscribe at lower granularities, regardless of their execution priority. + * + * @author Wesley Faler + * @version 2013-11-29 +**/ +public class MasterLoopPriority { + /** The default execution priority for InternalControlStrategy objects. **/ + public static final int INTERNAL_CONTROL_STRATEGY = 1000; + + /** The default execution priority for Generator objects. **/ + public static final int GENERATOR = 100; + + /** The default execution priority for EmissionCalculator objects. **/ + public static final int EMISSION_CALCULATOR = 10; + + /** + * Convert a priority number into human-readable text. + * @param priority priority number to be decoded. + * @return textual representation of the priority. + **/ + public static String decode(int priority) { + switch(priority) { + case INTERNAL_CONTROL_STRATEGY: + return "INTERNAL_CONTROL_STRATEGY"; + case GENERATOR: + return "GENERATOR"; + case EMISSION_CALCULATOR: + return "EMISSION_CALCULATOR"; + } + if(priority >= INTERNAL_CONTROL_STRATEGY - 500 && priority < INTERNAL_CONTROL_STRATEGY) { + return "INTERNAL_CONTROL_STRATEGY-" + (INTERNAL_CONTROL_STRATEGY-priority); + } + if(priority <= INTERNAL_CONTROL_STRATEGY + 500 && priority > INTERNAL_CONTROL_STRATEGY) { + return "INTERNAL_CONTROL_STRATEGY+" + (priority-INTERNAL_CONTROL_STRATEGY); + } + + if(priority >= GENERATOR - 50 && priority < GENERATOR) { + return "GENERATOR-" + (GENERATOR-priority); + } + if(priority <= GENERATOR + 50 && priority > GENERATOR) { + return "GENERATOR+" + (priority-GENERATOR); + } + + if(priority >= EMISSION_CALCULATOR - 5 && priority < EMISSION_CALCULATOR) { + return "EMISSION_CALCULATOR-" + (EMISSION_CALCULATOR-priority); + } + if(priority <= EMISSION_CALCULATOR + 5 && priority > EMISSION_CALCULATOR) { + return "EMISSION_CALCULATOR+" + (priority-EMISSION_CALCULATOR); + } + + return "" + priority; + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopTest.java b/gov/epa/otaq/moves/master/framework/MasterLoopTest.java new file mode 100644 index 0000000..fbfe303 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopTest.java @@ -0,0 +1,95 @@ +/************************************************************************************************** + * @(#)MasterLoopTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +//import gov.epa.otaq.moves.master.implementation.general.FuelGenerator; +import java.io.*; +import java.sql.SQLException; +import java.util.Iterator; +import junit.framework.*; + +/** + * Test Case for the MasterLoop class + * + * @author Cimulus + * @version 2006-01-16 +**/ +public class MasterLoopTest extends TestCase implements MasterLoopable { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MasterLoopTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + * @throws InterruptedException This is thrown if the thread is interrupted. + * @throws SQLException If a database error occurs. + **/ + public void testLoop() throws InterruptedException, SQLException { + ExecutionRunSpecTest.setupExecutionRunSpec(); + System.out.println("ExecutionRunSpec.theExecutionRunSpec.targetProcesses.size() = " + + ExecutionRunSpec.theExecutionRunSpec.targetProcesses.size()); + + MOVESEngine.theInstance = new MOVESEngine(); + MasterLoop targetLoop = new MasterLoop(); + MOVESEngine.theInstance.loop = targetLoop; + + subscribeToMe(targetLoop); + + // There is substantial overlap between code that would start up the master loop + // and the MOVESAPITest, so we just stop at ensuring subscription services don't + // blowup and leave actual execution to another test. + } + + /** + * Requests that this object subscribe to the given loop at desired looping points. + * Objects can assume that all necessary MasterLoopable objects have been instantiated. + * + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + assertNotNull(targetLoop); + // Subscribe to all active processes. + for (Iterator i = ExecutionRunSpec.theExecutionRunSpec.targetProcesses.iterator(); + i.hasNext();) { + EmissionProcess iterProcess = (EmissionProcess) i.next(); + assertNotNull(iterProcess); + + targetLoop.subscribe(this, iterProcess, + MasterLoopGranularity.DAY, MasterLoopPriority.GENERATOR); + targetLoop.subscribe(this, iterProcess, + MasterLoopGranularity.HOUR, MasterLoopPriority.EMISSION_CALCULATOR); + } + } + + /** + * Called during each relevant iteration of the MasterLoop. + * + * @param context The current context of the loop. + **/ + public void executeLoop(MasterLoopContext context) { + if(context.executionGranularity == MasterLoopGranularity.DAY) { + //numberOfDayExecutions++; + } else if(context.executionGranularity == MasterLoopGranularity.HOUR) { + //numberOfHourExecutions++; + } else { + fail("Invoked at invalid loop granularity."); + } + } + + /** + * This method is to clean up the data generated by the generator. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopable.java b/gov/epa/otaq/moves/master/framework/MasterLoopable.java new file mode 100644 index 0000000..337fd61 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopable.java @@ -0,0 +1,42 @@ +/************************************************************************************************** + * @(#)MasterLoopable.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This interface is implemented by objects that want to be executed during iterations of the + * MasterLoop. This is implemented by generators, emission calculators and internal control + * strategies. + * + * @author Cimulus + * @version 2003-09-05 +**/ +public interface MasterLoopable { + /** + * Requests that this object subscribe to the given loop at desired looping points. + * Objects can assume that all necessary MasterLoopable objects have been instantiated. + * + * @param targetLoop The loop to subscribe to. + **/ + void subscribeToMe(MasterLoop targetLoop); + + /** + * Called during each relevant iteration of the MasterLoop. + * + * @param context The current context of the loop. + * @throws InterruptedException If the active thread is interrupted. + **/ + void executeLoop(MasterLoopContext context) throws InterruptedException; + + /** + * Cleans up all the data created within the executeLoop() method. Typically only + * Generator-derived classes will have any code within this method. + * + * @param context The current context of the loop. + * @throws InterruptedException If the active thread is interrupted. + **/ + void cleanDataLoop(MasterLoopContext context) throws InterruptedException; +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopableSubscription.java b/gov/epa/otaq/moves/master/framework/MasterLoopableSubscription.java new file mode 100644 index 0000000..3de173d --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopableSubscription.java @@ -0,0 +1,56 @@ +/************************************************************************************************** + * @(#)MasterLoopableSubscription.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.lang.Comparable; +import gov.epa.otaq.moves.master.framework.*; + +/** + * A subscription of a MasterLoopable object to a MasterLoop. A given MasterLoopable may be + * subscribed to the same MasterLoop multiple times with different parameters. + * + * @author Cimulus + * @version 2003-02-03 +**/ + +public class MasterLoopableSubscription implements Comparable { + /** + * This compares two MasterLoopableSubscription instances. This will order objects by: + * 1) granularity (coarse to fine) + * 2) priority (high to low) + * 3) loopable (arbitrary consistent ordering) + * + * @param o The other MasterLoopableSubscription object to compare to. + **/ + public int compareTo(Object o) { + MasterLoopableSubscription other = (MasterLoopableSubscription)o; + + if (granularity != other.granularity) { + return granularity.compareTo(other.granularity); + } + + if (priority != other.priority) { + return other.priority - priority; + } + + if (loopable != other.loopable) { + return loopable.hashCode() - other.loopable.hashCode(); + } + + return 0; + } + + /** The granularity that the MasterLoopable should be invoked at **/ + public MasterLoopGranularity granularity; + /** + * The priority that the MasterLoopable should be invoked at relative to other + * MasterLoopable's at the same granularity + **/ + public int priority; + /** The subscribing MasterLoopable. **/ + public MasterLoopable loopable; +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopableSubscriptionTest.java b/gov/epa/otaq/moves/master/framework/MasterLoopableSubscriptionTest.java new file mode 100644 index 0000000..4fad8bc --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopableSubscriptionTest.java @@ -0,0 +1,95 @@ +/************************************************************************************************** + * @(#)MasterLoopableSubscriptionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +//import gov.epa.otaq.moves.master.implementation.general.FuelGenerator; +import java.io.*; +import junit.framework.*; + +/** + * Test Case for the MasterLoopableSubscription class + * + * @author Cimulus + * @version 2006-01-16 +**/ +public class MasterLoopableSubscriptionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MasterLoopableSubscriptionTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + **/ + public void testCompareTo() { + MasterLoopableSubscription subscriptionA = new MasterLoopableSubscription(); + MasterLoopableSubscription subscriptionB = new MasterLoopableSubscription(); +/* + subscriptionA.granularity = MasterLoopGranularity.HOUR; + subscriptionA.priority = 10; + // Arbitrary concrete implementation of MasterLoopable + subscriptionA.loopable = new FuelGenerator(); + subscriptionB.granularity = MasterLoopGranularity.HOUR; + subscriptionB.priority = 10; + subscriptionB.loopable = subscriptionA.loopable; + + assertEquals("The loopable object should equal itself", + subscriptionA.compareTo(subscriptionB), 0); + assertEquals("Symmetry Test Failed", + getUnitInt(subscriptionA.compareTo(subscriptionB)), + -getUnitInt(subscriptionB.compareTo(subscriptionA))); + + // Arbitrary concrete implementation of MasterLoopable + subscriptionB.loopable = new FuelGenerator(); + + assertTrue("Two different loopable objects shouldn't be equal", + subscriptionA.compareTo(subscriptionB) != 0); + assertEquals("Symmetry Test Failed", + getUnitInt(subscriptionA.compareTo(subscriptionB)), + -getUnitInt(subscriptionB.compareTo(subscriptionA))); + + subscriptionB.loopable = subscriptionA.loopable; + subscriptionA.granularity = MasterLoopGranularity.HOUR; + subscriptionB.granularity = MasterLoopGranularity.DAY; // B will be less than A + + assertEquals("DAY > HOUR", getUnitInt(subscriptionA.compareTo(subscriptionB)), +1); + assertEquals("Symmetry Test Failed", + getUnitInt(subscriptionA.compareTo(subscriptionB)), + -getUnitInt(subscriptionB.compareTo(subscriptionA))); + + subscriptionA.granularity = MasterLoopGranularity.HOUR; // A will be less than B + subscriptionA.priority = 100; + subscriptionB.granularity = MasterLoopGranularity.HOUR; + subscriptionB.priority = 10; + + assertEquals("priority 100 should sort before 10", + getUnitInt(subscriptionA.compareTo(subscriptionB)), -1); + assertEquals("Symmetry Test Failed", + getUnitInt(subscriptionA.compareTo(subscriptionB)), + -getUnitInt(subscriptionB.compareTo(subscriptionA))); +*/ + } + + /** + * Extremely simple function that takes a signed int and divides it by the absolute + * value of itself. The result will be -1, 0, or 1. + * @param source The signed integer + * @return The result. Either -1, 0, or 1. + **/ + private int getUnitInt(int source) { + if (source > 0) { + return 1; + } else if (source < 0) { + return -1; + } else { + return 0; + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/MasterLoopableThread.java b/gov/epa/otaq/moves/master/framework/MasterLoopableThread.java new file mode 100644 index 0000000..d02db6f --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MasterLoopableThread.java @@ -0,0 +1,190 @@ +/************************************************************************************************** + * @(#)MasterLoopableThread.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.CompilationFlags; +import gov.epa.otaq.moves.common.MOVESThread; +import gov.epa.otaq.moves.common.BundleManifest; +import gov.epa.otaq.moves.common.MOVESDatabaseType; +import java.sql.*; + +/** + * A worker thread used to execute MasterLoopable objects. The MasterLoop starts a pool of these + * threads to service the queue of MasterLoopables. Each thread pulls a MasterLoopable from the + * queue, calls the MasterLoopable's cleanup or execution methods, and then notifies the Master + * Loop when the method is done. + * + * @author Wesley Faler + * @version 2013-11-29 +**/ +public class MasterLoopableThread extends MOVESThread { + /** The loop object that owns this thread. **/ + public MasterLoop owningLoop; + + /** + * Standard Constructor + * @param owningLoop The loop object that owns this thread. + **/ + public MasterLoopableThread(MasterLoop owningLoop) { + super(owningLoop, "MasterLoopableThread"); + + this.owningLoop = owningLoop; + } + + /** + * Performs main thread functionality. Waits for a MasterLoopable to be returned, calls the + * MasterLoopable's cleanup or execute method, and notifies the MasterLoop when the method + * is done. + * @return Returns true if this thread should continue running; false if this thread + * should exit. + * @throws InterruptedException This is typically thrown when a sleep() or wait() call + * is interrupted. + **/ + protected boolean threadIterationGo() throws InterruptedException { + MasterLoopable loopable = owningLoop.getNextLoopableForProcessing(); + if(loopable == null) { + return true; + } + Connection outputDB = null; + BundleManifest manifest = new BundleManifest(); + manifest.copyFrom(MOVESEngine.theInstance.masterFragment); + try { + if(owningLoop.context.isCleanUp) { + if(!ExecutionRunSpec.shouldSaveData(loopable) || + MOVESInstantiator.isSpecialCaseForCleanup(loopable)) { + int eventRecordID = + MOVESEngine.logEventStart("Clean " + loopable.getClass().getName()); + MasterLoopContext context = owningLoop.context.copyForLoopable(); + context.owningLoop = owningLoop; + context.loopable = loopable; + manifest.context = context.toBundleManifestContext(); + long bundleStartMillis = System.currentTimeMillis(); + + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + bundleStartMillis = System.currentTimeMillis(); + } catch(Exception e) { + manifest = null; + } finally { + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + + if(!CompilationFlags.GENERATE_CALCULATOR_INFO_DOCUMENTATION) { + loopable.cleanDataLoop(context); + } + + MOVESEngine.logEventStop(eventRecordID); + if(manifest != null) { + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + long bundleEndMillis = System.currentTimeMillis(); + manifest.recordEvent(outputDB,true,MOVESEngine.theInstance.getActiveRunID(),(float)((bundleEndMillis-bundleStartMillis)/1000.0),null); + } catch(Exception e) { + manifest = null; + } finally { + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + } + } + } else { + int eventRecordID = + MOVESEngine.logEventStart("Execute " + loopable.getClass().getName()); + MasterLoopContext context = owningLoop.context.copyForLoopable(); + context.owningLoop = owningLoop; + context.loopable = loopable; + + manifest.context = context.toBundleManifestContext(); + long bundleStartMillis = System.currentTimeMillis(); + + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + bundleStartMillis = System.currentTimeMillis(); + } catch(Exception e) { + manifest = null; + } finally { + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + + if(!CompilationFlags.GENERATE_CALCULATOR_INFO_DOCUMENTATION) { + loopable.executeLoop(context); + } + + MOVESEngine.logEventStop(eventRecordID); + if(manifest != null) { + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + long bundleEndMillis = System.currentTimeMillis(); + manifest.recordEvent(outputDB,true,MOVESEngine.theInstance.getActiveRunID(),(float)((bundleEndMillis-bundleStartMillis)/1000.0),null); + } catch(Exception e) { + manifest = null; + } finally { + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + } + + // If the loopable created bundles for asynchronous processing (such as is done + // for some generators, but not with calculators), then clear loopable so it + // doesn't get reported as complete. Another thread instance for check for + // completion. + synchronized(context) { + if(context.isDeferred) { + loopable = null; + context.isCreatingBundles = false; + } + } + if(loopable == null) { + // Check for bundle completion in case all results arrived before we got to here + owningLoop.checkContextsWaitingForBundles(); + } + } + } finally { + if(loopable != null) { + owningLoop.loopableProcessingComplete(loopable); + } + if(outputDB != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT,outputDB); + outputDB = null; + } + } + + return true; + } + + /** + * Called directly after threadIterationGo. Subclasses typically implement a simple sleep + * operation here. + * @throws InterruptedException This is typically thrown when a sleep() call is interrupted. + **/ + protected void threadIterationWait() throws InterruptedException { + // Doesn't need to sleep. go method will wait as long as necessary and detect interrupts. + } + + /** + * This performs one-time startup activities prior to threaded operation. + * @return Should the thread continue to run + **/ + protected boolean startupInThread() { + return true; + } + + /** This performs one-time shutdown activities after threaded operation. **/ + protected void shutdownInThread() { + + } +} diff --git a/gov/epa/otaq/moves/master/framework/MesoscaleLookupPostProcessor.java b/gov/epa/otaq/moves/master/framework/MesoscaleLookupPostProcessor.java new file mode 100644 index 0000000..4e6884c --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/MesoscaleLookupPostProcessor.java @@ -0,0 +1,141 @@ +/************************************************************************************************** + * @(#)MesoscaleLookupPostProcessor.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.io.*; +import java.sql.*; +import java.util.*; + +/** + * Create the Mesoscale lookup output tables. + * + * @author Wes Faler + * @version 2013-10-21 +**/ +public class MesoscaleLookupPostProcessor extends IntegratedPostProcessor { + /** + * Default constructor + **/ + public MesoscaleLookupPostProcessor() { + } + + /** + * Process recently imported records in the database. The specifed database will only have + * newly imported records and won't have records from previous imports which have already + * been moved to the output database. The data is stored in the TemporaryOutputImport table. + * @param database a Connection to a database containing the TemporaryOutputImport table + **/ + public void execute(Connection database) { + // Nothing to do here + } + + /** + * Process the MOVESOutput table in the output database. + * @param outputDatabase a Connection to the current output database + * @param executionDatabase a Connection to the current execution database + * @param isBeforeUnitConversion true if units have not yet been set to the user + * supplied values. false after units have been converted and other aggregations + * performed. + **/ + public void doFinalPostProcessingOnOutputDatabase(Connection outputDatabase, + Connection executionDatabase, boolean isBeforeUnitConversion) { + if(isBeforeUnitConversion) { + return; // nothing to do until units have been converted, then we + // can make the output emission rate tables. + } + ArrayList messages = new ArrayList(); + String mainDatabaseName = SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName; + File scriptFile = new File(CompilationFlags.DO_RATES_FIRST? "database/RatePostProcessorRatesFirst.sql" : "database/RatePostProcessor.sql"); + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + try { + mainDatabaseName = executionDatabase.getCatalog(); + + sql = "create table if not exists rateTempMessages " + + "( message varchar(1000) not null )"; + SQLRunner.executeSQL(outputDatabase,sql); + sql = "truncate table rateTempMessages"; + SQLRunner.executeSQL(outputDatabase,sql); + + Logger.log(LogMessageCategory.INFO,"Analyzing mesoscale output tables"); + sql = "analyze table MOVESOutput"; + SQLRunner.executeSQL(outputDatabase,sql); + sql = "analyze table MOVESActivityOutput"; + SQLRunner.executeSQL(outputDatabase,sql); + + // Convert NULL values in MOVESOutput and MOVESActivityOutput to 0's so they can be joined. + Logger.log(LogMessageCategory.INFO,"Zeroing null values in rate output tables"); + String[] tables = { + "MOVESOutput", "MOVESActivityOutput" + }; + String[] zeroColumns = { + "yearID", "monthID", "dayID", "hourID", "stateID", "countyID", + "zoneID", "sourceTypeID", "regClassID", "fuelTypeID", "modelYearID" + }; + for(int t=0;t 0) { + sql += ", "; + } + sql += zeroColumns[c] + "=ifnull(" + zeroColumns[c] + ",0)"; + } + sql += ", SCC=ifnull(SCC,'')"; + sql += " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase,sql); + } + + // Run the script + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + replacements.put("##mainDatabase##",mainDatabaseName); + replacements.put("##runID##",""+MOVESEngine.theInstance.getActiveRunID()); + replacements.put("##scenarioID##",ExecutionRunSpec.getRunSpec().scenarioID); + replacements.put("##isProjectDomain##", + ExecutionRunSpec.getRunSpec().domain == ModelDomain.PROJECT?"1":"0"); + replacements.put("##isSCC##", + ExecutionRunSpec.theExecutionRunSpec.getOutputEmissionsBreakdownSelection().onRoadSCC?"1":"0"); + + try { + DatabaseUtilities.executeScript(outputDatabase,scriptFile,replacements); + } catch(Exception e) { + messages.add("ERROR: Unable to execute rate script"); + Logger.logError(e,"Unable to execute rate script " + scriptFile.getName()); + } + + if(messages != null) { + // Retrieve the results from rateTempMessages + sql = "select message from rateTempMessages"; + query.open(outputDatabase,sql); + TreeSetIgnoreCase messagesAlreadySeen = new TreeSetIgnoreCase(); + while(query.rs.next()) { + String m = query.rs.getString(1); + if(m != null && m.length() > 0) { + if(!messagesAlreadySeen.contains(m)) { + messagesAlreadySeen.add(m); + messages.add(m); + } + } + } + query.close(); + } + + // Remove any messages from the database. If an error occured and the code never + // gets here, leave the messages in the database for debugging purposes. They + // will be cleared if another rate run is performed. + sql = "drop table if exists rateTempMessages"; + SQLRunner.executeSQL(outputDatabase,sql); + + Logger.log(LogMessageCategory.INFO,"Done building rate output tables"); + } catch(Exception e) { + Logger.logSqlError(e,"Unable to create rate output tables",sql); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/ModelYearMapper.java b/gov/epa/otaq/moves/master/framework/ModelYearMapper.java new file mode 100644 index 0000000..d98dd70 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ModelYearMapper.java @@ -0,0 +1,225 @@ +/************************************************************************************************** + * @(#)ModelYearMapper.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.sql.*; +import java.util.*; + +/** + * Convert user model years into standardized model years. + * + * @author Wesley Faler + * @version 2013-04-08 +**/ +public class ModelYearMapper { + class MappingEntry { + int startUserYear; + int endUserYear; + int startStandardYear; + int endStandardYear; + String expression; + String reverseExpression; + + MappingEntry(int startUserYearToUse, int endUserYearToUse, + int startStandardYearToUse, int endStandardYearToUse, + String expressionToUse, String reverseExpressionToUse) { + startUserYear = startUserYearToUse; + endUserYear = endUserYearToUse; + startStandardYear = startStandardYearToUse; + endStandardYear = endStandardYearToUse; + expression = expressionToUse; + reverseExpression = reverseExpressionToUse; + } + } + + ArrayList mappings = new ArrayList(); + + /** + * Build model year mappings by examining the modelYearMapping table + * in the execution database. + * @param db database to be read. + * @throws SQLException if anything goes wrong. + **/ + public void buildMappings(Connection db) throws SQLException { + mappings.clear(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + // Select mapping entries ordered by startUserYear + sql = "select startUserModelYear, endUserModelYear, startStandardModelYear, endStandardModelYear" + + " from modelYearMapping" + + " order by startUserModelYear"; + // Populate mappings via addToMappings + query.open(db,sql); + while(query.rs.next()) { + int startUserModelYear = query.rs.getInt(1); + int endUserModelYear = query.rs.getInt(2); + int startStandardModelYear = query.rs.getInt(3); + int endStandardModelYear = query.rs.getInt(4); + addToMappings(startUserModelYear,endUserModelYear,startStandardModelYear,endStandardModelYear); + } + } catch(Exception e) { + Logger.logError(e,"Unable to map model years using: " + sql); + throw e; + } finally { + query.onFinally(); + } + } + + /** + * Add data to the set of mappings. Mappings should be added in order + * by user year. + * @param startUserYear first user-space model year affected. + * @param endUserYear last user-space model year affected. + * @param startStandardYear standard model year corresponding to startUserYear. + * @param endStandardYear standard model year corresponding to endUserYear. + **/ + void addToMappings(int startUserYear, int endUserYear, + int startStandardYear, int endStandardYear) { + String expression = ""; + String reverseExpression = ""; + // Use simple subtraction if the sizes match. + if((endUserYear - startUserYear) == (endStandardYear - startStandardYear)) { + // Example: UserYear 1990 is standard year 1980 has a difference of -10 + int difference = startStandardYear - startUserYear; + if(difference == 0) { + expression = "(##USERYEAR##)"; + reverseExpression = expression; + } else if(difference > 0) { + expression = "((##USERYEAR##)+" + difference + ")"; + reverseExpression = "((##USERYEAR##)-" + difference + ")"; + } else { + expression = "((##USERYEAR##)-" + (-difference) + ")"; + reverseExpression = "((##USERYEAR##)+" + (-difference) + ")"; + } + } else if(endStandardYear == startStandardYear) { + // When being mapped to a single year, just use that year in the expression. + expression = "" + startStandardYear; + reverseExpression = expression; + } else { + // Create a linear interpolation if the sizes don't match. + // output = (uy - startUY)(endSY-startSY)/(endUY-startUY) + startSY + expression = "floor(0.5+(((##USERYEAR##)-" + startUserYear + ")*" + + "(" + endStandardYear + "-" + startStandardYear + ")/" + + "(" + endUserYear + "-" + startUserYear + ")+" + startStandardYear + "))"; + + // reverse output = (sy - startSY)(endUY-startUY)/(endSY-startSY) + startUY + reverseExpression = "floor(0.5+(((##USERYEAR##)-" + startStandardYear + ")*" + + "(" + endUserYear + "-" + startUserYear + ")/" + + "(" + endStandardYear + "-" + startStandardYear + ")+" + startUserYear + "))"; + } + // If the expression is the same as other mappings and the user year is contiguous, + // expand those mappings. + // Otherwise, add a new mapping. + boolean found = false; + for(MappingEntry m : mappings) { + if(m.endUserYear + 1 == startUserYear + && expression.equals(m.expression) && reverseExpression.equals(m.reverseExpression)) { + m.endUserYear = endUserYear; + m.endStandardYear = endStandardYear; + found = true; + break; + } + } + if(!found) { + mappings.add(new MappingEntry(startUserYear,endUserYear, + startStandardYear,endStandardYear,expression,reverseExpression)); + } + } + + /** + * Convert an expression that references user-space model years into + * standardized model years suitable for joining to effects tables. + * @param expression column or SQL expression that yields a user-space + * model year. + * @return an expression that yields a standardized model year. + **/ + public String convertToStandard(String expression) { + if(mappings.size() <= 0) { + return expression; + } + if(mappings.size() == 1) { + return StringUtilities.replace(mappings.get(0).expression,"##USERYEAR##",expression); + } else { + String sql = "(case"; + for(MappingEntry m : mappings) { + sql += " when (" + expression + ") between " + m.startUserYear + " and " + m.endUserYear + + " then " + StringUtilities.replace(m.expression,"##USERYEAR##",expression); + } + sql += " end)"; + return sql; + } + } + + /** + * Convert an expression that references standard-space model years into + * user-space model years. + * @param expression column or SQL expression that yields a standard + * model year. + * @return an expression that yields a user-space model year. + **/ + public String convertToUser(String expression) { + if(mappings.size() <= 0) { + return expression; + } + if(mappings.size() == 1) { + return StringUtilities.replace(mappings.get(0).reverseExpression,"##USERYEAR##",expression); + } else { + String sql = "(case"; + for(MappingEntry m : mappings) { + sql += " when (" + expression + ") between " + m.startStandardYear + " and " + m.endStandardYear + + " then " + StringUtilities.replace(m.reverseExpression,"##USERYEAR##",expression); + } + sql += " else 0 end)"; + return sql; + } + } + + /** + * Convert a SQL fragment that may or may not contain one or + * more references to the MYMAP pseudo function. Statements of + * the form MYMAP(expression) are converted to an expression + * that references stanardized model years. + * Statements of the form MYRMAP(expression) are converted to an + * expression that references user-model years. + * @param sqlLine SQL fragment that contains zero or more occurences + * of the MYMAP(expression) or MYRMAP(expression) statements. + * @return SQL + **/ + public String findAndConvert(String sqlLine) { + if(sqlLine == null || sqlLine.length() <= 0) { + return sqlLine; + } + String lowerCaseLine = sqlLine.toLowerCase(); + int startIndex = lowerCaseLine.indexOf("mymap("); + while(startIndex >= 0) { + int endIndex = lowerCaseLine.indexOf(")",startIndex+1); + String expression = sqlLine.substring(startIndex+6,endIndex); + String inputToFind = sqlLine.substring(startIndex,endIndex+1); + String replacement = convertToStandard(expression); + sqlLine = StringUtilities.replace(sqlLine,inputToFind,replacement); + + lowerCaseLine = sqlLine.toLowerCase(); + startIndex = lowerCaseLine.indexOf("mymap("); + } + + startIndex = lowerCaseLine.indexOf("myrmap("); + while(startIndex >= 0) { + int endIndex = lowerCaseLine.indexOf(")",startIndex+1); + String expression = sqlLine.substring(startIndex+7,endIndex); + String inputToFind = sqlLine.substring(startIndex,endIndex+1); + String replacement = convertToUser(expression); + sqlLine = StringUtilities.replace(sqlLine,inputToFind,replacement); + + lowerCaseLine = sqlLine.toLowerCase(); + startIndex = lowerCaseLine.indexOf("myrmap("); + } + + return sqlLine; + } +} diff --git a/gov/epa/otaq/moves/master/framework/ModelYearMapperTest.java b/gov/epa/otaq/moves/master/framework/ModelYearMapperTest.java new file mode 100644 index 0000000..b1abf5b --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/ModelYearMapperTest.java @@ -0,0 +1,66 @@ +/************************************************************************************************** + * @(#)ModelYearMapperTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.sql.SQLException; +import junit.framework.*; + +/** + * Test Case for the ModelYearMapper class + * + * @author Wesley Faler + * @version 2012-04-08 +**/ +public class ModelYearMapperTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public ModelYearMapperTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + **/ + public void testFindAndConvert() { + ModelYearMapper mapper = new ModelYearMapper(); + mapper.addToMappings(1960,1989,1956,1985); + mapper.addToMappings(1990,1999,1986,1995); + + //mapper.addToMappings(1960,1999,1956,1995); + + mapper.addToMappings(2000,2005,1997,2002); + mapper.addToMappings(2006,2008,2005,2007); + mapper.addToMappings(2009,2050,2009,2050); + + String input = "testing"; + String output = mapper.findAndConvert(input); + assertEquals("Failed non-match test",input,output); + + input = "where mymap(mwo.modelYearID) >= startModelYearID and mymap(mwo.modelYearID) <= endModelYearID"; + output = mapper.findAndConvert(input); + System.out.println(output); + assertFalse("Failed match test",input.equals(output)); + + input = "where mwo.modelYearID >= myrmap(startModelYearID) and mwo.modelYearID <= myrmap(endModelYearID)"; + output = mapper.findAndConvert(input); + System.out.println(output); + assertFalse("Failed reverse match test",input.equals(output)); + + input = "insert ignore into PollutantProcessMappedModelYear (polProcessID,modelYearID,modelYearGroupID,fuelMYGroupID,IMModelYearGroupID)\n" + + " select\n" + + " polProcessID,\n" + + " MYRMAP(modelYearID) as modelYearID,\n" + + " modelYearGroupID,\n" + + " fuelMYGroupID,\n" + + " IMModelYearGroupID\n" + + " from pollutantProcessModelYear"; + output = mapper.findAndConvert(input); + System.out.println(output); + } +} diff --git a/gov/epa/otaq/moves/master/framework/OutputProcessor.java b/gov/epa/otaq/moves/master/framework/OutputProcessor.java new file mode 100644 index 0000000..13c4a13 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/OutputProcessor.java @@ -0,0 +1,1520 @@ +/************************************************************************************************** + * @(#)OutputProcessor.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.RunSpec; +import java.io.File; +import java.sql.Connection; +import java.util.*; +import java.sql.*; +import java.io.*; + +/** + * This Singleton updates and appends output database with results from the distributed + * workers. Called by the unbundler. + * + * @author Wesley Faler + * @version 2015-05-21 +**/ +public class OutputProcessor { + // true to retain bundles from workers + static final boolean keepDebugData = false; + + /** File containing the table data that was output by a worker **/ + static final String OUTPUT_TABLE_FILE_NAME = "Output.tbl"; + + /** File containing the activity table data that was output by a worker **/ + static final String ACTIVITY_TABLE_FILE_NAME = "Activity.tbl"; + + /** File containing text error message reported by a worker **/ + static final String ERROR_FILE_NAME = "Errors.txt"; + + /** File containing worker version information **/ + public static final String VERSION_FILE_NAME = "WorkerVersion.txt"; + + /** Flag indicating if uncertainty is being estimated. **/ + boolean estimateUncertainty = false; + + /** The singleton instance **/ + private static OutputProcessor theOutputProcessor = new OutputProcessor(); + + /** List of IntegratedPostProcessor objects that modify data added to the Output database. **/ + public LinkedList integratedPostProcessors = + new LinkedList(); + + /** + * Access method to the singleton instance. + * @return The singleton OutputProcessor object. + **/ + public static OutputProcessor getTheOutputProcessor() { + return theOutputProcessor; + } + + /** Default constructor **/ + public OutputProcessor() { + } + + /** Clear the list of post processors in preparation for a new simulation run **/ + public void resetPostProcessors() { + integratedPostProcessors = new LinkedList(); + } + + /** + * Process a completed work bundle received from a distributed worker. This + * is called by the unbundler. + * @param folder The folder that the completed work bundle was unpacked to. + * @param filePaths A list of File objects referencing the contents of a completed work + * bundle from the distributed processing system. + **/ + public void processWorkerFiles(File folder, LinkedList filePaths) { + Logger.log(LogMessageCategory.INFO, "Received bundle from worker"); + + Connection executionDatabase = null; + Connection outputDatabase = null; + BundleManifest manifest = new BundleManifest(); + try { + if(!manifest.containsManifest(folder) || !manifest.readFromFolder(folder)) { + manifest.tablesToRetrieve.add("MOVESWorkerOutput"); + manifest.tablesToRetrieve.add("MOVESWorkerActivityOutput"); + if(CompilationFlags.DO_RATES_FIRST) { + manifest.tablesToRetrieve.add("BaseRateOutput"); + } + } + executionDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + outputDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.OUTPUT); + + String workerVersion = ""; + String workerComputerID = ""; + String workerID = ""; + + File versionFile = new File(folder, VERSION_FILE_NAME); + if(versionFile.isFile()) { + ArrayList lines = null; + try { + lines = FileUtilities.readLines(versionFile); + } catch (Exception exception) { + /** + * @explain A bundle of completed data from a worker did not include + * the required internal file giving the worker's version information. + * The worker is likely out of date and should be upgraded. + **/ + Logger.log(LogMessageCategory.ERROR, "Failed to read worker version file."); + } + if(lines != null) { + for(Iterator i=lines.iterator();i.hasNext();) { + String line = (String)i.next(); + line = line.trim(); + int index = line.indexOf('='); + if(index <= 0) { + continue; + } + String name = line.substring(0,index).trim(); + String value = line.substring(index+1).trim(); + if(name.equalsIgnoreCase("WorkerVersion")) { + if(value.length() > 100) { + value = value.substring(0,100).trim(); + } + workerVersion = DatabaseUtilities.escapeSQL(value,true); + } else if(name.equalsIgnoreCase("WorkerComputerID")) { + if(value.length() > 255) { + value = value.substring(0,255).trim(); + } + workerComputerID = DatabaseUtilities.escapeSQL(value,true); + } else if(name.equalsIgnoreCase("WorkerID")) { + if(value.length() > 255) { + value = value.substring(0,255).trim(); + } + workerID = DatabaseUtilities.escapeSQL(value,true); + } + } + Logger.log(LogMessageCategory.INFO, "Bundle " + manifest.bundleNumber + " is from worker: " + + workerComputerID + "/" + workerVersion + "/" + workerID); + if(workerVersion.length() > 0 && workerComputerID.length() > 0 + && workerID.length() > 0) { + String sql = ""; + try { + // INSERT IGNORE into MOVESWorkersUsed to establish the record + sql = "insert ignore into MOVESWorkersUsed (MOVESRunID," + + " workerVersion, workerComputerID, workerID," + + " bundleCount, failedBundleCount)" + + " values (" + MOVESEngine.theInstance.getActiveRunID() + + "," + workerVersion + "," + workerComputerID + + "," + workerID + ",0,0)"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Update MOVESWorkersUsed.bundleCount + sql = "update MOVESWorkersUsed set bundleCount=bundleCount+1" + + " where MOVESRunID=" + + MOVESEngine.theInstance.getActiveRunID() + + " and workerVersion=" + workerVersion + + " and workerComputerID=" + workerComputerID + + " and workerID=" + workerID; + SQLRunner.executeSQL(outputDatabase, sql); + } catch(Exception e) { + Logger.logSqlError(e,"Unable to update MOVESWorkersUsed",sql); + } + manifest.recordEvent(outputDatabase,false,MOVESEngine.theInstance.getActiveRunID()); + } + } + } + + if(workerVersion == null || workerVersion.length() <= 0) { + workerVersion = StringUtilities.safeGetString(manifest.workerVersion).trim(); + if(workerVersion.length() > 100) { + workerVersion = workerVersion.substring(0,100).trim(); + } + } + if(workerComputerID == null || workerComputerID.length() <= 0) { + workerComputerID = StringUtilities.safeGetString(manifest.workerComputerID).trim(); + if(workerComputerID.length() > 255) { + workerComputerID = workerComputerID.substring(0,255).trim(); + } + } + if(workerID == null || workerID.length() <= 0) { + workerID = StringUtilities.safeGetString(manifest.workerID).trim(); + if(workerID.length() > 255) { + workerID = workerID.substring(0,255).trim(); + } + } + + File errorFile = new File(folder, ERROR_FILE_NAME); + if(errorFile.isFile()) { + String errorMessage; + try { + errorMessage = "Bundle " + manifest.bundleNumber + + " from worker " + workerComputerID + "/" + workerVersion + "/" + workerID + " has errors: " + + FileUtilities.readEntireFile(errorFile); + } catch (Exception exception) { + errorMessage = "Worker reported errors. Failed to read file."; + } + /** @nonissue **/ + Logger.log(LogMessageCategory.ERROR, errorMessage); + + // Update MOVESWorkersUsed.failedBundleCount + if(workerVersion.length() > 0 && workerComputerID.length() > 0 + && workerID.length() > 0) { + String sql = ""; + try { + sql = "update MOVESWorkersUsed set failedBundleCount=failedBundleCount+1" + + " where MOVESRunID=" + + MOVESEngine.theInstance.getActiveRunID() + + " and workerVersion=" + workerVersion + + " and workerComputerID=" + workerComputerID + + " and workerID=" + workerID; + SQLRunner.executeSQL(outputDatabase, sql); + } catch(Exception e) { + Logger.logSqlError(e,"Unable to update MOVESWorkersUsed",sql); + } + } + + return; + } + + String sql; + boolean hasCalculatorOutputTables = false; + + sql = "update MOVESRun set retrievedDONEFiles=retrievedDONEFiles+1 where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + + // SELECT * can't be used since it would export MOVESOutputRowID. This + // AUTO_INCREMENT field can't be exported across databases. + String outputTableFields = "MOVESRunID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"pollutantID," + +"processID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"fuelSubTypeID," + +"modelYearID," + +"roadTypeID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"emissionQuant"; + + String outputTableFieldsWithFuelSubType = "MOVESRunID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"pollutantID," + +"processID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"fuelSubTypeID," + +"modelYearID," + +"roadTypeID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"emissionQuant"; + + String outputTableFieldsNoFuelSubType = "MOVESRunID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"pollutantID," + +"processID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"modelYearID," + +"roadTypeID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"emissionQuant"; + + // SELECT * can't be used since it would export MOVESActivityOutputRowID. This + // AUTO_INCREMENT field can't be exported across databases. + String outputActivityTableFields = "MOVESRunID," + +"yearID," + +"monthID," + +"dayID," + +"hourID," + +"stateID," + +"countyID," + +"zoneID," + +"linkID," + +"sourceTypeID," + +"regClassID," + +"fuelTypeID," + +"modelYearID," + +"roadTypeID," + +"SCC," + +"engTechID," + +"sectorID," + +"hpID," + +"activityTypeID," + +"activity"; + + for(Iterator ti=manifest.tablesToRetrieve.iterator();ti.hasNext();) { + String tableName = (String)ti.next(); + + if(tableName.equalsIgnoreCase("MOVESWorkerOutput")) { + hasCalculatorOutputTables = true; + File outputTableFile = new File(folder, OUTPUT_TABLE_FILE_NAME); + if(!outputTableFile.isFile()) { + /** + * @explain A bundle of completed data from a worker did not include + * a required data file. The simulation results should be discarded. + **/ + Logger.log(LogMessageCategory.ERROR, + "Didn't get output data from distributed bundle"); + return; + } + + // Create a temporary table to hold the worker's results + // (only if the table doesn't already exist) + sql = "CREATE TABLE IF NOT EXISTS TemporaryOutputImport " + + "SELECT * FROM " + ExecutionRunSpec.getEmissionOutputTable() + " LIMIT 0"; + SQLRunner.executeSQL(outputDatabase, sql); + if(!CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + try { + SQLRunner.executeSQL(outputDatabase, "alter table TemporaryOutputImport add fuelSubTypeID SMALLINT UNSIGNED NULL DEFAULT NULL"); + } catch(Exception e) { + // Nothing to do here. This may happen if the fuelSubTypeID column already exists. + } + } + // Clear temporary output table. + sql = "TRUNCATE TemporaryOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Import data file + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(outputTableFile.getCanonicalPath()) + + " INTO TABLE TemporaryOutputImport " + "(" + outputTableFields + ")"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Use the Run ID of the current run. + sql = "UPDATE TemporaryOutputImport SET MOVESRunID = " + + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + + // Use the current iterationID. + if(estimateUncertainty) { + sql = "UPDATE TemporaryOutputImport SET iterationID = " + + MOVESEngine.theInstance.getActiveIterationID(); + SQLRunner.executeSQL(outputDatabase, sql); + } + } else if(tableName.equalsIgnoreCase("MOVESWorkerActivityOutput")) { + hasCalculatorOutputTables = true; + File outputActivityTableFile = new File(folder, ACTIVITY_TABLE_FILE_NAME); + if(!outputActivityTableFile.isFile()) { + /** + * @explain A bundle of completed data from a worker did not include + * a required data file. The simulation results should be discarded. + **/ + Logger.log(LogMessageCategory.ERROR, + "Didn't get output data from distributed bundle"); + return; + } + + // Drop the temporary activity table so we can be certain its indexing is correct + sql = "DROP TABLE IF EXISTS TemporaryActivityOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Create a temporary table to hold the activity results + // (only if the table doesn't already exist) + sql = "CREATE TABLE IF NOT EXISTS TemporaryActivityOutputImport " + + "SELECT * FROM " + ExecutionRunSpec.getActivityOutputTable() + " LIMIT 0"; + SQLRunner.executeSQL(outputDatabase, sql); + // Clear temporary output table. + sql = "TRUNCATE TemporaryActivityOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Import data file + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(outputActivityTableFile.getCanonicalPath()) + + " INTO TABLE TemporaryActivityOutputImport " + "(" + + outputActivityTableFields + ")"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Use the Run ID of the current run. + sql = "UPDATE TemporaryActivityOutputImport SET MOVESRunID = " + + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + + // Use the current iterationID. + if(estimateUncertainty) { + sql = "UPDATE TemporaryActivityOutputImport SET iterationID = " + + MOVESEngine.theInstance.getActiveIterationID(); + SQLRunner.executeSQL(outputDatabase, sql); + } + } else { + Connection cmitDB = executionDatabase; + boolean isOutputDatabase = false; + if(tableName.equalsIgnoreCase("BaseRateOutput")) { + cmitDB = outputDatabase; + isOutputDatabase = true; + } + // The table is a CMIT table and should be read into a temporary table + // then INSERT IGNORE'd into the primary CMIT table + String tempTableName = "temp" + tableName; + File dataFile = new File(folder,tableName + ".tbl"); + if(dataFile.exists()) { + // Create a temporary table to handle the loaded data + sql = "create table if not exists " + tempTableName + " like " + tableName; + SQLRunner.executeSQL(cmitDB,sql); + // Ensure the temporary table is empty + sql = "truncate table " + tempTableName; + SQLRunner.executeSQL(cmitDB,sql); + // Import data into the temporary table + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(dataFile.getCanonicalPath()) + + " INTO TABLE " + tempTableName; + SQLRunner.executeSQL(cmitDB, sql); + + if(CompilationFlags.DO_RATES_FIRST) { + if(isOutputDatabase) { + try { + // Use the Run ID of the current run. + sql = "UPDATE " + tempTableName + " SET MOVESRunID = " + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(cmitDB, sql); + + // Use the current iterationID. + if(estimateUncertainty) { + sql = "UPDATE " + tempTableName + " SET iterationID = " + MOVESEngine.theInstance.getActiveIterationID(); + SQLRunner.executeSQL(cmitDB, sql); + } + } catch(Exception e) { + // Nothing to do here because the table simply may not contain MOVESRunID or iterationID columns. + } + } + } + + // INSERT IGNORE the data into the primary table + sql = "insert ignore into " + tableName + + " select * from " + tempTableName; + SQLRunner.executeSQL(cmitDB, sql); + // Get rid of the temporary table + sql = "drop table if exists " + tempTableName; + SQLRunner.executeSQL(cmitDB,sql); + } else { + Logger.log(LogMessageCategory.ERROR,"TBL file not sent from the worker for table " + tableName); + } + } + } + + if(hasCalculatorOutputTables) { + try { + // Invoke IntegratedPostProcessor objects + for (Iterator i = integratedPostProcessors.iterator(); i.hasNext(); ) { + IntegratedPostProcessor iterProcessor = (IntegratedPostProcessor) i.next(); + + iterProcessor.execute(outputDatabase); + } + + // Move data into the final output emission table + String outputTableFieldsToUse = CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT? outputTableFieldsWithFuelSubType : outputTableFieldsNoFuelSubType; + sql = "INSERT INTO " + ExecutionRunSpec.getEmissionOutputTable() + + "(iterationID," + outputTableFieldsToUse + ") " + + "SELECT iterationID," + outputTableFieldsToUse + + " FROM TemporaryOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Move data into the final output activity table + sql = "INSERT INTO " + ExecutionRunSpec.getActivityOutputTable() + + "(iterationID," + outputActivityTableFields + ") " + + "SELECT iterationID," + outputActivityTableFields + + " FROM TemporaryActivityOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + /* The following incremental aggregation was removed for Task 812. + * MOVES now only aggregates its outputs (emissions and activity) + * at the end of each iteration, if required and if desired by + * the user. + // Aggregate the moves output for some of the processed bundles + aggregateOutput(outputDatabase); + */ + } finally { + if(!keepDebugData) { + // Clear temporary output table. + sql = "TRUNCATE TemporaryOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + + // Clear temporary output table. + sql = "TRUNCATE TemporaryActivityOutputImport"; + SQLRunner.executeSQL(outputDatabase, sql); + } + } + } + } catch (Exception exception) { + /** + * @explain An error occurred while reading results returned from a worker. + **/ + Logger.logError(exception, "Failed to process Worker Files in OutputProcessor."); + } finally { + if(executionDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + if(outputDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.OUTPUT, outputDatabase); + outputDatabase = null; + } + updateMOVESRun(); + } + } + + /** + * This method will aggregate the output every 10% of the total bundles. + * In this way, we minimize data in the output table and minimize the amount + * of time spent aggregating output data at the final pass. + * @param outputDatabase A connection to a MOVES output database containing the + * MOVESOutput table. + **/ + private void aggregateOutput(Connection outputDatabase) { + Integer t = MOVESEngine.theInstance.getHowManyOutboundBundlesWillBeCreated(); + int totalBundleCount = 0; + if(t != null) { + totalBundleCount = t.intValue(); + } + if(totalBundleCount == 0) { + return; + } + try { + // Check the progress so far. If not at a 10% point, then return, otherwise allow + // the partial aggregation of results accumulated so far. + if(0 != (MOVESEngine.theInstance.getHowManyBundlesProcessedSoFar() + % ((totalBundleCount+9)/10))) { + return; + } + Vector outputProcessorSQLs = ExecutionRunSpec.theExecutionRunSpec.outputProcessorSQLs; + for(int i=0; i 0) { + Logger.log(LogMessageCategory.INFO,"Final Post processing starting..."); + for (Iterator i = integratedPostProcessors.iterator(); i.hasNext(); ) { + IntegratedPostProcessor iterProcessor = (IntegratedPostProcessor) i.next(); + + iterProcessor.doFinalPostProcessingOnOutputDatabase(outputDatabase, + executionDatabase,false); + } + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO,"Final Post processing done."); + } else { + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO,"No final post processing required."); + } + } else { + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO,"No unit conversion, aggregation, or post processing is performed in this mode."); + } + } catch (Exception exception) { + //Logger.logException(LogMessageCategory.ERROR, exception); + /** + * @explain A database error occurred while performing post processing on the + * simulator results, before converting units to user-selected units. + **/ + Logger.logError(exception, "Failed to do final post processing in OutputProcessor."); + } finally { + if(executionDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + if(outputDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.OUTPUT, outputDatabase); + outputDatabase = null; + } + updateMOVESRun(); + } + } + + /** + * Converts the units of the Emission Quantities reported in MOVESOutput to the units + * selected in the RunSpec. The unit conversion involves, + * 1. Mass & Energy unit conversion + * 2. Time unit conversion + * This method is called by doFinalPostProcessingOnOutputDatabase after all + * other processing on the output database is complete.
    + * The base output units are grams for mass and kilojoules for energy. + * @param executionDatabase A connection to an MOVES execution database containing the + * Pollutant table. + * @param outputDatabase A connection to an MOVES output database containing the + * MOVESOutput table. + **/ + void convertOutputUnits(Connection executionDatabase, Connection outputDatabase) { + PreparedStatement selectStatement = null; + ResultSet results = null; + String sql = ""; + try { + String selectSQL = "SELECT DISTINCT PollutantID, EnergyOrMass FROM POLLUTANT"; + String massPollutants = ""; + String energyPollutants = ""; + selectStatement = executionDatabase.prepareStatement(selectSQL); + results = SQLRunner.executeQuery(selectStatement, selectSQL); + boolean isFirstEnergyPollutant = true; + boolean isFirstMassPollutant = true; + while(results.next()) { + String pollutantID = results.getString(1); + String units = results.getString(2); + if(units == null || pollutantID == null) { + continue; + } else if(units.trim().equalsIgnoreCase("energy") || + units.indexOf("energy") >= 0){ + if(isFirstEnergyPollutant) { + energyPollutants = pollutantID; + isFirstEnergyPollutant = false; + } else { + energyPollutants = energyPollutants + "," + pollutantID; + } + } else { + if(isFirstMassPollutant) { + massPollutants = pollutantID; + isFirstMassPollutant = false; + } else { + massPollutants = massPollutants + "," + pollutantID; + } + } + } + results.close(); + selectStatement.close(); + if(massPollutants.length() > 0) { + double massConversionToKilogramFactor = + ExecutionRunSpec.theExecutionRunSpec.getOutputFactors(). + massMeasurementSystem.getConversionToKilogramsFactor(); + // Native database units are grams (g) and measurement systems provide + // factor in kilogram/user-unit. Remember that dividing by a factor is the + // same as multiplying by its inverse: + // + // n g kg user-unit n + // ---- * ------ * --------- = -------- user-units + // 1 1000 g c kg c * 1000 + String updateMassUnitSQL = "UPDATE " + ExecutionRunSpec.getEmissionOutputTable() + + " SET EmissionQuant =" + + " EmissionQuant / 1000 / " + massConversionToKilogramFactor + + " WHERE PollutantID IN (" + massPollutants + ") AND MOVESRunID =" + + MOVESEngine.theInstance.getActiveRunID(); + if(estimateUncertainty) { + updateMassUnitSQL += " AND iterationID =" + + MOVESEngine.theInstance.getActiveIterationID(); + } + //SQLRunner.executeSQL(outputDatabase, "FLUSH TABLES"); + SQLRunner.executeSQL(outputDatabase, updateMassUnitSQL); + + if(CompilationFlags.DO_RATES_FIRST) { + updateMassUnitSQL = "update BaseRateUnits set" + + " meanBaseRateUnitsNumerator = " + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.massUnits,true) + + " ,emissionBaseRateUnitsNumerator = " + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.massUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and pollutantID in (" + massPollutants + ")"; + SQLRunner.executeSQL(outputDatabase, updateMassUnitSQL); + + updateMassUnitSQL = "update BaseRateOutput set" + + " meanBaseRate = meanBaseRate / 1000 / " + massConversionToKilogramFactor + + ",emissionRate = emissionRate / 1000 / " + massConversionToKilogramFactor + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and pollutantID in (" + massPollutants + ")"; + if(estimateUncertainty) { + updateMassUnitSQL += " AND iterationID =" + + MOVESEngine.theInstance.getActiveIterationID(); + } + SQLRunner.executeSQL(outputDatabase, updateMassUnitSQL); + } + } + sql = "update MOVESRun set massUnits=" + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.massUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + + if(energyPollutants.length() > 0) { + double energyConversionToJoulesFactor = + ExecutionRunSpec.theExecutionRunSpec.getOutputFactors(). + energyMeasurementSystem.getConversionToJoulesFactor(); + // Native database units are kilojoules (KJ) and measurement systems provide + // factor in joules/user-unit. Remember that dividing by a factor is the + // same as multiplying by its inverse: + // + // n KJ 1000 J user-unit n*1000 + // ---- * ------ * --------- = ------ user-units + // 1 KJ c J c + String updateEnergyUnitSQL = "UPDATE " + ExecutionRunSpec.getEmissionOutputTable() + + " SET EmissionQuant =" + + " EmissionQuant * 1000 / " + energyConversionToJoulesFactor + + " WHERE PollutantID IN (" + energyPollutants + ") AND MOVESRunID =" + + MOVESEngine.theInstance.getActiveRunID(); + if(estimateUncertainty) { + updateEnergyUnitSQL += " AND iterationID=" + + MOVESEngine.theInstance.getActiveIterationID(); + } + //SQLRunner.executeSQL(outputDatabase, "FLUSH TABLES"); + SQLRunner.executeSQL(outputDatabase, updateEnergyUnitSQL); + + if(CompilationFlags.DO_RATES_FIRST) { + updateEnergyUnitSQL = "update BaseRateUnits set" + + " meanBaseRateUnitsNumerator = " + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.energyUnits,true) + + " ,emissionBaseRateUnitsNumerator = " + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.energyUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and pollutantID in (" + energyPollutants + ")"; + SQLRunner.executeSQL(outputDatabase, updateEnergyUnitSQL); + + updateEnergyUnitSQL = "update BaseRateOutput set" + + " meanBaseRate = meanBaseRate * 1000 / " + energyConversionToJoulesFactor + + ",emissionRate = emissionRate * 1000 / " + energyConversionToJoulesFactor + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and pollutantID in (" + energyPollutants + ")"; + if(estimateUncertainty) { + updateEnergyUnitSQL += " AND iterationID =" + + MOVESEngine.theInstance.getActiveIterationID(); + } + SQLRunner.executeSQL(outputDatabase, updateEnergyUnitSQL); + } + } + sql = "update MOVESRun set energyUnits=" + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.energyUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + + // Time unit conversion + double timeConversionToSecondsFactor = + ExecutionRunSpec.theExecutionRunSpec.getOutputFactors().timeMeasurementSystem. + getConversionToSecondsFactor(); + double averageHours = ExecutionRunSpec.theExecutionRunSpec.getOutputTimeStep(). + getAverageHours(); + Logger.log(LogMessageCategory.INFO,"Time Measurement System = " + + ExecutionRunSpec.theExecutionRunSpec.getOutputFactors().timeMeasurementSystem); + Logger.log(LogMessageCategory.INFO,"Output Time Step = " + + ExecutionRunSpec.theExecutionRunSpec.getOutputTimeStep()); + Logger.log(LogMessageCategory.INFO,"Output Time Step average hours = " + averageHours); + + // Native database units are user defined and measurement systems, + // provide factor in sec/(TMS)user-unit. Output time step uses hour/(OTS)user-unit. + // Remember that dividing by a factor is the same as multiplying by its inverse: + // OTS : Output Time Step + // TMS : Time Measurement System + // + // n OTS hour sec + // ---- * ------ * ---- * --- = (n / averageHours / 3600 * TMS) user-units + // OTS hour sec TMS + String updateTimeUnitSQL = "UPDATE " + ExecutionRunSpec.getEmissionOutputTable() + + " SET EmissionQuant =" + " EmissionQuant / " + averageHours + " / 3600 * " + + timeConversionToSecondsFactor + + " WHERE MOVESRunID =" + MOVESEngine.theInstance.getActiveRunID(); + if(estimateUncertainty) { + updateTimeUnitSQL += " AND iterationID =" + + MOVESEngine.theInstance.getActiveIterationID(); + } + //SQLRunner.executeSQL(outputDatabase, "FLUSH TABLES"); +// SQLRunner.executeSQL(outputDatabase, updateTimeUnitSQL); + // Distance unit conversion, including the time unit conversion too + if(ExecutionRunSpec.theExecutionRunSpec.getOutputFactors().distanceMeasurementSystem + != null) { + double distanceConversionToMetersFactor = + ExecutionRunSpec.theExecutionRunSpec.getOutputFactors(). + distanceMeasurementSystem.getConversionToMetersFactor(); + // Native database units are miles and measurement systems provide + // factor in meters/user-unit. + // + // n miles 1609.344 meters user-units + // --------- * ----------------- * ------------- = (n * 1609.344 / c) user-units + // 1 miles c meters + /* + String updateDistanceUnitSQL = "UPDATE " + ExecutionRunSpec.getActivityOutputTable() + + " SET activity =" + + " activity * 1609.344 / " + distanceConversionToMetersFactor + + " / " + averageHours + " / 3600 * " + + timeConversionToSecondsFactor + + " WHERE MOVESRunID =" + MOVESEngine.theInstance.getActiveRunID() + + " AND activityTypeID=1"; + */ + String updateDistanceUnitSQL = "UPDATE " + ExecutionRunSpec.getActivityOutputTable() + + " SET activity =" + + " activity * 1609.344 / " + distanceConversionToMetersFactor + + " WHERE MOVESRunID =" + MOVESEngine.theInstance.getActiveRunID() + + " AND activityTypeID=1"; + if(estimateUncertainty) { + updateDistanceUnitSQL += " AND iterationID = " + + MOVESEngine.theInstance.getActiveIterationID(); + } + + //SQLRunner.executeSQL(outputDatabase, "FLUSH TABLES"); + SQLRunner.executeSQL(outputDatabase, updateDistanceUnitSQL); + + if(CompilationFlags.DO_RATES_FIRST) { + updateDistanceUnitSQL = "update BaseRateUnits set" + + " emissionBaseRateUnitsDenominator = " + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.distanceUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and emissionBaseRateUnitsDenominator='mi'"; + SQLRunner.executeSQL(outputDatabase, updateDistanceUnitSQL); + + // g mi c meters g + // -- * ---------- * ---------- = ---------- + // mi 1609.344 m user-units user-units + updateDistanceUnitSQL = "update BaseRateOutput set" + + " emissionRate = emissionRate * " + distanceConversionToMetersFactor + " / 1609.344" + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID() + + " and processID=1"; + if(estimateUncertainty) { + updateDistanceUnitSQL += " AND iterationID =" + + MOVESEngine.theInstance.getActiveIterationID(); + } + SQLRunner.executeSQL(outputDatabase, updateDistanceUnitSQL); + } + } + sql = "update MOVESRun set distanceUnits=" + DatabaseUtilities.escapeSQL(MOVESEngine.theInstance.masterFragment.distanceUnits,true) + + " where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + } catch (Exception exception) { + /** + * @explain A database error occurred while converting standard units in the output + * database into user-selected units. The output data should be considered suspect. + **/ + Logger.logError(exception, "Failed to convert emission quantity units."); + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(selectStatement != null) { + try { + selectStatement.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + + /** + * Prepare output database for uncertainty estimations + **/ + public void prepareForEstimateUncertainty() { + estimateUncertainty = ExecutionRunSpec.theExecutionRunSpec.estimateUncertainty(); + if(estimateUncertainty) { + Connection outputDatabase = null; + String sql = ""; + try { + outputDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.OUTPUT); + try { + sql = "ALTER TABLE " + ExecutionRunSpec.getEmissionOutputTable() + + " ADD COLUMN (emissionQuantSum DOUBLE, emissionQuantSum2 DOUBLE)"; + SQLRunner.executeSQL(outputDatabase, sql); + } catch (Exception exception) { + // Nothing to do here. + } + try { + sql = "ALTER TABLE " + ExecutionRunSpec.getActivityOutputTable() + + " ADD COLUMN (activitySum DOUBLE, activitySum2 DOUBLE)"; + SQLRunner.executeSQL(outputDatabase, sql); + } catch (Exception exception) { + // Nothing to do here. + } + } catch (Exception exception) { + /** + * @explain A database error occurred while processing uncertainty estimation + * data. + **/ + Logger.logError(exception, + "Failed to add columns used in estimating uncertainty."); + } finally { + if(outputDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.OUTPUT, outputDatabase); + outputDatabase = null; + } + } + } + } + + /** + * Clean up after uncertainty estimations + **/ + public void cleanUpAfterEstimateUncertainty() { + Connection outputDatabase = null; + String sql = ""; + try { + outputDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.OUTPUT); + if(estimateUncertainty) { + try { + sql = "ALTER TABLE " + ExecutionRunSpec.getEmissionOutputTable() + + " DROP COLUMN emissionQuantSum, DROP COLUMN emissionQuantSum2"; + SQLRunner.executeSQL(outputDatabase, sql); + sql = "ALTER TABLE " + ExecutionRunSpec.getActivityOutputTable() + + " DROP COLUMN activitySum, DROP COLUMN activitySum2"; + SQLRunner.executeSQL(outputDatabase, sql); + } catch (Exception exception) { + /** + * @explain A database error occurred while processing uncertainty estimation + * data. + **/ + Logger.logError(exception, + "Failed to drop columns used in estimating uncertainty."); + } + } + if(ExecutionRunSpec.getRunSpec().scale == ModelScale.MESOSCALE_LOOKUP) { + if(ExecutionRunSpec.getRunSpec().shouldTruncateMOVESOutput) { + Logger.log(LogMessageCategory.INFO,"Removing data from MOVESOutput per Advanced Performance Features setting..."); + sql = "delete from MOVESOutput where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + // Truncate if there is no more data in order to save time when transfering output databases. + sql = "select count(*) from MOVESOutput"; + if(SQLRunner.executeScalar(outputDatabase, sql) <= 0) { + Logger.log(LogMessageCategory.INFO,"Truncating empty MOVESOutput per Advanced Performance Features setting."); + sql = "truncate MOVESOutput"; + SQLRunner.executeSQL(outputDatabase, sql); + } + Logger.log(LogMessageCategory.INFO,"Removed data from MOVESOutput per Advanced Performance Features setting."); + } + if(ExecutionRunSpec.getRunSpec().shouldTruncateMOVESActivityOutput) { + Logger.log(LogMessageCategory.INFO,"Removing data from MOVESActivityOutput per Advanced Performance Features setting..."); + sql = "delete from MOVESActivityOutput where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + // Truncate if there is no more data in order to save time when transfering output databases. + sql = "select count(*) from MOVESActivityOutput"; + if(SQLRunner.executeScalar(outputDatabase, sql) <= 0) { + Logger.log(LogMessageCategory.INFO,"Truncating empty MOVESActivityOutput per Advanced Performance Features setting."); + sql = "truncate MOVESActivityOutput"; + SQLRunner.executeSQL(outputDatabase, sql); + } + Logger.log(LogMessageCategory.INFO,"Removed data from MOVESActivityOutput per Advanced Performance Features setting."); + } + if(ExecutionRunSpec.getRunSpec().shouldTruncateBaseRateOutput) { + Logger.log(LogMessageCategory.INFO,"Removing data from BaseRateOutput per Advanced Performance Features setting..."); + sql = "delete from BaseRateOutput where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + // Truncate if there is no more data in order to save time when transfering output databases. + sql = "select count(*) from BaseRateOutput"; + if(SQLRunner.executeScalar(outputDatabase, sql) <= 0) { + Logger.log(LogMessageCategory.INFO,"Truncating empty BaseRateOutput per Advanced Performance Features setting."); + sql = "truncate BaseRateOutput"; + SQLRunner.executeSQL(outputDatabase, sql); + } + Logger.log(LogMessageCategory.INFO,"Removed data from BaseRateOutput per Advanced Performance Features setting."); + + Logger.log(LogMessageCategory.INFO,"Removing data from BaseRateUnits per Advanced Performance Features setting..."); + sql = "delete from BaseRateUnits where MOVESRunID=" + MOVESEngine.theInstance.getActiveRunID(); + SQLRunner.executeSQL(outputDatabase, sql); + // Truncate if there is no more data in order to save time when transfering output databases. + sql = "select count(*) from BaseRateUnits"; + if(SQLRunner.executeScalar(outputDatabase, sql) <= 0) { + Logger.log(LogMessageCategory.INFO,"Truncating empty BaseRateUnits per Advanced Performance Features setting."); + sql = "truncate BaseRateUnits"; + SQLRunner.executeSQL(outputDatabase, sql); + } + Logger.log(LogMessageCategory.INFO,"Removed data from BaseRateUnits per Advanced Performance Features setting."); + } + } + } catch(Exception exception) { + /** + * @explain A database error occurred while removing data from MOVESOutput, MOVESActivityOutput, BaseRateOutput, or BaseRateUnits. + **/ + Logger.logError(exception, + "A database error occurred while removing data from MOVESOutput, MOVESActivityOutput, BaseRateOutput, or BaseRateUnits."); + } finally { + if(outputDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.OUTPUT, outputDatabase); + outputDatabase = null; + } + } + } + + /** + * Perform uncertainty estimations for the iteration. + **/ + public void performEstimateUncertainty() { + if(estimateUncertainty) { + Connection outputDatabase = null; + String sql = ""; + try { + int activeRunID = MOVESEngine.theInstance.getActiveRunID(); + int activeIterationID = MOVESEngine.theInstance.getActiveIterationID(); + Logger.log(LogMessageCategory.INFO,"Estimating uncertainty for run " + + activeRunID + " iteration "+activeIterationID); + outputDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.OUTPUT); + if(activeIterationID == 1) { + sql = "UPDATE " + ExecutionRunSpec.getEmissionOutputTable() + + " SET emissionQuantMean = emissionQuant," + + " emissionQuantSum = emissionQuant, emissionQuantSum2 =" + + " emissionQuant * emissionQuant WHERE MOVESRunID = " + activeRunID + + " AND iterationID = 1"; + SQLRunner.executeSQL(outputDatabase,sql); + /*======================================================= + * For calculating activity uncertainty when available. + *======================================================= + sql = "UPDATE " + ExecutionRunSpec.getActivityOutputTable() + + " SET activityMean = activity, " + + " activitySigma = 0, activitySum = activity," + + " activitySum2 = activity * activity" + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = 1"; + SQLRunner.executeSQL(outputDatabase,sql); + *=====================================================*/ + } else { + sql = "drop table if exists MOVESOutputSumTemp"; + SQLRunner.executeSQL(outputDatabase,sql); + sql = "create table MOVESOutputSumTemp like " + + ExecutionRunSpec.getEmissionOutputTable(); + SQLRunner.executeSQLCore(outputDatabase,sql); + + String[] emissionStatements = { + "create index IXOutputSumTemp on MOVESOutputSumTemp (iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID," + + " sourceTypeID,regClassID,fuelTypeID,fuelSubTypeID,modelYearID,roadTypeID,SCC)", + "insert into MOVESOutputSumTemp (MOVESRunID,iterationID,yearID,monthID,dayID,hourID,stateID,countyID,zoneID,linkID,pollutantID,processID," + + " sourceTypeID,regClassID,fuelTypeID,fuelSubTypeID,modelYearID,roadTypeID,SCC," +// + " engTechID,sectorID,hpID," + + " emissionQuant, emissionQuantMean, emissionQuantSum, emissionQuantSum2)" + + " select MOVESRunID,iterationID," + + " coalesce(yearID,0),coalesce(monthID,0),coalesce(dayID,0),coalesce(hourID,0),coalesce(stateID,0),coalesce(countyID,0)," + + " coalesce(zoneID,0),coalesce(linkID,0),coalesce(pollutantID,0),coalesce(processID,0)," + + " coalesce(sourceTypeID,0),coalesce(regClassID,0),coalesce(fuelTypeID,0),coalesce(fuelSubTypeID,0),coalesce(modelYearID,0),coalesce(roadTypeID,0),coalesce(SCC,0)," +// + " coalesce(engTechID,0),coalesce(sectorID,0),coalesce(hpID,0)," + + " emissionQuant, emissionQuantMean, emissionQuantSum, emissionQuantSum2" + + " from " + ExecutionRunSpec.getEmissionOutputTable() + + " where MOVESRunID=" + activeRunID + + " and iterationID in (" + activeIterationID + "," + (activeIterationID-1) + ")", + "CREATE TABLE IF NOT EXISTS MOVESOutputSum" + + " SELECT mo2.MOVESRunID, mo2.iterationID, mo2.yearID, mo2.monthID, mo2.dayID, mo2.hourID, mo2.stateID, " + + " mo2.countyID, mo2.zoneID, mo2.linkID, mo2.pollutantID, mo2.processID, mo2.sourceTypeID, mo2.regClassID, mo2.fuelTypeID, mo2.fuelSubTypeID," + + " mo2.modelYearID, mo2.roadTypeID, mo2.SCC, " +// + " mo2.engTechID, mo2.sectorID, mo2.hpID," + + " mo2.emissionQuant," + + " (mo2.emissionQuant + mo1.emissionQuantSum)/ mo2.iterationID AS emissionQuantMean, " + + " mo2.emissionQuant + mo1.emissionQuantSum AS emissionQuantSum, " + + " mo2.emissionQuant * mo2.emissionQuant + mo1.emissionQuantSum2 AS emissionQuantSum2 " + + " FROM MOVESOutputSumTemp AS mo1, MOVESOutputSumTemp AS mo2 " + + " WHERE mo2.iterationID = " + activeIterationID + + " AND mo1.iterationID = " + (activeIterationID-1) + + " AND mo1.yearID=mo2.yearID" + + " AND mo1.monthID=mo2.monthID" + + " AND mo1.dayID=mo2.dayID" + + " AND mo1.hourID=mo2.hourID" + + " AND mo1.stateID=mo2.stateID" + + " AND mo1.countyID=mo2.countyID" + + " AND mo1.zoneID=mo2.zoneID" + + " AND mo1.linkID=mo2.linkID" + + " AND mo1.pollutantID=mo2.pollutantID" + + " AND mo1.processID=mo2.processID" + + " AND mo1.sourceTypeID=mo2.sourceTypeID" + + " AND mo1.regClassID=mo2.regClassID" + + " AND mo1.fuelTypeID=mo2.fuelTypeID" + + " AND mo1.fuelSubTypeID=mo2.fuelSubTypeID" + + " AND mo1.modelYearID=mo2.modelYearID" + + " AND mo1.roadTypeID=mo2.roadTypeID" + + " AND mo1.SCC=mo2.SCC", +// + " AND mo1.engTechID=mo2.engTechID" +// + " AND mo1.sectorID=mo2.sectorID" +// + " AND mo1.hpID=mo2.hpID", + "drop table MOVESOutputSumTemp", + "DELETE FROM " + ExecutionRunSpec.getEmissionOutputTable() + + " WHERE MOVESRunID = " + activeRunID + + " AND iterationID = " + activeIterationID, + "INSERT INTO " + ExecutionRunSpec.getEmissionOutputTable() + + " (MOVESRunID, iterationID, yearID, monthID," + + " dayID, hourID, stateID, countyID, zoneID, linkID, pollutantID," + + " processID, sourceTypeID, regClassID, fuelTypeID, fuelSubTypeID, modelYearID, roadTypeID," + + " SCC," +// + " engTechID,sectorID,hpID," + + " emissionQuant, emissionQuantMean, emissionQuantSigma, " + + " emissionQuantSum, emissionQuantSum2)" + + " SELECT MOVESRunID," + + " iterationID, yearID, monthID, dayID, hourID, stateID," + + " countyID,zoneID, linkID, pollutantID, processID, sourceTypeID, regClassID," + + " fuelTypeID, fuelSubTypeID, modelYearID, roadTypeID, SCC," +// + " engTechID, sectorID, hpID," + + " emissionQuant," + + " emissionQuantMean,SQRT((emissionQuantSum2-" + + "(emissionQuantSum*emissionQuantSum/iterationID))" + + " /(iterationID-1)) AS emissionQuantSigma," + + " emissionQuantSum,emissionQuantSum2 FROM MOVESOutputSum", + "DROP TABLE MOVESOutputSum" + }; + for(int i=0;i 0;j++) { + // Create the table if it doesn't exist. Doing so allows for + // tables that aren't in CreateDefault.sql + try { + sql = "SHOW CREATE TABLE " + sqlStatements[j]; + query.open(executionDB,sql); + if(query.rs.next()) { + String createStatement = StringUtilities.replace( + query.rs.getString(2), + "CREATE TABLE `","CREATE TABLE IF NOT EXISTS `") + ";"; + SQLRunner.executeSQL(userDB,createStatement); + } + } catch(SQLException e) { + // Skip the table because it doesn't exist in the execution database. + // This happens when a required generator was not part of the runspec. + // As such, the table can be skipped because the generator isn't needed. + continue; + } finally { + query.onFinally(); + } + // Limit the data with an optional WHERE clause + String whereClause = getCMITWhereClause(executionDB,c,sqlStatements[j]); + if(whereClause != null && whereClause.length() > 0) { + // Try to remove all old data before applying new data. This + // is the safest thing to do with distribution data. + sql = "delete from " + sqlStatements[j] + + " where " + whereClause; + SQLRunner.executeSQL(userDB,sql); + } + // Move data + DatabaseUtilities.replaceIntoTable(executionDB,userDB,sqlStatements[j], + whereClause,true); + } + break; + } + } + } + /** @nonissue **/ + Logger.log(LogMessageCategory.INFO,"Done saving CMITs."); + } catch(SQLException e) { + /** @explain An error occurred while capturing generator data **/ + Logger.logSqlError(e,"Unable to save CMITs",sql); + } catch(IOException e) { + /** @explain An error occurred while capturing generator data **/ + Logger.logError(e,"Unable to save CMITs"); + } finally { + if(userDB != null) { + DatabaseUtilities.closeConnection(userDB); + } + executionDB = null; // does not need to be closed + query.onFinally(); + } + } + + /** + * Generate a SQL fragment to filter a CMIT during its copy to + * another database as part of the Advanced Performance Features. + * @param executionDB a connection to the execution database + * @param className class that generated the CMIT table + * @param tableName CMIT table name + * @return SQL fragment suitable to use as with the WHERE word. + **/ + String getCMITWhereClause(Connection executionDB,String className,String tableName) { + String whereClause = ""; + if(tableName.equalsIgnoreCase("OpModeDistribution")) { + String processIDs = ""; + String polProcessIDs = ""; + // The OMDG-family needs OpModeDistribution filtered by processes + /* + +-----------+-------------------------+ + | processID | processName | + +-----------+-------------------------+ + | 1 | Running Exhaust | + | 2 | Start Exhaust | + | 90 | Extended Idle Exhaust | + | 99 | Well-to-Pump | + | 7 | Crankcase | + | 9 | Brakewear | + | 10 | Tirewear | + | 11 | Evap Permeation | + | 12 | Evap Fuel Vapor Venting | + | 13 | Evap Fuel Leaks | + | 14 | Evap Non-Fuel Vapors | + +-----------+-------------------------+ + */ + if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.OperatingModeDistributionGenerator")) { + processIDs = "1,9"; + } else if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.StartOperatingModeDistributionGenerator")) { + processIDs = "2"; + } else if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.EvaporativeEmissionsOperatingModeDistributionGenerator")) { + processIDs = "11,12,13,14"; + } else if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.MesoscaleLookupOperatingModeDistributionGenerator")) { + processIDs = "1,9"; + } else if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.AverageSpeedOperatingModeDistributionGenerator")) { + processIDs = "10"; + polProcessIDs = "11710"; + } else if(className.equalsIgnoreCase("gov.epa.otaq.moves.master.implementation.ghg.LinkOperatingModeDistributionGenerator")) { + processIDs = "1,9"; + } + + String sql = "select polProcessID" + + " from pollutantprocessassoc" + + " where processID in (" + processIDs + ")"; + if(polProcessIDs.length() > 0) { + sql += " and polProcessID in (" + polProcessIDs + ")"; + } + polProcessIDs = ""; + PreparedStatement statement = null; + ResultSet rs = null; + try { + statement = executionDB.prepareStatement(sql); + rs = SQLRunner.executeQuery(statement, sql); + while(rs.next()) { + if(polProcessIDs.length() > 0) { + polProcessIDs += ","; + } + polProcessIDs += rs.getString(1); + } + rs.close(); + rs = null; + statement.close(); + statement = null; + } catch(SQLException e) { + Logger.logSqlError(e,"Unable to query PollutantProcessAssoc",sql); + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + if(polProcessIDs.length() <= 0) { + polProcessIDs = "0"; // safeguard in case nothing was found + } + whereClause = "polProcessID in (" + polProcessIDs + ")"; + } + return whereClause; + } +} diff --git a/gov/epa/otaq/moves/master/framework/OutputProcessorTest.java b/gov/epa/otaq/moves/master/framework/OutputProcessorTest.java new file mode 100644 index 0000000..931ff1e --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/OutputProcessorTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)OutputProcessorTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the OutputProcessor class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class OutputProcessorTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public OutputProcessorTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/PDSpec.java b/gov/epa/otaq/moves/master/framework/PDSpec.java new file mode 100644 index 0000000..9201376 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PDSpec.java @@ -0,0 +1,250 @@ +/************************************************************************************************** + * @(#)PDSpec.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import java.util.*; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * Data for retrieving DONE files. + * + * @author Wesley Faler + * @version 2010-10-04 +**/ +public class PDSpec { + public static class PDSpecEntry { + public String masterID; + public String pickupFolderName; + public DatabaseSelection outputDatabase = new DatabaseSelection(); + + public int howManyBundlesRetrieved = 0; + + public String toString() { + return "ID " + masterID + " into " + outputDatabase.databaseName + " from " + pickupFolderName; + } + + public boolean isWildcard() { + return masterID.equalsIgnoreCase("*"); + } + } + + /** Entries, each describing one master's DONE files to be retrieved and stored. **/ + public ArrayList entries = new ArrayList(); + + /** + * Expand all PDSpecEntry objects that have wildcard master IDs then remove the wildcard entries, + * leaving a concrete set of PDSpecEntry objects to be executed. + **/ + public void expandWildcards() { + // Isolate wildcard entries + ArrayList wildcards = null; + for(int i=0;i(); + } + wildcards.add(entry); + entries.remove(i); + i--; + } + } + // Expand each wildcard entry + TreeSetIgnoreCase idsAlreadySeen = new TreeSetIgnoreCase(); + for(int i=0;wildcards != null && i 0) { + for(int j=0;j 0) { + if(!idsAlreadySeen.contains(doneFileName.mid)) { + idsAlreadySeen.add(doneFileName.mid); + PDSpecEntry newEntry = new PDSpecEntry(); + newEntry.masterID = doneFileName.mid; + newEntry.pickupFolderName = entry.pickupFolderName; + newEntry.outputDatabase = (DatabaseSelection)entry.outputDatabase.clone(); + entries.add(newEntry); + } + } + } + } + } catch(Exception e) { + // Nothing to do here + } + } + } + + /** + * Generate an XML file from this PDSpec and its entries. + * @param xmlFile file to be created + * @throws Exception if anything goes wrong + **/ + public void writeXML(File xmlFile) throws Exception { + PrintWriter writer = null; + try { + writer = new PrintWriter(new BufferedWriter(new FileWriter(xmlFile),32768)); + writer.println(""); + for(Iterator i=entries.iterator();i.hasNext();) { + PDSpecEntry entry = i.next(); + writer.println("\t"); + writer.println("\t\t" + entry.masterID + ""); + writer.println("\t\t" + entry.pickupFolderName + ""); + writer.println("\t\t"); + writer.println("\t"); + } + writer.println(""); + } finally { + if(writer != null) { + try { + writer.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + + /** + * Populate this PDSpec and its entries from an XML file. + * @param xmlFile file to be read + * @return true if the file was read + * @throws Exception if anything goes wrong + **/ + public boolean readXML(File xmlFile) throws Exception { + entries.clear(); + + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + dbf.setNamespaceAware(true); + try { + DocumentBuilder db = dbf.newDocumentBuilder(); + db.setErrorHandler(new XMLErrorHandler()); + Document doc = db.parse(xmlFile); + // Verify that this is a bundle manifest xml file + Node rootNode = doc.getFirstChild(); + if(!(rootNode != null && rootNode.getNodeName().equalsIgnoreCase("pdspec"))) { + /** @explain The manifest file is corrupt. **/ + Logger.log(LogMessageCategory.ERROR, "Invalid PDSpec XML file."); + return false; + } + // Handle each "sub-node" under the main tag, these are immediate child nodes + for(Node subNode = rootNode.getFirstChild(); subNode != null; subNode = subNode.getNextSibling()) { + String nodeName = subNode.getNodeName(); + if(nodeName.equalsIgnoreCase("pdentry")) { + PDSpecEntry entry = new PDSpecEntry(); + for(Node entrySubNode = subNode.getFirstChild(); entrySubNode != null; entrySubNode = entrySubNode.getNextSibling()) { + nodeName = entrySubNode.getNodeName(); + if(nodeName.equalsIgnoreCase("masterid")) { + entry.masterID = getText(entrySubNode); + } else if(nodeName.equalsIgnoreCase("directory")) { + entry.pickupFolderName = getText(entrySubNode); + } else if(nodeName.equalsIgnoreCase("output")) { + NamedNodeMap attributes = entrySubNode.getAttributes(); + for(int i = 0; i < attributes.getLength(); i++) { + Node attributeNode = attributes.item(i); + if(attributeNode.getNodeName().equalsIgnoreCase("servername")) { + entry.outputDatabase.serverName = new String(attributeNode.getNodeValue()); + } else if(attributeNode.getNodeName().equalsIgnoreCase("databasename")) { + entry.outputDatabase.databaseName = new String(attributeNode.getNodeValue()); + } else if(attributeNode.getNodeName().equalsIgnoreCase("description")) { + entry.outputDatabase.description = new String(attributeNode.getNodeValue()); + } + } + } + } + entries.add(entry); + } + } + return true; + } finally { + // Nothing to do here + } + } + + /** + * Get text within a node. + * @param node XML node of the form text + * @return text within the node + **/ + private static String getText(Node node) { + Node childNode = node.getFirstChild(); + for(Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE || child.getNodeType() == Node.CDATA_SECTION_NODE) { + return StringUtilities.safeGetString(childNode.getNodeValue()); + } + } + return ""; + } + + /** + * Internal class used to handle errors. + **/ + public static class XMLErrorHandler implements ErrorHandler { + /** + * Returns a string describing parse exception details + * @param spe The SAX Parse Exception that occurred. + **/ + private String getParseExceptionInfo(SAXParseException spe) { + String systemId = spe.getSystemId(); + if (systemId == null) { + systemId = "null"; + } + String info = "URI=" + systemId + + " Line=" + spe.getLineNumber() + + ": " + spe.getMessage(); + return info; + } + + /** + * Log SAX parser warning. + * @param spe The SAX Parse Exception that occurred. + **/ + public void warning(SAXParseException spe) throws SAXException { + /** + * @issue Warning: [SAX XML parser exception] + * @explain The RunSpec file is corrupt, likely due to a typo. + **/ + Logger.log(LogMessageCategory.WARNING, "Warning: " + getParseExceptionInfo(spe)); + } + + /** + * Log SAX parser error. + * @param spe The SAX Parse Exception that occurred. + **/ + public void error(SAXParseException spe) throws SAXException { + String message = "Error: " + getParseExceptionInfo(spe); + throw new SAXException(message); + } + + /** + * Log SAX parser fatal error. + * @param spe The SAX Parse Exception that occurred. + **/ + public void fatalError(SAXParseException spe) throws SAXException { + String message = "Fatal Error: " + getParseExceptionInfo(spe); + throw new SAXException(message); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/Pollutant.java b/gov/epa/otaq/moves/master/framework/Pollutant.java new file mode 100644 index 0000000..4c77a6a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/Pollutant.java @@ -0,0 +1,170 @@ +/************************************************************************************************** + * @(#)Pollutant.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.Iterator; +import java.util.TreeSet; + +/** + * Represents a single Pollutant type. A Pollutant can be identified by its + * ID or by its name. very Pollutant object created wii be added to the + * allPollutant TreeSet collection. The EmissionProcess objects associated with the Pollutant + * can be stored in a TreeSet collection. + * + * @author Wesley Faler + * @version 2015-02-10 +**/ +public class Pollutant implements Comparable { + /** List of all Pollutant objects. **/ + public static TreeSet allPollutants = new TreeSet(); + + /** List of all displayable Pollutant objects. **/ + public static TreeSet allDisplayablePollutants = new TreeSet(); + /** A display group ID that should always be displayed. This value was used to populate allDisplayablePollutants. **/ + public static int cacheSpecialCaseToShow = -100; + + /** + * Primary Key value used to indicate the exact database record that this object relates to. + **/ + public int databaseKey; + + /** Name of the Pollutant **/ + public String pollutantName; + + /** Set of EmissionProcess objects related to this pollutant **/ + public TreeSet associatedProcesses = new TreeSet(); + + /** Set of Pollutants that this one requires. **/ + public TreeSet requiredPollutants = new TreeSet(); + + /** Display grouping the pollutant currently belongs to. Frequenty NULL and filled by GUI algorithms. **/ + public PollutantDisplayGroup displayGroup = null; + + /** True when OnRoad can calculate this pollutant **/ + public boolean isAffectedByOnroad; + + /** True when NonRoad can calculate this pollutant **/ + public boolean isAffectedByNonroad; + + /** + * Gets a Pollutant by name or textual ID. + * @param pollutantName The name to search for + * @return Returns the associated Pollutant, or null if not found + **/ + public static Pollutant findByName(String pollutantName) { + if(pollutantName != null) { + for (Iterator i = allPollutants.iterator(); i.hasNext();) { + Pollutant iterPollutant = (Pollutant)i.next(); + if(iterPollutant.pollutantName.compareToIgnoreCase(pollutantName) == 0 + || pollutantName.equals(""+iterPollutant.databaseKey)) { + return iterPollutant; + } + } + } + return null; + } + + /** + * Gets a Pollutant by ID + * @param pollutantID The ID to search for + * @return Returns the associated Pollutant, or null if not found + **/ + public static Pollutant findByID(int pollutantID) { + for (Iterator i = allPollutants.iterator(); i.hasNext();) { + Pollutant iterPollutant = (Pollutant)i.next(); + if(iterPollutant.databaseKey == pollutantID) { + return iterPollutant; + } + } + return null; + } + + /** + * Gets an array of all loaded Pollutant objects. + * @return an array of Pollutant objects + **/ + public static Object[] getAllPollutants() { + return allPollutants.toArray(); + } + + /** + * Gets an array of all displayable Pollutant objects. + * Non-displayable pollutants belong to a display group + * that has an ID less than 0. + * @param specialCaseToShow a display group ID that should always be displayed. + * @return an array of Pollutant objects + **/ + public static Object[] getAllDisplayablePollutants(int specialCaseToShow) { + if(allDisplayablePollutants.size() == 0 || specialCaseToShow != cacheSpecialCaseToShow) { + allDisplayablePollutants.clear(); + cacheSpecialCaseToShow = specialCaseToShow; + for(Pollutant p : allPollutants) { + Integer pollutantID = new Integer(p.databaseKey); + PollutantDisplayGroup group = PollutantDisplayGroup.pollutantDisplayGroups.get(pollutantID); + if(group == null || group.displayGroupID >= 0 || group.displayGroupID == specialCaseToShow) { + allDisplayablePollutants.add(p); + } + } + } + return allDisplayablePollutants.toArray(); + } + + /** + * Clears the static list of Pollutant objects. + **/ + public static void clearAll() { + allPollutants.clear(); + allDisplayablePollutants.clear(); + } + + /** + * Default constructor + * @param key Sets databaseKey. + * @param name Sets pollutantName. + * @param isAffectedByOnroad True when OnRoad can calculate this pollutant + * @param isAffectedByNonroad True when NonRoad can calculate this pollutant + **/ + public Pollutant(int key, String name, + boolean isAffectedByOnroad, boolean isAffectedByNonroad) { + pollutantName = name; + databaseKey = key; + this.isAffectedByOnroad = isAffectedByOnroad; + this.isAffectedByNonroad = isAffectedByNonroad; + if(!allPollutants.contains(this)) { + allPollutants.add(this); + allDisplayablePollutants.clear(); // since group is assigned later, this must be cleared. + } + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Pollutant object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + //return pollutantName.compareTo(((Pollutant)other).pollutantName); + Pollutant p = (Pollutant)other; + int c = pollutantName.compareTo(p.pollutantName); + if(c == 0) { + if(databaseKey == 0 || p.databaseKey == 0) { + return 0; + } + return databaseKey - p.databaseKey; + } + return c; + } + + /** + * Gets a textual representation of the object + * @return the pollutant name + **/ + public String toString() { + return pollutantName; + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantDisplayGroup.java b/gov/epa/otaq/moves/master/framework/PollutantDisplayGroup.java new file mode 100644 index 0000000..4191a28 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantDisplayGroup.java @@ -0,0 +1,164 @@ +/************************************************************************************************** + * @(#)PollutantDisplayGroup.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.Iterator; +import java.util.TreeSet; +import java.util.TreeMap; + +/** + * Represents the displayed pollutants and pollutant groups. + * @author Wesley Faler + * @version 2010-11-26 +**/ +public class PollutantDisplayGroup implements Comparable { + /** List of all pollutant display groups. **/ + public static TreeMap allPollutantDisplayGroups + = new TreeMap(); + + /** The pollutant display group id **/ + public int displayGroupID; + + /** Flag indicating if this is a pollutant or group of pollutants **/ + public boolean displayAsGroup; + + /** Used if individual members within the group are displayed **/ + public int displayMemberID; + + /** The displayed name for the pollutant or pollutant group **/ + public String displayGroupName; + + /** Set of Pollutant IDs in this display group **/ + public TreeSet pollutantIDsInDisplayGroup = new TreeSet(); + + /** List of display group ids for each pollutant **/ + public static TreeMap pollutantDisplayGroups + = new TreeMap(); + + /** true if any pollutant in the group requires distance to be calculated **/ + public boolean requiresDistance = false; + + /** + * Default constructor + * @param pollutantID The ID of a pollutant that is a member of this display group. + * @param displayGroupIDToUse The pollutant display group id. + * @param displayAsGroupToUse Display this pollutant as a group. + * @param displayGroupNameToUse The displayed name of the group. + **/ + public PollutantDisplayGroup(int pollutantID, int displayGroupIDToUse, + boolean displayAsGroupToUse, String displayGroupNameToUse) { + if(displayGroupNameToUse != null + && (displayGroupNameToUse.equalsIgnoreCase("Metals") || displayGroupNameToUse.equalsIgnoreCase("Dioxins and Furans"))) { + requiresDistance = true; + } + + displayGroupID = displayGroupIDToUse; + displayAsGroup = displayAsGroupToUse; + if(displayAsGroup) { + displayGroupName = displayGroupNameToUse; + displayMemberID = -1; + } else { + // Create a "virtual" group with one pollutant. + Pollutant pollutant = Pollutant.findByID(pollutantID); + displayGroupName = pollutant.pollutantName; + displayMemberID = pollutant.databaseKey; + } + Integer pollutantIDObject = new Integer(pollutantID); + PollutantDisplayGroup pollutantDisplayGroup = null; + if(allPollutantDisplayGroups.containsKey(this)) { + pollutantDisplayGroup = (PollutantDisplayGroup)allPollutantDisplayGroups.get(this); + pollutantDisplayGroup.pollutantIDsInDisplayGroup.add(pollutantIDObject); + } else { + pollutantDisplayGroup = this; + pollutantIDsInDisplayGroup.add(pollutantIDObject); + allPollutantDisplayGroups.put(this,this); + } + pollutantDisplayGroups.put(pollutantIDObject, pollutantDisplayGroup); + } + + /** + * Add pollutant's display group to the list of pollutant display groups. + * @param pollutantID The id of the member that is being adding this group. + * @param displayGroupID The id of this display group. + * @param displayAsGroup True if the members of this group are displayed as a group. + * @param displayGroupName The name of this display group. + **/ + public static void add(int pollutantID, int displayGroupID, boolean displayAsGroup, + String displayGroupName) { + new PollutantDisplayGroup(pollutantID,displayGroupID,displayAsGroup,displayGroupName); + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other PollutantDisplayGroup object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + int myDisplayGroupID = Math.abs(displayGroupID); + int otherDisplayGroupID = Math.abs(((PollutantDisplayGroup)other).displayGroupID); + if(myDisplayGroupID < otherDisplayGroupID) { + return -1; + } else if(myDisplayGroupID > otherDisplayGroupID) { + return 1; + } + + if(displayAsGroup) { + return 0; + } + + if(displayMemberID < ((PollutantDisplayGroup)other).displayMemberID) { + return -1; + } else if(displayMemberID > + ((PollutantDisplayGroup)other).displayMemberID) { + return 1; + } + return 0; + } + + /** + * Gets a textual representation of the object + * @return the pollutant name + **/ + public String toString() { + return displayGroupName; + } + + /** + * Find PollutantDisplayGroup by ID + * @param pollutantDisplayGroupID The ID to search for + * @return Returns the associated PollutantDisplayGroup, or null if not found + **/ + public static PollutantDisplayGroup findById(int pollutantDisplayGroupID) { + for (Iterator i = allPollutantDisplayGroups.values().iterator(); + i.hasNext();) { + PollutantDisplayGroup iterPollutantDisplayGroup = (PollutantDisplayGroup)i.next(); + if(iterPollutantDisplayGroup.displayGroupID == pollutantDisplayGroupID) { + return iterPollutantDisplayGroup; + } + } + return null; + } + + /** + * Find a display group for a given pollutant + * @param pollutantID the pollutant to search fo + * @return the PollutantDisplayGroup that uses the pollutant, or null if not found + **/ + public static PollutantDisplayGroup findByPollutantID(int pollutantID) { + Integer id = new Integer(pollutantID); + for (Iterator i = allPollutantDisplayGroups.values().iterator(); + i.hasNext();) { + PollutantDisplayGroup iterPollutantDisplayGroup = (PollutantDisplayGroup)i.next(); + if(iterPollutantDisplayGroup.pollutantIDsInDisplayGroup.contains(id)) { + return iterPollutantDisplayGroup; + } + } + return null; + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantProcessAssociation.java b/gov/epa/otaq/moves/master/framework/PollutantProcessAssociation.java new file mode 100644 index 0000000..d133308 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantProcessAssociation.java @@ -0,0 +1,366 @@ +/************************************************************************************************** + * @(#)PollutantProcessAssociation.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.Logger; +import gov.epa.otaq.moves.common.LogMessageCategory; +import gov.epa.otaq.moves.common.SQLRunner; + +import java.sql.*; +import java.util.*; + +/** + * An object that parallels the database joining record. Used internally by + * PollutantProcessLoader to establish the connections between Pollutant and EmissionProcess. + * It includes an emissionProcess and a pollutant as members. + * + * @author Wesley Faler + * @version 2015-02-05 +**/ +public class PollutantProcessAssociation implements Comparable { + /** + * Map of required input polProcessID for each output polProcessID for Onroad. Keys are Integer objects + * and the data for each is a TreeSet of Integer objects holding the input polProcessIDs. + **/ + private static TreeMap > chainedToMap = new TreeMap >(); + + /** + * Map of required input polProcessID for each output polProcessID for Nonroad. Keys are Integer objects + * and the data for each is a TreeSet of Integer objects holding the input polProcessIDs. + **/ + private static TreeMap > chainedToMapNR = new TreeMap >(); + + /** + * Resets all chaining information. Done prior to rescanning a database. + **/ + public static void clearChainedTo() { + chainedToMap.clear(); + chainedToMapNR.clear(); + } + + /** + * Record the dependence of one pollutant/process on another for Onroad. + * @param outputPolProcessID the pollutant created by the input pollutant + * @param inputPolProcessID the pollutant requried to produce the output pollutant + **/ + public static void addChainedTo(int outputPolProcessID, int inputPolProcessID) { + Integer output = new Integer(outputPolProcessID); + Integer input = new Integer(inputPolProcessID); + TreeSet inputSet = chainedToMap.get(output); + if(inputSet == null) { + inputSet = new TreeSet(); + chainedToMap.put(output,inputSet); + } + inputSet.add(input); + } + + /** + * Record the dependence of one pollutant/process on another for Nonroad. + * @param outputPolProcessID the pollutant created by the input pollutant + * @param inputPolProcessID the pollutant requried to produce the output pollutant + **/ + public static void addChainedToNR(int outputPolProcessID, int inputPolProcessID) { + Integer output = new Integer(outputPolProcessID); + Integer input = new Integer(inputPolProcessID); + TreeSet inputSet = chainedToMapNR.get(output); + if(inputSet == null) { + inputSet = new TreeSet(); + chainedToMapNR.put(output,inputSet); + } + inputSet.add(input); + } + + /** + * Determine if a pollutant/process requires another for its calculation for Onroad. + * @param polProcessID pollutant/process to be checked + * @return null if there are no dependencies, otherwise a TreeSet of polProcessID Integer + * objects for the required inputs. + **/ + public static TreeSet chainedTo(int polProcessID) { + Integer output = new Integer(polProcessID); + TreeSet inputSet = chainedToMap.get(output); + if(inputSet != null && inputSet.size() <= 0) { + inputSet = null; + } + return inputSet; + } + + /** + * Determine if a pollutant/process requires another for its calculation for Nonroad. + * @param polProcessID pollutant/process to be checked + * @return null if there are no dependencies, otherwise a TreeSet of polProcessID Integer + * objects for the required inputs. + **/ + public static TreeSet chainedToNR(int polProcessID) { + Integer output = new Integer(polProcessID); + TreeSet inputSet = chainedToMapNR.get(output); + if(inputSet != null && inputSet.size() <= 0) { + inputSet = null; + } + return inputSet; + } + + /** From master pollutant list **/ + public Pollutant pollutant; + + /** From master emission process list **/ + public EmissionProcess emissionProcess; + + /** For Onroad **/ + public boolean isAffectedByOnroad; + public boolean isChosenForOnroad = false; + + /** For Nonroad **/ + public boolean isAffectedByNonroad; + public boolean isChosenForNonroad = false; + + /** + * Creates a PollutantProcessAssociation object from a pollutant name and a process name. + * @param pollutantName The name of the pollutant. + * @param processName The name of the emisssion process. + * @return The PollutantProcessAssociation object. If either pollutant or process wasn't found + * this will return null. + **/ + public static PollutantProcessAssociation createByName( + String pollutantName, String processName) { + PollutantProcessAssociation result = new PollutantProcessAssociation(); + + result.pollutant = Pollutant.findByName(pollutantName); + result.emissionProcess = EmissionProcess.findByName(processName); + + if((result.pollutant != null) && (result.emissionProcess != null)) { + PollutantProcessLoader.setPollutantProcessAssoc(result); + return result; + } else { + return null; + } + } + + /** + * Creates a PollutantProcessAssociation object from a pollutant ID and a process ID. + * @param pollutantID The ID (databaseKey) of the pollutant. + * @param processID The ID (databaseKey) of the emisssion process. + * @return The PollutantProcessAssociation object. If either pollutant or process wasn't found + * this will return null. + **/ + public static PollutantProcessAssociation createByID(int pollutantID, int processID) { + PollutantProcessAssociation result = new PollutantProcessAssociation(); + + result.pollutant = Pollutant.findByID(pollutantID); + result.emissionProcess = EmissionProcess.findByID(processID); + + if((result.pollutant != null) && (result.emissionProcess != null)) { + PollutantProcessLoader.setPollutantProcessAssoc(result); // check if it is for nonroad/onroad + return result; + } else { + return null; + } + } + + /** + * Create a PollutantProcessAssociation object given a polProcessID. + * @param polProcessID Unique identifier for the pollutant/process association + * @return The PollutantProcessAssociation object. If either pollutant or process wasn't found + * this will return null. + **/ + public static PollutantProcessAssociation createByID(int polProcessID) { + int pollutantID = polProcessID / 100; + int processID = polProcessID % 100; + return createByID(pollutantID, processID); + } + + /** + * Find a PollutantProcessAssociation object from a pollutant name and a process name. + * The combination must be valid or null is returned. + * @param pollutantName The name of the pollutant. + * @param processName The name of the emisssion process. + * @return The PollutantProcessAssociation object. If either pollutant or process wasn't found + * or if the combination requested is not legal, this will return null. + **/ + public static PollutantProcessAssociation findByName( + String pollutantName, String processName) { + PollutantProcessAssociation result = new PollutantProcessAssociation(); + + result.pollutant = Pollutant.findByName(pollutantName); + result.emissionProcess = EmissionProcess.findByName(processName); + + if((result.pollutant != null) && (result.emissionProcess != null)) { + if(result.pollutant.associatedProcesses.contains(result.emissionProcess)) { + PollutantProcessLoader.setPollutantProcessAssoc(result); + return result; + } + } + return null; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other PollutantProcessAssociation object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + PollutantProcessAssociation ppa = (PollutantProcessAssociation)other; + + int result = pollutant.compareTo(ppa.pollutant); + if(result == 0) { + result = emissionProcess.compareTo(ppa.emissionProcess); + } + return result; + } + + /** + * Gets a textual representation of the object + * @return the process name followed by the pollutant name + **/ + public String toString() { + return emissionProcess.toString() + " " + pollutant.toString(); + } + + /** + * Get the polProcessID for the association + * @return the polProcessID of the entry + **/ + public int getDatabaseKey() { + int pollutantID = pollutant.databaseKey; + int processID = emissionProcess.databaseKey; + return pollutantID*100 + processID; + } + + /** + * Lookup the corresponding entry in the PollutantProcessAssoc table. + * @param database a Connection to the execution database + * @return the polProcessID of the matching entry or -1 if not found + **/ + public int getDatabaseKey(Connection database) { + int id = -1; + String sql = ""; + PreparedStatement statement = null; + ResultSet results = null; + try { + sql = "SELECT polProcessID FROM PollutantProcessAssoc " + + "WHERE processID = ? AND pollutantID = ?"; + statement = database.prepareStatement(sql); + statement.setInt(1,emissionProcess.databaseKey); + statement.setInt(2,pollutant.databaseKey); + results = SQLRunner.executeQuery(statement,sql); + if(results != null && results.next()) { + id = results.getInt(1); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Unable to get database key for Pollutant Process Association " + + "where Process ID = " + emissionProcess.databaseKey + " and Pollutant ID = " + + pollutant.databaseKey + ".", sql ); + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return id; + } + + /** + * Check the OpModePolProcessAssoc table for the number of possible operating modes associated + * with this pollutant and process. If 1 (or less), it is expected that EmissionCalculator- + * based classes will change their SQL to not reference the OpModeDistribution table. + * @param database a Connection to the execution database + * @param databaseKey the polProcessID returned by a prior call to getDatabaseKey(...) + * @return true if there is more than 1 operating mode available for this pollutant and process + **/ + public boolean doesHaveMultipleOperatingModes(Connection database, int databaseKey) { + boolean doesHaveMultiple = false; + String sql = ""; + PreparedStatement statement = null; + ResultSet results = null; + try { + sql = "SELECT COUNT(*) FROM OpModePolProcAssoc WHERE polProcessID=?"; + statement = database.prepareStatement(sql); + statement.setInt(1,databaseKey); + results = SQLRunner.executeQuery(statement,sql); + if(results != null && results.next()) { + int count = results.getInt(1); + if(count > 1) { + doesHaveMultiple = true; + } + } + } catch(SQLException e) { + Logger.logSqlError(e, "Unable to count operating modes for polProcessID = " + + databaseKey + ".", sql ); + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return doesHaveMultiple; + } + + /** + * Get the single opModeID associated with this pollutant and process. The results of this + * routine are only valid for pollutants and processes that cause the + * doesHaveMultipleOperatingModes(...) routine to return false. + * @param database a Connection to the execution database + * @param databaseKey the polProcessID returned by a prior call to getDatabaseKey(...) + * @return the opModeID for the polProcessID or 0 if not found. + **/ + public int getSingleOpModeID(Connection database, int databaseKey) { + int opModeID = 0; + String sql = ""; + PreparedStatement statement = null; + ResultSet results = null; + try { + sql = "SELECT opModeID FROM OpModePolProcAssoc WHERE polProcessID=? LIMIT 1"; + statement = database.prepareStatement(sql); + statement.setInt(1,databaseKey); + results = SQLRunner.executeQuery(statement,sql); + if(results != null && results.next()) { + opModeID = results.getInt(1); + } + } catch(SQLException e) { + Logger.logSqlError(e, "Unable to get single opModeID for polProcessID = " + + databaseKey + ".", sql ); + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return opModeID; + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantProcessAssociationTest.java b/gov/epa/otaq/moves/master/framework/PollutantProcessAssociationTest.java new file mode 100644 index 0000000..d632f77 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantProcessAssociationTest.java @@ -0,0 +1,53 @@ +/************************************************************************************************** + * @(#)PollutantProcessAssociationTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the PollutantProcessAssociation class + * + * @author Wesley Faler + * @version 2012-11-07 +**/ +public class PollutantProcessAssociationTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public PollutantProcessAssociationTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testPollutantProcessAssociation() { + EmissionProcess process1 = new EmissionProcess(3001, "process1", "Y", true, true); + EmissionProcess process2 = new EmissionProcess(3002, "process2", "Y", true, true); + Pollutant pollutant1 = new Pollutant(5001, "pollutant1", true, true); + Pollutant pollutant2 = new Pollutant(5002, "pollutant2", true, true); + PollutantProcessAssociation test1 = new PollutantProcessAssociation(); + test1.pollutant = pollutant1; + test1.emissionProcess = process1; + PollutantProcessAssociation test2 = new PollutantProcessAssociation(); + test2.pollutant = pollutant2; + test2.emissionProcess = process2; + PollutantProcessAssociation test3 = new PollutantProcessAssociation(); + test3.pollutant = pollutant1; + test3.emissionProcess = process2; + PollutantProcessAssociation test4 = test3; + assertTrue(test1 != test2); + assertTrue(test1.compareTo(test2) != 0); + assertTrue(test1 != test4); + assertTrue(test1.compareTo(test4) != 0); + assertTrue(test3 == test4); + assertTrue(test3.compareTo(test4) == 0); + test4.pollutant = pollutant1; + test4.emissionProcess = process2; + assertTrue(test3 == test4); + assertTrue(test3.compareTo(test4) == 0); + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantProcessLoader.java b/gov/epa/otaq/moves/master/framework/PollutantProcessLoader.java new file mode 100644 index 0000000..f6cbaa3 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantProcessLoader.java @@ -0,0 +1,268 @@ +/************************************************************************************************** + * @(#)PollutantProcessLoader.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.Iterator; +import java.util.TreeSet; +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.gui.MOVESNavigation; +import gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator; + +/** + * Utility that loads all process and pollutant information from the database into Java + * objects. Establishes appropriate connections between them. + * + * @author Wesley Faler + * @author Ed Glover (minor mods - task 219) + * @author Ed Glover & William Aikman + * @version 2015-02-05 +**/ +public class PollutantProcessLoader { + /** Flags that the pollutant processes have been loaded from the database. **/ + static boolean isLoaded = false; + + /** + * Returns whether the pollutant processes have been loaded. + * @return True if the Pollutant Processes have been loaded. + **/ + public static boolean isLoaded() { + return isLoaded; + } + + /** Performs the load from database to Java objects. **/ + public static void loadFromDatabase() { + //Pollutant.clearAll(); + //EmissionProcess.clearAll(); + isLoaded = false; + + TreeSet associations = new TreeSet(); + Connection db = null; + boolean hasNonroad = false; + + Models.ModelCombination mc; + if (MOVESNavigation.singleton != null + && MOVESNavigation.singleton.parent != null + && MOVESNavigation.singleton.parent.runSpec != null) { + mc = MOVESNavigation.singleton.parent.runSpec.getModelCombination(); + } else { + mc = Models.ModelCombination.M0; + } + hasNonroad = mc == Models.ModelCombination.M2; + TreeSet nonroadPolProcessIDs = new TreeSet(); + if(hasNonroad) { + for(int i=0;i 0) { + PollutantProcessAssociation.addChainedTo(polProcessID, chainedTo1); + } + int chainedTo2 = results.getInt(5); + if(chainedTo2 > 0) { + PollutantProcessAssociation.addChainedTo(polProcessID, chainedTo2); + } + } + + int nrChainedTo1 = results.getInt(6); + if(nrChainedTo1 > 0) { + PollutantProcessAssociation.addChainedToNR(polProcessID, nrChainedTo1); + } + int nrChainedTo2 = results.getInt(7); + if(nrChainedTo2 > 0) { + PollutantProcessAssociation.addChainedToNR(polProcessID, nrChainedTo2); + } + } + results.close(); + } + statement.close(); + + isLoaded = true; + } catch(Exception e) { + /** + * @explain The set of pollutants and processes could not be loaded from the + * database. Check the default input database for completeness. + **/ + Logger.logError(e, "Loading Pollutants and Processes from the database failed."); + } + + for (Iterator i = associations.iterator(); i.hasNext();) { + PollutantProcessAssociation iterAssociation = (PollutantProcessAssociation) i.next(); + iterAssociation.pollutant.associatedProcesses.add(iterAssociation.emissionProcess); + iterAssociation.emissionProcess.associatedPollutants.add(iterAssociation.pollutant); + } + + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + } + } + + /** + * Fill flags for which models affect a pollutant/process association. + * @param assoc association to be completed + **/ + public static void setPollutantProcessAssoc(PollutantProcessAssociation assoc) { + Connection db = null; + + String sql = "SELECT isAffectedByOnroad, isAffectedByNonroad" + + " FROM pollutantprocessassoc where pollutantID=" + + assoc.pollutant.databaseKey + " and processID=" + + assoc.emissionProcess.databaseKey; + SQLRunner.Query query = new SQLRunner.Query(); + + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + query.open(db,sql); + if(query.rs.next()) { + assoc.isAffectedByOnroad = query.rs.getBoolean(1); + assoc.isAffectedByNonroad = query.rs.getBoolean(2); + } else { + // Cannot throw an exception here as no calling routine can itself throw + // an exception without major changes. Adding a try/catch to the calling + // routines would mean this exception gets discarded anyway, so there is + // no point to throwing it ever. + //throw new Exception("No results or result set's size is not 1."); + } + } catch (Exception e) { + /** + * @explain The set of pollutants and processes could not be loaded + * from the database. Check the default input database for + * completeness. + **/ + Logger.logError(e,"Set pollutant and process association from the database failed."); + } finally { + query.onFinally(); + if (db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, db); + } + } + } + + public static Boolean getBooleanColVal(String col, int pollutantID, + int processID) { + Connection db = null; + + String sql = "SELECT " + col + + " FROM pollutantprocessassoc where pollutantID=" + + pollutantID + " and processID=" + processID; + + Boolean boolVal = null; + PreparedStatement statement = null; + ResultSet results = null; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement, sql); + if (results == null) { + throw new Exception("No results."); + } + if (results.next()) { + boolVal = results.getBoolean(1); + } + } catch (Exception e) { + Logger.logError(e, "getBooleanColVal from the database failed."); + } finally { + try { + if (results != null) + results.close(); + if (statement != null) + statement.close(); + } catch (Exception e1) { + Logger.logError(e1, "Could not close results or statement."); + } + if (db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT, db); + } + } + return boolVal; + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantProcessLoaderTest.java b/gov/epa/otaq/moves/master/framework/PollutantProcessLoaderTest.java new file mode 100644 index 0000000..4fd4b93 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantProcessLoaderTest.java @@ -0,0 +1,30 @@ +/************************************************************************************************** + * @(#)PollutantProcessLoaderTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the PollutantProcessLoader class + * + * @author Cimulus + * @version 2003-02-03 +**/ +public class PollutantProcessLoaderTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public PollutantProcessLoaderTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testLoad() { + PollutantProcessLoader.loadFromDatabase(); + } +} diff --git a/gov/epa/otaq/moves/master/framework/PollutantTest.java b/gov/epa/otaq/moves/master/framework/PollutantTest.java new file mode 100644 index 0000000..9222a25 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/PollutantTest.java @@ -0,0 +1,50 @@ +/************************************************************************************************** + * @(#)PollutantTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the Pollutant class + * + * @author Cimulus + * @version 2003-02-07 +**/ +public class PollutantTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public PollutantTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testPollutant() { + int pollutantInstanceCount = Pollutant.allPollutants.size(); + Pollutant p1 = new Pollutant(5001, "p1", true, true); + assertTrue(Pollutant.allPollutants.size() == pollutantInstanceCount + 1); + pollutantInstanceCount = Pollutant.allPollutants.size(); + Pollutant p2 = new Pollutant(5002, "p2", true, true); + assertTrue(Pollutant.allPollutants.size() == pollutantInstanceCount + 1); + pollutantInstanceCount = Pollutant.allPollutants.size(); + Pollutant p3 = new Pollutant(5003, "p3", true, true); + assertTrue(Pollutant.allPollutants.size() == pollutantInstanceCount + 1); + + Pollutant firstTestPollutant = Pollutant.findByName("this doesn't exist"); + assertNull(firstTestPollutant); + firstTestPollutant = Pollutant.findByName("p2"); + assertNotNull(firstTestPollutant); + + Pollutant secondTestPollutant = Pollutant.findByName("p3"); + assertTrue(firstTestPollutant != secondTestPollutant); + assertTrue(firstTestPollutant.compareTo(secondTestPollutant) != 0); + secondTestPollutant = Pollutant.findByName("p2"); + assertTrue(firstTestPollutant == secondTestPollutant); + assertTrue(firstTestPollutant.compareTo(secondTestPollutant) == 0); + } +} diff --git a/gov/epa/otaq/moves/master/framework/RoadType.java b/gov/epa/otaq/moves/master/framework/RoadType.java new file mode 100644 index 0000000..fbf4495 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/RoadType.java @@ -0,0 +1,133 @@ +/************************************************************************************************** + * @(#)RoadType.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.common.*; + +/** + * Represents a single road type. + * + * @author Wesley Faler + * @version 2013-02-21 +**/ +public class RoadType implements Comparable { + /** Set of all active RoadType instances **/ + static TreeSet allRoadTypes = new TreeSet(); + + /** ID of the RoadType **/ + public int roadTypeID; + + /** Name of the RoadType **/ + public String roadTypeName = ""; + + /** Used by what models **/ + public Models.ModelCombination mc = Models.ModelCombination.M1; + + /** + * Gets a RoadType by name + * @param roadTypeName The name to search for + * @return Returns the associated RoadType, or null if not found + **/ + public static RoadType findByName(String roadTypeName) { + for(Iterator iterRoadType = allRoadTypes.iterator(); + iterRoadType.hasNext();) { + RoadType roadType = (RoadType)iterRoadType.next(); + if (roadType.roadTypeName.compareToIgnoreCase(roadTypeName) == 0) { + return roadType; + } + } + return null; + } + + /** + * Determines if a roadtype is in the database. + * @param roadTypeID The roadtype ID. + * @param roadTypeName The roadtype name. + * @return Returns true if the id and name are in the database. + **/ + public static boolean isInDatabase(int roadTypeID, String roadTypeName) { + boolean foundRoadType = false; + Connection db = null; + + String sql = "SELECT COUNT(*) FROM RoadType WHERE roadTypeID = " + roadTypeID + " AND roadDesc = '" + + roadTypeName + "'"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + query.open(db,sql); + if(query.rs.next()) { + foundRoadType = (query.rs.getInt(1) > 0); + } + } catch(Exception e) { + /** @explain A database error occurred while verifying a road type's information **/ + Logger.logError(e, "Verifying if roadtype is in the database."); + } finally { + query.onFinally(); + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + } + } + + return foundRoadType; + } + + /** Default constructor **/ + public RoadType() { + } + + /** + * Constructor + * @param id Sets the roadTypeID + * @param name Sets the roadTypeName. + * @param mc onroad, nonroad, or both that uses this road type + **/ + public RoadType(int id, String name, Models.ModelCombination mc) { + roadTypeID = id; + roadTypeName = name; + this.mc = mc; + allRoadTypes.add(this); + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other RoadType object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + RoadType otherRoadType = (RoadType)other; + if(otherRoadType == null) { + return +1; + } + if(otherRoadType.roadTypeID == roadTypeID) { + return 0; + } + return roadTypeName.compareToIgnoreCase(((RoadType)other).roadTypeName); + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other RoadType object to compare for equal names. + * @return true if they are the same, and false otherwise + **/ + public boolean equals(Object other) { + return compareTo((RoadType)other) == 0; + } + + /** + * This method is implemented to provide support for various GUI controls. + * Standard function to get a textual representation of an object. + * @return Textual description of the selection. + **/ + public String toString() { + return roadTypeName; + } +} diff --git a/gov/epa/otaq/moves/master/framework/RoadTypeTest.java b/gov/epa/otaq/moves/master/framework/RoadTypeTest.java new file mode 100644 index 0000000..9dc20ff --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/RoadTypeTest.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)RoadTypeTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.Models; + +import java.sql.*; +import junit.framework.*; + +/** + * Test Case for the RoadType class + * + * @author Wesley Faler + * @version 2012-11-07 +**/ +public class RoadTypeTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public RoadTypeTest(String name) { + super(name); + } + + /** Implements the test case(s). **/ + public void testCase() { + RoadType type1 = new RoadType(1,"type1", Models.ModelCombination.M1); + RoadType testRoadType = RoadType.findByName("type1"); + assertNotNull(testRoadType); + assertTrue(type1.compareTo(testRoadType) == 0); + assertTrue(type1 == testRoadType); + RoadType type2 = new RoadType(2,"type2", Models.ModelCombination.M1); + testRoadType = RoadType.findByName("type2"); + assertNotNull(testRoadType); + assertTrue(type2 == testRoadType); + assertTrue(type2.compareTo(testRoadType) == 0); + assertTrue(type1.compareTo(type2) != 0); + assertTrue(type1 != type2); + // Verify invalid + assertNull(RoadType.findByName(" ")); + } +} diff --git a/gov/epa/otaq/moves/master/framework/SCC.java b/gov/epa/otaq/moves/master/framework/SCC.java new file mode 100644 index 0000000..46e05ae --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SCC.java @@ -0,0 +1,281 @@ +/************************************************************************************************** + * @(#)SCC.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.sql.ResultSet; +import java.sql.SQLException; + +/** + * Represents one record in the SCC table. + * + * @author Cimulus + * @version 2003-01-27 +**/ +public class SCC implements Comparable { + /** The SCC field in the SCC table **/ + public String scc; + /** The Part5VClass field in the SCC table **/ + public int part5VClass; + /** The HPMSRoadType field in the SCC table **/ + public int HPMSRoadType; + /** The Segment field in the SCC table **/ + public int segment; + /** The FuelType field in the SCC table **/ + public String fuelType; + /** The Strokes field in the SCC table **/ + public int strokes; + /** The Part5VClassDesc field in the SCC table **/ + public String part5VClassDesc; + /** The RoadwayTypeDesc field in the SCC table **/ + public String roadwayTypeDesc; + /** The SegmentDesc field in the SCC table **/ + public String segmentDesc; + /** The SCCDesc field in the SCC table **/ + public String SCCDesc; + /** The mgNH3perGallon field in the SCC table **/ + public double mgNH3perGallon; + /** The BenzExhGas field in the SCC table **/ + public double benzExhGas; + /** The BenzExhEth field in the SCC table **/ + public double benzExhEth; + /** The BenzExhMTBE field in the SCC table **/ + public double benzExhMTBE; + /** The BenzExhRFG field in the SCC table **/ + public double benzExhRFG; + /** The BenzEvapGas field in the SCC table **/ + public double benzEvapGas; + /** The BenzEvapEth field in the SCC table **/ + public double benzEvapEth; + /** The BenzEvapMTBE field in the SCC table **/ + public double benzEvapMTBE; + /** The BenzEvapRFG field in the SCC table **/ + public double benzEvapRFG; + /** The ButaExhGas field in the SCC table **/ + public double butaExhGas; + /** The ButaExhEth field in the SCC table **/ + public double butaExhEth; + /** The ButaExhMTBE field in the SCC table **/ + public double butaExhMTBE; + /** The ButaExhRFG field in the SCC table **/ + public double butaExhRFG; + /** The FormExhGas field in the SCC table **/ + public double formExhGas; + /** The FormExhEth field in the SCC table **/ + public double formExhEth; + /** The FormExhMTBE field in the SCC table **/ + public double formExhMTBE; + /** The FormExhRFG field in the SCC table **/ + public double formExhRFG; + /** The AcetExhGas field in the SCC table **/ + public double acetExhGas; + /** The AcetExhEth field in the SCC table **/ + public double acetExhEth; + /** The AcetExhMTBE field in the SCC table **/ + public double acetExhMTBE; + /** The AcetExhRFG field in the SCC table **/ + public double acetExhRFG; + /** The AcroExhGas field in the SCC table **/ + public double acroExhGas; + /** The AcroExhEth field in the SCC table **/ + public double acroExhEth; + /** The AcroExhMTBE field in the SCC table **/ + public double acroExhMTBE; + /** The AcroExhRFG field in the SCC table **/ + public double acroExhRFG; + /** The MTBEExhGas field in the SCC table **/ + public double MTBEExhGas; + /** The MTBEExhEth field in the SCC table **/ + public double MTBEExhEth; + /** The MTBEExhMTBE field in the SCC table **/ + public double MTBEExhMTBE; + /** The MTBEExhRFG field in the SCC table **/ + public double MTBEExhRFG; + /** The MTBEEvapGas field in the SCC table **/ + public double MTBEEvapGas; + /** The MTBEEvapEth field in the SCC table **/ + public double MTBEEvapEth; + /** The MTBEEvapMTBE field in the SCC table **/ + public double MTBEEvapMTBE; + /** The MTBEEvapRFG field in the SCC table **/ + public double MTBEEvapRFG; + /** The BenzExhDies field in the SCC table **/ + public double benzExhDies; + /** The ButaExhDies field in the SCC table **/ + public double butaExhDies; + /** The FormExhDies field in the SCC table **/ + public double formExhDies; + /** The AcetExhDies field in the SCC table **/ + public double acetExhDies; + /** The AcroExhDies field in the SCC table **/ + public double acroExhDies; + /** The TOGfac field in the SCC table **/ + public double togFac; + /** The NMOGfac field in the SCC table **/ + public double nmogFac; + /** The NMHCfac field in the SCC table **/ + public double nmhcFac; + /** The VOCfac field in the SCC table **/ + public double vocFac; + /** The PM25fac field in the SCC table **/ + public double pm25Fac; + /** The SOAfac field in the SCC table **/ + public double soaFac; + + /** + * Constructor + **/ + public SCC() { + scc = ""; + part5VClass = 0; + HPMSRoadType = 0; + segment = 0; + fuelType = ""; + strokes = 0; + part5VClassDesc = ""; + roadwayTypeDesc = ""; + segmentDesc = ""; + SCCDesc = ""; + mgNH3perGallon = 0.0; + benzExhGas = 0.0; + benzExhEth = 0.0; + benzExhMTBE = 0.0; + benzExhRFG = 0.0; + benzEvapGas = 0.0; + benzEvapEth = 0.0; + benzEvapMTBE = 0.0; + benzEvapRFG = 0.0; + butaExhGas = 0.0; + butaExhEth = 0.0; + butaExhMTBE = 0.0; + butaExhRFG = 0.0; + formExhGas = 0.0; + formExhEth = 0.0; + formExhMTBE = 0.0; + formExhRFG = 0.0; + acetExhGas = 0.0; + acetExhEth = 0.0; + acetExhMTBE = 0.0; + acetExhRFG = 0.0; + acroExhGas = 0.0; + acroExhEth = 0.0; + acroExhMTBE = 0.0; + acroExhRFG = 0.0; + MTBEExhGas = 0.0; + MTBEExhEth = 0.0; + MTBEExhMTBE = 0.0; + MTBEExhRFG = 0.0; + MTBEEvapGas = 0.0; + MTBEEvapEth = 0.0; + MTBEEvapMTBE = 0.0; + MTBEEvapRFG = 0.0; + benzExhDies = 0.0; + butaExhDies = 0.0; + formExhDies = 0.0; + acetExhDies = 0.0; + acroExhDies = 0.0; + togFac = 0.0; + nmogFac = 0.0; + nmhcFac = 0.0; + vocFac = 0.0; + pm25Fac = 0.0; + soaFac = 0.0; + } + + /** + * Loads the SCC fields from the record on which the result set is currently positioned. + * Expects all columns to have been selected, but gets values by column name, rather + * than index, so the columns can be selected in any order. + * @param resultSet A valid result set positioned on the record to be loaded. + * @throws SQLException If there is an error getting a value. + **/ + public void loadFromResultSet(ResultSet resultSet) throws SQLException { + scc = resultSet.getString("SCC"); + part5VClass = resultSet.getInt("Part5VClass"); + HPMSRoadType = resultSet.getInt("HPMSRoadType"); + segment = resultSet.getInt("Segment"); + fuelType = resultSet.getString("FuelType"); + strokes = resultSet.getInt("Strokes"); + part5VClassDesc = resultSet.getString("Part5VClassDesc"); + roadwayTypeDesc = resultSet.getString("RoadwayTypeDesc"); + segmentDesc = resultSet.getString("SegmentDesc"); + SCCDesc = resultSet.getString("SCCDesc"); + mgNH3perGallon = resultSet.getDouble("mgNH3perGallon"); + benzExhGas = resultSet.getDouble("BenzExhGas"); + benzExhEth = resultSet.getDouble("BenzExhEth"); + benzExhMTBE = resultSet.getDouble("BenzExhMTBE"); + benzExhRFG = resultSet.getDouble("BenzExhRFG"); + benzEvapGas = resultSet.getDouble("BenzEvapGas"); + benzEvapEth = resultSet.getDouble("BenzEvapEth"); + benzEvapMTBE = resultSet.getDouble("BenzEvapMTBE"); + benzEvapRFG = resultSet.getDouble("BenzEvapRFG"); + butaExhGas = resultSet.getDouble("ButaExhGas"); + butaExhEth = resultSet.getDouble("ButaExhEth"); + butaExhMTBE = resultSet.getDouble("ButaExhMTBE"); + butaExhRFG = resultSet.getDouble("ButaExhRFG"); + formExhGas = resultSet.getDouble("FormExhGas"); + formExhEth = resultSet.getDouble("FormExhEth"); + formExhMTBE = resultSet.getDouble("FormExhMTBE"); + formExhRFG = resultSet.getDouble("FormExhRFG"); + acetExhGas = resultSet.getDouble("AcetExhGas"); + acetExhEth = resultSet.getDouble("AcetExhEth"); + acetExhMTBE = resultSet.getDouble("AcetExhMTBE"); + acetExhRFG = resultSet.getDouble("AcetExhRFG"); + acroExhGas = resultSet.getDouble("AcroExhGas"); + acroExhEth = resultSet.getDouble("AcroExhEth"); + acroExhMTBE = resultSet.getDouble("AcroExhMTBE"); + acroExhRFG = resultSet.getDouble("AcroExhRFG"); + MTBEExhGas = resultSet.getDouble("MTBEExhGas"); + MTBEExhEth = resultSet.getDouble("MTBEExhEth"); + MTBEExhMTBE = resultSet.getDouble("MTBEExhMTBE"); + MTBEExhRFG = resultSet.getDouble("MTBEExhRFG"); + MTBEEvapGas = resultSet.getDouble("MTBEEvapGas"); + MTBEEvapEth = resultSet.getDouble("MTBEEvapEth"); + MTBEEvapMTBE = resultSet.getDouble("MTBEEvapMTBE"); + MTBEEvapRFG = resultSet.getDouble("MTBEEvapRFG"); + benzExhDies = resultSet.getDouble("BenzExhDies"); + butaExhDies = resultSet.getDouble("ButaExhDies"); + formExhDies = resultSet.getDouble("FormExhDies"); + acetExhDies = resultSet.getDouble("AcetExhDies"); + acroExhDies = resultSet.getDouble("AcroExhDies"); + togFac = resultSet.getDouble("TOGfac"); + nmogFac = resultSet.getDouble("NMOGfac"); + nmhcFac = resultSet.getDouble("NMHCfac"); + vocFac = resultSet.getDouble("VOCfac"); + pm25Fac = resultSet.getDouble("PM25fac"); + soaFac = resultSet.getDouble("SOAfac"); + } + + /** + * Comparison routine used to sort these objects for display purposes. + * Compares the scc code only (case-insensitive). + * @param other another SCC to compare to + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof SCC) { + SCC otherSelection = (SCC)other; + return scc.compareToIgnoreCase(otherSelection.scc); + } else { + throw new ClassCastException(); + } + } + + /** + * Comparison routine to test for equality. + * @param other another SCC to compare to + * @return true if compareTo returns 0 + **/ + public boolean equals(Object other) { + if(other instanceof SCC) { + if(0 == compareTo(other)) { + return true; + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/master/framework/SCCFuelType.java b/gov/epa/otaq/moves/master/framework/SCCFuelType.java new file mode 100644 index 0000000..a757f0a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SCCFuelType.java @@ -0,0 +1,75 @@ +/************************************************************************************************** + * @(#)SCCFuelType.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * This class, which acts like a "typesafe enum", describes an SCC fuel type. + * + * @author Cimulus + * @version 2004-01-06 +**/ +public class SCCFuelType { + /** The number of SCCFuelType instances **/ + public static final int NUM_TYPES = 4; + + /** All SCCFuelType instances **/ + private static SCCFuelType[] allFuelTypes = new SCCFuelType[NUM_TYPES]; + + /** Enumerated type for compressed natural gas. **/ + public static final SCCFuelType CNG = new SCCFuelType(0, "CNG"); + /** Enumerated type for gasoline. **/ + public static final SCCFuelType GAS = new SCCFuelType(1, "Gas"); + /** Enumerated type for diesel. **/ + public static final SCCFuelType DIESEL = new SCCFuelType(2, "Dies"); + /** Enumerated type for liquefied petroleum gas. **/ + public static final SCCFuelType LPG = new SCCFuelType(2, "LPG"); + + /** Numeric array index. Must be unique and less than NUM_TYPES. **/ + private int arrayIndex; + /** The textual name of the type. **/ + private String name; + + /** + * Constructor, but private, and as such this class can not be instantiated except + * by the static types defined above. + * + * @param arrayIndex Numeric array index. Must be unique and less than NUM_TYPES + * @param name Textual name of the type. + **/ + private SCCFuelType(int arrayIndex, String name) { + this.arrayIndex = arrayIndex; + this.name = name; + + allFuelTypes[arrayIndex] = this; + } + + /** + * Provides the textual name of the type. + * + * @return The textual name of the type. + **/ + public String toString() { + return name; + } + + /** + * Gets the enum associated with the given name + * + * @param name The target textual name. + * @return The matching enum value or null if there is no match. + **/ + public static SCCFuelType getTypeByName(String name) { + for(int i = 0; i < NUM_TYPES; i++) { + if ((allFuelTypes[i] != null) + && (allFuelTypes[i].name.compareToIgnoreCase(name) == 0)) { + return allFuelTypes[i]; + } + } + + return null; + } +} diff --git a/gov/epa/otaq/moves/master/framework/SCCTest.java b/gov/epa/otaq/moves/master/framework/SCCTest.java new file mode 100644 index 0000000..507061a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SCCTest.java @@ -0,0 +1,50 @@ +/************************************************************************************************** + * @(#)SCCTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.*; + +/** + * Test Case for the SCC class + * + * @author Wesley Faler + * @version 2009-04-05 +**/ +public class SCCTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SCCTest(String name) { + super(name); + } + + /** + * Tests the compareTo() function. + **/ + public void testCompareTo() { + SCC firstSCC = new SCC(); + firstSCC.scc = "scc 1"; + SCC secondSCC = new SCC(); + secondSCC.scc = "scc 1"; + assertTrue(firstSCC.compareTo(secondSCC) == 0); + assertTrue(secondSCC.compareTo(firstSCC) == 0); + secondSCC.scc = "scc 2"; + assertTrue(firstSCC.compareTo(secondSCC) < 0); + assertTrue(secondSCC.compareTo(firstSCC) > 0); + + // Test implicit use of compareTo from use of TreeSet + TreeSet testTreeSet = new TreeSet(); + testTreeSet.add(firstSCC); + testTreeSet.add(secondSCC); + } +} diff --git a/gov/epa/otaq/moves/master/framework/SQLForWorker.java b/gov/epa/otaq/moves/master/framework/SQLForWorker.java new file mode 100644 index 0000000..a922dbf --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SQLForWorker.java @@ -0,0 +1,56 @@ +/************************************************************************************************** + * @(#)SQLForWorker.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.util.LinkedList; + +/** + * Contains the SQL that is needed to provide work to a distributed worker. + * + * @author Wesley Faler + * @version 2015-02-08 +**/ +public class SQLForWorker { + /** + * Contains a list of String objects that are SQL statements that export the data that will + * be needed by the worker. + **/ + public LinkedList dataExportSQL = new LinkedList(); + + /** + * Contains a list of String objects that are SQL statements that remove generated data + * from the Master's database. That is, once data has been extracted and sent to workers + * for remote consideration, it can be removed from the local Master's database. + * Calculators should add their SQL to the end of this list. + **/ + public LinkedList localDataRemovalSQL = new LinkedList(); + + /** + * Contains a list of String objects that are SQL statements that the worker will need to + * execute. Calculators should add their SQL to the end of this list. + **/ + public LinkedList processingSQL = new LinkedList(); + + /** + * Contains a list of String objects that are SQL statements that the worker will need to + * execute in order to cleanup any intermediate calculation tables. Calculators should add + * their SQL to the beginning of this list. + **/ + public LinkedList cleanupSQL = new LinkedList(); + + /** + * Contains a list of String objects that are module names and flags to be passed + * to an external calculator. + **/ + public LinkedList externalModules = new LinkedList(); + + /** + * Default constructor + **/ + public SQLForWorker() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/SQLForWorkerTest.java b/gov/epa/otaq/moves/master/framework/SQLForWorkerTest.java new file mode 100644 index 0000000..8628ebc --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SQLForWorkerTest.java @@ -0,0 +1,35 @@ +/************************************************************************************************** + * @(#)SQLForWorkerTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the SQLForWorker class + * + * @author Cimulus + * @version 2003-02-12 +**/ +public class SQLForWorkerTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SQLForWorkerTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testCase() { + // Simple check on data members + SQLForWorker sqlForWorker = new SQLForWorker(); + assertNotNull(sqlForWorker.dataExportSQL); + assertNotNull(sqlForWorker.processingSQL); + assertTrue(sqlForWorker.dataExportSQL.size() == 0); + assertTrue(sqlForWorker.processingSQL.size() == 0); + } +} diff --git a/gov/epa/otaq/moves/master/framework/SQLMacroExpander.java b/gov/epa/otaq/moves/master/framework/SQLMacroExpander.java new file mode 100644 index 0000000..ec760d7 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SQLMacroExpander.java @@ -0,0 +1,318 @@ +/************************************************************************************************** + * @(#)SQLMacroExpander.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.util.*; +import java.sql.*; + +/** + * Duplicate SQL statements using macros, as needed for making tables smaller and faster. + * + * @author Wesley Faler + * @version 2015-02-14 +**/ +public class SQLMacroExpander { + static class ValueSet implements PermutationCreator.IDimension { + String id; + String[] names; + String[] lowerCaseNames; + int rows = 0; + String[] data = null; + String[] currentValues = null; + + public ValueSet() { + clear(); + } + + public ValueSet(String idToUse) { + id = idToUse; + clear(); + } + + public void clear() { + rows = 0; + data = null; + currentValues = null; + } + + public int dimensionSize() { + return rows; + } + + public void applyIndex(int index) { + if(currentValues == null) { + currentValues = new String[names.length]; + } + if(rows <= 0) { + for(int i=0;i sets = new ArrayList(); + /** Names from ValueSets as keys, with the corresponding ValueSet as data. **/ + static TreeMapIgnoreCase compiledNames = null; + + /** Reset all stored macro sets **/ + public static void reset() { + sets.clear(); + } + + /** Compile all names for quick processing **/ + public static void compile() { + compiledNames = new TreeMapIgnoreCase(); + for(int i=0;i 0) { + set.data = new String[set.rows * set.names.length]; + } + int dataIndex = 0; + while(query.rs.next()) { + for(int i=1;i<=columnCount;i++) { + set.data[dataIndex++] = StringUtilities.safeGetString(query.rs.getString(i)); + } + } + + add(set); + } finally { + query.onFinally(); + } + } + + /** + * Add CSV lines compatible with SQL IN clauses. Include macros that are length limited + * ("##macro.csv.COLUMN##") and one that has all values ("##macro.csv.all.COLUMN##"). + * An optional default value can be used in the event there is no data. It is highly recommended + * that this be used as it prevents empty IN clauses which cause syntax errors. + * @param db database connection to be used + * @param sql statement with the macro column + * @param maxLength optional maximum length of each CSV line. When set to 0 or less, no limit is used. + * @param shouldAddQuotes true if the retrieved data is textual and should have quotation marks placed around it. + * @param useDefaultValueInData true if the CSV lines should include the default value even when + * data has been found. Set this to true if your data uses the default value as a form of wildcard + * value in the database. + * @param defaultValue optional default value. Set to null if no default is desired. Do not include quotation + * marks/apostrophes if shouldAddQuotes is true. A zero length string is acceptable when shouldAddQuotes + * is true, otherwise it is ignored as using no default value. + * @throws SQLException if anything goes wrong + **/ + public static void addCSVData(Connection db, String sql, int maxLength, + boolean shouldAddQuotes, + boolean useDefaultValueInData, String defaultValue) throws SQLException { + boolean hasDefaultValue = defaultValue != null && (shouldAddQuotes || defaultValue.length() > 0); + if(hasDefaultValue && shouldAddQuotes) { + defaultValue = DatabaseUtilities.escapeSQL(defaultValue,true); + } + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + ResultSetMetaData metaData = query.rs.getMetaData(); + String columnName = metaData.getColumnLabel(1); + TreeSet uniqueValues = new TreeSet(); + if(hasDefaultValue) { + uniqueValues.add(defaultValue); + } + + while(query.rs.next()) { + String t = query.rs.getString(1); + if(t == null || (!shouldAddQuotes && t.length() <=0)) { + continue; + } + if(shouldAddQuotes) { + t = DatabaseUtilities.escapeSQL(t,true); + } + uniqueValues.add(t); + } + query.onFinally(); + + if(!useDefaultValueInData && hasDefaultValue) { + uniqueValues.remove(defaultValue); + } + String all = "", current = ""; + ArrayList rows = new ArrayList(); + for(Iterator i=uniqueValues.iterator();i.hasNext();) { + String t = i.next(); + if(all.length() > 0) { + all += ","; + } + all += t; + + if(current.length() > 0) { + current += ","; + } + current += t; + if(maxLength > 0 && current.length() >= maxLength) { + rows.add(current); + current = ""; + } + } + if(current.length() > 0) { + rows.add(current); + current = ""; + } + if(rows.size() <= 0 && hasDefaultValue) { + rows.add(defaultValue); + all = defaultValue; + } + + // Add "##macro.csv.COLUMN## + ValueSet set = findOrCreate("csv|" + sql,true); + set.rows = rows.size(); + set.names = new String[1]; + set.names[0] = "##macro.csv." + columnName + "##"; + if(set.rows > 0) { + set.data = new String[set.rows]; + } + for(int i=0;i 0) { + set.rows = 1; + set.names = new String[1]; + set.names[0] = "##macro.csv.all." + columnName + "##"; + set.data = new String[1]; + set.data[0] = all; + //Logger.log(LogMessageCategory.INFO,set.names[0]+"="+all); + } + add(set); + } finally { + query.onFinally(); + } + } + + /** + * Expand a string if it contains any macro elements. The expanded strings are added + * to an accumulated list of lines. If no macro elemets are found, the raw line is + * added to the accumulated list. + * @param rawLine candiate line + * @param lines accumulated lines + **/ + public static void expandAndAdd(String rawLine, LinkedList lines) { + // Find all sets used by the statement. + if(rawLine.indexOf("##macro.") < 0) { // If macros aren't used, don't bother doing more. + lines.add(rawLine); + return; + } + PermutationCreator p = null; + ArrayList usedSets = null; + String lowerCaseRawLine = rawLine.toLowerCase(); + for(int i=0;i= 0) { + if(p == null) { + p = new PermutationCreator(); + usedSets = new ArrayList(); + } + p.add(set); + usedSets.add(set); + break; + } + } + } + if(p == null) { + lines.add(rawLine); + return; + } + p.start(); + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + do { + replacements.clear(); + for(Iterator i=usedSets.iterator();i.hasNext();) { + ValueSet set = i.next(); + for(int j=0;j Inspects the schema of a given database and determines whether or not the desired schema is + * present. + *
    Parses the CreateDefault.sql, creates and executes corresponding SELECT statements. + *
    Converts the Create statement to Select statement. + *
    Gets a completed SQL statement from the given text block. This must be terminated by a + * single ';' character. + *
    Gets a table name from a query. + *
    Trims SQL End-of-Line comments from the SQL statements. + *
    Checks if the correct schema is present on the Default, Execution, and Output databases. + *
    Execute all the select statements in an SQL Vector + * + * @author Wesley Faler + * @author Tim Hull + * @version 2013-01-17 +*/ +public class SchemaInspector { + /** + * Schemas read from script files. Keyed by the script filename as passed to + * executeScript. Data is another TreeMapIgnoreCase, this one keyed by table + * name with each data a TreeSetIgnoreCase of column names. + **/ + static private TreeMapIgnoreCase cachedScripts = new TreeMapIgnoreCase(); + + /* + * Checks whether or not the MOVES schema is present. + * @return Whether the schema is detected or not. + * @param testConnection The database connection to test. + * @param shouldSuppressSQLExceptionLogging Boolean value indicates whether to log + * @param missingTableAllowed - indicates whether or not it is acceptable for a table + * in the script to not be present in the database. If it is in the database, then all + * columns must be present. + */ + public static boolean isMOVESSchemaPresent(Connection testConnection + , boolean shouldSuppressSQLExceptionLogging + , boolean missingTableAllowed ) { + return isMOVESSchemaPresent(testConnection,shouldSuppressSQLExceptionLogging, + missingTableAllowed,null); + } + + /* + * Checks whether or not the NonRoad schema is present. + * @return Whether the schema is detected or not. + * @param testConnection The database connection to test. + * @param shouldSuppressSQLExceptionLogging Boolean value indicates whether to log + * @param missingTableAllowed - indicates whether or not it is acceptable for a table + * in the script to not be present in the database. If it is in the database, then all + * columns must be present. + */ + public static boolean isNonRoadSchemaPresent(Connection testConnection + , boolean shouldSuppressSQLExceptionLogging + , boolean missingTableAllowed ) { + return isNonRoadSchemaPresent(testConnection,shouldSuppressSQLExceptionLogging, + missingTableAllowed,null); + } + + /* + * Checks whether or not the MOVES schema is present. + * @return Whether the schema is detected or not. + * @param testConnection The database connection to test. + * @param shouldSuppressSQLExceptionLogging Boolean value indicates whether to log + * @param missingTableAllowed - indicates whether or not it is acceptable for a table + * in the script to not be present in the database. If it is in the database, then all + * columns must be present. + * @param databaseName name of the database being scanned. May be filled or null, + * but should never be empty. + */ + public static boolean isMOVESSchemaPresent(Connection testConnection + , boolean shouldSuppressSQLExceptionLogging + , boolean missingTableAllowed, String databaseName ) { + try { + boolean b ; + + b = executeScript(testConnection, new File("database/CreateDefault.sql") , + missingTableAllowed, databaseName ); + + // If the script executed without exceptions, then all required tables and + // columns are present (at a minimum). + return b ; + } catch(FileNotFoundException e) { + /** + * @explain While checking the validity of an input database, a required file, + * database/CreateDefault.sql, could not be found. + **/ + Logger.logError(e, "The Schema Inspector could not find an internal file " + + "(CreateDefault.sql)"); + // return true since we can't say for sure that the database is missing information. + return true; + } catch(IOException e) { + /** + * @explain While checking the validity of an input database, a required file, + * database/CreateDefault.sql, could not be read. + **/ + Logger.logError(e, "The Schema Inspector could not read an internal file " + + "(CreateDefault.sql)."); + // return true since we can't say for sure that the database is missing information. + return true; + } catch(Exception e) { + // something went wrong with the SQL, so there must be missing tables/columns. + if(!shouldSuppressSQLExceptionLogging) { + /** + * @issue The Schema Inspector could not verify the MOVES Schema. + * @explain A database error occurred while inspecting an input database for + * validity. The database will not be used. + **/ + Logger.logSqlError(e, "The Schema Inspector could not verify the MOVES Schema.", + "(unknown)"); + Logger.logException(LogMessageCategory.ERROR,e); + } + return false; + } + } + + /* + * Checks whether or not the NonRoad schema is present. + * @return Whether the schema is detected or not. + * @param testConnection The database connection to test. + * @param shouldSuppressSQLExceptionLogging Boolean value indicates whether to log + * @param missingTableAllowed - indicates whether or not it is acceptable for a table + * in the script to not be present in the database. If it is in the database, then all + * columns must be present. + * @param databaseName name of the database being scanned. May be filled or null, + * but should never be empty. + */ + public static boolean isNonRoadSchemaPresent(Connection testConnection + , boolean shouldSuppressSQLExceptionLogging + , boolean missingTableAllowed, String databaseName ) { + try { + boolean b ; + + b = executeScript(testConnection, new File("database/CreateNRDefault.sql") , + missingTableAllowed, databaseName ); + + // If the script executed without exceptions, then all required tables and + // columns are present (at a minimum). + return b ; + } catch(FileNotFoundException e) { + /** + * @explain While checking the validity of an input database, a required file, + * database/CreateNRDefault.sql, could not be found. + **/ + Logger.logError(e, "The Schema Inspector could not find an internal file " + + "(CreateNRDefault.sql)"); + // return true since we can't say for sure that the database is missing information. + return true; + } catch(IOException e) { + /** + * @explain While checking the validity of an input database, a required file, + * database/CreateNRDefault.sql, could not be read. + **/ + Logger.logError(e, "The Schema Inspector could not read an internal file " + + "(CreateNRDefault.sql)."); + // return true since we can't say for sure that the database is missing information. + return true; + } catch(Exception e) { + // something went wrong with the SQL, so there must be missing tables/columns. + if(!shouldSuppressSQLExceptionLogging) { + /** + * @issue The Schema Inspector could not verify the MOVES Schema. + * @explain A database error occurred while inspecting an input database for + * validity. The database will not be used. + **/ + Logger.logSqlError(e, "The Schema Inspector could not verify the NonRoad Schema.", + "(unknown)"); + Logger.logException(LogMessageCategory.ERROR,e); + } + return false; + } + } + + /** + * Retrieve the schema stored in a script file's CREATE TABLE statements. + * The scripts are cached so when needed again, no file access is performed. + * @param scriptFile file containing CREATE TABLE statements to be scanned. + * @return TreeMapIgnoreCase keyed by each table name, with data being a + * TreeSetIgnoreCase of the column names within each table. + * @throws FileNotFoundException if the script file cannot be found + * @throws IOException if anything goes wrong reading the file + **/ + public static TreeMapIgnoreCase readScript(File scriptFile) + throws FileNotFoundException, IOException { + String filePath = scriptFile.getCanonicalPath(); + synchronized(cachedScripts) { + TreeMapIgnoreCase result = (TreeMapIgnoreCase)cachedScripts.get(filePath); + if(result != null) { + return result; + } + result = new TreeMapIgnoreCase(); + BufferedReader sqlReader = null; + String currentSQLStatement = ""; + + try { + sqlReader = new BufferedReader(new FileReader(scriptFile)); + + while(true) { + String iterLine = sqlReader.readLine(); + if(iterLine == null) { + break; + } + iterLine = trimSQLEOLComment(iterLine); + currentSQLStatement += iterLine; + String entireSQLStatement = getCompleteSQLStatement(currentSQLStatement); + if(entireSQLStatement == null) { + currentSQLStatement += " "; + continue; + } + + currentSQLStatement = ""; + + String[] lines = parseCreateTable(entireSQLStatement) ; + if(lines == null) { // The statement is not a CREATE TABLE + continue ; + } + + String tableName = lines[0]; + if(tableName == null || tableName.length() == 0) { + continue; + } + + TreeSetIgnoreCase columnsInFile = new TreeSetIgnoreCase(); + for(int i=1;i fileTables = schemaInFile.keySet(); + Set databaseTables = schemaInDb.keySet(); + + // Each table that is in the database must match the definition table + for(Iterator d=databaseTables.iterator();d.hasNext();) { + String tableName = (String)d.next(); + TreeSetIgnoreCase columnsInFile = (TreeSetIgnoreCase)schemaInFile.get(tableName); + if(columnsInFile == null) { + continue; + } + TreeSetIgnoreCase columnsInDb = (TreeSetIgnoreCase)schemaInDb.get(tableName); + for(Iterator i=columnsInFile.iterator();i.hasNext();) { + String t = (String)i.next(); + if(!columnsInDb.contains(t)) { + /** + * @issue [*].[*] not in database + * @explain An input database does not contain a required column. + * The database could be incomplete or out of date. + **/ + Logger.log(LogMessageCategory.ERROR,tableName + "." + t + " not in database"); + return false; + } + } + for(Iterator i=columnsInDb.iterator();i.hasNext();) { + String t = (String)i.next(); + if(!columnsInFile.contains(t)) { + /** + * @issue [*].[*] not in default script + * @explain An input database table contains a column that is not + * in the expected definition. The database cannot be used to + * provide data. + **/ + Logger.log(LogMessageCategory.ERROR,tableName + "." + t + " not in default script"); + return false; + } + } + } + + // If no missing tables are allowed, then each definition table must have + // a corresponding database table. + if(!missingTableAllowed) { + for(Iterator f=fileTables.iterator();f.hasNext();) { + String tableName = (String)f.next(); + if(!schemaInDb.containsKey(tableName)) { + /** + * @issue Table does not exist: [*] + * @explain An input database does not contain a required table. + * The database could be incomplete or out of date. + **/ + Logger.log(LogMessageCategory.ERROR,"Table does not exist: " + tableName); + return false; + } + } + } +//Logger.log(LogMessageCategory.INFO,"Schema fully found."); + return true; + } catch( Exception ex ) { +//ex.printStackTrace(); +//Logger.log(LogMessageCategory.ERROR,ex.getMessage()); +throw ex; +// return true ; + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** + * Parse a CREATE TABLE statement into its components. + * @param sqlStatement a CREATE TABLE statement + * @return an array of tokens in the statement + **/ + public static String[] parseCreateTable( String sqlStatement ) { + StringBuffer sb , sb2 ; + StringTokenizer statement ; + String lines [] ; + String returnLines [] ; + String columns [] ; + int numTokens , line , location , pos , returnLine = 0 ; + String s , s1 , s2 , tableName , sql ; + char c ; + + if ( sqlStatement == null ) { + return null ; + } + + sql = sqlStatement.replace( '\n' , ' ' ) ; + sb = new StringBuffer( sql ) ; + sb2 = new StringBuffer() ; + + statement = new StringTokenizer( sql , "\t \n(" ) ; + lines = new String [ statement.countTokens() + 10 ] ; + columns = new String [ statement.countTokens() + 10 ] ; + + numTokens = statement.countTokens() ; + for ( line = 0 ; statement.hasMoreTokens() == true ; line++ ) { + lines[ line ] = statement.nextToken() ; + } + + s1 = lines[ 0 ].toUpperCase() ; + s2 = lines[ 1 ].toUpperCase() ; + tableName = lines[ 2 ]; + + if ( s1.equals( "CREATE" ) == false || s2.equals( "TABLE" ) == false ) { + return null ; + } + + for ( location = pos = 0 ; pos < sb.length() ; pos++ ) { + c = sb.charAt( pos ) ; + if ( c == '\n' || c == '\t' ) c = ' ' ; + if ( location == 0 && c != '(' ) { + continue ; + } + + if ( location > 1 && c != ')' ) { + continue ; + } + + if ( c == '(' ) { + location++ ; + continue ; + } + + if ( c == ')' ) { + location-- ; + continue ; + } + + sb2.append( c ) ; + } + + statement = new StringTokenizer( sb2.toString() , "," ) ; + lines = new String [ statement.countTokens() + 10 ] ; + numTokens = statement.countTokens() ; + returnLines = new String [ numTokens + 1 ] ; + + for ( line = 0 ; statement.hasMoreTokens() == true ; line++ ) { + lines[ line ] = statement.nextToken() ; + } + + returnLines[ 0 ] = tableName ; + returnLine = 1 ; + + for ( line = 0 ; line < numTokens ; line++ ) { + s = lines[line].trim() ; + if(s.startsWith(")")) { + continue; + } + if(s.indexOf('`') >= 0) { + while(s.indexOf('`') >= 0) { + s = s.replace('`',' '); + } + s = s.trim(); + } + if(s.length() <= 0) { + continue; + } + pos = s.indexOf(' '); + if(pos < 0) { + pos = s.indexOf('\t'); + if(pos < 0) { + continue; + } + } + String firstWord = s.substring(0,pos); + if(firstWord.equalsIgnoreCase("key") + || firstWord.equalsIgnoreCase("primary") + || firstWord.equalsIgnoreCase("unique") + || firstWord.equalsIgnoreCase("index")) { + continue; + } + + returnLines[returnLine] = firstWord; + returnLine++ ; + } + + return returnLines ; + } + + /** + * Gets a completed SQL statement from the given text block. This must be terminated + * by a single ';' character. This doesn't handle multiple statements within the same + * text block. This can potentially fail if using a database system where ';' isn't an + * SQL terminator or if the line is in the middle of a multi-line quoted string. + * @param text The source SQL line. + * @return The entire SQL statement without the terminating character. + **/ + public static String getCompleteSQLStatement(String text) { + for (int i = text.length() - 1; i >= 0; i--) { + char iterChar = text.charAt(i); + + if(iterChar == ';') { + return text.substring(0, i); + } else if(!Character.isWhitespace(iterChar)) { + return null; + } + } + + return null; + } + + /** + * Converts the Create statement to Select statement. + * @param sqlVector contains all create statements to be converted. + * @return selectSQLVector, vector contains select statements. + **/ + public static Vector convertToSelect(Vector sqlVector) { + String tableName = ""; + Vector selectSQLVector = new Vector(); + for(int i=0; i columnVector = new Vector(); + while(tokenizer.hasMoreElements()) { + String token = tokenizer.nextToken(); + StringTokenizer st = new StringTokenizer(token); + if(st.hasMoreElements()) { + String column = st.nextToken(); + columnVector.add(column); + } + //columnVector.add(); + } + String selectSQL = "SELECT " ; + for(int j=0; j 0) { + MOVES_CONFIGURATION_FILE_NAME = alternateName; + Logger.log(LogMessageCategory.INFO,"Using alternate master configuration file: " + alternateName); + } + Logger.log(LogMessageCategory.INFO,"Using master configuration file: " + MOVES_CONFIGURATION_FILE_NAME); + Logger.log(LogMessageCategory.INFO,"System configuration loading configuration files..."); + loadConfigurationData(); + Logger.log(LogMessageCategory.INFO,"System configuration setting up temporary files..."); + TemporaryFileManager.setup(masterFolderPath); + } catch(Exception e) { + // SystemConfiguration currently is only concerned with IOExceptions, if any + // database info is invalid, then the DatabaseConnectionManager will complain + /** + * @explain An error occurred while reading the MOVESConfiguration.txt file. + * The data in this file is required. + **/ + Logger.logError(e, "Unable to load System Configuration Data."); + + //System.out.println("Unable to load System Configuration Data: " + e.getMessage()); + //e.printStackTrace(); + } + + try { + Logger.log(LogMessageCategory.INFO,"System configuration acquiring distributed master ID..."); + distributedMasterID = DistributedIDBroker.acquireID( + DistributedIDBroker.PREFIX_MASTER_ID, computerID, + sharedDistributedFolderPath); + + rememberCurrentID(DistributedIDBroker.getIDFilePath( + DistributedIDBroker.PREFIX_MASTER_ID, distributedMasterID, + computerID, sharedDistributedFolderPath)); + } catch (IOException exception) { + /** + * @explain An ID file could not be created to identify this computer + * as a MOVES master. Check the configuration file, ensuring that the + * shared work folder exists and you have rights to create, read, and + * delete files within it. + **/ + Logger.logError(exception, "Unable to acquire the Master ID."); + distributedMasterID = "0"; + } + Logger.log(LogMessageCategory.INFO,"Done loading system configuration."); + } + + /** + * Saves the system configuration to the text file. + * @throws IOException if can't open the file + **/ + public void saveConfigurationData() throws IOException { + File configurationPath = new File(MOVES_CONFIGURATION_FILE_NAME); + + final String eol = System.getProperty("line.separator"); + Writer configWriter = new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(configurationPath))); + + configWriter.write("defaultServerName" + " = " + + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName + eol); + configWriter.write("defaultDatabaseName" + " = " + + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName + eol); + //configWriter.write("defaultUserName" + " = " + + // databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].userName + eol); + //configWriter.write("defaultPassword" + " = " + + // databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].password + eol); + + /* + configWriter.write("nrdefaultServerName" + " = " + + databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].serverName + eol); + configWriter.write("nrdefaultDatabaseName" + " = " + + databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName + eol); + //configWriter.write("nrdefaultUserName" + " = " + + // databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].userName + eol); + //configWriter.write("nrdefaultPassword" + " = " + + // databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].password + eol); + */ + + configWriter.write("executionServerName" + " = " + + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].serverName + eol); + configWriter.write("executionDatabaseName" + " = " + + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName + eol); + //configWriter.write("executionUserName" + " = " + + // databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].userName + eol); + //configWriter.write("executionPassword" + " = " + + // databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].password + eol); + + configWriter.write("outputServerName" + " = " + + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName + eol); + configWriter.write("outputDatabaseName" + " = " + + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].databaseName + eol); + //configWriter.write("outputUserName" + " = " + + // databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].userName + eol); + //configWriter.write("outputPassword" + " = " + + // databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].password + eol); + + if(nonroadExePath != null) { + configWriter.write("nonroadExePath" + " = " + nonroadExePath.getCanonicalPath() + eol); + } + + configWriter.write("sharedDistributedFolderPath" + " = " + + sharedDistributedFolderPath.getCanonicalPath() + eol); + + /* + configWriter.write("GREETWTPApplication" + " = " + + GREETWTPApplication.getCanonicalPath() + eol); + configWriter.write("GREETManufactureApplication" + " = " + + GREETManufactureApplication.getCanonicalPath() + eol); + configWriter.write("GREETDirectory" + " = " + + GREETDirectory.getCanonicalPath() + eol); + */ + configWriter.write("computerIDPath" + " = " + + computerIDPath + eol); + configWriter.write("masterFolderPath" + " = " + + masterFolderPath.getCanonicalPath() + eol); + configWriter.write("saveTODOPath" + " = " + + (saveTODOPath == null? "" : saveTODOPath.getCanonicalPath()) + eol); + + configWriter.write("mysqlUserName" + " = " + DatabaseSelection.userProvidedUserName + eol); + configWriter.write("mysqlPassword" + " = " + + PasswordChecker.encode(DatabaseSelection.userProvidedUserName,DatabaseSelection.userProvidedPassword) + eol); + + configWriter.close(); + + readAndResetWorkerConfigurationFile(MOVES_WORKER_CONFIGURATION_FILE_NAME); + readAndResetWorkerConfigurationFile(MANY_WORKERS_CONFIGURATION_FILE_NAME); + readAndResetWorkerConfigurationFile(MAKE_TODO_CONFIGURATION_FILE_NAME); + + if(computerIDPath != null && computerIDPath.length() > 0) { + configWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(computerIDPath))); + configWriter.write("ComputerID" + " = " + + computerID + eol); + configWriter.close(); + } + } + + /** + * Change the shared work directory in another configuration file, if it exists. + * Also changes MySQL login credentials so all uses of MOVES have the same security settings. + * @param fileName name of the other file + **/ + void readAndResetWorkerConfigurationFile(String fileName) + throws IOException { + File configFile = new File(fileName); + try { + boolean fileExists = FileUtilities.fileExists(configFile); + if(!fileExists) { + // Return without complaining if the file does not exist. It may not be used. + return; + } + ArrayList lines = FileUtilities.readLines(configFile); + if(lines == null || lines.size() <= 0) { + // Return without complaining that the file could not be read. + // If the user actually uses the file, they will get an error message then. + return; + } + //prepare for rewriting the worker configuration file + File configurationPath = new File(fileName); + + final String eol = System.getProperty("line.separator"); + Writer configWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(configurationPath))); + + //reading the existing worker configuration file + String iterLine; + for(Iterator li=lines.iterator();li.hasNext();) { + iterLine = (String)li.next(); + iterLine = iterLine.trim(); + + if((iterLine.length() == 0) || iterLine.startsWith("//")) { + configWriter.write(iterLine + eol); + continue; + } + + StringTokenizer iterTokenizer = new StringTokenizer(iterLine, "="); + + if(iterTokenizer.countTokens() > 2) { + configWriter.write(iterLine + eol); + continue; + } + String name = ""; + String value = ""; + + if(iterTokenizer.countTokens() == 1) { //blank entry + name = iterTokenizer.nextToken().trim(); + } else { + name = iterTokenizer.nextToken().trim(); + value = iterTokenizer.nextToken().trim(); + } + + //reset the value of sharedDistributedFolderPath and MySQL login credentials + if(name.equalsIgnoreCase("sharedDistributedFolderPath")) { + value = sharedDistributedFolderPath.getCanonicalPath(); + } else if(name.equalsIgnoreCase("mysqlUserName")) { + value = DatabaseSelection.userProvidedUserName; + } else if(name.equalsIgnoreCase("mysqlPassword")) { + value = PasswordChecker.encode(DatabaseSelection.userProvidedUserName,DatabaseSelection.userProvidedPassword); + } + + //write to the file + configWriter.write(name + " = " + value + eol); + } + configWriter.close(); + } catch(FileNotFoundException e) { + throw new IOException("File not found : " + fileName); + } + } + + /** + * Read a configuration file, recursing into other configuration files as needed. + * @param fileNamesAlreadyRead set of names already read, used to prevent infinite recursion. + * @param fileName full name and path of the file to be read. + * @throws IOException If a file I/O error occured. + **/ + void readConfigurationFile(TreeSetIgnoreCase fileNamesAlreadyRead, String fileName) + throws IOException { + File configFile = new File(fileName); + String mysqlUserName = null; + String mysqlPassword = null; + try { + String fullPath = configFile.getCanonicalPath(); + if(fileNamesAlreadyRead.contains(fullPath)) { + return; + } + fileNamesAlreadyRead.add(fullPath); + + ArrayList lines = null; + boolean fileExists = FileUtilities.fileExists(configFile); + if(fileExists) { + lines = FileUtilities.readLines(configFile); + if(lines == null || lines.size() <= 0) { + fileExists = false; + } + } + if(fileExists) { + String iterLine; + for(Iterator li=lines.iterator();li.hasNext();) { + iterLine = (String)li.next(); + iterLine = iterLine.trim(); + + if((iterLine.length() == 0) || iterLine.startsWith("//")) { + continue; + } + + StringTokenizer iterTokenizer = new StringTokenizer(iterLine, "="); + + if(iterTokenizer.countTokens() > 2) { + /** + * @explain The MOVESConfiguration.txt file contains an entry + * that is not recognized. Verify that all entries in the file + * are correct. + **/ + Logger.log(LogMessageCategory.WARNING, "Invalid configuration entry: " + iterLine); + continue; + } + String name = ""; + String value = ""; + + if(iterTokenizer.countTokens() == 1) { //blank entry + name = iterTokenizer.nextToken().trim(); + } else { + name = iterTokenizer.nextToken().trim(); + value = iterTokenizer.nextToken().trim(); + } + + if(name.compareToIgnoreCase("defaultServerName") == 0) { + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName = + new String(value); + } else if(name.compareToIgnoreCase("defaultDatabaseName") == 0) { + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName = + new String(value); + } else if(name.compareToIgnoreCase("defaultUserName") == 0) { + //databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].userName = + // new String(value); + } else if(name.compareToIgnoreCase("defaultPassword") == 0) { + //databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].password = + // new String(value); + /* + } else if(name.compareToIgnoreCase("nrdefaultServerName") == 0) { + databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].serverName = + new String(value); + } else if(name.compareToIgnoreCase("nrdefaultDatabaseName") == 0) { + databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName = + new String(value); + } else if(name.compareToIgnoreCase("nrdefaultUserName") == 0) { + //databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].userName = + // new String(value); + } else if(name.compareToIgnoreCase("nrdefaultPassword") == 0) { + //databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].password = + // new String(value); + */ + } else if(name.compareToIgnoreCase("outputServerName") == 0) { + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName = + new String(value); + } else if(name.compareToIgnoreCase("outputDatabaseName") == 0) { + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].databaseName = + new String(value); + } else if(name.compareToIgnoreCase("outputUserName") == 0) { + //databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].userName = + // new String(value); + } else if(name.compareToIgnoreCase("outputPassword") == 0) { + //databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].password = + // new String(value); + } else if(name.compareToIgnoreCase("executionServerName") == 0) { + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].serverName = + new String(value); + } else if(name.compareToIgnoreCase("executionDatabaseName") == 0) { + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName = + new String(value); + } else if(name.compareToIgnoreCase("executionUserName") == 0) { + //databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].userName = + // new String(value); + } else if(name.compareToIgnoreCase("executionPassword") == 0) { + //databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].password = + // new String(value); + } else if(name.compareToIgnoreCase("sharedDistributedFolderPath") == 0) { + if(value != null && value.length() > 0) { + sharedDistributedFolderPath = new File(value); + } + } else if (name.compareToIgnoreCase("nonroadExePath") == 0) { + if (value != null && value.length() > 0) { + nonroadExePath = new File(value); + } + } else if(name.compareToIgnoreCase("masterFolderPath") == 0) { + if(value != null && value.length() > 0) { + masterFolderPath = new File(value); + } + } else if(name.compareToIgnoreCase("GREETWTPApplication") == 0) { + // Nothing to do here, GREET is no longer used, just ignore the configuration entry + // GREETWTPApplication = new File(value); + } else if(name.compareToIgnoreCase("GREETManufactureApplication") == 0) { + // Nothing to do here, GREET is no longer used, just ignore the configuration entry + // GREETManufactureApplication = new File(value); + } else if(name.compareToIgnoreCase("GREETDirectory") == 0) { + // Nothing to do here, GREET is no longer used, just ignore the configuration entry + // GREETDirectory = new File(value); + } else if(name.compareToIgnoreCase("ComputerID") == 0) { + computerID = value; + if(computerID.length() == 0) { + computerID = "NoComputerID"; + } else if(computerID.length() > 20) { + computerID = computerID.substring(0,20).trim(); + if(computerID.length() == 0) { + computerID = "NoComputerID"; + } + } + } else if(name.compareToIgnoreCase("computerIDPath") == 0) { + computerIDPath = value; + if(value != null && value.length() > 0 && new File(value).exists()){ + readConfigurationFile(fileNamesAlreadyRead,value); + } + } else if(name.compareToIgnoreCase("saveTODOPath") == 0) { + if(value != null && value.length() > 0) { + saveTODOPath = new File(value); + } + } else if(name.compareToIgnoreCase("mysqlUserName") == 0) { + if(value != null) { + mysqlUserName = value.trim(); + } + } else if(name.compareToIgnoreCase("mysqlPassword") == 0) { + if(value != null && value.length() > 0) { + mysqlPassword = value.trim(); + } + } else { + /** + * @explain The MOVESConfiguration.txt file contains an entry + * that is not recognized. Verify that all entries in the file + * are correct. + **/ + Logger.log(LogMessageCategory.INFO, "Unknown configuration name: " + iterLine); + } + } + } else { + /** + * @explain The MOVESConfiguration.txt file is required but couldn't be located. + **/ + Logger.log(LogMessageCategory.WARNING, "Couldn't find configuration file: " + fileName); + } + } catch(FileNotFoundException e) { + throw new IOException("File not found : " + fileName); + } finally { + if(mysqlUserName != null && mysqlPassword != null) { + String realPassword = PasswordChecker.decode(mysqlUserName,mysqlPassword); + if(realPassword == null) { + Logger.log(LogMessageCategory.ERROR,"Corrupt MySQL username/password provided."); + } else { + DatabaseSelection.userProvidedUserName = mysqlUserName; + DatabaseSelection.userProvidedPassword = realPassword; + } + } + } + } + + /** + * Loads the system configuration from the text file. + * @throws IOException if can't open the file + **/ + public void loadConfigurationData() throws IOException { + File configurationPath = new File(MOVES_CONFIGURATION_FILE_NAME); + + boolean fileExists = FileUtilities.fileExists(configurationPath); + if(fileExists && !configurationPath.canWrite()) { + /** + * @explain The MOVESConfiguration.txt file is required and cannot be Read-Only. + * Close MOVES, access the properties of the file and remove the Read-Only flag, + * then restart MOVES. + **/ + Logger.log(LogMessageCategory.ERROR, "Configuration file error: " + + MOVES_CONFIGURATION_FILE_NAME + " is read only."); + return; + } + if(fileExists) { + TreeSetIgnoreCase fileNames = new TreeSetIgnoreCase(); + readConfigurationFile(fileNames,MOVES_CONFIGURATION_FILE_NAME); + if(masterFolderPath != null && !masterFolderPath.isDirectory()) { + throw new FileNotFoundException("masterFolderPath doesn't exist"); + } + if(masterFolderPath == null) { + masterFolderPath = new File("."); + } + } else { + /** + * @explain The MOVESConfiguration.txt file is required but couldn't be located. + **/ + Logger.log(LogMessageCategory.WARNING, "Couldn't find configuration file. " + + "Using defaults and generating default configuration file."); + + writeDefaultConfigurationFile(); + } + + String executionDatabaseName = databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName; + if(executionDatabaseName == null || executionDatabaseName.length() <= 0 + || executionDatabaseName.equalsIgnoreCase("*")) { + // Create a unique but repeatable execution database name + executionDatabaseName = InstanceCounter.getDB("MOVESExecution"); + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName = executionDatabaseName; + } + didLoad = true; + } + + /** + * Creates a default configuration text file. + * @throws IOException if can't open the file + **/ + public void writeDefaultConfigurationFile() throws IOException { + sharedDistributedFolderPath = new File("SharedWork"); + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName = "localhost"; + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName = "MOVESDefault"; + //databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].serverName = "localhost"; + //databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName = "MOVESNRDefault"; + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].serverName = "localhost"; + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName = "MOVESExecution"; + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName = "localhost"; + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].databaseName = "MOVESOutput"; + masterFolderPath = new File("testing.txt").getParentFile(); + saveTODOPath = null; + + // MOVES no longer uses GREET but must continue to instantiate these objects so older code won't get null references + GREETDirectory = new File("GREET"); + GREETWTPApplication = new File("GREETWTPStub.exe"); + GREETManufactureApplication = new File("GREETMfgStub.exe"); + + nonroadExePath = new File("NONROAD.EXE"); + + initComputerIDAndPath(); + saveConfigurationData(); + } + + /** + * Initializes the computer ID and path to default values based on system settings. + **/ + void initComputerIDAndPath() { + try { + computerID = InetAddress.getLocalHost().getHostName(); + } catch (UnknownHostException e) { + computerID = "NoComputerID"; + } + computerIDPath = ""; + } + + /** + * Note the current ID file in case it needs to be removed later. + * @param idFile name of the current ID file + **/ + static void rememberCurrentID(File idFile) { + try { + File priorIDFile = new File(priorIDFileName); + String fullPath = idFile.getCanonicalPath(); + FileUtilities.appendLine(priorIDFile,fullPath); + } catch(Exception e) { + /** + * @explain An attempt to record the master's ID has failed. This will + * prevent automatic removal of the master ID file if an unexpected + * shutdown occurs. + **/ + Logger.logError(e,"Unable to store current master ID"); + } + } + + /** Remove the prior master's ID file, if present. **/ + public static void clearPriorIDs() { + try { + File priorIDFile = new File(priorIDFileName); + if(priorIDFile.exists()) { + ArrayList lines = FileUtilities.readLines(priorIDFile); + if(lines != null) { + for(int i=0;i 0) { + File f = new File(fileName); + FileUtilities.deleteFileWithRetry(f); + } + } + } + FileUtilities.deleteFileWithRetry(priorIDFile); + } + } catch(Exception e) { + /** + * @explain An error occurred while removing ID files from prior runs. + * Check the shared work folder for extraneous ID files. + **/ + Logger.logError(e,"Unable to clear prior master ID files"); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/SystemConfigurationTest.java b/gov/epa/otaq/moves/master/framework/SystemConfigurationTest.java new file mode 100644 index 0000000..bcf8617 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/SystemConfigurationTest.java @@ -0,0 +1,111 @@ +/************************************************************************************************** + * @(#)SystemConfigurationTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import java.io.*; +import junit.framework.*; + +/** + * Test Case for the SystemConfiguration class + * + * @author Cimulus + * @version 2006-07-24 +**/ +public class SystemConfigurationTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SystemConfigurationTest(String name) { + super(name); + } + + /** + * Implements the test case(s). + * @throws IOException From any possible file operations. + **/ + public void testCase() throws IOException { + // Verify that the singleton exists and has created a master ID file in the shared + // distributed work path + assertNotNull(SystemConfiguration.getTheSystemConfiguration().distributedMasterID); + assertTrue(DistributedIDBroker.getIDFilePath( + DistributedIDBroker.PREFIX_MASTER_ID, + SystemConfiguration.getTheSystemConfiguration().distributedMasterID, + SystemConfiguration.getTheSystemConfiguration().computerID, + SystemConfiguration.getTheSystemConfiguration().sharedDistributedFolderPath) + .exists()); +/* Uncomment to see the temp master id file + try { + java.lang.Thread.sleep(5000); + } catch(InterruptedException e) { + + } +*/ + // Verify that the settings are non-null, especially the DatabaseSelection object members + assertNotNull("sharedDistributedFolderPath is null", + SystemConfiguration.getTheSystemConfiguration().sharedDistributedFolderPath); + assertNotNull("databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()] is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.DEFAULT.getIndex()]); + assertNotNull + ("databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.DEFAULT.getIndex()].serverName); + assertNotNull + ("databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.DEFAULT.getIndex()].databaseName); + assertNotNull("databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].userName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.DEFAULT.getIndex()].userName); + assertNotNull("databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].password is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.DEFAULT.getIndex()].password); + assertNotNull("databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()] is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.EXECUTION.getIndex()]); + assertNotNull + ("databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].serverName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.EXECUTION.getIndex()].serverName); + assertNotNull + ("databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].databaseName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.EXECUTION.getIndex()].databaseName); + assertNotNull + ("databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].userName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.EXECUTION.getIndex()].userName); + assertNotNull + ("databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()].password is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.EXECUTION.getIndex()].password); + assertNotNull("databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()] is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.OUTPUT.getIndex()]); + assertNotNull("databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.OUTPUT.getIndex()].serverName); + assertNotNull + ("databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].databaseName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.OUTPUT.getIndex()].databaseName); + assertNotNull("databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].userName is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.OUTPUT.getIndex()].userName); + assertNotNull("databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].password is null", + SystemConfiguration.getTheSystemConfiguration().databaseSelections + [MOVESDatabaseType.OUTPUT.getIndex()].password); + assertNotNull("distributedMasterID is null", + SystemConfiguration.getTheSystemConfiguration().distributedMasterID); + + // Verify that the config file exists + File configFile = new File(SystemConfiguration.MOVES_CONFIGURATION_FILE_NAME); + assertTrue("Config file doesn't exist.", configFile.exists()); + } +} diff --git a/gov/epa/otaq/moves/master/framework/UncertaintyParameters.java b/gov/epa/otaq/moves/master/framework/UncertaintyParameters.java new file mode 100644 index 0000000..3e407bd --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/UncertaintyParameters.java @@ -0,0 +1,53 @@ +/************************************************************************************************** + * @(#)UncertaintyParameters.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +/** + * Track data related to the uncertainty function of the software. In uncertainty mode, the + * entire simulation is run several times to calculate a variance between the different + * results. + * + * @author Cimulus + * @version 2003-02-04 +**/ +public class UncertaintyParameters { + /** Default constructor **/ + public boolean uncertaintyModeEnabled; + + /** + * The number of runs of the system for a given simulation. + * The term simulation is used to refer to a group of runs. + **/ + public int numberOfRunsPerSimulation; + + /** The number of simulations that should be run in total. **/ + public int numberOfSimulations; + + /** Default constructor **/ + public UncertaintyParameters() { + } + + /** + * Overrides Object.equals(). + * @param other The other UncertaintyParameters to check. + * @return True if equal. + **/ + public boolean equals(Object other) { + if(other instanceof UncertaintyParameters) { + UncertaintyParameters otherUncertaintyParameters = + (UncertaintyParameters)other; + return this.numberOfRunsPerSimulation == + otherUncertaintyParameters.numberOfRunsPerSimulation && + this.numberOfSimulations == + otherUncertaintyParameters.numberOfSimulations && + this.uncertaintyModeEnabled == + otherUncertaintyParameters.uncertaintyModeEnabled; + } else { + throw new ClassCastException(); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/UncertaintyParametersTest.java b/gov/epa/otaq/moves/master/framework/UncertaintyParametersTest.java new file mode 100644 index 0000000..3a687ee --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/UncertaintyParametersTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)UncertaintyParametersTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import junit.framework.*; + +/** + * Test Case for the UncertaintyParameters class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class UncertaintyParametersTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public UncertaintyParametersTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/WeeksInMonthHelper.java b/gov/epa/otaq/moves/master/framework/WeeksInMonthHelper.java new file mode 100644 index 0000000..fabd9c2 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/WeeksInMonthHelper.java @@ -0,0 +1,219 @@ +/************************************************************************************************** + * @(#)WeeksInMonthHelper.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.Logger; +import gov.epa.otaq.moves.common.LogMessageCategory; +import gov.epa.otaq.moves.common.SQLRunner; +import gov.epa.otaq.moves.common.MOVESDatabaseType; +import gov.epa.otaq.moves.common.StringUtilities; +import java.sql.*; +import java.util.*; + +/** + * Utility functions for dividing months and weeks. + * + * @author Wesley Faler + * @version 2014-07-13 +**/ +public class WeeksInMonthHelper { + /** Collection keyed by Integer monthID with data of Integer days in the month. **/ + TreeMap monthsAndDays = null; + /** keyed by Integer day count, data is String of comma separated monthIDs **/ + TreeMap dayCounts = new TreeMap(); + /** keyed by Integer dayID, data is Integer number of real days **/ + TreeMap realDaysPerDay = new TreeMap(); + /** SQL CASE...END statement using dayID for the number of real days per dayID **/ + String noOfRealDaysClause = ""; + /** SQL CASE...END statement using dayID for the portion of week per day by dayID **/ + String portionOfWeekPerDayClause = ""; + + /** + * Get the number of real days within a dayID, which is really a portion of a week. + * @param dayID identifier for the portion of the week. + * return number of real 24-hour days contained within the portion of the week. Never 0. + **/ + public int getRealDays(int dayID) { + if(!loadMonthsFromDatabase() || dayCounts.size() <= 0 || realDaysPerDay.size() <= 0) { + return 1; + } + Integer realDays = realDaysPerDay.get(new Integer(dayID)); + if(realDays == null || realDays.intValue() <= 0) { + return 1; + } + return realDays.intValue(); + } + + /** + * Get the number of weeks within a month as a function of year. + * It is safe to divide by this number since it will always be greater than 0. + * @param yearID calendar year. + * @param monthID month from the monthOfAnyYear table. + * @return the number of weeks within the month + **/ + public double getWeeksPerMonth(int yearID, int monthID) { + if(!loadMonthsFromDatabase() || dayCounts.size() <= 0 || realDaysPerDay.size() <= 0) { + return 1; + } + Integer daysPerMonth = monthsAndDays.get(new Integer(monthID)); + if(daysPerMonth == null || daysPerMonth.intValue() <= 0) { + return 1; + } + return daysPerMonth.intValue() / 7.0; + } + + /** + * Generate SQL for SQL expressing the number of weeks as a function of yearID and monthID. + * It is safe to divide by this number since the generated SQL will never return 0. + * @param yearColumnName SQL column name (ideally in table.column format) that contains + * the yearID. + * @param monthColumnName SQL column name (ideally in table.column format) that contains + * the monthID. + * @return SQL expressing the number of weeks as a function of yearID and monthID + **/ + public String getWeeksPerMonthSQLClause(String yearColumnName,String monthColumnName) { + if(!loadMonthsFromDatabase() || dayCounts.size() <= 0 || realDaysPerDay.size() <= 0) { + return "1"; + } + String sql = ""; + if(dayCounts.size() == 1) { + sql = "(" + dayCounts.firstKey() + "/7.0)"; + } else { + sql = "(CASE "; + Set days = dayCounts.keySet(); + for(Iterator i=days.iterator();i.hasNext();) { + Integer noOfDays = (Integer)i.next(); + String monthIDs = (String)dayCounts.get(noOfDays); + /* + if(monthsAndDays.size() > 1 && noOfDays.intValue() == 28) { + sql += " WHEN " + monthColumnName + " IN (" + monthIDs + + ") THEN (28+IF(MOD(" + yearColumnName + ",4)=0,1,0))/7.0"; // add 1 in leap years + } else { + sql += " WHEN " + monthColumnName + " IN (" + monthIDs + + ") THEN " + noOfDays + "/7.0"; + } + */ + sql += " WHEN " + monthColumnName + " IN (" + monthIDs + + ") THEN " + noOfDays + "/7.0"; + } + sql += " ELSE 1 END)"; + } + //System.out.println("***** " + sql); + return sql; + } + + /** + * Generate SQL for SQL expressing the number of days as a function of yearID, monthID, and dayID. + * It is safe to divide by this number since the generated SQL will never return 0. + * @param yearColumnName SQL column name (ideally in table.column format) that contains + * the yearID. + * @param monthColumnName SQL column name (ideally in table.column format) that contains + * the monthID. + * @param dayColumnName SQL column name (ideally in table.column format) that contains + * the dayID. + * @return SQL expressing the number of days as a function of yearID, monthID, and dayID. + **/ + public String getDaysPerMonthSQLClause(String yearColumnName,String monthColumnName, + String dayColumnName) { + String weeksClause = getWeeksPerMonthSQLClause(yearColumnName,monthColumnName); + String t = StringUtilities.replace(noOfRealDaysClause,"##dayIDColumnName##",dayColumnName); + String sql = "(" + weeksClause + "*(" + t + "))"; + return sql; + } + + /** + * Generate SQL for SQL expressing the portion of a week per day as a function of dayID. + * This number should be multiplied by values to convert to a classical day. + * @param dayColumnName SQL column name (ideally in table.column format) that contains + * the dayID. + * @return SQL expressing the number of portions of a week per day as a function of dayID. + **/ + public String getPortionOfWeekPerDayClause(String dayColumnName) { + if(!loadMonthsFromDatabase() || dayCounts.size() <= 0 || realDaysPerDay.size() <= 0) { + return "1"; + } + String t = StringUtilities.replace(portionOfWeekPerDayClause,"##dayIDColumnName##",dayColumnName); + String sql = "(" + t + ")"; + return sql; + } + + /** + * Method to get monthIDs and number of days from monthOfAnyYear. + * Populates the monthsAndDays, dayCounts, and realDaysPerDay member variables. + * @return false if there is an exception + **/ + boolean loadMonthsFromDatabase() { + monthsAndDays = new TreeMap(); + dayCounts = new TreeMap(); + realDaysPerDay = new TreeMap(); + noOfRealDaysClause = "case ##dayIDColumnName##"; + portionOfWeekPerDayClause = "case ##dayIDColumnName##"; + + Connection executionDatabase = null; + String sql = ""; + ResultSet rs = null; + + try { + executionDatabase = DatabaseConnectionManager.checkOutConnection( + MOVESDatabaseType.EXECUTION); + sql = "SELECT MonthID, noOfDays FROM MonthOfAnyYear"; + rs = SQLRunner.executeQuery(executionDatabase, sql); + while(rs.next()) { + Integer monthID = new Integer(rs.getInt(1)); + Integer noOfDays = new Integer(rs.getInt(2)); + monthsAndDays.put(monthID,noOfDays); + + String monthIDs = (String)dayCounts.get(noOfDays); + if(monthIDs == null) { + monthIDs = "" + monthID; + } else { + monthIDs += "," + monthID; + } + dayCounts.put(noOfDays,monthIDs); + } + rs.close(); + rs = null; + if(monthsAndDays.size() != 12 && monthsAndDays.size() != 1) { + Logger.log(LogMessageCategory.ERROR, "MonthOfAnyYear must have all 12 months or " + + "one pseudo month"); + return false; + } + + sql = "select dayID, noOfRealDays from dayOfAnyWeek"; + rs = SQLRunner.executeQuery(executionDatabase, sql); + while(rs.next()) { + Integer dayID = new Integer(rs.getInt(1)); + Integer noOfRealDays = new Integer(rs.getInt(2)); + realDaysPerDay.put(dayID,noOfRealDays); + noOfRealDaysClause += " when " + dayID + " then " + noOfRealDays; + portionOfWeekPerDayClause += " when " + dayID + " then " + (1.0/noOfRealDays.doubleValue()); + } + rs.close(); + rs = null; + } catch(Exception e) { + Logger.logError(e, "Failed to get monthID from MonthOfAnyYear with: " + sql); + return false; + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(executionDatabase != null) { + DatabaseConnectionManager.checkInConnection( + MOVESDatabaseType.EXECUTION, executionDatabase); + executionDatabase = null; + } + noOfRealDaysClause += " else 1 end"; + portionOfWeekPerDayClause += " else 1 end"; + } + return true; + } +} diff --git a/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThread.java b/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThread.java new file mode 100644 index 0000000..bdda8cb --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThread.java @@ -0,0 +1,87 @@ +/************************************************************************************************** + * @(#)WorkFileRetrieverThread.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FilenameFilter; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.sql.*; +import java.util.LinkedList; +import java.util.Set; +import java.util.Iterator; + +/** + * Retrieves completed work files that have been processed by a remote worker system. + * + * @author Cimulus + * @version 2002-01-27 +**/ +public class WorkFileRetrieverThread extends MOVESThread { + /** + * The temporary folder that files are internally built in before they are JAR'd + * in the distributed path. + **/ + File temporaryFolderPath; + + /** + * Standard constructor + **/ + public WorkFileRetrieverThread() { + } + + /** + * Performs thread start up code + * @return Should the thread continue to run + **/ + protected boolean startupInThread() { + try { + while (true) { + // The Java File object doesn't support creating a temporary file + temporaryFolderPath = File.createTempFile("RetrieveProcessingTemp", ""); + temporaryFolderPath.delete(); + if(temporaryFolderPath.mkdir()) { + temporaryFolderPath.deleteOnExit(); + break; + } + } + } catch (IOException exception) { +// Logger.log(LogMessageCategory.ERROR +// , "IOException during createTempFile: " + exception); + return false; + } + + return true; + } + + /** + * This performs one iteration of thread functionality. Upon return, the MOVESThread + * will automatically check for termination conditions. + * @return Should the thread continue to run + **/ + protected boolean threadIterationGo() { + return true; + } + + /** + * Called directly after threadIterationGo. Performs a simple thread loop pause. + * @throws InterruptedException This is thrown if the thread is interruped during a sleep() + **/ + protected void threadIterationWait() throws InterruptedException { + sleep(5 * 1000); + } + + /** Performs all necessary shutdown **/ + protected void shutdownInThread() { + } +} diff --git a/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThreadTest.java b/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThreadTest.java new file mode 100644 index 0000000..29c9c89 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/WorkFileRetrieverThreadTest.java @@ -0,0 +1,53 @@ +/************************************************************************************************** + * @(#)WorkFileRetrieverThreadTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import gov.epa.otaq.moves.master.runspec.*; +import java.sql.SQLException; +import junit.framework.*; + +/** + * Test Case for the WorkFileRetrieverThread class + * + * @author Cimulus + * @version 2003-03-07 +**/ +public class WorkFileRetrieverThreadTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public WorkFileRetrieverThreadTest(String name) { + super(name); + } + + /** + * Test launching and requesting termination of the thread. + * @throws InterruptedException Exception from Thread.join method + **/ + public void testLifeCycle() throws InterruptedException, SQLException { +/* + // initialize the connections to the county db + DatabaseConnectionManager.getTheManager().openDefaultGUIConnection(); + + MOVESEngine nmimEngine = new MOVESEngine(); + DataHandlerHelper dataHandlerHelper = new MOBILEDataHandlerHelper(0); + + RunSpec runSpec = new RunSpec(); + ExecutionRunSpec.theExecutionRunSpec = new ExecutionRunSpec(runSpec); + WorkFileRetrieverThread localThread = new WorkFileRetrieverThread(movesEngine, + dataHandlerHelper, "WorkFileRetrieverThread"); + localThread.start(); + + assertTrue(localThread.isAlive()); + localThread.signalToTerminate(); + + Logger.log(LogMessageCategory.DEBUG, "Called join"); + localThread.join(); +*/ + } +} diff --git a/gov/epa/otaq/moves/master/framework/WorksheetChooserDialog.java b/gov/epa/otaq/moves/master/framework/WorksheetChooserDialog.java new file mode 100644 index 0000000..d3a89ed --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/WorksheetChooserDialog.java @@ -0,0 +1,186 @@ +/************************************************************************************************** + * @(#)WorksheetChooserDialog.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.border.*; +import javax.swing.text.*; +import java.util.*; +import java.io.*; +import javax.swing.table.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.gui.*; + +/** + * Select a worksheet within an XLS file + * + * @author Wesley Faler + * @version 2011-09-10 +**/ +public class WorksheetChooserDialog extends JDialog implements ActionListener, ListSelectionListener { + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** report results, including header, separator, and records **/ + JList list; + /** data container for list **/ + DefaultListModel listModel; + /** the OK button **/ + JButton okButton; + /** the Cancel button **/ + JButton cancelButton; + + ArrayList worksheets; + public String selectedWorksheetName = null; + + /** + * Constructs the main panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + * @param worksheetsToUse list of worksheet name String objects in the order they appear + * within the workbook + **/ + public WorksheetChooserDialog(JFrame parent, ArrayList worksheetsToUse) { + super(parent, "Choose XLS Worksheet"); + frame = parent; + worksheets = worksheetsToUse; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + if(!populateControls()) { + return; + } + //setSize(250,250); + pack(); + setModal(true); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(250,250); + setVisible(true); //show(); + } + + /** + * Fill the list of IMCoverage records + * @return true if the list was filled and should be shown + **/ + boolean populateControls() { + // Clear the list + listModel.clear(); + // Load + for(Iterator i=worksheets.iterator();i.hasNext();) { + String t = (String)i.next(); + listModel.addElement(t); + } + // Enable/Disable controls as needed + assessSituation(); + return true; + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + void createControls() { + listModel = new DefaultListModel(); + list = new JList(listModel); + list.addListSelectionListener(this); + + okButton = new JButton("OK"); + okButton.addActionListener(this); + cancelButton = new JButton("Cancel"); + cancelButton.addActionListener(this); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + JPanel arrangeControls() { + JPanel result = new JPanel(); + result.setLayout(new BoxLayout(result,BoxLayout.Y_AXIS)); + + Box b = Box.createHorizontalBox(); + b.add(new JLabel("Select the Worksheet to read:")); + b.add(Box.createHorizontalGlue()); + result.add(b); + + JScrollPane s = new JScrollPane(list); + s.setHorizontalScrollBar(new JScrollBar(JScrollBar.HORIZONTAL)); + s.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); + s.setVerticalScrollBar(new JScrollBar(JScrollBar.VERTICAL)); + s.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); + result.add(s); + + // Add buttons + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new BoxLayout(buttonPanel,BoxLayout.X_AXIS)); + buttonPanel.add(okButton); + buttonPanel.add(Box.createHorizontalGlue()); + buttonPanel.add(cancelButton); + + result.add(buttonPanel); + + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == okButton) { + handleOKButton(); + } else if(e.getSource() == cancelButton) { + dispose(); + } + } + + /** Process a click on the OK button **/ + public void handleOKButton() { + java.util.List selectedRecords = list.getSelectedValuesList(); + if(selectedRecords == null || selectedRecords.isEmpty()) { + return; + } + + selectedWorksheetName = selectedRecords.get(0); + + if(selectedWorksheetName != null && selectedWorksheetName.length() > 0) { + dispose(); + } + } + + /** + * Called when the selection in the list changes. + * @param e the ListSelectionEvent to be handled + **/ + public void valueChanged(ListSelectionEvent e) { + assessSituation(); + } + + /** Examine the selected items and enable/disable buttons accordingly **/ + void assessSituation() { + boolean okButtonStatus = false; + + int index = list.getSelectedIndex(); + if(index >= 0 && index < worksheets.size()) { + okButtonStatus = true; + } + + okButton.setEnabled(okButtonStatus); + } +} diff --git a/gov/epa/otaq/moves/master/framework/importers/BasicDataHandler.java b/gov/epa/otaq/moves/master/framework/importers/BasicDataHandler.java new file mode 100644 index 0000000..aa55599 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/BasicDataHandler.java @@ -0,0 +1,1436 @@ +/************************************************************************************************** + * @(#)BasicDataHandler.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.util.*; +import java.sql.*; +import java.io.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; + +/** + * Utility class for moving data with importers. + * + * @author Wesley Faler + * @author Don Smith + * @version 2015-06-09 +**/ +public class BasicDataHandler implements IDataHandler { + /** Marker for the beginning of a table's definition **/ + public static final String BEGIN_TABLE = "**BEGIN_TABLE**"; + + /** Interface for objects providing data source information during imports **/ + public interface IProvider { + /** + * Obtain the name of the file holding data for a table. + * @param tableName table in question + * @return the name of the file holding data for a table, null or blank if + * no file has been specified. + **/ + String getTableFileSource(String tableName); + + /** + * Obtain the name of the worksheet within an XLS file holding data for a table. + * @param tableName table in question + * @return the name of the worksheet within an XLS file, null or blank if no + * worksheet has been specified or if the file is not an XLS file. + **/ + String getTableWorksheetSource(String tableName); + + /** + * Allow custom processing and SQL for exporting data. + * @param type which type of MOVES database holds the exported data. Typically, this + * will be DEFAULT, EXECUTION, or null. null indicates a user-supplied database is + * being used. + * @param db database holding the data to be exported + * @param tableName table being exported + * @return SQL to be used or null if there is no alternate SQL. + **/ + String getAlternateExportSQL(MOVESDatabaseType type, Connection db, String tableName); + + /** + * Cleanup custom processing and SQL for exporting data. + * @param type which type of MOVES database holds the exported data. Typically, this + * will be DEFAULT, EXECUTION, or null. null indicates a user-supplied database is + * being used. + * @param db database holding the data to be exported + * @param tableName table being exported + **/ + void cleanupAlternateExportSQL(MOVESDatabaseType type, Connection db, String tableName); + } + + /** Interface for objects providing data source information during imports **/ + public interface IProvider2 { + /** + * Called to notify that an Import operation is starting. + **/ + void onImportBegin(); + } + + /** + * Commonly used decode tables and queries for them. Arranged as pairs of entries, + * the first entry is the table name, the second the ORDER BY'd query for records. + * These records are filtered against the ImporterManager using common column names + * to identify the filter columns and purposes. + **/ + public static String[] commonDecodeTablesAndQueries = { + "MonthGroupOfAnyYear", + "select monthGroupID, monthGroupName" + + " from MonthGroupOfAnyYear" + + " order by monthGroupID", + + "MonthOfAnyYear", + //"select monthID, monthName, (case when monthID=2 then (noOfDays+##isLeapYear##) else noOfDays end) as noOfDays" + "select monthID, monthName, noOfDays" + + " from monthOfAnyYear" + + " order by monthID", + + "FuelFormulation", + "select ff.fuelFormulationID," + + " ft.fuelTypeID, ft.fuelTypeDesc," + + " ff.fuelSubTypeID, fuelSubtypeDesc," + + " RVP, sulfurLevel, ETOHVolume," + + " MTBEVolume, ETBEVolume," + + " TAMEVolume, aromaticContent, olefinContent," + + " benzeneContent, e200, e300, t50, t90," + //+ " volToWtPercentOxy," + + " bioDieselEsterVolume," + + " cetaneIndex, PAHContent," + + " fuelSubtypePetroleumFraction," + + " fuelSubtypeFossilFraction," + + " carbonContent, oxidationFraction," + + " humidityCorrectionCoeff," + + " energyContent, fuelDensity" + + " from FuelFormulation ff" + + " inner join FuelSubType fs using (fuelSubTypeID)" + + " inner join FuelType ft using (fuelTypeID)" + + " order by ft.fuelTypeID, ff.fuelFormulationID", + + "FuelSubtype", + "select ft.fuelTypeID, ft.fuelTypeDesc," + + " fuelSubTypeID, fuelSubtypeDesc," + + " fuelSubtypePetroleumFraction," + + " fuelSubtypeFossilFraction," + + " carbonContent, oxidationFraction," + + " humidityCorrectionCoeff," + + " energyContent, fuelDensity" + + " from FuelSubType fs" + + " inner join FuelType ft using (fuelTypeID)" + + " order by ft.fuelTypeID, fs.fuelSubtypeID", + + "FuelType", + "select fuelTypeID, fuelTypeDesc," + + " humidityCorrectionCoeff," + + " fuelDensity" + + " from FuelType ft" + + " order by ft.fuelTypeID", + + "nrFuelSubtype", + "select ft.fuelTypeID, ft.fuelTypeDesc," + + " fuelSubTypeID, fuelSubtypeDesc," + + " fuelSubtypePetroleumFraction," + + " fuelSubtypeFossilFraction," + + " carbonContent, oxidationFraction," + + " humidityCorrectionCoeff," + + " energyContent, fuelDensity" + + " from nrFuelSubType fs" + + " inner join nrFuelType ft using (fuelTypeID)" + + " order by ft.fuelTypeID, fs.fuelSubtypeID", + + "nrFuelType", + "select fuelTypeID, fuelTypeDesc," + + " humidityCorrectionCoeff," + + " fuelDensity" + + " from nrFuelType ft" + + " order by ft.fuelTypeID", + + "FuelSupplyYear", + "select fuelYearID, yearID" + + " from year" + + " order by yearID", + + "County", + "select countyID, stateName, countyName" + + " from County" + + " inner join State using (stateID)" + + " order by stateName, countyName", + + "CountyState", + "select countyID, countyName, State.stateID, stateName" + + " from County" + + " inner join State using (stateID)" + + " order by stateName, countyName", + + "Zone", + "select zoneID, z.countyID, stateName, countyName" + + " from Zone z" + + " inner join County c using (countyID)" + + " inner join State s using (stateID)" + + " order by stateName, countyName", + + "HPMSVType", + "select HPMSVtypeID, HPMSVtypeName" + + " from HPMSVType" + + " order by HPMSVtypeID", + + "AgeCategory", + "select ageID, ageCategoryName" + + " from ageCategory" + + " order by ageID", + + "RoadType", + "select roadTypeID, roadDesc" + + " from roadType" + + " where roadTypeID <= 5" + + " order by roadTypeID", + + "RoadTypeHwy", // Not a real table, but a filtered version of RoadType + "select roadTypeID, roadDesc" + + " from roadType" + + " where roadTypeID in (2,4)" + + " order by roadTypeID", + + "AvgSpeedBin", + "select avgSpeedBinID, avgBinSpeed, avgSpeedBinDesc," + + " opModeIDTirewear, opModeIDRunning" + + " from avgSpeedBin" + + " order by avgSpeedBinID", + + "SourceUseType", + "select sourceTypeID, sourceTypeName, s.HPMSVtypeID, h.HPMSVtypeName" + + " from sourceUseType s" + + " inner join HPMSVtype h on h.HPMSVtypeID=s.HPMSVtypeID" + + " order by sourceTypeID", + + "HourOfAnyDay", + "select hourID, hourName" + + " from hourOfAnyDay" + + " order by hourID", + + "HourDay", + "select hourDayID, hd.dayID, dayName, hd.hourID, hourName" + + " from hourDay hd" + + " inner join hourOfAnyDay h using (hourID)" + + " inner join dayOfAnyWeek d using (dayID)" + + " order by hd.dayID, hd.hourID", + + "PollutantProcessAssoc", + "select polProcessID, ppa.processID, processName, ppa.pollutantID, pollutantName" + + " from PollutantProcessAssoc ppa" + + " inner join EmissionProcess using (processID)" + + " inner join Pollutant using (pollutantID)" + + " order by polProcessID", + + "Pollutant", + "select pollutantID, pollutantName, NEIPollutantCode, shortName" + + " from pollutant" + + " order by pollutantID", + + "Process", + "select processID, processName, SCCProcID" + + " from emissionProcess" + + " order by processID", + + "IMPollutantProcessAssoc", + "select polProcessID, ppa.processID, processName, ppa.pollutantID, pollutantName," + + " isAffectedByExhaustIM, isAffectedByEvapIM" + + " from PollutantProcessAssoc ppa" + + " inner join EmissionProcess using (processID)" + + " inner join Pollutant using (pollutantID)" + + " where (isAffectedByExhaustIM='Y' or isAffectedByEvapIM='Y')" + + " order by polProcessID", + + "OperatingMode", + "select opModeID, opModeName, VSPLower, VSPUpper, speedLower, speedUpper," + + " brakeRate1Sec, brakeRate3Sec, minSoakTime, maxSoakTime" + + " from OperatingMode" + + " order by opModeID", + + "OperatingModeAux", + "select opModeID, opModeName" + + " from OperatingMode" + + " where opModeID >= 200 and opModeID <= 299" + + " order by opModeID", + + "StartsOperatingMode", + "select opModeID, opModeName, VSPLower, VSPUpper, speedLower, speedUpper," + + " brakeRate1Sec, brakeRate3Sec, minSoakTime, maxSoakTime" + + " from OperatingMode" + + " where opModeID >= 101 and opModeID < 150" + + " order by opModeID", + + "State", + "SELECT stateID, stateName, stateAbbr FROM state ORDER BY stateName", + + "IMInspectFreq", + "select inspectFreq, inspectFreqDesc from IMInspectFreq order by inspectFreq", + + "IMTestStandards", + "select testStandardsID, testStandardsDesc" + + " from IMTestStandards order by testStandardsDesc", + + "EngineTech", + "select engTechID, engTechName" + + " from engineTech order by engTechID", + + "DayOfAnyWeek", + "select dayID, dayName, noOfRealDays" + + " from DayOfAnyWeek" + + " order by dayID", + + "Region", + "select regionID, VV, WW, XX, YY, ZZ, description" + + " from region" + + " order by regionID" + + /* TODO reinstate once NRDB use is mandatory + "NRAgeCategory", + "select ageID, ageCategoryName" + + " from NRAgeCategory" + + " order by ageID", + + "NREquipmentType", + "select NREquipTypeID, description, sectorID, useDefaultScrappage, surrogateID" + + " from NREquipmentType" + + " order by NREquipTypeID" + */ + }; + + /** Importer **/ + IImporter importer; + /** Decode tables and their queries, keyed by table name, holds SQL strings **/ + TreeMapIgnoreCase decodeTablesAndQueries = new TreeMapIgnoreCase(); + /** + * Descriptor for the table(s) used by this importer. The format is as follows: + * BEGIN_TABLE, "tablename1", + * "columnName1", "optionalDecodeTableName", "optionalFilterType", + * "columnNameN", "optionalDecodeTableName", "optionalFilterType", + * BEGIN_TABLE, "tableName2", + * ... + * Each column in each managed table is listed. If the column requires the use of + * decode table when generating a template, then name the table otherwise just + * provide "". If the column is subject to filtering according to the RunSpec's + * information, provide its standard name as the filter type (using ImportManager's + * FILTER_XXXX constants), otherwise provide "". + **/ + String[] descriptor; + /** + * Data table names as read from descriptor and created by the first call + * to getDataTableNames() + **/ + ArrayList dataTableNames; + /** Provider for data required during imports **/ + IProvider importDataProvider; + + /** + * Constructor + * @param importerToUse importer for this data handler + * @param descriptorToUse descriptor for the table(s) used by this importer + * @param importDataProviderToUse Provider for data required during imports + **/ + public BasicDataHandler(IImporter importerToUse, String[] descriptorToUse, + IProvider importDataProviderToUse) { + importer = importerToUse; + descriptor = descriptorToUse; + importDataProvider = importDataProviderToUse; + // Setup common decode tables and their queries + for(int i=0;i 0) { + // Do replacements + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + if(importer != null && importer.getImporterManager() != null + && importer.getImporterManager().runSpec != null) { + replacements.put("##isLeapYear##",importer.getImporterManager().isLeapYear()?"1":"0"); + } + sql = StringUtilities.doReplacements(sql,replacements); + } + return sql; + } + + /** + * Get a list of the tables that affected by import, export, and clear. + * @return an ArrayList of String objects holding table names + **/ + public ArrayList getDataTableNames() { + if(dataTableNames == null) { + dataTableNames = new ArrayList(); + for(int i=0;i filterNames, String filterName) { + filterNames.add(filterName); + } + + /** Event called when a template is being initiated **/ + public void onBeginTemplate() { + // Nothing to do here + } + + /** + * Called for each row in a template to accept or reject the combination. + * @param value array of objects for each column in the template + * @return true if the row should be written + **/ + public boolean shouldWriteTemplateRow(Object[] values) { + return true; + } + + /** + * Alter the name of a filter during template creation. Used, for instance, + * to build a template using all fuel types rather than just those in the + * runspec. + * @param tableName name of the current table. + * @param filterName name of the ImporterManager filter. + * @return the name of the ImporterManager filter to be used. Never null, never blank. + **/ + public String adjustTemplateFilterName(String tableName, String filterName) { + return filterName; + } + + /** + * Check the applicability of a filter during export of default data. + * @param tableName the current table. + * @param filterName name of the ImporterManager filter. + * @return true if the filter should be used + **/ + public boolean shouldUseFilterForExport(String tableName, String filterName) { + return true; + } + + /** + * Create a template file (or files). + * @param tableName table that a template should be created for + * @param destinationFile file selected by the user to be created. The file may already + * exist. + * @return true if the template was created successfully, false otherwise. + **/ + public boolean createTemplate(String tableName, File destinationFile) { + addAnyCustomDomainInformation(); + onBeginTemplate(); + TreeSetIgnoreCase decodeTablesToCreate = new TreeSetIgnoreCase(); + ArrayList columnNames = new ArrayList(); + ArrayList filterNames = new ArrayList(); + // Read the descriptor for the table to be exported + for(int i=0;i 0) { + decodeTablesToCreate.add(descriptor[j+1]); + } + addTemplateFilterName(filterNames,descriptor[j+2]); + } + break; + } + // Get the set of filter values to be written into the template + ArrayList[] filterValues = new ArrayList[columnNames.size()]; + for(int i=0;i i=columnNames.iterator();i.hasNext();) { + String columnName = (String)i.next(); + writer.writeTextCell(columnName); + } + writer.endRow(); + // Write records for all key combinations present in the filter. + // Just write the filter keys, leaving other columns empty. + writeFilterValues(writer,filterValues); + // For each decode table to create, either create it as a new file or add it + // as a new tab to the primary destination file if the file type is XLS. + CommonNamesFilter filter = new CommonNamesFilter(importer.getImporterManager(),true); + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + for(Iterator i=decodeTablesToCreate.iterator();i.hasNext();) { + String decodeTableName = (String)i.next(); + String sql = getDecodeSQL(decodeTableName); + if(sql != null && sql.length() > 0) { + writer.startTab(decodeTableName); + writer.writeSQLResults(db,sql,filter); + } + } + return true; + } catch(Exception e) { + Logger.logError(e,"Unable to create template for " + tableName); + return false; + } finally { + if(writer != null) { + writer.close(); + } + } + } + + /** + * Write all combinations of the filterValues (the non-null entries that is) + * into a template file. Columns without filter values are left empty. + * @param writer file to be written + * @param filterValues array of ArrayList objects, each holding any type of object + * that can be written with CellFileWriter.writeCell(Object). + * @throws Exception if anything goes wrong + **/ + private void writeFilterValues(CellFileWriter writer, ArrayList[] filterValues) + throws Exception { + int[] cursors = new int[filterValues.length]; // default to 0's + Object[] currentValues = new Object[filterValues.length]; // default to null's + // Setup initial values + for(int i=0;i 0) { + currentValues[i] = filterValues[i].get(0); + } + } + // Loop until done + while(true) { + if(shouldWriteTemplateRow(currentValues)) { + // Write the current values + for(int i=0;i= 0) { + if(filterValues[index] == null || filterValues[index].size() == 0) { + index--; + continue; + } + if(cursors[index] >= filterValues[index].size()-1) { + cursors[index] = 0; + currentValues[index] = filterValues[index].get(0); + index--; + continue; + } + cursors[index]++; + currentValues[index] = filterValues[index].get(cursors[index]); + break; + } + // When done, just return. + if(index < 0) { + return; + } + } + } + + /** + * Check the import source for errors and optionally store its data. + * Record the successful import in the database's log. + * @param db database to receive the imported data + * @param shouldCommit true if the imported data should actually be saved, + * false if it should only be scanned for possible issues. + * @param messages information, warnings, and errors to be shown to the user + * @return true if the data was imported successfully. + **/ + public boolean doImport(Connection db, boolean shouldCommit, ArrayList messages) { + addAnyCustomDomainInformation(); + Logger.log(LogMessageCategory.INFO,"doImport for " + importer.getClass().getName()); + messages.clear(); + CellFileReader reader = null; + String tableName = ""; + try { + importer.getImporterManager().fillCountyDomainTables(db); + boolean foundAnyTables = false; + if(importDataProvider instanceof IProvider2) { + ((IProvider2)importDataProvider).onImportBegin(); + } + + // Import each table, noting table and column names from the descriptor array + for(int i=0;i columnNames = new ArrayList(); + ArrayList filterTypes = new ArrayList(); + TreeSetIgnoreCase columnsToIgnore = new TreeSetIgnoreCase(); + for(int j=i+2;j 0) { + String worksheetName = importDataProvider.getTableWorksheetSource(tableName); + reader = new CellFileReader(new File(fileName),worksheetName); + if(!doImport(db,shouldCommit,messages,reader,tableName,columnNames,filterTypes,columnsToIgnore)) { + return false; + } + reader.close(); + reader = null; + foundAnyTables = true; + messages.add(tableName + " imported."); + } else { + messages.add(tableName + " not imported, no file specified."); + } + } + // Try to run a script that will finish the import, issuing warnings as required + String scriptFileName = getScriptFileName(importer); + runPostImportScript(db,scriptFileName,messages); + importer.getImporterManager().addDatabaseToRunSpec(true); + if(foundAnyTables) { + messages.add("Import complete."); + } else { + messages.add("Import complete, but no files were specified."); + } + return true; + } catch(Exception e) { + String t = "Unable to import data into " + tableName + ": " + e.getMessage(); + messages.add(t); + Logger.logError(e,t); + return false; + } finally { + if(reader != null) { + reader.close(); + reader = null; + } + } + } + + /** + * Check the import source for errors and optionally store its data. + * Record the successful import in the database's log. + * @param db database to receive the imported data + * @param shouldCommit true if the imported data should actually be saved, + * false if it should only be scanned for possible issues. + * @param messages information, warnings, and errors to be shown to the user + * @param reader CellFileReader setup to read from a selected file and worksheet + * @param tableName table to receive the imported data + * @param columnNames columns to be imported + * @param filterTypes ImporterManager.FILTER_XXX type, if any, for each column. + * Contains null or "" entries for those columns that do not use filtering. + * @param columnsToIgnore names of columns to be skipped during import, may be empty + * @return true if the data was imported successfully. + **/ + private boolean doImport(Connection db, boolean shouldCommit, ArrayList messages, + CellFileReader reader, String tableName, ArrayList columnNames, + ArrayList filterTypes, TreeSetIgnoreCase columnsToIgnore) throws Exception { + boolean success = true; + File tempFile = new File("doImportTemp.txt"); + if(tempFile.exists()) { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + if(tempFile.exists()) { + throw new SQLException("Unable to delete temporary file used by doImport"); + } + } + BufferedWriter tempWriter = null; + // Create the destination table if it doesn't already exist + String createTableSQL = (String) + DatabaseConnectionManager.defaultDatabaseCreateTableStatements.get(tableName.toLowerCase()); + if(createTableSQL != null && createTableSQL.length() > 0) { + SQLRunner.executeSQL(db,createTableSQL); + } + int[] dataTypes = new int[columnNames.size()]; // 0:string, 1:int, 2:float, 3:double + boolean[] isNullable = new boolean[columnNames.size()]; + int[] stringLengths = new int[columnNames.size()]; // max length of string columns + Statement statement = null; + ResultSet rs = null; + String sql = ""; + String columnNamesText = ""; + try { + if(shouldCommit) { + tempWriter = new BufferedWriter(new FileWriter(tempFile)); + } + // Learn the column data types for the target table + columnNamesText = (String)columnNames.get(0); + for(int i=1;i columnNamesInFile = new ArrayList(); + int consecutiveBlankColumnCount = 0; + while(true) { + String t = reader.readStringCell(); + if(t == null) { + break; + } + t = t.trim(); + if(columnsToIgnore.contains(t)) { // treat ignored columns as blank columns + t = ""; + } + columnNamesInFile.add(t); + if(t.length() <= 0) { + consecutiveBlankColumnCount++; + if(consecutiveBlankColumnCount >= 10) { + break; + } + } else { + consecutiveBlankColumnCount = 0; + } + } + reader.endRow(); // move past the header row + // Setup the mapping between the database columns and those in the file + ImporterManager manager = importer.getImporterManager(); + int[] sqlColumnIndexByFileIndex = new int[columnNamesInFile.size()]; + int[] fileColumnIndexBySQLIndex = new int[dataTypes.length]; + for(int i=0;i 0 && rowData[si].length() > stringLengths[si]) { + rowData[si] = rowData[si].substring(0,stringLengths[si]); + } else if(rowData[si] == null) { + rowData[si] = ""; + } + rowObjects[si] = rowData[si]; + break; + case 1: // int + rowObjects[si] = reader.readIntegerCell(); + if(rowObjects[si] != null) { + rowData[si] = rowObjects[si].toString(); + } + break; + case 2: // float + case 3: // double + rowObjects[si] = reader.readDoubleCell(); + if(rowObjects[si] != null) { + rowData[si] = rowObjects[si].toString(); + } + break; + } + if(rowObjects[si] == null && !isNullable[si]) { + if(missingDataCount <= 2) { + // First few times, give row and column name + messages.add("ERROR: Missing required data for column " + + (String)columnNames.get(si) + + ", line " + reader.getLineNumber()); + success = false; + } else if(missingDataCount == 3) { + // Several messages have been issued, give generic message + messages.add("ERROR: Additional required data is missing"); + } + missingDataCount++; + continue; + } + } + reader.endRow(); + if(!success) { + // Don't check the filters if unsuccessful in getting data. + continue; + } + // Check the filter for each column and each row, issuing a warning + // but still using the row. + ImporterManager.Message tempMessage = new ImporterManager.Message(); + for(int i=0;i 0) { + tempWriter.write("\t"); + } + if(rowData[i] != null) { + tempWriter.write(rowData[i]); + } else { + tempWriter.write("\\N"); + } + } + tempWriter.write("\n"); + } + if(success && shouldCommit) { + // Close the writer to the temporary file + tempWriter.close(); + // Load the data + sql = "LOAD DATA INFILE '" + + tempFile.getCanonicalPath().replace('\\','/') + "' REPLACE INTO TABLE " + + tableName + " (" + columnNamesText + ")"; + SQLRunner.executeSQL(db,sql); + // After the import, analyze the table for performance reasons + sql = "analyze table " + tableName; + SQLRunner.executeSQL(db,sql); + // Record the successful import in the database's log. + importer.getImporterManager().log(importer,"Filled " + tableName + " table", + importer.getDescription()); + } + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + if(tempWriter != null) { + try { + tempWriter.close(); + } catch(Exception e) { + // Nothing to do here + } + tempWriter = null; + } + if(tempFile != null && tempFile.exists()) { + try { + tempFile.delete(); + } catch(Exception e) { + // Nothing to do here + } + } + } + return success; + } + + /** + * Export data into one or more files. If an XLS file is specified, each exported + * table will get its own worksheet. + * @param type which type of MOVES database holds the exported data. Typically, this + * will be DEFAULT, EXECUTION, or null. null indicates a user-supplied database is + * being used. + * @param db database holding the data to be exported + * @param file File to receive the exported data. If multiple tables are required, + * subsequent files will use names similar to this one's name. + * @return -1 if any error occured, 0 if no errors but no data, +1 for no errors and data + **/ + public int doExport(MOVESDatabaseType type, Connection db, File file) { + addAnyCustomDomainInformation(); + CellFileWriter writer = null; + boolean wereAnyPartsEmpty = true; + boolean shouldCleanupAlternateSQL = false; + TreeSetIgnoreCase tablesToDrop = new TreeSetIgnoreCase(); + SQLRunner.Query query = new SQLRunner.Query(); + + try { + TreeSetIgnoreCase decodeTablesToCreate = new TreeSetIgnoreCase(); + for(int i=0;i 0) { + sql += ","; + } + sql += descriptor[i+0]; + if(descriptor[i+2].length() > 0 && shouldUseFilterForExport(tableName,descriptor[i+2])) { + // Add the filter types for the columns + filter.setFilter(descriptor[i+0],descriptor[i+2]); + // Order by the filtered columns + if(orderBy.length() > 0) { + orderBy += ","; + } + orderBy += descriptor[i+0]; + } + } + if(writer == null) { + writer = new CellFileWriter(file,tableName); + } else { + writer.startTab(tableName); + } + // If the table doesn't exist, create it and add it to tablesToDrop + try { + query.open(db,"describe " + tableName); + } catch(Exception e) { + // This happens when the table doesn't exist, so create it + String createTableSQL = (String) + DatabaseConnectionManager.defaultDatabaseCreateTableStatements.get(tableName.toLowerCase()); + if(createTableSQL != null && createTableSQL.length() > 0) { + SQLRunner.executeSQL(db,createTableSQL); + } + tablesToDrop.add(tableName); + } finally { + query.onFinally(); + } + // Do the query now that the table definitely exists + sql = "select " + sql + " from " + tableName; + if(orderBy.length() > 0) { + sql += " order by " + orderBy; + } + String alternateSQL = null; + if(importDataProvider != null) { + alternateSQL = importDataProvider.getAlternateExportSQL(type,db,tableName); + if(alternateSQL != null && alternateSQL.length() > 0) { + sql = alternateSQL; + shouldCleanupAlternateSQL = true; + } + } + if(writer.writeSQLResults(db,sql,filter) > 0) { + wereAnyPartsEmpty = false; + } + if(shouldCleanupAlternateSQL) { + importDataProvider.cleanupAlternateExportSQL(type,db,tableName); + } + // For XLS files, create the decode tabs + if(CellFile.formatAllowsWorksheets(writer.getFileType())) { + // Read the descriptor for the table to be exported + for(int j=0;j 0) { + decodeTablesToCreate.add(descriptor[k+1]); + } + } + break; + } + } + } + + // For each decode table to create, either create it as a new file or add it + // as a new tab to the primary destination file if the file type is XLS. + CommonNamesFilter filter = new CommonNamesFilter(importer.getImporterManager(),true); + Connection defaultDb + = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + for(Iterator i=decodeTablesToCreate.iterator();i.hasNext();) { + String decodeTableName = (String)i.next(); + String sql = getDecodeSQL(decodeTableName); + if(sql != null && sql.length() > 0) { + writer.startTab(decodeTableName); + try { + writer.writeSQLResults(defaultDb,sql,filter); + } catch(SQLException e) { + Logger.log(LogMessageCategory.INFO,"SQL failed: " + sql); + throw e; + } + } + } + + if(wereAnyPartsEmpty) { + return 0; + } + return +1; + } catch(Exception e) { + Logger.logError(e,"Unable to export data"); + return -1; + } finally { + if(writer != null) { + writer.close(); + } + for(Iterator i=tablesToDrop.iterator();i.hasNext();) { + String tableName = (String)i.next(); + try { + SQLRunner.executeSQL(db,"drop table if exists " + tableName); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + + /** + * Clear data from tables. + * @param db database holding the data to be cleared + * @return true if the data was cleared + **/ + public boolean doClear(Connection db) { + getDataTableNames(); // make sure dataTableNames is populated + String sql = ""; + try { + for(Iterator i=dataTableNames.iterator();i.hasNext();) { + String tableName = (String)i.next(); + sql = "truncate table " + tableName; + try{ + SQLRunner.executeSQL(db,sql); + }catch(Exception e){ + if( e.toString().toLowerCase().contains("doesn't exist") ){ + continue; + }else{ + throw e; + } + } + } + return true; + } catch(Exception e) { + Logger.logError(e,"Unable to clear importer data"); + return false; + } + } + + /** + * Generate the expected name of a SQL script file associated with an importer. + * A file of the form "database/import/SCRIPTNAME.sql" is preferred, where + * IImporter.getScriptName() is called to obtain the SCRIPTNAME portion. + * If the preferred file does not exist, a file of the form "database/SCRIPTNAMEImporter.sql" + * is used, even if it does not exist. + * @param importer the importer to be examined + * @return name of the SQL script file to be used, including any relative path + **/ + public static String getScriptFileName(IImporter importer) { + String t = importer.getScriptName(); + String baseFileName = ""; + for(int i=0;i messages) { + String defaultDatabaseName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName; + File scriptFile = new File(scriptFileName); + String sql = ""; + Statement statement = null; + ResultSet rs = null; + try { + if(!scriptFile.exists()) { + return; + } + sql = "create table if not exists importTempMessages " + + "( message varchar(1000) not null )"; + SQLRunner.executeSQL(db,sql); + sql = "truncate table importTempMessages"; + SQLRunner.executeSQL(db,sql); + + // Run the script, substituting the defaultDatabaseName as ##defaultDatabase## + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + replacements.put("##defaultDatabase##",defaultDatabaseName); + replacements.put("##mode##","0"); // 0 is the mode after importing + fillStandardReplacements(importer,replacements); + try { + DatabaseUtilities.executeScript(db,scriptFile,replacements); + } catch(Exception e) { + messages.add("ERROR: Unable to execute import validation script"); + Logger.logError(e,"Unable to execute script " + scriptFileName); + } + + // Retrieve the results from importTempMessages + sql = "select message from importTempMessages"; + statement = db.createStatement(); + rs = SQLRunner.executeQuery(db,sql); + TreeSetIgnoreCase messagesAlreadySeen = new TreeSetIgnoreCase(); + while(rs.next()) { + String m = rs.getString(1); + if(m != null && m.length() > 0) { + if(!messagesAlreadySeen.contains(m)) { + messagesAlreadySeen.add(m); + messages.add(m); + } + } + } + rs.close(); + rs = null; + statement.close(); + statement = null; + + sql = "drop table importTempMessages"; + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + // Nothing to do here + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** + * Generate standard replacement text for use with importer scripts. Such items include + * the set of years in the RunSpec as a CSV list. + * @param importer importer to examine + * @param replacments map to be populated + **/ + public static void fillStandardReplacements(IImporter importer, + TreeMapIgnoreCase replacements) { + ImporterManager manager = importer.getImporterManager(); + String[] pairs = { + ImporterManager.FILTER_YEAR, "##yearIDs##", + ImporterManager.FILTER_FUEL, "##fuelTypeIDs##", + ImporterManager.FILTER_HOURDAY, "##hourDayIDs##", + ImporterManager.FILTER_HOUR, "##hourIDs##", + ImporterManager.FILTER_DAY, "##dayIDs##", + ImporterManager.FILTER_MONTH, "##monthIDs##", + ImporterManager.FILTER_MONTH_GROUP, "##monthGroupIDs##", + ImporterManager.FILTER_SOURCE, "##sourceTypeIDs##", + ImporterManager.FILTER_ZONE, "##zoneIDs##", + ImporterManager.FILTER_COUNTY, "##countyIDs##", + ImporterManager.FILTER_STATE, "##stateIDs##", + ImporterManager.FILTER_FUEL_SUBTYPE, "##fuelSubtypeIDs##", + ImporterManager.FILTER_ROAD_TYPE, "##roadTypeIDs##", + ImporterManager.FILTER_HPMS_VTYPE, "##hpmsVtypeIDs##", + ImporterManager.FILTER_POLPROCESSID, "##polProcessIDs##", + ImporterManager.FILTER_SOURCEFUELTYPE, "##sourceFuelTypeIDs##", + ImporterManager.FILTER_FUEL_REGION, "##regionIDs##", + ImporterManager.FILTER_FUEL_YEAR, "##fuelYearIDs##", + ImporterManager.FILTER_PROCESS, "##processIDs##" + }; + for(int i=0;i messages, + int mode) { + String scriptFileName = getScriptFileName(importer); + runScript(db,importer,messages,mode,scriptFileName); + } + + /** + * Attempt to run an SQL script to validate the state of imported data. + * To return messages, the script must fill a table named "importTempMessages" which + * has only one column, "message" which is varchar(1000). The script can know the name + * of the current default database by referencing ##defaultDatabase## where a constant + * database name would normally go. + * @param db database holding the new data + * @param scriptFileName full path and name of the script to be run + * @param messages messages to be shown to the user about the data checks + * @param mode 0 if run after importing, 1 if run to check for tab status + * @param scriptFileName file to be run + **/ + public static void runScript(Connection db, IImporter importer, ArrayList messages, + int mode, String scriptFileName) { + String defaultDatabaseName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName; + File scriptFile = new File(scriptFileName); + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + try { + if(!scriptFile.exists()) { + return; + } + sql = "create table if not exists importTempMessages " + + "( message varchar(1000) not null )"; + SQLRunner.executeSQL(db,sql); + sql = "truncate table importTempMessages"; + SQLRunner.executeSQL(db,sql); + + // Run the script, substituting the defaultDatabaseName as ##defaultDatabase## + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + replacements.put("##defaultDatabase##",defaultDatabaseName); + replacements.put("##mode##",""+mode); + fillStandardReplacements(importer,replacements); + try { + DatabaseUtilities.executeScript(db,scriptFile,replacements); + } catch(Exception e) { + messages.add("ERROR: Unable to execute importer script"); + Logger.logError(e,"Unable to execute script " + scriptFileName); + } + + if(messages != null) { + // Retrieve the results from importTempMessages + sql = "select message from importTempMessages"; + query.open(db,sql); + TreeSetIgnoreCase messagesAlreadySeen = new TreeSetIgnoreCase(); + while(query.rs.next()) { + String m = query.rs.getString(1); + if(m != null && m.length() > 0) { + if(!messagesAlreadySeen.contains(m)) { + messagesAlreadySeen.add(m); + messages.add(m); + } + } + } + query.close(); + } + + sql = "drop table importTempMessages"; + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + // Nothing to do here + } finally { + query.onFinally(); + } + } +} diff --git a/gov/epa/otaq/moves/master/framework/importers/CommonNamesFilter.java b/gov/epa/otaq/moves/master/framework/importers/CommonNamesFilter.java new file mode 100644 index 0000000..395d796 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/CommonNamesFilter.java @@ -0,0 +1,141 @@ +/************************************************************************************************** + * @(#)CommonNamesFilter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.common.*; + +/** + * Filters SQL results using common column names against an ImporterManager. + * + * @author Wesley Faler + * @version 2013-11-29 +**/ +public class CommonNamesFilter implements ISQLFilter { + /** Filter types keyed by common names **/ + private static TreeMapIgnoreCase filterTypesByCommonName = null; + + /** Importer Manager for this filter **/ + ImporterManager manager; + /** True if the column names should be checked against common names **/ + boolean shouldCheckCommonNames = true; + /** Column names in the order they appear in the query results **/ + String[] columnNames; + /** Column names to check and their ImporterManager.FILTER_XXXX types, if any. **/ + TreeMapIgnoreCase filterTypesByName = new TreeMapIgnoreCase(); + /** Filter types, if any, for each column in the order they appear in the query results **/ + String[] filterTypes; + + /** + * Constructor + * @param managerToUse manager for this filter + **/ + public void CommonNamesFilter(ImporterManager managerToUse) { + manager = managerToUse; + } + + /** + * Constructor + * @param managerToUse manager for this filter + * @param shouldCheckCommonNamesToUse True if the column names should be checked + * against common names. + **/ + public CommonNamesFilter(ImporterManager managerToUse, + boolean shouldCheckCommonNamesToUse) { + manager = managerToUse; + shouldCheckCommonNames = shouldCheckCommonNamesToUse; + + if(filterTypesByCommonName == null) { + filterTypesByCommonName = new TreeMapIgnoreCase(); + buildFilterTypesByCommonName(); + } + } + + /** Create and populate filterTypesByCommonName **/ + private void buildFilterTypesByCommonName() { + String[] nameFilterPairs = { + "countyID", ImporterManager.FILTER_COUNTY, + "dayID", ImporterManager.FILTER_DAY, + "fuelTypeID", ImporterManager.FILTER_FUEL, + "fuelFormulationID", ImporterManager.FILTER_FUEL_FORMULATION, + "fuelYearID", ImporterManager.FILTER_FUEL_YEAR, + "hourID", ImporterManager.FILTER_HOUR, + "monthID", ImporterManager.FILTER_MONTH, + "monthGroupID", ImporterManager.FILTER_MONTH_GROUP, + "sourceTypeID", ImporterManager.FILTER_SOURCE, + "stateID", ImporterManager.FILTER_STATE, + "yearID", ImporterManager.FILTER_YEAR, + "regionID", ImporterManager.FILTER_FUEL_REGION + }; + + for(int i=0;i getDataTableNames(); + + /** + * Create a template file (or files). + * @param tableName table that a template should be created for + * @param destinationFile file selected by the user to be created. The file may already + * exist. + * @return true if the template was created successfully, false otherwise. + **/ + boolean createTemplate(String tableName, File destinationFile); + + /** + * Check the import source for errors and optionally store its data. + * Record the successful import in the database's log. + * @param db database to receive the imported data + * @param shouldCommit true if the imported data should actually be saved, + * false if it should only be scanned for possible issues. + * @param messages information, warnings, and errors to be shown to the user + * @return true if the data was imported successfully. + **/ + boolean doImport(Connection db, boolean shouldCommit, ArrayList messages); + + /** + * Export data into one or more files. If an XLS file is specified, each exported + * table will get its own worksheet. + * @param type which type of MOVES database holds the exported data. Typically, this + * will be DEFAULT, EXECUTION, or null. null indicates a user-supplied database is + * being used. + * @param db database holding the data to be exported + * @param file File to receive the exported data + * @return -1 if any error occured, 0 if no errors but no data, +1 for no errors and data + **/ + int doExport(MOVESDatabaseType type, Connection db, File file); + + /** + * Clear data from tables. + * @param db database holding the data to be cleared + * @return true if the data was cleared + **/ + boolean doClear(Connection db); +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IDataStatus.java b/gov/epa/otaq/moves/master/framework/importers/IDataStatus.java new file mode 100644 index 0000000..9d0b95a --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IDataStatus.java @@ -0,0 +1,25 @@ +/************************************************************************************************** + * @(#)IDataStatus.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.sql.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.gui.RunSpecSectionStatus; + +/** + * Interface for importers that provide a status display at domains other than County or Project. + * + * @author Wesley Faler + * @version 2009-09-06 +**/ +public interface IDataStatus { + /** + * Check a RunSpec against the database or for display of the importer. + * @param db database to be examined. + * @return the status, or null if the status should not be shown to the user. + * @throws Exception if anything goes wrong + **/ + RunSpecSectionStatus getImporterDataStatus(Connection db) throws Exception; +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IImporter.java b/gov/epa/otaq/moves/master/framework/importers/IImporter.java new file mode 100644 index 0000000..4a037dc --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IImporter.java @@ -0,0 +1,88 @@ +/************************************************************************************************** + * @(#)IImporter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.sql.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * Interface for all importer modules. + * + * @author wgfaler + * @version 2012-01-23 +**/ +public interface IImporter { + /** + * Get the ImporterManager object that is hosting the importer. + * @return the ImporterManager object that is hosting the importer + **/ + ImporterManager getImporterManager(); + + /** + * Designate the ImporterManager object that his hosting the importer. + * @param managerToUse the ImporterManager object that his hosting the importer + **/ + void setImporterManager(ImporterManager managerToUse); + + /** + * Get the name of the importer for log purposes. + * @return the name of the importer for log purposes + **/ + String getName(); + + /** + * Get the base name of the importer's supporting database script file. + * @return the base name of the importer's supporting database script file + **/ + String getScriptName(); + + /** + * Get the description of the imported data for log purposes. + * @return the description of the imported data for log purposes + **/ + String getDescription(); + + /** + * Obtain the GUI panel to be hosted for this importer. + * @return the GUI panel to be hosted for this importer + **/ + IImporterPanel getPanel(); + + /** + * Generate XML describing this importer. The XML tag must be understandable + * by ImporterInstantiator. + * @return XML + **/ + String toXML(); + + /** + * Setup the importer from XML previously created by toXML(). + * @param node XML node to be read + * @return true if the node was processed successfully + **/ + boolean fromXML(Node node); + + /** + * Obtain an object for moving data to/from the database for this importer. + * @return an IDataHandler object tied to this importer. + **/ + IDataHandler getDataHandler(); + + /** + * Get the set of tables that the importer requires in order to execute. + * @return an array of table names. Though it can be empty or null, such + * a result is nonsensical. + **/ + String[] getRequiredTables(); + + /** + * Refresh any state information from data stored in the audit log for an input database. + * @param db Database to use + **/ + void refreshFromAuditLog(Connection db); +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IImporterPanel.java b/gov/epa/otaq/moves/master/framework/importers/IImporterPanel.java new file mode 100644 index 0000000..5e2994c --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IImporterPanel.java @@ -0,0 +1,36 @@ +/************************************************************************************************** + * @(#)IImporterPanel.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import javax.swing.*; + +/** + * Interface for all GUI panels shown by importers. + * + * @author wgfaler + * @version 2009-12-10 +**/ +public interface IImporterPanel { + /** + * Get the actual JPanel to be shown + * @return the JPanel that reprents this importer + **/ + JPanel getPanel(); + + /** + * Get the IImporter that owns the panel. + * @return the IImporter that owns the panel + **/ + IImporter getImporter(); + + /** + * Get the text that titles the panel. + * @return the text that titles the panel + **/ + String getTitle(); + + /** Remove all entries from the displayed log **/ + void clearLogDisplay(); +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IImporterPart.java b/gov/epa/otaq/moves/master/framework/importers/IImporterPart.java new file mode 100644 index 0000000..a5b9a4e --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IImporterPart.java @@ -0,0 +1,51 @@ +/************************************************************************************************** + * @(#)IImporterPart.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import javax.swing.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; +import java.sql.*; + +/** + * Interface for panels that edit details about importers. + * + * @author wgfaler + * @version 2012-01-23 +**/ +public interface IImporterPart { + /** + * Get the actual JPanel to be shown + * @return the JPanel that reprents one portion of the importer + **/ + JPanel getPanel(); + + /** + * Push data from the importer to controls returned by getPanel(). + **/ + void populateControls(); + + /** + * Generate XML describing this part. + * @return XML + **/ + String toXML(); + + /** + * Setup the part from XML previously created by toXML(). + * @param node XML node to be read + * @return true if the node was processed successfully, false if the node was + * not processed or not recognized. + **/ + boolean fromXML(Node node); + + /** + * Refresh any state information from data stored in the audit log for an input database. + * @param db Database to use + **/ + void refreshFromAuditLog(Connection db); +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IImporterTabBaseProvider.java b/gov/epa/otaq/moves/master/framework/importers/IImporterTabBaseProvider.java new file mode 100644 index 0000000..0a6104f --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IImporterTabBaseProvider.java @@ -0,0 +1,82 @@ +/************************************************************************************************** + * @(#)IImporterTabBaseProvider.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.util.*; +import javax.swing.JPanel; + +/** + * Interface for objects providing information to ImporterTabBase objects. + * + * @author Wesley Faler + * @version 2013-09-03 +**/ +public interface IImporterTabBaseProvider { + /** + * Get the description of the importer + * @return the description of the importer + **/ + String getDescription(); + + /** + * Set the description of the importer + * @param descriptionToUse the description of the importer + **/ + void setDescription(String descriptionToUse); + + /** + * Get the list of messages about the imported data + * @return an ArrayList holding String objects + **/ + ArrayList getMessages(); + + /** Clear the list of messages about the imported data. **/ + void clearMessages(); + + /** + * Get the set of IImporterPart objects that allow editing importer-specific details. + * @return an ArrayList holding IImporterPart objects. null or empty are nonsensical + * but allowed. + **/ + ArrayList getParts(); + + /** + * Determine if exporting data from the default database is allowed. + * @return true if data from the default database can be exported + **/ + boolean allowDefaultDataExport(); + + /** + * Determine if exporting data from MOVESExecution is allowed. + * @return true if data from MOVESExecution can be exported + **/ + boolean allowExecutionDataExport(); + + /** + * Determine if data export restrictions may be applied. + * @return true if data from MOVESExecution or MOVES default should be regulated + * according to the CompilationFlags.ENABLE_EXPORT_DEFAULT_DATA + **/ + boolean isSubjectToExportRestrictions(); + + /** + * Determine if exporting custom data from the default database is allowed. + * @return true if data from the default database can be exported + **/ + boolean allowCustomDomainDefaultDataExport(); + + /** + * Obtain the name, if any, of a custom button on the GUI. + * @return non-null if a custom button is to be offered. + **/ + String getCustomButtonName(); + + /** + * Process a click on a custom button. + * @param name identifies the custom button. + * @param guiOwner window that is showing the custom button + **/ + void onCustomButton(String name, JPanel guiOwner); +} diff --git a/gov/epa/otaq/moves/master/framework/importers/IProjectDataImporter.java b/gov/epa/otaq/moves/master/framework/importers/IProjectDataImporter.java new file mode 100644 index 0000000..0c50cbe --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/IProjectDataImporter.java @@ -0,0 +1,26 @@ +/************************************************************************************************** + * @(#)IProjectDataImporter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.sql.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.gui.RunSpecSectionStatus; + +/** + * Interface for all importer modules that participate in the Project Domain Manager. + * + * @author wgfaler + * @version 2008-11-15 +**/ +public interface IProjectDataImporter { + /** + * Check a RunSpec against the database or for display of the importer. + * @param db database to be examined. Will be null if merely checking + * for whether to show the importer to the user. + * @return the status, or null if the importer should not be shown to the user. + * @throws Exception if anything goes wrong + **/ + RunSpecSectionStatus getProjectDataStatus(Connection db) throws Exception; +} diff --git a/gov/epa/otaq/moves/master/framework/importers/ImporterBase.java b/gov/epa/otaq/moves/master/framework/importers/ImporterBase.java new file mode 100644 index 0000000..bd10a54 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/ImporterBase.java @@ -0,0 +1,392 @@ +/************************************************************************************************** + * @(#)ImporterBase.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.util.*; +import javax.swing.*; +import java.awt.*; +import java.sql.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.gui.RunSpecSectionStatus; + +/** + * Optional base class with common utility functions for importers. Since importers technically + * only need to implement IImporter, they are free to not use this class. + * + * @author Wesley Faler + * @author Don Smith + * @version 2015-05-17 +**/ +public class ImporterBase implements IImporter, ICountyDataImporter, IProjectDataImporter, + IDataStatus { + /** Manager of this importer **/ + public ImporterManager manager; + /** Common name of this importer **/ + public String commonName = ""; + /** Type of the XML node this importer creates and reads **/ + public String xmlNodeType = ""; + /** Tables required for the importer to operate **/ + public String[] requiredTables = null; + + /** Description of the imported data **/ + public String description = ""; + /** List of String objects holding messages about the imported data **/ + public ArrayList messages = new ArrayList(); + /** + * List of IImporterPart objects for editing specific portions of the importer. + * Only parts that are allowed by the current user settings are listed. + **/ + public ArrayList parts = new ArrayList(); + /** + * List of IImporterPart objects for editing specific portions of the importer. + * All items in this list are possible, though only some will be in the parts list. + **/ + public ArrayList allParts = new ArrayList(); + + /** IImporterTabBaseProvider for this importer **/ + public ImporterTabBaseProvider tabBaseProvider; + /** GUI panel for this importer **/ + public ImporterTabBase importerPanel; + /** Data handler for this importer **/ + public IDataHandler dataHandler; + + /** True if data can be exported from the default database **/ + public boolean shouldDoDefaultDataExport = true; + + /** True if data can be exported from MOVESExecution **/ + public boolean shouldDoExecutionDataExport = false; + + /** True if data is subject to export restrictions **/ + public boolean subjectToExportRestrictions = false; + + /** True if data can be exported from the default database **/ + public boolean shouldDoCustomDefaultDataExport = false; + + /** Name, if any, of a custom button to be shown to the user **/ + public String customButtonName = null; + + class ImporterTabBaseProvider implements IImporterTabBaseProvider { + /** + * Get the description of the importer + * @return the description of the importer + **/ + public String getDescription() { + return description; + } + + /** + * Set the description of the importer + * @param descriptionToUse the description of the importer + **/ + public void setDescription(String descriptionToUse) { + description = descriptionToUse; + } + + /** + * Get the list of messages about the imported data + * @return an ArrayList holding String objects + **/ + public ArrayList getMessages() { + return messages; + } + + /** Clear the list of messages about the imported data. **/ + public void clearMessages() { + messages.clear(); + } + + /** Display current messages **/ + public void showMessages() { + importerPanel.showMessages(); + } + + /** + * Get the set of IImporterPart objects that allow editing importer-specific details. + * @return an ArrayList holding IImporterPart objects. null or empty are nonsensical + * but allowed. + **/ + public ArrayList getParts() { + setupAllParts(); + return parts; + } + + /** + * Determine if exporting data from the default database is allowed. + * @return true if data from the default database can be exported + **/ + public boolean allowDefaultDataExport() { + return shouldDoDefaultDataExport; + } + + /** + * Determine if exporting data from MOVESExecution is allowed. + * @return true if data from MOVESExecution can be exported + **/ + public boolean allowExecutionDataExport() { + return shouldDoExecutionDataExport; + } + + /** + * Determine if data export restrictions may be applied. + * @return true if data from MOVESExecution or MOVES default should be regulated + * according to the CompilationFlags.ENABLE_EXPORT_DEFAULT_DATA + **/ + public boolean isSubjectToExportRestrictions() { + return subjectToExportRestrictions; + } + + /** + * Determine if exporting custom data from the default database is allowed. + * @return true if data from the default database can be exported + **/ + public boolean allowCustomDomainDefaultDataExport() { + return shouldDoCustomDefaultDataExport; + } + + /** + * Obtain the name, if any, of a custom button on the GUI. + * @return non-null if a custom button is to be offered. + **/ + public String getCustomButtonName() { + return customButtonName; + } + + /** + * Process a click on a custom button. + * @param name identifies the custom button. + * @param guiOwner window that is showing the custom button + **/ + public void onCustomButton(String name, JPanel guiOwner) { + handleCustomButton(name, guiOwner); + } + } + + /** + * Constructor + * @param commonNameToUse Common name of this importer + * @param xmlNodeTypeToUse Type of the XML node this importer creates and reads + * @param requiredTablesToUse list of required tables the importer needs to execute + **/ + public ImporterBase(String commonNameToUse, String xmlNodeTypeToUse, + String[] requiredTablesToUse) { + commonName = commonNameToUse; + xmlNodeType = xmlNodeTypeToUse; + requiredTables = requiredTablesToUse; + } + + /** + * Get the ImporterManager object that is hosting the importer. + * @return the ImporterManager object that is hosting the importer + **/ + public ImporterManager getImporterManager() { + return manager; + } + + /** + * Designate the ImporterManager object that his hosting the importer. + * @param managerToUse the ImporterManager object that his hosting the importer + **/ + public void setImporterManager(ImporterManager managerToUse) { + manager = managerToUse; + } + + /** + * Get the name of the importer for log purposes. + * @return the name of the importer for log purposes + **/ + public String getName() { + return commonName; + } + + /** + * Get the base name of the importer's supporting database script file. + * @return the base name of the importer's supporting database script file + **/ + public String getScriptName() { + return commonName; + } + + /** + * Get the description of the imported data for log purposes. + * @return the description of the imported data for log purposes + **/ + public String getDescription() { + return description; + } + + /** + * Obtain the GUI panel to be hosted for this importer. + * @return the GUI panel to be hosted for this importer + **/ + public IImporterPanel getPanel() { + if(tabBaseProvider == null) { + tabBaseProvider = new ImporterTabBaseProvider(); + } + if(importerPanel == null) { + importerPanel = new ImporterTabBase(this,commonName,tabBaseProvider); + } + return importerPanel; + } + + /** Fixup allParts in case it is empty **/ + public void setupAllParts() { + if(allParts.size() == 0) { + for(IImporterPart p : parts) + { + allParts.add(p); + } + } + } + + /** + * Generate XML describing this importer. The XML tag must be understandable + * by ImporterInstantiator. + * @return XML + **/ + public String toXML() { + setupAllParts(); + + String xml = "\t\t<" + xmlNodeType + ">\r\n"; + xml += "\t\t\t\r\n"; + + if(parts.size() > 0) { + xml += "\t\t\t\r\n"; + for(Iterator i=parts.iterator();i.hasNext();) { + IImporterPart p = (IImporterPart)i.next(); + String t = p.toXML(); + if(t != null && t.length() > 0) { + xml += t; + } + } + xml += "\t\t\t\r\n"; + } + + xml += "\t\t\r\n"; + return xml; + } + + /** + * Setup the importer from XML previously created by toXML(). + * @param node XML node to be read + * @return true if the node was processed successfully + **/ + public boolean fromXML(Node node) { + setupAllParts(); + + description = ""; + + String name = node.getNodeName(); + if(!name.equalsIgnoreCase(xmlNodeType)) { + return false; + } + for(Node i=node.getFirstChild(); i != null; i = i.getNextSibling()) { + if(i.getNodeName().equalsIgnoreCase("description")) { + Node childNode = i.getFirstChild(); + for(Node child = i.getFirstChild(); child != null; + child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE + || child.getNodeType() == Node.CDATA_SECTION_NODE) { + description = StringUtilities.safeGetString(childNode.getNodeValue()); + break; + } + } + continue; + } + if(i.getNodeName().equalsIgnoreCase("parts")) { + for(Node child = i.getFirstChild(); child != null; + child = child.getNextSibling()) { + for(Iterator pi=allParts.iterator();pi.hasNext();) { + IImporterPart p = (IImporterPart)pi.next(); + if(p.fromXML(child)) { + break; + } + } + } + continue; + } + } + return true; + } + + /** + * Obtain an object for moving data to/from the database for this importer. + * @return an IDataHandler object tied to this importer. + **/ + public IDataHandler getDataHandler() { + return dataHandler; + } + + /** + * Get the set of tables that the importer requires in order to execute. + * @return an array of table names. Though it can be empty or null, such + * a result is nonsensical. + **/ + public String[] getRequiredTables() { + return requiredTables; + } + + /** + * Check a RunSpec against the database or for display of the importer. + * @param db database to be examined. Will be null if merely checking + * for whether to show the importer to the user. + * @return the status, or null if the importer should not be shown to the user. + * @throws Exception if anything goes wrong + **/ + public RunSpecSectionStatus getCountyDataStatus(Connection db) + throws Exception { + return new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } + + /** + * Check a RunSpec against the database or for display of the importer. + * @param db database to be examined. Will be null if merely checking + * for whether to show the importer to the user. + * @return the status, or null if the importer should not be shown to the user. + * @throws Exception if anything goes wrong + **/ + public RunSpecSectionStatus getProjectDataStatus(Connection db) + throws Exception { + return new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } + + /** + * Check a RunSpec against the database or for display of the importer. + * @param db database to be examined. + * @return the status, or null if the status should not be shown to the user. + * @throws Exception if anything goes wrong + **/ + public RunSpecSectionStatus getImporterDataStatus(Connection db) throws Exception { + // By default, return null so that no status is shown + return null; + } + + /** + * Refresh any state information from data stored in the audit log for an input database. + * @param db Database to use + **/ + public void refreshFromAuditLog(Connection db) { + //Logger.log(LogMessageCategory.DEBUG,"ImporterBase.refreshFromAuditLog"); + setupAllParts(); + for(Iterator i=parts.iterator();i.hasNext();) { + i.next().refreshFromAuditLog(db); + } + tabBaseProvider.showMessages(); + //Logger.log(LogMessageCategory.DEBUG,"ImporterBase.refreshFromAuditLog Done"); + } + + /** + * Process a click on a custom button. + * @param name identifies the custom button. + * @param guiOwner window that is showing the custom button + **/ + public void handleCustomButton(String name, JPanel guiOwner) { + // Nothing to do in the base class + } +} diff --git a/gov/epa/otaq/moves/master/framework/importers/ImporterGUI.java b/gov/epa/otaq/moves/master/framework/importers/ImporterGUI.java new file mode 100644 index 0000000..40a6123 --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/ImporterGUI.java @@ -0,0 +1,1257 @@ +/************************************************************************************************** + * @(#)ImporterGUI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import java.io.*; +import java.util.*; +import java.text.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.gui.*; + +/** + * GUI framework holding 1 or more importers as tabs. + * + * @author Wesley Faler + * @version 2014-01-11 +**/ +public class ImporterGUI extends JDialog implements ActionListener, FocusListener { + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** Associated importer manager for this GUI **/ + ImporterManager manager; + /** button to close the report **/ + JButton doneButton; + /** tabbed panes **/ + JTabbedPane tabs; + /** button on Tools tab to generate an XML file **/ + JButton generateXMLButton; + /** Create Database button **/ + JButton createDatabaseButton; + /** Refresh database button **/ + JButton refreshDatabaseButton; + /** Check Database button **/ + JButton checkDatabaseButton; + /** Clear All Imported Data button **/ + JButton clearAllDatabaseButton; + /** Server text control. **/ + JTextField server; + /** Database combo control. **/ + ExtendedComboBox databaseCombo; + /** Run droplist ToolTip **/ + JToolTip databaseToolTip; + /** Database log scroll pane **/ + JScrollPane logScrollPane; + /** Database log text **/ + JTextPane logTextPane; + + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = "localhost"; + /** database names that should not be used **/ + TreeSetIgnoreCase invalidDatabaseNames = new TreeSetIgnoreCase(); + + /** Image shown on importers with data that is complete **/ + ImageIcon okImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/ok16.gif"); + /** Image shown on importers with data that is incomplete or erroneous **/ + ImageIcon errorImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/Error16.gif"); + /** Image shown on importers with default data **/ + ImageIcon defaultImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/default16.gif"); + + /** Tab panel Integer indexes keyed by IImporter's class name **/ + TreeMap importerTabIndexes = new TreeMap(); + + /** True when within processDatabaseComboChange **/ + private boolean alreadyInComboChange = false; + + /** + * Constructs the main panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + **/ + public ImporterGUI(JFrame parent, ImporterManager managerToUse) { + super(parent, + managerToUse.isCountyDomain? "MOVES County Data Manager" : + managerToUse.isProjectDomain? "MOVES Project Data Manager" : "MOVES Data Importer"); + frame = parent; + manager = managerToUse; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + if(!populateControls()) { + return; + } + tabs.setSelectedIndex(1); // default to showing the Database tab + pack(); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(800,600); + setModal(true); + setVisible(true); + } + + /** + * Fill the controls + * @return false if anything could not be filled/updated + **/ + boolean populateControls() { + if(manager.runSpec.scaleInputDatabase != null + && manager.runSpec.scaleInputDatabase.hasDatabase()) { + server.setText(manager.runSpec.scaleInputDatabase.serverName); + databaseCombo.setSelectedItem(manager.runSpec.scaleInputDatabase.databaseName); + processDatabaseComboChange(false); + } + refreshDomainStatusIcons(); + return true; + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + void createControls() { + int tabIndex = 0; + doneButton = new JButton("Done"); + doneButton.addActionListener(this); + + tabs = new JTabbedPane(); + + JPanel p = makeTitledPanel("RunSpec Summary",createRunSpecSummaryPanel()); + tabs.addTab("RunSpec Summary",null,p,"Summary of the RunSpec's Filters"); + tabIndex++; + + p = makeTitledPanel("Database",createDatabasePanel()); + tabs.addTab("Database",null,p,"Database selection"); + tabIndex++; + + for(int i=0;i 0)) { + appendText = manager.runSpec.outputDatabase.serverName; + } else { + appendText = "[using default]"; + } + textBuffer.append("Output Database Server Name: " + appendText + "\r\n"); + textBuffer.append("\r\n"); + if((manager.runSpec.outputDatabase.databaseName != null) + && (manager.runSpec.outputDatabase.databaseName.length() > 0)) { + appendText = manager.runSpec.outputDatabase.databaseName; + } else { + appendText = "[using default]"; + } + textBuffer.append("Output Database Name: " + appendText + "\r\n"); + + // Display the remaining information + Iterator panelIterator = w.navigationPanel.panels.listIterator(); + while (panelIterator.hasNext()) { + JPanel iterPanel = (JPanel)panelIterator.next(); + + if(iterPanel instanceof RunSpecEditor) { + if((iterPanel instanceof TimeSpans) + || (iterPanel instanceof MacroscaleGeographicBounds) + || (iterPanel instanceof OnRoadVehicleEquipment) + || (iterPanel instanceof RoadTypeScreen) + || (iterPanel instanceof PollutantsAndProcesses) + || (iterPanel instanceof ManageInputDataSets) + || (iterPanel instanceof InternalControlStrategies + && iterPanel.getName().endsWith(".RateOfProgressStrategy")) + ) { + RunSpecEditor iterEditor = (RunSpecEditor)iterPanel; + iterEditor.getPrintableDescription(manager.runSpec, textBuffer); + } + } + } + + return textBuffer.toString(); + } + + /** + * Generate the Tools tab. + * @return panel for the Tools tab + **/ + JPanel createToolsPanel() { + JPanel panel = new JPanel(); + + generateXMLButton = new JButton("Generate Importer XML File"); + generateXMLButton.addActionListener(this); + + JLabel label1; + JLabel label2; + + label1 = new JLabel(); + label2 = new JLabel(); + + panel.setLayout(new GridBagLayout()); + ((GridBagLayout)panel.getLayout()).columnWidths = new int[] {66, 0, 0, 0, 0}; + ((GridBagLayout)panel.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)panel.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0, 1.0E-4}; + ((GridBagLayout)panel.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + //---- label1 ---- + label1.setText("MOVES Data Importers can be run via the command line using an"); + panel.add(label1, new GridBagConstraints(0, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label2 ---- + label2.setText("XML-based description file similar to the MOVES RunSpec file."); + panel.add(label2, new GridBagConstraints(0, 1, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- generateXMLButton ---- + panel.add(generateXMLButton, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + return panel; + } + + /** + * Generate the Database tab. + * @return panel for the Database tab + **/ + JPanel createDatabasePanel() { + createDatabaseButton = new JButton("Create Database"); + createDatabaseButton.addActionListener(this); + + refreshDatabaseButton = new JButton("Refresh"); + refreshDatabaseButton.addActionListener(this); + + checkDatabaseButton = new JButton("Check Database"); + checkDatabaseButton.addActionListener(this); + + clearAllDatabaseButton = new JButton("Clear All Imported Data"); + clearAllDatabaseButton.addActionListener(this); + + server = new JTextField(10); + server.setText("localhost"); + ToolTipHelper.add(server, + "Edit the name of the server where the database will be located"); + server.setName("server"); + server.addFocusListener(this); + server.setColumns(10); + + databaseCombo = new ExtendedComboBox(); + Dimension d = databaseCombo.getPreferredSize(); + databaseCombo.setPreferredSize(new Dimension(450, d.height)); // 250 + databaseCombo.setPopupWidth(databaseCombo.getPreferredSize().width); + databaseCombo.setName("databaseCombo"); + databaseCombo.addActionListener(this); + databaseCombo.setEditable(true); + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo, + "Edit or select the name of the database in which the data will be stored"); + + JPanel panel = new JPanel(); + panel.setLayout(new BoxLayout(panel,BoxLayout.Y_AXIS)); + + JPanel panel2; + JLabel label6; + JLabel label4; + JLabel label5; + JLabel label1; + + panel2 = new JPanel(); + label6 = new JLabel(); + label4 = new JLabel(); + label5 = new JLabel(); + label1 = new JLabel(); + logScrollPane = new JScrollPane(); + logTextPane = new JTextPane(); + + panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); + + //======== panel2 ======== + { + panel2.setLayout(new GridBagLayout()); + ((GridBagLayout)panel2.getLayout()).columnWidths = new int[] {38, 73, 57, 0, 0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0E-4}; + ((GridBagLayout)panel2.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 1.0, 1.0E-4}; + + //---- label6 ---- + label6.setText("Select or create a database to hold the imported data."); + panel2.add(label6, new GridBagConstraints(0, 0, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label4 ---- + label4.setText("Server:"); + panel2.add(label4, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- server ---- + panel2.add(server, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label5 ---- + label5.setText("Database:"); + panel2.add(label5, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- databaseCombo ---- + panel2.add(databaseCombo, new GridBagConstraints(1, 2, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- createDatabaseButton ---- + panel2.add(createDatabaseButton, new GridBagConstraints(4, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- refreshDatabaseButton ---- + panel2.add(refreshDatabaseButton, new GridBagConstraints(4, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label1 ---- + label1.setText("Log:"); + panel2.add(label1, new GridBagConstraints(0, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + +/* + //---- checkDatabaseButton ---- + panel2.add(checkDatabaseButton, new GridBagConstraints(3, 3, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); +*/ + //---- clearAllDatabaseButton ---- + panel2.add(clearAllDatabaseButton, new GridBagConstraints(4, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== logScrollPane ======== + { + + //---- logTextPane ---- + logTextPane.setEditable(false); + logScrollPane.setViewportView(logTextPane); + } + panel2.add(logScrollPane, new GridBagConstraints(0, 4, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + } + panel.add(panel2); + + generateListOfInvalidDatabaseNames(); + loadDatabases(); + + return panel; + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()).trim(); + Connection db = dbSelection.databaseName.length() > 0? dbSelection.openConnectionOrNull() : null; + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + databaseCombo.removeAllItems(); + // add the default item (no selection) + databaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement = null; + ResultSet results = null; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + if(!invalidDatabaseNames.contains(nextDB)) { + databases.add(nextDB); + } + } + } + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases) in ImporterGUI."); + DatabaseUtilities.closeConnection(db); + return; + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + results = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + // second pass through the returned list of database names, must now + // remove any databases that aren't the correct type + ArrayList stringsToRemove = new ArrayList(); + try { + /* Removed due to speed concerns. The first time this step is done, MySQL is very, very slow. + boolean foundOutputTables = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTables = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0 || invalidDatabaseNames.contains(nextDatabase)) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + int foundCount = 0; + while(results.next()) { + String nextTable = results.getString(1); + if(manager.requiredTableNames.contains(nextTable)) { + foundCount++; + if(foundCount >= manager.requiredTableNames.size()) { + foundOutputTables = true; + break; + } + } + } + } + } catch (Exception e) { + // SQL error here just means the database is not an output database + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + results = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTables) { + stringsToRemove.add(nextDatabase); + } + } + */ + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + } + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + databaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database in ImporterGUI."); + } + // set the default selection + databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Handle the Check Database button + **/ + void handleCheckDatabaseButton() { + if(!processDatabaseComboChange(true)) { + JOptionPane.showMessageDialog(this, "The database cannot be used.", "Error", + JOptionPane.ERROR_MESSAGE); + } else { + JOptionPane.showMessageDialog(this, "The database can be used.", "Success", + JOptionPane.INFORMATION_MESSAGE); + } + } + + /** + * Handles the database combo change. + * @param shouldDisplayErrors true if error messages should be displayed + * @return false if the selected database is not valid, or not yet selected. + **/ + public boolean processDatabaseComboChange(boolean shouldDisplayErrors) { + if(alreadyInComboChange) { + return true; + } + manager.database.serverName = ""; + manager.database.databaseName = ""; + + if(databaseCombo.getSelectedItem() == null) { + refreshDomainStatusIcons(); + return false; + } + if(databaseCombo.getSelectedItem().toString().length() == 0) { + refreshDomainStatusIcons(); + return false; + } + + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + refreshDomainStatusIcons(); + return false; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + // try to connect to the new selection + Connection db = openCurrentDatabase(false); + if(null == db) { + refreshDomainStatusIcons(); + return false; + } + try { + loadLog(db); + + if(manager.isCountyDomain || manager.isProjectDomain) { + ArrayList messages = new ArrayList(); + int result = + ImporterManager.isCountyDomainDatabase(manager.runSpec, + messages,db,false); + if(result < 0) { + if(shouldDisplayErrors) { + // Display the error messages + String t = manager.isCountyDomain? + "Unable to use this entry as a County Domain database." + : "Unable to use this entry as a Project Domain database."; + for(Iterator i=messages.iterator();i.hasNext();) { + t += "\r\n"; + t += i.next(); + } + t += "\r\n\r\nUse the database anyway?"; + if(JOptionPane.showConfirmDialog(this, t, "Error", + JOptionPane.ERROR_MESSAGE + JOptionPane.YES_NO_OPTION) + == JOptionPane.YES_OPTION) { + result = 0; + } + } + if(result < 0) { + databaseCombo.setSelectedItem(""); + return false; + } + } + } + } finally { + DatabaseUtilities.closeConnection(db); + db = null; + refreshDomainStatusIcons(); + } + newDatabaseName = addIfNotInComboBox(newDatabaseName); + alreadyInComboChange = true; + databaseCombo.setSelectedItem(newDatabaseName); + alreadyInComboChange = false; + + manager.database.serverName = dbSelection.serverName; + manager.database.databaseName = dbSelection.databaseName; + manager.addDatabaseToRunSpec(false); + } else { + refreshDomainStatusIcons(); + } + if(status != null && shouldDisplayErrors) { + JOptionPane.showMessageDialog(this, status); + } + return status == null; + } + + /** + * Handles the focus lost event for the server textfield, and checkboxes. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + JComponent c = (JComponent)e.getComponent(); + if(c == server) { + if(previousServer.equalsIgnoreCase(server.getText())) { + return; + } + previousServer = server.getText(); + loadDatabases(); + } + } + + /** + * Currently not used. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + } + + /** + * Handle the "Generate Importer XML File" button on the Tools tab + **/ + void handleGenerateXML() { + try { + // Prompt for the XML file name + FileDialog fd = new FileDialog(frame, "Importer XML File", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + filePath = file.getCanonicalPath(); + + // Have the manager write xml to the named file + manager.generateXML(filePath); + } catch(IOException e) { + // Complain that the file couldn't be created + JOptionPane.showMessageDialog(null, + "Unable to generate the XML file", + "Data Importer", JOptionPane.ERROR_MESSAGE); + Logger.logError(e,"Unable to import"); + } + } + + /** Handle the Create Database button **/ + void handleCreateDatabaseButton() { + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName.length() == 0) { + JOptionPane.showMessageDialog(this,"Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + if(validDatabaseName(dbSelection)) { + int createStatus = manager.createDatabase(dbSelection); + if(DatabaseSelection.CREATED == createStatus) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database successfully created.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + manager.database.serverName = dbSelection.serverName; + manager.database.databaseName = dbSelection.databaseName; + manager.addDatabaseToRunSpec(false); + } else if(DatabaseSelection.EXISTS == createStatus) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database already exists.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + manager.database.serverName = dbSelection.serverName; + manager.database.databaseName = dbSelection.databaseName; + manager.addDatabaseToRunSpec(false); + } else { + Logger.log(LogMessageCategory.ERROR,"Could not create the required schema."); + } + refreshDomainStatusIcons(); + clearLogDisplay(); + } + } + + /** Fill invalidDatabaseNames **/ + void generateListOfInvalidDatabaseNames() { + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + //default database cannot be accepted as an input selection + invalidDatabaseNames.add(defaultDB.databaseName); + //execution database cannot be accepted as an input selection + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + invalidDatabaseNames.add(executionDB.databaseName); + //Worker database cannot be accepted as an input selection + invalidDatabaseNames.add("MOVESWorker"); + //MySQL database cannot be accepted as an input selection + invalidDatabaseNames.add("MySQL"); + + // The database cannot already be in the runSpec as anything other + // the last user input database + for(Iterator i=manager.runSpec.databaseSelectionInputSets.iterator(); + i.hasNext();) { + DatabaseSelection s = (DatabaseSelection)i.next(); + if(i.hasNext()) { // If not the last selection, record it. + invalidDatabaseNames.add(s.databaseName); + } + } + } + + /** + * Check a proposed database selection for appropriateness, prompting the user + * if the database is not acceptable. + * @param dbSelection the database selection. + * @return true if the database name is valid. + **/ + boolean validDatabaseName(DatabaseSelection dbSelection) { + if(invalidDatabaseNames.contains(dbSelection.databaseName)) { + JOptionPane.showMessageDialog(this, + "The " + dbSelection.databaseName + " database cannot be used here."); + return false; + } + + return true; + } + + /** + * Load the log of activity in a database + * @param db database to be scanned + **/ + public void loadLog(Connection db) { + String sql = "select * from auditLog order by whenHappened desc"; + Statement statement = null; + ResultSet rs = null; + String logText = ""; + try { + statement = db.createStatement(); + rs = SQLRunner.executeQuery(statement,sql); + while(rs.next()) { + String whenHappened + = StringUtilities.safeGetString(rs.getString("whenHappened")); + String importerName + = StringUtilities.safeGetString(rs.getString("importerName")); + String briefDescription + = StringUtilities.safeGetString(rs.getString("briefDescription")).trim(); + String fullDescription + = StringUtilities.safeGetString(rs.getString("fullDescription")).trim(); + String line = whenHappened + " " + importerName + " " + briefDescription; + if(fullDescription.length() > 0) { + line += "\r\n" + fullDescription; + } + line += "\r\n"; + logText += line; + } + } catch(Exception e) { + // Note: If there is no auditLog table, then silently just load an empty + // ----- log listing. + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + logTextPane.setText(logText); + } + + /** Remove all entries from the displayed log **/ + void clearLogDisplay() { + logTextPane.setText(""); + for(int i=0;i projectCommonNames = null; + + /** List of all common names in the sequence needed for the county domain **/ + private static ArrayList countyCommonNames = null; + + /** List of all common names in the sequence needed for the general importer **/ + private static ArrayList generalCommonNames = null; + + /** List of all common names in the sequence needed for the Nonroad importer **/ + private static ArrayList nonRoadCommonNames = null; + + /** ImporterManager active during instantiation **/ + public static ImporterManager activeManager = null; + + /** + * Fill a list of common names that have at least one of the provided purposes. + * @param namesToFill list to be filled with String objects of common names + * @param purpose a purpose to be found, such as "general", "county", or "project". + * May not be null or empty. + **/ + private static void fillNames(ArrayList namesToFill, String purpose) { + purpose = "|" + purpose + "|"; + for(int i=0;i= 0) { + namesToFill.add(idInfo[i+0]); + } + } + } + + /** Fill all lists of common names **/ + private static void fillAllNames() { + if(projectCommonNames == null) { + projectCommonNames = new ArrayList(); + fillNames(projectCommonNames,"project"); + } + if(countyCommonNames == null) { + countyCommonNames = new ArrayList(); + fillNames(countyCommonNames,"county"); + } + if(generalCommonNames == null) { + generalCommonNames = new ArrayList(); + fillNames(generalCommonNames,"general"); + } + if(nonRoadCommonNames == null) { + nonRoadCommonNames = new ArrayList(); + fillNames(nonRoadCommonNames,"nonroad"); + } + } + + /** + * Get an Iterator to the set of common names for Nonroad use. The Iterator returns String + * objects, each holding the common name of an Importer. The names are stored in the order + * they are expected to be used and shown. + * @return Iterator iterator returning String objects for the common names of the importers + **/ + public static Iterator nonRoadNamesIterator() { + fillAllNames(); + return nonRoadCommonNames.iterator(); + } + + /** + * Get an Iterator to the set of common names for general use. The Iterator returns String + * objects, each holding the common name of an Importer. The names are stored in the order + * they are expected to be used and shown. + * @return Iterator iterator returning String objects for the common names of the importers + **/ + public static Iterator generalNamesIterator() { + fillAllNames(); + return generalCommonNames.iterator(); + } + + /** + * Get an Iterator to the set of common names for County-domain use. The Iterator returns + * String objects, each holding the common name of an Importer. The names are stored in the + * order they are expected to be used and shown. + * @return Iterator iterator returning String objects for the common names of the importers + **/ + public static Iterator countyNamesIterator() { + fillAllNames(); + return countyCommonNames.iterator(); + } + + /** + * Get an Iterator to the set of common names for Project-domain use. The Iterator returns + * String objects, each holding the common name of an Importer. The names are stored in the + * order they are expected to be used and shown. + * @return Iterator iterator returning String objects for the common names of the importers + **/ + public static Iterator projectNamesIterator() { + fillAllNames(); + return projectCommonNames.iterator(); + } + + /** + * Instantiate an importer given its common name. + * @param name common name of the importer to be created + * @param manager owner of the created importer + * @return the instantiated importer, complete with setManager() already called, + * or null if the name could not be found. + **/ + public static IImporter createByName(String name, ImporterManager manager) { + for(int i=0;i=1 + public static final String FILTER_INSPECTFREQ = "inspectFreq"; + public static final String FILTER_TESTSTANDARDSID = "testStandardsID"; + public static final String FILTER_MODELYEARID = "modelYearID"; // int between >=1960 to <=2050 + public static final String FILTER_YN = "yn"; + public static final String FILTER_SOURCEFUELTYPE = "sourceFuelTypeID"; // sourceTypeID*100 + fuelTypeID + public static final String FILTER_IS_LEAP_YEAR = "isLeapYear"; + public static final String FILTER_MODEL_YEAR_RANGE = "modelYearRange"; // 2 model years, low to high, both >= 1960 to <= 2050 + + /** + * Values for each filter type. Keyed by the filter type name from the + * FILTER_XXXX constants. The value is an ArrayList of Object. The type of + * object within each ArrayList depends upon the type of the filtered column. + **/ + private TreeMapIgnoreCase filterValueLists = new TreeMapIgnoreCase(); + /** + * CSV-values for each filter type. Keyed by the filter type name from the + * FILTER_XXX constants. The value is a comma-separated list of values as a + * String. + **/ + private TreeMapIgnoreCase filterValuesCSV = new TreeMapIgnoreCase(); + /** + * Values for each filter type, like filterValueLists, but the data is a + * TreeSet of unique values instead of a flat array. + **/ + private TreeMapIgnoreCase filterValueSets = new TreeMapIgnoreCase(); + /** + * Data type flag for each filter type. Data is name of the class contained + * within the TreeSet and ArrayList of filterValueSets and filterValueLists. + * Examples are "Integer", "String", and "Double". + **/ + private TreeMapIgnoreCase filterDataTypes = new TreeMapIgnoreCase(); + + /** Fuel year IDs **/ + private TreeSet fuelYears = null; + + /** + * Create an ImporterManager, instantiate importers (all or only some), and display + * the import GUI. + * @param ownerWindow window to own the importer GUI + * @param importerNamesToShow common names of importers to be shown, may be empty or null + * to show all available importers. + * @param windowLeft importer GUI position + * @param windowTop importer GUI position + * @param domainType type of domain the importer is for, or null for general usage + * @param mode one of the ImporterManager.*_MODE constants + * @param mc model combination, used to detect Nonroad operation + **/ + public static void display(JFrame ownerWindow,String[] importerNamesToShow, + int windowLeft, int windowTop, ModelDomain domainType, int mode, + Models.ModelCombination mc) { + boolean isCountyDomain = domainType == ModelDomain.SINGLE_COUNTY; + boolean isProjectDomain = domainType == ModelDomain.PROJECT; + + // Models.evaluateModels(runspec.models); + boolean isNonroad = mc == Models.ModelCombination.M2; + + ImporterManager manager = new ImporterManager(); + manager.setMode(mode); + if(isNonroad) { + manager.setAsNonroad(); + } else if(isCountyDomain) { + manager.setAsCountyDomain(); + } else if(isProjectDomain) { + manager.setAsProjectDomain(); + } + manager.instantiate(importerNamesToShow); + ImporterGUI gui = manager.createGUI(ownerWindow); + gui.setLocation(windowLeft,windowTop); + gui.showModal(); + } + + /** IImporter objects being managed **/ + ArrayList importers = new ArrayList(); + /** The RunSpec being edited **/ + public RunSpec runSpec; + /** Current GUI, if any **/ + ImporterGUI gui; + /** Set of tables required for the importers being managed **/ + TreeSetIgnoreCase requiredTableNames = new TreeSetIgnoreCase(); + /** Database for the imported data **/ + public DatabaseSelection database = new DatabaseSelection(); + /** Database connection in use during import, export, and template operations **/ + public Connection activeDb = null; + /** True when being used for a single county and single year **/ + boolean isCountyDomain = false; + /** True when being used for a project domain **/ + boolean isProjectDomain = false; + /** True when being used for Nonroad **/ + boolean isNonroad = false; + /** one of the ImporterManager.*_MODE constants **/ + int mode = STANDARD_MODE; + + /** Constructor, uses the default API's RunSpec object. **/ + public ImporterManager() { + runSpec = MOVESAPI.getTheAPI().getRunSpec(); + if(runSpec == null) { + runSpec = new RunSpec(); + } + } + + /** + * Constructor + * @param runSpecToUse runSpec to be used. If null a new RunSpec will be created. + **/ + public ImporterManager(RunSpec runSpecToUse) { + runSpec = runSpecToUse; + if(runSpec == null) { + runSpec = new RunSpec(); + } + } + + /** + * Return the project domain mode + * @return true if the importer is in project domain mode + **/ + public boolean isProject() { + return isProjectDomain; + } + + /** + * Return the county domain mode + * @return true if the importer is in county domain mode + **/ + public boolean isCounty() { + return isCountyDomain; + } + + /** + * Return the Nonroad mode + * @return true if the RunSpec is a Nonroad simulation + **/ + public boolean isNonroad() { + return isNonroad; + } + + /** + * Return the custom domain mode for the RunSpec + * @return true if the RunSpec is using a custom geographic domain + **/ + public boolean isCustomDomain() { + return runSpec.isCustomDomain(); + } + + /** + * Change the mode that sets that available tabs. + * @param modeToUse one of the ImporterManager.*_MODE constants + **/ + public void setMode(int modeToUse) { + switch(modeToUse) { + case STANDARD_MODE: + case IM_ONLY_MODE: + mode = modeToUse; + break; + } + } + + /** Setup to require only one county and one calendar year **/ + public void setAsCountyDomain() { + isCountyDomain = true; + + if(isCountyDomain && runSpec.domain == ModelDomain.SINGLE_COUNTY) { + if(runSpec.scaleInputDatabase != null) { + database = (DatabaseSelection)runSpec.scaleInputDatabase.clone(); + } + } + } + + /** Setup to require only one county, one calendar year, etc per project domain requirements **/ + public void setAsProjectDomain() { + isProjectDomain = true; + + if(isProjectDomain && runSpec.domain == ModelDomain.PROJECT) { + if(runSpec.scaleInputDatabase != null) { + database = (DatabaseSelection)runSpec.scaleInputDatabase.clone(); + } + } + } + + /** Setup to require only one county, one calendar year, etc per project domain requirements **/ + public void setAsNonroad() { + isNonroad = true; + } + + /** + * Check for use of Rates rather than Inventory scale. + * @return true if being used for Rate calculations. + **/ + public boolean isRate() { + return runSpec.scale == ModelScale.MESOSCALE_LOOKUP; + } + + /** + * Instantiate importers to be managed. + * @param importerNames common names of importers to be shown, may be empty or null + * to show all available importers. + **/ + public void instantiate(String[] importerNames) { + TreeSetIgnoreCase unwantedImporters = new TreeSetIgnoreCase(); + if(!runSpec.isCustomDomain()) { + unwantedImporters.add("Zone Road Activity"); + unwantedImporters.add("zoneroadtype"); + unwantedImporters.add("gov.epa.otaq.moves.master.implementation.importers.ZoneRoadTypeImporter"); + + unwantedImporters.add("Zone"); + unwantedImporters.add("zone"); + unwantedImporters.add("gov.epa.otaq.moves.master.implementation.importers.ZoneImporter"); + } + + if(mode == IM_ONLY_MODE && (importerNames == null || importerNames.length <= 0)) { + importerNames = new String[] { "I/M" }; + } + + if(importerNames == null || importerNames.length <= 0) { + Iterator i=null; + if(isNonroad) { + i = ImporterInstantiator.nonRoadNamesIterator(); + } else if(isProjectDomain) { + i = ImporterInstantiator.projectNamesIterator(); + } else if(isCountyDomain) { + i = ImporterInstantiator.countyNamesIterator(); + } else { + i = ImporterInstantiator.generalNamesIterator(); + } + for(;i.hasNext();) { + String t = (String)i.next(); + if(unwantedImporters.contains(t)) { + continue; + } + IImporter importer = ImporterInstantiator.createByName(t,this); + if(importer != null) { + importers.add(importer); + } + } + } else { + for(int i=0;i messages) { + Connection db = openDatabase(); + if(db == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to create database " + + database.toString()); + return; + } + TreeSet clearedClasses = new TreeSet(); + try { + activeDb = db; + for(Iterator i=importers.iterator();i.hasNext();) { + IImporter importer = (IImporter)i.next(); + IDataHandler dataHandler = importer.getDataHandler(); + if(dataHandler != null) { + // Clear table data upon first use of the importer within the batch + String className = importer.getClass().getName(); + if(importer instanceof GenericImporter) { + // The generic importer can do almost any table, so blocking it once + // is inappropriate. Instead, learn the tables affected by each + // instance and block the duplicate truncation of the combination + // of GenericImporter and table. + boolean found = false; + ArrayList toBeCleared = new ArrayList(); + ArrayList tableNames = dataHandler.getDataTableNames(); + for(Iterator j=tableNames.iterator();j.hasNext();) { + String t = className + "|" + j.next().toLowerCase(); + toBeCleared.add(t); + if(clearedClasses.contains(t)) { + found = true; + } + } + if(!found) { + for(Iterator j=toBeCleared.iterator();j.hasNext();) { + clearedClasses.add(j.next()); + } + dataHandler.doClear(db); + } + } else { + if(!clearedClasses.contains(className)) { + clearedClasses.add(className); + dataHandler.doClear(db); + } + } + // Import data now + dataHandler.doImport(db,true,messages); + } + } + } finally { + activeDb = null; + if(db != null) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + /** + * Return the GUI for this importer manager, creating one if it hasn't already been created. + * @param ownerWindow window to own to the importer GUI + * @return the GUI window to be shown for this manager + **/ + public ImporterGUI createGUI(JFrame ownerWindow) { + if(gui == null) { + gui = new ImporterGUI(ownerWindow,this); + } + return gui; + } + + /** + * Create a database and all required tables. If the database already exists, only + * tables will be created, but only the ones that don't already exist. + * @param dbSelection database, including server name, to be created. + * @return DatabaseSelection.CREATED, NOT_CREATED, or EXISTS. + **/ + public int createDatabase(DatabaseSelection dbSelection) { + Connection db = null; + try { + db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + int createStatus = dbSelection.safeCreateDatabase(null); + if(createStatus == DatabaseSelection.NOT_CREATED) { + Logger.log(LogMessageCategory.ERROR, + "Could not create the Input database."); + return DatabaseSelection.NOT_CREATED; + } + Connection newDB = dbSelection.openConnectionOrNull(); + if(newDB == null) { + Logger.log(LogMessageCategory.ERROR, + "Could not connect to the Input database."); + return DatabaseSelection.NOT_CREATED; + } + Statement statement = null; + ResultSet rs = null; + String sql = ""; + + try { + for(Iterator i=requiredTableNames.iterator();i.hasNext();) { + String tableName = (String)i.next(); + String createStatement = ""; + sql = "SHOW CREATE TABLE " + tableName; + statement = db.createStatement(); + rs = SQLRunner.executeQuery(statement,sql); + if(rs.next()) { + createStatement = StringUtilities.replace(rs.getString(2), + "CREATE TABLE `","CREATE TABLE IF NOT EXISTS `") + ";"; + + SQLRunner.executeSQL(newDB,createStatement); + } + rs.close(); + rs = null; + statement.close(); + statement = null; + } + + if(createStatus == DatabaseSelection.CREATED) { + if(isCountyDomain || isProjectDomain) { + fillCountyDomainTables(newDB); + } + } + return createStatus; + } catch(Exception e) { + Logger.log(LogMessageCategory.INFO,e.toString()); + e.printStackTrace(); + } finally { + if(rs!=null) { + try { + rs.close(); + } catch (SQLException e) { + // Failure to close a ResultSet should not be an issue. + } + } + if(statement!=null) { + try { + statement.close(); + } catch (SQLException e) { + // Failure to close a PreparedStatment should not be an issue. + } + } + if(newDB != null) { + DatabaseUtilities.closeConnection(newDB); + } + } + } catch(Exception e) { + Logger.logError(e,"Unable to create database"); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + return DatabaseSelection.NOT_CREATED; + } + + /** + * Create, if they don't already exist, and fill, if not already filled, + * the County-domain specific tables. + * @param newDB database to be updated + * @throws Exception if anything goes wrong + **/ + public void fillCountyDomainTables(Connection newDB) throws Exception { + if(!isCountyDomain && !isProjectDomain) { + return; + } + + String sql = ""; + + try { + String defaultDatabaseName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName; + // Year table + if(runSpec.timeSpan.years.size() == 1) { + Object year = runSpec.timeSpan.years.first(); + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("year"); + SQLRunner.executeSQL(newDB,sql); + sql = "insert ignore into Year" + + " select *" + + " from " + defaultDatabaseName + ".Year" + + " where yearID=" + year; + SQLRunner.executeSQL(newDB,sql); + sql = "update Year set isBaseYear='Y' where yearID=" + year; + SQLRunner.executeSQL(newDB,sql); + } + GeographicSelection g = null; + if(runSpec.geographicSelections.size() == 1) { + g = (GeographicSelection)runSpec.geographicSelections.first(); + if(g.type != GeographicSelectionType.COUNTY) { + g = null; + } + } + if(g == null) { + return; + } + + // Create tables needed by all domains + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("state"); + SQLRunner.executeSQL(newDB,sql); + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("county"); + SQLRunner.executeSQL(newDB,sql); + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("zone"); + SQLRunner.executeSQL(newDB,sql); + + String[] statements = null; + if(runSpec.isCustomDomain()) { + GenericCounty c = runSpec.genericCounty; + + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("countyYear"); + SQLRunner.executeSQL(newDB,sql); + + sql = (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("regionCounty"); + SQLRunner.executeSQL(newDB,sql); + + for(Iterator i=runSpec.timeSpan.years.iterator();i.hasNext();) { + Integer year = i.next(); + sql = "insert ignore into CountyYear (countyID, yearID," + + " refuelingVaporProgramAdjust, refuelingSpillProgramAdjust)" + + " values (" + c.getCountyID() + "," + year + + "," + c.refuelingVaporProgramAdjust + + "," + c.refuelingSpillProgramAdjust + + ")"; + SQLRunner.executeSQL(newDB,sql); + + sql = "insert ignore into regionCounty (regionID, countyID, regionCodeID, fuelYearID)" + + " values (100000000," + c.getCountyID() + ",1," + year + + ")"; + SQLRunner.executeSQL(newDB,sql); + + sql = "insert ignore into regionCounty (regionID, countyID, regionCodeID, fuelYearID)" + + " values (100000000," + c.getCountyID() + ",2," + year + + ")"; + SQLRunner.executeSQL(newDB,sql); + } + + String[] genericCountyStatements = { + // State table + "insert ignore into State (stateID, stateName, stateAbbr)" + + " values (" + c.stateID + ",'Generic','99')", + + // County table + "insert ignore into County (countyID, stateID, countyName, altitude," + + " gpaFract, barometricPressure, barometricPressureCV)" + + " values (" + c.getCountyID() + "," + c.stateID + + "," + DatabaseUtilities.escapeSQL(c.description,true) + + ",'" + (c.isHighAltitude()?"H":"L") + "'" + + "," + c.gpaFraction + + "," + c.barometricPressure + + ",null)", + + "update County set stateID=" + c.stateID + + ", countyName=" + DatabaseUtilities.escapeSQL(c.description,true) + + ", altitude='" + (c.isHighAltitude()?"H":"L") + "'" + + ", gpaFract=" + c.gpaFraction + + ", barometricPressure=" + c.barometricPressure + + ", barometricPressureCV=null" + + " where countyID=" + c.getCountyID(), + + /* + // Zone table + "insert ignore into Zone (zoneID, countyID, startAllocFactor," + + " idleAllocFactor, SHPAllocFactor)" + + " values (" + (c.getCountyID()*10) + "," + c.getCountyID() + + ",1.0,1.0,1.0)", + */ + + // Link table - but not if Project + runSpec.domain == ModelDomain.PROJECT? null : + (String)DatabaseConnectionManager.defaultDatabaseCreateTableStatements.get("link") + + /* + runSpec.domain == ModelDomain.PROJECT? null : + "insert ignore into Link (linkID, countyID, zoneID, roadTypeID)" + + " select (" + (c.getCountyID()*100) + "+roadTypeID) as linkID," + + c.getCountyID() + " as countyID," + + (c.getCountyID()*10) + " as zoneID, roadTypeID" + + " from " + defaultDatabaseName + ".roadType" + */ + }; + statements = genericCountyStatements; + } else { + String[] standardStatements = { + // State table + "insert ignore into State" + + " select State.*" + + " from " + defaultDatabaseName + ".County" + + " inner join " + defaultDatabaseName + ".State" + + " using (stateID)" + + " where countyID=" + g.databaseKey, + + // County table + "insert ignore into County" + + " select *" + + " from " + defaultDatabaseName + ".County" + + " where countyID=" + g.databaseKey, + + // Zone table + "insert ignore into Zone" + + " select Zone.*" + + " from " + defaultDatabaseName + ".County c" + + " inner join " + defaultDatabaseName + ".Zone" + + " using (countyID)" + + " where c.countyID=" + g.databaseKey, + "drop table if exists zoneTemp", + "create table zoneTemp" + + " select sum(startAllocFactor) as sumStartAllocFactor," + + " sum(idleAllocFactor) as sumIdleAllocFactor," + + " sum(SHPAllocFactor) as sumSHPAllocFactor" + + " from Zone" + + " where countyID=" + g.databaseKey, + "update Zone, zoneTemp set " + + " startAllocFactor=(case when (sumStartAllocFactor is null or sumStartAllocFactor <= 0) then 1 else (startAllocFactor/sumStartAllocFactor) end)," + + " idleAllocFactor=(case when (sumIdleAllocFactor is null or sumIdleAllocFactor <= 0) then 1 else (idleAllocFactor/sumIdleAllocFactor) end)," + + " SHPAllocFactor=(case when (sumSHPAllocFactor is null or sumSHPAllocFactor <= 0) then 1 else (SHPAllocFactor/sumSHPAllocFactor) end)" + + " where countyID=" + g.databaseKey, + "drop table if exists zoneTemp", + + // ZoneRoadType table + (String)DatabaseConnectionManager. + defaultDatabaseCreateTableStatements.get("zoneroadtype"), + "insert ignore into ZoneRoadType" + + " select ZoneRoadType.*" + + " from " + defaultDatabaseName + ".County c" + + " inner join " + defaultDatabaseName + ".Zone" + + " using (countyID)" + + " inner join " + defaultDatabaseName + ".ZoneRoadType" + + " using (zoneID)" + + " where c.countyID=" + g.databaseKey, + "drop table if exists zoneTemp", + "create table zoneTemp" + + " select roadTypeID, sum(SHOAllocFactor) as sumSHOAllocFactor" + + " from ZoneRoadType zrt" + + " inner join Zone z using (zoneID)" + + " where countyID=" + g.databaseKey + + " group by roadTypeID", + "update ZoneRoadType, zoneTemp, Zone set " + + " SHOAllocFactor=(case when (sumSHOAllocFactor is null or sumSHOAllocFactor <= 0) then 1 else (SHOAllocFactor/sumSHOAllocFactor) end)" + + " where ZoneRoadType.zoneID=Zone.zoneID" + + " and ZoneRoadType.roadTypeID=zoneTemp.roadTypeID" + + " and Zone.countyID=" + g.databaseKey, + "drop table if exists zoneTemp" + }; + statements = standardStatements; + } + for(int i=0;i 0) { + SQLRunner.executeSQL(newDB,sql); + } + } + } catch(Exception e) { + Logger.log(LogMessageCategory.INFO,e.toString()); + e.printStackTrace(); + } + } + + /** + * Generate an XML file describing the current RunSpec's pertinent sections, + * the database selection, and the importers. + * @param fileNameAndPath file name and path to be created (or overwritten) + * @throws IOException if anything goes wrong + **/ + public void generateXML(String fileNameAndPath) throws IOException { + File file = new File(fileNameAndPath); + PrintWriter printWriter = null; + try { + printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter( + new FileOutputStream(file)))); + printWriter.println(""); + if(isCountyDomain) { + printWriter.println("\t"); + } else if(isProjectDomain) { + printWriter.println("\t"); + } else { + printWriter.println("\t"); + } + printWriter.println("\t\t"); + RunSpecXML runSpecWriter = new RunSpecXML(runSpec); + runSpecWriter.save(printWriter,true); + printWriter.println("\t\t"); + printWriter.println("\t\t"); + for(Iterator i=importers.iterator();i.hasNext();) { + IImporter importer = (IImporter)i.next(); + String textToWrite = importer.toXML(); + if(textToWrite != null && textToWrite.length() > 0) { + printWriter.println(textToWrite); + } + } + printWriter.println("\t"); + printWriter.println(""); + } finally { + if(printWriter != null) { + try { + printWriter.close(); + } catch(Exception e) { + // Nothing to do here + } + printWriter = null; + } + } + + // Test the XML load + if(shouldTestXML) { + shouldTestXML = false; // prevent recursion of the testing code + try { + ArrayList managers = fromXML(fileNameAndPath); + if(managers == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to load from saved XML"); + return; + } + int index = 0; + for(Iterator i=managers.iterator();i.hasNext();index++) { + ImporterManager manager = (ImporterManager)i.next(); + manager.generateXML(fileNameAndPath + "_" + index); + } + } finally { + shouldTestXML = true; + } + } + } + + /** + * Load from an XML file. + * @param fileNameAndPath file to be read + * @return ArrayList of ImporterManager objects as found within the XML document. + * null if any of the ImporterManager objects failed to load. + **/ + public static ArrayList fromXML(String fileNameAndPath) { + ArrayList managers = new ArrayList(); + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + dbf.setNamespaceAware(true); + try { + DocumentBuilder db = dbf.newDocumentBuilder(); + db.setErrorHandler(new RunSpecXML.XMLErrorHandler()); + Document doc = db.parse(new File(fileNameAndPath)); + // Verify that this is an importer xml file + Node rootNode = doc.getFirstChild(); + if(!(rootNode != null && rootNode.getNodeName().equalsIgnoreCase("moves"))) { + Logger.log(LogMessageCategory.ERROR, + "Invalid Importer XML file - missing tag"); + return null; + } + for(Node subNode = rootNode.getFirstChild(); subNode != null; + subNode = subNode.getNextSibling()) { + if(subNode.getNodeName().equalsIgnoreCase("importer")) { + ImporterManager manager = fromXML(subNode); + if(manager != null) { + managers.add(manager); + } + } + } + if(managers.size() <= 0) { + Logger.log(LogMessageCategory.ERROR, + "Invalid Importer XML file - no loaded importers"); + return null; + } + } catch(SAXException e) { + // If we get this exception, then we don't have a chance to read any fields + Logger.logError(e,"Could not load Importer XML."); + } catch(Exception e) { + // This indicates an error during one field's parsing + Logger.logError(e,"Could not load Importer XML"); + return null; + } + return managers; + } + + /** + * Load a single importer manager from XML. + * @param importerNode XML node describing a single importer node + * @return an ImporterManager object or null if one could not be loaded. + * @throws SAXException upon an XML issue + * @throws Exception upon any other problem + **/ + private static ImporterManager fromXML(Node importerNode) throws SAXException, Exception { + ImporterManager manager = new ImporterManager(null); + NamedNodeMap attributes = importerNode.getAttributes(); + for(int i = 0; i < attributes.getLength(); i++) { + Node attributeNode = attributes.item(i); + if(attributeNode.getNodeName().equalsIgnoreCase("mode")) { + if(attributeNode.getNodeValue().equalsIgnoreCase("county")) { + manager.runSpec.domain = ModelDomain.SINGLE_COUNTY; + manager.setAsCountyDomain(); + } else if(attributeNode.getNodeValue().equalsIgnoreCase("project")) { + manager.runSpec.domain = ModelDomain.PROJECT; + manager.setAsProjectDomain(); + } + } + } + // Load the nodes within the file + for(Node subNode = importerNode.getFirstChild(); subNode != null; + subNode = subNode.getNextSibling()) { + if(subNode.getNodeName().equalsIgnoreCase("filters")) { + RunSpecXML rsxml = new RunSpecXML(manager.runSpec); + for(Node rsChild=subNode.getFirstChild(); rsChild != null; + rsChild = rsChild.getNextSibling()) { + rsxml.processRunSpecSubNode(rsChild); + } + } else if(subNode.getNodeName().equalsIgnoreCase("databaseselection")) { + attributes = subNode.getAttributes(); + manager.database.serverName = ""; + manager.database.databaseName = ""; + for(int i = 0; i < attributes.getLength(); i++) { + Node attributeNode = attributes.item(i); + if(attributeNode.getNodeName().equalsIgnoreCase("servername")) { + manager.database.serverName = attributeNode.getNodeValue(); + } else if(attributeNode.getNodeName().equalsIgnoreCase("databasename")) { + manager.database.databaseName = attributeNode.getNodeValue(); + } + } + if(manager.database.serverName.length() <= 0 + && manager.database.databaseName.length() <= 0) { + Logger.log(LogMessageCategory.ERROR, + "Invalid Importer XML file - blank/missing server or database"); + return null; + } + } else { + // Try to instantiate an importer based on the node + IImporter importer = + ImporterInstantiator.createByXMLNodeType(subNode.getNodeName(),manager); + if(importer != null) { + manager.importers.add(importer); + if(!importer.fromXML(subNode)) { + return null; + } + } + } + } + manager.summarizeRequirements(); + return manager; + } + + /** + * Add a log entry for an importer. + * @param importer importer that took action within the current database + * @param briefDescription short description of the action taken by the importer, + * such as "Imported FuelSupply Table". + * @param fullDescription long description of the action taken by the importer, + * such as "July 2006 North East States updated rates from Wes Faler". + **/ + public void log(IImporter importer, String briefDescription, String fullDescription) { + Connection db = activeDb; + if(db == null) { + db = openDatabase(); + } + if(db == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to create database " + + database.toString()); + return; + } + String sql = ""; + try { + // Trim descriptions to a size that fits in the database + briefDescription = StringUtilities.safeGetString(briefDescription); + if(briefDescription.length() > 100) { + briefDescription = briefDescription.substring(0,100).trim(); + } + fullDescription = StringUtilities.safeGetString(fullDescription); + if(fullDescription.length() > 4096) { + fullDescription = fullDescription.substring(0,4096).trim(); + } + // Store the descriptions + sql = "insert into auditLog (whenHappened,importerName," + + "briefDescription,fullDescription) " + + "values (now()" + + "," + DatabaseUtilities.escapeSQL(importer.getName(),true) + + "," + DatabaseUtilities.escapeSQL(briefDescription,true) + + "," + DatabaseUtilities.escapeSQL(fullDescription,true) + + ")"; + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + Logger.logError(e,"Unable to write to audit log"); + } finally { + if(db != null && db != activeDb) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + /** + * Remove all log entries for an importer. This should be done after all data has + * been cleared from tables managed by an importer, or before an importer makes a + * total data change over (rather than an incremental addition of new data). + * @param importer importer to clear information for + **/ + public void deleteLog(IImporter importer) { + Connection db = activeDb; + if(db == null) { + db = openDatabase(); + } + if(db == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to create database " + + database.toString()); + return; + } + String sql = ""; + try { + sql = "delete from auditLog where importerName=" + + DatabaseUtilities.escapeSQL(importer.getName(),true); + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + if( e.toString().toLowerCase().contains("auditlog")==false ){ + Logger.logError(e,"Unable to clear audit log entries for " + importer.getName()); + }else{ + return; + } + } finally { + if(db != null && db != activeDb) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + /** + * Remove log entries for an importer specific to a table. This should be done after all data has + * been cleared from a table managed by an importer. + * @param importer importer to clear information for + * @param tableName affected table + **/ + public void deleteLog(IImporter importer, String tableName) { + Connection db = activeDb; + if(db == null) { + db = openDatabase(); + } + if(db == null) { + Logger.log(LogMessageCategory.ERROR,"Unable to create database " + + database.toString()); + return; + } + String sql = ""; + try { + sql = "delete from auditLog where importerName=" + + DatabaseUtilities.escapeSQL(importer.getName(),true) + + " and briefDescription like '%" + DatabaseUtilities.escapeSQL(tableName,false) + "%'"; + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + Logger.logError(e,"Unable to clear audit log entries for " + importer.getName() + ", table " + tableName); + } finally { + if(db != null && db != activeDb) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + /** + * Get the set of values for a named filter. + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return set of unique values for the filter, or null if the filter is undefined. + **/ + public TreeSet getFilterValuesSet(String filterType) { + return (TreeSet)filterValueSets.get(filterType); + } + + /** + * Check a value against the filters. The value's type must match the data type of + * the filter for it to be accepted. The value is accepted if there are no + * restrictions or if the value is explicitly listed. + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @param value String or Integer object holding the value to check against + * the filters. + * @return true if the record matches the filters, false if it is not included by + * the filters + **/ + public boolean doesInclude(String filterType, Object value) { + return doesInclude(filterType,value,null); + } + + public static class Message { + public String text; + + public boolean hasMessage() { + return text != null && text.length() > 0; + } + } + + /** + * Check a value against the filters. The value's type must match the data type of + * the filter for it to be accepted. The value is accepted if there are no + * restrictions or if the value is explicitly listed. + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @param value String or Integer object holding the value to check against + * the filters. + * @param message optional receiver of a customized error message, may be null + * @return true if the record matches the filters, false if it is not included by + * the filters + **/ + public boolean doesInclude(String filterType, Object value, Message message) { + if(message != null) { + message.text = ""; + } + //System.out.println("doesInclude(" + filterType + "," + value.toString() + ")"); + String dataType = (String)filterDataTypes.get(filterType); + if(dataType == null) { + //System.out.println("dataType == null for " + filterType); + return true; + } + //System.out.println("dataType=\"" + dataType + "\""); + if(dataType.equalsIgnoreCase("Integer")) { + if(value instanceof Integer) { + TreeSet set = (TreeSet)filterValueSets.get(filterType); + // Accept the value if there are no restrictions or if the value is listed + return set == null || set.size() <= 0 || set.contains((Integer)value); + } else { + return false; + } + } else if(dataType.equalsIgnoreCase("String")) { + if(value instanceof String) { + TreeSet set = (TreeSet)filterValueSets.get(filterType); + // Accept the value if there are no restrictions or if the value is listed + return set == null || set.size() <= 0 || set.contains((String)value); + } else { + return false; + } + } else if(dataType.equalsIgnoreCase("GreaterThanZeroFloat")) { + return true; // accept all floating point values coming into system + } else if(dataType.equalsIgnoreCase("GreaterThanZeroInt")){ + double f=0; + if(value instanceof Integer) { + f = ((Integer)value).intValue(); + } else if(value instanceof Double) { + f = ((Double)value).doubleValue(); + } else if(value instanceof String) { + try { + f = Double.parseDouble((String)value); + } catch(Exception e) { + return false; + } + } + int i = (int)f; + return (i>0) && Math.abs(((double)i-f))<0.1; + } else if(dataType.equalsIgnoreCase("NonNegativeFloat")) { + return true; // accept all floating point values coming into system + } else if(dataType.equalsIgnoreCase("zeroToOneFraction")) { + double f=0; + if(value instanceof Integer) { + f = ((Integer)value).intValue(); + } else if(value instanceof Double) { + f = ((Double)value).doubleValue(); + } else if(value instanceof String) { + try { + f = Double.parseDouble((String)value); + } catch(Exception e) { + if(message != null) { + message.text = ((String)value) + " is not a number from 0 to 1, inclusive"; + } + return false; + } + } + boolean success = f >= 0 && f <= 1; + if(!success && message != null) { + message.text = "" + f + " is not a number from 0 to 1, inclusive"; + } + return success; + } else if(dataType.equalsIgnoreCase("zeroTo100Percentage")) { + double f=0; + if(value instanceof Integer) { + f = ((Integer)value).intValue(); + } else if(value instanceof Double) { + f = ((Double)value).doubleValue(); + } else if(value instanceof String) { + try { + f = Double.parseDouble((String)value); + } catch(Exception e) { + if(message != null) { + message.text = ((String)value) + " is not a number from 0 to 100, inclusive"; + } + return false; + } + } + boolean success = f >= 0 && f <= 100; + if(!success && message != null) { + message.text = "" + f + " is not a number from 0 to 100, inclusive"; + } + return success; + } else if( dataType.equalsIgnoreCase("YesNo")){ + String c = value.toString(); + return c.equalsIgnoreCase("Y") || c.equalsIgnoreCase("N"); + }else if( dataType.equalsIgnoreCase("ModelYear")){ + int modelYear = 0; + if(value instanceof Integer) { + modelYear = ((Integer)value).intValue(); + } else if(value instanceof Double) { + modelYear = (int)((Double)value).doubleValue(); + } else if(value instanceof String) { + try { + modelYear = (int)Double.parseDouble((String)value); + } catch(Exception e) { + return false; + } + } + return modelYear>=1960 && modelYear<=2050; + } else if(dataType.equalsIgnoreCase("ModelYearRange")) { + int modelYearRange = 0; // format: , such as "19802010" for 1980 through 2010, inclusive. 0 is also accepted as a wildcard. + if(value instanceof Integer) { + modelYearRange = ((Integer)value).intValue(); + } else if(value instanceof Double) { + modelYearRange = (int)((Double)value).doubleValue(); + } else if(value instanceof String) { + try { + modelYearRange = (int)Double.parseDouble((String)value); + } catch(Exception e) { + return false; + } + } + int lowModelYear = modelYearRange / 10000; + int highModelYear = modelYearRange % 10000; + return modelYearRange == 0 || + (lowModelYear>=1960 && lowModelYear<=2050 + && highModelYear>=1960 && highModelYear<=2050 + && lowModelYear <= highModelYear); + } + return true; + } + + /** + * Test a column in a ResultSet against the filters. The value is accepted if + * there are no restrictions or if the value is explicitly listed. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + public boolean doesInclude(ResultSet rs, int columnIndex1, String filterType) + throws SQLException { + String dataType = (String)filterDataTypes.get(filterType); + if(dataType == null) { + return true; + } + if(dataType.equalsIgnoreCase("Integer")) { + return doesIncludeInteger(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("String")) { + return doesIncludeString(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("GreaterThanZeroFloat")) { + return doesIncludeGreaterThanZeroFloat(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("GreaterThanZeroInt")) { + return doesIncludeGreaterThanZeroInt(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("NonNegativeFloat")) { + return doesIncludeNonNegativeFloat(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("zeroToOneFraction")) { + return doesIncludeZeroToOneFraction(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("zeroTo100Percentage")) { + return doesIncludeZeroTo100Percentage(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("YesNo")) { + return doesIncludeYesNo(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("ModelYear")) { + return doesIncludeModelYear(rs,columnIndex1,filterType); + } else if(dataType.equalsIgnoreCase("ModelYearRange")){ + return doesIncludeModelYearRange(rs,columnIndex1,filterType); + } + return true; + } + + /** + * Test an Integer column in a ResultSet against the filters. The value is accepted if + * there are no restrictions or if the value is explicitly listed. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeInteger(ResultSet rs, int columnIndex1, String filterType) + throws SQLException { + Integer value = new Integer(rs.getInt(columnIndex1)); + TreeSet set = (TreeSet)filterValueSets.get(filterType); + // Accept the value if there are no restrictions or if the value is listed + return set == null || set.size() <= 0 || set.contains(value); + } + + /** + * Test a String column in a ResultSet against the filters. The value is accepted if + * there are no restrictions or if the value is explicitly listed. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeString(ResultSet rs, int columnIndex1, String filterType) + throws SQLException { + String value = rs.getString(columnIndex1); + if(value == null) { + value = ""; + } + TreeSet set = (TreeSet)filterValueSets.get(filterType); + // Accept the value if there are no restrictions or if the value is listed + return set == null || set.size() <= 0 || set.contains(value); + } + + /** + * Test a Float column in a ResultSet against zero. The value is accepted if + * it is greater than zero. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeGreaterThanZeroFloat(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + float f = rs.getFloat(columnIndex1); + return f > 0.0; + } + + /** + * Test an Int column in a ResultSet against greater than zero. The value is accepted if + * it is greater than zero. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeGreaterThanZeroInt(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + float f = rs.getFloat(columnIndex1); + int i = (int)f; + return (i>0) && Math.abs(((float)i-f))<0.1; + } + + /** + * Test a Yes/No column in a ResultSet. The value is accepted if + * it is Y or N. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeYesNo(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + String c = rs.getString(columnIndex1); + return c.equalsIgnoreCase("Y") || c.equalsIgnoreCase("N"); + } + + + /** + * Test Model Year column in a ResultSet. The value is accepted if + * it is between >=1960 to <=2050 + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeModelYear(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + int value = rs.getInt(columnIndex1); + return value>=1960 && value<=2050; + } + + /** + * Test Model Year range column in a ResultSet. The value is accepted if + * it is 0 or if both model years are between >=1960 to <=2050 and the low model year is less + * than or equal to the high model year. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeModelYearRange(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + int modelYearRange = rs.getInt(columnIndex1); + int lowModelYear = modelYearRange / 10000; + int highModelYear = modelYearRange % 10000; + return modelYearRange == 0 || + (lowModelYear>=1960 && lowModelYear<=2050 + && highModelYear>=1960 && highModelYear<=2050 + && lowModelYear <= highModelYear); + } + + /** + * Test a Float column in a ResultSet against zero. The value is accepted if + * it is greater than or equal to zero. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeNonNegativeFloat(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + float f = rs.getFloat(columnIndex1); + return f >= 0.0; + } + + /** + * Test a Float column in a ResultSet against zero. The value is accepted if + * it is greater than or equal to zero and less than or equal to one. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeZeroToOneFraction(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + float f = rs.getFloat(columnIndex1); + return f >= 0.0 && f <= 1.0; + } + + /** + * Test a Float column in a ResultSet against zero. The value is accepted if + * it is greater than or equal to zero and less than or equal to one hundred. + * @param rs data record to be examined + * @param columnIndex1 1-based column index within the row + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return true if the record matches the filters, false if it is not included by + * the filters + * @throws SQLException if anything goes wrong + **/ + private boolean doesIncludeZeroTo100Percentage(ResultSet rs, int columnIndex1, + String filterType) throws SQLException { + float f = rs.getFloat(columnIndex1); + return f >= 0.0 && f <= 100.0; + } + + /** + * Get the set of values for a given filter. + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return ArrayList of Objects (Integer, Double, String, other) that give + * the unique values permitted within the current RunSpec for the named filter. + * May be null or empty. + **/ + public ArrayList getFilterValues(String filterType) { + if(filterValueLists.containsKey(filterType)) { + return (ArrayList)filterValueLists.get(filterType); + } + return null; + } + + /** + * Get the set of values for a given filter. + * @param filterType one of the ImporterManager.FILTER_XXXX constants + * @return ArrayList of Objects (Integer, Double, String, other) that give + * the unique values permitted within the current RunSpec for the named filter. + * May be null or empty. + **/ + public String getFilterValuesCSV(String filterType) { + String result = null; + if(filterValuesCSV.containsKey(filterType)) { + result = (String)filterValuesCSV.get(filterType); + } + if(result == null || result.length() <= 0) { + return "0"; + } + return result; + } + + /** + * Load the set of filter values from the current RunSpec. + **/ + private void loadFilterValues() { + try { + loadTimeFilterValues(); // must be done before loadGeographicFilterValues() + loadGeographicFilterValues(); // do after loadTimeFilterValues() + loadRoadTypeValues(); + if(isNonroad) { + loadNonroadSourceAndFuels(); + } else { + loadOnRoadSourceAndFuels(); + } + loadPolProcessIDs(); + loadOpModeIDs(); + loadTestStandardsIDs(); + loadIsLeapYear(); + + filterDataTypes.put(FILTER_YN,"YesNo"); + filterDataTypes.put(FILTER_MODELYEARID,"ModelYear"); + filterDataTypes.put(FILTER_MODEL_YEAR_RANGE,"ModelYearRange"); + filterDataTypes.put(FILTER_MARKET_SHARE,"GreaterThanZeroFloat"); + filterDataTypes.put(FILTER_NON_NEGATIVE,"NonNegativeFloat"); + filterDataTypes.put(FILTER_0_TO_1_FRACTION,"zeroToOneFraction"); + filterDataTypes.put(FILTER_0_TO_100_PERCENTAGE,"zeroTo100Percentage"); + filterDataTypes.put(FILTER_IMPROGRAMID,"GreaterThanZeroInt"); + } catch(Exception e) { + Logger.logError(e,"Unable to load filter values"); + } + + // Produce flat lists in filterValueLists from the tree sets that were populated + // in filterValueSets. + Set keys = filterValueSets.keySet(); + for(Iterator i=keys.iterator();i.hasNext();) { + String filterName = (String)i.next(); + TreeSet set = (TreeSet)filterValueSets.get(filterName); + if(set != null && set.size() > 0) { + String csv = ""; + ArrayList list = new ArrayList(); + for(Iterator j=set.iterator();j.hasNext();) { + Object t = (Object)j.next(); + list.add(t); + if(csv.length() > 0) { + csv += ","; + } + csv += t.toString(); + } + filterValueLists.put(filterName,list); + filterValuesCSV.put(filterName,csv); + } + } + } + + /** + * Populate FILTER_IS_LEAP_YEAR values. + **/ + private void loadIsLeapYear() { + TreeSet isLeapYearValues = new TreeSet(); + filterValueSets.put(FILTER_IS_LEAP_YEAR,isLeapYearValues); + filterDataTypes.put(FILTER_IS_LEAP_YEAR,"String"); + + isLeapYearValues.add(isLeapYear()? "Y":"N"); + } + + /** + * Populate FILTER_TESTSTANDARDSID values. + * @throws Exception if anything goes wrong + **/ + private void loadTestStandardsIDs() throws Exception { + TreeSet testStandardsIDs = new TreeSet(); + filterValueSets.put(FILTER_TESTSTANDARDSID,testStandardsIDs); + filterDataTypes.put(FILTER_TESTSTANDARDSID,"Integer"); + + TreeSet inspectFreqIDs = new TreeSet(); + filterValueSets.put(FILTER_INSPECTFREQ,inspectFreqIDs); + filterDataTypes.put(FILTER_INSPECTFREQ,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + try { + sql = "select testStandardsID from IMTestStandards"; + addIntegers(db,sql,testStandardsIDs,null); + + sql = "select inspectFreq from IMInspectFreq"; + addIntegers(db,sql,inspectFreqIDs ,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_POLPROCESSID, FILTER_POLPROCESSID_IM, FILTER_STARTS_POLPROCESSID, + * FILTER_POLLUTANT, and FILTER_PROCESS values. + * @throws Exception if anything goes wrong + **/ + private void loadPolProcessIDs() throws Exception { + TreeSet polProcessIDs = new TreeSet(); + filterValueSets.put(FILTER_POLPROCESSID,polProcessIDs); + filterDataTypes.put(FILTER_POLPROCESSID,"Integer"); + + TreeSet polProcessIDsIM = new TreeSet(); + filterValueSets.put(FILTER_POLPROCESSID_IM,polProcessIDsIM); + filterDataTypes.put(FILTER_POLPROCESSID_IM,"Integer"); + + TreeSet startsPolProcessIDs = new TreeSet(); + filterValueSets.put(FILTER_STARTS_POLPROCESSID,startsPolProcessIDs); + filterDataTypes.put(FILTER_STARTS_POLPROCESSID,"Integer"); + + TreeSet pollutantIDs = new TreeSet(); + filterValueSets.put(FILTER_POLLUTANT,pollutantIDs); + filterDataTypes.put(FILTER_POLLUTANT,"Integer"); + + TreeSet processIDs = new TreeSet(); + filterValueSets.put(FILTER_PROCESS,processIDs); + filterDataTypes.put(FILTER_PROCESS,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + TreeSet affectedIDs = new TreeSet(); + try { + sql = "select polProcessID" + + " from PollutantProcessAssoc ppa" + + " inner join EmissionProcess using (processID)" + + " inner join Pollutant using (pollutantID)" + + " where (isAffectedByExhaustIM='Y' or isAffectedByEvapIM='Y')"; + query.open(db,sql); + while(query.rs.next()) { + affectedIDs.add(new Integer(query.rs.getInt(1))); + } + } finally { + query.onFinally(); + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + + for(Iterator i=runSpec.pollutantProcessAssociations.iterator(); + i.hasNext();) { + PollutantProcessAssociation ppa = (PollutantProcessAssociation)i.next(); + Integer key = new Integer(ppa.getDatabaseKey()); + polProcessIDs.add(key); + if(2 == ppa.emissionProcess.databaseKey) { + startsPolProcessIDs.add(key); + } + if(affectedIDs.contains(key)) { + polProcessIDsIM.add(key); + } + processIDs.add(new Integer(ppa.emissionProcess.databaseKey)); + pollutantIDs.add(new Integer(ppa.pollutant.databaseKey)); + } + } + + /** + * Populate FILTER_OPMODEID, FILTER_STARTS_OPMODEID, and FILTER_OPMODEID_AUX values. + * @throws Exception if anything goes wrong + **/ + private void loadOpModeIDs() throws Exception { + TreeSet opModeIDs = new TreeSet(); + filterValueSets.put(FILTER_OPMODEID,opModeIDs); + filterDataTypes.put(FILTER_OPMODEID,"Integer"); + + TreeSet startsOpModeIDs = new TreeSet(); + filterValueSets.put(FILTER_STARTS_OPMODEID,startsOpModeIDs); + filterDataTypes.put(FILTER_STARTS_OPMODEID,"Integer"); + + TreeSet opModeIDsAux = new TreeSet(); + filterValueSets.put(FILTER_OPMODEID_AUX,opModeIDsAux); + filterDataTypes.put(FILTER_OPMODEID_AUX,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + try { + sql = "select opModeID from OperatingMode"; + addIntegers(db,sql,opModeIDs,null); + + sql = "select opModeID from OperatingMode where opModeID >= 101 and opModeID < 150"; + addIntegers(db,sql,startsOpModeIDs,null); + + sql = "select opModeID from OperatingMode where opModeID >= 200 and opModeID <= 299"; + addIntegers(db,sql,opModeIDsAux,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_FUEL, FILTER_FUEL_FORMULATION, FILTER_SOURCE, FILTER_FUEL_SUBTYPE, + * and FILTER_HPMS_VTYPE values. + * @throws Exception if anything goes wrong + **/ + private void loadOnRoadSourceAndFuels() throws Exception { + TreeSet fuels = new TreeSet(); + filterValueSets.put(FILTER_FUEL,fuels); + filterDataTypes.put(FILTER_FUEL,"Integer"); + TreeSet fuelFormulations = new TreeSet(); + filterValueSets.put(FILTER_FUEL_FORMULATION,fuelFormulations); + filterDataTypes.put(FILTER_FUEL_FORMULATION,"Integer"); + TreeSet fuelSubtypes = new TreeSet(); + filterValueSets.put(FILTER_FUEL_SUBTYPE,fuelSubtypes); + filterDataTypes.put(FILTER_FUEL_SUBTYPE,"Integer"); + TreeSet sourceTypes = new TreeSet(); + filterValueSets.put(FILTER_SOURCE,sourceTypes); + filterDataTypes.put(FILTER_SOURCE,"Integer"); + TreeSet hpmsVTypes = new TreeSet(); + filterValueSets.put(FILTER_HPMS_VTYPE,hpmsVTypes); + filterDataTypes.put(FILTER_HPMS_VTYPE,"Integer"); + TreeSet sourceFuelTypes = new TreeSet(); + filterValueSets.put(FILTER_SOURCEFUELTYPE,sourceFuelTypes); + filterDataTypes.put(FILTER_SOURCEFUELTYPE,"Integer"); + + TreeSet allFuels = new TreeSet(); + filterValueSets.put("ALL_"+FILTER_FUEL,allFuels); + filterDataTypes.put("ALL_"+FILTER_FUEL,"Integer"); + + TreeSet allSourceTypes = new TreeSet(); + filterValueSets.put("ALL_"+FILTER_SOURCE,allSourceTypes); + filterDataTypes.put("ALL_"+FILTER_SOURCE,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + try { + for(Iterator i=runSpec.onRoadVehicleSelections.iterator(); + i.hasNext();) { + OnRoadVehicleSelection s = (OnRoadVehicleSelection)i.next(); + fuels.add(new Integer(s.fuelTypeID)); + sourceTypes.add(new Integer(s.sourceTypeID)); + sourceFuelTypes.add(new Integer(s.sourceTypeID*100 + s.fuelTypeID)); + } + for(Iterator i=fuels.iterator();i.hasNext();) { + Integer fuelType = (Integer)i.next(); + sql = "select fuelFormulationID" + + " from fuelSubType" + + " inner join fuelFormulation using (fuelSubTypeID)" + + " where fuelTypeID=" + fuelType; + addIntegers(db,sql,fuelFormulations,null); + + sql = "select fuelSubtypeID" + + " from fuelSubType" + + " where fuelTypeID=" + fuelType; + addIntegers(db,sql,fuelSubtypes,null); + } + if(sourceTypes.size() > 0) { + sql = "select distinct HPMSVtypeID" + + " from SourceUseType" + + " where sourceTypeID in (0"; + for(Iterator i=sourceTypes.iterator();i.hasNext();) { + sql += ","; + sql += i.next(); + } + sql += ")"; + addIntegers(db,sql,hpmsVTypes,null); + } + + // Fill the set of all fuels and source types + sql = "select fuelTypeID from fuelType"; + addIntegers(db,sql,allFuels,null); + + sql = "select sourceTypeID from sourceUseType"; + addIntegers(db,sql,allSourceTypes,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_FUEL, FILTER_FUEL_FORMULATION, FILTER_SOURCE, FILTER_FUEL_SUBTYPE, + * and FILTER_HPMS_VTYPE values. + * @throws Exception if anything goes wrong + **/ + private void loadNonroadSourceAndFuels() throws Exception { + TreeSet fuels = new TreeSet(); + filterValueSets.put(FILTER_FUEL,fuels); + filterDataTypes.put(FILTER_FUEL,"Integer"); + TreeSet fuelFormulations = new TreeSet(); + filterValueSets.put(FILTER_FUEL_FORMULATION,fuelFormulations); + filterDataTypes.put(FILTER_FUEL_FORMULATION,"Integer"); + TreeSet fuelSubtypes = new TreeSet(); + filterValueSets.put(FILTER_FUEL_SUBTYPE,fuelSubtypes); + filterDataTypes.put(FILTER_FUEL_SUBTYPE,"Integer"); + TreeSet sourceTypes = new TreeSet(); + filterValueSets.put(FILTER_SOURCE,sourceTypes); + filterDataTypes.put(FILTER_SOURCE,"Integer"); + TreeSet hpmsVTypes = new TreeSet(); + filterValueSets.put(FILTER_HPMS_VTYPE,hpmsVTypes); + filterDataTypes.put(FILTER_HPMS_VTYPE,"Integer"); + TreeSet sourceFuelTypes = new TreeSet(); + filterValueSets.put(FILTER_SOURCEFUELTYPE,sourceFuelTypes); + filterDataTypes.put(FILTER_SOURCEFUELTYPE,"Integer"); + + TreeSet allFuels = new TreeSet(); + filterValueSets.put("ALL_"+FILTER_FUEL,allFuels); + filterDataTypes.put("ALL_"+FILTER_FUEL,"Integer"); + + TreeSet allSourceTypes = new TreeSet(); + filterValueSets.put("ALL_"+FILTER_SOURCE,allSourceTypes); + filterDataTypes.put("ALL_"+FILTER_SOURCE,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + try { + for(Iterator i=runSpec.offRoadVehicleSelections.iterator(); + i.hasNext();) { + OffRoadVehicleSelection s = (OffRoadVehicleSelection)i.next(); + fuels.add(new Integer(s.fuelTypeID)); + } + for(Iterator i=fuels.iterator();i.hasNext();) { + Integer fuelType = (Integer)i.next(); + sql = "select fuelFormulationID" + + " from nrFuelSubType" + + " inner join fuelFormulation using (fuelSubTypeID)" + + " where fuelTypeID=" + fuelType; + addIntegers(db,sql,fuelFormulations,null); + + sql = "select fuelSubtypeID" + + " from nrFuelSubType" + + " where fuelTypeID=" + fuelType; + addIntegers(db,sql,fuelSubtypes,null); + } + // Fill the set of all fuels and source types + sql = "select fuelTypeID from nrFuelType"; + addIntegers(db,sql,allFuels,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_ROAD_TYPE and FILTER_AVGSPEED_BIN values. + **/ + private void loadRoadTypeValues() throws Exception { + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + + try { + TreeSet roadTypes = new TreeSet(); + filterValueSets.put(FILTER_ROAD_TYPE,roadTypes); + filterDataTypes.put(FILTER_ROAD_TYPE,"Integer"); + TreeSet highwayRoadTypes = new TreeSet(); + filterValueSets.put(FILTER_ROAD_TYPE_HWY,highwayRoadTypes); + filterDataTypes.put(FILTER_ROAD_TYPE_HWY,"Integer"); + TreeSet nonOffnetworkRoadTypes = new TreeSet(); + filterValueSets.put(FILTER_ROAD_TYPE_NOT_OFFNETWORK,nonOffnetworkRoadTypes); + filterDataTypes.put(FILTER_ROAD_TYPE_NOT_OFFNETWORK,"Integer"); + + for(Iterator i=runSpec.roadTypes.iterator();i.hasNext();) { + RoadType r = (RoadType)i.next(); + Integer ri = new Integer(r.roadTypeID); + roadTypes.add(ri); + if(r.roadTypeID == 2 || r.roadTypeID == 4) { + highwayRoadTypes.add(ri); + } + if(r.roadTypeID > 1 && r.roadTypeID <= 5) { + nonOffnetworkRoadTypes.add(ri); + } + } + + TreeSet speedBins = new TreeSet(); + filterValueSets.put(FILTER_AVGSPEED_BIN,speedBins); + filterDataTypes.put(FILTER_AVGSPEED_BIN,"Integer"); + sql = "select avgSpeedBinID from avgSpeedBin"; + addIntegers(db,sql,speedBins,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_HOUR, FILTER_DAY, FILTER_MONTH, FILTER_MONTH_GROUP, + * FILTER_YEAR, FILTER_FUEL_YEAR, FILTER_HOURDAY, and FILTER_AGE values. + * @throws Exception if anything goes wrong + **/ + private void loadTimeFilterValues() throws Exception { + TreeSet hours = new TreeSet(); + filterValueSets.put(FILTER_HOUR,hours); + filterDataTypes.put(FILTER_HOUR,"Integer"); + TreeSet days = new TreeSet(); + filterValueSets.put(FILTER_DAY,days); + filterDataTypes.put(FILTER_DAY,"Integer"); + TreeSet months = new TreeSet(); + filterValueSets.put(FILTER_MONTH,months); + filterDataTypes.put(FILTER_MONTH,"Integer"); + TreeSet monthGroups = new TreeSet(); + filterValueSets.put(FILTER_MONTH_GROUP,monthGroups); + filterDataTypes.put(FILTER_MONTH_GROUP,"Integer"); + TreeSet years = new TreeSet(); + filterValueSets.put(FILTER_YEAR,years); + filterDataTypes.put(FILTER_YEAR,"Integer"); + fuelYears = new TreeSet(); + filterValueSets.put(FILTER_FUEL_YEAR,fuelYears); + filterDataTypes.put(FILTER_FUEL_YEAR,"Integer"); + TreeSet agedYears = new TreeSet(); + filterValueSets.put(FILTER_AGEDYEAR,agedYears); + filterDataTypes.put(FILTER_AGEDYEAR,"Integer"); + TreeSet agedModelYears = new TreeSet(); + filterValueSets.put(FILTER_AGEDMODELYEAR,agedModelYears); + filterDataTypes.put(FILTER_AGEDMODELYEAR,"Integer"); + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + try { + ExecutionRunSpec e = new ExecutionRunSpec(runSpec,true); + e.buildExecutionTimeSpan(db,true); + hours.addAll(e.hours); + days.addAll(e.days); + for(Iterator i=e.years.iterator();i.hasNext();) { + Integer year = (Integer)i.next(); + years.add(year); + sql = "select fuelYearID from year where yearID=" + year; + addIntegers(db,sql,fuelYears,null); + // Add model years and calendar years within the 30 year age range of the simulated calendar year + for(int ai=0;ai<=30;ai++) { + int agedYear = year.intValue() - ai; + if(agedYear >= 1960 && agedYear <= 2050) { + agedModelYears.add(new Integer(agedYear)); + } + if(agedYear >= 1960 && agedYear <= 2050) { + agedYears.add(new Integer(agedYear)); + } + } + } + for(Iterator i=e.months.iterator();i.hasNext();) { + Integer month = (Integer)i.next(); + months.add(month); + sql = "select monthGroupID from monthOfAnyYear where monthID=" + month; + addIntegers(db,sql,monthGroups,null); + } + + TreeSet hourDays = new TreeSet(); + filterValueSets.put(FILTER_HOURDAY,hourDays); + filterDataTypes.put(FILTER_HOURDAY,"Integer"); + sql = "select hourDayID from hourDay where hourID in (0"; + for(Iterator i=hours.iterator();i.hasNext();) { + sql += ","; + sql += i.next(); + } + sql += ") and dayID in (0"; + for(Iterator i=days.iterator();i.hasNext();) { + sql += ","; + sql += i.next(); + } + sql += ")"; + addIntegers(db,sql,hourDays,null); + + TreeSet ages = new TreeSet(); + filterValueSets.put(FILTER_AGE,ages); + filterDataTypes.put(FILTER_AGE,"Integer"); + sql = "select ageID from ageCategory"; + addIntegers(db,sql,ages,null); + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Populate FILTER_ZONE, FILTER_COUNTY, FILTER_STATE, and FILTER_FUEL_REGION values. + * @throws Exception if anything goes wrong + **/ + private void loadGeographicFilterValues() throws Exception { + TreeSet zones = new TreeSet(); + filterValueSets.put(FILTER_ZONE,zones); + filterDataTypes.put(FILTER_ZONE,"Integer"); + TreeSet counties = new TreeSet(); + filterValueSets.put(FILTER_COUNTY,counties); + filterDataTypes.put(FILTER_COUNTY,"Integer"); + TreeSet states = new TreeSet(); + filterValueSets.put(FILTER_STATE,states); + filterDataTypes.put(FILTER_STATE,"Integer"); + TreeSet regions = new TreeSet(); + filterValueSets.put(FILTER_FUEL_REGION,regions); + filterDataTypes.put(FILTER_FUEL_REGION,"Integer"); + TreeSet offNetworkLinks = new TreeSet(); + filterValueSets.put(FILTER_OFFNETWORK_LINK,offNetworkLinks); + filterDataTypes.put(FILTER_OFFNETWORK_LINK,"Integer"); + + String fuelYearsText = StringUtilities.getCSVGeneric(fuelYears); + + if(runSpec.isCustomDomain()) { + //zones.add(new Integer(runSpec.genericCounty.getCountyID()*10)); + counties.add(new Integer(runSpec.genericCounty.getCountyID())); + states.add(new Integer(runSpec.genericCounty.stateID)); + regions.add(new Integer(100000000)); + return; + } + + Connection db = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + String sql = ""; + TreeSet regionCounties = new TreeSet(); + try { + for(Iterator i=runSpec.geographicSelections.iterator(); + i.hasNext();) { + regionCounties.clear(); + GeographicSelection g = (GeographicSelection)i.next(); + if(g.type == GeographicSelectionType.COUNTY) { + counties.add(new Integer(g.databaseKey)); + regionCounties.add(new Integer(g.databaseKey)); + // Get the state for the county + sql = "select stateID from County where countyID=" + g.databaseKey; + addIntegers(db,sql,states,null); + // Get the zones in the county + sql = "select zoneID from Zone where countyID=" + g.databaseKey; + addIntegers(db,sql,zones,null); + // Get the offnetwork links in the county + sql = "select linkID from link where roadTypeID=1 and countyID=" + g.databaseKey; + addIntegers(db,sql,offNetworkLinks,null); + } else if(g.type == GeographicSelectionType.STATE) { + states.add(new Integer(g.databaseKey)); + // Get the counties for the state + sql = "select countyID from County where stateID=" + g.databaseKey; + addIntegers(db,sql,counties,null); + addIntegers(db,sql,regionCounties,null); + // Get the zones in the state + sql = "select zoneID" + + " from Zone" + + " inner join County using (countyID)" + + " where stateID=" + g.databaseKey; + addIntegers(db,sql,zones,null); + // Get the offnetwork links in the state + sql = "select linkID" + + " from link" + + " inner join county using (countyID)" + + " where roadTypeID=1 and stateID=" + g.databaseKey; + addIntegers(db,sql,offNetworkLinks,null); + } else if(g.type == GeographicSelectionType.NATION) { + // Get the states and counties in the nation + sql = "select stateID, countyID from County"; + addIntegers(db,sql,states,counties); + // Get the zones in the nation + sql = "select zoneID from Zone"; + addIntegers(db,sql,zones,null); + // Get the offnetwork links in the state + sql = "select linkID from link where roadTypeID=1"; + addIntegers(db,sql,offNetworkLinks,null); + // Get the regions in the nation + sql = "select regionID" + + " from regionCounty" + + " where regionCodeID=1" + + " and fuelYearID in (" + fuelYearsText + ")"; + addIntegers(db,sql,regions,null); + regionCounties.clear(); + } + if(regionCounties.size() > 0) { + sql = "select regionID" + + " from regionCounty" + + " where regionCodeID=1" + + " and fuelYearID in (" + fuelYearsText + ")" + + " and countyID in (" + StringUtilities.getCSVGeneric(regionCounties) + ")"; + addIntegers(db,sql,regions,null); + } + } + } finally { + if(db != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,db); + db = null; + } + } + } + + /** + * Perform a query, adding its Integer results to filter value sets. + * @param db database to be queried + * @param sql query to be executed + * @param set1 TreeSet of Integer objects to be filled with the first column's values + * @param set2 TreeSet of Integer objects to be filled with the second column's values. + * May be null if there is no second column to be read. + * @throws SQLException if there is a database error + **/ + private void addIntegers(Connection db, String sql, TreeSet set1, TreeSet set2) + throws SQLException { + Statement statement = null; + ResultSet rs = null; + try { + statement = db.createStatement(); + rs = SQLRunner.executeQuery(statement,sql); + while(rs.next()) { + Integer i = new Integer(rs.getInt(1)); + set1.add(i); + if(set2 != null) { + i = new Integer(rs.getInt(2)); + set2.add(i); + } + } + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** + * Add the currently selected databaes to the RunSpec as user input database + * or as the scale input database. This should be done after an import so that + * users executing the model immediately do so with their imported data. + * @param importDidOccur true if the database should be added because an import happened + **/ + public void addDatabaseToRunSpec(boolean importDidOccur) { + if((isCountyDomain && runSpec.domain == ModelDomain.SINGLE_COUNTY) + || (isProjectDomain && runSpec.domain == ModelDomain.PROJECT)) { + runSpec.scaleInputDatabase = (DatabaseSelection)database.clone(); + return; + } + if(importDidOccur) { + // The database selection should be put into the RunSpec as the last user- + // input database if not already listed. + boolean found = false; + for(Iterator i=runSpec.databaseSelectionInputSets.iterator();i.hasNext();) { + DatabaseSelection s = (DatabaseSelection)i.next(); + if(s.databaseName.equalsIgnoreCase(database.databaseName)) { + found = true; + break; + } + } + if(!found) { + runSpec.databaseSelectionInputSets.add((DatabaseSelection)database.clone()); + } + } + } + + /** + * Check a RunSpec against the inputs required to create a county domain database. + * @param runSpec RunSpec to be inspected. If null, the global RunSpec from the + * MOVESAPI singleton will be used. + * @param messages holds output error and warning messages as String objects. May be null. + * @return -1 if not ready, 0 if ready but with warnings, +1 if ready without warnings + **/ + public static int isReadyForCountyDomain(RunSpec runSpec, ArrayList messages) { + if(runSpec == null) { + runSpec = MOVESAPI.getTheAPI().getRunSpec(); + if(runSpec == null) { + if(messages != null) { + messages.add("Error: No RunSpec found"); + } + return -1; + } + } + int result = +1; + if(runSpec.domain != ModelDomain.PROJECT + && runSpec.domain != ModelDomain.SINGLE_COUNTY) { + if(messages != null) { + messages.add("Error: Select either County or Project domain first."); + } + result = -1; + } + if(runSpec.timeSpan.years.size() <= 0) { + if(messages != null) { + messages.add("Error: Select a calendar year first."); + } + result = -1; + } else if(runSpec.timeSpan.years.size() > 1) { + if(messages != null) { + messages.add("Error: A domain database can contain only one calendar year," + + " but the runspec has " + runSpec.timeSpan.years.size() + "."); + } + result = -1; + } + + GeographicSelection g = null; + if(runSpec.geographicSelections.size() <= 0) { + if(messages != null) { + messages.add("Error: Select a single county first."); + } + result = -1; + } else if(runSpec.geographicSelections.size() == 1) { + g = (GeographicSelection)runSpec.geographicSelections.first(); + if(g.type != GeographicSelectionType.COUNTY) { + if(messages != null) { + messages.add("Error: Too many counties selected. Select exactly one first."); + } + result = -1; + g = null; + } + } else if(runSpec.geographicSelections.size() > 1) { + if(messages != null) { + messages.add("Error: Too many counties selected. Select exactly one first."); + } + result = -1; + } + if(runSpec.domain == ModelDomain.PROJECT) { + int count = 0; + + // Only 1 month at a time + count = runSpec.timeSpan.months.size(); + if(count < 1) { + if(messages != null) { + messages.add("Error: Select a month first."); + } + result = -1; + } else if(count > 1) { + if(messages != null) { + messages.add("Error: Too many months selected. Select exactly one first."); + } + result = -1; + } + + // Only 1 day at a time + count = runSpec.timeSpan.days.size(); + if(count < 1) { + if(messages != null) { + messages.add("Error: Select a day first."); + } + result = -1; + } else if(count > 1) { + if(messages != null) { + messages.add("Error: Too many days selected. Select exactly one first."); + } + result = -1; + } + + // Only 1 hour at a time + if(runSpec.timeSpan.beginHourID <= 0 || runSpec.timeSpan.endHourID <= 0) { + if(messages != null) { + messages.add("Error: Select an hour first."); + } + result = -1; + } else if(runSpec.timeSpan.beginHourID != runSpec.timeSpan.endHourID) { + if(messages != null) { + messages.add("Error: Too many hours selected. Select exactly one first."); + } + result = -1; + } + } + return result; + } + + /** + * Get a set of Integer objects from the database. + * @param db database holding the table to be scanned + * @param sql statement to get values. Only the first column is used and it + * must be an integer-compatible type. + * @return a set of Integer objects + * @throws Exception if anything goes wrong + **/ + public TreeSet getIntegers(Connection db, String sql) throws Exception { + TreeSet results = new TreeSet(); + Statement statement = null; + ResultSet rs = null; + try { + statement = db.createStatement(); + rs = SQLRunner.executeQuery(statement,sql); + while(rs.next()) { + Integer i = new Integer(rs.getInt(1)); + results.add(i); + } + return results; + } finally { + if(rs != null) { + try { + rs.close(); + } catch(Exception e) { + // Nothing to do here + } + rs = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql statement to get values. Only the first column is used and it + * must be an integer-compatible type. + * @param neededValues set of Integer objects defining all required values + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasIntegers(Connection db, String sql, TreeSet neededValues) + throws Exception { + return tableHasIntegers(db,sql,neededValues,null); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql statement to get values. Only the first column is used and it + * must be an integer-compatible type. + * @param neededValues set of Integer objects defining all required values + * @param alternateNeededValueSource optional SQL to obtain an alternate set of + * needed values. If this is provided and yields an empty set, the result is false, + * unlike the handling of normal needed values. + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasIntegers(Connection db, String sql, TreeSet neededValues, String alternateNeededValueSource) + throws Exception { + SQLRunner.Query query = new SQLRunner.Query(); + TreeSet neededValuesToUse = neededValues; + if(alternateNeededValueSource != null && alternateNeededValueSource.length() > 0) { + try { + query.open(db,alternateNeededValueSource); + neededValuesToUse = new TreeSet(); + while(query.rs.next()) { + Integer i = new Integer(query.rs.getInt(1)); + neededValuesToUse.add(i); + } + // If we got this far, the alternate source exists and we will reject anything that + // depends upon this empty alternate source. + if(neededValuesToUse.size() <= 0) { + return false; + } + } catch(Exception e) { + // This happens if the alternate source doesn't exist. + // If so, just continue on and use the neededValues like normal. + } finally { + query.onFinally(); + } + } + if(neededValues == neededValuesToUse) { + if(neededValues == null || neededValues.size() <= 0) { + return true; + } + } +//System.out.println("Searching for " + neededValuesToUse.size() + " items: " + sql); + TreeSet foundNeededValues = new TreeSet(); + try { + query.open(db,sql); + while(query.rs.next()) { + Integer i = new Integer(query.rs.getInt(1)); + if(neededValuesToUse.contains(i)) { + //System.out.println("Matched " + i); + foundNeededValues.add(i); + } else { + //System.out.println("Not matched " + i); + } + } + return neededValuesToUse.size() == foundNeededValues.size(); + } finally { + query.onFinally(); + } + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql statement to get values. Only the first column is used and it + * must be an integer-compatible type. + * @param neededValues set of Integer objects defining all required values + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasIntegerObjects(Connection db, String sql, TreeSet neededValues) + throws Exception { + if(neededValues == null || neededValues.size() <= 0) { + return true; + } +//System.out.println("Searching for " + neededValues.size() + " items: " + sql); + TreeSet foundNeededValues = new TreeSet(); + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + Integer i = new Integer(query.rs.getInt(1)); + if(neededValues.contains(i)) { + //System.out.println("Matched " + i); + foundNeededValues.add(i); + } else { + //System.out.println("Not matched " + i); + } + } + return neededValues.size() == foundNeededValues.size(); + } finally { + query.onFinally(); + } + } + + /** + * Build all needed caches for validation and wildcarding. + * @throws Exception if anything goes wrong + **/ + private void loadCaches() throws Exception { + if(hasCaches) { + return; + } + roadTypes = new TreeSet(); + nonOffNetworkRoadTypes = new TreeSet(); + for(Iterator i=runSpec.roadTypes.iterator();i.hasNext();) { + RoadType r = (RoadType)i.next(); + Integer ri = new Integer(r.roadTypeID); + roadTypes.add(ri); + if(r.roadTypeID != 1) { + nonOffNetworkRoadTypes.add(ri); + } + } + + sourceTypes = new TreeSet(); + fuelTypes = new TreeSet(); + for(Iterator i=runSpec.onRoadVehicleSelections.iterator(); + i.hasNext();) { + OnRoadVehicleSelection s = (OnRoadVehicleSelection)i.next(); + sourceTypes.add(new Integer(s.sourceTypeID)); + fuelTypes.add(new Integer(s.fuelTypeID)); + } + + counties = new TreeSet(); + String countyIDsText = "0"; + for(Iterator i=runSpec.geographicSelections.iterator();i.hasNext();) { + GeographicSelection g = (GeographicSelection)i.next(); + if(g.type == GeographicSelectionType.COUNTY) { + counties.add(new Integer(g.databaseKey)); + countyIDsText += "," + g.databaseKey; + } + } + + ages = new TreeSet(); + for(int i=0;i<=30;i++) { + ages.add(new Integer(i)); + } + + boolean isCustomDomain = runSpec.isCustomDomain(); + + Connection defaultDb = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + try { + String t = "0"; + for(Iterator i=sourceTypes.iterator();i.hasNext();) { + t += "," + i.next(); + } + hpmsVTypes = getIntegers(defaultDb, + "select distinct hpmsVTypeID from sourceUseType" + + " where sourceTypeID in (" + t + ")"); + + loadTimesInRunSpec(); + + if(isCustomDomain) { + zones = new TreeSet(); + zones.add(new Integer(runSpec.genericCounty.getCountyID()*10)); + } else { + zones = getIntegers(defaultDb,"select zoneID" + + " from zone" + + " where countyID in (" + countyIDsText + ")"); + } + + hasCaches = true; + } finally { + if(defaultDb != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,defaultDb); + defaultDb = null; + } + } + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasYears(Connection db, String sql) throws Exception { + return tableHasIntegerObjects(db,sql,runSpec.timeSpan.years); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasRoadTypes(Connection db, String sql) throws Exception { + if(roadTypes == null) { + loadCaches(); + } + return tableHasIntegers(db,sql,roadTypes); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasNonOffnetworkRoadTypes(Connection db, String sql) throws Exception { + if(nonOffNetworkRoadTypes == null) { + loadCaches(); + } + return tableHasIntegers(db,sql,nonOffNetworkRoadTypes); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasSourceTypes(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,sourceTypes); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasFuelTypes(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,fuelTypes); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasCounties(Connection db, String sql) + throws Exception { + if(counties != null) { + loadCaches(); + } + return tableHasIntegers(db,sql,counties); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasZones(Connection db, String sql) + throws Exception { + if(zones == null) { + loadCaches(); + } + return tableHasIntegers(db,sql,zones,"select zoneID from Zone"); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasAges(Connection db, String sql) + throws Exception { + if(counties != null) { + loadCaches(); + } + return tableHasIntegers(db,sql,ages); + } + + /** + * Build the cache of time-related IDs for the items in the RunSpec. + * @throws Exception if anything goes wrong + **/ + private void loadTimesInRunSpec() throws Exception { + if(!TimeSpan.isLoaded()) { + TimeSpan.loadTimeObjects(); + } + if(hours != null && days != null && hourDays != null) { + return; + } + int i; + Integer v; + TreeSet t; + Connection defaultDb = + DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.DEFAULT); + try { + String daysText = "0"; + days = new TreeSet(); + for(Iterator ti=runSpec.timeSpan.days.iterator();ti.hasNext();) { + TimeSpan.Day d = (TimeSpan.Day)ti.next(); + days.add(new Integer(d.dayID)); + daysText += "," + d.dayID; + } + + String hoursText = "0"; + hours = new TreeSet(); + for(Iterator ti=TimeSpan.allHours.iterator();ti.hasNext();) { + TimeSpan.Hour h = (TimeSpan.Hour)ti.next(); + if(runSpec.timeSpan.beginHourID <= h.hourID + && runSpec.timeSpan.endHourID >= h.hourID) { + hours.add(new Integer(h.hourID)); + hoursText += "," + h.hourID; + } + } + + hourDays = getIntegers(defaultDb,"select hourDayID" + + " from hourDay" + + " where hourID in (" + hoursText + ")" + + " and dayID in (" + daysText + ")"); + + if(days.contains(new Integer(2))) { + day2HourDayIDs = getIntegers(defaultDb,"select hourDayID" + + " from hourDay" + + " where hourID in (" + hoursText + ")" + + " and dayID=2"); + } else { + day2HourDayIDs = new TreeSet(); + } + if(days.contains(new Integer(5))) { + day5HourDayIDs = getIntegers(defaultDb,"select hourDayID" + + " from hourDay" + + " where hourID in (" + hoursText + ")" + + " and dayID=5"); + } else { + day5HourDayIDs = new TreeSet(); + } + + months = new TreeSet(); + for(Iterator ti=runSpec.timeSpan.months.iterator();ti.hasNext();) { + TimeSpan.Month m = (TimeSpan.Month)ti.next(); + months.add(new Integer(m.monthID)); + } + } finally { + if(defaultDb != null) { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.DEFAULT,defaultDb); + defaultDb = null; + } + } + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasHours(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,hours); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasDays(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,days); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasHourDays(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,hourDays); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasMonths(Connection db, String sql) + throws Exception { + if(!hasCaches) { + loadCaches(); + } + return tableHasIntegers(db,sql,months); + } + + /** + * Check a table for presence of all needed values. + * @param db database holding the table to be scanned + * @param sql query returning all values in the database + * @return true if all neededValues are present, even if other values are present + * in the database. + * @throws Exception if anything goes wrong + **/ + public boolean tableHasHPMSVTypes(Connection db, String sql) + throws Exception { + if(hpmsVTypes == null) { + loadCaches(); + } + return tableHasIntegers(db,sql,hpmsVTypes); + } + + /** True if all cached IDs from the RunSpec have been created **/ + boolean hasCaches = false; + /** IDs from the active RunSpec **/ + TreeSet roadTypes = null; + /** IDs, except road type 1, from the active RunSpec **/ + TreeSet nonOffNetworkRoadTypes = null; + /** IDs from the active RunSpec **/ + TreeSet sourceTypes = null; + /** IDs from the active RunSpec **/ + TreeSet fuelTypes = null; + /** IDs from the active RunSpec **/ + TreeSet counties = null; + /** IDs from the active RunSpec **/ + TreeSet zones = null; + /** IDs from the active RunSpec **/ + TreeSet ages = null; + /** IDs from the active RunSpec **/ + TreeSet hours = null; + /** IDs from the active RunSpec **/ + TreeSet days = null; + /** IDs from the active RunSpec **/ + TreeSet hourDays = null; + /** hourDayIDs from day 2 (Weekend) in the active RunSpec **/ + TreeSet day2HourDayIDs = null; + /** hourDayIDs from day 5 (Weekday) in the active RunSpec **/ + TreeSet day5HourDayIDs = null; + /** IDs from the active RunSpec **/ + TreeSet months = null; + /** IDs from the active RunSpec **/ + TreeSet hpmsVTypes = null; + + /** + * Check a database for suitability as a county domain data source for a given + * RunSpec. A database without county/year information may be tolerated depending + * upon the isForRun parameter. + * @param runSpec the target RunSpec for which compatibility is desired + * @param messages list of String objects, filled with reasons why the database is + * incompatible. If null, no reasons will be supplied. + * @param db Connection to the database to be examined + * @param isForRun true if the database is being used without further user involvement. + * Such databases do not tolerate empty county/year information, but on while on the GUI + * they will since an import operation will fill them correctly. + * @return -1 if a county database that does not match the county/year in the RunSpec. + * This includes databases with multiple counties, multiple years, or having a county or year + * that does not include the one in the RunSpec. 0 if the database is acceptable but still + * incomplete. +1 if the database is acceptable and complete. + **/ + public static int isCountyDomainDatabase(RunSpec runSpec, ArrayList messages, + Connection db, boolean isForRun) { + if(runSpec.timeSpan.years.size() == 0) { + if(messages != null) { + messages.add("Error: You should select the calendar year in the Time panel before selecting a County Domain database."); + } + return -1; + }else + if(runSpec.timeSpan.years.size() > 1) { + if(messages != null) { + messages.add("Error: You should select only one calendar year in the Time panel before selecting a County Domain database."); + } + return -1; + } + int year = ((Integer)runSpec.timeSpan.years.first()).intValue(); + int countyID = -1; + if(runSpec.geographicSelections.size() == 1) { + GeographicSelection g = (GeographicSelection)runSpec.geographicSelections.first(); + if(g.type == GeographicSelectionType.COUNTY) { + countyID = g.databaseKey; + } + } + if(countyID < 0) { + if(messages != null) { + messages.add("Error: RunSpec does not specify exactly one county."); + } + return -1; + } + String sql = ""; + try { + // The County table must be empty or have only the desired County. + sql = "select count(*) from County"; + int countyCount = 0; + try { + countyCount = (int)SQLRunner.executeScalar(db,sql); + if(countyCount > 1) { + if(messages != null) { + messages.add("Error: The database has more than one county."); + } + return -1; + } else if(countyCount == 1) { + sql = "select count(*) from County where countyID=" + countyID; + countyCount = (int)SQLRunner.executeScalar(db,sql); + if(countyCount != 1) { + if(messages != null) { + messages.add("Error: The database already has another county."); + } + return -1; + } + } + } catch(Exception e) { + // An error here indicates the lack of the County table. + // Treat this as if the County doesn't exist in the database. + countyCount = 0; + } + if(countyCount == 0) { + if(isForRun) { + if(messages != null) { + messages.add("Error: The database does not have the required county."); + } + return -1; + } + } + if(countyCount == 1) { + // The county exists, so check supporting tables. + // The other geography tables are filled based on the County and a simple + // join to ensure State->County->Zone->ZoneRoadType exist will suffice. + sql = "select count(*)" + + " from state s" + + " inner join county c on c.stateID=s.stateID" + + " inner join zone z on z.countyID=c.countyID"; + if(!runSpec.isCustomDomain()) { + sql += " inner join zoneRoadType zrt on zrt.zoneID=z.zoneID"; + } + sql += " where c.countyID=" + countyID; + int supportingCount = (int)SQLRunner.executeScalar(db,sql); + if(supportingCount < 1) { // 1 or more is required + if(messages != null) { + messages.add("Error: Core geography tables are lacking data."); + } + return -1; + } + } + // The Year table must be empty or have only the desired Year. + sql = "select count(*) from Year"; + int yearCount = 0; + try { + yearCount = (int)SQLRunner.executeScalar(db,sql); + if(yearCount > 1) { + if(messages != null) { + messages.add("Error: The database has more than one year."); + } + return -1; + } else if(yearCount == 1) { + sql = "select count(*) from Year where yearID=" + year; + yearCount = (int)SQLRunner.executeScalar(db,sql); + if(yearCount != 1) { + if(messages != null) { + messages.add("Error: The database already has another year."); + } + return -1; + } + } + } catch(Exception e) { + // An error here indicates the lack of the Year table. + // Treat this as if the Year doesn't exist in the database. + yearCount = 0; + } + if(yearCount == 0) { + if(isForRun) { + if(messages != null) { + messages.add("Error: The database does not have the required year."); + } + return -1; + } + } + if(yearCount == 0) { + if(messages != null) { + messages.add("Warning: Perform an Import to set the database Year entry."); + } + } + if(countyCount == 0) { + if(messages != null) { + messages.add("Warning: Perform an Import to set the database County entry."); + } + } + return (countyCount == 1 && yearCount == 1)? +1 : 0; + } catch(SQLException e) { + Logger.logSqlError(e,"Unable to check for domain data",sql); + if(messages != null) { + messages.add("Error: Unable to check for domain data"); + } + return -1; + } + } + + /** + * Inform a reader of wildcard possibilities, if they exist for a given column. + * @param sqlColumnName name of the column in the database that will receive the data + * @param reader reader to be configured + * @param fileColumnIndex index within the reader's row + **/ + public void setupWildcards(String sqlColumnName, CellFileReader reader, int fileColumnIndex) { + if(!hasCaches) { + try { + loadCaches(); + } catch(Exception e) { + Logger.logError(e,"Unable to setup wildcards"); + return; + } + } + if(sqlColumnName.equalsIgnoreCase("dayID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",days); + } else if(sqlColumnName.equalsIgnoreCase("hourID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",hours); + } else if(sqlColumnName.equalsIgnoreCase("hourDayID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",hourDays); + + reader.addWildcardDefinition(fileColumnIndex,"ALL Weekday",day5HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"ALL 5",day5HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"5*",day5HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"*5",day5HourDayIDs); + + reader.addWildcardDefinition(fileColumnIndex,"ALL Weekend",day2HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"ALL 2",day2HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"2*",day2HourDayIDs); + reader.addWildcardDefinition(fileColumnIndex,"*2",day2HourDayIDs); + } else if(sqlColumnName.equalsIgnoreCase("monthID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",months); + } else if(sqlColumnName.equalsIgnoreCase("yearID")) { + TreeSet yearObjects = new TreeSet(); + for(Iterator i=runSpec.timeSpan.years.iterator();i.hasNext();) { + yearObjects.add((Object)i.next()); + } + reader.addWildcardDefinition(fileColumnIndex,"ALL",yearObjects); + } else if(sqlColumnName.equalsIgnoreCase("roadTypeID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",roadTypes); + } else if(sqlColumnName.equalsIgnoreCase("sourceTypeID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",sourceTypes); + } else if(sqlColumnName.equalsIgnoreCase("hpmsVTypeID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",hpmsVTypes); + } else if(sqlColumnName.equalsIgnoreCase("countyID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",counties); + } else if(sqlColumnName.equalsIgnoreCase("zoneID")) { + reader.addWildcardDefinition(fileColumnIndex,"ALL",zones); + } + } + + /** + * Examine the set of years in the current filter and check for leap year status. + * @return true if there is exactly one filtered year and it is a leap year + **/ + public boolean isLeapYear() { + if(runSpec.timeSpan.years.size() == 1) { + for(Iterator i=runSpec.timeSpan.years.iterator();i.hasNext();) { + int y = i.next().intValue(); + if((y%4) == 0 && ((y%100) != 0 || (y%400)==0)) { + return true; + } + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/master/framework/importers/ImporterTabBase.java b/gov/epa/otaq/moves/master/framework/importers/ImporterTabBase.java new file mode 100644 index 0000000..45f419d --- /dev/null +++ b/gov/epa/otaq/moves/master/framework/importers/ImporterTabBase.java @@ -0,0 +1,555 @@ +/************************************************************************************************** + * @(#)ImporterTabBase.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.framework.importers; + +import java.io.*; +import java.util.*; +import java.sql.*; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.MOVESDatabaseType; + +/** + * Panel for importers that require a description, a list of messages, and one + * or more IImporterPart objects. + * + * @author Wes Faler + * @author William Aikman + * @version 2015-09-15 +**/ +public class ImporterTabBase implements IImporterPanel, FocusListener, ActionListener, + TableFileLinkagePart.IMessageHandler { + /** the importer that owns this panel **/ + IImporter importer; + /** provider and storage for the data managed by this panel **/ + IImporterTabBaseProvider importerDataSource; + /** title in the ImporterGUI **/ + String title; + /** Panel holding the controls **/ + JPanel panel; + /** Scrolling area for the description **/ + JScrollPane descriptionScrollPane; + /** Edit area for the description **/ + JTextArea descriptionTextArea; + /** Scrolling area for the importer parts **/ + JScrollPane dataSourcesScrollPane; + /** Panel holding the importer parts' panels **/ + JPanel dataSourcesPanel; + /** Button for importing data **/ + JButton importButton; + /** Button for exporting data from the user database **/ + JButton exportImportedDataButton; + /** Button for exporting data from the default database **/ + JButton exportDefaultDataButton; + /** Button for exporting data from the execution database **/ + JButton exportExecutionDataButton; + /** Button for clearing all data **/ +// JButton clearDataButton; + /** Scrolling are for messages **/ + JScrollPane messagesScrollPane; + /** DefaultListModel for messageList **/ + DefaultListModel messageListModel; + /** List of messages **/ + JList messagesList; + /** Description before updates **/ + String previousDescription = ""; + /** Optional custom button **/ + JButton customButton = null; + + /** + * Constructor + * @param importerToUse the importer that owns this panel + * @param titleToUse title in the ImporterGUI + * @param importerDataSourceToUse provider and storage for the data managed by this panel + **/ + public ImporterTabBase(IImporter importerToUse, String titleToUse, + IImporterTabBaseProvider importerDataSourceToUse) { + importer = importerToUse; + title = titleToUse; + importerDataSource = importerDataSourceToUse; + + createControls(); + populateControls(); + } + + /** + * Get the actual JPanel to be shown + * @return the JPanel that reprents this importer + **/ + public JPanel getPanel() { + return panel; + } + + /** + * Get the IImporter that owns the panel. + * @return the IImporter that owns the panel + **/ + public IImporter getImporter() { + return importer; + } + + /** + * Get the text that titles the panel. + * @return the text that titles the panel + **/ + public String getTitle() { + return title; + } + + /** Create and arrange the controls of this panel **/ + void createControls() { + JLabel label1; + JLabel label2; + + messageListModel = new DefaultListModel(); + + panel = new JPanel(); + label1 = new JLabel(); + descriptionScrollPane = new JScrollPane(); + descriptionTextArea = new JTextArea(); + dataSourcesScrollPane = new JScrollPane(); + dataSourcesPanel = new JPanel(); + + importButton = new JButton(); + ToolTipHelper.add(importButton,"Read and import the file now"); + + exportImportedDataButton = new JButton(); + ToolTipHelper.add(exportImportedDataButton,"Export previously imported data"); + + exportDefaultDataButton = new JButton(); + ToolTipHelper.add(exportDefaultDataButton,"Export national-level default data"); + + exportExecutionDataButton = new JButton(); + ToolTipHelper.add(exportExecutionDataButton,"Export recently used data"); + +// clearDataButton = new JButton(); +// ToolTipHelper.add(clearDataButton,"Remove previously imported data"); + + String customButtonName = importerDataSource.getCustomButtonName(); + if(customButtonName != null) { + customButton = new JButton(customButtonName); + ToolTipHelper.add(customButton,customButtonName); + customButton.addActionListener(this); + } + + label2 = new JLabel(); + messagesScrollPane = new JScrollPane(); + messagesList = new JListWithToolTips(messageListModel); + + descriptionTextArea.addFocusListener(this); + importButton.addActionListener(this); + exportImportedDataButton.addActionListener(this); + exportDefaultDataButton.addActionListener(this); + exportExecutionDataButton.addActionListener(this); +// clearDataButton.addActionListener(this); + + //======== panel ======== + { + panel.setLayout(new GridBagLayout()); + ((GridBagLayout)panel.getLayout()).columnWidths = new int[] {0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)panel.getLayout()).rowHeights = new int[] {0, 75, 0, 0, 0, 0, 0}; + ((GridBagLayout)panel.getLayout()).columnWeights = new double[] {0.0, 3.0, 0.0, 0.0, 0.0, 1.0, 1.0E-4}; + ((GridBagLayout)panel.getLayout()).rowWeights = new double[] {0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0E-4}; + + //---- label1 ---- + label1.setText("Description of Imported Data:"); + panel.add(label1, new GridBagConstraints(0, 0, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== descriptionScrollPane ======== + { + descriptionScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); + + //---- descriptionTextArea ---- + descriptionTextArea.setWrapStyleWord(true); + descriptionScrollPane.setViewportView(descriptionTextArea); + } + if(customButton != null) { + panel.add(descriptionScrollPane, new GridBagConstraints(0, 1, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + panel.add(customButton, new GridBagConstraints(5, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } else { + panel.add(descriptionScrollPane, new GridBagConstraints(0, 1, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + + //======== dataSourcesScrollPane ======== + { + dataSourcesScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); + + //======== dataSourcesPanel ======== + { + dataSourcesPanel.setLayout(new BoxLayout(dataSourcesPanel, BoxLayout.Y_AXIS)); + } + dataSourcesScrollPane.setViewportView(dataSourcesPanel); + } + panel.add(dataSourcesScrollPane, new GridBagConstraints(0, 2, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- importButton ---- + importButton.setText("Import"); + panel.add(importButton, new GridBagConstraints(5, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label2 ---- + label2.setText("Messages:"); + panel.add(label2, new GridBagConstraints(0, 4, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== messagesScrollPane ======== + { + //---- messagesList ---- + messagesList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + messagesList.setVisibleRowCount(5); + messagesScrollPane.setViewportView(messagesList); + } + panel.add(messagesScrollPane, new GridBagConstraints(0, 5, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + if(!importerDataSource.isSubjectToExportRestrictions() + || CompilationFlags.ENABLE_EXPORT_DEFAULT_DATA) { + if(importerDataSource.allowDefaultDataExport() + && (!importer.getImporterManager().isCustomDomain() || importerDataSource.allowCustomDomainDefaultDataExport())) { + //---- exportDefaultDataButton ---- + exportDefaultDataButton.setText("Export Default Data"); + panel.add(exportDefaultDataButton, new GridBagConstraints(0, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + } + } +/* + if(!importer.getImporterManager().isCustomDomain()) { + if(!importerDataSource.isSubjectToExportRestrictions() + || CompilationFlags.ENABLE_EXPORT_DEFAULT_DATA) { + if(importerDataSource.allowDefaultDataExport()) { + //---- exportDefaultDataButton ---- + exportDefaultDataButton.setText("Export Default Data"); + panel.add(exportDefaultDataButton, new GridBagConstraints(0, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + } + } + } +*/ + if(!importerDataSource.isSubjectToExportRestrictions() + || CompilationFlags.ENABLE_EXPORT_DEFAULT_DATA) { + if(importerDataSource.allowExecutionDataExport()) { + //---- exportExecutionDataButton ---- + exportExecutionDataButton.setText("Export Most Recent Execution Data"); + panel.add(exportExecutionDataButton, new GridBagConstraints(1, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + } + } + + //---- exportImportedDataButton ---- + exportImportedDataButton.setText("Export Imported Data"); + panel.add(exportImportedDataButton, new GridBagConstraints(2, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + +/* + //---- clearDataButton ---- + clearDataButton.setText("Clear Imported Data"); + panel.add(clearDataButton, new GridBagConstraints(3, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); +*/ + } + + ArrayList parts = importerDataSource.getParts(); + if(parts != null) { + for(int i=0;i 0) { + dataSourcesPanel.add(new JSeparator(JSeparator.HORIZONTAL)); + } + IImporterPart part = (IImporterPart)parts.get(i); + if(part instanceof TableFileLinkagePart) { + ((TableFileLinkagePart)part).messageHandler = this; + } + JPanel p = part.getPanel(); + if(p != null) { + dataSourcesPanel.add(p); + } + } + } + } + + /** Fill the controls on this panel with data **/ + void populateControls() { + String description = importerDataSource.getDescription(); + if(description == null) { + description = ""; + } + descriptionTextArea.setText(description); + + //Logger.log(LogMessageCategory.DEBUG,"ImporterTabBase.populateControls part.populateControls..."); + ArrayList parts = importerDataSource.getParts(); + if(parts != null) { + for(int i=0;i otherManagedTables = new TreeSet(); + + /** Full name and path of the file to be used **/ + public String fileName = ""; + /** Type of the file to be used, not stored in XML just used for display **/ + public String fileType = ""; + /** Section of the file to be used **/ + public String worksheetName = ""; + + /** True if only a single table can be selected, false when the user must tell us the table **/ + public boolean isSingleTable = true; + + /** List box for table names **/ + ExtendedComboBox tableNamesCombo; + + /** flag allowing display of a checkbox to intentionally suppress data **/ + boolean displayNoDataNeededCheckBox = false; + /** Optional checkbox for intentionally not loading data **/ + JCheckBox noDataNeededCheckBox; + /** Text to be used for noDataNeededCheckBox **/ + String noDataNeededText = "Data is not needed"; + + /** + * Constructor + * @param importerToUse IImporter for this object + * @param providerToUse Data provider and event handler for this object + **/ + public TableFileLinkagePart(IImporter importerToUse, IProvider providerToUse) { + importer = importerToUse; + provider = providerToUse; + tableName = provider.getTableName(); + + createControls(); + } + + /** + * Constructor + * @param importerToUse IImporter for this object + * @param providerToUse Data provider and event handler for this object + * @param tableProviderToUse Data provider for table sets + **/ + public TableFileLinkagePart(IImporter importerToUse, IProvider providerToUse, ITableProvider tableProviderToUse) { + this(importerToUse,providerToUse,tableProviderToUse,false,null); + } + + /** + * Constructor + * @param importerToUse IImporter for this object + * @param providerToUse Data provider and event handler for this object + * @param tableProviderToUse Data provider for table sets + * @param displayNoDataNeededCheckBoxToUse flag allowing display of a checkbox to intentionally suppress data + * @param noDataNeededTextToUse Text to be used for noDataNeededCheckBox + **/ + public TableFileLinkagePart(IImporter importerToUse, IProvider providerToUse, ITableProvider tableProviderToUse, + boolean displayNoDataNeededCheckBoxToUse, String noDataNeededTextToUse) { + importer = importerToUse; + provider = providerToUse; + tableProvider = tableProviderToUse; + + tableName = provider.getTableName(); + + displayNoDataNeededCheckBox = displayNoDataNeededCheckBoxToUse; + if(displayNoDataNeededCheckBox && noDataNeededTextToUse != null) { + noDataNeededText = noDataNeededTextToUse; + } + + if(tableProvider != null) { + if(tableName == null) { + isSingleTable = false; + } + } + + createControls(); + if(!isSingleTable) { + String firstTableName = (String)tableProvider.getTableNames().first(); + tableNamesCombo.setSelectedItem(firstTableName); + updateTableName(); + } + } + + /** + * Get the actual JPanel to be shown + * @return the JPanel that reprents one portion of the importer + **/ + public JPanel getPanel() { + return this; + } + + /** + * Push data from the importer to controls returned by getPanel(). + **/ + public void populateControls() { + determineFileType(); + if(fileNameLabel == null || fileTypeAndTabLabel == null) { + return; + } + if(fileName.length() > 0) { + File f = new File(fileName); + fileNameLabel.setText(f.getName()); + if(worksheetName.length() > 0) { + fileTypeAndTabLabel.setText(fileType + ", " + worksheetName); + } else { + fileTypeAndTabLabel.setText(fileType); + } + } else { + fileNameLabel.setText("(please select a file)"); + fileTypeAndTabLabel.setText(""); + } + } + + /** Create and arrange the controls for this panel **/ + void createControls() { + JLabel label1 = new JLabel(); + JLabel label2 = new JLabel(); + fileNameLabel = new JLabel(); + browseButton = new JButton(); + fileTypeAndTabLabel = new JLabel(); + createTemplateButton = new JButton(); + noDataNeededCheckBox = new JCheckBox(noDataNeededText); + + browseButton.addActionListener(this); + createTemplateButton.addActionListener(this); + + clearDataButton = new JButton(); + ToolTipHelper.add(clearDataButton,"Remove previously imported data"); + clearDataButton.addActionListener(this); + + //======== this ======== + setLayout(new GridBagLayout()); + ((GridBagLayout)getLayout()).columnWidths = new int[] {0, 0, 34, 0, 0}; + ((GridBagLayout)getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)getLayout()).columnWeights = new double[] {0.0, 1.0, 0.0, 0.0, 1.0E-4}; + ((GridBagLayout)getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + //---- label1 ---- + if(isSingleTable) { + label1.setText(tableName + " Data Source:"); + add(label1, new GridBagConstraints(0, 0, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } else { + // Create and display a lable for table name and an extended combo box offering the set of tables + tableNamesCombo = new ExtendedComboBox(); + tableNamesCombo.setName("tableNamesCombo"); + tableNamesCombo.addActionListener(this); + tableNamesCombo.setEditable(false); + tableNamesCombo.setSelectedIndex(-1); + ToolTipHelper.add(tableNamesCombo, "Select a table name"); + + TreeSetIgnoreCase tableNames=tableProvider.getTableNames(); + + for( Iterator i=tableNames.iterator(); i.hasNext(); ){ + String name=(String)i.next(); + tableNamesCombo.addItem(name); + } + + JPanel oneLine = new JPanel(); + oneLine.setLayout(new BoxLayout(oneLine,BoxLayout.X_AXIS)); + oneLine.add(new JLabel("Table: ")); + oneLine.add(tableNamesCombo); + oneLine.add(Box.createHorizontalGlue()); + + add(oneLine, new GridBagConstraints(0, 0, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + + //---- label2 ---- + label2.setText("File:"); + add(label2, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- fileNameLabel ---- + fileNameLabel.setText("(please select a file)"); + add(fileNameLabel, new GridBagConstraints(1, 1, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- noDataNeededCheckBox ---- + if(displayNoDataNeededCheckBox) { + noDataNeededCheckBox.addActionListener(this); + ToolTipHelper.add(noDataNeededCheckBox,"No data is imported because none is needed"); + add(noDataNeededCheckBox, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + //---- browseButton ---- + browseButton.setText("Browse..."); + ToolTipHelper.add(browseButton,"Select a file (.xls, .txt, .csv) containing data to import"); + add(browseButton, new GridBagConstraints(4, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- fileTypeAndTabLabel ---- + fileTypeAndTabLabel.setText(""); + add(fileTypeAndTabLabel, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- clearDataButton ---- + clearDataButton.setText("Clear Imported Data"); + add(clearDataButton, new GridBagConstraints(2, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + //---- createTemplateButton ---- + createTemplateButton.setText("Create Template..."); + ToolTipHelper.add(createTemplateButton,"Create a template a file (.xls, .txt, .csv) to be filled and then imported."); + add(createTemplateButton, new GridBagConstraints(3, 2, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == browseButton) { + updateTableName(); + if(tableName == null) { + // Ask the user to select a table first + JOptionPane.showMessageDialog(null, + "Please select a table first.", + "Table Needed", JOptionPane.ERROR_MESSAGE); + return; + } else { + handleBrowseButton(); + } + } else if(e.getSource() == createTemplateButton) { + updateTableName(); + if(tableName == null) { + // Ask the user to select a table first + JOptionPane.showMessageDialog(null, + "Please select a table first.", + "Table Needed", JOptionPane.ERROR_MESSAGE); + return; + } else { + handleCreateTemplateButton(); + } + } else if(e.getSource() == clearDataButton) { + updateTableName(); + if(tableName == null) { + // Ask the user to select a table first + JOptionPane.showMessageDialog(null, + "Please select a table first.", + "Table Needed", JOptionPane.ERROR_MESSAGE); + return; + } else { + handleClearDataButton(false); + } + } else if(e.getSource() == noDataNeededCheckBox) { + updateTableName(); + handleNoDataNeededCheckBox(); + } else if(tableNamesCombo != null && e.getSource() == tableNamesCombo) { + updateTableName(); + } + } + + /** Updates tableName internally, notifying tableProvider if it has changed **/ + void updateTableName() { + if(tableNamesCombo == null || tableProvider == null) { + return; + } + String oldTableName = tableName; + tableName = (String)tableNamesCombo.getSelectedItem(); + if(tableName != null) { + if(oldTableName == null || !oldTableName.equals(tableName)) { + tableProvider.onTableNameChanged(tableName); + } + } + } + + /** Handle a toggle of the noDataNeededCheckBox button **/ + void handleNoDataNeededCheckBox() { + if(!displayNoDataNeededCheckBox || noDataNeededCheckBox == null) { + return; + } + boolean enabledFlag = !noDataNeededCheckBox.isSelected(); + fileNameLabel.setEnabled(enabledFlag); + browseButton.setEnabled(enabledFlag); + fileTypeAndTabLabel.setEnabled(enabledFlag); + + if(noDataNeededCheckBox.isSelected()) { + // Silently try to clear data + handleClearDataButton(true); + // Insert Ignore the flag into the audit log + alterNoDataNeededAuditEntry(+1); + } else { + // Remove flag from the audit log + alterNoDataNeededAuditEntry(-1); + } + + importer.getImporterManager().createGUI(null).refreshDomainStatusIcons(); + } + + /** + * Obtain the status of the noDataNeeded checkbox. + * @return true if the user has indicated that no data is needed. + **/ + public boolean isNoDataNeeded() { + return displayNoDataNeededCheckBox && noDataNeededCheckBox.isSelected(); + } + + /** Handle the Browse button action **/ + void handleBrowseButton() { + boolean keepOriginal = true; + String originalFileName = fileName; + String originalFileType = fileType; + String originalWorksheetName = worksheetName; + + try { + Component parent = getParent(); + while(parent != null && !(parent instanceof JFrame)) { + parent = parent.getParent(); + } + FileDialog fd = new FileDialog((JFrame)parent, + "Open " + tableName + " Data", FileDialog.LOAD); + fd.setVisible(true); //fd.show(); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + if(!file.exists()) { + return; + } + worksheetName = ""; + fileName = file.getCanonicalPath(); + determineFileType(); + // If an XLS is selected, prompt for the worksheet name within + if(fileType.equalsIgnoreCase("XLS")) { + // Microsoft Excel-format file, so prompt the user to select a worksheet + XLSReader xls = new XLSReader(); + try { + ArrayList worksheets = xls.getSheets(file); + if(worksheets.size() == 1) { + worksheetName = (String)worksheets.get(0); + keepOriginal = false; + } else { + // Prompt the user to select a worksheet then fill + // strategy.dataSourceWorksheetName. If the user cancels the worksheet + // selection, stop the import operation + WorksheetChooserDialog dlg = + new WorksheetChooserDialog((JFrame)parent,worksheets); + // simple offset from main window origin + dlg.setLocation(getLocationOnScreen().x + 50, getLocationOnScreen().y + 50); + dlg.showModal(); + if(dlg.selectedWorksheetName != null + && dlg.selectedWorksheetName.length() > 0) { + worksheetName = dlg.selectedWorksheetName; + keepOriginal = false; + } + } + } catch(Exception e) { + Logger.logError(e,"Unable to choose worksheet within XLS file"); + return; + } + } else { + keepOriginal = false; + } + } catch(IOException e) { + // Nothing to do here + } finally { + if(keepOriginal) { + fileName = originalFileName; + fileType = originalFileType; + worksheetName = originalWorksheetName; + } + determineFileType(); + if(!keepOriginal) { + populateControls(); + } + } + } + + /** Handle the Create Template button action **/ + void handleCreateTemplateButton() { + Component parent = getParent(); + while(parent != null && !(parent instanceof Frame)) { + parent = parent.getParent(); + } + FileDialog fd = new FileDialog((JFrame)parent, + "Create " + tableName + " Template", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + + if(!provider.createTemplate(file)) { + JOptionPane.showMessageDialog(null, + "Unable to create the template.", + "Importer", JOptionPane.ERROR_MESSAGE); + } + } + + /** + * Generate XML describing this part. + * @return XML + **/ + public String toXML() { + if(!isVisible()) { + return ""; + } + String prefix = "\t\t\t\t"; + String xml = ""; + if(isSingleTable) { + xml = prefix + "<" + tableName + ">\r\n"; + } else { + xml = prefix + "\r\n"; + xml += prefix + "\t" + tableName + "\r\n"; + } + xml += prefix + "\t" + fileName + "\r\n"; + if(worksheetName != null && worksheetName.length() > 0 + && fileType.equalsIgnoreCase("XLS")) { + xml += prefix + "\t
    " + worksheetName + "
    \r\n"; + } + if(isSingleTable) { + xml += prefix + "\r\n"; + } else { + xml += prefix + "
    \r\n"; + } + return xml; + } + + /** + * Setup the part from XML previously created by toXML(). + * @param node XML node to be read + * @return true if the node was processed successfully, false if the node was + * not processed or not recognized. + **/ + public boolean fromXML(Node node) { + if(isSingleTable) { + if(!node.getNodeName().equalsIgnoreCase(tableName)) { + return false; + } + } else { + if(!node.getNodeName().equalsIgnoreCase("anytable")) { + return false; + } + } + fileName = ""; + fileType = ""; + worksheetName = ""; + for(Node i=node.getFirstChild(); i != null; i = i.getNextSibling()) { + if(i.getNodeName().equalsIgnoreCase("filename")) { + Node childNode = i.getFirstChild(); + for(Node child = i.getFirstChild(); child != null; + child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE) { + fileName = StringUtilities.safeGetString(childNode.getNodeValue()); + break; + } + } + continue; + } + if(i.getNodeName().equalsIgnoreCase("section")) { + Node childNode = i.getFirstChild(); + for(Node child = i.getFirstChild(); child != null; + child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE) { + worksheetName = StringUtilities.safeGetString(childNode.getNodeValue()); + break; + } + } + continue; + } + if(!isSingleTable && i.getNodeName().equalsIgnoreCase("tablename")) { + Node childNode = i.getFirstChild(); + for(Node child = i.getFirstChild(); child != null; + child = child.getNextSibling()) { + if(child.getNodeType() == Node.TEXT_NODE) { + tableName = StringUtilities.safeGetString(childNode.getNodeValue()); + tableProvider.onTableNameChanged(tableName); + break; + } + } + continue; + } + } + determineFileType(); + return true; + } + + /** Setup fileType and worksheetName based on fileName. **/ + void determineFileType() { + fileName = StringUtilities.safeGetString(fileName); + int typeCode = CellFile.getFileType(fileName); + switch(typeCode) { + case CellFile.XLS: + case CellFile.XLSX: + fileType = "XLS"; + break; + case CellFile.CSV: + fileType = "CSV"; + worksheetName = ""; + break; + default: + case CellFile.TABBED_TEXT: + fileType = "Tabbed Text"; + worksheetName = ""; + break; + } + } + + /** + * Handle the Clear Data button action + * @param beSilent true to supress prompts + **/ + void handleClearDataButton(boolean beSilent) { + // Complain if there is no database selected + if(!importer.getImporterManager().database.hasDatabase()) { + if(!beSilent) { + JOptionPane.showMessageDialog(null, + "Please select a database first.", + "Database Needed", JOptionPane.ERROR_MESSAGE); + } + return; + } + // Prompt for confirmation + if(!beSilent) { + int choice = JOptionPane.showConfirmDialog(null, + "Are you sure you want to clear the data? ", + "",JOptionPane.YES_NO_OPTION); + if(choice != JOptionPane.YES_OPTION) { + return; + } + } + + Connection db = importer.getImporterManager().openDatabase(); + if(db == null) { + return; + } + importer.getImporterManager().activeDb = db; + boolean success = false; + boolean tableDoesExist = false; + String sql = ""; + try { + sql = "truncate table " + tableName; + SQLRunner.executeSQL(db,sql); + success = true; + tableDoesExist = true; + // Clear the log associated with the importer and table + importer.getImporterManager().deleteLog(importer,tableName); + } catch(Exception e) { + if(e.getMessage().indexOf("exist") > 0) { + // tableName may not exist, it may never have been created/filled, so tolerate its absense. + success = true; + tableDoesExist = false; + } else { + Logger.logError(e,"Unable to clear importer data for table " + tableName); + } + } + + for(Iterator i=otherManagedTables.iterator();i.hasNext();) { + sql = "truncate table " + i.next(); + try { + SQLRunner.executeSQL(db,sql); + } catch(Exception e) { + // Nothing to do here as the supporting tables may not exist. + } + } + + // Tell the supporting GUI to refresh its log display + if(success && tableDoesExist) { + importer.getImporterManager().createGUI(null).loadLog(db); + importer.getImporterManager().createGUI(null).refreshDomainStatusIcons(); + } + importer.getImporterManager().activeDb = null; + DatabaseUtilities.closeConnection(db); + db = null; + + if(messageHandler != null) { + if(success) { + if(tableDoesExist) { + messageHandler.addMessageLine("Data cleared for " + tableName); + } else { + if(!beSilent) { + messageHandler.addMessageLine("Table " + tableName + " is clear because it has never been imported"); + } + } + } else { + messageHandler.addMessageLine("Error clearing data for " + tableName); + } + } + } + + /** Remove audit entry related to the no data needed checkbox **/ + void removeNoDataNeededAuditEntry() { + // TODO + } + + /** Add audit entry for the no data needed checkbox **/ + void addNoDataNeededAuditEntry() { + // TODO + } + + /** + * Add or remove the audit log entry for the no data needed checkbox. + * @param actionCode -1 to remove the entry, 0 to just read the existing entry, +1 to add the entry + * @return true if the audit log contains the no data needed flag after performing the action + **/ + boolean alterNoDataNeededAuditEntry(int actionCode) { + if(!importer.getImporterManager().database.hasDatabase()) { + return false; + } + + Connection db = importer.getImporterManager().openDatabase(); + if(db == null) { + return false; + } + + String name = importer.getName() + " Flag"; + String briefDescription = "No data needed"; + String fullDescription = ""; + String sql = ""; + SQLRunner.Query query = new SQLRunner.Query(); + + try { + if(actionCode < 0) { + // Delete from the audit log + sql = "delete from auditLog" + + " where importerName=" + DatabaseUtilities.escapeSQL(name,true) + + " and briefDescription=" + DatabaseUtilities.escapeSQL(briefDescription,true); + SQLRunner.executeSQL(db,sql); + return false; + } else if(actionCode > 0) { + sql = "select * from auditLog" + + " where importerName=" + DatabaseUtilities.escapeSQL(name,true) + + " and briefDescription=" + DatabaseUtilities.escapeSQL(briefDescription,true); + query.open(db,sql); + if(!query.rs.next()) { + query.close(); + + sql = "insert into auditLog (whenHappened,importerName," + + "briefDescription,fullDescription) " + + "values (now()" + + "," + DatabaseUtilities.escapeSQL(name,true) + + "," + DatabaseUtilities.escapeSQL(briefDescription,true) + + "," + DatabaseUtilities.escapeSQL(fullDescription,true) + + ")"; + SQLRunner.executeSQL(db,sql); + } + return true; + } + sql = "select * from auditLog" + + " where importerName=" + DatabaseUtilities.escapeSQL(name,true) + + " and briefDescription=" + DatabaseUtilities.escapeSQL(briefDescription,true); + query.open(db,sql); + return query.rs.next(); + } catch(Exception e) { + Logger.logError(e,"Unable to read audit log data"); + return false; + } finally { + query.onFinally(); + DatabaseUtilities.closeConnection(db); + db = null; + } + } + + /** + * Refresh any state information from data stored in the audit log for an input database. + * @param db Database to use + **/ + public void refreshFromAuditLog(Connection db) { + if(!displayNoDataNeededCheckBox || noDataNeededCheckBox == null) { + return; + } + noDataNeededCheckBox.setSelected(alterNoDataNeededAuditEntry(0)); + } +} diff --git a/gov/epa/otaq/moves/master/gui/AboutAction.java b/gov/epa/otaq/moves/master/gui/AboutAction.java new file mode 100644 index 0000000..6a4ad79 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/AboutAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** +* @(#)AboutAction.java +* +* +* +*************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; +import javax.swing.Action; +/** +* Class for MOVES About menu option. +* +* @author Cimulus +* @author EPA-elg +* @author EPA-hmc +* @version 2006-12-27 +**/ +public class AboutAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_ABOUT = "about-command"; + /** Constant action name. **/ + static final String NAME_ABOUT = "About MOVES..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_ABOUT = "toolbarButtonGraphics/general/About16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_ABOUT = "toolbarButtonGraphics/general/About24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_ABOUT = "About MOVES"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_ABOUT = "MOVES2014b December 2018 Technical Update"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_ABOUT = 'A'; + /** + * Implements the About menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public AboutAction() { + putValue(Action.NAME, NAME_ABOUT); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_ABOUT)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_ABOUT)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_ABOUT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_ABOUT); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_ABOUT)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_ABOUT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/AdvancedPerformanceFeatures.java b/gov/epa/otaq/moves/master/gui/AdvancedPerformanceFeatures.java new file mode 100644 index 0000000..d4d5613 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/AdvancedPerformanceFeatures.java @@ -0,0 +1,1544 @@ +/************************************************************************************************** + * @(#)AdvancedPerformanceFeatures.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import java.util.*; +import java.sql.*; +import javax.swing.table.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; + +/** + * Class for MOVES AdvancedPerformanceFeatures panel. The panel contains a list + * of classes that support optional execution and data capture. + * + * @author Wes Faler + * @author Tim Hull + * @version 2013-12-23 +**/ +public class AdvancedPerformanceFeatures extends JPanel + implements RunSpecEditor, ActionListener, CellEditorListener, FocusListener { + /** Grid of components and options shown on screen **/ + JTable table; + /** Panel contains table. **/ + JPanel topPanel; + /** scroll pane so that table can be scrolled **/ + JScrollPane tableScrollPane; + + /** Copy Saved Generator Data checkbox **/ + JCheckBox copySavedDataCheckbox; + /** Create Database button **/ + JButton createButton; + /** Refresh button **/ + JButton refreshButton; + /** Server text control. **/ + JTextField server; + /** Database combo control. **/ + ExtendedComboBox databaseCombo; + /** Run droplist ToolTip **/ + JToolTip databaseToolTip; + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = new String(); + /** database names that should not be used **/ + TreeSetIgnoreCase invalidDatabaseNames = new TreeSetIgnoreCase(); + /** database names that should not be used as input databases **/ + TreeSetIgnoreCase invalidInputDatabaseNames = new TreeSetIgnoreCase(); + + /** + * array of displayed class names, one for each entry + * in MOVESInstanstiator.advancedPerformanceClasses + **/ + String[] humanNames = null; + /** index of row containing the Emissions Calculators entry **/ + int calculatorsIndex = 0; + /** + * array of "Don't Execute" flags, one for each entry + * in MOVESInstanstiator.advancedPerformanceClasses + **/ + Boolean[] dontExecuteFlags = null; + /** + * array of "Save Data" flags, one for each entry + * in MOVESInstanstiator.advancedPerformanceClasses + **/ + Boolean[] saveDataFlags = null; + /** Do Not Perform Final Aggregation checkbox **/ + JCheckBox doNotPerformFinalAggregationCheckbox; + /** Tied to RunSpec.shouldTruncateMOVESOutput **/ + JCheckBox truncateMOVESOutputCheckbox; + /** Tied to RunSpec.shouldTruncateMOVESActivityOutput **/ + JCheckBox truncateMOVESActivityOutputCheckbox; + /** Tied to RunSpec.shouldTruncateBaseRateOutput **/ + JCheckBox truncateBaseRateOutputCheckbox; + + /** Create Input Database button **/ + JButton inputCreateButton; + /** Refresh button **/ + JButton inputRefreshButton; + /** Input Server text control. **/ + JTextField inputServer; + /** Input Database combo control. **/ + ExtendedComboBox inputDatabaseCombo; + /** Input Run droplist ToolTip **/ + JToolTip inputDatabaseToolTip; + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String inputPreviousServer = new String(); + /** database names that should not be used **/ + TreeSetIgnoreCase inputInvalidDatabaseNames = new TreeSetIgnoreCase(); + + /** Used to returns a blank, or null, renderer if a cell is empty **/ + class BlankRenderer extends DefaultTableCellRenderer { + public Component getTableCellRendererComponent(JTable table, Object value, + boolean isSelected, boolean hasFocus, int row, int column) { + return null; + } + } + + /** Table model to display the classes and options grid. **/ + class AdvancedPerformanceFeaturesTableModel extends AbstractTableModel { + /** + * Get the description for an emission process column. + * @param col the emission process column number + * @return The column description + **/ + public String getColumnName(int col) { + switch(col) { + case 0: + return "Component"; + case 1: + return "Don't Execute"; + case 2: + return "Save Data"; + } + return ""; + } + + /** + * Get the number of rows in the table. + * @return The number of rows in the table + **/ + public int getRowCount() { + return MOVESInstantiator.advancedPerformanceClasses.length; + } + + /** + * Get the number of columns in the table. + * @return The number of columns in the table + **/ + public int getColumnCount() { + return 3; + } + + /** + * Get the value in a table cell. + * @param row The cell row number. + * @param col The cell column number. + * @return The walue stored in the table cell. + **/ + public Object getValueAt(int row, int col) { + switch(col) { + case 0: + return humanNames[row]; + case 1: + return dontExecuteFlags[row]; + case 2: + return saveDataFlags[row]; + } + return null; + } + + /** + * Get the class, or type, of data in a column. + * @param col The cell column number. + * @return The column class + **/ + public Class getColumnClass(int col) { + if(col < 1) { + return String.class; + } else { + return Boolean.class; + } + } + + /** + * Check if the cell is editable. + * @param row The cell row number. + * @param col The cell column number. + * @return True if the cell is editable. + **/ + public boolean isCellEditable(int row,int col) { + if(col < 1) { // If it is the component name, don't allow it to be edited + return false; + } else { + return true; + } + } + + /** + * Set the value of a table cell. + * @param value The value to put in the cell. + * @param row The cell row number. + * @param col The cell column number. + **/ + public void setValueAt(Object value,int row,int col) { + switch(col) { + case 1: + dontExecuteFlags[row] = (Boolean)value; + break; + case 2: + saveDataFlags[row] = (Boolean)value; + break; + default: + return; + } + fireTableCellUpdated(row,col); + assessSituation(); + } + } + + /** Table to display the component and options grid. **/ + class AdvancedPerformanceFeaturesTable extends JTable { + /** Renderer returned if a cell is empty **/ + BlankRenderer blankRenderer; + + /** + * Constructor to set the Table Model for this table. + * @param model The table model used for this table. + **/ + public AdvancedPerformanceFeaturesTable(AbstractTableModel model) { + super(model); + blankRenderer = new BlankRenderer(); + } + + /** + * Overrides the cell renderer for empty cells by returning a blank renderer. + * @param row The row number for the cell. + * @param col The column number for the cell. + * @return The cell renderer. + **/ + public TableCellRenderer getCellRenderer(int row,int col) { + if(getModel().getValueAt(row,col) == null) { + return blankRenderer; + } else { + return super.getCellRenderer(row,col); + } + } + } + + /** + * Constructs a AdvancedPerformanceFeatures panel, also creates and sets the layout of the controls. + **/ + public AdvancedPerformanceFeatures() { + setupArrays(); + createControls(); + arrangeControls(); + } + + /** Fills data arrays used to track options in the grid **/ + void setupArrays() { + humanNames = new String[MOVESInstantiator.advancedPerformanceClasses.length]; + dontExecuteFlags = new Boolean[MOVESInstantiator.advancedPerformanceClasses.length]; + saveDataFlags = new Boolean[MOVESInstantiator.advancedPerformanceClasses.length]; + + calculatorsIndex = 0; + String calculatorsName = EmissionCalculator.class.getName(); + for(int i=0;i 0)) { + appendText = runspec.generatorDatabase.serverName; + } else { + appendText = "[using default]"; + } + + destination.append("\tSaved Data Database Server Name: " + appendText + "\r\n"); + if((runspec.generatorDatabase.databaseName != null) + && (runspec.generatorDatabase.databaseName.length() > 0)) { + appendText = runspec.generatorDatabase.databaseName; + } else { + appendText = "[using default]"; + } + destination.append("\tSaved Data Database Name: " + appendText + "\r\n"); + + // Custom default database + appendText = ""; + if((runspec.inputDatabase.serverName != null) + && (runspec.inputDatabase.serverName.length() > 0)) { + appendText = runspec.inputDatabase.serverName; + } else { + appendText = "[using default]"; + } + destination.append("\tCustom Default Database Server Name: " + appendText + "\r\n"); + if((runspec.inputDatabase.databaseName != null) + && (runspec.inputDatabase.databaseName.length() > 0)) { + appendText = runspec.inputDatabase.databaseName; + } else { + appendText = "[using default]"; + } + destination.append("\tCustom Default Database Name: " + appendText + "\r\n"); + + // Data handling flags + if(runspec.doNotPerformFinalAggregation) { + destination.append("\tDo Not Perform Final Aggregation\r\n"); + } else { + destination.append("\tPerform Final Aggregation (if necessary)\r\n"); + } + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + if(runspec.shouldTruncateMOVESOutput) { + destination.append("\tRemove data from MOVESOutput after creating rates"); + } else { + destination.append("\tPreserve data in MOVESOutput after creating rates"); + } + if(runspec.shouldTruncateMOVESActivityOutput) { + destination.append("\tRemove data from MOVESActivityOutput after creating rates"); + } else { + destination.append("\tPreserve data in MOVESActivityOutput after creating rates"); + } + if(runspec.shouldTruncateBaseRateOutput) { + destination.append("\tRemove data from BaseRateOutput after creating rates"); + } else { + destination.append("\tPreserve data in BaseRateOutput after creating rates"); + } + } + } + + /** + * Creates and initializes all controls on this panel. And fixes the height + * and width of the JTable to fit in the screen. + **/ + public void createControls() { + topPanel = new JPanel(); + topPanel.setName("topPanel"); + topPanel.setBorder(BorderFactory.createTitledBorder( + "Masterloopable Components")); + + table = new AdvancedPerformanceFeaturesTable(new AdvancedPerformanceFeaturesTableModel()); + table.setName("advancedPerformanceFeaturesTable"); + table.setRowSelectionAllowed(false); + table.getDefaultEditor(Boolean.class).addCellEditorListener(this); + tableScrollPane = new JScrollPane(table, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + tableScrollPane.setName("advancedPerformanceFeaturesTableScrollPane"); + FontMetrics fm = table.getFontMetrics(table.getFont()); + javax.swing.table.TableColumnModel colModel = table.getColumnModel(); + int numCols = colModel.getColumnCount(); + int tableHeight = 0; + int tableWidth = 0; + for(int i=0; i max) { + max = columnWidth; + } + tableHeight += table.getRowHeight(); + } + max += 10; + table.getColumn(columnName).setPreferredWidth(max); + tableWidth += max; + } else { + int columnSize = 0; + columnSize = fm.stringWidth(columnName)+10; + table.getColumn(columnName).setPreferredWidth(columnSize); + tableWidth += columnSize; + } + } + if(tableScrollPane != null) { + tableScrollPane.getViewport().setPreferredSize(new Dimension(tableWidth, tableHeight)); + table.setPreferredSize(new Dimension(tableWidth, tableHeight)); + } + table.getTableHeader().setResizingAllowed(false); + table.getTableHeader().setReorderingAllowed(false); + ToolTipHelper.add(table,"Select components and their execution options"); + + copySavedDataCheckbox = new JCheckBox("Copy Saved Generator Data"); + ToolTipHelper.add(copySavedDataCheckbox, + "Check this box to save generator data"); + copySavedDataCheckbox.addActionListener(this); + + createButton = new JButton("Create Database"); + createButton.addActionListener(this); + + refreshButton = new JButton("Refresh"); + refreshButton.addActionListener(this); + + server = new JTextField(10); + ToolTipHelper.add(server, + "Edit the name of the server where the database will be located"); + server.setName("server"); + server.addFocusListener(this); + server.setColumns(10); + + databaseCombo = new ExtendedComboBox(); + Dimension d = databaseCombo.getPreferredSize(); + databaseCombo.setPreferredSize(new Dimension(375, d.height)); // 150 + databaseCombo.setPopupWidth(databaseCombo.getPreferredSize().width); + databaseCombo.setName("databaseCombo"); + databaseCombo.addActionListener(this); + databaseCombo.setEditable(true); + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo, + "Edit or select the name of the database in which the data will be stored"); + + doNotPerformFinalAggregationCheckbox = new JCheckBox("Do Not Perform Final Aggregation"); + ToolTipHelper.add(doNotPerformFinalAggregationCheckbox, + "Check this box to prevent data aggregation," + + " which can be time consuming on large output data sets."); + + truncateMOVESOutputCheckbox = new JCheckBox("Clear MOVESOutput after rate calculations"); + ToolTipHelper.add(truncateMOVESOutputCheckbox, + "Check this box to remove inventory data from MOVESOutput once rates have been calculated."); + truncateMOVESActivityOutputCheckbox = new JCheckBox("Clear MOVESActivityOutput after rate calculations"); + ToolTipHelper.add(truncateMOVESActivityOutputCheckbox, + "Check this box to remove activity and population data from MOVESActivityOutput once rates have been calculated."); + truncateBaseRateOutputCheckbox = new JCheckBox("Clear BaseRateOutput after rate calculations"); + ToolTipHelper.add(truncateBaseRateOutputCheckbox, + "Check this box to remove data from BaseRateOutput once rates have been calculated."); + + inputCreateButton = new JButton("Create Database"); + inputCreateButton.addActionListener(this); + + inputRefreshButton = new JButton("Refresh"); + inputRefreshButton.addActionListener(this); + + inputServer = new JTextField(10); + ToolTipHelper.add(inputServer, + "Edit the name of the server where the database will be located"); + inputServer.setName("inputServer"); + inputServer.addFocusListener(this); + inputServer.setColumns(10); + + inputDatabaseCombo = new ExtendedComboBox(); + d = inputDatabaseCombo.getPreferredSize(); + inputDatabaseCombo.setPreferredSize(new Dimension(375, d.height)); // 150 + inputDatabaseCombo.setPopupWidth(inputDatabaseCombo.getPreferredSize().width); + inputDatabaseCombo.setName("inputDatabaseCombo"); + inputDatabaseCombo.addActionListener(this); + inputDatabaseCombo.setEditable(true); + inputDatabaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(inputDatabaseCombo, + "Edit or select the name of the custom input database"); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + removeAll(); + + topPanel.setLayout(new BorderLayout()); + topPanel.add(new JLabel(" "), BorderLayout.NORTH); + topPanel.add(new JLabel(" "), BorderLayout.EAST); + topPanel.add(new JLabel(" "), BorderLayout.WEST); + topPanel.add(tableScrollPane, BorderLayout.CENTER); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(topPanel, gbc); + + JPanel bottomPanel = new JPanel(); + bottomPanel.setLayout(new BoxLayout(bottomPanel,BoxLayout.Y_AXIS)); + bottomPanel.setBorder(BorderFactory.createTitledBorder( + "Destination User Dataset")); + + JPanel p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(copySavedDataCheckbox); + p.add(Box.createHorizontalGlue()); + + bottomPanel.add(p); + + // database and server panel + JPanel outputDatabasePanel = new JPanel(); + gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + outputDatabasePanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + outputDatabasePanel.add(new JLabel("Server:"), gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 1); + outputDatabasePanel.add(server, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,0, "WEST", 1, 1); + outputDatabasePanel.add(refreshButton, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + outputDatabasePanel.add(new JLabel("Database:"), gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 2, 1); + outputDatabasePanel.add(databaseCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,1, "WEST", 1, 1); + outputDatabasePanel.add(createButton, gbc); + + bottomPanel.add(outputDatabasePanel); + + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(bottomPanel, gbc); + + JPanel dataPanel = new JPanel(); + dataPanel.setLayout(new BoxLayout(dataPanel,BoxLayout.Y_AXIS)); + dataPanel.setBorder(BorderFactory.createTitledBorder( + "Aggregation and Data Handling")); + + p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(doNotPerformFinalAggregationCheckbox); + p.add(Box.createHorizontalGlue()); + dataPanel.add(p); + + p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(truncateMOVESOutputCheckbox); + p.add(Box.createHorizontalGlue()); + dataPanel.add(p); + + p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(truncateMOVESActivityOutputCheckbox); + p.add(Box.createHorizontalGlue()); + dataPanel.add(p); + + if(CompilationFlags.DO_RATES_FIRST) { + p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(truncateBaseRateOutputCheckbox); + p.add(Box.createHorizontalGlue()); + dataPanel.add(p); + } + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "WEST", 1, 1); + add(dataPanel, gbc); + + // input database and server panel + bottomPanel = new JPanel(); + bottomPanel.setLayout(new BoxLayout(bottomPanel,BoxLayout.Y_AXIS)); + bottomPanel.setBorder(BorderFactory.createTitledBorder( + "Custom Input Database")); + + outputDatabasePanel = new JPanel(); + gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + outputDatabasePanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + outputDatabasePanel.add(new JLabel("Server:"), gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 1); + outputDatabasePanel.add(inputServer, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,0, "WEST", 1, 1); + outputDatabasePanel.add(inputRefreshButton, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + outputDatabasePanel.add(new JLabel("Database:"), gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 2, 1); + outputDatabasePanel.add(inputDatabaseCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,1, "WEST", 1, 1); + outputDatabasePanel.add(inputCreateButton, gbc); + + bottomPanel.add(outputDatabasePanel); + + LayoutUtility.setPositionOnGrid(gbc,0, 3, "WEST", 1, 1); + add(bottomPanel, gbc); + + generateListOfInvalidDatabaseNames(); + loadDatabases(); + loadInputDatabases(); + } + + /** + * Saves information to a RunSpec. + * @param runspec the RunSpec to receive the settings + **/ + public void saveToRunSpec(RunSpec runspec) { + // Masterloopable Components + runspec.classesNotToExecute.clear(); + runspec.classesToSaveData.clear(); + for(int i=0;i i=runspec.classesNotToExecute.iterator();i.hasNext();) { + String className = (String)i.next(); + for(int j=0;j i=runspec.classesToSaveData.iterator();i.hasNext();) { + String className = (String)i.next(); + for(int j=0;j sections) { + sections.remove(getName()); + + boolean isOk = true; + + boolean hasNeedToSave = false; + for(int i=0;i 0; + } else { + isOk = true; + } + } else { + isOk = true; + } + + RunSpecSectionStatus status; + if(isOk) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } + + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.classesNotToExecute.clear(); + runspec.classesToSaveData.clear(); + runspec.pollutantProcessAssociations.clear(); + runspec.shouldCopySavedGeneratorData = false; + runspec.generatorDatabase.serverName = ""; + runspec.generatorDatabase.databaseName = ""; + runspec.generatorDatabase.description = ""; + runspec.doNotPerformFinalAggregation = false; + runspec.inputDatabase.serverName = ""; + runspec.inputDatabase.databaseName = ""; + runspec.inputDatabase.description = ""; + runspec.shouldTruncateMOVESOutput = true; + runspec.shouldTruncateMOVESActivityOutput = true; + runspec.shouldTruncateBaseRateOutput = true; + + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + Connection db = dbSelection.openConnectionOrNull(); + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentInputDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(inputServer.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)inputDatabaseCombo.getSelectedItem()); + Connection db = dbSelection.openConnectionOrNull(); + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + databaseCombo.removeAllItems(); + // add the default item (no selection) + databaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + if(!invalidDatabaseNames.contains(nextDB)) { + databases.add(nextDB); + } + } + results.close(); + } + statement.close(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases)."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an output database + ArrayList stringsToRemove = new ArrayList(); + try { + /* + boolean foundOutputTable = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTable = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0 || invalidDatabaseNames.contains(nextDatabase)) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextTable = results.getString(1); + if(nextTable.equalsIgnoreCase("IMCoverage")) { + foundOutputTable = true; + break; + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTable) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + } + */ + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + databaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database."); + } + // set the default selection + databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + } + + /** + * Loads the InputDatabases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadInputDatabases() { + inputDatabaseCombo.removeAllItems(); + // add the default item (no selection) + inputDatabaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentInputDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the input database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + if(!invalidInputDatabaseNames.contains(nextDB)) { + databases.add(nextDB); + } + } + results.close(); + } + statement.close(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases)."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an output database + ArrayList stringsToRemove = new ArrayList(); + try { + /* + boolean foundOutputTable = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTable = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0 || invalidInputDatabaseNames.contains(nextDatabase)) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextTable = results.getString(1); + if(nextTable.equalsIgnoreCase("IMCoverage")) { + foundOutputTable = true; + break; + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTable) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + } + */ + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + inputDatabaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database."); + } + // set the default selection + inputDatabaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInInputComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = inputDatabaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + inputDatabaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** Handles the database combo change. **/ + public void processDatabaseComboChange() { + if(databaseCombo.getSelectedItem() == null) { + return; + } + if(databaseCombo.getSelectedItem().toString().length() == 0) { + return; + } + + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + String sql; + PreparedStatement statement; + + // try to connect to the new selection + Connection db = openCurrentDatabase(false); + if(null == db) { + return; + } + try { + sql = "SELECT COUNT(*) FROM IMCoverage"; + statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + results.next(); + int count = results.getInt(1); + results.close(); + } + statement.close(); + } catch(Exception e) { + } + DatabaseUtilities.closeConnection(db); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** Handles the input database combo change. **/ + public void processInputDatabaseComboChange() { + if(inputDatabaseCombo.getSelectedItem() == null) { + return; + } + if(inputDatabaseCombo.getSelectedItem().toString().length() == 0) { + return; + } + + String newDatabaseName = inputDatabaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(inputServer.getText().length() > 0) { + dbSelection.serverName = inputServer.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = isAlternateInputDatabaseNameValid(dbSelection); + if(status == null) { + String sql; + PreparedStatement statement; + + // try to connect to the new selection + Connection db = openCurrentInputDatabase(false); + if(null == db) { + return; + } + try { + sql = "SELECT COUNT(*) FROM IMCoverage"; + statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + results.next(); + int count = results.getInt(1); + results.close(); + } + statement.close(); + } catch(Exception e) { + } + DatabaseUtilities.closeConnection(db); + newDatabaseName = addIfNotInInputComboBox(newDatabaseName); + inputDatabaseCombo.setSelectedItem(newDatabaseName); + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** + * Validate the Alternate Input Database Name + * @param dbSelection the database selection. + * @return String null if valid, a message if not valid. + **/ + public static String isAlternateInputDatabaseNameValid(DatabaseSelection dbSelection) { + String message = null; + if(dbSelection.databaseName.trim().length()==0) { + /** + * @issue The alternate input database name cannot be blank. + * @explain An input database name cannot be blank. + **/ + message = "The alternate input database name cannot be blank."; + return message; + } + + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + //execution database cannot be accepted as an input selection + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + if ((executionDB.databaseName).equalsIgnoreCase(dbSelection.databaseName)) { + /** + * @issue The execution database cannot be used as an input database. + * @explain Simulation input cannot come from the temporary MOVESExecution database. + **/ + message = "The execution database cannot be used as an input database."; + return message; + } + //Worker database cannot be accepted as an input selection + if (dbSelection.databaseName.equalsIgnoreCase("MOVESWorker")) { + /** + * @issue MOVESWorker database cannot be used as an input database. + * @explain Simulation input cannot come from the temporary MOVESWorker database. + **/ + message = "MOVESWorker database cannot be used as an input database."; + return message; + } + //MySQL database cannot be accepted as an input selection + if (dbSelection.databaseName.equalsIgnoreCase("MySQL")) { + /** + * @issue MySQL database cannot be used as an input database. + * @explain Simulation input cannot come from the system MySQL database. + **/ + message = "MySQL database cannot be used as an input database."; + return message; + } + return message; + } + + /** + * Handles the focus lost event for the server textfield, and checkboxes. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + JComponent c = (JComponent)e.getComponent(); + if(c == server) { + if(previousServer.equals(server.getText())) { + return; + } + previousServer = server.getText(); + loadDatabases(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(c == inputServer) { + if(inputPreviousServer.equals(inputServer.getText())) { + return; + } + inputPreviousServer = inputServer.getText(); + loadInputDatabases(); + } + } + + /** + * Currently not used. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == createButton) { + handleCreateButton(); + } else if(e.getSource() == refreshButton) { + loadDatabases(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == copySavedDataCheckbox) { + assessSituation(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == inputCreateButton) { + handleInputCreateButton(); + } else if(e.getSource() == inputRefreshButton) { + loadInputDatabases(); + } else if(e.getSource() == databaseCombo) { + processDatabaseComboChange(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == inputDatabaseCombo) { + processInputDatabaseComboChange(); + } + } + + /** + * Handles table editing stopped event. + * @param e The event caused by the table edit. + **/ + public void editingStopped(ChangeEvent e){ + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + + /** + * Currently not used. + * @param e The event caused by the table edit. + **/ + public void editingCanceled(ChangeEvent e) { + + } + + /** Handle the Create button **/ + void handleCreateButton() { + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName.length() == 0) { + JOptionPane.showMessageDialog(this,"Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + if(validDatabaseName(dbSelection)) { + Connection db = dbSelection.openConnectionOrNull(); + boolean databaseAlreadyExists = db != null; + DatabaseUtilities.closeConnection(db); + db = null; + if(databaseAlreadyExists) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database already exists, no action taken.", 60)); + } else if(dbSelection.safeCreateDatabase("database/CreateDefault.sql") == DatabaseSelection.CREATED) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database successfully created.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + } else { + Logger.log(LogMessageCategory.ERROR, + "Could not create the database."); + } + } + } + + /** Handle the Input Create button **/ + void handleInputCreateButton() { + String newDatabaseName = inputDatabaseCombo.getSelectedItem().toString(); + if(newDatabaseName.length() == 0) { + JOptionPane.showMessageDialog(this,"Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(inputServer.getText().length() > 0) { + dbSelection.serverName = inputServer.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)inputDatabaseCombo.getSelectedItem()); + if(validInputDatabaseName(dbSelection)) { + Connection db = dbSelection.openConnectionOrNull(); + boolean databaseAlreadyExists = db != null; + DatabaseUtilities.closeConnection(db); + db = null; + if(databaseAlreadyExists) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database already exists, no action taken.", 60)); + } else if(dbSelection.safeCreateDatabase("database/CreateDefault.sql") == DatabaseSelection.CREATED) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Database successfully created.", 60)); + newDatabaseName = addIfNotInInputComboBox(newDatabaseName); + } else { + Logger.log(LogMessageCategory.ERROR, + "Could not create or update the database."); + } + } + } + + /** Fill invalidDatabaseNames **/ + void generateListOfInvalidDatabaseNames() { + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + //default database cannot be accepted as an input selection + invalidDatabaseNames.add(defaultDB.databaseName); + //invalidInputDatabaseNames.add(defaultDB.databaseName); + //execution database cannot be accepted as an input selection + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + invalidDatabaseNames.add(executionDB.databaseName); + invalidInputDatabaseNames.add(executionDB.databaseName); + //Worker database cannot be accepted as an input selection + invalidDatabaseNames.add("MOVESWorker"); + invalidInputDatabaseNames.add("MOVESWorker"); + //MySQL database cannot be accepted as an input selection + invalidDatabaseNames.add("MySQL"); + invalidInputDatabaseNames.add("MySQL"); + } + + /** + * Check a proposed database selection for appropriateness, prompting the user + * if the database is not acceptable. + * @param dbSelection the database selection. + * @return true if the database name is valid. + **/ + boolean validDatabaseName(DatabaseSelection dbSelection) { + if(invalidDatabaseNames.contains(dbSelection.databaseName)) { + JOptionPane.showMessageDialog(this, + "The " + dbSelection.databaseName + " database cannot be used here."); + return false; + } + + return true; + } + + /** + * Check a proposed database selection for appropriateness, prompting the user + * if the database is not acceptable. + * @param dbSelection the database selection. + * @return true if the database name is valid. + **/ + boolean validInputDatabaseName(DatabaseSelection dbSelection) { + if(invalidInputDatabaseNames.contains(dbSelection.databaseName)) { + JOptionPane.showMessageDialog(this, + "The " + dbSelection.databaseName + " database cannot be used here."); + return false; + } + + return true; + } + + /** Enable/Disable controls based on selections **/ + void assessSituation() { + boolean hasNeedToSave = false; + for(int i=0;i sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/ClearAction.java b/gov/epa/otaq/moves/master/gui/ClearAction.java new file mode 100644 index 0000000..626a139 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ClearAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)ClearAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Clear menu option. + * + * @author Cimulus + * @version 2003-08-20 +**/ +public class ClearAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CLEAR = "clear-command"; + /** Constant action name. **/ + static final String NAME_CLEAR = "Clear"; + /** Small Icon graphic for the delete button **/ + static final String SMALL_ICON_CLEAR = "toolbarButtonGraphics/general/Delete16.gif"; + /** Large Icon graphic for the delete button **/ + static final String LARGE_ICON_CLEAR = "toolbarButtonGraphics/general/Delete24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CLEAR = "Clear"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CLEAR = "Clear data in current RunSpec"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_CLEAR = 'A'; + + /** + * Implements the Clear menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ClearAction() { + putValue(Action.NAME, NAME_CLEAR); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_CLEAR)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_CLEAR)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CLEAR); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CLEAR); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CLEAR)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CLEAR); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CloseAction.java b/gov/epa/otaq/moves/master/gui/CloseAction.java new file mode 100644 index 0000000..7513d9f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CloseAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)CloseAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Close menu option. + * + * @author Cimulus + * @version 2003-08-20 +**/ +public class CloseAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CLOSE = "close-command"; + /** Constant action name. **/ + static final String NAME_CLOSE = "Close"; + /** Small icon graphic for the close button **/ + static final String SMALL_ICON_CLOSE = "gov/epa/otaq/moves/master/gui/images/Close16.gif"; + /** Large icon graphic for the close button **/ + static final String LARGE_ICON_CLOSE = "gov/epa/otaq/moves/master/gui/images/Close24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CLOSE = "Close"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CLOSE = "Close active RunSpec"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_CLOSE = 'C'; + + /** + * Implements the Close menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public CloseAction() { + putValue(Action.NAME, NAME_CLOSE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_CLOSE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_CLOSE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CLOSE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CLOSE); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CLOSE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CLOSE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Configure.java b/gov/epa/otaq/moves/master/gui/Configure.java new file mode 100644 index 0000000..c311296 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Configure.java @@ -0,0 +1,584 @@ +/************************************************************************************************** + * @(#)Configure.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.filechooser.FileFilter; +import java.io.*; +import java.util.TreeMap; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; + +/** + * Class for MOVES Configure panel. + * + * Creates, initializes, arranges, and sets the layouts of all the dialog controls on the panel. + * Allows the parent to display this dialog as modal. Creates a panel containing the OK and Cancel + * button. Calls the appropriate button handler, the OK button will save the choices before closing, + * and the Cancel button will reset the database connection to its original values. Handles the + * Path Browse button. Loads the databases drop list. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2014-01-11 +**/ +public class Configure extends JDialog implements ActionListener, + FocusListener { + /** The dialog result, indicates true on OK button. **/ + public int result = 0; + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** OK button. **/ + JButton okButton; + /** Cancel button. **/ + JButton cancelButton; + + /** County panel. **/ + JPanel countyPanel; + /** Output panel. **/ + JPanel outputPanel; + /** Run panel. **/ + JPanel sharedFolderPathPanel; + + /** County Server label. **/ + JLabel countyServerLabel; + /** County Server text control. **/ + JTextField countyServer; + /** County Database label. **/ + JLabel countyDatabaseLabel; + /** County Database combo control. **/ + ExtendedComboBox countyDatabaseCombo; + + // /** NonRoad Database label. **/ + // JLabel nonroadDatabaseLabel; + // /** NonRoad Database combo control. **/ + // ExtendedComboBox nonroadDatabaseCombo; + + /** Output Server label. **/ + JLabel outputServerLabel; + /** Output Server text control. **/ + JTextField outputServer; + + /** Run commands text control. **/ + JTextField sharedFolderPathName; + /** Run commands browse button. **/ + JButton sharedFolderPathBrowse; + + /** + * Used by the countyServer FocusLost event handler to help determine if the countyServer + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the countyServer TextField losing focus when the countyServer name + * hasn't changed.. + **/ + String countyPreviousServer; + + /** + * Used by the outputServer FocusLost event handler to help determine if the outputServer + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the outputServer TextField losing focus when the outputServer name + * hasn't changed.. + **/ + String outputPreviousServer; + + /** + * Constructs an Configure panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + **/ + public Configure(JFrame parent) { + super(parent, "Configure MOVES"); + frame = parent; + + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(false); + countyPreviousServer = new String(""); + outputPreviousServer = new String(""); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + pushDataToControls(); + pack(); + setModal(true); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(-1,-1); + setVisible(true); //show(); + } + + /** Data from member variables to dialog controls (currently unused). **/ + void pushDataToControls() { + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + okButton = new JButton("OK"); + okButton.addActionListener(this); + okButton.setName("okButton"); + ToolTipHelper.add(okButton,"Save the configuration settings and exit"); + cancelButton = new JButton("Cancel"); + cancelButton.addActionListener(this); + cancelButton.setName("cancelButton"); + ToolTipHelper.add(cancelButton,"Exit without saving changes"); + Dimension countyPanelSize = new Dimension(450,135); // 450,90 + Dimension outputPanelSize = new Dimension(450,55); + Dimension filePanelSize = new Dimension(450,60); + countyPanel = new JPanel(); + countyPanel.setName("countyPanel"); + countyPanel.setBorder(BorderFactory.createTitledBorder( + "Default Input Database")); + countyPanel.setPreferredSize(countyPanelSize); + + outputPanel = new JPanel(); + outputPanel.setName("outputPanel"); + outputPanel.setBorder(BorderFactory.createTitledBorder( + "Default Output Database")); + outputPanel.setPreferredSize(outputPanelSize); + + sharedFolderPathPanel = new JPanel(); + sharedFolderPathPanel.setName("sharedFolderPathPanel"); + sharedFolderPathPanel.setBorder(BorderFactory.createTitledBorder( + "Shared Distributed Folder Path")); + sharedFolderPathPanel.setPreferredSize(filePanelSize); + + countyServerLabel = new JLabel("Server:"); + countyServerLabel.setName("countyServerLabel"); + countyServer = new JTextField(20); + countyServer.setName("countyServer"); + countyServer.addFocusListener(this); + countyServer.setText(sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].serverName); + ToolTipHelper.add(countyServer,"Edit the name of the default database server"); + + outputServerLabel = new JLabel("Server:"); + outputServerLabel.setName("outputServerLabel"); + outputServer = new JTextField(20); + outputServer.setName("outputServer"); + outputServer.addFocusListener(this); + outputServer.setText(sysConfig.databaseSelections[ + MOVESDatabaseType.OUTPUT.getIndex()].serverName); + ToolTipHelper.add(outputServer,"Edit the name of the output database server"); + + countyDatabaseCombo = new ExtendedComboBox(); + countyDatabaseCombo.setName("countyDatabaseCombo"); + countyDatabaseLabel = new JLabel("Default Database:"); + countyDatabaseLabel.setName("countyDatabaseLabel"); + countyDatabaseCombo.setEditable(true); + countyDatabaseCombo.setSelectedItem + (sysConfig.databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName); + ToolTipHelper.add(countyDatabaseCombo,"Edit or select the name of the default database"); + + /* + nonroadDatabaseCombo = new ExtendedComboBox(); + nonroadDatabaseCombo.setName("nonroadDatabaseCombo"); + nonroadDatabaseLabel = new JLabel("NonRoad Database:"); + nonroadDatabaseLabel.setName("nonroadDatabaseLabel"); + if(CompilationFlags.USE_NONROAD) { + nonroadDatabaseCombo.setEditable(true); + nonroadDatabaseCombo.setSelectedItem + (sysConfig.databaseSelections[MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName); + ToolTipHelper.add(nonroadDatabaseCombo,"Edit or select the name of the NonRoad database"); + } else { + nonroadDatabaseCombo.setEditable(false); + } + */ + + sharedFolderPathName = new JTextField(30); + sharedFolderPathName.setName("sharedFolderPathName"); + ToolTipHelper.add(sharedFolderPathName,"Edit the folder name for the files shared with the" + +" workers"); + sharedFolderPathBrowse = new JButton("Browse..."); + ToolTipHelper.add(sharedFolderPathBrowse,"Select folder to share files with workers"); + sharedFolderPathBrowse.addActionListener(this); + sharedFolderPathBrowse.setName("sharedFolderPathBrowse"); + sharedFolderPathName.setText(sysConfig.sharedDistributedFolderPath.getPath()); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + public JPanel arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + countyPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + countyPanel.add(countyServerLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + countyPanel.add(countyServer, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + countyPanel.add(countyDatabaseLabel, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,1, 1, "WEST", 1, 1); + countyPanel.add(countyDatabaseCombo, gbc); + gbc.weightx = 0; + + /* + if(CompilationFlags.USE_NONROAD) { + LayoutUtility.setPositionOnGrid(gbc,0, 2, "WEST", 1, 1); + countyPanel.add(nonroadDatabaseLabel, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,1, 2, "WEST", 1, 1); + countyPanel.add(nonroadDatabaseCombo, gbc); + gbc.weightx = 0; + } + */ + + outputPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + outputPanel.add(outputServerLabel, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + outputPanel.add(outputServer, gbc); + + sharedFolderPathPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 2, 1); + sharedFolderPathPanel.add(sharedFolderPathName, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,2, 0, "WEST", 1, 1); + sharedFolderPathPanel.add(sharedFolderPathBrowse, gbc); + gbc.weightx = 0; + + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + result.add(countyPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + result.add(outputPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + result.add(sharedFolderPathPanel, gbc); + JPanel buttonPanel = createButtonsPanel(); + LayoutUtility.setPositionOnGrid(gbc,1,0, "NORTH", 1, 3); + result.add(buttonPanel, gbc); + + return result; + } + + /** + * Creates a panel containing the OK and Cancel buttons. + * @return the container as JPanel. + **/ + JPanel createButtonsPanel() { + JPanel box = new JPanel(); + box.setLayout(new GridLayout(2,1,5,5)); // 2 rows, 1 column, 5 pixel gaps + box.add(okButton); + box.add(cancelButton); + + JPanel result = new JPanel(); + result.setLayout(new BorderLayout()); + result.add(box, BorderLayout.NORTH); + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == sharedFolderPathBrowse) { + processSharedFolderPathBrowseButton(); + } else if(e.getSource() == okButton) { + handleOKButton(); + } else if(e.getSource() == cancelButton) { + handleCancelButton(); + } + } + + /** + * OK button handler, will save the choices to the System Configuration + * before closing this dialog. + **/ + void handleOKButton() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + + // Check the default server and database + String testServerName = countyServer.getText(); + String testDatabaseName = + StringUtilities.safeGetString(countyDatabaseCombo.getSelectedItem()); + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + if((executionDB.databaseName).equalsIgnoreCase(testDatabaseName)) { + JOptionPane.showMessageDialog(this, + "The execution database cannot be used as an input database."); + return; + } + String nrTestDatabaseName = ""; + /* + if(CompilationFlags.USE_NONROAD) { + nrTestDatabaseName = StringUtilities.safeGetString(nonroadDatabaseCombo.getSelectedItem()); + if((executionDB.databaseName).equalsIgnoreCase(nrTestDatabaseName)) { + JOptionPane.showMessageDialog(this, + "The execution database cannot be used as a NonRoad input database."); + return; + } + } + */ + + // If the server or database names have changed, validate and save the new change(s) + boolean didChangeDatabase = false; + if(!sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].databaseName.equals( + testDatabaseName) || + (!sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].serverName.equals( + testServerName))) { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = testServerName; + dbSelection.databaseName = testDatabaseName; + Connection db = dbSelection.openConnectionOrNull(); + if(db == null) { + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString( + "Cannot connect to MOVES Default Database.", 60)); + return; + } + boolean hasDesiredSchema = SchemaInspector.isMOVESSchemaPresent(db, false,false); + DatabaseUtilities.closeConnection(db); + if(!hasDesiredSchema) { + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString("Invalid MOVES Default Database.", 60)); + return; + } + didChangeDatabase = true; + } + boolean didChangeNRDatabase = false; + /* + if(!sysConfig.databaseSelections[ + MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName.equals( + nrTestDatabaseName) || + (CompilationFlags.USE_NONROAD && !sysConfig.databaseSelections[ + MOVESDatabaseType.NRDEFAULT.getIndex()].serverName.equals( + testServerName))) { + if(CompilationFlags.USE_NONROAD) { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = testServerName; + dbSelection.databaseName = nrTestDatabaseName; + Connection db = dbSelection.openConnectionOrNull(); + if(db == null) { + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString( + "Cannot connect to NonRoad Database.", 60)); + return; + } + boolean hasDesiredSchema = SchemaInspector.isNonRoadSchemaPresent(db, false,false); + DatabaseUtilities.closeConnection(db); + if(!hasDesiredSchema) { + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString("Invalid NonRoad Database.", 60)); + return; + } + } + didChangeNRDatabase = true; + } + */ + // Check the output server + String testOutputServerName = StringUtilities.safeGetString(outputServer.getText()); + if(!sysConfig.databaseSelections[ + MOVESDatabaseType.OUTPUT.getIndex()].serverName.equals( + testOutputServerName)) { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = testOutputServerName; + dbSelection.databaseName = ""; + Connection db = dbSelection.openConnectionOrNull(); + if(db == null) { + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString( + "Cannot connect to output server.", 60)); + return; + } + DatabaseUtilities.closeConnection(db); + } + // persist the data + sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].serverName = testServerName; + sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].databaseName = testDatabaseName; + /* + if(CompilationFlags.USE_NONROAD) { + sysConfig.databaseSelections[ + MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName = nrTestDatabaseName; + } + */ + sysConfig.sharedDistributedFolderPath = new File(sharedFolderPathName.getText()); + sysConfig.databaseSelections[ + MOVESDatabaseType.OUTPUT.getIndex()].serverName = testOutputServerName; + try { + sysConfig.saveConfigurationData(); + DatabaseConnectionManager.cleanupAll(); + DatabaseConnectionManager.initializeAll(); + if(didChangeDatabase) { + // Reload cached data + PollutantProcessLoader.loadFromDatabase(); + TimeSpan.loadTimeObjects(); + } + } catch(Exception e) { + Logger.logError(e, "Save configuration data failed."); + } + + // indicates OK button + result = 1; + dispose(); + } + + /** + * Cancel button handler, will reset the database connection to its original values + * before closing this dialog. + **/ + void handleCancelButton() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + + // reload the original system configuration from the file + try { + sysConfig.loadConfigurationData(); + } catch(Exception e) { + Logger.logError(e, "Load configuration data failed."); + } + // get the default db connection + DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + // indicates Cancel button + result = 0; + dispose(); + } + + /** + * Handles the focus lost event for the countyServer & outputServer textfields, + * and the countyDatabaseCombo. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + JComponent c = (JComponent)e.getComponent(); + if(c == countyServer) { + if(countyPreviousServer.equals(countyServer.getText())) { + return; + } + countyPreviousServer = countyServer.getText(); + sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].serverName = countyServer.getText(); + /* + sysConfig.databaseSelections[ + MOVESDatabaseType.NRDEFAULT.getIndex()].serverName = countyServer.getText(); + */ + loadDatabases(); + } else if(c == outputServer) { + if(outputPreviousServer.equals(outputServer.getText())) { + return; + } + outputPreviousServer = outputServer.getText(); + sysConfig.databaseSelections[ + MOVESDatabaseType.OUTPUT.getIndex()].serverName = outputServer.getText(); + } + } + + /** + * Currently not used. + * @param e The FocusEvent to be handled. + **/ + public void focusGained(FocusEvent e) { + } + + /** Handles the Shared Folder Path Browse button. **/ + public void processSharedFolderPathBrowseButton() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + JFileChooser chooser = new JFileChooser(); + chooser.setFileFilter(new FileFilter() { + public boolean accept(File f) { + return f.isDirectory(); + } + public String getDescription() { + return "Directories"; + } + }); + chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + int returnVal = chooser.showOpenDialog(this); + if(returnVal == JFileChooser.APPROVE_OPTION) { + sharedFolderPathName.setText(chooser.getSelectedFile().getPath()); + File tempPath = new File(sharedFolderPathName.getText()); + sysConfig.sharedDistributedFolderPath = tempPath; + } + } + + /** + * Loads the Databases droplist, based on the countyServer setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + // get the available databases from the current countyServer selection. + countyDatabaseCombo.removeAllItems(); + + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + return; + } + String sql = "SHOW Databases"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + String nextDB = query.rs.getString(1); + countyDatabaseCombo.addItem(nextDB); + /* + if(CompilationFlags.USE_NONROAD) { + nonroadDatabaseCombo.addItem(nextDB); + } + */ + } + } catch(Exception e) { + Logger.logError(e, "Loading a list of databases failed."); + } finally { + query.onFinally(); + } + // set the default selection + countyDatabaseCombo.setSelectedItem(sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].databaseName); + /* + if(CompilationFlags.USE_NONROAD) { + nonroadDatabaseCombo.setSelectedItem(sysConfig.databaseSelections[ + MOVESDatabaseType.NRDEFAULT.getIndex()].databaseName); + } + */ + } +} diff --git a/gov/epa/otaq/moves/master/gui/ConfigureAction.java b/gov/epa/otaq/moves/master/gui/ConfigureAction.java new file mode 100644 index 0000000..e339b1b --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ConfigureAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)ConfigureAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Configuration menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class ConfigureAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CONFIGURE = "configure-command"; + /** Constant action name. **/ + static final String NAME_CONFIGURE = "Configure MOVES..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_CONFIGURE = "toolbarButtonGraphics/general/Preferences16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_CONFIGURE = "toolbarButtonGraphics/general/Preferences24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CONFIGURE = "Configure MOVES"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CONFIGURE = "Adjust MOVES configuration settings..."; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_CONFIGURE = 'G'; + + /** + * Implements the Configure menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ConfigureAction() { + putValue(Action.NAME, NAME_CONFIGURE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_CONFIGURE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_CONFIGURE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CONFIGURE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CONFIGURE); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CONFIGURE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CONFIGURE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Converter.java b/gov/epa/otaq/moves/master/gui/Converter.java new file mode 100644 index 0000000..4313f13 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Converter.java @@ -0,0 +1,761 @@ +/************************************************************************************************** + * @(#)Converter.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.filechooser.FileFilter; +import java.io.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.*; + +/** + * Select and execute a database conversion script given the current default + * database, an existing input database, and a new database to be created. + * @author Wesley Faler + * @version 2015-05-20 +**/ +public class Converter extends JDialog implements ActionListener { + /** Mode for conversion of a 2010A CDM/PDM database into a 2010B database **/ + public static final int MODE_2010A_TO_2010B = 0; + /** Mode for conversion of a 2010B CDM/PDM database into a 2014 database **/ + public static final int MODE_2010B_TO_2014 = 1; + /** Mode for conversion of a 2014 CDM/PDM database into a 2014A database **/ + public static final int MODE_2014_TO_2014A = 2; + + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** Default conversion mode **/ + int mode = MODE_2010A_TO_2010B; + + /** Instructions display **/ + JTextPane instructionsTextPane; + /** Button to create a control file template **/ + JButton createTemplateButton; + /** Button to refresh the list of databases **/ + JButton refreshButton; + /** Name of the control file **/ + JLabel controlFileText; + /** Full path for the file shown in controlFileText **/ + String controlFileFullPath = ""; + /** Button to browse for a control file **/ + JButton browseControlFileButton; + /** Prefix to be applied to the names of all created RunSpecs **/ + JTextField prefixText; + /** Name of the directory in which RunSpecs will be created **/ + JLabel outputDirectoryText; + /** Full path for the directory shown in outputDirectoryText **/ + String outputDirectoryFullPath = ""; + /** Button to browse for the output directory **/ + JButton browseOutputButton; + /** List of messages **/ + JList messagesList; + /** Button to create RunSpecs from the control file **/ + JButton createRunSpecsButton; + /** Button to close the window **/ + JButton doneButton; + + /** Type of the control file, Text, XLS, etc **/ + String controlFileType = ""; + /** The worksheet name within the control file if it is XLS type **/ + String controlFileWorksheetName = ""; + + /** DefaultListModel for messageList **/ + DefaultListModel messageListModel; + + /** List of messages to be shown **/ + ArrayList messages = new ArrayList(); + /** True if messages contains any errors that should prevent further processing **/ + boolean messagesHasError = false; + + /** Name of the server holding the default, input, and new databases. **/ + JLabel serverLabel; + /** Database containing old data to be converted. **/ + ExtendedComboBox inputDatabaseCombo; + /** Database to be created to hold the converted data. **/ + ExtendedComboBox newDatabaseCombo; + + /** + * Browser dialog for selecting an output directory. Retained as a member + * variable so it would retain the last used directory. + **/ + JFileChooser folderChooser = null; + + /** + * Constructs the FERC panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + * @param modeToUse Default conversion mode + **/ + public Converter(JFrame parent, int modeToUse) { + super(parent, "Convert Database"); + frame = parent; + mode = modeToUse; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + resetMessages(); + populateMessagesList(); + loadDatabases(); + setDefaultConversionScript(); + + pack(); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(620,720); // 520,610 + setModal(true); + setVisible(true); + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + return createAndArrangeControls(); + } + + /** + * Create controls and sets their layout. + * @return the container as JPanel of the controls + **/ + public JPanel createAndArrangeControls() { + JPanel result = new JPanel(); + instructionsTextPane = new JTextPane(); + JLabel label1 = new JLabel(); + createTemplateButton = new JButton(); + controlFileText = new JLabel("",JLabel.RIGHT); + browseControlFileButton = new JButton(); + JLabel label2 = new JLabel(); + prefixText = new JTextField(); + JLabel label3 = new JLabel(); + outputDirectoryText = new JLabel("",JLabel.RIGHT); + browseOutputButton = new JButton(); + JLabel label4 = new JLabel(); + JLabel label5 = new JLabel(); + JScrollPane scrollPane2 = new JScrollPane(); + createRunSpecsButton = new JButton(); + doneButton = new JButton(); + + messageListModel = new DefaultListModel(); + messagesList = new JListWithToolTips(messageListModel); + messagesList.setSelectedIndex(-1); + messagesList.setVisibleRowCount(6); + messagesList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXX"); + ToolTipHelper.add(scrollPane2,"Displays messages, warnings, and errors"); + + createTemplateButton.addActionListener(this); + browseControlFileButton.addActionListener(this); + browseOutputButton.addActionListener(this); + createRunSpecsButton.addActionListener(this); + doneButton.addActionListener(this); + + inputDatabaseCombo = new ExtendedComboBox(); + Dimension d = inputDatabaseCombo.getPreferredSize(); + inputDatabaseCombo.setPreferredSize(new Dimension(250, d.height)); + inputDatabaseCombo.setPopupWidth(inputDatabaseCombo.getPreferredSize().width); + inputDatabaseCombo.setName("inputDatabaseCombo"); + inputDatabaseCombo.setEditable(true); + inputDatabaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(inputDatabaseCombo,"Edit or select the name of the database that holds the existing data to be converted"); + inputDatabaseCombo.addActionListener(this); + + newDatabaseCombo = new ExtendedComboBox(); + d = newDatabaseCombo.getPreferredSize(); + newDatabaseCombo.setPreferredSize(new Dimension(250, d.height)); + newDatabaseCombo.setPopupWidth(newDatabaseCombo.getPreferredSize().width); + newDatabaseCombo.setName("newDatabaseCombo"); + newDatabaseCombo.setEditable(true); + newDatabaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(newDatabaseCombo,"Edit or select the name of the database to hold the converted data"); + newDatabaseCombo.addActionListener(this); + + refreshButton = new JButton("Refresh"); + ToolTipHelper.add(refreshButton,"Refresh the list of available databases"); + refreshButton.addActionListener(this); + + serverLabel = new JLabel(); + ToolTipHelper.add(serverLabel,"Server that contains the default, input, and new databases."); + serverLabel.setText(StringUtilities.safeGetString(SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName)); + + //======== result ======== + { + result.setLayout(new GridBagLayout()); + ((GridBagLayout)result.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)result.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)result.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)result.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + + //---- instructionsTextPane ---- + switch(mode) { + case MODE_2014_TO_2014A: + instructionsTextPane.setText( + "This tool converts MOVES 2014 County Domain and" + + " Project Domain databases into the MOVES2014A" + + " format." + + "\r\n\r\n" + + "Use the \"Browse\" button to select a database" + + " conversion script file, such as the standard" + + " file Convert2014_CDM_PDM.sql located in the" + + " database/ConversionScripts directory." + + "\r\n\r\n" + + "Select a MOVES 2014 County Domain or Project" + + " Domain database as the \"Input Database\"." + + " This database must be on the same server as the" + + " MOVES 2014A default database in order for the" + + " script to copy required data." + + "\r\n\r\n" + + "Enter the name of a new database to receive" + + " the converted data as the \"New Database\"." + + "\r\n\r\n" + + "Use the \"Convert Database\" button to execute" + + " the script file. When you've converted all the" + + " databases you care to, click \"Done\"." + + "\r\n\r\n" + + "Note that additional work will be needed before " + + "converted MOVES2014 input databases can be used " + + "in MOVES2014A for SIP and conformity purposes. " + + "All MOVES2014 defaults in the input database " + + "(especially default fuel information) should be " + + "replaced with MOVES2014A defaults." + ); + break; + case MODE_2010B_TO_2014: + instructionsTextPane.setText( + "This tool converts MOVES 2010B County Domain and" + + " Project Domain databases into the MOVES2014" + + " format." + + "\r\n\r\n" + + "Use the \"Browse\" button to select a database" + + " conversion script file, such as the standard" + + " file Convert2010B_CDM_PDM.sql located in the" + + " database/ConversionScripts directory." + + "\r\n\r\n" + + "Select a MOVES 2010B County Domain or Project" + + " Domain database as the \"Input Database\"." + + " This database must be on the same server as the" + + " MOVES 2014 default database in order for the" + + " script to copy required data." + + "\r\n\r\n" + + "Enter the name of a new database to receive" + + " the converted data as the \"New Database\"." + + "\r\n\r\n" + + "Use the \"Convert Database\" button to execute" + + " the script file. When you've converted all the" + + " databases you care to, click \"Done\"." + + "\r\n\r\n" + + "Note that additional work will be needed before " + + "converted MOVES2010B input databases can be used " + + "in MOVES2014 for SIP and conformity purposes. " + + "All MOVES2010B defaults in the input database " + + "(especially default fuel information) should be " + + "replaced with MOVES2014 defaults. Additionally, " + + "the monthVMTFraction table may need to be re-imported " + + "if a leap-year is being modeled." + ); + break; + default: + instructionsTextPane.setText( + "This tool converts MOVES 2010A County Domain and" + + " Project Domain databases into the MOVES2010B" + + " format." + + "\r\n\r\n" + + "Use the \"Browse\" button to select a database" + + " conversion script file, such as the standard" + + " file Convert2010A_CDM_PDM.sql located in the" + + " database/ConversionScripts directory." + + "\r\n\r\n" + + "Select a MOVES 2010A County Domain or Project" + + " Domain database as the \"Input Database\"." + + " This database must be on the same server as the" + + " MOVES 2010B default database in order for the" + + " script to copy required data." + + "\r\n\r\n" + + "Enter the name of a new database to receive" + + " the converted data as the \"New Database\"." + + "\r\n\r\n" + + "Use the \"Convert Database\" button to execute" + + " the script file. When you've converted all the" + + " databases you care to, click \"Done\"." + ); + break; + } + instructionsTextPane.setEditable(false); + instructionsTextPane.setBackground(UIManager.getColor("Panel.background")); + JPanel p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("Instructions")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + p.add(instructionsTextPane, new GridBagConstraints(0, 0, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(p, new GridBagConstraints(0, 0, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label1 ---- + p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("Conversion Script")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 150, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + p.add(new JLabel("File:"), new GridBagConstraints(0,0,1,1,0.0,0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + ToolTipHelper.add(controlFileText,"Name and location of the script file (.sql)"); + p.add(controlFileText, new GridBagConstraints(1, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- browseControlFileButton ---- + browseControlFileButton.setText("Browse..."); + ToolTipHelper.add(browseControlFileButton,"Select a script file (.sql)"); + p.add(browseControlFileButton, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(p, new GridBagConstraints(0, 2, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label2 ---- + p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("Databases")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4, 0.0, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + + label2.setText("Server:"); + p.add(label2, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + p.add(serverLabel, new GridBagConstraints(1, 0, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + p.add(refreshButton, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + label3.setText("Input Database:"); + p.add(label3, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + p.add(inputDatabaseCombo, new GridBagConstraints(1, 1, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + label5.setText("New Database:"); + p.add(label5, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + p.add(newDatabaseCombo, new GridBagConstraints(1, 2, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + result.add(p, new GridBagConstraints(0, 4, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label4 ---- + label4.setText("Messages:"); + result.add(label4, new GridBagConstraints(0, 7, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== scrollPane2 ======== + { + scrollPane2.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); + scrollPane2.setViewportView(messagesList); + } + result.add(scrollPane2, new GridBagConstraints(0, 8, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- createRunSpecsButton ---- + createRunSpecsButton.setText("Convert Database"); + ToolTipHelper.add(createRunSpecsButton,"Apply the script file to the input database, creating the new database"); + result.add(createRunSpecsButton, new GridBagConstraints(2, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- doneButton ---- + doneButton.setText("Done"); + ToolTipHelper.add(doneButton,"Close this window"); + result.add(doneButton, new GridBagConstraints(4, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == refreshButton) { + handleRefreshButton(); + } else if(e.getSource() == browseControlFileButton) { + handleBrowseScriptFileButton(); + } else if(e.getSource() == createRunSpecsButton) { + handleConvertButton(); + } else if(e.getSource() == doneButton) { + handleDoneButton(); + } + } + + /** Handle the Refresh button for databases **/ + void handleRefreshButton() { + loadDatabases(); + } + + /** Choose the default conversion script file if it is available **/ + void setDefaultConversionScript() { + try { + File file = null; + switch(mode) { + case MODE_2014_TO_2014A: + file = new File("database/ConversionScripts/Convert2014_CDM_PDM.sql"); + break; + case MODE_2010B_TO_2014: + file = new File("database/ConversionScripts/Convert2010B_CDM_PDM.sql"); + break; + default: + file = new File("database/ConversionScripts/Convert2010A_CDM_PDM.sql"); + break; + } + if(!file.exists()) { + return; + } + String filePath = file.getCanonicalPath(); + controlFileText.setText(""); // clear this in case something goes wrong and we + // cannot load the data + controlFileFullPath = ""; + controlFileType = ""; + controlFileWorksheetName = ""; + + controlFileType = "Text"; + + controlFileText.setText(file.getName()); + controlFileFullPath = file.getCanonicalPath(); + } catch(Exception e) { + // Nothing to do here + } + } + + /** Handle the Browse button for the script file **/ + void handleBrowseScriptFileButton() { + try { + FileDialog fd = new FileDialog(frame, "Select Script File", FileDialog.LOAD); + fd.setVisible(true); + + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + if(!file.exists()) { + return; + } + filePath = file.getCanonicalPath(); + controlFileText.setText(""); // clear this in case something goes wrong and we + // cannot load the data + controlFileFullPath = ""; + controlFileType = ""; + controlFileWorksheetName = ""; + + controlFileType = "Text"; + + controlFileText.setText(file.getName()); + controlFileFullPath = file.getCanonicalPath(); + } catch(Exception e) { + // Nothing to do here + } + } + + /** Handle the Create RunSpecs button **/ + void handleConvertButton() { + try { + resetMessages(); + + File scriptFile = null; + controlFileFullPath = StringUtilities.safeGetString(controlFileFullPath).trim(); + if(controlFileFullPath.length() == 0) { + messages.add("Specify a conversion script."); + messagesHasError = true; + } else { + scriptFile = new File(controlFileFullPath); + if(!scriptFile.exists()) { + messages.add("Unable to find the conversion script file."); + messagesHasError = true; + } + } + + String inputDatabaseName = inputDatabaseCombo.getSelectedItem().toString(); + if(inputDatabaseName != null) { + inputDatabaseName = inputDatabaseName.trim(); + } + if(inputDatabaseName == null || inputDatabaseName.length() == 0) { + messages.add("Specify an input database name."); + messagesHasError = true; + } + + String newDatabaseName = newDatabaseCombo.getSelectedItem().toString(); + if(newDatabaseName != null) { + newDatabaseName = newDatabaseName.trim(); + } + if(newDatabaseName == null || newDatabaseName.length() == 0) { + messages.add("Specify a new database name."); + messagesHasError = true; + } + + if(!messagesHasError) { + if(newDatabaseName.equalsIgnoreCase(inputDatabaseName)) { + messages.add("The input database and new database cannot be the same."); + messagesHasError = true; + } + } + + if(messagesHasError) { + return; + } + + // Convert + DatabaseSelection defaultDatabase = SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + + DatabaseSelection inputDatabase = new DatabaseSelection(); + inputDatabase.serverName = defaultDatabase.serverName; + inputDatabase.databaseName = inputDatabaseName; + + DatabaseSelection outputDatabase = new DatabaseSelection(); + outputDatabase.serverName = defaultDatabase.serverName; + outputDatabase.databaseName = newDatabaseName; + + try { + DatabaseUtilities.executeConversionScript(scriptFile,outputDatabase,inputDatabase,defaultDatabase,messages); + messages.add("Conversion successful."); + } catch(Exception e) { + messages.add("Conversion failed: " + e.getMessage()); + messagesHasError = true; + } + + if(messagesHasError) { + /** + * @issue Unable to convert the database. + **/ + JOptionPane.showMessageDialog(null, + "Unable to convert the database. Check the messages list for details.", + "Convert Database", JOptionPane.ERROR_MESSAGE); + } else { + /** @nonissue **/ + JOptionPane.showMessageDialog(null, + "Database converted.", + "Convert Database", JOptionPane.INFORMATION_MESSAGE); + } + } catch(Exception e) { + /** + * @issue Unable to create RunSpecs + * @explain An error was encountered while the Multiple RunSpec Creator was creating new + * RunSpec files. The most likely causes are insufficient permissions to the + * output folder or invalid characters in the file name prefix. + **/ + Logger.logError(e,"Unable to convert database"); + } finally { + populateMessagesList(); + } + } + + /** Handle the Done button **/ + void handleDoneButton() { + dispose(); + } + + /** Reset the list of messages **/ + void resetMessages() { + messagesHasError = false; + messages.clear(); + populateMessagesList(); + } + + /** Push the list of messages onto the screen **/ + void populateMessagesList() { + messageListModel.clear(); + for(Iterator i=messages.iterator();i.hasNext();) { + String m = (String)i.next(); + messageListModel.addElement(m); + } + } + + /** + * Add a database name to inputDatabaseCombo and newDatabaseCombo but only if it isn't already in the + * the lists. + * @param newDatabaseName name of the database to attempt to place into the database combo boxes. + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + String a = addIfNotInComboBox(newDatabaseName,inputDatabaseCombo); + String b = addIfNotInComboBox(newDatabaseName,newDatabaseCombo); + if(a == null) { + if(b == null) { + return null; + } + return b; + } else { + return a; + } + } + + /** + * Add a database name to a combobox but only if it isn't already in the the lists. + * @param newDatabaseName name of the database to attempt to place into the database combo box. + * @param combobox a listing of database names on screen + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName, ExtendedComboBox combobox) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = combobox.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + combobox.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + inputDatabaseCombo.removeAllItems(); + newDatabaseCombo.removeAllItems(); + // add the default item (no selection) + inputDatabaseCombo.addItem(new String("")); + newDatabaseCombo.addItem(new String("")); + + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the default database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + databases.add(nextDB); + } + results.close(); + } + statement.close(); + } catch(Exception e) { + Logger.logError(e, "Failed to show databases (load databases) in Converter."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that are an output database + ArrayList stringsToRemove = new ArrayList(); + try { + boolean foundOutputTable = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTable = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextTable = results.getString(1); + if(nextTable.equalsIgnoreCase("MOVESOUTPUT")) { + foundOutputTable = true; + break; + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } + // check if this database has any output tables, if so must add + // the databaseName to the remove names list + if(foundOutputTable) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + } + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + inputDatabaseCombo.addItem(nextDB); + newDatabaseCombo.addItem(nextDB); + } + + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + + toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database in Converter."); + } + // set the default selection + inputDatabaseCombo.setSelectedItem(""); + newDatabaseCombo.setSelectedItem(""); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Converter2014Action.java b/gov/epa/otaq/moves/master/gui/Converter2014Action.java new file mode 100644 index 0000000..beed141 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Converter2014Action.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)Converter2014Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Convert MOVES2010B County or Project input to MOVES2014" menu option. + * + * @author Wesley Faler + * @version 2014-07-15 +**/ +public class Converter2014Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "converter2014"; + /** Constant action name. **/ + static final String NAME = + "Convert MOVES2010B County or Project input to MOVES2014"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start the Database Converter GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Use scripts to convert 2010B CDM and PDM databases"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'B'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public Converter2014Action() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Converter2014aAction.java b/gov/epa/otaq/moves/master/gui/Converter2014aAction.java new file mode 100644 index 0000000..f4d45cd --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Converter2014aAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)Converter2014aAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Convert MOVES2014 County or Project input to MOVES2014A" menu option. + * + * @author Wesley Faler + * @version 2015-05-20 +**/ +public class Converter2014aAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "converter2014a"; + /** Constant action name. **/ + static final String NAME = + "Convert MOVES2014 County or Project input to MOVES2014A"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start the Database Converter GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Use scripts to convert 2014 CDM and PDM databases"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = '4'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public Converter2014aAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ConverterAction.java b/gov/epa/otaq/moves/master/gui/ConverterAction.java new file mode 100644 index 0000000..74f4047 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ConverterAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)ConverterAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Convert MOVES2010A County or Project input to MOVES2010B" menu option. + * + * @author Wes Faler + * @version 2014-07-15 +**/ +public class ConverterAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "converter"; + /** Constant action name. **/ + static final String NAME = + "Convert MOVES2010A County or Project input to MOVES2010B"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start the Database Converter GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Use scripts to convert 2010A CDM and PDM databases to 2010B"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'A'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public ConverterAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CopyAction.java b/gov/epa/otaq/moves/master/gui/CopyAction.java new file mode 100644 index 0000000..a50c7dc --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CopyAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)CopyAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Copy menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class CopyAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_COPY = "copy-command"; + /** Constant action name. **/ + static final String NAME_COPY = "Copy"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_COPY = "toolbarButtonGraphics/general/Copy16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_COPY = "toolbarButtonGraphics/general/Copy24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_COPY = "Copy"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_COPY = "Copy text to clipboard"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_COPY = 'C'; + + /** + * Implements the Copy menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public CopyAction() { + putValue(Action.NAME, NAME_COPY); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_COPY)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_COPY)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_COPY); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_COPY); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_COPY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_COPY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CountyDataManagerAction.java b/gov/epa/otaq/moves/master/gui/CountyDataManagerAction.java new file mode 100644 index 0000000..c2413f7 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CountyDataManagerAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)CountyDataManagerAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "County Data Manager" menu option. + * + * @author wgfaler + * @version 2008-09-23 +**/ +public class CountyDataManagerAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "county-data-manager"; + /** Constant action name. **/ + static final String NAME = + "County Data Manager"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start County Data Manager GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Select and Import County-Level Data"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'C'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public CountyDataManagerAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CreateFutureEmissionRatesAction.java b/gov/epa/otaq/moves/master/gui/CreateFutureEmissionRatesAction.java new file mode 100644 index 0000000..0581bd0 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CreateFutureEmissionRatesAction.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)CreateFutureEmissionRatesAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES CreateFutureEmissionRates menu option. + * + * @author EPA-Ed Glover + * @version 2004-10-25 +**/ +public class CreateFutureEmissionRatesAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CREATE_FUTURE_EMISSION_RATES = "create-future-emission-rates"; + /** Constant action name. **/ + static final String NAME_CREATE_FUTURE_EMISSION_RATES = "Update Future Emission Rates"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CREATE_FUTURE_EMISSION_RATES = "FERC"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CREATE_FUTURE_EMISSION_RATES = "Update Future Emission Rates"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_CREATE_FUTURE_EMISSION_RATES = 'Z'; + + /** + * Implements the Create Future Emission Rates menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public CreateFutureEmissionRatesAction() { + putValue(Action.NAME, NAME_CREATE_FUTURE_EMISSION_RATES); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CREATE_FUTURE_EMISSION_RATES); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CREATE_FUTURE_EMISSION_RATES); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CREATE_FUTURE_EMISSION_RATES)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CREATE_FUTURE_EMISSION_RATES); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CustomReportAction.java b/gov/epa/otaq/moves/master/gui/CustomReportAction.java new file mode 100644 index 0000000..a367432 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CustomReportAction.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)CustomReportAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES CustomReport menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class CustomReportAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CUSTOM_REPORT = "custom-report-command"; + /** Constant action name. **/ + static final String NAME_CUSTOM_REPORT = "Custom Report..."; +// CIM:NOT DONE +// static final String SMALL_ICON_CUSTOM_REPORT = +// "toolbarButtonGraphics/general/CustomReport16.gif"; +// static final String LARGE_ICON_CUSTOM_REPORT = +// "toolbarButtonGraphics/general/CustomReport24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CUSTOM_REPORT = "Custom Report"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CUSTOM_REPORT = + "Generate Custom MOVES Report"; +// static final int MNEMONIC_KEY_CUSTOM_REPORT = 'A'; + + /** + * Implements the CustomReport menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public CustomReportAction() { + putValue(Action.NAME, NAME_CUSTOM_REPORT); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_CUSTOM_REPORT)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_CUSTOM_REPORT)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CUSTOM_REPORT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CUSTOM_REPORT); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CUSTOM_REPORT)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CUSTOM_REPORT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/CutAction.java b/gov/epa/otaq/moves/master/gui/CutAction.java new file mode 100644 index 0000000..de693b4 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/CutAction.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)CutAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Cut menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class CutAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_CUT = "cut-command"; + /** Constant action name. **/ + static final String NAME_CUT = "Cut"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_CUT = "toolbarButtonGraphics/general/Cut16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_CUT = "toolbarButtonGraphics/general/Cut24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_CUT = "Cut"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_CUT = + "Cut(remove) text and place on clipboard"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_CUT = 'T'; + + /** + * Implements the Cut menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public CutAction() { + putValue(Action.NAME, NAME_CUT); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_CUT)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_CUT)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_CUT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_CUT); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_CUT)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_CUT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/DataImporterAction.java b/gov/epa/otaq/moves/master/gui/DataImporterAction.java new file mode 100644 index 0000000..f671665 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/DataImporterAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)DataImporterAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Data Importer" menu option. + * + * @author wgfaler + * @version 2008-09-23 +**/ +public class DataImporterAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "data-importer"; + /** Constant action name. **/ + static final String NAME = + "Data Importer"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start Data Importer GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Select and Import Data"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'I'; + + /** + * Implements the Data Importer menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public DataImporterAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Description.java b/gov/epa/otaq/moves/master/gui/Description.java new file mode 100644 index 0000000..312fefb --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Description.java @@ -0,0 +1,170 @@ +/************************************************************************************************** + * @(#)Description.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.util.TreeMap; + +/** + * Class for MOVES Description panel. + * + * Constructs a Description panel, which consists of Description label, Description text control, + * Description scroll pane. Creates and sets the layouts of the controls. Loads/Saves the + * description text from/to a RunSpec. Gets text to be included in the RunSpec print out. + * + * @author Wesley Faler + * @author EPA-elg (modified panel size and word wrap) + * @version 2012-11-09 +**/ +public class Description extends JPanel implements RunSpecEditor { + /** Description label. **/ + JLabel descriptionLabel; + /** Description text control. **/ + JTextArea descriptionText; + /** Description scroll pane. **/ + JScrollPane descriptionScrollPane; + + /** + * Constructs a Description panel, also creates and sets the layouts of the controls. + **/ + public Description() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Description:\r\n"); + if(runspec.description.length() > 0) { + destination.append(runspec.description + "\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + descriptionLabel = new JLabel("Description:"); + descriptionLabel.setName("descriptionLabel"); + descriptionText = new JTextArea(15,30); + descriptionText.setWrapStyleWord(true); + descriptionText.setName("descriptionText"); + ToolTipHelper.add(descriptionText,"Edit description of the RunSpec"); + descriptionScrollPane = new JScrollPane(descriptionText, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + descriptionScrollPane.setName("descriptionScrollPane"); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + + descriptionText.setLineWrap(true); + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(descriptionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(descriptionScrollPane, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "WEST", 1, 1); + add(new JLabel(), gbc); + } + + /** + * Saves the description text to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.description = descriptionText.getText(); + } + + /** + * Loads the description text from a RunSpec. + * @param runspec the RunSpec to get the description text from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + descriptionText.setText(StringUtilities.safeGetString(runspec.description).trim()); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + // The description is acceptable even if blank. + boolean isOK = true; + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(isOK?RunSpecSectionStatus.OK:RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.description = ""; + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.DEFAULTS); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/DrawStateCountyMapAction.java b/gov/epa/otaq/moves/master/gui/DrawStateCountyMapAction.java new file mode 100644 index 0000000..8c7fe9c --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/DrawStateCountyMapAction.java @@ -0,0 +1,37 @@ +/************************************************************************************************** + * @(#)DrawStateCountyMapAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES state/county map menu option. + * + * @author Wesley Faler + * @version 2007-03-13 +**/ +public class DrawStateCountyMapAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_MAP = "state county map"; + /** Constant action name. **/ + static final String NAME_MAP = "Produce State/County Map"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_MAP = "State/County Map"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_MAP = "Produce State/County Map"; + + /** + * Implements the "Draw State/County Map" menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public DrawStateCountyMapAction() { + putValue(Action.NAME, NAME_MAP); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_MAP); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_MAP); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_MAP); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExecuteAction.java b/gov/epa/otaq/moves/master/gui/ExecuteAction.java new file mode 100644 index 0000000..0c0eab4 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExecuteAction.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)ExecuteAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Execute menu option. + * + * @author Cimulus + * @version 2003-08-20 +**/ +public class ExecuteAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXECUTE = "execute-command"; + /** Constant action name. **/ + static final String NAME_EXECUTE = "Execute"; + /** Small icon graphic used for the execute action **/ + static final String SMALL_ICON_EXECUTE = + "toolbarButtonGraphics/media/Play16.gif"; + /** Large icon graphic used for the execute action **/ + static final String LARGE_ICON_EXECUTE = + "toolbarButtonGraphics/media/Play24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXECUTE = "Execute"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXECUTE = "Execute active RunSpec"; + //static final int MNEMONIC_KEY_EXECUTE = 'A'; + + /** + * Implements the Execute menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExecuteAction() { + putValue(Action.NAME, NAME_EXECUTE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_EXECUTE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_EXECUTE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXECUTE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXECUTE); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXECUTE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXECUTE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExecuteDataImporterAction.java b/gov/epa/otaq/moves/master/gui/ExecuteDataImporterAction.java new file mode 100644 index 0000000..30e4f99 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExecuteDataImporterAction.java @@ -0,0 +1,41 @@ +/************************************************************************************************** + * @(#)ExecuteDataImporterAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Execute Data Importer menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class ExecuteDataImporterAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXECUTE_DATA_IMPORTER = + "execute-data-importer-command"; + /** Constant action name. **/ + static final String NAME_EXECUTE_DATA_IMPORTER = "Execute Data Importer..."; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXECUTE_DATA_IMPORTER = "Execute Data Importer"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXECUTE_DATA_IMPORTER = "Execute Data Importer"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_EXECUTE_DATA_IMPORTER = 'D'; + + /** + * Implements the Clear menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExecuteDataImporterAction() { + putValue(Action.NAME, NAME_EXECUTE_DATA_IMPORTER); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXECUTE_DATA_IMPORTER); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXECUTE_DATA_IMPORTER); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXECUTE_DATA_IMPORTER)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXECUTE_DATA_IMPORTER); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExecuteGreetAction.java b/gov/epa/otaq/moves/master/gui/ExecuteGreetAction.java new file mode 100644 index 0000000..9720b2a --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExecuteGreetAction.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)ExecuteGreetAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Execute Greet menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class ExecuteGreetAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXECUTE_GREET = "execute-greet-command"; + /** Constant action name. **/ + static final String NAME_EXECUTE_GREET = "Execute Greet..."; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXECUTE_GREET = "Execute Greet"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXECUTE_GREET = "Execute Greet"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_EXECUTE_GREET = 'G'; + + /** + * Implements the Clear menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExecuteGreetAction() { + putValue(Action.NAME, NAME_EXECUTE_GREET); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXECUTE_GREET); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXECUTE_GREET); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXECUTE_GREET)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXECUTE_GREET); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExitAction.java b/gov/epa/otaq/moves/master/gui/ExitAction.java new file mode 100644 index 0000000..18c1398 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExitAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)ExitAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Exit menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class ExitAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXIT = "exit-command"; + /** Constant action name. **/ + static final String NAME_EXIT = "Exit"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_EXIT = "toolbarButtonGraphics/general/Stop16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_EXIT = "toolbarButtonGraphics/general/Stop24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXIT = "Exit MOVES"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXIT = "Exit MOVES software"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_EXIT = 'X'; + + /** + * Implements the Exit menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExitAction() { + putValue(Action.NAME, NAME_EXIT); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_EXIT)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_EXIT)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXIT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXIT); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXIT)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXIT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExportToNIFAction.java b/gov/epa/otaq/moves/master/gui/ExportToNIFAction.java new file mode 100644 index 0000000..5777a4e --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExportToNIFAction.java @@ -0,0 +1,49 @@ +/************************************************************************************************** + * @(#)ExportToNIFAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES ExportToNIF menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class ExportToNIFAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXPORT_TO_NIF = "export-to-nif-command"; + /** Constant action name. **/ + static final String NAME_EXPORT_TO_NIF = "Export To NIF Format..."; +/** Constant small icon path and file name. **/ +// CIM: NOT DONE +// static final String SMALL_ICON_EXPORT_TO_NIF = +// "toolbarButtonGraphics/general/ExportToNIF16.gif"; +/** Constant large icon path and file name. **/ +// static final String LARGE_ICON_EXPORT_TO_NIF = +// "toolbarButtonGraphics/general/ExportToNIF24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXPORT_TO_NIF = "Export To NIF Format"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXPORT_TO_NIF = + "Export MOVES data to NIF Format"; +// static final int MNEMONIC_KEY_EXPORT_TO_NIF = 'A'; + + /** + * Implements the ExporttoNIF menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExportToNIFAction() { + putValue(Action.NAME, NAME_EXPORT_TO_NIF); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_EXPORT_TO_NIF)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_EXPORT_TO_NIF)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXPORT_TO_NIF); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXPORT_TO_NIF); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXPORT_TO_NIF)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXPORT_TO_NIF); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ExportToPechanAction.java b/gov/epa/otaq/moves/master/gui/ExportToPechanAction.java new file mode 100644 index 0000000..d8f6428 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ExportToPechanAction.java @@ -0,0 +1,51 @@ +/************************************************************************************************** + * @(#)ExportToPechanAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES ExportToPechan menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class ExportToPechanAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_EXPORT_TO_PECHAN = + "export-to-pechan-command"; + /** Constant action name. **/ + static final String NAME_EXPORT_TO_PECHAN = "Export To Pechan Format..."; + /** Constant small icon path and file name. **/ +// CIM: NOT DONE +// static final String SMALL_ICON_EXPORT_TO_PECHAN = +// "toolbarButtonGraphics/general/ExportToPechan16.gif"; + /** Constant large icon path and file name. **/ +// static final String LARGE_ICON_EXPORT_TO_PECHAN = +// "toolbarButtonGraphics/general/ExportToPechan24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_EXPORT_TO_PECHAN = + "Export To Pechan Format"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_EXPORT_TO_PECHAN = + "Export MOVES data to Pechan Format"; +// static final int MNEMONIC_KEY_EXPORT_TO_PECHAN = 'A'; + + /** + * Implements the ExportToPechan menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ExportToPechanAction() { + putValue(Action.NAME, NAME_EXPORT_TO_PECHAN); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_EXPORT_TO_PECHAN)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_EXPORT_TO_PECHAN)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_EXPORT_TO_PECHAN); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_EXPORT_TO_PECHAN); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_EXPORT_TO_PECHAN)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_EXPORT_TO_PECHAN); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Ferc.java b/gov/epa/otaq/moves/master/gui/Ferc.java new file mode 100644 index 0000000..d1bf841 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Ferc.java @@ -0,0 +1,733 @@ +/************************************************************************************************** + * @(#)Ferc.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.filechooser.FileFilter; +import java.io.*; +import java.util.TreeMap; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; + +/** + * Creates, initializes, arranges, and sets the layouts of all the dialog controls + * on the Update Future Emissions Panel. + * Calls the appropriate button handler. The Execute button executes SQL + * statements that produce EmissionRate and SourceBin tables containing + * the future and advanced technology emission rates. + * The database sub-panel allows the user to enter a database name into a JTextField + * This database will contain the new EmissionRate and SourceBin output tables. + * + * @author EPA-Ed Glover + * @author EPA-Mitch C. + * @version 2013-04-17 +**/ +public class Ferc extends JDialog implements ActionListener, + FocusListener { + /** The dialog result, indicates true on Execute button. **/ + public int result = 0; + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** Execute button. **/ + JButton executeButton; + /** Cancel button. **/ + JButton cancelButton; + + /** FERC panel. **/ + JPanel fERCPanel; + /** Short Term data input file panel. **/ + JPanel shortTermSharedFolderPathPanel; + /** Long Term data input file panel. **/ + JPanel longTermSharedFolderPathPanel; + + /** FERC Server label. **/ + JLabel fERCServerLabel; + /** FERC Server text control. **/ + JTextField fERCServer; + /** FERC Database label. **/ + JLabel fERCDatabaseLabel; + /** FERC Database textfield control. **/ + JTextField fERCDatabaseTextField; + + /** Short Term input file commands text control. **/ + JTextField shortTermSharedFolderPathName; + /** Short Term input file commands browse button. **/ + JButton shortTermSharedFolderPathBrowse; + + /** Long Term input file commands text control. **/ + JTextField longTermSharedFolderPathName; + /** Long Term input file commands browse button. **/ + JButton longTermSharedFolderPathBrowse; + + /** + * Used by the Server FocusLost event handler to help determine if the Server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the Server TextField losing focus when the Server name + * hasn't changed.. + **/ + + /** Contains the fERC Server name usually localhost **/ + String fERCPreviousServer; + /** Contains the SQL string prior to execution **/ + String sql; + /** Contains the short Term FERC file name **/ + String shortTermFERCFile; + /** Contains the long Term FERC file name **/ + String longTermFERCFile; + /** Contains the starting file directory from which to start browsing for + Short Term and Long Term FERC Input Files **/ + String defaultFERCFileSearchPath = "C:\\"; + + /** Insures that a valid Short Term FERC file name has been chosen **/ + boolean isShortTermFERCFile; + /** Insures that a valid Long Term FERC file name has been chosen **/ + boolean isLongTermFERCFile; + /** Insures that a valid FERC Database name has been chosen **/ + boolean isDatabaseError; + /** Name of MOVES default database **/ + String defaultDB; + + /** + * Constructs the FERC panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + **/ + public Ferc(JFrame parent) { + super(parent, "Future Emission Rate Calculation in MOVES"); + frame = parent; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(false); + fERCPreviousServer = new String(""); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + pack(); + setModal(true); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(-1,-1); + setVisible(true); //show(); + } + + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + executeButton = new JButton("Execute"); + executeButton.addActionListener(this); + executeButton.setName("executeButton"); + ToolTipHelper.add(executeButton,"Execute the Future Emission Rate Calculator"); + cancelButton = new JButton("Cancel"); + cancelButton.addActionListener(this); + cancelButton.setName("cancelButton"); + ToolTipHelper.add(cancelButton, + "Exit Without Executing the Future Emission Rate Calculator"); + Dimension fERCPanelSize = new Dimension(450,90); + Dimension shortTermFilePanelSize = new Dimension(450,60); + Dimension longTermFilePanelSize = new Dimension(450,60); + fERCPanel = new JPanel(); + fERCPanel.setName("fERCPanel"); + fERCPanel.setBorder(BorderFactory.createTitledBorder( + "Future Emission Rate Database")); + fERCPanel.setPreferredSize(fERCPanelSize); + + shortTermSharedFolderPathPanel = new JPanel(); + shortTermSharedFolderPathPanel.setName("longTermSharedFolderPathPanel"); + shortTermSharedFolderPathPanel.setBorder(BorderFactory.createTitledBorder( + "Short-Term Future Emission Rate File")); + shortTermSharedFolderPathPanel.setPreferredSize(shortTermFilePanelSize); + + + longTermSharedFolderPathPanel = new JPanel(); + longTermSharedFolderPathPanel.setName("longTermSharedFolderPathPanel"); + longTermSharedFolderPathPanel.setBorder(BorderFactory.createTitledBorder( + "Long-Term Future Emission Rate File")); + longTermSharedFolderPathPanel.setPreferredSize(longTermFilePanelSize); + + fERCServerLabel = new JLabel("Server:"); + fERCServerLabel.setName("fERCServerLabel"); + fERCServer = new JTextField(20); + fERCServer.setName("fERCServer"); + fERCServer.addFocusListener(this); + fERCServer.setText(sysConfig.databaseSelections[ + MOVESDatabaseType.DEFAULT.getIndex()].serverName); + ToolTipHelper.add(fERCServer,"Edit the name of the default database server"); + + + fERCDatabaseTextField = new JTextField(20); + fERCDatabaseTextField.setName("fERCDatabaseTextField"); + fERCDatabaseLabel = new JLabel("Database:"); + fERCDatabaseLabel.setName("fERCDatabaseLabel"); + fERCDatabaseTextField.setEditable(true); + ToolTipHelper.add(fERCDatabaseTextField,"Enter the Future Emission Rate Database"); + + shortTermSharedFolderPathName = new JTextField(30); + shortTermSharedFolderPathName.setName("shortTermSharedFolderPathName"); + ToolTipHelper.add(shortTermSharedFolderPathName, + "Choose the Short Term Future Emission Rate File" +" workers"); + shortTermSharedFolderPathBrowse = new JButton("Browse..."); + ToolTipHelper.add(shortTermSharedFolderPathBrowse, + "Select the Short Term Future Emission Rate File"); + shortTermSharedFolderPathBrowse.addActionListener(this); + shortTermSharedFolderPathBrowse.setName("shortTermSharedFolderPathBrowse"); + + + longTermSharedFolderPathName = new JTextField(30); + longTermSharedFolderPathName.setName("longTermSharedFolderPathName"); + ToolTipHelper.add(longTermSharedFolderPathName, + "Choose the Long Term Future Emission Rate File" +" workers"); + longTermSharedFolderPathBrowse = new JButton("Browse..."); + ToolTipHelper.add(longTermSharedFolderPathBrowse, + "Select the Long Term Future Emission Rate File"); + longTermSharedFolderPathBrowse.addActionListener(this); + longTermSharedFolderPathBrowse.setName("longTermSharedFolderPathBrowse"); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + public JPanel arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + fERCPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + fERCPanel.add(fERCServerLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + fERCPanel.add(fERCServer, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + fERCPanel.add(fERCDatabaseLabel, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,1, 1, "WEST", 1, 1); + fERCPanel.add(fERCDatabaseTextField, gbc); + gbc.weightx = 0; + + shortTermSharedFolderPathPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + shortTermSharedFolderPathPanel.add(shortTermSharedFolderPathName, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + shortTermSharedFolderPathPanel.add(shortTermSharedFolderPathBrowse, gbc); + gbc.weightx = 0; + + longTermSharedFolderPathPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 2, 1); + longTermSharedFolderPathPanel.add(longTermSharedFolderPathName, gbc); + gbc.weightx = 1.0; + LayoutUtility.setPositionOnGrid(gbc,2, 0, "WEST", 1, 1); + longTermSharedFolderPathPanel.add(longTermSharedFolderPathBrowse, gbc); + gbc.weightx = 0; + + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + result.add(fERCPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + result.add(shortTermSharedFolderPathPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + result.add(longTermSharedFolderPathPanel, gbc); + JPanel buttonPanel = createButtonsPanel(); + LayoutUtility.setPositionOnGrid(gbc,1,0, "NORTH", 1, 3); + result.add(buttonPanel, gbc); + + return result; + } + + /** + * Creates a panel containing the Execute and Cancel buttons. + * @return the container as JPanel. + **/ + JPanel createButtonsPanel() { + JPanel box = new JPanel(); + box.setLayout(new GridLayout(2,1,5,5)); // 2 rows, 1 column, 5 pixel gaps + box.add(executeButton); + box.add(cancelButton); + + JPanel result = new JPanel(); + result.setLayout(new BorderLayout()); + result.add(box, BorderLayout.NORTH); + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == longTermSharedFolderPathBrowse) { + longTermProcessSharedFolderPathBrowseButton(); + } else if(e.getSource() == shortTermSharedFolderPathBrowse) { + shortTermProcessSharedFolderPathBrowseButton(); + } else if(e.getSource() == executeButton) { + handleExecuteButton(); + } else if(e.getSource() == cancelButton) { + handleCancelButton(); + } + } + + /** + * Execute button handler, will execute the Future Emission Rate Script + * before exiting. + **/ + void handleExecuteButton() { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + + // Check the default server and database + String testServerName = fERCServer.getText(); + String testDatabaseName = + fERCDatabaseTextField.getText(); + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + + if((executionDB.databaseName).equalsIgnoreCase(testDatabaseName)) { + JOptionPane.showMessageDialog(this, + "The Future Emission Rates cannot be inserted into the execution database."); + return; + } + if((defaultDB.databaseName).equalsIgnoreCase(testDatabaseName)) { + JOptionPane.showMessageDialog(this, + "The Future Emission Rates cannot be inserted into the MOVES default database."); + return; + } + + // indicates Execute button + result = 1; + dispose(); + + createFERCDatabase(); + + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = testServerName; + dbSelection.databaseName = testDatabaseName; + Connection db = dbSelection.openConnectionOrNull(); + + if(isShortTermFERCFile & isLongTermFERCFile & !isDatabaseError) { + doLoadFERFiles(db); + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Future Emission Rate Input database successfully created.", 60)); + }else if(!isShortTermFERCFile || !isLongTermFERCFile) { + JOptionPane.showMessageDialog((Component) null, + "A Required Future Emission Rate Data File was NOT Specified", + "WARNING: Future Emission Rate Calculation Failed", + JOptionPane.PLAIN_MESSAGE); + } + } + + /** + * Cancel button handler, will cancel the Future Emission Rate Calculation and + * reset all data file and database choices before closing this dialog. + **/ + void handleCancelButton() { + // indicates Cancel button + result = 0; + dispose(); + } + + /** + * Handles the focus lost event for the fERCServer & outputServer textfields, + * and the fERCDatabaseTextField. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + SystemConfiguration sysConfig = SystemConfiguration.getTheSystemConfiguration(); + JComponent c = (JComponent)e.getComponent(); + if(c == fERCServer) { + if(fERCPreviousServer.equals(fERCServer.getText())) { + return; + } + fERCPreviousServer = fERCServer.getText(); + } + } + + /** + * Currently not used. + * @param e The FocusEvent to be handled. + **/ + public void focusGained(FocusEvent e) { + } + + + /** Handles the Long Term Shared Folder Path Browse button. **/ + public void longTermProcessSharedFolderPathBrowseButton() { + JFileChooser chooser = new JFileChooser(defaultFERCFileSearchPath); + isLongTermFERCFile = false; + chooser.setFileFilter(new FileFilter() { + public boolean accept(File f) { + return f.isDirectory() || WildCardFileNameFilter.doesFilterMatch("*.csv",f.getName()); + } + public String getDescription() { + return "*.csv"; + } + }); + int returnVal = chooser.showOpenDialog(this); + defaultFERCFileSearchPath = chooser.getSelectedFile().getPath(); + if(returnVal == JFileChooser.APPROVE_OPTION) { + longTermSharedFolderPathName.setText(chooser.getSelectedFile().getPath()); + File fileobjLong = chooser.getSelectedFile(); + try { + longTermFERCFile = fileobjLong.getCanonicalPath(); + isLongTermFERCFile = true; + } catch(Exception e) { + Logger.logError(e, "Failed to read the path of the Long Term FER File"); + } + } + } + + + /** Handles the Short Term Shared Folder Path Browse button. **/ + public void shortTermProcessSharedFolderPathBrowseButton() { + JFileChooser chooser = new JFileChooser(defaultFERCFileSearchPath); + isShortTermFERCFile = false; + chooser.setFileFilter(new FileFilter() { + public boolean accept(File f) { + return f.isDirectory() || WildCardFileNameFilter.doesFilterMatch("*.csv",f.getName()); + } + public String getDescription() { + return "*.csv"; + } + }); + int returnVal = chooser.showOpenDialog(this); + defaultFERCFileSearchPath = chooser.getSelectedFile().getPath(); + if(returnVal == JFileChooser.APPROVE_OPTION) { + shortTermSharedFolderPathName.setText(chooser.getSelectedFile().getPath()); + File fileobjShort = chooser.getSelectedFile(); + try { + shortTermFERCFile = fileobjShort.getCanonicalPath(); + isShortTermFERCFile = true; + } catch(Exception e) { + Logger.logError(e, "Failed to read the path of the Short Term FER File"); + } + } + } + + /** createFERCDatabase creates a MySQL database named by the user that holds + * the Future Emission Rates. This database will contain a MySQL table + * called EmissionRates that can be specified as a user input database in + * the ManageInputDataSets routines. + **/ + public void createFERCDatabase() { + + String testDatabaseName = + fERCDatabaseTextField.getText(); + if(testDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + } + + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + + try { + sql="CREATE DATABASE IF NOT EXISTS " + testDatabaseName; + SQLRunner.executeSQL(db,sql); + isDatabaseError = false; + }catch(Exception e) { + isDatabaseError = true; + return; + } + } + + + /** + * This method implements the Future Emission Rate Calculator. + * It uses the current database for temp storage and to produce a + * new EmissionRate table that contains the future emission rates. + * These are suitable for use as MOVES2004 User Input databases. + * + * @param db The database connection + **/ + void doLoadFERFiles(Connection db) { + defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName; + // System.out.println(defaultDB); + try { + + sql="FLUSH TABLES "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS ShortTermFERAdjustment "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS LongTermFERAdjustment "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS ShortTermFERAdjustment2 "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS LongTermFERAdjustment2 "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS EmissionRate"; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS BaseEmissionRate"; + SQLRunner.executeSQL(db,sql); + + sql=" CREATE TABLE ShortTermFERAdjustment ( " + + " `polProcessID` INT, " + + " `opModeID` SMALLINT, " + + " `targetFuelTypeID` SMALLINT, " + + " `targetEngTechID` SMALLINT, " + + " `targetModelYearGroupID` INTEGER, " + + " `fuelTypeID` SMALLINT, " + + " `engTechID` SMALLINT, " + + " `modelYearGroupID` INTEGER, " + + " `fuelEngAdjust` FLOAT, " + + " `dataSourceID` SMALLINT ) "; + SQLRunner.executeSQL(db,sql); + + sql=" CREATE TABLE LongTermFERAdjustment ( " + + " `polProcessID` INT, " + + " `targetFuelTypeID` SMALLINT, " + + " `targetEngTechID` SMALLINT, " + + " `targetModelYearGroupID` INTEGER, " + + " `fuelTypeID` SMALLINT, " + + " `engTechID` SMALLINT, " + + " `modelYearGroupID` INTEGER, " + + " `fuelEngAdjust` FLOAT, " + + " `dataSourceID` SMALLINT ) "; + SQLRunner.executeSQL(db,sql); + + + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(shortTermFERCFile,true) + + " INTO TABLE ShortTermFERAdjustment " + + " FIELDS TERMINATED BY ',' " + + " IGNORE 1 LINES "; + SQLRunner.executeSQL(db, sql); + + + sql = "LOAD DATA INFILE " + + DatabaseUtilities.escapeSQL(longTermFERCFile,true) + + " INTO TABLE LongTermFERAdjustment " + + " FIELDS TERMINATED BY ',' " + + " IGNORE 1 LINES "; + SQLRunner.executeSQL(db, sql); + + + sql = "CREATE INDEX index1 ON ShortTermFERAdjustment(modelYearGroupID)"; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE TABLE ShortTermFERAdjustment2 " + + "SELECT sta.*, myg.shortModYrGroupID " + + "FROM ShortTermFERAdjustment AS sta INNER JOIN " + + defaultDB + ".ModelYearGroup AS myg " + + "ON sta.targetModelYearGroupID = myg.modelYearGroupID "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE INDEX index1 on ShortTermFERAdjustment2 " + + "(polProcessID, opModeID, fuelTypeID, engTechID, modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE TABLE BaseEmissionRate " + + "SELECT er.sourceBinID, polProcessID, opModeID, fuelTypeID, " + + "engTechID, modelYearGroupID,regClassID, engSizeID, " + + "weightClassID, meanBaseRate " + + "FROM " + defaultDB + ".EmissionRate AS er INNER JOIN " + + defaultDB + ".SourceBin USING(sourceBinID) " + + "WHERE regClassID <> 10 AND dataSourceID < 6000 "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE INDEX index1 on BaseEmissionRate " + + "(polProcessID, opModeID, fuelTypeID, engTechID, modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE TABLE EmissionRate ( " + + "sourceBinID BIGINT, " + + "polProcessID INT, " + + "opModeID SMALLINT, " + + "meanBaseRate FLOAT, " + + "meanBaseRateCV FLOAT, " + + "meanBaseRateIM FLOAT, " + + "meanBaseRateIMCV FLOAT, " + + "dataSourceID SMALLINT, " + + "fuelTypeID SMALLINT, " + + "engTechID SMALLINT, " + + "regClassID SMALLINT, " + + "modelYearGroupID INTEGER, " + + "engSizeID SMALLINT, " + + "weightClassID SMALLINT ) "; + SQLRunner.executeSQL(db, sql); + + sql = "INSERT INTO EmissionRate (sourceBinID, polProcessID, opModeID, " + + "meanBaseRate, meanBaseRateCV, dataSourceID, fuelTypeID, engTechID, " + + "regClassID, modelYearGroupID, engSizeID, weightClassID) " + + "SELECT (1000000000000000000 + sta.targetFuelTypeID*10000000000000000 + " + + "sta.targetEngTechID*100000000000000 + ber.regclassid*1000000000000 + " + + "sta.shortModYrGroupID*10000000000 + ber.engSizeID*1000000 + " + + "ber.weightClassID*100) AS sourceBinID, " + + "sta.polProcessID, ber.opModeID, " + + "(ber.meanBaseRate * sta.fuelEngAdjust) AS meanBaseRate, " + + "NULL AS meanBaseRateCV, sta.dataSourceID, " + + "sta.targetFuelTypeID, sta.targetEngTechID, ber.regClassID, " + + "sta.targetModelYearGroupID, ber.engSizeID, ber.weightClassID " + + "FROM ShortTermFERAdjustment2 AS sta INNER JOIN " + + "BaseEmissionRate AS ber " + + "USING (polProcessID, opModeID, fuelTypeID, engTechID, " + + "modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + sql = "DROP INDEX index1 ON BaseEmissionRate "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE UNIQUE INDEX index2 ON BaseEmissionRate " + + "(sourceBinID, polProcessID, opModeID) "; + SQLRunner.executeSQL(db, sql); + + sql = "REPLACE INTO BaseEmissionRate " + + "(sourceBinID, polProcessID, opModeID, " + + "fuelTypeID, engTechID, regClassiD, " + + "modelYearGroupID, engSizeID, weightClassID, meanBaseRate) " + + "SELECT sourceBinID, polProcessID, opModeID, fuelTypeID, " + + "engTechID, regClassID,modelYearGroupID, engSizeID, " + + "weightClassID, meanBaseRate " + + "FROM EmissionRate "; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE INDEX index4 ON BaseEmissionRate " + + "(polProcessID, fuelTypeID, engTechID, modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + + sql = "INSERT INTO BaseEmissionRate " + + "SELECT EmissionRate.sourceBinID, " + + "polProcessID, opModeID, fuelTypeID, engTechID, " + + "modelYearGroupID, regClassID, engSizeID, weightClassID, " + + "meanBaseRate " + + "FROM " + defaultDB + ".EmissionRate INNER JOIN " + + defaultDB + ".SourceBin USING(sourceBinID) " + + "WHERE regClassID = 10 AND dataSourceID < 6000 "; + SQLRunner.executeSQL(db, sql); + + + sql = "CREATE INDEX index1 ON LongTermFERAdjustment(modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + + sql = "CREATE TABLE LongTermFERAdjustment2 " + + "SELECT sta.*, myg.shortModYrGroupID " + + "FROM LongTermFERAdjustment AS sta INNER JOIN " + + defaultDB + ".ModelYearGroup AS myg " + + "ON sta.targetModelYearGroupID = myg.modelYearGroupID " ; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE INDEX index1 on LongTermFERAdjustment2 " + + "(polProcessID, fuelTypeID, engTechID, modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + + sql = "CREATE UNIQUE INDEX index3 ON EmissionRate " + + "(sourceBinID, polProcessID, opModeID) "; + SQLRunner.executeSQL(db, sql); + + sql = "REPLACE INTO EmissionRate (sourceBinID, polProcessID, opModeID, " + + "meanBaseRate, meanBaseRateCV, dataSourceID, " + + "fuelTypeID, engTechID, regClassID, " + + "modelYearGroupID, engSizeID, weightClassID) " + + "SELECT (1000000000000000000 + lta.targetFuelTypeID*10000000000000000 + " + + "lta.targetEngTechID*100000000000000 + ber.regClassid*1000000000000 + " + + "lta.shortModYrGroupID*10000000000 + ber.engSizeID*1000000 + " + + "ber.weightClassID*100) AS sourceBinID, " + + "lta.polProcessID, ber.opModeID, " + + "(ber.meanBaseRate * lta.fuelEngAdjust) AS meanBaseRate, " + + "NULL AS meanBaseRateCV, lta.dataSourceID, " + + "lta.targetFuelTypeID, lta.targetEngTechID, ber.regClassID, " + + "lta.targetModelYearGroupID, ber.engSizeID, ber.weightClassID " + + "FROM LongTermFERAdjustment2 AS lta INNER JOIN " + + "BaseEmissionRate AS ber " + + "USING (polProcessID, fuelTypeID, engTechID, modelYearGroupID) "; + SQLRunner.executeSQL(db, sql); + + sql = "DROP TABLE IF EXISTS SourceBin" ; + SQLRunner.executeSQL(db, sql); + + sql = "CREATE TABLE SourceBin ( " + + "sourceBinID BIGINT, " + + "fuelTypeID SMALLINT, " + + "engTechID SMALLINT, " + + "regClassID SMALLINT, " + + "modelYearGroupID INTEGER, " + + "engSizeID SMALLINT, " + + "weightClassID SMALLINT)"; + SQLRunner.executeSQL(db, sql); + + sql = "INSERT INTO SourceBin " + + "SELECT sourceBinID, fuelTypeID, engTechID, regClassID, " + + "modelYearGroupID, engSizeID, weightClassID " + + "FROM EmissionRate GROUP BY sourceBinID "; + SQLRunner.executeSQL(db, sql); + + sql = "ALTER TABLE EmissionRate " + + "DROP COLUMN fuelTypeID, " + + "DROP COLUMN engTechID, " + + "DROP COLUMN regClassID, " + + "DROP COLUMN modelYearGroupID, " + + "DROP COLUMN engSizeID, " + + "DROP COLUMN weightClassID "; + SQLRunner.executeSQL(db, sql); +/* + sql="DROP TABLE IF EXISTS ShortTermFERAdjustment "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS LongTermFERAdjustment "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS ShortTermFERAdjustment2 "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS LongTermFERAdjustment2 "; + SQLRunner.executeSQL(db,sql); + + sql="DROP TABLE IF EXISTS BaseEmissionRate"; + SQLRunner.executeSQL(db,sql); +*/ + sql="FLUSH TABLES "; + SQLRunner.executeSQL(db,sql); + + } catch (SQLException e) { + Logger.logSqlError(e, "SQL error in FER Adjustment File Loading", sql); + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/GeneralOutput.java b/gov/epa/otaq/moves/master/gui/GeneralOutput.java new file mode 100644 index 0000000..cbe17ab --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/GeneralOutput.java @@ -0,0 +1,1025 @@ +/************************************************************************************************** + * @(#)GeneralOutput.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.plaf.metal.MetalComboBoxUI; +import javax.swing.plaf.basic.BasicComboBoxRenderer; +import javax.swing.plaf.basic.*; +import java.sql.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import java.util.*; + +/** + * Class for MOVES GeneralOutput panel. + * + * Panel contains the following output database controls, the Server Textbox, the Database names + * combo box, the Create Database button, tthe Time Factors Option box, the Emission option + * checkbox, the Time units combo box, the Mass Units combo box, and energy Units combobox. The + * following is the arrangement of controls on the panel. + *
    + *	Server (text)		Database (combobox)
    + *					Create Database (button)
    + *
    + * Output Time Period (combobox: hour, day, month, year)
    + *
    + * Output
    + *	Time factors (checkbox)
    + *	Mass Units (combobox: Kilograms, Grams, Pounds, U. S. Ton)
    + *	Energy Units (combobox: Joules, Million BTU)
    + * 
    + * + * This class creates, initializes, and sets the layouts of the controls, + * opens a connection to the selected server and database, + * loads/saves the server and database names from/to a RunSpec, + * loads output time step combo box with the options available for the current Time Span + * selections, and adjusts unit combo boxes based on the checkbox settings. + * + * @author Wesley Faler + * @author Mitch C + * @author Gwo Shyu, EPA (Fix Alpha Testing Bug 31) + * @author Tim Hull + * @version 2015-05-21 +**/ +public class GeneralOutput extends JPanel implements ActionListener, + FocusListener, RunSpecEditor { + /** Panel contains output database controls. **/ + JPanel outputDatabasePanel; + /** Panel contains output. **/ + JPanel outputPanel; + /** Panel contains activity. **/ + JPanel activityPanel; + + /** Server label. **/ + JLabel serverLabel; + /** Server text control. **/ + JTextField server; + + /** Database label. **/ + JLabel databaseLabel; + /** Database combo control. **/ + ExtendedComboBox databaseCombo; + /** Run droplist ToolTip **/ + JToolTip databaseToolTip; + + /** Data Exists label. **/ + JLabel dataExistsLabel; + + /** Create Database button. **/ + JButton createDatabase; + /** Refresh databases button **/ + JButton refresh; + + /** Data Exists image icon. **/ + ImageIcon dataExistsImage; + + /** VMT option checkbox. **/ + JCheckBox VMT; + /** SHO option checkbox **/ + JCheckBox SHO; + /** SH option checkbox **/ + JCheckBox SH; + /** SHP option checkbox **/ + JCheckBox SHP; + /** SH Idling checkbox **/ + JCheckBox SHIdling; + /** Starts checkbox **/ + JCheckBox Starts; + /** Population checkbox **/ + JCheckBox Population; + + /** Mass Units label. **/ + JLabel massUnitsLabel; + /** Mass Units combo control. **/ + ExtendedComboBox massUnitsCombo; + + /** Energy Units label. **/ + JLabel energyUnitsLabel; + /** Energy Units combo control. **/ + ExtendedComboBox energyUnitsCombo; + + /** Distance Units label. **/ + JLabel distanceUnitsLabel; + /** Distance Units combo control. **/ + ExtendedComboBox distanceUnitsCombo; + + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = new String(); + + /** + * Constructs a GeneralOutput panel, also creates and sets the layouts of the controls. + **/ + public GeneralOutput() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("General Output:\r\n"); + String appendText = new String(""); + if((runspec.outputDatabase.serverName != null) + && (runspec.outputDatabase.serverName.length() > 0)) { + appendText = runspec.outputDatabase.serverName; + } else { + appendText = "[using default]"; + } + destination.append("\tOutput Database Server Name: " + appendText + "\r\n"); + if((runspec.outputDatabase.databaseName != null) + && (runspec.outputDatabase.databaseName.length() > 0)) { + appendText = runspec.outputDatabase.databaseName; + } else { + appendText = "[using default]"; + } + destination.append("\tOutput Database Name: " + appendText + "\r\n"); + + destination.append("\tUnits:\r\n"); + if(runspec.outputFactors.massMeasurementSystem!=null) { + destination.append("\t\tMass Units: " + runspec.outputFactors.massMeasurementSystem + "\r\n"); + } + if(runspec.outputFactors.energyMeasurementSystem!=null) { + destination.append("\t\tEnergy Units: " + runspec.outputFactors.energyMeasurementSystem + "\r\n"); + } + if(runspec.outputFactors.distanceMeasurementSystem!=null) { + destination.append("\t\tDistance Units: " + runspec.outputFactors.distanceMeasurementSystem + "\r\n"); + } + + destination.append("\tActivity Outputs:\r\n"); + boolean hasActivity = false; + if(runspec.outputVMTData) { + hasActivity = true; + destination.append("\t\tDistance Traveled\r\n"); + } + if(runspec.outputSH) { + hasActivity = true; + destination.append("\t\tSource Hours\r\n"); + } + if(runspec.outputSHIdling) { + hasActivity = true; + destination.append("\t\tHotelling Hours\r\n"); + } + if(runspec.outputSHO) { + hasActivity = true; + destination.append("\t\tSource Hours Operating\r\n"); + } + if(runspec.outputSHP) { + hasActivity = true; + destination.append("\t\tSource Hours Parked\r\n"); + } + if(runspec.outputPopulation) { + hasActivity = true; + destination.append("\t\tPopulation\r\n"); + } + if(runspec.outputStarts) { + hasActivity = true; + destination.append("\t\tStarts\r\n"); + } + if(!hasActivity) { + destination.append("\t\t[No Activity Outputs Selected]\r\n"); + } + + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + Dimension outputDatabasePanelSize = new Dimension(480, 130); // 480x100 + outputDatabasePanel = new JPanel(); + outputDatabasePanel.setName("outputDatabasePanel"); + outputDatabasePanel.setBorder(BorderFactory.createTitledBorder( + "Output Database")); + outputDatabasePanel.setPreferredSize(outputDatabasePanelSize); + + Dimension outputPanelSize = new Dimension(240,240); + outputPanel = new JPanel(); + outputPanel.setName("outputPanel"); + outputPanel.setBorder(BorderFactory.createTitledBorder("Units")); + outputPanel.setPreferredSize(outputPanelSize); + + Dimension activityPanelSize = new Dimension(235, 240); // 240x180 + activityPanel = new JPanel(); + activityPanel.setName("activityPanel"); + activityPanel.setBorder(BorderFactory.createTitledBorder("Activity")); + activityPanel.setPreferredSize(activityPanelSize); + + serverLabel = new JLabel("Server:"); + serverLabel.setName("serverLabel"); + server = new JTextField(10); + ToolTipHelper.add(server,"Edit the name of the server where the output database will be located"); + server.setName("server"); + server.addFocusListener(this); + server.setColumns(10); + + databaseLabel = new JLabel("Database:"); + databaseLabel.setName("databaseLabel"); + databaseCombo = new ExtendedComboBox(); + Dimension d = databaseCombo.getPreferredSize(); + databaseCombo.setPreferredSize(new Dimension(250, d.height)); // 150 + databaseCombo.setPopupWidth(databaseCombo.getPreferredSize().width); + databaseCombo.setName("databaseCombo"); + databaseCombo.addActionListener(this); + databaseCombo.setEditable(true); + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo,"Edit or select the name of the database in which the output will be stored"); + + dataExistsImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + dataExistsLabel = new JLabel("Data is already in this database.", dataExistsImage, + JLabel.LEFT); + dataExistsLabel.setName("dataExistsLabel"); + dataExistsLabel.setHorizontalTextPosition(JLabel.RIGHT); + dataExistsLabel.setVerticalTextPosition(JLabel.CENTER); + createDatabase = new JButton("Create Database..."); + createDatabase.setName("createDatabase"); + createDatabase.addActionListener(this); + ToolTipHelper.add(createDatabase,"Create the output database if it does not already exist"); + + refresh = new JButton("Refresh"); + refresh.setName("refresh"); + refresh.addActionListener(this); + ToolTipHelper.add(refresh,"Refresh the list of available databases"); + + VMT = new JCheckBox("Distance Traveled"); + VMT.setName("VMT"); + ToolTipHelper.add(VMT,"Include distance traveled in simulation"); + VMT.setSelected(false); // Gwo Shyu + + SHO = new JCheckBox("Source Hours Operating"); + SHO.setName("SHO"); + ToolTipHelper.add(SHO,"Include Source Hours Operating"); + SHO.setSelected(false); + + SH = new JCheckBox("Source Hours"); + SH.setName("SH"); + ToolTipHelper.add(SH,"Include Source Hours"); + SH.setSelected(false); + + SHP = new JCheckBox("Source Hours Parked"); + SHP.setName("SHP"); + ToolTipHelper.add(SHP,"Include Source Hours Parked"); + SHP.setSelected(false); + + SHIdling = new JCheckBox("Hotelling Hours"); + SHIdling.setName("SHIdling"); + ToolTipHelper.add(SHIdling,"Include Hotelling Hours"); + SHIdling.setSelected(false); + + Starts = new JCheckBox("Starts"); + Starts.setName("Starts"); + ToolTipHelper.add(Starts,"Include Starts"); + Starts.setSelected(false); + + Population = new JCheckBox("Population"); + Population.setName("Population"); + ToolTipHelper.add(Population,"Include Population"); + Population.setSelected(false); + + massUnitsLabel = new JLabel("Mass Units:"); + massUnitsLabel.setName("massUnitsLabel"); + massUnitsCombo = new ExtendedComboBox(); + massUnitsCombo.setName("massUnitsCombo"); + massUnitsCombo.addActionListener(this); + massUnitsCombo.setEditable(false); + for(Iterator i = MassMeasurementSystem.allTypes.iterator(); i.hasNext();) { + massUnitsCombo.addItem(i.next()); + } + massUnitsCombo.setSelectedIndex(-1); + ToolTipHelper.add(massUnitsCombo,"Select the mass units to use for output data"); + + energyUnitsLabel = new JLabel("Energy Units:"); + energyUnitsLabel.setName("energyUnitsLabel"); + energyUnitsCombo = new ExtendedComboBox(); + energyUnitsCombo.setName("energyUnitsCombo"); + energyUnitsCombo.addActionListener(this); + energyUnitsCombo.setEditable(false); + for(Iterator i = EnergyMeasurementSystem.allTypes.iterator(); i.hasNext();) { + energyUnitsCombo.addItem(i.next()); + } + energyUnitsCombo.setSelectedIndex(-1); + ToolTipHelper.add(energyUnitsCombo,"Select the energy units to use for the output data"); + + distanceUnitsLabel = new JLabel("Distance Units:"); + distanceUnitsLabel.setName("distanceUnitsLabel"); + distanceUnitsCombo = new ExtendedComboBox(); + distanceUnitsCombo.setName("distanceUnitsCombo"); + distanceUnitsCombo.addActionListener(this); + distanceUnitsCombo.setEditable(false); + for(Iterator i = DistanceMeasurementSystem.allTypes.iterator(); i.hasNext();) { + DistanceMeasurementSystem iterItem = (DistanceMeasurementSystem) i.next(); + distanceUnitsCombo.addItem (iterItem); + } + distanceUnitsCombo.setSelectedIndex(-1); + ToolTipHelper.add(distanceUnitsCombo,"Select the distance units to use for the output data"); + + massUnitsCombo.setEnabled(true); + energyUnitsCombo.setEnabled(true); + distanceUnitsCombo.setEnabled(true); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + outputDatabasePanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 5; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + outputDatabasePanel.add(serverLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 2, 1); + outputDatabasePanel.add(server, gbc); + LayoutUtility.setPositionOnGrid(gbc,4,0, "WEST", 1, 1); + outputDatabasePanel.add(refresh, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + outputDatabasePanel.add(databaseLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 3, 1); + outputDatabasePanel.add(databaseCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,4,1, "WEST", 1, 1); + outputDatabasePanel.add(createDatabase, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 5, 1); + outputDatabasePanel.add(dataExistsLabel, gbc); + + + JPanel p = new JPanel(); + p.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + p.add(massUnitsLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 1); + p.add(massUnitsCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + p.add(energyUnitsLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 1, 1); + p.add(energyUnitsCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + p.add(distanceUnitsLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,2, "WEST", 1, 1); + p.add(distanceUnitsCombo, gbc); + + outputPanel.add(p,BorderLayout.NORTH); + outputPanel.add(Box.createVerticalGlue(),BorderLayout.CENTER); + + + p = new JPanel(); + p.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 7; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + p.add(VMT, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + p.add(SH, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + p.add(SHIdling, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,3, "WEST", 1, 1); + p.add(SHO, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,4, "WEST", 1, 1); + p.add(SHP, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,5, "WEST", 1, 1); + p.add(Population, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,6, "WEST", 1, 1); + p.add(Starts, gbc); + + activityPanel.add(p,BorderLayout.NORTH); + activityPanel.add(Box.createVerticalGlue(),BorderLayout.CENTER); + + + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 5; + gbc.gridheight = 9; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 5, 2); + add(outputDatabasePanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,3, "WEST", 2, 6); + add(outputPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,3, "WEST", 2, 6); + add(activityPanel, gbc); + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentOutputDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + Connection db = dbSelection.openConnectionOrNull(); + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the output server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + //long start = System.currentTimeMillis(); + //Logger.log(LogMessageCategory.INFO,"Loading output databases"); + databaseCombo.removeAllItems(); + // add the default item (no selection) + databaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentOutputDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the output database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + //databaseCombo.addItem(nextDB); + databases.add(nextDB); + } + results.close(); + } + statement.close(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases) " + + "in GeneralOutput."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an output database + //ArrayList stringsToRemove = new ArrayList(); + try { + /* + boolean foundOutputTable = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTable = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextTable = results.getString(1); + if(nextTable.equalsIgnoreCase("MOVESOUTPUT")) { + foundOutputTable = true; + break; + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTable) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + //databaseCombo.removeItem(stringsToRemove.get(i)); + } + */ + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + databaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database " + + "in GeneralOutput."); + } + // set the default selection + databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + //long end = System.currentTimeMillis(); + //Logger.log(LogMessageCategory.INFO,"Done loading output databases: " + (end - start) + " ms"); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == createDatabase) { + processCreateDatabaseButton(); + } else if(e.getSource() == refresh) { + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + loadDatabases(); + } else if(e.getSource() == databaseCombo) { + processDatabaseComboChange(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == massUnitsCombo || e.getSource() == distanceUnitsCombo + || e.getSource() == energyUnitsCombo ) { + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + } + + /** Handles the database combo change. **/ + public void processDatabaseComboChange() { + if(databaseCombo.getSelectedItem() == null) { + showExistingDataWarning(false); + return; + } + if(databaseCombo.getSelectedItem().toString().length() == 0) { + showExistingDataWarning(false); + return; + } + + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + String sql; + PreparedStatement statement; + + // try to connect to the new selection + Connection db = openCurrentOutputDatabase(false); + if(null == db) { + showExistingDataWarning(false); + return; + } + try { + sql = "SELECT COUNT(*) FROM MOVESOUTPUT"; + statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + results.next(); + int count = results.getInt(1); + showExistingDataWarning(count != 0); + results.close(); + } + statement.close(); + } catch(Exception e) { + showExistingDataWarning(false); + } + DatabaseUtilities.closeConnection(db); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Handles the Create Database button. Allows the user to run this command even if a + * database is currently selected. This has the effect of safely adding any missing + * output tables. + **/ + public void processCreateDatabaseButton() { + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + int createStatus = dbSelection.safeCreateDatabase("database/CreateOutput.sql"); + if(DatabaseSelection.CREATED == createStatus) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Output Database successfully created.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + } else if(DatabaseSelection.EXISTS == createStatus) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Output Database already exists.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + } else { + Logger.log(LogMessageCategory.ERROR, + "Could not create the Output Database."); + } + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** + * Handles the focus lost event for the server textfield. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + if(previousServer.equals(server.getText())) { + return; + } + previousServer = server.getText(); + loadDatabases(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + + /** + * Currently not used. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + } + + /** + * Saves the server and database names to a RunSpec. + * @param runspec The RunSpec to set the info. + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.outputDatabase.serverName = server.getText(); + runspec.outputDatabase.databaseName = databaseCombo.getSelectedItem().toString(); + DatabaseConnectionManager.setOutputDatabase(runspec.outputDatabase.serverName, runspec.outputDatabase.databaseName); + + runspec.outputFactors.massMeasurementSystem = + (MassMeasurementSystem)massUnitsCombo.getSelectedItem(); + runspec.outputFactors.energyMeasurementSystem = + (EnergyMeasurementSystem)energyUnitsCombo.getSelectedItem(); + runspec.outputFactors.distanceMeasurementSystem = + (DistanceMeasurementSystem)distanceUnitsCombo.getSelectedItem(); + + if(CompilationFlags.DO_RATES_FIRST) { + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { // If making Rates outputs... + runspec.outputVMTData = runspec.usesEvapRates(); + runspec.outputPopulation = true; + runspec.outputSHO = false; + runspec.outputSH = false; + runspec.outputSHP = false; + runspec.outputSHIdling = true; + runspec.outputStarts = true; + } else { // If making Inventory outputs... + runspec.outputVMTData = VMT.isSelected() && VMT.isEnabled(); + runspec.outputPopulation = Population.isSelected(); + runspec.outputSHO = SHO.isSelected(); + runspec.outputSH = SH.isSelected(); + runspec.outputSHP = SHP.isSelected(); + runspec.outputSHIdling = SHIdling.isSelected(); + runspec.outputStarts = Starts.isSelected(); + } + } else { + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + runspec.outputVMTData = true; + runspec.outputPopulation = true; + } else { + runspec.outputVMTData = VMT.isSelected() && VMT.isEnabled(); + runspec.outputPopulation = Population.isSelected(); + } + runspec.outputSHO = SHO.isSelected(); + runspec.outputSH = SH.isSelected(); + runspec.outputSHP = SHP.isSelected(); + runspec.outputSHIdling = SHIdling.isSelected(); + runspec.outputStarts = Starts.isSelected(); + } + } + + /** + * Loads the server and database names from a RunSpec. + * @param runspec The RunSpec to get the server and database names from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + showExistingDataWarning(false); + if(runspec.outputDatabase.serverName != null) { + server.setText(runspec.outputDatabase.serverName); + } else { + server.setText(new String("")); + } + // set the saved serverName, will re-init the connection pool + previousServer = runspec.outputDatabase.serverName; + loadDatabases(); + databaseCombo.setSelectedItem(runspec.outputDatabase.databaseName); + massUnitsCombo.setSelectedItem(runspec.outputFactors.massMeasurementSystem); + energyUnitsCombo.setSelectedItem(runspec.outputFactors.energyMeasurementSystem); + distanceUnitsCombo.setSelectedItem(runspec.outputFactors.distanceMeasurementSystem); + + if(CompilationFlags.DO_RATES_FIRST) { + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { // If making Rates outputs... + runspec.outputVMTData = runspec.usesEvapRates(); + VMT.setSelected(runspec.usesEvapRates()); + VMT.setEnabled(false); + Population.setSelected(true); + Population.setEnabled(false); + SHO.setSelected(false); + SHO.setEnabled(false); + SH.setSelected(false); + SH.setEnabled(false); + SHP.setSelected(false); + SHP.setEnabled(false); + SHIdling.setSelected(true); + SHIdling.setEnabled(false); + Starts.setSelected(true); + Starts.setEnabled(false); + } else { // making Inventory outputs... + VMT.setSelected(runspec.outputVMTData); + VMT.setEnabled(true); + Population.setSelected(runspec.outputPopulation); + Population.setEnabled(true); + SHO.setSelected(runspec.outputSHO); + SHO.setEnabled(true); + SH.setSelected(runspec.outputSH); + SH.setEnabled(true); + SHP.setSelected(runspec.outputSHP); + SHP.setEnabled(true); + SHIdling.setSelected(runspec.outputSHIdling); + SHIdling.setEnabled(true); + Starts.setSelected(runspec.outputStarts); + Starts.setEnabled(true); + } + } else { + VMT.setSelected(runspec.outputVMTData); + VMT.setEnabled(runspec.scale != ModelScale.MESOSCALE_LOOKUP); + Population.setSelected(runspec.outputPopulation); + Population.setEnabled(runspec.scale != ModelScale.MESOSCALE_LOOKUP); + SHO.setSelected(runspec.outputSHO); + SH.setSelected(runspec.outputSH); + SHP.setSelected(runspec.outputSHP); + SHIdling.setSelected(runspec.outputSHIdling); + Starts.setSelected(runspec.outputStarts); + } + + adjustGUI(runspec); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + boolean isOk = true; + if(runspec.outputFactors == null) { + isOk = false; + } else if(!runspec.outputFactors.isValid()) { + isOk = false; + } + // try to connect to the runspec's output database + /* Per EPA Task 130 Section 2.9. Database does not have to exist prior to execution. + Connection db = openCurrentOutputDatabase(false); + if(null == db) { + isOk = false; + } else { + DatabaseUtilities.closeConnection(db); + } + */ + + if(isOk) { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = runspec.outputDatabase.serverName; + dbSelection.databaseName = runspec.outputDatabase.databaseName; + isOk = MOVESEngine.isOutputDatabaseNameValid(dbSelection) == null; + } + + // Output database name cannot be equal to input database. + if(isOk) { + for(Iterator i=runspec.databaseSelectionInputSets.iterator();i.hasNext();) { + DatabaseSelection userSelection = (DatabaseSelection)i.next(); + if(userSelection.databaseName. + equalsIgnoreCase(runspec.outputDatabase.databaseName)) { + isOk = false; + break; + } + } + } + + // Enforce the requirement that emission rates require VMT and population + if(isOk && runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + if(CompilationFlags.DO_RATES_FIRST) { + runspec.outputVMTData = runspec.usesEvapRates(); + isOk = runspec.outputPopulation && runspec.outputSHIdling && runspec.outputStarts; + } else { + isOk = runspec.outputVMTData && runspec.outputPopulation; + } + } + + sections.remove(getName()); + RunSpecSectionStatus status; + if(isOk) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } + + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.outputDatabase.serverName = new String(""); + runspec.outputDatabase.databaseName = new String(""); + DatabaseConnectionManager.setOutputDatabase(runspec.outputDatabase.serverName, runspec.outputDatabase.databaseName); + + runspec.outputFactors = new OutputFactors(); + + runspec.outputVMTData = false; + runspec.outputSHO = false; + runspec.outputSH = false; + runspec.outputSHP = false; + runspec.outputSHIdling = false; + runspec.outputStarts = false; + runspec.outputPopulation = false; + + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + adjustGUI(runspec); + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Shows the existing data warning icon, based on the current database selection. + * @param isShow boolean value indicates whether to show the warning image or not + **/ + void showExistingDataWarning(boolean isShow) { + if(dataExistsLabel == null) { + return; + } + dataExistsLabel.setVisible(isShow); + if(isShow) { + dataExistsImage = new ImageIcon( + "gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + } else { + dataExistsImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/blank.gif"); + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + Models.ModelCombination mc = runspec.getModelCombination(); + switch (mc) { + case M2: // Nonroad + runspec.outputVMTData = false; + runspec.outputSHO = false; + runspec.outputSH = false; + runspec.outputSHP = false; + runspec.outputSHIdling = false; + runspec.outputStarts = false; + runspec.outputPopulation = false; + break; + } + return null; + } + + /** + * Set GUI items according to the model type (Nonroad and/or Onroad). + * @param runspec The simulation description. + **/ + private void adjustGUI(RunSpec runspec) { + Models.ModelCombination mc = runspec.getModelCombination(); + switch (mc) { + case M2: // Nonroad + activityPanel.setVisible(false); + VMT.setSelected(false); + SHO.setSelected(false); + SH.setSelected(false); + SHP.setSelected(false); + SHIdling.setSelected(false); + Starts.setSelected(false); + Population.setSelected(false); + /* + massUnitsCombo.setSelectedIndex(3); + energyUnitsCombo.setSelectedIndex(1); + distanceUnitsCombo.setSelectedIndex(0); + */ + break; + default: + activityPanel.setVisible(true); + /* + massUnitsCombo.setSelectedIndex(-1); + energyUnitsCombo.setSelectedIndex(-1); + distanceUnitsCombo.setSelectedIndex(-1); + */ + break; + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/IMGUI.java b/gov/epa/otaq/moves/master/gui/IMGUI.java new file mode 100644 index 0000000..0f02050 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/IMGUI.java @@ -0,0 +1,30 @@ +/************************************************************************************************** + * @(#)IMGUI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import java.io.*; +import java.util.*; +import java.text.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.*; + +/** + * GUI for creating and displaying IM coverage data. + * + * @author wfaler + * @version 2011-09-10 +**/ +public class IMGUI { + // This class have been removed. No code should reference this file. +} diff --git a/gov/epa/otaq/moves/master/gui/IMGUIAction.java b/gov/epa/otaq/moves/master/gui/IMGUIAction.java new file mode 100644 index 0000000..3561f52 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/IMGUIAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** + * @(#)IMGUIAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "IM/Reflash Importer" menu option. + * + * @author W. Aikman + * @author Wesley Faler + * @version 2009-12-14 +**/ +public class IMGUIAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_IM_GUI = + "display-edit-im-program-coverage-records"; + /** Constant action name. **/ + static final String NAME_IM_GUI = + "I/M Importer"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_IM_GUI = + "Update I/M"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_IM_GUI = + "Select and Import I/M Program Data"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_IM_GUI = 'M'; + + /** + * Implements the IM GUI menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public IMGUIAction() { + putValue(Action.NAME, NAME_IM_GUI); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_IM_GUI); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_IM_GUI); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_IM_GUI)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_IM_GUI); + } +} diff --git a/gov/epa/otaq/moves/master/gui/InternalControlStrategies.java b/gov/epa/otaq/moves/master/gui/InternalControlStrategies.java new file mode 100644 index 0000000..be61067 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/InternalControlStrategies.java @@ -0,0 +1,1044 @@ +/************************************************************************************************** + * @(#)InternalControlStrategies.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.util.*; +import java.io.*; +import javax.swing.JOptionPane; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.InternalControlStrategy; +import gov.epa.otaq.moves.master.framework.InternalControlStrategyPanel; +import gov.epa.otaq.moves.master.framework.InternalControlStrategySimpleInstance; +import gov.epa.otaq.moves.master.framework.InternalControlStrategySingleInstanceOnly; +import gov.epa.otaq.moves.master.framework.IImportExportHandler; +import gov.epa.otaq.moves.master.framework.IExportDefaultHandler; +import gov.epa.otaq.moves.master.runspec.RunSpecXML; + +/** + * Class for MOVES InternalControlStrategies panel. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2015-03-17 +**/ +public class InternalControlStrategies extends JPanel implements RunSpecEditor, ActionListener, + ListSelectionListener { + /** Panel color. **/ + Color panelColor; + /** Text color. **/ + Color textColor; + /** Label above list of loaded objects **/ + JLabel listLabel; + /** list model for list of loaded objects **/ + DefaultListModel instancesListModel; + /** instances list **/ + JList instancesList; + /** scroll pane allowing instancesList to scroll **/ + JScrollPane instancesScrollPane; + /** Button for creating a new instance of an InternalControlStrategy **/ + JButton newButton; + /** Button for importing an InternalControlStrategy already stored as XML **/ + JButton importButton; + /** Button for exporting the currently selected InternalControlStrategy to XML **/ + JButton exportButton; + /** Button for exporting the default data of the currently selected InternalControlStrategy to XML **/ + JButton exportDefaultButton; + /** Button for removing the currently selected InternalControlStrategy **/ + JButton deleteButton; + /** Default panel to display when no object is selected **/ + JPanel defaultPanel; + /** currently selected object **/ + InternalControlStrategy currentStrategy; + /** scroll pane for the details panel of the current strategy **/ + JScrollPane detailsScrollPane; + /** Button for canceling edits made since last save or load **/ + JButton cancelButton; + /** Button for editing the description of an InternalControlStrategy **/ + JButton descriptionButton; + /** Button for checking the status of an InternalControlStrategy **/ + JButton checkButton; + /** + * True if the strategy type being managed implements the + * InternalControlStrategySimpleInstance interface. + **/ + boolean isSimpleInstance = false; + /** + * True if the strategy type being managed implements the + * IImportExportHandler interface. + **/ + boolean isImportExportHandler = false; + /** + * True if the strategy type being managed implements the + * IExportDefaultHandler interface. + **/ + boolean isExportDefaultHandler = false; + /** + * True if the strategy type being managed implements the + * InternalControlStrategyUseImporterOnly interface. + **/ + public boolean useImporterOnly = false; + + /** + * Constructs an InternalControlStrategies panel, also creates and sets the + * layouts of the controls. + **/ + public InternalControlStrategies() { + } + + /** + * Called after construction and after the name has been set, which denotes the class + * being managed. + **/ + public void finishSetup() { + try { + Class c = Class.forName(getName()); + Class simpleInstanceType = Class.forName("gov.epa.otaq.moves.master.framework.InternalControlStrategySimpleInstance"); + if(c != null && simpleInstanceType != null) { + Class[] interfaces = c.getInterfaces(); + if(interfaces != null) { + for(int i=0;i instances = + (LinkedList)runspec.internalControlStrategies.get(getName()); + if(isSimpleInstance) { + // Simple instances don't appear as add-ins the way other strategies do. They don't + // show descriptions and their text is shown at the root level like any of the + // standard panels. + if(instances != null) { + for(Iterator i=instances.iterator();i.hasNext();) { + InternalControlStrategy strategy = (InternalControlStrategy)i.next(); + InternalControlStrategyPanel panel = strategy.getDetailsPanel(); + if(panel != null) { + panel.getPrintableDescription(runspec,destination); + } + break; + } + } + } else { + boolean hasTitle = false; + if(instances != null) { + for(Iterator i=instances.iterator();i.hasNext();) { + InternalControlStrategy strategy = (InternalControlStrategy)i.next(); + destination.append("\t" + strategy.getDescription() + "\r\n"); + InternalControlStrategyPanel panel = strategy.getDetailsPanel(); + if(panel != null) { + if(!hasTitle) { + hasTitle = true; + destination.append("Strategies:\r\n"); + } + panel.getPrintableDescription(runspec,destination); + } + } + } + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + // Set Up colors + panelColor = new Color(98, 176, 255); + textColor = new Color(0, 0, 0); + + // Create list of InternalControlStrategy instances + listLabel = new JLabel("Loaded objects:"); + listLabel.setName("listLabel"); + listLabel.setForeground(textColor); + + instancesListModel = new DefaultListModel(); + instancesList = new JListWithToolTips(instancesListModel); + instancesList.setName("instancesList"); + instancesList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + instancesList.setSelectedIndex(-1); + instancesList.addListSelectionListener(this); + instancesList.setVisibleRowCount(6); + //instancesList.setPrototypeCellValue("XXXXXXXXXXXXXX"); + instancesScrollPane = new JScrollPane(instancesList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + instancesScrollPane.setName("instancesScrollPane"); + + // Create buttons + newButton = new JButton("New"); + newButton.setName("newButton"); + newButton.addActionListener(this); + ToolTipHelper.add(newButton,"Create a new object"); + + importButton = new JButton("Import..."); + importButton.setName("importButton"); + importButton.addActionListener(this); + ToolTipHelper.add(importButton,"Import a previously exported object"); + + exportButton = new JButton("Export..."); + exportButton.setName("exportButton"); + exportButton.addActionListener(this); + ToolTipHelper.add(exportButton,"Export the current object to a file"); + + exportDefaultButton = new JButton("Export Default..."); + exportDefaultButton.setName("exportDefaultButton"); + exportDefaultButton.addActionListener(this); + ToolTipHelper.add(exportDefaultButton,"Export default data to a file"); + + deleteButton = new JButton("Delete..."); + deleteButton.setName("deleteButton"); + deleteButton.addActionListener(this); + ToolTipHelper.add(deleteButton,"Delete the current object from the RunSpec"); + + cancelButton = new JButton("Cancel"); + cancelButton.setName("cancelButton"); + cancelButton.addActionListener(this); + ToolTipHelper.add(cancelButton,"Cancel recent edits"); + + descriptionButton = new JButton("Description..."); + descriptionButton.setName("descriptionButton"); + descriptionButton.addActionListener(this); + ToolTipHelper.add(descriptionButton,"Edit the description of the current object"); + + checkButton = new JButton("Check..."); + checkButton.setName("checkButton"); + checkButton.addActionListener(this); + ToolTipHelper.add(checkButton, + "Explain reasons for the Not Ready (exclaimation point) status"); + + // Panels + defaultPanel = new JPanel(); + detailsScrollPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + detailsScrollPane.setViewportView(defaultPanel); + if(isSimpleInstance) { + detailsScrollPane.setViewportBorder(null); + detailsScrollPane.setBorder(null); + } + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + setLayout(new GridBagLayout()); + + if(isSimpleInstance) { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "NORTH", 1, 1); + gbc.weightx = 1; + gbc.weighty = 1; + gbc.fill = GridBagConstraints.BOTH; + add(detailsScrollPane, gbc); + } else { + setBackground(panelColor); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + + JPanel leftPanel = new JPanel(); + leftPanel.setLayout(new GridBagLayout()); + leftPanel.setBackground(panelColor); + + int y = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(listLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 8); + leftPanel.add(instancesScrollPane, gbc); + y += 8; + if(!useImporterOnly) { + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(descriptionButton, gbc); + } + //LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + //leftPanel.add(cancelButton, gbc); + if(!useImporterOnly) { + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(newButton, gbc); + } + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(deleteButton, gbc); + if(!useImporterOnly) { + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(importButton, gbc); + } + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(exportButton, gbc); + if(!useImporterOnly) { + if(isExportDefaultHandler) { + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(exportDefaultButton, gbc); + } + } + if(!useImporterOnly) { + LayoutUtility.setPositionOnGrid(gbc,0, y++, "WEST", 1, 1); + leftPanel.add(checkButton, gbc); + } + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "NORTH", 1, 1); + gbc.weightx = 0; + gbc.weighty = 0; + gbc.fill = GridBagConstraints.NONE; + add(leftPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "NORTH", 1, 1); + gbc.weightx = 1; + gbc.weighty = 1; + gbc.fill = GridBagConstraints.BOTH; + add(detailsScrollPane, gbc); + } + } + + /** + * Listener method for list selection changes. + * @param e Event caused by a user selection. + **/ + public void valueChanged(ListSelectionEvent e) { + if(e != null && e.getValueIsAdjusting()) { + return; + } + if(instancesList.getSelectedIndex() == -1) { + detailsScrollPane.setViewportView(defaultPanel); + currentStrategy = null; + } else { + Object[] items = instancesList.getSelectedValuesList().toArray(); + if(items.length > 0) { + currentStrategy = (InternalControlStrategy)items[0]; + InternalControlStrategyPanel panel = currentStrategy.getDetailsPanel(); + if(panel == null) { + detailsScrollPane.setViewportView(defaultPanel); + } else { + if(isSimpleInstance) { + removeAll(); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "CENTER", 1, 1); + //gbc.weightx = 1; + //gbc.weighty = 1; + //gbc.fill = GridBagConstraints.BOTH; + add(panel, gbc); + } else { + detailsScrollPane.setViewportView(panel); + } + } + } + } + assessSituation(); + } + + /** + * Enable/Disable controls based upon current UI state + **/ + void assessSituation() { + boolean hasSelection = currentStrategy != null; + + cancelButton.setEnabled(hasSelection); + deleteButton.setEnabled(hasSelection); + descriptionButton.setEnabled(hasSelection && !useImporterOnly); + exportButton.setEnabled(hasSelection); + exportDefaultButton.setEnabled(hasSelection && !useImporterOnly); + checkButton.setEnabled(hasSelection && !useImporterOnly); + + newButton.setEnabled(!useImporterOnly && canCreateNewInstance()); + + importButton.setEnabled(!useImporterOnly && (hasSelection || !isImportExportHandler)); + } + + /** + * Listener method, calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == newButton) { + processNewButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == importButton) { + processImportButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == exportButton) { + processExportButton(); + } else if(e.getSource() == exportDefaultButton) { + processExportDefaultButton(); + } else if(e.getSource() == deleteButton) { + processDeleteButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + if(useImporterOnly && !hasAnInstance()) { + MOVESNavigation.singleton.onDeletedLastInstance(this); + } + } else if(e.getSource() == cancelButton) { + processCancelButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == descriptionButton) { + processDescriptionButton(); + } else if(e.getSource() == checkButton) { + processCheckButton(); + } + assessSituation(); + } + + /** + * Check for one or more instances. + * @return true if there is at least one instance listed. + **/ + public boolean hasAnInstance() { + return instancesListModel != null && instancesListModel.getSize() > 0; + } + + /** + * Determines if a new instance of the current InternalControlStrategy-derived class + * could be instantiated. If there are no instances, this is true. If there is + * an instance but it implements the InternalControlStrategySingleInstanceOnly + * or InternalControlStrategySimpleInstance interface, then this is false. + * @return true if another instance could be created without violating any wishes + * for a single instance per RunSpec. + **/ + boolean canCreateNewInstance() { + if(instancesListModel.getSize() > 0) { + InternalControlStrategy strategy = + (InternalControlStrategy)instancesListModel.getElementAt(0); + if(strategy instanceof InternalControlStrategySingleInstanceOnly + || strategy instanceof InternalControlStrategySimpleInstance) { + return false; + } + } + return true; + } + + /** Handle a click on the "New" button **/ + void processNewButton() { + if(!canCreateNewInstance()) { + // Complain that only of the selected type is allowed + /** + * @issue Only one object per RunSpec is allowed for this type + * @explain For some internal control strategies, the AVFT for instance, it only makes + * sense to have at most one of them per RunSpec. + **/ + JOptionPane.showMessageDialog(this, + "Only one object per RunSpec is allowed for this type"); + return; + } + + try { + InternalControlStrategy strategy = + (InternalControlStrategy)Class.forName(getName()).newInstance(); + instancesListModel.addElement(strategy); + instancesList.setSelectedValue(strategy,true); + } catch(Exception e) { + /** + * @issue Unable to create InternalControlStrategy + * @explain While setting up a requested internal control strategy, an error + * occurred. This is likely a case of a RunSpec that requests an internal + * control strategy that is not compiled into this machine's MOVES. + **/ + Logger.logError(e, "Unable to create InternalControlStrategy"); + } + } + + /** Handle a click on the "Import..." button **/ + void processImportButton() { + Component parent = getParent(); + while(parent != null && !(parent instanceof Frame)) { + parent = parent.getParent(); + } + if(currentStrategy != null && currentStrategy instanceof IImportExportHandler) { + IImportExportHandler handler = (IImportExportHandler)currentStrategy; + if(handler.doImport((Frame)parent)) { + return; + } + } + + if(!canCreateNewInstance()) { + // Prompt to confirm replacement + /** + * @issue Since only one object per RunSpec is allowed for this type, + * importing a new one will overwrite this object. Do you really want to do this? + * @explain For some internal control strategies, the AVFT for instance, it only makes + * sense to have at most one of them per RunSpec. + **/ + int answer = JOptionPane.showConfirmDialog(this, + StringUtilities.wrapString( + "Since only one object per RunSpec is allowed for this type, " + +"importing a new one will overwrite this object. " + +"Do you really want to do this?",35), + "Overwrite?",JOptionPane.YES_NO_OPTION); + if(answer != JOptionPane.YES_OPTION) { + return; + } + } + FileDialog fd = new FileDialog((Frame)parent, "Import File", FileDialog.LOAD); + fd.setVisible(true); //fd.show(); + + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File fileObject = new File(filePath); + + RunSpecXML xml = new RunSpecXML(null); + InternalControlStrategy strategy = xml.loadInternalControlStrategy(fileObject, + getName()); + if(strategy == null) { + return; + } + if(!strategy.getClass().getName().equalsIgnoreCase(getName())) { + /** + * @issue The selected file does not contain this type of object, it + * has not been loaded. + * @explain MOVES could not find the requested internal control strategy + * object within the file you selected. + **/ + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString( + "The selected file does not contain this type of object, it " + + "has not been loaded.",35)); + return; + } + if(instancesListModel.getSize() > 0) { + InternalControlStrategy existingStrategy = + (InternalControlStrategy)instancesListModel.getElementAt(0); + if(existingStrategy instanceof InternalControlStrategySingleInstanceOnly + || existingStrategy instanceof InternalControlStrategySimpleInstance) { + if(strategy.getClass() == existingStrategy.getClass()) { + instancesListModel.removeElement(existingStrategy); + } + } + } + instancesListModel.addElement(strategy); + instancesList.setSelectedValue(strategy,true); + } + + /** + * Determine if the currently selected strategy can be exported + * @return true if all data is valid on the current strategy, false if there is + * no strategy or if the strategy's panel's calculateRunSpecSectionStatus returns + * anything other than OK. + **/ + boolean canExport() { + if(currentStrategy == null) { + return false; + } + + InternalControlStrategyPanel panel = currentStrategy.getDetailsPanel(); + if(panel != null) { + RunSpecSectionStatus panelStatus = panel.calculateRunSpecSectionStatus( + null,new TreeMap()); + if(panelStatus == null || panelStatus.status != RunSpecSectionStatus.OK) { + String explanation = panel.explainRunSpecSectionStatus(); + if(explanation == null) { + explanation = ""; + } + /** + * @issue All data is not yet ready to be exported. [*] + * @explain The selected internal control strategy is not ready to + * export its data. Check the strategy's GUI to resolve any errors + * before exporting. + **/ + JOptionPane.showMessageDialog(this, + StringUtilities.wrapString( + "All data is not yet ready to be exported.\n" + + explanation,35)); + return false; + } + } + + return true; + } + + /** Handle a click on the "Export..." button **/ + void processExportButton() { + Component parent = getParent(); + while(parent != null && !(parent instanceof Frame)) { + parent = parent.getParent(); + } + if(currentStrategy != null && currentStrategy instanceof IImportExportHandler) { + IImportExportHandler handler = (IImportExportHandler)currentStrategy; + if(handler.doExport((Frame)parent)) { + return; + } + } + + if(!canExport()) { + return; + } + + FileDialog fd = new FileDialog((Frame)parent, "Export File", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File fileObject = new File(filePath); + + RunSpecXML xml = new RunSpecXML(null); + xml.saveInternalControlStrategy(fileObject,currentStrategy); + } + + /** Handle a click on the "Export Default..." button **/ + void processExportDefaultButton() { + Component parent = getParent(); + while(parent != null && !(parent instanceof Frame)) { + parent = parent.getParent(); + } + if(currentStrategy != null && currentStrategy instanceof IExportDefaultHandler) { + IExportDefaultHandler handler = (IExportDefaultHandler)currentStrategy; + if(handler.doExportDefault((Frame)parent)) { + return; + } + } + } + + /** Handle a click on the "Delete..." button **/ + void processDeleteButton() { + if(currentStrategy == null) { + return; + } + // Prompt to confirm deletion + /** @nonissue **/ + int answer = JOptionPane.showConfirmDialog(this, + StringUtilities.wrapString( + "Do you want to remove these settings from your RunSpec?",35), + "Delete?",JOptionPane.YES_NO_OPTION); + if(answer != JOptionPane.YES_OPTION) { + return; + } + // Do deletion + InternalControlStrategy strategy = currentStrategy; + instancesListModel.removeElement(strategy); + valueChanged(null); + } + + /** Handle a click on the "Cancel" button **/ + void processCancelButton() { + if(currentStrategy == null) { + return; + } + currentStrategy.cancelEdits(); + } + + /** Handle a click on the "Description" button **/ + void processDescriptionButton() { + if(currentStrategy == null) { + return; + } + Component parent = getParent(); + while(parent != null && !(parent instanceof JFrame)) { + parent = parent.getParent(); + } + DescriptionDialog dialog = new DescriptionDialog((JFrame)parent); + dialog.description = currentStrategy.getDescription(); + dialog.setLocation(((JFrame)parent).getLocationOnScreen().x + 100, + ((JFrame)parent).getLocationOnScreen().y + 100); + dialog.showModal(); + if(dialog.result) { + currentStrategy.setDescription(dialog.description); + instancesList.repaint(); + } + } + + /** Handle a click on the "Check" button **/ + void processCheckButton() { + if(currentStrategy == null) { + return; + } + + InternalControlStrategyPanel panel = currentStrategy.getDetailsPanel(); + if(panel != null) { + RunSpecSectionStatus panelStatus = panel.calculateRunSpecSectionStatus( + null,new TreeMap()); + String explanation = panel.explainRunSpecSectionStatus(); + if(explanation == null) { + explanation = "These settings are OK."; + } + /** @nonissue **/ + JOptionPane.showMessageDialog(this,StringUtilities.wrapString(explanation,35)); + } + } + + /** + * Saves the description text to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + if(currentStrategy != null && currentStrategy.getDetailsPanel() != null) { + currentStrategy.getDetailsPanel().saveToRunSpec(runspec); + } + LinkedList instances = + (LinkedList) + runspec.internalControlStrategies.get(getName()); + if(instances != null) { + instances.clear(); + } else { + instances = new LinkedList(); + runspec.internalControlStrategies.put(getName(),instances); + } + for(int i=0;i instances = runspec.internalControlStrategies.get(getName()); + if(isSimpleInstance) { + if(instances == null) { + instances = new LinkedList(); + runspec.internalControlStrategies.put(getName(),instances); + } + if(instances.isEmpty()) { + try { + InternalControlStrategy strategy = + (InternalControlStrategy)Class.forName(getName()).newInstance(); + instances.add(strategy); + } catch(Exception e) { + /** + * @issue Unable to create InternalControlStrategy + * @explain While setting up a requested internal control strategy, an error + * occurred. This is likely a case of a RunSpec that requests an internal + * control strategy that is not compiled into this machine's MOVES. + **/ + Logger.logError(e, "Unable to create InternalControlStrategy"); + } + } + } + if(instances != null) { + for(Iterator i=instances.iterator();i.hasNext();) { + instancesListModel.addElement(i.next()); + } + } + if(instances != null && instances.size() > 0) { + instancesList.setSelectedIndex(0); + } + valueChanged(null); + assessSituation(); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + + LinkedList instances = + (LinkedList) + runspec.internalControlStrategies.get(getName()); + if(instances != null) { + if(useImporterOnly && instances.size() > 0) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } else { + for(Iterator i=instances.iterator();i.hasNext();) { + InternalControlStrategy strategy = (InternalControlStrategy)i.next(); + InternalControlStrategyPanel panel = strategy.getDetailsPanel(); + if(panel != null) { + RunSpecSectionStatus panelStatus = panel.calculateRunSpecSectionStatus( + null,sections); + if(panelStatus != null) { + status.makeWorstOfTwo(panelStatus); + } + } + } + } + } + + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + runspec.internalControlStrategies.clear(); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** Inner class for prompting for description **/ + class DescriptionDialog extends JDialog implements ActionListener { + /** The dialog result, indicates true on OK button. **/ + public boolean result = false; + /** The description **/ + public String description = ""; + + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** OK button. **/ + JButton okButton; + /** Cancel button. **/ + JButton cancelButton; + /** Panel holding the description label and editbox **/ + JPanel descriptionPanel; + /** Label for the description **/ + JLabel descriptionLabel; + /** The description editbox **/ + JTextField descriptionField; + + /** + * Constructor, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the dialog. + **/ + public DescriptionDialog(JFrame parent) { + super(parent, "Edit Description"); + frame = parent; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(false); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + pushDataToControls(); + pack(); + setModal(true); + setVisible(true); //show(); + } + + /** Data from member variables to dialog controls. **/ + void pushDataToControls() { + descriptionField.setText(description); + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + void createControls() { + okButton = new JButton("OK"); + okButton.addActionListener(this); + okButton.setName("okButton"); + ToolTipHelper.add(okButton,"Accept the new description"); + + cancelButton = new JButton("Cancel"); + cancelButton.addActionListener(this); + cancelButton.setName("cancelButton"); + ToolTipHelper.add(cancelButton,"Abandon changes to the description"); + + descriptionPanel = new JPanel(); + descriptionPanel.setName("descriptionPanel"); + + descriptionLabel = new JLabel("Description:"); + descriptionLabel.setName("descriptionLabel"); + descriptionField = new JTextField(30); + descriptionField.setName("descriptionField"); + ToolTipHelper.add(descriptionField,"A description of the current object"); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + public JPanel arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + descriptionPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + descriptionPanel.add(descriptionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + descriptionPanel.add(descriptionField, gbc); + + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + result.add(descriptionPanel,gbc); + JPanel buttonPanel = createButtonsPanel(); + LayoutUtility.setPositionOnGrid(gbc,1,0, "NORTH", 1, 1); + result.add(buttonPanel, gbc); + + return result; + } + + /** + * Creates a panel containing the OK and Cancel buttons. + * @return the container as JPanel. + **/ + JPanel createButtonsPanel() { + JPanel box = new JPanel(); + box.setLayout(new GridLayout(2,1,5,5)); // 2 rows, 1 column, 5 pixel gaps + box.add(okButton); + box.add(cancelButton); + + JPanel result = new JPanel(); + result.setLayout(new BorderLayout()); + result.add(box, BorderLayout.NORTH); + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == okButton) { + processOKButton(); + } else if(e.getSource() == cancelButton) { + processCancelButton(); + } + } + + /** + * OK button handler, will save the choices to the System Configuration + * before closing this dialog. + **/ + void processOKButton() { + description = descriptionField.getText(); + + // indicates OK button + result = true; + dispose(); + } + + /** + * Cancel button handler, will reset the database connection to its original values + * before closing this dialog. + **/ + void processCancelButton() { + // indicates Cancel button + result = false; + dispose(); + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/JLFAbstractAction.java b/gov/epa/otaq/moves/master/gui/JLFAbstractAction.java new file mode 100644 index 0000000..af350c2 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/JLFAbstractAction.java @@ -0,0 +1,154 @@ +/* + * @(#)JLFAbstractAction.java 1.6 00/06/12 + * + * Copyright 2000 by Sun Microsystems, Inc., + * 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. + * All rights reserved. + * + * This software is the confidential and proprietary information + * of Sun Microsystems, Inc. ("Confidential Information"). You + * shall not disclose such Confidential Information and shall use + * it only in accordance with the terms of the license agreement + * you entered into with Sun. + */ +package gov.epa.otaq.moves.master.gui; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import java.net.URL; + +import javax.swing.AbstractAction; +import javax.swing.Action; +import javax.swing.ImageIcon; + +import javax.swing.event.EventListenerList; + +/** + * Abstract Action for the JLF. Defines some useful methods. + * + * MODIFIED on 2002-Jun-25 by WGFALER to improve image search algorithm + * for custom images that are not in the default folders + * + * @version 2003-08-20 + * @author Mark Davidson +**/ +public abstract class JLFAbstractAction extends AbstractAction { + + /** The listener to action events (usually the main UI) **/ + EventListenerList listeners; + + /** Image directory URL **/ + public static final String JLF_IMAGE_DIR = "/toolbarButtonGraphics/general/"; + + /** + * The key used for storing a large icon for the action, + * used for toolbar buttons. + *

    + * Note: Eventually this key belongs in the javax.swing.Action interface. + **/ + public static final String LARGE_ICON = "LargeIcon"; + + // + // These next public methods may belong in the AbstractAction class. + // + + /** + * Gets the value from the key Action.ACTION_COMMAND_KEY + * @return the value of the action command key. + **/ + public String getActionCommand() { + return (String)getValue(Action.ACTION_COMMAND_KEY); + } + + /** + * Gets the value from the key Action.SHORT_DESCRIPTION + * @return the value of the action short description key. + **/ + public String getShortDescription() { + return (String)getValue(Action.SHORT_DESCRIPTION); + } + + /** + * Gets the value from the key Action.LONG_DESCRIPTION + * @return the value of the action long description key. + **/ + public String getLongDescription() { + return (String)getValue(Action.LONG_DESCRIPTION); + } + + /* Should finish the implementation and add get/set methods for all the + * javax.swing.Action keys: + + Action.NAME + Action.SMALL_ICON + ActionConstants.LARGE_ICON + Action.MNEMONIC_KEY + */ + + // ActionListener registration and invocation. + + /** + * Forwards the ActionEvent to the registered listener. + * @param evt event to be forwarded to listener. + **/ + public void actionPerformed(ActionEvent evt) { + if (listeners != null) { + Object[] listenerList = listeners.getListenerList(); + + // Recreate the ActionEvent and stuff the value of the ACTION_COMMAND_KEY + ActionEvent e = new ActionEvent(evt.getSource(), evt.getID(), + (String)getValue(Action.ACTION_COMMAND_KEY)); + for (int i = 0; i <= listenerList.length-2; i += 2) { + ((ActionListener)listenerList[i+1]).actionPerformed(e); + } + } + } + + /** + * Adds action listener to list. + * @param l the action listener. + **/ + public void addActionListener(ActionListener l) { + if (listeners == null) { + listeners = new EventListenerList(); + } + listeners.add(ActionListener.class, l); + } + + /** + * Remove action listener from list. + * @param l the action listener. + **/ + public void removeActionListener(ActionListener l) { + if (listeners == null) { + return; + } + listeners.remove(ActionListener.class, l); + } + + /** + * Returns the Icon associated with the name from the resources. + * The resouce should be in the path. + * @param name Name of the icon file i.e., help16.gif + * @return the name of the image or null if the icon is not found. + **/ + public ImageIcon getIcon(String name) { + String imagePath = JLF_IMAGE_DIR + name; + URL url = this.getClass().getResource(imagePath); + if (url != null) { + return new ImageIcon(url); + } else { + url = this.getClass().getResource("/" + name); + if (url != null) { + return new ImageIcon(url); + } else { + url = this.getClass().getResource(name); + if (url != null) { + return new ImageIcon(url); + } + } + } + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/LayoutUtility.java b/gov/epa/otaq/moves/master/gui/LayoutUtility.java new file mode 100644 index 0000000..07587ad --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/LayoutUtility.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)LayoutUtility.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +/** + * Class for MOVES LayoutUtility. + * + * @author Cimulus + * @version 2004-03-03 +**/ +public class LayoutUtility { + /** + * Static function, sets the position on the specified GridBagConstraints. + * This is a utility function to conveniently use the GridBagConstraints + * class of Java, It sets the gridx, gridy, gidheight, gridwidth, and the + * anchor of the GridBagConstraints to the parameters passed in by the + * calling routine. The anchor fiels in the GridBagConstraints is used + * when the component is smaller than the display area. For more information + * about the GridBagConstraints refer to the Java documentation. + * + * @param gbc the GridBagConstraints to be set. + * @param gridXPos int x position. + * @param gridYPos int y position. + * @param anchorPos String anchor position. One of "NORTH", "SOUTH", "EAST", + * "WEST", or "CENTER". + * @param cellsWide int number of cells wide. + * @param cellsTall int number of cells tall. + **/ + public static void setPositionOnGrid (GridBagConstraints gbc, int gridXPos, + int gridYPos, String anchorPos, int cellsWide, int cellsTall) { + gbc.gridx = gridXPos; + gbc.gridy = gridYPos; + gbc.gridheight = cellsTall; + gbc.gridwidth = cellsWide; + if (anchorPos.equals("NORTH")) { + gbc.anchor = GridBagConstraints.NORTH; + } else if (anchorPos.equals("SOUTH")) { + gbc.anchor = GridBagConstraints.SOUTH; + } else if (anchorPos.equals("EAST")) { + gbc.anchor = GridBagConstraints.EAST; + } else if (anchorPos.equals("WEST")) { + gbc.anchor = GridBagConstraints.WEST; + } else if (anchorPos.equals("CENTER")) { + gbc.anchor = GridBagConstraints.CENTER; + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/LoginDialog.java b/gov/epa/otaq/moves/master/gui/LoginDialog.java new file mode 100644 index 0000000..e251f3f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/LoginDialog.java @@ -0,0 +1,277 @@ +/************************************************************************************************** + * @(#)LoginDialog.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.sql.*; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.border.*; +import javax.swing.text.*; +import java.util.*; +import java.io.*; +import javax.swing.table.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.SystemConfiguration; +import gov.epa.otaq.moves.master.gui.*; + +/** + * Set user name and password for database login. + * + * @author Daniel Cox + * @author Wesley Faler + * @version 2014-06-27 +**/ +public class LoginDialog extends JDialog implements ActionListener { + /** + * Attempt connecting to the database, prompting the user for + * login credentials when a connection cannot be established. + * @return true when a connection is established + **/ + public static boolean checkDatabaseLogin() { + boolean shouldUpdateConfiguration = false; + while(true) { + Connection db = DatabaseSelection.openKnownWorkingConnection(); + if(db != null) { + DatabaseUtilities.closeConnection(db); + if(shouldUpdateConfiguration) { + try { + SystemConfiguration.getTheSystemConfiguration().saveConfigurationData(); + } catch(Exception e) { + Logger.logError(e,"Unable to update system configuration files."); + } + } + return true; + } + shouldUpdateConfiguration = true; + Logger.log(LogMessageCategory.INFO,"Prompting for database login..."); + LoginDialog d = new LoginDialog(null); + d.showModal(); + if(!d.clickedOK) { + return false; + } + } + } + + /** true if the dialog closed by clicking OK **/ + public boolean clickedOK = false; + + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** the OK button **/ + JButton okButton; + /** the Cancel button **/ + JButton cancelButton; + + /** Image icon. **/ + ImageIcon image; + /** Image label. **/ + JLabel imageLabel; + + /** User label **/ + JLabel labelUser; + /** Password label **/ + JLabel labelPassword; + /** User name **/ + JTextField userName; + /** Password **/ + JPasswordField password; + + /** + * Constructs the main panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + **/ + public LoginDialog(JFrame parent) { + super(parent, "Set Database Login"); + frame = parent; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + clickedOK = false; + if(!populateControls()) { + return; + } + pack(); + setModal(true); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(550,260); + setVisible(true); //show(); + } + + /** + * Place current values into the GUI. + * @return true if the list was filled and should be shown + **/ + boolean populateControls() { + userName.setText(DatabaseSelection.userProvidedUserName); + password.setText(DatabaseSelection.userProvidedPassword); + // Enable/Disable controls as needed + assessSituation(); + return true; + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + void createControls() { + okButton = new JButton("Login"); + okButton.addActionListener(this); + cancelButton = new JButton("Quit MOVES"); + cancelButton.addActionListener(this); + + labelUser = new JLabel("User:"); + labelUser.setName("labelUser"); + + userName = new JTextField(); + userName.setName("userName"); + userName.setColumns(20); + + labelPassword = new JLabel("Password:"); + labelPassword.setName("labelPassword"); + + password = new JPasswordField(); + password.setName("password"); + password.setColumns(20); + + image = new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_logo_480.png"); + imageLabel = new JLabel(image); + imageLabel.setName("imageLabel"); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + JPanel arrangeControls() { + /* + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "NORTH", 5, 1); + result.add(imageLabel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1,1, "EAST", 1, 1); + result.add(labelUser, gbc); + LayoutUtility.setPositionOnGrid(gbc,2,1, "WEST", 2, 1); + result.add(userName, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1,2, "WEST", 1, 1); + result.add(labelPassword, gbc); + LayoutUtility.setPositionOnGrid(gbc,2,2, "WEST", 2, 1); + result.add(password, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1,3, "WEST", 1, 1); + result.add(okButton, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,3, "WEST", 1, 1); + result.add(cancelButton, gbc); + + return result; + */ + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + JPanel core = new JPanel(); + core.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0,1, "EAST", 1, 1); + core.add(labelUser, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 2, 1); + core.add(userName, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + core.add(labelPassword, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,2, "WEST", 2, 1); + core.add(password, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,3, "WEST", 1, 1); + core.add(okButton, gbc); + LayoutUtility.setPositionOnGrid(gbc,2,3, "WEST", 1, 1); + core.add(cancelButton, gbc); + + JPanel coreHorizontal = new JPanel(); + coreHorizontal.setLayout(new BoxLayout(coreHorizontal, BoxLayout.X_AXIS)); + coreHorizontal.add(Box.createHorizontalGlue()); + coreHorizontal.add(core); + coreHorizontal.add(Box.createHorizontalGlue()); + + JPanel imageHorizontal = new JPanel(); + imageHorizontal.setLayout(new BoxLayout(imageHorizontal, BoxLayout.X_AXIS)); + imageHorizontal.add(Box.createHorizontalGlue()); + imageHorizontal.add(imageLabel); + imageHorizontal.add(Box.createHorizontalGlue()); + + JPanel result = new JPanel(); + result.setLayout(new BoxLayout(result, BoxLayout.Y_AXIS)); + result.add(imageHorizontal); + result.add(coreHorizontal); + result.add(Box.createVerticalGlue()); + + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == okButton) { + handleOKButton(); + } else if(e.getSource() == cancelButton) { + dispose(); + } + } + + /** Process a click on the OK button **/ + public void handleOKButton() { + DatabaseSelection.userProvidedUserName = userName.getText(); + DatabaseSelection.userProvidedPassword = new String(password.getPassword()); + clickedOK = true; + dispose(); + } + + /** + * Called when the selection in the list changes. + * @param e the ListSelectionEvent to be handled + **/ + public void valueChanged(ListSelectionEvent e) { + assessSituation(); + } + + /** Examine the selected items and enable/disable buttons accordingly **/ + void assessSituation() { + boolean okButtonStatus = true; + // Nothing to do here + okButton.setEnabled(okButtonStatus); + } +} diff --git a/gov/epa/otaq/moves/master/gui/LoopingTool.java b/gov/epa/otaq/moves/master/gui/LoopingTool.java new file mode 100644 index 0000000..a77c48f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/LoopingTool.java @@ -0,0 +1,1429 @@ +/************************************************************************************************** + * @(#)LoopingTool.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.filechooser.FileFilter; +import java.io.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.*; + +/** + * Creates multiple RunSpecs from the currently loaded RunSpec and + * a control file. + * @author Wesley Faler + * @version 2011-09-10 +**/ +public class LoopingTool extends JDialog implements ActionListener { + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + + /** Instructions display **/ + JTextPane instructionsTextPane; + /** Button to create a control file template **/ + JButton createTemplateButton; + /** Name of the control file **/ + JLabel controlFileText; + /** Full path for the file shown in controlFileText **/ + String controlFileFullPath = ""; + /** Button to browse for a control file **/ + JButton browseControlFileButton; + /** Prefix to be applied to the names of all created RunSpecs **/ + JTextField prefixText; + /** Name of the directory in which RunSpecs will be created **/ + JLabel outputDirectoryText; + /** Full path for the directory shown in outputDirectoryText **/ + String outputDirectoryFullPath = ""; + /** Button to browse for the output directory **/ + JButton browseOutputButton; + /** List of messages **/ + JList messagesList; + /** Button to create RunSpecs from the control file **/ + JButton createRunSpecsButton; + /** Button to close the window **/ + JButton doneButton; + + /** Type of the control file, Text, XLS, etc **/ + String controlFileType = ""; + /** The worksheet name within the control file if it is XLS type **/ + String controlFileWorksheetName = ""; + + /** DefaultListModel for messageList **/ + DefaultListModel messageListModel; + + /** List of messages to be shown **/ + ArrayList messages = new ArrayList(); + /** True if messages contains any errors that should prevent further processing **/ + boolean messagesHasError = false; + + /** RunSpec for basis of created RunSpecs **/ + RunSpec runSpec; + /** True if the runSpec is ready or at least has no unready sections **/ + boolean isRunSpecReady = false; + + /** + * Browser dialog for selecting an output directory. Retained as a member + * variable so it would retain the last used directory. + **/ + JFileChooser folderChooser = null; + + /** + * Constructs the FERC panel, also creates and sets the layouts of the controls. + * @param parent the parent frame to use for the panel. + * @param isRunSpecReadyToUse True if the runSpec is ready or at least has no unready sections + **/ + public LoopingTool(JFrame parent, RunSpec runSpecToUse, + boolean isRunSpecReadyToUse) { + super(parent, "Multiple RunSpec Creator"); + frame = parent; + runSpec = runSpecToUse; + isRunSpecReady = isRunSpecReadyToUse; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModal() { + resetMessages(); + checkRunSpec(); + populateMessagesList(); + + pack(); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(500,575); + setModal(true); + setVisible(true); + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + return createAndArrangeControls(); + } + + /** + * Create controls and sets their layout. + * @return the container as JPanel of the controls + **/ + public JPanel createAndArrangeControls() { + JPanel result = new JPanel(); + instructionsTextPane = new JTextPane(); + JLabel label1 = new JLabel(); + createTemplateButton = new JButton(); + controlFileText = new JLabel("",JLabel.RIGHT); + browseControlFileButton = new JButton(); + JLabel label2 = new JLabel(); + prefixText = new JTextField(); + JLabel label3 = new JLabel(); + outputDirectoryText = new JLabel("",JLabel.RIGHT); + browseOutputButton = new JButton(); + JLabel label4 = new JLabel(); + JScrollPane scrollPane2 = new JScrollPane(); + createRunSpecsButton = new JButton(); + doneButton = new JButton(); + + messageListModel = new DefaultListModel(); + messagesList = new JListWithToolTips(messageListModel); + messagesList.setSelectedIndex(-1); + messagesList.setVisibleRowCount(6); + messagesList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXX"); + ToolTipHelper.add(scrollPane2,"Displays messages, warnings, and errors"); + + createTemplateButton.addActionListener(this); + browseControlFileButton.addActionListener(this); + browseOutputButton.addActionListener(this); + createRunSpecsButton.addActionListener(this); + doneButton.addActionListener(this); + + //======== result ======== + { + result.setLayout(new GridBagLayout()); + ((GridBagLayout)result.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)result.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)result.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)result.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + + //---- instructionsTextPane ---- + instructionsTextPane.setText( + "This tool creates new RunSpec files using the currently loaded " + + "information as a template, making substitutions for county, year, " + + "and database selections driven by a user-supplied control file. " + + "In addition, a BAT file is generated that illustrates how to " + + "automatically execute each created RunSpec from the command line." + + "\r\n\r\n" + + "Use the \"Create Template...\" button to get started with " + + "a control file that uses all the counties and years in the " + + "current RunSpec." + + "\r\n\r\n" + + "The final BAT file, located in your output directory, can be " + + "run as is, or can be edited manually for distribution onto " + + "multiple MOVES master machines." + ); + instructionsTextPane.setEditable(false); + instructionsTextPane.setBackground(UIManager.getColor("Panel.background")); + JPanel p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("Instructions")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + p.add(instructionsTextPane, new GridBagConstraints(0, 0, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(p, new GridBagConstraints(0, 0, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label1 ---- + p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("RunSpec Template Control File")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 150, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + /* + label1.setText("RunSpec Template Control File:"); + result.add(label1, new GridBagConstraints(0, 2, 4, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(new JLabel("File:"), new GridBagConstraints(0,0,1,1,0.0,0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- createTemplateButton ---- + createTemplateButton.setText("Create Template..."); + ToolTipHelper.add(createTemplateButton,"Create a template a file (.xls, .txt, .csv) to be filled and then used."); + /* + result.add(createTemplateButton, new GridBagConstraints(4, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + */ + p.add(createTemplateButton, new GridBagConstraints(4, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + ToolTipHelper.add(controlFileText,"Name and location of the control file (.xls, .txt, .csv)"); + /* + result.add(controlFileText, new GridBagConstraints(0, 3, 4, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(controlFileText, new GridBagConstraints(1, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- browseControlFileButton ---- + browseControlFileButton.setText("Browse..."); + ToolTipHelper.add(browseControlFileButton,"Select a control file (.xls, .txt, .csv)"); + /* + result.add(browseControlFileButton, new GridBagConstraints(4, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + */ + p.add(browseControlFileButton, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(p, new GridBagConstraints(0, 2, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label2 ---- + p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("File Name Prefix")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + + label2.setText("Prefix:"); + /* + result.add(label2, new GridBagConstraints(0, 4, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(label2, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + ToolTipHelper.add(prefixText,"Name prefix to be applied to each created RunSpec"); + /* + result.add(prefixText, new GridBagConstraints(1, 4, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(prefixText, new GridBagConstraints(2, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + result.add(p, new GridBagConstraints(0, 4, 5, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label3 ---- + p = new JPanel(); + p.setBorder(BorderFactory.createTitledBorder("RunSpec Output Directory")); + p.setLayout(new GridBagLayout()); + ((GridBagLayout)p.getLayout()).columnWidths = new int[] {106, 0, 0, 0, 150, 0}; + ((GridBagLayout)p.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + ((GridBagLayout)p.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4, 0.0, 0.0 }; + ((GridBagLayout)p.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4, 0.0}; + + label3.setText("Folder:"); + /* + result.add(label3, new GridBagConstraints(0, 5, 4, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(label3, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + ToolTipHelper.add(outputDirectoryText,"A directory to hold the created RunSpecs"); + /* + result.add(outputDirectoryText, new GridBagConstraints(0, 6, 4, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + */ + p.add(outputDirectoryText, new GridBagConstraints(1, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- browseOutputButton ---- + browseOutputButton.setText("Browse..."); + ToolTipHelper.add(browseOutputButton,"Choose a directory to hold the created RunSpecs"); + /* + result.add(browseOutputButton, new GridBagConstraints(4, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + */ + p.add(browseOutputButton, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(p, new GridBagConstraints(0, 5, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label4 ---- + label4.setText("Messages:"); + result.add(label4, new GridBagConstraints(0, 7, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== scrollPane2 ======== + { + scrollPane2.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); + scrollPane2.setViewportView(messagesList); + } + result.add(scrollPane2, new GridBagConstraints(0, 8, 5, 2, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- createRunSpecsButton ---- + createRunSpecsButton.setText("Create RunSpecs"); + ToolTipHelper.add(createRunSpecsButton,"Apply the control file to the current RunSpec, generating new RunSpecs"); + result.add(createRunSpecsButton, new GridBagConstraints(2, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- doneButton ---- + doneButton.setText("Done"); + ToolTipHelper.add(doneButton,"Close this window"); + result.add(doneButton, new GridBagConstraints(4, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == createTemplateButton) { + handleCreateTemplateButton(); + } else if(e.getSource() == browseControlFileButton) { + handleBrowseControlFileButton(); + } else if(e.getSource() == browseOutputButton) { + handleBrowseOutputButton(); + } else if(e.getSource() == createRunSpecsButton) { + handleCreateRunSpecsButton(); + } else if(e.getSource() == doneButton) { + handleDoneButton(); + } + } + + /** Handle the Create Template button **/ + void handleCreateTemplateButton() { + FileDialog fd = new FileDialog(frame, + "Create Control File Template", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + if((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + + CellFileWriter writer = null; + try { + // Create the primary destination file + writer = new CellFileWriter(file,"LoopingTool"); + String[] headers = { + "CountyID", "County Description", + "Year", "Additional Text Name", + "Primary MOVES DB", + "Output DB", + "Domain DB", + "Advanced Features DB", + "User DB" + }; + for(int i=0;i yi=runSpec.timeSpan.years.iterator();yi.hasNext();) { + Integer year = (Integer)yi.next(); + for(Iterator gi=runSpec.geographicSelections.iterator(); + gi.hasNext();) { + GeographicSelection geo = (GeographicSelection)gi.next(); + if(geo.type != GeographicSelectionType.COUNTY) { + continue; + } + writer.writeIntCell(geo.databaseKey); + writer.writeTextCell(geo.textDescription); + writer.writeIntCell(year.intValue()); + writer.writeTextCell(""); + writer.writeTextCell(primaryDB); + writer.writeTextCell(runSpec.outputDatabase == null? "" + : runSpec.outputDatabase.databaseName); + writer.writeTextCell(runSpec.scaleInputDatabase == null? "" + : runSpec.scaleInputDatabase.databaseName); + writer.writeTextCell(runSpec.generatorDatabase == null? "" + : runSpec.generatorDatabase.databaseName); + for(Iterator ui= + runSpec.databaseSelectionInputSets.iterator();ui.hasNext();) { + DatabaseSelection userDB = (DatabaseSelection)ui.next(); + if(userDB != null && userDB.databaseName.length() > 0) { + writer.writeTextCell(userDB.databaseName); + } + } + writer.endRow(); + } + } + } catch(Exception e) { + /** + * @issue Unable to create the control file template. + * @explain An error was encountered while creating a template file for use + * with the Multiple RunSpec Creator. Check that the template file's name and location + * are valid and that you have security permissions to write into the + * template file's directory. + **/ + JOptionPane.showMessageDialog(null, + "Unable to create the control file template.", + "Multiple RunSpec Creator", JOptionPane.ERROR_MESSAGE); + } finally { + if(writer != null) { + writer.close(); + } + } + } + + /** Handle the Browse button for the control file **/ + void handleBrowseControlFileButton() { + try { + FileDialog fd = new FileDialog(frame, "Select Control File", FileDialog.LOAD); + fd.setVisible(true); //fd.show(); + + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File file = new File(filePath); + if(!file.exists()) { + return; + } + filePath = file.getCanonicalPath(); + controlFileText.setText(""); // clear this in case something goes wrong and we + // cannot load the data + controlFileFullPath = ""; + controlFileType = ""; + controlFileWorksheetName = ""; + + String extension = FileUtilities.getFileExtension(file,true); + if(extension.equalsIgnoreCase(".xls")) { + // Microsoft Excel-format file, so prompt the user to select a worksheet + XLSReader xls = new XLSReader(); + String contents = null; + try { + ArrayList worksheets = xls.getSheets(file); + if(worksheets.size() == 1) { + controlFileWorksheetName = (String)worksheets.get(0); + } else { + // Prompt the user to select a worksheet then fill + // controlFileWorksheetName. If the user cancels the worksheet + // selection, stop the operation + WorksheetChooserDialog dlg = + new WorksheetChooserDialog(frame,worksheets); + // simple offset from main window origin + dlg.setLocation(getLocationOnScreen().x + 50, getLocationOnScreen().y + 50); + dlg.showModal(); + if(dlg.selectedWorksheetName != null + && dlg.selectedWorksheetName.length() > 0) { + controlFileWorksheetName = dlg.selectedWorksheetName; + } else { + return; + } + } + } catch(Exception e) { + throw new IOException(e.toString()); + } + controlFileType = "XLS"; + } else { // Likely a text file + controlFileType = "Text"; + } + + controlFileText.setText(file.getName()); + controlFileFullPath = file.getCanonicalPath(); + } catch(Exception e) { + // Nothing to do here + } + } + + /* Handle the Browse button for the output directory **/ + void handleBrowseOutputButton() { + if(folderChooser == null) { + folderChooser = new JFileChooser(); + folderChooser.setCurrentDirectory(new java.io.File(".")); + folderChooser.setDialogTitle("Select RunSpec Output Directory"); + folderChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + folderChooser.setAcceptAllFileFilterUsed(false); + } + if(folderChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) { + File f = folderChooser.getSelectedFile(); + if(f != null) { + try { + outputDirectoryText.setText(f.getName()); + outputDirectoryFullPath = f.getCanonicalPath(); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + + /** Class representing one line within the control file **/ + class ControlFileEntry { + public boolean isValid = false; + + public int lineNumber = 0; + public int countyID = 0; + public String countyDescription = ""; + public int year = 0; + public String additionalText = ""; + public String primaryDB = ""; + public String outputDB = ""; + public String domainDB = ""; + public String advancedFeaturesDB = ""; + // list of DatabaseSelection objects + public ArrayList userDBs = new ArrayList(); + + public boolean isExistingCounty = false; + + /** + * Produce a pipe-separated list of all databases that provide input + * to the entry. The domain database's inclusion is options, presumably + * predicated upon use of the single county or project domain. + * @param includeDomainDatabase true if the domain database should appear + * in the list + * @return a pipe-separated list of all databases the provide input + * to the entry + **/ + public String getInputDatabaseKey(boolean includeDomainDatabase) { + String result = StringUtilities.safeGetString(primaryDB) + "|"; + if(includeDomainDatabase) { + result += StringUtilities.safeGetString(domainDB); + } + for(Iterator i=userDBs.iterator();i.hasNext();) { + DatabaseSelection d = (DatabaseSelection)i.next(); + result += "|" + d.databaseName; + } + return result; + } + /** + * Read the current line's cells into the entry. If the current line is + * empty, false will be returned. If the line is not empty, true will be + * returned even if isValid gets set to false. + * @param reader file to be read + * @param lineNumberToUse line number within the file + * @return true if this object should be retained, false if it should be + * discarded. + **/ + public boolean read(CellFileReader reader, int lineNumberToUse) { + lineNumber = lineNumberToUse; + isValid = false; + String s = null; + Integer t = null; + + // Make sure the line is not blank + try { + s = reader.readStringCell(); + if(s == null || s.length() <= 0) { + return false; + } + reader.backupOneCell(); + } catch(Exception e) { + return false; + } + + try { + t = reader.readIntegerCell(); + if(t != null) { + countyID = t.intValue(); + } + } catch(Exception e) { + // Nothing to do here + } + if(t == null || countyID < 1 || countyID > 99999) { + /** + * @issue Error: CountyID must be an integer in the range 1-99999, line # + * @explain The Multiple RunSpec Creator was unable to read the county FIPS ID at + * the given line number in the control file. + **/ + messages.add("Error: CountyID must be an integer in the range 1-99999, line " + + lineNumber); + messagesHasError = true; + return true; + } + + try { + countyDescription = StringUtilities.safeGetString(reader.readStringCell()); + } catch(Exception e) { + /** + * @issue Error: Unable to read county description, line # + * @explain The Multiple RunSpec Creator was unable to read the county description at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read county description, line " + lineNumber); + messagesHasError = true; + return false; + } + // If the county already exists in the database, use the database's + // countyName instead of the description provided in the spreadsheet. + isExistingCounty = false; + String sql = "select countyName, stateName" + + " from county inner join state on (county.stateID = state.stateID)" + + " where countyID=" + countyID; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT),sql); + if(query.rs.next()) { + String dbCountyName = query.rs.getString(1); + String dbStateName = query.rs.getString(2); + if(dbCountyName != null && dbCountyName.length() > 0 + && dbStateName != null && dbStateName.length() > 0) { + countyDescription = dbStateName + " - " + dbCountyName; + isExistingCounty = true; + } + } + } catch(Exception e) { + Logger.logSqlError(e,"Unable to check for existing county definition",sql); + } finally { + query.onFinally(); + } + + t = null; + try { + t = reader.readIntegerCell(); + if(t != null) { + year = t.intValue(); + if(!TimeSpan.isValidYear(year)) { + /** + * @issue Error: Invalid year, #, line # + * @explain The year read by the Multiple RunSpec Creator within the control + * file is not defined as a valid year within the default database. + **/ + messages.add("Error: Invalid year, " + year + ", line " + lineNumber); + messagesHasError = true; + return true; + } + } + } catch(Exception e) { + /** + * @issue Error: Unable to read year, line # + * @explain The Multiple RunSpec Creator was unable to read the year at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read year, line " + lineNumber); + messagesHasError = true; + return false; + } + + try { + additionalText = StringUtilities.safeGetString(reader.readStringCell()).trim(); + if(additionalText.length() > 20) { + additionalText = additionalText.substring(0,20).trim(); + /** + * @issue Warning: Trimmed Additional Text Name to 20 characters, line # + * @explain The Additional Text Name column in the Multiple RunSpec Creator's + * control file is limited to 20 characters. + **/ + messages.add("Warning: Trimmed Additional Text Name to 20 characters, line " + + lineNumber); + } + if(additionalText.length() > 0) { + char[] illegalCharacters = "/\\:&<>*?".toCharArray(); + for(int i=0;i= 0) { + /** + * @issue Error: The Additional Text Name cannot contain [*] characters, line # + * @explain The Additional Text Name field applied to the file name of + * each generated RunSpec within the Multiple RunSpec Creator cannot + * contain special characters as defined by common operating systems. + * These include: / \ : & < > * ? + **/ + messages.add("Error: The Additional Text Name cannot contain " + + illegalCharacters[i] + " characters, line " + lineNumber); + messagesHasError = true; + } + } + } + } catch(Exception e) { + /** + * @issue Error: Unable to read Additional Text Name, line # + * @explain The Multiple RunSpec Creator was unable to read the Additional Text Name + * at the given line number in the control file. + **/ + messages.add("Error: Unable to read Additional Text Name, line " + lineNumber); + messagesHasError = true; + return false; + } + + try { + primaryDB = StringUtilities.safeGetString(reader.readStringCell()).trim(); + } catch(Exception e) { + /** + * @issue Error: Unable to read Primary MOVES DB, line # + * @explain The Multiple RunSpec Creator was unable to read the Primary MOVES DB at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read Primary MOVES DB, line " + lineNumber); + messagesHasError = true; + return false; + } + + try { + outputDB = StringUtilities.safeGetString(reader.readStringCell()).trim(); + } catch(Exception e) { + /** + * @issue Error: Unable to read Output DB, line # + * @explain The Multiple RunSpec Creator was unable to read the Output DB at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read Output DB, line " + lineNumber); + messagesHasError = true; + return false; + } + + try { + domainDB = StringUtilities.safeGetString(reader.readStringCell()).trim(); + } catch(Exception e) { + /** + * @issue Error: Unable to read Domain DB, line # + * @explain The Multiple RunSpec Creator was unable to read the Domain DB at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read Domain DB, line " + lineNumber); + messagesHasError = true; + return false; + } + + try { + advancedFeaturesDB = StringUtilities.safeGetString(reader.readStringCell()).trim(); + } catch(Exception e) { + /** + * @issue Error: Unable to read Advanced Features DB, line # + * @explain The Multiple RunSpec Creator was unable to read the Advanced Features + * DB at the given line number in the control file. + **/ + messages.add("Error: Unable to read Advanced Features DB, line " + lineNumber); + messagesHasError = true; + return false; + } + + // Read user databases until we run out of data on the line + while(true) { + try { + s = StringUtilities.safeGetString(reader.readStringCell()).trim(); + if(s.length() <= 0) { + break; + } + DatabaseSelection db = new DatabaseSelection(); + db.databaseName = s; + userDBs.add(db); + } catch(Exception e) { + /** + * @issue Error: Unable to read User DB, line # + * @explain The Multiple RunSpec Creator was unable to read the User DB at + * the given line number in the control file. + **/ + messages.add("Error: Unable to read User DB, line " + lineNumber); + messagesHasError = true; + return false; + } + } + + isValid = true; // assume no rules are broken + // Enforce the rules requiring all required databases to be specified herein + // or in the RunSpec. + s = outputDB.length() > 0? outputDB + : runSpec.outputDatabase == null? "" + : runSpec.outputDatabase.databaseName; + if(s == null || s.length() <= 0) { + /** + * @issue Error: The output database must be provided, line # + * @explain When using the Multiple RunSpec Creator, either the active RunSpec or + * each control file entry must name the output database. + **/ + messages.add("Error: The output database must be provided, line " + lineNumber); + messagesHasError = true; + isValid = false; + } + + if(runSpec.domain == ModelDomain.SINGLE_COUNTY + || runSpec.domain == ModelDomain.PROJECT) { + s = domainDB.length() > 0? domainDB + : runSpec.scaleInputDatabase == null? "" + : runSpec.scaleInputDatabase.databaseName; + if(s == null || s.length() <= 0) { + /** + * @issue Error: The domain database must be provided, line # + * @explain When using the Multiple RunSpec Creator with the single county or + * project scale, an input database specific to the domain must be provided. + * Either the RunSpec or each control file entry can name this database. + **/ + messages.add("Error: The domain database must be provided, line " + lineNumber); + messagesHasError = true; + isValid = false; + } + + if(runSpec.isCustomDomain()) { + if(StringUtilities.safeGetString(runSpec.genericCounty.description).length() + <= 0 && StringUtilities.safeGetString(countyDescription).length() + <= 0) { + /** + * @issue Error: Custom domains require a description, line # + * @explain When using the Multiple RunSpec Creator with a custom domain in + * single county or project mode, the custom domain must have a description. + * This description can come from the RunSpec or from the control file. + * In this case, the RunSpec contains no description for the custom + * domain and neither does the control file. + **/ + messages.add("Error: Custom domains require a description, line " + + lineNumber); + messagesHasError = true; + isValid = false; + } + } + } + + if(runSpec.shouldCopySavedGeneratorData) { + s = advancedFeaturesDB.length() > 0? advancedFeaturesDB + : runSpec.generatorDatabase == null? "" + : runSpec.generatorDatabase.databaseName; + if(s == null || s.length() <= 0) { + /** + * @issue Error: The advanced features save database must be provided, line # + * @explain When using the Multiple RunSpec Creator with a RunSpec the requires + * generator output to be saved into a new database, either the RunSpec or the + * control file entries must name the database. + **/ + messages.add( + "Error: The advanced features save database must be provided, line " + + lineNumber); + messagesHasError = true; + isValid = false; + } + } + + return true; // did load and should continue loading, regardless of validity + // of this individual entry + } + + /** + * Apply this object's settings to a RunSpec. + * @param runSpec object to be modified + **/ + public void toRunSpec(RunSpec runSpec) { + GeographicSelection gs = new GeographicSelection(); + gs.databaseKey = countyID; + gs.textDescription = countyDescription; + gs.type = GeographicSelectionType.COUNTY; + runSpec.geographicSelections.clear(); + runSpec.geographicSelections.add(gs); + + if(runSpec.genericCounty != null) { + runSpec.genericCounty.splitCountyID(countyID); + if(countyDescription != null && countyDescription.length() > 0) { + runSpec.genericCounty.description = countyDescription; + } + } + + runSpec.timeSpan.years.clear(); + runSpec.timeSpan.years.add(new Integer(year)); + + if(additionalText.length() > 0) { + if(runSpec.description.length() > 0) { + runSpec.description = additionalText + "\r\n" + runSpec.description; + } else { + runSpec.description = additionalText; + } + } + + if(primaryDB.length() > 0) { + DatabaseSelection d = new DatabaseSelection(); + d.databaseName = primaryDB; + runSpec.inputDatabase = d; + } + if(outputDB.length() > 0) { + DatabaseSelection d = new DatabaseSelection(); + d.databaseName = outputDB; + runSpec.outputDatabase = d; + } + if(domainDB.length() > 0) { + DatabaseSelection d = new DatabaseSelection(); + d.databaseName = domainDB; + runSpec.scaleInputDatabase = d; + } + if(advancedFeaturesDB.length() > 0) { + DatabaseSelection d = new DatabaseSelection(); + d.databaseName = advancedFeaturesDB; + runSpec.generatorDatabase = d; + } + + for(Iterator i=userDBs.iterator();i.hasNext();) { + DatabaseSelection d = (DatabaseSelection)i.next(); + boolean found = false; + for(Iterator j=runSpec.databaseSelectionInputSets.iterator(); + j.hasNext();) { + DatabaseSelection existing = (DatabaseSelection)j.next(); + if(doesMatch(d,existing)) { + found = true; + break; + } + } + if(!found) { + runSpec.databaseSelectionInputSets.add(d); + } + } + } + } + + /** Handle the Create RunSpecs button **/ + void handleCreateRunSpecsButton() { + try { + resetMessages(); + checkRunSpec(); + if(messagesHasError) { + return; + } + checkInputs(); + if(messagesHasError) { + return; + } + ArrayList entries = + readControlFile(controlFileFullPath,controlFileWorksheetName); + if(messagesHasError) { + return; + } + checkEntries(entries); + if(messagesHasError) { + return; + } + createOutputFiles(entries); + if(messagesHasError) { + /** + * @issue Unable to create the RunSpecs. Check the messages list for details. + * @explain An error was encountered while the Multiple RunSpec Creator was + * creating new RunSpec files. The most likely causes are insufficient permissions + * to the output folder or invalid characters in the file name prefix. + **/ + JOptionPane.showMessageDialog(null, + "Unable to create the RunSpecs. Check the messages list for details.", + "Multiple RunSpec Creator", JOptionPane.ERROR_MESSAGE); + } else { + /** @nonissue **/ + JOptionPane.showMessageDialog(null, + "RunSpecs created.", + "Multiple RunSpec Creator", JOptionPane.INFORMATION_MESSAGE); + } + } catch(Exception e) { + /** + * @issue Unable to create RunSpecs + * @explain An error was encountered while the Multiple RunSpec Creator was creating new + * RunSpec files. The most likely causes are insufficient permissions to the + * output folder or invalid characters in the file name prefix. + **/ + Logger.logError(e,"Unable to create RunSpecs"); + } finally { + populateMessagesList(); + } + } + + /** Handle the Done button **/ + void handleDoneButton() { + dispose(); + } + + /** Reset the list of messages **/ + void resetMessages() { + messagesHasError = false; + messages.clear(); + populateMessagesList(); + } + + /** Push the list of messages onto the screen **/ + void populateMessagesList() { + messageListModel.clear(); + for(Iterator i=messages.iterator();i.hasNext();) { + String m = (String)i.next(); + messageListModel.addElement(m); + } + } + + /** + * Check the current RunSpec for completeness, recording issues within the messages + * list and to messagesHasError. + **/ + void checkRunSpec() { + if(!isRunSpecReady) { + /** + * @issue Warning: The RunSpec is incomplete and may produce other incomplete RunSpecs. + * @explain The Multiple RunSpec Creator generates RunSpecs based on the currently + * loaded RunSpec. The current RunSpec is incomplete and may still be incomplete after + * applying the user-defined data within the control file, resulting in many incomplete + * RunSpecs being generated. + **/ + messages.add("Warning: " + + "The RunSpec is incomplete and may produce other incomplete RunSpecs."); + } + } + + /** + * Check the user input controls for completeness, recording issues within the messages + * list and to messagesHasError. + **/ + void checkInputs() { + // Check the control file + String t = controlFileFullPath; + if(t == null || t.length() <= 0) { + /** + * @issue Error: Please select a control file first. + * @explain The Multiple RunSpec Creator requires a control file to be selected before + * it can generate new RunSpecs. + **/ + messages.add("Error: Please select a control file first."); + messagesHasError = true; + } else { + File f = new File(t); + if(!f.exists()) { + /** + * @issue Error: The control file does not exist. + * @explain The control file selected within the Multiple RunSpec Creator does + * not exist. + **/ + messages.add("Error: The control file does not exist."); + messagesHasError = true; + } + } + + // Check the prefix + t = prefixText.getText().trim(); + if(t.length() <= 0) { + /** + * @issue Error: Please supply a file name prefix. + * @explain The Multiple RunSpec Creator requires a file name prefix to be given + * before it can generate new RunSpecs. + **/ + messages.add("Error: Please supply a file name prefix."); + messagesHasError = true; + } else { + char[] illegalCharacters = "/\\:&<>*?".toCharArray(); + for(int i=0;i= 0) { + /** + * @issue Error: The prefix cannot contain [*] characters. + * @explain The prefix applied to the file name of each generated RunSpec + * within the Multiple RunSpec Creator cannot contain special characters as + * defined by common operating systems. These include: / \ : & < > * ? + **/ + messages.add("Error: The prefix cannot contain " + + illegalCharacters[i] + " characters."); + messagesHasError = true; + } + } + if(t.length() > 150) { + /** + * @issue Error: The prefix cannot be longer than 150 characters. + * @explain The prefix applied to the file name of each generated RunSpec + * within the Multiple RunSpec Creator cannot be longer than 150 characters. + **/ + messages.add("Error: The prefix cannot be longer than 150 characters."); + messagesHasError = true; + } + } + + // Check the output directory + t = outputDirectoryFullPath; + if(t == null || t.length() <= 0) { + /** + * @issue Error: Please select an output directory first. + * @explain The Multiple RunSpec Creator requires that a directory be selected to + * hold its generated RunSpec files before it can create the files. + **/ + messages.add("Error: Please select an output directory first."); + messagesHasError = true; + } else { + File f = new File(t); + if(!f.exists()) { + f.mkdirs(); + if(!f.exists()) { + /** + * @issue Error: The output directory does not exist and could not be created. + * @explain The directory selected within the Multiple RunSpec Creator to + * receive the generated RunSpecs does not exist and could not be automatically + * created. + **/ + messages.add("Error: " + + "The output directory does not exist and could not be created."); + messagesHasError = true; + } else { + /** @nonissue **/ + messages.add("Info: The output directory was created."); + } + } + } + } + + /** + * Read the control file, creating list of ControlFileEntry objects. + * @param fileName full path and name of the file to be read + * @param worksheetName for XLS files, the name of the worksheet within the file + * @return a list of ControlFileEntry objects, never null but may be empty + * @throws Exception if anything goes wrong + **/ + ArrayList readControlFile(String fileName, String worksheetName) + throws Exception { + ArrayList entries = new ArrayList(); + CellFileReader reader = null; + try { + reader = new CellFileReader(new File(fileName),worksheetName); + int lineNumber = 1; + // Find the column headers. They should be the first non-blank, non-skippable + // row in the file. + while(!reader.isEndOfData() && reader.shouldSkipLine()) { + reader.endRow(); + lineNumber++; + } + if(reader.isEndOfData()) { + /** + * @issue Error: No header row found in control file + * @explain The first row in the control file should contain column headings. + **/ + messages.add("Error: No header row found in control file"); + messagesHasError = true; + return entries; + } + // Read data + while(!reader.isEndOfData()) { + reader.endRow(); // move to the next row, moves past the header row on first use + lineNumber++; + if(reader.shouldSkipLine()) { + continue; + } + ControlFileEntry entry = new ControlFileEntry(); + if(entry.read(reader,lineNumber)) { + entries.add(entry); + } else { + break; + } + } + // Note how many entries were read + /** @nonissue **/ + String t = "Info: Read " + entries.size() + + " data rows, plus the header line, from the control file."; + messages.add(t); + } finally { + if(reader != null) { + reader.close(); + reader = null; + } + } + return entries; + } + + /** + * Compare the server and database portions of two database selections, treating blank + * servers as localhost. + * @param a first object in the comparison + * @param b second object in the comparison + * @return true if the server (with default logic) and database match + **/ + boolean doesMatch(DatabaseSelection a, DatabaseSelection b) { + String aServer = a.serverName; + if(aServer == null || aServer.length() <= 0) { + aServer = "localhost"; + } + String bServer = b.serverName; + if(bServer == null || bServer.length() <= 0) { + bServer = "localhost"; + } + + String aDatabase = a.databaseName; + if(aDatabase == null) { + aDatabase = ""; + } + String bDatabase = b.databaseName; + if(bDatabase == null) { + bDatabase = ""; + } + + return aServer.equalsIgnoreCase(bServer) && aDatabase.equalsIgnoreCase(bDatabase); + } + + /** + * Check the list of entries for issues, updating messages as needed. + * @param entries list of ControlFileEntry objects to be examined + **/ + void checkEntries(ArrayList entries) { + // There should be no duplicate Year/County/Database combinations + TreeSet keys = new TreeSet(); + TreeSet complaints = new TreeSet(); + + for(Iterator i=entries.iterator();i.hasNext();) { + ControlFileEntry entry = (ControlFileEntry)i.next(); + String key = "" + entry.year + "|" + entry.countyID; + key += "|" + entry.getInputDatabaseKey(runSpec.domain == ModelDomain.SINGLE_COUNTY + || runSpec.domain == ModelDomain.PROJECT); + key += "|" + StringUtilities.safeGetString(entry.additionalText); + key += "|" + StringUtilities.safeGetString(entry.outputDB); + if(keys.contains(key)) { + if(!complaints.contains(key)) { + complaints.add(key); + /** + * @issue Error: Duplicate county, year, and databases in the control file, line # + * @explain Within a Multiple RunSpec Creator control file, the combination of a + * county, year, input databases, and output database may only appear once. + * Note that a the domain database is only considered part of this + * check if the RunSpec is using the County or Project scale. + **/ + messages.add("Error: Duplicate county, year, and databases in the control file," + + " line " + entry.lineNumber); + messagesHasError = true; + } + } else { + keys.add(key); + } + } + } + + /** + * Generate the RunSpecs and script file. + * @param entries list of ControlFileEntry objects to be examined + **/ + void createOutputFiles(ArrayList entries) { + // Remember the list of all files, RunSpec and script, that were created, + // so we can cleanup if something goes wrong. + ArrayList createdFiles = new ArrayList(); // holds File objects + boolean shouldDeleteFiles = true; + PrintWriter scriptWriter = null; + String prefix = prefixText.getText().trim(); + if(prefix.length() > 0) { + prefix += "_"; + } + + // Preserve critical data from the currently loaded RunSpec. This data may + // be overwritten by each ControlFileEntry. + GenericCounty originalGenericCounty = runSpec.genericCounty; + TreeSet originalGeographicSelections = runSpec.geographicSelections; + runSpec.geographicSelections = new TreeSet(); + TreeSet originalYears = runSpec.timeSpan.years; + runSpec.timeSpan.years = new TreeSet(); + String originalDescription = runSpec.description; + LinkedList originalUserDatabases = runSpec.databaseSelectionInputSets; + DatabaseSelection originalInputDatabase = runSpec.inputDatabase; + DatabaseSelection originalOutputDatabase = runSpec.outputDatabase; + DatabaseSelection originalScaleInputDatabase = runSpec.scaleInputDatabase; + DatabaseSelection originalGeneratorDatabase = runSpec.generatorDatabase; + + try { + File outputFolder = new File(outputDirectoryFullPath); + File scriptFile = new File(outputFolder,prefix+"ExecuteRunSpecs.bat"); + createdFiles.add(scriptFile); + + // Open the script file and add any header to it + scriptWriter = new PrintWriter(new BufferedWriter(new FileWriter(scriptFile),4096)); + scriptWriter.println("@echo off"); + scriptWriter.println("rem Script generated by the MOVES Multiple RunSpec Creator"); + scriptWriter.println("rem Based on control file: " + controlFileFullPath); + scriptWriter.println("rem -----------------------------------------------------------"); + scriptWriter.println("echo Changing to the MOVES folder and compiling code..."); + String movesFolder = (new File(".")).getCanonicalPath(); + if(movesFolder.indexOf(":") == 1) { // If it starts with a drive letter and colon + scriptWriter.println(movesFolder.substring(0,2)); + } + scriptWriter.println("cd \"" + movesFolder + "\""); + scriptWriter.println("call setenv.bat"); + scriptWriter.println("call ant compile"); + scriptWriter.println("rem -----------------------------------------------------------"); + + TreeMap baseNameCounts = new TreeMap(); + + for(Iterator i=entries.iterator();i.hasNext();) { + ControlFileEntry entry = (ControlFileEntry)i.next(); + // Create the target RunSpec File object with the proper name + String rfName = prefix + entry.countyID + "_" + entry.year; + if(entry.additionalText.length() > 0) { + rfName += "_" + entry.additionalText; + } + // Ensure the file name is unique + Integer baseCount = baseNameCounts.get(rfName); + if(baseCount == null) { + baseCount = new Integer(0); + baseNameCounts.put(rfName,baseCount); + } + baseCount = new Integer(1+baseCount.intValue()); + baseNameCounts.put(rfName,baseCount); + if(baseCount.intValue() > 1) { + rfName += "_" + baseCount; + } + // Finish naming and creating the file + rfName += ".mrs"; + File rf = new File(outputFolder,rfName); + createdFiles.add(rf); + + // Complain if the target file exists and cannot be deleted + if(rf.exists()) { + FileUtilities.deleteFileWithRetry(rf); + if(rf.exists()) { + /** + * @issue Error: Unable to remove old RunSpec file [filename] + * @explain The Multiple RunSpec Creator detected an existing RunSpec file + * with the same name and directory as one it was about to create, but was + * unable to remove the original file. RunSpec creation has been + * halted. + **/ + messages.add("Error: Unable to remove old RunSpec file " + rfName); + messagesHasError = true; + return; + } + } + + // Restore items that are appended or modified instead of replaced + runSpec.description = originalDescription; + if(originalUserDatabases.size() > 0) { + runSpec.databaseSelectionInputSets = new LinkedList(); + for(Iterator ui=originalUserDatabases.iterator(); + ui.hasNext();) { + DatabaseSelection d = (DatabaseSelection)ui.next(); + runSpec.databaseSelectionInputSets.add((DatabaseSelection)d.clone()); + } + } else { + runSpec.databaseSelectionInputSets.clear(); + } + runSpec.inputDatabase = originalInputDatabase; + runSpec.outputDatabase = originalOutputDatabase; + runSpec.scaleInputDatabase = originalScaleInputDatabase; + runSpec.generatorDatabase = originalGeneratorDatabase; + if(entry.isExistingCounty) { + runSpec.genericCounty = null; + } else { + runSpec.genericCounty = GenericCounty.clone(originalGenericCounty); + } + + // Apply each ControlFileEntry to the current RunSpec + entry.toRunSpec(runSpec); + + // Save the current RunSpec + RunSpecXML xmlWriter = new RunSpecXML(runSpec); + xmlWriter.save(rf); + + // Append to the script file + scriptWriter.println("echo Running " + rfName); + scriptWriter.println("java -Xmx512M gov.epa.otaq.moves.master.commandline.MOVESCommandLine" + + " -r \"" + rf.getCanonicalPath() + "\""); + } + + // All done successfully so keep the files that were just created + shouldDeleteFiles = false; + } catch(Exception e) { + Logger.logError(e,"Unable to generate RunSpecs"); + messages.add("Error: Unable to generate RunSpecs, " + e.getMessage()); + messagesHasError = true; + } finally { + // Close the script file writer + if(scriptWriter != null) { + try { + scriptWriter.close(); + } catch(Exception e) { + // Nothing to do here + } + scriptWriter = null; + } + + // Restore critical data preserved from the currently loaded RunSpec + runSpec.geographicSelections = originalGeographicSelections; + runSpec.timeSpan.years = originalYears; + runSpec.description = originalDescription; + runSpec.databaseSelectionInputSets = originalUserDatabases; + runSpec.inputDatabase = originalInputDatabase; + runSpec.outputDatabase = originalOutputDatabase; + runSpec.scaleInputDatabase = originalScaleInputDatabase; + runSpec.generatorDatabase = originalGeneratorDatabase; + runSpec.genericCounty = originalGenericCounty; + + // Remove created files if something went wrong + if(shouldDeleteFiles) { + for(Iterator i=createdFiles.iterator();i.hasNext();) { + File f = (File)i.next(); + try { + f.delete(); + } catch(Exception e) { + // Nothing to do here + } + } + } + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/LoopingToolAction.java b/gov/epa/otaq/moves/master/gui/LoopingToolAction.java new file mode 100644 index 0000000..840f434 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/LoopingToolAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)LoopingToolAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Looping Tool" menu option. + * + * @author Wes Faler + * @version 2009-03-19 +**/ +public class LoopingToolAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "looping-tool"; + /** Constant action name. **/ + static final String NAME = + "Multiple RunSpec Creator"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start the Multiple RunSpec Creator GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Create multiple RunSpecs from a template control file"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'M'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public LoopingToolAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESGUI.java b/gov/epa/otaq/moves/master/gui/MOVESGUI.java new file mode 100644 index 0000000..3b56aa6 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESGUI.java @@ -0,0 +1,105 @@ +/************************************************************************************************** + * @(#)MOVESGUI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.*; +import javax.swing.plaf.metal.*; + +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Class for MOVES GUI, contains main() which invokes the main application window. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2013-12-02 +**/ +public class MOVESGUI { + /** + * Invokes the main application window, MOVESWindow. + * @param args A string containing the argument list passed to the application. + **/ + public static void main(String[] args) { + //setupLookAndFeel(); + + boolean okToPopupMessages = true; + if(args != null && args.length >= 1 && args[0].equalsIgnoreCase("NoAbout")) { + okToPopupMessages = false; + } //moved up here to accomodate error messages + + if(MOVESAPI.hasMasterOnThisComputer()){ + String message = "A MOVES instance is already running, or a firewall is blocking port(s) used by MOVES.\nStartup of this instance of the MOVES master cannot continue."; + if(okToPopupMessages){ + JOptionPane errorPane = new JOptionPane(message, + JOptionPane.ERROR_MESSAGE, + JOptionPane.DEFAULT_OPTION); + JDialog errorDialog = errorPane.createDialog(null,"Error"); + errorDialog.setAlwaysOnTop(true); + errorDialog.setVisible(true); + } + else { + Logger.log(LogMessageCategory.ERROR, message); + } + System.exit(0); + return; + } + + if (!SystemConfiguration.theSystemConfiguration.didLoad) { + String message = "The system configuration failed to load."; + if(okToPopupMessages){ //presenting system configuration error in same way + JOptionPane errorPane = new JOptionPane(message, + JOptionPane.ERROR_MESSAGE, + JOptionPane.DEFAULT_OPTION); + JDialog errorDialog = errorPane.createDialog(null,"Error"); + errorDialog.setAlwaysOnTop(true); + errorDialog.setVisible(true); + } + else { + Logger.log(LogMessageCategory.ERROR, message); + } + System.exit(0); + return; + } + + if(!LoginDialog.checkDatabaseLogin()) { + System.exit(0); + return; + } + + new MOVESWindow(okToPopupMessages); + } + + /** Set the system look and feel **/ + private static void setupLookAndFeel() { + String lookAndFeel = UIManager.getSystemLookAndFeelClassName(); + try { + UIManager.setLookAndFeel(lookAndFeel); + + if(lookAndFeel.equalsIgnoreCase("Metal")) { + MetalLookAndFeel.setCurrentTheme(new DefaultMetalTheme()); + UIManager.setLookAndFeel(new MetalLookAndFeel()); + } + } catch (ClassNotFoundException e) { + System.err.println("Couldn't find class for specified look and feel:" + + lookAndFeel); + System.err.println("Did you include the L&F library in the class path?"); + System.err.println("Using the default look and feel."); + } catch (UnsupportedLookAndFeelException e) { + System.err.println("Can't use the specified look and feel (" + + lookAndFeel + ") on this platform."); + System.err.println("Using the default look and feel."); + } catch (Exception e) { + System.err.println("Couldn't get specified look and feel (" + + lookAndFeel + "), for some reason."); + System.err.println("Using the default look and feel."); + e.printStackTrace(); + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESNavigation.java b/gov/epa/otaq/moves/master/gui/MOVESNavigation.java new file mode 100644 index 0000000..c076a1a --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESNavigation.java @@ -0,0 +1,996 @@ +/************************************************************************************************** + * @(#)MOVESNavigation.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import gov.epa.otaq.moves.common.CompilationFlags; +import gov.epa.otaq.moves.common.ModelDomain; +import gov.epa.otaq.moves.common.ModelScale; +import gov.epa.otaq.moves.common.Models; + +import java.awt.Color; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.TreeMap; + +import javax.swing.BoxLayout; +import javax.swing.ButtonGroup; +import javax.swing.ButtonModel; +import javax.swing.Icon; +import javax.swing.ImageIcon; +import javax.swing.JCheckBox; +import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.ToolTipManager; + +/** + * Class for MOVES MOVESNavigation panel.
    + *
    + * IMPORTANT: This class relies upon the fact that the MOVESWindow has + * already instantiated all panels needed for the options, so only instantiate + * one of these after the panels have have been setup.
    + * This class Constructs the MOVESNavigation panel. Creates, initializes, and + * sets the layouts of the following controls, Description, Scale, Macroscale + * Geographic Bounds, TimeSpans , Vehicles Equipment, OnRoadVehicleEquipment, + * RoadType, PollutantsAndProcesses, ManageInputDataSets. Output, + * OutputEmissionsBreakdown, GeneralOutput, AdvancedPerformanceFeatures + * + * @author Wesley Faler + * @author Tim Hull + * @version 2014-01-15 + **/ +public class MOVESNavigation extends JPanel implements ActionListener, + ItemListener { + /** MOVESWindow that this navigation panel is within **/ + public MOVESWindow parent; + /** Singleton for the navigation panel **/ + public static MOVESNavigation singleton = null; + + /** Panel color. **/ + Color panelColor; + /** Text color. **/ + Color textColor; + /** Description option checkbox. **/ + JRadioButton descriptionOption; + /** Scale option checkbox. **/ + JRadioButton scaleOption; + /** Macroscale Geographic Bounds option checkbox. **/ + JRadioButton macroscaleGeographicBoundsOption; + /** TimeSpans option checkbox. **/ + JRadioButton timeSpansOption; + /** Vehicles Equipment option checkbox. **/ + JCheckBox vehiclesEquipmentOption; + /** Vehicles Equipment image icon. **/ + ImageIcon vehiclesEquipmentImage; + /** OnRoadVehicleEquipment option checkbox. **/ + JRadioButton onRoadVehicleEquipmentOption; + /** OffRoadVehicleEquipment option checkbox. **/ + JRadioButton offRoadVehicleEquipmentOption; + /** RoadType option checkbox. **/ + JRadioButton roadTypeOption; + /** PollutantsAndProcesses option checkbox. **/ + JRadioButton pollutantsAndProcessesOption; + /** ManageInputDataSets option checkbox. **/ + JRadioButton manageInputDataSetsOption; + /** OutputEmissionsBreakdown option checkbox. **/ + JRadioButton outputEmissionsBreakdownOption; + /** GeneralOutput option checkbox. **/ + JRadioButton generalOutputOption; + /** AdvancedPerformanceFeatures option **/ + JRadioButton advancedPerformanceFeaturesOption; + /** Output option checkbox. **/ + JCheckBox outputOption; + /** Output image icon. **/ + ImageIcon outputImage; + /** + * Radio button group for the options, so only one option is selected at a + * time. + **/ + JCheckBox strategyOption; + /** Output image icon. **/ + ImageIcon strategyImage; + /** + * List of JRadioButton objects, each associated with one type of + * InternalControlStrategy + **/ + public LinkedList strategyOptions = new LinkedList(); + /** ButtonGroup definition **/ + ButtonGroup group; + /** + * true when the next call to setNavigationSelection should be ignored. Used + * to avoid display of deprecated panels. + **/ + boolean ignoreNextSetNavigationSelection = false; + /** + * true if a File|New operation has already been done, used to control + * splash screen display + **/ + boolean hasDoneFileNew = false; + + /** The RunSpecEditor object currently in use in the GUI **/ + RunSpecEditor activeEditor = null; + /** Used with the parent's mouse event handling **/ + JRadioButton lastRadioButtonOption = null; + /** Used with the parent's mouse event handling **/ + RunSpecEditor lastRunSpecEditor = null; + + /** + * Collection of JPanel objects in the order that they are displayed. + **/ + public LinkedList panels = new LinkedList(); + /** + * Collection of JRadioButton objects for the options in the order that they + * are displayed + **/ + LinkedList options = new LinkedList(); + /** + * Quick lookup of standard text for each option. Allows colored text to be + * dynamically generated. Keyed by the name of the option's radio button. + **/ + TreeMap textForOptions = new TreeMap(); + /** + * Quick lookup for the panel to show for each option. Allows generic panel + * handling. Keyed by the name of the option's radio button. + **/ + TreeMap panelForOptions = new TreeMap(); + /** + * Status of each option as calculated by RunSpecEditor. Holds + * RunSpecSectionStatus objects keyed by the JPanel/RunSpecEditor that set + * it. + **/ + TreeMap optionStatuses = new TreeMap(); + /** + * Icon type of each option. Used to determine if the option needs a normal + * or a wide icon. Keyed by the option name with data as an Integer. + **/ + TreeMap optionIconTypes = new TreeMap(); + + /** + * Internal class representing human-displayable description of an + * InternalControlStrategy + **/ + class InternalControlStrategyDescriptor { + public String humanDescription; + public String className; + + public InternalControlStrategyDescriptor(String descriptionToUse, + String classNameToUse) { + humanDescription = descriptionToUse; + className = classNameToUse; + } + }; + + /** Information about which InternalControlStrategy classes to be displayed **/ + InternalControlStrategyDescriptor[] internalControlStrategyDescriptors = { + new InternalControlStrategyDescriptor( + "Alternative Vehicle Fuels & Technologies", + "gov.epa.otaq.moves.master.implementation.ghg.internalcontrolstrategies.avft.AVFTControlStrategy"), + new InternalControlStrategyDescriptor( + "On-Road Retrofit", + "gov.epa.otaq.moves.master.implementation.ghg.internalcontrolstrategies.onroadretrofit.OnRoadRetrofitStrategy"), + new InternalControlStrategyDescriptor( + "Rate Of Progress", + "gov.epa.otaq.moves.master.implementation.ghg.internalcontrolstrategies.rateofprogress.RateOfProgressStrategy") }; + + /** Keep a pointer to the global runSpec object **/ + // RunSpec runSpec = null; + + /** + * Constructs the MOVESNavigation panel, also creates, initializes, and sets + * the layouts of the controls. + * + * @param p + * the MOVESWindow that is the parent of this object. + **/ + public MOVESNavigation(MOVESWindow p) { + parent = p; + singleton = this; + + createControls(); + initControls(); + arrangeControls(); + } + + /** + * Set the run spec + * + * @param runSpec + * 0f RunSpec + */ + // public void setRunSpec( RunSpec runSpec) { + // this.runSpec = runSpec; + // } + + /** Creates and initializes all controls on this panel. **/ + void createControls() { + // Set Up colors + panelColor = new Color(98, 176, 255); + textColor = new Color(0, 0, 0); + + group = new ButtonGroup(); + + // Set up navigation option buttons (radio buttons since only one is + // selected at a time) + descriptionOption = createOption("descriptionOption", group, + "Description", parent.descriptionPanel, + RunSpecSectionStatus.NORMAL); + scaleOption = createOption("scaleOption", group, "Scale", + parent.scalePanel, RunSpecSectionStatus.NORMAL); + timeSpansOption = createOption("timeSpansOption", group, "Time Spans", + parent.timeSpansPanel, RunSpecSectionStatus.NORMAL); + macroscaleGeographicBoundsOption = createOption( + "macroscaleGeographicBoundsOption", group, "Geographic Bounds", + parent.macroscaleGeographicBoundsPanel, + RunSpecSectionStatus.NORMAL); + + vehiclesEquipmentImage = new ImageIcon( + "gov/epa/otaq/moves/master/gui/images/treeClosed.gif"); + vehiclesEquipmentOption = new JCheckBox("Vehicles/Equipment", + vehiclesEquipmentImage); + vehiclesEquipmentOption.setName("vehiclesEquipmentOption"); + vehiclesEquipmentOption.setBackground(panelColor); + vehiclesEquipmentOption.setForeground(textColor); + vehiclesEquipmentOption.addActionListener(this); + ToolTipManager.sharedInstance().registerComponent( + vehiclesEquipmentOption); + + onRoadVehicleEquipmentOption = createOption( + "onRoadVehicleEquipmentOption", group, + "On Road Vehicle Equipment", + parent.onRoadVehicleEquipmentPanel, RunSpecSectionStatus.WIDE); + if (CompilationFlags.USE_NONROAD) { + offRoadVehicleEquipmentOption = createOption( + "offRoadVehicleEquipmentOption", group, + "NonRoad Vehicle Equipment", + parent.offRoadVehicleEquipmentPanel, + RunSpecSectionStatus.WIDE); + } + updateVehiclesEquipmentOptionIcon(); + + roadTypeOption = createOption("roadTypeOption", group, "Road Type", + parent.roadTypePanel, RunSpecSectionStatus.NORMAL); + pollutantsAndProcessesOption = createOption( + "pollutantsAndProcessesOption", group, + "Pollutants And Processes", parent.pollutantsAndProcessesPanel, + RunSpecSectionStatus.NORMAL); + + strategyImage = new ImageIcon( + "gov/epa/otaq/moves/master/gui/images/treeClosed.gif"); + strategyOption = new JCheckBox("Strategies", outputImage); + strategyOption.setName("strategyOption"); + strategyOption.setBackground(panelColor); + strategyOption.setForeground(textColor); + strategyOption.addActionListener(this); + ToolTipManager.sharedInstance().registerComponent(strategyOption); + for (int i = 0; i < internalControlStrategyDescriptors.length; i++) { + InternalControlStrategies panel = new InternalControlStrategies(); + panel.setName(internalControlStrategyDescriptors[i].className); + panel.finishSetup(); + JRadioButton option = createOption( + internalControlStrategyDescriptors[i].className, group, + internalControlStrategyDescriptors[i].humanDescription, + panel, RunSpecSectionStatus.WIDE); + strategyOptions.add(option); + } + + updateStrategyOptionIcon(); + + manageInputDataSetsOption = createOption("manageInputDataSetsOption", + group, "Manage Input Data Sets", + parent.manageInputDataSetsPanel, RunSpecSectionStatus.NORMAL); + + outputImage = new ImageIcon( + "gov/epa/otaq/moves/master/gui/images/treeClosed.gif"); + outputOption = new JCheckBox("Output", outputImage); + outputOption.setName("outputOption"); + outputOption.setBackground(panelColor); + outputOption.setForeground(textColor); + outputOption.addActionListener(this); + ToolTipManager.sharedInstance().registerComponent(outputOption); + + generalOutputOption = createOption("generalOutputOption", group, + "General Output", parent.generalOutputPanel, + RunSpecSectionStatus.WIDE); + outputEmissionsBreakdownOption = createOption( + "outputEmissionsBreakdownOption", group, + "Output Emissions Detail", + parent.outputEmissionsBreakdownPanel, RunSpecSectionStatus.WIDE); + + updateOutputOptionIcon(); + + advancedPerformanceFeaturesOption = createOption( + "advancedPerformanceFeaturesOption", group, + "Advanced Performance Features", + parent.advancedPerformancePanel, RunSpecSectionStatus.NORMAL); + } + + /** + * Utility function to build a selectable option. Not used for tree nodes, + * only for options that open panels. + * + * @return a JRadioButton attached to a ButtonGroup and setup for event + * handling + * @param name + * the value passed to setName for the new JRadioButton + * @param g + * the ButtonGroup the new option belongs to + * @param text + * the plain (uncolored) wording to be put on the option + * @param panel + * panel (created by parent MOVESWindow) to be shown when option + * is selected + * @param iconSubType + * icon type for passing to RunSpecSectionStatus.getIcon() + **/ + JRadioButton createOption(String name, ButtonGroup g, String text, + JPanel panel, int iconSubType) { + RunSpecSectionStatus defaultStatus = new RunSpecSectionStatus( + RunSpecSectionStatus.DEFAULTS); + Icon image = defaultStatus.getIcon(iconSubType); + if (panel instanceof RunSpecEditor) { + RunSpecEditor editor = (RunSpecEditor) panel; + RunSpecSectionStatus status = editor.saveDefaultsToRunSpec( + parent.runSpec, optionStatuses); + image = status.getIcon(iconSubType); + } + JRadioButton option = new JRadioButton("" + text + "", + image); + // NOTE: The tags are used here so that their use for highlighted + // ----- items will be faster. The first use of HTML in text incurs a + // delay, + // so best to get it out of the way sooner than when the user is + // watching. + option.setName(name); + option.setBackground(panelColor); + option.setForeground(textColor); + option.addItemListener(this); + ToolTipManager.sharedInstance().registerComponent(option); + option.setToolTipText(RunSpecSectionStatus.explainIcon(option.getIcon())); + + panels.add(panel); + options.add(option); + g.add(option); + textForOptions.put(name, text); + panelForOptions.put(name, panel); + optionIconTypes.put(name, new Integer(iconSubType)); + + return option; + } + + /** Some extra controls initialization on this panel. **/ + void initControls() { + // hide collapsed tree options + onRoadVehicleEquipmentOption.setVisible(false); + if (CompilationFlags.USE_NONROAD) { + offRoadVehicleEquipmentOption.setVisible(false); + } + outputEmissionsBreakdownOption.setVisible(false); + generalOutputOption.setVisible(false); + for (Iterator i = strategyOptions.iterator(); i.hasNext();) { + JRadioButton option = (JRadioButton) i.next(); + option.setVisible(false); + } + } + + /** Sets the layout of the controls. **/ + void arrangeControls() { + setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); + setBackground(panelColor); + + add(descriptionOption); + add(scaleOption); + add(timeSpansOption); + add(macroscaleGeographicBoundsOption); + add(vehiclesEquipmentOption); + add(onRoadVehicleEquipmentOption); + if (CompilationFlags.USE_NONROAD) { + add(offRoadVehicleEquipmentOption); + } + add(roadTypeOption); + add(pollutantsAndProcessesOption); + add(manageInputDataSetsOption); + add(strategyOption); + for (Iterator i = strategyOptions.iterator(); i.hasNext();) { + JRadioButton option = i.next(); + add(option); + } + add(outputOption); + add(generalOutputOption); + add(outputEmissionsBreakdownOption); + add(advancedPerformanceFeaturesOption); + } + + /** + * Listener method, calls the appropriate button handler. + * + * @param e + * the ActionEvent to be handled. + **/ + @Override + public void actionPerformed(ActionEvent e) { + if (e.getSource() == outputOption) { + processOutputButton(); + } else if (e.getSource() == vehiclesEquipmentOption) { + processVehiclesEquipmentButton(); + } else if (e.getSource() == strategyOption) { + processStrategyButton(); + } + } + + /** + * Helper function used during the new file action. Sets the defaults to the + * RunSpec and loads these into the corresponding RunSpecEditor panels. + **/ + public void onFileNew() { + Models.ModelCombination mc = Models.ModelCombination.M1; + if (parent != null && parent.runSpec != null) { + mc = parent.runSpec.getModelCombination(); + } + for (Iterator i = options.iterator(); i.hasNext();) { + JRadioButton option = (i.next()); + if (onRoadVehicleEquipmentOption != null && option == onRoadVehicleEquipmentOption) { + switch (mc) { + case M1: + case M12: + default: + updateOptionDefault(option); + break; + case M2: + break; + } + } else if (offRoadVehicleEquipmentOption != null && option == offRoadVehicleEquipmentOption) { + switch (mc) { + case M2: + case M12: + updateOptionDefault(option); + break; + default: + break; + } + } else { + updateOptionDefault(option); + } + } + + updateOutputOptionIcon(); + updateVehiclesEquipmentOptionIcon(); + updateStrategyOptionIcon(); + + if (hasDoneFileNew) { + checkStrategyAfterFileChange(); + } else { + hasDoneFileNew = true; + } + + parent.checkImporterActions(); + parent.checkExecuteAction(); + } + + private void updateOptionDefault(JRadioButton option) { + JPanel p = panelForOptions.get(option.getName()); + if (p instanceof RunSpecEditor) { + RunSpecEditor editor = (RunSpecEditor) p; + RunSpecSectionStatus status = editor.saveDefaultsToRunSpec( + parent.runSpec, optionStatuses); + editor.loadFromRunSpec(parent.runSpec); + int iconSubType = optionIconTypes.get(option.getName()).intValue(); + option.setIcon(status.getIcon(iconSubType)); + option.setToolTipText(RunSpecSectionStatus.explainIcon(option + .getIcon())); + } + } + + /** + * Helper function used during any of the open file actions. Calculates the + * RunSpec section status and loads the RunSpec data into the corresponding + * RunSpecEditor panels. + **/ + public void onFileOpen() { + Models.ModelCombination mc = Models.ModelCombination.M1; + if (parent != null && parent.runSpec != null) { + mc = parent.runSpec.getModelCombination(); + } + for (Iterator i = options.iterator(); i.hasNext();) { + JRadioButton option = (i.next()); + if (onRoadVehicleEquipmentOption != null && option == onRoadVehicleEquipmentOption) { + switch (mc) { + case M1: + case M12: + default: + updateOption(option); + break; + case M2: + break; + } + } else if (offRoadVehicleEquipmentOption != null && option == offRoadVehicleEquipmentOption) { + switch (mc) { + case M2: + case M12: + updateOption(option); + break; + default: + break; + } + } else { + updateOption(option); + } + + } + updateOutputOptionIcon(); + updateVehiclesEquipmentOptionIcon(); + updateStrategyOptionIcon(); + // Set the execute action enabled state in the parent window + parent.checkExecuteAction(); + parent.checkImporterActions(); + + checkStrategyAfterFileChange(); + } + + private void updateOption(JRadioButton option) { + JPanel p = panelForOptions.get(option.getName()); + if (p instanceof RunSpecEditor) { + RunSpecEditor editor = (RunSpecEditor) p; + RunSpecSectionStatus status = editor.calculateRunSpecSectionStatus( + parent.runSpec, optionStatuses); + editor.loadFromRunSpec(parent.runSpec); + int iconSubType = optionIconTypes.get(option.getName()).intValue(); + option.setIcon(status.getIcon(iconSubType)); + option.setToolTipText(RunSpecSectionStatus.explainIcon(option + .getIcon())); + } + } + + /** + * Update the displayed strategy options after File|Open or File|New, taking + * care not to show a deprecated panel. + **/ + void checkStrategyAfterFileChange() { + processStrategyButton(); + + boolean shouldJump = true; + if (lastRadioButtonOption != null && lastRadioButtonOption.isVisible()) { + shouldJump = false; + } + if (shouldJump) { + // Set the focus to the Description option + group.setSelected(descriptionOption.getModel(), true); + ignoreNextSetNavigationSelection = true; + } + } + + /** + * Listener method, watches for options to become selected/unselected and + * modifies their text accordingly so that the current option is + * highlighted. + * + * @param e + * the ItemEvent to be handled + **/ + @Override + public void itemStateChanged(ItemEvent e) { + JRadioButton option = (JRadioButton) e.getItem(); + lastRadioButtonOption = option; + setRadioButtonHighlighting(option, + e.getStateChange() == ItemEvent.SELECTED); + + JPanel p = panelForOptions.get(option.getName()); + if (p instanceof RunSpecEditor) { + RunSpecEditor editor = (RunSpecEditor) p; + lastRunSpecEditor = editor; + if (e.getStateChange() == ItemEvent.SELECTED) { + if (editor != activeEditor) { + activeEditor = editor; + editor.loadFromRunSpec(parent.runSpec); + } + } + updateRunSpecSectionStatus(option, editor, false); + } + if (e.getStateChange() == ItemEvent.SELECTED) { + parent.rightScrollPane.setViewportView(p); + } + } + + /** + * Used to update the current RunSpecEditor's icon based on its status. + **/ + public void updateRunSpecSectionStatus() { + updateRunSpecSectionStatus(lastRadioButtonOption, lastRunSpecEditor, + false); + } + + /** + * Used to update a RunSpecEditor's icon based on its status. + * + * @param option + * The RunSpecEditor's corresponding JRadioButton control in the + * nav panel. + * @param editor + * The RunSpecEditor, may be null. + * @param scaleDidChange + * true if the should be notified of a changed scale. + **/ + public void updateRunSpecSectionStatus(JRadioButton option, + RunSpecEditor editor, boolean scaleDidChange) { + if (editor == null && option != null) { + JPanel p = panelForOptions.get(option.getName()); + if (p instanceof RunSpecEditor) { + editor = (RunSpecEditor) p; + } + } + if (option == null || editor == null) { + return; + } + RunSpecSectionStatus status = null; + if (scaleDidChange) { + // equipment radio buttons need to be updated + this.processVehiclesEquipmentButton(); + + status = editor.onScaleChange(parent.runSpec, optionStatuses); + if (status.status == RunSpecSectionStatus.OK) { + status.status = RunSpecSectionStatus.DEFAULTS; + JPanel p = panelForOptions.get(option.getName()); + optionStatuses.put(p.getName(), status); + } + } else { + editor.saveToRunSpec(parent.runSpec); + status = editor.calculateRunSpecSectionStatus(parent.runSpec, + optionStatuses); + } + int iconSubType = optionIconTypes.get(option.getName()).intValue(); + option.setIcon(status.getIcon(iconSubType)); + option.setToolTipText(RunSpecSectionStatus.explainIcon(option.getIcon())); + // Handle special cases for updating the vehicles/equipment tree nodes + if (option == onRoadVehicleEquipmentOption + || (CompilationFlags.USE_NONROAD && option == offRoadVehicleEquipmentOption)) { + updateVehiclesEquipmentOptionIcon(); + } + // Handle special cases for updating the control strategies tree nodes + for (Iterator i = strategyOptions.iterator(); i.hasNext();) { + JRadioButton listedOption = (JRadioButton) i.next(); + if (option == listedOption) { + updateStrategyOptionIcon(); + break; + } + } + // Handle special cases for updating the output tree nodes + if (option == outputEmissionsBreakdownOption + || option == generalOutputOption) { + updateOutputOptionIcon(); + } + // Also check if all RunSpecEditors are ready + parent.checkExecuteAction(); + parent.checkImporterActions(); + } + + /** Commits any changes in the active panel to the current RunSpec **/ + public void commitActiveEditor() { + if (activeEditor != null) { + activeEditor.saveToRunSpec(parent.runSpec); + } + } + + /** Reload the active panel from the current RunSpec **/ + public void reloadActiveEditor() { + if (activeEditor != null) { + activeEditor.loadFromRunSpec(parent.runSpec); + } + } + + /** + * Sets the active navigation selection. This will invoke item highlighting + * and commit necessary changes to the current RunSpec. + * + * @param button + * The button to activate. Use null to deselect all. + * @return The previously active ButtonModel interface + **/ + public ButtonModel setNavigationSelection(ButtonModel button) { + ButtonModel activeSelection = group.getSelection(); + if (ignoreNextSetNavigationSelection) { + ignoreNextSetNavigationSelection = false; + } else { + group.setSelected(button, true); + } + return activeSelection; + } + + /** + * This method is used to add visual highlighting to the radio buttons on + * the left splitter panel that are used for navigation. + * + * @param radioButton + * The target radio button + * @param highlight + * Should the button be highlighted or unhighlighted + **/ + public void setRadioButtonHighlighting(JRadioButton radioButton, + boolean highlight) { + String s = textForOptions.get(radioButton.getName()); + if (s != null) { + if (highlight) { + radioButton.setText("" + s + + ""); + } else { + radioButton.setText("" + s + ""); + } + } + } + + /** Update the summary icon shown for the Vehicles/Equipment option **/ + public void updateVehiclesEquipmentOptionIcon() { + // show/hide tree objects + + boolean shouldBeVisible = vehiclesEquipmentOption.isSelected(); + + if (parent != null && parent.runSpec != null) { + onRoadVehicleEquipmentOption.setVisible(false); + if (CompilationFlags.USE_NONROAD) { + offRoadVehicleEquipmentOption.setVisible(false); + } + Models.ModelCombination mc = Models.evaluateModels(parent.runSpec.models); + switch (mc) { + default: + case M1: + onRoadVehicleEquipmentOption.setVisible(shouldBeVisible); + break; + case M2: + if (CompilationFlags.USE_NONROAD) { + offRoadVehicleEquipmentOption.setVisible(shouldBeVisible); + } + break; + } + } else { + onRoadVehicleEquipmentOption.setVisible(shouldBeVisible); + if (CompilationFlags.USE_NONROAD) { + offRoadVehicleEquipmentOption.setVisible(shouldBeVisible); + } + } + + // update the status + + RunSpecSectionStatus status = new RunSpecSectionStatus(); + status.makeWorst(); + if (parent != null && parent.runSpec != null) { + Models.ModelCombination mc = Models + .evaluateModels(parent.runSpec.models); + switch (mc) { + case M1: + status.makeBestOfTwo(optionStatuses + .get(parent.onRoadVehicleEquipmentPanel.getName())); + parent.onRoadVehicleEquipmentPanel.setEnabled(true); + parent.offRoadVehicleEquipmentPanel.setEnabled(false); + break; + case M2: + if (CompilationFlags.USE_NONROAD) { + status.makeBestOfTwo(optionStatuses + .get(parent.offRoadVehicleEquipmentPanel.getName())); + } + parent.onRoadVehicleEquipmentPanel.setEnabled(false); + parent.offRoadVehicleEquipmentPanel.setEnabled(true); + break; + default: + break; + } + } else { + status.makeBestOfTwo(optionStatuses + .get(parent.onRoadVehicleEquipmentPanel.getName())); + if (CompilationFlags.USE_NONROAD) { + status.makeBestOfTwo(optionStatuses + .get(parent.offRoadVehicleEquipmentPanel.getName())); + } + } + + int iconSubType = RunSpecSectionStatus.TREE_CLOSED; + if (vehiclesEquipmentOption.isSelected()) { + iconSubType = RunSpecSectionStatus.TREE_OPEN; + } + vehiclesEquipmentOption.setIcon(status.getIcon(iconSubType)); + vehiclesEquipmentOption.setToolTipText(RunSpecSectionStatus + .explainIcon(vehiclesEquipmentOption.getIcon())); + } + + /** Update the summary icon shown for the Output option **/ + public void updateOutputOptionIcon() { + RunSpecSectionStatus status = new RunSpecSectionStatus(); + status.makeBest(); + status.makeWorstOfTwo(optionStatuses + .get(parent.outputEmissionsBreakdownPanel.getName())); + status.makeWorstOfTwo(optionStatuses.get(parent.generalOutputPanel + .getName())); + int iconSubType = RunSpecSectionStatus.TREE_CLOSED; + if (outputOption.isSelected()) { + iconSubType = RunSpecSectionStatus.TREE_OPEN; + } + outputOption.setIcon(status.getIcon(iconSubType)); + outputOption.setToolTipText(RunSpecSectionStatus + .explainIcon(outputOption.getIcon())); + } + + /** Update the summary icon shown for the Strategy option **/ + public void updateStrategyOptionIcon() { + RunSpecSectionStatus status = new RunSpecSectionStatus(); + status.makeBest(); + for (Iterator i = strategyOptions.iterator(); i.hasNext();) { + JRadioButton option = i.next(); + RunSpecSectionStatus optionStatus = optionStatuses.get(option + .getName()); + if (optionStatus != null) { + status.makeWorstOfTwo(optionStatus); + } + } + int iconSubType = RunSpecSectionStatus.TREE_CLOSED; + if (strategyOption.isSelected()) { + iconSubType = RunSpecSectionStatus.TREE_OPEN; + } + strategyOption.setIcon(status.getIcon(iconSubType)); + strategyOption.setToolTipText(RunSpecSectionStatus + .explainIcon(strategyOption.getIcon())); + } + + /** Handles the Vehicles/Equipment button. **/ + public void processVehiclesEquipmentButton() { + + updateVehiclesEquipmentOptionIcon(); + } + + /** Handles the Output button. **/ + public void processOutputButton() { + // show/hide tree objects + boolean shouldBeVisible = outputOption.isSelected(); + + outputEmissionsBreakdownOption.setVisible(shouldBeVisible); + generalOutputOption.setVisible(shouldBeVisible); + + updateOutputOptionIcon(); + } + + /** Handles the Strategy button. **/ + public void processStrategyButton() { + // show/hide tree objects + boolean shouldBeVisible = strategyOption.isSelected(); + + for (Iterator i = strategyOptions.iterator(); i.hasNext();) { + JRadioButton option = i.next(); + boolean shouldOptionBeVisible = shouldBeVisible; + if (shouldOptionBeVisible) { + JPanel p = panelForOptions.get(option.getName()); + if (p != null && p instanceof InternalControlStrategies) { + InternalControlStrategies ics = (InternalControlStrategies) p; + if (ics.useImporterOnly && !ics.hasAnInstance()) { + shouldOptionBeVisible = false; + } + } + } + option.setVisible(shouldBeVisible && shouldOptionBeVisible); + } + + updateStrategyOptionIcon(); + } + + /** + * Handle the event of a deletion of an InternalControlStrategy object that + * should result in its panel being hidden. + * + * @param icsPanel + * panel in which the deletion occured + **/ + public void onDeletedLastInstance(JPanel icsPanel) { + commitActiveEditor(); + processStrategyButton(); + clearSelection(); + // Set the focus to the Description option + group.setSelected(descriptionOption.getModel(), true); + } + + /** Removes any indication of a selected panel **/ + public void clearSelection() { + activeEditor = null; + lastRadioButtonOption = null; + lastRunSpecEditor = null; + + for (Iterator i = options.iterator(); i.hasNext();) { + JRadioButton option = i.next(); + setRadioButtonHighlighting(option, false); + group.remove(option); + option.getModel().setGroup(null); + + option.setSelected(false); + option.getModel().setSelected(false); + } + + for (Iterator i = options.iterator(); i.hasNext();) { + JRadioButton option = i.next(); + group.add(option); + } + } + + /** + * Called by subpanels when the user changes the model scale. + * + * @param newScale + * scale being set, may or may not match the current RunSpec's + * scale. + **/ + public void onScaleChange(RunSpecEditor editor, ModelScale newScale) { + // Save the current panel's data + if (editor != null) { + // System.out.println("scale before: " + parent.runSpec.scale); + editor.saveToRunSpec(parent.runSpec); + // System.out.println("scale after: " + parent.runSpec.scale); + } + // Save data from panels affected by a scale change. + // Note that to bring the user's attention to these panels, their icons + // are set the default data icon instead of the OK icon upon success. + // updateRunSpecSectionStatus(timeSpansOption,null,true); + updateRunSpecSectionStatus(macroscaleGeographicBoundsOption, null, true); + updateRunSpecSectionStatus(roadTypeOption, null, true); + updateRunSpecSectionStatus(pollutantsAndProcessesOption, null, true); + updateRunSpecSectionStatus(outputEmissionsBreakdownOption, null, true); + updateRunSpecSectionStatus(generalOutputOption, null, true); + } + + /** + * Called by subpanels when the user changes the model domain. + * + * @param newDomain + * domain being set, may or may not match the current RunSpec's + * domain. + **/ + public void onDomainChange(RunSpecEditor editor, ModelDomain newDomain) { + // Save the current panel's data + if (editor != null) { + // System.out.println("domain before: " + parent.runSpec.domain); + editor.saveToRunSpec(parent.runSpec); + // System.out.println("domain after: " + parent.runSpec.domain); + } + // Save data from panels affected by a domain change. + // Note that to bring the user's attention to these panels, their icons + // are set the default data icon instead of the OK icon upon success. + updateRunSpecSectionStatus(timeSpansOption, null, true); + updateRunSpecSectionStatus(macroscaleGeographicBoundsOption, null, true); + // updateRunSpecSectionStatus(roadTypeOption,null,true); + // updateRunSpecSectionStatus(pollutantsAndProcessesOption,null,true); + // updateRunSpecSectionStatus(outputEmissionsBreakdownOption,null,true); + } + + /** + * Called by subpanels when the user changes the model. Added by Jizhen + * + * @param newModels + * Models being set, may or may not match the current RunSpec's + * models. + **/ + public void onModelsChange(RunSpecEditor editor, Models newModels) { + // Save the current panel's data + if (editor != null) { + // System.out.println("model before: " + parent.runSpec.domain); + editor.saveToRunSpec(parent.runSpec); + // System.out.println("model after: " + parent.runSpec.domain); + } + // Check, update and save data from panels affected by a model change. + for (JPanel panel : this.panelForOptions.values()) { + if (panel instanceof RunSpecEditor) { + ((RunSpecEditor) panel).onModelChange(parent.runSpec, + optionStatuses); + } + } + + // Save data from panels affected by a model change. + // Note that to bring the user's attention to these panels, their icons + // are set the default data icon instead of the OK icon upon success. + updateRunSpecSectionStatus(timeSpansOption, null, true); + // updateRunSpecSectionStatus(macroscaleGeographicBoundsOption,null,true); + updateRunSpecSectionStatus(roadTypeOption, null, true); + // parent.pollutantsAndProcessesPanel.onModelChange(parent.runSpec, + // optionStatuses); + updateRunSpecSectionStatus(pollutantsAndProcessesOption, null, true); + updateRunSpecSectionStatus(generalOutputOption, null, true); + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESProgress.java b/gov/epa/otaq/moves/master/gui/MOVESProgress.java new file mode 100644 index 0000000..993d640 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESProgress.java @@ -0,0 +1,430 @@ +/************************************************************************************************** + * @(#)MOVESProgress.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; + +/** + * Class for MOVES MOVESProgress panel. Constructs the MOVESProgress panel, also creates and + * initializes the layouts of the controls, and Shows or hides the progress bar. Progress + * notificatins are sent by the MOVESEngine through a RunID. + * + * @author Daniel Cox + * @author Wesley Faler + * @version 2014-06-27 +**/ +public class MOVESProgress extends JPanel implements MOVESEngineListener, ActionListener { + /** EPA Seal image icon. **/ + ImageIcon movesLogo; + /** EPA Seal label. **/ + JLabel movesLogoLabel; + /** The progess bar. **/ + JProgressBar progressBar; + /** Used to put space between logo and progress bar. **/ + JLabel emptyLabel; + /** The associated RunID of the MOVESEngine that is sending progress notifications. **/ + long runID = 0; + /** Used with the message log timer to identify when the list should be emptied. **/ + long lastRunID = 0; + /** Used to determine when the database has new error messages to display **/ + long lastMOVESErrorID = 0; + /** + * Timer used with the run errors message display. + **/ + javax.swing.Timer messageLogTimer = new javax.swing.Timer(2000, this); + /** Message log component. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** Parent frame **/ + JFrame parentFrame; + /** true when the time estimate dialog should be shown **/ + boolean allowTimeDialog = true; + + class EstimatedTimeRemainingDialog extends JDialog implements ActionListener { + /** The dialog result, indicates true on OK button. **/ + public boolean result = false; + /** The parent JFrame which invokes this dialog. **/ + JFrame frame; + /** OK button. **/ + JButton okButton; + /** Textual status display **/ + JLabel stateLabel; + /** Textual time remaining display **/ + JLabel timeLabel; + /** flag set when the dialog is shown for the first time **/ + boolean isShown = false; + + public EstimatedTimeRemainingDialog(JFrame parent) { + super(parent, "Estimated Time Remaining"); + frame = parent; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(false); + } + + /** Allows the parent to display this dialog as modal. **/ + public void showModeless() { + isShown = true; + pushDataToControls(); + pack(); + setModal(false); + setVisible(true); //show(); + } + + /** Data from member variables to dialog controls (currently unused). **/ + public void pushDataToControls() { + if(result) { + return; + } + MOVESEngine.CompletionEstimate estimate = MOVESEngine.theInstance.estimateCompletion(); + String newStateText = estimate.state; + String newTimeText = ""; + stateLabel.setText(estimate.state); + if(estimate.remainingMillis <= 0) { + newTimeText = "estimating completion..."; + revalidate(); + } else if(estimate.remainingMillis < 720*60*1000) { + int minutes = (int)(0.5 + estimate.remainingMillis / 60.0 / 1000.0); + newTimeText = minutes + " minutes"; + } else { + double hours = estimate.remainingMillis / 60.0 / 60.0 / 1000.0; + hours = (int)(hours * 100); + hours = hours / 100; + newTimeText = hours + " hours"; + } + if(!newStateText.equals(stateLabel.getText()) + || !newTimeText.equals(timeLabel.getText())) { + stateLabel.setText(newStateText); + timeLabel.setText(newTimeText); + revalidate(); + if(!isShown) { + showModeless(); + } + } + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + okButton = new JButton("OK"); + okButton.addActionListener(this); + okButton.setName("okButton"); + + stateLabel = new JLabel(" "); + stateLabel.setName("stateLabel"); + timeLabel = new JLabel(" "); + timeLabel.setName("timeLabel"); + } + + /** + * Sets the layout of the controls. + * @return the container as JPanel of the controls + **/ + public JPanel arrangeControls() { + stateLabel.setPreferredSize(new Dimension(200,20)); + timeLabel.setPreferredSize(new Dimension(200,20)); + + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + result.add(stateLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 2, 1); + result.add(timeLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + result.add(okButton, gbc); + + return result; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == okButton) { + handleOKButton(); + } + } + + /** + * OK button handler, will save the choices to the System Configuration + * before closing this dialog. + **/ + void handleOKButton() { + // indicates OK button + result = true; + dispose(); + } + } + + /** Modeless dialog showing the estimated time remaining **/ + EstimatedTimeRemainingDialog timeRemainingDialog = null; + + /** + * Constructs an MOVESProgress panel, also creates and sets the layouts of the controls. + * @param shouldHideProgressBar True to initially hide the progress bar. + **/ + public MOVESProgress(boolean shouldHideProgressBar) { + createControls(shouldHideProgressBar); + arrangeControls(); + // This class receives engine progress notifications + MOVESEngine.subscribeToProgress(this); + } + + /** + * Shows or hides the progress bar. + * @param showProgressBar Should the progress bar be shown or hidden. + **/ + public void setProgressBarVisible(boolean showProgressBar) { + progressBar.setVisible(showProgressBar); + messageLogPane.setVisible(showProgressBar); + if(!showProgressBar && timeRemainingDialog != null) { + timeRemainingDialog.dispose(); + timeRemainingDialog = null; + } + } + + /** + * Creates and initializes all controls on this panel. + * @param shouldHideProgressBar Should the progress bar be initially hidden + **/ + void createControls(boolean shouldHideProgressBar) { + movesLogo = new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_logo_480.png"); + movesLogoLabel = new JLabel(movesLogo); + movesLogoLabel.setName("movesLogoLabel"); + emptyLabel = new JLabel(" "); + emptyLabel.setName("emptyLabel"); + + progressBar = new JProgressBar(); + progressBar.setName("progressBar"); + progressBar.setMinimum(1); + progressBar.setMaximum(100); + progressBar.setVisible(!shouldHideProgressBar); + + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(4); + messageLogList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + messageLogPane.setName("messageLogPane"); + messageLogPane.setVisible(!shouldHideProgressBar); + + messageLogTimer.start(); + } + + /** Sets the layout of the controls. **/ + void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 4; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "NORTH", 1, 1); + add(movesLogoLabel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 1, "CENTER", 1, 1); + gbc.weightx = 0.0; + gbc.weighty = 0.0; + add(emptyLabel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "CENTER", 1, 1); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 0.0; + gbc.weighty = 1.0; + add(messageLogPane, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 3, "SOUTH", 1, 1); + gbc.fill = GridBagConstraints.HORIZONTAL; + gbc.weightx = 1.0; + gbc.weighty = 0.0; + add(progressBar, gbc); + } + + /** + * Handles MOVESEngine progress notifications + * @param srcEngine The MOVESEngine this notification comes from. + **/ + public void engineProgressUpdate(MOVESEngine srcEngine) { + runID = srcEngine.getActiveRunID(); + progressBar.setValue((int)(srcEngine.getPercentCompleted() * 100 + 0.5)); + // Update the dialog box showing estimated completion time + if(parentFrame == null) { + Component parent = getParent(); + while(parent != null && !(parent instanceof JFrame)) { + parent = parent.getParent(); + } + parentFrame = (JFrame)parent; + } + if(timeRemainingDialog == null && parentFrame != null && allowTimeDialog) { + timeRemainingDialog = new EstimatedTimeRemainingDialog(parentFrame); + if(parentFrame != null) { + timeRemainingDialog.setLocation(parentFrame.getLocationOnScreen().x + 100, + parentFrame.getLocationOnScreen().y + 100); + } + } + if(timeRemainingDialog != null && !timeRemainingDialog.result) { + timeRemainingDialog.pushDataToControls(); + } + } + + /** + * Called when the MOVESEngine object is completing + * @param srcEngine The MOVESEngine this notification comes from. + **/ + public void engineIsCompleting(MOVESEngine srcEngine) { + // Do nothing. MOVESWindow will call handleEngineIsCompleting() + // at the proper time, thus avoiding issues with the non-gui thread + // that is calling this routine accessing the GUI. + } + + /** Utility routine called by MOVESWindow once a simulation is complete. **/ + public void handleEngineIsCompleting() { + runID = 0; + // Remove the dialog box showing estimated completion time + if(timeRemainingDialog != null && !timeRemainingDialog.result) { + timeRemainingDialog.dispose(); + timeRemainingDialog = null; + } + } + + /** + * This method acts as the Action handler delegate for all the actions. + * @param evt The event caused by an action being performed. + **/ + public void actionPerformed(ActionEvent evt) { + String command = evt.getActionCommand(); + // Compare the action command to the known actions. + if(messageLogTimer == evt.getSource()) { + handleMessageLogTimer(); + } + } + + /** + * Updates the JList control with the current contents of the MOVESError table for the + * current RunID. + **/ + void handleMessageLogTimer() { + String sql = ""; + if(runID == 0) { + return; + } + if(lastRunID != runID) { + messageLogModel.removeAllElements(); + lastMOVESErrorID = 0; + } + Connection outputDB = null; + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + } catch(Exception e) { + Logger.logError(e,"Attempt to update MOVES error log failed to get connection to "+ + "database."); + } + try { + // The MOVESErrorID is an auto-number primary key, can be used as a sequence number, + // show most recent first + sql = "SELECT * FROM MOVESError " + + "WHERE MOVESRunID = ? " + + "ORDER BY MOVESErrorID DESC"; + PreparedStatement statement = outputDB.prepareStatement(sql); + statement.setLong(1, runID); + ResultSet results = SQLRunner.executeQuery(statement,sql); + long MOVESErrorID = 0; + String messageLine = ""; + boolean shouldRegenerate = false; + boolean didRegenerate = false; + + int stateID; + int countyID; + int month; + int year; + while(results.next()) { + MOVESErrorID = results.getLong("MOVESErrorID"); + if(!shouldRegenerate && MOVESErrorID > lastMOVESErrorID) { + // Have new logs, so must regenerate the DefaultListModel + shouldRegenerate = true; + lastMOVESErrorID = MOVESErrorID; + } + if(shouldRegenerate) { + if(!didRegenerate) { + messageLogModel.removeAllElements(); + didRegenerate = true; + } + messageLine = ""; + stateID = results.getInt("stateID"); + countyID = results.getInt("countyID"); + year = results.getInt("yearID"); + month = results.getInt("monthID"); + if(stateID != 0 && countyID != 0) { + messageLine += ("State:" + stateID + " County:" + countyID); + } + if(month != 0 && year != 0) { + messageLine += (year + "-" + month); + } + messageLine += (" " + results.getString("errorMessage")); + messageLine = messageLine.replace('\n',' '); + messageLine = messageLine.replace('\r',' '); + messageLine = messageLine.replace('\t',' '); + messageLogModel.addElement(messageLine); + } else { + // No new logs have been found for this RunID + break; + } + } + results.close(); + statement.close(); + } catch(SQLException e) { + e.printStackTrace(); + String errMsg = "Unable to read from the MOVESError table, does this table" + + " exist in the output database?"; + Logger.logSqlError(e, errMsg, sql); + messageLogModel.addElement(errMsg); + } + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputDB); + } catch(Exception e) { + Logger.logError(e,"MOVES Progress could not check-in its output database connection"); + } + lastRunID = runID; + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESRunErrorLog.java b/gov/epa/otaq/moves/master/gui/MOVESRunErrorLog.java new file mode 100644 index 0000000..2d1c403 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESRunErrorLog.java @@ -0,0 +1,374 @@ +/************************************************************************************************** + * @(#)MOVESRunErrorLog.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.io.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; + +/** + * Class for MOVESRunErrorLog Dialog. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2013-08-20 +**/ +public class MOVESRunErrorLog extends JDialog implements ActionListener { + /** + * Internal structure to associate a database ID with a string for display, used with the + * selectRunCombo control. + **/ + class ComboItem { + /** Database identifier for Item **/ + long id = 0; + /** Displayed value for Item **/ + String display = ""; + + /** Default constructor **/ + public ComboItem() { + } + + /** + * Constructor to set the database id and displayed value + * @param id The database identifier for this item. + * @param display The displayed value for the item. + **/ + public ComboItem(long id, String display) { + this.id = id; + this.display = display; + } + + /** Standard method to convert object to a string representation **/ + public String toString() { + return "Run: " + id + " - " + display; + } + }; + + /** The dialog result, indicates true on OK button. **/ + public int result = 0; + /** OK button. **/ + JButton okButton; + /** SelectRun panel. **/ + JPanel selectRunPanel; + /** Select Run label. **/ + JLabel selectRunLabel; + /** Select Run combobox. **/ + ExtendedComboBox selectRunCombo; + /** Message log list. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** A shortcut to the MOVESWindow's RunSpec name. **/ + String runSpecName; + /** The default runID to show errors for, it is an optional setting. **/ + public long runID = 0; + + /** + * Constructor + * @param parent The parent of this dialog. + **/ + public MOVESRunErrorLog(JFrame parent) { + super(parent, "MOVES Run Error Log"); + File runSpecFile = new File(((MOVESWindow)parent).runSpecFilePath); + //runSpecName = FileUtilities.getBaseFileName(runSpecFile); + runSpecName = FileUtilities.safeGetPath(runSpecFile); + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Data from member variables to dialog controls (currently unused). **/ + void pushDataToControls() { + } + + /** + * Creates and arranges all dialog controls. + * @return the JPanel container of the controls + **/ + JPanel createPanel() { + createControls(); + return arrangeControls(); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + okButton = new JButton("OK"); + okButton.addActionListener(this); + okButton.setName("okButton"); + ToolTipHelper.add(okButton,"Close the dialog"); + + selectRunCombo = new ExtendedComboBox(); + selectRunCombo.setName("selectRunCombo"); + selectRunLabel = new JLabel("Select Run:"); + selectRunLabel.setName("selectRunLabel"); + selectRunCombo.setEditable(false); + selectRunCombo.addActionListener(this); + ToolTipHelper.add(selectRunCombo,"Select a run to see the messages logged during the run"); + selectRunPanel = new JPanel(); + selectRunPanel.setName("selectRunPanel"); + + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(16); + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + messageLogPane.setName("messageLogPane"); + messageLogPane.setPreferredSize(new Dimension(600, 200)); + ToolTipHelper.add(messageLogPane,"List of messages logged during a run"); + + populateSelectRunCombo(); + } + + /** + * Sets the layout of the controls. + * @return the JPanel container of the controls + **/ + public JPanel arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + selectRunPanel.setLayout(new GridBagLayout()); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + selectRunPanel.add(selectRunLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + selectRunPanel.add(selectRunCombo, gbc); + + gbc = new GridBagConstraints(); + JPanel result = new JPanel(); + result.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 2; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + result.add(selectRunPanel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1,0, "EAST", 1, 1); + result.add(okButton, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 1, "SOUTH", 2, 1); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1.0; + gbc.weighty = 1.0; + result.add(messageLogPane, gbc); + + return result; + } + + /** + * Handles various actions. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == okButton) { + handleOKButton(); + } else if((e.getSource() == selectRunCombo) + && (e.getActionCommand().equals("comboBoxChanged"))) { + handleSelectRunComboChange(); + } + } + + /** + * Populate error log from movesoutput database. + **/ + void populateSelectRunCombo() { + String sql = ""; + Connection outputDB = null; + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + } catch(Exception e) { + Logger.logError(e,"Unable to get a database connection for loading a list of runs" + + " for the MOVES Error Log."); + } + try { + PreparedStatement statement = null; + // Filter the run list for the current RunSpec + if(runSpecName.length() > 0) { + sql = "SELECT MOVESRunID, runDateTime FROM MOVESRun WHERE LOWER(RunSpecFileName) = ? " + + "ORDER BY runDateTime DESC"; + statement = outputDB.prepareStatement(sql); + statement.setString(1, runSpecName); + } else { + sql = "SELECT MOVESRunID, runDateTime FROM MOVESRun ORDER BY runDateTime DESC"; + statement = outputDB.prepareStatement(sql); + } + ResultSet results = SQLRunner.executeQuery(statement,sql); + boolean didAdd = false; + ComboItem nextItem = null; + int selectedIndex = 0; + while(results.next()) { + didAdd = true; + nextItem = new ComboItem(results.getLong(1), results.getString(2)); + selectRunCombo.addItem(nextItem); + if(results.getLong(1) == runID) { + selectedIndex = selectRunCombo.getItemCount() - 1; + } + } + if(!didAdd) { + selectRunCombo.addItem(new ComboItem() { public String toString() { return "No MOVESRun data found."; }}); + } else if(runID != 0) { + selectRunCombo.setSelectedIndex(selectedIndex); + } + results.close(); + statement.close(); + } catch(SQLException e) { + Logger.logSqlError(e,"Loading a list of runs for the MOVES Error Log failed.", sql); + } + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputDB); + } catch(Exception e) { + Logger.logError(e,"Could not check in the database connection used to get a list of " + + "runs."); + } + handleSelectRunComboChange(); + } + + /** + * Handles change events on the selectRunCombo, populates the messageLogList from the selected + * runID. + **/ + void handleSelectRunComboChange() { + Object selectedItem = selectRunCombo.getSelectedItem(); + if(selectedItem instanceof ComboItem) { + populateMessageLogList(((ComboItem)selectedItem).id); + } + } + + /** + * Populates the messageLogList from the specified runID. + * @param runID The ID of the corresponding MOVESRun data to display errors for. + **/ + void populateMessageLogList(long runID) { + String sql = ""; + if(runID == 0) { + return; + } + messageLogModel.removeAllElements(); + Connection outputDB = null; + try { + outputDB = DatabaseConnectionManager.checkOutConnection(MOVESDatabaseType.OUTPUT); + } catch(Exception e) { + Logger.logError(e,"Unable to checkout the database connection needed to get a list of" + + "logged messages."); + } + try { + sql = "SELECT MOVESErrorID, MOVESRunID, linkID, zoneID, countyID, stateID, " + + "hourID, dayID, monthID, yearID, pollutantID, processID, ErrorMessage " + + "FROM MOVESError WHERE MOVESRunID = ? " + + "ORDER BY MOVESErrorID DESC"; + PreparedStatement statement = outputDB.prepareStatement(sql); + statement.setLong(1, runID); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(!results.next()) { + messageLogModel.addElement("No MOVESError log entries for RunID = " + runID); + } else { + int linkID; + int zoneID; + int countyID; + int stateID; + int hourID; + int dayID; + int monthID; + int yearID; + int pollutantID; + int processID; + String messageLine = ""; + while(true) { + messageLine = ""; + linkID = results.getInt(3); + zoneID = results.getInt(4); + countyID = results.getInt(5); + stateID = results.getInt(6); + hourID = results.getInt(7); + dayID = results.getInt(8); + monthID = results.getInt(9); + yearID = results.getInt(10); + pollutantID = results.getInt(11); + processID = results.getInt(12); + if(pollutantID != 0) { + messageLine += ("Pollutant:" + pollutantID + " "); + } + if(processID != 0) { + messageLine += ("Process:" + processID + " "); + } + if(stateID != 0 && countyID != 0) { + messageLine += ("State:" + stateID + " County:" + countyID + " "); + } + if(linkID != 0 && zoneID != 0) { + messageLine += (" Link:" + linkID + " Zone:" + zoneID + " "); + } + if(monthID != 0 && yearID != 0) { + messageLine += (", " + yearID + "-" + monthID + " "); + } + if(dayID != 0 && hourID != 0) { + messageLine += (" Day:" + dayID + " Hour:" + hourID + " "); + } + messageLine += (" " + results.getString(13)); + messageLine = messageLine.replace('\n',' '); + messageLine = messageLine.replace('\r',' '); + messageLine = messageLine.replace('\t',' '); + messageLogModel.addElement(messageLine); + if(!results.next()) { + break; + } + } + } + results.close(); + statement.close(); + } catch(SQLException e) { + e.printStackTrace(); + Logger.logError(e,"Unable to add the list of run errors from the database to Run Error" + + " Message Log"); + } + try { + DatabaseConnectionManager.checkInConnection(MOVESDatabaseType.OUTPUT, outputDB); + } catch(Exception e) { + Logger.logError(e,"Unable to check-in the database connection used to get list of run" + + " errors"); + } + } + + /** + * OK button handler. + **/ + void handleOKButton() { + // indicates OK button + result = 1; + dispose(); + } + + /** + * Allows the parent to display this dialog as modal. + **/ + public void showModal() { + pushDataToControls(); + pack(); + setModal(true); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(-1,-1); + setVisible(true); //show(); + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESRunErrorLogAction.java b/gov/epa/otaq/moves/master/gui/MOVESRunErrorLogAction.java new file mode 100644 index 0000000..ed02f31 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESRunErrorLogAction.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)MOVESRunErrorLogAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVESRunErrorLog menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class MOVESRunErrorLogAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_THIS_ACTION = "movesrunerrorlog-command"; + /** Constant action name. **/ + static final String NAME_THIS_ACTION = "MOVES Run Error Log..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_THIS_ACTION = "toolbarButtonGraphics/general/About16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_THIS_ACTION = "toolbarButtonGraphics/general/About24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_THIS_ACTION = "MOVES Run Error Log"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_THIS_ACTION = + "View the run error log for various MOVES runs"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_THIS_ACTION = 'R'; + + /** + * Implements the MOVESRunErrorLog menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public MOVESRunErrorLogAction() { + putValue(Action.NAME, NAME_THIS_ACTION); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_THIS_ACTION)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_THIS_ACTION)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_THIS_ACTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_THIS_ACTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_THIS_ACTION)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_THIS_ACTION); + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESWindow.java b/gov/epa/otaq/moves/master/gui/MOVESWindow.java new file mode 100644 index 0000000..9f5fe17 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESWindow.java @@ -0,0 +1,1949 @@ +/************************************************************************************************** +* @(#)MOVESWindow.java +* +*************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; +import java.io.*; +import java.awt.*; +import java.awt.event.*; +import java.net.URL; +import java.util.*; +import java.sql.Connection; +import java.sql.SQLException; +import java.sql.ResultSet; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import java.text.SimpleDateFormat; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.gis.api.StateCountyMapGUI; +import gov.epa.otaq.moves.master.framework.importers.ImporterManager; +/** +* Class for MOVES Main Frame. Constructs the MOVESWindow frame. Creates and sets +* the layouts of the controls. The main menu items are: File (open, close, ...), +* Edit (cut, copy, ...), Pre Processing, Action, Post Processing, ExecuteDataImporter, +* Settings, and Help. The window includes a Split pane to contain the navigation UI +* on the left and the contents UI on the right, a status bar, and a timer used with +* the log handler to display messages. Various RunSpec elements can be edited as well, +* for example Scale, time Spans. +* +* @author Daniel Cox +* @author Wesley Faler +* @author Don Smith +* @author EPA-W. Aikman +* @author EPA-Gwo S. +* @author EPA-elg +* @author EPA-Mitch C. +* @author Tim Hull +* @author Harvey Michaels +* @author W. Aikman +* @version 2018/03/22 +**/ +public class MOVESWindow extends JFrame implements ActionListener, LogHandler, + MOVESEngineListener, KeyListener, FilenameFilter { + // These are the actions defined for the application + /** New menu action. **/ + NewAction newAction; + /** Open menu action. **/ + OpenAction openAction; + /** Close menu action. **/ + CloseAction closeAction; + /** Save menu action. **/ + SaveAction saveAction; + /** Save As menu action. **/ + SaveAsAction saveAsAction; + /** Print menu action. **/ + PrintAction printAction; + /** Previous File 1 menu action. **/ + PreviousFile1Action previousFile1Action; + /** Previous File 2 menu action. **/ + PreviousFile2Action previousFile2Action; + /** Previous File 3 menu action. **/ + PreviousFile3Action previousFile3Action; + /** Previous File 4 menu action. **/ + PreviousFile4Action previousFile4Action; + /** Exit menu action. **/ + ExitAction exitAction; + /** Cut menu action. **/ + CutAction cutAction; + /** Copy menu action. **/ + CopyAction copyAction; + /** Paste menu action. **/ + PasteAction pasteAction; + /** Clear menu action. **/ + ClearAction clearAction; + /** ExecuteDataImporter menu action. **/ + ExecuteDataImporterAction executeDataImporterAction; +// updateWellToPumpRatesAction was removed from the model +// UpdateWellToPumpRates menu action. This feature has been removed. +// /** UpdateWellToPumpRates menu action. **/ +// UpdateWellToPumpRatesAction updateWellToPumpRatesAction; +// /** CreateFutureEmissionRates menu action. **/ +// + CreateFutureEmissionRatesAction createFutureEmissionRatesAction; + /** State/County map action **/ + DrawStateCountyMapAction mapAction; + /** Data Importer action **/ + DataImporterAction dataImporterAction; + /** Nonroad Data Importer action **/ + NonroadDataImporterAction nonroadDataImporterAction; + /** County Data Manager action **/ + CountyDataManagerAction countyDataManagerAction; + /** Project Domain Manager action **/ + ProjectDomainManagerAction projectDomainManagerAction; +// UpdateManufactureDisposalRates menu action. This feature has been removed. +// UpdateManufactureDisposalRatesAction updateManufactureDisposalRatesAction; + /** Execute menu action. **/ + ExecuteAction executeAction; + /** Stop menu action. **/ + StopAction stopAction; + /** Pause menu action. **/ + PauseAction pauseAction; + /** Resume menu action. **/ + ResumeAction resumeAction; + /** Run MySQL Script Action **/ + RunScriptAction runScriptAction; + /** Run MySQL Nonroad Script Action **/ + RunNonroadScriptAction runNonroadScriptAction; + /** Convert Database Action **/ + ConverterAction converterAction; + /** Convert 2014 Database Action **/ + Converter2014Action converter2014Action; + /** Convert 2014A Database Action **/ + Converter2014aAction converter2014aAction; + /** Run MySQL Script Action **/ + SummaryReportAction summaryReportAction; + /** User Guide menu action. **/ + UserGuideAction userGuideAction; + /** About menu action. **/ + AboutAction aboutAction; + /** Configure menu action. **/ + ConfigureAction configureAction; + /** MOVESRunErrorLog menu action. **/ + MOVESRunErrorLogAction MOVESRunErrorLogAction; + /** Looping Tool menu action **/ + LoopingToolAction loopingToolAction; + /** PDSpec menu action **/ + PDSpecGUIAction pdSpecGUIAction; + /** MRU File list **/ + LinkedList mruList; + /** Status bar. **/ + JLabel status; + /** File menu. **/ + JMenu fileMenu; + /** Item in the Post Processing menue for onroad**/ + JMenuItem onRoadPostProcessingMenuItem; + /** Item in the Post Processing menue for nonroad**/ + JMenuItem nonRoadPostProcessingMenuItem; + + /** + * Timer used with the log handler to display messages, if found in the message + * log queue, into a modal message box. This is to prevent any threads from + * indirectly calling MOVESWindow.handleLog and displaying a modal message box, thus + * causing problems for those threads. + **/ + javax.swing.Timer logHandlerTimer = new javax.swing.Timer(250, this); + /** The message log queue. **/ + LinkedList logHandlerQueue = new LinkedList(); + /** + * Timer used to react when a simulation terminates. By placing reaction logic + * within a timer, we avoid the engine's thread from manipulating the GUI and + * causing race conditions. + **/ + javax.swing.Timer engineCompleteTimer = new javax.swing.Timer(250, this); + /** Flag indicating if an unhandled call to engineIsCompleting has occurred **/ + boolean engineDidComplete = false; + /** This adapter handles Mouse over messages on toolbar buttons and menu items. **/ + MouseHandler mouseHandler; + /** Split pane to contain the navigation UI on the left and contents UI on the right. **/ + JSplitPane splitPane; + /** Right scroll pane contains the various UI panels. **/ + JScrollPane rightScrollPane; + /** Left scroll pane contains the application navigation panel. **/ + JScrollPane leftScrollPane; + /** The main MOVES application navigation panel. **/ + public MOVESNavigation navigationPanel; + /** Panel displays running progress. **/ + MOVESProgress progressPanel; + /** Panel allows editing of the RunSpec description. **/ + Description descriptionPanel; + /** Panel allows setting of the RunSpec scale. **/ + Scale scalePanel; + /** Panel allows setting of the RunSpec macroscale geographic bounds. **/ + MacroscaleGeographicBounds macroscaleGeographicBoundsPanel; + /** Panel allows setting of the RunSpec time spans. **/ + TimeSpans timeSpansPanel; + /** Panel allows setting of the RunSpec on road vehicle equipment. **/ + OnRoadVehicleEquipment onRoadVehicleEquipmentPanel; + /** Panel allows setting of the RunSpec NonRoad vehicle equipment. **/ + OffRoadVehicleEquipment offRoadVehicleEquipmentPanel; + /** Panel allows setting of the RunSpec road type. **/ + RoadTypeScreen roadTypePanel; + /** Panel allows setting of the RunSpec pollutants and processes. **/ + PollutantsAndProcesses pollutantsAndProcessesPanel; + /** Panel allows managing of the RunSpec input data sets. **/ + ManageInputDataSets manageInputDataSetsPanel; + /** Panel allows setting of the RunSpec output emissions breakdown. **/ + OutputEmissionsBreakdown outputEmissionsBreakdownPanel; + /** Panel allows setting of the RunSpec general output. **/ + GeneralOutput generalOutputPanel; + /** Panel for Advanced Performance Features of data capture and optional execution **/ + AdvancedPerformanceFeatures advancedPerformancePanel; + /** The runspec being edited **/ + public RunSpec runSpec; + /** The name of the current RunSpec. **/ + String runSpecFilePath = ""; + /** EPA copyright notice for MOVES **/ + public static final String COPYRIGHT_NOTICE = + "Copyright U.S. Environmental Protection Agency "; + /** GNU license Notice **/ + public static final String LICENSE_NOTICE = + "Licensed for use pursuant to the GNU General Public License (GPL) "; + /** GNU website link **/ + public static final String GNU_WEBSITE = + "For information about the GPL see http://www.gnu.org/licenses/ "; + /** Value for the maximum number of items to maintain in the MRU File list **/ + public static final int MAX_MRU_SIZE = 4; + /** Value for the first menu position of the MRU items **/ + public static final int MRU_ITEM_OFFSET = 9; + /** Value for the application title **/ + public static final String MOVES_APP_TITLE = new String("MOVES"); + /** Name of output file that performance profiles are written to **/ + static final String PERFORMANCE_PROFILER_FILE_NAME = "guiprofile.txt"; + /** Date of the Current Release **/ + public static final String MOVES_VERSION = "MOVES2014b-20181203"; + /** directory where output db processing scripts are located **/ + static final String DB_SCRIPTS_DIR = "database" + File.separator + "OutputProcessingScripts"; + static final String DB_NONROAD_SCRIPTS_DIR = "database" + File.separator + "NonroadProcessingScripts"; + /** + * Constructs the MOVESWindow frame, also creates, sets the layouts of the controls + * and initializes the actions and listeners. + * @param okToPopupMessages true if licensing messages can be shown immediately + **/ + public MOVESWindow(boolean okToPopupMessages) { + super(MOVES_APP_TITLE); + ArrayList iconList = new ArrayList(); + iconList.add(new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_16x16.png").getImage()); + iconList.add(new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_32x32.png").getImage()); + iconList.add(new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_48x48.png").getImage()); + iconList.add(new ImageIcon("gov/epa/otaq/moves/master/gui/images/moves_256x256.png").getImage()); + setIconImages(iconList); + MOVESAPI.setupFlagForMaster(); + // tell the logger object that this class implements LogHandler + Logger.addLogHandler(this); + runSpec = MOVESAPI.getTheAPI().getRunSpec(); + initActions(); + logHandlerTimer.start(); + engineCompleteTimer.start(); + status = createStatusBar(); + mouseHandler = new MouseHandler(status); + //LinkedList mruList = new LinkedList(); + createControls(); + arrangeControls(); + if(okToPopupMessages) { + handleAboutAction(true); + } + setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);//prevents window from closing when exit canceled + addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent evt) { + handleExitAction(); // all windowClosing code done in exitAction + /* saveMRUList(); + DatabaseConnectionManager.flushTables(); + PerformanceProfiler.writeProfiles(PERFORMANCE_PROFILER_FILE_NAME); + Logger.log(LogMessageCategory.DEBUG, "Exiting... Calling MOVESEngine.stop"); + try { + MOVESAPI.getTheAPI().stopMOVESEngine(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to stop MOVES engine"); + } + try { + SystemConfiguration.getTheSystemConfiguration().saveConfigurationData(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to save configuration data"); + } + MOVESThread.signalAllToTerminate(); + MOVESAPI.shutdownFlagForMaster(); + System.exit(0); */ + } + }); + loadMRUList(); + System.out.println("MOVES is making its first connections to the database, " + + "this may take a moment."); + loadAppDefaults(); + // This class receives engine progress notifications + MOVESEngine.subscribeToProgress(this); + addKeyListener(this); + JRootPane root = getRootPane(); + if(root != null) { + root.addKeyListener(this); + } + // Show the window and let the users interact with it now that all connections + // have been made. + setVisible(true); + Logger.log(LogMessageCategory.INFO,"Main window shown. Ready for user interaction."); + } + /** + * Method invoked to receive progress notifications. + *
    Currently not used in this class. + * @param srcEngine The MOVESEngine responsible for the notifications. + **/ + public void engineProgressUpdate(MOVESEngine srcEngine) { + } + /** + * Called when the MOVESEngine object is completing + * @param srcEngine The MOVESEngine this notification comes from. + **/ + public synchronized void engineIsCompleting(MOVESEngine srcEngine) { + if(srcEngine.pdEntry == null || srcEngine.isLastPDSpecEntry) { + engineDidComplete = true; + } + } + /** Handles the engineCompleteTimer and checks if engineIsCompleting was called recently **/ + synchronized void handleEngineCompleteTimer() { + if(engineDidComplete) { + progressPanel.handleEngineIsCompleting(); + engineDidComplete = false; + executeAction.setEnabled(true); + stopAction.setEnabled(false); + pauseAction.setEnabled(false); + resumeAction.setEnabled(false); + if(pdSpecGUIAction != null) { + pdSpecGUIAction.setEnabled(true); + } + progressPanel.setProgressBarVisible(false); + setProgressOnlyMode(false); + navigationPanel.clearSelection(); + if(MOVESEngine.theInstance.pdEntry == null) { + JOptionPane.showMessageDialog(this, + "Run has ended. Output database was: " + + MOVESAPI.getTheAPI().getRunSpec().outputDatabase.databaseName, + "Run Completion",JOptionPane.INFORMATION_MESSAGE); + } else { + JOptionPane.showMessageDialog(this, + "DONE file pickup has ended.", + "PDSpec Completion",JOptionPane.INFORMATION_MESSAGE); + } + } + } + /** + * Set the title of the window, showing the distributed ID if available. + * @param filePath the file name and path currently open. May be null or empty. + **/ + void setupTitle(String filePath) { + String title = MOVES_APP_TITLE; + if(filePath != null && filePath.length() > 0) { + title += " - " + filePath; + } + if(SystemConfiguration.getTheSystemConfiguration().distributedMasterID != null) { + title += " - ID " + + SystemConfiguration.getTheSystemConfiguration().distributedMasterID; + } + setTitle(title); + } + /** + * Loads the MRU file list from persisted storage. + **/ + void loadMRUList() { + // in case the call below fails, at least should be non-NULL + mruList = new LinkedList(); + try { + FileInputStream fileInStream = new FileInputStream("mrulist.tmp"); + ObjectInputStream objInStream = new ObjectInputStream(fileInStream); + Object t = objInStream.readObject(); + if(t != null && t instanceof LinkedList) { + LinkedList tl = (LinkedList)t; + for(Iterator i=tl.iterator();i.hasNext();) { + Object item = i.next(); + if(item != null) { + mruList.add(item.toString()); + } + } + } + UpdateMRUItems(); + } catch(Exception e) { + // It is okay to start up without an "mrulist.tmp" file. + } + } + /** + * Saves the MRU file list to persisted storage. + **/ + void saveMRUList() { + // get an output stream and save the list to it + try { + FileOutputStream fileOutStream = new FileOutputStream("mrulist.tmp"); + ObjectOutputStream objOutStream = new ObjectOutputStream(fileOutStream); + objOutStream.writeObject(mruList); + } catch(Exception e) { + Logger.logError(e, "Failed to save MRU List"); + } + } + /** + * Adds an MRU file to the list. Also maintains the maximum length of the list. + * @param fileName the file name and path of the new item to add as String. + **/ + void addToMRUList(String fileName) { + mruList.addFirst(fileName); + // check if this fileName is already in the list + int testIndex = mruList.lastIndexOf(fileName); + if(testIndex > 0) { + mruList.remove(testIndex); + } + for(int i = MAX_MRU_SIZE; i < mruList.size(); i++) { + // remove any items from the end of the list, if larger than the max size + mruList.remove(i); + } + } + /** + * Updates the JMenu items based on the current MRU list. + **/ + void UpdateMRUItems() { + JMenuItem nextItem; + String newText = new String(""); + for(int i = 0; i < 4; i++) { + if(i < mruList.size()) { + newText = mruList.get(i).toString(); + } else { + newText = "[No recent file]"; + } + switch(i) { + case 0: + previousFile1Action.setShortDescription(newText); + nextItem = fileMenu.getItem(MRU_ITEM_OFFSET + i); + nextItem.setText(previousFile1Action.getShortDescription()); + break; + case 1: + previousFile2Action.setShortDescription(newText); + nextItem = fileMenu.getItem(MRU_ITEM_OFFSET + i); + nextItem.setText(previousFile2Action.getShortDescription()); + break; + case 2: + previousFile3Action.setShortDescription(newText); + nextItem = fileMenu.getItem(MRU_ITEM_OFFSET + i); + nextItem.setText(previousFile3Action.getShortDescription()); + break; + case 3: + previousFile4Action.setShortDescription(newText); + nextItem = fileMenu.getItem(MRU_ITEM_OFFSET + i); + nextItem.setText(previousFile4Action.getShortDescription()); + break; + } + } + } + /** Creates and initializes the actions for this frame. **/ + void initActions() { + newAction = new NewAction(); + newAction.addActionListener(this); + openAction = new OpenAction(); + openAction.addActionListener(this); + closeAction = new CloseAction(); + closeAction.addActionListener(this); + saveAction = new SaveAction(); + saveAction.addActionListener(this); + saveAsAction = new SaveAsAction(); + saveAsAction.addActionListener(this); + printAction = new PrintAction(); + printAction.addActionListener(this); + previousFile1Action = new PreviousFile1Action(); + previousFile1Action.addActionListener(this); + previousFile2Action = new PreviousFile2Action(); + previousFile2Action.addActionListener(this); + previousFile3Action = new PreviousFile3Action(); + previousFile3Action.addActionListener(this); + previousFile4Action = new PreviousFile4Action(); + previousFile4Action.addActionListener(this); + exitAction = new ExitAction(); + exitAction.addActionListener(this); + cutAction = new CutAction(); + cutAction.addActionListener(this); + copyAction = new CopyAction(); + copyAction.addActionListener(this); + pasteAction = new PasteAction(); + pasteAction.addActionListener(this); + clearAction = new ClearAction(); + clearAction.addActionListener(this); + executeDataImporterAction = new ExecuteDataImporterAction(); + executeDataImporterAction.addActionListener(this); +// updateWellToPumpRatesAction was removed from the model +// updateWellToPumpRatesAction = new UpdateWellToPumpRatesAction(); +// updateWellToPumpRatesAction.addActionListener(this); +// + createFutureEmissionRatesAction = new CreateFutureEmissionRatesAction(); + createFutureEmissionRatesAction.addActionListener(this); + dataImporterAction = new DataImporterAction(); + dataImporterAction.addActionListener(this); + countyDataManagerAction = new CountyDataManagerAction(); + countyDataManagerAction.addActionListener(this); + projectDomainManagerAction = new ProjectDomainManagerAction(); + projectDomainManagerAction.addActionListener(this); + nonroadDataImporterAction = new NonroadDataImporterAction(); + nonroadDataImporterAction.addActionListener(this); +// For now, this has been removed from the model. +// updateManufactureDisposalRatesAction = new UpdateManufactureDisposalRatesAction(); +// updateManufactureDisposalRatesAction.addActionListener(this); + executeAction = new ExecuteAction(); + executeAction.addActionListener(this); + executeAction.setEnabled(false); + stopAction = new StopAction(); + stopAction.addActionListener(this); + stopAction.setEnabled(false); + pauseAction = new PauseAction(); + pauseAction.addActionListener(this); + pauseAction.setEnabled(false); + resumeAction = new ResumeAction(); + resumeAction.addActionListener(this); + resumeAction.setEnabled(false); + runScriptAction = new RunScriptAction(); + runScriptAction.addActionListener(this); + runNonroadScriptAction = new RunNonroadScriptAction(); + runNonroadScriptAction.addActionListener(this); + converterAction = new ConverterAction(); + converterAction.addActionListener(this); + converter2014Action = new Converter2014Action(); + converter2014Action.addActionListener(this); + converter2014aAction = new Converter2014aAction(); + converter2014aAction.addActionListener(this); + summaryReportAction = new SummaryReportAction(); + summaryReportAction.addActionListener(this); + userGuideAction = new UserGuideAction(); + userGuideAction.addActionListener(this); + aboutAction = new AboutAction(); + aboutAction.addActionListener(this); + configureAction = new ConfigureAction(); + configureAction.addActionListener(this); + MOVESRunErrorLogAction = new MOVESRunErrorLogAction(); + MOVESRunErrorLogAction.addActionListener(this); + mapAction = new DrawStateCountyMapAction(); + mapAction.addActionListener(this); + loopingToolAction = new LoopingToolAction(); + loopingToolAction.addActionListener(this); + pdSpecGUIAction = new PDSpecGUIAction(); + pdSpecGUIAction.addActionListener(this); + } + /** Creates and initializes the menu for this frame, including actions and listeners. **/ + JMenuBar createMenu() { + JMenuBar menuBar = new JMenuBar(); + JMenuItem menuItem; + fileMenu = new JMenu("File"); + fileMenu.setMnemonic('F'); + menuItem = fileMenu.add(newAction); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(openAction); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(closeAction); + menuItem.addMouseListener(mouseHandler); + fileMenu.addSeparator(); + menuItem = fileMenu.add(saveAction); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(saveAsAction); + menuItem.addMouseListener(mouseHandler); + fileMenu.addSeparator(); + menuItem = fileMenu.add(printAction); + menuItem.addMouseListener(mouseHandler); + fileMenu.addSeparator(); + menuItem = fileMenu.add(previousFile1Action); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(previousFile2Action); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(previousFile3Action); + menuItem.addMouseListener(mouseHandler); + menuItem = fileMenu.add(previousFile4Action); + menuItem.addMouseListener(mouseHandler); + fileMenu.addSeparator(); + menuItem = fileMenu.add(exitAction); + menuItem.addMouseListener(mouseHandler); + JMenu editMenu = new JMenu("Edit"); + editMenu.setMnemonic('E'); + /** Cut action has been disabled **/ + cutAction.setEnabled(true); + menuItem = editMenu.add(cutAction); + menuItem.addMouseListener(mouseHandler); + menuItem = editMenu.add(copyAction); + /** Copy action has been disabled **/ + copyAction.setEnabled(true); + menuItem.addMouseListener(mouseHandler); + menuItem = editMenu.add(pasteAction); + menuItem.addMouseListener(mouseHandler); + /** Paste action has been disabled **/ + pasteAction.setEnabled(true); + editMenu.addSeparator(); + menuItem = editMenu.add(clearAction); + menuItem.addMouseListener(mouseHandler); + /** Copy action has been disabled **/ + clearAction.setEnabled(true); + JMenu preProcessingMenu = new JMenu("Pre Processing"); + preProcessingMenu.setMnemonic('R'); + + //menuItem = preProcessingMenu.add(executeDataImporterAction); + //executeDataImporterAction.setEnabled(false); + //menuItem.addMouseListener(mouseHandler); +// updateWellToPumpRatesAction was removed from the model +// menuItem = preProcessingMenu.add(updateWellToPumpRatesAction); +// //updateWellToPumpRatesAction.setEnabled(false) +// menuItem.addMouseListener(mouseHandler); +// + /* FERC removed from the draft model + menuItem = preProcessingMenu.add(createFutureEmissionRatesAction); + menuItem.addMouseListener(mouseHandler); + */ + menuItem = preProcessingMenu.add(dataImporterAction); + menuItem.addMouseListener(mouseHandler); + menuItem = preProcessingMenu.add(countyDataManagerAction); + menuItem.addMouseListener(mouseHandler); + menuItem = preProcessingMenu.add(projectDomainManagerAction); + menuItem.addMouseListener(mouseHandler); + menuItem = preProcessingMenu.add(nonroadDataImporterAction); + menuItem.addMouseListener(mouseHandler); +// This has been removed from the model. +// menuItem = preProcessingMenu.add(updateManufactureDisposalRatesAction); +// menuItem.addMouseListener(mouseHandler); + JMenu actionMenu = new JMenu("Action"); + actionMenu.setMnemonic('A'); + menuItem = actionMenu.add(executeAction); + menuItem.addMouseListener(mouseHandler); + menuItem = actionMenu.add(stopAction); + menuItem.addMouseListener(mouseHandler); + menuItem = actionMenu.add(pauseAction); + menuItem.addMouseListener(mouseHandler); + menuItem = actionMenu.add(resumeAction); + menuItem.addMouseListener(mouseHandler); + menuItem = actionMenu.add(MOVESRunErrorLogAction); + menuItem.addMouseListener(mouseHandler); + JMenu postProcessingMenu = new JMenu("Post Processing"); + postProcessingMenu.setMnemonic('P'); + onRoadPostProcessingMenuItem = postProcessingMenu.add(runScriptAction); + onRoadPostProcessingMenuItem.addMouseListener(mouseHandler); + nonRoadPostProcessingMenuItem = postProcessingMenu.add(runNonroadScriptAction); + nonRoadPostProcessingMenuItem.addMouseListener(mouseHandler); + menuItem = postProcessingMenu.add(summaryReportAction); + menuItem.addMouseListener(mouseHandler); + menuItem = postProcessingMenu.add(mapAction); + menuItem.addMouseListener(mouseHandler); + + postProcessingMenu.addMenuListener(new MenuListener() { + @Override + public void menuSelected(MenuEvent e) { + onRoadPostProcessingMenuItem.setEnabled(true); + nonRoadPostProcessingMenuItem.setEnabled(true); + if (runSpec.outputDatabase == null || runSpec.outputDatabase.databaseName.length() < 3) { + }//end of if runspec doesn't have an output database + else{ + Connection oConn = runSpec.outputDatabase.openConnectionOrNull(); + if (oConn == null) { + }//end of if can't connect + else{ + try{ + ResultSet results = SQLRunner.executeQuery(oConn,"SELECT models FROM movesrun"); + boolean dbcontainsonroad= false; + boolean dbcontainsnonroad= false; + while(results.next()){ + if (results.getString(1).equals("onroad")){ + dbcontainsonroad= true; + } + if (results.getString(1).equals("nonroad")){ + dbcontainsnonroad= true; + } + } + onRoadPostProcessingMenuItem.setEnabled(dbcontainsonroad); + nonRoadPostProcessingMenuItem.setEnabled(dbcontainsnonroad); + if(dbcontainsonroad==false && dbcontainsnonroad==false){ + onRoadPostProcessingMenuItem.setEnabled(true); + nonRoadPostProcessingMenuItem.setEnabled(true); + } + } catch(SQLException x){} + }//end of if you can connect to the output database + try { + oConn.close(); + } catch (Exception x) { + ; // can't do anything if there is a failure to close + } + }//end of if runspec has an output database + } + @Override + public void menuDeselected(MenuEvent e) {} + @Override + public void menuCanceled(MenuEvent e) {} + }); + + JMenu toolsMenu = new JMenu("Tools"); + toolsMenu.setMnemonic('T'); + menuItem = toolsMenu.add(loopingToolAction); + menuItem.addMouseListener(mouseHandler); + menuItem = toolsMenu.add(pdSpecGUIAction); + menuItem.addMouseListener(mouseHandler); + menuItem = toolsMenu.add(converter2014aAction); + menuItem.addMouseListener(mouseHandler); + menuItem = toolsMenu.add(converter2014Action); + menuItem.addMouseListener(mouseHandler); + menuItem = toolsMenu.add(converterAction); + menuItem.addMouseListener(mouseHandler); + JMenu settingsMenu = new JMenu("Settings"); + settingsMenu.setMnemonic('S'); + settingsMenu.setName("settingsMenu"); + menuItem = settingsMenu.add(configureAction); + menuItem.addMouseListener(mouseHandler); + menuItem.setName("configureMenuItem"); + JMenu helpMenu = new JMenu("Help"); + helpMenu.setMnemonic('H'); + menuItem = helpMenu.add(userGuideAction); + menuItem.addMouseListener(mouseHandler); + helpMenu.addSeparator(); + menuItem = helpMenu.add(aboutAction); + menuItem.addMouseListener(mouseHandler); + menuBar.add(fileMenu); + menuBar.add(editMenu); + menuBar.add(preProcessingMenu); + menuBar.add(actionMenu); + menuBar.add(postProcessingMenu); + if(toolsMenu != null) { + menuBar.add(toolsMenu); + } + menuBar.add(settingsMenu); + menuBar.add(helpMenu); + return menuBar; + } + /** Creates the status bar. **/ + JLabel createStatusBar() { + status = new JLabel("Ready..."); + status.setBorder(BorderFactory.createEtchedBorder()); + return status; + } + /** + * This method acts as the Action handler delegate for all the actions. + * @param evt The event caused by an action being performed. + **/ + public void actionPerformed(ActionEvent evt) { + String command = evt.getActionCommand(); + // Compare the action command to the known actions. + if (logHandlerTimer == evt.getSource()) { + handleLogHandlerTimer(); + } else if (engineCompleteTimer == evt.getSource()) { + handleEngineCompleteTimer(); + } else if (command.equals(newAction.getActionCommand())) { + handleNewAction(); + } else if (command.equals(openAction.getActionCommand())) { + handleOpenAction(); + } else if (command.equals(closeAction.getActionCommand())) { + handleCloseAction(); + } else if (command.equals(saveAction.getActionCommand())) { + handleSaveAction(); + } else if (command.equals(saveAsAction.getActionCommand())) { + handleSaveAsAction(); + } else if (command.equals(printAction.getActionCommand())) { + handlePrintAction(); + } else if (command.equals(previousFile1Action.getActionCommand())) { + handlePreviousFile1Action(); + } else if (command.equals(previousFile2Action.getActionCommand())) { + handlePreviousFile2Action(); + } else if (command.equals(previousFile3Action.getActionCommand())) { + handlePreviousFile3Action(); + } else if (command.equals(previousFile4Action.getActionCommand())) { + handlePreviousFile4Action(); + } else if (command.equals(exitAction.getActionCommand())) { + handleExitAction(); + } else if (command.equals(cutAction.getActionCommand())) { + handleCutAction(evt); + } else if (command.equals(copyAction.getActionCommand())) { + handleCopyAction(evt); + } else if (command.equals(pasteAction.getActionCommand())) { + handlePasteAction(evt); + } else if (command.equals(clearAction.getActionCommand())) { + handleClearAction(evt); + } else if (command.equals(executeDataImporterAction.getActionCommand())) { + handleExecuteDataImporterAction(evt); +// updateWellToPumpRatesAction was removed from the model +// } else if (command.equals(updateWellToPumpRatesAction.getActionCommand())) { +// handleUpdateWellToPumpRatesAction(evt); +// + } else if (command.equals(createFutureEmissionRatesAction.getActionCommand())) { + handleCreateFutureEmissionRatesAction(evt); +// Removed from the model. +// } else if (command.equals(updateManufactureDisposalRatesAction.getActionCommand())) { +// handleUpdateManufactureDisposalRatesAction(evt); + } else if (command.equals(executeAction.getActionCommand())) { + handleExecuteAction(); + } else if (command.equals(stopAction.getActionCommand())) { + handleStopAction(); + } else if (command.equals(pauseAction.getActionCommand())) { + handlePauseAction(); + } else if (command.equals(resumeAction.getActionCommand())) { + handleResumeAction(); + } else if (command.equals(runScriptAction.getActionCommand())) { + handleRunScriptAction(); + } else if (command.equals(runNonroadScriptAction.getActionCommand())) { + handleRunNonroadScriptAction(); + } else if (command.equals(converterAction.getActionCommand())) { + handleConverterAction(Converter.MODE_2010A_TO_2010B); + } else if (command.equals(converter2014Action.getActionCommand())) { + handleConverterAction(Converter.MODE_2010B_TO_2014); + } else if (command.equals(converter2014aAction.getActionCommand())) { + handleConverterAction(Converter.MODE_2014_TO_2014A); + } else if (command.equals(summaryReportAction.getActionCommand())) { + handleSummaryReportAction(); + } else if (command.equals(userGuideAction.getActionCommand())) { + handleUserGuideAction(); + } else if (command.equals(aboutAction.getActionCommand())) { + handleAboutAction(false); + } else if (command.equals(configureAction.getActionCommand())) { + handleConfigureAction(); + } else if (command.equals(MOVESRunErrorLogAction.getActionCommand())) { + handleMOVESRunErrorLogAction(); + } else if (command.equals(mapAction.getActionCommand())) { + handleMapAction(); + } else if (command.equals(dataImporterAction.getActionCommand())) { + handleDataImporterAction(); + } else if (command.equals(countyDataManagerAction.getActionCommand())) { + handleCountyDataManagerAction(); + } else if (command.equals(projectDomainManagerAction.getActionCommand())) { + handleProjectDomainManagerAction(); + } else if (command.equals(nonroadDataImporterAction.getActionCommand())) { + handleNonroadDataImporterAction(); + } else if (command.equals(loopingToolAction.getActionCommand())) { + handleLoopingToolAction(); + } else if (command.equals(pdSpecGUIAction.getActionCommand())) { + handlePDSpecGUIAction(); + } + } + /** Handles the New menu action. **/ + void handleNewAction() { + int answer = JOptionPane.showConfirmDialog(this, + getDialogWording("Do you want to save the existing runspec first?"), + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveAction()) { + return; + } + } else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + loadAppDefaults(); + } + /** + * Helper function to load some application defaults, including the default database + * connection. + **/ + void loadAppDefaults() { + ButtonModel preservedModel = navigationPanel.setNavigationSelection(null); + navigationPanel.setNavigationSelection(preservedModel); + runSpec = MOVESAPI.getTheAPI().getRunSpec(); + MOVESAPI.getTheAPI().setRunSpecFilePath(null); + // get the default gui connection + if(null == DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT)) { + // if this call fails, then then default database connection settings + // will not work, but will let the app continue with a "safe" error message + // from the call to getGUIConnection() + } + navigationPanel.setNavigationSelection(preservedModel); + setupTitle(null); + navigationPanel.onFileNew(); + } + /** Handles the Open menu action. **/ + void handleOpenAction() { + int answer = JOptionPane.showConfirmDialog(this, + getDialogWording("Do you want to save the existing runspec first?"), + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveAction()) { + return; + } + } else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + FileDialog fd = new FileDialog(this, "Load File", FileDialog.LOAD); + fd.setVisible(true); //fd.show(); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + openFile(filePath); + } + /** + * Helper function used by the various open file actions. + * @param filePath the file name and path as String to open. + **/ + void openFile(String filePath) { + ButtonModel preservedModel = navigationPanel.setNavigationSelection(null); + File fileObject = new File(filePath); + if(!MOVESAPI.getTheAPI().loadRunSpec(fileObject, true)) { + navigationPanel.setNavigationSelection(preservedModel); + return; + } + runSpec = MOVESAPI.getTheAPI().getRunSpec(); + navigationPanel.onFileOpen(); + runSpecFilePath = filePath; + addToMRUList(filePath); + UpdateMRUItems(); + setupTitle(filePath); + navigationPanel.setNavigationSelection(preservedModel); + } + /** Handles the Close menu action. **/ + void handleCloseAction() { + handleNewAction(); // works just like New since there is alway a RunSpec open + } + /** + * Handles the Save menu action. + * @return true if the file was saved successfully + **/ + boolean handleSaveAction() { + if(MOVESAPI.getTheAPI().getRunSpecFilePath() == null + || MOVESAPI.getTheAPI().getRunSpecFilePath().length() == 0) { + return handleSaveAsAction(); + } + //if(navigationPanel.activeEditor != null) { + // navigationPanel.activeEditor.saveToRunSpec(runSpec); + //} + navigationPanel.commitActiveEditor(); + ButtonModel preservedModel = navigationPanel.setNavigationSelection(null); + navigationPanel.setNavigationSelection(preservedModel); + return MOVESAPI.getTheAPI().saveRunSpec(); + } + /** + * Handles the Save As menu action. + * @return true if the file was saved successfully + **/ + boolean handleSaveAsAction() { + navigationPanel.commitActiveEditor(); + FileDialog fd = new FileDialog(this, "Save File", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return false; + } + String filePath = fd.getDirectory() + fd.getFile(); + File fileObject = new File(filePath); + MOVESAPI.getTheAPI().setRunSpecFilePath(fileObject); + runSpecFilePath = filePath; + addToMRUList(filePath); + UpdateMRUItems(); + setupTitle(filePath); + return MOVESAPI.getTheAPI().saveRunSpec(); + } + /** Handles the Print menu action. **/ + void handlePrintAction() { + navigationPanel.commitActiveEditor(); + StringBuffer textBuffer = new StringBuffer(); + textBuffer.append("EPA MOVES RunSpec File Name:\r\n"); + if(MOVESAPI.getTheAPI().getRunSpecFilePath() == null + || MOVESAPI.getTheAPI().getRunSpecFilePath().length() == 0) { + textBuffer.append("\t(unnamed)"); + } else { + textBuffer.append("\t" + MOVESAPI.getTheAPI().getRunSpecFilePath()); + } + textBuffer.append("\r\n\r\n"); + Iterator panelIterator = navigationPanel.panels.listIterator(); + while (panelIterator.hasNext()) { + JPanel iterPanel = (JPanel)panelIterator.next(); + if (iterPanel instanceof RunSpecEditor) { + RunSpecEditor iterEditor = (RunSpecEditor)iterPanel; + iterEditor.getPrintableDescription(runSpec, textBuffer); + } + } + TextPrinter.printText(this, textBuffer.toString()); + } + /** Handles the Previous File 1 menu action. **/ + void handlePreviousFile1Action() { + String fileName = getMRUListItem(0); + if(fileName.length() > 0) { + openFile(fileName); + } + } + /** Handles the Previous File 2 menu action. **/ + void handlePreviousFile2Action() { + String fileName = getMRUListItem(1); + if(fileName.length() > 0) { + openFile(fileName); + } + } + /** Handles the Previous File 3 menu action. **/ + void handlePreviousFile3Action() { + String fileName = getMRUListItem(2); + if(fileName.length() > 0) { + openFile(fileName); + } + } + /** Handles the Previous File 4 menu action. **/ + void handlePreviousFile4Action() { + String fileName = getMRUListItem(3); + if(fileName.length() > 0) { + openFile(fileName); + } + } + /** + * Helper function that finds the corresponding MRU filename from the specified index. + * @param index indicates which MRU list item to get. + * @return the file name and path as String. + **/ + String getMRUListItem(int index) { + if((mruList.size() > index) && (mruList.get(index).toString().length() > 0)) { + return mruList.get(index).toString(); + } + return new String(""); + } + /** Handles the Exit menu action. **/ + void handleExitAction() { + int answer = JOptionPane.showConfirmDialog(this, + getDialogWording("Do you want to save the run specification before ending?"), + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveAction()) { + return; + } + } + else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + saveMRUList(); // from windowClosing() + DatabaseConnectionManager.flushTables(); + PerformanceProfiler.writeProfiles(PERFORMANCE_PROFILER_FILE_NAME); + if(MOVESEngine.theInstance.isRunning()) { + try { //from windowClosing() + Logger.log(LogMessageCategory.INFO, "Exiting... Calling MOVESEngine.stop"); + MOVESAPI.getTheAPI().stopMOVESEngine(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to stop MOVES engine"); + } + } + try { //from windowClosing() + SystemConfiguration.getTheSystemConfiguration().saveConfigurationData(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to save configuration data"); + } + MOVESThread.signalAllToTerminate(); + TemporaryFileManager.doDeletions(true); + MOVESAPI.shutdownFlagForMaster(); //from windowClosing() + System.exit(0); + } + /** + * Handles the Clear menu action. + * @param e The event caused by the action. + **/ + void handleClearAction(ActionEvent e) { + DefaultEditorKit d = new DefaultEditorKit(); + Action[] actionsArray = d.getActions(); + for (int i = 0; i < actionsArray.length; i++) { + Action a = actionsArray[i]; + if(a.getValue(Action.NAME).equals(DefaultEditorKit.selectAllAction)) { + a.actionPerformed(e); + break; + } + } + for (int i = 0; i < actionsArray.length; i++) { + Action a = actionsArray[i]; + if(a.getValue(Action.NAME).equals(DefaultEditorKit.deleteNextCharAction)) { + a.actionPerformed(e); + break; + } + } + } + /** + * Handles the ExecuteDataImporter menu action. + * @param e The event caused by the action. + **/ + void handleExecuteDataImporterAction(ActionEvent e) { + JOptionPane.showMessageDialog(this, executeDataImporterAction.getLongDescription(), + executeDataImporterAction.getShortDescription(), + JOptionPane.INFORMATION_MESSAGE); + } +// updateWellToPumpRatesAction was removed from the model +// /** +// * Handles the UpdateWellToPumpRates menu action. +// * @param e The event caused by the action. +// **/ +// void handleUpdateWellToPumpRatesAction(ActionEvent e) { +// GREETInterface gi = new GREETInterface(runSpec); +// gi.updateWellToPumpRates(); +// } +// + /** + * Handles the CreateFutureEmissionRates menu action. + * @param e The event caused by the action. + **/ + void handleCreateFutureEmissionRatesAction(ActionEvent e) { + Ferc f = new Ferc(this); + // simple offset from main window origin + f.setLocation(getLocationOnScreen().x + 100, getLocationOnScreen().y + 100); + (new WindowStateHandler(f)).setSizePositionAndStartTracking(-1,-1); + f.showModal(); + } + /** + * Handle the Data Importer menu action. + **/ + void handleDataImporterAction() { + checkImporterActions(); + if(!dataImporterAction.isEnabled()) { + return; + } + showImporterManager(null,ImporterManager.STANDARD_MODE); + } + /** + * Handle the Nonroad Data Importer menu action. + **/ + void handleNonroadDataImporterAction() { + checkImporterActions(); + if(!nonroadDataImporterAction.isEnabled()) { + return; + } + showImporterManager(null,ImporterManager.STANDARD_MODE); + } + /** + * Handle the County Data Manager menu action. + **/ + void handleCountyDataManagerAction() { + checkImporterActions(); + if(!countyDataManagerAction.isEnabled()) { + return; + } + showImporterManager(ModelDomain.SINGLE_COUNTY,ImporterManager.STANDARD_MODE); + } + /** + * Handle the Project Domain Manager menu action. + **/ + void handleProjectDomainManagerAction() { + checkImporterActions(); + if(!projectDomainManagerAction.isEnabled()) { + return; + } + showImporterManager(ModelDomain.PROJECT,ImporterManager.STANDARD_MODE); + } + /** + * Show the ImporterManager GUI with the option of doing so for a county domain. + * @param domainType domain type for the manager, or null for general importing. + * @param mode one of the ImporterManager.*_MODE constants + **/ + void showImporterManager(ModelDomain domainType, int mode) { + boolean isCountyDomain = domainType == ModelDomain.SINGLE_COUNTY; + boolean isProjectDomain = domainType == ModelDomain.PROJECT; + RunSpecEditor editor = navigationPanel.activeEditor; + if(editor == null) { + editor = navigationPanel.lastRunSpecEditor; + } + navigationPanel.commitActiveEditor(); + if(isCountyDomain || isProjectDomain) { + ArrayList messages = new ArrayList(); + int result = ImporterManager.isReadyForCountyDomain(null,messages); + if(result < 0) { + // Display the error messages + String t = ""; + if(isCountyDomain) { + t = "Unable to open the County Data Manager."; + } else if(isProjectDomain) { + t = "Unable to open the Project Domain Manager."; + } + for(Iterator i=messages.iterator();i.hasNext();) { + t += "\r\n"; + t += i.next(); + } + JOptionPane.showMessageDialog(this, t, "Error", JOptionPane.ERROR_MESSAGE); + return; + } + } + ImporterManager.display(this,null, + getLocationOnScreen().x + 50, getLocationOnScreen().y + 50, + domainType,mode,Models.evaluateModels(runSpec.models)); + if(editor != null) { + editor.loadFromRunSpec(runSpec); + } + rightScrollPane.invalidate(); + rightScrollPane.setVisible(false); + rightScrollPane.setVisible(true); + } +// /** +// * Handles the UpdateManufactureDisposalRates menu action. +// * @param e The event caused by the action. +// **/ +// void handleUpdateManufactureDisposalRatesAction(ActionEvent e) { +// GREETInterface gi = new GREETInterface(runSpec); +// gi.updateManufactureDisposalRates(); +// } + /** + * Handles the Cut menu action. + * @param e The event caused by the action. + **/ + void handleCutAction(ActionEvent e) { + DefaultEditorKit d = new DefaultEditorKit(); + Action[] actionsArray = d.getActions(); + for (int i = 0; i < actionsArray.length; i++) { + Action a = actionsArray[i]; + if(a.getValue(Action.NAME).equals(DefaultEditorKit.cutAction)) { + a.actionPerformed(e); + return; + } + } + } + /** + * Handles the Copy menu action. + * @param e The event caused by the action. + **/ + void handleCopyAction(ActionEvent e) { + DefaultEditorKit d = new DefaultEditorKit(); + Action[] actionsArray = d.getActions(); + for (int i = 0; i < actionsArray.length; i++) { + Action a = actionsArray[i]; + if(a.getValue(Action.NAME).equals(DefaultEditorKit.copyAction)) { + a.actionPerformed(e); + return; + } + } + } + /** + * Handles the Paste menu action. + * @param e The event caused by the action. + **/ + void handlePasteAction(ActionEvent e) { + DefaultEditorKit d = new DefaultEditorKit(); + Action[] actionsArray = d.getActions(); + for (int i = 0; i < actionsArray.length; i++) { + Action a = actionsArray[i]; + if(a.getValue(Action.NAME).equals(DefaultEditorKit.pasteAction)) { + a.actionPerformed(e); + return; + } + } + } + /** + * Obtain wording for a Yes/No/Cancel dialog that requires the description, if present, + * of the active RunSpec. + * @param primaryText primary text for the dialog. + * @return wording to use on the dialog. This includes the primary wording and may + * include the RunSpec's description if one has been set. + **/ + String getDialogWording(String primaryText) { + String description = null; + if(runSpec.description != null) { + description = runSpec.description.trim(); + if(description.length() > 0) { + if(description.length() > 500) { + description = description.substring(0,500); + } + description = StringUtilities.wrapString("Description: " + description,60); + } + } + if(description != null && description.length() > 0) { + return primaryText + "\n" + description; + } else { + return primaryText; + } + } + /** Handles the Execute menu action. **/ + synchronized void handleExecuteAction() { + checkExecuteAction(); + if(!executeAction.isEnabled()) { + return; + } + // Commit the currently active (i.e. selected) RunSpec editor to the runSpec before + // starting the MOVESEngine. + navigationPanel.commitActiveEditor(); + int answer = JOptionPane.showConfirmDialog(this, + getDialogWording("Do you want to save the run specification before executing?"), + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveAction()) { + return; + } + } else if(answer == JOptionPane.NO_OPTION) { + //Nothing to do upon NOr + } else { // else if cancelled or merely closed + return; + } + navigationPanel.clearSelection(); + progressPanel.allowTimeDialog = true; + if(!MOVESAPI.getTheAPI().startMOVESEngine()) { + return; + } + executeAction.setEnabled(false); + stopAction.setEnabled(true); + pauseAction.setEnabled(true); + resumeAction.setEnabled(false); + if(pdSpecGUIAction != null) { + pdSpecGUIAction.setEnabled(false); + } + progressPanel.setProgressBarVisible(true); + setProgressOnlyMode(true); + } + /** Handles the Stop menu action. **/ + void handleStopAction() { + Logger.log(LogMessageCategory.WARNING, "Execution Terminated by User"); + try { + MOVESAPI.getTheAPI().stopMOVESEngine(); + } catch(Exception e) { + Logger.logError(e, "Failed to stop MOVES engine"); + } + } + /** Handles the Pause menu action. **/ + synchronized void handlePauseAction() { + MOVESAPI.getTheAPI().pauseMOVESEngine(); + pauseAction.setEnabled(false); + resumeAction.setEnabled(true); + } + /** Handles the Resume menu action. **/ + synchronized void handleResumeAction() { + MOVESAPI.getTheAPI().resumeMOVESEngine(); + pauseAction.setEnabled(true); + resumeAction.setEnabled(false); + } + /** + * Handles the Draw State/County Map menu action. + **/ + void handleMapAction() { + RunSpecEditor editor = navigationPanel.activeEditor; + if(editor == null) { + editor = navigationPanel.lastRunSpecEditor; + } + navigationPanel.commitActiveEditor(); + if (runSpec.outputDatabase == null | runSpec.outputDatabase.databaseName.length() < 3) { + JOptionPane.showMessageDialog(this, + "Can't create map: No output DB specified in current RunSpec", + mapAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + Logger.log(LogMessageCategory.INFO,"Output database name: " + runSpec.outputDatabase.databaseName); + Connection oConn = runSpec.outputDatabase.openConnectionOrNull(); + if (oConn == null) { + JOptionPane.showMessageDialog(this, + "Can't create map: Can't connect to output database", + mapAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + try { + StateCountyMapGUI mapGUI = new StateCountyMapGUI(this,oConn, + runSpec.outputDatabase.databaseName); + // simple offset from main window origin + mapGUI.setLocation(getLocationOnScreen().x + 50, getLocationOnScreen().y + 50); + mapGUI.showModal(); + } catch(Exception e) { + Logger.log(LogMessageCategory.ERROR, + "Exception occurred while creating map: " + e); + e.printStackTrace(); + } finally { + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + oConn = null; + } + if(editor != null) { + editor.loadFromRunSpec(runSpec); + } + rightScrollPane.invalidate(); + rightScrollPane.setVisible(false); + rightScrollPane.setVisible(true); + } + /** Handles the Run Script menu action. **/ + void handleRunScriptAction() { + navigationPanel.commitActiveEditor(); + if (runSpec.outputDatabase == null | runSpec.outputDatabase.databaseName.length() < 3) { + JOptionPane.showMessageDialog(this, + "Can't run script: No output DB specified in current RunSpec", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + Logger.log(LogMessageCategory.INFO,"Output database name: " + runSpec.outputDatabase.databaseName); + Connection oConn = runSpec.outputDatabase.openConnectionOrNull(); + if (oConn == null) { + JOptionPane.showMessageDialog(this, + "Can't run script: Can't connect to output database", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + File scriptsDir = new File(DB_SCRIPTS_DIR); + String[] scriptNames = scriptsDir.list(this); + if (scriptNames == null | scriptNames.length == 0) { + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + JOptionPane.showMessageDialog(this, + "No MySQL script selected", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + String scriptName = (String) JOptionPane.showInputDialog ( + this, "Select output processing script", "Select Script", + JOptionPane.QUESTION_MESSAGE,null,scriptNames,null); + if (scriptName == null) { + return; + } + Logger.log(LogMessageCategory.INFO,"Selected script name was: " + scriptName); + boolean scriptError = false; + File scriptFile = new File(DB_SCRIPTS_DIR + File.separator + scriptName); + Object[] commentBlock = FileUtilities.extractInitialCommentBlock(scriptFile); + int userStatus = JOptionPane.showConfirmDialog (this, commentBlock, + "Post-processing Script Documentation", JOptionPane.OK_CANCEL_OPTION); + if (userStatus == JOptionPane.CANCEL_OPTION || userStatus == JOptionPane.CLOSED_OPTION) { + return; + } + // put logic hear to display file header and + // ask for user confirmation before continuing + try{ + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + // Add ##defaultdb## replacement. + DatabaseSelection defaultDatabase = SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + replacements.put("##defaultdb##",defaultDatabase.databaseName); + replacements.put("##scaleinputdb##",runSpec.scaleInputDatabase.databaseName); + DatabaseUtilities.executeScript(oConn,scriptFile,replacements); + } catch (Exception e) { + Logger.log(LogMessageCategory.ERROR, + "Exception occurred running post-processing script" + e); + scriptError=true; + } + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + if (scriptError) { + JOptionPane.showMessageDialog(this, + "Error occurred running post-processing script", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + } else { + JOptionPane.showMessageDialog(this, + "Post processing script executed successfully", + runScriptAction.getShortDescription(), + JOptionPane.INFORMATION_MESSAGE); + } + } + + /** Handles the Run Nonroad Script menu action. **/ + void handleRunNonroadScriptAction() { + navigationPanel.commitActiveEditor(); + if (runSpec.outputDatabase == null | runSpec.outputDatabase.databaseName.length() < 3) { + JOptionPane.showMessageDialog(this, + "Can't run script: No output DB specified in current RunSpec", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + Logger.log(LogMessageCategory.INFO,"Output database name: " + runSpec.outputDatabase.databaseName); + Connection oConn = runSpec.outputDatabase.openConnectionOrNull(); + if (oConn == null) { + JOptionPane.showMessageDialog(this, + "Can't run script: Can't connect to output database", + runNonroadScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + File scriptsDir = new File(DB_NONROAD_SCRIPTS_DIR); + String[] scriptNames = scriptsDir.list(this); + if (scriptNames == null | scriptNames.length == 0) { + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + JOptionPane.showMessageDialog(this, + "No MySQL script selected", + runNonroadScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + String scriptName = (String) JOptionPane.showInputDialog ( + this, "Select Nonroad processing script", "Select Script", + JOptionPane.QUESTION_MESSAGE,null,scriptNames,null); + if (scriptName == null) { + return; + } + Logger.log(LogMessageCategory.INFO,"Selected script name was: " + scriptName); + + File scriptFile = new File(DB_NONROAD_SCRIPTS_DIR + File.separator + scriptName); + Object[] commentBlock = FileUtilities.extractInitialCommentBlock(scriptFile); + // Display file header and ask for user confirmation before continuing + int userStatus = JOptionPane.showConfirmDialog (this, commentBlock, + "Nonroad post-processing Script Documentation", JOptionPane.OK_CANCEL_OPTION); + if (userStatus == JOptionPane.CANCEL_OPTION || userStatus == JOptionPane.CLOSED_OPTION) { + return; + } + + // Ask where to save output + navigationPanel.commitActiveEditor(); + FileDialog fd = new FileDialog(this, + "Save Nonroad Post Processing Script Output As...", FileDialog.SAVE); + fd.setVisible(true); //fd.show(); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String saveFileName = fd.getDirectory() + fd.getFile(); + + boolean hasErrors = false; + try { + // Add ##defaultdb## replacement. + TreeMapIgnoreCase replacements = new TreeMapIgnoreCase(); + DatabaseSelection defaultDatabase = SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + replacements.put("##defaultdb##",defaultDatabase.databaseName); + replacements.put("##scaleinputdb##",runSpec.scaleInputDatabase.databaseName); + DatabaseUtilities.executeScript(oConn,scriptFile,replacements); + hasErrors = RunNonroadScriptActionHelper.processScriptOutput(scriptName, saveFileName, oConn); + } catch (Exception e) { + hasErrors = true; + Logger.log(LogMessageCategory.ERROR, + "Exception occurred running nonroad post-processing script" + e); + } + + if (hasErrors) { + JOptionPane.showMessageDialog(this, + "Error occurred running nonroad post-processing script", + runNonroadScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + } else { + JOptionPane.showMessageDialog(this, + "Nonroad post processing script executed successfully", + runNonroadScriptAction.getShortDescription(), + JOptionPane.INFORMATION_MESSAGE); + } + + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + } + + /** Implements the FilenameFilter Interface **/ + public boolean accept(File f, String fn) { + return (fn.toUpperCase()).endsWith(".SQL"); + } + /** Handles the Summary Report menu action. **/ + void handleSummaryReportAction() { + navigationPanel.commitActiveEditor(); + if (runSpec.outputDatabase == null || runSpec.outputDatabase.databaseName.length() < 3) { + JOptionPane.showMessageDialog(this, + "Can't produce summary report: No output DB specified in current RunSpec", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + // System.out.println("Output database name: " + runSpec.outputDatabase.databaseName); + Connection oConn = runSpec.outputDatabase.openConnectionOrNull(); + if (oConn == null) { + JOptionPane.showMessageDialog(this, + "Can't produce summary report: Can't connect to output database", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + return; + } + SummaryReporter sr = new SummaryReporter(this, oConn,runSpec); + //boolean reportStatus = sr.produceSummaryReport(); + sr.produceSummaryReport(); + try { + oConn.close(); + } catch (Exception e) { + ; // can't do anything if there is a failure to close + } + /*if (!reportStatus) { + JOptionPane.showMessageDialog(this, + "Some or all summary reports not generated", + runScriptAction.getShortDescription(), + JOptionPane.ERROR_MESSAGE); + } else { + String[] message = new String[2]; + message[0] = "Summary Report(s) generated successfully"; + message[1] = "Output Database is: " + runSpec.outputDatabase.databaseName; + JOptionPane.showMessageDialog(this, message, + runScriptAction.getShortDescription(), JOptionPane.INFORMATION_MESSAGE); + }*/ + } + /** + * Handles the Convert Database menu action. + * @param mode one of the Converter.MODE_* constants. + **/ + void handleConverterAction(int mode) { + Converter c = new Converter(this,mode); + // simple offset from main window origin + c.setLocation(getLocationOnScreen().x + 100, getLocationOnScreen().y + 100); + c.showModal(); + } + /** Handles the Configure menu action. **/ + void handleConfigureAction() { + Configure c = new Configure(this); + // simple offset from main window origin + c.setLocation(getLocationOnScreen().x + 100, getLocationOnScreen().y + 100); + c.showModal(); + } + /** Handles the User Guide menu action. **/ + void handleUserGuideAction() { + showURL("http://www.epa.gov/otaq/models/moves/"); + } + /** + * Open a web page in the default browser. + * @param url web page to be shown. + **/ + void showURL(String url) { + try { + java.awt.Desktop.getDesktop().browse(java.net.URI.create(url)); + } catch(Exception e) { + Logger.logError(e,"Unable to display documentation: " + e.getMessage()); + } + } + /** + * Display a PDF file. + * @param purpose type of PDF file, used for error message display + * @param fileName name and relative path to the PDF file + **/ + void showPDF(String purpose, String fileName) { + boolean success = false; + File pdfFile = new File(fileName); + Process process = null; + try { + if(pdfFile.exists()) { + process = Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler \"" + + pdfFile.getCanonicalPath() + "\""); + if(process != null) { + int exitValue = -314; + try { + exitValue = process.waitFor(); + } catch(Exception e) { + // Nothing to do here + } + //System.out.println("exitValue=" + exitValue); + if(exitValue == 0) { + success = true; + } + } + } + } catch(Exception e) { + success = false; + Logger.logError(e,"Unable to open PDF file: " + fileName); + } + if(!success) { + JOptionPane.showMessageDialog(this, + "Unable to display " + purpose + " PDF file.\n" + + "Check that Adobe Acrobat Reader or other software for\n" + + "reading PDF files has been installed.", + "Error Opening PDF", JOptionPane.ERROR_MESSAGE); + } + } + /** + * Handles the About menu action. + * @param shouldTimeout true if the dialog should be removed after a short time + **/ + void handleAboutAction(boolean shouldTimeout) { + // TODO Expire the about message box after a short time + JOptionPane aboutPane = new JOptionPane(aboutAction.getLongDescription() + + "\n" + "This version : " + MOVES_VERSION + + "\n" + "Computer ID : " + + SystemConfiguration.getTheSystemConfiguration().computerID + + "\n" + COPYRIGHT_NOTICE + + "\n" + LICENSE_NOTICE + + "\n" + GNU_WEBSITE, + JOptionPane.INFORMATION_MESSAGE, + JOptionPane.DEFAULT_OPTION); + JDialog aboutDialog = aboutPane.createDialog(this, aboutAction.getShortDescription()); + aboutDialog.setAlwaysOnTop(true); + aboutDialog.setVisible(true); + } + /** + * Handles the Looping Tool menu action. + **/ + void handleLoopingToolAction() { + LoopingTool lt = new LoopingTool(this,runSpec,isRunSpecReady()); + // simple offset from main window origin + lt.setLocation(getLocationOnScreen().x + 100, getLocationOnScreen().y + 100); + lt.showModal(); + } + /** Creates and initializes all controls on this frame. **/ + public void createControls() { + setJMenuBar(createMenu()); + splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT); + rightScrollPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + leftScrollPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + progressPanel = new MOVESProgress(true); + descriptionPanel = new Description(); + descriptionPanel.setName("descriptionPanel"); + scalePanel = new Scale(); + scalePanel.setName("scalePanel"); + macroscaleGeographicBoundsPanel = new MacroscaleGeographicBounds(); + macroscaleGeographicBoundsPanel.setName("macroscaleGeographicBoundsPanel"); + timeSpansPanel = new TimeSpans(); + timeSpansPanel.setName("timeSpansPanel"); + onRoadVehicleEquipmentPanel = new OnRoadVehicleEquipment(); + onRoadVehicleEquipmentPanel.setName("onRoadVehicleEquipmentPanel"); + offRoadVehicleEquipmentPanel = new OffRoadVehicleEquipment(); + offRoadVehicleEquipmentPanel.setName("offRoadVehicleEquipmentPanel"); + roadTypePanel = new RoadTypeScreen(); + roadTypePanel.setName("roadTypePanel"); + roadTypePanel.movesRootWindow = this; + pollutantsAndProcessesPanel = new PollutantsAndProcesses(); + pollutantsAndProcessesPanel.setName("pollutantsAndProcessesPanel"); + manageInputDataSetsPanel = new ManageInputDataSets(); + manageInputDataSetsPanel.setName("manageInputDataSetsPanel"); + outputEmissionsBreakdownPanel = new OutputEmissionsBreakdown(); + outputEmissionsBreakdownPanel.setName("outputEmissionsBreakdownPanel"); + generalOutputPanel = new GeneralOutput(); + generalOutputPanel.setName("generalOutputPanel"); + advancedPerformancePanel = new AdvancedPerformanceFeatures(); + advancedPerformancePanel.setName("advancedPerformancePanel"); + // Since MOVESNavigation depends upon the other panels, create it after the others. + navigationPanel = new MOVESNavigation(this); + } + /** Sets the layout of the controls. **/ + public void arrangeControls() { + splitPane.setDividerLocation(0.25); + splitPane.setLeftComponent(leftScrollPane); + splitPane.setRightComponent(rightScrollPane); + leftScrollPane.setViewportView(navigationPanel); + rightScrollPane.setViewportView(progressPanel); + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(splitPane, "Center"); + getContentPane().add(status, "South"); + splitPane.setDividerLocation(200); + progressPanel.setPreferredSize(new Dimension(460, 600)); + //setSize(820,600); + (new WindowStateHandler(this)).setSizePositionAndStartTracking(820,600); + //setVisible(true); Don't do this here or the user will be able to interact + // with the GUI before all database connections have been made. + } + /** + * Sets the window in one of two modes: + *

      + *
    • Progress Only Mode: Only the progress panel is visible + *
    • Run Spec Edit Mode: The progress panel is initially visible. The left side + * of the window contains navigation controls to reach all the different parameters + * editing screens. + *
    + * @param progressOnlyMode true if the progress panel should be visible + **/ + public void setProgressOnlyMode(boolean progressOnlyMode) { + if (progressOnlyMode) { + if (getContentPane().isAncestorOf(splitPane)) { + navigationPanel.setNavigationSelection(null); + getContentPane().remove(splitPane); + getContentPane().add(progressPanel, "Center"); + getContentPane().validate(); + } + } else { + if (!getContentPane().isAncestorOf(splitPane)) { + navigationPanel.setNavigationSelection(null); + getContentPane().remove(progressPanel); + splitPane.setLeftComponent(leftScrollPane); + splitPane.setRightComponent(rightScrollPane); + leftScrollPane.setViewportView(navigationPanel); + rightScrollPane.setViewportView(progressPanel); + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(splitPane, "Center"); + getContentPane().add(status, "South"); + setVisible(true); + getContentPane().validate(); + } + } + repaint(); + } + /** + * This adapter is constructed to handle mouse over component events. + **/ + class MouseHandler extends MouseAdapter { + /* Label with the long description of a component. */ + JLabel label; + /** + * Constructor for the adapter. + * @param label the JLabel which will recieve value of the + * Action.LONG_DESCRIPTION key. + **/ + public MouseHandler(JLabel label) { + setLabel(label); + } + /** + * Sets long description of component. + * @param label the JLabel which will recieve value of the + * Action.LONG_DESCRIPTION key. + **/ + public void setLabel(JLabel label) { + this.label = label; + } + /** + * Display label when mouse has entered component. + * @param evt The event caused the mouseover action. + **/ + public void mouseEntered(MouseEvent evt) { + if (evt.getSource() instanceof AbstractButton) { + AbstractButton button = (AbstractButton)evt.getSource(); + Action action = button.getAction(); // getAction is new in JDK 1.3 + if (action != null) { + String message = (String)action.getValue(Action.LONG_DESCRIPTION); + label.setText(message); + } + } + } + } + /** + * Enable/disable the domain importer menu options based upon the scale + * selection within the runspec. + **/ + void checkImporterActions() { + boolean isNonroad = Models.evaluateModels(runSpec.models) == Models.ModelCombination.M2; + boolean isNationalDomain = !isNonroad && runSpec.domain == ModelDomain.NATIONAL_ALLOCATION; + boolean isCountyDomain = !isNonroad && runSpec.domain == ModelDomain.SINGLE_COUNTY; + boolean isProjectDomain = !isNonroad && runSpec.domain == ModelDomain.PROJECT; + dataImporterAction.setEnabled(isNationalDomain); + countyDataManagerAction.setEnabled(isCountyDomain); + projectDomainManagerAction.setEnabled(isProjectDomain); + nonroadDataImporterAction.setEnabled(isNonroad); + } + /** + * Sets the execute action menu item enabled if all RunSpecEditors don't have the NOT_READY + * state with extra logic for vehicle statuses since there only needs to be at least one of + * those. + **/ + void checkExecuteAction() { + if(stopAction.isEnabled()) { + executeAction.setEnabled(false); + return; + } + // Update the Action menu based on the total ready state + executeAction.setEnabled(isRunSpecReady()); + } + /** + * Checks the RunSpec's sections, returning true if all are ready to be used. + * @return true if the RunSpec is ready (or at least nothing is marked as not ready) + **/ + boolean isRunSpecReady() { + boolean allReady = true; + // Walk the list of option statuses (excluding vehicle statuses) + boolean onRoadReady = true; + boolean offRoadReady = true; + Iterator keyIterator = navigationPanel.optionStatuses.keySet().iterator(); + while(keyIterator.hasNext()) { + String nextEditorName = keyIterator.next().toString(); + RunSpecSectionStatus iterStatus = + (RunSpecSectionStatus)navigationPanel.optionStatuses.get( + nextEditorName); + if(iterStatus.status == RunSpecSectionStatus.NOT_READY) { + if(nextEditorName.equalsIgnoreCase("onRoadVehicleEquipmentPanel")) { + onRoadReady = false; + } else if(nextEditorName.equalsIgnoreCase("offRoadVehicleEquipmentPanel")) { + offRoadReady = false; + } else { + allReady = false; + break; + } + } + } + return allReady && (onRoadReady || offRoadReady); + } + /** + * Logs the message to some medium based on the type. + * @param type int value indicating the type of message. The values should come from + * the static Logger message-type variables. + * @param message the String to get logged. + **/ + public void handleLog(LogMessageCategory type, String message) { + // GUI only displays messages of severity WARNING and ERROR + if (type == LogMessageCategory.WARNING){ + addLogMessage("WARNING: " + message); + } else if (type == LogMessageCategory.ERROR){ + addLogMessage("ERROR: " + message); + } + } + /** Handles timer events for logHandlerTimer. **/ + void handleLogHandlerTimer() { + String message = getLogMessage(); + if(message != null) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString(message, 60)); + } +// JOptionPane.showMessageDialog(this, message, "Warning", +// JOptionPane.WARNING_MESSAGE); + } + /** + * Gets and removes the first message from the message log queue. + * @return String the first message to retrieve. + **/ + synchronized String getLogMessage() { + if(logHandlerQueue.size() > 0) { + return (String)logHandlerQueue.removeFirst(); + } + return null; + } + /** + * Adds a message to the end of the message log queue. + * @param newMessage the String to add. + **/ + synchronized void addLogMessage(String newMessage) { + logHandlerQueue.addLast(newMessage); + } + /** Handles the MOVESRunErrorLog menu action. **/ + void handleMOVESRunErrorLogAction() { + if(!DatabaseConnectionManager.initialize(MOVESDatabaseType.OUTPUT)) { + Logger.log(LogMessageCategory.ERROR, + "An Output Database has not been specified for" + + " this RunSpec or the database has not been created, " + + "please specify one on the General Output Panel."); + return; + } + MOVESRunErrorLog d = new MOVESRunErrorLog(this); + // Simple offset from main window origin + d.setLocation(getLocationOnScreen().x + 100, getLocationOnScreen().y + 100); + d.showModal(); + } + /** Handles the "Process DONE Files" menu action. **/ + synchronized void handlePDSpecGUIAction() { + if(stopAction.isEnabled()) { // don't start if a simulation is running + return; + } + // Commit the currently active (i.e. selected) RunSpec editor to the runSpec before + // starting the MOVESEngine. + navigationPanel.commitActiveEditor(); + PDSpecGUI gui = new PDSpecGUI(this); + PDSpec pdSpec = gui.showModal(); + if(pdSpec == null) { + return; + } + int answer = JOptionPane.showConfirmDialog(this, + getDialogWording("Do you want to save the run specification before gathering DONE files?"), + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveAction()) { + return; + } + } else if(answer == JOptionPane.NO_OPTION) { + // Nothing to do upon NO + } else { // else if cancelled or merely closed + return; + } + navigationPanel.clearSelection(); + progressPanel.allowTimeDialog = false; + if(!MOVESAPI.getTheAPI().runPDSpecAsync(pdSpec)) { + return; + } + executeAction.setEnabled(false); + pdSpecGUIAction.setEnabled(false); + stopAction.setEnabled(true); + pauseAction.setEnabled(true); + resumeAction.setEnabled(false); + progressPanel.setProgressBarVisible(true); + setProgressOnlyMode(true); + } + /** + * Invoked when a key has been typed. This event occurs when a key press is + * followed by a key release. + * @param e associated KeyEvent + **/ + public void keyTyped(KeyEvent e) { + // Nothing to do here + } + /** + * Invoked when a key has been pressed. + * @param e associated KeyEvent + **/ + public void keyPressed(KeyEvent e) { + // Nothing to do here + } + /** + * Invoked when a key has been released. + * @param e associated KeyEvent + **/ + public void keyReleased(KeyEvent e) { + // Nothing to do here + } +} diff --git a/gov/epa/otaq/moves/master/gui/MOVESWindowReleaseVersionTest.java b/gov/epa/otaq/moves/master/gui/MOVESWindowReleaseVersionTest.java new file mode 100644 index 0000000..cc571c9 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MOVESWindowReleaseVersionTest.java @@ -0,0 +1,49 @@ +/************************************************************************************************** + * @(#)MOVESWindowReleaseVersionTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import junit.framework.*; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import gov.epa.otaq.moves.master.gui.MOVESWindow; +import gov.epa.otaq.moves.worker.gui.WorkerWindow; + +/** + * Test Case for the Release version in MOVESWindow and WorkerWindow classes + * + * @author Wesley Faler + * @version 2013-01-31 +**/ +public class MOVESWindowReleaseVersionTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MOVESWindowReleaseVersionTest(String name) { + super(name); + } + + /** + * Tests case to check current release date in MOVESWindow + **/ + public void testCase() { + checkDate(MOVESWindow.MOVES_VERSION, "MOVESWindow"); + } + + /** + * Check a date for the correct format + * @param dateText date in yyyy/MM/dd format + * @param moduleName module being checked + **/ + void checkDate(String dateText,String moduleName) { + SimpleDateFormat convertDate = new SimpleDateFormat("yyyy/MM/dd"); + Calendar cal = Calendar.getInstance(); + String today = convertDate.format(cal.getTime()); + assertEquals("Invalid Release/Version number for " + moduleName + ": " + , today, dateText); + } +} diff --git a/gov/epa/otaq/moves/master/gui/MacroscaleGeographicBounds.java b/gov/epa/otaq/moves/master/gui/MacroscaleGeographicBounds.java new file mode 100644 index 0000000..57400b0 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/MacroscaleGeographicBounds.java @@ -0,0 +1,2190 @@ +/************************************************************************************************** + * @(#)MacroscaleGeographicBounds.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.importers.ImporterManager; + +/** + * Class for geography selection at Macroscale and Mescoscale Lookup. + * The panel consists of option buttons for region (Nation, State, and County), a States list, + * a Counties list, and a list for selections. There are Add, Delete, and Select All buttons + * to prepare a list of States or Counties. + * + * @author Wesley Faler + * @author Mitch C. (minor mods) + * @author Tim Hull + * @version 2015-05-21 +**/ +public class MacroscaleGeographicBounds extends JPanel implements ListSelectionListener, + ActionListener, FocusListener, RunSpecEditor { + /** Region label. **/ + JLabel regionLabel; + /** Radio button group. **/ + ButtonGroup radioButtons; + /** Nation radio button. **/ + JRadioButton nation; + /** State radio button. **/ + JRadioButton state; + /** County radio button. **/ + JRadioButton county; + /** Zone & Link radio button **/ + JRadioButton zoneLink; + /** Custom Domain radio button **/ + JRadioButton customDomain; + /** State label. **/ + JLabel stateLabel; + /** County label. **/ + JLabel countyLabel; + /** Selection label. **/ + JLabel selectionLabel; + /** State default list model. **/ + DefaultListModel stateListModel; + /** County default list model. **/ + DefaultListModel countyListModel; + /** Selection default list model. **/ + DefaultListModel selectionListModel; + /** State list. **/ + JList stateList; + /** County list. **/ + JList countyList; + /** Selection list. **/ + JList selectionList; + /** State scroll pane. **/ + JScrollPane stateScrollPane; + /** County scroll pane. **/ + JScrollPane countyScrollPane; + /** Selection scroll pane. **/ + JScrollPane selectionScrollPane; + /** State Select All button. **/ + JButton stateSelectAll; + /** State Add button. **/ + JButton stateAdd; + /** County Select All button. **/ + JButton countySelectAll; + /** County Add button. **/ + JButton countyAdd; + /** Selection Delete button. **/ + JButton selectionDelete; + /** State button panel. **/ + JPanel stateButtonPanel; + /** County button panel. **/ + JPanel countyButtonPanel; + /** String to track previous radio button selection value. **/ + String previousRBSetting; + /** Message log component. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** Message Panel **/ + JPanel messageLogPanel; + /** Layout for Message Panel **/ + FlowLayout messageLogFlowLayout; + /** State of the generic county **/ + JLabel genericCountyState; + /** 3-digit ID of the generic county **/ + JTextField genericCountyID; + /** description of the generic county **/ + JTextField genericCountyName; + /** GPA fraction for the generic county **/ + JTextField genericCountyGPAFraction; + /** Barometric pressure for the generic county **/ + JTextField genericCountyBarometricPressure; + /** refuelingVaporProgramAdjust for the generic county **/ + JTextField genericCountyRefuelingVaporProgramAdjust; + /** refuelingSpillProgramAdjust for the generic county **/ + JTextField genericCountyRefuelingSpillProgramAdjust; + + /** Panel holding list of states, counties, and user selections **/ + JPanel stateCountiesPanel; + /** Panel holding generic county input controls **/ + JPanel genericCountyPanel; + + /** Panel holding controls for selecting a database for County or project domains **/ + JPanel databasePanel; + /** Text describing the current scale/domain **/ + JLabel databasePurposeLabel; + /** Database server **/ + JTextField server; + /** List of database names **/ + ExtendedComboBox databaseCombo; + /** Button for creating/editing the database via the County Data Manager **/ + JButton editDatabaseButton; + /** Button to refresh the list of databases **/ + JButton refreshDatabaseButton; + /** Button to scan the current database selection for validity **/ + JButton checkDatabaseButton; + /** Database droplist ToolTip **/ + JToolTip databaseToolTip; + + /** Panel showing warning about National-scale information **/ + JPanel nationalWarningPanel = null; + /** Panel showing warning about County/Project-scale information **/ + JPanel localWarningPanel = null; + /** Model domain **/ + ModelDomain domain = null; + + /** True when performing an Onroad simulation **/ + boolean onroadSelected = true; + + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = "localhost"; + /** database names that should not be used **/ + TreeSetIgnoreCase invalidDatabaseNames = new TreeSetIgnoreCase(); + + /** + * Constructs a MacroscaleGeographicBounds panel, also creates and sets the layouts of + * the controls. + **/ + public MacroscaleGeographicBounds() { + createControls(); + arrangeControls(); + + generateListOfInvalidDatabaseNames(); + loadDatabases(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Geographic Bounds:\r\n"); + if(runspec.isCustomDomain()) { + destination.append("\tGeneric County\r\n"); + destination.append("\tState ID: " + runspec.genericCounty.stateID + "\r\n"); + destination.append("\tCounty ID: " + runspec.genericCounty.shortCountyID + "\r\n"); + destination.append("\tDescription: " + runspec.genericCounty.description + "\r\n"); + destination.append("\tAltitude: " + + (runspec.genericCounty.isHighAltitude()?"High":"Low") + "\r\n"); + destination.append("\tBarometric Pressure: " + + runspec.genericCounty.barometricPressure + "\r\n"); + destination.append("\tGPA Fraction: " + runspec.genericCounty.gpaFraction + "\r\n"); + destination.append("\tRefueling Vapor Program Adjustment Fraction: " + + runspec.genericCounty.refuelingVaporProgramAdjust + "\r\n"); + destination.append("\tRefueling Spill Program Adjustment Fraction: " + + runspec.genericCounty.refuelingSpillProgramAdjust + "\r\n"); + } else if(runspec.geographicOutputDetail!=null) { + destination.append("\t" + runspec.geographicOutputDetail + " geography\r\n"); + if(!runspec.geographicSelections.isEmpty()) { + for(Iterator i=runspec.geographicSelections.iterator();i.hasNext();) { + destination.append("\tSelection: " + i.next() + "\r\n"); + } + } + + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + createGenericCountyPanel(); + createDatabasePanel(); + + stateButtonPanel = new JPanel(); + countyButtonPanel = new JPanel(); + Dimension buttonSize = new Dimension(87,25); + regionLabel = new JLabel("Region:"); + regionLabel.setName("regionLabel"); + radioButtons = new ButtonGroup(); + nation = new JRadioButton("Nation"); + nation.setName("nation"); + nation.addActionListener(this); + ToolTipHelper.add(nation,"Simulate at the nation level"); + state = new JRadioButton("State"); + state.setName("state"); + state.addActionListener(this); + ToolTipHelper.add(state,"Simulate at the state level"); + county = new JRadioButton("County"); + county.setName("county"); + county.addActionListener(this); + ToolTipHelper.add(county,"Simulate at the county level"); + zoneLink = new JRadioButton("Zone & Link"); + zoneLink.setName("zoneLink"); + zoneLink.addActionListener(this); + ToolTipHelper.add(zoneLink,"Simulate at the zone & link level"); + customDomain = new JRadioButton("Custom Domain"); + customDomain.setName("customDomain"); + customDomain.addActionListener(this); + ToolTipHelper.add(customDomain,"Define a custom county"); + + stateLabel = new JLabel("States:"); + stateLabel.setName("stateLabel"); + countyLabel = new JLabel("Counties:"); + countyLabel.setName("countyLabel"); + selectionLabel = new JLabel("Selections:"); + selectionLabel.setName("selectionLabel"); + + GeographicSelection prototypeValue = new GeographicSelection(); + prototypeValue.textDescription = "CharacterCountToDisplayXXXXXXX"; + + stateListModel = new DefaultListModel(); + countyListModel = new DefaultListModel(); + selectionListModel = new DefaultListModel(); + loadStates(); + stateList = new JListWithToolTips(stateListModel); + stateList.setName("stateList"); + stateList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + stateList.setSelectedIndex(-1); + stateList.addListSelectionListener(this); + stateList.setVisibleRowCount(9); + stateList.setPrototypeCellValue(prototypeValue); + stateScrollPane = new JScrollPane(stateList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + stateScrollPane.setName("stateScrollPane"); + + countyList = new JListWithToolTips(countyListModel); + countyList.setName("countyList"); + countyList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + countyList.setSelectedIndex(-1); + countyList.addListSelectionListener(this); + countyList.setVisibleRowCount(9); + countyList.setPrototypeCellValue(prototypeValue); + countyScrollPane = new JScrollPane(countyList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + countyScrollPane.setName("countyScrollPane"); + + selectionList = new JListWithToolTips(selectionListModel); + selectionList.setName("selectionList"); + selectionList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + selectionList.setSelectedIndex(-1); + selectionList.addListSelectionListener(this); + selectionList.setVisibleRowCount(9); + selectionList.setPrototypeCellValue(prototypeValue); + selectionScrollPane = new JScrollPane(selectionList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + selectionScrollPane.setName("selectionScrollPane"); + + stateSelectAll = new JButton("Select All"); + stateSelectAll.setName("stateSelectAll"); + stateSelectAll.addActionListener(this); + stateSelectAll.setPreferredSize(buttonSize); + ToolTipHelper.add(stateSelectAll,"Select all states"); + stateAdd = new JButton("Add"); + stateAdd.setName("stateAdd"); + stateAdd.setEnabled(false); // not enabled until item selected from list + stateAdd.addActionListener(this); + stateAdd.setPreferredSize(buttonSize); + ToolTipHelper.add(stateAdd,"Add selected states to selection list"); + countySelectAll = new JButton("Select All"); + countySelectAll.setName("countySelectAll"); + countySelectAll.addActionListener(this); + countySelectAll.setPreferredSize(buttonSize); + ToolTipHelper.add(countySelectAll,"Select all counties"); + countyAdd = new JButton("Add"); + countyAdd.setName("countyAdd"); + countyAdd.setEnabled(false); // not enabled until item selected from list + countyAdd.addActionListener(this); + countyAdd.setPreferredSize(buttonSize); + ToolTipHelper.add(countyAdd,"Add selected counties to selection list"); + selectionDelete = new JButton("Delete"); + selectionDelete.setName("selectionDelete"); + selectionDelete.setEnabled(false); // not enabled until item selected from list + selectionDelete.addActionListener(this); + ToolTipHelper.add(selectionDelete,"Delete selected items from the selection list"); + + previousRBSetting = ""; + + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(2); + messageLogList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + messageLogPane.setName("messageLogPane"); + messageLogPanel = new JPanel(); + messageLogPanel.setVisible(true); + ToolTipHelper.add(messageLogPane,"Requirements to complete the Macroscale Geographic" + + " Bounds section"); + + ImageIcon warningImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + JLabel warningLabel = new JLabel( + "" + + "Caution: You have selected National scale with detail at the State or County level.
    " + + "MOVES will use the default national database with default state and local allocation
    " + + "factors. These factors have not been verified against actual state or county level
    " + + "data and do not meet regulatory requirements for SIPs and conformity determinations." + + "", + warningImage, JLabel.LEFT); + nationalWarningPanel = new JPanel(); + nationalWarningPanel.setLayout(new BoxLayout(nationalWarningPanel, BoxLayout.X_AXIS)); + nationalWarningPanel.add(warningLabel); + nationalWarningPanel.add(Box.createHorizontalGlue()); + + warningImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + warningLabel = new JLabel( + "" + + "Caution: For SIP or regional conformity analyses, you must go back to the
    " + + "Scale window and select \"County\" before specifying a county in this window." + + "", + warningImage, JLabel.LEFT); + localWarningPanel = new JPanel(); + localWarningPanel.setLayout(new BoxLayout(localWarningPanel, BoxLayout.X_AXIS)); + localWarningPanel.add(warningLabel); + localWarningPanel.add(Box.createHorizontalGlue()); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + setLayout(new GridBagLayout()); + stateCountiesPanel = new JPanel(); + stateCountiesPanel.setLayout(new GridBagLayout()); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 11; + gbc.gridheight = 8; + gbc.weightx = 0; + gbc.weighty = 0; + + stateButtonPanel.add(stateSelectAll); + stateButtonPanel.add(stateAdd); + countyButtonPanel.add(countySelectAll); + countyButtonPanel.add(countyAdd); + + // Register a listener for the buttons. + radioButtons.add(nation); + radioButtons.add(state); + radioButtons.add(county); + radioButtons.add(zoneLink); + radioButtons.add(customDomain); + +// Dimension view = getPreferredSize(); +// if(view==null) { +// System.out.println("view not set"); +// } else { +// System.out.println("Height="+view.height); +// System.out.println("Width="+view.width); +// } + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(regionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(nation, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 2, "WEST", 1, 1); + add(state, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 3, "WEST", 1, 1); + add(county, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 4, "WEST", 1, 1); + add(zoneLink, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 5, "WEST", 1, 1); + add(customDomain, gbc); + // Leave a blank grid cell for row #6 (7th row) + + LayoutUtility.setPositionOnGrid(gbc,1-1, 0, "WEST", 2, 1); + stateCountiesPanel.add(stateLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1-1, 1, "CENTER", 2, 5); + stateCountiesPanel.add(stateScrollPane, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1-1, 6, "WEST", 2, 1); + stateCountiesPanel.add(stateButtonPanel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,3-1, 0, "WEST", 2, 1); + stateCountiesPanel.add(countyLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,3-1, 1, "CENTER", 2, 5); + stateCountiesPanel.add(countyScrollPane, gbc); + + LayoutUtility.setPositionOnGrid(gbc,3-1, 6, "WEST", 2, 1); + stateCountiesPanel.add(countyButtonPanel, gbc); + + LayoutUtility.setPositionOnGrid(gbc,5-1, 0, "WEST", 2, 1); + stateCountiesPanel.add(selectionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,5-1, 1, "CENTER", 2, 5); + stateCountiesPanel.add(selectionScrollPane, gbc); + LayoutUtility.setPositionOnGrid(gbc,5-1, 6, "EAST", 2, 1); + stateCountiesPanel.add(selectionDelete, gbc); + + JPanel centerPanel = new JPanel(); + centerPanel.setLayout(new BoxLayout(centerPanel,BoxLayout.Y_AXIS)); + centerPanel.add(stateCountiesPanel); + centerPanel.add(genericCountyPanel); + genericCountyPanel.setVisible(false); + + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 6, 7); + add(centerPanel, gbc); + + messageLogPanel.setLayout(new BoxLayout(messageLogPanel, BoxLayout.Y_AXIS)); + messageLogPanel.add(new JLabel("Geographic Bounds Requirements")); + messageLogPanel.add(messageLogPane); + + databasePanel.setVisible(false); + LayoutUtility.setPositionOnGrid(gbc, 1, 8, "WEST", 8, 1); + add(databasePanel, gbc); + + LayoutUtility.setPositionOnGrid(gbc, 0, 9, "WEST", 9, 1); + add(messageLogPanel, gbc); + + localWarningPanel.setVisible(false); + nationalWarningPanel.setVisible(false); + + LayoutUtility.setPositionOnGrid(gbc, 1, 10, "WEST", 9, 1); + add(localWarningPanel, gbc); + + LayoutUtility.setPositionOnGrid(gbc, 1, 11, "WEST", 9, 1); + add(nationalWarningPanel, gbc); + } + + /** + * Listener method for list selection changes. + * @param e event signaling a change + **/ + public void valueChanged(ListSelectionEvent e) { + if(e.getValueIsAdjusting() == false) { + if(e.getSource() == stateList && stateList.getSelectedIndex() >= 0 + && (county.isSelected() || zoneLink.isSelected())) { + loadCounties(); + } + updateButtonStates(); + } + } + + /** Helper method for enabling/disabling all buttons depending upon list selections **/ + public void updateButtonStates() { + if(stateList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + stateSelectAll.setEnabled(true); + stateAdd.setEnabled(false); + } + if(stateList.getSelectedIndices().length > 1) { + //Multiple selection: enable/disable relevant controls. + stateSelectAll.setEnabled(true); + stateAdd.setEnabled(true); + } + if(stateList.getSelectedIndices().length == 1) { + //Single selection: enable/disable relevant controls. + stateSelectAll.setEnabled(true); + stateAdd.setEnabled(true); + } + if(countyList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + countySelectAll.setEnabled(true); + countyAdd.setEnabled(false); + } + if(countyList.getSelectedIndices().length > 1) { + //Multiple selection: enable/disable relevant controls. + countySelectAll.setEnabled(true); + countyAdd.setEnabled(true); + } + if(countyList.getSelectedIndices().length == 1) { + //Single selection: enable/disable relevant controls. + countySelectAll.setEnabled(true); + countyAdd.setEnabled(true); + } + if(selectionList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + selectionDelete.setEnabled(false); + } + if(selectionList.getSelectedIndices().length > 1) { + //Multiple selection: enable/disable relevant controls. + selectionDelete.setEnabled(true); + } + if(selectionList.getSelectedIndices().length == 1) { + //Single selection: enable/disable relevant controls. + selectionDelete.setEnabled(true); + } + displaySectionStatus(); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == nation) { + processNationButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == state) { + processStateButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == county) { + processCountyButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == zoneLink) { + processZoneLinkButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == customDomain) { + processCustomDomainButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == stateSelectAll) { + processStateSelectAllButton(); + } else if (e.getSource() == stateAdd) { + processStateAddButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == countySelectAll) { + processCountySelectAllButton(); + } else if (e.getSource() == countyAdd) { + processCountyAddButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == selectionDelete) { + processSelectionDeleteButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == editDatabaseButton) { + handleEditDatabaseButton(); + } else if(e.getSource() == refreshDatabaseButton) { + handleRefreshDatabaseButton(); + } else if(e.getSource() == checkDatabaseButton) { + handleCheckDatabaseButton(); + } else if(e.getSource() == databaseCombo) { + processDatabaseComboChange(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + } + + /** Handles the Nation button. **/ + public void processNationButton() { + selectionListModel.removeAllElements(); + + regionLabel.setVisible(true); + nation.setVisible(true); + state.setVisible(true); + county.setVisible(true); + stateLabel.setVisible(false); + countyLabel.setVisible(false); + selectionLabel.setVisible(false); + stateScrollPane.setVisible(false); + countyScrollPane.setVisible(false); + selectionScrollPane.setVisible(false); + stateSelectAll.setVisible(false); + stateAdd.setVisible(false); + countySelectAll.setVisible(false); + countyAdd.setVisible(false); + selectionDelete.setVisible(false); + displaySectionStatus(); + } + + /** Handles the State button. **/ + public void processStateButton() { + if(0 != previousRBSetting.compareTo("S")) { + selectionListModel.removeAllElements(); + } + // repopulate the states list control + loadStates(); + + regionLabel.setVisible(true); + nation.setVisible(true); + state.setVisible(true); + county.setVisible(true); + stateLabel.setVisible(true); + countyLabel.setVisible(false); + selectionLabel.setVisible(true); + stateScrollPane.setVisible(true); + countyScrollPane.setVisible(false); + selectionScrollPane.setVisible(true); + stateSelectAll.setVisible(true); + stateAdd.setVisible(true); + countySelectAll.setVisible(false); + countyAdd.setVisible(false); + selectionDelete.setVisible(true); + previousRBSetting = "S"; + displaySectionStatus(); + } + + /** Handles the County button. **/ + public void processCountyButton() { + if(0 != previousRBSetting.compareTo("C")) { + selectionListModel.removeAllElements(); + } + // reload the states list + loadStates(); + countyListModel.removeAllElements(); + + regionLabel.setVisible(true); + nation.setVisible(true); + state.setVisible(true); + county.setVisible(true); + stateLabel.setVisible(true); + countyLabel.setVisible(true); + selectionLabel.setVisible(true); + stateScrollPane.setVisible(true); + countyScrollPane.setVisible(true); + selectionScrollPane.setVisible(true); + stateSelectAll.setVisible(false); + stateAdd.setVisible(false); + countySelectAll.setVisible(true); + countyAdd.setVisible(true); + selectionDelete.setVisible(true); + stateList.setSelectionMode( + ListSelectionModel.SINGLE_INTERVAL_SELECTION); + + if(!stateCountiesPanel.isVisible()) { + genericCountyPanel.setVisible(false); + stateCountiesPanel.setVisible(true); + } + + previousRBSetting = "C"; + displaySectionStatus(); + } + + /** Handles the Zone & Link button. **/ + public void processZoneLinkButton() { + if(0 != previousRBSetting.compareTo("Z")) { + selectionListModel.removeAllElements(); + } + // reload the states list + loadStates(); + countyListModel.removeAllElements(); + + regionLabel.setVisible(true); + nation.setVisible(true); + state.setVisible(true); + county.setVisible(true); + stateLabel.setVisible(true); + countyLabel.setVisible(true); + selectionLabel.setVisible(true); + stateScrollPane.setVisible(true); + countyScrollPane.setVisible(true); + selectionScrollPane.setVisible(true); + stateSelectAll.setVisible(false); + stateAdd.setVisible(false); + countySelectAll.setVisible(true); + countyAdd.setVisible(true); + selectionDelete.setVisible(true); + stateList.setSelectionMode( + ListSelectionModel.SINGLE_INTERVAL_SELECTION); + + if(!stateCountiesPanel.isVisible()) { + genericCountyPanel.setVisible(false); + stateCountiesPanel.setVisible(true); + } + + previousRBSetting = "Z"; + displaySectionStatus(); + } + + /** Handles the Custom Domain button. **/ + public void processCustomDomainButton() { + if(0 != previousRBSetting.compareTo("D")) { + selectionListModel.removeAllElements(); + } + + if(!genericCountyPanel.isVisible()) { + stateCountiesPanel.setVisible(false); + genericCountyPanel.setVisible(true); + } + + previousRBSetting = "D"; + displaySectionStatus(); + } + + /** Handle any changes to controls in the generic county **/ + public void handleGenericCountyChange() { + if(customDomain.isSelected()) { + displaySectionStatus(); + } + } + + /** Handles the Select All button. **/ + public void processStateSelectAllButton() { + stateList.clearSelection(); + stateList.setSelectionInterval(0,stateList.getModel().getSize()-1); + updateButtonStates(); + } + + /** Handles the State Add button. **/ + public void processStateAddButton() { + Object[] stateItems = stateList.getSelectedValuesList().toArray(); + for(int i=0;i 99) { + messageLogModel.addElement( + new String("Please supply a state ID from 1 to 99.")); + } + if(g.shortCountyID < 1 || g.shortCountyID > 999) { + messageLogModel.addElement( + new String("Please supply a county ID from 1 to 999.")); + } + if(g.gpaFraction < 0 || g.gpaFraction > 1.0) { + messageLogModel.addElement( + new String("Please supply a GPA fraction from 0.0 to 1.0")); + } + } + } + if(!didClear) { + messageLogModel.clear(); + didClear = true; + } + if(databasePanel.isVisible()) { + if(!didClear) { + messageLogModel.clear(); + didClear = true; + } + boolean hasDatabase = true; + if(databaseCombo.getSelectedItem() == null) { + hasDatabase = false; + } else if(databaseCombo.getSelectedItem().toString().length() == 0) { + hasDatabase = false; + } else { + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + hasDatabase = false; + } + } + if(!hasDatabase) { + messageLogPanel.setVisible(true); + messageLogModel.addElement("Please select a domain database."); + } + } + } + + /** + * Saves the info to a RunSpec. + * @param runspec the RunSpec to get the info + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.geographicSelections.clear(); + + if(state.isSelected() || county.isSelected() || zoneLink.isSelected()) { + runspec.genericCounty = null; + for(int i=0;i i = runspec.geographicSelections.iterator(); i.hasNext();) { + selectionListModel.addElement(i.next()); + } + } else { + nation.setSelected(true); + previousRBSetting = "N"; + processNationButton(); + } + } else { + county.setSelected(true); + previousRBSetting = "C"; + processCountyButton(); + selectionListModel.removeAllElements(); + } + break; + case M1: // Onroad + default: + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + nation.setEnabled(false); + state.setEnabled(false); + county.setEnabled(false); + zoneLink.setEnabled(true); + customDomain.setEnabled(runspec.domain != ModelDomain.NATIONAL_ALLOCATION); + + if(isCustomDomain) { + customDomain.setSelected(true); + previousRBSetting = "D"; + processCustomDomainButton(); + selectionListModel.removeAllElements(); + } else { + zoneLink.setSelected(true); + previousRBSetting = "Z"; + processZoneLinkButton(); + + selectionListModel.removeAllElements(); + if(!runspec.geographicSelections.isEmpty()) { + Object firstElement = runspec.geographicSelections.iterator().next(); + GeographicSelection firstGS = (GeographicSelection) firstElement; + // Only County entries are valid at Mesoscale Lookup level since there's + // no GUI method to select state or nation level. + if(firstGS.type == GeographicSelectionType.COUNTY) { + for(Iterator i=runspec.geographicSelections.iterator();i.hasNext();) { + selectionListModel.addElement(i.next()); + } + } + } + } + } else { + nation.setEnabled(runspec.domain == ModelDomain.NATIONAL_ALLOCATION); + state.setEnabled(runspec.domain == ModelDomain.NATIONAL_ALLOCATION); + county.setEnabled(true); + zoneLink.setEnabled(false); + customDomain.setEnabled(runspec.domain != ModelDomain.NATIONAL_ALLOCATION); + + if(isCustomDomain) { + customDomain.setSelected(true); + previousRBSetting = "D"; + processCustomDomainButton(); + selectionListModel.removeAllElements(); + } else if(!runspec.geographicSelections.isEmpty()) { + Object firstElement = runspec.geographicSelections.iterator().next(); + GeographicSelection firstGS = (GeographicSelection) firstElement; + if(firstGS.type == GeographicSelectionType.STATE) { + state.setSelected(true); + previousRBSetting = "S"; + processStateButton(); + selectionListModel.removeAllElements(); + for(Iterator i=runspec.geographicSelections.iterator();i.hasNext();) { + selectionListModel.addElement(i.next()); + } + } else if(firstGS.type == GeographicSelectionType.COUNTY) { + county.setSelected(true); + previousRBSetting = "C"; + processCountyButton(); + selectionListModel.removeAllElements(); + for(Iterator i=runspec.geographicSelections.iterator();i.hasNext();) { + selectionListModel.addElement(i.next()); + } + } else { + nation.setSelected(true); + previousRBSetting = "N"; + processNationButton(); + } + } else { + county.setSelected(true); + previousRBSetting = "C"; + processCountyButton(); + selectionListModel.removeAllElements(); + } + } + break; + } + displaySectionStatus(); + assessSituation(runspec); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the info + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + boolean isOk = true; + + if(isOk && runspec.domain != ModelDomain.NATIONAL_ALLOCATION) { + if(!(runspec.scaleInputDatabase != null + && (runspec.scaleInputDatabase.serverName == null + || runspec.scaleInputDatabase.serverName.length() >= 0) + && runspec.scaleInputDatabase.databaseName != null + && runspec.scaleInputDatabase.databaseName.length() > 0)) { + isOk = false; + } + } + + if(isOk && runspec.domain != ModelDomain.NATIONAL_ALLOCATION) { + // For County and Project domains, there must be exactly one county + // selected. Even if the generic county is used, it will be in + // the list. + if(runspec.geographicSelections.size() != 1) { + isOk = false; + } else { + GeographicSelection g = (GeographicSelection)runspec.geographicSelections.first(); + if(g.type != GeographicSelectionType.COUNTY) { + isOk = false; + } + } + } + + TreeSet geographicSelections = runspec.geographicSelections; + + if(isOk && runspec.isCustomDomain()) { + isOk = runspec.genericCounty.isValid(); + if(isOk) { + // Verify the custom county is in the custom database + GeographicSelection g = new GeographicSelection(); + g.databaseKey = runspec.genericCounty.getCountyID(); + g.type = GeographicSelectionType.COUNTY; + g.textDescription = runspec.genericCounty.description; + + geographicSelections = new TreeSet(); + geographicSelections.add(g); + } + } + if(isOk) { + isOk = !geographicSelections.isEmpty(); + if(isOk) { + // Verify that the locations are in the database. + boolean shouldCloseDatabase = false; + Connection db = null; + if(runspec.domain != ModelDomain.NATIONAL_ALLOCATION) { + // Check the scale input database + shouldCloseDatabase = true; + db = runspec.scaleInputDatabase.openConnectionOrNull(); + if(db == null) { + isOk = false; + } + } else { + db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + } + + if(isOk && db != null) { + if(runspec.domain != ModelDomain.NATIONAL_ALLOCATION && runspec.timeSpan.years.size() == 1) { + // Check the year in the custom database, make sure it still matches the year selected + String sql = "select yearID from year where yearID=" + runspec.timeSpan.years.first(); + try { + int yearID = (int)SQLRunner.executeScalar(db,sql); + if(yearID <= 0) { + isOk = false; + } + } catch(Exception e) { + isOk = false; + Logger.logError(e, + "Verifying runspec year entry for the Macroscale Geographic Bounds database failed."); + } + } + for(Iterator i=runspec.geographicSelections.iterator();isOk && i.hasNext();) { + GeographicSelection selection = (GeographicSelection)i.next(); + String sql; + PreparedStatement statement = null; + ResultSet results = null; + try { + if(selection.type == GeographicSelectionType.STATE) { + sql = "SELECT stateID FROM state WHERE stateID = ?"; + statement = db.prepareStatement(sql); + statement.setInt(1,selection.databaseKey); + } else if(selection.type == GeographicSelectionType.COUNTY) { + sql = "SELECT countyID FROM county " + + "WHERE countyID = ?"; + statement = db.prepareStatement(sql); + statement.setInt(1,selection.databaseKey); + } else { + continue; + } + results = SQLRunner.executeQuery(statement,sql); + if(results == null || !results.next()) { + isOk = false; + break; + } + } catch(Exception e) { + isOk = false; + Logger.logError(e, + "Verifying runspec entries for the Macroscale Geographic Bounds failed."); + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + results = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + } + } + if(db != null && shouldCloseDatabase) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + if(!isOk) { + status.status = RunSpecSectionStatus.NOT_READY; + } + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.geographicSelections.clear(); + runspec.genericCounty = null; + runspec.scaleInputDatabase = new DatabaseSelection(); + domain = null; + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + runspec.geographicSelections.clear(); + loadFromRunSpec(runspec); // load only scale-appropriate data + saveToRunSpec(runspec); // and save it back + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** load all states from the database into the stateList listbox **/ + public void loadStates() { + stateListModel.removeAllElements(); + + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + JOptionPane.showMessageDialog(this, "Database Connection unavailable"); + GeographicSelection gsToAdd = new GeographicSelection(); + gsToAdd.databaseKey = 1; + gsToAdd.textDescription = "Arkansas"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 2; + gsToAdd.textDescription = "California"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 3; + gsToAdd.textDescription = "Colorado"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 4; + gsToAdd.textDescription = "Florida"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 5; + gsToAdd.textDescription = "Michigan"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 6; + gsToAdd.textDescription = "Oregon"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 7; + gsToAdd.textDescription = "Washington"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + gsToAdd = new GeographicSelection (); + gsToAdd.databaseKey = 8; + gsToAdd.textDescription = "Wyoming"; + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + return; + } + + String sql = "SELECT stateID, stateName FROM state ORDER BY stateName"; + try { + PreparedStatement statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + GeographicSelection gsToAdd = new GeographicSelection(); + gsToAdd.databaseKey = results.getInt(1); + gsToAdd.textDescription = results.getString(2); + gsToAdd.type = GeographicSelectionType.STATE; + stateListModel.addElement(gsToAdd); + } + results.close(); + } + statement.close(); + } catch(Exception e) { + Logger.logError(e, "Unable to load a list of states for the Macroscale Geographic"+ + " Bounds"); + } + } + + /** load all the counties for all selected states into the countyList listbox **/ + public void loadCounties() { + countyListModel.removeAllElements(); + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + Object[] stateItems = stateList.getSelectedValuesList().toArray(); + for(int i=0;i 50) { + g.description = g.description.substring(0,50); + } + + t = genericCountyGPAFraction.getText(); + Double d = null; + try { + d = new Double(t); + } catch(Exception e) { + d = null; + } + g.gpaFraction = (float)(d == null? 0 : d.doubleValue()); + + t = genericCountyBarometricPressure.getText(); + d = null; + try { + if(t.length() > 0) { + d = new Double(t); + } + } catch(Exception e) { + d = null; + } + g.barometricPressure = (float)(d == null? 0 : d.doubleValue()); + + t = genericCountyRefuelingVaporProgramAdjust.getText(); + d = null; + try { + d = new Double(t); + } catch(Exception e) { + d = null; + } + g.refuelingVaporProgramAdjust = (float)(d == null? 0 : d.doubleValue()); + + t = genericCountyRefuelingSpillProgramAdjust.getText(); + d = null; + try { + d = new Double(t); + } catch(Exception e) { + d = null; + } + g.refuelingSpillProgramAdjust = (float)(d == null? 0 : d.doubleValue()); + } + + /** + * Fill user interface controls with the values in a generic county. + * @param g source county. If null, the default values in a new GenericCounty will be used. + **/ + void fromGenericCounty(GenericCounty g) { + if(g == null) { + g = new GenericCounty(); + } + genericCountyState.setText("" + g.stateID); + genericCountyID.setText("" + g.shortCountyID); + genericCountyName.setText(g.description == null? "":g.description); + genericCountyGPAFraction.setText("" + g.gpaFraction); + genericCountyRefuelingVaporProgramAdjust.setText("" + g.refuelingVaporProgramAdjust); + genericCountyRefuelingSpillProgramAdjust.setText("" + g.refuelingSpillProgramAdjust); + + String pressureText = ""; + if(g.barometricPressure > 0) { + pressureText = "" + g.barometricPressure; + } + genericCountyBarometricPressure.setText(pressureText); + } + + /** Create and arrange the generic county panel **/ + void createGenericCountyPanel() { + JLabel label1; + JLabel label2; + JLabel label3; + JLabel label4; + JLabel label5; + JPanel panel1; + JLabel label6; + JLabel label7; + JLabel label8; + JLabel label9; + JLabel label10; + JLabel label11; + JLabel label12; + + genericCountyPanel = new JPanel(); + genericCountyPanel.setBorder(BorderFactory.createTitledBorder("Generic County")); + + label1 = new JLabel(); + genericCountyState = new JLabel(); + label2 = new JLabel(); + genericCountyID = new JTextField(); + label3 = new JLabel(); + label4 = new JLabel(); + genericCountyName = new JTextField(); + label5 = new JLabel(); + panel1 = new JPanel(); + label6 = new JLabel(); + genericCountyGPAFraction = new JTextField(); + label7 = new JLabel(); + + genericCountyBarometricPressure = new JTextField(); + label8 = new JLabel(); + genericCountyRefuelingVaporProgramAdjust = new JTextField(); + label9 = new JLabel(); + label11 = new JLabel(); + genericCountyRefuelingSpillProgramAdjust = new JTextField(); + label10 = new JLabel(); + label12 = new JLabel(); + + //======== this ======== + genericCountyPanel.setLayout(new GridBagLayout()); + ((GridBagLayout)genericCountyPanel.getLayout()).columnWidths = new int[] {0, 0, 0, 0}; + ((GridBagLayout)genericCountyPanel.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0, 0}; + ((GridBagLayout)genericCountyPanel.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + ((GridBagLayout)genericCountyPanel.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4}; + + //---- label1 ---- + label1.setText("State ID:"); + genericCountyPanel.add(label1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + genericCountyPanel.add(genericCountyState, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label2 ---- + label2.setText("County ID:"); + genericCountyPanel.add(label2, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- genericCountyID ---- + genericCountyID.setColumns(3); + genericCountyPanel.add(genericCountyID, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label3 ---- + label3.setText("1-999, labels the county within a state."); + genericCountyPanel.add(label3, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label4 ---- + label4.setText("Description:"); + genericCountyPanel.add(label4, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- genericCountyName ---- + genericCountyName.setColumns(20); + genericCountyPanel.add(genericCountyName, new GridBagConstraints(1, 2, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label6 ---- + label6.setText("GPA Fraction:"); + genericCountyPanel.add(label6, new GridBagConstraints(0, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- genericCountyGPAFraction ---- + genericCountyGPAFraction.setColumns(6); + genericCountyPanel.add(genericCountyGPAFraction, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- label7 ---- + label7.setText("Fraction of county within a fuel Geographic Phase-in Area"); + genericCountyPanel.add(label7, new GridBagConstraints(2, 3, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + //---- label8 ---- + label8.setText("Bar. Pressure:"); + genericCountyPanel.add(label8, new GridBagConstraints(0, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + genericCountyBarometricPressure.setColumns(6); + genericCountyPanel.add(genericCountyBarometricPressure, new GridBagConstraints(1, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label5 ---- + label5.setText("inHg (avg. for low altitude is 28.9, avg. for high is 24.6)"); + genericCountyPanel.add(label5, new GridBagConstraints(2, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label9 ---- + label9.setText("Vapor Adjust:"); + genericCountyPanel.add(label9, new GridBagConstraints(0, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + genericCountyRefuelingVaporProgramAdjust.setColumns(6); + genericCountyPanel.add(genericCountyRefuelingVaporProgramAdjust, new GridBagConstraints(1, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + label11.setText("Refueling Vapor Program Adjustment Fraction"); + genericCountyPanel.add(label11, new GridBagConstraints(2, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label10 ---- + label10.setText("Spill Adjust:"); + genericCountyPanel.add(label10, new GridBagConstraints(0, 7, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + genericCountyRefuelingSpillProgramAdjust.setColumns(6); + genericCountyPanel.add(genericCountyRefuelingSpillProgramAdjust, new GridBagConstraints(1, 7, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + label12.setText("Refueling Spill Program Adjustment Fraction"); + genericCountyPanel.add(label12, new GridBagConstraints(2, 7, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + genericCountyID.addFocusListener(this); + genericCountyName.addFocusListener(this); + genericCountyGPAFraction.addFocusListener(this); + genericCountyBarometricPressure.addFocusListener(this); + genericCountyRefuelingVaporProgramAdjust.addFocusListener(this); + genericCountyRefuelingSpillProgramAdjust.addFocusListener(this); + } + + /** + * Handles the focus lost event for the server textfield, and checkboxes. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + JComponent c = (JComponent)e.getComponent(); + if(c == genericCountyID + || c == genericCountyName + || c == genericCountyGPAFraction + || c == genericCountyBarometricPressure + || c == genericCountyRefuelingVaporProgramAdjust + || c == genericCountyRefuelingSpillProgramAdjust) { + handleGenericCountyChange(); + } + if(c == server) { + if(previousServer.equalsIgnoreCase(server.getText())) { + return; + } + previousServer = server.getText(); + loadDatabases(); + displaySectionStatus(); + } + } + + /** + * Currently not used. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + } + + /** Create and arrange the database panel **/ + void createDatabasePanel() { + JLabel label4; + JLabel label5; + + databasePanel = new JPanel(); + databasePanel.setBorder(BorderFactory.createTitledBorder("Domain Input Database")); + + databasePurposeLabel = new JLabel(); + label4 = new JLabel(); + label5 = new JLabel(); + editDatabaseButton = new JButton(); + editDatabaseButton.addActionListener(this); + refreshDatabaseButton = new JButton(); + refreshDatabaseButton.addActionListener(this); + checkDatabaseButton = new JButton(); + checkDatabaseButton.addActionListener(this); + + databasePanel.setLayout(new GridBagLayout()); + ((GridBagLayout)databasePanel.getLayout()).columnWidths = new int[] {38, 73, 57, 0, 0, 0, 0}; + ((GridBagLayout)databasePanel.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)databasePanel.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0E-4}; + ((GridBagLayout)databasePanel.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + //---- databasePurposeLabel ---- + databasePurposeLabel.setText("The County domain scale requires a database of detailed data."); + databasePanel.add(databasePurposeLabel, new GridBagConstraints(0, 0, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label4 ---- + label4.setText("Server:"); + databasePanel.add(label4, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- server ---- + server = new JTextField(10); + server.setText("localhost"); + ToolTipHelper.add(server, + "Edit the name of the server where the database will be located"); + server.setName("server"); + server.addFocusListener(this); + server.setColumns(10); + databasePanel.add(server, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- refreshDatabaseButton ---- + refreshDatabaseButton.setText("Refresh"); + databasePanel.add(refreshDatabaseButton, new GridBagConstraints(4, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- label5 ---- + label5.setText("Database:"); + databasePanel.add(label5, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- databaseCombo ---- + databaseCombo = new ExtendedComboBox(); + Dimension d = databaseCombo.getPreferredSize(); + databaseCombo.setPreferredSize(new Dimension(450, d.height)); // 250 + databaseCombo.setPopupWidth(databaseCombo.getPreferredSize().width); + databaseCombo.setName("databaseCombo"); + databaseCombo.addActionListener(this); + databaseCombo.setEditable(false); // Force users to pick or use the editDatabaseButton + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo, + "Edit or select the name of the database in which the data will be stored"); + databasePanel.add(databaseCombo, new GridBagConstraints(1, 2, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- editDatabaseButton ---- + editDatabaseButton.setText("Enter/Edit Data"); + databasePanel.add(editDatabaseButton, new GridBagConstraints(4, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + /* + //---- checkDatabaseButton ---- + checkDatabaseButton.setText("Check Database"); + databasePanel.add(checkDatabaseButton, new GridBagConstraints(3, 3, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + */ + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + databaseCombo.removeAllItems(); + // add the default item (no selection) + databaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement = null; + ResultSet results = null; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + if(!invalidDatabaseNames.contains(nextDB)) { + databases.add(nextDB); + } + } + } + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases) in ImporterGUI."); + DatabaseUtilities.closeConnection(db); + return; + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + results = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an output database + ArrayList stringsToRemove = new ArrayList(); + try { + boolean foundOutputTables = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTables = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0 || invalidDatabaseNames.contains(nextDatabase)) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + foundOutputTables = true; + /* + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + int foundCount = 0; + while(results.next()) { + String nextTable = results.getString(1); + if(manager.requiredTableNames.contains(nextTable)) { + foundCount++; + if(foundCount >= manager.requiredTableNames.size()) { + foundOutputTables = true; + break; + } + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } finally { + if(results != null) { + try { + results.close(); + } catch(Exception e) { + // Nothing to do here + } + results = null; + } + if(statement != null) { + try { + statement.close(); + } catch(Exception e) { + // Nothing to do here + } + statement = null; + } + } + */ + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTables) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + } + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + databaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database in ImporterGUI."); + } + // set the default selection + databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Handles the database combo change. + * @return false if the selected database is not valid, or not yet selected. + **/ + public boolean processDatabaseComboChange() { + if(databaseCombo.getSelectedItem() == null) { + displaySectionStatus(); + return false; + } + if(databaseCombo.getSelectedItem().toString().length() == 0) { + displaySectionStatus(); + return false; + } + + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + displaySectionStatus(); + return false; + } + + saveToRunSpec(MOVESAPI.getTheAPI().getRunSpec()); + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + // try to connect to the new selection + Connection db = openCurrentDatabase(false); + if(null == db) { + displaySectionStatus(); + return false; + } + try { + ArrayList messages = new ArrayList(); + int result = + ImporterManager.isCountyDomainDatabase(MOVESAPI.getTheAPI().getRunSpec(), + messages,db,true); + if(result < 0) { + // Display the error messages + String t = "Unable to use this entry as a County Domain database."; + for(Iterator i=messages.iterator();i.hasNext();) { + t += "\r\n"; + t += i.next(); + } + t += "\r\n\r\nUse the database anyway?"; + if(JOptionPane.showConfirmDialog(this, t, "Error", + JOptionPane.ERROR_MESSAGE + JOptionPane.YES_NO_OPTION) + == JOptionPane.YES_OPTION) { + result = 0; + } + if(result < 0) { + databaseCombo.setSelectedItem(""); + displaySectionStatus(); + return false; + } + } + } finally { + DatabaseUtilities.closeConnection(db); + db = null; + } + newDatabaseName = addIfNotInComboBox(newDatabaseName); + databaseCombo.setSelectedItem(newDatabaseName); + } + displaySectionStatus(); + if(status != null) { + JOptionPane.showMessageDialog(this, status); + } + return status == null; + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + Connection db = dbSelection.openConnectionOrNull(); + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** Handle the Edit Database button **/ + void handleEditDatabaseButton() { + // Fill the RunSpec's scaleInputDatabase selection object then show the CDM GUI. + saveToRunSpec(MOVESAPI.getTheAPI().getRunSpec()); + + ArrayList messages = new ArrayList(); + int result = ImporterManager.isReadyForCountyDomain(null,messages); + if(result < 0) { + // Display the error messages + String t = ""; + if(MOVESAPI.getTheAPI().getRunSpec().domain == ModelDomain.SINGLE_COUNTY) { + t = "Unable to open the County Data Manager."; + } else if(MOVESAPI.getTheAPI().getRunSpec().domain == ModelDomain.PROJECT) { + t = "Unable to open the Project Data Manager."; + } + for(Iterator i=messages.iterator();i.hasNext();) { + t += "\r\n"; + t += i.next(); + } + JOptionPane.showMessageDialog(this, t, "Error", JOptionPane.ERROR_MESSAGE); + return; + } + ImporterManager.display(MOVESNavigation.singleton.parent,null, + MOVESNavigation.singleton.parent.getLocationOnScreen().x + 50, + MOVESNavigation.singleton.parent.getLocationOnScreen().y + 50, + MOVESAPI.getTheAPI().getRunSpec().domain,ImporterManager.STANDARD_MODE, + Models.evaluateModels(MOVESAPI.getTheAPI().getRunSpec().models)); + + loadDatabases(); + loadFromRunSpec(MOVESAPI.getTheAPI().getRunSpec()); + } + + /** + * Handle the Check Database button + **/ + void handleCheckDatabaseButton() { + if(!processDatabaseComboChange()) { + JOptionPane.showMessageDialog(this, "The database cannot be used.", "Error", + JOptionPane.ERROR_MESSAGE); + } else { + JOptionPane.showMessageDialog(this, "The database can be used.", "Success", + JOptionPane.INFORMATION_MESSAGE); + } + } + + /** Fill invalidDatabaseNames **/ + void generateListOfInvalidDatabaseNames() { + DatabaseSelection defaultDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()]; + //default database cannot be accepted as an input selection + invalidDatabaseNames.add(defaultDB.databaseName); + //execution database cannot be accepted as an input selection + DatabaseSelection executionDB = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.EXECUTION.getIndex()]; + invalidDatabaseNames.add(executionDB.databaseName); + //Worker database cannot be accepted as an input selection + invalidDatabaseNames.add("MOVESWorker"); + //MySQL database cannot be accepted as an input selection + invalidDatabaseNames.add("MySQL"); + } + + /** + * Check a proposed database selection for appropriateness, prompting the user + * if the database is not acceptable. + * @param dbSelection the database selection. + * @return true if the database name is valid. + **/ + boolean validDatabaseName(DatabaseSelection dbSelection) { + if(invalidDatabaseNames.contains(dbSelection.databaseName)) { + JOptionPane.showMessageDialog(this, + "The " + dbSelection.databaseName + " database cannot be used here."); + return false; + } + + return true; + } + + /** + * Reload the list of databases, defaulting back to no selection. + **/ + void handleRefreshDatabaseButton() { + loadDatabases(); + displaySectionStatus(); + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + assessSituation(runspec); + return null; + } + + /** + * Enable/Disable controls based on their interaction rules. + * @param runspec the RunSpec to examine + **/ + void assessSituation(RunSpec runspec) { + onroadSelected = runspec.models.contains(Model.ONROAD); + + /* + if(nationalWarningPanel != null) { + nationalWarningPanel.setVisible(onroadSelected); + } + if(localWarningPanel != null) { + localWarningPanel.setVisible(onroadSelected); + } + */ + + if(onroadSelected && domain != ModelDomain.SINGLE_COUNTY && domain != ModelDomain.PROJECT) { + localWarningPanel.setVisible(true); + } + if(nation.isSelected()) { + // Nothing to do here, Nation is always valid + } else if (state.isSelected()) { + if(onroadSelected && domain == ModelDomain.NATIONAL_ALLOCATION) { + nationalWarningPanel.setVisible(true); + } + } else if (county.isSelected()) { + if(onroadSelected && domain == ModelDomain.NATIONAL_ALLOCATION) { + nationalWarningPanel.setVisible(true); + } + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/ManageInputDataSets.java b/gov/epa/otaq/moves/master/gui/ManageInputDataSets.java new file mode 100644 index 0000000..815533a --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ManageInputDataSets.java @@ -0,0 +1,720 @@ +/************************************************************************************************** + * @(#)ManageInputDataSets.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import java.sql.*; +import java.util.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Class for MOVES ManageInputDataSets panel. + * Constructs a ManageInputDataSets panel, and creates and sets the layouts of the controls. + * The Databases combobox is loaded based on the server setting. The Window includes a Server + * text, a Selections listbox, a Database combobox, a Database Description text, a Create + * Database button, and several buttons for Add, Move Up, Move Down, and Delete. It + * Loads/Saves the selections from/to Runspec. + * @author Wesley Faler + * @author Mitch C (Task 18 item 105) + * @author Tim Hull + * @version 2013-08-04 +**/ +public class ManageInputDataSets extends JPanel implements ListSelectionListener, + ActionListener, FocusListener,RunSpecEditor { + /** Server label. **/ + JLabel serverLabel; + /** Server text control. **/ + JTextField server; + + /** Database label. **/ + JLabel databaseLabel; + /** Database combo control. **/ + ExtendedComboBox databaseCombo; + /** Database Description label. **/ + JLabel databaseDescriptionLabel; + /** Database Description text control. **/ + JTextField databaseDescription; + /** Create Database button. **/ + JButton createDatabase; + + /** Add selection button **/ + JButton add; + /** Refresh button **/ + JButton refresh; + + /** Selection label. **/ + JLabel selectionLabel; + /** Selection default list model. **/ + DefaultListModel selectionListModel; + /** Selection scroll pane. **/ + JScrollPane selectionScrollPane; + /** Selection list. **/ + JList selectionList; + + /** Move Up selection button **/ + JButton moveUp; + /** Move Down selection button **/ + JButton moveDown; + /** Delete selection button **/ + JButton selectionDelete; + + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = new String(); + + + /** + * Constructs a ManageInputDataSets panel, also creates and sets the layouts of the controls. + **/ + public ManageInputDataSets() { + createControls(); + arrangeControls(); + loadDatabases(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Manage Input Data Sets:\r\n"); + for(Iterator i=runspec.databaseSelectionInputSets.iterator();i.hasNext();) { + destination.append("\tselection: " + i.next() + "\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + serverLabel = new JLabel("Server:"); + serverLabel.setName("serverLabel"); + server = new JTextField(12); + server.setName("server"); + server.addFocusListener(this); + ToolTipHelper.add(server,"Enter server where a user input database is located"); + + databaseCombo = new ExtendedComboBox(); + databaseCombo.setName("databaseCombo"); + databaseCombo.addActionListener(this); + databaseLabel = new JLabel("Database:"); + databaseLabel.setName("databaseLabel"); + databaseCombo.setEditable(true); + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo,"Enter or select the name of a user input database"); + + databaseDescriptionLabel = new JLabel("Description:"); + databaseDescriptionLabel.setName("databaseDescriptionLabel"); + databaseDescription = new JTextField(12); + databaseDescription.setName("databaseDescription"); + databaseDescription.addFocusListener(this); + ToolTipHelper.add(databaseDescription,"Edit the description of the use input database"); + + createDatabase = new JButton("Create Database..."); + createDatabase.setName("createDatabase"); + createDatabase.addActionListener(this); + ToolTipHelper.add(createDatabase,"Create the user input database"); + + add = new JButton("Add"); + add.setName("add"); + add.addActionListener(this); + ToolTipHelper.add(add,"Add a user input database to the selection list"); + + refresh = new JButton("Refresh"); + refresh.setName("refresh"); + refresh.addActionListener(this); + ToolTipHelper.add(refresh,"Refresh the list of available databases"); + + selectionLabel = new JLabel("Selections:"); + selectionLabel.setName("selectionLabel"); + + DatabaseSelection prototypeValue = new DatabaseSelection(); + prototypeValue.description = "CharacterCountToDisplayXXXXXXXXXXXXXXXXXXXXXXX"; + + selectionListModel = new DefaultListModel(); + selectionList = new JListWithToolTips(selectionListModel); + selectionList.setName("selectionList"); + selectionList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + selectionList.setSelectedIndex(-1); + selectionList.addListSelectionListener(this); + selectionList.setVisibleRowCount(9); + selectionList.setPrototypeCellValue(prototypeValue); + selectionScrollPane = new JScrollPane(selectionList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + selectionScrollPane.setName("selectionScrollPane"); + + moveUp = new JButton("Move Up"); + moveUp.setName("moveUp"); + moveUp.setEnabled(false); // not enabled until item selected from list + moveUp.addActionListener(this); + ToolTipHelper.add(moveUp,"Move the database up in the order it will be input"); + + moveDown = new JButton("Move Down"); + moveDown.setName("moveDown"); + moveDown.setEnabled(false); // not enabled until item selected from list + moveDown.addActionListener(this); + ToolTipHelper.add(moveDown,"Move the database down in the order it will be input"); + + selectionDelete = new JButton("Delete"); + selectionDelete.setName("selectionDelete"); + selectionDelete.setEnabled(false); // not enabled until item selected from list + selectionDelete.addActionListener(this); + ToolTipHelper.add(selectionDelete,"Delete this database from the list of databases to " + + "be input"); + + Dimension buttonSize = new Dimension(99,25); + add.setPreferredSize(buttonSize); + moveUp.setPreferredSize(buttonSize); + moveDown.setPreferredSize(buttonSize); + selectionDelete.setPreferredSize(buttonSize); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 5; + gbc.gridheight = 6; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + add(serverLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 1); + add(server, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + add(databaseLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 1, 1); + add(databaseCombo, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + add(databaseDescriptionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,2, "WEST", 1, 1); + add(databaseDescription, gbc); + + JPanel p = new JPanel(); + p.setLayout(new BoxLayout(p,BoxLayout.X_AXIS)); + p.add(Box.createHorizontalGlue()); + p.add(add); + p.add(refresh); + LayoutUtility.setPositionOnGrid(gbc,1,3, "EAST", 1, 1); + add(p, gbc); + /* + LayoutUtility.setPositionOnGrid(gbc,2,3, "CENTER", 1, 1); + add(add, gbc); + LayoutUtility.setPositionOnGrid(gbc,2,3, "CENTER", 1, 1); + add(refresh, gbc); + */ + + LayoutUtility.setPositionOnGrid(gbc,1,4, "EAST", 2, 1); + add(createDatabase, gbc); + + LayoutUtility.setPositionOnGrid(gbc,3,0, "WEST", 1, 1); + add(selectionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,1, "WEST", 3, 4); + add(selectionScrollPane, gbc); + LayoutUtility.setPositionOnGrid(gbc,3,5, "WEST", 1, 1); + add(moveUp, gbc); + LayoutUtility.setPositionOnGrid(gbc,4,5, "CENTER", 1, 1); + add(moveDown, gbc); + LayoutUtility.setPositionOnGrid(gbc,5,5, "EAST", 1, 1); + add(selectionDelete, gbc); + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + //long start = System.currentTimeMillis(); + //Logger.log(LogMessageCategory.INFO,"Loading input databases"); + databaseDescription.setText(""); + databaseCombo.removeAllItems(); + // add the default item (no selection) + databaseCombo.addItem(new String("")); + // get the available databases from the current server selection + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = server.getText(); + dbSelection.databaseName = ""; + Connection db = dbSelection.openConnectionOrNull(); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the server"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + databaseCombo.addItem(nextDB); + } + results.close(); + } + statement.close(); + } catch(Exception e) { + Logger.logError(e,"Loading a list of databases for Manage Input Data Sets failed."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an input database + ComboBoxModel model = databaseCombo.getModel(); + ArrayList stringsToRemove = new ArrayList(); + try { + boolean isInputDatabase = false; + for(int i = 0; i < model.getSize(); i++) { + Object nextDatabase = model.getElementAt(i); + if(nextDatabase.toString().length() == 0) { + continue; + } + /* This takes too long, so defer until the user selects the database. + try { + SQLRunner.executeSQL(db,"USE " + nextDatabase.toString()); + if(!SchemaInspector.isMOVESSchemaPresent(db,true,true, + nextDatabase.toString())) { + stringsToRemove.add(nextDatabase.toString()); + } + } catch(Exception e) { + // SQL exception here just means the database not an input database + stringsToRemove.add(nextDatabase.toString()); + } + */ + } + // now run through any database names to remove (i.e. databases that aren't inputs) + for(int i = 0; i < stringsToRemove.size(); i++) { + databaseCombo.removeItem(stringsToRemove.get(i)); + } + } catch(Exception e) { + Logger.logError(e,"Limiting the list of databases to just MOVES Input Databsaes "+ + "failed."); + // Just go on and let the connection get closed and a default database get chosen + } + // set the default selection + databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + //long end = System.currentTimeMillis(); + //Logger.log(LogMessageCategory.INFO,"Done loading input databases: " + (end - start) + " ms"); + } + + /** + * Saves the description text to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.databaseSelectionInputSets.clear(); + for(int i=0;i i=runspec.databaseSelectionInputSets.iterator();i.hasNext();) { + selectionListModel.addElement(i.next()); + } + updateButtonStates(); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + boolean isOk = true; + + for(Iterator i=runspec.databaseSelectionInputSets.iterator();i.hasNext();) { + DatabaseSelection userSelection = (DatabaseSelection)i.next(); + if(userSelection.databaseName. + equalsIgnoreCase(runspec.outputDatabase.databaseName)) { + isOk = false; + break; + } + } + + sections.remove(getName()); + RunSpecSectionStatus status; + if(isOk) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + databaseCombo.setSelectedItem(""); + server.setText(""); + databaseDescription.setText(""); + + runspec.databaseSelectionInputSets = new LinkedList(); + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.DEFAULTS); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == createDatabase) { + processCreateDatabaseButton(); + } else if(e.getSource() == databaseCombo) { + processDatabaseComboChange(); + } else if(e.getSource() == refresh) { + loadDatabases(); + } else if(e.getSource() == moveUp) { + processMoveUpButton(); + } else if(e.getSource() == moveDown) { + processMoveDownButton(); + } else if(e.getSource() == add) { + processAddButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == selectionDelete) { + processDeleteSelectionButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + updateButtonStates(); + } + + /** Handles the create database button. **/ + public void processCreateDatabaseButton() { + String newDatabaseName = databaseCombo.getSelectedItem().toString(); + if(newDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(server.getText().length() > 0) { + dbSelection.serverName = server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + if(validDatabaseName(dbSelection)) { + int createStatus = dbSelection.safeCreateDatabase("database/CreateDefault.sql"); + if(DatabaseSelection.CREATED == createStatus) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "MOVES Input database successfully created.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + } else if(DatabaseSelection.EXISTS == createStatus) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "MOVES Input database already exists.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + } else { + Logger.log(LogMessageCategory.ERROR, + "Could not create the Input database."); + } + } + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** Handles the database combo change. **/ + public void processDatabaseComboChange() { + // Nothing to do here + } + + /** Handles the add button. **/ + public void processAddButton() { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.serverName = server.getText(); + dbSelection.databaseName = StringUtilities.safeGetString(databaseCombo.getSelectedItem()); + dbSelection.description = databaseDescription.getText(); + if(validDatabaseName(dbSelection)) { + for(int i=0;i= selectionListModel.size()-1) { + // Already at the bottom of the list + return; + } + DatabaseSelection currentItem = selectionListModel.getElementAt(currentIndex); + DatabaseSelection belowItem = selectionListModel.getElementAt(currentIndex+1); + selectionListModel.setElementAt(currentItem,currentIndex+1); + selectionListModel.setElementAt(belowItem,currentIndex); + + selectionList.setSelectionInterval(currentIndex+1,currentIndex+1); + } + + /** Handles the deleteSelection button. **/ + public void processDeleteSelectionButton() { + Object[] selectedItems = selectionList.getSelectedValuesList().toArray(); + for(int i=0;i 1) { + //Multiple selection: enable/disable relevant controls. + selectionDelete.setEnabled(true); + moveUp.setEnabled(false); + moveDown.setEnabled(false); + } + if(selectionList.getSelectedIndices().length == 1) { + //Single selection: enable/disable relevant controls. + selectionDelete.setEnabled(true); + int currentIndex = selectionList.getSelectedIndices()[0]; + if(currentIndex < 1) { + // Already at the top of the list + moveUp.setEnabled(false); + } else { + moveUp.setEnabled(true); + } + if(currentIndex >= selectionListModel.size()-1) { + // Already at the bottom of the list + moveDown.setEnabled(false); + } else { + moveDown.setEnabled(true); + } + } + // The Add button requires there to be a server and a database name + // (the description is optional) + String serverName; + String databaseName; + if(server.getText().length() > 0) { + serverName = server.getText(); + } else { + serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].serverName; + } + databaseName = + StringUtilities.safeGetString((String)databaseCombo.getSelectedItem()); + if(serverName.length() > 0 && databaseName.length() > 0) { + add.setEnabled(true); + } else { + add.setEnabled(false); + } + } + + /** + * Handles the focus lost event for the server textfield. + * @param e The event caused by focus being lost. + **/ + public void focusLost(FocusEvent e) { + JComponent c = (JComponent)e.getComponent(); + if(c == server) { + if(previousServer.equals(server.getText())) { + return; + } + previousServer = server.getText(); + loadDatabases(); + updateButtonStates(); + } + } + + /** + * Currently not used. + * @param e The event caused by focus being gained. + **/ + public void focusGained(FocusEvent e) { + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/NewAction.java b/gov/epa/otaq/moves/master/gui/NewAction.java new file mode 100644 index 0000000..e3a3c1c --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/NewAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)NewAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES New menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class NewAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_NEW = "new-command"; + /** Constant action name. **/ + static final String NAME_NEW = "New..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_NEW = "toolbarButtonGraphics/general/New16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_NEW = "toolbarButtonGraphics/general/New24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_NEW = "New"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_NEW = "Create new RunSpec"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_NEW = 'N'; + + /** + * Implements the New menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public NewAction() { + putValue(Action.NAME, NAME_NEW); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_NEW)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_NEW)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_NEW); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_NEW); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_NEW)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_NEW); + } +} diff --git a/gov/epa/otaq/moves/master/gui/NonroadDataImporterAction.java b/gov/epa/otaq/moves/master/gui/NonroadDataImporterAction.java new file mode 100644 index 0000000..68bc1cf --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/NonroadDataImporterAction.java @@ -0,0 +1,44 @@ +/************************************************************************************************** + * @(#)NonroadDataImporterAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Nonroad Data Importer" menu option. + * + * @author Wesley Faler + * @version 2015-05-21 +**/ +public class NonroadDataImporterAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "nonroad-data-importer"; + /** Constant action name. **/ + static final String NAME = + "Nonroad Data Importer"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start Nonroad Data Importer GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Select and Nonroad Import Data"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'N'; + + /** + * Implements the Data Importer menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public NonroadDataImporterAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/OffRoadVehicleEquipment.java b/gov/epa/otaq/moves/master/gui/OffRoadVehicleEquipment.java new file mode 100644 index 0000000..d0a50f6 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/OffRoadVehicleEquipment.java @@ -0,0 +1,693 @@ +/************************************************************************************************** + * @(#)OffRoadVehicleEquipment.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import java.util.TreeMap; +import java.util.TreeSet; +import java.util.*; +import java.sql.*; + +/** + * Class for MOVES OffRoadVehicleEquipment panel. Constructs an OffRoadVehicleEquipment panel, + * also creates and sets the layouts of the controls. The controls are a list box of Fuels, + * a list box of Segments, both loaded from the database, a listbox of selections, + * buttons to select Fuels and Segments, and a button to add the combination of the + * two to the Selections list. It loads/saves the selections from/to RunSpec. + * + * @author Wes Faler + * @version 2015-08-18 +**/ +public class OffRoadVehicleEquipment extends JPanel implements ListSelectionListener, + ActionListener, RunSpecEditor { + /** Fuel label. **/ + JLabel fuelLabel; + /** Sector label. **/ + JLabel sectorLabel; + /** Selection label. **/ + JLabel selectionLabel; + /** Fuel default list model. **/ + DefaultListModel fuelListModel; + /** Sector default list model. **/ + DefaultListModel sectorListModel; + /** Selection default list model. **/ + DefaultListModel selectionListModel; + /** Valid Fuel/Sector combinations. **/ + TreeSet validFuelSectorCombinations = + new TreeSet(); + /** Fuel list. **/ + JList fuelList; + /** Sector list. **/ + JList sectorList; + /** Selection list. **/ + JList selectionList; + /** Fuel scroll pane to contain fuel UI controls. **/ + JScrollPane fuelScrollPane; + /** Sector scroll pane to contain fuel UI controls. **/ + JScrollPane sectorScrollPane; + /** Selection scroll pane to contain fuel UI controls. **/ + JScrollPane selectionScrollPane; + /** Fuel Select All button. **/ + JButton fuelSelectAll; + /** Sector Select All button. **/ + JButton sectorSelectAll; + /** Selection Delete button. **/ + JButton selectionDelete; + /** Add Fuel Type Combinations button. **/ + JButton addFuelSectorCombinations; + /** Message log component. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** Message Panel **/ + JPanel messageLogPanel; + /** Layout for Message Panel **/ + FlowLayout messageLogFlowLayout; + + /** Inner class to hold the fuel types loaded from the database **/ + class FuelEntry { + /** Identifies a fuel. **/ + public int fuelTypeID; + /** Fuel description from database, used for toString() purposes **/ + public String fuelTypeDesc; + + /** Default constructor **/ + public FuelEntry() { + } + + /** + * Constructor that requires fuel type and description. + * @param fuelTypeIDToUse ID from the database for the fuel + * @param fuelTypeDescToUse description from the database for the fuel + **/ + public FuelEntry(int fuelTypeIDToUse,String fuelTypeDescToUse) { + fuelTypeID = fuelTypeIDToUse; + fuelTypeDesc = fuelTypeDescToUse; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + return fuelTypeDesc; + } + } + + /** Inner class to hold the sectors loaded from the database **/ + class SectorEntry { + /** Identifies a NonRoad sector. **/ + public int sectorID; + /** Sector name from database, used for toString() purposes **/ + public String sectorName; + + /** Default constructor **/ + public SectorEntry() { + } + + /** + * Constructor that requires source use type and description. + * @param sectorIDToUse ID from the database for the sector + * @param sectorNameToUse description from the database for the sector + **/ + public SectorEntry(int sectorIDToUse,String sectorNameToUse) { + sectorID = sectorIDToUse; + sectorName = sectorNameToUse; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + return sectorName; + } + } + + /** + * Constructs a OffRoadVehicleEquipment panel, also creates + * and sets the layouts of the controls. + **/ + public OffRoadVehicleEquipment() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("NonRoad Vehicle Equipment:\r\n"); + for(Iterator i=runspec.offRoadVehicleSelections.iterator();i.hasNext();) { + destination.append("\t" + i.next() + "\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + fuelLabel = new JLabel("Fuels:"); + fuelLabel.setName("fuelLabel"); + sectorLabel = new JLabel("Sectors:"); + sectorLabel.setName("sectorLabel"); + selectionLabel = new JLabel("Selections:"); + selectionLabel.setName("selectionLabel"); + fuelListModel = new DefaultListModel(); + sectorListModel = new DefaultListModel(); + selectionListModel = new DefaultListModel(); + loadFuels(); + loadSectors(); + loadValidFuelSectorCombinations(); + fuelList = new JListWithToolTips(fuelListModel); + fuelList.setName("fuelList"); + fuelList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + fuelList.setSelectedIndex(-1); + fuelList.addListSelectionListener(this); + fuelList.setVisibleRowCount(9); + fuelList.setPrototypeCellValue(new FuelEntry() { public String toString() { return "CharacterCountToDisplay"; }}); + fuelScrollPane = new JScrollPane(fuelList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + fuelScrollPane.setName("fuelScrollPane"); + + sectorList = new JListWithToolTips(sectorListModel); + + sectorList.setName("sectorList"); + sectorList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + sectorList.setSelectedIndex(-1); + sectorList.addListSelectionListener(this); + sectorList.setVisibleRowCount(9); + sectorList.setPrototypeCellValue(new SectorEntry() { public String toString() { return "CharacterCountToDisplay"; }}); + sectorScrollPane = new JScrollPane(sectorList); + sectorScrollPane = new JScrollPane(sectorList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + sectorScrollPane.setName("sectorScrollPane"); + + selectionList = new JListWithToolTips(selectionListModel); + selectionList.setName("selectionList"); + selectionList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + selectionList.setSelectedIndex(-1); + selectionList.addListSelectionListener(this); + selectionList.setVisibleRowCount(9); + selectionList.setPrototypeCellValue(new OffRoadVehicleSelection() { public String toString() { return "CharacterCountToDisplayXXXXXXXXXX"; }}); + selectionScrollPane = new JScrollPane(selectionList); + selectionScrollPane = new JScrollPane(selectionList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + selectionScrollPane.setName("selectionScrollPane"); + + fuelSelectAll = new JButton("Select All"); + fuelSelectAll.setName("fuelSelectAll"); + ToolTipHelper.add(fuelSelectAll,"Select all fuel types"); + sectorSelectAll = new JButton("Select All"); + sectorSelectAll.setName("sectorSelectAll"); + ToolTipHelper.add(sectorSelectAll,"Select all sectors"); + selectionDelete = new JButton("Delete"); + selectionDelete.setName("selectionDelete"); + selectionDelete.setEnabled(false); // disabled until selection made + ToolTipHelper.add(selectionDelete,"Delete the selected Fuel and Sector combinations"); + addFuelSectorCombinations = new JButton("Add Fuel/Sector Combinations"); + addFuelSectorCombinations.setName("addFuelSectorCombinations"); + addFuelSectorCombinations.setEnabled(false); // disabled until item in list + ToolTipHelper.add(addFuelSectorCombinations,"Add selected Fuel and Sector combinations"); + + // Register a listener for the buttons. + fuelSelectAll.addActionListener(this); + sectorSelectAll.addActionListener(this); + selectionDelete.addActionListener(this); + addFuelSectorCombinations.addActionListener(this); + + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(5); + messageLogList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + messageLogPane.setName("messageLogPane"); + messageLogPanel = new JPanel(); + messageLogPanel.setVisible(false); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 5; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + + LayoutUtility.setPositionOnGrid(gbc,0, 3, "CENTER", 2, 1); + add(addFuelSectorCombinations, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(fuelLabel, gbc); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(fuelScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "EAST", 1, 1); + add(fuelSelectAll, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + add(sectorLabel, gbc); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,1, 1, "WEST", 1, 1); + add(sectorScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,1, 2, "EAST", 1, 1); + add(sectorSelectAll, gbc); + + LayoutUtility.setPositionOnGrid(gbc,2, 0, "WEST", 1, 1); + add(selectionLabel, gbc); + + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,2, 1, "WEST", 1, 1); + add(selectionScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,2, 2, "EAST", 1, 1); + add(selectionDelete, gbc); + + messageLogPanel.setLayout(new BoxLayout(messageLogPanel, BoxLayout.Y_AXIS)); + messageLogPanel.add(new JLabel("NonRoad Vehicle Equipment Requirements")); + messageLogPanel.add(messageLogPane); + + gbc.fill = GridBagConstraints.HORIZONTAL; + LayoutUtility.setPositionOnGrid(gbc, 0, 4, "WEST", 3, 1); + add(messageLogPanel, gbc); + } + + /** + * Listener method for list selection changes. + * @param e Event caused by a selection change. + **/ + public void valueChanged(ListSelectionEvent e) { + if(e.getValueIsAdjusting() == false) { + updateButtonStates(); + } + } + + /** Helper method for enabling/disabling all buttons depending upon list selections **/ + public void updateButtonStates() { + if(fuelList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + fuelSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(false); + } else if(fuelList.getSelectedIndices().length >= 1) { + fuelSelectAll.setEnabled(true); + if(sectorList.getSelectedIndices().length < 1) { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(false); + } else { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(true); + } + } + if(sectorList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + sectorSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(false); + } else if(sectorList.getSelectedIndices().length >= 1) { + sectorSelectAll.setEnabled(true); + if(fuelList.getSelectedIndices().length < 1) { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(false); + } else { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSectorCombinations.setEnabled(true); + } + } + if(selectionList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + selectionDelete.setEnabled(false); + } else if(selectionList.getSelectedIndices().length >= 1) { + selectionDelete.setEnabled(true); + } + displaySectionStatus(); + } + + /** + * Listener method, calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == fuelSelectAll) { + processFuelSelectAllButton(); + } else if(e.getSource() == sectorSelectAll) { + processSectorSelectAllButton(); + } else if(e.getSource() == selectionDelete) { + processSelectionDeleteButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if(e.getSource() == addFuelSectorCombinations) { + processFuelSectorCombinationsButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + updateButtonStates(); + } + + /** Handles the Fuel Select All button. **/ + public void processFuelSelectAllButton() { + fuelList.clearSelection(); + fuelList.setSelectionInterval(0,fuelList.getModel().getSize()-1); + } + + /** Handles the Sector Select All button. **/ + public void processSectorSelectAllButton() { + sectorList.clearSelection(); + sectorList.setSelectionInterval(0,sectorList.getModel().getSize()-1); + } + + /** Handles the Delete button. **/ + public void processSelectionDeleteButton() { + Object[] selectedItems = selectionList.getSelectedValuesList().toArray(); + for(int i=0;i vfsc=validFuelSectorCombinations.iterator();vfsc.hasNext();) { + OffRoadVehicleSelection validCombination = (OffRoadVehicleSelection)vfsc.next(); + if(fs.equals(validCombination)) { + foundMatch = true; + break; + } + } + if(foundMatch) { + selectionListModel.addElement(fs); + } + } + } + } + } + + /** Display the status of this runspec section. **/ + public void displaySectionStatus() { + messageLogPanel.setVisible(false); + if(selectionList.getModel().getSize() == 0) { + messageLogModel.clear(); + messageLogPanel.setVisible(true); + messageLogModel.addElement(new String("Please select a Fuel and Sector combination.")); + } else { + messageLogModel.clear(); + //boolean didWarnAboutMotorcycles = false; + for(Enumeration sl=selectionListModel.elements();sl.hasMoreElements();) { + OffRoadVehicleSelection selection = (OffRoadVehicleSelection)sl.nextElement(); + boolean foundMatch = false; + for(Iterator vfsc=validFuelSectorCombinations.iterator(); + vfsc.hasNext();) { + OffRoadVehicleSelection validCombination = (OffRoadVehicleSelection)vfsc.next(); + if(selection.equals(validCombination)) { + foundMatch = true; + break; + } + } + if(!foundMatch) { + messageLogPanel.setVisible(true); + messageLogModel.addElement(new String(selection.fuelTypeDesc+"/" + + selection.sectorName +" combination is not in the database.")); + } + } + } + } + + /** + * Saves the info to a RunSpec. + * @param runspec the RunSpec to get the info + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.offRoadVehicleSelections.clear(); + for(int i=0;i 0) { + // Ensure Off-Network road type is selected + boolean hasNonRoad = false; + for(Iterator i=runspec.roadTypes.iterator();i.hasNext();) { + RoadType r = i.next(); + if(r.roadTypeID == 100) { + hasNonRoad = true; + break; + } + } + if(!hasNonRoad) { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + String sql = "SELECT roadTypeID, roadDesc, isAffectedByOnroad, isAffectedByNonroad FROM roadtype WHERE roadTypeID=100"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + int roadTypeID = query.rs.getInt(1); + boolean isAffectedByOnroad = query.rs.getBoolean(3); + boolean isAffectedByNonroad = query.rs.getBoolean(4); + if ( isAffectedByOnroad && isAffectedByNonroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs.getString(2), Models.ModelCombination.M12)); + } else if (isAffectedByOnroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs.getString(2), Models.ModelCombination.M1)); + } else if (isAffectedByNonroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs.getString(2), Models.ModelCombination.M2)); + } + //runspec.roadTypes.add(new RoadType(roadTypeID, query.rs.getString(2))); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load nonroad road type."); + } finally { + query.onFinally(); + } + } + } + } + + /** + * Loads the info from a RunSpec. + * @param runspec the RunSpec to get the description text from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + selectionListModel.removeAllElements(); + for(Iterator i=runspec.offRoadVehicleSelections.iterator(); + i.hasNext();) { + selectionListModel.addElement(i.next()); + } + displaySectionStatus(); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the info + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + RunSpecSectionStatus status; + if(runspec.offRoadVehicleSelections.isEmpty()) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } + sections.remove(getName()); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.offRoadVehicleSelections.clear(); + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** load all fuels from the database into the fuelList listbox **/ + public void loadFuels() { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + fuelListModel.addElement(new FuelEntry(10000,"Diesel")); + fuelListModel.addElement(new FuelEntry(10001,"Gasoline")); + return; + } + //String sql = "SELECT fuelTypeID, fuelTypeDesc FROM nrFuelType ORDER BY fuelTypeDesc"; + String sql = "SELECT DISTINCT ft.fuelTypeID, ft.fuelTypeDesc" + + " FROM NRSCC scc" + + " INNER JOIN NREquipmentType neq on (neq.NREquipTypeID=scc.NREquipTypeID)" + + " INNER JOIN Sector s on (s.sectorID=neq.sectorID)" + + " INNER JOIN nrFuelType ft on (ft.fuelTypeID=scc.fuelTypeID)" + + " ORDER BY ft.fuelTypeDesc"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + int ftID = query.rs.getInt(1); + String fDesc = query.rs.getString(2); + fuelListModel.addElement(new FuelEntry(ftID,fDesc)); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load a list of fuels for On Road Vehicle Equipment."); + } finally { + query.onFinally(); + } + } + + /** load all sectors from the database into the sectorList listbox **/ + public void loadSectors() { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + sectorListModel.addElement(new SectorEntry(5001,"Pizza Delivery Cars")); + return; + } + String sql="SELECT sectorID,description FROM Sector WHERE sectorID>0 ORDER BY description"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + sectorListModel.addElement( + new SectorEntry(query.rs.getInt(1),query.rs.getString(2))); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load a list of NonRoad sectors."); + } finally { + query.onFinally(); + } + } + + /** Load valid fuel/sector combinations **/ + public void loadValidFuelSectorCombinations() { + validFuelSectorCombinations.clear(); + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + return; + } + String defaultDBName = SystemConfiguration.getTheSystemConfiguration().databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName; + String sql = "SELECT DISTINCT ft.fuelTypeID, ft.fuelTypeDesc, s.sectorID, s.description" + + " FROM NRSCC scc" + + " INNER JOIN NREquipmentType neq on (neq.NREquipTypeID=scc.NREquipTypeID)" + + " INNER JOIN " + defaultDBName + ".Sector s on (s.sectorID=neq.sectorID)" + + " INNER JOIN " + defaultDBName + ".nrFuelType ft on (ft.fuelTypeID=scc.fuelTypeID)" + + " ORDER BY ft.fuelTypeDesc, s.description"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + OffRoadVehicleSelection fs = new OffRoadVehicleSelection(); + fs.fuelTypeID = query.rs.getInt(1); + fs.fuelTypeDesc = query.rs.getString(2); + fs.sectorID = query.rs.getInt(3); + fs.sectorName = query.rs.getString(4); + validFuelSectorCombinations.add(fs); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load valid fuel/sector combinations."); + } finally { + query.onFinally(); + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/OnRoadVehicleEquipment.java b/gov/epa/otaq/moves/master/gui/OnRoadVehicleEquipment.java new file mode 100644 index 0000000..8c89bc3 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/OnRoadVehicleEquipment.java @@ -0,0 +1,671 @@ +/************************************************************************************************** + * @(#)OnRoadVehicleEquipment.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; +import java.util.TreeMap; +import java.util.TreeSet; +import java.util.*; +import java.sql.*; + +/** + * Class for MOVES OnRoadVehicleEquipment panel. Constructs an OnRoadVehicleEquipment panel, + * also creates and sets the layouts of the controls. The controls are a list box of Fuels, + * a list box of Source Use Types, both loaded from the database, a listbox of selections, + * buttons to select Fuels and SourceUse Types, and a button to add the combination of the + * two to the Selections list. It loads/saves the selections from/to RunSpec. + * + * @author Wes Faler + * @author EPA Mitch C. + * @author EPA William Aikman + * @author Tim Hull + * @version 2015-08-18 +**/ +public class OnRoadVehicleEquipment extends JPanel implements ListSelectionListener, + ActionListener, RunSpecEditor { + /** Fuel label. **/ + JLabel fuelLabel; + /** Source Use Type label. **/ + JLabel sourceUseTypeLabel; + /** Selection label. **/ + JLabel selectionLabel; + /** Fuel default list model. **/ + DefaultListModel fuelListModel; + /** Source Use Type default list model. **/ + DefaultListModel sourceUseTypeListModel; + /** Selection default list model. **/ + DefaultListModel selectionListModel; + /** Valid Fuel/Source combinations. **/ + TreeSet validFuelSourceCombinations = new TreeSet(); + /** Fuel list. **/ + JList fuelList; + /** Source Use Type list. **/ + JList sourceUseTypeList; + /** Selection list. **/ + JList selectionList; + /** Fuel scroll pane to contain fuel UI controls. **/ + JScrollPane fuelScrollPane; + /** Source Use Type scroll pane to contain fuel UI controls. **/ + JScrollPane sourceUseTypeScrollPane; + /** Selection scroll pane to contain fuel UI controls. **/ + JScrollPane selectionScrollPane; + /** Fuel Select All button. **/ + JButton fuelSelectAll; + /** Source Use Type Select All button. **/ + JButton sourceUseTypeSelectAll; + /** Selection Delete button. **/ + JButton selectionDelete; + /** Add Fuel Type Combinations button. **/ + JButton addFuelSourceUseTypeCombinations; + /** Message log component. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** Message Panel **/ + JPanel messageLogPanel; + /** Layout for Message Panel **/ + FlowLayout messageLogFlowLayout; + + /** Inner class to hold the fuel types loaded from the database **/ + class FuelEntry { + /** Identifies a fuel. **/ + public int fuelTypeID; + /** Fuel description from database, used for toString() purposes **/ + public String fuelTypeDesc; + + /** Default constructor **/ + public FuelEntry() { + } + + /** + * Constructor that requires fuel type and description. + * @param fuelTypeIDToUse ID from the database for the fuel + * @param fuelTypeDescToUse description from the database for the fuel + **/ + public FuelEntry(int fuelTypeIDToUse,String fuelTypeDescToUse) { + fuelTypeID = fuelTypeIDToUse; + fuelTypeDesc = fuelTypeDescToUse; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + return fuelTypeDesc; + } + } + + /** Inner class to hold the source types loaded from the database **/ + class SourceTypeEntry { + /** Identifies a MOVES Source Use Type. **/ + public int sourceTypeID; + /** Source Use Type name from database, used for toString() purposes **/ + public String sourceTypeName; + + /** Default constructor **/ + public SourceTypeEntry() { + } + + /** + * Constructor that requires source use type and description. + * @param sourceTypeIDToUse ID from the database for the source use type + * @param sourceTypeNameToUse description from the database for the source use type + **/ + public SourceTypeEntry(int sourceTypeIDToUse,String sourceTypeNameToUse) { + sourceTypeID = sourceTypeIDToUse; + sourceTypeName = sourceTypeNameToUse; + } + + /** + * Returns a String representation of this object. + * @return The String representation of this object. + **/ + public String toString() { + return sourceTypeName; + } + } + + /** + * Constructs a OnRoadVehicleEquipment panel, also creates + * and sets the layouts of the controls. + **/ + public OnRoadVehicleEquipment() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("On Road Vehicle Equipment:\r\n"); + for(Iterator i=runspec.onRoadVehicleSelections.iterator();i.hasNext();) { + destination.append("\t" + i.next() + "\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + fuelLabel = new JLabel("Fuels:"); + fuelLabel.setName("fuelLabel"); + sourceUseTypeLabel = new JLabel("Source Use Types:"); + sourceUseTypeLabel.setName("sourceUseTypeLabel"); + selectionLabel = new JLabel("Selections:"); + selectionLabel.setName("selectionLabel"); + fuelListModel = new DefaultListModel(); + sourceUseTypeListModel = new DefaultListModel(); + selectionListModel = new DefaultListModel(); + loadFuels(); + loadSourceUseTypes(); + loadValidFuelSourceCombinations(); + fuelList = new JListWithToolTips(fuelListModel); + fuelList.setName("fuelList"); + fuelList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + fuelList.setSelectedIndex(-1); + fuelList.addListSelectionListener(this); + fuelList.setVisibleRowCount(9); + fuelList.setPrototypeCellValue(new FuelEntry() { public String toString() { return "CharacterCountToDisplay"; }}); + fuelScrollPane = new JScrollPane(fuelList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + fuelScrollPane.setName("fuelScrollPane"); + + sourceUseTypeList = new JListWithToolTips(sourceUseTypeListModel); + + sourceUseTypeList.setName("sourceUseTypeList"); + sourceUseTypeList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + sourceUseTypeList.setSelectedIndex(-1); + sourceUseTypeList.addListSelectionListener(this); + sourceUseTypeList.setVisibleRowCount(9); + sourceUseTypeList.setPrototypeCellValue(new SourceTypeEntry() { public String toString() { return "CharacterCountToDisplay"; }}); + sourceUseTypeScrollPane = new JScrollPane(sourceUseTypeList); + sourceUseTypeScrollPane = new JScrollPane(sourceUseTypeList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + sourceUseTypeScrollPane.setName("sourceUseTypeScrollPane"); + + selectionList = new JListWithToolTips(selectionListModel); + selectionList.setName("selectionList"); + selectionList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + selectionList.setSelectedIndex(-1); + selectionList.addListSelectionListener(this); + selectionList.setVisibleRowCount(9); + selectionList.setPrototypeCellValue(new OnRoadVehicleSelection() { public String toString() { return "CharacterCountToDisplayXXXXXXXXXX"; }}); + selectionScrollPane = new JScrollPane(selectionList); + selectionScrollPane = new JScrollPane(selectionList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + selectionScrollPane.setName("selectionScrollPane"); + + fuelSelectAll = new JButton("Select All"); + fuelSelectAll.setName("fuelSelectAll"); + ToolTipHelper.add(fuelSelectAll,"Select all fuel types"); + sourceUseTypeSelectAll = new JButton("Select All"); + sourceUseTypeSelectAll.setName("sourceUseTypeSelectAll"); + ToolTipHelper.add(sourceUseTypeSelectAll,"Select all source use types"); + selectionDelete = new JButton("Delete"); + selectionDelete.setName("selectionDelete"); + selectionDelete.setEnabled(false); // disabled until selection made + ToolTipHelper.add(selectionDelete,"Delete the selected Fuel and Source Use Type combinations"); + addFuelSourceUseTypeCombinations = new JButton("Add Fuel/Type Combinations"); + addFuelSourceUseTypeCombinations.setName("addFuelSourceUseTypeCombinations"); + addFuelSourceUseTypeCombinations.setEnabled(false); // disabled until item in list + ToolTipHelper.add(addFuelSourceUseTypeCombinations,"Add selected Fuel and Source Use Type" + + " combinations"); + + // Register a listener for the buttons. + fuelSelectAll.addActionListener(this); + sourceUseTypeSelectAll.addActionListener(this); + selectionDelete.addActionListener(this); + addFuelSourceUseTypeCombinations.addActionListener(this); + + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(5); + messageLogList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + messageLogPane.setName("messageLogPane"); + messageLogPanel = new JPanel(); + messageLogPanel.setVisible(false); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 5; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + + LayoutUtility.setPositionOnGrid(gbc,0, 3, "CENTER", 2, 1); + add(addFuelSourceUseTypeCombinations, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(fuelLabel, gbc); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(fuelScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "EAST", 1, 1); + add(fuelSelectAll, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + add(sourceUseTypeLabel, gbc); + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,1, 1, "WEST", 1, 1); + add(sourceUseTypeScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,1, 2, "EAST", 1, 1); + add(sourceUseTypeSelectAll, gbc); + + LayoutUtility.setPositionOnGrid(gbc,2, 0, "WEST", 1, 1); + add(selectionLabel, gbc); + + gbc.fill = GridBagConstraints.BOTH; + gbc.weightx = 1; + gbc.weighty = 1; + LayoutUtility.setPositionOnGrid(gbc,2, 1, "WEST", 1, 1); + add(selectionScrollPane, gbc); + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,2, 2, "EAST", 1, 1); + add(selectionDelete, gbc); + + messageLogPanel.setLayout(new BoxLayout(messageLogPanel, BoxLayout.Y_AXIS)); + messageLogPanel.add(new JLabel("On Road Vehicle Equipment Requirements")); + messageLogPanel.add(messageLogPane); + + gbc.fill = GridBagConstraints.HORIZONTAL; + LayoutUtility.setPositionOnGrid(gbc, 0, 4, "WEST", 3, 1); + add(messageLogPanel, gbc); + } + + /** + * Listener method for list selection changes. + * @param e Event caused by a selection change. + **/ + public void valueChanged(ListSelectionEvent e) { + if (e.getValueIsAdjusting() == false) { + updateButtonStates(); + } + } + + /** Helper method for enabling/disabling all buttons depending upon list selections **/ + public void updateButtonStates() { + if (fuelList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + fuelSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(false); + } else if (fuelList.getSelectedIndices().length >= 1) { + fuelSelectAll.setEnabled(true); + if (sourceUseTypeList.getSelectedIndices().length < 1) { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(false); + } else { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(true); + } + } + if (sourceUseTypeList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + sourceUseTypeSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(false); + } else if (sourceUseTypeList.getSelectedIndices().length >= 1) { + sourceUseTypeSelectAll.setEnabled(true); + if (fuelList.getSelectedIndices().length < 1) { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(false); + } else { + // the following button only enabled when item(s) + // selected in both the fuel and sourceUseType lists. + addFuelSourceUseTypeCombinations.setEnabled(true); + } + } + if (selectionList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + selectionDelete.setEnabled(false); + } else if (selectionList.getSelectedIndices().length >= 1) { + selectionDelete.setEnabled(true); + } + displaySectionStatus(); + } + + /** + * Listener method, calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == fuelSelectAll) { + processFuelSelectAllButton(); + } else if (e.getSource() == sourceUseTypeSelectAll) { + processSourceUseTypeSelectAllButton(); + } else if (e.getSource() == selectionDelete) { + processSelectionDeleteButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } else if (e.getSource() == addFuelSourceUseTypeCombinations) { + processFuelSourceUseTypeCombinationsButton(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + updateButtonStates(); + } + + /** Handles the Fuel Select All button. **/ + public void processFuelSelectAllButton() { + fuelList.clearSelection(); + fuelList.setSelectionInterval(0,fuelList.getModel().getSize()-1); + } + + /** Handles the Source Use Type Select All button. **/ + public void processSourceUseTypeSelectAllButton() { + sourceUseTypeList.clearSelection(); + sourceUseTypeList.setSelectionInterval(0,sourceUseTypeList.getModel().getSize()-1); + } + + /** Handles the Delete button. **/ + public void processSelectionDeleteButton() { + Object[] selectedItems = selectionList.getSelectedValuesList().toArray(); + for(int i=0;i vfsc=validFuelSourceCombinations.iterator();vfsc.hasNext();) { + OnRoadVehicleSelection validCombination = (OnRoadVehicleSelection)vfsc.next(); + if(fs.equals(validCombination)) { + foundMatch = true; + break; + } + } + if(foundMatch) { + selectionListModel.addElement(fs); + } + } + } + } + } + + /** Display the status of this runspec section. **/ + public void displaySectionStatus() { + messageLogPanel.setVisible(false); + if(selectionList.getModel().getSize() == 0) { + messageLogModel.clear(); + messageLogPanel.setVisible(true); + messageLogModel.addElement(new String("Please select a Fuel and Source Use Type " + +"combination.")); + } else { + messageLogModel.clear(); + //boolean didWarnAboutMotorcycles = false; + for(Enumeration sl=selectionListModel.elements();sl.hasMoreElements();) { + OnRoadVehicleSelection selection = (OnRoadVehicleSelection)sl.nextElement(); + boolean foundMatch = false; + for(Iterator vfsc=validFuelSourceCombinations.iterator(); + vfsc.hasNext();) { + OnRoadVehicleSelection validCombination = (OnRoadVehicleSelection)vfsc.next(); + if(selection.equals(validCombination)) { + foundMatch = true; + break; + } + } + if(!foundMatch) { + messageLogPanel.setVisible(true); + messageLogModel.addElement(new String(selection.fuelTypeDesc+"/" + + selection.sourceTypeName +" combination is not in the database.")); + } + //if(selection.sourceTypeID == 11 && !didWarnAboutMotorcycles) { + // didWarnAboutMotorcycles = true; + // messageLogPanel.setVisible(true); + // messageLogModel.addElement( + // "This version of MOVES does not include criteria pollutant and air toxics emission factors for motorcycles. Please see current MOVES documentation for more information."); + //} + } + } + } + + /** + * Saves the info to a RunSpec. + * @param runspec the RunSpec to get the info + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.onRoadVehicleSelections.clear(); + for(int i=0;i i=runspec.onRoadVehicleSelections.iterator(); + i.hasNext();) { + selectionListModel.addElement(i.next()); + } + displaySectionStatus(); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the info + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + RunSpecSectionStatus status; + if(runspec.onRoadVehicleSelections.isEmpty()) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } + sections.remove(getName()); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.onRoadVehicleSelections.clear(); + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + + if(fuelList != null) { + fuelList.clearSelection(); + } + if(sourceUseTypeList != null) { + sourceUseTypeList.clearSelection(); + } + + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** load all fuels from the database into the fuelList listbox **/ + public void loadFuels() { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + fuelListModel.addElement(new FuelEntry(10000,"Diesel")); + fuelListModel.addElement(new FuelEntry(10001,"Gasoline")); + return; + } + String sql = "SELECT DISTINCT ft.fuelTypeID, ft.fuelTypeDesc" + +" FROM FuelType ft, FuelEngTechAssoc feta" + +" WHERE ft.fuelTypeID = feta.fuelTypeID" + +" ORDER BY ft.fuelTypeDesc"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + int ftID = query.rs.getInt(1); + String fDesc = query.rs.getString(2); + fuelListModel.addElement(new FuelEntry(ftID,fDesc)); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load a list of fuels for On Road Vehicle Equipment."); + } finally { + query.onFinally(); + } + } + + /** load all sourceUseTypes from the database into the sourceUseTypeList listbox **/ + public void loadSourceUseTypes() { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + sourceUseTypeListModel.addElement(new SourceTypeEntry(5000,"Garbage Trucks")); + sourceUseTypeListModel.addElement(new SourceTypeEntry(5001,"Pizza Delivery Cars")); + return; + } + String sql="SELECT sourceTypeID,sourceTypeName FROM SourceUseType ORDER BY SourceTypeName"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + sourceUseTypeListModel.addElement( + new SourceTypeEntry(query.rs.getInt(1),query.rs.getString(2))); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load a list of On Road Vehicle Eqiupment."); + } finally { + query.onFinally(); + } + } + + /** Load valid fuel/source combinations **/ + public void loadValidFuelSourceCombinations() { + validFuelSourceCombinations.clear(); + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + return; + } + String sql = "SELECT DISTINCT ft.fuelTypeID, ft.fuelTypeDesc, sut.sourceTypeID, " + +"sut.sourceTypeName FROM FuelType ft, SourceUseType sut, FuelEngTechAssoc " + +"feta WHERE ft.fuelTypeID = feta.fuelTypeID AND sut.sourceTypeID = " + +"feta.sourceTypeID ORDER BY ft.fuelTypeDesc, sut.sourceTypeName"; + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + OnRoadVehicleSelection fs = new OnRoadVehicleSelection(); + fs.fuelTypeID = query.rs.getInt(1); + fs.fuelTypeDesc = query.rs.getString(2); + fs.sourceTypeID = query.rs.getInt(3); + fs.sourceTypeName = query.rs.getString(4); + validFuelSourceCombinations.add(fs); + } + } catch(Exception e) { + Logger.logError(e,"Unable to load valid fuel/vehicle combinations."); + } finally { + query.onFinally(); + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/OpenAction.java b/gov/epa/otaq/moves/master/gui/OpenAction.java new file mode 100644 index 0000000..cd6806f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/OpenAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)OpenAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Open menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class OpenAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_OPEN = "open-command"; + /** Constant action name. **/ + static final String NAME_OPEN = "Open..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_OPEN = "toolbarButtonGraphics/general/Open16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_OPEN = "toolbarButtonGraphics/general/Open24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_OPEN = "Open"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_OPEN = "Open an existing RunSpec"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_OPEN = 'O'; + + /** + * Implements the Open menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public OpenAction() { + putValue(Action.NAME, NAME_OPEN); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_OPEN)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_OPEN)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_OPEN); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_OPEN); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_OPEN)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_OPEN); + } +} diff --git a/gov/epa/otaq/moves/master/gui/OutputEmissionsBreakdown.java b/gov/epa/otaq/moves/master/gui/OutputEmissionsBreakdown.java new file mode 100644 index 0000000..b386eaf --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/OutputEmissionsBreakdown.java @@ -0,0 +1,993 @@ + /************************************************************************************************* + * @(#)OutputEmissionsBreakdown.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.common.*; +import java.util.*; + +/** + * Class for MOVES OutputEmissionsBreakdown panel. This Class contains several panels. + * The Always panel contains Time, Location, and Pollutant check boxes. the for + * All Vehicle/Equipment Categories panel contains Model Year, FuelType, and + * Emission Process. The On Road/Off Road panel contains an On Road/Off Road checkbox + * and On Road and Off Road panels. the On Road panel contains Road Type, Source + * Use Type, and SCC check boxes, ant the Off Road frame contains Sector, SCC, and HP Class + * check boxes. The main panel contains a check box for estimating the uncertainty called + * Estimate Uncertainty. + * + * @author Wesley Faler + * @author Sarah Luo, ERG + * @author Mitch C (minor mods) + * @version 2015-03-16 +**/ +public class OutputEmissionsBreakdown extends JPanel implements ActionListener, RunSpecEditor { + /** Panel contains "always" controls. **/ + JPanel alwaysPanel; + /** Panel contains "all" controls. **/ + JPanel allPanel; + /** Panel contains on and off road panels and controls. **/ + JPanel onOffRoadPanel; + /** Panel contains on road controls. **/ + JPanel onRoadPanel; + /** Panel contains off road controls. **/ + JPanel offRoadPanel; + + /** Panel with time options. **/ + JPanel timePanel; + /** Time option checkbox. **/ + JCheckBox time; + /** Time label. **/ + JLabel timeLabel; + /** Output Timestep combo control. **/ + JComboBox outputTimestepCombo; + /** Output Time Step when user entered the screen. **/ + OutputTimeStep lastOutputTimeStep; + /** Panel with location options. **/ + JPanel locationPanel; + /** Location option checkbox. **/ + JCheckBox location; + /** Location label. **/ + JLabel locationLabel; + /** Geographic output detail combo control. **/ + JComboBox geographicOutputDetailCombo; + /** Panel with pollutant options. **/ + JPanel pollutantPanel; + /** Location option checkbox. **/ + JCheckBox pollutant; + /** Pollutant label. **/ + JLabel pollutantLabel; + /** Pollutant fill label. **/ + JLabel pollutantFillLabel; + + /** Model Year option checkbox. **/ + JCheckBox modelYear; + /** Fuel Type option checkbox. **/ + JCheckBox fuelType; + /** Fuel SubType option checkbox. **/ + JCheckBox fuelSubType; + /** Emissions Process option checkbox. **/ + JCheckBox emissionProcess; + + /** Estimate Uncertainty option checkbox. **/ + JCheckBox estimateUncertainty; + /** Panel with uncertainty options. **/ + JPanel uncertaintyPanel; + /** Number of iterations label. **/ + JLabel numberOfIterationsLabel; + /** Number of Iterations Field. **/ + JTextField numberOfIterations; + /** Keep pseudo-randomly sampled data for each iteration. **/ + JCheckBox keepSampledData; + /** Keep output data for each iteration. **/ + JCheckBox keepIterations; + + /** On Road/Off Road option checkbox. **/ + JCheckBox onOffRoad; + /** True when Nonroad options are in effect **/ + boolean useNonroadRules = false; + + /** Road Type option checkbox. **/ + JCheckBox roadType; + /** Source Use Type option checkbox. **/ + JCheckBox sourceUseType; + /** On Road SCC option checkbox. **/ + JCheckBox onRoadSCC; + /** Regulatory Class option checkbox. **/ + JCheckBox regClass; + + /** Sector option checkbox. **/ + JCheckBox sector; + /** Off Road engine tech option checkbox. **/ + JCheckBox engTech; + /** HP Class option checkbox. **/ + JCheckBox hpClass; + + /** true if the most recently loaded runspec uses mesoscale loop **/ + boolean isMesoscaleLookup = false; + + /** + * Constructs a OutputEmissionsBreakdown panel, also creates and sets the layouts + * of the controls. + **/ + public OutputEmissionsBreakdown() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Output Emissions Breakdown:\r\n"); + if(runspec.outputEmissionsBreakdownSelection.modelYear) { + destination.append("\tModel Year\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.fuelType) { + destination.append("\tFuel Type\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.fuelSubType) { + destination.append("\tFuel SubType\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.emissionProcess) { + destination.append("\tEmission Process\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.estimateUncertainty) { + destination.append("\tEstimate Uncertainty\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.onRoadOffRoad) { + destination.append("\tOn Road/Off Road\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.roadType) { + destination.append("\tRoad Type\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.regClassID) { + destination.append("\tRegulatory Class\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.sourceUseType) { + destination.append("\tSource Use Type\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.onRoadSCC) { + destination.append("\tSCC\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.sector) { + destination.append("\tSector\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.engTechID) { + destination.append("\tOff Road Engine Tech\r\n"); + } + if(runspec.outputEmissionsBreakdownSelection.hpClass) { + destination.append("\tHP Class\r\n"); + } + if(runspec.outputTimeStep != null) { + destination.append("\tOutput Time Step\r\n"); + destination.append("\t\t" + runspec.outputTimeStep + "\r\n"); + } + if(runspec.geographicOutputDetail != null) { + destination.append("\tGeographic Output Detail\r\n"); + destination.append("\t\t" + runspec.geographicOutputDetail + "\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + Dimension alwaysPanelSize = new Dimension(240, 110); + alwaysPanel = new JPanel(); + alwaysPanel.setName("alwaysPanel"); + alwaysPanel.setBorder(BorderFactory.createTitledBorder( + "Always")); + alwaysPanel.setPreferredSize(alwaysPanelSize); + timePanel = new JPanel(); + ToolTipHelper.add(timePanel,"Always generate time periods for the output data"); + time = new JCheckBox(""); + time.setName("time"); + timeLabel = new JLabel("Time"); + outputTimestepCombo = new JComboBox(); + outputTimestepCombo.setName("outputTimestepCombo"); + outputTimestepCombo.addActionListener(this); + outputTimestepCombo.setEditable(false); + outputTimestepCombo.setSelectedIndex(-1); + ToolTipHelper.add(outputTimestepCombo,"Select the time step to be used for the output " + + "data"); + locationPanel = new JPanel(); + ToolTipHelper.add(locationPanel,"Always generate locations for output data"); + location = new JCheckBox(""); + location.setName("location"); + locationLabel = new JLabel("Location"); + geographicOutputDetailCombo = new JComboBox(); + geographicOutputDetailCombo.setName("locationUnitsCombo"); + geographicOutputDetailCombo.addActionListener(this); + geographicOutputDetailCombo.setEditable(false); + ToolTipHelper.add(geographicOutputDetailCombo,"Select the geographic detail to be used for the " + + "output data"); + pollutantPanel = new JPanel(); + ToolTipHelper.add(pollutantPanel,"Always generate output pollutants"); + pollutant = new JCheckBox(""); + pollutant.setName("pollutant"); + pollutantLabel = new JLabel("Pollutant"); + pollutantFillLabel = new JLabel(" "); + + Dimension allPanelSize = new Dimension(240, 135); + allPanel = new JPanel(); + allPanel.setName("allPanel"); + allPanel.setBorder(BorderFactory.createTitledBorder( + "for All Vehicle/Equipment Categories")); + allPanel.setPreferredSize(allPanelSize); + modelYear = new JCheckBox("Model Year"); + modelYear.setName("modelYear"); + ToolTipHelper.add(modelYear,"Include model year in output data"); + fuelType = new JCheckBox("Fuel Type"); + fuelType.setName("fuelType"); + ToolTipHelper.add(fuelType,"Include fuel type in output data"); + fuelType.addActionListener(this); + fuelSubType = new JCheckBox("Fuel Subtype"); + fuelSubType.setName("fuelSubType"); + ToolTipHelper.add(fuelSubType,"Include fuel subtype in output data"); + fuelSubType.addActionListener(this); + emissionProcess = new JCheckBox("Emission Process"); + emissionProcess.setName("emissionProcess"); + ToolTipHelper.add(emissionProcess,"Include emission process in output data"); + + Dimension uncertaintyPanelSize = new Dimension(408, 110); + uncertaintyPanel = new JPanel(); + uncertaintyPanel.setBorder(BorderFactory.createTitledBorder("")); + uncertaintyPanel.setPreferredSize(uncertaintyPanelSize); + estimateUncertainty = new JCheckBox("Estimate Uncertainty"); + estimateUncertainty.setName("estimateUncertainty"); + estimateUncertainty.addActionListener(this); + ToolTipHelper.add(estimateUncertainty,"Estimate uncertainty in output data"); + numberOfIterationsLabel = new JLabel("Number of iterations:"); + ToolTipHelper.add(numberOfIterationsLabel,"Number of iterations to include in estimate"); + numberOfIterations = new JTextField(5); + ToolTipHelper.add(numberOfIterations,"Number of iterations to include in estimate"); + keepSampledData = new JCheckBox("Keep pseudo-randomly sampled input"); + ToolTipHelper.add(keepSampledData,"Keep pseudo-randomly generated data use in estimate"); + keepIterations = new JCheckBox("Keep output from each iteration"); + ToolTipHelper.add(keepIterations,"Keep the output of each iteration"); + + Dimension onOffRoadPanelSize = new Dimension(165, 285 + (CompilationFlags.DO_RATES_FIRST? 20:0)); + onOffRoadPanel = new JPanel(); + onOffRoadPanel.setName("onOffRoadPanel"); + onOffRoadPanel.setBorder(BorderFactory.createTitledBorder( + "On Road/Off Road")); + onOffRoadPanel.setPreferredSize(onOffRoadPanelSize); + onOffRoad = new JCheckBox("On Road/Off Road"); + onOffRoad.setName("onOffRoad"); + ToolTipHelper.add(onOffRoad,"Include on and off road results"); + + Dimension onRoadPanelSize = new Dimension(160, 100 + (CompilationFlags.DO_RATES_FIRST? 20:0)); + onRoadPanel = new JPanel(); + onRoadPanel.setName("onRoadPanel"); + onRoadPanel.setBorder(BorderFactory.createTitledBorder( + "On and Off Road")); + onRoadPanel.setPreferredSize(onRoadPanelSize); + roadType = new JCheckBox("Road Type"); + roadType.setName("roadType"); + ToolTipHelper.add(roadType,"Include road types in output data"); + sourceUseType = new JCheckBox("Source Use Type"); + sourceUseType.setName("sourceUseType"); + ToolTipHelper.add(sourceUseType,"Include source use types in output data"); + onRoadSCC = new JCheckBox("SCC"); + onRoadSCC.setName("onRoadSCC"); + onRoadSCC.addActionListener(this); + ToolTipHelper.add(onRoadSCC,"Include SCC in output data"); + regClass = new JCheckBox("Regulatory Class"); + regClass.setName("regClass"); + ToolTipHelper.add(regClass,"Include regulatory class in output data"); + + Dimension offRoadPanelSize = new Dimension(160, 100); + offRoadPanel = new JPanel(); + offRoadPanel.setName("offRoadPanel"); + offRoadPanel.setBorder(BorderFactory.createTitledBorder( + "Off Road")); + offRoadPanel.setPreferredSize(offRoadPanelSize); + sector = new JCheckBox("Sector "); + sector.setName("sector"); + ToolTipHelper.add(sector,"Include sectors in output data"); + engTech = new JCheckBox("Engine Tech."); + engTech.setName("engTech"); + ToolTipHelper.add(engTech,"Include off road engine tech in output data"); + hpClass = new JCheckBox("HP Class"); + hpClass.setName("hpClass"); + ToolTipHelper.add(hpClass,"Include HP class in output data"); + + // Set fixed values and disabled fields + onOffRoad.setSelected(true); + onOffRoad.setEnabled(false); + time.setSelected(true); + time.setEnabled(false); + location.setSelected(true); + location.setEnabled(false); + pollutant.setSelected(true); + pollutant.setEnabled(false); + sector.setSelected(true); + sector.setEnabled(false); + engTech.setSelected(true); + engTech.setEnabled(false); + hpClass.setSelected(true); + hpClass.setEnabled(false); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + + alwaysPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 1; + gbc.weighty = 0; + + timePanel.setLayout(new BoxLayout(timePanel, BoxLayout.X_AXIS)); + timePanel.add(time); + timePanel.add(timeLabel); + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + alwaysPanel.add(timePanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 1); + alwaysPanel.add(outputTimestepCombo, gbc); + locationPanel.setLayout(new BoxLayout(locationPanel, BoxLayout.X_AXIS)); + locationPanel.add(location); + locationPanel.add(locationLabel); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + alwaysPanel.add(locationPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 1, 1); + alwaysPanel.add(geographicOutputDetailCombo, gbc); + pollutantPanel.setLayout(new BoxLayout(pollutantPanel, BoxLayout.X_AXIS)); + pollutantPanel.add(pollutant); + pollutantPanel.add(pollutantLabel); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + alwaysPanel.add(pollutantPanel, gbc); + + allPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 4; + gbc.weightx = 1; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 2, 1); + allPanel.add(modelYear, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + allPanel.add(fuelType, gbc); + if(CompilationFlags.ALLOW_FUELSUBTYPE_OUTPUT) { + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 1, 1); + allPanel.add(fuelSubType, gbc); + } + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 2, 1); + allPanel.add(emissionProcess, gbc); + + onRoadPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 3; + gbc.weightx = 1; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + onRoadPanel.add(roadType, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + onRoadPanel.add(sourceUseType, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + onRoadPanel.add(onRoadSCC, gbc); + + if(CompilationFlags.DO_RATES_FIRST) { + LayoutUtility.setPositionOnGrid(gbc,0,3, "WEST", 1, 1); + onRoadPanel.add(regClass, gbc); + } + + offRoadPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 3; + gbc.weightx = 1; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + offRoadPanel.add(sector, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + offRoadPanel.add(engTech, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 1, 1); + offRoadPanel.add(hpClass, gbc); + + onOffRoadPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 3; + gbc.weightx = 1; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "CENTER", 1, 1); + onOffRoadPanel.add(onOffRoad, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "CENTER", 1, 1); + onOffRoadPanel.add(onRoadPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "CENTER", 1, 1); + onOffRoadPanel.add(offRoadPanel, gbc); + + uncertaintyPanel.setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 4; + gbc.gridheight = 3; + gbc.weightx = 1; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + uncertaintyPanel.add(numberOfIterationsLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 3, 1); + uncertaintyPanel.add(numberOfIterations, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 4, 1); + uncertaintyPanel.add(keepSampledData, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 4, 1); + uncertaintyPanel.add(keepIterations, gbc); + + setLayout(new GridBagLayout()); + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 4; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "WEST", 1, 1); + add(alwaysPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "WEST", 1, 1); + add(allPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "WEST", 3, 1); + add(estimateUncertainty, gbc); + LayoutUtility.setPositionOnGrid(gbc,1,0, "WEST", 1, 3); + add(onOffRoadPanel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0,3, "WEST", 3, 1); + add(uncertaintyPanel, gbc); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == onRoadSCC) { + processOnRoadSCCButton(false); + } else if(e.getSource() == estimateUncertainty) { + processEstimateUncertaintyCheckBox(); + } else { + enforceNonroadRules(); + } + } + + /** + * Handles the On Road SCC checkbox click logic. + * @param pageReloaded false when a user has clicked the SCC button, true when called for a page load. + **/ + public void processOnRoadSCCButton(boolean pageReloaded) { + enforceNonroadRules(); + if(useNonroadRules) { + // Nonroad SCC button behavior + if(onRoadSCC.isSelected()) { + sourceUseType.setSelected(false); + sourceUseType.setEnabled(false); + roadType.setSelected(false); + roadType.setEnabled(false); + /* + if(!pageReloaded) { + // Enable FuelType when the user clicks the SCC button. + // Change nothing when merely loading a runspec. + fuelType.setSelected(true); + fuelSubType.setSelected(false); + } + fuelType.setEnabled(true); + fuelSubType.setEnabled(true); + */ + } else { + sourceUseType.setSelected(false); + sourceUseType.setEnabled(false); + roadType.setSelected(false); + roadType.setEnabled(false); + //fuelType.setEnabled(true); + //fuelSubType.setEnabled(true); + } + // FuelSubType is only available when fuelType is checked. + fuelSubType.setEnabled(fuelType.isSelected()); + if(!fuelType.isSelected()) { + fuelSubType.setSelected(false); + } + } else { + // Onroad SCC button behavior + // When using onroad SCC, check and disable fuel, source, road, and process. + if(onRoadSCC.isSelected()) { + fuelType.setSelected(true); + fuelType.setEnabled(false); + sourceUseType.setSelected(true); + sourceUseType.setEnabled(false); + roadType.setSelected(true); + roadType.setEnabled(false); + emissionProcess.setSelected(true); + emissionProcess.setEnabled(false); + } else { + fuelType.setEnabled(true); + sourceUseType.setEnabled(true); + roadType.setEnabled(!isMesoscaleLookup); + if(isMesoscaleLookup) { + roadType.setSelected(true); + } + emissionProcess.setEnabled(!isMesoscaleLookup); + } + // No fuelSubType for Onroad. + fuelSubType.setSelected(false); + fuelSubType.setEnabled(false); + } + } + + private boolean alreadyEnforcingNonroadRules = false; + + /** Update checkbox status based upon Nonroad's use cases. **/ + public void enforceNonroadRules() { + if(!useNonroadRules) { + if(modelYear != null) { + modelYear.setEnabled(true); + // No fuelSubType for Onroad. + fuelSubType.setSelected(false); + fuelSubType.setEnabled(false); + } + } + if(!useNonroadRules || alreadyEnforcingNonroadRules) { + return; + } + alreadyEnforcingNonroadRules = true; + + if(sourceUseType != null) { + // Turn off and disable sourceUseType and roadType. + sourceUseType.setSelected(false); + sourceUseType.setEnabled(false); + roadType.setSelected(false); + roadType.setEnabled(false); + + onRoadSCC.setEnabled(true); + sector.setEnabled(true); + engTech.setEnabled(true); + hpClass.setEnabled(true); + modelYear.setEnabled(true); + fuelType.setEnabled(true); + emissionProcess.setEnabled(true); + + // FuelSubType is only available when fuelType is checked. + fuelSubType.setEnabled(fuelType.isSelected()); + if(!fuelType.isSelected()) { + fuelSubType.setSelected(false); + } + } + alreadyEnforcingNonroadRules = false; + } + + /** Handles the Estimate Uncertainty checkbox click logic. **/ + public void processEstimateUncertaintyCheckBox() { + uncertaintyPanel.setEnabled(estimateUncertainty.isSelected()); + numberOfIterationsLabel.setEnabled(estimateUncertainty.isSelected()); + numberOfIterations.setEnabled(estimateUncertainty.isSelected()); + keepSampledData.setEnabled(estimateUncertainty.isSelected()); + keepIterations.setEnabled(estimateUncertainty.isSelected()); + } + + /** + * Saves the description text to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.outputEmissionsBreakdownSelection.modelYear = modelYear.isSelected(); + runspec.outputEmissionsBreakdownSelection.fuelType = fuelType.isSelected(); + runspec.outputEmissionsBreakdownSelection.fuelSubType = fuelSubType.isSelected(); + if(!runspec.outputEmissionsBreakdownSelection.fuelType) { + runspec.outputEmissionsBreakdownSelection.fuelSubType = false; + } + if(runspec.outputEmissionsBreakdownSelection.fuelSubType) { + runspec.outputEmissionsBreakdownSelection.fuelType = true; + } + + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + runspec.outputEmissionsBreakdownSelection.emissionProcess = true; + runspec.outputEmissionsBreakdownSelection.estimateUncertainty = false; + } else { + runspec.outputEmissionsBreakdownSelection.emissionProcess = emissionProcess.isSelected(); + runspec.outputEmissionsBreakdownSelection.estimateUncertainty = + estimateUncertainty.isSelected(); + } + // Uncertainty is disabled in this version + runspec.outputEmissionsBreakdownSelection.estimateUncertainty = false; + + int intNumberOfIterations; + try { + intNumberOfIterations = Integer.parseInt(numberOfIterations.getText()); + if(intNumberOfIterations<2) { + intNumberOfIterations = 2; + } + } catch (NumberFormatException e) { + intNumberOfIterations = 2; + } + numberOfIterations.setText(Integer.toString(intNumberOfIterations)); + runspec.outputEmissionsBreakdownSelection.numberOfIterations = intNumberOfIterations; + runspec.outputEmissionsBreakdownSelection.keepSampledData = keepSampledData.isSelected(); + runspec.outputEmissionsBreakdownSelection.keepIterations = keepIterations.isSelected(); + runspec.outputEmissionsBreakdownSelection.onRoadOffRoad = onOffRoad.isSelected(); + runspec.outputEmissionsBreakdownSelection.roadType = roadType.isSelected(); + runspec.outputEmissionsBreakdownSelection.regClassID = regClass.isSelected(); + runspec.outputEmissionsBreakdownSelection.sourceUseType = sourceUseType.isSelected(); + runspec.outputEmissionsBreakdownSelection.sector = sector.isSelected(); + runspec.outputEmissionsBreakdownSelection.engTechID = engTech.isSelected(); + runspec.outputEmissionsBreakdownSelection.hpClass = hpClass.isSelected(); + runspec.outputTimeStep = (OutputTimeStep)outputTimestepCombo.getSelectedItem(); + if(runspec.outputTimeStep != null) { + runspec.outputFactors.timeMeasurementSystem = + runspec.outputTimeStep.getTimeMeasurementSystemDefault(); + } else { + runspec.outputFactors.timeMeasurementSystem = null; + } + + if(runspec.domain != ModelDomain.PROJECT) { + if(geographicOutputDetailCombo.getSelectedIndex() != -1) { + runspec.geographicOutputDetail = (GeographicOutputDetailLevel) + geographicOutputDetailCombo.getSelectedItem(); + } + } + + //if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + // runspec.outputEmissionsBreakdownSelection.onRoadSCC = false; + //} else { + runspec.outputEmissionsBreakdownSelection.onRoadSCC = onRoadSCC.isSelected(); + //} + } + + /** + * Loads from a RunSpec. + * @param runspec the RunSpec from which data is extracted + **/ + public void loadFromRunSpec(RunSpec runspec) { + if(!runspec.outputEmissionsBreakdownSelection.fuelType) { + runspec.outputEmissionsBreakdownSelection.fuelSubType = false; + } + if(runspec.outputEmissionsBreakdownSelection.fuelSubType) { + runspec.outputEmissionsBreakdownSelection.fuelType = true; + } + // Load Emission Breakdown Selections + modelYear.setSelected(runspec.outputEmissionsBreakdownSelection.modelYear); + fuelType.setSelected(runspec.outputEmissionsBreakdownSelection.fuelType); + fuelSubType.setSelected(runspec.outputEmissionsBreakdownSelection.fuelSubType); + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + emissionProcess.setSelected(true); + emissionProcess.setEnabled(false); + + estimateUncertainty.setSelected(false); + estimateUncertainty.setEnabled(false); + } else { + emissionProcess.setSelected(runspec.outputEmissionsBreakdownSelection.emissionProcess); + emissionProcess.setEnabled(true); + + // Uncertainty is disabled in this version + estimateUncertainty.setSelected(false); + estimateUncertainty.setEnabled(false); + /* + estimateUncertainty.setSelected( + runspec.outputEmissionsBreakdownSelection.estimateUncertainty); + // enable/disable uncertainty estimation if output is being aggregated. + if(runspec.timeSpan.aggregateBy.compareTo(OutputTimeStep.HOUR) != 0) { + estimateUncertainty.setSelected(false); + estimateUncertainty.setEnabled(false); + } else { + estimateUncertainty.setEnabled(true); + GeographicSelectionType geoType = null; + Iterator i = runspec.geographicSelections.iterator(); + if(i.hasNext()) { + geoType = ((GeographicSelection) i.next()).type; + } + if(geoType != null) { + if(geoType == GeographicSelectionType.NATION + || geoType == GeographicSelectionType.STATE) { + estimateUncertainty.setSelected(false); + estimateUncertainty.setEnabled(false); + } + } + } + */ + } + Integer integerNumberOfIterations = new Integer( + runspec.outputEmissionsBreakdownSelection.numberOfIterations); + numberOfIterations.setText(integerNumberOfIterations.toString()); + keepSampledData.setSelected(runspec.outputEmissionsBreakdownSelection.keepSampledData); + keepIterations.setSelected(runspec.outputEmissionsBreakdownSelection.keepIterations); + uncertaintyPanel.setEnabled(estimateUncertainty.isSelected()); + numberOfIterationsLabel.setEnabled(estimateUncertainty.isSelected()); + numberOfIterations.setEnabled(estimateUncertainty.isSelected()); + keepSampledData.setEnabled(estimateUncertainty.isSelected()); + keepIterations.setEnabled(estimateUncertainty.isSelected()); + + boolean hasNonroad = runspec.models.contains(Model.NONROAD); + useNonroadRules = hasNonroad; + sector.setEnabled(hasNonroad); + engTech.setEnabled(hasNonroad); + hpClass.setEnabled(hasNonroad); + + // Load the output time steps + try { + outputTimestepCombo.removeAllItems(); + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + outputTimestepCombo.addItem(OutputTimeStep.HOUR); + runspec.outputTimeStep = OutputTimeStep.HOUR; + lastOutputTimeStep = OutputTimeStep.HOUR; + outputTimestepCombo.setSelectedItem(OutputTimeStep.HOUR); + } else if(runspec.domain == ModelDomain.PROJECT) { + outputTimestepCombo.addItem(OutputTimeStep.HOUR); + runspec.outputTimeStep = OutputTimeStep.HOUR; + lastOutputTimeStep = OutputTimeStep.HOUR; + outputTimestepCombo.setSelectedItem(OutputTimeStep.HOUR); + } else if(hasNonroad) { + outputTimestepCombo.addItem(OutputTimeStep.CLASSICAL_DAY); + runspec.outputTimeStep = OutputTimeStep.CLASSICAL_DAY; + lastOutputTimeStep = OutputTimeStep.CLASSICAL_DAY; + outputTimestepCombo.setSelectedItem(OutputTimeStep.CLASSICAL_DAY); + } else { + for(Iterator i = OutputTimeStep.allTypes.iterator(); i.hasNext();) { + OutputTimeStep outputTimeStep = (OutputTimeStep)i.next(); + + // Do not add timesteps that are less than the aggregate level. + if(outputTimeStep.compareTo(runspec.timeSpan.aggregateBy) < 0) { + continue; + } + + /* Per EPA feedback 2003-09-10, allow the user to pick any option even + if they haven't chosen a large enough timespan for it. + if(outputTimeStep.requiresAllHours() && !timeSpan.hasAllHours()) { + continue; + } + if (outputTimeStep.requiresAllDays() && !timeSpan.hasAllDays()) { + continue; + } + if (outputTimeStep.requiresAllMonths() && !timeSpan.hasAllMonths()) { + continue; + } + */ + outputTimestepCombo.addItem(outputTimeStep); + } + } + } catch(NoSuchElementException e) { + // If the time span information has not been entered, leave the TimeStep info blank. + } + + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + //onRoadSCC.setSelected(false); + //onRoadSCC.setEnabled(false); + onRoadSCC.setSelected(runspec.outputEmissionsBreakdownSelection.onRoadSCC); + onRoadSCC.setEnabled(true); + } else { + lastOutputTimeStep = runspec.outputTimeStep; + if(runspec.outputTimeStep != null) { + if(runspec.outputTimeStep.compareTo(runspec.timeSpan.aggregateBy) < 0) { + outputTimestepCombo.setSelectedItem(runspec.timeSpan.aggregateBy); + } else { + outputTimestepCombo.setSelectedItem(runspec.outputTimeStep); + } + } + + onRoadSCC.setSelected(runspec.outputEmissionsBreakdownSelection.onRoadSCC); + onRoadSCC.setEnabled(true); + } + + // onOffRoad is always selected in ghg1 + onOffRoad.setSelected(true); + roadType.setSelected(runspec.outputEmissionsBreakdownSelection.roadType); + sourceUseType.setSelected(runspec.outputEmissionsBreakdownSelection.sourceUseType); + sector.setSelected(runspec.outputEmissionsBreakdownSelection.sector); + engTech.setSelected(runspec.outputEmissionsBreakdownSelection.engTechID); + hpClass.setSelected(runspec.outputEmissionsBreakdownSelection.hpClass); + + if(hasNonroad) { + regClass.setEnabled(false); + regClass.setSelected(false); + } else { + regClass.setEnabled(true); + regClass.setSelected(runspec.outputEmissionsBreakdownSelection.regClassID); + } + + onScaleChange(runspec,null); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + // This panel is acceptable even if there are no selections made, so there is nothing + // to be checked here. + boolean isOk = false; + if(runspec.geographicOutputDetail == GeographicOutputDetailLevel.NATION + || runspec.geographicOutputDetail == GeographicOutputDetailLevel.STATE + || runspec.geographicOutputDetail == GeographicOutputDetailLevel.COUNTY + || runspec.geographicOutputDetail == GeographicOutputDetailLevel.ZONE + || runspec.geographicOutputDetail == GeographicOutputDetailLevel.LINK) { + isOk = true; + } + + if(isOk && runspec.outputTimeStep == null) { + isOk = false; + } + + if(isOk && runspec.scale != ModelScale.MESOSCALE_LOOKUP + && runspec.outputTimeStep.compareTo(runspec.timeSpan.aggregateBy) < 0) { + isOk = false; + } + + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + if(!isOk) { + status.status = RunSpecSectionStatus.NOT_READY; + } + if(sections != null) { + sections.remove(getName()); + sections.put(getName(),status); + } + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.outputEmissionsBreakdownSelection.modelYear = false; + runspec.outputEmissionsBreakdownSelection.fuelType = false; + runspec.outputEmissionsBreakdownSelection.fuelSubType = false; + runspec.outputEmissionsBreakdownSelection.emissionProcess = false; + runspec.outputEmissionsBreakdownSelection.estimateUncertainty = false; + runspec.outputEmissionsBreakdownSelection.numberOfIterations = 2; + runspec.outputEmissionsBreakdownSelection.keepSampledData = false; + runspec.outputEmissionsBreakdownSelection.keepIterations = false; + runspec.outputEmissionsBreakdownSelection.onRoadOffRoad = false; + runspec.outputEmissionsBreakdownSelection.roadType = false; + runspec.outputEmissionsBreakdownSelection.regClassID = false; + runspec.outputEmissionsBreakdownSelection.sourceUseType = false; + runspec.outputEmissionsBreakdownSelection.onRoadSCC = false; + runspec.outputEmissionsBreakdownSelection.sector = false; + runspec.outputEmissionsBreakdownSelection.engTechID = false; + runspec.outputEmissionsBreakdownSelection.hpClass = false; + runspec.outputTimeStep = null; + + if(ModelScale.MACROSCALE == runspec.scale) { + geographicOutputDetailCombo.removeAllItems(); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.NATION); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.STATE); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.COUNTY); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.ZONE); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.COUNTY); + runspec.geographicOutputDetail = GeographicOutputDetailLevel.COUNTY; + } else if(ModelScale.MESOSCALE_LOOKUP == runspec.scale) { + geographicOutputDetailCombo.removeAllItems(); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.LINK); + runspec.geographicOutputDetail = GeographicOutputDetailLevel.LINK; + + runspec.outputEmissionsBreakdownSelection.roadType = true; + } + sections.remove(getName()); + + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + boolean oldIsMesoscaleLookup = isMesoscaleLookup; + if(ModelScale.MESOSCALE_LOOKUP == runspec.scale) { + isMesoscaleLookup = true; + geographicOutputDetailCombo.removeAllItems(); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setEnabled(false); + //onRoadSCC.setEnabled(false); + //onRoadSCC.setSelected(false); + onRoadSCC.setEnabled(true); + roadType.setEnabled(false); + roadType.setSelected(true); + outputTimestepCombo.setEnabled(false); + } else if(runspec.domain == ModelDomain.PROJECT) { + geographicOutputDetailCombo.removeAllItems(); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.LINK); + geographicOutputDetailCombo.setEnabled(false); + onRoadSCC.setEnabled(true); + roadType.setEnabled(true); + outputTimestepCombo.setEnabled(false); + } else { + isMesoscaleLookup = false; + + // Load Geographic Output Detail Combo Box + GeographicSelectionType geoType = null; + Iterator i = runspec.geographicSelections.iterator(); + if(i.hasNext()) { + geoType = ((GeographicSelection) i.next()).type; + } + if(geoType != null) { + geographicOutputDetailCombo.removeAllItems(); + if(geoType == GeographicSelectionType.NATION) { + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.NATION); + } else if (geoType == GeographicSelectionType.STATE) { + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.NATION); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.STATE); + } else if (geoType == GeographicSelectionType.COUNTY) { + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.NATION); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.STATE); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.COUNTY); + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.ZONE); + if(ModelScale.MACROSCALE != runspec.scale) { + geographicOutputDetailCombo.addItem(GeographicOutputDetailLevel.LINK); + } + } + } + + if(runspec.geographicOutputDetail == GeographicOutputDetailLevel.NATION) { + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.NATION); + } else if (runspec.geographicOutputDetail == GeographicOutputDetailLevel.STATE) { + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.STATE); + } else if (runspec.geographicOutputDetail == GeographicOutputDetailLevel.COUNTY) { + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.COUNTY); + } else if (runspec.geographicOutputDetail == GeographicOutputDetailLevel.ZONE) { + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.ZONE); + } else if (runspec.geographicOutputDetail == GeographicOutputDetailLevel.LINK) { + geographicOutputDetailCombo.setSelectedItem(GeographicOutputDetailLevel.LINK); + } + + geographicOutputDetailCombo.setEnabled(true); + onRoadSCC.setEnabled(true); + roadType.setEnabled(true); + outputTimestepCombo.setEnabled(true); + } + processOnRoadSCCButton(true); + if(oldIsMesoscaleLookup != isMesoscaleLookup) { + saveToRunSpec(runspec); + } + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Sets the roadType check box to be selected or not + * @param toSelect true to select, false to unselect + **/ + /* + public void checkRoadType(boolean toSelect) { + roadType.setSelected(toSelect); + } + */ + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/PDSpecGUI.java b/gov/epa/otaq/moves/master/gui/PDSpecGUI.java new file mode 100644 index 0000000..0f3beb9 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PDSpecGUI.java @@ -0,0 +1,1115 @@ +/************************************************************************************************** + * @(#)PDSpecGUI.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import javax.swing.text.*; +import javax.swing.border.*; +import java.io.*; +import java.util.*; +import java.text.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.*; + +/** + * GUI for creating and PDSpec XML files. + * + * @author wfaler + * @version 2011-09-10 +**/ +public class PDSpecGUI extends JDialog implements ActionListener, FocusListener { + /** The parent JFrame which invokes this GUI. **/ + JFrame frame; + /** PDSpec being edited **/ + PDSpec pdSpec = new PDSpec(); + /** true if pdSpec should be executed **/ + boolean shouldExecutePDSpec = false; + + /** holder for all controls **/ + PDSpecGUIPanel controls; + /** + * Used by the server FocusLost event handler to help determine if the server + * name actually changed. Thus, tabbing through the controls won't cause a reload + * of databases from the server TextField losing focus when the server name hasn't changed. + **/ + String previousServer = new String(); + + /** false if data has changed and needs to be saved **/ + boolean isSaved = true; + + /** + * Constructor. + * @param parent the parent frame to use for the panel. + **/ + public PDSpecGUI(JFrame parent) { + super(parent, "PDSpec Editor"); + frame = parent; + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** Allows the parent to display this dialog as modal. **/ + /** + * Execute the PDSpec user interface. If the UI calls for execution of a + * PDSpec, the UI is closed and the PDSpec returned. + * @return a PDSpec to be executed if the user elected to do so, null otherwise. + **/ + public PDSpec showModal() { + populateControls(); + pack(); + setModal(true); + //(new WindowStateHandler(this)).setSizePositionAndStartTracking(800,600); + (new WindowStateHandler(this)).setPositionAndStartTracking(); + setVisible(true); + return shouldExecutePDSpec? pdSpec : null; + } + + /** Fill controls with relevant default values **/ + void populateControls() { + loadDatabases(); + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + controls = new PDSpecGUIPanel(); + + // Connect event handlers + controls.browseButton.addActionListener(this); + controls.useButton.addActionListener(this); + controls.createDatabaseButton.addActionListener(this); + controls.refreshDatabaseButton.addActionListener(this); + controls.removeButton.addActionListener(this); + controls.saveButton.addActionListener(this); + controls.loadButton.addActionListener(this); + controls.doneButton.addActionListener(this); + controls.processButton.addActionListener(this); + controls.databaseCombo.addActionListener(this); + + controls.server.addFocusListener(this); + + return controls; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == controls.browseButton) { + handleBrowseButton(); + } else if(e.getSource() == controls.useButton) { + handleUseButton(); + } else if(e.getSource() == controls.createDatabaseButton) { + handleCreateDatabaseButton(); + } else if(e.getSource() == controls.refreshDatabaseButton) { + handleRefreshDatabaseButton(); + } else if(e.getSource() == controls.removeButton) { + handleRemoveButton(); + } else if(e.getSource() == controls.saveButton) { + handleSaveButton(); + } else if(e.getSource() == controls.loadButton) { + handleLoadButton(); + } else if(e.getSource() == controls.doneButton) { + handleDoneButton(); + } else if(e.getSource() == controls.processButton) { + handleProcessButton(); + } else if(e.getSource() == controls.databaseCombo) { + processDatabaseComboChange(); + } + } + + /** Process the Browse button **/ + void handleBrowseButton() { + controls.masterIDLabel.setText(""); + controls.folderLabel.setText(""); + + boolean done = false; + while(!done) { + done = true; + + try { + // Prompt to open an existing DONE file + FileDialog fd = new FileDialog(this, "Select DONE File", FileDialog.LOAD); + fd.setVisible(true); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File selectedFile = new File(filePath); + if(!selectedFile.exists()) { + return; + } + + // Verify the chosen file is a DONE file, continuing to prompt if it is not, obtaining a MasterDetails otherwise. + EmissionCalculatorInboundUnbundler.MasterDetails masterDetails = null; + try { + masterDetails = EmissionCalculatorInboundUnbundler.getDetails(selectedFile); + } catch(Exception e) { + // Nothing to do here + } + if(masterDetails == null || masterDetails.fullManifest == null || masterDetails.fullManifest.destinationMasterIDNumber.length() <= 0) { + // Complain that the file is not a usable DONE file + Logger.log(LogMessageCategory.WARNING,selectedFile.getName() + " is not a usable DONE file."); + continue; + } + + // Display the MasterDetails.BundleManifest information, giving the user the option to rejecting the DONE file. + PDSpecDetailGUI detailDialog = new PDSpecDetailGUI(this); + if(!detailDialog.showModal(masterDetails.fullManifest,selectedFile)) { + return; + } + + // If accepted, then populate the controls. + controls.masterIDLabel.setText(masterDetails.fullManifest.destinationMasterIDNumber); + controls.folderLabel.setText(selectedFile.getParentFile().getCanonicalPath()); + return; + } catch(Exception e) { + Logger.logError(e,"Unable to browse for DONE files"); + break; + } + } + } + + /** Process the Use button **/ + void handleUseButton() { + // Make a new entry from the details on screen + PDSpec.PDSpecEntry entry = new PDSpec.PDSpecEntry(); + entry.masterID = controls.masterIDLabel.getText(); + entry.pickupFolderName = controls.folderLabel.getText(); + entry.outputDatabase.serverName = controls.server.getText(); + entry.outputDatabase.databaseName = controls.databaseCombo.getSelectedItem().toString().trim(); + + // Complain if anything is missing + if(entry.masterID == null || entry.masterID.length() <= 0) { + Logger.log(LogMessageCategory.WARNING,"Please provide as Master ID by browsing for a DONE file."); + return; + } + if(entry.pickupFolderName == null || entry.pickupFolderName.length() <= 0) { + Logger.log(LogMessageCategory.WARNING,"Please provide a pickup folder by browsing for a DONE file."); + return; + } + if(entry.outputDatabase.databaseName == null || entry.outputDatabase.databaseName.length() <= 0) { + Logger.log(LogMessageCategory.WARNING,"Please provide a database name."); + return; + } + + // Add the new entry to only the onscreen list + controls.selectionsListModel.addElement(entry); + + // Mark the data as needing to be saved + isSaved = false; + + // Clear the onscreen master ID and folder entries, leaving the database + controls.masterIDLabel.setText(""); + controls.folderLabel.setText(""); + } + + /** Process the Create Database button **/ + void handleCreateDatabaseButton() { + String newDatabaseName = controls.databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(controls.server.getText().length() > 0) { + dbSelection.serverName = controls.server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + int createStatus = dbSelection.safeCreateDatabase("database/CreateOutput.sql"); + if(DatabaseSelection.CREATED == createStatus) { + // show a success message and add this item to the list, + // in case the user hits the droplist button + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Output Database successfully created.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + controls.databaseCombo.setSelectedItem(newDatabaseName); + } else if(DatabaseSelection.EXISTS == createStatus) { + JOptionPane.showMessageDialog(this, StringUtilities.wrapString( + "Output Database already exists.", 60)); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + controls.databaseCombo.setSelectedItem(newDatabaseName); + } else { + Logger.log(LogMessageCategory.ERROR, + "Could not create the Output Database."); + } + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** + * Handles the focus lost event for the server textfield. + * @param e The FocusEvent to be handled. + **/ + public void focusLost(FocusEvent e) { + if(previousServer.equals(controls.server.getText())) { + return; + } + previousServer = controls.server.getText(); + loadDatabases(); + } + + /** + * Currently not used. + * @param e event that gave the focus. + **/ + public void focusGained(FocusEvent e) { + } + + /** Process the Refresh button **/ + void handleRefreshDatabaseButton() { + loadDatabases(); + } + + /** Process the Remove button **/ + void handleRemoveButton() { + Object[] selectedItems = controls.selectionsList.getSelectedValuesList().toArray(); + for(int i=0;i 0 && !isSaved) { + // Alert that data is not saved and ask about saving + int answer = JOptionPane.showConfirmDialog(this, + "Do you want to save your selections first?", + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveButton()) { + return; + } + } else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + } + + // Prompt to open an existing PDSpec XML file + FileDialog fd = new FileDialog(this, "Open PDSpec XML", FileDialog.LOAD); + fd.setVisible(true); + if ((fd.getDirectory() == null) || (fd.getFile() == null)) { + return; + } + String filePath = fd.getDirectory() + fd.getFile(); + File selectedFile = new File(filePath); + if(!selectedFile.exists()) { + return; + } + + // Load from XML + try { + if(!pdSpec.readXML(selectedFile)) { + // Complain that the XML file was not read + Logger.log(LogMessageCategory.ERROR,"Unable to read the PDSpec XML file."); + return; + } + } catch(Exception e) { + Logger.logError(e,"Unable to read PDSpec XML file " + selectedFile.getName()); + return; + } + + // Add to the screen + controls.selectionsListModel.removeAllElements(); + for(Iterator i=pdSpec.entries.iterator();i.hasNext();) { + controls.selectionsListModel.addElement(i.next()); + } + + isSaved = true; + } + + /** Populate pdSpec from the onscreen entries **/ + void fillPDSpec() { + pdSpec.entries.clear(); + for(int i=0;i 0 && !isSaved) { + // Alert that data is not saved and ask about saving + int answer = JOptionPane.showConfirmDialog(this, + "Do you want to save your selections first?", + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveButton()) { + return; + } + } else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + } + shouldExecutePDSpec = false; + dispose(); + } + + /** Process the Process button **/ + void handleProcessButton() { + fillPDSpec(); + if(pdSpec.entries.size() <= 0) { + // Complain if there is nothing to process + Logger.log(LogMessageCategory.WARNING,"There are no selections to process."); + return; + } + + if(pdSpec.entries.size() > 0 && !isSaved) { + // Alert that data is not saved and ask about saving + int answer = JOptionPane.showConfirmDialog(this, + "Do you want to save your selections first?", + "Save?",JOptionPane.YES_NO_CANCEL_OPTION); + if(answer == JOptionPane.YES_OPTION) { + if(!handleSaveButton()) { + return; + } + } else if(answer == JOptionPane.CANCEL_OPTION) { + return; + } + } + + shouldExecutePDSpec = true; + dispose(); + } + + /** Handles the database combo change. **/ + public void processDatabaseComboChange() { + if(controls.databaseCombo.getSelectedItem() == null) { + return; + } + if(controls.databaseCombo.getSelectedItem().toString().length() == 0) { + return; + } + + String newDatabaseName = controls.databaseCombo.getSelectedItem().toString(); + if(newDatabaseName == null || newDatabaseName.length() == 0) { + Logger.log(LogMessageCategory.WARNING, "Specify a database name."); + return; + } + + DatabaseSelection dbSelection = new DatabaseSelection(); + if(controls.server.getText().length() > 0) { + dbSelection.serverName = controls.server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = StringUtilities.safeGetString(newDatabaseName); + + String status = MOVESEngine.isOutputDatabaseNameValid(dbSelection); + if(status == null) { + String sql; + PreparedStatement statement; + + // try to connect to the new selection + Connection db = openCurrentOutputDatabase(false); + if(null == db) { + return; + } + try { + sql = "SELECT COUNT(*) FROM MOVESOUTPUT"; + statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + results.next(); + int count = results.getInt(1); + //showExistingDataWarning(count != 0); + results.close(); + } + statement.close(); + } catch(Exception e) { + //showExistingDataWarning(false); + } + DatabaseUtilities.closeConnection(db); + newDatabaseName = addIfNotInComboBox(newDatabaseName); + controls.databaseCombo.setSelectedItem(newDatabaseName); + } else { + JOptionPane.showMessageDialog(this, status); + } + } + + /** + * Add a database name to databaseCombo but only if it isn't already in the + * the list. + * @param newDatabaseName name of the database to attempt to place into databaseCombo + * @return the object either added to or already in the list. This will be the object + * the should be selected. + **/ + private String addIfNotInComboBox(String newDatabaseName) { + newDatabaseName = newDatabaseName.trim(); + ComboBoxModel model = controls.databaseCombo.getModel(); + for(int i = 0; i < model.getSize(); i++) { + String t = (String)model.getElementAt(i); + if(t.equalsIgnoreCase(newDatabaseName)) { + return t; + } + } + controls.databaseCombo.addItem(newDatabaseName); + return newDatabaseName; + } + + /** + * Attempt to open a connection to the server and database shown on screen. + * @param settleForJustServer true if it is OK to just connect to the server without a valid + * database named. + * @return a Connection object that should be closed with DatabaseUtilities.closeConnection + * and not by returning it to the DatabaseConnectionManager. + **/ + Connection openCurrentOutputDatabase(boolean settleForJustServer) { + DatabaseSelection dbSelection = new DatabaseSelection(); + if(controls.server.getText().length() > 0) { + dbSelection.serverName = controls.server.getText(); + } else { + dbSelection.serverName = SystemConfiguration.getTheSystemConfiguration(). + databaseSelections[MOVESDatabaseType.OUTPUT.getIndex()].serverName; + } + dbSelection.databaseName = + StringUtilities.safeGetString((String)controls.databaseCombo.getSelectedItem()); + Connection db = dbSelection.openConnectionOrNull(); + if(null == db && settleForJustServer) { + // try again to get a connection, but specify an empty string for the database + // name, in case the current one is invalid, this will at least allow us to get + // a connection to the output server to get the database list + dbSelection.databaseName = ""; + db = dbSelection.openConnectionOrNull(); + } + return db; + } + + /** + * Loads the Databases droplist, based on the server setting. + * Also, sets the default droplist selection, if it can be found. + **/ + public void loadDatabases() { + controls.databaseCombo.removeAllItems(); + // add the default item (no selection) + controls.databaseCombo.addItem(new String("")); + TreeSet databases = new TreeSet(); + // get the available databases from the current server selection + Connection db = openCurrentOutputDatabase(true); + if(null == db) { + Logger.log(LogMessageCategory.ERROR,"Could not connect to the output database"); + return; + } + String sql = "SHOW DATABASES"; + PreparedStatement statement; + ResultSet results; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextDB = results.getString(1); + //databaseCombo.addItem(nextDB); + databases.add(nextDB); + } + results.close(); + } + statement.close(); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show databases (load databases) in PDSpecGUI."); + DatabaseUtilities.closeConnection(db); + return; + } + // second pass through the returned list of database names, must now + // remove any databases that aren't an output database + ArrayList stringsToRemove = new ArrayList(); + try { + boolean foundOutputTable = false; + for(Iterator i=databases.iterator();i.hasNext();) { + foundOutputTable = false; + String nextDatabase = (String)i.next(); + if(nextDatabase.length() == 0) { + continue; + } + // look at all tables from the next databaseName, compare the table + // names to one output table name + sql = "SHOW TABLES FROM " + nextDatabase; + try { + statement = db.prepareStatement(sql); + results = SQLRunner.executeQuery(statement,sql); + if(results != null) { + while(results.next()) { + String nextTable = results.getString(1); + if(nextTable.equalsIgnoreCase("MOVESOUTPUT")) { + foundOutputTable = true; + break; + } + } + } + } catch (Exception e) { + // SQL error here just means this database not an output database + } + // check if this database has any output tables, if not must add + // the databaseName to the remove names list + if(!foundOutputTable) { + stringsToRemove.add(nextDatabase); + } + } + // now run through any database names to remove (i.e. databases that don't + // contain an output table) + for(int i = 0; i < stringsToRemove.size(); i++) { + databases.remove(stringsToRemove.get(i)); + //databaseCombo.removeItem(stringsToRemove.get(i)); + } + for(Iterator i=databases.iterator();i.hasNext();) { + String nextDB = (String)i.next(); + controls.databaseCombo.addItem(nextDB); + } + Vector toolTipVector = new Vector(); + for(int i=0; i(toolTipStringArray)); + } catch(Exception e) { + //Logger.logException(e); + Logger.logError(e, "Failed to show tables from database in PDSpecGUI."); + } + // set the default selection + controls.databaseCombo.setSelectedItem(""); + DatabaseUtilities.closeConnection(db); + } + + class PDSpecDetailGUI extends JDialog implements ActionListener { + /** holder for all controls **/ + PDSpecDetailPanel controls; + /** true when the user wants to accept the DONE file being displayed **/ + boolean acceptedFile = false; + + /** + * Constructor. + **/ + public PDSpecDetailGUI(PDSpecGUI parent) { + super(parent, "DONE File"); + + getContentPane().setLayout(new BorderLayout()); + getContentPane().add(createPanel(), BorderLayout.CENTER); + pack(); + setResizable(true); + } + + /** + * Allows the parent to display this dialog as modal. + * @param manifest details from the DONE file + * @param doneFile file that was selected and is being examined + * @return true if the user accepted the DONE file + **/ + public boolean showModal(BundleManifest manifest, File doneFile) { + acceptedFile = false; + populateControls(manifest,doneFile); + pack(); + setModal(true); + (new WindowStateHandler(this)).setPositionAndStartTracking(); + setVisible(true); + return acceptedFile; + } + + /** + * Fill controls with relevant default values + * @param manifest details from the DONE file + **/ + void populateControls(BundleManifest manifest, File doneFile) { + controls.fileNameLabel.setText(doneFile.getName()); + + String t = ""; + t += "Master ID: " + manifest.destinationMasterIDNumber + "\r\n"; + t += "Master Computer ID: " + manifest.destinationMasterComputerID + "\r\n"; + t += "RunSpec File: " + manifest.masterFragment.runSpecFileName + "\r\n"; + t += "RunSpec Date: " + manifest.masterFragment.runSpecFileDateTime + "\r\n"; + t += "Output: " + manifest.masterFragment.outputDatabaseName + "\r\n"; + t += "Bundles Expected: " + manifest.masterFragment.expectedDONEFiles + "\r\n"; + t += manifest.masterFragment.runSpecDescription; + + controls.textArea1.setText(t); + } + + /** + * Creates and arranges all dialog controls. + * @return the container as JPanel. + **/ + JPanel createPanel() { + controls = new PDSpecDetailPanel(); + + // Connect event handlers + controls.okButton.addActionListener(this); + controls.cancelButton.addActionListener(this); + + return controls; + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == controls.okButton) { + acceptedFile = true; + dispose(); + } else if(e.getSource() == controls.cancelButton) { + acceptedFile = false; + dispose(); + } + } + } + + public class PDSpecGUIPanel extends JPanel { + public PDSpecGUIPanel() { + initComponents(); + } + + private void initComponents() { + // JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents + panel1 = new JPanel(); + panel7 = new JPanel(); + label1 = new JLabel(); + masterIDLabel = new JLabel(); + label2 = new JLabel(); + folderLabel = new JLabel(); + panel8 = new JPanel(); + label3 = new JLabel(); + + server = new JTextField(); + server.setColumns(10); + + label4 = new JLabel(); + + databaseCombo = new ExtendedComboBox(); + Dimension d = databaseCombo.getPreferredSize(); + databaseCombo.setPreferredSize(new Dimension(150, d.height)); + databaseCombo.setPopupWidth(databaseCombo.getPreferredSize().width); + databaseCombo.setName("databaseCombo"); + databaseCombo.setEditable(true); + databaseCombo.setSelectedIndex(-1); + ToolTipHelper.add(databaseCombo,"Edit or select the name of the database in which the output will be stored"); + + refreshDatabaseButton = new JButton(); + ToolTipHelper.add(refreshDatabaseButton,"Refresh the list of available databases"); + + createDatabaseButton = new JButton(); + ToolTipHelper.add(createDatabaseButton,"Create the output database if it does not already exist"); + + panel2 = new JPanel(); + browseButton = new JButton(); + useButton = new JButton(); + panel6 = new JPanel(); + scrollPane1 = new JScrollPane(); + + selectionsListModel = new DefaultListModel(); + selectionsList = new JListWithToolTips(selectionsListModel); + + panel3 = new JPanel(); + removeButton = new JButton(); + saveButton = new JButton(); + loadButton = new JButton(); + panel5 = new JPanel(); + hSpacer1 = new JPanel(null); + processButton = new JButton(); + panel4 = new JPanel(); + doneButton = new JButton(); + hSpacer2 = new JPanel(null); + + //======== this ======== + setLayout(new GridBagLayout()); +/* + ((GridBagLayout)getLayout()).columnWidths = new int[] {0, 0, 0}; + ((GridBagLayout)getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4}; + ((GridBagLayout)getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; +*/ + ((GridBagLayout)getLayout()).columnWidths = new int[] {0, 0}; + ((GridBagLayout)getLayout()).rowHeights = new int[] {0, 0, 0}; + ((GridBagLayout)getLayout()).columnWeights = new double[] {1.0E-4, 0.0}; + ((GridBagLayout)getLayout()).rowWeights = new double[] {0.0, 1.0E-4, 0.0}; + + //======== panel1 ======== + { + panel1.setBorder(new TitledBorder("Details")); + panel1.setLayout(new BoxLayout(panel1, BoxLayout.Y_AXIS)); + + //======== panel7 ======== + { + panel7.setBorder(new TitledBorder("DONE Files")); + panel7.setLayout(new GridBagLayout()); + ((GridBagLayout)panel7.getLayout()).columnWidths = new int[] {0, 0, 0, 0}; + ((GridBagLayout)panel7.getLayout()).rowHeights = new int[] {0, 0, 0}; + ((GridBagLayout)panel7.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + ((GridBagLayout)panel7.getLayout()).rowWeights = new double[] {0.0, 0.0, 1.0E-4}; + + //---- label1 ---- + label1.setText("Master ID:"); + panel7.add(label1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + panel7.add(masterIDLabel, new GridBagConstraints(1, 0, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label2 ---- + label2.setText("Folder:"); + panel7.add(label2, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + panel7.add(folderLabel, new GridBagConstraints(1, 1, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + } + panel1.add(panel7); + + //======== panel8 ======== + { + panel8.setBorder(new TitledBorder("Output Database")); + panel8.setLayout(new GridBagLayout()); + ((GridBagLayout)panel8.getLayout()).columnWidths = new int[] {0, 0, 0, 0, 0, 0}; + ((GridBagLayout)panel8.getLayout()).rowHeights = new int[] {0, 0, 0}; + ((GridBagLayout)panel8.getLayout()).columnWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4}; + ((GridBagLayout)panel8.getLayout()).rowWeights = new double[] {0.0, 0.0, 1.0E-4}; + + //---- label3 ---- + label3.setText("Server:"); + panel8.add(label3, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- server ---- + server.setColumns(10); + panel8.add(server, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label4 ---- + label4.setText("Database:"); + panel8.add(label4, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + panel8.add(databaseCombo, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- refreshDatabaseButton ---- + refreshDatabaseButton.setText("Refresh"); + panel8.add(refreshDatabaseButton, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- createDatabaseButton ---- + createDatabaseButton.setText("Create Database"); + panel8.add(createDatabaseButton, new GridBagConstraints(3, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + } + panel1.add(panel8); + } + add(panel1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== panel2 ======== + { + panel2.setLayout(new GridBagLayout()); +/* + ((GridBagLayout)panel2.getLayout()).columnWidths = new int[] {0, 0}; + ((GridBagLayout)panel2.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).columnWeights = new double[] {0.0, 1.0E-4}; + ((GridBagLayout)panel2.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; +*/ + ((GridBagLayout)panel2.getLayout()).columnWidths = new int[] {0}; + ((GridBagLayout)panel2.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).columnWeights = new double[] {1.0E-4}; + ((GridBagLayout)panel2.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + //---- browseButton ---- + browseButton.setText("Browse DONE Files..."); + panel2.add(browseButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- useButton ---- + useButton.setText("Use"); + panel2.add(useButton, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + add(panel2, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //======== panel6 ======== + { + panel6.setBorder(new TitledBorder("Selections")); + panel6.setLayout(new BorderLayout()); + + //======== scrollPane1 ======== + { + //---- selectionsList ---- + selectionsList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + selectionsList.setPrototypeCellValue(new PDSpec.PDSpecEntry() { public String toString() { return "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; }}); + scrollPane1.setViewportView(selectionsList); + } + panel6.add(scrollPane1, BorderLayout.CENTER); + } + add(panel6, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //======== panel3 ======== + { + panel3.setLayout(new GridBagLayout()); +/* + ((GridBagLayout)panel3.getLayout()).columnWidths = new int[] {0, 0}; + ((GridBagLayout)panel3.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0}; + ((GridBagLayout)panel3.getLayout()).columnWeights = new double[] {0.0, 1.0E-4}; + ((GridBagLayout)panel3.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 1.0E-4}; +*/ + ((GridBagLayout)panel3.getLayout()).columnWidths = new int[] {0}; + ((GridBagLayout)panel3.getLayout()).rowHeights = new int[] {0, 0, 0, 0, 0}; + ((GridBagLayout)panel3.getLayout()).columnWeights = new double[] {1.0E-4}; + ((GridBagLayout)panel3.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 1.0E-4}; + + //---- removeButton ---- + removeButton.setText("Remove"); + panel3.add(removeButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- saveButton ---- + saveButton.setText("Save..."); + panel3.add(saveButton, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- loadButton ---- + loadButton.setText("Load..."); + panel3.add(loadButton, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + add(panel3, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //======== panel5 ======== + { + panel5.setLayout(new GridBagLayout()); + ((GridBagLayout)panel5.getLayout()).columnWidths = new int[] {0, 0}; + ((GridBagLayout)panel5.getLayout()).rowHeights = new int[] {0, 0}; + ((GridBagLayout)panel5.getLayout()).columnWeights = new double[] {1.0E-4, 0.0}; + ((GridBagLayout)panel5.getLayout()).rowWeights = new double[] {0.0, 1.0E-4}; + panel5.add(hSpacer1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- processButton ---- + processButton.setText("Initiate Processing"); + panel5.add(processButton, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + panel5.add(hSpacer2, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + } + add(panel5, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //======== panel4 ======== + { + panel4.setLayout(new GridBagLayout()); +/* + ((GridBagLayout)panel4.getLayout()).columnWidths = new int[] {0, 0, 0}; + ((GridBagLayout)panel4.getLayout()).rowHeights = new int[] {0, 0}; + ((GridBagLayout)panel4.getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4}; + ((GridBagLayout)panel4.getLayout()).rowWeights = new double[] {0.0, 1.0E-4}; +*/ + ((GridBagLayout)panel4.getLayout()).columnWidths = new int[] {0}; + ((GridBagLayout)panel4.getLayout()).rowHeights = new int[] {0, 0}; + ((GridBagLayout)panel4.getLayout()).columnWeights = new double[] {1.0E-4}; + ((GridBagLayout)panel4.getLayout()).rowWeights = new double[] {0.0, 1.0E-4}; + + //---- doneButton ---- + doneButton.setText("Done"); + panel4.add(doneButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); +/* + panel4.add(hSpacer2, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); +*/ + } + add(panel4, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + // JFormDesigner - End of component initialization //GEN-END:initComponents + } + + // JFormDesigner - Variables declaration - DO NOT MODIFY //GEN-BEGIN:variables + private JPanel panel1; + private JPanel panel7; + private JLabel label1; + public JLabel masterIDLabel; + private JLabel label2; + public JLabel folderLabel; + private JPanel panel8; + private JLabel label3; + public JTextField server; + private JLabel label4; + public ExtendedComboBox databaseCombo; + public JButton refreshDatabaseButton; + public JButton createDatabaseButton; + private JPanel panel2; + public JButton browseButton; + public JButton useButton; + private JPanel panel6; + private JScrollPane scrollPane1; + public JList selectionsList; + private JPanel panel3; + public JButton removeButton; + public JButton saveButton; + public JButton loadButton; + private JPanel panel5; + private JPanel hSpacer1; + public JButton processButton; + private JPanel panel4; + public JButton doneButton; + private JPanel hSpacer2; + // JFormDesigner - End of variables declaration //GEN-END:variables + public DefaultListModel selectionsListModel; + } + + public class PDSpecDetailPanel extends JPanel { + public PDSpecDetailPanel() { + initComponents(); + } + + private void initComponents() { + // JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents + label1 = new JLabel(); + fileNameLabel = new JLabel(); + okButton = new JButton(); + label2 = new JLabel(); + cancelButton = new JButton(); + scrollPane1 = new JScrollPane(); + textArea1 = new JTextArea(); + + //======== this ======== + setLayout(new GridBagLayout()); + ((GridBagLayout)getLayout()).columnWidths = new int[] {0, 0, 0, 0}; + ((GridBagLayout)getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)getLayout()).columnWeights = new double[] {0.0, 1.0E-4, 0.0, 0.0}; + ((GridBagLayout)getLayout()).rowWeights = new double[] {0.0, 0.0, 1.0E-4, 0.0}; + + //---- label1 ---- + label1.setText("File:"); + add(label1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + add(fileNameLabel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- okButton ---- + okButton.setText("OK"); + add(okButton, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- label2 ---- + label2.setText("Details:"); + add(label2, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- cancelButton ---- + cancelButton.setText("Cancel"); + add(cancelButton, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //======== scrollPane1 ======== + { + //---- textArea1 ---- + textArea1.setEditable(false); + textArea1.setFont(UIManager.getFont("EditorPane.font")); + textArea1.setBackground(UIManager.getColor("EditorPane.disabledBackground")); + scrollPane1.setViewportView(textArea1); + } + add(scrollPane1, new GridBagConstraints(0, 2, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + // JFormDesigner - End of component initialization //GEN-END:initComponents + } + + // JFormDesigner - Variables declaration - DO NOT MODIFY //GEN-BEGIN:variables + private JLabel label1; + public JLabel fileNameLabel; + public JButton okButton; + private JLabel label2; + public JButton cancelButton; + private JScrollPane scrollPane1; + public JTextArea textArea1; + // JFormDesigner - End of variables declaration //GEN-END:variables + } +} diff --git a/gov/epa/otaq/moves/master/gui/PDSpecGUIAction.java b/gov/epa/otaq/moves/master/gui/PDSpecGUIAction.java new file mode 100644 index 0000000..6ce13ed --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PDSpecGUIAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** + * @(#)PDSpecGUIAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Process DONE Files" menu option. + * + * @author W. Aikman + * @author Wesley Faler + * @version 2009-12-14 +**/ +public class PDSpecGUIAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_IM_GUI = + "display-edit-pdspecs"; + /** Constant action name. **/ + static final String NAME_IM_GUI = + "Process DONE Files"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_IM_GUI = + "Process DONE Files"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_IM_GUI = + "Select and optionally process DONE files from other masters"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_IM_GUI = 'P'; + + /** + * Implements the IM GUI menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public PDSpecGUIAction() { + putValue(Action.NAME, NAME_IM_GUI); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_IM_GUI); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_IM_GUI); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_IM_GUI)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_IM_GUI); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PasteAction.java b/gov/epa/otaq/moves/master/gui/PasteAction.java new file mode 100644 index 0000000..979fcfc --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PasteAction.java @@ -0,0 +1,47 @@ +/************************************************************************************************** + * @(#)PasteAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Paste menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class PasteAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PASTE = "paste-command"; + /** Constant action name. **/ + static final String NAME_PASTE = "Paste"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_PASTE = "toolbarButtonGraphics/general/Paste16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_PASTE = "toolbarButtonGraphics/general/Paste24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PASTE = "Paste"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PASTE = + "Paste clipboard contents into active control"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PASTE = 'P'; + + /** + * Implements the Paste menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PasteAction() { + putValue(Action.NAME, NAME_PASTE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PASTE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_PASTE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PASTE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PASTE); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PASTE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PASTE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PauseAction.java b/gov/epa/otaq/moves/master/gui/PauseAction.java new file mode 100644 index 0000000..e6f7b8d --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PauseAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** + * @(#)PauseAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Pause menu option. + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class PauseAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PAUSE = "pause-command"; + /** Constant action name. **/ + static final String NAME_PAUSE = "Pause"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_PAUSE = "toolbarButtonGraphics/media/Pause16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_PAUSE = "toolbarButtonGraphics/media/Pause24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PAUSE = "Pause"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PAUSE = "Pause execution of active RunSpec"; +// static final int MNEMONIC_KEY_PAUSE = 'A'; + + /** + * Implements the Pause menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PauseAction() { + putValue(Action.NAME, NAME_PAUSE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PAUSE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_PAUSE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PAUSE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PAUSE); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PAUSE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PAUSE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PollutantsAndProcesses.java b/gov/epa/otaq/moves/master/gui/PollutantsAndProcesses.java new file mode 100644 index 0000000..e41a785 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PollutantsAndProcesses.java @@ -0,0 +1,2064 @@ +/************************************************************************************************** + * @(#)PollutantsAndProcesses.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.util.*; +import java.sql.*; +import javax.swing.table.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.framework.DatabaseConnectionManager; +import gov.epa.otaq.moves.master.framework.Pollutant; +import gov.epa.otaq.moves.master.framework.PollutantDisplayGroup; +import gov.epa.otaq.moves.master.framework.EmissionProcess; +import gov.epa.otaq.moves.master.framework.PollutantProcessAssociation; +import gov.epa.otaq.moves.master.framework.PollutantProcessLoader; +import gov.epa.otaq.moves.master.runspec.RunSpec; +import gov.epa.otaq.moves.master.framework.RoadType; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.nonroad.NonroadEmissionCalculator; +import gov.epa.otaq.moves.master.implementation.ghg.TOGSpeciationCalculator; +import gov.epa.otaq.moves.master.implementation.ghg.NRAirToxicsCalculator; + +/** + * Class for MOVES PollutantsAndProcesses panel. The panel contains a table of + * pollutants and processes. The pollutants and the processes are retrieved + * from the database. The pollutants will be the row labels, and the processes + * will be the column labels of the grid. The selections are loaded/saved from/to + * the RunSpec. + * + * @author Wesley Faler + * @author Sarah Luo + * @author EPA Mitch C. + * @author Gwo Shyu, EPA + * @author Tim Hull + * @version 2015-03-18 +**/ +public class PollutantsAndProcesses extends JPanel implements RunSpecEditor, CellEditorListener, ChangeListener, ActionListener { + /** Grid of pollutants shown on screen **/ + PollutantsTable pollutantsTable; + /** Grid of processes shown on screen **/ + ProcessesTable processesTable; + + /** Data model for pollutants and processes table **/ + PollutantsAndProcessesTableModel model; + /** Sorts and filters pollutants by child visibility **/ + TableRowSorter sorter; + /** Sorts and filters pollutants by child visibility **/ + TableRowSorter sorter2; + /** Persist the user's expansion of groups **/ + TreeSet expandedGroups = new TreeSet(); + + /** scroll pane so that table can be scrolled **/ + JScrollPane tableScrollPane; + + /** Array of EmissionProcess objects **/ + Object[] processes; + /** Mapping of which index in the processes array each EmissionProcess object is **/ + TreeMap processIndexes; + /** Array of Pollutant Display Group objects **/ + //Object[] pollutantDisplayGroups; + /** Mapping of which index in the pollutants array each Pollutant object is **/ + TreeMap pollutantIndexes; + /** User selections. First index is by pollutant, second (rightmost) by process **/ + Object[][] selections; + /** Row selections, one per rowEntry **/ + Boolean[] rowSelections; + /** Message log component. **/ + JList messageLogList; + /** DefaultListModel for the messageLogList. **/ + DefaultListModel messageLogModel; + /** JScrollPane for the messageLogList. **/ + JScrollPane messageLogPane; + /** Select Prerequisites button **/ + JButton selectPrerequisistes; + /** Clear All button **/ + JButton clearAll; + + /** split pane for table and message log **/ + JSplitPane splitPane; + + /** Used to resave pollutant-processes that were in runspec loaded + but were not used **/ + TreeSet undisplayedRunSpecSelections = new TreeSet(); + + /** + * true to force pollutants and processes to be reloaded. Used after + * a change between Onroad and Nonroad. + **/ + boolean forcePollutantProcessReload = false; + + /** One row in the pollutant/process grid **/ + static class RowEntry implements Comparable { + public PollutantDisplayGroup group; + public Pollutant pollutant; + public String name = null; + public boolean isVisible = true; + public boolean couldBeVisible = true; + public boolean childrenAreVisible = true; + public boolean hasChildren = false; + public RowEntry parent = null; + public int row = 0; + + public String toString() { + String name = ""; + if(pollutant == null) { + name = (childrenAreVisible?" [-] ":" [+] ") + group.displayGroupName; + } else if(group.pollutantIDsInDisplayGroup.size() == 1) { + name = " " + pollutant.pollutantName; + } else { + name = " " + pollutant.pollutantName; + } + return name; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other PollutantDisplayGroup object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + RowEntry otherEntry = (RowEntry)other; + int t = 0; + if(group == null && otherEntry.group != null) { + return -1; + } else if(group != null && otherEntry.group == null) { + return +1; + } else if(group != null && otherEntry.group != null) { + t = group.compareTo(otherEntry.group); + if(t != 0) { + return t; + } + } + if(pollutant == null && otherEntry.pollutant != null) { + return -1; + } else if(pollutant != null && otherEntry.pollutant == null) { + return +1; + } else if(pollutant != null && otherEntry.pollutant != null) { + //return pollutant.compareTo(otherEntry.pollutant); + //return pollutant.databaseKey - otherEntry.pollutant.databaseKey; + return pollutant.pollutantName.compareToIgnoreCase(otherEntry.pollutant.pollutantName); + } + return 0; + } + } + /** All rows in the pollutant/process grid **/ + Object[] rowEntries; + + /** Handle double clicks on pollutant groups, hiding/showing their children as needed **/ + class GroupExpandContractMouseAdapter extends MouseAdapter { + JTable table; + + public GroupExpandContractMouseAdapter(JTable tableToUse) { + table = tableToUse; + } + + public void mouseClicked(MouseEvent e) { + if(e.getComponent().isEnabled() && e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() >= 1) { + Point p = e.getPoint(); + int viewColumn = table.columnAtPoint(p); + int modelColumn = table.convertColumnIndexToModel(viewColumn); + if(modelColumn == 1) { + int viewRow = table.rowAtPoint(p); + int modelRow = table.convertRowIndexToModel(viewRow); + if(modelRow >= 0 && modelRow < rowEntries.length) { + RowEntry re = (RowEntry)rowEntries[modelRow]; + if(re.hasChildren) { + re.childrenAreVisible = !re.childrenAreVisible; + Integer groupKey = new Integer(re.group.displayGroupID); + if(re.childrenAreVisible) { + expandedGroups.add(groupKey); + } else { + expandedGroups.remove(groupKey); + } + TableModel model = table.getModel(); + if(model instanceof PollutantsAndProcessesTableModel) { + ((PollutantsAndProcessesTableModel)model).fireTableCellUpdated(modelRow,1); + } + for(modelRow++;modelRow= 0;parentRow--) { + parent = (RowEntry)rowEntries[parentRow]; + if(parent.group == re.group && parent.hasChildren) { + break; + } + } + Boolean b = null; + boolean hasAnyProcess = false; + int processCount = processes != null? processes.length : 0; + for(int c=0;c 1) { + recalculateParent(row,col); + } + } else { + if(isCellEditable(row,col)) { + RowEntry re = (RowEntry)rowEntries[row]; + selections[row][col-2] = value; + fireTableCellUpdated(row,col); + + // Update the row header + if(value instanceof Boolean) { + Boolean rowValue = (Boolean)value; + if(rowValue.booleanValue()) { + // If something in the row was turned on, then flag the row's + // checkbox as on. + if(!rowSelections[row].booleanValue()) { + rowSelections[row] = new Boolean(true); + fireTableCellUpdated(row,0); + } + } else { + // If something in the row was turned off, then turn off the row's + // checkbox if everything in the row is off. + boolean hasAnythingMarked = false; + int processCount = processes != null? processes.length : 0; + for(int c=0;c 1) { + recalculateParent(row,col); + } + } + } + } + } + + /** Table to display the pollutant and process grid. **/ + class PollutantsTable extends JTable { + + public boolean isFocusable() { + return false; + } + public void updateUI() { + super.updateUI(); + + LookAndFeel.installColorsAndFont(this, "TableHeader.background", + "TableHeader.foreground", "TableHeader.font"); + } + } + + + /** Table to display the pollutant and process grid. **/ + class ProcessesTable extends JTable { + /** Renderer returned if a cell is empty **/ + BlankRenderer blankRenderer; + + /** + * Constructor to set the Table Model for this table. + * @param model The table model used for this table. + **/ + public ProcessesTable(AbstractTableModel model) { + super(model); + blankRenderer = new BlankRenderer(); + } + + /** + * Overrides the cell renderer for empty cells by returning a blank renderer. + * @param row The row number for the cell. + * @param col The column number for the cell. + * @return The cell renderer. + **/ + public TableCellRenderer getCellRenderer(int row,int col) { + if(getModel().getValueAt(convertRowIndexToModel(row),col+2) == null) { + return blankRenderer; + } else { + return super.getCellRenderer(row,col); + } + } + + public boolean isFocusable() { + return false; + } + } + + /** Show only rows that have not been hidden by their parent **/ + class RowEntryFilter extends RowFilter { + public boolean include(Entry entry) { + int row = entry.getIdentifier().intValue(); + if(row >= 0 && rowEntries != null && row < rowEntries.length) { + return ((RowEntry)rowEntries[row]).isVisible; + } + return false; + } + } + + + + /** + * Constructs a PollutantsAndProcesses panel, also creates and sets the layout of the controls. + **/ + public PollutantsAndProcesses() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Pollutants And Processes:\r\n"); + for(Iterator i = runspec.pollutantProcessAssociations.iterator(); i.hasNext();) { + PollutantProcessAssociation iterAssociation = (PollutantProcessAssociation) i.next(); + destination.append("\t"); + destination.append(iterAssociation.toString()); + destination.append("\r\n"); + } + destination.append("\r\n"); + } + + /** + * Creates and initializes all controls on this panel. And fixes the height + * and width of the JTable to fit in the screen. + **/ + public void createControls() { + Models.ModelCombination mc; + if (MOVESNavigation.singleton != null + && MOVESNavigation.singleton.parent != null + && MOVESNavigation.singleton.parent.runSpec != null) { + mc = MOVESNavigation.singleton.parent.runSpec.getModelCombination(); + } else { + mc = Models.ModelCombination.M0; + } + + splitPane = new JSplitPane(); + splitPane.setName("splitPane"); + + model = new PollutantsAndProcessesTableModel(); + sorter = new TableRowSorter(model); + sorter2 = new TableRowSorter(model); + + // Create processes table + processesTable = new ProcessesTable(model); + processesTable.setAutoCreateColumnsFromModel(false); + processesTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + processesTable.setName("processesTable"); + processesTable.setRowSelectionAllowed(false); + processesTable.getTableHeader().setResizingAllowed(false); + processesTable.getTableHeader().setReorderingAllowed(false); + processesTable.getDefaultEditor(Boolean.class).addCellEditorListener(this); + processesTable.setRowSorter(sorter); + processesTable.addMouseListener(new GroupExpandContractMouseAdapter(processesTable)); + + // Create pollutants table + pollutantsTable = new PollutantsTable(); + pollutantsTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + pollutantsTable.setAutoCreateColumnsFromModel(false); + pollutantsTable.setModel(model); + pollutantsTable.setName("pollutantsTable"); + pollutantsTable.setRowSelectionAllowed(false); + pollutantsTable.getTableHeader().setResizingAllowed(false); + pollutantsTable.getTableHeader().setReorderingAllowed(false); + pollutantsTable.getDefaultEditor(Boolean.class).addCellEditorListener(this); + pollutantsTable.setRowSorter(sorter2); + pollutantsTable.addMouseListener(new GroupExpandContractMouseAdapter(pollutantsTable)); + + // Move pollutants to pollutants table + if(processesTable.getColumnCount() >= 2) { + for(int i=0; i < 2; i++){ + TableColumn column = processesTable.getColumnModel().getColumn(0); + processesTable.getColumnModel().removeColumn(column); + pollutantsTable.getColumnModel().addColumn(column); + } + } + + // Fix processes table height and width + FontMetrics fm = processesTable.getFontMetrics(processesTable.getFont()); + javax.swing.table.TableColumnModel colModel = processesTable.getColumnModel(); + int numCols = colModel.getColumnCount(); + int tableHeight = 0; + int tableWidth = 0; + boolean preIsM1andEmpty = false; + boolean preIsM2andEmpty = false; + for (int i = 0; i < numCols; i++) { + String columnName = (String) colModel.getColumn(i).getHeaderValue(); + TableColumn tableColumn = colModel.getColumn(i); + int columnSize = 0; + columnSize = fm.stringWidth(columnName) + 10; + if (1 == 1) { + // tableColumn.setPreferredWidth(columnSize); + EmissionProcess process = this.model.getEmissionProcess(i + 2); + switch (mc) { + case M2: + if (!process.isAffectedByNonroad) { + if (preIsM2andEmpty) { + tableColumn.setMaxWidth(0); + tableColumn.setMinWidth(0); + tableColumn.setPreferredWidth(0); + } else { + tableColumn.setMaxWidth(1); + tableColumn.setMinWidth(0); + tableColumn.setPreferredWidth(1); + } + tableWidth += 10; + preIsM2andEmpty = true; + } else { + tableWidth += columnSize; + tableColumn.setPreferredWidth(columnSize); + preIsM2andEmpty = false; + } + break; + case M0: + break; + case M1: + default: + if (!process.isAffectedByOnroad) { + if (preIsM1andEmpty) { + tableColumn.setMaxWidth(0); + tableColumn.setMinWidth(0); + tableColumn.setPreferredWidth(0); + } else { + tableColumn.setMaxWidth(1); + tableColumn.setMinWidth(0); + tableColumn.setPreferredWidth(1); + } + tableWidth += 10; + preIsM1andEmpty = true; + } else { + preIsM1andEmpty = false; + tableWidth += columnSize; + tableColumn.setPreferredWidth(columnSize); + } + break; + } + } else { + // Code before NonRoad integration + tableWidth += columnSize; + } + } + processesTable.setPreferredScrollableViewportSize(processesTable.getPreferredSize()); + + // Fix pollutants table height and width + fm = pollutantsTable.getFontMetrics(pollutantsTable.getFont()); + colModel = pollutantsTable.getColumnModel(); + numCols = colModel.getColumnCount(); + tableHeight = 0; + tableWidth = 0; + for (int i = 0; i < numCols; i++) { + sorter.setSortable(i, false); + TableColumn tableColumn = colModel.getColumn(i); + if (i != 1) { + tableColumn.setPreferredWidth(tableColumn.getMinWidth()); + tableWidth += tableColumn.getPreferredWidth(); + } else { + int columnNumber = tableColumn.getModelIndex(); + int max = 20; + int columnWidth = 0; + int nrows = pollutantsTable.getModel().getRowCount(); + String cell = ""; + preIsM1andEmpty = false; + preIsM2andEmpty = false; + for (int j = 0; j < nrows; j++) { + String value = (String) pollutantsTable.getModel().getValueAt(j, columnNumber); + columnWidth = fm.stringWidth("." + value.trim() + "."); + if (columnWidth > max) { + max = columnWidth; + } + tableHeight += pollutantsTable.getRowHeight(); + } + max += 10; + tableColumn.setPreferredWidth(max); + tableWidth += max; + + } + } + pollutantsTable.setPreferredScrollableViewportSize(pollutantsTable.getPreferredSize()); + + if (1 == 1) { + int nrows = pollutantsTable.getModel().getRowCount(); + preIsM1andEmpty = false; + preIsM2andEmpty = false; + tableHeight = 0; + for (int j = 0; j < nrows; j++) { + Pollutant pollutant = this.model.getPollutant(j); + if(pollutant != null) { + switch (mc) { + case M2: + if (!pollutant.isAffectedByNonroad) { + if (preIsM2andEmpty) { + pollutantsTable.setRowHeight(j, 1); + processesTable.setRowHeight(j, 1); + } else { + pollutantsTable.setRowHeight(j, 1); + processesTable.setRowHeight(j, 1); + } + preIsM2andEmpty = true; + } else { + preIsM2andEmpty = false; + } + break; + case M0: + break; + case M1: + default: + if (!pollutant.isAffectedByOnroad) { + if (preIsM1andEmpty) { + pollutantsTable.setRowHeight(j, 1); + processesTable.setRowHeight(j, 1); + } else { + pollutantsTable.setRowHeight(j, 1); + processesTable.setRowHeight(j, 1); + } + preIsM1andEmpty = true; + } else { + preIsM1andEmpty = false; + } + break; + } + } + tableHeight += pollutantsTable.getRowHeight(); + } + } + + // Add everything to scroll pane + tableScrollPane = new JScrollPane(processesTable, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + tableScrollPane.setRowHeaderView(pollutantsTable); + tableScrollPane.getRowHeader().addChangeListener(this); + tableScrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, pollutantsTable.getTableHeader()); + tableScrollPane.setName("pollutantsAndProcessTableScrollPane"); + ToolTipHelper.add(tableScrollPane,"Select Pollutant and Process combinations to simulate"); + + // Create message log model and object + messageLogModel = new DefaultListModel(); + messageLogList = new JListWithToolTips(messageLogModel); + messageLogList.setName("messageLogList"); + messageLogList.setSelectedIndex(-1); + messageLogList.setVisibleRowCount(10); + messageLogList.setPrototypeCellValue("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); + + messageLogPane = new JScrollPane(messageLogList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + messageLogPane.setName("messageLogPane"); + messageLogPane.setVisible(true); + ToolTipHelper.add(messageLogPane,"Displays Pollutant/Process combinations that have not been met"); + + selectPrerequisistes = new JButton("Select Prerequisites"); + selectPrerequisistes.setName("selectPrerequisistes"); + selectPrerequisistes.addActionListener(this); + ToolTipHelper.add(selectPrerequisistes,"Select all required pollutant and process combinations"); + selectPrerequisistes.setEnabled(false); + + clearAll = new JButton("Clear All"); + clearAll.setName("clearAll"); + clearAll.addActionListener(this); + ToolTipHelper.add(clearAll,"Remove all selected pollutant and process combinations"); + clearAll.setEnabled(false); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + removeAll(); + + JPanel p = new JPanel(); + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + p.setLayout(new GridBagLayout()); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 3, 1); + p.add(selectPrerequisistes, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 3, 1); + p.add(Box.createHorizontalGlue(), gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 2, "WEST", 1, 1); + p.add(clearAll, gbc); + + JPanel t = new JPanel(); + t.setLayout(new BoxLayout(t, BoxLayout.X_AXIS)); + t.add(p); + t.add(messageLogPane); + + setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); + splitPane.setOrientation(JSplitPane.VERTICAL_SPLIT); + splitPane.setTopComponent(tableScrollPane); + splitPane.setBottomComponent(t); // messageLogPane + splitPane.setPreferredSize(splitPane.getMinimumSize()); + splitPane.setResizeWeight(0.85); + add(splitPane); + } + + /** + * Saves the Pollutant Process Screen information to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + //System.out.println("PollutantAndProcesses.saveToRunSpec"); + boolean shouldAddOffNetworkRoadType = false; + boolean hasRefuelingLoss = false; + boolean hasMesoscaleEvap = false; + runspec.pollutantProcessAssociations.clear(); + + Models.ModelCombination mc = runspec.getModelCombination(); + + for(int pollutantDisplayGroupIndex=0;pollutantDisplayGroupIndex < rowEntries.length;pollutantDisplayGroupIndex++) { + RowEntry re = (RowEntry)rowEntries[pollutantDisplayGroupIndex]; + if(re.hasChildren) { + continue; + } + for(int processIndex=0;processIndex i = undisplayedRunSpecSelections.iterator(); i.hasNext();) { + PollutantProcessAssociation assoc = i.next(); + /** NR_IMP: differentiate Noroad and Onroad **/ + assoc.isAffectedByOnroad = PollutantProcessLoader.getBooleanColVal("isAffectedByOnroad",assoc.pollutant.databaseKey,assoc.emissionProcess.databaseKey); + assoc.isAffectedByNonroad = PollutantProcessLoader.getBooleanColVal("isAffectedByNonroad",assoc.pollutant.databaseKey,assoc.emissionProcess.databaseKey); + assoc.isChosenForNonroad = false; + assoc.isChosenForOnroad = false; + switch (mc) { + case M1: + assoc.isChosenForOnroad = true; + break; + case M2: + assoc.isChosenForNonroad = true; + break; + case M12: + assoc.isChosenForNonroad = true; + assoc.isChosenForOnroad = true; + break; + default: + assoc.isChosenForOnroad = true; + break; + } + /** NR_IMP **/ + runspec.pollutantProcessAssociations.add(assoc); + // System.out.println("Selected(#2): " + assoc.toString()); + } + + + if(shouldAddOffNetworkRoadType) { + RoadType rt = new RoadType(1,"Off-Network", Models.ModelCombination.M1); + runspec.roadTypes.add(rt); + } + + if(hasRefuelingLoss) { // || hasMesoscaleEvap) { + //RoadTypeScreen.setAllRoadTypes(runspec); + } + } + + /** + * Loads the Pollutant Process screen information from a RunSpec. + * @param runspec the RunSpec to get the description text from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + if(!PollutantProcessLoader.isLoaded() || forcePollutantProcessReload) { + forcePollutantProcessReload = false; + PollutantProcessLoader.loadFromDatabase(); + } + Models.ModelCombination mc = runspec.getModelCombination(); + boolean hasNonroad = mc == Models.ModelCombination.M2; + processes = EmissionProcess.getAllEmissionProcesses(); + processIndexes = new TreeMap(); + for(int processIndex=0;processIndex rowEntryList = new TreeSet(); + TreeMap groupsToUse = new TreeMap(); + TreeMap groupRows = new TreeMap(); + for(int pollutantIndex=0;pollutantIndex 1) { + Integer groupKey = new Integer(group.displayGroupID); + PollutantDisplayGroup t = groupsToUse.get(groupKey); + if(t == null) { + groupsToUse.put(groupKey,group); + } else { + group = t; + } + gr = groupRows.get(groupKey); + if(gr == null) { + // Give the group itself a row + gr = new RowEntry(); + gr.group = group; + gr.pollutant = null; + gr.hasChildren = true; + gr.childrenAreVisible = expandedGroups.contains(groupKey); + gr.isVisible = true; + rowEntryList.add(gr); + groupRows.put(groupKey,gr); + } + } + RowEntry r = new RowEntry(); + r.group = group; + r.pollutant = pollutant; + if(gr != null) { + r.isVisible = gr.childrenAreVisible; + } else { + r.isVisible = true; + } + switch (mc) { + case M2: + if (!pollutant.isAffectedByNonroad) { + r.isVisible = false; + r.couldBeVisible = false; + } else { + r.couldBeVisible = true; + } + break; + case M1: + case M0: + default: + if (!pollutant.isAffectedByOnroad) { + r.isVisible = false; + r.couldBeVisible = false; + } else { + r.couldBeVisible = true; + } + break; + } + rowEntryList.add(r); + } + rowEntries = rowEntryList.toArray(); + for(int r=0;r pollutantRowEntryIndexes = new TreeMap(); + for(int i=0;i < rowEntries.length; i++) { + RowEntry r = (RowEntry)rowEntries[i]; + if(r.pollutant != null) { + pollutantRowEntryIndexes.put(new Integer(r.pollutant.databaseKey),r); + } + } + + // Create a check-box selection grid entry for all valid pollutant/process combination + selections = null; + rowSelections = null; + if(processes != null && rowEntries != null) { + selections = new Object[rowEntries.length][processes.length]; + rowSelections = new Boolean[rowEntries.length]; + + for(int rowIndex=0;rowIndex i = r.group.pollutantIDsInDisplayGroup.iterator(); i.hasNext();) { + int pollutantID = i.next().intValue(); + Pollutant pollutant = Pollutant.findByID(pollutantID); + if (pollutant != null) { + switch (mc) { + case M0: + case M1: + Boolean isAffectedByOnroad = PollutantProcessLoader.getBooleanColVal("isAffectedByOnroad",pollutantID,process.databaseKey); + if (isAffectedByOnroad != null && isAffectedByOnroad) { + if (pollutant.associatedProcesses.contains(process)) { + selections[rowIndex][processIndex] = new Boolean(false); + canBreak = true; + } + } + break; + case M2: + Boolean isAffectedByNonroad = PollutantProcessLoader.getBooleanColVal("isAffectedByNonroad",pollutantID,process.databaseKey); + if (isAffectedByNonroad != null && isAffectedByNonroad) { + if (pollutant.associatedProcesses.contains(process)) { + selections[rowIndex][processIndex] = new Boolean(false); + canBreak = true; + } + } + break; + default: + break; + } + + // if(pollutant.associatedProcesses.contains(process)) + // { + // selections[rowIndex][processIndex] = new + // Boolean(false); // + // break; + // } + if (canBreak) { + break; + } + } + } + } else { + int pollutantID = r.pollutant.databaseKey; + int pocessID = process.databaseKey; + switch (mc) { + case M0: + case M1: + Boolean isAffectedByOnroad = PollutantProcessLoader.getBooleanColVal("isAffectedByOnroad",pollutantID, process.databaseKey); + if (isAffectedByOnroad != null && isAffectedByOnroad) { + if (r.pollutant.associatedProcesses.contains(process)) { + selections[rowIndex][processIndex] = new Boolean(false); + } + } + break; + case M2: + Boolean isAffectedByNonroad = PollutantProcessLoader.getBooleanColVal("isAffectedByNonroad",pollutantID, process.databaseKey); + if (isAffectedByNonroad != null && isAffectedByNonroad) { + if (r.pollutant.associatedProcesses.contains(process)) { + selections[rowIndex][processIndex] = new Boolean(false); + } + } + break; + default: + break; + } + + // if(r.pollutant.associatedProcesses.contains(process)) + // { + // selections[rowIndex][processIndex] = new + // Boolean(false); + // } + } + } + } + } + + // Recreate the table so that new data is loaded + createControls(); + arrangeControls(); + revalidate(); + + // Set all pollutant/process combinations selected in the runspec while keeping track of + // the combinations that are not displayed for selection. + undisplayedRunSpecSelections.clear(); + if(selections != null) { + // Clear any previously shown user selections + for(int rowIndex=0;rowIndex i = runspec.pollutantProcessAssociations.iterator(); i.hasNext();) { + PollutantProcessAssociation iterAssociation = (PollutantProcessAssociation) i.next(); + Integer processIndex = (Integer)processIndexes.get(iterAssociation.emissionProcess); + RowEntry re = pollutantRowEntryIndexes.get(new Integer(iterAssociation.pollutant.databaseKey)); + if(processIndex != null && re != null) { + if(selections[re.row][processIndex.intValue()] != null) { + selections[re.row][processIndex.intValue()] = new Boolean(true); + rowSelections[re.row] = new Boolean(true); + // If there is a parent row entry, then mark it as well + if(re.parent != null) { + if(selections[re.parent.row][processIndex.intValue()] != null) { + switch (mc) { + case M0: + case M1: + if (iterAssociation.isAffectedByOnroad) { + selections[re.parent.row][processIndex.intValue()] = new Boolean(true); + } + break; + case M2: + if (iterAssociation.isAffectedByNonroad) { + selections[re.parent.row][processIndex.intValue()] = new Boolean(true); + } + break; + default: + break; + } + rowSelections[re.parent.row] = new Boolean(true); + } + } + } + } else { + // remember iterAssociation + undisplayedRunSpecSelections.add(iterAssociation); + } + } + } + + clearAll.setEnabled(runspec.pollutantProcessAssociations.size() > 0); + + updateFilters(); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + if(sections != null) { + sections.remove(getName()); + } + messageLogModel.clear(); + + TreeSet messages = new TreeSet(); + TreeSet requiredAssociations = new TreeSet(); + boolean isOk = checkPrerequisites(runspec, messages, requiredAssociations); + + for(String messageLine : messages) { + messageLogModel.addElement(messageLine); + } + + RunSpecSectionStatus status; + if(isOk) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } + + if(sections != null) { + sections.put(getName(),status); + } + + selectPrerequisistes.setEnabled(!requiredAssociations.isEmpty()); + clearAll.setEnabled(runspec.pollutantProcessAssociations.size() > 0); + + return status; + } + + /** + * Add a pollutant/process association to the set of required associations. + * @param requiredAssociations pollutant/process associations that must still be selected + * @param process required emission process + * @param pollutant required pollutant + **/ + void requires(TreeSet requiredAssociations, + EmissionProcess process, Pollutant pollutant) { + PollutantProcessAssociation ppa = PollutantProcessAssociation.findByName(pollutant.pollutantName,process.processName); + if(ppa != null) { + requiredAssociations.add(ppa); + } + } + + /** + * Examine the selected pollutant/process associations and generate information + * about any additional associations that are required. + * @param runspec RunSpec to be examined + * @param messages Human-readable messages to be displayed + * @param requiredAssociations pollutant/process associations that must still be selected + * @return true when the GUI panel should be displayed as complete + **/ + boolean checkPrerequisites(RunSpec runspec, TreeSet messages, TreeSet requiredAssociations) { + Models.ModelCombination mc = runspec.getModelCombination(); + + boolean isOk = runspec.pollutantProcessAssociations.size() > 0; + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + + if(runspec.pollutantProcessAssociations.size() > 0) { + EmissionProcess crankcaseRunningProcess = EmissionProcess.findByID(15); + EmissionProcess crankcaseStartProcess = EmissionProcess.findByID(16); + EmissionProcess crankcaseExtIdleProcess = EmissionProcess.findByID(17); + + EmissionProcess runningExhaustProcess = EmissionProcess.findByID(1); + EmissionProcess startExhaustProcess = EmissionProcess.findByID(2); + EmissionProcess extIdleExhaustProcess = EmissionProcess.findByID(90); + + // Verify a required road type is selected + if(isOk && mc == Models.ModelCombination.M1) { + boolean needsNonOffnetworkRoad = false; + boolean needsRefuelingRoads = false; + boolean hasRunning = false, hasTire = false, hasBrake = false; + boolean hasRefuelingDisplacement = false, hasRefuelingSpillage = false; + for(Iterator i=runspec.pollutantProcessAssociations.iterator();i.hasNext();) { + PollutantProcessAssociation p = (PollutantProcessAssociation)i.next(); + switch(p.emissionProcess.databaseKey) { + case 1: // 1 == Running Exhaust + needsNonOffnetworkRoad = true; + hasRunning = true; + break; + case 9: // 9 == Brakewear + needsNonOffnetworkRoad = true; + hasBrake = true; + break; + case 10: // 10 == Tirewear + needsNonOffnetworkRoad = true; + hasTire = true; + break; + case 18: // 18 == Refueling Displacement Vapor Loss + needsRefuelingRoads = true; + hasRefuelingDisplacement = true; + break; + case 19: // 19 == Refueling Spillage Loss + needsRefuelingRoads = true; + hasRefuelingSpillage = true; + break; + } + } + if(needsRefuelingRoads) { + boolean found = RoadTypeScreen.hasRefuelingRoads(runspec); + if(!found) { + if(hasRefuelingDisplacement) { + String messageLine = "Refueling Displacement Vapor Loss requires all road types to be selected"; + messages.add(messageLine); + isOk = false; + } + if(hasRefuelingSpillage) { + String messageLine = "Refueling Spillage Loss requires all road types to be selected"; + messages.add(messageLine); + isOk = false; + } + } + } + if(needsNonOffnetworkRoad) { + boolean found = false; + for(RoadType r : runspec.roadTypes) { + if(r.roadTypeID >= 2 && r.roadTypeID <= 9) { + found = true; + break; + } + } + if(!found) { + if(hasRunning) { + String messageLine = "Running Exhaust requires a non-offnetwork road to be selected"; + messages.add(messageLine); + isOk = false; + } + if(hasBrake) { + String messageLine = "Brakewear requires a non-offnetwork road to be selected"; + messages.add(messageLine); + isOk = false; + } + if(hasTire) { + String messageLine = "Tirewear requires a non-offnetwork road to be selected"; + messages.add(messageLine); + isOk = false; + } + } + } + } + + // Check for distance + if(!runspec.outputVMTData) { + for(Iterator iterPollutantProcessAssociations = + runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + Pollutant p = pollutantProcessAssociation.pollutant; + PollutantDisplayGroup g = p.displayGroup; + if(g == null) { + g = PollutantDisplayGroup.findByPollutantID(p.databaseKey); + p.displayGroup = g; + } + if(g != null && g.requiresDistance && !CompilationFlags.DO_RATES_FIRST) { + String messageLine = pollutantProcessAssociation + " requires distance to be selected"; + messages.add(messageLine); + isOk = false; + } + } + } + + // Check for chained pollutants + TreeMap > selectedProcesses + = new TreeMap >(); + for(Iterator iterPollutantProcessAssociations = + runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get( + pollutantProcessAssociation.emissionProcess); + if(selectedProcessPollutants == null) { + selectedProcessPollutants = new TreeSet(); + selectedProcesses.put(pollutantProcessAssociation.emissionProcess, + selectedProcessPollutants); + } + selectedProcessPollutants.add(pollutantProcessAssociation.pollutant); + } + + for(Iterator iterPollutantProcessAssociations + = runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + Pollutant pollutant = pollutantProcessAssociation.pollutant; + if(pollutant.databaseKey == 98) { // Special case for CO2 Equivalent + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + + Pollutant methane = Pollutant.findByID(5); + Pollutant n2o = Pollutant.findByID(6); + Pollutant atmCO2 = Pollutant.findByID(90); + + if(methane != null && !pollutantProcessAssociation.emissionProcess.associatedPollutants.contains(methane)) { + methane = null; + } + if(n2o != null && !pollutantProcessAssociation.emissionProcess.associatedPollutants.contains(n2o)) { + n2o = null; + } + if(atmCO2 != null && !pollutantProcessAssociation.emissionProcess.associatedPollutants.contains(atmCO2)) { + atmCO2 = null; + } + + boolean hasMethane = methane != null && selectedProcessPollutants.contains(methane); + boolean hasN2O = n2o != null && selectedProcessPollutants.contains(n2o); + boolean hasAtmCO2 = atmCO2 != null && selectedProcessPollutants.contains(atmCO2); + + if(!hasMethane && !hasN2O && !hasAtmCO2) { + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + + pollutant + " requires "; + ArrayList tempList = new ArrayList(); + if(atmCO2 != null) { + tempList.add("Atmospheric CO2"); + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,atmCO2); + } + if(methane != null) { + tempList.add("Methane"); + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,methane); + } + if(n2o != null) { + tempList.add("Nitrous Oxide"); + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,n2o); + } + for(int i=0;i 0) { + if(i == tempList.size()-1) { + if(i > 1) { + messageLine += ", and/or "; + } else { + messageLine += " and/or "; + } + } else { + messageLine += ", "; + } + } + messageLine += tempList.get(i); + } + messages.add(messageLine); + isOk = false; + } else if(hasMethane && hasN2O && hasAtmCO2) { + // All is well, nothing to complain about. + } else { + // Leave isOk as it is. This is a warning message. + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + + pollutant + " will not include "; + boolean hasPreviousPollutant = false; + if(!hasAtmCO2 && atmCO2 != null) { + if(hasPreviousPollutant) { + messageLine += " and "; + } + hasPreviousPollutant = true; + messageLine += "Atmospheric CO2"; + } + if(!hasMethane && methane != null) { + if(hasPreviousPollutant) { + messageLine += " and "; + } + hasPreviousPollutant = true; + messageLine += "Methane"; + } + if(!hasN2O && n2o != null) { + if(hasPreviousPollutant) { + messageLine += " and "; + } + hasPreviousPollutant = true; + messageLine += "Nitrous Oxide"; + } + if(hasPreviousPollutant) { + messages.add(messageLine); + } + } + } else if(pollutant.databaseKey == 90) { // Atmospheric CO2 + switch (mc) { + case M2: + // No dependencies for Nonroad + break; + case M1: + default: + for (Iterator iterRequiredPollutants = pollutant.requiredPollutants.iterator(); iterRequiredPollutants.hasNext();) { + Pollutant requiredPollutant = (Pollutant)iterRequiredPollutants.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + if(!selectedProcessPollutants.contains(requiredPollutant)) { + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + pollutant + " requires " + requiredPollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,requiredPollutant); + messages.add(messageLine); + isOk = false; + } + } + break; + } + } else if (pollutant.databaseKey == 100) { // Primary Exhaust PM10 - Total + switch (mc) { + case M2: + // No dependencies for Nonroad + break; + case M1: + default: + for (Iterator iterRequiredPollutants = pollutant.requiredPollutants.iterator(); iterRequiredPollutants.hasNext();) { + Pollutant requiredPollutant = iterRequiredPollutants.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + if (!selectedProcessPollutants.contains(requiredPollutant)) { + String messageLine = pollutantProcessAssociation.emissionProcess + + "/" + + pollutant + + " requires " + + requiredPollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,requiredPollutant); + messages.add(messageLine); + isOk = false; + } + } + break; + } + } else if (pollutant.databaseKey == 110) { // Primary Exhaust PM2.5 - Total + switch (mc) { + case M2: + // No dependencies for Nonroad + break; + case M1: + default: + for (Iterator iterRequiredPollutants = pollutant.requiredPollutants.iterator(); iterRequiredPollutants.hasNext();) { + Pollutant requiredPollutant = iterRequiredPollutants.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + if (!selectedProcessPollutants.contains(requiredPollutant)) { + String messageLine = pollutantProcessAssociation.emissionProcess + + "/" + + pollutant + + " requires " + + requiredPollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,requiredPollutant); + messages.add(messageLine); + isOk = false; + } + } + break; + } + } else if (pollutant.databaseKey == 31) { // SO2 + switch (mc) { + case M2: + break; + case M1: + default: + for (Iterator iterRequiredPollutants = pollutant.requiredPollutants.iterator(); iterRequiredPollutants.hasNext();) { + Pollutant requiredPollutant = iterRequiredPollutants.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + if (!selectedProcessPollutants.contains(requiredPollutant)) { + String messageLine = pollutantProcessAssociation.emissionProcess + + "/" + + pollutant + + " requires " + + requiredPollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,requiredPollutant); + messages.add(messageLine); + isOk = false; + } + } + break; + } + } else { + for (Iterator iterRequiredPollutants = pollutant.requiredPollutants.iterator(); iterRequiredPollutants.hasNext();) { + Pollutant requiredPollutant = (Pollutant)iterRequiredPollutants.next(); + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + if(!selectedProcessPollutants.contains(requiredPollutant)) { + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + pollutant + " requires " + requiredPollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,requiredPollutant); + messages.add(messageLine); + isOk = false; + } + } + } + } + + // Look for nonroad + boolean hasNonroad = mc == Models.ModelCombination.M2; + TreeSet nonroadPolProcessIDs = new TreeSet(); + if(hasNonroad) { + for(int i=0;i mechanismPollutants = TOGSpeciationCalculator.getMechanismPollutants(db); + for(Iterator iterPollutantProcessAssociations + = runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + if(!mechanismPollutants.contains(pollutantProcessAssociation.pollutant)) { + continue; + } + ArrayList mechanismProcesses = TOGSpeciationCalculator.getMechanismProcesses(db,pollutantProcessAssociation.pollutant); + if(!mechanismProcesses.contains(pollutantProcessAssociation.emissionProcess)) { + continue; + } + // The PPA is a speciation mechanism in a valid process, so ensure its required input pollutants + // are also selected. + TreeSet selectedProcessPollutants = selectedProcesses.get(pollutantProcessAssociation.emissionProcess); + ArrayList requirements = TOGSpeciationCalculator.getMechanismRequirements(db,pollutantProcessAssociation); + for(PollutantProcessAssociation r : requirements) { + if(!selectedProcessPollutants.contains(r.pollutant) + && r.pollutant.associatedProcesses.contains(pollutantProcessAssociation.emissionProcess)) { + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + pollutantProcessAssociation.pollutant + " requires " + r.pollutant; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,r.pollutant); + messages.add(messageLine); + isOk = false; + } + } + } + } catch(SQLException e) { + Logger.logError(e,"Unable to check TOG speciation dependencies"); + } + + if(hasNonroad) { + try { + ArrayList integratedSpecies = NRAirToxicsCalculator.getIntegratedSpecies(db); + for(Iterator iterPollutantProcessAssociations = runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + if(pollutantProcessAssociation.pollutant.databaseKey != 88) { // Look for NonHapTOG (88) + continue; + } + // NonHapTOG (88) is requested, ensure all of its required pollutants are selected. + for(Pollutant rp : integratedSpecies) { + if(!rp.isAffectedByNonroad) { + continue; + } + if(!pollutantProcessAssociation.emissionProcess.associatedPollutants.contains(rp)) { + continue; + } + PollutantProcessAssociation rppa = PollutantProcessAssociation.createByID(rp.databaseKey,pollutantProcessAssociation.emissionProcess.databaseKey); + if(rppa == null || !rppa.isAffectedByNonroad) { + continue; + } + if(!runspec.pollutantProcessAssociations.contains(rppa)) { + String messageLine = pollutantProcessAssociation.emissionProcess + "/" + pollutantProcessAssociation.pollutant + " requires " + rp; + requires(requiredAssociations,pollutantProcessAssociation.emissionProcess,rp); + messages.add(messageLine); + isOk = false; + } + } + } + } catch(SQLException e) { + Logger.logError(e,"Unable to check NR NonHAPTOG speciation dependencies"); + } + } + + for(Iterator iterPollutantProcessAssociations = runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation output = (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + int outputID = output.getDatabaseKey(); + if(hasNonroad && nonroadPolProcessIDs.contains(new Integer(outputID))) { + // Nonroad's native pollutant/processes do not have chaining. + continue; + } + TreeSet inputIDs = null; + if(hasNonroad) { + inputIDs = PollutantProcessAssociation.chainedToNR(outputID); + } else { + inputIDs = PollutantProcessAssociation.chainedTo(outputID); + } + if(inputIDs == null || inputIDs.size() <= 0) { + continue; + } + for(Iterator iterInputID=inputIDs.iterator();iterInputID.hasNext();) { + Integer inputIDObject = (Integer)iterInputID.next(); + int inputID = inputIDObject.intValue(); + PollutantProcessAssociation input = PollutantProcessAssociation.createByID(inputID); + int inputPollutantID = input.pollutant.databaseKey; + int inputProcessID = input.emissionProcess.databaseKey; + boolean foundInput = false; + for(Iterator j= runspec.pollutantProcessAssociations.iterator();j.hasNext();) { + PollutantProcessAssociation p = (PollutantProcessAssociation)j.next(); + if(p.pollutant.databaseKey == inputPollutantID + && p.emissionProcess.databaseKey == inputProcessID) { + foundInput = true; + break; + } + } + if(!foundInput) { + String messageLine = output.emissionProcess + "/" + output.pollutant + " requires "; + if(inputProcessID != output.emissionProcess.databaseKey) { + messageLine += input.emissionProcess + "/"; + } + messageLine += input.pollutant; + + requires(requiredAssociations,input.emissionProcess,input.pollutant); + messages.add(messageLine); + isOk = false; + } + } + } + +// if(isOk) { + EmissionProcess emissionProcess = EmissionProcess.findByID(99); // Well-to-Pump + if(emissionProcess != null) { + Pollutant pollutant = Pollutant.findByID(91); // Total Energy Consumption + if(pollutant != null) { + String messageLine = emissionProcess + " requires " + pollutant + + " to be selected for at least "; + String lastProcess = null; + String delimiter = ""; + + TreeSet selectedProcessPollutants = + selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants != null) { + boolean foundTotalEnergyConsumption = false; + emissionProcess = EmissionProcess.findByID(90); // Extended Idle Exhaust + if(emissionProcess!=null) { + lastProcess = emissionProcess.toString(); + selectedProcessPollutants = + selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants != null) { + if(selectedProcessPollutants.contains(Pollutant.findByID(91))) { + foundTotalEnergyConsumption = true; + } + } + } + emissionProcess = EmissionProcess.findByID(1); // Running Exhaust + if(emissionProcess!=null) { + if(lastProcess!=null) { + messageLine += delimiter + lastProcess; + delimiter = ", "; + } + lastProcess = emissionProcess.toString(); + selectedProcessPollutants = + selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants != null) { + if(selectedProcessPollutants.contains(Pollutant.findByID(91))) { + foundTotalEnergyConsumption = true; + } + } + } + + emissionProcess = EmissionProcess.findByID(2); // Start Exhaust + if(emissionProcess!=null) { + if(lastProcess!=null) { + messageLine += delimiter + lastProcess; + delimiter = ", "; + } + lastProcess = emissionProcess.toString(); + selectedProcessPollutants = + selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants != null) { + if(selectedProcessPollutants.contains(Pollutant.findByID(91))) { + foundTotalEnergyConsumption = true; + } + } + } + + if(!foundTotalEnergyConsumption) { + if(lastProcess != null) { + messageLine += delimiter + " or " + lastProcess + "."; + } + messages.add(messageLine); + isOk = false; + } + } + } + } +// } + + // for all the Evap related processes, ONLY check the time span when + // ONROAD model is chosen + emissionProcess = EmissionProcess.findByID(11); // Evap Permeation + if(emissionProcess != null) { + TreeSet selectedProcessPollutants = selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants!=null) { + switch (mc) { + case M1: + if (runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + String messageLine = emissionProcess + + " requires the time aggregation level to be Hour."; + messages.add(messageLine); + isOk = false; + } + /* + else if (!runspec.timeSpan.hasAllHours()) { + String messageLine = emissionProcess + + " requires all hours to be selected."; + messages.add(messageLine); + isOk = false; + } + */ + break; + case M2: + default: + break; + } + } + } + emissionProcess = EmissionProcess.findByID(12); // Evap Fuel Vapor Venting + if(emissionProcess != null) { + TreeSet selectedProcessPollutants = selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants!=null) { + switch (mc) { + case M1: + if (runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + String messageLine = emissionProcess + + " requires the time aggregation level to be Hour."; + messages.add(messageLine); + isOk = false; + } else if (!runspec.timeSpan.hasAllHours()) { + String messageLine = emissionProcess + + " requires all hours to be selected."; + messages.add(messageLine); + isOk = false; + } + break; + case M2: + default: + break; + } + } + } + emissionProcess = EmissionProcess.findByID(13); // Evap Fuel Leaks + if(emissionProcess != null) { + TreeSet selectedProcessPollutants = selectedProcesses.get(emissionProcess); + if(selectedProcessPollutants!=null) { + switch (mc) { + case M1: + if (runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + String messageLine = emissionProcess + + " requires the time aggregation level to be Hour."; + messages.add(messageLine); + isOk = false; + } + /* + else if (!runspec.timeSpan.hasAllHours()) { + String messageLine = emissionProcess + + " requires all hours to be selected."; + messages.add(messageLine); + isOk = false; + } + */ + break; + case M2: + default: + break; + } + } + } + } + + return isOk; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.pollutantProcessAssociations.clear(); + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + saveToRunSpec(runspec); + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Handles a state change event. + * @param e The event caused by the state change. + **/ + public void stateChanged(ChangeEvent e) + { //Update table scroll position to match header scroll position + JViewport viewport = (JViewport) e.getSource(); + tableScrollPane.getVerticalScrollBar().setValue(viewport.getViewPosition().y); + } + + /** + * Handles table editing stopped event. + * @param e The event caused by the table edit. + **/ + public void editingStopped(ChangeEvent e){ + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + + /** + * Currently not used. + * @param e The event caused by the table edit. + **/ + public void editingCanceled(ChangeEvent e) { + // Nothing to do here + } + + /** Force the table's rows to be rescanned for filtering **/ + void updateFilters() { + if(sorter != null) { + sorter.setRowFilter(new RowEntryFilter()); + } + if(sorter2 != null) { + sorter2.setRowFilter(new RowEntryFilter()); + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + forcePollutantProcessReload = true; + // saveToRunSpec(runspec); + loadFromRunSpec(runspec); + return calculateRunSpecSectionStatus(runspec, sections); + } + + /** + * Calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == selectPrerequisistes) { + selectAllPrerequisites(); + } else if(e.getSource() == clearAll) { + clearAllSelections(); + } + } + + /** Remove all pollutant/process combinations **/ + void clearAllSelections() { + RunSpec runspec = null; + if (MOVESNavigation.singleton != null + && MOVESNavigation.singleton.parent != null + && MOVESNavigation.singleton.parent.runSpec != null) { + runspec = MOVESNavigation.singleton.parent.runSpec; + } + if(runspec == null) { + return; + } + + if(runspec.pollutantProcessAssociations.size() > 0) { + runspec.pollutantProcessAssociations.clear(); + loadFromRunSpec(runspec); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + } + + /** + * Select all pollutant/process combinations required by + * the currently selected combinations. + **/ + void selectAllPrerequisites() { + RunSpec runspec = null; + if (MOVESNavigation.singleton != null + && MOVESNavigation.singleton.parent != null + && MOVESNavigation.singleton.parent.runSpec != null) { + runspec = MOVESNavigation.singleton.parent.runSpec; + } + if(runspec == null) { + return; + } + + boolean didMakeChanges = false; + while(true) { + TreeSet messages = new TreeSet(); + TreeSet requiredAssociations = new TreeSet(); + boolean isOk = checkPrerequisites(runspec, messages, requiredAssociations); + if(requiredAssociations.size() <= 0) { + break; + } + for(PollutantProcessAssociation ppa : requiredAssociations) { + runspec.pollutantProcessAssociations.add(ppa); + didMakeChanges = true; + } + } + if(didMakeChanges) { + loadFromRunSpec(runspec); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/PreviousFile1Action.java b/gov/epa/otaq/moves/master/gui/PreviousFile1Action.java new file mode 100644 index 0000000..124d431 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PreviousFile1Action.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)PreviousFile1Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES PreviousFile1 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class PreviousFile1Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PREVIOUS_FILE1 = "previous-file1-command"; + /** Constant action name. **/ + static final String NAME_PREVIOUS_FILE1 = "1 "; +// CIM: NOT DONE +// static final String SMALL_ICON_PREVIOUS_FILE1 = +// "toolbarButtonGraphics/general/PreviousFile116.gif"; +// static final String LARGE_ICON_PREVIOUS_FILE1 = +// "toolbarButtonGraphics/general/PreviousFile124.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PREVIOUS_FILE1 = "1 "; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PREVIOUS_FILE1 = "Load File: "; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PREVIOUS_FILE1 = '1'; + + /** + * Implements the PreviousFile1 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PreviousFile1Action() { + putValue(Action.NAME, NAME_PREVIOUS_FILE1); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PREVIOUS_FILE1)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_PREVIOUS_FILE1)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE1); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PREVIOUS_FILE1); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PREVIOUS_FILE1)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PREVIOUS_FILE1); + } + + /** + * Sets the short description text of this action, after the default prefix. + * @param newText the new short description as text to add after the default prefix. + **/ + public void setShortDescription(String newText) { + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE1 + newText); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PreviousFile2Action.java b/gov/epa/otaq/moves/master/gui/PreviousFile2Action.java new file mode 100644 index 0000000..6e5bafa --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PreviousFile2Action.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)PreviousFile2Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES PreviousFile2 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class PreviousFile2Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PREVIOUS_FILE2 = "previous-file2-command"; + /** Constant action name. **/ + static final String NAME_PREVIOUS_FILE2 = "2 "; +// CIM: NOT DONE +// static final String SMALL_ICON_PREVIOUS_FILE2 = +// "toolbarButtonGraphics/general/PreviousFile216.gif"; +// static final String LARGE_ICON_PREVIOUS_FILE1 = +// "toolbarButtonGraphics/general/PreviousFile224.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PREVIOUS_FILE2 = "2 "; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PREVIOUS_FILE2 = "Load File: "; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PREVIOUS_FILE2 = '2'; + + /** + * Implements the PreviousFile2 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PreviousFile2Action() { + putValue(Action.NAME, NAME_PREVIOUS_FILE2); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PREVIOUS_FILE2)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_PREVIOUS_FILE2)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE2); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PREVIOUS_FILE2); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PREVIOUS_FILE2)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PREVIOUS_FILE2); + } + + /** + * Sets the short description text of this action, after the default prefix. + * @param newText the new short description as text to add after the default prefix. + **/ + public void setShortDescription(String newText) { + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE2 + newText); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PreviousFile3Action.java b/gov/epa/otaq/moves/master/gui/PreviousFile3Action.java new file mode 100644 index 0000000..c0e575f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PreviousFile3Action.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)PreviousFile3Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES PreviousFile3 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class PreviousFile3Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PREVIOUS_FILE3 = "previous-file3-command"; + /** Constant action name. **/ + static final String NAME_PREVIOUS_FILE3 = "3 "; +// CIM: NOT DONE +// static final String SMALL_ICON_PREVIOUS_FILE3 = +// "toolbarButtonGraphics/general/PreviousFile316.gif"; +// static final String LARGE_ICON_PREVIOUS_FILE3 = +// "toolbarButtonGraphics/general/PreviousFile324.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PREVIOUS_FILE3 = "3 "; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PREVIOUS_FILE3 = "Load File: "; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PREVIOUS_FILE3 = '3'; + + /** + * Implements the PreviousFile3 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PreviousFile3Action() { + putValue(Action.NAME, NAME_PREVIOUS_FILE3); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PREVIOUS_FILE3)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_PREVIOUS_FILE3)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE3); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PREVIOUS_FILE3); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PREVIOUS_FILE3)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PREVIOUS_FILE3); + } + + /** + * Sets the short description text of this action, after the default prefix. + * @param newText the new short description as text to add after the default prefix. + **/ + public void setShortDescription(String newText) { + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE3 + newText); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PreviousFile4Action.java b/gov/epa/otaq/moves/master/gui/PreviousFile4Action.java new file mode 100644 index 0000000..5c8fb23 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PreviousFile4Action.java @@ -0,0 +1,55 @@ +/************************************************************************************************** + * @(#)PreviousFile4Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES PreviousFile4 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class PreviousFile4Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PREVIOUS_FILE4 = "previous-file4-command"; + /** Constant action name. **/ + static final String NAME_PREVIOUS_FILE4 = "4 "; +// CIM: NOT DONE +// static final String SMALL_ICON_PREVIOUS_FILE4 = +// "toolbarButtonGraphics/general/PreviousFile416.gif"; +// static final String LARGE_ICON_PREVIOUS_FILE4 = +// "toolbarButtonGraphics/general/PreviousFile424.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PREVIOUS_FILE4 = "4 "; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PREVIOUS_FILE4 = "Load File: "; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PREVIOUS_FILE4 = '4'; + + /** + * Implements the PreviousFile4 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PreviousFile4Action() { + putValue(Action.NAME, NAME_PREVIOUS_FILE4); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PREVIOUS_FILE4)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_PREVIOUS_FILE4)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE4); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PREVIOUS_FILE4); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PREVIOUS_FILE4)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PREVIOUS_FILE4); + } + + /** + * Sets the short description text of this action, after the default prefix. + * @param newText the new short description as text to add after the default prefix. + **/ + public void setShortDescription(String newText) { + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PREVIOUS_FILE4 + newText); + } +} diff --git a/gov/epa/otaq/moves/master/gui/PrintAction.java b/gov/epa/otaq/moves/master/gui/PrintAction.java new file mode 100644 index 0000000..d6504de --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/PrintAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)PrintAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Print menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class PrintAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_PRINT = "print-command"; + /** Constant action name. **/ + static final String NAME_PRINT = "Print..."; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_PRINT = "toolbarButtonGraphics/general/Print16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_PRINT = "toolbarButtonGraphics/general/Print24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_PRINT = "Print MOVES"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_PRINT = "Print active object"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_PRINT = 'P'; + + /** + * Implements the Print menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public PrintAction() { + putValue(Action.NAME, NAME_PRINT); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_PRINT)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_PRINT)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_PRINT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_PRINT); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_PRINT)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_PRINT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ProjectDomainManagerAction.java b/gov/epa/otaq/moves/master/gui/ProjectDomainManagerAction.java new file mode 100644 index 0000000..89c4638 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ProjectDomainManagerAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** + * @(#)ProjectDomainManagerAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES "Project Domain Manager" menu option. + * + * @author wgfaler + * @version 2008-12-15 +**/ +public class ProjectDomainManagerAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY = + "project-domain-manager"; + /** Constant action name. **/ + static final String NAME = + /** "Project Domain Manager"; **/ + "Project Data Manager"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION = + "Start Project Domain Manager GUI"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION = + "Select and Import Project-Level Data"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY = 'P'; + + /** + * Implements the menu option UI, including command keys, + * name, descriptions, and icons. + **/ + public ProjectDomainManagerAction() { + putValue(Action.NAME, NAME); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Report1Action.java b/gov/epa/otaq/moves/master/gui/Report1Action.java new file mode 100644 index 0000000..bf2c061 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Report1Action.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)Report1Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Report1 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class Report1Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_REPORT1 = "report1-command"; + /** Constant action name. **/ + static final String NAME_REPORT1 = "Report 1..."; +// CIM: NOT DONE +// static final String SMALL_ICON_REPORT1 = +// "toolbarButtonGraphics/general/Report116.gif"; +// static final String LARGE_ICON_REPORT1 = +// "toolbarButtonGraphics/general/Report124.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_REPORT1 = "Report 1"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_REPORT1 = "Generate MOVES Report 1"; +// static final int MNEMONIC_KEY_REPORT1 = 'A'; + + /** + * Implements the Report1 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public Report1Action() { + putValue(Action.NAME, NAME_REPORT1); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_REPORT1)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_REPORT1)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_REPORT1); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_REPORT1); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_REPORT1)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_REPORT1); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Report2Action.java b/gov/epa/otaq/moves/master/gui/Report2Action.java new file mode 100644 index 0000000..bde9a2f --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Report2Action.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)Report2Action.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Report2 menu option. + * + * @author Cimulus + * @version 2003-09-11 +**/ +public class Report2Action extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_REPORT2 = "report2-command"; + /** Constant action name. **/ + static final String NAME_REPORT2 = "Report 2..."; +// CIM: NOT DONE +// static final String SMALL_ICON_REPORT2 = +// "toolbarButtonGraphics/general/Report216.gif"; +// static final String LARGE_ICON_REPORT2 = +// "toolbarButtonGraphics/general/Report224.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_REPORT2 = "Report2 MOVES"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_REPORT2 = "Generate MOVES Report 2"; +// static final int MNEMONIC_KEY_REPORT2 = 'A'; + + /** + * Implements the Report2 menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public Report2Action() { + putValue(Action.NAME, NAME_REPORT2); +// putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_REPORT2)); +// putValue(LARGE_ICON, getIcon(LARGE_ICON_REPORT2)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_REPORT2); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_REPORT2); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_REPORT2)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_REPORT2); + } +} diff --git a/gov/epa/otaq/moves/master/gui/ResumeAction.java b/gov/epa/otaq/moves/master/gui/ResumeAction.java new file mode 100644 index 0000000..2a2cf1c --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/ResumeAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)ResumeAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Resume menu option. + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class ResumeAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_RESUME = "resume-command"; + /** Constant action name. **/ + static final String NAME_RESUME = "Resume"; + /** Constant small icon path and file name. **/ + static final String SMALL_ICON_RESUME = "toolbarButtonGraphics/media/StepForward16.gif"; + /** Constant large icon path and file name. **/ + static final String LARGE_ICON_RESUME = "toolbarButtonGraphics/medai/StepForward24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_RESUME = "Resume"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_RESUME = + "Resume execution of paused RunSpec"; +// static final int MNEMONIC_KEY_RESUME = 'A'; + + /** + * Implements the Resume menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public ResumeAction() { + putValue(Action.NAME, NAME_RESUME); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_RESUME)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_RESUME)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_RESUME); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_RESUME); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_RESUME)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_RESUME); + } +} diff --git a/gov/epa/otaq/moves/master/gui/RoadTypeScreen.java b/gov/epa/otaq/moves/master/gui/RoadTypeScreen.java new file mode 100644 index 0000000..2241307 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RoadTypeScreen.java @@ -0,0 +1,745 @@ +/************************************************************************************************** + * @(#)RoadTypeScreen.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; +import gov.epa.otaq.moves.master.runspec.*; +import java.util.TreeMap; +import java.util.*; +import java.sql.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.common.*; + +/** + * Class for MOVES RoadTypeScreen panel. The panel contains two list boxes and + * several buttons, a listbox of HPMS Road Types, a listbox of selected Road Types, + * and buttons to select and delete the selection. Initially the HPMS Road Types + * listbox is populated with the data retrieved form the database. The Selected + * values are loaded/saved from/to the RunSpec. + * + * @author Wesley Faler + * @author Don Smith + * @author EPA-elg + * @author EPA Mitch C. + * @author Tim Hull + * @version 2014-10-08 +**/ +public class RoadTypeScreen extends JPanel implements ListSelectionListener, + ActionListener, RunSpecEditor { + /** Road Type label. **/ + JLabel roadTypeLabel; + /** Selection label. **/ + JLabel selectionLabel; + /** Road Type default list model. **/ + DefaultListModel roadTypeListModel; + /** Selection default list model. **/ + DefaultListModel selectionListModel; + /** Road Type list. **/ + JList roadTypeList; + /** Selection list. **/ + JList selectionList; + /** Road Type scroll pane to contain roadType UI controls. **/ + JScrollPane roadTypeScrollPane; + /** Selection scroll pane to contain roadType UI controls. **/ + JScrollPane selectionScrollPane; + /** Road Type Select All button. **/ + JButton roadTypeSelectAll; + /** Selection Delete button. **/ + JButton selectionDelete; + /** Add Road Type button. **/ + JButton addRoadType; + /** global variable used to disable delete off-road when Extended Idle Exhaust is selected **/ + boolean hasExtendedIdleExhaust; + /** global variable used to disable delete off-road when Start Exhaust is selected **/ + boolean hasStartExhaust; + /** global variable used to disable delete all roads when Refueling processes are selected **/ + boolean hasRefuelingLoss; + /** global variable used to disable delete all roads when mesoscale evap processes are selected **/ + boolean hasMesoscaleEvap; + /** true if the runspec has offroad selections **/ + boolean hasOffRoadSelections; + /** true after road types have been loaded **/ + boolean didLoadRoadTypes = false; + /** roads required for refueling calculations **/ + static ArrayList refuelingRoads = new ArrayList(); + /** Owner window, used to detect current model so a filtered set of road types can be displayed **/ + MOVESWindow movesRootWindow = null; + /** Checkbox controls separation of ramp rates from highway rates **/ + JCheckBox separateRamps; + /** True when separating ramps is permitted by the calculation mode **/ + boolean canSeparateRamps = false; + + /** + * Constructs a OnRoadVehicleEquipment panel, also creates + * and sets the layouts of the controls. + **/ + public RoadTypeScreen() { + createControls(); + arrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Road Types:\r\n"); + for(Iterator i=runspec.roadTypes.iterator();i.hasNext();) { + destination.append("\t" + i.next() + "\r\n"); + } + destination.append("Separate ramp rates: " + runspec.shouldSeparateRamps + "\r\n"); + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + roadTypeLabel = new JLabel("Available Road Types:"); + roadTypeLabel.setName("roadTypeLabel"); + selectionLabel = new JLabel("Selected Road Types:"); + selectionLabel.setName("selectionLabel"); + roadTypeListModel = new DefaultListModel(); + selectionListModel = new DefaultListModel(); + loadRoadTypes(); + roadTypeList = new JListWithToolTips(roadTypeListModel); + roadTypeList.setName("roadTypeList"); + roadTypeList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + roadTypeList.setSelectedIndex(-1); + roadTypeList.addListSelectionListener(this); + roadTypeList.setVisibleRowCount(13); + roadTypeList.setPrototypeCellValue(new RoadType() { public String toString() { return "CharacterCountToDisplayXXXXX"; }}); + roadTypeScrollPane = new JScrollPane(roadTypeList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + roadTypeScrollPane.setName("roadTypeScrollPane"); + + selectionList = new JListWithToolTips(selectionListModel); + selectionList.setName("selectionList"); + selectionList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + selectionList.setSelectedIndex(-1); + selectionList.addListSelectionListener(this); + selectionList.setVisibleRowCount(13); + selectionList.setPrototypeCellValue(new RoadType() { public String toString() { return "CharacterCountToDisplayXXXXX"; }}); + selectionScrollPane = new JScrollPane(selectionList); + selectionScrollPane = new JScrollPane(selectionList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + selectionScrollPane.setName("selectionScrollPane"); + + roadTypeSelectAll = new JButton("Select All"); + roadTypeSelectAll.setName("roadTypeSelectAll"); + ToolTipHelper.add(roadTypeSelectAll,"Select all road types"); + selectionDelete = new JButton("Delete"); + selectionDelete.setName("selectionDelete"); + selectionDelete.setEnabled(false); // disabled until selection made + ToolTipHelper.add(selectionDelete,"Delete all selected road types"); + addRoadType = new JButton("Add"); + addRoadType.setName("addRoadType"); + addRoadType.setEnabled(false); // disabled until item in list + ToolTipHelper.add(addRoadType,"Add selected road types to RunSpec"); + + // Register a listener for the buttons. + roadTypeSelectAll.addActionListener(this); + selectionDelete.addActionListener(this); + addRoadType.addActionListener(this); + + separateRamps = new JCheckBox("Provide separate ramp output"); + separateRamps.setName("separateRamps"); + ToolTipHelper.add(separateRamps,"Separate ramp and highway emissions"); + separateRamps.setSelected(false); + separateRamps.addActionListener(this); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 5; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(roadTypeLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 1, 1); + add(roadTypeScrollPane, gbc); + + LayoutUtility.setPositionOnGrid(gbc,0, 2, "WEST", 1, 1); + add(roadTypeSelectAll, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 2, "EAST", 1, 1); + add(addRoadType, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1, 0, "WEST", 1, 1); + add(selectionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 1, "WEST", 1, 1); + add(selectionScrollPane, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 2, "EAST", 1, 1); + add(selectionDelete, gbc); + + LayoutUtility.setPositionOnGrid(gbc,1, 3, "EAST", 1, 1); + add(separateRamps, gbc); + } + + /** + * Listener method for list selection changes. + * @param e Event caused by a selection change. + **/ + public void valueChanged(ListSelectionEvent e) { + if (e.getValueIsAdjusting() == false) { + updateButtonStates(); + } + } + + /** Helper method for enabling/disabling all buttons depending upon list selections **/ + public void updateButtonStates() { + if(roadTypeList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + roadTypeSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in the roadType list. + addRoadType.setEnabled(false); + } else if(roadTypeList.getSelectedIndices().length >= 1) { + roadTypeSelectAll.setEnabled(true); + // the following button only enabled when item(s) + // selected in the roadType list. + addRoadType.setEnabled(true); + } + + boolean hasHighway = false; + for(int i=0;i= 1) { + selectionDelete.setEnabled(true); + Object[] selectedItems = selectionList.getSelectedValuesList().toArray(); + for(int i=0;i roadTypesLocal; + + String sql = "SELECT roadTypeID, roadDesc, isAffectedByOnroad, isAffectedByNonroad FROM roadtype"; + switch (mc) { + case M1: // Onroad + roadTypesLocal = runspec.roadTypes; + sql += " WHERE isAffectedByOnroad = TRUE"; + break; + case M2: // Nonroad + roadTypesLocal = runspec.roadTypes; + sql += " WHERE isAffectedByNonroad = TRUE"; + break; + default: + roadTypesLocal = null; + break; + } + sql += " ORDER BY roadDesc"; + if (roadTypesLocal == null) { + return; + } + + SQLRunner.Query query = new SQLRunner.Query(); + Connection db = null; + try { + db = DatabaseConnectionManager + .getGUIConnection(MOVESDatabaseType.DEFAULT); + query.open(db, sql); + while (query.rs.next()) { + int roadTypeID = query.rs.getInt(1); + boolean isAffectedByOnroad = query.rs.getBoolean(3); + boolean isAffectedByNonroad = query.rs.getBoolean(4); + if (isAffectedByOnroad && isAffectedByNonroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs + .getString(2), Models.ModelCombination.M12)); + } else if (isAffectedByOnroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs + .getString(2), Models.ModelCombination.M1)); + } else if (isAffectedByNonroad) { + runspec.roadTypes.add(new RoadType(roadTypeID, query.rs + .getString(2), Models.ModelCombination.M2)); + } + } + } catch (Exception e) { + Logger.logError( + e, + "Unable to load a list of road types: " + + e.getMessage()); + } finally { + query.onFinally(); + } + } + + /** + * Saves the info to a RunSpec. + * @param runspec the RunSpec to get the info + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.roadTypes.clear(); + for(int i=0;i i=runspec.pollutantProcessAssociations.iterator(); + i.hasNext();) { + PollutantProcessAssociation p = (PollutantProcessAssociation)i.next(); + switch(p.emissionProcess.databaseKey) { + case 90: // 90== Extended Idle Exhaust by definition + hasExtendedIdleExhaust = true; + break; + case 2: // 2== Start Exhaust by definition + hasStartExhaust = true; + break; + case 18: // 18 == Refueling Displacement Vapor Loss + hasRefuelingLoss = true; + break; + case 19: // 19 == Refueling Spillage Loss + hasRefuelingLoss = true; + break; + case 11: // 11 == Evap Permeation + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + hasMesoscaleEvap = true; + } + break; + case 12: // 12 == Evap Fuel Vapor Venting + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + hasMesoscaleEvap = true; + } + break; + case 13: // 13 == Evap Fuel Leaks + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + hasMesoscaleEvap = true; + } + break; + } + } + + boolean hasOnRoadSelections = false; + hasOffRoadSelections = false; + + selectionListModel.removeAllElements(); + if(!runspec.onRoadVehicleSelections.isEmpty()) { + hasOnRoadSelections = true; + } + if(!runspec.offRoadVehicleSelections.isEmpty()) { + hasOffRoadSelections = true; + } + if(hasOnRoadSelections || hasOffRoadSelections) { + for(Iterator i=runspec.roadTypes.iterator();i.hasNext();) { + RoadType roadType = (RoadType)i.next(); + selectionListModel.addElement(roadType); + } + } + + roadTypeList.setEnabled(hasOnRoadSelections); + selectionList.setEnabled(hasOnRoadSelections); + roadTypeSelectAll.setEnabled(hasOnRoadSelections); + addRoadType.setEnabled(hasOnRoadSelections); + selectionDelete.setEnabled(hasOnRoadSelections); // && !hasMesoscaleEvap && !hasRefuelingLoss); + + if(canSeparateRamps) { + separateRamps.setSelected(runspec.shouldSeparateRamps); + } else { + separateRamps.setSelected(false); + } + updateButtonStates(); + } + + /** + * Verifies that the current roadType selections are in the database. + * @param runspec the RunSpec to verify. + * @return true for valid. + **/ + boolean verifyCurrentSelections(RunSpec runspec) { + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(db == null) { + return false; + } + SQLRunner.Query query = new SQLRunner.Query(); + for(Iterator i=runspec.roadTypes.iterator();i.hasNext();) { + String nextRoadType = ((RoadType)(i.next())).roadTypeName; + String sql = ""; + try { + sql = "SELECT roadDesc FROM roadtype WHERE roadDesc = " + nextRoadType; + query.open(db,sql); + if(!query.rs.next()) { + return false; + } + } catch(Exception e) { + Logger.logError(e,"Unable to verify that the selected road types are in the database."); + } finally { + query.onFinally(); + } + } + return true; + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the info + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + RunSpecSectionStatus status; + if(runspec.roadTypes.isEmpty()) { + status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + } else if(!runspec.models.contains(Model.NONROAD)) { + // Look for required road types + boolean usesRefuelingLoss = false; + boolean usesMesoscaleEvap = false; + boolean needsNonOffnetworkRoad = false; + for(Iterator i=runspec.pollutantProcessAssociations.iterator();i.hasNext();) { + PollutantProcessAssociation p = (PollutantProcessAssociation)i.next(); + switch(p.emissionProcess.databaseKey) { + case 1: // 1 == Running Exhaust + needsNonOffnetworkRoad = true; + break; + case 9: // 9 == Brakewear + needsNonOffnetworkRoad = true; + break; + case 10: // 10 == Tirewear + needsNonOffnetworkRoad = true; + break; + case 11: // 11 == Evap Permeation + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + usesMesoscaleEvap = true; + } + break; + case 12: // 12 == Evap Fuel Vapor Venting + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + usesMesoscaleEvap = true; + } + break; + case 13: // 13 == Evap Fuel Leaks + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + usesMesoscaleEvap = true; + } + break; + case 18: // 18 == Refueling Displacement Vapor Loss + usesRefuelingLoss = true; + break; + case 19: // 19 == Refueling Spillage Loss + usesRefuelingLoss = true; + break; + } + } + boolean isOK = true; + if(isOK && usesRefuelingLoss) { + boolean hasRequiredRoads = false; + if(runspec.roadTypes.size() < roadTypeListModel.getSize()) { + hasRequiredRoads = hasRefuelingRoads(runspec); + } else { + hasRequiredRoads = true; + } + + isOK = isOK && hasRequiredRoads; + } + if(isOK && needsNonOffnetworkRoad) { + boolean found = false; + for(RoadType r : runspec.roadTypes) { + if(r.roadTypeID >= 2 && r.roadTypeID <= 9) { + found = true; + break; + } + } + isOK = isOK && found; + } + status = new RunSpecSectionStatus(isOK? RunSpecSectionStatus.OK : RunSpecSectionStatus.NOT_READY); + } else { + status = new RunSpecSectionStatus(RunSpecSectionStatus.OK); + } + sections.remove(getName()); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the info. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.roadTypes.clear(); + loadRoadTypes(); + + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + runspec.shouldSeparateRamps = false; + } + + // Default is to select all road types but only if there are on-road selections + if(!runspec.onRoadVehicleSelections.isEmpty()) { + for(int i=0;i sections) { + return saveDefaultsToRunSpec(runspec,sections); + } + + /** + * Load roadTypes from the database into the roadTypeList listbox + **/ + public void loadRoadTypes() { + Models.ModelCombination mc = Models.ModelCombination.M0; + if (movesRootWindow != null && movesRootWindow.runSpec != null) { + mc = Models.evaluateModels(movesRootWindow.runSpec.models); + } + + roadTypeListModel.removeAllElements(); + selectionListModel.removeAllElements(); + refuelingRoads.clear(); + + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if (null == db) { + JOptionPane.showMessageDialog(this, + "Database Connection unavailable"); + roadTypeListModel.addElement(new RoadType(12345, + "Rural Interstate", Models.ModelCombination.M1)); + roadTypeListModel.addElement(new RoadType(67890, + "Urban Interstate", Models.ModelCombination.M1)); + return; + } + + String sql = "SELECT roadTypeID, roadDesc, isAffectedByOnroad, isAffectedByNonroad" + + " FROM roadtype" + + " WHERE shouldDisplay = 1"; + switch (mc) { + case M1: // Onroad + sql += " AND isAffectedByOnroad = TRUE"; + break; + case M2: // Nonroad + sql += " AND isAffectedByNonroad = TRUE"; + default: + break; + } + sql += " ORDER BY roadDesc"; + + try { + PreparedStatement statement = db.prepareStatement(sql); + ResultSet results = SQLRunner.executeQuery(statement, sql); + if (results != null) { + // System.out.println("Road types:"); + while (results.next()) { + int roadTypeID = results.getInt(1); + // System.out.println("Adding road type " + roadTypeID); + boolean isAffectedByOnroad = results.getBoolean(3); + boolean isAffectedByNonroad = results.getBoolean(4); + RoadType r = null; + if (isAffectedByOnroad && isAffectedByNonroad) { + r = new RoadType(roadTypeID, + results.getString(2), + Models.ModelCombination.M12); + } else if (isAffectedByOnroad) { + r = new RoadType(roadTypeID, + results.getString(2), + Models.ModelCombination.M1); + } else if (isAffectedByNonroad) { + r = new RoadType(roadTypeID, + results.getString(2), + Models.ModelCombination.M2); + } + if(r != null) { + roadTypeListModel.addElement(r); + if(isRefuelingRoad(r)) { + refuelingRoads.add(r); + } + } + // roadTypeListModel.addElement( + // new RoadType(roadTypeID, results.getString(2))); + } + results.close(); + } + statement.close(); + } catch (Exception e) { + Logger.logError(e, "Unable to load a list of road types."); + } + } + + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } + + /** + * Determine if a road is required for refueling. + * @param r the road to be checked + * @return true if refueling requires the road to be present + **/ + public static boolean isRefuelingRoad(RoadType r) { + return r.roadTypeID >= 1 && r.roadTypeID <= 9; + } + + /** + * Check a RunSpec's set of selected roads against the set of roads + * required for any refueling operation. + * @param runspec RunSpec object to be scanned + * @return true if all required road types have been selected in the runspec. + **/ + public static boolean hasRefuelingRoads(RunSpec runspec) { + boolean hasRequiredRoads = true; + for(RoadType required : refuelingRoads) { + boolean found = false; + for(RoadType has : runspec.roadTypes) { + if(has.roadTypeID == required.roadTypeID) { + found = true; + break; + } + } + if(!found) { + hasRequiredRoads = false; + break; + } + } + return hasRequiredRoads; + } +} diff --git a/gov/epa/otaq/moves/master/gui/RunNonroadScriptAction.java b/gov/epa/otaq/moves/master/gui/RunNonroadScriptAction.java new file mode 100644 index 0000000..ff340fc --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunNonroadScriptAction.java @@ -0,0 +1,39 @@ +/************************************************************************************************** + * @(#)RunNonroadScriptAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES run nonroad script menu option. + * + * @author Daniel Cox + * @version 2014-06-27 +**/ +public class RunNonroadScriptAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_RUN_SCRIPT = "run nonroad script command"; + /** Constant action name. **/ + static final String NAME_RUN_SCRIPT = "Run MySQL Script on Nonroad Output Database"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_RUN_SCRIPT = "Run Nonroad Script"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_RUN_SCRIPT = "Run MySQL Script on Nonroad Output Database"; +// static final int MNEMONIC_KEY_RUN_SCRIPT = 'R'; + + /** + * Implements the Run Nonroad Script menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public RunNonroadScriptAction() { + putValue(Action.NAME, NAME_RUN_SCRIPT); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_RUN_SCRIPT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_RUN_SCRIPT); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_RUN_SCRIPT); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_RUN_SCRIPT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/RunNonroadScriptActionHelper.java b/gov/epa/otaq/moves/master/gui/RunNonroadScriptActionHelper.java new file mode 100644 index 0000000..a56163d --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunNonroadScriptActionHelper.java @@ -0,0 +1,1565 @@ +/************************************************************************************************** + * @(#)RunNonroadScriptActionHelper.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; +import gov.epa.otaq.moves.common.CellFileWriter; +import gov.epa.otaq.moves.common.FileUtilities; +import gov.epa.otaq.moves.common.LogMessageCategory; +import gov.epa.otaq.moves.common.Logger; +import gov.epa.otaq.moves.common.StringUtilities; +import gov.epa.otaq.moves.common.SQLRunner; + +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileOutputStream; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; +import java.sql.Connection; +import java.sql.SQLException; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; + +/** + * A helper class that generates reports from Nonroad post processing scripts + * + * @author Daniel Cox + * @version 2014-10-17 +**/ +public class RunNonroadScriptActionHelper { + + /** constructor **/ + public RunNonroadScriptActionHelper() { + } + + private static boolean hasErrors = false; + + /** + * Generates a report from the Nonroad post processing script output + * @param scriptName The SQL script that was run and whose output needs to be put in the report + * @param saveFileName Where the report should be saved. Can accept .xls, .xlsx, and .txt + * @param oConn An open connection to the database + **/ + public static boolean processScriptOutput(String scriptName, String saveFileName, Connection oConn) { + Object writer = null; + hasErrors = false; + + try { + if (FileUtilities.getFileExtension(saveFileName, false).equalsIgnoreCase("xls") + || FileUtilities.getFileExtension(saveFileName, false).equalsIgnoreCase("xlsx")) { + writer = new CellFileWriter(new File(saveFileName),"Sheet1"); + } else { + writer = new PrintWriter(new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(new File(saveFileName))))); + } + + if (scriptName.equalsIgnoreCase("EmissionFactors_per_hphr_by_Equipment.sql")) { + EmissionFactors_by_Equipment("EmissionFactors_per_hphr_by_Equipment", + "hp-hr", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_hphr_by_Equipment_and_Horsepower.sql")) { + EmissionFactors_by_Equipment_and_Horsepower("EmissionFactors_per_hphr_by_Equipment_and_Horsepower", + "hp-hr", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_hphr_by_SCC.sql")) { + EmissionFactors_by_SCC("EmissionFactors_per_hphr_by_SCC", + "hp-hr", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_hphr_by_SCC_and_ModelYear.sql")) { + EmissionFactors_by_SCC_and_ModelYear("EmissionFactors_per_hphr_by_SCC_and_ModelYear", + "hp-hr", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_OperatingHour_by_Equipment.sql")) { + EmissionFactors_by_Equipment("EmissionFactors_per_OperatingHour_by_Equipment", + "operating hour", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_OperatingHour_by_Equipment_and_Horsepower.sql")) { + EmissionFactors_by_Equipment_and_Horsepower("EmissionFactors_per_OperatingHour_by_Equipment_and_Horsepower", + "operating hour", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_OperatingHour_by_SCC.sql")) { + EmissionFactors_by_SCC("EmissionFactors_per_OperatingHour_by_SCC", + "operating hour", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_Vehicle_by_Equipment.sql")) { + EmissionFactors_by_Equipment("EmissionFactors_per_Vehicle_by_Equipment", + "vehicle per day", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower.sql")) { + EmissionFactors_by_Equipment_and_Horsepower("EmissionFactors_per_Vehicle_by_Equipment_and_Horsepower", + "vehicle per day", writer, oConn); + } else if (scriptName.equalsIgnoreCase("EmissionFactors_per_Vehicle_by_SCC.sql")) { + EmissionFactors_by_SCC("EmissionFactors_per_Vehicle_by_SCC", + "vehicle per day", writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_County_and_Pollutant.sql")) { + Inventory_by_County_and_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_County_FuelType_Pollutant.sql")) { + Inventory_by_County_FuelType_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_Equipment_Horsepower_Pollutant.sql")) { + Inventory_by_Equipment_Horsepower_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_EquipmentType_Pollutant.sql")) { + Inventory_by_EquipmentType_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_Sector_Horsepower_Pollutant.sql")) { + Inventory_by_Sector_Horsepower_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Inventory_by_Sector_SCC_Pollutant.sql")) { + Inventory_by_Sector_SCC_Pollutant(writer, oConn); + } else if (scriptName.equalsIgnoreCase("Population_by_Sector_and_SCC.sql")) { + Population_by_Sector_and_SCC(writer, oConn); + } + } catch (Exception e) { + Logger.log(LogMessageCategory.ERROR, + "Exception occurred running nonroad post-processing script: " + e); + hasErrors = true; + } finally { + if (writer != null) { + try { + if (writer instanceof PrintWriter) { + ((PrintWriter)writer).close(); + } + if (writer instanceof CellFileWriter) { + ((CellFileWriter)writer).close(); + } + } catch (Exception e) { + // Nothing can be done here + } + } + } + + return hasErrors; + } + + /** + * Queries the database and generates a report of emission factors by equipment type + * @param tableName The SQL table name that contains the output of the post processing script + * @param units The denominator units of the emission rate + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void EmissionFactors_by_Equipment(String tableName, String units, Object writer, Connection oConn) throws Exception { + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, equipDescription, fuelTypeID, pollutantID, processID, emissionRate, emissionRateUnits " + + "FROM " + tableName + " ORDER BY countyID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("State", 7); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Equipment Description", 40); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Emission Rate", 30); + + // Print header + ((PrintWriter)writer).println("Emission Factors in g/" + units + " listed by Equipment Type"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, equipDescription, fuelTypeID, pollutantID, processID, emissionRate " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("__________________________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("stateID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("equipDescription")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionRate")), 30); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + + /** + * Queries the database and generates a report of emission factors by equipment type and horsepower + * @param tableName The SQL table name that contains the output of the post processing script + * @param units The denominator units of the emission rate + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void EmissionFactors_by_Equipment_and_Horsepower(String tableName, String units, Object writer, Connection oConn) throws Exception { + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, equipDescription, hpID, hpBin, fuelTypeID, pollutantID, processID, emissionRate, emissionRateUnits " + + "FROM " + tableName + " ORDER BY countyID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("State", 7); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Equipment Description", 40); + header += StringUtilities.rightSpacePad("hpID", 6); + header += StringUtilities.rightSpacePad("hp Bin", 20); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Emission Rate", 30); + + // Print header + ((PrintWriter)writer).println("Emission Factors in g/" + units + " listed by Equipment Type and Horsepower Bin"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, equipDescription, hpID, hpBin, fuelTypeID, pollutantID, processID, emissionRate " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("______________________________________________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("stateID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("equipDescription")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpBin")), 20); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionRate")), 30); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + + /** + * Queries the database and generates a report of emission factors by SCC + * @param tableName The SQL table name that contains the output of the post processing script + * @param units The denominator units of the emission rate + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void EmissionFactors_by_SCC(String tableName, String units, Object writer, Connection oConn) throws Exception { + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, scc, sccDescription, fuelTypeID, pollutantID, processID, emissionRate, emissionRateUnits " + + "FROM " + tableName + " ORDER BY countyID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("State", 7); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("SCC", 12); + header += StringUtilities.rightSpacePad("Description", 40); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Emission Rate", 30); + + // Print header + ((PrintWriter)writer).println("Emission Factors in g/" + units + " listed by SCC"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, scc, sccDescription, fuelTypeID, pollutantID, processID, emissionRate " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("_______________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("stateID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("scc")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sccDescription")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionRate")), 30); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + + /** + * Queries the database and generates a report of emission factors by equipment type and horsepower + * @param tableName The SQL table name that contains the output of the post processing script + * @param units The denominator units of the emission rate + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void EmissionFactors_by_SCC_and_ModelYear(String tableName, String units, Object writer, Connection oConn) throws Exception { + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, SCC, sccDescription, fuelTypeID, hpID, hpBin, pollutantID, processID, modelYearID, emissionRate, emissionRateUnits " + + "FROM " + tableName + " ORDER BY countyID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("State", 7); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("SCC", 12); + header += StringUtilities.rightSpacePad("Description", 40); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("hpID", 6); + header += StringUtilities.rightSpacePad("hp Bin", 20); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Model Year", 12); + header += StringUtilities.rightSpacePad("Emission Rate", 30); + + // Print header + ((PrintWriter)writer).println("Emission Factors in g/" + units + " listed by SCC, Horsepower Bin, and Model Year"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, yearID, monthID, dayID, stateID, countyID, SCC, sccDescription, fuelTypeID, hpID, hpBin, pollutantID, processID, modelYearID, emissionRate " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("______________________________________________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("stateID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("SCC")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sccDescription")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpBin")), 20); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("modelYearID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionRate")), 30); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by county and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_County_and_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_County_and_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by County and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("____________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by county, fuel type, and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_County_FuelType_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_County_FuelType_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, fuelTypeID, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by County, Fuel Type, and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, fuelTypeID, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by equipment type, horsepower, and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_Equipment_Horsepower_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_Equipment_Horsepower_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, description as equipment, hpID, hpBin, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Equipment Description", 40); + header += StringUtilities.rightSpacePad("hpID", 6); + header += StringUtilities.rightSpacePad("hp Bin", 20); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by Equipment Type, Horsepower, and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, description, hpID, hpBin, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("________________________________________________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("description")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpBin")), 20); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by equipment type and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_EquipmentType_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_EquipmentType_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, description as equipment, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("Equipment Description", 40); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by Equipment Type and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, description, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("____________________________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("description")), 40); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by sector, horsepower, and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_Sector_Horsepower_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_Sector_Horsepower_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, hpID, hpBin, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("hpID", 6); + header += StringUtilities.rightSpacePad("hp Bin", 20); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by Sector, Horsepower, and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, hpID, hpBin, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("________________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("hpBin")), 20); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an inventory report by sector, SCC, and pollutant + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Inventory_by_Sector_SCC_Pollutant(Object writer, Connection oConn) throws Exception { + String tableName = "Inventory_by_Sector_SCC_Pollutant"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, SCC, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Pollutant", 11); + header += StringUtilities.rightSpacePad("Process", 10); + header += StringUtilities.rightSpacePad("SCC", 12); + header += StringUtilities.rightSpacePad("Emission Inventory", 30); + header += StringUtilities.rightSpacePad("Units", 20); + + // Print header + ((PrintWriter)writer).println("Emission Inventories listed by Sector, SCC, and Pollutant"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, pollutantID, processID, SCC, emissionQuant, massUnits, timeUnits " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("________________________________________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("pollutantID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("processID")), 10); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("SCC")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("emissionQuant")), 30); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("massUnits")) + + " per " + + StringUtilities.safeGetString(query.rs.getString("timeUnits")), 20); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Queries the database and generates an population report report by sector and SCC + * @param writer The output file writer (either a PrintWriter or a CellFileWriter) + * @param oConn An open connection to the database + * @throws Exception if there is an error writing to file + **/ + private static void Population_by_Sector_and_SCC(Object writer, Connection oConn) throws Exception { + String tableName = "Population_by_Sector_and_SCC"; + + if (writer instanceof CellFileWriter) { + String sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, fuelTypeID, SCC, population " + + "FROM " + tableName + " ORDER BY countyID, sectorID, yearID, monthID"; + ((CellFileWriter)writer).writeSQLResults(oConn, sql, null); + } else if (writer instanceof PrintWriter) { + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + String result = ""; + String header = ""; + header += StringUtilities.rightSpacePad("MOVESRunID", 11); + header += StringUtilities.rightSpacePad("County", 12); + header += StringUtilities.rightSpacePad("Sector", 8); + header += StringUtilities.rightSpacePad("Year", 6); + header += StringUtilities.rightSpacePad("Month", 7); + header += StringUtilities.rightSpacePad("Day", 5); + header += StringUtilities.rightSpacePad("Fuel", 6); + header += StringUtilities.rightSpacePad("SCC", 12); + header += StringUtilities.rightSpacePad("Population", 30); + + // Print header + ((PrintWriter)writer).println("Populations listed by Sector and SCC"); + DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + ((PrintWriter)writer).println("Generated on " + dateFormat.format(new Date())); + ((PrintWriter)writer).println(); + + // Get counties, sectors, calendar years, time periods -- spaces must be generated between each in the report + ArrayList counties = getCounties(oConn, tableName); + ArrayList sectors = getSectors(oConn, tableName); + ArrayList calendarYears = getCalendarYears(oConn, tableName); + ArrayList months = getMonths(oConn, tableName); + ArrayList days = getDays(oConn, tableName); + + for(Integer county : counties) { + for (Integer sector : sectors) { + for (Integer calendarYear : calendarYears) { + for (Integer month : months) { + for (Integer day : days) { + sql = "SELECT MOVESRunID, countyID, sectorID, yearID, monthID, dayID, fuelTypeID, SCC, population " + + "FROM " + tableName + " WHERE 1"; + if (county > 0) + sql += " AND countyID = " + county.toString(); + if (sector > 0) + sql += " AND sectorID = " + sector.toString(); + if (calendarYear > 0) + sql += " AND yearID = " + calendarYear.toString(); + if (month > 0) + sql += " AND monthID = " + month.toString(); + if (day > 0) + sql += " AND dayID = " + day.toString(); + + ((PrintWriter)writer).println("______________________________________________________________________________________________________"); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println("Report for:"); + ((PrintWriter)writer).println(" County " + county.toString()); + ((PrintWriter)writer).println(" Sector " + sector.toString()); + ((PrintWriter)writer).println(" Year " + calendarYear.toString()); + ((PrintWriter)writer).println(" Month " + month.toString()); + ((PrintWriter)writer).println(" Day " + day.toString()); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(header); + + try { + result = ""; + query.open(oConn, sql); + + while(query.rs.next()) { + result = ""; + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("MOVESRunID")), 11); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("countyID")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("sectorID")), 8); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("yearID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("monthID")), 7); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("dayID")), 5); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("fuelTypeID")), 6); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("SCC")), 12); + result += StringUtilities.rightSpacePad(StringUtilities.safeGetString(query.rs.getString("population")), 30); + ((PrintWriter)writer).println(result); + } + + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + ((PrintWriter)writer).println(); + + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + hasErrors = true; + } finally { + query.onFinally(); + } + + if (hasErrors) { + return; + } + } + } + } + } + } + } + } + + /** + * Gets a list of counties in the output database so that each county can get its own section in the reports + * @param oConn An open connection to the database + * @param tableName The table name containing the post processing script's output + **/ + private static ArrayList getCounties(Connection oConn, String tableName) { + ArrayList counties = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + + try { + sql = "SELECT distinct countyID FROM " + tableName; + query.open(oConn, sql); + while(query.rs.next()) { + counties.add(query.rs.getInt("countyID")); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + + if (counties.size() == 0) { + counties.add(-1); + } + + return counties; + } + + /** + * Gets a list of sectors in the output database so that each sector can get its own section in the reports + * @param oConn An open connection to the database + * @param tableName The table name containing the post processing script's output + **/ + private static ArrayList getSectors(Connection oConn, String tableName) { + ArrayList sectors = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + + try { + sql = "SELECT distinct sectorID FROM " + tableName; + query.open(oConn, sql); + while(query.rs.next()) { + sectors.add(query.rs.getInt("sectorID")); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + + if (sectors.size() == 0) { + sectors.add(-1); + } + + return sectors; + } + + /** + * Gets a list of years in the output database so that each year can get its own section in the reports + * @param oConn An open connection to the database + * @param tableName The table name containing the post processing script's output + **/ + private static ArrayList getCalendarYears(Connection oConn, String tableName) { + ArrayList calendarYears = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + + try { + sql = "SELECT distinct yearID FROM " + tableName; + query.open(oConn, sql); + while(query.rs.next()) { + calendarYears.add(query.rs.getInt("yearID")); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + + if (calendarYears.size() == 0) { + calendarYears.add(-1); + } + + return calendarYears; + } + + /** + * Gets a list of months in the output database so that each month can get its own section in the reports + * @param oConn An open connection to the database + * @param tableName The table name containing the post processing script's output + **/ + private static ArrayList getMonths(Connection oConn, String tableName) { + ArrayList months = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + + try { + sql = "SELECT distinct monthID FROM " + tableName; + query.open(oConn, sql); + while(query.rs.next()) { + months.add(query.rs.getInt("monthID")); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + + if (months.size() == 0) { + months.add(-1); + } + + return months; + } + + /** + * Gets a list of days in the output database so that each day can get its own section in the reports + * @param oConn An open connection to the database + * @param tableName The table name containing the post processing script's output + **/ + private static ArrayList getDays(Connection oConn, String tableName) { + ArrayList days = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + + try { + sql = "SELECT distinct dayID FROM " + tableName; + query.open(oConn, sql); + while(query.rs.next()) { + days.add(query.rs.getInt("dayID")); + } + query.close(); + } catch(SQLException e) { + query.onException(e,"Unable to ...",sql); + } finally { + query.onFinally(); + } + + if (days.size() == 0) { + days.add(-1); + } + + return days; + } +} \ No newline at end of file diff --git a/gov/epa/otaq/moves/master/gui/RunScriptAction.java b/gov/epa/otaq/moves/master/gui/RunScriptAction.java new file mode 100644 index 0000000..812e6c4 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunScriptAction.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)RunScriptAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES run script menu option. + * + * @author Cimulus + * @author EPA - Mitch C. + * @version 2004-07-07 +**/ +public class RunScriptAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_RUN_SCRIPT = "run script command"; + /** Constant action name. **/ + static final String NAME_RUN_SCRIPT = "Run MySQL Script on Onroad Output Database"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_RUN_SCRIPT = "Run Script"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_RUN_SCRIPT = "Run MySQL Script on MOVES Output Database"; +// static final int MNEMONIC_KEY_RUN_SCRIPT = 'R'; + + /** + * Implements the Run Script menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public RunScriptAction() { + putValue(Action.NAME, NAME_RUN_SCRIPT); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_RUN_SCRIPT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_RUN_SCRIPT); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_RUN_SCRIPT); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_RUN_SCRIPT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/RunSpecEditor.java b/gov/epa/otaq/moves/master/gui/RunSpecEditor.java new file mode 100644 index 0000000..6a860c6 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunSpecEditor.java @@ -0,0 +1,89 @@ +/************************************************************************************************** + * @(#)RunSpecEditor.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import gov.epa.otaq.moves.master.runspec.RunSpec; +import java.util.TreeMap; + +/** + * Interface for the RunSpecEditor. This interface contains methods to push + * visual information into a RunSpec object and retrieve the RunSpec information + * into visual controls, to determine the status of a part of a RunSpec, and to + * place default values into a section of a RunSpec. + + * + * @author Wesley Faler + * @version 2012-11-09 +**/ +public interface RunSpecEditor { + /** + * Push visual information into a RunSpec object. + * @param runspec The runspec to save the editor's values to. + **/ + public void saveToRunSpec(RunSpec runspec); + /** + * Retrieve information from a RunSpec object and push it to visual controls. + * @param runspec The runspec to load the editor's values from. + **/ + public void loadFromRunSpec(RunSpec runspec); + /** + * Determine the status of a portion of the RunSpec. This status is used for displaying + * an icon to the user to let them know whether enough data is present to execute the RunSpec. + *
    + * The RunSpecEditor should make note of the new status in the section map, likely using + * it's name as the key. If stored by a previous call, a previously calculated + * status is in the map as well and will need to be removed prior to updating. + * + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections); + + /** + * Place default values into a section of the RunSpec under control of this editor. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections); + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination); + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections); + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections); +} diff --git a/gov/epa/otaq/moves/master/gui/RunSpecSectionStatus.java b/gov/epa/otaq/moves/master/gui/RunSpecSectionStatus.java new file mode 100644 index 0000000..1ca7ef2 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunSpecSectionStatus.java @@ -0,0 +1,213 @@ +/************************************************************************************************** + * @(#)RunSpecSectionStatus.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.*; +import gov.epa.otaq.moves.master.runspec.RunSpec; + +/** + * Class for RunSpec section status (int values and their corresponding images). + * + * @author Cimulus + * @version 2004-07-07 +**/ +public class RunSpecSectionStatus implements Comparable { + /** Constant value for the NOT READY status. **/ + public static final int NOT_READY = -1; + /** Constant value for the DEFAULTS status. **/ + public static final int DEFAULTS = 0; + /** Constant value for the OK status. **/ + public static final int OK = 1; + /** Constant value for icons with a normal width **/ + public static final int NORMAL = 0; + /** Constant value for icons with a wide width **/ + public static final int WIDE = 1; + /** Constant value for icons with an embedded tree closed icon **/ + public static final int TREE_CLOSED = 2; + /** Constant value for icons with an embedded tree open icon **/ + public static final int TREE_OPEN = 3; + + /** Constant image icon file and path for the NOT READY status. **/ + static ImageIcon notReadyImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/needsData.gif"); + /** Constant image icon file and path for the DEFAULTS status. **/ + static ImageIcon defaultsImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/defaultData.gif"); + /** Constant image icon file and path for the OK status. **/ + static ImageIcon okImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/filledIn.gif"); + + /** Constant image icon file and path for the wide NOT READY status. **/ + static ImageIcon notReadyWideImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/needsDataWide.gif"); + /** Constant image icon file and path for the wide DEFAULTS status. **/ + static ImageIcon defaultsWideImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/defaultDataWide.gif"); + /** Constant image icon file and path for the wide OK status. **/ + static ImageIcon okWideImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/filledInWide.gif"); + + /** Constant image icon file and path for the tree closed NOT READY status. **/ + static ImageIcon notReadyTreeClosedImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/needsDataTreeClosed.gif"); + /** Constant image icon file and path for the tree closed DEFAULTS status. **/ + static ImageIcon defaultsTreeClosedImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/defaultDataTreeClosed.gif"); + /** Constant image icon file and path for the tree closed OK status. **/ + static ImageIcon okTreeClosedImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/filledInTreeClosed.gif"); + + /** Constant image icon file and path for the tree open NOT READY status. **/ + static ImageIcon notReadyTreeOpenImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/needsDataTreeOpen.gif"); + /** Constant image icon file and path for the tree open DEFAULTS status. **/ + static ImageIcon defaultsTreeOpenImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/defaultDataTreeOpen.gif"); + /** Constant image icon file and path for the tree open OK status. **/ + static ImageIcon okTreeOpenImage = + new ImageIcon("gov/epa/otaq/moves/master/gui/images/filledInTreeOpen.gif"); + + /** The RunSpec Section Status. **/ + public int status; + + /** + * Obtain a human readable explaination for the status an icon is meant to convey + * @param icon icon to be explained + * @return status icon is meant to convey, never null. + **/ + public static String explainIcon(Icon icon) { + if(icon == notReadyImage || icon == notReadyWideImage + || icon == notReadyTreeClosedImage || icon == notReadyTreeOpenImage) { + return "Not Ready"; + } else if(icon == defaultsImage || icon == defaultsWideImage + || icon == defaultsTreeClosedImage || icon == defaultsTreeOpenImage) { + return "Ready but with Default Settings"; + } else if(icon == okImage || icon == okWideImage + || icon == okTreeClosedImage || icon == okTreeOpenImage) { + return "Ready"; + } + return ""; + } + + /** Constructor, sets a default status of NOT_READY. **/ + public RunSpecSectionStatus() { + status = NOT_READY; + } + + /** + * Constructor, sets the status to the specified int value. + * @param s the new value as int of the status. + **/ + public RunSpecSectionStatus(int s) { + status = s; + } + + /** Sets the status to the best value (OK). **/ + public void makeBest() { + status = OK; + } + + /** Sets the status to the worst value (NOT_READY). **/ + public void makeWorst() { + status = NOT_READY; + } + + /** + * Sets the status to the other value, if it is better than the current status. + * @param other the RunSpecSectionStatus value to compare the current status with. + **/ + public void makeBestOfTwo(RunSpecSectionStatus other) { + if(other.status > status) { + status = other.status; + } + } + + /** + * Sets the status to the other value, if it is worse than the current status. + * @param other the RunSpecSectionStatus value to compare the current status with. + **/ + public void makeWorstOfTwo(RunSpecSectionStatus other) { + if(other.status < status) { + status = other.status; + } + } + + /** + * Returns the corresponding Icon for the current status. + * @return Icon the corresponding Icon based on the current status, or null, + * if the status is invalid. + * @param iconSubType set to NORMAL, WIDE, TREE_OPEN, TREE_CLOSED + **/ + public Icon getIcon(int iconSubType) { + switch(status) { + case NOT_READY: + switch(iconSubType) { + case NORMAL: + return notReadyImage; + case WIDE: + return notReadyWideImage; + case TREE_OPEN: + return notReadyTreeOpenImage; + case TREE_CLOSED: + return notReadyTreeClosedImage; + } + break; + case DEFAULTS: + switch(iconSubType) { + case NORMAL: + return defaultsImage; + case WIDE: + return defaultsWideImage; + case TREE_OPEN: + return defaultsTreeOpenImage; + case TREE_CLOSED: + return defaultsTreeClosedImage; + } + break; + case OK: + switch(iconSubType) { + case NORMAL: + return okImage; + case WIDE: + return okWideImage; + case TREE_OPEN: + return okTreeOpenImage; + case TREE_CLOSED: + return okTreeClosedImage; + } + break; + } + return null; + } + + /** + * Comparison routine used to sort these objects for display purposes. + * Compares status with the worst status' coming before the best ones. + * @param other another RunSpecSectionStatus to compare to + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof RunSpecSectionStatus) { + return status - ((RunSpecSectionStatus)(other)).status; + } else { + throw new ClassCastException(); + } + } + + /** + * Comparison routine to test for equality. + * @param other another RunSpecSectionStatus to compare to + * @return true if compareTo returns 0 + **/ + public boolean equals(Object other) { + if(other instanceof RunSpecSectionStatus) { + if(0 == compareTo(other)) { + return true; + } + } + return false; + } +} diff --git a/gov/epa/otaq/moves/master/gui/RunSpecSectionStatusTest.java b/gov/epa/otaq/moves/master/gui/RunSpecSectionStatusTest.java new file mode 100644 index 0000000..a6db721 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/RunSpecSectionStatusTest.java @@ -0,0 +1,90 @@ +/************************************************************************************************** + * @(#)RunSpecSectionStatusTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import junit.framework.*; +import gov.epa.otaq.moves.master.gui.RunSpecSectionStatus; + +/** + * Test Case for the RunSpecSectionStatus class + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class RunSpecSectionStatusTest extends TestCase { + /** The various runspec statues **/ + static final int[] statusValues = + { + RunSpecSectionStatus.NOT_READY, + RunSpecSectionStatus.DEFAULTS, + RunSpecSectionStatus.OK + }; + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public RunSpecSectionStatusTest(String name) { + super(name); + } + + /** Test the equals operator **/ + public void testEquals() { + for (int i = 0; i < statusValues.length; i++) { + RunSpecSectionStatus a = new RunSpecSectionStatus(statusValues[i]); + for (int j = 0; j < statusValues.length; j++) { + RunSpecSectionStatus b = new RunSpecSectionStatus(statusValues[j]); + + assertEquals("equals isn't communicative", a.equals(b), b.equals(a)); + assertEquals(a.equals(b), a.status == b.status); + assertEquals(a.equals(b), i == j); + } + } + } + + /** Test the compareTo operator **/ + public void testCompareTo() { + for (int i = 0; i < statusValues.length; i++) { + RunSpecSectionStatus a = new RunSpecSectionStatus(statusValues[i]); + for (int j = 0; j < statusValues.length; j++) { + RunSpecSectionStatus b = new RunSpecSectionStatus(statusValues[j]); + + assertTrue(a.compareTo(b) * b.compareTo(a) <= 0); + assertEquals(a.compareTo(b) == 0, a.equals(b)); + assertEquals(b.compareTo(a) == 0, a.equals(b)); + } + } + } + + /** Test the best and worst methods **/ + public void testBestWorst() { + RunSpecSectionStatus best = new RunSpecSectionStatus(); + best.makeBest(); + RunSpecSectionStatus worst = new RunSpecSectionStatus(); + worst.makeWorst(); + + for (int i = 0; i < statusValues.length; i++) { + RunSpecSectionStatus a; + + a = new RunSpecSectionStatus(statusValues[i]); + a.makeBestOfTwo(best); + assertTrue(a.equals(best)); + + a = new RunSpecSectionStatus(statusValues[i]); + a.makeBestOfTwo(worst); + assertTrue(a.compareTo(worst) >= 0); + + a = new RunSpecSectionStatus(statusValues[i]); + a.makeWorstOfTwo(best); + assertTrue(a.compareTo(best) <= 0); + + a = new RunSpecSectionStatus(statusValues[i]); + a.makeWorstOfTwo(worst); + assertTrue(a.equals(worst)); + } + } +} diff --git a/gov/epa/otaq/moves/master/gui/SDRMAction.java b/gov/epa/otaq/moves/master/gui/SDRMAction.java new file mode 100644 index 0000000..7bf8847 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/SDRMAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)SDRMAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Software Design/Reference Manual menu option. + * + * @author Cimulus + * @version 2007-01-01 +**/ +public class SDRMAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_SDRM = "sdrm-command"; + /** Constant action name. **/ + static final String NAME_SDRM = "MOVES Software Design/Reference Manual"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_SDRM = + "toolbarButtonGraphics/general/Help16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_SDRM = + "toolbarButtonGraphics/general/Help24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_SDRM = "MOVES Software Design/Reference Manual"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_SDRM = + "View MOVES Software Design/Reference Manual for help."; + + /** + * Implements the SDRM menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public SDRMAction() { + putValue(Action.NAME, NAME_SDRM); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_SDRM)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_SDRM)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_SDRM); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_SDRM); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_SDRM); + } +} diff --git a/gov/epa/otaq/moves/master/gui/SaveAction.java b/gov/epa/otaq/moves/master/gui/SaveAction.java new file mode 100644 index 0000000..8646d1d --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/SaveAction.java @@ -0,0 +1,46 @@ +/************************************************************************************************** + * @(#)SaveAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Save menu option. + * + * @author Cimulus + * @version 2003-03-06 +**/ +public class SaveAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_SAVE = "save-command"; + /** Constant action name. **/ + static final String NAME_SAVE = "Save"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_SAVE = "toolbarButtonGraphics/general/Save16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_SAVE = "toolbarButtonGraphics/general/Save24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_SAVE = "Save"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_SAVE = "Save active RunSpec"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_SAVE = 'S'; + + /** + * Implements the Save menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public SaveAction() { + putValue(Action.NAME, NAME_SAVE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_SAVE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_SAVE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_SAVE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_SAVE); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_SAVE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_SAVE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/SaveAsAction.java b/gov/epa/otaq/moves/master/gui/SaveAsAction.java new file mode 100644 index 0000000..aa07ee6 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/SaveAsAction.java @@ -0,0 +1,49 @@ +/************************************************************************************************** + * @(#)SaveAsAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES SaveAs menu option. + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class SaveAsAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_SAVE_AS = "save-as-command"; + /** Constant action name. **/ + static final String NAME_SAVE_AS = "Save As..."; + /** Constant path and file name for small icon. **/ + static final String SMALL_ICON_SAVE_AS = + "toolbarButtonGraphics/general/SaveAs16.gif"; + /** Constant path and file name for large icon. **/ + static final String LARGE_ICON_SAVE_AS = + "toolbarButtonGraphics/general/SaveAs24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_SAVE_AS = "Save As"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_SAVE_AS = + "Save active RunSpec as a different name"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_SAVE_AS = 'A'; + + /** + * Implements the SaveAs menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public SaveAsAction() { + putValue(Action.NAME, NAME_SAVE_AS); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_SAVE_AS)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_SAVE_AS)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_SAVE_AS); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_SAVE_AS); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_SAVE_AS)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_SAVE_AS); + } +} diff --git a/gov/epa/otaq/moves/master/gui/Scale.java b/gov/epa/otaq/moves/master/gui/Scale.java new file mode 100644 index 0000000..2055407 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/Scale.java @@ -0,0 +1,701 @@ +/************************************************************************************************** + * @(#)Scale.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.common.*; +import java.util.TreeMap; + +/** + * Class for MOVES Scale panel. The Scale panel contains three option boxes, Macroscale, to + * simulate at the county level and higher, the Mesoscale, to simulate links and Zones + * (sub county level), and the Microscale, to simulate small, highly detailed structures. + * There are two combo boxes for the input database selections when the Mesoscale or the + * Microscale options are selected. This class loads/saves information from/to the RunSpec. + * + * @author Wesley Faler + * @author Tim Hull + * @version 2014-07-29 +**/ +public class Scale extends JPanel implements ActionListener, RunSpecEditor { + /** National domain radio button **/ + JRadioButton nationalRadioButton; + /** Single county domain radio button **/ + JRadioButton countyRadioButton; + /** Project domain radio button **/ + JRadioButton projectRadioButton; + + /** Model related **/ + JRadioButton onroadRadioButton; + JRadioButton nonroadRadioButton; + + /** Inventory calculations radio button **/ + JRadioButton inventoryRadioButton; + /** Emission Rates calculations radio button **/ + JRadioButton emissionRatesRadioButton; + + /** Models of the last loaded runspec **/ + Models loadedModels = null; + /** Scale of the last loaded runspec **/ + ModelScale loadedScale = null; + /** Domain of the last loaded runspec **/ + ModelDomain loadedDomain = null; + + /** Scenario label. **/ + JLabel scenarioLabel; + /** Scenario text control. **/ + JTextField scenarioText; + + /** Warning about use with SIP results **/ + JPanel sipWarningPanel; + + JLabel nationalLabel; + JLabel countyLabel; + JLabel projectLabel; + JPanel countyWarningPanel; + JPanel projectWarningPanel; + + /** + * Constructs a Scale panel, also creates and sets the layouts of the controls. + **/ + public Scale() { + createAndArrangeControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Domain/Scale: "); + if(runspec.domain == ModelDomain.PROJECT) { + destination.append("Project\r\n"); + } else if(runspec.domain == ModelDomain.SINGLE_COUNTY) { + destination.append("County\r\n"); + } else { + destination.append("National\r\n"); + } + destination.append("Calculation Type: "); + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + destination.append("Emission Rates\r\n"); + destination.append("\tMOVESScenarioID: "); + String t = StringUtilities.safeGetString(runspec.scenarioID).trim(); + destination.append(t + "\r\n"); + //} else if(runspec.scale == ModelScale.MESOSCALE) { + // destination.append("\tMesoscale\r\n"); + //} else if (runspec.scale == ModelScale.MICROSCALE) { + // destination.append("\tMicroscale\r\n"); + } else { + destination.append("Inventory\r\n"); + } + destination.append("\r\n"); + } + + /** Creates and arranges all controls on this panel. **/ + public void createAndArrangeControls() { + JPanel panel2, panel3; + JLabel label4; + JLabel label5; + JPanel modelPanel; + JLabel modelLabel; + + modelPanel = new JPanel(); + + modelLabel = new JLabel("Model: "); + onroadRadioButton = new JRadioButton("Onroad"); + nonroadRadioButton = new JRadioButton("Nonroad"); + + panel2 = new JPanel(); + nationalRadioButton = new JRadioButton(); + nationalLabel = new JLabel(); + countyRadioButton = new JRadioButton(); + countyLabel = new JLabel(); + projectRadioButton = new JRadioButton(); + projectLabel = new JLabel(); + panel3 = new JPanel(); + inventoryRadioButton = new JRadioButton(); + label4 = new JLabel(); + emissionRatesRadioButton = new JRadioButton(); + label5 = new JLabel(); + + scenarioLabel = new JLabel("MOVESScenarioID:"); + scenarioLabel.setName("scenarioLabel"); + + scenarioText = new JTextField(40); + ToolTipHelper.add(scenarioText, + "The 40-character column MOVESScenarioID referenced in the rate output tables"); + scenarioText.setName("scenarioText"); + scenarioText.setColumns(40); + + //======== this ======== + JPanel result = new JPanel(); + result.setLayout(new BoxLayout(result, BoxLayout.Y_AXIS)); + + ImageIcon warningImage = null; + JLabel warningLabel = null; + JPanel warningPanel = null; + sipWarningPanel = null; + + // add model panel + { + ButtonGroup modelButtonGroup = new ButtonGroup(); + modelButtonGroup.add(onroadRadioButton); + modelButtonGroup.add(nonroadRadioButton); + onroadRadioButton.addActionListener(this); + nonroadRadioButton.addActionListener(this); + + modelPanel.setBorder(BorderFactory.createTitledBorder("Model")); + modelPanel.setLayout(new GridBagLayout()); + + ((GridBagLayout)modelPanel.getLayout()).columnWidths = new int[] {0, 0, 0}; + ((GridBagLayout)modelPanel.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)modelPanel.getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4}; + ((GridBagLayout)modelPanel.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + modelPanel.add(onroadRadioButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + JLabel onrdLable = new JLabel(); + onrdLable.setText(""); + modelPanel.add(onrdLable, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + modelPanel.add(nonroadRadioButton, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + JLabel nonrdLable = new JLabel(); + nonrdLable.setText(""); + modelPanel.add(nonrdLable, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + result.add(modelPanel); + } + + //======== panel2 ======== + { + panel2.setBorder(BorderFactory.createTitledBorder("Domain/Scale")); + panel2.setLayout(new GridBagLayout()); + ((GridBagLayout)panel2.getLayout()).columnWidths = new int[] {0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).rowHeights = new int[] {0, 0, 0, 0}; + ((GridBagLayout)panel2.getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4}; + ((GridBagLayout)panel2.getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 1.0E-4}; + + //---- nationalRadioButton ---- + nationalRadioButton.setText("National"); + panel2.add(nationalRadioButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label1 ---- + nationalLabel.setText("Use the default national database with default state and local allocation factors."); + panel2.add(nationalLabel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + warningImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + warningLabel = new JLabel( + "" + + "Caution: Do not use this scale setting for SIP or conformity
    " + + "analyses. The allocation factors and other defaults applied at
    " + + "the state or county level have not been verified against specific
    " + + "state or county data and do not meet regulatory requirements for
    " + + "SIPs and conformity determinations." + + "", + warningImage, JLabel.LEFT); + sipWarningPanel = new JPanel(); + sipWarningPanel.setLayout(new BoxLayout(sipWarningPanel, BoxLayout.X_AXIS)); + sipWarningPanel.add(warningLabel); + sipWarningPanel.add(Box.createHorizontalGlue()); + + panel2.add(sipWarningPanel, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- countyRadioButton ---- + countyRadioButton.setText("County"); + panel2.add(countyRadioButton, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label2 ---- + countyLabel.setText("Select or define a single county that is the entire domain."); + panel2.add(countyLabel, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + warningLabel = new JLabel( + "" + + "Note: Use this scale setting for SIP and regional conformity analysis.
    " + + "Use of this scale setting requires user-supplied local data for most
    " + + "activity and fleet inputs." + + "", + JLabel.LEFT); + countyWarningPanel = new JPanel(); + countyWarningPanel.setLayout(new BoxLayout(countyWarningPanel, BoxLayout.X_AXIS)); + countyWarningPanel.add(warningLabel); + countyWarningPanel.add(Box.createHorizontalGlue()); + + panel2.add(countyWarningPanel, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- projectRadioButton ---- + projectRadioButton.setText("Project"); + panel2.add(projectRadioButton, new GridBagConstraints(0, 4, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- label3 ---- + projectLabel.setText("Use project domain inputs."); + panel2.add(projectLabel, new GridBagConstraints(1, 4, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + warningLabel = new JLabel( + "" + + "Note: Use this scale setting for project-level analysis for conformity,
    " + + "NEPA, or any other regulatory purpose. Use of this scale setting requires
    " + + "user-supplied data at the link level for activity and fleet inputs that
    " + + "describe a particular transportation project." + + "", + JLabel.LEFT); + projectWarningPanel = new JPanel(); + projectWarningPanel.setLayout(new BoxLayout(projectWarningPanel, BoxLayout.X_AXIS)); + projectWarningPanel.add(warningLabel); + projectWarningPanel.add(Box.createHorizontalGlue()); + + panel2.add(projectWarningPanel, new GridBagConstraints(1, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + } + result.add(panel2); + + //======== panel3 ======== + { + panel3.setBorder(BorderFactory.createTitledBorder("Calculation Type")); + panel3.setLayout(new GridBagLayout()); + ((GridBagLayout)panel3.getLayout()).columnWidths = new int[] {0, 0, 0}; + ((GridBagLayout)panel3.getLayout()).rowHeights = new int[] {0, 0, 0}; + ((GridBagLayout)panel3.getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0E-4}; + ((GridBagLayout)panel3.getLayout()).rowWeights = new double[] {0.0, 0.0, 1.0E-4}; + + //---- inventoryRadioButton ---- + inventoryRadioButton.setText("Inventory"); + panel3.add(inventoryRadioButton, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 5), 0, 0)); + + //---- label4 ---- + label4.setText("Mass and/or Energy within a region and time span."); + panel3.add(label4, new GridBagConstraints(1, 0, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 5, 0), 0, 0)); + + //---- emissionRatesRadioButton ---- + emissionRatesRadioButton.setText("Emission Rates"); + panel3.add(emissionRatesRadioButton, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 5), 0, 0)); + + //---- label5 ---- + label5.setText("Mass and/or Energy per unit of activity."); + panel3.add(label5, new GridBagConstraints(1, 1, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + + panel3.add(scenarioLabel, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + panel3.add(scenarioText, new GridBagConstraints(1, 3, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 0, 0), 0, 0)); + } + result.add(panel3); + + //---- domainButtonGroup ---- + ButtonGroup domainButtonGroup = new ButtonGroup(); + domainButtonGroup.add(nationalRadioButton); + domainButtonGroup.add(countyRadioButton); + domainButtonGroup.add(projectRadioButton); + + //---- calculationButtonGroup ---- + ButtonGroup calculationButtonGroup = new ButtonGroup(); + calculationButtonGroup.add(inventoryRadioButton); + calculationButtonGroup.add(emissionRatesRadioButton); + + // Warning image and text + warningImage = new ImageIcon("gov/epa/otaq/moves/master/gui/images/dataExists.gif"); + warningLabel = new JLabel(); + warningLabel.setName("warningLabel"); + warningLabel = new JLabel( + "" + + "Caution: Changing these selections changes the contents of other
    " + + "input panels. These changes may include losing previous data contents." + + "", + warningImage, JLabel.LEFT); + warningPanel = new JPanel(); + warningPanel.setLayout(new BoxLayout(warningPanel, BoxLayout.X_AXIS)); + warningPanel.add(warningLabel); + warningPanel.add(Box.createHorizontalGlue()); + result.add(warningPanel); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 1; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + setLayout(new GridBagLayout()); + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + add(result, gbc); + + nationalRadioButton.setName("national"); + nationalRadioButton.addActionListener(this); + + countyRadioButton.setName("county"); + countyRadioButton.addActionListener(this); + + projectRadioButton.setName("project"); + projectRadioButton.addActionListener(this); + + inventoryRadioButton.setName("inventory"); + inventoryRadioButton.addActionListener(this); + + emissionRatesRadioButton.setName("emissionrates"); + emissionRatesRadioButton.addActionListener(this); + } + + /** + * Saves the scale to a RunSpec. + * @param runspec the RunSpec to save the scale to. + **/ + public void saveToRunSpec(RunSpec runspec) { + runspec.scenarioID = scenarioText.getText().trim(); + + if(emissionRatesRadioButton.isSelected()) { + runspec.scale = ModelScale.MESOSCALE_LOOKUP; + runspec.outputPopulation = true; + runspec.outputVMTData = true; + runspec.doNotPerformFinalAggregation = false; + runspec.outputEmissionsBreakdownSelection.estimateUncertainty = false; + runspec.outputEmissionsBreakdownSelection.emissionProcess = true; + + runspec.outputTimeStep = OutputTimeStep.HOUR; + runspec.outputFactors.timeMeasurementSystem = TimeMeasurementSystem.HOURS; + } else { + runspec.scale = ModelScale.MACROSCALE; + } + loadedScale = runspec.scale; + + if(projectRadioButton.isSelected()) { + runspec.domain = ModelDomain.PROJECT; + runspec.outputTimeStep = OutputTimeStep.HOUR; + runspec.outputFactors.timeMeasurementSystem = TimeMeasurementSystem.HOURS; + runspec.geographicOutputDetail = GeographicOutputDetailLevel.LINK; + runspec.timeSpan.aggregateBy = OutputTimeStep.HOUR; + } else if(countyRadioButton.isSelected()) { + runspec.domain = ModelDomain.SINGLE_COUNTY; + } else { + runspec.domain = ModelDomain.NATIONAL_ALLOCATION; + } + loadedDomain = runspec.domain; + + if ( onroadRadioButton.isSelected()) { + runspec.models.clear(); + runspec.models.add(Model.ONROAD); + } else if ( nonroadRadioButton.isSelected()) { + runspec.models.clear(); + runspec.models.add(Model.NONROAD); + } + loadedModels = runspec.models; + } + + /** + * Loads the scale from a RunSpec. + * @param runspec the RunSpec to get the scale from. + **/ + public void loadFromRunSpec(RunSpec runspec) { + loadedModels = runspec.models; + loadedScale = runspec.scale; + loadedDomain = runspec.domain; + + onroadRadioButton.setSelected(false); + nonroadRadioButton.setSelected(false); + nationalRadioButton.setSelected(false); + countyRadioButton.setSelected(false); + projectRadioButton.setSelected(false); + inventoryRadioButton.setSelected(false); + emissionRatesRadioButton.setSelected(false); + + Models.ModelCombination mc = Models.evaluateModels(loadedModels); + switch( mc) { + case M1: + onroadRadioButton.setSelected(true); + break; + case M2: + nonroadRadioButton.setSelected(true); + break; + default: + onroadRadioButton.setSelected(true); + break; + } + + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP) { + emissionRatesRadioButton.setSelected(true); + } else { + inventoryRadioButton.setSelected(true); + } + + if(runspec.domain == ModelDomain.PROJECT) { + projectRadioButton.setSelected(true); + } else if(runspec.domain == ModelDomain.SINGLE_COUNTY) { + countyRadioButton.setSelected(true); + } else { + nationalRadioButton.setSelected(true); + } + + scenarioText.setText(StringUtilities.safeGetString(runspec.scenarioID).trim()); + + assessSituation(); + } + + /** Enable/Disable controls based on their interaction rules **/ + void assessSituation() { + /* + if(emissionRatesRadioButton.isSelected()) { + projectRadioButton.setEnabled(false); + if(projectRadioButton.isSelected()) { + projectRadioButton.setSelected(false); + nationalRadioButton.setSelected(true); + } + } else if(projectRadioButton.isSelected()) { + emissionRatesRadioButton.setEnabled(false); + if(emissionRatesRadioButton.isSelected()) { + emissionRatesRadioButton.setSelected(false); + inventoryRadioButton.setSelected(true); + } + } else { + emissionRatesRadioButton.setEnabled(true); + projectRadioButton.setEnabled(true); + } + */ + + boolean onroadSelected = onroadRadioButton.isSelected(); + countyRadioButton.setEnabled(onroadSelected); + projectRadioButton.setEnabled(onroadSelected); + emissionRatesRadioButton.setEnabled(onroadSelected); + if(onroadSelected) { + sipWarningPanel.setVisible(true); + nationalLabel.setVisible(true); + countyLabel.setVisible(true); + projectLabel.setVisible(true); + countyWarningPanel.setVisible(true); + projectWarningPanel.setVisible(true); + } else { + sipWarningPanel.setVisible(false); + nationalLabel.setVisible(false); + countyLabel.setVisible(false); + projectLabel.setVisible(false); + countyWarningPanel.setVisible(false); + projectWarningPanel.setVisible(false); + } + + boolean shouldUseScenario = emissionRatesRadioButton.isSelected(); + scenarioLabel.setEnabled(shouldUseScenario); + scenarioText.setEnabled(shouldUseScenario); + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + boolean isOK = true; + + Models.ModelCombination mc = Models.evaluateModels(runspec.models); + + switch (mc) { + case M1: // ONROAD + + // When using emission rates, a scenario ID must be provided. + if(runspec.scale == ModelScale.MESOSCALE_LOOKUP || emissionRatesRadioButton.isSelected()) { + String t = StringUtilities.safeGetString(runspec.scenarioID).trim(); + if(t.length() <= 0) { + isOK = false; + } + } + + if((nationalRadioButton.isSelected() || countyRadioButton.isSelected() + || projectRadioButton.isSelected()) + && (inventoryRadioButton.isSelected() + || emissionRatesRadioButton.isSelected()) + ) { + // Nothing to do here + } else { + isOK = false; + } + break; + case M2: // NONROAD + if ( !nationalRadioButton.isSelected() || !inventoryRadioButton.isSelected()) + isOK = false; + break; + default: + break; + } + + RunSpecSectionStatus status = new RunSpecSectionStatus(isOK?RunSpecSectionStatus.OK:RunSpecSectionStatus.NOT_READY); + sections.remove(getName()); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.scale = ModelScale.MACROSCALE; + runspec.domain = ModelDomain.NATIONAL_ALLOCATION; + runspec.scenarioID = ""; + runspec.models.add(Model.ONROAD); + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.DEFAULTS); + sections.put(getName(),status); + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + // Nothing special to do here + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Handles a user's action. + * @param e The event caused by the user's action. + **/ + public void actionPerformed(ActionEvent e) { + if(e.getSource() == inventoryRadioButton) { + processInventoryButton(); + } else if(e.getSource() == emissionRatesRadioButton) { + processEmissionRatesButton(); + } else if(e.getSource() == nationalRadioButton) { + processNationalButton(); + } else if(e.getSource() == countyRadioButton) { + processCountyButton(); + } else if(e.getSource() == projectRadioButton) { + processProjectButton(); + } else if (e.getSource() == onroadRadioButton) { + processOnroadButton(); + } else if (e.getSource() == nonroadRadioButton) { + processNonroadButton(); + } + assessSituation(); + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + + private void processNonroadButton() { + loadedModels.getModelList().clear(); + loadedModels.add(Model.NONROAD); + MOVESNavigation.singleton.onModelsChange(this,loadedModels); + } + + private void processOnroadButton() { + loadedModels.getModelList().clear(); + loadedModels.add(Model.ONROAD); + MOVESNavigation.singleton.onModelsChange(this,loadedModels); + } + + /** + * Handles the Inventory button. + **/ + public void processInventoryButton() { + if(loadedScale != ModelScale.MACROSCALE) { + MOVESNavigation.singleton.onScaleChange(this,ModelScale.MACROSCALE); + loadedScale = ModelScale.MACROSCALE; + } + } + + /** + * Handles the Emission Rates button. + **/ + public void processEmissionRatesButton() { + if(loadedScale != ModelScale.MESOSCALE_LOOKUP) { + MOVESNavigation.singleton.onScaleChange(this,ModelScale.MESOSCALE_LOOKUP); + loadedScale = ModelScale.MESOSCALE_LOOKUP; + } + } + + /** + * Handles the National button. + **/ + public void processNationalButton() { + if(loadedDomain != ModelDomain.NATIONAL_ALLOCATION) { + MOVESNavigation.singleton.onDomainChange(this,ModelDomain.NATIONAL_ALLOCATION); + loadedDomain = ModelDomain.NATIONAL_ALLOCATION; + } + } + + /** + * Handles the County button. + **/ + public void processCountyButton() { + if(loadedDomain != ModelDomain.SINGLE_COUNTY) { + MOVESNavigation.singleton.onDomainChange(this,ModelDomain.SINGLE_COUNTY); + loadedDomain = ModelDomain.SINGLE_COUNTY; + } + } + + /** + * Handles the Project button. + **/ + public void processProjectButton() { + if(loadedDomain != ModelDomain.PROJECT) { + MOVESNavigation.singleton.onDomainChange(this,ModelDomain.PROJECT); + loadedDomain = ModelDomain.PROJECT; + } + } + + /** + * Update current selections to be consistent with a newly selected Model. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + // Nothing to do here + return null; + } +} diff --git a/gov/epa/otaq/moves/master/gui/StopAction.java b/gov/epa/otaq/moves/master/gui/StopAction.java new file mode 100644 index 0000000..4cb9d7a --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/StopAction.java @@ -0,0 +1,45 @@ +/************************************************************************************************** + * @(#)StopAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES Stop menu option. + * + * @author Cimulus + * @version 2003-08-21 +**/ +public class StopAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_STOP = "stop-command"; + /** Constant action name. **/ + static final String NAME_STOP = "Stop"; + /** Constant path and file name for small stop action icon. **/ + static final String SMALL_ICON_STOP = "toolbarButtonGraphics/media/Stop16.gif"; + /** Constant path and file name for large stop action icon. **/ + static final String LARGE_ICON_STOP = "toolbarButtonGraphics/media/Stop24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_STOP = "Stop"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_STOP = "Stop execution of active RunSpec"; +// static final int MNEMONIC_KEY_STOP = 'A'; + + /** + * Implements the Stop menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public StopAction() { + putValue(Action.NAME, NAME_STOP); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_STOP)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_STOP)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_STOP); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_STOP); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_STOP)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_STOP); + } +} diff --git a/gov/epa/otaq/moves/master/gui/SummaryReportAction.java b/gov/epa/otaq/moves/master/gui/SummaryReportAction.java new file mode 100644 index 0000000..4a7721e --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/SummaryReportAction.java @@ -0,0 +1,39 @@ +/************************************************************************************************** + * @(#)SummaryReportAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES summary report menu option. + * + * @author EPA - Mitch C. + * @version 2005-10-03 +**/ +public class SummaryReportAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_RUN_SCRIPT = "summary report command"; + /** Constant action name. **/ + static final String NAME_RUN_SCRIPT = "Produce Summary Report"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_RUN_SCRIPT = "Summary Report"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_RUN_SCRIPT = "Produce Summary Report"; +// static final int MNEMONIC_KEY_RUN_SCRIPT = 'S'; + + /** + * Implements the Run Script menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public SummaryReportAction() { + putValue(Action.NAME, NAME_RUN_SCRIPT); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_RUN_SCRIPT); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_RUN_SCRIPT); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_RUN_SCRIPT); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_RUN_SCRIPT); + } +} diff --git a/gov/epa/otaq/moves/master/gui/SummaryReporter.java b/gov/epa/otaq/moves/master/gui/SummaryReporter.java new file mode 100644 index 0000000..1f76847 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/SummaryReporter.java @@ -0,0 +1,2034 @@ + /************************************************************************************************** + * @(#)SummaryReporter.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.io.*; +import java.util.*; +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.*; +import javax.swing.*; +import java.awt.*; +import java.awt.event.*; +import java.sql.*; + +/** + * @author EPA-Mitch C. + * @author Wesley Faler + * @author Ed Glover Wm Aikman NO NO2 SO2 + * @author Tim Hull + * @version 2011-09-10 +**/ +public class SummaryReporter { + /** the JFrame to display GUI components in **/ + JFrame win; + /** connection to the MOVESOutput database **/ + Connection oConn; + /** the run specification which may be assumed was + used to produce the MOVESOutput database **/ + RunSpec runSpec; + /** list of all possible ReportClassificationColumns **/ + ArrayList reportClassificationColumns; + /** a table of pollutant column names stored as a TreeMap + * key is pollutant database ID, object is column name **/ + TreeMap polColumnNames; + + /** the emissionProcess to be reported, null value means to sum all processes **/ + Integer emissionProcess; + /** the report description **/ + String reportDescription = "Summary Report"; + /** saved value of report description **/ + // storing such items here implies all objects of this class will + // use this same location, only one will exist at a time + static String savedReportDescription; + /** the base name for the output tables and files **/ + String baseReportTableName = "SummaryReport"; + /** saved value of the base name for output tables and files **/ + static String savedBaseReportTableName; + /** the name of the header report output table **/ + String headerTableName; + /** the name of the report body output table **/ + String bodyTableName; + /** the name of the category field value decoding table **/ + String decodeTableName; + /** an ordered list of MOVES run numbers to be included in the report **/ + ArrayList runNumSelections = new ArrayList(); + /** list of MOVES run numbers available to be selected to be included in the report **/ + ArrayList runNumbers ; + /** list of Strings to be displayed for run numbers available to be included in the report **/ + ArrayList runDisplayStrings; + /** an ordered list of category fields to be used in the report **/ + ArrayList categoryFieldSelections = new ArrayList(); + /** an ordered list of pollutant columns to be included in the report **/ + ArrayList pollutantSelections = new ArrayList(); + /** a list of classification columns appropriate to run spec **/ + ArrayList categories = new ArrayList(); + /** a TreeSet of pollutant names included in runspec for the selected process **/ + TreeSet pollutants = new TreeSet(); + /** header line for report header **/ + String headerColumnHeaderLine; + /** vector holding report header data **/ + Vector headerVector; + /** header line for report body **/ + String bodyColumnHeaderLine; + /** vector holding report body data **/ + Vector bodyVector; + /** header line for report decode **/ + String decodeColumnHeaderLine; + /** vector holding report decode data **/ + Vector decodeVector; + /** indication whether or not distance is to be included in the report **/ + boolean isDistanceIncluded; + // report class code + /** report parameter dialog box **/ + ReportParamGetter reportParamGetter; + /** indicates status of the report parameter dialog 0 = cancel 1 = ok **/ + int reportDialogResult = 0; + private class ReportParamGetter extends JDialog { + JLabel screenHeader; + JLabel reportDescriptionLabel; + JTextField reportDescriptionField; + JLabel reportTableNameLabel; + JTextField reportTableNameField; + JLabel runNumLabel; + JLabel categoryLabel; + JLabel dataItemsLabel; + JScrollPane runNumScrollPane; + JList runNumList; + JScrollPane categoryScrollPane; + JList categoryList; + JScrollPane dataItemsScrollPane; + JList dataItemsList; + JPanel runNumAddPanel; + JButton runNumAdd; + JButton runNumAddAll; + JPanel categoryAddPanel; + JButton categoryAdd; + JButton categoryAddAll; + JPanel dataItemsAddPanel; + JButton dataItemsAdd; + JButton dataItemsAddAll; + JLabel runNumSelectionLabel; + JLabel categorySelectionLabel; + JLabel dataItemsSelectionLabel; + JScrollPane runNumSelectionScrollPane; + JList runNumSelectionList; + JScrollPane categorySelectionScrollPane; + JList categorySelectionList; + JPanel categoryUpDownPanel; + JButton categoryUp; + JButton categoryDown; + JScrollPane dataItemsSelectionScrollPane; + JList dataItemsSelectionList; + JPanel dataItemsUpDownPanel; + JButton dataItemsUp; + JButton dataItemsDown; + JPanel runNumRemovePanel; + JButton runNumRemove; + JButton runNumRemoveAll; + JPanel categoryRemovePanel; + JButton categoryRemove; + JButton categoryRemoveAll; + JPanel dataItemsRemovePanel; + JButton dataItemsRemove; + JButton dataItemsRemoveAll; + JPanel OKCancelPanel; + JButton okButton; + JButton cancelButton; + DefaultListModel runNumSelectionModel; + DefaultListModel categorySelectionModel; + DefaultListModel dataItemsSelectionModel; + + public ReportParamGetter(JFrame win) { + super(win,"Specify Parameters for Summary Report"); + createControls(); + arrangeControls(); + } + + private void createControls() { + // Based on code generated by JFormDesigner + // Modified to initialize run data from MOVES DB + String eprocName = null; + if (emissionProcess == null) { + eprocName = "Total of All"; + } else { + eprocName = EmissionProcess.findByID(emissionProcess.intValue()).processName; + } + screenHeader = new JLabel("Specify Report for Emission Process: " + eprocName); + reportDescriptionLabel = new JLabel("Report Description: "); + reportDescriptionField = new JTextField(reportDescription); + reportTableNameLabel = new JLabel("Report Table Name: "); + reportTableNameField = new JTextField(baseReportTableName); + runNumLabel = new JLabel("Run Number(s)"); + categoryLabel = new JLabel("Categories"); + dataItemsLabel = new JLabel("Data Items"); + runNumScrollPane = new JScrollPane(); + runNumList = new JList(runDisplayStrings.toArray(new String[0])); + runNumList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + runNumList.setSelectedIndex(runDisplayStrings.size()-1); + runNumAddPanel = new JPanel(); + runNumAdd = new JButton("Add"); + runNumAdd.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + add(runNumList,runNumSelectionList); + } + }); + runNumAddAll = new JButton("Add All"); + runNumAddAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + addAll(runNumList,runNumSelectionList); + } + }); + categoryScrollPane = new JScrollPane(); + categoryList = new JList(categories.toArray(new String[0])); + categoryList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + categoryAddPanel = new JPanel(); + categoryAdd = new JButton("Add"); + categoryAdd.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + add(categoryList,categorySelectionList); + } + }); + categoryAddAll = new JButton("Add All"); + categoryAddAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + addAll(categoryList,categorySelectionList); + } + }); + dataItemsScrollPane = new JScrollPane(); + dataItemsList = new JList(pollutants.toArray(new String[0])); + dataItemsList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + dataItemsAddPanel = new JPanel(); + dataItemsAdd = new JButton("Add"); + dataItemsAdd.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + add(dataItemsList,dataItemsSelectionList); + } + }); + dataItemsAddAll = new JButton("Add All"); + dataItemsAddAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + addAll(dataItemsList,dataItemsSelectionList); + } + }); + runNumSelectionLabel = new JLabel("Selection"); + categorySelectionLabel = new JLabel("Selection"); + dataItemsSelectionLabel = new JLabel("Selection"); + runNumSelectionScrollPane = new JScrollPane(); + runNumSelectionModel = new DefaultListModel(); + runNumSelectionList = new JList(runNumSelectionModel); + runNumRemovePanel = new JPanel(); + runNumRemove = new JButton("Remove"); + runNumRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + remove(runNumSelectionList); + } + }); + runNumRemoveAll = new JButton("Remove All"); + runNumRemoveAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + removeAll(runNumSelectionList); + } + }); + categorySelectionScrollPane = new JScrollPane(); + categorySelectionModel = new DefaultListModel(); + categorySelectionList = new JList(categorySelectionModel); + categoryRemovePanel = new JPanel(); + categoryRemove = new JButton("Remove"); + categoryRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + remove(categorySelectionList); + } + }); + categoryRemoveAll = new JButton("Remove All"); + categoryRemoveAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + removeAll(categorySelectionList); + } + }); + dataItemsSelectionScrollPane = new JScrollPane(); + dataItemsSelectionModel = new DefaultListModel(); + dataItemsSelectionList = new JList(dataItemsSelectionModel); + dataItemsRemovePanel = new JPanel(); + dataItemsRemove = new JButton("Remove"); + dataItemsRemove.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + remove(dataItemsSelectionList); + } + }); + dataItemsRemoveAll = new JButton("Remove All"); + dataItemsRemoveAll.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + removeAll(dataItemsSelectionList); + } + }); + categoryUpDownPanel = new JPanel(); + categoryUp = new JButton("\u2191"); + categoryUp.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + up(categorySelectionList); + } + }); + categoryDown = new JButton("\u2193"); + categoryDown.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + down(categorySelectionList); + } + }); + dataItemsUpDownPanel = new JPanel(); + dataItemsUp = new JButton("\u2191"); + dataItemsUp.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + up(dataItemsSelectionList); + } + }); + dataItemsDown = new JButton("\u2193"); + dataItemsDown.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + down(dataItemsSelectionList); + } + }); + OKCancelPanel = new JPanel(); + okButton = new JButton("OK"); + okButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + ok(); + } + }); + okButton.setName("okButton"); + cancelButton = new JButton("Cancel"); + cancelButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + cancel(); + } + }); + cancelButton.setName("cancelButton"); + + if (savedReportDescription != null) { + reportDescriptionField.setText(savedReportDescription) ; + } + if (savedBaseReportTableName != null) { + reportTableNameField.setText(savedBaseReportTableName) ; + } + } + + private void arrangeControls() { + // Based on code generated by JFormDesigner + // Modified to only lay out (objects initialized in createControls() ) + //======== this ======== + setLayout(new GridBagLayout()); + ((GridBagLayout)getContentPane().getLayout()).columnWidths = new int[] {3, 112, 152, 42, 262, 42, 262, 42, 1, 0}; + ((GridBagLayout)getContentPane().getLayout()).rowHeights = new int[] {25, 25, 25, 12, 0, 130, 0, 12, 0, 129, 0, 22, 0, 10, 0}; + ((GridBagLayout)getContentPane().getLayout()).columnWeights = new double[] {0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0E-4}; + ((GridBagLayout)getContentPane().getLayout()).rowWeights = new double[] {0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0E-4}; + + //---- screenHeader ---- + add(screenHeader, new GridBagConstraints(1, 0, 7, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- reportDescriptionLabel ---- + add(reportDescriptionLabel, new GridBagConstraints(1, 1, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + add(reportDescriptionField, new GridBagConstraints(2, 1, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- reportTableNameLabel ---- + add(reportTableNameLabel, new GridBagConstraints(1, 2, 3, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + add(reportTableNameField, new GridBagConstraints(2, 2, 6, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- runNumLabel ---- + add(runNumLabel, new GridBagConstraints(1, 4, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- categoryLabel ---- + add(categoryLabel, new GridBagConstraints(4, 4, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- dataItemsLabel ---- + add(dataItemsLabel, new GridBagConstraints(6, 4, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== runNumScrollPane ======== + { + runNumScrollPane.setViewportView(runNumList); + } + add(runNumScrollPane, new GridBagConstraints(1, 5, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== categoryScrollPane ======== + { + categoryScrollPane.setViewportView(categoryList); + } + add(categoryScrollPane, new GridBagConstraints(4, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== dataItemsScrollPane ======== + { + dataItemsScrollPane.setViewportView(dataItemsList); + } + add(dataItemsScrollPane, new GridBagConstraints(6, 5, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== runNumAddPanel ======== + { + runNumAddPanel.setLayout(new BoxLayout(runNumAddPanel, BoxLayout.X_AXIS)); + runNumAddPanel.add(new JPanel(null)); + + //---- runNumAdd ---- + runNumAddPanel.add(runNumAdd); + runNumAddPanel.add(new JPanel(null)); + + //---- runNumAddAll ---- + runNumAddPanel.add(runNumAddAll); + runNumAddPanel.add(new JPanel(null)); + } + add(runNumAddPanel, new GridBagConstraints(1, 6, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== categoryAddPanel ======== + { + categoryAddPanel.setLayout(new BoxLayout(categoryAddPanel, BoxLayout.X_AXIS)); + categoryAddPanel.add(new JPanel(null)); + + //---- categoryAdd ---- + categoryAddPanel.add(categoryAdd); + categoryAddPanel.add(new JPanel(null)); + + //---- categoryAddAll ---- + categoryAddPanel.add(categoryAddAll); + categoryAddPanel.add(new JPanel(null)); + } + add(categoryAddPanel, new GridBagConstraints(4, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== dataItemsAddPanel ======== + { + dataItemsAddPanel.setLayout(new BoxLayout(dataItemsAddPanel, BoxLayout.X_AXIS)); + dataItemsAddPanel.add(new JPanel(null)); + + //---- dataItemsAdd ---- + dataItemsAddPanel.add(dataItemsAdd); + dataItemsAddPanel.add(new JPanel(null)); + + //---- dataItemsAddAll ---- + dataItemsAddPanel.add(dataItemsAddAll); + dataItemsAddPanel.add(new JPanel(null)); + } + add(dataItemsAddPanel, new GridBagConstraints(6, 6, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- runNumSelectionLabel ---- + add(runNumSelectionLabel, new GridBagConstraints(1, 8, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- categorySelectionLabel ---- + add(categorySelectionLabel, new GridBagConstraints(4, 8, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //---- dataItemsSelectionLabel ---- + add(dataItemsSelectionLabel, new GridBagConstraints(6, 8, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== runNumSelectionScrollPane ======== + { + runNumSelectionScrollPane.setViewportView(runNumSelectionList); + } + add(runNumSelectionScrollPane, new GridBagConstraints(1, 9, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== categorySelectionScrollPane ======== + { + categorySelectionScrollPane.setViewportView(categorySelectionList); + } + add(categorySelectionScrollPane, new GridBagConstraints(4, 9, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== categoryUpDownPanel ======== + { + categoryUpDownPanel.setLayout(new BoxLayout(categoryUpDownPanel, BoxLayout.Y_AXIS)); + categoryUpDownPanel.add(new JPanel(null)); + + //---- categoryUp ---- + categoryUpDownPanel.add(categoryUp); + categoryUpDownPanel.add(new JPanel(null)); + + //---- categoryDown ---- + categoryUpDownPanel.add(categoryDown); + categoryUpDownPanel.add(new JPanel(null)); + } + add(categoryUpDownPanel, new GridBagConstraints(5, 9, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== dataItemsSelectionScrollPane ======== + { + dataItemsSelectionScrollPane.setViewportView(dataItemsSelectionList); + } + add(dataItemsSelectionScrollPane, new GridBagConstraints(6, 9, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== dataItemsUpDownPanel ======== + { + dataItemsUpDownPanel.setLayout(new BoxLayout(dataItemsUpDownPanel, BoxLayout.Y_AXIS)); + dataItemsUpDownPanel.add(new JPanel(null)); + + //---- dataItemsUp ---- + dataItemsUpDownPanel.add(dataItemsUp); + dataItemsUpDownPanel.add(new JPanel(null)); + + //---- dataItemsDown ---- + dataItemsUpDownPanel.add(dataItemsDown); + dataItemsUpDownPanel.add(new JPanel(null)); + } + add(dataItemsUpDownPanel, new GridBagConstraints(7, 9, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== runNumRemovePanel ======== + { + runNumRemovePanel.setLayout(new BoxLayout(runNumRemovePanel, BoxLayout.X_AXIS)); + runNumRemovePanel.add(new JPanel(null)); + + //---- runNumRemove ---- + runNumRemovePanel.add(runNumRemove); + runNumRemovePanel.add(new JPanel(null)); + + //---- runNumRemoveAll ---- + runNumRemovePanel.add(runNumRemoveAll); + runNumRemovePanel.add(new JPanel(null)); + } + add(runNumRemovePanel, new GridBagConstraints(1, 10, 2, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== categoryRemovePanel ======== + { + categoryRemovePanel.setLayout(new BoxLayout(categoryRemovePanel, BoxLayout.X_AXIS)); + categoryRemovePanel.add(new JPanel(null)); + + //---- categoryRemove ---- + categoryRemovePanel.add(categoryRemove); + categoryRemovePanel.add(new JPanel(null)); + + //---- categoryRemoveAll ---- + categoryRemovePanel.add(categoryRemoveAll); + categoryRemovePanel.add(new JPanel(null)); + } + add(categoryRemovePanel, new GridBagConstraints(4, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== dataItemsRemovePanel ======== + { + dataItemsRemovePanel.setLayout(new BoxLayout(dataItemsRemovePanel, BoxLayout.X_AXIS)); + dataItemsRemovePanel.add(new JPanel(null)); + + //---- dataItemsRemove ---- + dataItemsRemovePanel.add(dataItemsRemove); + dataItemsRemovePanel.add(new JPanel(null)); + + //---- dataItemsRemoveAll ---- + dataItemsRemovePanel.add(dataItemsRemoveAll); + dataItemsRemovePanel.add(new JPanel(null)); + } + add(dataItemsRemovePanel, new GridBagConstraints(6, 10, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + + //======== OKCancelPanel ======== + { + OKCancelPanel.setLayout(new BoxLayout(OKCancelPanel, BoxLayout.X_AXIS)); + OKCancelPanel.add(new JPanel(null)); + + //---- okButton ---- + OKCancelPanel.add(okButton); + + //---- cancelButton ---- + OKCancelPanel.add(cancelButton); + OKCancelPanel.add(new JPanel(null)); + } + add(OKCancelPanel, new GridBagConstraints(1, 12, 7, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(0, 0, 2, 2), 0, 0)); + // JFormDesigner - End of component initialization //GEN-END:initComponents + } + + private void add(JList from, JList to) + { + java.util.List selection = from.getSelectedValuesList(); + DefaultListModel model = (DefaultListModel) to.getModel(); + for(Iterator i=selection.iterator();i.hasNext();) { + boolean foundMatch = false; + T nextSelectedItem = i.next(); + for(int j=0;j void addAll(JList from, JList to) + { + ListModel fromModel = from.getModel(); + DefaultListModel toModel = (DefaultListModel)to.getModel(); + toModel.clear(); + for(int i=0;i void remove(JList from) + { + java.util.List selectedValues = from.getSelectedValuesList(); + DefaultListModel model = (DefaultListModel)from.getModel(); + for(Iterator i=selectedValues.iterator();i.hasNext();) { + model.removeElement(i.next()); + } + } + + private void removeAll(JList from) + { + DefaultListModel model = (DefaultListModel) from.getModel(); + model.clear(); + } + + private void up(JList from) + { + java.util.List selectedValues = from.getSelectedValuesList(); + DefaultListModel model = (DefaultListModel) from.getModel(); + int startInsertionAt = 0; + if (from.getSelectedIndices()[0] >= 1) { + startInsertionAt = from.getSelectedIndices()[0] - 1; + } + for(Iterator i=selectedValues.iterator();i.hasNext();) { + model.removeElement(i.next()); + } + int index = 0; + for(Iterator i=selectedValues.iterator();i.hasNext();index++) { + model.add(index+startInsertionAt, i.next()); + } + from.setSelectionInterval(startInsertionAt,startInsertionAt+(selectedValues.size())-1); + } + + private void down(JList from) + { + java.util.List selectedValues = from.getSelectedValuesList(); + DefaultListModel model = (DefaultListModel) from.getModel(); + int startInsertionAt = model.getSize() - selectedValues.size(); + if(from.getSelectedIndices()[selectedValues.size() - 1] + 2 - selectedValues.size() < startInsertionAt) + startInsertionAt = from.getSelectedIndices()[selectedValues.size() - 1] + 2 - selectedValues.size(); + for(Iterator i=selectedValues.iterator();i.hasNext();) { + model.removeElement(i.next()); + } + int index = 0; + for(Iterator i=selectedValues.iterator();i.hasNext();index++) { + model.add(index+startInsertionAt, i.next()); + } + from.setSelectionInterval(startInsertionAt,startInsertionAt+(selectedValues.size())-1); + } + + private void ok() { + // extract report title + reportDescription = reportParamGetter.reportDescriptionField.getText(); + savedReportDescription = reportDescription; + + // extract report base table name + // insure not null, at least 2 chars long, and first char is non-blank + baseReportTableName = reportParamGetter.reportTableNameField.getText(); + if (baseReportTableName == null || baseReportTableName.length()<2 + || (baseReportTableName.contains(" ") && !baseReportTableName.endsWith(" "))) { + JOptionPane.showMessageDialog(win, + "Please enter valid base table name for summary report. Table names must be a single word and may not contain spaces.", + "Base Table Name Input Error", + JOptionPane.ERROR_MESSAGE); + return; + } + baseReportTableName = baseReportTableName.trim(); + savedBaseReportTableName = baseReportTableName; + + // extract run number selections, must be at least one + //*****get all from runNumSelectionList and push to runs + ListModel in = reportParamGetter.runNumSelectionList.getModel(); + String[] runs = new String[in.getSize()]; + for(int i=0; i sn = reportParamGetter. categorySelectionList.getModel(); + String[] catSelections = new String[sn.getSize()]; + for(int i=0; i headerReportList; + JScrollPane bodyScrollPane; + JList bodyReportList; + JScrollPane decodeScrollPane; + JList decodeReportList; + JButton saveButton; + JButton printButton; + JButton closeButton; + + public ScreenReport(JFrame win) { + super(win,"Screen Report"); + createControls(); + arrangeControls(); + } + + private void createControls() { + Font screenReportFont = new Font("monospaced", Font.PLAIN, 12); + srTabbedPane = new JTabbedPane(); + + headerReportList = new JList(headerVector); + headerReportList.setFont(screenReportFont); + headerScrollPane = new JScrollPane(headerReportList); + JLabel columnHeaderLineForHeader = new JLabel(headerColumnHeaderLine); + columnHeaderLineForHeader.setFont(screenReportFont); + headerScrollPane.setColumnHeaderView(columnHeaderLineForHeader); + headerScrollPane.setHorizontalScrollBar(new JScrollBar()); + headerScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants. + HORIZONTAL_SCROLLBAR_AS_NEEDED); + headerScrollPane.setVerticalScrollBar(new JScrollBar()); + headerScrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants. + VERTICAL_SCROLLBAR_AS_NEEDED); + srTabbedPane.addTab("Header", headerScrollPane); + + bodyReportList = new JList(bodyVector); + bodyReportList.setFont(screenReportFont); + bodyScrollPane = new JScrollPane(bodyReportList); + JLabel columnHeaderLineForBody = new JLabel(bodyColumnHeaderLine); + columnHeaderLineForBody.setFont(screenReportFont); + bodyScrollPane.setColumnHeaderView(columnHeaderLineForBody); + + bodyScrollPane.setHorizontalScrollBar(new JScrollBar()); + bodyScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants. + HORIZONTAL_SCROLLBAR_AS_NEEDED); + bodyScrollPane.setVerticalScrollBar(new JScrollBar()); + bodyScrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants. + VERTICAL_SCROLLBAR_AS_NEEDED); + srTabbedPane.addTab("Body", bodyScrollPane); + srTabbedPane.setSelectedComponent(bodyScrollPane); + + decodeReportList = new JList(decodeVector); + decodeReportList.setFont(screenReportFont); + decodeScrollPane = new JScrollPane(decodeReportList); + decodeColumnHeaderLine = " Category Field Value Description"; + JLabel columnHeaderLineForDecode = new JLabel(decodeColumnHeaderLine); + columnHeaderLineForDecode.setFont(screenReportFont); + decodeScrollPane.setColumnHeaderView(columnHeaderLineForDecode); + decodeScrollPane.setHorizontalScrollBar(new JScrollBar()); + decodeScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants. + HORIZONTAL_SCROLLBAR_AS_NEEDED); + decodeScrollPane.setVerticalScrollBar(new JScrollBar()); + decodeScrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants. + VERTICAL_SCROLLBAR_AS_NEEDED); + srTabbedPane.addTab("Decode", decodeScrollPane); + + saveButton = new JButton("Save"); + saveButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + save(); + } + }); + saveButton.setName("saveButton"); + printButton = new JButton("Print"); + printButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + print(); + } + }); + printButton.setName("printButton"); + closeButton = new JButton("Close"); + closeButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + dispose(); + } + }); + closeButton.setName("closeButton"); + } + + private void arrangeControls() { + Container ctnr = getContentPane(); + ctnr.add(srTabbedPane,BorderLayout.CENTER); + Box southSRBox = Box.createHorizontalBox(); + southSRBox.add(Box.createGlue()); + southSRBox.add(saveButton); + southSRBox.add(printButton); + southSRBox.add(closeButton); + southSRBox.add(Box.createGlue()); + ctnr.add(southSRBox, BorderLayout.SOUTH); + } + + private void save() { + // get directory from user where to write the tabbed files + File directoryToUse = new File(tabSeparatedReportDirectory); + JFileChooser jfc = new JFileChooser(); + if (directoryToUse.exists() && directoryToUse.isDirectory()) { + jfc.setCurrentDirectory(directoryToUse); + } + jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); + jfc.setDialogTitle("Please specify a folder for the tabbed output report files."); + int outDirStatus = jfc.showDialog(win,"Select Folder"); + if(outDirStatus != JFileChooser.APPROVE_OPTION) { + return; + } + directoryToUse = jfc.getSelectedFile(); + tabSeparatedReportDirectory = directoryToUse.getPath(); + // System.out.println("Selected directory was: " + tabSeparatedReportDirectory); + + // delete any files that exist that have the names we are about to use + File tabbedHeaderFile = new File(tabSeparatedReportDirectory, + baseReportTableName + "Header.tab"); + if (tabbedHeaderFile.exists()) { + tabbedHeaderFile.delete(); + } + File tabbedBodyFile = new File(tabSeparatedReportDirectory, + baseReportTableName + "Body.tab"); + if (tabbedBodyFile.exists()) { + tabbedBodyFile.delete(); + } + File tabbedDecodeFile = new File(tabSeparatedReportDirectory, + baseReportTableName + "Decode.tab"); + if (tabbedDecodeFile.exists()) { + tabbedDecodeFile.delete(); + } + // create tabbed header report file + FileWriter fw = null; + BufferedWriter bw = null; + try { + fw = new FileWriter (tabbedHeaderFile); + bw = new BufferedWriter (fw); + } catch (IOException e) { + JOptionPane.showMessageDialog(win, + "I/O error occurred trying to create tabbed header report file.", + "File Creation Error", + JOptionPane.ERROR_MESSAGE); + try { + fw.close(); + bw.close(); + } catch (Exception ex) { + // nothing can be done here + } + return; + } + // construct header portion of report as a Vector of Strings + headerVector = new Vector(); + PreparedStatement pstmt = null; + String SQL = "SELECT MOVESRunID, HeaderItem, HeaderItemValue FROM " + headerTableName; + ResultSet rs; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + while (rs.next()) { + int runNo = rs.getInt(1); + String stringRunNo = (new Integer(runNo)).toString(); + String headerItem = rs.getString(2); + String headerItemValue = rs.getString(3); + headerVector.add(stringRunNo + "\t" + headerItem + "\t" + headerItemValue); + } + rs.close(); + pstmt.close(); + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Database error occurred trying to produce tabbed output report header.", + "Database Error", + JOptionPane.ERROR_MESSAGE); + return; + } + + // write header report from Vector + try { + headerColumnHeaderLine = "Run\tHeader Item\tHeader Item Value"; + bw.write(headerColumnHeaderLine,0,headerColumnHeaderLine.length()); + bw.newLine(); + for (int i=0; i(); + // we'll use JDBC metadata to figure out what columns are present rather than + // try to correlate back to the code that created the report body table + SQL = "SELECT * FROM " + bodyTableName; + bodyColumnHeaderLine = ""; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + ResultSetMetaData rsmd = rs.getMetaData(); + int colCount = rsmd.getColumnCount(); + boolean firstLine = true; + while (rs.next()) { + String reportLine = ""; + for (int col=1; col<=colCount; col++) { + String colName = rsmd.getColumnLabel(col); + int displayColWidth = findColDisplayWidth(colName); + if (firstLine) { + // assumes display width exceeds length of column name + bodyColumnHeaderLine = bodyColumnHeaderLine + colName; + if (col(); + SQL = "SELECT categoryField, Value, Description FROM " + decodeTableName; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + while (rs.next()) { + String catField = rs.getString(1); + String catValue = String.valueOf(rs.getInt(2)); + String description = rs.getString(3); + decodeVector.add(catField + "\t" + catValue + "\t" + description); + } + rs.close(); + pstmt.close(); + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Database error occurred trying to produce on-screen value decoding list.", + "Database Error", + JOptionPane.ERROR_MESSAGE); + return; + } + + // write decode report from Vector + try { + decodeColumnHeaderLine = "Category Field" + "\t" + "Value" + "\t" + "Description"; + bw3.write(decodeColumnHeaderLine,0,decodeColumnHeaderLine.length()); + bw3.newLine(); + for (int i=0; i(); + reportClassificationColumns.add(new ReportClassificationColumn + ("yearID", "Year", "SMALLINT(4)",6, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("monthID", "Month", "SMALLINT(5)",7, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("dayID", "Day", "SMALLINT(3)",5, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("hourID", "Hour", "SMALLINT(4)",6, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("stateID", "State", "SMALLINT(5)",7, "State", "stateName" )); + reportClassificationColumns.add(new ReportClassificationColumn + ("countyID", "County", "INTEGER(5)",7, "County", "countyName" )); + reportClassificationColumns.add(new ReportClassificationColumn + ("zoneID", "Zone", "INTEGER(6)",8, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("linkID", "Link", "INTEGER(7)",9, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("sourceTypeID", "Source", "SMALLINT(6)",8, "SourceUseType", "sourceTypeName")); + reportClassificationColumns.add(new ReportClassificationColumn + ("SCC", "SCC", "CHAR(10)",12, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("fuelTypeID", "Fuel", "SMALLINT(4)",6, "FuelType", "fuelTypeDesc" )); + reportClassificationColumns.add(new ReportClassificationColumn + ("modelYearID", "ModelYr", "INTEGER(5)",8, null, null )); + reportClassificationColumns.add(new ReportClassificationColumn + ("roadTypeID", "Road", "SMALLINT(4)",6, "RoadType", "roadDesc")); + reportClassificationColumns.add(new ReportClassificationColumn + ("MOVESRunID", "Run", "SMALLINT(4)",6, null, null)); + + polColumnNames = new TreeMap(); + polColumnNames.put(new Integer(1), "TotalHC"); + polColumnNames.put(new Integer(2), "CO"); + polColumnNames.put(new Integer(3), "NOx"); + polColumnNames.put(new Integer(5), "CH4"); + polColumnNames.put(new Integer(6), "N2O"); + polColumnNames.put(new Integer(20), "Benzene"); + polColumnNames.put(new Integer(21), "Ethanol"); + polColumnNames.put(new Integer(22), "MTBE"); + polColumnNames.put(new Integer(23), "Naphthalene"); + polColumnNames.put(new Integer(24), "Butadiene"); + polColumnNames.put(new Integer(25), "Formaldehyde"); + polColumnNames.put(new Integer(26), "Acetaldehyde"); + polColumnNames.put(new Integer(27), "Acrolein"); + polColumnNames.put(new Integer(31), "SO2"); + polColumnNames.put(new Integer(32), "NO"); + polColumnNames.put(new Integer(33), "NO2"); + polColumnNames.put(new Integer(30), "NH3"); + polColumnNames.put(new Integer(79), "NMHC"); + polColumnNames.put(new Integer(80), "NMOG"); + polColumnNames.put(new Integer(86), "TOG"); + polColumnNames.put(new Integer(87), "VOC"); + polColumnNames.put(new Integer(90), "CO2"); + polColumnNames.put(new Integer(91), "TotalEnergy"); + polColumnNames.put(new Integer(92), "PetrolEnergy"); + polColumnNames.put(new Integer(93), "FossilEnergy"); + polColumnNames.put(new Integer(98), "CO2_Equiv"); + polColumnNames.put(new Integer(100),"Total_PM10"); + polColumnNames.put(new Integer(101),"OrganicC_PM10"); + polColumnNames.put(new Integer(102),"ElementC_PM10"); + polColumnNames.put(new Integer(105),"Sulfate_PM10"); + polColumnNames.put(new Integer(106),"Brake_PM10"); + polColumnNames.put(new Integer(107),"Tire_PM10"); + polColumnNames.put(new Integer(110),"Total_PM25"); + polColumnNames.put(new Integer(111),"OrganicC_PM25"); + polColumnNames.put(new Integer(112),"ElementC_PM25"); + polColumnNames.put(new Integer(115),"Sulfate_PM25"); + polColumnNames.put(new Integer(116),"Brake_PM25"); + polColumnNames.put(new Integer(117),"Tire_PM25"); + // System.out.println("contructor finished"); + } + + /** + * principal method of this class, called to define and produce a summary report. + * @return true if report generation is successful, false otherwise + **/ + public boolean produceSummaryReport() { + if (!getEmissionProcess()) { + return false; + } + if (!getReportParameters()) { + return false; + } + if (!writeHeaderTable()) { + return false; + } + if (!writeBodyTable()) { + return false; + } + if (!writeDecodeTable()) { + return false; + } + if (!outputToScreen()) { + return false; + } + return true; + } + + private boolean getEmissionProcess() { + // make TreeSet of emission process names included in runspec + TreeSet eProcesses = new TreeSet(); + // check whether runspec called for emission processes to be distinguished + if(runSpec.outputEmissionsBreakdownSelection.emissionProcess) { + Iterator i = + runSpec.pollutantProcessAssociations.iterator(); + while (i.hasNext()) { + PollutantProcessAssociation pp = (PollutantProcessAssociation) i.next(); + eProcesses.add(pp.emissionProcess.processName); + } + if (eProcesses.size() == 0 ) { + JOptionPane.showMessageDialog(win, + "Can't produce summary report: run spec has no emission processes", + "No Emission Processes Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + } + eProcesses.add("All Processes"); + + String eProcSelection = (String) JOptionPane.showInputDialog(win, + "Select Emission Process to Report", + "Emission Process Selection", + JOptionPane.OK_CANCEL_OPTION, null, + eProcesses.toArray(), null); + if (eProcSelection == null) { + return false; + } + // retrieve emission process number associated with selected name + if (eProcSelection.equals("All Processes")) { + emissionProcess = null; + } else { + emissionProcess = new Integer((EmissionProcess.findByName(eProcSelection)).databaseKey); + } + // System.out.println(eProcSelection); + // System.out.println("translates to " + emissionProcess); + + return true; + } + + private boolean getReportParameters() { + // make ArrayLists of run numbers, each with associated display string, + // to be included in the report + runNumbers = new ArrayList(); + runDisplayStrings = new ArrayList(); + try { + String SQL = "SELECT MOVESRunID, runDateTime, runSpecFileName " + + "FROM MOVESRun ORDER BY MOVESRunID"; + Statement stmt = oConn.createStatement(); + ResultSet rs = stmt.executeQuery(SQL); + while (rs.next()) { + Integer runNum = new Integer(rs.getInt("MOVESRunID")); + String runDisplay = "Run: " + runNum.toString() + " Time: " + + rs.getString("runDateTime") + " " + + rs.getString("runSpecFileName") + " "; + // TreeMaps proved awkward because key had to be the display string + // and it is unclear how they would sort. So used kludge of two + // parrallel Arraylists, need to preserve order of SELECT + runNumbers.add(runNum.toString()); + runDisplayStrings.add(runDisplay); + } + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Can't produce summary report: SQL error accessing MOVESRun table", + "MOVESRun SQL Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + if(runNumbers.isEmpty()) { + JOptionPane.showMessageDialog(win, + "Can't produce summary report: No runs in output database", + "Empty Output Database Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + // limit run number choices to last 12 runs, otherwise GUI layout problems occur + while (runNumbers.size()>12) { + runNumbers.remove(0); + runDisplayStrings.remove(0); + } + + Iterator it = runSpec.pollutantProcessAssociations.iterator(); + while (it.hasNext()) { + PollutantProcessAssociation pp = (PollutantProcessAssociation) it.next(); + if ((emissionProcess == null) || + (pp.emissionProcess.databaseKey == emissionProcess.intValue())) { + pollutants.add(pp.pollutant.pollutantName); + } + } + if (runSpec.outputVMTData) { + pollutants.add("Distance"); + } + if (pollutants.size() == 0) { + JOptionPane.showMessageDialog(win, + "Can't produce summary report: run spec would produce nothing to report", + "No Pollutants Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + + for (int i=0; i(); + headerColumnHeaderLine = " Run Header Item: Item Value"; + PreparedStatement pstmt = null; + String SQL = "SELECT MOVESRunID, HeaderItem, HeaderItemValue FROM " + headerTableName; + ResultSet rs; + String spaces = " "; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + while (rs.next()) { + int runNo = rs.getInt(1); + String paddedRunNo = null; + if (runNo==0) { + paddedRunNo = spaces.substring(0,5); + } else { + String stringRunNo = (new Integer(runNo)).toString(); + paddedRunNo = spaces.substring(0,4-stringRunNo.length()) + stringRunNo + " "; + } + String headerItem = rs.getString(2); + // pad first column to constant width of 25 + String paddedHeaderItem = spaces.substring(0,24-headerItem.length()) + + headerItem.trim(); + String headerItemValue = rs.getString(3); + // trim second column to width of 70 if necessary + if (headerItemValue != null && headerItemValue.length() > 70) { + headerItemValue = headerItemValue.substring(0,69); + } + headerVector.add(paddedRunNo + paddedHeaderItem + ": " +headerItemValue); + } + rs.close(); + pstmt.close(); + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Database error occurred trying to produce screen report header.", + "Database Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + // construct body portion of report as a Vector of Strings + bodyVector = new Vector(); + // we'll use JDBC metadata to figure out what columns are present rather than + // try to correlate back to the code that created the report body table + SQL = "SELECT * FROM " + bodyTableName; + bodyColumnHeaderLine = ""; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + ResultSetMetaData rsmd = rs.getMetaData(); + int colCount = rsmd.getColumnCount(); + boolean firstLine = true; + while (rs.next()) { + String reportLine = ""; + for (int col=1; col<=colCount; col++) { + String colName = rsmd.getColumnLabel(col); + int displayColWidth = findColDisplayWidth(colName); + if (firstLine) { + // assumes display width exceeds length of column name + bodyColumnHeaderLine = bodyColumnHeaderLine + + spaces.substring(0,displayColWidth-colName.length()) + colName; + } + // all fields can be retrieved as Strings, including integers and floats + String colValue = StringUtilities.safeGetString(rs.getString(col)); + if (colValue.length() < displayColWidth ) { + reportLine = reportLine + + spaces.substring(0,displayColWidth-colValue.length()); + } + reportLine = reportLine + colValue; + } + firstLine=false; + bodyVector.add(reportLine); + } + rs.close(); + pstmt.close(); + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Database error occurred trying to produce screen report body.", + "Database Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + // construct decode portion of report as a Vector of Strings + decodeVector = new Vector(); + SQL = "SELECT categoryField, Value, Description FROM " + decodeTableName; + try { + pstmt = oConn.prepareStatement(SQL); + rs = pstmt.executeQuery(); + while (rs.next()) { + String catField = rs.getString(1); + // pad first column to constant width of 15 + String paddedCatField = spaces.substring(0,15-catField.length()) + catField.trim(); + String catValue = String.valueOf(rs.getInt(2)); + // pad second column to constant width of 11 + String paddedCatValue = spaces.substring(0,11-catValue.length()) + catValue.trim(); + String description = rs.getString(3); + decodeVector.add(paddedCatField + paddedCatValue + " " + description); + } + rs.close(); + pstmt.close(); + } catch (SQLException e) { + JOptionPane.showMessageDialog(win, + "Database error occurred trying to produce on-screen value decoding list.", + "Database Error", + JOptionPane.ERROR_MESSAGE); + return false; + } + + // create controls + screenReport = new ScreenReport(win); + screenReport.pack(); + screenReport.setResizable(true); + screenReport.setModal(true); + (new WindowStateHandler(screenReport,"SummaryReporter.screenReport")).setSizePositionAndStartTracking(-1,-1); + screenReport.setVisible(true); //screenReport.show(); + // return will occur when a "close report" button is selected + return true; + } + + private int findColDisplayWidth(String colName) { + if (colName.equalsIgnoreCase("Distance") || colName.equalsIgnoreCase("Activity")) { + return 15; + } + for (int i=0; i= startLineIndex) { + graphics.drawString(currentLine, (int)x, (int)y); + y += fontMetrics.getHeight(); + } + + currentLine = ""; + lineIndex++; + if (lineIndex >= stopLineIndex) { + break; + } + continue; + } + + // simple workaround so that the tab chars can be used in the string buffer + if(iterChar != '\t') { + currentLine += iterChar; + } else { + currentLine += " "; + } + + if (fontMetrics.stringWidth(currentLine) > imageableWidth) { + // Wrapping. Iterate backwards and find the best character to wrap at. + int wrapIndex = currentLine.length() - 1; + for (; wrapIndex > 0; wrapIndex--) { + if ((currentLine.charAt(wrapIndex) == ' ') || + (currentLine.charAt(wrapIndex) == '\t')) { + break; + } + } + + if (lineIndex >= startLineIndex) { + graphics.drawString(currentLine.substring(0, wrapIndex), (int)x, (int)y); + y += fontMetrics.getHeight(); + } + + currentLine = currentLine.substring(wrapIndex + 1); + lineIndex++; + if (lineIndex >= stopLineIndex) { + break; + } + continue; + } + } + + if (lineIndex >= startLineIndex) { + graphics.drawString(currentLine, (int)x, (int)y); + y += fontMetrics.getHeight(); + } + + return (lineIndex > startLineIndex) ? PAGE_EXISTS : NO_SUCH_PAGE; + } +} diff --git a/gov/epa/otaq/moves/master/gui/TimeSpans.java b/gov/epa/otaq/moves/master/gui/TimeSpans.java new file mode 100644 index 0000000..ebc1a9a --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/TimeSpans.java @@ -0,0 +1,1278 @@ +/************************************************************************************************** + * @(#)TimeSpans.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; +import javax.swing.event.*; +import java.util.*; +import gov.epa.otaq.moves.master.runspec.*; +import gov.epa.otaq.moves.master.framework.EmissionProcess; +import gov.epa.otaq.moves.master.framework.PollutantProcessAssociation; +import gov.epa.otaq.moves.master.framework.DatabaseConnectionManager; +import gov.epa.otaq.moves.common.*; + +/** + * Class for MOVES TimeSpans panel. Constructs a TimeSpans panel, creates and + * sets the layouts of the controls. There are several panels on the Time Spans + * panel. The Years panel contains a Year combo box, an Add, and a Remove button + * to add, remove to or from the Year list box. The Months Panel lets the user + * to select one or more of the month check boxes. The Select All and the Clear + * All buttons let the user to select or to clear all of the twelve months. the + * Days panel lets the user to select one or more of the days check boxes. The + * Select All and the Clear All buttons let the user to select or to clear all + * the of the seven days selections. The Hours panel lets the user to select one + * of the twenty four hours from the Start Hour drop down list for the start hour, + * and one of the twenty four hours from the End Hour drop down list. The Select + * All button allows the selection of twenty four hours, and the Clear All button + * resets the Start Hour and the End Hour selections. This class load/Saves + * information to/from the runSpec. TimeSpans was modified to allow calendar years + * up to 2050. + * + * @author Wesley Faler + * @author Sarah Luo + * @author Don Smith + * @author Tim Hull + * @author Bob G (Task 18 Item 99) + * @author EPA-elg (Update calendar year list) + * @version 2015-05-21 +**/ +public class TimeSpans extends JPanel implements ListSelectionListener, + ActionListener, RunSpecEditor { + /** Constant used for a lack of a year selection **/ + static String EMPTY_YEAR_TEXT = " "; + + static class IntegerWrapper { + public Integer v; + + public IntegerWrapper() { + v = new Integer(0); + } + + public IntegerWrapper(Integer i) { + v = new Integer(i.intValue()); + } + + public String toString() { + return v.toString(); + } + } + + /** Panel contains the Time Aggregation controls. **/ + JPanel aggregatePanel; + /** Time Aggregation Radio button group. **/ + ButtonGroup aggregateButtons; + /** Aggregate by Year radio button. **/ + JRadioButton aggregateYear; + /** Aggregate by Month radio button. **/ + JRadioButton aggregateMonth; + /** Aggregate by Day radio button. **/ + JRadioButton aggregateDay; + /** Aggregate by Hour radio button. **/ + JRadioButton aggregateHour; + /** Add button control. **/ + JButton addYearButton; + /** Panel contains the Year UI controls. **/ + JPanel yearPanel; + /** Panel contains the Month UI controls. **/ + JPanel monthPanel; + /** Select all months button. **/ + JButton selectAllMonthsButton; + /** Clear all months button. **/ + JButton clearAllMonthsButton; + /** Panel contains the Day UI controls. **/ + JPanel dayPanel; + /** Select all days button. **/ + JButton selectAllDaysButton; + /** Clear all days button. **/ + JButton clearAllDaysButton; + /** Panel contains the Hour UI controls. **/ + JPanel hourPanel; + /** Select all hours button. **/ + JButton selectAllHoursButton; + /** Clear all hours button. **/ + JButton clearAllHoursButton; + /** Label for the Year combo control. **/ + JLabel yearLabel; + /** Year combo control. **/ + ExtendedComboBox yearCombo; + /** Label for Year Selection default list model. **/ + JLabel yearSelectionLabel; + /** Year Selection default list model. **/ + DefaultListModel yearListModel; + /** Year list. **/ + JList yearList; + /** Scroll pane for Year UI controls. **/ + JScrollPane yearScrollPane; + /** Year Remove button. **/ + JButton yearRemove; + + private static class MonthCheckBox { + public TimeSpan.Month month; + public JCheckBox checkBox; + + public MonthCheckBox() { + } + + public MonthCheckBox(TimeSpan.Month monthToUse, JCheckBox checkBoxToUse) { + month = monthToUse; + checkBox = checkBoxToUse; + } + } + + /** List of MonthCheckBox objects **/ + ArrayList monthCheckBoxes = new ArrayList(); + + private static class DayCheckBox { + public TimeSpan.Day day; + public JCheckBox checkBox; + + public DayCheckBox() { + } + + public DayCheckBox(TimeSpan.Day dayToUse, JCheckBox checkBoxToUse) { + day = dayToUse; + checkBox = checkBoxToUse; + } + } + + /** List of DayCheckBox objects **/ + ArrayList dayCheckBoxes = new ArrayList(); + + /** Label for the starting hour dropdown. **/ + JLabel beginHourLabel; + /** Start hour combo control. **/ + ExtendedComboBox beginHourCombo; + /** Label for the ending hour dropdown. **/ + JLabel endHourLabel; + /** End hour combo control. **/ + ExtendedComboBox endHourCombo; + /** Last calculated time span section status **/ + int timeSpanSectionStatus; + /** Domain of the most recently loaded RunSpec **/ + ModelDomain loadedDomain = null; + /** Hour object shown when there is no hour selection **/ + TimeSpan.Hour emptyHour = new TimeSpan.Hour(0,""); + + /** + * Constructs a TimeSpans panel, also creates and sets the layouts of the controls. + **/ + public TimeSpans() { + if(!TimeSpan.isLoaded()) { + TimeSpan.loadTimeObjects(); + } + createControls(); + arrangeControls(); + populateControls(); + } + + /** + * Gets text to be included in the RunSpec print out. + * + * @param runspec The runspec to acquire data from + * @param destination The StringBuffer to fill. + **/ + public void getPrintableDescription(RunSpec runspec, StringBuffer destination) { + destination.append("Time Spans:\r\n"); + + destination.append("\tAggregate By: "); + if(runspec.timeSpan.aggregateBy == OutputTimeStep.YEAR) { + destination.append("Year\r\n"); + } else if (runspec.timeSpan.aggregateBy == OutputTimeStep.MONTH) { + destination.append("Month\r\n"); + } else if (runspec.timeSpan.aggregateBy == OutputTimeStep.CLASSICAL_DAY) { + destination.append("Day\r\n"); + } else { + destination.append("Hour\r\n"); + } + + destination.append("\tYears:\r\n"); + for(Iterator yearListIter=runspec.timeSpan.years.iterator();yearListIter.hasNext(); + destination.append("\t\t"+yearListIter.next()+"\r\n")); + + destination.append("\r\n\tMonths:\r\n"); + for(Iterator i=runspec.timeSpan.months.iterator();i.hasNext();) { + TimeSpan.Month m = (TimeSpan.Month)i.next(); + destination.append("\t\t" + m.name + "\r\n"); + } + + destination.append("\tDays:\r\n"); + for(Iterator i=runspec.timeSpan.days.iterator();i.hasNext();) { + TimeSpan.Day d = (TimeSpan.Day)i.next(); + destination.append("\t\t" + d.name + "\r\n"); + } + + destination.append("\tHours:\r\n"); + TimeSpan.Hour beginHour = TimeSpan.getHourByID(runspec.timeSpan.beginHourID); + TimeSpan.Hour endHour = TimeSpan.getHourByID(runspec.timeSpan.endHourID); + destination.append("\t\tBegin Hour: "+(beginHour != null? beginHour.name : "")+"\r\n"); + destination.append("\t\tEnd Hour: "+(endHour != null? endHour.name : "")+"\r\n"); + destination.append("\r\n"); + } + + /** Creates and initializes all controls on this panel. **/ + public void createControls() { + Dimension aggregatePanelSize = new Dimension(560,60); + aggregatePanel = new JPanel(); + aggregatePanel.setName("aggregatePanel"); + aggregatePanel = new JPanel(); + aggregatePanel.setBorder(BorderFactory.createTitledBorder( + "Time Aggregation Level")); + aggregatePanel.setPreferredSize(aggregatePanelSize); + + Dimension yearPanelSize = new Dimension(360,250); + yearPanel = new JPanel(); + yearPanel.setName("yearPanel"); + yearPanel = new JPanel(); + yearPanel.setBorder(BorderFactory.createTitledBorder( + "Years")); + yearPanel.setPreferredSize(yearPanelSize); + + Dimension monthPanelSize = new Dimension(200,250); + monthPanel = new JPanel(); + monthPanel.setName("monthPanel"); + monthPanel.setBorder(BorderFactory.createTitledBorder( + "Months")); + monthPanel.setPreferredSize(monthPanelSize); + + Dimension dayPanelSize = new Dimension(360,120); + dayPanel = new JPanel(); + dayPanel.setName("dayPanel"); + dayPanel.setBorder(BorderFactory.createTitledBorder( + "Days")); + dayPanel.setPreferredSize(dayPanelSize); + + Dimension hourPanelSize = new Dimension(200,120); + hourPanel = new JPanel(); + hourPanel.setName("hourPanel"); + hourPanel.setBorder(BorderFactory.createTitledBorder( + "Hours")); + hourPanel.setPreferredSize(hourPanelSize); + + aggregateButtons = new ButtonGroup(); + + aggregateYear = new JRadioButton("Year"); + aggregateYear.setName("aggregateYear"); + aggregateYear.addActionListener(this); + ToolTipHelper.add(aggregateYear,"Aggregate input data by year"); + + aggregateMonth = new JRadioButton("Month"); + aggregateMonth.setName("aggregateMonth"); + aggregateMonth.addActionListener(this); + ToolTipHelper.add(aggregateMonth,"Aggregate input data by month"); + + aggregateDay = new JRadioButton("Day"); + aggregateDay.setName("aggregateDay"); + aggregateDay.addActionListener(this); + ToolTipHelper.add(aggregateDay,"Aggregate input data by day"); + + aggregateHour = new JRadioButton("Hour"); + aggregateHour.setName("aggregateHour"); + aggregateHour.addActionListener(this); + ToolTipHelper.add(aggregateHour,"Aggregate input data by hour"); + + yearLabel = new JLabel("Select Year:"); + yearLabel.setName("yearLabel"); + yearCombo = new ExtendedComboBox(); + yearCombo.setName("yearCombo"); + yearCombo.setSelectedIndex(-1); + yearCombo.setEditable(false); + ToolTipHelper.add(addYearButton,"Select a year to add to the RunSpec"); + + addYearButton = new JButton("Add"); + addYearButton.setName("addYearButton"); + ToolTipHelper.add(addYearButton,"Add the selected year to the RunSpec"); + yearSelectionLabel = new JLabel("Years:"); + yearSelectionLabel.setName("yearSelectionLabel"); + yearListModel = new DefaultListModel(); + yearList = new JListWithToolTips(yearListModel); + yearList.setName("yearList"); + yearList.setSelectionMode( + ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); + yearList.setSelectedIndex(-1); + yearList.addListSelectionListener(this); + yearList.setVisibleRowCount(6); + yearList.setPrototypeCellValue(new IntegerWrapper() { public String toString() { return "CharacterCountToDisplayXXXXXXXXXXXXXX"; }}); + yearScrollPane = new JScrollPane(yearList, + JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, + JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); + yearScrollPane.setName("yearScrollPane"); + + yearRemove = new JButton("Remove"); + yearRemove.setName("yearRemove"); + yearRemove.setEnabled(false); // not enabled until item selected on list + yearRemove.setName("yearRemove"); + ToolTipHelper.add(yearRemove,"Remove the select year(s) from the RunSpec"); + + Dimension buttonSize = new Dimension(87,25); + addYearButton.setPreferredSize(buttonSize); + yearRemove.setPreferredSize(buttonSize); + + for(Iterator i=TimeSpan.allMonths.iterator();i.hasNext();) { + TimeSpan.Month m = (TimeSpan.Month)i.next(); + MonthCheckBox b = new MonthCheckBox(m,new JCheckBox(m.name)); + b.checkBox.setName(m.name.toLowerCase()); + b.checkBox.addActionListener(this); + ToolTipHelper.add(b.checkBox,m.name + " of any year"); + monthCheckBoxes.add(b); + } + + selectAllMonthsButton = new JButton("Select All"); + selectAllMonthsButton.setName("selectAllMonthsButton"); + selectAllMonthsButton.setPreferredSize(buttonSize); + ToolTipHelper.add(selectAllMonthsButton,"Select all months"); + clearAllMonthsButton = new JButton("Clear All"); + clearAllMonthsButton.setName("clearAllMonthsButton"); + ToolTipHelper.add(clearAllMonthsButton,"Clear all months"); + clearAllMonthsButton.setPreferredSize(buttonSize); + + for(Iterator i=TimeSpan.allDays.iterator();i.hasNext();) { + TimeSpan.Day d = (TimeSpan.Day)i.next(); + DayCheckBox b = new DayCheckBox(d,new JCheckBox(d.name)); + b.checkBox.setName(d.name.toLowerCase()); + b.checkBox.addActionListener(this); + ToolTipHelper.add(b.checkBox,d.name + " of any month"); + dayCheckBoxes.add(b); + } + + selectAllDaysButton = new JButton("Select All"); + selectAllDaysButton.setName("selectAllDaysButton"); + selectAllDaysButton.setPreferredSize(buttonSize); + ToolTipHelper.add(selectAllDaysButton,"Select all days"); + clearAllDaysButton = new JButton("Clear All"); + clearAllDaysButton.setName("clearAllDaysButton"); + clearAllDaysButton.setPreferredSize(buttonSize); + ToolTipHelper.add(clearAllDaysButton,"Clear all days"); + + beginHourLabel = new JLabel("Start Hour:"); + beginHourLabel.setName("beginHourLabel"); + beginHourCombo = new ExtendedComboBox(); + beginHourCombo.setName("beginHourCombo"); + beginHourCombo.setSelectedIndex(-1); + ToolTipHelper.add(beginHourCombo,"First simulated hour of the day"); + endHourLabel = new JLabel("End Hour:"); + endHourLabel.setName("endHourLabel"); + endHourCombo = new ExtendedComboBox(); + endHourCombo.setName("endHourCombo"); + endHourCombo.setSelectedIndex(-1); + ToolTipHelper.add(endHourCombo,"Last simulated hour of the day"); + selectAllHoursButton = new JButton("Select All"); + selectAllHoursButton.setName("selectAllHoursButton"); + selectAllHoursButton.setPreferredSize(buttonSize); + ToolTipHelper.add(selectAllHoursButton,"Select all hours of any day"); + clearAllHoursButton = new JButton("Clear All"); + clearAllHoursButton.setName("clearAllHoursButton"); + clearAllHoursButton.setPreferredSize(buttonSize); + ToolTipHelper.add(clearAllHoursButton,"Clear all hours of any day"); + + beginHourCombo.addActionListener(this); + endHourCombo.addActionListener(this); + selectAllMonthsButton.addActionListener(this); + selectAllDaysButton.addActionListener(this); + selectAllHoursButton.addActionListener(this); + clearAllMonthsButton.addActionListener(this); + clearAllDaysButton.addActionListener(this); + clearAllHoursButton.addActionListener(this); + + addYearButton.addActionListener(this); + yearRemove.addActionListener(this); + } + + /** Sets the layout of the controls. **/ + public void arrangeControls() { + GridBagConstraints gbc = new GridBagConstraints(); + + aggregateButtons.add(aggregateYear); + aggregateButtons.add(aggregateMonth); + aggregateButtons.add(aggregateDay); + aggregateButtons.add(aggregateHour); + + aggregatePanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 4; + gbc.gridheight = 1; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc, 0, 0, "WEST", 1, 1); + aggregatePanel.add(aggregateYear, gbc); + LayoutUtility.setPositionOnGrid(gbc, 1, 0, "WEST", 1, 1); + aggregatePanel.add(aggregateMonth, gbc); + LayoutUtility.setPositionOnGrid(gbc, 2, 0, "WEST", 1, 1); + aggregatePanel.add(aggregateDay, gbc); + LayoutUtility.setPositionOnGrid(gbc, 3, 0, "WEST", 1, 1); + aggregatePanel.add(aggregateHour, gbc); + + + yearPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 3; + gbc.gridheight = 6; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0, 0, "WEST", 1, 1); + yearPanel.add(yearLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,1, 0, "EAST", 1, 1); + yearPanel.add(yearCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc,2, 0, "EAST", 1, 1); + yearPanel.add(addYearButton, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 1, "WEST", 3, 1); + yearPanel.add(yearSelectionLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc,0, 2, "EAST", 3, 3); + yearPanel.add(yearScrollPane, gbc); + LayoutUtility.setPositionOnGrid(gbc,2, 5, "EAST", 1, 1); + yearPanel.add(yearRemove, gbc); + + monthPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 8; + gbc.weightx = 0; + gbc.weighty = 0; + + int columnHeight = 6; + int r = 0, c = 0; + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();r++) { + MonthCheckBox b = (MonthCheckBox)i.next(); + if(r >= columnHeight) { + c++; + r = 0; + } + LayoutUtility.setPositionOnGrid(gbc, c, r, "WEST", 1, 1); + monthPanel.add(b.checkBox, gbc); + } + + LayoutUtility.setPositionOnGrid(gbc, 0, 6, "WEST", 1, 1); + monthPanel.add(selectAllMonthsButton, gbc); + LayoutUtility.setPositionOnGrid(gbc, 1, 6, "WEST", 1, 1); + monthPanel.add(clearAllMonthsButton, gbc); + + dayPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 4; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + + columnHeight = 2; + r = 0; + c = 0; + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();r++) { + DayCheckBox b = (DayCheckBox)i.next(); + if(r >= columnHeight) { + c++; + r = 0; + } + LayoutUtility.setPositionOnGrid(gbc, c, r, "WEST", 1, 1); + dayPanel.add(b.checkBox, gbc); + } + + LayoutUtility.setPositionOnGrid(gbc, 2, 2, "WEST", 1, 1); + dayPanel.add(selectAllDaysButton, gbc); + LayoutUtility.setPositionOnGrid(gbc, 3, 2, "WEST", 1, 1); + dayPanel.add(clearAllDaysButton, gbc); + + hourPanel.setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc, 0, 0, "WEST", 1, 1); + hourPanel.add(beginHourLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc, 1, 0, "WEST", 1, 1); + hourPanel.add(beginHourCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc, 0, 1, "WEST", 1, 1); + hourPanel.add(endHourLabel, gbc); + LayoutUtility.setPositionOnGrid(gbc, 1, 1, "WEST", 1, 1); + hourPanel.add(endHourCombo, gbc); + LayoutUtility.setPositionOnGrid(gbc, 0, 2, "WEST", 1, 1); + hourPanel.add(selectAllHoursButton, gbc); + LayoutUtility.setPositionOnGrid(gbc, 1, 2, "WEST", 1, 1); + hourPanel.add(clearAllHoursButton, gbc); + + setLayout(new GridBagLayout()); + gbc.fill = GridBagConstraints.NONE; + gbc.insets = new Insets(2,2,2,2); + gbc.gridwidth = 2; + gbc.gridheight = 3; + gbc.weightx = 0; + gbc.weighty = 0; + LayoutUtility.setPositionOnGrid(gbc,0,0, "CENTER", 2, 1); + add(aggregatePanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,1, "CENTER", 1, 1); + add(yearPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,1,1, "WEST", 1, 1); + add(monthPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,0,2, "CENTER", 1, 1); + add(dayPanel,gbc); + LayoutUtility.setPositionOnGrid(gbc,1,2, "WEST", 1, 1); + add(hourPanel,gbc); + } + + /** + * Listener method for list selection changes. + * @param e Event caused by a user selection. + **/ + public void valueChanged(ListSelectionEvent e) { + if(e.getValueIsAdjusting() == false) { + if(yearList.getSelectedIndex() == -1) { + //No selection: enable/disable relevant controls. + yearRemove.setEnabled(false); + } else { + yearRemove.setEnabled(true); + } + } + } + + /** + * Saves the description text to a RunSpec. + * @param runspec the RunSpec to get the description text. + **/ + public void saveToRunSpec(RunSpec runspec) { + TimeSpan tsToSave = new TimeSpan(); + for(int i=0;i yearListIter=tsToLoad.years.iterator();yearListIter.hasNext(); + yearListModel.addElement(new IntegerWrapper(yearListIter.next()))); + + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setSelected(tsToLoad.hasMonthID(b.month.monthID)); + } + + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setSelected(tsToLoad.hasDayID(b.day.dayID)); + b.checkBox.setEnabled(true); + } + if(dayCheckBoxes.size() > 1) { + selectAllDaysButton.setEnabled(true); + clearAllDaysButton.setEnabled(true); + } else if(dayCheckBoxes.size() == 1) { + selectAllDaysButton.setEnabled(false); + clearAllDaysButton.setEnabled(false); + + DayCheckBox b = (DayCheckBox)dayCheckBoxes.get(0); + b.checkBox.setSelected(true); + b.checkBox.setEnabled(false); + } + + TimeSpan.Hour beginHour = TimeSpan.getHourByID(tsToLoad.beginHourID); + if(beginHour != null) { + beginHourCombo.setSelectedItem(beginHour); + } else { + beginHourCombo.setSelectedIndex(0); + } + + TimeSpan.Hour endHour = TimeSpan.getHourByID(tsToLoad.endHourID); + if(endHour != null) { + endHourCombo.setSelectedItem(endHour); + } else { + endHourCombo.setSelectedIndex(0); + } + + enableMe(aggregatePanel, runspec.models.getModelList().contains( Model.ONROAD) && runspec.domain != ModelDomain.PROJECT && runspec.scale != ModelScale.MESOSCALE_LOOKUP); + enableMe(hourPanel,runspec.models.getModelList().contains( Model.ONROAD)); //true); + // enableMe(dayPanel,runspec.models.getModelList().contains( Model.ONROAD)); // both NONROAD and ONROAD can chose the weekday or weekend + + EmissionProcess evapPermeation = EmissionProcess.findByID(11); // Evap Permeation + EmissionProcess evapFuelVaporVenting + = EmissionProcess.findByID(12); // Evap Fuel Vapor Venting + EmissionProcess evapFuelLeaks = EmissionProcess.findByID(13); // Evap Fuel Leaks + for(Iterator iterPollutantProcessAssociations = + runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + if(pollutantProcessAssociation.emissionProcess==evapPermeation + || pollutantProcessAssociation.emissionProcess==evapFuelVaporVenting + || pollutantProcessAssociation.emissionProcess==evapFuelLeaks) { + if(runspec.timeSpan.aggregateBy==OutputTimeStep.HOUR + //&& runspec.timeSpan.hasAllHours() + ) { + enableMe(aggregatePanel,false); + //enableMe(hourPanel,false); + break; + } + } + } + + timeSpanSectionStatus = runspec.timeSpanSectionStatus; + + checkYears(); + + if(runspec.domain == ModelDomain.PROJECT ) { + cleanMonthButtons(); + selectAllMonthsButton.setEnabled(false); + + cleanDayButtons(); + selectAllDaysButton.setEnabled(false); + + cleanHourButtons(); + selectAllHoursButton.setEnabled(false); + + endHourCombo.setEnabled(false); + } + } + + /** + * Set the enable state of all the child components. + * @param top container A container of components to be disabled. + * @param enable true if components are to be enabled. + **/ + void enableMe(Container top, boolean enable) { + Component[] comp = top.getComponents(); + for (int i = 0; i < comp.length; i++) { + comp[i].setEnabled(enable); + if (comp[i] instanceof Container) { + enableMe((Container)comp[i], enable); + } + } + } + + /** + * Gets the RunSpec status from the current sections. + * @param runspec the RunSpec to get the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus calculateRunSpecSectionStatus(RunSpec runspec, + TreeMap sections) { + Models.ModelCombination mc = runspec.getModelCombination(); + boolean isOk = true; + if(runspec.timeSpan.years.isEmpty()) { + isOk = false; + } else if (!runspec.timeSpan.hasMonths()) { + isOk = false; + } else if (!runspec.timeSpan.hasDays()) { + isOk = false; + } else if (runspec.models.getModelList().contains( Model.ONROAD) && !runspec.timeSpan.hasHours()) { + isOk = false; + } else if (runspec.models.getModelList().contains( Model.ONROAD) && !runspec.timeSpan.hasendHourGTEbeginHour()) { + isOk = false; + } + + if(isOk && runspec.domain != ModelDomain.NATIONAL_ALLOCATION + && runspec.timeSpan.getYearCount() != 1) { + isOk = false; + } + if(isOk && runspec.domain == ModelDomain.PROJECT + && runspec.timeSpan.getMonthCount() != 1) { + isOk = false; + } + if(isOk && runspec.domain == ModelDomain.PROJECT + && runspec.timeSpan.getDayCount() != 1) { + isOk = false; + } + if(isOk && runspec.domain == ModelDomain.PROJECT + && runspec.timeSpan.getHourCount() != 1) { + isOk = false; + } + // In Emission Rates mode or Project domain, the time aggregation can only be hourly, so complain if it is not. + if(isOk && (runspec.scale == ModelScale.MESOSCALE_LOOKUP || runspec.domain == ModelDomain.PROJECT)) { + if(runspec.timeSpan != null && runspec.timeSpan.aggregateBy != null && runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + isOk = false; + } + } + + timeSpanSectionStatus = runspec.timeSpanSectionStatus; + boolean wasGoodOrNotDetermined = timeSpanSectionStatus==-1||timeSpanSectionStatus==1; + + if(runspec.outputTimeStep!=null) { + timeSpanSectionStatus = 1; + if(runspec.outputTimeStep.requiresAllHours()) { + if(!runspec.timeSpan.hasAllHours()) { + if(!runspec.models.contains(Model.NONROAD)) { + if(wasGoodOrNotDetermined) { +//System.out.println("runspec.outputTimeStep=" + runspec.outputTimeStep.toString()); +//System.out.println("runspec.timeSpan=" + runspec.timeSpan.toString()); + JOptionPane.showMessageDialog(this, "The selected Output Emission" + + " Details Time Step requires all hours."); + } + timeSpanSectionStatus = 0; + } + } + } + if(runspec.outputTimeStep.requiresAllDays()) { + try { + Connection db = DatabaseConnectionManager.getGUIConnection( + MOVESDatabaseType.DEFAULT); + if(db!=null) { + if(!runspec.timeSpan.hasAllDays(db)) { + if(wasGoodOrNotDetermined) { + JOptionPane.showMessageDialog(this, "The selected Output" + + " Emission Details Time Step requires all days."); + } + timeSpanSectionStatus = 0; + } + } + } catch(Exception e) { + timeSpanSectionStatus = 0; + } + } + if(runspec.outputTimeStep.requiresAllMonths()) { + if(!runspec.timeSpan.hasAllMonths()) { + if(wasGoodOrNotDetermined) { + JOptionPane.showMessageDialog(this, "The selected Output Emission" + + " Details Time Step requires all months."); + } + timeSpanSectionStatus = 0; + } + } + } + + EmissionProcess evapPermeation = EmissionProcess.findByID(11); // Evap Permeation + EmissionProcess evapFuelVaporVenting = EmissionProcess.findByID(12); // Evap Fuel Vapor Venting + EmissionProcess evapFuelLeaks = EmissionProcess.findByID(13); // Evap Fuel Leaks + for(Iterator iterPollutantProcessAssociations = runspec.pollutantProcessAssociations.iterator(); + iterPollutantProcessAssociations.hasNext();) { + PollutantProcessAssociation pollutantProcessAssociation = + (PollutantProcessAssociation)iterPollutantProcessAssociations.next(); + if(pollutantProcessAssociation.emissionProcess==evapPermeation + || pollutantProcessAssociation.emissionProcess==evapFuelVaporVenting + || pollutantProcessAssociation.emissionProcess==evapFuelLeaks) { + switch ( mc) { + case M1: + if(runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + if(wasGoodOrNotDetermined) { + JOptionPane.showMessageDialog(this, "The emission process selection, " + + pollutantProcessAssociation.emissionProcess + + " requires the time aggregation level to " + + "be Hour."); + } + timeSpanSectionStatus = 0; + isOk = false; + } else if(!runspec.timeSpan.hasAllHours()) { + if(pollutantProcessAssociation.emissionProcess==evapFuelVaporVenting) { + if(wasGoodOrNotDetermined) { + JOptionPane.showMessageDialog(this, "The emission process selection, " + + pollutantProcessAssociation.emissionProcess + + " requires all hours to be selected."); + } + timeSpanSectionStatus = 0; + isOk = false; + } + } + break; + case M2: + default: + break; + } + break; + } + } + /* + if(isOk && runspec.scale == ModelScale.MESOSCALE_LOOKUP + && runspec.timeSpan.aggregateBy != OutputTimeStep.HOUR) { + isOk = false; + } + */ + + runspec.timeSpanSectionStatus = timeSpanSectionStatus; + RunSpecSectionStatus status = new RunSpecSectionStatus( + isOk?RunSpecSectionStatus.OK:RunSpecSectionStatus.NOT_READY); + sections.remove(getName()); + sections.put(getName(),status); + return status; + } + + /** + * Sets the defaults to the RunSpec. + * @param runspec the RunSpec to the description text. + * @param sections TreeMap containing the current sections. + * @return RunSpecSectionStatus of the RunSpec based on the sections. + **/ + public RunSpecSectionStatus saveDefaultsToRunSpec(RunSpec runspec, + TreeMap sections) { + runspec.timeSpan = new TimeSpan(); + runspec.timeSpanSectionStatus = -1; + sections.remove(getName()); + RunSpecSectionStatus status = new RunSpecSectionStatus(RunSpecSectionStatus.NOT_READY); + sections.put(getName(),status); + + if(yearCombo != null) { + yearCombo.setSelectedItem(EMPTY_YEAR_TEXT); + } + + return status; + } + + /** + * Update current selections to be consistent with a newly selected ModelScale. + * + * The editor should also place a RunSpecSectionStatus object into sections, likely using + * it's name as the key. Typically it will store a DEFAULTS or NOT_READY value. + * @param runspec the RunSpec to examine + * @param sections a table of previous status calculation results which should be updated too + * @return an object that can be used to determine which icon to display to the user + **/ + public RunSpecSectionStatus onScaleChange(RunSpec runspec, + TreeMap sections) { + if(runspec.domain == ModelDomain.PROJECT ) { + selectAllMonthsButton.setEnabled(false); + selectAllDaysButton.setEnabled(false); + selectAllHoursButton.setEnabled(false); + endHourCombo.setEnabled(false); + } else { + selectAllMonthsButton.setEnabled(true); + selectAllDaysButton.setEnabled(true); + selectAllHoursButton.setEnabled(true); + endHourCombo.setEnabled(true); + } + return calculateRunSpecSectionStatus(runspec,sections); + } + + /** + * Listener method, calls the appropriate button handler. + * @param e the ActionEvent to be handled. + **/ + public void actionPerformed(ActionEvent e) { + if (e.getSource() == aggregateYear) { + processAggregateYearButton(); + } else if (e.getSource() == aggregateMonth) { + processAggregateMonthButton(); + } else if (e.getSource() == aggregateDay) { + processAggregateDayButton(); + } else if (e.getSource() == aggregateHour) { + processAggregateHourButton(); + } else if (e.getSource() == addYearButton) { + processAddYearButton(); + } else if (e.getSource() == yearRemove) { + processYearRemoveButton(); + } else if (e.getSource() == selectAllMonthsButton) { + processSelectAllMonthsButton(); + } else if (e.getSource() == selectAllDaysButton) { + processSelectAllDaysButton(); + } else if (e.getSource() == selectAllHoursButton) { + processSelectAllHoursButton(); + } else if (e.getSource() == clearAllMonthsButton) { + processClearAllMonthsButton(); + } else if (e.getSource() == clearAllDaysButton) { + processClearAllDaysButton(); + } else if (e.getSource() == clearAllHoursButton) { + processClearAllHoursButton(); + } else if (e.getSource() == endHourCombo || + e.getSource() == beginHourCombo) { + processBeginAndEndHourCombo(); + } else { + if( loadedDomain == ModelDomain.PROJECT ){ + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + if( e.getSource() == b.checkBox ) { + cleanMonthButtons(); + break; + } + } + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + if( e.getSource() == b.checkBox ) { + cleanDayButtons(); + break; + } + } + cleanHourButtons(); + } + } + MOVESNavigation.singleton.updateRunSpecSectionStatus(); + } + + /** enables or disables month buttons- enables first button found disables all others **/ + public void cleanMonthButtons() { + boolean foundFirst=false; + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setEnabled(false); + if( b.checkBox.isSelected() && foundFirst==false ) { + b.checkBox.setEnabled(true); + foundFirst=true; + } + } + if( foundFirst==false ){ + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setEnabled(true); + } + } + } + + /** enables all month buttons **/ + public void enableAllMonthButtons() { + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setEnabled(true); + } + } + + /** enables or disables day buttons- enables first button found disables all others **/ + public void cleanDayButtons() { + boolean foundFirst=false; + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setEnabled(false); + if( b.checkBox.isSelected() && foundFirst==false ) { + b.checkBox.setEnabled(true); + foundFirst=true; + } + } + if( foundFirst==false ){ + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setEnabled(true); + } + } + } + + /** enables all day buttons **/ + public void enableAllDayButtons() { + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setEnabled(true); + } + } + + /** enables or disables day buttons- enables first button found disables all others **/ + public void cleanHourButtons() { + int beginHour = beginHourCombo.getSelectedIndex(); + endHourCombo.setSelectedIndex(beginHour); + } + + /** Handles the aggregate year button. **/ + public void processAggregateYearButton() { + processSelectAllMonthsButton(); + processSelectAllDaysButton(); + processSelectAllHoursButton(); + } + + /** Handles the aggregate month button. **/ + public void processAggregateMonthButton() { + processSelectAllDaysButton(); + processSelectAllHoursButton(); + } + + /** Handles the aggregate day button. **/ + public void processAggregateDayButton() { + processSelectAllHoursButton(); + } + + /** Handles the aggregate hour button. **/ + public void processAggregateHourButton() { + // No additional processing necessary at this time. + } + + /** Handles the Add button. **/ + public void processAddYearButton() { + String errorMessage = new String(); + Integer year = new Integer(0); + try { + year = parseYear(); + } catch(Exception e) { + errorMessage = "Please select a year to add."; + JOptionPane.showMessageDialog(this,errorMessage); + return; + } + for(int i=0;i selectedYears = yearList.getSelectedValuesList(); + for(Iterator i=selectedYears.iterator();i.hasNext();) { + yearListModel.removeElement(i.next()); + } + yearRemove.setEnabled(false); + checkYears(); + } + + /** Handles the Select All Months button. **/ + public void processSelectAllMonthsButton() { + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setSelected(true); + } + } + + /** Handles the Clear All Months button. **/ + public void processClearAllMonthsButton() { + for(Iterator i=monthCheckBoxes.iterator();i.hasNext();) { + MonthCheckBox b = (MonthCheckBox)i.next(); + b.checkBox.setSelected(false); + } + if( loadedDomain == ModelDomain.PROJECT ){ + cleanMonthButtons(); + } + } + + /** Handles the Select All Days button. **/ + public void processSelectAllDaysButton() { + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setSelected(true); + } + if( loadedDomain == ModelDomain.PROJECT ){ + cleanDayButtons(); + } + } + + /** Handles the Clear All Days button. **/ + public void processClearAllDaysButton() { + for(Iterator i=dayCheckBoxes.iterator();i.hasNext();) { + DayCheckBox b = (DayCheckBox)i.next(); + b.checkBox.setSelected(false); + } + if( loadedDomain == ModelDomain.PROJECT ){ + cleanDayButtons(); + } + } + + /** Handles the Select All Hours button. **/ + public void processSelectAllHoursButton() { + beginHourCombo.setSelectedIndex(1); + endHourCombo.setSelectedIndex(24); + } + + /** Handles the Select All Hours button. **/ + public void processClearAllHoursButton() { + beginHourCombo.setSelectedIndex(0); + endHourCombo.setSelectedIndex(0); + if( loadedDomain == ModelDomain.PROJECT ){ + cleanHourButtons(); + } + } + + /** Handles the endHourCombo and beginHourCombo boxes. **/ + public void processBeginAndEndHourCombo() { + if( loadedDomain == ModelDomain.PROJECT ){ + cleanHourButtons(); + } + if( endHourCombo.getSelectedIndex()>0 && + beginHourCombo.getSelectedIndex()>0 && + (endHourCombo.getSelectedIndex() i=TimeSpan.allHours.iterator();i.hasNext();) { + TimeSpan.Hour h = (TimeSpan.Hour)i.next(); + beginHourCombo.addItem(h); + endHourCombo.addItem(h); + } + beginHourCombo.setSelectedIndex(0); + endHourCombo.setSelectedIndex(0); + } + + /** Gets the base year value from the database. **/ + void loadYears() { + yearCombo.removeAllItems(); + yearCombo.addItem(EMPTY_YEAR_TEXT); + yearCombo.setSelectedIndex(-1); + Connection db = DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT); + if(null == db) { + return; + } + String sql = ""; + PreparedStatement statement = null; + try { + sql = "SELECT yearId FROM Year"; + statement=db.prepareStatement(sql); + + ResultSet results = SQLRunner.executeQuery(statement,sql); + while(results.next()) { + yearCombo.addItem((new Integer(results.getInt(1))).toString()); + } + statement.close(); + } catch(SQLException e) { + Logger.logSqlError(e, "Get list of years failed", sql); + } finally { + if(statement!=null) { + try { + statement.close(); + } catch (SQLException e) { + // Failure to close on a preparedStatment should not be an issue. + } + } + } + } + + /** Enable/Disable the button for adding years based on year count and domain **/ + void checkYears() { + boolean allowMoreYears = true; + if(loadedDomain != null && loadedDomain != ModelDomain.NATIONAL_ALLOCATION + && yearListModel.size() >= 1) { + allowMoreYears = false; + } + addYearButton.setEnabled(allowMoreYears); + } + + @Override + public RunSpecSectionStatus onModelChange(RunSpec runspec, + TreeMap sections) { + this.loadFromRunSpec(runspec); + return calculateRunSpecSectionStatus(runspec,sections); + } +} diff --git a/gov/epa/otaq/moves/master/gui/UpdateManufactureDisposalRatesAction.java b/gov/epa/otaq/moves/master/gui/UpdateManufactureDisposalRatesAction.java new file mode 100644 index 0000000..b7134e1 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/UpdateManufactureDisposalRatesAction.java @@ -0,0 +1,43 @@ +/************************************************************************************************** + * @(#)UpdateManufactureDisposalRatesAction.java + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES UpdateManufactureDisposalRates menu option. + * + * @author Cimulus + * @version 2004-01-05 +**/ + +public class UpdateManufactureDisposalRatesAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_UPDATE_MANUFACTURE_DISPOSAL_RATES = + "update-manufacture-disposal-rates"; + /** Constant action name. **/ + static final String NAME_UPDATE_MANUFACTURE_DISPOSAL_RATES = + "Update Manufacture/Disposal rates..."; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_UPDATE_MANUFACTURE_DISPOSAL_RATES = + "Update Manufacture/Disposal rates"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_UPDATE_MANUFACTURE_DISPOSAL_RATES = + "Update Manufacture/Disposal rates"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_UPDATE_MANUFACTURE_DISPOSAL_RATES = 'M'; + + /** + * Implements the Clear menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public UpdateManufactureDisposalRatesAction() { + putValue(Action.NAME, NAME_UPDATE_MANUFACTURE_DISPOSAL_RATES); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_UPDATE_MANUFACTURE_DISPOSAL_RATES); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_UPDATE_MANUFACTURE_DISPOSAL_RATES); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_UPDATE_MANUFACTURE_DISPOSAL_RATES)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_UPDATE_MANUFACTURE_DISPOSAL_RATES); + } +} diff --git a/gov/epa/otaq/moves/master/gui/UpdateWellToPumpRatesAction.java b/gov/epa/otaq/moves/master/gui/UpdateWellToPumpRatesAction.java new file mode 100644 index 0000000..e4fb130 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/UpdateWellToPumpRatesAction.java @@ -0,0 +1,40 @@ +/************************************************************************************************** + * @(#)UpdateWellToPumpRatesAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES UpdateWellToPumpRates menu option. + * + * @author Cimulus + * @version 2004-01-05 +**/ +public class UpdateWellToPumpRatesAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_UPDATE_WELL_TO_PUMP_RATES = "update-well-to-pump-rates"; + /** Constant action name. **/ + static final String NAME_UPDATE_WELL_TO_PUMP_RATES = "Update Well-To-Pump rates..."; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_UPDATE_WELL_TO_PUMP_RATES = "Update Well-To-Pump rates"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_UPDATE_WELL_TO_PUMP_RATES = "Update Well-To-Pump rates"; + /** Constant mnemonic key. **/ + static final int MNEMONIC_KEY_UPDATE_WELL_TO_PUMP_RATES = 'W'; + + /** + * Implements the Clear menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public UpdateWellToPumpRatesAction() { + putValue(Action.NAME, NAME_UPDATE_WELL_TO_PUMP_RATES); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_UPDATE_WELL_TO_PUMP_RATES); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_UPDATE_WELL_TO_PUMP_RATES); + putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_UPDATE_WELL_TO_PUMP_RATES)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_UPDATE_WELL_TO_PUMP_RATES); + } +} diff --git a/gov/epa/otaq/moves/master/gui/UserGuideAction.java b/gov/epa/otaq/moves/master/gui/UserGuideAction.java new file mode 100644 index 0000000..805b1e3 --- /dev/null +++ b/gov/epa/otaq/moves/master/gui/UserGuideAction.java @@ -0,0 +1,48 @@ +/************************************************************************************************** + * @(#)UserGuideAction.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.gui; + +import javax.swing.Action; + +/** + * Class for MOVES UserGuide menu option. + * + * @author Wesley Faler + * @version 2014-07-27 +**/ +public class UserGuideAction extends JLFAbstractAction { + /** Constant command key text. **/ + static final String ACTION_COMMAND_KEY_USER_GUIDE = "user-guide-command"; + /** Constant action name. **/ + static final String NAME_USER_GUIDE = "MOVES Website and Documents"; + /** Constant small icon file and path. **/ + static final String SMALL_ICON_USER_GUIDE = + "toolbarButtonGraphics/general/Help16.gif"; + /** Constant large icon file and path. **/ + static final String LARGE_ICON_USER_GUIDE = + "toolbarButtonGraphics/general/Help24.gif"; + /** Constant short description text. **/ + static final String SHORT_DESCRIPTION_USER_GUIDE = "MOVES Website and Documents"; + /** Constant long description text. **/ + static final String LONG_DESCRIPTION_USER_GUIDE = + "View MOVES web page for help."; +// static final int MNEMONIC_KEY_USER_GUIDE = '1'; + + /** + * Implements the UserGuide menu option UI, including command keys, name, + * descriptions, and icons. + **/ + public UserGuideAction() { + putValue(Action.NAME, NAME_USER_GUIDE); + putValue(Action.SMALL_ICON, getIcon(SMALL_ICON_USER_GUIDE)); + putValue(LARGE_ICON, getIcon(LARGE_ICON_USER_GUIDE)); + putValue(Action.SHORT_DESCRIPTION, SHORT_DESCRIPTION_USER_GUIDE); + putValue(Action.LONG_DESCRIPTION, LONG_DESCRIPTION_USER_GUIDE); +// putValue(Action.MNEMONIC_KEY, new Integer(MNEMONIC_KEY_USER_GUIDE)); + putValue(Action.ACTION_COMMAND_KEY, ACTION_COMMAND_KEY_USER_GUIDE); + } +} diff --git a/gov/epa/otaq/moves/master/gui/images/Close16.gif b/gov/epa/otaq/moves/master/gui/images/Close16.gif new file mode 100644 index 0000000..b0e0595 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/Close16.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/Close24.gif b/gov/epa/otaq/moves/master/gui/images/Close24.gif new file mode 100644 index 0000000..7c71bc4 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/Close24.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/EPASeal.gif b/gov/epa/otaq/moves/master/gui/images/EPASeal.gif new file mode 100644 index 0000000..c9e04be Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/EPASeal.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/MOVESLogo.gif b/gov/epa/otaq/moves/master/gui/images/MOVESLogo.gif new file mode 100644 index 0000000..b058c10 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/MOVESLogo.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/Thumbs.db b/gov/epa/otaq/moves/master/gui/images/Thumbs.db new file mode 100644 index 0000000..634b6fe Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/Thumbs.db differ diff --git a/gov/epa/otaq/moves/master/gui/images/blank.gif b/gov/epa/otaq/moves/master/gui/images/blank.gif new file mode 100644 index 0000000..9ed1269 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/blank.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/dataExists.gif b/gov/epa/otaq/moves/master/gui/images/dataExists.gif new file mode 100644 index 0000000..1ba9586 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/dataExists.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/default16.gif b/gov/epa/otaq/moves/master/gui/images/default16.gif new file mode 100644 index 0000000..0e3f2d5 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/default16.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/defaultData.gif b/gov/epa/otaq/moves/master/gui/images/defaultData.gif new file mode 100644 index 0000000..efdf886 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/defaultData.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/defaultDataTreeClosed.gif b/gov/epa/otaq/moves/master/gui/images/defaultDataTreeClosed.gif new file mode 100644 index 0000000..de494e2 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/defaultDataTreeClosed.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/defaultDataTreeOpen.gif b/gov/epa/otaq/moves/master/gui/images/defaultDataTreeOpen.gif new file mode 100644 index 0000000..d8ca2dd Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/defaultDataTreeOpen.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/defaultDataWide.gif b/gov/epa/otaq/moves/master/gui/images/defaultDataWide.gif new file mode 100644 index 0000000..da3b7bb Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/defaultDataWide.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/error16.gif b/gov/epa/otaq/moves/master/gui/images/error16.gif new file mode 100644 index 0000000..c941c19 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/error16.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/filledIn.gif b/gov/epa/otaq/moves/master/gui/images/filledIn.gif new file mode 100644 index 0000000..253326d Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/filledIn.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/filledInTreeClosed.gif b/gov/epa/otaq/moves/master/gui/images/filledInTreeClosed.gif new file mode 100644 index 0000000..69f4e59 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/filledInTreeClosed.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/filledInTreeOpen.gif b/gov/epa/otaq/moves/master/gui/images/filledInTreeOpen.gif new file mode 100644 index 0000000..5002b20 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/filledInTreeOpen.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/filledInWide.gif b/gov/epa/otaq/moves/master/gui/images/filledInWide.gif new file mode 100644 index 0000000..b87b1e6 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/filledInWide.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_10.jpg b/gov/epa/otaq/moves/master/gui/images/moves_10.jpg new file mode 100644 index 0000000..b0a11e9 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_10.jpg differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_16x16.png b/gov/epa/otaq/moves/master/gui/images/moves_16x16.png new file mode 100644 index 0000000..511299f Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_16x16.png differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_256x256.png b/gov/epa/otaq/moves/master/gui/images/moves_256x256.png new file mode 100644 index 0000000..0add930 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_256x256.png differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_32x32.png b/gov/epa/otaq/moves/master/gui/images/moves_32x32.png new file mode 100644 index 0000000..134ea4a Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_32x32.png differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_48x48.png b/gov/epa/otaq/moves/master/gui/images/moves_48x48.png new file mode 100644 index 0000000..14532da Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_48x48.png differ diff --git a/gov/epa/otaq/moves/master/gui/images/moves_logo_480.png b/gov/epa/otaq/moves/master/gui/images/moves_logo_480.png new file mode 100644 index 0000000..ffbe34d Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/moves_logo_480.png differ diff --git a/gov/epa/otaq/moves/master/gui/images/needsData.gif b/gov/epa/otaq/moves/master/gui/images/needsData.gif new file mode 100644 index 0000000..cfe7238 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/needsData.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/needsDataTreeClosed.gif b/gov/epa/otaq/moves/master/gui/images/needsDataTreeClosed.gif new file mode 100644 index 0000000..b03592a Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/needsDataTreeClosed.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/needsDataTreeOpen.gif b/gov/epa/otaq/moves/master/gui/images/needsDataTreeOpen.gif new file mode 100644 index 0000000..1352ea2 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/needsDataTreeOpen.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/needsDataWide.gif b/gov/epa/otaq/moves/master/gui/images/needsDataWide.gif new file mode 100644 index 0000000..390ac20 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/needsDataWide.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/ok16.gif b/gov/epa/otaq/moves/master/gui/images/ok16.gif new file mode 100644 index 0000000..35e9499 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/ok16.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/treeClosed.gif b/gov/epa/otaq/moves/master/gui/images/treeClosed.gif new file mode 100644 index 0000000..1f88249 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/treeClosed.gif differ diff --git a/gov/epa/otaq/moves/master/gui/images/treeOpen.gif b/gov/epa/otaq/moves/master/gui/images/treeOpen.gif new file mode 100644 index 0000000..1b7c6f7 Binary files /dev/null and b/gov/epa/otaq/moves/master/gui/images/treeOpen.gif differ diff --git a/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategy.java b/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategy.java new file mode 100644 index 0000000..2b4f140 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategy.java @@ -0,0 +1,113 @@ +/************************************************************************************************** + * @(#)FuelControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.master.framework.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * Modifies ELDB based on user parameters. + * ELDB is the Execution Location Database explained in TotalActivityGenerator + + * @author Wesley Faler + * @version 2007-02-13 +**/ +public class FuelControlStrategy extends InternalControlStrategy { + /** + * Default constructor + **/ + public FuelControlStrategy() { + } + + /** + * MasterLoopable override that performs loop registration. + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + } + + /** + * MasterLoopable override that performs database processing. + * @param inContext The current context of the loop. + **/ + public void executeLoop(MasterLoopContext inContext) { + } + + /** + * Removes data from the execution database that was created by this object within executeLoop + * for the same context. This is only called after all other loopable objects that might use + * data created by executeLoop have had their executeLoop and cleanDataLoop functions called. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + /** + * InternalControlStrategy override that gets the GUI detail panel object for the user + * to configure details specific to the derived subclass. + * @return The associated GUI JPanel for the derived subclass. + **/ + public InternalControlStrategyPanel getDetailsPanel() { + return null; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another InternalControlStrategy object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof InternalControlStrategy) { + InternalControlStrategy otherIcs = (InternalControlStrategy)other; + // Sorting on these instances is trivial, but will choose the class name + return this.getClass().getName().compareTo(otherIcs.getClass().getName()); + } else { + throw new ClassCastException(); + } + } + + /** + * Creates XML representing this instance + * @return XML, ready to be inserted into a larger XML file under a suitable root + **/ + public String getXML() { + return ""; + } + + /** + * Read XML into this instance + * @param className name of the class used to instantiate this object + * @param root XML object under which the XML returned by getXML() has been stored + * @return true if the XML could be read successfully + **/ + public boolean acceptXML(String className,Node root) { + return false; + } + + /** + * Creates Tab-Separated-Value text representing this instance. + * @return text, ready to be inserted into a text file. null if only XML is supported. + **/ + public String getTSV() { + return ""; + } + + /** + * Read Tab-Separated-Values into this instance + * @param className name of the class used to instantiate this object + * @param text tab-separated-values as returned by getTSV() + * @return true if the text could be read successfully + **/ + public boolean acceptTSV(String className,String text) { + return false; + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategyTest.java b/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategyTest.java new file mode 100644 index 0000000..fbd0090 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/FuelControlStrategyTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)FuelControlStrategyTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import junit.framework.*; + +/** + * Test Case for the FuelControlStrategy class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class FuelControlStrategyTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public FuelControlStrategyTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/MeteorologyGenerator.java b/gov/epa/otaq/moves/master/implementation/general/MeteorologyGenerator.java new file mode 100644 index 0000000..a57a2bb --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/MeteorologyGenerator.java @@ -0,0 +1,240 @@ +/************************************************************************************************** + * @(#)MeteorologyGenerator.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.master.framework.*; + +import gov.epa.otaq.moves.common.*; +import java.util.Iterator; +import java.sql.SQLException; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; + +/** + * This builds the meteorology database tables for the ELDB. + * ELDB is the Execution Location Database explained in TotalActivityGenerator + * + * @author Wes Faler + * @author Ed Glover - EPA, minor revs by Mitch C. + * @author Gwo Shyu - EPA, minor revs for Task 216 + * @author William Aikman - EPA, changed specific Humidity to .000000011702 + * @version 2013-11-13 +**/ +public class MeteorologyGenerator extends Generator { + /** + * @algorithm + * @owner Meteorology Generator + * @generator + **/ + + /** Flag for whether the data tables have been cleared/setup **/ + boolean isFirst = true; + /** Database connection used by all functions. Setup by executeLoop and cleanDataLoop. **/ + Connection db; + /** String sql contains active SQL update statement code **/ + String sql; + /** milliseconds spent during one time operations **/ + long setupTime = 0; + /** milliseconds spent during non-one-time operations **/ + long totalTime = 0; + + /** Standard Constructor **/ + public MeteorologyGenerator() { + } + + /** + * Requests that this object subscribe to the given loop at desired looping points. + * Objects can assume that all necessary MasterLoopable objects have been instantiated. + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + String[] processNames = { + "Running Exhaust", + "Extended Idle Exhaust", + "Start Exhaust", + "Auxiliary Power Exhaust", + "Tirewear", + "Brakewear" + }; + for(int i=0;i= 25.8403 inHg are 'L' (Low) altitude, all others are 'H' (High). + * @condition Counties where altitude is null or altitude is neither H nor L. + * @output County + **/ + sql = "update County set altitude=(" + + " case when barometricPressure >= 25.8403 then 'L'" + + " else 'H'" + + " end" + + " )" + + " where barometricPressure is not null" + + " and (altitude is null or altitude not in ('H','L'))"; + SQLRunner.executeSQL(db,sql); + + /** + * @step 010 + * @algorithm heatIndex = temperature. + * @condition temperature < 78F. + * @output ZoneMonthHour + **/ + sql="UPDATE ZoneMonthHour SET heatIndex = temperature " + + " WHERE temperature < 78 "; + SQLRunner.executeSQL(db,sql); + + /** + * @step 010 + * @algorithm heatIndex = least( + * -42.379 + 2.04901523*temperature + 10.14333127*relHumidity + + * - 0.22475541*temperature*relHumidity + + * -0.00683783*temperature*temperature + + * -0.05481717 * relHumidity * relHumidity + + * 0.00122874*temperature*temperature*relHumidity + + * 0.00085282*temperature*relHumidity*relHumidity + + * -0.00000199*temperature*temperature*relHumidity*relHumidity, 120). + * @condition temperature >= 78F. + * @output ZoneMonthHour + **/ + sql="UPDATE ZoneMonthHour SET heatIndex = least(" + + "-42.379 + 2.04901523*temperature + 10.14333127*relHumidity + " + + "- 0.22475541*temperature*relHumidity + " + + "-0.00683783*temperature*temperature + " + + "-0.05481717 * relHumidity * relHumidity + " + + "0.00122874*temperature*temperature*relHumidity + " + + "0.00085282*temperature*relHumidity*relHumidity + " + + "-0.00000199*temperature*temperature*relHumidity*relHumidity, 120) " + + " WHERE temperature >= 78.0 "; + SQLRunner.executeSQL(db,sql); + + sql = "DROP TABLE IF EXISTS TKT0"; + SQLRunner.executeSQL(db,sql); + + /** + * @step 010 + * @algorithm TK = 0.56*(temperature-32)+273 AS TK. + * T0 = 374.27-0.56*(temperature-32). + * @input ZoneMonthHour + * @output TKT0 + **/ + sql = "CREATE TABLE TKT0 SELECT monthID, zoneID, hourID, relHumidity, " + + "0.56*(temperature-32)+273 AS TK, 374.27-0.56*(temperature-32) AS T0 " + + "FROM ZoneMonthHour"; + SQLRunner.executeSQL(db,sql); + + sql = "DROP TABLE IF EXISTS PV"; + SQLRunner.executeSQL(db,sql); + + /** + * @step 010 + * @algorithm PB = barometricPressure. + * PV = (relHumidity/100)*6527.557*POW(10,(-T0/TK)*((3.2437+0.00588*T0+0.000000011702*POW(T0,3))/(1+0.00219*T0))). + * @input Zone + * @input County + * @input TKT0 + * @output PV + **/ + sql = "CREATE TABLE PV SELECT monthID, z.zoneID, hourID, barometricPressure AS PB, " + + "(relHumidity/100)*6527.557*POW(10,(-T0/TK)*((3.2437+0.00588*T0+ " + + "0.000000011702*POW(T0,3))/(1+0.00219*T0))) AS PV FROM TKT0 " + + "INNER JOIN Zone z USING (zoneID) INNER JOIN County USING (countyID)"; + SQLRunner.executeSQL(db,sql); + + sql = "CREATE UNIQUE INDEX XPKPV ON PV" + + "(monthID ASC, zoneID ASC, hourID ASC)"; + SQLRunner.executeSQL(db,sql); + + sql = "DROP TABLE TKT0"; + SQLRunner.executeSQL(db,sql); + + /** + * @step 010 + * @algorithm specificHumidity=4347.8*PV/(PB-PV). + * @input PV + * @output ZoneMonthHour + **/ + sql = "UPDATE ZoneMonthHour, PV SET ZoneMonthHour.specificHumidity=4347.8*PV/(PB-PV) "+ + "WHERE ZoneMonthHour.monthID = PV.monthID AND ZoneMonthHour.zoneID = " + + "PV.zoneID AND ZoneMonthHour.hourID = PV.hourID"; + SQLRunner.executeSQL(db,sql); + + sql = "DROP TABLE PV"; + SQLRunner.executeSQL(db,sql); + } catch (SQLException e) { + Logger.logSqlError(e, "SQL error in heat index.calculation", sql); + } + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/MeteorologyGeneratorTest.java b/gov/epa/otaq/moves/master/implementation/general/MeteorologyGeneratorTest.java new file mode 100644 index 0000000..723226e --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/MeteorologyGeneratorTest.java @@ -0,0 +1,79 @@ +/************************************************************************************************** + * @(#)MeteorologyGeneratorTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import java.sql.*; +import java.util.Calendar; +import junit.framework.*; + +/** + * Test Case for the MeteorologyGenerator class + * + * @author Ed Glover + * @version 2003-12-11 +**/ +public class MeteorologyGeneratorTest extends TestCase { + + /** Generator object to be tested **/ + MeteorologyGenerator mG; + + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public MeteorologyGeneratorTest(String name) { + super(name); + } + /** + * Instantiates new MeteorologyGenerator object in preparation of the test. + **/ + public void setUp(){ + mG = new MeteorologyGenerator(); + } + /** + * Implements test case by creating a complete duplicate of the ZoneMonthHour + * table. The sum of the calculated heat index field is computed and + * compared against a known value. + * @throws SQLException from some database operations. + **/ + public void testdoHeatIndex() throws SQLException { + try { + Connection db = DatabaseSelection.openKnownWorkingConnection(); + + SQLRunner.executeSQL(db, "USE MOVESExecution"); + SQLRunner.executeSQL(db, "Drop TABLE if EXISTS ZoneMonthHour CASCADE "); + SQLRunner.executeSQL(db, + "CREATE TABLE IF NOT EXISTS ZoneMonthHour " + + "SELECT * from MOVESDEFAULT.ZoneMonthHour" ); + + mG.doHeatIndex(db); + + // Verify output rows in Generator1 + String sql; + double result = 0.0; + PreparedStatement statement; + ResultSet rs; + + sql = "SELECT SUM(heatIndex) as SUM FROM ZoneMonthHour "; + statement = db.prepareStatement(sql); + rs = statement.executeQuery(); + + if(rs.next()) { + result = rs.getDouble("SUM"); + } + rs.close(); + System.out.println("heatIndex Sum = " + result); + assertEquals(52240230.8551, result, 0.01); + + } catch (Exception e) { + System.out.println("Big Problems with the DatabaseConnection "); + } finally { + } + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/RefineryModel.java b/gov/epa/otaq/moves/master/implementation/general/RefineryModel.java new file mode 100644 index 0000000..36b1c08 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/RefineryModel.java @@ -0,0 +1,834 @@ +/************************************************************************************************** + * @(#)RefineryModel.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import java.util.*; +import java.sql.*; +import java.math.*; + +/** + * Update fuel formulation parameters in a manner consistent with refinery techniques. + * + * @author Wesley Faler + * @version 2015-06-03 +**/ +public class RefineryModel { + /** true when being tested, causes extra logging **/ + public static boolean isTest = true; // false; + + /** true to allow extrapolation beyond correction factors in the database **/ + private static final boolean allowExtrapolation = false; + + /** Names, units, and DB name of properties that can be changed **/ + public static final String[] fuelPropertyNamesAndUnits = { + "RVP", "psi", "RVP", + "Sulfur", "ppm", "SULF", + "Ethanol", "%", "ETOH", + "T50", "F", "T50", + "T90", "F", "T90", + "Aromatics", "%", "AROM", + "Olefins", "%", "OLEF", + "Benzene", "%", "BENZ", + //"E200", "%", "E200", + //"E300", "%", "E300", + //"BioDiesel Ester", "%", "BIO", + //"CetaneIndex", "%", "CETANE", + //"PAHContent", "%", "PAH", + "MTBE", "%", "MTBE", + "ETBE", "%", "ETBE", + "TAME", "%", "TAME" + }; + + /** Represent a new or existing fuel formulation **/ + public static class FuelFormulation { + public int regionID; + public int fuelYearID; + public int monthGroupID; + + /** Database identifier. Will be 0 when it is a new formulation **/ + public int fuelFormulationID = 0; // don't display + public int fuelTypeID; + public int fuelSubtypeID; + + /** Fuel properties **/ + public double RVP; + public double sulfurLevel; + public double ETOHVolume; + public double MTBEVolume; + public double ETBEVolume; + public double TAMEVolume; + public double aromaticContent; + public double olefinContent; + public double benzeneContent; + public double e200; + public double e300; + public double volToWtPercentOxy; + public double BioDieselEsterVolume; + public double CetaneIndex; + public double PAHContent; + public double T50; + public double T90; + + /** Flags used internally by the refinery model **/ + /* + T50, T90, E200, and E300 are interrlated: + T50 = 2.0408163 * (147.91 - e200) where e200 is not null and e200 > 0 and (T50 is null or T50 <= 0) + T90 = 4.5454545 * (155.47 - e300) where e300 is not null and e300 > 0 and (T90 is null or T90 <= 0) + e200 = 147.91-(T50/2.0408163) where T50 is not null and T50 > 0 and (e200 is null or e200 <= 0) + e300 = 155.47-(T90/4.5454545) where T90 is not null and T90 > 0 and (e300 is null or e300 <= 0) + */ + private boolean needE200Calculation = false; + private boolean needE300Calculation = false; + private boolean needT50Calculation = false; + private boolean needT90Calculation = false; + private boolean needSubtypeCalculation = false; + + /** + * Calculate properties that depend upon other properties, such as T50, T90, + * E200, and E300. + * @throws IllegalArgumentException if there is insufficient data to do the calculations. + **/ + public void calculateProperties() { + if(e200 <= 0) { + needE200Calculation = true; + } + if(e300 <= 0) { + needE300Calculation = true; + } + if(T50 <= 0) { + needT50Calculation = true; + } + if(T90 <= 0) { + needT90Calculation = true; + } + if(needE200Calculation) { + if(T50 > 0) { + e200 = 147.91-(T50/2.0408163); + } else { + throw new IllegalArgumentException("Unable to calculate E200 from T50 because T50 is missing"); + } + needE200Calculation = false; + needT50Calculation = false; + } + if(needE300Calculation) { + if(T90 > 0) { + e300 = 155.47-(T90/4.5454545); + } else { + throw new IllegalArgumentException("Unable to calculate E300 from T90 because T90 is missing"); + } + needE300Calculation = false; + needT90Calculation = false; + } + if(needT50Calculation) { + if(e200 > 0) { + T50 = 2.0408163 * (147.91 - e200); + } else { + throw new IllegalArgumentException("Unable to calculate T50 from E200 because E200 is missing"); + } + needE200Calculation = false; + needT50Calculation = false; + } + if(needT90Calculation) { + if(e300 > 0) { + T90 = 4.5454545 * (155.47 - e300); + } else { + throw new IllegalArgumentException("Unable to calculate T90 from E300 because E300 is missing"); + } + needE300Calculation = false; + needT90Calculation = false; + } + if(needSubtypeCalculation) { + needSubtypeCalculation = false; + if(fuelSubtypeID <= 0 || fuelSubtypeID==10 || fuelSubtypeID==11 || fuelSubtypeID==12 + || fuelSubtypeID==13 || fuelSubtypeID==14 || fuelSubtypeID==15 + || fuelSubtypeID==51 || fuelSubtypeID==52 || fuelSubtypeID==18) { + if(ETOHVolume < 0.10 && fuelSubtypeID != 11) { + fuelSubtypeID = 10; + } + if(ETOHVolume >= 9 && ETOHVolume < 12.5) { + fuelSubtypeID = 12; + } + if(ETOHVolume >= 6 && ETOHVolume < 9) { + fuelSubtypeID = 13; + } + if(ETOHVolume >= 0.10 && ETOHVolume < 6) { + fuelSubtypeID = 14; + } + if(ETOHVolume >= 12.5 && ETOHVolume < 17.5) { + fuelSubtypeID = 15; + } + if(ETOHVolume >= 70.5 && ETOHVolume <= 100) { + fuelSubtypeID = 51; + } + if(ETOHVolume >= 50.5 && ETOHVolume < 70.5) { + fuelSubtypeID = 52; + } + if(ETOHVolume >= 17.5 && ETOHVolume < 50.5) { + fuelSubtypeID = 18; + } + } + } + } + + /** + * Create a copy of the current formulation. All IDs are preserved. + * @return a copy of the current formulation, including the current formulation's ID. + **/ + public FuelFormulation clone() { + FuelFormulation result = new FuelFormulation(); + result.copyFrom(this); + return result; + } + + /** + * Set this instance's values to the values of another instance + * @param other instance to be read + **/ + public void copyFrom(FuelFormulation other) { + regionID = other.regionID; + fuelYearID = other.fuelYearID; + monthGroupID = other.monthGroupID; + + fuelFormulationID = other.fuelFormulationID; + fuelTypeID = other.fuelTypeID; + fuelSubtypeID = other.fuelSubtypeID; + + RVP = other.RVP; + sulfurLevel = other.sulfurLevel; + ETOHVolume = other.ETOHVolume; + MTBEVolume = other.MTBEVolume; + ETBEVolume = other.ETBEVolume; + TAMEVolume = other.TAMEVolume; + aromaticContent = other.aromaticContent; + olefinContent = other.olefinContent; + benzeneContent = other.benzeneContent; + e200 = other.e200; + e300 = other.e300; + volToWtPercentOxy = other.volToWtPercentOxy; + BioDieselEsterVolume = other.BioDieselEsterVolume; + CetaneIndex = other.CetaneIndex; + PAHContent = other.PAHContent; + T50 = other.T50; + T90 = other.T90; + } + + /** + * Obtain the value of a fuel property. + * @param name name of a fuel property + * @return value of the fuel property + * @throws IllegalArgumentException if the name is unknown + **/ + public double getProperty(String name) throws IllegalArgumentException { + if(name.equalsIgnoreCase("RVP")) { + return RVP; + } else if(name.equalsIgnoreCase("Sulfur") || name.equalsIgnoreCase("SULF")) { + return sulfurLevel; + } else if(name.equalsIgnoreCase("Ethanol") || name.equalsIgnoreCase("ETOH")) { + return ETOHVolume; + } else if(name.equalsIgnoreCase("MTBE")) { + return MTBEVolume; + } else if(name.equalsIgnoreCase("ETBE")) { + return ETBEVolume; + } else if(name.equalsIgnoreCase("TAME")) { + return TAMEVolume; + } else if(name.equalsIgnoreCase("Aromatics") || name.equalsIgnoreCase("AROM")) { + return aromaticContent; + } else if(name.equalsIgnoreCase("Olefins") || name.equalsIgnoreCase("OLEF")) { + return olefinContent; + } else if(name.equalsIgnoreCase("Benzene") || name.equalsIgnoreCase("BENZ")) { + return benzeneContent; + } else if(name.equalsIgnoreCase("E200")) { + return e200; + } else if(name.equalsIgnoreCase("E300")) { + return e300; + } else if(name.equalsIgnoreCase("BioDiesel Ester") || name.equalsIgnoreCase("BIO")) { + return BioDieselEsterVolume; + } else if(name.equalsIgnoreCase("CetaneIndex") || name.equalsIgnoreCase("CETANE")) { + return CetaneIndex; + } else if(name.equalsIgnoreCase("PAHContent") || name.equalsIgnoreCase("PAH")) { + return PAHContent; + } else if(name.equalsIgnoreCase("T50")) { + return T50; + } else if(name.equalsIgnoreCase("T90")) { + return T90; + } else { + throw new IllegalArgumentException("Unknown fuel property: " + name); + } + } + + /** + * Change the value of a fuel property. + * @param name name of a fuel property + * @param value new value for the property + * @throws IllegalArgumentException if the name is unknown or the value out of range. + **/ + public void setProperty(String name, double value) throws IllegalArgumentException { + if(name.equalsIgnoreCase("RVP")) { + RVP = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("Sulfur") || name.equalsIgnoreCase("SULF")) { + sulfurLevel = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("Ethanol") || name.equalsIgnoreCase("ETOH")) { + ETOHVolume = value; + needSubtypeCalculation = true; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("MTBE")) { + MTBEVolume = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("ETBE")) { + ETBEVolume = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("TAME")) { + TAMEVolume = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("Aromatics") || name.equalsIgnoreCase("AROM")) { + aromaticContent = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("Olefins") || name.equalsIgnoreCase("OLEF")) { + olefinContent = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("Benzene") || name.equalsIgnoreCase("BENZ")) { + benzeneContent = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("E200")) { + e200 = value; + needT50Calculation = true; + needE200Calculation = false; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("E300")) { + e300 = value; + needT90Calculation = true; + needE300Calculation = false; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("BioDiesel Ester") || name.equalsIgnoreCase("BIO")) { + BioDieselEsterVolume = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("CetaneIndex") || name.equalsIgnoreCase("CETANE")) { + CetaneIndex = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("PAHContent") || name.equalsIgnoreCase("PAH")) { + PAHContent = value; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("T50")) { + T50 = value; + needT50Calculation = false; + needE200Calculation = true; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else if(name.equalsIgnoreCase("T90")) { + T90 = value; + needT90Calculation = false; + needE300Calculation = true; + if(value < 0) { + throw new IllegalArgumentException("Invalid " + name + " value: " + value); + } + } else { + throw new IllegalArgumentException("Unknown fuel property: " + name); + } + } + } + + /** A request to change a single property of one or more fuels **/ + public static class FuelChangeRequest { + // Inputs + public ArrayList fuelsToChange = new ArrayList(); + public String propertyNameToChange; + public String units; + public double targetValue; + + // Outputs + public ArrayList changedFuels = new ArrayList(); + public ArrayList messages = new ArrayList(); + public boolean hasError = false; + + /** Clear all output variables **/ + public void resetOutput() { + changedFuels.clear(); + messages.clear(); + hasError = false; + } + } + + /** A single factor from the fuelWizardFactors table **/ + static class FuelWizardFactor { + public String propertyName; + public double factor; + } + + /** A row in the fuelWizardFactors table **/ + static class FuelWizardProperty { + public String adjustedParameter; + public String units; + public double minLevel; + public double maxLevel; + public String functionType; + public int monthGroupID; + public int fuelTypeID; + public ArrayList factors = new ArrayList(); + + public void load(ResultSet rs) throws SQLException { + // Example record: + // adjustedParameter|minLevel|maxLevel|functionType|monthGroupID|fuelTypeID|RVP_factor|sulf_factor|ETOH_factor|arom_factor|olef_factor|benz_factor|e200_factor|e300_factor|T50_factor|T90_factor|units|dataSourceId + // ETOH |0 |10 |ADD |7 |1 |1 |0 |0 |-2.58 |-0.87 |0 |3.46 |0.88 |-7.06 |-4 |% |5101 + adjustedParameter = rs.getString("adjustedParameter"); + minLevel = rs.getDouble("minLevel"); + maxLevel = rs.getDouble("maxLevel"); + functionType = rs.getString("functionType"); + monthGroupID = rs.getInt("monthGroupID"); + fuelTypeID = rs.getInt("fuelTypeID"); + String[] factorNames = { + "RVP", "sulf", "ETOH", "arom", "olef", "benz", "T50", "T90" // "e200", "e300" + }; + for(int i=0;i 0 || v < 0)) { + FuelWizardFactor f = new FuelWizardFactor(); + f.propertyName = factorNames[i]; + f.factor = v; + factors.add(f); + } + } + units = rs.getString("units"); + if(units.equalsIgnoreCase("C")) { // Convert C to F + minLevel = (minLevel * 9.0/5.0) + 32.0; + maxLevel = (maxLevel * 9.0/5.0) + 32.0; + } + } + } + + /** Database that contains fuels and that should receive changed fuels. **/ + Connection db; + /** True when using Nonroad fuel supply **/ + boolean isNonroad = false; + /** Name of the table holding the fuel supply **/ + String fuelSupplyTable = "fuelSupply"; + + /** + * Constructor + * @param dbToUse database that contains fuels and that should receive + * changed fuels. + * @param isNonroadToUse True when using Nonroad fuel supply + **/ + public RefineryModel(Connection dbToUse, boolean isNonroadToUse) { + db = dbToUse; + isNonroad = isNonroadToUse; + fuelSupplyTable = isNonroad? "nrFuelSupply" : "fuelSupply"; + } + + /** + * Load fuels and supply information from a database. + * @param fuels list to be populated + **/ + public void loadFuels(ArrayList fuels) { + fuels.clear(); + + String fuelSubtypeTable = isNonroad? "nrFuelSubtype" : "fuelSubtype"; + + String defaultDatabaseName = SystemConfiguration.theSystemConfiguration.databaseSelections[MOVESDatabaseType.DEFAULT.getIndex()].databaseName ; + String sql = "select fs.fuelRegionID, fs.fuelYearID, fs.monthGroupID," + + " fs.fuelFormulationID, fst.fuelTypeID, ff.fuelSubtypeID," + + " RVP,sulfurLevel,ETOHVolume,MTBEVolume,ETBEVolume,TAMEVolume," + + " aromaticContent,olefinContent,benzeneContent," + + " e200,e300," + + " volToWtPercentOxy,BioDieselEsterVolume," + + " CetaneIndex,PAHContent," + + " T50,T90" + + " from " + fuelSupplyTable + " fs" + + " inner join fuelFormulation ff on (ff.fuelFormulationID=fs.fuelFormulationID)" + + " inner join " + defaultDatabaseName + "." + fuelSubtypeTable + " fst on (fst.fuelSubtypeID=ff.fuelSubtypeID)"; + //System.out.println(sql); + SQLRunner.Query query = new SQLRunner.Query(); + try { + query.open(db,sql); + while(query.rs.next()) { + FuelFormulation f = new FuelFormulation(); + f.regionID = query.rs.getInt("fuelRegionID"); + f.fuelYearID = query.rs.getInt("fuelYearID"); + f.monthGroupID = query.rs.getInt("monthGroupID"); + f.fuelFormulationID = query.rs.getInt("fuelFormulationID"); + f.fuelTypeID = query.rs.getInt("fuelTypeID"); + f.fuelSubtypeID = query.rs.getInt("fuelSubtypeID"); + f.RVP = query.rs.getFloat("RVP"); + f.sulfurLevel = query.rs.getFloat("sulfurLevel"); + f.ETOHVolume = query.rs.getFloat("ETOHVolume"); + f.MTBEVolume = query.rs.getFloat("MTBEVolume"); + f.ETBEVolume = query.rs.getFloat("ETBEVolume"); + f.TAMEVolume = query.rs.getFloat("TAMEVolume"); + f.aromaticContent = query.rs.getFloat("aromaticContent"); + f.olefinContent = query.rs.getFloat("olefinContent"); + f.benzeneContent = query.rs.getFloat("benzeneContent"); + f.e200 = query.rs.getFloat("e200"); + f.e300 = query.rs.getFloat("e300"); + f.volToWtPercentOxy = query.rs.getFloat("volToWtPercentOxy"); + f.BioDieselEsterVolume = query.rs.getFloat("BioDieselEsterVolume"); + f.CetaneIndex = query.rs.getFloat("CetaneIndex"); + f.PAHContent = query.rs.getFloat("PAHContent"); + f.T50 = query.rs.getFloat("T50"); + f.T90 = query.rs.getFloat("T90"); + + fuels.add(f); + } + } catch(Exception e) { + Logger.logError(e,"Unable to read fuel supply and formulations"); + } finally { + query.onFinally(); + } + + /* + Random r = new Random(); + for(int i=0;i<150;i++) { + FuelFormulation f = new FuelFormulation(); + f.regionID = 1 + i; + f.aromaticContent = r.nextDouble(); + f.benzeneContent = r.nextDouble(); + f.BioDieselEsterVolume = r.nextDouble(); + f.CetaneIndex = r.nextDouble(); + f.e200 = 200; + f.e300 = 300; + f.ETBEVolume = 100 * r.nextDouble(); + f.fuelTypeID = 5; + f.fuelYearID = 2013; + f.monthGroupID = 9; + f.RVP = r.nextDouble()*10; + f.sulfurLevel = 30*r.nextDouble(); + fuels.add(f); + } + */ + } + + /** + * Change a property of a set of fuels. + * @param request set of input fuels and property information. The request + * is updated to include the output fuels, warning/error messages, and overall + * status. + **/ + public void changeFuels(FuelChangeRequest request) { + // Clear output data + request.resetOutput(); + // Make copies so the original fuels aren't changed, in case the user + // does not want to commit the changes. + for(FuelFormulation f : request.fuelsToChange) { + request.changedFuels.add(f.clone()); + } + // Find the name of the parameter to adjust. + String adjustedParameter = ""; + for(int i=0;i adjustments = loadFuelWizardProperties( + DatabaseConnectionManager.getGUIConnection(MOVESDatabaseType.DEFAULT), + adjustedParameter,request.messages); + if(adjustments == null || adjustments.size() <= 0) { + return; + } + // Modify the fuels in request.changedFuels. + // Store any status messages into request.messages. + for(FuelFormulation f : request.changedFuels) { + try { + updateFuel(f,adjustments,adjustedParameter,targetValue,request.messages); + f.calculateProperties(); + } catch(IllegalArgumentException e) { + request.messages.add(e.getMessage()); + } + } + if(request.messages.size() <= 0) { + request.messages.add("Calculations complete."); + } + } + + /** + * Store fuel changes to the database. + * @param request results of a previous call to changeFuels() + **/ + public void saveFuels(FuelChangeRequest request) { + String sql = ""; + try { + for(FuelFormulation f : request.changedFuels) { + sql = "insert ignore into fuelFormulation (fuelFormulationID) values (" + f.fuelFormulationID + ")"; + SQLRunner.executeSQL(db,sql); + sql = "update fuelFormulation set" + + " fuelSubtypeID=" + f.fuelSubtypeID + + " ,RVP= " + f.RVP + + " ,sulfurLevel= " + f.sulfurLevel + + " ,ETOHVolume= " + f.ETOHVolume + + " ,MTBEVolume= " + f.MTBEVolume + + " ,ETBEVolume= " + f.ETBEVolume + + " ,TAMEVolume= " + f.TAMEVolume + + " ,aromaticContent= " + f.aromaticContent + + " ,olefinContent= " + f.olefinContent + + " ,benzeneContent= " + f.benzeneContent + + " ,e200= " + f.e200 + + " ,e300= " + f.e300 + + " ,volToWtPercentOxy= " + f.volToWtPercentOxy + + " ,BioDieselEsterVolume= " + f.BioDieselEsterVolume + + " ,CetaneIndex= " + f.CetaneIndex + + " ,PAHContent= " + f.PAHContent + + " ,T50= " + f.T50 + + " ,T90= " + f.T90 + + " where fuelFormulationID=" + f.fuelFormulationID; + //System.out.println(sql); + SQLRunner.executeSQL(db,sql); + } + } catch(Exception e) { + Logger.logError(e,"Unable to write new fuel using: " + sql); + } + } + + /** + * Read the fuelWizardFactors table. + * @param factorDB database holding the fuelWizardFactors table. + * @param adjustedParameter property to be changed. + * @param messages list of errors to show the user. + * @return non-empty list of properties. null upon any error or otherwise empty list. + **/ + public ArrayList loadFuelWizardProperties( + Connection factorDB, + String adjustedParameter, ArrayList messages) { + ArrayList adjustments = new ArrayList(); + SQLRunner.Query query = new SQLRunner.Query(); + String sql = ""; + try { + sql = "select * from fuelWizardFactors where adjustedParameter=" + DatabaseUtilities.escapeSQL(adjustedParameter,true); + query.open(factorDB,sql); + while(query.rs.next()) { + FuelWizardProperty p = new FuelWizardProperty(); + p.load(query.rs); + adjustments.add(p); + } + if(adjustments.size() <= 0) { + messages.add("ERROR: No fuel wizard adjustments available for " + adjustedParameter); + return null; + } + return adjustments; + } catch(SQLException e) { + Logger.logError(e,"Unable to load fuel wizard properties using: " + sql); + messages.add("ERROR: Unable to load fuel wizard properties."); + return null; + } finally { + query.onFinally(); + } + } + + /** + * Adjust the properties of a single fuel. + * @param f the fuel formulation to be altered + * @param adjustments all fuel wizard property records that apply to the adjusted parameter + * @param adjustedParameter the primary paramter being adjusted + * @param targetValue the desired final value of adjustedParameter + * @param messages error and information messages + * @throws IllegalArgumentException if any property or value is unacceptable + **/ + public void updateFuel(FuelFormulation f, ArrayList adjustments, + String adjustedParameter, double targetValue, ArrayList messages) throws IllegalArgumentException { + boolean isDone = false; + FuelFormulation backupF = f.clone(); + double currentValue = f.getProperty(adjustedParameter); + double beginningValue = currentValue; + boolean isIncreasing = targetValue >= currentValue; + int jumpCount = 0; + double extremeMinimum = 0, extremeMaximum = 0; + boolean hasExtremes = false; + for(FuelWizardProperty t : adjustments) { + if(t.fuelTypeID == f.fuelTypeID && t.monthGroupID == f.monthGroupID) { + if(!hasExtremes) { + hasExtremes = true; + extremeMaximum = t.maxLevel; + extremeMinimum = t.minLevel; + } else { + extremeMaximum = Math.max(t.maxLevel,extremeMaximum); + extremeMinimum = Math.min(t.minLevel,extremeMinimum); + } + } + } + if(!allowExtrapolation) { + if(isIncreasing && targetValue > extremeMaximum) { + //messages.add("ERROR: No fuel adjustment available changing " + adjustedParameter + " from " + beginningValue + " to " + targetValue + ", max. is " + extremeMaximum); + messages.add("ERROR: The value you have specified (" + targetValue + ") is outside of the accepted range of " + extremeMinimum + " to " + extremeMaximum + "."); + f.copyFrom(backupF); + return; + } else if(!isIncreasing && targetValue < extremeMinimum) { + //messages.add("ERROR: No fuel adjustment available changing " + adjustedParameter + " from " + beginningValue + " to " + targetValue + ", min. is " + extremeMinimum); + messages.add("ERROR: The value you have specified (" + targetValue + ") is outside of the accepted range of " + extremeMinimum + " to " + extremeMaximum + "."); + f.copyFrom(backupF); + return; + } + } + while(!isDone) { + currentValue = new BigDecimal(currentValue).round(new MathContext(6,RoundingMode.HALF_EVEN)).doubleValue(); + jumpCount++; + if(jumpCount > 20) { + messages.add("ERROR: Unable to converge upon target value"); + f.copyFrom(backupF); + return; + } + // Find the applicable fuel wizard entry + FuelWizardProperty p = null; + FuelWizardProperty pAlt = null; + for(FuelWizardProperty t : adjustments) { + if(t.fuelTypeID == f.fuelTypeID && t.monthGroupID == f.monthGroupID) { + //Logger.log(LogMessageCategory.DEBUG,"currentValue=" + currentValue); + if(t.minLevel <= currentValue && t.maxLevel >= currentValue) { + pAlt = t; + } + if(isIncreasing) { + if(t.minLevel <= currentValue && (t.maxLevel > currentValue || (t.maxLevel == extremeMaximum && t.maxLevel >= currentValue))) { + p = t; + if(p.minLevel <= targetValue && (p.maxLevel > targetValue || (p.maxLevel == extremeMaximum && p.maxLevel <= targetValue))) { + // The current property bounds the target value, so this is the last iteration. + isDone = true; + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,"End point found"); + } + } + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,"Using factors [" + p.minLevel + "," + p.maxLevel + ") for " + currentValue + " with target of " + targetValue); + } + break; + } + } else { + if(t.maxLevel >= currentValue && (t.minLevel < currentValue || (t.minLevel == extremeMinimum && t.minLevel <= currentValue))) { + p = t; + if(p.maxLevel >= targetValue && (p.minLevel < targetValue || (p.minLevel == extremeMinimum && p.minLevel >= targetValue))) { + // The current property bounds the target value, so this is the last iteration. + isDone = true; + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,"End point found"); + } + } + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,"Using factors (" + p.minLevel + "," + p.maxLevel + "] for " + currentValue + " with target of " + targetValue); + } + break; + } + } + } + } + if(p == null && pAlt != null) { + // There is no bin that strictly matches the current value. + // This happens when the current value is at a bin edge for an extremal bin. + // Use the extremal bin and declare the system done. + if(allowExtrapolation) { + p = pAlt; + isDone = true; + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,"Using extremal factors [" + p.minLevel + "," + p.maxLevel + "] for " + currentValue); + } + } else { + //messages.add("ERROR: No fuel adjustment available changing " + adjustedParameter + " from " + beginningValue + " to " + targetValue); + messages.add("ERROR: The value you have specified (" + targetValue + ") is outside of the accepted range of " + extremeMinimum + " to " + extremeMaximum + "."); + f.copyFrom(backupF); + return; + } + } + if(p == null) { + //messages.add("ERROR: No fuel adjustment available changing " + adjustedParameter + " from " + beginningValue + " to " + targetValue); + messages.add("ERROR: The value you have specified (" + targetValue + ") is outside of the accepted range of " + extremeMinimum + " to " + extremeMaximum + "."); + f.copyFrom(backupF); + return; + } + // Determine the fraction of the bin that is used by the change. + // When increasing, this is the fraction from the lowest bin edge to the target. + // When decreasing, this is the fraction from the highest bin edge to the target. + double fraction = 0; + if(isIncreasing) { + double low = Math.max(p.minLevel,currentValue); + double high = Math.min(p.maxLevel,targetValue); + fraction = (high - low) / (p.maxLevel - p.minLevel); + } else { + double high = Math.min(p.maxLevel,currentValue); + double low = Math.max(p.minLevel,targetValue); + fraction = (high - low) / (p.maxLevel - p.minLevel); + } + if(fraction > 0) { + // Apply each factor + for(FuelWizardFactor factor : p.factors) { + double v = f.getProperty(factor.propertyName); + if(p.functionType.equalsIgnoreCase("ADD")) { + if(isIncreasing) { + v += fraction * factor.factor; + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,factor.propertyName + " = " + f.getProperty(factor.propertyName) + " + " + fraction + " * " + factor.factor + " = " + v); + } + } else { + v -= fraction * factor.factor; + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,factor.propertyName + " = " + f.getProperty(factor.propertyName) + " - " + fraction + " * " + factor.factor + " = " + v); + } + } + } else if(p.functionType.equalsIgnoreCase("MULT")) { + if(isIncreasing) { + v *= 1 + (fraction * factor.factor); + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,factor.propertyName + " = " + f.getProperty(factor.propertyName) + " * (1 + (" + fraction + " * " + factor.factor + ")) = " + v); + } + } else { + v /= 1 + (fraction * factor.factor); + if(isTest) { + Logger.log(LogMessageCategory.DEBUG,factor.propertyName + " = " + f.getProperty(factor.propertyName) + " / (1 + (" + fraction + " * " + factor.factor + ")) = " + v); + } + } + } + f.setProperty(factor.propertyName,v); + } + } + if(isDone) { + currentValue = targetValue; + } else if(isIncreasing) { + currentValue = p.maxLevel; + } else { + currentValue = p.minLevel; + } + f.setProperty(adjustedParameter,currentValue); + f.calculateProperties(); + } + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/RefineryModelTest.java b/gov/epa/otaq/moves/master/implementation/general/RefineryModelTest.java new file mode 100644 index 0000000..2375307 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/RefineryModelTest.java @@ -0,0 +1,115 @@ +/************************************************************************************************** + * @(#)RefineryModelTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import java.util.*; +import java.sql.*; + +/** + * Test the RefineryModel class. + * + * @author Wesley Faler + * @version 2015-05-21 +**/ +public class RefineryModelTest { + public static void main(String args[]) { + RefineryModel.isTest = true; + RefineryModelTest a = new RefineryModelTest(); + try { + a.testUpdates(); + } catch(Exception e) { + System.out.println(e.toString()); + } + } + + void testUpdates() throws Exception { + DatabaseSelection dbSelection = new DatabaseSelection(); + dbSelection.databaseName = "movesdb20121012"; + Connection db = dbSelection.openConnection(); + try { + RefineryModel rm = new RefineryModel(db,false); + ArrayList messages = new ArrayList(); + RefineryModel.FuelFormulation ff = new RefineryModel.FuelFormulation(); + ff.regionID = 1; + ff.fuelYearID = 2013; + ff.monthGroupID = 7; + ff.fuelFormulationID = 0; + ff.fuelTypeID = 1; + ff.fuelSubtypeID = 10; + ff.RVP = 6.9; + ff.sulfurLevel = 30; + ff.ETOHVolume = 2; // chosen as non-zero to test mid-range start and end points + ff.MTBEVolume = 0; + ff.ETBEVolume = 0; + ff.TAMEVolume = 0; + ff.aromaticContent = 26.1; + ff.olefinContent = 5.6; + ff.benzeneContent = 1; + ff.e200 = 41.09; + ff.e300 = 83.09; + ff.volToWtPercentOxy = 0; + ff.BioDieselEsterVolume = 0; + ff.CetaneIndex = 0; + ff.PAHContent = 0; + ff.T50 = 218; + ff.T90 = 329; + + String adjustedParameter = "ETOH"; + double targetValue = 16; + System.out.println("Changing " + adjustedParameter + " from " + ff.getProperty(adjustedParameter) + " to " + targetValue); + ArrayList adjustments = rm.loadFuelWizardProperties(db,adjustedParameter,messages); + RefineryModel.FuelFormulation nf = ff.clone(); + rm.updateFuel(nf,adjustments,adjustedParameter,targetValue,messages); + nf.calculateProperties(); + printFuelChanges(messages,ff,nf); + + // Change the value back to the original value to assess impact + targetValue = ff.getProperty(adjustedParameter); + System.out.println("Changing " + adjustedParameter + " from " + nf.getProperty(adjustedParameter) + " to original " + targetValue); + messages.clear(); + rm.updateFuel(nf,adjustments,adjustedParameter,targetValue,messages); + nf.calculateProperties(); + printFuelChanges(messages,ff,nf); + } finally { + if(db != null) { + DatabaseUtilities.closeConnection(db); + db = null; + } + } + } + + /** + * Print messages and fuel property changes. + * @param messages list of messages to be shown. + * @param ff input fuel formulation. + * @param nf new fuel formulation after changes. + **/ + void printFuelChanges(ArrayList messages, RefineryModel.FuelFormulation ff, RefineryModel.FuelFormulation nf) { + for(String s : messages) { + System.out.println(s); + } + System.out.println("RVP: "+ff.RVP+" "+nf.RVP); + System.out.println("sulfurLevel: "+ff.sulfurLevel+" "+nf.sulfurLevel); + System.out.println("ETOHVolume: "+ff.ETOHVolume+" "+nf.ETOHVolume); + System.out.println("MTBEVolume: "+ff.MTBEVolume+" "+nf.MTBEVolume); + System.out.println("ETBEVolume: "+ff.ETBEVolume+" "+nf.ETBEVolume); + System.out.println("TAMEVolume: "+ff.TAMEVolume+" "+nf.TAMEVolume); + System.out.println("aromaticContent: "+ff.aromaticContent+" "+nf.aromaticContent); + System.out.println("olefinContent: "+ff.olefinContent+" "+nf.olefinContent); + System.out.println("benzeneContent: "+ff.benzeneContent+" "+nf.benzeneContent); + System.out.println("e200: "+ff.e200+" "+nf.e200); + System.out.println("e300: "+ff.e300+" "+nf.e300); + System.out.println("volToWtPercentOxy: "+ff.volToWtPercentOxy+" "+nf.volToWtPercentOxy); + System.out.println("BioDieselEsterVolume: "+ff.BioDieselEsterVolume+" "+nf.BioDieselEsterVolume); + System.out.println("CetaneIndex: "+ff.CetaneIndex+" "+nf.CetaneIndex); + System.out.println("PAHContent: "+ff.PAHContent+" "+nf.PAHContent); + System.out.println("T50: "+ff.T50+" "+nf.T50); + System.out.println("T90: "+ff.T90+" "+nf.T90); + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategy.java b/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategy.java new file mode 100644 index 0000000..a2252ab --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategy.java @@ -0,0 +1,113 @@ +/************************************************************************************************** + * @(#)SourceMaintenanceControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.master.framework.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * This modifies ELDB and EERDB based on user parameters. + * EERDB (the Execution Emission Rate Database) and + * ELDB (the Execution Location Database) are explained in + * TotalActivityGenerator + * + * @author Wesley Faler + * @version 2007-02-13 +**/ +public class SourceMaintenanceControlStrategy extends InternalControlStrategy { + /** Default constructor **/ + public SourceMaintenanceControlStrategy() { + } + + /** + * MasterLoopable override that performs loop registration. + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + } + + /** + * MasterLoopable override that performs database processing. + * @param inContext The current context of the loop. + **/ + public void executeLoop(MasterLoopContext inContext) { + } + + /** + * Removes data from the execution database that was created by this object within executeLoop + * for the same context. This is only called after all other loopable objects that might use + * data created by executeLoop have had their executeLoop and cleanDataLoop functions called. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + /** + * InternalControlStrategy override that gets the GUI detail panel object for the user + * to configure details specific to the derived subclass. + * @return The associated GUI JPanel for the derived subclass. + **/ + public InternalControlStrategyPanel getDetailsPanel() { + return null; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another InternalControlStrategy object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof InternalControlStrategy) { + InternalControlStrategy otherIcs = (InternalControlStrategy)other; + // Sorting on these instances is trivial, but will choose the class name + return this.getClass().getName().compareTo(otherIcs.getClass().getName()); + } else { + throw new ClassCastException(); + } + } + + /** + * Creates XML representing this instance + * @return XML, ready to be inserted into a larger XML file under a suitable root + **/ + public String getXML() { + return ""; + } + + /** + * Read XML into this instance + * @param className name of the class used to instantiate this object + * @param root XML object under which the XML returned by getXML() has been stored + * @return true if the XML could be read successfully + **/ + public boolean acceptXML(String className,Node root) { + return false; + } + + /** + * Creates Tab-Separated-Value text representing this instance. + * @return text, ready to be inserted into a text file. null if only XML is supported. + **/ + public String getTSV() { + return ""; + } + + /** + * Read Tab-Separated-Values into this instance + * @param className name of the class used to instantiate this object + * @param text tab-separated-values as returned by getTSV() + * @return true if the text could be read successfully + **/ + public boolean acceptTSV(String className,String text) { + return false; + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategyTest.java b/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategyTest.java new file mode 100644 index 0000000..9f847af --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceMaintenanceControlStrategyTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)SourceMaintenanceControlStrategyTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import junit.framework.*; + +/** + * Test Case for the SourceMaintenanceControlStrategy class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class SourceMaintenanceControlStrategyTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SourceMaintenanceControlStrategyTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategy.java b/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategy.java new file mode 100644 index 0000000..e67a96c --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategy.java @@ -0,0 +1,115 @@ +/************************************************************************************************** + * @(#)SourceManufacturingControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.master.framework.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * This modifies ELDB and EERDB based on user parameters. + * EERDB (the Execution Emission Rate Database) and ELDB (the Execution + * Location Database) are explained in totalActivityGenerator + * + * @author Cimulus + * @version 2007-02-13 +**/ +public class SourceManufacturingControlStrategy extends InternalControlStrategy { + /** Default constructor **/ + public SourceManufacturingControlStrategy() { + } + + /** + * Requests that this object subscribe to the given loop at desired looping points. + * Objects can assume that all necessary MasterLoopable objects have been instantiated. + * + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + } + + /** + * Called during each relevant iteration of the MasterLoop. + * + * @param inContext The current context of the loop. + **/ + public void executeLoop(MasterLoopContext inContext) { + } + + /** + * Removes data from the execution database that was created by this object within executeLoop + * for the same context. This is only called after all other loopable objects that might use + * data created by executeLoop have had their executeLoop and cleanDataLoop functions called. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + /** + * InternalControlStrategy override that gets the GUI detail panel object for the user + * to configure details specific to the derived subclass. + * @return The associated GUI JPanel for the derived subclass. + **/ + public InternalControlStrategyPanel getDetailsPanel() { + return null; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another InternalControlStrategy object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof InternalControlStrategy) { + InternalControlStrategy otherIcs = (InternalControlStrategy)other; + // Sorting on these instances is trivial, but will choose the class name + return this.getClass().getName().compareTo(otherIcs.getClass().getName()); + } else { + throw new ClassCastException(); + } + } + + /** + * Creates XML representing this instance + * @return XML, ready to be inserted into a larger XML file under a suitable root + **/ + public String getXML() { + return ""; + } + + /** + * Read XML into this instance + * @param className name of the class used to instantiate this object + * @param root XML object under which the XML returned by getXML() has been stored + * @return true if the XML could be read successfully + **/ + public boolean acceptXML(String className,Node root) { + return false; + } + + /** + * Creates Tab-Separated-Value text representing this instance. + * @return text, ready to be inserted into a text file. null if only XML is supported. + **/ + public String getTSV() { + return ""; + } + + /** + * Read Tab-Separated-Values into this instance + * @param className name of the class used to instantiate this object + * @param text tab-separated-values as returned by getTSV() + * @return true if the text could be read successfully + **/ + public boolean acceptTSV(String className,String text) { + return false; + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategyTest.java b/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategyTest.java new file mode 100644 index 0000000..3bf3973 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceManufacturingControlStrategyTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)SourceManufacturingControlStrategyTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import junit.framework.*; + +/** + * Test Case for the SourceManufacturingControlStrategy class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class SourceManufacturingControlStrategyTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SourceManufacturingControlStrategyTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategy.java b/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategy.java new file mode 100644 index 0000000..c80c9c8 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategy.java @@ -0,0 +1,114 @@ +/************************************************************************************************** + * @(#)SourceUsageControlStrategy.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import gov.epa.otaq.moves.master.framework.*; +import javax.xml.parsers.*; +import org.xml.sax.*; +import org.xml.sax.helpers.*; +import org.w3c.dom.*; + +/** + * This modifies ELDB based on user parameters. + * ELDB is the Execution Location Database explained in TotalActivityGenerator + * + * @author Cimulus + * @version 2007-02-13 +**/ +public class SourceUsageControlStrategy extends InternalControlStrategy { + /** Default constructor **/ + public SourceUsageControlStrategy() { + } + + /** + * Requests that this object subscribe to the given loop at desired looping points. + * Objects can assume that all necessary MasterLoopable objects have been instantiated. + * + * @param targetLoop The loop to subscribe to. + **/ + public void subscribeToMe(MasterLoop targetLoop) { + } + + /** + * Called during each relevant iteration of the MasterLoop. + * + * @param inContext The current context of the loop. + **/ + public void executeLoop(MasterLoopContext inContext) { + } + + /** + * Removes data from the execution database that was created by this object within executeLoop + * for the same context. This is only called after all other loopable objects that might use + * data created by executeLoop have had their executeLoop and cleanDataLoop functions called. + * @param context The MasterLoopContext that applies to this execution. + **/ + public void cleanDataLoop(MasterLoopContext context) { + } + + /** + * InternalControlStrategy override that gets the GUI detail panel object for the user + * to configure details specific to the derived subclass. + * @return The associated GUI JPanel for the derived subclass. + **/ + public InternalControlStrategyPanel getDetailsPanel() { + return null; + } + + /** + * Comparable Interface Implementation. Provides Tree container ordering and display + * order. + * @param other Another InternalControlStrategy object to compare. + * @return <0 if this one should go before the other, 0 if they are the same, and >0 if + * it should go after the other + **/ + public int compareTo(Object other) { + if(other instanceof InternalControlStrategy) { + InternalControlStrategy otherIcs = (InternalControlStrategy)other; + // Sorting on these instances is trivial, but will choose the class name + return this.getClass().getName().compareTo(otherIcs.getClass().getName()); + } else { + throw new ClassCastException(); + } + } + + /** + * Creates XML representing this instance + * @return XML, ready to be inserted into a larger XML file under a suitable root + **/ + public String getXML() { + return ""; + } + + /** + * Read XML into this instance + * @param className name of the class used to instantiate this object + * @param root XML object under which the XML returned by getXML() has been stored + * @return true if the XML could be read successfully + **/ + public boolean acceptXML(String className,Node root) { + return false; + } + + /** + * Creates Tab-Separated-Value text representing this instance. + * @return text, ready to be inserted into a text file. null if only XML is supported. + **/ + public String getTSV() { + return ""; + } + + /** + * Read Tab-Separated-Values into this instance + * @param className name of the class used to instantiate this object + * @param text tab-separated-values as returned by getTSV() + * @return true if the text could be read successfully + **/ + public boolean acceptTSV(String className,String text) { + return false; + } +} diff --git a/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategyTest.java b/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategyTest.java new file mode 100644 index 0000000..f5f11e5 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/general/SourceUsageControlStrategyTest.java @@ -0,0 +1,29 @@ +/************************************************************************************************** + * @(#)SourceUsageControlStrategyTest.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.general; + +import junit.framework.*; + +/** + * Test Case for the SourceUsageControlStrategy class + * + * @author Cimulus + * @version 2003-01-28 +**/ +public class SourceUsageControlStrategyTest extends TestCase { + /** + * Standard TestCase constructor + * @param name Name of the test case. + **/ + public SourceUsageControlStrategyTest(String name) { + super(name); + } + + /** Implements test case(s) **/ + public void testNothing() { + } +} diff --git a/gov/epa/otaq/moves/master/implementation/ghg/ActivityCalculator.java b/gov/epa/otaq/moves/master/implementation/ghg/ActivityCalculator.java new file mode 100644 index 0000000..c9fc1a4 --- /dev/null +++ b/gov/epa/otaq/moves/master/implementation/ghg/ActivityCalculator.java @@ -0,0 +1,376 @@ +/************************************************************************************************** + * @(#)ActivityCalculator.java + * + * + * + *************************************************************************************************/ +package gov.epa.otaq.moves.master.implementation.ghg; + +import gov.epa.otaq.moves.common.*; +import gov.epa.otaq.moves.master.framework.*; +import gov.epa.otaq.moves.master.runspec.RunSpec; + +import java.util.*; +import java.sql.*; + +/** + * Capture activity information for SHO, SourceHours, SHP, ExtendedIdleHours, HotellingHours, + * Starts, and Population. + * + * @author Wesley Faler + * @version 2014-08-21 +**/ +public class ActivityCalculator extends EmissionCalculator { + /** + * @algorithm + * @owner Activity Calculator + **/ + + /** True if the calculator script has yet to be executed **/ + boolean isFirstExecute = true; + /** Loop that owns this calculator **/ + MasterLoop owningLoop = null; + /** true when the owningLoop is only counting bundles **/ + boolean isCountingBundles = true; + /** county/year combinations used for fuelUsageFraction **/ + TreeSet fuelUsageKeys = new TreeSet(); + + /** Information about a single activity type **/ + class ActivityInfo { + /** Unique |